def METHOD_NAME(self, info_buckets: List[dict]) -> List[dict]:
    temp_results = {}
    child_results = []
    for bucket in info_buckets:
        child = self._build_child_json_result(bucket)
        child_results.append(child)
    for child in child_results:
        result = self._build_json_result(child)
        child.pop("parent_data")
        if result["id"] in temp_results.keys():
            temp_results[result["id"]] = {
                "id": int(result["id"]),
                "code": result["code"],
                "description": result["description"],
                "award_count": temp_results[result["id"]]["award_count"] + result["award_count"],
                # the count of distinct awards contributing to the totals
                "obligation": temp_results[result["id"]]["obligation"] + result["obligation"],
                "outlay": temp_results[result["id"]]["outlay"] + result["outlay"],
                "face_value_of_loan": bucket["count_awards_by_dim"]["sum_loan_value"]["value"],
                "children": temp_results[result["id"]]["children"] + result["children"],
            }
        else:
            temp_results[result["id"]] = result
    results = [x for x in temp_results.values()]
    return results