Returns a ``datetime`` object in the past between 1 second ago and the
    specified ``start``. ``start`` can be a string, another datetime, or a
    timedelta. If it's a string, it must start with `-`, followed by and integer
    and a unit, Eg: ``'-30d'``. Defaults to `'-30d'`

    Valid units are:
    * ``'years'``, ``'y'``
    * ``'weeks'``, ``'w'``
    * ``'days'``, ``'d'``
    * ``'hours'``, ``'h'``
    * ``'minutes'``, ``'m'``
    * ``'seconds'``, ``'s'``

def past_datetime(start='-30d'):
    """
    Returns a ``datetime`` object in the past between 1 second ago and the
    specified ``start``. ``start`` can be a string, another datetime, or a
    timedelta. If it's a string, it must start with `-`, followed by and integer
    and a unit, Eg: ``'-30d'``. Defaults to `'-30d'`

    Valid units are:
    * ``'years'``, ``'y'``
    * ``'weeks'``, ``'w'``
    * ``'days'``, ``'d'``
    * ``'hours'``, ``'h'``
    * ``'minutes'``, ``'m'``
    * ``'seconds'``, ``'s'``
    """
    return lambda n, f: f.past_datetime(
        start_date=start, tzinfo=get_timezone(),
    )