with Instrument;
use Instrument;
procedure Nl65a2 is

    X : Integer := 1;

    Count : Integer := 0;

    Descending : Boolean := Ident_Bool (True);

    package Pr is new Procs (Integer);
    use Pr;

begin
    Start ("NL65A2", "Overhead for 65 Nested Loops (test)");

    for I in 1 .. 10000 loop

        Let (Global, Ident (Init));

        for I in X .. Ident_Int (1) loop
            while Descending loop
                loop
                    exit when not Descending;

                    for I in X .. Ident_Int (1) loop
                        while Descending loop
                            loop
                                exit when not Descending;

                                for I in X .. Ident_Int (1) loop
                                    while Descending loop
                                        loop
                                            exit when not Descending;

                                            for I in X .. Ident_Int (1) loop
                while Descending loop
                    loop
                        exit when not Descending;

                        for I in X .. Ident_Int (1) loop
                            while Descending loop
                                loop
                                    exit when not Descending;

                                    for I in X .. Ident_Int (1) loop
                                        while Descending loop
                                            loop
                exit when not Descending;

                for I in X .. Ident_Int (1) loop
                    while Descending loop
                        loop
                            exit when not Descending;

                            for I in X .. Ident_Int (1) loop
                                while Descending loop
                                    loop
                                        exit when not Descending;

                                        for I in X .. Ident_Int (1) loop
                                            while Descending loop
                loop
                    exit when not Descending;

                    for I in X .. Ident_Int (1) loop
                        while Descending loop
                            loop
                                exit when not Descending;

                                for I in X .. Ident_Int (1) loop
                                    while Descending loop
                                        loop
                                            exit when not Descending;

                                            for I in X .. Ident_Int (1) loop
                while Descending loop
                    loop
                        exit when not Descending;

                        for I in X .. Ident_Int (1) loop
                            while Descending loop
                                loop
                                    exit when not Descending;

                                    for I in X .. Ident_Int (1) loop
                                        while Descending loop
                                            loop
                exit when not Descending;

                for I in X .. Ident_Int (1) loop
                    while Descending loop
                        loop

                            exit when not Descending;

                            for I in X .. Ident_Int (1) loop
                                while Descending loop
                                    loop
                                        exit when not Descending;

                                        for I in X .. Ident_Int (1) loop
                                            while Descending loop
                loop
                    exit when not Descending;

                    for I in X .. Ident_Int (1) loop
                        while Descending loop
                            loop
                                exit when not Descending;

                                for I in X .. Ident_Int (1) loop
                                    while Descending loop
                                        loop
                                            exit when not Descending;

                                            for I in X .. Ident_Int (1) loop
                while Descending loop
                    loop

                        exit when not Descending;

                        for I in X .. Ident_Int (1) loop
                            while Descending loop
                                loop
                                    exit when not Descending;

                                    for I in X .. Ident_Int (1) loop
                                        while Descending loop
                                            [statement]
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;

                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;
                    end loop;
                end loop;
                                            end loop;
                                        end loop;
                                    end loop;
                                end loop;
                            end loop;
                        end loop;

                    end loop;
                end loop;
            end loop;
        end loop;

    end loop;
    Stop;

end Nl65a2;
