# GAB.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 = GAB vegetation 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 = GAB
ADMIN_LEVEL = 1
UNITS = UNITS
DATA_TYPE = vegetation

# 120 calculations comma-separated, 10 consecutive calculations for each month (from January to December)
# 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

GA-1 = 0.56,0.06,0.78,0.22,0.56,-0.45,7.45,0.57,0.57,644.0,0.69,0.07,0.81,0.28,0.54,-1.53,8.11,0.69,0.7,644.0,0.68,0.08,0.83,-0.1,0.93,-2.21,19.44,0.68,0.69,645.0,0.78,0.08,0.88,0.04,0.83,-2.88,20.44,0.79,0.8,645.0,0.64,0.08,0.84,0.36,0.48,0.24,3.35,0.65,0.63,644.0,0.62,0.13,0.86,-0.1,0.96,-0.59,3.52,0.63,0.64,644.0,0.58,0.15,0.84,-0.1,0.94,-0.6,3.33,0.6,0.58,645.0,0.38,0.16,0.79,-0.1,0.89,0.39,2.27,0.42,0.35,645.0,0.41,0.08,0.66,0.24,0.42,0.65,3.44,0.42,0.4,644.0,0.52,0.15,0.85,0.2,0.65,0.31,2.13,0.54,0.49,643.0,0.48,0.08,0.68,0.26,0.41,-0.05,2.37,0.49,0.48,644.0,0.56,0.08,0.72,-0.08,0.81,-1.45,9.18,0.56,0.57,645.0
GA-2 = 0.56,0.08,0.75,0.35,0.4,-0.08,2.38,0.57,0.57,1095.0,0.68,0.11,0.81,0.44,0.38,-0.81,2.19,0.69,0.71,1095.0,0.72,0.13,0.86,0.43,0.44,-0.68,1.98,0.73,0.77,1095.0,0.77,0.11,0.9,0.52,0.38,-0.87,2.19,0.78,0.83,1095.0,0.7,0.11,0.87,0.46,0.41,-0.42,2.04,0.71,0.72,1095.0,0.6,0.11,0.85,0.31,0.54,-0.14,2.57,0.61,0.6,1095.0,0.63,0.14,0.85,0.24,0.61,-0.44,1.92,0.65,0.67,1095.0,0.56,0.16,0.84,0.23,0.6,0.04,1.72,0.58,0.54,1095.0,0.58,0.1,0.85,0.29,0.56,0.01,2.9,0.59,0.57,1095.0,0.62,0.1,0.88,0.4,0.48,0.34,2.24,0.63,0.61,1095.0,0.64,0.09,0.82,0.45,0.37,-0.28,1.96,0.65,0.65,1095.0,0.59,0.08,0.77,0.39,0.38,0.19,1.96,0.6,0.58,1095.0
GA-3 = 0.52,0.05,0.66,0.37,0.28,0.02,3.05,0.52,0.52,577.0,0.71,0.06,0.83,0.43,0.4,-0.72,3.4,0.71,0.72,577.0,0.66,0.07,0.85,0.45,0.4,0.34,2.93,0.66,0.65,577.0,0.78,0.05,0.87,0.49,0.38,-1.17,6.01,0.78,0.78,577.0,0.62,0.09,0.84,0.38,0.46,0.11,2.52,0.63,0.62,577.0,0.55,0.21,0.85,0.17,0.68,-0.12,1.43,0.59,0.56,577.0,0.57,0.14,0.83,0.23,0.6,-0.29,1.94,0.59,0.6,577.0,0.41,0.1,0.7,0.18,0.52,0.25,2.46,0.43,0.41,577.0,0.43,0.09,0.64,0.21,0.43,-0.31,2.46,0.44,0.44,577.0,0.4,0.11,0.77,0.14,0.63,0.55,3.3,0.41,0.39,577.0,0.51,0.08,0.66,0.27,0.39,-0.42,3.01,0.51,0.51,577.0,0.57,0.07,0.73,0.36,0.37,-0.77,3.16,0.58,0.59,577.0
GA-4 = 0.5,0.07,0.7,0.31,0.39,-0.25,2.81,0.51,0.51,1247.0,0.72,0.04,0.83,0.56,0.27,-0.74,3.59,0.72,0.72,1247.0,0.7,0.07,0.85,0.43,0.43,-0.54,3.53,0.71,0.71,1247.0,0.81,0.08,0.9,0.55,0.35,-0.71,2.32,0.81,0.84,1247.0,0.72,0.08,0.89,0.42,0.46,-0.28,2.64,0.72,0.72,1247.0,0.61,0.15,0.84,0.21,0.62,-0.09,1.72,0.63,0.59,1247.0,0.59,0.14,0.81,0.2,0.62,-0.5,2.47,0.61,0.61,1247.0,0.34,0.13,0.64,0.09,0.56,-0.13,2.1,0.37,0.36,1247.0,0.43,0.1,0.71,0.21,0.5,0.14,2.37,0.44,0.43,1247.0,0.5,0.13,0.85,0.22,0.63,0.49,2.54,0.51,0.48,1247.0,0.46,0.08,0.66,0.15,0.5,-0.36,2.95,0.47,0.47,1247.0,0.58,0.08,0.77,0.37,0.4,0.0,2.16,0.58,0.58,1247.0
GA-5 = 0.5,0.07,0.71,0.33,0.38,0.32,2.65,0.5,0.49,703.0,0.72,0.06,0.82,0.55,0.27,-0.44,2.6,0.72,0.72,703.0,0.68,0.06,0.82,0.45,0.37,-0.46,3.49,0.68,0.68,703.0,0.76,0.05,0.86,0.61,0.25,-0.32,2.72,0.77,0.77,703.0,0.73,0.1,0.89,0.38,0.52,-0.82,3.72,0.74,0.73,703.0,0.69,0.08,0.83,0.46,0.37,-0.32,2.34,0.69,0.69,703.0,0.62,0.09,0.79,0.42,0.38,-0.23,2.11,0.63,0.63,703.0,0.52,0.09,0.85,0.32,0.53,0.52,3.07,0.53,0.51,703.0,0.42,0.1,0.73,0.17,0.56,0.23,2.83,0.43,0.41,703.0,0.42,0.12,0.81,0.16,0.65,0.33,2.65,0.44,0.41,703.0,0.39,0.1,0.7,0.19,0.51,0.62,3.15,0.4,0.37,703.0,0.57,0.1,0.75,0.29,0.47,-0.43,2.37,0.57,0.58,703.0
GA-6 = 0.57,0.08,0.8,0.36,0.44,0.66,3.09,0.58,0.56,1410.0,0.7,0.07,0.81,0.49,0.32,-0.34,2.28,0.71,0.71,1410.0,0.7,0.08,0.85,0.46,0.39,-0.49,2.51,0.71,0.71,1410.0,0.82,0.04,0.89,0.66,0.23,-1.02,4.01,0.82,0.83,1410.0,0.64,0.08,0.86,0.4,0.46,0.3,2.99,0.64,0.63,1410.0,0.56,0.19,0.83,0.18,0.65,-0.12,1.7,0.59,0.56,1410.0,0.43,0.19,0.83,0.14,0.69,0.31,1.94,0.47,0.43,1410.0,0.39,0.09,0.68,0.23,0.45,0.72,3.07,0.4,0.38,1410.0,0.5,0.08,0.83,0.33,0.5,0.68,3.7,0.51,0.49,1410.0,0.47,0.11,0.83,0.19,0.64,0.38,2.88,0.48,0.46,1410.0,0.56,0.09,0.79,0.35,0.44,0.31,2.62,0.57,0.55,1410.0,0.6,0.08,0.76,0.39,0.37,-0.09,2.01,0.61,0.6,1410.0
GA-7 = 0.6,0.07,0.74,0.39,0.35,-0.32,2.69,0.6,0.6,941.0,0.72,0.04,0.81,0.59,0.22,-0.82,3.39,0.73,0.73,941.0,0.74,0.1,0.86,0.43,0.43,-1.02,2.81,0.75,0.78,941.0,0.84,0.04,0.9,0.66,0.24,-1.67,7.12,0.84,0.85,941.0,0.66,0.09,0.88,0.45,0.43,0.05,2.22,0.67,0.66,941.0,0.61,0.12,0.84,0.33,0.52,-0.14,2.04,0.62,0.62,941.0,0.61,0.15,0.83,0.17,0.66,-0.85,2.66,0.63,0.67,941.0,0.55,0.14,0.83,0.23,0.6,-0.13,2.16,0.57,0.56,941.0,0.52,0.08,0.78,0.35,0.43,0.52,3.28,0.53,0.51,941.0,0.58,0.12,0.84,0.25,0.58,-0.16,2.43,0.59,0.58,941.0,0.62,0.09,0.82,0.36,0.45,0.08,2.42,0.63,0.62,941.0,0.64,0.08,0.77,0.35,0.43,-0.43,2.46,0.65,0.65,941.0
GA-8 = 0.53,0.06,0.78,0.23,0.55,-0.23,3.82,0.53,0.53,751.0,0.66,0.08,0.82,0.27,0.55,-0.85,3.66,0.67,0.68,751.0,0.69,0.09,0.86,0.29,0.56,-0.45,3.18,0.7,0.69,750.0,0.7,0.09,0.88,0.33,0.56,-1.02,4.15,0.71,0.72,750.0,0.71,0.1,0.87,0.3,0.57,-0.97,3.98,0.72,0.73,751.0,0.74,0.1,0.84,0.29,0.56,-1.5,5.24,0.75,0.78,751.0,0.71,0.1,0.84,0.25,0.59,-1.31,4.67,0.72,0.73,750.0,0.47,0.09,0.74,0.19,0.55,-0.12,2.57,0.48,0.47,751.0,0.39,0.09,0.66,0.15,0.51,-0.01,2.73,0.4,0.39,751.0,0.36,0.1,0.75,0.1,0.65,0.19,3.97,0.38,0.36,751.0,0.44,0.08,0.65,0.18,0.46,-0.16,2.82,0.45,0.45,750.0,0.56,0.09,0.75,0.25,0.5,-0.93,3.65,0.56,0.58,750.0
GA-9 = 0.54,0.05,0.66,0.4,0.26,-0.48,2.93,0.54,0.55,1214.0,0.66,0.06,0.78,0.46,0.32,-0.36,2.53,0.67,0.67,1214.0,0.72,0.08,0.84,0.46,0.39,-1.1,3.6,0.72,0.75,1214.0,0.76,0.06,0.88,0.6,0.28,-0.43,2.4,0.77,0.77,1214.0,0.66,0.07,0.86,0.47,0.38,0.37,2.66,0.66,0.65,1214.0,0.44,0.09,0.73,0.19,0.54,-0.01,3.0,0.45,0.44,1214.0,0.35,0.1,0.58,0.14,0.43,-0.24,2.0,0.36,0.37,1214.0,0.4,0.09,0.62,0.17,0.45,0.01,2.26,0.41,0.4,1214.0,0.54,0.08,0.76,0.28,0.48,0.08,2.41,0.54,0.53,1214.0,0.49,0.11,0.79,0.18,0.61,-0.13,2.43,0.5,0.49,1214.0,0.6,0.09,0.81,0.37,0.44,-0.15,2.37,0.61,0.6,1214.0,0.54,0.08,0.71,0.33,0.38,0.04,2.19,0.55,0.54,1214.0
