anchor.diff:    subroutine hecmw_precond_clear(hecMAT)
       implicit none
       type (hecmwST_matrix), intent(inout) :: hecMAT
  -    integer(kind=kint ) :: PRECOND, iterPREmax
   
  -    iterPREmax = hecmw_mat_get_iterpremax( hecMAT )
  -    if (iterPREmax.le.0) return
  +    if (hecmw_mat_get_iterpremax( hecMAT ).le.0) return
       
       SELECT CASE(hecMAT%NDOF)
         CASE(3)
  
positive.code:   use hecmw_precond_66
    use hecmw_precond_nn
    use hecmw_matrix_misc
  
    implicit none
  
    private
  
    public :: hecmw_precond_setup
    public :: hecmw_precond_clear
    public :: hecmw_precond_apply
  
negative.code:     real(kind=kreal), intent(inout) :: Z(:), ZP(:)
      real(kind=kreal), intent(inout) :: COMMtime
      integer(kind=kint ) :: N, NP, NNDOF, NPNDOF
      integer(kind=kint ) :: i, iterPRE
      real(kind=kreal) :: START_TIME, END_TIME
      N = hecMAT%N
      NP = hecMAT%NP
      NNDOF = N * hecMAT%NDOF
      NPNDOF = NP * hecMAT%NDOF
      
      if (hecmw_mat_get_iterpremax( hecMAT ).le.0) then
        do i= 1, NNDOF
          Z(i)= R(i)
        enddo
  