[
    Function(
        Function {
            start: (
                3,
                1,
            ),
            end: (
                9,
                1,
            ),
            name: SimpleIdentifier {
                span: (
                    3,
                    10,
                ),
                value: "fib",
            },
            attributes: [],
            parameters: FunctionParameterList {
                start: (
                    3,
                    13,
                ),
                end: (
                    3,
                    18,
                ),
                members: [
                    FunctionParameter {
                        start: (
                            3,
                            14,
                        ),
                        end: (
                            3,
                            16,
                        ),
                        name: SimpleVariable {
                            span: (
                                3,
                                14,
                            ),
                            name: "n",
                        },
                        attributes: [],
                        type: None,
                        variadic: false,
                        default: None,
                        by_ref: false,
                    },
                ],
            },
            return_type: None,
            by_ref: false,
            body: [
                If {
                    condition: ComparisonOperation(
                        LessThan {
                            left: Variable(
                                SimpleVariable(
                                    SimpleVariable {
                                        span: (
                                            4,
                                            9,
                                        ),
                                        name: "n",
                                    },
                                ),
                            ),
                            span: (
                                4,
                                12,
                            ),
                            right: LiteralInteger {
                                span: (
                                    4,
                                    14,
                                ),
                                value: "2",
                            },
                        },
                    ),
                    then: [
                        Return {
                            value: Some(
                                Variable(
                                    SimpleVariable(
                                        SimpleVariable {
                                            span: (
                                                5,
                                                16,
                                            ),
                                            name: "n",
                                        },
                                    ),
                                ),
                            ),
                        },
                    ],
                    else_ifs: [],
                    else: None,
                },
                Return {
                    value: Some(
                        ArithmeticOperation(
                            Addition {
                                left: FunctionCall {
                                    target: Identifier(
                                        SimpleIdentifier(
                                            SimpleIdentifier {
                                                span: (
                                                    8,
                                                    12,
                                                ),
                                                value: "fib",
                                            },
                                        ),
                                    ),
                                    arguments: ArgumentList {
                                        start: (
                                            8,
                                            15,
                                        ),
                                        arguments: [
                                            Positional {
                                                ellipsis: None,
                                                value: ArithmeticOperation(
                                                    Subtraction {
                                                        left: Variable(
                                                            SimpleVariable(
                                                                SimpleVariable {
                                                                    span: (
                                                                        8,
                                                                        16,
                                                                    ),
                                                                    name: "n",
                                                                },
                                                            ),
                                                        ),
                                                        span: (
                                                            8,
                                                            19,
                                                        ),
                                                        right: LiteralInteger {
                                                            span: (
                                                                8,
                                                                21,
                                                            ),
                                                            value: "1",
                                                        },
                                                    },
                                                ),
                                            },
                                        ],
                                        end: (
                                            8,
                                            22,
                                        ),
                                    },
                                },
                                span: (
                                    8,
                                    24,
                                ),
                                right: FunctionCall {
                                    target: Identifier(
                                        SimpleIdentifier(
                                            SimpleIdentifier {
                                                span: (
                                                    8,
                                                    26,
                                                ),
                                                value: "fib",
                                            },
                                        ),
                                    ),
                                    arguments: ArgumentList {
                                        start: (
                                            8,
                                            29,
                                        ),
                                        arguments: [
                                            Positional {
                                                ellipsis: None,
                                                value: ArithmeticOperation(
                                                    Subtraction {
                                                        left: Variable(
                                                            SimpleVariable(
                                                                SimpleVariable {
                                                                    span: (
                                                                        8,
                                                                        30,
                                                                    ),
                                                                    name: "n",
                                                                },
                                                            ),
                                                        ),
                                                        span: (
                                                            8,
                                                            33,
                                                        ),
                                                        right: LiteralInteger {
                                                            span: (
                                                                8,
                                                                35,
                                                            ),
                                                            value: "2",
                                                        },
                                                    },
                                                ),
                                            },
                                        ],
                                        end: (
                                            8,
                                            36,
                                        ),
                                    },
                                },
                            },
                        ),
                    ),
                },
            ],
        },
    ),
]
