making ranges more cacheable