---
Function {
    argument: None,
    arguments: FunctionArguments {
        arguments: [
            FunctionArgument {
                identifier: "ocaml_lwt",
                default: None,
            },
            FunctionArgument {
                identifier: "angstrom",
                default: None,
            },
            FunctionArgument {
                identifier: "buildDunePackage",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchFromGitHub",
                default: None,
            },
            FunctionArgument {
                identifier: "lib",
                default: None,
            },
        ],
        ellipsis: false,
    },
    definition: FunctionApplication {
        function: Variable {
            identifier: "buildDunePackage",
            position: (3, 1),
        },
        arguments: [
            Map {
                bindings: [
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "pname",
                                    position: (4, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "angstrom-lwt-unix",
                                    position: (4, 12),
                                },
                            ],
                        },
                    ),
                    Inherit(
                        Some(
                            Variable {
                                identifier: "angstrom",
                                position: (6, 12),
                            },
                        ),
                        [
                            Raw {
                                content: "version",
                                position: (6, 22),
                            },
                            Raw {
                                content: "useDune2",
                                position: (6, 30),
                            },
                            Raw {
                                content: "src",
                                position: (6, 39),
                            },
                        ],
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "minimumOCamlVersion",
                                    position: (8, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "4.03",
                                    position: (8, 26),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "propagatedBuildInputs",
                                    position: (10, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "angstrom",
                                    position: (10, 29),
                                },
                                Variable {
                                    identifier: "ocaml_lwt",
                                    position: (10, 38),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "doCheck",
                                    position: (12, 3),
                                },
                            ],
                        },
                        Variable {
                            identifier: "true",
                            position: (12, 13),
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "meta",
                                    position: (14, 3),
                                },
                            ],
                        },
                        Map {
                            bindings: [
                                Inherit(
                                    Some(
                                        PropertyAccess {
                                            expression: Variable {
                                                identifier: "angstrom",
                                                position: (15, 14),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "meta",
                                                        position: (15, 23),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                    ),
                                    [
                                        Raw {
                                            content: "homepage",
                                            position: (15, 29),
                                        },
                                        Raw {
                                            content: "license",
                                            position: (15, 38),
                                        },
                                    ],
                                ),
                                KeyValue(
                                    AttributePath {
                                        attributes: [
                                            Raw {
                                                content: "description",
                                                position: (16, 5),
                                            },
                                        ],
                                    },
                                    String {
                                        parts: [
                                            Raw {
                                                content: "Lwt_unix support for Angstrom",
                                                position: (16, 20),
                                            },
                                        ],
                                    },
                                ),
                                KeyValue(
                                    AttributePath {
                                        attributes: [
                                            Raw {
                                                content: "maintainers",
                                                position: (17, 5),
                                            },
                                        ],
                                    },
                                    With {
                                        expression: PropertyAccess {
                                            expression: Variable {
                                                identifier: "lib",
                                                position: (17, 24),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "maintainers",
                                                        position: (17, 28),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                        target: List {
                                            elements: [
                                                Variable {
                                                    identifier: "romildo",
                                                    position: (17, 43),
                                                },
                                            ],
                                        },
                                    },
                                ),
                            ],
                            recursive: false,
                        },
                    ),
                ],
                recursive: true,
            },
        ],
    },
}