# RWA_2_human_2006_population.properties 
#
# This file contains population values for RWANDA
#
#
#
# /*********************************************************************************************
#
# * Copyright (c) 2006 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
#
# ***********************************************************************************************/
#
#
#
# /**********************************************************************************************
#
# * Key Format: 
#
# * 
#
# * 	 For level 1 data, the key is the ISO3166-2 code. An ISO3166-2 code is composed as follows: 
#
# * a two letter country code followed by up to three alphanumeric characters for the level 1 administration.
#
# *
#
# * 	 For level 2 data, the key is the ISO3166-2 code followed by six digits. The leftmost two digits indicate
#
# * the level 1 container of a level 2 administration (i.e. California is a level 1 container for Orange County
#
# * which is a level 2 administration).  The two digits were taken from a lexicographic sorting of all the
#
# * level 1 administrations within a country. Similarly, the four leftmost digits indicate a level 2 administration.
#
# * Again, these four digits are an index into the lexicographic sorting of all level 2 administrations within 
#
# * a level 1 administration. 
#
# ************************************************************************************************/
#
#
#
# This is the name of the class that will interpret the rest of the file's contents
#
RECORD_CLASSNAME = org.eclipse.stem.internal.data.geography.specifications.CountryPopulationLabelPropertyFileSpecification
#
#
#
# The ISO-3166-1 alpha3 code for the country
#
ISOKEY = RWA
#
#
#
# The administration level of the population data
#
ADMIN_LEVEL = 2
#
#
#
# This is the date range for which the population values in this file are valid 
#
# See http://purl.org/dc/terms/1.1/valid
#
VALID = start=2006-01-01; end=2006-12-31;
#
#
#
# This is the source of the data
#
SOURCE = Primary (https://www.cia.gov/library/publications/the-world-factbook/). 
#
# SOURCE = Distributions (subdivision ratios) validated against ORNL LandScan 2007(TM)/UT-Battelle, LLC 
#
# SOURCE = https://www.cia.gov/library/publications/the-world-factbook/
#
#
#
# The population identifier
#
POPULATION = human
#
#
#
# The year the data is valid
#
YEAR = 2006
#
#
#
# Level 1 (admin 1 = e.g., state)
#
# Level 2 (admin 2 = e.g., county)
#
#
#
RW-G-G050010 = 87771
RW-G-G050011 = 60710
RW-G-G050012 = 88770
RW-H-G120016 = 48441
RW-D-G040013 = 33605
RW-D-G040010 = 51742
RW-D-G040011 = 42973
RW-D-G040012 = 31669
RW-D-G040007 = 49449
RW-D-G040006 = 57180
RW-D-G040009 = 43956
RW-D-G040008 = 32874
RW-G-G050007 = 93697
RW-G-G050006 = 71277
RW-G-G050009 = 59302
RW-G-G050008 = 43970
RW-C-G010020 = 38838
RW-G-G050003 = 93071
RW-G-G050002 = 76916
RW-G-G050005 = 87664
RW-G-G050004 = 56092
RW-C-G010018 = 44149
RW-C-G010017 = 31210
RW-C-G010019 = 32440
RW-C-G010014 = 38866
RW-C-G010013 = 53699
RW-C-G010016 = 32183
RW-C-G010015 = 50842
RW-C-G010010 = 44961
RW-C-G010012 = 31429
RW-C-G010011 = 28048
RW-F-G080003 = 41962
RW-K-G090003 = 71900
RW-F-G080002 = 44339
RW-K-G090002 = 26427
RW-F-G080001 = 61589
RW-B-G060017 = 56671
RW-K-G090005 = 51720
RW-K-G090004 = 46049
RW-F-G080007 = 42059
RW-K-G090007 = 92277
RW-F-G080006 = 69994
RW-K-G090006 = 32429
RW-F-G080005 = 60179
RW-K-G090009 = 39786
RW-F-G080004 = 64961
RW-K-G090008 = 23068
RW-F-G080009 = 65778
RW-F-G080008 = 60838
RW-E-G030006 = 61383
RW-E-G030007 = 62798
RW-E-G030008 = 69325
RW-I-G020002 = 59484
RW-K-G090001 = 80080
RW-E-G030009 = 66203
RW-I-G020001 = 75032
RW-H-G120002 = 64620
RW-H-G120001 = 66550
RW-H-G120004 = 46764
RW-H-G120003 = 87764
RW-E-G030010 = 45750
RW-B-G060006 = 44712
RW-K-G090016 = 43706
RW-B-G060007 = 41849
RW-K-G090015 = 53945
RW-B-G060008 = 48032
RW-K-G090014 = 35751
RW-B-G060009 = 69274
RW-K-G090013 = 91450
RW-K-G090017 = 29015
RW-H-G120009 = 48913
RW-H-G120007 = 68305
RW-K-G090012 = 609347
RW-H-G120008 = 65310
RW-K-G090011 = 104845
RW-H-G120005 = 42420
RW-K-G090010 = 30351
RW-H-G120006 = 73465
RW-H-G120015 = 84659
RW-H-G120014 = 40312
RW-H-G120013 = 61089
RW-H-G120012 = 37803
RW-H-G120011 = 65648
RW-H-G120010 = 65360
RW-B-G060010 = 72398
RW-B-G060012 = 47452
RW-B-G060011 = 56150
RW-B-G060014 = 49626
RW-B-G060013 = 86345
RW-B-G060016 = 58172
RW-B-G060015 = 36632
RW-I-G020017 = 47744
RW-I-G020016 = 62911
RW-I-G020015 = 72258
RW-I-G020014 = 69324
RW-B-G060001 = 38769
RW-B-G060002 = 44813
RW-B-G060003 = 69770
RW-B-G060004 = 55158
RW-B-G060005 = 48291
RW-I-G020008 = 66646
RW-I-G020007 = 104512
RW-I-G020009 = 53834
RW-I-G020004 = 76236
RW-I-G020003 = 60239
RW-I-G020006 = 61698
RW-I-G020005 = 70374
RW-I-G020010 = 58089
RW-I-G020011 = 61388
RW-I-G020012 = 56708
RW-I-G020013 = 109642
RW-E-G030001 = 71783
RW-E-G030004 = 64324
RW-E-G030005 = 49844
RW-E-G030002 = 51629
RW-E-G030003 = 108700
RW-C-G010001 = 40906
RW-C-G010004 = 48135
RW-C-G010005 = 36404
RW-C-G010002 = 27828
RW-C-G010003 = 42285
RW-C-G010008 = 34207
RW-C-G010009 = 35412
RW-C-G010006 = 35959
RW-J-G070010 = 43243
RW-C-G010007 = 37739
RW-J-G070011 = 63484
RW-G-G050001 = 72966
RW-D-G040001 = 36581
RW-J-G070009 = 145207
RW-D-G040003 = 35075
RW-J-G070007 = 77437
RW-D-G040002 = 27568
RW-J-G070008 = 67321
RW-D-G040005 = 37806
RW-J-G070005 = 64396
RW-D-G040004 = 38665
RW-J-G070006 = 57748
RW-J-G070003 = 59405
RW-J-G070004 = 76405
RW-J-G070001 = 87303
RW-J-G070002 = 46165

