[
    FullOpeningTag(
        Span(
            1,
            1,
        ),
    ),
    Class(
        Class {
            attributes: [],
            modifiers: ClassModifierGroup {
                modifiers: [],
            },
            class: Span(
                3,
                1,
            ),
            name: SimpleIdentifier {
                span: Span(
                    3,
                    7,
                ),
                value: "foo",
            },
            extends: None,
            implements: None,
            body: ClassBody {
                left_brace: Span(
                    3,
                    11,
                ),
                members: [
                    ConcreteConstructor(
                        ConcreteConstructor {
                            comments: CommentGroup {
                                comments: [],
                            },
                            attributes: [],
                            modifiers: MethodModifierGroup {
                                modifiers: [
                                    Public(
                                        Span(
                                            4,
                                            5,
                                        ),
                                    ),
                                ],
                            },
                            function: Span(
                                4,
                                12,
                            ),
                            ampersand: None,
                            name: SimpleIdentifier {
                                span: Span(
                                    4,
                                    21,
                                ),
                                value: "__construct",
                            },
                            parameters: ConstructorParameterList {
                                comments: CommentGroup {
                                    comments: [],
                                },
                                left_parenthesis: Span(
                                    4,
                                    32,
                                ),
                                parameters: CommaSeparated {
                                    inner: [
                                        ConstructorParameter {
                                            attributes: [],
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            ampersand: None,
                                            name: SimpleVariable {
                                                span: Span(
                                                    5,
                                                    23,
                                                ),
                                                name: "a",
                                            },
                                            data_type: Some(
                                                String(
                                                    Span(
                                                        5,
                                                        16,
                                                    ),
                                                ),
                                            ),
                                            ellipsis: None,
                                            default: None,
                                            modifiers: PromotedPropertyModifierGroup {
                                                modifiers: [
                                                    Public(
                                                        Span(
                                                            5,
                                                            9,
                                                        ),
                                                    ),
                                                ],
                                            },
                                        },
                                        ConstructorParameter {
                                            attributes: [],
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            ampersand: None,
                                            name: SimpleVariable {
                                                span: Span(
                                                    6,
                                                    29,
                                                ),
                                                name: "b",
                                            },
                                            data_type: Some(
                                                Integer(
                                                    Span(
                                                        6,
                                                        25,
                                                    ),
                                                ),
                                            ),
                                            ellipsis: None,
                                            default: None,
                                            modifiers: PromotedPropertyModifierGroup {
                                                modifiers: [
                                                    Public(
                                                        Span(
                                                            6,
                                                            9,
                                                        ),
                                                    ),
                                                    Readonly(
                                                        Span(
                                                            6,
                                                            16,
                                                        ),
                                                    ),
                                                ],
                                            },
                                        },
                                        ConstructorParameter {
                                            attributes: [],
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            ampersand: Some(
                                                Span(
                                                    7,
                                                    32,
                                                ),
                                            ),
                                            name: SimpleVariable {
                                                span: Span(
                                                    7,
                                                    32,
                                                ),
                                                name: "c",
                                            },
                                            data_type: Some(
                                                Float(
                                                    Span(
                                                        7,
                                                        25,
                                                    ),
                                                ),
                                            ),
                                            ellipsis: None,
                                            default: None,
                                            modifiers: PromotedPropertyModifierGroup {
                                                modifiers: [
                                                    Public(
                                                        Span(
                                                            7,
                                                            9,
                                                        ),
                                                    ),
                                                    Readonly(
                                                        Span(
                                                            7,
                                                            16,
                                                        ),
                                                    ),
                                                ],
                                            },
                                        },
                                        ConstructorParameter {
                                            attributes: [],
                                            comments: CommentGroup {
                                                comments: [],
                                            },
                                            ampersand: Some(
                                                Span(
                                                    8,
                                                    10,
                                                ),
                                            ),
                                            name: SimpleVariable {
                                                span: Span(
                                                    8,
                                                    13,
                                                ),
                                                name: "e",
                                            },
                                            data_type: None,
                                            ellipsis: Some(
                                                Span(
                                                    8,
                                                    10,
                                                ),
                                            ),
                                            default: None,
                                            modifiers: PromotedPropertyModifierGroup {
                                                modifiers: [],
                                            },
                                        },
                                    ],
                                    commas: [
                                        Span(
                                            5,
                                            25,
                                        ),
                                        Span(
                                            6,
                                            31,
                                        ),
                                        Span(
                                            7,
                                            34,
                                        ),
                                        Span(
                                            8,
                                            15,
                                        ),
                                    ],
                                },
                                right_parenthesis: Span(
                                    9,
                                    5,
                                ),
                            },
                            body: MethodBody {
                                comments: CommentGroup {
                                    comments: [],
                                },
                                left_brace: Span(
                                    9,
                                    7,
                                ),
                                statements: [],
                                right_brace: Span(
                                    9,
                                    8,
                                ),
                            },
                        },
                    ),
                ],
                right_brace: Span(
                    10,
                    1,
                ),
            },
        },
    ),
]
