diff --git a/GAMS/IntExtOpt.gms b/GAMS/IntExtOpt.gms
index 8d85f6630fe55ca63ace30fd587cc7e6f3e709c0..1383000ce9ec6f08641500706afc387615704ca8 100644
--- a/GAMS/IntExtOpt.gms
+++ b/GAMS/IntExtOpt.gms
@@ -52,9 +52,9 @@ $load fertParam, irrigParam, otherIParam, exportPrices, importPrices, maxNetImpo
 $load meatEfficency, otherICost, irrigCost, irrigMaxRate, irrigConstraint, fertiliserUnitCost, domesticPriceMarkup
 $gdxin    
  
- SCALAR delta use to smooth power function see 7.5 www.gams.com dd docs solversconopt.pdf / 0.00000000001 /  
+ SCALAR delta use to smooth power function see 7.5 www.gams.com dd docs solversconopt.pdf / 0.00000000001 /;
      
- SCALAR minDemandPerCereal / 0.1 /;
+ SCALAR minDemandPerCereal / 0.0 /;
  
  previousArea(crop_less_pasture, location) = previousArea(crop_less_pasture, location) * (1.0 - unhandledCropArea);
  
diff --git a/hind1970/data/bioenergy_data_from_IMAGE_melt.csv b/hind1970/data/bioenergy_data_from_IMAGE_melt.csv
new file mode 100644
index 0000000000000000000000000000000000000000..80bfafbf8a85d53f75d4aa7f2308edc07a3e56ab
--- /dev/null
+++ b/hind1970/data/bioenergy_data_from_IMAGE_melt.csv
@@ -0,0 +1 @@
+MODEL,SCENARIO,REGION,Variable,Unit,Year,value
diff --git a/hindcast/hind_config.properties b/hindcast/hind_config.properties
index 8e38296faee2038a0d371fffe53f8e605d075d50..eb085a44d99239cc0870144408cc09b217e1210e 100644
--- a/hindcast/hind_config.properties
+++ b/hindcast/hind_config.properties
@@ -2,30 +2,40 @@ BASE_DIR=/Users/peteralexander/Documents/R_Workspace/UNPLUM/hind1970
 INITAL_LAND_COVER_FILENAME=hurtt_1970.txt
 BASE_YEAR=1970
 SSP_SCENARIO=HINDCAST
-YIELD_DIR=/Users/peteralexander/Documents/LURG/LPJ/19Jan2017/LPJG_PLUM_expt1.1_1971-2005_forED
+YIELD_DIR=/Users/peteralexander/Documents/LURG/LPJ/29May2017/LPJG_PLUM_expt1.1_1961-2015_ipsl_LUfixes_10patchesFrom5patches_forED_20170528170903
+#YIELD_DIR=/Users/peteralexander/Documents/LURG/LPJ/19Jan2017/LPJG_PLUM_expt1.1_1971-2005_forED
 #YIELD_DIR=/Users/peteralexander/Documents/LURG/LPJ/IPSL/LPJG_PLUM_expt1.1_1966-2005_ipsl_lessIO_forED
 
 # irritatingly the gams file is also found under the BASE_DIR, and don't want to duplicate so need to specify exactly
 GAMS_MODEL=/Users/peteralexander/Documents/R_Workspace/UNPLUM/GAMS/IntExtOpt.gms
 
-DEBUG_LIMIT_COUNTRIES=false
-DEBUG_COUNTRY_NAME=China
+DEBUG_LIMIT_COUNTRIES=true
+DEBUG_COUNTRY_NAME=Germany
 #Europe & Central Asia_other
 #Russian Federation
 #Europe & Central Asia_other
 
-IS_CALIBRATION_RUN = false
+IS_CALIBRATION_RUN = true
 
-END_TIMESTEP=20
+END_TIMESTEP=0
 TIMESTEP_SIZE=2
 
 INTERPOLATE_OUTPUT_YEARS = false
 
 BIOENERGY_CHANGE_START_YEAR=1970
 BIOENERGY_CHANGE_END_YEAR=2010
-BIOENERGY_CHANGE_ANNUAL_RATE=0.35
 
+BIOENERGY_CHANGE_ANNUAL_RATE=0.35
 PASTURE_INCREASE_COST=0.01
 AGRI_EXPANSION_COST_BASE=0.01
 AGRI_EXPANSION_COST_BASE_MANAGED_FOREST=0.1
 
+#Yields too high by factor of 10
+#CALIB_FACTOR_WHEAT = 0.0986
+#CALIB_FACTOR_MAIZE = 0.0625
+#CALIB_FACTOR_RICE = 0.1105
+#CALIB_FACTOR_OILCROPS = 0.0554
+#CALIB_FACTOR_PULSES = 0.0615
+#CALIB_FACTOR_STARCHY_ROOTS = 0.6211
+
+NUM_YIELD_CLUSTERS=500
diff --git a/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java b/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java
index a86196c23e18e95374ce28176467ac30f2b8cefd..fcb27e8a6f68d7365f09e7f340789cbeff28f4be 100644
--- a/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java
+++ b/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java
@@ -91,11 +91,6 @@ public class GamsLocationOptimiser {
 		GAMSParameter landP = inDB.addParameter("suitableLandArea", 1);
 		GAMSParameter agriExpansionCostP = inDB.addParameter("agriExpansionCost", 1);		
 
-		addScalar(inDB, "cropIncCost", ModelConfig.CROP_INCREASE_COST, 3);		
-		addScalar(inDB, "cropDecCost", ModelConfig.CROP_DECREASE_COST, 3);		
-		addScalar(inDB, "pastureDecCost", ModelConfig.PASTURE_DECREASE_COST, 3);		
-		addScalar(inDB, "pastureIncCost", ModelConfig.PASTURE_INCREASE_COST, 3);		
-
 		double totalAgriLand = 0;
 
 		for (Map.Entry<Integer, ? extends LandUseItem> entry : inputData.getPreviousLandUse().entrySet()) {
@@ -225,6 +220,10 @@ public class GamsLocationOptimiser {
 		}
 
 		LogWriter.print("\n");
+		addScalar(inDB, "cropIncCost", ModelConfig.CROP_INCREASE_COST, 3);		
+		addScalar(inDB, "cropDecCost", ModelConfig.CROP_DECREASE_COST, 3);		
+		addScalar(inDB, "pastureDecCost", ModelConfig.PASTURE_DECREASE_COST, 3);		
+		addScalar(inDB, "pastureIncCost", ModelConfig.PASTURE_INCREASE_COST, 3);		
 		addScalar(inDB, "meatEfficency", countryInput.getMeatEfficiency(), 3);		
 		addScalar(inDB, "fertiliserUnitCost", ModelConfig.FERTILISER_MAX_COST, 3);
 		addScalar(inDB, "otherICost",ModelConfig.OTHER_INTENSITY_COST, 3);
diff --git a/src/ac/ed/lurg/demand/DemandManager.java b/src/ac/ed/lurg/demand/DemandManager.java
index cd5925894a512007fb820bc29ed16fe8c66cfed7..b21ef8d2b8df426db14208e358bc517a126fb616 100644
--- a/src/ac/ed/lurg/demand/DemandManager.java
+++ b/src/ac/ed/lurg/demand/DemandManager.java
@@ -40,16 +40,15 @@ public class DemandManager {
 
 		for (SingleCountry c : compositeCountryManager.getAllForCompositeCountry(cc)) {
 			SspData baseSspData = sspManager.get(ssp_scenario, ModelConfig.BASE_YEAR, c);
-
 			SspData sd = sspManager.get(ssp_scenario, year, c);
-
-			LogWriter.println("Got ssp data for " + c.getCountryName() + " of " + sd);
-
-			if (sd == null) {
-				LogWriter.printlnError("No ssp data for " + ssp_scenario + ", " + year + ", " + c.getCountryName());
+			
+			if (baseSspData == null || sd == null) {
+				LogWriter.printlnError(String.format("No baseSspData or ssp for %s, baseYr:%d, year:%d, %s, base:%s, sd:%s. Skipping", ssp_scenario, ModelConfig.BASE_YEAR, year, c.getCountryName(), baseSspData, sd));
 				continue;
 			}
 
+			LogWriter.println("Got ssp data for " + c.getCountryName() + " of " + sd);
+
 			for (CommodityType commodity : CommodityType.getAllItems()) {
 				ModelFitType fitType = commodity.isAnimalProduct() ? ModelFitType.LOGISTIC : ModelFitType.LOGLINEAR;
 				
diff --git a/src/ac/sac/raster/AbstractTabularRasterReader.java b/src/ac/sac/raster/AbstractTabularRasterReader.java
index 67c0440d1795c154c028a3e78785de03c466318f..998f5373f5d5cea266c875e80dd6d71a0b0e36c4 100644
--- a/src/ac/sac/raster/AbstractTabularRasterReader.java
+++ b/src/ac/sac/raster/AbstractTabularRasterReader.java
@@ -81,7 +81,7 @@ public abstract class AbstractTabularRasterReader<D extends RasterItem> {
 							rowValues.put(dataColNames[i], d);
 						}
 						catch (Exception e) {
-							LogWriter.print("Problem getting col: " + i + " for x: " + x + ", y: " + y + " - " + e.getMessage());
+							LogWriter.println("Problem getting col: " + i + " for x: " + x + ", y: " + y + " - " + e.getMessage());
 						}
 					}