
dd=!deaccent $(reply$i)
dd=!exec units-filter $dd
dt=!word 1 of $dd
d1=$[$dt]
d2=!word 2 to -1 of $dd

m_reply$i=$dd
!if $wims_read_parm=nocompare
 !if NaN isin $d1 or Inf isin $d1 or ERROR isin $d1 or $dt=$empty
  test=NaN
 !endif
 !exit
!endif

gg=!deaccent $(replygood$i)
gg=!exec units-filter $gg
good=!word 1 of $gg
good1=$[$good]
good2=!word 2 to -1 of $gg
!if NaN isin $good or Inf isin $good or ERROR isin $good or $good=$empty
 Test=bad $i
 !exit
!endif

!if NaN isin $d1 or Inf isin $d1 or ERROR isin $d1 or $dt=$empty
 test=NaN
 !exit
!endif

emptyunit=0 0 0 0 0 0 0 0 0
!if $good2!=$emptyunit and $d2=$emptyunit
 test=NaN notunit
 !exit
!endif

tot=$[abs($good1)+abs($d1)]
dif=$[abs($d1-($good1))]
!if NaN isin $tot $dif or Inf isin $tot $dif
 test=NaN
 !exit
!endif

!if $good2=$d2 and \
	(($good1=0 and $d1=0) or ($good1!=0 and $d1!=0 and $dif*$precision<$tot))
 diareply$i=good
 !advance freegot
!else
 !if sqrt($precision)*$dif<=$tot and $good2=$d2
  !advance precgood
  precreply$i=yes
 !endif
 diareply$i=bad
!endif

