Refactored Shoot