code 34358;
    procedure ROTCOMROW(L, U, I, J, AR, AI, CR, CI, S);
    value L, U, I, J, CR, CI, S; integer L, U, I, J;
    real CR, CI, S; array AR, AI;
    begin real ARIL, AIIL, ARJL, AIJL;
        for L:= L step 1 until U do 
        begin ARIL:= AR[I,L]; AIIL:= AI[I,L]; ARJL:= AR[J,L];
            AIJL:= AI[J,L];
            AR[I,L]:= CR * ARIL + CI * AIIL + S * ARJL;
            AI[I,L]:= CR * AIIL - CI * ARIL + S * AIJL;
            AR[J,L]:= CR * ARJL - CI * AIJL - S * ARIL;
            AI[J,L]:= CR * AIJL + CI * ARJL - S * AIIL;
        end 
    end ROTCOMROW;
        eop