def merge_slide_with_same_headers(data: list) -> list:
    """
    Function to merge slides with the same header.

    :param data: The list of dictionaries of the form
    :type: [{"Header":"",
            "Paragraph":"",
            "Header_keywords": [],
            "Paragraph_keywords": [],
            slide:int}]
    :return: The list of dictionaries where slides containing the same header are merged
    :rtype: [{"Header":"", "Header_keywords": [], "Paragraph_keywords": [], slides:[int]}]
    """
    merged = []
    headers = []
    for slide in data:
        if slide["Header"] not in headers:
            headers.append(slide["Header"])
            paragraph_keywords = []
            slide_numbers = []
            for data_1 in [data_2 for data_2 in data if data_2["Header"] == slide["Header"]]:
                paragraph_keywords += data_1["Paragraph_keywords"]
                slide_numbers.append(data_1["slide"])
            merged.append({"Header": slide["Header"], "Header_keywords": slide["Header_keywords"],
                           "Paragraph_keywords": paragraph_keywords, "slides": slide_numbers})
    return merged