coalesce all desugaring and call it before user registerCallback extension point