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

ZM-0 = 0.53,0.09,0.77,0.29,0.48,-0.06,2.59,0.53,0.53,4318.0,0.66,0.07,0.85,0.47,0.37,0.25,2.39,0.66,0.65,4318.0,0.63,0.07,0.83,0.48,0.35,0.41,2.73,0.63,0.62,4318.0,0.57,0.06,0.81,0.44,0.37,1.28,4.9,0.58,0.56,4318.0,0.52,0.06,0.79,0.39,0.4,1.63,6.62,0.52,0.51,4318.0,0.46,0.07,0.75,0.3,0.46,1.5,6.58,0.47,0.45,4318.0,0.4,0.07,0.7,0.27,0.43,1.61,6.9,0.41,0.39,4318.0,0.36,0.05,0.62,0.23,0.4,1.73,7.68,0.36,0.35,4318.0,0.37,0.06,0.61,0.22,0.39,0.93,5.14,0.37,0.36,4318.0,0.41,0.07,0.69,0.23,0.46,0.4,3.25,0.42,0.41,4318.0,0.53,0.1,0.83,0.21,0.62,-0.44,3.7,0.54,0.54,4318.0,0.64,0.08,0.83,0.36,0.47,-0.5,3.14,0.64,0.64,4318.0
ZM-02 = 0.56,0.11,0.76,0.2,0.56,-0.6,2.82,0.57,0.57,3150.0,0.74,0.05,0.84,0.26,0.58,-2.12,13.23,0.74,0.75,3150.0,0.69,0.05,0.79,0.25,0.54,-1.08,6.24,0.69,0.7,3150.0,0.64,0.05,0.78,0.28,0.5,-0.61,5.78,0.64,0.64,3150.0,0.56,0.06,0.73,0.32,0.41,-0.14,2.69,0.56,0.56,3150.0,0.49,0.07,0.67,0.31,0.36,0.02,2.35,0.49,0.49,3150.0,0.42,0.07,0.63,0.28,0.35,0.23,2.38,0.42,0.41,3150.0,0.37,0.06,0.57,0.21,0.36,0.4,2.86,0.37,0.36,3150.0,0.37,0.05,0.62,0.25,0.37,0.88,4.78,0.37,0.36,3150.0,0.44,0.08,0.67,0.25,0.41,0.13,2.2,0.44,0.44,3150.0,0.53,0.06,0.71,0.31,0.4,-0.07,2.53,0.54,0.53,3150.0,0.7,0.06,0.85,0.49,0.36,-0.35,2.86,0.7,0.7,3150.0
ZM-03 = 0.58,0.09,0.77,0.23,0.54,-0.49,2.74,0.59,0.59,2295.0,0.74,0.06,0.86,0.51,0.35,-1.14,3.8,0.74,0.75,2295.0,0.72,0.06,0.84,0.53,0.32,-0.99,3.27,0.72,0.74,2295.0,0.66,0.07,0.79,0.46,0.32,-0.72,2.78,0.66,0.67,2295.0,0.57,0.07,0.73,0.39,0.34,-0.22,2.37,0.57,0.57,2295.0,0.48,0.07,0.67,0.33,0.34,0.34,2.65,0.48,0.47,2295.0,0.4,0.06,0.62,0.28,0.33,0.75,3.35,0.41,0.4,2295.0,0.34,0.04,0.53,0.25,0.28,1.07,4.46,0.34,0.33,2295.0,0.3,0.03,0.45,0.24,0.2,1.0,4.95,0.3,0.3,2295.0,0.33,0.04,0.54,0.25,0.29,0.97,4.5,0.33,0.32,2295.0,0.42,0.07,0.62,0.27,0.35,0.08,2.5,0.42,0.42,2295.0,0.64,0.09,0.82,0.38,0.44,-0.39,2.45,0.65,0.65,2295.0
ZM-04 = 0.63,0.18,0.81,-0.1,0.91,-2.38,8.42,0.66,0.68,1633.0,0.67,0.19,0.83,-0.06,0.88,-2.55,8.87,0.69,0.73,1633.0,0.65,0.18,0.8,-0.1,0.9,-2.67,9.49,0.68,0.72,1633.0,0.63,0.19,0.8,-0.1,0.9,-2.61,9.3,0.66,0.69,1633.0,0.56,0.16,0.74,-0.09,0.83,-2.58,9.24,0.58,0.6,1633.0,0.49,0.15,0.69,-0.1,0.79,-2.52,9.11,0.51,0.53,1633.0,0.43,0.14,0.64,-0.1,0.74,-2.45,8.53,0.45,0.46,1633.0,0.37,0.13,0.55,-0.1,0.65,-2.51,8.63,0.39,0.41,1633.0,0.39,0.13,0.59,-0.08,0.67,-1.96,7.0,0.41,0.41,1633.0,0.47,0.16,0.72,-0.1,0.82,-1.83,6.44,0.49,0.5,1633.0,0.56,0.17,0.79,-0.08,0.87,-2.18,7.5,0.59,0.62,1633.0,0.69,0.2,0.84,-0.08,0.92,-2.59,9.05,0.72,0.76,1633.0
ZM-05 = 0.64,0.1,0.83,0.05,0.78,-1.8,9.62,0.65,0.65,4867.0,0.71,0.09,0.84,0.01,0.83,-3.55,19.82,0.71,0.73,4867.0,0.69,0.09,0.84,0.06,0.78,-3.07,17.09,0.69,0.7,4867.0,0.66,0.08,0.8,-0.04,0.84,-3.35,20.23,0.67,0.68,4867.0,0.59,0.08,0.75,0.02,0.73,-2.75,16.35,0.6,0.6,4867.0,0.52,0.08,0.71,-0.02,0.73,-2.46,13.76,0.53,0.54,4867.0,0.45,0.09,0.67,-0.1,0.77,-2.61,15.07,0.46,0.47,4867.0,0.4,0.08,0.58,-0.1,0.67,-2.63,14.85,0.4,0.41,4867.0,0.36,0.07,0.58,-0.1,0.68,-1.97,12.26,0.37,0.37,4867.0,0.43,0.11,0.7,-0.1,0.8,-0.69,4.79,0.45,0.44,4867.0,0.5,0.12,0.79,-0.02,0.81,-0.59,4.32,0.52,0.51,4867.0,0.67,0.1,0.84,0.04,0.8,-2.1,12.38,0.68,0.68,4867.0
ZM-06 = 0.69,0.08,0.83,0.41,0.43,-1.06,4.03,0.7,0.71,4168.0,0.77,0.06,0.86,0.51,0.35,-2.1,7.27,0.78,0.79,4168.0,0.75,0.07,0.84,0.47,0.37,-2.12,7.18,0.75,0.77,4168.0,0.7,0.06,0.83,0.47,0.36,-1.56,5.59,0.7,0.71,4168.0,0.64,0.07,0.79,0.42,0.37,-1.07,4.1,0.64,0.65,4168.0,0.57,0.08,0.75,0.32,0.43,-0.71,3.23,0.57,0.58,4168.0,0.49,0.08,0.71,0.27,0.44,-0.23,2.89,0.5,0.5,4168.0,0.45,0.07,0.73,0.25,0.48,-0.02,3.84,0.45,0.45,4168.0,0.48,0.07,0.69,0.25,0.43,-0.67,3.28,0.49,0.49,4168.0,0.55,0.08,0.74,0.26,0.48,-1.32,4.5,0.56,0.57,4168.0,0.64,0.11,0.86,0.27,0.59,-1.17,4.09,0.65,0.67,4168.0,0.73,0.08,0.86,0.4,0.46,-1.74,6.07,0.73,0.75,4168.0
ZM-07 = 0.51,0.1,0.74,-0.0,0.74,-1.02,6.09,0.52,0.51,2888.0,0.67,0.11,0.81,-0.04,0.85,-3.23,16.11,0.68,0.7,2888.0,0.64,0.09,0.77,-0.01,0.78,-3.17,16.83,0.65,0.66,2888.0,0.57,0.08,0.71,0.06,0.65,-2.72,13.48,0.58,0.59,2888.0,0.49,0.08,0.66,0.1,0.56,-1.62,8.15,0.49,0.5,2888.0,0.41,0.08,0.61,-0.02,0.63,-1.46,8.14,0.42,0.42,2888.0,0.35,0.07,0.55,-0.01,0.56,-1.01,7.08,0.36,0.35,2888.0,0.3,0.07,0.46,-0.1,0.56,-2.01,11.14,0.31,0.31,2888.0,0.3,0.06,0.46,-0.1,0.55,-2.27,12.4,0.3,0.3,2888.0,0.32,0.08,0.54,-0.1,0.64,-1.23,8.18,0.33,0.32,2888.0,0.43,0.09,0.66,-0.02,0.68,-1.19,6.95,0.44,0.43,2888.0,0.65,0.1,0.83,0.05,0.78,-2.01,9.67,0.66,0.67,2888.0
ZM-08 = 0.65,0.09,0.82,0.4,0.41,-0.02,2.01,0.65,0.64,1057.0,0.77,0.03,0.82,0.53,0.29,-2.02,8.81,0.77,0.78,1057.0,0.75,0.04,0.81,0.53,0.28,-1.21,5.57,0.75,0.75,1057.0,0.69,0.05,0.77,0.44,0.32,-1.29,5.18,0.7,0.7,1057.0,0.6,0.06,0.7,0.36,0.34,-0.84,3.3,0.61,0.61,1057.0,0.53,0.06,0.65,0.3,0.35,-0.62,3.03,0.53,0.54,1057.0,0.45,0.06,0.59,0.27,0.32,-0.19,2.55,0.45,0.45,1057.0,0.42,0.05,0.53,0.27,0.26,-0.3,2.44,0.42,0.42,1057.0,0.45,0.05,0.56,0.29,0.27,-0.27,2.37,0.45,0.45,1057.0,0.53,0.07,0.66,0.31,0.35,-0.55,2.58,0.53,0.54,1057.0,0.62,0.07,0.79,0.37,0.42,-0.57,2.99,0.62,0.63,1057.0,0.75,0.06,0.85,0.49,0.36,-0.94,3.79,0.75,0.76,1057.0
ZM-09 = 0.49,0.08,0.77,0.28,0.49,0.33,2.68,0.5,0.48,742.0,0.76,0.04,0.85,0.55,0.3,-1.43,7.79,0.76,0.76,742.0,0.69,0.05,0.8,0.46,0.34,-0.79,4.64,0.69,0.69,742.0,0.63,0.05,0.75,0.42,0.33,-0.67,4.19,0.63,0.63,742.0,0.56,0.06,0.71,0.34,0.36,-0.23,2.77,0.56,0.55,742.0,0.5,0.07,0.66,0.3,0.36,0.08,2.25,0.5,0.49,742.0,0.44,0.07,0.62,0.27,0.35,0.19,2.14,0.44,0.43,742.0,0.36,0.05,0.51,0.25,0.26,0.36,2.59,0.37,0.36,742.0,0.34,0.03,0.45,0.25,0.2,0.51,3.06,0.34,0.33,742.0,0.37,0.05,0.55,0.26,0.28,0.38,2.57,0.37,0.36,742.0,0.45,0.05,0.59,0.28,0.31,-0.02,2.62,0.45,0.45,742.0,0.69,0.06,0.81,0.46,0.35,-0.91,3.56,0.69,0.7,742.0
