def valid_proxy_arguments? left_method, *args, &proc
      args.size > 2 && raise(ArgumentError, '#%s - wrong number of arguments, %i for 0..2' % [left_method, args.size])
      args.size > 0 && proc && raise(ArgumentError, '#%s accepts either arguments or a block, not both' % left_method)
    end
def valid_proxy_arguments? left_method, *args, &proc
      args.size > 2 && raise(ArgumentError, '#%s - wrong number of arguments, %i for 0..2' % [left_method, args.size])
      args.size > 0 && proc && raise(ArgumentError, '#%s accepts either arguments or a block, not both' % left_method)
    end
@api private
 checking whether correct arguments passed to proxy methods.

 @raise [ArgumentError] if more than two arguments given
 @raise [ArgumentError] if both argument and block given