anchor.diff:          endif
   
         case(binary)
  -! Not implemented
  +        if (trim(adjustlt(Upper_Case(fmt)))/='BINARY' .or. &
  +            trim(adjustlt(Upper_Case(type)))/='INT8') then
  +          E_IO = -1_I4P
  +        else
  +          ! Decode base64 packed data
  +          data=trim(adjustlt(data))
  +          allocate(dI1P(3*NC_NN*int(BYI1P,I4P)+int(BYI4P,I4P)))
  +          call b64_decode(code=data,n=dI1P); if(allocated(data)) deallocate(data)
  +          ! Unpack data [1xI4P,3*NC_NNxI1P]
  +          N_byte =  transfer(dI1P(1:int(BYI4P,I4P)),N_byte)
  +          s = size(transfer(dI1P(int(BYI4P,I4P)+1:),XYZp)); allocate(XYZp(1:s))
  +          XYZp = transfer(dI1P(int(BYI4P,I4P)+1:),XYZp); if(allocated(dI1P)) deallocate(dI1P)
  +          do i=1,NC_NN; varX(i)=XYZp(i*3-2); varY(i)=XYZp(i*3-1); varZ(i)=XYZp(i*3); enddo
  +          if(allocated(XYZp)) deallocate(XYZp)
  +        endif
  +
   
         case(raw)
           if(E_IO == 0) then
  
positive.code:         endif
  
        case(binary)
  ! Not implemented
  
        case(raw)
          if(E_IO == 0) then
  
negative.code:     endif
  
    case(binary)
      rewind(unit=vtk(rf)%u, iostat=E_IO)
      E_IO = search(inside='FieldData', to_find='DataArray', with_attribute='Name', of_value=trim(fname), &
                    buffer=s_buffer,content=data)
      if(E_IO==0) then
        call get_int(buffer=s_buffer, attrib='NumberOfTuples', val=nt, E_IO=E_IO)
        call get_char(buffer=s_buffer, attrib='type', val=type, E_IO=E_IO)
        call get_char(buffer=s_buffer, attrib='format', val=fmt, E_IO=E_IO)
        if (trim(adjustlt(Upper_Case(fmt)))/='BINARY' .or. &
            trim(adjustlt(Upper_Case(type)))/='FLOAT32' .or. nt/=1) then        
            E_IO = -1_I4P
        else
          ! Decode packed base64 data
          data=trim(adjustlt(data))
          allocate(dI1P(int(BYR4P,I4P)+int(BYI4P,I4P)))
          call b64_decode(code=data,n=dI1P); if(allocated(data)) deallocate(data)
          ! Unpack data [1xI4P,1xR4P]
          N_byte =  transfer(dI1P(1:int(BYI4P,I4P)),N_byte)
          fld = transfer(dI1P(int(BYI4P,I4P)+1:),fld); if(allocated(dI1P)) deallocate(dI1P)
        endif
        if(allocated(data)) deallocate(data)
      endif
  
  
    case(raw)
      rewind(unit=vtk(rf)%u, iostat=E_IO)
  