docs: public synchronized List<List<V>> getRows() {
          List<List<V>> copy = new ArrayList<List<V>>();
          for(List<V> row: rows) {
              copy.add(new ArrayList<V>(row));
          }
          return copy;
      }