<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def group_records(records, groupby='week'):
 """ Group records by year, month, week, or day. Parameters records : iterator An iterator over records groupby : Default is 'week': * 'week': group all records by year and week * None: records are not grouped. This is useful if you don't want to divide records in chunks * "day", "month", and "year" also accepted """


    def _group_date(records, _fun):
        for _, chunk in itertools.groupby(records, key=lambda r: _fun(r.datetime)):
            yield list(chunk)

    return _group_date(records, DATE_GROUPERS[groupby])