@Override
public int retainAll(final ShortLookupContainer c)
{
// We know c holds sub-types of short and we're not modifying c, so go unchecked.
final ShortContainer c2 = (ShortContainer) c;
return this.removeAll(new ShortPredicate()
{
public boolean apply(short k)
{
return !c2.contains(k);
}