better key reading