anchor.diff:          (t (error "Type of value N not recognized."))))
   
   (defun bits<- (data)
  -  (cond ((typep data 'integer)
  +  (cond ((and (typep data 'integer)
  +              (= data 0))
  +         (hex->bits "00"))
  +        ((typep data 'integer)
            (int->bits data))
           ((typep data 'bit-vector)
  -         (error (format nil "'~S' is already a bit-vector" data)))
  +         data)
           ((or (typep data '(vector (unsigned-byte 8)))
                (typep data '(simple-array (unsigned-byte 8) (*))))
            (octets->bits data))
  
positive.code:              (typep data '(simple-array (unsigned-byte 8) (*))))
           (octets->hex data))
          ((typep data 'string)
           (error (format nil "'~A' is already a string." data)))
          (t (error "Type of value N not recognized."))))
  
  (defun octets<- (data)
    (cond ((typep data 'integer)
           (int->octets data))
          ((typep data 'bit-vector)
           (bits->octets data (length data)))
          ((or (typep data '(vector (unsigned-byte 8)))
               (typep data '(simple-array (unsigned-byte 8) (*))))
           (error (format nil "'~S' is already an octet-vector." data)))
          ((typep data 'string)
           (hex->octets data))
          (t (error "Type of value N not recognized."))))
  
  (defun int<- (data)
    (cond ((typep data 'integer)
           (error (format nil "'~D' is already an integer." data)))
          ((typep data 'bit-vector)
           (bits->int data))
          ((or (typep data '(vector (unsigned-byte 8)))
  
negative.code:   (ironclad:integer-to-octets (bits->int data) :n-bits order))
  
  (defun hex<- (data)
    (cond ((and (typep data 'integer)
                (= data 0))
           "00")
          ((typep data 'integer)
           (int->hex data))
          ((typep data 'bit-vector)
           (bits->hex data))
  