# GMB.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 = GMB 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 = GMB
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

GM-B = 0.35,0.02,0.37,0.32,0.05,-0.49,1.5,0.35,0.35,3.0,0.31,0.02,0.33,0.29,0.04,-0.65,1.5,0.31,0.32,3.0,0.27,0.03,0.29,0.24,0.05,-0.7,1.5,0.27,0.28,3.0,0.23,0.03,0.25,0.2,0.06,-0.67,1.5,0.23,0.24,3.0,0.26,0.03,0.27,0.23,0.05,-0.71,1.5,0.26,0.27,3.0,0.34,0.03,0.36,0.3,0.06,-0.7,1.5,0.34,0.36,3.0,0.45,0.04,0.48,0.41,0.07,-0.49,1.5,0.45,0.46,3.0,0.43,0.04,0.46,0.38,0.08,-0.15,1.5,0.43,0.43,3.0,0.51,0.05,0.54,0.45,0.1,-0.68,1.5,0.51,0.53,3.0,0.57,0.03,0.59,0.53,0.06,-0.6,1.5,0.57,0.58,3.0,0.49,0.05,0.52,0.42,0.1,-0.7,1.5,0.49,0.51,3.0,0.41,0.02,0.42,0.38,0.04,-0.63,1.5,0.41,0.41,3.0
GM-L = 0.38,0.04,0.48,0.29,0.19,0.07,2.32,0.38,0.38,51.0,0.3,0.03,0.38,0.25,0.14,1.16,4.39,0.3,0.29,51.0,0.28,0.02,0.34,0.23,0.11,0.85,3.83,0.28,0.28,51.0,0.26,0.02,0.3,0.22,0.08,-0.18,2.56,0.26,0.26,51.0,0.28,0.02,0.33,0.23,0.1,0.39,2.66,0.28,0.28,51.0,0.39,0.03,0.46,0.33,0.13,-0.22,2.49,0.39,0.4,51.0,0.54,0.04,0.61,0.43,0.19,-0.38,3.6,0.54,0.55,51.0,0.62,0.06,0.71,0.48,0.22,-0.65,2.44,0.62,0.64,51.0,0.69,0.05,0.78,0.58,0.21,-0.37,2.25,0.7,0.69,51.0,0.68,0.05,0.77,0.55,0.22,-0.43,2.41,0.68,0.69,51.0,0.58,0.04,0.66,0.48,0.18,-0.36,2.4,0.58,0.58,51.0,0.45,0.05,0.56,0.36,0.2,-0.07,1.73,0.46,0.47,51.0
GM-M = 0.33,0.02,0.38,0.29,0.09,0.23,3.5,0.33,0.33,102.0,0.27,0.01,0.34,0.25,0.1,1.45,7.42,0.27,0.27,102.0,0.27,0.02,0.35,0.24,0.11,1.96,9.9,0.27,0.27,102.0,0.26,0.02,0.33,0.23,0.09,1.19,5.16,0.26,0.26,102.0,0.29,0.02,0.36,0.25,0.11,0.73,4.15,0.29,0.28,102.0,0.37,0.03,0.42,0.3,0.13,-0.09,2.17,0.37,0.37,102.0,0.52,0.05,0.61,0.42,0.19,-0.58,2.48,0.53,0.53,102.0,0.59,0.04,0.65,0.48,0.17,-0.97,4.54,0.59,0.59,102.0,0.67,0.04,0.73,0.53,0.2,-1.26,3.84,0.67,0.69,102.0,0.6,0.03,0.66,0.52,0.14,-0.77,2.59,0.6,0.62,102.0,0.5,0.02,0.56,0.44,0.11,0.07,2.5,0.5,0.49,102.0,0.38,0.02,0.44,0.33,0.11,-0.38,3.82,0.39,0.39,102.0
GM-N = 0.34,0.04,0.46,0.26,0.2,0.52,3.35,0.34,0.33,72.0,0.3,0.03,0.38,0.23,0.15,0.34,2.8,0.3,0.29,72.0,0.27,0.04,0.39,0.19,0.2,0.36,3.84,0.27,0.27,72.0,0.24,0.04,0.35,0.16,0.19,0.52,3.66,0.24,0.23,72.0,0.26,0.04,0.4,0.18,0.22,0.91,4.25,0.26,0.25,72.0,0.35,0.05,0.48,0.25,0.23,0.29,2.6,0.35,0.35,72.0,0.47,0.07,0.7,0.33,0.38,0.64,3.83,0.48,0.47,72.0,0.5,0.06,0.68,0.36,0.33,0.01,3.38,0.5,0.5,72.0,0.55,0.07,0.68,0.34,0.33,-0.56,2.84,0.56,0.56,72.0,0.55,0.08,0.78,0.35,0.43,-0.05,2.82,0.56,0.56,72.0,0.48,0.07,0.68,0.32,0.37,0.19,2.96,0.48,0.48,72.0,0.4,0.05,0.58,0.29,0.28,0.52,3.52,0.41,0.41,72.0
GM-U = 0.33,0.02,0.38,0.29,0.09,0.44,3.92,0.33,0.33,71.0,0.27,0.01,0.29,0.24,0.05,-0.22,3.09,0.27,0.27,71.0,0.27,0.01,0.29,0.24,0.05,-0.28,3.57,0.27,0.27,71.0,0.26,0.01,0.3,0.23,0.07,0.74,3.9,0.26,0.26,71.0,0.28,0.02,0.37,0.25,0.12,1.46,6.24,0.29,0.28,71.0,0.39,0.04,0.5,0.33,0.17,0.93,4.07,0.39,0.38,71.0,0.53,0.04,0.63,0.47,0.16,0.76,2.95,0.53,0.52,71.0,0.61,0.02,0.71,0.57,0.14,1.82,7.16,0.61,0.6,71.0,0.7,0.02,0.74,0.68,0.06,0.56,2.54,0.7,0.7,71.0,0.65,0.02,0.71,0.61,0.1,0.54,3.22,0.65,0.65,71.0,0.51,0.02,0.57,0.46,0.11,0.76,3.82,0.51,0.5,71.0,0.39,0.02,0.45,0.34,0.1,0.51,3.42,0.39,0.39,71.0
GM-W = 0.45,0.04,0.51,0.29,0.22,-1.63,6.2,0.46,0.46,53.0,0.37,0.03,0.44,0.3,0.13,-0.22,2.05,0.37,0.37,53.0,0.32,0.02,0.38,0.28,0.09,0.45,2.29,0.33,0.32,53.0,0.3,0.02,0.36,0.24,0.12,-0.02,3.74,0.3,0.3,53.0,0.33,0.02,0.4,0.27,0.13,0.27,3.17,0.33,0.33,53.0,0.41,0.03,0.48,0.32,0.16,0.02,3.04,0.41,0.4,53.0,0.56,0.04,0.62,0.44,0.19,-0.88,3.7,0.56,0.56,53.0,0.63,0.07,0.77,0.48,0.29,0.24,2.37,0.63,0.62,53.0,0.71,0.05,0.79,0.56,0.23,-0.48,2.9,0.71,0.71,53.0,0.74,0.05,0.83,0.63,0.2,-0.26,2.46,0.75,0.74,53.0,0.66,0.05,0.74,0.52,0.22,-0.31,2.92,0.67,0.65,53.0,0.56,0.05,0.63,0.42,0.21,-0.72,3.45,0.56,0.56,53.0
