anchor.diff:  
   (in-package #:com.schobadoo.bencode)
   
  -(defparameter +utf-8+ (flex:make-external-format :utf-8))
  -
   (define-condition unexpected-octet (error)
     ((expected-octet :initarg :expected-octet :reader expected-octet)
      (actual-octet :initarg :actual-octet :reader actual-octet)))
  
positive.code: If stream is a flexi-stream, its external-format will be used when
  decoding strings.  Otherwise, the value of the external-format
  parameter is used to create a flexi-stream for decoding.  The default
  is :utf-8."))
  
  (defmethod decode ((stream stream) &key (external-format +utf-8+))
    (decode (make-flexi-stream stream :external-format external-format)))
  
  (defmethod decode ((sequence sequence) &key (external-format +utf-8+))
    (with-input-from-sequence (stream sequence)
      (decode (make-flexi-stream stream :external-format external-format))))
  
  
negative.code:             (error "Expected 0x~x got 0x~x" (char-code char) byte)))
      (continue () t)))
  
  (defun string-to-octets (string &optional (external-format :utf-8))
    (flex:string-to-octets string :external-format external-format))
  
  (defun octets-to-string (octets external-format)
  