anchor.diff:      s_buffer = repeat(' ',vtk(rf)%indent)//'<DataArray type="Int32" Name="'//trim(varname)//'" NumberOfComponents="'// &
                  trim(str(.true.,N_COL))//'" format="binary">'
       write(vtk(rf)%u,iostat=E_IO)trim(s_buffer)//end_rec
  +    allocate(varp(1:size(transfer([int(N_COL*NC_NN*BYI4P,I4P),reshape(var,[N_COL*NC_NN])],varp))))
       varp = transfer([int(N_COL*NC_NN*BYI4P,I4P),reshape(var,[N_COL*NC_NN])],varp)
       call b64_encode(nB=int(BYI1P,I4P),n=varp,code=var64) ; deallocate(varp)
       write(vtk(rf)%u,iostat=E_IO)repeat(' ',vtk(rf)%indent+2)//tochar(var64)//end_rec ; deallocate(var64)
  
positive.code:     s_buffer=repeat(' ',vtk(rf)%indent)//'<DataArray type="Int32" Name="'//trim(varname)// &
               '" NumberOfComponents="1" format="binary">'
      write(vtk(rf)%u,iostat=E_IO)trim(s_buffer)//end_rec
      varp = transfer([int(NC_NN*BYI4P,I4P),reshape(var,[NC_NN])],varp)
      call b64_encode(nB=int(BYI1P,I4P),n=varp,code=var64) ; deallocate(varp)
      write(vtk(rf)%u,iostat=E_IO)repeat(' ',vtk(rf)%indent+2)//tochar(var64)//end_rec ; deallocate(var64)
  
negative.code:         if (vtk(rf)%f==raw) then
            write(unit=vtk(rf)%u,iostat=E_IO)int(vtk(rf)%N_Byte,I4P),(v_I4(n1),n1=1,N_v)
          else
            allocate(varp(1:size(transfer([int(vtk(rf)%N_Byte,I4P),v_I4],varp))))
            varp = transfer([int(vtk(rf)%N_Byte,I4P),v_I4],varp)
            call b64_encode(nB=int(BYI1P,I4P),n=varp,code=var64) ; deallocate(varp)
            write(unit=vtk(rf)%u,iostat=E_IO)tochar(var64) ; deallocate(var64)
  