unifys
adding function composition existential type