anchor.diff:          setValue(node.parameters[0],
                    nonConstant(typeSystem.getReceiverType(node.element)));
         } else {
  -        setValue(node.thisParameter, 
  +        setValue(node.thisParameter,
                 nonConstant(typeSystem.getReceiverType(node.element)));
           setValue(node.parameters[0], nonConstant());
         }
  
positive.code:     AbstractBool boolifiedValue = lattice.boolify(conditionValue);
  
      if (boolifiedValue == AbstractBool.True) {
        InvokeContinuation invoke = new InvokeContinuation(trueCont, []);
        replaceSubtree(node, invoke);
        push(invoke);
        return;
      }
      if (boolifiedValue == AbstractBool.False) {
        InvokeContinuation invoke = new InvokeContinuation(falseCont, []);
        replaceSubtree(node, invoke);
        push(invoke);
  
negative.code:   bool methodUsesReceiverArgument(FunctionElement function) {
      assert(backend.isInterceptedMethod(function));
      ClassElement clazz = function.enclosingClass.declaration;
      return clazz.isSubclassOf(backend.jsInterceptorClass) ||
             classWorld.isUsedAsMixin(clazz);
    }
  
  