anchor.diff:  worker(WorkMessage msg) {
     final start = new DateTime.now().millisecondsSinceEpoch;
   
  -  var env = msg.environment;
     List files = msg.files;
     var resolver =
  -      new Resolver(packageRoot: env["pkgRoot"], sdkRoot: env["sdkRoot"]);
  +      new Resolver(packageRoot: msg.pkgRoot, sdkRoot: msg.sdkRoot);
     var workerHitmap = {};
     files.forEach((File fileEntry) {
       // Read file sync, as it only contains 1 object.
  
positive.code:   return buckets;
  }
  
  Future<ResultMessage> spawnWorker(name, environment, files) {
    RawReceivePort port = new RawReceivePort();
    var completer = new Completer();
    port.handler = ((ResultMessage msg) {
      completer.complete(msg);
      port.close();
    });
    var msg = new WorkMessage(name, environment, files, port.sendPort);
    Isolate.spawn(worker, msg);
    return completer.future;
  }
  
negative.code:     print("  package-root: ${env.pkgRoot}");
    }
  
    // Create workers.
    int workerId = 0;
    var results = split(files, env.workers).map((workerFiles) {
      var result = spawnWorker("Worker ${workerId++}", env.pkgRoot, env.sdkRoot,
          workerFiles, env.verbose);
      return result.then((ResultMessage message) {
        mergeHitmaps(message.hitmap, globalHitmap);
        failedResolves.addAll(message.failedResolves);
  