unary2 :: Unary2 -> RoundMode -> Precision -> Rounded -> (Rounded, Rounded)
unary2 f r p (Rounded s e l) = (Rounded s1' e1' l1', Rounded s2' e2' l2') where
    (# s1', e1', l1', s2', e2', l2' #) = f (mode# r) (prec# p) s e l

unary2 :: Unary2 -> RoundMode -> Precision -> Rounded -> (Rounded, Rounded)
unary2 f r p (Rounded s e l) = (Rounded s1' e1' l1', Rounded s2' e2' l2') where
    (# s1', e1', l1', s2', e2', l2' #) = f (mode# r) (prec# p) s e l

unary2 f r p (Rounded s e l) = (Rounded s1' e1' l1', Rounded s2' e2' l2') where
    (# s1', e1', l1', s2', e2', l2' #) = f (mode# r) (prec# p) s e l
