anchor.diff:      LOGICAL :: do00x00,do01x10,do10x00,do11x10, &
                  do00x01,do01x11,do10x01,do11x11
       ! Bounds
  +
       qC%Box(1,1)=qA%Box(2,1)
       qC%Box(1,2)=qA%Box(2,2)
  +
       qC%Box(2,1)=qB%Box(1,1)
       qC%Box(2,2)=qB%Box(1,2)
  +
  +!    if(qA%Box(1,1)==28.AND.QB%Box(2,2)==29)
  +
  +
       ! Blocks
       IF(qA%Siz==BLOCK_SIZE)THEN
          IF(.NOT.ALLOCATED(qC%Blok))THEN
  
positive.code:     qC%Lev=1
      SpAMM_multiplies=Zero
      qC%Box(:,1)=(/1,1/)
      qC%Box(:,2)=(/SpAMM_tiles,SpAMM_tiles/)
      !
      CALL SpAMM_Multiply(qC,qA,qB)
    END FUNCTION SpAMM
  
negative.code:   INTEGER, PARAMETER :: SINGLE=KIND(0.0)           !--Real*4
    INTEGER, PARAMETER :: DOUBLE=KIND(0.D0)          !--Real*8
    REAL(DOUBLE),PARAMETER :: Zero=0D0
    !
    !----------------------------------------------------------------
    REAL(DOUBLE)       :: SpAMM_tolerance,SpAMM_multiplies
    INTEGER            :: SpAMM_tiles,    SpAMM_levels,     SpAMM_quadcount
    INTEGER, PARAMETER :: BLOCK_SIZE=2
    !----------------------------------------------------------------
    TYPE QuTree
       INTEGER                      :: Siz
  