anchor.diff:      list_to_binary(Value);
   to_binary(Value) ->
       Value.
  +
  +config(Key) ->
  +    {ok, Val} = application:get_env(erltube, Key),
  +    Key.
  
positive.code: 
  check_params(Resource, Params) ->
      Rules = get_resource_params(Resource),
  
      %% check required params
      Required = proplists:get_value(required, Rules, []),
      R1 = [proplists:is_defined(K, Required) || {K,_V} <- Params],
      case lists:member(false, R1) =:= false of
          true ->
              OneOrMore = proplists:get_value(one_or_more, Rules, []),
              R2 = [proplists:is_defined(K, OneOrMore) || {K,_V} <- Params],
              case lists:member(true, R2) =:= true of
                  true ->
                      %% check types of params
                      R3 = [validate_params(Resource, F) || F <- Params],
                      case lists:member(false, R3) of
                          false -> ok;
                          true  -> {error, {invalid_param_types, Resource}}
                      end;
                  false ->
                      {error, {missing_required_params, Resource}}
              end;
          false ->
            {error, {missing_required_params, Resource}}
      end.
  
  get_resource_params(channel_list) ->
  
negative.code:     case check_params(Resource, Params) of
          ok ->
              Url = get_url(Resource),
              case config(verbose)of
                  true  -> io:format("erltube: url=~p, params=~p, body=~p~n",
                                    [Url, Params, Body]);
                  false -> skip
              end,
              case http_request(Method, Url, Headers, Params, Body) of
                  {200, Headers, Response} ->
                      {ok, Headers, parse_response(Response, json)};
  