# AUS.properties
#/*******************************************************************************
# * Copyright (c) 2010 IBM Corporation and others.
# * All rights reserved. This program and the accompanying materials
# * are made available under the terms of the Eclipse Public License v1.0
# * which accompanies this distribution, and is available at
# * http://www.eclipse.org/legal/epl-v10.html
# *
# * Contributors:
# *     IBM Corporation - initial API and implementation
# *******************************************************************************/

# This is the name of the class that will interpret the temperature data file's contents
RECORD_CLASSNAME = org.eclipse.stem.internal.data.geography.specifications.EarthPropertyFileSpecification

# The title
TITLE = AUS temperature data for 2008 at admin level 1

# This is the date for which the values in this file are valid
# See http://purl.org/dc/terms/1.1/valid
VALID=start=2008

# The data is derived from the following primary source
#SOURCE = http://neo.sci.gsfc.nasa.gov/

# ISO3166-1 alpha3 code for the country
ISOKEY = AUS
ADMIN_LEVEL = 1
UNITS = C
DATA_TYPE = temperature

# 120 calculations comma-separated, 10 consecutive calculations for each month (from January to December)
# Field 1: Mean
# Field 2: Standard Deviation
# Field 3: Maximum
# Field 4: Minimum
# Field 5: Range
# Field 6: Skewness
# Field 7: Kurtosis
# Field 8: Root Mean Square
# Field 9: Median
# Field 10: Sample Size
# No data points for a month indicated by 99999.0,0.0,0.0,0.0,0.0,0.0,-1.2,1.0,0.0,0.0
# Maximum: 45 degrees
# Minimum: -25 degrees

AU-CT = 28.5,4.14,36.73,21.85,14.88,0.3,1.76,28.79,27.36,93.0,21.13,4.13,28.74,16.06,12.68,0.5,1.77,21.53,19.65,93.0,22.42,4.12,30.12,16.61,13.5,0.27,1.65,22.79,21.37,93.0,15.01,3.1,20.2,10.55,9.65,0.26,1.58,15.33,14.13,93.0,11.83,2.47,16.06,8.07,7.99,0.19,1.59,12.08,11.38,93.0,7.99,1.94,11.24,4.76,6.48,0.06,1.73,8.22,7.8,93.0,5.08,2.19,8.76,1.46,7.3,0.19,1.79,5.53,4.9,93.0,7.03,2.3,10.83,3.11,7.72,-0.02,1.63,7.39,6.97,93.0,16.55,3.35,22.68,11.93,10.75,0.3,1.55,16.88,15.51,93.0,19.1,3.46,25.98,14.13,11.85,0.57,1.95,19.41,17.99,93.0,23.39,5.06,32.46,14.96,17.5,0.23,1.83,23.92,22.26,93.0,22.99,4.37,30.53,16.06,14.47,0.24,1.69,23.4,21.99,93.0
AU-NS = 37.94,7.9,45.0,17.17,27.83,-0.88,2.34,38.76,41.42,30881.0,31.82,7.13,43.62,13.03,30.59,-0.53,2.06,32.61,33.15,30881.0,33.52,7.0,44.45,13.03,31.42,-0.72,2.27,34.24,35.63,30881.0,25.3,5.12,34.8,9.17,25.63,-0.86,2.69,25.82,26.95,30881.0,19.8,3.86,28.74,5.59,23.15,-0.53,2.78,20.17,20.2,30881.0,14.51,2.66,22.4,3.39,19.02,-0.7,4.31,14.75,14.82,30881.0,12.81,3.23,21.3,-0.2,21.5,-0.48,3.39,13.21,12.76,30881.0,15.48,4.07,25.16,2.01,23.15,-0.3,2.87,16.0,15.51,30881.0,24.17,4.39,34.25,7.8,26.46,-0.47,2.59,24.57,24.88,30881.0,31.02,6.78,42.8,10.28,32.52,-0.54,2.08,31.75,33.46,30880.0,32.18,5.97,43.62,13.86,29.76,-0.73,2.4,32.73,34.25,30881.0,35.65,7.08,45.0,14.69,30.31,-0.71,2.28,36.35,38.52,30881.0
AU-NT = 40.2,6.94,45.0,19.37,25.63,-1.06,2.53,40.8,45.0,46621.0,36.63,8.14,45.0,13.03,31.97,-0.53,1.68,37.53,40.73,46614.0,37.76,7.01,45.0,10.0,35.0,-0.76,1.99,38.41,41.69,46621.0,36.07,3.09,42.8,20.2,22.6,-0.49,2.85,36.2,36.32,46623.0,31.79,2.33,38.11,21.02,17.09,-0.28,2.51,31.88,32.05,46623.0,26.36,3.62,36.18,18.27,17.91,-0.17,1.87,26.61,26.95,46622.0,27.25,3.6,37.28,18.96,18.33,-0.2,2.01,27.49,27.84,46623.0,28.81,3.79,39.49,16.06,23.43,-0.27,2.04,29.05,29.7,46623.0,38.2,2.86,45.0,22.95,22.05,-0.36,3.14,38.31,38.39,46623.0,43.23,2.81,45.0,23.23,21.77,-2.36,9.47,43.32,44.59,46622.0,41.98,4.0,45.0,23.5,21.5,-1.52,4.66,42.17,43.76,46621.0,39.99,6.14,45.0,12.76,32.24,-1.15,3.09,40.46,42.93,46618.0
AU-QL = 35.33,7.38,45.0,17.17,27.83,-0.04,1.67,36.09,34.67,61217.0,32.84,6.9,45.0,13.86,31.14,0.33,1.87,33.56,31.36,61215.0,33.4,6.59,45.0,18.27,26.73,-0.12,1.82,34.04,33.7,61214.0,32.05,4.6,42.24,16.06,26.18,-0.19,2.5,32.38,31.77,61217.0,27.78,3.58,38.39,15.79,22.6,-0.0,2.47,28.01,27.36,61217.0,23.02,4.19,33.7,12.48,21.22,0.23,1.94,23.4,22.68,61217.0,22.78,4.13,33.15,10.0,23.15,0.04,2.04,23.15,22.68,61217.0,25.12,4.04,36.46,12.48,23.98,0.17,2.11,25.44,24.61,61217.0,32.23,4.89,44.17,16.34,27.83,0.06,2.19,32.6,31.63,61217.0,38.48,5.36,45.0,20.2,24.8,-0.78,3.02,38.85,39.35,61217.0,39.5,4.98,45.0,19.65,25.35,-0.93,3.35,39.81,40.31,61217.0,39.66,5.59,45.0,21.02,23.98,-0.73,2.37,40.05,41.42,61217.0
AU-SA = 43.81,2.72,45.0,17.72,27.28,-3.73,20.62,43.89,45.0,36963.0,40.4,3.02,45.0,16.06,28.94,-1.8,10.08,40.51,40.73,36963.0,39.86,2.85,45.0,17.99,27.01,-2.26,11.66,39.96,40.31,36963.0,29.1,3.23,36.46,13.86,22.6,-1.15,4.79,29.28,29.7,36961.0,23.21,3.71,30.39,10.83,19.57,-0.94,3.19,23.5,24.33,36963.0,16.63,2.44,23.5,9.45,14.06,-0.34,2.4,16.81,16.89,36963.0,15.71,3.26,25.16,1.46,23.7,-0.42,2.35,16.04,16.34,36962.0,18.11,3.94,27.91,3.94,23.98,-0.91,2.84,18.53,19.58,36963.0,28.38,4.54,37.56,9.86,27.7,-1.56,5.05,28.74,29.7,36963.0,36.72,4.72,45.0,13.58,31.42,-1.64,6.31,37.02,37.56,36961.0,37.58,4.14,45.0,13.58,31.42,-1.13,5.59,37.8,37.97,36963.0,40.31,3.9,45.0,14.13,30.87,-1.99,8.93,40.5,41.14,36962.0
AU-TS = 21.02,5.37,36.18,11.1,25.08,0.67,2.7,21.7,20.06,3027.0,18.26,3.73,32.6,10.55,22.05,1.03,3.72,18.64,17.3,3027.0,16.54,3.76,27.36,9.45,17.91,0.52,2.52,16.96,16.34,3027.0,11.22,2.69,18.54,5.59,12.95,0.29,2.17,11.54,11.1,3027.0,8.41,2.18,14.27,3.39,10.89,0.06,2.22,8.69,8.48,3027.0,7.32,2.11,13.44,3.11,10.33,0.2,2.34,7.61,7.38,3027.0,4.84,2.19,11.65,0.08,11.57,0.27,2.51,5.31,4.76,3027.0,6.3,2.59,12.48,0.91,11.57,-0.01,2.05,6.81,6.42,3027.0,8.15,2.73,14.69,1.73,12.95,-0.03,1.86,8.6,8.07,3027.0,12.49,3.46,22.95,5.59,17.36,0.47,2.31,12.96,12.07,3027.0,14.77,3.77,26.54,5.59,20.94,0.45,2.78,15.25,14.27,3026.0,13.67,3.8,26.26,6.14,20.12,0.49,2.51,14.19,13.03,3027.0
AU-VI = 34.56,7.12,45.0,15.79,29.21,-0.33,1.93,35.28,35.56,9259.0,30.5,7.49,41.97,13.58,28.39,-0.41,1.82,31.41,32.32,9259.0,30.17,6.15,40.87,14.96,25.91,-0.43,1.96,30.79,31.77,9259.0,19.82,4.6,30.94,9.17,21.77,0.03,2.04,20.35,19.58,9259.0,13.07,2.88,19.65,5.31,14.33,0.1,2.41,13.38,12.76,9259.0,10.95,2.26,16.34,3.11,13.23,-0.37,2.89,11.18,11.03,9259.0,8.35,2.05,13.31,0.63,12.68,-0.67,3.38,8.59,8.62,9259.0,9.23,2.51,15.79,1.18,14.61,-0.17,2.84,9.57,9.17,9259.0,15.87,3.94,27.36,6.14,21.22,0.44,2.62,16.35,15.03,9259.0,22.74,6.18,37.01,10.55,26.46,0.27,1.83,23.56,21.44,9259.0,26.71,6.87,42.24,8.9,33.35,-0.11,1.9,27.58,26.67,9259.0,27.16,7.09,41.42,9.72,31.69,-0.13,1.79,28.07,27.91,9259.0
AU-WA = 42.26,4.64,45.0,18.27,26.73,-1.95,6.18,42.51,45.0,91563.0,37.76,5.31,45.0,13.58,31.42,-0.94,3.29,38.14,38.73,91558.0,39.02,5.15,45.0,14.69,30.31,-0.93,3.35,39.36,40.45,91563.0,32.11,5.58,42.8,13.58,29.21,-0.45,2.59,32.59,32.46,91563.0,27.98,5.57,40.31,11.52,28.8,-0.46,2.3,28.53,28.74,91563.0,21.54,5.17,35.63,9.45,26.18,0.27,1.94,22.15,20.61,91563.0,21.22,6.51,35.63,6.14,29.49,-0.03,1.88,22.2,21.3,91565.0,23.69,6.41,41.14,5.31,35.83,-0.05,2.11,24.54,23.5,91565.0,32.06,7.84,45.0,7.24,37.76,-0.63,2.52,33.0,33.15,91563.0,38.32,7.35,45.0,11.1,33.9,-1.29,4.04,39.01,40.73,91563.0,39.14,7.07,45.0,11.93,33.07,-1.36,4.22,39.78,41.83,91563.0,41.25,5.1,45.0,16.34,28.66,-1.82,6.24,41.57,43.21,91565.0
