fix uniop
add test