public String dump(int depth) {
   StringBuilder buf = new StringBuilder();
   for (int i = 0; i < depth; i++) {
     buf.append('.');
   }
   buf.append(idToString(getId()));
   buf.append(' ');
   buf.append(getLength());
   if (getChildCount() > 0) {
     buf.append(' ');
     buf.append(idToString(getType()));
     for (MutableIFFChunk child : childChunks()) {
       buf.append('\n');
       buf.append(child.dump(depth + 1));
     }
   }
   return buf.toString();
 }