anchor.diff:                DO 130 I = 1,M
                   C(1,I,J) = ZERO
                   C(2,I,J) = ZERO
  +#ifndef HBLAS_USE_COMPLEX
  +                C(3,I,J) = ZERO
  +                C(4,I,J) = ZERO
  +#endif
     130         CONTINUE
               ELSEIF ( .NOT. BONE ) THEN
                 DO 140 I = 1,M
                   C(1,I,J) = BETA * C(1,I,J) 
                   C(2,I,J) = BETA * C(2,I,J) 
  +#ifndef HBLAS_USE_COMPLEX
  +                C(3,I,J) = BETA * C(3,I,J) 
  +                C(4,I,J) = BETA * C(4,I,J) 
  +#endif
     140         CONTINUE
               ENDIF
   C
               DO 150 L = 1,K
  +#ifndef HBLAS_USE_COMPLEX
  +              HTMPS =  ALPHA * B(1,J,L)
  +              HTMPI = -ALPHA * B(2,J,L)
  +              HTMPJ = -ALPHA * B(3,J,L)
  +              HTMPK = -ALPHA * B(4,J,L)
  +#else
                 HTMPS =  ALPHA * CONJG(B(1,J,L))
                 HTMPJ = -ALPHA * B(2,J,L)
  +#endif
                 DO 160 I = 1,M
   C               Hamilton Product
  +#ifndef HBLAS_USE_COMPLEX
  +                C(1,I,J) = C(1,I,J) + 
  +     $            A(1,I,L)*HTMPS - A(2,I,L)*HTMPI -
  +     $            A(3,I,L)*HTMPJ - A(4,I,L)*HTMPK
  +
  +                C(2,I,J) = C(2,I,J) + 
  +     $            A(1,I,L)*HTMPI + A(2,I,L)*HTMPS +
  +     $            A(3,I,L)*HTMPK - A(4,I,L)*HTMPJ
  +
  +                C(3,I,J) = C(3,I,J) + 
  +     $            A(1,I,L)*HTMPJ - A(2,I,L)*HTMPK +
  +     $            A(3,I,L)*HTMPS + A(4,I,L)*HTMPI
  +
  +                C(4,I,J) = C(4,I,J) + 
  +     $            A(1,I,L)*HTMPK + A(2,I,L)*HTMPJ -
  +     $            A(3,I,L)*HTMPI + A(4,I,L)*HTMPS
  +#else
                   C(1,I,J) = C(1,I,J) + 
        $            A(1,I,L)*HTMPS - A(2,I,L)*CONJG(HTMPJ)
                   C(2,I,J) = C(2,I,J) + 
        $            A(1,I,L)*HTMPJ + A(2,I,L)*CONJG(HTMPS)
  +#endif
     160         CONTINUE
     150       CONTINUE
     120     CONTINUE
  
positive.code:               DO 40 I = 1,M
                  C(1,I,J) = ZERO
                  C(2,I,J) = ZERO
    40          CONTINUE
              ELSEIF ( .NOT. BONE ) THEN
                DO 50 I = 1,M
                  C(1,I,J) = BETA * C(1,I,J) 
                  C(2,I,J) = BETA * C(2,I,J) 
    50          CONTINUE
              ENDIF
  C
              DO 60 L = 1,K
                HTMPS = ALPHA * B(1,L,J)
                HTMPJ = ALPHA * B(2,L,J)
                DO 70 I = 1,M
  C               Hamilton Product
                  C(1,I,J) = C(1,I,J) + 
       $            A(1,I,L)*HTMPS - A(2,I,L)*CONJG(HTMPJ)
                  C(2,I,J) = C(2,I,J) + 
       $            A(1,I,L)*HTMPJ + A(2,I,L)*CONJG(HTMPS)
    70          CONTINUE
    60        CONTINUE
    30      CONTINUE
  
negative.code:           DO 240 I = 1,M
              HTMPS = ZERO 
              HTMPJ = ZERO 
  #ifndef HBLAS_USE_COMPLEX
              HTMPI = ZERO 
              HTMPK = ZERO 
  #endif
              DO 250 L = 1,K
  C             Hamilton Product (IMPLIED CONJ(A))
  #ifndef HBLAS_USE_COMPLEX
                HTMPS = HTMPS + A(1,L,I)*B(1,J,L) + A(2,L,I)*B(2,J,L) +
       $                        A(3,L,I)*B(3,J,L) + A(4,L,I)*B(4,J,L)
                                                 
                HTMPI = HTMPI + A(1,L,I)*B(2,J,L) - A(2,L,I)*B(1,J,L) -
       $                        A(3,L,I)*B(4,J,L) + A(4,L,I)*B(3,J,L)
                                                 
                HTMPJ = HTMPJ + A(1,L,I)*B(3,J,L) + A(2,L,I)*B(4,J,L) -
       $                        A(3,L,I)*B(1,J,L) - A(4,L,I)*B(2,J,L)
                                                 
                HTMPK = HTMPK + A(1,L,I)*B(4,J,L) - A(2,L,I)*B(3,J,L) +
       $                        A(3,L,I)*B(2,J,L) - A(4,L,I)*B(1,J,L)
  #else
                HTMPS = HTMPS + 
       $          CONJG(A(1,L,I))*B(1,J,L) + A(2,L,I)*CONJG(B(2,J,L))
                HTMPJ = HTMPJ + 
       $          CONJG(A(1,L,I))*B(2,J,L) - A(2,L,I)*CONJG(B(1,J,L))
  #endif
    250       CONTINUE
  C
              IF( BZERO ) THEN
                C(1,I,J) = ALPHA * HTMPS
  #ifndef HBLAS_USE_COMPLEX
                C(2,I,J) = ALPHA * HTMPI
                C(3,I,J) = ALPHA * HTMPJ
                C(4,I,J) = ALPHA * HTMPK
  #else
                C(2,I,J) = ALPHA * HTMPJ
  #endif
              ELSE
                C(1,I,J) = ALPHA * HTMPS + BETA * C(1,I,J)
  #ifndef HBLAS_USE_COMPLEX
                C(2,I,J) = ALPHA * HTMPI + BETA * C(2,I,J)
                C(3,I,J) = ALPHA * HTMPJ + BETA * C(3,I,J)
                C(4,I,J) = ALPHA * HTMPK + BETA * C(4,I,J)
  #else
                C(2,I,J) = ALPHA * HTMPJ + BETA * C(2,I,J)
  #endif
              ENDIF
    240     CONTINUE
          ENDIF
  