code: def insert(self, value, index):
          '''Accepts a :value: and :index: parameter and inserts
          a new key, value member at the desired index.
  
          Note: Inserting with a negative index will have the following behavior:
          >>> l = [1, 2, 3, 4]
          >>> l.insert(-1, 5)
          >>> l
          [1, 2, 3, 5, 4]
          '''
  
          if value in self._set:
              self._set.discard(value)
          self._keys.insert(index, value)
          self._set.add(valuef insert(self, value, index):
          '''Accepts a :value: and :index: parameter and inserts
          a new key, value member at the desired index.
  
          Note: Inserting with a negative index will have the following behavior:
          >>> l = [1, 2, 3, 4]
          >>> l.insert(-1, 5)
          >>> l
          [1, 2, 3, 5, 4]
          '''
  
          if value in self._set:
              self._set.discard(value)
          self._keys.insert(index, value)
          self._set.add(value)
docs: Accepts a :value: and :index: parameter and inserts
          a new key, value member at the desired index.
  
          Note: Inserting with a negative index will have the following behavior:
          >>> l = [1, 2, 3, 4]
          >>> l.insert(-1, 5)
          >>> l
          [1, 2, 3, 5, 4]