anchor.diff:            call e3if_dc_res(ri1, var1, A0_1, ch1,pt_g_p1)
   c... calculate the local stiffness matrix
             if (lhs_dg .eq. 1) then
  -            call e3if_dc_egmass(egmass00, nshl0, shg0,A0_0, ch0, pt_g_p0)
  -            call e3if_dc_egmass(egmass11, nshl1, shg1,A0_1, ch1, pt_g_p1)       
  +            call e3if_dc_egmass(egmass00, nshl0, shg0,A0_0, ch0, pt_g_p0,
  +     &                          WdetJif0)
  +            call e3if_dc_egmass(egmass11, nshl1, shg1,A0_1, ch1, pt_g_p1,
  +     &                          WdetJif1)       
             endif          
   c                                                
             
  
positive.code: c
                  egmass(iel, a_row+1:a_row+nflow, b_col+1:b_col+nflow) = 
       &          egmass(iel, a_row+1:a_row+nflow, b_col+1:b_col+nflow)
       &        + ch(iel) * shga_g_shgb(iel) * A0(iel,:, :)                  
                enddo
              enddo 
            enddo
  
negative.code:           real*8, dimension(npro), intent(in) :: ch
            real*8, dimension(npro,nsd,nsd),intent(in) :: gI !g^{ij}_{I} = 
                                                             ! proj^T g^{ij} proj
            real*8, dimension(npro),intent(in) :: WdetJ
            integer, intent(in)  :: nshl
  c
            real*8, dimension(npro,nsd) :: shga_g
  