code: @Override
      protected void _to(ObjectOutput out) throws IOException {
          final int sizeProtoEdges = protoEdges.size();
          out.writeInt(sizeProtoEdges);
          for (int i = 0; i < sizeProtoEdges; i++) {
              TableProtoEdge tpe = protoEdges.get(i);
              tpe.writeExternal(out);
          }
  
          final int sizeStmtEdges = stmtEdges.size();
          out.writeInt(sizeStmtEdges);
          for (Map.Entry<Integer, Set<Integer>> entry : stmtEdges.entrySet()) {
              out.writeInt(entry.getKey().intValue());
              final Set<Integer> value = entry.getValue();
  
              out.writeInt(value.size());
              for (Integer j : value) {
                  out.writeInt(j.intValue());
              }
          }
          final int sizeEdgeStmts = edgeStmts.size();
          out.writeInt(sizeEdgeStmts);
          for (Map.Entry<Integer, Set<Integer>> entry : edgeStmts.entrySet()) {
              out.writeInt(entry.getKey().intValue());
              final Set<Integer> value = entry.getValue();
              out.writeInt(value.size());
              for (Integer j : value) {
                  out.writeInt(j.intValue());
              }
          }
          final int sizeVisited = visited.size();
          out.writeInt(sizeVisited);
          for (Map.Entry<TableProtoEdge, Integer> entry : visited.entrySet()) {
              out.writeObject(entry.getKey());
              out.writeInt(entry.getValue().intValue());
          }
          out.writeObject(equivalences);
      }
docs: {@inheritDoc}