add Range and enhance DelayedJob