public T RemoveFront() { T o = default(T); if (list.First != null) { o = list.First.data; list.First.data = default(T); list.Remove(list.First); } return o; }