<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _perform_chunking(func_, *args, **kwargs):
 """ internal function alled only by wrap_split_big_content performs the actual chunking. :param func_: :param args: :param kwargs: :return: <dict> RethinkDB dict from insert """

    obj_dict = args[0]
    start_point = 0
    file_count = 0
    new_dict = {}
    resp_dict = Counter({})
    file_list = []
    while start_point < len(obj_dict[CONTENT_FIELD]):
        file_count += 1
        chunk_fn = CHUNK_POSTFIX.format(obj_dict[PRIMARY_FIELD],
                                        str(file_count).zfill(CHUNK_ZPAD))
        new_dict[PRIMARY_FIELD] = chunk_fn
        file_list.append(new_dict[PRIMARY_FIELD])
        new_dict[CONTENTTYPE_FIELD] = obj_dict[CONTENTTYPE_FIELD]
        new_dict[TIMESTAMP_FIELD] = obj_dict[TIMESTAMP_FIELD]
        end_point = file_count * MAX_PUT
        sliced = obj_dict[CONTENT_FIELD][start_point: end_point]
        new_dict[CONTENT_FIELD] = sliced
        new_dict[PART_FIELD] = True
        new_dict[PARENT_FIELD] = obj_dict[PRIMARY_FIELD]
        start_point = end_point
        new_args = (new_dict, args[1])
        resp_dict += Counter(func_(*new_args, **kwargs))

    obj_dict[CONTENT_FIELD] = b""
    obj_dict[PARTS_FIELD] = file_list
    obj_dict[PART_FIELD] = False
    new_args = (obj_dict, args[1])
    resp_dict += Counter(func_(*new_args, **kwargs))
    return resp_dict