def is_between(y, sy, by, m=1, d=1, sm=1, sd=1, bm=12, bd=None):
    '\n    tests whether a date is on or between two other dates\n\n    returns true if the target date is between the since date and the before\n    date, inclusive.\n\n    Parameters\n    ----------\n    y : int\n      the year to be tested\n    sy : int\n      the since year\n    by : int\n      the before year\n    m : int or str\n      the month to be tested. Optional, defaults to Jan\n    d : int\n      the day to be tested.  Defaults to 1\n    sm : int or str\n      the since month.  Optional, defaults to Jan\n    bm : int or str\n      the before month.  Optional, defaults to Dec\n    sd: int\n      the since day.  Optional, defaults to 1\n    bd: int\n      the before day.  Optional, defaults to 28\n\n    Returns\n    -------\n    True if the target date is between the since date and the before date,\n    inclusive (i.e., returns true if the target date is the same as either the\n    since date or the before date)\n\n    '
    if (not bd):
        bd = monthrange(by, month_to_int(bm))[1]
    return (is_since(y, sy, m=m, d=d, sm=sm, sd=sd) and is_before(y, by, m=m, d=d, bm=bm, bd=bd))
tests whether a date is on or between two other dates

returns true if the target date is between the since date and the before
date, inclusive.

Parameters
----------
y : int
  the year to be tested
sy : int
  the since year
by : int
  the before year
m : int or str
  the month to be tested. Optional, defaults to Jan
d : int
  the day to be tested.  Defaults to 1
sm : int or str
  the since month.  Optional, defaults to Jan
bm : int or str
  the before month.  Optional, defaults to Dec
sd: int
  the since day.  Optional, defaults to 1
bd: int
  the before day.  Optional, defaults to 28

Returns
-------
True if the target date is between the since date and the before date,
inclusive (i.e., returns true if the target date is the same as either the
since date or the before date)
def is_between(y, sy, by, m=1, d=1, sm=1, sd=1, bm=12, bd=None):
    '\n    tests whether a date is on or between two other dates\n\n    returns true if the target date is between the since date and the before\n    date, inclusive.\n\n    Parameters\n    ----------\n    y : int\n      the year to be tested\n    sy : int\n      the since year\n    by : int\n      the before year\n    m : int or str\n      the month to be tested. Optional, defaults to Jan\n    d : int\n      the day to be tested.  Defaults to 1\n    sm : int or str\n      the since month.  Optional, defaults to Jan\n    bm : int or str\n      the before month.  Optional, defaults to Dec\n    sd: int\n      the since day.  Optional, defaults to 1\n    bd: int\n      the before day.  Optional, defaults to 28\n\n    Returns\n    -------\n    True if the target date is between the since date and the before date,\n    inclusive (i.e., returns true if the target date is the same as either the\n    since date or the before date)\n\n    '
    if (not bd):
        bd = monthrange(by, month_to_int(bm))[1]
    return (is_since(y, sy, m=m, d=d, sm=sm, sd=sd) and is_before(y, by, m=m, d=d, bm=bm, bd=bd))