# 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 vegetation data file's contents
RECORD_CLASSNAME = org.eclipse.stem.internal.data.geography.specifications.EarthPropertyFileSpecification

# The title
TITLE = AUS vegetation data for combined 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=combined

# 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 = UNITS
DATA_TYPE = vegetation

# 120 calculations comma-separated, 10 consecutive calculations for each month (from January to December). Combined data from multiple years. Only Fields 1, 3, 4, and 5 are valid. All other Fields are NaN.
# Field 1: Average
# 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: 0.9 
# Minimum: -0.1

AU-CT = 0.5,NaN,0.71,0.3,0.41,NaN,NaN,NaN,NaN,NaN,0.52,NaN,0.75,0.27,0.48,NaN,NaN,NaN,NaN,NaN,0.55,NaN,0.76,0.32,0.44,NaN,NaN,NaN,NaN,NaN,0.55,NaN,0.76,0.34,0.42,NaN,NaN,NaN,NaN,NaN,0.56,NaN,0.79,0.33,0.46,NaN,NaN,NaN,NaN,NaN,0.57,NaN,0.8,0.35,0.45,NaN,NaN,NaN,NaN,NaN,0.56,NaN,0.75,0.35,0.4,NaN,NaN,NaN,NaN,NaN,0.55,NaN,0.75,0.34,0.41,NaN,NaN,NaN,NaN,NaN,0.55,NaN,0.73,0.41,0.32,NaN,NaN,NaN,NaN,NaN,0.55,NaN,0.72,0.38,0.34,NaN,NaN,NaN,NaN,NaN,0.54,NaN,0.7,0.33,0.37,NaN,NaN,NaN,NaN,NaN,0.51,NaN,0.7,0.3,0.4,NaN,NaN,NaN,NaN,NaN
AU-NS = 0.36,NaN,0.89,-0.01,0.9,NaN,NaN,NaN,NaN,NaN,0.38,NaN,0.9,-0.01,0.91,NaN,NaN,NaN,NaN,NaN,0.39,NaN,0.9,-0.04,0.94,NaN,NaN,NaN,NaN,NaN,0.4,NaN,0.9,-0.06,0.96,NaN,NaN,NaN,NaN,NaN,0.41,NaN,0.9,-0.03,0.93,NaN,NaN,NaN,NaN,NaN,0.44,NaN,0.9,-0.04,0.94,NaN,NaN,NaN,NaN,NaN,0.46,NaN,0.9,-0.03,0.93,NaN,NaN,NaN,NaN,NaN,0.47,NaN,0.88,-0.03,0.91,NaN,NaN,NaN,NaN,NaN,0.45,NaN,0.88,-0.01,0.89,NaN,NaN,NaN,NaN,NaN,0.41,NaN,0.86,-0.03,0.89,NaN,NaN,NaN,NaN,NaN,0.37,NaN,0.87,-0.05,0.92,NaN,NaN,NaN,NaN,NaN,0.36,NaN,0.89,-0.04,0.93,NaN,NaN,NaN,NaN,NaN
AU-NT = 0.32,NaN,0.77,-0.1,0.87,NaN,NaN,NaN,NaN,NaN,0.35,NaN,0.81,-0.1,0.91,NaN,NaN,NaN,NaN,NaN,0.36,NaN,0.8,-0.1,0.9,NaN,NaN,NaN,NaN,NaN,0.34,NaN,0.83,-0.1,0.93,NaN,NaN,NaN,NaN,NaN,0.32,NaN,0.79,-0.1,0.89,NaN,NaN,NaN,NaN,NaN,0.31,NaN,0.76,-0.1,0.86,NaN,NaN,NaN,NaN,NaN,0.29,NaN,0.74,-0.1,0.84,NaN,NaN,NaN,NaN,NaN,0.26,NaN,0.72,-0.1,0.82,NaN,NaN,NaN,NaN,NaN,0.25,NaN,0.7,-0.1,0.8,NaN,NaN,NaN,NaN,NaN,0.25,NaN,0.75,-0.1,0.85,NaN,NaN,NaN,NaN,NaN,0.26,NaN,0.74,-0.1,0.84,NaN,NaN,NaN,NaN,NaN,0.28,NaN,0.78,-0.1,0.88,NaN,NaN,NaN,NaN,NaN
AU-QL = 0.35,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.4,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.4,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.38,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.36,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.35,NaN,0.9,-0.06,0.96,NaN,NaN,NaN,NaN,NaN,0.34,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.32,NaN,0.88,-0.1,0.98,NaN,NaN,NaN,NaN,NaN,0.3,NaN,0.89,-0.1,0.99,NaN,NaN,NaN,NaN,NaN,0.29,NaN,0.9,-0.1,1.0,NaN,NaN,NaN,NaN,NaN,0.29,NaN,0.88,-0.1,0.98,NaN,NaN,NaN,NaN,NaN,0.32,NaN,0.88,-0.1,0.98,NaN,NaN,NaN,NaN,NaN
AU-SA = 0.18,NaN,0.74,-0.09,0.83,NaN,NaN,NaN,NaN,NaN,0.19,NaN,0.75,-0.1,0.85,NaN,NaN,NaN,NaN,NaN,0.2,NaN,0.8,-0.1,0.9,NaN,NaN,NaN,NaN,NaN,0.21,NaN,0.83,-0.1,0.93,NaN,NaN,NaN,NaN,NaN,0.22,NaN,0.85,-0.05,0.9,NaN,NaN,NaN,NaN,NaN,0.25,NaN,0.86,-0.06,0.92,NaN,NaN,NaN,NaN,NaN,0.26,NaN,0.85,-0.1,0.95,NaN,NaN,NaN,NaN,NaN,0.25,NaN,0.86,-0.08,0.94,NaN,NaN,NaN,NaN,NaN,0.24,NaN,0.86,-0.08,0.94,NaN,NaN,NaN,NaN,NaN,0.22,NaN,0.87,-0.1,0.97,NaN,NaN,NaN,NaN,NaN,0.2,NaN,0.82,-0.07,0.89,NaN,NaN,NaN,NaN,NaN,0.19,NaN,0.73,-0.1,0.83,NaN,NaN,NaN,NaN,NaN
AU-TS = 0.64,NaN,0.86,0.09,0.77,NaN,NaN,NaN,NaN,NaN,0.65,NaN,0.88,0.02,0.86,NaN,NaN,NaN,NaN,NaN,0.68,NaN,0.88,0.1,0.78,NaN,NaN,NaN,NaN,NaN,0.7,NaN,0.9,0.2,0.7,NaN,NaN,NaN,NaN,NaN,0.72,NaN,0.9,0.23,0.67,NaN,NaN,NaN,NaN,NaN,0.69,NaN,0.88,0.12,0.76,NaN,NaN,NaN,NaN,NaN,0.7,NaN,0.9,0.09,0.81,NaN,NaN,NaN,NaN,NaN,0.69,NaN,0.86,0.17,0.69,NaN,NaN,NaN,NaN,NaN,0.67,NaN,0.84,0.17,0.67,NaN,NaN,NaN,NaN,NaN,0.68,NaN,0.87,0.21,0.66,NaN,NaN,NaN,NaN,NaN,0.67,NaN,0.85,0.17,0.68,NaN,NaN,NaN,NaN,NaN,0.64,NaN,0.86,-0.08,0.94,NaN,NaN,NaN,NaN,NaN
AU-VI = 0.42,NaN,0.87,-0.07,0.94,NaN,NaN,NaN,NaN,NaN,0.43,NaN,0.9,0.09,0.81,NaN,NaN,NaN,NaN,NaN,0.45,NaN,0.89,-0.02,0.91,NaN,NaN,NaN,NaN,NaN,0.49,NaN,0.89,0.04,0.85,NaN,NaN,NaN,NaN,NaN,0.55,NaN,0.9,0.11,0.79,NaN,NaN,NaN,NaN,NaN,0.6,NaN,0.9,-0.02,0.92,NaN,NaN,NaN,NaN,NaN,0.64,NaN,0.9,0.06,0.84,NaN,NaN,NaN,NaN,NaN,0.66,NaN,0.88,0.12,0.76,NaN,NaN,NaN,NaN,NaN,0.65,NaN,0.88,-0.01,0.89,NaN,NaN,NaN,NaN,NaN,0.6,NaN,0.9,-0.0,0.9,NaN,NaN,NaN,NaN,NaN,0.53,NaN,0.87,-0.02,0.89,NaN,NaN,NaN,NaN,NaN,0.45,NaN,0.86,-0.09,0.95,NaN,NaN,NaN,NaN,NaN
AU-WA = 0.24,NaN,0.83,-0.1,0.93,NaN,NaN,NaN,NaN,NaN,0.26,NaN,0.83,-0.1,0.93,NaN,NaN,NaN,NaN,NaN,0.27,NaN,0.85,-0.1,0.95,NaN,NaN,NaN,NaN,NaN,0.28,NaN,0.84,-0.1,0.94,NaN,NaN,NaN,NaN,NaN,0.28,NaN,0.86,-0.1,0.96,NaN,NaN,NaN,NaN,NaN,0.29,NaN,0.86,-0.1,0.96,NaN,NaN,NaN,NaN,NaN,0.29,NaN,0.88,-0.1,0.98,NaN,NaN,NaN,NaN,NaN,0.27,NaN,0.85,-0.09,0.94,NaN,NaN,NaN,NaN,NaN,0.25,NaN,0.84,-0.1,0.94,NaN,NaN,NaN,NaN,NaN,0.24,NaN,0.85,-0.1,0.95,NaN,NaN,NaN,NaN,NaN,0.22,NaN,0.82,-0.1,0.92,NaN,NaN,NaN,NaN,NaN,0.22,NaN,0.84,-0.1,0.94,NaN,NaN,NaN,NaN,NaN
