anchor.diff:    else {
       // it must be dynamic
       map[keyModule] = "\$";
  -    map[keyName] = isCovariant ? "Anything" : "Nothing";
  +    // Use "Anything" for both returns and parameters. The other idea was to use
  +    // "Nothing" for returns, which would be indicated by !isCovariant
  +    map[keyName] = isCovariant ? "Anything" : "Anything";
       map[keyPackage] = "\$";
     }
     return map;
  
positive.code:       map[keyType] = typeToMap(pt.returnType, from, false, false, true);
        map[keyMetatype] = metatypeParameter;
        map[keyName] = MirrorSystem.getName(pm.simpleName);
        // TODO these param types should be contravariant (i.e. Nothing)...
        List plist = parametersToList(pt.parameters, from);
        if (plist.isNotEmpty) {
          map[keyParams] = [plist];
  
negative.code:     bool forceAbstract) {
  
    var map = new Map();
    // contraviarant for returns
    map[keyType] = typeToMap(mm.returnType, from, false, true, false);
  
    if (mm.isGetter) {
  