anchor.diff:    }
   }
   
  -final Expando<ClassMirror> classMirrors = new Expando<ClassMirror>();
  -
   ClassMirror reflectType(Type key) {
     return reflectClassByMangledName('$key'.split('<')[0]);
   }
  
positive.code:       fields = '';
      }
    }
    var mirror = classMirrors[constructorOrInterceptor];
    if (mirror == null) {
      mirror = new JsClassMirror(
          symbol, mangledName, constructorOrInterceptor, fields, fieldsMetadata);
      classMirrors[constructorOrInterceptor] = mirror;
    }
    return mirror;
  }
  
  
negative.code:   return reflectClassByName(s(unmangledName), mangledName);
  }
  
  var classMirrors;
  
  ClassMirror reflectClassByName(Symbol symbol, String mangledName) {
    if (classMirrors == null) classMirrors = JsCache.allocate();
    var mirror = JsCache.fetch(classMirrors, mangledName);
    if (mirror != null) return mirror;
    disableTreeShaking();
    var constructorOrInterceptor =
        Primitives.getConstructorOrInterceptor(mangledName);
  