---
Function {
    argument: None,
    arguments: FunctionArguments {
        arguments: [
            FunctionArgument {
                identifier: "typing-extensions",
                default: None,
            },
            FunctionArgument {
                identifier: "regex",
                default: None,
            },
            FunctionArgument {
                identifier: "pythonOlder",
                default: None,
            },
            FunctionArgument {
                identifier: "pytestCheckHook",
                default: None,
            },
            FunctionArgument {
                identifier: "poetry-core",
                default: None,
            },
            FunctionArgument {
                identifier: "lark",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchFromGitHub",
                default: None,
            },
            FunctionArgument {
                identifier: "buildPythonPackage",
                default: None,
            },
            FunctionArgument {
                identifier: "assertpy",
                default: None,
            },
            FunctionArgument {
                identifier: "lib",
                default: None,
            },
        ],
        ellipsis: false,
    },
    definition: FunctionApplication {
        function: Variable {
            identifier: "buildPythonPackage",
            position: (13, 1),
        },
        arguments: [
            Map {
                bindings: [
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "pname",
                                    position: (14, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "pycep-parser",
                                    position: (14, 12),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "version",
                                    position: (15, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "0.3.2",
                                    position: (15, 14),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "format",
                                    position: (16, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "pyproject",
                                    position: (16, 13),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "disabled",
                                    position: (18, 3),
                                },
                            ],
                        },
                        FunctionApplication {
                            function: Variable {
                                identifier: "pythonOlder",
                                position: (18, 14),
                            },
                            arguments: [
                                String {
                                    parts: [
                                        Raw {
                                            content: "3.7",
                                            position: (18, 27),
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "src",
                                    position: (20, 3),
                                },
                            ],
                        },
                        FunctionApplication {
                            function: Variable {
                                identifier: "fetchFromGitHub",
                                position: (20, 9),
                            },
                            arguments: [
                                Map {
                                    bindings: [
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "owner",
                                                        position: (21, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "gruebel",
                                                        position: (21, 14),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "repo",
                                                        position: (22, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "pycep",
                                                        position: (22, 13),
                                                    },
                                                ],
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "rev",
                                                        position: (23, 5),
                                                    },
                                                ],
                                            },
                                            Variable {
                                                identifier: "version",
                                                position: (23, 11),
                                            },
                                        ),
                                        KeyValue(
                                            AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "hash",
                                                        position: (24, 5),
                                                    },
                                                ],
                                            },
                                            String {
                                                parts: [
                                                    Raw {
                                                        content: "sha256-ud26xJQWdu7wtv75/K16HSSw0MvaSr3H1hDZBPjSzYE=",
                                                        position: (24, 13),
                                                    },
                                                ],
                                            },
                                        ),
                                    ],
                                    recursive: false,
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "nativeBuildInputs",
                                    position: (27, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "poetry-core",
                                    position: (28, 5),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "propagatedBuildInputs",
                                    position: (31, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "lark",
                                    position: (32, 5),
                                },
                                Variable {
                                    identifier: "regex",
                                    position: (33, 5),
                                },
                                Variable {
                                    identifier: "typing-extensions",
                                    position: (34, 5),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "checkInputs",
                                    position: (37, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                Variable {
                                    identifier: "assertpy",
                                    position: (38, 5),
                                },
                                Variable {
                                    identifier: "pytestCheckHook",
                                    position: (39, 5),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "postPatch",
                                    position: (42, 3),
                                },
                            ],
                        },
                        String {
                            parts: [
                                Raw {
                                    content: "substituteInPlace pyproject.toml \\\n  --replace 'version = \"0.3.2-alpha.4\"' 'version = \"",
                                    position: (43, 1),
                                },
                                Expression {
                                    expression: Variable {
                                        identifier: "version",
                                        position: (44, 59),
                                    },
                                },
                                Raw {
                                    content: "\"' \\\n  --replace 'regex = \"^2022.3.2\"' 'regex = \"*\"'\n",
                                    position: (44, 67),
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "pythonImportsCheck",
                                    position: (48, 3),
                                },
                            ],
                        },
                        List {
                            elements: [
                                String {
                                    parts: [
                                        Raw {
                                            content: "pycep",
                                            position: (49, 6),
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                    KeyValue(
                        AttributePath {
                            attributes: [
                                Raw {
                                    content: "meta",
                                    position: (52, 3),
                                },
                            ],
                        },
                        With {
                            expression: Variable {
                                identifier: "lib",
                                position: (52, 15),
                            },
                            target: Map {
                                bindings: [
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "description",
                                                    position: (53, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "Python based Bicep parser",
                                                    position: (53, 20),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "homepage",
                                                    position: (54, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "https://github.com/gruebel/pycep",
                                                    position: (54, 17),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "license",
                                                    position: (55, 5),
                                                },
                                            ],
                                        },
                                        With {
                                            expression: Variable {
                                                identifier: "licenses",
                                                position: (55, 20),
                                            },
                                            target: List {
                                                elements: [
                                                    Variable {
                                                        identifier: "asl20",
                                                        position: (55, 32),
                                                    },
                                                ],
                                            },
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "maintainers",
                                                    position: (56, 5),
                                                },
                                            ],
                                        },
                                        With {
                                            expression: Variable {
                                                identifier: "maintainers",
                                                position: (56, 24),
                                            },
                                            target: List {
                                                elements: [
                                                    Variable {
                                                        identifier: "fab",
                                                        position: (56, 39),
                                                    },
                                                ],
                                            },
                                        },
                                    ),
                                ],
                                recursive: false,
                            },
                        },
                    ),
                ],
                recursive: true,
            },
        ],
    },
}