{
    switch (featureID)
    {
      case EcorePackage.EANNOTATION__EANNOTATIONS:
        return ((InternalEList<?>)getEAnnotations()).basicRemove(otherEnd, msgs);
      case EcorePackage.EANNOTATION__DETAILS:
        return ((InternalEList<?>)getDetails()).basicRemove(otherEnd, msgs);
      case EcorePackage.EANNOTATION__EMODEL_ELEMENT:
        return basicSetEModelElement(null, msgs);
      case EcorePackage.EANNOTATION__CONTENTS:
        return ((InternalEList<?>)getContents()).basicRemove(otherEnd, msgs);
    }
    return eDynamicInverseRemove(otherEnd, featureID, msgs);
  }