Merge two google-style docstrings into a single docstring, according to napoleon docstring sections.

        Given the google-style docstrings from a parent and child's attributes, merge the docstring
        sections such that the child's section is used, wherever present, otherwise the parent's
        section is used.

        Any whitespace that can be uniformly removed from a docstring's second line and onwards is
        removed. Sections will be separated by a single blank line.

        Aliased docstring sections are normalized. E.g Args, Arguments -> Parameters

        Parameters
        ----------
        prnt_doc: Optional[str]
            The docstring from the parent.
        child_doc: Optional[str]
            The docstring from the child.

        Returns
        -------
        Union[str, None]
            The merged docstring.

def merge_google_napoleon_docs(prnt_doc=None, child_doc=None):
    """ Merge two google-style docstrings into a single docstring, according to napoleon docstring sections.

        Given the google-style docstrings from a parent and child's attributes, merge the docstring
        sections such that the child's section is used, wherever present, otherwise the parent's
        section is used.

        Any whitespace that can be uniformly removed from a docstring's second line and onwards is
        removed. Sections will be separated by a single blank line.

        Aliased docstring sections are normalized. E.g Args, Arguments -> Parameters

        Parameters
        ----------
        prnt_doc: Optional[str]
            The docstring from the parent.
        child_doc: Optional[str]
            The docstring from the child.

        Returns
        -------
        Union[str, None]
            The merged docstring. """
    style = "google"
    return merge_all_sections(parse_napoleon_doc(prnt_doc, style), parse_napoleon_doc(child_doc, style), style)