anchor.diff:                DO 40 I = 1,M
                   C(1,I,J) = ZERO
                   C(2,I,J) = ZERO
  -                C(3,I,J) = ZERO
  -                C(4,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) 
  -                C(3,I,J) = BETA * C(3,I,J) 
  -                C(4,I,J) = BETA * C(4,I,J) 
     50          CONTINUE
               ENDIF
   C
               DO 60 L = 1,K
                 HTMPS = ALPHA * B(1,L,J)
  -              HTMPI = ALPHA * B(2,L,J)
  -              HTMPJ = ALPHA * B(3,L,J)
  -              HTMPK = ALPHA * B(4,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)*HTMPI - 
  -     $            A(3,I,L)*HTMPJ - A(4,I,L)*HTMPK
  -
  +     $            A(1,I,L)*HTMPS - A(2,I,L)*CONJG(HTMPJ)
                   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
  +     $            A(1,I,L)*HTMPJ + A(2,I,L)*CONJG(HTMPS)
     70          CONTINUE
     60        CONTINUE
     30      CONTINUE
  
positive.code:           DO 10 I = 1,M
              C(1,I,J) = ZERO
              C(2,I,J) = ZERO
              C(3,I,J) = ZERO
              C(4,I,J) = ZERO
    10      CONTINUE
          ELSE
            DO 20 J = 1,N
            DO 20 I = 1,M
              C(1,I,J) = BETA * C(1,I,J) 
              C(2,I,J) = BETA * C(2,I,J) 
              C(3,I,J) = BETA * C(3,I,J) 
              C(4,I,J) = BETA * C(4,I,J) 
    20      CONTINUE
          ENDIF
          RETURN ! Nothing more to do
  
negative.code:           DO 240 J = 1,N
            DO 240 I = 1,M
              HTMPS = ZERO 
              HTMPJ = ZERO 
              DO 250 L = 1,K
  C             Hamilton Product (IMPLIED CONJ(A))
                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))
    250       CONTINUE
  C
              IF( BZERO ) THEN
                C(1,I,J) = ALPHA * HTMPS
                C(2,I,J) = ALPHA * HTMPJ
              ELSE
                C(1,I,J) = ALPHA * HTMPS + BETA * C(1,I,J)
                C(2,I,J) = ALPHA * HTMPJ + BETA * C(2,I,J)
              ENDIF
    240     CONTINUE
          ENDIF
  