struc df [arg] {
if arg eqtype 1.0
dd arg
else if arg eqtype 1
dd arg#f
else
match sign value,arg {
match =INF,value { dd $7F800000 - (sign $40000000 - $40000000) \\}
match =NaN (variant),value { dd $7F800000 + (variant and $4FFFFF) - (sign $40000000 - $40000000) \\} \}
end if }