def fetch(filter_type, request_num, options = {})
      limit_page = options[:limit_page] || MAX_PAGES_DEFAULT
      filter = Filter.new(filter_type, min_time: options[:to])
      page = Page.new(session, filter, options[:from], options[:to])

      # NOTE: filter は report に渡したほうがシンプルじゃない？
      limit_page.times.each_with_object(Report.new(request_num)) do |_, report|
        report.push(page)
        break report if page.last_page? || report.reach_request_num?

        page = page.next
      end
    end
def fetch(filter_type, request_num, options = {})
      limit_page = options[:limit_page] || MAX_PAGES_DEFAULT
      filter = Filter.new(filter_type, min_time: options[:to])
      page = Page.new(session, filter, options[:from], options[:to])

      # NOTE: filter は report に渡したほうがシンプルじゃない？
      limit_page.times.each_with_object(Report.new(request_num)) do |_, report|
        report.push(page)
        break report if page.last_page? || report.reach_request_num?

        page = page.next
      end
    end
=== Params

 * limit_page - Integer
 * request_num - Integer
 * options - Hash

 === Options

 * from - Time or String
 * to - Time or String

 fetch reports `:from` newer `:to` older