@SuppressWarnings("unchecked")
 public boolean addTables(ODLDatastore<? extends ODLTableDefinition> database) {
   for (int i = 0; i < database.getTableCount(); i++) {
     if (addTable((T) database.getTableAt(i)) == -1) {
       return false;
     }
   }
   return true;
 }
 @SuppressWarnings("unchecked")
 @Override
 public T getTableAt(int tableIndex) {
   T ret = null;
   if (tableIndex < getTableCount()) {
     int id = decorated.getTableAt(tableIndex).getImmutableId();
     ret = (T) new FlatDs2TableObject(this, id);
   }
   return ret;
 }