cleaned up shot parser