code: def maximum_consecutive_dry_days(pr, thresh='1 mm/day', freq='YS'):
      r
      t = utils.convert_units_to(thresh, pr, 'hydro')
      group = (pr < t).resample(time=freq)
  
      return group.apply(rl.longest_run, dim='time')
docs: r"""Maximum number of consecutive dry days
  
      Return the maximum number of consecutive days within the period where precipitation
      is below a certain threshold.
  
      Parameters
      ----------
      pr : xarray.DataArray
        Mean daily precipitation flux [mm]
      thresh : str
        Threshold precipitation on which to base evaluation [mm]. Default : '1 mm/day'
      freq : str, optional
        Resampling frequency
  
      Returns
      -------
      xarray.DataArray
        The maximum number of consecutive dry days.
  
      Notes
      -----
      Let :math:`\mathbf{p}=p_0, p_1, \ldots, p_n` be a daily precipitation series and :math:`thresh` the threshold
      under which a day is considered dry. Then let :math:`\mathbf{s}` be the sorted vector of indices :math:`i` where
      :math:`[p_i < thresh] \neq [p_{i+1} < thresh]`, that is, the days when the temperature crosses the threshold.
      Then the maximum number of consecutive dry days is given by
  
      .. math::
  
         \max(\mathbf{d}) \quad \mathrm{where} \quad d_j = (s_j - s_{j-1}) [p_{s_j} > thresh]
  
      where :math:`[P]` is 1 if :math:`P` is true, and 0 if false. Note that this formula does not handle sequences at
      the start and end of the series, but the numerical algorithm does.