anchor.diff:      int textCoordNeeded = indexCounter * 2;
       if (textCoord.length < textCoordNeeded) {
         textCoordFound = false; // mark real texture coordinates as missing
  -      print("OBJ: FIXME: url=$url adding ${textCoordNeeded - textCoord.length} virtual texture coordinates");
  -      while (textCoord.length < textCoordNeeded) {
  -        textCoord.add(0.0); // u
  -        textCoord.add(0.0); // v
  +      if (fillMissingTextCoord) {
  +        print("OBJ: FIXME: url=$url adding ${textCoordNeeded - textCoord.length} virtual texture coordinates");
  +        while (textCoord.length < textCoordNeeded) {
  +          textCoord.add(0.0); // u
  +          textCoord.add(0.0); // v
  +        }
         }
       }
   
  
positive.code:       print("Obj.fromString: URL=$url textCoordFound = $textCoordFound");
        print("Obj.fromString: URL=$url textCoord.length = ${textCoord.length} (2 * $indexCounter)");
        print("Obj.fromString: URL=$url normCoord.length = ${normCoord.length} (3 * $indexCounter)");
        
        int maxIndices = 100;
        
        print("Obj.fromString: URL=$url printing arrays only for objects with less than $maxIndices indices");
  
        if (indices.length < maxIndices) {
  
negative.code: 
  typedef void field_parser(String field, String param, String line, int lineNum, String url);
  
  Map<String, Material> mtllib_parse(String str, String url, {printUnknownFields: true}) {
  
    Map<String, Material> lib = new Map<String, Material>();
    Material currMaterial;
  