[
    FullOpeningTag(
        FullOpeningTagStatement {
            span: Span {
                line: 1,
                column: 1,
                position: 0,
            },
        },
    ),
    Class(
        ClassStatement {
            attributes: [],
            modifiers: ClassModifierGroup {
                modifiers: [],
            },
            class: Span {
                line: 3,
                column: 1,
                position: 7,
            },
            name: SimpleIdentifier {
                span: Span {
                    line: 3,
                    column: 7,
                    position: 13,
                },
                value: "Foo2",
            },
            extends: None,
            implements: None,
            body: ClassBody {
                left_brace: Span {
                    line: 3,
                    column: 12,
                    position: 18,
                },
                members: [
                    TraitUsage(
                        TraitUsage {
                            use: Span {
                                line: 4,
                                column: 5,
                                position: 24,
                            },
                            traits: [
                                SimpleIdentifier {
                                    span: Span {
                                        line: 4,
                                        column: 9,
                                        position: 28,
                                    },
                                    value: "B",
                                },
                            ],
                            adaptations: [
                                Alias {
                                    trait: None,
                                    method: SimpleIdentifier {
                                        span: Span {
                                            line: 5,
                                            column: 9,
                                            position: 40,
                                        },
                                        value: "foo",
                                    },
                                    alias: SimpleIdentifier {
                                        span: Span {
                                            line: 5,
                                            column: 26,
                                            position: 57,
                                        },
                                        value: "bar",
                                    },
                                    visibility: Some(
                                        Protected(
                                            Span {
                                                line: 5,
                                                column: 16,
                                                position: 47,
                                            },
                                        ),
                                    ),
                                },
                            ],
                        },
                    ),
                ],
                right_brace: Span {
                    line: 7,
                    column: 1,
                    position: 68,
                },
            },
        },
    ),
    Class(
        ClassStatement {
            attributes: [],
            modifiers: ClassModifierGroup {
                modifiers: [],
            },
            class: Span {
                line: 9,
                column: 1,
                position: 71,
            },
            name: SimpleIdentifier {
                span: Span {
                    line: 9,
                    column: 7,
                    position: 77,
                },
                value: "Bar2",
            },
            extends: None,
            implements: None,
            body: ClassBody {
                left_brace: Span {
                    line: 9,
                    column: 12,
                    position: 82,
                },
                members: [
                    TraitUsage(
                        TraitUsage {
                            use: Span {
                                line: 10,
                                column: 5,
                                position: 89,
                            },
                            traits: [
                                SimpleIdentifier {
                                    span: Span {
                                        line: 10,
                                        column: 9,
                                        position: 93,
                                    },
                                    value: "B",
                                },
                                SimpleIdentifier {
                                    span: Span {
                                        line: 11,
                                        column: 9,
                                        position: 104,
                                    },
                                    value: "C",
                                },
                            ],
                            adaptations: [
                                Precedence {
                                    trait: Some(
                                        SimpleIdentifier {
                                            span: Span {
                                                line: 12,
                                                column: 13,
                                                position: 121,
                                            },
                                            value: "B",
                                        },
                                    ),
                                    method: SimpleIdentifier {
                                        span: Span {
                                            line: 12,
                                            column: 16,
                                            position: 124,
                                        },
                                        value: "foo",
                                    },
                                    insteadof: [
                                        SimpleIdentifier {
                                            span: Span {
                                                line: 12,
                                                column: 30,
                                                position: 138,
                                            },
                                            value: "C",
                                        },
                                    ],
                                },
                            ],
                        },
                    ),
                ],
                right_brace: Span {
                    line: 14,
                    column: 1,
                    position: 151,
                },
            },
        },
    ),
    Class(
        ClassStatement {
            attributes: [],
            modifiers: ClassModifierGroup {
                modifiers: [],
            },
            class: Span {
                line: 16,
                column: 1,
                position: 154,
            },
            name: SimpleIdentifier {
                span: Span {
                    line: 16,
                    column: 7,
                    position: 160,
                },
                value: "Bar3",
            },
            extends: None,
            implements: None,
            body: ClassBody {
                left_brace: Span {
                    line: 16,
                    column: 12,
                    position: 165,
                },
                members: [
                    TraitUsage(
                        TraitUsage {
                            use: Span {
                                line: 17,
                                column: 5,
                                position: 171,
                            },
                            traits: [
                                SimpleIdentifier {
                                    span: Span {
                                        line: 17,
                                        column: 9,
                                        position: 175,
                                    },
                                    value: "B",
                                },
                            ],
                            adaptations: [
                                Alias {
                                    trait: Some(
                                        SimpleIdentifier {
                                            span: Span {
                                                line: 17,
                                                column: 13,
                                                position: 179,
                                            },
                                            value: "B",
                                        },
                                    ),
                                    method: SimpleIdentifier {
                                        span: Span {
                                            line: 17,
                                            column: 16,
                                            position: 182,
                                        },
                                        value: "foo",
                                    },
                                    alias: SimpleIdentifier {
                                        span: Span {
                                            line: 17,
                                            column: 23,
                                            position: 189,
                                        },
                                        value: "bar",
                                    },
                                    visibility: None,
                                },
                            ],
                        },
                    ),
                ],
                right_brace: Span {
                    line: 18,
                    column: 1,
                    position: 196,
                },
            },
        },
    ),
    Class(
        ClassStatement {
            attributes: [],
            modifiers: ClassModifierGroup {
                modifiers: [],
            },
            class: Span {
                line: 20,
                column: 1,
                position: 199,
            },
            name: SimpleIdentifier {
                span: Span {
                    line: 20,
                    column: 7,
                    position: 205,
                },
                value: "Bar4",
            },
            extends: None,
            implements: None,
            body: ClassBody {
                left_brace: Span {
                    line: 20,
                    column: 12,
                    position: 210,
                },
                members: [
                    TraitUsage(
                        TraitUsage {
                            use: Span {
                                line: 21,
                                column: 5,
                                position: 216,
                            },
                            traits: [
                                SimpleIdentifier {
                                    span: Span {
                                        line: 21,
                                        column: 9,
                                        position: 220,
                                    },
                                    value: "B",
                                },
                            ],
                            adaptations: [
                                Alias {
                                    trait: None,
                                    method: SimpleIdentifier {
                                        span: Span {
                                            line: 21,
                                            column: 13,
                                            position: 224,
                                        },
                                        value: "foo",
                                    },
                                    alias: SimpleIdentifier {
                                        span: Span {
                                            line: 21,
                                            column: 20,
                                            position: 231,
                                        },
                                        value: "bar",
                                    },
                                    visibility: None,
                                },
                            ],
                        },
                    ),
                ],
                right_brace: Span {
                    line: 22,
                    column: 1,
                    position: 238,
                },
            },
        },
    ),
]
