better performance for keysFor