diff --git a/pom.xml b/pom.xml
index 866f955dbedbb499933cb10f25f28dd846e0eb0b..41c0844853d70becd540dbf4303ca146a1656c08 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
 	<groupId>edu.illinois.cs.cogcomp</groupId>
 	<artifactId>illinois-inference</artifactId>
 	<packaging>jar</packaging>
-	<version>0.7.0</version>
+	<version>0.8.0</version>
 
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff --git a/src/main/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHook.java b/src/main/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHook.java
index 89a836d59bec439600c7702248a9bc67946bf29e..06ff5a844213a3d83f13243ffe4dc0d498e5fb4d 100644
--- a/src/main/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHook.java
+++ b/src/main/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHook.java
@@ -439,12 +439,27 @@ public class GurobiHook implements ILPSolver {
 
     @Override
     public int getIntegerValue(int index) {
+        if (!isSolved)
+            return 0;
+        try {
+            double x = ((GRBVar) variables.get(index)).get(GRB.DoubleAttr.X);
+            return (int)Math.round(x);
+        } catch (GRBException e) {
+            handleException(e);
+        }
         return 0;
     }
 
     @Override
     public double getRealValue(int index) {
-        return 0;
+        if (!isSolved)
+            return 0.0;
+        try {
+            return ((GRBVar) variables.get(index)).get(GRB.DoubleAttr.X);
+        } catch (GRBException e) {
+            handleException(e);
+        }
+        return 0.0;
     }
 
 
diff --git a/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHookTest.java b/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHookTest.java
index e5caf60a623287b8d54399ca01fbaa2fde88f8e2..f2258d9fabd48dad976b218284295f2c9253416f 100644
--- a/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHookTest.java
+++ b/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/GurobiHookTest.java
@@ -271,7 +271,30 @@ public class GurobiHookTest {
         assertTrue(ojaHook.getBooleanValue(5));
     }
 
+    @Test
+    public void testProgram10() throws Exception {
+        GurobiHook ojaHook = new GurobiHook();
 
+        double[] objcoeffs = {0, 1, 2};
+        int[] indices = ojaHook.addDiscreteVariable(objcoeffs);
 
 
+        ojaHook.setMaximize(true);
+
+        try {
+            ojaHook.solve();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+
+        System.out.println(indices[0] + "/ " + indices[1] + " / " + indices[2]);
+        ojaHook.printSolution();
+        ojaHook.printModelStatus();
+
+        assertTrue(ojaHook.objectiveValue() == 2);
+        assertTrue(ojaHook.getBooleanValue(indices[2]));
+        assertTrue(!ojaHook.getBooleanValue(indices[1]));
+        assertTrue(!ojaHook.getBooleanValue(indices[0]));
+    }
+
 }
\ No newline at end of file
diff --git a/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/OJalgoHookTest.java b/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/OJalgoHookTest.java
index efcd29034c3ed622ca1fbf12fce6718a3ba79189..2e4e98ff9e479671e41176291395695df193c4d8 100644
--- a/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/OJalgoHookTest.java
+++ b/src/test/java/edu/illinois/cs/cogcomp/infer/ilp/OJalgoHookTest.java
@@ -287,5 +287,4 @@ public class OJalgoHookTest {
         assertTrue(!ojaHook.getBooleanValue(4));
         assertTrue(ojaHook.getBooleanValue(5));
     }
-
 }
\ No newline at end of file