code: def __getitem_slice(self, slce):
          
          scaled_indices = (self._step * n for n in slce.indices(self._len))
          start_offset, stop_offset, new_step = scaled_indices
          return newrange(self._start + start_offset,
                          self._start + stop_offset,
                          new_step)
docs: Return a range which represents the requested slce
          of the sequence represented by this range.