@SuppressWarnings("unchecked")
  public static final <T> ImmutableList<T> empty()
  {
    return (ImmutableList<T>) EMPTY;
  }
@Test
  public void testEmpty()
  {
    assertEquals(ImmutableList.empty(), ImmutableList.empty());

    assertTrue(ImmutableList.empty() == ImmutableList.empty());

    assertEquals(ImmutableList.empty().size(), 0);

    assertEquals(ImmutableList.empty().toArray().length, 0);
  }