# 
#  File generated from:
#   c:/stem/org.eclipse.stem.geography/resources/data/geo/country/BDI/BDI_2_MAP.xml
#   c:/stem/org.eclipse.stem.geography/resources/data/geo/country/COD/COD_0_MAP.xml
#
#  Generated by: class org.eclipse.stem.internal.data.utility.NeighborUtility
# 
RECORD_CLASSNAME = org.eclipse.stem.internal.data.geography.specifications.CommonBorderGeographicRelationshipPropertyFileSpecification
TITLE = Common Border relationship between country BDI and COD
VALID = start=2006-01-01;
ISOKEY_0 = BDI
ISOKEY_0_LEVEL = 2
ISOKEY_1 = COD
ISOKEY_1_LEVEL = 0
#7 = BI-CA-G040002, COD, 0
#8 = BI-CA-G040003, COD, 0
#9 = BI-CA-G040005, COD, 0
#12 = BI-MA-G100001, COD, 0
#13 = BI-MA-G100002, COD, 0
#16 = BI-RT-G150001, COD, 0
0=BI-BB-G010002,COD,23.80237942731599
1=BI-BJ-G020002,COD,15.371843125078122
2=BI-BJ-G020006,COD,1.3229563329023568
3=BI-BJ-G020009,COD,15.493694854799346
4=BI-BJ-G020010,COD,1.0
5=BI-BR-G030006,COD,55.42384057558709
6=BI-CI-G050001,COD,27.202694872547767
7=BI-CI-G050006,COD,28.59042508120592
8=BI-MA-G100003,COD,1.0
9=BI-MA-G100005,COD,28.133570045175315
