anchor.diff:      decode(Bin).
   
   %%====================================================================
  +
   decode_b([H | Rest]) ->
       case H of
           $i ->
  
positive.code: %%%-------------------------------------------------------------------
  %%% File    : bcoding.erl
  %%% Author  : Jesper Louis Andersen <jlouis@succubus>
  %%% License : See COPYING
  %%% Description : Functions for handling bcoded values
  %%%
  %%% Created : 24 Jan 2007 by Jesper Louis Andersen <jlouis@succubus>
  %%%-------------------------------------------------------------------
  -module(etorrent_bcoding).
  -author("Jesper Louis Andersen <jesper.louis.andersen@gmail.com>").
  -include("types.hrl").
  
negative.code:     PL2 = proplists:get_value(<<"info">>, PL),
      proplists:get_value(Key, PL2, Def).
  
  %% @doc Read a binary Value indexed by Key from the PL dict
  %% @end
  get_binary_value(Key, PL) ->
      V = get_value(Key, PL),
      true = is_binary(V),
      V.
  
  %% @doc Read a binary Value indexed by Key from the PL dict with default.
  %%   <p>Will return Default upon non-existence</p>
  %% @end
  get_binary_value(Key, PL, Default) ->
      case get_value(Key, PL) of
  	undefined -> Default;
  	B when is_binary(B) -> B
      end.
  
  %% @doc Read a string Value indexed by Key from the PL dict
  %% @end
  get_string_value(Key, PL) -> binary_to_list(get_binary_value(Key, PL)).
  
  %% @doc Read a binary Value indexed by Key from the PL dict with default.
  %%   <p>Will return Default upon non-existence</p>
  %% @end
  get_string_value(Key, PL, Default) ->
      case get_value(Key, PL) of
  	undefined -> Default;
  