wrap types in appropriate classes