refactored to work on single events with #scan