@Override
 protected List<T> createPrivateData(boolean mutable) {
   if (mutable) {
     return Lists.newArrayList();
   }
   return Collections.emptyList();
 }
 @Override
 protected Set<T> createPrivateData(boolean mutable) {
   if (mutable) {
     return Sets.newLinkedHashSet();
   } else {
     return Collections.emptySet();
   }
 }