(TranslationUnit
    (SymbolTable
        1
        {
            string_11:
                (Program
                    (SymbolTable
                        2
                        {
                            mystring:
                                (Variable
                                    2
                                    mystring
                                    []
                                    Local
                                    ()
                                    ()
                                    Default
                                    (String 1 30 () PointerString)
                                    ()
                                    Source
                                    Public
                                    Required
                                    .false.
                                    .false.
                                ),
                            teststring:
                                (Variable
                                    2
                                    teststring
                                    []
                                    Local
                                    ()
                                    ()
                                    Default
                                    (String 1 10 () PointerString)
                                    ()
                                    Source
                                    Public
                                    Required
                                    .false.
                                    .false.
                                )
                        })
                    string_11
                    []
                    [(Assignment
                        (Var 2 mystring)
                        (StringConstant
                            "This is a test"
                            (String 1 14 () PointerString)
                        )
                        ()
                    )
                    (Assignment
                        (Var 2 teststring)
                        (StringConstant
                            "test"
                            (String 1 4 () PointerString)
                        )
                        ()
                    )
                    (If
                        (IntegerCompare
                            (IntrinsicElementalFunction
                                SubstrIndex
                                [(Var 2 mystring)
                                (Var 2 teststring)
                                (LogicalConstant
                                    .false.
                                    (Logical 4)
                                )
                                (IntegerConstant 4 (Integer 4) Decimal)]
                                0
                                (Integer 4)
                                ()
                            )
                            Eq
                            (IntegerConstant 0 (Integer 4) Decimal)
                            (Logical 4)
                            ()
                        )
                        [(Print
                            (StringConstant
                                "test is not found"
                                (String 1 17 () PointerString)
                            )
                        )]
                        [(Print
                            (StringFormat
                                ()
                                [(StringConstant
                                    "test is found at index: "
                                    (String 1 24 () PointerString)
                                )
                                (IntrinsicElementalFunction
                                    SubstrIndex
                                    [(Var 2 mystring)
                                    (Var 2 teststring)
                                    (LogicalConstant
                                        .false.
                                        (Logical 4)
                                    )
                                    (IntegerConstant 4 (Integer 4) Decimal)]
                                    0
                                    (Integer 4)
                                    ()
                                )]
                                FormatFortran
                                (String -1 0 () PointerString)
                                ()
                            )
                        )]
                    )]
                )
        })
    []
)
