diff --git a/src/ac/ed/lurg/ModelConfig.java b/src/ac/ed/lurg/ModelConfig.java
index 5d4b01de1af5aa60930088d4e8361f845274952a..529b1c2cfcd2f481ef5fc22e94ada311c6c67533 100644
--- a/src/ac/ed/lurg/ModelConfig.java
+++ b/src/ac/ed/lurg/ModelConfig.java
@@ -246,6 +246,10 @@ public class ModelConfig {
 	public static final int DIETARY_CHANGE_END_YEAR  = getIntProperty("DIETARY_CHANGE_END_YEAR", 2050);
 	public static final double DIETARY_CHANGE_ANNUAL_RATE  = getDoubleProperty("DIETARY_CHANGE_ANNUAL_RATE", 0.05);
 	
+	//RUGS limit yield in argentina
+	public static final boolean LIMIT_MAIZE_YIELD_ARGENTINA = getBooleanProperty("LIMIT_MAIZE_YIELD_ARGENTINA", true);
+	public static final double LIMIT_YIELD_BY  = getDoubleProperty("LIMIT_YIELD_BY", 0.0);
+
 	
 	public static final double MARKET_LAMBA = getDoubleProperty("MARKET_LAMBA", 0.4); // controls international market price adjustment rate
 
diff --git a/src/ac/ed/lurg/ModelMain.java b/src/ac/ed/lurg/ModelMain.java
index 123f2c0feee476f7080f6be810c5520c2446e412..1b9ec52f5e763dc0d5822b6c23438b3ed68b9fbb 100644
--- a/src/ac/ed/lurg/ModelMain.java
+++ b/src/ac/ed/lurg/ModelMain.java
@@ -380,6 +380,7 @@ public class ModelMain {
 		writeGlobalMarketFile(timestep);
 		writeDemandFile(timestep);
 		writeDomesticProductionFile(timestep);
+		
 
 		if (ModelConfig.OUTPUT_FOR_LPJG) {
 			for (int outputYear : timestep.getYearsFromLast()) {
@@ -580,6 +581,7 @@ public class ModelMain {
 			areasItem.setProtectedArea(landCover.getProtectedArea());
 			landUseRaster.put(key, areasItem);
 		}
+		//outputAreas(initialLC);
 		return landUseRaster;
 	}
 
diff --git a/src/ac/ed/lurg/country/CountryAgent.java b/src/ac/ed/lurg/country/CountryAgent.java
index 5919ca81fb7f4c6f6727681cda38330c58b77d15..e6b017d48555977e92c7f4153f8316cd6b437082 100644
--- a/src/ac/ed/lurg/country/CountryAgent.java
+++ b/src/ac/ed/lurg/country/CountryAgent.java
@@ -20,6 +20,7 @@ import ac.ed.lurg.landuse.LandUseItem;
 import ac.ed.lurg.types.CommodityType;
 import ac.ed.lurg.types.CropType;
 import ac.ed.lurg.types.LandCoverType;
+import ac.ed.lurg.types.YieldType;
 import ac.ed.lurg.utils.LogWriter;
 import ac.ed.lurg.utils.cluster.Cluster;
 import ac.ed.lurg.utils.cluster.KMeans;
@@ -107,6 +108,20 @@ public class CountryAgent {
 		currentProjectedDemand = demandManager.getDemand(country, timestep.getYear());
 		currentCountryPrices = calculateCountryPrices(worldPrices);
 		
+
+		if(ModelConfig.LIMIT_MAIZE_YIELD_ARGENTINA & country.getName().equals("Argentina")){
+			
+			 for (Entry<RasterKey, YieldResponsesItem> entry : countryYieldSurfaces.entrySet()) {
+				 YieldResponsesItem yresp = entry.getValue();
+				 if (yresp != null){
+					 for (YieldType yt : YieldType.values()) {
+						 double prevYield = yresp.getYield(yt, CropType.MAIZE);
+						 yresp.setYield(yt,CropType.MAIZE, prevYield*(1-ModelConfig.LIMIT_YIELD_BY));
+					 }
+				 }
+			 }
+		}
+		
 		
 		if (currentProjectedDemand.size() == 0) {
 			LogWriter.printlnError("No demand for country " + country + " so skipping it");
@@ -204,4 +219,21 @@ public class CountryAgent {
 		 
 		 return previousGamsRasterOutput;
 	 }
+	 
+//	 private YieldRaster adjustCountryYield (YieldRaster countryYieldSurfaces){
+//		 
+//		 for (Entry<RasterKey, YieldResponsesItem> entry : countryYieldSurfaces.entrySet()) {
+//			 YieldResponsesItem yresp = entry.getValue();
+//			 if (yresp != null){
+//				 for (YieldType yt : YieldType.values()) {
+//					 double prevYield = yresp.getYield(yt, CropType.MAIZE);
+//					 LogWriter.println("before  " + " yield type " + yt + " yield " + yresp.getYield(yt, CropType.MAIZE));
+//					 yresp.setYield(yt,CropType.MAIZE, prevYield*(1-ModelConfig.LIMIT_YIELD_BY));
+//					 LogWriter.println("after  " + " yield type " + yt + " yield " + yresp.getYield(yt, CropType.MAIZE));
+//				 }
+//			 }
+//		 }
+//		 return countryYieldSurfaces;
+//		 
+//	 }
 }
diff --git a/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java b/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java
index 895d9a0b131d84f471212a9600b7589fdbcd3a21..ebe99c918307977f91977901d36502ba77c48d1e 100644
--- a/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java
+++ b/src/ac/ed/lurg/country/gams/GamsLocationOptimiser.java
@@ -359,7 +359,6 @@ public class GamsLocationOptimiser {
 				landUseItem.setLandCoverArea(LandCoverType.CROPLAND, croplandArea);  // will set this multiple times, once for each arable crop, but doesn't really matter
 				totalCropArea += area;
 			}
-			
 			landUseItem.setCropFraction(cropType, croplandArea > 0 ? area/croplandArea : 0);
 		}
 
diff --git a/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java b/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java
index 7200115bf530337718a1f0a5b4caa6fdead15b32..0d576a6e1a3139b1fc63a39196aea6a4af1675b6 100644
--- a/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java
+++ b/src/ac/ed/lurg/country/gams/GamsRasterOptimiser.java
@@ -158,7 +158,7 @@ public class GamsRasterOptimiser {
 				LogWriter.println("pastureFromNatural" + pastureFromNatural);
 				LogWriter.println("cropFromNatural" + cropFromNatural);
 			}
-			
+			 
 			allocAllLandCropsTop(newLandUseRaster, keys, LandCoverType.PASTURE, LandCoverType.MANAGED_FOREST, pastureFromNatural * prevForestToNaturalFraction * prevForestManagedFraction, locId);
 			allocAllLandCropsTop(newLandUseRaster, keys, LandCoverType.PASTURE, LandCoverType.UNMANAGED_FOREST, pastureFromNatural * prevForestToNaturalFraction * (1-prevForestManagedFraction), locId);
 			allocAllLandCropsTop(newLandUseRaster, keys, LandCoverType.PASTURE, LandCoverType.OTHER_NATURAL, pastureFromNatural * (1-prevForestToNaturalFraction), locId);
@@ -176,6 +176,7 @@ public class GamsRasterOptimiser {
 						newLandUseItem.setCropFraction(crop, newLandUseAggItem.getCropFraction(crop));
 						newLandUseItem.setIntensity(crop, newLandUseAggItem.getIntensity(crop)); // intensities constant over single aggregated land category
 					}
+					
 				}
 			}
 		}
diff --git a/src/ac/ed/lurg/output/LandUseOutputer.java b/src/ac/ed/lurg/output/LandUseOutputer.java
index c58afd39574c7836bf43e6fb70104f96fe04f484..680de4d5229a460dcb6e18e02348623e21203689 100644
--- a/src/ac/ed/lurg/output/LandUseOutputer.java
+++ b/src/ac/ed/lurg/output/LandUseOutputer.java
@@ -52,7 +52,8 @@ public class LandUseOutputer extends AbstractLandUseOutputer {
 				
 				double lat = landUseRaster.getXCoordin(key);
 				double lon = landUseRaster.getYCoordin(key);
-
+				
+			
 				StringBuffer sbData = new StringBuffer(String.format("%.2f %.2f", lat, lon));
 
 				sbData.append(String.format(" %.8f", item.getTotalLandCoverArea()));
@@ -73,7 +74,6 @@ public class LandUseOutputer extends AbstractLandUseOutputer {
 					double yield = intensity==null ? 0.0 : intensity.getYield();
 					sbData.append(String.format(" %.8f %.8f %.8f %.8f %.8f %.8f %.8f", cropFract, fertI, fertQ, irrigI, irrigQ, otherI, yield));
 				}
-				
 				fertWriter.write(sbData.toString());
 				fertWriter.newLine();
 			}