diff --git a/build/lib/cloupy/__init__.py b/build/lib/cloupy/__init__.py deleted file mode 100644 index df88ab3..0000000 --- a/build/lib/cloupy/__init__.py +++ /dev/null @@ -1,197 +0,0 @@ -""" -Enjoy easy data scraping from websites and its processing. What's more, enjoy -even easier data visualization! - ------DATA PROCESSING FUNCTIONS/CLASSES---- - check_data_continuity -- check data continuity and return a dataframe with the -filtered values - set_global_df() -- set a global dataframe from which data can be imported at -any time and place - read_global_df() -- return the global data frame as pandas.DataFrame -------------------------------------------- - ----------DATA SCRAPING FUNCTIONS-------- - d_imgw_data() -- download IMGW data files from the IMGW database and return them -as one merged pd.DataFrame - i_imgw_get_file_formats() -- return the available file formats for the given -'interval' and 'stations_kind' in the IMGW database (different file formats contain -different data) - i_imgw_search_keywords_in_columns() -- search for the given keywords in the column -names and return a dictionary with the file formats in which the keywords were found - - d_wmo_data() -- download climatological data for specified station/stations -from the WMO website - i_wmo_get_stations() -- return pandas.DataFrame with WMO stations information -(WMO ids, coordinates, etc.) - i_wmo_search_near_station() -- return the nearest stations from the WMO database -for the given coordinates ----------------------------------------- - --------DATA VISUALIZATION FUNCTIONS------ - set_diagStyle() -- choose a global style for diagrams - change_diagStyle_params() -- change global parameters for drawing diagrams ------------------------------------------ - ---------DATA VISUALIZATION CLASSES------- -# Note that every class for drawing diagrams contains some of the above functions -as its methods (for data scraping and processing) - - m_MapInterpolation() -- create a MapInterpolation class where the data for -drawing an interpolation map can be downloaded, modified, manually provided - g_WalterLieth() -- create a WalterLieth object in which data for drawing a -Walter-Lieth diagram can be downloaded, modified, manually provided ------------------------------------------ -""" -import pandas as pd -import os -from matplotlib.pyplot import * -from matplotlib import rcParams -import warnings - -from cloupy.data_processing.check_data_continuity import check_data_continuity as check_data_continuity - -from cloupy.scraping.imgw import download_imgw_climatological_data as d_imgw_data -from cloupy.scraping.imgw import get_file_formats as i_imgw_get_file_formats -from cloupy.scraping.imgw import search_for_keywords_in_columns as i_imgw_search_keywords_in_columns - -from cloupy.scraping.wmo import download_wmo_climatological_data as d_wmo_data -from cloupy.scraping.wmo import get_wmo_stations_info as i_wmo_get_stations -from cloupy.scraping.wmo import search_for_the_nearest_station as i_wmo_search_near_station - -from cloupy.diagrams.walter_lieth import WalterLieth as g_WalterLieth -from cloupy.maps.interpolation_map import MapInterpolation as m_MapInterpolation - -from pandas import DataFrame as DataFrame - -warnings.warn('The cloupy package is NO LONGER SUPPORTED. Due to unmaintainable code and numerous outdated ' - 'functionalities, development and maintenance of the cloupy package have been discontinued. If you ' - 'installed the cloupy package to create interpolation maps, there is a much better tool available: ' - 'https://pypi.org/project/geokrige/. Significant changes have been made to the data sources from which ' - 'the cloupy package downloads data, rendering cloupy tools potentially dysfunctional. The only ' - 'components that are relatively up-to-date are the Walter-Lieth diagrams.') - -try: # delete global data frame from the previous session - path_ = str(__file__).replace('__init__.py', '') - - os.remove(path_ + r'global_df.csv') - os.remove(path_ + r'global_df.json') -except FileNotFoundError: - pass - -# dictionaries of styles for drawing -default_style = { - 'font.family': 'sans-serif', - 'font.sans-serif': ['Dejavu Sans', 'Tahoma', 'Lucida Grande', 'Verdana'], - 'axes.titleweight': 'bold', - 'axes.labelweight': 'bold', - 'axes.edgecolor': 'black', - 'axes.labelsize': 10, -} - -retro_style = { - 'font.family': 'Times New Roman', - 'axes.titleweight': 'bold', - 'axes.labelweight': 'light', - 'axes.edgecolor': 'black', - 'axes.labelsize': 12, -} - -# set default style for cloudy -with open(str(__file__).replace('__init__.py', '') + os.sep + 'current_diagStyle.txt', 'w+') as f: - f.write('default') -diagStyle = rcParams -diagStyle['savefig.dpi'] = 300 -diagStyle['savefig.bbox'] = 'tight' -diagStyle['savefig.pad_inches'] = 0.3 -for param, value in default_style.items(): - diagStyle[param] = value - - -def change_diagStyle_params(diagStyle_dict): - """ - Change global parameters for drawing diagrams. - - Keyword arguments: - diagStyle_dict -- a dictionary in which the keys are parameters that have - to be changed; values are the values to which default values have to be changed - - ---------------NOTE THAT--------------- - For available parameters and their valid values you can check matplotlib's - 'rcParams' documentation: - https://matplotlib.org/stable/tutorials/introductory/customizing.html - --------------------------------------- - """ - - global diagStyle - for changed_param, changed_value in diagStyle_dict.items(): - diagStyle[changed_param] = changed_value - - -def set_diagStyle(diag_style='default'): - """ - Choose a global style for diagrams. - - Keyword arguments: - diag_style -- a style for diagrams. Available styles: 'default', 'retro' - (default 'default') - """ - if diag_style == 'default': - for default_param, default_value in default_style.items(): - diagStyle[default_param] = default_value - with open(str(__file__).replace('__init__.py', '') + os.sep + 'current_diagStyle.txt', 'w+') as file: - file.write('default') - - elif diag_style == 'retro': - for retro_param, retro_value in retro_style.items(): - diagStyle[retro_param] = retro_value - with open(str(__file__).replace('__init__.py', '') + os.sep + 'current_diagStyle.txt', 'w+') as file: - file.write('retro') - - else: - raise ValueError( - "Invalid 'diag_style' argument. Available arguments: 'default', 'retro'" - ) - - -def set_global_df( - pd_DataFrame -): - """ - Set global dataframe from which data can be imported at any time and place. - - Keyword arguments: - pd_DataFrame -- a pandas DataFrame object which will be the global DataFrame - """ - - path = str(__file__).replace('__init__.py', '') - - try: - os.remove(path + r'global_df.csv') - except FileNotFoundError: - pass - - if not isinstance(pd_DataFrame, pd.DataFrame): - raise ValueError( - """ - Invalid object type for 'pd_DataFrame' which must be 'pandas.DataFrame'. More info on creating pandas.DataFrame() - object is available here: 'https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html' - """ - ) - - pd_DataFrame.to_csv(path + r'global_df.csv') - - -def read_global_df(): - """ - Return the global dataframe which was previously set by the 'set_global_df' - function. - """ - path = str(__file__).replace('__init__.py', '') - - try: - df = pd.read_csv(path + r'global_df.csv', index_col=0) - except FileNotFoundError: - raise FileNotFoundError( - "Use cloudy.set_global_df to set a global dataframe and then use cloudy.read_global_df again.") - else: - return df diff --git a/build/lib/cloupy/data_processing/check_data_continuity.py b/build/lib/cloupy/data_processing/check_data_continuity.py deleted file mode 100644 index c851f17..0000000 --- a/build/lib/cloupy/data_processing/check_data_continuity.py +++ /dev/null @@ -1,39 +0,0 @@ - -def check_data_continuity(df, main_column, precision): - """ - Check data continuity and return a dataframe with the filtered values - - Keyword arguments: - df -- a pandas.DataFrame object that stores the data - main_column -- the column index by which the data will be filtered (unique - values, usually station names) - precision -- required precision for checking data continuity.The values - must be in the 0-1 range. If the value is 1, then individual stations in the - dataframe must have the same number of records as the station that has the - longest data continuity. If the value is 0.5, then individual stations in the - dataframe must have at least 50% of the number of records of the station that - has the longest data continuity (e.g. if the largest number of records is 100, - then at least 50 records are required) (default 0.3) - """ - if precision < 0 or precision > 1: - raise ValueError(f'Precision must be within 0-1 range (invalid value: {precision})') - - hm_records = df.iloc[:, main_column].value_counts() - max_records = max(hm_records) - - valid_ids = [] - for _id, record in hm_records.items(): - if record >= max_records * precision: - valid_ids.append(_id) - - before_filtering = len(df.iloc[:, main_column].unique()) - df = df[df.iloc[:, main_column].isin(valid_ids)] - after_filtering = len(df.iloc[:, main_column].unique()) - - print( - 'Data continuity checked. ' - f'Unique values in the main column before filtering: {before_filtering}. ' - f'Unique values in the main column after filtering: {after_filtering}.' - ) - - return df diff --git a/build/lib/cloupy/diagrams/walter_lieth.py b/build/lib/cloupy/diagrams/walter_lieth.py deleted file mode 100644 index b4c5214..0000000 --- a/build/lib/cloupy/diagrams/walter_lieth.py +++ /dev/null @@ -1,1103 +0,0 @@ -class WalterLieth: - """ - Create a WalterLieth object in which data for drawing a Walter-Lieth diagram - can be downloaded, modified, manually provided. - - Keyword arguments: - station_name -- name of the station for which data will be drawn - years_range -- years range for which data will be drawn (default None) - dataframe -- data for the drawing (default None) - lon -- longitude of the station (default None) - lat -- latitude of the station (default None) - elevation -- elevation of the station (default None) - - ---------------METHODS--------------- - draw() - d_imgw_data() - d_wmo_data() - import_global_df() - ------------------------------------- - - ---------------DATA STRUCTURE--------------- - The supported data structure for WalterLieth.dataframe is 5 or 6 columns of - pandas.DataFrame object, depending on the data interval. The supported data - intervals are daily and monthly. - - If the data interval is monthly, 5 columns are required: - 1st column: months, - 2nd column: average air temperature, - 3rd column: sum of precipitation, - 4th column: absolute maximum air temperature, - 5th column: absolute minimum air temperature - - If the data interval is daily, 6 columns are required: - 1st column: years, - 2nd column: months, - 3rd column: average air temperature, - 4th column: sum of precipitation, - 5th column: absolute maximum air temperature, - 6th column: absolute minimum air temperature - - Exemplary dataframe: - import pandas as pd - dataframe = pd.DataFrame({ - 'months': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], - 'temp': [-2, -1, 0, 7, 15, 18, 19, 20, 18, 14, 8, 3], - 'preci': [50, 25, 55, 60, 70, 80, 90, 80, 68, 50, 45, 49], - 'max_temp': [10, 15, 17, 18, 19, 20, 35, 34, 25, 20, 15, 10], - 'min_temp': [-36, -29, -20, -15, -5, -1, 1, 2, -1, -4, -18, -22] - }) - -------------------------------------------- - - ---------------NOTE THAT--------------- - The data must be provided for every month. Otherwise, the Walter-Lieth diagram - can not be drawn. - --------------------------------------- - """ - - def __init__( - self, station_name, years_range=None, - dataframe=None, lon=False, lat=False, - elevation=False - ): - self.dataframe = dataframe - self.years_range = years_range - self.station_name = station_name.upper() - self.lon = lon - self.lat = lat - self.elevation = elevation - - def draw( - self, figsize=(7.74, 7.74), language=None, - freeze_rectangles=True, title_text=True, years_text=True, - coordinates_box=True, yearly_means_box=True, extremes_box=True, - legend_box=True, save=None - ): - """ - Specify which elements have to be drawn and draw a Walter-Lieth diagram. - - Keyword arguments: - figsize -- figure size (default (7.74, 7.74)) - language -- choose language (None, 'POL', 'ENG') (default None). If - None, then choose default language, which is 'ENG' - freeze_rectangles -- if bottom rectangles which show freeze periods - have to be drawn (default True) - title_text -- if station name has to be drawn (default True) - years_text -- if years range has to be drawn (default True) - coordinates_box -- if box with coordinates info has to be drawn - (default True) - yearly_means_box -- if box with yearly means has to be drawn (default - True) - extremes_box -- if box with extreme temperatures has to be drawn - (default True) - legend_box -- if legend has to be drawn (default True) - save -- if the Walter-Lieth graph is to be saved. A string in which - file name must be passed, for example: 'walter_lieth.png'. Note that - other picture formats can also be passed, e.g. 'walter_lieth.jpg' (default - None) - """ - import matplotlib.pyplot as plt - from mpl_toolkits.axes_grid1 import make_axes_locatable - - if self.dataframe is None or self.dataframe.empty: - raise AttributeError( - """ - No data in WalterLieth.dataframe. Input the data yourself or use the WalterLieth's methods: - WalterLieth.d_imgw_data, WalterLieth.d_wmo_data, WalterLieth.import_global_df - """) - - if WalterLieth.check_cloupy_graphs_chosen_style() == 'retro': - temp_linecolor = 'k' - temp_linestyle = '-.' - - preci_linecolor = 'k' - preci_linestyle = '-' - - zero_linecolor = 'k' - zero_linestyle = 'dotted' - - freeze_color = '#767676' - likely_freeze_color = '#b6b6b6' - - dry_period_hatch = '..' - dry_period_hatch_color = '#b6b6b6' - - wet_period_hatch = '||' - wet_period_hatch_color = 'k' - - else: # default or customized - temp_linecolor = 'r' - temp_linestyle = '-' - - preci_linecolor = '#1f77b4' - preci_linestyle = '-' - - zero_linecolor = 'k' - zero_linestyle = 'dotted' - - freeze_color = '#09d1d9' - likely_freeze_color = '#c8f8fa' # b3fcff - - dry_period_hatch = '..' - dry_period_hatch_color = 'r' - - wet_period_hatch = '||' - wet_period_hatch_color = '#1f77b4' - - if language == 'POL': - asl = 'Wysokość: {} m n.p.m.' - lon = 'Długość geograficzna: {}' - lat = 'Szerokość geograficzna: {}' - temp_label = 'Średnia roczna temperatura: {}°C' - preci_label = 'Roczna suma opadów: {} mm' - x_ticks_labels = ['S', 'L', 'M', 'K', 'M', 'C', 'L', 'S', 'W', 'P', 'L', 'G'] - temp_axis_ylabel = 'Średnia miesięczna temperatura powietrza [°C]' - if freeze_rectangles: - temp_axis_xlabel = 'Miesiące z prawdopodobieństwem wystąpienia przymrozku' - else: - temp_axis_xlabel = 'Miesiące' - preci_axis_ylabel = 'Średnia miesięczna suma opadów [mm]' - freeze_legend_label = 'przymrozek' - likely_freeze_legend_label = 'możliwy przymr.' - temp_legend_label = 'temp. powietrza' - preci_legend_label = 'opad atmosf.' - humid_period_legend_label = 'okres wilg.' - wet_period_legend_label = 'okres mokry' - dry_period_legend_label = 'okres suchy' - else: - asl = 'Elevation: {} m a.s.l.' - lon = 'Longitude: {}' - lat = 'Latitude: {}' - temp_label = 'Average air temperature: {}°C' - preci_label = 'Annual precipitation: {} mm' - x_ticks_labels = ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'] - temp_axis_ylabel = 'Average monthly air temperature [°C]' - if freeze_rectangles: - temp_axis_xlabel = 'Months and probability of freeze occurrence' - else: - temp_axis_xlabel = 'Months' - preci_axis_ylabel = 'Average monthly precipitation sum [mm]' - freeze_legend_label = 'freeze' - likely_freeze_legend_label = 'likely freeze' - temp_legend_label = 'air temp.' - preci_legend_label = 'precipit.' - humid_period_legend_label = 'humid period' - wet_period_legend_label = 'wet period' - dry_period_legend_label = 'dry period' - - title = self.station_name - if self.years_range is None: - years = False - elif len(self.years_range) == 1: - years = self.years_range[0] - else: - years = f'{str(min(self.years_range))}-{str(max(self.years_range))}' - - if self.lon: - lon = lon.format(self.lon) - - if self.lat: - lat = lat.format(self.lat) - - if self.elevation: - asl = asl.format(self.elevation) - - # data converting - if len(self.dataframe.columns) == 5: - mean_temperature = self.dataframe.groupby(self.dataframe.columns[0]).mean().iloc[:, 0] - precipitation = self.dataframe.groupby(self.dataframe.columns[0]).mean().iloc[:, 1] - abs_max_temp = self.dataframe.groupby(self.dataframe.columns[0]).max().iloc[:, 2] - abs_min_temp = self.dataframe.groupby(self.dataframe.columns[0]).min().iloc[:, 3] - elif len(self.dataframe.columns) == 6: - mean_temperature = self.dataframe.groupby(self.dataframe.columns[1]).mean().iloc[:, 1] - precipitation = self.dataframe.groupby([self.dataframe.columns[0], self.dataframe.columns[1]]).sum() - precipitation = precipitation.groupby(self.dataframe.columns[1]).mean().iloc[:, 1] - abs_max_temp = self.dataframe.groupby(self.dataframe.columns[1]).max().iloc[:, 3] - abs_min_temp = self.dataframe.groupby(self.dataframe.columns[1]).min().iloc[:, 4] - else: - raise AttributeError( - f""" - Data in cloupy.WalterLieth.dataframe has {len(self.dataframe.columns)} columns which is invalid. Input 5 - or 6 columns, depending on the data interval. - """) - - if precipitation.min() < 0: - raise ValueError( - f""" - A value below 0 mm occured in the precipitation series. Invalid value: {precipitation.min()} - """) - - if mean_temperature.max() > 50: - raise ValueError( - f""" - Monthly mean temperature exceeded 50°C! Invalid value: {mean_temperature.max()} - """) - - annual_mean_temp = round(mean_temperature.mean(), 1) - sum_preci = round(precipitation.sum(), 1) - - maxtwm_mintcm = WalterLieth.get_max_twm_and_min_tcm(mean_temperature, abs_max_temp, abs_min_temp) - max_temp = round(maxtwm_mintcm[0], 1) - min_temp = round(maxtwm_mintcm[1], 1) - - x_major_ticks = [0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5] - x_minor_ticks = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - - temp_yaxis_ticks = WalterLieth.get_temp_yticks(mean_temperature) - upper_axis_max_tick = WalterLieth.get_max_ytick_for_precipitation(precipitation) - - if freeze_rectangles: - if min(temp_yaxis_ticks) < -45: - y_value_for_closing_bottom_rectangles = min(temp_yaxis_ticks) + 2.7 - elif min(temp_yaxis_ticks) == -40: - y_value_for_closing_bottom_rectangles = min(temp_yaxis_ticks) + 2.5 - elif min(temp_yaxis_ticks) == -30: - y_value_for_closing_bottom_rectangles = min(temp_yaxis_ticks) + 2.3 - elif min(temp_yaxis_ticks) == -20: - y_value_for_closing_bottom_rectangles = min(temp_yaxis_ticks) + 2 - elif min(temp_yaxis_ticks) == -10: - y_value_for_closing_bottom_rectangles = min(temp_yaxis_ticks) + 1.65 - else: - y_value_for_closing_bottom_rectangles = min(temp_yaxis_ticks) + 1.45 - else: - y_value_for_closing_bottom_rectangles = None - - fig, temp_axis = plt.subplots(figsize=figsize) - fig.patch.set_alpha(1) - - if title and title_text: - fig.suptitle(title, x=0.14, size=16, ha='left', fontweight='bold') - if self.elevation and coordinates_box: - fig.text(0.14, 0.933, asl) - if self.lon and coordinates_box: - fig.text(0.14, 0.91, lon) - if self.lat and coordinates_box: - fig.text(0.14, 0.887, lat) - if years and years_text: - fig.text(0.88, 0.935, years, size=14, ha='right', fontweight='bold') - if yearly_means_box: - fig.text(0.88, 0.91, temp_label.format(annual_mean_temp), ha='right') - fig.text(0.88, 0.887, preci_label.format(sum_preci), ha='right') - if extremes_box: - fig.text(0.08, 0.86, 'Max:', ha='center') - fig.text(0.08, 0.86 - 0.023, f'{str(max_temp)}°C', ha='center') - fig.text(0.08, 0.80, 'Min:', ha='center') - fig.text(0.08, 0.80 - 0.023, f'{str(min_temp)}°C', ha='center') - - temp_axis.set_xticks(x_major_ticks) - temp_axis.set_xticks(x_minor_ticks, minor=True) - temp_axis.set_xticklabels(x_ticks_labels) - temp_axis.set_xlim(0, max(x_minor_ticks)) - temp_axis.set_yticks(temp_yaxis_ticks) - temp_axis.set_ylim(min(temp_yaxis_ticks), max(temp_yaxis_ticks)) - temp_axis.tick_params(axis='y', which='major', length=6) - temp_axis.tick_params(axis='x', which='minor', length=0) - temp_axis.tick_params(axis='x', which='major', length=0) - - if freeze_rectangles and y_value_for_closing_bottom_rectangles is not None: - temp_axis.plot([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], - [(k * 0) + y_value_for_closing_bottom_rectangles for k in range(0, 13)], - linewidth=1, color='k') - - for month in range(0, 13): - temp_axis.plot([month, month], - [min(temp_yaxis_ticks), y_value_for_closing_bottom_rectangles], - color='k', linestyle='solid', linewidth=1) - - if min(mean_temperature) < 0: - temp_axis.plot([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], [k * 0 for k in range(0, 13)], - color=zero_linecolor, linewidth=1, linestyle=zero_linestyle) - - preci_axis = temp_axis.secondary_yaxis('right') - preci_axis.set_yticks([tick for tick in temp_yaxis_ticks if tick >= 0]) - preci_axis.set_yticklabels([tick * 2 for tick in temp_yaxis_ticks if tick >= 0]) - preci_axis.tick_params(axis='both', which='major', length=6) - - divider = make_axes_locatable(temp_axis) - upper_axis = divider.append_axes("top", size=1, pad=0) - upper_axis.tick_params(axis='y', length=6) - upper_axis.set_xticks(x_major_ticks) - upper_axis.set_xticks(x_minor_ticks, minor=True) - upper_axis.set_xticklabels(['', '', '', '', '', '', '', '', '', '', '', '']) - upper_axis.set_xlim(0, max(x_minor_ticks)) - upper_axis.set_yticks([upper_axis_max_tick]) - upper_axis.set_yticks([], minor=True) - upper_axis.set_ylim((100, upper_axis_max_tick)) - upper_axis.yaxis.tick_right() - upper_axis.set_yticklabels([str(upper_axis_max_tick)]) - upper_axis.tick_params(axis='x', which='both', color=[0, 0, 0, 0]) - upper_axis.spines['top'].set_color('white') - upper_axis.text(-0.01, upper_axis_max_tick + (upper_axis_max_tick * 0.015), - '_', ha='right', fontweight='bold', size=11).set_fontname('Times New Roman') - temp_axis.set_ylabel(temp_axis_ylabel) - temp_axis.set_xlabel(temp_axis_xlabel) - preci_axis.set_ylabel(preci_axis_ylabel) - - x_for_plotting = [0, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12] - interpolated_margins = WalterLieth.interpolate_margins(mean_temperature, precipitation) - mean_temperature = interpolated_margins[0] - precipitation = interpolated_margins[1] - - temp_axis.plot(x_for_plotting, mean_temperature, color=temp_linecolor, linestyle=temp_linestyle, - label=temp_legend_label) - temp_axis.plot(x_for_plotting, [p / 2 for p in precipitation], color=preci_linecolor, linestyle=preci_linestyle, - label=preci_legend_label) - upper_axis.plot(x_for_plotting, precipitation, color=preci_linecolor, linestyle=preci_linestyle, - label=preci_legend_label) - - periods = WalterLieth.distinguish_between_wet_and_dry(mean_temperature, precipitation) - wet_periods = periods[0] - dry_periods = periods[1] - - for period in wet_periods: - where = [False, False, False, False, - False, False, False, False, - False, False, False, False, - False, False] - for index in range(period[0], period[1] + 1): - where[index] = True - temp_axis.fill_between(x_for_plotting, [p / 2 for p in precipitation], mean_temperature, - where=where, interpolate=True, hatch=wet_period_hatch, - color='none', edgecolor=wet_period_hatch_color, linewidth=0.0, - label=humid_period_legend_label) - if max(precipitation) > 100: - upper_axis.fill_between(x_for_plotting, precipitation, 100, - where=where, interpolate=True, hatch=None, - color=wet_period_hatch_color, label=wet_period_legend_label) - - for period in dry_periods: - where = [False, False, False, False, - False, False, False, False, - False, False, False, False, - False, False] - for index in range(period[0], period[1] + 1): - where[index] = True - temp_axis.fill_between(x_for_plotting, [p / 2 for p in precipitation], mean_temperature, - where=where, interpolate=True, hatch=dry_period_hatch, - color='none', edgecolor=dry_period_hatch_color, linewidth=0.0, - label=dry_period_legend_label) - - # cover the fill_between under the 0 line - if y_value_for_closing_bottom_rectangles is None: - temp_axis.fill_between(x_for_plotting, [0] * 14, [temp_axis.get_ylim()[0]] * 14, color='white') - else: - temp_axis.fill_between(x_for_plotting, [0] * 14, [y_value_for_closing_bottom_rectangles] * 14, color='white') - - if freeze_rectangles: - if_freeze = WalterLieth.determine_if_freeze(abs_min_temp) - likely = if_freeze[0] - freeze = if_freeze[1] - - temp_axis.fill_between([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], - [k * 0 + min(temp_yaxis_ticks) for k in range(0, 13)], - y_value_for_closing_bottom_rectangles, - color='white', - ) - - if freeze: - where = [False, False, False, False, - False, False, False, False, - False, False, False, False, - False] - for index in freeze: - where[index] = True - where[index + 1] = True - temp_axis.fill_between([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], - [k * 0 + min(temp_yaxis_ticks) for k in range(0, 13)], - y_value_for_closing_bottom_rectangles, - where=where, color=freeze_color, - label=freeze_legend_label) - - if likely: - where = [False, False, False, False, - False, False, False, False, - False, False, False, False, - False] - for index in likely: - where[index] = True - where[index + 1] = True - temp_axis.fill_between([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], - [k * 0 + min(temp_yaxis_ticks) for k in range(0, 13)], - y_value_for_closing_bottom_rectangles, - where=where, color=likely_freeze_color, - label=likely_freeze_legend_label) - - if legend_box: - handles, labels = temp_axis.get_legend_handles_labels() - if max(precipitation) > 100: - handles.append(upper_axis.get_legend_handles_labels()[0][1]) - labels.append(upper_axis.get_legend_handles_labels()[1][1]) - - doubled_labels = [] - for label in labels: - if labels.count(label) > 1: - doubled_labels.append(label) - - for label in doubled_labels: - while labels.count(label) > 1: - labels.remove(label) - handles.remove(handles[labels.index(label)]) - - if len(labels) % 3 == 0: - NCOL = 3 - elif len(labels) % 2 == 0: - NCOL = 2 - elif len(labels) % 5 == 0: - NCOL = 5 - else: - NCOL = 4 - - fig.legend(handles, labels, loc='lower center', ncol=NCOL, bbox_to_anchor=(0.52, 0)) - - if save is not None: - plt.savefig(save) - - def d_imgw_data( - self, years_range, interval='monthly', - stations_kind='synop', filter_station=True, check_years=True, - return_coordinates=True - ): - """ - Download data for a drawing from the IMGW database. - - Keyword arguments: - years_range -- years range (e.g. range(2010, 2021)) - interval -- the data interval ('monthly', 'daily', 'prompt') (default - 'monthly') - stations_kind -- stations kind from the IMGW database ('synop', 'climat', - 'fall') (default 'synop') - filter_station -- if the downloaded data must be filtered by - WalterLieth.station_name (default True) - check_years -- check if the years range in the downloaded data matches - the years range from WalterLieth.years_range. If not, change - WalterLieth.years_range depending on years range in the downloaded data - (default True) - return_coordinates -- search for coordinates for the chosen station - name in WalterLieth.station_name (default True) - """ - - from cloupy.scraping import imgw as imgw_scraping - - if interval == 'monthly': - data = imgw_scraping.download_imgw_climatological_data( - years_range=years_range, interval=interval, - stations_kind=stations_kind, file_format_index=0, - keywords=['Rok', 'Nazwa stacji', 'Miesiąc', - 'Średnia temperatura miesięczna [°C]', - 'Miesieczna suma opadów [mm]', - 'Absolutna temperatura maksymalna [°C]', - 'Absolutna temperatura minimalna [°C]'], - return_coordinates=return_coordinates - ) - if filter_station: - data = data[data['Nazwa stacji'] == self.station_name] - - if check_years: - max_year = data.loc[:, 'Rok'].max() - min_year = data.loc[:, 'Rok'].min() - self.years_range = range(min_year, max_year + 1) - - data = data.drop(['Nazwa stacji', 'Rok'], axis=1) - if data.empty: - raise ValueError( - """ - No data found for the specified parameters. Check if the input arguments in the 'WalterLieth.d_imgw_data' - method are valid. - """) - - elif interval == 'daily': - if not filter_station: - raise ValueError( - """ - 'cloupy.WalterLieth.d_imgw_data' does not support given combination: interval='daily', - filter_station=False. Use interval='monthly' instead or stick with the daily interval and change - the 'filter_station' argument to True. - """) - - data = imgw_scraping.download_imgw_climatological_data( - years_range=years_range, interval=interval, - stations_kind=stations_kind, file_format_index=0, - keywords=['Rok', 'Nazwa stacji', 'Miesiąc', - 'Średnia temperatura dobowa [°C]', - 'Suma dobowa opadów [mm]', # w k_d jest 'ów' - 'Suma dobowa opadu [mm]', # w s_d jest 'u'. dziwne. - 'Maksymalna temperatura dobowa [°C]', - 'Minimalna temperatura dobowa [°C]'], - return_coordinates=return_coordinates - ) - - data = data[data['Nazwa stacji'] == self.station_name] - if check_years: - max_year = data.loc[:, 'Rok'].max() - min_year = data.loc[:, 'Rok'].min() - self.years_range = range(min_year, max_year + 1) - - data = data.drop(['Nazwa stacji'], axis=1) - if data.empty: - raise ValueError( - """ - No data found for the specified parameters. Check if the input arguments in the 'WalterLieth.d_imgw_data' - method are valid. - """) - else: - raise ValueError( - """ - No data found for the specified parameters. Check if the input arguments in the 'WalterLieth.d_imgw_data' - method are valid. Check the 'interval' argument. - """) - - if return_coordinates: - self.lon = round(data['lon'].mean(), 1) - self.lat = round(data['lat'].mean(), 1) - self.elevation = round(data['elv'].mean()) - data = data.drop(['lat', 'lon', 'elv'], axis=1) - - self.dataframe = data - - def d_wmo_data( - self, nearby_stations=True, return_coordinates=True, - degrees_range_for_nearby_stations=0.5, check_years=True - ): - """ - Download data for a drawing from the WMO database. - - Keyword arguments: - nearby_stations -- if there is no data or a single element is missing, - and if 'nearby_stations' argument is set to True, the function will search - for the nearest stations and try to complete the lack (default True) - return_coordinates -- if set to True, the function will add columns - with latitude, longitude and elevation for the specified station/stations - (default False) - degrees_range_for_nearby_stations -- acceptable range in degrees in all - directions if nearby stations have to be searched (default 0.5) - check_years -- check if the years range in the downloaded data matches - the years range from WalterLieth.years_range. If not, change - WalterLieth.years_range depending on the years range in the downloaded data - (default True) - """ - - from cloupy.scraping import wmo as wmo_scraping - - data = wmo_scraping.download_wmo_climatological_data( - self.station_name, ['temp', 'preci', 'temp_max', 'temp_min'], nearby_stations=nearby_stations, - return_coordinates=return_coordinates, degrees_range_for_nearby_stations=degrees_range_for_nearby_stations - ) - - if check_years: - min_year = data['year'].min() - max_year = data['year'].max() - self.years_range = range(min_year, max_year + 1) - - data = data.drop(['station', 'year'], axis=1) - - if return_coordinates: - lon = data['lon'].mean() - lat = data['lat'].mean() - elv = data['elv'].mean() - - self.lat = float(round(lat, 2)) - self.lon = float(round(lon, 2)) - self.elevation = int(round(elv)) - - data = data.drop(['lat', 'lon', 'elv'], axis=1) - - for element in ['temp', 'preci', 'temp_max', 'temp_min']: - try: - data[element] - except KeyError: - if element == 'preci' or element == 'temp': - raise FileNotFoundError( - f""" - No essential data for '{element}' was downloaded - please, try again. If this does not fix the - problem, there's a high probability that the required data is missing on the WMO website. - """ - ) - else: - data[element] = [None] * len(data.index) - else: - continue - - for element in ['temp', 'preci', 'temp_max', 'temp_min']: - if data[element].isnull().all(): - if element == 'temp' or element == 'preci': - raise ValueError( - f""" - No required data for '{element}'. It seems like the data was downloaded, but actually the column - contains only None values. - """ - ) - elif element == 'temp_min': - print( - f""" - WARNING: no data found for '{element}'. It is not required for drawing, but the box with extreme - temperatures will show None value. The probability of freeze occurrence neither can be calculated, - so the rectangles will be blank. You can tell drawing function not to draw above elements: - freeze_rectangles=False, extreme_box=False. - """ - ) - else: - print( - f""" - WARNING: no data found for '{element}'. It is not required for drawing, but the box with extreme - temperatures will show None value. You can tell drawing function not to draw box with extreme - temperatures: extreme_box=False. - """ - ) - self.dataframe = data - - def import_global_df( - self, columns_order, filter_station=True, - check_years=True, station_in_column=False, years_in_column=False - ): - """ - Import data for WalterLieth.dataframe from the global dataframe. - - Keyword arguments: - columns_order -- specify which columns from the global dataframe are - to be taken (list of indexes, 'imgw_monthly', 'imgw_daily'). If the global - dataframe comes from the IMGW database and its structure has not been - modified in any way, then 'imgw_monthly' or 'imgw_daily' can be used - - depending on the data interval - filter_station -- if the imported data must be filtered by - WalterLieth.station_name (default True) - check_years -- check if the years range in the global DataFrame matches - WalterLieth.years_range. If not, change WalterLieth.years_range depending - on the years range in the global DataFrame (default True) - station_in_column -- if you want to filter the imported data by - WalterLieth.station_name, specify the column in which station names are - located (with an index which is an integer) (default False, accepts integers) - years_in_column -- if you want to check if WalterLieth.years_range matches - the years range in the imported global dataframe, specify the index of - the column in which years data is located (default False, accepts integers) - - ---------------NOTE THAT--------------- - If the data in the global dataframe comes from the IMGW database and its - structure has not been modified in any way, you can use 'imgw_monthly', - 'imgw_daily' in the 'columns_order' argument. If this is your case, you do - not have to set the 'station_in_column' and 'years_in_column' arguments - - the method will do it for you. - - If the data in the global dataframe does not come from the IMGW database, - you have to specify the columns in which the required data for the drawing - is located (by passing a list of integers to 'columns_order'). Note that - if you want to filter the data by station name (from WalterLieth.station_name) - or check if the years range in the imported data matches WalterLieth.years_range, - you also have to pass proper columns from the global dataframe to the - 'columns_order' argument. When you do that, you have to set the indexes of - the columns in which the years or the station names are located ('station_in_column' - and 'years_in_column' arguments). Remember that these indexes must be for - a new dataframe which originates after the data filtering by 'columns_order'. - - For example: - columns_order = [2, 3, 4, 5, 6, 7, 8], where: - 2nd column contains station names (the index in the new dataframe is 0), - 3rd column contains years (the new index is 1), - 4th column contains months (the new index is 2), - 5th column contains average air temperatures (the new index is 3), - 6th column contains average sum of precipitation (the new index is 4), - 7th column contains absolute maximum air temperature (the new index is 5), - 8th column contains absolute minimum air temperature (the new index is 6) - - So, if you want to filter by station name and check if WalterLieth.years_range - matches the data in the imported global dataframe, 'station_in_column' and - 'years_in_column' should be: - station_in_column = int(0) - years_in_column = int(1) - - After filtering, the method will drop these columns and pass the dataframe - to WalterLieth.dataframe without the columns in which station names and - years were. If the structure of the dataframe after dropping the above columns - matches the required data structure for the WalterLieth class, the graph - should be drawn correctly (see the WalterLieth class docstring for the - required data structure) - --------------------------------------- - """ - - from cloupy import read_global_df - - if isinstance(columns_order, list) and not isinstance(columns_order[0], int): - raise ValueError( - """ - 1. Use a list of ints to specify which columns from the global pandas.DataFrame are necessary for drawing. - 2. Remember that you can get accurate info on the required data structure in the cloupy.WalterLieth docs. - 3. Alternatively, if your data source is the IMGW database you can use the 'imgw_monthly' or 'imgw_daily' - strings as input. - """) - - if columns_order != 'imgw_monthly' and columns_order != 'imgw_daily' and not isinstance(columns_order, list): - raise ValueError( - """ - Valid inputs for the 'columns_order' argument: 'imgw_monthly', 'imgw_daily', a list of ints - If the data source is the IMGW database and the default columns order is preserved, you can input the - 'imgw_monthly' or 'imgw_daily' strings for the 'columns_order' argument (depending on the data interval). - """) - - if not isinstance(station_in_column, int) or not isinstance(years_in_column, int): - raise ValueError( - """ - For the 'station_in_column' and 'years_in_column' arguments only integers are valid inputs. - """ - ) - - df = read_global_df() - - if 'imgw' in columns_order: - if columns_order == 'imgw_monthly': - df_for_object = df.iloc[:, [1, 2, 3, 12, 16, 4, 8]] - else: - df_for_object = df.iloc[:, [1, 2, 3, 9, 13, 5, 7]] - - if filter_station: - df_for_object = df_for_object[df_for_object.iloc[:, 0] == self.station_name] - if df_for_object.empty: - raise ValueError( - """ - The dataframe has just been filtered and the output was empty. Check your inputs which may affect - filtering. - - 1. It is possible that the input for the 'station_name' argument in 'cloupy.WalterLieth' is invalid. - 2. You may be looking for a station which is not available in the global pandas.DataFrame. - 3. If you have changed default column order from the IMGW database, the function will return this - exception. - 4. Check if the global dataframe does not contain any unnecessary column. If you read a .csv file - by pandas.read_csv() and set it as a global dataframe, the function may have added an unwanted - column to the dataframe. It is possible that passing int(0) for the 'index_col' argument - (in the 'pandas.read_csv()' function) will handle the exception. - 5. If you're willing not to filter data by the 'station_name' argument, you can set 'filter_station' - argument to False. Note that it is not recommended to draw a Walter-Lieth diagram if the data does not - come from a single station. - """ - ) - - if check_years: - max_year = df_for_object.iloc[:, 1].max() - min_year = df_for_object.iloc[:, 1].min() - self.years_range = range(min_year, max_year + 1) - - df_for_object = df_for_object.drop(df_for_object.columns[0], axis=1) # station names - if columns_order == 'imgw_monthly': - df_for_object = df_for_object.drop(df_for_object.columns[0], axis=1) # years - else: - df_for_object = df.iloc[:, columns_order] - - if isinstance(station_in_column, int): - - if filter_station: - df_for_object = df_for_object[df_for_object.iloc[:, station_in_column] == self.station_name] - df_for_object.drop(df_for_object.columns[station_in_column], axis=1, inplace=True) - else: - raise ValueError( - """ - If you want to filter by station name in the specified column ('station_in_column'), please set - 'filter_station' argument to True. - """ - ) - - if df_for_object.empty: - raise ValueError( - """ - The dataframe after filtering is empty. Check if the WalterLieth.station_name is in global - dataframe and if the 'station_in_column' argument is valid. - """ - ) - - if isinstance(years_in_column, int): - - if check_years: - if isinstance(station_in_column, int): - years_in_column -= 1 - - year_min = df_for_object.iloc[:, years_in_column].min() - year_max = df_for_object.iloc[:, years_in_column].max() - - self.years_range = range(year_min, year_max + 1) - df_for_object.drop(df_for_object.columns[years_in_column], axis=1, inplace=True) - else: - raise ValueError( - """ - If you want to update the WalterLieth.years_range by the specified column ('years_in_column'), - please set the 'check_years' argument to True. - """ - ) - - self.dataframe = df_for_object - - @staticmethod - def check_cloupy_graphs_chosen_style(): - """Return which style has been set globally for cloupy""" - from matplotlib import rcParams - from cycler import cycler - import os - - with open(str(__file__).replace(f'diagrams{os.sep}walter_lieth.py', 'current_diagStyle.txt'), 'r') as f: - style = f.readline() - - if style == 'default': - rcParams['axes.prop_cycle'] = ( - cycler(color=['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', - '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf']) + - cycler(linestyle=['-' for solid in range(0, 10)]) - ) - - elif style == 'retro': - rcParams['axes.prop_cycle'] = ( - cycler(color=['k' for k in range(0, 6)]) + - cycler(linestyle=['-', '--', '-.', - (0, (1, 5)), - (0, (3, 1, 1, 1)), - (0, (3, 10, 1, 10, 1, 10)) - ]) - ) - - else: - raise ValueError("Invalid style value in the 'current_diagStyle.txt file!'") - - return style - - @staticmethod - def get_max_twm_and_min_tcm( - mean_temperature, abs_max_temp, abs_min_temp - ): - """ - Return the absolute maximum of the warmest month and the absolute minimum - of the coldest month - """ - - the_highest_temp = mean_temperature.max() - the_lowest_temp = mean_temperature.min() - - the_warmest_month = None - the_coldest_month = None - for index, temp in enumerate(mean_temperature): - if temp == the_highest_temp: - the_warmest_month = index + 1 - if temp == the_lowest_temp: - the_coldest_month = index + 1 - try: - return abs_max_temp[the_warmest_month], abs_min_temp[the_coldest_month] - except KeyError: - raise ValueError( - """ - Invalid data structure in the 'cloupy.WalterLieth.dataframe'. See the 'cloupy.WalterLieth' docs for more info. - - 1. Check if you haven't mistaken columns order in the 'cloupy.WalterLieth.dataframe'. - 2. It's also possible that you have tried to pass daily interval and there's a lack of required column/columns. - Note that the daily interval data must contain 6 columns - for more info on the required data structure - see the 'cloupy.WalterLieth' docs. If you used 'cloupy.WalterLieth.import_global_df' method for data - which comes from the IMGW database, check the values passed to the 'columns_order' argument (if the values - 'imgw_monthly' or 'imgw_daily' were used correctly, depending on the IMGW data interval). - """) - - @staticmethod - def get_temp_yticks(temperature): - """Return a tick list for the WalterLieth graph""" - - available_temp_axis_ticks = [-50, -40, -30, -20, -10, 0, 10, 20, 30, 40, 50] - min_temp = min(list(temperature)) - - if available_temp_axis_ticks.count(min_temp) == 1: - return available_temp_axis_ticks[available_temp_axis_ticks.index(min_temp) - 1:] - - temp_axis_ticks = [] - try: - for avail_temp_tick in available_temp_axis_ticks: - if avail_temp_tick < min_temp: - if available_temp_axis_ticks[available_temp_axis_ticks.index(avail_temp_tick) + 1] > min_temp: - temp_axis_ticks.append(avail_temp_tick) - continue - else: - temp_axis_ticks.append(avail_temp_tick) - except IndexError: - raise AttributeError( - """ - Invalid data structure in the 'cloupy.WalterLieth.dataframe'. Check the 'cloupy.WalterLieth' docs for more - info on the required data structure. - - If you have downloaded the data yourself from the IMGW database and set it as a global dataframe, check - if you have chosen the correct file format to download. The available file formats for the 'cloupy.WalterLieth' - from the IMGW database are: ['s_m_d', 's_d']. - - cloupy.d_imgw_data(..., file_format='s_m_d') - cloupy.d_imgw_data(..., file_format='s_d') - """) - - if temp_axis_ticks[0] > 0: - temp_axis_ticks = [0, 10, 20, 30, 40, 50] - - return temp_axis_ticks - - @staticmethod - def get_yticks_labels_for_precipitation(temp_yaxis_ticks): - """Return a list of labels for the secondary axis in the WalterLieth graph""" - - preci_ticks = [] - for index, tick in enumerate(temp_yaxis_ticks): - if index == 0 and tick != 0: - preci_ticks.append('') - else: - preci_ticks.append(tick * 2) - - return preci_ticks - - @staticmethod - def get_max_ytick_for_precipitation(precipitation): - """Return the highest tick for precipitation for the upper axis in the WL graph""" - - available_ticks = [200, 300, 400, 500, 600, - 700, 800, 900, 1000, 1100, - 1200, 1300, 1400, 1500, 1600, - 1700, 1800, 1900, 2000] - max_tick = max(list(precipitation)) - - for tick in available_ticks: - if tick >= max_tick: - return tick - raise ValueError(f"Precipitation is too high! {max_tick}") - - @staticmethod - def determine_if_freeze(abs_min_temp): - """Return a list of the months in which freeze is likely and more likely""" - - likely = [] - freeze = [] - - for index, temp in enumerate(abs_min_temp): - if temp < -5: - freeze.append(index) - elif temp < 0: - likely.append(index) - else: - continue - - if len(likely) == 0: - likely = False - if len(freeze) == 0: - freeze = False - - return likely, freeze - - @staticmethod - def interpolate_margins( - mean_temperature, precipitation - ): - """Interpolate the given data to the edges of the WalterLieth graph""" - - temperature = list(mean_temperature) - precipitation = list(precipitation) - - if temperature[1] - temperature[0] > 0: - temperature_trend = 'decrease' - elif temperature[1] - temperature[0] == 0: - temperature_trend = 'stable' - else: - temperature_trend = 'increase' - - if precipitation[1] - precipitation[0] > 0: - precipitation_trend = 'decrease' - elif precipitation[1] - precipitation[0] == 0: - precipitation_trend = 'stable' - else: - precipitation_trend = 'increase' - - if temperature_trend == 'decrease': - if temperature[0] < 0: - temperature_0 = temperature[0] - ((temperature[0] * 0.05) * -1) - else: - temperature_0 = temperature[0] - (temperature[0] * 0.05) - elif temperature_trend == 'increase': - if temperature[0] < 0: - temperature_0 = temperature[0] + ((temperature[0] * 0.05) * -1) - else: - temperature_0 = temperature[0] + (temperature[0] * 0.05) - else: - temperature_0 = temperature[0] - - if precipitation_trend == 'decrease': - precipitation_0 = precipitation[0] - (precipitation[0] * 0.05) - elif precipitation_trend == 'increase': - precipitation_0 = precipitation[0] + (precipitation[0] * 0.05) - else: - precipitation_0 = precipitation[0] - - new_temperature = [] - for index, temp in enumerate(temperature): - if index == 0: - new_temperature.append(temperature_0) - new_temperature.append(temp) - else: - new_temperature.append(temp) - new_temperature.append(temperature_0) - - new_precipitation = [] - for index, preci in enumerate(precipitation): - if index == 0: - new_precipitation.append(precipitation_0) - new_precipitation.append(preci) - else: - new_precipitation.append(preci) - new_precipitation.append(precipitation_0) - - return new_temperature, new_precipitation - - @staticmethod - def distinguish_between_wet_and_dry( - mean_temperature, precipitation - ): - """Distinguish wet and dry periods and return appropriate lists""" - - corrected_precipitation = [] - for preci in precipitation: - if preci < 100: - corrected_precipitation.append(preci / 2) - else: - corrected_precipitation.append(preci) - - dry_months_indexes = [] - wet_months_indexes = [] - - for index, preci in enumerate(corrected_precipitation): - if preci > mean_temperature[index]: - wet_months_indexes.append(index) - else: - dry_months_indexes.append(index) - - wet_periods = [] - period = [] - for i, index in enumerate(wet_months_indexes): - if i == 0: - period.append(index) - elif index - wet_months_indexes[i - 1] != 1: - period.append(wet_months_indexes[i - 1]) - wet_periods.append((period[0], period[1])) - period.clear() - - period.append(index) - else: - continue - if len(period) == 1: - wet_period_starts_with = period[0] - wet_period_ends_with = wet_months_indexes[-1] - wet_periods.append((wet_period_starts_with, wet_period_ends_with)) - - dry_periods = [] - period = [] - for i, index in enumerate(dry_months_indexes): - if i == 0: - period.append(index) - elif index - dry_months_indexes[i - 1] != 1: - period.append(dry_months_indexes[i - 1]) - dry_periods.append((period[0], period[1])) - period.clear() - - period.append(index) - else: - continue - try: - if len(period) == 1: - dry_period_starts_with = period[0] - dry_period_ends_with = dry_months_indexes[-1] - dry_periods.append((dry_period_starts_with, dry_period_ends_with)) - except KeyError: - pass - - return wet_periods, dry_periods diff --git a/build/lib/cloupy/maps/draw_shapes.py b/build/lib/cloupy/maps/draw_shapes.py deleted file mode 100644 index 69e0b6c..0000000 --- a/build/lib/cloupy/maps/draw_shapes.py +++ /dev/null @@ -1,317 +0,0 @@ - - -def calc_the_distance( - point1, point2 -): - """Calculate the distance between two given points""" - import math - - a = abs(point1[0] - point2[0]) - b = abs(point1[1] - point2[1]) - c2 = a ** 2 + b ** 2 - - c = math.sqrt(c2) - - return c - - -def get_countries_list_for_default_shape(): - return [('Zimbabwe', 'Zimbabwe', 'ZWE'), ('Zambia', 'Zambia', 'ZMB'), ('Yemen', 'Yemen', 'YEM'), - ('Vietnam', 'Vietnam', 'VNM'), ('Venezuela', 'Venezuela', 'VEN'), ('Vatican', 'Vatican', 'VAT'), - ('Vanuatu', 'Vanuatu', 'VUT'), ('Uzbekistan', 'Uzbekistan', 'UZB'), ('Uruguay', 'Uruguay', 'URY'), - ('Federated States of Micronesia', 'Federated States of Micronesia', 'FSM'), - ('Marshall Islands', 'Marshall Islands', 'MHL'), - ('United States of America', 'Northern Mariana Islands', 'MNP'), - ('United States of America', 'United States Virgin Islands', 'VIR'), - ('United States of America', 'Guam', 'GUM'), ('United States of America', 'American Samoa', 'ASM'), - ('United States of America', 'Puerto Rico', 'PRI'), - ('United States of America', 'United States of America', 'USA'), - ('United Kingdom', 'South Georgia and the Islands', 'SGS'), - ('United Kingdom', 'British Indian Ocean Territory', 'IOT'), - ('United Kingdom', 'Saint Helena', 'SHN'), ('United Kingdom', 'Pitcairn Islands', 'PCN'), - ('United Kingdom', 'Anguilla', 'AIA'), - ('United Kingdom', 'Falkland Islands', 'FLK'), ('United Kingdom', 'Cayman Islands', 'CYM'), - ('United Kingdom', 'Bermuda', 'BMU'), - ('United Kingdom', 'British Virgin Islands', 'VGB'), ('United Kingdom', 'Turks and Caicos Islands', 'TCA'), - ('United Kingdom', 'Montserrat', 'MSR'), ('United Kingdom', 'Jersey', 'JEY'), - ('United Kingdom', 'Guernsey', 'GGY'), - ('United Kingdom', 'Isle of Man', 'IMN'), ('United Kingdom', 'United Kingdom', 'GBR'), - ('United Arab Emirates', 'United Arab Emirates', 'ARE'), ('Ukraine', 'Ukraine', 'UKR'), - ('Uganda', 'Uganda', 'UGA'), - ('Turkmenistan', 'Turkmenistan', 'TKM'), ('Turkey', 'Turkey', 'TUR'), ('Tunisia', 'Tunisia', 'TUN'), - ('Trinidad and Tobago', 'Trinidad and Tobago', 'TTO'), ('Tonga', 'Tonga', 'TON'), ('Togo', 'Togo', 'TGO'), - ('East Timor', 'East Timor', 'TLS'), ('Thailand', 'Thailand', 'THA'), - ('United Republic of Tanzania', 'United Republic of Tanzania', 'TZA'), - ('Tajikistan', 'Tajikistan', 'TJK'), ('Taiwan', 'Taiwan', 'TWN'), ('Syria', 'Syria', 'SYR'), - ('Switzerland', 'Switzerland', 'CHE'), - ('Sweden', 'Sweden', 'SWE'), ('Swaziland', 'Swaziland', 'SWZ'), ('Suriname', 'Suriname', 'SUR'), - ('South Sudan', 'South Sudan', 'SDS'), ('Sudan', 'Sudan', 'SDN'), ('Sri Lanka', 'Sri Lanka', 'LKA'), - ('Spain', 'Spain', 'ESP'), ('South Korea', 'South Korea', 'KOR'), ('South Africa', 'South Africa', 'ZAF'), - ('Somalia', 'Somalia', 'SOM'), ('Somaliland', 'Somaliland', 'SOL'), - ('Solomon Islands', 'Solomon Islands', 'SLB'), - ('Slovakia', 'Slovakia', 'SVK'), ('Slovenia', 'Slovenia', 'SVN'), ('Singapore', 'Singapore', 'SGP'), - ('Sierra Leone', 'Sierra Leone', 'SLE'), ('Seychelles', 'Seychelles', 'SYC'), - ('Republic of Serbia', 'Republic of Serbia', 'SRB'), - ('Senegal', 'Senegal', 'SEN'), ('Saudi Arabia', 'Saudi Arabia', 'SAU'), - ('São Tomé and Principe', 'São Tomé and Principe', 'STP'), - ('San Marino', 'San Marino', 'SMR'), ('Samoa', 'Samoa', 'WSM'), - ('Saint Vincent and the Grenadines', 'Saint Vincent and the Grenadines', 'VCT'), - ('Saint Lucia', 'Saint Lucia', 'LCA'), ('Saint Kitts and Nevis', 'Saint Kitts and Nevis', 'KNA'), - ('Rwanda', 'Rwanda', 'RWA'), - ('Russia', 'Russia', 'RUS'), ('Romania', 'Romania', 'ROU'), ('Qatar', 'Qatar', 'QAT'), - ('Portugal', 'Portugal', 'PRT'), - ('Poland', 'Poland', 'POL'), ('Philippines', 'Philippines', 'PHL'), ('Peru', 'Peru', 'PER'), - ('Paraguay', 'Paraguay', 'PRY'), - ('Papua New Guinea', 'Papua New Guinea', 'PNG'), ('Panama', 'Panama', 'PAN'), ('Palau', 'Palau', 'PLW'), - ('Pakistan', 'Pakistan', 'PAK'), ('Oman', 'Oman', 'OMN'), ('Norway', 'Norway', 'NOR'), - ('North Korea', 'North Korea', 'PRK'), - ('Nigeria', 'Nigeria', 'NGA'), ('Niger', 'Niger', 'NER'), ('Nicaragua', 'Nicaragua', 'NIC'), - ('New Zealand', 'New Zealand', 'NZL'), - ('New Zealand', 'Niue', 'NIU'), ('New Zealand', 'Cook Islands', 'COK'), - ('Netherlands', 'Netherlands', 'NLD'), - ('Netherlands', 'Aruba', 'ABW'), ('Netherlands', 'Curaçao', 'CUW'), ('Nepal', 'Nepal', 'NPL'), - ('Nauru', 'Nauru', 'NRU'), - ('Namibia', 'Namibia', 'NAM'), ('Mozambique', 'Mozambique', 'MOZ'), ('Morocco', 'Morocco', 'MAR'), - ('Western Sahara', 'Western Sahara', 'SAH'), - ('Montenegro', 'Montenegro', 'MNE'), ('Mongolia', 'Mongolia', 'MNG'), ('Moldova', 'Moldova', 'MDA'), - ('Monaco', 'Monaco', 'MCO'), - ('Mexico', 'Mexico', 'MEX'), ('Mauritius', 'Mauritius', 'MUS'), ('Mauritania', 'Mauritania', 'MRT'), - ('Malta', 'Malta', 'MLT'), - ('Mali', 'Mali', 'MLI'), ('Maldives', 'Maldives', 'MDV'), ('Malaysia', 'Malaysia', 'MYS'), - ('Malawi', 'Malawi', 'MWI'), - ('Madagascar', 'Madagascar', 'MDG'), ('North Macedonia', 'North Macedonia', 'MKD'), - ('Luxembourg', 'Luxembourg', 'LUX'), - ('Lithuania', 'Lithuania', 'LTU'), ('Liechtenstein', 'Liechtenstein', 'LIE'), ('Libya', 'Libya', 'LBY'), - ('Liberia', 'Liberia', 'LBR'), ('Lesotho', 'Lesotho', 'LSO'), ('Lebanon', 'Lebanon', 'LBN'), - ('Latvia', 'Latvia', 'LVA'), - ('Laos', 'Laos', 'LAO'), ('Kyrgyzstan', 'Kyrgyzstan', 'KGZ'), ('Kuwait', 'Kuwait', 'KWT'), - ('Kosovo', 'Kosovo', 'KOS'), - ('Kiribati', 'Kiribati', 'KIR'), ('Kenya', 'Kenya', 'KEN'), ('Kazakhstan', 'Kazakhstan', 'KAZ'), - ('Jordan', 'Jordan', 'JOR'), - ('Japan', 'Japan', 'JPN'), ('Jamaica', 'Jamaica', 'JAM'), ('Italy', 'Italy', 'ITA'), - ('Israel', 'Israel', 'ISR'), - ('Israel', 'Palestine', 'PSX'), ('Ireland', 'Ireland', 'IRL'), ('Iraq', 'Iraq', 'IRQ'), - ('Iran', 'Iran', 'IRN'), - ('Indonesia', 'Indonesia', 'IDN'), ('India', 'India', 'IND'), ('Iceland', 'Iceland', 'ISL'), - ('Hungary', 'Hungary', 'HUN'), - ('Honduras', 'Honduras', 'HND'), ('Haiti', 'Haiti', 'HTI'), ('Guyana', 'Guyana', 'GUY'), - ('Guinea-Bissau', 'Guinea-Bissau', 'GNB'), - ('Guinea', 'Guinea', 'GIN'), ('Guatemala', 'Guatemala', 'GTM'), ('Grenada', 'Grenada', 'GRD'), - ('Greece', 'Greece', 'GRC'), - ('Ghana', 'Ghana', 'GHA'), ('Germany', 'Germany', 'DEU'), ('Georgia', 'Georgia', 'GEO'), - ('Gambia', 'Gambia', 'GMB'), - ('Gabon', 'Gabon', 'GAB'), ('France', 'France', 'FRA'), ('France', 'Saint Pierre and Miquelon', 'SPM'), - ('France', 'Wallis and Futuna', 'WLF'), - ('France', 'Saint Martin', 'MAF'), ('France', 'Saint Barthelemy', 'BLM'), - ('France', 'French Polynesia', 'PYF'), - ('France', 'New Caledonia', 'NCL'), ('France', 'French Southern and Antarctic Lands', 'ATF'), - ('Finland', 'Aland', 'ALD'), - ('Finland', 'Finland', 'FIN'), ('Fiji', 'Fiji', 'FJI'), ('Ethiopia', 'Ethiopia', 'ETH'), - ('Estonia', 'Estonia', 'EST'), - ('Eritrea', 'Eritrea', 'ERI'), ('Equatorial Guinea', 'Equatorial Guinea', 'GNQ'), - ('El Salvador', 'El Salvador', 'SLV'), - ('Egypt', 'Egypt', 'EGY'), ('Ecuador', 'Ecuador', 'ECU'), - ('Dominican Republic', 'Dominican Republic', 'DOM'), - ('Dominica', 'Dominica', 'DMA'), ('Djibouti', 'Djibouti', 'DJI'), ('Denmark', 'Greenland', 'GRL'), - ('Denmark', 'Faroe Islands', 'FRO'), ('Denmark', 'Denmark', 'DNK'), ('Czechia', 'Czechia', 'CZE'), - ('Northern Cyprus', 'Northern Cyprus', 'CYN'), - ('Cyprus', 'Cyprus', 'CYP'), ('Cuba', 'Cuba', 'CUB'), ('Croatia', 'Croatia', 'HRV'), - ('Ivory Coast', 'Ivory Coast', 'CIV'), - ('Costa Rica', 'Costa Rica', 'CRI'), - ('Democratic Republic of the Congo', 'Democratic Republic of the Congo', 'COD'), - ('Republic of the Congo', 'Republic of the Congo', 'COG'), ('Comoros', 'Comoros', 'COM'), - ('Colombia', 'Colombia', 'COL'), - ('China', 'China', 'CHN'), ('China', 'Macao S.A.R', 'MAC'), ('China', 'Hong Kong S.A.R.', 'HKG'), - ('Chile', 'Chile', 'CHL'), - ('Chad', 'Chad', 'TCD'), ('Central African Republic', 'Central African Republic', 'CAF'), - ('Cabo Verde', 'Cabo Verde', 'CPV'), - ('Canada', 'Canada', 'CAN'), ('Cameroon', 'Cameroon', 'CMR'), ('Cambodia', 'Cambodia', 'KHM'), - ('Myanmar', 'Myanmar', 'MMR'), - ('Burundi', 'Burundi', 'BDI'), ('Burkina Faso', 'Burkina Faso', 'BFA'), ('Bulgaria', 'Bulgaria', 'BGR'), - ('Brunei', 'Brunei', 'BRN'), ('Brazil', 'Brazil', 'BRA'), ('Botswana', 'Botswana', 'BWA'), - ('Bosnia and Herzegovina', 'Bosnia and Herzegovina', 'BIH'), ('Bolivia', 'Bolivia', 'BOL'), - ('Bhutan', 'Bhutan', 'BTN'), ('Benin', 'Benin', 'BEN'), ('Belize', 'Belize', 'BLZ'), - ('Belgium', 'Belgium', 'BEL'), - ('Belarus', 'Belarus', 'BLR'), ('Barbados', 'Barbados', 'BRB'), ('Bangladesh', 'Bangladesh', 'BGD'), - ('Bahrain', 'Bahrain', 'BHR'), - ('The Bahamas', 'The Bahamas', 'BHS'), ('Azerbaijan', 'Azerbaijan', 'AZE'), ('Austria', 'Austria', 'AUT'), - ('Australia', 'Australia', 'AUS'), ('Australia', 'Indian Ocean Territories', 'IOA'), - ('Australia', 'Heard Island and McDonald Islands', 'HMD'), - ('Australia', 'Norfolk Island', 'NFK'), ('Australia', 'Ashmore and Cartier Islands', 'ATC'), - ('Armenia', 'Armenia', 'ARM'), - ('Argentina', 'Argentina', 'ARG'), ('Antigua and Barbuda', 'Antigua and Barbuda', 'ATG'), - ('Angola', 'Angola', 'AGO'), - ('Andorra', 'Andorra', 'AND'), ('Algeria', 'Algeria', 'DZA'), ('Albania', 'Albania', 'ALB'), - ('Afghanistan', 'Afghanistan', 'AFG'), - ('Kashmir', 'Siachen Glacier', 'KAS'), ('Antarctica', 'Antarctica', 'ATA'), - ('Netherlands', 'Sint Maarten', 'SXM')] - - -def draw_additional_shapes(add_shape, ax): - """""" - import shapefile as shp - from pyproj import Transformer - - for shapefile_path, args in add_shape.items(): - - coordinates_system = None - linewidth = None - linestyle = None - color = None - fill_color = None - - args = args.split(',') - for arg in args: - if 'crs=' in arg: - coordinates_system = arg.split('=')[-1].strip() - - elif 'linewidth=' in arg or 'lw=' in arg: - linewidth = float(arg.split('=')[-1].strip()) - - elif 'linestyle=' in arg or 'ls=' in arg: - linestyle = arg.split('=')[-1].strip() - - elif 'fill_color=' in arg or 'fc=' in arg: - fill_color = arg.split('=')[-1].strip() - - elif 'color=' in arg or 'c=' in arg: - color = arg.split('=')[-1].strip() - - else: - print(f'Unknown argument for drawing additional shapes! -> {arg}') - - if coordinates_system is None: - coordinates_system = 'epsg:4326' - if color is None: - color = 'k' - if linestyle is None: - linestyle = 'solid' - if linewidth is None: - linewidth = 1 - - shape = shp.Reader(shapefile_path) - shape = shape.shapes() - transformer = Transformer.from_crs(coordinates_system, 'epsg:4326', always_xy=True) - - starting_point = None - for element in shape: - x_for_plotting = [] - y_for_plotting = [] - for coords in element.points: - - x = coords[0] - y = coords[1] - x, y = transformer.transform(x, y) - - x_for_plotting.append(x) - y_for_plotting.append(y) - - if starting_point is None: - starting_point = (x, y) - continue - - if starting_point == (x, y): - ax.plot( - x_for_plotting, y_for_plotting, color=color, - lw=linewidth, linestyle=linestyle - ) - - if fill_color is not None: - ax.fill(x_for_plotting, y_for_plotting, color=fill_color) - - x_for_plotting.clear() - y_for_plotting.clear() - starting_point = None - - ax.plot( - x_for_plotting, y_for_plotting, color=color, - lw=linewidth, linestyle=linestyle - ) - - if fill_color is not None: - ax.fill(x_for_plotting, y_for_plotting, color=fill_color) - - -def get_shapes_for_plotting( - ax, shapefile_path, coordinates_system, - country=None -): - """Draw contours from the given shapefile""" - import shapefile as shp - from pyproj import Transformer - - shape = shp.Reader(shapefile_path) - shape = shape.shapes() - transformer = Transformer.from_crs(coordinates_system, 'epsg:4326', always_xy=True) - - if country is not None: - new_shape = [] - countries = get_countries_list_for_default_shape() - - if country == 'EUROPE': - country = [ - 'PRT', 'ESP', 'GBR', 'FRA', 'DEU', 'POL', 'CZE', 'ARM' - 'BEL', 'NLD', 'LUX', 'AND', 'CHE', 'ITA', 'AUT', 'SVN', - 'HRV', 'BIH', 'MNE', 'ALB', 'GRC', 'TUR', 'CYP', 'CYN', - 'MLT', 'SMR', 'BGR', 'MKD', 'KOS', 'SRB', 'HUN', 'SVK', - 'UKR', 'ROU', 'BLR', 'MDA', 'RUS', 'LVA', 'LTU', 'EST', - 'FIN', 'SWE', 'NOR', 'DNK', 'GEO', 'FRO', 'ISL', 'MAR', - 'DZA', 'TUN', 'LBY', 'EGY', 'ISR', 'PSX', 'LBN', 'SYR', - 'JOR', 'SAU', 'IRQ', 'IRN' - ] - ax.set_ylim(30, 73) - ax.set_xlim(-25, 45) - - if isinstance(country, str): - for i, country_name in enumerate(countries): - if len(country) == 3: - if country.upper() == country_name[2]: - new_shape.append(shape[i]) - else: - for element in country_name[:2]: - if country.upper() in element.upper(): - new_shape.append(shape[i]) - - if isinstance(country, list): - for i, country_name in enumerate(countries): - for single_country in country: - if len(single_country) == 3: - if single_country.upper() == country_name[2]: - new_shape.append(shape[i]) - else: - for element in country_name[:2]: - if single_country.upper() in element.upper(): - new_shape.append(shape[i]) - - shape = new_shape - - shapes_for_plotting = [] - starting_point = None - for element in shape: - x_for_plotting = [] - y_for_plotting = [] - for coords in element.points: - - x = coords[0] - y = coords[1] - x, y = transformer.transform(x, y) - - x_for_plotting.append(x) - y_for_plotting.append(y) - - if starting_point is None: - starting_point = (x, y) - continue - - if starting_point == (x, y): - - shapes_for_plotting.append(([] + x_for_plotting, [] + y_for_plotting)) - - x_for_plotting.clear() - y_for_plotting.clear() - starting_point = None - - if x_for_plotting and y_for_plotting: - shapes_for_plotting.append(([] + x_for_plotting, [] + y_for_plotting)) - - return shapes_for_plotting diff --git a/build/lib/cloupy/maps/interpolation_map.py b/build/lib/cloupy/maps/interpolation_map.py deleted file mode 100644 index e1e4e0e..0000000 --- a/build/lib/cloupy/maps/interpolation_map.py +++ /dev/null @@ -1,1054 +0,0 @@ -class MapInterpolation: - """ - Create a MapInterpolation class where the data for drawing an interpolation - map can be downloaded, modified, manually provided. - - Keyword arguments: - country -- a country or a list of countries for which the shapefile will - be drawn. Alternatively, if you pass the 'EUROPE' value, all European countries - will be drawn on the map (default None) - dataframe -- data for interpolation (default None) - shapefile_path -- a path to the non-default shapefile from which boundaries - will be drawn (default None) - crs -- the imported shapefile's coordinates system (default None). - This argument is required when specifying a path to the non-default shapefile - (in the 'shapefile_path' argument). If the 'shapefile_path' argument is - specified and the 'crs' argument is None, the boundaries will be drawn - for the EPSG:4326 coordinates system. If it is not valid coordinates system, - the coordinates on the map may be bizarre - - ---------------METHODS--------------- - draw() - d_imgw_data() - d_wmo_data() - import_global_df() - ------------------------------------- - - ---------------DATA STRUCTURE--------------- - The supported data structure for MapInterpolation.dataframe is 3 columns of - pandas.DataFrame object. - - 1st column: values, - 2nd column: longitude, - 3rd column: latitude - - Exemplary dataframe: - import pandas as pd - dataframe = pd.DataFrame({ - 'values': [7.9, 7.6, 7.4, 8.0, 8.6, 7.7, 8.4], - 'longitude': [19.4, 18.6, 16.2, 19.8, 14.6, 21.0, 16.9], - 'latitude': [54.2, 54.4, 54.2, 50.1, 53.4, 52.2, 51.1] - }) - - The exemplary data is the air temperature and comes from a couple of synoptic - stations from Poland. - -------------------------------------------- - - ---------------NOTE THAT--------------- - You can select country boundaries from the default shapefile by setting the - 'country' argument. The default shapefile comes from the Natural Earth Data - website (https://www.naturalearthdata.com/about/terms-of-use/), which shares - many shapefiles for free use. However, the 'shapefile_path' and 'crs' - arguments allow you to select non-default boundaries from your PC. If you - specify the non-default shapefile, the 'country' argument does not change - anything. - --------------------------------------- - """ - def __init__( - self, country=None, dataframe=None, - shapefile_path=None, crs=None, - ): - self.country = country - self.dataframe = dataframe - self.shapefile_path = shapefile_path - self.crs = crs - - def draw( - self, levels=None, cmap='jet', - fill_contours=True, show_contours=False, show_clabels=False, - show_cbar=True, show_grid=False, show_frame=True, show_coordinates=True, show_ticks=True, add_shape=None, - save=None, **kwargs - ): - """ - Specify which elements are to be drawn and draw an interpolation map. - - Keyword arguments: - levels -- levels for which interpolated data will be displayed. If - None, the levels will be adjusted automatically, but it may result in - poor map's look, so it is recommended to specify the levels on your - own. Exemplary 'levels' input: numpy.arange(5, 15, 0.5) (default None) - cmap -- a colormap which will be used for displaying interpolated - data. To see the available colormaps, see: https://matplotlib.org/stable - /tutorials/colors/colormaps.html (default for default style 'jet'; - default for retro style 'Greys_r') - fill_contours -- if the interpolated contours are to be filled with - the selected colormap (default True) - show_contours -- if the interpolated contours are to be shown (default - False) - show_clabels -- if the interpolated contours are to be labeled (default - False) - show_cbar -- if a colorbar for the interpolated data is to be shown - (default True) - show_grid -- if a grid for the coordinates is to be shown (default - False) - show_frame -- if the frame of the axis is to be shown (default True) - show_coordinates -- if the coordinates are to be shown (default True) - show_ticks -- if the x and y-ticks are to be shown (default True) - add_shape -- if additional shapes are to be drawn. The argument takes - a dictionary in which keys are the paths to the additional shapefile and - values are style/coordinates system settings - the value must be a single - string in which commas separate consecutive style/coordinates system - arguments. There are 5 settings that may be changed: coordinates system - (crs), linewidth (lw or linewidth), linestyle (ls or linestyle), fill color - (fc or fill_color), boundaries color (c or color). The coordinates' system - must be passed in EPSG code (if the coordinates' system is not specified, - then EPSG:4326 code will be taken). Exemplary 'add_shape' input: {'home/ - python/test.shp': 'crs=2180, ls=dotted, lw=2, fc=black, c=yellow'}. Note - that: inside the string which specifies settings no quotes should be used - (default None) - save -- if the interpolation map is to be saved. A string in which - file name must be passed, for example: 'interpolated_map.png'. Note that - other picture formats can also be passed, e.g. 'interpolated_map.jpg' - (default None) - **kwargs -- the rest of arguments which are less relevant than the - above arguments (for setting the interpolation map style) - - **kwargs: - title -- the map title (default None) - title_bold -- if the map title font weight is to be bold (default - False) - title_x_position -- the map title relative position on the x-axis of - the figure (default 0.13) - title_y_position -- the map title relative position on the y-axis of - the figure (default 0.06) - title_ha -- the map title horizontal alignment. Valid inputs are: - 'left', 'right', 'center' (default 'left') - xlabel -- the map x-axis title (default None) - xlabel_bold -- if the map x-axis title font weight is to be bold - (default True) - ylabel -- the map y-axis title (default None) - ylabel_bold -- if the map y-axis title font weight is to be bold - (default True) - text_size -- the map title text size. Another text elements will be - adjusted automatically respectively to the 'text_size' value (default - for default style: 8; default for retro style: 10) - numcols -- number of columns for creating an interpolation grid. - Depending on the figure' sides ratio, the contours shape may be changed - slightly (default 240) - numrows -- number of rows for creating an interpolation grid. - Depending on the figure' sides ratio, the contours shape may be changed - slightly (default 240) - interpolation_method -- the interpolation method to be applied. - Available interpolation methods: 'linear', 'nearest', 'cubic' (default - 'cubic') - interpolation_within_levels -- if interpolated values must be within - the given levels range specified in the 'levels' argument. It may be handy - when interpolation process returns values which can not be returned, e.g. - negative values for the number of cases. It is also useful when white - polygons appear on the map, which means that the given levels range does - not cover all interpolated values (default False) - extrapolation_into_zoomed_area -- if the 'zoom_in' argument is - specified, the extrapolation process will be conducted to the corners of - the zoomed-in area. It is handy when a country with the overseas territories - was chosen and the data concerns only a specific part of the shapefile - - in such case, the map may be zoomed in the proper area and the extrapolation - will be conducted to the corners of the zoomed-in area, not to the corners - of the whole shapefile (default True) - contours_levels -- non-default levels for the contours. If the argument - is None, then the 'contours_levels' argument will be the same as the - 'levels' argument (default None) - clabels_levels -- non-default levels for the contour labels. If the - argument is None, then the 'clabels_levels' argument will be the same as - the 'contours_levels' argument (default None) - clabels_add -- add non-default contour labels to the map. Non-default - contour labels can be placed by specifying coordinates in a list of tuples, - in which tuples are x and y coordinates (e.g. [(15, 50)] will place a - label on the closest contour to the given coordinates, in the closest point - to the given coordinates). Note that the 'clabels_add' argument can be - used even when the 'show_contours' argument is set to False. In such case, - the labels will be placed on the invisible contours that respond to the - 'levels' argument (default None) - clabels_inline_spacing -- the spacing between text on the contours and - the contours. Generally, the more characters the text on the contour has, - the less 'clabels_inline_spacing' value should be. Note the that DPI value - also affects the spacing between the text on the contours and the contours, - so the space may be different while previewing the map and while saving the - map (default 0) - clabels_decimal_place -- decimal places of the contour labels (default - 0) - xticks -- non-default x ticks. Available input: a list of ints/floats - (default None) - yticks -- non-default y ticks. Available input: a list of ints/floats - (default None) - cbar_ticks -- non-default colorbar ticks. Available input: a list of - ints/floats (default None) - cbar_title -- the colorbar title (default None) - cbar_title_bold -- if the colorbar title font weight is to be bold - (default True) - cbar_labelpad -- the space between the colorbar title and the colorbar - (default 10) - cbar_position -- the position of the colorbar. Available inputs: 'left', - 'right', 'bottom', 'top' (default 'top') - cbar_pad -- the space between the colorbar and the axis (default 0.02) - zoom_in -- the area to which the map is to be zoomed in. The argument - takes a list of tuples, in which tuples are the minimum and maximum values - of the x and y coordinates, e.g. [(10, 20), (40, 50)] will zoom in the map - to the area that is located between 10 degrees and 20 degrees of the east - longitude; and between 40-50 degrees of the north latitude (default None) - show_points -- if the points for which data was interpolated are to - be shown (default False) - points_labels -- if the 'show_points' argument is set to True, the - points may also be labeled by the 'points_labels' argument. The labels may - be the points ids and the points values. It is only an auxiliary option, so - the labels are not pretty. Available inputs: 'ids', 'values' (default None) - boundaries_lw -- the line width of the shapefile boundaries (default - 1) - boundaries_ls -- the line style of the shapefile boundaries (default - 'solid') - grid_lw -- the line width of the grid (default 0.1) - grid_ls -- the line style of the grid. Available inputs: 'dashed', - 'dotted', 'dashdot', 'solid' (default 'solid') - figsize -- the figure size in inches (default (4, 5)) - figpad_inches -- the figure margin (default 0.1) - - ---------------NOTE THAT--------------- - The quality of the displayed maps may be poor, but when the map is saved, - the quality is much better. This is due to the different DPI of the image - when saving and when displaying the map (300 DPI is used for saving the - map, 150 DPI is used for displaying the map in an application). Different - DPIs are used for streamline the workflow - lower DPI makes the map - creation process much faster, so it is used to preview the map. - --------------------------------------- - """ - from cloupy.maps.draw_shapes import get_shapes_for_plotting - from cloupy.maps.draw_shapes import draw_additional_shapes - import matplotlib.pyplot as plt - from PIL import Image - - attrs_to_be_updated = MapInterpolation.check_if_valid_args_and_update_class_attrs( - self.shapefile_path, self.country, self.crs, self.dataframe - ) - self.shapefile_path = attrs_to_be_updated['shapefile_path'] - self.country = attrs_to_be_updated['country'] - self.crs = attrs_to_be_updated['crs'] - - properties = { - 'title': None, - 'title_bold': False, - 'title_x_position': 0.13, - 'title_y_position': 0.06, - 'title_ha': 'left', - 'xlabel': None, - 'xlabel_bold': True, - 'ylabel': None, - 'ylabel_bold': True, - 'text_size': 8, - 'numcols': 240, - 'numrows': 240, - 'interpolation_method': 'cubic', - 'interpolation_within_levels': False, - 'extrapolation_into_zoomed_area': True, - 'contours_levels': None, - 'clabels_levels': None, - 'clabels_add': None, - 'clabels_inline_spacing': 0, - 'clabels_decimal_place': 0, - 'xticks': None, - 'yticks': None, - 'cbar_ticks': None, - 'cbar_title': None, - 'cbar_title_bold': True, - 'cbar_labelpad': 10, - 'cbar_position': 'top', - 'cbar_pad': 0.02, - 'zoom_in': None, - 'show_points': False, - 'points_labels': None, - 'boundaries_lw': 1, - 'boundaries_ls': 'solid', - 'grid_lw': 0.1, - 'grid_ls': 'solid', - 'figsize': (4, 5), - 'figpad_inches': 0.1 - } - - style = MapInterpolation.check_cloupy_graphs_chosen_style() - if style == 'default': - pass - elif style == 'retro': - properties['text_size'] = 10 - cmap = 'Greys_r' - else: - raise ValueError("Invalid style value in the 'current_diagStyle.txt file!'") - - for param, arg in kwargs.items(): - try: - properties[param] - except KeyError: - raise ValueError(f'Invalid parameter: {param}') - else: - properties[param] = arg - - if save is None: - fig_dpi = 150 - else: - fig_dpi = 300 - if properties['contours_levels'] is None: - contour_levels = levels - else: - contour_levels = properties['contours_levels'] - tick_labels_size = properties['text_size'] * 0.8 - clabels_size = properties['text_size'] * 0.6 - cbar_tick_labels_size = properties['text_size'] * 0.8 - cbar_title_size = properties['text_size'] * 0.8 - title_size = properties['text_size'] * 1 - xlabel_size = properties['text_size'] * 0.8 - ylabel_size = properties['text_size'] * 0.8 - - path = str(__file__) - - df = self.dataframe - df.columns = ['value', 'lon', 'lat'] - x = list(df.lon) - y = list(df.lat) - z = list(df.value) - - fig, ax = plt.subplots(figsize=properties['figsize'], facecolor='white') - shapes_for_plotting = get_shapes_for_plotting( - ax, self.shapefile_path, - self.crs, country=self.country, - ) - - # get extreme shape points and create an invisible box on which points for extrapolation will be placed - the_low_x, the_high_x, the_low_y, the_high_y = MapInterpolation.get_extreme_shape_points(shapes_for_plotting) - nodes = MapInterpolation.get_boundary_box( - the_low_x, the_high_x, the_low_y, the_high_y, - properties['zoom_in'], properties['extrapolation_into_zoomed_area'] - ) - x_nodes, y_nodes = nodes[0], nodes[1] - - # place the points to which data will be extrapolated on the invisible box boundaries and add them to the - # data before creating the interpolation - boundary_points = MapInterpolation.get_boundary_points(x_nodes, y_nodes) - the_closest_to_boundary_points = MapInterpolation.get_the_closest_points_to_boundary_points(boundary_points, df) - for point, closest_value in the_closest_to_boundary_points.items(): - x.append(point[0]) - y.append(point[1]) - z.append(closest_value[2]) - - xi, yi, zi = MapInterpolation.interpolate_data(x, y, z, properties, levels) - - # PLOT SETTINGS - if properties['zoom_in'] is not None: - x = properties['zoom_in'][0] - y = properties['zoom_in'][1] - ax.set_xlim(x[0], x[1]) - ax.set_ylim(y[0], y[1]) - else: - lower_left = boundary_points[5] - upper_right = boundary_points[-1] - ax.set_xlim(lower_left[0], upper_right[0]) - ax.set_ylim(lower_left[1], upper_right[1]) - - ax.tick_params(labelsize=tick_labels_size) - - if not show_frame: - ax.set_frame_on(False) - - if not show_coordinates: - ax.xaxis.set_visible(False) - ax.yaxis.set_visible(False) - - if not show_ticks: - ax.tick_params(color=(0, 0, 0, 0)) - - if properties['xticks'] is not None: - ax.set_xticks(properties['xticks']) - - if properties['yticks'] is not None: - ax.set_yticks(properties['yticks']) - # ///PLOT SETTINGS - - MapInterpolation.adjust_ax_for_creating_masks_and_create_masks( - ax, fig, xi, - yi, zi, levels, - cmap, properties, shapes_for_plotting, - fill_contours, show_grid, cbar_tick_labels_size, - cbar_title_size, title_size, xlabel_size, - ylabel_size, fig_dpi, show_cbar, path - ) - - if show_contours: - clabels = ax.contour(xi, yi, zi, levels=contour_levels, linewidths=0.5, colors='k', linestyles='solid') - if show_clabels: - ax.clabel( - clabels, fontsize=clabels_size, fmt=f'%1.{properties["clabels_decimal_place"]}f', - levels=properties['clabels_levels'], inline_spacing=properties['clabels_inline_spacing'] - ) - if properties['clabels_add']: - ax.clabel( - clabels, fontsize=clabels_size, fmt=f'%1.{properties["clabels_decimal_place"]}f', - inline_spacing=properties['clabels_inline_spacing'], manual=properties['clabels_add'] - ) - - if properties['clabels_add'] and not show_contours: - clabels = ax.contour(xi, yi, zi, levels=contour_levels, linewidths=0, colors='k') - ax.clabel( - clabels, fontsize=clabels_size, fmt=f'%1.{properties["clabels_decimal_place"]}f', - inline_spacing=properties['clabels_inline_spacing'], manual=properties['clabels_add'] - ) - - if fill_contours: - ax.contourf(xi, yi, zi, levels=levels, cmap=cmap) - - if properties['show_points']: - ax.scatter(df.lon, df.lat, s=10, c='k') - - if properties['points_labels'] is not None: - for i, lon in enumerate(df.lon): - x = lon - y = df.lat[i] - if properties['points_labels'] == 'values' or properties['points_labels'] == 'value': - text = str(round(df.value[i], 1)) - elif properties['points_labels'] == 'ids' or properties['points_labels'] == 'id': - text = df.index[i] - else: - raise ValueError("Invalid input for the 'points_labels' argument. Available inputs: 'values', " - "'ids'" - ) - - ax.text(x, y+0.2, text, size=clabels_size, ha='center') - - if add_shape is not None: - draw_additional_shapes(add_shape, ax) - - plt.close() - - fig.savefig( - path.replace('interpolation_map.py', 'map.png'), - bbox_inches='tight', - pad_inches=properties['figpad_inches'], - dpi=fig_dpi - ) - MapInterpolation.merge_map_with_mask(show_grid, path) - done_map = Image.open(path.replace('interpolation_map.py', 'masked_map.png')) - - image_size = done_map.size - resized_map = done_map.resize( - (700, int(round(image_size[1]*(700/image_size[0])))) - ) - - if save is not None: - done_map.save(save) - - return resized_map - - def d_imgw_data( - self, years_range, column_with_values, - interval='monthly', stations_kind='synop', check_continuity=False, - continuity_precision=0.8 - ): - """ - Download data for a drawing from the IMGW database. - - Keyword arguments - years_range -- years range (e.g. range(2010, 2021)) - column_with_values -- the column index where the values for interpolation - are located (single integer) - interval -- the data interval ('monthly', 'daily', 'prompt') (default - 'monthly') - stations_kind -- stations kind from the IMGW database ('synop', 'climat', - 'fall') (default 'synop') - check_continuity -- if data continuity is to be checked. If the - continuity is not satisfactory, the data will be filtered appropriately - (default False) - continuity_precision -- required precision for checking data continuity. - The values must be in the 0-1 range. If the value is 1, then individual - stations in the dataframe must have the same number of records as the station - that has the longest data continuity. If the value is 0.5, then individual - stations in the dataframe must have at least 50% of the number of records - of the station that has the longest data continuity (e.g. if the largest - number of records is 100, then at least 50 records are required) (default - 0.8) - """ - import cloupy as cl - from cloupy.data_processing.check_data_continuity import check_data_continuity - - if column_with_values == 'temp' or column_with_values == 'preci': - - df = cl.d_imgw_data( - 'monthly', 'synop', years_range, - file_format='s_m_d', return_coordinates=True - ) - if check_continuity: - df = check_data_continuity(df, 1, continuity_precision) - - if column_with_values == 'temp': - df = df.iloc[:, [1, 12, -3, -2]] - df = df.groupby('Nazwa stacji').mean() - self.dataframe = df - - if column_with_values == 'preci': - df = df.iloc[:, [1, 2, 16, -3, -2]] - for_lon_lat = df.groupby(['Rok', 'Nazwa stacji']).mean() - df = df.groupby(['Rok', 'Nazwa stacji']).sum() - - df['lon'] = for_lon_lat.lon - df['lat'] = for_lon_lat.lat - df['station'] = df.index.get_level_values(1) - - df = df.groupby('station').mean() - - else: - if not isinstance(column_with_values, int): - raise ValueError("Invalid 'columns_with_values' argument. Use a single int.") - - df = cl.d_imgw_data( - interval, stations_kind, years_range, - file_format_index=0, return_coordinates=True - ) - if check_continuity: - df = check_data_continuity(df, 1, continuity_precision) - - df = df.iloc[:, [1, column_with_values, -3, -2]] - df = df.groupby('Nazwa stacji').mean() - - self.dataframe = df - - def d_wmo_data( - self, station_name, element_to_scrape, - what_to_calc='mean', check_continuity=False, continuity_precision=0.3 - ): - """ - Download data for a drawing from the WMO database. - - Keywords arguments: - station_name -- name of the station for which the data will be downloaded. - If 'cou' prefix added to 'station_name' and a country name appears after the - prefix, the function will search for all stations in the specified country - element_to_scrape -- which element from the WMO website will be scraped - Available elements: 'temp', 'preci', 'temp_min', 'temp_max', 'sl_press' - what_to_calc -- what to calculate from the downloaded data. Available - values: 'max', 'min', 'median', 'mean' (default 'mean') - check_continuity -- if data continuity is to be checked. If the - continuity is not satisfactory, the data will be filtered appropriately - (default False) - continuity_precision -- required precision for checking data continuity. - The values must be in the 0-1 range. If the value is 1, then individual - stations in the dataframe must have the same number of records as the station - that has the longest data continuity. If the value is 0.5, then individual - stations in the dataframe must have at least 50% of the number of records - of the station that has the longest data continuity (e.g. if the largest - number of records is 100, then at least 50 records are required) (default - 0.3) - - ---------------NOTE THAT--------------- - Checking continuity of the data downloaded from the WMO website may not - be correct. In the WMO database, many stations from the same country have - significantly different data strings - for one station the string may start - in 1850 and end in 2010, in another station the string may start in 1950 - and end in 2020. In such case, both stations have a decent data string and - probably are representative, but the latter one will be dropped if the - continuity precision is too high. Some stations have also a long data string, - but many None values, which can also result in incorrect filtering. - However, a properly selected 'continuity_precision' argument may be - still be useful, but the data should always be checked manually. - --------------------------------------- - """ - import cloupy as cl - from cloupy.data_processing.check_data_continuity import check_data_continuity - - df = cl.d_wmo_data(station_name, element_to_scrape, return_coordinates=True) - if check_continuity: - df = check_data_continuity(df, 0, continuity_precision) - - if element_to_scrape == 'preci': - df = df.iloc[:, [0, 1, 3, -3, -2]] - df_lat_lon = df.groupby(['year', 'station']).mean().iloc[:, [-1, -2]] - df = df.groupby(['year', 'station']).sum() - df['lon'] = df_lat_lon['lon'] - df['lat'] = df_lat_lon['lat'] - elif element_to_scrape in ['temp', 'sl_press', 'temp_min', 'temp_max']: - df = df.iloc[:, [0, 3, -3, -2]] - else: - raise ValueError( - "Invalid value for the 'element_to_scrape. Valid values: temp, preci, temp_max, temp_min, sl_press" - ) - - if what_to_calc == 'mean': - df = df.groupby('station').mean() - elif what_to_calc == 'max': - df = df.groupby('station').max() - elif what_to_calc == 'min': - df = df.groupby('station').min() - elif what_to_calc == 'median': - df = df.groupby('station').median() - else: - raise ValueError("Invalid value for the 'what_to_calc' argument.") - - self.dataframe = df - - def import_global_df( - self, columns_order, what_to_calc='mean', - check_continuity=False, continuity_precision=0.8 - ): - """ - Import data for WalterLieth.MapInterpolation from the global dataframe. - - Keyword arguments: - columns_order -- specify which columns from the global dataframe are - to be taken (a list of indexes). The first column must be a list of unique - values for which calculations will be executed (station names), the second - column must be a list of values which will be interpolated, the third column - must be a list of longitudes (x-axis) and the fourth column must be a list - of latitudes (y-axis). Some data requires special data processing, e.g. - precipitation, for which a column with year is required. If you want to - process precipitation data, please insert a column with years into the - first place (before the unique values) - what_to_calc -- what to calculate from the downloaded data. Available - values: 'max', 'min', 'median', 'mean' (default 'mean') - check_continuity -- if data continuity is to be checked. If the - continuity is not satisfactory, the data will be filtered appropriately - (default False) - continuity_precision -- required precision for checking data continuity. - The values must be in the 0-1 range. If the value is 1, then individual - stations in the dataframe must have the same number of records as the station - that has the longest data continuity. If the value is 0.5, then individual - stations in the dataframe must have at least 50% of the number of records - of the station that has the longest data continuity (e.g. if the largest - number of records is 100, then at least 50 records are required) (default - 0.3) - - ---------------NOTE THAT--------------- - When the length of the list from the 'columns_order' argument is 5, then - the data will be firstly grouped by years and unique values. After that, - the sum of the values will be calculated for individual stations in - individual years. When the sum is calculated, the dataframe will be grouped - again by unique values again and the selected statistic will be calculated. - The discussed data processing will result in proper values for elements - such as precipitation in the monthly data interval. - --------------------------------------- - """ - from cloupy import read_global_df - from cloupy.data_processing.check_data_continuity import check_data_continuity - import pandas as pd - - df = read_global_df() - df = df.iloc[:, columns_order] - - if len(df.columns) == 5: - sort_by = 1 - elif len(df.columns) == 4: - sort_by = 0 - else: - raise ValueError( - "Invalid 'columns_order' argument. The 'columns_order' argument length must be 4 or 5 - see " - "cloupy.MapInterpolation docstring for more info." - ) - - if check_continuity: - df = check_data_continuity(df, sort_by, continuity_precision) - - if len(df.columns) == 5: - df_lat_lon = df.groupby([df.columns[0], df.columns[1]]).mean().iloc[:, [-2, -1]] - df = df.groupby([df.columns[0], df.columns[1]]).sum() - stations = df.index.get_level_values(1) - - df = pd.DataFrame({ - 0: stations, - 1: list(df.iloc[:, 0]), - 2: df_lat_lon.iloc[:, -2], - 3: df_lat_lon.iloc[:, -1] - }) - - if what_to_calc == 'mean': - df = df.groupby(df.columns[0]).mean() - elif what_to_calc == 'median': - df = df.groupby(df.columns[0]).median() - elif what_to_calc == 'max': - df = df.groupby(df.columns[0]).max() - elif what_to_calc == 'min': - df = df.groupby(df.columns[0]).min() - else: - raise ValueError( - "Invalid input for the 'what_to_calc' argument. Valid values: 'max', 'min', 'median', 'mean'. See " - "MapInterpolation.import_global_df() docstring for more info." - ) - - self.dataframe = df - - @staticmethod - def check_if_valid_args_and_update_class_attrs( - shapefile_path, country, crs, dataframe - ): - """ - Check that the input values do not conflict with each other and return a - dictionary with the attributes that will be updated if the check is positive - """ - import os - - to_be_updated = { - 'shapefile_path': shapefile_path, - 'country': country, - 'crs': crs - } - - if shapefile_path is None and country is None: - raise ValueError( - "Specify which countries are to be drawn (by passing a string with the country name or a list of strings " - "with the country names). Alternatively, you can specify your non-default shapefile for which boundaries " - "will be drawn (by passing the shapefile's path to the 'shapefile_path' argument and passing the " - "shapefile's coordinates system to the 'crs' argument." - ) - - elif shapefile_path is None and country is not None: - shapefile_path = str(__file__).replace('interpolation_map.py', f'world{os.sep}ne_50m_admin_0_countries.shp') - crs = 'epsg:4326' - - to_be_updated['shapefile_path'] = shapefile_path - to_be_updated['crs'] = crs - - elif shapefile_path is not None and country is None: - pass - - elif shapefile_path is not None and country is not None: - if shapefile_path == str(__file__).replace( - 'interpolation_map.py', - f'world{os.sep}ne_50m_admin_0_countries.shp' - ): - pass - else: - raise ValueError( - "Invalid argument combination. The 'country' argument is valid only for the default cloupy " - "shapefile. Set 'country' back to None or 'shapefile_path' back to None." - ) - - else: - country = None - to_be_updated['country'] = country - - if dataframe is None: - raise ValueError( - "No data specified. Please provide the data for the interpolation manually or use one of " - "the downloading methods" - ) - - return to_be_updated - - @staticmethod - def check_cloupy_graphs_chosen_style(): - import os - - with open(str(__file__).replace(f'maps{os.sep}interpolation_map.py', 'current_diagStyle.txt'), 'r') as f: - style = f.readline() - - return style - - @staticmethod - def get_extreme_shape_points(shapes_for_plotting): - """Return extreme points of the shapes""" - - the_low_x = None - the_high_x = None - the_low_y = None - the_high_y = None - - for shape in shapes_for_plotting: - high_x = max(shape[0]) - low_x = min(shape[0]) - high_y = max(shape[1]) - low_y = min(shape[1]) - - if the_low_x is None: - the_low_x = low_x - the_high_x = high_x - the_low_y = low_y - the_high_y = high_y - continue - - if the_low_x > low_x: - the_low_x = low_x - if the_high_x < high_x: - the_high_x = high_x - if the_low_y > low_y: - the_low_y = low_y - if the_high_y < high_y: - the_high_y = high_y - - return the_low_x, the_high_x, the_low_y, the_high_y - - @staticmethod - def get_boundary_box( - low_x, high_x, low_y, - high_y, zoom_in, extrapolate_into_zoomed_area, - distance=0.5 - ): - """ - Return points to draw an invisible box outside the shapes to which the - values will be extrapolated - """ - if zoom_in is not None and extrapolate_into_zoomed_area: - low_x = zoom_in[0][0] - high_x = zoom_in[0][1] - low_y = zoom_in[1][0] - high_y = zoom_in[1][1] - - node_1 = (high_x + distance, low_y - distance) - node_2 = (low_x - distance, low_y - distance) - node_3 = (low_x - distance, high_y + distance) - node_4 = (high_x + distance, high_y + distance) - node_5 = (high_x + distance, low_y - distance) - - nodes = [node_1, node_2, node_3, node_4, node_5] - - x_nodes = [] - y_nodes = [] - for node in nodes: - x_nodes.append(node[0]) - y_nodes.append(node[1]) - - return x_nodes, y_nodes - - @staticmethod - def get_boundary_points( - x_node, y_node - ): - """ - Return points (located on the invisible box) on which the extrapolation - process will be based - """ - - x = x_node - y = y_node - - dist_1 = abs((x_node[0] - x_node[1])) / 2 - dist_2 = abs((y_node[1] - y_node[2])) / 2 - dist_3 = abs((x_node[3]) - x_node[2]) / 2 - dist_4 = abs((y_node[3] - y_node[4])) / 2 - - point_1 = (x_node[0] - dist_1, y_node[0]) - point_2 = (x_node[1], y_node[1] + dist_2) - point_3 = (x_node[2] + dist_3, y_node[2]) - point_4 = (x_node[3], y_node[3] - dist_4) - - point_5 = x[0], y[0] - point_6 = x[1], y[1] - point_7 = x[2], y[2] - point_8 = x[3], y[3] - - return point_1, point_2, point_3, point_4, point_5, point_6, point_7, point_8 - - @staticmethod - def get_the_closest_points_to_boundary_points( - boundary_points, df - ): - """ - Identify which points from the data are the closest to the points on which - the extrapolation process will be based and return a dictionary in which - keys are the extrapolation points and values are the values that the points - take - """ - from cloupy.maps.draw_shapes import calc_the_distance - - the_closest_to_boundary_points = {} - for point in boundary_points: - the_closest_dist = None - the_closest_point = None - for i, y in enumerate(df.lat): - dist = calc_the_distance(point, (list(df.lon)[i], y)) - - if the_closest_dist is None: - the_closest_dist = dist - the_closest_point = (list(df.lon)[i], y, list(df.value)[i]) - continue - - if the_closest_dist > dist: - the_closest_dist = dist - the_closest_point = (list(df.lon)[i], y, list(df.value)[i]) - - the_closest_to_boundary_points[point] = the_closest_point - - return the_closest_to_boundary_points - - @staticmethod - def interpolate_data( - x, y, z, - properties, levels - ): - """Interpolate the data and return xi, yi, zi values""" - import numpy as np - from scipy.interpolate import griddata - import pandas as pd - - xi = np.linspace(min(x), max(x), properties['numcols']) - yi = np.linspace(min(y), max(y), properties['numrows']) - xi, yi = np.meshgrid(xi, yi) - zi = griddata( - (x, y), - np.array(z), - (xi, yi), - method=properties['interpolation_method'] - ) - - if properties['interpolation_within_levels']: - max_level = max(levels) - min_level = min(levels) - - new_ndarray = [] - for array in zi: - all_above_max_level = pd.Series(array, dtype='float64') - all_above_max_level = all_above_max_level[all_above_max_level > max_level] - - all_below_min_level = pd.Series(array, dtype='float64') - all_below_min_level = all_below_min_level[all_below_min_level < min_level] - - if all_above_max_level.empty: - new_array = pd.Series(array) - else: - new_array = pd.Series(array).replace(list(all_above_max_level), max_level) - - if all_below_min_level.empty: - pass - else: - new_array = new_array.replace(list(all_below_min_level), min_level) - - new_ndarray.append(new_array) - - zi = new_ndarray - - return xi, yi, zi - - @staticmethod - def adjust_ax_for_creating_masks_and_create_masks( - ax, fig, xi, yi, zi, - levels, cmap, properties, - shapes_for_plotting, fill_contours, show_grid, - cbar_tick_labels_size, cbar_title_size, title_size, - xlabel_size, ylabel_size, fig_dpi, - show_cbar, path - ): - """Adjust the map for creating masks and create necessary masks""" - import matplotlib.pyplot as plt - - fig_for_colorbar, ax_for_colorbar = plt.subplots() - if fill_contours and show_cbar: - cntr = ax_for_colorbar.contourf(xi, yi, zi, levels=levels, cmap=cmap) - cbar = plt.colorbar( - cntr, ax=ax, location=properties['cbar_position'], - pad=properties['cbar_pad'] - ) - cbar.ax.tick_params(labelsize=cbar_tick_labels_size) - - if properties['cbar_ticks'] is not None: - cbar.set_ticks(properties['cbar_ticks']) - - if properties['cbar_title'] is not None: - if properties['cbar_title_bold']: - fontweight = 'bold' - else: - fontweight = 'normal' - cbar.set_label( - properties['cbar_title'], size=cbar_title_size, - fontweight=fontweight, labelpad=properties['cbar_labelpad'] - ) - - if properties['title'] is not None: - - if properties['title_bold']: - fontweight = 'bold' - else: - fontweight = 'normal' - - fig.suptitle( - properties['title'], size=title_size, ha=properties['title_ha'], - x=properties['title_x_position'], y=properties['title_y_position'], - fontweight=fontweight - ) - - if properties['xlabel'] is not None: - if properties['xlabel_bold']: - fontweight = 'bold' - else: - fontweight = 'normal' - ax.set_xlabel(properties['xlabel'], size=xlabel_size, fontweight=fontweight) - - if properties['ylabel'] is not None: - if properties['ylabel_bold']: - fontweight = 'bold' - else: - fontweight = 'normal' - ax.set_ylabel(properties['ylabel'], size=ylabel_size, fontweight=fontweight) - - if show_grid: - ax.grid(lw=properties['grid_lw'], ls=properties['grid_ls']) - fig.savefig( - path.replace('interpolation_map.py', 'grid_mask.png'), - transparent=True, - bbox_inches='tight', - pad_inches=properties['figpad_inches'], - dpi=fig_dpi - ) - ax.grid(False) - plt.close() - - rgba = MapInterpolation.suit_rgba_to_matplotlib((1, 0, 0, 1)) - for shape in shapes_for_plotting: - ax.plot(shape[0], shape[1], color='k', lw=properties['boundaries_lw'], ls=properties['boundaries_ls']) - ax.fill(shape[0], shape[1], color=rgba, zorder=0) - - fig.savefig( - path.replace('interpolation_map.py', 'mask.png'), - facecolor=fig.get_facecolor(), - transparent=True, - bbox_inches='tight', - pad_inches=properties['figpad_inches'], - dpi=fig_dpi - ) - MapInterpolation.create_mask(path.replace('interpolation_map.py', 'mask.png')) - for shape in shapes_for_plotting: - ax.fill(shape[0], shape[1], color='white', zorder=0) - - @staticmethod - def suit_rgba_to_matplotlib(rgba): - """Convert typical RGBA values for the values which matplotlib accepts""" - red = rgba[0] / 255 - green = rgba[1] / 255 - blue = rgba[2] / 255 - alpha = rgba[3] - - if alpha > 1 or alpha < 0: - raise ValueError(f'Alpha should be within 0-1 range! Alpha: {alpha}') - - return red, green, blue, alpha - - @staticmethod - def create_mask(fname): - """Create the map mask""" - from PIL import Image - - img = Image.open(fname) - img = img.convert("RGBA") - - pixdata = img.load() - width, height = img.size - for y in range(height): - for x in range(width): - if pixdata[x, y][0] == 1 and pixdata[x, y][1] == 0 and pixdata[x, y][2] == 0: - pixdata[x, y] = (255, 255, 255, 0) - - img.save(fname, "PNG") - - @staticmethod - def merge_map_with_mask(show_grid, path): - """Merge completed map with the previously created masks""" - from PIL import Image - - background = Image.open(path.replace("interpolation_map.py", "map.png")) - foreground = Image.open(path.replace("interpolation_map.py", "mask.png")) - background.paste(foreground, (0, 0), foreground) - - if show_grid: - grid = Image.open(path.replace('interpolation_map.py', 'grid_mask.png')) - background.paste(grid, (0, 0), grid) - - background.save(path.replace("interpolation_map.py", 'masked_map.png')) diff --git a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.cpg b/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.cpg deleted file mode 100644 index 3ad133c..0000000 --- a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.cpg +++ /dev/null @@ -1 +0,0 @@ -UTF-8 \ No newline at end of file diff --git a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.dbf b/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.dbf deleted file mode 100644 index 35e23f1..0000000 Binary files a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.dbf and /dev/null differ diff --git a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.prj b/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.prj deleted file mode 100644 index a30c00a..0000000 --- a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.prj +++ /dev/null @@ -1 +0,0 @@ -GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]] \ No newline at end of file diff --git a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.shp b/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.shp deleted file mode 100644 index 7e57009..0000000 Binary files a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.shp and /dev/null differ diff --git a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.shx b/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.shx deleted file mode 100644 index 6bfe02c..0000000 Binary files a/build/lib/cloupy/maps/world/ne_50m_admin_0_countries.shx and /dev/null differ diff --git a/build/lib/cloupy/scraping/imgw.py b/build/lib/cloupy/scraping/imgw.py deleted file mode 100644 index dccece7..0000000 --- a/build/lib/cloupy/scraping/imgw.py +++ /dev/null @@ -1,677 +0,0 @@ -""" -Functions for IMGW database analysis. - -get_meteorological_data(interval, stations_kind, years_range, file_format_index=0, - file_format=None, specific_columns=None, keywords=None, - merge_split_stations=True, optimize_memory_usage=False) - -get_file_formats(interval, stations_kind, file_format_index) -get_column_names(file_format) -look_for_keywords_in_columns(keywords, file_format=None) - -get_urls(interval, stations_kind, years_range) -download_data(urls) -concatenate_data(downloaded_files_names, file_formats, specific_columns, - keywords, optimize_memory_usage, years_range) -""" - - -def get_file_formats( - interval, stations_kind, file_format_index -): - """ - Return the available file formats for the given 'interval' and 'stations_kind' - (different file formats contain different data). - - Keyword arguments: - interval -- data interval from the IMGW database ('monthly', 'daily', 'prompt') - stations_kind -- stations' kind ('synop', 'climat', 'fall') - file_format_index -- which element from the list of available formats will - be returned. Usually two file formats are available, so the length of the list - is 2 ('all', 0, 1) - """ - - if interval == 'monthly': - if stations_kind == 'synop': - available_files_formats = ['s_m_d', 's_m_t'] - elif stations_kind == 'fall': - available_files_formats = ['o_m'] - elif stations_kind == 'climat': - available_files_formats = ['k_m_d', 'k_m_t'] - else: - raise ValueError( - "Invalid 'stations_kind' input. Available inputs: 'synop', 'fall', 'climat'.") - - elif interval == 'daily': - if stations_kind == 'synop': - available_files_formats = ['s_d', 's_d_t'] - elif stations_kind == 'fall': - available_files_formats = ['o_d'] - elif stations_kind == 'climat': - available_files_formats = ['k_d', 'k_d_t'] - else: - raise ValueError( - "Invalid 'stations_kind' input. Available inputs: 'synop', 'fall', 'climat'.") - - elif interval == 'prompt': - if stations_kind == 'synop': - available_files_formats = ['s_t'] - elif stations_kind == 'fall': - raise NotADirectoryError("There's no '/dane_meteorologiczne/terminowe/opad/' directory in IMGW database.") - elif stations_kind == 'climat': - available_files_formats = ['k_t'] - else: - raise ValueError( - "Invalid 'stations_kind' input. Available inputs: 'synop', 'fall', 'climat'.") - - else: - raise ValueError("Invalid 'interval' input. Available inputs: 'monthly', 'daily', 'prompt'.") - - if file_format_index == 'all': - chosen_file_format = available_files_formats - elif file_format_index == 0 or file_format_index == 1: - try: - chosen_file_format = [available_files_formats[file_format_index]] - except IndexError: - if len(available_files_formats) == 1: - chosen_file_format = [available_files_formats[0]] - else: - raise Exception("Something's wrong with the file format.") - else: - raise ValueError( - "{} file formats for the given 'interval' and 'stations_kind' available. Use index of the file format or 'all' " - "for 'file_format_index' argument (if 'all', both file formats will be taken): {}".format( - len(available_files_formats), available_files_formats - ) - ) - return chosen_file_format - - -def get_column_names(file_format): - """ - Return the column names for the given file format. - - Keyword arguments: - file_format -- IMGW database file format (e.g. 's_m_t'). Available file - formats: k_m_d, k_m_t, o_m, s_m_d, s_m_t, k_d, k_d_t, o_d, s_d, s_d_t, k_t, - s_t - """ - - if file_format == 'k_m_d': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Absolutna temperatura maksymalna [°C]', - 'Status pomiaru TMAX', 'Średnia temperatura maksymalna [°C]', 'Status pomiaru TMXS', - 'Absolutna temperatura minimalna [°C]', 'Status pomiaru TMIN', 'Średnia temperatura minimalna [°C]', - 'Status pomiaru TMNS', 'Średnia temperatura miesięczna [°C]', 'Status pomiaru STM', - 'Minimalna temperatura przy gruncie [°C]', 'Status pomiaru TMNG', 'Miesieczna suma opadów [mm]', - 'Status pomiaru SUMM', 'Maksymalna dobowa suma opadów [mm]', 'Status pomiaru OPMX', - 'Pierwszy dzień wystapienia opadu maksymalnego', 'Ostatni dzień wystąpienia opadu maksymalnego', - 'Maksymalna wysokość pokrywy śnieżnej [cm]', 'Status pomiaru PKSN', 'Liczba dni z pokrywą śnieżną', - 'Liczba dni z opadem deszczu', 'Liczba dni z opadem śniegu'] - - elif file_format == 'k_m_t': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Średnia miesięczna temperatura [°C]', - 'Status pomiaru TEMP', 'Średnia miesięczna wilgotność względna [%]', 'Status pomiaru WLGS', - 'Średnia miesięczna prędkość wiatru [m/s]', 'Status pomiaru FWS', - 'Średnie miesięczne zachmurzenie ogólne [oktanty]', 'Status pomiaru NOS'] - - elif file_format == 'o_m': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Miesięczna suma opadów [mm]', 'Status pomiaru SUMM', - 'Liczba dni z opadem śniegu', 'Status pomiaru LDS', 'Opad maksymalny [mm]', 'Status pomiaru MAXO', - 'Dzień pierwszy wystąpienia opadu maksymalnego', 'Dzień ostatni wystąpienia opadu maksymalnego', - 'Liczba dni z pokrywą śnieżną', 'Status pomiaru LDPS'] - - elif file_format == 's_m_d': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Absolutna temperatura maksymalna [°C]', - 'Status pomiaru TMAX', 'Średnia temperatura maksymalna [°C]', 'Status pomiaru TMXS', - 'Absolutna temperatura minimalna [°C]', 'Status pomiaru TMIN', 'Średnia temperatura minimalna [°C]', - 'Status pomiaru TMNS', 'Średnia temperatura miesięczna [°C]', 'Status pomiaru STM', - 'Minimalna temperatura przy gruncie [°C]', 'Status pomiaru TMNG', 'Miesieczna suma opadów [mm]', - 'Status pomiaru SUMM', 'Maksymalna dobowa suma opadów [mm]', 'Status pomiaru OPMX', - 'Pierwszy dzień wystapienia opadu maksymalnego', 'Ostatni dzień wystąpienia opadu maksymalnego', - 'Miesięczna suma usłonecznienia [godziny]', 'Status pomiaru SUUS', - 'Maksymalna wysokość pokrywy śnieżnej [cm]', 'Status pomiaru PKSN', 'Liczba dni z pokrywą śnieżną', - 'Status pomiaru PSDN', 'Liczba dni z opadem deszczu', 'Status pomiaru DESD', - 'Liczba dni z opadem śniegu', - 'Status pomiaru SNID', 'Liczba dni z opadem deszczu ze śniegiem', 'Status pomiaru DSND', - 'Liczba dni z gradem', 'Status pomiaru GRDD', 'Liczba dni z mgłą', 'Status pomiaru MGLD', - 'Liczba dni z zamgleniem', 'Status pomiaru ZAMD', 'Liczba dni z sadzią', 'Status pomiaru SADD', - 'Liczba dni z gołoledzią', 'Status pomiaru GOLD', 'Liczba dni z zamiecią śnieżną niską', - 'Status pomiaru ZAND', 'Liczba dni z zamiecią śnieżną wysoką', 'Status pomiaru ZAWD', - 'Liczba dni ze zmętnieniem', 'Status pomiaru ZMED', 'Liczba dni z wiatrem >= 10m/s', - 'Status pomiaru W10D', 'Liczba dni z wiatrem >15m/s', 'Status pomiaru W15D', 'Liczba dni z burzą', - 'Status pomiaru BURD', 'Liczba dni z rosą', 'Status pomiaru ROSD', 'Liczba dni ze szronem', - 'Status pomiaru SZRD'] - - elif file_format == 's_m_t': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Średnie miesięczne zachmurzenie ogólne [oktanty]', - 'Status pomiaru NOS', 'Średnia miesięczna prędkość wiatru [m/s]', 'Status pomiaru FWS', - 'Średnia miesięczna temperatura [°C]', 'Status pomiaru TEMP', - 'Średnie miesięczne ciśnienie pary wodnej [hPa]', 'Status pomiaru CPW', - 'Średnia miesięczna wilgotność względna [%]', 'Status pomiaru WLGS', - 'Średnie miesięczne ciśnienie na poziomie stacji [hPa]', 'Status pomiaru PPPS', - 'Średnie miesięczne ciśnienie na pozimie morza [hPa]', 'Status pomiaru PPPM', 'Suma opadu dzień [mm]', - 'Status pomiaru WODZ', 'Suma opadu noc [mm]', 'Status pomiaru WONO'] - - elif file_format == 'k_d': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Maksymalna temperatura dobowa [°C]', - 'Status pomiaru TMAX', 'Minimalna temperatura dobowa [°C]', 'Status pomiaru TMIN', - 'Średnia temperatura dobowa [°C]', 'Status pomiaru STD', 'Temperatura minimalna przy gruncie [°C]', - 'Status pomiaru TMNG', 'Suma dobowa opadów [mm]', 'Status pomiaru SMDB', 'Rodzaj opadu [S/W/ ]', - 'Wysokość pokrywy śnieżnej [cm]', 'Status pomiaru PKSN'] - - elif file_format == 'k_d_t': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Średnia dobowa temperatura [°C]', - 'Status pomiaru TEMP', 'Średnia dobowa wilgotność względna [%]', 'Status pomiaru WLGS', - 'Średnia dobowa prędkość wiatru [m/s]', 'Status pomiaru FWS', - 'Średnie dobowe zachmurzenie ogólne [oktanty]', 'Status pomiaru NOS'] - - elif file_format == 'o_d': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Suma dobowa opadów [mm]', - 'Status pomiaru SMDB', 'Rodzaj opadu [S/W/ ]', 'Wysokość pokrywy śnieżnej [cm]', 'Status pomiaru PKSN', - 'Wysokość świeżo spadłego śniegu [cm]', 'Status pomiaru HSS', 'Gatunek śniegu [kod]', - 'Status pomiaru GATS', 'Rodzaj pokrywy śnieżnej [kod]', 'Status pomiaru RPSN'] - - elif file_format == 's_d': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Maksymalna temperatura dobowa [°C]', - 'Status pomiaru TMAX', 'Minimalna temperatura dobowa [°C]', 'Status pomiaru TMIN', - 'Średnia temperatura dobowa [°C]', 'Status pomiaru STD', 'Temperatura minimalna przy gruncie [°C]', - 'Status pomiaru TMNG', 'Suma dobowa opadu [mm]', 'Status pomiaru SMDB', 'Rodzaj opadu [S/W/ ]', - 'Wysokość pokrywy śnieżnej [cm]', 'Status pomiaru PKSN', 'Równoważnik wodny śniegu [mm/cm]', - 'Status pomiaru RWSN', 'Usłonecznienie [godziny]', 'Status pomiaru USL', - 'Czas trwania opadu deszczu [godziny]', 'Status pomiaru DESZ', 'Czas trwania opadu śniegu [godziny]', - 'Status pomiaru SNEG', 'Czas trwania opadu deszczu ze śniegiem [godziny]', 'Status pomiaru DISN', - 'Czas trwania gradu [godziny]', 'Status pomiaru GRAD', 'Czas trwania mgły [godziny]', - 'Status pomiaru MGLA', 'Czas trwania zamglenia [godziny]', 'Status pomiaru ZMGL', - 'Czas trwania sadzi [godziny]', 'Status pomiaru SADZ', 'Czas trwania gołoledzi [godziny]', - 'Status pomiaru GOLO', 'Czas trwania zamieci śnieżnej niskiej [godziny]', 'Status pomiaru ZMNI', - 'Czas trwania zamieci śnieżnej wysokiej [godziny]', 'Status pomiaru ZMWS', - 'Czas trwania zmętnienia [godziny]', 'Status pomiaru ZMET', 'Czas trwania wiatru >=10m/s [godziny]', - 'Status pomiaru FF10', 'Czas trwania wiatru >15m/s [godziny]', 'Status pomiaru FF15', - 'Czas trwania burzy [godziny]', 'Status pomiaru BRZA', 'Czas trwania rosy [godziny]', - 'Status pomiaru ROSA', 'Czas trwania szronu [godziny]', 'Status pomiaru SZRO', - 'Wystąpienie pokrywy śnieżnej [0/1]', 'Status pomiaru DZPS', 'Wystąpienie błyskawicy [0/1]', - 'Status pomiaru DZBL', 'Stan gruntu [Z/R]', 'Izoterma dolna [cm]', 'Status pomiaru IZD', - 'Izoterma górna [cm]', 'Status pomiaru IZG', 'Aktynometria [J/cm2]', 'Status pomiaru AKTN'] - - elif file_format == 's_d_t': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Średnie dobowe zachmurzenie ogólne [oktanty]', - 'Status pomiaru NOS', 'Średnia dobowa prędkość wiatru [m/s]', 'Status pomiaru FWS', - 'Średnia dobowa temperatura [°C]', 'Status pomiaru TEMP', 'Średnia dobowe ciśnienie pary wodnej [hPa]', - 'Status pomiaru CPW', 'Średnia dobowa wilgotność względna [%]', 'Status pomiaru WLGS', - 'Średnia dobowe ciśnienie na poziomie stacji [hPa]', 'Status pomiaru PPPS', - 'Średnie dobowe ciśnienie na pozimie morza [hPa]', 'Status pomiaru PPPM', 'Suma opadu dzień [mm]', - 'Status pomiaru WODZ', 'Suma opadu noc [mm]', 'Status pomiaru WONO'] - - elif file_format == 'k_t': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Godzina', 'Temperatura powietrza [°C]', - 'Status pomiaru TEMP', 'Temperatura termometru zwilżonego [°C]', 'Status pomiaru TTZW', - 'Wskaźnik lodu [L/W]', 'Wskaźnik wentylacji [W/N]', 'Wilgotność względna [%]', 'Status pomiaru WLGW', - 'Kod kierunku wiatru [kod]', 'Status pomiaru DKDK', 'Prędkość wiatru [m/s]', 'Status pomiaru FWR', - 'Zachmurzenie ogólne [0-10 do dn.31.12.1988/oktanty od dn.01.01.1989]', 'Status pomiaru ZOGK', - 'Widzialność [kod]', 'Status pomiaru WID'] - - elif file_format == 's_t': - return ['Kod stacji', 'Nazwa stacji', 'Rok', 'Miesiąc', 'Dzień', 'Godzina', - 'Wysokość podstawy chmur CL CM szyfrowana [kod]', 'Status pomiaru HPOD', - 'Wysokość podstawy niższej [m]', - 'Status pomiaru HPON', 'Wysokość podstawy wyższej [m]', 'Status pomiaru HPOW', - 'Wysokość podstawy tekstowy [opis]', 'Pomiar przyrzadem 1 (niższa) [P]', - 'Pomiar przyrzadem 2 (wyższa) [P]', - 'Widzialność [kod]', 'Status pomiaru WID', 'Widzialność operatora [m]', 'Status pomiaru WIDO', - 'Widzialność automat [m]', 'Status pomiaru WIDA', 'Zachmurzenie ogólne [oktanty]', 'Status pomiaru NOG', - 'Kierunek wiatru [°]', 'Status pomiaru KRWR', 'Prędkość wiatru [m/s]', 'Status pomiaru FWR', - 'Poryw wiatru [m/s]', 'Status pomiaru PORW', 'Temperatura powietrza [°C]', 'Status pomiaru TEMP', - 'Temperatura termometru zwilżonego [°C]', 'Status pomiaru TTZW', 'Wskaźnik wentylacji [W/N]', - 'Wskaźnik lodu [L/W]', 'Ciśnienie pary wodnej [hPa]', 'Status pomiaru CPW', 'Wilgotność względna [%]', - 'Status pomiaru WLGW', 'Temperatura punktu rosy [°C]', 'Status pomiaru TPTR', - 'Ciśnienie na pozimie stacji [hPa]', 'Status pomiaru PPPS', 'Ciśnienie na poziomie morza [hPa]', - 'Status pomiaru PPPM', 'Charakterystyka tendencji [kod]', 'Wartość tendencji [wartość]', - 'Status pomiaru APP', - 'Opad za 6 godzin [mm]', 'Status pomiaru WO6G', 'Rodzaj opadu za 6 godzin [kod]', 'Status pomiaru ROPT', - 'Pogoda bieżąca [kod]', 'Pogoda ubiegła [kod]', 'Zachmurzenie niskie [oktanty]', 'Status pomiaru CLCM', - 'Chmury CL [kod]', 'Status pomiaru CHCL', 'Chmury CL tekstem', 'Chmury CM [kod]', 'Status pomiaru CHCM', - 'Chmury CM tekstem', 'Chmury CH [kod]', 'Status pomiaru CHCH', 'Chmury CH tekstem', 'Stan gruntu [kod]', - 'Status pomiaru SGRN', 'Niedosyt wilgotności [hPa]', 'Status pomiaru DEFI', 'Usłonecznienie', - 'Status pomiaru USLN', 'Wystąpienie rosy [0/1]', 'Status pomiaru ROSW', - 'Poryw maksymalny za okres WW [m/s]', 'Status pomiaru PORK', 'Godzina wystąpienia porywu', - 'Minuta wystąpienia porywu', 'Temperatura gruntu -5 [°C]', 'Status pomiaru TG05', - 'Temperatura gruntu -10 [°C]', 'Status pomiaru TG10', 'Temperatura gruntu -20 [°C]', - 'Status pomiaru TG20', 'Temperatura gruntu -50 [°C]', 'Status pomiaru TG50', - 'Temperatura gruntu -100 [°C]', - 'Status pomiaru TG100', 'Temperatura minimalna za 12 godzin [°C]', 'Status pomiaru TMIN', - 'Temperatura maksymalna za 12 godzin [°C]', 'Status pomiaru TMAX', - 'Temperatura minimalna przy gruncie za 12 godzin [°C]', 'Status pomiaru TGMI', - 'Równoważnik wodny śniegu [mm/cm]', 'Status pomiaru RWSN', 'Wysokość pokrywy śnieżnej [cm]', - 'Status pomiaru PKSN', 'Wysokość świeżo spadłego śniegu [cm]', 'Status pomiaru HSS', - 'Wysokość śniegu na poletku [cm]', 'Status pomiaru GRSN', 'Gatunek śniegu [kod]', - 'Ukształtowanie pokrywy [kod]', 'Wysokość próbki [cm]', 'Status pomiaru HPRO', 'Ciężar próbki [g]', - 'Status pomiaru CIPR'] - - -def search_for_keywords_in_columns( - keywords, file_format=None -): - """ - Search for the given keywords in the column names and return a dictionary with - the file formats in which the keywords were found. - - Keyword arguments: - keywords -- keywords that will be looked for - file_format -- IMGW database file format, the columns of which will be - used to look for keywords. If 'file_format' is None, then every column from - every file will be taken and the function will show you exactly where the - keywords were found (default None) - """ - if type(keywords) == str: - keywords = [keywords] - - if file_format is None: - intervals = ['monthly', 'daily', 'prompt'] - stations_kinds = ['synop', 'climat', 'fall'] - - found_file_formats = {} - for interval in intervals: - for kind in stations_kinds: - if interval == 'prompt' and kind == 'fall': - continue - file_formats = get_file_formats(interval, kind, 'all') - found_file_formats['interval=' + str(interval) + ', ' + 'stations_kind=' + str(kind)] = file_formats - - keywords_in_files = {} - if type(keywords) == list: - for interval_stkind, file_formats in found_file_formats.items(): - for file in file_formats: - columns_names = get_column_names(file) - for name in columns_names: - for keyword in keywords: - if keyword.upper() in name.upper(): - try: - keywords_in_files[str(interval_stkind) + ", " + "file_format=" + str(file)].append( - name) - except KeyError: - keywords_in_files[str(interval_stkind) + ", " + "file_format=" + str(file)] = [name] - else: - raise ValueError("Invalid input for 'keywords'. Use a list of strings or a single str.") - return keywords_in_files - - else: - if type(file_format) == str: - keywords_in_columns = [] - columns_names = get_column_names(file_format) - for name in columns_names: - if type(keywords) == list: - for keyword in keywords: - if keyword.upper() in name.upper(): - keywords_in_columns.append(name) - else: - raise ValueError("Invalid input for 'keywords'. Use a list of strings or a single str.") - else: - raise ValueError("Invalid input for the 'file_format' argument. Use a single str.") - return keywords_in_columns - - -def get_urls( - interval, stations_kind, years_range -): - """ - Return the urls to the IMGW database for the given 'interval', 'stations_kind' - and 'years_range'. - - Keyword arguments: - interval -- data interval from the IMGW database (monthly, daily, prompt) - stations_kind -- stations' kind (synop, climat, fall) - years_range -- years range (e.g. range(1966, 2021)) - """ - - if interval == 'monthly': - interval = 'miesieczne/' - elif interval == 'daily': - interval = 'dobowe/' - elif interval == 'prompt': - interval = 'terminowe/' - if stations_kind == 'fall': - raise NotADirectoryError("There's no '/dane_meteorologiczne/terminowe/opad/' directory.") - else: - raise ValueError("Invalid 'interval' input. Available inputs: 'monthly', 'daily', 'prompt'.") - - if stations_kind == 'synop': - stations_kind = 'synop/' - elif stations_kind == 'fall': - stations_kind = 'opad/' - elif stations_kind == 'climat': - stations_kind = 'klimat/' - else: - raise ValueError("Invalid 'stations_kind' input. Available inputs: 'synop', 'fall', 'climat'.") - - years_endings = [] - for year in years_range: - if year < 2001: - if year > 1995: - if years_endings.count('1996_2000/') == 0: - years_endings.append('1996_2000/') - elif year > 1990: - if years_endings.count('1991_1995/') == 0: - years_endings.append('1991_1995/') - elif year > 1985: - if years_endings.count('1986_1990/') == 0: - years_endings.append('1986_1990/') - elif year > 1980: - if years_endings.count('1981_1985/') == 0: - years_endings.append('1981_1985/') - elif year > 1975: - if years_endings.count('1976_1980/') == 0: - years_endings.append('1976_1980/') - elif year > 1970: - if years_endings.count('1971_1975/') == 0: - years_endings.append('1971_1975/') - elif year > 1965: - if years_endings.count('1966_1970/') == 0: - years_endings.append('1966_1970/') - elif year > 1959: - if years_endings.count('1960_1965/') == 0: - years_endings.append('1960_1965/') - else: - raise ValueError("No data for {}. Available years range: 1960-2021.".format(str(year))) - else: - years_endings.append(str(year) + '/') - - urls = [] - base_url = 'https://danepubliczne.imgw.pl/data/dane_pomiarowo_obserwacyjne/dane_meteorologiczne/' - for ending in years_endings: - url = base_url + interval + stations_kind + ending - urls.append(url) - return urls - - -def download_data(urls): - """ - Download data from the IMGW database. - - Keyword arguments: - urls -- urls for the data which is requested - """ - - import requests - from bs4 import BeautifulSoup as bs - import zipfile - import io - - files_reading_dir_path = str(__file__).replace('imgw.py', 'files_reading_folder') - - for url in urls: - if urls.index(url) == 0: - print("Data download started... 0% done") - - r = requests.get(url) - soup = bs(r.content, features="html.parser") - - zip_file_paths = [] - for element in soup.find_all('a'): - if '.zip' in element.get_text(): - zip_file_paths.append(element.get_text()) - - for path in zip_file_paths: - zip_file = requests.get(url + path) - zip_file = zipfile.ZipFile(io.BytesIO(zip_file.content)) - zip_file.extractall(files_reading_dir_path) - - if (urls.index(url) + 1) % 5 == 0: - print("Downloading data... {}% done".format(round((urls.index(url) / len(urls)) * 100))) - print("Data downloaded! 100% done") - - -def concatenate_data( - downloaded_files_names, file_formats, specific_columns, - keywords, optimize_memory_usage, years_range, - merge_splitted_stations -): - """ - Merge tables from downloaded files and return them as one merged pd.DataFrame. - - Keyword arguments: - downloaded_files_names -- list of downloaded file names - file_formats -- IMGW file formats included in downloaded files - specific_columns -- which columns will be taken for merge - keywords -- words which must be in the column name if the column is to be - merged - optimize_memory_usage -- reduce pd.DataFrame memory usage - years_range -- filter pd.DataFrame up to the given period - """ - - import pandas as pd - import numpy as np - import os - - if isinstance(file_formats, list) and len(file_formats) > 1: - raise ValueError( - f"""Invalid value for the 'file_format' argument. Data downloading is possible only for a single file. - {len(file_formats)} files given ({file_formats}). - """ - ) - - if isinstance(file_formats, str): - file_formats = [file_formats] - - if isinstance(keywords, str): - keywords = [keywords] - - df = pd.DataFrame() - keywords_in_columns = [] - files_reading_dir_path = str(__file__).replace('imgw.py', 'files_reading_folder') - - for file in downloaded_files_names: - if downloaded_files_names.index(file) == 0: - print("Data concatenating started... 0% done") - - for file_format in file_formats: - - if file_format == 's_d' or file_format == 'k_d': - avoid_file_format = file_format + '_t' - else: - avoid_file_format = 'NO FILE FORMAT TO AVOID' - - if file_format in file and avoid_file_format not in file: - - path = os.path.join(files_reading_dir_path, file) - csv_DataFrame = pd.read_csv(path, encoding="windows-1250", header=None) - - if specific_columns is not None and keywords is None: - if type(specific_columns) == str: - specific_columns = [specific_columns] - - if type(specific_columns) is list: - csv_DataFrame = csv_DataFrame[specific_columns] - else: - raise ValueError("Invalid 'specific_columns' type. Use a list of strs or a single str.") - - if keywords is not None and len(keywords_in_columns) == 0: - columns = get_column_names(file_format) - for keyword in keywords: - for column in columns: - if keyword.upper() in column.upper(): - keywords_in_columns.append(columns.index(column)) - - if keywords is not None: - csv_DataFrame = csv_DataFrame[keywords_in_columns] - - if optimize_memory_usage: - for column in csv_DataFrame.columns: - if column == 0: - csv_DataFrame[column] = csv_DataFrame[column].astype('object', errors='ignore') - elif csv_DataFrame[column].dtype == np.dtype('int64'): - csv_DataFrame[column] = csv_DataFrame[column].astype('int16', errors='ignore') - elif csv_DataFrame[column].dtype == np.dtype('float64'): - csv_DataFrame[column] = csv_DataFrame[column].astype('float16', errors='ignore') - else: - csv_DataFrame[column] = csv_DataFrame[column].astype('float16', errors='ignore') - - df = df.append(csv_DataFrame) - - try: - if (downloaded_files_names.index(file) + 1) % (round(len(downloaded_files_names) * 0.1)) == 0: - print("Concatenating data... {}% done".format( - round((downloaded_files_names.index(file) / len(downloaded_files_names)) * 100))) - except ZeroDivisionError: - pass - print("Data concatenated! 100% done \n") - - try: - df = df[df[2] >= min( - years_range)] - df = df[df[2] <= max( - years_range)] - except KeyError: - print("No column with year has been specified. Can't limit data range to given 'years_range'.") - - if merge_splitted_stations and 1 in df.columns: - stations_series = df[1] - new_stations_series = [] - for station in stations_series: - if station == 'KATOWICE-MUCHOWIEC': - new_stations_series.append('KATOWICE') - elif station == 'ŁÓDŹ-LUBLINEK': - new_stations_series.append('ŁÓDŹ') - elif station == 'POZNAŃ-ŁAWICA': - new_stations_series.append('POZNAŃ') - elif station == 'WARSZAWA-OKĘCIE': - new_stations_series.append('WARSZAWA') - elif station == 'WROCŁAW-STRACHOWICE': - new_stations_series.append('WROCŁAW') - elif station == 'ELBLĄG-MILEJEWO': - new_stations_series.append('ELBLĄG') - elif station == 'RESKO-SMÓLSKO': - new_stations_series.append('RESKO') - elif station == 'KOŁOBRZEG-DŹWIRZYNO': - new_stations_series.append('KOŁOBRZEG') - else: - new_stations_series.append(station) - df[1] = new_stations_series - - if keywords is not None: - return df, keywords_in_columns - else: - return df - - -def download_imgw_climatological_data( - interval, stations_kind, years_range, - file_format_index=0, file_format=None, specific_columns=None, - keywords=None, merge_split_stations=True, optimize_memory_usage=False, - return_coordinates=False -): - """ - Download the IMGW data files and return them as one merged pd.DataFrame. - - Keyword arguments: - interval -- data interval from the IMGW database ('monthly', 'daily', - 'prompt') - stations_kind -- stations' kind ('synop', 'climat', 'fall') - years_range -- years range (e.g. range(2010, 2021)) - file_format_index -- for which element (from the list of the available file - formats in the IMGW database) the data will be downloaded. Usually the length of - the list is 2. Valid inputs: 0, 1, 'all' (default 0) - file_format -- IMGW database file format. The argument has priority over - 'file_format_index'. If None, the data will be downloaded correspondingly to - 'file_format_index' (default None) - specific_columns -- which columns from downloaded files will be taken - to merge. If None, take all columns (default None) - keywords -- words which must be in the column name if the column is to be - merged. If None, do not filter the column names (default None) - merge_split_stations -- merge stations which are the same but have - different names (default True) - optimize_memory_usage -- reduce pd.DataFrame memory usage (default False) - return_coordinates -- add columns with latitude, longitude and elevation - to the returned DataFrame (default False) - """ - - from os import listdir - from os.path import isfile, join - import shutil - - if file_format not in get_file_formats(interval, stations_kind, 'all') and file_format is not None: - raise ValueError( - f""" - There's no such file format ({file_format}) for the specified combination of 'interval' and 'stations_kind' - """ - ) - - files_reading_dir_path = str(__file__).replace('imgw.py', 'files_reading_folder') - - urls = get_urls(interval, stations_kind, years_range) - download_data(urls) - downloaded_files_names = [f for f in listdir(files_reading_dir_path) if isfile(join(files_reading_dir_path, f))] - - if file_format is not None: - if type(file_format) == str: - file_formats = [file_format] - elif type(file_format) == list: - file_formats = [format_ for format_ in file_format] - else: - raise ValueError("Invalid input for the 'file_format' argument. Use a single str or a list of strs.") - else: - file_formats = get_file_formats(interval, stations_kind, file_format_index) - - df = concatenate_data(downloaded_files_names, file_formats, specific_columns, - keywords, optimize_memory_usage, years_range, - merge_split_stations) - - if keywords is not None: - keywords_in_columns = df[1] - df = df[0] - else: - df = df - keywords_in_columns = None - - if len(file_formats) == 1: - column_names = get_column_names(file_formats[0]) - - if specific_columns is not None and keywords is None: - chosen_columns_names = [] - if type(specific_columns) == list: - for column_index in specific_columns: - chosen_columns_names.append(column_names[column_index]) - df.columns = chosen_columns_names - - elif keywords is not None: - chosen_columns_names = [] - for column_index in keywords_in_columns: - chosen_columns_names.append(column_names[column_index]) - df.columns = chosen_columns_names - - else: - df.columns = column_names - - shutil.rmtree(files_reading_dir_path) - - if return_coordinates: - import pandas as pd - - print('Joining coordinates to the dataframe...') - - lat = [] - lon = [] - elv = [] - - path = str(__file__).replace('imgw.py', 'imgw_coordinates.csv') - station_coordinates = pd.read_csv(path, index_col=0) - - for station in list(df['Nazwa stacji']): - try: - coordinates = station_coordinates[station] - except KeyError: - lat.append(None) - lon.append(None) - elv.append(None) - continue - - lon.append(coordinates[1]) - lat.append(coordinates[0]) - elv.append(coordinates[2]) - - df['lon'] = lon - df['lat'] = lat - df['elv'] = elv - - print('Coordinates joined!') - - return df diff --git a/build/lib/cloupy/scraping/imgw_coordinates.csv b/build/lib/cloupy/scraping/imgw_coordinates.csv deleted file mode 100644 index dff6942..0000000 --- a/build/lib/cloupy/scraping/imgw_coordinates.csv +++ /dev/null @@ -1,4 +0,0 @@ -,ADAMOWICE,ALEKSANDRÓWKA,ALWERNIA,ANNOPOL,ANTAŁÓWKA,AUGUSTÓW,BABIAK,BABIĘTA,BABIMOST,BABORÓW,BACHORZEW,BACIUTY,BACZE SUCHE,BAKAŁARZEWO,BALICE,BALIGRÓD-MCHAWA,BAŁOSZYCE,BANIE MAZURSKIE,BAŃSKA WYŻNA,BARANÓW,BARANÓW SANDOMIERSKI,BARANÓWEK,BARCIANY,BARCIN,BARDO ŚLĄSKIE,BARLINEK,BARSZCZOWA GÓRA,BARTKÓW,BARTNE,BARTODZIEJE,BARTOSZYCE,BARUCHOWO,BARWICE,BARWINEK,BASINÓW,BATORZ,BĄGART,BĄKOWO,BĄKÓW,BELINA,BEŁCHATÓW,BEŁŻEC,BEREST,BESKO,BEZEK,BEZŁAWKI-WILKOWO,BĘSIA,BIAŁA NAD NOTECIĄ,BIAŁA NAD WARTĄ,BIAŁA PISKA,BIAŁA PODLASKA,BIAŁA RAWSKA,BIAŁCZYK,BIAŁKA TATRZAŃSKA,BIAŁOBRZEGI,BIAŁOGARD,BIAŁOŚLIWIE,BIAŁOWIEŻA,BIAŁYSTOK,BIEBRZA-PIEŃCZYKÓWEK,BIECZ-GRUDNA,BIELICE,BIELINEK,BIELINY KAPITULNE,BIELSK PODLASKI,BIELSKO-BIAŁA,BIEŃKÓWKA,BIERNA,BIERUŃ STARY,BIERUTÓW,BIESTRZYKOWICE,BIEŻUŃ,BIŁGORAJ,BINOWO,BIRCZA,BISKUPIEC,BLEDZEW,BŁOTNICA,BOBIĘCINO,BOBROWICE,BOBROWNIKI,BOBRY,BOCHNIA,BOCZÓW,BOĆKI,BODZENTYN,BOGATYNIA,BOGDANÓWKA,BOGLEWICE,BOGORIA,BOGUCIN,BOGUSŁAWICE,BOGUSZÓW-GORCE,BOJANOWO,BOLEJNY,BOLESŁAW,BOLESŁAWICE,BOLESŁAWÓW,BOLESZKOWICE,BOLEWICKO,BOLKÓW,BONDARY,BONOWICE,BORKOWO,BORNITY,BOROWIEC,BOROWY MŁYN,BORÓW,BORUCIN,BORUCINO,BORUSOWA,BORYNIA,BORZĘCIN,BOŻEPOLE SZLACHECKIE,BRANICE,BRANIEWO,BRAŃSK,BRATOSZEWICE,BRENNA,BRENNA-LEŚNICA,BRODNICA,BRODNICA N/DRWĘCĄ,BRODY,BRODY IŁŻECKIE,BRODY POMORSKIE,BROŻEK (ZASIEKI),BRUDNICE,BRUSIEK,BRUSKOWO MAŁE,BRUSKOWO WIELKIE,BRUSS STARY,BRWINÓW,BRYNICA,BRZEG,BRZEG DOLNY,BRZEGI DOLNE,BRZEŚĆ KUJAWSKI,BRZEZIE,BRZEZINY,BRZEŹNIAK,BRZEŹNICA,BRZEŹNICA N/WISŁOKĄ,BRZOSTEK,BRZOZIE,BRZOZÓW,BRZÓZA,BRZUZE,BUCHAŁÓW,BUCZEK MAŁY,BUCZYNA,BUCZYNIEC,BUDACHÓW,BUDY TUSZOWSKIE,BUDZISZÓW MAŁY,BUDZISZÓW WIELKI,BUDZIWÓJ,BUDZÓW,BUKOWIEC,BUKOWINA,BUKOWINA TATRZAŃSKA,BUKÓWKA,BUKÓWNO,BURZYN,BYDGOSZCZ,BYDGOSZCZ-SZWEDEROWO,BYSTRZYCA KŁODZKA,BYSZWAŁD,BYTOM,BYTOM ODRZAŃSKI,CEBER,CEBER-KOZIE DOŁY,CECENOWO,CEKÓW,CELEJÓW,CELESTYNÓW,CHAŁUPKI,CHECHŁO,CHEŁM,CHEŁMSKO ŚLĄSKIE,CHEŁSTÓW,CHEŁSTY,CHMIELNIK,CHMIELÓW,CHOBIENIA,CHOCIANÓW,CHOCIESZÓW,CHOCZ,CHODECZ,CHODEL,CHODZIEŻ,CHOJNA,CHOJNICE,CHOJNÓW,CHOMĘTOWO,CHORZELE,CHORZELÓW,CHORZÓW-MIASTO,CHOSZCZNO,CHRABOŁY,CHROBERZ,CHROŚNA,CHROŚNICA,CHRZANÓW,CHRZĄSTOWICE,CHRZĄSTOWO,CHWAŁKOWICE,CHYŻNE,CIĄŻEŃ,CICIBÓR,CIECHANOWICE,CIECHANOWIEC,CIECHANÓW,CIECHOCINEK,CIECHOLEWY,CIEKLIN,CIEKSYN,CIELĘTNIKI,CIEMNOSZYJE,CIEPIELÓW,CIEPLICE,CIEPLICE ŚLĄSKIE-ZDRÓJ,CIERPIĘTA,CIESZANÓW,CIESZYN,CIĘŻKOWICE,CIOŁKOWO,CISNA,CISOWA,CISÓW,CYBINKA,CYKARZEW,CZAPLINEK,CZARNA,CZARNA DĄBRÓWKA,CZARNA KOLONIA,CZARNA WODA,CZARNCA,CZARNE,CZARNOLAS,CZARNOWO,CZARNÓW-TOWARZYSTWO,CZARNY DUNAJEC,CZARNY LAS,CZARNY SAD,CZARTORYJA,CZATKOWICE,CZCHÓW,CZEKANÓW,CZELADŹ,CZEMIERNIKI,CZERNIEJEWO,CZERNIEJEWO II,CZERNIKOWO,CZERSK,CZERWONA WIEŚ,CZESŁAWICE,CZĘSTOCHOWA,CZŁEKÓWKA,CZŁOPA,CZŁUCHÓW,CZORSZTYN-NADZAMCZE,CZYŻEW,DALESZYCE,DAŃKÓW,DARŁOWO,DARŻ,DĄBIE,DĄBROWA,DĄBROWA BIAŁOSTOCKA,DĄBROWA TARNOWSKA,DĄBROWICA,DĄBRÓWKA,DĄBRÓWKA GÓRNA,DĄBRÓWKA STARA,DĘBE WIELKIE,DĘBICA,DĘBINIEC,DĘBLIN,DĘBNO,DĘBOWICE,DĘBOWO,DĘBY SZLACHECKIE,DŁUGIE,DŁUGOBÓR,DŁUGOPOLE-ZDRÓJ,DOBCZYCE,DOBIEGNIEW,DOBRA,DOBRE,DOBROCIN,DOBRODZIEŃ,DOBROGOSZCZ,DOBROMIERZ,DOBRY,DOBRYLAS,DOBRYSZYCE,DOLECK,DOLICE,DOLINA CHOCHOŁOWSKA,DOLINA PIĘCIU STAWÓW,DOLSK,DOMANICE,DOMARADY,DOROHUSK,DOZINY,DRAHLE,DRAWNO,DRAWSKO POMORSKIE,DREZDENKO,DRONIOWICE,DROZDY,DRUŻYNA POZNAŃSKA,DRYGAŁY,DRZEWOCINY,DUBENINKI,DUBICA GÓRNA,DUBIENKA,DUBOWO,DUKLA,DUNINÓW,DUSZNIKI-ZDRÓJ,DWERNIK,DWORKI,DYGOWO,DYNÓW,DZBENIN,DZIADKOWICE,DZIAŁDOWO,DZIAŁOSZYN,DZIARNY,DZIEĆKOWICE,DZIERZGOŃ,DZIERŻĄŻNO WIELKIE,DZIERŻONIÓW,DZIEWIĘTLICE,DZIWNÓW,ELBLĄG,ELBLĄG-MILEJEWO,ELŻBIECIN,EŁK,FALĘCIN,FAŁKÓW,FAMUŁKI BROCHOWSKIE,FASTY,FELIN,FRAMPOL,FRANKNOWO,FRĄCA,FRĄCZKI,FRĄKNOWO,FROMBORK,FRYSZTAK,FUTORY,GADKA,GAJÓW,GALINY,GARBATKA,GARBATÓWKA,GARDEJA,GAWŁUSZOWICE,GAWORZYCE,GĄBIN,GDAŃSK-PORT PÓŁNOCNY,GDAŃSK-RĘBIECHOWO,GDAŃSK-ŚWIBNO,GDAŃSK-WRZESZCZ,GDÓW,GDYNIA,GDYNIA DĄBROWA,GDYNIA OKSYWIE,GĘBICE,GIERAŁTOWICE,GIERCZYN,GIETRZWAŁD,GILOWICE,GIRGAJNY,GIŻE,GIŻYCKO,GIŻYN,GIŻYN K/SZCZECINA,GLINIK MARIAMPOLSKI,GLIWICE,GŁĘBOCKO,GŁĘBOKIE,GŁODOWO,GŁOGÓW,GŁOGÓWEK,GŁOWBITY,GŁUBCZYCE,GŁUCHOŁAZY,GŁUCHÓW,GŁUSZYCA,GNIECHOWICE,GNIEW,GNIEZNO,GNOJNIK,GOCZAŁKOWICE-ZDRÓJ,GOLCZOWICE,GOLCZOWICE OPOLSKIE,GOLENIÓW,GOLESZÓW,GOŁAŃCZ,GOŁDAP,GOŁKOWICE,GOŁOTCZYZNA,GORĘCZYNO,GORLICE,GORZKOWICE,GORZKÓW,GORZÓW WIELKOPOLSKI,GORZYŃ,GOSTKÓW,GOSTOMIA,GOSTYNIN,GOŚCIEJOWICE,GOŚCIM,GOWOROWICE,GOZDOWICE,GÓRA,GÓRA KALWARIA,GÓRA ŚW.ANNY,GÓRANY,GÓRKI WIELKIE,GÓRKI ZAGAJNE,GÓROWO IŁAWECKIE,GRABIK,GRABISZYCE GÓRNE,GRABOWIEC,GRABOWNICA,GRAJEWO,GRĄDY PODMIEJSKIE,GRĘBÓW,GRODKOWICE,GRODKÓW,GRODZIEC,GRODZISK,GRODZISK WIELKOPOLSKI,GRODZISKO DOLNE,GRÓDEK,GRÓDKOWO,GRUDUSK,GRUDZIĄDZ,GRUSZCZYN,GRUSZOWIEC,GRYBÓW,GRYFINO,GRYFÓW ŚLĄSKI,GRYŻYCE,GRYŻYNA,GRZEBIENISKO,GRZĘDY,GRZMIĄCA,GRZYBNICA,GUBAŁÓWKA,GUBIN,GUTY DUŻE,GWIEŹDZIN,HACZÓW,HAJNÓWKA,HALA GĄSIENICOWA,HALA LIPOWSKA,HALA ORNAK,HALEMBA,HAŃSK,HARKABUZ,HEL,HERBY NOWE,HOŁODOLINA,HOPOWO,HORYNIEC,HRUBIESZÓW,HRUSZÓW,HUCISKO JAWORNICKIE,HUSÓW,HUTA,HUTKI,IGOŁOMIA,IŁAWA,IŁOWA,IŁÓW,IŁŻA,IMBRAMOWICE,INOWROCŁAW,INWAŁD,IŃSKO,ISTEBNA,ISTEBNA-KUBALONKA,ISTEBNA-MŁODA GÓRA,ISTEBNA-STECÓWKA,ISTEBNA-WIEŚ,ISTEBNA-ZAOLZIE,IWANOWICE,IWINY,IWKOWA,IWONICZ-ZDRÓJ,IZBICA,IZBICA KUJAWSKA,IZDEBKI,JABŁONKA,JABŁONNA,JABŁONOWO,JABŁONOWO-WYPYCHY,JADOWNIKI MOKRE,JAGNIĄTKÓW,JAKSICE,JAKSICE II,JAKUBOWICE,JAKUSZYCE,JAŁÓWKA,JANICE,JANISZEWO,JANKOWICE,JANOWIEC WIELKOPOLSKI,JANÓW,JANÓW LUBELSKI,JANUSZEWICE,JARCZEW,JARKOWICE,JARNICE,JARNOŁTÓWEK,JARNUTY,JAROCIN,JAROSŁAW,JAROSTY,JASIENNA,JASIONÓW,JASŁO,JASTARNIA,JASTROWIE,JASTRZĘBIA,JASTRZĘBIE,JASTRZĘBIE-ZDRÓJ,JASTRZĘBNA PIERWSZA,JASTRZĘBSKA WOLA,JASTRZYGOWICE,JAŚKOWO,JAŚLISKA,JAWISZOWICE,JAWOR,JAWORZYNA KRYNICKA,JAZOWSKO,JEDLANKA,JEDLICZE,JEDLINA-ZDRÓJ,JEDNOROŻEC,JELCZ-LASKOWICE,JELENIA GÓRA,JEMIOŁOWO,JERZWAŁD,JEZIORKI,JEZIORNA,JEZIORY,JEŻÓW,JEŻYCZKI,JĘDRZEJÓW,JĘDRZEJÓW-SUDÓŁ,JĘDRZEJÓWKA,JOANIN,JODŁOWA,JODŁOWNIK,JORDANÓW,JÓZEFÓW,JUCHNOWIEC DOLNY,JUCHOWO,JUDYTY,JUGÓW,KACZORÓW,KACZYCE,KADŁUB-PIEC,KADZIDŁO,KALISKA,KALISZ,KALNICA,KALWARIA ZEBRZYDOWSKA,KAMESZNICA,KAMIENICA,KAMIENIEC ZĄBKOWICKI,KAMIENNA,KAMIENNA GÓRA,KAMIEŃ KRAJEŃSKI,KAMIEŃ POMORSKI,KAMIONKA,KANIE,KANIÓW,KAŃCZUGA,KARGOWA,KARMONKI NOWE,KARPACZ,KARPNO,KARSIBÓR,KARSIBÓR II,KARTLEWO,KARTUZY,KARŻNICZKA,KASPARUS,KASPROWY WIERCH,KASZUNY,KATOWICE PYRZOWICE,KATOWICE,KATOWICE-MUCHOWIEC,KAWĘCZYN,KAZIMIERZ DOLNY,KAZIMIERZA MAŁA,KĄTY RYBACKIE,KĄTY WROCŁAWSKIE,KĘDZIERZYN-KOŹLE,KĘPA,KĘPIE,KĘPNO,KĘTRZYN,KĘTY,KIELCE-SUKÓW,KIEŁCZYGŁÓW,KIETRZ,KIKITY,KIKITY II,KISIELICE,KLEJNIKI,KLESZCZELE,KLĘKA,KLIKUSZOWA,KLIMONTÓW,KLISZÓW,KLONOWO,KLUCZEWO,KLUKI,KLUKOWA HUTA,KŁOBUCK,KŁODA,KŁODAWA,KŁODZKO,KŁONICE,KMIECIN,KOBIÓR,KOBYLNO,KOBYŁCZYCE,KOCHCICE,KOCIERZ MOSZCZANICKI,KOCK,KODEŃ,KOLBUSZOWA,KOLNO,KOLONIA KAWĘCZYN,KOLONIA ZAKRĘCIE,KOŁO,KOŁOBRZEG,KOŁOBRZEG-DŹWIRZYNO,KOŁODZIEJEWO,KOŁUDA WIELKA,KOMAŃCZA,KOMARNO,KOMOROWO,KONIAKÓW,KONIECPOL,KONIECZNO,KONIN,KONOJAD,KOŃCZEWICE,KOŃSKIE,KOPANIEC,KOPERNIA,KOPERNICA,KOPICE,KORBIELÓW,KORFANTÓW,KORFANTÓW II,KORONOWO,KORZEKWIN,KORZENIEWO,KORZYBIE,KOSARZYN,KOSOBUDY,KOSTKOWO,KOSTRZYN,KOSTRZYN NAD ODRĄ,KOSZALIN,KOSZALIN-ZEGRZE,KOSZARAWA,KOSZARAWA-ŻŁABNE,KOŚCIAN,KOŚCIAN II,KOŚCIELISKO-KIRY,KOŚCIELNA WIEŚ,KOŚCIERZYN,KOŚCIERZYNA,KOŚMIN,KOTUSZ,KOWALE OLECKIE,KOWALEWO,KOWANIEC,KOWARY,KOZICE (ŻYCZYN),KOZIENICE,KOŹLE,KOŹMICE WIELKIE,KOŹMIN WIELKOPOLSKI,KOŹMINEK,KOŻUCHÓW,KÓRNIK,KRAJENKA,KRAKÓW HISTORYCZNE,KRAKÓW-BALICE,KRAKÓW-BIELANY-KLASZTOR,KRAKÓW-ŁĘG,KRAKÓW-OBSERWATORIUM,KRAKÓW-SWOSZOWICE,KRAKÓW-WOLA JUSTOWSKA,KRAMSK,KRAPKOWICE,KRASICZYN,KRASIENIN,KRASNA,KRASNE,KRASNYSTAW,KRASOCIN,KRASZEWICE,KRASZEWO,KRAŚNIK LUBELSKI,KRĄG,KREMPNA,KRĘCIWILK,KRĘPA GÓRNA,KROSNO,KROSNO ODRZAŃSKIE,KROŚCIENKO,KROŚCINA MAŁA,KROTOSZYN,KRÓLÓWKA,KRUPSKI MŁYN,KRUSZÓW,KRUSZYNA,KRYNICA,KRYNICA MORSKA,KRYNICA-GÓRA PARKOWA,KRYNICE,KRYPNO KOŚCIELNE,KRYWAŁD,KRZECZÓW,KRZEMIENIEWO,KRZEPICE,KRZEPOCINEK,KRZESZOWICE,KRZESZÓW,KRZESZYCE,KRZĘCIN,KRZYNOWŁOGA MAŁA,KRZYWIN GRYFICKI,KRZYŻ,KRZYŻEWO,KSIĄŻ WIELKI,KSIĄŻNIK,KSIĘGINICE,KUDOWA ZDRÓJ,KUDOWA-ZDRÓJ,KULIGI,KUP,KUROWO BRANIEWSKIE,KURPIE,KURZACZE,KUŹNICA CZARNKOWSKA,KUŹNICE,KWASÓW,KWIETNO,LACHOWICE KRALE,LACHOWO,LACHÓWKA,LALIKI,LASKI,LASÓWKA,LASZKI,LĄD,LĄDEK-ZDRÓJ,LECHOWO,LEGIONOWO,LEGNICA,LELKOWO,LELÓW,LESINY WIELKIE,LESKO,LESKOWIEC,LESZCZOWATE,LESZNO,LEŚNA,LEŚNA HUTA,LEŚNICA,LEWIN KŁODZKI,LEŻAJSK,LĘBORK,LGOTA GÓRNA,LIBERTÓW,LIDZBARK,LIDZBARK WARMIŃSKI,LIGASÓWKA-ZĄB,LIGOTA GÓRNA,LIGOTA PIĘKNA,LIGOTA TWORKOWSKA,LIMANOWA,LINIE,LIPA,LIPINA,LIPINY,LIPNICA DOLNA,LIPNICA WIELKA,LIPNIK (LIPKI),LIPOWA,LIPOWINA,LISEWO,LISIA GÓRA,LISIEC,LISKÓW,LISOWO,LIWSKIE MOSTY,LUBACHÓW,LUBACZÓW,LUBANIE,LUBAŃ,LUBARTÓW,LUBATOWA,LUBAWA,LUBIATÓW,LUBICZ,LUBIEŃ,LUBIĘCIN,LUBIKOWO,LUBIN,LUBINICKO-ŚWIEBODZIN,LUBLIN-RADAWIEC,LUBLINIEC,LUBNIEWICE,LUBOCHNIA,LUBOMIERZ,LUBOMIN,LUBOMINO,LUBONIEC,LUBOŃ WIELKI,LUBOTYŃ,LUBSKO,LUĆMIERZ,LUSŁAWICE,LUTOL SUCHY,LUTOSŁAWICE RZĄDOWE,LUTOWISKA,LUTÓWKO,LUTRY,ŁABĘDY,ŁABĘDZIE,ŁABĘDZIN,ŁABISZYN,ŁABOWA,ŁAGIEWNIKI,ŁANY,ŁAŃCUT,ŁAPANÓW,ŁAPSZE NIŻNE,ŁASIN,ŁASK,ŁAZISKA,ŁAZÓW,ŁAZY,ŁĄCKO,ŁĄKA,ŁEBA,ŁEBKI,ŁĘCZNA,ŁĘKAWICA,ŁĘKNICA,ŁĘŻANY,ŁOBZOWO,ŁOBŻENICA,ŁODYGOWICE,ŁOKIETKA,ŁOMAZY,ŁOMÓW,ŁOPUSZNA,ŁOSICE,ŁOSIÓW,ŁOWICZ,ŁOWISKO,ŁOZY,ŁÓDŹ,ŁÓDŹ-LUBLINEK,ŁÓDŹ-WIDZEW,ŁUBIANKA,ŁUBIE GÓRNE,ŁUBIEC,ŁUBKI,ŁUCZYNA,ŁUKÓW,ŁUPAWSKO,ŁYSA POLANA,ŁYSZKOWICE,MACZKI,MACZKÓW,MAGURKA,MAJDAN KRÓLEWSKI,MAJDAN WIELKI,MAKARÓWKA,MAKOSZOWY,MAKÓW PODHALAŃSKI,MALBORK,MALCZKOWO,MALCZYCE,MAŁOGOSZCZ,MAŁSZEWO,MAŁUSY WIELKIE,MARADKI,MARIANOWO,MARIANOWO II,MASZEWO,MATCZE,MAZANÓW,MAZAŃCOWICE,MĄKOWARSKO,MĘTKÓW,MĘŻENIN,MIAŁY,MIASTKO,MIĄSE,MICHAŁKI,MICHORZEWO,MICHORZEWO II,MICHÓW,MIECHĘCINO,MIECHÓW,MIEDNIEWICE,MIELEC,MIELĘCIN,MIELNO,MIEROSZÓW,MIESZKOWICE,MIĘDZYBÓRZ,MIĘDZYBRODZIE BIALSKIE,MIĘDZYGÓRZE,MIĘDZYLESIE,MIĘDZYRZEC PODLASKI,MIĘDZYRZECZ,MIKASZÓWKA,MIKŁASZE,MIKOŁAJEWO,MIKOŁAJKI,MIKOŁÓW,MIKOROWO,MIKOSZE,MIKULIN,MILACHOWO,MILEJÓW,MILICZ,MILÓWKA,MIŁKOWO,MIŁKÓW,MIŁOCIN,MIŁORADZ,MIRACHOWO,MIRKÓW,MIROCIN,MIROSŁAWIEC,MIRSK,MIZERNA,MŁAWA,MŁOTY,MŁYNOWO,MŁYNY,MNISZEK,MOCHOWO,MODLIN,MODZEROWO,MODZURÓW,MOGILNO,MOKRY LAS,MOŃKI,MORAWICA,MORDY,MORSKIE OKO,MORYŃ,MOSINA,MOSTY,MOSZCZENICA,MOTYL,MRĄGOWO,MROCZKÓW,MSZANA,MSZANA DOLNA,MSZCZONÓW,MURCKI,MUSZYNA,MYCZKOWCE,MYSŁAKOWICE,MYSŁAKÓW,MYSZKÓW,MYSZYNIEC,MYŚLENICE,MYŚLIBÓRZ,MYŚLIWIEC,NAGŁOWICE,NAGRADOWICE,NAŁĘCZÓW,NAMYSŁÓW,NAREW,NAREW ATSO,NAREWKA,NAROL,NIEDZICA,NIEDŹWIEDNIK,NIEDŹWIEDZIE,NIEDŹWIEDŹ,NIEGÓW,NIELISZ,NIEMCZA,NIEMODLIN,NIEMOJKI,NIEMOJÓW,NIEPOKALANÓW,NIESIOŁOWICE-RZEPISKA,NIEZABYSZEWO,NIEZNANICE,NIEŻYCHOWO,NIKUTOWO,NIWKA,NIWKI,NOJEWO,NOSÓW,NOWA GÓRA,NOWA MORAWA,NOWA PASŁĘKA,NOWA RUDA,NOWA RUDA-SŁUPIEC,NOWA SŁUPIA,NOWA SÓL,NOWA SUCHA,NOWA WIEŚ,NOWA WIEŚ PODGÓRNA,NOWA WIEŚ UJSKA,NOWA WIEŚ WIELKA,NOWA WIEŚ WIELKA II,NOWA WOLA,NOWE BYSTRE,NOWE BYSTRE-SŁODYCZKI,NOWE MASIEWO,NOWE MIASTO,NOWE SADŁUKI,NOWOGARD,NOWOGRODZIEC,NOWOGRÓD,NOWOGRÓD BOBRZAŃSKI,NOWOSADY,NOWOSIELCE,NOWOSIÓŁKI,NOWOTANIEC,NOWOWOLA,NOWY CYDZYN,NOWY DWÓR,NOWY DWÓR MAZOWIECKI,NOWY FOLWARK,NOWY GIERAŁTÓW,NOWY JASINIEC,NOWY LUBLINIEC,NOWY RAMUK,NOWY SĄCZ,NOWY STAW,NOWY TARG-KOWANIEC,NOWY WIEC,NOWY WIŚNICZ,NOWY ŻMIGRÓD,NURZEC,NYSA,OBIDOWA,OBJAZDA,OBLĘGOREK,OBLĘGÓR,OBORNIKI ŚLĄSKIE,OBORNIKI WIELKOPOLSKIE,OBORNIKI WIELKOPOLSKIE II,OBSZA,OCHABY,OCHOTNICA DOLNA,OCHOTNICA GÓRNA,OCYPEL,ODOLANÓW,ODRZYWÓŁ,OGRÓDEK,OJCÓW,OKMIANY,OKONEK,OKSA,OKUNINO,OLECKO,OLESNO,OLEWIN,OLGANOWO,OLKUSZ,OLSZANKA,OLSZEWKI,OLSZTYN,OLSZYN,OŁAWA,OŁDRZYCHOWICE KŁODZKIE,OŁUDZA,OPALENICA,OPATOWIEC,OPAWA,OPIESIN,OPIESIN-GŁOGOWA,OPOCZNO,OPOLE,OPOLE LUBELSKIE,ORNETA,ORZECH,ORZECHÓWKA,ORZESZE,ORZESZKOWO,ORZESZYN,ORZYSZ,OSETNO,OSIE,OSIEK,OSIELEC,OSIELSKO,OSINA MAŁA,OSINÓW DOLNY,OSJAKÓW,OSOWIEC,OSÓWKA,OSÓWKO,OSTROŁĘKA,OSTROSZOWICE,OSTROWICE,OSTROWIEC ŚWIĘTOKRZYSKI,OSTROWITE,OSTROWY,OSTROWY TUSZOWSKIE,OSTRÓW MAZOWIECKA,OSTRÓW WIELKOPOLSKI,OSTRZESZÓW,OSTRZESZÓW II,OŚNO LUBUSKIE,OŚWIĘCIM,OTMUCHÓW,OZORKÓW,OŻAŃSK,OŻARÓW,PACZKÓW,PACZYN,PAJTUNY,PAKOŚĆ,PAPROĆ,PAPROTKI,PASŁĘK,PASTERKA,PASTERZOWICE,PAWŁOWICZKI,PETRYKOZY,PEWEL MAŁA,PEWEL WIELKA,PIASKI,PIASTÓW,PIASZCZYNA,PIEKŁO,PIELGRZYMÓW,PIENIĘŻNO,PIEŃSK,PIERSNA,PIESZKÓW,PIESZOWOLA,PIETRZWAŁD,PIETRZYKÓW,PILASZKOWICE,PILAWA,PILCHOWICE,PILCZYCA,PILICA,PILICH,PILZNO,PIŁA,PIŁAWA,PIŁAWA GÓRNA,PIONKI,PIOTRKÓW TRYBUNALSKI,PIOTROWO,PIÓRKÓW,PISANICA,PISZ,PIWNICZNA,PIWOŃ,PLATERÓW,PLESZEW,PLUCICE,PŁAWNA,PŁAZOWO,PŁOCK,PŁOTNO,PŁOTY,PŁÓCZKI DOLNE,PŁUŻNICZKA,PNIEWO,PNIEWY,POBIEDNA,POBIEDZISKA,PODANIN,PODDĘBICE,PODGÓRZE,PODGRODZIE,PODHAJCE,PODOŚNO,PODZAMEK,POGÓRZE,POKÓJ,POLANA,POLANA CHOCHOŁOWSKA,POLANICA-ZDRÓJ,POLANKI,POLANOWICE,POLANÓW,POLKOWICE DOLNE,POŁANIEC,POŁCZYN-ZDRÓJ,POMORZE,PONIKIEW,POPIELÓW,POPIOŁÓWKA,PORADZ,PORAJ,PORĄBKA,PORĘBA,PORONIN,POSZYNA (KŁAJ),POŚWIĘTNE,POTURZYN,POWAŁCZYN,POWIDZ,POWOJEWO,POZNAŃ,POZNAŃ-ŁAWICA,POŹRZADŁO WIELKIE,PÓŁRZECZKI,PRABUTY,PROSTKI,PRÓSZKÓW,PRUCHNIK,PRUDNIK,PRUSIM,PRUSY,PRUSZKÓW,PRZASNYSZ,PRZEBĘDOWO,PRZECHLEWO,PRZECHODY,PRZEDBÓRZ,PRZEDWOJEWO,PRZEGALINY DUŻE,PRZEGINIA,PRZEJĘSŁAW,PRZELEWICE,PRZEŁOMKA,PRZEMYŚL,PRZERWANKI,PRZESIECZANY,PRZESIEKA,PRZEWALE,PRZEWORNO,PRZEWORSK,PRZYSTAJŃ,PRZYSUCHA,PSTRĄGOWA,PSZCZELA WOLA,PSZCZYNA,PSZENNO,PTAKI,PTASZKOWA,PUCZNIEW,PUŁAWY,PUŁAWY DOLNE,PUŁTUSK,PYRZYCE,RABA NIŻNA,RABA WYŻNA,RABE,RABKA,RACIĄŻ,RACIBÓR,RACIBÓRZ,RACŁAWICE ŚLĄSKIE,RACZKI,RADAWA,RADOM,RADOMICKO,RADOMSKO,RADOMYŚL,RADOMYŚL WIELKI,RADOSTOWO,RADOSZEWICE,RADOSZYCE,RADZIECHOWY,RADZIEMICE,RADZIŁÓW,RADZISZÓW,RADZYŃ,RADZYŃ PODLASKI,RADZYŃ-FIJEWO,RAJCZA,RAKÓW,RANIŻÓW WILKI,RANTY,RASZOWA,RATUŁÓW,REDŁO,REKOWNICA,RESKO,RESKO-SMÓLSKO,RĘBISKA,RĘBISZÓW,RĘDZINY,ROGITY,ROGOŹNO,ROGÓW OPOLSKI,ROKICINY,ROKITNICA,ROKITNO,ROMANY-SEBORY,ROPCZYCE,ROSZKOWICE,ROŚCISZÓW,ROZAJNY,ROZDZIELE,ROZEWIE,ROZOGI,ROZTOKI,ROZTOKI GÓRNE,ROZWORY,ROŻNÓW,RÓG,RÓŻANYSTOK,RÓŻKI-DĘBIE,RUDA,RUDA ŁAŃCUCKA,RUDA OPALIN,RUDA RÓŻANIECKA,RUDNA,RUDNIK,RUDZICA,RUDZIENICE,RULEWO,RUMY,RUNOWO,RUSINÓW,RUSZKOWICE,RUTKA TARTAK,RYBIENKO,RYBNIK,RYBOŁY,RYBOTYCZE,RYCERKA GÓRNA,RYCHLIKI,RYCHTAL,RYCZÓW,RYCZYWÓŁ,RYDUŁTOWY,RYKOSZYN,RYN,RZĄSINY,RZEJOWICE,RZESZÓW-JASIONKA,RZESZYN,RZEWNIE,RZUCÓW,SADKOWICE,SADKÓW,SADOWNE,SAHRYŃ,SAKOWCZYK,SAŁKOWICE,SAMOKLĘSKI,SANDOMIERZ,SANICE,SANOK-TREPCZA,SANTOK,SARNÓWEK DUŻY,SARZYNA,SAWIN,SĄTOPY-SAMULEWO,SEJNY,SEMPÓŁKI,SEROCK,SEROCZYN,SĘDZISZÓW,SĘPOLNO WIELKIE,SĘTAL,SIDORY,SIDZINA,SIEDLCE,SIEDLEC,SIEDLISKA,SIEKIERCZYN,SIEKIERNO,SIELEC,SIELEC STARY,SIEMIANICE,SIEMIANOWICE ŚLĄSKIE,SIEMIATYCZE,SIEMKOWICE,SIENIAWA,SIENIAWKA,SIENNICA,SIEPRAW,SIERADZ,SIERADZ-DZIGORZEW,SIERAKOWO,SIERAKÓW,SIERCZA,SIEROSŁAW,SIERPC,SILNICZKA,SILNOWO,SINOŁĘKA,SKAŁÓW,SKARYSZEW,SKARŻYSKO KAMIENNA,SKĘPE (WYMYŚLIN),SKIERBIESZÓW,SKIERNIEWICE,SKOCZÓW,SKOKI,SKOLANKOWSKA WOLA,SKOMLIN,SKOTNIKI,SKOWIESZYNEK,SKRONIÓW,SKRWILNO,SKRZESZOWICE,SKRZETUSZEWO,SKRZYCZNE,SKWARKI,SKWIERZYNA,SŁAWATYCZE,SŁAWKOWO,SŁAWNO,SŁAWOBORZE,SŁĘBOWO,SŁĘBOWO II,SŁOBITY,SŁOSINKO,SŁOSZÓW,SŁOWIKÓW,SŁUBICE,SŁUCHOWO,SŁUPCA,SŁUPIA,SŁUPIA WIELKA,SŁUPNO,SŁUPSK,SŁUPSK II,SMEREKÓW MAŁY,SMOLANY,SMOLICE,SMOLNIK,SMOŁDZINO,SMUKAŁA,SNOCHOWICE,SOBIEJUCHY,SOBIESIERNIE,SOBIESZYN,SOBLÓWKA,SOBOLICE,SOBÓTKA,SOBÓTKA II,SOCHACZEW,SOCHONIE,SOKOLE,SOKOŁOWICE,SOKOŁOWIEC,SOKÓŁKA,SOLEC NAD WISLĄ,SOLINA-JAWOR,SOŁKI,SOMINY,SOMPOLNO,SOPOTNIA WIELKA,SOSNOWIEC,SOSNOWIEC-JULIUSZ,SOSNOWO,SOŚNICOWICE,SOWIA GÓRA,SPALONA,SPAŁA,SPYTKOWICE GÓRNE,SREBRNA GÓRA,STALOWA WOLA,STANICE,STANISŁAW GÓRNY,STANISŁAWÓW,STANKOWICE,STANOWICE,STANOWISKA,STANY,STAŃCOWA,STARA KAMIENICA,STARA KUŹNIA,STARACHOWICE,STARE DRZEWCE,STARE GUTY,STARE MIASTO,STARE OLESNO,STARE SIOŁKOWICE,STARE STRĄCZE,STARGARD SZCZECIŃSKI,STARNIN,STAROGARD GDAŃSKI,STARY BRZEŚĆ,STARY DZIKÓW,STARY FOLWARK,STASZÓW,STAWIGUDA,STAWISKI,STEGNA,STEPNICA,STĘSZEW,STOPNICA,STRABLA,STRACONKA,STRASZEWO,STRASZÓW,STRONIE ŚLĄSKIE,STRÓŻA,STRUPINA,STRUSZEWO,STRUŻYNA,STRYSZÓW,STRZEGOM,STRZEGOWO,STRZELCE,STRZELCE KRAJEŃSKIE,STRZELCE OPOLSKIE,STRZELIN,STRZELNA,STRZELNO,STRZESZKOWICE,STRZYŻÓW,STUDNICA,STUDZIENICE,STUPOSIANY,STYPUŁÓW,SUCHA BESKIDZKA,SUCHA RZECZKA,SUCHAŃ,SUCHEDNIÓW,SUCHOWOLA,SUKOWICE,SULECHÓW,SULEJÓW,SULEJÓWEK,SULĘCIN,SULĘCZYNO,SULIBOREK,SULIKÓW,SULMIERZYCE,SUŁÓW,SUPRAŚL,SURAŻ,SUWAŁKI,SYCÓW,SYPNIEWO,SZADEK,SZAFLARY,SZALEJÓW GÓRNY,SZAMOCIN,SZAMOTUŁY-BABORÓWKO,SZANIEC,SZCZAWNE,SZCZAWNICA,SZCZAWNO-ZDRÓJ,SZCZEBRZESZYN,SZCZECIN,SZCZECIN-PODJUCHY,SZCZECIN-POGODNO,SZCZECIN-WARSZEWO,SZCZECINEK,SZCZEKARKÓW,SZCZEKOCINY,SZCZEPANOWICE,SZCZEPKOWO BOROWE,SZCZERCÓW,SZCZUCIN,SZCZUCZYN,SZCZURKOWO,SZCZYRK,SZCZYTNO,SZELEJEWO,SZEPIETOWO,SZEROKI BÓR,SZERZYNY,SZKLARSKA PORĘBA,SZOPY,SZPROTAWA,SZRENIAWA,SZTABIN,SZUĆ,SZUDZIAŁOWO,SZUMIRAD,SZYCHOWICE,SZYDŁOWIEC ŚLĄSKI,SZYDŁÓW,SZYMBARK,SZYMONKA,SZYNDZIELNIA,SZYNWAŁD,ŚCIBORZYCE,ŚCIBORZYCE MAŁE,ŚCINAWA,ŚCINAWA MAŁA,ŚLEMIEŃ,ŚLEPIOTY,ŚLIWICE,ŚMIETANOWA,ŚMIŁÓW,ŚNIEŻKA,ŚREM,ŚREM-WÓJTOSTWO,ŚWIBIE,ŚWIDER,ŚWIDNICA,ŚWIDNIK,ŚWIECIE,ŚWIERADÓW ZDRÓJ,ŚWIERADÓW-ZDRÓJ,ŚWIERKI,ŚWIERKLANIEC,ŚWIERZAWA,ŚWIĘTA ANNA,ŚWIĘTAJNO,ŚWIĘTNO,ŚWIĘTY KRZYŻ,ŚWINOUJŚCIE,TACISZÓW,TACZALIN,TARŁÓW,TARNOGRÓD,TARNOSZYN,TARNOWA ŁĄKA,TARNÓW,TĄKIELE,TCZEW,TELEŚNICA OSZWAROWA,TEMESZÓW,TEOFILÓW,TERESPOL,TERKA,TĘPCZ,TLEŃ,TOLKMICKO,TOMARYNY,TOMASZÓW BOLESŁAWIECKI,TOMASZÓW LUBELSKI,TOMKOWO,TONKIELE,TOPOLA-BŁONIE,TOPOLANY,TORUŃ,TOSZEK,TRĄBINEK,TRĄBKI WIELKIE,TROJANOWO,TRZCIANKA,TRZCIŃSKO-ZDRÓJ,TRZEBIATÓW,TRZEBIECHÓW,TRZEBIEL,TRZEBIEŻ,TRZEBNICA,TRZEBOWA,TRZECHEL,TRZEMESZNO,TRZEMEŚNIA,TRZEŚCIANKA,TRZYCIĄŻ,TUCHOLA,TUCHORZA STARA,TUCHÓŁKA,TUCHÓW,TUCZNA,TUCZNO,TUCZNO TRZECIE,TULISZKÓW,TURAWA,TUREK,TUREW,TURKÓW,TUROBIN,TUROŚL,TUROWO,TURZE,TWARDOCICE,TWORÓG,TWORÓG MAŁY,TYCHÓWKO,TYCHY,TYCZYN,TYKOCIN,TYLAWA,TYLICZ,TYMBARK,TYNIEC,TYSZKI-WĄDOŁOWO,UGOSZCZ,UHNIN,UJAZD,UJAZD ŚLĄSKI,UJŚCIE,ULISZKOWICE,UNIEJÓW,UNIEMYŚL,UNIN KOLONIA,UNISŁAW,UNISŁAW ŚLĄSKI,UNISŁAW ŚLĄSKI II,URBANOWICE,USTKA,USTROŃ-CZANTORIA BARANOWA,USTROŃ-RÓWNICA-SCHRONISKO,USTROŃ-RÓWNICA-WIEŚ,USZEW,UŚCIE SOLNE,UŚNICE,WACH,WADOWICE,WAKSMUND,WALASZKÓW,WALEWICE,WALIM,WAŁBRZYCH,WAŁBRZYCH II,WAŁCZ,WAŁY,WANDOWO,WAPIENICA,WAPLEWO,WARNICE,WARNOWO,WARSZAWA,WARSZAWA KABATY,WARSZAWA-BABICE,WARSZAWA-BIELANY,WARSZAWA-CZAJKA,WARSZAWA-CZERNIAKOWSKA,WARSZAWA-FILTRY,WARSZAWA-KAWĘCZYN,WARSZAWA-OBSERWATORIUM,WARSZAWA-OBSERWATORIUM II,WARSZAWA-OKĘCIE,WARSZOWICE,WARTA,WARTA II,WARTÓWKA,WĄBRZEŹNO,WĄSEWO,WĄSOSZ,WĄSOSZ GÓRNY,WEJHEROWO,WERBKOWICE,WERCHLIŚ,WEROBIE,WETLINA,WĘGLINIEC,WĘGLÓWKA,WĘGORZEWO,WĘGRZCE,WIĄZÓW,WICHROWO,WIDAWA,WIDUCHOWA,WIELANOWO,WIELBARK,WIELE,WIELGOLAS,WIELICHOWO,WIELICZKA,WIELKA WIEŚ,WIELKIE OCZY,WIELOPOLE SKRZYŃSKIE,WIELUŃ,WIERZA (WIEWIERZ),WIERZBICA,WIERZBIĘCICE,WIERZBOWO,WIERZCHLAS,WIERZCHOWISKA,WIERZCHOWO,WIERZCHUCIN KRÓLEWSKI,WIERZCHUCINO,WIERZCHY,WIESZOWA,WIEWIECKO,WIĘCŁAWICE,WIKTORZYN,WILANÓW,WILCZA WOLA,WILGA,WILKOWO,WINNA GÓRA,WINNICA,WIŃSKO,WISŁA,WISŁA WIELKA,WISŁA-GŁĘBCE,WISŁA-JAWORNIK,WISŁA-MALINKA,WISŁA-PRZYSŁUP,WISŁA-STOŻEK,WISŁOCZEK,WISŁOK WIELKI,WISZNICE,WIŚLICA,WIŚNIEWO,WITASZYCE,WITNICA,WITNO,WITOSŁAW,WITOSTOWICE,WITÓW,WIZNA,WŁADYSŁAWÓW,WŁOCHÓW,WŁOCHY,WŁOCŁAWEK,WŁODAWA,WODZISŁAW,WODZISŁAW ŚLĄSKI,WOJCIESZÓW,WOJKOWA,WOJKOWICE,WOJNICZ,WOJNOWICE,WOJSŁAWICE,WOLA BATORSKA,WOLA CHOMEJOWA,WOLA KOMBORSKA,WOLA KSIĄŻĘCA,WOLA MIELECKA,WOLA OKRZEJSKA,WOLA WADOWSKA,WOLBROM,WOLIN,WOLNY DWÓR,WOLSZTYN,WOŁOMIN,WOŁOSATE,WOŁOWNIA-JELENIEWO,WOŁÓW,WOŹNIKI,WÓLKA JAGIELCZYŃSKA,WÓLKA KAMIENNA,WÓLKA NIELISKA,WROCIKOWO,WROCŁAW-BISKUPIN,WROCŁAW-OGRÓD BOTANICZNY,WROCŁAW-STABŁOWICE,WROCŁAW,WROCŁAW-STRACHOWICE,WRONKI,WRONOWICE,WRÓBLEWO,WRZEŚNIA,WRZOSKI,WRZOSOWO,WYCZECHY,WYDAWY,WYMYSŁÓW,WYRZYSK,WYSOKA,WYSOKIE,WYSOWA,WYSZKÓW,WYSZOGRÓD,WYSZOWADKA,ZABIELE WIELKIE,ZABŁUDÓW,ZABORZE,ZABUŻE,ZADĄBROWIE,ZAGRODA,ZAGRODNO,ZAKLIKÓW,ZAKŁODZIE,ZAKOPANE,ZAKROCZYM,ZAKRZÓWEK,ZALESIE,ZAMARTE,ZAMBRZYCA,ZAMOSZE,ZAMOŚĆ,ZANIEMYŚL,ZAPĘDOWO,ZARUZIE,ZARZECZE,ZASIEKI,ZATORY,ZAWADA,ZAWADY,ZAWADZKIE,ZAWICHOST,ZAWIERCIE,ZAWODZIE,ZAWOJA,ZAWOJA I,ZAWOJA II,ZAWOJA-PRZYSŁUP,ZĄBKOWICE,ZĄBKOWICE ŚLĄSKIE,ZBĄSZYŃ,ZBICZNO,ZBIERSK,ZBOISKA,ZBROSŁAWICE,ZBYDNIOWICE,ZBYSZYCE,ZDANÓW,ZDUŃSKA WOLA,ZELÓW,ZENDEK,ZĘBOWO,ZGLINNA DUŻA,ZGORZELEC,ZIELENIEC,ZIELINA,ZIELONA,ZIELONA GÓRA,ZIELONKI,ZIĘBICE,ZŁOCZEW,ZŁOTNIKI,ZŁOTNIKI LUBAŃSKIE,ZŁOTORYJA,ZŁOTY POTOK,ZŁOTY STOK,ZUBRZYCA DOLNA,ZUBRZYCA GÓRNA,ZWIERZNO,ZWIERZYNIEC,ZWOLAKI,ZWOLEŃ,ZWONOWICE,ZYBISZÓW,ŹRÓDŁA,ŻABIN,ŻABNICA,ŻABOWO,ŻAGAŃ,ŻALNO,ŻANECIN,ŻARKI,ŻARNOWA,ŻARNOWICA,ŻARNOWIEC,ŻELAZNO,ŻELECHÓW,ŻELEWO,ŻELISTRZEWO,ŻERKÓW,ŻMIGRÓD,ŻMUDŹ,ŻNIN,ŻORY,ŻÓRAWINA,ŻUBRACZE,ŻUROBICE,ŻUROMIN,ŻYCHLIN,ŻYTKIEJMY,ŻYWIEC -0,51.94,54.27,50.07,50.89,49.64,53.84,52.34,53.67,52.17,50.16,51.99,53.05,53.07,54.09,50.09,49.35,53.68,54.24,49.39,52.12,50.5,51.88,54.22,52.86,50.5,52.99,53.97,51.51,49.57,51.77,54.25,52.49,53.74,51.12,51.69,50.85,53.97,54.26,52.23,50.86,51.35,50.38,49.5,49.59,51.2,52.25,53.95,52.0,52.0,53.61,52.03,51.81,52.66,49.39,50.77,54.01,53.1,52.7,53.13,53.64,49.74,53.49,52.94,52.0,52.76,49.82,53.31,51.03,50.09,51.13,50.99,52.96,50.54,53.31,49.69,53.87,52.52,51.99,54.02,51.95,51.55,53.74,49.97,49.85,52.65,50.94,50.91,51.32,51.81,50.65,51.5,51.53,50.76,51.71,53.48,51.26,53.56,51.89,52.73,52.38,50.92,52.94,50.62,52.56,54.19,51.98,53.33,52.11,52.6,53.76,50.28,50.01,51.75,53.98,50.05,54.38,52.77,51.93,49.73,49.7,53.26,53.25,51.79,51.02,53.86,51.72,53.07,50.59,54.49,54.49,53.89,52.14,51.76,50.86,51.26,49.44,52.6,50.94,51.8,50.91,51.56,52.0,49.88,53.57,49.7,52.96,53.05,51.91,50.08,51.55,51.04,52.15,50.39,51.1,51.09,49.97,50.58,54.29,50.5,49.34,50.95,50.26,53.28,53.12,53.1,50.3,53.53,50.37,51.73,50.69,51.73,54.64,51.9,51.86,51.37,50.49,50.37,51.14,50.67,51.34,51.22,50.61,50.37,51.54,51.42,50.45,51.98,52.41,51.11,52.99,52.96,53.7,51.27,52.95,53.26,50.33,50.3,53.17,52.86,50.42,50.08,52.27,50.14,50.66,53.62,52.33,49.43,52.21,52.08,50.86,52.68,52.87,52.88,53.81,49.65,52.57,51.3,53.53,51.25,54.26,50.87,52.28,50.25,49.76,49.79,51.74,49.21,51.44,53.75,52.19,50.95,53.56,51.39,54.36,51.43,53.84,50.81,53.68,51.43,53.56,52.25,49.44,53.67,51.8,51.5,51.51,49.83,52.44,50.32,51.67,52.43,52.46,52.94,53.8,51.96,50.46,50.81,52.05,53.09,53.66,49.44,52.8,50.8,51.73,54.43,53.48,52.09,52.97,53.65,50.17,50.29,52.45,51.87,51.78,52.2,50.05,52.21,51.57,52.74,52.18,52.72,52.29,53.87,54.22,50.25,49.88,52.97,51.92,51.9,53.91,50.73,53.79,50.91,54.12,53.25,51.15,51.9,53.19,49.25,53.12,51.99,53.94,54.31,51.16,53.01,53.39,53.22,53.53,52.84,50.69,51.98,52.21,53.69,51.55,54.29,51.8,51.05,54.06,49.56,51.4,50.37,49.21,54.08,54.13,49.81,53.07,51.67,53.24,51.12,53.57,50.18,53.92,52.99,50.73,50.41,54.03,54.22,54.22,50.51,53.82,51.85,51.13,52.31,53.17,52.15,50.67,54.03,53.7,53.94,53.44,54.36,49.84,50.19,52.02,50.53,51.84,52.03,51.36,53.61,50.41,51.63,52.4,54.36,54.39,54.34,54.38,49.91,54.52,54.46,54.55,52.6,50.22,50.93,53.75,49.71,53.86,53.79,54.04,52.85,52.0,49.68,50.29,50.69,51.29,54.04,51.67,50.35,54.18,50.2,50.32,52.16,50.69,50.99,53.83,52.52,49.9,49.94,50.78,50.78,53.57,49.73,52.94,54.31,51.14,52.79,54.27,49.67,51.22,50.22,52.73,52.57,51.12,53.19,52.42,50.66,52.77,50.54,52.77,51.67,51.98,50.44,53.22,49.77,52.92,54.29,51.63,51.0,50.82,51.53,53.64,53.82,50.57,49.98,50.7,49.8,52.58,52.23,50.16,53.5,54.0,53.06,53.47,51.13,49.71,49.61,53.25,51.03,51.48,54.04,52.43,52.01,53.83,53.7,49.31,51.96,52.94,53.74,49.67,52.73,49.24,49.53,49.23,50.23,51.4,49.54,54.64,50.75,53.54,54.26,50.23,50.81,51.09,49.89,49.98,51.41,53.32,50.09,53.6,52.34,52.34,51.16,50.97,52.78,49.86,53.44,49.57,49.6,51.67,49.59,49.57,49.57,51.65,51.04,49.82,49.57,50.89,52.42,49.76,51.92,52.38,53.46,53.03,50.17,50.82,50.32,50.32,50.81,50.82,53.01,52.15,53.88,52.44,52.76,50.72,50.71,51.38,51.81,50.72,52.36,50.28,53.16,51.97,50.04,51.46,49.72,51.6,49.75,54.71,53.42,52.35,53.22,49.95,53.73,50.72,51.0,53.81,49.44,49.96,51.07,49.42,49.53,51.38,49.71,50.72,53.14,51.04,50.9,53.56,53.78,52.31,52.09,51.89,51.81,54.34,50.64,50.66,50.33,50.9,49.88,50.65,49.65,50.48,53.01,53.68,54.32,50.63,52.74,51.63,50.6,53.23,53.75,51.75,52.74,49.87,49.57,50.44,50.52,51.01,50.78,53.53,53.97,51.95,49.74,51.93,49.98,52.07,50.91,50.76,53.95,53.35,53.35,53.83,54.33,54.49,53.74,49.24,54.15,50.47,50.24,50.24,52.4,51.32,50.26,54.34,51.03,50.34,52.31,50.63,51.28,54.08,49.88,50.81,51.24,50.08,53.99,53.99,53.61,52.84,52.57,52.07,49.52,50.66,51.5,53.52,52.04,52.14,54.24,50.9,50.44,52.26,50.43,51.0,54.19,50.06,50.8,50.8,50.71,49.74,51.64,51.91,50.24,53.4,50.7,51.01,52.2,54.16,54.16,52.71,52.73,49.34,51.95,52.83,49.55,50.77,50.79,52.23,52.16,53.18,51.19,50.89,50.53,53.79,51.54,49.58,50.49,50.49,53.31,51.67,53.75,52.65,52.06,53.97,53.36,51.57,52.62,54.19,54.04,49.64,49.67,52.08,52.08,49.27,51.78,51.62,54.12,51.9,52.1,54.16,52.74,49.5,50.78,51.12,51.58,51.94,49.95,51.83,51.8,51.75,52.25,53.3,50.07,50.08,52.0,50.05,50.05,50.0,50.06,52.27,50.47,49.78,51.36,52.08,52.92,50.99,50.89,51.52,54.08,50.94,49.72,49.51,50.76,51.15,49.69,52.05,49.48,51.37,51.7,50.33,50.57,51.58,51.58,53.03,54.38,49.42,53.23,53.28,50.21,51.18,51.86,50.97,52.0,50.14,50.4,52.58,53.08,53.16,52.0,49.59,53.87,50.44,53.97,51.33,50.45,50.45,53.31,50.81,54.23,53.18,51.01,52.95,49.27,50.42,51.17,52.0,53.47,52.5,49.53,51.31,50.04,52.96,52.37,50.35,54.2,52.4,51.2,54.32,50.68,53.38,49.47,49.79,49.51,51.84,51.02,52.3,50.43,50.41,50.27,54.53,50.6,49.97,53.26,54.13,49.33,50.97,51.23,50.02,49.71,52.11,52.4,54.22,50.31,49.7,49.48,49.79,50.73,54.35,53.76,54.46,50.94,51.83,52.46,53.55,50.77,50.16,52.74,52.34,51.46,49.55,53.5,51.53,50.9,51.4,51.89,52.55,51.4,52.24,51.22,50.67,52.51,51.61,51.01,52.62,54.07,52.16,49.65,52.39,51.79,51.89,49.86,52.33,51.5,49.25,53.03,54.01,50.35,51.67,52.54,52.95,49.53,50.48,50.53,50.07,49.86,49.4,53.52,51.59,52.78,52.13,50.43,54.52,51.3,54.76,52.92,51.3,51.18,51.55,53.97,54.13,53.26,49.73,51.46,51.9,52.12,49.48,52.21,50.79,52.1,50.48,52.3,51.72,51.72,51.77,53.4,50.45,52.29,50.42,51.3,51.93,54.28,49.27,51.98,50.26,52.27,49.18,50.38,50.84,52.12,50.27,49.73,54.03,54.42,51.22,50.81,53.58,50.8,53.81,52.43,52.32,53.5,50.95,51.0,49.86,53.4,50.05,53.09,52.81,54.0,52.4,52.91,52.37,52.37,50.36,54.11,50.36,52.08,50.28,53.14,54.26,50.67,52.79,51.4,49.79,50.23,50.15,51.98,52.44,53.89,52.72,52.63,53.8,50.2,54.42,53.81,51.83,53.94,51.35,51.53,49.56,53.51,50.89,50.07,54.01,54.4,51.17,54.4,53.34,50.97,49.46,53.13,50.3,53.88,50.55,51.37,52.77,51.56,52.65,50.16,52.66,51.62,53.41,50.08,52.21,49.2,52.86,52.25,50.91,51.5,51.12,53.87,51.14,51.1,49.68,51.97,50.2,49.36,49.43,50.84,52.1,50.56,53.38,49.83,52.92,53.28,50.68,52.32,51.29,51.08,52.73,52.0,52.84,50.35,49.41,50.91,53.61,52.23,52.51,50.8,50.72,50.64,52.27,50.17,52.11,54.2,54.14,50.92,53.14,53.84,50.46,50.5,52.6,50.92,52.65,50.24,54.43,50.57,50.54,50.86,51.8,52.16,50.46,52.16,53.03,54.18,54.18,53.0,49.34,49.31,52.83,52.66,54.26,53.67,51.2,53.23,51.8,52.97,50.06,53.18,49.51,53.48,53.24,53.93,52.43,50.5,50.3,53.35,50.29,53.65,49.61,54.13,49.5,54.13,49.92,49.6,52.62,50.47,49.55,51.12,50.95,50.96,51.3,52.65,52.66,50.32,49.84,49.53,49.51,53.81,51.57,51.52,53.81,50.21,51.26,53.53,50.73,54.07,54.04,50.88,51.23,52.52,50.28,54.1,53.67,53.78,52.12,50.96,50.36,50.56,52.31,50.24,50.7,52.18,52.21,51.38,50.67,51.15,54.12,50.57,53.68,50.14,52.68,52.03,53.81,53.16,53.6,50.52,49.67,53.19,51.25,52.85,51.29,52.93,52.88,53.49,53.08,50.64,53.64,50.95,53.44,51.36,50.32,52.81,51.65,51.43,51.43,52.46,50.03,50.47,51.96,50.02,50.89,50.46,50.74,54.26,52.81,49.73,53.93,54.06,50.49,51.6,50.24,52.77,49.66,49.66,50.15,52.19,54.02,53.79,50.18,54.24,51.25,51.63,51.34,51.5,53.57,52.2,51.0,51.96,50.22,50.94,50.47,52.49,49.98,53.15,51.96,50.68,51.47,51.41,52.98,50.8,53.86,53.63,49.44,50.48,52.3,51.9,51.2,50.83,53.53,52.55,53.09,53.8,51.1,50.47,52.59,52.51,50.94,52.48,52.95,51.89,50.49,50.9,50.53,52.47,50.43,49.8,50.9,53.87,49.24,50.4,53.34,51.89,54.12,51.5,50.43,53.76,54.25,49.83,50.82,53.39,53.94,50.68,53.7,50.49,49.34,50.04,53.55,50.56,53.64,52.41,53.78,52.41,52.41,53.37,49.66,53.76,53.7,50.58,49.91,50.32,53.78,51.82,52.17,53.02,52.59,53.8,53.14,51.09,52.92,51.83,50.24,51.36,53.03,54.26,49.78,54.13,51.21,52.49,50.62,50.69,50.05,50.88,51.36,49.94,51.11,49.98,50.86,52.05,49.6,51.78,51.43,49.49,52.71,53.15,49.64,49.56,49.36,54.75,52.78,51.95,50.09,50.31,53.99,50.13,51.4,51.95,51.07,52.03,50.2,53.45,52.37,51.07,49.65,50.25,53.41,49.94,52.2,51.78,53.4,49.5,50.68,50.25,53.93,50.39,49.37,53.77,53.47,53.76,53.76,54.44,50.95,50.97,54.39,52.75,50.52,54.33,52.18,50.48,53.11,50.05,51.11,50.71,53.66,49.46,54.83,53.79,50.19,49.15,53.09,51.05,54.11,53.64,51.05,50.31,50.32,51.25,50.32,51.45,50.15,49.86,53.63,53.55,53.76,52.79,52.29,51.34,54.32,54.68,50.1,52.93,49.66,49.47,53.99,51.15,50.42,51.69,50.07,50.86,53.94,51.08,51.09,50.11,52.55,52.84,51.28,51.72,51.4,52.64,50.68,50.89,54.06,51.45,50.68,51.41,49.59,52.74,51.01,50.34,51.27,54.07,54.11,51.94,52.51,52.57,50.56,53.95,53.9,54.03,49.61,52.16,50.14,53.84,51.12,50.98,50.53,50.53,54.5,50.31,52.42,51.2,50.18,50.9,52.09,49.91,51.6,51.61,52.78,52.65,49.97,52.4,52.85,50.92,53.63,52.22,51.8,51.31,51.12,52.87,50.85,51.96,49.8,52.67,50.73,51.17,51.86,51.32,50.63,53.02,50.19,52.55,49.68,52.98,52.6,51.76,54.04,54.36,53.89,52.85,52.85,54.14,53.94,50.41,51.46,52.36,54.78,52.29,54.29,52.22,52.39,54.46,54.47,49.45,54.18,52.1,51.52,54.66,53.19,50.95,52.91,52.38,51.59,49.44,51.8,50.9,51.78,52.24,53.21,53.08,51.99,51.04,53.4,51.13,49.4,52.35,54.04,52.39,49.59,50.28,50.27,53.72,50.27,52.7,50.28,51.54,49.99,50.58,50.57,50.01,49.91,52.29,51.02,50.97,50.98,51.85,49.54,50.92,50.23,51.04,51.77,53.61,50.06,50.91,50.8,51.85,53.31,53.97,53.97,52.62,50.25,54.08,50.56,53.66,53.38,54.33,53.65,52.28,50.44,52.9,50.84,53.09,51.29,50.29,50.9,51.39,54.18,50.7,49.83,50.96,52.89,52.68,52.88,50.51,50.78,51.81,52.63,50.53,49.87,54.04,51.49,49.19,51.7,49.73,53.89,53.28,51.05,53.58,50.26,52.09,51.35,52.24,52.44,54.23,53.29,51.08,51.62,51.5,53.21,52.95,54.1,51.31,53.01,51.69,49.42,50.43,53.03,52.59,50.52,49.4,49.43,50.8,50.69,53.43,53.36,53.45,53.46,53.7,51.24,50.63,51.23,53.3,51.33,50.31,53.56,54.36,49.7,53.56,52.73,52.87,53.62,49.81,50.81,49.75,51.57,51.93,53.68,53.51,53.3,50.84,50.68,50.68,50.59,53.65,53.89,49.75,53.58,50.3,50.27,51.42,50.42,49.72,52.69,51.13,49.63,52.11,50.74,51.64,52.08,50.51,51.99,50.84,51.22,53.41,50.92,50.92,54.13,50.44,51.01,49.57,54.0,52.01,50.86,53.91,50.37,51.16,51.0,50.36,50.42,51.76,50.03,51.72,54.09,49.38,49.69,51.46,52.08,49.3,54.51,53.61,54.32,53.73,51.26,50.45,53.15,52.41,52.08,53.02,53.01,50.46,52.0,54.17,52.76,53.04,52.97,54.06,52.02,51.64,53.65,51.31,51.81,53.73,52.56,49.82,52.94,50.31,53.59,52.19,53.57,49.9,51.88,53.19,53.19,52.08,50.74,52.02,52.06,50.01,50.82,53.39,53.91,52.33,51.1,50.53,50.26,53.89,50.11,49.96,53.21,49.46,49.4,49.73,50.02,53.45,53.04,51.58,51.6,52.0,53.05,54.27,51.97,50.63,51.91,51.77,50.71,50.71,50.3,54.57,49.7,49.72,52.0,49.92,50.12,53.96,53.29,49.88,49.48,49.76,51.42,50.7,50.77,50.76,53.27,53.43,53.68,49.81,53.91,53.25,53.71,52.17,52.13,52.26,52.28,52.3,52.21,52.23,52.25,52.22,52.0,52.17,49.99,51.72,50.82,49.65,53.28,52.87,53.52,51.05,54.61,50.75,52.19,53.1,49.16,51.29,50.52,54.21,51.48,50.81,54.03,51.44,50.49,53.87,53.4,53.71,52.04,52.12,49.98,50.16,50.03,49.95,51.22,52.0,51.25,50.42,53.81,53.52,51.02,53.86,53.31,54.79,51.81,50.38,53.52,52.63,53.19,52.15,50.36,49.97,54.27,50.85,52.68,51.47,52.38,49.95,49.62,49.67,49.63,49.61,49.6,49.5,49.41,51.79,50.35,53.56,51.94,52.67,53.94,51.95,50.68,52.23,53.19,52.1,51.52,52.19,52.66,51.54,50.52,50.0,50.96,50.99,50.37,49.96,50.94,50.92,50.05,51.78,49.74,51.95,50.28,51.75,50.27,50.38,53.91,54.08,52.12,52.35,49.06,54.2,51.34,50.59,51.68,52.07,50.81,53.82,51.1,51.12,51.14,51.11,51.11,52.71,50.68,52.67,52.33,50.68,54.11,53.69,51.56,52.21,53.16,53.18,54.64,49.43,52.59,51.2,52.0,53.08,53.01,53.8,52.31,51.62,50.98,51.19,50.76,53.73,49.3,52.43,50.95,51.76,53.6,52.98,52.81,50.72,52.16,53.7,53.14,49.91,51.73,52.61,53.85,52.73,50.61,50.81,50.48,52.33,49.66,49.68,49.68,49.19,50.38,50.59,52.25,53.34,51.95,51.98,50.42,49.97,49.71,50.71,51.59,51.47,50.5,54.45,51.85,51.15,52.41,50.44,53.06,51.94,50.35,50.6,51.42,52.49,51.01,51.12,50.71,50.45,49.53,49.56,54.04,50.61,50.5,52.43,50.14,51.06,51.19,52.94,49.58,53.72,51.62,54.04,52.39,50.63,49.88,50.3,50.48,50.37,51.81,53.29,54.68,52.07,51.47,51.02,52.85,50.04,50.98,49.21,52.52,53.07,52.24,54.35,49.71 -1,20.48,23.11,19.54,21.86,19.88,22.98,18.67,21.26,15.83,17.99,17.56,22.98,22.11,22.65,19.79,22.29,19.28,22.04,19.98,20.47,21.54,17.75,21.35,17.95,16.73,15.22,22.97,16.77,21.33,20.92,20.81,19.24,16.35,19.67,21.35,22.49,19.36,21.98,20.01,20.03,19.38,23.44,20.97,21.96,23.27,15.47,20.99,20.0,20.0,22.06,23.15,20.47,14.94,20.11,23.15,15.97,17.12,23.85,23.15,22.61,21.31,19.39,14.15,20.0,23.19,19.04,18.34,15.12,19.09,17.54,17.75,19.89,22.71,14.65,22.48,20.96,15.41,16.3,16.84,15.09,21.93,22.35,20.43,20.28,23.04,20.96,14.95,19.57,21.0,21.26,21.57,19.83,16.2,16.75,20.41,15.57,14.68,17.31,14.57,16.07,16.1,23.75,19.77,20.66,20.06,20.73,20.39,19.07,18.73,16.03,20.8,18.65,20.63,18.23,17.79,19.82,22.83,19.65,18.92,18.9,19.41,19.41,14.77,21.2,18.76,14.68,19.87,18.81,16.88,16.91,17.72,20.72,19.98,17.46,16.72,22.62,18.9,21.05,19.74,21.34,21.63,20.0,21.41,18.1,22.02,18.69,19.26,15.36,19.88,15.91,15.72,15.09,21.66,16.46,16.43,21.98,16.69,20.4,23.6,20.11,21.14,19.44,22.45,18.0,17.98,16.65,19.74,18.87,15.83,21.22,16.02,17.54,18.3,21.36,21.7,20.81,19.51,23.49,16.07,17.5,20.15,20.75,20.34,16.45,15.9,16.49,17.87,19.03,22.14,16.92,14.43,17.57,15.94,15.66,20.9,21.44,18.95,15.42,23.2,20.56,19.72,16.0,19.4,18.07,17.23,17.73,19.67,17.81,23.12,15.98,22.5,20.61,18.8,17.41,21.39,20.67,17.21,22.55,21.57,19.34,15.68,21.85,23.13,18.66,20.97,16.97,22.33,19.57,23.09,14.8,19.18,16.23,18.63,17.56,21.44,18.1,19.93,16.94,21.7,22.21,20.54,19.85,23.07,17.45,18.5,17.38,20.67,22.44,19.08,22.64,17.49,17.39,18.94,17.98,16.78,20.77,19.11,21.44,16.12,17.36,20.33,22.31,20.81,20.69,16.4,15.04,18.82,20.28,23.35,20.99,21.14,19.36,19.13,20.73,21.44,21.41,15.59,21.86,14.7,18.9,22.96,18.61,22.65,19.98,16.63,20.09,15.75,18.62,14.9,19.84,18.44,16.66,16.24,19.94,21.8,19.41,20.31,15.2,19.81,17.98,17.07,16.95,20.92,23.8,20.25,23.56,15.76,15.81,15.83,18.81,20.82,16.82,22.11,19.29,22.56,23.19,23.89,23.46,21.68,15.89,16.38,22.64,19.26,15.72,22.24,21.77,19.01,20.18,18.87,19.62,19.22,19.35,16.21,16.66,17.08,14.75,19.55,19.55,20.74,22.36,21.0,20.1,20.35,23.06,22.82,22.67,20.75,18.55,20.6,20.33,19.68,21.61,23.06,19.54,16.41,20.59,20.82,23.11,18.95,21.38,15.88,19.73,18.69,18.45,18.93,18.61,20.2,18.54,18.46,18.54,18.04,18.73,15.4,20.23,19.31,19.66,22.51,21.77,20.33,20.0,21.17,18.67,17.49,23.1,17.2,16.06,17.86,21.1,17.83,17.38,19.66,16.37,16.83,18.83,17.6,20.61,18.97,17.74,17.74,14.83,18.74,17.3,22.3,18.2,20.69,18.16,21.16,19.6,20.5,15.24,15.9,20.76,16.43,19.46,17.64,15.71,17.14,14.32,16.54,21.21,16.43,23.68,18.85,17.57,20.49,15.92,15.2,23.55,17.38,22.46,21.95,21.87,20.27,17.38,18.87,22.74,16.36,22.46,18.36,21.96,20.63,18.76,21.62,20.2,20.95,14.49,15.41,16.51,19.71,16.53,20.85,16.43,16.03,19.94,14.74,21.27,17.19,21.89,23.57,20.01,19.22,19.86,18.86,23.41,19.83,18.79,18.85,23.23,18.24,23.37,23.89,23.25,22.35,22.29,19.47,23.09,20.24,19.58,20.03,20.03,21.24,16.57,18.25,19.4,15.55,18.89,18.9,16.53,18.94,18.89,18.93,18.33,17.08,20.59,21.79,23.15,18.76,22.09,18.98,20.92,20.03,22.75,20.73,15.62,20.0,20.01,21.67,15.43,23.91,19.21,21.11,16.62,17.49,19.44,22.41,20.22,21.96,15.9,21.99,17.43,22.0,17.5,22.66,19.68,20.82,14.85,21.49,18.66,16.82,19.35,19.52,18.6,23.23,21.18,18.46,19.73,21.8,19.14,16.2,20.9,20.52,21.57,21.64,16.34,21.05,17.35,15.73,20.3,19.53,16.59,21.11,22.42,19.97,16.4,20.3,20.26,23.33,22.95,21.31,16.61,19.84,23.05,23.13,16.49,20.89,16.51,20.15,16.3,18.28,21.46,17.8,18.08,22.92,19.68,19.05,20.8,16.87,21.23,16.02,17.52,14.77,20.53,19.88,14.92,22.41,15.86,18.56,15.75,17.42,16.4,16.4,15.64,18.2,17.23,18.36,19.97,20.33,19.07,19.03,19.03,17.56,21.95,20.53,19.23,16.77,18.21,18.32,21.49,17.99,21.37,19.23,20.69,18.99,18.0,20.86,20.86,19.26,23.4,23.33,17.42,19.99,21.45,16.36,19.95,16.37,21.54,17.9,18.94,16.8,18.91,16.64,16.14,19.15,18.93,18.1,19.37,18.69,19.26,22.45,23.6,21.78,21.94,22.9,23.11,18.64,15.39,15.39,18.03,18.15,22.07,23.35,21.85,18.94,19.68,20.03,18.25,16.54,18.55,20.41,15.55,20.5,17.48,17.5,19.34,17.6,17.6,17.94,18.32,18.87,20.26,14.76,16.84,19.91,20.73,14.63,16.18,16.27,19.4,19.45,16.65,16.64,19.87,18.01,18.64,17.98,20.89,16.49,22.42,19.89,20.04,15.84,22.78,21.55,19.58,20.04,17.45,18.34,15.59,17.09,16.99,19.92,19.81,20.0,20.01,19.83,19.93,19.87,18.43,17.97,22.65,22.46,22.87,20.97,23.17,20.12,18.22,20.54,22.21,22.21,21.5,19.18,21.55,21.75,15.1,22.67,16.94,17.44,16.91,18.62,19.59,21.17,23.59,19.44,20.97,23.03,22.87,18.65,18.76,16.83,18.73,19.1,19.63,22.34,15.01,15.49,20.79,20.0,22.22,22.7,20.14,20.07,17.08,16.25,16.25,19.52,17.88,19.75,22.17,21.37,16.51,19.98,21.03,16.47,20.0,22.02,22.82,19.01,19.56,20.02,23.28,20.08,16.87,20.27,20.93,16.17,20.22,19.62,21.13,22.33,19.44,22.54,16.58,15.26,15.99,18.18,16.29,22.42,17.74,19.24,19.9,19.82,20.56,19.95,18.26,17.05,18.27,20.42,15.83,19.42,20.76,18.9,20.87,19.63,20.08,17.43,19.98,22.68,18.49,16.35,18.4,22.63,14.96,16.43,23.12,18.92,16.87,22.61,21.76,19.74,19.78,17.57,16.2,15.88,15.7,16.2,15.57,22.4,18.68,15.24,20.05,15.51,20.76,20.24,17.2,19.99,18.63,14.97,19.38,20.82,15.72,19.57,22.7,15.17,20.9,18.63,18.59,18.44,17.92,20.86,20.75,20.19,22.23,20.29,20.24,19.09,19.13,17.25,17.95,19.39,16.61,15.57,17.53,20.39,22.89,16.89,14.75,21.14,17.23,17.25,19.14,20.14,23.18,17.85,20.13,22.72,17.57,19.95,16.8,22.49,19.36,19.36,19.55,23.23,18.65,20.6,18.69,17.28,22.37,17.59,20.12,19.91,19.27,14.75,22.66,21.75,23.66,22.88,18.77,19.68,19.04,17.38,16.49,20.26,20.72,19.32,21.14,18.27,18.46,15.06,23.97,21.92,18.99,17.81,19.37,22.47,16.17,16.98,21.44,22.48,16.35,16.39,20.03,15.75,20.03,20.3,21.46,16.26,16.05,16.19,14.5,17.67,19.19,16.77,16.67,22.79,15.58,23.4,23.32,19.92,21.58,18.85,17.58,21.92,19.98,17.57,19.71,17.28,19.09,16.34,21.38,21.97,18.92,18.03,17.16,16.94,16.09,15.39,20.3,20.36,16.55,21.33,20.72,20.87,19.55,18.14,19.18,18.13,17.95,21.06,22.8,19.75,22.52,20.07,14.4,16.85,19.79,19.68,18.45,21.31,20.71,16.03,20.08,20.51,19.04,20.9,22.41,15.79,20.01,19.32,21.34,19.94,14.87,19.0,20.11,17.15,22.21,17.72,21.1,20.0,23.76,23.33,20.3,15.39,21.83,15.31,21.39,23.05,16.84,17.62,22.7,16.56,20.45,17.88,17.42,19.31,17.16,21.3,20.73,18.16,16.31,21.22,20.1,16.9,19.77,16.51,16.56,21.09,15.71,20.18,20.83,17.6,16.75,20.51,20.51,23.63,19.92,19.9,23.9,20.63,19.72,15.12,15.4,21.88,15.24,23.89,22.4,23.52,22.03,23.4,22.15,19.89,20.71,20.68,16.97,18.03,23.09,20.58,20.71,19.01,20.04,18.35,20.46,21.52,23.13,17.33,20.02,17.74,20.48,20.45,16.91,16.81,16.83,22.96,18.75,20.32,20.25,18.31,17.67,20.56,22.1,19.83,15.79,16.85,20.1,16.95,22.49,18.42,18.64,18.98,19.56,23.4,21.0,20.48,23.38,17.29,16.71,19.74,16.41,20.72,15.9,19.07,19.12,20.29,17.92,21.97,20.13,16.62,22.84,18.77,23.54,21.09,21.95,21.73,18.35,21.44,19.77,18.08,18.96,14.14,18.79,22.26,22.92,19.24,21.57,16.64,15.97,21.41,20.1,21.54,21.66,21.88,17.8,17.93,17.94,14.87,19.26,17.17,19.29,22.57,21.67,17.01,15.92,20.17,18.09,20.35,21.8,19.66,16.33,15.56,18.05,19.87,19.28,19.35,19.48,20.85,17.17,19.72,17.66,20.13,15.04,16.28,16.23,23.16,19.92,17.74,22.83,21.53,18.56,19.9,19.66,18.3,21.29,16.74,21.53,16.75,21.45,19.69,21.93,21.17,22.41,21.81,20.71,19.25,22.82,17.79,19.6,17.09,17.94,19.7,15.3,15.27,15.55,18.49,20.84,16.26,15.3,17.29,16.94,18.95,20.86,21.55,23.74,14.82,16.74,18.84,17.84,17.98,19.79,16.51,23.34,14.69,16.69,16.05,21.28,16.1,18.11,19.45,17.74,23.12,15.62,19.21,15.98,19.33,20.01,20.37,23.1,23.94,21.18,17.92,16.92,16.73,16.73,15.88,20.22,19.2,22.43,17.87,22.52,17.58,15.43,21.18,20.8,20.88,17.02,17.26,23.46,19.87,20.66,22.89,19.7,15.41,16.11,22.79,22.79,21.92,15.15,22.58,23.62,17.17,22.5,18.69,20.63,21.76,22.5,18.94,16.54,21.65,20.89,19.09,21.99,21.91,21.08,14.89,20.03,19.88,22.67,17.52,20.12,20.91,18.22,17.77,22.78,22.77,21.15,16.54,19.45,22.36,21.28,21.21,18.72,20.26,19.15,20.23,22.41,19.81,18.99,22.62,18.93,19.1,21.04,21.98,22.04,18.18,19.9,15.97,20.81,15.39,15.39,18.32,15.45,19.63,19.87,16.99,17.94,17.72,15.39,23.78,20.86,21.61,18.26,16.54,19.04,20.98,18.34,21.13,16.67,22.31,21.74,18.14,17.65,23.41,18.92,18.85,22.35,23.6,23.18,16.28,18.17,18.89,19.66,18.61,20.92,17.05,15.53,20.66,22.97,18.07,18.54,23.26,22.64,19.03,19.53,17.85,19.59,21.42,18.42,20.41,21.54,15.45,19.7,22.04,18.32,21.34,20.74,20.51,21.22,21.85,23.79,15.94,19.78,22.42,21.75,14.98,22.19,15.41,21.44,22.34,23.44,21.03,23.35,18.82,21.07,22.35,20.05,16.78,20.48,22.75,19.73,22.28,19.68,22.32,15.19,20.95,20.13,20.13,17.06,19.02,22.88,18.9,22.61,14.84,21.62,19.97,18.74,18.71,20.16,16.08,20.04,16.68,19.66,19.76,16.49,21.9,17.39,21.25,20.88,19.34,23.37,20.14,18.79,17.15,21.2,18.39,19.49,22.01,20.25,19.62,20.14,17.35,19.03,22.8,15.5,23.56,21.39,16.68,15.71,17.61,17.6,19.78,16.98,16.37,20.88,14.57,17.97,17.87,17.32,17.22,21.15,17.03,17.02,19.16,23.2,19.05,17.02,17.22,17.97,20.3,17.71,17.6,22.16,19.14,15.32,16.74,17.86,20.26,23.17,23.51,16.42,15.82,23.5,21.77,22.45,21.71,17.64,18.5,19.3,19.13,19.22,22.98,18.53,15.84,16.53,20.14,19.51,16.66,22.06,18.13,19.63,21.55,15.32,17.26,19.92,15.78,19.54,15.57,18.86,21.08,16.21,21.92,19.94,18.35,17.77,16.14,15.03,15.46,18.53,18.9,22.93,23.08,21.17,20.4,22.15,19.11,14.63,16.7,20.94,23.09,16.32,23.73,19.7,16.87,21.64,16.81,17.36,17.19,19.63,16.35,20.29,18.1,15.53,18.3,17.07,19.93,18.17,20.28,21.79,16.91,20.89,22.68,15.55,19.58,23.19,15.32,20.84,23.11,18.17,15.63,19.89,21.28,15.12,17.77,15.55,15.06,17.53,17.17,23.34,22.96,22.93,17.72,21.31,18.98,20.03,16.54,17.12,16.63,20.69,22.15,20.48,16.22,22.98,14.55,14.59,14.49,14.54,16.71,21.86,19.82,19.63,20.58,19.11,21.08,22.29,20.9,19.01,21.0,17.75,22.55,21.64,21.25,15.45,22.58,15.54,16.06,23.1,20.73,23.65,18.24,23.98,17.61,21.0,19.49,21.66,19.0,19.1,19.91,17.78,16.43,17.55,19.37,21.59,17.21,19.92,17.57,15.74,15.93,17.03,18.54,21.93,16.49,22.69,18.45,15.31,15.31,19.08,18.94,15.89,20.59,22.32,16.05,21.05,14.25,18.53,16.3,21.72,22.74,23.79,16.62,20.96,20.82,18.78,22.54,22.22,19.36,23.62,22.43,18.04,18.27,19.53,20.22,15.68,23.43,19.22,22.57,19.18,23.51,18.6,18.52,17.1,18.54,22.52,16.46,14.61,15.27,15.74,14.82,14.51,17.06,17.67,14.97,17.82,20.02,23.45,19.77,17.86,16.05,17.75,21.05,23.42,16.15,16.19,18.29,18.08,18.51,16.83,17.87,22.74,21.73,22.76,21.49,15.77,18.72,18.46,16.07,19.0,22.03,22.77,21.69,21.02,20.32,19.81,21.98,19.23,23.04,19.92,20.0,16.73,17.12,18.79,16.04,21.67,17.37,16.25,16.25,18.03,16.86,18.8,18.85,20.0,20.6,20.51,18.92,21.37,19.49,20.08,19.34,19.13,16.44,16.28,16.28,16.48,20.64,19.06,18.98,19.24,14.99,21.62,20.99,21.07,20.92,20.96,20.95,21.05,21.0,21.13,21.03,20.0,20.99,18.72,18.65,19.15,19.65,18.94,21.67,22.32,19.01,18.23,23.75,23.28,23.81,22.47,15.22,16.71,21.74,16.58,17.2,20.46,18.94,20.79,16.32,20.95,16.39,21.73,16.35,20.06,19.84,23.16,21.61,18.57,20.0,21.08,17.43,21.33,18.1,16.8,16.61,17.78,18.0,18.89,18.77,15.63,19.42,22.22,21.11,21.91,19.97,21.73,16.78,19.51,16.61,20.05,18.85,18.88,18.85,18.92,18.97,18.82,21.87,21.98,23.21,20.67,19.86,17.57,14.9,15.06,16.7,17.04,19.26,22.38,18.47,14.91,20.95,19.07,23.53,20.19,18.45,15.93,15.32,19.04,20.84,19.52,23.55,20.27,22.45,21.89,17.6,21.39,22.14,21.19,19.76,14.52,18.43,16.11,21.24,22.68,22.95,16.65,19.06,20.18,22.53,23.09,20.67,17.07,17.05,16.88,16.88,16.88,16.37,23.72,16.31,17.57,17.82,15.82,17.04,16.95,19.16,17.26,17.08,17.89,21.2,21.46,17.47,20.0,21.35,23.34,16.14,23.04,21.23,16.11,15.86,22.1,15.02,19.95,20.61,22.38,18.92,17.99,19.63,23.91,23.26,17.17,17.84,21.8,18.82,14.67,21.18,21.38,23.08,18.48,21.85,19.43,17.54,19.56,19.61,19.61,22.38,19.27,16.81,15.92,19.38,18.12,20.57,18.75,19.96,20.67,21.55,18.95,19.22,19.09,16.89,20.18,15.01,19.32,17.79,23.84,15.51,20.92,17.04,18.61,16.85,15.34,15.92,19.44,16.88,19.67,19.65,19.34,22.97,22.33,19.56,18.44,16.91,18.56,21.58,19.15,15.19,15.3,15.65,22.26,19.36,21.82,19.93,19.86,16.67,21.9,14.87,18.42,17.56,16.91,23.67,17.72,18.68,17.04,22.27,22.94,19.91,19.63,22.7,19.22 -2,180.0,213.0,264.0,168.0,540.0,125.0,106.0,147.0,58.0,241.0,117.0,122.0,155.0,173.0,230.0,490.0,101.0,121.0,768.0,96.0,150.0,128.0,61.0,91.0,334.0,85.0,158.0,88.0,640.0,142.0,55.0,114.0,133.0,241.0,119.0,279.0,14.0,105.0,94.0,243.0,205.0,281.0,529.0,278.0,204.0,106.0,165.0,120.0,120.0,143.0,142.0,163.0,13.0,707.0,202.0,23.0,85.0,163.0,134.0,114.0,295.0,109.0,0.0,120.0,143.0,344.0,22.0,295.0,240.0,157.0,167.0,115.0,195.0,55.0,329.0,155.0,62.0,61.0,188.0,63.0,117.0,128.0,198.0,265.0,145.0,296.0,251.0,201.0,129.0,255.0,153.0,182.0,570.0,101.0,168.0,182.0,-1.0,125.0,52.0,84.0,352.0,143.0,261.0,93.0,57.0,169.0,176.0,113.0,90.0,154.0,168.0,277.0,176.0,127.0,318.0,0.0,140.0,154.0,593.0,600.0,81.0,81.0,94.0,223.0,42.0,80.0,127.0,276.0,37.0,37.0,149.0,94.0,173.0,145.0,120.0,488.0,80.0,301.0,203.0,224.0,107.0,120.0,247.0,118.0,294.0,41.0,120.0,108.0,207.0,130.0,395.0,73.0,173.0,151.0,153.0,204.0,369.0,114.0,229.0,848.0,247.0,304.0,118.0,68.0,68.0,360.0,129.0,282.0,82.0,312.0,68.0,3.0,123.0,94.0,163.0,252.0,318.0,182.0,508.0,216.0,230.0,237.0,225.0,95.0,148.0,484.0,87.0,121.0,180.0,95.0,25.0,163.0,150.0,71.0,125.0,163.0,286.0,56.0,133.0,177.0,245.0,75.0,286.0,166.0,153.0,101.0,642.0,84.0,145.0,466.0,119.0,113.0,40.0,144.0,316.0,90.0,204.0,114.0,169.0,0.0,348.0,173.0,225.0,321.0,293.0,108.0,721.0,219.0,146.0,55.0,239.0,139.0,171.0,130.0,164.0,130.0,252.0,133.0,163.0,152.0,85.0,673.0,113.0,137.0,177.0,109.0,243.0,139.0,265.0,147.0,111.0,129.0,93.0,130.0,77.0,248.0,257.0,128.0,86.0,161.0,578.0,124.0,266.0,161.0,0.0,53.0,104.0,126.0,157.0,189.0,161.0,114.0,141.0,164.0,118.0,187.0,109.0,114.0,39.0,113.0,147.0,126.0,137.0,82.0,411.0,253.0,61.0,121.0,69.0,109.0,234.0,146.0,350.0,57.0,99.0,209.0,132.0,41.0,1047.0,68.0,92.0,180.0,57.0,170.0,113.0,171.0,86.0,111.0,38.0,276.0,152.0,62.0,139.0,184.0,221.0,151.0,172.0,141.0,354.0,158.0,764.0,742.0,0.0,28.0,256.0,110.0,171.0,155.0,204.0,116.0,254.0,21.0,80.0,262.0,248.0,0.0,161.0,161.0,219.0,125.0,128.0,222.0,67.0,121.0,161.0,266.0,134.0,101.0,163.0,194.0,16.0,278.0,238.0,112.0,427.0,185.0,137.0,169.0,88.0,155.0,160.0,103.0,0.0,134.0,0.0,11.0,233.0,25.0,157.0,42.0,98.0,239.0,419.0,118.0,468.0,113.0,132.0,113.0,106.0,120.0,283.0,223.0,156.0,176.0,174.0,70.0,189.0,49.0,276.0,323.0,102.0,500.0,143.0,47.0,118.0,260.0,245.0,144.0,144.0,13.0,364.0,93.0,164.0,174.0,101.0,200.0,315.0,206.0,223.0,25.0,66.0,281.0,141.0,89.0,161.0,32.0,272.0,23.0,94.0,89.0,585.0,168.0,350.0,107.0,125.0,146.0,364.0,230.0,109.0,129.0,123.0,147.0,225.0,168.0,319.0,157.0,84.0,185.0,84.0,134.0,150.0,21.0,166.0,738.0,418.0,0.0,342.0,93.0,118.0,90.0,128.0,105.0,182.0,952.0,45.0,119.0,150.0,291.0,162.0,1780.0,970.0,1355.0,255.0,172.0,670.0,5.0,281.0,164.0,215.0,278.0,186.0,204.0,350.0,364.0,220.0,166.0,206.0,103.0,71.0,71.0,190.0,178.0,83.0,357.0,125.0,580.0,673.0,95.0,701.0,580.0,639.0,132.0,122.0,323.0,458.0,194.0,100.0,379.0,112.0,80.0,176.0,126.0,181.0,694.0,284.0,284.0,197.0,922.0,163.0,113.0,183.0,87.0,108.0,270.0,215.0,199.0,181.0,676.0,125.0,526.0,118.0,120.0,205.0,198.0,469.0,150.0,238.0,0.0,134.0,118.0,127.0,257.0,119.0,290.0,195.0,120.0,475.0,252.0,192.0,885.0,429.0,177.0,264.0,506.0,113.0,133.0,345.0,188.0,119.0,87.0,89.0,161.0,178.0,7.0,248.0,258.0,286.0,256.0,258.0,478.0,494.0,258.0,138.0,158.0,57.0,686.0,109.0,78.0,190.0,114.0,138.0,130.0,135.0,340.0,536.0,265.0,247.0,204.0,474.0,135.0,0.0,192.0,515.0,75.0,218.0,57.0,245.0,864.0,139.0,120.0,120.0,117.0,217.0,73.0,106.0,1625.0,78.0,293.0,297.0,297.0,110.0,170.0,197.0,0.0,138.0,183.0,85.0,208.0,168.0,91.0,273.0,252.0,179.0,236.0,150.0,150.0,96.0,148.0,164.0,98.0,701.0,207.0,110.0,260.0,68.0,135.0,214.0,252.0,453.0,119.0,311.0,266.0,-1.0,257.0,186.0,267.0,264.0,427.0,139.0,141.0,210.0,117.0,303.0,199.0,90.0,0.0,0.0,110.0,84.0,571.0,142.0,125.0,639.0,227.0,253.0,96.0,68.0,86.0,250.0,467.0,186.0,144.0,114.0,773.0,200.0,200.0,98.0,129.0,10.0,106.0,35.0,212.0,154.0,180.0,20.0,36.0,68.0,644.0,620.0,70.0,67.0,1030.0,124.0,140.0,163.0,130.0,62.0,199.0,129.0,607.0,703.0,220.0,104.0,143.0,335.0,137.0,131.0,135.0,73.0,105.0,210.0,234.0,120.0,197.0,234.0,221.0,230.0,83.0,166.0,234.0,197.0,150.0,111.0,192.0,245.0,132.0,128.0,217.0,365.0,473.0,252.0,173.0,276.0,72.0,494.0,142.0,137.0,556.0,245.0,220.0,147.0,155.0,0.0,669.0,159.0,122.0,239.0,179.0,113.0,216.0,111.0,293.0,165.0,42.0,82.0,162.0,120.0,353.0,137.0,263.0,109.0,191.0,469.0,469.0,92.0,166.0,39.0,149.0,223.0,49.0,1109.0,199.0,124.0,120.0,149.0,162.0,665.0,201.0,202.0,150.0,67.0,460.0,93.0,80.0,121.0,116.0,260.0,139.0,333.0,681.0,581.0,96.0,281.0,78.0,249.0,571.0,167.0,57.0,297.0,249.0,150.0,81.0,952.0,199.0,149.0,187.0,530.0,81.0,111.0,66.0,284.0,371.0,626.0,450.0,166.0,63.0,122.0,134.0,232.0,134.0,140.0,45.0,400.0,208.0,64.0,79.0,156.0,446.0,129.0,187.0,135.0,134.0,68.0,61.0,134.0,100.0,234.0,264.0,62.0,180.0,376.0,112.0,90.0,76.0,685.0,101.0,85.0,175.0,220.0,91.0,221.0,678.0,87.0,159.0,250.0,149.0,96.0,84.0,544.0,239.0,262.0,227.0,265.0,675.0,87.0,174.0,88.0,89.0,335.0,0.0,177.0,0.0,115.0,171.0,111.0,151.0,115.0,153.0,104.0,385.0,177.0,143.0,91.0,587.0,151.0,156.0,83.0,353.0,172.0,169.0,169.0,236.0,181.0,266.0,76.0,282.0,207.0,162.0,127.0,1092.0,125.0,268.0,51.0,742.0,195.0,256.0,156.0,234.0,435.0,18.0,80.0,108.0,267.0,141.0,286.0,149.0,98.0,92.0,62.0,180.0,163.0,298.0,126.0,235.0,113.0,56.0,146.0,103.0,141.0,83.0,79.0,300.0,30.0,300.0,95.0,170.0,118.0,0.0,594.0,43.0,184.0,463.0,761.0,468.0,146.0,50.0,131.0,148.0,143.0,129.0,301.0,116.0,123.0,178.0,150.0,185.0,111.0,488.0,142.0,218.0,213.0,3.0,189.0,125.0,49.0,124.0,354.0,841.0,152.0,620.0,135.0,242.0,162.0,107.0,132.0,54.0,256.0,96.0,137.0,165.0,226.0,164.0,1929.0,55.0,65.0,214.0,192.0,191.0,135.0,293.0,214.0,446.0,166.0,291.0,520.0,369.0,384.0,84.0,300.0,125.0,295.0,59.0,96.0,249.0,82.0,190.0,155.0,79.0,120.0,151.0,282.0,575.0,701.0,118.0,115.0,87.0,201.0,238.0,166.0,157.0,599.0,95.0,183.0,149.0,239.0,94.0,135.0,213.0,288.0,87.0,258.0,129.0,777.0,0.0,491.0,385.0,285.0,68.0,85.0,265.0,76.0,100.0,84.0,84.0,146.0,908.0,1016.0,162.0,95.0,35.0,48.0,209.0,121.0,80.0,158.0,222.0,146.0,402.0,179.0,147.0,129.0,78.0,255.0,690.0,97.0,218.0,167.0,317.0,0.0,607.0,211.0,326.0,294.0,148.0,198.0,831.0,161.0,266.0,263.0,184.0,62.0,62.0,212.0,267.0,650.0,775.0,113.0,115.0,150.0,125.0,426.0,192.0,144.0,246.0,154.0,170.0,253.0,174.0,91.0,375.0,138.0,155.0,115.0,148.0,130.0,400.0,299.0,78.0,171.0,602.0,127.0,130.0,185.0,164.0,153.0,69.0,511.0,118.0,287.0,157.0,106.0,123.0,104.0,96.0,174.0,507.0,92.0,179.0,6.0,166.0,129.0,135.0,76.0,97.0,390.0,144.0,175.0,198.0,170.0,201.0,126.0,135.0,205.0,205.0,65.0,243.0,232.0,122.0,231.0,194.0,223.0,561.0,92.0,80.0,453.0,136.0,31.0,736.0,141.0,241.0,117.0,532.0,558.0,299.0,100.0,183.0,103.0,366.0,97.0,192.0,76.0,128.0,168.0,262.0,71.0,252.0,147.0,235.0,215.0,389.0,93.0,219.0,72.0,147.0,305.0,164.0,201.0,117.0,354.0,132.0,115.0,471.0,302.0,146.0,128.0,214.0,149.0,107.0,98.0,55.0,38.0,239.0,249.0,117.0,98.0,443.0,102.0,94.0,123.0,225.0,193.0,207.0,78.0,433.0,319.0,163.0,139.0,1405.0,401.0,152.0,56.0,115.0,171.0,165.0,92.0,240.0,563.0,141.0,145.0,61.0,286.0,164.0,325.0,812.0,210.0,131.0,246.0,162.0,99.0,153.0,90.0,90.0,117.0,778.0,88.0,120.0,178.0,278.0,269.0,52.0,112.0,96.0,114.0,80.0,143.0,152.0,216.0,124.0,146.0,426.0,191.0,79.0,252.0,232.0,134.0,238.0,115.0,243.0,214.0,191.0,241.0,201.0,291.0,207.0,254.0,211.0,142.0,488.0,145.0,132.0,506.0,80.0,31.0,524.0,567.0,672.0,0.0,105.0,127.0,184.0,223.0,159.0,191.0,163.0,108.0,223.0,162.0,199.0,130.0,108.0,238.0,411.0,247.0,122.0,241.0,121.0,144.0,88.0,564.0,256.0,210.0,170.0,190.0,848.0,131.0,140.0,51.0,51.0,199.0,421.0,243.0,6.0,72.0,165.0,169.0,90.0,214.0,143.0,217.0,198.0,451.0,96.0,661.0,41.0,149.0,434.0,782.0,104.0,191.0,179.0,150.0,211.0,277.0,174.0,171.0,240.0,146.0,233.0,299.0,103.0,77.0,170.0,75.0,102.0,201.0,189.0,95.0,241.0,143.0,363.0,664.0,69.0,167.0,409.0,104.0,280.0,254.0,125.0,330.0,241.0,201.0,84.0,111.0,222.0,172.0,175.0,95.0,214.0,495.0,62.0,152.0,189.0,153.0,363.0,22.0,199.0,162.0,176.0,84.0,133.0,106.0,103.0,116.0,269.0,176.0,148.0,164.0,598.0,158.0,294.0,152.0,264.0,333.0,262.0,262.0,41.0,276.0,163.0,192.0,175.0,237.0,146.0,303.0,133.0,136.0,106.0,47.0,273.0,93.0,116.0,220.0,158.0,158.0,129.0,178.0,240.0,115.0,211.0,128.0,318.0,85.0,290.0,181.0,213.0,193.0,258.0,120.0,257.0,112.0,902.0,129.0,26.0,148.0,137.0,20.0,59.0,109.0,109.0,59.0,174.0,676.0,159.0,21.0,36.0,88.0,96.0,83.0,85.0,21.0,21.0,730.0,149.0,113.0,95.0,14.0,86.0,261.0,89.0,113.0,148.0,730.0,88.0,202.0,139.0,86.0,123.0,171.0,102.0,340.0,164.0,140.0,430.0,148.0,145.0,92.0,576.0,255.0,258.0,117.0,241.0,67.0,758.0,157.0,260.0,560.0,161.0,212.0,321.0,150.0,331.0,124.0,242.0,61.0,1281.0,392.0,255.0,235.0,101.0,130.0,210.0,227.0,144.0,75.0,28.0,31.0,95.0,80.0,226.0,137.0,199.0,152.0,144.0,0.0,0.0,75.0,228.0,127.0,317.0,156.0,188.0,691.0,194.0,125.0,129.0,188.0,433.0,221.0,108.0,87.0,77.0,229.0,167.0,185.0,95.0,223.0,266.0,182.0,154.0,612.0,153.0,496.0,141.0,46.0,286.0,131.0,173.0,89.0,185.0,103.0,90.0,188.0,91.0,235.0,124.0,114.0,157.0,119.0,170.0,169.0,100.0,164.0,637.0,371.0,78.0,73.0,254.0,463.0,638.0,442.0,211.0,16.0,63.0,22.0,94.0,142.0,121.0,256.0,206.0,153.0,169.0,163.0,136.0,52.0,902.0,149.0,99.0,144.0,141.0,308.0,922.0,262.0,125.0,69.0,124.0,140.0,175.0,199.0,190.0,153.0,262.0,102.0,115.0,587.0,95.0,357.0,256.0,95.0,225.0,509.0,108.0,130.0,627.0,73.0,1261.0,146.0,77.0,249.0,167.0,231.0,197.0,22.0,443.0,443.0,0.0,292.0,302.0,309.0,140.0,64.0,388.0,1.0,232.0,155.0,159.0,233.0,208.0,83.0,201.0,151.0,8.0,511.0,319.0,216.0,130.0,514.0,154.0,90.0,9.0,118.0,191.0,267.0,105.0,117.0,101.0,156.0,60.0,231.0,103.0,117.0,137.0,80.0,54.0,7.0,53.0,135.0,0.0,191.0,145.0,38.0,112.0,393.0,138.0,412.0,128.0,61.0,116.0,233.0,152.0,100.0,109.0,115.0,168.0,110.0,81.0,306.0,223.0,107.0,165.0,122.0,254.0,258.0,229.0,64.0,258.0,220.0,135.0,438.0,636.0,474.0,205.0,148.0,105.0,157.0,183.0,120.0,48.0,121.0,111.0,549.0,137.0,123.0,592.0,592.0,204.0,9.0,604.0,600.0,120.0,277.0,180.0,58.0,116.0,274.0,607.0,708.0,177.0,649.0,451.0,451.0,113.0,162.0,92.0,360.0,72.0,26.0,137.0,102.0,103.0,103.0,96.0,81.0,84.0,112.0,88.0,110.0,120.0,102.0,263.0,119.0,244.0,744.0,95.0,118.0,122.0,199.0,55.0,189.0,138.0,158.0,728.0,205.0,334.0,117.0,119.0,148.0,109.0,152.0,252.0,80.0,130.0,168.0,139.0,62.0,273.0,316.0,229.0,297.0,176.0,120.0,202.0,253.0,161.0,113.0,142.0,150.0,121.0,13.0,137.0,288.0,120.0,101.0,140.0,82.0,181.0,286.0,122.0,227.0,93.0,152.0,62.0,251.0,673.0,517.0,668.0,889.0,738.0,549.0,535.0,149.0,173.0,167.0,128.0,36.0,23.0,86.0,251.0,115.0,102.0,113.0,140.0,107.0,59.0,160.0,262.0,268.0,434.0,411.0,274.0,200.0,216.0,249.0,186.0,152.0,377.0,121.0,166.0,177.0,163.0,388.0,18.0,137.0,61.0,94.0,820.0,200.0,112.0,329.0,176.0,156.0,198.0,117.0,119.0,119.0,115.0,119.0,119.0,68.0,191.0,72.0,103.0,153.0,31.0,151.0,88.0,118.0,91.0,100.0,101.0,578.0,93.0,152.0,120.0,118.0,155.0,78.0,145.0,151.0,305.0,201.0,186.0,40.0,952.0,95.0,247.0,144.0,115.0,113.0,161.0,212.0,77.0,120.0,111.0,258.0,80.0,93.0,151.0,157.0,213.0,136.0,340.0,103.0,700.0,576.0,576.0,699.0,327.0,289.0,60.0,96.0,113.0,164.0,288.0,245.0,300.0,235.0,174.0,192.0,301.0,48.0,165.0,203.0,121.0,181.0,159.0,150.0,166.0,222.0,179.0,98.0,361.0,276.0,334.0,397.0,692.0,757.0,0.0,243.0,170.0,111.0,247.0,130.0,205.0,102.0,716.0,46.0,114.0,48.0,179.0,364.0,291.0,339.0,291.0,371.0,176.0,31.0,17.0,109.0,88.0,194.0,77.0,273.0,129.0,807.0,170.0,133.0,99.0,195.0,389.0 diff --git a/build/lib/cloupy/scraping/wmo.py b/build/lib/cloupy/scraping/wmo.py deleted file mode 100644 index 4f1b3c6..0000000 --- a/build/lib/cloupy/scraping/wmo.py +++ /dev/null @@ -1,438 +0,0 @@ -def get_wmo_stations_info(): - """Return pandas.DataFrame with WMO stations information (WMO ids, coordinates, etc.)""" - - import pandas as pd - - wmo_ids_path = str(__file__).replace('wmo.py', 'wmo_ids_and_coords.csv') - ids_coords = pd.read_csv(wmo_ids_path, dtype={3: 'object'}, sep=';', index_col=0) - return ids_coords - - -def get_wmoid_or_coord( - station_name, to_return, contains_station_name=True, - station_name_is_wmo_id=False -): - """ - Return WMO ids or coordinates of the WMO stations which contains 'station_name' - in their names. - - Keyword arguments: - station_name -- name of the station for which WMO id or coordinates will - be returned. If 'cou' prefix added to 'station_name' and a country name appears - after the prefix, the function will search for all stations in the specified - country (e.g. 'couPOLAND' will return WMO ids or coordinates for all stations - in Poland) - to_return -- which parameter has to be returned ('wmo_id', 'lat', 'lon', - 'elv') - contains_station_name -- if set to True, the function will search for - stations which CONTAIN 'station_name' in their name. If set to False, the - function will search for stations with NAMES EXACTLY as in 'station_name' - (default True) - station_name_is_wmo_id -- if set to True, the function will search for a - station by its WMO id. In this case, in 'station_name' argument you have to - pass WMO id - """ - - import pandas as pd - - if not isinstance(station_name, str) and not isinstance(station_name, int): - raise ValueError( - f"The 'station_name' argument must be a single string or a single int (given type: {type(station_name)})" - ) - - wmo_ids_path = str(__file__).replace('wmo.py', 'wmo_ids_and_coords.csv') - station_name = str(station_name) - station_name = station_name.upper() - - ids_coords = pd.read_csv(wmo_ids_path, dtype={3: 'object'}, sep=';', index_col=0) - if station_name.startswith('COU'): - data = ids_coords[ids_coords['country'].str.contains(station_name.replace('COU', ''))] - elif station_name_is_wmo_id: - data = ids_coords[ids_coords['wmo_id'] == station_name] - else: - if contains_station_name: - data = ids_coords[ids_coords['station'].str.contains(station_name)] - else: - data = ids_coords[ids_coords['station'] == station_name] - - if len(data.index) == 0: - raise ValueError( - """ - No data found for the given 'station_name'. - """ - ) - elif station_name.startswith('COU'): - indexes = [i for i in range(0, len(data.index))] - elif len(data.index) > 1: - stations_info = '' - for i, station in enumerate(list(data.station)): - stations_info += f'{i}: {list(data.country)[i]}, {list(data.wmo_id)[i]}, {station}\n ' - - indexes = input( - f""" - Data found for more than one station. Specify which station you are interested in (by selecting indexes. Use - '*' if you are interested in every found station). - - ---COUNTRY, WMO ID, STATION--- - {stations_info} - """) - - if indexes == '*': - all_indexes = [] - for i, station in enumerate(list(data.station)): - all_indexes.append(i) - indexes = all_indexes - else: - indexes = indexes.split(',') - indexes = [int(i) for i in indexes] - else: - indexes = [0] - - dict_to_return = {} - for index in indexes: - dict_to_return[data.iloc[index, 1]] = data.iloc[index, :][to_return] - - return dict_to_return - - -def decode_downloaded_data(data_table): - """ - Decode the data from .dat file from the WMO website. Return more - computer-friendly data for further adaptation. - """ - - table = data_table.split('#') - - data = table[-1] - row_to_del = data.split('\n')[0] - data = data.replace(row_to_del, "") - data = data.split('\n') - - decoded = [] - for row in data: - dec_row = row.split(' ') - while '' in dec_row: - dec_row.remove('') - decoded.append(dec_row) - - while [] in decoded: - decoded.remove([]) - - return decoded - - -def download_data(url): - """Download and return the data from the given URL of the WMO website""" - - from bs4 import BeautifulSoup as bs - import requests - - r = requests.get(url) - soup = bs(r.content, features='html.parser') - - data_href = None - for element in soup.find_all('a'): - if '.dat' in element['href']: - data_href = element['href'] - break - - if data_href is None: - raise FileNotFoundError( - f""" - No data file was found for {url}. - """ - ) - - full_url_for_data = 'http://climexp.knmi.nl/' + data_href - r = requests.get(full_url_for_data) - soup = bs(r.content, features='html.parser') - - table = soup.get_text() - downloaded_data = decode_downloaded_data(table) - - if not downloaded_data: - raise FileNotFoundError( - f""" - No data file was found for {url} - """ - ) - - return downloaded_data - - -def concatenate_dfs(dfs): - """Concatenate given dataframes into one consistent dataframe""" - - import pandas as pd - - min_year = 3000 - max_year = 0 - for df in dfs: - if df[1][0] is not None: - if int(df[1][0]) < min_year: - min_year = int(df[1][0]) - if df[-1][0] is not None: - if int(df[-1][0]) > max_year: - max_year = int(df[-1][0]) - - years = [] - months = [] - for year in range(min_year, max_year + 1): - for month in range(1, 13): - years.append(str(year)) - months.append(month) - - concatenated_df = pd.DataFrame({ - 'year': years, - 'month': months, - }) - - for df in dfs: - - if df[1] == [None, None, None]: - values_to_add = [None] * len(concatenated_df['month']) - concatenated_df[df[0][2]] = values_to_add - else: - values_to_add = [] - - index_to_start = None - for i, year in enumerate(years): - if year == df[1][0]: - index_to_start = i - break - else: - values_to_add.append(None) - - if index_to_start is None: - raise ValueError("'index_to_start' value is None.") - - for i, row in enumerate(df[1:]): - if row[0] == years[index_to_start + i]: - if row[1] == months[index_to_start + i]: - if float(row[2]) > -90: - values_to_add.append(row[2]) - else: - values_to_add.append(None) - else: - values_to_add.append(None) - else: - values_to_add.append(None) - - while len(values_to_add) != len(years): - values_to_add.append(None) - - concatenated_df[df[0][2]] = values_to_add - - for column in concatenated_df.columns[:2]: - concatenated_df = concatenated_df.astype({column: int}) - for column in concatenated_df.columns[2:]: - concatenated_df = concatenated_df.astype({column: float}) - - return concatenated_df - - -def transpose_table(table): - """Transpose the table for further adaptation""" - - new_table = [] - for row in table: - for i, value in enumerate(row): - if i != 0: - new_row = [row[0], i, value] - new_table.append(new_row) - - return new_table - - -def search_for_the_nearest_station( - lon, lat, degrees_range=0.5 -): - """ - Return the nearest stations from the WMO database for the given coordinates. - - Keyword arguments: - lon -- the longitude for which station will be searched - lat -- the latitude for which station will be searched - degrees_range -- acceptable range in degrees in all directions (default 0.5) - """ - - import pandas as pd - - wmo_ids_path = str(__file__).replace('wmo.py', 'wmo_ids_and_coords.csv') - - ids_coords = pd.read_csv(wmo_ids_path, dtype={3: 'object'}, sep=';', index_col=0) - - ids_coords = ids_coords[ - (ids_coords['lat'] < lat + degrees_range) & - (ids_coords['lat'] > lat - degrees_range) & - (ids_coords['lat'] != lat) - ] - - ids_coords = ids_coords[ - (ids_coords['lon'] < lon + degrees_range) & - (ids_coords['lon'] > lon - degrees_range) & - (ids_coords['lon'] != lon) - ] - - return ids_coords - - -def download_wmo_climatological_data( - station_name, elements_to_scrape, nearby_stations=False, - degrees_range_for_nearby_stations=0.5, return_coordinates=False -): - """ - Download climatological data for specified station/stations from the WMO website. - There are 5 elements which can be downloaded: average air temperature, - sum of precipitation, absolute minimum air temperature, absolute maximum air - temperature, sea level pressure. The interval for downloaded data is always - monthly. - - Keyword arguments: - station_name -- name of the station for which the data will be downloaded. - If 'cou' prefix added to 'station_name' and a country name appears after the - prefix, the function will search for all stations in the specified country - (e.g. 'couPOLAND' will download data for Poland) - elements_to_scrape -- which elements from the WMO website will be scraped. - ('temp', 'preci', 'temp_min', 'temp_max', 'sl_press') - nearby_stations -- if there is no data or a single element is missing, and - if 'nearby_stations' argument is set to True, the function will search for the - nearest stations and try to complete the lack (default False) - degrees_range_for_nearby_stations -- acceptable range in degrees in all - directions if nearby stations have to be searched (default 0.5) - return_coordinates -- if set to True, the function will add columns with - latitude, longitude and elevation for the specified station/stations (default False) - """ - - import pandas as pd - - if isinstance(elements_to_scrape, str): - elements_to_scrape = [elements_to_scrape] - - elements_with_urls = { - 'temp': 'http://climexp.knmi.nl/gettempall.cgi?id=someone@somewhere&WMO={}', - 'preci': 'http://climexp.knmi.nl/getprcpall.cgi?id=someone@somewhere&WMO={}', - 'temp_min': 'http://climexp.knmi.nl/getminall.cgi?id=someone@somewhere&WMO={}', - 'temp_max': 'http://climexp.knmi.nl/getmaxall.cgi?id=someone@somewhere&WMO={}', - 'sl_press': 'http://climexp.knmi.nl/getslp.cgi?id=someone@somewhere&WMO={}' - } - - wmo_ids = get_wmoid_or_coord(station_name, 'wmo_id') - wmo_ids_list = [wmo_id for station, wmo_id in wmo_ids.items()] - - full_df = pd.DataFrame() - print('Data download started. It may take a while.') - for station, wmo_id in wmo_ids.items(): - data = [] - for element in elements_to_scrape: - url = elements_with_urls[element].format(wmo_id) - - try: - downloaded_data = download_data(url) - except FileNotFoundError: - if 'cou' in station_name: - continue - elif not nearby_stations: - print( - f""" - WARNING: No data for '{element}' in '{station}' (WMO ID: {wmo_id}). - If you want to search for data in the nearest stations, set 'nearby_stations' - argument to True. - """) - continue - else: - lat = get_wmoid_or_coord(wmo_id, 'lat', station_name_is_wmo_id=True)[station] - lon = get_wmoid_or_coord(wmo_id, 'lon', station_name_is_wmo_id=True)[station] - nearest_stations = search_for_the_nearest_station( - lon, lat, degrees_range=degrees_range_for_nearby_stations - ) - if nearest_stations.empty: - print( - f""" - WARNING: No data for '{element}' in '{station}' (WMO ID: {wmo_id}). - No nearby station found either. - """ - ) - continue - - data_from_near_stations = {} - for near_wmo_id in nearest_stations['wmo_id']: - if near_wmo_id in wmo_ids_list: - continue - - url = elements_with_urls[element].format(near_wmo_id) - try: - data_for_station = download_data(url) - except FileNotFoundError: - data_from_near_stations[near_wmo_id] = None - else: - data_from_near_stations[near_wmo_id] = data_for_station - - hm_elements = 0 - more_elements_in = None - for near_wmo_id, data_for_station in data_from_near_stations.items(): - try: - if len(data_for_station) > hm_elements: - hm_elements = len(data_for_station) - more_elements_in = near_wmo_id - except TypeError: - continue - - if more_elements_in is None: - downloaded_data = None - else: - downloaded_data = data_from_near_stations[more_elements_in] - print( - f""" - Warning: no '{element}' data was found for the chosen station ({station}), so the data was - taken from the nearest station (WMO ID: {more_elements_in}). Latitude and longitude differences - were below 0.5 degrees (default) or as in the 'degrees_range_for_nearby_stations' argument (if - specified). If you do not want to download data from the nearest station, change 'nearby_stations' - argument value to False. If you would like to change acceptable latitude and longitude differences, - you can do it by passing float/int to 'degrees_range_for_nearby_stations' argument. - """) - else: - pass - - if downloaded_data is not None: - downloaded_data = transpose_table(downloaded_data) - downloaded_data.insert(0, ['year', 'month', element]) - else: - downloaded_data = [[None, None, None]] - downloaded_data.insert(0, ['year', 'month', element]) - - data.append(downloaded_data) - - concatenated_df = concatenate_dfs(data) - station_series = [station] * len(concatenated_df.index) - concatenated_df.insert(0, 'station', station_series) - - if return_coordinates: - lat = get_wmoid_or_coord(wmo_id, 'lat', station_name_is_wmo_id=True)[station] - lon = get_wmoid_or_coord(wmo_id, 'lon', station_name_is_wmo_id=True)[station] - elv = get_wmoid_or_coord(wmo_id, 'elv', station_name_is_wmo_id=True)[station] - - lat_series = [lat] * len(concatenated_df.index) - lon_series = [lon] * len(concatenated_df.index) - elv_series = [elv] * len(concatenated_df.index) - - concatenated_df['lon'] = lon_series - concatenated_df['lat'] = lat_series - concatenated_df['elv'] = elv_series - - full_df = full_df.append(concatenated_df) - - if 'cou' in station_name: - columns_order = elements_to_scrape - filtered_columns_order = ['station', 'year', 'month'] - - for element in columns_order: - if element in list(full_df.columns): - filtered_columns_order.append(element) - - if return_coordinates: - filtered_columns_order += ['lon', 'lat', 'elv'] - full_df = full_df[filtered_columns_order] - - print('Data downloaded.') - return full_df diff --git a/build/lib/cloupy/scraping/wmo_ids_and_coords.csv b/build/lib/cloupy/scraping/wmo_ids_and_coords.csv deleted file mode 100644 index 3046f27..0000000 --- a/build/lib/cloupy/scraping/wmo_ids_and_coords.csv +++ /dev/null @@ -1,7279 +0,0 @@ -no;country;station;wmo_id;lat;lon;elv -0;ALGERIA;SKIKDA;60355;36.93;6.95;7 -1;ALGERIA;ANNABA;60360;36.83;7.82;4 -2;ALGERIA;DAR-EL-BEIDA;60390;36.72;3.25;25 -3;ALGERIA;FT. NATIONAL;60395.1;36.52;4.18;942 -4;ALGERIA;CAP CARBON;60400.1;36.80;5.10;230 -5;ALGERIA;BEJAIA;60402;36.72;5.07;2 -6;ALGERIA;GUELMA;60403;36.47;7.47;227 -7;ALGERIA;CONSTANTINE;60419;36.28;6.62;694 -8;ALGERIA;CHLEF;60425;36.22;1.33;143 -9;ALGERIA;ORLEANSVILLE;60425.1;36.17;1.50;112 -10;ALGERIA;MILIANA;60430;36.30;2.23;715 -11;ALGERIA;BORDJ BOU ARR;60444;36.07;4.77;928 -12;ALGERIA;SETIF;60445;36.18;5.42;1081 -13;ALGERIA;MOSTAGANEM VI;60457;35.88;0.12;137 -14;ALGERIA;ORAN;60461;35.70;-0.65;60 -15;ALGERIA;BATNA;60468;35.55;6.18;1052 -16;ALGERIA;TEBESSA;60475;35.48;8.13;813 -17;ALGERIA;ORAN/ES SENIA;60490;35.60;-0.60;90 -18;ALGERIA;BENI-SAF;60518;35.30;-1.35;68 -19;ALGERIA;MAGHNIA;60522;34.82;-1.78;426 -20;ALGERIA;BISKRA;60525;34.80;5.73;87 -21;ALGERIA;TLEMCEN;60531;35.02;-1.47;247 -22;ALGERIA;TLEMCEN;60531.1;34.80;-1.30;-999 -23;ALGERIA;DJELFA;60535;34.68;3.25;1144 -24;ALGERIA;SAIDA;60536;34.87;0.15;750 -25;ALGERIA;EL KHEITER;60540;34.15;0.07;1000 -26;ALGERIA;LAGHOUAT;60545;33.77;2.93;765 -27;ALGERIA;AYATA;60545.1;33.50;3.70;41 -28;ALGERIA;MECHERIA;60549;33.60;-0.30;176 -29;ALGERIA;SIDI-BEL-ABBAS;60549.1;35.18;-0.63;486 -30;ALGERIA;ELBAYADH;60550;33.67;1.00;1341 -31;ALGERIA;GERYVILLE;60550.1;33.80;1.00;1306 -32;ALGERIA;TOUGGOURT;60555;33.12;6.13;85 -33;ALGERIA;EL OUED;60559;33.50;6.12;63 -34;ALGERIA;AIN SEFRA;60560;32.77;-0.60;1058 -35;ALGERIA;GHARDAIA;60566;32.38;3.82;450 -36;ALGERIA;BECHAR;60571;31.62;-2.23;773 -37;ALGERIA;OUARGLA;60580;31.92;5.40;141 -38;ALGERIA;HASSI-MESSOUD;60581;31.70;2.90;398 -39;ALGERIA;EL GOLEA;60590;30.57;2.87;397 -40;ALGERIA;BENI ABBES;60602;30.13;-2.17;499 -41;ALGERIA;TIMIMOUN;60607;29.25;0.28;312 -42;ALGERIA;IN AMENAS;60611;28.05;9.63;562 -43;ALGERIA;ADRAR;60620;27.88;-0.28;263 -44;ALGERIA;IN SALAH;60630;27.20;2.47;293 -45;ALGERIA;OUALLEN ALGERIA;60630.1;24.60;1.30;347 -46;ALGERIA;AOULEF ALGERIA;60630.2;27.00;1.10;290 -47;ALGERIA;TINDOUF;60656;27.67;-8.13;431 -48;ALGERIA;DJANET;60670;24.55;9.47;1054 -49;ALGERIA;TAMANRASSET;60680;22.78;5.52;1378 -50;ANGOLA;CABINDA;66104;-5.55;12.18;20 -51;ANGOLA;CARMONA;66140.1;-7.60;15.00;824 -52;ANGOLA;DUNDO;66152;-7.40;20.82;776 -53;ANGOLA;LUANDA;66160;-8.85;13.23;70 -54;ANGOLA;MALANGE;66215;-9.55;16.37;1142 -55;ANGOLA;SAURIMO;66226;-9.65;20.40;1080 -56;ANGOLA;PORTO AMBOIM;66240;-10.70;13.75;5 -57;ANGOLA;CELA;66270.1;-11.40;15.10;1308 -58;ANGOLA;LUENA;66285;-11.78;19.92;1357 -59;ANGOLA;LOBITO;66305.1;-12.37;13.53;3 -60;ANGOLA;HUAMBO;66318;-12.80;15.75;1701 -61;ANGOLA;BIE;66325;-12.38;16.95;1699 -62;ANGOLA;LUBANGO;66390;-14.93;13.57;1758 -63;ANGOLA;MENONGUE;66410;-14.65;17.68;1343 -64;ANGOLA;MOCAMEDES;66422;-15.20;12.15;45 -65;ANGOLA;MAVINGA;66447;-15.83;20.35;1088 -66;ANGOLA;"PEREIRA D, ECA";66460.1;-17.10;15.70;1150 -67;BENIN;KANDI;65306;11.13;2.93;292 -68;BENIN;NATITINGOU;65319;10.32;1.38;461 -69;BENIN;PARAKOU;65330;9.35;2.62;393 -70;BENIN;TCHAOUROU DAHOMEY REP;65330.1;8.90;2.60;325 -71;BENIN;SAVE;65335;8.03;2.47;200 -72;BENIN;BOHICON;65338;7.17;2.07;167 -73;BENIN;COTONOU;65344;6.35;2.38;9 -74;BOTSWANA;GHANZI;68024.1;-21.50;21.75;1131 -75;BOTSWANA;SHAKAWE;68026;-18.37;21.85;1000 -76;BOTSWANA;MAUN;68032;-19.98;23.42;900 -77;BOTSWANA;FRANCISTOWN;68054;-21.22;27.50;1000 -78;BOTSWANA;MAHALAPYE;68148;-23.08;26.80;1006 -79;BOTSWANA;TSHANE;68226;-24.02;21.88;1100 -80;BOTSWANA;GABORONE;68244;-24.67;25.92;1000 -81;BOTSWANA;TSABONG;68328;-26.05;22.45;1000 -82;BURKINA FASO;DORI;65501;14.03;-0.03;277 -83;BURKINA FASO;OUAHIGOUYA;65502;13.57;-2.42;336 -84;BURKINA FASO;OUAGADOUGOU;65503;12.35;-1.52;306 -85;BURKINA FASO;FADA NGOURMA;65507;12.03;0.37;309 -86;BURKINA FASO;BOBO-DIOULASS;65510;11.17;-4.32;460 -87;BURKINA FASO;BOROMO;65516;11.75;-2.93;271 -88;BURKINA FASO;GAOUA;65522;10.33;-3.18;335 -89;BURUNDI;BUJUMBURA;64390;-3.32;29.32;783 -90;BURUNDI;USUMBURA;64390.1;-3.30;29.30;783 -91;CAMEROON;MAROUA-SALAK;64851;10.45;14.25;422 -92;CAMEROON;GAROUA;64860;9.33;13.38;244 -93;CAMEROON;NGAOUNDERE;64870;7.35;13.57;1104 -94;CAMEROON;BANYO;64880;6.78;11.82;1110 -95;CAMEROON;TIBATI;64880.1;6.50;12.60;874 -96;CAMEROON;MEIGANGA;64882;6.53;14.37;1027 -97;CAMEROON;MAMFE;64890;5.72;9.28;126 -98;CAMEROON;KOUNDJA;64893;5.65;10.75;1210 -99;CAMEROON;YOKO;64900;5.55;12.37;1031 -100;CAMEROON;NANGA-EBOKO;64900.1;4.70;12.40;623 -101;CAMEROON;BETARE-OYA;64901;5.60;14.07;804 -102;CAMEROON;DOUALA OBS.;64910;4.00;9.73;9 -103;CAMEROON;NKONGSAMBA;64911;4.95;9.93;821 -104;CAMEROON;BAFIA;64920;4.73;11.25;500 -105;CAMEROON;BATOURI;64931;4.47;14.37;656 -106;CAMEROON;YOKADOUMA;64931.1;3.50;15.10;534 -107;CAMEROON;BERTOUA;64931.2;4.60;13.70;670 -108;CAMEROON;YAOUNDE;64950;3.83;11.52;760 -109;CAMEROON;EBOLOWA;64950.1;2.90;11.20;603 -110;CAMEROON;SANGMELIMA;64950.2;2.90;12.00;713 -111;CAMEROON;ESEKA;64950.3;3.60;10.70;399 -112;CAMEROON;ABONG-MBANG;64960;3.97;13.20;693 -113;CAMEROON;LOMIE;64961;3.15;13.62;624 -114;CAMEROON;KRIBI;64971;2.95;9.90;16 -115;CAPE VERDE;MINDELO;8583;16.88;-25.00;63 -116;CAPE VERDE;PRAIA;8589;14.90;-23.52;35 -117;CAPE VERDE;SAL;8594;16.73;-22.95;55 -118;CENTRAL AFRICAN REPUBLIC;BERBERATI;64600;4.25;15.80;583 -119;CENTRAL AFRICAN REPUBLIC;BOUAR;64601;5.97;15.63;1020 -120;CENTRAL AFRICAN REPUBLIC;BOSSEMBELE;64605;5.27;17.63;674 -121;CENTRAL AFRICAN REPUBLIC;BOSSANGOA;64610;6.48;17.43;465 -122;CENTRAL AFRICAN REPUBLIC;BOUCA CENTRAL AFRICAN REP;64610.1;6.50;18.30;458 -123;CENTRAL AFRICAN REPUBLIC;BANGUI;64650;4.40;18.52;366 -124;CENTRAL AFRICAN REPUBLIC;NDELE;64654;8.40;20.65;511 -125;CENTRAL AFRICAN REPUBLIC;BRIA;64655;6.53;21.98;584 -126;CENTRAL AFRICAN REPUBLIC;BANGASSOU;64656;4.73;22.83;500 -127;CENTRAL AFRICAN REPUBLIC;BIRAO;64658;10.28;22.78;464 -128;CENTRAL AFRICAN REPUBLIC;OBO;64659;5.40;26.50;651 -129;CENTRAL AFRICAN REPUBLIC;BAMBARI;64660;5.85;20.65;475 -130;CENTRAL AFRICAN REPUBLIC;YALINGA;64661;6.50;23.27;602 -131;CENTRAL AFRICAN REPUBLIC;ALINDAO;64662;5.05;21.20;449 -132;CHAD;NDJAMENA;64700;12.13;15.03;295 -133;CHAD;MAO;64701;14.12;15.32;355 -134;CHAD;BOL-BERIM;64702;13.43;14.73;292 -135;CHAD;BOUSSO;64705;10.48;16.72;336 -136;CHAD;MOUNDOU;64706;8.62;16.07;422 -137;CHAD;BOKORO;64708;12.38;17.05;301 -138;CHAD;PALA;64709;9.37;14.92;455 -139;CHAD;FORT-ARCHAMBAULT;64750;9.10;18.40;365 -140;CHAD;ATI;64751;13.22;18.32;334 -141;CHAD;FAYA;64753;18.00;19.17;234 -142;CHAD;AM-TIMAN;64754;11.03;20.28;436 -143;CHAD;ABECHE;64756;13.85;20.85;549 -144;CHAD;MONGO;64758;12.18;18.68;428 -145;COMOROS;ILES GLORIEUS;61968;-11.58;47.28;4 -146;COMOROS;ILE JUAN DE N;61970;-17.05;42.70;10 -147;COMOROS;ILE EUROPA;61972;-22.32;40.33;13 -148;COMOROS;MORONI/GRANDE-COMORE/;67001.1;-11.70;43.20;17 -149;COMOROS;OUANI;67004;-12.12;44.43;12 -150;CONGO;POINTE-NOIRE;64400;-4.82;11.90;17 -151;CONGO;LOUBOMO;64401;-4.20;12.70;330 -152;CONGO;MOUYONDZI;64402;-3.98;13.92;512 -153;CONGO;MAKABANA;64403;-3.48;12.62;161 -154;CONGO;SIBITI;64405;-3.68;13.35;531 -155;CONGO;BRAZZAVILLE /;64450;-4.25;15.25;316 -156;CONGO;MPOUYA;64452;-2.62;16.22;312 -157;CONGO;DJAMBALA;64453;-2.53;14.77;790 -158;CONGO;GAMBOMA;64454;-1.87;15.87;377 -159;CONGO;MAKOUA;64456;-0.02;15.58;379 -160;CONGO;OUESSO;64458;1.62;16.05;352 -161;CONGO;IMPFONDO;64459;1.62;18.07;326 -162;CONGO;SOUANKE;64460;2.07;14.13;550 -163;COTE DIVOIRE;ODIENNE;65528;9.50;-7.57;421 -164;COTE DIVOIRE;KORHOGO;65536;9.42;-5.62;381 -165;COTE DIVOIRE;FERKESSEDOUGOU;65536.1;9.60;-5.20;325 -166;COTE DIVOIRE;BONDOUKOU;65545;8.05;-2.78;370 -167;COTE DIVOIRE;MAN;65548;7.38;-7.52;340 -168;COTE DIVOIRE;BOUAKE;65555;7.73;-5.07;376 -169;COTE DIVOIRE;GAGNOA;65557;6.13;-5.95;210 -170;COTE DIVOIRE;DALOA;65560;6.87;-6.47;277 -171;COTE DIVOIRE;DIMBOKRO;65562;6.65;-4.70;92 -172;COTE DIVOIRE;YAMOUSSOUKRO;65563;6.90;-5.35;213 -173;COTE DIVOIRE;ABIDJAN;65578;5.25;-3.93;8 -174;COTE DIVOIRE;ADIAKE;65585;5.30;-3.30;39 -175;COTE DIVOIRE;TABOU;65592;4.42;-7.37;21 -176;COTE DIVOIRE;SAN PEDRO;65594;4.75;-6.65;30 -177;COTE DIVOIRE;SASSANDRA;65599;4.95;-6.08;66 -178;DJIBOUTI;DJIBOUTI;63125;11.55;43.15;19 -179;EGYPT;SALLOUM;62300;31.53;25.18;6 -180;EGYPT;SIDI BARANI;62301.1;31.60;26.00;23 -181;EGYPT;MERSA MATRUH;62306;31.33;27.22;28 -182;EGYPT;ALEXANDRIA;62315.1;31.20;29.88;32 -183;EGYPT;KOM EL NADURA;62315.2;31.20;29.90;32 -184;EGYPT;ALEXANDRIA/NO;62318;31.20;29.95;7 -185;EGYPT;PORT SAID/EL;62332;31.28;32.23;6 -186;EGYPT;GHAZZA;62338;31.50;34.45;16 -187;EGYPT;CAIRO AIRPORT;62366;30.13;31.40;74 -188;EGYPT;ABBAISSIA/CAIRO HQ;62371.1;30.10;31.30;33 -189;EGYPT;HELWAN;62378;29.87;31.33;141 -190;EGYPT;MINYA;62387;28.08;30.73;40 -191;EGYPT;ASYUT;62392;27.20;31.17;52 -192;EGYPT;QENA;62402.1;26.20;32.70;74 -193;EGYPT;LUXOR;62405;25.67;32.70;99 -194;EGYPT;ASWAN;62414;24.03;32.88;100 -195;EGYPT;SIWA;62416.1;29.20;25.50;14 -196;EGYPT;BAHARIA;62420;28.33;28.90;130 -197;EGYPT;DAKELA;62432;25.48;29.00;111 -198;EGYPT;KHARGA;62435;25.45;30.53;73 -199;EGYPT;ISMAILIA;62440;30.60;32.25;13 -200;EGYPT;SUEZ;62450.1;29.93;32.55;3 -201;EGYPT;EL TOR;62459;28.23;32.62;14 -202;EGYPT;HURGHADA;62464.1;27.30;33.80;3 -203;EGYPT;KOSSEIR;62465;26.13;34.22;11 -204;ERITREA;ASMARA;63021;15.28;38.92;2325 -205;ERITREA;MASSAWA;63023;15.62;39.45;10 -206;ERITREA;ASSAB;63043;13.07;42.72;14 -207;ETHIOPIA;GONDAR;63331;12.53;37.43;1966 -208;ETHIOPIA;BAHAR DAR;63332;11.60;37.40;1805 -209;ETHIOPIA;COMBOLCHA;63333;11.08;39.72;1916 -210;ETHIOPIA;DEBREMARCOS;63334;10.35;37.72;2440 -211;ETHIOPIA;JIMMA;63402;7.67;36.83;1676 -212;ETHIOPIA;GORE;63403;8.17;35.55;1974 -213;ETHIOPIA;ADDIS ABABA;63450;8.98;38.80;2324 -214;ETHIOPIA;METEHARA;63453;8.83;39.78;1062 -215;ETHIOPIA;DIRE DAWA;63471;9.60;41.87;1146 -216;ETHIOPIA;JIGGIGA;63473.1;9.50;42.58;1644 -217;ETHIOPIA;NEGHELLI;63533;5.28;39.75;1455 -218;GABON;PORT-GENTIL;64501.1;-0.70;8.80;4 -219;GABON;MAYUMBA;64503;-3.42;10.65;34 -220;GABON;COCOBEACH;64504;1.00;9.60;13 -221;GABON;LIBREVILLE;64504.1;0.70;10.20;10 -222;GABON;TCHIBANGA;64507;-2.85;11.02;79 -223;GABON;BITAM;64510;2.08;11.48;599 -224;GABON;MEKAMBO;64545;1.02;13.93;501 -225;GABON;MOUILA;64550;-1.87;11.02;89 -226;GABON;LAMBARENE;64551.1;-0.72;10.23;27 -227;GABON;MITZIC;64552;0.78;11.53;583 -228;GABON;MAKOKOU;64556;0.57;12.87;515 -229;GABON;LASTOURSVILLE;64560.1;-0.83;12.72;483 -230;GABON;MOANDA;64565;-1.53;13.27;573 -231;GABON;FRANCEVILLE;64565.1;-1.60;13.60;426 -232;GHANA;NAVRONGO;65401;10.90;-1.10;203 -233;GHANA;WA;65404;10.05;-2.50;323 -234;GHANA;TAMALE;65418.1;9.40;-0.90;188 -235;GHANA;WENCHI;65432;7.75;-2.10;340 -236;GHANA;KUMASI;65442;6.72;-1.60;293 -237;GHANA;AXIM;65465;4.87;-2.23;40 -238;GHANA;TAKORADI;65467;4.88;-1.77;9 -239;GHANA;ACCRA;65472;5.60;-0.17;69 -240;GUINEA;LABE;61809;11.32;-12.30;1026 -241;GUINEA;SIGUIRI;61811;11.43;-9.17;366 -242;GUINEA;BOKE;61816;10.93;-14.32;69 -243;GUINEA;KINDIA;61818;10.05;-12.87;459 -244;GUINEA;MAMOU;61820;10.37;-12.08;784 -245;GUINEA;KANKAN;61829;10.38;-9.30;384 -246;GUINEA;CONAKRY/GBESS;61832;9.57;-13.62;26 -247;GUINEA;MACENTA;61847;8.53;-9.47;544 -248;GUINEA;NZEREKORE;61849;7.73;-8.83;470 -249;GUINEA-BISSAU;BISSAU;61766;11.88;-15.65;36 -250;GUINEA-BISSAU;BOLAMA;61769;11.58;-15.48;20 -251;KENYA;LODWAR;63612;3.12;35.62;515 -252;KENYA;MOYALE;63619;3.53;39.05;1097 -253;KENYA;MANDERA;63624;3.93;41.87;231 -254;KENYA;KITALE;63661;1.02;35.00;1875 -255;KENYA;WAJIR;63671;1.75;40.07;244 -256;KENYA;ELDORET;63686;0.53;35.28;2133 -257;KENYA;KISUMU;63708;-0.10;34.75;1146 -258;KENYA;KISUMU;63708.1;-0.10;34.75;1146 -259;KENYA;NAKURU;63714;-0.27;36.10;1901 -260;KENYA;GARISSA;63723;-0.47;39.63;147 -261;KENYA;NAROK;63737;-1.13;35.83;1890 -262;KENYA;NAIROBI/KENYA;63740;-1.32;36.92;1624 -263;KENYA;KABETE;63741.1;-1.27;36.75;1820 -264;KENYA;NAIROBI/DAGORETTI;63742.1;-1.30;36.80;1798 -265;KENYA;MAKINDU;63766;-2.28;37.83;1000 -266;KENYA;LAMU;63772;-2.27;40.83;6 -267;KENYA;MALINDI;63799;-3.23;40.10;23 -268;KENYA;MOMBASA;63820;-4.03;39.62;55 -269;LIBERIA;ROBERTS FIELD;65660;6.25;-10.35;18 -270;LIBERIA;HARBEL;65660.1;6.40;-10.40;30 -271;LIBYA;NALUT;62002;31.87;10.98;621 -272;LIBYA;ZUARA;62007;32.88;12.08;3 -273;LIBYA;PISIDA;62007.1;33.12;11.72;10 -274;LIBYA;YEFREN;62008;32.08;12.55;691 -275;LIBYA;MIZDA;62008.1;31.43;12.98;400 -276;LIBYA;GASR GARIAN;62008.2;32.17;13.00;72 -277;LIBYA;BIR EL CHINEM;62008.3;32.28;12.65;150 -278;LIBYA;TRIPOLI;62010;32.90;13.20;84 -279;LIBYA;THARHUNA;62010.1;32.43;13.58;410 -280;LIBYA;AZIZIA;62010.2;32.53;13.02;112 -281;LIBYA;SIDI MESRI;62010.3;32.87;13.22;25 -282;LIBYA;TRIPOLI CITY;62010.4;32.90;13.18;25 -283;LIBYA;WHEELUS;62010.6;32.90;13.28;13 -284;LIBYA;EL KHOMS;62012;32.63;14.30;22 -285;LIBYA;BENI ULID;62012.1;31.80;14.00;230 -286;LIBYA;GARABULLI;62012.2;32.73;13.75;40 -287;LIBYA;MISURATA;62016;32.42;15.05;32 -288;LIBYA;TUMMINA/CRISPI;62016.1;32.20;15.10;25 -289;LIBYA;SIRTE;62019;31.20;16.58;14 -290;LIBYA;BENINA;62053;32.10;20.27;132 -291;LIBYA;BENGAZI;62053.1;32.13;20.08;25 -292;LIBYA;AGEDABIA;62055;30.72;20.17;7 -293;LIBYA;SHAHAT;62056;32.82;21.85;625 -294;LIBYA;DERNA;62059;32.78;22.58;26 -295;LIBYA;EL ADEM/NASSER;62062.1;31.85;23.92;155 -296;LIBYA;GHADAMES;62103;30.13;9.50;347 -297;LIBYA;SEBHA;62124;27.02;14.45;432 -298;LIBYA;HON;62131;29.12;15.95;267 -299;LIBYA;JALO;62161;29.03;21.57;60 -300;LIBYA;GIARABUB;62176;29.75;24.53;-1 -301;LIBYA;KUFRA;62271;24.22;23.30;436 -302;MADAGASCAR;DIEGO-SUAREZ;67009;-12.35;49.30;105 -303;MADAGASCAR;ANALALAVA;67019;-14.63;47.77;57 -304;MADAGASCAR;ANTALAHA;67025;-14.88;50.25;88 -305;MADAGASCAR;MAJUNGA;67027;-15.67;46.35;18 -306;MADAGASCAR;MAINTIRANO;67073;-18.05;44.03;23 -307;MADAGASCAR;ANTANANARIVO/;67083;-18.80;47.48;1276 -308;MADAGASCAR;TAMATAVE;67095;-18.12;49.40;6 -309;MADAGASCAR;MANANJARY;67143;-21.20;48.37;6 -310;MADAGASCAR;TULEAR;67161;-23.38;43.73;8 -311;MADAGASCAR;FORT-DAUPHIN;67197;-25.03;46.95;9 -312;MALAWI;KARONGA;67423;-9.95;33.88;529 -313;MALAWI;MZIMBA;67485;-11.88;33.62;1351 -314;MALAWI;MZUZU;67489;-11.45;34.02;1253 -315;MALAWI;LILONGWE MALAWI/S. RHODESI;67585.1;-14.00;33.70;1136 -316;MALAWI;ZOMBA;67692.1;-15.40;35.30;957 -317;MALAWI;CHILEKA;67693;-15.68;34.97;767 -318;MALI;TESSALIT;61202;20.20;0.98;491 -319;MALI;KIDAL;61214;18.43;1.35;459 -320;MALI;TOMBOUCTOU;61223;16.72;-3.00;264 -321;MALI;GAO;61226;16.27;-0.05;260 -322;MALI;NIORO DU SAHE;61230;15.23;-9.35;237 -323;MALI;HOMBORI;61240;15.33;-1.68;288 -324;MALI;MENAKA;61250;15.87;2.22;278 -325;MALI;KAYES;61257;14.43;-11.43;47 -326;MALI;MOPTI;61265;14.52;-4.10;272 -327;MALI;KITA;61270;13.07;-9.47;334 -328;MALI;SEGOU;61272;13.40;-6.15;289 -329;MALI;SAN;61277;13.33;-4.83;284 -330;MALI;KENIEBA;61285;12.85;-11.23;132 -331;MALI;BAMAKO/SENOU;61291;12.53;-7.95;381 -332;MALI;KOUTIALA;61293;12.38;-5.47;367 -333;MALI;BOUGOUNI;61296;11.42;-7.50;351 -334;MALI;SIKASSO;61297;11.35;-5.68;375 -335;MAURITANIA;BIR MOGHREIN;61401;25.23;-11.62;360 -336;MAURITANIA;F DERIK;61404.1;22.70;-12.70;298 -337;MAURITANIA;NOUADHIBOU;61415;20.93;-17.03;3 -338;MAURITANIA;ATAR;61421;20.52;-13.07;224 -339;MAURITANIA;AKJOUJT;61437;19.75;-14.37;120 -340;MAURITANIA;NOUAKCHOTT;61442;18.10;-15.95;3 -341;MAURITANIA;TIDJIKJA;61450;18.57;-11.43;402 -342;MAURITANIA;BOUTILIMIT;61461;17.53;-14.68;75 -343;MAURITANIA;ROSSO;61489;16.50;-15.82;6 -344;MAURITANIA;NEMA;61497;16.60;-7.27;269 -345;MAURITANIA;KIFFA;61498;16.63;-11.40;115 -346;MAURITANIA;AIOUN EL ATRO;61499;16.70;-9.60;223 -347;MAURITIUS;ST. BRANDON;61986;-16.45;59.62;4 -348;MAURITIUS;RODRIGUES;61988;-19.68;63.42;59 -349;MAURITIUS;PLAISANCE;61990;-20.43;57.67;57 -350;MAURITIUS;PAMPLEMOUSSES;61995.1;-20.10;57.60;55 -351;MOROCCO;SIDI IFNI;60060;29.37;-10.18;66 -352;MOROCCO;CAPE SPARTEL;60101.1;35.80;-5.90;59 -353;MOROCCO;PORT LYAUTEY;60120.1;34.30;-6.60;12 -354;MOROCCO;SIDI SLIMANE;60136.1;34.23;-6.07;55 -355;MOROCCO;FES/CITY;60141.1;34.00;-5.00;414 -356;MOROCCO;MEKNES;60150;33.88;-5.53;549 -357;MOROCCO;CASABLANCA;60155;33.57;-7.67;62 -358;MOROCCO;NOUASSEUR;60156;33.37;-7.58;206 -359;MOROCCO;KASBA-TADLA;60190;32.53;-6.28;518 -360;MOROCCO;MOGADOR;60220.1;31.50;-9.80;17 -361;MOROCCO;MARRAKECH;60230;31.62;-8.03;466 -362;MOROCCO;BEN GUERIR;60230.1;32.12;-7.88;448 -363;MOROCCO;AGADIR;60250;30.38;-9.57;23 -364;MOROCCO;OUARZAZATE;60265;30.93;-6.90;1140 -365;MOROCCO;TANGER;60318.1;35.50;-5.60;60 -366;MOZAMBIQUE;PORTO AMELIA;67215;-13.00;40.50;50 -367;MOZAMBIQUE;VILA CABRAL;67217;-13.30;35.30;1365 -368;MOZAMBIQUE;NAMPULA;67237;-15.10;39.28;441 -369;MOZAMBIQUE;LUMBO;67241;-15.03;40.67;11 -370;MOZAMBIQUE;TETE;67261;-16.18;33.58;150 -371;MOZAMBIQUE;QUELIMANE;67283;-17.88;36.88;16 -372;MOZAMBIQUE;VILA PERY;67295.1;-19.12;33.47;731 -373;MOZAMBIQUE;BEIRA;67297;-19.80;34.90;16 -374;MOZAMBIQUE;INHAMBANE;67323;-23.87;35.38;15 -375;MOZAMBIQUE;LOURENCO MARQUES/COUNTINHO;67341;-25.90;32.60;44 -376;NAMIBIA;GROOTFONTEIN;68014;-19.60;18.12;1400 -377;NAMIBIA;WINDHOEK;68110;-22.57;17.10;1700 -378;NAMIBIA;J.G.STRIJDOM;68112;-22.48;17.47;1700 -379;NAMIBIA;LUDERITZ;68300;-26.63;15.10;0 -380;NAMIBIA;KEETMANSHOOP;68312;-26.53;18.12;1061 -381;NIGER;BILMA;61017;18.68;12.92;357 -382;NIGER;AGADEZ;61024;16.97;7.98;502 -383;NIGER;TILLABERY;61036;14.20;1.45;210 -384;NIGER;TAHOUA;61043;14.90;5.25;391 -385;NIGER;NGUIGMI;61049;14.25;13.12;286 -386;NIGER;NIAMEY-AERO;61052;13.48;2.17;227 -387;NIGER;BIRNI-NKONNI;61075;13.80;5.25;273 -388;NIGER;MARADI;61080;13.47;7.08;373 -389;NIGER;ZINDER;61090;13.78;8.98;453 -390;NIGER;MAGARIA;61091;12.98;8.93;403 -391;NIGER;MAINE-SOROA;61096;13.23;11.98;337 -392;NIGER;GAYA;61099;11.88;3.45;203 -393;NIGERIA;SOKOTO;65010;13.02;5.25;302 -394;NIGERIA;KANO;65046;12.05;8.53;481 -395;NIGERIA;MAIDUGURI;65082;11.85;13.08;354 -396;NIGERIA;ILORIN;65101;8.48;4.58;305 -397;NIGERIA;MINNA;65123;9.62;6.53;260 -398;NIGERIA;JOS;65134;9.87;8.90;1285 -399;NIGERIA;YOLA;65167;9.23;12.47;174 -400;NIGERIA;LAGOS/IKEJA;65201;6.58;3.33;38 -401;NIGERIA;IBADAN;65208;7.43;3.90;228 -402;NIGERIA;WARRI;65236;5.52;5.73;4 -403;NIGERIA;LOKOJA;65243;7.80;6.73;44 -404;NIGERIA;PORT HARCOURT;65250;4.85;7.02;18 -405;NIGERIA;ENUGU;65257;6.47;7.55;137 -406;NIGERIA;CALABAR;65264;4.97;8.35;63 -407;NIGERIA;MAKURDI;65271;7.68;8.62;97 -408;SAO TOME AND PRINCIPE;S. TOME;61931;0.38;6.72;13 -409;SAO TOME AND PRINCIPE;PRINCIPE;61934;1.65;7.42;5 -410;SENEGAL;SAINT-LOUIS;61600;16.05;-16.45;4 -411;SENEGAL;PODOR;61612;16.65;-14.97;7 -412;SENEGAL;LINGUERE;61627;15.38;-15.12;21 -413;SENEGAL;MATAM;61630;15.65;-13.25;17 -414;SENEGAL;DAKAR/YOFF;61641;14.73;-17.50;24 -415;SENEGAL;GOREE;61641.1;14.40;-19.50;6 -416;SENEGAL;THIES;61641.2;14.80;-17.00;76 -417;SENEGAL;DIOURBEL;61666;14.65;-16.23;9 -418;SENEGAL;KAOLACK;61679;14.13;-16.07;7 -419;SENEGAL;TAMBACOUNDA;61687;13.77;-13.68;50 -420;SENEGAL;ZIGUINCHOR;61695;12.55;-16.27;23 -421;SENEGAL;KOLDA;61698;12.88;-14.97;10 -422;SENEGAL;KEDOUGOU;61699;12.57;-12.22;167 -423;SEYCHELLES;AGALEGA;61974;-10.43;56.75;3 -424;SEYCHELLES;SEYCHELLES IN;63980;-4.67;55.52;3 -425;SIERRA LEONE;LUNGI;61856;8.62;-13.20;27 -426;SIERRA LEONE;BONTHE;61866;7.53;-12.50;8 -427;SIERRA LEONE;BATKANU;61873.1;9.07;-12.43;68 -428;SIERRA LEONE;NJALA;61878;8.10;-12.10;56 -429;SIERRA LEONE;BO;61881;7.95;-11.77;93 -430;SIERRA LEONE;KABALA;61886;9.58;-11.55;464 -431;SIERRA LEONE;DARU;61891;7.98;-10.85;186 -432;SOMALIA;BERBERA;63160;10.42;45.02;9 -433;SOMALIA;HARGEISA;63170;9.50;44.08;1326 -434;SOMALIA;BURAO;63175;9.52;45.57;1032 -435;SOMALIA;SHEIKH;63175.1;9.92;45.25;1463 -436;SOMALIA;BOSASO;63210;11.28;49.18;2 -437;SOMALIA;GARDO;63225;9.52;49.08;812 -438;SOMALIA;GALCAYO;63230;6.85;47.27;302 -439;SOMALIA;BELET UEN;63240;4.70;45.22;173 -440;SOMALIA;ISCIA BAIDOA;63247;3.13;43.67;487 -441;SOMALIA;BARDERA;63250;2.35;42.30;116 -442;SOMALIA;MOGADISCIO;63260;2.03;45.35;9 -443;SOMALIA;CHISIMAIO;63270;-0.37;42.43;10 -444;SOUTH AFRICA;PIETERSBURG;68174;-23.87;29.45;1200 -445;SOUTH AFRICA;MARA;68176;-23.15;29.57;900 -446;SOUTH AFRICA;MACUVILLE;68180;-22.27;29.90;500 -447;SOUTH AFRICA;GOOLDVILLE - HOSP;68192.1;-22.88;30.48;-999 -448;SOUTH AFRICA;MAFEKING;68242.1;-25.85;25.65;1278 -449;SOUTH AFRICA;MARICO - IRR;68250.1;-25.50;26.35;-999 -450;SOUTH AFRICA;BUFFELSPOORT II AGR;68252.1;-25.75;27.48;-999 -451;SOUTH AFRICA;RUSTENBURG - AGR;68252.2;-25.72;27.30;-999 -452;SOUTH AFRICA;PRETORIA;68262;-25.73;28.18;1322 -453;SOUTH AFRICA;PRETORIA - UNIV PROEFPLAAS;68262.1;-25.75;28.27;-999 -454;SOUTH AFRICA;IRENE - WK;68263.1;-25.92;28.22;-999 -455;SOUTH AFRICA;WARMBATHS;68268;-24.90;28.33;1100 -456;SOUTH AFRICA;NELSPRUIT;68288;-25.43;30.98;700 -457;SOUTH AFRICA;SKUKUZA;68296;-24.98;31.60;0 -458;SOUTH AFRICA;ARMOEDSVLAKTE - AGR;68338.1;-26.95;24.63;1250 -459;SOUTH AFRICA;POTCHEFSTROOM;68350;-26.73;27.07;1300 -460;SOUTH AFRICA;JAN SMUTS;68368;-26.13;28.23;1700 -461;SOUTH AFRICA;VEREENIGING - RWB;68369.1;-26.68;27.92;-999 -462;SOUTH AFRICA;ZWARTKOPJES - RWB;68369.2;-26.35;28.07;-999 -463;SOUTH AFRICA;ZUURBEKOM - RWB;68369.3;-26.30;27.80;-999 -464;SOUTH AFRICA;JOHANNESBURG/JOUBERT;68369.4;-26.20;28.10;1753 -465;SOUTH AFRICA;BETHAL;68370;-26.45;29.48;1700 -466;SOUTH AFRICA;NOOITGEDACHT - AGR;68370.1;-26.52;29.97;-999 -467;SOUTH AFRICA;VOLKSRUST - MUN;68378.1;-27.37;29.88;-999 -468;SOUTH AFRICA;ALEXANDER BAY;68406;-28.57;16.53;21 -469;SOUTH AFRICA;PORT NOLLOTH;68408;-29.23;16.87;4 -470;SOUTH AFRICA;UPINGTON;68424;-28.40;21.27;800 -471;SOUTH AFRICA;KIMBERLEY;68438;-28.80;24.77;1200 -472;SOUTH AFRICA;KOOPMANSFONTEIN II - AGR;68438.1;-28.20;24.07;-999 -473;SOUTH AFRICA;BLOEMFONTEIN;68442;-29.10;26.30;1400 -474;SOUTH AFRICA;GLEN COLLEGE - AGR;68442.1;-28.95;26.33;-999 -475;SOUTH AFRICA;BETHLEHEM AIR;68461;-28.25;28.33;1700 -476;SOUTH AFRICA;ESTCOURT;68478;-29.00;29.88;1100 -477;SOUTH AFRICA;LADYSMITH;68479;-28.57;29.77;1078 -478;SOUTH AFRICA;CAPE ST. LUCI;68496;-28.50;32.40;107 -479;SOUTH AFRICA;ESHOWE - MUN;68498.1;-28.88;31.47;-999 -480;SOUTH AFRICA;OKIEP;68512.1;-29.60;17.88;918 -481;SOUTH AFRICA;VANWYKSVLEI;68524;-30.35;21.82;1000 -482;SOUTH AFRICA;DE AAR;68538;-30.65;24.02;1200 -483;SOUTH AFRICA;ALIWAL NORTH;68546;-30.72;26.72;1300 -484;SOUTH AFRICA;WEPENER;68550;-29.73;27.03;1400 -485;SOUTH AFRICA;CEDARA;68580;-29.53;30.28;1100 -486;SOUTH AFRICA;PORT SHEPSTON;68584;-30.73;30.45;17 -487;SOUTH AFRICA;PADDOCK;68584.1;-30.82;30.22;-999 -488;SOUTH AFRICA;DURBAN;68588;-29.97;30.95;14 -489;SOUTH AFRICA;VREDENDAL;68614;-31.67;18.50;34 -490;SOUTH AFRICA;CALVINIA;68618;-31.47;19.77;1000 -491;SOUTH AFRICA;FRASERBURG;68624;-31.92;21.52;1300 -492;SOUTH AFRICA;GROOTFONTEIN II - AGR;68638.1;-31.48;25.03;1250 -493;SOUTH AFRICA;QUEENSTOWN;68648;-31.90;26.87;1100 -494;SOUTH AFRICA;CAPE HERMES - VRT;68674.1;-31.63;29.55;-999 -495;SOUTH AFRICA;CAPE COLUMBIN;68712;-32.83;17.85;60 -496;SOUTH AFRICA;LANGGEWENS - AGR;68714.1;-33.28;18.70;-999 -497;SOUTH AFRICA;SUTHERLAND;68722;-32.38;20.67;1500 -498;SOUTH AFRICA;BEAUFORT WEST;68728;-32.35;22.58;900 -499;SOUTH AFRICA;GRAAFF-RENET;68736.1;-32.23;24.53;678 -500;SOUTH AFRICA;GREAT FISH POINT - VRT;68752.1;-33.53;27.10;-999 -501;SOUTH AFRICA;BATHURST - AGR;68752.2;-33.52;26.82;-999 -502;SOUTH AFRICA;DOHNE;68754;-32.52;27.47;900 -503;SOUTH AFRICA;CAPETOWN;68816;-33.90;18.50;12 -504;SOUTH AFRICA;KIRSTENBOSCH - BOT;68816.1;-33.98;18.43;-999 -505;SOUTH AFRICA;CAPE TOWN-SAAO:CSIR;68816.2;-33.93;18.48;12 -506;SOUTH AFRICA;ELSENBURG 11 - AGR;68816.4;-33.85;18.83;-999 -507;SOUTH AFRICA;WELLINGTON - MUN;68816.5;-33.63;19.00;-999 -508;SOUTH AFRICA;GEORGE AIRPOR;68828;-34.00;22.38;193 -509;SOUTH AFRICA;DIEPWALLE - BOS;68828.1;-33.95;23.17;-999 -510;SOUTH AFRICA;PORT ELIZABET;68842;-33.98;25.60;61 -511;SOUTH AFRICA;UITENHAGE - PUR;68842.1;-33.78;25.43;32 -512;SOUTH AFRICA;HILLSIDE FARM;68842.2;-33.42;25.45;-999 -513;SOUTH AFRICA;EAST LONDON;68858;-33.03;27.83;125 -514;SOUTH AFRICA;TRISTAN DA CU;68902;-37.05;-12.32;23 -515;SOUTH AFRICA;GOUGH ISLAND;68906;-40.35;-9.88;54 -516;SOUTH AFRICA;CAPE POINT;68916;-34.35;18.50;226 -517;SOUTH AFRICA;CAPE AGULHAS;68920;-34.83;20.02;8 -518;SOUTH AFRICA;CAPE ST. BLAIZE - VRT;68928.1;-34.18;22.15;61 -519;SOUTH AFRICA;CAPE ST. FRAN;68938;-34.20;24.83;7 -520;SOUTH AFRICA;MARION ISLAND;68994;-46.88;37.87;22 -521;ILES CROZET;CROZET;61997;-46.43;51.87;143 -522;TERRES AUSTRALES ET ANTARCTIQUES FRANCAISES;PORT-AUX-FRAN;61998;-49.35;70.25;30 -523;ST. HELENA ISLAND;ST. HELENA IS.;61901;-16.00;-5.70;627 -524;SOUTH ORKNEY ISLANDS;SIGNY ISLAND;89042;-60.72;-45.60;6 -525;SUDAN;WADI HALFA;62600;21.92;31.32;126 -526;SUDAN;ABU HAMED;62640;19.53;33.32;312 -527;SUDAN;PORT SUDAN;62641;19.58;37.22;2 -528;SUDAN;DONGOLA;62650;19.17;30.48;226 -529;SUDAN;SUAKIN;62652;19.10;37.33;3 -530;SUDAN;GEBEIT;62652.1;19.00;36.80;796 -531;SUDAN;KARIMA;62660;18.55;31.85;249 -532;SUDAN;TOKAR;62671;18.43;37.73;19 -533;SUDAN;ATBARA;62680;17.70;33.97;345 -534;SUDAN;SHENDI;62700;16.70;33.43;360 -535;SUDAN;KHARTOUM;62721;15.60;32.55;380 -536;SUDAN;AROMA;62722;15.83;36.15;431 -537;SUDAN;KASSALA;62730;15.47;36.40;500 -538;SUDAN;HALFA EL GEDI;62733;15.32;35.60;451 -539;SUDAN;ED DUEIM;62750;14.00;32.33;378 -540;SUDAN;WAD MEDANI;62751;14.40;33.48;408 -541;SUDAN;GEDAREF;62752;14.03;35.40;599 -542;SUDAN;GALLABAT;62752.1;12.80;36.17;764 -543;SUDAN;EL FASHER;62760;13.62;25.33;730 -544;SUDAN;SENNAR;62762;13.55;33.62;418 -545;SUDAN;GENEINA;62770;13.48;22.45;805 -546;SUDAN;ZALINGEI;62770.1;12.90;23.48;900 -547;SUDAN;EL OBEID;62771;13.17;30.23;574 -548;SUDAN;KOSTI;62772;13.17;32.67;381 -549;SUDAN;SINGA;62774.1;13.15;33.95;436 -550;SUDAN;EN NAHUD;62781;12.70;28.43;564 -551;SUDAN;NYALA;62790;12.05;24.88;674 -552;SUDAN;ABU NAAMA;62795;12.73;34.13;445 -553;SUDAN;DAMAZINE;62805;11.78;34.38;470 -554;SUDAN;ROSEIRES;62805.1;11.85;34.38;467 -555;SUDAN;KADUGLI;62810;11.00;29.72;499 -556;SUDAN;MALAKAL;62840;9.55;31.65;388 -557;SUDAN;DOLEIB HILL;62840.1;9.30;31.63;391 -558;SUDAN;WAU;62880;7.70;28.02;438 -559;SUDAN;JUBA;62941;4.87;31.60;457 -560;SUDAN;TORIT;62941.1;4.33;32.92;-999 -561;TANZANIA;MWANZA;63756;-2.47;32.92;1140 -562;TANZANIA;MOSHI;63790;-3.35;37.33;831 -563;TANZANIA;KIGOMA;63801;-4.88;29.63;885 -564;TANZANIA;TABORA AIRPOR;63832;-5.08;32.83;1190 -565;TANZANIA;TANGA;63844;-5.08;39.07;35 -566;TANZANIA;PEMBA;63845.1;-5.07;39.72;18 -567;TANZANIA;DODOMA;63862;-6.17;35.77;1120 -568;TANZANIA;ZANZIBAR/KISA;63870;-6.22;39.22;15 -569;TANZANIA;DAR ES SALAAM;63894;-6.87;39.20;55 -570;TANZANIA;MBEYA;63932;-8.93;33.47;1707 -571;TANZANIA;SONGEA;63962;-10.68;35.58;1067 -572;TANZANIA;MTWARA;63971;-10.27;40.18;113 -573;THE GAMBIA;BATHURST/YUNDUM;61701;13.40;-16.70;26 -574;THE GAMBIA;GEORGETOWN;61721;13.53;-14.77;1 -575;TOGO;DAPAON;65351;10.87;0.25;330 -576;TOGO;MANGO;65352;10.37;0.47;146 -577;TOGO;NIAMTOUGOU;65355;9.77;1.10;343 -578;TOGO;KARA;65357;9.55;1.17;341 -579;TOGO;SOKODE;65361;8.98;1.15;387 -580;TOGO;ATAKPAME;65376;7.58;1.12;402 -581;TOGO;TABLIGBO;65380;6.58;1.50;44 -582;TOGO;LOME;65387;6.17;1.25;25 -583;TUNISIA;BIZERTE;60714;37.25;9.80;3 -584;TUNISIA;TUNIS-CARTHAG;60715;36.83;10.23;4 -585;TUNISIA;KELIBIA;60720;36.85;11.08;30 -586;TUNISIA;JENDOUBA;60725;36.48;8.80;144 -587;TUNISIA;KAIROUAN;60735;35.67;10.10;68 -588;TUNISIA;MONASTIR-SKAN;60740;35.67;10.75;3 -589;TUNISIA;GAFSA;60745;34.42;8.82;314 -590;TUNISIA;SFAX EL-MAOU;60750;34.72;10.68;23 -591;TUNISIA;TOZEUR;60760.1;33.92;8.17;45 -592;TUNISIA;GABES;60765;33.88;10.10;5 -593;TUNISIA;DJERBA;60769.1;33.80;10.60;6 -594;TUNISIA;REMADA;60775;32.32;10.40;301 -595;UGANDA;GULU;63630;2.75;32.33;1105 -596;UGANDA;FORT PORTAL;63674.1;0.67;30.30;1615 -597;UGANDA;KAMPALA;63680;0.32;32.62;1140 -598;UGANDA;ENTEBBE AIRPO;63705;0.05;32.45;1155 -599;UGANDA;MASAKA;63705.1;-0.35;31.78;1280 -600;ZAIRE;MBANDAKA;64005;0.05;18.27;317 -601;ZAIRE;LISALA;64014;2.32;21.57;463 -602;ZAIRE;LIBENGE;64015.1;3.63;18.63;380 -603;ZAIRE;BASOKO;64018;1.25;23.60;366 -604;ZAIRE;BUTA;64034;2.78;24.78;410 -605;ZAIRE;KISANGANI;64040;0.52;25.18;396 -606;ZAIRE;ISIRO;64062;2.77;27.65;764 -607;ZAIRE;WATSA;64074;3.07;29.50;1008 -608;ZAIRE;INONGO;64115;-1.97;18.27;300 -609;ZAIRE;LODJA;64146;-3.48;23.47;500 -610;ZAIRE;KINDU;64155;-2.95;25.92;497 -611;ZAIRE;BUKAVU;64180;-2.52;28.85;1612 -612;ZAIRE;GOMA;64184;-1.68;29.23;1552 -613;ZAIRE;BANANA;64201.1;-6.00;12.40;2 -614;ZAIRE;MATADI;64207;-5.80;13.43;340 -615;ZAIRE;KINSHASA/NDJ;64210;-4.38;15.43;312 -616;ZAIRE;KIKWIT;64222;-5.03;18.80;449 -617;ZAIRE;ILEBO;64224;-4.33;20.58;420 -618;ZAIRE;KANANGA;64235;-5.88;22.42;657 -619;ZAIRE;LUSAMBO;64246;-4.97;23.43;424 -620;ZAIRE;MANONO;64282;-7.28;27.43;633 -621;ZAIRE;KALEMIE;64285;-5.88;29.18;818 -622;ZAIRE;KAMINA/BASE;64315;-8.63;25.25;1106 -623;ZAIRE;MITWABA;64348;-8.60;27.33;1579 -624;ZAIRE;LUBUMBASHI-LU;64360;-11.67;27.48;1298 -625;ZAMBIA;ABERCORN;67413.1;-8.87;31.37;1524 -626;ZAMBIA;MWINILUNGA;67441;-11.75;24.43;1363 -627;ZAMBIA;MANSA;67461;-11.10;28.85;1259 -628;ZAMBIA;KASAMA;67475;-10.22;31.13;1384 -629;ZAMBIA;MPIKA;67477;-11.90;31.43;1402 -630;ZAMBIA;KASEMPA;67541;-13.53;25.85;1234 -631;ZAMBIA;NDOLA;67561;-13.00;28.65;1270 -632;ZAMBIA;CHIPATA;67581;-13.55;32.58;1032 -633;ZAMBIA;MONGU;67633;-15.25;23.15;1053 -634;ZAMBIA;KABWE;67663;-14.45;28.47;1207 -635;ZAMBIA;LUSAKA INTERN;67665;-15.32;28.45;1154 -636;ZAMBIA;LUSAKA CITY A;67666;-15.42;28.32;1280 -637;ZAMBIA;LIVINGSTONE;67743;-17.82;25.82;986 -638;ZAMBIA;CHOMA;67753;-16.83;27.07;1278 -639;ZIMBABWE;KAROI;67765;-16.83;29.62;1344 -640;ZIMBABWE;HARARE;67774;-17.83;31.02;1472 -641;ZIMBABWE;HARARE;67775;-17.92;31.13;1480 -642;ZIMBABWE;GWELO;67867.1;-19.43;29.75;1411 -643;ZIMBABWE;GRAND REEF;67895.1;-18.98;32.45;1018 -644;ZIMBABWE;UMTALI;67895.2;-18.97;32.67;1119 -645;ZIMBABWE;BULAWAYO;67964;-20.15;28.62;1344 -646;ZIMBABWE;MASVINGO;67975;-20.07;30.87;1095 -647;ZIMBABWE;CHIPINGE;67983;-20.20;32.62;1132 -648;AMSTERDAM ISLAND;ILE NOUVELLE-AMSTERDAM;61996;-37.80;77.50;28 -649;ASCENSION ISLAND;WIDE AWAKE FI;61902;-7.97;-14.40;79 -650;CANARY ISLANDS;IZANA;60010;28.30;-16.50;2368 -651;CANARY ISLANDS;TENERIFE/LOS;60015;28.47;-16.32;617 -652;CANARY ISLANDS;SANTA CRUZ DE;60020;28.45;-16.25;36 -653;CANARY ISLANDS;LAS PALAMAS;60030;27.90;-15.30;25 -654;CANARY ISLANDS;FUERTEVENTURA;60035;28.45;-13.87;23 -655;SPAIN;CEUTA;60320;35.90;-5.32;4 -656;CHAGOS ARCHIPELAGO;DIEGO GARCIA;61967;-7.30;72.40;3 -657;LESOTHO;BUTHA-BUTHE;68461.1;-28.77;28.25;1770 -658;MAYOTTE;DZAOUDZI/PAMA;67005;-12.80;45.28;7 -659;REUNION ISLAND;SAINT-DENIS/G;61980;-20.88;55.52;25 -660;REUNION ISLAND;SAINT-PIERRE;61984;-21.33;55.48;53 -661;TROMELIN ISLAND;SERGE-FROLOW;61976;-15.88;54.52;13 -662;WESTERN SAHARA;VILLA CISNERO;60096;23.70;-15.87;10 -663;AFGHANISTAN;MAZAR-I-SHARI;40911;36.70;67.20;378 -664;AFGHANISTAN;HERAT;40938;34.22;62.22;964 -665;AFGHANISTAN;CHAKHCHARAN;40942;34.50;65.30;2230 -666;AFGHANISTAN;KABUL AIRPORT;40948;34.55;69.22;1791 -667;AFGHANISTAN;KANDAHAR AIRP;40990;31.50;65.85;1010 -668;BAHRAIN;BAHRAIN;41150;26.27;50.65;2 -669;BANGLADESH;RANGPUR;41859;25.73;89.23;34 -670;BANGLADESH;DINAJPUR;41863;25.65;88.68;37 -671;BANGLADESH;BOGRA;41883;24.85;89.37;20 -672;BANGLADESH;MYMENSINGH;41886;24.72;90.43;19 -673;BANGLADESH;SYLHET;41891;24.90;91.88;35 -674;BANGLADESH;RAJSHAHI;41895;24.37;88.70;20 -675;BANGLADESH;SIRAJGANI;41898.1;24.45;89.75;16 -676;BANGLADESH;PABNA;41907.1;24.02;89.23;15 -677;BANGLADESH;SRIMANGAL;41915.1;24.30;91.73;21 -678;BANGLADESH;DHAKA;41923;23.77;90.38;9 -679;BANGLADESH;NARAYANJAN;41923.1;23.62;90.50;8 -680;BANGLADESH;FARODPUR;41929;23.60;89.85;9 -681;BANGLADESH;COMILLA;41933;23.43;91.18;10 -682;BANGLADESH;BRAHMANBARIA;41933.1;23.98;91.12;10 -683;BANGLADESH;JESSORE;41936;23.18;89.17;7 -684;BANGLADESH;SATKHIRA;41946;22.72;89.08;6 -685;BANGLADESH;KHULNA;41947.1;22.85;89.56;-999 -686;BANGLADESH;BARISAL;41950;22.75;90.37;4 -687;BANGLADESH;MAIJDE COURT;41953.1;22.86;91.10;5 -688;BANGLADESH;RANGAMATI;41966;22.63;92.20;63 -689;BANGLADESH;CHITTAGONG;41977;22.35;91.82;34 -690;BANGLADESH;CHITTAGONG;41978;22.27;91.82;6 -691;BANGLADESH;COXS BAZAR;41992;21.43;91.97;4 -692;CAMBODIA;SIEMREAP;48966;13.37;103.85;15 -693;CAMBODIA;STUNG TRENG;48972;13.52;105.97;56 -694;CAMBODIA;KAMPOT;48985;10.62;104.22;5 -695;CAMBODIA;PHNOM-PENH/;48991;11.55;104.85;10 -696;CAMBODIA;KOMPONG-CHAM;48995;12.00;105.45;16 -697;CHINA;ROYAL OBSERVA;45005;22.30;114.17;62 -698;CHINA;MOHE;50136;53.47;122.37;297 -699;CHINA;HUMA;50353;51.72;126.65;179 -700;CHINA;TULIHE;50434;50.45;121.70;733 -701;CHINA;AIHUI;50468;50.25;127.45;166 -702;CHINA;HAILAR;50527;49.22;119.75;611 -703;CHINA;XIAOERGOU;50548;49.20;123.72;288 -704;CHINA;NENJIANG;50557;49.17;125.23;243 -705;CHINA;SUNWU;50564;49.43;127.35;235 -706;CHINA;XIN BARAG YOU;50603;48.67;116.82;556 -707;CHINA;MANZHOULI;50603.1;49.60;117.42;710 -708;CHINA;BUGT;50632;48.77;121.92;739 -709;CHINA;KESHAN;50658;48.05;125.88;237 -710;CHINA;ARXAN;50727;47.17;119.95;1028 -711;CHINA;QIQIHAR;50745;47.38;123.92;148 -712;CHINA;HAILUN;50756;47.43;126.97;240 -713;CHINA;YICHUN;50774;47.72;128.90;232 -714;CHINA;FUJIN;50788;47.23;131.98;65 -715;CHINA;TAILAI;50844;46.40;123.42;150 -716;CHINA;ANDA;50854;46.38;125.32;150 -717;CHINA;BAOQING;50888;46.32;132.18;83 -718;CHINA;ULIASTAI;50915.1;45.50;118.00;839 -719;CHINA;DONG UJIMQIN QI;50915.2;45.52;116.97;839 -720;CHINA;QIAN GORLOS;50949;45.12;124.83;138 -721;CHINA;HARBIN;50953;45.75;126.77;143 -722;CHINA;TONGHE;50963;45.97;128.73;110 -723;CHINA;SHANGZHI;50968;45.22;127.97;191 -724;CHINA;JIXI;50978;45.28;130.95;234 -725;CHINA;HULIN;50983;45.77;132.97;103 -726;CHINA;KABA HE;51053;48.05;86.35;534 -727;CHINA;ALTAY;51076;47.73;88.08;737 -728;CHINA;FUYUN;51087;46.98;89.52;827 -729;CHINA;TACHENG;51133;46.73;83.00;535 -730;CHINA;HOBOKSAR;51156;46.78;85.72;1294 -731;CHINA;KARAMAY;51243;45.60;84.85;428 -732;CHINA;BAYTIK SHAN;51288;45.37;90.53;1651 -733;CHINA;JINGHE;51334;44.62;82.90;321 -734;CHINA;QITAI;51379;44.02;89.57;794 -735;CHINA;YINING;51431;43.95;81.33;663 -736;CHINA;URUMQI;51463;43.78;87.62;919 -737;CHINA;BALGUNTAY;51467;42.67;86.33;1753 -738;CHINA;QIJIAOJING;51495;43.48;91.63;874 -739;CHINA;TURPAN;51495.1;42.92;91.00;24 -740;CHINA;BAYANBULAK;51542;43.03;84.15;2459 -741;CHINA;KUQA;51644;41.72;82.95;1100 -742;CHINA;KORLA;51656;41.75;86.13;933 -743;CHINA;KASHI;51709;39.47;75.98;1291 -744;CHINA;AKQI;51711;40.93;78.45;1986 -745;CHINA;BACHU;51716;39.80;78.57;1117 -746;CHINA;ALAR;51730;40.50;81.05;1013 -747;CHINA;TIKANLIK;51765;40.63;87.70;847 -748;CHINA;RUOQIANG;51777;39.03;88.17;889 -749;CHINA;SHACHE;51811;38.43;77.27;1232 -750;CHINA;PISHAN;51818;37.62;78.28;1376 -751;CHINA;HOTAN;51828;37.13;79.93;1375 -752;CHINA;ANDIR;51848;37.93;83.65;1264 -753;CHINA;QIEMO;51848.1;38.15;85.55;1248 -754;CHINA;MANGNAI;51886;38.25;90.85;2945 -755;CHINA;YIWU;52118;43.27;94.70;1729 -756;CHINA;HAMI;52203;42.82;93.52;739 -757;CHINA;EJIN QI;52267;41.95;101.07;941 -758;CHINA;MAZONG SHAN;52323;41.80;97.03;1770 -759;CHINA;GUAIZIHU;52378.1;41.18;103.27;959 -760;CHINA;DUNHUANG;52418;40.15;94.68;1140 -761;CHINA;ANXI;52418.1;40.53;95.77;1171 -762;CHINA;YUMENZHEN;52436;40.27;97.03;1527 -763;CHINA;BAYAN MOD;52495;40.75;104.50;1329 -764;CHINA;JIUQUAN;52533;39.77;98.48;1478 -765;CHINA;QILIAN TUOLE;52533.1;38.82;98.42;3361 -766;CHINA;LENGHU;52602;38.83;93.38;2734 -767;CHINA;ZHANGYE;52652;38.93;100.43;1483 -768;CHINA;MINQIN;52681;38.63;103.08;1367 -769;CHINA;DA-QAIDAM;52713;37.85;95.37;3174 -770;CHINA;DELINGHA;52737;37.37;97.37;2982 -771;CHINA;GANGCA;52754;37.33;100.13;3301 -772;CHINA;WUSHAOLING;52787;37.20;102.87;3044 -773;CHINA;GOLMUD;52818;36.42;94.90;2809 -774;CHINA;DULAN;52836;36.30;98.10;3192 -775;CHINA;UULAN CAKA;52836.1;36.78;99.08;3088 -776;CHINA;XINING;52866;36.62;101.77;2262 -777;CHINA;GONGHE;52866.1;36.27;100.62;2835 -778;CHINA;LANZHOU;52889;36.05;103.88;1518 -779;CHINA;WUDAOLIANG;52908;35.22;93.08;4613 -780;CHINA;TONGDE;52957;35.27;100.65;3290 -781;CHINA;HUAJIALING;52996;35.38;105.00;2450 -782;CHINA;ERENHOT;53068;44.22;111.53;965 -783;CHINA;NARAN BULAG;53083;44.62;114.15;1183 -784;CHINA;MANDAL;53149;42.53;110.13;1223 -785;CHINA;ABAG QI;53192;44.02;114.95;1128 -786;CHINA;HAILS;53231;41.45;106.38;1510 -787;CHINA;JURH;53276;42.40;112.90;1152 -788;CHINA;HALIUT;53336;41.57;108.52;1290 -789;CHINA;DARHAN MUMINGGAN;53352.1;41.70;110.43;1376 -790;CHINA;HUADE;53391;41.90;114.00;1484 -791;CHINA;HUHEHAOTE;53463.1;40.80;111.63;1063 -792;CHINA;JINING;53480;41.03;113.07;1416 -793;CHINA;DATONG;53487;40.10;113.33;1069 -794;CHINA;JARTAI;53502;39.78;105.75;1033 -795;CHINA;LINHE;53513;40.77;107.40;1041 -796;CHINA;OTOG QI;53529;39.10;107.98;1381 -797;CHINA;DONGSHENG;53543;39.83;109.98;1459 -798;CHINA;HEQU;53564;39.38;111.15;861 -799;CHINA;XINGXIAN;53564.1;38.47;111.13;1013 -800;CHINA;WUTAI SHAN;53588;39.03;113.53;2898 -801;CHINA;YU XIAN;53593;39.83;114.57;910 -802;CHINA;YINCHUAN;53614;38.48;106.22;1112 -803;CHINA;ALXA ZUOQI;53614.1;38.83;105.67;1561 -804;CHINA;YULIN;53646;38.23;109.70;1058 -805;CHINA;YUANPING;53673;38.75;112.70;838 -806;CHINA;SHIJIAZHUANG;53698;38.03;114.42;81 -807;CHINA;ZHONGNING;53705;37.48;105.67;1185 -808;CHINA;YANCHI;53723;37.78;107.40;1349 -809;CHINA;LISHI;53764;37.50;111.10;951 -810;CHINA;TAIYUAN;53772;37.78;112.55;779 -811;CHINA;YUSHE;53787;37.07;112.98;1042 -812;CHINA;XINGTAI;53798;37.07;114.50;78 -813;CHINA;YAN AN;53845;36.60;109.50;959 -814;CHINA;JIEXIU;53863;37.05;111.93;750 -815;CHINA;ANYANG;53898;36.12;114.37;76 -816;CHINA;PINGLIANG;53915;35.55;106.67;1348 -817;CHINA;XIFENGZHEN;53923;35.73;107.63;1423 -818;CHINA;YUNCHENG;53959;35.03;111.02;376 -819;CHINA;YANGCHENG;53975;35.48;112.40;659 -820;CHINA;XI UJIMQIN QI;54012;44.58;117.60;997 -821;CHINA;JARUD QI;54026;44.57;120.90;266 -822;CHINA;LINDONG;54027;43.98;119.40;485 -823;CHINA;CHANGLING;54049;44.25;123.97;190 -824;CHINA;MUDANJIANG;54094;44.57;129.60;242 -825;CHINA;SUIFENHE;54096;44.38;131.15;498 -826;CHINA;XILIN HOT;54102;43.95;116.07;991 -827;CHINA;LINXI;54115;43.60;118.07;800 -828;CHINA;TONGLIAO;54135;43.60;122.27;180 -829;CHINA;SIPING;54157;43.18;124.33;165 -830;CHINA;CHANGCHUN;54161;43.90;125.22;238 -831;CHINA;DUNHUA;54186;43.37;128.20;526 -832;CHINA;DUOLUN;54208;42.18;116.47;1247 -833;CHINA;CHIFENG;54218;42.27;118.97;572 -834;CHINA;BUGT;54226;42.33;120.70;401 -835;CHINA;ZHANGWU;54236;42.42;122.53;84 -836;CHINA;FUXIN;54236.1;42.03;121.65;144 -837;CHINA;QINGYUAN;54259;42.10;124.95;235 -838;CHINA;HUADIAN;54273;42.98;126.75;264 -839;CHINA;YANJI;54292;42.88;129.47;178 -840;CHINA;FENGNING;54308;41.22;116.63;661 -841;CHINA;WEICHANG;54311;41.93;117.75;844 -842;CHINA;CHAOYANG;54324;41.55;120.45;176 -843;CHINA;JINZHOU;54337;41.13;121.12;70 -844;CHINA;XINGCHENG;54337.1;40.58;120.70;9 -845;CHINA;SHENYANG;54342;41.77;123.43;43 -846;CHINA;CAOHEKOU;54346.1;40.90;123.90;242 -847;CHINA;LINJIANG;54374;41.72;126.92;333 -848;CHINA;JIAN;54377;41.10;126.15;179 -849;CHINA;TONGHUA;54377.1;41.68;125.90;403 -850;CHINA;CHANGBAI;54386.1;41.35;128.30;1040 -851;CHINA;ZHANGJIAKOU;54401;40.78;114.88;726 -852;CHINA;HUAILAI;54405;40.40;115.50;538 -853;CHINA;CHENGDE;54423;40.97;117.93;374 -854;CHINA;QINGLONG;54436;40.40;118.95;228 -855;CHINA;YINGKOU;54471;40.67;122.20;4 -856;CHINA;GAIXIAN XIONGYUE;54471.1;40.17;122.15;20 -857;CHINA;KUANDIAN;54493;40.72;124.78;261 -858;CHINA;DANDONG;54497;40.05;124.33;14 -859;CHINA;HEZE;54509.1;35.25;115.43;50 -860;CHINA;BEIJING;54511;39.93;116.28;55 -861;CHINA;TIANJIN;54527;39.10;117.17;5 -862;CHINA;TANGSHAN;54534;39.67;118.15;29 -863;CHINA;LETING;54539;39.43;118.90;12 -864;CHINA;BAODING;54602;38.85;115.57;19 -865;CHINA;CANGZHOU;54616;38.33;116.83;11 -866;CHINA;DALIAN;54662;38.90;121.63;97 -867;CHINA;DEZHOU;54715.1;37.48;116.37;23 -868;CHINA;HUIMIN;54725;37.50;117.53;12 -869;CHINA;YANTAI;54751.1;37.53;121.40;47 -870;CHINA;LONGKOU;54753;37.62;120.32;5 -871;CHINA;CHENGSHANTOU;54776;37.40;122.68;47 -872;CHINA;XINXIAN;54808;36.03;115.58;47 -873;CHINA;JINAN;54823;36.68;116.98;58 -874;CHINA;TAI SHAN;54826;36.25;117.10;1536 -875;CHINA;YIYUAN;54836;36.18;118.15;302 -876;CHINA;WEIFANG;54843;36.70;119.08;51 -877;CHINA;QINGDAO;54857;36.07;120.33;77 -878;CHINA;HAIYANG;54863;36.77;121.17;64 -879;CHINA;LAIYANG;54863.1;36.93;120.70;31 -880;CHINA;YANZHOU;54916;35.57;116.85;53 -881;CHINA;LINYI;54938;35.05;118.35;86 -882;CHINA;RIZHAO;54945;35.38;119.53;15 -883;CHINA;JUXIAN;54945.1;35.58;118.83;107 -884;CHINA;SHIQUANHE;55228;32.50;80.08;4279 -885;CHINA;BAINGOIN;55279;31.37;90.02;-999 -886;CHINA;NAGQU;55299;31.48;92.07;4508 -887;CHINA;XAINZA;55472;30.95;88.63;4670 -888;CHINA;XIGAZE;55578;29.25;88.88;3837 -889;CHINA;LHASA;55591;29.67;91.13;3650 -890;CHINA;TINGRI;55664;28.63;87.08;4302 -891;CHINA;LHUNZE;55696;28.42;92.47;3861 -892;CHINA;PAGRI;55773;27.73;89.08;-999 -893;CHINA;TUOTUOHE;56004;34.22;92.43;4535 -894;CHINA;ZADOI;56018;32.90;95.30;4068 -895;CHINA;QUMARLEB;56021;34.13;95.78;4176 -896;CHINA;YUSHU;56029;33.02;97.02;3682 -897;CHINA;MADOI;56033;34.92;98.22;4273 -898;CHINA;DARLAG;56046;33.75;99.65;3968 -899;CHINA;HENAN;56065;34.73;101.60;3500 -900;CHINA;RUOERGAI;56079;33.58;102.97;3441 -901;CHINA;HEZUO;56080;35.00;102.90;2910 -902;CHINA;MINXIAN;56080.1;34.43;104.02;2315 -903;CHINA;LINXIA;56080.2;35.58;103.18;1917 -904;CHINA;WUDU;56096;33.40;104.92;1079 -905;CHINA;SOG XIAN;56106;31.88;93.78;4024 -906;CHINA;DENGQEN;56116;31.42;95.60;3874 -907;CHINA;QAMDO;56137;31.15;97.17;3307 -908;CHINA;DEGE;56144;31.73;98.57;3204 -909;CHINA;GARZE;56146;31.62;100.00;-999 -910;CHINA;SERTAR;56152;32.28;100.33;3896 -911;CHINA;DAWU;56167;30.98;101.12;2959 -912;CHINA;BARKAM;56172;31.90;102.23;2666 -913;CHINA;XIAOJIN;56172.1;31.00;102.35;2369 -914;CHINA;SONGPAN;56182;32.65;103.57;2852 -915;CHINA;PINGWU;56193;32.42;104.52;877 -916;CHINA;MIANYANG;56196;31.47;104.68;472 -917;CHINA;BATANG;56247;30.00;99.10;2589 -918;CHINA;LITANG;56257;30.00;100.27;3950 -919;CHINA;YAAN;56287;29.98;103.00;629 -920;CHINA;CHENGDU;56294;30.67;104.02;508 -921;CHINA;NYINGCHI;56312;29.57;94.47;3000 -922;CHINA;DAOCHENG;56357;29.05;100.30;3729 -923;CHINA;KANGDING;56374;30.05;101.97;2617 -924;CHINA;EMEI SHAN;56385;29.52;103.33;3049 -925;CHINA;LESHAN;56385.1;29.57;103.75;424 -926;CHINA;DEQEN;56444;28.50;98.90;3488 -927;CHINA;JIULONG;56462;29.00;101.50;2994 -928;CHINA;YIBIN;56492;28.80;104.60;342 -929;CHINA;XICHANG;56571;27.90;102.27;1599 -930;CHINA;ZHAOTONG;56586;27.33;103.75;1950 -931;CHINA;LEIBO;56586.1;28.27;103.58;1475 -932;CHINA;LIJING;56651;26.83;100.47;2394 -933;CHINA;HUILI;56671;26.65;102.25;1788 -934;CHINA;HUIZE;56684;26.42;103.28;2110 -935;CHINA;WEINING;56691;26.87;104.28;2236 -936;CHINA;TENGCHONG;56739;25.12;98.48;1649 -937;CHINA;BAOSHAN;56748;25.13;99.22;1655 -938;CHINA;DALI;56751;25.70;100.18;1992 -939;CHINA;YUANMOU;56763;25.73;101.87;1120 -940;CHINA;KUNMING;56778;25.02;102.68;1892 -941;CHINA;ZHANYI;56786;25.58;103.83;1900 -942;CHINA;ZHANYI;56786.1;25.58;103.83;866 -943;CHINA;RUILI;56838;24.02;97.83;776 -944;CHINA;LUXI;56886;24.53;103.77;1708 -945;CHINA;LANCANG;56946.1;23.43;99.13;490 -946;CHINA;LINCANG;56951;23.95;100.22;1503 -947;CHINA;LANCANG;56954;22.57;99.93;1054 -948;CHINA;JINGHONG;56959;22.02;100.80;553 -949;CHINA;SIMAO;56964;22.77;100.98;1303 -950;CHINA;YUANJIANG;56966;23.60;101.98;398 -951;CHINA;MENGLA;56969;21.50;101.58;633 -952;CHINA;JIANGCHENG;56977;22.62;101.82;1121 -953;CHINA;MENGZI;56985;23.38;103.38;1302 -954;CHINA;HEKOU;56985.1;22.50;103.95;1367 -955;CHINA;TIANSHUI;57006;34.58;105.75;1143 -956;CHINA;BAOJI;57016;34.35;107.13;610 -957;CHINA;XIAN;57036;34.30;108.93;398 -958;CHINA;HUA SHAN;57046;34.48;110.08;2063 -959;CHINA;LUSHI;57067;34.05;111.03;570 -960;CHINA;LUOYANG;57071.1;35.00;112.50;136 -961;CHINA;ZHENGZHOU;57083;34.72;113.65;111 -962;CHINA;HANZHONG;57127;33.07;107.03;509 -963;CHINA;NANYANG;57178;33.03;112.58;131 -964;CHINA;XIHUA;57193;33.78;114.52;53 -965;CHINA;WANYUAN;57237;32.07;108.03;674 -966;CHINA;ANKANG;57245;32.72;109.03;291 -967;CHINA;FANGXIAN;57259;32.03;110.77;435 -968;CHINA;YUNXIAN;57259.1;32.85;110.82;202 -969;CHINA;GUANGHUA;57265;32.38;111.67;91 -970;CHINA;ZAOYANG;57279;32.15;112.67;127 -971;CHINA;ZHUMADIAN;57290;33.00;114.02;83 -972;CHINA;XINYANG;57297;32.13;114.05;115 -973;CHINA;LANGZHONG;57306;31.58;105.97;385 -974;CHINA;BAZHONG;57306.1;31.85;106.77;360 -975;CHINA;DA XIAN;57328;31.20;107.50;311 -976;CHINA;FENGJIE;57348;31.05;109.50;607 -977;CHINA;ZHONGXIANG;57378;31.17;112.57;66 -978;CHINA;MACHENG;57399;31.18;114.97;59 -979;CHINA;NANCHONG;57411;30.80;106.08;310 -980;CHINA;SUINING;57411.1;30.50;105.58;278 -981;CHINA;LIANGPING;57426;30.68;107.80;455 -982;CHINA;ENSHI;57447;30.28;109.47;458 -983;CHINA;YICHANG;57461;30.70;111.30;134 -984;CHINA;JIANGLING;57476;30.33;112.18;33 -985;CHINA;WUHAN;57494;30.62;114.13;23 -986;CHINA;HUANGSHI;57494.1;30.25;115.05;20 -987;CHINA;NEIJIANG;57504;29.58;105.05;357 -988;CHINA;CHONGQING;57516;29.52;106.48;351 -989;CHINA;JINFO SHAN;57516.1;28.88;107.45;2040 -990;CHINA;SANGZHI;57554;29.40;110.17;322 -991;CHINA;YUEYANG;57584;29.38;113.08;52 -992;CHINA;XIUSHUI;57598;29.03;114.58;147 -993;CHINA;LUZHOU;57602;28.88;105.43;336 -994;CHINA;TONGZI;57602.1;28.13;105.83;972 -995;CHINA;YOUYANG;57633;28.83;108.77;665 -996;CHINA;PENGSHUI;57633.1;29.30;108.17;311 -997;CHINA;YUANLING;57655;28.47;110.40;143 -998;CHINA;CHANGDE;57662;29.05;111.68;35 -999;CHINA;CHANGSHA;57679;28.20;113.08;46 -1000;CHINA;BIJIE;57707;27.30;105.23;1511 -1001;CHINA;ZUNYI;57713;27.70;106.88;845 -1002;CHINA;MEITAN;57713.1;27.77;107.47;792 -1003;CHINA;SINAN;57731;27.95;108.25;418 -1004;CHINA;ZHIJIANG;57745;27.45;109.68;273 -1005;CHINA;SHAOYANG;57766;27.23;111.47;248 -1006;CHINA;NANYUE;57776;27.30;112.70;1268 -1007;CHINA;HENGYANG;57776.1;26.90;112.60;103 -1008;CHINA;YICHUN;57793;27.80;114.38;129 -1009;CHINA;JIAN;57799;27.12;114.97;78 -1010;CHINA;GUIYANG;57816;26.58;106.72;1074 -1011;CHINA;SANSUI;57832;26.97;108.67;611 -1012;CHINA;TONGDAO;57845;26.17;109.78;397 -1013;CHINA;WUGANG;57853;26.73;110.63;340 -1014;CHINA;LINGLING;57866;26.23;111.62;174 -1015;CHINA;XINGREN;57902;25.43;105.18;1379 -1016;CHINA;PANXIAN;57902.1;25.78;104.62;1527 -1017;CHINA;LUODIAN;57916;25.43;106.77;441 -1018;CHINA;DUSHAN;57922;25.83;107.55;971 -1019;CHINA;RONGJIANG;57932;25.97;108.53;287 -1020;CHINA;GUILIN;57957;25.33;110.30;166 -1021;CHINA;CHENZHOU;57972;25.80;113.03;185 -1022;CHINA;GANZHOU;57993;25.85;114.95;125 -1023;CHINA;SUICHANG;57993.1;26.33;114.50;126 -1024;CHINA;XUZHOU;58027;34.28;117.15;42 -1025;CHINA;GANYU;58040;34.83;119.13;10 -1026;CHINA;BOXIAN;58102;33.88;115.77;42 -1027;CHINA;QINGJIANG;58144;33.60;119.03;19 -1028;CHINA;SHEYANG;58150;33.77;120.25;7 -1029;CHINA;FUYANG;58203;32.93;115.83;39 -1030;CHINA;GUSHI;58208;32.17;115.67;58 -1031;CHINA;BENGBU;58221;32.95;117.37;22 -1032;CHINA;NANJING;58238;32.00;118.80;12 -1033;CHINA;DONGTAI;58251;32.87;120.32;5 -1034;CHINA;LUSI;58265;32.07;121.60;10 -1035;CHINA;NANTONG;58265.1;32.02;120.85;5 -1036;CHINA;HUOSHAN;58314;31.40;116.33;68 -1037;CHINA;HEFEI;58321;31.87;117.23;36 -1038;CHINA;WUHU;58338;31.33;118.35;16 -1039;CHINA;LIYANG;58345;31.43;119.48;8 -1040;CHINA;SHANGHAI;58362;31.20;121.40;7 -1041;CHINA;ANQING;58424;30.53;117.05;20 -1042;CHINA;HUANG SHAN;58437;30.13;118.15;1836 -1043;CHINA;TUNXI;58437.1;29.72;118.28;145 -1044;CHINA;TIANMU SHAN;58445;30.35;119.42;1494 -1045;CHINA;HANGZHOU;58457;30.23;120.17;43 -1046;CHINA;SHENGSI;58472;30.73;122.45;81 -1047;CHINA;DINGHAI;58477;30.03;122.12;37 -1048;CHINA;LU SHAN;58506;29.58;115.98;1165 -1049;CHINA;JIUJIANG;58506.1;29.73;116.00;33 -1050;CHINA;JINGDEZHEN;58527;29.30;117.20;60 -1051;CHINA;SHENGXIAN;58556;29.60;120.82;108 -1052;CHINA;NANCHANG;58606;28.60;115.92;50 -1053;CHINA;QU XIAN;58633;28.97;118.87;71 -1054;CHINA;LISHUI;58646;28.45;119.92;62 -1055;CHINA;WENZHOU;58659;28.02;120.67;7 -1056;CHINA;KUOCANG SHAN;58660.1;28.82;120.92;1374 -1057;CHINA;HUANGYAN;58665.1;28.63;121.42;1 -1058;CHINA;DACHEN DAO;58666;28.45;121.88;84 -1059;CHINA;NANCHENG;58715;27.58;116.65;82 -1060;CHINA;SHAOWU;58725;27.33;117.43;192 -1061;CHINA;JIANYANG;58730.1;27.33;118.12;181 -1062;CHINA;QIXIAN SHAN;58730.2;27.95;117.85;1535 -1063;CHINA;PUCHENG;58731;27.92;118.53;275 -1064;CHINA;FUDING;58754;27.33;120.20;38 -1065;CHINA;GUANGCHANG;58813;26.85;116.33;142 -1066;CHINA;NANPING;58834;26.65;118.17;128 -1067;CHINA;FUZHOU;58847;26.08;119.28;85 -1068;CHINA;TAISHAN;58853.1;27.00;120.70;107 -1069;CHINA;CHANGTING;58911;25.85;116.37;311 -1070;CHINA;YONGAN;58921;25.97;117.35;204 -1071;CHINA;LONGYAN;58926.1;25.10;117.00;342 -1072;CHINA;JIUXIAN SHAN;58931;25.72;118.10;1651 -1073;CHINA;PINGTAN;58944;25.52;119.78;31 -1074;CHINA;TAOYUAN;58965.1;25.05;121.22;48 -1075;CHINA;TAIBEI;58968;25.03;121.52;9 -1076;CHINA;GUANGNAN;59007;24.07;105.07;1251 -1077;CHINA;HECHI;59023;24.70;108.05;214 -1078;CHINA;LIUZHOU;59046;24.35;109.40;97 -1079;CHINA;MENGSHAN;59058;24.20;110.52;145 -1080;CHINA;LIAN XIAN;59072;24.78;112.38;98 -1081;CHINA;SHAOGUAN;59082;24.80;113.58;68 -1082;CHINA;FOGANG;59087;23.87;113.53;68 -1083;CHINA;LIANPING;59096;24.37;114.48;214 -1084;CHINA;XUNWU;59102;24.95;115.65;299 -1085;CHINA;MEI XIAN;59117;24.30;116.12;84 -1086;CHINA;XIAMEN;59134;24.48;118.08;139 -1087;CHINA;ZHANGZHOU;59134.1;24.50;117.65;29 -1088;CHINA;TAIZHONG;59158;24.15;120.68;78 -1089;CHINA;NAPO;59209;23.30;105.95;794 -1090;CHINA;BAISE;59211;23.90;106.60;242 -1091;CHINA;GUIPING;59254;23.40;110.08;44 -1092;CHINA;WUZHOU;59265;23.48;111.30;120 -1093;CHINA;GAOYAO;59278;23.05;112.47;12 -1094;CHINA;GUANGZHOU;59287;23.13;113.32;8 -1095;CHINA;HEYUAN;59293;23.73;114.68;41 -1096;CHINA;SHANTOU;59316;23.40;116.68;3 -1097;CHINA;CHAD-N;59316.1;23.75;117.52;74 -1098;CHINA;PESCADORES;59345.1;23.50;119.60;9 -1099;CHINA;PENG HU;59345.2;23.52;119.57;21 -1100;CHINA;HUA LIEN;59362.1;23.97;121.62;19 -1101;CHINA;LONGZHOU;59417;22.37;106.75;129 -1102;CHINA;NANNING;59431;22.82;108.35;73 -1103;CHINA;XINYI;59456;22.35;110.93;84 -1104;CHINA;YULIN;59456.1;22.63;110.17;82 -1105;CHINA;SHENZHEN;59493;22.55;114.10;18 -1106;CHINA;SHANWEI;59501;22.78;115.37;5 -1107;CHINA;QINZHOU;59632;21.95;108.62;6 -1108;CHINA;BEIHAI;59644;21.48;109.10;16 -1109;CHINA;ZHANJIANG;59658;21.22;110.40;28 -1110;CHINA;YANGJIANG;59663;21.87;111.97;22 -1111;CHINA;SHANGCHUAN DA;59673;21.73;112.77;18 -1112;CHINA;HAIKOU;59758;20.03;110.35;15 -1113;CHINA;DONGFANG;59838;19.10;108.62;8 -1114;CHINA;DANXIAN;59845;19.52;109.58;169 -1115;CHINA;QIONGHAI;59855;19.23;110.47;25 -1116;CHINA;YAXIAN;59948;18.23;109.52;7 -1117;CHINA;XISHA DAO;59981;16.83;112.33;5 -1118;CHINA;SANHU DAO;59985;16.53;111.62;5 -1119;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SENBONG;47003;42.32;130.40;3 -1120;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;UNGGI;47003.1;42.30;130.40;89 -1121;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SAMJIYON;47005;41.82;128.32;1386 -1122;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;CHONGJIN;47008;41.78;129.82;43 -1123;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;CHUNGGANG;47014;41.78;126.88;332 -1124;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;HYESAN;47016;41.40;128.17;714 -1125;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;KANGGYE;47020;40.97;126.60;306 -1126;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;PUNGSAN;47022;40.82;128.15;1206 -1127;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;KIMCHAEK;47025;40.67;129.20;19 -1128;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;JSOHIN;47025.2;40.70;129.20;32 -1129;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SUPUNG;47028;40.45;124.93;83 -1130;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;CHANGJIN;47031;40.37;127.25;1081 -1131;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SINUIJU;47035;40.10;124.38;7 -1132;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;KUSONG;47037;39.98;125.25;99 -1133;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;HUICHON;47039;40.17;126.25;155 -1134;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;HAMHEUNG;47041;39.93;127.55;38 -1135;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SINPO;47046;40.03;128.18;19 -1136;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;ANJU;47050;39.62;125.65;27 -1137;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;YANGDOK;47052;39.17;126.83;279 -1138;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;WONSAN;47055;39.18;127.43;36 -1139;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;PYONGYANG;47058;39.03;125.78;38 -1140;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;NAMPO;47060;38.72;125.37;47 -1141;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;CHANGJON;47061;38.73;128.18;35 -1142;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SARIWON;47065;38.52;125.77;52 -1143;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;SINGYE;47067;38.50;126.53;100 -1144;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;RYONGYON;47068;38.20;124.88;5 -1145;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;HAEJU;47069;38.03;125.70;81 -1146;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;KAESONG;47070;37.97;126.57;70 -1147;DEMOCRATIC PEOPLES REPUBLIC OF KOREA;PYONGGANG;47075;38.40;127.30;371 -1148;INDIA;SRINAGAR;42027;34.08;74.83;1587 -1149;INDIA;LEH;42034;34.15;77.57;-999 -1150;INDIA;AMRITSAR;42071;31.63;74.87;234 -1151;INDIA;SHIMLA;42083;31.10;77.17;2202 -1152;INDIA;LUDHIANA;42099.1;30.90;75.90;247 -1153;INDIA;MUKTESHWAR KU;42147;29.47;79.65;2311 -1154;INDIA;BIKANER;42165;28.00;73.30;224 -1155;INDIA;NEW DELHI/;42182;28.58;77.20;216 -1156;INDIA;AGRA;42260;27.15;77.97;169 -1157;INDIA;AGRA;42261;27.17;78.03;169 -1158;INDIA;DARJEELING;42295;27.05;88.27;2128 -1159;INDIA;DIBRUGARH /MO;42314;27.48;95.02;111 -1160;INDIA;JODHPUR;42339;26.30;73.02;224 -1161;INDIA;JAIPUR / SANG;42348;26.82;75.80;390 -1162;INDIA;DARBHANGA;42391;26.17;85.90;49 -1163;INDIA;DHUBRI;42404;26.02;89.98;35 -1164;INDIA;GAUHATI;42410;26.10;91.58;54 -1165;INDIA;KOTA AERODROM;42452;25.15;75.85;274 -1166;INDIA;ALLAHABAD/BAM;42475;25.45;81.73;98 -1167;INDIA;PATNA;42492;25.60;85.10;60 -1168;INDIA;CHERRAPUNJI;42515;25.25;91.73;1313 -1169;INDIA;SHILLONG;42516;25.57;91.88;1598 -1170;INDIA;DALTONGANJ;42587;24.05;84.07;221 -1171;INDIA;DUMKA;42599;24.30;87.30;149 -1172;INDIA;SILCHAR;42619;24.75;92.80;29 -1173;INDIA;AHMADABAD;42647;23.07;72.63;55 -1174;INDIA;SAGAR;42671;23.85;78.75;551 -1175;INDIA;DWARKA;42731;22.37;69.08;11 -1176;INDIA;INDORE;42754;22.72;75.80;567 -1177;INDIA;CALCUTTA/ALIP;42807;22.53;88.33;6 -1178;INDIA;CALCUTTA/DUM;42809;22.65;88.45;6 -1179;INDIA;NAGPUR SONEGA;42867;21.10;79.05;310 -1180;INDIA;VERAVAL;42909;20.90;70.37;8 -1181;INDIA;AKOLA;42933;20.70;77.07;309 -1182;INDIA;CUTTACK;42970;20.47;85.93;27 -1183;INDIA;BOMBAY / SANT;43003;19.12;72.85;14 -1184;INDIA;JAGDALPUR;43041;19.08;82.03;553 -1185;INDIA;BOMBAY / COLA;43057;18.90;72.82;11 -1186;INDIA;POONA;43063;18.53;73.85;559 -1187;INDIA;BEGAMPET;43128;17.50;78.50;545 -1188;INDIA;CWC VISHAKHAP;43149;17.70;83.30;66 -1189;INDIA;MACHILIPATNAM;43185;16.20;81.15;3 -1190;INDIA;GOA/PANJIM;43192;15.48;73.82;60 -1191;INDIA;BELGAUM;43197.1;15.90;74.50;753 -1192;INDIA;BELGAUM/SAMBR;43198;15.85;74.62;747 -1193;INDIA;MADRAS/MINAMB;43279;13.00;80.18;16 -1194;INDIA;MANGALORE;43284.1;12.90;74.90;22 -1195;INDIA;BANGALORE;43295;12.97;77.58;921 -1196;INDIA;AMINI DIVI;43311;11.12;72.73;4 -1197;INDIA;KOZHIKODE;43314;11.25;75.78;5 -1198;INDIA;PORT BLAIR;43333;11.67;92.72;79 -1199;INDIA;KODAIKANAL;43339;10.23;77.47;2343 -1200;INDIA;COCHIN/WILLIN;43353;9.95;76.27;3 -1201;INDIA;PAMBAN;43363;9.27;79.30;11 -1202;INDIA;MINICOY;43369;8.30;73.15;2 -1203;INDIA;THIRUVANANTHA;43371;8.48;76.95;64 -1204;IRAN;KHOY;40703;38.55;44.97;1107 -1205;IRAN;TABRIZ;40706;38.08;46.28;1361 -1206;IRAN;ORUMIEH;40712;37.53;45.08;1312 -1207;IRAN;ANZALI;40718;37.47;49.47;-23 -1208;IRAN;RASHT;40719;37.25;49.60;-7 -1209;IRAN;SAGHEZ;40727;36.25;46.27;1493 -1210;IRAN;ZANJAN;40729;36.68;48.48;1663 -1211;IRAN;GHAZVIN;40731;36.25;50.00;1278 -1212;IRAN;RAMSAR;40732;36.90;50.67;-20 -1213;IRAN;BABULSAR;40736;36.72;52.65;-21 -1214;IRAN;GORGAN;40738;36.82;54.47;155 -1215;IRAN;SHAHRUD;40739;36.42;55.03;1345 -1216;IRAN;SABZEVAR;40743;36.22;57.67;941 -1217;IRAN;MASHHAD;40745;36.27;59.63;980 -1218;IRAN;SANANDAJ;40747;35.33;47.00;1373 -1219;IRAN;TEHRAN-MEHRAB;40754;35.68;51.35;1191 -1220;IRAN;SEMNAN;40757;35.55;53.38;1171 -1221;IRAN;TORBAT-HEYDAR;40762;35.27;59.22;1333 -1222;IRAN;KRMANSHAH;40766;34.27;47.12;1322 -1223;IRAN;NOWJEH;40767;35.20;48.68;1679 -1224;IRAN;ARAK;40769;34.10;49.40;1720 -1225;IRAN;KHORRAM ABAD;40782;33.50;48.30;1125 -1226;IRAN;KASHAN;40785;33.98;51.45;982 -1227;IRAN;TABAS;40791;33.60;56.92;711 -1228;IRAN;DEZFUL;40795;32.40;48.38;143 -1229;IRAN;SHAHRE-KORD;40798;32.33;50.85;1991 -1230;IRAN;ESFAHAN;40800;32.47;51.72;1550 -1231;IRAN;BIRJAND;40809;32.87;59.20;1491 -1232;IRAN;AHWAZ;40811;31.33;48.67;22 -1233;IRAN;YAZD;40821;31.90;54.40;1230 -1234;IRAN;ZABOL;40829;31.33;61.48;489 -1235;IRAN;ABADAN;40831;30.37;48.25;11 -1236;IRAN;KERMAN;40841;30.25;56.97;1754 -1237;IRAN;SHIRAZ;40848;29.53;52.58;1491 -1238;IRAN;BAM;40854;29.10;58.40;1067 -1239;IRAN;ZAHEDAN;40856;29.47;60.88;1370 -1240;IRAN;BUSHEHR;40858;28.98;50.83;19 -1241;IRAN;FASA;40859;28.97;53.68;1383 -1242;IRAN;BANDARABBASS;40875;27.22;56.37;10 -1243;IRAN;IRANSHAHR;40879;27.20;60.70;591 -1244;IRAN;BANDAR LENGEH;40883;26.58;54.83;14 -1245;IRAN;JASK;40893;26.63;57.77;4 -1246;IRAN;JASK;40893.1;25.80;57.80;4 -1247;IRAQ;SINJAR;40604.1;36.32;41.83;476 -1248;IRAQ;MOSUL;40608;36.32;43.15;223 -1249;IRAQ;KIRKUK;40621;35.47;44.40;331 -1250;IRAQ;SULAIMANIYA;40623.1;35.55;45.45;853 -1251;IRAQ;KANAQIN;40637;34.30;45.43;202 -1252;IRAQ;RUTBAH;40642;33.03;40.28;615 -1253;IRAQ;BAGHDAD;40650;33.23;44.23;34 -1254;IRAQ;HABBANIYA IRAQ;40650.1;33.40;43.60;45 -1255;IRAQ;KUT-AL-HAI;40665;32.17;46.05;15 -1256;IRAQ;NAJAF;40670.1;31.98;44.32;32 -1257;IRAQ;DIWANIYA;40672;31.98;44.98;20 -1258;IRAQ;NASIRIYA;40676;31.08;46.23;3 -1259;IRAQ;AMARAH;40680.1;31.85;47.17;9 -1260;IRAQ;BASRAH;40689;30.57;47.78;2 -1261;JAPAN;WAKKANAI;47401;45.42;141.68;11 -1262;JAPAN;KITAMIESASHI;47402.1;44.93;142.58;7 -1263;JAPAN;HABORO;47404;44.37;141.70;13 -1264;JAPAN;OMU;47405.1;44.58;142.97;14 -1265;JAPAN;RUMOI;47406.1;43.95;141.63;24 -1266;JAPAN;ASAHIKAWA;47407;43.77;142.37;116 -1267;JAPAN;ABASHIRI;47409;44.02;144.28;43 -1268;JAPAN;OTARU;47411.1;43.18;141.02;25 -1269;JAPAN;SAPPORO;47412;43.05;141.33;19 -1270;JAPAN;IWAMIZAWA;47413.1;43.22;141.78;42 -1271;JAPAN;OBIHIRO;47417.1;42.92;143.22;38 -1272;JAPAN;KUSHIRO;47418;42.98;144.40;37 -1273;JAPAN;NEMURO;47420;43.33;145.58;39 -1274;JAPAN;SUTTSU;47421;42.80;140.23;38 -1275;JAPAN;MURORAN;47423.1;42.32;140.98;40 -1276;JAPAN;TOMAKOMAI;47424.1;42.62;141.55;6 -1277;JAPAN;URAKAWA;47426;42.17;142.78;33 -1278;JAPAN;ESASHI;47428;41.87;140.13;12 -1279;JAPAN;HAKODATE;47430;41.82;140.75;43 -1280;JAPAN;KUTCHAN;47433.1;42.90;140.75;174 -1281;JAPAN;MOMBETSU;47435.1;44.35;143.37;16 -1282;JAPAN;HIROO;47440.1;42.30;143.32;32 -1283;JAPAN;OFUNATO;47512.1;39.07;141.72;37 -1284;JAPAN;SHINJO;47520.1;38.75;140.32;105 -1285;JAPAN;WAKAMATSU;47570;37.48;139.92;213 -1286;JAPAN;FUKAURA;47574;40.65;139.93;67 -1287;JAPAN;AOMORI;47575;40.82;140.77;3 -1288;JAPAN;MUTSU;47576.1;41.28;141.22;3 -1289;JAPAN;MISAWA AB;47580;40.70;141.38;39 -1290;JAPAN;HACHINOHE;47581.1;40.53;141.53;27 -1291;JAPAN;AKITA;47582;39.72;140.10;21 -1292;JAPAN;MORIOKA;47584.1;39.70;141.17;155 -1293;JAPAN;MIYAKO;47585;39.65;141.97;46 -1294;JAPAN;SAKATA;47587.1;38.90;139.85;3 -1295;JAPAN;YAMAGATA;47588.1;38.25;140.35;153 -1296;JAPAN;SENDAI;47590;38.27;140.90;43 -1297;JAPAN;ISHINOMAKI;47592.1;38.43;141.30;43 -1298;JAPAN;FUKUSHIMA;47595.1;37.75;140.47;67 -1299;JAPAN;SHIRAKAWA;47597.1;37.12;140.22;354 -1300;JAPAN;ONAHAMA;47598;36.95;140.90;5 -1301;JAPAN;WAJIMA;47600;37.38;136.90;14 -1302;JAPAN;AIKAWA;47602;38.02;138.25;36 -1303;JAPAN;NIIGATA;47604;37.92;139.05;7 -1304;JAPAN;KANAZAWA;47605;36.58;136.63;33 -1305;JAPAN;FUSHIKI;47606.1;36.78;137.05;12 -1306;JAPAN;TOYAMA;47607.1;36.70;137.20;9 -1307;JAPAN;NAGANO;47610.1;36.67;138.20;418 -1308;JAPAN;TAKADA;47612.1;37.10;138.25;13 -1309;JAPAN;UTSUNOMIYA;47615.1;36.55;139.87;119 -1310;JAPAN;FUKUI;47616.1;36.05;136.23;9 -1311;JAPAN;TAKAYAMA;47617.1;36.15;137.25;560 -1312;JAPAN;MATSUMOTO;47618;36.25;137.97;611 -1313;JAPAN;SUWA;47620;36.05;138.12;762 -1314;JAPAN;KARUIZAWA;47622.1;36.33;138.55;999 -1315;JAPAN;MAEBASHI;47624;36.40;139.10;113 -1316;JAPAN;KUMAGAYA;47624.1;36.40;139.07;112 -1317;JAPAN;MITO;47629.1;36.38;140.47;29 -1318;JAPAN;TSURUGA;47631.1;35.65;136.07;2 -1319;JAPAN;GIFU;47632.1;35.40;136.77;13 -1320;JAPAN;NAGOYA;47636;35.17;136.97;56 -1321;JAPAN;IIDA;47637.1;35.52;137.83;482 -1322;JAPAN;KOFU;47638.1;35.67;138.55;273 -1323;JAPAN;KAWAGUCHIKO;47640.1;35.50;138.77;860 -1324;JAPAN;CHICHIBU;47641.1;35.98;139.08;218 -1325;JAPAN;FUSSA;47642.1;35.75;139.35;139 -1326;JAPAN;IRUMA;47643.1;35.83;139.42;94 -1327;JAPAN;CHOSHI;47648;35.73;140.87;28 -1328;JAPAN;UENO;47649.1;34.77;136.15;159 -1329;JAPAN;TSU;47651.1;34.73;136.52;3 -1330;JAPAN;IRAKO;47653.1;34.63;137.10;6 -1331;JAPAN;HAMAMATSU;47654.1;34.70;137.72;32 -1332;JAPAN;OMAEZAKI;47655;34.60;138.22;47 -1333;JAPAN;SHIZUOKA;47656.1;34.97;138.40;14 -1334;JAPAN;MISHIMA;47657.1;35.12;138.93;21 -1335;JAPAN;TACHIKAWA;47660.1;35.70;139.40;101 -1336;JAPAN;TOKYO;47662;35.68;139.77;36 -1337;JAPAN;OWASE;47663;34.07;136.20;27 -1338;JAPAN;IROZAKI;47666.1;34.60;138.85;55 -1339;JAPAN;AJIRO;47668.1;35.05;139.10;67 -1340;JAPAN;YOKOHAMA;47670.1;35.43;139.65;39 -1341;JAPAN;TATEYAMA;47672.1;34.98;139.87;6 -1342;JAPAN;KATSUURA;47674.1;35.15;140.32;12 -1343;JAPAN;OSHIMA;47675;34.75;139.37;79 -1344;JAPAN;MIYAKEJIMA;47677.1;34.12;139.52;36 -1345;JAPAN;HACHIJOJIMA;47678;33.10;139.78;80 -1346;JAPAN;TORISHIMA;47678.1;30.50;140.30;83 -1347;JAPAN;ATSUGI;47679.1;35.45;139.45;65 -1348;JAPAN;CHIBA;47682.1;35.60;140.10;4 -1349;JAPAN;YOKKAICHI;47684.1;34.93;136.58;47 -1350;JAPAN;NIKKO;47690.1;36.73;139.50;1292 -1351;JAPAN;YOKOSUKA;47696.1;35.28;139.67;53 -1352;JAPAN;SAIGO;47740;36.20;133.33;31 -1353;JAPAN;MATSUE;47741;35.45;133.07;22 -1354;JAPAN;SAKAI;47742;35.55;133.23;3 -1355;JAPAN;YONAGO;47744;35.43;133.35;8 -1356;JAPAN;TOTTORI;47746;35.48;134.23;15 -1357;JAPAN;TOYOOKA;47747.1;35.53;134.82;3 -1358;JAPAN;MAIZURU;47750;35.45;135.32;22 -1359;JAPAN;IBUKIYAMA;47751.1;35.42;136.42;1376 -1360;JAPAN;HAGI;47754;34.42;131.40;7 -1361;JAPAN;HAMADA;47755;34.90;132.07;20 -1362;JAPAN;TSUYAMA;47756.1;35.07;134.02;146 -1363;JAPAN;KYOTO;47759.1;35.02;135.73;41 -1364;JAPAN;HIKONE;47761.1;35.27;136.25;87 -1365;JAPAN;SHIMONOSEKI;47762.1;33.95;130.93;3 -1366;JAPAN;IWAKUNI;47764.1;34.15;132.23;3 -1367;JAPAN;HIROSHIMA;47765;34.40;132.47;53 -1368;JAPAN;KURE;47766.1;34.23;132.55;4 -1369;JAPAN;FUKUYAMA;47767.1;34.45;133.25;2 -1370;JAPAN;OKAYAMA;47768.1;34.65;133.92;3 -1371;JAPAN;HIMEJI;47769.1;34.83;134.67;38 -1372;JAPAN;KOBE;47770.1;34.68;135.18;58 -1373;JAPAN;OSAKA;47772;34.68;135.52;83 -1374;JAPAN;SUMOTO;47776.1;34.33;134.90;109 -1375;JAPAN;WAKAYAMA;47777.1;34.23;135.17;14 -1376;JAPAN;SHIONOMISAKI;47778;33.45;135.77;75 -1377;JAPAN;NARA;47780.1;34.68;135.83;104 -1378;JAPAN;YAMAGUCHI;47784.1;34.15;131.45;17 -1379;JAPAN;IZUHARA;47800;34.20;129.30;19 -1380;JAPAN;ASHIYA;47803.1;33.87;130.63;40 -1381;JAPAN;HIRADO;47805.1;33.35;129.55;58 -1382;JAPAN;FUKUOKA;47807;33.58;130.38;14 -1383;JAPAN;IIZUKA;47809.1;33.65;130.70;37 -1384;JAPAN;SASEBO;47812.1;33.15;129.73;17 -1385;JAPAN;SAGA;47813.1;33.25;130.30;4 -1386;JAPAN;HITA;47814.1;33.32;130.93;83 -1387;JAPAN;OITA;47815;33.23;131.62;13 -1388;JAPAN;NAGASAKI;47817;32.73;129.87;35 -1389;JAPAN;KUMAMOTO;47819.1;32.82;130.72;38 -1390;JAPAN;ASOSAN;47821.1;32.88;131.08;1143 -1391;JAPAN;NOBEOKA;47822.1;32.58;131.67;19 -1392;JAPAN;AKUNE;47823.1;32.02;130.20;40 -1393;JAPAN;HITOYOSHI;47824.1;32.22;130.75;146 -1394;JAPAN;KAGOSHIMA;47827;31.55;130.55;31 -1395;JAPAN;MIYAKONOJO;47829.1;31.73;131.08;154 -1396;JAPAN;MIYAZAKI;47830;31.92;131.42;7 -1397;JAPAN;MAKURAZAKI;47831.1;31.27;130.30;30 -1398;JAPAN;ABURATSU;47835.1;31.57;131.42;3 -1399;JAPAN;YAKUSHIMA;47836;30.38;130.67;38 -1400;JAPAN;TANEGASHIMA;47837;30.73;131.00;18 -1401;JAPAN;USHIBUKA;47838.1;32.20;130.03;3 -1402;JAPAN;FUKUE;47843;32.70;128.83;26 -1403;JAPAN;TOKUSHIMA AB;47881;34.13;134.62;11 -1404;JAPAN;MATSUYAMA;47887;33.83;132.78;34 -1405;JAPAN;TADOTSU;47890.1;34.27;133.75;4 -1406;JAPAN;TAKAMATSU;47891;34.32;134.05;10 -1407;JAPAN;UWAJIMA;47892.1;33.23;132.55;43 -1408;JAPAN;KOCHI;47893;33.55;133.53;18 -1409;JAPAN;TSURUGISAN;47894;33.85;134.10;1946 -1410;JAPAN;SUKUMO;47897.1;32.92;132.70;2 -1411;JAPAN;SHIMIZU/ASHIZ;47898;32.72;133.02;33 -1412;JAPAN;MUROTOMISAKI;47899;33.25;134.18;186 -1413;JAPAN;NAZE;47909;28.38;129.50;7 -1414;JAPAN;YONAGUNIJIMA;47912;24.47;123.02;36 -1415;JAPAN;ISHIGAKIJIMA;47918;24.33;124.17;7 -1416;JAPAN;MIYAKOJIMA;47927;24.78;125.28;41 -1417;JAPAN;KUMEJIMA;47929.1;26.33;126.80;4 -1418;JAPAN;OKINAWA/RYUKYU ISLANDS;47930.1;26.20;127.65;4 -1419;JAPAN;KADENA/AB;47931.1;26.35;127.77;43 -1420;JAPAN;FUTENMA/OKINAWA;47933.1;26.27;127.75;84 -1421;JAPAN;NAHA;47936;26.20;127.68;53 -1422;JAPAN;NAGO;47940.1;26.58;127.97;6 -1423;JAPAN;OKINOERABU;47942;27.43;128.70;29 -1424;JAPAN;MINAMIDAITOJI;47945;25.83;131.23;15 -1425;JAPAN;TITIZIMA/CHICHIJIMA PAC I;47971;27.10;142.20;4 -1426;JAPAN;IWOJIMA;47981;24.78;141.32;116 -1427;JAPAN;MINAMITORISHI;47991;24.30;153.97;9 -1428;KAZAKHSTAN;PETROPAVLOVSK;28679;54.83;69.15;142 -1429;KAZAKHSTAN;KOKSHETAY;28879;53.28;69.38;229 -1430;KAZAKHSTAN;KUSTANAI;28952;53.22;63.62;156 -1431;KAZAKHSTAN;ATBASAR;35078;51.82;68.37;304 -1432;KAZAKHSTAN;URALSK;35108;51.25;51.28;37 -1433;KAZAKHSTAN;CELINOGRAD;35188.1;51.13;71.37;347 -1434;KAZAKHSTAN;AKTJUBINSK;35229;50.28;57.15;219 -1435;KAZAKHSTAN;TURGAJ;35358;49.63;63.50;123 -1436;KAZAKHSTAN;KARAGANDA;35394;49.80;73.13;555 -1437;KAZAKHSTAN;KALMYKOVO;35406.1;49.05;51.87;1 -1438;KAZAKHSTAN;UIL;35416;49.07;54.68;128 -1439;KAZAKHSTAN;IRGIZ;35542;48.62;61.27;114 -1440;KAZAKHSTAN;KZYL-ZAR;35576;48.30;69.65;361 -1441;KAZAKHSTAN;KARSAKPAJ;35663;47.83;66.75;488 -1442;KAZAKHSTAN;GUREV;35700;47.02;51.85;-24 -1443;KAZAKHSTAN;ARALSKOE MORE;35746;46.78;61.65;62 -1444;KAZAKHSTAN;BALHASH;35796;46.80;75.08;350 -1445;KAZAKHSTAN;KAZALINSK;35849;45.77;62.12;68 -1446;KAZAKHSTAN;SAM;35925;45.40;56.12;82 -1447;KAZAKHSTAN;SEMIPALATINSK;36177;50.42;80.30;196 -1448;KAZAKHSTAN;LENINOGORSK;36208;50.33;83.55;811 -1449;KAZAKHSTAN;KOKPEKTY;36535;48.75;82.37;512 -1450;KAZAKHSTAN;ZAJSAN;36665;47.47;84.92;603 -1451;KAZAKHSTAN;UC-ARAL;36729;46.17;80.93;397 -1452;KAZAKHSTAN;PANFILOV;36859;44.17;80.07;645 -1453;KAZAKHSTAN;ALMATY;36870;43.23;76.93;851 -1454;KAZAKHSTAN;FORT SEVCENKO;38001;44.55;50.25;-25 -1455;KAZAKHSTAN;KZYL-ORDA;38082;49.82;65.50;128 -1456;KAZAKHSTAN;TURKESTAN;38198;43.27;68.22;207 -1457;KUWAIT;EXPERIMENTAL;40580;29.28;47.93;21 -1458;KUWAIT;SHUWAIKH;40581;29.33;48.05;11 -1459;KUWAIT;KUWAIT INTERNATIONAL AIRPORT;40582;29.52;47.98;55 -1460;KUWAIT;AHMADI;40583;29.10;48.13;122 -1461;KUWAIT;MENA AL-AHMADI/FAHAHEEL;40584.1;29.05;48.15;16 -1462;KUWAIT;FAILAKA ISLAND;40588.1;29.47;48.28;5 -1463;KYRGYZSTAN;NARYN;36974;41.43;76.00;2041 -1464;KYRGYZSTAN;FRUNZE;38353.1;42.83;74.58;828 -1465;LAOS;LUANG-PRABANG;48930;19.88;102.13;305 -1466;LAOS;SAYABOURY;48938;19.23;101.73;326 -1467;LAOS;VIENTIANE;48940;17.95;102.57;171 -1468;LAOS;SAVANNAKHET;48947;16.55;104.65;145 -1469;LAOS;SENO;48948;16.67;105.00;185 -1470;LAOS;PAKSE;48955;15.12;105.78;102 -1471;MONGOLIA;RINCHINLHUMBE;44203;51.12;99.67;1583 -1472;MONGOLIA;HATGAL;44207;50.43;100.15;1668 -1473;MONGOLIA;"MONGOLIAN STATION, BAYAN-OL";44212.1;49.80;92.10;934 -1474;MONGOLIA;BARUUNTURUUN;44213;49.65;94.40;1232 -1475;MONGOLIA;BAYAN UUL;44213.1;49.70;96.40;-999 -1476;MONGOLIA;UIGI;44214;48.93;89.93;1715 -1477;MONGOLIA;"ALTAY, BAYAN-OLIGY";44214.1;48.30;89.50;-999 -1478;MONGOLIA;OMNO-GOBI;44215;49.02;91.72;1590 -1479;MONGOLIA;HOVD;44218;48.02;91.57;1405 -1480;MONGOLIA;"MONGOLIAN STATION, HOVD";44218.1;47.10;92.80;-999 -1481;MONGOLIA;TOSONTSENGEL;44225;48.73;98.28;1723 -1482;MONGOLIA;TARIALAN;44230;49.57;102.00;1235 -1483;MONGOLIA;MUREN;44231;49.57;100.17;1283 -1484;MONGOLIA;HUTAG;44232;49.38;102.70;938 -1485;MONGOLIA;ERDENEMANDAL;44237;48.53;101.38;1510 -1486;MONGOLIA;"MONGOLIAN STATION, N. HANG";44237.1;48.20;99.90;-999 -1487;MONGOLIA;BULGAN;44239;48.80;103.55;1208 -1488;MONGOLIA;"ERDENET, BULGAN";44239.1;49.00;104.10;-999 -1489;MONGOLIA;"BAYAN-GOL, SELENGE";44241;48.90;106.10;807 -1490;MONGOLIA;"MONGOLIAN STATION, SELENGE";44241.2;48.90;106.90;-999 -1491;MONGOLIA;"ORBON, SELENGE";44241.3;49.20;105.40;-999 -1492;MONGOLIA;"YOROO, SELENGE";44241.4;49.80;106.70;-999 -1493;MONGOLIA;"SHAAM, SELENGE";44241.5;50.10;106.20;-999 -1494;MONGOLIA;"SUHBAATA, SELENGE";44241.6;50.20;106.20;-999 -1495;MONGOLIA;"MONGOLIAN STATION, EASTERN";44256.1;49.20;115.40;-999 -1496;MONGOLIA;CHOIBALSAN;44259;48.08;114.55;747 -1497;MONGOLIA;"BULGAN, HOVD";44265.1;46.10;91.60;-999 -1498;MONGOLIA;ULIASTAI;44272;47.75;96.85;1759 -1499;MONGOLIA;"MONGOLIAN STATION, GOVIALT";44272.1;47.60;95.00;-999 -1500;MONGOLIA;ALTAI;44277;46.40;96.25;2181 -1501;MONGOLIA;"TONHIL, GOVIALTAY";44277.1;46.30;93.90;-999 -1502;MONGOLIA;TSETSERLEG;44282;47.45;101.47;1691 -1503;MONGOLIA;GAIUUT;44284;46.70;100.13;2126 -1504;MONGOLIA;HUJIRT;44285;46.90;102.77;1662 -1505;MONGOLIA;"MONGOLIAN STATION, CENTRAL";44285.1;47.20;104.20;-999 -1506;MONGOLIA;BAYANHONGOR;44287;46.13;100.68;1859 -1507;MONGOLIA;ARVAIHEER;44288;46.27;102.78;1813 -1508;MONGOLIA;"DAUUNMOD, CENTRAL";44292;47.80;106.80;-999 -1509;MONGOLIA;"MONGOLIAN STATION, CENTRAL";44292.1;47.70;107.00;-999 -1510;MONGOLIA;URGA;44292.3;47.90;106.90;1325 -1511;MONGOLIA;"BAYANDZURH, CENTRAL";44292.4;47.90;107.10;-999 -1512;MONGOLIA;MAANTI;44294;47.30;107.48;1430 -1513;MONGOLIA;"MONGOLIAN STATION, CENTRAL";44294.1;47.70;108.40;-999 -1514;MONGOLIA;CHOIR;44298;46.45;108.22;1286 -1515;MONGOLIA;"MONGOLIAN STATION, EAST GO";44298.1;46.20;108.80;-999 -1516;MONGOLIA;BAYAN-OVOO;44302;47.78;112.12;926 -1517;MONGOLIA;"TATAAL, HENTIY";44302.1;49.00;111.60;-999 -1518;MONGOLIA;UNDERKHAAN;44304;47.32;110.63;1033 -1519;MONGOLIA;"BINDER, HENTIY";44304.1;48.60;110.60;747 -1520;MONGOLIA;BARUUN-URT;44305;46.68;113.28;981 -1521;MONGOLIA;"TAMSAGBULAG, EASTERN";44313.1;47.20;117.30;642 -1522;MONGOLIA;"MONGOLIAN STATION, EASTERN";44313.2;47.60;118.60;-999 -1523;MONGOLIA;"ERDENE-TSAGAAN, SUHBAATAR";44314.1;45.90;115.40;1067 -1524;MONGOLIA;"MONGOLIAN STATION, BAYANHON";44325.1;44.50;99.30;-999 -1525;MONGOLIA;"MONGOLIAN STATION, GOVIALT";44325.2;44.90;96.80;-999 -1526;MONGOLIA;"HOVSOGOL, EAST GOVI";44334.1;43.60;109.60;-999 -1527;MONGOLIA;SAIKHAN-OVOO;44336;45.45;103.90;1316 -1528;MONGOLIA;MANDALGOVI;44341;45.77;106.28;1393 -1529;MONGOLIA;TSOGT-OVOO;44347;44.42;105.32;1298 -1530;MONGOLIA;BAYANDELGER;44352;45.73;112.37;1101 -1531;MONGOLIA;SAINSHAND;44354;44.90;110.10;-999 -1532;MONGOLIA;ZAMYN-UUD;44358;43.73;111.90;964 -1533;MONGOLIA;DALANZADGAD;44373;43.58;104.42;1465 -1534;MONGOLIA;"MONGOLIAN STATION, SOUTH G";44373.1;43.20;101.00;-999 -1535;MONGOLIA;"BILGAN, SOUTH GOVI";44373.2;44.10;103.60;-999 -1536;MYANMAR;MYITKYINA;48008;25.37;97.40;147 -1537;MYANMAR;BHAMO;48019;24.27;97.20;113 -1538;MYANMAR;MANDALAY;48042;21.98;96.10;76 -1539;MYANMAR;MEIKTILA;48053;20.83;95.83;220 -1540;MYANMAR;AKYAB;48062;20.10;92.90;5 -1541;MYANMAR;KYAUKPYU;48071;19.42;93.55;5 -1542;MYANMAR;TOUNGOO;48078;18.92;96.47;49 -1543;MYANMAR;SANDOWAY;48080;18.47;94.35;11 -1544;MYANMAR;THARRAWADDY;48088.1;17.63;95.80;15 -1545;MYANMAR;MAUBIN;48095;16.73;95.65;5 -1546;MYANMAR;RANGOON;48097;16.80;96.20;23 -1547;MYANMAR;MERGUI;48110;12.43;98.60;37 -1548;MYANMAR;VICTORIA POIN;48112;9.97;98.58;47 -1549;NEPAL;KATHMANDU AIR;44454;27.70;85.37;1337 -1550;OMAN;BURAIMI;41244.1;24.25;55.83;295 -1551;OMAN;"SEEB, INTERNA";41256;23.58;58.28;8 -1552;OMAN;MASIRAH;41288;20.67;58.90;19 -1553;OMAN;THUMRAIT;41314;17.67;54.03;467 -1554;OMAN;SALALAH;41316;17.03;54.08;20 -1555;PAKISTAN;DIR;41506.1;35.85;71.83;1425 -1556;PAKISTAN;DROSH;41508.1;35.07;71.78;1465 -1557;PAKISTAN;CHITRAL;41508.2;35.07;71.83;1439 -1558;PAKISTAN;CHAKDARA;41523.1;34.65;72.03;670 -1559;PAKISTAN;PESHAWAR;41530;34.02;71.58;360 -1560;PAKISTAN;LANDIKOTAL;41530.1;34.10;71.13;1068 -1561;PAKISTAN;BATTAL;41531.1;34.58;73.15;1524 -1562;PAKISTAN;RISALPUR;41533;34.07;71.98;317 -1563;PAKISTAN;KAKUL;41535;34.18;73.25;1309 -1564;PAKISTAN;HARIPUR;41535.1;33.98;72.92;536 -1565;PAKISTAN;BALAKOT;41536.1;34.55;73.65;983 -1566;PAKISTAN;PARACHINAR;41560;33.87;70.08;1726 -1567;PAKISTAN;MIRANSHAH;41560.1;32.98;70.12;921 -1568;PAKISTAN;KOHAT;41564;33.57;71.43;513 -1569;PAKISTAN;CHERAT;41565;33.82;71.88;1372 -1570;PAKISTAN;RAWALPINDI;41571.1;33.58;73.05;510 -1571;PAKISTAN;CHAKLALA;41571.2;33.62;73.10;508 -1572;PAKISTAN;MURREE;41573;33.92;73.38;2127 -1573;PAKISTAN;MIANWALI;41592;32.55;71.52;212 -1574;PAKISTAN;BANNU;41592.1;33.00;70.60;385 -1575;PAKISTAN;SARGODHA;41594;32.05;72.67;188 -1576;PAKISTAN;LAYALLPUR/FAISALABAD;41594.1;31.42;73.07;184 -1577;PAKISTAN;KHUSHAB;41594.2;32.30;72.35;188 -1578;PAKISTAN;JHELUM;41598;32.93;73.72;234 -1579;PAKISTAN;SIALKOT;41600;32.50;74.53;256 -1580;PAKISTAN;FORT SANDEMAN;41620;31.40;69.50;1407 -1581;PAKISTAN;WANA;41620.2;32.28;69.57;1358 -1582;PAKISTAN;DERA ISMAIL K;41624;31.82;70.92;173 -1583;PAKISTAN;LEIAH;41624.1;30.97;70.95;149 -1584;PAKISTAN;LAHORE CITY;41640;31.55;74.33;215 -1585;PAKISTAN;LAHORE AIRPOR;41641;31.52;74.40;217 -1586;PAKISTAN;QUETTA/SAMUNGLI;41660;30.30;66.90;1601 -1587;PAKISTAN;NOSHKI;41660.1;29.57;66.02;1041 -1588;PAKISTAN;CHAMAN;41660.2;30.92;66.45;1314 -1589;PAKISTAN;QUETTA CANTONMENT;41661.1;30.20;67.00;1673 -1590;PAKISTAN;HINDU/MUSLIM BAGH;41661.3;30.75;67.87;1801 -1591;PAKISTAN;MULTAN;41675;30.20;71.43;123 -1592;PAKISTAN;BAHAWALNAGAR;41678;29.95;73.25;163 -1593;PAKISTAN;FORT ABBASS;41678.1;29.67;72.83;145 -1594;PAKISTAN;SAHIWAL/MONTGOMERY;41678.2;30.67;73.10;170 -1595;PAKISTAN;SIBI;41697;29.55;67.88;134 -1596;PAKISTAN;LORALAI;41697.1;30.40;68.60;1432 -1597;PAKISTAN;BAHAWALPUR;41700;29.40;71.78;113 -1598;PAKISTAN;NOKKUNDI;41710;28.82;62.75;683 -1599;PAKISTAN;DAL BANDIN;41712;28.88;64.40;850 -1600;PAKISTAN;JACOBABAD;41715;28.30;68.47;56 -1601;PAKISTAN;KHANPUR;41718;28.65;70.68;88 -1602;PAKISTAN;SUKKUR;41725.1;27.70;68.87;67 -1603;PAKISTAN;PANJGUR;41739;26.97;64.10;981 -1604;PAKISTAN;KALAT;41744.1;29.00;66.60;2017 -1605;PAKISTAN;PAD IDAN;41746;26.85;68.13;47 -1606;PAKISTAN;NAWABSHAH;41749;26.25;68.37;38 -1607;PAKISTAN;JIWANI;41756;25.07;61.80;57 -1608;PAKISTAN;PASNI;41759;25.27;63.48;6 -1609;PAKISTAN;TURBAT;41759.1;25.98;63.07;155 -1610;PAKISTAN;HYDERABAD AIR;41764;25.38;68.42;41 -1611;PAKISTAN;CHHOR;41768;25.52;69.78;6 -1612;PAKISTAN;UMARKOT;41768.1;25.37;69.75;17 -1613;PAKISTAN;KARACHI AIRPO;41780;24.90;67.13;22 -1614;PAKISTAN;KARACHI MASRO;41781;24.90;66.93;16 -1615;PAKISTAN;LASBELLA;41781.1;26.23;66.32;89 -1616;PAKISTAN;KARACHI/MANORA;41782.1;24.80;67.00;4 -1617;S.FAISAL;KARACHI;41782.2;24.83;67.05;7 -1618;PAKISTAN;BADIN;41785;24.63;68.90;11 -1619;QATAR;DOHA INTERNAT;41170;25.25;51.57;10 -1620;REPUBLIC OF KOREA;SOKCHO;47090;38.25;128.57;18 -1621;REPUBLIC OF KOREA;INJE;47091.1;38.05;128.17;200 -1622;REPUBLIC OF KOREA;TAEGWALLYONG;47100;37.68;128.75;843 -1623;REPUBLIC OF KOREA;CHUNCHON;47101;37.90;127.73;75 -1624;REPUBLIC OF KOREA;HONGCHON;47104.1;37.68;127.88;141 -1625;REPUBLIC OF KOREA;KANGNUNG;47105;37.75;128.90;27 -1626;REPUBLIC OF KOREA;SAMCHOK;47106.1;37.37;129.22;4 -1627;REPUBLIC OF KOREA;SEOUL;47108;37.57;126.97;87 -1628;REPUBLIC OF KOREA;UIJONGBU/CAMP RED CLOUD;47108.1;37.73;127.05;53 -1629;REPUBLIC OF KOREA;ICHON;47111.1;37.28;127.43;75 -1630;REPUBLIC OF KOREA;YANGPYONG;47111.2;37.48;127.50;49 -1631;REPUBLIC OF KOREA;INCHON;47112;37.48;126.63;70 -1632;REPUBLIC OF KOREA;KANGHWA;47112.1;37.70;126.45;46 -1633;REPUBLIC OF KOREA;WONJU;47114;37.33;127.95;150 -1634;REPUBLIC OF KOREA;CHUNGJU;47114.1;36.97;127.88;69 -1635;REPUBLIC OF KOREA;ULLUNGDO;47115;37.48;130.90;223 -1636;REPUBLIC OF KOREA;SUWON;47119;37.27;126.98;38 -1637;REPUBLIC OF KOREA;CHECHON;47121.1;37.15;128.18;264 -1638;REPUBLIC OF KOREA;OSAN/K 55;47122.1;37.08;127.03;11 -1639;REPUBLIC OF KOREA;POUN;47124.1;36.48;127.73;170 -1640;REPUBLIC OF KOREA;ONYANG;47127.1;36.78;126.98;25 -1641;REPUBLIC OF KOREA;SOSAN;47129;36.77;126.47;21 -1642;REPUBLIC OF KOREA;ULCHIN;47130;36.98;129.42;51 -1643;REPUBLIC OF KOREA;YONGDOK;47130.1;36.53;129.42;41 -1644;REPUBLIC OF KOREA;CHONGJU;47131;36.63;127.43;60 -1645;REPUBLIC OF KOREA;TAEJON;47133;36.30;127.40;78 -1646;REPUBLIC OF KOREA;KUMSAN;47133.1;36.10;127.47;171 -1647;REPUBLIC OF KOREA;CHOMCHON;47134.1;36.62;128.15;172 -1648;REPUBLIC OF KOREA;YONGJU;47134.2;36.87;128.52;208 -1649;REPUBLIC OF KOREA;CHUPUNGNYONG;47135;36.22;128.00;249 -1650;REPUBLIC OF KOREA;ANDONG;47136;36.55;128.72;142 -1651;REPUBLIC OF KOREA;UISONG;47136.1;36.35;128.68;73 -1652;REPUBLIC OF KOREA;POHANG;47138;36.03;129.38;6 -1653;REPUBLIC OF KOREA;KUNSAN;47140;35.98;126.70;28 -1654;REPUBLIC OF KOREA;PUAN;47141.1;35.72;126.70;7 -1655;REPUBLIC OF KOREA;KUNSAN;47141.2;35.90;126.62;10 -1656;REPUBLIC OF KOREA;YONGCHON;47142.1;35.97;128.95;91 -1657;REPUBLIC OF KOREA;TAEGU;47143;35.88;128.62;61 -1658;REPUBLIC OF KOREA;PUYO;47144.1;36.27;126.92;16 -1659;REPUBLIC OF KOREA;TAECHON;47144.2;36.33;126.60;33 -1660;REPUBLIC OF KOREA;CHONJU;47146;35.82;127.15;53 -1661;REPUBLIC OF KOREA;NAMWON;47146.1;35.42;127.42;115 -1662;REPUBLIC OF KOREA;IMSHIL;47146.2;35.62;127.28;244 -1663;REPUBLIC OF KOREA;ULSAN;47152;35.55;129.32;33 -1664;REPUBLIC OF KOREA;MIRYANG;47155.1;35.48;128.75;13 -1665;REPUBLIC OF KOREA;SUNGJU;47156.1;35.07;127.25;74 -1666;REPUBLIC OF KOREA;KWANGJU;47156.2;35.17;126.88;70 -1667;REPUBLIC OF KOREA;PUSAN;47159;35.10;129.03;71 -1668;REPUBLIC OF KOREA;CHUNGMU;47162;34.83;128.43;40 -1669;REPUBLIC OF KOREA;KOJE;47162.1;34.88;128.62;12 -1670;REPUBLIC OF KOREA;MOKPO;47165;34.78;126.38;56 -1671;REPUBLIC OF KOREA;HAENAM;47166.1;34.55;126.57;22 -1672;REPUBLIC OF KOREA;KOHUNG;47167.1;34.60;127.30;32 -1673;REPUBLIC OF KOREA;YOSU;47168;34.73;127.73;68 -1674;REPUBLIC OF KOREA;NAMHAE;47168.1;34.78;127.87;50 -1675;REPUBLIC OF KOREA;WANDO;47170;34.30;126.75;12 -1676;REPUBLIC OF KOREA;CHANGHUNG;47170.1;34.68;126.92;40 -1677;REPUBLIC OF KOREA;CHEJU;47184;33.52;126.53;24 -1678;REPUBLIC OF KOREA;SOGWIPO;47189;33.23;126.57;53 -1679;REPUBLIC OF KOREA;SONGSANPO;47189.1;33.38;126.88;18 -1680;REPUBLIC OF KOREA;CHINJU;47192;35.20;128.10;23 -1681;REPUBLIC OF KOREA;SANCHONG;47192.1;35.42;127.88;142 -1682;REPUBLIC OF KOREA;HAPCHON;47192.2;35.57;128.17;32 -1683;REPUBLIC OF KOREA;KOCHANG;47192.3;35.67;127.92;225 -1684;RUSSIAN FEDERATION;GMO IM.E.T.;20046;80.62;58.05;20 -1685;RUSSIAN FEDERATION;OSTROV VIZE;20069;79.50;76.98;11 -1686;RUSSIAN FEDERATION;OSTROV UEDINE;20274;77.50;82.20;23 -1687;RUSSIAN FEDERATION;GMO IM.E.K. F;20292;77.72;104.30;15 -1688;RUSSIAN FEDERATION;MYS ZELANIJA;20353;76.95;68.55;9 -1689;RUSSIAN FEDERATION;OSTROV DIKSON;20674;73.50;80.40;47 -1690;RUSSIAN FEDERATION;MALYE KARMAKU;20744;72.37;52.70;15 -1691;RUSSIAN FEDERATION;HATANGA;20891;71.98;102.47;33 -1692;RUSSIAN FEDERATION;OSTROV KOTEL;21432;76.00;137.87;8 -1693;RUSSIAN FEDERATION;MYS SALAUROVA;21647;73.18;143.23;22 -1694;RUSSIAN FEDERATION;COKURDAH;21946;70.62;147.88;61 -1695;RUSSIAN FEDERATION;OSTROV CHETYR;21965;70.63;162.48;6 -1696;RUSSIAN FEDERATION;OSTROV VRANGE;21982;70.98;-178.48;5 -1697;RUSSIAN FEDERATION;WAIGATZ;23022.1;70.40;58.80;11 -1698;RUSSIAN FEDERATION;DUDINKA;23074;69.40;86.17;19 -1699;RUSSIAN FEDERATION;MYS KAMENNYJ;23146;68.47;73.58;8 -1700;RUSSIAN FEDERATION;NARJAN-MAR;23205;67.63;53.03;12 -1701;RUSSIAN FEDERATION;HOSEDA-HARD;23219;67.08;59.38;84 -1702;RUSSIAN FEDERATION;SALEHARD;23330;66.53;66.67;16 -1703;RUSSIAN FEDERATION;UST-CILMA;23405;65.43;52.27;68 -1704;RUSSIAN FEDERATION;PECORA;23418;65.12;57.10;59 -1705;RUSSIAN FEDERATION;TURUHANSK;23472;65.78;87.93;38 -1706;RUSSIAN FEDERATION;TARKO-SALE;23552;64.92;77.82;27 -1707;RUSSIAN FEDERATION;BEREZOVO;23631;63.93;65.05;27 -1708;RUSSIAN FEDERATION;TROICKO-PECER;23711;62.70;56.20;139 -1709;RUSSIAN FEDERATION;NJAKSIMVOL;23724;62.43;60.87;51 -1710;RUSSIAN FEDERATION;SYKTYVKAR;23804;61.72;50.83;119 -1711;RUSSIAN FEDERATION;SURGUT;23849;61.25;73.50;56 -1712;RUSSIAN FEDERATION;BOR;23884;61.60;90.02;58 -1713;RUSSIAN FEDERATION;BAJKIT;23891;61.67;96.37;262 -1714;RUSSIAN FEDERATION;CERDYN;23914;60.40;56.52;207 -1715;RUSSIAN FEDERATION;IVDEL;23921;60.68;60.45;95 -1716;RUSSIAN FEDERATION;HANTY-MANSIJS;23933;61.02;69.03;46 -1717;RUSSIAN FEDERATION;ALEKSANDROVSK;23955;60.43;77.87;48 -1718;RUSSIAN FEDERATION;ESSEJ;24105;68.47;102.37;271 -1719;RUSSIAN FEDERATION;OLENEK;24125;68.50;112.43;220 -1720;RUSSIAN FEDERATION;DZARDZAN;24143;68.73;124.00;39 -1721;RUSSIAN FEDERATION;VERHOJANSK;24266;67.55;133.38;137 -1722;RUSSIAN FEDERATION;SELAGONCY;24329;66.25;114.28;236 -1723;RUSSIAN FEDERATION;ZHIGANSK;24343;66.77;123.40;92 -1724;RUSSIAN FEDERATION;TURA;24507;64.27;100.23;168 -1725;RUSSIAN FEDERATION;VILJUJSK;24641;63.77;121.62;111 -1726;RUSSIAN FEDERATION;OJMJAKON;24688;63.25;143.15;741 -1727;RUSSIAN FEDERATION;SUNTAR;24738;62.15;117.65;133 -1728;RUSSIAN FEDERATION;ERBOGACEN;24817;61.27;108.02;291 -1729;RUSSIAN FEDERATION;VANAVARA;24908;60.33;102.27;260 -1730;RUSSIAN FEDERATION;OLEKMINSK;24944;60.40;120.42;226 -1731;RUSSIAN FEDERATION;ISIT;24951;60.82;125.32;118 -1732;RUSSIAN FEDERATION;JAKUTSK;24959;62.02;129.72;101 -1733;RUSSIAN FEDERATION;UST-MAJA;24966;60.38;134.45;170 -1734;RUSSIAN FEDERATION;MYS SMIDTA;25173;68.90;-179.37;4 -1735;RUSSIAN FEDERATION;ILIRNEJ;25248;67.25;167.97;353 -1736;RUSSIAN FEDERATION;UST-OLOJ;25325;66.55;159.42;127 -1737;RUSSIAN FEDERATION;MYS UELEN;25399;66.17;-169.83;3 -1738;RUSSIAN FEDERATION;ZYRJANKA;25400;65.73;150.90;43 -1739;RUSSIAN FEDERATION;MARKOVO;25551;64.68;170.42;26 -1740;RUSSIAN FEDERATION;ANADYR;25563;64.78;177.57;61 -1741;RUSSIAN FEDERATION;BUHTA PROVIDE;25594;64.42;-173.23;17 -1742;RUSSIAN FEDERATION;SEJMCHAN;25703;62.92;152.42;205 -1743;RUSSIAN FEDERATION;KAMENSKOE;25744;62.43;166.08;10 -1744;RUSSIAN FEDERATION;MAGADAN;25913;59.55;150.78;116 -1745;RUSSIAN FEDERATION;KORF;25954;60.35;166.00;4 -1746;RUSSIAN FEDERATION;APUKA;25956;60.43;169.67;5 -1747;RUSSIAN FEDERATION;SAMARA;27995;52.98;49.43;46 -1748;RUSSIAN FEDERATION;USSOLJE;28028.1;59.30;56.80;107 -1749;RUSSIAN FEDERATION;BOGOSLOWSK;28044.1;59.80;60.10;190 -1750;RUSSIAN FEDERATION;LEUSI;28064;59.62;65.72;72 -1751;RUSSIAN FEDERATION;BISER;28138;58.52;58.85;463 -1752;RUSSIAN FEDERATION;PERM;28225;57.95;56.20;170 -1753;RUSSIAN FEDERATION;NIZHNYJ TAGIL;28240;57.88;60.07;260 -1754;RUSSIAN FEDERATION;TOBOLSK;28275;58.15;68.25;50 -1755;RUSSIAN FEDERATION;IZEVSK;28411;56.83;53.45;159 -1756;RUSSIAN FEDERATION;KRASNOUFIMSK;28434;56.65;57.78;206 -1757;RUSSIAN FEDERATION;SVERDLOVSK;28440;56.80;60.60;237 -1758;RUSSIAN FEDERATION;TARA;28493;56.90;74.38;73 -1759;RUSSIAN FEDERATION;SADRINSK;28552;56.07;63.65;89 -1760;RUSSIAN FEDERATION;ZLATOUST;28630;55.20;59.67;538 -1761;RUSSIAN FEDERATION;KURGAN;28661;55.47;65.40;74 -1762;RUSSIAN FEDERATION;OMSK;28698;55.02;73.38;122 -1763;RUSSIAN FEDERATION;UFA;28722;54.72;55.83;104 -1764;RUSSIAN FEDERATION;KUJBYSEV;28900.1;53.25;50.45;44 -1765;RUSSIAN FEDERATION;KOLPASEVO;29231;58.32;82.95;75 -1766;RUSSIAN FEDERATION;ENISEJSK;29263;58.45;92.15;79 -1767;RUSSIAN FEDERATION;BOGUCANY;29282;58.38;97.45;133 -1768;RUSSIAN FEDERATION;TOMSK;29430;56.50;84.92;139 -1769;RUSSIAN FEDERATION;KRASNOJARSK;29570;56.03;92.75;276 -1770;RUSSIAN FEDERATION;BARABINSK;29612;55.33;78.37;120 -1771;RUSSIAN FEDERATION;NIZNEUDINSK;29698;54.88;99.03;411 -1772;RUSSIAN FEDERATION;IRTYSSK;29807;53.35;75.45;94 -1773;RUSSIAN FEDERATION;BARNAUL;29838;53.43;83.52;184 -1774;RUSSIAN FEDERATION;MINUSINSK;29866;53.70;91.70;254 -1775;RUSSIAN FEDERATION;VITIM;30054;59.45;112.58;190 -1776;RUSSIAN FEDERATION;KIRENSK;30230;57.77;108.07;259 -1777;RUSSIAN FEDERATION;BODAJBO;30253;57.85;114.23;275 -1778;RUSSIAN FEDERATION;BRATSK;30309;57.28;101.75;416 -1779;RUSSIAN FEDERATION;CARA;30372;56.90;118.27;711 -1780;RUSSIAN FEDERATION;CULMAN;30393;56.83;124.87;858 -1781;RUSSIAN FEDERATION;NIZNEANGARSK;30433;55.78;109.55;487 -1782;RUSSIAN FEDERATION;KALAKAN;30469;55.12;116.77;613 -1783;RUSSIAN FEDERATION;ZIGALOVO;30521;54.80;105.22;426 -1784;RUSSIAN FEDERATION;BAGDARIN;30554;54.47;113.58;903 -1785;RUSSIAN FEDERATION;TROICKIJ PRIISK;30555.1;54.62;113.13;1315 -1786;RUSSIAN FEDERATION;UST-BARGUZIN;30635;53.42;109.02;461 -1787;RUSSIAN FEDERATION;BARGUZIN;30636;53.62;109.63;489 -1788;RUSSIAN FEDERATION;MOGOCA;30673;53.75;119.73;625 -1789;RUSSIAN FEDERATION;SKOVORODINO;30692;54.00;123.97;398 -1790;RUSSIAN FEDERATION;IRKUTSK;30710;52.27;104.32;469 -1791;RUSSIAN FEDERATION;CITA;30758;52.08;113.48;671 -1792;RUSSIAN FEDERATION;SRETENSK;30777.1;52.27;117.70;528 -1793;RUSSIAN FEDERATION;ULAN-UDE;30823;51.83;107.60;515 -1794;RUSSIAN FEDERATION;NERCINSKIJ ZA;30879;51.32;119.62;619 -1795;RUSSIAN FEDERATION;KJAHTA;30925;50.37;106.45;797 -1796;RUSSIAN FEDERATION;KYRA;30949;49.57;111.97;908 -1797;RUSSIAN FEDERATION;"MANGUT, SOVIET UNION";30949.1;49.80;112.70;-999 -1798;RUSSIAN FEDERATION;BORZJA;30965;50.40;116.52;676 -1799;RUSSIAN FEDERATION;ALDAN;31004;58.62;125.37;682 -1800;RUSSIAN FEDERATION;OHOTSK;31088;59.37;143.20;6 -1801;RUSSIAN FEDERATION;TOKO;31137;56.28;131.13;850 -1802;RUSSIAN FEDERATION;AJAN;31168;56.45;138.15;8 -1803;RUSSIAN FEDERATION;BOMNAK;31253;54.72;128.93;357 -1804;RUSSIAN FEDERATION;EKIMCAN;31329;53.07;132.98;542 -1805;RUSSIAN FEDERATION;NIKOLAEVSK-NA;31369;53.15;140.70;68 -1806;RUSSIAN FEDERATION;NORSK;31388;52.35;129.92;208 -1807;RUSSIAN FEDERATION;IM POLINY OSI;31416;52.42;136.50;73 -1808;RUSSIAN FEDERATION;BLAGOVESCENSK;31510;50.25;127.57;132 -1809;RUSSIAN FEDERATION;CEKUNDA;31532;50.87;132.25;272 -1810;RUSSIAN FEDERATION;ARHARA;31594;49.42;130.08;135 -1811;RUSSIAN FEDERATION;EKATERINO-NIK;31707;47.73;130.97;73 -1812;RUSSIAN FEDERATION;HABAROVSK;31735;48.53;135.23;72 -1813;RUSSIAN FEDERATION;MYS ZOLOTOJ;31829;47.32;138.98;26 -1814;RUSSIAN FEDERATION;DALNERECENSK;31873;45.87;133.73;101 -1815;RUSSIAN FEDERATION;TERNEJ;31909;45.00;136.60;68 -1816;RUSSIAN FEDERATION;POGRANICNYJ;31915;44.40;131.38;211 -1817;RUSSIAN FEDERATION;VLADIVOSTOK;31960;43.12;131.93;184 -1818;RUSSIAN FEDERATION;NIKOLSK USSURIYSKY;31966.1;43.80;132.00;46 -1819;RUSSIAN FEDERATION;ALEKSANDROVSK;32061;50.90;142.17;31 -1820;RUSSIAN FEDERATION;PORONAJSK;32098;49.22;143.10;8 -1821;DOLINSK;OCHIAI;32133.1;47.30;142.80;7 -1822;RUSSIAN FEDERATION;JUZNO-SAHALIN;32150;46.92;142.72;24 -1823;RUSSIAN FEDERATION;JUZNO-KURILS;32165;44.02;145.87;49 -1824;RUSSIAN FEDERATION;SYANA;32165.1;45.20;147.90;39 -1825;RUSSIAN FEDERATION;SIMUSIR;32195;46.85;151.87;25 -1826;RUSSIAN FEDERATION;MYS VASILEVA;32217;50.03;155.42;14 -1827;RUSSIAN FEDERATION;USTVAJAMPOLK;32252;58.50;159.17;7 -1828;RUSSIAN FEDERATION;KLJUCI;32389;56.32;160.83;29 -1829;RUSSIAN FEDERATION;UST-KAMCATSK;32408;56.22;162.72;27 -1830;RUSSIAN FEDERATION;ICA;32411;55.58;155.58;6 -1831;RUSSIAN FEDERATION;PETROPAVLOVSK;32583;52.98;158.65;24 -1832;RUSSIAN FEDERATION;OKTIABRSKAYA;32594.1;52.67;156.23;-999 -1833;RUSSIAN FEDERATION;NIKOLSKOE;32618;55.20;165.98;18 -1834;RUSSIAN FEDERATION;ADAMOVKA;35041.1;51.52;59.95;285 -1835;RUSSIAN FEDERATION;ORENBURG;35121;51.68;55.10;117 -1836;RUSSIAN FEDERATION;RUBCOVSK;36034;51.50;81.22;219 -1837;SAUDI ARABIA;TURAIF;40356;31.68;38.73;852 -1838;SAUDI ARABIA;AL QAYSUMAH;40373;28.32;46.12;360 -1839;SAUDI ARABIA;TABUK;40375;28.37;36.60;768 -1840;SAUDI ARABIA;HAIL;40394;27.43;41.68;1013 -1841;SAUDI ARABIA;WEJH;40400;26.20;36.47;21 -1842;SAUDI ARABIA;GASSIM;40405;26.30;43.77;650 -1843;SAUDI ARABIA;DHAHRAN;40416;26.27;50.15;17 -1844;SAUDI ARABIA;MADINAH;40430;24.55;39.70;636 -1845;SAUDI ARABIA;RIYADH;40438;24.72;46.73;620 -1846;SAUDI ARABIA;YENBO;40439;24.02;38.22;11 -1847;SAUDI ARABIA;JEDDAH;41020.1;21.50;39.20;11 -1848;SAUDI ARABIA;TAIF;41036;21.48;40.55;1454 -1849;SAUDI ARABIA;GIZAN;41140;16.90;42.50;5 -1850;SRI LANKA;"JAFFNA, SRI";43404.1;9.70;80.00;4 -1851;SRI LANKA;MANNAR;43413;8.98;79.92;3 -1852;SRI LANKA;TRINCOMALEE;43418;8.58;81.25;7 -1853;SRI LANKA;PUTTALAM;43424;8.03;79.83;2 -1854;SRI LANKA;BATTICALOA;43436;7.72;81.70;12 -1855;SRI LANKA;"KANDY, SRI LANKA";43444.1;7.30;80.60;477 -1856;SRI LANKA;COLOMBO;43466;6.90;79.87;7 -1857;SRI LANKA;NUWARA ELIYA;43473;6.97;80.77;1880 -1858;SRI LANKA;"DIYATALAWA, SRI";43476.1;6.80;81.00;1248 -1859;SRI LANKA;"GALLE, SRI LANKA";43495.1;6.00;80.20;13 -1860;SRI LANKA;HAMBANTOTA;43497;6.12;81.13;20 -1861;TAJIKISTAN;LENINABAD;38599.1;40.22;69.73;414 -1862;TAJIKISTAN;DUSHANBE;38836;38.55;68.78;800 -1863;TAJIKISTAN;KURGAN-TYUBE;38933;37.82;68.78;429 -1864;TAJIKISTAN;KHOROG;38954;37.50;71.50;2077 -1865;THAILAND;MAE HONG SON;48300;19.30;97.83;269 -1866;THAILAND;CHIANG RAI;48303;19.92;99.83;395 -1867;THAILAND;MAE SARIANG;48325;18.17;97.93;213 -1868;THAILAND;CHIANG MAI;48327;18.78;98.98;314 -1869;THAILAND;LAMPANG;48328;18.28;99.52;242 -1870;THAILAND;NAN;48331;18.77;100.77;201 -1871;THAILAND;UTTARADIT;48351;17.62;100.10;64 -1872;THAILAND;UDON THANI;48354;17.38;102.80;182 -1873;THAILAND;SAKON NAKHON;48356;17.15;104.13;172 -1874;THAILAND;MAE SOT;48375;16.67;98.55;197 -1875;THAILAND;PHITSANULOK;48378;16.78;100.27;45 -1876;THAILAND;PHETCHABUN;48379;16.43;101.15;116 -1877;THAILAND;KHON KAEN;48381;16.43;102.83;166 -1878;THAILAND;NAKHON SAWAN;48400;15.80;100.17;35 -1879;THAILAND;ROI ET;48405;16.05;103.68;142 -1880;THAILAND;UBON RATCHATH;48407;15.25;104.87;127 -1881;THAILAND;SUPHAN BURI;48425;14.47;100.13;8 -1882;THAILAND;PRACHIN BURI;48430;14.05;101.37;6 -1883;THAILAND;NAKHON RATCHA;48431;14.97;102.08;188 -1884;THAILAND;SURIN;48432;14.88;103.50;147 -1885;THAILAND;KANCHANABURI;48450;14.02;99.53;29 -1886;THAILAND;BANGKOK;48455;13.73;100.57;20 -1887;THAILAND;ARANYAPRATHET;48462;13.70;102.58;49 -1888;THAILAND;HUA HIN;48475;12.58;99.95;6 -1889;THAILAND;CHANTHABURI;48480;12.60;102.12;4 -1890;THAILAND;PRACHUAP KHIR;48500;11.83;99.83;5 -1891;THAILAND;CHUMPHON;48517;10.48;99.18;5 -1892;THAILAND;RANONG;48532;9.98;98.62;8 -1893;THAILAND;SURAT THANI;48551;9.12;99.35;11 -1894;THAILAND;NAKHON SI THA;48552;8.47;99.97;9 -1895;THAILAND;PHUKET AIRPOR;48565;8.12;98.32;10 -1896;THAILAND;TRANG;48567;7.52;99.62;16 -1897;THAILAND;SONGKHLA;48568;7.20;100.60;5 -1898;TURKMENISTAN;KRASNOVODSK;38507;40.03;52.98;89 -1899;TURKMENISTAN;CARDZOU;38687;39.08;63.60;193 -1900;TURKMENISTAN;GASAN-KULI;38750;37.47;53.97;23 -1901;TURKMENISTAN;KIZYL-ARVAT;38763;38.98;56.28;97 -1902;TURKMENISTAN;ASHGABAT;38880;37.97;58.33;228 -1903;TURKMENISTAN;BAJRAM-ALI;38895;37.60;62.18;241 -1904;TURKMENISTAN;SERAHS;38974.1;36.53;61.22;279 -1905;TURKMENISTAN;KUSKA;38974.2;36.53;61.22;625 -1906;UNITED ARAB EMIRATES;SHARJAH INTER;41196;25.33;55.52;33 -1907;UZBEKISTAN;CIMBAJ;38262;42.95;59.82;66 -1908;UZBEKISTAN;TAMDY;38413;41.73;64.62;237 -1909;UZBEKISTAN;TASHKENT;38457;41.27;69.27;488 -1910;UZBEKISTAN;FERGANA;38618;40.37;71.75;577 -1911;UZBEKISTAN;SAMARKAND;38696;39.57;66.95;724 -1912;UZBEKISTAN;TERMEZ;38927;37.23;67.27;310 -1913;VIETNAM;HA NOI;48820;21.02;105.80;6 -1914;VIETNAM;PHU LIEN;48826;20.80;106.63;119 -1915;VIETNAM;MONCAY;48830.1;21.50;108.00;10 -1916;VIETNAM;DA NANG;48855;16.03;108.18;7 -1917;VIETNAM;HOANG-SA/PATTLE/;48860.1;16.60;111.60;6 -1918;VIETNAM;NHA TRANG;48877;12.25;109.20;10 -1919;VIETNAM;BANMETHUOT;48877.1;12.70;108.10;537 -1920;VIETNAM;HO CHI MINH;48900;10.82;106.67;19 -1921;YEMEN;AR RIYAN;41443.1;14.70;49.40;23 -1922;YEMEN;ADEN/KHORMAKSAR;41480;12.83;45.03;3 -1923;PORTUGAL;MACAO;45011;22.20;113.53;59 -1924;TAIWAN;TAINAN;59358;23.00;120.22;14 -1925;TAIWAN;HENGCHUN;59559;22.00;120.75;24 -1926;ARGENTINA;LA QUIACA;87007;-22.10;-65.60;3459 -1927;ARGENTINA;JUJUY AERO;87046;-24.38;-65.08;905 -1928;ARGENTINA;SALTA AERO;87047;-24.85;-65.48;1221 -1929;ARGENTINA;RIVADAVIA;87065;-24.17;-62.90;205 -1930;ARGENTINA;LAS LOMITAS;87078;-24.70;-60.58;130 -1931;ARGENTINA;TUCUMAN AERO;87121;-26.85;-65.10;450 -1932;ARGENTINA;"SAN MARTIN DE TUCUMAN, ARG";87121.1;-26.80;-65.30;-999 -1933;ARGENTINA;TUCUMAN;87121.2;-26.80;-65.20;481 -1934;ARGENTINA;SANTIAGO DEL;87129;-27.77;-64.30;199 -1935;ARGENTINA;PRESIDENCIA R;87149;-26.82;-60.45;92 -1936;ARGENTINA;RESISTENCIA A;87155;-27.45;-59.05;52 -1937;ARGENTINA;FORMOSA AERO;87162;-26.20;-58.23;60 -1938;ARGENTINA;CORRIENTES AE;87166;-27.45;-58.77;62 -1939;ARGENTINA;POSADAS AERO.;87178;-27.37;-55.97;133 -1940;ARGENTINA;LA RIOJA AERO;87217;-29.38;-66.82;429 -1941;ARGENTINA;CATAMARCA AER;87222;-28.60;-65.77;454 -1942;ARGENTINA;"ANDALGALA, ARGENTINA";87222.1;-27.60;-66.20;-999 -1943;ARGENTINA;CERES AERO;87257;-29.88;-61.95;88 -1944;ARGENTINA;RECONQUISTA A;87270;-29.18;-59.70;53 -1945;ARGENTINA;"VERA, ARGENTINA";87270.1;-29.40;-60.20;-999 -1946;ARGENTINA;GOYA;87270.2;-29.10;-59.30;36 -1947;ARGENTINA;PASO DE LOS L;87289;-29.68;-57.15;70 -1948;ARGENTINA;JACHAL;87305;-30.25;-68.75;1165 -1949;ARGENTINA;SAN JUAN AERO;87311;-31.57;-68.87;598 -1950;ARGENTINA;CHEPES;87322;-31.33;-66.60;658 -1951;ARGENTINA;CORDOBA AERO;87344;-31.32;-64.22;474 -1952;ARGENTINA;CORDOBA ARGENTINA;87344.1;-31.40;-64.20;425 -1953;ARGENTINA;PILAR OBSERVA;87349;-31.67;-63.88;338 -1954;ARGENTINA;PARANA AERO;87374;-31.78;-60.48;78 -1955;ARGENTINA;"LA PAZ, ARGENTINA";87374.1;-30.80;-59.80;-999 -1956;ARGENTINA;CONCORDIA AER;87395;-31.30;-58.02;38 -1957;ARGENTINA;CONCORDIA;87395.1;-31.50;-58.00;38 -1958;ARGENTINA;CRISTO REDENTOR;87400.1;-32.90;-70.20;3800 -1959;ARGENTINA;MENDOZA AERO;87418;-32.83;-68.78;704 -1960;ARGENTINA;MENDOZA OBSERVATORIO;87418.1;-32.90;-68.90;828 -1961;ARGENTINA;SAN LUIS AERO;87436;-33.27;-66.35;713 -1962;ARGENTINA;VILLA REYNOLD;87448;-33.73;-65.38;486 -1963;ARGENTINA;RIO CUARTO AE;87453;-33.12;-64.23;421 -1964;ARGENTINA;"BELL VILLE, ARGENTINA";87467.1;-32.50;-62.60;-999 -1965;ARGENTINA;ROSARIO AERO;87480;-32.92;-60.78;25 -1966;ARGENTINA;"CASILDA, ARGENTINA";87480.1;-33.00;-61.20;-999 -1967;ARGENTINA;GUALEGUAYCHU;87497;-33.00;-58.62;21 -1968;ARGENTINA;CHOS MALAL;87506.1;-37.10;-70.30;864 -1969;ARGENTINA;SAN RAFAEL AE;87509;-34.58;-68.40;748 -1970;ARGENTINA;LABOULAYE;87534;-34.13;-63.37;137 -1971;ARGENTINA;PEHUAJO AERO;87544;-35.87;-61.90;86 -1972;ARGENTINA;JUNIN AERO;87548;-34.55;-60.92;81 -1973;ARGENTINA;LAS FLORES AE;87563;-36.07;-59.10;38 -1974;ARGENTINA;"SAN MIGUEL, ARGENTINA";87568.1;-34.30;-58.70;-999 -1975;ARGENTINA;"MERCEDES, ARGENTINA";87571.1;-34.70;-59.50;-999 -1976;ARGENTINA;EZEIZA AERO;87576;-34.82;-58.53;20 -1977;ARGENTINA;AEROPARQUE;87582;-34.60;-58.50;6 -1978;ARGENTINA;BUENOS AIRES;87585;-34.58;-58.48;25 -1979;ARGENTINA;PUNTA INDIO B;87596;-35.37;-57.28;22 -1980;ARGENTINA;SANTA ROSA AE;87623;-36.57;-64.27;191 -1981;ARGENTINA;GENERAL ACHA;87623.1;-37.40;-64.60;230 -1982;ARGENTINA;"MACACHIN, ARGENTINA";87623.2;-37.10;-63.70;142 -1983;ARGENTINA;AZUL AERO;87642;-36.75;-59.83;132 -1984;ARGENTINA;DOLORES AERO;87648;-36.35;-57.73;9 -1985;ARGENTINA;"GEN. CONESA, ARGENTINA";87648.1;-36.50;-57.30;-999 -1986;ARGENTINA;PIGUE AERO;87679;-37.60;-62.38;304 -1987;ARGENTINA;TRES ARROYOS;87688;-38.33;-60.25;115 -1988;ARGENTINA;MAR DEL PLATA;87692;-37.93;-57.58;21 -1989;ARGENTINA;"BALCARCA, ARGENTINA";87692.1;-37.80;-58.30;-999 -1990;ARGENTINA;NEUQUEN AERO;87715;-38.95;-68.13;271 -1991;ARGENTINA;"CHOELE CHOEL, ARGENTINA";87715.1;-39.20;-66.80;-999 -1992;ARGENTINA;CIPOLLETTI ARGENTINA;87715.2;-39.00;-68.00;265 -1993;ARGENTINA;BAHIA BLANCA AERO;87750;-38.70;-62.20;72 -1994;ARGENTINA;COMANDANTE ESPORA B.N.;87750.2;-38.70;-62.20;74 -1995;ARGENTINA;BARILOCHE AER;87765;-41.15;-71.17;840 -1996;ARGENTINA;MAQUINCHAO;87774;-41.25;-68.73;888 -1997;ARGENTINA;SAN ANTONIO O;87784;-40.78;-65.10;20 -1998;ARGENTINA;VIEDMA AERO;87791;-40.85;-63.02;7 -1999;ARGENTINA;ESQUEL AERO;87803;-42.93;-71.15;785 -2000;ARGENTINA;PASO DEL LOS INDIOS;87814;-43.82;-68.88;460 -2001;ARGENTINA;PUERTO MADRYN B. A.;87823.1;-42.80;-65.00;7 -2002;ARGENTINA;TRELEW AERO;87828;-43.20;-65.27;43 -2003;ARGENTINA;"PATAGONES, ARGENTINA";87852.1;-46.80;-69.50;-999 -2004;ARGENTINA;COMODORO RIVA;87860;-45.78;-67.50;46 -2005;ARGENTINA;SARMIENTO ARGENTINA;87860.1;-45.60;-69.10;268 -2006;ARGENTINA;GOBERNADOR GR;87880;-48.78;-70.17;357 -2007;ARGENTINA;PUERTO DESEAD;87896;-47.73;-65.92;80 -2008;ARGENTINA;LAGO ARGENTIN;87903;-50.33;-72.30;220 -2009;ARGENTINA;SAN JULIAN AE;87909;-49.32;-67.75;62 -2010;ARGENTINA;SANTA CRUZ AE;87912;-50.02;-68.57;111 -2011;ARGENTINA;RIO GALLEGOS;87925;-51.62;-69.28;19 -2012;ARGENTINA;RIO GRANDE B.;87934;-53.80;-67.75;22 -2013;ARGENTINA;ANO NUEVO;87936.1;-54.70;-64.20;53 -2014;ARGENTINA;USHUAIA AERO;87938;-54.80;-68.32;14 -2015;ARGENTINA;BASE ESPERANZ;88963;-63.40;-56.98;-999 -2016;BOLIVIA;COBIJA;85041;-11.03;-68.78;235 -2017;BOLIVIA;RIBERALTA;85043;-11.00;-66.12;141 -2018;BOLIVIA;SAN JOAQUIN;85104;-13.07;-64.82;140 -2019;BOLIVIA;MAGDALENA;85114;-13.33;-64.12;140 -2020;BOLIVIA;REYES;85140;-14.32;-67.38;140 -2021;BOLIVIA;RURRENABAQUE;85141;-14.47;-67.57;204 -2022;BOLIVIA;APOLO;85151;-14.73;-68.50;1415 -2023;BOLIVIA;SAN BORJA;85152;-14.87;-66.87;194 -2024;BOLIVIA;TRINIDAD;85154;-14.82;-64.92;155 -2025;BOLIVIA;CONCEPCION;85196;-16.15;-62.02;497 -2026;BOLIVIA;LA PAZ/ALTO;85201;-16.52;-68.18;4038 -2027;BOLIVIA;SAN IGNACIO D;85207;-16.38;-60.97;413 -2028;BOLIVIA;COCHABAMBA;85223;-17.42;-66.18;2548 -2029;BOLIVIA;CHARANA;85230;-17.58;-69.60;4054 -2030;BOLIVIA;ORURO;85242;-18.05;-67.07;3702 -2031;BOLIVIA;SANTA CRUZ/EL;85245;-17.80;-63.18;418 -2032;BOLIVIA;SAN JOSE DE;85247;-17.80;-60.73;284 -2033;BOLIVIA;ROBORE;85268;-18.32;-59.77;276 -2034;BOLIVIA;SUCRE;85283;-19.02;-65.27;2903 -2035;BOLIVIA;PUERTO SUAREZ;85289;-18.98;-57.82;134 -2036;BOLIVIA;CAMIRI;85315;-20.00;-63.53;798 -2037;BOLIVIA;TARIJA;85364;-21.55;-64.70;1854 -2038;BOLIVIA;YACUIBA;85365;-21.95;-63.65;645 -2039;BRAZIL;BOA VISTA;82024;2.82;-60.65;90 -2040;BRAZIL;SAO GABRIEL D;82106;-0.13;-67.08;90 -2041;BRAZIL;BELEM;82191;-1.45;-48.47;10 -2042;BRAZIL;TURIACU;82198;-1.72;-45.40;44 -2043;BRAZIL;SANTAREM/TAPERINHA;82244.1;-2.40;-54.30;22 -2044;BRAZIL;SAO LUIZ;82280;-2.53;-44.30;51 -2045;BRAZIL;MANAUS;82331;-3.13;-60.02;72 -2046;BRAZIL;FORTALEZA;82397;-3.77;-38.60;26 -2047;BRAZIL;FERNANDO DE N;82400;-3.85;-32.42;56 -2048;BRAZIL;BENJAMIN CONS;82410;-4.38;-70.03;65 -2049;BRAZIL;COARI;82425;-4.92;-63.08;46 -2050;BRAZIL;BARRA DO CORD;82571;-5.50;-45.27;153 -2051;BRAZIL;TERESINA;82578;-5.08;-42.82;74 -2052;BRAZIL;QUIXERAMOBIM;82586;-5.20;-39.30;212 -2053;BRAZIL;NATAL AEROPOR;82599;-5.92;-35.25;52 -2054;BRAZIL;SAO FELIX DO;82668;-6.63;-51.98;150 -2055;BRAZIL;FLORIANO;82678;-6.77;-43.02;127 -2056;BRAZIL;CRUZEIRO DO S;82704;-7.63;-72.67;170 -2057;BRAZIL;ALTO TAPAJOS;82741;-7.35;-57.52;140 -2058;BRAZIL;CAROLINA;82765;-7.33;-47.47;193 -2059;BRAZIL;PORTO VELHO;82825;-8.77;-63.92;95 -2060;BRAZIL;CONCEICAO DO;82861;-8.25;-49.28;157 -2061;BRAZIL;RECIFE;82900;-8.05;-34.92;7 -2062;BRAZIL;RIO BRANCO;82915;-9.97;-67.80;160 -2063;BRAZIL;SENA MADUREIRA;82915.1;-9.10;-68.70;135 -2064;BRAZIL;REMANSO;82979;-9.63;-42.10;401 -2065;BRAZIL;PETROLINA;82983;-9.38;-40.48;370 -2066;BRAZIL;PORTO NACIONA;83064;-10.52;-48.72;239 -2067;BRAZIL;ARACAJU;83096;-10.92;-37.05;5 -2068;BRAZIL;SALVADOR;83229;-13.02;-38.52;51 -2069;BRAZIL;BOM JESUS DA;83288;-13.27;-43.42;440 -2070;BRAZIL;CAETITE;83339;-14.05;-42.62;882 -2071;BRAZIL;CUIABA;83361;-15.55;-56.12;151 -2072;BRAZIL;BRASILIA;83377;-15.87;-47.93;1061 -2073;BRAZIL;GOIANIA;83423;-16.67;-49.25;741 -2074;BRAZIL;MONTES CLAROS;83437;-16.72;-43.87;646 -2075;BRAZIL;CARAVELAS;83498;-17.73;-39.25;3 -2076;BRAZIL;CORUMBA;83552;-19.08;-57.50;130 -2077;BRAZIL;IGARAPAVA;83577.1;-20.00;-47.80;575 -2078;BRAZIL;ARAXA;83579;-19.57;-46.93;1004 -2079;BRAZIL;BELO HORIZONT;83587;-19.93;-43.93;850 -2080;BRAZIL;CAMPO GRANDE;83611;-20.47;-54.68;527 -2081;BRAZIL;TRES LAGOAS;83618;-20.78;-51.70;313 -2082;BRAZIL;TRINDADE;83650;-20.50;-29.32;5 -2083;BRAZIL;JUIZ DE FORA;83692;-21.77;-43.35;939 -2084;BRAZIL;PONTA PORA;83702;-22.53;-55.73;650 -2085;BRAZIL;RIO DE JANEIR;83743;-22.92;-43.17;5 -2086;BRAZIL;LONDRINA;83766;-23.33;-51.13;569 -2087;BRAZIL;SAO PAULO;83781;-23.50;-46.62;792 -2088;BRAZIL;IGUAPE;83821;-24.72;-47.55;3 -2089;BRAZIL;FOZ DO IGUACU;83827.1;-25.50;-54.60;226 -2090;BRAZIL;CURITIBA;83842;-25.43;-49.27;924 -2091;BRAZIL;BRUSQUE;83872.1;-27.10;-48.90;24 -2092;BRAZIL;FLORIANOPOLIS;83897;-27.58;-48.57;2 -2093;BRAZIL;ALEGRETE;83931;-29.68;-55.52;121 -2094;BRAZIL;PORTO ALEGRE;83967;-30.00;-51.18;3 -2095;BRAZIL;ST.VITORIA DO;83997;-33.52;-53.35;24 -2096;CHILE;ARICA;85406;-18.33;-70.33;58 -2097;CHILE;IQUIQUE/CAVANCHA;85417.1;-20.22;-70.15;5 -2098;CHILE;ANTOFAGASTA;85442;-23.43;-70.43;135 -2099;CHILE;IS. DE PASCUA;85469;-27.15;-109.42;51 -2100;CHILE;COPIAPO;85470;-27.30;-70.42;291 -2101;CHILE;CALDERA;85470.1;-27.10;-71.00;14 -2102;CHILE;VALLENAR;85486;-28.60;-70.77;526 -2103;CHILE;LA SERENA;85488;-29.90;-71.20;142 -2104;CHILE;PUNTA TORTUGA;85488.1;-29.90;-71.40;25 -2105;CHILE;QUINTERO SANT;85543;-32.78;-71.52;8 -2106;CHILE;PUNTA ANGELES;85543.1;-33.00;-71.70;41 -2107;CHILE;PUDAHUEL;85574;-33.38;-70.78;475 -2108;CHILE;SANTIAGO Q. N;85577;-33.43;-70.68;520 -2109;CHILE;ISLA JUAN FER;85585;-33.67;-78.98;30 -2110;CHILE;CURICO;85629;-34.97;-71.23;228 -2111;CHILE;CONSTITUCION;85629.1;-35.32;-72.42;12 -2112;CHILE;CONCEPCION;85682;-36.77;-73.05;12 -2113;CHILE;TEMUCO;85743;-38.75;-72.63;114 -2114;CHILE;VALDIVIA;85766;-39.62;-73.08;19 -2115;CHILE;PUNTA GALERA;85767.1;-40.00;-73.70;40 -2116;CHILE;VALDIVIA;85767.2;-39.80;-73.20;13 -2117;CHILE;OSORNO;85782;-40.60;-73.05;65 -2118;CHILE;PUERTO MONTT;85799;-41.42;-73.08;85 -2119;CHILE;ANCUD;85799.1;-41.90;-73.80;114 -2120;CHILE;ISLA HUAFO;85834;-43.57;-74.83;140 -2121;CHILE;PUERTO AYSEN;85862;-45.40;-72.67;11 -2122;CHILE;BALMACEDA;85874;-45.92;-71.68;520 -2123;CHILE;ISLOTES EVANG;85930;-52.40;-75.10;52 -2124;CHILE;PUNTA ARENAS;85934;-53.00;-70.85;37 -2125;CHILE;CENTRO MET.AN;89056;-62.42;-58.88;10 -2126;CHILE;BASE ARTURO P;89057;-62.50;-59.68;5 -2127;COLOMBIA;SAN ANDRES;80001;12.58;-81.72;6 -2128;COLOMBIA;SANTA MARTA/S;80009;11.13;-74.23;14 -2129;COLOMBIA;CARTAGENA/RAF;80022;10.45;-75.52;12 -2130;COLOMBIA;BARRANQUILLA/SOLEDAD;80028;10.90;-74.80;21 -2131;COLOMBIA;BARRANCABERMEJA;80091;7.00;-73.80;134 -2132;COLOMBIA;BUCARAMANGA/;80094;7.10;-73.20;1189 -2133;COLOMBIA;CUCUTA/CAMILO DAZA;80097;7.90;-72.60;309 -2134;COLOMBIA;BLONAY;80097.1;7.60;-72.60;1235 -2135;COLOMBIA;AEPTO CAZADERO;80097.3;7.93;-72.55;309 -2136;COLOMBIA;MEDELLIN/OLAY;80110;6.22;-75.60;1499 -2137;COLOMBIA;ESTEBAN JARAMILLO;80110.1;5.90;-75.70;1450 -2138;COLOMBIA;EL LIBANO;80149.1;4.90;-75.10;1495 -2139;COLOMBIA;CHINCHINA COLOMBIA;80210.1;4.90;-75.60;1360 -2140;COLOMBIA;GIRARDOT/SANTIAGO;80219.1;4.28;-74.80;286 -2141;COLOMBIA;TIBACUY COLOMBIA;80219.2;4.40;-74.50;1550 -2142;COLOMBIA;BOGOTA/ELDORA;80222;4.72;-74.15;2548 -2143;COLOMBIA;INST GEOGRAF A CODAZZI COL;80222.1;4.60;-74.10;2556 -2144;COLOMBIA;VILLAVICENCIO;80234;4.17;-73.62;431 -2145;COLOMBIA;LAS GAVIOTAS;80241;4.55;-70.92;167 -2146;COLOMBIA;CALI/CALIPUERTO;80259;3.40;-76.40;964 -2147;COLOMBIA;PALMIRA/AGRIC/EXP/F.;80259.2;3.50;-76.30;1006 -2148;COLOMBIA;NEIVA;80315;3.00;-75.30;443 -2149;COLOMBIA;TUMACO/EL MIRA;80336.1;1.60;-78.80;5 -2150;COLOMBIA;LA FLORIDA COLOMBIA;80346.1;2.50;-76.60;1850 -2151;COLOMBIA;IPIALES;80370;0.80;-77.70;2960 -2152;COLOMBIA;OSPINA PEREZ;80370.2;1.30;-77.50;1700 -2153;COLOMBIA;LETICIA/VASQU;80398;-4.17;-69.95;84 -2154;ECUADOR;SAN CRISTOBAL;84008;-0.90;-89.60;6 -2155;ECUADOR;TULCAN/EL ROS;84027;0.82;-77.70;2950 -2156;ECUADOR;IBARRA/ATAHUA;84043;0.35;-78.13;2228 -2157;ECUADOR;HDA.ZARACAY;84069.1;-0.25;-79.20;-999 -2158;ECUADOR;QUITO/MARISCA;84071;-0.15;-78.48;2812 -2159;ECUADOR;COTOPAXI;84088.1;-0.62;-78.57;3560 -2160;ECUADOR;IZOBAMBA-SANTA;84088.2;-0.37;-78.55;3058 -2161;ECUADOR;BAHIA DE CARA;84101;-0.58;-80.40;3 -2162;ECUADOR;LATACUNGA;84123.1;-0.92;-78.62;2785 -2163;ECUADOR;NUEVO ROCAFUE;84132;-0.92;-75.40;215 -2164;ECUADOR;PORTO VIEJO-G;84135;-1.03;-80.43;44 -2165;ECUADOR;PICHILINGUE;84140;-1.10;-79.47;73 -2166;ECUADOR;ESMERALDAS-TACHINA;84140.1;-0.98;-79.62;7 -2167;ECUADOR;AMBATO/CHACHO;84147;-1.20;-78.57;2520 -2168;ECUADOR;BANOS;84147.1;-1.38;-78.42;1830 -2169;ECUADOR;RIOBAMBA/CHIM;84176;-1.63;-78.67;2796 -2170;ECUADOR;EL PUYO;84179;-1.50;-77.95;950 -2171;ECUADOR;SALINAS/GENER;84200;-2.20;-80.98;8 -2172;ECUADOR;ANCON;84200.1;-2.32;-80.85;9 -2173;ECUADOR;MILAGRO;84202.1;-2.12;-79.60;13 -2174;ECUADOR;ISABEL MARIA;84202.2;-1.83;-79.57;5 -2175;ECUADOR;GUAYAQUIL/SIM;84203;-2.15;-79.88;9 -2176;ECUADOR;CANAR;84226;-2.55;-78.93;3120 -2177;ECUADOR;LA TOMA;84265.1;-4.00;-79.37;1230 -2178;ECUADOR;CATAMAYO;84265.2;-4.00;-79.37;1238 -2179;ECUADOR;LOJA/LA ARGEL;84270;-4.03;-79.20;2040 -2180;GUYANA;GEORGETOWN;81001;6.80;-58.15;2 -2181;GUYANA;TIMEHRI;81002;6.50;-58.25;30 -2182;GUYANA;EBINI;81010;5.57;-57.78;29 -2183;GUYANA;MABARUMA;81100;8.20;-59.78;50 -2184;PARAGUAY;NUEVA ASUNCIO;86017;-20.72;-61.92;315 -2185;PARAGUAY;BAHIA NEGRA;86033;-20.22;-58.17;96 -2186;PARAGUAY;PRATS-GIL;86065;-22.70;-61.50;220 -2187;PARAGUAY;MARISCAL;86068;-22.02;-60.60;181 -2188;PARAGUAY;PUERTO CASADO;86086;-22.28;-57.87;87 -2189;PARAGUAY;PEDRO JUAN CA;86097;-22.58;-55.65;662 -2190;PARAGUAY;CONCEPCION;86134;-23.42;-57.30;74 -2191;PARAGUAY;PASO BARRETO;86135.1;-23.05;-56.98;95 -2192;PARAGUAY;ASUNCION/AERO;86218;-25.27;-57.63;101 -2193;PARAGUAY;CARAPEGUA;86223;-25.80;-57.22;116 -2194;PARAGUAY;SAN JUAN BAUTISTA/MISIONES;86233;-25.80;-56.30;155 -2195;PARAGUAY;PUERTO STROESSNER;86248;-25.53;-54.60;196 -2196;PARAGUAY;PILAR;86255;-26.85;-58.32;56 -2197;PARAGUAY;SAN JUAN BAUT;86260;-26.67;-57.15;126 -2198;PARAGUAY;ENCARNACION;86297;-27.32;-55.83;91 -2199;PERU;TUMBES;84370;-3.55;-80.40;27 -2200;PERU;IQUITOS;84377;-3.75;-73.25;126 -2201;PERU;TALARA;84390;-4.57;-81.25;90 -2202;PERU;EL ALTO;84390.1;-4.30;-81.20;270 -2203;PERU;PIURA;84401;-5.18;-80.60;55 -2204;PERU;YURIMAGUAS;84425;-5.90;-76.08;184 -2205;PERU;MOYOBAMBA;84435.1;-6.03;-76.97;832 -2206;PERU;CHACHAPOYAS;84444;-6.22;-77.83;2435 -2207;PERU;CHICLAYO;84452;-6.78;-79.83;34 -2208;PERU;LAMBAYEQUE;84452.1;-6.70;-79.90;28 -2209;PERU;TARAPOTO;84455;-6.45;-76.38;282 -2210;PERU;CAJAMARCA;84472;-7.13;-78.47;2622 -2211;PERU;JUANJUI;84474;-7.22;-76.72;363 -2212;PERU;TRUJILLO;84501;-8.10;-79.03;30 -2213;PERU;PUCALLPA;84515;-8.42;-74.60;149 -2214;PERU;CHIMBOTE;84531;-9.17;-78.52;21 -2215;PERU;TINGO MARIA;84534;-9.13;-75.95;665 -2216;PERU;ANTA;84542;-9.35;-77.60;2760 -2217;PERU;HUANUCO;84564;-9.90;-75.75;1860 -2218;PERU;LIMA-CALLAO/A;84628;-12.00;-77.12;13 -2219;PERU;LIMATAMBO;84628.1;-12.10;-77.00;135 -2220;PERU;LIMA/CAMPO DEL MARTE;84628.2;-12.10;-77.00;137 -2221;PERU;HUANCAYO/HUAYAO;84630.1;-12.10;-75.30;3350 -2222;PERU;JAUJA;84630.2;-11.80;-75.50;3388 -2223;PERU;PUERTO MALDON;84658;-12.63;-69.20;266 -2224;PERU;AYACUCHO;84673;-13.13;-74.22;2749 -2225;PERU;QUINCE MIL;84677.1;-13.22;-70.75;-999 -2226;PERU;CUZCO;84686;-13.55;-71.98;3249 -2227;PERU;PISCO;84691;-13.75;-76.28;7 -2228;PERU;SAN JUAN;84721;-15.38;-75.17;60 -2229;PERU;JULIACA;84735;-15.48;-70.15;3827 -2230;PERU;TACNA;84782;-18.07;-70.30;469 -2231;SURINAME;ZORG EN HOOP;81200;5.82;-55.18;7 -2232;SURINAME;DIRKSHOOP;81200.1;5.77;-55.68;3 -2233;SURINAME;PARAMARIBO;81200.2;5.80;-55.20;2 -2234;SURINAME;JARIKABA;81200.3;5.82;-55.33;-999 -2235;SURINAME;MARIENBURG;81200.4;5.87;-55.05;2 -2236;SURINAME;NICKERIE;81202;5.95;-57.03;2 -2237;SURINAME;STOELMANSEILA;81209;4.35;-54.42;52 -2238;SURINAME;ZANDERIJ;81225;5.45;-55.20;15 -2239;SURINAME;VICTORIA;81225.1;5.15;-54.98;-999 -2240;SURINAME;TAFELBERG;81250;3.78;-56.15;323 -2241;SURINAME;SIPALIWINI;81251;2.03;-56.12;265 -2242;SURINAME;COEROENI;81253;3.37;-57.33;165 -2243;URUGUAY;ARTIGAS;86330;-30.38;-56.50;120 -2244;URUGUAY;RIVERA;86350;-30.88;-55.53;241 -2245;URUGUAY;SALTO;86360;-31.38;-57.95;33 -2246;URUGUAY;PAYSANDU;86430;-32.33;-58.03;61 -2247;URUGUAY;MELO;86440;-32.37;-54.22;100 -2248;URUGUAY;PASO DE LOS T;86460;-32.80;-56.52;75 -2249;URUGUAY;MERCEDES;86490;-33.25;-58.07;17 -2250;URUGUAY;TREINTA Y TRE;86500;-33.22;-54.38;46 -2251;URUGUAY;SAN JOSE;86545.1;-34.35;-56.72;41 -2252;URUGUAY;COLONIA;86560;-34.45;-57.83;22 -2253;URUGUAY;ROCHA;86565;-34.48;-54.30;18 -2254;URUGUAY;CARRASCO;86580;-34.83;-56.00;32 -2255;URUGUAY;PRADO;86585;-34.85;-56.20;16 -2256;URUGUAY;PUNTA DEL ESTE;86595.1;-35.00;-55.00;16 -2257;VENEZUELA;CORO;80403;11.42;-69.68;17 -2258;VENEZUELA;LA ORCHILA;80405;11.80;-66.18;3 -2259;VENEZUELA;MARACAIBO-LA;80407;10.57;-71.73;65 -2260;VENEZUELA;BARQUISIMETO;80410;10.07;-69.32;614 -2261;VENEZUELA;MARACAY - B.A;80413;10.25;-67.65;437 -2262;VENEZUELA;CARACAS/MAIQU;80415;10.60;-66.98;48 -2263;VENEZUELA;CARACAS/LA CARLOTA;80416;10.50;-66.90;865 -2264;VENEZUELA;CARACAS CAGIGAL OBS;80416.2;10.50;-66.90;1042 -2265;VENEZUELA;BARCELONA;80419;10.12;-64.68;7 -2266;VENEZUELA;LA GUIRIA;80423;10.58;-62.30;8 -2267;VENEZUELA;MATURIN;80435;9.75;-63.18;66 -2268;VENEZUELA;MERIDA;80438;8.60;-71.18;1498 -2269;VENEZUELA;CIUDAD BOLIVA;80444;8.15;-63.55;48 -2270;VENEZUELA;SAN ANTONIO D;80447;7.85;-72.45;378 -2271;VENEZUELA;SAN FERNANDO;80450;7.90;-67.42;48 -2272;VENEZUELA;TUMEREMO;80453;7.30;-61.45;181 -2273;VENEZUELA;PUERTO AYACUC;80457;5.60;-67.50;74 -2274;VENEZUELA;SANTA ELENA D;80462;4.60;-61.12;907 -2275;FRENCH GUIANA;SAINT-LAURENT;81401;5.50;-54.03;9 -2276;FRENCH GUIANA;KOUROU;81403;5.20;-52.75;8 -2277;FRENCH GUIANA;CAYENNE/ROCHA;81405;4.83;-52.37;9 -2278;FRENCH GUIANA;SAINT GEORGES;81408;3.88;-51.80;7 -2279;FRENCH GUIANA;MARIPASOULA;81415;3.63;-54.03;106 -2280;FALKLAND ISLANDS;STANLEY /UK/;88890.1;-51.70;-57.90;51 -2281;FALKLAND ISLANDS;"CAPE PEMBROKE, FALKLAND ISL";88890.2;-51.70;-57.70;16 -2282;SOUTH GEORGIA;GRYTVIKEN;88903;-54.27;-36.50;3 -2283;BARBADOS;GRANTLEY ADAM;78954;13.07;-59.48;56 -2284;BARBADOS;CODRINGTON;78955.1;13.10;-59.60;58 -2285;BELIZE;SAN PEDRO AMBERGRIS CAYO;78383.1;17.92;-87.97;-999 -2286;BELIZE;BELIZE/PHILLI;78583;17.53;-88.30;5 -2287;BELIZE;AUGUSTINE CAYO;78583.1;16.97;-89.00;52 -2288;BELIZE;STANN CREEK AGSTAT;78583.2;17.00;-88.32;6 -2289;BELIZE;CENTRAL FARM AGSTAT;78583.3;17.18;-89.00;90 -2290;BELIZE;SAVANNAH FOREST STATION;78596.1;16.53;-88.45;-999 -2291;BELIZE;CABBAGE HAUL STANN CREEK;78596.2;16.75;-88.32;-999 -2292;CANADA;NORMAN WELLS;71043;65.28;-126.80;74 -2293;CANADA;"FORT NORMAN A, NW";71043.1;64.92;-125.57;98 -2294;CANADA;FORT GOOD HOPE;71043.2;66.30;-128.60;53 -2295;CANADA;"TESLIN, Y.T.";71045;60.17;-132.73;705 -2296;CANADA;"ATLIN, BC";71045.1;59.57;-133.70;674 -2297;CANADA;"GRAHAM INLET, BC";71045.2;59.60;-134.18;660 -2298;CANADA;"SWIFT RIVER, YT";71045.3;60.00;-131.18;891 -2299;CANADA;"JOHNSONS CROSSING, YT";71045.4;60.48;-133.30;690 -2300;CANADA;PUNTZI MOUNTA;71050;52.12;-124.13;910 -2301;CANADA;"MOSLEY CREEK SAND CREEK, BC";71050.1;51.60;-125.00;760 -2302;CANADA;"TATLAYOKO LAKE, BC";71050.2;51.67;-124.40;853 -2303;CANADA;"ALEXIS CREEK, BC";71050.3;52.08;-123.28;800 -2304;CANADA;"ALEXIS CREEK TAUTRI CRK, BC";71050.4;52.55;-123.18;1219 -2305;CANADA;SACHS HARBOUR;71051;72.00;-125.27;88 -2306;CANADA;"PORT RADIUM, NW";71060.1;66.08;-118.03;191 -2307;CANADA;"HIGH LEVEL, A";71066;58.62;-117.17;338 -2308;CANADA;"KEG RIVER, AL";71066.1;57.78;-117.87;427 -2309;CANADA;"FORT VERMILION CDA, AL";71066.2;58.38;-116.03;279 -2310;CANADA;"PEACE RIVER, A";71068;56.23;-117.43;571 -2311;CANADA;"HIGH PRAIRIE, AL";71068.1;55.43;-116.52;594 -2312;CANADA;"FALHER, AL";71068.2;55.73;-117.20;582 -2313;CANADA;"DUNVEGAN, AL";71068.3;55.93;-118.58;398 -2314;CANADA;"FAIRVIEW, AL";71068.4;56.07;-118.38;670 -2315;CANADA;"PEACE RIVER CROSSING, AL";71068.5;56.25;-117.25;373 -2316;CANADA;"SLAVE LAKE, A";71069;55.30;-114.78;581 -2317;CANADA;"ATHABASCA 2, AL";71069.1;54.82;-113.53;626 -2318;CANADA;"SMITH RS, AL";71069.2;55.17;-114.03;564 -2319;CANADA;"KINUSO RS, AL";71069.3;55.33;-115.42;590 -2320;CANADA;"GROUARD, AL";71069.4;55.58;-116.15;579 -2321;CANADA;"WABASCA, AL";71069.5;56.03;-113.83;524 -2322;CANADA;"MOULD BAY, N.";71072;76.23;-119.33;12 -2323;CANADA;"FORT RELIANCE, NW";71073.1;62.72;-109.17;164 -2324;CANADA;URANIUM CITY;71076;59.57;-108.48;318 -2325;CANADA;"STONY RAPIDS, SA";71076.1;59.25;-105.83;225 -2326;CANADA;"FOND DU LAC, SA";71076.2;59.33;-107.17;210 -2327;CANADA;BUFFALO NARRO;71077;55.83;-108.43;434 -2328;CANADA;"KEY LAKE, SA";71077.1;57.25;-105.62;509 -2329;CANADA;"CREE LAKE, SA";71077.2;57.35;-107.13;497 -2330;CANADA;"LYNN LAKE, MA";71078;56.87;-101.08;357 -2331;CANADA;"ISLAND FALLS, SA";71078.1;55.53;-102.35;299 -2332;CANADA;"WHITESAND DAM, SA";71078.2;56.23;-103.15;344 -2333;CANADA;"LAURIE RIVER POWER SITE, MA";71078.3;56.23;-100.98;305 -2334;CANADA;"RUTTAN LAKE, MA";71078.4;56.48;-99.65;289 -2335;CANADA;"SOUTH INDIAN LAKE, MA";71078.5;56.78;-98.97;259 -2336;CANADA;"LYNN LAKE, MA";71078.6;56.85;-101.03;340 -2337;CANADA;"BROCHET A, MA";71078.7;57.88;-101.68;346 -2338;CANADA;"COLLINS BAY, SA";71078.8;58.18;-103.70;490 -2339;CANADA;THOMPSON WEAT;71079;55.80;-97.85;204 -2340;CANADA;"WABOWDEN, MA";71079.1;54.92;-98.63;233 -2341;CANADA;"HALL BEACH, N.";71081;68.78;-81.25;8 -2342;CANADA;"MACKAR INLET, NW";71081.1;68.30;-85.67;395 -2343;CANADA;"ROWLEY ISLAND, NW";71081.2;69.08;-79.03;60 -2344;CANADA;"IGLOOLIK, NW";71081.3;69.38;-81.80;21 -2345;CANADA;"ALERT, N.W.T.";71082;82.50;-62.33;66 -2346;CANADA;"CHESTERFIELD, NW";71083.1;63.33;-90.72;6 -2347;CANADA;"CHESTERFIELD INLET, NW";71083.2;63.75;-91.83;15 -2348;CANADA;"CLYDE, N.W.T.";71090;70.48;-68.52;26 -2349;CANADA;LONGSTAFF BLU;71091;68.88;-75.13;161 -2350;CANADA;"DEWAR LAKES, N";71092;68.65;-71.17;527 -2351;CANADA;CAPE HOOPER;71093;68.47;-66.80;390 -2352;CANADA;"CAPE DYER, N.W";71094;66.58;-61.62;393 -2353;CANADA;"PANGNIRTUNG, NW";71094.1;66.13;-65.73;15 -2354;CANADA;"PADLOPING ISLAND, NW";71094.2;67.03;-62.73;40 -2355;CANADA;"BROUGHTON ISLAND, NW";71094.3;67.53;-63.78;587 -2356;CANADA;"POND INLET, N";71095;72.70;-77.97;55 -2357;CANADA;"POND INLET, NW";71095.1;72.68;-77.98;4 -2358;CANADA;"NANISIVIK A, NW";71095.2;72.98;-84.62;639 -2359;CANADA;"ARCTIC BAY, NW";71095.3;73.03;-85.15;11 -2360;CANADA;"SANDSPIT, B.C.";71101;53.25;-131.82;6 -2361;CANADA;"CAPE ST JAMES, BC";71101.1;51.93;-131.02;92 -2362;CANADA;"IKEDA BAY, BC";71101.2;52.28;-131.12;2 -2363;CANADA;"TASU SOUND, BC";71101.3;52.77;-132.05;15 -2364;CANADA;"SEWELL INLET, BC";71101.4;52.88;-131.98;15 -2365;CANADA;"TLELL, BC";71101.5;53.48;-131.93;5 -2366;CANADA;"BONILLA ISLAND, BC";71101.6;53.50;-130.63;16 -2367;CANADA;"PORT CLEMENTS, BC";71101.7;53.68;-132.18;16 -2368;CANADA;WILLIAMS LAKE;71104;52.18;-122.05;940 -2369;CANADA;"DOG CREEK A, BC";71104.1;51.63;-122.25;1027 -2370;CANADA;"BIG CREEK, BC";71104.2;51.72;-123.03;1128 -2371;CANADA;"WINEGLASS RANCH, BC";71104.3;51.85;-122.65;488 -2372;CANADA;"BOSS MOUNTAIN, BC";71104.4;52.10;-120.88;1532 -2373;CANADA;"HORSEFLY LK GRUHS LK, BC";71104.5;52.37;-121.37;777 -2374;CANADA;"QUESNEL, BC";71104.6;52.98;-122.48;488 -2375;CANADA;"BARKERVILLE, BC";71104.7;53.07;-121.52;1265 -2376;CANADA;"NORTH NICOMEN, BC";71108.1;49.20;-122.03;18 -2377;CANADA;"STAVE FALLS, BC";71108.2;49.23;-122.37;110 -2378;CANADA;"PORT HARDY, B.";71109;50.68;-127.37;22 -2379;CANADA;"QUATSINO, BC";71109.1;50.53;-127.65;8 -2380;CANADA;"ALERT BAY, BC";71109.2;50.58;-126.93;63 -2381;CANADA;"HOLBERG, BC";71109.3;50.65;-128.00;579 -2382;CANADA;"CAPE SCOTT, BC";71109.4;50.80;-128.45;6 -2383;CANADA;"TRIANGLE ISLAND, BC";71109.5;50.87;-129.08;207 -2384;CANADA;"EGG ISLAND, BC";71109.6;51.25;-127.83;14 -2385;CANADA;"RIVERS INLET, BC";71109.7;51.67;-127.35;6 -2386;CANADA;"AGASSIZ CDA, BC";71114.1;49.25;-121.77;15 -2387;CANADA;HELLS GATE;71114.2;49.78;-121.45;122 -2388;CANADA;"VERNON COLDSTREAM RANCH, BC";71115.1;50.23;-119.20;482 -2389;CANADA;"SION, AL";71119.1;53.88;-114.12;701 -2390;CANADA;"COLD LAKE, ALT";71120;54.42;-110.28;541 -2391;CANADA;"IRON RIVER, AL";71120.1;54.42;-111.00;549 -2392;CANADA;"RADWAY, AL";71121.1;54.08;-112.90;632 -2393;CANADA;"BANFF, ALTA.";71122;51.18;-115.57;1384 -2394;CANADA;"INVERMERE, BC";71122.1;50.50;-116.03;830 -2395;CANADA;"SINCLAIR PASS, BC";71122.2;50.67;-115.97;1170 -2396;CANADA;"KANANASKIS BOUNDARY RS, AL";71122.3;50.98;-115.12;1463 -2397;CANADA;EDMONTON INT.;71123;53.30;-113.58;723 -2398;CANADA;"CAMROSE, AL";71123.1;53.02;-112.83;732 -2399;CANADA;"CAMROSE, AL";71123.2;53.03;-112.80;675 -2400;CANADA;"CALMAR, AL";71123.3;53.28;-113.85;720 -2401;CANADA;"MEADOW LAKE, S";71125;54.13;-108.52;480 -2402;CANADA;"LOON LAKE, SA";71125.1;54.03;-109.03;594 -2403;CANADA;"LOON LAKE CDA EPF, SA";71125.2;54.05;-109.10;543 -2404;CANADA;"MEADOW LAKE 2, SA";71125.3;54.13;-108.43;494 -2405;CANADA;"KINDERSLEY, SA";71129;51.52;-109.17;694 -2406;CANADA;"LEADER, SA";71129.1;50.88;-109.55;671 -2407;CANADA;"LEADER 2, SA";71129.2;50.88;-109.53;674 -2408;CANADA;"ESTON, SA";71129.3;51.15;-108.77;680 -2409;CANADA;"ALSASK HARDENE, SA";71129.4;51.33;-109.85;658 -2410;CANADA;"ALSASK, SA";71129.5;51.38;-110.00;701 -2411;CANADA;"SIBBALD, AL";71129.6;51.47;-110.25;716 -2412;CANADA;"SCOTFIELD, AL";71129.7;51.58;-111.35;762 -2413;CANADA;"WASTINA HEMARUKA, AL";71129.8;51.70;-111.12;792 -2414;CANADA;"MACKLIN, SA";71129.9;52.33;-109.95;667 -2415;CANADA;"NIPAWIN, SASK.";71130;53.33;-104.00;372 -2416;CANADA;"MELFORT CDA, SA";71130.1;52.82;-104.60;480 -2417;CANADA;"MELFORT, SA";71130.2;52.87;-104.60;463 -2418;CANADA;"AYLSHAM, SA";71130.3;53.20;-103.80;362 -2419;CANADA;"LOST RIVER, SA";71130.4;53.28;-104.33;375 -2420;CANADA;"NASHLYN, SA";71131.1;49.20;-109.52;945 -2421;CANADA;"KLINTONEL, SA";71131.2;49.68;-108.92;1070 -2422;CANADA;"RABBIT LAKE, SA";71133.1;53.10;-107.87;704 -2423;CANADA;"GLASLYN CDA EPF, SA";71133.2;53.33;-108.27;690 -2424;CANADA;"ASSINIBOIA, SA";71135.1;49.73;-105.97;724 -2425;CANADA;"ELBOW, SA";71136.1;51.12;-106.60;588 -2426;CANADA;"YORKTON, SASK.";71138;51.27;-102.47;498 -2427;CANADA;"HUBBARD, SA";71138.1;51.10;-103.33;663 -2428;CANADA;"YORKTON, SA";71138.2;51.18;-102.52;498 -2429;CANADA;"COTE, SA";71138.3;51.52;-101.80;457 -2430;CANADA;"KAMSACK, SA";71138.4;51.57;-101.90;440 -2431;CANADA;"BRANDON, MAN.";71140;49.92;-99.95;409 -2432;CANADA;ST ALBANS;71140.1;49.70;-99.60;360 -2433;CANADA;HILLVIEW;71140.2;49.90;-100.60;427 -2434;CANADA;"MINNEDOSA, MA";71140.3;50.27;-99.83;521 -2435;CANADA;NORWAY HOUSE;71141;53.97;-97.83;223 -2436;CANADA;"NORWAY HOUSE, MA";71141.1;53.98;-97.83;217 -2437;CANADA;"NORWAY HOUSE FORESTRY, MA";71141.2;54.00;-97.80;217 -2438;CANADA;"CROSS LAKE JENPEG, MA";71141.3;54.53;-98.03;219 -2439;CANADA;ISLAND LAKE;71145;53.85;-94.65;237 -2440;CANADA;"ALMASIPPI, MA";71148.1;49.55;-98.20;274 -2441;CANADA;TREHERNE;71148.2;49.60;-98.70;373 -2442;CANADA;CHURCHILL FAL;71182;53.55;-64.10;440 -2443;CANADA;DANIELS HARB;71185;50.23;-57.58;19 -2444;CANADA;"BAIE COMEAU, Q";71187;49.13;-68.20;22 -2445;CANADA;"CAP CHAT, QU";71187.1;49.08;-66.75;37 -2446;CANADA;"LABRIEVILLE B1, QU";71187.2;49.30;-69.55;152 -2447;CANADA;"GODBOUT, QU";71187.3;49.32;-67.62;30 -2448;CANADA;"MANUAN LAKE, QU";71187.4;50.63;-70.53;495 -2449;CANADA;"MANICOUAGAN A, QU";71187.5;50.65;-68.83;406 -2450;CANADA;"GASPE, QUE.";71188;48.77;-64.48;33 -2451;CANADA;"GASPE, QU";71188.1;48.83;-64.48;30 -2452;CANADA;"CAP MADELEINE, QU";71188.2;49.23;-65.32;2 -2453;CANADA;COMFORT COVE;71193;49.27;-54.88;99 -2454;CANADA;"BOTWOOD, NF";71193.1;49.15;-55.35;15 -2455;CANADA;"MUSGRAVE HARBOUR, NF";71193.2;49.45;-53.98;3 -2456;CANADA;"FOGO, NF";71193.3;49.72;-54.28;147 -2457;CANADA;"BURGEO, NFLD.";71194;47.62;-57.62;12 -2458;CANADA;"BURGEO 2, NF";71194.1;47.62;-57.62;12 -2459;CANADA;"BONAVISTA, NFL";71196;48.67;-53.12;27 -2460;CANADA;PORT-AUX-BASQ;71197;47.57;-59.17;40 -2461;CANADA;"ST PAUL ISLAND, NS";71197.1;47.20;-60.15;32 -2462;CANADA;"CHANNEL, NF";71197.2;47.62;-59.15;15 -2463;CANADA;"MALIBU JERVIS INLET, BC";71207.1;50.17;-123.85;8 -2464;CANADA;"PEMBERTON MEADOWS, BC";71207.2;50.45;-122.93;223 -2465;CANADA;SAULT STE MAR;71260;46.48;-84.50;192 -2466;CANADA;"BRUCE MINES, ON";71260.1;46.30;-83.92;181 -2467;CANADA;"MISSISSAGI ONT HYDRO, ON";71260.2;46.43;-83.38;226 -2468;CANADA;"SEARCHMONT, ON";71260.3;46.75;-84.08;221 -2469;CANADA;HALIFAX METOC;71396;44.67;-63.58;10 -2470;CANADA;"HALIFAX INTL A, NS";71396.1;44.88;-63.52;126 -2471;CANADA;"MOUNT UNIACKE, NS";71396.2;44.90;-63.83;158 -2472;CANADA;"WINDSOR KINGS COLLEGE, NS";71396.3;44.98;-64.10;27 -2473;CANADA;"SPRINGFIELD, NS";71397.1;44.67;-64.85;167 -2474;CANADA;"ANNAPOLIS ROYAL, NS";71397.2;44.75;-65.52;8 -2475;CANADA;"TRURO, N.S.";71398;45.37;-63.27;40 -2476;CANADA;"UPPER STEWIACKE, NS";71398.1;45.22;-63.00;23 -2477;CANADA;"PICTOU, NS";71398.2;45.70;-62.68;24 -2478;CANADA;"BAY DESPOIR GEN STN, NF";71400.1;47.98;-55.80;23 -2479;CANADA;"EXPLOITS DAM, NF";71400.2;48.77;-56.60;154 -2480;CANADA;"BUCHANS A, NF";71400.3;48.85;-56.83;276 -2481;CANADA;"GRAND FALLS, NF";71400.4;48.93;-55.67;60 -2482;CANADA;"MILLERTOWN, NF";71400.5;49.00;-56.35;211 -2483;CANADA;"ECUM SECUM, NS";71403.1;44.98;-62.18;15 -2484;CANADA;"COLLEGEVILLE, NS";71403.2;45.48;-62.02;76 -2485;CANADA;"EDDY POINT, NS";71403.3;45.52;-61.25;66 -2486;CANADA;"NAPPAN CDA, NS";71410.1;45.77;-64.25;20 -2487;CANADA;"SACKVILLE, NB";71410.2;45.90;-64.38;24 -2488;CANADA;WESTERN HEAD;71411;43.98;-64.67;9 -2489;CANADA;"PORT HASTINGS, NS";71412.1;45.63;-61.40;23 -2490;CANADA;"CHETICAMP, NS";71412.2;46.63;-61.05;335 -2491;CANADA;"LAC EON, QUE";71421;51.87;-63.28;561 -2492;CANADA;"BLOOMFIELD, ON";71430.1;43.98;-77.22;91 -2493;CANADA;"OSHAWA, ON";71431.1;43.90;-78.87;113 -2494;CANADA;"PORT HOPE, ON";71431.2;43.95;-78.28;81 -2495;CANADA;PETERBOROUGH;71431.3;44.30;-78.30;194 -2496;CANADA;LINDSAY;71431.4;44.40;-78.80;267 -2497;CANADA;"LAKEFIELD, ON";71431.5;44.47;-78.23;236 -2498;CANADA;"FORT ERIE, ON";71432.1;42.88;-78.97;180 -2499;CANADA;"CANBORO, ON";71432.2;42.97;-79.58;183 -2500;CANADA;"SAVANNE, ON";71435.1;48.97;-90.20;459 -2501;CANADA;"UPSALA TCPL 62, ON";71435.2;49.03;-90.52;493 -2502;CANADA;"MARTIN TCPL 60, ON";71435.3;49.28;-91.23;471 -2503;CANADA;"ABITIBI CAMP 230, ON";71435.4;49.35;-89.37;457 -2504;CANADA;"QUORN, ON";71435.5;49.42;-90.90;445 -2505;CANADA;"BARRIE, ONT.";71436;44.38;-79.78;295 -2506;CANADA;"NEWMARKET, ON";71436.1;44.07;-79.43;282 -2507;CANADA;COLDWATER;71436.2;44.70;-79.70;183 -2508;CANADA;"EMERSON, MA";71441.1;49.07;-97.20;238 -2509;CANADA;"MORDEN CDA, MA";71441.2;49.18;-98.08;297 -2510;CANADA;"SWAN RIVER, MA";71443;52.12;-101.23;335 -2511;CANADA;"BIRTLE, MA";71444.1;50.43;-100.85;548 -2512;CANADA;"GRASS RIVER, MA";71444.2;50.52;-98.97;270 -2513;CANADA;"PIERSON, MA";71447.1;49.18;-101.27;469 -2514;CANADA;"VIRDEN, MA";71447.2;49.85;-100.93;437 -2515;CANADA;"ELKHORN, MA";71447.3;49.97;-101.23;499 -2516;CANADA;"SHALALTH, BC";71474.1;50.73;-122.22;244 -2517;CANADA;"100 MILE HOUSE, BC";71474.2;51.65;-121.30;1059 -2518;CANADA;PORT ALBERNI;71475;49.25;-124.83;2 -2519;CANADA;"CARMANAH, BC";71475.1;48.63;-124.78;40 -2520;CANADA;"PACHENA POINT, BC";71475.2;48.72;-125.10;37 -2521;CANADA;"AMPHITRITE POINT, BC";71475.3;48.92;-125.53;11 -2522;CANADA;"FRENCH CREEK, BC";71475.4;49.35;-124.37;38 -2523;CANADA;"CONTWOYTO LAKE, NW";71496.1;65.48;-110.37;451 -2524;CANADA;"ANGLIA, SA";71510.1;51.57;-108.17;567 -2525;CANADA;"HARRIS, SA";71510.2;51.73;-107.58;578 -2526;CANADA;"BIGGAR, SA";71510.3;52.07;-107.98;671 -2527;CANADA;"PORT DOVER, ON";71527.1;42.78;-80.22;186 -2528;CANADA;"DUNNVILLE PUMPING STN, ON";71527.2;42.83;-79.62;175 -2529;CANADA;"DELHI CDA, ON";71527.3;42.87;-80.55;232 -2530;CANADA;BRANTFORD;71527.4;43.10;-80.30;206 -2531;CANADA;"WINDSOR, ONT.";71538;42.27;-82.97;190 -2532;CANADA;"WINDSOR UNIVERSITY, ON";71538.1;42.30;-83.07;180 -2533;CANADA;"CHATHAM 2, ON";71538.2;42.40;-82.20;181 -2534;CANADA;"WALLACEBURG, ON";71538.3;42.58;-82.40;177 -2535;CANADA;SABLE ISLAND;71600;43.93;-60.02;4 -2536;CANADA;"SHEARWATER, N.";71601;44.63;-63.50;51 -2537;CANADA;"YARMOUTH, N.S.";71603;43.83;-66.08;43 -2538;CANADA;"CAPE SABLE, NS";71603.1;43.38;-65.62;3 -2539;CANADA;"YARMOUTH, NS";71603.2;43.83;-66.03;31 -2540;CANADA;"WESTPORT, NS";71603.3;44.25;-66.37;18 -2541;CANADA;"GRAND MANAN, NB";71607.1;44.73;-66.77;8 -2542;CANADA;"ST ANDREWS, NB";71607.2;45.08;-67.08;15 -2543;CANADA;"SAINT JOHN, NB";71609.1;45.28;-66.08;30 -2544;CANADA;"SUSSEX, NB";71609.2;45.72;-65.53;21 -2545;CANADA;"LENNOXVILLE CDA, QU";71610.1;45.37;-71.83;159 -2546;CANADA;"SHERBROOKE A, QU";71610.2;45.43;-71.68;238 -2547;CANADA;"LAKE MEGANTIC, QU";71610.3;45.60;-70.88;401 -2548;CANADA;"RICHMOND, QU";71610.4;45.63;-72.13;123 -2549;CANADA;"KINGSTON, ONT.";71620;44.22;-76.60;93 -2550;CANADA;"BELLEVILLE, ON";71621.1;44.15;-77.40;76 -2551;CANADA;"PORT STANLEY, ON";71623.1;42.67;-81.22;183 -2552;CANADA;"SARNIA A, ON";71623.2;43.00;-82.30;181 -2553;CANADA;LONDON A;71623.3;43.00;-81.20;278 -2554;CANADA;"WOODSTOCK, ON";71623.4;43.13;-80.77;282 -2555;CANADA;"FOREST, ON";71623.5;43.17;-82.03;191 -2556;CANADA;STRATFORD MOE;71623.6;43.40;-81.00;354 -2557;CANADA;TORONTO PEARS;71624;43.67;-79.63;173 -2558;CANADA;HAMILTON;71624.1;43.30;-79.90;92 -2559;CANADA;GUELPH OAC;71624.2;43.50;-80.20;334 -2560;CANADA;"TORONTO, ON";71624.3;43.67;-79.40;112 -2561;CANADA;BRAMPTON;71624.4;43.70;-79.80;221 -2562;CANADA;ALTON;71624.5;43.90;-80.10;401 -2563;CANADA;BANCROFT;71625.1;45.10;-77.90;327 -2564;CANADA;CLONTARF;71625.2;45.40;-77.20;245 -2565;CANADA;"MADAWASKA, ON";71625.3;45.50;-77.98;316 -2566;CANADA;CHENAUX;71625.4;45.58;-76.68;84 -2567;CANADA;PEMBROKE EDDY MATCH CANADA;71625.5;45.80;-77.20;125 -2568;CANADA;"PETAWAWA A, ON";71625.6;45.95;-77.32;130 -2569;CANADA;"CHALK RIVER AEC, ON";71625.7;46.05;-77.37;122 -2570;CANADA;"STONECLIFFE, ON";71625.8;46.15;-78.10;149 -2571;CANADA;MONTREAL/DORV;71627;45.47;-73.75;36 -2572;CANADA;PHILIPSBURG;71627.1;45.03;-73.07;53 -2573;CANADA;"HUNTINGDON, QU";71627.2;45.05;-74.17;49 -2574;CANADA;"MONTREAL MCGILL, QU";71627.3;45.50;-73.58;57 -2575;CANADA;"SOREL, QU";71627.4;46.03;-73.12;15 -2576;CANADA;"STE AGATHE DES MONTS, QU";71627.5;46.05;-74.28;366 -2577;CANADA;ST COME;71627.6;46.27;-73.77;305 -2578;CANADA;"ST DONAT, QU";71627.7;46.32;-74.20;389 -2579;CANADA;BROCKVILLE;71628.1;44.60;-75.70;91 -2580;CANADA;"MORRISBURG, ON";71628.2;44.92;-75.18;82 -2581;CANADA;CORNWALL;71628.3;45.00;-74.80;64 -2582;CANADA;"ALMONTE, ON";71628.4;45.18;-76.23;125 -2583;CANADA;OTTAWA;71628.5;45.40;-75.70;79 -2584;CANADA;OTTAWA NRC;71628.6;45.45;-75.62;98 -2585;CANADA;CHATS FALLS;71628.7;45.47;-76.22;73 -2586;CANADA;RENFREW SAND POINT;71628.8;45.50;-76.40;127 -2587;CANADA;"MUSKOKA, ONT.";71630;44.97;-79.30;282 -2588;CANADA;GRAVENHURST;71630.1;44.90;-79.40;248 -2589;CANADA;"HALIBURTON A, ON";71630.2;45.00;-78.58;320 -2590;CANADA;BEATRICE;71630.3;45.10;-79.40;290 -2591;CANADA;PARRY SOUND;71630.4;45.30;-80.00;194 -2592;CANADA;"HUNTSVILLE, ON";71630.5;45.32;-79.25;290 -2593;CANADA;"HUNTSVILLE WPCP, ON";71630.6;45.33;-79.22;286 -2594;CANADA;MOUNT FOREST;71631;43.98;-80.75;415 -2595;CANADA;GODERICH TOWNSHIP;71631.1;43.70;-81.70;221 -2596;CANADA;"LUCKNOW, ON";71631.2;43.95;-81.50;290 -2597;CANADA;"DURHAM, ON";71631.3;44.18;-80.82;384 -2598;CANADA;"PARRY SOUND, ON";71632.1;45.35;-80.05;198 -2599;CANADA;"WIARTON, ONT.";71633;44.75;-81.10;222 -2600;CANADA;"SOUTHAMPTON, ON";71633.1;44.50;-81.37;186 -2601;CANADA;OWEN SOUND MOE;71633.2;44.60;-80.90;179 -2602;CANADA;"TOBERMORY, ON";71633.3;45.25;-81.67;183 -2603;CANADA;"FREDERICTON, N";71700;45.87;-66.53;20 -2604;CANADA;"GAGETOWN 2, NB";71700.1;45.78;-66.15;53 -2605;CANADA;"MINTO, NB";71700.2;46.03;-66.03;23 -2606;CANADA;"WOODSTOCK, NB";71700.3;46.15;-67.58;55 -2607;CANADA;"HARDWOOD RIDGE, NB";71700.4;46.17;-65.92;-999 -2608;CANADA;"CHIPMAN, NB";71700.5;46.18;-65.87;11 -2609;CANADA;"WILLIAMSBURG, NB";71700.6;46.33;-66.72;322 -2610;CANADA;"MONCTON, N.B.";71705;46.12;-64.68;71 -2611;CANADA;"KOUCHIBOUGUAC, NB";71705.1;46.77;-65.00;35 -2612;CANADA;CHATHAM;71705.2;47.00;-65.50;34 -2613;CANADA;CHARLOTTETOWN;71706;46.28;-63.13;54 -2614;CANADA;"ALLISTON, PE";71706.1;46.05;-62.60;53 -2615;CANADA;"GEORGETOWN, PE";71706.2;46.18;-62.58;12 -2616;CANADA;"SYDNEY, N.S.";71707;46.17;-60.05;62 -2617;CANADA;"LOUISBOURG, NS";71707.1;45.90;-60.00;46 -2618;CANADA;"BADDECK, NS";71707.2;46.10;-60.75;8 -2619;CANADA;"NORTHEAST MARGAREE, NS";71707.3;46.33;-60.97;84 -2620;CANADA;INGONISH BEACH;71707.4;46.65;-60.40;5 -2621;CANADA;"GRINDSTONE ISLAND, QU";71709.1;47.38;-61.87;60 -2622;CANADA;"CHARLO, N.B.";71711;47.98;-66.33;38 -2623;CANADA;"GRAND FALLS, NB";71711.1;47.05;-67.73;152 -2624;CANADA;"LITTLE RIVER MINE, NB";71711.2;47.28;-66.07;341 -2625;CANADA;"NEPISIGUIT FALLS, NB";71711.3;47.40;-65.78;106 -2626;CANADA;"BATHURST, NB";71711.4;47.62;-65.65;12 -2627;CANADA;"KEDGWICK, NB";71711.5;47.65;-67.35;274 -2628;CANADA;"MATAPEDIA, QU";71711.6;47.97;-66.93;16 -2629;CANADA;"BONAVENTURE, QU";71711.7;48.05;-65.48;20 -2630;CANADA;"DALHOUSIE, NB";71711.8;48.07;-66.37;12 -2631;CANADA;"NOUVELLE, QU";71711.9;48.10;-66.30;7 -2632;CANADA;"CAPLAN, QU";71711.10;48.10;-65.68;23 -2633;CANADA;"ST THEOPHILE, QU";71714.1;45.93;-70.48;395 -2634;CANADA;"CRANBOURNE, QU";71714.2;46.38;-70.70;-999 -2635;CANADA;SCOTT;71714.3;46.47;-71.07;145 -2636;CANADA;"SHAWINIGAN, QU";71714.4;46.57;-72.75;122 -2637;CANADA;"ARMAGH, QU";71714.5;46.75;-70.53;358 -2638;CANADA;"QUEBEC A, QU";71714.6;46.80;-71.38;70 -2639;CANADA;"QUEBEC, QU";71714.7;46.80;-71.22;90 -2640;CANADA;"LA TUQUE, QU";71714.8;47.40;-72.78;152 -2641;CANADA;RIVIERE DU LO;71715;47.80;-69.55;148 -2642;CANADA;ST PAMPHILE;71715.1;46.97;-69.78;395 -2643;CANADA;"LA POCATIERE CDA, QU";71715.2;47.35;-70.03;30 -2644;CANADA;"EDMUNDSTON, NB";71715.3;47.37;-68.33;174 -2645;CANADA;RIVIERE BLEUE;71715.4;47.43;-69.03;197 -2646;CANADA;"STE ROSE DU DEGELIS, QU";71715.5;47.57;-68.63;151 -2647;CANADA;"BARRAGE LAC MORIN, QU";71715.6;47.65;-69.52;198 -2648;CANADA;TROIS PISTOLES;71715.7;48.13;-69.17;49 -2649;CANADA;"TADOUSSAC, QU";71715.8;48.15;-69.70;70 -2650;CANADA;"PETIT SAGUENAY, QU";71715.9;48.18;-70.05;122 -2651;CANADA;GRANDES BERGERONNES;71715.10;48.25;-69.52;61 -2652;CANADA;"MONT JOLI, QUE";71718;48.60;-68.22;52 -2653;CANADA;TRINITE DES MONTS;71718.1;48.13;-68.47;241 -2654;CANADA;"CAUSAPSCAL, QU";71718.2;48.37;-67.23;168 -2655;CANADA;"POINTE AU PERE, QU";71718.3;48.50;-68.48;8 -2656;CANADA;"TRACADIE, NB";71719.1;47.52;-64.92;15 -2657;CANADA;"PORT DANIEL, QU";71719.2;48.15;-64.98;69 -2658;CANADA;"MANIWAKI, QUE.";71722;46.38;-75.97;173 -2659;CANADA;"WRIGHT, QU";71722.1;46.07;-76.05;142 -2660;CANADA;"NOMININGUE, QU";71722.2;46.38;-75.05;305 -2661;CANADA;"LE DOMAINE, QU";71722.3;47.03;-76.53;366 -2662;CANADA;"BARRAGE CABONGA, QU";71722.4;47.32;-76.47;366 -2663;CANADA;"VAL DOR, QUE.";71725;48.07;-77.78;337 -2664;CANADA;"RAPIDE-SEPT, QU";71725.1;47.77;-78.30;311 -2665;CANADA;"GRAND LAC VICTORIA, QU";71725.2;47.83;-77.37;329 -2666;CANADA;"DOUCET, QU";71725.3;48.22;-76.62;377 -2667;CANADA;"SENNETERRE, QU";71725.4;48.40;-77.25;316 -2668;CANADA;"AMOS, QU";71725.5;48.57;-78.13;310 -2669;CANADA;"LA MORANDIERE, QU";71725.6;48.62;-77.62;297 -2670;CANADA;"PARENT, QUE.";71726;47.92;-74.62;441 -2671;CANADA;"BARRAGE MITCHINAMECUS, QU";71726.1;47.22;-75.17;390 -2672;CANADA;"BARRAGE A LAC KEMPT, QU";71726.2;47.55;-74.18;421 -2673;CANADA;"MANOUAN SANMAUR, QU";71726.3;47.90;-73.80;357 -2674;CANADA;"CLOVA, QU";71726.4;48.12;-75.37;423 -2675;CANADA;"OSKELANEO, QU";71726.5;48.12;-75.20;415 -2676;CANADA;"BARRAGE GOUIN, QU";71726.6;48.35;-74.10;404 -2677;CANADA;"BAGOTVILLE, QU";71727;48.33;-71.00;159 -2678;CANADA;"MONT APICA, QU";71727.1;47.97;-71.42;549 -2679;CANADA;"CHICOUTIMI, QU";71727.2;48.42;-71.08;15 -2680;CANADA;"ROBERVAL NORD, QU";71728.1;48.53;-72.23;102 -2681;CANADA;PERIBONCA;71728.2;48.77;-72.07;107 -2682;CANADA;"ALBANEL, QU";71728.3;48.88;-72.45;152 -2683;CANADA;"HEMON, QU";71728.4;49.10;-72.60;183 -2684;CANADA;"PASSE DANGEREUSE DAM, QU";71728.5;49.88;-71.27;457 -2685;CANADA;"CHUTE DES PASSES, QU";71728.6;49.90;-71.25;399 -2686;CANADA;"BONNARD, QU";71728.7;50.73;-71.05;506 -2687;CANADA;"SUDBURY, ONT.";71730;46.62;-80.80;348 -2688;CANADA;"TURBINE, ON";71730.1;46.38;-81.57;206 -2689;CANADA;"SUDBURY, ON";71730.2;46.48;-80.98;259 -2690;CANADA;"BISCOTASING, ON";71730.3;47.30;-82.10;407 -2691;CANADA;"RUEL, ON";71730.4;47.30;-81.45;410 -2692;CANADA;"NORTH BAY, ONT";71731;46.35;-79.43;371 -2693;CANADA;"LA CAVE, ON";71731.1;46.37;-78.73;172 -2694;CANADA;"GORE BAY, ONT.";71733;45.88;-82.57;193 -2695;CANADA;"GORE BAY, ON";71733.1;45.92;-82.47;191 -2696;CANADA;"LITTLE CURRENT, ON";71733.2;45.93;-81.90;187 -2697;CANADA;"COCKBURN ISLAND, ON";71733.3;45.95;-83.30;186 -2698;CANADA;"BLIND RIVER, ON";71733.4;46.20;-83.00;183 -2699;CANADA;"ELLIOT LAKE, ON";71733.5;46.38;-82.65;312 -2700;CANADA;BELLETERRE;71735.1;47.38;-78.70;322 -2701;CANADA;"HAILEYBURY, ON";71735.2;47.45;-79.63;189 -2702;CANADA;"BARRAGE DES QUINZE, QU";71735.3;47.55;-79.23;265 -2703;CANADA;"INDIAN CHUTE, ON";71735.4;47.85;-80.45;293 -2704;CANADA;"ABITIBI POST, QU";71735.5;48.72;-79.37;259 -2705;CANADA;"LA SARRE, QU";71735.6;48.78;-79.22;244 -2706;CANADA;"WAWA, ONT.";71738;47.97;-84.78;287 -2707;CANADA;"CHAPLEAU A, ON";71738.1;47.82;-83.35;447 -2708;CANADA;"CHAPLEAU 2, ON";71738.2;47.83;-83.43;432 -2709;CANADA;"HIGH FALLS, ON";71738.3;47.92;-84.72;221 -2710;CANADA;"FRANZ, ON";71738.4;48.47;-84.42;373 -2711;CANADA;WHITE RIVER;71738.5;48.60;-85.30;379 -2712;CANADA;"TIMMINS, ONT.";71739;48.57;-81.37;295 -2713;CANADA;"FOLEYET, ON";71739.1;48.25;-82.43;329 -2714;CANADA;"WAWAITIN, ON";71739.2;48.35;-81.40;271 -2715;CANADA;"IROQUOIS FALLS, ON";71739.3;48.75;-80.67;259 -2716;CANADA;"COCHRANE, ON";71739.4;49.07;-81.03;275 -2717;CANADA;"FORT FRANCES, ON";71747.1;48.62;-93.42;343 -2718;CANADA;"ATIKOKAN CLI, ON";71747.2;48.73;-91.63;391 -2719;CANADA;"ATIKOKAN, ON";71747.3;48.75;-91.62;395 -2720;CANADA;"MINE CENTRE, ON";71747.4;48.77;-92.62;343 -2721;CANADA;"IGNACE, ON";71747.5;49.42;-91.65;447 -2722;CANADA;THUNDER BAY;71749;48.37;-89.32;199 -2723;CANADA;"KAKABEKA FALLS, ON";71749.1;48.40;-89.62;278 -2724;CANADA;PORT ARTHUR;71749.2;48.40;-89.20;247 -2725;CANADA;"DORION TCPL 70, ON";71749.3;48.82;-88.52;193 -2726;CANADA;"CAMERON FALLS, ON";71749.4;49.15;-88.35;229 -2727;CANADA;"VICTORIA MARINE, BC";71799.1;48.37;-123.75;32 -2728;CANADA;"VICTORIA GONZALES HTS, BC";71799.2;48.42;-123.32;69 -2729;CANADA;"SATURNA ISLAND LIGHT, BC";71799.3;48.78;-123.05;25 -2730;CANADA;"COWICHAN LAKE FORESTRY, BC";71799.4;48.83;-124.13;177 -2731;CANADA;"CAPE RACE, NFL";71800;46.65;-53.07;28 -2732;CANADA;"ST SHOTTS, NF";71800.1;46.63;-53.58;46 -2733;CANADA;"ST.JOHNS, NFL";71801;47.62;-52.73;140 -2734;CANADA;ST JOHNS WEST;71801.1;47.52;-52.78;114 -2735;CANADA;"ST.LAWRENCE, N";71802;46.92;-55.38;49 -2736;CANADA;"BURIN, NF";71802.1;47.00;-55.17;15 -2737;CANADA;"GRAND BANK, NF";71802.2;47.10;-55.77;2 -2738;CANADA;"ST ALBANS, NF";71802.3;47.87;-55.85;13 -2739;CANADA;GANDER INT.AI;71803;48.95;-54.57;151 -2740;CANADA;"SPRINGDALE, NF";71806.1;49.50;-56.08;23 -2741;CANADA;"ARGENTIA, NFL";71807;47.30;-54.00;16 -2742;CANADA;"COLINET, NF";71807.1;47.22;-53.55;27 -2743;CANADA;"COME BY CHANCE, NF";71807.2;47.80;-54.00;34 -2744;CANADA;BLANC SABLON;71808;51.45;-57.18;36 -2745;CANADA;"PLUM POINT, NF";71808.1;51.07;-56.88;6 -2746;CANADA;"RIVIERE ST AUGUSTIN, QU";71808.2;51.22;-58.63;8 -2747;CANADA;"DEER LAKE, NF";71809;49.22;-57.40;22 -2748;CANADA;"CORNER BROOK, NF";71809.1;48.95;-57.95;5 -2749;CANADA;PORT MENIER;71810;49.83;-64.30;53 -2750;CANADA;"ANTICOSTI SW POINT, QU";71810.1;49.40;-63.55;7 -2751;CANADA;"HAVRE ST PIERRE, QU";71810.2;50.25;-63.58;6 -2752;CANADA;"RIVIERE AU TONNERRE, QU";71810.3;50.28;-64.78;15 -2753;CANADA;"SEPT-ILES, QU";71811;50.22;-66.27;55 -2754;CANADA;"STE ANNE DES MONTS, QU";71811.1;49.13;-66.47;15 -2755;CANADA;"CLARKE CITY, QU";71811.2;50.18;-66.63;53 -2756;CANADA;"MATAMEK, QU";71811.3;50.28;-65.97;5 -2757;CANADA;"NATASHQUAN, QU";71813;50.18;-61.82;11 -2758;CANADA;"BAIE JOHAN BEETZ, QU";71813.1;50.28;-62.80;8 -2759;CANADA;"GETHSEMANIE, QU";71814.1;50.22;-60.67;8 -2760;CANADA;"HARRINGTON HARBOUR, QU";71814.2;50.53;-59.50;8 -2761;CANADA;"TETE A LA BALEINE, QU";71814.3;50.70;-59.32;9 -2762;CANADA;"LA TABATIERE, QU";71814.4;50.83;-58.97;8 -2763;CANADA;STEPHENVILLE;71815;48.53;-58.55;26 -2764;CANADA;"ST GEORGES, NF";71815.1;48.42;-58.50;-999 -2765;CANADA;"GOOSE, NFLD.";71816;53.32;-60.42;49 -2766;CANADA;"NORTH WEST RIVER, NF";71816.1;53.53;-60.15;61 -2767;CANADA;"BELLE ISLE, NF";71817.1;51.88;-55.38;130 -2768;CANADA;"BATTLE HARBOUR LOR, NF";71817.2;52.25;-55.60;9 -2769;CANADA;"BATTLE HARBOUR, NF";71817.3;52.28;-55.58;15 -2770;CANADA;"CARTWRIGHT, NF";71818;53.70;-57.03;14 -2771;CANADA;"CAPE HARRISON, NF";71818.1;54.77;-58.45;10 -2772;CANADA;"ST.ANTHONY, NF";71819;51.37;-55.63;111 -2773;CANADA;"RODDICKTON, NF";71819.1;50.87;-56.12;12 -2774;CANADA;"MATAGAMI, QUE";71821;49.77;-77.82;281 -2775;CANADA;"LEBEL SUR QUEVILLON, QU";71821.1;49.05;-76.97;304 -2776;CANADA;"JOUTEL, QU";71821.2;49.47;-78.30;290 -2777;CANADA;"CHAPAIS 2, QU";71822.1;49.78;-74.85;396 -2778;CANADA;"CHIBOUGAMAU, QU";71822.2;49.92;-74.37;378 -2779;CANADA;"MISTASSINI POST, QU";71822.3;50.42;-73.88;380 -2780;CANADA;"WABUSH LAKE, N";71825;52.93;-66.87;551 -2781;CANADA;"POSTE MONTAGNAIS, QU";71825.1;51.88;-65.73;610 -2782;CANADA;"GAGNON A, QU";71825.2;51.95;-68.13;575 -2783;CANADA;NITCHEQUON;71826;53.33;-70.90;-999 -2784;CANADA;LA GRANDE RIV;71827;53.63;-77.70;195 -2785;CANADA;"EASTMAIN, QU";71827.1;52.25;-78.52;6 -2786;CANADA;"FORT GEORGE, QU";71827.2;53.83;-79.00;7 -2787;CANADA;SCHEFFERVILLE;71828;54.80;-66.80;518 -2788;CANADA;"KAPUSKASING, O";71831;49.42;-82.47;227 -2789;CANADA;"KAPUSKASING CDA, ON";71831.1;49.40;-82.43;218 -2790;CANADA;"MATTICE TCPL, ON";71831.2;49.60;-83.17;233 -2791;CANADA;"SMOKY FALLS, ON";71831.3;50.07;-82.17;183 -2792;CANADA;"HORNEPAYNE, ON";71832.1;49.23;-84.80;329 -2793;CANADA;"PAGWA A, ON";71832.2;50.03;-85.27;189 -2794;CANADA;"PAGWA, ON";71832.3;50.05;-85.30;189 -2795;CANADA;"GERALDTON, ONT";71834;49.78;-86.93;349 -2796;CANADA;"MARATHON, ON";71834.1;48.72;-86.40;189 -2797;CANADA;"TERRACE BAY, ON";71834.2;48.80;-87.10;289 -2798;CANADA;"SCHREIBER, ON";71834.3;48.82;-87.27;302 -2799;CANADA;"CARAMAT, ON";71834.4;49.27;-85.83;338 -2800;CANADA;"BEARDMORE, ON";71834.5;49.62;-87.95;305 -2801;CANADA;"LONGLAC, ON";71834.6;49.75;-86.50;317 -2802;CANADA;"NAKINA A, ON";71834.7;50.18;-86.70;325 -2803;CANADA;"MOOSONEE, ONT.";71836;51.27;-80.65;10 -2804;CANADA;"FORT ALBANY, ON";71836.1;52.22;-81.67;15 -2805;CANADA;"ARMSTRONG, ONT";71841;50.30;-89.03;351 -2806;CANADA;"WABOOSE DAM, ON";71841.1;50.78;-87.98;329 -2807;CANADA;SIOUX LOOKOUT;71842;50.12;-91.90;390 -2808;CANADA;"DRYDEN, ON";71842.1;49.78;-92.83;372 -2809;CANADA;"SIOUX LOOKOUT, ON";71842.2;50.13;-91.87;365 -2810;CANADA;BIG TROUT LAK;71844;53.80;-89.88;224 -2811;CANADA;"PICKLE LAKE, O";71845;51.45;-90.20;386 -2812;CANADA;"FORT HOPE, ON";71845.1;51.55;-87.97;-999 -2813;CANADA;"LANSDOWNE HOUSE, ON";71845.2;52.23;-87.88;256 -2814;CANADA;"KENORA, ONT.";71850;49.78;-94.37;410 -2815;CANADA;"SLEEMAN, ON";71850.1;48.72;-94.42;335 -2816;CANADA;"SPRAGUE, MA";71850.2;49.03;-95.63;327 -2817;CANADA;"RAWSON LAKE, ON";71850.3;49.65;-93.72;358 -2818;CANADA;"KENORA, ON";71850.4;49.80;-94.53;336 -2819;CANADA;WINNIPEG INT.;71852;49.90;-97.23;239 -2820;CANADA;"STEINBACH, MA";71852.1;49.53;-96.77;254 -2821;CANADA;PORTAGE LA PRAIRIE;71852.2;50.00;-98.30;261 -2822;CANADA;OAKBANK;71852.3;50.00;-96.80;244 -2823;CANADA;"STONY MOUNTAIN, MA";71852.4;50.07;-97.23;245 -2824;CANADA;"ST ANDREWS, MA";71852.5;50.08;-96.98;230 -2825;CANADA;"STONEWALL, MA";71852.6;50.12;-97.33;251 -2826;CANADA;"RED LAKE, ONT.";71854;51.07;-93.80;383 -2827;CANADA;"EAR FALLS, ON";71854.1;50.63;-93.22;361 -2828;CANADA;"DAUPHIN, MAN.";71855;51.10;-100.05;305 -2829;CANADA;"RUSSELL, MA";71855.1;50.77;-101.28;567 -2830;CANADA;"OCHRE RIVER, MA";71855.2;51.07;-99.78;280 -2831;CANADA;"MOOSEHORN, MA";71855.3;51.30;-98.62;250 -2832;CANADA;"STEEP ROCK, MA";71855.4;51.45;-98.80;250 -2833;CANADA;"PINAWA, MA";71856.1;50.22;-95.92;259 -2834;CANADA;"GREAT FALLS, MA";71856.2;50.47;-96.00;249 -2835;CANADA;"BISSETT, MA";71856.3;51.03;-95.68;268 -2836;CANADA;"HODGSON 2, MA";71856.4;51.18;-97.45;232 -2837;CANADA;"PINE DOCK, MA";71856.5;51.63;-96.80;222 -2838;CANADA;GRAND RAPIDS;71858;53.18;-99.27;223 -2839;CANADA;CHANNEL ISLAND;71858.1;52.30;-97.40;216 -2840;CANADA;"BERENS RIVER, MA";71858.2;52.35;-97.03;217 -2841;CANADA;"GRAND RAPIDS HYDRO, MA";71858.3;53.15;-99.28;223 -2842;CANADA;"BROADVIEW, SAS";71861;50.38;-102.68;602 -2843;CANADA;"CANNINGTON MANOR, SA";71861.1;49.72;-102.03;629 -2844;CANADA;"KIPLING, SA";71861.2;50.20;-102.73;671 -2845;CANADA;"GRENFELL, SA";71861.3;50.42;-102.93;599 -2846;CANADA;"ESTEVAN, SASK.";71862;49.22;-102.97;581 -2847;CANADA;"CARLYLE, SA";71862.1;49.63;-102.27;631 -2848;CANADA;"WEYBURN, SA";71862.2;49.65;-103.83;570 -2849;CANADA;"REGINA, SASK.";71863;50.43;-104.67;577 -2850;CANADA;"YELLOW GRASS, SA";71863.1;49.82;-104.18;580 -2851;CANADA;"QUAPPELLE, SA";71863.2;50.52;-103.88;650 -2852;CANADA;"INDIAN HEAD CDA, SA";71863.3;50.53;-103.67;583 -2853;CANADA;"STRASBOURG, SA";71863.4;51.07;-104.95;544 -2854;CANADA;"MOOSE JAW, SAS";71864;50.33;-105.55;577 -2855;CANADA;ORMISTON;71864.1;49.72;-105.37;686 -2856;CANADA;"GRAVELBOURG, SA";71864.2;49.88;-106.55;700 -2857;CANADA;"CARON, SA";71864.3;50.45;-105.87;579 -2858;CANADA;"DAVIDSON, SA";71864.4;51.27;-105.98;619 -2859;CANADA;"IMPERIAL, SA";71865.1;51.37;-105.53;556 -2860;CANADA;"PASWEGIN, SA";71865.2;51.98;-103.92;533 -2861;CANADA;"LINTLAW, SA";71865.3;52.08;-103.27;611 -2862;CANADA;"MUENSTER, SA";71865.4;52.18;-105.00;579 -2863;CANADA;"HUMBOLDT, SA";71865.5;52.20;-105.10;567 -2864;CANADA;"SASKATOON, SAS";71866;52.17;-106.68;504 -2865;CANADA;"THE PAS, MAN.";71867;53.97;-101.10;271 -2866;CANADA;"OONIKUP, MA";71867.1;53.50;-101.33;-999 -2867;CANADA;"CUMBERLAND HOUSE, SA";71867.2;53.97;-102.30;271 -2868;CANADA;"FLIN FLON, MA";71867.3;54.77;-101.85;335 -2869;CANADA;"HUDSON BAY, SA";71868;52.82;-102.32;358 -2870;CANADA;"PORCUPINE PLAIN, SA";71868.1;52.65;-103.15;465 -2871;CANADA;"HUDSON BAY, SA";71868.2;52.87;-102.40;372 -2872;CANADA;PRINCE ALBERT;71869;53.22;-105.68;428 -2873;CANADA;"MACDOWALL, SA";71869.1;53.02;-106.02;477 -2874;CANADA;SWIFT CURRENT;71870;50.28;-107.68;818 -2875;CANADA;"ANEROID, SA";71870.1;49.72;-107.30;754 -2876;CANADA;"CHAPLIN, SA";71870.2;50.47;-106.65;671 -2877;CANADA;"PENNANT, SA";71870.3;50.53;-108.23;730 -2878;CANADA;"BEECHY, SA";71870.4;50.77;-107.32;660 -2879;CANADA;LLOYDMINISTER;71871;53.32;-110.07;669 -2880;CANADA;"CORONATION A, AL";71871.1;52.07;-111.45;791 -2881;CANADA;"HUGHENDEN, AL";71871.2;52.52;-110.97;694 -2882;CANADA;"WAINWRIGHT HEATH, AL";71871.3;52.83;-110.83;687 -2883;CANADA;"WASECA, SA";71871.4;53.13;-109.40;650 -2884;CANADA;"RANFURLY, AL";71871.5;53.45;-111.65;686 -2885;CANADA;"TULLIBY LAKE, AL";71871.6;53.67;-110.13;575 -2886;CANADA;MEDICINE HAT;71872;50.02;-110.72;717 -2887;CANADA;"MANYBERRIES CDA, AL";71872.1;49.12;-110.47;934 -2888;CANADA;"FOREMOST, AL";71872.2;49.48;-111.45;884 -2889;CANADA;"JENNER, AL";71872.3;50.73;-111.18;762 -2890;CANADA;"LETHBRIDGE, AL";71874;49.63;-112.80;929 -2891;CANADA;"BEAVER MINES, AL";71874.1;49.47;-114.17;1286 -2892;CANADA;"PINCHER CREEK A, AL";71874.2;49.52;-114.00;1189 -2893;CANADA;"LETHBRIDGE, AL";71874.3;49.70;-112.85;903 -2894;CANADA;"FORT MACLEOD, AL";71874.4;49.72;-113.40;950 -2895;CANADA;"TABER, AL";71874.5;49.78;-112.12;808 -2896;CANADA;"LUNDBRECK, AL";71874.6;49.92;-114.13;1194 -2897;CANADA;"VAUXHALL CDA, AL";71874.7;50.05;-112.13;779 -2898;CANADA;"VAUXHALL, AL";71874.8;50.07;-112.10;779 -2899;CANADA;NORTH BATTLEF;71876;52.77;-108.25;548 -2900;CANADA;"SCOTT CDA, SA";71876.1;52.37;-108.83;660 -2901;CANADA;CALGARY INTL;71877;51.12;-114.02;1084 -2902;CANADA;"HIGH RIVER, AL";71877.1;50.48;-114.17;1219 -2903;CANADA;"GLEICHEN, AL";71877.2;50.88;-113.05;905 -2904;CANADA;"DRUMHELLER, AL";71877.3;51.47;-112.72;687 -2905;CANADA;"THREE HILLS, AL";71878.1;51.65;-113.30;841 -2906;CANADA;"CRAIGMYLE, AL";71878.2;51.77;-112.28;846 -2907;CANADA;"TROCHU EQUITY, AL";71878.3;51.78;-113.20;854 -2908;CANADA;"KNEEHILL, AL";71878.4;51.92;-113.78;853 -2909;CANADA;"ECKVILLE SOUTH, AL";71878.5;52.28;-114.38;960 -2910;CANADA;"HALKIRK, AL";71878.6;52.28;-112.17;823 -2911;CANADA;"STETTLER, AL";71878.7;52.30;-112.70;823 -2912;CANADA;"ALLIANCE, AL";71878.8;52.43;-111.78;716 -2913;CANADA;"LACOMBE CDA, AL";71878.9;52.47;-113.75;847 -2914;CANADA;"FORESTBURG PLANT SITE, AL";71878.10;52.47;-112.13;663 -2915;CANADA;EDMONTON MUNI;71879;53.57;-113.52;671 -2916;CANADA;"CRANBROOK, B.";71880;49.62;-115.78;939 -2917;CANADA;"TOBACCO PLAINS, BC";71880.1;49.02;-115.08;701 -2918;CANADA;"CASTLEGAR A, BC";71880.2;49.30;-117.63;494 -2919;CANADA;"FERNIE, BC";71880.3;49.50;-115.07;1001 -2920;CANADA;"KASLO, BC";71880.4;49.92;-116.92;591 -2921;CANADA;"DUNCAN LAKE DAM, BC";71880.5;50.23;-116.97;549 -2922;CANADA;"EDSON, ALTA.";71881;53.58;-116.47;927 -2923;CANADA;"ROBB RS, AL";71881.1;53.23;-116.97;1130 -2924;CANADA;"EDSON, AL";71881.2;53.58;-116.42;923 -2925;CANADA;"COLD CREEK RS, AL";71881.3;53.62;-115.58;792 -2926;CANADA;"REVELSTOKE, B";71882;50.97;-118.18;443 -2927;CANADA;"NAKUSP, BC";71882.1;50.23;-117.80;457 -2928;CANADA;"SIDMOUTH, BC";71882.2;50.78;-118.02;430 -2929;CANADA;"REVELSTOKE, BC";71882.3;51.00;-118.20;456 -2930;CANADA;"SEYMOUR ARM, BC";71882.4;51.25;-118.95;351 -2931;CANADA;"GLACIER NP ROGERS PASS, BC";71882.5;51.28;-117.52;1323 -2932;CANADA;"GOLDEN AIRPORT, BC";71882.6;51.30;-116.98;785 -2933;CANADA;"DONALD, BC";71882.7;51.48;-117.15;783 -2934;CANADA;"BLUE RIVER, B";71883;52.13;-119.30;683 -2935;CANADA;"VAVENBY, BC";71883.1;51.58;-119.78;445 -2936;CANADA;"VALEMOUNT, BC";71883.2;52.82;-119.25;797 -2937;CANADA;"MCBRIDE 4SE, BC";71883.3;53.27;-120.15;722 -2938;CANADA;"KAMLOOPS, B.C.";71887;50.70;-120.45;346 -2939;CANADA;"HIGHLAND VALLEY LORNEX, BC";71887.1;50.47;-121.02;1268 -2940;CANADA;"BARRIERE, BC";71887.2;51.18;-120.12;415 -2941;CANADA;"CHINOOK COVE, BC";71887.3;51.25;-120.18;404 -2942;CANADA;"JASPER, ALTA.";71888;52.88;-118.07;1061 -2943;CANADA;"SUNWAPTA, AL";71888.1;52.45;-117.45;1554 -2944;CANADA;"JASPER, AL";71888.2;52.88;-118.15;1057 -2945;CANADA;"RED PASS JUNCTION, BC";71888.3;53.00;-119.00;1059 -2946;CANADA;"ENTRANCE, AL";71888.4;53.38;-117.68;991 -2947;CANADA;"GRANDE CACHE RS, AL";71888.5;53.90;-119.10;1250 -2948;CANADA;"GRAND FORKS RAYFIELD, BC";71889.1;49.02;-118.47;523 -2949;CANADA;"ROSSLAND CITY YARD, BC";71889.2;49.08;-117.80;1039 -2950;CANADA;"KEREMEOS, BC";71889.3;49.20;-119.78;430 -2951;CANADA;"HEDLEY, BC";71889.4;49.35;-120.07;517 -2952;CANADA;"PRINCETON, BC";71889.5;49.43;-120.50;632 -2953;CANADA;"SUMMERLAND CDA, BC";71889.6;49.57;-119.65;454 -2954;CANADA;"LYTTON, B.C.";71891;50.23;-121.58;229 -2955;CANADA;"LILLOOET, BC";71891.1;50.70;-121.93;290 -2956;CANADA;VANCOUVER INT;71892;49.18;-123.17;2 -2957;CANADA;"NANAIMO A, BC";71892.1;49.05;-123.87;30 -2958;CANADA;"LADNER, BC";71892.2;49.08;-123.07;9 -2959;CANADA;"NANAIMO DEPARTURE BAY, BC";71892.3;49.22;-123.95;8 -2960;CANADA;NEW WESTMINSTER BC CANADA;71892.4;49.22;-122.93;119 -2961;CANADA;"POWELL RIVER, BC";71893.1;49.87;-124.55;52 -2962;CANADA;"CORTES ISLAND, BC";71893.2;50.08;-125.03;6 -2963;CANADA;"THURSTON BAY, BC";71893.3;50.42;-125.42;2 -2964;CANADA;ESTEVAN POINT;71894;49.38;-126.55;7 -2965;CANADA;"TOFINO A, BC";71894.1;49.08;-125.77;24 -2966;CANADA;"CLAYOQUOT, BC";71894.2;49.15;-125.90;23 -2967;CANADA;PRINCE GEORGE;71896;53.88;-122.68;691 -2968;CANADA;"DOME CREEK, BC";71896.1;53.73;-120.98;648 -2969;CANADA;"FORT FRASER 13S, BC";71896.2;53.88;-124.58;701 -2970;CANADA;"ALEZA LAKE, BC";71896.3;54.12;-122.07;625 -2971;CANADA;"MCINNES IS., B";71897;52.27;-128.72;26 -2972;CANADA;"OCEAN FALLS, BC";71897.1;52.35;-127.68;5 -2973;CANADA;"BELLA COOLA, BC";71897.2;52.37;-126.68;18 -2974;CANADA;"ETHELDA BAY, BC";71897.3;53.05;-129.68;8 -2975;CANADA;PRINCE RUPERT;71898;54.30;-130.43;34 -2976;CANADA;"PORT SIMPSON, BC";71898.1;54.57;-130.43;8 -2977;CANADA;"STEWART A, BC";71898.2;55.93;-129.98;7 -2978;CANADA;"STEWART, BC";71898.3;55.95;-129.98;5 -2979;CANADA;"PREMIER, BC";71898.4;56.05;-130.02;410 -2980;CANADA;"LANGARA, B.C.";71899;54.25;-133.05;41 -2981;CANADA;"MASSET AIRPORT, BC";71899.1;54.02;-132.12;5 -2982;CANADA;"MASSET CFS, BC";71899.2;54.03;-132.07;12 -2983;CANADA;HOPEDALE;71900.1;55.45;-60.22;10 -2984;CANADA;"BORDER, QUE.";71901;55.33;-63.22;479 -2985;CANADA;"INDIAN HOUSE LAKE, QU";71901.1;56.23;-64.73;311 -2986;CANADA;"NAIN, NFLD";71902;56.55;-61.68;7 -2987;CANADA;NAIN;71902.1;56.60;-61.70;-999 -2988;CANADA;HEBRON;71902.2;58.20;-62.40;-999 -2989;CANADA;FORT CHIMO;71906;58.10;-68.40;36 -2990;CANADA;"FORT MCKENZIE, QU";71906.1;56.88;-69.05;76 -2991;CANADA;"INUKJUAK, QUE";71907;58.45;-78.12;6 -2992;CANADA;FROBISHER BAY;71909;63.80;-68.60;21 -2993;CANADA;"CAPE HOPES ADVANCE, QU";71909.1;61.08;-69.55;73 -2994;CANADA;RESOLUTION ISLAND CANADA;71909.2;61.60;-64.70;368 -2995;CANADA;"LAKE HARBOUR, NW";71909.3;62.83;-69.92;16 -2996;CANADA;"BREVOORT ISLAND, NW";71909.4;63.33;-64.13;371 -2997;CANADA;CAPE DORSET;71910;64.22;-76.53;50 -2998;CANADA;"NOTTINGHAM ISLAND, NW";71910.1;63.12;-77.93;16 -2999;CANADA;SHEPHERD BAY;71911;68.82;-93.43;42 -3000;CANADA;"PELLY BAY, NW";71911.1;68.43;-89.72;322 -3001;CANADA;"GLADMAN POINT A, NW";71911.2;68.67;-97.80;25 -3002;CANADA;"SPENCE BAY, NW";71911.3;69.53;-93.52;12 -3003;CANADA;"GILLAM, MAN.";71912;56.35;-94.70;145 -3004;CANADA;"GILLAM A, MA";71912.1;56.35;-94.70;145 -3005;CANADA;"PORT NELSON, MA";71912.2;57.00;-92.85;15 -3006;CANADA;YORK FACTORY;71912.3;57.00;-92.30;126 -3007;CANADA;"CHURCHILL, MAN";71913;58.73;-94.07;29 -3008;CANADA;CHURCHILL FACTORY;71913.1;58.80;-94.00;287 -3009;CANADA;CORAL HARBOUR;71915;64.20;-83.37;64 -3010;CANADA;"EUREKA, N.W.T.";71917;79.98;-85.93;10 -3011;CANADA;"ISACHSEN, NW";71917.1;78.78;-103.53;25 -3012;CANADA;"LA RONGE, SASK";71922;55.15;-105.27;379 -3013;CANADA;"LAC LA RONGE, SA";71922.1;55.13;-105.33;366 -3014;CANADA;"RESOLUTE, N.W.";71924;74.72;-94.98;67 -3015;CANADA;"REA POINT A, NW";71924.1;75.37;-105.72;12 -3016;CANADA;CAMBRIDGE BAY;71925;69.10;-105.12;27 -3017;CANADA;"JENNY LIND ISLAND A, NW";71925.1;68.65;-101.73;37 -3018;CANADA;"BYRON BAY A, NW";71925.2;68.75;-109.07;112 -3019;CANADA;"BAKER LAKE, N";71926;64.30;-96.08;18 -3020;CANADA;"ENNADAI LAKE, NW";71926.1;61.13;-100.90;325 -3021;CANADA;ROCKY MTN HOU;71928;52.43;-114.92;988 -3022;CANADA;"PRAIRIE CREEK RS, AL";71928.1;52.25;-115.30;1173 -3023;CANADA;"NORDEGG, AL";71928.2;52.47;-116.08;1402 -3024;CANADA;"NORDEGG RS, AL";71928.3;52.50;-116.05;1320 -3025;CANADA;"SPRINGDALE, AL";71928.4;52.80;-114.30;914 -3026;CANADA;"WHITECOURT, AL";71930;54.15;-115.78;782 -3027;CANADA;"HELDAR, AL";71930.1;54.02;-115.00;701 -3028;CANADA;"KAYBOB 3, AL";71930.2;54.12;-116.63;1003 -3029;CANADA;"WHITECOURT, AL";71930.3;54.13;-115.67;741 -3030;CANADA;"CAMPSIE, AL";71930.4;54.13;-114.68;671 -3031;CANADA;"ANDREW, AL";71931.1;54.02;-112.23;610 -3032;CANADA;"ST LINA, AL";71931.2;54.30;-111.45;632 -3033;CANADA;"MEANOOK, AL";71931.3;54.62;-113.35;684 -3034;CANADA;"ATHABASCA LANDING, AL";71931.4;54.72;-113.28;503 -3035;CANADA;"CALLING LAKE RS, AL";71931.5;55.25;-113.18;598 -3036;CANADA;FORT MCMURRAY;71932;56.65;-111.22;369 -3037;CANADA;"TAR ISLAND, AL";71932.1;56.98;-111.45;240 -3038;CANADA;FORT CHIPEWYA;71933;58.77;-111.12;232 -3039;CANADA;FORT SMITH;71934;60.00;-112.00;203 -3040;CANADA;"FORT SMITH, N.";71934.2;60.02;-111.95;205 -3041;CANADA;"HAY RIVER, N.W";71935;60.83;-115.78;166 -3042;CANADA;"HAY RIVER PARADISE GDNS, NW";71935.1;60.65;-116.00;213 -3043;CANADA;"FORT RESOLUTION, NW";71935.2;61.17;-113.67;158 -3044;CANADA;"FORT RESOLUTION A, NW";71935.3;61.18;-113.68;164 -3045;CANADA;"FORT PROVIDENCE, NW";71935.4;61.33;-117.67;159 -3046;CANADA;"YELLOWKNIFE, N";71936;62.47;-114.45;206 -3047;CANADA;"SNARE RAPIDS, NW";71936.1;63.52;-116.00;241 -3048;CANADA;LADY FRANKLIN;71937;68.50;-113.22;16 -3049;CANADA;"COPPERMINE, N.";71938;67.82;-115.13;22 -3050;CANADA;"CAPE YOUNG A, NW";71938.1;68.93;-116.92;18 -3051;CANADA;GRANDE PRAIRI;71940;55.18;-118.88;669 -3052;CANADA;"SIMONETTE, AL";71940.1;54.42;-117.75;884 -3053;CANADA;"SOUTH WAPITI RS, AL";71940.2;54.93;-119.20;762 -3054;CANADA;"DEBOLT RS, AL";71940.3;54.93;-118.07;610 -3055;CANADA;"BEAVERLODGE CDA, AL";71940.4;55.20;-119.40;745 -3056;CANADA;"CHETWYND BCFS, BC";71943.1;55.70;-121.62;660 -3057;CANADA;"POUCE COUPE, BC";71943.2;55.72;-120.13;610 -3058;CANADA;"DAWSON CREEK A, BC";71943.3;55.73;-120.18;655 -3059;CANADA;"HUDSON HOPE BCHPA DAM, BC";71943.4;56.02;-122.20;678 -3060;CANADA;"HUDSON HOPE, BC";71943.5;56.03;-121.90;480 -3061;CANADA;"BALDONNEL, BC";71943.6;56.23;-120.68;686 -3062;CANADA;"FORT ST JOHN, BC";71943.7;56.25;-120.83;674 -3063;CANADA;"CLEARDALE, AL";71943.8;56.32;-119.48;643 -3064;CANADA;"WONOWON, BC";71943.9;56.73;-121.80;914 -3065;CANADA;"BEATTON RIVER A, BC";71943.10;57.38;-121.38;840 -3066;CANADA;"MACKENZIE, B.";71944;55.30;-123.13;690 -3067;CANADA;"FORT ST JAMES, BC";71944.1;54.45;-124.25;686 -3068;CANADA;"PINE PASS, BC";71944.2;55.35;-122.60;945 -3069;CANADA;"PINE PASS MT LEMORAY, BC";71944.3;55.53;-122.48;680 -3070;CANADA;"GERMANSEN LANDING, BC";71944.4;55.78;-124.70;747 -3071;CANADA;"INGENIKA POINT, BC";71944.5;56.80;-124.90;680 -3072;CANADA;"FORT NELSON, B";71945;58.83;-122.58;382 -3073;CANADA;"WARE, BC";71945.1;57.43;-125.63;777 -3074;CANADA;"MUNCHO LAKE, BC";71945.2;58.92;-125.77;835 -3075;CANADA;"FORT LIARD A, NW";71945.3;60.23;-123.47;213 -3076;CANADA;FORT SIMPSON;71946;61.75;-121.23;169 -3077;CANADA;"WRIGLEY A, NW";71946.1;63.22;-123.43;150 -3078;CANADA;"CAPE PARRY, N.";71948;70.17;-124.70;17 -3079;CANADA;"CLINTON POINT, NW";71948.1;69.58;-120.80;101 -3080;CANADA;"NICHOLSON PENINSULA, NW";71948.2;69.93;-128.97;98 -3081;CANADA;"HOLMAN, NW";71948.3;70.73;-117.78;9 -3082;CANADA;"FARO, Y.T.";71949;62.23;-133.35;717 -3083;CANADA;"ROSS RIVER A, YT";71949.1;61.97;-132.43;705 -3084;CANADA;"CARMACKS, YT";71949.2;62.10;-136.30;525 -3085;CANADA;"DRURY CREEK, YT";71949.3;62.20;-134.38;609 -3086;CANADA;"ANVIL, YT";71949.4;62.37;-133.38;1158 -3087;CANADA;"SMITHERS, B.C.";71950;54.82;-127.18;523 -3088;CANADA;"OOTSA L SKINS L SPILLWAY, BC";71950.1;53.77;-125.97;861 -3089;CANADA;"WISTARIA, BC";71950.2;53.82;-126.22;863 -3090;CANADA;"BURNS LAKE DECKER LAKE, BC";71950.3;54.25;-125.80;707 -3091;CANADA;"BABINE LAKE PINKUT CREEK, BC";71950.4;54.45;-125.47;713 -3092;CANADA;"TELKWA, BC";71950.5;54.65;-126.83;683 -3093;CANADA;"TOPLEY LANDING, BC";71950.6;54.82;-126.17;722 -3094;CANADA;"BABINE LAKE FISHERIES, BC";71950.7;55.07;-126.53;713 -3095;CANADA;"HAZELTON TEMLAHAN, BC";71950.8;55.20;-127.73;122 -3096;CANADA;"NEW HAZELTON, BC";71950.9;55.23;-127.60;314 -3097;CANADA;"FORT BABINE, BC";71950.10;55.32;-126.62;716 -3098;CANADA;"TERRACE, B.C.";71951;54.47;-128.58;217 -3099;CANADA;"KEMANO, BC";71951.1;53.57;-127.93;70 -3100;CANADA;"KILDALA, BC";71951.2;53.83;-128.48;30 -3101;CANADA;"KITIMAT MISSION, BC";71951.3;53.98;-128.65;6 -3102;CANADA;"SALVUS CAMP, BC";71951.4;54.30;-129.37;15 -3103;CANADA;"TERRACE, BC";71951.5;54.52;-128.58;-999 -3104;CANADA;"NASS CAMP, BC";71951.6;55.28;-128.97;290 -3105;CANADA;"WATSON LAKE, Y";71953;60.12;-128.82;690 -3106;CANADA;"SMITH RIVER A, BC";71953.1;59.90;-126.43;673 -3107;CANADA;"LOWER POST, BC";71953.2;59.93;-128.50;583 -3108;CANADA;"TUCHITUA, YT";71953.3;60.93;-129.22;724 -3109;CANADA;"TUNGSTEN, NW";71953.4;61.95;-128.25;1143 -3110;CANADA;"INUVIK, N.W.T.";71957;68.30;-133.48;68 -3111;CANADA;"EAGLE PLAINS, YT";71957.1;66.42;-136.75;716 -3112;CANADA;"FORT MCPHERSON, NW";71957.2;67.43;-134.88;30 -3113;CANADA;"AKLAVIK A, NW";71957.3;68.22;-135.00;7 -3114;CANADA;"TUKTOYAKTUK, NW";71957.4;69.45;-133.00;18 -3115;CANADA;DEASE LAKE B.;71958;58.42;-130.00;816 -3116;CANADA;"TODAGIN RANCH, BC";71958.1;57.60;-130.07;899 -3117;CANADA;"TELEGRAPH CREEK, BC";71958.2;57.90;-131.33;250 -3118;CANADA;"TELEGRAPH CREEK, BC";71958.3;57.90;-131.17;183 -3119;CANADA;"CASSIAR, BC";71958.4;59.28;-129.83;1077 -3120;CANADA;"WITHEHORSE, Y";71964;60.72;-135.07;703 -3121;CANADA;"PLEASANT CAMP, BC";71964.1;59.45;-136.37;274 -3122;CANADA;"HAINES APPS NO 2, BC";71964.2;59.52;-136.47;399 -3123;CANADA;"CARCROSS, YT";71964.3;60.18;-134.70;660 -3124;CANADA;"HAINES JUNCTION, YT";71964.4;60.77;-137.58;599 -3125;CANADA;"KLUANE LAKE, YT";71964.5;61.02;-138.40;786 -3126;CANADA;"BURWASH A, YT";71964.6;61.37;-139.05;799 -3127;CANADA;"BRAEBURN, YT";71964.7;61.47;-135.78;716 -3128;CANADA;"AISHIHIK A, YT";71964.8;61.65;-137.48;966 -3129;CANADA;"MAYO A, YT";71965.1;63.62;-135.87;504 -3130;CANADA;"DAWSON, Y.T.";71966;64.05;-139.13;370 -3131;CANADA;"SNAG A, YT";71966.1;62.37;-140.40;587 -3132;CANADA;"BEAVER CREEK A, YT";71966.2;62.42;-140.87;649 -3133;CANADA;"SWEDE CREEK, YT";71966.3;64.10;-139.75;320 -3134;CANADA;"KLONDIKE, YT";71966.4;64.45;-138.22;960 -3135;CANADA;"OGILVIE RIVER, YT";71966.5;65.37;-138.30;579 -3136;CANADA;SHINGLE POINT;71968;68.95;-137.22;38 -3137;CANADA;"OLD CROW A, YT";71968.1;67.58;-139.83;250 -3138;CANADA;"KOMAKUK BEACH A, YT";71968.2;69.58;-140.18;14 -3139;COSTA RICA;PUNTARENAS;78760;9.97;-84.83;3 -3140;COSTA RICA;JUAN SANTAMAR;78762;10.00;-84.22;939 -3141;COSTA RICA;SAN JOSE/CENTRAL OFFICE;78762.1;10.00;-84.10;1141 -3142;COSTA RICA;PUERTO LIMON;78767;10.00;-83.05;3 -3143;CUBA;CABO SAN ANTO;78310;21.87;-84.95;8 -3144;CUBA;ISABEL RUBIO;78313;22.17;-84.10;28 -3145;CUBA;PASO REAL DE;78317;22.55;-83.30;44 -3146;CUBA;CASA BLANCA;78325;23.17;-82.35;50 -3147;CUBA;SANTA CLARA /UNIV.;78343.1;22.43;-79.90;90 -3148;CUBA;"CAIBARIEN, VI";78348;22.52;-79.45;6 -3149;CUBA;SANCTI SPIRIT;78349;21.93;-79.45;97 -3150;CUBA;"NUEVITAS, CAMA";78353;21.53;-77.25;4 -3151;CUBA;"CAMAGUEY, CAM";78355;21.40;-77.85;124 -3152;CUBA;"CABO CRUZ, GR";78360;19.85;-77.23;10 -3153;CUBA;SANTIAGO DE CUBA/UNIV;78364.1;20.05;-75.82;38 -3154;CUBA;"GUANTANAMO, OR";78367;19.90;-75.13;23 -3155;CUBA;GUANTANAMO/INST.TEC.;78368.1;20.13;-75.20;118 -3156;CUBA;PUNTA DE MAIS;78369;20.25;-74.15;10 -3157;DOMINICAN REPUBLIC;MONTE CRISTI;78451.1;19.85;-71.63;7 -3158;DOMINICAN REPUBLIC;PUERTO PLATA;78458.1;19.80;-70.70;6 -3159;DOMINICAN REPUBLIC;SANTIAGO;78460;19.47;-70.70;183 -3160;DOMINICAN REPUBLIC;JARABACOA;78460.1;19.12;-70.63;529 -3161;DOMINICAN REPUBLIC;LA VEGA DOMINICAN REPUBLIC;78460.2;19.20;-70.50;97 -3162;DOMINICAN REPUBLIC;SAN FRANCISCO DE MACORIS D;78460.3;19.30;-70.30;110 -3163;DOMINICAN REPUBLIC;SAN JOSE DE LAS MATAS;78460.4;19.33;-70.93;523 -3164;DOMINICAN REPUBLIC;MONCION;78460.5;19.40;-71.15;366 -3165;DOMINICAN REPUBLIC;VALVERDE MAO DOMINICAN REP;78460.6;19.60;-71.10;78 -3166;DOMINICAN REPUBLIC;SANTIAGO DE LOS CABAL;78464.1;19.43;-69.77;222 -3167;DOMINICAN REPUBLIC;CABRERA;78464.2;19.63;-69.90;15 -3168;DOMINICAN REPUBLIC;SANCHEZ DOMINICAN REPUBLIC;78466.1;19.20;-69.60;17 -3169;DOMINICAN REPUBLIC;SAMANA DOMINICAN REPUBLIC;78466.2;19.20;-69.30;7 -3170;DOMINICAN REPUBLIC;SABANA DE LA;78467;19.05;-69.38;10 -3171;DOMINICAN REPUBLIC;EL SEYBO DOMINICAN REPUBLI;78467.1;18.80;-69.00;87 -3172;DOMINICAN REPUBLIC;NEYBA DOMINICAN REPUBLIC;78470.1;18.50;-71.40;10 -3173;DOMINICAN REPUBLIC;SAN JUAN DE LA MAGUANA DOM;78470.2;18.80;-71.20;415 -3174;DOMINICAN REPUBLIC;CONSTANZA;78470.3;18.90;-70.73;1164 -3175;DOMINICAN REPUBLIC;MONTE PLATA DOMINICAN REPU;78473.1;18.80;-69.80;56 -3176;DOMINICAN REPUBLIC;COTUI;78473.2;19.05;-70.13;67 -3177;DOMINICAN REPUBLIC;LA ROMANA DOMINICAN REPUBL;78479.1;18.40;-69.00;23 -3178;DOMINICAN REPUBLIC;CABO ENGANO;78479.2;18.62;-68.33;2 -3179;DOMINICAN REPUBLIC;BARAHONA;78482;18.22;-71.10;26 -3180;DOMINICAN REPUBLIC;AZUA DOMINICAN REPUBLIC;78482.1;18.50;-70.70;76 -3181;DOMINICAN REPUBLIC;SAN CRISTOBAL DOMINICAN RE;78484.1;18.40;-70.10;44 -3182;DOMINICAN REPUBLIC;LAS AMERICAS;78485;18.43;-69.67;18 -3183;DOMINICAN REPUBLIC;SAN PEDRO DE MACORIS DOMIN;78485.1;18.50;-69.30;3 -3184;DOMINICAN REPUBLIC;SANTO DOMINGO;78486;18.43;-69.88;14 -3185;EL SALVADOR;ACAJUTLA;78650;13.57;-89.83;15 -3186;EL SALVADOR;LOS ANDES;78652;13.88;-89.65;1770 -3187;EL SALVADOR;SAN SALVADOR;78662.1;13.70;-89.20;699 -3188;EL SALVADOR;ILOPANGO;78663.1;13.68;-89.12;615 -3189;GRENADA;PEARLS AP;78958.1;12.10;-61.80;7 -3190;GUATEMALA;EL PORVENIR;78615.1;16.50;-90.50;125 -3191;GUATEMALA;HUEHUETENANGO;78627;15.32;-91.47;1901 -3192;GUATEMALA;COBAN;78631.1;15.30;-90.30;1316 -3193;GUATEMALA;CHIMAX BEI COBAN;78631.2;15.60;-90.40;-999 -3194;GUATEMALA;LABOR OVALLE;78639.1;14.90;-91.50;2376 -3195;GUATEMALA;GUATEMALA CITY;78640.1;14.50;-90.60;1496 -3196;HAITI;PORT-AU-PRINC;78439;18.57;-72.30;34 -3197;HONDURAS;ISLAS DEL CIS;78501;17.40;-83.93;11 -3198;HONDURAS;AMAPALA;78700;13.28;-87.67;5 -3199;HONDURAS;GUANAJA;78701;16.47;-85.92;2 -3200;HONDURAS;LA CEIBA;78705;15.73;-86.87;26 -3201;HONDURAS;TELA;78706;15.72;-87.48;3 -3202;HONDURAS;LA MESA;78708;15.45;-87.93;31 -3203;HONDURAS;PUERTO LEMPIR;78711;15.22;-83.80;13 -3204;HONDURAS;CATACAMAS;78714;14.90;-85.93;442 -3205;HONDURAS;SANTA ROSA DE;78717;14.78;-88.78;1079 -3206;HONDURAS;LA FRAGUA;78717.1;15.00;-89.50;425 -3207;HONDURAS;TEGUCIGALPA;78720;14.05;-87.22;1007 -3208;HONDURAS;CHOLUTECA;78724;13.30;-87.18;48 -3209;JAMAICA;NEGRIL POINT LIGHTHOUSE JA;78387.1;18.30;-78.40;8 -3210;JAMAICA;MONTEGO BAY/S;78388;18.50;-77.92;8 -3211;JAMAICA;KINGSTON/NORM;78397;17.93;-76.78;14 -3212;JAMAICA;CINCHONA GARDENS JAMAICA;78397.1;18.10;-76.70;1492 -3213;JAMAICA;MORANT POINT;78399;17.92;-76.18;2 -3214;MEXICO;ENSENADA;76055.1;31.90;-116.60;13 -3215;MEXICO;MEXICALI BAJA CALIF;76055.2;32.65;-115.45;60 -3216;MEXICO;"HERMOSILLO, SO";76160;29.07;-110.95;211 -3217;MEXICO;"PRESA PLUTARCO ELIAS CALLES, S";76160.1;28.98;-109.65;350 -3218;MEXICO;"PRESA ABELARDO RODRIGUEZ, SONO";76160.2;29.08;-110.92;210 -3219;MEXICO;"EL AGUILA, SONORA";76160.3;29.12;-109.67;340 -3220;MEXICO;"EL OREGANO, SONORA";76160.4;29.23;-110.72;275 -3221;MEXICO;"SAN PEDRO DE LA CUEVA, SONORA";76160.5;29.28;-109.73;450 -3222;MEXICO;"TEMOSACHIC, CH";76220;28.95;-107.83;1870 -3223;MEXICO;"CIUDAD GUERRERO, CHIHUAHUA";76220.1;28.55;-107.48;2000 -3224;MEXICO;"LA JUNTA, CHIHUAHUA";76220.2;28.77;-107.98;1900 -3225;MEXICO;"ARIVECHI, SONORA";76220.3;28.93;-109.18;556 -3226;MEXICO;"SAHUARIPA, SONORA";76220.4;29.05;-109.23;460 -3227;MEXICO;UNIV. DE CHIH;76225;28.63;-106.08;1435 -3228;MEXICO;"CUAUHTEMOC, CHIHUAHUA";76225.1;28.40;-106.87;2050 -3229;MEXICO;PIEDRAS NEGRA;76243;28.70;-100.52;250 -3230;MEXICO;"SAN IGNACIO, BAJA CALIF. SUR";76253.1;27.30;-112.88;95 -3231;MEXICO;GUAYMAS SONORA MEXICO;76256.1;27.92;-110.88;11 -3232;MEXICO;CIUDAD OBREGO;76258;27.48;-109.93;38 -3233;MEXICO;"TRES HERMANOS, SONORA";76258.1;27.20;-109.20;100 -3234;MEXICO;"QUIRIEGO, SONORA";76258.2;27.52;-109.25;521 -3235;MEXICO;"LA DURA, SONORA";76258.3;28.38;-109.57;160 -3236;MEXICO;"TONICHI, SONORA";76258.4;28.60;-109.57;200 -3237;MEXICO;"CHOIX, SIN.";76311;26.72;-108.28;238 -3238;MEXICO;"JAINA, SINALOA SRH";76311.1;25.90;-108.02;200 -3239;MEXICO;"EL FUERTE, SINALOA";76311.2;26.42;-108.62;84 -3240;MEXICO;"HUITES, SINALOA";76311.3;26.90;-108.37;168 -3241;MEXICO;"MINAS NUEVAS, SONORA";76311.4;27.07;-109.02;508 -3242;MEXICO;"MONCLOVA, COAH";76342;26.88;-101.42;615 -3243;MEXICO;"CUATRO CIENEGAS, COAHUILA";76342.1;26.98;-102.07;735 -3244;MEXICO;"GRANJA EXPERIMENTAL, NUEVO LEO";76342.2;27.23;-100.15;193 -3245;MEXICO;"LAGUNA DE SALINILLAS, NUEVO LE";76342.3;27.43;-100.38;240 -3246;MEXICO;"PRESA VENUSTIANO CARRANZA, COA";76342.4;27.52;-100.62;270 -3247;MEXICO;"TEPEHUANES, DG";76373;25.35;-105.75;1810 -3248;MEXICO;"GUANACEVI, DURANGO";76373.1;25.93;-105.95;2200 -3249;MEXICO;"TORREON, COAH.";76382;25.53;-103.45;1124 -3250;MEXICO;"EL RODEO, DURANGO";76382.1;25.18;-104.57;1340 -3251;MEXICO;"CIUDAD LERDO, DURANGO";76382.2;25.53;-103.53;1135 -3252;MEXICO;"SALTILLO, COAH";76390;25.45;-100.98;1790 -3253;MEXICO;"RAMOS ARIZPE, COAHUILA";76390.1;25.55;-100.97;1399 -3254;MEXICO;"MONTERREY, N.L";76393;25.87;-100.20;512 -3255;MEXICO;"LINARES, NUEVO LEON";76393.1;24.87;-99.57;350 -3256;MEXICO;"MONTEMORELOS, NUEVO LEON";76393.2;25.18;-99.83;425 -3257;MEXICO;"LAS ENRAMADAS, NUEVO LEON";76393.3;25.50;-99.52;190 -3258;MEXICO;"LA PAZ, B.C.S";76405;24.27;-110.42;18 -3259;MEXICO;"CABO SAN LUCAS, BAJA CALIFORNI";76405.1;22.88;-109.92;25 -3260;MEXICO;"SAN FELIPE, BAJA CALIFORNIA SU";76405.2;23.13;-109.75;450 -3261;MEXICO;"SANTIAGO, BAJA CALIFORNIA SUR";76405.3;23.47;-109.73;125 -3262;MEXICO;"CULIACAN, SIN.";76412;24.82;-107.40;39 -3263;MEXICO;"COSALA, SINALOA SMN";76412.1;24.42;-106.68;300 -3264;MEXICO;"PALOS BLANCOS, SINALOA";76412.2;24.92;-107.38;88 -3265;MEXICO;"FRANCISCO I. MADERO, DURANGO";76423.1;24.40;-104.32;1960 -3266;MEXICO;MAZATLAN;76458;23.20;-105.40;3 -3267;MEXICO;"CAMPO EXP. INGENIO MANTE, TAMA";76491.1;22.72;-98.93;100 -3268;MEXICO;"AHUALULCO, TAMAULIPAS";76491.2;22.95;-99.13;150 -3269;MEXICO;"EL BARRETAL, TAMAULIPAS";76491.3;24.08;-99.13;195 -3270;MEXICO;"VILLAGRAN, TAMAULIPAS";76491.4;24.47;-99.50;380 -3271;MEXICO;"BURGOS, TAMAULIPAS";76491.5;24.95;-98.80;165 -3272;MEXICO;"SAN FERNANDO, TAMAULIPAS";76499.1;24.85;-98.17;43 -3273;MEXICO;"COLOTLAN, JAL.";76519;22.12;-103.27;1673 -3274;MEXICO;"ZACATECAS, ZAC";76525;22.78;-102.57;2612 -3275;MEXICO;"TAMPICO, TAMP";76548;22.22;-97.85;9 -3276;MEXICO;"HACIENDA SANTA ELENA, TAMAULIP";76548.1;22.52;-99.00;90 -3277;MEXICO;"TEPIC, NAY.";76556;21.52;-104.90;922 -3278;MEXICO;"MASCOTA, JALISCO";76556.1;20.53;-104.80;1240 -3279;MEXICO;LEON;76575.1;21.10;-101.70;1809 -3280;MEXICO;"GUANAJUATO, GT";76577;21.02;-101.25;1999 -3281;MEXICO;"SAN DIEGO DE LA UNION, GUANAJU";76577.1;21.47;-100.87;2080 -3282;MEXICO;"RIO VERDE, S.L";76581;21.85;-100.00;990 -3283;MEXICO;"AGUA BUENO, SAN LUIS POTOSI";76581.1;21.95;-99.38;372 -3284;MEXICO;"ORIZATLAN, HIDALGO";76585.1;21.17;-98.62;575 -3285;MEXICO;"PROGRESO, YUC";76593;21.30;-89.82;14 -3286;MEXICO;COZUMEL;76595.1;20.52;-86.95;3 -3287;MEXICO;"GUADALAJARA, J";76612;20.67;-103.38;1551 -3288;MEXICO;"CHAPALA, JALISCO";76612.1;20.30;-103.18;1523 -3289;MEXICO;"TEPATITLAN, JALISCO";76612.2;20.82;-102.77;1800 -3290;MEXICO;"QUERETARO, QRO";76625;20.60;-100.38;1813 -3291;MEXICO;"PACHUCA, HGO.";76632;20.13;-98.73;2417 -3292;MEXICO;TUXPAN.VER.;76640;20.95;-97.40;28 -3293;MEXICO;AEROP.INTERNA;76644;20.98;-89.65;9 -3294;MEXICO;"TEKAX, YUCATAN";76644.1;20.18;-89.28;33 -3295;MEXICO;"VALLADOLID, YU";76647;20.70;-88.22;22 -3296;MEXICO;"MANZANILLO, CO";76654;19.05;-104.33;3 -3297;MEXICO;"COLIMA, COLIMA";76656.1;19.23;-103.73;495 -3298;MEXICO;"ZAMORA, MICH.";76662;19.98;-102.32;1562 -3299;MEXICO;"CHAPARACO, MICHOACAN";76662.1;19.98;-102.28;1633 -3300;MEXICO;"YURECUARO, MICHOACAN";76662.2;20.33;-102.28;1537 -3301;MEXICO;"MORELIA, MICH.";76665;19.70;-101.18;1913 -3302;MEXICO;AEROP. INTERN;76679;19.43;-99.08;2234 -3303;MEXICO;MEXICO;76680;19.40;-99.20;2303 -3304;MEXICO;"COLONIA ESCANDON, DISTRITO FED";76680.1;19.40;-99.18;2245 -3305;MEXICO;"PRESA REQUENA, HIDALGO";76680.2;19.92;-99.32;2109 -3306;MEXICO;"TLAXCALA, TLAX";76683;19.32;-98.23;2248 -3307;MEXICO;"PUEBLA, PUE.";76685;19.05;-98.17;2179 -3308;MEXICO;"JALAPA, VER.";76687;19.53;-96.92;1389 -3309;MEXICO;"TEOCELO, VERACRUZ";76687.1;19.38;-96.97;1213 -3310;MEXICO;HACIENDA YLAN;76692;19.15;-96.12;13 -3311;MEXICO;VERACRUZ;76692.1;19.20;-96.13;14 -3312;MEXICO;"CAMPECHE, CAMP";76695;19.85;-90.55;5 -3313;MEXICO;"CHAMPOTON, CAMPECHE";76695.1;19.38;-90.73;2 -3314;MEXICO;"XCUPIL, CAMPECHE";76695.2;19.72;-89.85;100 -3315;MEXICO;"CUERNAVACA, MO";76726;18.88;-99.23;1618 -3316;MEXICO;"CUAUTLA, MORELOS";76726.1;18.80;-98.95;1291 -3317;MEXICO;"OJITLAN, OAXACA";76737.1;18.08;-96.38;233 -3318;MEXICO;"CUICHAPA, VERACRUZ";76737.2;18.77;-96.87;648 -3319;MEXICO;COATZACOALCOS;76741;18.15;-94.42;23 -3320;MEXICO;CIUDAD OBREGON;76743.1;18.53;-92.65;39 -3321;MEXICO;"CHETUMAL, Q.RO";76750;18.48;-88.30;9 -3322;MEXICO;"PIAXTLA, PUEBLA";76773.1;18.20;-98.25;1155 -3323;MEXICO;"OAXACA, OAX.";76775;17.07;-96.72;1550 -3324;MEXICO;"SAN JUAN DEL RIO, OAXACA";76775.1;17.47;-95.82;122 -3325;MEXICO;"VALLE NACIONAL, OAXACA";76775.2;17.78;-96.32;65 -3326;MEXICO;"CANTON, OAXACA";76775.3;18.02;-96.28;42 -3327;MEXICO;"ACAPULCO, GRO.";76805;16.83;-99.93;13 -3328;MEXICO;"SALINA CRUZ, O";76833;16.17;-95.20;6 -3329;MEXICO;"MATIAS ROMERO, OAXACA";76833.1;16.88;-95.05;201 -3330;MEXICO;"VILLAFLORES, CHIAPAS";76843.1;16.25;-93.27;610 -3331;MEXICO;SN. CRISTOBAL;76845;16.73;-92.63;2276 -3332;MEXICO;"TAPACHULA, CH";76903;14.92;-92.27;118 -3333;NICARAGUA;RIVAS;78733.1;11.43;-85.83;64 -3334;NICARAGUA;JUIGALPA;78735;12.10;-85.37;90 -3335;NICARAGUA;CHINANDEGA;78739;12.63;-87.13;60 -3336;NICARAGUA;"MANAGUA, NICARAGUA";78741;12.10;-86.20;56 -3337;NICARAGUA;MANAGUA A.C.S;78741.2;12.15;-86.17;56 -3338;NICARAGUA;BLUEFIELDS;78744.1;12.00;-83.77;41 -3339;NICARAGUA;PUERTO CABEZAS;78744.2;12.03;-83.42;20 -3340;PANAMA;TOCUMEN;78792;9.05;-79.37;45 -3341;PANAMA;DAVID;78793;8.40;-82.42;26 -3342;PANAMA;PUERTO ARMUELLES PANAMA;78793.1;8.30;-82.90;15 -3343;PANAMA;LOS NARANJOS;78793.2;8.78;-82.45;1200 -3344;PANAMA;CHANGUINOLA PANAMA;78793.3;9.50;-82.50;5 -3345;PANAMA;SANTIAGO;78795;8.08;-80.95;88 -3346;PANAMA;LOS SANTOS;78795.1;7.95;-80.42;16 -3347;PANAMA;SANTA FE;78795.2;8.47;-81.08;463 -3348;PANAMA;BALBOA/ALBROOK;78806.1;8.97;-79.55;9 -3349;PANAMA;ALBROOK AFB/BALBOA CZ;78806.2;9.00;-79.60;6 -3350;PANAMA;MADDEN DAM;78806.3;9.20;-79.60;86 -3351;PANAMA;COCO SOLO;78806.4;9.37;-79.90;4 -3352;PANAMA;CRISTOBAL;78806.5;9.40;-79.90;7 -3353;SAINT KITTS AND NEVIS;GOLDEN ROCK;78858;17.30;-62.68;48 -3354;THE BAHAMAS;FREEPORT;78062;26.55;-78.70;11 -3355;THE BAHAMAS;NASSAU AIRPOR;78073;25.05;-77.47;7 -3356;THE BAHAMAS;ABRAHAM BAY;78109;22.37;-72.97;3 -3357;TRINIDAD AND TOBAGO;CROWN POINT A;78962;11.15;-60.83;6 -3358;TRINIDAD AND TOBAGO;PIARCO INT. A;78970;10.62;-61.35;15 -3359;TRINIDAD AND TOBAGO;ST CLAIR EXP STN.;78970.1;10.70;-61.50;20 -3360;UNITED STATES OF AMERICA;BREWTON 3 SSE;11.84;31.06;-87.05;25.9 -3361;UNITED STATES OF AMERICA;FAIRHOPE 2 NE;12.813;30.55;-87.88;7 -3362;UNITED STATES OF AMERICA;GAINESVILLE LOCK;13.160;32.83;-88.13;38.1 -3363;UNITED STATES OF AMERICA;GREENSBORO;13.511;32.70;-87.58;67.1 -3364;UNITED STATES OF AMERICA;HIGHLAND HOME;13.816;31.87;-86.25;132 -3365;UNITED STATES OF AMERICA;MUSCLE SHOALS AP;15.749;34.74;-87.60;164.6 -3366;UNITED STATES OF AMERICA;SAINT BERNARD;17.157;34.17;-86.81;243.8 -3367;UNITED STATES OF AMERICA;SCOTTSBORO;17.304;34.67;-86.05;187.5 -3368;UNITED STATES OF AMERICA;SELMA;17.366;32.41;-87.02;44.8 -3369;UNITED STATES OF AMERICA;TALLADEGA;18.24;33.42;-86.14;136.6 -3370;UNITED STATES OF AMERICA;THOMASVILLE;18.178;31.54;-87.88;118.9 -3371;UNITED STATES OF AMERICA;TROY;18.323;31.81;-85.97;165.2 -3372;UNITED STATES OF AMERICA;TUSCALOOSA ACFD;18.380;33.21;-87.62;51.5 -3373;UNITED STATES OF AMERICA;UNION SPRINGS 9 S;18.438;32.01;-85.75;134.1 -3374;UNITED STATES OF AMERICA;VALLEY HEAD;18.469;34.57;-85.61;323.7 -3375;UNITED STATES OF AMERICA;AJO;20.80;32.37;-112.86;539.5 -3376;UNITED STATES OF AMERICA;BUCKEYE;21.26;33.38;-112.58;271.3 -3377;UNITED STATES OF AMERICA;CANYON DE CHELLY;21.248;36.15;-109.54;1709.9 -3378;UNITED STATES OF AMERICA;CHANDLER HEIGHTS;21.514;33.21;-111.68;434.3 -3379;UNITED STATES OF AMERICA;CHILDS;21.614;34.35;-111.70;807.7 -3380;UNITED STATES OF AMERICA;FT VALLEY;23.160;35.27;-111.74;2239.4 -3381;UNITED STATES OF AMERICA;GRAND CANYON NP 2;23.596;36.05;-112.15;2068.1 -3382;UNITED STATES OF AMERICA;HOLBROOK;24.89;34.91;-110.15;1549.9 -3383;UNITED STATES OF AMERICA;KINGMAN #2;24.645;35.20;-114.02;1078.7 -3384;UNITED STATES OF AMERICA;LEES FERRY;24.849;36.86;-111.60;978.4 -3385;UNITED STATES OF AMERICA;MIAMI;25.512;33.40;-110.87;1085.1 -3386;UNITED STATES OF AMERICA;PARKER;26.250;34.15;-114.29;128 -3387;UNITED STATES OF AMERICA;PEARCE SUNSITES;26.353;31.94;-109.84;1325.9 -3388;UNITED STATES OF AMERICA;PRESCOTT;26.796;34.57;-112.43;1586.5 -3389;UNITED STATES OF AMERICA;ROOSEVELT 1 WNW;27.281;33.67;-111.15;672.1 -3390;UNITED STATES OF AMERICA;SACATON;27.370;33.08;-111.74;391.7 -3391;UNITED STATES OF AMERICA;SAFFORD AGRICULTRL CTR;27.390;32.81;-109.68;900.4 -3392;UNITED STATES OF AMERICA;SAINT JOHNS;27.435;34.52;-109.40;1764.8 -3393;UNITED STATES OF AMERICA;SELIGMAN;27.716;35.33;-112.88;1600.2 -3394;UNITED STATES OF AMERICA;TOMBSTONE;28.619;31.71;-110.06;1405.1 -3395;UNITED STATES OF AMERICA;TUCSON WFO;28.815;32.23;-110.95;742.2 -3396;UNITED STATES OF AMERICA;WHITERIVER 1 SW;29.271;33.82;-109.98;1560.6 -3397;UNITED STATES OF AMERICA;WICKENBURG;29.287;33.98;-112.74;638.6 -3398;UNITED STATES OF AMERICA;WILLIAMS;29.359;35.24;-112.19;2057.4 -3399;UNITED STATES OF AMERICA;YUMA CITRUS STN;29.652;32.61;-114.64;58.2 -3400;UNITED STATES OF AMERICA;BRINKLEY;30.936;34.88;-91.22;56.4 -3401;UNITED STATES OF AMERICA;CONWAY;31.596;35.08;-92.43;96 -3402;UNITED STATES OF AMERICA;CORNING;31.632;36.42;-90.59;91.4 -3403;UNITED STATES OF AMERICA;EUREKA SPRINGS 3 WNW;32.356;36.42;-93.79;432.8 -3404;UNITED STATES OF AMERICA;FAYETTEVILLE EXP STN;32.444;36.10;-94.17;387.1 -3405;UNITED STATES OF AMERICA;GRAVETTE;32.930;36.43;-94.45;384 -3406;UNITED STATES OF AMERICA;MAMMOTH SPRING;34.572;36.49;-91.54;153 -3407;UNITED STATES OF AMERICA;MENA;34.756;34.57;-94.25;344.4 -3408;UNITED STATES OF AMERICA;NEWPORT;35.186;35.60;-91.27;69.5 -3409;UNITED STATES OF AMERICA;OZARK 2;35.512;35.51;-93.87;253 -3410;UNITED STATES OF AMERICA;PINE BLUFF;35.754;34.23;-92.02;65.5 -3411;UNITED STATES OF AMERICA;POCAHONTAS 1;35.820;36.26;-90.97;96 -3412;UNITED STATES OF AMERICA;PRESCOTT 2 NNW;35.908;33.82;-93.39;93.9 -3413;UNITED STATES OF AMERICA;ROHWER 2 NNE;36.253;33.81;-91.27;45.7 -3414;UNITED STATES OF AMERICA;SUBIACO;36.928;35.30;-93.64;152.4 -3415;UNITED STATES OF AMERICA;BERKELEY;40.693;37.87;-122.26;94.5 -3416;UNITED STATES OF AMERICA;BLYTHE;40.924;33.61;-114.60;81.7 -3417;UNITED STATES OF AMERICA;BRAWLEY 2 SW;41.48;32.95;-115.56;-30.5 -3418;UNITED STATES OF AMERICA;CEDARVILLE;41.614;41.53;-120.17;1423.4 -3419;UNITED STATES OF AMERICA;CHICO UNIV FARM;41.715;39.69;-121.82;56.4 -3420;UNITED STATES OF AMERICA;CHULA VISTA;41.758;32.64;-117.09;17.1 -3421;UNITED STATES OF AMERICA;COLFAX;41.912;39.09;-120.95;725.4 -3422;UNITED STATES OF AMERICA;CUYAMACA;42.239;32.99;-116.59;1414.3 -3423;UNITED STATES OF AMERICA;DAVIS 2 WSW EXP;42.294;38.53;-121.78;18.3 -3424;UNITED STATES OF AMERICA;DEATH VALLEY;42.319;36.46;-116.87;-59.1 -3425;UNITED STATES OF AMERICA;ELECTRA P H;42.728;38.33;-120.67;217.9 -3426;UNITED STATES OF AMERICA;EUREKA WFO WOODLEY IS;42.910;40.81;-124.16;6.1 -3427;UNITED STATES OF AMERICA;FAIRMONT;42.941;34.70;-118.43;932.7 -3428;UNITED STATES OF AMERICA;FT BRAGG 5 N;43.161;39.51;-123.76;37.5 -3429;UNITED STATES OF AMERICA;FRESNO YOSEMITE AP;43.257;36.78;-119.72;101.5 -3430;UNITED STATES OF AMERICA;HANFORD 1 S;43.747;36.32;-119.64;74.7 -3431;UNITED STATES OF AMERICA;HAPPY CAMP RS;43.761;41.80;-123.38;341.4 -3432;UNITED STATES OF AMERICA;HEALDSBURG;43.875;38.62;-122.87;32.9 -3433;UNITED STATES OF AMERICA;INDEPENDENCE;44.232;36.80;-118.20;1204 -3434;UNITED STATES OF AMERICA;INDIO FIRE STN;44.259;33.71;-116.22;-6.4 -3435;UNITED STATES OF AMERICA;LAKE SPAULDING;44.713;39.32;-120.64;1571.5 -3436;UNITED STATES OF AMERICA;LEMON COVE;44.890;36.38;-119.03;156.4 -3437;UNITED STATES OF AMERICA;LIVERMORE;44.997;37.69;-121.77;146.3 -3438;UNITED STATES OF AMERICA;LODI;45.32;38.11;-121.29;12.2 -3439;UNITED STATES OF AMERICA;MARYSVILLE;45.385;39.15;-121.59;17.4 -3440;UNITED STATES OF AMERICA;MERCED;45.532;37.29;-120.51;46.6 -3441;UNITED STATES OF AMERICA;MT SHASTA;45.983;41.32;-122.31;1094.2 -3442;UNITED STATES OF AMERICA;NAPA STATE HOSPITAL;46.74;38.28;-122.26;10.7 -3443;UNITED STATES OF AMERICA;NEEDLES AP;46.118;34.77;-114.62;271.3 -3444;UNITED STATES OF AMERICA;NEWPORT BEACH HARBOR;46.175;33.60;-117.88;3 -3445;UNITED STATES OF AMERICA;OJAI;46.399;34.45;-119.23;227.1 -3446;UNITED STATES OF AMERICA;ORLAND;46.506;39.75;-122.20;77.4 -3447;UNITED STATES OF AMERICA;ORLEANS;46.508;41.31;-123.53;122.8 -3448;UNITED STATES OF AMERICA;PASADENA;46.719;34.15;-118.14;263.3 -3449;UNITED STATES OF AMERICA;PASO ROBLES;46.730;35.63;-120.69;213.4 -3450;UNITED STATES OF AMERICA;PETALUMA AP;46.826;38.26;-122.61;6.1 -3451;UNITED STATES OF AMERICA;QUINCY;47.195;39.94;-120.95;1042.4 -3452;UNITED STATES OF AMERICA;REDDING MUNI AP;47.304;40.52;-122.30;151.5 -3453;UNITED STATES OF AMERICA;REDLANDS;47.306;34.05;-117.19;401.7 -3454;UNITED STATES OF AMERICA;SAN LUIS OBISPO POLY;47.851;35.31;-120.66;96 -3455;UNITED STATES OF AMERICA;SANTA BARBARA;47.902;34.42;-119.68;1.5 -3456;UNITED STATES OF AMERICA;SANTA CRUZ;47.916;36.99;-121.99;39.6 -3457;UNITED STATES OF AMERICA;SANTA ROSA;47.965;38.44;-122.70;53 -3458;UNITED STATES OF AMERICA;SUSANVILLE 2SW;48.702;40.42;-120.66;1275.3 -3459;UNITED STATES OF AMERICA;TAHOE CITY;48.758;39.17;-120.14;1898.9 -3460;UNITED STATES OF AMERICA;TEJON RANCHO;48.839;35.02;-118.75;434.3 -3461;UNITED STATES OF AMERICA;TUSTIN IRVINE RCH;49.87;33.70;-117.75;71.6 -3462;UNITED STATES OF AMERICA;UKIAH;49.122;39.15;-123.21;193.9 -3463;UNITED STATES OF AMERICA;VACAVILLE;49.200;38.40;-121.96;33.5 -3464;UNITED STATES OF AMERICA;WASCO;49.452;35.60;-119.35;105.2 -3465;UNITED STATES OF AMERICA;WEAVERVILLE;49.490;40.72;-122.93;599.8 -3466;UNITED STATES OF AMERICA;WILLOWS 6 W;49.699;39.52;-122.31;71 -3467;UNITED STATES OF AMERICA;YOSEMITE PARK HQ;49.855;37.75;-119.59;1224.7 -3468;UNITED STATES OF AMERICA;YREKA;49.866;41.70;-122.64;800.1 -3469;UNITED STATES OF AMERICA;BOULDER;50.848;39.99;-105.27;1671.5 -3470;UNITED STATES OF AMERICA;CANON CITY;51.294;38.46;-105.23;1635.6 -3471;UNITED STATES OF AMERICA;CHEESMAN;51.528;39.22;-105.28;2097 -3472;UNITED STATES OF AMERICA;CHEYENNE WELLS;51.564;38.82;-102.35;1295.4 -3473;UNITED STATES OF AMERICA;COLLBRAN;51.741;39.24;-107.96;1822.7 -3474;UNITED STATES OF AMERICA;DEL NORTE 2E;52.184;37.67;-106.32;2396.9 -3475;UNITED STATES OF AMERICA;DILLON 1 E;52.281;39.63;-106.04;2763 -3476;UNITED STATES OF AMERICA;EADS;52.446;38.48;-102.78;1284.7 -3477;UNITED STATES OF AMERICA;FT COLLINS;53.5;40.61;-105.13;1525.2 -3478;UNITED STATES OF AMERICA;FT MORGAN;53.38;40.26;-103.82;1328.6 -3479;UNITED STATES OF AMERICA;FRUITA;53.146;39.17;-108.73;1378.9 -3480;UNITED STATES OF AMERICA;GUNNISON 3SW;53.662;38.53;-106.97;2323.8 -3481;UNITED STATES OF AMERICA;HERMIT 7 ESE;53.951;37.77;-107.11;2757.8 -3482;UNITED STATES OF AMERICA;HOLLY;54.76;38.05;-102.12;1033.3 -3483;UNITED STATES OF AMERICA;LAMAR;54.770;38.09;-102.63;1105.5 -3484;UNITED STATES OF AMERICA;LAS ANIMAS;54.834;38.06;-103.22;1185.7 -3485;UNITED STATES OF AMERICA;MANASSA;55.322;37.17;-105.94;2343.9 -3486;UNITED STATES OF AMERICA;MONTROSE #2;55.722;38.49;-107.88;1764.5 -3487;UNITED STATES OF AMERICA;ROCKY FORD 2 SE;57.167;38.04;-103.69;1271 -3488;UNITED STATES OF AMERICA;SAGUACHE;57.337;38.09;-106.14;2347.3 -3489;UNITED STATES OF AMERICA;STEAMBOAT SPRINGS;57.936;40.49;-106.82;2094 -3490;UNITED STATES OF AMERICA;TELLURIDE 4WNW;58.204;37.95;-107.87;2643.2 -3491;UNITED STATES OF AMERICA;TRINIDAD;58.429;37.18;-104.49;1837.9 -3492;UNITED STATES OF AMERICA;WRAY;59.243;40.06;-102.22;1121.7 -3493;UNITED STATES OF AMERICA;FALLS VILLAGE;62.658;41.95;-73.37;167.6 -3494;UNITED STATES OF AMERICA;GROTON;63.207;41.35;-72.04;12.2 -3495;UNITED STATES OF AMERICA;STAMFORD 5 N;67.970;41.12;-73.55;57.9 -3496;UNITED STATES OF AMERICA;STORRS;68.138;41.79;-72.23;198.1 -3497;UNITED STATES OF AMERICA;DOVER;72.730;39.26;-75.52;9.1 -3498;UNITED STATES OF AMERICA;GREENWOOD 2NE;73.595;38.82;-75.58;13.7 -3499;UNITED STATES OF AMERICA;MILFORD 2 SE;75.915;38.90;-75.43;10.7 -3500;UNITED STATES OF AMERICA;NEWARK UNIV FARM;76.410;39.67;-75.75;27.4 -3501;UNITED STATES OF AMERICA;WILMINGTON PORTER RES;79.605;39.77;-75.54;82.3 -3502;UNITED STATES OF AMERICA;APALACHICOLA AP;80.211;29.73;-85.02;6.1 -3503;UNITED STATES OF AMERICA;ARCADIA;80.228;27.22;-81.87;9.1 -3504;UNITED STATES OF AMERICA;BARTOW;80.478;27.90;-81.84;38.1 -3505;UNITED STATES OF AMERICA;BELLE GLADE;80.611;26.69;-80.67;6.1 -3506;UNITED STATES OF AMERICA;DE FUNIAK SPRINGS 1;82.220;30.72;-86.09;74.7 -3507;UNITED STATES OF AMERICA;EVERGLADES;82.850;25.85;-81.39;1.5 -3508;UNITED STATES OF AMERICA;FEDERAL POINT;82.915;29.75;-81.54;1.5 -3509;UNITED STATES OF AMERICA;FERNANDINA BEACH;82.944;30.66;-81.46;4 -3510;UNITED STATES OF AMERICA;FT LAUDERDALE;83.163;26.10;-80.20;4.9 -3511;UNITED STATES OF AMERICA;FT MYERS PAGE FLD;83.186;26.58;-81.86;4.6 -3512;UNITED STATES OF AMERICA;FT PIERCE;83.207;27.46;-80.35;7.6 -3513;UNITED STATES OF AMERICA;INVERNESS 3 SE;84.289;28.80;-82.31;12.2 -3514;UNITED STATES OF AMERICA;KEY WEST INTL AP;84.570;24.56;-81.75;1.2 -3515;UNITED STATES OF AMERICA;LAKE CITY 2 E;84.731;30.19;-82.59;59.4 -3516;UNITED STATES OF AMERICA;MADISON;85.275;30.45;-83.41;36.6 -3517;UNITED STATES OF AMERICA;OCALA;86.414;29.08;-82.08;22.9 -3518;UNITED STATES OF AMERICA;PENSACOLA RGNL AP;86.997;30.48;-87.19;34.1 -3519;UNITED STATES OF AMERICA;PERRINE 4W;87.20;25.58;-80.44;3 -3520;UNITED STATES OF AMERICA;SAINT LEO;87.851;28.34;-82.26;57.9 -3521;UNITED STATES OF AMERICA;TALLAHASSEE WSO AP;88.758;30.39;-84.35;16.8 -3522;UNITED STATES OF AMERICA;TARPON SPGS SEWAGE PL;88.824;28.16;-82.76;2.4 -3523;UNITED STATES OF AMERICA;TITUSVILLE;88.942;28.62;-80.82;1.5 -3524;UNITED STATES OF AMERICA;ALBANY 3 SE;90.140;31.53;-84.15;54.9 -3525;UNITED STATES OF AMERICA;BAINBRIDGE INTL PAPER;90.586;30.82;-84.62;57.9 -3526;UNITED STATES OF AMERICA;BRUNSWICK;91.340;31.17;-81.50;4 -3527;UNITED STATES OF AMERICA;CAMILLA 3SE;91.500;31.19;-84.20;53.3 -3528;UNITED STATES OF AMERICA;COVINGTON;92.318;33.60;-83.84;234.4 -3529;UNITED STATES OF AMERICA;DAHLONEGA;92.475;34.53;-83.99;475.5 -3530;UNITED STATES OF AMERICA;EASTMAN 1 W;92.966;32.20;-83.21;121.9 -3531;UNITED STATES OF AMERICA;GAINESVILLE;93.621;34.30;-83.86;356.6 -3532;UNITED STATES OF AMERICA;GLENNVILLE 3NW;93.754;31.99;-81.95;61 -3533;UNITED STATES OF AMERICA;HAWKINSVILLE;94.170;33.28;-83.47;74.7 -3534;UNITED STATES OF AMERICA;MILLEDGEVILLE;95.874;33.08;-83.25;112.2 -3535;UNITED STATES OF AMERICA;MILLEN 4 N;95.882;32.87;-81.97;59.4 -3536;UNITED STATES OF AMERICA;NEWNAN 5N;96.335;33.45;-84.82;272.5 -3537;UNITED STATES OF AMERICA;QUITMAN 2 NW;97.276;30.78;-83.57;56.4 -3538;UNITED STATES OF AMERICA;ROME;97.600;34.25;-85.15;200.9 -3539;UNITED STATES OF AMERICA;SAVANNAH INTL AP;97.847;32.13;-81.21;14 -3540;UNITED STATES OF AMERICA;TALBOTTON;98.535;32.69;-84.52;195.1 -3541;UNITED STATES OF AMERICA;TIFTON;98.703;31.45;-83.48;115.8 -3542;UNITED STATES OF AMERICA;TOCCOA;98.740;34.58;-83.33;308.5 -3543;UNITED STATES OF AMERICA;WARRENTON;99.141;33.40;-82.62;149.4 -3544;UNITED STATES OF AMERICA;WASHINGTON 2 ESE;99.157;33.73;-82.71;189 -3545;UNITED STATES OF AMERICA;WAYCROSS 4 NE;99.186;31.25;-82.31;44.2 -3546;UNITED STATES OF AMERICA;WEST POINT;99.291;32.87;-85.19;175.3 -3547;UNITED STATES OF AMERICA;ABERDEEN EXP STN;100.10;42.95;-112.83;1342.6 -3548;UNITED STATES OF AMERICA;ARROWROCK DAM;100.448;43.59;-115.92;986 -3549;UNITED STATES OF AMERICA;ASHTON 1N;100.470;44.04;-111.27;1588.6 -3550;UNITED STATES OF AMERICA;BERN;100.803;42.34;-111.39;1817.8 -3551;UNITED STATES OF AMERICA;CAMBRIDGE;101.408;44.57;-116.68;807.7 -3552;UNITED STATES OF AMERICA;COEUR DALENE;101.956;47.68;-116.80;650.1 -3553;UNITED STATES OF AMERICA;DWORSHAK FISH HATCHERY;102.845;46.50;-116.32;303.3 -3554;UNITED STATES OF AMERICA;FENN RS;103.143;46.09;-115.54;475.5 -3555;UNITED STATES OF AMERICA;GLENNS FERRY;103.631;42.94;-115.32;751.6 -3556;UNITED STATES OF AMERICA;GRACE;103.732;42.59;-111.73;1691.6 -3557;UNITED STATES OF AMERICA;HAZELTON;104.140;42.60;-114.14;1237.5 -3558;UNITED STATES OF AMERICA;HOLLISTER;104.295;42.35;-114.57;1379.2 -3559;UNITED STATES OF AMERICA;JEROME;104.670;42.73;-114.52;1140 -3560;UNITED STATES OF AMERICA;KELLOGG;104.831;47.53;-116.13;707.1 -3561;UNITED STATES OF AMERICA;KETCHUM RS;104.845;43.68;-114.36;1795.3 -3562;UNITED STATES OF AMERICA;LEWISTON AP;105.241;46.37;-117.02;437.7 -3563;UNITED STATES OF AMERICA;LIFTON PUMPING STN;105.275;42.12;-111.31;1806.2 -3564;UNITED STATES OF AMERICA;MACKAY LOST RIVER RS;105.462;43.92;-113.63;1797.4 -3565;UNITED STATES OF AMERICA;MALAD CITY;105.559;42.15;-112.29;1362.5 -3566;UNITED STATES OF AMERICA;MAY 2SSE;105.685;44.57;-113.90;1539.2 -3567;UNITED STATES OF AMERICA;MOSCOW U OF I;106.152;46.72;-116.96;810.8 -3568;UNITED STATES OF AMERICA;NAMPA SUGAR FACTORY;106.305;43.60;-116.58;752.9 -3569;UNITED STATES OF AMERICA;NEW MEADOWS RS;106.388;44.96;-116.29;1179.6 -3570;UNITED STATES OF AMERICA;OAKLEY;106.542;42.23;-113.90;1389.6 -3571;UNITED STATES OF AMERICA;PAYETTE;106.891;44.08;-116.93;655.3 -3572;UNITED STATES OF AMERICA;PORTHILL;107.264;49.00;-116.50;541 -3573;UNITED STATES OF AMERICA;PRIEST RIVER EXP STN;107.386;48.35;-116.84;725.4 -3574;UNITED STATES OF AMERICA;SALMON-KSRA;108.80;45.19;-113.90;1198.2 -3575;UNITED STATES OF AMERICA;SANDPOINT EXP STN;108.137;48.29;-116.56;640.1 -3576;UNITED STATES OF AMERICA;ALEDO;110.72;41.20;-90.75;219.5 -3577;UNITED STATES OF AMERICA;ANNA 2 NNE;110.187;37.48;-89.23;195.1 -3578;UNITED STATES OF AMERICA;AURORA;110.338;41.78;-88.31;201.2 -3579;UNITED STATES OF AMERICA;CARLINVILLE;111.280;39.29;-89.87;189.3 -3580;UNITED STATES OF AMERICA;CHARLESTON;111.436;39.48;-88.17;198.1 -3581;UNITED STATES OF AMERICA;DANVILLE;112.140;40.14;-87.65;170.1 -3582;UNITED STATES OF AMERICA;DECATUR WTP;112.193;39.83;-88.95;189 -3583;UNITED STATES OF AMERICA;DIXON 1 NW;112.348;41.85;-89.50;213.4 -3584;UNITED STATES OF AMERICA;DU QUOIN 4 SE;112.483;37.99;-89.19;128 -3585;UNITED STATES OF AMERICA;GALVA;113.335;41.17;-90.04;246.9 -3586;UNITED STATES OF AMERICA;HARRISBURG;113.879;37.74;-88.52;111.3 -3587;UNITED STATES OF AMERICA;HILLSBORO;114.108;39.15;-89.48;192 -3588;UNITED STATES OF AMERICA;HOOPESTON 1 NE;114.198;40.47;-87.66;216.4 -3589;UNITED STATES OF AMERICA;JACKSONVILLE 2E;114.442;39.73;-90.20;185.9 -3590;UNITED STATES OF AMERICA;LA HARPE;114.823;40.58;-90.97;210.3 -3591;UNITED STATES OF AMERICA;LINCOLN;115.79;40.15;-89.34;177.7 -3592;UNITED STATES OF AMERICA;MARENGO;115.326;42.29;-88.65;248.4 -3593;UNITED STATES OF AMERICA;MCLEANSBORO;115.515;38.08;-88.54;135.9 -3594;UNITED STATES OF AMERICA;MINONK;115.712;40.91;-89.03;228.6 -3595;UNITED STATES OF AMERICA;MONMOUTH;115.768;40.92;-90.64;227.1 -3596;UNITED STATES OF AMERICA;MORRISON;115.833;41.80;-89.97;183.8 -3597;UNITED STATES OF AMERICA;MT CARROLL;115.901;42.10;-89.98;195.1 -3598;UNITED STATES OF AMERICA;MT VERNON 3 NE;115.943;38.35;-88.85;149.4 -3599;UNITED STATES OF AMERICA;OLNEY 2S;116.446;38.70;-88.08;146.3 -3600;UNITED STATES OF AMERICA;OTTAWA 5SW;116.526;41.33;-88.91;160 -3601;UNITED STATES OF AMERICA;PALESTINE;116.558;39.00;-87.62;140.2 -3602;UNITED STATES OF AMERICA;PANA 3E;116.579;39.37;-89.02;213.4 -3603;UNITED STATES OF AMERICA;PARIS WTR WKS;116.610;39.64;-87.69;207.3 -3604;UNITED STATES OF AMERICA;PERRY 6 NW;116.738;39.81;-90.82;198.1 -3605;UNITED STATES OF AMERICA;PONTIAC;116.910;40.89;-88.64;198.1 -3606;UNITED STATES OF AMERICA;RUSHVILLE;117.551;40.12;-90.56;201.2 -3607;UNITED STATES OF AMERICA;SPARTA 1 W;118.147;38.12;-89.72;163.1 -3608;UNITED STATES OF AMERICA;URBANA;118.740;40.08;-88.24;219.8 -3609;UNITED STATES OF AMERICA;WALNUT;118.916;41.55;-89.60;210.3 -3610;UNITED STATES OF AMERICA;WHITE HALL 1 E;119.241;39.44;-90.38;176.8 -3611;UNITED STATES OF AMERICA;WINDSOR;119.354;39.44;-88.60;210.3 -3612;UNITED STATES OF AMERICA;ANDERSON SEWAGE PLT;120.177;40.11;-85.72;257.6 -3613;UNITED STATES OF AMERICA;ANGOLA;120.200;41.64;-84.99;307.8 -3614;UNITED STATES OF AMERICA;BERNE WWTP;120.676;40.67;-84.93;265.2 -3615;UNITED STATES OF AMERICA;BLOOMINGTON IN UNIV;120.784;39.17;-86.52;253 -3616;UNITED STATES OF AMERICA;BROOKVILLE;121.30;39.42;-85.01;192 -3617;UNITED STATES OF AMERICA;CAMBRIDGE CITY 3 N;121.229;39.87;-85.18;304.8 -3618;UNITED STATES OF AMERICA;CHARLESTOWN 5 NNW;121.425;38.48;-85.70;167.6 -3619;UNITED STATES OF AMERICA;COLUMBUS;121.747;39.20;-85.92;189.3 -3620;UNITED STATES OF AMERICA;CRAWFORDSVILLE 6 SE;121.873;40.00;-86.80;256 -3621;UNITED STATES OF AMERICA;DELPHI 2 N;122.149;40.62;-86.67;169.5 -3622;UNITED STATES OF AMERICA;GOSHEN 3SW;123.418;41.56;-85.88;266.7 -3623;UNITED STATES OF AMERICA;GREENCASTLE 1 W;123.513;39.64;-86.88;224 -3624;UNITED STATES OF AMERICA;GREENFIELD;123.527;39.79;-85.76;263.7 -3625;UNITED STATES OF AMERICA;HOBART 2 WNW;124.8;41.54;-87.29;195.1 -3626;UNITED STATES OF AMERICA;HUNTINGTON;124.181;40.86;-85.50;221 -3627;UNITED STATES OF AMERICA;LAPORTE;124.837;41.61;-86.73;257.6 -3628;UNITED STATES OF AMERICA;MADISON SEWAGE PLT;125.237;38.74;-85.39;140.2 -3629;UNITED STATES OF AMERICA;MARION 2 N;125.337;40.58;-85.66;240.8 -3630;UNITED STATES OF AMERICA;MT VERNON;126.1;37.93;-87.90;108.8 -3631;UNITED STATES OF AMERICA;OOLITIC PURDUE EX FRM;126.580;38.89;-86.55;198.1 -3632;UNITED STATES OF AMERICA;PAOLI;126.705;38.56;-86.49;170.7 -3633;UNITED STATES OF AMERICA;PRINCETON 1 W;127.125;38.36;-87.59;146.3 -3634;UNITED STATES OF AMERICA;RENSSELAER;127.298;40.94;-87.16;198.1 -3635;UNITED STATES OF AMERICA;ROCHESTER;127.482;41.07;-86.21;234.7 -3636;UNITED STATES OF AMERICA;ROCKVILLE;127.522;39.76;-87.23;211.2 -3637;UNITED STATES OF AMERICA;RUSHVILLE;127.646;39.60;-85.45;292.6 -3638;UNITED STATES OF AMERICA;SALEM;127.755;38.61;-86.09;243.8 -3639;UNITED STATES OF AMERICA;SCOTTSBURG;127.875;38.69;-85.79;173.7 -3640;UNITED STATES OF AMERICA;SEYMOUR 2 N;127.935;38.98;-85.98;173.7 -3641;UNITED STATES OF AMERICA;SHOALS 8 S;128.36;38.55;-86.79;154.2 -3642;UNITED STATES OF AMERICA;VEVAY;129.80;38.74;-85.08;150.9 -3643;UNITED STATES OF AMERICA;VINCENNES 5 NE;129.113;38.74;-87.49;137.2 -3644;UNITED STATES OF AMERICA;WASHINGTON 1 W;129.253;38.65;-87.20;152.4 -3645;UNITED STATES OF AMERICA;WHEATFIELD;129.511;41.19;-87.06;202.7 -3646;UNITED STATES OF AMERICA;WHITESTOWN;129.557;40.00;-86.35;289 -3647;UNITED STATES OF AMERICA;WINAMAC 2SSE;129.670;41.03;-86.59;210.3 -3648;UNITED STATES OF AMERICA;ALBIA 3 NNE;130.112;41.07;-92.79;268.2 -3649;UNITED STATES OF AMERICA;ALGONA 3 W;130.133;43.07;-94.31;377.6 -3650;UNITED STATES OF AMERICA;BELLE PLAINE;130.600;41.88;-92.28;246.9 -3651;UNITED STATES OF AMERICA;CHARLES CITY;131.402;43.08;-92.67;309.1 -3652;UNITED STATES OF AMERICA;CLARINDA;131.533;40.72;-95.02;298.7 -3653;UNITED STATES OF AMERICA;CLINTON #1;131.635;41.79;-90.26;178.3 -3654;UNITED STATES OF AMERICA;ESTHERVILLE 2 N;132.724;43.43;-94.82;396.8 -3655;UNITED STATES OF AMERICA;FAIRFIELD;132.789;41.02;-91.96;225.6 -3656;UNITED STATES OF AMERICA;FAYETTE;132.864;42.85;-91.82;344.4 -3657;UNITED STATES OF AMERICA;FOREST CITY 2 NNE;132.977;43.28;-93.63;396.2 -3658;UNITED STATES OF AMERICA;FORT DODGE 5NNW;132.999;42.58;-94.20;347.5 -3659;UNITED STATES OF AMERICA;INDIANOLA 2W;134.63;41.37;-93.65;287.1 -3660;UNITED STATES OF AMERICA;IOWA FALLS;134.142;42.52;-93.25;344.4 -3661;UNITED STATES OF AMERICA;LE MARS;134.735;42.78;-96.15;364.2 -3662;UNITED STATES OF AMERICA;LOGAN;134.894;41.64;-95.79;301.8 -3663;UNITED STATES OF AMERICA;MT AYR;135.769;40.71;-94.24;359.7 -3664;UNITED STATES OF AMERICA;MT PLEASANT 1 SSW;135.796;40.95;-91.56;222.5 -3665;UNITED STATES OF AMERICA;NEW HAMPTON;135.952;43.05;-92.31;349.9 -3666;UNITED STATES OF AMERICA;ROCK RAPIDS;137.147;43.43;-96.17;411.5 -3667;UNITED STATES OF AMERICA;ROCKWELL CITY;137.161;42.40;-94.63;364.2 -3668;UNITED STATES OF AMERICA;STORM LAKE 2 E;137.979;42.63;-95.17;434.3 -3669;UNITED STATES OF AMERICA;TOLEDO 3N;138.296;42.04;-92.58;289.3 -3670;UNITED STATES OF AMERICA;WASHINGTON;138.688;41.28;-91.71;210.3 -3671;UNITED STATES OF AMERICA;ANTHONY;140.264;37.15;-98.03;408.4 -3672;UNITED STATES OF AMERICA;ASHLAND;140.365;37.19;-99.76;600.5 -3673;UNITED STATES OF AMERICA;ATCHISON;140.405;39.58;-95.11;288 -3674;UNITED STATES OF AMERICA;COLDWATER;141.704;37.27;-99.33;634.9 -3675;UNITED STATES OF AMERICA;COLUMBUS;141.740;37.18;-94.84;275.8 -3676;UNITED STATES OF AMERICA;COUNCIL GROVE LAKE;141.867;38.68;-96.51;402.3 -3677;UNITED STATES OF AMERICA;EL DORADO;142.401;37.82;-96.84;393.2 -3678;UNITED STATES OF AMERICA;ELLSWORTH;142.459;38.73;-98.23;466.3 -3679;UNITED STATES OF AMERICA;FT SCOTT;142.835;37.84;-94.71;257.6 -3680;UNITED STATES OF AMERICA;HAYS 1 S;143.527;38.86;-99.34;612.6 -3681;UNITED STATES OF AMERICA;HORTON;143.810;39.67;-95.52;313.9 -3682;UNITED STATES OF AMERICA;INDEPENDENCE;143.954;37.24;-95.70;245.4 -3683;UNITED STATES OF AMERICA;JETMORE 8NNW;144.87;38.20;-99.92;740.7 -3684;UNITED STATES OF AMERICA;LAKIN;144.464;37.94;-101.25;913.8 -3685;UNITED STATES OF AMERICA;LARNED;144.530;38.18;-99.10;608.1 -3686;UNITED STATES OF AMERICA;LAWRENCE;144.559;38.96;-95.25;306.3 -3687;UNITED STATES OF AMERICA;LEAVENWORTH;144.588;39.33;-94.92;265.2 -3688;UNITED STATES OF AMERICA;LIBERAL;144.695;37.02;-100.93;863.8 -3689;UNITED STATES OF AMERICA;MANHATTAN;144.972;39.20;-96.58;324.6 -3690;UNITED STATES OF AMERICA;MCPHERSON;145.152;38.38;-97.61;463.3 -3691;UNITED STATES OF AMERICA;MEDICINE LODGE;145.173;37.28;-98.58;448.1 -3692;UNITED STATES OF AMERICA;MINNEAPOLIS;145.363;39.12;-97.70;402.9 -3693;UNITED STATES OF AMERICA;NORTON 9SSE;145.856;39.74;-99.84;719.3 -3694;UNITED STATES OF AMERICA;OBERLIN;145.906;39.82;-100.53;795.5 -3695;UNITED STATES OF AMERICA;OLATHE 3E;145.972;38.89;-94.76;321.6 -3696;UNITED STATES OF AMERICA;OTTAWA;146.128;38.61;-95.28;280.1 -3697;UNITED STATES OF AMERICA;SAINT FRANCIS;147.93;39.77;-101.81;1024.7 -3698;UNITED STATES OF AMERICA;SCOTT CITY;147.271;38.48;-100.92;905.3 -3699;UNITED STATES OF AMERICA;SEDAN;147.305;37.13;-96.19;274.3 -3700;UNITED STATES OF AMERICA;SMITH CTR;147.542;39.78;-98.78;542.5 -3701;UNITED STATES OF AMERICA;WAKEENEY;148.495;39.03;-99.88;749.8 -3702;UNITED STATES OF AMERICA;ASHLAND;150.254;38.45;-82.61;170.7 -3703;UNITED STATES OF AMERICA;BARBOURVILLE;150.381;36.88;-83.88;301.8 -3704;UNITED STATES OF AMERICA;BEREA COLLEGE;150.619;37.57;-84.29;326.1 -3705;UNITED STATES OF AMERICA;BOWLING GREEN RGNL AP;150.909;36.96;-86.42;160.9 -3706;UNITED STATES OF AMERICA;FARMERS 2 S;152.791;38.12;-83.55;207.3 -3707;UNITED STATES OF AMERICA;FRANKFORT DOWNTOWN;153.28;38.20;-84.88;140.8 -3708;UNITED STATES OF AMERICA;GREENSBURG;153.430;37.26;-85.50;179.8 -3709;UNITED STATES OF AMERICA;HENDERSON 8 SSW;153.762;37.76;-87.65;136.9 -3710;UNITED STATES OF AMERICA;HOPKINSVILLE;153.994;36.85;-87.52;158.5 -3711;UNITED STATES OF AMERICA;LEITCHFIELD 2 N;154.703;37.51;-86.29;189 -3712;UNITED STATES OF AMERICA;SHELBYVILLE 1 E;157.324;38.20;-85.20;222.5 -3713;UNITED STATES OF AMERICA;WILLIAMSBURG;158.709;36.73;-84.15;286.5 -3714;UNITED STATES OF AMERICA;WILLIAMSTOWN 3 W;158.714;38.66;-84.61;286.5 -3715;UNITED STATES OF AMERICA;ALEXANDRIA;160.98;31.32;-92.46;26.5 -3716;UNITED STATES OF AMERICA;AMITE;160.205;30.71;-90.53;51.8 -3717;UNITED STATES OF AMERICA;BASTROP;160.537;32.77;-92.01;45.7 -3718;UNITED STATES OF AMERICA;BATON ROUGE METRO AP;160.549;30.54;-91.15;19.5 -3719;UNITED STATES OF AMERICA;BUNKIE;161.287;30.96;-92.18;24.4 -3720;UNITED STATES OF AMERICA;CALHOUN RSCH STN;161.411;32.51;-92.35;54.9 -3721;UNITED STATES OF AMERICA;COVINGTON 4 NNW;162.151;30.53;-90.11;12.2 -3722;UNITED STATES OF AMERICA;DONALDSONVILLE 4 SW;162.534;30.07;-91.03;9.1 -3723;UNITED STATES OF AMERICA;FRANKLIN 3 NW;163.313;29.82;-91.54;3.7 -3724;UNITED STATES OF AMERICA;GRAND COTEAU;163.800;30.42;-92.04;16.8 -3725;UNITED STATES OF AMERICA;HOUMA;164.407;29.59;-90.73;4.6 -3726;UNITED STATES OF AMERICA;JENNINGS;164.700;30.20;-92.66;7.6 -3727;UNITED STATES OF AMERICA;LAFAYETTE FCWOS;165.26;30.20;-91.99;11.6 -3728;UNITED STATES OF AMERICA;NEW ORLEANS AUDUBON;166.664;29.92;-90.13;6.1 -3729;UNITED STATES OF AMERICA;PLAIN DEALING 4 W;167.344;32.91;-93.80;88.4 -3730;UNITED STATES OF AMERICA;ST JOSEPH 3 N;168.163;31.95;-91.23;23.8 -3731;UNITED STATES OF AMERICA;THIBODAUX 3 ESE;169.13;29.78;-90.78;4.6 -3732;UNITED STATES OF AMERICA;WINNSBORO 5 SSE;169.806;32.10;-91.70;24.4 -3733;UNITED STATES OF AMERICA;ACADIA NP;170.100;44.37;-68.26;143.3 -3734;UNITED STATES OF AMERICA;BRASSUA DAM;170.814;45.66;-69.81;323.1 -3735;UNITED STATES OF AMERICA;CORINNA;171.628;44.92;-69.24;90.5 -3736;UNITED STATES OF AMERICA;EASTPORT;172.426;44.91;-66.99;25.9 -3737;UNITED STATES OF AMERICA;FARMINGTON;172.765;44.69;-70.16;128 -3738;UNITED STATES OF AMERICA;GARDINER;173.46;44.22;-69.79;42.7 -3739;UNITED STATES OF AMERICA;HOULTON 5N;173.944;46.21;-67.84;118.9 -3740;UNITED STATES OF AMERICA;LEWISTON;174.566;44.10;-70.22;54.9 -3741;UNITED STATES OF AMERICA;MILLINOCKET;175.304;45.65;-68.71;109.7 -3742;UNITED STATES OF AMERICA;PORTLAND JETPORT;176.905;43.65;-70.30;13.7 -3743;UNITED STATES OF AMERICA;PRESQUE ISLE;176.937;46.65;-68.01;182.6 -3744;UNITED STATES OF AMERICA;WOODLAND;179.891;45.16;-67.40;42.7 -3745;UNITED STATES OF AMERICA;BELTSVILLE;180.700;39.03;-76.93;44.2 -3746;UNITED STATES OF AMERICA;CAMBRIDGE WATER TRMT P;181.385;38.57;-76.07;3 -3747;UNITED STATES OF AMERICA;CHESTERTOWN;181.750;39.22;-76.05;12.2 -3748;UNITED STATES OF AMERICA;CUMBERLAND 2;182.282;39.64;-78.76;222.5 -3749;UNITED STATES OF AMERICA;DENTON 2 E;182.523;38.88;-75.80;14.9 -3750;UNITED STATES OF AMERICA;GLENN DALE BELL STN;183.675;38.97;-76.80;45.7 -3751;UNITED STATES OF AMERICA;LAUREL 3 W;185.111;39.08;-76.90;121.9 -3752;UNITED STATES OF AMERICA;MD SCI CTR BALTIMORE;185.718;39.28;-76.61;6.1 -3753;UNITED STATES OF AMERICA;MILLINGTON 1 SE;185.985;39.27;-75.87;9.1 -3754;UNITED STATES OF AMERICA;OAKLAND 1 SE;186.620;39.41;-79.40;737.6 -3755;UNITED STATES OF AMERICA;OWINGS FERRY LANDING;186.770;38.68;-76.67;48.8 -3756;UNITED STATES OF AMERICA;PRINCESS ANNE;187.330;38.21;-75.68;6.1 -3757;UNITED STATES OF AMERICA;ROYAL OAK 2 SSW;187.806;38.71;-76.19;3 -3758;UNITED STATES OF AMERICA;SALISBURY;188;38.37;-75.59;3 -3759;UNITED STATES OF AMERICA;WESTMINSTER POL BRKS;189.440;39.55;-76.97;233.2 -3760;UNITED STATES OF AMERICA;WOODSTOCK;189.750;39.33;-76.87;140.2 -3761;UNITED STATES OF AMERICA;AMHERST;190.120;42.39;-72.54;45.7 -3762;UNITED STATES OF AMERICA;BEDFORD;190.535;42.48;-71.28;48.8 -3763;UNITED STATES OF AMERICA;BLUE HILL;190.736;42.21;-71.11;192 -3764;UNITED STATES OF AMERICA;GREAT BARRINGTON 5 SW;193.213;42.15;-73.42;249 -3765;UNITED STATES OF AMERICA;LAWRENCE;194.105;42.70;-71.17;15.2 -3766;UNITED STATES OF AMERICA;NEW BEDFORD;195.246;41.63;-70.93;21.3 -3767;UNITED STATES OF AMERICA;PLYMOUTH-KINGSTON;196.486;41.98;-70.70;13.7 -3768;UNITED STATES OF AMERICA;PROVINCETOWN;196.681;42.05;-70.18;6.1 -3769;UNITED STATES OF AMERICA;READING;196.783;42.52;-71.13;27.4 -3770;UNITED STATES OF AMERICA;TAUNTON;198.367;41.90;-71.07;6.1 -3771;UNITED STATES OF AMERICA;WALPOLE 2;198.757;42.16;-71.25;50.3 -3772;UNITED STATES OF AMERICA;WEST MEDWAY;199.316;42.13;-71.43;64 -3773;UNITED STATES OF AMERICA;ADRIAN 2 NNE;200.32;41.92;-84.02;231.6 -3774;UNITED STATES OF AMERICA;ALLEGAN 5NE;200.128;42.58;-85.79;228.6 -3775;UNITED STATES OF AMERICA;ALMA;200.146;43.39;-84.65;224 -3776;UNITED STATES OF AMERICA;ANN ARBOR U OF;200.230;42.29;-83.71;274.3 -3777;UNITED STATES OF AMERICA;BIG RAPIDS WTR WKS;200.779;43.71;-85.48;283.5 -3778;UNITED STATES OF AMERICA;CHAMPION VAN RIPER PK;201.439;46.52;-87.99;487.4 -3779;UNITED STATES OF AMERICA;CHATHAM EXP FARM 2;201.486;46.34;-86.92;265.2 -3780;UNITED STATES OF AMERICA;CHEBOYGAN;201.492;45.65;-84.47;179.2 -3781;UNITED STATES OF AMERICA;COLDWATER ST SCHOOL;201.675;41.96;-84.99;299.9 -3782;UNITED STATES OF AMERICA;EAST TAWAS;202.423;44.28;-83.50;178.6 -3783;UNITED STATES OF AMERICA;FAYETTE 4 SW;202.737;45.67;-86.72;227.1 -3784;UNITED STATES OF AMERICA;HART 3 WSW;203.632;43.67;-86.42;234.7 -3785;UNITED STATES OF AMERICA;HILLSDALE;203.823;41.94;-84.64;329.2 -3786;UNITED STATES OF AMERICA;IRON MT KINGSFORD WWTP;204.90;45.79;-88.08;326.4 -3787;UNITED STATES OF AMERICA;IRONWOOD;204.104;46.47;-90.19;435.9 -3788;UNITED STATES OF AMERICA;KALAMAZOO STATE HOSP;204.244;42.28;-85.60;289.6 -3789;UNITED STATES OF AMERICA;MIDLAND;205.434;43.61;-84.20;195.1 -3790;UNITED STATES OF AMERICA;MT CLEMENS ANG BASE;205.650;42.61;-82.82;176.8 -3791;UNITED STATES OF AMERICA;MT PLEASANT UNIV;205.662;43.59;-84.77;242.6 -3792;UNITED STATES OF AMERICA;MUNISING;205.690;46.41;-86.66;207.3 -3793;UNITED STATES OF AMERICA;NEWBERRY 3S;205.816;46.31;-85.51;259.1 -3794;UNITED STATES OF AMERICA;OWOSSO WWTP;206.300;43.02;-84.18;222.5 -3795;UNITED STATES OF AMERICA;SOUTH HAVEN;207.690;42.40;-86.28;189 -3796;UNITED STATES OF AMERICA;STAMBAUGH 2SSE;207.812;46.06;-88.63;442 -3797;UNITED STATES OF AMERICA;ADA;210.18;47.30;-96.52;276.5 -3798;UNITED STATES OF AMERICA;ALBERT LEA 3 SE;210.75;43.61;-93.30;374.9 -3799;UNITED STATES OF AMERICA;ARGYLE;210.252;48.33;-96.83;258.2 -3800;UNITED STATES OF AMERICA;BAUDETTE;210.515;48.71;-94.59;323.7 -3801;UNITED STATES OF AMERICA;CHASKA;211.465;44.80;-93.58;219.5 -3802;UNITED STATES OF AMERICA;CLOQUET;211.630;46.70;-92.53;385.6 -3803;UNITED STATES OF AMERICA;DETROIT LAKES 1 NNE;212.142;46.84;-95.84;413 -3804;UNITED STATES OF AMERICA;EVELETH WWTP;212.645;47.46;-92.53;440.4 -3805;UNITED STATES OF AMERICA;FAIRMONT;212.698;43.64;-94.47;361.8 -3806;UNITED STATES OF AMERICA;FARMINGTON 3 NW;212.737;44.67;-93.17;298.7 -3807;UNITED STATES OF AMERICA;FOSSTON 1 E;212.916;47.56;-95.72;399.3 -3808;UNITED STATES OF AMERICA;GRAND MEADOW;213.290;43.70;-92.56;411.5 -3809;UNITED STATES OF AMERICA;GRAND RPDS FOREST LAB;213.303;47.24;-93.50;399.3 -3810;UNITED STATES OF AMERICA;ITASCA UNIV OF MINN;214.106;47.23;-95.19;454.2 -3811;UNITED STATES OF AMERICA;LEECH LAKE;214.652;47.25;-94.22;396.8 -3812;UNITED STATES OF AMERICA;MARCELL 5NE;215.175;47.63;-93.65;422.8 -3813;UNITED STATES OF AMERICA;MILAN 1 NW;215.400;45.12;-95.93;310.9 -3814;UNITED STATES OF AMERICA;MINNEAPOLIS/ST PAUL AP;215.435;44.88;-93.23;265.8 -3815;UNITED STATES OF AMERICA;MONTEVIDEO 1 SW;215.563;44.94;-95.75;300.2 -3816;UNITED STATES OF AMERICA;MORA;215.615;45.88;-93.31;310.3 -3817;UNITED STATES OF AMERICA;MORRIS WC EXP STN;215.638;45.59;-95.87;347.5 -3818;UNITED STATES OF AMERICA;NEW ULM 2 SE;215.887;44.30;-94.49;271.3 -3819;UNITED STATES OF AMERICA;OLIVIA 3E;216.152;44.76;-94.93;335.3 -3820;UNITED STATES OF AMERICA;PARK RAPIDS 2 S;216.360;46.90;-95.07;437.1 -3821;UNITED STATES OF AMERICA;PINE RIVER DAM;216.547;46.67;-94.11;381 -3822;UNITED STATES OF AMERICA;PIPESTONE;216.565;44.01;-96.33;519.7 -3823;UNITED STATES OF AMERICA;ROSEAU;217.87;48.85;-95.77;319.1 -3824;UNITED STATES OF AMERICA;ST PETER;217.405;44.32;-93.97;259.1 -3825;UNITED STATES OF AMERICA;SANDY LAKE DAM LIBBY;217.460;46.80;-93.32;376.1 -3826;UNITED STATES OF AMERICA;TWO HARBORS;218.419;47.03;-91.67;190.5 -3827;UNITED STATES OF AMERICA;WALKER AH GWAH CHING;218.618;47.07;-94.57;429.8 -3828;UNITED STATES OF AMERICA;WINNEBAGO;219.46;43.77;-94.19;338.3 -3829;UNITED STATES OF AMERICA;ZUMBROTA;219.249;44.30;-92.67;300.2 -3830;UNITED STATES OF AMERICA;ABERDEEN;220.21;33.83;-88.52;60.4 -3831;UNITED STATES OF AMERICA;BATESVILLE 2 SW;220.488;34.31;-89.98;67.1 -3832;UNITED STATES OF AMERICA;BOONEVILLE;220.955;34.66;-88.58;149.4 -3833;UNITED STATES OF AMERICA;BROOKHAVEN CITY;221.94;31.54;-90.46;132.6 -3834;UNITED STATES OF AMERICA;CANTON 4N;221.389;32.67;-90.04;76.2 -3835;UNITED STATES OF AMERICA;CLARKSDALE;221.707;34.19;-90.56;52.7 -3836;UNITED STATES OF AMERICA;COLUMBIA;221.865;31.25;-89.84;45.7 -3837;UNITED STATES OF AMERICA;COLUMBUS;221.880;33.47;-88.38;44.2 -3838;UNITED STATES OF AMERICA;CORINTH 7 SW;221.962;34.88;-88.62;117.3 -3839;UNITED STATES OF AMERICA;CRYSTAL SPGS EXP STN;222.94;31.95;-90.38;148.4 -3840;UNITED STATES OF AMERICA;FOREST;223.107;32.36;-89.42;137.2 -3841;UNITED STATES OF AMERICA;GREENVILLE;223.605;33.36;-91.06;38.1 -3842;UNITED STATES OF AMERICA;HATTIESBURG 5SW;223.887;31.25;-89.34;117.3 -3843;UNITED STATES OF AMERICA;HERNANDO;223.975;34.82;-89.99;115.8 -3844;UNITED STATES OF AMERICA;HOLLY SPRINGS 4 N;224.173;34.82;-89.43;147.2 -3845;UNITED STATES OF AMERICA;KOSCIUSKO;224.776;33.06;-89.58;125 -3846;UNITED STATES OF AMERICA;LAUREL;224.939;31.68;-89.12;68.6 -3847;UNITED STATES OF AMERICA;LOUISVILLE;225.247;33.14;-89.07;177.1 -3848;UNITED STATES OF AMERICA;MONTICELLO;225.987;31.55;-90.11;58.2 -3849;UNITED STATES OF AMERICA;MOORHEAD;226.9;33.45;-90.51;35.7 -3850;UNITED STATES OF AMERICA;NATCHEZ;226.177;31.59;-91.34;59.4 -3851;UNITED STATES OF AMERICA;PASCAGOULA 3 NE;226.718;30.40;-88.48;3.7 -3852;UNITED STATES OF AMERICA;PONTOTOC EXP STN;227.111;34.14;-89.00;123.4 -3853;UNITED STATES OF AMERICA;POPLARVILLE EXP STN;227.128;30.84;-89.55;95.4 -3854;UNITED STATES OF AMERICA;PORT GIBSON 1 NE;227.132;31.99;-90.97;36.6 -3855;UNITED STATES OF AMERICA;STATE UNIV;228.374;33.47;-88.78;56.4 -3856;UNITED STATES OF AMERICA;UNIVERSITY;229.79;34.38;-89.54;124.4 -3857;UNITED STATES OF AMERICA;WATER VALLEY;229.400;34.16;-89.63;94.5 -3858;UNITED STATES OF AMERICA;WAVELAND;229.426;30.29;-89.38;2.4 -3859;UNITED STATES OF AMERICA;WAYNESBORO 2 W;229.439;31.68;-88.67;61 -3860;UNITED STATES OF AMERICA;WOODVILLE 4 ESE;229.793;31.09;-91.23;121.9 -3861;UNITED STATES OF AMERICA;YAZOO CITY 5 NNE;229.860;32.90;-90.38;32.6 -3862;UNITED STATES OF AMERICA;APPLETON CITY;230.204;38.19;-94.03;259.7 -3863;UNITED STATES OF AMERICA;BOWLING GREEN 1 E;230.856;39.34;-91.17;270.4 -3864;UNITED STATES OF AMERICA;BRUNSWICK;231.37;39.42;-93.13;201.8 -3865;UNITED STATES OF AMERICA;CARUTHERSVILLE;231.364;36.17;-89.66;82.3 -3866;UNITED STATES OF AMERICA;CLINTON;231.711;38.40;-93.77;234.7 -3867;UNITED STATES OF AMERICA;CONCEPTION;231.822;40.24;-94.68;337.7 -3868;UNITED STATES OF AMERICA;DONIPHAN;232.289;36.62;-90.81;88.1 -3869;UNITED STATES OF AMERICA;FARMINGTON;232.809;37.79;-90.41;282.9 -3870;UNITED STATES OF AMERICA;JEFFERSON CITY WTP;234.271;38.58;-92.18;204.2 -3871;UNITED STATES OF AMERICA;LAMAR;234.705;37.50;-94.27;298.7 -3872;UNITED STATES OF AMERICA;LEBANON 2W;234.825;37.69;-92.69;389.8 -3873;UNITED STATES OF AMERICA;LEES SUMMIT REED WR;234.850;38.88;-94.34;304.8 -3874;UNITED STATES OF AMERICA;LEXINGTON 3E;234.904;39.18;-93.86;251.5 -3875;UNITED STATES OF AMERICA;LOCKWOOD;235.27;37.39;-93.95;326.1 -3876;UNITED STATES OF AMERICA;MARBLE HILL;235.253;37.30;-89.97;118.9 -3877;UNITED STATES OF AMERICA;MEXICO;235.541;39.18;-91.89;244.4 -3878;UNITED STATES OF AMERICA;MOBERLY;235.671;39.42;-92.44;262.1 -3879;UNITED STATES OF AMERICA;MTN GROVE 2 N;235.834;37.15;-92.26;442 -3880;UNITED STATES OF AMERICA;NEOSHO;235.976;36.86;-94.36;308.2 -3881;UNITED STATES OF AMERICA;ROLLA UNI OF MISSOURI;237.263;37.96;-91.78;355.7 -3882;UNITED STATES OF AMERICA;SPICKARD 7 W;237.963;40.25;-93.72;266.7 -3883;UNITED STATES OF AMERICA;STEFFENVILLE;238.51;39.97;-91.89;210.3 -3884;UNITED STATES OF AMERICA;SWEET SPRINGS;238.223;38.97;-93.42;205.7 -3885;UNITED STATES OF AMERICA;TRUMAN DAM & RSVR;238.466;38.26;-93.40;192.6 -3886;UNITED STATES OF AMERICA;UNIONVILLE;238.523;40.47;-93.00;323.1 -3887;UNITED STATES OF AMERICA;WARRENTON 1 N;238.725;38.83;-91.14;252.1 -3888;UNITED STATES OF AMERICA;ANACONDA;240.199;46.13;-112.96;1609.3 -3889;UNITED STATES OF AMERICA;AUGUSTA;240.364;47.49;-112.40;1240.5 -3890;UNITED STATES OF AMERICA;BIG TIMBER;240.780;45.83;-109.95;1249.7 -3891;UNITED STATES OF AMERICA;BOZEMAN MONTANA ST U;241.44;45.66;-111.05;1497.5 -3892;UNITED STATES OF AMERICA;CASCADE 5 S;241.552;47.22;-111.71;1024.1 -3893;UNITED STATES OF AMERICA;CHINOOK;241.722;48.59;-109.23;737.6 -3894;UNITED STATES OF AMERICA;CHOTEAU;241.737;47.82;-112.19;1172 -3895;UNITED STATES OF AMERICA;CUT BANK AP;242.173;48.60;-112.38;1169.8 -3896;UNITED STATES OF AMERICA;DILLON WMCE;242.409;45.21;-112.64;1593.5 -3897;UNITED STATES OF AMERICA;EKALAKA;242.689;45.89;-104.55;1043.9 -3898;UNITED STATES OF AMERICA;ENNIS;242.793;45.34;-111.71;1509.7 -3899;UNITED STATES OF AMERICA;FLATWILLOW 4 ENE;243.13;46.85;-108.31;954.9 -3900;UNITED STATES OF AMERICA;FORKS 4 NNE;243.89;48.78;-107.45;792.2 -3901;UNITED STATES OF AMERICA;FT ASSINNIBOINE;243.110;48.50;-109.80;796.4 -3902;UNITED STATES OF AMERICA;FORTINE 1 N;243.139;48.78;-114.90;914.4 -3903;UNITED STATES OF AMERICA;GLASGOW INTL AP;243.558;48.21;-106.62;696.5 -3904;UNITED STATES OF AMERICA;GLENDIVE;243.581;47.11;-104.72;632.8 -3905;UNITED STATES OF AMERICA;GREAT FALLS AP;243.751;47.47;-111.38;1116.8 -3906;UNITED STATES OF AMERICA;HAMILTON;243.885;46.26;-114.16;1080.5 -3907;UNITED STATES OF AMERICA;HEBGEN DAM;244.38;44.87;-111.34;1977.8 -3908;UNITED STATES OF AMERICA;HELENA AP ASOS;244.55;46.61;-111.96;1166.8 -3909;UNITED STATES OF AMERICA;HUNTLEY EXP STN;244.345;45.92;-108.24;924.8 -3910;UNITED STATES OF AMERICA;HYSHAM 25 SSE;244.364;45.94;-107.14;944.9 -3911;UNITED STATES OF AMERICA;JORDAN;244.522;47.31;-106.91;798.6 -3912;UNITED STATES OF AMERICA;KALISPELL GLACIER AP;244.558;48.30;-114.26;901.3 -3913;UNITED STATES OF AMERICA;LIBBY 1 NE RS;245.15;48.40;-115.54;638.9 -3914;UNITED STATES OF AMERICA;LIVINGSTON 12 S;245.80;45.48;-110.57;1484.4 -3915;UNITED STATES OF AMERICA;MALTA 7 E;245.338;48.39;-107.73;680 -3916;UNITED STATES OF AMERICA;MEDICINE LAKE 3 SE;245.572;48.48;-104.45;591.9 -3917;UNITED STATES OF AMERICA;MILDRED 5 N;245.668;46.76;-104.96;757.1 -3918;UNITED STATES OF AMERICA;MILES CITY AP;245.690;46.43;-105.88;799.8 -3919;UNITED STATES OF AMERICA;MOCCASIN EXP STN;245.761;47.06;-109.95;1310.6 -3920;UNITED STATES OF AMERICA;NORRIS MADISON PH;246.157;45.49;-111.63;1446.3 -3921;UNITED STATES OF AMERICA;PHILIPSBURG RS;246.472;46.32;-113.30;1606.3 -3922;UNITED STATES OF AMERICA;PLEVNA;246.601;46.42;-104.52;847.3 -3923;UNITED STATES OF AMERICA;RED LODGE;246.918;45.18;-109.25;1718.2 -3924;UNITED STATES OF AMERICA;SAINT IGNATIUS;247.286;47.31;-114.10;883.9 -3925;UNITED STATES OF AMERICA;SAINT REGIS 1 NE;247.318;47.30;-115.09;810.8 -3926;UNITED STATES OF AMERICA;SAVAGE;247.382;47.45;-104.34;602 -3927;UNITED STATES OF AMERICA;VALIER;248.501;48.31;-112.25;1161.3 -3928;UNITED STATES OF AMERICA;VIDA 6 NE;248.569;47.88;-105.37;696.2 -3929;UNITED STATES OF AMERICA;VIRGINIA CITY;248.597;45.29;-111.95;1759.6 -3930;UNITED STATES OF AMERICA;WEST YELLOWSTONE;248.857;44.65;-111.10;2029.7 -3931;UNITED STATES OF AMERICA;WHITE SULPHUR SPRNGS 2;248.930;46.54;-110.90;1536.2 -3932;UNITED STATES OF AMERICA;ALBION;250.70;41.69;-98.00;545.6 -3933;UNITED STATES OF AMERICA;ALLIANCE 1WNW;250.130;42.11;-102.90;1217.4 -3934;UNITED STATES OF AMERICA;ASHLAND NO 2;250.375;41.04;-96.38;326.1 -3935;UNITED STATES OF AMERICA;ATKINSON 3SW;250.420;42.51;-99.03;637 -3936;UNITED STATES OF AMERICA;AUBURN 5 ESE;250.435;40.37;-95.75;283.5 -3937;UNITED STATES OF AMERICA;BEATRICE 1N;250.622;40.30;-96.75;395.3 -3938;UNITED STATES OF AMERICA;BEAVER CITY;250.640;40.13;-99.83;658.4 -3939;UNITED STATES OF AMERICA;BRIDGEPORT;251.145;41.67;-103.10;1117.4 -3940;UNITED STATES OF AMERICA;BROKEN BOW 2 W;251.200;41.41;-99.68;762 -3941;UNITED STATES OF AMERICA;CRETE;252.20;40.62;-96.95;437.4 -3942;UNITED STATES OF AMERICA;CURTIS 3NNE;252.100;40.67;-100.49;829.4 -3943;UNITED STATES OF AMERICA;DAVID CITY;252.205;41.25;-97.13;490.7 -3944;UNITED STATES OF AMERICA;FAIRBURY 5S;252.820;40.07;-97.17;411.5 -3945;UNITED STATES OF AMERICA;FAIRMONT;252.840;40.64;-97.59;499.9 -3946;UNITED STATES OF AMERICA;FRANKLIN;253.35;40.10;-98.97;565.4 -3947;UNITED STATES OF AMERICA;GENEVA;253.175;40.53;-97.60;496.8 -3948;UNITED STATES OF AMERICA;GENOA 2 W;253.185;41.45;-97.76;484.6 -3949;UNITED STATES OF AMERICA;GOTHENBURG;253.365;40.94;-100.15;787.9 -3950;UNITED STATES OF AMERICA;HARRISON;253.615;42.69;-103.88;1478.3 -3951;UNITED STATES OF AMERICA;HARTINGTON;253.630;42.62;-97.26;417.6 -3952;UNITED STATES OF AMERICA;HASTINGS 4N;253.660;40.65;-98.38;591.3 -3953;UNITED STATES OF AMERICA;HAY SPRINGS 12 S;253.715;42.51;-102.69;1159.8 -3954;UNITED STATES OF AMERICA;HEBRON;253.735;40.17;-97.59;451.1 -3955;UNITED STATES OF AMERICA;HOLDREGE;253.910;40.45;-99.38;707.1 -3956;UNITED STATES OF AMERICA;IMPERIAL;254.110;40.52;-101.65;999.7 -3957;UNITED STATES OF AMERICA;KIMBALL 2NE;254.440;41.25;-103.63;1435 -3958;UNITED STATES OF AMERICA;LODGEPOLE;254.900;41.15;-102.64;1168 -3959;UNITED STATES OF AMERICA;LOUP CITY;254.985;41.28;-98.97;627.3 -3960;UNITED STATES OF AMERICA;MADISON;255.80;41.83;-97.45;481.6 -3961;UNITED STATES OF AMERICA;MC COOK;255.310;40.22;-100.62;796.1 -3962;UNITED STATES OF AMERICA;MERRIMAN;255.470;42.92;-101.71;986 -3963;UNITED STATES OF AMERICA;MINDEN;255.565;40.52;-98.95;658.4 -3964;UNITED STATES OF AMERICA;NORTH LOUP;256.40;41.49;-98.77;597.4 -3965;UNITED STATES OF AMERICA;OAKDALE;256.135;42.07;-97.97;521.2 -3966;UNITED STATES OF AMERICA;PAWNEE CITY;256.570;40.12;-96.16;378 -3967;UNITED STATES OF AMERICA;PURDUM;256.970;42.06;-100.25;819.9 -3968;UNITED STATES OF AMERICA;RED CLOUD;257.70;40.10;-98.52;524.3 -3969;UNITED STATES OF AMERICA;SAINT PAUL 4N;257.515;41.27;-98.47;541 -3970;UNITED STATES OF AMERICA;SEWARD;257.715;40.90;-97.09;438.9 -3971;UNITED STATES OF AMERICA;STAPLETON 5W;258.133;41.46;-100.60;911.4 -3972;UNITED STATES OF AMERICA;SYRACUSE;258.395;40.68;-96.19;335.3 -3973;UNITED STATES OF AMERICA;TECUMSEH 1S;258.465;40.35;-96.19;338.3 -3974;UNITED STATES OF AMERICA;TEKAMAH;258.480;41.79;-96.23;338.3 -3975;UNITED STATES OF AMERICA;WAKEFIELD;258.915;42.27;-96.86;423.7 -3976;UNITED STATES OF AMERICA;WEEPING WATER;259.90;40.86;-96.14;335.3 -3977;UNITED STATES OF AMERICA;YORK;259.510;40.87;-97.59;490.7 -3978;UNITED STATES OF AMERICA;AUSTIN #2;260.507;39.49;-117.07;2066.5 -3979;UNITED STATES OF AMERICA;BATTLE MOUNTAIN 4SE;260.691;40.61;-116.89;1373.1 -3980;UNITED STATES OF AMERICA;BOULDER CITY;261.71;35.98;-114.85;762 -3981;UNITED STATES OF AMERICA;ELKO RGNL AP;262.573;40.83;-115.79;1533.1 -3982;UNITED STATES OF AMERICA;FALLON EXP STN;262.780;39.46;-118.78;1208.5 -3983;UNITED STATES OF AMERICA;GOLCONDA;263.245;40.96;-117.49;1339.3 -3984;UNITED STATES OF AMERICA;LOVELOCK;264.698;40.19;-118.48;1211.6 -3985;UNITED STATES OF AMERICA;MCGILL;264.950;39.41;-114.77;1911.1 -3986;UNITED STATES OF AMERICA;MINA;265.168;38.38;-118.11;1391.7 -3987;UNITED STATES OF AMERICA;RENO AP;266.779;39.48;-119.77;1344.2 -3988;UNITED STATES OF AMERICA;SEARCHLIGHT;267.369;35.47;-114.92;1079 -3989;UNITED STATES OF AMERICA;WELLS;268.988;41.10;-114.97;1737.4 -3990;UNITED STATES OF AMERICA;WINNEMUCCA AP;269.171;40.90;-117.81;1309.4 -3991;UNITED STATES OF AMERICA;BETHLEHEM 2;270.706;44.31;-71.66;359.7 -3992;UNITED STATES OF AMERICA;DURHAM;272.174;43.15;-70.95;24.4 -3993;UNITED STATES OF AMERICA;FIRST CONNECTICUT LAKE;272.999;45.09;-71.29;506 -3994;UNITED STATES OF AMERICA;HANOVER;273.850;43.70;-72.28;183.8 -3995;UNITED STATES OF AMERICA;KEENE;274.399;42.94;-72.32;158.5 -3996;UNITED STATES OF AMERICA;ATLANTIC CITY;280.325;39.38;-74.42;3 -3997;UNITED STATES OF AMERICA;BELVIDERE BRG;280.734;40.83;-75.08;80.2 -3998;UNITED STATES OF AMERICA;BOONTON 1 SE;280.907;40.90;-74.40;85.3 -3999;UNITED STATES OF AMERICA;CHARLOTTEBURG RSVR;281.582;41.03;-74.42;231.6 -4000;UNITED STATES OF AMERICA;FLEMINGTON 5 NNW;283.29;40.56;-74.88;79.2 -4001;UNITED STATES OF AMERICA;HIGHTSTOWN 2 W;283.951;40.26;-74.56;30.5 -4002;UNITED STATES OF AMERICA;INDIAN MILLS 2 W;284.229;39.81;-74.79;30.5 -4003;UNITED STATES OF AMERICA;LONG BRANCH OAKHURST;284.987;40.28;-74.00;9.1 -4004;UNITED STATES OF AMERICA;MOORESTOWN;285.728;39.95;-74.97;13.7 -4005;UNITED STATES OF AMERICA;NEW BRUNSWICK 3 SE;286.55;40.47;-74.44;26.2 -4006;UNITED STATES OF AMERICA;PLAINFIELD;287.79;40.60;-74.40;27.4 -4007;UNITED STATES OF AMERICA;TOMS RIVER;288.816;39.95;-74.22;30.5 -4008;UNITED STATES OF AMERICA;AZTEC RUINS NM;290.692;36.83;-108.00;1720.3 -4009;UNITED STATES OF AMERICA;BELL RANCH;290.858;35.53;-104.09;1371.6 -4010;UNITED STATES OF AMERICA;CARLSBAD;291.469;32.35;-104.22;951 -4011;UNITED STATES OF AMERICA;CARRIZOZO 1SW;291.515;33.63;-105.90;1647.4 -4012;UNITED STATES OF AMERICA;CHAMA;291.664;36.92;-106.58;2392.7 -4013;UNITED STATES OF AMERICA;CIMARRON 4 SW;291.813;36.47;-104.95;1993.4 -4014;UNITED STATES OF AMERICA;CLAYTON MUNI ARPK AP;291.887;36.45;-103.15;1511.8 -4015;UNITED STATES OF AMERICA;DULCE;292.608;36.94;-107.00;2070.5 -4016;UNITED STATES OF AMERICA;ELEPHANT BUTTE DAM;292.848;33.15;-107.18;1394.8 -4017;UNITED STATES OF AMERICA;FT BAYARD;293.265;32.79;-108.15;1872.1 -4018;UNITED STATES OF AMERICA;FT SUMNER;293.294;34.47;-104.23;1226.8 -4019;UNITED STATES OF AMERICA;GAGE;293.368;32.23;-108.09;1365.2 -4020;UNITED STATES OF AMERICA;JEMEZ SPRINGS;294.369;35.78;-106.69;1908.7 -4021;UNITED STATES OF AMERICA;JORNADA EXP RANGE;294.426;32.62;-106.74;1300.3 -4022;UNITED STATES OF AMERICA;LAS VEGAS WWTP;294.862;35.57;-105.21;1935.2 -4023;UNITED STATES OF AMERICA;LOS LUNAS 3 SSW;295.150;34.77;-106.76;1475.2 -4024;UNITED STATES OF AMERICA;LUNA RS;295.273;33.82;-108.94;2148.8 -4025;UNITED STATES OF AMERICA;MTN PARK;295.960;32.95;-105.82;2066.5 -4026;UNITED STATES OF AMERICA;MOUNTAINAIR;295.965;34.52;-106.26;1987.3 -4027;UNITED STATES OF AMERICA;OROGRANDE;296.435;32.38;-106.09;1274.7 -4028;UNITED STATES OF AMERICA;RED RIVER;297.323;36.71;-105.40;2644.4 -4029;UNITED STATES OF AMERICA;ROSWELL IND AP;297.610;33.31;-104.51;1112.2 -4030;UNITED STATES OF AMERICA;SAN JON;297.867;35.11;-103.33;1289.3 -4031;UNITED STATES OF AMERICA;SANTA ROSA;298.107;34.94;-104.68;1405.1 -4032;UNITED STATES OF AMERICA;SOCORRO;298.387;34.08;-106.88;1397.5 -4033;UNITED STATES OF AMERICA;SPRINGER;298.501;36.36;-104.58;1794.7 -4034;UNITED STATES OF AMERICA;STATE UNIV;298.535;32.28;-106.76;1182.9 -4035;UNITED STATES OF AMERICA;TUCUMCARI 4 NE;299.156;35.20;-103.69;1245.4 -4036;UNITED STATES OF AMERICA;TULAROSA;299.165;33.07;-106.04;1350.3 -4037;UNITED STATES OF AMERICA;ADDISON;300.23;42.10;-77.23;304.5 -4038;UNITED STATES OF AMERICA;ALBANY INTL AP;300.42;42.74;-73.81;83.8 -4039;UNITED STATES OF AMERICA;ALFRED;300.85;42.26;-77.79;539.5 -4040;UNITED STATES OF AMERICA;ALLEGANY SP;300.93;42.10;-78.75;457.2 -4041;UNITED STATES OF AMERICA;ANGELICA;300.183;42.30;-77.99;440.4 -4042;UNITED STATES OF AMERICA;AUBURN;300.321;42.93;-76.54;234.7 -4043;UNITED STATES OF AMERICA;BATAVIA;300.443;43.03;-78.17;278.3 -4044;UNITED STATES OF AMERICA;BINGHAMTON GREATER AP;300.687;42.21;-75.98;486.2 -4045;UNITED STATES OF AMERICA;BRIDGEHAMPTON;300.889;40.95;-72.31;18.3 -4046;UNITED STATES OF AMERICA;BROCKPORT;300.937;43.20;-77.93;163.1 -4047;UNITED STATES OF AMERICA;BUFFALO NIAGARA INTL;301.12;42.94;-78.74;214.9 -4048;UNITED STATES OF AMERICA;CANTON 4 SE;301.185;44.58;-75.11;136.6 -4049;UNITED STATES OF AMERICA;CHAZY;301.401;44.88;-73.40;47.9 -4050;UNITED STATES OF AMERICA;COOPERSTOWN;301.752;42.72;-74.93;383.1 -4051;UNITED STATES OF AMERICA;CORTLAND;301.799;42.60;-76.18;344.1 -4052;UNITED STATES OF AMERICA;DANNEMORA;301.966;44.72;-73.72;408.4 -4053;UNITED STATES OF AMERICA;DANSVILLE;301.974;42.57;-77.72;201.2 -4054;UNITED STATES OF AMERICA;DEPOSIT;302.60;42.06;-75.43;304.8 -4055;UNITED STATES OF AMERICA;DOBBS FERRY ARDSLEY;302.129;41.01;-73.83;61 -4056;UNITED STATES OF AMERICA;ELMIRA;302.610;42.10;-76.84;288.6 -4057;UNITED STATES OF AMERICA;FREDONIA;303.33;42.45;-79.31;231.6 -4058;UNITED STATES OF AMERICA;GENEVA RSCH FARM;303.184;42.88;-77.03;218.8 -4059;UNITED STATES OF AMERICA;GLENHAM;303.259;41.52;-73.93;83.8 -4060;UNITED STATES OF AMERICA;GLOVERSVILLE;303.319;43.05;-74.36;246.9 -4061;UNITED STATES OF AMERICA;HEMLOCK;303.773;42.77;-77.61;274.9 -4062;UNITED STATES OF AMERICA;INDIAN LAKE 2SW;304.102;43.76;-74.27;506 -4063;UNITED STATES OF AMERICA;ITHACA CORNELL UNIV;304.174;42.45;-76.45;292.6 -4064;UNITED STATES OF AMERICA;LAKE PLACID 2 S;304.555;44.24;-73.98;591.3 -4065;UNITED STATES OF AMERICA;LAWRENCEVILLE 3 SW;304.647;44.76;-74.67;142 -4066;UNITED STATES OF AMERICA;LITTLE FALLS CITY RSVR;304.791;43.06;-74.87;274.3 -4067;UNITED STATES OF AMERICA;LITTLE FALLS MILL ST;304.796;43.03;-74.87;109.7 -4068;UNITED STATES OF AMERICA;LOCKPORT 3 S;304.844;43.14;-78.68;184.4 -4069;UNITED STATES OF AMERICA;LOWVILLE;304.912;43.80;-75.48;262.1 -4070;UNITED STATES OF AMERICA;MALONE;304.996;44.84;-74.31;268.2 -4071;UNITED STATES OF AMERICA;MARYLAND 9 SW;305.113;42.47;-75.01;373.4 -4072;UNITED STATES OF AMERICA;MOHONK LAKE;305.426;41.77;-74.15;379.5 -4073;UNITED STATES OF AMERICA;MORRISVILLE 6 SW;305.512;42.84;-75.73;396.2 -4074;UNITED STATES OF AMERICA;NY CITY CNTRL PARK;305.801;40.78;-73.97;39.6 -4075;UNITED STATES OF AMERICA;NORWICH;306.85;42.51;-75.52;301.4 -4076;UNITED STATES OF AMERICA;OGDENSBURG 4 NE;306.164;44.73;-75.44;85.3 -4077;UNITED STATES OF AMERICA;OSWEGO EAST;306.314;43.46;-76.49;106.7 -4078;UNITED STATES OF AMERICA;PORT JERVIS;306.774;41.38;-74.68;143.3 -4079;UNITED STATES OF AMERICA;POUGHKEEPSIE;306.820;41.60;-73.91;51.8 -4080;UNITED STATES OF AMERICA;ROCHESTER INTL AP;307.167;43.12;-77.68;162.5 -4081;UNITED STATES OF AMERICA;SARATOGA SPRINGS 4 SW;307.484;43.03;-73.82;94.5 -4082;UNITED STATES OF AMERICA;SETAUKET STRONG;307.633;40.96;-73.10;12.2 -4083;UNITED STATES OF AMERICA;STILLWATER RSVR;308.248;42.69;-73.83;515.1 -4084;UNITED STATES OF AMERICA;SYRACUSE WSO AP;308.383;43.11;-76.10;125 -4085;UNITED STATES OF AMERICA;TROY L&D;308.600;42.75;-73.68;7.3 -4086;UNITED STATES OF AMERICA;TUPPER LAKE SUNMOUNT;308.631;44.23;-74.44;512.1 -4087;UNITED STATES OF AMERICA;UTICA FAA AP;308.737;43.15;-75.38;216.7 -4088;UNITED STATES OF AMERICA;WALDEN 1 ESE;308.906;41.55;-74.16;115.8 -4089;UNITED STATES OF AMERICA;WALES;308.910;42.74;-78.51;332.2 -4090;UNITED STATES OF AMERICA;WANAKENA RNGR SCHOOL;308.944;44.15;-74.90;460.2 -4091;UNITED STATES OF AMERICA;WATERTOWN;309;43.98;-75.88;151.5 -4092;UNITED STATES OF AMERICA;WEST POINT;309.292;41.39;-73.96;97.5 -4093;UNITED STATES OF AMERICA;YORKTOWN HEIGHTS 1 W;309.670;41.27;-73.80;204.2 -4094;UNITED STATES OF AMERICA;ALBEMARLE;310.90;35.40;-80.20;185.9 -4095;UNITED STATES OF AMERICA;CAPE HATTERAS AP;311.458;35.23;-75.62;3.4 -4096;UNITED STATES OF AMERICA;CHAPEL HILL 2 W;311.677;35.91;-79.08;152.4 -4097;UNITED STATES OF AMERICA;EDENTON;312.635;36.02;-76.55;3 -4098;UNITED STATES OF AMERICA;ELIZABETH CITY;312.719;36.31;-76.21;2.4 -4099;UNITED STATES OF AMERICA;FAYETTEVILLE PWC;313.17;35.06;-78.86;29.3 -4100;UNITED STATES OF AMERICA;GOLDSBORO 4 SE;313.510;35.34;-77.96;33.2 -4101;UNITED STATES OF AMERICA;HENDERSON 2 NNW;313.969;36.35;-78.41;146.3 -4102;UNITED STATES OF AMERICA;HENDERSONVILLE 1 NE;313.976;35.33;-82.45;658.4 -4103;UNITED STATES OF AMERICA;HIGHLANDS;314.55;35.05;-83.19;1170.4 -4104;UNITED STATES OF AMERICA;KINSTON 7 SE;314.684;35.20;-77.54;7.3 -4105;UNITED STATES OF AMERICA;LENOIR;314.938;35.92;-81.54;365.8 -4106;UNITED STATES OF AMERICA;LOUISBURG;315.123;36.10;-78.30;79.2 -4107;UNITED STATES OF AMERICA;LUMBERTON;315.177;34.63;-79.03;34.1 -4108;UNITED STATES OF AMERICA;MARION 2 NW;315.340;35.66;-82.03;446.8 -4109;UNITED STATES OF AMERICA;MARSHALL;315.356;35.80;-82.67;609.6 -4110;UNITED STATES OF AMERICA;MONROE 2 SE;315.771;34.98;-80.52;167.6 -4111;UNITED STATES OF AMERICA;MOREHEAD CITY 2 WNW;315.830;34.73;-76.74;3 -4112;UNITED STATES OF AMERICA;MORGANTON;315.838;35.73;-81.67;353.6 -4113;UNITED STATES OF AMERICA;MT AIRY 2 W;315.890;36.50;-80.65;317.3 -4114;UNITED STATES OF AMERICA;REIDSVILLE 2 NW;317.202;36.38;-79.69;271.3 -4115;UNITED STATES OF AMERICA;SALISBURY;317.615;35.68;-80.48;213.4 -4116;UNITED STATES OF AMERICA;SMITHFIELD;317.994;35.52;-78.35;45.7 -4117;UNITED STATES OF AMERICA;SOUTHPORT 5 N;318.113;33.99;-78.01;6.1 -4118;UNITED STATES OF AMERICA;STATESVILLE 2 NNE;318.292;35.81;-80.88;289.6 -4119;UNITED STATES OF AMERICA;TARBORO 1 S;318.500;35.88;-77.54;10.7 -4120;UNITED STATES OF AMERICA;TRANSOU;318.694;36.39;-81.30;876.3 -4121;UNITED STATES OF AMERICA;WAYNESVILLE 1 E;319.147;35.49;-82.97;810.2 -4122;UNITED STATES OF AMERICA;WILSON 3 SW;319.476;35.69;-77.95;33.5 -4123;UNITED STATES OF AMERICA;BOTTINEAU;320.941;48.82;-100.44;496.2 -4124;UNITED STATES OF AMERICA;CASSELTON AGRONOMY FM;321.408;46.88;-97.23;285 -4125;UNITED STATES OF AMERICA;CROSBY;321.871;48.91;-103.29;595 -4126;UNITED STATES OF AMERICA;DICKINSON EXP STN;322.188;46.89;-102.81;749.8 -4127;UNITED STATES OF AMERICA;DUNN CENTER 1E;322.365;47.35;-102.59;671.8 -4128;UNITED STATES OF AMERICA;FT YATES 4 SW;323.207;46.05;-100.67;510.5 -4129;UNITED STATES OF AMERICA;FULLERTON 1 ESE;323.287;46.16;-98.40;437.4 -4130;UNITED STATES OF AMERICA;GRAFTON;323.594;48.42;-97.42;252.1 -4131;UNITED STATES OF AMERICA;GRAND FORKS UNIV NWS;323.621;47.92;-97.10;253 -4132;UNITED STATES OF AMERICA;HETTINGER;324.178;45.99;-102.64;816.9 -4133;UNITED STATES OF AMERICA;HILLSBORO 3 N;324.203;47.44;-97.07;277.4 -4134;UNITED STATES OF AMERICA;JAMESTOWN STATE HOSP;324.418;46.88;-98.68;447.1 -4135;UNITED STATES OF AMERICA;LANGDON EXP FARM;324.958;48.76;-98.34;492.3 -4136;UNITED STATES OF AMERICA;LISBON;325.220;46.45;-97.68;336.5 -4137;UNITED STATES OF AMERICA;MANDAN EXP STN;325.479;46.81;-100.91;533.4 -4138;UNITED STATES OF AMERICA;MOFFIT 3 SE;326.15;46.67;-100.23;548.6 -4139;UNITED STATES OF AMERICA;MOTT;326.155;46.37;-102.32;772.7 -4140;UNITED STATES OF AMERICA;NAPOLEON;326.255;46.51;-99.77;603.5 -4141;UNITED STATES OF AMERICA;NEW ENGLAND;326.315;46.54;-102.87;804.4 -4142;UNITED STATES OF AMERICA;PEMBINA;326.947;48.97;-97.24;240.8 -4143;UNITED STATES OF AMERICA;RICHARDTON ABBEY;327.530;46.89;-102.32;752.9 -4144;UNITED STATES OF AMERICA;TOWNER 2 NE;328.792;48.37;-100.39;451.1 -4145;UNITED STATES OF AMERICA;WAHPETON 3 N;329.100;46.32;-96.61;291.4 -4146;UNITED STATES OF AMERICA;WILLOW CITY;329.445;48.61;-100.29;449 -4147;UNITED STATES OF AMERICA;BUCYRUS;331.72;40.81;-82.97;291.1 -4148;UNITED STATES OF AMERICA;CADIZ;331.152;40.27;-81.00;384 -4149;UNITED STATES OF AMERICA;CHIPPEWA LAKE;331.541;41.05;-81.94;359.7 -4150;UNITED STATES OF AMERICA;CIRCLEVILLE;331.592;39.61;-82.95;205.1 -4151;UNITED STATES OF AMERICA;COSHOCTON WPC PLT;331.890;40.24;-81.87;231.6 -4152;UNITED STATES OF AMERICA;DEFIANCE;332.98;41.28;-84.39;213.4 -4153;UNITED STATES OF AMERICA;DELAWARE;332.119;40.32;-83.07;280.4 -4154;UNITED STATES OF AMERICA;FINDLAY WPCC;332.791;41.05;-83.66;234.1 -4155;UNITED STATES OF AMERICA;GREENVILLE WTP;333.375;40.10;-84.65;312.1 -4156;UNITED STATES OF AMERICA;HILLSBORO;333.758;39.20;-83.62;335.3 -4157;UNITED STATES OF AMERICA;HIRAM;333.780;41.30;-81.15;374.9 -4158;UNITED STATES OF AMERICA;KENTON;334.189;40.65;-83.61;303.3 -4159;UNITED STATES OF AMERICA;MC CONNELLSVILLE LK 7;335.41;39.65;-81.86;231.6 -4160;UNITED STATES OF AMERICA;MILLERSBURG;335.297;40.55;-81.92;249.6 -4161;UNITED STATES OF AMERICA;MILLPORT 4 NE;335.315;40.77;-80.86;356.6 -4162;UNITED STATES OF AMERICA;NORWALK WWTP;336.118;41.27;-82.62;204.2 -4163;UNITED STATES OF AMERICA;OBERLIN;336.196;41.27;-82.22;248.7 -4164;UNITED STATES OF AMERICA;PHILO 3 SW;336.600;39.84;-81.92;310.9 -4165;UNITED STATES OF AMERICA;PORTSMOUTH-SCIOTOVILLE;336.781;38.76;-82.89;164.6 -4166;UNITED STATES OF AMERICA;TIFFIN;338.313;41.12;-83.17;225.6 -4167;UNITED STATES OF AMERICA;UPPER SANDUSKY;338.534;40.83;-83.28;260.3 -4168;UNITED STATES OF AMERICA;URBANA WWTP;338.552;40.10;-83.78;304.8 -4169;UNITED STATES OF AMERICA;WARREN 3 S;338.769;41.20;-80.82;274.3 -4170;UNITED STATES OF AMERICA;WAUSEON WTP;338.822;41.52;-84.15;228.6 -4171;UNITED STATES OF AMERICA;WAVERLY;338.830;39.11;-82.98;170.7 -4172;UNITED STATES OF AMERICA;WOOSTER EXP STN;339.312;40.78;-81.92;310.9 -4173;UNITED STATES OF AMERICA;ADA;340.17;34.79;-96.68;309.4 -4174;UNITED STATES OF AMERICA;ALTUS IRIG RSCH STN;340.179;34.59;-99.33;420.6 -4175;UNITED STATES OF AMERICA;ANTLERS;340.256;34.22;-95.61;143.3 -4176;UNITED STATES OF AMERICA;ARDMORE;340.292;34.17;-97.13;268.2 -4177;UNITED STATES OF AMERICA;BARTLESVILLE MUNI AP;340.548;36.77;-96.03;217.9 -4178;UNITED STATES OF AMERICA;BEAVER;340.593;36.81;-100.53;751.3 -4179;UNITED STATES OF AMERICA;BOISE CITY 2 E;340.908;36.72;-102.48;1259.7 -4180;UNITED STATES OF AMERICA;BUFFALO 2 SSW;341.243;36.80;-99.64;588.3 -4181;UNITED STATES OF AMERICA;CARNEGIE 5 NE;341.504;35.18;-98.58;451.4 -4182;UNITED STATES OF AMERICA;CHEROKEE;341.724;36.77;-98.36;359.7 -4183;UNITED STATES OF AMERICA;CLAREMORE 2 ENE;341.828;36.32;-95.58;179.2 -4184;UNITED STATES OF AMERICA;DURANT;342.678;34.00;-96.37;182.9 -4185;UNITED STATES OF AMERICA;ENID;342.912;36.42;-97.87;379.5 -4186;UNITED STATES OF AMERICA;ERICK;342.944;35.22;-99.86;627.9 -4187;UNITED STATES OF AMERICA;GEARY;343.497;35.63;-98.32;487.7 -4188;UNITED STATES OF AMERICA;GOODWELL RSCH STN;343.628;36.59;-101.62;1008.9 -4189;UNITED STATES OF AMERICA;GUTHRIE 5S;343.821;35.82;-97.39;338.3 -4190;UNITED STATES OF AMERICA;HAMMON 3 SSW;343.871;35.58;-99.40;554.7 -4191;UNITED STATES OF AMERICA;HENNESSEY 4 ESE;344.55;36.09;-97.83;357.8 -4192;UNITED STATES OF AMERICA;HOBART MUNI AP;344.204;34.99;-99.05;474.3 -4193;UNITED STATES OF AMERICA;HOLDENVILLE 2SSE;344.235;35.06;-96.39;260.6 -4194;UNITED STATES OF AMERICA;HOOKER;344.298;36.86;-101.22;912.9 -4195;UNITED STATES OF AMERICA;JEFFERSON;344.573;36.72;-97.79;318.5 -4196;UNITED STATES OF AMERICA;KENTON;344.766;36.90;-102.96;1325.9 -4197;UNITED STATES OF AMERICA;KINGFISHER;344.861;35.86;-97.93;320 -4198;UNITED STATES OF AMERICA;LAWTON;345.63;34.61;-98.46;350.5 -4199;UNITED STATES OF AMERICA;MANGUM;345.509;34.89;-99.50;486.2 -4200;UNITED STATES OF AMERICA;MEEKER 5 W;345.779;35.51;-96.98;281.9 -4201;UNITED STATES OF AMERICA;MIAMI;345.855;36.88;-94.88;245.4 -4202;UNITED STATES OF AMERICA;MUSKOGEE;346.130;35.78;-95.33;157.9 -4203;UNITED STATES OF AMERICA;MUTUAL;346.139;36.23;-99.17;576.1 -4204;UNITED STATES OF AMERICA;NEWKIRK 1NW;346.278;36.89;-97.06;347.5 -4205;UNITED STATES OF AMERICA;OKEENE;346.629;36.12;-98.32;370.3 -4206;UNITED STATES OF AMERICA;OKEMAH;346.638;35.43;-96.30;285 -4207;UNITED STATES OF AMERICA;OKMULGEE WTR WKS;346.670;35.62;-96.03;197.2 -4208;UNITED STATES OF AMERICA;PAULS VALLEY 4 WSW;346.926;34.73;-97.28;286.5 -4209;UNITED STATES OF AMERICA;PAWHUSKA;346.935;36.67;-96.35;254.5 -4210;UNITED STATES OF AMERICA;PERRY;347.12;36.29;-97.29;312.4 -4211;UNITED STATES OF AMERICA;POTEAU WTR WKS;347.254;35.05;-94.63;134.1 -4212;UNITED STATES OF AMERICA;STILLWATER 2 W;348.501;36.12;-97.10;272.8 -4213;UNITED STATES OF AMERICA;TAHLEQUAH;348.677;35.94;-94.96;259.1 -4214;UNITED STATES OF AMERICA;WAURIKA;349.395;34.17;-98.00;278 -4215;UNITED STATES OF AMERICA;WEATHERFORD;349.422;35.52;-98.70;493.2 -4216;UNITED STATES OF AMERICA;WEBBERS FALLS 5 WSW;349.445;35.48;-95.20;167.6 -4217;UNITED STATES OF AMERICA;ASHLAND;350.304;42.21;-122.71;532.2 -4218;UNITED STATES OF AMERICA;ASTORIA AP PORT OF;350.328;46.16;-123.88;2.7 -4219;UNITED STATES OF AMERICA;BAKER CITY AP;350.412;44.84;-117.81;1024.4 -4220;UNITED STATES OF AMERICA;BEND;350.694;44.06;-121.29;1115.6 -4221;UNITED STATES OF AMERICA;BROOKINGS 2 SE;351.55;42.03;-124.25;15.2 -4222;UNITED STATES OF AMERICA;CASCADIA;351.433;44.39;-122.48;292.6 -4223;UNITED STATES OF AMERICA;CONDON;351.765;45.23;-120.18;865.6 -4224;UNITED STATES OF AMERICA;CORVALLIS STATE UNIV;351.862;44.63;-123.19;68.6 -4225;UNITED STATES OF AMERICA;COTTAGE GROVE 1 NNE;351.897;43.79;-123.03;181.4 -4226;UNITED STATES OF AMERICA;CRATER LAKE NPS HQ;351.946;42.90;-122.13;1973.6 -4227;UNITED STATES OF AMERICA;DANNER;352.135;42.94;-117.34;1287.8 -4228;UNITED STATES OF AMERICA;DRAIN;352.406;43.67;-123.33;89 -4229;UNITED STATES OF AMERICA;DUFUR;352.440;45.45;-121.13;405.4 -4230;UNITED STATES OF AMERICA;FOREST GROVE;352.997;45.52;-123.10;54.9 -4231;UNITED STATES OF AMERICA;FREMONT 5 NW;353.95;43.39;-121.21;1404.8 -4232;UNITED STATES OF AMERICA;GRANTS PASS;353.445;42.42;-123.32;283.5 -4233;UNITED STATES OF AMERICA;HEADWORKS PORTLAND WTR;353.770;45.45;-122.15;228 -4234;UNITED STATES OF AMERICA;HEPPNER;353.827;45.37;-119.56;574.5 -4235;UNITED STATES OF AMERICA;HERMISTON 1 SE;353.847;45.83;-119.26;195.1 -4236;UNITED STATES OF AMERICA;HOOD RIVER EXP STN;354.3;45.68;-121.52;152.4 -4237;UNITED STATES OF AMERICA;KLAMATH FALLS 2 SSW;354.506;42.20;-121.78;1249.1 -4238;UNITED STATES OF AMERICA;LAKEVIEW 2 NNW;354.670;42.21;-120.36;1456.3 -4239;UNITED STATES OF AMERICA;MALHEUR REFUGE HQ;355.162;43.26;-118.84;1255.2 -4240;UNITED STATES OF AMERICA;MCKENZIE BRG RS;355.362;44.18;-122.12;450.5 -4241;UNITED STATES OF AMERICA;MC MINNVILLE;355.384;45.22;-123.16;47.2 -4242;UNITED STATES OF AMERICA;MILTON FREEWATER;355.593;45.94;-118.41;295.7 -4243;UNITED STATES OF AMERICA;MORO;355.734;45.48;-120.72;570 -4244;UNITED STATES OF AMERICA;NEWPORT;356.32;44.64;-124.06;37.2 -4245;UNITED STATES OF AMERICA;NORTH BEND FCWOS;356.73;43.41;-124.24;1.8 -4246;UNITED STATES OF AMERICA;PAISLEY;356.426;42.69;-120.54;1328.9 -4247;UNITED STATES OF AMERICA;PILOT ROCK 1 SE;356.634;45.48;-118.83;524.3 -4248;UNITED STATES OF AMERICA;PRINEVILLE;356.883;44.30;-120.81;888.5 -4249;UNITED STATES OF AMERICA;PROSPECT 2 SW;356.907;42.73;-122.52;756.5 -4250;UNITED STATES OF AMERICA;RIDDLE;357.169;42.95;-123.36;207.3 -4251;UNITED STATES OF AMERICA;ROSEBURG KQEN;357.331;43.21;-123.37;129.5 -4252;UNITED STATES OF AMERICA;THREE LYNX;358.466;45.12;-122.07;341.4 -4253;UNITED STATES OF AMERICA;TILLAMOOK 1 W;358.494;45.46;-123.87;3 -4254;UNITED STATES OF AMERICA;UNION EXP STN;358.746;45.21;-117.88;842.8 -4255;UNITED STATES OF AMERICA;VALE;358.797;43.98;-117.24;682.8 -4256;UNITED STATES OF AMERICA;WALLOWA;358.997;45.57;-117.53;890.9 -4257;UNITED STATES OF AMERICA;ALLENTOWN AP;360.106;40.65;-75.45;118.9 -4258;UNITED STATES OF AMERICA;CHAMBERSBURG 1 ESE;361.354;39.94;-77.64;195.1 -4259;UNITED STATES OF AMERICA;EISENHOWER NHS;362.537;39.81;-77.23;164.6 -4260;UNITED STATES OF AMERICA;ERIE WSO AP;362.682;42.08;-80.18;222.5 -4261;UNITED STATES OF AMERICA;FRANKLIN;363.28;41.40;-79.83;309.4 -4262;UNITED STATES OF AMERICA;GREENVILLE 2 NE;363.526;41.42;-80.37;344.4 -4263;UNITED STATES OF AMERICA;JOHNSTOWN;364.385;40.33;-78.92;370 -4264;UNITED STATES OF AMERICA;LEBANON 2 W;364.896;40.33;-76.47;137.2 -4265;UNITED STATES OF AMERICA;MONTROSE;365.915;41.85;-75.86;432.8 -4266;UNITED STATES OF AMERICA;NEW CASTLE 1 N;366.233;41.02;-80.36;251.5 -4267;UNITED STATES OF AMERICA;PALMERTON;366.689;40.80;-75.62;125 -4268;UNITED STATES OF AMERICA;PLEASANT MT 1 W;367.29;41.74;-75.45;548.6 -4269;UNITED STATES OF AMERICA;READING 4 NNW;367.322;40.43;-75.93;109.7 -4270;UNITED STATES OF AMERICA;RIDGWAY;367.477;41.42;-78.75;414.5 -4271;UNITED STATES OF AMERICA;SELINSGROVE 2 S;367.931;40.78;-76.86;128 -4272;UNITED STATES OF AMERICA;STATE COLLEGE;368.449;40.79;-77.87;356.6 -4273;UNITED STATES OF AMERICA;STROUDSBURG;368.596;41.01;-75.19;140.2 -4274;UNITED STATES OF AMERICA;TOWANDA 1 S;368.905;41.75;-76.44;231.6 -4275;UNITED STATES OF AMERICA;UNIONTOWN 1 NE;369.50;39.92;-79.72;291.4 -4276;UNITED STATES OF AMERICA;WARREN;369.298;41.85;-79.15;368.8 -4277;UNITED STATES OF AMERICA;WELLSBORO 4 SW;369.408;41.70;-77.39;554.1 -4278;UNITED STATES OF AMERICA;WEST CHESTER 2 NW;369.464;39.97;-75.64;114.3 -4279;UNITED STATES OF AMERICA;WILLIAMSPORT RGNL AP;369.728;41.24;-76.92;158.5 -4280;UNITED STATES OF AMERICA;YORK 3 SSW PUMP;369.933;39.92;-76.75;118.9 -4281;UNITED STATES OF AMERICA;BLOCK ISLAND STATE AP;370.896;41.17;-71.58;33.5 -4282;UNITED STATES OF AMERICA;KINGSTON;374.266;41.49;-71.54;34.7 -4283;UNITED STATES OF AMERICA;PROVIDENCE WSO AP;376.698;41.72;-71.43;15.5 -4284;UNITED STATES OF AMERICA;AIKEN 5SE;380.74;33.49;-81.70;150 -4285;UNITED STATES OF AMERICA;ANDERSON;380.165;34.53;-82.66;243.8 -4286;UNITED STATES OF AMERICA;BEAUFORT WWTP;380.559;32.40;-80.70;7.6 -4287;UNITED STATES OF AMERICA;BLACKVILLE 3 W;380.764;33.36;-81.33;98.8 -4288;UNITED STATES OF AMERICA;CALHOUN FALLS;381.277;34.09;-82.59;161.5 -4289;UNITED STATES OF AMERICA;CAMDEN 3 W;381.310;34.24;-80.66;42.7 -4290;UNITED STATES OF AMERICA;CHARLESTON CITY;381.549;32.78;-79.93;3 -4291;UNITED STATES OF AMERICA;CHERAW;381.588;34.73;-79.88;42.7 -4292;UNITED STATES OF AMERICA;CLEMSON UNIV;381.770;34.66;-82.82;251.2 -4293;UNITED STATES OF AMERICA;COLUMBIA UNIV OF SC;381.944;33.98;-81.02;73.8 -4294;UNITED STATES OF AMERICA;CONWAY;381.997;33.83;-79.06;6.1 -4295;UNITED STATES OF AMERICA;DARLINGTON;382.260;34.30;-79.88;45.7 -4296;UNITED STATES OF AMERICA;GEORGETOWN 2 E;383.468;33.36;-79.22;3 -4297;UNITED STATES OF AMERICA;GRNVL SPART INTL AP;383.747;34.88;-82.22;287.4 -4298;UNITED STATES OF AMERICA;GREENWOOD;383.754;34.20;-82.17;187.5 -4299;UNITED STATES OF AMERICA;KERSHAW 1SW;384.690;34.54;-80.60;138.1 -4300;UNITED STATES OF AMERICA;KINGSTREE;384.753;33.68;-79.83;22.9 -4301;UNITED STATES OF AMERICA;LAURENS;385.17;34.50;-82.02;179.5 -4302;UNITED STATES OF AMERICA;LITTLE MTN;385.200;34.19;-81.42;216.7 -4303;UNITED STATES OF AMERICA;NEWBERRY;386.209;34.30;-81.62;145.1 -4304;UNITED STATES OF AMERICA;ORANGEBURG 2;386.527;33.49;-80.87;54.9 -4305;UNITED STATES OF AMERICA;SALUDA;387.631;34.00;-81.77;146.3 -4306;UNITED STATES OF AMERICA;SANTUCK;387.722;34.63;-81.52;158.5 -4307;UNITED STATES OF AMERICA;SUMMERVILLE 4W;388.426;33.04;-80.23;19.8 -4308;UNITED STATES OF AMERICA;SUMTER;388.440;33.94;-80.36;53.9 -4309;UNITED STATES OF AMERICA;WALHALLA;388.887;34.75;-83.08;298.7 -4310;UNITED STATES OF AMERICA;WINNSBORO;389.327;34.37;-81.09;170.7 -4311;UNITED STATES OF AMERICA;WINTHROP UNIV;389.350;34.94;-81.03;210.3 -4312;UNITED STATES OF AMERICA;YEMASSEE;389.469;32.68;-80.84;7.6 -4313;UNITED STATES OF AMERICA;ABERDEEN RGNL AP;390.20;45.44;-98.41;395.3 -4314;UNITED STATES OF AMERICA;ACADEMY 2NE;390.43;43.49;-99.06;512.1 -4315;UNITED STATES OF AMERICA;ALEXANDRIA;390.128;43.66;-97.79;412.4 -4316;UNITED STATES OF AMERICA;CANTON;391.392;43.31;-96.59;410 -4317;UNITED STATES OF AMERICA;CLARK;391.739;44.88;-97.73;549.9 -4318;UNITED STATES OF AMERICA;COTTONWOOD 2 E;391.972;43.96;-101.86;735.8 -4319;UNITED STATES OF AMERICA;DUPREE;392.429;45.05;-101.60;723.9 -4320;UNITED STATES OF AMERICA;EUREKA;392.797;45.76;-99.64;566.9 -4321;UNITED STATES OF AMERICA;FAULKTON 1 NW;392.927;45.04;-99.13;478.5 -4322;UNITED STATES OF AMERICA;FORESTBURG 3 NE;393.29;44.04;-98.07;374.9 -4323;UNITED STATES OF AMERICA;GANN VALLEY 4NW;393.217;44.06;-99.07;524.3 -4324;UNITED STATES OF AMERICA;HIGHMORE 1 W;393.832;44.52;-99.46;576.1 -4325;UNITED STATES OF AMERICA;HOT SPRINGS;394.7;43.44;-103.47;1085.1 -4326;UNITED STATES OF AMERICA;HOWARD;394.37;44.01;-97.52;474.9 -4327;UNITED STATES OF AMERICA;KENNEBEC;394.516;43.91;-99.86;518.2 -4328;UNITED STATES OF AMERICA;MELLETTE 4 W;395.456;45.15;-98.58;396.8 -4329;UNITED STATES OF AMERICA;MENNO;395.481;43.24;-97.57;403.6 -4330;UNITED STATES OF AMERICA;MILBANK 4 NW;395.536;45.28;-96.67;349 -4331;UNITED STATES OF AMERICA;MURDO;395.891;43.89;-100.71;707.1 -4332;UNITED STATES OF AMERICA;OAHE DAM;396.170;44.44;-100.42;506 -4333;UNITED STATES OF AMERICA;PIERRE RGNL AP;396.597;44.38;-100.29;531 -4334;UNITED STATES OF AMERICA;RAPID CITY 4NW;396.947;44.12;-103.28;1051.6 -4335;UNITED STATES OF AMERICA;VERMILLION 2 SE;398.622;42.76;-96.92;362.7 -4336;UNITED STATES OF AMERICA;WATERTOWN RGNL AP;398.932;44.90;-97.15;532.8 -4337;UNITED STATES OF AMERICA;WOOD;399.442;43.50;-100.48;664.5 -4338;UNITED STATES OF AMERICA;CLARKSVILLE WWTP;401.790;36.55;-87.36;116.4 -4339;UNITED STATES OF AMERICA;COPPERHILL;402.24;34.99;-84.38;442 -4340;UNITED STATES OF AMERICA;COVINGTON 3 SW;402.108;35.55;-89.70;117.3 -4341;UNITED STATES OF AMERICA;CROSSVILLE ED & RESEARCH;402.202;36.01;-85.13;551.7 -4342;UNITED STATES OF AMERICA;DICKSON;402.489;36.07;-87.39;237.7 -4343;UNITED STATES OF AMERICA;DOVER 1 W;402.589;36.48;-87.86;144.8 -4344;UNITED STATES OF AMERICA;JACKSON EXP STN;404.561;35.62;-88.85;121.9 -4345;UNITED STATES OF AMERICA;LEWISBURG EXP STN;405.187;35.41;-86.81;239.9 -4346;UNITED STATES OF AMERICA;MC MINNVILLE;405.882;35.67;-85.78;286.5 -4347;UNITED STATES OF AMERICA;MURFREESBORO 5 N;406.371;35.92;-86.37;163.1 -4348;UNITED STATES OF AMERICA;NEWPORT 1 NW;406.534;35.98;-83.20;315.8 -4349;UNITED STATES OF AMERICA;ROGERSVILLE 1 NE;407.884;36.42;-82.98;413 -4350;UNITED STATES OF AMERICA;TULLAHOMA;409.155;35.35;-86.21;311.5 -4351;UNITED STATES OF AMERICA;UNION CITY;409.219;36.39;-89.03;106.7 -4352;UNITED STATES OF AMERICA;WAYNESBORO;409.502;35.30;-87.76;228.6 -4353;UNITED STATES OF AMERICA;ALBANY;410.120;32.73;-99.30;426.7 -4354;UNITED STATES OF AMERICA;ALICE;410.144;27.73;-98.07;61.3 -4355;UNITED STATES OF AMERICA;ALPINE;410.174;30.38;-103.66;1356.4 -4356;UNITED STATES OF AMERICA;BALLINGER 2 NW;410.493;31.74;-99.98;534.9 -4357;UNITED STATES OF AMERICA;BALMORHEA;410.498;30.98;-103.74;981.5 -4358;UNITED STATES OF AMERICA;BEEVILLE 5 NE;410.639;28.46;-97.71;77.7 -4359;UNITED STATES OF AMERICA;BLANCO;410.832;30.11;-98.43;419.1 -4360;UNITED STATES OF AMERICA;BOERNE;410.902;29.80;-98.73;440.1 -4361;UNITED STATES OF AMERICA;BOYS RANCH;411;35.53;-102.26;972.6 -4362;UNITED STATES OF AMERICA;BRENHAM;411.48;30.16;-96.40;95.4 -4363;UNITED STATES OF AMERICA;BROWNWOOD 2ENE;411.138;31.74;-98.95;426.7 -4364;UNITED STATES OF AMERICA;CATARINA;411.528;28.34;-99.63;170.7 -4365;UNITED STATES OF AMERICA;CLARKSVILLE 2NE;411.772;33.62;-95.07;132.6 -4366;UNITED STATES OF AMERICA;CORPUS CHRISTI AP;412.15;27.77;-97.51;13.4 -4367;UNITED STATES OF AMERICA;CORSICANA;412.19;32.11;-96.47;125.9 -4368;UNITED STATES OF AMERICA;CROSBYTON;412.121;33.65;-101.25;917.4 -4369;UNITED STATES OF AMERICA;DANEVANG 1 W;412.266;29.06;-96.23;21.3 -4370;UNITED STATES OF AMERICA;DUBLIN 2SE;412.598;32.06;-98.30;447.4 -4371;UNITED STATES OF AMERICA;EAGLE PASS 3N;412.679;28.76;-100.48;247.5 -4372;UNITED STATES OF AMERICA;EL PASO AP;412.797;31.81;-106.38;1194.2 -4373;UNITED STATES OF AMERICA;ENCINAL;412.906;28.02;-99.35;176.8 -4374;UNITED STATES OF AMERICA;FALFURRIAS;413.63;27.14;-98.12;42.4 -4375;UNITED STATES OF AMERICA;FLATONIA;413.183;29.68;-97.11;158.5 -4376;UNITED STATES OF AMERICA;FT STOCKTON;413.280;30.91;-102.92;926 -4377;UNITED STATES OF AMERICA;GAINESVILLE 5 ENE;413.420;33.65;-97.06;265.2 -4378;UNITED STATES OF AMERICA;GREENVILLE KGVL RADIO;413.734;33.17;-96.10;166.1 -4379;UNITED STATES OF AMERICA;HALLETTSVILLE 2 N;413.873;29.47;-96.94;83.8 -4380;UNITED STATES OF AMERICA;HASKELL;413.992;33.16;-99.75;487.7 -4381;UNITED STATES OF AMERICA;LAMPASAS;415.18;31.07;-98.18;314.6 -4382;UNITED STATES OF AMERICA;LIBERTY;415.196;30.06;-94.79;10.7 -4383;UNITED STATES OF AMERICA;LLANO;415.272;30.74;-98.65;310.9 -4384;UNITED STATES OF AMERICA;LULING;415.429;29.68;-97.66;121.9 -4385;UNITED STATES OF AMERICA;MARSHALL;415.618;32.54;-94.35;107.3 -4386;UNITED STATES OF AMERICA;MCCAMEY;415.707;31.13;-102.22;757.7 -4387;UNITED STATES OF AMERICA;MEXIA;415.869;31.70;-96.51;161.5 -4388;UNITED STATES OF AMERICA;MIAMI;415.875;35.70;-100.64;839.7 -4389;UNITED STATES OF AMERICA;MULESHOE #1;416.135;34.22;-102.73;1167.4 -4390;UNITED STATES OF AMERICA;NEW BRAUNFELS;416.276;29.72;-98.12;208.8 -4391;UNITED STATES OF AMERICA;PARIS;416.794;33.67;-95.56;165.2 -4392;UNITED STATES OF AMERICA;PECOS;416.892;31.42;-103.50;795.5 -4393;UNITED STATES OF AMERICA;PLAINVIEW;417.79;34.19;-101.70;1027.2 -4394;UNITED STATES OF AMERICA;QUANAH 2 SW;417.336;34.28;-99.76;488.3 -4395;UNITED STATES OF AMERICA;RIO GRANDE CITY;417.622;26.38;-98.81;52.4 -4396;UNITED STATES OF AMERICA;SAN ANTONIO INTL AP;417.945;29.53;-98.47;246.6 -4397;UNITED STATES OF AMERICA;SEMINOLE;418.201;32.71;-102.66;1016.8 -4398;UNITED STATES OF AMERICA;SNYDER;418.433;32.71;-100.91;706.8 -4399;UNITED STATES OF AMERICA;STRATFORD;418.692;36.34;-102.08;1125.6 -4400;UNITED STATES OF AMERICA;TEMPLE;418.910;31.08;-97.32;193.5 -4401;UNITED STATES OF AMERICA;WEATHERFORD;419.532;32.75;-97.77;291.1 -4402;UNITED STATES OF AMERICA;ALTON;420.86;37.44;-112.48;2145.8 -4403;UNITED STATES OF AMERICA;BLANDING;420.738;37.61;-109.48;1854.7 -4404;UNITED STATES OF AMERICA;BLUFF;420.788;37.28;-109.56;1318 -4405;UNITED STATES OF AMERICA;CORINNE;421.731;41.55;-112.11;1289.3 -4406;UNITED STATES OF AMERICA;DESERET;422.101;39.29;-112.65;1399 -4407;UNITED STATES OF AMERICA;DUCHESNE;422.253;40.17;-110.39;1682.5 -4408;UNITED STATES OF AMERICA;ESCALANTE;422.592;37.77;-111.60;1770.9 -4409;UNITED STATES OF AMERICA;FARMINGTON 3 NW;422.726;41.02;-111.94;1335 -4410;UNITED STATES OF AMERICA;FILLMORE;422.828;38.97;-112.33;1560.6 -4411;UNITED STATES OF AMERICA;FT DUCHESNE;422.996;40.28;-109.86;1539.2 -4412;UNITED STATES OF AMERICA;GREEN RIVER AVIATION;423.418;38.99;-110.15;1240.5 -4413;UNITED STATES OF AMERICA;HANKSVILLE;423.611;38.37;-110.72;1313.1 -4414;UNITED STATES OF AMERICA;HEBER;423.809;40.49;-111.43;1703.8 -4415;UNITED STATES OF AMERICA;KANAB;424.508;37.03;-112.54;1493.5 -4416;UNITED STATES OF AMERICA;LAKETOWN;424.856;41.83;-111.32;1822.7 -4417;UNITED STATES OF AMERICA;LEVAN;425.65;39.56;-111.87;1614.8 -4418;UNITED STATES OF AMERICA;LOGAN UTAH ST UNIV;425.186;41.75;-111.80;1460 -4419;UNITED STATES OF AMERICA;MANTI;425.402;39.26;-111.63;1749.6 -4420;UNITED STATES OF AMERICA;MARYSVALE;425.477;38.45;-112.23;1801.4 -4421;UNITED STATES OF AMERICA;MOAB;425.733;38.57;-109.55;1242.7 -4422;UNITED STATES OF AMERICA;MODENA;425.752;37.80;-113.93;1664.2 -4423;UNITED STATES OF AMERICA;MORGAN POWER & LIGHT;425.826;41.04;-111.67;1551.4 -4424;UNITED STATES OF AMERICA;NEPHI;426.135;39.71;-111.83;1563 -4425;UNITED STATES OF AMERICA;OGDEN PIONEER P H;426.404;41.24;-111.95;1325.9 -4426;UNITED STATES OF AMERICA;PANGUITCH;426.601;37.82;-112.44;2020.8 -4427;UNITED STATES OF AMERICA;PAROWAN PWR;426.686;37.85;-112.83;1828.8 -4428;UNITED STATES OF AMERICA;RICHFIELD RADIO KSVC;427.260;38.76;-112.08;1615.4 -4429;UNITED STATES OF AMERICA;ST GEORGE;427.516;37.11;-113.56;844.3 -4430;UNITED STATES OF AMERICA;SALINA 24 E;427.559;38.91;-111.42;2304.3 -4431;UNITED STATES OF AMERICA;SCIPIO;427.714;39.25;-112.11;1619.7 -4432;UNITED STATES OF AMERICA;SCOFIELD-SKYLINE MINE;427.729;39.68;-111.20;2655.4 -4433;UNITED STATES OF AMERICA;SNAKE CREEK POWERHOUSE;427.909;40.55;-111.50;1831.8 -4434;UNITED STATES OF AMERICA;SPANISH FORK PWR HOUSE;428.119;40.08;-111.60;1438.7 -4435;UNITED STATES OF AMERICA;THOMPSON;428.705;38.97;-109.72;1554.2 -4436;UNITED STATES OF AMERICA;TOOELE;428.771;40.53;-112.30;1546.6 -4437;UNITED STATES OF AMERICA;UTAH LAKE LEHI;428.973;40.36;-111.90;1370.7 -4438;UNITED STATES OF AMERICA;VERNAL 2SW;429.111;40.43;-109.55;1668.5 -4439;UNITED STATES OF AMERICA;WENDOVER AP AWOS;429.382;40.72;-114.04;1291.4 -4440;UNITED STATES OF AMERICA;WOODRUFF;429.595;41.53;-111.15;1924.8 -4441;UNITED STATES OF AMERICA;ZION NP;429.717;37.21;-112.98;1234.4 -4442;UNITED STATES OF AMERICA;BURLINGTON WSO AP;431.81;44.47;-73.15;100.6 -4443;UNITED STATES OF AMERICA;CAVENDISH;431.243;43.38;-72.60;256.6 -4444;UNITED STATES OF AMERICA;CHELSEA;431.360;43.98;-72.45;243.8 -4445;UNITED STATES OF AMERICA;CORNWALL;431.580;43.96;-73.21;105.2 -4446;UNITED STATES OF AMERICA;ENOSBURG FALLS;432.769;44.91;-72.81;128 -4447;UNITED STATES OF AMERICA;SAINT JOHNSBURY;437.54;44.42;-72.02;213.4 -4448;UNITED STATES OF AMERICA;SOUTH HERO;437.607;44.63;-73.30;33.5 -4449;UNITED STATES OF AMERICA;SOUTH LINCOLN;437.612;44.07;-72.97;408.7 -4450;UNITED STATES OF AMERICA;BLACKSBURG NWSO;440.766;37.20;-80.41;640.1 -4451;UNITED STATES OF AMERICA;BREMO BLUFF;440.993;37.71;-78.29;68.6 -4452;UNITED STATES OF AMERICA;BURKES GARDEN;441.209;37.09;-81.34;935.1 -4453;UNITED STATES OF AMERICA;CHARLOTTESVILLE 2W;441.593;38.03;-78.52;265.2 -4454;UNITED STATES OF AMERICA;DALE ENTERPRISE;442.208;38.46;-78.94;426.7 -4455;UNITED STATES OF AMERICA;DANVILLE;442.245;36.59;-79.39;125 -4456;UNITED STATES OF AMERICA;FARMVILLE 2 N;442.941;37.33;-78.39;137.2 -4457;UNITED STATES OF AMERICA;FREDERICKSBURG NP;443.192;38.32;-77.45;27.4 -4458;UNITED STATES OF AMERICA;HOPEWELL;444.101;37.30;-77.28;12.2 -4459;UNITED STATES OF AMERICA;HOT SPRINGS;444.128;38.00;-79.83;681.5 -4460;UNITED STATES OF AMERICA;LEXINGTON;444.876;37.79;-79.41;342.9 -4461;UNITED STATES OF AMERICA;LINCOLN;444.909;39.09;-77.69;152.4 -4462;UNITED STATES OF AMERICA;NORFOLK INTL AP;446.139;36.90;-76.19;9.1 -4463;UNITED STATES OF AMERICA;PENNINGTON GAP;446.626;36.74;-83.00;448.1 -4464;UNITED STATES OF AMERICA;PIEDMONT RSCH STN;446.712;38.23;-78.12;158.5 -4465;UNITED STATES OF AMERICA;ROCKY MT;447.338;36.98;-79.90;400.8 -4466;UNITED STATES OF AMERICA;STAUNTON WATER TRMTMT PLT;448.62;38.18;-79.09;499.9 -4467;UNITED STATES OF AMERICA;WILLIAMSBURG 2 N;449.151;37.30;-76.70;21.3 -4468;UNITED STATES OF AMERICA;WOODSTOCK 2 NE;449.263;38.90;-78.49;205.7 -4469;UNITED STATES OF AMERICA;ABERDEEN;450.8;46.97;-123.83;3 -4470;UNITED STATES OF AMERICA;BELLINGHAM 3 SSW;450.587;48.72;-122.51;4.6 -4471;UNITED STATES OF AMERICA;BLAINE;450.729;48.98;-122.79;18.3 -4472;UNITED STATES OF AMERICA;BUCKLEY 1 NE;450.945;47.17;-122.00;208.8 -4473;UNITED STATES OF AMERICA;CEDAR LAKE;451.233;47.41;-121.76;475.5 -4474;UNITED STATES OF AMERICA;CENTRALIA;451.276;46.72;-122.95;56.4 -4475;UNITED STATES OF AMERICA;CLEARBROOK;451.484;48.97;-122.33;19.5 -4476;UNITED STATES OF AMERICA;CLE ELUM;451.504;47.19;-120.95;585.2 -4477;UNITED STATES OF AMERICA;COLVILLE;451.630;48.55;-117.90;474.6 -4478;UNITED STATES OF AMERICA;CONCONULLY;451.666;48.55;-119.75;707.1 -4479;UNITED STATES OF AMERICA;CUSHMAN POWERHOUSE 2;451.939;47.37;-123.16;6.4 -4480;UNITED STATES OF AMERICA;DAVENPORT;452.7;47.65;-118.15;743.7 -4481;UNITED STATES OF AMERICA;DAYTON 1 WSW;452.30;46.32;-118.00;474.6 -4482;UNITED STATES OF AMERICA;ELLENSBURG;452.505;46.97;-120.54;451.1 -4483;UNITED STATES OF AMERICA;EVERETT;452.675;47.98;-122.19;18.3 -4484;UNITED STATES OF AMERICA;FORKS 1 E;452.914;47.96;-124.35;106.7 -4485;UNITED STATES OF AMERICA;GOLDENDALE;453.222;45.81;-120.84;499.9 -4486;UNITED STATES OF AMERICA;KENNEWICK;454.154;46.21;-119.10;118.9 -4487;UNITED STATES OF AMERICA;LONG BEACH EXP STN;454.748;46.37;-124.04;7.6 -4488;UNITED STATES OF AMERICA;LONGMIRE RAINIER NPS;454.764;46.75;-121.81;841.9 -4489;UNITED STATES OF AMERICA;LONGVIEW;454.769;46.15;-122.92;3.7 -4490;UNITED STATES OF AMERICA;MC MILLIN RSVR;455.224;47.14;-122.26;176.5 -4491;UNITED STATES OF AMERICA;NORTHPORT;455.946;48.91;-117.81;423.7 -4492;UNITED STATES OF AMERICA;ODESSA;456.39;47.33;-118.70;466.3 -4493;UNITED STATES OF AMERICA;OLGA 2 SE;456.96;48.61;-122.81;24.4 -4494;UNITED STATES OF AMERICA;POMEROY;456.610;46.47;-117.59;579.1 -4495;UNITED STATES OF AMERICA;PORT ANGELES;456.624;48.11;-123.43;27.4 -4496;UNITED STATES OF AMERICA;PORT TOWNSEND;456.678;48.12;-122.76;30.5 -4497;UNITED STATES OF AMERICA;PULLMAN 2 NW;456.789;46.76;-117.19;775.7 -4498;UNITED STATES OF AMERICA;RAYMOND 2 S;456.914;46.65;-123.73;9.1 -4499;UNITED STATES OF AMERICA;RITZVILLE 1 SSE;457.59;47.11;-118.38;557.8 -4500;UNITED STATES OF AMERICA;SAINT JOHN;457.267;47.09;-117.59;592.8 -4501;UNITED STATES OF AMERICA;SEATTLE URBAN SITE;457.458;47.65;-122.30;5.8 -4502;UNITED STATES OF AMERICA;SEDRO WOOLLEY;457.507;48.50;-122.24;18.3 -4503;UNITED STATES OF AMERICA;SNOQUALMIE FALLS;457.773;47.54;-121.84;134.1 -4504;UNITED STATES OF AMERICA;SPOKANE INTL AP;457.938;47.62;-117.53;717.2 -4505;UNITED STATES OF AMERICA;STEHEKIN 4 NW;458.59;48.35;-120.73;387.1 -4506;UNITED STATES OF AMERICA;SUNNYSIDE;458.207;46.32;-120.01;227.7 -4507;UNITED STATES OF AMERICA;VANCOUVER 4 NNE;458.773;45.68;-122.65;64 -4508;UNITED STATES OF AMERICA;WALLA WALLA FAA AP;458.928;46.10;-118.28;355.4 -4509;UNITED STATES OF AMERICA;WATERVILLE;459.12;47.65;-120.07;798.6 -4510;UNITED STATES OF AMERICA;WENATCHEE;459.74;47.42;-120.32;195.1 -4511;UNITED STATES OF AMERICA;WILBUR;459.238;47.76;-118.68;679.7 -4512;UNITED STATES OF AMERICA;WINTHROP 1 WSW;459.376;48.45;-120.19;534.9 -4513;UNITED STATES OF AMERICA;BUCKHANNON;461.220;38.98;-80.22;443.5 -4514;UNITED STATES OF AMERICA;CAIRO;461.330;39.20;-81.16;231.6 -4515;UNITED STATES OF AMERICA;GLENVILLE;463.544;38.93;-80.83;216.4 -4516;UNITED STATES OF AMERICA;LEWISBURG 3 N;465.224;37.86;-80.40;701 -4517;UNITED STATES OF AMERICA;MANNINGTON 8 WNW;465.626;39.54;-80.46;335.3 -4518;UNITED STATES OF AMERICA;MARTINSBURG E WV RGNL;465.707;39.40;-77.98;162.8 -4519;UNITED STATES OF AMERICA;PARSONS 1 NE;466.867;39.10;-79.67;556.6 -4520;UNITED STATES OF AMERICA;PICKENS 2 N;466.989;38.67;-80.20;877.8 -4521;UNITED STATES OF AMERICA;PINEVILLE;467.29;37.57;-81.54;390.1 -4522;UNITED STATES OF AMERICA;SPENCER;468.384;38.80;-81.36;287.4 -4523;UNITED STATES OF AMERICA;WELLSBURG WTR TRMT PL;469.368;40.28;-80.61;201.2 -4524;UNITED STATES OF AMERICA;WILLIAMSON;469.610;37.67;-82.28;231.6 -4525;UNITED STATES OF AMERICA;WINFIELD LOCKS;469.683;38.53;-81.92;186.2 -4526;UNITED STATES OF AMERICA;ASHLAND EXP FARM;470.349;46.58;-90.97;198.1 -4527;UNITED STATES OF AMERICA;BOWLER;470.991;44.86;-88.99;329.2 -4528;UNITED STATES OF AMERICA;BRODHEAD;471.78;42.62;-89.39;240.8 -4529;UNITED STATES OF AMERICA;DARLINGTON;472.1;42.67;-90.12;292.6 -4530;UNITED STATES OF AMERICA;FOND DU LAC;472.839;43.80;-88.45;231.6 -4531;UNITED STATES OF AMERICA;HANCOCK EXP FARM;473.405;44.12;-89.53;331.9 -4532;UNITED STATES OF AMERICA;LANCASTER 4 WSW;474.546;42.83;-90.79;317 -4533;UNITED STATES OF AMERICA;MANITOWOC;475.17;44.09;-87.65;178 -4534;UNITED STATES OF AMERICA;MARSHFIELD EXP FARM;475.120;44.63;-90.13;377 -4535;UNITED STATES OF AMERICA;MEDFORD;475.255;45.13;-90.34;448.1 -4536;UNITED STATES OF AMERICA;MILWAUKEE MT MARY COL;475.474;43.07;-88.03;221.3 -4537;UNITED STATES OF AMERICA;MINOCQUA;475.516;45.89;-89.73;488 -4538;UNITED STATES OF AMERICA;NEILLSVILLE 3 SW;475.808;44.53;-90.64;310.9 -4539;UNITED STATES OF AMERICA;NEW LONDON;475.932;44.36;-88.72;243.8 -4540;UNITED STATES OF AMERICA;OCONTO 4 W;476.208;44.88;-87.95;201.2 -4541;UNITED STATES OF AMERICA;OSHKOSH;476.330;44.02;-88.56;228.6 -4542;UNITED STATES OF AMERICA;PORTAGE;476.718;43.53;-89.43;236.2 -4543;UNITED STATES OF AMERICA;PRAIRIE DU CHIEN;476.827;43.05;-91.14;200.6 -4544;UNITED STATES OF AMERICA;RACINE;476.922;42.70;-87.79;181.4 -4545;UNITED STATES OF AMERICA;SPOONER AG RES STN;478.27;45.82;-91.88;335.3 -4546;UNITED STATES OF AMERICA;STANLEY;478.110;44.97;-90.94;332.2 -4547;UNITED STATES OF AMERICA;VIROQUA;478.827;43.56;-90.88;382.5 -4548;UNITED STATES OF AMERICA;WATERTOWN;478.919;43.17;-88.74;251.5 -4549;UNITED STATES OF AMERICA;ALTA 1 NNW;480.140;43.77;-111.03;1962 -4550;UNITED STATES OF AMERICA;BASIN;480.540;44.38;-108.03;1169.5 -4551;UNITED STATES OF AMERICA;BATES CREEK #2;480.552;42.63;-106.38;1831.8 -4552;UNITED STATES OF AMERICA;CHEYENNE WSFO AP;481.675;41.15;-104.82;1868.4 -4553;UNITED STATES OF AMERICA;CHUGWATER;481.730;41.76;-104.82;1616.7 -4554;UNITED STATES OF AMERICA;CODY;481.840;44.52;-109.06;1549 -4555;UNITED STATES OF AMERICA;COLONY;481.905;44.87;-104.15;1060.7 -4556;UNITED STATES OF AMERICA;DIVERSION DAM;482.595;43.23;-108.95;1699.3 -4557;UNITED STATES OF AMERICA;DUBOIS;482.715;43.54;-109.66;2119.9 -4558;UNITED STATES OF AMERICA;EVANSTON 1 E;483.100;41.26;-110.95;2080.3 -4559;UNITED STATES OF AMERICA;GREEN RIVER;484.65;41.53;-109.48;1852.3 -4560;UNITED STATES OF AMERICA;LAKE YELLOWSTONE;485.345;44.56;-110.40;2398.8 -4561;UNITED STATES OF AMERICA;LARAMIE RGNL AP;485.415;41.31;-105.67;2214.7 -4562;UNITED STATES OF AMERICA;LUSK 2 SW;485.830;42.75;-104.48;1551.4 -4563;UNITED STATES OF AMERICA;MIDWEST;486.195;43.41;-106.28;1481.3 -4564;UNITED STATES OF AMERICA;MORAN 5 WNW;486.440;43.86;-110.59;2072 -4565;UNITED STATES OF AMERICA;NEWCASTLE;486.660;43.86;-104.21;1315.2 -4566;UNITED STATES OF AMERICA;PAVILLION;487.115;43.25;-108.69;1658.1 -4567;UNITED STATES OF AMERICA;PINE BLUFFS 5W;487.240;41.17;-104.16;1578.9 -4568;UNITED STATES OF AMERICA;PINEDALE;487.260;42.88;-109.86;2193 -4569;UNITED STATES OF AMERICA;POWELL FLD STN;487.388;44.78;-108.76;1332 -4570;UNITED STATES OF AMERICA;RIVERTON;487.760;43.03;-108.37;1510.3 -4571;UNITED STATES OF AMERICA;ROCK SPRINGS AP;487.845;41.59;-109.07;2055 -4572;UNITED STATES OF AMERICA;SARATOGA;487.990;41.45;-106.81;2069.6 -4573;UNITED STATES OF AMERICA;SHERIDAN FLD STN;488.160;44.84;-106.84;1143 -4574;UNITED STATES OF AMERICA;TORRINGTON EXP FARM;488.995;42.08;-104.22;1249.1 -4575;UNITED STATES OF AMERICA;WHEATLAND 4 N;489.615;42.11;-104.95;1413.7 -4576;UNITED STATES OF AMERICA;WORLAND;489.770;44.01;-107.97;1237.5 -4577;UNITED STATES OF AMERICA;YELLOWSTONE PK MAMMOTH;489.905;44.98;-110.70;1898.9 -4578;UNITED STATES OF AMERICA;BARROW/W. POS;70026;71.30;-156.78;4 -4579;UNITED STATES OF AMERICA;BARTER ISLAND;70086;70.13;-143.63;15 -4580;UNITED STATES OF AMERICA;GAMBELL;70116.1;63.90;-171.60;8 -4581;UNITED STATES OF AMERICA;"KOTZEBUE, RAL";70133;66.87;-162.63;5 -4582;UNITED STATES OF AMERICA;UMIAT;70162;69.37;-152.13;85 -4583;UNITED STATES OF AMERICA;BETTLES;70174;66.92;-151.52;196 -4584;UNITED STATES OF AMERICA;ALLAKAKET;70174.1;66.57;-152.67;183 -4585;UNITED STATES OF AMERICA;TANANA;70178;65.17;-152.10;67 -4586;UNITED STATES OF AMERICA;FT YUKON;70194.1;66.58;-145.08;129 -4587;UNITED STATES OF AMERICA;NOME;70200;64.50;-165.43;7 -4588;UNITED STATES OF AMERICA;UNALAKLEET;70207;63.88;-160.80;6 -4589;UNITED STATES OF AMERICA;MOSES POINT;70207.1;64.70;-162.05;6 -4590;UNITED STATES OF AMERICA;BETHEL/BETHEL;70219;60.78;-161.80;46 -4591;UNITED STATES OF AMERICA;GALENA A.;70222;64.73;-156.93;49 -4592;UNITED STATES OF AMERICA;MCGRATH;70231;62.97;-155.62;103 -4593;UNITED STATES OF AMERICA;ANIAK/AIRPORT;70232.1;61.58;-159.53;28 -4594;UNITED STATES OF AMERICA;HOLY CROSS;70232.2;62.19;-159.77;30 -4595;UNITED STATES OF AMERICA;MINCHUMINA;70246.1;63.88;-152.28;213 -4596;UNITED STATES OF AMERICA;PUNTILLA;70249;62.10;-152.75;560 -4597;UNITED STATES OF AMERICA;FAREWELL FAA AP;70249.1;62.52;-153.89;457 -4598;UNITED STATES OF AMERICA;TALKEETNA;70251;62.30;-150.10;109 -4599;UNITED STATES OF AMERICA;SKWENTNA;70251.1;61.97;-151.20;46 -4600;UNITED STATES OF AMERICA;KENAI;70259;60.57;-151.25;29 -4601;UNITED STATES OF AMERICA;NENANA/MUNICIPAL AIRPORT;70260.1;64.55;-149.08;109 -4602;UNITED STATES OF AMERICA;FAIRBANKS/INT;70261;64.82;-147.87;138 -4603;UNITED STATES OF AMERICA;UNIVERSITY EXP STN;70261.1;64.85;-147.87;145 -4604;UNITED STATES OF AMERICA;LADD/AAB;70261.2;64.85;-147.58;148 -4605;UNITED STATES OF AMERICA;SUMMIT/WSO AIRPORT;70264.1;63.33;-149.13;735 -4606;UNITED STATES OF AMERICA;MCKINLEY PARK;70264.2;63.72;-148.97;631 -4607;UNITED STATES OF AMERICA;EIELSON/FIELD;70265.1;64.68;-147.08;173 -4608;UNITED STATES OF AMERICA;FORT GREELY/A;70267;64.00;-145.73;391 -4609;UNITED STATES OF AMERICA;GULKANA/INTL.;70271;62.15;-145.45;481 -4610;UNITED STATES OF AMERICA;ELMENDORF/AFB;70272.1;61.25;-149.80;58 -4611;UNITED STATES OF AMERICA;ANCHORAGE/INT;70273;61.17;-150.02;40 -4612;UNITED STATES OF AMERICA;MANTANUSKA AES;70274.1;61.57;-149.27;46 -4613;UNITED STATES OF AMERICA;VALDEZ;70275;61.13;-146.35;10 -4614;UNITED STATES OF AMERICA;SEWARD;70277;60.12;-149.45;18 -4615;UNITED STATES OF AMERICA;NORTHWAY FAA AP;70291.1;62.97;-141.94;522 -4616;UNITED STATES OF AMERICA;EAGLE;70291.2;64.79;-141.20;259 -4617;UNITED STATES OF AMERICA;CORDOVA/MILE;70296;60.50;-145.50;13 -4618;UNITED STATES OF AMERICA;"CAPE SAINT ELIAS ALASKA, U";70296.1;59.80;-144.60;15 -4619;UNITED STATES OF AMERICA;YAKATAGA/AIRPORT;70298.1;60.08;-142.50;8 -4620;UNITED STATES OF AMERICA;ST. PAUL;70308;57.15;-170.22;9 -4621;UNITED STATES OF AMERICA;COLD BAY;70316;55.20;-162.72;31 -4622;UNITED STATES OF AMERICA;KING SALMON;70326;58.68;-156.65;15 -4623;UNITED STATES OF AMERICA;ILIAMNA FAA AP;70340.1;59.76;-154.92;57 -4624;UNITED STATES OF AMERICA;HOMER/MUNICIP;70341;59.63;-151.50;22 -4625;UNITED STATES OF AMERICA;MIDDLETON ISLAND/AUTO;70343.1;59.43;-146.33;14 -4626;UNITED STATES OF AMERICA;KODIAK;70350;57.75;-152.50;34 -4627;UNITED STATES OF AMERICA;YAKUTAT;70361;59.52;-139.67;9 -4628;UNITED STATES OF AMERICA;HAINES;70362.1;59.24;-135.44;9 -4629;UNITED STATES OF AMERICA;GUSTAVUS/2 SW;70367.1;58.40;-135.73;13 -4630;UNITED STATES OF AMERICA;SITKA;70371;57.07;-135.35;20 -4631;UNITED STATES OF AMERICA;LITTLE PORT WALTER;70371.1;56.39;-134.66;4 -4632;UNITED STATES OF AMERICA;JUNEAU NO 2;70381.1;58.30;-134.41;8 -4633;UNITED STATES OF AMERICA;ANNEX CREEK;70381.2;58.32;-134.10;7 -4634;UNITED STATES OF AMERICA;WRANGELL;70387;56.48;-132.37;13 -4635;UNITED STATES OF AMERICA;KETCHIKAN;70395.1;55.37;-131.72;23 -4636;UNITED STATES OF AMERICA;ANNETTE ISLAN;70398;55.03;-131.57;34 -4637;UNITED STATES OF AMERICA;ATTU;70409.1;52.84;173.19;21 -4638;UNITED STATES OF AMERICA;SHEMYA AFB;70414;52.72;174.10;31 -4639;UNITED STATES OF AMERICA;ADAK/NAVY;70454;51.88;-176.65;4 -4640;UNITED STATES OF AMERICA;DUTCH HARBOUR ALASKA;70482.1;53.90;-166.53;5 -4641;UNITED STATES OF AMERICA;KEY WEST/NAS;72201.1;24.58;-81.68;7 -4642;UNITED STATES OF AMERICA;"MIAMI, FL.";72202;25.82;-80.28;4 -4643;UNITED STATES OF AMERICA;HOMESTEAD/AFB;72202.1;25.48;-80.38;5 -4644;UNITED STATES OF AMERICA;MIAMI/WSO CITY;72202.3;25.72;-80.28;4 -4645;UNITED STATES OF AMERICA;WEST PALM BEA;72203;26.68;-80.10;6 -4646;UNITED STATES OF AMERICA;ORLANDO/JETPO;72205;28.43;-81.32;32 -4647;UNITED STATES OF AMERICA;SANFORD/NAS;72205.1;28.78;-81.23;18 -4648;UNITED STATES OF AMERICA;DAYTONA BEACH/WSO AP;72205.2;29.18;-81.05;8 -4649;UNITED STATES OF AMERICA;JACKSONVILLE U/A TO WAYCRO;72206;30.40;-81.70;9 -4650;UNITED STATES OF AMERICA;JACKSONVILLE/CECIL FLD NAS;72206.2;30.22;-81.88;27 -4651;UNITED STATES OF AMERICA;JACKSONVILLE/NAS;72206.3;30.23;-81.67;9 -4652;UNITED STATES OF AMERICA;MAYPORT/NS;72206.5;30.40;-81.42;5 -4653;UNITED STATES OF AMERICA;BRUNSWICK/FAA AIRPORT;72206.7;31.15;-81.38;4 -4654;UNITED STATES OF AMERICA;SAVANNAH/HUNTER AFB;72207.1;32.02;-81.13;17 -4655;UNITED STATES OF AMERICA;BEAUFORT/MCAS;72207.3;32.48;-80.72;10 -4656;UNITED STATES OF AMERICA;BRUNSWICK/GLYNN CO AIRPORT;72209.1;31.25;-81.47;9 -4657;UNITED STATES OF AMERICA;LAKELAND;72210.1;28.02;-81.92;44 -4658;UNITED STATES OF AMERICA;"TAMPA/INT., FL";72211;27.97;-82.53;3 -4659;UNITED STATES OF AMERICA;GAINESVILLE/MUNI ARPT;72212.2;29.68;-82.27;42 -4660;UNITED STATES OF AMERICA;WAYCROSS/WARE;72213;31.25;-82.40;46 -4661;UNITED STATES OF AMERICA;ALBANY/NAVAL AIR STN;72216.4;31.58;-84.12;66 -4662;UNITED STATES OF AMERICA;MACON/;72217;32.70;-83.65;110 -4663;UNITED STATES OF AMERICA;WARNER ROBINS/AFB;72217.3;32.63;-83.60;92 -4664;UNITED STATES OF AMERICA;AUGUSTA/BUSH;72218;33.37;-81.97;45 -4665;UNITED STATES OF AMERICA;ATLANTA/MUN.;72219;33.65;-84.42;315 -4666;UNITED STATES OF AMERICA;VALPARAISO/;72221;30.48;-86.52;29 -4667;UNITED STATES OF AMERICA;MOBILE/BATES;72223;30.68;-88.25;67 -4668;UNITED STATES OF AMERICA;KEESLER/AFB;72223.2;30.42;-88.92;8 -4669;UNITED STATES OF AMERICA;MOBILE/BROOKLEY AP;72223.4;30.63;-88.07;9 -4670;UNITED STATES OF AMERICA;FORT BENNING/LAWSON FIELD;72225.1;32.35;-85.00;88 -4671;UNITED STATES OF AMERICA;COLUMBUS/METROPOLITAN ARPT;72225.2;32.52;-84.95;136 -4672;UNITED STATES OF AMERICA;MONTGOMERY/DA;72226;32.30;-86.40;62 -4673;UNITED STATES OF AMERICA;CRAIG/AFB;72226.4;32.33;-86.98;50 -4674;UNITED STATES OF AMERICA;MAXWELL/AFB;72226.5;32.38;-86.35;53 -4675;UNITED STATES OF AMERICA;MARIETTA/DOBBINS AFB;72227.1;33.92;-84.52;330 -4676;UNITED STATES OF AMERICA;BIRMINGHAM/MU;72228;33.57;-86.75;192 -4677;UNITED STATES OF AMERICA;BIRMINGHAM/WSFO;72228.2;33.47;-86.83;226 -4678;UNITED STATES OF AMERICA;ANNISTON/FAA AIRPORT;72228.3;33.58;-85.85;186 -4679;UNITED STATES OF AMERICA;CENTREVILLE;72229;32.90;-87.25;140 -4680;UNITED STATES OF AMERICA;BOOTHVILLE/WSCMO CITY;72231.1;29.33;-89.40;0 -4681;UNITED STATES OF AMERICA;NEW ORLEANS/CALLENDER FIELD;72231.5;29.82;-90.02;2 -4682;UNITED STATES OF AMERICA;NEW ORLEANS/NAS;72231.7;30.03;-90.08;4 -4683;UNITED STATES OF AMERICA;MC COMB/PIKE CO;72233.5;31.18;-90.47;125 -4684;UNITED STATES OF AMERICA;MERIDIAN/KEY;72234;32.33;-88.75;94 -4685;UNITED STATES OF AMERICA;MERIDIAN/NAAS;72234.4;32.55;-88.57;88 -4686;UNITED STATES OF AMERICA;JACKSON/ALLEN;72235;32.32;-90.08;101 -4687;UNITED STATES OF AMERICA;VICKSBURG;72235.7;32.40;-90.90;78 -4688;UNITED STATES OF AMERICA;LAKE CHARLES/;72240;30.12;-93.22;10 -4689;UNITED STATES OF AMERICA;PORT ARTHUR/WSO AP;72241.1;29.95;-94.02;4 -4690;UNITED STATES OF AMERICA;"GALVESTON, TX";72242;29.30;-94.80;16 -4691;UNITED STATES OF AMERICA;HOUSTON;72243;29.97;-95.35;33 -4692;UNITED STATES OF AMERICA;HOUSTON/ELLINGTON AFB;72243.1;29.62;-95.17;12 -4693;UNITED STATES OF AMERICA;HOUSTON/FAA AIRPORT;72243.2;29.65;-95.28;15 -4694;UNITED STATES OF AMERICA;HOUSTON/WB CITY;72243.3;29.77;-95.37;13 -4695;UNITED STATES OF AMERICA;SHREVEPORT/RE;72248;32.47;-93.78;79 -4696;UNITED STATES OF AMERICA;BARKSDALE/AFB;72248.1;32.50;-93.67;54 -4697;UNITED STATES OF AMERICA;EL DORADO/FAA AIRPORT;72248.3;33.22;-92.80;76 -4698;UNITED STATES OF AMERICA;FORT WORTH/CARSWELL AFB;72249.2;32.77;-97.45;188 -4699;UNITED STATES OF AMERICA;BROWNSVILLE/I;72250;25.92;-97.42;7 -4700;UNITED STATES OF AMERICA;MC ALLEN/FAA AIRPORT;72250.1;26.18;-98.23;30 -4701;UNITED STATES OF AMERICA;HARLINGEN;72250.2;26.23;-97.65;11 -4702;UNITED STATES OF AMERICA;KINGSVILLE/NAAS;72251.2;27.50;-97.82;17 -4703;UNITED STATES OF AMERICA;LAREDO;72251.3;27.53;-99.47;153 -4704;UNITED STATES OF AMERICA;CORPUS CHRISTI/NAS;72251.4;27.68;-97.28;6 -4705;UNITED STATES OF AMERICA;BEEVILLE/CHASE NAAS;72251.6;28.37;-97.67;60 -4706;UNITED STATES OF AMERICA;COTULLA/FAA AIRPORT;72253.2;28.45;-99.22;141 -4707;UNITED STATES OF AMERICA;HONDO/WSMO AIRPORT;72253.3;29.35;-99.17;278 -4708;UNITED STATES OF AMERICA;SAN ANTONIO/BROOKS AFB;72253.4;29.35;-98.45;182 -4709;UNITED STATES OF AMERICA;SAN ANTONIO/KELLY FIELD AFB;72253.5;29.38;-98.58;208 -4710;UNITED STATES OF AMERICA;RANDOLPH/AFB;72253.6;29.53;-98.28;231 -4711;UNITED STATES OF AMERICA;AUSTIN/ROBERT;72254;30.30;-97.70;189 -4712;UNITED STATES OF AMERICA;AUSTIN/BERGSTROM AFB;72254.3;30.20;-97.67;155 -4713;UNITED STATES OF AMERICA;VICTORIA/VICT;72255;28.85;-96.92;36 -4714;UNITED STATES OF AMERICA;PALACIOS/FAA AIRPORT;72255.1;28.72;-96.25;5 -4715;UNITED STATES OF AMERICA;"WACO, MADISON-";72256;31.62;-97.22;155 -4716;UNITED STATES OF AMERICA;WACO/JAMES CONNALLY AFB;72256.1;31.63;-97.07;153 -4717;UNITED STATES OF AMERICA;COLLEGE STATION/EASTERWOOD FL;72257.1;30.58;-96.37;97 -4718;UNITED STATES OF AMERICA;BRYAN/AFB;72257.2;30.67;-96.55;84 -4719;UNITED STATES OF AMERICA;ROBERT GRAY/AAF;72257.4;31.07;-97.83;312 -4720;UNITED STATES OF AMERICA;FORT HOOD;72257.6;31.13;-97.72;280 -4721;UNITED STATES OF AMERICA;DALLAS-FORT W;72259;32.90;-97.03;182 -4722;UNITED STATES OF AMERICA;DALLAS/HENSLEY FLD NAS;72259.1;32.73;-96.97;143 -4723;UNITED STATES OF AMERICA;DALLAS/FAA AP;72259.2;32.85;-96.85;134 -4724;UNITED STATES OF AMERICA;PERRIN;72259.5;33.72;-96.67;233 -4725;UNITED STATES OF AMERICA;STEPHENVILLE/;72260;32.22;-98.18;402 -4726;UNITED STATES OF AMERICA;MINERAL WELLS/MUNICIPAL AP;72260.3;32.78;-98.07;283 -4727;UNITED STATES OF AMERICA;DEL RIO/INT.;72261;29.37;-100.92;313 -4728;UNITED STATES OF AMERICA;DEL RIO/LAUGHLIN AFB;72261.3;29.37;-100.78;327 -4729;UNITED STATES OF AMERICA;CARLSBAD/FAA AIRPORT;72262.1;32.33;-104.27;986 -4730;UNITED STATES OF AMERICA;SAN ANGELO/MA;72263;31.37;-100.50;582 -4731;UNITED STATES OF AMERICA;SAN ANGELO/GOODFELLOW AFB;72263.1;31.40;-100.40;573 -4732;UNITED STATES OF AMERICA;MIDLAND/MIDLA;72265;31.95;-102.18;872 -4733;UNITED STATES OF AMERICA;WINK/FAA AIRPORT;72265.2;31.78;-103.20;857 -4734;UNITED STATES OF AMERICA;WEBB/AFB;72265.3;32.22;-101.52;781 -4735;UNITED STATES OF AMERICA;ABILENE/MUN.;72266;32.42;-99.68;546 -4736;UNITED STATES OF AMERICA;ABILENE/DYESS AFB;72266.1;32.43;-99.85;542 -4737;UNITED STATES OF AMERICA;LUBBOCK/LUBBO;72267;33.65;-101.82;988 -4738;UNITED STATES OF AMERICA;REESE/AFB;72267.1;33.60;-102.05;1014 -4739;UNITED STATES OF AMERICA;BIGGS/AFB;72270.1;31.83;-106.40;1196 -4740;UNITED STATES OF AMERICA;TRUTH OR;72271;33.23;-107.27;1481 -4741;UNITED STATES OF AMERICA;DOUGLAS/FAA AP;72273.2;31.47;-109.60;1250 -4742;UNITED STATES OF AMERICA;FORT HUACHUCA;72273.3;31.57;-110.33;1422 -4743;UNITED STATES OF AMERICA;TUCSON/INT.;72274;32.12;-110.93;779 -4744;UNITED STATES OF AMERICA;DAVIS MONTHAN/AFB;72274.1;32.17;-110.88;809 -4745;UNITED STATES OF AMERICA;PHOENIX/SKY H;72278;33.43;-112.02;337 -4746;UNITED STATES OF AMERICA;WILLIAMS/AFB;72278.2;33.30;-111.67;412 -4747;UNITED STATES OF AMERICA;LITCHFIELD PARK/NAF;72278.6;33.43;-112.37;292 -4748;UNITED STATES OF AMERICA;LUKE/AFB;72278.7;33.55;-112.37;331 -4749;UNITED STATES OF AMERICA;YUMA/YUMA INT;72280;32.65;-114.60;63 -4750;UNITED STATES OF AMERICA;YUMA ARIZONA;72280.2;32.73;-114.62;63 -4751;UNITED STATES OF AMERICA;BLYTHE/RIVERSIDE CO ARPT;72280.3;33.62;-114.72;118 -4752;UNITED STATES OF AMERICA;EL CENTRO/NAF;72281.1;32.82;-115.67;-13 -4753;UNITED STATES OF AMERICA;IMPERIAL/FAA AIRPORT;72281.2;32.83;-115.57;-18 -4754;UNITED STATES OF AMERICA;MARCH/AFB;72286.1;33.90;-117.25;462 -4755;UNITED STATES OF AMERICA;BEAUMONT;72286.2;33.90;-117.00;792 -4756;UNITED STATES OF AMERICA;SAN BERNARDINO;72286.4;34.10;-117.30;357 -4757;UNITED STATES OF AMERICA;NORTON/AFB;72286.5;34.10;-117.25;339 -4758;UNITED STATES OF AMERICA;HOLLYWOOD-BURBANK/WB AIRPORT;72289.2;34.20;-118.37;226 -4759;UNITED STATES OF AMERICA;SAN DIEGO/LIN;72290;32.73;-117.17;9 -4760;UNITED STATES OF AMERICA;IMPERIAL BEACH/REAM FIELD NAS;72290.1;32.57;-117.12;6 -4761;UNITED STATES OF AMERICA;SAN DIEGO/NORTH ISLAND NAS;72290.3;32.70;-117.20;15 -4762;UNITED STATES OF AMERICA;SAN CLEMENTE/ISLAND NAAS;72291.1;33.02;-118.58;52 -4763;UNITED STATES OF AMERICA;SAN NICHOLAS/ISLAND;72291.2;33.25;-119.45;173 -4764;UNITED STATES OF AMERICA;SAN DIEGO/MIR;72293;32.85;-117.12;128 -4765;UNITED STATES OF AMERICA;ESCONDIDO;72293.2;33.10;-117.10;200 -4766;UNITED STATES OF AMERICA;LOS ANGELES CALIFORNIA;72295;33.72;-118.27;-999 -4767;UNITED STATES OF AMERICA;SANTA CATALINA/CATALINA ARPT;72297.1;33.40;-118.42;482 -4768;UNITED STATES OF AMERICA;EL TORO/MCAS;72297.3;33.67;-117.73;116 -4769;UNITED STATES OF AMERICA;TUSTIN/MCAF;72297.4;33.70;-117.83;18 -4770;UNITED STATES OF AMERICA;LOS ALAMITOS;72297.7;33.80;-118.05;8 -4771;UNITED STATES OF AMERICA;FAYETTEVILLE/POPE AFB;72303.2;35.17;-79.02;60 -4772;UNITED STATES OF AMERICA;NEW RIVER/MCAF;72305.1;34.70;-77.38;5 -4773;UNITED STATES OF AMERICA;RALEIGH/RALEI;72306;35.87;-78.78;134 -4774;UNITED STATES OF AMERICA;WELDON;72306.7;36.40;-77.60;25 -4775;UNITED STATES OF AMERICA;ELIZABETH CITY/FAA AIRPORT;72308.1;36.27;-76.18;3 -4776;UNITED STATES OF AMERICA;OCEANA/NAS;72308.3;36.82;-76.03;8 -4777;UNITED STATES OF AMERICA;NORFOLK/NAS;72308.4;36.95;-76.28;10 -4778;UNITED STATES OF AMERICA;CHERRY POINT/MCAS;72309.1;34.90;-76.88;11 -4779;UNITED STATES OF AMERICA;NEW BERN/FAA AIRPORT;72309.2;35.07;-77.05;5 -4780;UNITED STATES OF AMERICA;"ATHENS/MUN., G";72311;33.95;-83.32;247 -4781;UNITED STATES OF AMERICA;ANDERSON/FAA AIRPORT;72312.2;34.50;-82.72;231 -4782;UNITED STATES OF AMERICA;GREENVILLE/DONALDSON AFB;72312.8;34.77;-82.38;298 -4783;UNITED STATES OF AMERICA;SPARTANBURG;72312.9;34.92;-81.95;244 -4784;UNITED STATES OF AMERICA;CHARLOTTE/DOU;72314;35.22;-80.93;234 -4785;UNITED STATES OF AMERICA;HICKORY/FAA AIRPORT;72314.4;35.73;-81.38;348 -4786;UNITED STATES OF AMERICA;ASHEVILLE/MUN;72315;35.43;-82.55;661 -4787;UNITED STATES OF AMERICA;BRISTOL/TRI CITY AIRPORT;72315.8;36.48;-82.40;474 -4788;UNITED STATES OF AMERICA;GREENSBORO/G.;72317;36.08;-79.95;270 -4789;UNITED STATES OF AMERICA;WINSTON SALEM/REYNOLDS AIRPOR;72317.2;36.13;-80.23;294 -4790;UNITED STATES OF AMERICA;ROME/WSO AIRPORT;72320.2;34.35;-85.17;195 -4791;UNITED STATES OF AMERICA;HUNTSVILLE/MADISON COUNTY JET;72323.1;34.65;-86.77;192 -4792;UNITED STATES OF AMERICA;FLORENCE/ALI;72323.3;34.80;-87.70;176 -4793;UNITED STATES OF AMERICA;CHATTANOOGA/L;72324;35.03;-85.20;210 -4794;UNITED STATES OF AMERICA;KNOXVILLE;72326;35.80;-83.98;299 -4795;UNITED STATES OF AMERICA;CROSSVILLE/FAA AIRPORT;72326.1;35.95;-85.08;573 -4796;UNITED STATES OF AMERICA;OAK RIDGE/ATDL;72326.4;36.02;-84.23;275 -4797;UNITED STATES OF AMERICA;NASHVILLE/;72327;36.12;-86.68;180 -4798;UNITED STATES OF AMERICA;SEWART/AFB;72327.3;36.00;-86.53;163 -4799;UNITED STATES OF AMERICA;BLYTHEVILLE/AFB;72330.1;35.97;-89.95;80 -4800;UNITED STATES OF AMERICA;WALNUT RIDGE/MUNICIPAL ARPT;72330.2;36.13;-90.93;83 -4801;UNITED STATES OF AMERICA;TUPELO/C D LEMONS ARPT;72332.1;34.27;-88.77;107 -4802;UNITED STATES OF AMERICA;MEMPHIS/INTNL;72334;35.05;-90.00;87 -4803;UNITED STATES OF AMERICA;MEMPHIS/NAS;72334.5;35.35;-89.87;90 -4804;UNITED STATES OF AMERICA;JACKSON/FCWOS AP;72334.7;35.60;-88.92;132 -4805;UNITED STATES OF AMERICA;NORTH LITTLE;72340;34.83;-92.25;165 -4806;UNITED STATES OF AMERICA;PINE BLUFF/FAA AIRPORT;72340.2;34.17;-91.93;63 -4807;UNITED STATES OF AMERICA;LITTLE ROCK/AFB;72340.5;34.92;-92.15;103 -4808;UNITED STATES OF AMERICA;FORT SMITH/MU;72344;35.33;-94.37;141 -4809;UNITED STATES OF AMERICA;FAYETTEVILLE/FAA AIRPORT;72344.2;36.00;-94.17;381 -4810;UNITED STATES OF AMERICA;WICHITA FALLS;72351;33.97;-98.48;314 -4811;UNITED STATES OF AMERICA;CHILDRESS/FCWOS AP;72352.2;34.43;-100.28;594 -4812;UNITED STATES OF AMERICA;ALTUS/AFB;72352.4;34.65;-99.27;414 -4813;UNITED STATES OF AMERICA;CLINTON/SHERMAN AFB;72352.8;35.33;-99.20;588 -4814;UNITED STATES OF AMERICA;OKLAHOMA CITY;72353;35.38;-97.60;398 -4815;UNITED STATES OF AMERICA;OKLAHOMA CITY/TINKER AFB;72354.2;35.42;-97.38;384 -4816;UNITED STATES OF AMERICA;FORT SILL/POST FIELD AF;72355.2;34.65;-98.40;369 -4817;UNITED STATES OF AMERICA;"TULSA/INT., O";72356;36.20;-95.88;195 -4818;UNITED STATES OF AMERICA;DALHART/MUNICIPAL AP;72360.1;36.02;-102.55;1216 -4819;UNITED STATES OF AMERICA;RATON/CREWS FIELD;72360.3;36.75;-104.50;1946 -4820;UNITED STATES OF AMERICA;AMARILLO/INTL;72363;35.22;-101.72;1098 -4821;UNITED STATES OF AMERICA;COLUMBUS;72364.1;31.83;-107.65;1267 -4822;UNITED STATES OF AMERICA;DEMING/FAA AIRPORT;72364.3;32.25;-107.70;1311 -4823;UNITED STATES OF AMERICA;ALBUQUERQUE/I;72365;35.05;-106.62;1620 -4824;UNITED STATES OF AMERICA;GRANTS/MILAN MUNI AP;72365.3;35.17;-107.90;1987 -4825;UNITED STATES OF AMERICA;SANTA FE;72365.5;35.62;-106.08;1935 -4826;UNITED STATES OF AMERICA;LAS VEGAS/FAA AIRPORT;72365.6;35.65;-105.15;2093 -4827;UNITED STATES OF AMERICA;"LOS ALAMOS, NM";72365.8;35.90;-106.30;2259 -4828;UNITED STATES OF AMERICA;"WOLF CANYON, NM";72365.9;36.00;-106.80;2484 -4829;UNITED STATES OF AMERICA;BRYCE CANYON/FAA AIRPORT;72371.5;37.70;-112.15;2312 -4830;UNITED STATES OF AMERICA;"WINSLOW, AZ.";72374;35.02;-110.73;1488 -4831;UNITED STATES OF AMERICA;"SPRINGERVILLE, AZ";72374.2;34.10;-109.30;2152 -4832;UNITED STATES OF AMERICA;ZUNI;72374.5;35.07;-108.83;1923 -4833;UNITED STATES OF AMERICA;PRESCOTT/MUNICIPAL;72376.3;34.65;-112.43;1531 -4834;UNITED STATES OF AMERICA;FLAGSTAFF;72376.4;35.10;-111.70;2135 -4835;UNITED STATES OF AMERICA;GEORGE/AFB;72381.1;34.58;-117.38;869 -4836;UNITED STATES OF AMERICA;EDWARDS/AFB;72381.2;34.90;-117.87;706 -4837;UNITED STATES OF AMERICA;PALMDALE;72382.1;34.63;-118.08;768 -4838;UNITED STATES OF AMERICA;LANCASTER/FSS;72382.2;34.73;-118.22;712 -4839;UNITED STATES OF AMERICA;SANDBERG/WSMO;72383.2;34.75;-118.73;1376 -4840;UNITED STATES OF AMERICA;BAKERSFIELD/M;72384;35.43;-119.05;150 -4841;UNITED STATES OF AMERICA;LAS VEGAS/MCC;72386;36.08;-115.17;664 -4842;UNITED STATES OF AMERICA;NELLIS/AFB;72386.3;36.25;-115.03;573 -4843;UNITED STATES OF AMERICA;MERCURY/DESER;72387;36.62;-116.02;1009 -4844;UNITED STATES OF AMERICA;PASO ROBLES/MUNICIPAL ARPT;72390.2;35.67;-120.63;243 -4845;UNITED STATES OF AMERICA;POINT MUGU/NF;72391.1;34.12;-119.12;3 -4846;UNITED STATES OF AMERICA;OXNARD/AAF;72391.2;34.22;-119.08;20 -4847;UNITED STATES OF AMERICA;SANTA MARIA/P;72394;34.90;-120.45;73 -4848;UNITED STATES OF AMERICA;SAN LUIS OBISPO;72394.1;35.30;-120.70;19 -4849;UNITED STATES OF AMERICA;RICHMOND/BYRD;72401;37.50;-77.33;54 -4850;UNITED STATES OF AMERICA;WALLOPS ISLAND;72402.1;37.85;-75.48;4 -4851;UNITED STATES OF AMERICA;CHINCOTEAGUE/NAS;72402.2;37.93;-75.43;15 -4852;UNITED STATES OF AMERICA;WASHINGTON/DU;72403;38.95;-77.45;98 -4853;UNITED STATES OF AMERICA;FREDERICK;72403.5;39.42;-77.38;94 -4854;UNITED STATES OF AMERICA;DAHLGREN/WEAPONS LAB;72404.1;38.33;-77.03;6 -4855;UNITED STATES OF AMERICA;PATUXENT RIVER;72404.2;38.33;-76.42;11 -4856;UNITED STATES OF AMERICA;WASHINGTON/NA;72405;38.85;-77.03;20 -4857;UNITED STATES OF AMERICA;QUANTICO/MCAS;72405.2;38.50;-77.30;4 -4858;UNITED STATES OF AMERICA;DAVISON/AAF;72405.3;38.72;-77.18;27 -4859;UNITED STATES OF AMERICA;BALTIMORE/BLT-WASHNGTN INTL;72406;39.18;-76.67;45 -4860;UNITED STATES OF AMERICA;ANNAPOLIS/NAF;72406.2;38.98;-76.47;8 -4861;UNITED STATES OF AMERICA;ATLANTIC CITY;72407;39.45;-74.57;20 -4862;UNITED STATES OF AMERICA;DOVER/AFB;72407.1;39.13;-75.47;7 -4863;UNITED STATES OF AMERICA;MILLVILLE/FAA AIRPORT;72407.2;39.37;-75.07;22 -4864;UNITED STATES OF AMERICA;ATLANTIC CITY/NAS;72407.4;39.45;-74.58;20 -4865;UNITED STATES OF AMERICA;PHILADELPHIA;72408;40.00;-75.20;9 -4866;UNITED STATES OF AMERICA;WILMINGTON/GREATER WILMINGTON;72408.3;39.67;-75.60;24 -4867;UNITED STATES OF AMERICA;PHILADELPHIA;72408.6;39.95;-75.15;11 -4868;UNITED STATES OF AMERICA;WILLOW GROVE/NAS;72408.10;40.20;-75.15;102 -4869;UNITED STATES OF AMERICA;MCGUIRE/AFB;72409.1;40.02;-74.60;45 -4870;UNITED STATES OF AMERICA;LAKEHURST/NAS;72409.2;40.03;-74.35;34 -4871;UNITED STATES OF AMERICA;BELMAR/ASC;72409.3;40.18;-74.07;26 -4872;UNITED STATES OF AMERICA;TRENTON;72409.4;40.20;-74.80;17 -4873;UNITED STATES OF AMERICA;LYNCHBURG/MUN;72410;37.33;-79.20;286 -4874;UNITED STATES OF AMERICA;ROANOKE/MUN.;72411;37.32;-79.97;358 -4875;UNITED STATES OF AMERICA;BECKLEY;72412;37.78;-81.12;766 -4876;UNITED STATES OF AMERICA;BLUEFIELD/MERCER CO AP;72412.2;37.30;-81.22;875 -4877;UNITED STATES OF AMERICA;CHARLESTON/KA;72414;38.37;-81.60;299 -4878;UNITED STATES OF AMERICA;PARKERSBURG/WSO;72414.4;39.27;-81.57;201 -4879;UNITED STATES OF AMERICA;PARKERSBURG/WOOD CO;72414.5;39.35;-81.43;262 -4880;UNITED STATES OF AMERICA;ELKINS/RANDOLPH CO ARPT;72417.3;38.88;-79.85;604 -4881;UNITED STATES OF AMERICA;MORGANTOWN/FAA AIRPORT;72417.10;39.65;-79.92;378 -4882;UNITED STATES OF AMERICA;CINCINNATI/GR;72421;39.05;-84.67;267 -4883;UNITED STATES OF AMERICA;CINCINNATI/LUNKEN AIRPORT;72421.2;39.10;-84.43;149 -4884;UNITED STATES OF AMERICA;LEXINGTON/BLU;72422;38.03;-84.60;301 -4885;UNITED STATES OF AMERICA;LONDON/FAA AIRPORT;72422.1;37.08;-84.07;362 -4886;UNITED STATES OF AMERICA;LOUISVILLE/;72423;38.18;-85.73;149 -4887;UNITED STATES OF AMERICA;FORT KNOX/GODMAN AAF;72424.3;37.90;-85.97;239 -4888;UNITED STATES OF AMERICA;"HUNTINGTON, W";72425;38.37;-82.55;255 -4889;UNITED STATES OF AMERICA;JACKSON/WSO;72425.1;37.60;-83.32;413 -4890;UNITED STATES OF AMERICA;WILMINGTON/CLINTON COUNTY AFB;72426.3;39.43;-83.80;325 -4891;UNITED STATES OF AMERICA;COLUMBUS;72428;40.00;-82.88;254 -4892;UNITED STATES OF AMERICA;LOCKBOURNE;72428.1;39.82;-82.93;230 -4893;UNITED STATES OF AMERICA;SIDNEY;72428.5;40.30;-84.20;285 -4894;UNITED STATES OF AMERICA;DAYTON/. COX;72429;39.90;-84.20;306 -4895;UNITED STATES OF AMERICA;EVANSVILLE/RE;72432;38.05;-87.53;118 -4896;UNITED STATES OF AMERICA;ST.LOUIS/LAMB;72434;38.75;-90.37;172 -4897;UNITED STATES OF AMERICA;BELLEVILLE/SCOTT AFB;72434.2;38.55;-89.85;135 -4898;UNITED STATES OF AMERICA;ST LOUIS/EADS BRIDGE;72434.3;38.63;-90.20;142 -4899;UNITED STATES OF AMERICA;"PADUCAH, KY.";72435;37.07;-88.77;126 -4900;UNITED STATES OF AMERICA;CAIRO;72435.2;37.00;-89.20;96 -4901;UNITED STATES OF AMERICA;INDIANAPOLIS/;72438;39.73;-86.27;246 -4902;UNITED STATES OF AMERICA;COLUMBUS/BAKALAR;72438.3;39.27;-85.90;200 -4903;UNITED STATES OF AMERICA;TERRE HAUTE;72438.4;39.50;-87.30;169 -4904;UNITED STATES OF AMERICA;VANDALIA/FAA AIRPORT;72439.1;38.98;-89.17;163 -4905;UNITED STATES OF AMERICA;SPRINGFIELD/ILI;72439.5;39.80;-89.70;179 -4906;UNITED STATES OF AMERICA;SPRINGFIELD/M;72440;37.23;-93.38;387 -4907;UNITED STATES OF AMERICA;HARRISON/FAA AIRPORT;72440.1;36.27;-93.15;418 -4908;UNITED STATES OF AMERICA;JOPLIN/FAA AIRPORT;72440.4;37.15;-94.50;298 -4909;UNITED STATES OF AMERICA;COLUMBIA/REGI;72445;38.82;-92.22;274 -4910;UNITED STATES OF AMERICA;VICHY/ROLLA NATL ARPT;72445.1;38.12;-91.77;350 -4911;UNITED STATES OF AMERICA;OLATHE/NAS;72446.2;38.83;-94.88;328 -4912;UNITED STATES OF AMERICA;RICHARDS GEBAUR/AFB;72446.3;38.85;-94.55;336 -4913;UNITED STATES OF AMERICA;KANSAS CITY/MUNICIPAL ARPT;72446.6;39.12;-94.60;228 -4914;UNITED STATES OF AMERICA;FORT LEAVENWORTH/SHERMAN AFB;72446.8;39.37;-94.92;239 -4915;UNITED STATES OF AMERICA;ST JOSEPH/WBO;72449.3;39.77;-94.87;295 -4916;UNITED STATES OF AMERICA;WICHITA/MID-;72450;37.65;-97.43;409 -4917;UNITED STATES OF AMERICA;MCCONNEL/AFB;72450.1;37.62;-97.27;414 -4918;UNITED STATES OF AMERICA;DODGE CITY/MU;72451;37.77;-99.97;790 -4919;UNITED STATES OF AMERICA;GARDEN CITY/9 ESE;72451.3;37.93;-100.72;878 -4920;UNITED STATES OF AMERICA;FORT RILEY/MARSHALL AAF;72455.1;39.05;-96.77;324 -4921;UNITED STATES OF AMERICA;TOPEKA/MUN.;72456;39.07;-95.62;270 -4922;UNITED STATES OF AMERICA;FORBES/AFB;72456.3;38.95;-95.67;337 -4923;UNITED STATES OF AMERICA;CONCORDIA/BLO;72458;39.55;-97.65;452 -4924;UNITED STATES OF AMERICA;"ALAMOSA, CO.";72462;37.43;-105.87;2299 -4925;UNITED STATES OF AMERICA;"TRES PIEDRAS, NM";72462.2;36.70;-106.00;2475 -4926;UNITED STATES OF AMERICA;"WOLF CREEK PASS, CO";72462.6;37.50;-106.80;3244 -4927;UNITED STATES OF AMERICA;PUEBLO/MEMORI;72464;38.28;-104.50;1439 -4928;UNITED STATES OF AMERICA;TRINIDAD/FAA ARPT;72464.2;37.25;-104.33;1751 -4929;UNITED STATES OF AMERICA;LA JUNTA/4 NNE;72464.4;38.05;-103.52;1277 -4930;UNITED STATES OF AMERICA;GOODLAND/RENN;72465;39.37;-101.68;1124 -4931;UNITED STATES OF AMERICA;COLORADO SPRINGS;72466.1;38.82;-104.72;1882 -4932;UNITED STATES OF AMERICA;DENVER/STAPLE;72469;39.78;-104.87;1626 -4933;UNITED STATES OF AMERICA;BUCKLEY FIELD/ANG;72469.2;39.70;-104.75;1727 -4934;UNITED STATES OF AMERICA;DENVER/LOWRY AFB;72469.3;39.72;-104.90;1645 -4935;UNITED STATES OF AMERICA;"BERTHOUD PASS, CO";72469.4;39.80;-105.80;4338 -4936;UNITED STATES OF AMERICA;"FRASER, CO";72469.5;40.00;-105.80;2609 -4937;UNITED STATES OF AMERICA;"NIWOT RIDGE C1, CO";72469.6;40.00;-105.50;3018 -4938;UNITED STATES OF AMERICA;"NIWOT RIDGE D1, CO";72469.8;40.10;-105.60;3743 -4939;UNITED STATES OF AMERICA;CEDAR CITY/FAA AIRPORT;72471.1;37.70;-113.10;1709 -4940;UNITED STATES OF AMERICA;MILFORD/WSMO;72471.6;38.43;-113.02;1533 -4941;UNITED STATES OF AMERICA;DELTA/FAA AIRPORT;72471.11;39.38;-112.52;1452 -4942;UNITED STATES OF AMERICA;GRAND JUNCTIO;72476;39.12;-108.53;1475 -4943;UNITED STATES OF AMERICA;"CRESTED BUTTE, CO";72476.4;38.90;-107.00;2699 -4944;UNITED STATES OF AMERICA;BISHOP/ARPT;72480.2;37.37;-118.37;1253 -4945;UNITED STATES OF AMERICA;TONOPAH/AIRPORT;72480.3;38.07;-117.08;1654 -4946;UNITED STATES OF AMERICA;CASTLE/AFB;72481.2;37.38;-120.57;60 -4947;UNITED STATES OF AMERICA;MATHER/AFB;72483.2;38.57;-121.30;40 -4948;UNITED STATES OF AMERICA;SACRAMENTO CITY;72483.3;38.60;-121.50;6 -4949;UNITED STATES OF AMERICA;MCCLELLAN/AFB;72483.4;38.67;-121.40;25 -4950;UNITED STATES OF AMERICA;ELY/YELLAND;72486;39.28;-114.85;1909 -4951;UNITED STATES OF AMERICA;FALLON/NAAS;72488.2;39.42;-118.72;1199 -4952;UNITED STATES OF AMERICA;STEAD/AFB;72489.1;39.67;-119.87;1532 -4953;UNITED STATES OF AMERICA;MONTEREY/NAF;72491.1;36.60;-121.87;50 -4954;UNITED STATES OF AMERICA;SALINAS/FAA AIRPORT;72491.2;36.67;-121.60;21 -4955;UNITED STATES OF AMERICA;HOLLISTER;72491.3;36.80;-121.40;85 -4956;UNITED STATES OF AMERICA;STOCKTON/METR;72492;37.90;-121.25;8 -4957;UNITED STATES OF AMERICA;OAKLAND/METRO;72493;37.73;-122.22;3 -4958;UNITED STATES OF AMERICA;SAN FRANCISCO;72494;37.62;-122.38;5 -4959;UNITED STATES OF AMERICA;ISLIP/LONG ISL MACARTHUR AP;72501.1;40.78;-73.10;25 -4960;UNITED STATES OF AMERICA;SUFFOLK COUNTY/AFB;72501.2;40.85;-72.63;18 -4961;UNITED STATES OF AMERICA;NEWARK/INTL ARPT;72502.3;40.70;-74.17;8 -4962;UNITED STATES OF AMERICA;NEW YORK/FORT TOTTEN;72503.2;40.78;-73.77;7 -4963;UNITED STATES OF AMERICA;STEWART/FIELD;72503.6;41.50;-74.10;177 -4964;UNITED STATES OF AMERICA;BRIDGEPORT/SIKORSKY MEMORIAL;72504.2;41.17;-73.13;8 -4965;UNITED STATES OF AMERICA;NEW HAVEN/TWEED;72504.3;41.30;-72.90;7 -4966;UNITED STATES OF AMERICA;QUONSET POINT/NAS;72507.4;41.58;-71.42;9 -4967;UNITED STATES OF AMERICA;HARTFORD/BRAD;72508;41.93;-72.68;55 -4968;UNITED STATES OF AMERICA;HARTFORD/BRAINARD FIELD;72508.1;41.73;-72.65;6 -4969;UNITED STATES OF AMERICA;BOSTON/LOGAN;72509;42.37;-71.03;9 -4970;UNITED STATES OF AMERICA;WILKES-BARRE-;72513;41.33;-75.73;289 -4971;UNITED STATES OF AMERICA;ALTOONA/BLAIR COUNTY ARPT;72514.1;40.30;-78.32;450 -4972;UNITED STATES OF AMERICA;PHILIPSBURG/MID-STATE AP;72514.4;40.90;-78.08;586 -4973;UNITED STATES OF AMERICA;PITTSFIELD;72518.1;42.43;-73.30;357 -4974;UNITED STATES OF AMERICA;GLENS FALLS/AP;72518.5;43.35;-73.62;97 -4975;UNITED STATES OF AMERICA;PITTSBURGH/GR;72520;40.50;-80.22;373 -4976;UNITED STATES OF AMERICA;DUBOIS/FAA AIRPORT;72520.5;41.18;-78.90;552 -4977;UNITED STATES OF AMERICA;AKRON/AKRON-CANTON REG AP;72521;40.92;-81.43;378 -4978;UNITED STATES OF AMERICA;ZANESVILLE/FAA AIRPORT;72521.2;39.95;-81.90;270 -4979;UNITED STATES OF AMERICA;BRADFORD/FAA AIRPORT;72523.1;41.80;-78.63;645 -4980;UNITED STATES OF AMERICA;PENN YAN 8W;72523.6;42.67;-77.18;303 -4981;UNITED STATES OF AMERICA;CLEVELAND/CLE;72524;41.42;-81.87;245 -4982;UNITED STATES OF AMERICA;MANSFIELD/WSO AP;72524.1;40.82;-82.52;396 -4983;UNITED STATES OF AMERICA;SANDUSKY;72524.5;41.50;-82.70;192 -4984;UNITED STATES OF AMERICA;YOUNGSTOWN/WSO AP;72525;41.25;-80.67;365 -4985;UNITED STATES OF AMERICA;NIAGARA FALLS/AF;72528.4;43.10;-78.95;180 -4986;UNITED STATES OF AMERICA;MILLGROVE;72528.6;43.35;-79.93;267 -4987;UNITED STATES OF AMERICA;"CHICAGO/OHARE, ILLINOIS";72530;42.00;-87.90;205 -4988;UNITED STATES OF AMERICA;PARK RIDGE/AF;72530.2;41.98;-87.90;203 -4989;UNITED STATES OF AMERICA;GLENVIEW/NAS;72530.4;42.08;-87.83;197 -4990;UNITED STATES OF AMERICA;RANTOUL/CHANUTE AFB;72531.5;40.30;-88.15;230 -4991;UNITED STATES OF AMERICA;PEORIA/GREATE;72532;40.67;-89.68;202 -4992;UNITED STATES OF AMERICA;FORT WAYNE/MU;72533;41.00;-85.20;252 -4993;UNITED STATES OF AMERICA;CHICAGO/MIDWA;72534;41.78;-87.75;190 -4994;UNITED STATES OF AMERICA;SOUTH BEND/WSO AP;72535;41.70;-86.32;238 -4995;UNITED STATES OF AMERICA;TOLEDO/EXPRES;72536;41.60;-83.80;211 -4996;UNITED STATES OF AMERICA;FINDLAY/FAA AIRPORT;72536.3;41.02;-83.67;243 -4997;UNITED STATES OF AMERICA;DETROIT MICHIGAN WBAS;72537;42.40;-83.00;191 -4998;UNITED STATES OF AMERICA;"PELEE ISLAND, ON";72537.1;41.75;-82.68;175 -4999;UNITED STATES OF AMERICA;GROSSE ILE/NAS;72537.2;42.10;-83.17;180 -5000;UNITED STATES OF AMERICA;DETROIT/WBAP WILLOW RUN;72537.3;42.23;-83.53;237 -5001;UNITED STATES OF AMERICA;DETROIT/CITY AIRPORT;72537.6;42.42;-83.02;195 -5002;UNITED STATES OF AMERICA;JACKSON/REYNOLDS FIELD;72539.2;42.27;-84.47;306 -5003;UNITED STATES OF AMERICA;LANSING;72539.3;42.80;-84.60;256 -5004;UNITED STATES OF AMERICA;KIRKSVILLE/FAA ARPT;72540.1;40.10;-92.55;294 -5005;UNITED STATES OF AMERICA;ROCKFORD/WSO AP;72543.2;42.20;-89.10;223 -5006;UNITED STATES OF AMERICA;MOLINE/QUAD CITY ARPT;72544;41.45;-90.50;177 -5007;UNITED STATES OF AMERICA;BURLINGTON/AIRPORT;72544.2;40.78;-91.12;210 -5008;UNITED STATES OF AMERICA;OTTUMWA/INDUSTRIAL AP;72545.2;41.10;-92.45;256 -5009;UNITED STATES OF AMERICA;CEDAR RAPIDS/AP;72545.4;41.88;-91.70;256 -5010;UNITED STATES OF AMERICA;DES MOINES/MU;72546;41.53;-93.65;294 -5011;UNITED STATES OF AMERICA;DUBUQUE/MUN.;72547;42.40;-90.70;329 -5012;UNITED STATES OF AMERICA;WATERLOO/WSO AP;72548.3;42.55;-92.40;265 -5013;UNITED STATES OF AMERICA;MASON CITY/AP;72549.4;43.15;-93.33;363 -5014;UNITED STATES OF AMERICA;EPPLEY FIELD;72550;41.30;-95.90;299 -5015;UNITED STATES OF AMERICA;LINCOLN;72551.6;40.90;-96.80;351 -5016;UNITED STATES OF AMERICA;GRAND ISLAND/;72552;40.95;-98.32;566 -5017;UNITED STATES OF AMERICA;"OMAHA, NE.";72553;41.37;-96.02;406 -5018;UNITED STATES OF AMERICA;OMAHA/OFFUTT AFB;72554.4;41.12;-95.90;314 -5019;UNITED STATES OF AMERICA;NORFOLK/KARL;72556;41.98;-97.43;473 -5020;UNITED STATES OF AMERICA;SIOUX CITY/MU;72557;42.40;-96.38;336 -5021;UNITED STATES OF AMERICA;SIDNEY/MUN.;72561;41.10;-102.98;1312 -5022;UNITED STATES OF AMERICA;AKRON/1 N;72561.1;40.17;-103.22;1421 -5023;UNITED STATES OF AMERICA;LE ROY;72561.2;40.50;-103.00;1362 -5024;UNITED STATES OF AMERICA;NORTH PLATTE/;72562;41.13;-100.68;849 -5025;UNITED STATES OF AMERICA;SCOTTSBLUFF/COUNTY ARPT;72566.2;41.87;-103.60;1203 -5026;UNITED STATES OF AMERICA;VALENTINE/MIL;72567;42.87;-100.55;792 -5027;UNITED STATES OF AMERICA;CASPER/NATRON;72569;42.92;-106.47;1612 -5028;UNITED STATES OF AMERICA;DOUGLAS/AVIATION;72569.2;42.75;-105.38;1464 -5029;UNITED STATES OF AMERICA;MEEKER;72570.1;40.00;-107.90;1935 -5030;UNITED STATES OF AMERICA;SALT LAKE CIT;72572;40.78;-111.97;1288 -5031;UNITED STATES OF AMERICA;OGDEN/HILL AFB;72572.7;41.12;-111.97;1459 -5032;UNITED STATES OF AMERICA;LANDER/HUNT;72576;42.82;-108.73;1694 -5033;UNITED STATES OF AMERICA;POCATELLO/MUN;72578;42.92;-112.60;1365 -5034;UNITED STATES OF AMERICA;BURLEY/FAA AIRPORT;72578.3;42.53;-113.77;1267 -5035;UNITED STATES OF AMERICA;IDAHO FALLS/FAA AIRPORT;72578.6;43.52;-112.07;1441 -5036;UNITED STATES OF AMERICA;IDAHO FALLS/46 W;72578.7;43.53;-112.95;1505 -5037;UNITED STATES OF AMERICA;IDAHO FALLS/42 NW WB;72578.8;43.83;-112.68;1461 -5038;UNITED STATES OF AMERICA;DUBOIS/FAA AIRPORT;72578.11;44.17;-112.22;1564 -5039;UNITED STATES OF AMERICA;BEOWAWE;72582.1;40.60;-116.50;1431 -5040;UNITED STATES OF AMERICA;LOVELOCK/FAA AIRPORT;72583.2;40.07;-118.55;1188 -5041;UNITED STATES OF AMERICA;RED BLUFF/MUN;72591;40.15;-122.25;108 -5042;UNITED STATES OF AMERICA;MEDFORD/MEDFO;72597;42.37;-122.87;405 -5043;UNITED STATES OF AMERICA;KLAMATH FALLS/KINGSLEY FLD AF;72597.4;42.15;-121.73;1246 -5044;UNITED STATES OF AMERICA;KLAMATH FALLS/AGR STN;72597.5;42.17;-121.75;1246 -5045;UNITED STATES OF AMERICA;BLY 3NW;72597.9;42.43;-121.10;1334 -5046;UNITED STATES OF AMERICA;SEXTON SUMMIT;72597.10;42.62;-123.37;1170 -5047;UNITED STATES OF AMERICA;LEBANON/FAA AIRPORT;72604.1;43.63;-72.32;171 -5048;UNITED STATES OF AMERICA;CONCORD;72605;43.20;-71.50;104 -5049;UNITED STATES OF AMERICA;PORTSMOUTH/PEASE AFB;72605.1;43.08;-70.82;39 -5050;UNITED STATES OF AMERICA;"MT WASHINGTON, NH";72613.1;44.30;-71.30;1905 -5051;UNITED STATES OF AMERICA;MONTPELIER/AP;72614.2;44.20;-72.57;343 -5052;UNITED STATES OF AMERICA;DOW/AFB;72619.1;44.80;-68.82;52 -5053;UNITED STATES OF AMERICA;BANGOR/AIRPORT;72619.2;44.80;-68.82;56 -5054;UNITED STATES OF AMERICA;OLD TOWN/FAA AIRPORT;72619.4;44.95;-68.67;41 -5055;UNITED STATES OF AMERICA;GRAND RAPIDS/;72635;42.88;-85.52;245 -5056;UNITED STATES OF AMERICA;MUSKEGON/COUNTY ARPT;72636;43.17;-86.23;191 -5057;UNITED STATES OF AMERICA;GRAND HAVEN;72636.1;43.10;-86.20;189 -5058;UNITED STATES OF AMERICA;LUDINGTON;72636.5;43.90;-86.40;210 -5059;UNITED STATES OF AMERICA;FLINT/BISHOP;72637;42.97;-83.75;233 -5060;UNITED STATES OF AMERICA;SAGINAW/FAA AIRPORT;72637.2;43.53;-84.08;201 -5061;UNITED STATES OF AMERICA;HOUGHTON LAKE;72638;44.37;-84.68;351 -5062;UNITED STATES OF AMERICA;TRAVERSE CITY/CHERRY CAPITAL;72638.2;44.73;-85.58;188 -5063;UNITED STATES OF AMERICA;ALPENA/PHELPS;72639;45.07;-83.57;211 -5064;UNITED STATES OF AMERICA;OSCODA/WURTSMITH AFB;72639.2;44.45;-83.40;188 -5065;UNITED STATES OF AMERICA;MILWAUKEE/GEN;72640;42.95;-87.90;211 -5066;UNITED STATES OF AMERICA;MADISON/DANE;72641;43.13;-89.33;264 -5067;UNITED STATES OF AMERICA;LA CROSSE;72643.2;43.90;-91.30;198 -5068;UNITED STATES OF AMERICA;EAU CLAIRE;72643.5;44.90;-91.50;271 -5069;UNITED STATES OF AMERICA;ROCHESTER/MUN;72644;43.92;-92.50;402 -5070;UNITED STATES OF AMERICA;GREEN BAY/;72645;44.48;-88.13;214 -5071;UNITED STATES OF AMERICA;WAUSAU;72645.6;44.90;-89.60;365 -5072;UNITED STATES OF AMERICA;SIOUX FALLS/F;72651;43.58;-96.73;435 -5073;UNITED STATES OF AMERICA;HURON/HURON R;72654;44.38;-98.22;393 -5074;UNITED STATES OF AMERICA;ST.CLOUD/WHIT;72655;45.55;-94.07;312 -5075;UNITED STATES OF AMERICA;COLLEGEVILLE;72655.1;45.60;-94.40;373 -5076;UNITED STATES OF AMERICA;ALEXANDRIA/FAA AIRPORT;72655.2;45.87;-95.38;431 -5077;UNITED STATES OF AMERICA;FORT SNILLING;72658.2;44.90;-93.20;245 -5078;UNITED STATES OF AMERICA;RAPID CITY/AFB;72662.5;44.15;-103.10;980 -5079;UNITED STATES OF AMERICA;WORLAND/MUNICIPAL AP;72670.2;43.97;-107.97;1271 -5080;UNITED STATES OF AMERICA;BILLINGS/LOGA;72677;45.80;-108.53;1088 -5081;UNITED STATES OF AMERICA;LIVINGSTON/FAA AP;72677.2;45.70;-110.45;1418 -5082;UNITED STATES OF AMERICA;"BOISE/MUN., ID";72681;43.57;-116.22;874 -5083;UNITED STATES OF AMERICA;"BURNS, OR.";72683;43.58;-118.95;1271 -5084;UNITED STATES OF AMERICA;DAYVILLE;72683.4;44.50;-119.50;720 -5085;UNITED STATES OF AMERICA;"PENDLETON, OR.";72688;45.68;-118.85;456 -5086;UNITED STATES OF AMERICA;LA GRANDE;72688.4;45.30;-118.10;855 -5087;UNITED STATES OF AMERICA;MEACHAM;72688.7;45.50;-118.40;1237 -5088;UNITED STATES OF AMERICA;EUGENE/MAHLON;72693;44.12;-123.22;114 -5089;UNITED STATES OF AMERICA;SALEM/MCNARY;72694;44.92;-123.00;61 -5090;UNITED STATES OF AMERICA;REDMOND/FAA AIRPORT;72694.1;44.27;-121.15;932 -5091;UNITED STATES OF AMERICA;ALBANY;72694.3;44.60;-123.10;64 -5092;UNITED STATES OF AMERICA;PORTLAND/INT.;72698;45.60;-122.60;12 -5093;UNITED STATES OF AMERICA;THE DALLES;72698.5;45.60;-121.20;29 -5094;UNITED STATES OF AMERICA;DALLESPORT/FCWOS AP;72698.6;45.62;-121.15;73 -5095;UNITED STATES OF AMERICA;CASCADE LOCKS;72698.9;45.70;-121.90;30 -5096;UNITED STATES OF AMERICA;CARIBOU/MUN.;72712;46.87;-68.02;190 -5097;UNITED STATES OF AMERICA;LORING/AFB;72712.1;46.95;-67.88;229 -5098;UNITED STATES OF AMERICA;HOULTON/AIRPORT;72713.1;46.13;-67.78;151 -5099;UNITED STATES OF AMERICA;SAULT STE MARIE;72734;46.50;-84.40;220 -5100;UNITED STATES OF AMERICA;KINCHELOE/AFB;72734.1;46.25;-84.47;262 -5101;UNITED STATES OF AMERICA;SAULT STE.MAR;72734.4;46.47;-84.37;221 -5102;UNITED STATES OF AMERICA;MARQUETTE UNITED STATES;72743;46.60;-87.40;219 -5103;UNITED STATES OF AMERICA;GWINN/K I SAWYER AFB;72743.3;46.35;-87.38;378 -5104;UNITED STATES OF AMERICA;HOUGHTON/FAA AIRPORT;72744.1;47.17;-88.50;327 -5105;UNITED STATES OF AMERICA;"DULUTH/INT., M";72745;46.83;-92.18;432 -5106;UNITED STATES OF AMERICA;HIBBING/FAA AIRPORT;72745.3;47.38;-92.85;410 -5107;UNITED STATES OF AMERICA;INT.FALLS/FAL;72747;48.57;-93.38;361 -5108;UNITED STATES OF AMERICA;FARGO/HECTOR;72753;46.90;-96.80;274 -5109;UNITED STATES OF AMERICA;FERGUS FALLS;72753.1;46.30;-96.10;402 -5110;UNITED STATES OF AMERICA;GRAND FORKS/FAA AP;72753.9;47.95;-97.17;258 -5111;UNITED STATES OF AMERICA;JAMESTOWN/FAA AIRPORT;72758.2;46.92;-98.68;454 -5112;UNITED STATES OF AMERICA;GRAND FORKS/AF;72758.3;47.97;-97.40;276 -5113;UNITED STATES OF AMERICA;DEVILS LAKE;72758.4;48.12;-98.87;451 -5114;UNITED STATES OF AMERICA;BISMARCK/MUN.;72764;46.77;-100.75;506 -5115;UNITED STATES OF AMERICA;DICKINSON/FAA AIRPORT;72765.1;46.80;-102.80;787 -5116;UNITED STATES OF AMERICA;MINOT/FAA AIRPORT;72765.5;48.27;-101.28;522 -5117;UNITED STATES OF AMERICA;MINOT/AFB;72765.6;48.42;-101.35;497 -5118;UNITED STATES OF AMERICA;WILLISTON/SLO;72767;48.18;-103.63;581 -5119;UNITED STATES OF AMERICA;DILLON;72772.2;45.25;-112.62;1538 -5120;UNITED STATES OF AMERICA;BOZEMAN/GALLATIN FIELD;72772.7;45.78;-111.15;1362 -5121;UNITED STATES OF AMERICA;WHITEHALL/7 E;72772.8;45.87;-111.97;1304 -5122;UNITED STATES OF AMERICA;BUTTE/BERT MOONEY ARPT;72772.9;45.95;-112.50;1688 -5123;UNITED STATES OF AMERICA;MISSOULA / JO;72773;46.92;-114.08;972 -5124;UNITED STATES OF AMERICA;DRUMMOND/AVIATION;72773.4;46.67;-113.15;1201 -5125;UNITED STATES OF AMERICA;MULLAN PASS;72773.7;47.45;-115.67;1818 -5126;UNITED STATES OF AMERICA;LEWISTOWN;72775.2;47.10;-109.50;1263 -5127;UNITED STATES OF AMERICA;MALMSTROM/AFB;72775.3;47.52;-111.18;1056 -5128;UNITED STATES OF AMERICA;HAVRE/CTY CNTY MONTANA;72777.3;48.60;-109.70;788 -5129;UNITED STATES OF AMERICA;YAKIMA/YAKIMA;72781;46.57;-120.53;325 -5130;UNITED STATES OF AMERICA;WENATCHEE/PANGBORN FIELD;72781.5;47.40;-120.20;375 -5131;UNITED STATES OF AMERICA;MOSES LAKE/GRANT CO;72784.3;47.18;-119.32;360 -5132;UNITED STATES OF AMERICA;EPHRATA/AIRPORT FCWOS;72784.4;47.32;-119.52;383 -5133;UNITED STATES OF AMERICA;MULLAN/AIRPORT;72785.1;47.47;-115.77;1097 -5134;UNITED STATES OF AMERICA;FAIRCHILD/AFB;72786.3;47.63;-117.65;743 -5135;UNITED STATES OF AMERICA;WESTON;72788.2;45.80;-118.30;984 -5136;UNITED STATES OF AMERICA;"OLYMPIA, WA.";72792;46.97;-122.90;61 -5137;UNITED STATES OF AMERICA;HOQUIAM/AP;72792.3;46.98;-123.93;7 -5138;UNITED STATES OF AMERICA;SEATTLE WASHINGTON;72793;47.60;-122.33;6 -5139;UNITED STATES OF AMERICA;STAMPEDE PASS/WSMO;72793.1;47.28;-121.33;1209 -5140;UNITED STATES OF AMERICA;VASHON ISLAND;72793.3;47.50;-122.50;70 -5141;UNITED STATES OF AMERICA;SEATTLE/PORTAGE BAY;72793.6;47.65;-122.30;5 -5142;UNITED STATES OF AMERICA;SEATTLE/NAS;72793.8;47.68;-122.27;12 -5143;UNITED STATES OF AMERICA;EVERETT/PAINE AFB;72793.9;47.92;-122.28;182 -5144;UNITED STATES OF AMERICA;"QUILLAYUTE, WA";72797;47.95;-124.55;62 -5145;UNITED STATES OF AMERICA;TATOOSH ISLAND WASHINGTON;72797.2;48.38;-124.73;26 -5146;UNITED STATES OF AMERICA;MIDDLETOWN;74002.6;40.20;-76.77;113 -5147;UNITED STATES OF AMERICA;DUGWAY/PROVING GROUND;74003.2;40.18;-112.93;1329 -5148;UNITED STATES OF AMERICA;WHIDBEY ISLAND/NAS;74201.3;48.35;-122.67;10 -5149;UNITED STATES OF AMERICA;BELLINGHAM/INTL AP;74201.7;48.80;-122.53;45 -5150;UNITED STATES OF AMERICA;TACOMA/MC CHORD AFB;74206.2;47.15;-122.48;88 -5151;UNITED STATES OF AMERICA;REDWOOD FALLS/MUNI ARPT;74341.2;44.55;-95.08;312 -5152;UNITED STATES OF AMERICA;LONE ROCK/FAA AIRPORT;74357.3;43.20;-90.18;219 -5153;UNITED STATES OF AMERICA;PELLSTON/FAA AIRPORT;74365.1;45.57;-84.78;218 -5154;UNITED STATES OF AMERICA;WATERTOWN/AP;74370.4;44.00;-76.02;96 -5155;UNITED STATES OF AMERICA;MASSENA/AP;74370.9;44.93;-74.85;65 -5156;UNITED STATES OF AMERICA;BRUNSWICK/NAS;74392.1;43.88;-69.93;24 -5157;UNITED STATES OF AMERICA;AUGUSTA/AIRPORT;74392.3;44.32;-69.80;106 -5158;UNITED STATES OF AMERICA;GOODING/2 S;74413.4;42.92;-114.70;1126 -5159;UNITED STATES OF AMERICA;MOUNTAIN HOME/AFB;74413.6;43.05;-115.87;912 -5160;UNITED STATES OF AMERICA;EAGLE/FAA AIRPORT;74421.1;39.65;-106.92;1980 -5161;UNITED STATES OF AMERICA;"FOXPARK, WY";74431.1;41.10;-106.10;2757 -5162;UNITED STATES OF AMERICA;"ENCAMPMENT, WY";74431.2;41.20;-106.60;2252 -5163;UNITED STATES OF AMERICA;RAWLINS/MUNICIPAL AP;74431.4;41.80;-107.20;2053 -5164;UNITED STATES OF AMERICA;HILL CITY/1 NE;74433.2;39.38;-99.83;670 -5165;UNITED STATES OF AMERICA;IMPERIAL/FAA AIRPORT;74433.8;40.52;-101.62;998 -5166;UNITED STATES OF AMERICA;CHADRON/FAA AIRPORT;74437.2;42.83;-103.08;1008 -5167;UNITED STATES OF AMERICA;YANKTON;74445.3;42.90;-97.40;378 -5168;UNITED STATES OF AMERICA;"DAVENPORT, IA";74455;41.62;-90.58;229 -5169;UNITED STATES OF AMERICA;WEST LAFAYETTE/FCWOS;74466.1;40.42;-86.93;182 -5170;UNITED STATES OF AMERICA;PERU/GRISSOM AFB;74466.3;40.65;-86.15;251 -5171;UNITED STATES OF AMERICA;UTICA/FAA AIRPORT;74480.7;43.15;-75.38;217 -5172;UNITED STATES OF AMERICA;GRIFFISS/AFB;74480.8;43.23;-75.40;158 -5173;UNITED STATES OF AMERICA;NEW YORK/FLOYD BENNETT FIELD;74486.1;40.58;-73.88;10 -5174;UNITED STATES OF AMERICA;HEMPSTEAD/MITCHELL FLD AFB;74486.2;40.73;-73.60;38 -5175;UNITED STATES OF AMERICA;WORCESTER/WSO AP;74490.1;42.27;-71.87;301 -5176;UNITED STATES OF AMERICA;MAYNARD;74490.4;42.42;-71.48;63 -5177;UNITED STATES OF AMERICA;BEDFORD/HANSCOM FLD AFB;74490.5;42.47;-71.28;45 -5178;UNITED STATES OF AMERICA;CHICOPEE FALL;74491;42.20;-72.53;75 -5179;UNITED STATES OF AMERICA;SOUTH WEYMOUTH/NAS;74492.2;42.15;-70.93;48 -5180;UNITED STATES OF AMERICA;NANTUCKET/FAA AIRPORT;74494.1;41.25;-70.07;13 -5181;UNITED STATES OF AMERICA;FALMOUTH/OTIS AFB;74494.2;41.65;-70.52;40 -5182;UNITED STATES OF AMERICA;BEALE/AFB;74500.2;39.13;-121.43;38 -5183;UNITED STATES OF AMERICA;NEVADA CITY;74500.4;39.30;-121.00;783 -5184;UNITED STATES OF AMERICA;OROVILLE;74500.5;39.50;-121.60;76 -5185;UNITED STATES OF AMERICA;PLACERVILLE;74501.2;38.70;-120.80;576 -5186;UNITED STATES OF AMERICA;BLUE CANYON;74501.3;39.28;-120.70;1609 -5187;UNITED STATES OF AMERICA;ALAMEDA/NAS;74506.1;37.73;-122.32;5 -5188;UNITED STATES OF AMERICA;SAN FRANCISCO/MISSION DOLORES;74506.2;37.77;-122.43;22 -5189;UNITED STATES OF AMERICA;HAMILTON/AFB;74506.4;38.07;-122.52;4 -5190;UNITED STATES OF AMERICA;LOS GATOS;74509.1;37.20;-122.00;111 -5191;UNITED STATES OF AMERICA;SAN JOSE;74509.2;37.40;-121.90;20 -5192;UNITED STATES OF AMERICA;MOFFET FIELD/NAS;74509.3;37.42;-122.05;12 -5193;UNITED STATES OF AMERICA;TRAVIS/FIELD AFB;74516.2;38.27;-121.93;18 -5194;UNITED STATES OF AMERICA;"SILVERTON, CO";74521.5;37.80;-107.70;2842 -5195;UNITED STATES OF AMERICA;"LEADVILLE, CO";74531.1;39.20;-106.30;3062 -5196;UNITED STATES OF AMERICA;CHANUTE/FAA AIRPORT;74542.5;37.67;-95.48;298 -5197;UNITED STATES OF AMERICA;SALINA/FAA AIRPORT;74545.3;38.80;-97.65;384 -5198;UNITED STATES OF AMERICA;SCHILLING/AFB;74545.4;38.80;-97.63;392 -5199;UNITED STATES OF AMERICA;RUSSELL/MUNICIPAL ARPT;74545.5;38.87;-98.82;568 -5200;UNITED STATES OF AMERICA;EMPORIA/FAA AIRPORT;74546.1;38.33;-96.20;370 -5201;UNITED STATES OF AMERICA;WHITEMAN/AFB;74551.1;38.72;-93.55;255 -5202;UNITED STATES OF AMERICA;HANNIBAL;74556.3;39.70;-91.40;217 -5203;UNITED STATES OF AMERICA;QUINCY/FAA AIRPORT;74556.6;39.93;-91.20;232 -5204;UNITED STATES OF AMERICA;KEOKUK;74556.9;40.40;-91.40;161 -5205;UNITED STATES OF AMERICA;DAYTON/WRIGHT;74570;39.83;-84.05;251 -5206;UNITED STATES OF AMERICA;WRIGHT PATTERSON/AFB;74570.1;39.78;-84.10;245 -5207;UNITED STATES OF AMERICA;ANDREWS/AFB;74594.2;38.80;-76.88;84 -5208;UNITED STATES OF AMERICA;SALISBURY/WICOMICO CO AP;74595.1;38.33;-75.52;14 -5209;UNITED STATES OF AMERICA;LANGLEY/AFB;74598.1;37.08;-76.35;4 -5210;UNITED STATES OF AMERICA;FORT EUSTIS/FELKER AAF;74598.2;37.13;-76.60;7 -5211;UNITED STATES OF AMERICA;VANDENBERG AF;74604;34.78;-120.53;170 -5212;UNITED STATES OF AMERICA;SANTA BARBARA/FAA ARPT;74606.1;34.43;-119.83;2 -5213;UNITED STATES OF AMERICA;DAGGETT/FAA AIRPORT;74611.1;34.87;-116.78;585 -5214;UNITED STATES OF AMERICA;CHINA LAKE/ARMITAGE;74612.1;35.68;-117.68;676 -5215;UNITED STATES OF AMERICA;"MAGDELENA, NM";74630.2;34.10;-107.20;1993 -5216;UNITED STATES OF AMERICA;FORT WINGATE;74635.1;35.50;-108.50;2134 -5217;UNITED STATES OF AMERICA;GALLUP/SENATOR CLARKE FLD;74635.2;35.52;-108.78;1973 -5218;UNITED STATES OF AMERICA;FARMINGTON/MUNICIPAL ARPT;74635.4;36.75;-108.23;1686 -5219;UNITED STATES OF AMERICA;CLOVIS/CANNON AFB;74638.2;34.38;-103.32;1306 -5220;UNITED STATES OF AMERICA;GAGE/FAA AIRPORT;74640.5;36.30;-99.77;667 -5221;UNITED STATES OF AMERICA;WOODWARD;74640.6;36.40;-99.40;579 -5222;UNITED STATES OF AMERICA;ENID/VANCE AFB;74647.4;36.33;-97.90;393 -5223;UNITED STATES OF AMERICA;PONCA CITY/FAA AIRPORT;74647.7;36.73;-97.10;304 -5224;UNITED STATES OF AMERICA;MCALESTER/MUNICIPAL AP;74648.1;34.88;-95.78;231 -5225;UNITED STATES OF AMERICA;ARDMORE;74649.2;34.30;-97.02;240 -5226;UNITED STATES OF AMERICA;CAPE GIRARDEAU/FAA AIRPORT;74662.2;37.23;-89.57;102 -5227;UNITED STATES OF AMERICA;FORT CAMPBELL/AAF;74671.3;36.67;-87.48;173 -5228;UNITED STATES OF AMERICA;GOLDSBORO/SEYMOUR JOHNSON AFB;74693.3;35.33;-77.97;27 -5229;UNITED STATES OF AMERICA;WILMINGTON;74699.2;34.30;-77.90;9 -5230;UNITED STATES OF AMERICA;VISALIA;74702.2;36.30;-119.30;99 -5231;UNITED STATES OF AMERICA;LEMOORE/REEVES NAS;74702.3;36.33;-119.95;73 -5232;UNITED STATES OF AMERICA;THERMAL/FAA AIRPORT;74718.1;33.63;-116.17;-34 -5233;UNITED STATES OF AMERICA;GILA BEND/FAA AIRPORT;74724.2;32.95;-112.72;220 -5234;UNITED STATES OF AMERICA;"TUCUMCARI, NM";74731;35.08;-103.62;1241 -5235;UNITED STATES OF AMERICA;HOLLOMAN/AFB;74732.1;32.85;-106.10;1241 -5236;UNITED STATES OF AMERICA;"CLOUDCROFT, NM";74732.3;33.00;-105.80;2691 -5237;UNITED STATES OF AMERICA;"MESCALERO, NM";74732.5;33.20;-105.80;2068 -5238;UNITED STATES OF AMERICA;FORT STANTON;74732.6;33.50;-105.50;1896 -5239;UNITED STATES OF AMERICA;"CORONA, NM";74733.2;34.30;-105.60;2031 -5240;UNITED STATES OF AMERICA;JUNCTION/KIMB;74740;30.50;-99.77;522 -5241;UNITED STATES OF AMERICA;LUFKIN/FAA AIRPORT;74750.1;31.23;-94.75;85 -5242;UNITED STATES OF AMERICA;TEXARKANA/FAA AIRPORT;74752.1;33.45;-94.00;110 -5243;UNITED STATES OF AMERICA;MONROE/MUNICIPAL ARPT;74753.3;32.52;-92.05;23 -5244;UNITED STATES OF AMERICA;ENGLAND/AFB;74754.1;31.32;-92.55;27 -5245;UNITED STATES OF AMERICA;ALEXANDRIA/FCWOS;74754.3;31.40;-92.30;32 -5246;UNITED STATES OF AMERICA;GREENWOOD/FAA AIRPORT;74769.2;33.50;-90.08;47 -5247;UNITED STATES OF AMERICA;COLUMBUS/AFB;74769.4;33.65;-88.45;68 -5248;UNITED STATES OF AMERICA;TYNDALL/AFB;74775.1;30.07;-85.58;7 -5249;UNITED STATES OF AMERICA;PENSACOLA/FOREST SHERMAN NAS;74777.1;30.35;-87.32;10 -5250;UNITED STATES OF AMERICA;VALPARAISO/HURLBURT FIELD;74777.2;30.42;-86.68;12 -5251;UNITED STATES OF AMERICA;PENSACOLA/SAUFLEY NAS;74777.4;30.48;-87.35;28 -5252;UNITED STATES OF AMERICA;WHITING/FIELD NAS;74777.5;30.72;-87.02;54 -5253;UNITED STATES OF AMERICA;CAIRNS FIELD/FORT RUCKER;74778.2;31.27;-85.72;91 -5254;UNITED STATES OF AMERICA;DOTHAN/FAA AIRPORT;74778.3;31.32;-85.45;114 -5255;UNITED STATES OF AMERICA;THOMASVILLE;74781.3;30.90;-83.90;79 -5256;UNITED STATES OF AMERICA;VALDOSTA/MOODY AFB;74781.4;30.97;-83.20;73 -5257;UNITED STATES OF AMERICA;MACDILL/AFB;74788.1;27.85;-82.52;8 -5258;UNITED STATES OF AMERICA;SUMTER/SHAW AFB;74790.2;33.97;-80.47;74 -5259;UNITED STATES OF AMERICA;FLORENCE;74790.3;34.20;-79.70;45 -5260;UNITED STATES OF AMERICA;MYRTLE BEACH/AFB;74791.2;33.68;-78.93;8 -5261;UNITED STATES OF AMERICA;CAPE KENNEDY;74794;28.47;-80.55;-999 -5262;UNITED STATES OF AMERICA;VERO BEACH/MUNICIPAL AIRPORT;74795.2;27.65;-80.42;7 -5263;UNITED STATES OF AMERICA;COCOA BEACH/PATRICK AFB;74795.3;28.23;-80.60;3 -5264;UNITED STATES OF AMERICA;MIDWAY ISLAND;91066;28.22;-177.37;3 -5265;UNITED STATES OF AMERICA;FRENCH FRIGATE SHOALS;91155.1;23.87;-166.28;2 -5266;UNITED STATES OF AMERICA;BARKING SANDS;91162.1;22.03;-159.78;4 -5267;UNITED STATES OF AMERICA;"LIHUE, KAUAI";91165;21.98;-159.35;45 -5268;UNITED STATES OF AMERICA;LIHUE KAUAI;91165.1;22.00;-159.40;63 -5269;UNITED STATES OF AMERICA;KANEOHE BAY/MCAS;91176.1;21.45;-157.78;3 -5270;UNITED STATES OF AMERICA;HONOLULU OBS OAHU;91178.1;21.30;-158.10;2 -5271;UNITED STATES OF AMERICA;BARBERS POINT/NAS;91178.2;21.32;-158.07;15 -5272;UNITED STATES OF AMERICA;"HONOLULU, OAH";91182;21.35;-157.93;5 -5273;UNITED STATES OF AMERICA;"MOLOKAI, MOLO";91186;21.15;-157.10;137 -5274;UNITED STATES OF AMERICA;"KUALAPUU, MOLOKAI";91186.1;21.20;-157.00;268 -5275;UNITED STATES OF AMERICA;LANAI CITY LANAI;91189.1;20.80;-156.90;494 -5276;UNITED STATES OF AMERICA;"LAHAINA, MAUI HAWAII";91189.2;20.90;-156.70;14 -5277;UNITED STATES OF AMERICA;KAHULUI AIRPO;91190;20.90;-156.43;20 -5278;UNITED STATES OF AMERICA;PUUNENE/CAA AIRPORT 312;91190.1;20.83;-156.47;40 -5279;UNITED STATES OF AMERICA;"HANA, MAUI HAWAII";91196.1;20.80;-156.00;37 -5280;UNITED STATES OF AMERICA;HILO/GEN. LYM;91285;19.72;-155.07;11 -5281;BERMUDA;BERMUDA NAVAL;78016;32.37;-64.68;6 -5282;BERMUDA;BOTANICAL GRDNS.;78016.1;32.30;-64.70;19 -5283;CAYMAN ISLANDS;OWEN ROBERTS;78384;19.28;-81.35;3 -5284;GREENLAND;THULE/OP SITE;4202.1;76.52;-68.83;77 -5285;GREENLAND;DUNDAS RADIO;4202.2;76.57;-68.80;20 -5286;GREENLAND;UPERNAVIK;4210;72.78;-56.17;122 -5287;GREENLAND;EGEDESMINDE;4220;68.70;-52.75;41 -5288;GREENLAND;JAKOBSHAVN;4221;69.25;-51.07;31 -5289;GREENLAND;SDR. STROMFJO;4231;67.00;-50.80;53 -5290;GREENLAND;GODTHAB NUUK;4250;64.17;-51.75;70 -5291;GREENLAND;GRONNEDAL;4261;61.23;-48.10;32 -5292;GREENLAND;IVIGTUT;4261.1;61.20;-48.20;30 -5293;GREENLAND;NORD ADS;4312;81.60;-16.67;34 -5294;GREENLAND;DANMARKSHAVN;4320;76.77;-18.67;12 -5295;GREENLAND;MYGGBUKTA;4330.1;73.50;-21.60;4 -5296;GREENLAND;KAP TOBIN;4339.1;70.40;-22.00;41 -5297;GREENLAND;ANGMAGSSALIK;4360;65.60;-37.63;52 -5298;GREENLAND;PRINS CHRISTI;4390;60.05;-43.17;74 -5299;GUADELOUPE;"LE RAIZET, GUA";78897;16.27;-61.52;11 -5300;MARTINIQUE;LAMENTIN/MARTINIQUE/FT DE;78925;14.60;-61.10;144 -5301;MARTINIQUE;FORT-DE-FRANCE;78925.2;14.60;-61.10;146 -5302;NETHERLANDS ANTILLES;JULIANA AIRPO;78866;18.05;-63.12;9 -5303;NETHERLANDS ANTILLES;HATO AIRPORT;78988;12.20;-68.97;67 -5304;PUERTO RICO;SAN JUAN/INT.;78526;18.43;-66.00;19 -5305;PUERTO RICO;AGUIRRE;78526.2;17.97;-66.22;7 -5306;PUERTO RICO;AGUIRRE;78526.3;18.00;-66.20;15 -5307;PUERTO RICO;PONCE;78526.4;18.02;-66.57;9 -5308;PUERTO RICO;LAJAS SUBSTATION PUERTO RI;78526.5;18.10;-67.10;27 -5309;PUERTO RICO;BARRANQUITAS;78526.6;18.17;-66.32;610 -5310;PUERTO RICO;MAYAGUEZ;78526.7;18.20;-67.10;24 -5311;PUERTO RICO;JUNCOS;78526.8;18.25;-65.92;61 -5312;PUERTO RICO;COLOSO;78526.10;18.38;-67.15;12 -5313;PUERTO RICO;COLOSO;78526.11;18.38;-67.15;12 -5314;PUERTO RICO;ISABELA SUBSTATION;78526.12;18.47;-67.07;128 -5315;PUERTO RICO;ARECIBO;78526.13;18.47;-66.70;5 -5316;PUERTO RICO;BORINQUEN/AIRPORT;78526.14;18.50;-67.13;69 -5317;PUERTO RICO;HUMACAO;78535.1;18.13;-65.83;17 -5318;PUERTO RICO;HUMACAO;78535.2;18.13;-65.83;17 -5319;PUERTO RICO;ROOSEVELT ROADS;78535.3;18.25;-65.63;11 -5320;PUERTO RICO;FAJARDO;78535.4;18.30;-65.70;12 -5321;SAINT PIERRE & MIQUELON ISLAND;SAINT-PIERRE;71805;46.77;-56.17;5 -5322;VIRGIN ISLANDS;"ANNAS HOPE, ST. CROIX VIRG";78526.1;17.70;-66.70;61 -5323;VIRGIN ISLANDS;COROZAL SUBSTATION;78526.9;18.33;-66.37;198 -5324;VIRGIN ISLANDS;CHARLOTTE AMALIE/TRUMA VIRGIN;78543.1;18.33;-64.97;3 -5325;VIRGIN ISLANDS;"CHAR. AMALIE, ST. THOMAS V";78543.2;18.40;-64.90;6 -5326;VIRGIN ISLANDS;"ALEX HAMILTON, ST. CROIX V";78547.1;17.70;-64.80;5 -5327;AUSTRALIA;KALUMBURU;94101;-14.28;126.63;24 -5328;AUSTRALIA;TROUGHTON ISL;94102;-13.75;126.15;8 -5329;AUSTRALIA;MANGO FARM;94117;-13.73;130.67;16 -5330;AUSTRALIA;GARDEN POINT;94119;-11.40;130.42;12 -5331;AUSTRALIA;DARWIN AIRPOR;94120;-12.40;130.87;30 -5332;AUSTRALIA;MIDDLE POINT;94124;-12.57;131.30;10 -5333;AUSTRALIA;KATHERINE AER;94132;-14.43;132.27;109 -5334;AUSTRALIA;JABIRU AIRPOR;94137;-12.67;132.90;26 -5335;AUSTRALIA;GUNBALUNYA;94138;-12.32;133.05;9 -5336;AUSTRALIA;WARRUWI;94139;-11.65;133.40;5 -5337;AUSTRALIA;MILINGIMBI AW;94140;-12.10;134.90;5 -5338;AUSTRALIA;MANINGRIDA;94142;-12.05;134.22;13 -5339;AUSTRALIA;ROPER BAR STO;94144;-14.73;134.52;19 -5340;AUSTRALIA;ELCHO ISLAND;94146;-12.02;135.55;27 -5341;AUSTRALIA;GOVE AIRPORT;94150;-12.27;136.82;54 -5342;AUSTRALIA;WEIPA COMPOSITE;94170.1;-12.63;141.88;11 -5343;AUSTRALIA;THURSDAY ISLA;94175;-10.57;142.22;8 -5344;AUSTRALIA;COEN AIRPORT;94184;-13.75;143.12;162 -5345;AUSTRALIA;COEN;94185;-13.93;143.20;197 -5346;AUSTRALIA;LOCKHART RIVE;94186;-12.78;143.30;20 -5347;AUSTRALIA;MUSGRAVE STAT;94187;-14.78;143.50;82 -5348;AUSTRALIA;MANDORA;94200;-19.75;120.85;8 -5349;AUSTRALIA;DERBY;94201.1;-16.13;123.78;152 -5350;AUSTRALIA;LA GRANGE;94202;-18.68;121.77;12 -5351;AUSTRALIA;BROOME AIRPOR;94203;-17.95;122.22;9 -5352;AUSTRALIA;DERBY;94205;-17.30;123.62;9 -5353;AUSTRALIA;KURI BAY;94208;-15.48;124.52;29 -5354;AUSTRALIA;FITZROY CROSSING;94209.1;-18.20;125.57;114 -5355;AUSTRALIA;HALLS CREEK A;94212;-18.22;127.65;424 -5356;AUSTRALIA;TURKEY CREEK;94213;-17.02;128.20;205 -5357;AUSTRALIA;WYNDHAM;94214;-15.48;128.12;17 -5358;AUSTRALIA;WYNDHAM;94214.1;-15.47;128.10;20 -5359;AUSTRALIA;TIMBER CREEK;94220;-15.65;130.47;23 -5360;AUSTRALIA;WAVE HILL;94229;-17.38;131.12;197 -5361;AUSTRALIA;VICTORIA RIVE;94232;-16.40;131.00;82 -5362;AUSTRALIA;ELLIOTT;94236;-17.55;133.53;223 -5363;AUSTRALIA;LARRIMAH;94237;-15.57;133.20;186 -5364;AUSTRALIA;DALY WATERS;94237.1;-16.25;133.35;212 -5365;AUSTRALIA;DALY WATERS PUB;94237.2;-16.25;133.37;212 -5366;AUSTRALIA;TENNANT CREEK MO;94238;-19.63;134.18;375 -5367;AUSTRALIA;TENNANT CREEK;94238.2;-19.63;134.17;376 -5368;AUSTRALIA;MCARTHUR RIVE;94239;-16.43;136.08;42 -5369;AUSTRALIA;BRUNETTE DOWN;94242;-18.65;135.95;219 -5370;AUSTRALIA;CENTRE ISLAND;94248;-15.73;136.80;5 -5371;AUSTRALIA;CAMOOWEAL;94255;-19.92;138.12;235 -5372;AUSTRALIA;MORNINGTON IS;94256;-16.65;139.15;9 -5373;AUSTRALIA;BURKETOWN;94259;-17.73;139.53;8 -5374;AUSTRALIA;NORMANTON;94267;-17.67;141.08;10 -5375;AUSTRALIA;DONORS HILL;94267.1;-18.72;140.55;44 -5376;AUSTRALIA;KOWANYAMA;94268;-15.48;141.73;14 -5377;AUSTRALIA;CROYDON;94269;-18.20;142.23;119 -5378;AUSTRALIA;GEORGETOWN;94275;-18.30;143.55;295 -5379;AUSTRALIA;MOUNT SURPRISE;94275.1;-18.15;144.32;453 -5380;AUSTRALIA;PALMERVILLE;94276;-16.98;144.07;204 -5381;AUSTRALIA;COOKTOWN AMO;94283;-15.43;145.18;9 -5382;AUSTRALIA;FAIRVIEW;94283.1;-15.50;144.28;165 -5383;AUSTRALIA;LOW ISLES;94285;-16.38;145.57;4 -5384;AUSTRALIA;PORT DOUGLAS POST OFFICE;94285.1;-16.48;145.47;4 -5385;AUSTRALIA;CAIRNS AIRPOR;94287;-16.88;145.75;7 -5386;AUSTRALIA;HERBERTON POST OFFICE;94288.1;-17.38;145.38;899 -5387;AUSTRALIA;INNISFAIL;94291;-17.52;146.02;4 -5388;AUSTRALIA;CARDWELL;94292;-18.25;146.02;7 -5389;AUSTRALIA;TOWNSVILLE AM;94294;-19.25;146.75;9 -5390;AUSTRALIA;AYR;94294.1;-19.57;147.40;11 -5391;AUSTRALIA;CARNARVON AIR;94300;-24.87;113.67;7 -5392;AUSTRALIA;LEARMONTH AIR;94302;-22.23;114.08;6 -5393;AUSTRALIA;BARROW ISLAND;94304;-20.82;115.38;63 -5394;AUSTRALIA;ONSLOW;94305;-21.63;115.10;5 -5395;AUSTRALIA;MARDIE;94306;-21.18;115.97;12 -5396;AUSTRALIA;PANNAWONICA;94306.1;-21.68;116.32;201 -5397;AUSTRALIA;ROEBOURNE;94309;-20.78;117.12;13 -5398;AUSTRALIA;ROEBOURNE;94309.1;-20.68;117.18;7 -5399;AUSTRALIA;PORT HEDLAND;94312;-20.10;119.57;10 -5400;AUSTRALIA;GOLDSWORTHY;94312.1;-20.35;119.52;45 -5401;AUSTRALIA;WITTENOOM;94313;-22.23;118.33;464 -5402;AUSTRALIA;MARBLE BAR;94315;-21.17;119.75;189 -5403;AUSTRALIA;NULLAGINE;94315.1;-21.88;120.12;380 -5404;AUSTRALIA;NYANG;94318;-23.03;115.03;112 -5405;AUSTRALIA;NYANG;94318.1;-23.17;114.53;75 -5406;AUSTRALIA;TELFER;94319;-21.70;122.22;294 -5407;AUSTRALIA;BALGO HILLS;94320;-20.13;127.87;421 -5408;AUSTRALIA;RABBIT FLAT;94322;-20.18;130.00;340 -5409;AUSTRALIA;YUENDUMU;94324;-22.25;131.78;668 -5410;AUSTRALIA;BARROW CREEK;94325.1;-21.53;133.88;511 -5411;AUSTRALIA;ALICE SPRINGS;94326;-23.80;133.88;547 -5412;AUSTRALIA;JERVOIS;94327;-22.95;136.13;323 -5413;AUSTRALIA;URANDANGIE;94329;-21.60;138.30;175 -5414;AUSTRALIA;MT ISA AIRPOR;94332;-20.67;139.48;344 -5415;AUSTRALIA;CLONCURRY;94332.1;-20.70;140.50;191 -5416;AUSTRALIA;BOULIA;94333;-22.92;139.90;158 -5417;AUSTRALIA;JULIA CREEK;94337;-20.65;141.73;124 -5418;AUSTRALIA;WINTON;94339;-22.38;143.03;184 -5419;AUSTRALIA;RICHMOND;94340;-20.72;143.13;215 -5420;AUSTRALIA;HUGHENDEN;94343;-20.83;144.20;326 -5421;AUSTRALIA;ISISFORD;94345;-24.27;144.43;205 -5422;AUSTRALIA;LONGREACH AIR;94346;-23.43;144.27;193 -5423;AUSTRALIA;BARCALDINE;94350;-23.55;145.28;267 -5424;AUSTRALIA;BLACKALL;94351;-24.42;145.45;285 -5425;AUSTRALIA;TAMBO;94355;-24.88;146.25;397 -5426;AUSTRALIA;CHARTERS TOWERS POST OFFICE;94356.1;-20.08;146.27;310 -5427;AUSTRALIA;CLERMONT;94359;-22.82;147.63;269 -5428;AUSTRALIA;COLLINSVILLE;94360;-20.55;147.83;187 -5429;AUSTRALIA;EMERALD POST OFFICE;94363.1;-23.53;148.17;179 -5430;AUSTRALIA;BOWEN POST OFFICE;94366.1;-20.02;148.25;-999 -5431;AUSTRALIA;MACKAY;94367;-21.12;149.22;31 -5432;AUSTRALIA;MACKAY SUGAR MILL STATION;94367.1;-21.17;149.12;14 -5433;AUSTRALIA;ST LAWRENCE;94369;-22.33;149.53;18 -5434;AUSTRALIA;PINE ISLET;94369.1;-21.65;150.22;58 -5435;AUSTRALIA;ROCKHAMPTON A;94374;-23.38;150.47;14 -5436;AUSTRALIA;MOUNT MORGAN;94374.1;-23.63;150.38;244 -5437;AUSTRALIA;YEPPOON;94374.2;-23.10;150.73;75 -5438;AUSTRALIA;BARALABA;94375;-24.18;149.80;94 -5439;AUSTRALIA;BILOELA DPI RESEARCH STATION;94376.1;-24.37;150.52;175 -5440;AUSTRALIA;MONTO POST OFFICE;94377.1;-24.87;151.12;249 -5441;AUSTRALIA;GLADSTONE;94380;-23.85;151.25;76 -5442;AUSTRALIA;BUNDABERG AER;94387;-24.90;152.32;35 -5443;AUSTRALIA;CHILDERS POST OFFICE;94387.1;-25.23;152.28;109 -5444;AUSTRALIA;BUNDABERG POST OFFICE;94387.2;-24.87;152.35;14 -5445;AUSTRALIA;LADY ELLIOT I;94388;-24.10;152.70;5 -5446;AUSTRALIA;SANDY CAPE;94390;-24.72;153.20;101 -5447;AUSTRALIA;KALBARRI;94401;-27.70;114.15;7 -5448;AUSTRALIA;HAMELIN POOL;94402.1;-26.40;114.17;15 -5449;AUSTRALIA;GERALDTON AIR;94403;-28.78;114.70;34 -5450;AUSTRALIA;PAYNES FIND;94404;-29.27;117.67;340 -5451;AUSTRALIA;GASCOYNE JUNC;94410;-25.05;115.20;144 -5452;AUSTRALIA;MULLEWA;94411;-28.53;115.50;282 -5453;AUSTRALIA;YALGOO;94411.1;-28.35;116.68;318 -5454;AUSTRALIA;ENEABBA;94414;-29.82;115.27;100 -5455;AUSTRALIA;CARNAMAH;94415;-29.68;115.88;267 -5456;AUSTRALIA;MORAWA;94416;-29.22;116.00;274 -5457;AUSTRALIA;YALGOO;94422.1;-27.37;116.42;303 -5458;AUSTRALIA;MT MAGNET;94428;-28.05;117.83;427 -5459;AUSTRALIA;CUE;94428.1;-27.43;117.90;453 -5460;AUSTRALIA;MEEKATHARRA A;94430;-26.60;118.53;518 -5461;AUSTRALIA;WILUNA;94439;-26.58;120.22;519 -5462;AUSTRALIA;YEELIRRIE;94440;-27.27;120.08;488 -5463;AUSTRALIA;SANDSTONE CAS;94444;-28.97;119.57;450 -5464;AUSTRALIA;MENZIES;94444.1;-29.67;119.28;434 -5465;AUSTRALIA;LAVERTON;94445;-28.15;123.65;443 -5466;AUSTRALIA;MENZIES;94446;-29.68;121.02;427 -5467;AUSTRALIA;LEONORA;94448;-28.88;121.32;380 -5468;AUSTRALIA;LAVERTON AWS;94449;-28.62;122.42;465 -5469;AUSTRALIA;GILES;94461;-25.03;128.28;599 -5470;AUSTRALIA;WARBURTON RANGE AUSTRALIA;94461.1;-26.10;126.60;366 -5471;AUSTRALIA;CURTIN SPRING;94463;-25.32;131.75;488 -5472;AUSTRALIA;KULGERA;94466;-25.83;133.28;512 -5473;AUSTRALIA;OODNADATTA AI;94476;-27.58;135.45;117 -5474;AUSTRALIA;MARREE;94480;-29.65;138.05;51 -5475;AUSTRALIA;FARINA;94480.1;-30.07;138.27;91 -5476;AUSTRALIA;MOOMBA;94481;-28.10;140.20;40 -5477;AUSTRALIA;BIRDSVILLE;94482;-25.90;139.35;47 -5478;AUSTRALIA;TIBOOBURRA;94485;-29.42;142.02;184 -5479;AUSTRALIA;WINDORAH;94488;-25.42;142.65;129 -5480;AUSTRALIA;THARGOMINDAH;94492;-27.98;143.82;130 -5481;AUSTRALIA;QUILPIE;94494;-26.62;144.27;198 -5482;AUSTRALIA;CUNNAMULLA;94500;-28.07;145.73;191 -5483;AUSTRALIA;EULO POST OFFICE;94500.1;-28.17;145.05;137 -5484;AUSTRALIA;CHARLEVILLE A;94510;-26.40;146.27;304 -5485;AUSTRALIA;INJUNE;94511;-25.85;148.57;390 -5486;AUSTRALIA;BOLLON;94513;-28.02;147.47;185 -5487;AUSTRALIA;MITCHELL;94514;-26.48;147.97;338 -5488;AUSTRALIA;ROMA POST OFFICE;94515.1;-26.57;148.78;299 -5489;AUSTRALIA;ST GEORGE;94516;-28.03;148.58;203 -5490;AUSTRALIA;MUNGINDI;94520;-28.97;148.98;160 -5491;AUSTRALIA;SURAT;94521;-27.15;149.07;246 -5492;AUSTRALIA;TAROOM;94525;-25.63;149.78;200 -5493;AUSTRALIA;MOREE MO;94527;-29.47;149.85;212 -5494;AUSTRALIA;MILES;94529;-26.67;150.18;307 -5495;AUSTRALIA;GOONDIWINDI POST OFFICE;94530.1;-28.55;150.30;-999 -5496;AUSTRALIA;INVERELL;94541;-29.77;151.10;586 -5497;AUSTRALIA;BINGARA POST OFFICE;94541.1;-29.87;150.57;296 -5498;AUSTRALIA;WARIALDA POST OFFICE;94541.2;-29.55;150.58;320 -5499;AUSTRALIA;DALBY POST OFFICE;94542.1;-27.20;151.30;345 -5500;AUSTRALIA;GAYNDAH;94543;-25.63;151.62;108 -5501;AUSTRALIA;KINGAROY;94549;-26.55;151.83;431 -5502;AUSTRALIA;NANANGO;94549.1;-26.67;152.00;355 -5503;AUSTRALIA;STANTHORPE;94550;-28.65;151.93;795 -5504;AUSTRALIA;TOOWOOMBA COM;94551;-27.58;151.92;676 -5505;AUSTRALIA;PITTSWORTH POST OFFICE;94551.1;-27.72;151.63;608 -5506;AUSTRALIA;CAMBOOYA POST OFFICE;94551.2;-27.72;151.87;467 -5507;AUSTRALIA;OAKEY AERODRO;94552;-27.42;151.73;407 -5508;AUSTRALIA;WARWICK AWS;94555;-28.20;152.10;476 -5509;AUSTRALIA;KILLARNEY POST OFFICE;94555.1;-28.33;152.30;514 -5510;AUSTRALIA;WARWICK;94555.2;-28.22;152.03;477 -5511;AUSTRALIA;TENTERFIELD D;94556;-29.05;152.02;860 -5512;AUSTRALIA;WALLANGARRA POST OFFICE;94556.1;-28.92;151.93;877 -5513;AUSTRALIA;DOUBLE ISLAND POINT LIGHTHOUSE;94564.1;-25.93;153.20;77 -5514;AUSTRALIA;GYMPIE;94566;-26.15;152.63;100 -5515;AUSTRALIA;AMBERLEY AERO;94568;-27.63;152.72;31 -5516;AUSTRALIA;IPSWICH COMPOSITE;94568.1;-27.62;152.75;40 -5517;AUSTRALIA;GATTON-LAWES;94568.2;-27.55;152.33;94 -5518;AUSTRALIA;CALOUNDRA SIGNAL STATION;94569.1;-26.80;153.15;46 -5519;AUSTRALIA;GRAFTON;94571;-29.68;152.92;9 -5520;AUSTRALIA;CASINO AIRPOR;94574;-28.88;153.03;26 -5521;AUSTRALIA;ARCHERFIELD;94575;-27.57;153.00;18 -5522;AUSTRALIA;BRISBANE REGIONAL OFFICE ROOF;94575.1;-27.48;153.03;38 -5523;AUSTRALIA;BRISBANE/EAGLE FARM AUSTRA;94578;-27.40;153.10;4 -5524;AUSTRALIA;SANDGATE;94578.2;-27.32;153.07;1 -5525;REDLANDS;ORMISTON;94579.1;-27.52;153.25;11 -5526;AUSTRALIA;SOUTHPORT;94580.1;-27.95;153.40;20 -5527;AUSTRALIA;BEAUDESERT COMPOSITE;94581.1;-28.00;153.00;46 -5528;AUSTRALIA;MOUNT TAMBORINE;94581.2;-27.98;153.20;525 -5529;AUSTRALIA;MURWILLUMBAH;94582;-28.35;153.38;18 -5530;AUSTRALIA;LISMORE;94586;-28.80;153.25;13 -5531;AUSTRALIA;TABULAM;94587;-28.75;152.45;555 -5532;AUSTRALIA;YAMBA;94589;-29.43;153.35;30 -5533;AUSTRALIA;CAPE MORETON;94594;-27.03;153.47;102 -5534;AUSTRALIA;CAPE BYRON;94595;-28.63;153.63;98 -5535;AUSTRALIA;CAPE NATURALI;94600;-33.53;115.00;98 -5536;AUSTRALIA;BUSSELTON;94600.1;-33.65;115.35;4 -5537;AUSTRALIA;CAPE LEEUWIN;94601;-34.37;115.12;14 -5538;AUSTRALIA;ROTTNEST ISLA;94603;-32.00;115.50;48 -5539;AUSTRALIA;COLLIE;94604.1;-33.37;116.15;160 -5540;AUSTRALIA;MANDURAH;94605.1;-32.50;115.77;15 -5541;AUSTRALIA;PERTH;94608.1;-31.95;115.87;19 -5542;AUSTRALIA;PERTH AIRPORT;94610;-31.90;116.00;18 -5543;AUSTRALIA;MOORA;94611;-30.63;116.00;203 -5544;AUSTRALIA;MOORA;94611.1;-30.67;116.13;300 -5545;AUSTRALIA;BULLSBROOK PE;94612;-31.67;116.02;49 -5546;AUSTRALIA;BRIDGETOWN;94616;-33.95;116.13;151 -5547;AUSTRALIA;MANJIMUP;94617;-34.23;116.15;280 -5548;AUSTRALIA;DALWALLINU;94619;-30.27;116.65;338 -5549;AUSTRALIA;DWELLINGUP;94620;-32.72;116.05;268 -5550;AUSTRALIA;NORTHAM COMPO;94621;-31.65;116.67;155 -5551;AUSTRALIA;WONGAN HILLS;94622;-30.88;116.72;283 -5552;AUSTRALIA;WONGAN;94622.1;-30.85;116.72;305 -5553;AUSTRALIA;YORK;94623;-31.88;116.75;175 -5554;AUSTRALIA;WANDERING SHI;94624;-32.67;116.67;280 -5555;AUSTRALIA;BROOKTON;94625;-32.37;117.00;240 -5556;AUSTRALIA;PINGELLY;94625.1;-32.53;117.08;297 -5557;AUSTRALIA;BEVERLEY;94625.2;-32.12;116.92;199 -5558;AUSTRALIA;CUNDERDIN;94626;-31.65;117.23;236 -5559;AUSTRALIA;KELLERBERRIN;94626.1;-31.63;117.72;247 -5560;AUSTRALIA;NARROGIN;94627;-32.93;117.17;338 -5561;AUSTRALIA;KATANNING;94629;-33.68;117.55;311 -5562;AUSTRALIA;KOJONUP;94629.1;-33.83;117.15;305 -5563;AUSTRALIA;MT BARKER;94630;-34.62;117.65;280 -5564;AUSTRALIA;BENCUBBIN;94632;-30.80;117.85;353 -5565;AUSTRALIA;CORRIGIN;94633;-32.32;117.87;296 -5566;AUSTRALIA;SOUTHERN CROS;94634;-31.22;119.32;356 -5567;AUSTRALIA;LAKE GRACE;94635;-33.12;118.47;287 -5568;AUSTRALIA;RAVENSTHORPE;94636;-33.57;120.03;233 -5569;AUSTRALIA;KALGOORLIE BO;94637;-30.78;121.45;370 -5570;AUSTRALIA;COOLGARDIE;94637.1;-30.95;121.17;427 -5571;AUSTRALIA;ESPERANCE;94638;-33.82;121.88;26 -5572;AUSTRALIA;NORSEMAN;94639;-32.20;121.78;278 -5573;AUSTRALIA;BALLADONIA;94642;-32.45;123.87;148 -5574;AUSTRALIA;EYRE MADURA;94645;-32.23;126.28;6 -5575;AUSTRALIA;EUCLA AMO;94647;-31.68;128.90;102 -5576;AUSTRALIA;COOK;94649;-30.62;130.40;121 -5577;AUSTRALIA;CEDUNA AIRPOR;94653;-32.12;133.70;17 -5578;AUSTRALIA;STREAKY BAY;94654;-32.80;134.22;14 -5579;AUSTRALIA;TARCOOLA;94655;-30.72;134.57;120 -5580;AUSTRALIA;ELLISTON;94656;-33.65;134.88;5 -5581;AUSTRALIA;KYANCUTTA;94657;-33.12;135.55;61 -5582;AUSTRALIA;WOOMERA AEROD;94659;-31.13;136.82;167 -5583;AUSTRALIA;PORT LINCOLN;94660;-34.72;135.87;5 -5584;AUSTRALIA;CLEVE;94661;-33.70;136.48;194 -5585;AUSTRALIA;WAROOKA;94663;-34.98;137.40;54 -5586;AUSTRALIA;WHYALLA;94664;-33.02;137.52;15 -5587;AUSTRALIA;MAITLAND;94665;-34.37;137.67;186 -5588;AUSTRALIA;PORT AUGUSTA;94666;-32.53;137.77;8 -5589;AUSTRALIA;KADINA P O;94667;-33.97;137.72;44 -5590;AUSTRALIA;KIMBA;94668;-33.15;136.42;263 -5591;AUSTRALIA;PORT PIRIE;94669;-33.18;138.02;3 -5592;AUSTRALIA;GEORGETOWN POST OFFICE;94669.1;-33.37;138.40;273 -5593;AUSTRALIA;SNOWTOWN;94670;-33.78;138.22;103 -5594;AUSTRALIA;ROSEWORTHY AGRIC.COLLEGE;94671.1;-34.53;138.68;114 -5595;AUSTRALIA;ADELAIDE AIRP;94672;-34.93;138.52;4 -5596;AUSTRALIA;HAWKER;94673;-31.87;138.40;316 -5597;AUSTRALIA;LEIGH CREEK A;94674;-30.58;138.42;259 -5598;AUSTRALIA;ADELAIDE;94675;-34.92;138.62;50 -5599;AUSTRALIA;ADELAIDE REGIONAL OFFICE;94675.1;-34.90;138.60;43 -5600;AUSTRALIA;ARKAROOLA;94676;-30.30;139.33;340 -5601;AUSTRALIA;YONGALA;94679;-33.02;138.70;515 -5602;AUSTRALIA;BUNDALEER FOREST RESERVE;94679.1;-33.28;138.58;458 -5603;AUSTRALIA;YUNTA;94679.2;-32.58;139.55;303 -5604;AUSTRALIA;EUDUNDA;94680;-34.17;139.08;416 -5605;AUSTRALIA;NURIOOTPA;94681;-34.47;139.00;274 -5606;AUSTRALIA;TURRETFIELD RES. CENTRE WAS 02;94681.1;-34.50;138.83;116 -5607;AUSTRALIA;KAPUNDA POST OFFICE;94681.2;-34.35;138.92;245 -5608;AUSTRALIA;WANBI RESEARCH CENTRE;94682.1;-34.78;140.27;77 -5609;AUSTRALIA;RENMARK;94687;-34.17;140.75;21 -5610;AUSTRALIA;LAMEROO;94688;-35.33;140.52;100 -5611;AUSTRALIA;BROKEN HILL;94689;-31.97;141.47;315 -5612;AUSTRALIA;STEPHENS CREEK RESERVOIR;94689.1;-31.88;141.60;238 -5613;AUSTRALIA;MILDURA AIRPO;94693;-34.22;142.08;52 -5614;AUSTRALIA;WENTWORTH POST OFFICE;94693.1;-34.12;141.92;37 -5615;AUSTRALIA;MENINDEE;94694;-32.40;142.42;61 -5616;AUSTRALIA;WILCANNIA;94695;-31.55;143.37;76 -5617;AUSTRALIA;BALRANALD;94696;-34.63;143.55;61 -5618;AUSTRALIA;IVANHOE;94697;-32.90;144.28;86 -5619;AUSTRALIA;HAY MILLER ST;94698;-34.52;144.85;94 -5620;AUSTRALIA;WHITE CLIFFS;94699;-30.85;143.08;151 -5621;AUSTRALIA;HILLSTON POST OFFICE;94700.1;-33.48;145.53;123 -5622;AUSTRALIA;BOURKE;94703;-30.08;145.93;106 -5623;AUSTRALIA;NARRANDERA;94706;-34.73;146.55;174 -5624;AUSTRALIA;URANA POST OFFICE;94706.1;-35.33;146.27;125 -5625;AUSTRALIA;CONDOBOLIN POST OFFICE;94707.1;-33.08;147.15;199 -5626;AUSTRALIA;NYNGAN;94708;-31.55;147.18;177 -5627;AUSTRALIA;WYALONG;94709;-33.92;147.23;245 -5628;AUSTRALIA;COBAR;94711;-31.48;145.82;265 -5629;AUSTRALIA;BOOROWA POST OFFICE;94712.1;-34.43;148.72;488 -5630;AUSTRALIA;YOUNG POST OFFICE;94712.2;-34.32;148.30;440 -5631;AUSTRALIA;GRENFELL POST OFFICE;94712.3;-33.90;148.17;384 -5632;AUSTRALIA;FORBES CAMP S;94713;-33.38;148.00;240 -5633;AUSTRALIA;COOTAMUNDRA;94714;-34.63;148.02;318 -5634;AUSTRALIA;MURRUMBURRAH POST OFFICE;94714.1;-34.55;148.35;370 -5635;AUSTRALIA;GOULBURN;94716;-34.72;149.73;650 -5636;AUSTRALIA;PARKES MACART;94717;-33.13;148.15;324 -5637;AUSTRALIA;PEAK HILL POST OFFICE;94717.1;-32.72;148.18;267 -5638;AUSTRALIA;COONAMBLE;94718;-30.95;148.38;180 -5639;AUSTRALIA;QUAMBONE POST OFFICE;94718.1;-30.93;147.87;154 -5640;AUSTRALIA;DUBBO;94719;-32.20;148.57;275 -5641;AUSTRALIA;TRANGIE POST OFFICE;94719.1;-32.03;147.98;219 -5642;AUSTRALIA;GILGANDRA POST OFFICE;94719.2;-31.72;148.67;278 -5643;AUSTRALIA;COWRA AIRPORT;94720;-33.83;148.63;294 -5644;AUSTRALIA;CANOWINDRA POST OFFICE;94720.1;-33.57;148.67;300 -5645;AUSTRALIA;WELLINGTON;94723;-32.55;148.93;304 -5646;AUSTRALIA;ORANGE AIRPOR;94726;-33.38;149.12;951 -5647;AUSTRALIA;BLAYNEY POST OFFICE;94726.1;-33.53;149.27;863 -5648;AUSTRALIA;MILLTHORPE POST OFFICE;94726.2;-33.45;149.18;963 -5649;AUSTRALIA;MOLONG POST OFFICE;94726.3;-33.10;148.87;529 -5650;AUSTRALIA;GULGONG POST OFFICE;94727.1;-32.37;149.53;475 -5651;AUSTRALIA;COONABARABRAN;94728;-31.27;149.27;510 -5652;AUSTRALIA;BATHURST AGRI;94730;-33.43;149.57;713 -5653;AUSTRALIA;ROCKLEY POST OFFICE;94730.1;-33.68;149.57;820 -5654;AUSTRALIA;MUDGEE;94731;-32.58;149.58;454 -5655;AUSTRALIA;NARRABRI WEST;94734;-30.33;149.75;212 -5656;AUSTRALIA;NARRABRI BOWLING CLUB;94734.1;-30.32;149.77;213 -5657;AUSTRALIA;TARALGA;94735;-34.40;149.82;845 -5658;AUSTRALIA;CROOKWELL POST OFFICE;94735.1;-34.47;149.47;887 -5659;AUSTRALIA;JERRYS PLAINS;94739;-32.48;150.90;90 -5660;AUSTRALIA;LITHGOW;94741;-33.48;150.13;950 -5661;AUSTRALIA;GUNNEDAH COMPOSITE;94742.1;-30.98;150.25;306 -5662;AUSTRALIA;MOUNT VICTORIA;94743.1;-33.60;150.25;1064 -5663;AUSTRALIA;KATOOMBA;94744;-33.72;150.28;1030 -5664;AUSTRALIA;BOWRAL;94747;-34.48;150.40;690 -5665;AUSTRALIA;MOSS VALE POST OFFICE;94747.1;-34.55;150.37;686 -5666;AUSTRALIA;MITTAGONG POOL;94747.2;-34.45;150.47;625 -5667;AUSTRALIA;WOLLONGONG;94748;-34.40;150.88;30 -5668;AUSTRALIA;PICTON COMPOSITE;94748.1;-34.18;150.62;171 -5669;AUSTRALIA;NOWRA RAN AIR;94750;-34.95;150.53;110 -5670;AUSTRALIA;MURRURUNDI;94756;-31.77;150.83;467 -5671;AUSTRALIA;BARRABA;94761;-30.37;150.60;500 -5672;AUSTRALIA;PROSPECT DAM;94764.1;-33.82;150.92;61 -5673;AUSTRALIA;BANKSTOWN AIR;94765;-33.92;150.98;8 -5674;AUSTRALIA;SYDNEY AIRPOR;94767;-33.95;151.18;3 -5675;AUSTRALIA;SYDNEY;94768;-33.85;151.20;40 -5676;AUSTRALIA;NORAH HEAD;94770;-33.28;151.57;24 -5677;AUSTRALIA;CESSNOCK;94771;-32.80;151.33;62 -5678;AUSTRALIA;ARMIDALE;94773;-30.52;151.65;980 -5679;AUSTRALIA;GUYRA POST OFFICE;94773.1;-30.22;151.67;1325 -5680;AUSTRALIA;NEWCASTLE;94774;-32.92;151.78;33 -5681;AUSTRALIA;MARYVILLE HVRF;94774.1;-32.92;151.75;8 -5682;AUSTRALIA;WILLIAMTOWN;94776;-32.78;151.82;8 -5683;AUSTRALIA;NELSON BAY MONTEVIDEO PARADE;94776.1;-32.72;152.15;22 -5684;AUSTRALIA;GLEN INNES;94778;-29.73;151.73;1062 -5685;AUSTRALIA;TAREE;94784;-31.90;152.48;6 -5686;AUSTRALIA;HARRINGTON POST OFFICE;94784.1;-31.87;152.70;6 -5687;AUSTRALIA;PORT MACQUARI;94787;-31.43;152.92;10 -5688;AUSTRALIA;LAURIETON POST OFFICE;94787.1;-31.65;152.80;5 -5689;AUSTRALIA;KEMPSEY;94788;-31.05;152.82;10 -5690;AUSTRALIA;SMOKY CAPE;94790;-30.92;153.08;114 -5691;AUSTRALIA;COFFS HARBOUR;94791;-30.32;153.12;5 -5692;AUSTRALIA;BELLINGEN POST OFFICE;94791.1;-30.45;152.90;15 -5693;AUSTRALIA;ALBANY;94802;-34.95;117.80;68 -5694;AUSTRALIA;ALBANY;94802.1;-35.02;117.88;18 -5695;AUSTRALIA;NEPTUNE ISLAN;94804;-35.33;136.12;37 -5696;AUSTRALIA;CAPE BORDA;94805;-35.75;136.58;144 -5697;AUSTRALIA;MOUNT BARKER;94806;-35.07;138.85;325 -5698;AUSTRALIA;KINGSCOTE;94807;-35.65;137.63;20 -5699;AUSTRALIA;STRATHALBYN;94810;-35.25;138.88;70 -5700;AUSTRALIA;ROBE;94812;-37.17;139.75;4 -5701;AUSTRALIA;VICTOR HARBOU;94815;-35.55;138.62;5 -5702;AUSTRALIA;KEITH;94816;-36.08;140.35;31 -5703;AUSTRALIA;CAPE NORTHUMB;94818;-38.05;140.67;6 -5704;AUSTRALIA;NARACOORTE;94819;-36.95;140.73;58 -5705;AUSTRALIA;LUCINDALE POST OFFICE;94819.1;-36.97;140.37;30 -5706;AUSTRALIA;MT BURR;94820;-37.55;140.42;64 -5707;AUSTRALIA;MT GAMBIER AI;94821;-37.73;140.78;69 -5708;AUSTRALIA;CAPE WILLOUGH;94822;-35.83;138.13;59 -5709;AUSTRALIA;HEYWOOD;94824.1;-38.13;141.62;27 -5710;AUSTRALIA;CASTERTON;94825.1;-37.60;141.42;73 -5711;AUSTRALIA;CAPE NELSON;94826;-38.43;141.55;47 -5712;AUSTRALIA;PORTLAND;94826.1;-38.35;141.60;0 -5713;AUSTRALIA;NHILL COMPOSI;94827;-36.33;141.63;133 -5714;AUSTRALIA;PORTLAND AIRP;94828;-38.32;141.47;81 -5715;AUSTRALIA;HAMILTON AIRP;94829;-37.63;142.05;242 -5716;AUSTRALIA;PORT FAIRY AW;94830;-38.40;142.23;10 -5717;AUSTRALIA;OUYEN POST OFFICE;94831.1;-35.07;142.32;50 -5718;AUSTRALIA;WARRNAMBOOL A;94832;-38.28;142.43;76 -5719;AUSTRALIA;STAWELL COMPOSITE;94833.1;-37.07;142.80;203 -5720;AUSTRALIA;ARARAT;94834;-37.28;142.98;296 -5721;AUSTRALIA;TERANG POST OFFICE;94840.1;-38.25;142.92;132 -5722;AUSTRALIA;CAMPERDOWN POST OFFICE;94840.2;-38.22;143.15;165 -5723;AUSTRALIA;WARRACKNABEAL;94841.1;-36.27;142.40;113 -5724;AUSTRALIA;BEULAH POST OFFICE;94841.2;-35.95;142.42;89 -5725;AUSTRALIA;CAPE OTWAY;94842;-38.85;143.50;83 -5726;AUSTRALIA;APOLLO BAY POST OFFICE;94842.1;-38.77;143.67;9 -5727;AUSTRALIA;SWAN HILL;94843;-35.35;143.57;73 -5728;AUSTRALIA;KERANG POST OFFICE;94844.1;-35.73;143.92;78 -5729;AUSTRALIA;FORREST STATE FOREST;94845.1;-38.52;143.73;192 -5730;AUSTRALIA;COLAC;94845.2;-38.40;143.60;248 -5731;AUSTRALIA;AVOCA POST OFFICE;94849.1;-37.08;143.48;242 -5732;AUSTRALIA;MARYBOROUGH;94849.2;-37.05;143.73;249 -5733;AUSTRALIA;CURRIE;94851;-39.93;143.85;24 -5734;AUSTRALIA;BALLARAT;94852;-37.52;143.77;442 -5735;AUSTRALIA;CLUNES;94852.1;-37.30;143.78;310 -5736;AUSTRALIA;CAPE SCHANCK LIGHTHOUSE;94853.1;-38.50;144.88;79 -5737;AUSTRALIA;POINT LONSDALE LIGHTHOUSE;94853.2;-38.30;144.62;12 -5738;AUSTRALIA;BENDIGO PRISON;94855.1;-36.75;144.28;225 -5739;AUSTRALIA;GEELONG;94856.1;-38.08;144.33;55 -5740;AUSTRALIA;QUEENSCLIFF;94858.1;-38.27;144.67;0 -5741;AUSTRALIA;ECHUCA;94861;-36.15;144.75;97 -5742;AUSTRALIA;YARRAWONGA POST OFFICE;94862.1;-36.02;146.02;128 -5743;AUSTRALIA;COROWA COMPOSITE;94862.2;-36.00;146.35;143 -5744;AUSTRALIA;DURDIDWARRAH;94863.1;-37.82;144.20;366 -5745;AUSTRALIA;LAVERTON AERO;94865;-37.85;144.73;21 -5746;AUSTRALIA;MELBOURNE AIR;94866;-37.67;144.83;141 -5747;AUSTRALIA;MACEDON FORESTRY;94866.1;-37.42;144.55;503 -5748;AUSTRALIA;MELBOURNE;94868;-37.82;144.97;113 -5749;AUSTRALIA;DENILIQUIN;94869;-35.55;144.93;93 -5750;AUSTRALIA;WANGANELLA;94869.1;-35.17;144.70;82 -5751;AUSTRALIA;MOORABBIN AIR;94870;-37.97;145.10;16 -5752;AUSTRALIA;MORNINGTON POST OFFICE;94871.1;-38.23;145.03;46 -5753;AUSTRALIA;MANGALORE AIR;94874;-36.88;145.18;142 -5754;AUSTRALIA;SEYMOUR;94874.1;-37.02;145.17;142 -5755;AUSTRALIA;EUROA;94874.2;-36.77;145.55;175 -5756;AUSTRALIA;BERRIGAN POST OFFICE;94876.1;-35.67;145.82;119 -5757;AUSTRALIA;TOCUMWAL POST OFFICE;94877.1;-35.82;145.57;111 -5758;AUSTRALIA;WARRAGUL POST OFFICE;94880.1;-38.17;145.93;116 -5759;AUSTRALIA;NOOJEE;94880.2;-37.90;145.97;270 -5760;AUSTRALIA;WOODS POINT;94880.3;-37.58;146.25;685 -5761;AUSTRALIA;LAKE EILDON;94882;-37.23;145.92;262 -5762;AUSTRALIA;RUBICON SEC;94882.1;-37.33;145.85;838 -5763;AUSTRALIA;ALEXANDRA POST OFFICE;94882.2;-37.20;145.72;208 -5764;AUSTRALIA;BENALLA;94884;-36.55;145.98;170 -5765;AUSTRALIA;ADELONG POST OFFICE;94890.1;-35.32;148.07;333 -5766;AUSTRALIA;WILSONS PROMO;94893;-39.12;146.42;97 -5767;AUSTRALIA;BEECHWORTH;94895;-36.32;146.67;330 -5768;AUSTRALIA;RUTHERGLEN POST OFFICE;94895.1;-36.05;146.48;169 -5769;AUSTRALIA;ALBURY AIRPOR;94896;-36.07;146.95;171 -5770;AUSTRALIA;CORRYONG;94899;-36.20;147.88;314 -5771;AUSTRALIA;KHANCOBAN SMC;94899.1;-36.23;148.15;337 -5772;AUSTRALIA;HUME RESERVOI;94901;-36.10;147.02;184 -5773;AUSTRALIA;MOUNT BEAUTY;94903.1;-36.75;147.17;366 -5774;AUSTRALIA;EAST SALE AER;94907;-38.10;147.13;8 -5775;AUSTRALIA;MAFFRA COMPOSITE;94907.1;-37.97;146.98;27 -5776;AUSTRALIA;WAGGA AIRPORT;94910;-35.15;147.45;213 -5777;AUSTRALIA;JUNEE COMPOSITE;94910.1;-34.85;147.57;320 -5778;AUSTRALIA;OMEO;94911;-37.08;147.60;679 -5779;AUSTRALIA;BAIRNSDALE AI;94912;-37.88;147.55;50 -5780;AUSTRALIA;PERISHER VALL;94915;-36.40;148.40;1735 -5781;AUSTRALIA;CABRAMURRA;94916;-35.93;148.38;1475 -5782;AUSTRALIA;ORBOST;94917;-37.68;148.45;42 -5783;AUSTRALIA;TUMBARUMBA;94918;-35.77;148.00;645 -5784;AUSTRALIA;GUDGENBY;94922.1;-35.75;148.98;975 -5785;AUSTRALIA;COOMA;94923;-36.23;149.08;778 -5786;AUSTRALIA;NIMMITABEL POST OFFICE;94923.1;-36.52;149.28;1075 -5787;AUSTRALIA;CANBERRA AIRP;94926;-35.30;149.18;577 -5788;AUSTRALIA;QUEANBEYAN;94926.1;-35.35;149.23;580 -5789;AUSTRALIA;CANBERRA CITY;94926.2;-35.27;149.12;564 -5790;AUSTRALIA;CASSILIS;94927.1;-32.00;149.98;457 -5791;AUSTRALIA;BOMBALA;94928;-36.92;149.23;705 -5792;AUSTRALIA;BEGA;94931;-36.67;149.82;11 -5793;AUSTRALIA;POINT HICKS;94932;-37.80;149.27;24 -5794;AUSTRALIA;GABO ISLAND;94933;-37.57;149.90;15 -5795;AUSTRALIA;GREEN CAPE LIGHTHOUSE;94934.1;-37.27;150.05;20 -5796;AUSTRALIA;MORUYA HEADS;94937;-35.90;150.15;17 -5797;AUSTRALIA;NERRIGA COMPOSITE;94938.1;-35.12;150.08;630 -5798;AUSTRALIA;JERVIS BAY;94940;-35.08;150.80;83 -5799;AUSTRALIA;BRAIDWOOD;94941.1;-35.45;150.00;643 -5800;AUSTRALIA;MARRAWAH;94950.1;-40.92;144.70;107 -5801;AUSTRALIA;ERRIBA;94951.1;-41.45;146.12;590 -5802;AUSTRALIA;SMITHTON;94952.1;-40.85;145.12;7 -5803;AUSTRALIA;STANLEY POST OFFICE;94952.2;-40.77;145.30;10 -5804;AUSTRALIA;BURNIE;94958.1;-41.07;145.95;10 -5805;AUSTRALIA;SOUTHPORT;94961.1;-43.42;146.97;20 -5806;AUSTRALIA;MAATSUYKER IS;94962;-43.65;146.27;148 -5807;AUSTRALIA;BUSHY PARK;94964.1;-42.72;146.90;60 -5808;AUSTRALIA;LOW HEAD;94965;-41.05;146.80;30 -5809;AUSTRALIA;CAPE BRUNY;94967;-43.50;147.15;53 -5810;AUSTRALIA;LAUNCESTON AI;94968;-41.53;147.20;178 -5811;AUSTRALIA;DELORAINE;94969.1;-41.53;146.70;235 -5812;AUSTRALIA;WESTBURY;94969.2;-41.53;146.82;200 -5813;AUSTRALIA;HOBART REGIONAL OFFICE;94970.1;-42.88;147.33;55 -5814;AUSTRALIA;OATLANDS POST OFFICE;94971.1;-42.30;147.37;400 -5815;AUSTRALIA;SCOTTSDALE 2;94972.1;-41.17;147.48;190 -5816;AUSTRALIA;CAPE SORELL;94974.1;-42.20;145.17;19 -5817;AUSTRALIA;HOBART AIRPOR;94975;-42.83;147.48;27 -5818;AUSTRALIA;PALMERS LOOKOUT;94978.1;-43.17;147.83;192 -5819;AUSTRALIA;FLINDERS IS.AIRPORT;94980.1;-40.10;148.00;7 -5820;AUSTRALIA;SWANSEA;94981.1;-42.13;148.08;7 -5821;AUSTRALIA;ST HELENS POST OFFICE;94982.1;-41.32;148.25;5 -5822;AUSTRALIA;EDDYSTONE POI;94983;-40.98;148.33;14 -5823;AUSTRALIA;LORD HOWE ISL;94995;-31.53;159.07;6 -5824;AUSTRALIA;MACQUARIE ISL;94998;-54.48;158.95;8 -5825;AUSTRALIA;KARRATHA;95307.1;-20.73;116.75;6 -5826;AUSTRALIA;PARABURDOO;95310;-23.20;117.67;391 -5827;AUSTRALIA;NEWMAN;95314;-23.35;119.72;545 -5828;AUSTRALIA;SPRINGSURE;95362;-24.12;148.08;326 -5829;AUSTRALIA;THREE RIVERS;95400;-25.12;119.13;522 -5830;AUSTRALIA;MEEKATHARRA;95400.1;-25.63;118.72;0 -5831;AUSTRALIA;COOBER PEDY A;95458;-29.03;134.72;226 -5832;AUSTRALIA;BREWARRINA POST OFFICE;95512.1;-29.97;146.87;119 -5833;AUSTRALIA;GOODOOGA POST OFFICE;95512.2;-29.12;147.45;137 -5834;AUSTRALIA;COLLARENBRI;95520;-29.53;148.57;145 -5835;AUSTRALIA;TEXAS;95533;-28.85;151.17;284 -5836;AUSTRALIA;BUNDARRA POST OFFICE;95541.1;-30.17;151.07;654 -5837;AUSTRALIA;NAMBOUR;95572;-26.63;152.93;25 -5838;AUSTRALIA;BEERWAH;95572.1;-26.82;152.85;200 -5839;AUSTRALIA;TEWANTIN;95574;-26.38;153.03;10 -5840;AUSTRALIA;JURIEN;95600;-30.30;115.03;4 -5841;AUSTRALIA;LANCELIN;95606;-31.02;115.32;5 -5842;AUSTRALIA;DONNYBROOK;95608.1;-33.57;115.82;63 -5843;AUSTRALIA;KALAMUNDA;95610.1;-31.98;116.07;210 -5844;AUSTRALIA;METTLER;95611;-34.60;118.53;107 -5845;AUSTRALIA;PEMBERTON;95613;-34.45;116.03;175 -5846;AUSTRALIA;KARNET;95614;-32.43;116.07;286 -5847;AUSTRALIA;WAGIN;95618;-33.30;117.32;256 -5848;AUSTRALIA;MERREDIN;95624;-31.47;118.27;315 -5849;AUSTRALIA;NAREMBEEN;95626;-32.07;118.40;276 -5850;AUSTRALIA;HYDEN;95627;-32.47;118.88;299 -5851;AUSTRALIA;ONGERUP;95628;-33.95;118.48;288 -5852;AUSTRALIA;MELALEUCA;95645;-33.60;120.75;230 -5853;AUSTRALIA;FORREST;95646;-30.83;128.12;156 -5854;AUSTRALIA;NONNING;95655;-32.52;136.48;205 -5855;AUSTRALIA;ANDAMOOKA;95660;-30.45;137.17;76 -5856;AUSTRALIA;WHYALLA AIRPO;95664;-33.07;137.52;7 -5857;AUSTRALIA;YUDNAPINNA;95666.1;-32.12;137.15;50 -5858;AUSTRALIA;CLARE POST OFFICE;95667.1;-33.83;138.62;385 -5859;AUSTRALIA;EDINBURGH M.O;95676;-34.70;138.62;20 -5860;AUSTRALIA;PARAFIELD AIR;95677;-34.78;138.63;10 -5861;AUSTRALIA;BELAIR;95678.1;-35.00;138.62;305 -5862;AUSTRALIA;GRIFFITH AIRP;95704;-34.25;146.07;135 -5863;AUSTRALIA;LAKE CARGELLI;95707;-33.28;146.37;169 -5864;AUSTRALIA;NARADHAN;95707.1;-33.62;146.32;192 -5865;AUSTRALIA;MOUNT HOPE;95707.2;-32.85;145.88;223 -5866;AUSTRALIA;WALGETT POST OFFICE;95715.1;-30.02;148.12;132 -5867;AUSTRALIA;YASS;95723;-34.85;148.90;500 -5868;AUSTRALIA;DUNEDOO;95727;-32.02;149.38;388 -5869;AUSTRALIA;JENOLAN CAVES;95735.1;-33.82;150.03;730 -5870;AUSTRALIA;QUIRINDI;95746;-31.50;150.67;390 -5871;AUSTRALIA;LIVERPOOL;95750;-33.92;150.92;21 -5872;AUSTRALIA;CAMDEN AIRPORT / MO 1943-1944;95750.1;-34.05;150.68;-999 -5873;AUSTRALIA;RICHMOND AMO;95753;-33.60;150.78;20 -5874;AUSTRALIA;RICHMOND;95753.1;-33.62;150.75;20 -5875;AUSTRALIA;SCONE SOIL CONSERVATION;95758.1;-32.07;150.93;216 -5876;AUSTRALIA;SCONE;95758.2;-32.05;150.87;213 -5877;AUSTRALIA;TAMWORTH AIRP;95762;-31.07;150.83;396 -5878;AUSTRALIA;WALCHA POST OFFICE;95773.1;-30.98;151.60;1050 -5879;AUSTRALIA;NARARA AGRIC RESEARCH STATION;95774.1;-33.40;151.33;40 -5880;AUSTRALIA;MT CRAWFORD;95810;-34.70;138.93;395 -5881;AUSTRALIA;MURRAY BRIDGE;95812;-35.12;139.27;15 -5882;AUSTRALIA;MENINGIE;95814;-35.68;139.33;3 -5883;AUSTRALIA;PENOLA STATE FOREST RESERVE;95817.1;-37.48;140.83;65 -5884;AUSTRALIA;HORSHAM;95834;-36.65;142.10;141 -5885;AUSTRALIA;LONGERENONG AGRICULTURE COLLEG;95834.1;-36.67;142.30;91 -5886;AUSTRALIA;DONALD;95842;-36.38;143.00;118 -5887;AUSTRALIA;ST ARNAUD FORESTRY;95842.1;-36.62;143.27;239 -5888;AUSTRALIA;WYCHEPROOF POST OFFICE;95842.2;-36.10;143.20;110 -5889;AUSTRALIA;BIRCHIP POST OFFICE;95842.3;-35.98;142.90;102 -5890;AUSTRALIA;CASTLEMAINE;95853;-37.07;144.23;325 -5891;AUSTRALIA;LEMNOS;95871;-36.37;145.47;113 -5892;AUSTRALIA;DOOKIE AGRICULTURAL COLLEGE;95871.1;-36.38;145.70;172 -5893;AUSTRALIA;WONTHAGGI COM;95881;-38.60;145.58;42 -5894;AUSTRALIA;OLSENS BRIDGE;95884;-38.48;146.32;183 -5895;AUSTRALIA;LAKES ENTRANC;95904;-37.87;147.98;36 -5896;AUSTRALIA;THREDBO;95908;-36.50;148.30;1380 -5897;AUSTRALIA;CRACKENBACK;95909;-36.48;148.28;1957 -5898;AUSTRALIA;MERIMBULA AIR;95930;-36.90;149.90;2 -5899;AUSTRALIA;MONTAGUE ISLAND LIGHTHOUSE;95935.1;-36.25;150.23;52 -5900;AUSTRALIA;WARATAH;95950.1;-41.45;145.53;615 -5901;AUSTRALIA;QUEENSTOWN;95951.1;-42.10;145.55;129 -5902;AUSTRALIA;STRATHGORDON;95953.1;-42.77;146.05;320 -5903;AUSTRALIA;MIENA;95955.1;-41.98;146.73;1040 -5904;AUSTRALIA;WYNYARD;95957.1;-41.00;145.73;9 -5905;AUSTRALIA;DEVONPORT EAST;95960.1;-41.18;146.38;46 -5906;AUSTRALIA;PALMERSTON;95968.1;-41.78;146.98;180 -5907;AUSTRALIA;BUTLERS GORGE;95970.1;-42.28;146.27;666 -5908;AUSTRALIA;GROVE RESEARCH;95979.1;-42.98;147.08;60 -5909;AUSTRALIA;THE SPRINGS;95979.2;-42.92;147.25;720 -5910;AUSTRALIA;MOUNT WELLINGTON AWS;95979.3;-42.90;147.23;1253 -5911;AUSTRALIA;ORFORD POST OFFICE;95984.1;-42.55;147.88;15 -5912;AUSTRALIA;BICHENO COMPOSITE;95989.1;-41.87;148.30;10 -5913;FIJI;ROTUMA;91650;-12.50;177.05;26 -5914;FIJI;UNDU POINT;91652;-16.13;-179.98;63 -5915;FIJI;NAMBOUWALU;91659;-17.00;178.70;36 -5916;FIJI;YASAWA-I-RARA;91660;-16.70;177.58;50 -5917;FIJI;NANDI;91680;-17.75;177.45;18 -5918;FIJI;NAUSORI;91683;-18.05;178.57;7 -5919;FIJI;LAUCALA BAY;91690;-18.15;178.45;9 -5920;FIJI;ONO-I-LAU;91699;-20.67;-178.72;28 -5921;INDONESIA;MEDAN/POLONIA;96035;3.57;98.68;25 -5922;INDONESIA;SIBOLGA/PINAN;96073;1.55;98.88;3 -5923;INDONESIA;TANJUNGPINANG;96091;0.92;104.53;18 -5924;INDONESIA;PAKANBARU/;96109;0.47;101.45;31 -5925;INDONESIA;RANAI;96147.1;3.85;108.38;2 -5926;INDONESIA;PADANG;96163.1;-0.90;100.40;-999 -5927;INDONESIA;RENGAT;96171.1;-0.43;102.45;20 -5928;INDONESIA;JAMBI/SULTAN;96195;-1.63;103.65;25 -5929;INDONESIA;PALEMBANG/;96221;-2.90;104.70;10 -5930;INDONESIA;PANGKALPINANG;96237;-2.17;106.13;33 -5931;INDONESIA;BENGKULU/;96253;-3.88;102.33;16 -5932;INDONESIA;MENGGALA/ASTR;96273;-4.45;105.18;19 -5933;INDONESIA;TELUKBETUNG/B;96295;-5.27;105.18;96 -5934;INDONESIA;TARAKAN/JUWAT;96509;3.33;117.57;6 -5935;INDONESIA;SINGKAWANG II;96533;1.08;109.67;38 -5936;INDONESIA;PONTIANAK/SUP;96581;-0.15;109.40;3 -5937;INDONESIA;BALIKPAPAN/SE;96633;-1.27;116.90;3 -5938;INDONESIA;BANJARMASIN/;96685;-3.43;114.75;20 -5939;INDONESIA;SERANG;96737;-6.12;106.13;40 -5940;INDONESIA;CURUG/BUDIART;96739;-6.23;106.65;46 -5941;INDONESIA;JAKARTA/OBSER;96745;-6.18;106.83;8 -5942;INDONESIA;"DJAKARTA, JAVA";96745.1;-6.15;106.85;5 -5943;INDONESIA;KEMAYORAN;96745.2;-6.15;106.85;5 -5944;INDONESIA;JAKARTA HALIM;96747;-6.25;106.90;30 -5945;INDONESIA;JAKARTA HALIM PERDANAKUSUM;96747.1;-6.30;106.90;30 -5946;INDONESIA;BOGOR/DERMAGA;96753;-6.50;106.75;250 -5947;INDONESIA;BANDUNG/HUSEI;96781;-6.90;107.58;740 -5948;INDONESIA;JATIWANGI;96791;-6.75;108.27;50 -5949;INDONESIA;TEGAL;96797;-6.85;109.15;10 -5950;INDONESIA;TASIKMALAYA/;96801;-7.33;108.25;335 -5951;INDONESIA;CILACAP;96805;-7.73;109.02;6 -5952;INDONESIA;SEMARANG/AHMA;96839;-6.98;110.38;3 -5953;INDONESIA;JOGYAKARTA/;96853;-7.78;110.43;107 -5954;INDONESIA;MADIUN/ISWAHY;96881;-7.62;111.52;110 -5955;INDONESIA;SANGKAPURA;96925;-5.85;112.63;3 -5956;INDONESIA;SURABAYA/PERA;96933;-7.22;112.72;3 -5957;INDONESIA;PASURUAN;96935.1;-7.60;112.90;4 -5958;INDONESIA;KALIANGET;96973;-7.05;113.97;3 -5959;INDONESIA;MENADO/DR. SA;97014;1.53;124.92;80 -5960;INDONESIA;GORONTALO/JAL;97048;0.52;123.07;2 -5961;INDONESIA;KENDARI/WOLTE;97146;-4.10;122.43;50 -5962;INDONESIA;UJANG PANDANG;97182;-5.07;119.55;-999 -5963;INDONESIA;DENPASAR/NGUR;97230;-8.75;115.17;1 -5964;INDONESIA;AMPENAN/SELAP;97240;-8.53;116.07;3 -5965;INDONESIA;WAINGAPU/MAU;97340;-9.67;120.33;12 -5966;INDONESIA;KUPANG/EL TAR;97372;-10.17;123.67;108 -5967;INDONESIA;DILLI/DILLI A;97390;-8.57;125.57;6 -5968;INDONESIA;FAZENDA ALGARVE;97390.1;-8.70;125.40;918 -5969;INDONESIA;BAUCAU;97395;-8.50;126.40;522 -5970;INDONESIA;SORONG/JEFMAN;97502;-0.93;131.12;3 -5971;INDONESIA;MANOKWARI/REN;97530;-0.88;134.05;3 -5972;INDONESIA;BIAK/MOKMER;97560;-1.18;136.12;11 -5973;INDONESIA;WAMENA/WAMENA;97686;-4.07;138.95;1660 -5974;INDONESIA;SENTANI;97690.1;-2.55;140.55;98 -5975;INDONESIA;AMBON/PATTIMU;97724;-3.70;128.08;12 -5976;INDONESIA;KAIMANA/UTARO;97760;-3.67;133.75;3 -5977;INDONESIA;KOKONAO/TIMUK;97796;-4.72;136.43;3 -5978;INDONESIA;TUAL/DUMATUBU;97810;-5.68;132.75;12 -5979;INDONESIA;SAUMLAKI;97900;-7.98;131.30;24 -5980;INDONESIA;MERAUKE/MOPAH;97980;-8.47;140.38;3 -5981;KIRIBATI;FANNING ISLAN;91487;3.85;-159.37;5 -5982;KIRIBATI;CHRISTMAS ISL;91490;1.98;-157.48;3 -5983;KIRIBATI;TARAWA;91610;1.35;172.92;4 -5984;KIRIBATI;ARORAE;91629;-2.67;176.83;7 -5985;KIRIBATI;KANTON ISLAND;91701;-2.77;-171.72;2 -5986;KIRIBATI;MALDEN ISLAND;91902;-4.05;-155.00;2 -5987;MALAYSIA;PENANG/BAYAN;48601;5.30;100.27;4 -5988;MALAYSIA;ALOR SETAR AIRPORT;48603.1;6.20;100.42;5 -5989;MALAYSIA;KOTA BHARU;48615;6.17;102.28;5 -5990;MALAYSIA;KUALA TRENGGA;48618;5.38;103.10;6 -5991;MALAYSIA;SITIAWAN;48620;4.22;100.70;8 -5992;MALAYSIA;IPOH AIRPORT;48625.1;4.57;101.10;40 -5993;MALAYSIA;CAMERON HIGHLANDS;48632.1;4.47;101.38;1472 -5994;MALAYSIA;KUALA LUMPUR/;48647;3.12;101.55;22 -5995;MALAYSIA;KUANTAN;48657;3.62;103.22;16 -5996;MALAYSIA;MALACCA;48665;2.27;102.25;9 -5997;MALAYSIA;MERSING;48674;2.45;103.83;45 -5998;MALAYSIA;PAYA LEBAR AIRPORT;48679.1;1.37;103.92;32 -5999;MALAYSIA;KUCHING;96413;1.48;110.33;27 -6000;MALAYSIA;SIBU;96421;2.33;111.83;8 -6001;MALAYSIA;BINTULU;96441;3.20;113.03;5 -6002;MALAYSIA;MIRI;96449;4.33;113.98;18 -6003;MALAYSIA;LABUAN;96465;5.30;115.25;30 -6004;MALAYSIA;KOTA KINABALU;96471;5.93;116.05;3 -6005;MALAYSIA;SANDAKAN;96491;5.90;118.07;13 -6006;NAURU;NAURU COASTAL RADIO STATION;91530.1;-0.57;166.92;26 -6007;NAURU;BANABA;91533;-0.90;169.53;66 -6008;NEW ZEALAND;KAITAIA;93012;-35.13;173.27;87 -6009;NEW ZEALAND;WHENUAPAI;93112;-36.78;174.63;27 -6010;NEW ZEALAND;AUCKLAND;93116.1;-36.90;174.80;5 -6011;NEW ZEALAND;ALBERT PARK;93116.2;-36.85;174.77;49 -6012;NEW ZEALAND;"AUCKLAND, ALBERT PARK";93116.3;-36.85;174.77;49 -6013;NEW ZEALAND;AUCKLAND AIRP;93119;-37.02;174.80;6 -6014;NEW ZEALAND;GISBORNE AERO;93292;-38.65;177.98;5 -6015;NEW ZEALAND;NEW PLYMOUTH;93309;-39.02;174.18;32 -6016;NEW ZEALAND;NAPIER AERODR;93373;-39.45;176.85;3 -6017;NEW ZEALAND;WELLINGTON;93436.1;-41.30;174.80;128 -6018;NEW ZEALAND;NELSON AERODR;93546;-41.28;173.23;7 -6019;NEW ZEALAND;HOKITIKA AERO;93615;-42.72;170.98;40 -6020;NEW ZEALAND;CHRISTCHURCH;93780;-43.48;172.52;37 -6021;NEW ZEALAND;CHRISTCHURCH NEW ZEALAND;93780.1;-43.50;172.60;7 -6022;NEW ZEALAND;INVERCARGILL;93844;-46.70;168.55;4 -6023;NEW ZEALAND;DUNEDIN AERODROME;93890.1;-45.93;170.20;1 -6024;NEW ZEALAND;DUNEDIN MUSSELBURGH NEW ZE;93893.1;-45.90;170.50;2 -6025;NEW ZEALAND;CAMPBELL ISLA;93945;-52.55;169.15;19 -6026;NEW ZEALAND;CHATHAM ISLAN;93987;-43.95;-176.57;49 -6027;NEW ZEALAND;RAOUL ISLAND;93994;-29.25;-177.92;49 -6028;PAPUA NEW GUINEA;DARU;94003;-9.08;143.20;6 -6029;PAPUA NEW GUINEA;WEWAK A/F;94004.1;-3.58;143.67;5 -6030;PAPUA NEW GUINEA;WABAG;94005.1;-5.48;143.72;1981 -6031;PAPUA NEW GUINEA;GOROKA;94010;-6.07;145.38;1587 -6032;PAPUA NEW GUINEA;MADANG M.O.;94014;-5.22;145.80;4 -6033;PAPUA NEW GUINEA;AIYURA;94016;-6.32;145.90;1554 -6034;PAPUA NEW GUINEA;LAE M.O.;94027;-6.73;147.00;8 -6035;PAPUA NEW GUINEA;PORT MORESBY;94035;-9.43;147.22;42 -6036;PAPUA NEW GUINEA;MOMOTE M.O.;94044;-2.07;147.43;4 -6037;PAPUA NEW GUINEA;SIDEIA;94070;-10.62;150.67;3 -6038;PAPUA NEW GUINEA;DOGURA;94077.1;-10.10;150.08;65 -6039;PAPUA NEW GUINEA;RABAUL M.O.;94085;-4.22;152.18;9 -6040;PHILIPPINES;CALAYAN;98133;19.27;121.47;13 -6041;PHILIPPINES;BASCO;98135;20.45;121.97;11 -6042;PHILIPPINES;VIGAN;98222;17.57;120.38;33 -6043;PHILIPPINES;LAOAG;98223;18.18;120.53;5 -6044;PHILIPPINES;APARRI;98232;18.37;121.63;3 -6045;PHILIPPINES;TUGUEGARAO;98233;17.62;121.73;62 -6046;PHILIPPINES;IBA;98324;15.33;119.97;5 -6047;PHILIPPINES;DAGUPAN;98325;16.05;120.33;2 -6048;PHILIPPINES;"CLARK AFB, LUZON";98327.1;15.18;120.55;149 -6049;PHILIPPINES;BAGUIO;98328;16.42;120.60;1501 -6050;PHILIPPINES;CABANATUAN;98330;15.48;120.97;32 -6051;PHILIPPINES;BALER;98333;15.77;121.57;6 -6052;PHILIPPINES;CASIGURAN;98336;16.28;122.12;4 -6053;PHILIPPINES;MANILA;98425;14.58;120.98;13 -6054;PHILIPPINES;CUBI POINT/NF;98426.1;14.80;120.27;14 -6055;PHILIPPINES;TAYABAS;98427;14.03;121.58;158 -6056;PHILIPPINES;SANGLEY POINT;98428;14.50;120.92;4 -6057;PHILIPPINES;NINOY AQUINO;98429;14.52;121.00;15 -6058;PHILIPPINES;SCIENCE GARDE;98430;14.63;121.02;46 -6059;PHILIPPINES;CALAPAN;98431;13.42;121.18;41 -6060;PHILIPPINES;AMBULONG;98432;14.08;121.05;11 -6061;PHILIPPINES;INFANTA;98434;14.75;121.65;7 -6062;PHILIPPINES;ALABAT;98435;14.08;122.02;5 -6063;PHILIPPINES;SAN FRANCISCO;98437;13.37;122.52;45 -6064;PHILIPPINES;DAET;98440;14.13;122.98;4 -6065;PHILIPPINES;LEGASPI;98444;13.13;123.73;17 -6066;PHILIPPINES;VIRAC;98446;13.58;124.23;40 -6067;PHILIPPINES;CORON;98526;12.00;120.20;14 -6068;PHILIPPINES;ROMBLON;98536;12.58;122.27;47 -6069;PHILIPPINES;ROXAS;98538;11.58;122.75;4 -6070;PHILIPPINES;MASBATE;98543;12.37;123.62;6 -6071;PHILIPPINES;CATARMAN;98546;12.48;124.63;5 -6072;PHILIPPINES;CATBALOGAN;98548;11.78;124.88;5 -6073;PHILIPPINES;TACLOBAN;98550;11.25;125.00;3 -6074;PHILIPPINES;BORONGAN;98553.1;11.62;125.43;6 -6075;PHILIPPINES;PUERTO PRINCE;98618;9.75;118.73;16 -6076;PHILIPPINES;CUYO;98630;10.85;121.03;4 -6077;PHILIPPINES;ILOILO;98637;10.70;122.57;8 -6078;PHILIPPINES;MA-AO BAGO NEG.OCC.;98637.1;10.48;122.95;3 -6079;PHILIPPINES;HAWAIIAN PHIL.CO.SILAY CITY;98637.2;10.80;122.97;12 -6080;PHILIPPINES;VICTORIAS NEG.OCC.;98637.3;10.90;123.07;18 -6081;PHILIPPINES;DUMAGUETE;98642;9.30;123.30;8 -6082;PHILIPPINES;TAGBILARAN;98644;9.60;123.85;8 -6083;PHILIPPINES;CEBU;98645.1;10.30;123.90;35 -6084;PHILIPPINES;BOGO MEDELLIN CEBU;98645.2;11.13;123.97;3 -6085;PHILIPPINES;MACTAN;98646;10.30;123.97;24 -6086;PHILIPPINES;SURIGAO;98653;9.80;125.50;55 -6087;PHILIPPINES;DIPOLOG;98741;8.60;123.35;5 -6088;PHILIPPINES;CAGAYAN DE OR;98748;8.48;124.63;6 -6089;PHILIPPINES;PHILIP MANOLO FORT.BUKIDNON;98748.1;8.37;124.83;199 -6090;PHILIPPINES;MALAYBALAY;98751;8.15;125.08;627 -6091;PHILIPPINES;DAVAO CITY;98753.1;7.07;125.60;19 -6092;PHILIPPINES;HINATUAN;98755;8.37;126.33;3 -6093;PHILIPPINES;JOLO;98830.1;6.05;121.05;11 -6094;PHILIPPINES;ZAMBOANGA;98836;6.90;122.07;6 -6095;PHILIPPINES;U.P.LAND GRANT LAM.BASILAN;98836.1;6.70;122.05;180 -6096;PHILIPPINES;GEN. SANTOS;98851;6.12;125.18;15 -6097;SINGAPORE;SINGAPORE;48694.1;1.30;103.90;18 -6098;SINGAPORE;SINGAPORE/CHA;48698;1.37;103.98;16 -6099;SOLOMON ISLANDS;TARO ISLAND;91502;-6.70;156.38;3 -6100;SOLOMON ISLANDS;MUNDA;91503;-8.33;157.27;6 -6101;SOLOMON ISLANDS;AUKI;91507;-8.78;160.73;11 -6102;SOLOMON ISLANDS;HONIARA;91517;-9.42;159.97;56 -6103;SOLOMON ISLANDS;HONIARA/HENDE;91520;-9.42;160.05;9 -6104;SOLOMON ISLANDS;KIRA KIRA;91527;-10.42;161.92;3 -6105;SOLOMON ISLANDS;SANTA CRUZ;91541;-10.70;165.80;24 -6106;TONGA;VAVAU;91780;-18.65;-173.98;10 -6107;TONGA;NUKUALOFA TONGA ISLAND;91792.1;-21.10;-175.20;2 -6108;TUVALU;FUNAFUTI;91643;-8.52;179.22;2 -6109;TUVALU;NIULAKITA;91648;-10.75;179.50;3 -6110;VANUATU;VANUA LAVA;91551.1;-13.83;167.55;42 -6111;VANUATU;PEKOA;91554;-15.52;167.22;56 -6112;VANUATU;"VILA, NEW HEBRIDES";91557.1;-17.80;168.30;20 -6113;VANUATU;ANEITYUM;91568;-20.23;169.77;7 -6114;AMERICAN SAMOA;PAGO PAGO/INT;91765;-14.33;-170.72;3 -6115;CHRISTMAS ISLAND;CHRISTMAS ISL;96995;-10.43;105.68;262 -6116;COCOS ISLANDS;COCOS ISLAND;96996;-12.18;96.82;3 -6117;COOK ISLANDS;PENRHYN;91800;-9.02;-158.07;2 -6118;COOK ISLANDS;RAKAHANGA;91804;-10.05;-161.10;5 -6119;COOK ISLANDS;PUKAPUKA;91811;-10.88;-165.82;3 -6120;COOK ISLANDS;AITUTAKI;91830;-18.83;-159.77;6 -6121;COOK ISLANDS;RAROTONGA;91843;-21.20;-159.82;7 -6122;CORAL SEA ISLANDS;WILLIS ISLAND;94299;-16.30;149.98;9 -6123;FEDERATED STATES OF MICRONESIA;FALALOP ISLAN;91203;10.03;139.80;5 -6124;FEDERATED STATES OF MICRONESIA;TRUK;91334;7.47;151.85;2 -6125;FEDERATED STATES OF MICRONESIA;PONAPE;91348;6.97;158.22;46 -6126;FEDERATED STATES OF MICRONESIA;"LELU, KOSRAE";91356;5.33;163.03;4 -6127;FEDERATED STATES OF MICRONESIA;"YAP, CAROLINE";91413;9.48;138.08;17 -6128;FRENCH POLYNESIA;ATUONA;91925;-9.80;-139.03;52 -6129;FRENCH POLYNESIA;BORA-BORA;91930;-16.45;-151.75;3 -6130;FRENCH POLYNESIA;MOPELIA;91930.1;-16.77;-153.95;2 -6131;FRENCH POLYNESIA;TAHITI-FAAA;91938;-17.55;-149.62;2 -6132;FRENCH POLYNESIA;TAKAROA;91943;-14.48;-145.03;3 -6133;FRENCH POLYNESIA;HAO;91944;-18.07;-140.95;7 -6134;FRENCH POLYNESIA;"PUKA-PUKA, TUAMOTU IS.";91944.1;-14.80;-138.80;3 -6135;FRENCH POLYNESIA;HEREHERETUE;91945;-19.87;-145.00;3 -6136;FRENCH POLYNESIA;"TOTEGEGIE, GAMBIER IS.";91948;-23.10;-134.90;3 -6137;FRENCH POLYNESIA;RURUTU;91950;-22.43;-151.37;3 -6138;FRENCH POLYNESIA;MURUROA;91952;-21.82;-138.80;3 -6139;FRENCH POLYNESIA;TUBUAI;91954;-23.35;-149.48;3 -6140;FRENCH POLYNESIA;RAPA;91958;-27.62;-144.33;2 -6141;GUAM;"AGANA, G";91217;13.55;144.83;111 -6142;JOHNSTON ATOLL;JOHNSTON ISLA;91275;16.73;-169.52;2 -6143;MARSHALL ISLANDS;"ENEWETAK, MARS";91250;11.35;162.35;5 -6144;MARSHALL ISLANDS;KWAJALEIN/BUC;91366;8.73;167.73;8 -6145;MARSHALL ISLANDS;MAJURO/MARSHA;91376;7.08;171.38;3 -6146;NEW CALEDONIA;KOUMAC;91577;-20.57;164.28;18 -6147;NEW CALEDONIA;LA TONTOUTA;91590;-22.02;166.22;14 -6148;NEW CALEDONIA;NOUMEA;91592;-22.27;166.45;72 -6149;NEW ZEALAND;ALOFI/NIUE;91822;-19.07;-169.92;22 -6150;NORFOLK ISLAND;NORFOLK ISLAN;94996;-29.03;167.93;109 -6151;NORTHERN MARIANA ISLANDS;"NWSO AGANA, G";91212;13.48;144.80;82 -6152;NORTHERN MARIANA ISLANDS;ANDERSEN AFB;91218;13.57;144.92;162 -6153;NORTHERN MARIANA ISLANDS;SAIPAN;91232;15.12;145.73;4 -6154;PALAU;"KOROR, PALAU";91408;7.33;134.48;33 -6155;PITCAIRN ISLAND;PITCAIRN;91960;-25.07;-130.10;265 -6156;TOKELAU;ATAFU;91720;-8.53;-172.52;3 -6157;TOKELAU;NUKUNONO;91724;-9.20;-171.92;3 -6158;WAKE ISLAND;WAKE ISLAND A;91245;19.28;166.65;4 -6159;WALLIS AND FUTUNA;HIHIFO;91753;-13.23;-176.17;27 -6160;SAMOA;APIA;91762;-13.80;-171.78;2 -6161;ALBANIA;SHKODRA;13600;42.10;19.53;44 -6162;ALBANIA;TIRANA;13615;41.33;19.78;90 -6163;ALBANIA;VLORE;13622;40.47;19.48;5 -6164;ALBANIA;KORCA;13629;40.60;20.77;900 -6165;ARMENIA;GUMRI;37686;40.78;43.83;1529 -6166;ARMENIA;YEREVAN;37789;40.13;44.47;907 -6167;AUSTRIA;LINZ/HOERSCHI;11010;48.23;14.18;313 -6168;AUSTRIA;KREMSMUENSTER;11012;48.05;14.13;389 -6169;AUSTRIA;HOHENFURTH;11020.1;48.60;15.30;-999 -6170;AUSTRIA;ST. POELTEN;11028;48.20;15.62;282 -6171;AUSTRIA;WIEN/HOHE WAR;11035;48.25;16.37;209 -6172;AUSTRIA;INNSBRUCK-FLUGHAFEN AUSTRIA;11120;47.27;11.35;593 -6173;AUSTRIA;SONNBLICK;11146;47.05;12.95;3109 -6174;AUSTRIA;SALZBURG-FLUG;11150;47.80;13.00;450 -6175;AUSTRIA;KLAGENFURT-FL;11231;46.65;14.33;476 -6176;AUSTRIA;OBIR;11234.1;46.50;14.50;2044 -6177;AUSTRIA;GRAZ-THALERHO;11240;47.00;15.43;347 -6178;AUSTRIA;INNSBRUCK/UNIVERSITYAUSTRIA;11320;47.30;11.40;582 -6179;AUSTRIA;WILTEN;11320.1;47.30;11.40;184 -6180;AZERBAIJAN;KIROVABAD;37735.1;40.72;46.42;303 -6181;AZERBAIJAN;BAKU;37851;40.42;49.78;61 -6182;AZERBAIJAN;LANKARAN;37985;38.73;48.83;-12 -6183;BELARUS;MINSK;26850;53.93;27.63;231 -6184;BELARUS;BREST;33008;52.12;23.68;146 -6185;BELARUS;VASILEVICI;33038;52.25;29.83;142 -6186;BELGIUM;UCCLE;6447;50.80;4.35;104 -6187;BOSNIA AND HERZEGOVINA;BIHAC;13228.1;44.82;15.88;250 -6188;BOSNIA AND HERZEGOVINA;BANJA LUKA;13242.1;44.78;17.22;156 -6189;BOSNIA AND HERZEGOVINA;BUGOJNO;13244;44.07;17.47;566 -6190;BOSNIA AND HERZEGOVINA;LOZNICA;13262;44.55;19.23;122 -6191;BOSNIA AND HERZEGOVINA;LIVNO;13340.1;43.83;17.02;724 -6192;BOSNIA AND HERZEGOVINA;MOSTAR;13348.1;43.35;17.80;108 -6193;BOSNIA AND HERZEGOVINA;BJELASNICA MTN RNG;13352.1;43.72;18.27;2070 -6194;BOSNIA AND HERZEGOVINA;SARAJEVO/BUTMIR;13353.1;43.82;18.33;511 -6195;BOSNIA AND HERZEGOVINA;SARAJEVO;14654;43.90;18.40;637 -6196;BULGARIA;VRATZA;15505;43.20;23.53;310 -6197;BULGARIA;LOM;15511;43.82;23.25;33 -6198;BULGARIA;PLEVEN;15525.1;43.42;24.60;71 -6199;BULGARIA;KOLAROVGRAD;15549.1;43.27;26.93;220 -6200;BULGARIA;VARNA;15552;43.20;27.92;43 -6201;BULGARIA;CHERNI VRAH;15613;42.58;23.27;2292 -6202;BULGARIA;SOFIA;15614;42.65;23.38;595 -6203;BULGARIA;MUSSALA;15615;42.18;23.58;2927 -6204;BULGARIA;PLOVDIV;15625;42.13;24.75;185 -6205;BULGARIA;BOTEV VRAH;15627;42.67;24.83;2389 -6206;BULGARIA;BURGAS;15655;42.48;27.48;28 -6207;CROATIA;ZAGREB/GRIC;14236;45.82;15.98;162 -6208;CROATIA;ZAGREB/MAKSIM;14240;45.82;16.03;128 -6209;CROATIA;ZAGREB/PLESO;14241;45.73;16.07;107 -6210;CROATIA;DARUVAR;14258;45.60;17.23;161 -6211;CROATIA;OSIJEK;14279.1;45.60;18.70;-999 -6212;CROATIA;PULA AERODROM;14307;45.90;13.92;63 -6213;CROATIA;RIJEKA/OMISALJ;14317.1;45.22;14.58;85 -6214;CROATIA;SLAVONSKI BRO;14370;45.17;18.00;89 -6215;CROATIA;ZADAR/ZEMUNIK;14431;44.10;15.35;82 -6216;CROATIA;SPLIT/RESNIK;14444;43.53;16.30;21 -6217;CROATIA;SPLIT/MARJAN;14445;43.52;16.43;128 -6218;CROATIA;HVAR;14447;43.17;16.45;25 -6219;CROATIA;DUBROVNIK/CIL;14474;42.57;18.27;165 -6220;CYPRUS;LIMASSOL;17600.1;34.70;32.00;8 -6221;CYPRUS;NICOSIA;17607.1;35.20;33.30;220 -6222;CYPRUS;LARNACA AIRPO;17609;34.88;33.63;2 -6223;CZECH REPUBLIC;CHEB;11406;50.08;12.40;471 -6224;CZECH REPUBLIC;MARIANSKE LAZ;11418;49.92;12.72;541 -6225;CZECH REPUBLIC;SCHOSSL;11438.1;50.50;13.50;-999 -6226;CZECH REPUBLIC;MILESOVKA;11464;50.55;13.93;-999 -6227;CZECH REPUBLIC;TETSCHEN;11502.1;50.80;14.20;288 -6228;CZECH REPUBLIC;PRAHA/RUZYNE;11518;50.10;14.25;365 -6229;CZECH REPUBLIC;SMETSCHNA;11518.1;50.20;14.00;1077 -6230;CZECH REPUBLIC;PRAHA-LIBUS;11520;50.02;14.45;304 -6231;CZECH REPUBLIC;NEURODE;11643.1;50.50;16.50;237 -6232;CZECH REPUBLIC;HOHENELB;11643.2;50.60;15.60;-999 -6233;CZECH REPUBLIC;DEUTSCHBROD;11659.1;49.60;15.60;1238 -6234;CZECH REPUBLIC;LANDSKRON;11679.1;49.90;16.60;1025 -6235;CZECH REPUBLIC;BRNO/TURANY;11723;49.15;16.70;246 -6236;CZECH REPUBLIC;LEOBSCHUTZ;11735.1;50.20;17.80;357 -6237;CZECH REPUBLIC;OSTRAVA/MOSNO;11782;49.68;18.12;256 -6238;DENMARK;ALBORG;6030;57.10;9.87;13 -6239;DENMARK;SKAGEN;6041;57.73;10.63;10 -6240;DENMARK;RANDERS;6048.1;56.50;10.10;5 -6241;DENMARK;VESTERVIG;6052.1;56.80;8.30;19 -6242;DENMARK;TARM;6066.1;55.90;8.50;7 -6243;DENMARK;BOGO;6179.1;54.90;12.10;27 -6244;DENMARK;KOBENHAVN/;6186;55.68;12.55;9 -6245;DENMARK;RONNE;6190;55.07;14.75;16 -6246;DENMARK;DUEODDE;6190.1;55.00;15.10;6 -6247;DENMARK;BODILSHO;6190.2;55.10;15.10;48 -6248;ESTONIA;TALLIN;26038;59.42;24.80;44 -6249;ESTONIA;BALTISCHPORT;26038.1;59.40;24.10;10 -6250;ESTONIA;PJARNU;26231;58.38;24.50;14 -6251;ESTONIA;DORPAT;26231.1;58.40;24.50;10 -6252;ESTONIA;FELLIN;26233.1;58.40;25.60;61 -6253;FINLAND;IVALO;2807;68.62;27.42;148 -6254;FINLAND;SODANKYLA;2836;67.37;26.65;179 -6255;FINLAND;TORNEO;2844.1;66.40;23.80;-999 -6256;FINLAND;ROVANIEMI;2845;66.57;25.83;201 -6257;FINLAND;KUUSAMO;2869;65.97;29.18;263 -6258;FINLAND;CARLO;2874.1;65.00;24.70;-999 -6259;FINLAND;OULU;2875;64.93;25.37;15 -6260;FINLAND;KAJAANI;2897;64.28;27.68;136 -6261;FINLAND;VAASA;2912;63.10;21.58;14 -6262;FINLAND;WORO;2912.1;63.20;22.00;-999 -6263;FINLAND;JOENSUU;2929;62.67;29.63;117 -6264;FINLAND;JYVASKYLA;2935;62.40;25.68;145 -6265;FINLAND;TAMPERE;2944.1;61.47;23.73;92 -6266;FINLAND;LAPPEENRANTA;2958;61.05;28.20;115 -6267;FINLAND;JOKIOINEN;2963;60.82;23.50;103 -6268;FINLAND;MAARIANHAMINA;2971.1;60.12;19.92;2 -6269;FINLAND;TURKU;2972;60.52;22.27;59 -6270;FINLAND;HELSINKI/SEUTULA;2974;60.30;25.00;58 -6271;FRANCE;LILLE;7015;50.57;3.10;52 -6272;FRANCE;ROUEN;7037;49.38;1.18;157 -6273;FRANCE;EVREUX;7038;49.02;1.22;146 -6274;FRANCE;CHERBOURG/CHANTEREYNE FRAN;7039.1;49.70;-1.60;12 -6275;FRANCE;CHERBOURG-MAUPERTUS;7039.2;49.70;-1.50;139 -6276;FRANCE;MONTDIDIER;7055.1;49.70;2.60;90 -6277;FRANCE;LAON;7061.1;49.63;3.55;83 -6278;FRANCE;METZ/FRESCATY;7090;49.08;6.13;191 -6279;FRANCE;BREST;7110;48.45;-4.42;103 -6280;FRANCE;VENDOME;7140.1;47.80;1.10;79 -6281;FRANCE;TRAPPES;7145;48.77;2.02;168 -6282;FRANCE;PARIS/PARC ST-MAUR;7149.1;48.80;2.50;50 -6283;FRANCE;PARIS/LE BOURGET;7150;48.80;2.50;53 -6284;FRANCE;PARIS-MONTSOU;7156;48.82;2.33;77 -6285;FRANCE;CHALONS;7169.1;48.90;4.40;89 -6286;FRANCE;TOUL/ROSIERES;7179;48.78;5.48;298 -6287;FRANCE;NANCY/ESSEY;7180;48.68;6.22;217 -6288;FRANCE;STRASBOURG;7190;48.55;7.63;154 -6289;FRANCE;NANTES;7222;47.17;-1.60;27 -6290;FRANCE;ANGERS;7230.1;47.50;-0.50;541 -6291;FRANCE;BOURGES;7255;47.07;2.37;166 -6292;FRANCE;DIJON;7280;47.27;5.08;227 -6293;FRANCE;CHAUMONT;7283.1;48.10;5.05;313 -6294;FRANCE;CHATEAUROUX;7354;46.85;1.72;157 -6295;FRANCE;LIMOGES;7434;45.87;1.18;402 -6296;FRANCE;CLERMONT-FERR;7460;45.78;3.17;330 -6297;FRANCE;LE PUY DE DOME;7460.1;45.80;2.90;1452 -6298;FRANCE;LE PUY;7471.1;45.00;3.90;714 -6299;FRANCE;LYON;7480;45.70;4.70;201 -6300;FRANCE;SAINT BERNHARD;7491.1;45.80;6.10;2070 -6301;FRANCE;BORDEAUX/MERI;7510;44.83;-0.70;61 -6302;FRANCE;MONT AIGOUAL;7560;44.12;3.58;1565 -6303;FRANCE;MONT VENTOUX;7586.1;44.10;5.20;1912 -6304;FRANCE;PIC DU MIDI;7621.1;42.90;0.10;2860 -6305;FRANCE;TOULOUSE/BLAG;7630;43.63;1.37;153 -6306;FRANCE;MONTPELLIER;7643;43.58;3.97;6 -6307;FRANCE;NIMES/COURBES;7645;43.87;4.40;62 -6308;FRANCE;SALON;7648;43.60;5.10;60 -6309;FRANCE;MARSEILLE/MARIGNANE FRANCE;7650;43.30;5.40;8 -6310;FRANCE;TOULON;7660;43.10;5.93;27 -6311;FRANCE;NICE;7690;43.65;7.20;10 -6312;FRANCE;PERPIGNAN;7747;42.73;2.87;48 -6313;FRANCE;AJACCIO;7761;41.92;8.80;9 -6314;GEORGIA;SAMTREDIA;37385;42.18;42.37;26 -6315;GEORGIA;TBILISI;37549;41.68;44.95;490 -6316;GERMANY;LIST/SYLT;10020;55.02;8.42;29 -6317;GERMANY;SCHLESWIG-JAG;10035;54.47;9.52;25 -6318;GERMANY;KIEL-HOLTENAU;10046;54.38;10.15;31 -6319;GERMANY;PUTBUS;10091.1;54.70;13.40;42 -6320;GERMANY;HELGOLAND;10120;54.18;7.88;53 -6321;GERMANY;HAMBURG-FUHLS;10147;53.63;10.00;15 -6322;GERMANY;EUTIN;10152.1;54.10;10.60;49 -6323;GERMANY;LUEBECK-BLANK;10156;53.82;10.70;15 -6324;GERMANY;ROSTOCK-WARNE;10170;54.18;12.08;10 -6325;GERMANY;ROSTOCK;10170.1;54.10;12.20;-999 -6326;GERMANY;TETEROW;10177;53.77;12.62;50 -6327;GERMANY;SYLT;10180.1;54.10;12.70;650 -6328;GERMANY;STRALSUND;10181.1;54.30;13.10;-999 -6329;GERMANY;GREIFSWALD;10184;54.10;13.40;6 -6330;GERMANY;EMDEN-HAFEN;10203;53.30;7.20;6 -6331;GERMANY;BREMEN;10224;53.05;8.80;5 -6332;GERMANY;LUNEBERG;10249.1;53.30;10.40;11 -6333;GERMANY;NEUSTRELITZ E G;10280.1;53.40;13.10;70 -6334;GERMANY;MUNSTER;10315.1;52.00;7.60;64 -6335;GERMANY;GUETERSLOH;10320;51.92;8.30;72 -6336;GERMANY;HANNOVER;10338;52.47;9.68;59 -6337;GERMANY;BRAUNSCHWEIG;10348;52.30;10.45;88 -6338;GERMANY;MAGDEBURG;10361;52.12;11.58;85 -6339;GERMANY;POTSDAM;10379;52.38;13.07;100 -6340;GERMANY;BERLIN-DAHLEM;10381;52.47;13.30;58 -6341;GERMANY;BERLIN-TEMPEL;10384;52.47;13.40;49 -6342;GERMANY;LINDENBERG;10393;52.22;14.12;104 -6343;GERMANY;FRANKFURT AMODER;10396.1;52.30;14.60;48 -6344;GERMANY;ESSEN;10410;51.40;6.97;161 -6345;GERMANY;BOCHUM;10413.1;51.50;7.20;-999 -6346;GERMANY;ARNSBERG;10425.1;51.40;8.10;212 -6347;GERMANY;KASSEL;10438;51.30;9.45;233 -6348;GERMANY;GOETTINGEN;10444;51.50;9.95;171 -6349;GERMANY;BROCKEN;10453;51.80;10.62;1153 -6350;GERMANY;KLAUSTHAL;10453.1;51.80;10.30;566 -6351;GERMANY;WERNIGERODE;10454;51.85;10.77;240 -6352;GERMANY;HALLE;10466.1;51.50;11.90;111 -6353;GERMANY;KOTHEN;10466.2;51.80;11.90;-999 -6354;GERMANY;LEIPZIG-SCHKE;10469;51.42;12.23;149 -6355;GERMANY;LEIPZIG;10471.1;51.40;12.40;137 -6356;GERMANY;TORGAU;10476.1;51.60;13.00;80 -6357;GERMANY;DRESDEN-KLOTZ;10488;51.13;13.75;232 -6358;GERMANY;GOERLITZ;10499;51.17;14.95;238 -6359;GERMANY;AACHEN;10501;50.78;6.10;205 -6360;GERMANY;KOLN;10513.1;51.00;7.00;45 -6361;GERMANY;KOBLENZ;10515.1;50.40;7.60;69 -6362;GERMANY;KALTENNORDHEI;10546;50.63;10.15;494 -6363;GERMANY;MEININGEN;10548;50.57;10.38;453 -6364;GERMANY;ERFURT-BINDER;10554;50.98;10.97;322 -6365;GERMANY;ARNSTADT;10555.1;50.80;11.30;898 -6366;GERMANY;JENA;10555.2;50.90;11.60;155 -6367;GERMANY;WEIMAR;10555.3;51.00;11.30;268 -6368;GERMANY;FICHTELBERG;10578;50.43;12.95;1215 -6369;GERMANY;BITBURG;10607.1;49.95;6.57;374 -6370;GERMANY;SPANGDAHLEM;10607.2;49.98;6.70;365 -6371;GERMANY;TRIER-PETRISB;10609;49.75;6.67;273 -6372;GERMANY;RAMSTEIN;10614.1;49.43;7.60;238 -6373;GERMANY;SEMBACH;10614.2;49.50;7.87;321 -6374;GERMANY;HUNSRUCK;10616.1;49.95;7.27;502 -6375;GERMANY;GEISENHEIM;10628;49.98;7.95;120 -6376;GERMANY;WIESBADEN;10633.1;50.05;8.33;140 -6377;GERMANY;FRANKFURT/;10637;50.05;8.60;113 -6378;GERMANY;DARMSTADT;10639.1;49.90;8.70;157 -6379;GERMANY;FRANKFURT A MAIN;10640.1;50.10;8.70;109 -6380;GERMANY;BAYREUTH;10677.1;49.90;11.60;320 -6381;GERMANY;SAARBRUECKEN/;10708;49.22;7.12;320 -6382;GERMANY;KARLSRUHE;10727;49.03;8.37;145 -6383;GERMANY;HEIDELBERG;10734.1;49.40;8.65;110 -6384;GERMANY;STUTTGART-;10738;48.68;9.22;391 -6385;GERMANY;STUTTGART/;10739;48.83;9.20;311 -6386;GERMANY;NUERNBERG;10763;49.50;11.05;318 -6387;GERMANY;REGENSBURG;10776;49.05;12.10;371 -6388;GERMANY;FREIBURG;10803;48.00;7.85;300 -6389;GERMANY;AUGSBURG;10838.1;48.40;10.40;490 -6390;GERMANY;MUNCHEN/RIEM;10866.1;48.10;11.70;529 -6391;GERMANY;PASSAU;10893;48.58;13.47;408 -6392;GERMANY;KONSTANZ;10929;47.68;9.18;447 -6393;GERMANY;FRIEDRICHSHAFEN;10935.1;47.70;9.50;407 -6394;GERMANY;ZUGSPITZE;10961;47.42;10.98;2962 -6395;GERMANY;HOHENPEISSENB;10962;47.80;11.02;986 -6396;GREECE;THESSALONIKI;16622;40.52;22.97;4 -6397;GREECE;THESSALONIKI/SEDES;16622.1;40.52;23.02;30 -6398;GREECE;KERKYRA;16641;39.62;19.92;4 -6399;GREECE;LARISSA;16648;39.63;22.42;74 -6400;GREECE;LIMNOS;16650;39.92;25.23;4 -6401;GREECE;ZAKYNTHOS;16682.1;37.80;20.90;8 -6402;GREECE;ARAXOS GREECE;16687.1;38.20;21.40;13 -6403;GREECE;PATRAI;16689;38.25;21.73;3 -6404;GREECE;ATHINAI/OBSER;16714;37.97;23.72;107 -6405;GREECE;ATHINAI;16716;37.90;23.73;15 -6406;GREECE;SAMOS;16723;37.70;26.92;7 -6407;GREECE;KALAMATA;16726;37.07;22.02;8 -6408;GREECE;METHONI;16734;36.83;21.70;34 -6409;GREECE;SOUDA;16746;35.48;24.12;151 -6410;GREECE;HERAKLION;16754;35.33;25.18;39 -6411;HUNGARY;MISKOLC;12772;48.10;20.78;233 -6412;HUNGARY;MOSONMAGYAROV;12815;47.88;17.28;122 -6413;HUNGARY;BUDAPEST/;12840;47.52;19.03;129 -6414;HUNGARY;BUDAPEST/LORI;12843;47.43;19.18;139 -6415;HUNGARY;DEBRECEN;12882;47.48;21.63;112 -6416;HUNGARY;PECS;12941.1;46.10;18.20;135 -6417;HUNGARY;PECS;12942;46.00;18.23;203 -6418;HUNGARY;SZEGED;12982;46.25;20.10;83 -6419;ICELAND;STYKKISHOLMUR;4013;65.08;-22.73;8 -6420;ICELAND;KEFLAVIKURFLU;4018;63.97;-22.60;54 -6421;ICELAND;REYKJAVIK;4030;64.13;-21.90;53 -6422;ICELAND;VESTMANNAEYJA;4048;63.40;-20.28;124 -6423;ICELAND;AKUREYRI;4063;65.68;-18.08;27 -6424;ICELAND;GRIMSEY;4065;66.53;-18.02;16 -6425;ICELAND;HOFN I HORNAFIRDI/HOLAR IC;4082;64.30;-15.20;2 -6426;ICELAND;TEIGARHORN;4092;64.68;-14.35;18 -6427;IRELAND;ROCHES POINT;3952;51.80;-8.25;41 -6428;IRELAND;VALENTIA OBSE;3953;51.93;-10.25;14 -6429;IRELAND;CORK AIRPORT;3955;51.85;-8.48;162 -6430;IRELAND;ROSSLARE;3957;52.25;-6.33;25 -6431;IRELAND;KILKENNY;3960;52.67;-7.27;64 -6432;IRELAND;SHANNON AIRPO;3962;52.70;-8.92;20 -6433;IRELAND;GALWAY;3964.1;53.28;-9.02;18 -6434;IRELAND;BIRR;3965;53.08;-7.88;72 -6435;IRELAND;CASEMENT AERO;3967;53.30;-6.43;93 -6436;IRELAND;DUBLIN AIRPOR;3969;53.43;-6.25;85 -6437;IRELAND;CLAREMORRIS;3970;53.72;-8.98;69 -6438;IRELAND;MULLINGAR;3971;53.53;-7.37;104 -6439;IRELAND;CLONES;3974;54.18;-7.23;89 -6440;IRELAND;BELMULLET;3976;54.23;-10.00;10 -6441;IRELAND;MALIN HEAD;3980;55.37;-7.33;25 -6442;ISRAEL;MT KENAAN;40153.1;32.98;35.50;936 -6443;ISRAEL;TEL AVIV PORT;40176.1;32.10;34.80;11 -6444;ISRAEL;SARONA;40176.2;32.10;34.80;20 -6445;ISRAEL;NATANYA;40176.3;32.30;34.90;33 -6446;ISRAEL;LOD AIRPORT;40180;32.00;34.90;49 -6447;ISRAEL;JERUSALEM;40184;31.78;35.22;757 -6448;ISRAEL;DEIR ALLA;40184.1;32.22;35.62;-224 -6449;ISRAEL;BEER-SHEVA;40191;31.23;34.78;280 -6450;ISRAEL;EILAT;40199;29.55;34.95;13 -6451;ITALY;TRENTO;16022.1;46.10;11.10;312 -6452;ITALY;AVIANO;16036.1;46.00;12.60;128 -6453;ITALY;TARVISIO;16040;46.50;13.58;778 -6454;ITALY;UDINE/CAMPOFORMIDO;16045;46.00;13.10;92 -6455;ITALY;TORINO/CASELL;16059;45.22;7.65;287 -6456;ITALY;TORINO/BRIC D;16061;45.03;7.73;710 -6457;ITALY;MILANO/MALPEN;16066;45.62;8.73;211 -6458;ITALY;RIVA;16072.1;46.10;9.20;-999 -6459;ITALY;MILANO/LINATE;16080;45.43;9.28;103 -6460;ITALY;PARMA AERO;16084.1;44.80;10.30;57 -6461;ITALY;BRESCIA/GHEDI;16088;45.42;10.28;97 -6462;ITALY;VERONA/VILLAF;16090;45.38;10.87;68 -6463;ITALY;PADOVA;16095;45.40;11.85;14 -6464;ITALY;VENEZIA/TESSE;16105;45.50;12.33;6 -6465;ITALY;RONCHI DEI LE;16108;45.82;13.48;12 -6466;ITALY;TRIESTE;16110;45.65;13.75;20 -6467;ITALY;GOVONE;16116.1;44.80;8.10;315 -6468;ITALY;PASSO DEI GIOVI;16119.1;44.60;8.90;475 -6469;ITALY;GENOVA/SESTRI;16120;44.42;8.85;3 -6470;ITALY;ISOLA DI PALM;16129;44.03;9.83;191 -6471;ITALY;BOLOGNA/BORGO;16140;44.53;11.30;49 -6472;ITALY;RIFREDO MUGELLO;16142.1;44.10;11.40;887 -6473;ITALY;PUNTA MARINA;16146;44.45;12.30;6 -6474;ITALY;RIMINI;16149;44.03;12.62;13 -6475;ITALY;SASSO FELTRIO;16149.1;43.90;12.50;468 -6476;ITALY;PISA/S. GIUST;16158;43.68;10.38;6 -6477;ITALY;SIENA POGGIO AERO;16164.1;43.30;11.30;364 -6478;ITALY;MONTE ARGENTA;16168;42.38;11.17;631 -6479;ITALY;FIRENZE/PERET;16170;43.80;11.20;38 -6480;ITALY;FLORENCE;16170.1;43.80;11.30;75 -6481;ITALY;AREZZO;16172;43.47;11.85;249 -6482;ITALY;FRONTONE;16179;43.52;12.73;574 -6483;ITALY;FALCONARA;16191;43.62;13.37;10 -6484;ITALY;MACERATA;16191.1;43.30;13.40;342 -6485;ITALY;ANCONA;16191.2;43.60;13.50;104 -6486;ITALY;ISOLA GORGONA;16197.1;42.40;9.90;254 -6487;ITALY;ISOLA DI PIANOSA;16197.2;42.60;10.10;17 -6488;ITALY;GROSSETO;16206;42.75;11.07;7 -6489;ITALY;VIGNA DI VALL;16224;42.08;12.22;266 -6490;ITALY;PESCARA;16230;42.43;14.20;11 -6491;ITALY;TERMOLI;16232;42.00;15.00;44 -6492;ITALY;GUIDONIA;16234;42.00;12.73;89 -6493;ITALY;ROMA/URBE;16235;41.95;12.50;24 -6494;ITALY;ROMA/CIAMPINO;16239;41.78;12.58;105 -6495;ITALY;ROME;16239.1;41.80;12.60;107 -6496;ITALY;VIESTE AERO;16242.1;41.90;12.20;270 -6497;ITALY;LATINA;16243;41.55;12.90;26 -6498;ITALY;FROSINONE;16244;41.63;13.30;185 -6499;ITALY;PRATICA DI MA;16245;41.65;12.45;21 -6500;ITALY;CAMPOBASSO;16252;41.57;14.65;807 -6501;ITALY;MONTE S. ANGE;16258;41.70;15.95;844 -6502;ITALY;AMENDOLA;16261;41.53;15.72;60 -6503;ITALY;FOGGIA;16261.1;41.50;15.60;101 -6504;ITALY;PONTECAGNANO;16263.1;40.60;14.90;30 -6505;ITALY;CANDELA AERO;16263.2;41.10;15.50;521 -6506;ITALY;BARI/PALESE M;16270;41.13;16.78;49 -6507;ITALY;PONZA;16280;40.92;12.95;185 -6508;ITALY;TORRE OLEVOLA AERO;16280.1;41.20;13.10;4 -6509;ITALY;NAPOLI/CAPODI;16289;40.85;14.30;72 -6510;ITALY;CAPRI;16294.1;40.60;14.30;269 -6511;ITALY;POTENZA;16300;40.63;15.80;843 -6512;ITALY;CAPO PALINURO;16310;40.02;15.28;185 -6513;ITALY;GIOIA DEL COL;16312;40.77;16.93;350 -6514;ITALY;LATRONICO;16316;40.08;16.02;896 -6515;ITALY;BRINDISI;16320;40.65;17.95;10 -6516;ITALY;TARANTO ITALY;16324.1;40.50;17.30;41 -6517;ITALY;MARINA DI GIN;16325;40.43;16.88;12 -6518;ITALY;LECCE;16332;40.23;18.15;61 -6519;ITALY;PALASCIA AERO;16332.1;40.10;18.50;86 -6520;ITALY;BONIFATI;16337;39.58;15.88;485 -6521;ITALY;CALOPEZZATI;16344.1;39.60;16.80;215 -6522;ITALY;CROTONE;16350;39.00;17.07;161 -6523;ITALY;S. MARIA DI L;16360;39.82;18.35;112 -6524;ITALY;VIBOVALENTIA AERO;16362.1;38.70;16.10;562 -6525;ITALY;CARAFFA DI CATANZARO;16362.2;38.90;16.50;363 -6526;ITALY;USTICA;16400;38.70;13.18;251 -6527;ITALY;PALERMO BOCCA;16410;38.10;13.30;117 -6528;ITALY;TERMINI;16410.1;38.00;13.70;75 -6529;ITALY;PALERMO;16410.2;38.10;13.40;229 -6530;ITALY;ISOLA STROMBOLI;16415.1;38.80;15.20;5 -6531;ITALY;MESSINA;16420;38.20;15.55;51 -6532;ITALY;TRAPANI/BIRGI;16429;37.92;12.50;14 -6533;ITALY;SCIACCA AERO;16434.1;37.50;13.10;129 -6534;ITALY;ENNA;16450;37.57;14.28;965 -6535;ITALY;CATANIA/SIGON;16459;37.40;14.92;22 -6536;ITALY;CATANIA/FONTA;16460;37.47;15.05;17 -6537;ITALY;PANTELLERIA;16470;36.82;11.97;170 -6538;ITALY;COZZO SPADARO;16480;36.68;15.13;51 -6539;ITALY;LAMPEDUSA;16490;35.50;12.60;20 -6540;ITALY;GUARDIAVECCHI;16506;41.22;9.40;159 -6541;ITALY;ALGHERO;16520;40.63;8.28;40 -6542;ITALY;SASSARI;16520.1;40.70;8.60;224 -6543;ITALY;ISOLA ASINARA;16520.2;41.10;8.30;118 -6544;ITALY;OLBIA/COSTA S;16531;40.90;9.52;13 -6545;ITALY;TEMPIO PAUSANIA AERO;16531.1;40.90;9.10;569 -6546;ITALY;FONNI;16538;40.12;9.25;1029 -6547;ITALY;MACOMER;16538.1;40.30;8.80;585 -6548;ITALY;CAPO FRASCA;16539;39.75;8.47;95 -6549;ITALY;CAGLIARI/ELMA;16560;39.25;9.07;5 -6550;ITALY;CAPO CARBONAR;16564;39.10;9.52;118 -6551;JORDAN;H-4 IRWAISHE;40250;32.50;38.20;688 -6552;JORDAN;IRBID;40255;32.55;35.85;619 -6553;JORDAN;AMMAN AIRPORT;40270;31.98;35.98;768 -6554;JORDAN;JERUSALEM AIR;40290;31.87;35.22;759 -6555;JORDAN;HEBRON;40290.1;31.50;35.10;884 -6556;JORDAN;MAAN;40310;30.17;35.78;1070 -6557;JORDAN;AQABA AIRPORT;40340;29.63;35.02;51 -6558;KAZAKHSTAN;FURMANOVO;34398;49.67;49.48;10 -6559;LATVIA;IDWEN;26238.1;57.90;25.20;60 -6560;LATVIA;LIEPAJA;26406;56.48;21.02;7 -6561;LATVIA;RIGA;26422;56.97;24.05;7 -6562;LATVIA;MITAU;26425.1;56.70;23.70;10 -6563;LEBANON;BEYROUTH;40100;33.82;35.48;19 -6564;LEBANON;KSARA OBSY;40101.1;33.80;35.90;918 -6565;LEBANON;RAYACK;40102;33.87;36.00;920 -6566;LEBANON;TRIPOLI;40103;34.45;35.80;5 -6567;LITHUANIA;KAUNAS;26629;54.88;23.83;77 -6568;LITHUANIA;VILNIUS;26730;54.63;25.10;156 -6569;LUXEMBOURG;CLERVAUX;6585;50.05;6.02;454 -6570;LUXEMBOURG;LUEXMBOURG/TOWN;6589.1;49.62;6.12;330 -6571;LUXEMBOURG;LUXEMBOURG/;6590;49.62;6.22;379 -6572;LUXEMBOURG;ECHTERNACH;6597.1;49.80;6.45;167 -6573;MALTA;LUQA;16597;35.85;14.48;91 -6574;MOLDOVA;KISINEV;33815;47.02;28.98;173 -6575;MONTENEGRO;PLEVLJA;13363;43.35;19.35;788 -6576;MONTENEGRO;TIVAT;13457;42.40;18.73;5 -6577;MONTENEGRO;PODGORICA/GOL;13462;42.37;19.25;33 -6578;MONTENEGRO;ULCINJ;13562;41.92;19.22;29 -6579;NETHERLANDS;DE BILT;6260;52.10;5.18;15 -6580;NETHERLANDS;MAASTRICHT AP;6380;50.92;5.78;116 -6581;NORWAY;JAN MAYEN;1001;70.93;-8.67;9 -6582;NORWAY;ISFJORD RADIO;1005.1;78.07;13.63;5 -6583;NORWAY;SVALBARD LUFT;1008;78.25;15.47;29 -6584;NORWAY;ANDENES;1010.1;69.30;16.20;-999 -6585;NORWAY;TROMO/SKATTO;1025;69.50;19.00;11 -6586;NORWAY;BJORNOYA;1028;74.52;19.02;16 -6587;NORWAY;ALTA LUFTHAVN;1049;69.98;23.37;3 -6588;NORWAY;HAMMERFEST;1052.1;70.70;23.70;-999 -6589;NORWAY;INGOY;1055.1;71.10;24.20;7 -6590;NORWAY;KARASJOK;1065;69.47;25.50;133 -6591;NORWAY;GJESVAR;1068.1;71.10;25.40;6 -6592;NORWAY;MEHAVEN-SLETNES;1074.1;71.00;27.80;10 -6593;NORWAY;MAKKAUR FYR;1092;70.70;30.08;9 -6594;NORWAY;VARDO;1098;70.37;31.10;15 -6595;NORWAY;BRONNOYSUND;1112.1;65.60;12.30;-999 -6596;NORWAY;BODO VI;1152;67.27;14.37;13 -6597;NORWAY;ONA II;1212;62.87;6.53;15 -6598;NORWAY;FOKSTUA II;1238;62.12;9.28;974 -6599;NORWAY;DOMBAS;1238.1;62.00;9.10;638 -6600;NORWAY;ORLAND III;1241;63.70;9.60;7 -6601;NORWAY;TRONDHEIM/TYHOLT;1258.1;63.40;10.50;115 -6602;NORWAY;ROROS;1288;62.57;11.38;630 -6603;NORWAY;HELLISOY FYR;1306;60.75;4.72;23 -6604;NORWAY;BERGEN/FREDRIKSBERG;1317;60.40;5.30;44 -6605;NORWAY;HAUGASTOL;1351.1;60.30;7.50;995 -6606;NORWAY;FANARAKEN;1357.1;61.50;7.00;2062 -6607;NORWAY;OSLO/GARDERMO;1384;60.20;11.08;204 -6608;NORWAY;UTSIRA FYR;1403;59.30;4.88;56 -6609;NORWAY;STAVANGER/SOL;1415;58.88;5.63;9 -6610;NORWAY;GAUSTATOPPEN;1450.1;59.90;8.70;1828 -6611;NORWAY;TORUNGEN FYR;1465;58.40;8.80;15 -6612;NORWAY;FERDER FYR;1482;59.03;10.53;8 -6613;NORWAY;OSLO/BLINDERN;1489.1;59.90;10.70;96 -6614;POLAND;KOLOBRZEG;12100;54.18;15.58;5 -6615;POLAND;KOSZALIN;12105;54.20;16.15;34 -6616;POLAND;USTKA;12115;54.58;16.87;8 -6617;POLAND;LEBA;12120;54.75;17.53;2 -6618;POLAND;LEBORK;12125;54.55;17.75;22 -6619;POLAND;HEL;12135;54.60;18.82;3 -6620;POLAND;GDYNIA;12145.1;54.50;18.60;5 -6621;POLAND;GDANSK-WRZESZCZ;12150.1;54.40;18.60;12 -6622;POLAND;ELBLAG;12160;54.17;19.43;43 -6623;POLAND;KETRZYN;12185;54.07;21.37;110 -6624;POLAND;SUWALKI;12195;54.13;22.95;186 -6625;POLAND;SWINOUJSCIE;12200;53.92;14.23;5 -6626;POLAND;SZCZECIN;12205;53.40;14.62;3 -6627;POLAND;RESKO;12210;53.77;15.42;56 -6628;POLAND;SZCZECINEK;12215;53.72;16.68;144 -6629;POLAND;PILA;12230;53.13;16.75;73 -6630;POLAND;CHOJNICE;12235;53.70;17.55;177 -6631;POLAND;TORUN;12250;53.03;18.58;72 -6632;POLAND;MLAWA;12270;53.10;20.35;149 -6633;POLAND;OLSZTYN;12272;53.77;20.42;135 -6634;POLAND;MIKOLAJKI;12280;53.78;21.58;131 -6635;POLAND;ARYS;12280.1;53.80;22.10;450 -6636;POLAND;OSTROLEKA;12285;53.08;21.57;96 -6637;POLAND;BIALYSTOK;12295;53.10;23.17;151 -6638;POLAND;GORZOW WLKP;12300;52.75;15.28;73 -6639;POLAND;SLUBICE;12310;52.35;14.60;24 -6640;POLAND;POZNAN;12330;52.42;16.83;92 -6641;POLAND;KOLO;12345;52.20;18.67;117 -6642;POLAND;PLOCK;12360;52.58;19.73;109 -6643;POLAND;LEGIONOWO;12374;52.40;20.97;96 -6644;POLAND;WARSZAWA-OKEC;12375;52.17;20.97;107 -6645;POLAND;SIEDLCE;12385;52.18;22.27;149 -6646;POLAND;TERESPOL;12399;52.07;23.62;137 -6647;POLAND;BIALA PODLASKA;12399.1;52.00;23.10;147 -6648;POLAND;ZIELONA GORA;12400;51.93;15.53;192 -6649;POLAND;LEGNICA BARTO;12415;51.20;16.20;124 -6650;POLAND;LESZNO-STRZYZ;12418;51.83;16.53;92 -6651;POLAND;WROCLAW II;12424;51.10;16.88;121 -6652;POLAND;LODZ;12465;51.73;19.40;188 -6653;POLAND;SULEJOW;12469;51.35;19.87;189 -6654;POLAND;LUBLIN RADAWI;12495;51.22;22.40;240 -6655;POLAND;WLODAWA;12497;51.55;23.53;179 -6656;POLAND;JELENIA GORA;12500;50.90;15.80;344 -6657;POLAND;SNIEZKA;12510;50.73;15.73;1613 -6658;POLAND;KLODZKO;12520;50.43;16.62;357 -6659;POLAND;NYSA;12520.1;50.30;17.30;581 -6660;POLAND;OPOLE;12530;50.67;17.97;178 -6661;POLAND;CZESTOCHOWA;12550;50.82;19.10;295 -6662;POLAND;KATOWICE;12560;50.23;19.03;284 -6663;POLAND;KRAKOW;12566;50.08;19.80;237 -6664;POLAND;KIELCE;12570;50.82;20.70;261 -6665;POLAND;TARNOW;12575;50.03;20.98;209 -6666;POLAND;RZESZOW-JASIO;12580;50.10;22.05;202 -6667;POLAND;SANDOMIERZ;12585;50.70;21.72;218 -6668;POLAND;ZAMOSC;12595;50.70;23.25;213 -6669;POLAND;BIELSKO-BIALA;12600;49.80;19.00;399 -6670;POLAND;ZAKOPANE;12625;49.30;19.95;860 -6671;POLAND;NOWY SACZ;12660;49.62;20.70;295 -6672;POLAND;KRYNICA;12660.1;49.40;21.00;586 -6673;POLAND;LESKO;12690;49.47;22.33;422 -6674;POLAND;PRZEMYSL;12695;49.80;22.77;280 -6675;PORTUGAL;CORVO;8502;39.67;-31.12;26 -6676;PORTUGAL;HORTA;8506;38.52;-28.63;62 -6677;PORTUGAL;LAJES;8509;38.77;-27.10;54 -6678;PORTUGAL;PONTA DELGADA;8512.1;37.70;-25.70;36 -6679;PORTUGAL;PONTA DELGADA;8513;37.75;-25.67;36 -6680;PORTUGAL;SANTA MARIA;8515;36.97;-25.17;100 -6681;PORTUGAL;CABO CARVOEIR;8530;39.35;-9.40;34 -6682;PORTUGAL;LISBOA/GEOF;8535;38.72;-9.15;95 -6683;PORTUGAL;SAGRES;8538;37.00;-8.95;25 -6684;PORTUGAL;VIANA DO CAST;8543;41.70;-8.80;18 -6685;PORTUGAL;PORTO/PEDRAS;8545;41.23;-8.68;77 -6686;PORTUGAL;PORTO/SERRA D;8546;41.13;-8.60;100 -6687;PORTUGAL;COIMBRA;8549;40.20;-8.42;140 -6688;PORTUGAL;FARO/AEROPORT;8554;37.02;-7.97;8 -6689;PORTUGAL;EVORA;8557;38.57;-7.90;321 -6690;PORTUGAL;BEJA;8562;38.02;-7.87;247 -6691;PORTUGAL;VILA REAL;8567;41.27;-7.72;562 -6692;PORTUGAL;PENHAS DOURAD;8568;40.42;-7.55;1388 -6693;PORTUGAL;GUARDA;8568.1;40.50;-7.30;85 -6694;PORTUGAL;PORTALEGRE;8571;39.28;-7.42;590 -6695;PORTUGAL;CAMPO MAIOR;8571.1;39.00;-7.00;288 -6696;PORTUGAL;BRAGANCA;8575;41.80;-6.73;692 -6697;ROMANIA;BAIA MARE;15004.1;47.60;23.60;227 -6698;ROMANIA;RARAU;15052;47.45;25.57;1574 -6699;ROMANIA;ORADEA;15080;47.05;21.93;140 -6700;ROMANIA;BISTRITA;15085;47.13;24.50;367 -6701;ROMANIA;IASI;15090;47.17;27.63;104 -6702;ROMANIA;ROMAN;15111;46.92;26.83;217 -6703;ROMANIA;CLUJ-NAPOCA;15120;46.78;23.57;413 -6704;ROMANIA;BAISOARA;15120.1;46.50;23.40;1384 -6705;ROMANIA;STANISLAV;15235.1;45.90;24.80;205 -6706;ROMANIA;TIMISOARA;15247;45.77;21.25;88 -6707;ROMANIA;SIBIU;15260;45.80;24.15;444 -6708;ROMANIA;VF. OMU;15280;45.45;25.45;2509 -6709;ROMANIA;PALTINIS;15296.1;45.70;23.50;1454 -6710;ROMANIA;SULINA;15360;45.15;29.67;9 -6711;ROMANIA;BUCURESTI/FILARET;15420;44.40;26.10;82 -6712;ROMANIA;CONSTANTA;15480;44.22;28.63;14 -6713;RUSSIAN FEDERATION;MURMANSK;22113;68.97;33.05;51 -6714;RUSSIAN FEDERATION;KANIN NOS;22165;68.65;43.30;49 -6715;RUSSIAN FEDERATION;KANDALAKSA;22217;67.15;32.35;25 -6716;RUSSIAN FEDERATION;GRIDINO;22422;65.90;34.77;12 -6717;RUSSIAN FEDERATION;KEM-PORT;22522;64.98;34.80;8 -6718;RUSSIAN FEDERATION;ARHANGELSK;22550;64.50;40.73;8 -6719;RUSSIAN FEDERATION;KOJNAS;22583;64.75;47.65;64 -6720;RUSSIAN FEDERATION;REBOLY;22602;63.83;30.82;182 -6721;RUSSIAN FEDERATION;ONEGA;22641;63.90;38.12;13 -6722;RUSSIAN FEDERATION;SORTAVALA;22802;61.72;30.72;19 -6723;RUSSIAN FEDERATION;PETROZAVODSK;22820;61.82;34.27;110 -6724;RUSSIAN FEDERATION;VYTEGRA;22837;61.02;36.45;56 -6725;RUSSIAN FEDERATION;NJANDOMA;22854;61.67;40.18;233 -6726;RUSSIAN FEDERATION;KOTLAS;22887;61.23;46.72;56 -6727;RUSSIAN FEDERATION;ST.PETERBURG;26063;59.97;30.30;6 -6728;RUSSIAN FEDERATION;KRONSTADT;26063.1;60.00;29.80;20 -6729;RUSSIAN FEDERATION;NOVGOROD;26179;58.52;31.25;24 -6730;RUSSIAN FEDERATION;PSKOV;26258;57.82;28.42;45 -6731;RUSSIAN FEDERATION;VEREBE;26285.1;58.68;32.70;116 -6732;RUSSIAN FEDERATION;VALDAJ;26289;57.97;33.23;219 -6733;RUSSIAN FEDERATION;BOLOGOE;26298;57.90;34.05;188 -6734;RUSSIAN FEDERATION;VELIKIE LUKI;26477;56.35;30.62;106 -6735;RUSSIAN FEDERATION;SOVETSK;26600.1;55.10;21.80;37 -6736;RUSSIAN FEDERATION;KALININGRAD;26702;54.72;20.55;21 -6737;RUSSIAN FEDERATION;SMOLENSK;26781;54.75;32.07;239 -6738;RUSSIAN FEDERATION;BRJANSK;26898;53.25;34.32;216 -6739;RUSSIAN FEDERATION;VOLOGDA;27037;59.32;39.92;130 -6740;RUSSIAN FEDERATION;TOTMA;27051;59.88;42.75;134 -6741;RUSSIAN FEDERATION;KIROV;27196;58.52;49.32;146 -6742;RUSSIAN FEDERATION;KOSTROMA;27333;57.73;40.78;126 -6743;RUSSIAN FEDERATION;BALACHNA;27453.1;56.50;43.60;60 -6744;RUSSIAN FEDERATION;GORKIJ;27553.1;56.22;43.82;161 -6745;RUSSIAN FEDERATION;KAZAN;27595;55.60;49.28;116 -6746;RUSSIAN FEDERATION;MOSKVA;27612;55.83;37.62;156 -6747;RUSSIAN FEDERATION;ELATMA;27648;54.95;41.77;136 -6748;RUSSIAN FEDERATION;LUKOJANOV;27665;55.03;44.50;219 -6749;RUSSIAN FEDERATION;PAVELEC;27823;53.78;39.25;209 -6750;RUSSIAN FEDERATION;TAMBOV;27947;52.80;41.33;128 -6751;RUSSIAN FEDERATION;KURSK;34009;51.77;36.17;247 -6752;RUSSIAN FEDERATION;VORONEZ;34123;51.70;39.22;149 -6753;RUSSIAN FEDERATION;KAMENNAJA STE;34139;51.05;40.70;194 -6754;RUSSIAN FEDERATION;OKTJABRSKIJ;34163;51.63;45.45;201 -6755;RUSSIAN FEDERATION;SARATOV;34172;51.57;46.03;156 -6756;RUSSIAN FEDERATION;BOGUCAR;34336;49.93;40.57;84 -6757;RUSSIAN FEDERATION;KAZANSKAJA;34344;49.80;41.15;72 -6758;RUSSIAN FEDERATION;ALEKSANDROV-G;34391;50.15;48.55;25 -6759;RUSSIAN FEDERATION;VOLGOGRAD;34560;48.78;44.37;134 -6760;RUSSIAN FEDERATION;SSAREPTA;34560.1;48.50;44.60;50 -6761;RUSSIAN FEDERATION;VOLGODONSK;34646.1;47.73;42.25;64 -6762;RUSSIAN FEDERATION;ROSTOV-NA-DON;34731;47.27;39.82;75 -6763;RUSSIAN FEDERATION;CELINA;34747;46.55;41.05;112 -6764;RUSSIAN FEDERATION;REMONTNOE;34759;46.57;43.67;106 -6765;RUSSIAN FEDERATION;PRIMORSKO-AHT;34824;46.03;38.15;5 -6766;RUSSIAN FEDERATION;ELISTA;34861;46.37;44.33;155 -6767;RUSSIAN FEDERATION;JASKUL;34866;46.18;45.35;-7 -6768;RUSSIAN FEDERATION;ASTRAHAN;34880;46.28;48.05;-23 -6769;RUSSIAN FEDERATION;KRASNODAR;34929;45.03;39.15;34 -6770;RUSSIAN FEDERATION;STAVROPOL;34949;45.12;42.08;452 -6771;RUSSIAN FEDERATION;NOVOROSSISK;37004.1;44.70;37.80;37 -6772;RUSSIAN FEDERATION;TUAPSE;37018;44.10;39.07;41 -6773;RUSSIAN FEDERATION;ARMAVIR;37031;44.98;41.12;159 -6774;RUSSIAN FEDERATION;PJATIGORSK;37050;44.05;43.03;538 -6775;RUSSIAN FEDERATION;MINERALNYE V;37054;44.23;43.07;316 -6776;RUSSIAN FEDERATION;SOTCHI;37099;43.58;39.77;34 -6777;RUSSIAN FEDERATION;GROZNYJ;37235;43.35;45.68;163 -6778;RUSSIAN FEDERATION;MAHACKALA;37472;42.83;47.55;32 -6779;SERBIA;PALIC;13067;46.10;19.77;105 -6780;SERBIA;SOMBOR;13160;45.77;19.15;89 -6781;SERBIA;KIKINDA;13174;45.85;20.47;82 -6782;SERBIA;VRSAC;13183;45.15;21.32;85 -6783;SERBIA;SREMSKA MITRO;13266;45.10;19.55;83 -6784;SERBIA;VALJEVO;13269;44.32;19.92;177 -6785;SERBIA;BEOGRAD/SURCI;13272;44.82;20.28;99 -6786;SERBIA;BEOGRAD;13274;44.80;20.47;132 -6787;SERBIA;SMEDEREVSKA P;13279;44.37;20.95;122 -6788;SERBIA;VELIKO GRADIS;13285;44.75;21.52;84 -6789;SERBIA;CRNI VRH;13289;44.12;21.95;1039 -6790;SERBIA;NEGOTIN;13295;44.23;22.55;44 -6791;SERBIA;ZLATIBOR;13367;43.73;19.72;1029 -6792;SERBIA;KRALJEVO;13376;43.70;20.70;217 -6793;SERBIA;CUPRIJA;13384;43.93;21.38;125 -6794;SERBIA;NIS;13388;43.33;21.90;202 -6795;SERBIA;DIMITROVGRAD;13397;43.02;22.75;450 -6796;SERBIA;PEC;13473;42.67;20.30;499 -6797;SERBIA;PRIZREN;13477;42.22;20.73;403 -6798;SLOVAKIA;BRATISLAVA IV;11816;48.20;17.20;142 -6799;SLOVAKIA;SLIAC;11903;48.65;19.15;315 -6800;SLOVAKIA;CHOPOK;11916;48.98;19.60;2012 -6801;SLOVAKIA;ARVAVARALJA;11918.1;49.30;19.30;501 -6802;SLOVAKIA;LOMNICKY STIT;11930;49.20;20.22;2635 -6803;SLOVAKIA;POPRAD/TATRY;11934;49.07;20.25;695 -6804;SLOVAKIA;KOSICE;11968;48.67;21.22;231 -6805;SLOVAKIA;KASPROWY WIER;12650;49.23;19.98;1989 -6806;SLOVENIA;LJUBLJANA/BRN;14014;46.22;14.48;384 -6807;SLOVENIA;LJUBLJANA/BEZ;14015;46.07;14.52;298 -6808;SLOVENIA;MARIBOR/SLIVN;14026;46.48;15.68;265 -6809;SLOVENIA;PORTOROZ;14105.1;45.52;13.57;95 -6810;SPAIN;LA CORUNA;8001;43.37;-8.42;67 -6811;SPAIN;OVIEDO;8015;43.35;-5.87;339 -6812;SPAIN;SANTANDER;8023;43.47;-3.82;65 -6813;SPAIN;BILBAO;8025;43.30;-2.80;16 -6814;SPAIN;SAN SEBASTIAN;8027;43.30;-2.05;259 -6815;SPAIN;SANTIAGO/COMPOSTELA SPAIN;8042;42.80;-8.10;-999 -6816;SPAIN;PONFERRADA;8053;42.53;-6.58;555 -6817;SPAIN;BURGOS/VILLAF;8075;42.37;-3.63;891 -6818;SPAIN;VALLADOLID;8141;41.65;-4.77;739 -6819;SPAIN;ZARAGOZA/AEROPUERTO;8160;41.67;-1.02;258 -6820;SPAIN;ZARAGOZA;8160.1;41.63;-0.90;221 -6821;SPAIN;SORIA;8171.1;41.70;1.20;1068 -6822;SPAIN;BARCELONA;8181.1;41.40;2.20;95 -6823;SPAIN;MONTSENY;8184.1;41.80;2.50;1708 -6824;SPAIN;SALAMANCA/MAT;8202;40.95;-5.50;795 -6825;SPAIN;NAVACERRADA;8215;40.78;-4.02;1888 -6826;SPAIN;MADRID/RETIRO;8220.1;40.40;-3.70;657 -6827;SPAIN;MADRID/BARAJA;8221;40.45;-3.55;582 -6828;SPAIN;TORREJON;8227.1;40.48;-3.45;608 -6829;SPAIN;VALENCIA;8285;39.48;-0.38;11 -6830;SPAIN;CASTELLON-ALMAZORA;8286;39.98;-0.02;20 -6831;SPAIN;PALMA DE MALL;8306;39.55;2.73;8 -6832;SPAIN;POLLENSA/BALEARIC IS.;8306.1;39.90;3.10;2 -6833;SPAIN;MAHON/SAN LUIS;8314;39.90;4.30;59 -6834;SPAIN;BADAJOZ/TALAV;8330;38.88;-6.82;192 -6835;SPAIN;SINTRA/GRANJA;8330.1;38.80;-9.30;133 -6836;SPAIN;ALICANTE CIUDAD-JARDIN;8359;38.37;-0.50;82 -6837;SPAIN;ALBACETE;8373.1;39.00;-1.80;43 -6838;SPAIN;SEVILLA/TABLADA;8391.1;37.40;-6.00;13 -6839;SPAIN;MORON DE LA F;8397;37.15;-5.62;88 -6840;SPAIN;GRANADA/AEROP;8419;37.18;-3.78;559 -6841;SPAIN;ROTA;8449;36.65;-6.35;26 -6842;SPAIN;SAN FERNANDO;8449.1;36.30;-6.10;28 -6843;SPAIN;ALMERIA/AEROP;8487;36.85;-2.38;21 -6844;SPAIN;MELILLA;60338;35.28;-2.95;55 -6845;SWEDEN;KARESUANDO;2080;68.45;22.50;327 -6846;SWEDEN;STENSELE;2128.1;65.10;17.20;327 -6847;SWEDEN;JOKKMOKK;2142;66.63;19.65;264 -6848;SWEDEN;LULEA FLYGPLATS SWEDEN;2183.1;65.60;22.10;17 -6849;SWEDEN;HAPARANDA;2196;65.83;24.15;6 -6850;SWEDEN;OSTERSUND/FRO;2226;63.18;14.50;370 -6851;SWEDEN;HARNOSAND;2361.1;62.60;18.00;8 -6852;SWEDEN;KARLSTAD FLYG;2418;59.37;13.47;55 -6853;SWEDEN;OREBO;2439.1;59.30;15.20;33 -6854;SWEDEN;KREUZBURG;2456.1;60.00;18.20;621 -6855;SWEDEN;UPPSALA;2458;59.88;17.60;41 -6856;SWEDEN;STOCKHOLM;2464;59.33;18.05;52 -6857;SWEDEN;GOTEBORG/SAVE;2512;57.78;11.88;53 -6858;SWEDEN;TORSLANDA;2512.1;57.72;11.78;3 -6859;SWEDEN;JONKOPING FLY;2550;57.77;14.08;232 -6860;SWEDEN;VASTERVIK;2576.1;57.80;16.60;9 -6861;SWEDEN;VISBY FLYGPLA;2590;57.67;18.35;47 -6862;SWEDEN;HALMSTAD;2620.1;56.70;12.90;64 -6863;SWEDEN;LUND;2627.1;55.70;13.20;73 -6864;SWITZERLAND;PAYERNE;6610;46.82;6.95;491 -6865;SWITZERLAND;BERN;6630.1;47.00;7.40;-999 -6866;SWITZERLAND;BASEL/BINNINGEN;6642.1;47.60;7.60;318 -6867;SWITZERLAND;ZURICH;6660;47.38;8.57;569 -6868;SWITZERLAND;SAENTIS;6680;47.25;9.35;2500 -6869;SWITZERLAND;GENEVE-COINTR;6700;46.25;6.13;416 -6870;SWITZERLAND;GENEVE/TOWN/VILLE/;6700.1;46.20;6.20;405 -6871;SWITZERLAND;ST. BERNARD;6719.1;45.70;6.90;2460 -6872;SWITZERLAND;JUNGFRAUJOCH;6730;46.55;7.98;3576 -6873;SWITZERLAND;ST. GOTTHARD;6753.1;46.40;8.60;2095 -6874;SWITZERLAND;LUGANO;6770;46.00;8.97;276 -6875;SYRIA;KAMISHLI;40001;37.10;41.20;455 -6876;SYRIA;ALEPPO;40007;36.18;37.22;393 -6877;SYRIA;LATTAKIA;40022;35.53;35.77;7 -6878;SYRIA;HAMA;40030;35.13;36.72;309 -6879;SYRIA;DEIR EZZOR;40045;35.32;40.15;212 -6880;SYRIA;PALMYRA;40061;34.55;38.30;404 -6881;SYRIA;DAMASCUS INT.;40080;33.42;36.52;605 -6882;MACEDONIA;KRIVA PALANKA;13493;42.20;22.33;696 -6883;MACEDONIA;OHRID;13578;41.12;20.80;761 -6884;MACEDONIA;BITOLA;13583;41.05;21.37;589 -6885;MACEDONIA;SKOPJE-PETROV;13586;41.97;21.65;239 -6886;MACEDONIA;DEMIR KAPIJA;13592;41.42;22.25;126 -6887;TURKEY;ZONGULDAK;17022;41.45;31.80;136 -6888;TURKEY;BAKLABOSTAN;17022.1;41.20;32.30;860 -6889;TURKEY;BUYUKDUZ;17022.2;41.20;32.30;1560 -6890;TURKEY;KARABUK;17022.3;41.20;32.60;400 -6891;TURKEY;EREGLI;17022.4;41.30;31.40;2 -6892;TURKEY;BARTIN;17022.5;41.60;32.30;30 -6893;TURKEY;INEBOLU;17024;41.98;33.78;64 -6894;TURKEY;BOZKURT;17024.1;41.87;34.00;167 -6895;TURKEY;SINOP;17026;42.03;35.17;32 -6896;TURKEY;BAFRA;17029.1;41.60;35.90;20 -6897;TURKEY;SAMSUN;17030;41.28;36.33;4 -6898;TURKEY;UNYE;17030.1;41.10;37.30;20 -6899;TURKEY;GIRESUN;17034;40.92;38.40;38 -6900;TURKEY;SEBINKARAHISAR;17034.1;40.30;38.40;1300 -6901;TURKEY;MESUDIYE;17034.2;40.50;37.80;1050 -6902;TURKEY;ORDU;17034.3;41.00;37.90;4 -6903;TURKEY;TRABZON;17038;41.00;39.72;30 -6904;TURKEY;AKCAABAT;17038.1;41.00;39.60;10 -6905;TURKEY;ISPIR;17040.1;40.50;41.00;1200 -6906;TURKEY;RIZE;17040.2;41.00;40.50;4 -6907;TURKEY;PAZAR RIZE;17040.3;41.20;40.90;50 -6908;TURKEY;HOPA;17042.1;41.40;41.40;33 -6909;TURKEY;ARTVIN;17045;41.17;41.82;30 -6910;TURKEY;OLTU;17045.1;40.60;42.00;1275 -6911;TURKEY;POSOF;17045.2;41.50;42.70;1550 -6912;TURKEY;EDIRNE;17050;41.67;26.57;48 -6913;TURKEY;UZUNKOPRU;17050.1;41.30;26.70;53 -6914;TURKEY;KIRKLARELI;17052;41.73;27.22;232 -6915;TURKEY;ALPULLU SEKER F;17052.1;41.40;27.20;70 -6916;TURKEY;LULEBURGAZ;17052.2;41.40;27.40;46 -6917;TURKEY;TEKIRDAG;17056;40.98;27.48;4 -6918;TURKEY;CORLU;17056.1;41.20;27.80;183 -6919;TURKEY;SARIYER;17059.1;41.20;29.10;5 -6920;TURKEY;BAHCEKOY ORMAN;17059.2;41.20;29.10;130 -6921;TURKEY;KUMKOY;17059.3;41.30;29.00;30 -6922;TURKEY;ISTANBUL/ATAT;17060;40.97;28.82;37 -6923;TURKEY;FLORYA;17060.1;41.00;28.80;36 -6924;TURKEY;ISTANBUL/GOZT;17062;40.97;29.08;33 -6925;TURKEY;YALOVA;17062.1;40.70;29.30;2 -6926;TURKEY;KARTAL;17062.2;40.90;29.20;27 -6927;TURKEY;SILE;17062.3;41.20;29.60;83 -6928;TURKEY;KOCAELI;17067.1;40.80;29.90;76 -6929;TURKEY;BILECIK;17068.1;40.20;30.00;526 -6930;TURKEY;ALIFUATPASA;17068.2;40.50;30.30;100 -6931;TURKEY;ADAPAZARI;17069;40.78;30.42;30 -6932;TURKEY;BOLU;17070;40.73;31.60;742 -6933;TURKEY;BEYPAZARI;17070.1;40.20;31.90;682 -6934;TURKEY;DUZCE;17070.2;40.80;31.20;120 -6935;TURKEY;AKCAKOCA;17070.3;41.10;31.10;10 -6936;TURKEY;KASTAMONU;17074;41.37;33.77;799 -6937;TURKEY;TOSYA;17074.1;41.00;34.00;829 -6938;TURKEY;MERZIFON;17082;40.85;35.58;535 -6939;TURKEY;CORUM;17084;40.55;34.97;776 -6940;TURKEY;AMASYA;17085;40.65;35.85;412 -6941;TURKEY;ZILE;17085.1;40.30;35.90;700 -6942;TURKEY;GOKHOYUK;17085.2;40.60;35.70;500 -6943;TURKEY;TOKAT;17086;40.30;36.57;608 -6944;TURKEY;GUMUSHANE;17088;40.45;39.45;1219 -6945;TURKEY;BAYBURT;17088.1;40.30;40.20;1550 -6946;TURKEY;SIVAS;17090;39.75;37.02;1285 -6947;TURKEY;KANGAL;17090.1;39.20;37.40;1545 -6948;TURKEY;ULAS DUC;17090.2;39.40;37.00;1350 -6949;TURKEY;DIVRIGI;17090.3;39.40;38.10;1750 -6950;TURKEY;ZARA;17090.4;39.90;37.80;1348 -6951;TURKEY;ERZINCAN;17092;39.73;39.50;1215 -6952;TURKEY;PULUMUR;17092.1;39.50;39.90;1550 -6953;TURKEY;ERZURUM;17096;39.92;41.27;1758 -6954;TURKEY;HINIS;17096.1;39.40;41.70;1720 -6955;TURKEY;TERCAN;17096.2;39.80;40.40;1448 -6956;TURKEY;HORASAN;17096.3;40.10;42.20;1540 -6957;TURKEY;TORTUM;17096.4;40.30;41.60;1602 -6958;TURKEY;KARS;17098;40.60;43.08;1775 -6959;TURKEY;SARIKAMIS;17098.1;40.30;42.60;2092 -6960;TURKEY;ARDAHAN;17098.2;41.10;42.70;1829 -6961;TURKEY;AGRI;17099;39.72;43.05;1632 -6962;TURKEY;IGDIR;17100;39.93;44.03;858 -6963;TURKEY;DOGUBEYAZIT;17100.1;39.60;44.10;1725 -6964;TURKEY;DIL DUC;17100.2;39.80;44.60;824 -6965;TURKEY;GOKCEADA;17110;40.18;25.90;72 -6966;TURKEY;CANAKKALE;17112;40.13;26.40;3 -6967;TURKEY;BOZCAADA;17112.1;39.80;26.10;40 -6968;TURKEY;BAYRAMIC;17112.2;39.80;26.50;70 -6969;TURKEY;IPSALA;17112.3;40.90;26.40;10 -6970;TURKEY;BANDIRMA;17115;40.32;27.97;49 -6971;TURKEY;MUSTAFAKEMALPAS;17115.1;40.00;28.40;40 -6972;TURKEY;GONEN;17115.2;40.10;27.70;30 -6973;TURKEY;BIGA;17115.3;40.23;27.30;25 -6974;TURKEY;TAHIROVA T A C;17115.4;40.30;27.50;10 -6975;TURKEY;BURSA;17116;40.18;29.07;100 -6976;TURKEY;TAVSANLI;17116.1;39.60;29.50;360 -6977;TURKEY;KELES;17116.2;39.90;29.20;1000 -6978;TURKEY;ULUDAG SARIALAN;17116.3;40.10;29.10;1620 -6979;TURKEY;ULUDAG ZIRVE;17116.4;40.10;29.10;1879 -6980;TURKEY;ULUDAG Y KONAK;17116.5;40.10;29.20;1025 -6981;TURKEY;ESKISEHIR;17124;39.78;30.57;785 -6982;TURKEY;KUTAHYA;17124.1;39.40;30.00;969 -6983;TURKEY;SIVRIHISAR;17124.2;39.50;31.50;1070 -6984;TURKEY;BOZUYUK;17124.3;39.90;30.00;760 -6985;TURKEY;ANKARA/ESENBO;17128;40.12;32.98;949 -6986;TURKEY;KIRIKKALE;17128.1;39.90;33.50;725 -6987;TURKEY;CUBUK;17128.2;40.20;33.00;992 -6988;TURKEY;KIZILCAHAMAM;17128.3;40.50;32.70;1002 -6989;TURKEY;CANKIRI;17128.4;40.60;33.60;751 -6990;TURKEY;ANKARA/ETIMES;17129;39.95;32.68;806 -6991;TURKEY;IKIZCEHAYMANA;17129.1;39.40;32.50;1225 -6992;TURKEY;POLATLI;17129.2;39.60;32.20;885 -6993;TURKEY;ANKARA/CENTRAL;17130;40.00;32.90;894 -6994;TURKEY;BALA DUC;17130.1;39.50;33.10;1000 -6995;TURKEY;ANKARA/CENTRA;17130.3;39.95;32.88;891 -6996;TURKEY;YOZGAT;17140;39.83;34.82;1298 -6997;TURKEY;CICEKDAG DUC;17140.1;39.60;34.40;950 -6998;TURKEY;CICEKDAG;17140.2;39.60;34.40;950 -6999;TURKEY;BALIKESIR;17150;39.62;27.92;102 -7000;TURKEY;DURSUNBEY;17150.1;39.60;28.60;639 -7001;TURKEY;KIRSEHIR;17160;39.13;34.17;1007 -7002;TURKEY;KULU;17160.1;39.10;33.10;1000 -7003;TURKEY;KAMAN;17160.2;39.40;33.70;1075 -7004;TURKEY;GEMEREK;17162;39.18;36.05;1171 -7005;TURKEY;SARIZ;17162.1;38.40;36.50;1500 -7006;TURKEY;PINARBASI;17162.2;38.70;36.40;1470 -7007;TURKEY;VAN;17170;38.45;43.32;1661 -7008;TURKEY;OZALP;17170.1;38.70;44.00;2011 -7009;TURKEY;ERCIS;17170.2;39.00;43.40;1775 -7010;TURKEY;MURADIYE VAN;17170.3;39.00;43.80;1706 -7011;TURKEY;DIKILI;17180;39.05;26.87;3 -7012;TURKEY;BERGAMA;17180.1;39.10;27.20;45 -7013;TURKEY;AYVALIK;17180.2;39.30;26.70;4 -7014;TURKEY;BURHANIYE;17180.3;39.50;26.97;10 -7015;TURKEY;EDREMIT;17180.4;39.60;27.00;21 -7016;TURKEY;AKHISAR;17184;38.92;27.85;93 -7017;TURKEY;SALIHLI;17184.1;38.50;28.10;111 -7018;TURKEY;MANISA;17186.1;38.60;27.40;75 -7019;TURKEY;USAK;17188;38.67;29.42;919 -7020;TURKEY;SIMAV;17188.1;39.10;29.00;830 -7021;TURKEY;GEDIZ;17188.2;39.10;29.40;825 -7022;TURKEY;AFYON;17190;38.75;30.53;1034 -7023;TURKEY;AKSEHIR;17190.1;38.40;31.40;1010 -7024;TURKEY;BOLVADIN;17190.2;38.70;31.10;1015 -7025;TURKEY;EMIRDAG;17190.3;39.00;31.20;700 -7026;TURKEY;NEVSEHIR;17193;38.62;34.72;1260 -7027;TURKEY;KOCAS DUC;17193.1;38.40;33.80;970 -7028;TURKEY;AKSARAY;17193.2;38.40;34.10;965 -7029;TURKEY;URGUP;17193.3;38.60;34.90;1060 -7030;TURKEY;KAYSERI/ERKIL;17195;38.78;35.48;1054 -7031;TURKEY;DEVELI;17195.1;38.40;35.50;1180 -7032;TURKEY;TOMARZA;17195.2;38.50;35.80;1400 -7033;TURKEY;KAYSERI;17195.3;38.70;35.50;1068 -7034;TURKEY;BOGAZLIYAN;17195.4;39.20;35.30;1017 -7035;TURKEY;MALATYA/ERHAC;17200;38.43;38.08;849 -7036;TURKEY;ADIYAMAN;17200.1;37.80;38.30;678 -7037;TURKEY;ARAPKIR;17200.2;39.10;38.50;1200 -7038;TURKEY;ELAZIG;17202;38.60;39.28;882 -7039;TURKEY;ERGANI;17202.1;38.30;39.80;1000 -7040;TURKEY;KEBAN;17202.2;38.80;38.80;725 -7041;TURKEY;CEMISGEZEK;17202.3;39.10;38.90;856 -7042;TURKEY;HOZAT;17202.4;39.10;39.20;1520 -7043;TURKEY;TUNCELI;17202.5;39.10;39.60;979 -7044;TURKEY;BINGOL;17203;38.87;40.50;1177 -7045;TURKEY;PALU;17203.1;38.90;40.00;1000 -7046;TURKEY;KIGI;17203.2;39.30;40.40;1700 -7047;TURKEY;MUS;17204;38.73;41.52;1320 -7048;TURKEY;ALPASLAN DUC;17204.1;38.80;41.50;1258 -7049;TURKEY;SOLHAN;17204.2;39.00;41.10;1395 -7050;TURKEY;TATVAN;17205;38.52;42.27;1664 -7051;TURKEY;BITLIS;17205.1;38.40;42.10;1550 -7052;TURKEY;AHLAT;17205.2;38.80;42.50;1750 -7053;TURKEY;MALAZGIRT;17205.3;39.00;42.55;1400 -7054;TURKEY;SIIRT;17210;37.93;42.00;895 -7055;TURKEY;CIZRE;17210.1;37.30;42.20;400 -7056;TURKEY;CESME;17218.1;38.30;26.30;5 -7057;TURKEY;MENEMEN;17218.2;38.60;27.10;10 -7058;TURKEY;KUSADASI;17219.1;37.90;27.30;22 -7059;TURKEY;SELCUK;17219.2;38.00;27.40;17 -7060;TURKEY;SEFERIHISAR;17219.3;38.20;26.80;36 -7061;TURKEY;IZMIR;17220.1;38.40;27.30;25 -7062;TURKEY;BORNOVA;17220.2;38.50;27.20;27 -7063;TURKEY;AYDIN;17234;37.85;27.85;57 -7064;TURKEY;SULTANHISAR;17234.1;37.90;28.20;70 -7065;TURKEY;NAZILLI;17234.2;37.90;28.30;60 -7066;TURKEY;TIRE;17234.3;38.10;27.70;100 -7067;TURKEY;ODEMIS;17234.4;38.20;28.00;118 -7068;TURKEY;DENIZLI;17237;37.77;29.08;428 -7069;TURKEY;TEFENNI;17237.1;37.30;29.80;1140 -7070;TURKEY;ACIPAYAM;17237.2;37.40;29.40;941 -7071;TURKEY;GUNEY;17237.3;38.20;29.10;625 -7072;TURKEY;ISPARTA;17240;37.75;30.55;997 -7073;TURKEY;BURDUR;17240.1;37.70;30.30;967 -7074;TURKEY;DINAR;17240.2;38.10;30.20;860 -7075;TURKEY;ULUBORLU;17240.3;38.10;30.50;1160 -7076;TURKEY;KONYA;17244;37.97;32.55;1022 -7077;TURKEY;SEYDISEHIR;17244.1;37.40;31.80;1131 -7078;TURKEY;CUMRA;17244.2;37.60;32.80;1013 -7079;TURKEY;BEYSEHIR;17244.3;37.70;31.70;1129 -7080;TURKEY;ILGIN;17244.4;38.30;31.90;1030 -7081;TURKEY;KONUKLAR;17244.5;38.30;32.40;1066 -7082;TURKEY;GOZLU DUC;17244.6;38.40;32.30;970 -7083;TURKEY;CIHANBEYLI;17244.7;38.65;32.90;969 -7084;TURKEY;ALTINOVA DUC;17244.8;38.70;32.20;1130 -7085;TURKEY;KONYA/EREGLI;17248;37.50;34.07;1044 -7086;TURKEY;KARAMAN;17248.1;37.20;33.20;1025 -7087;TURKEY;ULUKISLA;17248.2;37.60;34.50;1451 -7088;TURKEY;KARAPINAR;17248.3;37.70;33.60;1004 -7089;TURKEY;NIGDE;17250;37.97;34.68;1208 -7090;TURKEY;KAHRAMANMARAS;17255;37.60;36.93;549 -7091;TURKEY;GOKSUN;17255.1;38.00;36.50;1344 -7092;TURKEY;ELBISTAN;17255.2;38.20;37.20;1137 -7093;TURKEY;GAZIANTEP;17260;37.08;37.37;855 -7094;TURKEY;KILIS;17260.1;36.70;37.10;638 -7095;TURKEY;BIRECIK;17260.2;37.00;38.00;347 -7096;TURKEY;URFA;17270;37.13;38.77;547 -7097;TURKEY;AKCAKALE;17270.1;36.70;39.00;375 -7098;TURKEY;MARDIN;17275;37.30;40.73;1050 -7099;TURKEY;CEYLANPINAR;17275.1;36.90;40.10;398 -7100;TURKEY;NUSAYBIN;17275.3;37.10;41.20;500 -7101;TURKEY;DIYARBAKIR;17280;37.88;40.18;677 -7102;TURKEY;SIVEREK;17280.1;37.80;39.30;801 -7103;TURKEY;BATMAN;17282;37.87;41.17;540 -7104;TURKEY;HAKKARI;17285;37.57;43.77;1720 -7105;TURKEY;YUKSEKOVA;17285.1;37.60;44.30;1900 -7106;TURKEY;BASKALE;17285.2;38.10;44.00;2400 -7107;TURKEY;BODRUM;17290;37.03;27.42;27 -7108;TURKEY;MILAS;17290.1;37.30;27.80;53 -7109;TURKEY;MUGLA;17292;37.20;28.35;646 -7110;TURKEY;YATAGAN;17292.1;37.40;28.10;376 -7111;TURKEY;DALAMAN;17295;36.70;28.78;2 -7112;TURKEY;FETHIYE;17295.1;36.60;29.10;3 -7113;TURKEY;KOYCEGIZ;17295.2;37.00;28.70;24 -7114;TURKEY;MARMARIS;17298.1;36.90;28.30;3 -7115;TURKEY;ANTALYA;17300;36.70;30.73;57 -7116;TURKEY;MANAVGAT;17300.1;36.80;31.40;20 -7117;TURKEY;KORKUTELI;17300.2;37.10;30.20;1020 -7118;TURKEY;ANAMUR;17320;36.10;32.83;4 -7119;TURKEY;GAZIPASA;17320.1;36.30;32.30;35 -7120;TURKEY;ALANYA;17320.2;36.60;32.00;7 -7121;TURKEY;HADIM;17320.3;37.00;32.50;1500 -7122;TURKEY;SILIFKE;17330;36.37;33.93;15 -7123;TURKEY;MUT;17330.1;36.70;33.40;275 -7124;TURKEY;MERSIN;17340;36.82;34.60;3 -7125;TURKEY;ERDEMLI;17340.1;36.60;34.30;9 -7126;TURKEY;ADANA/INCIRLI;17350;37.00;35.42;66 -7127;TURKEY;YUMURTALIK;17350.1;36.80;35.80;10 -7128;TURKEY;CEYHAN;17350.2;37.00;35.80;30 -7129;TURKEY;KARAISALI;17351.1;37.30;35.10;400 -7130;TURKEY;POZANTI;17351.2;37.40;34.90;778 -7131;TURKEY;KOZAN;17351.3;37.50;35.80;150 -7132;TURKEY;KARATAS;17352.1;36.60;35.40;5 -7133;TURKEY;HACIALI;17352.2;36.80;35.30;12 -7134;TURKEY;ISKENDERUN;17370;36.58;36.17;3 -7135;TURKEY;SAMANDAG;17370.1;36.10;36.00;31 -7136;TURKEY;ANTAKYA;17370.2;36.20;36.20;100 -7137;TURKEY;DORTYOL;17370.3;36.90;36.20;28 -7138;TURKEY;ISLAHIYE;17370.4;37.00;36.60;518 -7139;TURKEY;FINIKE;17375;36.30;30.15;3 -7140;TURKEY;ELMALI;17375.1;36.80;29.90;1113 -7141;UKRAINE;RIVNE;33301;50.58;26.13;231 -7142;UKRAINE;KYIV;33345;50.40;30.57;167 -7143;UKRAINE;LUBNY;33377;50.00;33.02;158 -7144;UKRAINE;LVIV;33393;49.82;23.95;323 -7145;UKRAINE;POLTAVA;33506;49.60;34.55;160 -7146;UKRAINE;VINNYTSIA;33562;49.23;28.60;298 -7147;UKRAINE;UMAN;33587;48.77;30.23;216 -7148;UKRAINE;UZHHOROD;33631;48.63;22.27;124 -7149;UKRAINE;CHERNIVTSI;33658;48.37;25.90;246 -7150;UKRAINE;"JUZNO-BUGSKAJA, UKRAINE FORMER";33699.1;48.05;30.85;103 -7151;UKRAINE;KIROVOHRAD;33711;48.52;32.20;171 -7152;UKRAINE;ODESA;33837;46.43;30.77;42 -7153;UKRAINE;MIKOLAIV;33846;47.03;31.95;50 -7154;UKRAINE;IZMAIL;33889;45.37;28.85;30 -7155;UKRAINE;HENICHESK;33910;46.17;34.82;15 -7156;UKRAINE;ASKANIIA-NOVA;33915;46.45;33.88;30 -7157;UKRAINE;DZANKOJ;33934;45.72;34.40;8 -7158;UKRAINE;SSEVASTOPOL;33945.1;44.60;33.50;40 -7159;UKRAINE;SIMFEROPOL;33946;45.00;34.00;205 -7160;UKRAINE;ENISSALA;33966.1;44.90;34.60;460 -7161;UKRAINE;FEODOSIIA;33976;45.03;35.38;26 -7162;UKRAINE;KERCH;33983;45.40;36.42;49 -7163;UKRAINE;YALTA;33990;45.48;34.17;72 -7164;UKRAINE;KHARKIV;34300;49.97;36.13;155 -7165;UKRAINE;LUGAN;34523.1;48.60;39.30;60 -7166;UKRAINE;DEBALCEVO;34524.1;48.35;38.43;334 -7167;UKRAINE;ZAPORIZHZHIA;34601;47.80;35.02;112 -7168;UNITED KINGDOM;LERWICK;3005;60.13;-1.18;84 -7169;UNITED KINGDOM;STORNOWAY;3026;58.22;-6.32;13 -7170;UNITED KINGDOM;FORT WILLIAM;3038;56.83;-5.10;20 -7171;UNITED KINGDOM;BEN NEVIS;3038.1;56.80;-5.10;1343 -7172;UNITED KINGDOM;ORKNEY;3055.1;59.10;-3.30;22 -7173;UNITED KINGDOM;GORDON CASTLE;3068.1;57.60;-3.10;32 -7174;UNITED KINGDOM;BRAEMAR;3072.1;57.00;-3.40;339 -7175;UNITED KINGDOM;ABERDEEN/DYCE;3091;57.20;-2.22;65 -7176;UNITED KINGDOM;TIREE;3100;56.50;-6.88;12 -7177;UNITED KINGDOM;GLASGOW AIRPO;3140;55.87;-4.43;8 -7178;UNITED KINGDOM;EDINBURGH AIR;3160;55.95;-3.35;41 -7179;UNITED KINGDOM;EDINBURGH/ROYAL OBS.UK;3160.1;55.90;-3.20;134 -7180;UNITED KINGDOM;ESKDALEMUIR;3162;55.32;-3.20;242 -7181;UNITED KINGDOM;DUMFRIES;3209.1;55.10;-3.10;-999 -7182;UNITED KINGDOM;COCKLE PARK;3241.1;55.20;-1.60;99 -7183;UNITED KINGDOM;DURHAM;3242.1;54.80;-1.60;102 -7184;UNITED KINGDOM;LEEMING;3257;54.30;-1.53;40 -7185;UNITED KINGDOM;SCARBOROUGH;3292.1;54.20;-0.40;-999 -7186;UNITED KINGDOM;VALLEY;3302;53.25;-4.53;11 -7187;UNITED KINGDOM;BIDSTON;3316.1;53.40;-2.90;-999 -7188;UNITED KINGDOM;STONYHURST;3329.1;53.80;-2.50;115 -7189;UNITED KINGDOM;MANCHESTER AI;3334;53.35;-2.27;78 -7190;UNITED KINGDOM;WARRINGTON;3334.1;53.38;-2.65;27 -7191;UNITED KINGDOM;SHEFFIELD;3345.1;53.40;-1.50;-999 -7192;UNITED KINGDOM;YORK;3355.1;53.90;-1.10;-999 -7193;UNITED KINGDOM;WADDINGTON;3377;53.17;-0.52;70 -7194;UNITED KINGDOM;MILDENHALL;3482.1;52.37;0.48;10 -7195;UNITED KINGDOM;LAKENHEATH;3482.2;52.40;0.57;10 -7196;UNITED KINGDOM;SCULTHORPE;3482.3;52.85;0.77;68 -7197;UNITED KINGDOM;GORLESTON;3496.1;52.60;1.70;2 -7198;UNITED KINGDOM;ABERYSTWYTH;3501.1;52.40;-4.10;-999 -7199;UNITED KINGDOM;ROSS-ON-WYE;3521.1;51.90;-2.60;-999 -7200;UNITED KINGDOM;BIRMINGHAM/AI;3534;52.45;-1.73;99 -7201;UNITED KINGDOM;EDGBASTON;3534.1;52.50;-1.90;-999 -7202;UNITED KINGDOM;HUNTINGTON;3560.1;52.37;-0.22;49 -7203;UNITED KINGDOM;BENTWATERS;3590.1;52.13;1.43;26 -7204;UNITED KINGDOM;FAIRFORD;3649.1;51.68;-1.78;91 -7205;UNITED KINGDOM;OXFORD;3649.2;51.75;-1.58;91 -7206;UNITED KINGDOM;UPPER HEYFORD;3649.3;51.93;-1.25;133 -7207;UNITED KINGDOM;OXFORD;3657.1;51.70;-1.20;63 -7208;UNITED KINGDOM;ROTHAMSTEAD;3670.1;51.70;-0.30;128 -7209;UNITED KINGDOM;KEW;3672.1;51.50;-0.30;5 -7210;UNITED KINGDOM;WETHERSFIELD;3683.1;51.97;0.50;101 -7211;UNITED KINGDOM;CAMBRIDGE;3683.2;52.20;0.10;12 -7212;UNITED KINGDOM;FELIXSTOWE;3696.1;52.00;1.30;3 -7213;UNITED KINGDOM;WOODBRIDGE;3696.2;52.08;1.40;29 -7214;UNITED KINGDOM;GLAMORGAN/RHOUSE AP;3715;51.40;-3.40;67 -7215;UNITED KINGDOM;LARKHILL;3743;51.20;-1.80;133 -7216;UNITED KINGDOM;GREENHAM;3761.1;51.38;-1.28;125 -7217;UNITED KINGDOM;LONDON/GATWIC;3776;51.15;-0.18;62 -7218;UNITED KINGDOM;GREENWICH/MARITIME MUK;3779.1;51.50;0.00;7 -7219;UNITED KINGDOM;TRURO;3817.1;50.30;-5.10;-999 -7220;UNITED KINGDOM;PLYMOUTH WC;3827;50.35;-4.12;50 -7221;UNITED KINGDOM;BOURNEMOUTH A;3862;50.78;-1.83;11 -7222;UNITED KINGDOM;SOUTHAMPTON/;3865;50.90;-1.40;9 -7223;UNITED KINGDOM;OSBORNE;3874.1;50.80;-1.30;52 -7224;UNITED KINGDOM;GUERNSEY AIRP;3894;49.43;-2.60;102 -7225;UNITED KINGDOM;BELFAST/ALDER;3917;54.65;-6.22;81 -7226;FAROE ISLANDS;THORSHAVN;6011;62.02;-6.77;55 -7227;GIBRALTAR;GIBRALTAR;8495;36.15;-5.35;5 -7228;GIBRALTAR;GIBRALTAR;8495.1;36.10;-5.40;3 -7229;MADEIRA ISLANDS;FUNCHAL;8522;32.63;-16.90;56 -7230;MADEIRA ISLANDS;PORTO SANTO;8524;33.07;-16.35;82 -7231;ANTARCTICA;PETREL;88963.1;-63.50;-57.30;18 -7232;ANTARCTICA;S.A.N.A.E. ST;89001;-70.30;-2.35;62 -7233;ANTARCTICA;NEUMAYER;89002;-70.67;-8.25;50 -7234;ANTARCTICA;HALLEY;89022;-75.50;-26.65;30 -7235;ANTARCTICA;BASE BELGRANO;89034;-77.87;-34.62;256 -7236;ANTARCTICA;BELGRANO;89034.1;-77.90;-34.50;55 -7237;ANTARCTICA;BELLINGSHAUSE;89050;-62.20;-58.93;16 -7238;ANTARCTICA;DEST. NAVAL DECEPCION SOUT;89053.1;-63.00;-60.70;8 -7239;ANTARCTICA;DECEPTION IS.;89053.2;-63.00;-60.60;8 -7240;ANTARCTICA;ADMIRALITY BAY;89053.3;-62.10;-58.40;9 -7241;ANTARCTICA;CMS"VICE.DO.M;89055;-64.23;-56.72;-999 -7242;ANTARCTICA;BASE ALMIRANTE BROWN;89055.2;-64.88;-62.88;1 -7243;ANTARCTICA;DEST. NAVAL MELCHIOR;89055.3;-64.30;-63.00;8 -7244;ANTARCTICA;BERNADO OHIGGINS;89059.1;-63.32;-57.90;-999 -7245;ANTARCTICA;PALMER STATIO;89061;-64.77;-64.08;8 -7246;ANTARCTICA;ROTHERA POINT;89062;-67.57;-68.13;16 -7247;ANTARCTICA;FARADAY;89063;-65.25;-64.27;11 -7248;ANTARCTICA;BASE SAN MART;89066;-68.13;-67.13;4 -7249;ANTARCTICA;BYRD STATION;89125;-80.02;-119.53;1515 -7250;ANTARCTICA;NOVOLAZAREVSK;89512;-70.77;11.83;102 -7251;ANTARCTICA;SYOWA;89532;-69.00;39.58;21 -7252;ANTARCTICA;MOLODEZNAJA;89542;-67.67;45.85;40 -7253;ANTARCTICA;MIZUHO;89544;-70.70;44.33;2230 -7254;ANTARCTICA;MAWSON;89564;-67.60;62.87;16 -7255;ANTARCTICA;DAVIS;89571;-68.58;77.97;13 -7256;ANTARCTICA;MIRNYJ;89592;-66.55;93.02;30 -7257;ANTARCTICA;VOSTOK;89606;-78.45;106.87;3420 -7258;ANTARCTICA;LENINGRADSKAYA;89606.1;-69.50;159.40;300 -7259;ANTARCTICA;CASEY;89611;-66.28;110.52;42 -7260;ANTARCTICA;DUMONT DURVI;89642;-66.67;140.02;43 -7261;ANTARCTICA;MCMURDO;89664;-77.85;166.67;24 -7262;ANTARCTICA;SCOTT BASE;89665.1;-77.85;166.75;16 -7263;SOUTH ORKNEY ISLANDS;BASE ORCADAS;88968;-60.75;-44.72;-999 -7264;SHIP STATIONS;SHIP A;99901.1;62.00;-33.00;-999 -7265;SHIP STATIONS;SHIP B;99902.1;56.50;-51.00;-999 -7266;SHIP STATIONS;SHIP C;99903.1;52.80;-35.50;-999 -7267;SHIP STATIONS;SHIP D;99904.1;44.00;-41.00;-999 -7268;SHIP STATIONS;SHIP E;99905.1;35.00;-48.00;-999 -7269;SHIP STATIONS;SHIP I;99906.1;59.00;-19.00;-999 -7270;SHIP STATIONS;SHIP J;99907.1;52.50;-20.00;-999 -7271;SHIP STATIONS;SHIP K;99908.1;45.00;-16.00;-999 -7272;SHIP STATIONS;SHIP L;99909.1;57.00;-20.00;-999 -7273;SHIP STATIONS;SHIP M;99910.1;66.00;2.00;-999 -7274;SHIP STATIONS;SHIP N;99911.1;30.00;-140.00;-999 -7275;SHIP STATIONS;SHIP P;99912.1;50.00;-145.00;-999 -7276;SHIP STATIONS;SHIP R;99913.1;47.00;-17.00;-999 -7277;SHIP STATIONS;SHIP V;99914.1;34.00;164.00;-999 diff --git a/build/lib/cloupy/test/test_integration/test_integration_imgw.py b/build/lib/cloupy/test/test_integration/test_integration_imgw.py deleted file mode 100644 index 25572ea..0000000 --- a/build/lib/cloupy/test/test_integration/test_integration_imgw.py +++ /dev/null @@ -1,136 +0,0 @@ -from cloupy.scraping import imgw -import pytest -import urllib.request -import urllib.error - - -def check_if_NOT_connected_to_the_internet(host='http://google.com'): - try: - urllib.request.urlopen(host) - return False - except urllib.error.URLError: - return True - - -@pytest.mark.filterwarnings("ignore::pandas.errors.DtypeWarning") -@pytest.mark.skipif(check_if_NOT_connected_to_the_internet(), reason='internet connection required') -class TestDataDownloading: - - @pytest.fixture - def intervals(self): - return ['monthly', 'daily', 'prompt'] - - @pytest.fixture - def st_kinds(self): - return ['synop', 'climat', 'fall'] - - def test_if_column_2_is_always_year( - self, intervals, st_kinds - ): - - from os import listdir - from os.path import isfile, join - import shutil - from random import shuffle - - y_range = range(2018, 2019) - files_reading_dir_path = str(__file__).replace( - join('test', 'test_integration', 'test_integration_imgw.py'), - join('scraping', 'files_reading_folder') - ) - - for interval in intervals: - for st_kind in st_kinds: - - if st_kind == 'fall' and interval == 'prompt': - continue - - urls = imgw.get_urls(interval, st_kind, y_range) - imgw.download_data(urls) - downloaded_files_names = [f for f in listdir(files_reading_dir_path) if - isfile(join(files_reading_dir_path, f))] - - file_formats = imgw.get_file_formats(interval, st_kind, 'all') - keywords = ['nazwa stacji', 'temperatura', 'rok', 'opad', 'wiatr'] - shuffle(keywords) - - for file in file_formats: - - if isinstance(file_formats, str): - file = file_formats - - df = imgw.concatenate_data( - downloaded_files_names=downloaded_files_names, file_formats=file, years_range=y_range, - keywords=keywords, specific_columns=None, optimize_memory_usage=False, - merge_splitted_stations=True - ) - - df = df[0][df[1]] - - assert min(df[2]) == 2018 - - shutil.rmtree(files_reading_dir_path) - - def test_data_downloading_for_years_before_2001( - self, intervals, st_kinds - ): - years_range = range(1984, 1987) - TestDataDownloading.download_and_test_data(intervals, st_kinds, years_range) - - def test_data_downloading_for_years_after_2000( - self, intervals, st_kinds - ): - years_range = range(2011, 2013) - TestDataDownloading.download_and_test_data(intervals, st_kinds, years_range) - - def test_data_downloading_for_years_between_2000_and_2001( - self, intervals, st_kinds - ): - years_range = range(2000, 2002) - TestDataDownloading.download_and_test_data(intervals, st_kinds, years_range) - - def test_adding_coordinates_to_dataframe( - self, intervals, st_kinds - ): - years_range = range(2010, 2011) - for interval in intervals: - for st_kind in st_kinds: - - if st_kind == 'fall' and interval == 'prompt': - continue - - df = imgw.download_imgw_climatological_data( - interval, st_kind, years_range, - specific_columns=[0, 1, 2, 3], - optimize_memory_usage=True, - return_coordinates=True - ) - - assert 'lat' in df.columns - assert 'lon' in df.columns - assert 'elv' in df.columns - - assert not df['lat'].isnull().all() - assert not df['lon'].isnull().all() - assert not df['elv'].isnull().all() - - @staticmethod - def download_and_test_data( - intervals, st_kinds, years_range - ): - for interval in intervals: - for st_kind in st_kinds: - if interval == 'prompt' and st_kind == 'fall': - with pytest.raises(NotADirectoryError): - imgw.download_imgw_climatological_data( - interval, st_kind, years_range - ) - continue - else: - df = imgw.download_imgw_climatological_data( - interval, st_kind, years_range, - optimize_memory_usage=True, - specific_columns=[0, 1, 2, 3] - ) - - assert not df.empty diff --git a/build/lib/cloupy/test/test_integration/test_integration_interpolation_map.py b/build/lib/cloupy/test/test_integration/test_integration_interpolation_map.py deleted file mode 100644 index 9640789..0000000 --- a/build/lib/cloupy/test/test_integration/test_integration_interpolation_map.py +++ /dev/null @@ -1,54 +0,0 @@ -import cloupy as cl -from cloupy.maps.interpolation_map import MapInterpolation -import pytest -import urllib.request -import urllib.error - - -def check_if_NOT_connected_to_the_internet(host='http://google.com'): - try: - urllib.request.urlopen(host) - return False - except urllib.error.URLError: - return True - - -@pytest.mark.skipif(check_if_NOT_connected_to_the_internet(), reason='internet connection required') -class TestDrawingWithDownloadedData: - figures_plotted = 0 - - def test_drawing_and_imgw_data_downloading(self): - plotted_figures_before = TestDrawingWithDownloadedData.figures_plotted - - imap = MapInterpolation('POLAND') - imap.d_imgw_data(range(2010, 2011), 'temp') - imap.draw(figsize=(1, 1)) - TestDrawingWithDownloadedData.figures_plotted += 1 - - plotted_figures_after = TestDrawingWithDownloadedData.figures_plotted - assert plotted_figures_before < plotted_figures_after - - def test_drawing_and_wmo_data_downloading(self): - plotted_figures_before = TestDrawingWithDownloadedData.figures_plotted - - imap = MapInterpolation('HUNGARY') - imap.d_wmo_data('couHUNGARY', 'preci') - imap.draw(figsize=(1, 1)) - TestDrawingWithDownloadedData.figures_plotted += 1 - - plotted_figures_after = TestDrawingWithDownloadedData.figures_plotted - assert plotted_figures_before < plotted_figures_after - - def test_daily_data_downloading_and_drawing_from_global_df(self): - plotted_figures_before = TestDrawingWithDownloadedData.figures_plotted - - df = cl.d_imgw_data('daily', 'synop', range(2012, 2013), return_coordinates=True) - cl.set_global_df(df) - - imap = MapInterpolation('POLAND') - imap.import_global_df([1, 9, -3, -2]) - imap.draw(figsize=(1, 1)) - TestDrawingWithDownloadedData.figures_plotted += 1 - - plotted_figures_after = TestDrawingWithDownloadedData.figures_plotted - assert plotted_figures_before < plotted_figures_after diff --git a/build/lib/cloupy/test/test_integration/test_integration_walter_lieth.py b/build/lib/cloupy/test/test_integration/test_integration_walter_lieth.py deleted file mode 100644 index 17b50f1..0000000 --- a/build/lib/cloupy/test/test_integration/test_integration_walter_lieth.py +++ /dev/null @@ -1,46 +0,0 @@ -import cloupy as cl -import pytest -import matplotlib.pyplot as plt -import urllib.request -import urllib.error - - -def check_if_NOT_connected_to_the_internet(host='http://google.com'): - try: - urllib.request.urlopen(host) - return False - except urllib.error.URLError: - return True - - -@pytest.mark.skipif(check_if_NOT_connected_to_the_internet(), reason='internet connection required') -class TestDrawingWithDailyData: - - def test_drawing_and_daily_data_downloading(self): - plotted_figures_before = plt.gcf().number - wl = cl.g_WalterLieth('POZNAŃ') - wl.d_imgw_data(interval='daily', stations_kind='synop', years_range=range(2010, 2011)) - wl.draw() - plotted_figures_after = plt.gcf().number - - assert plotted_figures_before < plotted_figures_after - - def test_daily_data_downloading_and_drawing_from_global_df(self): - data = cl.d_imgw_data('daily', 'synop', range(2010, 2011)) - cl.set_global_df(data) - - plotted_figures_before = plt.gcf().number - assert TestDrawingWithDailyData.draw_from_global_df('WARSZAWA') > plotted_figures_before - - plotted_figures_before = plt.gcf().number - assert TestDrawingWithDailyData.draw_from_global_df('KOŁOBRZEG') > plotted_figures_before - - plotted_figures_before = plt.gcf().number - assert TestDrawingWithDailyData.draw_from_global_df('KOŁO') > plotted_figures_before - - @staticmethod - def draw_from_global_df(station_name): - wl = cl.g_WalterLieth(station_name) - wl.import_global_df('imgw_daily') - wl.draw() - return plt.gcf().number diff --git a/build/lib/cloupy/test/test_integration/test_integration_wmo.py b/build/lib/cloupy/test/test_integration/test_integration_wmo.py deleted file mode 100644 index 14d54cc..0000000 --- a/build/lib/cloupy/test/test_integration/test_integration_wmo.py +++ /dev/null @@ -1,136 +0,0 @@ -import pytest -from cloupy.scraping import wmo -import mock -import builtins -from random import shuffle -import urllib.request -import urllib.error - - -def check_if_NOT_connected_to_the_internet(host='http://google.com'): - try: - urllib.request.urlopen(host) - return False - except urllib.error.URLError: - return True - - -@pytest.mark.skipif(check_if_NOT_connected_to_the_internet(), reason='internet connection required') -class TestDataDownloading: - - @pytest.fixture - def stations(self): - return ['POZNAN', 'PERTH', 'HARARE', 'PARIS', 'BARCELONA', 'QUITO'] - - @pytest.fixture - def input_dict(self): - return { - 'BARCELONA': '0', - 'PERTH': '1', - 'HARARE': '1', - 'QUITO': '1', - 'PARIS': '3' - } - - @pytest.fixture - def elements(self): - return ['temp', 'preci', 'temp_max', 'temp_min', 'sl_press'] - - def test_default_settings( - self, stations, elements, - input_dict - ): - for station in stations: - shuffle(elements) - if station != 'POZNAN': - with mock.patch.object(builtins, 'input', lambda _: input_dict[station]): - data = wmo.download_wmo_climatological_data(station, elements) - assert not data.empty - assert TestDataDownloading.check_if_columns_in_proper_order( - list(data.columns[3:]), elements - ) - for column in data.columns: - assert not data[column].isnull().all() - else: - data = wmo.download_wmo_climatological_data(station, elements) - assert not data.empty - assert TestDataDownloading.check_if_columns_in_proper_order( - list(data.columns[3:]), elements - ) - for column in data.columns: - assert not data[column].isnull().all() - - def test_return_coordinates_arg( - self, stations, elements, - input_dict - ): - for station in stations: - if station != 'POZNAN': - with mock.patch.object(builtins, 'input', lambda _: input_dict[station]): - data = wmo.download_wmo_climatological_data( - station, elements, return_coordinates=True - ) - assert list(data.columns[-1:-4:-1]) == ['elv', 'lat', 'lon'] - for element in ['lat', 'lon', 'elv']: - assert not data[element].isnull().any() - else: - data = wmo.download_wmo_climatological_data( - station, elements, return_coordinates=True - ) - assert list(data.columns[-1:-4:-1]) == ['elv', 'lat', 'lon'] - for element in ['lat', 'lon', 'elv']: - assert not data[element].isnull().any() - - def test_nearby_stations_arg( - self, elements - ): - stations_and_input_val = { - 'PARIS': '4', - 'NEW YORK': '1', - 'MADRID': '1', - 'KOLO': '1' - } - - for station, input_val in stations_and_input_val.items(): - with mock.patch.object(builtins, 'input', lambda _: input_val): - if station == 'KOLO': - data = wmo.download_wmo_climatological_data( - station, elements, nearby_stations=True, - degrees_range_for_nearby_stations=1 - ) - else: - data = wmo.download_wmo_climatological_data(station, elements, nearby_stations=True) - assert list(data.columns[3:]) == elements - assert TestDataDownloading.check_if_columns_in_proper_order( - list(data.columns[3:]), elements - ) - - def test_downloading_for_countries( - self, elements - ): - countries = [ - 'couICELAND', 'couCONGO', 'couVENEZUELA', - 'couPARAGUAY', 'couURUGUAY', 'couCUBA' - ] - - for country in countries: - shuffle(elements) - data = wmo.download_wmo_climatological_data(country, elements) - - for column in data.columns: - assert not data[column].isnull().all() - assert list(data.columns)[3:] == elements - - @staticmethod - def check_if_columns_in_proper_order( - columns, elements_ - ): - filtered_elements = [] - for element in elements_: - if element in columns: - filtered_elements.append(element) - - if columns == filtered_elements: - return True - else: - return False diff --git a/build/lib/cloupy/test/test_unit/test_unittest_check_data_continuity.py b/build/lib/cloupy/test/test_unit/test_unittest_check_data_continuity.py deleted file mode 100644 index 07d6894..0000000 --- a/build/lib/cloupy/test/test_unit/test_unittest_check_data_continuity.py +++ /dev/null @@ -1,25 +0,0 @@ -from cloupy.data_processing.check_data_continuity import check_data_continuity -import pytest -import pandas as pd - - -class TestDataChecking: - - @pytest.fixture - def data(self): - return pd.DataFrame({ - 'station': ['POZNAŃ', 'POZNAŃ', 'POZNAŃ', 'POZNAŃ', 'POZNAŃ', - 'POZNAŃ', 'POZNAŃ', 'POZNAŃ', 'POZNAŃ', 'POZNAŃ', - 'KOŁO', 'KOŁO', 'KOŁO', 'KOŁO', 'KOŁO', - 'KOŁO', 'KOŁO', 'KOŁO', 'TARNÓW', 'TARNÓW', - 'TARNÓW' - ], - 'values': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, - 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3 - ] - }) - - def test_data_continuity_checking(self, data): - assert len(check_data_continuity(data, 0, 1).station) == 10 - assert len(check_data_continuity(data, 0, 0.8)) == 18 - assert len(check_data_continuity(data, 0, 0.3)) == 21 diff --git a/build/lib/cloupy/test/test_unit/test_unittest_drawing_shapes.py b/build/lib/cloupy/test/test_unit/test_unittest_drawing_shapes.py deleted file mode 100644 index f119bd6..0000000 --- a/build/lib/cloupy/test/test_unit/test_unittest_drawing_shapes.py +++ /dev/null @@ -1,106 +0,0 @@ -import pytest -import cloupy.maps.draw_shapes as ds -import matplotlib.pyplot as plt -import os - - -class TestShapesDrawing: - figures_plotted = 0 - - @pytest.fixture - def path(self): - sep = os.sep - path = str(__file__).replace( - f'{sep}test{sep}test_unit{sep}test_unittest_drawing_shapes.py', - f'{sep}maps{sep}world{sep}ne_50m_admin_0_countries.shp' - ) - return path - - def test_drawing_additional_shapes(self, path): - plotted_figures_before = TestShapesDrawing.figures_plotted - fig, ax = plt.subplots(figsize=(1, 1)) - ds.draw_additional_shapes({path: ''}, ax) - TestShapesDrawing.figures_plotted += 1 - plotted_figures_after = TestShapesDrawing.figures_plotted - assert plotted_figures_before < plotted_figures_after - - plotted_figures_before = TestShapesDrawing.figures_plotted - fig, ax = plt.subplots(figsize=(1, 1)) - ds.draw_additional_shapes( - { - path: 'ls=dotted,lw=2,fc=red,c=blue,crs=epsg:4326' - }, - ax - ) - TestShapesDrawing.figures_plotted += 1 - plotted_figures_after = TestShapesDrawing.figures_plotted - assert plotted_figures_before < plotted_figures_after - - def test_getting_shapes_for_plotting(self, path): - fig, ax = plt.subplots(figsize=(1, 1)) - shapes = ds.get_shapes_for_plotting(ax, path, 'epsg:4326', 'MALTA') - - assert shapes == [([14.566210937500017, - 14.53271484375, - 14.436425781250023, - 14.352343750000017, - 14.351269531250011, - 14.448339843750006, - 14.537011718750023, - 14.566210937500017], - [35.852734375, - 35.820214843749994, - 35.821679687499994, - 35.872265625, - 35.978417968749994, - 35.957421874999994, - 35.886279296874996, - 35.852734375]), - ([14.3134765625, - 14.253613281250011, - 14.194238281250023, - 14.180371093750011, - 14.263281250000006, - 14.3037109375, - 14.320898437500006, - 14.3134765625], - [36.027587890625, - 36.012158203125, - 36.042236328125, - 36.060400390625, - 36.07578125, - 36.062304687499996, - 36.03623046875, - 36.027587890625]), - ([14.566210937500017, - 14.53271484375, - 14.436425781250023, - 14.352343750000017, - 14.351269531250011, - 14.448339843750006, - 14.537011718750023, - 14.566210937500017], - [35.852734375, - 35.820214843749994, - 35.821679687499994, - 35.872265625, - 35.978417968749994, - 35.957421874999994, - 35.886279296874996, - 35.852734375]), - ([14.3134765625, - 14.253613281250011, - 14.194238281250023, - 14.180371093750011, - 14.263281250000006, - 14.3037109375, - 14.320898437500006, - 14.3134765625], - [36.027587890625, - 36.012158203125, - 36.042236328125, - 36.060400390625, - 36.07578125, - 36.062304687499996, - 36.03623046875, - 36.027587890625])] diff --git a/build/lib/cloupy/test/test_unit/test_unittest_imgw.py b/build/lib/cloupy/test/test_unit/test_unittest_imgw.py deleted file mode 100644 index 98ac1aa..0000000 --- a/build/lib/cloupy/test/test_unit/test_unittest_imgw.py +++ /dev/null @@ -1,112 +0,0 @@ -from cloupy.scraping import imgw -import pytest - - -class TestFileFormats: - def test_monthly_arg(self): - # stations_kind = 'synop' - assert imgw.get_file_formats('monthly', 'synop', 0) == ['s_m_d'] - assert imgw.get_file_formats('monthly', 'synop', 1) == ['s_m_t'] - assert imgw.get_file_formats('monthly', 'synop', 'all') == ['s_m_d', 's_m_t'] - - # stations_kind = 'fall' - for file_format_index in [0, 1, 'all']: - assert imgw.get_file_formats('monthly', 'fall', file_format_index) == ['o_m'] - - # stations_kind = 'climat' - assert imgw.get_file_formats('monthly', 'climat', 0) == ['k_m_d'] - assert imgw.get_file_formats('monthly', 'climat', 1) == ['k_m_t'] - assert imgw.get_file_formats('monthly', 'climat', 'all') == ['k_m_d', 'k_m_t'] - - # stations_kind is invalid - with pytest.raises(ValueError): - imgw.get_file_formats('monthly', 'abc', 0) - - def test_daily_arg(self): - # stations_kind = 'synop' - assert imgw.get_file_formats('daily', 'synop', 0) == ['s_d'] - assert imgw.get_file_formats('daily', 'synop', 1) == ['s_d_t'] - assert imgw.get_file_formats('daily', 'synop', 'all') == ['s_d', 's_d_t'] - - # stations_kind = 'fall' - for file_format_index in [0, 1, 'all']: - assert imgw.get_file_formats('daily', 'fall', file_format_index) == ['o_d'] - - # stations_kind = 'climat' - assert imgw.get_file_formats('daily', 'climat', 0) == ['k_d'] - assert imgw.get_file_formats('daily', 'climat', 1) == ['k_d_t'] - assert imgw.get_file_formats('daily', 'climat', 'all') == ['k_d', 'k_d_t'] - - # stations_kind is invalid - with pytest.raises(ValueError): - imgw.get_file_formats('daily', 'abc', 0) - - def test_prompt_arg(self): - # stations_kind = 'synop' and 'climat' - for file_format_index in [0, 1, 'all']: - assert imgw.get_file_formats('prompt', 'synop', file_format_index) == ['s_t'] - assert imgw.get_file_formats('prompt', 'climat', file_format_index) == ['k_t'] - - # stations_kind = 'fall' - with pytest.raises(NotADirectoryError): - imgw.get_file_formats('prompt', 'fall', 0) - - # stations_kind is invalid - with pytest.raises(ValueError): - imgw.get_file_formats('prompt', 'abc', 0) - - -class TestKeywordsInColumns: - def test_None_file_format(self): - lowercased_keywords = ['temperatura', 'opad'] - uppercased_keywords = ['TEMPERATURA', 'OPAD'] - capitalized_keywords = ['Temperatura', 'Opad'] - - lowercased_result = TestKeywordsInColumns.values_counter( - imgw.search_for_keywords_in_columns(lowercased_keywords) - ) - - uppercased_result = TestKeywordsInColumns.values_counter( - imgw.search_for_keywords_in_columns(uppercased_keywords) - ) - - capitalized_result = TestKeywordsInColumns.values_counter( - imgw.search_for_keywords_in_columns(capitalized_keywords) - ) - - assert lowercased_result == uppercased_result == capitalized_result - - def test_specific_file_format(self): - lowercased_keywords = ['temperatura', 'opad'] - uppercased_keywords = ['TEMPERATURA', 'OPAD'] - capitalized_keywords = ['Temperatura', 'Opad'] - - expected_lengths = { - 'k_m_d': 12, - 'k_m_t': 1, - 'o_m': 5, - 's_m_d': 13, - 's_m_t': 3, - 'k_d': 6, - 'k_d_t': 1, - 'o_d': 2, - 's_d': 9, - 's_d_t': 3, - 'k_t': 2, - 's_t': 13 - } - for format_, expected_value in expected_lengths.items(): - lowercased_result = len(imgw.search_for_keywords_in_columns(lowercased_keywords, format_)) - - uppercased_result = len(imgw.search_for_keywords_in_columns(uppercased_keywords, format_)) - - capitalized_result = len(imgw.search_for_keywords_in_columns(capitalized_keywords, format_)) - - assert lowercased_result == uppercased_result == capitalized_result == expected_lengths[format_] - - @staticmethod - def values_counter(dictionary): - counter = 0 - for key in dictionary: - counter += len(dictionary[key]) - return counter diff --git a/build/lib/cloupy/test/test_unit/test_unittest_interpolation_map.py b/build/lib/cloupy/test/test_unit/test_unittest_interpolation_map.py deleted file mode 100644 index d1ae8dc..0000000 --- a/build/lib/cloupy/test/test_unit/test_unittest_interpolation_map.py +++ /dev/null @@ -1,102 +0,0 @@ -from cloupy.maps.interpolation_map import MapInterpolation -import pytest -import pandas as pd -import numpy as np -from random import shuffle - - -class TestDrawing: - - figures_plotted = 0 - - @pytest.fixture - def data_for_poland(self): - return pd.DataFrame( - { - 'values': [7.9, 7.6, 7.4, 8.0, 8.6, 7.7, 8.4], - 'longitude': [19.4, 18.6, 16.2, 19.8, 14.6, 21.0, 16.9], - 'latitude': [54.2, 54.4, 54.2, 50.1, 53.4, 52.2, 51.1] - } - ) - - @pytest.fixture - def available_drawing_settings(self): - return { - 'levels': [np.arange(5, 12.5, 0.5), np.arange(5, 13, 1)], - 'cmap': ['jet', 'turbo', 'Reds', 'Blues'], - 'fill_contours': [True, False], - 'show_contours': [True, False], - 'show_clabels': [True, False], - 'show_cbar': [True, False], - 'show_grid': [True, False], - 'show_frame': [True, False], - 'show_coordinates': [True, False], - 'show_ticks': [True, False], - 'title': [None, 'TITLE TEST'], - 'title_bold': [True, False], - 'title_x_position': list(np.arange(0, 1, 0.1)), - 'title_y_position': list(np.arange(0, 1, 0.1)), - 'title_ha': ['left', 'right', 'center'], - 'xlabel': [None, 'XLABEL TEST'], - 'xlabel_bold': [True, False], - 'ylabel': [None, 'YLABEL TEST'], - 'ylabel_bold': [True, False], - 'text_size': [10, 8, 6, 4], - 'numcols': [120, 240, 360, 480], - 'numrows': [120, 240, 360, 480], - 'interpolation_method': ['cubic', 'linear', 'nearest'], - 'interpolation_within_levels': [True, False], - 'extrapolation_into_zoomed_area': [True, False], - 'contours_levels': [None, [5, 6, 7, 8, 9, 10, 11, 12]], - 'clabels_levels': [None, [7, 8, 9]], - 'clabels_add': [None, [(19, 50), (22, 53)]], - 'clabels_decimal_place': [0, 1, 2], - 'clabels_inline_spacing': [-3, 0, 3], - 'xticks': [None, [16, 17, 18], [19, 20, 21]], - 'yticks': [None, [48, 49, 50], [51, 52, 52]], - 'cbar_ticks': [None, [5, 6, 7], [9, 6, 10]], - 'cbar_title': [None, 'CBAR TITLE TEST'], - 'cbar_title_bold': [True, False], - 'cbar_labelpad': [10, 0, 20], - 'cbar_position': ['top', 'bottom', 'left', 'right'], - 'cbar_pad': [0.1, 0.02, 0.05], - 'zoom_in': [None, [(14, 17), (52.5, 54.8)], [(17.5, 21.5), (50.5, 52.5)]], - 'show_points': [True, False], - 'points_labels': [None, 'ids', 'values'], - 'boundaries_lw': [1, 2, 0.5], - 'boundaries_ls': ['dotted', 'solid', 'dashed'], - 'grid_lw': [0.1, 0.2, 0.3], - 'grid_ls': ['dashed', 'dotted', 'solid', 'dashdot'], - 'figsize': [(1, 1)] - } - - def test_default_drawing(self, data_for_poland): - plotted_figures_before = TestDrawing.figures_plotted - - imap = MapInterpolation('POLAND', dataframe=data_for_poland) - imap.draw() - TestDrawing.figures_plotted += 1 - - plotted_figures_after = TestDrawing.figures_plotted - assert plotted_figures_before < plotted_figures_after - - def test_nondefault_drawing(self, data_for_poland, available_drawing_settings): - for i in range(5): - plotted_figures_before = TestDrawing.figures_plotted - - args = TestDrawing.mix_available_settings(available_drawing_settings) - imap = MapInterpolation('POL', dataframe=data_for_poland) - imap.draw(**args) - TestDrawing.figures_plotted += 1 - - plotted_figures_after = TestDrawing.figures_plotted - assert plotted_figures_before < plotted_figures_after - - @staticmethod - def mix_available_settings(available_drawing_settings): - args = {} - for arg, values in available_drawing_settings.items(): - shuffle(values) - args[arg] = values[0] - - return args diff --git a/build/lib/cloupy/test/test_unit/test_unittest_walter_lieth.py b/build/lib/cloupy/test/test_unit/test_unittest_walter_lieth.py deleted file mode 100644 index 5b2c800..0000000 --- a/build/lib/cloupy/test/test_unit/test_unittest_walter_lieth.py +++ /dev/null @@ -1,105 +0,0 @@ -from cloupy.diagrams.walter_lieth import WalterLieth -import pytest -import pandas as pd -import matplotlib.pyplot as plt - - -class TestDrawing: - - @pytest.fixture - def data_for_humid_period(self): - return pd.DataFrame( - { - 'months': { - 0: 1, 1: 2, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10, - 10: 11, 11: 12 - }, - 'temp': { - 0: -1.36, 1: -0.59, 2: 3.03, 3: 8.35, 4: 13.55, 5: 17.02, 6: 18.64, - 7: 18.07, 8: 13.76, 9: 8.82, 10: 3.87, 11: 0.36 - }, - 'preci': { - 0: 32.70, 1: 26.76, 2: 31.40, 3: 33.63, 4: 51.10, 5: 61.09, - 6: 79.37, 7: 57.99, 8: 42.59, 9: 37.12, 10: 37.18, 11: 38.74 - }, - 'temp_max': { - 0: 5.45, 1: 6.79, 2: 13.54, 3: 20.07, 4: 24.67, 5: 28.25, 6: 29.65, - 7: 29.21, 8: 25.24, 9: 18.88, 10: 11.63, 11: 7.66 - }, - 'temp_min': { - 0: -11.22, 1: -10.60, 2: -6.38, 3: -1.66, 4: 2.95, 5: 6.77, 6: 9.38, - 7: 8.72, 8: 4.23, 9: 0.31, 10: -3.72, 11: -8.56 - } - } - ) - - @pytest.fixture - def default_settings(self): - return { - 'figsize': (7.74, 7.74), 'language': None, 'freeze_rectangles': True, - 'title_text': True, 'years_text': True, 'coordinates_box': True, - 'yearly_means_box': True, 'extremes_box': True, 'legend_box': True - } - - @pytest.fixture - def opposite_settings(self): - return { - 'figsize': (7.74, 7.74), 'language': 'POL', 'freeze_rectangles': False, - 'title_text': False, 'years_text': False, 'coordinates_box': False, - 'yearly_means_box': False, 'extremes_box': False, 'legend_box': False - } - - def test_humid_period_and_elements_viewing( - self, default_settings, opposite_settings, - data_for_humid_period - ): - for setting, value in opposite_settings.items(): - default_settings[setting] = value - - plotted_figures_before = plt.gcf().number - wl = WalterLieth( - 'POZNAŃ', dataframe=data_for_humid_period, years_range=range(1951, 2020), - lat=52.42, lon=16.83, elevation=92 - ) - wl.draw( - figsize=default_settings['figsize'], language=default_settings['language'], - freeze_rectangles=default_settings['freeze_rectangles'], title_text=default_settings['title_text'], - years_text=default_settings['years_text'], coordinates_box=default_settings['coordinates_box'], - yearly_means_box=default_settings['yearly_means_box'], extremes_box=default_settings['extremes_box'], - legend_box=default_settings['legend_box'] - ) - plotted_figures_after = plt.gcf().number - - assert plotted_figures_before < plotted_figures_after - - def test_dry_period( - self, data_for_humid_period - ): - data_for_dry_period = data_for_humid_period - data_for_dry_period.preci = [0] * 12 - - plotted_figures_before = plt.gcf().number - wl = WalterLieth( - 'POZNAŃ', dataframe=data_for_dry_period, years_range=range(1951, 2020), - lat=52.42, lon=16.83, elevation=92 - ) - wl.draw() - plotted_figures_after = plt.gcf().number - - assert plotted_figures_before < plotted_figures_after - - def test_mixed_all_periods( - self, data_for_humid_period - ): - data_for_mixed_periods = data_for_humid_period - data_for_mixed_periods['preci'] = [110, 70, 50, 40, 30, 20, 0, 0, 20, 30, 70, 110] - - plotted_figures_before = plt.gcf().number - wl = WalterLieth( - 'POZNAŃ', dataframe=data_for_mixed_periods, years_range=range(1951, 2020), - lat=52.42, lon=16.83, elevation=92 - ) - wl.draw() - plotted_figures_after = plt.gcf().number - - assert plotted_figures_before < plotted_figures_after diff --git a/build/lib/cloupy/test/test_unit/test_unittest_wmo.py b/build/lib/cloupy/test/test_unit/test_unittest_wmo.py deleted file mode 100644 index eba1dd3..0000000 --- a/build/lib/cloupy/test/test_unit/test_unittest_wmo.py +++ /dev/null @@ -1,212 +0,0 @@ -from cloupy.scraping import wmo -import pytest -import mock -import builtins - - -class TestReturningWmoidOrCoord: - def test_default_returning_wmoid(self): - with mock.patch.object(builtins, 'input', lambda _: '3'): - assert wmo.get_wmoid_or_coord('PARIS', 'wmo_id') == {'PARIS/LE BOURGET': '7150'} - - with mock.patch.object(builtins, 'input', lambda _: '1'): - assert wmo.get_wmoid_or_coord('LONDON', 'wmo_id') == {'LONDON A': '71623.3'} - - with mock.patch.object(builtins, 'input', lambda _: '0'): - assert wmo.get_wmoid_or_coord('LAS VEGAS', 'wmo_id') == {'LAS VEGAS WWTP': '294.862'} - - with mock.patch.object(builtins, 'input', lambda _: '1'): - assert wmo.get_wmoid_or_coord('SYDNEY', 'wmo_id') == {'SYDNEY AIRPOR': '94767'} - - with mock.patch.object(builtins, 'input', lambda _: '-1'): - assert wmo.get_wmoid_or_coord('BERLIN', 'wmo_id') == {'BERLIN-TEMPEL': '10384'} - - with mock.patch.object(builtins, 'input', lambda _: '0'): - assert wmo.get_wmoid_or_coord('QUITO', 'wmo_id') == {'QUITO/MARISCA': '84071'} - - def test_default_returning_coords(self): - assert wmo.get_wmoid_or_coord('BUENOS AIRES', 'lat') == {'BUENOS AIRES': -34.58} - - assert wmo.get_wmoid_or_coord('CAPETOWN', 'lat') == {'CAPETOWN': -33.9} - - with mock.patch.object(builtins, 'input', lambda _: '0'): - assert wmo.get_wmoid_or_coord('CAIR', 'lon') == {'CAIRO AIRPORT': 31.4} - - assert wmo.get_wmoid_or_coord('MURMANSK', 'lon') == {'MURMANSK': 33.05} - - assert wmo.get_wmoid_or_coord('TOKYO', 'elv') == {'TOKYO': 36.0} - - with mock.patch.object(builtins, 'input', lambda _: '5'): - assert wmo.get_wmoid_or_coord('SRI', 'elv') == {'DIYATALAWA, SRI': 1248.0} - - def test_contains_station_name_arg(self): - assert wmo.get_wmoid_or_coord( - 'PARIS', 'elv', contains_station_name=False - ) == {'PARIS': 165.2} - - with pytest.raises(ValueError): - wmo.get_wmoid_or_coord('LAS VEGAS', 'elv', contains_station_name=False) - - assert wmo.get_wmoid_or_coord( - 'SIDNEY', 'lon', contains_station_name=False - ) == {'SIDNEY': -84.2} - - assert wmo.get_wmoid_or_coord( - 'DIYATALAWA, SRI', 'lon', contains_station_name=False - ) == {'DIYATALAWA, SRI': 81.0} - - assert wmo.get_wmoid_or_coord( - 'POZNAN', 'wmo_id', contains_station_name=False - ) == {'POZNAN': '12330'} - - assert wmo.get_wmoid_or_coord( - 'KOLO', 'wmo_id', contains_station_name=False - ) == {'KOLO': '12345'} - - def test_station_name_is_wmo_id_arg(self): - assert wmo.get_wmoid_or_coord( - 80419, 'elv', station_name_is_wmo_id=True - ) == {'BARCELONA': 7.0} - - assert wmo.get_wmoid_or_coord( - 67775, 'elv', station_name_is_wmo_id=True - ) == {'HARARE': 1480.0} - - assert wmo.get_wmoid_or_coord( - 72386, 'lon', station_name_is_wmo_id=True - ) == {'LAS VEGAS/MCC': -115.17} - - assert wmo.get_wmoid_or_coord( - 10763, 'lon', station_name_is_wmo_id=True - ) == {'NUERNBERG': 11.05} - - assert wmo.get_wmoid_or_coord( - '8220.1', 'lat', station_name_is_wmo_id=True - ) == {'MADRID/RETIRO': 40.4} - - assert wmo.get_wmoid_or_coord( - '325.220', 'lat', station_name_is_wmo_id=True - ) == {'LISBON': 46.45} - - -class TestDataDecoderAndTransposingTable: - def test_wmo_data_decoding_and_table_transposing(self): - data = str( - """ - # climexp_url :: https://climexp.knmi.nl/gettempall.cgi?WMO=12330 - # scripturl01 :: http://climexp.knmi.nl/gettempall.cgi?STATION=POZNAN&WMO=12330&id=$id - # tavg [Celsius] daily mean temperature (unadjusted) from GHCN-M v3.3.0.20190817 - 1951 -0.9 0.4 0.7 7.9 11.8 17.8 18.3 19.5 14.8 6.8 6.5 2.5 - 1952 0.4 -0.2 -1.2 10.3 11.7 15.6 18.1 18.6 11.5 6.7 1.8 -1.9 - 1953 -1.4 -1.1 3.6 10.0 13.7 19.3 19.7 16.8 13.7 10.6 3.7 0.3 - 1954 -5.7 -8.2 2.2 5.3 13.8 19.0 16.2 17.5 14.6 9.0 2.5 2.7 - 1955 -3.5 -3.3 -0.7 5.4 11.0 15.5 18.7 18.7 14.4 8.0 3.4 1.5 - """ - ) - - decoded_data = wmo.decode_downloaded_data(data) - assert decoded_data == [ - ['1951', '-0.9', '0.4', '0.7', '7.9', '11.8', '17.8', '18.3', '19.5', '14.8', '6.8', '6.5', '2.5'], - ['1952', '0.4', '-0.2', '-1.2', '10.3', '11.7', '15.6', '18.1', '18.6', '11.5', '6.7', '1.8', '-1.9'], - ['1953', '-1.4', '-1.1', '3.6', '10.0', '13.7', '19.3', '19.7', '16.8', '13.7', '10.6', '3.7', '0.3'], - ['1954', '-5.7', '-8.2', '2.2', '5.3', '13.8', '19.0', '16.2', '17.5', '14.6', '9.0', '2.5', '2.7'], - ['1955', '-3.5', '-3.3', '-0.7', '5.4', '11.0', '15.5', '18.7', '18.7', '14.4', '8.0', '3.4', '1.5'] - ] - - transposed_table = wmo.transpose_table(decoded_data) - assert transposed_table == [ - ['1951', 1, '-0.9'], ['1951', 2, '0.4'], ['1951', 3, '0.7'], ['1951', 4, '7.9'], - ['1951', 5, '11.8'], ['1951', 6, '17.8'], ['1951', 7, '18.3'], ['1951', 8, '19.5'], - ['1951', 9, '14.8'], ['1951', 10, '6.8'], ['1951', 11, '6.5'], ['1951', 12, '2.5'], - ['1952', 1, '0.4'], ['1952', 2, '-0.2'], ['1952', 3, '-1.2'], ['1952', 4, '10.3'], - ['1952', 5, '11.7'], ['1952', 6, '15.6'], ['1952', 7, '18.1'], ['1952', 8, '18.6'], - ['1952', 9, '11.5'], ['1952', 10, '6.7'], ['1952', 11, '1.8'], ['1952', 12, '-1.9'], - ['1953', 1, '-1.4'], ['1953', 2, '-1.1'], ['1953', 3, '3.6'], ['1953', 4, '10.0'], - ['1953', 5, '13.7'], ['1953', 6, '19.3'], ['1953', 7, '19.7'], ['1953', 8, '16.8'], - ['1953', 9, '13.7'], ['1953', 10, '10.6'], ['1953', 11, '3.7'], ['1953', 12, '0.3'], - ['1954', 1, '-5.7'], ['1954', 2, '-8.2'], ['1954', 3, '2.2'], ['1954', 4, '5.3'], - ['1954', 5, '13.8'], ['1954', 6, '19.0'], ['1954', 7, '16.2'], ['1954', 8, '17.5'], - ['1954', 9, '14.6'], ['1954', 10, '9.0'], ['1954', 11, '2.5'], ['1954', 12, '2.7'], - ['1955', 1, '-3.5'], ['1955', 2, '-3.3'], ['1955', 3, '-0.7'], ['1955', 4, '5.4'], - ['1955', 5, '11.0'], ['1955', 6, '15.5'], ['1955', 7, '18.7'], ['1955', 8, '18.7'], - ['1955', 9, '14.4'], ['1955', 10, '8.0'], ['1955', 11, '3.4'], ['1955', 12, '1.5'] - ] - - -class TestLookingForTheNearestStation: - def test_default_settings(self): - assert wmo.search_for_the_nearest_station( - lat=50, lon=-100 - ).to_dict() == { - 'country': {2431: 'CANADA', 2432: 'CANADA', 2434: 'CANADA'}, - 'station': {2431: 'BRANDON, MAN.', 2432: 'ST ALBANS', 2434: 'MINNEDOSA, MA'}, - 'wmo_id': {2431: '71140', 2432: '71140.1', 2434: '71140.3'}, - 'lat': {2431: 49.92, 2432: 49.7, 2434: 50.27}, - 'lon': {2431: -99.95, 2432: -99.6, 2434: -99.83}, - 'elv': {2431: 409.0, 2432: 360.0, 2434: 521.0} - } - - def test_other_degrees_range_arg(self): - assert wmo.search_for_the_nearest_station( - lat=45.9, lon=103.2, degrees_range=1 - ).to_dict() == { - 'country': {1507: 'MONGOLIA', 1527: 'MONGOLIA'}, - 'station': {1507: 'ARVAIHEER', 1527: 'SAIKHAN-OVOO'}, - 'wmo_id': {1507: '44288', 1527: '44336'}, - 'lat': {1507: 46.27, 1527: 45.45}, - 'lon': {1507: 102.78, 1527: 103.9}, - 'elv': {1507: 1813.0, 1527: 1316.0} - } - - -class TestConcatenatingDataframes: - def test_concatenating(self): - data = [ - [['year', 'month', 'temp'], ['2017', 1, '-2.2'], - ['2017', 2, '0.6'], ['2017', 3, '6.8'], ['2017', 4, '7.7'], - ['2017', 5, '14.2'], ['2017', 6, '18.1'], ['2017', 7, '18.6'], - ['2017', 8, '19.2'], ['2017', 9, '13.7'], ['2017', 10, '11.0'], - ['2017', 11, '5.5'], ['2017', 12, '2.9'], ['2018', 1, '2.2'], - ['2018', 2, '-2.6'], ['2018', 3, '1.1'], ['2018', 4, '13.1'], - ['2018', 5, '17.9'], ['2018', 6, '19.4'], ['2018', 7, '20.9'], - ['2018', 8, '21.7'], ['2018', 9, '16.0'], ['2018', 10, '11.0'], - ['2018', 11, '5.2'], ['2018', 12, '2.8'], ['2019', 1, '-0.2'], - ['2019', 2, '3.4'], ['2019', 3, '6.4'], ['2019', 4, '10.9'], - ['2019', 5, '12.4'], ['2019', 6, '23.3'], ['2019', 7, '2'], - ['2019', 8, '2'], ['2019', 9, '2'], ['2019', 10, '2'], - ['2019', 11, '2'], ['2019', 12, '2']], - [['year', 'month', 'temp'], ['2017', 1, '-2.2'], - ['2017', 2, '0.6'], ['2017', 3, '6.8'], ['2017', 4, '7.7'], - ['2017', 5, '14.2'], ['2017', 6, '18.1'], ['2017', 7, '18.6'], - ['2017', 8, '19.2'], ['2017', 9, '13.7'], ['2017', 10, '11.0'], - ['2017', 11, '5.5'], ['2017', 12, '2.9'], ['2018', 1, '2.2'], - ['2018', 2, '-2.6'], ['2018', 3, '1.1'], ['2018', 4, '13.1'], - ['2018', 5, '17.9'], ['2018', 6, '19.4'], ['2018', 7, '20.9'], - ['2018', 8, '21.7'], ['2018', 9, '16.0'], ['2018', 10, '11.0'], - ['2018', 11, '5.2'], ['2018', 12, '2.8'], ['2019', 1, '-0.2'], - ['2019', 2, '3.4'], ['2019', 3, '6.4'], ['2019', 4, '10.9'], - ['2019', 5, '12.4'], ['2019', 6, '23.3'], ['2019', 7, '2'], - ['2019', 8, '2'], ['2019', 9, '2'], ['2019', 10, '2'], - ['2019', 11, '2'], ['2019', 12, '2']] - ] - - concatenated_data = wmo.concatenate_dfs(data) - assert concatenated_data.to_dict() == { - 'year': {0: 2017, 1: 2017, 2: 2017, 3: 2017, 4: 2017, 5: 2017, - 6: 2017, 7: 2017, 8: 2017, 9: 2017, 10: 2017, 11: 2017, - 12: 2018, 13: 2018, 14: 2018, 15: 2018, 16: 2018, 17: 2018, - 18: 2018, 19: 2018, 20: 2018, 21: 2018, 22: 2018, 23: 2018, - 24: 2019, 25: 2019, 26: 2019, 27: 2019, 28: 2019, 29: 2019, - 30: 2019, 31: 2019, 32: 2019, 33: 2019, 34: 2019, 35: 2019}, - 'month': {0: 1, 1: 2, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10, - 10: 11, 11: 12, 12: 1, 13: 2, 14: 3, 15: 4, 16: 5, 17: 6, - 18: 7, 19: 8, 20: 9, 21: 10, 22: 11, 23: 12, 24: 1, 25: 2, - 26: 3, 27: 4, 28: 5, 29: 6, 30: 7, 31: 8, 32: 9, 33: 10, - 34: 11, 35: 12}, - 'temp': {0: -2.2, 1: 0.6, 2: 6.8, 3: 7.7, 4: 14.2, 5: 18.1, 6: 18.6, - 7: 19.2, 8: 13.7, 9: 11.0, 10: 5.5, 11: 2.9, 12: 2.2, - 13: -2.6, 14: 1.1, 15: 13.1, 16: 17.9, 17: 19.4, 18: 20.9, - 19: 21.7, 20: 16.0, 21: 11.0, 22: 5.2, 23: 2.8, 24: -0.2, - 25: 3.4, 26: 6.4, 27: 10.9, 28: 12.4, 29: 23.3, 30: 2.0, - 31: 2.0, 32: 2.0, 33: 2.0, 34: 2.0, 35: 2.0} - } diff --git a/cloupy.egg-info/PKG-INFO b/cloupy.egg-info/PKG-INFO deleted file mode 100644 index 2c7d545..0000000 --- a/cloupy.egg-info/PKG-INFO +++ /dev/null @@ -1,676 +0,0 @@ -Metadata-Version: 2.1 -Name: cloupy -Version: 2.0.0 -Summary: The package allows to download, process and visualize climatological data from reliable sources -Home-page: https://github.com/pdGruby/cloupy -Author: Kamil Grala -Author-email: kamil.grala32466@gmail.com -License: MIT -Classifier: Development Status :: 5 - Production/Stable -Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.8 -Classifier: Programming Language :: Python :: 3.9 -Classifier: Programming Language :: Python :: 3.10 -Classifier: Operating System :: Microsoft :: Windows :: Windows 10 -Classifier: Operating System :: POSIX :: Linux -Classifier: Intended Audience :: Education -Classifier: Intended Audience :: Science/Research -Classifier: Framework :: Matplotlib -Classifier: Topic :: Scientific/Engineering :: GIS -Classifier: Topic :: Scientific/Engineering :: Atmospheric Science -Classifier: Topic :: Scientific/Engineering :: Visualization -Description-Content-Type: text/markdown -License-File: LICENSE.md - -# The cloupy package is NO LONGER SUPPORTED. - -Due to unmaintainable code and numerous outdated functionalities, **development and maintenance of the cloupy package -have been discontinued.** - -**If you installed the cloupy package to create interpolation maps, there is a much better tool available:** -`https://pypi.org/project/geokrige/`. [This section](https://geokrige.readthedocs.io/latest/using_geokrige_with_geopandas/) -of the documentation may be especially helpful. - -Significant changes have been made to the data sources from which the cloupy package downloads data, rendering cloupy -tools potentially dysfunctional. - -The only components that are relatively up-to-date are the Walter-Lieth diagrams. - - -

- -

- -cloupy is a Python package for climatological data downloading, processing and visualizing. The main goal of the package is to help its author in writing a BA thesis. The package is well adapted to academic work - used data sources are reliable and graphs are easy to modify. What's more, cloupy is intuitive and really easy to use, so even users who are not related to the climatological environment should have no problems with the package usage. - -![python](https://img.shields.io/badge/Python-14354C?style=for-the-badge&logo=python&logoColor=white) -![windows](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white) -![ubuntu](https://img.shields.io/badge/Ubuntu-E95420?style=for-the-badge&logo=ubuntu&logoColor=white) - -![downloads](https://static.pepy.tech/personalized-badge/cloupy?period=total&units=international_system&left_color=grey&right_color=green&left_text=Downloads) -![maintained](https://img.shields.io/badge/Maintained%3F-no-red.svg) -![last_commit](https://img.shields.io/github/last-commit/pdgruby/cloupy) - -![license](https://img.shields.io/github/license/pdgruby/cloupy) -[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.5879964.svg)](https://doi.org/10.5281/zenodo.5879964) - -# Installation - -Run the following command on the command line: - -**Windows:** -```bash -pip install cloupy -``` - -**Linux:** -```bash -pip3 install cloupy -``` - -# Usage/Examples - -**This is just a demonstration of the cloupy functionality and some (in my opinion the most important) features** of the functions/classes. However, every function and class has many arguments which are not used in this tutorial, so **check the docstrings to see all features** - -#### Table of contents -1. [Data downloading and processing](#data_downloading) - - a. [Download climatological data from the IMGW database](#data_downloading_imgw) - - b. [Download specific climatological elements from the IMGW database](#data_downloading_specific_elements_imgw) - - c. [Useful functions for working with the IMGW database](#data_downloading_useful_imgw) - - d. [Download climatological data from the WMO database](#data_downloading_wmo) - - e. [Useful functions for working with the WMO database](#data_downloading_useful_wmo) - - f. [Check data continuity](#data_processing_check_continuity) - -2. [Maps](#maps_drawing) - - a. [Exemplary interpolation map](#maps_exemplary) - - b. [The same exemplary map, but without setting the map style and data filtering](#maps_exemplary_no_levels_no_data_filtering) - - c. [Zoom a map to a specific location, show the difference between default style and retro style](#maps_zooming_and_styles) - - d. [Draw a map from the manually provided data, select a non-default shapefile to draw borders of the country, plot additional shapes from an additional shapefile](#maps_manually_data_and_nondefault_shapes) - - e. [Import the data for drawing the interpolation map from the global dataframe and draw multi-country map. Zoom to a specific area without changing the extrapolation points](#maps_multicountry) - -3. [Graphs](#graphs_drawing) - - a. [Download climatological data for the station in Poznań (WMO ID: 12330) from the IMGW and draw a Walter-Lieth diagram](#graphs_imgw) - - b. [Download climatological data for the station in Harare (WMO ID: 67775) from the WMO database](#graphs_wmo) - - c. [Download data, set as global dataframe and draw a Walter-Lieth diagram based on the global dataframe](#graphs_global_dataframe) - - d. [The graph style that better fits a scientific article](#graphs_styles) - - e. [Select which graph elements are to be drawn](#graphs_selecting_elements) - - f. [Provide drawing data manually](#graphs_manually_data) - -**See also [recap of the drawing process](#drawing_process_recap) and [brief documentation](#brief_documentation)** - -## Data downloading and processing - -### Download climatological data from the [IMGW database](https://s://danepubliczne.imgw.pl/data/dane_pomiarowo_obserwacyjne/) -Use the `d_imgw_data()` function to download the data from the IMGW database. In the code below, the data will be downloaded from the synoptic stations of the IMGW database. In this case, the selected data interval is monthly, the data string starts in 1966 and ends in 2020. The coordinates will be added to the stations in the downloaded data: -```python -import cloupy as cl - -data = cl.d_imgw_data(interval='monthly', stations_kind='synop', years_range=range(1966, 2021), return_coordinates=True) -``` - -### Download specific climatological elements from the [IMGW database](https://danepubliczne.imgw.pl/data/dane_pomiarowo_obserwacyjne/) -You can specify which climatological elements from the IMGW database will be downloaded by setting the `keywords` argument of the `d_imgw_data()` function. The `keywords` argument must be a single string or a list of strings. If the given string is in a column name, the column will be added to the dataframe that will be returned. In the example below, the returned dataframe will contain the columns whose names contain the given words ('temperatura' means temperature, 'opad' means precipitation): - -```python -import cloupy as cl - -data = cl.d_imgw_data( - interval='monthly', stations_kind='synop', years_range=range(1966, 2021), - keywords=['temperatura', 'opad'] # the function is not case-sensitive (try: ['tEmPeRaTURA', 'oPad']) -) -``` - -### Useful functions for working with the [IMGW database](https://danepubliczne.imgw.pl/data/dane_pomiarowo_obserwacyjne/) -See available file formats from the IMGW database for the given arguments: -```python -import cloupy as cl - -cl.i_imgw_get_file_formats(interval='monthly', stations_kind='climat', file_format_index='all') -``` - -See column names in the given file format, see column names in all file formats, search for a keyword in all file formats: -```python -# column names in the 's_m_d' file format (monthly interval, synoptic station, the first file format from the available file formats) -colnames_in_sdt = cl.i_imgw_search_keywords_in_columns(keywords='', file_format='s_m_d') - -# column names in all file formats (if the 'file_format' argument is None, then search in every file format) -colnames_in_all = cl.i_imgw_search_keywords_in_columns(keywords='', file_format=None) - -# search for a keyword in all file formats -keywords_in_all = cl.i_imgw_search_keywords_in_columns(keywords='temperatura', file_format=None) -``` - -### Download climatological data from the [WMO database](http://climexp.knmi.nl/start.cgi?id=someone@somewhere) -You can download data from the WMO database for a single station or for an entire country. If you would like to download the data for a single station, pass the station name (usually the city where the station is located) to the `station_name` argument. If you would like to download the data for an entire country, pass the country name prefixed with `cou` to the `station_name` argument (e.g. 'couGERMANY'). There are 5 elements that can be downloaded: mean air temperature ('mean'), precipitation ('preci'), minimum air temperature ('min_temp'), maximum air temperature ('max_temp') and sea level pressure ('sl_press'). To specify which element you would like to download, pass a single string or a list of strings to the `elements_to_scrape` argument: -```python -import cloupy as cl - -single_station = cl.d_wmo_data(station_name='POZNAN', elements_to_scrape=['temp', 'preci', 'sl_press']) -entire_country = cl.d_wmo_data(station_name='couUnited Arab Emirates', elements_to_scrape='temp', return_coordinates=True) -``` - -### Useful functions for working with the [WMO database](http://climexp.knmi.nl/start.cgi?id=someone@somewhere) -You can see all available station and country names with the `cl.i_wmo_get_stations()` function: -```python -import cloupy as cl - -info_df = cl.i_wmo_get_stations() -``` - -You can search for the nearest stations to the specified points with the `cl.i_wmo_search_near_station()` function: -```python -import cloupy as cl - -close_to_london = cl.i_wmo_search_near_station(lon=0, lat=51) -higher_acceptable_distance = cl.i_wmo_search_near_station(lon=0, lat=51, degrees_range=3) -``` - -### Check data continuity -With the `cl.check_data_continuity()` function you can remove all stations that do not have satisfactory data continuity. The function will group a dataframe by unique values, count number of records for every single station and remove all stations that have too few number of records: -```python -import cloupy as cl - -df = cl.d_imgw_data(interval='monthly', stations_kind='synop', years_range=range(1966, 2021)) -df = cl.check_data_continuity(df=df, main_column=0, precision=1) -``` -In the example above, the `check_data_continuity()` groups the dataframe by the unique values in the first column (0 is the index of the dataframe columns), counts the number of records for each station, takes the highest number of records (high_records) and removes stations with the number of records less than the high_records. The `precision` argument is set to 1, which means that the required number of records to keep a station is equal to 1 * high_records (if high_records is 1000, then the station must have 1000 records to be kept). If the `precision` argument was 0.5, then the required number of records to keep a station would be equal to 0.5 * high_records (if high_records is 1000, then the station must have at least 500 records to be kept) - -## Maps - -### Exemplary interpolation map -```python -import cloupy as cl -import numpy as np - -imap = cl.m_MapInterpolation(country='POLAND') - -imap.d_imgw_data( - years_range=range(1966, 2021), - column_with_values='temp', - check_continuity=True, - continuity_precision=1 -) -imap.dataframe = imap.dataframe[imap.dataframe.iloc[:, 0] > 5] # filter the dataframe to exclude - # alpine stations that negatively - # affect the interpolation result - -imap.draw( - levels=np.arange(5, 10.01, 0.05), # (start, end, step) - show_contours=True, - contours_levels=[5, 6, 7, 8, 9, 10], - clabels_add=[ - (17.5, 54), - (19.8, 53.5), - (23, 54), - (21, 50.8), - (17, 50.8), - (15, 53), - (15.5, 51.1), - (20, 49.5) - ], - cbar_ticks=[5, 6, 7, 8, 9, 10], - cbar_title='Air temperature [°C]', - title='Fig. N. Spatial layout of the mean temperature in Poland\n(1966-2020)', - title_ha='center', - title_x_position=0.5, - save='air_temperature_poland.png' -) -``` -

- -

- -### The same exemplary map, but without setting the map style and data filtering - -**Note that** in the above code the most of the arguments are not necessary and are only optional for setting the map style - the code for drawing may be significantly shorter. However, in this case the map style may not be satisfactory and not filtered data may affect negatively the interpolation result: - -```python -import cloupy as cl - -# The map based on the same dataset, but without data filtering and style setting -imap = cl.m_MapInterpolation(country='POLAND') -imap.d_imgw_data(years_range=range(1966, 2021), column_with_values='temp') -imap.draw(save='ugly_map.png') - -# The 'save' argument does not have to be specified either - the map will be displayed in your app with -# a lower DPI value, so the quality of the image may be poor. When the map is being saved, the DPI -# value is higher, so the image quality is much better. Different DPIs are used to enhance the -# work - lower DPI makes the map creation process much faster, so it is used to preview the map -``` - -

- -

- -**In the figure on the left, no levels were specified and no data was filtered. In the figure on the right, the data was not filtered** (alpine stations were still in the dataset, stations with poor data continuity were also in the dataset), **but the levels were specified by passing `levels=np.arange(5, 10.5, 0.5)` to the `imap.draw()` method.** The red spots in the lower parts of the map are the result of the alpine stations in the dataset - due to the significantly deviated values, the interpolation effect is somewhat distorted. The values inside the red spots are much higher than 12°C, so they are not within the specified levels, which would result in the appearance of white spots. However, to the `imap.draw()` method another argument was passed to force the interpolation process to interpolate within the given levels - `interpolation_within_levels=True`. When the `interpolation_within_levels` is set to True, the white spots are replaced with the lowest or highest color level (depending on whether the values are below the specified levels or above the specified levels) - -Data filtering is not always necessary, but specifying manually levels is almost always necessary! Nevertheless, to get high-quality interpolation effect, **it is recommended to always check the dataset and specify the interpolation levels** - -### Zoom a map to a specific location, show the difference between default style and retro style - -Sometimes you may want to highlight a specific region of a country and it is possible by passing the `zoom_in` argument to the `imap.draw()` method. This argument is also handy when you are working with a country that has overseas territories (e.g. France) and would like to show only a specific part of the country - -The `zoom_in` argument accepts a list of tuples where the first tuple holds the x-values to which the view will be adjusted, and the second tuple holds the y-values to which the view will be adjusted, e.g. `zoom_in=[(16, 18), (50, 51)]` will zoom into the region of Poland that is located between 16 and 18 degree of the east longitude and between 50 and 51 degree of the north latitude - -The exemplary maps of France with the `zoom_in` argument in the default and retro styles: - -```python -import cloupy as cl -import numpy as np -import matplotlib.pyplot as plt - -# create the interpolation map class and prepare the data -imap=cl.m_MapInterpolation('FRANCE') -imap.d_wmo_data('couFRANCE', 'temp', check_continuity=True) -imap.dataframe = imap.dataframe[imap.dataframe.iloc[:, 0] > 9] # remove alpine stations - -# set the style, modify the map, draw -styles = ['default', 'retro'] -for style in styles: - - cl.set_diagStyle(style) # set global style for cloupy - - imap.draw( - zoom_in=[(-5.5, 10), (41, 51.5)], # zoom into the european part of France - levels=np.arange(9.4, 16.5, 0.2), - show_grid=True, - show_contours=True, - contours_levels=np.arange(6, 16, 1), - clabels_add=[ - (5, 49), - (3, 47), - (2.5, 45.3), - (2, 44), - (2, 43), - (6.7, 43.8) - ], - clabels_inline_spacing=-7, - xticks=np.arange(-4, 9, 2), - cbar_ticks=np.arange(9, 17, 1), - cbar_title='Air temperature [°C]', - title=f'Fig. N. Spatial layout of the mean temperature in France\n({style} style)', - save=f'france_mean_temperature_layout_{style}.png' - ) - -# merge the maps -fig, (ax1, ax2) = plt.subplots(nrows=1, ncols=2, figsize=(8, 4)) -ax1.axis('off') -ax2.axis('off') - -img1 = plt.imread('france_mean_temperature_layout_default.png') -img2 = plt.imread('france_mean_temperature_layout_retro.png') - -ax1.imshow(img1) -ax2.imshow(img2) - -plt.subplots_adjust(wspace=-0.3) -plt.savefig('france_styles_comp.png', - dpi=300, bbox_inches='tight', - pad_inches=0.05, facecolor='white' - ) -``` - -

- -

- -In this case, if the `zoom_in` argument was not specified, the maps would be completely indecipherable. This is due to the overseas territories of France which affects negatively the interpolation process and the default map zooming (by default the map is being zoomed into the extreme points of the shapefile): - -

- -

- -### Draw a map from the manually provided data, select a non-default shapefile to draw borders of the country, plot additional shapes from an additional shapefile -The country borders do not have to be drawn from the default cloupy shapefile - you can provide your own non-default shapefile by passing its path to the `shapefile_path` argument of the `cl.m_MapInterpolation()` class - -What is more, it is also possible to draw additional shapes (e.g. states, voivodeships, rivers, lakes) by passing a dictionary to the `add_shapes` argument of the `imap.draw()` method. The dictionary keys must be shapes' paths and the dictionary values must be style/coordinates system set arguments. The dictionary values must be a single `str` in which arguments are separated by commas, e.g.: -```python -add_shapes={ - 'path/to/the/shapefile': 'crs=epsg:4326, linestyle=solid, linewidth=0.5', - 'path/to/another/shapefile': 'crs=epsg:2180,color=red,fill_color=blue' -} -``` - -The data for a map can be provided manually by passing a `pandas.DataFrame()` object to the `dataframe` argument of the `cl.m_MapInterpolation()`: -```python -import cloupy as cl - -df = cl.d_imgw_data( - interval='monthly', stations_kind='synop', - years_range=range(1966, 2021), return_coordinates=True -) - -df = df.iloc[:, [1, 12, -3, -2]] # remove unnecessary columns from the data -df = cl.check_data_continuity(df=df, main_column=0, precision=1) # check data continuity -df = df.groupby('Nazwa stacji').mean() # calc the mean values for the stations -df = df[df.iloc[:, 0] > 5] # remove alpine stations which deviates significantly from the rest -``` - -When the dataframe meets the required data structure (see `cl.m_MapInterpolation` docs for more detailed information) for the interpolation map, it can be passed to the `cl.m_MapInterpolation()` class. So, if you want to provide the data manually, draw non-default borders and additional shapes, the code will look like this: -```python -import numpy as np - -imap = cl.m_MapInterpolation( - shapefile_path='path/to/shapefile', # specify the path to your non-default shapefile - crs='epsg:4326', # specify the shapefile coordinates system - dataframe=df # pass manually the dataframe -) - -imap.draw( - levels=np.arange(5, 10.2, 0.2), - add_shape={ - 'path/to/addit/shapefile': 'crs=epsg:4326, linewidth=0.5, linestyle=solid, color=black' - }, # specify the path to the additional shapefile (as key) and its settings (as value) - show_coordinates=False, - show_frame=False, - cbar_ticks=np.arange(5, 11, 1), - cbar_title='Air temperature [°C]', - title='Fig. N. Spatial layout of the mean temperature in Poland.', - title_y_position=0.15, - save='non-default_borders_and_additional_shp.png' -) -``` - -

- -

- -For the above map, the shapefiles were downloaded from the **[GADM website](https://gadm.org/download_country.html)** under **[GADM license](https://gadm.org/license.html)**. - -### Import the data for drawing the interpolation map from the global dataframe and draw multi-country map. Zoom to a specific area without changing the extrapolation points -```python -import cloupy as cl -import pandas as pd -import numpy as np - -countries = ['ITALY', 'SWITZERLAND'] -global_df = pd.DataFrame(columns=['station', 'year', 'month', 'temp', 'lon', 'lat', 'elv']) -for country in countries: - data_for_country = cl.d_wmo_data( - station_name='cou' + country, - elements_to_scrape='temp', - return_coordinates=True - ) - global_df = global_df.append(data_for_country) - -cl.set_global_df(global_df) -imap = cl.m_MapInterpolation(country=countries) -imap.import_global_df( - columns_order=[0, 3, 4, 5], - check_continuity=True, - continuity_precision=0.2 -) - -# in this case, there is no need to remove the alpine stations (they are significantly relevant) -imap.draw( - levels=np.arange(-5, 20.5, 0.5), - cmap='coolwarm', - save='multiple_countries.png' -) -``` -

- -

- -If you wished to take a closer look at the situation on the Italian-Swiss border, you could use the `zoom_in` argument of the `imap.draw()` method. You may notice some slight differences in the colors' layout between the map before zooming in and the map after zooming in. The differences result from different extrapolation points, which are always in the corners of the plot (when you zoom into a specific area, it means that you change the corner points of the plot, which affects the extrapolation result). **You can force the `imap.draw()` method to extrapolate the values to the points of the original plot (before zooming) by setting the `extrapolation_into_zoomed_area` argument to False:** - -```python -import matplotlib.pyplot as plt - -# draw maps (1 = True, 0 = False) -for boolean in [1, 0]: - imap.draw( - levels=np.arange(-5, 20.5, 0.5), - cmap='coolwarm', - zoom_in=[(5, 12), (45, 48)], - extrapolation_into_zoomed_area=boolean, - figsize=(5, 2.5), - title=f'extrapolation_into_zoomed_area={boolean}', - title_ha='center', - title_x_position=0.5, - title_y_position=0, - title_bold=True, - save=f'multiple_countries_zoomed_in_{boolean}.png' - ) - -# merge the maps -fig, (ax1, ax2) = plt.subplots(nrows=2, ncols=1, figsize=(4, 8)) -ax1.axis('off') -ax2.axis('off') - -img1 = plt.imread('multiple_countries_zoomed_in_1.png') -img2 = plt.imread('multiple_countries_zoomed_in_0.png') - -ax1.imshow(img1) -ax2.imshow(img2) - -plt.subplots_adjust(hspace=-0.5) -plt.savefig('multpile_countries_extr_into_comp.png', - dpi=300, bbox_inches='tight', - pad_inches=0.05, facecolor='white' - ) -``` -

- -

- -As you can see, the slight differences are noticeable in the color layout. The `extrapolation_into_zoomed_area` argument must be set to True if the `zoom_in` argument is used for zooming into a specific part of the country that has overseas territories (like in the example of France above). If the `extrapolation_into_zoomed_area` argument was set to False in the case of France, the method would extrapolate values to the corners of the original plot (the plot before zooming, so the interpolation result in the European France would be completely distorted). In the case of Italy and Switzerland, some slight differences are noticeable, but these differences are still acceptable. However, **if you want to zoom into a specific part of the map with preserving the original color/contours layout, you can set the `extrapolation_into_zoomed_area` argument to False** - -## Graphs - -### Download climatological data for the station in Poznań (WMO ID: 12330) from the [IMGW database](https://danepubliczne.imgw.pl/data/dane_pomiarowo_obserwacyjne/) and draw a Walter-Lieth diagram -```python -import cloupy as cl - -wl = cl.g_WalterLieth(station_name='POZNAŃ') -wl.d_imgw_data(years_range=range(1966, 2020)) -wl.draw() -``` - -

- -

- -### Download climatological data for the station in Harare (WMO ID: 67775) from the [WMO database](http://climexp.knmi.nl/start.cgi?id=someone@somewhere) and draw a Walter-Lieth diagram -```python -import cloupy as cl - -wl = cl.g_WalterLieth(station_name='HARARE') -wl.d_wmo_data() -wl.draw() -``` - -

- -

- -### Download data, set as global dataframe and draw a Walter-Lieth diagram based on the global dataframe -```python -import cloupy as cl - -global_df = cl.d_imgw_data( - interval='monthly', - stations_kind='synop', - years_range=range(1966, 2020) - ) -cl.set_global_df(global_df) - -wl = cl.g_WalterLieth('WARSZAWA') -wl.import_global_df(columns_order='imgw_monthly') -wl.draw() -``` - -

- -

- -### The graph style that better fits a scientific article -```python -cl.set_diagStyle('retro') -wl.draw() -``` -

- -

- -### Select which graph elements are to be drawn - -As you can see, the graph for POZNAŃ displays information about the coordinates, while the graphs for WARSZAWA do not. The coordinates for POZNAŃ are automatically imported when the `wl.d_imgw_data()` method is used. However, when we import data from the global dataframe for WARSZAWA, the `wl.import_global_df()` method does not add coordinates automatically and the coordinates have to be added manually when the `cl.g_WalterLieth()` object is being created. In our case, for the graph for WARSZAWA it would be: - -```python -wl = cl.g_WalterLieth(station_name='WARSZAWA', lat=52.2, lon=21.0, elevation=100) -``` - -Now the `wl.draw()` method will display the coordinates box. So, **if the `cl.g_WalterLieth()` object does not find the unnecessary data, it will just simply not display missing values**. What is more, **you can manually decide which elements on the graph are to be drawn** - -**The `wl.draw()` method takes several arguments that let you decide which element on the graph will be displayed**. For example, if you do not want to display the title (which actually is the station name), the yearly means box and the bottom freeze rectangles, you have to pass the following arguments to the `wl.draw()` method: -```python -wl.draw(title_text=False, yearly_means_box=False, freeze_rectangles=False) -``` - -### Provide drawing data manually - -cloupy graphs can be drawn from the data provided manually. Every graph has its required data structure which must be preserved in the `pandas.DataFrame()` object. For a Walter-Lieth graph, the `pandas.DataFrame()` object must contain 5 or 6 columns, depending on the data interval (5 for a monthly interval, 6 for a daily interval). Data can be passed to the `dataframe` argument in the `cl.g_WalterLieth()` object. For example, the process might look like this: - -```python -import cloupy as cl -import pandas as pd - -data = pd.DataFrame( - { - 'months': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], - 'temp': [-2, -1, 0, 7, 15, 18, 19, 20, 18, 14, 8, 3], - 'preci': [50, 25, 55, 60, 70, 80, 90, 80, 68, 50, 45, 49], - 'max_temp': [10, 15, 17, 18, 19, 20, 35, 34, 25, 20, 15, 10], - 'min_temp': [-36, -29, -20, -15, -5, -1, 1, 2, -1, -4, -18, -22] - } -) -wl = cl.g_WalterLieth(station_name='TEST', dataframe=data) -wl.draw() -``` - -**More detailed information on the required data structure is available in the graphs classes docstrings** - -# Recap of the drawing process -**cloupy drawing system is easy and can be summarized as follows:** -- create a graph/map class, provide data for further processing and drawing (follow required data structure) -- optionally, use the graph/map class methods to download and process data -- use the `draw()` method to specify the graph/map style - -# Brief Documentation (the most important functions and classes) - -**DATA PROCESSING FUNCTIONS/CLASSES** - -- `check_data_continuity` -> check data continuity and return a dataframe with the filtered values -- `set_global_df(...)` -> set global data frame from which data can be imported in any time -- `read_global_df(...)` -> return the global data frame as pandas.DataFrame - -**DATA SCRAPING FUNCTIONS** - -- `d_imgw_data(...)` -> download IMGW data files from the IMGW database and return it as one merged pd.DataFrame -- `i_imgw_get_file_formats(...)` -> return the available file formats for the given 'interval' and 'stations_kind' in the IMGW database (different file formats contain different data) -- `i_imgw_search_keywords_in_columns(...)` -> search for the given keywords in the column names and return a dictionary with the file formats in which the keywords were found -- `d_wmo_data(...)` -> download climatological data for specified station/stations from the WMO website -- `i_wmo_get_stations(...)` -> return pandas.DataFrame with WMO stations information (WMO ids, coordinates, etc.) -- `i_wmo_search_near_station(...)` -> return the nearest stations from WMO database for the given coordinates - - -**DATA VISUALIZATION FUNCTIONS** - -- `set_diagStyle(...)` -> choose global style for diagrams -- `change_diagStyle_params(...)` -> change global parameters for drawing diagrams - -**DATA VISUALIZATION CLASSES** - -**Note that** every class for drawing diagrams contains some of the above functions as its methods (for data scraping and processing) - -- `m_MapInterpolation(...)` -> create a MapInterpolation class where the data for drawing an interpolation map can be downloaded, modified, manually provided -- `g_WalterLieth(...)` -> create a WalterLieth object where the data for drawing a Walter-Lieth diagram can be downloaded, modified, manually provided - -**More detailed documentation for every function, class and method is available in the cloupy's Python files** - -# Future Features - -- more climatological data processing functions (e.g. completing missing data) -- more climatological graphs - -# Dependencies -**Packages/libraries**: -- [Pandas](https://pandas.pydata.org) version: 1.1.4; 1.3.5 or higher -- [Matplotlib](https://matplotlib.org) version: 3.3.2; 3.4.3 or higher -- [Requests](https://requests.readthedocs.io) version: 2.24.0; 2.26.0 or higher -- [bs4](https://beautiful-soup-4.readthedocs.io/en/latest/) version: 4.9.3 or higher -- [pyshp](https://pypi.org/project/pyshp/) version: 2.1.3 -- [pyproj](https://pyproj4.github.io/pyproj/stable/) version: 3.2.1 or higher -- [scipy](https://scipy.org) version: 1.7.2 or higher -- [Numpy](https://www.numpy.org) version: 1.19.4; 1.21.4 or higher -- [Pillow](https://pillow.readthedocs.io/en/stable/installation.html) version: 8.4.0 or higher -- [cycler](https://pypi.org/project/cycler/) version: 0.11.0 -- [Pytest](https://docs.pytest.org/en/latest/) version: 6.2.5 or higher (only for running tests) -- [Mock](http://mock.readthedocs.org/en/latest/) version: 4.0.3 or higher (only for running tests) - -**Python version**: 3.8.2; 3.9.6, 3.10.2 - -**OS**: Windows; Linux - -All the above versions of packages/Python have been tested. **Note that** cloupy should also be compatible with the versions between mentioned (e.g. cloupy should work fine on any Pandas' version between 1.1.4 and 1.3.5; any Python version between 3.8.2 and 3.9.6). However, it has not been tested and **it is recommended to use the most recent version of the packages/libraries and Python**. - -# Running Tests - -To run tests, run the following command from the root directory: - -```bash -# change directory to the cloupy root directory, for example: -cd c:\Python\Lib\site-packages\cloupy - -python -m pytest -``` - -If you want to run only unit/integration testing: - -```bash -python -m pytest test\test_unit - -python -m pytest test\test_integration -``` - -**Note that** the integration testing may take some time (during the process, data downloading functions are being tested, so duration depends on several factors). The process usually takes about 9-10 minutes - -**If you want to skip data downloading tests, run the following command:** -```bash -python -m pytest -k "not downloading" -``` - -# Support - -For support, please contact me via email: kamil.grala32466@gmail.com - -If you want to report a bug, see `CONTRIBUTING.md` - - -# License - -cloupy is licensed under [MIT](https://choosealicense.com/licenses/mit/). - - -# Author - -[@Kamil Grala](https://github.com/pdGruby) - diff --git a/cloupy.egg-info/SOURCES.txt b/cloupy.egg-info/SOURCES.txt deleted file mode 100644 index f61a117..0000000 --- a/cloupy.egg-info/SOURCES.txt +++ /dev/null @@ -1,32 +0,0 @@ -LICENSE.md -README.md -setup.py -cloupy/__init__.py -cloupy.egg-info/PKG-INFO -cloupy.egg-info/SOURCES.txt -cloupy.egg-info/dependency_links.txt -cloupy.egg-info/requires.txt -cloupy.egg-info/top_level.txt -cloupy/data_processing/check_data_continuity.py -cloupy/diagrams/walter_lieth.py -cloupy/maps/draw_shapes.py -cloupy/maps/interpolation_map.py -cloupy/maps/world/ne_50m_admin_0_countries.cpg -cloupy/maps/world/ne_50m_admin_0_countries.dbf -cloupy/maps/world/ne_50m_admin_0_countries.prj -cloupy/maps/world/ne_50m_admin_0_countries.shp -cloupy/maps/world/ne_50m_admin_0_countries.shx -cloupy/scraping/imgw.py -cloupy/scraping/imgw_coordinates.csv -cloupy/scraping/wmo.py -cloupy/scraping/wmo_ids_and_coords.csv -cloupy/test/test_integration/test_integration_imgw.py -cloupy/test/test_integration/test_integration_interpolation_map.py -cloupy/test/test_integration/test_integration_walter_lieth.py -cloupy/test/test_integration/test_integration_wmo.py -cloupy/test/test_unit/test_unittest_check_data_continuity.py -cloupy/test/test_unit/test_unittest_drawing_shapes.py -cloupy/test/test_unit/test_unittest_imgw.py -cloupy/test/test_unit/test_unittest_interpolation_map.py -cloupy/test/test_unit/test_unittest_walter_lieth.py -cloupy/test/test_unit/test_unittest_wmo.py \ No newline at end of file diff --git a/cloupy.egg-info/dependency_links.txt b/cloupy.egg-info/dependency_links.txt deleted file mode 100644 index 8b13789..0000000 --- a/cloupy.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/cloupy.egg-info/requires.txt b/cloupy.egg-info/requires.txt deleted file mode 100644 index ecdbc59..0000000 --- a/cloupy.egg-info/requires.txt +++ /dev/null @@ -1,10 +0,0 @@ -pandas<=1.3.5,>=1.3.3 -matplotlib<=3.5.1,>=3.4.3 -requests<=2.27.1,>=2.26.0 -beautifulsoup4<=4.10.0,>=4.9.3 -numpy<=1.22.1,>=1.21.4 -pyshp==2.1.3 -pyproj<=3.3.0,>=3.2.1 -scipy<=1.7.3,>=1.7.2 -Pillow<=9.0.0,>=8.4.0 -cycler==0.11.0 diff --git a/cloupy.egg-info/top_level.txt b/cloupy.egg-info/top_level.txt deleted file mode 100644 index c69f22d..0000000 --- a/cloupy.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -cloupy diff --git a/dist/cloupy-2.0.0-py3-none-any.whl b/dist/cloupy-2.0.0-py3-none-any.whl deleted file mode 100644 index ed65183..0000000 Binary files a/dist/cloupy-2.0.0-py3-none-any.whl and /dev/null differ diff --git a/dist/cloupy-2.0.0.tar.gz b/dist/cloupy-2.0.0.tar.gz deleted file mode 100644 index 1d2408a..0000000 Binary files a/dist/cloupy-2.0.0.tar.gz and /dev/null differ