diff --git a/src/main/java/bdv/server/CellHandler.java b/src/main/java/bdv/server/CellHandler.java
index e0fa4d484980a7a23b303cbcb137ae178a480572..69a2a6934fb2091a5966a343d8a427d8d52b9e1b 100644
--- a/src/main/java/bdv/server/CellHandler.java
+++ b/src/main/java/bdv/server/CellHandler.java
@@ -10,6 +10,7 @@ import javax.imageio.ImageIO;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import compression.U16;
 import compression.quantization.scalar.ScalarQuantizer;
 import compression.utilities.Utils;
 import org.eclipse.jetty.server.Request;
@@ -169,17 +170,36 @@ public class CellHandler extends ContextHandler {
             } else if (compressionParams.renderDifference()) {
                 assert (quantizer != null) : "Compressor wasn't created";
                 short[] compressedData = quantizer.quantize(data);
-
+                int e1 = 0, e2 = 0, e3 = 0, e4 = 0, e5 = 0;
                 for (int i = 0; i < data.length; i++) {
-//                    final int diff = Math.abs(compressedData[i] - data[i]);
-//                    if (diff > 100) {
-//                        data[i] = 2000;
-//                    } else {
-//                        data[i] = 0;
-//                    }
-
-                    data[i] = (short) (5*Utils.u16BitsToShort(Math.abs(compressedData[i] - data[i])));
+                    final int diff = Math.abs(compressedData[i] - data[i]);
+                    if (diff < 100) {
+                        data[i] = 1000;
+                        ++e1;
+                    } else if (diff < 200) {
+                        data[i] = 2000;
+                        ++e2;
+                    } else if (diff < 300) {
+                        data[i] = 3000;
+                        ++e3;
+                    } else if (diff < 400) {
+                        data[i] = 4000;
+                        ++e4;
+                    } else if (diff < 500) {
+                        data[i] = 5000;
+                        ++e5;
+                    } else {
+                        data[i] = 0x0;
+                    }
+//                    assert (data[i] != 0 || (data[i] == 0 && compressedData[i] == 0)) : "BAD";
+//                    data[i] = (short) (5 * Utils.u16BitsToShort(Math.abs(compressedData[i] - data[i])));
                 }
+                LOG.info(String.format("E1: %.2f E2: %.2f E3: %.2f E4: %.2f E5: %.2f",
+                        (float)e1/(float)data.length,
+                        (float)e2/(float)data.length,
+                        (float)e3/(float)data.length,
+                        (float)e4/(float)data.length,
+                        (float)e5/(float)data.length));
 
                 //LOG.warn("Not yet implemented.");
             }
@@ -200,9 +220,9 @@ public class CellHandler extends ContextHandler {
 
             transferedDataSize += buf.length;
 
-            LOG.info(String.format("I:%d;T:%d;S:%d;L:%d  Total transfered data: [%d KB] [%d MB]",
-                    index, timepoint, setup, level,
-                    (transferedDataSize / 1000), ((transferedDataSize / 1000) / 1000)));
+//            LOG.info(String.format("I:%d;T:%d;S:%d;L:%d  Total transfered data: [%d KB] [%d MB]",
+//                    index, timepoint, setup, level,
+//                    (transferedDataSize / 1000), ((transferedDataSize / 1000) / 1000)));
 
             response.setContentType("application/octet-stream");
             response.setContentLength(buf.length);