anchor.diff:      return _attributes.keys;
     }
   
  -  /*
     @override
     String toString() {
  -    final int f = _faces.length;
  -    final int f3 = _faces3.length;
  -    final int f4 = _faces4.length;
  -    final int v = _vertices.length;
  -    return "MESH[${name}] F:${f} F3:${f3} F4:${f4} V:${v}";
  -  }
  -  */
  +    List<String> lst = ["Faces:${_faces.length}"];
  +    for (String c in _attributes.keys) {
  +      lst.add("${c}:${_attributes[c].length}");
  +    }
  +
  +    return "MESH[${name}] " + lst.join("  ");
  +  }
   }
   
   void _GeometryBuilderAttributesToMeshData(GeometryBuilder gb, MeshData md) {
  
positive.code:   md.AddFaces(faces);
    return md;
  }
  
negative.code:   }
  
    void AddVertices(Float32List data) {
      final String canonical = aVertexPosition;
      _addBuffer(canonical, data);
      _attributes[canonical] = data;
      _vertices = data;
    }
  
  