refactoring
trigger key-specific events