added forRange