# File lib/ec2/right_ec2_vpc.rb, line 106
    def describe_subnets(*list_and_filters)
      list, filters = vpc__split_list_and_filters(list_and_filters)
      cache_for = (list.empty? && filters.empty?) ? :describe_subnets : nil
      request_hash = {}
      request_hash.merge!(amazonize_list('SubnetId', list))
      request_hash.merge!(amazonize_list(['Filter.?.Key','Filter.?.Value.?'], filters))
      link = generate_request("DescribeSubnets", request_hash)
      request_cache_or_info cache_for, link,  QEc2DescribeSubnetsParser, @@bench, cache_for
    rescue Exception
      on_exception
    end