(TranslationUnit
    [(Program
        forallloop_01
        ()
        []
        [(ImplicitNone
            []
            ()
        )]
        [(Declaration
            (AttrType
                TypeReal
                []
                ()
                ()
                None
            )
            [(AttrDimension
                [(1
                10000
                DimensionExpr)]
            )]
            [(a
            []
            []
            ()
            ()
            None
            ())
            (b
            []
            []
            ()
            ()
            None
            ())
            (c
            []
            []
            ()
            ()
            None
            ())]
            ()
        )
        (Declaration
            (AttrType
                TypeReal
                []
                ()
                ()
                None
            )
            []
            [(scalar
            []
            []
            ()
            ()
            None
            ())]
            ()
        )
        (Declaration
            (AttrType
                TypeInteger
                []
                ()
                ()
                None
            )
            []
            [(i
            []
            []
            ()
            ()
            None
            ())
            (nsize
            []
            []
            ()
            ()
            None
            ())]
            ()
        )]
        [(Assignment
            0
            scalar
            10
            ()
        )
        (Assignment
            0
            nsize
            (FuncCallOrArray
                size
                []
                [(()
                a
                ()
                0)]
                []
                []
                []
            )
            ()
        )
        (ForAll
            0
            ()
            [(ConcurrentControl
                ()
                i
                1
                nsize
                ()
            )]
            ()
            []
            [(Assignment
                0
                (FuncCallOrArray
                    a
                    []
                    [(()
                    i
                    ()
                    0)]
                    []
                    []
                    []
                )
                5
                ()
            )
            (Assignment
                0
                (FuncCallOrArray
                    b
                    []
                    [(()
                    i
                    ()
                    0)]
                    []
                    []
                    []
                )
                5
                ()
            )]
            ()
            ()
        )
        (SubroutineCall
            0
            triad
            []
            [(()
            a
            ()
            0)
            (()
            b
            ()
            0)
            (()
            scalar
            ()
            0)
            (()
            c
            ()
            0)]
            []
            []
            ()
        )
        (Print
            0
            ()
            [(String "End Stream Triad" ())]
            (TriviaNode
                []
                [(EndOfLine)
                (EndOfLine)]
            )
        )]
        [(Subroutine
            triad
            [(a)
            (b)
            (scalar)
            (c)]
            []
            ()
            (TriviaNode
                []
                [(EndOfLine)
                (EndOfLine)]
            )
            []
            []
            []
            [(Declaration
                (AttrType
                    TypeReal
                    []
                    ()
                    ()
                    None
                )
                [(AttrIntent
                    In
                )]
                [(a
                [(()
                ()
                DimensionExpr)]
                []
                ()
                ()
                None
                ())
                (b
                [(()
                ()
                DimensionExpr)]
                []
                ()
                ()
                None
                ())
                (scalar
                []
                []
                ()
                ()
                None
                ())]
                ()
            )
            (Declaration
                (AttrType
                    TypeReal
                    []
                    ()
                    ()
                    None
                )
                [(AttrIntent
                    Out
                )]
                [(c
                [(()
                ()
                DimensionExpr)]
                []
                ()
                ()
                None
                ())]
                ()
            )
            (Declaration
                (AttrType
                    TypeInteger
                    []
                    ()
                    ()
                    None
                )
                []
                [(N
                []
                []
                ()
                ()
                None
                ())
                (i
                []
                []
                ()
                ()
                None
                ())]
                ()
            )]
            [(Assignment
                0
                N
                (FuncCallOrArray
                    size
                    []
                    [(()
                    a
                    ()
                    0)]
                    []
                    []
                    []
                )
                ()
            )
            (ForAllSingle
                0
                ()
                [(ConcurrentControl
                    ()
                    i
                    1
                    N
                    ()
                )]
                ()
                (Assignment
                    0
                    (FuncCallOrArray
                        c
                        []
                        [(()
                        i
                        ()
                        0)]
                        []
                        []
                        []
                    )
                    (+ (FuncCallOrArray
                        a
                        []
                        [(()
                        i
                        ()
                        0)]
                        []
                        []
                        []
                    ) (* scalar (FuncCallOrArray
                        b
                        []
                        [(()
                        i
                        ()
                        0)]
                        []
                        []
                        []
                    )))
                    ()
                )
                ()
            )]
            []
            []
        )]
    )]
)
