def __getitem__(self, index):
        if not self.replaceMap:
            return Collection.__getitem__(self, index)

        if type(index) == int and index in self._cache: return self._cache[index]
        if index >= self._len: raise IndexError, "Invalid index %r (len is %r) at %s" % (index,self._len,self._prefix)
        ret = ObjectRemapped(self._event,self._prefix,index=index,replaceMap=self.replaceMap)
        if type(index) == int: self._cache[index] = ret
        return ret