diff --git a/src/main/java/org/ids_mannheim/TotalNGrams.java b/src/main/java/org/ids_mannheim/TotalNGrams.java
index 236791e..c2a1b47 100644
--- a/src/main/java/org/ids_mannheim/TotalNGrams.java
+++ b/src/main/java/org/ids_mannheim/TotalNGrams.java
@@ -165,7 +165,7 @@
         etaPrinter.finish();
         if (!sort) {
             map.entrySet()
-                    .forEach(entry -> output_stream.println(entry.getKey() + "\t" + entry.getValue().toString()));
+                    .forEach(entry -> output_stream.println(entry.getKey() + "\t" + Integer.toUnsignedString(entry.getValue().get())));
         } else {
             logger.info("Sorting and writing frequency table.");
             System.err.println("Sorting and writing frequency table.");
@@ -178,7 +178,7 @@
                             return a.getKey().compareTo(b.getKey());
                         }
                     })
-                    .forEachOrdered(entry -> output_stream.println(entry.getKey() + "\t" + entry.getValue().toString()));
+                    .forEachOrdered(entry -> output_stream.println(entry.getKey() + "\t" + Integer.toUnsignedString(entry.getValue().get())));
         }
         logger.info("Finished.");
         output_stream.close();
