diff --git a/common/decoders.py b/common/decoders.py
index af3b11006b894489f4f64aabb227ec4b8825f597..66ece671c3682f650acb976ae6721231c33a8ed8 100644
--- a/common/decoders.py
+++ b/common/decoders.py
@@ -58,17 +58,15 @@ def signed_overpunch_i(x):
 
 class df_decoders():
     def __init__(self, dtype):
-        self.dtype = dtype if dtype in properties.numeric_types else 'object'
+        # Return as object, conversion to actual type in converters only!
+        self.dtype = 'object'
     def signed_overpunch(self, data ):
         decoded_numeric = np.vectorize(signed_overpunch_i,otypes=[float])(data)
         return pd.Series(decoded_numeric,dtype = self.dtype)
 
     def base36(self, data):
         # Caution: int(str(np.nan),36) ==> 30191
-        if self.dtype == 'object' : 
-            base10 = [ str(int(str(i), 36)) if i == i and i else np.nan for i in data ]
-        else:
-            base10 = [ int(str(i), 36) if i == i and i else np.nan for i in data ]
+        base10 = [ str(int(str(i), 36)) if i == i and i else np.nan for i in data ]
             
         return pd.Series(base10,dtype = self.dtype)