(TranslationUnit
    (SymbolTable
        1
        {
            where_01:
                (Program
                    (SymbolTable
                        2
                        {
                            a:
                                (Variable
                                    2
                                    a
                                    []
                                    Local
                                    ()
                                    ()
                                    Default
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ()
                                    Source
                                    Public
                                    Required
                                    .false.
                                    .false.
                                    .false.
                                    ()
                                    .false.
                                    .false.
                                    NotMethod
                                    ()
                                ),
                            b:
                                (Variable
                                    2
                                    b
                                    []
                                    Local
                                    ()
                                    ()
                                    Default
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ()
                                    Source
                                    Public
                                    Required
                                    .false.
                                    .false.
                                    .false.
                                    ()
                                    .false.
                                    .false.
                                    NotMethod
                                    ()
                                ),
                            i:
                                (Variable
                                    2
                                    i
                                    []
                                    Local
                                    ()
                                    ()
                                    Default
                                    (Integer 4)
                                    ()
                                    Source
                                    Public
                                    Required
                                    .false.
                                    .false.
                                    .false.
                                    ()
                                    .false.
                                    .false.
                                    NotMethod
                                    ()
                                )
                        })
                    where_01
                    []
                    [(Assignment
                        (Var 2 a)
                        (ArrayBroadcast
                            (IntegerUnaryMinus
                                (IntegerConstant 2 (Integer 4) Decimal)
                                (Integer 4)
                                (IntegerConstant -2 (Integer 4) Decimal)
                            )
                            (ArrayConstant
                                4
                                [10]
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 1 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                ColMajor
                            )
                            (Array
                                (Integer 4)
                                [((IntegerConstant 1 (Integer 4) Decimal)
                                (IntegerConstant 10 (Integer 4) Decimal))]
                                FixedSizeArray
                            )
                            (ArrayConstant
                                40
                                [-2, -2, -2, ...., -2, -2, -2]
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                ColMajor
                            )
                        )
                        ()
                        .false.
                        .false.
                    )
                    (Assignment
                        (ArrayItem
                            (Var 2 a)
                            [(()
                            (IntegerConstant 1 (Integer 4) Decimal)
                            ())]
                            (Integer 4)
                            ColMajor
                            ()
                        )
                        (IntegerConstant 1 (Integer 4) Decimal)
                        ()
                        .false.
                        .false.
                    )
                    (Assignment
                        (ArrayItem
                            (Var 2 a)
                            [(()
                            (IntegerConstant 5 (Integer 4) Decimal)
                            ())]
                            (Integer 4)
                            ColMajor
                            ()
                        )
                        (IntegerConstant 8 (Integer 4) Decimal)
                        ()
                        .false.
                        .false.
                    )
                    (Assignment
                        (Var 2 b)
                        (ArrayBroadcast
                            (IntegerUnaryMinus
                                (IntegerConstant 3 (Integer 4) Decimal)
                                (Integer 4)
                                (IntegerConstant -3 (Integer 4) Decimal)
                            )
                            (ArrayConstant
                                4
                                [10]
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 1 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                ColMajor
                            )
                            (Array
                                (Integer 4)
                                [((IntegerConstant 1 (Integer 4) Decimal)
                                (IntegerConstant 10 (Integer 4) Decimal))]
                                FixedSizeArray
                            )
                            (ArrayConstant
                                40
                                [-3, -3, -3, ...., -3, -3, -3]
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                ColMajor
                            )
                        )
                        ()
                        .false.
                        .false.
                    )
                    (If
                        ()
                        (IntegerCompare
                            (Var 2 a)
                            GtE
                            (IntegerConstant 0 (Integer 4) Decimal)
                            (Array
                                (Logical 4)
                                [((IntegerConstant 1 (Integer 4) Decimal)
                                (IntegerConstant 10 (Integer 4) Decimal))]
                                FixedSizeArray
                            )
                            ()
                        )
                        [(Assignment
                            (Var 2 b)
                            (ArrayBroadcast
                                (IntegerConstant 1 (Integer 4) Decimal)
                                (ArrayConstant
                                    4
                                    [10]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 1 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                (ArrayConstant
                                    40
                                    [1, 1, 1, ...., 1, 1, 1]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                            )
                            ()
                            .false.
                            .false.
                        )]
                        [(Assignment
                            (Var 2 b)
                            (ArrayBroadcast
                                (IntegerConstant 0 (Integer 4) Decimal)
                                (ArrayConstant
                                    4
                                    [10]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 1 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                (ArrayConstant
                                    40
                                    [0, 0, 0, ...., 0, 0, 0]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                            )
                            ()
                            .false.
                            .false.
                        )]
                    )
                    (If
                        ()
                        (IntegerCompare
                            (Var 2 a)
                            GtE
                            (IntegerConstant 0 (Integer 4) Decimal)
                            (Array
                                (Logical 4)
                                [((IntegerConstant 1 (Integer 4) Decimal)
                                (IntegerConstant 10 (Integer 4) Decimal))]
                                FixedSizeArray
                            )
                            ()
                        )
                        [(Assignment
                            (Var 2 b)
                            (ArrayBroadcast
                                (IntegerConstant 1 (Integer 4) Decimal)
                                (ArrayConstant
                                    4
                                    [10]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 1 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                (ArrayConstant
                                    40
                                    [1, 1, 1, ...., 1, 1, 1]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                            )
                            ()
                            .false.
                            .false.
                        )]
                        [(Assignment
                            (Var 2 b)
                            (ArrayBroadcast
                                (IntegerConstant 0 (Integer 4) Decimal)
                                (ArrayConstant
                                    4
                                    [10]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 1 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                (ArrayConstant
                                    40
                                    [0, 0, 0, ...., 0, 0, 0]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                            )
                            ()
                            .false.
                            .false.
                        )]
                    )
                    (If
                        ()
                        (IntegerCompare
                            (Var 2 a)
                            GtE
                            (IntegerConstant 0 (Integer 4) Decimal)
                            (Array
                                (Logical 4)
                                [((IntegerConstant 1 (Integer 4) Decimal)
                                (IntegerConstant 10 (Integer 4) Decimal))]
                                FixedSizeArray
                            )
                            ()
                        )
                        [(Assignment
                            (Var 2 b)
                            (ArrayBroadcast
                                (IntegerConstant 1 (Integer 4) Decimal)
                                (ArrayConstant
                                    4
                                    [10]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 1 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                (ArrayConstant
                                    40
                                    [1, 1, 1, ...., 1, 1, 1]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                            )
                            ()
                            .false.
                            .false.
                        )]
                        [(Assignment
                            (Var 2 b)
                            (ArrayBroadcast
                                (IntegerConstant 0 (Integer 4) Decimal)
                                (ArrayConstant
                                    4
                                    [10]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 1 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                                (Array
                                    (Integer 4)
                                    [((IntegerConstant 1 (Integer 4) Decimal)
                                    (IntegerConstant 10 (Integer 4) Decimal))]
                                    FixedSizeArray
                                )
                                (ArrayConstant
                                    40
                                    [0, 0, 0, ...., 0, 0, 0]
                                    (Array
                                        (Integer 4)
                                        [((IntegerConstant 1 (Integer 4) Decimal)
                                        (IntegerConstant 10 (Integer 4) Decimal))]
                                        FixedSizeArray
                                    )
                                    ColMajor
                                )
                            )
                            ()
                            .false.
                            .false.
                        )]
                    )
                    (If
                        ()
                        (RealCompare
                            (Cast
                                (IntrinsicElementalFunction
                                    Abs
                                    [(IntegerBinOp
                                        (ArrayItem
                                            (Var 2 b)
                                            [(()
                                            (IntegerConstant 1 (Integer 4) Decimal)
                                            ())]
                                            (Integer 4)
                                            ColMajor
                                            ()
                                        )
                                        Sub
                                        (IntegerConstant 1 (Integer 4) Decimal)
                                        (Integer 4)
                                        ()
                                    )]
                                    0
                                    (Integer 4)
                                    ()
                                )
                                IntegerToReal
                                (Real 4)
                                ()
                                ()
                            )
                            Gt
                            (RealConstant
                                0.000001
                                (Real 4)
                            )
                            (Logical 4)
                            ()
                        )
                        [(ErrorStop
                            ()
                        )]
                        []
                    )
                    (If
                        ()
                        (RealCompare
                            (Cast
                                (IntrinsicElementalFunction
                                    Abs
                                    [(IntegerBinOp
                                        (ArrayItem
                                            (Var 2 b)
                                            [(()
                                            (IntegerConstant 5 (Integer 4) Decimal)
                                            ())]
                                            (Integer 4)
                                            ColMajor
                                            ()
                                        )
                                        Sub
                                        (IntegerConstant 1 (Integer 4) Decimal)
                                        (Integer 4)
                                        ()
                                    )]
                                    0
                                    (Integer 4)
                                    ()
                                )
                                IntegerToReal
                                (Real 4)
                                ()
                                ()
                            )
                            Gt
                            (RealConstant
                                0.000001
                                (Real 4)
                            )
                            (Logical 4)
                            ()
                        )
                        [(ErrorStop
                            ()
                        )]
                        []
                    )
                    (DoLoop
                        ()
                        ((Var 2 i)
                        (IntegerConstant 2 (Integer 4) Decimal)
                        (IntegerConstant 4 (Integer 4) Decimal)
                        ())
                        [(If
                            ()
                            (RealCompare
                                (Cast
                                    (IntrinsicElementalFunction
                                        Abs
                                        [(IntegerBinOp
                                            (ArrayItem
                                                (Var 2 b)
                                                [(()
                                                (Var 2 i)
                                                ())]
                                                (Integer 4)
                                                ColMajor
                                                ()
                                            )
                                            Sub
                                            (IntegerConstant 0 (Integer 4) Decimal)
                                            (Integer 4)
                                            ()
                                        )]
                                        0
                                        (Integer 4)
                                        ()
                                    )
                                    IntegerToReal
                                    (Real 4)
                                    ()
                                    ()
                                )
                                Gt
                                (RealConstant
                                    0.000001
                                    (Real 4)
                                )
                                (Logical 4)
                                ()
                            )
                            [(ErrorStop
                                ()
                            )]
                            []
                        )]
                        []
                    )
                    (DoLoop
                        ()
                        ((Var 2 i)
                        (IntegerConstant 6 (Integer 4) Decimal)
                        (IntegerConstant 10 (Integer 4) Decimal)
                        ())
                        [(If
                            ()
                            (RealCompare
                                (Cast
                                    (IntrinsicElementalFunction
                                        Abs
                                        [(IntegerBinOp
                                            (ArrayItem
                                                (Var 2 b)
                                                [(()
                                                (Var 2 i)
                                                ())]
                                                (Integer 4)
                                                ColMajor
                                                ()
                                            )
                                            Sub
                                            (IntegerConstant 0 (Integer 4) Decimal)
                                            (Integer 4)
                                            ()
                                        )]
                                        0
                                        (Integer 4)
                                        ()
                                    )
                                    IntegerToReal
                                    (Real 4)
                                    ()
                                    ()
                                )
                                Gt
                                (RealConstant
                                    0.000001
                                    (Real 4)
                                )
                                (Logical 4)
                                ()
                            )
                            [(ErrorStop
                                ()
                            )]
                            []
                        )]
                        []
                    )
                    (Print
                        (StringFormat
                            ()
                            [(Var 2 b)]
                            FormatFortran
                            (Allocatable
                                (String 1 () DeferredLength DescriptorString)
                            )
                            ()
                        )
                    )
                    (Print
                        (StringFormat
                            ()
                            [(Var 2 a)]
                            FormatFortran
                            (Allocatable
                                (String 1 () DeferredLength DescriptorString)
                            )
                            ()
                        )
                    )]
                )
        })
    []
)
