docs: def check_transfers(
      feed: "Feed", *, as_df: bool = False, include_warnings: bool = False
  ) -> List:
      """
      Analog of :func:`check_agency` for ``feed.transfers``.
      """
      table = "transfers"
      problems = []
  
      # Preliminary checks
      if feed.transfers is None:
          return problems
  
      f = feed.transfers.copy()
      problems = check_for_required_columns(problems, table, f)
      if problems:
          return format_problems(problems, as_df=as_df)
  
      if include_warnings:
          problems = check_for_invalid_columns(problems, table, f)
  
      # Check from_stop_id and to_stop_id
      for col in ["from_stop_id", "to_stop_id"]:
          problems = check_column_linked_id(
              problems, table, f, col, feed.stops, "stop_id"
          )
  
      # Check transfer_type
      v = lambda x: pd.isnull(x) or x in range(5)
      problems = check_column(
          problems, table, f, "transfer_type", v, column_required=False
      )
  
      # Check min_transfer_time
      v = lambda x: x >= 0
      problems = check_column(
          problems, table, f, "min_transfer_time", v, column_required=False
      )
  
      return format_problems(problems, as_df=as_df)