 
      IReadableSpec
      (read [_ buff pos]
-       [(buffer/read-long buff pos)
-        (Long/BYTES)])
+       [(Long/BYTES)
+        (buffer/read-long buff pos)])
 
      IWritableSpec
      (write [_ buff pos value]

    (read [_ buff pos]
      (loop [index pos result [] types types]
        (if-let [type (first types)]
          (let [[readeddata readedbytes] (read type buff index)]
            (recur (+ index readedbytes)
                   (conj result readeddata)
                   (rest types)))


     IReadableSpec
     (read [_ buff pos]
       [(Integer/BYTES)
        (buffer/read-int buff pos)])

     IWritableSpec
     (write [_ buff pos value]
