anchor.diff:        call get_char(buffer=s_buffer, attrib='Extent', val=aux, E_IO=E_IO)
         if(E_IO == 0) then      
           read(aux,*, iostat=E_IO) nx1,nx2,ny1,ny2,nz1,nz2
  -        if(E_IO == 0) then      
  -          E_IO = search(from=pos, inside='Coordinates', to_find='DataArray', with_attribute='Name', of_value='X', buffer=s_buffer)
  -          call get_int(buffer=s_buffer,  attrib='offset', val=offsX, E_IO=E_IO)
  -          call get_char(buffer=s_buffer, attrib='format', val=fmtX,  E_IO=E_IO)
  -          call get_char(buffer=s_buffer, attrib='type',   val=typeX, E_IO=E_IO)
  -          E_IO = search(from=pos, inside='Coordinates', to_find='DataArray', with_attribute='Name', of_value='Y', buffer=s_buffer)
  -          call get_int(buffer=s_buffer,  attrib='offset', val=offsY, E_IO=E_IO)
  -          call get_char(buffer=s_buffer, attrib='format', val=fmtY,  E_IO=E_IO)
  -          call get_char(buffer=s_buffer, attrib='type',   val=typeY, E_IO=E_IO)
  -          E_IO = search(from=pos, inside='Coordinates', to_find='DataArray', with_attribute='Name', of_value='Z', buffer=s_buffer)
  -          call get_int(buffer=s_buffer,  attrib='offset', val=offsZ, E_IO=E_IO)
  -          call get_char(buffer=s_buffer, attrib='format', val=fmtZ,  E_IO=E_IO)
  -          call get_char(buffer=s_buffer, attrib='type',   val=typeZ, E_IO=E_IO)
  +        E_IO = search(from=pos, inside='Coordinates', to_find='DataArray', with_attribute='Name', of_value='X', buffer=s_buffer)
  +        call get_int(buffer=s_buffer,  attrib='offset', val=offsX, E_IO=E_IO)
  +        call get_char(buffer=s_buffer, attrib='format', val=fmtX,  E_IO=E_IO)
  +        call get_char(buffer=s_buffer, attrib='type',   val=typeX, E_IO=E_IO)
  +        E_IO = search(from=pos, inside='Coordinates', to_find='DataArray', with_attribute='Name', of_value='Y', buffer=s_buffer)
  +        call get_int(buffer=s_buffer,  attrib='offset', val=offsY, E_IO=E_IO)
  +        call get_char(buffer=s_buffer, attrib='format', val=fmtY,  E_IO=E_IO)
  +        call get_char(buffer=s_buffer, attrib='type',   val=typeY, E_IO=E_IO)
  +        E_IO = search(from=pos, inside='Coordinates', to_find='DataArray', with_attribute='Name', of_value='Z', buffer=s_buffer)
  +        call get_int(buffer=s_buffer,  attrib='offset', val=offsZ, E_IO=E_IO)
  +        call get_char(buffer=s_buffer, attrib='format', val=fmtZ,  E_IO=E_IO)
  +        call get_char(buffer=s_buffer, attrib='type',   val=typeZ, E_IO=E_IO)
  +        if(E_IO == 0) then 
             if (trim(adjustlt(Upper_Case(fmtX)))/='APPENDED' .or. &
                 trim(adjustlt(Upper_Case(fmtY)))/='APPENDED' .or. &
                 trim(adjustlt(Upper_Case(fmtZ)))/='APPENDED' .or. &
  
positive.code:         rewind(unit=vtk(rf)%u, iostat=E_IO)
          np = 0
          do
            E_IO = read_record(s_buffer, cf=rf)
            s_buffer = trim(adjustl(Upper_Case(s_buffer)))
            if (index(s_buffer, '</'//trim(Upper_Case(vtk(rf)%topology))) > 0) exit !end of ASCII header section found
            if (index(s_buffer, '<PIECE') > 0) np = np + 1
  
negative.code:         rewind(unit=vtk(rf)%u, iostat=E_IO)
          read(unit=vtk(rf)%u,iostat=E_IO) c1
          do 
            read(unit=vtk(rf)%u,iostat=E_IO) c2; if(E_IO /= 0) exit
            if (iachar(c1)==10 .and. c2 =='_') exit
            c1 = c2
          enddo
  