anchor.diff:      return null;
     }
   
  -  String entryPointsDir, dartEntryPointsDir, genSnapshot;
  +  String entryPointsDir, dartEntryPointsDir, snapshotterDir, genSnapshot;
   
     String engineSrc = tools.engineSrcPath;
     if (engineSrc != null) {
       entryPointsDir  = path.join(engineSrc, 'flutter', 'sky', 'engine', 'bindings');
       dartEntryPointsDir = path.join(engineSrc, 'dart', 'runtime', 'bin');
  +    snapshotterDir = path.join(engineSrc, 'flutter', 'lib', 'snapshot');
       String engineOut = tools.getEngineArtifactsDirectory(platform, buildMode).path;
       if (platform == TargetPlatform.ios) {
         genSnapshot = path.join(engineOut, 'clang_x64', 'gen_snapshot');
  
positive.code:       ]);
        break;
      case TargetPlatform.ios:
        snapshotDartIOS = path.join(entryPointsDir, 'snapshot.dart');
        assembly = path.join(outputDir.path, 'snapshot_assembly.S');
        filePaths.addAll(<String>[
          snapshotDartIOS,
  
negative.code:     String artifactsDir = tools.getEngineArtifactsDirectory(platform, buildMode).path;
      entryPointsDir = artifactsDir;
      dartEntryPointsDir = entryPointsDir;
      snapshotterDir = entryPointsDir;
      if (platform == TargetPlatform.ios) {
        genSnapshot = path.join(artifactsDir, 'gen_snapshot');
      } else {
  