split TyApp co and contra variant