anchor.diff:  decode_binary(<<C4:8, Cs/bits>>, A, B1, B2, B3) ->
       case b64d(C4) of
           ws                -> decode_binary(Cs, A, B1, B2, B3);
  -        eq when B3 =:= eq -> only_ws_binary(Cs, <<A/binary,B1:6,(B2 bsr 4):2>>);
  -        eq                -> only_ws_binary(Cs, <<A/binary,B1:6,B2:6,(B3 bsr 2):4>>);
  -        B4                -> decode_binary(Cs, <<A/binary,B1:6,B2:6,B3:6,B4:6>>)
  +        eq when B3 =:= eq -> only_ws_binary(Cs, <<A/bits,B1:6,(B2 bsr 4):2>>);
  +        eq                -> only_ws_binary(Cs, <<A/bits,B1:6,B2:6,(B3 bsr 2):4>>);
  +        B4                -> decode_binary(Cs, <<A/bits,B1:6,B2:6,B3:6,B4:6>>)
       end.
   
   only_ws_binary(<<>>, A) ->
  
positive.code:         _ -> mime_decode_binary_after_eq(Cs, A, B1, B2, B3)
      end;
  mime_decode_binary_after_eq(<<>>, A, B1, B2, eq) ->
      <<A/binary,B1:6,(B2 bsr 4):2>>;
  mime_decode_binary_after_eq(<<>>, A, B1, B2, B3) ->
      <<A/binary,B1:6,B2:6,(B3 bsr 2):4>>.
  
  mime_decode_list_to_string([0 | Cs]) ->
      mime_decode_list_to_string(Cs);
  
negative.code:         _ -> mime_decode_list_after_eq(Cs, A, B1, B2, B3)
      end;
  mime_decode_list_after_eq([], A, B1, B2, eq) ->
      <<A/bits,B1:6,(B2 bsr 4):2>>;
  mime_decode_list_after_eq([], A, B1, B2, B3) ->
      <<A/bits,B1:6,B2:6,(B3 bsr 2):4>>.
  
  mime_decode_binary(<<0:8, Cs/bits>>, A) ->
      mime_decode_binary(Cs, A);
  