behalten (Middle High German) comes from Old High German bihaltan, from Proto-West Germanic bihaldan, from Proto-West Germanic haldan, from Proto-Germanic haldaną, from Proto-Indo-European kel- — to hit; beat; to pierce, to stab; goblet.