allow typename in templates