       (read [_ buff pos]
         (loop [index pos result {} pairs data]
           (if-let [[fieldname type] (first pairs)]
-            (let [[readeddata readedbytes] (read type buff index)]
+            (let [[readedbytes readeddata] (read type buff index)]
               (recur (+ index readedbytes)
                      (assoc result fieldname readeddata)
                      (rest pairs)))

    (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]
