---
Function {
    argument: None,
    arguments: FunctionArguments {
        arguments: [
            FunctionArgument {
                identifier: "pkg-config",
                default: None,
            },
            FunctionArgument {
                identifier: "autoreconfHook",
                default: None,
            },
            FunctionArgument {
                identifier: "stdenv",
                default: None,
            },
            FunctionArgument {
                identifier: "lib",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchpatch",
                default: None,
            },
            FunctionArgument {
                identifier: "fetchFromGitHub",
                default: None,
            },
        ],
        ellipsis: false,
    },
    definition: With {
        expression: Variable {
            identifier: "lib",
            position: (3, 6),
        },
        target: FunctionApplication {
            function: PropertyAccess {
                expression: Variable {
                    identifier: "stdenv",
                    position: (5, 1),
                },
                attribute_path: AttributePath {
                    attributes: [
                        Raw {
                            content: "mkDerivation",
                            position: (5, 8),
                        },
                    ],
                },
                default: None,
            },
            arguments: [
                Map {
                    bindings: [
                        KeyValue(
                            AttributePath {
                                attributes: [
                                    Raw {
                                        content: "pname",
                                        position: (6, 3),
                                    },
                                ],
                            },
                            String {
                                parts: [
                                    Raw {
                                        content: "i3blocks",
                                        position: (6, 12),
                                    },
                                ],
                            },
                        ),
                        KeyValue(
                            AttributePath {
                                attributes: [
                                    Raw {
                                        content: "version",
                                        position: (7, 3),
                                    },
                                ],
                            },
                            String {
                                parts: [
                                    Raw {
                                        content: "1.5",
                                        position: (7, 14),
                                    },
                                ],
                            },
                        ),
                        KeyValue(
                            AttributePath {
                                attributes: [
                                    Raw {
                                        content: "src",
                                        position: (9, 3),
                                    },
                                ],
                            },
                            FunctionApplication {
                                function: Variable {
                                    identifier: "fetchFromGitHub",
                                    position: (9, 9),
                                },
                                arguments: [
                                    Map {
                                        bindings: [
                                            KeyValue(
                                                AttributePath {
                                                    attributes: [
                                                        Raw {
                                                            content: "owner",
                                                            position: (10, 5),
                                                        },
                                                    ],
                                                },
                                                String {
                                                    parts: [
                                                        Raw {
                                                            content: "vivien",
                                                            position: (10, 14),
                                                        },
                                                    ],
                                                },
                                            ),
                                            KeyValue(
                                                AttributePath {
                                                    attributes: [
                                                        Raw {
                                                            content: "repo",
                                                            position: (11, 5),
                                                        },
                                                    ],
                                                },
                                                String {
                                                    parts: [
                                                        Raw {
                                                            content: "i3blocks",
                                                            position: (11, 13),
                                                        },
                                                    ],
                                                },
                                            ),
                                            KeyValue(
                                                AttributePath {
                                                    attributes: [
                                                        Raw {
                                                            content: "rev",
                                                            position: (12, 5),
                                                        },
                                                    ],
                                                },
                                                String {
                                                    parts: [
                                                        Raw {
                                                            content: "3417602a2d8322bc866861297f535e1ef80b8cb0",
                                                            position: (12, 12),
                                                        },
                                                    ],
                                                },
                                            ),
                                            KeyValue(
                                                AttributePath {
                                                    attributes: [
                                                        Raw {
                                                            content: "sha256",
                                                            position: (13, 5),
                                                        },
                                                    ],
                                                },
                                                String {
                                                    parts: [
                                                        Raw {
                                                            content: "0v8mwnm8qzpv6xnqvrk43s4b9iyld4naqzbaxk4ldq1qkhai0wsv",
                                                            position: (13, 15),
                                                        },
                                                    ],
                                                },
                                            ),
                                        ],
                                        recursive: false,
                                    },
                                ],
                            },
                        ),
                        KeyValue(
                            AttributePath {
                                attributes: [
                                    Raw {
                                        content: "patches",
                                        position: (16, 3),
                                    },
                                ],
                            },
                            List {
                                elements: [
                                    FunctionApplication {
                                        function: Variable {
                                            identifier: "fetchpatch",
                                            position: (18, 6),
                                        },
                                        arguments: [
                                            Map {
                                                bindings: [
                                                    KeyValue(
                                                        AttributePath {
                                                            attributes: [
                                                                Raw {
                                                                    content: "url",
                                                                    position: (20, 7),
                                                                },
                                                            ],
                                                        },
                                                        String {
                                                            parts: [
                                                                Raw {
                                                                    content: "https://github.com/edef1c/i3blocks/commit/d57b32f9a364aeaf36869efdd54240433c737e57.patch",
                                                                    position: (20, 14),
                                                                },
                                                            ],
                                                        },
                                                    ),
                                                    KeyValue(
                                                        AttributePath {
                                                            attributes: [
                                                                Raw {
                                                                    content: "sha256",
                                                                    position: (21, 7),
                                                                },
                                                            ],
                                                        },
                                                        String {
                                                            parts: [
                                                                Raw {
                                                                    content: "102xb0ax0hmg82dz2gzfag470dkckzf2yizai0izacvrz0d3ngj1",
                                                                    position: (21, 17),
                                                                },
                                                            ],
                                                        },
                                                    ),
                                                ],
                                                recursive: false,
                                            },
                                        ],
                                    },
                                ],
                            },
                        ),
                        KeyValue(
                            AttributePath {
                                attributes: [
                                    Raw {
                                        content: "nativeBuildInputs",
                                        position: (25, 3),
                                    },
                                ],
                            },
                            List {
                                elements: [
                                    Variable {
                                        identifier: "autoreconfHook",
                                        position: (25, 25),
                                    },
                                    Variable {
                                        identifier: "pkg-config",
                                        position: (25, 40),
                                    },
                                ],
                            },
                        ),
                        KeyValue(
                            AttributePath {
                                attributes: [
                                    Raw {
                                        content: "meta",
                                        position: (27, 3),
                                    },
                                ],
                            },
                            Map {
                                bindings: [
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "description",
                                                    position: (28, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "A flexible scheduler for your i3bar blocks",
                                                    position: (28, 20),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "homepage",
                                                    position: (29, 5),
                                                },
                                            ],
                                        },
                                        String {
                                            parts: [
                                                Raw {
                                                    content: "https://github.com/vivien/i3blocks",
                                                    position: (29, 17),
                                                },
                                            ],
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "license",
                                                    position: (30, 5),
                                                },
                                            ],
                                        },
                                        PropertyAccess {
                                            expression: Variable {
                                                identifier: "licenses",
                                                position: (30, 15),
                                            },
                                            attribute_path: AttributePath {
                                                attributes: [
                                                    Raw {
                                                        content: "gpl3",
                                                        position: (30, 24),
                                                    },
                                                ],
                                            },
                                            default: None,
                                        },
                                    ),
                                    KeyValue(
                                        AttributePath {
                                            attributes: [
                                                Raw {
                                                    content: "platforms",
                                                    position: (31, 5),
                                                },
                                            ],
                                        },
                                        With {
                                            expression: Variable {
                                                identifier: "platforms",
                                                position: (31, 22),
                                            },
                                            target: BinaryOperation {
                                                operator: Concatenation,
                                                operands: [
                                                    Variable {
                                                        identifier: "freebsd",
                                                        position: (31, 33),
                                                    },
                                                    Variable {
                                                        identifier: "linux",
                                                        position: (31, 44),
                                                    },
                                                ],
                                            },
                                        },
                                    ),
                                ],
                                recursive: false,
                            },
                        ),
                    ],
                    recursive: false,
                },
            ],
        },
    },
}