refactored Scalper