diff --git a/.classpath b/.classpath index 5cf8c1dedb834e2749858a6a67f2f4057cff78db..22226a3608a785ccefe9f288a5f96f76ef1b1473 100644 --- a/.classpath +++ b/.classpath @@ -1,8 +1,9 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="src" path="src"/> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> - <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/> - <classpathentry kind="lib" path="/Applications/GAMS24.7/sysdir/apifiles/Java/api/GAMSJavaAPI.jar"/> - <classpathentry kind="output" path="bin"/> -</classpath> +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> + <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/> + <classpathentry kind="lib" path="C:/GAMS/win64/24.7/apifiles/Java/api/GAMSJavaAPI.jar"/> + <classpathentry kind="lib" path="C:/GAMS/win64/24.7/apifiles/Java/api/gams.jar"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/GAMS/IntExtOpt.gms b/GAMS/IntExtOpt.gms index 81cb9de9b7c2c236a5d8648f456d827823caea4b..627ece299ad750e969002d20e3942050a96f21ae 100644 --- a/GAMS/IntExtOpt.gms +++ b/GAMS/IntExtOpt.gms @@ -20,7 +20,7 @@ PARAMETER irrigParam(crop, location) yield response to irrigation parameter; PARAMETER demand(all_types) in t; PARAMETER worldExportPrices(import_crop) prices for exports; - PARAMETER worldImportPrices(import_crop) prices for imports; + PARAMETER countryImportPrices(import_crop) prices for imports; PARAMETER maxNetImport(import_crop) maximum net import for each crop based on world market; PARAMETER minNetImport(import_crop) minimum net import for each crop based on world market; PARAMETER irrigCost(location) irrigation cost in cost per 1000 Mlitre or Mha for each litre per m2; @@ -40,7 +40,7 @@ $gdxin %gdxincname% $load location, suitableLandArea, previousArea, demand, landChangeCost $load yieldNone, yieldFertOnly, yieldIrrigOnly, yieldBoth -$load fertParam, irrigParam, otherIParam, worldExportPrices, worldImportPrices, maxNetImport, minNetImport, unhandledCropArea +$load fertParam, irrigParam, otherIParam, worldExportPrices, countryImportPrices, maxNetImport, minNetImport, unhandledCropArea $load meatEfficency, minFeedRate, otherICost, irrigCost, irrigMaxRate, irrigConstraint, fertiliserUnitCost, domesticPriceMarkup $gdxin @@ -182,7 +182,7 @@ $gdxin ) * landChangeCost ) * domesticPriceMarkup + - SUM(import_crop, importAmount(import_crop) * worldImportPrices(import_crop) - exportAmount(import_crop) * worldExportPrices(import_crop)) + SUM(import_crop, importAmount(import_crop) * countryImportPrices(import_crop) - exportAmount(import_crop) * worldExportPrices(import_crop)) ) / 1000000; MODEL LAND_USE /ALL/ ; @@ -218,7 +218,7 @@ $gdxin totalProdCost(crop) = sum(location, unitCost.l(crop, location) * area.l(crop, location)); totalCropland(location) = sum(crop_less_pasture, area.l(crop_less_pasture, location)); - netImportCost(import_crop) = importAmount.l(import_crop) * worldImportPrices(import_crop) - exportAmount.l(import_crop) * worldExportPrices(import_crop); + netImportCost(import_crop) = importAmount.l(import_crop) * countryImportPrices(import_crop) - exportAmount.l(import_crop) * worldExportPrices(import_crop); netImportAmount(import_crop) = importAmount.l(import_crop) - exportAmount.l(import_crop); feedCost(feed_crop)$(netImportAmount(feed_crop) gt 0) = (totalProdCost(feed_crop) + netImportCost(feed_crop)) * feedAmount.l(feed_crop) / (totalProd(feed_crop) + netImportAmount(feed_crop)); diff --git a/config.properties b/config.properties index e7cabbf392e6668d795c3db68b20545f5301955c..43fbfde17733824f489b078938233fc9eecb5eff 100644 --- a/config.properties +++ b/config.properties @@ -1,18 +1,3 @@ -BASE_DIR=/Users/peteralexander/Documents/R_Workspace/UNPLUM -YIELD_DIR=/Users/peteralexander/Documents/LURG/LPJ - -CLEANUP_GAMS_DIR=true - -CHANGE_YIELD_DATA_YEAR=true -KEEP_DEMAND_FIXED=false -DEBUG_LIMIT_COUNTRIES=false -MAX_IMPORT_CHANGE=0.10 -SEED_AND_WASTE_FRACTION=0.15 - -END_TIMESTEP=0 -TIMESTEP_SIZE=10 -POPULATION_AGGREG_LIMIT=60 - -NUM_CEREAL_CATEGORIES=10 -NUM_PASTURE_CATEGORIES=1 +BASE_DIR=C:\\Eclipse_workspace\\roslyn_bit_clone +YIELD_DIR=C:\\Eclipse_workspace\\roslyn_bit_clone\\LJP\\LPJ_output diff --git a/data/3deg/protected_areas.txt b/data/3deg/protected_areas.txt new file mode 100644 index 0000000000000000000000000000000000000000..66a56fac3126e6c6d430eefd97780698773b0aff --- /dev/null +++ b/data/3deg/protected_areas.txt @@ -0,0 +1,66 @@ +NCOLS 120 +NROWS 60 +XLLCORNER -180 +YLLCORNER -90 +CELLSIZE 3 +NODATA_value -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02434433 0.4623618 0.6110892 0.6230959 0.4204671 0.1545755 0.2604102 0.3995807 0.4679573 0.5555981 0.643379 0.7276576 0.7781647 0.825839 0.8790963 0.9016484 0.9082254 0.8831099 0.8162279 0.6883081 0.533861 0.3626848 0.2635124 0.03696702 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.002721057 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.07721762 0.3116197 0.4577439 0.5992126 0.7406814 0.8821501 0.9921542 1 1 1 1 1 1 1 1 0.4020742 0.1413006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.4406053 0.3439238 0.3065764 0.7108435 0.8858127 0.6556674 0.3711078 0.2245494 0.08502688 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0987065 0.3192411 0.07940025 -9999 -9999 -9999 -9999 -9999 0.01252448 -9999 -9999 -9999 -9999 0.04721797 0.1579802 0.08932674 -9999 -9999 -9999 -9999 0.6666669 1 1 1 1 1 1 1 0.9747906 0.08491535 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1716826 0.3845105 0.1359478 0.3957836 0.1132712 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.3419597 0.3200023 0.2461693 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001417697 0.0006487914 0.002846317 0.235025 0.2725268 0.146086 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.6666667 1 1 1 1 1 1 0.940023 0.3447052 0.01549842 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 1.281856e-005 0.09909391 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02597 0.2918504 0.3142283 0.153946 0.009863413 0.002254692 0.008405858 0.0177945 0.05860161 0.1608043 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0008838467 0.02447455 -9999 -9999 0.01356907 -9999 -9999 -9999 -9999 0.00186088 0.08540115 -9999 0.2222493 0.333374 0.333374 0.333374 0.333374 0.3079386 0.1752607 0.02366881 -9999 -9999 -9999 0.02911504 0.09927222 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.006237949 0.006746721 0.0557294 0.1166138 0.1772136 0.02214434 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 0.1016445 0.05925455 -9999 -9999 0.2151752 0.4558715 0.6606989 0.4197574 0.01015447 -9999 -9999 -9999 0.0209219 0.2811919 0.0003339966 -9999 -9999 -9999 0.07376676 0.5342736 0.484713 0.2037445 -9999 0.1153392 0.06054764 -9999 -9999 -9999 -9999 0.09133074 -9999 0.2150378 0.2172895 0.001146131 -9999 -9999 0.003748691 0.01381939 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01310865 -9999 0.0002511676 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001918279 0.06087233 0.2434961 0.3449709 0.170155 0.2346386 0.1128256 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04266316 0.03237461 0.0004190228 -9999 0.007203138 -9999 -9999 0.03526726 0.01349448 -9999 -9999 0.1095221 0.6871141 0.3620915 -9999 -9999 0.06902855 0.1339439 0.02524231 0.01719607 -9999 -9999 0.05347853 0.02117606 0.001517641 -9999 -9999 -9999 -9999 -9999 0.01211705 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0001963106 0.007795106 0.04834588 0.2557056 9.884733e-005 -9999 -9999 -9999 -9999 -9999 -9999 0.01052795 0.0369344 0.1968612 0.1271293 0.01585247 0.01630078 0.02312154 0.02489099 0.006827155 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001645695 0.01079448 -9999 0.0001894977 0.3917442 0.1246511 0.0135134 0.02760538 0.3396001 0.2916337 -9999 -9999 0.09161336 0.07610867 -9999 -9999 -9999 -9999 -9999 0.004321713 -9999 -9999 -9999 -9999 5.041071e-005 0.0785787 0.02109661 0.006222314 -9999 0.01225426 -9999 -9999 -9999 -9999 -9999 -9999 0.0009367106 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.003497513 -9999 0.004910618 0.2016991 0.1172618 0.08861618 0.01403357 0.001396987 0.01318735 0.005931247 0.003788718 0.001337025 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02073678 0.01006937 -9999 -9999 0.03082568 0.1362285 0.115746 0.1165916 0.2453651 0.2163281 0.01149737 0.02289837 0.1948753 0.5747681 0.09690946 0.001844484 0.005001474 0.1683723 0.236992 0.04457741 0.02401407 6.747761e-005 -9999 -9999 -9999 0.007703044 -9999 0.06668093 0.0101567 0.3212534 0.003576655 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.009845697 0.08548433 0.003167168 -9999 0.003600538 0.08187642 0.03698194 0.01591586 0.01199997 0.006524161 0.03562772 0.06348965 0.01309155 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.00921363 0.05676652 0.05907717 0.07304163 0.04943796 0.01680638 0.01072031 0.02132592 0.08701885 0.0539759 0.1505666 0.004805653 0.03231088 -9999 0.049516 0.001761844 0.1663724 0.1968343 0.1035312 0.2205994 0.2267636 -9999 0.04003717 0.07885772 -9999 0.007506098 2.729533e-006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0009553407 0.02350351 0.02401907 0.0499609 -9999 -9999 0.08667396 0.01049521 0.02914458 0.009410371 0.002410706 0.03802918 0.06989182 0.06541638 0.003903399 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01457016 0.01631027 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.03122152 0.06577113 0.294325 0.1446464 0.1143431 0.3634851 0.1504 0.01205728 0.005097505 0.05657483 0.029436 0.04508416 0.1242518 0.2949375 0.04895327 0.06797585 0.005305156 0.0208091 0.01324734 0.002032847 0.0003697821 0.002137236 0.006911688 2.617226e-005 -9999 0.1539427 0.0007340588 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001893017 0.004246283 0.01402359 0.01036404 0.006965318 0.08275186 0.1116174 0.0419384 0.05682118 0.006266805 0.01065038 0.02648217 0.08251378 0.05617768 0.03334774 0.005773846 -9999 -9999 -9999 -9999 -9999 0.01263738 -9999 -9999 0.02161351 0.01172009 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.08756157 0.1550636 0.004894363 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 1.689926e-005 0.02164523 0.08003032 0.1240298 0.06178687 0.1148412 0.01530819 0.02173764 0.02335618 0.01162952 0.05300395 0.00769566 0.08474184 0.1269584 0.1619626 0.0554163 0.04560122 0.04651917 0.03869908 0.02369396 0.0188392 0.01716197 0.01661524 0.007333906 0.03820381 0.03082557 0.003699233 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 7.718495e-005 0.002593366 0.01275917 0.006387243 0.04208677 0.03927874 0.0147024 0.02442514 0.01146934 0.05759079 0.02788852 0.06391428 0.006993032 0.008363184 0.01000647 0.008451855 0.0002804581 -9999 -9999 0.001341124 0.01392593 -9999 -9999 0.04518036 -9999 0.01064087 0.0354074 0.01026838 0.02662993 -9999 0.007234283 0.01836462 0.1052589 0.1310039 0.1545255 0.1249841 0.08812229 0.0841253 0.1308543 0.1611572 0.04285568 0.01299983 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.002614647 0.05107103 0.02337128 0.1644804 0.0887849 0.05535058 0.003137344 0.002716408 0.001221904 0.002954203 0.005138615 0.0006376259 0.00690457 0.03769214 0.06918668 0.1465042 0.03829603 0.03189711 0.02689526 0.03233107 0.02232296 0.0323888 0.000418793 0.01045512 0.01522316 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0004211164 0.00604883 0.002794823 0.00747692 0.006753363 0.09443169 0.08755976 0.01701309 0.01856887 0.03098039 0.02758857 0.004801421 0.0008529407 0.0166286 0.001222339 -9999 -9999 -9999 -9999 0.000746458 -9999 0.00216351 0.0005081547 -9999 -9999 -9999 0.03121988 0.04445346 0.0315141 0.04234917 -9999 0.0003805032 0.2362859 0.1197754 0.02805457 0.1342936 0.04026653 0.02043867 0.001166143 0.006352279 0.03305943 0.07519059 -9999 -9999 -9999 -9999 -9999 -9999 0.0005016415 0.006155672 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01381002 0.07340624 0.1470955 0.06476977 0.0267083 0.2637176 0.01629276 0.007818709 0.006055802 0.0001576591 0.0008719466 0.01189665 0.001147422 0.0004666366 0.001561432 0.01539901 0.006692821 0.00102149 0.01275764 0.00127119 0.03334974 0.002725949 0.0003241521 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0002712647 0.0156784 0.01651944 0.02220683 0.009860381 0.02081755 0.02983909 0.03117293 0.05057821 0.01252862 0.01633541 0.02950238 0.009684039 0.004701374 -9999 0.01072512 -9999 0.01259941 0.005161272 0.0185667 0.003614717 0.03450122 0.02817575 -9999 0.0003204976 -9999 -9999 0.04079982 0.03926346 0.1125272 0.1048645 -9999 -9999 -9999 -9999 0.03806237 0.4762174 0.2700026 0.1302551 0.1151868 0.06765989 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.008952588 0.07336298 0.03009472 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04966753 0.04956199 0.1362762 0.03441015 0.03134483 0.07763632 0.09466869 0.003131685 0.0005085767 0.0003013343 0.001560579 0.003481218 0.0001957324 0.0005813623 0.0009808983 0.002729523 0.001965115 0.005111225 0.001039448 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0004957905 6.608686e-005 -9999 -9999 -9999 -9999 -9999 0.0005670722 0.02468207 0.01961728 0.01804243 0.002547808 0.001108802 0.002223221 0.01162543 0.02741495 0.09090931 0.05578173 0.06592628 0.02407013 0.0003604739 -9999 -9999 -9999 0.003505011 0.0310856 0.09756137 0.0284881 0.02287468 0.01931977 0.07760562 0.007599231 -9999 0.01877664 0.09130605 0.05331907 0.01335314 0.004238419 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01822888 0.01833721 0.002512212 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.03578011 0.01523133 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 3.845047e-005 0.02473986 0.2967499 0.2163436 0.1077275 0.07586993 0.1000099 0.0009289013 0.000196671 0.002507389 0.002063253 0.006032236 0.005976501 0.002948301 0.002698979 0.01525326 0.0143338 2.422644e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001571793 0.00106231 -9999 -9999 -9999 -9999 0.0006599057 0.01509469 0.009990143 0.01153911 0.0002731956 0.00182984 0.009082493 0.0002649072 0.02564934 0.01456229 0.003138261 0.02954947 0.007109065 0.002593929 -9999 -9999 -9999 -9999 0.01561317 0.07105997 0.007984545 0.01705967 0.04309322 0.02072916 0.009412983 0.009878132 0.02642479 0.06562237 0.1917537 0.03564534 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0001277181 0.0396816 0.12718 0.005743349 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.005579818 0.05730947 0.2559484 0.08119059 0.04032711 0.05607512 0.002418751 0.0003629343 0.003965987 0.007574726 0.01198524 0.005818 0.00650458 0.03094269 0.01046361 0.02467837 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0002620716 -9999 -9999 0.001258405 0.03161805 0.002875806 -9999 0.0007942054 0.002272814 0.001830254 0.0005435016 -9999 -9999 0.001810588 0.005460687 0.0006582471 0.001553782 0.001145408 -9999 -9999 -9999 0.004186348 0.02480305 0.05396092 0.06120702 0.0003355813 0.01664835 -9999 0.01356716 0.003815045 0.01561263 0.09512085 0.07358993 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 1.481103e-005 0.01864748 0.03723633 0.04893404 0.04351974 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0002890061 0.04026034 0.08519159 0.02993879 0.0151322 0.007819116 -9999 1.08516e-005 0.002794266 0.01323728 0.009895593 0.005783896 0.02303475 0.00784962 -9999 -9999 -9999 -9999 9.713767e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001855356 -9999 0.002905258 0.00390638 0.01231718 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.007222221 1.673759e-005 0.0311356 0.0841625 0.05818796 -9999 0.01915196 0.03606699 0.01508774 0.1145515 0.05660168 0.004614951 -9999 0.008327882 0.003646311 0.009619399 0.05763451 0.05999682 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 9.893985e-005 0.0008859887 -9999 -9999 0.0005011211 0.03378302 0.0009555536 -9999 4.990258e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02063462 0.009540037 0.0005921536 0.0004829374 0.03418215 4.389773e-006 0.01021575 0.01908637 0.001736519 0.00323251 0.001013248 0.01165419 0.007689137 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 4.60912e-005 0.009794927 0.02429613 0.004596274 0.01344883 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0005485473 0.01229842 -9999 -9999 -9999 0.02695827 0.0001811807 0.03739341 0.02563485 0.0009039462 -9999 0.02271722 0.01818446 0.051472 0.001990922 0.01147123 0.02493011 0.07203905 0.05188823 0.07617764 0.1195429 0.02392579 0.101033 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0005055583 0.001470286 -9999 -9999 0.0001857846 0.007708205 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 4.020575e-005 0.02300802 0.004508444 -9999 0.002875035 0.02100299 0.1190673 -9999 -9999 -9999 -9999 0.01815689 0.0005062466 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01839087 0.4460795 0.2871198 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.06796639 -9999 -9999 -9999 -9999 -9999 2.590086e-005 -9999 -9999 -9999 0.03427244 0.0877201 0.2244669 0.02133947 0.02936439 0.01349808 0.03434402 0.03014429 0.005667916 0.03199268 0.05788538 0.167196 -9999 -9999 -9999 -9999 -9999 -9999 0.0003653615 0.02747945 0.0109655 0.01025434 0.0004260129 -9999 -9999 -9999 0.005172783 -9999 -9999 -9999 4.932346e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 1.678481e-005 6.241264e-006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.003893838 0.001586737 0.0001107634 0.01379859 0.001641712 -9999 6.582472e-005 0.03487203 0.004960624 0.05183619 0.03142358 0.003240661 0.0003271152 0.003746793 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1294753 0.06617283 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.2310785 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01446495 0.004207751 0.01777655 -9999 -9999 -9999 0.002733533 -9999 -9999 0.02715416 0.1349444 0.01536629 0.02801764 0.05223665 0.04642007 0.05021798 0.04269664 0.02943055 0.04538643 0.006416562 -9999 0.01151885 0.0101233 -9999 -9999 -9999 8.13385e-005 0.04432748 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001420659 0.01542409 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.004509124 0.006116388 0.008953691 0.0008193518 0.006276076 0.01117074 0.01959955 0.006870615 0.02178136 0.05357119 0.001817188 0.0002669718 0.01521083 0.01983576 0.006030621 0.06401973 0.008019025 0.001033072 0.0001505767 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1152756 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1531522 0.5347198 0.02123146 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 3.899442e-006 8.85322e-005 0.1208444 -9999 -9999 0.0002285325 0.02690278 -9999 -9999 -9999 0.001866986 0.0184122 0.02040714 0.05386482 0.02540238 0.0124964 -9999 0.0005469142 0.006658713 0.1210789 0.170683 0.02009339 0.01553886 -9999 -9999 0.02906447 0.005460829 0.0005573972 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0003831566 0.002780759 0.008999429 0.00986775 0.08175882 0.1137508 0.005479481 -9999 0.0001544578 -9999 0.01462381 9.558267e-005 0.0002121931 0.003961182 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.005852163 0.06352745 -9999 -9999 0.002447681 0.2213859 0.1412974 0.00029016 0.07655965 0.7542028 0.1996734 0.009613096 0.5128015 0.01640029 -9999 -9999 -9999 -9999 0.05525647 3.002403e-005 -9999 -9999 -9999 -9999 0.04563349 -9999 -9999 -9999 -9999 -9999 0.01942267 0.00877133 0.01427924 0.01287257 -9999 -9999 -9999 0.001280042 0.1184339 0.2016488 0.03703411 0.03032994 0.0005075929 -9999 -9999 2.279033e-006 0.03605636 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.002467648 0.02883186 0.06253339 0.08316392 -9999 -9999 4.491215e-007 0.004234547 -9999 -9999 0.003628144 4.766614e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.007176483 0.1249826 0.02319623 0.01221446 -9999 0.1872516 0.07809118 0.0005551488 -9999 0.006338143 0.0006178168 0.03009686 0.2317233 -9999 -9999 -9999 -9999 0.06792096 0.01855236 0.008025979 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01100022 0.03359964 0.01250969 -9999 -9999 -9999 0.001064798 0.0002185329 0.05156725 0.1297468 0.1767979 0.1744365 0.01564511 -9999 -9999 0.0003299211 0.01893077 0.02216463 -9999 -9999 -9999 -9999 -9999 -9999 0.001231867 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.03492054 0.04919167 0.01421375 0.01218488 0.08948335 0.03807081 0.02675159 0.016999 0.05076193 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.00405471 0.005126929 0.01486533 0.005195023 0.06062203 0.1560972 0.05746593 0.01658391 0.03724971 0.02589043 0.02427777 0.283496 0.1636949 -9999 -9999 -9999 0.006401068 -9999 0.1344416 0.0002391975 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04873133 0.02715513 -9999 -9999 -9999 0.003271118 -9999 0.06273977 0.04466429 0.06597228 0.01545043 0.006739892 -9999 -9999 0.08499961 0.00417437 0.03659739 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02803001 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.009220922 0.01763014 0.1064447 0.06234707 0.03191777 0.1183029 -9999 0.05188387 -9999 8.164621e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001497017 0.007887033 0.001325948 0.002766341 0.04408819 0.02562861 0.03384166 0.004112444 0.06990741 0.09497354 0.02350608 0.1910142 0.1335604 0.1130347 0.1255385 0.03537973 0.2572781 0.03363692 0.04292308 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.00980428 0.08014967 0.06993838 -9999 -9999 3.833424e-005 0.005249894 0.02478863 0.05601364 0.0001681503 0.0006640597 -9999 -9999 0.007396243 0.02347143 0.001591699 0.02172026 0.0006479299 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0008779923 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.08666646 0.002160918 0.06062058 0.04914987 0.004289132 0.07146075 0.1365455 0.2430094 0.006783939 0.1263412 0.05158157 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.006228608 -9999 0.0005691748 0.03876152 0.04440849 0.06877137 0.001403446 -9999 0.02043756 0.08743399 0.1030637 0.1267821 0.0901106 0.09927224 0.00844068 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 7.756436e-005 -9999 -9999 -9999 -9999 0.001626159 0.07940369 0.01420518 0.04673408 -9999 -9999 0.002869759 0.09848942 0.0381085 -9999 -9999 0.002597313 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01108853 0.08971191 0.318402 0.1622474 0.1521166 0.5237939 0.1200418 0.1797944 0.2820589 0.3299182 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.05559563 0.1259208 0.1679549 -9999 -9999 0.02014156 0.1604408 0.05179908 0.02160451 0.02749018 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.008597376 0.02517606 0.02174747 -9999 0.01041236 0.1005465 0.08915089 0.01739644 0.01982369 0.02785168 0.01472864 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.003314712 0.01531776 0.2465351 0.07679558 0.09570974 0.2089184 0.08054885 0.0728404 0.0225943 0.0001105208 -9999 0.0002451062 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04517385 -9999 0.02974009 0.08919525 0.1841947 0.004023089 0.2241086 0.06222879 0.1349294 0.1331008 0.01252257 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01494981 0.110118 0.08615459 0.005466249 0.04156456 0.09093916 0.01883695 0.02058578 0.08365545 0.001285796 0.004010148 0.04010065 0.1014269 0.02592607 0.07581465 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02022935 0.001480275 -9999 0.02372862 0.02232329 0.0151949 0.06264705 0.08546875 0.1888728 0.1750336 0.009003234 0.02452926 -9999 0.001317217 0.001254131 2.86351e-006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04734648 0.002606423 0.01761214 0.01557051 0.01246633 -9999 0.002617916 0.2268939 0.03826027 0.1564957 0.01351416 -9999 -9999 -9999 -9999 0.0002565683 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0005277487 0.05895092 0.01412824 0.0001459068 0.02373472 0.004369162 0.004356598 0.02174844 0.003028062 0.00271263 0.01260644 0.01296347 0.1791255 0.206597 -9999 -9999 -9999 2.87661e-007 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001501646 0.1532982 0.07596116 -9999 -9999 0.1541348 0.1210364 0.1805573 0.0996362 0.09201496 0.002348016 0.02543605 0.04859592 0.001130393 0.005960594 0.001174187 -9999 -9999 -9999 -9999 -9999 -9999 8.388724e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.05040371 0.03770686 0.142399 0.3206814 0.3156191 0.0001187559 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02440907 0.003231498 0.0105836 0.01153084 0.02184774 0.001583203 0.001733826 0.002388795 0.006607166 0.006096778 0.01682221 0.1078077 0.003020606 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.03673708 0.09165119 0.2982026 0.0002364951 0.1412756 0.05344698 0.02000893 0.01981328 0.008730254 0.0613992 0.1489647 0.03665226 0.004771931 0.01151343 0.0005605366 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.07871173 0.0824064 0.01066122 0.07015751 0.05795529 0.08329464 0.0398283 0.03726359 0.2833236 -9999 -9999 0.003215732 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0002398319 -9999 -9999 0.0008053468 -9999 -9999 4.375719e-005 0.006938125 0.003608549 0.001859398 -9999 0.00360731 0.01718951 -9999 0.00159196 0.02202042 2.961942e-006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 0.0004420306 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 2.428715e-005 0.01539746 0.1668289 0.04009421 0.02193961 0.09180942 0.01408813 0.01052179 0.0003356662 0.0004404199 0.02032023 0.009262604 0.01728248 5.505794e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.007530874 0.002037242 0.0008687247 0.08241037 0.1223698 -9999 0.1429825 0.04174294 0.1539381 0.09335014 -9999 0.0001699691 0.02483974 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0003143557 0.008606899 0.02246554 0.02806213 0.1891305 -9999 -9999 0.09020171 0.03953822 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +0.0003549413 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.005756392 0.004195506 0.001100587 0.03766718 0.003805303 0.003376358 0.00921102 0.01847849 0.03331732 0.01146664 3.234968e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.05371104 0.215873 0.06866629 0.02513485 0.1690363 0.1175604 0.09167331 0.006236513 0.0123562 -9999 -9999 0.001697517 0.01485256 0.03471789 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01149483 0.1035547 0.1444576 8.040146e-005 0.01427636 0.0188414 0.0007088111 0.05970866 0.09291001 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.002998738 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.05366484 0.01749029 -9999 0.04892803 0.02589486 0.01189416 0.01318971 0.000343986 0.01949417 0.01888073 0.008246361 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.004102547 0.1590302 0.186385 0.0365822 0.068404 0.3223301 0.02262876 0.005049237 0.02922527 -9999 -9999 0.01565365 0.002778821 0.002573632 -9999 9.698015e-005 0.0007100024 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.004860575 4.749441e-005 0.1645033 0.07359555 0.06473964 -9999 1.849191e-005 0.002630552 0.02793096 0.02438921 0.07432958 0.01512984 1.149468e-007 -9999 -9999 -9999 0.0005430884 -9999 -9999 -9999 -9999 0.0001870575 +-9999 4.803429e-006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.003526092 0.007917082 0.01584681 0.01539565 0.001171994 0.01011277 0.0180754 0.0009800195 0.02978074 0.02069218 0.002400895 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.07090675 0.1124641 -9999 0.3128913 0.2206871 0.007281783 0.08658414 0.02149634 -9999 -9999 0.003652668 0.01931559 -9999 -9999 0.001559512 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.004191158 0.09288485 0.09650076 0.1191722 0.0289316 -9999 0.02561801 -9999 3.503267e-006 0.01085562 0.04702 0.009605209 0.02016 0.003957689 -9999 -9999 -9999 -9999 0.003800404 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 1.636951e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01048908 0.02164469 0.01905662 0.01775263 0.00853563 0.02551993 0.021475 0.02267275 0.01168157 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.05715272 0.2674475 0.1264848 0.131594 -9999 -9999 0.01938183 -9999 -9999 -9999 0.004518751 0.007503045 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02852811 0.1341882 0.1052314 0.05663797 0.1481709 0.03511074 0.05782263 -9999 0.04217131 0.1466285 0.01649612 0.01988405 0.05222341 0.04478467 0.02101604 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +0.0003042959 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0005038992 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1342328 0.03512517 0.00281301 -9999 0.003792227 0.005213415 0.002830303 0.0176793 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04432135 -9999 -9999 -9999 0.0007214506 0.001295955 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.002767316 0.1508176 0.1124963 0.03136721 0.1016889 0.2388817 0.4173578 0.02473263 0.06879087 0.02457866 0.03445273 0.03782597 0.01453084 0.06784549 0.02071039 -9999 -9999 -9999 7.115684e-005 -9999 -9999 -9999 -9999 +3.57786e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.03678022 0.0171787 0.002604956 0.0009950511 0.001632387 0.03254509 0.001232405 1.003304e-006 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04543883 0.08986347 0.1100614 0.07135841 0.07600948 0.00922898 0.0546 0.05566242 0.03802019 0.02952249 0.04734362 0.05004196 0.1513334 0.00166945 -9999 0.000141642 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.00105545 -9999 0.0002499845 0.06525054 -9999 -9999 -9999 0.001366581 -9999 0.003760839 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.07988849 0.08944619 0.02128112 0.05225098 -9999 -9999 0.001186719 0.04105449 0.08642022 0.1872903 0.03282752 0.09730833 0.1320142 -9999 -9999 -9999 -9999 -9999 -9999 0.0009264898 0.001336363 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001294803 0.06867684 0.04705648 0.003798876 0.002370655 4.946436e-005 0.0004564357 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04620139 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.002035043 0.005420855 0.07134058 0.08797561 0.1810003 0.001306909 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0151808 0.01932379 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.04341655 0.1087839 -9999 -9999 0.005048941 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 8.856775e-005 0.04374272 0.02463966 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.06846295 0.02268618 1.237275e-005 +-9999 0.0005023925 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001822583 0.1648742 0.03593969 -9999 0.01020092 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1504789 0.0157273 -9999 -9999 -9999 -9999 -9999 0.02875275 0.1013936 0.0329504 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.02702647 0.3741864 0.01116889 0.008462525 0.0004822772 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.06074548 0.03001897 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.1390778 0.007715013 -9999 -9999 7.642306e-006 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.09307449 0.5601268 0.003822698 0.004680059 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.03361646 0.134878 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.008087677 -9999 -9999 -9999 0.0002944513 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.006906942 0.2880329 0.01360441 0.01087801 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.001599314 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.01601386 0.1791452 0.01956457 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0122168 0.00110542 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 2.568995e-005 -9999 0.0002414306 -9999 -9999 5.325684e-005 0.0005010834 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.0002816917 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 2.317303e-005 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 0.00643432 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 +-9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 -9999 diff --git a/data/trade_barriers_dummy.csv b/data/trade_barriers_dummy.csv new file mode 100644 index 0000000000000000000000000000000000000000..fc721cae16dbc4e5472cbf6c5a083fbd686ec090 --- /dev/null +++ b/data/trade_barriers_dummy.csv @@ -0,0 +1,1219 @@ +country,itemGroup,tradeBarrier +Afghanistan,WheatBarleyOats,0.679057923844084 +Albania,WheatBarleyOats,0.956880213459954 +Algeria,WheatBarleyOats,0.616871282458305 +Angola,WheatBarleyOats,0.615478900726885 +Argentina,WheatBarleyOats,0.5123159524519 +Armenia,WheatBarleyOats,0.0127905588597059 +Australia,WheatBarleyOats,0.79656797577627 +Austria,WheatBarleyOats,0.0409376309253275 +Azerbaijan,WheatBarleyOats,0.93598008248955 +Bahamas,WheatBarleyOats,0.257549198111519 +Bahrain,WheatBarleyOats,0.817924050148576 +Bangladesh,WheatBarleyOats,0.0207109688781202 +Barbados,WheatBarleyOats,0.613352612825111 +Belarus,WheatBarleyOats,0.918926300480962 +Belgium,WheatBarleyOats,0.0605115171056241 +Belize,WheatBarleyOats,0.447501145303249 +Benin,WheatBarleyOats,0.769701601006091 +Bhutan,WheatBarleyOats,0.333666399354115 +Bolivia (Plurinational State of),WheatBarleyOats,0.934985497035086 +Bosnia and Herzegovina,WheatBarleyOats,0.585301522631198 +Botswana,WheatBarleyOats,0.4766773537267 +Brazil,WheatBarleyOats,0.92991154268384 +Brunei Darussalam,WheatBarleyOats,0.0120958471670747 +Bulgaria,WheatBarleyOats,0.372620457084849 +Burkina Faso,WheatBarleyOats,0.830990381073207 +Burundi,WheatBarleyOats,0.42715766443871 +Cabo Verde,WheatBarleyOats,0.757453091209754 +Cambodia,WheatBarleyOats,0.186707400018349 +Cameroon,WheatBarleyOats,0.82287476840429 +Canada,WheatBarleyOats,0.203784566372633 +Central African Republic,WheatBarleyOats,0.548620268702507 +Chad,WheatBarleyOats,0.227038495242596 +Chile,WheatBarleyOats,0.418367749778554 +China,WheatBarleyOats,0.914155103033409 +Colombia,WheatBarleyOats,0.0179124271962792 +Comoros,WheatBarleyOats,0.492693292209879 +Congo,WheatBarleyOats,0.256931747077033 +Costa Rica,WheatBarleyOats,0.958272346062586 +Cote d'Ivoire,WheatBarleyOats,0.013300665654242 +Croatia,WheatBarleyOats,0.662319334922358 +Cuba,WheatBarleyOats,0.547200942644849 +Cyprus,WheatBarleyOats,0.35121746500954 +Czech Republic,WheatBarleyOats,0.292776581598446 +Democratic Republic of the Congo,WheatBarleyOats,0.965045734541491 +Denmark,WheatBarleyOats,0.856770256068558 +Djibouti,WheatBarleyOats,0.477238573133945 +Dominican Republic,WheatBarleyOats,0.397581562399864 +Ecuador,WheatBarleyOats,0.406977294944227 +Egypt,WheatBarleyOats,0.295513494871557 +El Salvador,WheatBarleyOats,0.204736972926185 +Equatorial Guinea,WheatBarleyOats,0.549174220999703 +Eritrea,WheatBarleyOats,0.203587469644845 +Estonia,WheatBarleyOats,0.722915727179497 +Ethiopia,WheatBarleyOats,0.830510648433119 +Fiji,WheatBarleyOats,0.551264120964333 +Finland,WheatBarleyOats,0.942639901535586 +France,WheatBarleyOats,0.763411528430879 +Gabon,WheatBarleyOats,0.333192267920822 +Gambia,WheatBarleyOats,0.114477276103571 +Georgia,WheatBarleyOats,0.237287427065894 +Germany,WheatBarleyOats,0.769589100265875 +Ghana,WheatBarleyOats,0.935451269848272 +Greece,WheatBarleyOats,0.721605888335034 +Guatemala,WheatBarleyOats,0.865110287675634 +Guinea,WheatBarleyOats,0.0893557043746114 +Guinea-Bissau,WheatBarleyOats,0.868290630634874 +Guyana,WheatBarleyOats,0.0234091591555625 +Haiti,WheatBarleyOats,0.995785664767027 +Honduras,WheatBarleyOats,0.71459848806262 +Hungary,WheatBarleyOats,0.970153084490448 +Iceland,WheatBarleyOats,0.26559581165202 +India,WheatBarleyOats,0.344556845724583 +Indonesia,WheatBarleyOats,0.50641888496466 +Iran (Islamic Republic of),WheatBarleyOats,0.471220351057127 +Iraq,WheatBarleyOats,0.258363300468773 +Ireland,WheatBarleyOats,0.244490669574589 +Israel,WheatBarleyOats,0.130238119279966 +Italy,WheatBarleyOats,0.936369927832857 +Japan,WheatBarleyOats,0.00755518721416593 +Jordan,WheatBarleyOats,0.00891181430779397 +Kazakhstan,WheatBarleyOats,0.814642333425581 +Kenya,WheatBarleyOats,0.330898695392534 +Kuwait,WheatBarleyOats,0.122396547580138 +Kyrgyzstan,WheatBarleyOats,0.505051357904449 +Lao People's Democratic Republic,WheatBarleyOats,0.878543813712895 +Latvia,WheatBarleyOats,0.933686174452305 +Lebanon,WheatBarleyOats,0.824299088446423 +Lesotho,WheatBarleyOats,0.881186868529767 +Liberia,WheatBarleyOats,0.570907581364736 +Libya,WheatBarleyOats,0.472936968086287 +Lithuania,WheatBarleyOats,0.00931230466812849 +Madagascar,WheatBarleyOats,0.728476101066917 +Malawi,WheatBarleyOats,0.467659702757373 +Malaysia,WheatBarleyOats,0.386189271463081 +Maldives,WheatBarleyOats,0.964358148397878 +Mali,WheatBarleyOats,0.594218198210001 +Malta,WheatBarleyOats,0.354607948102057 +Mauritania,WheatBarleyOats,0.458044823026285 +Mauritius,WheatBarleyOats,0.725469424389303 +Mexico,WheatBarleyOats,0.823095689993352 +Mongolia,WheatBarleyOats,0.417321473360062 +Morocco,WheatBarleyOats,0.596047510160133 +Mozambique,WheatBarleyOats,0.731573778670281 +Namibia,WheatBarleyOats,0.384729544399306 +Nepal,WheatBarleyOats,0.379071110393852 +Netherlands,WheatBarleyOats,0.125101829413325 +New Zealand,WheatBarleyOats,0.554242389509454 +Nicaragua,WheatBarleyOats,0.152281905291602 +Niger,WheatBarleyOats,0.436868170741946 +Nigeria,WheatBarleyOats,0.0903436150401831 +Norway,WheatBarleyOats,0.261078550480306 +Occupied Palestinian Territory,WheatBarleyOats,0.0304101938381791 +Oman,WheatBarleyOats,0.370653251651675 +Pakistan,WheatBarleyOats,0.0964567456394434 +Panama,WheatBarleyOats,0.996353105874732 +Papua New Guinea,WheatBarleyOats,0.435426898067817 +Paraguay,WheatBarleyOats,0.44374383892864 +Peru,WheatBarleyOats,0.326546213356778 +Philippines,WheatBarleyOats,0.453686875058338 +Poland,WheatBarleyOats,0.147717612795532 +Portugal,WheatBarleyOats,0.749457180500031 +Puerto Rico,WheatBarleyOats,0.695954585215077 +Qatar,WheatBarleyOats,0.65343157062307 +Republic of Korea,WheatBarleyOats,0.270889232400805 +Republic of Moldova,WheatBarleyOats,0.33585744141601 +Romania,WheatBarleyOats,0.881088493857533 +Russian Federation,WheatBarleyOats,0.165579452179372 +Rwanda,WheatBarleyOats,0.712287125177681 +Saint Lucia,WheatBarleyOats,0.708064066944644 +Saint Vincent and the Grenadines,WheatBarleyOats,0.795565922744572 +Samoa,WheatBarleyOats,0.443345436127856 +Sao Tome and Principe,WheatBarleyOats,0.406231040367857 +Saudi Arabia,WheatBarleyOats,0.148896281607449 +Senegal,WheatBarleyOats,0.913239856483415 +Serbia,WheatBarleyOats,0.37273893575184 +Sierra Leone,WheatBarleyOats,0.968239476438612 +Slovakia,WheatBarleyOats,0.957327168667689 +Slovenia,WheatBarleyOats,0.577125757699832 +Solomon Islands,WheatBarleyOats,0.321335677755997 +South Africa,WheatBarleyOats,0.417588383657858 +Spain,WheatBarleyOats,0.807930022012442 +Sri Lanka,WheatBarleyOats,0.327209141105413 +Suriname,WheatBarleyOats,0.777046841336414 +Swaziland,WheatBarleyOats,0.721513658063486 +Sweden,WheatBarleyOats,0.739435529336333 +Switzerland,WheatBarleyOats,0.336432305397466 +Tajikistan,WheatBarleyOats,0.629347630543634 +Thailand,WheatBarleyOats,0.960306202527136 +The former Yugoslav Republic of Macedonia,WheatBarleyOats,0.0740666883066297 +Timor-Leste,WheatBarleyOats,0.928079874720424 +Togo,WheatBarleyOats,0.774586373474449 +Tonga,WheatBarleyOats,0.482873736182228 +Trinidad and Tobago,WheatBarleyOats,0.83934731176123 +Tunisia,WheatBarleyOats,0.777437143260613 +Turkey,WheatBarleyOats,0.150534565094858 +Turkmenistan,WheatBarleyOats,0.0517261689528823 +Uganda,WheatBarleyOats,0.377905882429332 +Ukraine,WheatBarleyOats,0.315508985193446 +United Arab Emirates,WheatBarleyOats,0.487948854453862 +United Kingdom,WheatBarleyOats,0.503970863763243 +United Republic of Tanzania,WheatBarleyOats,0.030751880723983 +United States of America,WheatBarleyOats,0.485925060464069 +Uruguay,WheatBarleyOats,0.170734635088593 +Uzbekistan,WheatBarleyOats,0.579558882862329 +Vanuatu,WheatBarleyOats,0.710800515720621 +Venezuela (Bolivarian Republic of),WheatBarleyOats,0.919350800802931 +Viet Nam,WheatBarleyOats,0.912461928557605 +Yemen,WheatBarleyOats,0.460270305396989 +Zambia,WheatBarleyOats,0.0910188320558518 +Zimbabwe,WheatBarleyOats,0.543984182644635 +Sudan,WheatBarleyOats,0.840207003755495 +South Sudan,WheatBarleyOats,0.508912439225242 +Somalia,WheatBarleyOats,0.622111069271341 +Myanmar,WheatBarleyOats,0.0222889063879848 +Afghanistan,MaizeMilletSorghum,0.421320925233886 +Albania,MaizeMilletSorghum,0.637400696286932 +Algeria,MaizeMilletSorghum,0.718971355818212 +Angola,MaizeMilletSorghum,0.696284056408331 +Argentina,MaizeMilletSorghum,0.434691859874874 +Armenia,MaizeMilletSorghum,0.516965223010629 +Australia,MaizeMilletSorghum,0.340836325427517 +Austria,MaizeMilletSorghum,0.0497361605521291 +Azerbaijan,MaizeMilletSorghum,0.13350541703403 +Bahamas,MaizeMilletSorghum,0.404347663279623 +Bahrain,MaizeMilletSorghum,0.049309273948893 +Bangladesh,MaizeMilletSorghum,0.201169346924871 +Barbados,MaizeMilletSorghum,0.787523445440456 +Belarus,MaizeMilletSorghum,0.0275943137239665 +Belgium,MaizeMilletSorghum,0.0547532227355987 +Belize,MaizeMilletSorghum,0.706469419877976 +Benin,MaizeMilletSorghum,0.493913377635181 +Bhutan,MaizeMilletSorghum,0.0821680664084852 +Bolivia (Plurinational State of),MaizeMilletSorghum,0.816505486844108 +Bosnia and Herzegovina,MaizeMilletSorghum,0.998941127676517 +Botswana,MaizeMilletSorghum,0.967712576501071 +Brazil,MaizeMilletSorghum,0.104480859125033 +Brunei Darussalam,MaizeMilletSorghum,0.206820144318044 +Bulgaria,MaizeMilletSorghum,0.181169687537476 +Burkina Faso,MaizeMilletSorghum,0.389540592208505 +Burundi,MaizeMilletSorghum,0.333355710841715 +Cabo Verde,MaizeMilletSorghum,0.857467320980504 +Cambodia,MaizeMilletSorghum,0.163197037065402 +Cameroon,MaizeMilletSorghum,0.272541961399838 +Canada,MaizeMilletSorghum,0.28057986847125 +Central African Republic,MaizeMilletSorghum,0.697810302721336 +Chad,MaizeMilletSorghum,0.341772289713845 +Chile,MaizeMilletSorghum,0.689296290045604 +China,MaizeMilletSorghum,0.691549643874168 +Colombia,MaizeMilletSorghum,0.250402881531045 +Comoros,MaizeMilletSorghum,0.313582411268726 +Congo,MaizeMilletSorghum,0.362780189141631 +Costa Rica,MaizeMilletSorghum,0.825730561977252 +Cote d'Ivoire,MaizeMilletSorghum,0.380318222101778 +Croatia,MaizeMilletSorghum,0.932821809081361 +Cuba,MaizeMilletSorghum,0.13879331597127 +Cyprus,MaizeMilletSorghum,0.182736195623875 +Czech Republic,MaizeMilletSorghum,0.108228024560958 +Democratic Republic of the Congo,MaizeMilletSorghum,0.654050332261249 +Denmark,MaizeMilletSorghum,0.333135182736441 +Djibouti,MaizeMilletSorghum,0.729211647529155 +Dominican Republic,MaizeMilletSorghum,0.344192378455773 +Ecuador,MaizeMilletSorghum,0.586403241148219 +Egypt,MaizeMilletSorghum,0.383905244292691 +El Salvador,MaizeMilletSorghum,0.0727189115714282 +Equatorial Guinea,MaizeMilletSorghum,0.211542097385973 +Eritrea,MaizeMilletSorghum,0.676215939223766 +Estonia,MaizeMilletSorghum,0.0430504146497697 +Ethiopia,MaizeMilletSorghum,0.923186952481046 +Fiji,MaizeMilletSorghum,0.254136177245528 +Finland,MaizeMilletSorghum,0.0470747638028115 +France,MaizeMilletSorghum,0.625319715356454 +Gabon,MaizeMilletSorghum,0.836843743221834 +Gambia,MaizeMilletSorghum,0.962343698600307 +Georgia,MaizeMilletSorghum,0.420435796724632 +Germany,MaizeMilletSorghum,0.931403670227155 +Ghana,MaizeMilletSorghum,0.860005158698186 +Greece,MaizeMilletSorghum,0.237913556629792 +Guatemala,MaizeMilletSorghum,0.159678318537772 +Guinea,MaizeMilletSorghum,0.674940064782277 +Guinea-Bissau,MaizeMilletSorghum,0.201099824858829 +Guyana,MaizeMilletSorghum,0.18285647360608 +Haiti,MaizeMilletSorghum,0.0382895616348833 +Honduras,MaizeMilletSorghum,0.280866507906467 +Hungary,MaizeMilletSorghum,0.678197721485049 +Iceland,MaizeMilletSorghum,0.167733343318105 +India,MaizeMilletSorghum,0.448628671700135 +Indonesia,MaizeMilletSorghum,0.233256331412122 +Iran (Islamic Republic of),MaizeMilletSorghum,0.174734592437744 +Iraq,MaizeMilletSorghum,0.970132730202749 +Ireland,MaizeMilletSorghum,0.477435627952218 +Israel,MaizeMilletSorghum,0.733269905671477 +Italy,MaizeMilletSorghum,0.128869122592732 +Japan,MaizeMilletSorghum,0.114989997120574 +Jordan,MaizeMilletSorghum,0.590512708062306 +Kazakhstan,MaizeMilletSorghum,0.00334558868780732 +Kenya,MaizeMilletSorghum,0.43718799110502 +Kuwait,MaizeMilletSorghum,0.236453839577734 +Kyrgyzstan,MaizeMilletSorghum,0.703231286257505 +Lao People's Democratic Republic,MaizeMilletSorghum,0.411625763168558 +Latvia,MaizeMilletSorghum,0.196166814304888 +Lebanon,MaizeMilletSorghum,0.101814874447882 +Lesotho,MaizeMilletSorghum,0.466188973747194 +Liberia,MaizeMilletSorghum,0.193347305525094 +Libya,MaizeMilletSorghum,0.455217268783599 +Lithuania,MaizeMilletSorghum,0.522475165082142 +Madagascar,MaizeMilletSorghum,0.792144985636696 +Malawi,MaizeMilletSorghum,0.452770250150934 +Malaysia,MaizeMilletSorghum,0.28106726729311 +Maldives,MaizeMilletSorghum,0.27439479669556 +Mali,MaizeMilletSorghum,0.440329458098859 +Malta,MaizeMilletSorghum,0.956227472284809 +Mauritania,MaizeMilletSorghum,0.661163987359032 +Mauritius,MaizeMilletSorghum,0.730366273550317 +Mexico,MaizeMilletSorghum,0.977448186604306 +Mongolia,MaizeMilletSorghum,0.464013066608459 +Morocco,MaizeMilletSorghum,0.72217636089772 +Mozambique,MaizeMilletSorghum,0.205394496209919 +Namibia,MaizeMilletSorghum,0.493175906594843 +Nepal,MaizeMilletSorghum,0.68230409338139 +Netherlands,MaizeMilletSorghum,0.451971732545644 +New Zealand,MaizeMilletSorghum,0.609097651671618 +Nicaragua,MaizeMilletSorghum,0.241722660372034 +Niger,MaizeMilletSorghum,0.379859761567786 +Nigeria,MaizeMilletSorghum,0.284051689552143 +Norway,MaizeMilletSorghum,0.594048188533634 +Occupied Palestinian Territory,MaizeMilletSorghum,0.911008137278259 +Oman,MaizeMilletSorghum,0.0165367340669036 +Pakistan,MaizeMilletSorghum,0.111291018780321 +Panama,MaizeMilletSorghum,0.107688861433417 +Papua New Guinea,MaizeMilletSorghum,0.87265900708735 +Paraguay,MaizeMilletSorghum,0.289350473321974 +Peru,MaizeMilletSorghum,0.0816937752533704 +Philippines,MaizeMilletSorghum,0.440611363155767 +Poland,MaizeMilletSorghum,0.963653399376199 +Portugal,MaizeMilletSorghum,0.983689511427656 +Puerto Rico,MaizeMilletSorghum,0.21543547604233 +Qatar,MaizeMilletSorghum,0.866381308063865 +Republic of Korea,MaizeMilletSorghum,0.990034318296239 +Republic of Moldova,MaizeMilletSorghum,0.269244720228016 +Romania,MaizeMilletSorghum,0.502719932002947 +Russian Federation,MaizeMilletSorghum,0.89642547769472 +Rwanda,MaizeMilletSorghum,0.0136563405394554 +Saint Lucia,MaizeMilletSorghum,0.607413584832102 +Saint Vincent and the Grenadines,MaizeMilletSorghum,0.986069038743153 +Samoa,MaizeMilletSorghum,0.696231390349567 +Sao Tome and Principe,MaizeMilletSorghum,0.257158853579313 +Saudi Arabia,MaizeMilletSorghum,0.492449743673205 +Senegal,MaizeMilletSorghum,0.619424232980236 +Serbia,MaizeMilletSorghum,0.890736181521788 +Sierra Leone,MaizeMilletSorghum,0.360001716995612 +Slovakia,MaizeMilletSorghum,0.368908939184621 +Slovenia,MaizeMilletSorghum,0.154915626626462 +Solomon Islands,MaizeMilletSorghum,0.368930870899931 +South Africa,MaizeMilletSorghum,0.00153495301492512 +Spain,MaizeMilletSorghum,0.203186643542722 +Sri Lanka,MaizeMilletSorghum,0.222086647059768 +Suriname,MaizeMilletSorghum,0.516685363370925 +Swaziland,MaizeMilletSorghum,0.87041406868957 +Sweden,MaizeMilletSorghum,0.163135836832225 +Switzerland,MaizeMilletSorghum,0.356624672189355 +Tajikistan,MaizeMilletSorghum,0.751777019817382 +Thailand,MaizeMilletSorghum,0.774574333103374 +The former Yugoslav Republic of Macedonia,MaizeMilletSorghum,0.727341525256634 +Timor-Leste,MaizeMilletSorghum,0.340717160142958 +Togo,MaizeMilletSorghum,0.648663536878303 +Tonga,MaizeMilletSorghum,0.0207823489326984 +Trinidad and Tobago,MaizeMilletSorghum,0.741689387708902 +Tunisia,MaizeMilletSorghum,0.276270428905264 +Turkey,MaizeMilletSorghum,0.0132445737253875 +Turkmenistan,MaizeMilletSorghum,0.815910362172872 +Uganda,MaizeMilletSorghum,0.619070196058601 +Ukraine,MaizeMilletSorghum,0.287369494093582 +United Arab Emirates,MaizeMilletSorghum,0.396640528226271 +United Kingdom,MaizeMilletSorghum,0.486150648444891 +United Republic of Tanzania,MaizeMilletSorghum,0.657481979345903 +United States of America,MaizeMilletSorghum,0.506059050792828 +Uruguay,MaizeMilletSorghum,0.15686656627804 +Uzbekistan,MaizeMilletSorghum,0.236883429810405 +Vanuatu,MaizeMilletSorghum,0.0227966173551977 +Venezuela (Bolivarian Republic of),MaizeMilletSorghum,0.076862208545208 +Viet Nam,MaizeMilletSorghum,0.175307855941355 +Yemen,MaizeMilletSorghum,0.400129575747997 +Zambia,MaizeMilletSorghum,0.482723301276565 +Zimbabwe,MaizeMilletSorghum,0.437569742091 +Sudan,MaizeMilletSorghum,0.172522244276479 +South Sudan,MaizeMilletSorghum,0.569469212787226 +Somalia,MaizeMilletSorghum,0.57149360049516 +Myanmar,MaizeMilletSorghum,0.77896815771237 +Afghanistan,Oilcrops + (Total),0.557310102740303 +Albania,Oilcrops + (Total),0.0504818237386644 +Algeria,Oilcrops + (Total),0.237365993205458 +Angola,Oilcrops + (Total),0.65554841957055 +Argentina,Oilcrops + (Total),0.246021003229544 +Armenia,Oilcrops + (Total),0.107142908498645 +Australia,Oilcrops + (Total),0.742928422987461 +Austria,Oilcrops + (Total),0.781668010633439 +Azerbaijan,Oilcrops + (Total),0.4638667316176 +Bahamas,Oilcrops + (Total),0.514506682520732 +Bahrain,Oilcrops + (Total),0.928603295469657 +Bangladesh,Oilcrops + (Total),0.811042698798701 +Barbados,Oilcrops + (Total),0.301002640509978 +Belarus,Oilcrops + (Total),0.160236864117905 +Belgium,Oilcrops + (Total),0.477200987515971 +Belize,Oilcrops + (Total),0.639297142392024 +Benin,Oilcrops + (Total),0.529454455245286 +Bhutan,Oilcrops + (Total),0.623692332534119 +Bolivia (Plurinational State of),Oilcrops + (Total),0.508808394894004 +Bosnia and Herzegovina,Oilcrops + (Total),0.49142322759144 +Botswana,Oilcrops + (Total),0.144599533639848 +Brazil,Oilcrops + (Total),0.0147675073239952 +Brunei Darussalam,Oilcrops + (Total),0.356488258810714 +Bulgaria,Oilcrops + (Total),0.520320451818407 +Burkina Faso,Oilcrops + (Total),0.986584009835497 +Burundi,Oilcrops + (Total),0.669465888524428 +Cabo Verde,Oilcrops + (Total),0.947514391504228 +Cambodia,Oilcrops + (Total),0.586322201648727 +Cameroon,Oilcrops + (Total),0.56691439053975 +Canada,Oilcrops + (Total),0.763359925942495 +Central African Republic,Oilcrops + (Total),0.37402507266961 +Chad,Oilcrops + (Total),0.0854750566650182 +Chile,Oilcrops + (Total),0.540050010429695 +China,Oilcrops + (Total),0.721604244317859 +Colombia,Oilcrops + (Total),0.303734424524009 +Comoros,Oilcrops + (Total),0.593593980418518 +Congo,Oilcrops + (Total),0.827250760048628 +Costa Rica,Oilcrops + (Total),0.405604895204306 +Cote d'Ivoire,Oilcrops + (Total),0.728630390251055 +Croatia,Oilcrops + (Total),0.261168283876032 +Cuba,Oilcrops + (Total),0.272718114545569 +Cyprus,Oilcrops + (Total),0.70819829008542 +Czech Republic,Oilcrops + (Total),0.991222349693999 +Democratic Republic of the Congo,Oilcrops + (Total),0.204338809475303 +Denmark,Oilcrops + (Total),0.466989423148334 +Djibouti,Oilcrops + (Total),0.866372673772275 +Dominican Republic,Oilcrops + (Total),0.427697324892506 +Ecuador,Oilcrops + (Total),0.972428329754621 +Egypt,Oilcrops + (Total),0.983774541411549 +El Salvador,Oilcrops + (Total),0.490705386037007 +Equatorial Guinea,Oilcrops + (Total),0.56137447245419 +Eritrea,Oilcrops + (Total),0.618209777865559 +Estonia,Oilcrops + (Total),0.128056380432099 +Ethiopia,Oilcrops + (Total),0.40078458446078 +Fiji,Oilcrops + (Total),0.806576094590127 +Finland,Oilcrops + (Total),0.820724808843806 +France,Oilcrops + (Total),0.39597489638254 +Gabon,Oilcrops + (Total),0.0639600800350308 +Gambia,Oilcrops + (Total),0.52780500985682 +Georgia,Oilcrops + (Total),0.320340319070965 +Germany,Oilcrops + (Total),0.692085832823068 +Ghana,Oilcrops + (Total),0.7488882036414 +Greece,Oilcrops + (Total),0.23304231162183 +Guatemala,Oilcrops + (Total),0.742371389642358 +Guinea,Oilcrops + (Total),0.364565554307774 +Guinea-Bissau,Oilcrops + (Total),0.583416210021824 +Guyana,Oilcrops + (Total),0.485742386896163 +Haiti,Oilcrops + (Total),0.761400557821617 +Honduras,Oilcrops + (Total),0.649996706517413 +Hungary,Oilcrops + (Total),0.596177812898532 +Iceland,Oilcrops + (Total),0.822764597600326 +India,Oilcrops + (Total),0.253624298842624 +Indonesia,Oilcrops + (Total),0.918364841025323 +Iran (Islamic Republic of),Oilcrops + (Total),0.255031221313402 +Iraq,Oilcrops + (Total),0.947564278962091 +Ireland,Oilcrops + (Total),0.770652952836826 +Israel,Oilcrops + (Total),0.794765081722289 +Italy,Oilcrops + (Total),0.652758165728301 +Japan,Oilcrops + (Total),0.608670088928193 +Jordan,Oilcrops + (Total),0.339200080605224 +Kazakhstan,Oilcrops + (Total),0.982896659290418 +Kenya,Oilcrops + (Total),0.759712680242956 +Kuwait,Oilcrops + (Total),0.445091810775921 +Kyrgyzstan,Oilcrops + (Total),0.569745333865285 +Lao People's Democratic Republic,Oilcrops + (Total),0.359840914839879 +Latvia,Oilcrops + (Total),0.74590115994215 +Lebanon,Oilcrops + (Total),0.581833752570674 +Lesotho,Oilcrops + (Total),0.663129631662741 +Liberia,Oilcrops + (Total),0.743045322829857 +Libya,Oilcrops + (Total),0.0681248412001878 +Lithuania,Oilcrops + (Total),0.176507072523236 +Madagascar,Oilcrops + (Total),0.180520048597828 +Malawi,Oilcrops + (Total),0.37283122446388 +Malaysia,Oilcrops + (Total),0.979349678382277 +Maldives,Oilcrops + (Total),0.321862643351778 +Mali,Oilcrops + (Total),0.241175599163398 +Malta,Oilcrops + (Total),0.961391878314316 +Mauritania,Oilcrops + (Total),0.942265933612362 +Mauritius,Oilcrops + (Total),0.91435307986103 +Mexico,Oilcrops + (Total),0.314510596683249 +Mongolia,Oilcrops + (Total),0.634984298376366 +Morocco,Oilcrops + (Total),0.734881748445332 +Mozambique,Oilcrops + (Total),0.117435415741056 +Namibia,Oilcrops + (Total),0.518248807871714 +Nepal,Oilcrops + (Total),0.511472646379843 +Netherlands,Oilcrops + (Total),0.831035865703598 +New Zealand,Oilcrops + (Total),0.794487644918263 +Nicaragua,Oilcrops + (Total),0.937961868476123 +Niger,Oilcrops + (Total),0.8366290172562 +Nigeria,Oilcrops + (Total),0.259002433856949 +Norway,Oilcrops + (Total),0.695488745346665 +Occupied Palestinian Territory,Oilcrops + (Total),0.18997311568819 +Oman,Oilcrops + (Total),0.0916006232146174 +Pakistan,Oilcrops + (Total),0.760808269027621 +Panama,Oilcrops + (Total),0.0627786961849779 +Papua New Guinea,Oilcrops + (Total),0.943193091312423 +Paraguay,Oilcrops + (Total),0.313163351733238 +Peru,Oilcrops + (Total),0.884381414856762 +Philippines,Oilcrops + (Total),0.301469855010509 +Poland,Oilcrops + (Total),0.137087071081623 +Portugal,Oilcrops + (Total),0.169111372902989 +Puerto Rico,Oilcrops + (Total),0.988539698300883 +Qatar,Oilcrops + (Total),0.473617054754868 +Republic of Korea,Oilcrops + (Total),0.361977640772238 +Republic of Moldova,Oilcrops + (Total),0.446502450387925 +Romania,Oilcrops + (Total),0.201462032739073 +Russian Federation,Oilcrops + (Total),0.743414582684636 +Rwanda,Oilcrops + (Total),0.841641203733161 +Saint Lucia,Oilcrops + (Total),0.895245007239282 +Saint Vincent and the Grenadines,Oilcrops + (Total),0.529465225059539 +Samoa,Oilcrops + (Total),0.272140765096992 +Sao Tome and Principe,Oilcrops + (Total),0.200814297189936 +Saudi Arabia,Oilcrops + (Total),0.103848129045218 +Senegal,Oilcrops + (Total),0.935429642675444 +Serbia,Oilcrops + (Total),0.940132906660438 +Sierra Leone,Oilcrops + (Total),0.306496131932363 +Slovakia,Oilcrops + (Total),0.349529824452475 +Slovenia,Oilcrops + (Total),0.28943363763392 +Solomon Islands,Oilcrops + (Total),0.957395077915862 +South Africa,Oilcrops + (Total),0.519151496468112 +Spain,Oilcrops + (Total),0.820317037636414 +Sri Lanka,Oilcrops + (Total),0.64202508283779 +Suriname,Oilcrops + (Total),0.841930720955133 +Swaziland,Oilcrops + (Total),0.346057635731995 +Sweden,Oilcrops + (Total),0.0754803558811545 +Switzerland,Oilcrops + (Total),0.68903965712525 +Tajikistan,Oilcrops + (Total),0.0245648974087089 +Thailand,Oilcrops + (Total),0.0866169119253755 +The former Yugoslav Republic of Macedonia,Oilcrops + (Total),0.245812846114859 +Timor-Leste,Oilcrops + (Total),0.672517588594928 +Togo,Oilcrops + (Total),0.800176304532215 +Tonga,Oilcrops + (Total),0.726789063541219 +Trinidad and Tobago,Oilcrops + (Total),0.42955473670736 +Tunisia,Oilcrops + (Total),0.420489299343899 +Turkey,Oilcrops + (Total),0.637858551926911 +Turkmenistan,Oilcrops + (Total),0.192805196624249 +Uganda,Oilcrops + (Total),0.761694452026859 +Ukraine,Oilcrops + (Total),0.802979400847107 +United Arab Emirates,Oilcrops + (Total),0.0965010325890034 +United Kingdom,Oilcrops + (Total),0.167464015772566 +United Republic of Tanzania,Oilcrops + (Total),0.270831657573581 +United States of America,Oilcrops + (Total),0.55584758380428 +Uruguay,Oilcrops + (Total),0.119305677479133 +Uzbekistan,Oilcrops + (Total),0.367789549287409 +Vanuatu,Oilcrops + (Total),0.0169885263312608 +Venezuela (Bolivarian Republic of),Oilcrops + (Total),0.597417302196845 +Viet Nam,Oilcrops + (Total),0.639618014916778 +Yemen,Oilcrops + (Total),0.0402776000555605 +Zambia,Oilcrops + (Total),0.104077651398256 +Zimbabwe,Oilcrops + (Total),0.430843375390396 +Sudan,Oilcrops + (Total),0.228344250237569 +South Sudan,Oilcrops + (Total),0.687325405189767 +Somalia,Oilcrops + (Total),0.309567930176854 +Myanmar,Oilcrops + (Total),0.620344701223075 +Afghanistan,Pulses + (Total),0.28187824995257 +Albania,Pulses + (Total),0.0748206542339176 +Algeria,Pulses + (Total),0.577955122105777 +Angola,Pulses + (Total),0.0692324163392186 +Argentina,Pulses + (Total),0.852766866562888 +Armenia,Pulses + (Total),0.777878846973181 +Australia,Pulses + (Total),0.668175832368433 +Austria,Pulses + (Total),0.315817475086078 +Azerbaijan,Pulses + (Total),0.993160496698692 +Bahamas,Pulses + (Total),0.372156048426405 +Bahrain,Pulses + (Total),0.461073651444167 +Bangladesh,Pulses + (Total),0.565222720615566 +Barbados,Pulses + (Total),0.837203859351575 +Belarus,Pulses + (Total),0.793022428872064 +Belgium,Pulses + (Total),0.341718568932265 +Belize,Pulses + (Total),0.685397781431675 +Benin,Pulses + (Total),0.530929756350815 +Bhutan,Pulses + (Total),0.346757891355082 +Bolivia (Plurinational State of),Pulses + (Total),0.955106412991881 +Bosnia and Herzegovina,Pulses + (Total),0.909395601367578 +Botswana,Pulses + (Total),0.839709188789129 +Brazil,Pulses + (Total),0.310172543628141 +Brunei Darussalam,Pulses + (Total),0.632598312105983 +Bulgaria,Pulses + (Total),0.143624744610861 +Burkina Faso,Pulses + (Total),0.900209644110873 +Burundi,Pulses + (Total),0.753014188027009 +Cabo Verde,Pulses + (Total),0.292058229912072 +Cambodia,Pulses + (Total),0.396925090579316 +Cameroon,Pulses + (Total),0.428217864129692 +Canada,Pulses + (Total),0.558635148918256 +Central African Republic,Pulses + (Total),0.2250462686643 +Chad,Pulses + (Total),0.525233294116333 +Chile,Pulses + (Total),0.948542326223105 +China,Pulses + (Total),0.0749606844037771 +Colombia,Pulses + (Total),0.32609930401668 +Comoros,Pulses + (Total),0.0836286440026015 +Congo,Pulses + (Total),0.711109916679561 +Costa Rica,Pulses + (Total),0.507983072660863 +Cote d'Ivoire,Pulses + (Total),0.408878456568345 +Croatia,Pulses + (Total),0.677265956299379 +Cuba,Pulses + (Total),0.800469726789743 +Cyprus,Pulses + (Total),0.957772926660255 +Czech Republic,Pulses + (Total),0.885760259116068 +Democratic Republic of the Congo,Pulses + (Total),0.573706130031496 +Denmark,Pulses + (Total),0.316760597983375 +Djibouti,Pulses + (Total),0.392640902660787 +Dominican Republic,Pulses + (Total),0.879388332832605 +Ecuador,Pulses + (Total),0.815647926880047 +Egypt,Pulses + (Total),0.958934807451442 +El Salvador,Pulses + (Total),0.3266806229949 +Equatorial Guinea,Pulses + (Total),0.344292191322893 +Eritrea,Pulses + (Total),0.229634153889492 +Estonia,Pulses + (Total),0.385757188079879 +Ethiopia,Pulses + (Total),0.279523564036936 +Fiji,Pulses + (Total),0.712144220015034 +Finland,Pulses + (Total),0.0314580774866045 +France,Pulses + (Total),0.388707342091948 +Gabon,Pulses + (Total),0.47884035971947 +Gambia,Pulses + (Total),0.123416749062017 +Georgia,Pulses + (Total),0.244796821847558 +Germany,Pulses + (Total),0.675759373698384 +Ghana,Pulses + (Total),0.0238125952892005 +Greece,Pulses + (Total),0.295594874769449 +Guatemala,Pulses + (Total),0.539474012795836 +Guinea,Pulses + (Total),0.402659207815304 +Guinea-Bissau,Pulses + (Total),0.389548542676494 +Guyana,Pulses + (Total),0.742203984875232 +Haiti,Pulses + (Total),0.994370257249102 +Honduras,Pulses + (Total),0.485012465622276 +Hungary,Pulses + (Total),0.619902174454182 +Iceland,Pulses + (Total),0.775987752480432 +India,Pulses + (Total),0.0353706281166524 +Indonesia,Pulses + (Total),0.787530601257458 +Iran (Islamic Republic of),Pulses + (Total),0.938584502553567 +Iraq,Pulses + (Total),0.427380997920409 +Ireland,Pulses + (Total),0.039002722594887 +Israel,Pulses + (Total),0.58264136291109 +Italy,Pulses + (Total),0.815848068566993 +Japan,Pulses + (Total),0.76714904140681 +Jordan,Pulses + (Total),0.627536743180826 +Kazakhstan,Pulses + (Total),0.52946815895848 +Kenya,Pulses + (Total),0.00977317802608013 +Kuwait,Pulses + (Total),0.661165463738143 +Kyrgyzstan,Pulses + (Total),0.447899700375274 +Lao People's Democratic Republic,Pulses + (Total),0.0300618903711438 +Latvia,Pulses + (Total),0.79535666690208 +Lebanon,Pulses + (Total),0.0469919862225652 +Lesotho,Pulses + (Total),0.500238708220422 +Liberia,Pulses + (Total),0.108900413615629 +Libya,Pulses + (Total),0.213035995606333 +Lithuania,Pulses + (Total),0.165046348934993 +Madagascar,Pulses + (Total),0.431256189011037 +Malawi,Pulses + (Total),0.874263033736497 +Malaysia,Pulses + (Total),0.754064401844516 +Maldives,Pulses + (Total),0.957469313172624 +Mali,Pulses + (Total),0.70082694105804 +Malta,Pulses + (Total),0.942041178466752 +Mauritania,Pulses + (Total),0.536248297430575 +Mauritius,Pulses + (Total),0.866441031452268 +Mexico,Pulses + (Total),0.811399284750223 +Mongolia,Pulses + (Total),0.382583030499518 +Morocco,Pulses + (Total),0.00103794527240098 +Mozambique,Pulses + (Total),0.506689734524116 +Namibia,Pulses + (Total),0.229122985387221 +Nepal,Pulses + (Total),0.729593504685909 +Netherlands,Pulses + (Total),0.162070422433317 +New Zealand,Pulses + (Total),0.141470118658617 +Nicaragua,Pulses + (Total),0.169665625784546 +Niger,Pulses + (Total),0.389391003642231 +Nigeria,Pulses + (Total),0.525345261674374 +Norway,Pulses + (Total),0.0533452252857387 +Occupied Palestinian Territory,Pulses + (Total),0.427561738761142 +Oman,Pulses + (Total),0.959506900981069 +Pakistan,Pulses + (Total),0.519807206001133 +Panama,Pulses + (Total),0.814159496454522 +Papua New Guinea,Pulses + (Total),0.516496024327353 +Paraguay,Pulses + (Total),0.651182302739471 +Peru,Pulses + (Total),0.674028281355277 +Philippines,Pulses + (Total),0.123757302528247 +Poland,Pulses + (Total),0.828890640521422 +Portugal,Pulses + (Total),0.178853758610785 +Puerto Rico,Pulses + (Total),0.907489588251337 +Qatar,Pulses + (Total),0.745910244528204 +Republic of Korea,Pulses + (Total),0.833083217730746 +Republic of Moldova,Pulses + (Total),0.485603963024914 +Romania,Pulses + (Total),0.134489074815065 +Russian Federation,Pulses + (Total),0.964557326165959 +Rwanda,Pulses + (Total),0.103251507505774 +Saint Lucia,Pulses + (Total),0.968077294994146 +Saint Vincent and the Grenadines,Pulses + (Total),0.657468794845045 +Samoa,Pulses + (Total),0.11873468500562 +Sao Tome and Principe,Pulses + (Total),0.649621369084343 +Saudi Arabia,Pulses + (Total),0.175798983080313 +Senegal,Pulses + (Total),0.148970873793587 +Serbia,Pulses + (Total),0.899155374150723 +Sierra Leone,Pulses + (Total),0.604250335367396 +Slovakia,Pulses + (Total),0.428959304932505 +Slovenia,Pulses + (Total),0.651215325808153 +Solomon Islands,Pulses + (Total),0.873098704498261 +South Africa,Pulses + (Total),0.581173283979297 +Spain,Pulses + (Total),0.984466795809567 +Sri Lanka,Pulses + (Total),0.467624097364023 +Suriname,Pulses + (Total),0.664164373418316 +Swaziland,Pulses + (Total),0.170400351984426 +Sweden,Pulses + (Total),0.249959384091198 +Switzerland,Pulses + (Total),0.929853830952197 +Tajikistan,Pulses + (Total),0.919913826044649 +Thailand,Pulses + (Total),0.242561284452677 +The former Yugoslav Republic of Macedonia,Pulses + (Total),0.485950191039592 +Timor-Leste,Pulses + (Total),0.0819733252283186 +Togo,Pulses + (Total),0.401078182505444 +Tonga,Pulses + (Total),0.619174505118281 +Trinidad and Tobago,Pulses + (Total),0.896371152251959 +Tunisia,Pulses + (Total),0.659596704412252 +Turkey,Pulses + (Total),0.27251633699052 +Turkmenistan,Pulses + (Total),0.836835109163076 +Uganda,Pulses + (Total),0.106137820752338 +Ukraine,Pulses + (Total),0.773901628097519 +United Arab Emirates,Pulses + (Total),0.670445564435795 +United Kingdom,Pulses + (Total),0.113855693954974 +United Republic of Tanzania,Pulses + (Total),0.843512804945931 +United States of America,Pulses + (Total),0.936235620873049 +Uruguay,Pulses + (Total),0.134332666872069 +Uzbekistan,Pulses + (Total),0.066215212456882 +Vanuatu,Pulses + (Total),0.22910647187382 +Venezuela (Bolivarian Republic of),Pulses + (Total),0.248503574403003 +Viet Nam,Pulses + (Total),0.517037821700796 +Yemen,Pulses + (Total),0.203386590350419 +Zambia,Pulses + (Total),0.577161450171843 +Zimbabwe,Pulses + (Total),0.652762484271079 +Sudan,Pulses + (Total),0.618523576529697 +South Sudan,Pulses + (Total),0.93429802195169 +Somalia,Pulses + (Total),0.277637985302135 +Myanmar,Pulses + (Total),0.477237682323903 +Afghanistan,Rice (Paddy Equivalent),0.83106420468539 +Albania,Rice (Paddy Equivalent),0.091794119682163 +Algeria,Rice (Paddy Equivalent),0.699274870101362 +Angola,Rice (Paddy Equivalent),0.447965462226421 +Argentina,Rice (Paddy Equivalent),0.769246112089604 +Armenia,Rice (Paddy Equivalent),0.0476633561775088 +Australia,Rice (Paddy Equivalent),0.970560027984902 +Austria,Rice (Paddy Equivalent),0.682466123253107 +Azerbaijan,Rice (Paddy Equivalent),0.972768485313281 +Bahamas,Rice (Paddy Equivalent),0.840342672076076 +Bahrain,Rice (Paddy Equivalent),0.824941989732906 +Bangladesh,Rice (Paddy Equivalent),0.661001795902848 +Barbados,Rice (Paddy Equivalent),0.765456062043086 +Belarus,Rice (Paddy Equivalent),0.896399892866611 +Belgium,Rice (Paddy Equivalent),0.687472844496369 +Belize,Rice (Paddy Equivalent),0.0783264287747443 +Benin,Rice (Paddy Equivalent),0.675748493289575 +Bhutan,Rice (Paddy Equivalent),0.452054598368704 +Bolivia (Plurinational State of),Rice (Paddy Equivalent),0.593224017182365 +Bosnia and Herzegovina,Rice (Paddy Equivalent),0.825180052779615 +Botswana,Rice (Paddy Equivalent),0.877864255802706 +Brazil,Rice (Paddy Equivalent),0.843410279136151 +Brunei Darussalam,Rice (Paddy Equivalent),0.439072654349729 +Bulgaria,Rice (Paddy Equivalent),0.262262963457033 +Burkina Faso,Rice (Paddy Equivalent),0.0456453294027597 +Burundi,Rice (Paddy Equivalent),0.409325845073909 +Cabo Verde,Rice (Paddy Equivalent),0.486445758258924 +Cambodia,Rice (Paddy Equivalent),0.379512777086347 +Cameroon,Rice (Paddy Equivalent),0.676329592475668 +Canada,Rice (Paddy Equivalent),0.391864262288436 +Central African Republic,Rice (Paddy Equivalent),0.590316907735541 +Chad,Rice (Paddy Equivalent),0.271065720589831 +Chile,Rice (Paddy Equivalent),0.764796877745539 +China,Rice (Paddy Equivalent),0.809078125515953 +Colombia,Rice (Paddy Equivalent),0.819232880137861 +Comoros,Rice (Paddy Equivalent),0.0800473315175623 +Congo,Rice (Paddy Equivalent),0.36956742987968 +Costa Rica,Rice (Paddy Equivalent),0.103470302419737 +Cote d'Ivoire,Rice (Paddy Equivalent),0.591794659383595 +Croatia,Rice (Paddy Equivalent),0.0488186893053353 +Cuba,Rice (Paddy Equivalent),0.314975249115378 +Cyprus,Rice (Paddy Equivalent),0.62919038371183 +Czech Republic,Rice (Paddy Equivalent),0.924702894175425 +Democratic Republic of the Congo,Rice (Paddy Equivalent),0.258973794989288 +Denmark,Rice (Paddy Equivalent),0.623607672052458 +Djibouti,Rice (Paddy Equivalent),0.222201113123447 +Dominican Republic,Rice (Paddy Equivalent),0.478906413074583 +Ecuador,Rice (Paddy Equivalent),0.893188673071563 +Egypt,Rice (Paddy Equivalent),0.107086980715394 +El Salvador,Rice (Paddy Equivalent),0.0356298349797726 +Equatorial Guinea,Rice (Paddy Equivalent),0.794555534375831 +Eritrea,Rice (Paddy Equivalent),0.909378418931738 +Estonia,Rice (Paddy Equivalent),0.684462171979249 +Ethiopia,Rice (Paddy Equivalent),0.764428614871576 +Fiji,Rice (Paddy Equivalent),0.387956226943061 +Finland,Rice (Paddy Equivalent),0.687725414987653 +France,Rice (Paddy Equivalent),0.738504830515012 +Gabon,Rice (Paddy Equivalent),0.473623069468886 +Gambia,Rice (Paddy Equivalent),0.445851667551324 +Georgia,Rice (Paddy Equivalent),0.0798855039756745 +Germany,Rice (Paddy Equivalent),0.263557884143665 +Ghana,Rice (Paddy Equivalent),0.117891510250047 +Greece,Rice (Paddy Equivalent),0.855751792900264 +Guatemala,Rice (Paddy Equivalent),0.85024852422066 +Guinea,Rice (Paddy Equivalent),0.603249526116997 +Guinea-Bissau,Rice (Paddy Equivalent),0.721091020619497 +Guyana,Rice (Paddy Equivalent),0.936493227025494 +Haiti,Rice (Paddy Equivalent),0.175035282736644 +Honduras,Rice (Paddy Equivalent),0.631015484686941 +Hungary,Rice (Paddy Equivalent),0.11607695533894 +Iceland,Rice (Paddy Equivalent),0.0217854655347764 +India,Rice (Paddy Equivalent),0.853179070632905 +Indonesia,Rice (Paddy Equivalent),0.482284007128328 +Iran (Islamic Republic of),Rice (Paddy Equivalent),0.731568257557228 +Iraq,Rice (Paddy Equivalent),0.0988533776253462 +Ireland,Rice (Paddy Equivalent),0.537339665926993 +Israel,Rice (Paddy Equivalent),0.579383432865143 +Italy,Rice (Paddy Equivalent),0.143660765839741 +Japan,Rice (Paddy Equivalent),0.974216656759381 +Jordan,Rice (Paddy Equivalent),0.806763011962175 +Kazakhstan,Rice (Paddy Equivalent),0.0859751563984901 +Kenya,Rice (Paddy Equivalent),0.053761730203405 +Kuwait,Rice (Paddy Equivalent),0.367099871858954 +Kyrgyzstan,Rice (Paddy Equivalent),0.226231370121241 +Lao People's Democratic Republic,Rice (Paddy Equivalent),0.263882782310247 +Latvia,Rice (Paddy Equivalent),0.610927426256239 +Lebanon,Rice (Paddy Equivalent),0.597175808856264 +Lesotho,Rice (Paddy Equivalent),0.291139692300931 +Liberia,Rice (Paddy Equivalent),0.838251572102308 +Libya,Rice (Paddy Equivalent),0.826638970989734 +Lithuania,Rice (Paddy Equivalent),0.720558889210224 +Madagascar,Rice (Paddy Equivalent),0.501939060166478 +Malawi,Rice (Paddy Equivalent),0.233913511969149 +Malaysia,Rice (Paddy Equivalent),0.377992753870785 +Maldives,Rice (Paddy Equivalent),0.921035374281928 +Mali,Rice (Paddy Equivalent),0.413941089529544 +Malta,Rice (Paddy Equivalent),0.657208897639066 +Mauritania,Rice (Paddy Equivalent),0.587274400983006 +Mauritius,Rice (Paddy Equivalent),0.33087872248143 +Mexico,Rice (Paddy Equivalent),0.760241025825962 +Mongolia,Rice (Paddy Equivalent),0.439604057697579 +Morocco,Rice (Paddy Equivalent),0.250460450304672 +Mozambique,Rice (Paddy Equivalent),0.720418565440923 +Namibia,Rice (Paddy Equivalent),0.0214281359221786 +Nepal,Rice (Paddy Equivalent),0.0617745229974389 +Netherlands,Rice (Paddy Equivalent),0.526140928734094 +New Zealand,Rice (Paddy Equivalent),0.282425528159365 +Nicaragua,Rice (Paddy Equivalent),0.360092866467312 +Niger,Rice (Paddy Equivalent),0.345700938953087 +Nigeria,Rice (Paddy Equivalent),0.601082893786952 +Norway,Rice (Paddy Equivalent),0.377862324239686 +Occupied Palestinian Territory,Rice (Paddy Equivalent),0.0544198213610798 +Oman,Rice (Paddy Equivalent),0.938010880490765 +Pakistan,Rice (Paddy Equivalent),0.60385229671374 +Panama,Rice (Paddy Equivalent),0.362725704209879 +Papua New Guinea,Rice (Paddy Equivalent),0.266275534871966 +Paraguay,Rice (Paddy Equivalent),0.864943802822381 +Peru,Rice (Paddy Equivalent),0.0627450477331877 +Philippines,Rice (Paddy Equivalent),0.714907718356699 +Poland,Rice (Paddy Equivalent),0.206261738436297 +Portugal,Rice (Paddy Equivalent),0.423104410758242 +Puerto Rico,Rice (Paddy Equivalent),0.420497671701014 +Qatar,Rice (Paddy Equivalent),0.684373073512688 +Republic of Korea,Rice (Paddy Equivalent),0.104516264749691 +Republic of Moldova,Rice (Paddy Equivalent),0.0780517566017807 +Romania,Rice (Paddy Equivalent),0.157208072720096 +Russian Federation,Rice (Paddy Equivalent),0.181427831295878 +Rwanda,Rice (Paddy Equivalent),0.74086505966261 +Saint Lucia,Rice (Paddy Equivalent),0.590364524163306 +Saint Vincent and the Grenadines,Rice (Paddy Equivalent),0.197623582091182 +Samoa,Rice (Paddy Equivalent),0.747151277726516 +Sao Tome and Principe,Rice (Paddy Equivalent),0.188091722782701 +Saudi Arabia,Rice (Paddy Equivalent),0.71512990933843 +Senegal,Rice (Paddy Equivalent),0.120757885742933 +Serbia,Rice (Paddy Equivalent),0.489969552028924 +Sierra Leone,Rice (Paddy Equivalent),0.540369547437876 +Slovakia,Rice (Paddy Equivalent),0.326650553615764 +Slovenia,Rice (Paddy Equivalent),0.899269827175885 +Solomon Islands,Rice (Paddy Equivalent),0.613106790930033 +South Africa,Rice (Paddy Equivalent),0.754730977350846 +Spain,Rice (Paddy Equivalent),0.88254644186236 +Sri Lanka,Rice (Paddy Equivalent),0.635457118973136 +Suriname,Rice (Paddy Equivalent),0.509005312575027 +Swaziland,Rice (Paddy Equivalent),0.536755290580913 +Sweden,Rice (Paddy Equivalent),0.978195908246562 +Switzerland,Rice (Paddy Equivalent),0.0131520316936076 +Tajikistan,Rice (Paddy Equivalent),0.407485169125721 +Thailand,Rice (Paddy Equivalent),0.223900443641469 +The former Yugoslav Republic of Macedonia,Rice (Paddy Equivalent),0.725740579888225 +Timor-Leste,Rice (Paddy Equivalent),0.638963887700811 +Togo,Rice (Paddy Equivalent),0.520147069590166 +Tonga,Rice (Paddy Equivalent),0.0941458707675338 +Trinidad and Tobago,Rice (Paddy Equivalent),0.993296830914915 +Tunisia,Rice (Paddy Equivalent),0.676092024892569 +Turkey,Rice (Paddy Equivalent),0.806208350230008 +Turkmenistan,Rice (Paddy Equivalent),0.107690643984824 +Uganda,Rice (Paddy Equivalent),0.69002493773587 +Ukraine,Rice (Paddy Equivalent),0.763773498823866 +United Arab Emirates,Rice (Paddy Equivalent),0.385200775461271 +United Kingdom,Rice (Paddy Equivalent),0.981937300181016 +United Republic of Tanzania,Rice (Paddy Equivalent),0.784161034040153 +United States of America,Rice (Paddy Equivalent),0.698659058194607 +Uruguay,Rice (Paddy Equivalent),0.349166738567874 +Uzbekistan,Rice (Paddy Equivalent),0.845303364330903 +Vanuatu,Rice (Paddy Equivalent),0.320702951401472 +Venezuela (Bolivarian Republic of),Rice (Paddy Equivalent),0.389196273172274 +Viet Nam,Rice (Paddy Equivalent),0.12543870205991 +Yemen,Rice (Paddy Equivalent),0.975440268171951 +Zambia,Rice (Paddy Equivalent),0.0537802586331964 +Zimbabwe,Rice (Paddy Equivalent),0.24455232010223 +Sudan,Rice (Paddy Equivalent),0.480392555240542 +South Sudan,Rice (Paddy Equivalent),0.366971936542541 +Somalia,Rice (Paddy Equivalent),0.96926163835451 +Myanmar,Rice (Paddy Equivalent),0.601431619375944 +Afghanistan,Starchy Roots + (Total),0.780728288693354 +Albania,Starchy Roots + (Total),0.0669967145659029 +Algeria,Starchy Roots + (Total),0.125386644853279 +Angola,Starchy Roots + (Total),0.278139574220404 +Argentina,Starchy Roots + (Total),0.500859097810462 +Armenia,Starchy Roots + (Total),0.623741679824889 +Australia,Starchy Roots + (Total),0.0942884567193687 +Austria,Starchy Roots + (Total),0.773851416539401 +Azerbaijan,Starchy Roots + (Total),0.599291884806007 +Bahamas,Starchy Roots + (Total),0.798344222595915 +Bahrain,Starchy Roots + (Total),0.183120098896325 +Bangladesh,Starchy Roots + (Total),0.370975418481976 +Barbados,Starchy Roots + (Total),0.334492736263201 +Belarus,Starchy Roots + (Total),0.985189629718661 +Belgium,Starchy Roots + (Total),0.64227314083837 +Belize,Starchy Roots + (Total),0.323371917475015 +Benin,Starchy Roots + (Total),0.956890886416659 +Bhutan,Starchy Roots + (Total),0.375877216691151 +Bolivia (Plurinational State of),Starchy Roots + (Total),0.301750547252595 +Bosnia and Herzegovina,Starchy Roots + (Total),0.565009930403903 +Botswana,Starchy Roots + (Total),0.69716464355588 +Brazil,Starchy Roots + (Total),0.416560883168131 +Brunei Darussalam,Starchy Roots + (Total),0.0305782370269299 +Bulgaria,Starchy Roots + (Total),0.442911745514721 +Burkina Faso,Starchy Roots + (Total),0.78305878629908 +Burundi,Starchy Roots + (Total),0.234540904173627 +Cabo Verde,Starchy Roots + (Total),0.209475656040013 +Cambodia,Starchy Roots + (Total),0.793395037995651 +Cameroon,Starchy Roots + (Total),0.533592182211578 +Canada,Starchy Roots + (Total),0.671561905182898 +Central African Republic,Starchy Roots + (Total),0.768814797746018 +Chad,Starchy Roots + (Total),0.467103588627651 +Chile,Starchy Roots + (Total),0.247803423320875 +China,Starchy Roots + (Total),0.762028907425702 +Colombia,Starchy Roots + (Total),0.0975045880768448 +Comoros,Starchy Roots + (Total),0.333568137837574 +Congo,Starchy Roots + (Total),0.690911778947338 +Costa Rica,Starchy Roots + (Total),0.712672447785735 +Cote d'Ivoire,Starchy Roots + (Total),0.191718689631671 +Croatia,Starchy Roots + (Total),0.410429900046438 +Cuba,Starchy Roots + (Total),0.248594539705664 +Cyprus,Starchy Roots + (Total),0.28040195023641 +Czech Republic,Starchy Roots + (Total),0.308414493920282 +Democratic Republic of the Congo,Starchy Roots + (Total),0.703697537072003 +Denmark,Starchy Roots + (Total),0.099616881692782 +Djibouti,Starchy Roots + (Total),0.705525241559371 +Dominican Republic,Starchy Roots + (Total),0.285474659875035 +Ecuador,Starchy Roots + (Total),0.517670396249741 +Egypt,Starchy Roots + (Total),0.379441550467163 +El Salvador,Starchy Roots + (Total),0.775152189889923 +Equatorial Guinea,Starchy Roots + (Total),0.290106847882271 +Eritrea,Starchy Roots + (Total),0.500224382383749 +Estonia,Starchy Roots + (Total),0.498109780950472 +Ethiopia,Starchy Roots + (Total),0.649849775014445 +Fiji,Starchy Roots + (Total),0.933958039386198 +Finland,Starchy Roots + (Total),0.481340161990374 +France,Starchy Roots + (Total),0.622382134431973 +Gabon,Starchy Roots + (Total),0.775806546676904 +Gambia,Starchy Roots + (Total),0.549656116869301 +Georgia,Starchy Roots + (Total),0.798752257134765 +Germany,Starchy Roots + (Total),0.60630875476636 +Ghana,Starchy Roots + (Total),0.119397115428001 +Greece,Starchy Roots + (Total),0.282475670566782 +Guatemala,Starchy Roots + (Total),0.575064540142193 +Guinea,Starchy Roots + (Total),0.362462465884164 +Guinea-Bissau,Starchy Roots + (Total),0.774425157811493 +Guyana,Starchy Roots + (Total),0.193039340432733 +Haiti,Starchy Roots + (Total),0.831808578455821 +Honduras,Starchy Roots + (Total),0.144348717294633 +Hungary,Starchy Roots + (Total),0.213459627702832 +Iceland,Starchy Roots + (Total),0.195557638769969 +India,Starchy Roots + (Total),0.428272919729352 +Indonesia,Starchy Roots + (Total),0.278675890294835 +Iran (Islamic Republic of),Starchy Roots + (Total),0.932631422765553 +Iraq,Starchy Roots + (Total),0.26650606864132 +Ireland,Starchy Roots + (Total),0.792846132302657 +Israel,Starchy Roots + (Total),0.940631526755169 +Italy,Starchy Roots + (Total),0.736012048786506 +Japan,Starchy Roots + (Total),0.950977616012096 +Jordan,Starchy Roots + (Total),0.631485057761893 +Kazakhstan,Starchy Roots + (Total),0.433715886902064 +Kenya,Starchy Roots + (Total),0.368293543811888 +Kuwait,Starchy Roots + (Total),0.6231064053718 +Kyrgyzstan,Starchy Roots + (Total),0.388898945646361 +Lao People's Democratic Republic,Starchy Roots + (Total),0.417772843269631 +Latvia,Starchy Roots + (Total),0.421517251757905 +Lebanon,Starchy Roots + (Total),0.121655673021451 +Lesotho,Starchy Roots + (Total),0.2145557673648 +Liberia,Starchy Roots + (Total),0.827930989908054 +Libya,Starchy Roots + (Total),0.850936527596787 +Lithuania,Starchy Roots + (Total),0.195942662656307 +Madagascar,Starchy Roots + (Total),0.0460671409964561 +Malawi,Starchy Roots + (Total),0.660090734716505 +Malaysia,Starchy Roots + (Total),0.819813961861655 +Maldives,Starchy Roots + (Total),0.155144807882607 +Mali,Starchy Roots + (Total),0.999874240718782 +Malta,Starchy Roots + (Total),0.236105354735628 +Mauritania,Starchy Roots + (Total),0.680856814607978 +Mauritius,Starchy Roots + (Total),0.0635552546009421 +Mexico,Starchy Roots + (Total),0.0663799373432994 +Mongolia,Starchy Roots + (Total),0.358173065353185 +Morocco,Starchy Roots + (Total),0.561796348309144 +Mozambique,Starchy Roots + (Total),0.911749931750819 +Namibia,Starchy Roots + (Total),0.954768839525059 +Nepal,Starchy Roots + (Total),0.194490605266765 +Netherlands,Starchy Roots + (Total),0.679082770366222 +New Zealand,Starchy Roots + (Total),0.490098490612581 +Nicaragua,Starchy Roots + (Total),0.325684365117922 +Niger,Starchy Roots + (Total),0.896777821006253 +Nigeria,Starchy Roots + (Total),0.89752379222773 +Norway,Starchy Roots + (Total),0.566413442604244 +Occupied Palestinian Territory,Starchy Roots + (Total),0.728889400605112 +Oman,Starchy Roots + (Total),0.284807744435966 +Pakistan,Starchy Roots + (Total),0.773859671317041 +Panama,Starchy Roots + (Total),0.355234145885333 +Papua New Guinea,Starchy Roots + (Total),0.87546357116662 +Paraguay,Starchy Roots + (Total),0.759408592944965 +Peru,Starchy Roots + (Total),0.528133026557043 +Philippines,Starchy Roots + (Total),0.557651017094031 +Poland,Starchy Roots + (Total),0.748879626626149 +Portugal,Starchy Roots + (Total),0.770231824135408 +Puerto Rico,Starchy Roots + (Total),0.465776656987146 +Qatar,Starchy Roots + (Total),0.952799863182008 +Republic of Korea,Starchy Roots + (Total),0.400878302520141 +Republic of Moldova,Starchy Roots + (Total),0.130469777854159 +Romania,Starchy Roots + (Total),0.863732053432614 +Russian Federation,Starchy Roots + (Total),0.318013184005395 +Rwanda,Starchy Roots + (Total),0.605745342327282 +Saint Lucia,Starchy Roots + (Total),0.702863522572443 +Saint Vincent and the Grenadines,Starchy Roots + (Total),0.420067520113662 +Samoa,Starchy Roots + (Total),0.299685906386003 +Sao Tome and Principe,Starchy Roots + (Total),0.33156464388594 +Saudi Arabia,Starchy Roots + (Total),0.602690406609327 +Senegal,Starchy Roots + (Total),0.875479555688798 +Serbia,Starchy Roots + (Total),0.812971795443445 +Sierra Leone,Starchy Roots + (Total),0.770476719131693 +Slovakia,Starchy Roots + (Total),0.551100993296131 +Slovenia,Starchy Roots + (Total),0.468119563069195 +Solomon Islands,Starchy Roots + (Total),0.588715438265353 +South Africa,Starchy Roots + (Total),0.700029884465039 +Spain,Starchy Roots + (Total),0.634275776334107 +Sri Lanka,Starchy Roots + (Total),0.801476746564731 +Suriname,Starchy Roots + (Total),0.832482057623565 +Swaziland,Starchy Roots + (Total),0.0739712279755622 +Sweden,Starchy Roots + (Total),0.143074831459671 +Switzerland,Starchy Roots + (Total),0.212627582252026 +Tajikistan,Starchy Roots + (Total),0.581211660057306 +Thailand,Starchy Roots + (Total),0.931036983383819 +The former Yugoslav Republic of Macedonia,Starchy Roots + (Total),0.061759952455759 +Timor-Leste,Starchy Roots + (Total),0.6482215130236 +Togo,Starchy Roots + (Total),0.599147298373282 +Tonga,Starchy Roots + (Total),0.218689548783004 +Trinidad and Tobago,Starchy Roots + (Total),0.645569452084601 +Tunisia,Starchy Roots + (Total),0.327158165862784 +Turkey,Starchy Roots + (Total),0.388578928075731 +Turkmenistan,Starchy Roots + (Total),0.310923575889319 +Uganda,Starchy Roots + (Total),0.369408055441454 +Ukraine,Starchy Roots + (Total),0.296009497018531 +United Arab Emirates,Starchy Roots + (Total),0.841411752160639 +United Kingdom,Starchy Roots + (Total),0.875386503757909 +United Republic of Tanzania,Starchy Roots + (Total),0.391905445372686 +United States of America,Starchy Roots + (Total),0.948760230094194 +Uruguay,Starchy Roots + (Total),0.374162130989134 +Uzbekistan,Starchy Roots + (Total),0.298394758021459 +Vanuatu,Starchy Roots + (Total),0.556645175209269 +Venezuela (Bolivarian Republic of),Starchy Roots + (Total),0.29512595385313 +Viet Nam,Starchy Roots + (Total),0.799794355407357 +Yemen,Starchy Roots + (Total),0.5426956419833 +Zambia,Starchy Roots + (Total),0.342869103653356 +Zimbabwe,Starchy Roots + (Total),0.792646332876757 +Sudan,Starchy Roots + (Total),0.93214201903902 +South Sudan,Starchy Roots + (Total),0.148819642607123 +Somalia,Starchy Roots + (Total),0.198825804516673 +Myanmar,Starchy Roots + (Total),0.233856212347746 +Afghanistan,meatmilkeggs,0.140857172664255 +Albania,meatmilkeggs,0.358472139574587 +Algeria,meatmilkeggs,0.933841848745942 +Angola,meatmilkeggs,0.066448183497414 +Argentina,meatmilkeggs,0.063462940743193 +Armenia,meatmilkeggs,0.780832212883979 +Australia,meatmilkeggs,0.780510299606249 +Austria,meatmilkeggs,0.556242868537083 +Azerbaijan,meatmilkeggs,0.409565941430628 +Bahamas,meatmilkeggs,0.940505443140864 +Bahrain,meatmilkeggs,0.410378739936277 +Bangladesh,meatmilkeggs,0.147565492196009 +Barbados,meatmilkeggs,0.168075738241896 +Belarus,meatmilkeggs,0.355353652499616 +Belgium,meatmilkeggs,0.99250355316326 +Belize,meatmilkeggs,0.260992959374562 +Benin,meatmilkeggs,0.370034037390724 +Bhutan,meatmilkeggs,0.0570273571647704 +Bolivia (Plurinational State of),meatmilkeggs,0.865361967124045 +Bosnia and Herzegovina,meatmilkeggs,0.0524333997163922 +Botswana,meatmilkeggs,0.923755911877379 +Brazil,meatmilkeggs,0.809167805593461 +Brunei Darussalam,meatmilkeggs,0.580352795543149 +Bulgaria,meatmilkeggs,0.967348793521523 +Burkina Faso,meatmilkeggs,0.806741559645161 +Burundi,meatmilkeggs,0.127887518377975 +Cabo Verde,meatmilkeggs,0.997598831774667 +Cambodia,meatmilkeggs,0.53730399440974 +Cameroon,meatmilkeggs,0.397288012783974 +Canada,meatmilkeggs,0.106908129760996 +Central African Republic,meatmilkeggs,0.57506610895507 +Chad,meatmilkeggs,0.728193307295442 +Chile,meatmilkeggs,0.721655223751441 +China,meatmilkeggs,0.443257891107351 +Colombia,meatmilkeggs,0.104482657276094 +Comoros,meatmilkeggs,0.743670481722802 +Congo,meatmilkeggs,0.760239130584523 +Costa Rica,meatmilkeggs,0.493916217936203 +Cote d'Ivoire,meatmilkeggs,0.891627700300887 +Croatia,meatmilkeggs,0.196193155366927 +Cuba,meatmilkeggs,0.851400250568986 +Cyprus,meatmilkeggs,0.189812223194167 +Czech Republic,meatmilkeggs,0.301906053209677 +Democratic Republic of the Congo,meatmilkeggs,0.742393635213375 +Denmark,meatmilkeggs,0.786346898647025 +Djibouti,meatmilkeggs,0.487945920554921 +Dominican Republic,meatmilkeggs,0.93579061422497 +Ecuador,meatmilkeggs,0.961793921655044 +Egypt,meatmilkeggs,0.220488355495036 +El Salvador,meatmilkeggs,0.404892655555159 +Equatorial Guinea,meatmilkeggs,0.807849953183904 +Eritrea,meatmilkeggs,0.404502895195037 +Estonia,meatmilkeggs,0.370328905293718 +Ethiopia,meatmilkeggs,0.296156610827893 +Fiji,meatmilkeggs,0.22286926698871 +Finland,meatmilkeggs,0.0264692394994199 +France,meatmilkeggs,0.473752551479265 +Gabon,meatmilkeggs,0.263377552386373 +Gambia,meatmilkeggs,0.909136723494157 +Georgia,meatmilkeggs,0.643070282880217 +Germany,meatmilkeggs,0.635010795202106 +Ghana,meatmilkeggs,0.689353919355199 +Greece,meatmilkeggs,0.797496945830062 +Guatemala,meatmilkeggs,0.613891813438386 +Guinea,meatmilkeggs,0.182205869350582 +Guinea-Bissau,meatmilkeggs,0.353926751064137 +Guyana,meatmilkeggs,0.383414479903877 +Haiti,meatmilkeggs,0.745146082015708 +Honduras,meatmilkeggs,0.767078940523788 +Hungary,meatmilkeggs,0.0596708809025586 +Iceland,meatmilkeggs,0.78239921387285 +India,meatmilkeggs,0.720993238035589 +Indonesia,meatmilkeggs,0.908817901741713 +Iran (Islamic Republic of),meatmilkeggs,0.872999806655571 +Iraq,meatmilkeggs,0.997488232795149 +Ireland,meatmilkeggs,0.652861208422109 +Israel,meatmilkeggs,0.318663422716781 +Italy,meatmilkeggs,0.0670438825618476 +Japan,meatmilkeggs,0.441864410648122 +Jordan,meatmilkeggs,0.250931279966608 +Kazakhstan,meatmilkeggs,0.327150004217401 +Kenya,meatmilkeggs,0.276841666083783 +Kuwait,meatmilkeggs,0.837729220744222 +Kyrgyzstan,meatmilkeggs,0.507123594870791 +Lao People's Democratic Republic,meatmilkeggs,0.184135243063793 +Latvia,meatmilkeggs,0.450334504712373 +Lebanon,meatmilkeggs,0.294258381472901 +Lesotho,meatmilkeggs,0.327398627763614 +Liberia,meatmilkeggs,0.149823101237416 +Libya,meatmilkeggs,0.976805481361225 +Lithuania,meatmilkeggs,0.871835760306567 +Madagascar,meatmilkeggs,0.179220793535933 +Malawi,meatmilkeggs,0.0356697614770383 +Malaysia,meatmilkeggs,0.799494859529659 +Maldives,meatmilkeggs,0.284442078089342 +Mali,meatmilkeggs,0.610178807284683 +Malta,meatmilkeggs,0.482712439959869 +Mauritania,meatmilkeggs,0.542055638739839 +Mauritius,meatmilkeggs,0.628379977308214 +Mexico,meatmilkeggs,0.229730819351971 +Mongolia,meatmilkeggs,0.844702824717388 +Morocco,meatmilkeggs,0.51729598082602 +Mozambique,meatmilkeggs,0.498371023219079 +Namibia,meatmilkeggs,0.316646222723648 +Nepal,meatmilkeggs,0.935888426378369 +Netherlands,meatmilkeggs,0.24641793849878 +New Zealand,meatmilkeggs,0.386456858832389 +Nicaragua,meatmilkeggs,0.360564939444885 +Niger,meatmilkeggs,0.653926993953064 +Nigeria,meatmilkeggs,0.541168192168698 +Norway,meatmilkeggs,0.948123134439811 +Occupied Palestinian Territory,meatmilkeggs,0.375499297864735 +Oman,meatmilkeggs,0.146491562947631 +Pakistan,meatmilkeggs,0.97907117777504 +Panama,meatmilkeggs,0.520444093970582 +Papua New Guinea,meatmilkeggs,0.644296692218632 +Paraguay,meatmilkeggs,0.492448849137872 +Peru,meatmilkeggs,0.61240815767087 +Philippines,meatmilkeggs,0.792876950465143 +Poland,meatmilkeggs,0.112186869373545 +Portugal,meatmilkeggs,0.230732494732365 +Puerto Rico,meatmilkeggs,0.641310992650688 +Qatar,meatmilkeggs,0.395953979808837 +Republic of Korea,meatmilkeggs,0.274185837013647 +Republic of Moldova,meatmilkeggs,0.38626281498 +Romania,meatmilkeggs,0.888357492163777 +Russian Federation,meatmilkeggs,0.86478508869186 +Rwanda,meatmilkeggs,0.791876111412421 +Saint Lucia,meatmilkeggs,0.215798433171585 +Saint Vincent and the Grenadines,meatmilkeggs,0.0725063018035144 +Samoa,meatmilkeggs,0.4318325240165 +Sao Tome and Principe,meatmilkeggs,0.681222792947665 +Saudi Arabia,meatmilkeggs,0.302849696017802 +Senegal,meatmilkeggs,0.740990569116548 +Serbia,meatmilkeggs,0.517219974892214 +Sierra Leone,meatmilkeggs,0.250423027668148 +Slovakia,meatmilkeggs,0.387461943086237 +Slovenia,meatmilkeggs,0.54760608705692 +Solomon Islands,meatmilkeggs,0.948207257315516 +South Africa,meatmilkeggs,0.257785587571561 +Spain,meatmilkeggs,0.149729618802667 +Sri Lanka,meatmilkeggs,0.992473433027044 +Suriname,meatmilkeggs,0.566059928154573 +Swaziland,meatmilkeggs,0.874975792132318 +Sweden,meatmilkeggs,0.89906989550218 +Switzerland,meatmilkeggs,0.366442845435813 +Tajikistan,meatmilkeggs,0.1058284859173 +Thailand,meatmilkeggs,0.914407176664099 +The former Yugoslav Republic of Macedonia,meatmilkeggs,0.199258655542508 +Timor-Leste,meatmilkeggs,0.670676314271986 +Togo,meatmilkeggs,0.609920132439584 +Tonga,meatmilkeggs,0.281924832612276 +Trinidad and Tobago,meatmilkeggs,0.40172621444799 +Tunisia,meatmilkeggs,0.50679166149348 +Turkey,meatmilkeggs,0.617649301653728 +Turkmenistan,meatmilkeggs,0.782822488574311 +Uganda,meatmilkeggs,0.153812584700063 +Ukraine,meatmilkeggs,0.167502960655838 +United Arab Emirates,meatmilkeggs,0.410845839884132 +United Kingdom,meatmilkeggs,0.0908631347119808 +United Republic of Tanzania,meatmilkeggs,0.608636445133016 +United States of America,meatmilkeggs,0.591540047898889 +Uruguay,meatmilkeggs,0.036370912566781 +Uzbekistan,meatmilkeggs,0.942137588514015 +Vanuatu,meatmilkeggs,0.480926680611446 +Venezuela (Bolivarian Republic of),meatmilkeggs,0.8448795392178 +Viet Nam,meatmilkeggs,0.782773209968582 +Yemen,meatmilkeggs,0.0709458312485367 +Zambia,meatmilkeggs,0.448556022485718 +Zimbabwe,meatmilkeggs,0.337755742948502 +Sudan,meatmilkeggs,0.0137774180620909 +South Sudan,meatmilkeggs,0.398409922141582 +Somalia,meatmilkeggs,0.634943692479283 +Myanmar,meatmilkeggs,0.766041074180976 diff --git a/src/ac/ed/lurg/ModelConfig.java b/src/ac/ed/lurg/ModelConfig.java index 57c3eeccaacc290c2b20bf7d2391994d9fa43e5a..ef7a56b2238b715e31ddbcd75b3f72406a5bcacf 100644 --- a/src/ac/ed/lurg/ModelConfig.java +++ b/src/ac/ed/lurg/ModelConfig.java @@ -96,7 +96,9 @@ public class ModelConfig { public static final String COUNTRY_DATA_FILE = DATA_DIR + File.separator + "country_data.csv"; public static final String COMMODITY_DATA_FILE = DATA_DIR + File.separator + "con_prod_c_and_m.csv"; public static final String BIOENERGY_DEMAND_FILE = DATA_DIR + File.separator + "bio_demand.csv"; + public static final String TRADE_BARRIERS_FILE = DATA_DIR + File.separator + "trade_barriers_dummy.csv"; + // yield data public static final String YIELD_DIR = getProperty("YIELD_DIR"); public static final boolean CHANGE_YIELD_DATA_YEAR = getBooleanProperty("CHANGE_YIELD_DATA_YEAR", true); @@ -122,7 +124,8 @@ public class ModelConfig { public static final String IRRIGATION_COST_FILE = SPATIAL_DATA_DIR + File.separator + "irrigation_cost.asc"; public static final String IRRIGATION_CONSTRAINT_FILE = SPATIAL_DATA_DIR + File.separator + "blue_water_available_pseudoCRU_rcp8p5_2004_2013_grid_allhdyro_mm.txt"; public static final String IRRIG_MAX_WATER_FILENAME = getProperty("IRRIG_MAX_WATER_FILENAME", "gsirrigation_plum.out"); - + public static final String PROTECTED_AREAS_FILE = SPATIAL_DATA_DIR + File.separator + "protected_areas.txt"; + // Output public static final String LAND_COVER_OUTPUT_FILE = OUTPUT_DIR + File.separator + "lc.txt"; public static final String PRICES_OUTPUT_FILE = OUTPUT_DIR + File.separator + "prices.txt"; @@ -168,8 +171,10 @@ public class ModelConfig { public static final double DOMESTIC_PRICE_MARKUP = getDoubleProperty("DOMESTIC_PRICE_MARKUP", 1.0); public static final double TRANSPORT_LOSSES = getDoubleProperty("TRANSPORT_LOSSES", 0.1); // in international trade - public static final double TRADE_BARRIER_FACTOR = getDoubleProperty("TRADE_BARRIER_FACTOR", 1.5); // price factor in international trade, transport cost and real trade barriers + public static final double TRADE_BARRIER_FACTOR_DEFAULT = getDoubleProperty("TRADE_BARRIER_FACTOR", 0.2); // price factor in international trade, transport cost and real trade barriers + public static final boolean ACTIVE_TRADE_BARRIERS = getBooleanProperty("ACTIVE_TRADE_BARRIERS", false); // if set to true read in barrier information from file, otherwise use default as above + public static final int NUM_CEREAL_CATEGORIES = getIntProperty("NUM_CEREAL_CATEGORIES", 5); public static final int NUM_PASTURE_CATEGORIES = getIntProperty("NUM_PASTURE_CATEGORIES", 1); diff --git a/src/ac/ed/lurg/ModelMain.java b/src/ac/ed/lurg/ModelMain.java index beaf1e07c19d17c56328b2f55e31ddc86b587e15..4fa81ae5678f475849c665b9e3bcc84b067fcc50 100644 --- a/src/ac/ed/lurg/ModelMain.java +++ b/src/ac/ed/lurg/ModelMain.java @@ -17,6 +17,7 @@ import ac.ed.lurg.country.CountryAgent; import ac.ed.lurg.country.CountryBoundaryRaster; import ac.ed.lurg.country.CountryBoundaryReader; import ac.ed.lurg.country.GlobalPrice; +import ac.ed.lurg.country.TradeManager; import ac.ed.lurg.country.gams.GamsRasterOutput; import ac.ed.lurg.demand.BaseConsumpManager; import ac.ed.lurg.demand.DemandManager; @@ -29,12 +30,14 @@ import ac.ed.lurg.landuse.IrrigiationCostReader; import ac.ed.lurg.landuse.LandCoverItem; import ac.ed.lurg.landuse.LandCoverReader; import ac.ed.lurg.landuse.LandUseItem; +import ac.ed.lurg.landuse.ProtectedAreasReader; import ac.ed.lurg.output.LpjgOutputer; import ac.ed.lurg.types.CommodityType; import ac.ed.lurg.types.CropToDoubleMap; import ac.ed.lurg.types.CropType; import ac.ed.lurg.types.LandCoverType; import ac.ed.lurg.types.ModelFitType; +import ac.ed.lurg.utils.LazyHashMap; import ac.ed.lurg.utils.LogWriter; import ac.ed.lurg.yield.LPJYieldResponseMapReader; import ac.ed.lurg.yield.YieldRaster; @@ -51,6 +54,7 @@ public class ModelMain { private Collection<CountryAgent> countryAgents; private CountryBoundaryRaster countryBoundaryRaster; private DemandManager demandManager; + private TradeManager tradeManager; private CompositeCountryManager compositeCountryManager; private RasterHeaderDetails desiredProjection; @@ -71,6 +75,7 @@ public class ModelMain { BaseConsumpManager baseConsumpManager = new BaseConsumpManager(); compositeCountryManager = new CompositeCountryManager(baseConsumpManager); demandManager = new DemandManager(ModelFitType.LOGISTIC, ModelConfig.SSP_SCENARIO, baseConsumpManager, compositeCountryManager); + tradeManager = new TradeManager(compositeCountryManager); currentIrrigationData = getFixedIrrigationData(); countryBoundaryRaster = getCountryBoundaryRaster(); @@ -336,6 +341,7 @@ public class ModelMain { RasterSet<LandCoverItem> initLC = getInitialLandCover(); Map<CompositeCountry, Map<CropType, CropUsageData>> cropUsageDataMap = new CropUsageReader(compositeCountryManager).getCommodityData(); + for (CompositeCountry cc : countryGrouping) { @@ -349,7 +355,10 @@ public class ModelMain { List<RasterKey> keys = countryBoundaryRaster.getKeysFor(cc); RasterSet<LandCoverItem> initCountryLC = initLC.createSubsetForKeys(keys); Map<CropType, CropUsageData> countryCommodityData = cropUsageDataMap.get(cc); + Map<CropType, Double> countryTradeBarriers = tradeManager.getTradeBarriers(cc); + //Map<CropType, Double> countryTradeBarriers = (ModelConfig.ACTIVE_TRADE_BARRIERS) ? tradeBarriersMap.get(cc): getDefaultTradeBarriers(); + if (countryCommodityData == null) { LogWriter.printlnError("No commodities data for " + cc + ", so skipping"); } @@ -357,7 +366,7 @@ public class ModelMain { LogWriter.printlnError("No initial land cover for " +cc + ", so skipping"); } else { - CountryAgent ca = new CountryAgent(demandManager, cc, initCountryLC, countryCommodityData); + CountryAgent ca = new CountryAgent(demandManager, cc, initCountryLC, countryCommodityData, countryTradeBarriers); countryAgents.add(ca); LogWriter.println("Creating country agent for: " + cc ); } @@ -367,10 +376,20 @@ public class ModelMain { } private RasterSet<LandCoverItem> getInitialLandCover() { - LandCoverReader lcReader = new LandCoverReader(desiredProjection); - RasterSet<LandCoverItem> initLC = lcReader.getRasterDataFromFile(ModelConfig.INITAL_LAND_COVER_FILE); + + RasterSet<LandCoverItem> initLC = new RasterSet<LandCoverItem>(desiredProjection) { + private static final long serialVersionUID = 4642550777741425501L; + protected LandCoverItem createRasterData() { + return new LandCoverItem(); + } + }; + + new ProtectedAreasReader(initLC).getRasterDataFromFile(ModelConfig.PROTECTED_AREAS_FILE); + new LandCoverReader(initLC).getRasterDataFromFile(ModelConfig.INITAL_LAND_COVER_FILE); + return initLC; - } + + } private YieldRaster getYieldSurfaces(Timestep timestep) { LPJYieldResponseMapReader yieldReader = new LPJYieldResponseMapReader(desiredProjection); diff --git a/src/ac/ed/lurg/country/CountryAgent.java b/src/ac/ed/lurg/country/CountryAgent.java index cfbb34c761c1649443506e864a9ac0715c3e1d16..9b3f00cf0380d72e50d9893e01bb49a0368aff7c 100644 --- a/src/ac/ed/lurg/country/CountryAgent.java +++ b/src/ac/ed/lurg/country/CountryAgent.java @@ -29,13 +29,15 @@ public class CountryAgent { private Timestep currentTimestep; private YieldRaster countryYieldSurfaces; private Map<CommodityType, Double> currentProjectedDemand; + private Map<CropType, Double> tradeBarriers; - public CountryAgent(DemandManager demandManager, CompositeCountry country, RasterSet<LandCoverItem> initialLC, - Map<CropType, CropUsageData> cropUsageData) { + public CountryAgent(DemandManager demandManager,CompositeCountry country, RasterSet<LandCoverItem> initialLC, + Map<CropType, CropUsageData> cropUsageData, Map<CropType, Double> tradeBarriers) { this.demandManager = demandManager; this.country = country; RasterSet<LandUseItem> cropAreaRaster = convertInitialLC(initialLC); + this.tradeBarriers = tradeBarriers; GamsRasterOutput initialData = new GamsRasterOutput(cropAreaRaster, cropUsageData); resultsTimeseries.put(new Timestep(0), initialData); @@ -50,6 +52,7 @@ public class CountryAgent { areasItem.setLandCoverAreas(entry.getValue()); areasItem.setCropFraction(CropType.WHEAT, 0.5); // random start, better if we could get data, but free substitution between crops so not critical areasItem.setCropFraction(CropType.MAIZE, 0.5); + areasItem.setProtectedArea(entry.getValue()); landUseRaster.put(key, areasItem); } @@ -75,7 +78,7 @@ public class CountryAgent { } else { // optimize areas and intensity - GamsRasterInput input = getGamsRasterInput(currentProjectedDemand, worldPrices, irrigData); + GamsRasterInput input = getGamsRasterInput(currentProjectedDemand, tradeBarriers, worldPrices, irrigData); GamsRasterOptimiser opti = new GamsRasterOptimiser(input); LogWriter.println("Running " + country.getName() + ", currentTimestep " + currentTimestep); @@ -91,8 +94,8 @@ public class CountryAgent { return currentProjectedDemand; } - private GamsRasterInput getGamsRasterInput(Map<CommodityType, Double> projectedDemand, Map<CropType, GlobalPrice> worldPrices, RasterSet<IrrigationItem> irrigData) { - + private GamsRasterInput getGamsRasterInput(Map<CommodityType, Double> projectedDemand, Map<CropType, Double> tradeBarriers, Map<CropType, GlobalPrice> worldPrices, RasterSet<IrrigationItem> irrigData) { +//TODO why pass in projectedDemand when currentProjectedDemand belongs to CountryAgent class already? GamsRasterOutput prevOutput; Map<CropType, Double> cropAdjs; boolean calibrate; @@ -118,7 +121,7 @@ public class CountryAgent { maxOfProdOrSupply.put(entry.getKey(), cropUsage.getProduction() + Math.max(netImports, 0)); } - GamsCountryInput countryLevelInputs = GamsCountryInput.createInput(country, projectedDemand, worldPrices, baseNetImport, maxOfProdOrSupply, cropAdjs, calibrate); + GamsCountryInput countryLevelInputs = GamsCountryInput.createInput(country, projectedDemand, tradeBarriers, worldPrices, baseNetImport, maxOfProdOrSupply, cropAdjs, calibrate); GamsRasterInput input = new GamsRasterInput(currentTimestep, countryYieldSurfaces, prevOutput.getLandUses(), irrigData, countryLevelInputs); return input; diff --git a/src/ac/ed/lurg/country/GlobalPrice.java b/src/ac/ed/lurg/country/GlobalPrice.java index 3d5dd5e6825a458f93077cd19e6be74ad5e56f38..8171026744eb0249525ff3a012346dea66c7c5b3 100644 --- a/src/ac/ed/lurg/country/GlobalPrice.java +++ b/src/ac/ed/lurg/country/GlobalPrice.java @@ -15,8 +15,12 @@ public class GlobalPrice { this.exportAmount = exportAmount; } +// public static GlobalPrice createInitial(double exportPrice) { +// return new GlobalPrice(exportPrice, exportPrice * (1-ModelConfig.TRANSPORT_LOSSES) / ModelConfig.TRADE_BARRIER_FACTOR, Double.NaN, Double.NaN); +// } +//removed trade barriers adjustment as this is now done per country public static GlobalPrice createInitial(double exportPrice) { - return new GlobalPrice(exportPrice, exportPrice * (1-ModelConfig.TRANSPORT_LOSSES) / ModelConfig.TRADE_BARRIER_FACTOR, Double.NaN, Double.NaN); + return new GlobalPrice(exportPrice, exportPrice * (1-ModelConfig.TRANSPORT_LOSSES), Double.NaN, Double.NaN); } public double getImportPrice() { diff --git a/src/ac/ed/lurg/country/TradeManager.java b/src/ac/ed/lurg/country/TradeManager.java new file mode 100644 index 0000000000000000000000000000000000000000..ac071eebd647e3450cccf6ab7228022090cbe5a0 --- /dev/null +++ b/src/ac/ed/lurg/country/TradeManager.java @@ -0,0 +1,112 @@ +package ac.ed.lurg.country; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.util.Map; +import java.util.Map.Entry; +import java.util.HashMap; + +import ac.ed.lurg.ModelConfig; +import ac.ed.lurg.types.CropType; +import ac.ed.lurg.utils.LogWriter; +import ac.ed.lurg.types.CropToDoubleMap; + + + +public class TradeManager { + + private static final int COUNTRY_COL = 0; + private static final int ITEM_COL = 1; + private static final int TRADE_BARRIER_COL = 2; + + private CompositeCountryManager compositeCountryManager; + private Map<CompositeCountry, CropToDoubleMap> tradeMap = new HashMap<CompositeCountry, CropToDoubleMap>(); + private boolean activeBarriers = ModelConfig.ACTIVE_TRADE_BARRIERS; + + + public TradeManager(CompositeCountryManager compositeCountryManager) { + this.compositeCountryManager = compositeCountryManager; + if(activeBarriers) + read(); + } + + public CropToDoubleMap getTradeBarriers(CompositeCountry cc){ + + if (tradeMap.get(cc) == null){ + + CropToDoubleMap tradeBarriers = new CropToDoubleMap(); + for (CropType c : CropType.getImportedTypes()) { + tradeBarriers.put(c, ModelConfig.TRADE_BARRIER_FACTOR_DEFAULT); + } + tradeMap.put(cc, tradeBarriers); + + } + + return tradeMap.get(cc); + } + + + public void read() { + String filename = ModelConfig.TRADE_BARRIERS_FILE; + + try { + BufferedReader reader = new BufferedReader(new FileReader(filename)); + String line, countryName, itemName; + double barrierValue; + reader.readLine(); // read header + + while ((line=reader.readLine()) != null) { + String[] tokens = line.split(","); + + if (tokens.length < 3) + LogWriter.printlnError("Too few columns in " + filename + ", " + line); + + try { + + countryName = tokens[COUNTRY_COL]; + itemName = tokens[ITEM_COL]; + barrierValue = Double.parseDouble(tokens[TRADE_BARRIER_COL]); + + SingleCountry country = CountryManager.getForName(countryName); + + CropType crop = CropType.getForFaoName(itemName); + + CompositeCountry cc = compositeCountryManager.getForSingleCountry(country); + + CropToDoubleMap countryData = tradeMap.get(cc); + + if (countryData == null) { + countryData = new CropToDoubleMap(); + tradeMap.put(cc, countryData); + + } + + countryData.incrementValue(crop, barrierValue); + + } catch (Exception e) { + LogWriter.printlnError("Failed in processing trade barriers line " + line); + LogWriter.print(e); + } + } + reader.close(); + + } catch (Exception e) { + LogWriter.printlnError("Failed in reading trade barriers data file"); + LogWriter.print(e); + } + LogWriter.println("Processed " + filename + ", create " + tradeMap.size() + " barriers entries"); + + for (Entry<CompositeCountry, CropToDoubleMap> entry : tradeMap.entrySet()) { + + // LogWriter.println("country name " + entry.getKey()); + // LogWriter.println("crops " + entry.getValue()); + + entry.getValue().divideBy(compositeCountryManager.getAllForCompositeCountry(entry.getKey()).size()); + +// LogWriter.println("number of countries " + compositeCountryManager.getAllForCompositeCountry(entry.getKey()).size()); +// LogWriter.println("crops " + entry.getValue()); + + } + } + +} diff --git a/src/ac/ed/lurg/country/gams/GamsCountryInput.java b/src/ac/ed/lurg/country/gams/GamsCountryInput.java index a8192511b2da364290f53cb353769eaeb2066316..d31d9f8438b8df2471db06d7ccf61047db9da2dc 100644 --- a/src/ac/ed/lurg/country/gams/GamsCountryInput.java +++ b/src/ac/ed/lurg/country/gams/GamsCountryInput.java @@ -9,6 +9,7 @@ import ac.ed.lurg.country.GlobalPrice; import ac.ed.lurg.country.ImportExportConstraint; import ac.ed.lurg.types.CommodityType; import ac.ed.lurg.types.CropType; +import ac.ed.lurg.utils.LogWriter; public class GamsCountryInput { @@ -18,15 +19,15 @@ public class GamsCountryInput { private Map<CropType, ImportExportConstraint> importConstraints; private Map<CropType, Double> cropAdjustments; private boolean calibrateToObserved; + private Map<CropType, Double> tradeBarriers; /* private double maxLandUseChange; private double meatEfficiency; private double minFeedRate; - private double tradeBarrier; private double landChangeEnergy;*/ - private GamsCountryInput(CompositeCountry country, Map<CommodityType, Double> projectedDemand, Map<CropType, GlobalPrice> worldPrices, + private GamsCountryInput(CompositeCountry country, Map<CommodityType, Double> projectedDemand, Map<CropType, Double> tradeBarriers, Map<CropType, GlobalPrice> worldPrices, Map<CropType, ImportExportConstraint> importConstraints, Map<CropType, Double> cropAdjustments, boolean calibrateToObserved) { super(); this.country = country; @@ -35,13 +36,14 @@ public class GamsCountryInput { this.importConstraints = importConstraints; this.cropAdjustments = cropAdjustments; this.calibrateToObserved = calibrateToObserved; + this.tradeBarriers = tradeBarriers; } public GamsCountryInput(GamsCountryInput gamsInput, Map<CropType, Double> cropAdjs) { - this(gamsInput.country, gamsInput.projectedDemand, gamsInput.worldPrices, gamsInput.importConstraints, cropAdjs, false); + this(gamsInput.country, gamsInput.projectedDemand, gamsInput.tradeBarriers, gamsInput.worldPrices, gamsInput.importConstraints, cropAdjs, false); } - public static GamsCountryInput createInput(CompositeCountry country, Map<CommodityType, Double> projectedDemand, Map<CropType, GlobalPrice> worldPrices, + public static GamsCountryInput createInput(CompositeCountry country, Map<CommodityType, Double> projectedDemand, Map<CropType, Double> tradeBarriers, Map<CropType, GlobalPrice> worldPrices, Map<CropType, Double> baseNetImport, Map<CropType, Double> maxOfProdOrSupply, Map<CropType, Double> cropAdjustments, boolean calibrateToObserved) { double allowedImportChange = calibrateToObserved ? 0.0 : ModelConfig.MAX_IMPORT_CHANGE; @@ -53,7 +55,7 @@ public class GamsCountryInput { importConstraints.put(c, new ImportExportConstraint(entry.getValue() - change, entry.getValue() + change)); } - return new GamsCountryInput(country, projectedDemand, worldPrices, importConstraints, cropAdjustments, calibrateToObserved); + return new GamsCountryInput(country, projectedDemand, tradeBarriers, worldPrices, importConstraints, cropAdjustments, calibrateToObserved); } @@ -113,10 +115,15 @@ public class GamsCountryInput { return netImport; } - public Map<CropType, Double> getWorldImportPrices() { + public Map<CropType, Double> getCountryImportPrices() { + double tradeBarrier; + double baseImportPrice; Map<CropType, Double> prices = new HashMap<CropType, Double>(); for (Map.Entry<CropType, GlobalPrice> entry : worldPrices.entrySet()) { - prices.put(entry.getKey(), entry.getValue().getImportPrice()); + + tradeBarrier = tradeBarriers.get(entry.getKey()); + baseImportPrice = entry.getValue().getImportPrice(); + prices.put(entry.getKey(), baseImportPrice+baseImportPrice*tradeBarrier); } return prices; } @@ -124,8 +131,12 @@ public class GamsCountryInput { public Map<CropType, Double> getWorldExportPrices() { Map<CropType, Double> prices = new HashMap<CropType, Double>(); for (Map.Entry<CropType, GlobalPrice> entry : worldPrices.entrySet()) { + + prices.put(entry.getKey(), entry.getValue().getExportPrice()); + } return prices; } } + diff --git a/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java b/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java index 9493c5ed16d3165b622bf4e7cbc4749146f036c3..b6cbb46ab6173e35e2c6ec6df0d02089bfd4eea6 100644 --- a/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java +++ b/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java @@ -168,7 +168,7 @@ public class GamsLocationOptimiser { } if (DEBUG) { - LogWriter.println("\nImport-export, min net imports, max net imports, import price, export price"); + LogWriter.println("\nImport-export, min net imports, max net imports, global import price, global export price"); for (CropType crop : CropType.getImportedTypes()) { ImportExportConstraint iec = countryInput.getImportConstraints().get(crop); double minNetImport = 0, maxNetImport = 0; @@ -186,9 +186,10 @@ public class GamsLocationOptimiser { addItemMapParm(inDB.addParameter("minNetImport", 1), countryInput.getMinNetImport(), false); addItemMapParm(inDB.addParameter("maxNetImport", 1), countryInput.getMaxNetImport(), false); - addItemMapParm(inDB.addParameter("worldImportPrices", 1), countryInput.getWorldImportPrices(), false); + addItemMapParm(inDB.addParameter("countryImportPrices", 1), countryInput.getCountryImportPrices(), false); addItemMapParm(inDB.addParameter("worldExportPrices", 1), countryInput.getWorldExportPrices(), false); - +//the above is not really world export price because it is scaled by country tradeBarriers, might want to change +//parameter name in GAMS i.e. countryExportPrices LogWriter.print("\n"); addScalar(inDB, "meatEfficency", countryInput.getMeatEfficiency()); addScalar(inDB, "fertiliserUnitCost", ModelConfig.FERTILISER_MAX_COST); diff --git a/src/ac/ed/lurg/country/gams/GamsLocationTest.java b/src/ac/ed/lurg/country/gams/GamsLocationTest.java index b5867c0dfb2e5d498c557666c9616f5cf5312f67..33ad6ae7fc669eb796b9d7b4108890ad8d0041a4 100644 --- a/src/ac/ed/lurg/country/gams/GamsLocationTest.java +++ b/src/ac/ed/lurg/country/gams/GamsLocationTest.java @@ -22,7 +22,7 @@ public class GamsLocationTest { } private void run() { - GamsCountryInput countryLevelInputs = GamsCountryInput.createInput(new CompositeCountry("Test"), getProjectedDemand(), null, null, null, null, true); + GamsCountryInput countryLevelInputs = GamsCountryInput.createInput(new CompositeCountry("Test"), getProjectedDemand(), getTradeBarriers(), null, null, null, null, true); GamsLocationInput gamsInput = new GamsLocationInput(new Timestep(0), getYields(), getPreviousArea(), getIrrigationCosts(), countryLevelInputs); GamsLocationOptimiser opti = new GamsLocationOptimiser(gamsInput); @@ -39,6 +39,19 @@ public class GamsLocationTest { dummyMap.put(CommodityType.MEAT, 480.0); return dummyMap; } + + Map<CropType, Double> getTradeBarriers() { + Map<CropType, Double> dummyTradeMap = new HashMap<CropType, Double>(); + dummyTradeMap.put(CropType.WHEAT, 300.0); + dummyTradeMap.put(CropType.MAIZE, 50.0); + dummyTradeMap.put(CropType.RICE, 50.0); + dummyTradeMap.put(CropType.OILCROPS, 50.0); + dummyTradeMap.put(CropType.PULSES, 60.0); + dummyTradeMap.put(CropType.STARCHY_ROOTS, 150.0); + dummyTradeMap.put(CropType.MEAT, 480.0); + + return dummyTradeMap; + } Map<Integer, YieldResponsesItem> getYields() { diff --git a/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java b/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java index 18c12dc21341d038d8fb54d01e9e2b171a6269c8..0cc19a4bbfe2896f8e9cf426ebf06f4c62926da5 100644 --- a/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java +++ b/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java @@ -283,7 +283,7 @@ public class GamsRasterOptimiser { CropType crop = CropType.WHEAT; if (yresp != null && (yresp.getYieldMax(crop) < yresp.getYieldFertOnly(crop) || yresp.getYieldMax(crop) < yresp.getYieldIrrigOnly(crop))) { - logErrorWithCoord(String.format("Inconsistency: F only: %.4f, I only %.4f, max %.4f at ", yresp.getYieldFertOnly(crop), yresp.getYieldIrrigOnly(crop), yresp.getYieldMax(crop)), key, yieldRaster); + logErrorWithCoord("Inconsistency F only:" + yresp.getYieldFertOnly(crop) + ", I only" + yresp.getYieldIrrigOnly(crop) + ", max " + yresp.getYieldMax(crop) + " at ", key, yieldRaster); } } diff --git a/src/ac/ed/lurg/country/gams/GamsRasterTest.java b/src/ac/ed/lurg/country/gams/GamsRasterTest.java index d67e8122a592eb6a5cea81407703af3c44eacba5..cc4548d732e8b9f0e4004c1cf7896ec1479abadc 100644 --- a/src/ac/ed/lurg/country/gams/GamsRasterTest.java +++ b/src/ac/ed/lurg/country/gams/GamsRasterTest.java @@ -18,7 +18,7 @@ public class GamsRasterTest extends GamsLocationTest { } private void run() { - GamsCountryInput countryLevelInputs = GamsCountryInput.createInput(new CompositeCountry("Test"), getProjectedDemand(), null, null, null, null, true); + GamsCountryInput countryLevelInputs = GamsCountryInput.createInput(new CompositeCountry("Test"), getProjectedDemand(), getTradeBarriers(), null, null, null, null, true); GamsRasterInput input = new GamsRasterInput(new Timestep(0), getYieldRaster(), getPreviousAreaRaster(), getIrrigationCost(), countryLevelInputs); GamsRasterOptimiser opti = new GamsRasterOptimiser(input); diff --git a/src/ac/ed/lurg/landuse/LandCoverItem.java b/src/ac/ed/lurg/landuse/LandCoverItem.java index 828984e7c5fbd5c9f129628281f32ef725d0dfcf..4417edbb5d2a5fa057629d8afaa4e79231f50976 100644 --- a/src/ac/ed/lurg/landuse/LandCoverItem.java +++ b/src/ac/ed/lurg/landuse/LandCoverItem.java @@ -12,6 +12,7 @@ public class LandCoverItem implements RasterItem { private Map<LandCoverType, Double> landcover = new HashMap<LandCoverType, Double>(); private double totalArea; + private double proportionProtectedArea; /** Area in Mha */ public Double getLandCoverArea(LandCoverType landType) { @@ -36,6 +37,15 @@ public class LandCoverItem implements RasterItem { public void setLandCoverFract(LandCoverType landType, double d) { landcover.put(landType, d); } + + public void setProtectedArea(double proportionProtectedArea){ + this.proportionProtectedArea=proportionProtectedArea; + } + + + public double getProtectedArea(){ + return proportionProtectedArea; + } /*public double getTotal() { double total = 0; diff --git a/src/ac/ed/lurg/landuse/LandCoverReader.java b/src/ac/ed/lurg/landuse/LandCoverReader.java index eee229fe49451310e13f0dd778b6a6134572bbb3..7c9b3a0032b9a5fd0b4163103bf7c0e488928f81 100644 --- a/src/ac/ed/lurg/landuse/LandCoverReader.java +++ b/src/ac/ed/lurg/landuse/LandCoverReader.java @@ -4,7 +4,6 @@ import java.util.Map; import ac.ed.lurg.types.LandCoverType; import ac.sac.raster.AbstractTabularRasterReader; -import ac.sac.raster.RasterHeaderDetails; import ac.sac.raster.RasterKey; import ac.sac.raster.RasterSet; @@ -12,24 +11,19 @@ public class LandCoverReader extends AbstractTabularRasterReader<LandCoverItem> private static final int MIN_COLS = 6; - public LandCoverReader (RasterHeaderDetails rasterProj) { - super(" +", MIN_COLS); - - dataset = new RasterSet<LandCoverItem> (rasterProj) { - private static final long serialVersionUID = 4642550777741425501L; - @Override - protected LandCoverItem createRasterData() { - return new LandCoverItem(); - } - }; + + public LandCoverReader(RasterSet<LandCoverItem> landCover) { + super(" +", MIN_COLS, landCover); } @Override protected void setData(RasterKey key, LandCoverItem lcData, Map<String, Double> rowValues) { + lcData.setTotalArea(dataset.getAreaMha(key)); lcData.setLandCoverFract(LandCoverType.CROPLAND, getValueForCol(rowValues, "cropland")); lcData.setLandCoverFract(LandCoverType.PASTURE, getValueForCol(rowValues, "pasture")); lcData.setLandCoverFract(LandCoverType.OTHER_NATURAL, getValueForCol(rowValues, "natural")); lcData.setLandCoverFract(LandCoverType.BARREN, getValueForCol(rowValues, "barren")); + } } diff --git a/src/ac/ed/lurg/landuse/LandUseItem.java b/src/ac/ed/lurg/landuse/LandUseItem.java index dae95a1711b3ebb37b735d52ac6d40fe0970a434..14594356bd7d2086e3ca93fd30928d5ebdcf3eb8 100644 --- a/src/ac/ed/lurg/landuse/LandUseItem.java +++ b/src/ac/ed/lurg/landuse/LandUseItem.java @@ -16,7 +16,18 @@ public class LandUseItem implements InterpolatingRasterItem<LandUseItem> { private Map<CropType, Intensity> intensityMap = new HashMap<CropType, Intensity>(); private Map<CropType, Double> cropFractions = new HashMap<CropType, Double>(); private Map<LandCoverType, Double> landCoverAreas = new HashMap<LandCoverType, Double>(); + private double protectedArea; //protected area in Mha + public void setProtectedArea(LandCoverItem landCover){ + if (landCover != null) { + double areaTotal = this.getTotalLandCoverArea(); + this.protectedArea = landCover.getProtectedArea()*areaTotal; + } + } + + public double getProtectedArea(){ + return this.protectedArea; + } public Intensity getIntensity(CropType crop) { return intensityMap.get(crop); @@ -189,11 +200,16 @@ public class LandUseItem implements InterpolatingRasterItem<LandUseItem> { public double getSuitableLand() { double d = 0; - for (LandCoverType l : LandCoverType.values()) { - if (!LandCoverType.BARREN.equals(l)) // barren land is not suitable - d += getLandCoverArea(l); - } + + double protectedTotal = protectedArea; + double totalNatural = getLandCoverArea(LandCoverType.OTHER_NATURAL) + getLandCoverArea(LandCoverType.FOREST); + if (totalNatural >= protectedTotal) + d += totalNatural - protectedTotal; + + d += getLandCoverArea(LandCoverType.PASTURE); + d += getLandCoverArea(LandCoverType.CROPLAND); + return d; } diff --git a/src/ac/ed/lurg/landuse/ProtectedAreasReader.java b/src/ac/ed/lurg/landuse/ProtectedAreasReader.java new file mode 100644 index 0000000000000000000000000000000000000000..489f984b22cc4442cc6b3a879aa2038a49090996 --- /dev/null +++ b/src/ac/ed/lurg/landuse/ProtectedAreasReader.java @@ -0,0 +1,20 @@ +package ac.ed.lurg.landuse; + +import ac.sac.raster.AbstractRasterReader; +import ac.sac.raster.RasterSet; + +public class ProtectedAreasReader extends AbstractRasterReader<LandCoverItem> { + + public ProtectedAreasReader (RasterSet<LandCoverItem> dataset) { + super(dataset); + } + + @Override + public void setData(LandCoverItem lcData, String token) { + if (!"nan".equals(token)) { + double protFrac = Double.parseDouble(token); + lcData.setProtectedArea(protFrac); + } + } + +} \ No newline at end of file diff --git a/src/ac/ed/lurg/types/CropToDoubleMap.java b/src/ac/ed/lurg/types/CropToDoubleMap.java index 857d57e9d50ae58526f85a46a8fa4c48878d1fc1..54a32e8a5d63d9931bb13be1c820fa226e1662b3 100644 --- a/src/ac/ed/lurg/types/CropToDoubleMap.java +++ b/src/ac/ed/lurg/types/CropToDoubleMap.java @@ -31,5 +31,18 @@ public class CropToDoubleMap extends HashMap<CropType, Double> { } return result; } + + public void divideBy(int divideBy) { + + for (Map.Entry<CropType, Double> entry : entrySet()) { + + if (divideBy == 0) + throw new RuntimeException("CropToDoubleMap.divideBy number of countries to divide by is zero"); + + Double value = entry.getValue()/(double)divideBy; + + entry.setValue(value); + } + } }