bind key handlers only once