

def _subscript_assign_range(self, space, start, end, rep_w):
    assert (end >= 0)
    delta = ((end - start) - len(rep_w))
    if (delta < 0):
        self.items_w += ([None] * (- delta))
        lim = (start + len(rep_w))
        i = (self.length() - 1)
        while (i >= lim):
            self.items_w[i] = self.items_w[(i + delta)]
            i -= 1
    elif (delta > 0):
        del self.items_w[start:(start + delta)]
    self.items_w[start:(start + len(rep_w))] = rep_w

dataset/ETHPy150Open topazproject/topaz/topaz/objects/arrayobject.py W_ArrayObject._subscript_assign_range/original