/// <summary>
 /// Removes the first occurrence of a specific item from the list
 /// </summary>
 /// <param name="value">Item</param>
 void IList.Remove(object value)
 {
     if (CircularList <T> .IsCompatibleObject(value))
     {
         this.Remove((T)((object)value));
     }
 }
 /// <summary>
 /// Searches for the specified 'item' and returns the index of the first occurrence of the item inside list
 /// </summary>
 /// <param name="value">The item to locate inside the list</param>
 /// <returns>The index of element inside the list, if found. -1 otherwise</returns>
 int IList.IndexOf(object value)
 {
     if (CircularList <T> .IsCompatibleObject(value))
     {
         return(this.IndexOf((T)((object)value)));
     }
     return(-1);
 }
 /// <summary>
 /// Determines whether an element is in the List
 /// </summary>
 /// <param name="value">The object to locate in the List</param>
 /// <returns>True if item is found</returns>
 bool IList.Contains(object value)
 {
     return(CircularList <T> .IsCompatibleObject(value) && this.Contains((T)((object)value)));
 }