From 4858ed6ebf2ea33993461cd2982b3c37a5cfde0f Mon Sep 17 00:00:00 2001 From: Felix Angelov Date: Thu, 16 Oct 2025 13:21:36 -0500 Subject: [PATCH 1/3] fix(dart_frog_cli): avoid overwriting `pubspec_overrides.yaml` in `dart_frog build` --- .../lib/dart_frog_prod_server_hooks.dart | 1 + .../src/create_external_packages_folder.dart | 58 +---- .../lib/src/disable_workspace_resolution.dart | 10 +- .../hooks/lib/src/path_dependency.dart | 52 +++++ .../create_external_packages_folder_test.dart | 46 ++++ .../dart_frog_prod_server_bundle.dart | 218 +++++++++++++++++- 6 files changed, 324 insertions(+), 61 deletions(-) create mode 100644 bricks/dart_frog_prod_server/hooks/lib/src/path_dependency.dart diff --git a/bricks/dart_frog_prod_server/hooks/lib/dart_frog_prod_server_hooks.dart b/bricks/dart_frog_prod_server/hooks/lib/dart_frog_prod_server_hooks.dart index f16808f88..a1494eb95 100644 --- a/bricks/dart_frog_prod_server/hooks/lib/dart_frog_prod_server_hooks.dart +++ b/bricks/dart_frog_prod_server/hooks/lib/dart_frog_prod_server_hooks.dart @@ -10,6 +10,7 @@ export 'src/get_package_graph.dart'; export 'src/get_pubspec_lock.dart'; export 'src/get_workspace_root.dart'; export 'src/package_graph/package_graph.dart'; +export 'src/path_dependency.dart'; export 'src/uses_workspace_resolution.dart'; /// A void callback function (e.g. `void Function()`). diff --git a/bricks/dart_frog_prod_server/hooks/lib/src/create_external_packages_folder.dart b/bricks/dart_frog_prod_server/hooks/lib/src/create_external_packages_folder.dart index 6bf3bec91..52ab775f0 100644 --- a/bricks/dart_frog_prod_server/hooks/lib/src/create_external_packages_folder.dart +++ b/bricks/dart_frog_prod_server/hooks/lib/src/create_external_packages_folder.dart @@ -27,13 +27,13 @@ Future> createExternalPackagesFolder({ final isExternal = !pathResolver.isWithin('', pathDescription.path); if (!isExternal) return null; - return _ExternalPathDependency( + return ExternalPathDependency( name: dependency.name, path: path.join(projectDirectory.path, pathDescription.path), ); }, ) - .whereType<_ExternalPathDependency>() + .whereType() .toList(); if (externalPathDependencies.isEmpty) return []; @@ -63,59 +63,13 @@ Future> createExternalPackagesFolder({ ), ); - File( - pathResolver.join(buildDirectory.path, 'pubspec_overrides.yaml'), - ).writeAsStringSync( - ''' -resolution: null -dependency_overrides: -${copiedExternalPathDependencies.map( - (dependency) { - final name = dependency.name; - final path = - pathResolver.relative(dependency.path, from: buildDirectory.path); - return ' $name:\n path: $path'; - }, - ).join('\n')} -''', + overrideResolutionInPubspecOverrides(buildDirectory.path); + writePathDependencyOverrides( + projectDirectory: buildDirectory.path, + pathDependencies: copiedExternalPathDependencies, ); return copiedExternalPathDependencies .map((dependency) => dependency.path) .toList(); } - -/// {@template external_path_dependency} -/// A path dependency that is not within the bundled Dart Frog project -/// directory. -/// -/// For example: -/// ```yaml -/// name: my_dart_frog_project -/// dependencies: -/// my_package: -/// path: ../my_package -/// ``` -/// {@endtemplate} -class _ExternalPathDependency { - /// {@macro external_path_dependency} - const _ExternalPathDependency({ - required this.name, - required this.path, - }); - - /// The name of the package. - final String name; - - /// The absolute path to the package. - final String path; - - /// Copies the [_ExternalPathDependency] to [targetDirectory]. - Future<_ExternalPathDependency> copyTo({ - required Directory targetDirectory, - CopyPath copyPath = io.copyPath, - }) async { - await copyPath(path, targetDirectory.path); - return _ExternalPathDependency(name: name, path: targetDirectory.path); - } -} diff --git a/bricks/dart_frog_prod_server/hooks/lib/src/disable_workspace_resolution.dart b/bricks/dart_frog_prod_server/hooks/lib/src/disable_workspace_resolution.dart index 4e3376b60..170ff079c 100644 --- a/bricks/dart_frog_prod_server/hooks/lib/src/disable_workspace_resolution.dart +++ b/bricks/dart_frog_prod_server/hooks/lib/src/disable_workspace_resolution.dart @@ -86,9 +86,9 @@ void overridePathDependenciesInPubspecOverrides({ packageGraph: packageGraph, ); - final pathDependencies = packageConfig.packages.where( - (package) => package.relativeRoot && productionDeps.contains(package.name), - ); + final pathDependencies = packageConfig.packages + .where((p) => p.relativeRoot && productionDeps.contains(p.name)) + .map((p) => PathDependency(name: p.name, path: p.root.path)); writePathDependencyOverrides( projectDirectory: projectDirectory, @@ -98,7 +98,7 @@ void overridePathDependenciesInPubspecOverrides({ void writePathDependencyOverrides({ required String projectDirectory, - required Iterable pathDependencies, + required Iterable pathDependencies, }) { final pubspecOverridesFile = File( path.join(projectDirectory, 'pubspec_overrides.yaml'), @@ -112,7 +112,7 @@ void writePathDependencyOverrides({ for (final package in pathDependencies) { editor.update( ['dependency_overrides', package.name], - {'path': path.relative(package.root.path, from: projectDirectory)}, + {'path': path.relative(package.path, from: projectDirectory)}, ); } pubspecOverridesFile.writeAsStringSync(editor.toString()); diff --git a/bricks/dart_frog_prod_server/hooks/lib/src/path_dependency.dart b/bricks/dart_frog_prod_server/hooks/lib/src/path_dependency.dart new file mode 100644 index 000000000..0f2dcaa85 --- /dev/null +++ b/bricks/dart_frog_prod_server/hooks/lib/src/path_dependency.dart @@ -0,0 +1,52 @@ +import 'dart:io'; + +import 'package:dart_frog_prod_server_hooks/dart_frog_prod_server_hooks.dart'; +import 'package:io/io.dart' as io; + +/// {@template path_dependency} +/// A path dependency that the Dart Frog project relies on. +/// +/// For example: +/// ```yaml +/// name: my_dart_frog_project +/// dependencies: +/// my_package: +/// path: ./my_package +/// ``` +/// {@endtemplate} +class PathDependency { + /// {@macro path_dependency} + const PathDependency({required this.name, required this.path}); + + /// The name of the package. + final String name; + + /// The absolute path to the package. + final String path; +} + +/// {@template external_path_dependency} +/// A path dependency that is not within the bundled Dart Frog project +/// directory. +/// +/// For example: +/// ```yaml +/// name: my_dart_frog_project +/// dependencies: +/// my_package: +/// path: ../my_package +/// ``` +/// {@endtemplate} +class ExternalPathDependency extends PathDependency { + /// {@macro external_path_dependency} + const ExternalPathDependency({required super.name, required super.path}); + + /// Copies the [ExternalPathDependency] to [targetDirectory]. + Future copyTo({ + required Directory targetDirectory, + CopyPath copyPath = io.copyPath, + }) async { + await copyPath(path, targetDirectory.path); + return ExternalPathDependency(name: name, path: targetDirectory.path); + } +} diff --git a/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart b/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart index dd14e05ad..a6c094687 100644 --- a/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart +++ b/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart @@ -75,5 +75,51 @@ void main() { ); expect(copyCalls, ['$from -> $to']); }); + + test("doesn't override existing overrides", () async { + const existingOverrides = ''' +dependency_overrides: + dart_frog: + git: + url: https://github.com/dart-frog-dev/dart_frog + path: packages/dart_frog +'''; + final projectDirectory = Directory.systemTemp.createTempSync(); + File( + path.join(projectDirectory.path, 'build', 'pubspec_overrides.yaml'), + ) + ..createSync(recursive: true) + ..writeAsStringSync(existingOverrides); + File( + path.join(projectDirectory.path, 'pubspec.lock'), + ).writeAsStringSync(fooPathWithInternalDependency); + final copyCalls = []; + + await createExternalPackagesFolder( + projectDirectory: projectDirectory, + buildDirectory: Directory(path.join(projectDirectory.path, 'build')), + copyPath: (from, to) async { + copyCalls.add('$from -> $to'); + File( + path.join(to, 'pubspec_overrides.yaml'), + ).createSync(recursive: true); + }, + ); + + final from = path.join(projectDirectory.path, '../../foo'); + final to = path.join( + projectDirectory.path, + 'build', + '.dart_frog_path_dependencies', + 'foo', + ); + expect(copyCalls, ['$from -> $to']); + expect( + File( + path.join(projectDirectory.path, 'build', 'pubspec_overrides.yaml'), + ).readAsStringSync(), + contains(existingOverrides), + ); + }); }); } diff --git a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart index aa84c0fcf..f541c029a 100644 --- a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart @@ -25,10 +25,214 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ } ], "hooks": [ + { + "path": "build/lib/dart_frog_prod_server_hooks.dart", + "data": + "ZXhwb3J0ICdzcmMvY29weV93b3Jrc3BhY2VfcHVic3BlY19sb2NrLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfYnVuZGxlLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfZXh0ZXJuYWxfcGFja2FnZXNfZm9sZGVyLmRhcnQnOwpleHBvcnQgJ3NyYy9kYXJ0X3B1Yl9nZXQuZGFydCc7CmV4cG9ydCAnc3JjL2Rpc2FibGVfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CmV4cG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfaW50ZXJuYWxfcGF0aF9kZXBlbmRlbmNpZXMuZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wYWNrYWdlX2NvbmZpZy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X3BhY2thZ2VfZ3JhcGguZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wdWJzcGVjX2xvY2suZGFydCc7CmV4cG9ydCAnc3JjL2dldF93b3Jrc3BhY2Vfcm9vdC5kYXJ0JzsKZXhwb3J0ICdzcmMvcGFja2FnZV9ncmFwaC9wYWNrYWdlX2dyYXBoLmRhcnQnOwpleHBvcnQgJ3NyYy9wYXRoX2RlcGVuZGVuY3kuZGFydCc7CmV4cG9ydCAnc3JjL3VzZXNfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CgovLy8gQSB2b2lkIGNhbGxiYWNrIGZ1bmN0aW9uIChlLmcuIGB2b2lkIEZ1bmN0aW9uKClgKS4KdHlwZWRlZiBWb2lkQ2FsbGJhY2sgPSB2b2lkIEZ1bmN0aW9uKCk7Cg==", + "type": "text" + }, + { + "path": "build/lib/src/copy_workspace_pubspec_lock.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKLy8vIENvcGllcyB0aGUgcHVic3BlYy5sb2NrIGZyb20gdGhlIHdvcmtzcGFjZSByb290IGludG8gdGhlIHByb2plY3QgZGlyZWN0b3J5Ci8vLyBpbiBvcmRlciB0byBlbnN1cmUgdGhlIHByb2R1Y3Rpb24gYnVpbGQgdXNlcyB0aGUgZXhhY3Qgc2FtZSB2ZXJzaW9ucyBvZiBhbGwKLy8vIGRlcGVuZGVuY2llcy4KVm9pZENhbGxiYWNrIGNvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaygKICBIb29rQ29udGV4dCBjb250ZXh0LCB7CiAgcmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgU3RyaW5nIHdvcmtzcGFjZVJvb3QsCiAgcmVxdWlyZWQgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQsCn0pIHsKICBmaW5hbCBwdWJzcGVjTG9ja0ZpbGUgPSBGaWxlKHBhdGguam9pbih3b3Jrc3BhY2VSb290LCAncHVic3BlYy5sb2NrJykpOwogIGlmICghcHVic3BlY0xvY2tGaWxlLmV4aXN0c1N5bmMoKSkgcmV0dXJuICgpIHt9OwoKICB0cnkgewogICAgcHVic3BlY0xvY2tGaWxlLmNvcHlTeW5jKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlYy5sb2NrJykpOwogICAgcmV0dXJuICgpIHsKICAgICAgRmlsZShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWMubG9jaycpKS5kZWxldGUoKS5pZ25vcmUoKTsKICAgIH07CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlcnJvcicpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsKICB9Cn0K", + "type": "text" + }, + { + "path": "build/lib/src/create_bundle.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTppby9pby5kYXJ0JyBzaG93IGNvcHlQYXRoOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCkZ1dHVyZTx2b2lkPiBjcmVhdGVCdW5kbGUoewogIHJlcXVpcmVkIEhvb2tDb250ZXh0IGNvbnRleHQsCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IGJ1aWxkRGlyZWN0b3J5LAogIHJlcXVpcmVkIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBleGl0LAp9KSBhc3luYyB7CiAgZmluYWwgZGFydEZyb2dEaXJlY3RvcnlQYXRoID0gcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy5kYXJ0X2Zyb2cnKTsKICBmaW5hbCBkYXJ0RnJvZ0RpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeShkYXJ0RnJvZ0RpcmVjdG9yeVBhdGgpOwogIGZpbmFsIGJ1bmRsaW5nUHJvZ3Jlc3MgPSBjb250ZXh0LmxvZ2dlci5wcm9ncmVzcygnQnVuZGxpbmcgc291cmNlcycpOwogIGZpbmFsIHRlbXBEaXJlY3RvcnkgPSBhd2FpdCBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wKCk7CgogIGlmIChidWlsZERpcmVjdG9yeS5leGlzdHNTeW5jKCkpIHsKICAgIGF3YWl0IGJ1aWxkRGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpOwogIH0KCiAgaWYgKGRhcnRGcm9nRGlyZWN0b3J5LmV4aXN0c1N5bmMoKSkgewogICAgYXdhaXQgZGFydEZyb2dEaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgfQoKICB0cnkgewogICAgYXdhaXQgY29weVBhdGgoCiAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgJyR7dGVtcERpcmVjdG9yeS5wYXRofSR7cGF0aC5zZXBhcmF0b3J9JywKICAgICk7CiAgICBidW5kbGluZ1Byb2dyZXNzLmNvbXBsZXRlKCk7CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBidW5kbGluZ1Byb2dyZXNzLmZhaWwoKTsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGVycm9yJyk7CiAgICByZXR1cm4gZXhpdCgxKTsKICB9CiAgYXdhaXQgY29weVBhdGgodGVtcERpcmVjdG9yeS5wYXRoLCBidWlsZERpcmVjdG9yeS5wYXRoKTsKfQo=", + "type": "text" + }, + { + "path": "build/lib/src/create_external_packages_folder.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICBmaW5hbCBpc0V4dGVybmFsID0gIXBhdGhSZXNvbHZlci5pc1dpdGhpbignJywgcGF0aERlc2NyaXB0aW9uLnBhdGgpOwogICAgICAgICAgaWYgKCFpc0V4dGVybmFsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSgKICAgICAgICAgICAgbmFtZTogZGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICBwYXRoOiBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCBwYXRoRGVzY3JpcHRpb24ucGF0aCksCiAgICAgICAgICApOwogICAgICAgIH0sCiAgICAgICkKICAgICAgLndoZXJlVHlwZTxFeHRlcm5hbFBhdGhEZXBlbmRlbmN5PigpCiAgICAgIC50b0xpc3QoKTsKCiAgaWYgKGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5pc0VtcHR5KSByZXR1cm4gW107CgogIGZpbmFsIHBhY2thZ2VzRGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgcGF0aFJlc29sdmVyLmpvaW4oCiAgICAgIGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICksCiAgKS4uY3JlYXRlU3luYyhyZWN1cnNpdmU6IHRydWUpOwoKICBmaW5hbCBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBhd2FpdCBGdXR1cmUud2FpdCgKICAgIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5tYXAoCiAgICAgIChleHRlcm5hbFBhdGhEZXBlbmRlbmN5KSBhc3luYyB7CiAgICAgICAgZmluYWwgY29weSA9IGF3YWl0IGV4dGVybmFsUGF0aERlcGVuZGVuY3kuY29weVRvKAogICAgICAgICAgY29weVBhdGg6IGNvcHlQYXRoLAogICAgICAgICAgdGFyZ2V0RGlyZWN0b3J5OiBEaXJlY3RvcnkoCiAgICAgICAgICAgIHBhdGhSZXNvbHZlci5qb2luKAogICAgICAgICAgICAgIHBhY2thZ2VzRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICApLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhjb3B5LnBhdGgpOwogICAgICAgIHJldHVybiBjb3B5OwogICAgICB9LAogICAgKSwKICApOwoKICBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoYnVpbGREaXJlY3RvcnkucGF0aCk7CiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMsCiAgKTsKCiAgcmV0dXJuIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcwogICAgICAubWFwKChkZXBlbmRlbmN5KSA9PiBkZXBlbmRlbmN5LnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", + "type": "text" + }, + { + "path": "build/lib/src/dart_pub_get.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKCnR5cGVkZWYgUHJvY2Vzc1J1bm5lciA9IEZ1dHVyZTxpby5Qcm9jZXNzUmVzdWx0PiBGdW5jdGlvbigKICBTdHJpbmcgZXhlY3V0YWJsZSwKICBMaXN0PFN0cmluZz4gYXJndW1lbnRzLCB7CiAgU3RyaW5nIHdvcmtpbmdEaXJlY3RvcnksCiAgYm9vbCBydW5JblNoZWxsLAp9KTsKCkZ1dHVyZTx2b2lkPiBkYXJ0UHViR2V0KAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBTdHJpbmcgd29ya2luZ0RpcmVjdG9yeSwKICByZXF1aXJlZCBQcm9jZXNzUnVubmVyIHJ1blByb2Nlc3MsCiAgcmVxdWlyZWQgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQsCiAgU3RyaW5nIG1lc3NhZ2UgPSAnSW5zdGFsbGluZyBkZXBlbmRlbmNpZXMnLAp9KSBhc3luYyB7CiAgZmluYWwgcHJvZ3Jlc3MgPSBjb250ZXh0LmxvZ2dlci5wcm9ncmVzcyhtZXNzYWdlKTsKICB0cnkgewogICAgZmluYWwgcmVzdWx0ID0gYXdhaXQgcnVuUHJvY2VzcygKICAgICAgJ2RhcnQnLAogICAgICBbJ3B1YicsICdnZXQnXSwKICAgICAgd29ya2luZ0RpcmVjdG9yeTogd29ya2luZ0RpcmVjdG9yeSwKICAgICAgcnVuSW5TaGVsbDogdHJ1ZSwKICAgICk7CiAgICBwcm9ncmVzcy5jb21wbGV0ZSgpOwoKICAgIGlmIChyZXN1bHQuZXhpdENvZGUgIT0gMCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyR7cmVzdWx0LnN0ZGVycn0nKTsKICAgICAgcmV0dXJuIGV4aXQocmVzdWx0LmV4aXRDb2RlKTsKICAgIH0KICB9IG9uIGlvLlByb2Nlc3NFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoZXJyb3IubWVzc2FnZSk7CiAgICByZXR1cm4gZXhpdChlcnJvci5lcnJvckNvZGUpOwogIH0KfQo=", + "type": "text" + }, + { + "path": "build/lib/src/disable_workspace_resolution.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sX2VkaXQveWFtbF9lZGl0LmRhcnQnOwoKLy8vIE9wdHMgb3V0IG9mIGRhcnQgd29ya3NwYWNlcyB1bnRpbCB3ZSBjYW4gZ2VuZXJhdGUgcGVyIHBhY2thZ2UgbG9ja2ZpbGVzLgovLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtbGFuZy9wdWIvaXNzdWVzLzQ1OTQKVm9pZENhbGxiYWNrIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBQYWNrYWdlQ29uZmlnIHBhY2thZ2VDb25maWcsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKICByZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCBTdHJpbmcgd29ya3NwYWNlUm9vdCwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIFZvaWRDYWxsYmFjayByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKICB0cnkgewogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoCiAgICAgIHByb2plY3REaXJlY3RvcnksCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlJyk7CiAgICBleGl0KDEpOwogICAgcmV0dXJuICgpIHt9OyAvLyBuby1vcAogIH0KCiAgdHJ5IHsKICAgIG92ZXJyaWRlUGF0aERlcGVuZGVuY2llc0luUHVic3BlY092ZXJyaWRlcygKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbigpOwogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZScpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsgLy8gbm8tb3AKICB9CgogIHJldHVybiByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKfQoKLy8vIEFkZCByZXNvbHV0aW9uOm51bGwgdG8gcHVic3BlY19vdmVycmlkZXMueWFtbC4KVm9pZENhbGxiYWNrIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhTdHJpbmcgcHJvamVjdERpcmVjdG9yeSkgewogIGZpbmFsIHB1YnNwZWNPdmVycmlkZXNGaWxlID0gRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICk7CgogIGlmICghcHVic3BlY092ZXJyaWRlc0ZpbGUuZXhpc3RzU3luYygpKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuIHB1YnNwZWNPdmVycmlkZXNGaWxlLmRlbGV0ZVN5bmM7CiAgfQoKICBmaW5hbCBjb250ZW50cyA9IHB1YnNwZWNPdmVycmlkZXNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gbG9hZFlhbWwoY29udGVudHMpIGFzIFlhbWxNYXA/OwoKICBpZiAocHVic3BlY092ZXJyaWRlcyA9PSBudWxsKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKICB9CgogIGlmIChwdWJzcGVjT3ZlcnJpZGVzWydyZXNvbHV0aW9uJ10gPT0gJ251bGwnKSByZXR1cm4gKCkge307IC8vIG5vLW9wCgogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpLi51cGRhdGUoWydyZXNvbHV0aW9uJ10sIG51bGwpOwogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKCiAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKfQoKLy8vIEFkZCBvdmVycmlkZXMgZm9yIGFsbCBwYXRoIGRlcGVuZGVuY2llcyB0byBgcHVic3BlY19vdmVycmlkZXMueWFtbGAKdm9pZCBvdmVycmlkZVBhdGhEZXBlbmRlbmNpZXNJblB1YnNwZWNPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIFBhY2thZ2VDb25maWcgcGFja2FnZUNvbmZpZywKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgbmFtZSA9IGdldFBhY2thZ2VOYW1lKHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkpOwogIGlmIChuYW1lID09IG51bGwpIHsKICAgIHRocm93IEV4Y2VwdGlvbignRmFpbGVkIHRvIHBhcnNlICJuYW1lIiBmcm9tIHB1YnNwZWMueWFtbCcpOwogIH0KCiAgZmluYWwgcHJvZHVjdGlvbkRlcHMgPSBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKAogICAgcGFja2FnZU5hbWU6IG5hbWUsCiAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICApOwoKICBmaW5hbCBwYXRoRGVwZW5kZW5jaWVzID0gcGFja2FnZUNvbmZpZy5wYWNrYWdlcwogICAgICAud2hlcmUoKHApID0+IHAucmVsYXRpdmVSb290ICYmIHByb2R1Y3Rpb25EZXBzLmNvbnRhaW5zKHAubmFtZSkpCiAgICAgIC5tYXAoKHApID0+IFBhdGhEZXBlbmRlbmN5KG5hbWU6IHAubmFtZSwgcGF0aDogcC5yb290LnBhdGgpKTsKCiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBwYXRoRGVwZW5kZW5jaWVzLAogICk7Cn0KCnZvaWQgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcyh7CiAgcmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgSXRlcmFibGU8UGF0aERlcGVuZGVuY3k+IHBhdGhEZXBlbmRlbmNpZXMsCn0pIHsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzRmlsZSA9IEZpbGUoCiAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICApOwogIGZpbmFsIGNvbnRlbnRzID0gcHVic3BlY092ZXJyaWRlc0ZpbGUucmVhZEFzU3RyaW5nU3luYygpOwogIGZpbmFsIG92ZXJyaWRlcyA9IGxvYWRZYW1sKGNvbnRlbnRzKSBhcyBZYW1sTWFwOwogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpOwogIGlmICghb3ZlcnJpZGVzLmNvbnRhaW5zS2V5KCdkZXBlbmRlbmN5X292ZXJyaWRlcycpKSB7CiAgICBlZGl0b3IudXBkYXRlKFsnZGVwZW5kZW5jeV9vdmVycmlkZXMnXSwge30pOwogIH0KICBmb3IgKGZpbmFsIHBhY2thZ2UgaW4gcGF0aERlcGVuZGVuY2llcykgewogICAgZWRpdG9yLnVwZGF0ZSgKICAgICAgWydkZXBlbmRlbmN5X292ZXJyaWRlcycsIHBhY2thZ2UubmFtZV0sCiAgICAgIHsncGF0aCc6IHBhdGgucmVsYXRpdmUocGFja2FnZS5wYXRoLCBmcm9tOiBwcm9qZWN0RGlyZWN0b3J5KX0sCiAgICApOwogIH0KICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYyhlZGl0b3IudG9TdHJpbmcoKSk7Cn0KCi8vLyBFeHRyYWN0IHRoZSBwYWNrYWdlIG5hbWUgZnJvbSB0aGUgcHVic3BlYy55YW1sIGluIFtwcm9qZWN0RGlyZWN0b3J5XS4KU3RyaW5nPyBnZXRQYWNrYWdlTmFtZSh7cmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3Rvcnl9KSB7CiAgZmluYWwgcHVic3BlY0ZpbGUgPSBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlYy55YW1sJykpOwogIGZpbmFsIHB1YnNwZWMgPSBsb2FkWWFtbChwdWJzcGVjRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogIGlmIChwdWJzcGVjIGlzISBZYW1sTWFwKSByZXR1cm4gbnVsbDsKCiAgZmluYWwgbmFtZSA9IHB1YnNwZWNbJ25hbWUnXTsKICBpZiAobmFtZSBpcyEgU3RyaW5nKSByZXR1cm4gbnVsbDsKCiAgcmV0dXJuIG5hbWU7Cn0KCi8vLyBCdWlsZCBhIGNvbXBsZXRlIGxpc3Qgb2YgZGVwZW5kZW5jaWVzIChkaXJlY3QgYW5kIHRyYW5zaXRpdmUpLgpTZXQ8U3RyaW5nPiBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKHsKICByZXF1aXJlZCBTdHJpbmcgcGFja2FnZU5hbWUsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKfSkgewogIGZpbmFsIGRlcGVuZGVuY2llcyA9IDxTdHJpbmc+e307CiAgZmluYWwgcm9vdCA9IHBhY2thZ2VHcmFwaC5yb290cy5maXJzdFdoZXJlKChyb290KSA9PiByb290ID09IHBhY2thZ2VOYW1lKTsKICBmaW5hbCByb290UGFja2FnZSA9IHBhY2thZ2VHcmFwaC5wYWNrYWdlcy5maXJzdFdoZXJlKChwKSA9PiBwLm5hbWUgPT0gcm9vdCk7CiAgZmluYWwgZGVwZW5kZW5jaWVzVG9WaXNpdCA9IDxTdHJpbmc+Wy4uLnJvb3RQYWNrYWdlLmRlcGVuZGVuY2llc107CgogIGRvIHsKICAgIGZpbmFsIGRpc2NvdmVyZWREZXBlbmRlbmNpZXMgPSA8U3RyaW5nPltdOwogICAgZm9yIChmaW5hbCBkZXBlbmRlbmN5VG9WaXNpdCBpbiBkZXBlbmRlbmNpZXNUb1Zpc2l0KSB7CiAgICAgIGZpbmFsIHBhY2thZ2UgPSBwYWNrYWdlR3JhcGgucGFja2FnZXMuZmlyc3RXaGVyZSgKICAgICAgICAocCkgPT4gcC5uYW1lID09IGRlcGVuZGVuY3lUb1Zpc2l0LAogICAgICApOwogICAgICBkZXBlbmRlbmNpZXMuYWRkKHBhY2thZ2UubmFtZSk7CiAgICAgIGZvciAoZmluYWwgcGFja2FnZURlcGVuZGVuY3kgaW4gcGFja2FnZS5kZXBlbmRlbmNpZXMpIHsKICAgICAgICAvLyBBdm9pZCBpbmZpbml0ZSBsb29wcyBmcm9tIGRlcGVuZGVuY3kgY3ljbGVzIChjaXJjdWxhciBkZXBlbmRlbmNpZXMpLgogICAgICAgIGlmIChkZXBlbmRlbmNpZXMuY29udGFpbnMocGFja2FnZURlcGVuZGVuY3kpKSBjb250aW51ZTsKICAgICAgICBkaXNjb3ZlcmVkRGVwZW5kZW5jaWVzLmFkZChwYWNrYWdlRGVwZW5kZW5jeSk7CiAgICAgIH0KICAgIH0KICAgIGRlcGVuZGVuY2llc1RvVmlzaXQKICAgICAgLi5jbGVhcigpCiAgICAgIC4uYWRkQWxsKGRpc2NvdmVyZWREZXBlbmRlbmNpZXMpOwogIH0gd2hpbGUgKGRlcGVuZGVuY2llc1RvVmlzaXQuaXNOb3RFbXB0eSk7CiAgcmV0dXJuIGRlcGVuZGVuY2llczsKfQo=", + "type": "text" + }, + { + "path": "build/lib/src/exit_overrides.dart", + "data": + "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmNvbnN0IF9hc3luY1J1blpvbmVkID0gcnVuWm9uZWQ7Cgp2b2lkIGRlZmF1bHRFeGl0KGludCBjb2RlKSA9PiBFeGl0T3ZlcnJpZGVzLmN1cnJlbnQ/LmV4aXQgPz8gaW8uZXhpdDsKCmFic3RyYWN0IGNsYXNzIEV4aXRPdmVycmlkZXMgewogIHN0YXRpYyBmaW5hbCBfdG9rZW4gPSBPYmplY3QoKTsKCiAgc3RhdGljIEV4aXRPdmVycmlkZXM/IGdldCBjdXJyZW50IHsKICAgIHJldHVybiBab25lLmN1cnJlbnRbX3Rva2VuXSBhcyBFeGl0T3ZlcnJpZGVzPzsKICB9CgogIHN0YXRpYyBSIHJ1blpvbmVkPFI+KFIgRnVuY3Rpb24oKSBib2R5LCB7dm9pZCBGdW5jdGlvbihpbnQpPyBleGl0fSkgewogICAgZmluYWwgb3ZlcnJpZGVzID0gX0V4aXRPdmVycmlkZXNTY29wZShleGl0KTsKICAgIHJldHVybiBfYXN5bmNSdW5ab25lZChib2R5LCB6b25lVmFsdWVzOiB7X3Rva2VuOiBvdmVycmlkZXN9KTsKICB9CgogIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBnZXQgZXhpdCA9PiBpby5leGl0Owp9CgpjbGFzcyBfRXhpdE92ZXJyaWRlc1Njb3BlIGV4dGVuZHMgRXhpdE92ZXJyaWRlcyB7CiAgX0V4aXRPdmVycmlkZXNTY29wZSh0aGlzLl9leGl0KTsKCiAgZmluYWwgRXhpdE92ZXJyaWRlcz8gX3ByZXZpb3VzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogIGZpbmFsIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKT8gX2V4aXQ7CgogIEBvdmVycmlkZQogIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBnZXQgZXhpdCB7CiAgICByZXR1cm4gX2V4aXQgPz8gX3ByZXZpb3VzPy5leGl0ID8/IHN1cGVyLmV4aXQ7CiAgfQp9Cg==", + "type": "text" + }, + { + "path": "build/lib/src/get_internal_path_dependencies.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CgpGdXR1cmU8TGlzdDxTdHJpbmc+PiBnZXRJbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMoaW8uRGlyZWN0b3J5IGRpcmVjdG9yeSkgYXN5bmMgewogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soZGlyZWN0b3J5LnBhdGgpOwoKICBmaW5hbCBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBwdWJzcGVjTG9jay5wYWNrYWdlcy53aGVyZSgKICAgIChkZXBlbmRlbmN5KSB7CiAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICBpZiAocGF0aERlc2NyaXB0aW9uID09IG51bGwpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAgIHJldHVybiBwYXRoLmlzV2l0aGluKCcnLCBwYXRoRGVzY3JpcHRpb24ucGF0aCk7CiAgICB9LAogICk7CgogIHJldHVybiBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMKICAgICAgLm1hcCgoZGVwZW5kZW5jeSkgPT4gZGVwZW5kZW5jeS5wYXRoRGVzY3JpcHRpb24hLnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", + "type": "text" + }, + { + "path": "build/lib/src/get_package_config.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpwYWNrYWdlX2NvbmZpZy9wYWNrYWdlX2NvbmZpZ190eXBlcy5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKUGFja2FnZUNvbmZpZz8gZ2V0UGFja2FnZUNvbmZpZygKICBTdHJpbmcgd29ya3NwYWNlUm9vdCwgewogIHBhdGguQ29udGV4dD8gcGF0aENvbnRleHQsCn0pIHsKICBmaW5hbCBwYXRoUmVzb2x2ZXIgPSBwYXRoQ29udGV4dCA/PyBwYXRoLmNvbnRleHQ7CiAgZmluYWwgcGFja2FnZUNvbmZpZ0ZpbGUgPSBGaWxlKAogICAgcGF0aFJlc29sdmVyLmpvaW4od29ya3NwYWNlUm9vdCwgJy5kYXJ0X3Rvb2wvcGFja2FnZV9jb25maWcuanNvbicpLAogICk7CiAgaWYgKCFwYWNrYWdlQ29uZmlnRmlsZS5leGlzdHNTeW5jKCkpIHJldHVybiBudWxsOwoKICB0cnkgewogICAgZmluYWwgY29udGVudCA9IHBhY2thZ2VDb25maWdGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICAgIHJldHVybiBQYWNrYWdlQ29uZmlnLnBhcnNlU3RyaW5nKGNvbnRlbnQsIHBhY2thZ2VDb25maWdGaWxlLnVyaSk7CiAgfSBvbiBFeGNlcHRpb24gewogICAgcmV0dXJuIG51bGw7CiAgfQp9Cg==", + "type": "text" + }, + { + "path": "build/lib/src/get_package_graph.dart", + "data": + "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CgpQYWNrYWdlR3JhcGg/IGdldFBhY2thZ2VHcmFwaChTdHJpbmcgd29ya3NwYWNlUm9vdCkgewogIHRyeSB7CiAgICByZXR1cm4gUGFja2FnZUdyYXBoLmxvYWQod29ya3NwYWNlUm9vdCk7CiAgfSBvbiBFeGNlcHRpb24gewogICAgcmV0dXJuIG51bGw7CiAgfQp9Cg==", + "type": "text" + }, + { + "path": "build/lib/src/get_pubspec_lock.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3Mvc3JjL3B1YnNwZWNfbG9jay9wdWJzcGVjX2xvY2suZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCkZ1dHVyZTxQdWJzcGVjTG9jaz4gZ2V0UHVic3BlY0xvY2soCiAgU3RyaW5nIHdvcmtpbmdEaXJlY3RvcnksIHsKICBwYXRoLkNvbnRleHQ/IHBhdGhDb250ZXh0LAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aENvbnRleHQgPz8gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrRmlsZSA9IEZpbGUoCiAgICB3b3JraW5nRGlyZWN0b3J5LmlzRW1wdHkKICAgICAgICA/ICdwdWJzcGVjLmxvY2snCiAgICAgICAgOiBwYXRoUmVzb2x2ZXIuam9pbih3b3JraW5nRGlyZWN0b3J5LCAncHVic3BlYy5sb2NrJyksCiAgKTsKCiAgZmluYWwgY29udGVudCA9IGF3YWl0IHB1YnNwZWNMb2NrRmlsZS5yZWFkQXNTdHJpbmcoKTsKICByZXR1cm4gUHVic3BlY0xvY2suZnJvbVN0cmluZyhjb250ZW50KTsKfQo=", + "type": "text" + }, + { + "path": "build/lib/src/get_workspace_root.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKaW1wb3J0ICdwYWNrYWdlOnlhbWwveWFtbC5kYXJ0JzsKCi8vLyBSZXR1cm5zIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgbmVhcmVzdCBEYXJ0IHdvcmtzcGFjZS4KRGlyZWN0b3J5PyBnZXRXb3Jrc3BhY2VSb290KFN0cmluZyB3b3JraW5nRGlyZWN0b3J5KSB7CiAgZmluYWwgZmlsZSA9IF9maW5kTmVhcmVzdEFuY2VzdG9yKAogICAgd2hlcmU6IChwYXRoKSA9PiBfZ2V0V29ya3NwYWNlUm9vdFB1YnNwZWNZYW1sKGN3ZDogRGlyZWN0b3J5KHBhdGgpKSwKICAgIGN3ZDogRGlyZWN0b3J5KHdvcmtpbmdEaXJlY3RvcnkpLAogICk7CiAgaWYgKGZpbGUgPT0gbnVsbCB8fCAhZmlsZS5leGlzdHNTeW5jKCkpIHJldHVybiBudWxsOwogIHJldHVybiBEaXJlY3RvcnkocGF0aC5kaXJuYW1lKGZpbGUucGF0aCkpOwp9CgovLy8gVGhlIHdvcmtzcGFjZSByb290IGBwdWJzcGVjLnlhbWxgIGZpbGUgZm9yIHRoaXMgcHJvamVjdC4KRmlsZT8gX2dldFdvcmtzcGFjZVJvb3RQdWJzcGVjWWFtbCh7cmVxdWlyZWQgRGlyZWN0b3J5IGN3ZH0pIHsKICB0cnkgewogICAgZmluYWwgcHVic3BlY1lhbWxGaWxlID0gRmlsZShwYXRoLmpvaW4oY3dkLnBhdGgsICdwdWJzcGVjLnlhbWwnKSk7CiAgICBpZiAoIXB1YnNwZWNZYW1sRmlsZS5leGlzdHNTeW5jKCkpIHJldHVybiBudWxsOwogICAgZmluYWwgcHVic3BlYyA9IGxvYWRZYW1sKHB1YnNwZWNZYW1sRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogICAgaWYgKHB1YnNwZWMgaXMhIFlhbWxNYXApIHJldHVybiBudWxsOwogICAgZmluYWwgd29ya3NwYWNlID0gcHVic3BlY1snd29ya3NwYWNlJ10gYXMgTGlzdD87CiAgICBpZiAod29ya3NwYWNlPy5pc0VtcHR5ID8/IHRydWUpIHJldHVybiBudWxsOwogICAgcmV0dXJuIHB1YnNwZWNZYW1sRmlsZTsKICB9IG9uIEV4Y2VwdGlvbiB7CiAgICByZXR1cm4gbnVsbDsKICB9Cn0KCi8vLyBGaW5kcyBuZWFyZXN0IGFuY2VzdG9yIGZpbGUKLy8vIHJlbGF0aXZlIHRvIHRoZSBbY3dkXSB0aGF0IHNhdGlzZmllcyBbd2hlcmVdLgpGaWxlPyBfZmluZE5lYXJlc3RBbmNlc3Rvcih7CiAgcmVxdWlyZWQgRmlsZT8gRnVuY3Rpb24oU3RyaW5nIHBhdGgpIHdoZXJlLAogIHJlcXVpcmVkIERpcmVjdG9yeSBjd2QsCn0pIHsKICBEaXJlY3Rvcnk/IHByZXY7CiAgdmFyIGRpciA9IGN3ZDsKICB3aGlsZSAocHJldj8ucGF0aCAhPSBkaXIucGF0aCkgewogICAgZmluYWwgZmlsZSA9IHdoZXJlKGRpci5wYXRoKTsKICAgIGlmIChmaWxlPy5leGlzdHNTeW5jKCkgPz8gZmFsc2UpIHJldHVybiBmaWxlOwogICAgcHJldiA9IGRpcjsKICAgIGRpciA9IGRpci5wYXJlbnQ7CiAgfQogIHJldHVybiBudWxsOwp9Cg==", + "type": "text" + }, + { + "path": "build/lib/src/package_graph/package_graph.dart", + "data": + "aW1wb3J0ICdkYXJ0OmNvbnZlcnQnOwppbXBvcnQgJ2RhcnQ6aW8nOwoKaW1wb3J0ICdwYWNrYWdlOmpzb25fYW5ub3RhdGlvbi9qc29uX2Fubm90YXRpb24uZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCnBhcnQgJ3BhY2thZ2VfZ3JhcGguZy5kYXJ0JzsKCi8vLyB7QHRlbXBsYXRlIHBhY2thZ2VfZ3JhcGh9Ci8vLyBBIERhcnQgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGRlc2VyaWFsaXplZCBjb250ZW50cyBvZiB0aGUgcGFja2FnZV9ncmFwaC5qc29uCi8vLyB7QGVuZHRlbXBsYXRlfQpASnNvblNlcmlhbGl6YWJsZSgpCmNsYXNzIFBhY2thZ2VHcmFwaCB7CiAgLy8vIHtAbWFjcm8gcGFja2FnZV9ncmFwaH0KICBjb25zdCBQYWNrYWdlR3JhcGgoewogICAgcmVxdWlyZWQgdGhpcy5yb290cywKICAgIHJlcXVpcmVkIHRoaXMucGFja2FnZXMsCiAgICByZXF1aXJlZCB0aGlzLmNvbmZpZ1ZlcnNpb24sCiAgfSk7CgogIC8vLyBMb2FkIGEgW1BhY2thZ2VHcmFwaF0gZnJvbSB0aGUgcHJvdmlkZWQgW3Byb2plY3RdIHJvb3QuCiAgZmFjdG9yeSBQYWNrYWdlR3JhcGgubG9hZChTdHJpbmcgcHJvamVjdCkgewogICAgZmluYWwgZmlsZSA9IEZpbGUocGF0aC5qb2luKHByb2plY3QsICcuZGFydF90b29sJywgJ3BhY2thZ2VfZ3JhcGguanNvbicpKTsKICAgIGlmICghZmlsZS5leGlzdHNTeW5jKCkpIHRocm93IEV4Y2VwdGlvbignJHtmaWxlLnBhdGh9IG5vdCBmb3VuZCcpOwogICAgcmV0dXJuIFBhY2thZ2VHcmFwaC5mcm9tSnNvbigKICAgICAganNvbkRlY29kZShmaWxlLnJlYWRBc1N0cmluZ1N5bmMoKSkgYXMgTWFwPFN0cmluZywgZHluYW1pYz4sCiAgICApOwogIH0KCiAgLy8vIENyZWF0ZSBhIFtQYWNrYWdlR3JhcGhdIGZyb20gYSBbTWFwXS4KICBmYWN0b3J5IFBhY2thZ2VHcmFwaC5mcm9tSnNvbihNYXA8U3RyaW5nLCBkeW5hbWljPiBqc29uKSA9PgogICAgICBfJFBhY2thZ2VHcmFwaEZyb21Kc29uKGpzb24pOwoKICAvLy8gVGhlIHJvb3Qgbm9kZXMgb2YgdGhlIHBhY2thZ2UgZ3JhcGguCiAgZmluYWwgTGlzdDxTdHJpbmc+IHJvb3RzOwoKICAvLy8gQSBsaXN0IG9mIHBhY2thZ2VzIGZvciB0aGUgZ2l2ZW4gcGFja2FnZSBncmFwaC4KICBmaW5hbCBMaXN0PFBhY2thZ2VHcmFwaFBhY2thZ2U+IHBhY2thZ2VzOwoKICAvLy8gVGhlIGNvbmZpZyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGdyYXBoLgogIGZpbmFsIGludCBjb25maWdWZXJzaW9uOwp9CgovLy8ge0B0ZW1wbGF0ZSBwYWNrYWdlX2dyYXBoX3BhY2thZ2V9Ci8vLyBBbiBpbmRpdmlkdWFsIHBhY2thZ2UgaW4gYSBwYWNrYWdlIGdyYXBoLgovLy8ge0BlbmR0ZW1wbGF0ZX0KQEpzb25TZXJpYWxpemFibGUoKQpjbGFzcyBQYWNrYWdlR3JhcGhQYWNrYWdlIHsKICAvLy8ge0BtYWNybyBwYWNrYWdlX2dyYXBoX3BhY2thZ2V9CiAgY29uc3QgUGFja2FnZUdyYXBoUGFja2FnZSh7CiAgICByZXF1aXJlZCB0aGlzLm5hbWUsCiAgICByZXF1aXJlZCB0aGlzLnZlcnNpb24sCiAgICByZXF1aXJlZCB0aGlzLmRlcGVuZGVuY2llcywKICAgIHJlcXVpcmVkIHRoaXMuZGV2RGVwZW5kZW5jaWVzLAogIH0pOwoKICAvLy8gQ3JlYXRlIGEgW1BhY2thZ2VHcmFwaFBhY2thZ2VdIGZyb20gYSBbTWFwXS4KICBmYWN0b3J5IFBhY2thZ2VHcmFwaFBhY2thZ2UuZnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICAgXyRQYWNrYWdlR3JhcGhQYWNrYWdlRnJvbUpzb24oanNvbik7CgogIC8vLyBUaGUgbmFtZSBvZiB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgbmFtZTsKCiAgLy8vIFRoZSB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLgogIGZpbmFsIFN0cmluZyB2ZXJzaW9uOwoKICAvLy8gVGhlIGxpc3Qgb2YgcGFja2FnZSBuYW1lcyB0aGF0IHRoaXMgcGFja2FnZSBkZXBlbmRzIG9uIGluIHByb2R1Y3Rpb24uCiAgQEpzb25LZXkoZGVmYXVsdFZhbHVlOiA8U3RyaW5nPltdKQogIGZpbmFsIExpc3Q8U3RyaW5nPiBkZXBlbmRlbmNpZXM7CgogIC8vLyBUaGUgbGlzdCBvZiBwYWNrYWdlIG5hbWVzIHRoYXQgdGhpcyBwYWNrYWdlIGRlcGVuZHMgb24gaW4gZGV2ZWxvcG1lbnQuCiAgQEpzb25LZXkoZGVmYXVsdFZhbHVlOiA8U3RyaW5nPltdKQogIGZpbmFsIExpc3Q8U3RyaW5nPiBkZXZEZXBlbmRlbmNpZXM7Cn0K", + "type": "text" + }, + { + "path": "build/lib/src/package_graph/package_graph.g.dart", + "data": + "Ly8gR0VORVJBVEVEIENPREUgLSBETyBOT1QgTU9ESUZZIEJZIEhBTkQKCi8vIGlnbm9yZV9mb3JfZmlsZTogdHlwZT1saW50CgpwYXJ0IG9mICdwYWNrYWdlX2dyYXBoLmRhcnQnOwoKLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLy8gSnNvblNlcmlhbGl6YWJsZUdlbmVyYXRvcgovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKUGFja2FnZUdyYXBoIF8kUGFja2FnZUdyYXBoRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoJywKICAgICAganNvbiwKICAgICAgKCRjaGVja2VkQ29udmVydCkgewogICAgICAgIGZpbmFsIHZhbCA9IFBhY2thZ2VHcmFwaCgKICAgICAgICAgIHJvb3RzOiAkY2hlY2tlZENvbnZlcnQoJ3Jvb3RzJywKICAgICAgICAgICAgICAodikgPT4gKHYgYXMgTGlzdDxkeW5hbWljPikubWFwKChlKSA9PiBlIGFzIFN0cmluZykudG9MaXN0KCkpLAogICAgICAgICAgcGFja2FnZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAncGFja2FnZXMnLAogICAgICAgICAgICAgICh2KSA9PiAodiBhcyBMaXN0PGR5bmFtaWM+KQogICAgICAgICAgICAgICAgICAubWFwKChlKSA9PgogICAgICAgICAgICAgICAgICAgICAgUGFja2FnZUdyYXBoUGFja2FnZS5mcm9tSnNvbihlIGFzIE1hcDxTdHJpbmcsIGR5bmFtaWM+KSkKICAgICAgICAgICAgICAgICAgLnRvTGlzdCgpKSwKICAgICAgICAgIGNvbmZpZ1ZlcnNpb246CiAgICAgICAgICAgICAgJGNoZWNrZWRDb252ZXJ0KCdjb25maWdWZXJzaW9uJywgKHYpID0+ICh2IGFzIG51bSkudG9JbnQoKSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsKClBhY2thZ2VHcmFwaFBhY2thZ2UgXyRQYWNrYWdlR3JhcGhQYWNrYWdlRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoUGFja2FnZScsCiAgICAgIGpzb24sCiAgICAgICgkY2hlY2tlZENvbnZlcnQpIHsKICAgICAgICBmaW5hbCB2YWwgPSBQYWNrYWdlR3JhcGhQYWNrYWdlKAogICAgICAgICAgbmFtZTogJGNoZWNrZWRDb252ZXJ0KCduYW1lJywgKHYpID0+IHYgYXMgU3RyaW5nKSwKICAgICAgICAgIHZlcnNpb246ICRjaGVja2VkQ29udmVydCgndmVyc2lvbicsICh2KSA9PiB2IGFzIFN0cmluZyksCiAgICAgICAgICBkZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgICBkZXZEZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGV2RGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsK", + "type": "text" + }, + { + "path": "build/lib/src/path_dependency.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CgovLy8ge0B0ZW1wbGF0ZSBwYXRoX2RlcGVuZGVuY3l9Ci8vLyBBIHBhdGggZGVwZW5kZW5jeSB0aGF0IHRoZSBEYXJ0IEZyb2cgcHJvamVjdCByZWxpZXMgb24uCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4vbXlfcGFja2FnZQovLy8gYGBgCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQYXRoRGVwZW5kZW5jeSB7CiAgLy8vIHtAbWFjcm8gcGF0aF9kZXBlbmRlbmN5fQogIGNvbnN0IFBhdGhEZXBlbmRlbmN5KHtyZXF1aXJlZCB0aGlzLm5hbWUsIHJlcXVpcmVkIHRoaXMucGF0aH0pOwoKICAvLy8gVGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIG5hbWU7CgogIC8vLyBUaGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgcGF0aDsKfQoKLy8vIHtAdGVtcGxhdGUgZXh0ZXJuYWxfcGF0aF9kZXBlbmRlbmN5fQovLy8gQSBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3Qgd2l0aGluIHRoZSBidW5kbGVkIERhcnQgRnJvZyBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4uL215X3BhY2thZ2UKLy8vIGBgYAovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSBleHRlbmRzIFBhdGhEZXBlbmRlbmN5IHsKICAvLy8ge0BtYWNybyBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9CiAgY29uc3QgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSh7cmVxdWlyZWQgc3VwZXIubmFtZSwgcmVxdWlyZWQgc3VwZXIucGF0aH0pOwoKICAvLy8gQ29waWVzIHRoZSBbRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeV0gdG8gW3RhcmdldERpcmVjdG9yeV0uCiAgRnV0dXJlPEV4dGVybmFsUGF0aERlcGVuZGVuY3k+IGNvcHlUbyh7CiAgICByZXF1aXJlZCBEaXJlY3RvcnkgdGFyZ2V0RGlyZWN0b3J5LAogICAgQ29weVBhdGggY29weVBhdGggPSBpby5jb3B5UGF0aCwKICB9KSBhc3luYyB7CiAgICBhd2FpdCBjb3B5UGF0aChwYXRoLCB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeShuYW1lOiBuYW1lLCBwYXRoOiB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgfQp9Cg==", + "type": "text" + }, + { + "path": "build/lib/src/pubspec_lock/pubspec_lock.dart", + "data": + "aW1wb3J0ICdkYXJ0OmNvbGxlY3Rpb24nOwoKaW1wb3J0ICdwYWNrYWdlOmVxdWF0YWJsZS9lcXVhdGFibGUuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfcGFyc2VfZXhjZXB0aW9ufQovLy8gVGhyb3duIHdoZW4gYSBbUHVic3BlY0xvY2tdIGZhaWxzIHRvIHBhcnNlLgovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgUHVic3BlY0xvY2tQYXJzZUV4Y2VwdGlvbiBpbXBsZW1lbnRzIEV4Y2VwdGlvbiB7CiAgLy8vIHtAbWFjcm8gcHVic3BlY19sb2NrX3BhcnNlX2V4Y2VwdGlvbn0KICBjb25zdCBQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uKCk7Cn0KCi8vLyBBIHJlcHJlc2VudGF0aW9uIG9mIGEgcHVic3BlYy5sb2NrIGZpbGUuCmNsYXNzIFB1YnNwZWNMb2NrIHsKICBjb25zdCBQdWJzcGVjTG9jay5fKHsKICAgIHJlcXVpcmVkIHRoaXMucGFja2FnZXMsCiAgfSk7CgogIC8vLyBQYXJzZXMgYSBbUHVic3BlY0xvY2tdIGZyb20gYSBzdHJpbmcuCiAgLy8vCiAgLy8vIElmIG5vIHBhY2thZ2VzIGFyZSBmb3VuZCwgYW4gZW1wdHkgW1B1YnNwZWNMb2NrXSBpcyByZXR1cm5lZC4gVGhvc2UKICAvLy8gcGFja2FnZXMgZW50cmllcyB0aGF0IGNhbm5vdCBiZSBwYXJzZWQgYXJlIGlnbm9yZWQuCiAgLy8vCiAgLy8vIEl0IHRocm93cyBhIFtQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uXSBpZiB0aGUgc3RyaW5nIGNhbm5vdCBiZSBwYXJzZWQKICAvLy8gYXMgYSBbWWFtbE1hcF0uCiAgZmFjdG9yeSBQdWJzcGVjTG9jay5mcm9tU3RyaW5nKFN0cmluZyBjb250ZW50KSB7CiAgICBsYXRlIGZpbmFsIFlhbWxNYXAgeWFtbDsKICAgIHRyeSB7CiAgICAgIHlhbWwgPSBsb2FkWWFtbChjb250ZW50KSBhcyBZYW1sTWFwOwogICAgICAvLyBpZ25vcmluZyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQogICAgICAvLyBpZ25vcmU6IGF2b2lkX2NhdGNoZXNfd2l0aG91dF9vbl9jbGF1c2VzCiAgICB9IGNhdGNoIChfKSB7CiAgICAgIHRocm93IGNvbnN0IFB1YnNwZWNMb2NrUGFyc2VFeGNlcHRpb24oKTsKICAgIH0KCiAgICBpZiAoIXlhbWwuY29udGFpbnNLZXkoJ3BhY2thZ2VzJykpIHsKICAgICAgcmV0dXJuIFB1YnNwZWNMb2NrLmVtcHR5OwogICAgfQoKICAgIGZpbmFsIHBhY2thZ2VzID0geWFtbFsncGFja2FnZXMnXSBhcyBZYW1sTWFwOwoKICAgIGZpbmFsIHBhcnNlZFBhY2thZ2VzID0gPFB1YnNwZWNMb2NrUGFja2FnZT5bXTsKICAgIGZvciAoZmluYWwgZW50cnkgaW4gcGFja2FnZXMuZW50cmllcykgewogICAgICB0cnkgewogICAgICAgIGZpbmFsIHBhY2thZ2UgPSBQdWJzcGVjTG9ja1BhY2thZ2UuZnJvbVlhbWxNYXAoCiAgICAgICAgICBuYW1lOiBlbnRyeS5rZXkgYXMgU3RyaW5nLAogICAgICAgICAgZGF0YTogZW50cnkudmFsdWUgYXMgWWFtbE1hcCwKICAgICAgICApOwogICAgICAgIHBhcnNlZFBhY2thZ2VzLmFkZChwYWNrYWdlKTsKICAgICAgICAvLyBpZ25vcmluZyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQogICAgICAgIC8vIGlnbm9yZTogYXZvaWRfY2F0Y2hlc193aXRob3V0X29uX2NsYXVzZXMKICAgICAgfSBjYXRjaCAoXykgewogICAgICAgIC8vIElnbm9yZSB0aG9zZSBwYWNrYWdlcyB0aGF0IGZvciBzb21lIHJlYXNvbiBjYW5ub3QgYmUgcGFyc2VkLgogICAgICB9CiAgICB9CgogICAgcmV0dXJuIFB1YnNwZWNMb2NrLl8oCiAgICAgIHBhY2thZ2VzOiBVbm1vZGlmaWFibGVMaXN0VmlldyhwYXJzZWRQYWNrYWdlcyksCiAgICApOwogIH0KCiAgLy8vIEFuIGVtcHR5IFtQdWJzcGVjTG9ja10uCiAgc3RhdGljIFB1YnNwZWNMb2NrIGVtcHR5ID0gUHVic3BlY0xvY2suXygKICAgIHBhY2thZ2VzOiBVbm1vZGlmaWFibGVMaXN0VmlldyhbXSksCiAgKTsKCiAgLy8vIEFsbCB0aGUgZGVwZW5kZW5jaWVzIGluIHRoZSBwdWJzcGVjLmxvY2sgZmlsZS4KICBmaW5hbCBVbm1vZGlmaWFibGVMaXN0VmlldzxQdWJzcGVjTG9ja1BhY2thZ2U+IHBhY2thZ2VzOwp9CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeX0KLy8vIEEgcmVwcmVzZW50YXRpb24gb2YgYSBkZXBlbmRlbmN5IGluIGEgcHVic3BlYy5sb2NrIGZpbGUuCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQdWJzcGVjTG9ja1BhY2thZ2UgZXh0ZW5kcyBFcXVhdGFibGUgewogIC8vLyB7QG1hY3JvIHB1YnNwZWNfbG9ja19kZXBlbmRlbmN5fQogIGNvbnN0IFB1YnNwZWNMb2NrUGFja2FnZSh7CiAgICByZXF1aXJlZCB0aGlzLm5hbWUsCiAgICByZXF1aXJlZCB0aGlzLnR5cGUsCiAgICB0aGlzLnBhdGhEZXNjcmlwdGlvbiwKICB9KTsKCiAgLy8vIFBhcnNlcyBhIFtQdWJzcGVjTG9ja1BhY2thZ2VdIGZyb20gYSBbWWFtbE1hcF0uCiAgZmFjdG9yeSBQdWJzcGVjTG9ja1BhY2thZ2UuZnJvbVlhbWxNYXAoewogICAgcmVxdWlyZWQgU3RyaW5nIG5hbWUsCiAgICByZXF1aXJlZCBZYW1sTWFwIGRhdGEsCiAgfSkgewogICAgZmluYWwgZGVwZW5kZW5jeSA9IGRhdGFbJ2RlcGVuZGVuY3knXSBhcyBTdHJpbmc7CiAgICBmaW5hbCBkZXBlbmRlbmN5VHlwZSA9IFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLnBhcnNlKGRlcGVuZGVuY3kpOwoKICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gZGF0YVsnZGVzY3JpcHRpb24nXSBhcyBZYW1sTWFwPzsKICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uICE9IG51bGwKICAgICAgICA/IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRlc2NyaXB0aW9uKQogICAgICAgIDogbnVsbDsKCiAgICByZXR1cm4gUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICBuYW1lOiBuYW1lLAogICAgICB0eXBlOiBkZXBlbmRlbmN5VHlwZSwKICAgICAgcGF0aERlc2NyaXB0aW9uOiBwYXRoRGVzY3JpcHRpb24sCiAgICApOwogIH0KCiAgLy8vIFRoZSBuYW1lIG9mIHRoZSBkZXBlbmRlbmN5LgogIGZpbmFsIFN0cmluZyBuYW1lOwoKICAvLy8ge0BtYWNybyBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeV90eXBlfQogIGZpbmFsIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlIHR5cGU7CgogIC8vLyB7QG1hY3JvIHB1YnNwZWNfcGFja2FnZV9wYXRoX2Rlc2NyaXB0aW9ufQogIGZpbmFsIFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uPyBwYXRoRGVzY3JpcHRpb247CgogIEBvdmVycmlkZQogIExpc3Q8T2JqZWN0Pz4gZ2V0IHByb3BzID0+IFtuYW1lLCB0eXBlLCBwYXRoRGVzY3JpcHRpb25dOwp9CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeV90eXBlfQovLy8gVGhlIHR5cGUgb2YgYSBbUHVic3BlY0xvY2tQYWNrYWdlXS4KLy8vIHtAZW5kdGVtcGxhdGV9CmVudW0gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUgewogIC8vLyBBbm90aGVyIHBhY2thZ2UgdGhhdCB5b3VyIHBhY2thZ2UgbmVlZHMgdG8gd29yay4KICAvLy8KICAvLy8gU2VlIGFsc286CiAgLy8vCiAgLy8vICogW0RhcnQncyBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2RlcGVuZGVuY2llcykKICBkaXJlY3RNYWluLl8oJ2RpcmVjdCBtYWluJyksCgogIC8vLyBBbm90aGVyIHBhY2thZ2UgdGhhdCB5b3VyIHBhY2thZ2UgbmVlZHMgZHVyaW5nIGRldmVsb3BtZW50LgogIC8vLwogIC8vLyBTZWUgYWxzbzoKICAvLy8KICAvLy8gKiBbRGFydCdzIGRldmVsb3BlciBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2RlcGVuZGVuY2llcyNkZXYtZGVwZW5kZW5jaWVzKQogIGRpcmVjdERldi5fKCdkaXJlY3QgZGV2JyksCgogIC8vLyBBIGRlcGVuZGVuY3kgdGhhdCB5b3VyIHBhY2thZ2UgaW5kaXJlY3RseSB1c2VzIGJlY2F1c2Ugb25lIG9mIGl0cwogIC8vLyBkZXBlbmRlbmNpZXMgcmVxdWlyZXMgaXQuCiAgLy8vCiAgLy8vIFNlZSBhbHNvOgogIC8vLwogIC8vLyAqIFtEYXJ0J3MgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2dsb3NzYXJ5I3RyYW5zaXRpdmUtKQogIHRyYW5zaXRpdmUuXygndHJhbnNpdGl2ZScpLAoKICAvLy8gIEEgZGVwZW5kZW5jeSB0aGF0IHlvdXIgcGFja2FnZSBvdmVycmlkZXMgdGhhdCBpcyBub3QgYWxyZWFkeSBhCiAgLy8vIGBkaXJlY3QgbWFpbmAgb3IgYGRpcmVjdCBkZXZgIGRlcGVuZGVuY3kuCiAgLy8vCiAgLy8vIFNlZSBhbHNvOgogIC8vLwogIC8vLyAqIFtEYXJ0J3MgZGVwZW5kZW5jeSBvdmVycmlkZSBkb2N1bWVudGF0aW9uXShodHRwczovL2RhcnQuZGV2L3Rvb2xzL3B1Yi9kZXBlbmRlbmNpZXMjZGVwZW5kZW5jeS1vdmVycmlkZXMpCiAgZGlyZWN0T3ZlcnJpZGRlbi5fKCdkaXJlY3Qgb3ZlcnJpZGRlbicpOwoKICBjb25zdCBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5fKHRoaXMudmFsdWUpOwoKICAvLy8gUGFyc2VzIGEgW1B1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlXSBmcm9tIGEgc3RyaW5nLgogIC8vLwogIC8vLyBUaHJvd3MgYW4gW0FyZ3VtZW50RXJyb3JdIGlmIHRoZSBzdHJpbmcgaXMgbm90IGEgdmFsaWQgZGVwZW5kZW5jeSB0eXBlLgogIGZhY3RvcnkgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoU3RyaW5nIHZhbHVlKSB7CiAgICBpZiAoX3ZhbHVlTWFwLmNvbnRhaW5zS2V5KHZhbHVlKSkgewogICAgICByZXR1cm4gX3ZhbHVlTWFwW3ZhbHVlXSE7CiAgICB9CgogICAgdGhyb3cgQXJndW1lbnRFcnJvci52YWx1ZSgKICAgICAgdmFsdWUsCiAgICAgICd2YWx1ZScsCiAgICAgICdJbnZhbGlkIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlIHZhbHVlLicsCiAgICApOwogIH0KCiAgc3RhdGljIE1hcDxTdHJpbmcsIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlPiBfdmFsdWVNYXAgPSB7CiAgICBmb3IgKGZpbmFsIHR5cGUgaW4gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudmFsdWVzKQogICAgICB0eXBlLnZhbHVlOiB0eXBlLAogIH07CgogIC8vLyBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBbUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGVdCiAgLy8vIGFzIGl0IGFwcGVhcnMgaW4gYSBwdWJzcGVjLmxvY2sgZmlsZS4KICBmaW5hbCBTdHJpbmcgdmFsdWU7Cn0KCi8vLyB7QHRlbXBsYXRlIHB1YnNwZWNfcGFja2FnZV9wYXRoX2Rlc2NyaXB0aW9ufQovLy8gVGhlIGRlc2NyaXB0aW9uIG9mIGEgcGF0aCBkZXBlbmRlbmN5IGluIGEgcHVic3BlYy5sb2NrIGZpbGUuCi8vLwovLy8gRm9yIGV4YW1wbGUsIGluOgovLy8gYGBgeWFtbAovLy8gbXlfcGFja2FnZToKLy8vICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgovLy8gICBkZXNjcmlwdGlvbjoKLy8vICAgICBwYXRoOiAicGFja2FnZXMvbXlfcGFja2FnZSIKLy8vICAgICByZWxhdGl2ZTogdHJ1ZQovLy8gICBzb3VyY2U6IHBhdGgKLy8vICAgdmVyc2lvbjogIjEuMC4wKzEiCi8vLyBgYGAKLy8vCi8vLyBUaGUgZGVzY3JpcHRpb24gaXM6Ci8vLyBgYGB5YW1sCi8vLyBwYXRoOiAicGFja2FnZXMvbXlfcGFja2FnZSIKLy8vIHJlbGF0aXZlOiB0cnVlCi8vLyBgYGAKLy8vCi8vLyBTZWUgYWxzbzoKLy8vCi8vLyAqIFtQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbi50cnlQYXJzZV0sIHdoaWNoIGF0dGVtcHRzIHRvIHBhcnNlcyBhCi8vLyBbWWFtbE1hcF0gaW50byBhIFtQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbl0uCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbiBleHRlbmRzIEVxdWF0YWJsZSB7CiAgY29uc3QgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oewogICAgcmVxdWlyZWQgdGhpcy5wYXRoLAogICAgcmVxdWlyZWQgdGhpcy5yZWxhdGl2ZSwKICB9KTsKCiAgLy8vIEF0dGVtcHRzIHRvIHBhcnNlIGEgW1lhbWxNYXBdIGludG8gYSBbUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb25dLgogIC8vLwogIC8vLyBSZXR1cm5zIGBudWxsYCBpZiB0aGUgW1lhbWxNYXBdIGRvZXMgbm90IGNvbnRhaW4gdGhlIHJlcXVpcmVkIGRhdGEKICAvLy8gdG8gY3JlYXRlIGEgW1B1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uXS4KICBzdGF0aWMgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24/IHRyeVBhcnNlKFlhbWxNYXAgZGF0YSkgewogICAgaWYgKCghZGF0YS5jb250YWluc0tleSgncGF0aCcpIHx8IGRhdGFbJ3BhdGgnXSBpcyEgU3RyaW5nKSB8fAogICAgICAgICghZGF0YS5jb250YWluc0tleSgncmVsYXRpdmUnKSB8fCBkYXRhWydyZWxhdGl2ZSddIGlzISBib29sKSkgewogICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBmaW5hbCBwYXRoID0gZGF0YVsncGF0aCddIGFzIFN0cmluZzsKICAgIGZpbmFsIHJlbGF0aXZlID0gZGF0YVsncmVsYXRpdmUnXSBhcyBib29sOwoKICAgIHJldHVybiBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbigKICAgICAgcGF0aDogcGF0aCwKICAgICAgcmVsYXRpdmU6IHJlbGF0aXZlLAogICAgKTsKICB9CgogIGZpbmFsIFN0cmluZyBwYXRoOwogIGZpbmFsIGJvb2wgcmVsYXRpdmU7CgogIEBvdmVycmlkZQogIExpc3Q8T2JqZWN0Pz4gZ2V0IHByb3BzID0+IFtwYXRoLCByZWxhdGl2ZV07Cn0K", + "type": "text" + }, + { + "path": "build/lib/src/uses_workspace_resolution.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CgovLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBwcm9qZWN0IGluIHRoZSBwcm92aWRlZCBbd29ya2luZ0RpcmVjdG9yeV0KLy8vIGlzIGNvbmZpZ3VyZWQgdG8gdXNlIGByZXNvbHV0aW9uOiB3b3Jrc3BhY2VgLgpib29sIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBTdHJpbmcgd29ya2luZ0RpcmVjdG9yeSwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIHB1YnNwZWNGaWxlID0gRmlsZShwYXRoLmpvaW4od29ya2luZ0RpcmVjdG9yeSwgJ3B1YnNwZWMueWFtbCcpKTsKICBpZiAoIXB1YnNwZWNGaWxlLmV4aXN0c1N5bmMoKSkgcmV0dXJuIGZhbHNlOwoKICBmaW5hbCBZYW1sTWFwIHB1YnNwZWM7CiAgdHJ5IHsKICAgIGZpbmFsIHlhbWwgPSBsb2FkWWFtbChwdWJzcGVjRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogICAgaWYgKHlhbWwgaXMhIFlhbWxNYXApIHsKICAgICAgdGhyb3cgRXhjZXB0aW9uKCdVbmFibGUgdG8gcGFyc2UgJHtwdWJzcGVjRmlsZS5wYXRofScpOwogICAgfQogICAgcHVic3BlYyA9IHlhbWw7CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGUpIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGUnKTsKICAgIGV4aXQoMSk7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICByZXR1cm4gcHVic3BlY1sncmVzb2x1dGlvbiddID09ICd3b3Jrc3BhY2UnOwp9Cg==", + "type": "text" + }, + { + "path": "build/post_gen.dart", + "data": + "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcgc2hvdyBIb29rQ29udGV4dCwgbGlnaHRDeWFuOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpID0+IHBvc3RHZW4oY29udGV4dCk7CgpGdXR1cmU8dm9pZD4gcG9zdEdlbigKICBIb29rQ29udGV4dCBjb250ZXh0LCB7CiAgaW8uRGlyZWN0b3J5PyBkaXJlY3RvcnksCiAgUHJvY2Vzc1J1bm5lciBydW5Qcm9jZXNzID0gaW8uUHJvY2Vzcy5ydW4sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBkZWZhdWx0RXhpdCwKfSkgYXN5bmMgewogIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBkaXJlY3RvcnkgPz8gaW8uRGlyZWN0b3J5LmN1cnJlbnQ7CiAgZmluYWwgYnVpbGREaXJlY3RvcnlQYXRoID0gcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJyk7CgogIGF3YWl0IGRhcnRQdWJHZXQoCiAgICBjb250ZXh0LAogICAgd29ya2luZ0RpcmVjdG9yeTogYnVpbGREaXJlY3RvcnlQYXRoLAogICAgcnVuUHJvY2VzczogcnVuUHJvY2VzcywKICAgIGV4aXQ6IGV4aXQsCiAgKTsKCiAgZmluYWwgcmVsYXRpdmVCdWlsZFBhdGggPSBwYXRoLnJlbGF0aXZlKGJ1aWxkRGlyZWN0b3J5UGF0aCk7CiAgY29udGV4dC5sb2dnZXIKICAgIC4uaW5mbygnJykKICAgIC4uc3VjY2VzcygnQ3JlYXRlZCBhIHByb2R1Y3Rpb24gYnVpbGQhJykKICAgIC4uaW5mbygnJykKICAgIC4uaW5mbygnU3RhcnQgdGhlIHByb2R1Y3Rpb24gc2VydmVyIGJ5IHJ1bm5pbmc6JykKICAgIC4uaW5mbygnJykKICAgIC4uaW5mbygKICAgICAgJycnJHtsaWdodEN5YW4ud3JhcCgnZGFydCAke3BhdGguam9pbihyZWxhdGl2ZUJ1aWxkUGF0aCwgJ2JpbicsICdzZXJ2ZXIuZGFydCcpfScpfScnJywKICAgICk7Cn0K", + "type": "text" + }, + { + "path": "build/pre_gen.dart", + "data": + "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW9fZXhwYW5kZWQ7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JwogICAgc2hvdyBIb29rQ29udGV4dCwgZGVmYXVsdEZvcmVncm91bmQsIGxpZ2h0Q3lhbjsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKdHlwZWRlZiBSb3V0ZUNvbmZpZ3VyYXRpb25CdWlsZGVyID0gUm91dGVDb25maWd1cmF0aW9uIEZ1bmN0aW9uKAogIGlvLkRpcmVjdG9yeSBkaXJlY3RvcnksCik7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpID0+IHByZUdlbihjb250ZXh0KTsKCkZ1dHVyZTx2b2lkPiBwcmVHZW4oCiAgSG9va0NvbnRleHQgY29udGV4dCwgewogIGlvLkRpcmVjdG9yeT8gZGlyZWN0b3J5LAogIFByb2Nlc3NSdW5uZXIgcnVuUHJvY2VzcyA9IGlvLlByb2Nlc3MucnVuLAogIFJvdXRlQ29uZmlndXJhdGlvbkJ1aWxkZXIgYnVpbGRDb25maWd1cmF0aW9uID0gYnVpbGRSb3V0ZUNvbmZpZ3VyYXRpb24sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBkZWZhdWx0RXhpdCwKICBGdXR1cmU8dm9pZD4gRnVuY3Rpb24oU3RyaW5nIGZyb20sIFN0cmluZyB0bykgY29weVBhdGggPSBpb19leHBhbmRlZC5jb3B5UGF0aCwKfSkgYXN5bmMgewogIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBkaXJlY3RvcnkgPz8gaW8uRGlyZWN0b3J5LmN1cnJlbnQ7CiAgZmluYWwgdXNlc1dvcmtzcGFjZXMgPSB1c2VzV29ya3NwYWNlUmVzb2x1dGlvbigKICAgIGNvbnRleHQsCiAgICB3b3JraW5nRGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBleGl0OiBleGl0LAogICk7CgogIFZvaWRDYWxsYmFjaz8gcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb247CiAgVm9pZENhbGxiYWNrPyByZXZlcnRQdWJzcGVjTG9jazsKCiAgaWYgKHVzZXNXb3Jrc3BhY2VzKSB7CiAgICBmaW5hbCB3b3Jrc3BhY2VSb290ID0gZ2V0V29ya3NwYWNlUm9vdChwcm9qZWN0RGlyZWN0b3J5LnBhdGgpOwogICAgaWYgKHdvcmtzcGFjZVJvb3QgPT0gbnVsbCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoCiAgICAgICAgJ1VuYWJsZSB0byBkZXRlcm1pbmUgd29ya3NwYWNlIHJvb3QgZm9yICR7cHJvamVjdERpcmVjdG9yeS5wYXRofScsCiAgICAgICk7CiAgICAgIHJldHVybiBleGl0KDEpOwogICAgfQoKICAgIC8vIFdlIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSBwYWNrYWdlX2NvbmZpZy5qc29uIGlzIHVwIHRvIGRhdGUuCiAgICBhd2FpdCBkYXJ0UHViR2V0KAogICAgICBjb250ZXh0LAogICAgICBtZXNzYWdlOiAnR2VuZXJhdGluZyBwYWNrYWdlIGdyYXBoJywKICAgICAgd29ya2luZ0RpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICBydW5Qcm9jZXNzOiBydW5Qcm9jZXNzLAogICAgICBleGl0OiBleGl0LAogICAgKTsKCiAgICBmaW5hbCBwYWNrYWdlQ29uZmlnID0gZ2V0UGFja2FnZUNvbmZpZyh3b3Jrc3BhY2VSb290LnBhdGgpOwogICAgaWYgKHBhY2thZ2VDb25maWcgPT0gbnVsbCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoCiAgICAgICAgJ1VuYWJsZSB0byBmaW5kIHBhY2thZ2VfY29uZmlnLmpzb24gZm9yICR7d29ya3NwYWNlUm9vdC5wYXRofScsCiAgICAgICk7CiAgICAgIHJldHVybiBleGl0KDEpOwogICAgfQoKICAgIGZpbmFsIHBhY2thZ2VHcmFwaCA9IGdldFBhY2thZ2VHcmFwaCh3b3Jrc3BhY2VSb290LnBhdGgpOwogICAgaWYgKHBhY2thZ2VHcmFwaCA9PSBudWxsKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnVW5hYmxlIHRvIGZpbmQgcGFja2FnZV9ncmFwaC5qc29uIGZvciAke3dvcmtzcGFjZVJvb3QucGF0aH0nLAogICAgICApOwogICAgICByZXR1cm4gZXhpdCgxKTsKICAgIH0KCiAgICAvLyBEaXNhYmxlIHdvcmtzcGFjZSByZXNvbHV0aW9uIHVudGlsIHdlIGNhbiBnZW5lcmF0ZSBwZXItcGFja2FnZSBsb2NrZmlsZXMuCiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZGFydC1sYW5nL3B1Yi9pc3N1ZXMvNDU5NAogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBkaXNhYmxlV29ya3NwYWNlUmVzb2x1dGlvbigKICAgICAgY29udGV4dCwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgd29ya3NwYWNlUm9vdDogd29ya3NwYWNlUm9vdC5wYXRoLAogICAgICBleGl0OiBleGl0LAogICAgKTsKICAgIC8vIENvcHkgdGhlIHB1YnNwZWMubG9jayBmcm9tIHRoZSB3b3Jrc3BhY2Ugcm9vdCB0byBlbnN1cmUgdGhlIHNhbWUgdmVyc2lvbnMKICAgIC8vIG9mIGRlcGVuZGVuY2llcyBhcmUgdXNlZCBpbiB0aGUgcHJvZHVjdGlvbiBidWlsZC4KICAgIHJldmVydFB1YnNwZWNMb2NrID0gY29weVdvcmtzcGFjZVB1YnNwZWNMb2NrKAogICAgICBjb250ZXh0LAogICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgIHdvcmtzcGFjZVJvb3Q6IHdvcmtzcGFjZVJvb3QucGF0aCwKICAgICAgZXhpdDogZXhpdCwKICAgICk7CiAgfQoKICAvLyBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBwdWJzcGVjLmxvY2sgZmlsZSBpcyB1cCB0byBkYXRlLgogIGF3YWl0IGRhcnRQdWJHZXQoCiAgICBjb250ZXh0LAogICAgbWVzc2FnZTogJ1VwZGF0aW5nIGxvY2tmaWxlJywKICAgIHdvcmtpbmdEaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgIHJ1blByb2Nlc3M6IHJ1blByb2Nlc3MsCiAgICBleGl0OiBleGl0LAogICk7CgogIGZpbmFsIGJ1aWxkRGlyZWN0b3J5ID0gaW8uRGlyZWN0b3J5KAogICAgcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJyksCiAgKTsKCiAgYXdhaXQgY3JlYXRlQnVuZGxlKAogICAgY29udGV4dDogY29udGV4dCwKICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICBidWlsZERpcmVjdG9yeTogYnVpbGREaXJlY3RvcnksCiAgICBleGl0OiBleGl0LAogICk7CgogIHJlc3RvcmVXb3Jrc3BhY2VSZXNvbHV0aW9uPy5jYWxsKCk7CgogIGZpbmFsIFJvdXRlQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uOwogIHRyeSB7CiAgICBjb25maWd1cmF0aW9uID0gYnVpbGRDb25maWd1cmF0aW9uKHByb2plY3REaXJlY3RvcnkpOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlcnJvcikgewogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZXJyb3InKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgcmVwb3J0Um91dGVDb25mbGljdHMoCiAgICBjb25maWd1cmF0aW9uLAogICAgb25Sb3V0ZUNvbmZsaWN0OiAoCiAgICAgIG9yaWdpbmFsRmlsZVBhdGgsCiAgICAgIGNvbmZsaWN0aW5nRmlsZVBhdGgsCiAgICAgIGNvbmZsaWN0aW5nRW5kcG9pbnQsCiAgICApIHsKICAgICAgY29udGV4dC5sb2dnZXIuZXJyKAogICAgICAgICcnJ1JvdXRlIGNvbmZsaWN0IGRldGVjdGVkLiAke2xpZ2h0Q3lhbi53cmFwKG9yaWdpbmFsRmlsZVBhdGgpfSBhbmQgJHtsaWdodEN5YW4ud3JhcChjb25mbGljdGluZ0ZpbGVQYXRoKX0gYm90aCByZXNvbHZlIHRvICR7bGlnaHRDeWFuLndyYXAoY29uZmxpY3RpbmdFbmRwb2ludCl9LicnJywKICAgICAgKTsKICAgIH0sCiAgICBvblZpb2xhdGlvbkVuZDogKCkgPT4gZXhpdCgxKSwKICApOwoKICByZXBvcnRSb2d1ZVJvdXRlcygKICAgIGNvbmZpZ3VyYXRpb24sCiAgICBvblJvZ3VlUm91dGU6IChmaWxlUGF0aCwgaWRlYWxQYXRoKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnJydSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcChmaWxlUGF0aCl9IHRvICR7bGlnaHRDeWFuLndyYXAoaWRlYWxQYXRoKX0uJycnLAogICAgICApOwogICAgfSwKICAgIG9uVmlvbGF0aW9uRW5kOiAoKSA9PiBleGl0KDEpLAogICk7CgogIGZpbmFsIGludGVybmFsUGF0aERlcGVuZGVuY2llcyA9IGF3YWl0IGdldEludGVybmFsUGF0aERlcGVuZGVuY2llcygKICAgIHByb2plY3REaXJlY3RvcnksCiAgKTsKCiAgZmluYWwgZXh0ZXJuYWxEZXBlbmRlbmNpZXMgPSBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgIGJ1aWxkRGlyZWN0b3J5OiBidWlsZERpcmVjdG9yeSwKICAgIGNvcHlQYXRoOiBjb3B5UGF0aCwKICApOwoKICByZXZlcnRQdWJzcGVjTG9jaz8uY2FsbCgpOwoKICBmaW5hbCBjdXN0b21Eb2NrZXJGaWxlID0gaW8uRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdEb2NrZXJmaWxlJyksCiAgKTsKICBmaW5hbCBhZGREb2NrZXJmaWxlID0gIWN1c3RvbURvY2tlckZpbGUuZXhpc3RzU3luYygpOwoKICBjb250ZXh0LnZhcnMgPSB7CiAgICAnZGlyZWN0b3JpZXMnOiBjb25maWd1cmF0aW9uLmRpcmVjdG9yaWVzCiAgICAgICAgLm1hcCgoYykgPT4gYy50b0pzb24oKSkKICAgICAgICAudG9MaXN0KCkKICAgICAgICAucmV2ZXJzZWQKICAgICAgICAudG9MaXN0KCksCiAgICAncm91dGVzJzogY29uZmlndXJhdGlvbi5yb3V0ZXMubWFwKChyKSA9PiByLnRvSnNvbigpKS50b0xpc3QoKSwKICAgICdtaWRkbGV3YXJlJzogY29uZmlndXJhdGlvbi5taWRkbGV3YXJlLm1hcCgobSkgPT4gbS50b0pzb24oKSkudG9MaXN0KCksCiAgICAnZ2xvYmFsTWlkZGxld2FyZSc6IGNvbmZpZ3VyYXRpb24uZ2xvYmFsTWlkZGxld2FyZSAhPSBudWxsCiAgICAgICAgPyBjb25maWd1cmF0aW9uLmdsb2JhbE1pZGRsZXdhcmUhLnRvSnNvbigpCiAgICAgICAgOiBmYWxzZSwKICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogY29uZmlndXJhdGlvbi5zZXJ2ZVN0YXRpY0ZpbGVzLAogICAgJ2ludm9rZUN1c3RvbUVudHJ5cG9pbnQnOiBjb25maWd1cmF0aW9uLmludm9rZUN1c3RvbUVudHJ5cG9pbnQsCiAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGNvbmZpZ3VyYXRpb24uaW52b2tlQ3VzdG9tSW5pdCwKICAgICdwYXRoRGVwZW5kZW5jaWVzJzogaW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLAogICAgJ2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzJzogZXh0ZXJuYWxEZXBlbmRlbmNpZXMuaXNOb3RFbXB0eSwKICAgICdkYXJ0VmVyc2lvbic6IGNvbnRleHQudmFyc1snZGFydFZlcnNpb24nXSwKICAgICdhZGREb2NrZXJmaWxlJzogYWRkRG9ja2VyZmlsZSwKICB9Owp9Cg==", + "type": "text" + }, + { + "path": "build/pubspec.yaml", + "data": + "bmFtZTogZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzCnB1Ymxpc2hfdG86IG5vbmUKCmVudmlyb25tZW50OgogIHNkazogIj49My4wLjAgPDQuMC4wIgoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZ19nZW46IF4yLjAuMAogIGVxdWF0YWJsZTogXjIuMC41CiAgaW86IF4xLjAuMwogIGpzb25fYW5ub3RhdGlvbjogXjQuOS4wCiAgbWFzb246IF4wLjEuMAogIHBhY2thZ2VfY29uZmlnOiBeMi4yLjAKICBwYXRoOiBeMS44LjEKICB5YW1sOiBeMy4xLjIKICB5YW1sX2VkaXQ6IF4yLjIuMgoKZGV2X2RlcGVuZGVuY2llczoKICBidWlsZF9ydW5uZXI6IF4yLjAuMAogIGpzb25fc2VyaWFsaXphYmxlOiBeNi43LjAKICBtb2NrdGFpbDogXjEuMC4wCiAgdGVzdDogXjEuMjUuMAo=", + "type": "text" + }, + { + "path": "build/test/fixtures/package_configs.dart", + "data": + "Y29uc3QgcGFja2FnZUNvbmZpZ1dpdGhEaXJlY3RBbmRUcmFuc2l0aXZlRGVwZW5kZW5jaWVzID0gJycnCnsKICAiY29uZmlnVmVyc2lvbiI6IDIsCiAgInBhY2thZ2VzIjogWwogICAgewogICAgICAibmFtZSI6ICJfZmVfYW5hbHl6ZXJfc2hhcmVkIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L19mZV9hbmFseXplcl9zaGFyZWQtODUuMC4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiYW5hbHl6ZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvYW5hbHl6ZXItNy43LjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjUiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhcmdzIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2FyZ3MtMi43LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhc3luYyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9hc3luYy0yLjEzLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJib29sZWFuX3NlbGVjdG9yIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2Jvb2xlYW5fc2VsZWN0b3ItMi4xLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjEiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjaGFyYWN0ZXJzIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2NoYXJhY3RlcnMtMS40LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbGlfY29uZmlnIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2NsaV9jb25maWctMC4yLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbG9jayIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9jbG9jay0xLjEuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImNvbGxlY3Rpb24iLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvY29sbGVjdGlvbi0xLjE5LjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb252ZXJ0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2NvbnZlcnQtMy4xLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb3ZlcmFnZSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9jb3ZlcmFnZS0xLjE1LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjcnlwdG8iLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvY3J5cHRvLTMuMC42IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiY3VwZXJ0aW5vX2ljb25zIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2N1cGVydGlub19pY29ucy0xLjAuOCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImRhcnRfZnJvZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9kYXJ0X2Zyb2ctMS4yLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmYWtlX2FzeW5jIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2Zha2VfYXN5bmMtMS4zLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmaWxlIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2ZpbGUtNy4wLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmbHV0dGVyIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC9EZXZlbG9wbWVudC9naXRodWIuY29tL2ZsdXR0ZXIvZmx1dHRlci9wYWNrYWdlcy9mbHV0dGVyIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy44IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmx1dHRlcl9saW50cyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9mbHV0dGVyX2xpbnRzLTUuMC4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmx1dHRlcl90ZXN0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC9EZXZlbG9wbWVudC9naXRodWIuY29tL2ZsdXR0ZXIvZmx1dHRlci9wYWNrYWdlcy9mbHV0dGVyX3Rlc3QiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjgiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmcm9udGVuZF9zZXJ2ZXJfY2xpZW50IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2Zyb250ZW5kX3NlcnZlcl9jbGllbnQtNC4wLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJnbG9iIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2dsb2ItMi4xLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJob3RyZWxvYWRlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9ob3RyZWxvYWRlci00LjMuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImh0dHBfbWV0aG9kcyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9odHRwX21ldGhvZHMtMS4xLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIyLjEyIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9tdWx0aV9zZXJ2ZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvaHR0cF9tdWx0aV9zZXJ2ZXItMy4yLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJodHRwX3BhcnNlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9odHRwX3BhcnNlci00LjEuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImlvIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2lvLTEuMC41IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAianMiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvanMtMC43LjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjciCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsZWFrX3RyYWNrZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbGVha190cmFja2VyLTExLjAuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImxlYWtfdHJhY2tlcl9mbHV0dGVyX3Rlc3RpbmciLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbGVha190cmFja2VyX2ZsdXR0ZXJfdGVzdGluZy0zLjAuMTAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsZWFrX3RyYWNrZXJfdGVzdGluZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9sZWFrX3RyYWNrZXJfdGVzdGluZy0zLjAuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImxpbnRzIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2xpbnRzLTUuMS4xIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy42IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibG9nZ2luZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9sb2dnaW5nLTEuMy4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibWF0Y2hlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9tYXRjaGVyLTAuMTIuMTciLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtYXRlcmlhbF9jb2xvcl91dGlsaXRpZXMiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbWF0ZXJpYWxfY29sb3JfdXRpbGl0aWVzLTAuMTEuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjIuMTciCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtZXRhIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L21ldGEtMS4xNi4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMi4xMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1pbWUiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbWltZS0yLjAuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1vY2t0YWlsIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L21vY2t0YWlsLTEuMC40IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMi4xMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm5vZGVfcHJlYW1ibGUiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbm9kZV9wcmVhbWJsZS0yLjAuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjIuMTIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9wYWNrYWdlX2NvbmZpZy0yLjIuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInBhdGgiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvcGF0aC0xLjkuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInBvb2wiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvcG9vbC0xLjUuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjIuMTIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwdWJfc2VtdmVyIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3B1Yl9zZW12ZXItMi4yLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzaGVsZiIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZi0xLjQuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX2hvdHJlbG9hZCIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZl9ob3RyZWxvYWQtMS41LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIyLjE3IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic2hlbGZfcGFja2FnZXNfaGFuZGxlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZl9wYWNrYWdlc19oYW5kbGVyLTMuMC4yIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMi4xNyIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX3N0YXRpYyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZl9zdGF0aWMtMS4xLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzaGVsZl93ZWJfc29ja2V0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3NoZWxmX3dlYl9zb2NrZXQtMy4wLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjUiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJza3lfZW5naW5lIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC9EZXZlbG9wbWVudC9naXRodWIuY29tL2ZsdXR0ZXIvZmx1dHRlci9iaW4vY2FjaGUvcGtnL3NreV9lbmdpbmUiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjgiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzb3VyY2VfbWFwX3N0YWNrX3RyYWNlIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3NvdXJjZV9tYXBfc3RhY2tfdHJhY2UtMi4xLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzb3VyY2VfbWFwcyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zb3VyY2VfbWFwcy0wLjEwLjEzIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4zIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic291cmNlX3NwYW4iLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvc291cmNlX3NwYW4tMS4xMC4xIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4xIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic3RhY2tfdHJhY2UiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvc3RhY2tfdHJhY2UtMS4xMi4xIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic3RyZWFtX2NoYW5uZWwiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvc3RyZWFtX2NoYW5uZWwtMi4xLjQiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJlYW1fdHJhbnNmb3JtIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3N0cmVhbV90cmFuc2Zvcm0tMi4xLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjEiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJpbmdfc2Nhbm5lciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zdHJpbmdfc2Nhbm5lci0xLjQuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlcm1fZ2x5cGgiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdGVybV9nbHlwaC0xLjIuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlc3QiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdGVzdC0xLjI2LjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjUiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ0ZXN0X2FwaSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi90ZXN0X2FwaS0wLjcuNiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlc3RfY29yZSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi90ZXN0X2NvcmUtMC42LjExIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidHlwZWRfZGF0YSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi90eXBlZF9kYXRhLTEuNC4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidmVjdG9yX21hdGgiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdmVjdG9yX21hdGgtMi4yLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjEiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ2ZXJ5X2dvb2RfYW5hbHlzaXMiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdmVyeV9nb29kX2FuYWx5c2lzLTUuMS4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4wIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidm1fc2VydmljZSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi92bV9zZXJ2aWNlLTE1LjAuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMyIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIndhdGNoZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvd2F0Y2hlci0xLjEuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIndlYiIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi93ZWItMS4xLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ3ZWJfc29ja2V0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3dlYl9zb2NrZXQtMS4wLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ3ZWJfc29ja2V0X2NoYW5uZWwiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvd2ViX3NvY2tldF9jaGFubmVsLTMuMC4zIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4zIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2Via2l0X2luc3BlY3Rpb25fcHJvdG9jb2wiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvd2Via2l0X2luc3BlY3Rpb25fcHJvdG9jb2wtMS4yLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ5YW1sIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3lhbWwtMy4xLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJfIiwKICAgICAgInJvb3RVcmkiOiAiLi4vIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy42IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiY2xpZW50IiwKICAgICAgInJvb3RVcmkiOiAiLi4vcGFja2FnZXMvY2xpZW50IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy44IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicHJvdG9jb2wiLAogICAgICAicm9vdFVyaSI6ICIuLi9wYWNrYWdlcy9wcm90b2NvbCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuOCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1vZGVscyIsCiAgICAgICJyb290VXJpIjogIi4uL3BhY2thZ2VzL21vZGVscyIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuOCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNlcnZlciIsCiAgICAgICJyb290VXJpIjogIi4uL3BhY2thZ2VzL3NlcnZlciIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNiIKICAgIH0KICBdLAogICJnZW5lcmF0b3IiOiAicHViIiwKICAiZ2VuZXJhdG9yVmVyc2lvbiI6ICIzLjkuMiIsCiAgImZsdXR0ZXJSb290IjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvRGV2ZWxvcG1lbnQvZ2l0aHViLmNvbS9mbHV0dGVyL2ZsdXR0ZXIiLAogICJmbHV0dGVyVmVyc2lvbiI6ICIzLjM1LjMiLAogICJwdWJDYWNoZSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUiCn0KJycnOwo=", + "type": "text" + }, + { + "path": "build/test/fixtures/package_graphs.dart", + "data": + "Y29uc3QgcGFja2FnZUdyYXBoV2l0aERpcmVjdEFuZFRyYW5zaXRpdmVEZXBzID0gJycnCnsKICAicm9vdHMiOiBbCiAgICAiXyIsCiAgICAiY2xpZW50IiwKICAgICJtb2RlbHMiLAogICAgInByb3RvY29sIiwKICAgICJzZXJ2ZXIiCiAgXSwKICAicGFja2FnZXMiOiBbCiAgICB7CiAgICAgICJuYW1lIjogIl8iLAogICAgICAidmVyc2lvbiI6ICIwLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbGllbnQiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCsxIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY3VwZXJ0aW5vX2ljb25zIiwKICAgICAgICAiZmx1dHRlciIKICAgICAgXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiZmx1dHRlcl9saW50cyIsCiAgICAgICAgImZsdXR0ZXJfdGVzdCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicHJvdG9jb2wiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIm1vZGVscyIKICAgICAgXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibGludHMiLAogICAgICAgICJ0ZXN0IgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtb2RlbHMiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibGludHMiLAogICAgICAgICJ0ZXN0IgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzZXJ2ZXIiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCsxIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiZGFydF9mcm9nIiwKICAgICAgICAicHJvdG9jb2wiCiAgICAgIF0sCiAgICAgICJkZXZEZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIm1vY2t0YWlsIiwKICAgICAgICAidGVzdCIsCiAgICAgICAgInZlcnlfZ29vZF9hbmFseXNpcyIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidmVyeV9nb29kX2FuYWx5c2lzIiwKICAgICAgInZlcnNpb24iOiAiNS4xLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlc3QiLAogICAgICAidmVyc2lvbiI6ICIxLjI2LjIiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhbmFseXplciIsCiAgICAgICAgImFzeW5jIiwKICAgICAgICAiYm9vbGVhbl9zZWxlY3RvciIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJjb3ZlcmFnZSIsCiAgICAgICAgImh0dHBfbXVsdGlfc2VydmVyIiwKICAgICAgICAiaW8iLAogICAgICAgICJqcyIsCiAgICAgICAgIm1hdGNoZXIiLAogICAgICAgICJub2RlX3ByZWFtYmxlIiwKICAgICAgICAicGFja2FnZV9jb25maWciLAogICAgICAgICJwYXRoIiwKICAgICAgICAicG9vbCIsCiAgICAgICAgInNoZWxmIiwKICAgICAgICAic2hlbGZfcGFja2FnZXNfaGFuZGxlciIsCiAgICAgICAgInNoZWxmX3N0YXRpYyIsCiAgICAgICAgInNoZWxmX3dlYl9zb2NrZXQiLAogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0YWNrX3RyYWNlIiwKICAgICAgICAic3RyZWFtX2NoYW5uZWwiLAogICAgICAgICJ0ZXN0X2FwaSIsCiAgICAgICAgInRlc3RfY29yZSIsCiAgICAgICAgInR5cGVkX2RhdGEiLAogICAgICAgICJ3ZWJfc29ja2V0X2NoYW5uZWwiLAogICAgICAgICJ3ZWJraXRfaW5zcGVjdGlvbl9wcm90b2NvbCIsCiAgICAgICAgInlhbWwiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1vY2t0YWlsIiwKICAgICAgInZlcnNpb24iOiAiMS4wLjQiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAibWF0Y2hlciIsCiAgICAgICAgInRlc3RfYXBpIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJkYXJ0X2Zyb2ciLAogICAgICAidmVyc2lvbiI6ICIxLjIuMyIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImh0dHBfbWV0aG9kcyIsCiAgICAgICAgImh0dHBfcGFyc2VyIiwKICAgICAgICAibWV0YSIsCiAgICAgICAgIm1pbWUiLAogICAgICAgICJzaGVsZiIsCiAgICAgICAgInNoZWxmX2hvdHJlbG9hZCIsCiAgICAgICAgInNoZWxmX3N0YXRpYyIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibGludHMiLAogICAgICAidmVyc2lvbiI6ICI1LjEuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmx1dHRlcl9saW50cyIsCiAgICAgICJ2ZXJzaW9uIjogIjUuMC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibGludHMiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImZsdXR0ZXJfdGVzdCIsCiAgICAgICJ2ZXJzaW9uIjogIjAuMC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY2xvY2siLAogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAiZmFrZV9hc3luYyIsCiAgICAgICAgImZsdXR0ZXIiLAogICAgICAgICJsZWFrX3RyYWNrZXJfZmx1dHRlcl90ZXN0aW5nIiwKICAgICAgICAibWF0Y2hlciIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYXRoIiwKICAgICAgICAic3RhY2tfdHJhY2UiLAogICAgICAgICJzdHJlYW1fY2hhbm5lbCIsCiAgICAgICAgInRlc3RfYXBpIiwKICAgICAgICAidmVjdG9yX21hdGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImN1cGVydGlub19pY29ucyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMC44IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmbHV0dGVyIiwKICAgICAgInZlcnNpb24iOiAiMC4wLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjaGFyYWN0ZXJzIiwKICAgICAgICAiY29sbGVjdGlvbiIsCiAgICAgICAgIm1hdGVyaWFsX2NvbG9yX3V0aWxpdGllcyIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJza3lfZW5naW5lIiwKICAgICAgICAidmVjdG9yX21hdGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInlhbWwiLAogICAgICAidmVyc2lvbiI6ICIzLjEuMyIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ3ZWJraXRfaW5zcGVjdGlvbl9wcm90b2NvbCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMi4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibG9nZ2luZyIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2ViX3NvY2tldF9jaGFubmVsIiwKICAgICAgInZlcnNpb24iOiAiMy4wLjMiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhc3luYyIsCiAgICAgICAgImNyeXB0byIsCiAgICAgICAgInN0cmVhbV9jaGFubmVsIiwKICAgICAgICAid2ViIiwKICAgICAgICAid2ViX3NvY2tldCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidHlwZWRfZGF0YSIsCiAgICAgICJ2ZXJzaW9uIjogIjEuNC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY29sbGVjdGlvbiIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidGVzdF9jb3JlIiwKICAgICAgInZlcnNpb24iOiAiMC42LjExIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYW5hbHl6ZXIiLAogICAgICAgICJhcmdzIiwKICAgICAgICAiYXN5bmMiLAogICAgICAgICJib29sZWFuX3NlbGVjdG9yIiwKICAgICAgICAiY29sbGVjdGlvbiIsCiAgICAgICAgImNvdmVyYWdlIiwKICAgICAgICAiZnJvbnRlbmRfc2VydmVyX2NsaWVudCIsCiAgICAgICAgImdsb2IiLAogICAgICAgICJpbyIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJwb29sIiwKICAgICAgICAic291cmNlX21hcF9zdGFja190cmFjZSIsCiAgICAgICAgInNvdXJjZV9tYXBzIiwKICAgICAgICAic291cmNlX3NwYW4iLAogICAgICAgICJzdGFja190cmFjZSIsCiAgICAgICAgInN0cmVhbV9jaGFubmVsIiwKICAgICAgICAidGVzdF9hcGkiLAogICAgICAgICJ2bV9zZXJ2aWNlIiwKICAgICAgICAieWFtbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidGVzdF9hcGkiLAogICAgICAidmVyc2lvbiI6ICIwLjcuNiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFzeW5jIiwKICAgICAgICAiYm9vbGVhbl9zZWxlY3RvciIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJtZXRhIiwKICAgICAgICAic291cmNlX3NwYW4iLAogICAgICAgICJzdGFja190cmFjZSIsCiAgICAgICAgInN0cmVhbV9jaGFubmVsIiwKICAgICAgICAic3RyaW5nX3NjYW5uZXIiLAogICAgICAgICJ0ZXJtX2dseXBoIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJlYW1fY2hhbm5lbCIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMS40IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInN0YWNrX3RyYWNlIiwKICAgICAgInZlcnNpb24iOiAiMS4xMi4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAicGF0aCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic291cmNlX3NwYW4iLAogICAgICAidmVyc2lvbiI6ICIxLjEwLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInRlcm1fZ2x5cGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX3dlYl9zb2NrZXQiLAogICAgICAidmVyc2lvbiI6ICIzLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgInNoZWxmIiwKICAgICAgICAic3RyZWFtX2NoYW5uZWwiLAogICAgICAgICJ3ZWJfc29ja2V0X2NoYW5uZWwiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX3N0YXRpYyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMS4zIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY29udmVydCIsCiAgICAgICAgImh0dHBfcGFyc2VyIiwKICAgICAgICAibWltZSIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJzaGVsZiIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic2hlbGZfcGFja2FnZXNfaGFuZGxlciIsCiAgICAgICJ2ZXJzaW9uIjogIjMuMC4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAicGF0aCIsCiAgICAgICAgInNoZWxmIiwKICAgICAgICAic2hlbGZfc3RhdGljIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzaGVsZiIsCiAgICAgICJ2ZXJzaW9uIjogIjEuNC4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiLAogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAiaHR0cF9wYXJzZXIiLAogICAgICAgICJwYXRoIiwKICAgICAgICAic3RhY2tfdHJhY2UiLAogICAgICAgICJzdHJlYW1fY2hhbm5lbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicG9vbCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuNS4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiLAogICAgICAgICJzdGFja190cmFjZSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicGF0aCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuOS4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMi4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAicGF0aCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibm9kZV9wcmVhbWJsZSIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMC4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtYXRjaGVyIiwKICAgICAgInZlcnNpb24iOiAiMC4xMi4xNyIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFzeW5jIiwKICAgICAgICAibWV0YSIsCiAgICAgICAgInN0YWNrX3RyYWNlIiwKICAgICAgICAidGVybV9nbHlwaCIsCiAgICAgICAgInRlc3RfYXBpIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJqcyIsCiAgICAgICJ2ZXJzaW9uIjogIjAuNy4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJpbyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMC41IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibWV0YSIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJzdHJpbmdfc2Nhbm5lciIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9tdWx0aV9zZXJ2ZXIiLAogICAgICAidmVyc2lvbiI6ICIzLjIuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFzeW5jIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb3ZlcmFnZSIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMTUuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFyZ3MiLAogICAgICAgICJjbGlfY29uZmlnIiwKICAgICAgICAiZ2xvYiIsCiAgICAgICAgImxvZ2dpbmciLAogICAgICAgICJtZXRhIiwKICAgICAgICAicGFja2FnZV9jb25maWciLAogICAgICAgICJwYXRoIiwKICAgICAgICAic291cmNlX21hcHMiLAogICAgICAgICJzdGFja190cmFjZSIsCiAgICAgICAgInZtX3NlcnZpY2UiLAogICAgICAgICJ5YW1sIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb2xsZWN0aW9uIiwKICAgICAgInZlcnNpb24iOiAiMS4xOS4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJib29sZWFuX3NlbGVjdG9yIiwKICAgICAgInZlcnNpb24iOiAiMi4xLjIiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhc3luYyIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMTMuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJtZXRhIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhbmFseXplciIsCiAgICAgICJ2ZXJzaW9uIjogIjcuNy4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiX2ZlX2FuYWx5emVyX3NoYXJlZCIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJjb252ZXJ0IiwKICAgICAgICAiY3J5cHRvIiwKICAgICAgICAiZ2xvYiIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJwdWJfc2VtdmVyIiwKICAgICAgICAic291cmNlX3NwYW4iLAogICAgICAgICJ3YXRjaGVyIiwKICAgICAgICAieWFtbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic2hlbGZfaG90cmVsb2FkIiwKICAgICAgInZlcnNpb24iOiAiMS41LjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJob3RyZWxvYWRlciIsCiAgICAgICAgImxvZ2dpbmciCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1pbWUiLAogICAgICAidmVyc2lvbiI6ICIyLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibWV0YSIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMTYuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9wYXJzZXIiLAogICAgICAidmVyc2lvbiI6ICI0LjEuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIiwKICAgICAgICAidHlwZWRfZGF0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9tZXRob2RzIiwKICAgICAgInZlcnNpb24iOiAiMS4xLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImxlYWtfdHJhY2tlcl9mbHV0dGVyX3Rlc3RpbmciLAogICAgICAidmVyc2lvbiI6ICIzLjAuMTAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJmbHV0dGVyIiwKICAgICAgICAibGVha190cmFja2VyIiwKICAgICAgICAibGVha190cmFja2VyX3Rlc3RpbmciLAogICAgICAgICJtYXRjaGVyIiwKICAgICAgICAibWV0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidmVjdG9yX21hdGgiLAogICAgICAidmVyc2lvbiI6ICIyLjIuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiY2xvY2siLAogICAgICAidmVyc2lvbiI6ICIxLjEuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmFrZV9hc3luYyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMy4zIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY2xvY2siLAogICAgICAgICJjb2xsZWN0aW9uIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJza3lfZW5naW5lIiwKICAgICAgInZlcnNpb24iOiAiMC4wLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1hdGVyaWFsX2NvbG9yX3V0aWxpdGllcyIsCiAgICAgICJ2ZXJzaW9uIjogIjAuMTEuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImNoYXJhY3RlcnMiLAogICAgICAidmVyc2lvbiI6ICIxLjQuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic3RyaW5nX3NjYW5uZXIiLAogICAgICAidmVyc2lvbiI6ICIxLjQuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgInNvdXJjZV9zcGFuIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsb2dnaW5nIiwKICAgICAgInZlcnNpb24iOiAiMS4zLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIndlYl9zb2NrZXQiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIndlYiIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2ViIiwKICAgICAgInZlcnNpb24iOiAiMS4xLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImNyeXB0byIsCiAgICAgICJ2ZXJzaW9uIjogIjMuMC42IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAidHlwZWRfZGF0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidm1fc2VydmljZSIsCiAgICAgICJ2ZXJzaW9uIjogIjE1LjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic291cmNlX21hcHMiLAogICAgICAidmVyc2lvbiI6ICIwLjEwLjEzIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAic291cmNlX3NwYW4iCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNvdXJjZV9tYXBfc3RhY2tfdHJhY2UiLAogICAgICAidmVyc2lvbiI6ICIyLjEuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgInBhdGgiLAogICAgICAgICJzb3VyY2VfbWFwcyIsCiAgICAgICAgInN0YWNrX3RyYWNlIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJnbG9iIiwKICAgICAgInZlcnNpb24iOiAiMi4xLjMiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhc3luYyIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJmaWxlIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmcm9udGVuZF9zZXJ2ZXJfY2xpZW50IiwKICAgICAgInZlcnNpb24iOiAiNC4wLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhc3luYyIsCiAgICAgICAgInBhdGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImFyZ3MiLAogICAgICAidmVyc2lvbiI6ICIyLjcuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidGVybV9nbHlwaCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMi4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb252ZXJ0IiwKICAgICAgInZlcnNpb24iOiAiMy4xLjIiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJ0eXBlZF9kYXRhIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbGlfY29uZmlnIiwKICAgICAgInZlcnNpb24iOiAiMC4yLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhcmdzIiwKICAgICAgICAieWFtbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2F0Y2hlciIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMS4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiLAogICAgICAgICJwYXRoIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwdWJfc2VtdmVyIiwKICAgICAgInZlcnNpb24iOiAiMi4yLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjb2xsZWN0aW9uIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJfZmVfYW5hbHl6ZXJfc2hhcmVkIiwKICAgICAgInZlcnNpb24iOiAiODUuMC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibWV0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaG90cmVsb2FkZXIiLAogICAgICAidmVyc2lvbiI6ICI0LjMuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJsb2dnaW5nIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInN0cmVhbV90cmFuc2Zvcm0iLAogICAgICAgICJ2bV9zZXJ2aWNlIiwKICAgICAgICAid2F0Y2hlciIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibGVha190cmFja2VyX3Rlc3RpbmciLAogICAgICAidmVyc2lvbiI6ICIzLjAuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImxlYWtfdHJhY2tlciIsCiAgICAgICAgIm1hdGNoZXIiLAogICAgICAgICJtZXRhIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsZWFrX3RyYWNrZXIiLAogICAgICAidmVyc2lvbiI6ICIxMS4wLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjbG9jayIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJtZXRhIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInZtX3NlcnZpY2UiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImZpbGUiLAogICAgICAidmVyc2lvbiI6ICI3LjAuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYXRoIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJlYW1fdHJhbnNmb3JtIiwKICAgICAgInZlcnNpb24iOiAiMi4xLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0KICBdLAogICJjb25maWdWZXJzaW9uIjogMQp9CicnJzsK", + "type": "text" + }, + { + "path": "build/test/post_gen_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcKICAgIHNob3cgRXhpdENvZGUsIEhvb2tDb250ZXh0LCBMb2dnZXIsIFByb2dyZXNzLCBsaWdodEN5YW47CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wb3N0X2dlbi5kYXJ0JyBhcyBwb3N0X2dlbjsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdwb3N0R2VuJywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIGNvbnN0IHByb2Nlc3NJZCA9IDQyOwogICAgZmluYWwgcHJvY2Vzc1Jlc3VsdCA9IFByb2Nlc3NSZXN1bHQoCiAgICAgIHByb2Nlc3NJZCwKICAgICAgRXhpdENvZGUuc3VjY2Vzcy5jb2RlLAogICAgICAnJywKICAgICAgJycsCiAgICApOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW4gY29tcGxldGVzJywgKCkgewogICAgICBleHBlY3QoCiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgKICAgICAgICAgICgpID0+IHBvc3RfZ2VuLnJ1bihfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKSksCiAgICAgICAgKSwKICAgICAgICBjb21wbGV0ZXMsCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW5zIGRhcnQgcHViIGdldCBhbmQgb3V0cHV0cyBuZXh0IHN0ZXBzJywgKCkgYXN5bmMgewogICAgICB2YXIgcHJvY2Vzc1J1bm5lckNhbGxDb3VudCA9IDA7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CgogICAgICBhd2FpdCBwb3N0X2dlbi5wb3N0R2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgcnVuUHJvY2VzczogKAogICAgICAgICAgZXhlY3V0YWJsZSwKICAgICAgICAgIGFyZ3MsIHsKICAgICAgICAgIFN0cmluZz8gd29ya2luZ0RpcmVjdG9yeSwKICAgICAgICAgIGJvb2w/IHJ1bkluU2hlbGwsCiAgICAgICAgfSkgYXN5bmMgewogICAgICAgICAgcHJvY2Vzc1J1bm5lckNhbGxDb3VudCsrOwogICAgICAgICAgZXhwZWN0KGV4ZWN1dGFibGUsIGVxdWFscygnZGFydCcpKTsKICAgICAgICAgIGV4cGVjdChhcmdzLCBlcXVhbHMoWydwdWInLCAnZ2V0J10pKTsKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgd29ya2luZ0RpcmVjdG9yeSwKICAgICAgICAgICAgZXF1YWxzKHBhdGguam9pbihEaXJlY3RvcnkuY3VycmVudC5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgICApOwogICAgICAgICAgZXhwZWN0KHJ1bkluU2hlbGwsIGlzVHJ1ZSk7CiAgICAgICAgICByZXR1cm4gcHJvY2Vzc1Jlc3VsdDsKICAgICAgICB9LAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChwcm9jZXNzUnVubmVyQ2FsbENvdW50LCBlcXVhbHMoMSkpOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5zdWNjZXNzKCdDcmVhdGVkIGEgcHJvZHVjdGlvbiBidWlsZCEnKSkuY2FsbGVkKDEpOwogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmluZm8oJ1N0YXJ0IHRoZSBwcm9kdWN0aW9uIHNlcnZlciBieSBydW5uaW5nOicpLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCcke2xpZ2h0Q3lhbi53cmFwKCdkYXJ0IGJ1aWxkL2Jpbi9zZXJ2ZXIuZGFydCcpfScpLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgfSk7CiAgfSk7Cn0K", + "type": "text" + }, + { + "path": "build/test/pre_gen_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcKICAgIHNob3cgSG9va0NvbnRleHQsIExvZ2dlciwgUHJvZ3Jlc3MsIGRlZmF1bHRGb3JlZ3JvdW5kLCBsaWdodEN5YW47CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wcmVfZ2VuLmRhcnQnIGFzIHByZV9nZW47CmltcG9ydCAnZml4dHVyZXMvcGFja2FnZV9jb25maWdzLmRhcnQnOwppbXBvcnQgJ2ZpeHR1cmVzL3BhY2thZ2VfZ3JhcGhzLmRhcnQnOwppbXBvcnQgJ3B1YnNwZWNfbG9ja3MuZGFydCc7CgpjbGFzcyBfRmFrZUhvb2tDb250ZXh0IGV4dGVuZHMgRmFrZSBpbXBsZW1lbnRzIEhvb2tDb250ZXh0IHsKICBfRmFrZUhvb2tDb250ZXh0KHtMb2dnZXI/IGxvZ2dlcn0pIDogX2xvZ2dlciA9IGxvZ2dlciA/PyBfTW9ja0xvZ2dlcigpOwoKICBmaW5hbCBMb2dnZXIgX2xvZ2dlcjsKCiAgdmFyIF92YXJzID0gPFN0cmluZywgZHluYW1pYz57fTsKCiAgQG92ZXJyaWRlCiAgTWFwPFN0cmluZywgZHluYW1pYz4gZ2V0IHZhcnMgPT4gX3ZhcnM7CgogIEBvdmVycmlkZQogIHNldCB2YXJzKE1hcDxTdHJpbmcsIGR5bmFtaWM+IHZhbHVlKSA9PiBfdmFycyA9IHZhbHVlOwoKICBAb3ZlcnJpZGUKICBMb2dnZXIgZ2V0IGxvZ2dlciA9PiBfbG9nZ2VyOwp9CgpjbGFzcyBfTW9ja0xvZ2dlciBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBMb2dnZXIge30KCmNsYXNzIF9Nb2NrUHJvZ3Jlc3MgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUHJvZ3Jlc3Mge30KCnZvaWQgbWFpbigpIHsKICBncm91cCgncHJlR2VuJywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIEZ1dHVyZTxQcm9jZXNzUmVzdWx0PiBzdWNjZXNzUnVuUHJvY2VzcygKICAgICAgZXhlY3V0YWJsZSwKICAgICAgYXJncywgewogICAgICBTdHJpbmc/IHdvcmtpbmdEaXJlY3RvcnksCiAgICAgIGJvb2w/IHJ1bkluU2hlbGwsCiAgICB9KSA9PgogICAgICAgIEZ1dHVyZS52YWx1ZShQcm9jZXNzUmVzdWx0KDAsIDAsICcnLCAnJykpOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpCiAgICAgICAgLi52YXJzWydkYXJ0VmVyc2lvbiddID0gJ3N0YWJsZSc7CgogICAgICB3aGVuKCgpID0+IGxvZ2dlci5wcm9ncmVzcyhhbnkoKSkpLnRoZW5SZXR1cm4oX01vY2tQcm9ncmVzcygpKTsKICAgIH0pOwoKICAgIHRlc3QoJ3J1biBjb21wbGV0ZXMnLCAoKSB7CiAgICAgIGV4cGVjdCgKICAgICAgICBFeGl0T3ZlcnJpZGVzLnJ1blpvbmVkKAogICAgICAgICAgKCkgPT4gcHJlX2dlbi5ydW4oX0Zha2VIb29rQ29udGV4dChsb2dnZXI6IGxvZ2dlcikpLAogICAgICAgICAgZXhpdDogKF8pIHt9LAogICAgICAgICksCiAgICAgICAgY29tcGxldGVzLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBpZiBidWlsZFJvdXRlQ29uZmlndXJhdGlvbiB0aHJvd3MnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGZpbmFsIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbignb29wcycpOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHRocm93IGV4Y2VwdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGV4Y2VwdGlvbi50b1N0cmluZygpKSkuY2FsbGVkKDEpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBmb3Igcm91dGUgY29uZmxpY3RzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHsKICAgICAgICAgICcvJzogWwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2luZGV4JywKICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICAnL2hlbGxvJzogWwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2hlbGxvJywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2hlbGxvX2luZGV4JywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8vaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwoKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnJydSb3V0ZSBjb25mbGljdCBkZXRlY3RlZC4gJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvLmRhcnQnKX0gYW5kICR7bGlnaHRDeWFuLndyYXAoJ3JvdXRlcy9oZWxsby9pbmRleC5kYXJ0Jyl9IGJvdGggcmVzb2x2ZSB0byAke2xpZ2h0Q3lhbi53cmFwKCcvaGVsbG8nKX0uJycnLAogICAgICAgICksCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgIH0pOwoKICAgIHRlc3QoJ2V4aXQoMSkgZm9yIHJvZ3VlIHJvdXRlcycsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogWwogICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgIHJvdXRlOiAnL2hlbGxvJywKICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgKSwKICAgICAgICBdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICAgaW52b2tlQ3VzdG9tRW50cnlwb2ludDogdHJ1ZSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwoKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnJydSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvLmRhcnQnKX0gdG8gJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvL2luZGV4LmRhcnQnKX0uJycnLAogICAgICAgICksCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgIH0pOwoKICAgIHRlc3QoJ2V4aXRzKDEpIHdoZW4gdW5hYmxlIHRvIGRldGVybWluZSB3b3Jrc3BhY2Ugcm9vdCcsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIGZpbmFsIHNlcnZlciA9IERpcmVjdG9yeSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdzZXJ2ZXInKSwKICAgICAgKS4uY3JlYXRlU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBzZXJ2ZXIKZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKcmVzb2x1dGlvbjogd29ya3NwYWNlCgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjYuMAoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCiAgcHJvdG9jb2w6IF4xLjAuMAonJycpOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICBkaXJlY3Rvcnk6IHNlcnZlciwKICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICBjb3B5UGF0aDogKF8sIF9fKSBhc3luYyB7fSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnVW5hYmxlIHRvIGRldGVybWluZSB3b3Jrc3BhY2Ugcm9vdCBmb3IgJHtzZXJ2ZXIucGF0aH0nLAogICAgICAgICksCiAgICAgICkuY2FsbGVkKDEpOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0cygxKSB3aGVuIHVuYWJsZSB0byBmaW5kIHBhY2thZ2VfY29uZmlnLmpzb24nLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CgogICAgICBmaW5hbCBkaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBfCnB1Ymxpc2hfdG86IG5vbmUKCmVudmlyb25tZW50OgogIHNkazogXjMuNi4wCgp3b3Jrc3BhY2U6CiAgLSBwYWNrYWdlcy9jbGllbnQKICAtIHBhY2thZ2VzL3Byb3RvY29sCiAgLSBwYWNrYWdlcy9tb2RlbHMKICAtIHBhY2thZ2VzL3NlcnZlcgonJycpOwogICAgICBmaW5hbCBzZXJ2ZXIgPSBEaXJlY3RvcnkoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAnc2VydmVyJyksCiAgICAgICkuLmNyZWF0ZVN5bmMoKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4oc2VydmVyLnBhdGgsICdwdWJzcGVjLnlhbWwnKSwKICAgICAgKS53cml0ZUFzU3RyaW5nU3luYygnJycKbmFtZTogc2VydmVyCmRlc2NyaXB0aW9uOiBBIG5ldyBEYXJ0IEZyb2cgYXBwbGljYXRpb24KdmVyc2lvbjogMS4wLjArMQpwdWJsaXNoX3RvOiBub25lCnJlc29sdXRpb246IHdvcmtzcGFjZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy42LjAKCmRlcGVuZGVuY2llczoKICBkYXJ0X2Zyb2c6IF4xLjEuMAogIHByb3RvY29sOiBeMS4wLjAKJycnKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBzZXJ2ZXIsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICAgY29weVBhdGg6IChfLCBfXykgYXN5bmMge30sCiAgICAgICk7CgogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIHZlcmlmeSgKICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgJ1VuYWJsZSB0byBmaW5kIHBhY2thZ2VfY29uZmlnLmpzb24gZm9yICR7ZGlyZWN0b3J5LnBhdGh9JywKICAgICAgICApLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgZGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpLmlnbm9yZSgpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMoMSkgd2hlbiB1bmFibGUgdG8gZmluZCBwYWNrYWdlX2dyYXBoLmpzb24nLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CgogICAgICBmaW5hbCBkaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJy5kYXJ0X3Rvb2wnLCAncGFja2FnZV9jb25maWcuanNvbicpLAogICAgICApCiAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAuLndyaXRlQXNTdHJpbmdTeW5jKHBhY2thZ2VDb25maWdXaXRoRGlyZWN0QW5kVHJhbnNpdGl2ZURlcGVuZGVuY2llcyk7CiAgICAgIEZpbGUoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJyksCiAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoJycnCm5hbWU6IF8KcHVibGlzaF90bzogbm9uZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy42LjAKCndvcmtzcGFjZToKICAtIHBhY2thZ2VzL2NsaWVudAogIC0gcGFja2FnZXMvcHJvdG9jb2wKICAtIHBhY2thZ2VzL21vZGVscwogIC0gcGFja2FnZXMvc2VydmVyCicnJyk7CiAgICAgIGZpbmFsIHNlcnZlciA9IERpcmVjdG9yeSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdzZXJ2ZXInKSwKICAgICAgKS4uY3JlYXRlU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBzZXJ2ZXIKZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKcmVzb2x1dGlvbjogd29ya3NwYWNlCgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjYuMAoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCiAgcHJvdG9jb2w6IF4xLjAuMAonJycpOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICBkaXJlY3Rvcnk6IHNlcnZlciwKICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICBjb3B5UGF0aDogKF8sIF9fKSBhc3luYyB7fSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnVW5hYmxlIHRvIGZpbmQgcGFja2FnZV9ncmFwaC5qc29uIGZvciAke2RpcmVjdG9yeS5wYXRofScsCiAgICAgICAgKSwKICAgICAgKS5jYWxsZWQoMSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3dvcmtzIHdpdGggd29ya3NwYWNlcycsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAnLmRhcnRfdG9vbCcsICdwYWNrYWdlX2NvbmZpZy5qc29uJyksCiAgICAgICkKICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMocGFja2FnZUNvbmZpZ1dpdGhEaXJlY3RBbmRUcmFuc2l0aXZlRGVwZW5kZW5jaWVzKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICcuZGFydF90b29sJywgJ3BhY2thZ2VfZ3JhcGguanNvbicpLAogICAgICApCiAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAuLndyaXRlQXNTdHJpbmdTeW5jKHBhY2thZ2VHcmFwaFdpdGhEaXJlY3RBbmRUcmFuc2l0aXZlRGVwcyk7CiAgICAgIEZpbGUoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJyksCiAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoJycnCm5hbWU6IF8KcHVibGlzaF90bzogbm9uZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy42LjAKCndvcmtzcGFjZToKICAtIHBhY2thZ2VzL2NsaWVudAogIC0gcGFja2FnZXMvcHJvdG9jb2wKICAtIHBhY2thZ2VzL21vZGVscwogIC0gcGFja2FnZXMvc2VydmVyCicnJyk7CiAgICAgIGZpbmFsIHNlcnZlciA9IERpcmVjdG9yeSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdzZXJ2ZXInKSwKICAgICAgKS4uY3JlYXRlU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBzZXJ2ZXIKZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKcmVzb2x1dGlvbjogd29ya3NwYWNlCgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjYuMAoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCiAgcHJvdG9jb2w6IF4xLjAuMAonJycpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMubG9jaycpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwojIEdlbmVyYXRlZCBieSBwdWIKIyBTZWUgaHR0cHM6Ly9kYXJ0LmRldi90b29scy9wdWIvZ2xvc3NhcnkjbG9ja2ZpbGUKcGFja2FnZXM6CiAgX2ZlX2FuYWx5emVyX3NoYXJlZDoKICAgIGRlcGVuZGVuY3k6IHRyYW5zaXRpdmUKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiBfZmVfYW5hbHl6ZXJfc2hhcmVkCiAgICAgIHNoYTI1NjogZGEwZDkyMDljYTc2YmRlNTc5ZjJkYTMzMGFlYjlkZjYyYjYzMTljODM0ZmE3YmFhZTA1MjAyMWIwNDYyNDAxZgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjg1LjAuMCIKJycnKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBzZXJ2ZXIsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICAgY29weVBhdGg6IChfLCBfXykgYXN5bmMge30sCiAgICAgICk7CgogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgZGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpLmlnbm9yZSgpOwogICAgfSk7CgogICAgdGVzdCgnd29ya3Mgd2l0aCBleHRlcm5hbCBkZXBlbmRlbmNpZXMnLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CgogICAgICBmaW5hbCBkaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICBjb3B5UGF0aDogKGZyb20sIHRvKSBhc3luYyB7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3JldGFpbnMgaW52b2tlQ3VzdG9tRW50cnlwb2ludCAodHJ1ZSknLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICAgaW52b2tlQ3VzdG9tRW50cnlwb2ludDogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIGV4cGVjdCgKICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgZXF1YWxzKHsKICAgICAgICAgICdkaXJlY3Rvcmllcyc6IDxSb3V0ZURpcmVjdG9yeT5bXSwKICAgICAgICAgICdyb3V0ZXMnOiA8Um91dGVGaWxlPltdLAogICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWlkZGxld2FyZUZpbGU+W10sCiAgICAgICAgICAnZ2xvYmFsTWlkZGxld2FyZSc6IGZhbHNlLAogICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiBmYWxzZSwKICAgICAgICAgICdpbnZva2VDdXN0b21FbnRyeXBvaW50JzogdHJ1ZSwKICAgICAgICAgICdpbnZva2VDdXN0b21Jbml0JzogZmFsc2UsCiAgICAgICAgICAncGF0aERlcGVuZGVuY2llcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBmYWxzZSwKICAgICAgICAgICdkYXJ0VmVyc2lvbic6ICdzdGFibGUnLAogICAgICAgICAgJ2FkZERvY2tlcmZpbGUnOiB0cnVlLAogICAgICAgIH0pLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgiZG9uJ3QgY3JlYXRlIHRoZSBkb2NrZXJmaWxlIGlmIG9uZSBhbHJlYWR5IGV4aXN0cyBvbiB0aGUgZm9sZGVyLiIsCiAgICAgICAgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICApOwoKICAgICAgZmluYWwgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLnlhbWwnKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgJycnCm5hbWU6IGV4YW1wbGUKdmVyc2lvbjogMC4xLjAKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMi4xNy4wCmRlcGVuZGVuY2llczoKICBtYXNvbjogYW55CiAgdGVzdDogYW55CicnJywKICAgICAgKTsKCiAgICAgIEZpbGUocGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgIG5vUGF0aERlcGVuZGVuY2llcywKICAgICAgKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdEb2NrZXJmaWxlJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgICcnLAogICAgICApOwoKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBkaXJlY3RvcnksCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CgogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscyh7CiAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICdtaWRkbGV3YXJlJzogPE1pZGRsZXdhcmVGaWxlPltdLAogICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiBmYWxzZSwKICAgICAgICAgICdoYXNFeHRlcm5hbERlcGVuZGVuY2llcyc6IGZhbHNlLAogICAgICAgICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiA8U3RyaW5nPltdLAogICAgICAgICAgJ2RhcnRWZXJzaW9uJzogJ3N0YWJsZScsCiAgICAgICAgICAnYWRkRG9ja2VyZmlsZSc6IGZhbHNlLAogICAgICAgIH0pLAogICAgICApOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKCiAgICB0ZXN0KCdyZXRhaW5zIGludm9rZUN1c3RvbUluaXQgKHRydWUpJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICAgIGludm9rZUN1c3RvbUluaXQ6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscyh7CiAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICdtaWRkbGV3YXJlJzogPE1pZGRsZXdhcmVGaWxlPltdLAogICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiB0cnVlLAogICAgICAgICAgJ2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzJzogZmFsc2UsCiAgICAgICAgICAncGF0aERlcGVuZGVuY2llcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAnZGFydFZlcnNpb24nOiAnc3RhYmxlJywKICAgICAgICAgICdhZGREb2NrZXJmaWxlJzogdHJ1ZSwKICAgICAgICB9KSwKICAgICAgKTsKICAgIH0pOwoKICAgIHRlc3QoCiAgICAgICd1cGRhdGVzIGNvbnRleHQudmFycyB3aGVuIGJ1aWxkUm91dGVDb25maWd1cmF0aW9uIHN1Y2NlZWRzJywKICAgICAgKCkgYXN5bmMgewogICAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgICBnbG9iYWxNaWRkbGV3YXJlOiBNaWRkbGV3YXJlRmlsZSgKICAgICAgICAgICAgbmFtZTogJ21pZGRsZXdhcmUnLAogICAgICAgICAgICBwYXRoOiAnbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICksCiAgICAgICAgICBtaWRkbGV3YXJlOiBbCiAgICAgICAgICAgIE1pZGRsZXdhcmVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8vbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICBkaXJlY3RvcmllczogWwogICAgICAgICAgICBSb3V0ZURpcmVjdG9yeSgKICAgICAgICAgICAgICBuYW1lOiAnXycsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICAgICAgICBmaWxlczogWwogICAgICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLAogICAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICByb3V0ZXM6IFsKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgcGF0aDogJ2luZGV4LmRhcnQnLAogICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICBdLAogICAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgICAgZW5kcG9pbnRzOiB7CiAgICAgICAgICAgICcvJzogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICAgICAnL2hlbGxvJzogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgIF0sCiAgICAgICAgICB9LAogICAgICAgICAgc2VydmVTdGF0aWNGaWxlczogdHJ1ZSwKICAgICAgICApOwogICAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgICBlcXVhbHMoewogICAgICAgICAgICAnZGlyZWN0b3JpZXMnOiBbCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ25hbWUnOiAnXycsCiAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAnbWlkZGxld2FyZSc6IDxNYXA8U3RyaW5nLCBkeW5hbWljPj5bXSwKICAgICAgICAgICAgICAgICdmaWxlcyc6IFsKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICduYW1lJzogJ2luZGV4JywKICAgICAgICAgICAgICAgICAgICAncGF0aCc6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAgICAgJ2ZpbGVfcGFyYW1zJzogY29uc3QgPFN0cmluZz5bXSwKICAgICAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICduYW1lJzogJ2hlbGxvJywKICAgICAgICAgICAgICAgICAgICAncGF0aCc6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICAgICAncm91dGUnOiAnL2hlbGxvJywKICAgICAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgICAgICd3aWxkY2FyZCc6IGZhbHNlLAogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgJ2RpcmVjdG9yeV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ3JvdXRlcyc6IFsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdpbmRleCcsCiAgICAgICAgICAgICAgICAncGF0aCc6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICAgICdyb3V0ZSc6ICcvJywKICAgICAgICAgICAgICAgICdmaWxlX3BhcmFtcyc6IGNvbnN0IDxTdHJpbmc+W10sCiAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICduYW1lJzogJ2hlbGxvJywKICAgICAgICAgICAgICAgICdwYXRoJzogJ2hlbGxvLmRhcnQnLAogICAgICAgICAgICAgICAgJ3JvdXRlJzogJy9oZWxsbycsCiAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgJ3dpbGRjYXJkJzogZmFsc2UsCiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAnbWlkZGxld2FyZSc6IFsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgICAgICdwYXRoJzogJ2hlbGxvL21pZGRsZXdhcmUuZGFydCcsCiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiB7CiAgICAgICAgICAgICAgJ25hbWUnOiAnbWlkZGxld2FyZScsCiAgICAgICAgICAgICAgJ3BhdGgnOiAnbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICAgfSwKICAgICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiB0cnVlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGZhbHNlLAogICAgICAgICAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBmYWxzZSwKICAgICAgICAgICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiA8U3RyaW5nPltdLAogICAgICAgICAgICAnZGFydFZlcnNpb24nOiAnc3RhYmxlJywKICAgICAgICAgICAgJ2FkZERvY2tlcmZpbGUnOiB0cnVlLAogICAgICAgICAgfSksCiAgICAgICAgKTsKICAgICAgfSwKICAgICk7CiAgfSk7Cn0K", + "type": "text" + }, + { + "path": "build/test/pubspec_locks.dart", + "data": + "Ly8vIEFuIGFydGlmaWNpYWxseSBjcmFmdGVkIGBwdWJzcGVjLmxvY2tgIGZpbGUgd2l0aDoKLy8vCi8vLyAqIEEgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5LgovLy8gKiBBIGRpcmVjdCBtYWluIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIG5vdCBhIGNoaWxkIG9mIHRoZSBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLyAqIEEgZGlyZWN0IG1haW4gcGF0aCBkZXBlbmRlbmN5IHRoYXQgaXMgbm90IGEgY2hpbGQgb2YgdGhlIHByb2plY3QKLy8vIGRpcmVjdG9yeSBhbmQgaGFzIGEgZGlmZmVyZW50IHBhY2thZ2UgbmFtZSB0aGFuIHRoZSBkaXJlY3RvcnkgbmFtZS4KLy8vICogQSBkaXJlY3QgbWFpbiBkZXBlbmRlbmN5IHRoYXQgaXMgaG9zdGVkLgovLy8gKiBBIGRpcmVjdCBkZXYgbWFpbiBkZXBlbmRlbmN5IHRoYXQgaXMgaG9zdGVkLgovLy8gKiBBIGRpcmVjdCBvdmVycmlkZGVuIGRlcGVuZGVuY3kgZnJvbSBnaXQuCmNvbnN0IGZvb1BhdGggPSAnJycKcGFja2FnZXM6CiAgYXJnczoKICAgIGRlcGVuZGVuY3k6IHRyYW5zaXRpdmUKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiBhcmdzCiAgICAgIHNoYTI1NjogZWVmNmM0NmI2MjJlMDQ5NGEzNmM1YTEyZDEwZDc3ZmI0ZTg1NTUwMWE5MWMxYjllZjkzMzkzMjZlNThmMDU5NgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjIuNC4yIgogIGZvbzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAiLi4vLi4vZm9vIgogICAgICByZWxhdGl2ZTogdHJ1ZQogICAgc291cmNlOiBwYXRoCiAgICB2ZXJzaW9uOiAiMC4wLjAiCiAgc2Vjb25kX2ZvbzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAiLi4vLi4vZm9vMiIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjAuMC4wIgogIGRpcmVjdF9tYWluOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGRpcmVjdF9tYWluCiAgICAgIHNoYTI1NjogZmRjOWVhOTA1ZTdjNjkwZmUzOWQyZjk5NDZiN2FlYWQ4NmZkOTc2ZjhlZGY5N2QyNTIxYTY1ZDI2MGJiZjUwOQogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjAuMS4wLWRldi41MCIKICB0ZXN0OgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBkZXYiCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogdGVzdAogICAgICBzaGEyNTY6ICI5YjBkZDhlMzZhZjRhNWIxNTY5MDI5OTQ5ZDUwYTUyY2IyYTJhMmZkYWEyMGNlYmI5NmU2NjAzYjlhZTI0MWY5IgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjEuMjQuNiIKICBkaXJlY3Rfb3ZlcnJpZGRlbjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3Qgb3ZlcnJpZGRlbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGFja2FnZXMvbWFzb24iCiAgICAgIHJlZjogIjcyYzMwNmE4ZDhhYmYzMDZiNWQwMjRmOTVhYWMyOWJhNWZkOTY1NzciCiAgICAgIHJlc29sdmVkLXJlZjogIjcyYzMwNmE4ZDhhYmYzMDZiNWQwMjRmOTVhYWMyOWJhNWZkOTY1NzciCiAgICAgIHVybDogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGVzdGlhZ28vbWFzb24iCiAgICBzb3VyY2U6IGdpdAogICAgdmVyc2lvbjogIjAuMS4wLWRldi41MiIKc2RrczoKICBkYXJ0OiAiPj0zLjAuMCA8NC4wLjAiCicnJzsKCi8vLyBBbiBhcnRpZmljaWFsbHkgY3JhZnRlZCBgcHVic3BlYy5sb2NrYCBmaWxlIHdpdGg6Ci8vLwovLy8gKiBBIHRyYW5zaXRpdmUgZGVwZW5kZW5jeS4KLy8vICogQSBkaXJlY3QgbWFpbiBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3QgYSBjaGlsZCBvZiB0aGUgcHJvamVjdAovLy8gZGlyZWN0b3J5LgovLy8gKiBBIGRpcmVjdCBtYWluIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIGEgY2hpbGQgb2YgdGhlIHByb2plY3QgZGlyZWN0b3J5LgovLy8gKiBBIGRpcmVjdCBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCi8vLyAqIEEgZGlyZWN0IGRldiBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCmNvbnN0IGZvb1BhdGhXaXRoSW50ZXJuYWxEZXBlbmRlbmN5ID0gJycnCnBhY2thZ2VzOgogIGFyZ3M6CiAgICBkZXBlbmRlbmN5OiB0cmFuc2l0aXZlCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogYXJncwogICAgICBzaGEyNTY6IGVlZjZjNDZiNjIyZTA0OTRhMzZjNWExMmQxMGQ3N2ZiNGU4NTU1MDFhOTFjMWI5ZWY5MzM5MzI2ZTU4ZjA1OTYKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIyLjQuMiIKICBmb286CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgcGF0aDogIi4uLy4uL2ZvbyIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjAuMC4wIgogIGJhcjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGFja2FnZXMvYmFyIgogICAgICByZWxhdGl2ZTogdHJ1ZQogICAgc291cmNlOiBwYXRoCiAgICB2ZXJzaW9uOiAiMC4wLjAiCiAgbWFzb246CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogbWFzb24KICAgICAgc2hhMjU2OiBmZGM5ZWE5MDVlN2M2OTBmZTM5ZDJmOTk0NmI3YWVhZDg2ZmQ5NzZmOGVkZjk3ZDI1MjFhNjVkMjYwYmJmNTA5CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMC4xLjAtZGV2LjUwIgogIHRlc3Q6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB0ZXN0CiAgICAgIHNoYTI1NjogIjliMGRkOGUzNmFmNGE1YjE1NjkwMjk5NDlkNTBhNTJjYjJhMmEyZmRhYTIwY2ViYjk2ZTY2MDNiOWFlMjQxZjkiCiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMS4yNC42IgpzZGtzOgogIGRhcnQ6ICI+PTMuMC4wIDw0LjAuMCIKJycnOwoKLy8vIEFuIGFydGlmaWNpYWxseSBjcmFmdGVkIGBwdWJzcGVjLmxvY2tgIGZpbGUgd2l0aDoKLy8vCi8vLyAqIEEgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5LgovLy8gKiBBIGRpcmVjdCBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCi8vLyAqIEEgZGlyZWN0IGRldiBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCmNvbnN0IG5vUGF0aERlcGVuZGVuY2llcyA9ICcnJwpwYWNrYWdlczoKICBhcmdzOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFyZ3MKICAgICAgc2hhMjU2OiBlZWY2YzQ2YjYyMmUwNDk0YTM2YzVhMTJkMTBkNzdmYjRlODU1NTAxYTkxYzFiOWVmOTMzOTMyNmU1OGYwNTk2CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMi40LjIiCiAgbWFzb246CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogbWFzb24KICAgICAgc2hhMjU2OiBmZGM5ZWE5MDVlN2M2OTBmZTM5ZDJmOTk0NmI3YWVhZDg2ZmQ5NzZmOGVkZjk3ZDI1MjFhNjVkMjYwYmJmNTA5CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMC4xLjAtZGV2LjUwIgogIHRlc3Q6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB0ZXN0CiAgICAgIHNoYTI1NjogIjliMGRkOGUzNmFmNGE1YjE1NjkwMjk5NDlkNTBhNTJjYjJhMmEyZmRhYTIwY2ViYjk2ZTY2MDNiOWFlMjQxZjkiCiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMS4yNC42IgpzZGtzOgogIGRhcnQ6ICI+PTMuMC4wIDw0LjAuMCIKJycnOwo=", + "type": "text" + }, + { + "path": "build/test/src/copy_workspace_pubspec_lock_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tIb29rQ29udGV4dCBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7fQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaycsICgpIHsKICAgIGxhdGUgTGlzdDxpbnQ+IGV4aXRDYWxsczsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKICAgIGxhdGUgRGlyZWN0b3J5IHByb2plY3REaXJlY3Rvcnk7CiAgICBsYXRlIERpcmVjdG9yeSByb290RGlyZWN0b3J5OwoKICAgIHNldFVwKCgpIHsKICAgICAgZXhpdENhbGxzID0gW107CiAgICAgIGNvbnRleHQgPSBfTW9ja0hvb2tDb250ZXh0KCk7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIHJvb3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygncm9vdCcpOwogICAgICBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgICAgIHBhdGguam9pbihyb290RGlyZWN0b3J5LnBhdGgsICdwYWNrYWdlcycsICdwcm9qZWN0JyksCiAgICAgICkuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKCiAgICAgIHdoZW4oKCkgPT4gY29udGV4dC5sb2dnZXIpLnRoZW5SZXR1cm4obG9nZ2VyKTsKCiAgICAgIGFkZFRlYXJEb3duKCgpIHsKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LmRlbGV0ZSgpLmlnbm9yZSgpOwogICAgICAgIHJvb3REaXJlY3RvcnkuZGVsZXRlKCkuaWdub3JlKCk7CiAgICAgIH0pOwogICAgfSk7CgogICAgdGVzdCgnZG9lcyBub3RoaW5nIHdoZW4gcHVic3BlYy5sb2NrIGRvZXMgbm90IGV4aXN0IGluIHdvcmtzcGFjZSByb290JywgKCkgewogICAgICBjb3B5V29ya3NwYWNlUHVic3BlY0xvY2soCiAgICAgICAgY29udGV4dCwKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgd29ya3NwYWNlUm9vdDogcm9vdERpcmVjdG9yeS5wYXRoLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIGV4cGVjdChwcm9qZWN0RGlyZWN0b3J5Lmxpc3RTeW5jKCksIGlzRW1wdHkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMgd2l0aCBlcnJvciB3aGVuIHVuYWJsZSB0byBjb3B5IGxvY2tmaWxlJywgKCkgewogICAgICBjb25zdCBwdWJzcGVjTG9ja0NvbnRlbnRzID0gJycnCiMgR2VuZXJhdGVkIGJ5IHB1YgojIFNlZSBodHRwczovL2RhcnQuZGV2L3Rvb2xzL3B1Yi9nbG9zc2FyeSNsb2NrZmlsZQpwYWNrYWdlczoKJycnOwogICAgICBmaW5hbCBmaWxlID0gRmlsZShwYXRoLmpvaW4ocm9vdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpCiAgICAgICAgLi53cml0ZUFzU3RyaW5nU3luYyhwdWJzcGVjTG9ja0NvbnRlbnRzKTsKICAgICAgUHJvY2Vzcy5ydW5TeW5jKCdjaG1vZCcsIFsnMDAwJywgZmlsZS5wYXRoXSk7CiAgICAgIGNvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaygKICAgICAgICBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICB3b3Jrc3BhY2VSb290OiByb290RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmVycihhbnkodGhhdDogY29udGFpbnMoJ1Blcm1pc3Npb24gZGVuaWVkJykpKSwKICAgICAgKTsKICAgIH0pOwoKICAgIHRlc3QoJ2NvcGllcyBwdWJzcGVjLmxvY2sgdG8gcHJvamVjdCBkaXJlY3Rvcnkgd2hlbiBmb3VuZCcsICgpIHsKICAgICAgY29uc3QgcHVic3BlY0xvY2tDb250ZW50cyA9ICcnJwojIEdlbmVyYXRlZCBieSBwdWIKIyBTZWUgaHR0cHM6Ly9kYXJ0LmRldi90b29scy9wdWIvZ2xvc3NhcnkjbG9ja2ZpbGUKcGFja2FnZXM6CicnJzsKICAgICAgRmlsZShwYXRoLmpvaW4ocm9vdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpCiAgICAgICAgICAud3JpdGVBc1N0cmluZ1N5bmMocHVic3BlY0xvY2tDb250ZW50cyk7CiAgICAgIGNvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaygKICAgICAgICBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICB3b3Jrc3BhY2VSb290OiByb290RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeUNvbnRlbnRzID0gcHJvamVjdERpcmVjdG9yeS5saXN0U3luYygpOwogICAgICBleHBlY3QocHJvamVjdERpcmVjdG9yeUNvbnRlbnRzLCBoYXNMZW5ndGgoMSkpOwogICAgICBleHBlY3QoCiAgICAgICAgcHJvamVjdERpcmVjdG9yeUNvbnRlbnRzLmZpcnN0LAogICAgICAgIGlzQTxGaWxlPigpLmhhdmluZygKICAgICAgICAgIChmKSA9PiBwYXRoLmJhc2VuYW1lKGYucGF0aCksCiAgICAgICAgICAnbmFtZScsCiAgICAgICAgICAncHVic3BlYy5sb2NrJywKICAgICAgICApLAogICAgICApOwogICAgICBleHBlY3QoCiAgICAgICAgKHByb2plY3REaXJlY3RvcnlDb250ZW50cy5maXJzdCBhcyBGaWxlKS5yZWFkQXNTdHJpbmdTeW5jKCksCiAgICAgICAgZXF1YWxzKHB1YnNwZWNMb2NrQ29udGVudHMpLAogICAgICApOwogICAgfSk7CiAgfSk7Cn0K", + "type": "text" + }, + { + "path": "build/test/src/create_bundle_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcgaGlkZSBjcmVhdGVCdW5kbGU7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9CgpjbGFzcyBfTW9ja1Byb2dyZXNzIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIFByb2dyZXNzIHt9CgpjbGFzcyBfRmFrZUhvb2tDb250ZXh0IGV4dGVuZHMgRmFrZSBpbXBsZW1lbnRzIEhvb2tDb250ZXh0IHsKICBfRmFrZUhvb2tDb250ZXh0KHtMb2dnZXI/IGxvZ2dlcn0pIDogX2xvZ2dlciA9IGxvZ2dlciA/PyBfTW9ja0xvZ2dlcigpOwoKICBmaW5hbCBMb2dnZXIgX2xvZ2dlcjsKCiAgdmFyIF92YXJzID0gPFN0cmluZywgZHluYW1pYz57fTsKCiAgQG92ZXJyaWRlCiAgTWFwPFN0cmluZywgZHluYW1pYz4gZ2V0IHZhcnMgPT4gX3ZhcnM7CgogIEBvdmVycmlkZQogIHNldCB2YXJzKE1hcDxTdHJpbmcsIGR5bmFtaWM+IHZhbHVlKSA9PiBfdmFycyA9IHZhbHVlOwoKICBAb3ZlcnJpZGUKICBMb2dnZXIgZ2V0IGxvZ2dlciA9PiBfbG9nZ2VyOwp9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUJ1bmRsZScsICgpIHsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKCiAgICBzZXRVcCgoKSB7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGNvbnRleHQgPSBfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKTsKCiAgICAgIHdoZW4oKCkgPT4gbG9nZ2VyLnByb2dyZXNzKGFueSgpKSkudGhlblJldHVybihfTW9ja1Byb2dyZXNzKCkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBpZiBidW5kbGluZyB0aHJvd3MnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IGNyZWF0ZUJ1bmRsZSgKICAgICAgICBjb250ZXh0OiBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IERpcmVjdG9yeSgnL2ludmFsaWQvZGlyJyksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeSgnL2ludmFsaWQvZGlyL2J1aWxkJyksCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICB2ZXJpZnkoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpLmNhbGxlZCgxKTsKICAgIH0pOwoKICAgIHRlc3QoJ2RvZXMgbm90IHRocm93IHdoZW4gYnVuZGxpbmcgc3VjY2VlZHMnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBmaW5hbCBkb3REYXJ0RnJvZ0RpciA9CiAgICAgICAgICBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy5kYXJ0X2Zyb2cnKSkKICAgICAgICAgICAgLi5jcmVhdGVTeW5jKCk7CiAgICAgIGZpbmFsIGJ1aWxkRGlyZWN0b3J5ID0KICAgICAgICAgIERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSkuLmNyZWF0ZVN5bmMoKTsKICAgICAgZmluYWwgb2xkQnVpbGRBcnRpZmFjdCA9CiAgICAgICAgICBGaWxlKHBhdGguam9pbihidWlsZERpcmVjdG9yeS5wYXRoLCAnYXJ0aWZhY3QudHh0JykpLi5jcmVhdGVTeW5jKCk7CgogICAgICBhd2FpdCBjcmVhdGVCdW5kbGUoCiAgICAgICAgY29udGV4dDogY29udGV4dCwKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBidWlsZERpcmVjdG9yeSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwoKICAgICAgZXhwZWN0KGRvdERhcnRGcm9nRGlyLmV4aXN0c1N5bmMoKSwgaXNGYWxzZSk7CiAgICAgIGV4cGVjdChidWlsZERpcmVjdG9yeS5leGlzdHNTeW5jKCksIGlzVHJ1ZSk7CiAgICAgIGV4cGVjdChvbGRCdWlsZEFydGlmYWN0LmV4aXN0c1N5bmMoKSwgaXNGYWxzZSk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICB9KTsKICB9KTsKfQo=", + "type": "text" + }, + { + "path": "build/test/src/create_external_packages_folder_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwoKICAgIHRlc3QoImRvZXNuJ3Qgb3ZlcnJpZGUgZXhpc3Rpbmcgb3ZlcnJpZGVzIiwgKCkgYXN5bmMgewogICAgICBjb25zdCBleGlzdGluZ092ZXJyaWRlcyA9ICcnJwpkZXBlbmRlbmN5X292ZXJyaWRlczoKICBkYXJ0X2Zyb2c6CiAgICBnaXQ6CiAgICAgIHVybDogaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtZnJvZy1kZXYvZGFydF9mcm9nCiAgICAgIHBhdGg6IHBhY2thZ2VzL2RhcnRfZnJvZwonJyc7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdidWlsZCcsICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICkKICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMoZXhpc3RpbmdPdmVycmlkZXMpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSwKICAgICAgKS53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgICAgZXhwZWN0KAogICAgICAgIEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICkucmVhZEFzU3RyaW5nU3luYygpLAogICAgICAgIGNvbnRhaW5zKGV4aXN0aW5nT3ZlcnJpZGVzKSwKICAgICAgKTsKICAgIH0pOwogIH0pOwp9Cg==", + "type": "text" + }, + { + "path": "build/test/src/dart_pub_get_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnRlc3QvdGVzdC5kYXJ0JzsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdkYXJ0UHViR2V0JywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIGNvbnN0IHByb2Nlc3NJZCA9IDQyOwogICAgZmluYWwgcHJvY2Vzc1Jlc3VsdCA9IFByb2Nlc3NSZXN1bHQoCiAgICAgIHByb2Nlc3NJZCwKICAgICAgRXhpdENvZGUuc3VjY2Vzcy5jb2RlLAogICAgICAnJywKICAgICAgJycsCiAgICApOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdjb21wbGV0ZXMgd2hlbiBwcm9jZXNzIHN1Y2NlZWRzJywgKCkgYXN5bmMgewogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwoKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICBleHBlY3QoZXhlY3V0YWJsZSwgZXF1YWxzKCdkYXJ0JykpOwogICAgICAgICAgZXhwZWN0KGFyZ3MsIGVxdWFscyhbJ3B1YicsICdnZXQnXSkpOwogICAgICAgICAgZXhwZWN0KHdvcmtpbmdEaXJlY3RvcnksIGVxdWFscygnLicpKTsKICAgICAgICAgIGV4cGVjdChydW5JblNoZWxsLCBpc1RydWUpOwogICAgICAgICAgcmV0dXJuIHByb2Nlc3NSZXN1bHQ7CiAgICAgICAgfSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMgd2hlbiBwcm9jZXNzIGZhaWxzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBlcnJvciA9ICdvb3BzIHNvbWV0aGluZyB3ZW50IHdyb25nJzsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKCiAgICAgIGZpbmFsIHByb2Nlc3NSZXN1bHQgPSBQcm9jZXNzUmVzdWx0KAogICAgICAgIHByb2Nlc3NJZCwKICAgICAgICBFeGl0Q29kZS5zb2Z0d2FyZS5jb2RlLAogICAgICAgICcnLAogICAgICAgIGVycm9yLAogICAgICApOwoKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICByZXR1cm4gcHJvY2Vzc1Jlc3VsdDsKICAgICAgICB9LAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbRXhpdENvZGUuc29mdHdhcmUuY29kZV0pKTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5lcnIoZXJyb3IpKS5jYWxsZWQoMSk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0cyB3aGVuIFByb2Nlc3NFeGNlcHRpb24gb2NjdXJzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBlcnJvciA9ICdvb3BzIHNvbWV0aGluZyB3ZW50IHdyb25nJzsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICB0aHJvdyBQcm9jZXNzRXhjZXB0aW9uKAogICAgICAgICAgICAnZGFydCcsCiAgICAgICAgICAgIFsncHViJywgJ2dldCddLAogICAgICAgICAgICBlcnJvciwKICAgICAgICAgICAgRXhpdENvZGUuc29mdHdhcmUuY29kZSwKICAgICAgICAgICk7CiAgICAgICAgfSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoW0V4aXRDb2RlLnNvZnR3YXJlLmNvZGVdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGVycm9yKSkuY2FsbGVkKDEpOwogICAgfSk7CiAgfSk7Cn0K", + "type": "text" + }, + { + "path": "build/test/src/disable_workspace_resolution_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnIGhpZGUgUGFja2FnZTsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tIb29rQ29udGV4dCBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7fQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9CgpjbGFzcyBfTW9ja1BhY2thZ2VDb25maWcgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUGFja2FnZUNvbmZpZyB7fQoKY2xhc3MgX01vY2tQYWNrYWdlR3JhcGggZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUGFja2FnZUdyYXBoIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2Rpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uJywgKCkgewogICAgY29uc3QgcGFja2FnZU5hbWUgPSAnc2VydmVyJzsKCiAgICBsYXRlIExpc3Q8aW50PiBleGl0Q2FsbHM7CiAgICBsYXRlIEhvb2tDb250ZXh0IGNvbnRleHQ7CiAgICBsYXRlIExvZ2dlciBsb2dnZXI7CiAgICBsYXRlIERpcmVjdG9yeSByb290RGlyZWN0b3J5OwogICAgbGF0ZSBEaXJlY3RvcnkgcHJvamVjdERpcmVjdG9yeTsKICAgIGxhdGUgUGFja2FnZUNvbmZpZyBwYWNrYWdlQ29uZmlnOwogICAgbGF0ZSBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoOwoKICAgIHNldFVwKCgpIHsKICAgICAgZXhpdENhbGxzID0gW107CiAgICAgIGNvbnRleHQgPSBfTW9ja0hvb2tDb250ZXh0KCk7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIHJvb3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygncm9vdCcpOwogICAgICBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgICAgIHBhdGguam9pbihyb290RGlyZWN0b3J5LnBhdGgsICdwYWNrYWdlcycsICdwcm9qZWN0JyksCiAgICAgICkuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgRmlsZShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJykpCiAgICAgICAgICAud3JpdGVBc1N0cmluZ1N5bmMoJ25hbWU6ICIkcGFja2FnZU5hbWUiJyk7CiAgICAgIHBhY2thZ2VDb25maWcgPSBfTW9ja1BhY2thZ2VDb25maWcoKTsKICAgICAgcGFja2FnZUdyYXBoID0gX01vY2tQYWNrYWdlR3JhcGgoKTsKCiAgICAgIHdoZW4oKCkgPT4gY29udGV4dC5sb2dnZXIpLnRoZW5SZXR1cm4obG9nZ2VyKTsKICAgICAgd2hlbigoKSA9PiBwYWNrYWdlR3JhcGgucm9vdHMpLnRoZW5SZXR1cm4oW3BhY2thZ2VOYW1lXSk7CiAgICAgIHdoZW4oKCkgPT4gcGFja2FnZUdyYXBoLnBhY2thZ2VzKS50aGVuUmV0dXJuKAogICAgICAgIFsKICAgICAgICAgIGNvbnN0IFBhY2thZ2VHcmFwaFBhY2thZ2UoCiAgICAgICAgICAgIG5hbWU6IHBhY2thZ2VOYW1lLAogICAgICAgICAgICBkZXBlbmRlbmNpZXM6IFtdLAogICAgICAgICAgICBkZXZEZXBlbmRlbmNpZXM6IFtdLAogICAgICAgICAgICB2ZXJzaW9uOiAnMS4wLjAnLAogICAgICAgICAgKSwKICAgICAgICBdLAogICAgICApOwogICAgICB3aGVuKCgpID0+IHBhY2thZ2VDb25maWcucGFja2FnZXMpLnRoZW5SZXR1cm4oW10pOwoKICAgICAgYWRkVGVhckRvd24oKCkgPT4gcHJvamVjdERpcmVjdG9yeS5kZWxldGUoKS5pZ25vcmUoKSk7CiAgICB9KTsKCiAgICBncm91cCgnd2hlbiBwdWJzcGVjX292ZXJyaWRlcy55YW1sIGRvZXMgbm90IGV4aXN0JywgKCkgewogICAgICB0ZXN0KCdhZGRzIHJlc29sdXRpb246IG51bGwnLCAoKSB7CiAgICAgICAgZGlzYWJsZVdvcmtzcGFjZVJlc29sdXRpb24oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgICAgIHBhY2thZ2VHcmFwaDogcGFja2FnZUdyYXBoLAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgd29ya3NwYWNlUm9vdDogcm9vdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICApOwogICAgICAgIGZpbmFsIGNvbnRlbnRzID0gcHJvamVjdERpcmVjdG9yeS5saXN0U3luYygpOwogICAgICAgIGV4cGVjdChjb250ZW50cywgaGFzTGVuZ3RoKDIpKTsKICAgICAgICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gY29udGVudHMuZmlyc3RXaGVyZSgKICAgICAgICAgIChwKSA9PiBwYXRoLmJhc2VuYW1lKHAucGF0aCkgPT0gJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnLAogICAgICAgICkgYXMgRmlsZTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBwdWJzcGVjT3ZlcnJpZGVzLnJlYWRBc1N0cmluZ1N5bmMoKSwKICAgICAgICAgIGVxdWFscygnJycKcmVzb2x1dGlvbjogbnVsbApkZXBlbmRlbmN5X292ZXJyaWRlczoge30KJycnKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHB1YnNwZWNfb3ZlcnJpZGVzLnlhbWwgZXhpc3RzJywgKCkgewogICAgICBjb25zdCBvcmlnaW5hbFB1YnNwZWNPdmVycmlkZXNDb250ZW50ID0gJycnCmRlcGVuZGVuY3lfb3ZlcnJpZGVzOgogIGZvbzoKICAgIHBhdGg6IC4vcGF0aC90by9mb28nJyc7CgogICAgICBzZXRVcCgoKSB7CiAgICAgICAgRmlsZSgKICAgICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgKS53cml0ZUFzU3RyaW5nU3luYyhvcmlnaW5hbFB1YnNwZWNPdmVycmlkZXNDb250ZW50KTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdhZGRzIHJlc29sdXRpb246IG51bGwnLCAoKSB7CiAgICAgICAgZGlzYWJsZVdvcmtzcGFjZVJlc29sdXRpb24oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgICAgIHBhY2thZ2VHcmFwaDogcGFja2FnZUdyYXBoLAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgd29ya3NwYWNlUm9vdDogcm9vdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICApOwogICAgICAgIGZpbmFsIGNvbnRlbnRzID0gcHJvamVjdERpcmVjdG9yeS5saXN0U3luYygpOwogICAgICAgIGV4cGVjdChjb250ZW50cywgaGFzTGVuZ3RoKDIpKTsKICAgICAgICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gY29udGVudHMuZmlyc3RXaGVyZSgKICAgICAgICAgIChwKSA9PiBwYXRoLmJhc2VuYW1lKHAucGF0aCkgPT0gJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnLAogICAgICAgICkgYXMgRmlsZTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBwdWJzcGVjT3ZlcnJpZGVzLnJlYWRBc1N0cmluZ1N5bmMoKSwKICAgICAgICAgIGVxdWFscygKICAgICAgICAgICAgJycnCiRvcmlnaW5hbFB1YnNwZWNPdmVycmlkZXNDb250ZW50CnJlc29sdXRpb246IG51bGwKJycnLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHVuYWJsZSB0byByZWFkIHB1YnNwZWNfb3ZlcnJpZGVzJywgKCkgewogICAgICBzZXRVcCgoKSB7CiAgICAgICAgZmluYWwgcHVic3BlY092ZXJyaWRlcyA9IEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICkuLmNyZWF0ZVN5bmMoKTsKICAgICAgICBQcm9jZXNzLnJ1blN5bmMoJ2NobW9kJywgWycwMDAnLCBwdWJzcGVjT3ZlcnJpZGVzLnBhdGhdKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdleGl0cyB3aXRoIGVycm9yJywgKCkgewogICAgICAgIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgY29udGV4dCwKICAgICAgICAgIHBhY2thZ2VDb25maWc6IHBhY2thZ2VDb25maWcsCiAgICAgICAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICAgICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAgIHdvcmtzcGFjZVJvb3Q6IHJvb3REaXJlY3RvcnkucGF0aCwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgKTsKICAgICAgICBmaW5hbCBjb250ZW50cyA9IHByb2plY3REaXJlY3RvcnkubGlzdFN5bmMoKTsKICAgICAgICBleHBlY3QoY29udGVudHMsIGhhc0xlbmd0aCgyKSk7CiAgICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICAgIHZlcmlmeSgKICAgICAgICAgICgpID0+IGxvZ2dlci5lcnIoYW55KHRoYXQ6IGNvbnRhaW5zKCdQZXJtaXNzaW9uIGRlbmllZCcpKSksCiAgICAgICAgKS5jYWxsZWQoMSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7Cn0K", + "type": "text" + }, + { + "path": "build/test/src/exit_overrides_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdFeGl0T3ZlcnJpZGVzJywgKCkgewogICAgZ3JvdXAoJ3J1blpvbmVkJywgKCkgewogICAgICB0ZXN0KCd1c2VzIGRlZmF1bHQgZXhpdCB3aGVuIG5vdCBzcGVjaWZpZWQnLCAoKSB7CiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgoKSB7CiAgICAgICAgICBmaW5hbCBvdmVycmlkZXMgPSBFeGl0T3ZlcnJpZGVzLmN1cnJlbnQ7CiAgICAgICAgICBleHBlY3Qob3ZlcnJpZGVzIS5leGl0LCBlcXVhbHMoZXhpdCkpOwogICAgICAgIH0pOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ3VzZXMgY3VzdG9tIGV4aXQgd2hlbiBzcGVjaWZpZWQnLCAoKSB7CiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgKICAgICAgICAgICgpIHsKICAgICAgICAgICAgZmluYWwgb3ZlcnJpZGVzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogICAgICAgICAgICBleHBlY3Qob3ZlcnJpZGVzIS5leGl0LCBpc05vdChlcXVhbHMoZXhpdCkpKTsKICAgICAgICAgIH0sCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKTsKICAgICAgfSk7CiAgICB9KTsKICB9KTsKfQo=", + "type": "text" + }, + { + "path": "build/test/src/get_internal_path_dependencies_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2dldFBhdGhEZXBlbmRlbmNpZXMnLCAoKSB7CiAgICB0ZXN0KCdyZXR1cm5zIG5vdGhpbmcgd2hlbiB0aGVyZSBhcmUgbm8gcGF0aCBkZXBlbmRlbmNpZXMnLCAoKSB7CiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgICcnJwpwYWNrYWdlczoKICB0ZXN0OgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFuYWx5emVyCiAgICAgIHNoYTI1NjogZjg1NTY2ZWM3YjNkMjVjYmVhNjBmN2RkNGYxNTdjNTAyNWYyZjE5MjMzY2E0ZmVlZWQzM2I2MTZjNzhhMjZhMwogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjYuMS4wIgogIG1hc29uOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFuYWx5emVyCiAgICAgIHNoYTI1NjogZjg1NTY2ZWM3YjNkMjVjYmVhNjBmN2RkNGYxNTdjNTAyNWYyZjE5MjMzY2E0ZmVlZWQzM2I2MTZjNzhhMjZhMwogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjYuMS4wIgonJycsCiAgICAgICk7CiAgICAgIGV4cGVjdChnZXRJbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMoZGlyZWN0b3J5KSwgY29tcGxldGlvbihpc0VtcHR5KSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3JldHVybnMgY29ycmVjdCBwYXRoIGRlcGVuZGVuY2llcycsICgpIHsKICAgICAgZmluYWwgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgJycnCnBhY2thZ2VzOgogIGRhcnRfZnJvZzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGF0aC90by9kYXJ0X2Zyb2ciCiAgICAgIHJlbGF0aXZlOiB0cnVlCiAgICBzb3VyY2U6IHBhdGgKICAgIHZlcnNpb246ICIwLjAuMCIKICBkYXJ0X2Zyb2dfZ2VuOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgogICAgZGVzY3JpcHRpb246CiAgICAgIHBhdGg6ICJwYXRoL3RvL2RhcnRfZnJvZ19nZW4iCiAgICAgIHJlbGF0aXZlOiB0cnVlCiAgICBzb3VyY2U6IHBhdGgKICAgIHZlcnNpb246ICIwLjAuMCIKJycnLAogICAgICApOwogICAgICBleHBlY3QoCiAgICAgICAgZ2V0SW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzKGRpcmVjdG9yeSksCiAgICAgICAgY29tcGxldGlvbigKICAgICAgICAgIGVxdWFscyhbJ3BhdGgvdG8vZGFydF9mcm9nJywgJ3BhdGgvdG8vZGFydF9mcm9nX2dlbiddKSwKICAgICAgICApLAogICAgICApOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKICB9KTsKfQo=", + "type": "text" + }, + { + "path": "build/test/src/pubspec_lock/pubspec_lock_test.dart", + "data": + "Ly8gaWdub3JpbmcgZm9yIHRlc3RpbmcgcHVycG9zZXMKLy8gaWdub3JlX2Zvcl9maWxlOiBwcmVmZXJfY29uc3RfY29uc3RydWN0b3JzCgppbXBvcnQgJ3BhY2thZ2U6ZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzL3NyYy9wdWJzcGVjX2xvY2svcHVic3BlY19sb2NrLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6eWFtbC95YW1sLmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCckUHVic3BlY0xvY2snLCAoKSB7CiAgICBncm91cCgnZnJvbVN0cmluZycsICgpIHsKICAgICAgdGVzdCgncGFyc2VzIGNvcnJlY3RseScsICgpIHsKICAgICAgICBmaW5hbCBwdWJzcGVjTG9jayA9IFB1YnNwZWNMb2NrLmZyb21TdHJpbmcoX3B1YnNwZWNMb2NrQ29udGVudCk7CgogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHB1YnNwZWNMb2NrLnBhY2thZ2VzLAogICAgICAgICAgZXF1YWxzKAogICAgICAgICAgICBjb25zdCBbCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3ZlcnlfZ29vZF90ZXN0X3J1bm5lcicsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5kaXJlY3RNYWluLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3ZlcnlfZ29vZF9hbmFseXNpcycsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5kaXJlY3REZXYsCiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgICAgICAgICBuYW1lOiAneWFtbCcsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS50cmFuc2l0aXZlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3BhdGgnLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0T3ZlcnJpZGRlbiwKICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIFB1YnNwZWNMb2NrUGFja2FnZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdmb28nLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgICAgICAgICAgIHBhdGhEZXNjcmlwdGlvbjogUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICAgICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgICAgICAgICAgICByZWxhdGl2ZTogdHJ1ZSwKICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgICAgICAgICBuYW1lOiAneWFtbDInLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudHJhbnNpdGl2ZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ3Rocm93cyBhICRQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uIHdoZW4gY29udGVudCBpcyBlbXB0eScsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICAoKSA9PiBQdWJzcGVjTG9jay5mcm9tU3RyaW5nKCcnKSwKICAgICAgICAgIHRocm93c0EoaXNBPFB1YnNwZWNMb2NrUGFyc2VFeGNlcHRpb24+KCkpLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgncmV0dXJucyBlbXB0eSBQdWJzcGVjTG9jayB3aGVuIGNvbnRlbnQgaGFzIG5vIHBhY2thZ2VzIGVudHJ5JywgKCkgewogICAgICAgIGZpbmFsIHB1YnNwZWNMb2NrID0gUHVic3BlY0xvY2suZnJvbVN0cmluZyhfZW1wdHlQdWJzcGVjTG9ja0NvbnRlbnQpOwogICAgICAgIGV4cGVjdChwdWJzcGVjTG9jay5wYWNrYWdlcywgaXNFbXB0eSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7CgogIGdyb3VwKCckUHVic3BlY0xvY2tQYWNrYWdlJywgKCkgewogICAgdGVzdCgnY2FuIGJlIGluc3RhbnRpYXRlZCcsICgpIHsKICAgICAgZXhwZWN0KAogICAgICAgIFB1YnNwZWNMb2NrUGFja2FnZSgKICAgICAgICAgIG5hbWU6ICdmb28nLAogICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgICApLAogICAgICAgIGlzQTxQdWJzcGVjTG9ja1BhY2thZ2U+KCksCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdzdXBwb3J0cyB2YWx1ZSBlcXVhbGl0eScsICgpIHsKICAgICAgZmluYWwgcGFja2FnZTEgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2ZvbycsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgKTsKICAgICAgZmluYWwgcGFja2FnZTIgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2ZvbycsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgKTsKICAgICAgZmluYWwgcGFja2FnZTMgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2JhcicsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudHJhbnNpdGl2ZSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChwYWNrYWdlMSwgZXF1YWxzKHBhY2thZ2UyKSk7CiAgICAgIGV4cGVjdChwYWNrYWdlMSwgaXNOb3QoZXF1YWxzKHBhY2thZ2UzKSkpOwogICAgICBleHBlY3QocGFja2FnZTIsIGlzTm90KGVxdWFscyhwYWNrYWdlMykpKTsKICAgIH0pOwogIH0pOwoKICBncm91cCgnJFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlJywgKCkgewogICAgZ3JvdXAoJ3BhcnNlJywgKCkgewogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3QgbWFpbmAnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2RpcmVjdCBtYWluJyksCiAgICAgICAgICBlcXVhbHMoUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3QgZGV2YCcsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5wYXJzZSgnZGlyZWN0IGRldicpLAogICAgICAgICAgZXF1YWxzKFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLmRpcmVjdERldiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3Qgb3ZlcnJpZGRlbmAnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2RpcmVjdCBvdmVycmlkZGVuJyksCiAgICAgICAgICBlcXVhbHMoUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0T3ZlcnJpZGRlbiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGB0cmFuc2l0aXZlYCcsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5wYXJzZSgndHJhbnNpdGl2ZScpLAogICAgICAgICAgZXF1YWxzKFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLnRyYW5zaXRpdmUpLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgndGhyb3dzIGEgJEFyZ3VtZW50RXJyb3Igd2hlbiB0eXBlIGlzIGludmFsaWQnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgKCkgPT4gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2ludmFsaWQnKSwKICAgICAgICAgIHRocm93c0EoaXNBPEFyZ3VtZW50RXJyb3I+KCkpLAogICAgICAgICk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7CgogIGdyb3VwKCckUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24nLCAoKSB7CiAgICB0ZXN0KCdjYW4gYmUgaW5zdGFudGlhdGVkJywgKCkgewogICAgICBleHBlY3QoCiAgICAgICAgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICBwYXRoOiAncGFja2FnZXMvZm9vJywKICAgICAgICAgIHJlbGF0aXZlOiB0cnVlLAogICAgICAgICksCiAgICAgICAgaXNBPFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uPigpLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgnc3VwcG9ydHMgdmFsdWUgZXF1YWxpdHknLCAoKSB7CiAgICAgIGZpbmFsIGRlc2NyaXB0aW9uMSA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uKAogICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgIHJlbGF0aXZlOiB0cnVlLAogICAgICApOwogICAgICBmaW5hbCBkZXNjcmlwdGlvbjIgPSBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbigKICAgICAgICBwYXRoOiAncGFja2FnZXMvZm9vJywKICAgICAgICByZWxhdGl2ZTogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZGVzY3JpcHRpb24zID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgcGF0aDogJ3BhY2thZ2VzL2JhcicsCiAgICAgICAgcmVsYXRpdmU6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGRlc2NyaXB0aW9uNCA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uKAogICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgIHJlbGF0aXZlOiBmYWxzZSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChkZXNjcmlwdGlvbjEsIGVxdWFscyhkZXNjcmlwdGlvbjIpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMSwgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uMykpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMSwgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uNCkpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMywgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uNCkpKTsKICAgIH0pOwoKICAgIGdyb3VwKCd0cnlQYXJzZScsICgpIHsKICAgICAgdGVzdCgncGFyc2VzJywgKCkgewogICAgICAgIGZpbmFsIGRhdGEgPSBsb2FkWWFtbCgKICAgICAgICAgICcnJwpwYXRoOiAicGFja2FnZXMvZm9vIgpyZWxhdGl2ZTogdHJ1ZQogICAgICAgICAgICAnJycsCiAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICBmaW5hbCBkZXNjcmlwdGlvbiA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRhdGEpOwoKICAgICAgICBleHBlY3QoCiAgICAgICAgICBkZXNjcmlwdGlvbiwKICAgICAgICAgIGVxdWFscygKICAgICAgICAgICAgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICAgICAgcGF0aDogJ3BhY2thZ2VzL2ZvbycsCiAgICAgICAgICAgICAgcmVsYXRpdmU6IHRydWUsCiAgICAgICAgICAgICksCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgZ3JvdXAoJ3JldHVybnMgbnVsbCcsICgpIHsKICAgICAgICB0ZXN0KCd3aGVuIG1pc3NpbmcgInBhdGgiJywgKCkgewogICAgICAgICAgZmluYWwgZGF0YSA9IGxvYWRZYW1sKAogICAgICAgICAgICAnJycKcmVsYXRpdmU6IHRydWUKICAgICAgICAgICAgJycnLAogICAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24udHJ5UGFyc2UoZGF0YSk7CgogICAgICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uLCBpc051bGwpOwogICAgICAgIH0pOwoKICAgICAgICB0ZXN0KCd3aGVuICJwYXRoIiBpcyBub3QgYSBTdHJpbmcnLCAoKSB7CiAgICAgICAgICBmaW5hbCBkYXRhID0gbG9hZFlhbWwoCiAgICAgICAgICAgICcnJwpwYXRoOiAxCnJlbGF0aXZlOiB0cnVlCiAgICAgICAgICAgICcnJywKICAgICAgICAgICkgYXMgWWFtbE1hcDsKCiAgICAgICAgICBmaW5hbCBkZXNjcmlwdGlvbiA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRhdGEpOwoKICAgICAgICAgIGV4cGVjdChkZXNjcmlwdGlvbiwgaXNOdWxsKTsKICAgICAgICB9KTsKCiAgICAgICAgdGVzdCgnd2hlbiBtaXNzaW5nICJyZWxhdGl2ZSInLCAoKSB7CiAgICAgICAgICBmaW5hbCBkYXRhID0gbG9hZFlhbWwoCiAgICAgICAgICAgICcnJwpwYXRoOiAicGFja2FnZXMvZm9vIgogICAgICAgICAgICAnJycsCiAgICAgICAgICApIGFzIFlhbWxNYXA7CgogICAgICAgICAgZmluYWwgZGVzY3JpcHRpb24gPSBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbi50cnlQYXJzZShkYXRhKTsKCiAgICAgICAgICBleHBlY3QoZGVzY3JpcHRpb24sIGlzTnVsbCk7CiAgICAgICAgfSk7CgogICAgICAgIHRlc3QoJ3doZW4gInJlbGF0aXZlIiBpcyBub3QgYSBib29sJywgKCkgewogICAgICAgICAgZmluYWwgZGF0YSA9IGxvYWRZYW1sKAogICAgICAgICAgICAnJycKcGF0aDogInBhY2thZ2VzL2ZvbyIKcmVsYXRpdmU6IDUKICAgICAgICAgICAgJycnLAogICAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24udHJ5UGFyc2UoZGF0YSk7CgogICAgICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uLCBpc051bGwpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0pOwogIH0pOwp9CgovLy8gQW4gZXhhbXBsZSBwdWJzcGVjLmxvY2sgY29udGVudCB1c2VkIHRvIHRlc3QgdGhlIFtQdWJzcGVjTG9ja10gY2xhc3MuCi8vLwovLy8gSXQgaGFzIGJlZW4gYXJ0aWZpY2lhbGx5IGNyYWZ0ZWQgdG8gaW5jbHVkZToKLy8vIC0gb25lIHB1YiBob3N0ZWQgZGlyZWN0IG1haW4gcGFja2FnZSBlbnRyeQovLy8gLSBvbmUgcHViIGhvc3RlZCBkaXJlY3QgZGV2IHBhY2thZ2UgZW50cnkKLy8vIC0gb25lIHB1YiBob3N0ZWQgdHJhbnNpdGl2ZSBwYWNrYWdlIGVudHJ5Ci8vLyAtIG9uZSBwdWIgaG9zdGVkIG92ZXJyaWRkZW4gcGFja2FnZSBlbnRyeQovLy8gLSBvbmUgcGF0aCBkaXJlY3QgbWFpbiBwYWNrYWdlIGVudHJ5Ci8vLyAtIG9uZSBub3QgcHViIGhvc3RlZCB0cmFuc2l0aXZlIHBhY2thZ2UgZW50cnkKLy8vIC0gb25lIGludmFsaWQgcGFja2FnZSBlbnRyeQpjb25zdCBfcHVic3BlY0xvY2tDb250ZW50ID0gJycnCnBhY2thZ2VzOgogIHZlcnlfZ29vZF90ZXN0X3J1bm5lcjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB2ZXJ5X2dvb2RfdGVzdF9ydW5uZXIKICAgICAgc2hhMjU2OiAiNGQ0MWU1ZDc2NzdkMjU5YjlhMTU5OWM3ODY0NWFjMmQzNmJjMmJkNmZmNzc3MzUwN2JjYjBiYWI0MTQxN2ZlMiIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIwLjEuMiIKICB2ZXJ5X2dvb2RfYW5hbHlzaXM6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB2ZXJ5X2dvb2RfYW5hbHlzaXMKICAgICAgc2hhMjU2OiAiOWFlN2YzYTNiZDU3NjRmYjAyMWIzMzVjYTI4YTM0ZjA0MGNkMGFiNmVlYzAwYTFiMjEzYjQ0NWRhZTU4YTRiOCIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICI1LjEuMCIKICB5YW1sOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IHlhbWwKICAgICAgc2hhMjU2OiAiNzU3Njk1MDFlYTM0ODlmY2E1NjYwMWZmMzM0NTRmZTQ1NTA3ZWEzYmZiMDE0MTYxYWJjM2I0M2FlMjU5ODlkNSIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIzLjEuMiIKICBwYXRoOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBvdmVycmlkZGVuIgogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IHBhdGgKICAgICAgc2hhMjU2OiAiMDg3Y2U0OWMzZjBkYzM5MTgwYmVmZWZjNjBmZGI0YWNkOGY4NjIwZTU2ODJmZTI0NzZhZmQwYjM2ODhiYjRhZiIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIxLjkuMCIKICBmb286CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgcGF0aDogInBhY2thZ2VzL2ZvbyIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjEuMC4wKzEiCiAgeWFtbDI6CiAgICBkZXBlbmRlbmN5OiB0cmFuc2l0aXZlCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogeWFtbAogICAgICBzaGEyNTY6ICI3NTc2OTUwMWVhMzQ4OWZjYTU2NjAxZmYzMzQ1NGZlNDU1MDdlYTNiZmIwMTQxNjFhYmMzYjQzYWUyNTk4OWQ1IgogICAgICB1cmw6ICJodHRwczovL25vdC1wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIzLjEuMiIKICBiYWRfcGFja2FnZToKICAgIG5vdF9kZXBlbmRlbmN5OiAiYmFkIgpzZGtzOgogIGRhcnQ6ICI+PTMuMS4wIDw0LjAuMCIKJycnOwoKLy8vIEEgdmFsaWQgcHVic3BlYyBsb2NrIGZpbGUgd2l0aCBubyBwYWNrYWdlcy4KY29uc3QgX2VtcHR5UHVic3BlY0xvY2tDb250ZW50ID0gJycnCnNka3M6CiAgZGFydDogIj49My4xLjAgPDQuMC4wIgonJyc7Cg==", + "type": "text" + }, + { + "path": "build/test/src/uses_workspace_resolution_test.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tIb29rQ29udGV4dCBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7fQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ3VzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uJywgKCkgewogICAgbGF0ZSBMaXN0PGludD4gZXhpdENhbGxzOwogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwogICAgbGF0ZSBEaXJlY3RvcnkgYnVpbGREaXJlY3Rvcnk7CiAgICBsYXRlIERpcmVjdG9yeSB3b3JraW5nRGlyZWN0b3J5OwoKICAgIHNldFVwKCgpIHsKICAgICAgZXhpdENhbGxzID0gW107CiAgICAgIGNvbnRleHQgPSBfTW9ja0hvb2tDb250ZXh0KCk7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGJ1aWxkRGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoJ2J1aWxkJyk7CiAgICAgIHdvcmtpbmdEaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygnd29ya2luZycpOwoKICAgICAgd2hlbigoKSA9PiBjb250ZXh0LmxvZ2dlcikudGhlblJldHVybihsb2dnZXIpOwoKICAgICAgYWRkVGVhckRvd24oKCkgewogICAgICAgIGJ1aWxkRGlyZWN0b3J5LmRlbGV0ZSgpLmlnbm9yZSgpOwogICAgICAgIHdvcmtpbmdEaXJlY3RvcnkuZGVsZXRlKCkuaWdub3JlKCk7CiAgICAgIH0pOwogICAgfSk7CgogICAgZ3JvdXAoJ3doZW4gcHVic3BlYy55YW1sIGRvZXMgbm90IGV4aXN0JywgKCkgewogICAgICB0ZXN0KCdyZXR1cm5zIGZhbHNlJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICApLAogICAgICAgICAgaXNGYWxzZSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHB1YnNwZWMueWFtbCBpcyBtYWxmb3JtZWQnLCAoKSB7CiAgICAgIGxhdGUgRmlsZSBwdWJzcGVjRmlsZTsKICAgICAgc2V0VXAoKCkgewogICAgICAgIHB1YnNwZWNGaWxlID0gRmlsZSgKICAgICAgICAgIHBhdGguam9pbih3b3JraW5nRGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLnlhbWwnKSwKICAgICAgICApLi53cml0ZUFzU3RyaW5nU3luYygnaW52YWxpZCBwdWJzcGVjLnlhbWwnKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdyZXR1cm5zIGZhbHNlJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICApLAogICAgICAgICAgaXNGYWxzZSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgICB2ZXJpZnkoCiAgICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgICBhbnkodGhhdDogY29udGFpbnMoJ1VuYWJsZSB0byBwYXJzZSAke3B1YnNwZWNGaWxlLnBhdGh9JykpLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHB1YnNwZWMueWFtbCBpcyB2YWxpZCB3aXRoIG5vIHJlc29sdXRpb24nLCAoKSB7CiAgICAgIHNldFVwKCgpIHsKICAgICAgICBGaWxlKAogICAgICAgICAgcGF0aC5qb2luKHdvcmtpbmdEaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoJycnCm5hbWU6IF8KJycnKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdyZXR1cm5zIGZhbHNlJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICApLAogICAgICAgICAgaXNGYWxzZSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgfSk7CiAgICB9KTsKCiAgICBncm91cCgnd2hlbiBwdWJzcGVjLnlhbWwgaXMgdmFsaWQgd2l0aCByZXNvbHV0aW9uIHdvcmtzcGFjZScsICgpIHsKICAgICAgc2V0VXAoKCkgewogICAgICAgIEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4od29ya2luZ0RpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJyksCiAgICAgICAgKS53cml0ZUFzU3RyaW5nU3luYygnJycKbmFtZTogXwpyZXNvbHV0aW9uOiB3b3Jrc3BhY2UKJycnKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdyZXR1cm5zIHRydWUnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgdXNlc1dvcmtzcGFjZVJlc29sdXRpb24oCiAgICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6IHdvcmtpbmdEaXJlY3RvcnkucGF0aCwKICAgICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgICksCiAgICAgICAgICBpc1RydWUsCiAgICAgICAgKTsKICAgICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7Cn0K", + "type": "text" + }, { "path": "lib/dart_frog_prod_server_hooks.dart", "data": - "ZXhwb3J0ICdzcmMvY29weV93b3Jrc3BhY2VfcHVic3BlY19sb2NrLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfYnVuZGxlLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfZXh0ZXJuYWxfcGFja2FnZXNfZm9sZGVyLmRhcnQnOwpleHBvcnQgJ3NyYy9kYXJ0X3B1Yl9nZXQuZGFydCc7CmV4cG9ydCAnc3JjL2Rpc2FibGVfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CmV4cG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfaW50ZXJuYWxfcGF0aF9kZXBlbmRlbmNpZXMuZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wYWNrYWdlX2NvbmZpZy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X3BhY2thZ2VfZ3JhcGguZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wdWJzcGVjX2xvY2suZGFydCc7CmV4cG9ydCAnc3JjL2dldF93b3Jrc3BhY2Vfcm9vdC5kYXJ0JzsKZXhwb3J0ICdzcmMvcGFja2FnZV9ncmFwaC9wYWNrYWdlX2dyYXBoLmRhcnQnOwpleHBvcnQgJ3NyYy91c2VzX3dvcmtzcGFjZV9yZXNvbHV0aW9uLmRhcnQnOwoKLy8vIEEgdm9pZCBjYWxsYmFjayBmdW5jdGlvbiAoZS5nLiBgdm9pZCBGdW5jdGlvbigpYCkuCnR5cGVkZWYgVm9pZENhbGxiYWNrID0gdm9pZCBGdW5jdGlvbigpOwo=", + "ZXhwb3J0ICdzcmMvY29weV93b3Jrc3BhY2VfcHVic3BlY19sb2NrLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfYnVuZGxlLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfZXh0ZXJuYWxfcGFja2FnZXNfZm9sZGVyLmRhcnQnOwpleHBvcnQgJ3NyYy9kYXJ0X3B1Yl9nZXQuZGFydCc7CmV4cG9ydCAnc3JjL2Rpc2FibGVfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CmV4cG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfaW50ZXJuYWxfcGF0aF9kZXBlbmRlbmNpZXMuZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wYWNrYWdlX2NvbmZpZy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X3BhY2thZ2VfZ3JhcGguZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wdWJzcGVjX2xvY2suZGFydCc7CmV4cG9ydCAnc3JjL2dldF93b3Jrc3BhY2Vfcm9vdC5kYXJ0JzsKZXhwb3J0ICdzcmMvcGFja2FnZV9ncmFwaC9wYWNrYWdlX2dyYXBoLmRhcnQnOwpleHBvcnQgJ3NyYy9wYXRoX2RlcGVuZGVuY3kuZGFydCc7CmV4cG9ydCAnc3JjL3VzZXNfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CgovLy8gQSB2b2lkIGNhbGxiYWNrIGZ1bmN0aW9uIChlLmcuIGB2b2lkIEZ1bmN0aW9uKClgKS4KdHlwZWRlZiBWb2lkQ2FsbGJhY2sgPSB2b2lkIEZ1bmN0aW9uKCk7Cg==", "type": "text" }, { @@ -46,7 +250,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "lib/src/create_external_packages_folder.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICBmaW5hbCBpc0V4dGVybmFsID0gIXBhdGhSZXNvbHZlci5pc1dpdGhpbignJywgcGF0aERlc2NyaXB0aW9uLnBhdGgpOwogICAgICAgICAgaWYgKCFpc0V4dGVybmFsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICByZXR1cm4gX0V4dGVybmFsUGF0aERlcGVuZGVuY3koCiAgICAgICAgICAgIG5hbWU6IGRlcGVuZGVuY3kubmFtZSwKICAgICAgICAgICAgcGF0aDogcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgcGF0aERlc2NyaXB0aW9uLnBhdGgpLAogICAgICAgICAgKTsKICAgICAgICB9LAogICAgICApCiAgICAgIC53aGVyZVR5cGU8X0V4dGVybmFsUGF0aERlcGVuZGVuY3k+KCkKICAgICAgLnRvTGlzdCgpOwoKICBpZiAoZXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLmlzRW1wdHkpIHJldHVybiBbXTsKCiAgZmluYWwgcGFja2FnZXNEaXJlY3RvcnkgPSBEaXJlY3RvcnkoCiAgICBwYXRoUmVzb2x2ZXIuam9pbigKICAgICAgYnVpbGREaXJlY3RvcnkucGF0aCwKICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgKSwKICApLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CgogIGZpbmFsIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IGF3YWl0IEZ1dHVyZS53YWl0KAogICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLm1hcCgKICAgICAgKGV4dGVybmFsUGF0aERlcGVuZGVuY3kpIGFzeW5jIHsKICAgICAgICBmaW5hbCBjb3B5ID0gYXdhaXQgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jeS5jb3B5VG8oCiAgICAgICAgICBjb3B5UGF0aDogY29weVBhdGgsCiAgICAgICAgICB0YXJnZXREaXJlY3Rvcnk6IERpcmVjdG9yeSgKICAgICAgICAgICAgcGF0aFJlc29sdmVyLmpvaW4oCiAgICAgICAgICAgICAgcGFja2FnZXNEaXJlY3RvcnkucGF0aCwKICAgICAgICAgICAgICBleHRlcm5hbFBhdGhEZXBlbmRlbmN5Lm5hbWUsCiAgICAgICAgICAgICksCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgICAgb3ZlcnJpZGVSZXNvbHV0aW9uSW5QdWJzcGVjT3ZlcnJpZGVzKGNvcHkucGF0aCk7CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0sCiAgICApLAogICk7CgogIEZpbGUoCiAgICBwYXRoUmVzb2x2ZXIuam9pbihidWlsZERpcmVjdG9yeS5wYXRoLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAnJycKcmVzb2x1dGlvbjogbnVsbApkZXBlbmRlbmN5X292ZXJyaWRlczoKJHtjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMubWFwKAogICAgICAoZGVwZW5kZW5jeSkgewogICAgICAgIGZpbmFsIG5hbWUgPSBkZXBlbmRlbmN5Lm5hbWU7CiAgICAgICAgZmluYWwgcGF0aCA9CiAgICAgICAgICAgIHBhdGhSZXNvbHZlci5yZWxhdGl2ZShkZXBlbmRlbmN5LnBhdGgsIGZyb206IGJ1aWxkRGlyZWN0b3J5LnBhdGgpOwogICAgICAgIHJldHVybiAnICAkbmFtZTpcbiAgICBwYXRoOiAkcGF0aCc7CiAgICAgIH0sCiAgICApLmpvaW4oJ1xuJyl9CicnJywKICApOwoKICByZXR1cm4gY29waWVkRXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzCiAgICAgIC5tYXAoKGRlcGVuZGVuY3kpID0+IGRlcGVuZGVuY3kucGF0aCkKICAgICAgLnRvTGlzdCgpOwp9CgovLy8ge0B0ZW1wbGF0ZSBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9Ci8vLyBBIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIG5vdCB3aXRoaW4gdGhlIGJ1bmRsZWQgRGFydCBGcm9nIHByb2plY3QKLy8vIGRpcmVjdG9yeS4KLy8vCi8vLyBGb3IgZXhhbXBsZToKLy8vIGBgYHlhbWwKLy8vIG5hbWU6IG15X2RhcnRfZnJvZ19wcm9qZWN0Ci8vLyBkZXBlbmRlbmNpZXM6Ci8vLyAgIG15X3BhY2thZ2U6Ci8vLyAgICAgcGF0aDogLi4vbXlfcGFja2FnZQovLy8gYGBgCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBfRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSB7CiAgLy8vIHtAbWFjcm8gZXh0ZXJuYWxfcGF0aF9kZXBlbmRlbmN5fQogIGNvbnN0IF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5KHsKICAgIHJlcXVpcmVkIHRoaXMubmFtZSwKICAgIHJlcXVpcmVkIHRoaXMucGF0aCwKICB9KTsKCiAgLy8vIFRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlLgogIGZpbmFsIFN0cmluZyBuYW1lOwoKICAvLy8gVGhlIGFic29sdXRlIHBhdGggdG8gdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIHBhdGg7CgogIC8vLyBDb3BpZXMgdGhlIFtfRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeV0gdG8gW3RhcmdldERpcmVjdG9yeV0uCiAgRnV0dXJlPF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5PiBjb3B5VG8oewogICAgcmVxdWlyZWQgRGlyZWN0b3J5IHRhcmdldERpcmVjdG9yeSwKICAgIENvcHlQYXRoIGNvcHlQYXRoID0gaW8uY29weVBhdGgsCiAgfSkgYXN5bmMgewogICAgYXdhaXQgY29weVBhdGgocGF0aCwgdGFyZ2V0RGlyZWN0b3J5LnBhdGgpOwogICAgcmV0dXJuIF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5KG5hbWU6IG5hbWUsIHBhdGg6IHRhcmdldERpcmVjdG9yeS5wYXRoKTsKICB9Cn0K", + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICBmaW5hbCBpc0V4dGVybmFsID0gIXBhdGhSZXNvbHZlci5pc1dpdGhpbignJywgcGF0aERlc2NyaXB0aW9uLnBhdGgpOwogICAgICAgICAgaWYgKCFpc0V4dGVybmFsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSgKICAgICAgICAgICAgbmFtZTogZGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICBwYXRoOiBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCBwYXRoRGVzY3JpcHRpb24ucGF0aCksCiAgICAgICAgICApOwogICAgICAgIH0sCiAgICAgICkKICAgICAgLndoZXJlVHlwZTxFeHRlcm5hbFBhdGhEZXBlbmRlbmN5PigpCiAgICAgIC50b0xpc3QoKTsKCiAgaWYgKGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5pc0VtcHR5KSByZXR1cm4gW107CgogIGZpbmFsIHBhY2thZ2VzRGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgcGF0aFJlc29sdmVyLmpvaW4oCiAgICAgIGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICksCiAgKS4uY3JlYXRlU3luYyhyZWN1cnNpdmU6IHRydWUpOwoKICBmaW5hbCBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBhd2FpdCBGdXR1cmUud2FpdCgKICAgIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5tYXAoCiAgICAgIChleHRlcm5hbFBhdGhEZXBlbmRlbmN5KSBhc3luYyB7CiAgICAgICAgZmluYWwgY29weSA9IGF3YWl0IGV4dGVybmFsUGF0aERlcGVuZGVuY3kuY29weVRvKAogICAgICAgICAgY29weVBhdGg6IGNvcHlQYXRoLAogICAgICAgICAgdGFyZ2V0RGlyZWN0b3J5OiBEaXJlY3RvcnkoCiAgICAgICAgICAgIHBhdGhSZXNvbHZlci5qb2luKAogICAgICAgICAgICAgIHBhY2thZ2VzRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICApLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhjb3B5LnBhdGgpOwogICAgICAgIHJldHVybiBjb3B5OwogICAgICB9LAogICAgKSwKICApOwoKICBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoYnVpbGREaXJlY3RvcnkucGF0aCk7CiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMsCiAgKTsKCiAgcmV0dXJuIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcwogICAgICAubWFwKChkZXBlbmRlbmN5KSA9PiBkZXBlbmRlbmN5LnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", "type": "text" }, { @@ -58,7 +262,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "lib/src/disable_workspace_resolution.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sX2VkaXQveWFtbF9lZGl0LmRhcnQnOwoKLy8vIE9wdHMgb3V0IG9mIGRhcnQgd29ya3NwYWNlcyB1bnRpbCB3ZSBjYW4gZ2VuZXJhdGUgcGVyIHBhY2thZ2UgbG9ja2ZpbGVzLgovLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtbGFuZy9wdWIvaXNzdWVzLzQ1OTQKVm9pZENhbGxiYWNrIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBQYWNrYWdlQ29uZmlnIHBhY2thZ2VDb25maWcsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKICByZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCBTdHJpbmcgd29ya3NwYWNlUm9vdCwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIFZvaWRDYWxsYmFjayByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKICB0cnkgewogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoCiAgICAgIHByb2plY3REaXJlY3RvcnksCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlJyk7CiAgICBleGl0KDEpOwogICAgcmV0dXJuICgpIHt9OyAvLyBuby1vcAogIH0KCiAgdHJ5IHsKICAgIG92ZXJyaWRlUGF0aERlcGVuZGVuY2llc0luUHVic3BlY092ZXJyaWRlcygKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbigpOwogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZScpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsgLy8gbm8tb3AKICB9CgogIHJldHVybiByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKfQoKLy8vIEFkZCByZXNvbHV0aW9uOm51bGwgdG8gcHVic3BlY19vdmVycmlkZXMueWFtbC4KVm9pZENhbGxiYWNrIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhTdHJpbmcgcHJvamVjdERpcmVjdG9yeSkgewogIGZpbmFsIHB1YnNwZWNPdmVycmlkZXNGaWxlID0gRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICk7CgogIGlmICghcHVic3BlY092ZXJyaWRlc0ZpbGUuZXhpc3RzU3luYygpKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuIHB1YnNwZWNPdmVycmlkZXNGaWxlLmRlbGV0ZVN5bmM7CiAgfQoKICBmaW5hbCBjb250ZW50cyA9IHB1YnNwZWNPdmVycmlkZXNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gbG9hZFlhbWwoY29udGVudHMpIGFzIFlhbWxNYXA/OwoKICBpZiAocHVic3BlY092ZXJyaWRlcyA9PSBudWxsKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKICB9CgogIGlmIChwdWJzcGVjT3ZlcnJpZGVzWydyZXNvbHV0aW9uJ10gPT0gJ251bGwnKSByZXR1cm4gKCkge307IC8vIG5vLW9wCgogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpLi51cGRhdGUoWydyZXNvbHV0aW9uJ10sIG51bGwpOwogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKCiAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKfQoKLy8vIEFkZCBvdmVycmlkZXMgZm9yIGFsbCBwYXRoIGRlcGVuZGVuY2llcyB0byBgcHVic3BlY19vdmVycmlkZXMueWFtbGAKdm9pZCBvdmVycmlkZVBhdGhEZXBlbmRlbmNpZXNJblB1YnNwZWNPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIFBhY2thZ2VDb25maWcgcGFja2FnZUNvbmZpZywKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgbmFtZSA9IGdldFBhY2thZ2VOYW1lKHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkpOwogIGlmIChuYW1lID09IG51bGwpIHsKICAgIHRocm93IEV4Y2VwdGlvbignRmFpbGVkIHRvIHBhcnNlICJuYW1lIiBmcm9tIHB1YnNwZWMueWFtbCcpOwogIH0KCiAgZmluYWwgcHJvZHVjdGlvbkRlcHMgPSBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKAogICAgcGFja2FnZU5hbWU6IG5hbWUsCiAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICApOwoKICBmaW5hbCBwYXRoRGVwZW5kZW5jaWVzID0gcGFja2FnZUNvbmZpZy5wYWNrYWdlcy53aGVyZSgKICAgIChwYWNrYWdlKSA9PiBwYWNrYWdlLnJlbGF0aXZlUm9vdCAmJiBwcm9kdWN0aW9uRGVwcy5jb250YWlucyhwYWNrYWdlLm5hbWUpLAogICk7CgogIHdyaXRlUGF0aERlcGVuZGVuY3lPdmVycmlkZXMoCiAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgcGF0aERlcGVuZGVuY2llczogcGF0aERlcGVuZGVuY2llcywKICApOwp9Cgp2b2lkIHdyaXRlUGF0aERlcGVuZGVuY3lPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIEl0ZXJhYmxlPFBhY2thZ2U+IHBhdGhEZXBlbmRlbmNpZXMsCn0pIHsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzRmlsZSA9IEZpbGUoCiAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICApOwogIGZpbmFsIGNvbnRlbnRzID0gcHVic3BlY092ZXJyaWRlc0ZpbGUucmVhZEFzU3RyaW5nU3luYygpOwogIGZpbmFsIG92ZXJyaWRlcyA9IGxvYWRZYW1sKGNvbnRlbnRzKSBhcyBZYW1sTWFwOwogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpOwogIGlmICghb3ZlcnJpZGVzLmNvbnRhaW5zS2V5KCdkZXBlbmRlbmN5X292ZXJyaWRlcycpKSB7CiAgICBlZGl0b3IudXBkYXRlKFsnZGVwZW5kZW5jeV9vdmVycmlkZXMnXSwge30pOwogIH0KICBmb3IgKGZpbmFsIHBhY2thZ2UgaW4gcGF0aERlcGVuZGVuY2llcykgewogICAgZWRpdG9yLnVwZGF0ZSgKICAgICAgWydkZXBlbmRlbmN5X292ZXJyaWRlcycsIHBhY2thZ2UubmFtZV0sCiAgICAgIHsncGF0aCc6IHBhdGgucmVsYXRpdmUocGFja2FnZS5yb290LnBhdGgsIGZyb206IHByb2plY3REaXJlY3RvcnkpfSwKICAgICk7CiAgfQogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKfQoKLy8vIEV4dHJhY3QgdGhlIHBhY2thZ2UgbmFtZSBmcm9tIHRoZSBwdWJzcGVjLnlhbWwgaW4gW3Byb2plY3REaXJlY3RvcnldLgpTdHJpbmc/IGdldFBhY2thZ2VOYW1lKHtyZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeX0pIHsKICBmaW5hbCBwdWJzcGVjRmlsZSA9IEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnksICdwdWJzcGVjLnlhbWwnKSk7CiAgZmluYWwgcHVic3BlYyA9IGxvYWRZYW1sKHB1YnNwZWNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKSk7CiAgaWYgKHB1YnNwZWMgaXMhIFlhbWxNYXApIHJldHVybiBudWxsOwoKICBmaW5hbCBuYW1lID0gcHVic3BlY1snbmFtZSddOwogIGlmIChuYW1lIGlzISBTdHJpbmcpIHJldHVybiBudWxsOwoKICByZXR1cm4gbmFtZTsKfQoKLy8vIEJ1aWxkIGEgY29tcGxldGUgbGlzdCBvZiBkZXBlbmRlbmNpZXMgKGRpcmVjdCBhbmQgdHJhbnNpdGl2ZSkuClNldDxTdHJpbmc+IGdldFByb2R1Y3Rpb25EZXBlbmRlbmNpZXMoewogIHJlcXVpcmVkIFN0cmluZyBwYWNrYWdlTmFtZSwKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgZGVwZW5kZW5jaWVzID0gPFN0cmluZz57fTsKICBmaW5hbCByb290ID0gcGFja2FnZUdyYXBoLnJvb3RzLmZpcnN0V2hlcmUoKHJvb3QpID0+IHJvb3QgPT0gcGFja2FnZU5hbWUpOwogIGZpbmFsIHJvb3RQYWNrYWdlID0gcGFja2FnZUdyYXBoLnBhY2thZ2VzLmZpcnN0V2hlcmUoKHApID0+IHAubmFtZSA9PSByb290KTsKICBmaW5hbCBkZXBlbmRlbmNpZXNUb1Zpc2l0ID0gPFN0cmluZz5bLi4ucm9vdFBhY2thZ2UuZGVwZW5kZW5jaWVzXTsKCiAgZG8gewogICAgZmluYWwgZGlzY292ZXJlZERlcGVuZGVuY2llcyA9IDxTdHJpbmc+W107CiAgICBmb3IgKGZpbmFsIGRlcGVuZGVuY3lUb1Zpc2l0IGluIGRlcGVuZGVuY2llc1RvVmlzaXQpIHsKICAgICAgZmluYWwgcGFja2FnZSA9IHBhY2thZ2VHcmFwaC5wYWNrYWdlcy5maXJzdFdoZXJlKAogICAgICAgIChwKSA9PiBwLm5hbWUgPT0gZGVwZW5kZW5jeVRvVmlzaXQsCiAgICAgICk7CiAgICAgIGRlcGVuZGVuY2llcy5hZGQocGFja2FnZS5uYW1lKTsKICAgICAgZm9yIChmaW5hbCBwYWNrYWdlRGVwZW5kZW5jeSBpbiBwYWNrYWdlLmRlcGVuZGVuY2llcykgewogICAgICAgIC8vIEF2b2lkIGluZmluaXRlIGxvb3BzIGZyb20gZGVwZW5kZW5jeSBjeWNsZXMgKGNpcmN1bGFyIGRlcGVuZGVuY2llcykuCiAgICAgICAgaWYgKGRlcGVuZGVuY2llcy5jb250YWlucyhwYWNrYWdlRGVwZW5kZW5jeSkpIGNvbnRpbnVlOwogICAgICAgIGRpc2NvdmVyZWREZXBlbmRlbmNpZXMuYWRkKHBhY2thZ2VEZXBlbmRlbmN5KTsKICAgICAgfQogICAgfQogICAgZGVwZW5kZW5jaWVzVG9WaXNpdAogICAgICAuLmNsZWFyKCkKICAgICAgLi5hZGRBbGwoZGlzY292ZXJlZERlcGVuZGVuY2llcyk7CiAgfSB3aGlsZSAoZGVwZW5kZW5jaWVzVG9WaXNpdC5pc05vdEVtcHR5KTsKICByZXR1cm4gZGVwZW5kZW5jaWVzOwp9Cg==", + "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sX2VkaXQveWFtbF9lZGl0LmRhcnQnOwoKLy8vIE9wdHMgb3V0IG9mIGRhcnQgd29ya3NwYWNlcyB1bnRpbCB3ZSBjYW4gZ2VuZXJhdGUgcGVyIHBhY2thZ2UgbG9ja2ZpbGVzLgovLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtbGFuZy9wdWIvaXNzdWVzLzQ1OTQKVm9pZENhbGxiYWNrIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBQYWNrYWdlQ29uZmlnIHBhY2thZ2VDb25maWcsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKICByZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCBTdHJpbmcgd29ya3NwYWNlUm9vdCwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIFZvaWRDYWxsYmFjayByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKICB0cnkgewogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoCiAgICAgIHByb2plY3REaXJlY3RvcnksCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlJyk7CiAgICBleGl0KDEpOwogICAgcmV0dXJuICgpIHt9OyAvLyBuby1vcAogIH0KCiAgdHJ5IHsKICAgIG92ZXJyaWRlUGF0aERlcGVuZGVuY2llc0luUHVic3BlY092ZXJyaWRlcygKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbigpOwogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZScpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsgLy8gbm8tb3AKICB9CgogIHJldHVybiByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKfQoKLy8vIEFkZCByZXNvbHV0aW9uOm51bGwgdG8gcHVic3BlY19vdmVycmlkZXMueWFtbC4KVm9pZENhbGxiYWNrIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhTdHJpbmcgcHJvamVjdERpcmVjdG9yeSkgewogIGZpbmFsIHB1YnNwZWNPdmVycmlkZXNGaWxlID0gRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICk7CgogIGlmICghcHVic3BlY092ZXJyaWRlc0ZpbGUuZXhpc3RzU3luYygpKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuIHB1YnNwZWNPdmVycmlkZXNGaWxlLmRlbGV0ZVN5bmM7CiAgfQoKICBmaW5hbCBjb250ZW50cyA9IHB1YnNwZWNPdmVycmlkZXNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gbG9hZFlhbWwoY29udGVudHMpIGFzIFlhbWxNYXA/OwoKICBpZiAocHVic3BlY092ZXJyaWRlcyA9PSBudWxsKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKICB9CgogIGlmIChwdWJzcGVjT3ZlcnJpZGVzWydyZXNvbHV0aW9uJ10gPT0gJ251bGwnKSByZXR1cm4gKCkge307IC8vIG5vLW9wCgogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpLi51cGRhdGUoWydyZXNvbHV0aW9uJ10sIG51bGwpOwogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKCiAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKfQoKLy8vIEFkZCBvdmVycmlkZXMgZm9yIGFsbCBwYXRoIGRlcGVuZGVuY2llcyB0byBgcHVic3BlY19vdmVycmlkZXMueWFtbGAKdm9pZCBvdmVycmlkZVBhdGhEZXBlbmRlbmNpZXNJblB1YnNwZWNPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIFBhY2thZ2VDb25maWcgcGFja2FnZUNvbmZpZywKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgbmFtZSA9IGdldFBhY2thZ2VOYW1lKHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkpOwogIGlmIChuYW1lID09IG51bGwpIHsKICAgIHRocm93IEV4Y2VwdGlvbignRmFpbGVkIHRvIHBhcnNlICJuYW1lIiBmcm9tIHB1YnNwZWMueWFtbCcpOwogIH0KCiAgZmluYWwgcHJvZHVjdGlvbkRlcHMgPSBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKAogICAgcGFja2FnZU5hbWU6IG5hbWUsCiAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICApOwoKICBmaW5hbCBwYXRoRGVwZW5kZW5jaWVzID0gcGFja2FnZUNvbmZpZy5wYWNrYWdlcwogICAgICAud2hlcmUoKHApID0+IHAucmVsYXRpdmVSb290ICYmIHByb2R1Y3Rpb25EZXBzLmNvbnRhaW5zKHAubmFtZSkpCiAgICAgIC5tYXAoKHApID0+IFBhdGhEZXBlbmRlbmN5KG5hbWU6IHAubmFtZSwgcGF0aDogcC5yb290LnBhdGgpKTsKCiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBwYXRoRGVwZW5kZW5jaWVzLAogICk7Cn0KCnZvaWQgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcyh7CiAgcmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgSXRlcmFibGU8UGF0aERlcGVuZGVuY3k+IHBhdGhEZXBlbmRlbmNpZXMsCn0pIHsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzRmlsZSA9IEZpbGUoCiAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICApOwogIGZpbmFsIGNvbnRlbnRzID0gcHVic3BlY092ZXJyaWRlc0ZpbGUucmVhZEFzU3RyaW5nU3luYygpOwogIGZpbmFsIG92ZXJyaWRlcyA9IGxvYWRZYW1sKGNvbnRlbnRzKSBhcyBZYW1sTWFwOwogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpOwogIGlmICghb3ZlcnJpZGVzLmNvbnRhaW5zS2V5KCdkZXBlbmRlbmN5X292ZXJyaWRlcycpKSB7CiAgICBlZGl0b3IudXBkYXRlKFsnZGVwZW5kZW5jeV9vdmVycmlkZXMnXSwge30pOwogIH0KICBmb3IgKGZpbmFsIHBhY2thZ2UgaW4gcGF0aERlcGVuZGVuY2llcykgewogICAgZWRpdG9yLnVwZGF0ZSgKICAgICAgWydkZXBlbmRlbmN5X292ZXJyaWRlcycsIHBhY2thZ2UubmFtZV0sCiAgICAgIHsncGF0aCc6IHBhdGgucmVsYXRpdmUocGFja2FnZS5wYXRoLCBmcm9tOiBwcm9qZWN0RGlyZWN0b3J5KX0sCiAgICApOwogIH0KICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYyhlZGl0b3IudG9TdHJpbmcoKSk7Cn0KCi8vLyBFeHRyYWN0IHRoZSBwYWNrYWdlIG5hbWUgZnJvbSB0aGUgcHVic3BlYy55YW1sIGluIFtwcm9qZWN0RGlyZWN0b3J5XS4KU3RyaW5nPyBnZXRQYWNrYWdlTmFtZSh7cmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3Rvcnl9KSB7CiAgZmluYWwgcHVic3BlY0ZpbGUgPSBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlYy55YW1sJykpOwogIGZpbmFsIHB1YnNwZWMgPSBsb2FkWWFtbChwdWJzcGVjRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogIGlmIChwdWJzcGVjIGlzISBZYW1sTWFwKSByZXR1cm4gbnVsbDsKCiAgZmluYWwgbmFtZSA9IHB1YnNwZWNbJ25hbWUnXTsKICBpZiAobmFtZSBpcyEgU3RyaW5nKSByZXR1cm4gbnVsbDsKCiAgcmV0dXJuIG5hbWU7Cn0KCi8vLyBCdWlsZCBhIGNvbXBsZXRlIGxpc3Qgb2YgZGVwZW5kZW5jaWVzIChkaXJlY3QgYW5kIHRyYW5zaXRpdmUpLgpTZXQ8U3RyaW5nPiBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKHsKICByZXF1aXJlZCBTdHJpbmcgcGFja2FnZU5hbWUsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKfSkgewogIGZpbmFsIGRlcGVuZGVuY2llcyA9IDxTdHJpbmc+e307CiAgZmluYWwgcm9vdCA9IHBhY2thZ2VHcmFwaC5yb290cy5maXJzdFdoZXJlKChyb290KSA9PiByb290ID09IHBhY2thZ2VOYW1lKTsKICBmaW5hbCByb290UGFja2FnZSA9IHBhY2thZ2VHcmFwaC5wYWNrYWdlcy5maXJzdFdoZXJlKChwKSA9PiBwLm5hbWUgPT0gcm9vdCk7CiAgZmluYWwgZGVwZW5kZW5jaWVzVG9WaXNpdCA9IDxTdHJpbmc+Wy4uLnJvb3RQYWNrYWdlLmRlcGVuZGVuY2llc107CgogIGRvIHsKICAgIGZpbmFsIGRpc2NvdmVyZWREZXBlbmRlbmNpZXMgPSA8U3RyaW5nPltdOwogICAgZm9yIChmaW5hbCBkZXBlbmRlbmN5VG9WaXNpdCBpbiBkZXBlbmRlbmNpZXNUb1Zpc2l0KSB7CiAgICAgIGZpbmFsIHBhY2thZ2UgPSBwYWNrYWdlR3JhcGgucGFja2FnZXMuZmlyc3RXaGVyZSgKICAgICAgICAocCkgPT4gcC5uYW1lID09IGRlcGVuZGVuY3lUb1Zpc2l0LAogICAgICApOwogICAgICBkZXBlbmRlbmNpZXMuYWRkKHBhY2thZ2UubmFtZSk7CiAgICAgIGZvciAoZmluYWwgcGFja2FnZURlcGVuZGVuY3kgaW4gcGFja2FnZS5kZXBlbmRlbmNpZXMpIHsKICAgICAgICAvLyBBdm9pZCBpbmZpbml0ZSBsb29wcyBmcm9tIGRlcGVuZGVuY3kgY3ljbGVzIChjaXJjdWxhciBkZXBlbmRlbmNpZXMpLgogICAgICAgIGlmIChkZXBlbmRlbmNpZXMuY29udGFpbnMocGFja2FnZURlcGVuZGVuY3kpKSBjb250aW51ZTsKICAgICAgICBkaXNjb3ZlcmVkRGVwZW5kZW5jaWVzLmFkZChwYWNrYWdlRGVwZW5kZW5jeSk7CiAgICAgIH0KICAgIH0KICAgIGRlcGVuZGVuY2llc1RvVmlzaXQKICAgICAgLi5jbGVhcigpCiAgICAgIC4uYWRkQWxsKGRpc2NvdmVyZWREZXBlbmRlbmNpZXMpOwogIH0gd2hpbGUgKGRlcGVuZGVuY2llc1RvVmlzaXQuaXNOb3RFbXB0eSk7CiAgcmV0dXJuIGRlcGVuZGVuY2llczsKfQo=", "type": "text" }, { @@ -109,6 +313,12 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ "Ly8gR0VORVJBVEVEIENPREUgLSBETyBOT1QgTU9ESUZZIEJZIEhBTkQKCi8vIGlnbm9yZV9mb3JfZmlsZTogdHlwZT1saW50CgpwYXJ0IG9mICdwYWNrYWdlX2dyYXBoLmRhcnQnOwoKLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLy8gSnNvblNlcmlhbGl6YWJsZUdlbmVyYXRvcgovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKUGFja2FnZUdyYXBoIF8kUGFja2FnZUdyYXBoRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoJywKICAgICAganNvbiwKICAgICAgKCRjaGVja2VkQ29udmVydCkgewogICAgICAgIGZpbmFsIHZhbCA9IFBhY2thZ2VHcmFwaCgKICAgICAgICAgIHJvb3RzOiAkY2hlY2tlZENvbnZlcnQoJ3Jvb3RzJywKICAgICAgICAgICAgICAodikgPT4gKHYgYXMgTGlzdDxkeW5hbWljPikubWFwKChlKSA9PiBlIGFzIFN0cmluZykudG9MaXN0KCkpLAogICAgICAgICAgcGFja2FnZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAncGFja2FnZXMnLAogICAgICAgICAgICAgICh2KSA9PiAodiBhcyBMaXN0PGR5bmFtaWM+KQogICAgICAgICAgICAgICAgICAubWFwKChlKSA9PgogICAgICAgICAgICAgICAgICAgICAgUGFja2FnZUdyYXBoUGFja2FnZS5mcm9tSnNvbihlIGFzIE1hcDxTdHJpbmcsIGR5bmFtaWM+KSkKICAgICAgICAgICAgICAgICAgLnRvTGlzdCgpKSwKICAgICAgICAgIGNvbmZpZ1ZlcnNpb246CiAgICAgICAgICAgICAgJGNoZWNrZWRDb252ZXJ0KCdjb25maWdWZXJzaW9uJywgKHYpID0+ICh2IGFzIG51bSkudG9JbnQoKSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsKClBhY2thZ2VHcmFwaFBhY2thZ2UgXyRQYWNrYWdlR3JhcGhQYWNrYWdlRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoUGFja2FnZScsCiAgICAgIGpzb24sCiAgICAgICgkY2hlY2tlZENvbnZlcnQpIHsKICAgICAgICBmaW5hbCB2YWwgPSBQYWNrYWdlR3JhcGhQYWNrYWdlKAogICAgICAgICAgbmFtZTogJGNoZWNrZWRDb252ZXJ0KCduYW1lJywgKHYpID0+IHYgYXMgU3RyaW5nKSwKICAgICAgICAgIHZlcnNpb246ICRjaGVja2VkQ29udmVydCgndmVyc2lvbicsICh2KSA9PiB2IGFzIFN0cmluZyksCiAgICAgICAgICBkZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgICBkZXZEZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGV2RGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsK", "type": "text" }, + { + "path": "lib/src/path_dependency.dart", + "data": + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CgovLy8ge0B0ZW1wbGF0ZSBwYXRoX2RlcGVuZGVuY3l9Ci8vLyBBIHBhdGggZGVwZW5kZW5jeSB0aGF0IHRoZSBEYXJ0IEZyb2cgcHJvamVjdCByZWxpZXMgb24uCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4vbXlfcGFja2FnZQovLy8gYGBgCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQYXRoRGVwZW5kZW5jeSB7CiAgLy8vIHtAbWFjcm8gcGF0aF9kZXBlbmRlbmN5fQogIGNvbnN0IFBhdGhEZXBlbmRlbmN5KHtyZXF1aXJlZCB0aGlzLm5hbWUsIHJlcXVpcmVkIHRoaXMucGF0aH0pOwoKICAvLy8gVGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIG5hbWU7CgogIC8vLyBUaGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgcGF0aDsKfQoKLy8vIHtAdGVtcGxhdGUgZXh0ZXJuYWxfcGF0aF9kZXBlbmRlbmN5fQovLy8gQSBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3Qgd2l0aGluIHRoZSBidW5kbGVkIERhcnQgRnJvZyBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4uL215X3BhY2thZ2UKLy8vIGBgYAovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSBleHRlbmRzIFBhdGhEZXBlbmRlbmN5IHsKICAvLy8ge0BtYWNybyBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9CiAgY29uc3QgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSh7cmVxdWlyZWQgc3VwZXIubmFtZSwgcmVxdWlyZWQgc3VwZXIucGF0aH0pOwoKICAvLy8gQ29waWVzIHRoZSBbRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeV0gdG8gW3RhcmdldERpcmVjdG9yeV0uCiAgRnV0dXJlPEV4dGVybmFsUGF0aERlcGVuZGVuY3k+IGNvcHlUbyh7CiAgICByZXF1aXJlZCBEaXJlY3RvcnkgdGFyZ2V0RGlyZWN0b3J5LAogICAgQ29weVBhdGggY29weVBhdGggPSBpby5jb3B5UGF0aCwKICB9KSBhc3luYyB7CiAgICBhd2FpdCBjb3B5UGF0aChwYXRoLCB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeShuYW1lOiBuYW1lLCBwYXRoOiB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgfQp9Cg==", + "type": "text" + }, { "path": "lib/src/pubspec_lock/pubspec_lock.dart", "data": @@ -184,7 +394,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "test/src/create_external_packages_folder_test.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwogIH0pOwp9Cg==", + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwoKICAgIHRlc3QoImRvZXNuJ3Qgb3ZlcnJpZGUgZXhpc3Rpbmcgb3ZlcnJpZGVzIiwgKCkgYXN5bmMgewogICAgICBjb25zdCBleGlzdGluZ092ZXJyaWRlcyA9ICcnJwpkZXBlbmRlbmN5X292ZXJyaWRlczoKICBkYXJ0X2Zyb2c6CiAgICBnaXQ6CiAgICAgIHVybDogaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtZnJvZy1kZXYvZGFydF9mcm9nCiAgICAgIHBhdGg6IHBhY2thZ2VzL2RhcnRfZnJvZwonJyc7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdidWlsZCcsICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICkKICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMoZXhpc3RpbmdPdmVycmlkZXMpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSwKICAgICAgKS53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgICAgZXhwZWN0KAogICAgICAgIEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICkucmVhZEFzU3RyaW5nU3luYygpLAogICAgICAgIGNvbnRhaW5zKGV4aXN0aW5nT3ZlcnJpZGVzKSwKICAgICAgKTsKICAgIH0pOwogIH0pOwp9Cg==", "type": "text" }, { From 3297c0002daeef67d7d4ecd7a83c2aaa220570f8 Mon Sep 17 00:00:00 2001 From: Felix Angelov Date: Thu, 16 Oct 2025 13:23:47 -0500 Subject: [PATCH 2/3] tweak --- .../hooks/test/src/create_external_packages_folder_test.dart | 2 +- .../commands/build/templates/dart_frog_prod_server_bundle.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart b/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart index a6c094687..2b5dd5154 100644 --- a/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart +++ b/bricks/dart_frog_prod_server/hooks/test/src/create_external_packages_folder_test.dart @@ -76,7 +76,7 @@ void main() { expect(copyCalls, ['$from -> $to']); }); - test("doesn't override existing overrides", () async { + test("doesn't overwrite existing overrides", () async { const existingOverrides = ''' dependency_overrides: dart_frog: diff --git a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart index f541c029a..d5bbe5e49 100644 --- a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart @@ -394,7 +394,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "test/src/create_external_packages_folder_test.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwoKICAgIHRlc3QoImRvZXNuJ3Qgb3ZlcnJpZGUgZXhpc3Rpbmcgb3ZlcnJpZGVzIiwgKCkgYXN5bmMgewogICAgICBjb25zdCBleGlzdGluZ092ZXJyaWRlcyA9ICcnJwpkZXBlbmRlbmN5X292ZXJyaWRlczoKICBkYXJ0X2Zyb2c6CiAgICBnaXQ6CiAgICAgIHVybDogaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtZnJvZy1kZXYvZGFydF9mcm9nCiAgICAgIHBhdGg6IHBhY2thZ2VzL2RhcnRfZnJvZwonJyc7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdidWlsZCcsICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICkKICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMoZXhpc3RpbmdPdmVycmlkZXMpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSwKICAgICAgKS53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgICAgZXhwZWN0KAogICAgICAgIEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICkucmVhZEFzU3RyaW5nU3luYygpLAogICAgICAgIGNvbnRhaW5zKGV4aXN0aW5nT3ZlcnJpZGVzKSwKICAgICAgKTsKICAgIH0pOwogIH0pOwp9Cg==", + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwoKICAgIHRlc3QoImRvZXNuJ3Qgb3ZlcndyaXRlIGV4aXN0aW5nIG92ZXJyaWRlcyIsICgpIGFzeW5jIHsKICAgICAgY29uc3QgZXhpc3RpbmdPdmVycmlkZXMgPSAnJycKZGVwZW5kZW5jeV9vdmVycmlkZXM6CiAgZGFydF9mcm9nOgogICAgZ2l0OgogICAgICB1cmw6IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXJ0LWZyb2ctZGV2L2RhcnRfZnJvZwogICAgICBwYXRoOiBwYWNrYWdlcy9kYXJ0X2Zyb2cKJycnOwogICAgICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICApCiAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAuLndyaXRlQXNTdHJpbmdTeW5jKGV4aXN0aW5nT3ZlcnJpZGVzKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJyksCiAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoZm9vUGF0aFdpdGhJbnRlcm5hbERlcGVuZGVuY3kpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZyb20gPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIHRvID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnZm9vJywKICAgICAgKTsKICAgICAgZXhwZWN0KGNvcHlDYWxscywgWyckZnJvbSAtPiAkdG8nXSk7CiAgICAgIGV4cGVjdCgKICAgICAgICBGaWxlKAogICAgICAgICAgcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJywgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICAgICAgICApLnJlYWRBc1N0cmluZ1N5bmMoKSwKICAgICAgICBjb250YWlucyhleGlzdGluZ092ZXJyaWRlcyksCiAgICAgICk7CiAgICB9KTsKICB9KTsKfQo=", "type": "text" }, { From 8efa80a852f92e02f8a4a3b3e824bd4c18d17c52 Mon Sep 17 00:00:00 2001 From: Felix Angelov Date: Thu, 16 Oct 2025 13:25:17 -0500 Subject: [PATCH 3/3] revert bundle --- .../dart_frog_prod_server_bundle.dart | 218 +----------------- 1 file changed, 4 insertions(+), 214 deletions(-) diff --git a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart index d5bbe5e49..aa84c0fcf 100644 --- a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart @@ -25,214 +25,10 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ } ], "hooks": [ - { - "path": "build/lib/dart_frog_prod_server_hooks.dart", - "data": - "ZXhwb3J0ICdzcmMvY29weV93b3Jrc3BhY2VfcHVic3BlY19sb2NrLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfYnVuZGxlLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfZXh0ZXJuYWxfcGFja2FnZXNfZm9sZGVyLmRhcnQnOwpleHBvcnQgJ3NyYy9kYXJ0X3B1Yl9nZXQuZGFydCc7CmV4cG9ydCAnc3JjL2Rpc2FibGVfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CmV4cG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfaW50ZXJuYWxfcGF0aF9kZXBlbmRlbmNpZXMuZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wYWNrYWdlX2NvbmZpZy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X3BhY2thZ2VfZ3JhcGguZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wdWJzcGVjX2xvY2suZGFydCc7CmV4cG9ydCAnc3JjL2dldF93b3Jrc3BhY2Vfcm9vdC5kYXJ0JzsKZXhwb3J0ICdzcmMvcGFja2FnZV9ncmFwaC9wYWNrYWdlX2dyYXBoLmRhcnQnOwpleHBvcnQgJ3NyYy9wYXRoX2RlcGVuZGVuY3kuZGFydCc7CmV4cG9ydCAnc3JjL3VzZXNfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CgovLy8gQSB2b2lkIGNhbGxiYWNrIGZ1bmN0aW9uIChlLmcuIGB2b2lkIEZ1bmN0aW9uKClgKS4KdHlwZWRlZiBWb2lkQ2FsbGJhY2sgPSB2b2lkIEZ1bmN0aW9uKCk7Cg==", - "type": "text" - }, - { - "path": "build/lib/src/copy_workspace_pubspec_lock.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKLy8vIENvcGllcyB0aGUgcHVic3BlYy5sb2NrIGZyb20gdGhlIHdvcmtzcGFjZSByb290IGludG8gdGhlIHByb2plY3QgZGlyZWN0b3J5Ci8vLyBpbiBvcmRlciB0byBlbnN1cmUgdGhlIHByb2R1Y3Rpb24gYnVpbGQgdXNlcyB0aGUgZXhhY3Qgc2FtZSB2ZXJzaW9ucyBvZiBhbGwKLy8vIGRlcGVuZGVuY2llcy4KVm9pZENhbGxiYWNrIGNvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaygKICBIb29rQ29udGV4dCBjb250ZXh0LCB7CiAgcmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgU3RyaW5nIHdvcmtzcGFjZVJvb3QsCiAgcmVxdWlyZWQgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQsCn0pIHsKICBmaW5hbCBwdWJzcGVjTG9ja0ZpbGUgPSBGaWxlKHBhdGguam9pbih3b3Jrc3BhY2VSb290LCAncHVic3BlYy5sb2NrJykpOwogIGlmICghcHVic3BlY0xvY2tGaWxlLmV4aXN0c1N5bmMoKSkgcmV0dXJuICgpIHt9OwoKICB0cnkgewogICAgcHVic3BlY0xvY2tGaWxlLmNvcHlTeW5jKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlYy5sb2NrJykpOwogICAgcmV0dXJuICgpIHsKICAgICAgRmlsZShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWMubG9jaycpKS5kZWxldGUoKS5pZ25vcmUoKTsKICAgIH07CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlcnJvcicpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsKICB9Cn0K", - "type": "text" - }, - { - "path": "build/lib/src/create_bundle.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTppby9pby5kYXJ0JyBzaG93IGNvcHlQYXRoOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCkZ1dHVyZTx2b2lkPiBjcmVhdGVCdW5kbGUoewogIHJlcXVpcmVkIEhvb2tDb250ZXh0IGNvbnRleHQsCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IGJ1aWxkRGlyZWN0b3J5LAogIHJlcXVpcmVkIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBleGl0LAp9KSBhc3luYyB7CiAgZmluYWwgZGFydEZyb2dEaXJlY3RvcnlQYXRoID0gcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy5kYXJ0X2Zyb2cnKTsKICBmaW5hbCBkYXJ0RnJvZ0RpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeShkYXJ0RnJvZ0RpcmVjdG9yeVBhdGgpOwogIGZpbmFsIGJ1bmRsaW5nUHJvZ3Jlc3MgPSBjb250ZXh0LmxvZ2dlci5wcm9ncmVzcygnQnVuZGxpbmcgc291cmNlcycpOwogIGZpbmFsIHRlbXBEaXJlY3RvcnkgPSBhd2FpdCBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wKCk7CgogIGlmIChidWlsZERpcmVjdG9yeS5leGlzdHNTeW5jKCkpIHsKICAgIGF3YWl0IGJ1aWxkRGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpOwogIH0KCiAgaWYgKGRhcnRGcm9nRGlyZWN0b3J5LmV4aXN0c1N5bmMoKSkgewogICAgYXdhaXQgZGFydEZyb2dEaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgfQoKICB0cnkgewogICAgYXdhaXQgY29weVBhdGgoCiAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgJyR7dGVtcERpcmVjdG9yeS5wYXRofSR7cGF0aC5zZXBhcmF0b3J9JywKICAgICk7CiAgICBidW5kbGluZ1Byb2dyZXNzLmNvbXBsZXRlKCk7CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBidW5kbGluZ1Byb2dyZXNzLmZhaWwoKTsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGVycm9yJyk7CiAgICByZXR1cm4gZXhpdCgxKTsKICB9CiAgYXdhaXQgY29weVBhdGgodGVtcERpcmVjdG9yeS5wYXRoLCBidWlsZERpcmVjdG9yeS5wYXRoKTsKfQo=", - "type": "text" - }, - { - "path": "build/lib/src/create_external_packages_folder.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICBmaW5hbCBpc0V4dGVybmFsID0gIXBhdGhSZXNvbHZlci5pc1dpdGhpbignJywgcGF0aERlc2NyaXB0aW9uLnBhdGgpOwogICAgICAgICAgaWYgKCFpc0V4dGVybmFsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSgKICAgICAgICAgICAgbmFtZTogZGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICBwYXRoOiBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCBwYXRoRGVzY3JpcHRpb24ucGF0aCksCiAgICAgICAgICApOwogICAgICAgIH0sCiAgICAgICkKICAgICAgLndoZXJlVHlwZTxFeHRlcm5hbFBhdGhEZXBlbmRlbmN5PigpCiAgICAgIC50b0xpc3QoKTsKCiAgaWYgKGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5pc0VtcHR5KSByZXR1cm4gW107CgogIGZpbmFsIHBhY2thZ2VzRGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgcGF0aFJlc29sdmVyLmpvaW4oCiAgICAgIGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICksCiAgKS4uY3JlYXRlU3luYyhyZWN1cnNpdmU6IHRydWUpOwoKICBmaW5hbCBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBhd2FpdCBGdXR1cmUud2FpdCgKICAgIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5tYXAoCiAgICAgIChleHRlcm5hbFBhdGhEZXBlbmRlbmN5KSBhc3luYyB7CiAgICAgICAgZmluYWwgY29weSA9IGF3YWl0IGV4dGVybmFsUGF0aERlcGVuZGVuY3kuY29weVRvKAogICAgICAgICAgY29weVBhdGg6IGNvcHlQYXRoLAogICAgICAgICAgdGFyZ2V0RGlyZWN0b3J5OiBEaXJlY3RvcnkoCiAgICAgICAgICAgIHBhdGhSZXNvbHZlci5qb2luKAogICAgICAgICAgICAgIHBhY2thZ2VzRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICApLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhjb3B5LnBhdGgpOwogICAgICAgIHJldHVybiBjb3B5OwogICAgICB9LAogICAgKSwKICApOwoKICBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoYnVpbGREaXJlY3RvcnkucGF0aCk7CiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMsCiAgKTsKCiAgcmV0dXJuIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcwogICAgICAubWFwKChkZXBlbmRlbmN5KSA9PiBkZXBlbmRlbmN5LnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", - "type": "text" - }, - { - "path": "build/lib/src/dart_pub_get.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKCnR5cGVkZWYgUHJvY2Vzc1J1bm5lciA9IEZ1dHVyZTxpby5Qcm9jZXNzUmVzdWx0PiBGdW5jdGlvbigKICBTdHJpbmcgZXhlY3V0YWJsZSwKICBMaXN0PFN0cmluZz4gYXJndW1lbnRzLCB7CiAgU3RyaW5nIHdvcmtpbmdEaXJlY3RvcnksCiAgYm9vbCBydW5JblNoZWxsLAp9KTsKCkZ1dHVyZTx2b2lkPiBkYXJ0UHViR2V0KAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBTdHJpbmcgd29ya2luZ0RpcmVjdG9yeSwKICByZXF1aXJlZCBQcm9jZXNzUnVubmVyIHJ1blByb2Nlc3MsCiAgcmVxdWlyZWQgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQsCiAgU3RyaW5nIG1lc3NhZ2UgPSAnSW5zdGFsbGluZyBkZXBlbmRlbmNpZXMnLAp9KSBhc3luYyB7CiAgZmluYWwgcHJvZ3Jlc3MgPSBjb250ZXh0LmxvZ2dlci5wcm9ncmVzcyhtZXNzYWdlKTsKICB0cnkgewogICAgZmluYWwgcmVzdWx0ID0gYXdhaXQgcnVuUHJvY2VzcygKICAgICAgJ2RhcnQnLAogICAgICBbJ3B1YicsICdnZXQnXSwKICAgICAgd29ya2luZ0RpcmVjdG9yeTogd29ya2luZ0RpcmVjdG9yeSwKICAgICAgcnVuSW5TaGVsbDogdHJ1ZSwKICAgICk7CiAgICBwcm9ncmVzcy5jb21wbGV0ZSgpOwoKICAgIGlmIChyZXN1bHQuZXhpdENvZGUgIT0gMCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyR7cmVzdWx0LnN0ZGVycn0nKTsKICAgICAgcmV0dXJuIGV4aXQocmVzdWx0LmV4aXRDb2RlKTsKICAgIH0KICB9IG9uIGlvLlByb2Nlc3NFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoZXJyb3IubWVzc2FnZSk7CiAgICByZXR1cm4gZXhpdChlcnJvci5lcnJvckNvZGUpOwogIH0KfQo=", - "type": "text" - }, - { - "path": "build/lib/src/disable_workspace_resolution.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sX2VkaXQveWFtbF9lZGl0LmRhcnQnOwoKLy8vIE9wdHMgb3V0IG9mIGRhcnQgd29ya3NwYWNlcyB1bnRpbCB3ZSBjYW4gZ2VuZXJhdGUgcGVyIHBhY2thZ2UgbG9ja2ZpbGVzLgovLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtbGFuZy9wdWIvaXNzdWVzLzQ1OTQKVm9pZENhbGxiYWNrIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBQYWNrYWdlQ29uZmlnIHBhY2thZ2VDb25maWcsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKICByZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCBTdHJpbmcgd29ya3NwYWNlUm9vdCwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIFZvaWRDYWxsYmFjayByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKICB0cnkgewogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoCiAgICAgIHByb2plY3REaXJlY3RvcnksCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlJyk7CiAgICBleGl0KDEpOwogICAgcmV0dXJuICgpIHt9OyAvLyBuby1vcAogIH0KCiAgdHJ5IHsKICAgIG92ZXJyaWRlUGF0aERlcGVuZGVuY2llc0luUHVic3BlY092ZXJyaWRlcygKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbigpOwogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZScpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsgLy8gbm8tb3AKICB9CgogIHJldHVybiByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKfQoKLy8vIEFkZCByZXNvbHV0aW9uOm51bGwgdG8gcHVic3BlY19vdmVycmlkZXMueWFtbC4KVm9pZENhbGxiYWNrIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhTdHJpbmcgcHJvamVjdERpcmVjdG9yeSkgewogIGZpbmFsIHB1YnNwZWNPdmVycmlkZXNGaWxlID0gRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICk7CgogIGlmICghcHVic3BlY092ZXJyaWRlc0ZpbGUuZXhpc3RzU3luYygpKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuIHB1YnNwZWNPdmVycmlkZXNGaWxlLmRlbGV0ZVN5bmM7CiAgfQoKICBmaW5hbCBjb250ZW50cyA9IHB1YnNwZWNPdmVycmlkZXNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gbG9hZFlhbWwoY29udGVudHMpIGFzIFlhbWxNYXA/OwoKICBpZiAocHVic3BlY092ZXJyaWRlcyA9PSBudWxsKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKICB9CgogIGlmIChwdWJzcGVjT3ZlcnJpZGVzWydyZXNvbHV0aW9uJ10gPT0gJ251bGwnKSByZXR1cm4gKCkge307IC8vIG5vLW9wCgogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpLi51cGRhdGUoWydyZXNvbHV0aW9uJ10sIG51bGwpOwogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKCiAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKfQoKLy8vIEFkZCBvdmVycmlkZXMgZm9yIGFsbCBwYXRoIGRlcGVuZGVuY2llcyB0byBgcHVic3BlY19vdmVycmlkZXMueWFtbGAKdm9pZCBvdmVycmlkZVBhdGhEZXBlbmRlbmNpZXNJblB1YnNwZWNPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIFBhY2thZ2VDb25maWcgcGFja2FnZUNvbmZpZywKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgbmFtZSA9IGdldFBhY2thZ2VOYW1lKHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkpOwogIGlmIChuYW1lID09IG51bGwpIHsKICAgIHRocm93IEV4Y2VwdGlvbignRmFpbGVkIHRvIHBhcnNlICJuYW1lIiBmcm9tIHB1YnNwZWMueWFtbCcpOwogIH0KCiAgZmluYWwgcHJvZHVjdGlvbkRlcHMgPSBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKAogICAgcGFja2FnZU5hbWU6IG5hbWUsCiAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICApOwoKICBmaW5hbCBwYXRoRGVwZW5kZW5jaWVzID0gcGFja2FnZUNvbmZpZy5wYWNrYWdlcwogICAgICAud2hlcmUoKHApID0+IHAucmVsYXRpdmVSb290ICYmIHByb2R1Y3Rpb25EZXBzLmNvbnRhaW5zKHAubmFtZSkpCiAgICAgIC5tYXAoKHApID0+IFBhdGhEZXBlbmRlbmN5KG5hbWU6IHAubmFtZSwgcGF0aDogcC5yb290LnBhdGgpKTsKCiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBwYXRoRGVwZW5kZW5jaWVzLAogICk7Cn0KCnZvaWQgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcyh7CiAgcmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgSXRlcmFibGU8UGF0aERlcGVuZGVuY3k+IHBhdGhEZXBlbmRlbmNpZXMsCn0pIHsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzRmlsZSA9IEZpbGUoCiAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICApOwogIGZpbmFsIGNvbnRlbnRzID0gcHVic3BlY092ZXJyaWRlc0ZpbGUucmVhZEFzU3RyaW5nU3luYygpOwogIGZpbmFsIG92ZXJyaWRlcyA9IGxvYWRZYW1sKGNvbnRlbnRzKSBhcyBZYW1sTWFwOwogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpOwogIGlmICghb3ZlcnJpZGVzLmNvbnRhaW5zS2V5KCdkZXBlbmRlbmN5X292ZXJyaWRlcycpKSB7CiAgICBlZGl0b3IudXBkYXRlKFsnZGVwZW5kZW5jeV9vdmVycmlkZXMnXSwge30pOwogIH0KICBmb3IgKGZpbmFsIHBhY2thZ2UgaW4gcGF0aERlcGVuZGVuY2llcykgewogICAgZWRpdG9yLnVwZGF0ZSgKICAgICAgWydkZXBlbmRlbmN5X292ZXJyaWRlcycsIHBhY2thZ2UubmFtZV0sCiAgICAgIHsncGF0aCc6IHBhdGgucmVsYXRpdmUocGFja2FnZS5wYXRoLCBmcm9tOiBwcm9qZWN0RGlyZWN0b3J5KX0sCiAgICApOwogIH0KICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYyhlZGl0b3IudG9TdHJpbmcoKSk7Cn0KCi8vLyBFeHRyYWN0IHRoZSBwYWNrYWdlIG5hbWUgZnJvbSB0aGUgcHVic3BlYy55YW1sIGluIFtwcm9qZWN0RGlyZWN0b3J5XS4KU3RyaW5nPyBnZXRQYWNrYWdlTmFtZSh7cmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3Rvcnl9KSB7CiAgZmluYWwgcHVic3BlY0ZpbGUgPSBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlYy55YW1sJykpOwogIGZpbmFsIHB1YnNwZWMgPSBsb2FkWWFtbChwdWJzcGVjRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogIGlmIChwdWJzcGVjIGlzISBZYW1sTWFwKSByZXR1cm4gbnVsbDsKCiAgZmluYWwgbmFtZSA9IHB1YnNwZWNbJ25hbWUnXTsKICBpZiAobmFtZSBpcyEgU3RyaW5nKSByZXR1cm4gbnVsbDsKCiAgcmV0dXJuIG5hbWU7Cn0KCi8vLyBCdWlsZCBhIGNvbXBsZXRlIGxpc3Qgb2YgZGVwZW5kZW5jaWVzIChkaXJlY3QgYW5kIHRyYW5zaXRpdmUpLgpTZXQ8U3RyaW5nPiBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKHsKICByZXF1aXJlZCBTdHJpbmcgcGFja2FnZU5hbWUsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKfSkgewogIGZpbmFsIGRlcGVuZGVuY2llcyA9IDxTdHJpbmc+e307CiAgZmluYWwgcm9vdCA9IHBhY2thZ2VHcmFwaC5yb290cy5maXJzdFdoZXJlKChyb290KSA9PiByb290ID09IHBhY2thZ2VOYW1lKTsKICBmaW5hbCByb290UGFja2FnZSA9IHBhY2thZ2VHcmFwaC5wYWNrYWdlcy5maXJzdFdoZXJlKChwKSA9PiBwLm5hbWUgPT0gcm9vdCk7CiAgZmluYWwgZGVwZW5kZW5jaWVzVG9WaXNpdCA9IDxTdHJpbmc+Wy4uLnJvb3RQYWNrYWdlLmRlcGVuZGVuY2llc107CgogIGRvIHsKICAgIGZpbmFsIGRpc2NvdmVyZWREZXBlbmRlbmNpZXMgPSA8U3RyaW5nPltdOwogICAgZm9yIChmaW5hbCBkZXBlbmRlbmN5VG9WaXNpdCBpbiBkZXBlbmRlbmNpZXNUb1Zpc2l0KSB7CiAgICAgIGZpbmFsIHBhY2thZ2UgPSBwYWNrYWdlR3JhcGgucGFja2FnZXMuZmlyc3RXaGVyZSgKICAgICAgICAocCkgPT4gcC5uYW1lID09IGRlcGVuZGVuY3lUb1Zpc2l0LAogICAgICApOwogICAgICBkZXBlbmRlbmNpZXMuYWRkKHBhY2thZ2UubmFtZSk7CiAgICAgIGZvciAoZmluYWwgcGFja2FnZURlcGVuZGVuY3kgaW4gcGFja2FnZS5kZXBlbmRlbmNpZXMpIHsKICAgICAgICAvLyBBdm9pZCBpbmZpbml0ZSBsb29wcyBmcm9tIGRlcGVuZGVuY3kgY3ljbGVzIChjaXJjdWxhciBkZXBlbmRlbmNpZXMpLgogICAgICAgIGlmIChkZXBlbmRlbmNpZXMuY29udGFpbnMocGFja2FnZURlcGVuZGVuY3kpKSBjb250aW51ZTsKICAgICAgICBkaXNjb3ZlcmVkRGVwZW5kZW5jaWVzLmFkZChwYWNrYWdlRGVwZW5kZW5jeSk7CiAgICAgIH0KICAgIH0KICAgIGRlcGVuZGVuY2llc1RvVmlzaXQKICAgICAgLi5jbGVhcigpCiAgICAgIC4uYWRkQWxsKGRpc2NvdmVyZWREZXBlbmRlbmNpZXMpOwogIH0gd2hpbGUgKGRlcGVuZGVuY2llc1RvVmlzaXQuaXNOb3RFbXB0eSk7CiAgcmV0dXJuIGRlcGVuZGVuY2llczsKfQo=", - "type": "text" - }, - { - "path": "build/lib/src/exit_overrides.dart", - "data": - "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmNvbnN0IF9hc3luY1J1blpvbmVkID0gcnVuWm9uZWQ7Cgp2b2lkIGRlZmF1bHRFeGl0KGludCBjb2RlKSA9PiBFeGl0T3ZlcnJpZGVzLmN1cnJlbnQ/LmV4aXQgPz8gaW8uZXhpdDsKCmFic3RyYWN0IGNsYXNzIEV4aXRPdmVycmlkZXMgewogIHN0YXRpYyBmaW5hbCBfdG9rZW4gPSBPYmplY3QoKTsKCiAgc3RhdGljIEV4aXRPdmVycmlkZXM/IGdldCBjdXJyZW50IHsKICAgIHJldHVybiBab25lLmN1cnJlbnRbX3Rva2VuXSBhcyBFeGl0T3ZlcnJpZGVzPzsKICB9CgogIHN0YXRpYyBSIHJ1blpvbmVkPFI+KFIgRnVuY3Rpb24oKSBib2R5LCB7dm9pZCBGdW5jdGlvbihpbnQpPyBleGl0fSkgewogICAgZmluYWwgb3ZlcnJpZGVzID0gX0V4aXRPdmVycmlkZXNTY29wZShleGl0KTsKICAgIHJldHVybiBfYXN5bmNSdW5ab25lZChib2R5LCB6b25lVmFsdWVzOiB7X3Rva2VuOiBvdmVycmlkZXN9KTsKICB9CgogIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBnZXQgZXhpdCA9PiBpby5leGl0Owp9CgpjbGFzcyBfRXhpdE92ZXJyaWRlc1Njb3BlIGV4dGVuZHMgRXhpdE92ZXJyaWRlcyB7CiAgX0V4aXRPdmVycmlkZXNTY29wZSh0aGlzLl9leGl0KTsKCiAgZmluYWwgRXhpdE92ZXJyaWRlcz8gX3ByZXZpb3VzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogIGZpbmFsIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKT8gX2V4aXQ7CgogIEBvdmVycmlkZQogIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBnZXQgZXhpdCB7CiAgICByZXR1cm4gX2V4aXQgPz8gX3ByZXZpb3VzPy5leGl0ID8/IHN1cGVyLmV4aXQ7CiAgfQp9Cg==", - "type": "text" - }, - { - "path": "build/lib/src/get_internal_path_dependencies.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CgpGdXR1cmU8TGlzdDxTdHJpbmc+PiBnZXRJbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMoaW8uRGlyZWN0b3J5IGRpcmVjdG9yeSkgYXN5bmMgewogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soZGlyZWN0b3J5LnBhdGgpOwoKICBmaW5hbCBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBwdWJzcGVjTG9jay5wYWNrYWdlcy53aGVyZSgKICAgIChkZXBlbmRlbmN5KSB7CiAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICBpZiAocGF0aERlc2NyaXB0aW9uID09IG51bGwpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAgIHJldHVybiBwYXRoLmlzV2l0aGluKCcnLCBwYXRoRGVzY3JpcHRpb24ucGF0aCk7CiAgICB9LAogICk7CgogIHJldHVybiBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMKICAgICAgLm1hcCgoZGVwZW5kZW5jeSkgPT4gZGVwZW5kZW5jeS5wYXRoRGVzY3JpcHRpb24hLnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", - "type": "text" - }, - { - "path": "build/lib/src/get_package_config.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpwYWNrYWdlX2NvbmZpZy9wYWNrYWdlX2NvbmZpZ190eXBlcy5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKUGFja2FnZUNvbmZpZz8gZ2V0UGFja2FnZUNvbmZpZygKICBTdHJpbmcgd29ya3NwYWNlUm9vdCwgewogIHBhdGguQ29udGV4dD8gcGF0aENvbnRleHQsCn0pIHsKICBmaW5hbCBwYXRoUmVzb2x2ZXIgPSBwYXRoQ29udGV4dCA/PyBwYXRoLmNvbnRleHQ7CiAgZmluYWwgcGFja2FnZUNvbmZpZ0ZpbGUgPSBGaWxlKAogICAgcGF0aFJlc29sdmVyLmpvaW4od29ya3NwYWNlUm9vdCwgJy5kYXJ0X3Rvb2wvcGFja2FnZV9jb25maWcuanNvbicpLAogICk7CiAgaWYgKCFwYWNrYWdlQ29uZmlnRmlsZS5leGlzdHNTeW5jKCkpIHJldHVybiBudWxsOwoKICB0cnkgewogICAgZmluYWwgY29udGVudCA9IHBhY2thZ2VDb25maWdGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICAgIHJldHVybiBQYWNrYWdlQ29uZmlnLnBhcnNlU3RyaW5nKGNvbnRlbnQsIHBhY2thZ2VDb25maWdGaWxlLnVyaSk7CiAgfSBvbiBFeGNlcHRpb24gewogICAgcmV0dXJuIG51bGw7CiAgfQp9Cg==", - "type": "text" - }, - { - "path": "build/lib/src/get_package_graph.dart", - "data": - "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CgpQYWNrYWdlR3JhcGg/IGdldFBhY2thZ2VHcmFwaChTdHJpbmcgd29ya3NwYWNlUm9vdCkgewogIHRyeSB7CiAgICByZXR1cm4gUGFja2FnZUdyYXBoLmxvYWQod29ya3NwYWNlUm9vdCk7CiAgfSBvbiBFeGNlcHRpb24gewogICAgcmV0dXJuIG51bGw7CiAgfQp9Cg==", - "type": "text" - }, - { - "path": "build/lib/src/get_pubspec_lock.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3Mvc3JjL3B1YnNwZWNfbG9jay9wdWJzcGVjX2xvY2suZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCkZ1dHVyZTxQdWJzcGVjTG9jaz4gZ2V0UHVic3BlY0xvY2soCiAgU3RyaW5nIHdvcmtpbmdEaXJlY3RvcnksIHsKICBwYXRoLkNvbnRleHQ/IHBhdGhDb250ZXh0LAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aENvbnRleHQgPz8gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrRmlsZSA9IEZpbGUoCiAgICB3b3JraW5nRGlyZWN0b3J5LmlzRW1wdHkKICAgICAgICA/ICdwdWJzcGVjLmxvY2snCiAgICAgICAgOiBwYXRoUmVzb2x2ZXIuam9pbih3b3JraW5nRGlyZWN0b3J5LCAncHVic3BlYy5sb2NrJyksCiAgKTsKCiAgZmluYWwgY29udGVudCA9IGF3YWl0IHB1YnNwZWNMb2NrRmlsZS5yZWFkQXNTdHJpbmcoKTsKICByZXR1cm4gUHVic3BlY0xvY2suZnJvbVN0cmluZyhjb250ZW50KTsKfQo=", - "type": "text" - }, - { - "path": "build/lib/src/get_workspace_root.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKaW1wb3J0ICdwYWNrYWdlOnlhbWwveWFtbC5kYXJ0JzsKCi8vLyBSZXR1cm5zIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgbmVhcmVzdCBEYXJ0IHdvcmtzcGFjZS4KRGlyZWN0b3J5PyBnZXRXb3Jrc3BhY2VSb290KFN0cmluZyB3b3JraW5nRGlyZWN0b3J5KSB7CiAgZmluYWwgZmlsZSA9IF9maW5kTmVhcmVzdEFuY2VzdG9yKAogICAgd2hlcmU6IChwYXRoKSA9PiBfZ2V0V29ya3NwYWNlUm9vdFB1YnNwZWNZYW1sKGN3ZDogRGlyZWN0b3J5KHBhdGgpKSwKICAgIGN3ZDogRGlyZWN0b3J5KHdvcmtpbmdEaXJlY3RvcnkpLAogICk7CiAgaWYgKGZpbGUgPT0gbnVsbCB8fCAhZmlsZS5leGlzdHNTeW5jKCkpIHJldHVybiBudWxsOwogIHJldHVybiBEaXJlY3RvcnkocGF0aC5kaXJuYW1lKGZpbGUucGF0aCkpOwp9CgovLy8gVGhlIHdvcmtzcGFjZSByb290IGBwdWJzcGVjLnlhbWxgIGZpbGUgZm9yIHRoaXMgcHJvamVjdC4KRmlsZT8gX2dldFdvcmtzcGFjZVJvb3RQdWJzcGVjWWFtbCh7cmVxdWlyZWQgRGlyZWN0b3J5IGN3ZH0pIHsKICB0cnkgewogICAgZmluYWwgcHVic3BlY1lhbWxGaWxlID0gRmlsZShwYXRoLmpvaW4oY3dkLnBhdGgsICdwdWJzcGVjLnlhbWwnKSk7CiAgICBpZiAoIXB1YnNwZWNZYW1sRmlsZS5leGlzdHNTeW5jKCkpIHJldHVybiBudWxsOwogICAgZmluYWwgcHVic3BlYyA9IGxvYWRZYW1sKHB1YnNwZWNZYW1sRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogICAgaWYgKHB1YnNwZWMgaXMhIFlhbWxNYXApIHJldHVybiBudWxsOwogICAgZmluYWwgd29ya3NwYWNlID0gcHVic3BlY1snd29ya3NwYWNlJ10gYXMgTGlzdD87CiAgICBpZiAod29ya3NwYWNlPy5pc0VtcHR5ID8/IHRydWUpIHJldHVybiBudWxsOwogICAgcmV0dXJuIHB1YnNwZWNZYW1sRmlsZTsKICB9IG9uIEV4Y2VwdGlvbiB7CiAgICByZXR1cm4gbnVsbDsKICB9Cn0KCi8vLyBGaW5kcyBuZWFyZXN0IGFuY2VzdG9yIGZpbGUKLy8vIHJlbGF0aXZlIHRvIHRoZSBbY3dkXSB0aGF0IHNhdGlzZmllcyBbd2hlcmVdLgpGaWxlPyBfZmluZE5lYXJlc3RBbmNlc3Rvcih7CiAgcmVxdWlyZWQgRmlsZT8gRnVuY3Rpb24oU3RyaW5nIHBhdGgpIHdoZXJlLAogIHJlcXVpcmVkIERpcmVjdG9yeSBjd2QsCn0pIHsKICBEaXJlY3Rvcnk/IHByZXY7CiAgdmFyIGRpciA9IGN3ZDsKICB3aGlsZSAocHJldj8ucGF0aCAhPSBkaXIucGF0aCkgewogICAgZmluYWwgZmlsZSA9IHdoZXJlKGRpci5wYXRoKTsKICAgIGlmIChmaWxlPy5leGlzdHNTeW5jKCkgPz8gZmFsc2UpIHJldHVybiBmaWxlOwogICAgcHJldiA9IGRpcjsKICAgIGRpciA9IGRpci5wYXJlbnQ7CiAgfQogIHJldHVybiBudWxsOwp9Cg==", - "type": "text" - }, - { - "path": "build/lib/src/package_graph/package_graph.dart", - "data": - "aW1wb3J0ICdkYXJ0OmNvbnZlcnQnOwppbXBvcnQgJ2RhcnQ6aW8nOwoKaW1wb3J0ICdwYWNrYWdlOmpzb25fYW5ub3RhdGlvbi9qc29uX2Fubm90YXRpb24uZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCnBhcnQgJ3BhY2thZ2VfZ3JhcGguZy5kYXJ0JzsKCi8vLyB7QHRlbXBsYXRlIHBhY2thZ2VfZ3JhcGh9Ci8vLyBBIERhcnQgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGRlc2VyaWFsaXplZCBjb250ZW50cyBvZiB0aGUgcGFja2FnZV9ncmFwaC5qc29uCi8vLyB7QGVuZHRlbXBsYXRlfQpASnNvblNlcmlhbGl6YWJsZSgpCmNsYXNzIFBhY2thZ2VHcmFwaCB7CiAgLy8vIHtAbWFjcm8gcGFja2FnZV9ncmFwaH0KICBjb25zdCBQYWNrYWdlR3JhcGgoewogICAgcmVxdWlyZWQgdGhpcy5yb290cywKICAgIHJlcXVpcmVkIHRoaXMucGFja2FnZXMsCiAgICByZXF1aXJlZCB0aGlzLmNvbmZpZ1ZlcnNpb24sCiAgfSk7CgogIC8vLyBMb2FkIGEgW1BhY2thZ2VHcmFwaF0gZnJvbSB0aGUgcHJvdmlkZWQgW3Byb2plY3RdIHJvb3QuCiAgZmFjdG9yeSBQYWNrYWdlR3JhcGgubG9hZChTdHJpbmcgcHJvamVjdCkgewogICAgZmluYWwgZmlsZSA9IEZpbGUocGF0aC5qb2luKHByb2plY3QsICcuZGFydF90b29sJywgJ3BhY2thZ2VfZ3JhcGguanNvbicpKTsKICAgIGlmICghZmlsZS5leGlzdHNTeW5jKCkpIHRocm93IEV4Y2VwdGlvbignJHtmaWxlLnBhdGh9IG5vdCBmb3VuZCcpOwogICAgcmV0dXJuIFBhY2thZ2VHcmFwaC5mcm9tSnNvbigKICAgICAganNvbkRlY29kZShmaWxlLnJlYWRBc1N0cmluZ1N5bmMoKSkgYXMgTWFwPFN0cmluZywgZHluYW1pYz4sCiAgICApOwogIH0KCiAgLy8vIENyZWF0ZSBhIFtQYWNrYWdlR3JhcGhdIGZyb20gYSBbTWFwXS4KICBmYWN0b3J5IFBhY2thZ2VHcmFwaC5mcm9tSnNvbihNYXA8U3RyaW5nLCBkeW5hbWljPiBqc29uKSA9PgogICAgICBfJFBhY2thZ2VHcmFwaEZyb21Kc29uKGpzb24pOwoKICAvLy8gVGhlIHJvb3Qgbm9kZXMgb2YgdGhlIHBhY2thZ2UgZ3JhcGguCiAgZmluYWwgTGlzdDxTdHJpbmc+IHJvb3RzOwoKICAvLy8gQSBsaXN0IG9mIHBhY2thZ2VzIGZvciB0aGUgZ2l2ZW4gcGFja2FnZSBncmFwaC4KICBmaW5hbCBMaXN0PFBhY2thZ2VHcmFwaFBhY2thZ2U+IHBhY2thZ2VzOwoKICAvLy8gVGhlIGNvbmZpZyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGdyYXBoLgogIGZpbmFsIGludCBjb25maWdWZXJzaW9uOwp9CgovLy8ge0B0ZW1wbGF0ZSBwYWNrYWdlX2dyYXBoX3BhY2thZ2V9Ci8vLyBBbiBpbmRpdmlkdWFsIHBhY2thZ2UgaW4gYSBwYWNrYWdlIGdyYXBoLgovLy8ge0BlbmR0ZW1wbGF0ZX0KQEpzb25TZXJpYWxpemFibGUoKQpjbGFzcyBQYWNrYWdlR3JhcGhQYWNrYWdlIHsKICAvLy8ge0BtYWNybyBwYWNrYWdlX2dyYXBoX3BhY2thZ2V9CiAgY29uc3QgUGFja2FnZUdyYXBoUGFja2FnZSh7CiAgICByZXF1aXJlZCB0aGlzLm5hbWUsCiAgICByZXF1aXJlZCB0aGlzLnZlcnNpb24sCiAgICByZXF1aXJlZCB0aGlzLmRlcGVuZGVuY2llcywKICAgIHJlcXVpcmVkIHRoaXMuZGV2RGVwZW5kZW5jaWVzLAogIH0pOwoKICAvLy8gQ3JlYXRlIGEgW1BhY2thZ2VHcmFwaFBhY2thZ2VdIGZyb20gYSBbTWFwXS4KICBmYWN0b3J5IFBhY2thZ2VHcmFwaFBhY2thZ2UuZnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICAgXyRQYWNrYWdlR3JhcGhQYWNrYWdlRnJvbUpzb24oanNvbik7CgogIC8vLyBUaGUgbmFtZSBvZiB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgbmFtZTsKCiAgLy8vIFRoZSB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLgogIGZpbmFsIFN0cmluZyB2ZXJzaW9uOwoKICAvLy8gVGhlIGxpc3Qgb2YgcGFja2FnZSBuYW1lcyB0aGF0IHRoaXMgcGFja2FnZSBkZXBlbmRzIG9uIGluIHByb2R1Y3Rpb24uCiAgQEpzb25LZXkoZGVmYXVsdFZhbHVlOiA8U3RyaW5nPltdKQogIGZpbmFsIExpc3Q8U3RyaW5nPiBkZXBlbmRlbmNpZXM7CgogIC8vLyBUaGUgbGlzdCBvZiBwYWNrYWdlIG5hbWVzIHRoYXQgdGhpcyBwYWNrYWdlIGRlcGVuZHMgb24gaW4gZGV2ZWxvcG1lbnQuCiAgQEpzb25LZXkoZGVmYXVsdFZhbHVlOiA8U3RyaW5nPltdKQogIGZpbmFsIExpc3Q8U3RyaW5nPiBkZXZEZXBlbmRlbmNpZXM7Cn0K", - "type": "text" - }, - { - "path": "build/lib/src/package_graph/package_graph.g.dart", - "data": - "Ly8gR0VORVJBVEVEIENPREUgLSBETyBOT1QgTU9ESUZZIEJZIEhBTkQKCi8vIGlnbm9yZV9mb3JfZmlsZTogdHlwZT1saW50CgpwYXJ0IG9mICdwYWNrYWdlX2dyYXBoLmRhcnQnOwoKLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLy8gSnNvblNlcmlhbGl6YWJsZUdlbmVyYXRvcgovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKUGFja2FnZUdyYXBoIF8kUGFja2FnZUdyYXBoRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoJywKICAgICAganNvbiwKICAgICAgKCRjaGVja2VkQ29udmVydCkgewogICAgICAgIGZpbmFsIHZhbCA9IFBhY2thZ2VHcmFwaCgKICAgICAgICAgIHJvb3RzOiAkY2hlY2tlZENvbnZlcnQoJ3Jvb3RzJywKICAgICAgICAgICAgICAodikgPT4gKHYgYXMgTGlzdDxkeW5hbWljPikubWFwKChlKSA9PiBlIGFzIFN0cmluZykudG9MaXN0KCkpLAogICAgICAgICAgcGFja2FnZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAncGFja2FnZXMnLAogICAgICAgICAgICAgICh2KSA9PiAodiBhcyBMaXN0PGR5bmFtaWM+KQogICAgICAgICAgICAgICAgICAubWFwKChlKSA9PgogICAgICAgICAgICAgICAgICAgICAgUGFja2FnZUdyYXBoUGFja2FnZS5mcm9tSnNvbihlIGFzIE1hcDxTdHJpbmcsIGR5bmFtaWM+KSkKICAgICAgICAgICAgICAgICAgLnRvTGlzdCgpKSwKICAgICAgICAgIGNvbmZpZ1ZlcnNpb246CiAgICAgICAgICAgICAgJGNoZWNrZWRDb252ZXJ0KCdjb25maWdWZXJzaW9uJywgKHYpID0+ICh2IGFzIG51bSkudG9JbnQoKSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsKClBhY2thZ2VHcmFwaFBhY2thZ2UgXyRQYWNrYWdlR3JhcGhQYWNrYWdlRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoUGFja2FnZScsCiAgICAgIGpzb24sCiAgICAgICgkY2hlY2tlZENvbnZlcnQpIHsKICAgICAgICBmaW5hbCB2YWwgPSBQYWNrYWdlR3JhcGhQYWNrYWdlKAogICAgICAgICAgbmFtZTogJGNoZWNrZWRDb252ZXJ0KCduYW1lJywgKHYpID0+IHYgYXMgU3RyaW5nKSwKICAgICAgICAgIHZlcnNpb246ICRjaGVja2VkQ29udmVydCgndmVyc2lvbicsICh2KSA9PiB2IGFzIFN0cmluZyksCiAgICAgICAgICBkZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgICBkZXZEZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGV2RGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsK", - "type": "text" - }, - { - "path": "build/lib/src/path_dependency.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CgovLy8ge0B0ZW1wbGF0ZSBwYXRoX2RlcGVuZGVuY3l9Ci8vLyBBIHBhdGggZGVwZW5kZW5jeSB0aGF0IHRoZSBEYXJ0IEZyb2cgcHJvamVjdCByZWxpZXMgb24uCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4vbXlfcGFja2FnZQovLy8gYGBgCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQYXRoRGVwZW5kZW5jeSB7CiAgLy8vIHtAbWFjcm8gcGF0aF9kZXBlbmRlbmN5fQogIGNvbnN0IFBhdGhEZXBlbmRlbmN5KHtyZXF1aXJlZCB0aGlzLm5hbWUsIHJlcXVpcmVkIHRoaXMucGF0aH0pOwoKICAvLy8gVGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIG5hbWU7CgogIC8vLyBUaGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgcGF0aDsKfQoKLy8vIHtAdGVtcGxhdGUgZXh0ZXJuYWxfcGF0aF9kZXBlbmRlbmN5fQovLy8gQSBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3Qgd2l0aGluIHRoZSBidW5kbGVkIERhcnQgRnJvZyBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4uL215X3BhY2thZ2UKLy8vIGBgYAovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSBleHRlbmRzIFBhdGhEZXBlbmRlbmN5IHsKICAvLy8ge0BtYWNybyBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9CiAgY29uc3QgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSh7cmVxdWlyZWQgc3VwZXIubmFtZSwgcmVxdWlyZWQgc3VwZXIucGF0aH0pOwoKICAvLy8gQ29waWVzIHRoZSBbRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeV0gdG8gW3RhcmdldERpcmVjdG9yeV0uCiAgRnV0dXJlPEV4dGVybmFsUGF0aERlcGVuZGVuY3k+IGNvcHlUbyh7CiAgICByZXF1aXJlZCBEaXJlY3RvcnkgdGFyZ2V0RGlyZWN0b3J5LAogICAgQ29weVBhdGggY29weVBhdGggPSBpby5jb3B5UGF0aCwKICB9KSBhc3luYyB7CiAgICBhd2FpdCBjb3B5UGF0aChwYXRoLCB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeShuYW1lOiBuYW1lLCBwYXRoOiB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgfQp9Cg==", - "type": "text" - }, - { - "path": "build/lib/src/pubspec_lock/pubspec_lock.dart", - "data": - "aW1wb3J0ICdkYXJ0OmNvbGxlY3Rpb24nOwoKaW1wb3J0ICdwYWNrYWdlOmVxdWF0YWJsZS9lcXVhdGFibGUuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfcGFyc2VfZXhjZXB0aW9ufQovLy8gVGhyb3duIHdoZW4gYSBbUHVic3BlY0xvY2tdIGZhaWxzIHRvIHBhcnNlLgovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgUHVic3BlY0xvY2tQYXJzZUV4Y2VwdGlvbiBpbXBsZW1lbnRzIEV4Y2VwdGlvbiB7CiAgLy8vIHtAbWFjcm8gcHVic3BlY19sb2NrX3BhcnNlX2V4Y2VwdGlvbn0KICBjb25zdCBQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uKCk7Cn0KCi8vLyBBIHJlcHJlc2VudGF0aW9uIG9mIGEgcHVic3BlYy5sb2NrIGZpbGUuCmNsYXNzIFB1YnNwZWNMb2NrIHsKICBjb25zdCBQdWJzcGVjTG9jay5fKHsKICAgIHJlcXVpcmVkIHRoaXMucGFja2FnZXMsCiAgfSk7CgogIC8vLyBQYXJzZXMgYSBbUHVic3BlY0xvY2tdIGZyb20gYSBzdHJpbmcuCiAgLy8vCiAgLy8vIElmIG5vIHBhY2thZ2VzIGFyZSBmb3VuZCwgYW4gZW1wdHkgW1B1YnNwZWNMb2NrXSBpcyByZXR1cm5lZC4gVGhvc2UKICAvLy8gcGFja2FnZXMgZW50cmllcyB0aGF0IGNhbm5vdCBiZSBwYXJzZWQgYXJlIGlnbm9yZWQuCiAgLy8vCiAgLy8vIEl0IHRocm93cyBhIFtQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uXSBpZiB0aGUgc3RyaW5nIGNhbm5vdCBiZSBwYXJzZWQKICAvLy8gYXMgYSBbWWFtbE1hcF0uCiAgZmFjdG9yeSBQdWJzcGVjTG9jay5mcm9tU3RyaW5nKFN0cmluZyBjb250ZW50KSB7CiAgICBsYXRlIGZpbmFsIFlhbWxNYXAgeWFtbDsKICAgIHRyeSB7CiAgICAgIHlhbWwgPSBsb2FkWWFtbChjb250ZW50KSBhcyBZYW1sTWFwOwogICAgICAvLyBpZ25vcmluZyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQogICAgICAvLyBpZ25vcmU6IGF2b2lkX2NhdGNoZXNfd2l0aG91dF9vbl9jbGF1c2VzCiAgICB9IGNhdGNoIChfKSB7CiAgICAgIHRocm93IGNvbnN0IFB1YnNwZWNMb2NrUGFyc2VFeGNlcHRpb24oKTsKICAgIH0KCiAgICBpZiAoIXlhbWwuY29udGFpbnNLZXkoJ3BhY2thZ2VzJykpIHsKICAgICAgcmV0dXJuIFB1YnNwZWNMb2NrLmVtcHR5OwogICAgfQoKICAgIGZpbmFsIHBhY2thZ2VzID0geWFtbFsncGFja2FnZXMnXSBhcyBZYW1sTWFwOwoKICAgIGZpbmFsIHBhcnNlZFBhY2thZ2VzID0gPFB1YnNwZWNMb2NrUGFja2FnZT5bXTsKICAgIGZvciAoZmluYWwgZW50cnkgaW4gcGFja2FnZXMuZW50cmllcykgewogICAgICB0cnkgewogICAgICAgIGZpbmFsIHBhY2thZ2UgPSBQdWJzcGVjTG9ja1BhY2thZ2UuZnJvbVlhbWxNYXAoCiAgICAgICAgICBuYW1lOiBlbnRyeS5rZXkgYXMgU3RyaW5nLAogICAgICAgICAgZGF0YTogZW50cnkudmFsdWUgYXMgWWFtbE1hcCwKICAgICAgICApOwogICAgICAgIHBhcnNlZFBhY2thZ2VzLmFkZChwYWNrYWdlKTsKICAgICAgICAvLyBpZ25vcmluZyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQogICAgICAgIC8vIGlnbm9yZTogYXZvaWRfY2F0Y2hlc193aXRob3V0X29uX2NsYXVzZXMKICAgICAgfSBjYXRjaCAoXykgewogICAgICAgIC8vIElnbm9yZSB0aG9zZSBwYWNrYWdlcyB0aGF0IGZvciBzb21lIHJlYXNvbiBjYW5ub3QgYmUgcGFyc2VkLgogICAgICB9CiAgICB9CgogICAgcmV0dXJuIFB1YnNwZWNMb2NrLl8oCiAgICAgIHBhY2thZ2VzOiBVbm1vZGlmaWFibGVMaXN0VmlldyhwYXJzZWRQYWNrYWdlcyksCiAgICApOwogIH0KCiAgLy8vIEFuIGVtcHR5IFtQdWJzcGVjTG9ja10uCiAgc3RhdGljIFB1YnNwZWNMb2NrIGVtcHR5ID0gUHVic3BlY0xvY2suXygKICAgIHBhY2thZ2VzOiBVbm1vZGlmaWFibGVMaXN0VmlldyhbXSksCiAgKTsKCiAgLy8vIEFsbCB0aGUgZGVwZW5kZW5jaWVzIGluIHRoZSBwdWJzcGVjLmxvY2sgZmlsZS4KICBmaW5hbCBVbm1vZGlmaWFibGVMaXN0VmlldzxQdWJzcGVjTG9ja1BhY2thZ2U+IHBhY2thZ2VzOwp9CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeX0KLy8vIEEgcmVwcmVzZW50YXRpb24gb2YgYSBkZXBlbmRlbmN5IGluIGEgcHVic3BlYy5sb2NrIGZpbGUuCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQdWJzcGVjTG9ja1BhY2thZ2UgZXh0ZW5kcyBFcXVhdGFibGUgewogIC8vLyB7QG1hY3JvIHB1YnNwZWNfbG9ja19kZXBlbmRlbmN5fQogIGNvbnN0IFB1YnNwZWNMb2NrUGFja2FnZSh7CiAgICByZXF1aXJlZCB0aGlzLm5hbWUsCiAgICByZXF1aXJlZCB0aGlzLnR5cGUsCiAgICB0aGlzLnBhdGhEZXNjcmlwdGlvbiwKICB9KTsKCiAgLy8vIFBhcnNlcyBhIFtQdWJzcGVjTG9ja1BhY2thZ2VdIGZyb20gYSBbWWFtbE1hcF0uCiAgZmFjdG9yeSBQdWJzcGVjTG9ja1BhY2thZ2UuZnJvbVlhbWxNYXAoewogICAgcmVxdWlyZWQgU3RyaW5nIG5hbWUsCiAgICByZXF1aXJlZCBZYW1sTWFwIGRhdGEsCiAgfSkgewogICAgZmluYWwgZGVwZW5kZW5jeSA9IGRhdGFbJ2RlcGVuZGVuY3knXSBhcyBTdHJpbmc7CiAgICBmaW5hbCBkZXBlbmRlbmN5VHlwZSA9IFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLnBhcnNlKGRlcGVuZGVuY3kpOwoKICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gZGF0YVsnZGVzY3JpcHRpb24nXSBhcyBZYW1sTWFwPzsKICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uICE9IG51bGwKICAgICAgICA/IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRlc2NyaXB0aW9uKQogICAgICAgIDogbnVsbDsKCiAgICByZXR1cm4gUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICBuYW1lOiBuYW1lLAogICAgICB0eXBlOiBkZXBlbmRlbmN5VHlwZSwKICAgICAgcGF0aERlc2NyaXB0aW9uOiBwYXRoRGVzY3JpcHRpb24sCiAgICApOwogIH0KCiAgLy8vIFRoZSBuYW1lIG9mIHRoZSBkZXBlbmRlbmN5LgogIGZpbmFsIFN0cmluZyBuYW1lOwoKICAvLy8ge0BtYWNybyBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeV90eXBlfQogIGZpbmFsIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlIHR5cGU7CgogIC8vLyB7QG1hY3JvIHB1YnNwZWNfcGFja2FnZV9wYXRoX2Rlc2NyaXB0aW9ufQogIGZpbmFsIFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uPyBwYXRoRGVzY3JpcHRpb247CgogIEBvdmVycmlkZQogIExpc3Q8T2JqZWN0Pz4gZ2V0IHByb3BzID0+IFtuYW1lLCB0eXBlLCBwYXRoRGVzY3JpcHRpb25dOwp9CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeV90eXBlfQovLy8gVGhlIHR5cGUgb2YgYSBbUHVic3BlY0xvY2tQYWNrYWdlXS4KLy8vIHtAZW5kdGVtcGxhdGV9CmVudW0gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUgewogIC8vLyBBbm90aGVyIHBhY2thZ2UgdGhhdCB5b3VyIHBhY2thZ2UgbmVlZHMgdG8gd29yay4KICAvLy8KICAvLy8gU2VlIGFsc286CiAgLy8vCiAgLy8vICogW0RhcnQncyBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2RlcGVuZGVuY2llcykKICBkaXJlY3RNYWluLl8oJ2RpcmVjdCBtYWluJyksCgogIC8vLyBBbm90aGVyIHBhY2thZ2UgdGhhdCB5b3VyIHBhY2thZ2UgbmVlZHMgZHVyaW5nIGRldmVsb3BtZW50LgogIC8vLwogIC8vLyBTZWUgYWxzbzoKICAvLy8KICAvLy8gKiBbRGFydCdzIGRldmVsb3BlciBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2RlcGVuZGVuY2llcyNkZXYtZGVwZW5kZW5jaWVzKQogIGRpcmVjdERldi5fKCdkaXJlY3QgZGV2JyksCgogIC8vLyBBIGRlcGVuZGVuY3kgdGhhdCB5b3VyIHBhY2thZ2UgaW5kaXJlY3RseSB1c2VzIGJlY2F1c2Ugb25lIG9mIGl0cwogIC8vLyBkZXBlbmRlbmNpZXMgcmVxdWlyZXMgaXQuCiAgLy8vCiAgLy8vIFNlZSBhbHNvOgogIC8vLwogIC8vLyAqIFtEYXJ0J3MgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2dsb3NzYXJ5I3RyYW5zaXRpdmUtKQogIHRyYW5zaXRpdmUuXygndHJhbnNpdGl2ZScpLAoKICAvLy8gIEEgZGVwZW5kZW5jeSB0aGF0IHlvdXIgcGFja2FnZSBvdmVycmlkZXMgdGhhdCBpcyBub3QgYWxyZWFkeSBhCiAgLy8vIGBkaXJlY3QgbWFpbmAgb3IgYGRpcmVjdCBkZXZgIGRlcGVuZGVuY3kuCiAgLy8vCiAgLy8vIFNlZSBhbHNvOgogIC8vLwogIC8vLyAqIFtEYXJ0J3MgZGVwZW5kZW5jeSBvdmVycmlkZSBkb2N1bWVudGF0aW9uXShodHRwczovL2RhcnQuZGV2L3Rvb2xzL3B1Yi9kZXBlbmRlbmNpZXMjZGVwZW5kZW5jeS1vdmVycmlkZXMpCiAgZGlyZWN0T3ZlcnJpZGRlbi5fKCdkaXJlY3Qgb3ZlcnJpZGRlbicpOwoKICBjb25zdCBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5fKHRoaXMudmFsdWUpOwoKICAvLy8gUGFyc2VzIGEgW1B1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlXSBmcm9tIGEgc3RyaW5nLgogIC8vLwogIC8vLyBUaHJvd3MgYW4gW0FyZ3VtZW50RXJyb3JdIGlmIHRoZSBzdHJpbmcgaXMgbm90IGEgdmFsaWQgZGVwZW5kZW5jeSB0eXBlLgogIGZhY3RvcnkgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoU3RyaW5nIHZhbHVlKSB7CiAgICBpZiAoX3ZhbHVlTWFwLmNvbnRhaW5zS2V5KHZhbHVlKSkgewogICAgICByZXR1cm4gX3ZhbHVlTWFwW3ZhbHVlXSE7CiAgICB9CgogICAgdGhyb3cgQXJndW1lbnRFcnJvci52YWx1ZSgKICAgICAgdmFsdWUsCiAgICAgICd2YWx1ZScsCiAgICAgICdJbnZhbGlkIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlIHZhbHVlLicsCiAgICApOwogIH0KCiAgc3RhdGljIE1hcDxTdHJpbmcsIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlPiBfdmFsdWVNYXAgPSB7CiAgICBmb3IgKGZpbmFsIHR5cGUgaW4gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudmFsdWVzKQogICAgICB0eXBlLnZhbHVlOiB0eXBlLAogIH07CgogIC8vLyBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBbUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGVdCiAgLy8vIGFzIGl0IGFwcGVhcnMgaW4gYSBwdWJzcGVjLmxvY2sgZmlsZS4KICBmaW5hbCBTdHJpbmcgdmFsdWU7Cn0KCi8vLyB7QHRlbXBsYXRlIHB1YnNwZWNfcGFja2FnZV9wYXRoX2Rlc2NyaXB0aW9ufQovLy8gVGhlIGRlc2NyaXB0aW9uIG9mIGEgcGF0aCBkZXBlbmRlbmN5IGluIGEgcHVic3BlYy5sb2NrIGZpbGUuCi8vLwovLy8gRm9yIGV4YW1wbGUsIGluOgovLy8gYGBgeWFtbAovLy8gbXlfcGFja2FnZToKLy8vICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgovLy8gICBkZXNjcmlwdGlvbjoKLy8vICAgICBwYXRoOiAicGFja2FnZXMvbXlfcGFja2FnZSIKLy8vICAgICByZWxhdGl2ZTogdHJ1ZQovLy8gICBzb3VyY2U6IHBhdGgKLy8vICAgdmVyc2lvbjogIjEuMC4wKzEiCi8vLyBgYGAKLy8vCi8vLyBUaGUgZGVzY3JpcHRpb24gaXM6Ci8vLyBgYGB5YW1sCi8vLyBwYXRoOiAicGFja2FnZXMvbXlfcGFja2FnZSIKLy8vIHJlbGF0aXZlOiB0cnVlCi8vLyBgYGAKLy8vCi8vLyBTZWUgYWxzbzoKLy8vCi8vLyAqIFtQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbi50cnlQYXJzZV0sIHdoaWNoIGF0dGVtcHRzIHRvIHBhcnNlcyBhCi8vLyBbWWFtbE1hcF0gaW50byBhIFtQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbl0uCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbiBleHRlbmRzIEVxdWF0YWJsZSB7CiAgY29uc3QgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oewogICAgcmVxdWlyZWQgdGhpcy5wYXRoLAogICAgcmVxdWlyZWQgdGhpcy5yZWxhdGl2ZSwKICB9KTsKCiAgLy8vIEF0dGVtcHRzIHRvIHBhcnNlIGEgW1lhbWxNYXBdIGludG8gYSBbUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb25dLgogIC8vLwogIC8vLyBSZXR1cm5zIGBudWxsYCBpZiB0aGUgW1lhbWxNYXBdIGRvZXMgbm90IGNvbnRhaW4gdGhlIHJlcXVpcmVkIGRhdGEKICAvLy8gdG8gY3JlYXRlIGEgW1B1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uXS4KICBzdGF0aWMgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24/IHRyeVBhcnNlKFlhbWxNYXAgZGF0YSkgewogICAgaWYgKCghZGF0YS5jb250YWluc0tleSgncGF0aCcpIHx8IGRhdGFbJ3BhdGgnXSBpcyEgU3RyaW5nKSB8fAogICAgICAgICghZGF0YS5jb250YWluc0tleSgncmVsYXRpdmUnKSB8fCBkYXRhWydyZWxhdGl2ZSddIGlzISBib29sKSkgewogICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBmaW5hbCBwYXRoID0gZGF0YVsncGF0aCddIGFzIFN0cmluZzsKICAgIGZpbmFsIHJlbGF0aXZlID0gZGF0YVsncmVsYXRpdmUnXSBhcyBib29sOwoKICAgIHJldHVybiBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbigKICAgICAgcGF0aDogcGF0aCwKICAgICAgcmVsYXRpdmU6IHJlbGF0aXZlLAogICAgKTsKICB9CgogIGZpbmFsIFN0cmluZyBwYXRoOwogIGZpbmFsIGJvb2wgcmVsYXRpdmU7CgogIEBvdmVycmlkZQogIExpc3Q8T2JqZWN0Pz4gZ2V0IHByb3BzID0+IFtwYXRoLCByZWxhdGl2ZV07Cn0K", - "type": "text" - }, - { - "path": "build/lib/src/uses_workspace_resolution.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CgovLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBwcm9qZWN0IGluIHRoZSBwcm92aWRlZCBbd29ya2luZ0RpcmVjdG9yeV0KLy8vIGlzIGNvbmZpZ3VyZWQgdG8gdXNlIGByZXNvbHV0aW9uOiB3b3Jrc3BhY2VgLgpib29sIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBTdHJpbmcgd29ya2luZ0RpcmVjdG9yeSwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIHB1YnNwZWNGaWxlID0gRmlsZShwYXRoLmpvaW4od29ya2luZ0RpcmVjdG9yeSwgJ3B1YnNwZWMueWFtbCcpKTsKICBpZiAoIXB1YnNwZWNGaWxlLmV4aXN0c1N5bmMoKSkgcmV0dXJuIGZhbHNlOwoKICBmaW5hbCBZYW1sTWFwIHB1YnNwZWM7CiAgdHJ5IHsKICAgIGZpbmFsIHlhbWwgPSBsb2FkWWFtbChwdWJzcGVjRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogICAgaWYgKHlhbWwgaXMhIFlhbWxNYXApIHsKICAgICAgdGhyb3cgRXhjZXB0aW9uKCdVbmFibGUgdG8gcGFyc2UgJHtwdWJzcGVjRmlsZS5wYXRofScpOwogICAgfQogICAgcHVic3BlYyA9IHlhbWw7CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGUpIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGUnKTsKICAgIGV4aXQoMSk7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICByZXR1cm4gcHVic3BlY1sncmVzb2x1dGlvbiddID09ICd3b3Jrc3BhY2UnOwp9Cg==", - "type": "text" - }, - { - "path": "build/post_gen.dart", - "data": - "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcgc2hvdyBIb29rQ29udGV4dCwgbGlnaHRDeWFuOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpID0+IHBvc3RHZW4oY29udGV4dCk7CgpGdXR1cmU8dm9pZD4gcG9zdEdlbigKICBIb29rQ29udGV4dCBjb250ZXh0LCB7CiAgaW8uRGlyZWN0b3J5PyBkaXJlY3RvcnksCiAgUHJvY2Vzc1J1bm5lciBydW5Qcm9jZXNzID0gaW8uUHJvY2Vzcy5ydW4sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBkZWZhdWx0RXhpdCwKfSkgYXN5bmMgewogIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBkaXJlY3RvcnkgPz8gaW8uRGlyZWN0b3J5LmN1cnJlbnQ7CiAgZmluYWwgYnVpbGREaXJlY3RvcnlQYXRoID0gcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJyk7CgogIGF3YWl0IGRhcnRQdWJHZXQoCiAgICBjb250ZXh0LAogICAgd29ya2luZ0RpcmVjdG9yeTogYnVpbGREaXJlY3RvcnlQYXRoLAogICAgcnVuUHJvY2VzczogcnVuUHJvY2VzcywKICAgIGV4aXQ6IGV4aXQsCiAgKTsKCiAgZmluYWwgcmVsYXRpdmVCdWlsZFBhdGggPSBwYXRoLnJlbGF0aXZlKGJ1aWxkRGlyZWN0b3J5UGF0aCk7CiAgY29udGV4dC5sb2dnZXIKICAgIC4uaW5mbygnJykKICAgIC4uc3VjY2VzcygnQ3JlYXRlZCBhIHByb2R1Y3Rpb24gYnVpbGQhJykKICAgIC4uaW5mbygnJykKICAgIC4uaW5mbygnU3RhcnQgdGhlIHByb2R1Y3Rpb24gc2VydmVyIGJ5IHJ1bm5pbmc6JykKICAgIC4uaW5mbygnJykKICAgIC4uaW5mbygKICAgICAgJycnJHtsaWdodEN5YW4ud3JhcCgnZGFydCAke3BhdGguam9pbihyZWxhdGl2ZUJ1aWxkUGF0aCwgJ2JpbicsICdzZXJ2ZXIuZGFydCcpfScpfScnJywKICAgICk7Cn0K", - "type": "text" - }, - { - "path": "build/pre_gen.dart", - "data": - "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW9fZXhwYW5kZWQ7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JwogICAgc2hvdyBIb29rQ29udGV4dCwgZGVmYXVsdEZvcmVncm91bmQsIGxpZ2h0Q3lhbjsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKdHlwZWRlZiBSb3V0ZUNvbmZpZ3VyYXRpb25CdWlsZGVyID0gUm91dGVDb25maWd1cmF0aW9uIEZ1bmN0aW9uKAogIGlvLkRpcmVjdG9yeSBkaXJlY3RvcnksCik7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpID0+IHByZUdlbihjb250ZXh0KTsKCkZ1dHVyZTx2b2lkPiBwcmVHZW4oCiAgSG9va0NvbnRleHQgY29udGV4dCwgewogIGlvLkRpcmVjdG9yeT8gZGlyZWN0b3J5LAogIFByb2Nlc3NSdW5uZXIgcnVuUHJvY2VzcyA9IGlvLlByb2Nlc3MucnVuLAogIFJvdXRlQ29uZmlndXJhdGlvbkJ1aWxkZXIgYnVpbGRDb25maWd1cmF0aW9uID0gYnVpbGRSb3V0ZUNvbmZpZ3VyYXRpb24sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBkZWZhdWx0RXhpdCwKICBGdXR1cmU8dm9pZD4gRnVuY3Rpb24oU3RyaW5nIGZyb20sIFN0cmluZyB0bykgY29weVBhdGggPSBpb19leHBhbmRlZC5jb3B5UGF0aCwKfSkgYXN5bmMgewogIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBkaXJlY3RvcnkgPz8gaW8uRGlyZWN0b3J5LmN1cnJlbnQ7CiAgZmluYWwgdXNlc1dvcmtzcGFjZXMgPSB1c2VzV29ya3NwYWNlUmVzb2x1dGlvbigKICAgIGNvbnRleHQsCiAgICB3b3JraW5nRGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBleGl0OiBleGl0LAogICk7CgogIFZvaWRDYWxsYmFjaz8gcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb247CiAgVm9pZENhbGxiYWNrPyByZXZlcnRQdWJzcGVjTG9jazsKCiAgaWYgKHVzZXNXb3Jrc3BhY2VzKSB7CiAgICBmaW5hbCB3b3Jrc3BhY2VSb290ID0gZ2V0V29ya3NwYWNlUm9vdChwcm9qZWN0RGlyZWN0b3J5LnBhdGgpOwogICAgaWYgKHdvcmtzcGFjZVJvb3QgPT0gbnVsbCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoCiAgICAgICAgJ1VuYWJsZSB0byBkZXRlcm1pbmUgd29ya3NwYWNlIHJvb3QgZm9yICR7cHJvamVjdERpcmVjdG9yeS5wYXRofScsCiAgICAgICk7CiAgICAgIHJldHVybiBleGl0KDEpOwogICAgfQoKICAgIC8vIFdlIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSBwYWNrYWdlX2NvbmZpZy5qc29uIGlzIHVwIHRvIGRhdGUuCiAgICBhd2FpdCBkYXJ0UHViR2V0KAogICAgICBjb250ZXh0LAogICAgICBtZXNzYWdlOiAnR2VuZXJhdGluZyBwYWNrYWdlIGdyYXBoJywKICAgICAgd29ya2luZ0RpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICBydW5Qcm9jZXNzOiBydW5Qcm9jZXNzLAogICAgICBleGl0OiBleGl0LAogICAgKTsKCiAgICBmaW5hbCBwYWNrYWdlQ29uZmlnID0gZ2V0UGFja2FnZUNvbmZpZyh3b3Jrc3BhY2VSb290LnBhdGgpOwogICAgaWYgKHBhY2thZ2VDb25maWcgPT0gbnVsbCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoCiAgICAgICAgJ1VuYWJsZSB0byBmaW5kIHBhY2thZ2VfY29uZmlnLmpzb24gZm9yICR7d29ya3NwYWNlUm9vdC5wYXRofScsCiAgICAgICk7CiAgICAgIHJldHVybiBleGl0KDEpOwogICAgfQoKICAgIGZpbmFsIHBhY2thZ2VHcmFwaCA9IGdldFBhY2thZ2VHcmFwaCh3b3Jrc3BhY2VSb290LnBhdGgpOwogICAgaWYgKHBhY2thZ2VHcmFwaCA9PSBudWxsKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnVW5hYmxlIHRvIGZpbmQgcGFja2FnZV9ncmFwaC5qc29uIGZvciAke3dvcmtzcGFjZVJvb3QucGF0aH0nLAogICAgICApOwogICAgICByZXR1cm4gZXhpdCgxKTsKICAgIH0KCiAgICAvLyBEaXNhYmxlIHdvcmtzcGFjZSByZXNvbHV0aW9uIHVudGlsIHdlIGNhbiBnZW5lcmF0ZSBwZXItcGFja2FnZSBsb2NrZmlsZXMuCiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZGFydC1sYW5nL3B1Yi9pc3N1ZXMvNDU5NAogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBkaXNhYmxlV29ya3NwYWNlUmVzb2x1dGlvbigKICAgICAgY29udGV4dCwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgd29ya3NwYWNlUm9vdDogd29ya3NwYWNlUm9vdC5wYXRoLAogICAgICBleGl0OiBleGl0LAogICAgKTsKICAgIC8vIENvcHkgdGhlIHB1YnNwZWMubG9jayBmcm9tIHRoZSB3b3Jrc3BhY2Ugcm9vdCB0byBlbnN1cmUgdGhlIHNhbWUgdmVyc2lvbnMKICAgIC8vIG9mIGRlcGVuZGVuY2llcyBhcmUgdXNlZCBpbiB0aGUgcHJvZHVjdGlvbiBidWlsZC4KICAgIHJldmVydFB1YnNwZWNMb2NrID0gY29weVdvcmtzcGFjZVB1YnNwZWNMb2NrKAogICAgICBjb250ZXh0LAogICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgIHdvcmtzcGFjZVJvb3Q6IHdvcmtzcGFjZVJvb3QucGF0aCwKICAgICAgZXhpdDogZXhpdCwKICAgICk7CiAgfQoKICAvLyBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBwdWJzcGVjLmxvY2sgZmlsZSBpcyB1cCB0byBkYXRlLgogIGF3YWl0IGRhcnRQdWJHZXQoCiAgICBjb250ZXh0LAogICAgbWVzc2FnZTogJ1VwZGF0aW5nIGxvY2tmaWxlJywKICAgIHdvcmtpbmdEaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgIHJ1blByb2Nlc3M6IHJ1blByb2Nlc3MsCiAgICBleGl0OiBleGl0LAogICk7CgogIGZpbmFsIGJ1aWxkRGlyZWN0b3J5ID0gaW8uRGlyZWN0b3J5KAogICAgcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJyksCiAgKTsKCiAgYXdhaXQgY3JlYXRlQnVuZGxlKAogICAgY29udGV4dDogY29udGV4dCwKICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICBidWlsZERpcmVjdG9yeTogYnVpbGREaXJlY3RvcnksCiAgICBleGl0OiBleGl0LAogICk7CgogIHJlc3RvcmVXb3Jrc3BhY2VSZXNvbHV0aW9uPy5jYWxsKCk7CgogIGZpbmFsIFJvdXRlQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uOwogIHRyeSB7CiAgICBjb25maWd1cmF0aW9uID0gYnVpbGRDb25maWd1cmF0aW9uKHByb2plY3REaXJlY3RvcnkpOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlcnJvcikgewogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZXJyb3InKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgcmVwb3J0Um91dGVDb25mbGljdHMoCiAgICBjb25maWd1cmF0aW9uLAogICAgb25Sb3V0ZUNvbmZsaWN0OiAoCiAgICAgIG9yaWdpbmFsRmlsZVBhdGgsCiAgICAgIGNvbmZsaWN0aW5nRmlsZVBhdGgsCiAgICAgIGNvbmZsaWN0aW5nRW5kcG9pbnQsCiAgICApIHsKICAgICAgY29udGV4dC5sb2dnZXIuZXJyKAogICAgICAgICcnJ1JvdXRlIGNvbmZsaWN0IGRldGVjdGVkLiAke2xpZ2h0Q3lhbi53cmFwKG9yaWdpbmFsRmlsZVBhdGgpfSBhbmQgJHtsaWdodEN5YW4ud3JhcChjb25mbGljdGluZ0ZpbGVQYXRoKX0gYm90aCByZXNvbHZlIHRvICR7bGlnaHRDeWFuLndyYXAoY29uZmxpY3RpbmdFbmRwb2ludCl9LicnJywKICAgICAgKTsKICAgIH0sCiAgICBvblZpb2xhdGlvbkVuZDogKCkgPT4gZXhpdCgxKSwKICApOwoKICByZXBvcnRSb2d1ZVJvdXRlcygKICAgIGNvbmZpZ3VyYXRpb24sCiAgICBvblJvZ3VlUm91dGU6IChmaWxlUGF0aCwgaWRlYWxQYXRoKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnJydSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcChmaWxlUGF0aCl9IHRvICR7bGlnaHRDeWFuLndyYXAoaWRlYWxQYXRoKX0uJycnLAogICAgICApOwogICAgfSwKICAgIG9uVmlvbGF0aW9uRW5kOiAoKSA9PiBleGl0KDEpLAogICk7CgogIGZpbmFsIGludGVybmFsUGF0aERlcGVuZGVuY2llcyA9IGF3YWl0IGdldEludGVybmFsUGF0aERlcGVuZGVuY2llcygKICAgIHByb2plY3REaXJlY3RvcnksCiAgKTsKCiAgZmluYWwgZXh0ZXJuYWxEZXBlbmRlbmNpZXMgPSBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgIGJ1aWxkRGlyZWN0b3J5OiBidWlsZERpcmVjdG9yeSwKICAgIGNvcHlQYXRoOiBjb3B5UGF0aCwKICApOwoKICByZXZlcnRQdWJzcGVjTG9jaz8uY2FsbCgpOwoKICBmaW5hbCBjdXN0b21Eb2NrZXJGaWxlID0gaW8uRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdEb2NrZXJmaWxlJyksCiAgKTsKICBmaW5hbCBhZGREb2NrZXJmaWxlID0gIWN1c3RvbURvY2tlckZpbGUuZXhpc3RzU3luYygpOwoKICBjb250ZXh0LnZhcnMgPSB7CiAgICAnZGlyZWN0b3JpZXMnOiBjb25maWd1cmF0aW9uLmRpcmVjdG9yaWVzCiAgICAgICAgLm1hcCgoYykgPT4gYy50b0pzb24oKSkKICAgICAgICAudG9MaXN0KCkKICAgICAgICAucmV2ZXJzZWQKICAgICAgICAudG9MaXN0KCksCiAgICAncm91dGVzJzogY29uZmlndXJhdGlvbi5yb3V0ZXMubWFwKChyKSA9PiByLnRvSnNvbigpKS50b0xpc3QoKSwKICAgICdtaWRkbGV3YXJlJzogY29uZmlndXJhdGlvbi5taWRkbGV3YXJlLm1hcCgobSkgPT4gbS50b0pzb24oKSkudG9MaXN0KCksCiAgICAnZ2xvYmFsTWlkZGxld2FyZSc6IGNvbmZpZ3VyYXRpb24uZ2xvYmFsTWlkZGxld2FyZSAhPSBudWxsCiAgICAgICAgPyBjb25maWd1cmF0aW9uLmdsb2JhbE1pZGRsZXdhcmUhLnRvSnNvbigpCiAgICAgICAgOiBmYWxzZSwKICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogY29uZmlndXJhdGlvbi5zZXJ2ZVN0YXRpY0ZpbGVzLAogICAgJ2ludm9rZUN1c3RvbUVudHJ5cG9pbnQnOiBjb25maWd1cmF0aW9uLmludm9rZUN1c3RvbUVudHJ5cG9pbnQsCiAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGNvbmZpZ3VyYXRpb24uaW52b2tlQ3VzdG9tSW5pdCwKICAgICdwYXRoRGVwZW5kZW5jaWVzJzogaW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLAogICAgJ2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzJzogZXh0ZXJuYWxEZXBlbmRlbmNpZXMuaXNOb3RFbXB0eSwKICAgICdkYXJ0VmVyc2lvbic6IGNvbnRleHQudmFyc1snZGFydFZlcnNpb24nXSwKICAgICdhZGREb2NrZXJmaWxlJzogYWRkRG9ja2VyZmlsZSwKICB9Owp9Cg==", - "type": "text" - }, - { - "path": "build/pubspec.yaml", - "data": - "bmFtZTogZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzCnB1Ymxpc2hfdG86IG5vbmUKCmVudmlyb25tZW50OgogIHNkazogIj49My4wLjAgPDQuMC4wIgoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZ19nZW46IF4yLjAuMAogIGVxdWF0YWJsZTogXjIuMC41CiAgaW86IF4xLjAuMwogIGpzb25fYW5ub3RhdGlvbjogXjQuOS4wCiAgbWFzb246IF4wLjEuMAogIHBhY2thZ2VfY29uZmlnOiBeMi4yLjAKICBwYXRoOiBeMS44LjEKICB5YW1sOiBeMy4xLjIKICB5YW1sX2VkaXQ6IF4yLjIuMgoKZGV2X2RlcGVuZGVuY2llczoKICBidWlsZF9ydW5uZXI6IF4yLjAuMAogIGpzb25fc2VyaWFsaXphYmxlOiBeNi43LjAKICBtb2NrdGFpbDogXjEuMC4wCiAgdGVzdDogXjEuMjUuMAo=", - "type": "text" - }, - { - "path": "build/test/fixtures/package_configs.dart", - "data": - "Y29uc3QgcGFja2FnZUNvbmZpZ1dpdGhEaXJlY3RBbmRUcmFuc2l0aXZlRGVwZW5kZW5jaWVzID0gJycnCnsKICAiY29uZmlnVmVyc2lvbiI6IDIsCiAgInBhY2thZ2VzIjogWwogICAgewogICAgICAibmFtZSI6ICJfZmVfYW5hbHl6ZXJfc2hhcmVkIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L19mZV9hbmFseXplcl9zaGFyZWQtODUuMC4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiYW5hbHl6ZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvYW5hbHl6ZXItNy43LjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjUiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhcmdzIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2FyZ3MtMi43LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhc3luYyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9hc3luYy0yLjEzLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJib29sZWFuX3NlbGVjdG9yIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2Jvb2xlYW5fc2VsZWN0b3ItMi4xLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjEiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjaGFyYWN0ZXJzIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2NoYXJhY3RlcnMtMS40LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbGlfY29uZmlnIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2NsaV9jb25maWctMC4yLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbG9jayIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9jbG9jay0xLjEuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImNvbGxlY3Rpb24iLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvY29sbGVjdGlvbi0xLjE5LjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb252ZXJ0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2NvbnZlcnQtMy4xLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb3ZlcmFnZSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9jb3ZlcmFnZS0xLjE1LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjcnlwdG8iLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvY3J5cHRvLTMuMC42IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiY3VwZXJ0aW5vX2ljb25zIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2N1cGVydGlub19pY29ucy0xLjAuOCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImRhcnRfZnJvZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9kYXJ0X2Zyb2ctMS4yLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmYWtlX2FzeW5jIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2Zha2VfYXN5bmMtMS4zLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmaWxlIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2ZpbGUtNy4wLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmbHV0dGVyIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC9EZXZlbG9wbWVudC9naXRodWIuY29tL2ZsdXR0ZXIvZmx1dHRlci9wYWNrYWdlcy9mbHV0dGVyIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy44IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmx1dHRlcl9saW50cyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9mbHV0dGVyX2xpbnRzLTUuMC4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmx1dHRlcl90ZXN0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC9EZXZlbG9wbWVudC9naXRodWIuY29tL2ZsdXR0ZXIvZmx1dHRlci9wYWNrYWdlcy9mbHV0dGVyX3Rlc3QiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjgiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmcm9udGVuZF9zZXJ2ZXJfY2xpZW50IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2Zyb250ZW5kX3NlcnZlcl9jbGllbnQtNC4wLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJnbG9iIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2dsb2ItMi4xLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJob3RyZWxvYWRlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9ob3RyZWxvYWRlci00LjMuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImh0dHBfbWV0aG9kcyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9odHRwX21ldGhvZHMtMS4xLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIyLjEyIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9tdWx0aV9zZXJ2ZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvaHR0cF9tdWx0aV9zZXJ2ZXItMy4yLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJodHRwX3BhcnNlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9odHRwX3BhcnNlci00LjEuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImlvIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2lvLTEuMC41IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAianMiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvanMtMC43LjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjciCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsZWFrX3RyYWNrZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbGVha190cmFja2VyLTExLjAuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImxlYWtfdHJhY2tlcl9mbHV0dGVyX3Rlc3RpbmciLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbGVha190cmFja2VyX2ZsdXR0ZXJfdGVzdGluZy0zLjAuMTAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsZWFrX3RyYWNrZXJfdGVzdGluZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9sZWFrX3RyYWNrZXJfdGVzdGluZy0zLjAuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImxpbnRzIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L2xpbnRzLTUuMS4xIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy42IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibG9nZ2luZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9sb2dnaW5nLTEuMy4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibWF0Y2hlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9tYXRjaGVyLTAuMTIuMTciLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtYXRlcmlhbF9jb2xvcl91dGlsaXRpZXMiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbWF0ZXJpYWxfY29sb3JfdXRpbGl0aWVzLTAuMTEuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjIuMTciCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtZXRhIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L21ldGEtMS4xNi4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMi4xMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1pbWUiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbWltZS0yLjAuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1vY2t0YWlsIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L21vY2t0YWlsLTEuMC40IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMi4xMiIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm5vZGVfcHJlYW1ibGUiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvbm9kZV9wcmVhbWJsZS0yLjAuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjIuMTIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9wYWNrYWdlX2NvbmZpZy0yLjIuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInBhdGgiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvcGF0aC0xLjkuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInBvb2wiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvcG9vbC0xLjUuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjIuMTIiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwdWJfc2VtdmVyIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3B1Yl9zZW12ZXItMi4yLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzaGVsZiIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZi0xLjQuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX2hvdHJlbG9hZCIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZl9ob3RyZWxvYWQtMS41LjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIyLjE3IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic2hlbGZfcGFja2FnZXNfaGFuZGxlciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZl9wYWNrYWdlc19oYW5kbGVyLTMuMC4yIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMi4xNyIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX3N0YXRpYyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zaGVsZl9zdGF0aWMtMS4xLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzaGVsZl93ZWJfc29ja2V0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3NoZWxmX3dlYl9zb2NrZXQtMy4wLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjUiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJza3lfZW5naW5lIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC9EZXZlbG9wbWVudC9naXRodWIuY29tL2ZsdXR0ZXIvZmx1dHRlci9iaW4vY2FjaGUvcGtnL3NreV9lbmdpbmUiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjgiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzb3VyY2VfbWFwX3N0YWNrX3RyYWNlIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3NvdXJjZV9tYXBfc3RhY2tfdHJhY2UtMi4xLjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzb3VyY2VfbWFwcyIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zb3VyY2VfbWFwcy0wLjEwLjEzIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4zIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic291cmNlX3NwYW4iLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvc291cmNlX3NwYW4tMS4xMC4xIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4xIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic3RhY2tfdHJhY2UiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvc3RhY2tfdHJhY2UtMS4xMi4xIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy40IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic3RyZWFtX2NoYW5uZWwiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvc3RyZWFtX2NoYW5uZWwtMi4xLjQiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjMiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJlYW1fdHJhbnNmb3JtIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3N0cmVhbV90cmFuc2Zvcm0tMi4xLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjEiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJpbmdfc2Nhbm5lciIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi9zdHJpbmdfc2Nhbm5lci0xLjQuMSIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlcm1fZ2x5cGgiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdGVybV9nbHlwaC0xLjIuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlc3QiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdGVzdC0xLjI2LjIiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjUiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ0ZXN0X2FwaSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi90ZXN0X2FwaS0wLjcuNiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlc3RfY29yZSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi90ZXN0X2NvcmUtMC42LjExIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidHlwZWRfZGF0YSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi90eXBlZF9kYXRhLTEuNC4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy41IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidmVjdG9yX21hdGgiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdmVjdG9yX21hdGgtMi4yLjAiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjEiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ2ZXJ5X2dvb2RfYW5hbHlzaXMiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvdmVyeV9nb29kX2FuYWx5c2lzLTUuMS4wIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4wIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidm1fc2VydmljZSIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi92bV9zZXJ2aWNlLTE1LjAuMCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMyIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIndhdGNoZXIiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvd2F0Y2hlci0xLjEuMiIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuMSIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIndlYiIsCiAgICAgICJyb290VXJpIjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvLnB1Yi1jYWNoZS9ob3N0ZWQvcHViLmRldi93ZWItMS4xLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ3ZWJfc29ja2V0IiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3dlYl9zb2NrZXQtMS4wLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ3ZWJfc29ja2V0X2NoYW5uZWwiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvd2ViX3NvY2tldF9jaGFubmVsLTMuMC4zIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy4zIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2Via2l0X2luc3BlY3Rpb25fcHJvdG9jb2wiLAogICAgICAicm9vdFVyaSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUvaG9zdGVkL3B1Yi5kZXYvd2Via2l0X2luc3BlY3Rpb25fcHJvdG9jb2wtMS4yLjEiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ5YW1sIiwKICAgICAgInJvb3RVcmkiOiAiZmlsZTovLy9Vc2Vycy9mZWxpeC8ucHViLWNhY2hlL2hvc3RlZC9wdWIuZGV2L3lhbWwtMy4xLjMiLAogICAgICAicGFja2FnZVVyaSI6ICJsaWIvIiwKICAgICAgImxhbmd1YWdlVmVyc2lvbiI6ICIzLjQiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJfIiwKICAgICAgInJvb3RVcmkiOiAiLi4vIiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy42IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiY2xpZW50IiwKICAgICAgInJvb3RVcmkiOiAiLi4vcGFja2FnZXMvY2xpZW50IiwKICAgICAgInBhY2thZ2VVcmkiOiAibGliLyIsCiAgICAgICJsYW5ndWFnZVZlcnNpb24iOiAiMy44IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicHJvdG9jb2wiLAogICAgICAicm9vdFVyaSI6ICIuLi9wYWNrYWdlcy9wcm90b2NvbCIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuOCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1vZGVscyIsCiAgICAgICJyb290VXJpIjogIi4uL3BhY2thZ2VzL21vZGVscyIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuOCIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNlcnZlciIsCiAgICAgICJyb290VXJpIjogIi4uL3BhY2thZ2VzL3NlcnZlciIsCiAgICAgICJwYWNrYWdlVXJpIjogImxpYi8iLAogICAgICAibGFuZ3VhZ2VWZXJzaW9uIjogIjMuNiIKICAgIH0KICBdLAogICJnZW5lcmF0b3IiOiAicHViIiwKICAiZ2VuZXJhdG9yVmVyc2lvbiI6ICIzLjkuMiIsCiAgImZsdXR0ZXJSb290IjogImZpbGU6Ly8vVXNlcnMvZmVsaXgvRGV2ZWxvcG1lbnQvZ2l0aHViLmNvbS9mbHV0dGVyL2ZsdXR0ZXIiLAogICJmbHV0dGVyVmVyc2lvbiI6ICIzLjM1LjMiLAogICJwdWJDYWNoZSI6ICJmaWxlOi8vL1VzZXJzL2ZlbGl4Ly5wdWItY2FjaGUiCn0KJycnOwo=", - "type": "text" - }, - { - "path": "build/test/fixtures/package_graphs.dart", - "data": - "Y29uc3QgcGFja2FnZUdyYXBoV2l0aERpcmVjdEFuZFRyYW5zaXRpdmVEZXBzID0gJycnCnsKICAicm9vdHMiOiBbCiAgICAiXyIsCiAgICAiY2xpZW50IiwKICAgICJtb2RlbHMiLAogICAgInByb3RvY29sIiwKICAgICJzZXJ2ZXIiCiAgXSwKICAicGFja2FnZXMiOiBbCiAgICB7CiAgICAgICJuYW1lIjogIl8iLAogICAgICAidmVyc2lvbiI6ICIwLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbGllbnQiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCsxIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY3VwZXJ0aW5vX2ljb25zIiwKICAgICAgICAiZmx1dHRlciIKICAgICAgXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiZmx1dHRlcl9saW50cyIsCiAgICAgICAgImZsdXR0ZXJfdGVzdCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicHJvdG9jb2wiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIm1vZGVscyIKICAgICAgXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibGludHMiLAogICAgICAgICJ0ZXN0IgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtb2RlbHMiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXSwKICAgICAgImRldkRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibGludHMiLAogICAgICAgICJ0ZXN0IgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzZXJ2ZXIiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMCsxIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiZGFydF9mcm9nIiwKICAgICAgICAicHJvdG9jb2wiCiAgICAgIF0sCiAgICAgICJkZXZEZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIm1vY2t0YWlsIiwKICAgICAgICAidGVzdCIsCiAgICAgICAgInZlcnlfZ29vZF9hbmFseXNpcyIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidmVyeV9nb29kX2FuYWx5c2lzIiwKICAgICAgInZlcnNpb24iOiAiNS4xLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInRlc3QiLAogICAgICAidmVyc2lvbiI6ICIxLjI2LjIiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhbmFseXplciIsCiAgICAgICAgImFzeW5jIiwKICAgICAgICAiYm9vbGVhbl9zZWxlY3RvciIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJjb3ZlcmFnZSIsCiAgICAgICAgImh0dHBfbXVsdGlfc2VydmVyIiwKICAgICAgICAiaW8iLAogICAgICAgICJqcyIsCiAgICAgICAgIm1hdGNoZXIiLAogICAgICAgICJub2RlX3ByZWFtYmxlIiwKICAgICAgICAicGFja2FnZV9jb25maWciLAogICAgICAgICJwYXRoIiwKICAgICAgICAicG9vbCIsCiAgICAgICAgInNoZWxmIiwKICAgICAgICAic2hlbGZfcGFja2FnZXNfaGFuZGxlciIsCiAgICAgICAgInNoZWxmX3N0YXRpYyIsCiAgICAgICAgInNoZWxmX3dlYl9zb2NrZXQiLAogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0YWNrX3RyYWNlIiwKICAgICAgICAic3RyZWFtX2NoYW5uZWwiLAogICAgICAgICJ0ZXN0X2FwaSIsCiAgICAgICAgInRlc3RfY29yZSIsCiAgICAgICAgInR5cGVkX2RhdGEiLAogICAgICAgICJ3ZWJfc29ja2V0X2NoYW5uZWwiLAogICAgICAgICJ3ZWJraXRfaW5zcGVjdGlvbl9wcm90b2NvbCIsCiAgICAgICAgInlhbWwiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1vY2t0YWlsIiwKICAgICAgInZlcnNpb24iOiAiMS4wLjQiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAibWF0Y2hlciIsCiAgICAgICAgInRlc3RfYXBpIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJkYXJ0X2Zyb2ciLAogICAgICAidmVyc2lvbiI6ICIxLjIuMyIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImh0dHBfbWV0aG9kcyIsCiAgICAgICAgImh0dHBfcGFyc2VyIiwKICAgICAgICAibWV0YSIsCiAgICAgICAgIm1pbWUiLAogICAgICAgICJzaGVsZiIsCiAgICAgICAgInNoZWxmX2hvdHJlbG9hZCIsCiAgICAgICAgInNoZWxmX3N0YXRpYyIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibGludHMiLAogICAgICAidmVyc2lvbiI6ICI1LjEuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmx1dHRlcl9saW50cyIsCiAgICAgICJ2ZXJzaW9uIjogIjUuMC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibGludHMiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImZsdXR0ZXJfdGVzdCIsCiAgICAgICJ2ZXJzaW9uIjogIjAuMC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY2xvY2siLAogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAiZmFrZV9hc3luYyIsCiAgICAgICAgImZsdXR0ZXIiLAogICAgICAgICJsZWFrX3RyYWNrZXJfZmx1dHRlcl90ZXN0aW5nIiwKICAgICAgICAibWF0Y2hlciIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYXRoIiwKICAgICAgICAic3RhY2tfdHJhY2UiLAogICAgICAgICJzdHJlYW1fY2hhbm5lbCIsCiAgICAgICAgInRlc3RfYXBpIiwKICAgICAgICAidmVjdG9yX21hdGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImN1cGVydGlub19pY29ucyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMC44IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmbHV0dGVyIiwKICAgICAgInZlcnNpb24iOiAiMC4wLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjaGFyYWN0ZXJzIiwKICAgICAgICAiY29sbGVjdGlvbiIsCiAgICAgICAgIm1hdGVyaWFsX2NvbG9yX3V0aWxpdGllcyIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJza3lfZW5naW5lIiwKICAgICAgICAidmVjdG9yX21hdGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInlhbWwiLAogICAgICAidmVyc2lvbiI6ICIzLjEuMyIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJ3ZWJraXRfaW5zcGVjdGlvbl9wcm90b2NvbCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMi4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibG9nZ2luZyIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2ViX3NvY2tldF9jaGFubmVsIiwKICAgICAgInZlcnNpb24iOiAiMy4wLjMiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhc3luYyIsCiAgICAgICAgImNyeXB0byIsCiAgICAgICAgInN0cmVhbV9jaGFubmVsIiwKICAgICAgICAid2ViIiwKICAgICAgICAid2ViX3NvY2tldCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidHlwZWRfZGF0YSIsCiAgICAgICJ2ZXJzaW9uIjogIjEuNC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY29sbGVjdGlvbiIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidGVzdF9jb3JlIiwKICAgICAgInZlcnNpb24iOiAiMC42LjExIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYW5hbHl6ZXIiLAogICAgICAgICJhcmdzIiwKICAgICAgICAiYXN5bmMiLAogICAgICAgICJib29sZWFuX3NlbGVjdG9yIiwKICAgICAgICAiY29sbGVjdGlvbiIsCiAgICAgICAgImNvdmVyYWdlIiwKICAgICAgICAiZnJvbnRlbmRfc2VydmVyX2NsaWVudCIsCiAgICAgICAgImdsb2IiLAogICAgICAgICJpbyIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJwb29sIiwKICAgICAgICAic291cmNlX21hcF9zdGFja190cmFjZSIsCiAgICAgICAgInNvdXJjZV9tYXBzIiwKICAgICAgICAic291cmNlX3NwYW4iLAogICAgICAgICJzdGFja190cmFjZSIsCiAgICAgICAgInN0cmVhbV9jaGFubmVsIiwKICAgICAgICAidGVzdF9hcGkiLAogICAgICAgICJ2bV9zZXJ2aWNlIiwKICAgICAgICAieWFtbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidGVzdF9hcGkiLAogICAgICAidmVyc2lvbiI6ICIwLjcuNiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFzeW5jIiwKICAgICAgICAiYm9vbGVhbl9zZWxlY3RvciIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJtZXRhIiwKICAgICAgICAic291cmNlX3NwYW4iLAogICAgICAgICJzdGFja190cmFjZSIsCiAgICAgICAgInN0cmVhbV9jaGFubmVsIiwKICAgICAgICAic3RyaW5nX3NjYW5uZXIiLAogICAgICAgICJ0ZXJtX2dseXBoIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJlYW1fY2hhbm5lbCIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMS40IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInN0YWNrX3RyYWNlIiwKICAgICAgInZlcnNpb24iOiAiMS4xMi4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAicGF0aCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic291cmNlX3NwYW4iLAogICAgICAidmVyc2lvbiI6ICIxLjEwLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInRlcm1fZ2x5cGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX3dlYl9zb2NrZXQiLAogICAgICAidmVyc2lvbiI6ICIzLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgInNoZWxmIiwKICAgICAgICAic3RyZWFtX2NoYW5uZWwiLAogICAgICAgICJ3ZWJfc29ja2V0X2NoYW5uZWwiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNoZWxmX3N0YXRpYyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMS4zIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY29udmVydCIsCiAgICAgICAgImh0dHBfcGFyc2VyIiwKICAgICAgICAibWltZSIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJzaGVsZiIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic2hlbGZfcGFja2FnZXNfaGFuZGxlciIsCiAgICAgICJ2ZXJzaW9uIjogIjMuMC4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAicGF0aCIsCiAgICAgICAgInNoZWxmIiwKICAgICAgICAic2hlbGZfc3RhdGljIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzaGVsZiIsCiAgICAgICJ2ZXJzaW9uIjogIjEuNC4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiLAogICAgICAgICJjb2xsZWN0aW9uIiwKICAgICAgICAiaHR0cF9wYXJzZXIiLAogICAgICAgICJwYXRoIiwKICAgICAgICAic3RhY2tfdHJhY2UiLAogICAgICAgICJzdHJlYW1fY2hhbm5lbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicG9vbCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuNS4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiLAogICAgICAgICJzdGFja190cmFjZSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAicGF0aCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuOS4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMi4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAicGF0aCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibm9kZV9wcmVhbWJsZSIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMC4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJtYXRjaGVyIiwKICAgICAgInZlcnNpb24iOiAiMC4xMi4xNyIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFzeW5jIiwKICAgICAgICAibWV0YSIsCiAgICAgICAgInN0YWNrX3RyYWNlIiwKICAgICAgICAidGVybV9nbHlwaCIsCiAgICAgICAgInRlc3RfYXBpIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJqcyIsCiAgICAgICJ2ZXJzaW9uIjogIjAuNy4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJpbyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMC41IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibWV0YSIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJzdHJpbmdfc2Nhbm5lciIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9tdWx0aV9zZXJ2ZXIiLAogICAgICAidmVyc2lvbiI6ICIzLjIuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFzeW5jIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb3ZlcmFnZSIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMTUuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImFyZ3MiLAogICAgICAgICJjbGlfY29uZmlnIiwKICAgICAgICAiZ2xvYiIsCiAgICAgICAgImxvZ2dpbmciLAogICAgICAgICJtZXRhIiwKICAgICAgICAicGFja2FnZV9jb25maWciLAogICAgICAgICJwYXRoIiwKICAgICAgICAic291cmNlX21hcHMiLAogICAgICAgICJzdGFja190cmFjZSIsCiAgICAgICAgInZtX3NlcnZpY2UiLAogICAgICAgICJ5YW1sIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb2xsZWN0aW9uIiwKICAgICAgInZlcnNpb24iOiAiMS4xOS4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJib29sZWFuX3NlbGVjdG9yIiwKICAgICAgInZlcnNpb24iOiAiMi4xLjIiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhc3luYyIsCiAgICAgICJ2ZXJzaW9uIjogIjIuMTMuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJtZXRhIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJhbmFseXplciIsCiAgICAgICJ2ZXJzaW9uIjogIjcuNy4xIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiX2ZlX2FuYWx5emVyX3NoYXJlZCIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJjb252ZXJ0IiwKICAgICAgICAiY3J5cHRvIiwKICAgICAgICAiZ2xvYiIsCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYWNrYWdlX2NvbmZpZyIsCiAgICAgICAgInBhdGgiLAogICAgICAgICJwdWJfc2VtdmVyIiwKICAgICAgICAic291cmNlX3NwYW4iLAogICAgICAgICJ3YXRjaGVyIiwKICAgICAgICAieWFtbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic2hlbGZfaG90cmVsb2FkIiwKICAgICAgInZlcnNpb24iOiAiMS41LjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJob3RyZWxvYWRlciIsCiAgICAgICAgImxvZ2dpbmciCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1pbWUiLAogICAgICAidmVyc2lvbiI6ICIyLjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibWV0YSIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMTYuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9wYXJzZXIiLAogICAgICAidmVyc2lvbiI6ICI0LjEuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJzb3VyY2Vfc3BhbiIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIiwKICAgICAgICAidHlwZWRfZGF0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaHR0cF9tZXRob2RzIiwKICAgICAgInZlcnNpb24iOiAiMS4xLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImxlYWtfdHJhY2tlcl9mbHV0dGVyX3Rlc3RpbmciLAogICAgICAidmVyc2lvbiI6ICIzLjAuMTAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJmbHV0dGVyIiwKICAgICAgICAibGVha190cmFja2VyIiwKICAgICAgICAibGVha190cmFja2VyX3Rlc3RpbmciLAogICAgICAgICJtYXRjaGVyIiwKICAgICAgICAibWV0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidmVjdG9yX21hdGgiLAogICAgICAidmVyc2lvbiI6ICIyLjIuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiY2xvY2siLAogICAgICAidmVyc2lvbiI6ICIxLjEuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiZmFrZV9hc3luYyIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMy4zIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiY2xvY2siLAogICAgICAgICJjb2xsZWN0aW9uIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJza3lfZW5naW5lIiwKICAgICAgInZlcnNpb24iOiAiMC4wLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm1hdGVyaWFsX2NvbG9yX3V0aWxpdGllcyIsCiAgICAgICJ2ZXJzaW9uIjogIjAuMTEuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImNoYXJhY3RlcnMiLAogICAgICAidmVyc2lvbiI6ICIxLjQuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic3RyaW5nX3NjYW5uZXIiLAogICAgICAidmVyc2lvbiI6ICIxLjQuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgInNvdXJjZV9zcGFuIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsb2dnaW5nIiwKICAgICAgInZlcnNpb24iOiAiMS4zLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIndlYl9zb2NrZXQiLAogICAgICAidmVyc2lvbiI6ICIxLjAuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIndlYiIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2ViIiwKICAgICAgInZlcnNpb24iOiAiMS4xLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImNyeXB0byIsCiAgICAgICJ2ZXJzaW9uIjogIjMuMC42IiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAidHlwZWRfZGF0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidm1fc2VydmljZSIsCiAgICAgICJ2ZXJzaW9uIjogIjE1LjAuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAic291cmNlX21hcHMiLAogICAgICAidmVyc2lvbiI6ICIwLjEwLjEzIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAic291cmNlX3NwYW4iCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogInNvdXJjZV9tYXBfc3RhY2tfdHJhY2UiLAogICAgICAidmVyc2lvbiI6ICIyLjEuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgInBhdGgiLAogICAgICAgICJzb3VyY2VfbWFwcyIsCiAgICAgICAgInN0YWNrX3RyYWNlIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJnbG9iIiwKICAgICAgInZlcnNpb24iOiAiMi4xLjMiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhc3luYyIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJmaWxlIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInN0cmluZ19zY2FubmVyIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJmcm9udGVuZF9zZXJ2ZXJfY2xpZW50IiwKICAgICAgInZlcnNpb24iOiAiNC4wLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhc3luYyIsCiAgICAgICAgInBhdGgiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImFyZ3MiLAogICAgICAidmVyc2lvbiI6ICIyLjcuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAidGVybV9nbHlwaCIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMi4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFtdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjb252ZXJ0IiwKICAgICAgInZlcnNpb24iOiAiMy4xLjIiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJ0eXBlZF9kYXRhIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJjbGlfY29uZmlnIiwKICAgICAgInZlcnNpb24iOiAiMC4yLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJhcmdzIiwKICAgICAgICAieWFtbCIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAid2F0Y2hlciIsCiAgICAgICJ2ZXJzaW9uIjogIjEuMS4yIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAiYXN5bmMiLAogICAgICAgICJwYXRoIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJwdWJfc2VtdmVyIiwKICAgICAgInZlcnNpb24iOiAiMi4yLjAiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjb2xsZWN0aW9uIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJfZmVfYW5hbHl6ZXJfc2hhcmVkIiwKICAgICAgInZlcnNpb24iOiAiODUuMC4wIiwKICAgICAgImRlcGVuZGVuY2llcyI6IFsKICAgICAgICAibWV0YSIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiaG90cmVsb2FkZXIiLAogICAgICAidmVyc2lvbiI6ICI0LjMuMCIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJsb2dnaW5nIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInN0cmVhbV90cmFuc2Zvcm0iLAogICAgICAgICJ2bV9zZXJ2aWNlIiwKICAgICAgICAid2F0Y2hlciIKICAgICAgXQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAibGVha190cmFja2VyX3Rlc3RpbmciLAogICAgICAidmVyc2lvbiI6ICIzLjAuMiIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgImxlYWtfdHJhY2tlciIsCiAgICAgICAgIm1hdGNoZXIiLAogICAgICAgICJtZXRhIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJsZWFrX3RyYWNrZXIiLAogICAgICAidmVyc2lvbiI6ICIxMS4wLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogWwogICAgICAgICJjbG9jayIsCiAgICAgICAgImNvbGxlY3Rpb24iLAogICAgICAgICJtZXRhIiwKICAgICAgICAicGF0aCIsCiAgICAgICAgInZtX3NlcnZpY2UiCiAgICAgIF0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogImZpbGUiLAogICAgICAidmVyc2lvbiI6ICI3LjAuMSIsCiAgICAgICJkZXBlbmRlbmNpZXMiOiBbCiAgICAgICAgIm1ldGEiLAogICAgICAgICJwYXRoIgogICAgICBdCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJzdHJlYW1fdHJhbnNmb3JtIiwKICAgICAgInZlcnNpb24iOiAiMi4xLjEiLAogICAgICAiZGVwZW5kZW5jaWVzIjogW10KICAgIH0KICBdLAogICJjb25maWdWZXJzaW9uIjogMQp9CicnJzsK", - "type": "text" - }, - { - "path": "build/test/post_gen_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcKICAgIHNob3cgRXhpdENvZGUsIEhvb2tDb250ZXh0LCBMb2dnZXIsIFByb2dyZXNzLCBsaWdodEN5YW47CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wb3N0X2dlbi5kYXJ0JyBhcyBwb3N0X2dlbjsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdwb3N0R2VuJywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIGNvbnN0IHByb2Nlc3NJZCA9IDQyOwogICAgZmluYWwgcHJvY2Vzc1Jlc3VsdCA9IFByb2Nlc3NSZXN1bHQoCiAgICAgIHByb2Nlc3NJZCwKICAgICAgRXhpdENvZGUuc3VjY2Vzcy5jb2RlLAogICAgICAnJywKICAgICAgJycsCiAgICApOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW4gY29tcGxldGVzJywgKCkgewogICAgICBleHBlY3QoCiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgKICAgICAgICAgICgpID0+IHBvc3RfZ2VuLnJ1bihfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKSksCiAgICAgICAgKSwKICAgICAgICBjb21wbGV0ZXMsCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW5zIGRhcnQgcHViIGdldCBhbmQgb3V0cHV0cyBuZXh0IHN0ZXBzJywgKCkgYXN5bmMgewogICAgICB2YXIgcHJvY2Vzc1J1bm5lckNhbGxDb3VudCA9IDA7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CgogICAgICBhd2FpdCBwb3N0X2dlbi5wb3N0R2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgcnVuUHJvY2VzczogKAogICAgICAgICAgZXhlY3V0YWJsZSwKICAgICAgICAgIGFyZ3MsIHsKICAgICAgICAgIFN0cmluZz8gd29ya2luZ0RpcmVjdG9yeSwKICAgICAgICAgIGJvb2w/IHJ1bkluU2hlbGwsCiAgICAgICAgfSkgYXN5bmMgewogICAgICAgICAgcHJvY2Vzc1J1bm5lckNhbGxDb3VudCsrOwogICAgICAgICAgZXhwZWN0KGV4ZWN1dGFibGUsIGVxdWFscygnZGFydCcpKTsKICAgICAgICAgIGV4cGVjdChhcmdzLCBlcXVhbHMoWydwdWInLCAnZ2V0J10pKTsKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgd29ya2luZ0RpcmVjdG9yeSwKICAgICAgICAgICAgZXF1YWxzKHBhdGguam9pbihEaXJlY3RvcnkuY3VycmVudC5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgICApOwogICAgICAgICAgZXhwZWN0KHJ1bkluU2hlbGwsIGlzVHJ1ZSk7CiAgICAgICAgICByZXR1cm4gcHJvY2Vzc1Jlc3VsdDsKICAgICAgICB9LAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChwcm9jZXNzUnVubmVyQ2FsbENvdW50LCBlcXVhbHMoMSkpOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5zdWNjZXNzKCdDcmVhdGVkIGEgcHJvZHVjdGlvbiBidWlsZCEnKSkuY2FsbGVkKDEpOwogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmluZm8oJ1N0YXJ0IHRoZSBwcm9kdWN0aW9uIHNlcnZlciBieSBydW5uaW5nOicpLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCcke2xpZ2h0Q3lhbi53cmFwKCdkYXJ0IGJ1aWxkL2Jpbi9zZXJ2ZXIuZGFydCcpfScpLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - }, - { - "path": "build/test/pre_gen_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcKICAgIHNob3cgSG9va0NvbnRleHQsIExvZ2dlciwgUHJvZ3Jlc3MsIGRlZmF1bHRGb3JlZ3JvdW5kLCBsaWdodEN5YW47CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wcmVfZ2VuLmRhcnQnIGFzIHByZV9nZW47CmltcG9ydCAnZml4dHVyZXMvcGFja2FnZV9jb25maWdzLmRhcnQnOwppbXBvcnQgJ2ZpeHR1cmVzL3BhY2thZ2VfZ3JhcGhzLmRhcnQnOwppbXBvcnQgJ3B1YnNwZWNfbG9ja3MuZGFydCc7CgpjbGFzcyBfRmFrZUhvb2tDb250ZXh0IGV4dGVuZHMgRmFrZSBpbXBsZW1lbnRzIEhvb2tDb250ZXh0IHsKICBfRmFrZUhvb2tDb250ZXh0KHtMb2dnZXI/IGxvZ2dlcn0pIDogX2xvZ2dlciA9IGxvZ2dlciA/PyBfTW9ja0xvZ2dlcigpOwoKICBmaW5hbCBMb2dnZXIgX2xvZ2dlcjsKCiAgdmFyIF92YXJzID0gPFN0cmluZywgZHluYW1pYz57fTsKCiAgQG92ZXJyaWRlCiAgTWFwPFN0cmluZywgZHluYW1pYz4gZ2V0IHZhcnMgPT4gX3ZhcnM7CgogIEBvdmVycmlkZQogIHNldCB2YXJzKE1hcDxTdHJpbmcsIGR5bmFtaWM+IHZhbHVlKSA9PiBfdmFycyA9IHZhbHVlOwoKICBAb3ZlcnJpZGUKICBMb2dnZXIgZ2V0IGxvZ2dlciA9PiBfbG9nZ2VyOwp9CgpjbGFzcyBfTW9ja0xvZ2dlciBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBMb2dnZXIge30KCmNsYXNzIF9Nb2NrUHJvZ3Jlc3MgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUHJvZ3Jlc3Mge30KCnZvaWQgbWFpbigpIHsKICBncm91cCgncHJlR2VuJywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIEZ1dHVyZTxQcm9jZXNzUmVzdWx0PiBzdWNjZXNzUnVuUHJvY2VzcygKICAgICAgZXhlY3V0YWJsZSwKICAgICAgYXJncywgewogICAgICBTdHJpbmc/IHdvcmtpbmdEaXJlY3RvcnksCiAgICAgIGJvb2w/IHJ1bkluU2hlbGwsCiAgICB9KSA9PgogICAgICAgIEZ1dHVyZS52YWx1ZShQcm9jZXNzUmVzdWx0KDAsIDAsICcnLCAnJykpOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpCiAgICAgICAgLi52YXJzWydkYXJ0VmVyc2lvbiddID0gJ3N0YWJsZSc7CgogICAgICB3aGVuKCgpID0+IGxvZ2dlci5wcm9ncmVzcyhhbnkoKSkpLnRoZW5SZXR1cm4oX01vY2tQcm9ncmVzcygpKTsKICAgIH0pOwoKICAgIHRlc3QoJ3J1biBjb21wbGV0ZXMnLCAoKSB7CiAgICAgIGV4cGVjdCgKICAgICAgICBFeGl0T3ZlcnJpZGVzLnJ1blpvbmVkKAogICAgICAgICAgKCkgPT4gcHJlX2dlbi5ydW4oX0Zha2VIb29rQ29udGV4dChsb2dnZXI6IGxvZ2dlcikpLAogICAgICAgICAgZXhpdDogKF8pIHt9LAogICAgICAgICksCiAgICAgICAgY29tcGxldGVzLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBpZiBidWlsZFJvdXRlQ29uZmlndXJhdGlvbiB0aHJvd3MnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGZpbmFsIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbignb29wcycpOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHRocm93IGV4Y2VwdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGV4Y2VwdGlvbi50b1N0cmluZygpKSkuY2FsbGVkKDEpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBmb3Igcm91dGUgY29uZmxpY3RzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHsKICAgICAgICAgICcvJzogWwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2luZGV4JywKICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICAnL2hlbGxvJzogWwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2hlbGxvJywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2hlbGxvX2luZGV4JywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8vaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwoKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnJydSb3V0ZSBjb25mbGljdCBkZXRlY3RlZC4gJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvLmRhcnQnKX0gYW5kICR7bGlnaHRDeWFuLndyYXAoJ3JvdXRlcy9oZWxsby9pbmRleC5kYXJ0Jyl9IGJvdGggcmVzb2x2ZSB0byAke2xpZ2h0Q3lhbi53cmFwKCcvaGVsbG8nKX0uJycnLAogICAgICAgICksCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgIH0pOwoKICAgIHRlc3QoJ2V4aXQoMSkgZm9yIHJvZ3VlIHJvdXRlcycsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogWwogICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgIHJvdXRlOiAnL2hlbGxvJywKICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgKSwKICAgICAgICBdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICAgaW52b2tlQ3VzdG9tRW50cnlwb2ludDogdHJ1ZSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwoKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnJydSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvLmRhcnQnKX0gdG8gJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvL2luZGV4LmRhcnQnKX0uJycnLAogICAgICAgICksCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgIH0pOwoKICAgIHRlc3QoJ2V4aXRzKDEpIHdoZW4gdW5hYmxlIHRvIGRldGVybWluZSB3b3Jrc3BhY2Ugcm9vdCcsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIGZpbmFsIHNlcnZlciA9IERpcmVjdG9yeSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdzZXJ2ZXInKSwKICAgICAgKS4uY3JlYXRlU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBzZXJ2ZXIKZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKcmVzb2x1dGlvbjogd29ya3NwYWNlCgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjYuMAoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCiAgcHJvdG9jb2w6IF4xLjAuMAonJycpOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICBkaXJlY3Rvcnk6IHNlcnZlciwKICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICBjb3B5UGF0aDogKF8sIF9fKSBhc3luYyB7fSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnVW5hYmxlIHRvIGRldGVybWluZSB3b3Jrc3BhY2Ugcm9vdCBmb3IgJHtzZXJ2ZXIucGF0aH0nLAogICAgICAgICksCiAgICAgICkuY2FsbGVkKDEpOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0cygxKSB3aGVuIHVuYWJsZSB0byBmaW5kIHBhY2thZ2VfY29uZmlnLmpzb24nLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CgogICAgICBmaW5hbCBkaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBfCnB1Ymxpc2hfdG86IG5vbmUKCmVudmlyb25tZW50OgogIHNkazogXjMuNi4wCgp3b3Jrc3BhY2U6CiAgLSBwYWNrYWdlcy9jbGllbnQKICAtIHBhY2thZ2VzL3Byb3RvY29sCiAgLSBwYWNrYWdlcy9tb2RlbHMKICAtIHBhY2thZ2VzL3NlcnZlcgonJycpOwogICAgICBmaW5hbCBzZXJ2ZXIgPSBEaXJlY3RvcnkoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAnc2VydmVyJyksCiAgICAgICkuLmNyZWF0ZVN5bmMoKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4oc2VydmVyLnBhdGgsICdwdWJzcGVjLnlhbWwnKSwKICAgICAgKS53cml0ZUFzU3RyaW5nU3luYygnJycKbmFtZTogc2VydmVyCmRlc2NyaXB0aW9uOiBBIG5ldyBEYXJ0IEZyb2cgYXBwbGljYXRpb24KdmVyc2lvbjogMS4wLjArMQpwdWJsaXNoX3RvOiBub25lCnJlc29sdXRpb246IHdvcmtzcGFjZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy42LjAKCmRlcGVuZGVuY2llczoKICBkYXJ0X2Zyb2c6IF4xLjEuMAogIHByb3RvY29sOiBeMS4wLjAKJycnKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBzZXJ2ZXIsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICAgY29weVBhdGg6IChfLCBfXykgYXN5bmMge30sCiAgICAgICk7CgogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIHZlcmlmeSgKICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgJ1VuYWJsZSB0byBmaW5kIHBhY2thZ2VfY29uZmlnLmpzb24gZm9yICR7ZGlyZWN0b3J5LnBhdGh9JywKICAgICAgICApLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgZGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpLmlnbm9yZSgpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMoMSkgd2hlbiB1bmFibGUgdG8gZmluZCBwYWNrYWdlX2dyYXBoLmpzb24nLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CgogICAgICBmaW5hbCBkaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJy5kYXJ0X3Rvb2wnLCAncGFja2FnZV9jb25maWcuanNvbicpLAogICAgICApCiAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAuLndyaXRlQXNTdHJpbmdTeW5jKHBhY2thZ2VDb25maWdXaXRoRGlyZWN0QW5kVHJhbnNpdGl2ZURlcGVuZGVuY2llcyk7CiAgICAgIEZpbGUoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJyksCiAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoJycnCm5hbWU6IF8KcHVibGlzaF90bzogbm9uZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy42LjAKCndvcmtzcGFjZToKICAtIHBhY2thZ2VzL2NsaWVudAogIC0gcGFja2FnZXMvcHJvdG9jb2wKICAtIHBhY2thZ2VzL21vZGVscwogIC0gcGFja2FnZXMvc2VydmVyCicnJyk7CiAgICAgIGZpbmFsIHNlcnZlciA9IERpcmVjdG9yeSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdzZXJ2ZXInKSwKICAgICAgKS4uY3JlYXRlU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBzZXJ2ZXIKZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKcmVzb2x1dGlvbjogd29ya3NwYWNlCgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjYuMAoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCiAgcHJvdG9jb2w6IF4xLjAuMAonJycpOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICBkaXJlY3Rvcnk6IHNlcnZlciwKICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICBjb3B5UGF0aDogKF8sIF9fKSBhc3luYyB7fSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnVW5hYmxlIHRvIGZpbmQgcGFja2FnZV9ncmFwaC5qc29uIGZvciAke2RpcmVjdG9yeS5wYXRofScsCiAgICAgICAgKSwKICAgICAgKS5jYWxsZWQoMSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3dvcmtzIHdpdGggd29ya3NwYWNlcycsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAnLmRhcnRfdG9vbCcsICdwYWNrYWdlX2NvbmZpZy5qc29uJyksCiAgICAgICkKICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMocGFja2FnZUNvbmZpZ1dpdGhEaXJlY3RBbmRUcmFuc2l0aXZlRGVwZW5kZW5jaWVzKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICcuZGFydF90b29sJywgJ3BhY2thZ2VfZ3JhcGguanNvbicpLAogICAgICApCiAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAuLndyaXRlQXNTdHJpbmdTeW5jKHBhY2thZ2VHcmFwaFdpdGhEaXJlY3RBbmRUcmFuc2l0aXZlRGVwcyk7CiAgICAgIEZpbGUoCiAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJyksCiAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoJycnCm5hbWU6IF8KcHVibGlzaF90bzogbm9uZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy42LjAKCndvcmtzcGFjZToKICAtIHBhY2thZ2VzL2NsaWVudAogIC0gcGFja2FnZXMvcHJvdG9jb2wKICAtIHBhY2thZ2VzL21vZGVscwogIC0gcGFja2FnZXMvc2VydmVyCicnJyk7CiAgICAgIGZpbmFsIHNlcnZlciA9IERpcmVjdG9yeSgKICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdzZXJ2ZXInKSwKICAgICAgKS4uY3JlYXRlU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwpuYW1lOiBzZXJ2ZXIKZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKcmVzb2x1dGlvbjogd29ya3NwYWNlCgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjYuMAoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCiAgcHJvdG9jb2w6IF4xLjAuMAonJycpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihzZXJ2ZXIucGF0aCwgJ3B1YnNwZWMubG9jaycpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKCcnJwojIEdlbmVyYXRlZCBieSBwdWIKIyBTZWUgaHR0cHM6Ly9kYXJ0LmRldi90b29scy9wdWIvZ2xvc3NhcnkjbG9ja2ZpbGUKcGFja2FnZXM6CiAgX2ZlX2FuYWx5emVyX3NoYXJlZDoKICAgIGRlcGVuZGVuY3k6IHRyYW5zaXRpdmUKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiBfZmVfYW5hbHl6ZXJfc2hhcmVkCiAgICAgIHNoYTI1NjogZGEwZDkyMDljYTc2YmRlNTc5ZjJkYTMzMGFlYjlkZjYyYjYzMTljODM0ZmE3YmFhZTA1MjAyMWIwNDYyNDAxZgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjg1LjAuMCIKJycnKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBzZXJ2ZXIsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICAgY29weVBhdGg6IChfLCBfXykgYXN5bmMge30sCiAgICAgICk7CgogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgZGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpLmlnbm9yZSgpOwogICAgfSk7CgogICAgdGVzdCgnd29ya3Mgd2l0aCBleHRlcm5hbCBkZXBlbmRlbmNpZXMnLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CgogICAgICBmaW5hbCBkaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpLAogICAgICApLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICBjb3B5UGF0aDogKGZyb20sIHRvKSBhc3luYyB7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3JldGFpbnMgaW52b2tlQ3VzdG9tRW50cnlwb2ludCAodHJ1ZSknLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICAgaW52b2tlQ3VzdG9tRW50cnlwb2ludDogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIGV4cGVjdCgKICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgZXF1YWxzKHsKICAgICAgICAgICdkaXJlY3Rvcmllcyc6IDxSb3V0ZURpcmVjdG9yeT5bXSwKICAgICAgICAgICdyb3V0ZXMnOiA8Um91dGVGaWxlPltdLAogICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWlkZGxld2FyZUZpbGU+W10sCiAgICAgICAgICAnZ2xvYmFsTWlkZGxld2FyZSc6IGZhbHNlLAogICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiBmYWxzZSwKICAgICAgICAgICdpbnZva2VDdXN0b21FbnRyeXBvaW50JzogdHJ1ZSwKICAgICAgICAgICdpbnZva2VDdXN0b21Jbml0JzogZmFsc2UsCiAgICAgICAgICAncGF0aERlcGVuZGVuY2llcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBmYWxzZSwKICAgICAgICAgICdkYXJ0VmVyc2lvbic6ICdzdGFibGUnLAogICAgICAgICAgJ2FkZERvY2tlcmZpbGUnOiB0cnVlLAogICAgICAgIH0pLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgiZG9uJ3QgY3JlYXRlIHRoZSBkb2NrZXJmaWxlIGlmIG9uZSBhbHJlYWR5IGV4aXN0cyBvbiB0aGUgZm9sZGVyLiIsCiAgICAgICAgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICApOwoKICAgICAgZmluYWwgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLnlhbWwnKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgJycnCm5hbWU6IGV4YW1wbGUKdmVyc2lvbjogMC4xLjAKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMi4xNy4wCmRlcGVuZGVuY2llczoKICBtYXNvbjogYW55CiAgdGVzdDogYW55CicnJywKICAgICAgKTsKCiAgICAgIEZpbGUocGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgIG5vUGF0aERlcGVuZGVuY2llcywKICAgICAgKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdEb2NrZXJmaWxlJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgICcnLAogICAgICApOwoKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBkaXJlY3RvcnksCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CgogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscyh7CiAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICdtaWRkbGV3YXJlJzogPE1pZGRsZXdhcmVGaWxlPltdLAogICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiBmYWxzZSwKICAgICAgICAgICdoYXNFeHRlcm5hbERlcGVuZGVuY2llcyc6IGZhbHNlLAogICAgICAgICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiA8U3RyaW5nPltdLAogICAgICAgICAgJ2RhcnRWZXJzaW9uJzogJ3N0YWJsZScsCiAgICAgICAgICAnYWRkRG9ja2VyZmlsZSc6IGZhbHNlLAogICAgICAgIH0pLAogICAgICApOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKCiAgICB0ZXN0KCdyZXRhaW5zIGludm9rZUN1c3RvbUluaXQgKHRydWUpJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICAgIGludm9rZUN1c3RvbUluaXQ6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscyh7CiAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICdtaWRkbGV3YXJlJzogPE1pZGRsZXdhcmVGaWxlPltdLAogICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiB0cnVlLAogICAgICAgICAgJ2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzJzogZmFsc2UsCiAgICAgICAgICAncGF0aERlcGVuZGVuY2llcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAnZGFydFZlcnNpb24nOiAnc3RhYmxlJywKICAgICAgICAgICdhZGREb2NrZXJmaWxlJzogdHJ1ZSwKICAgICAgICB9KSwKICAgICAgKTsKICAgIH0pOwoKICAgIHRlc3QoCiAgICAgICd1cGRhdGVzIGNvbnRleHQudmFycyB3aGVuIGJ1aWxkUm91dGVDb25maWd1cmF0aW9uIHN1Y2NlZWRzJywKICAgICAgKCkgYXN5bmMgewogICAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgICBnbG9iYWxNaWRkbGV3YXJlOiBNaWRkbGV3YXJlRmlsZSgKICAgICAgICAgICAgbmFtZTogJ21pZGRsZXdhcmUnLAogICAgICAgICAgICBwYXRoOiAnbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICksCiAgICAgICAgICBtaWRkbGV3YXJlOiBbCiAgICAgICAgICAgIE1pZGRsZXdhcmVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8vbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICBkaXJlY3RvcmllczogWwogICAgICAgICAgICBSb3V0ZURpcmVjdG9yeSgKICAgICAgICAgICAgICBuYW1lOiAnXycsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICAgICAgICBmaWxlczogWwogICAgICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLAogICAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICByb3V0ZXM6IFsKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgcGF0aDogJ2luZGV4LmRhcnQnLAogICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICBdLAogICAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgICAgZW5kcG9pbnRzOiB7CiAgICAgICAgICAgICcvJzogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICAgICAnL2hlbGxvJzogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgIF0sCiAgICAgICAgICB9LAogICAgICAgICAgc2VydmVTdGF0aWNGaWxlczogdHJ1ZSwKICAgICAgICApOwogICAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgICBlcXVhbHMoewogICAgICAgICAgICAnZGlyZWN0b3JpZXMnOiBbCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ25hbWUnOiAnXycsCiAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAnbWlkZGxld2FyZSc6IDxNYXA8U3RyaW5nLCBkeW5hbWljPj5bXSwKICAgICAgICAgICAgICAgICdmaWxlcyc6IFsKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICduYW1lJzogJ2luZGV4JywKICAgICAgICAgICAgICAgICAgICAncGF0aCc6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAgICAgJ2ZpbGVfcGFyYW1zJzogY29uc3QgPFN0cmluZz5bXSwKICAgICAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICduYW1lJzogJ2hlbGxvJywKICAgICAgICAgICAgICAgICAgICAncGF0aCc6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICAgICAncm91dGUnOiAnL2hlbGxvJywKICAgICAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgICAgICd3aWxkY2FyZCc6IGZhbHNlLAogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgJ2RpcmVjdG9yeV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ3JvdXRlcyc6IFsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdpbmRleCcsCiAgICAgICAgICAgICAgICAncGF0aCc6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICAgICdyb3V0ZSc6ICcvJywKICAgICAgICAgICAgICAgICdmaWxlX3BhcmFtcyc6IGNvbnN0IDxTdHJpbmc+W10sCiAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICduYW1lJzogJ2hlbGxvJywKICAgICAgICAgICAgICAgICdwYXRoJzogJ2hlbGxvLmRhcnQnLAogICAgICAgICAgICAgICAgJ3JvdXRlJzogJy9oZWxsbycsCiAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgJ3dpbGRjYXJkJzogZmFsc2UsCiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAnbWlkZGxld2FyZSc6IFsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgICAgICdwYXRoJzogJ2hlbGxvL21pZGRsZXdhcmUuZGFydCcsCiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiB7CiAgICAgICAgICAgICAgJ25hbWUnOiAnbWlkZGxld2FyZScsCiAgICAgICAgICAgICAgJ3BhdGgnOiAnbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICAgfSwKICAgICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiB0cnVlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGZhbHNlLAogICAgICAgICAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBmYWxzZSwKICAgICAgICAgICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiA8U3RyaW5nPltdLAogICAgICAgICAgICAnZGFydFZlcnNpb24nOiAnc3RhYmxlJywKICAgICAgICAgICAgJ2FkZERvY2tlcmZpbGUnOiB0cnVlLAogICAgICAgICAgfSksCiAgICAgICAgKTsKICAgICAgfSwKICAgICk7CiAgfSk7Cn0K", - "type": "text" - }, - { - "path": "build/test/pubspec_locks.dart", - "data": - "Ly8vIEFuIGFydGlmaWNpYWxseSBjcmFmdGVkIGBwdWJzcGVjLmxvY2tgIGZpbGUgd2l0aDoKLy8vCi8vLyAqIEEgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5LgovLy8gKiBBIGRpcmVjdCBtYWluIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIG5vdCBhIGNoaWxkIG9mIHRoZSBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLyAqIEEgZGlyZWN0IG1haW4gcGF0aCBkZXBlbmRlbmN5IHRoYXQgaXMgbm90IGEgY2hpbGQgb2YgdGhlIHByb2plY3QKLy8vIGRpcmVjdG9yeSBhbmQgaGFzIGEgZGlmZmVyZW50IHBhY2thZ2UgbmFtZSB0aGFuIHRoZSBkaXJlY3RvcnkgbmFtZS4KLy8vICogQSBkaXJlY3QgbWFpbiBkZXBlbmRlbmN5IHRoYXQgaXMgaG9zdGVkLgovLy8gKiBBIGRpcmVjdCBkZXYgbWFpbiBkZXBlbmRlbmN5IHRoYXQgaXMgaG9zdGVkLgovLy8gKiBBIGRpcmVjdCBvdmVycmlkZGVuIGRlcGVuZGVuY3kgZnJvbSBnaXQuCmNvbnN0IGZvb1BhdGggPSAnJycKcGFja2FnZXM6CiAgYXJnczoKICAgIGRlcGVuZGVuY3k6IHRyYW5zaXRpdmUKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiBhcmdzCiAgICAgIHNoYTI1NjogZWVmNmM0NmI2MjJlMDQ5NGEzNmM1YTEyZDEwZDc3ZmI0ZTg1NTUwMWE5MWMxYjllZjkzMzkzMjZlNThmMDU5NgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjIuNC4yIgogIGZvbzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAiLi4vLi4vZm9vIgogICAgICByZWxhdGl2ZTogdHJ1ZQogICAgc291cmNlOiBwYXRoCiAgICB2ZXJzaW9uOiAiMC4wLjAiCiAgc2Vjb25kX2ZvbzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAiLi4vLi4vZm9vMiIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjAuMC4wIgogIGRpcmVjdF9tYWluOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGRpcmVjdF9tYWluCiAgICAgIHNoYTI1NjogZmRjOWVhOTA1ZTdjNjkwZmUzOWQyZjk5NDZiN2FlYWQ4NmZkOTc2ZjhlZGY5N2QyNTIxYTY1ZDI2MGJiZjUwOQogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjAuMS4wLWRldi41MCIKICB0ZXN0OgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBkZXYiCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogdGVzdAogICAgICBzaGEyNTY6ICI5YjBkZDhlMzZhZjRhNWIxNTY5MDI5OTQ5ZDUwYTUyY2IyYTJhMmZkYWEyMGNlYmI5NmU2NjAzYjlhZTI0MWY5IgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjEuMjQuNiIKICBkaXJlY3Rfb3ZlcnJpZGRlbjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3Qgb3ZlcnJpZGRlbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGFja2FnZXMvbWFzb24iCiAgICAgIHJlZjogIjcyYzMwNmE4ZDhhYmYzMDZiNWQwMjRmOTVhYWMyOWJhNWZkOTY1NzciCiAgICAgIHJlc29sdmVkLXJlZjogIjcyYzMwNmE4ZDhhYmYzMDZiNWQwMjRmOTVhYWMyOWJhNWZkOTY1NzciCiAgICAgIHVybDogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGVzdGlhZ28vbWFzb24iCiAgICBzb3VyY2U6IGdpdAogICAgdmVyc2lvbjogIjAuMS4wLWRldi41MiIKc2RrczoKICBkYXJ0OiAiPj0zLjAuMCA8NC4wLjAiCicnJzsKCi8vLyBBbiBhcnRpZmljaWFsbHkgY3JhZnRlZCBgcHVic3BlYy5sb2NrYCBmaWxlIHdpdGg6Ci8vLwovLy8gKiBBIHRyYW5zaXRpdmUgZGVwZW5kZW5jeS4KLy8vICogQSBkaXJlY3QgbWFpbiBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3QgYSBjaGlsZCBvZiB0aGUgcHJvamVjdAovLy8gZGlyZWN0b3J5LgovLy8gKiBBIGRpcmVjdCBtYWluIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIGEgY2hpbGQgb2YgdGhlIHByb2plY3QgZGlyZWN0b3J5LgovLy8gKiBBIGRpcmVjdCBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCi8vLyAqIEEgZGlyZWN0IGRldiBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCmNvbnN0IGZvb1BhdGhXaXRoSW50ZXJuYWxEZXBlbmRlbmN5ID0gJycnCnBhY2thZ2VzOgogIGFyZ3M6CiAgICBkZXBlbmRlbmN5OiB0cmFuc2l0aXZlCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogYXJncwogICAgICBzaGEyNTY6IGVlZjZjNDZiNjIyZTA0OTRhMzZjNWExMmQxMGQ3N2ZiNGU4NTU1MDFhOTFjMWI5ZWY5MzM5MzI2ZTU4ZjA1OTYKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIyLjQuMiIKICBmb286CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgcGF0aDogIi4uLy4uL2ZvbyIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjAuMC4wIgogIGJhcjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGFja2FnZXMvYmFyIgogICAgICByZWxhdGl2ZTogdHJ1ZQogICAgc291cmNlOiBwYXRoCiAgICB2ZXJzaW9uOiAiMC4wLjAiCiAgbWFzb246CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogbWFzb24KICAgICAgc2hhMjU2OiBmZGM5ZWE5MDVlN2M2OTBmZTM5ZDJmOTk0NmI3YWVhZDg2ZmQ5NzZmOGVkZjk3ZDI1MjFhNjVkMjYwYmJmNTA5CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMC4xLjAtZGV2LjUwIgogIHRlc3Q6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB0ZXN0CiAgICAgIHNoYTI1NjogIjliMGRkOGUzNmFmNGE1YjE1NjkwMjk5NDlkNTBhNTJjYjJhMmEyZmRhYTIwY2ViYjk2ZTY2MDNiOWFlMjQxZjkiCiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMS4yNC42IgpzZGtzOgogIGRhcnQ6ICI+PTMuMC4wIDw0LjAuMCIKJycnOwoKLy8vIEFuIGFydGlmaWNpYWxseSBjcmFmdGVkIGBwdWJzcGVjLmxvY2tgIGZpbGUgd2l0aDoKLy8vCi8vLyAqIEEgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5LgovLy8gKiBBIGRpcmVjdCBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCi8vLyAqIEEgZGlyZWN0IGRldiBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCmNvbnN0IG5vUGF0aERlcGVuZGVuY2llcyA9ICcnJwpwYWNrYWdlczoKICBhcmdzOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFyZ3MKICAgICAgc2hhMjU2OiBlZWY2YzQ2YjYyMmUwNDk0YTM2YzVhMTJkMTBkNzdmYjRlODU1NTAxYTkxYzFiOWVmOTMzOTMyNmU1OGYwNTk2CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMi40LjIiCiAgbWFzb246CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogbWFzb24KICAgICAgc2hhMjU2OiBmZGM5ZWE5MDVlN2M2OTBmZTM5ZDJmOTk0NmI3YWVhZDg2ZmQ5NzZmOGVkZjk3ZDI1MjFhNjVkMjYwYmJmNTA5CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMC4xLjAtZGV2LjUwIgogIHRlc3Q6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB0ZXN0CiAgICAgIHNoYTI1NjogIjliMGRkOGUzNmFmNGE1YjE1NjkwMjk5NDlkNTBhNTJjYjJhMmEyZmRhYTIwY2ViYjk2ZTY2MDNiOWFlMjQxZjkiCiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMS4yNC42IgpzZGtzOgogIGRhcnQ6ICI+PTMuMC4wIDw0LjAuMCIKJycnOwo=", - "type": "text" - }, - { - "path": "build/test/src/copy_workspace_pubspec_lock_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tIb29rQ29udGV4dCBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7fQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaycsICgpIHsKICAgIGxhdGUgTGlzdDxpbnQ+IGV4aXRDYWxsczsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKICAgIGxhdGUgRGlyZWN0b3J5IHByb2plY3REaXJlY3Rvcnk7CiAgICBsYXRlIERpcmVjdG9yeSByb290RGlyZWN0b3J5OwoKICAgIHNldFVwKCgpIHsKICAgICAgZXhpdENhbGxzID0gW107CiAgICAgIGNvbnRleHQgPSBfTW9ja0hvb2tDb250ZXh0KCk7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIHJvb3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygncm9vdCcpOwogICAgICBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgICAgIHBhdGguam9pbihyb290RGlyZWN0b3J5LnBhdGgsICdwYWNrYWdlcycsICdwcm9qZWN0JyksCiAgICAgICkuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKCiAgICAgIHdoZW4oKCkgPT4gY29udGV4dC5sb2dnZXIpLnRoZW5SZXR1cm4obG9nZ2VyKTsKCiAgICAgIGFkZFRlYXJEb3duKCgpIHsKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LmRlbGV0ZSgpLmlnbm9yZSgpOwogICAgICAgIHJvb3REaXJlY3RvcnkuZGVsZXRlKCkuaWdub3JlKCk7CiAgICAgIH0pOwogICAgfSk7CgogICAgdGVzdCgnZG9lcyBub3RoaW5nIHdoZW4gcHVic3BlYy5sb2NrIGRvZXMgbm90IGV4aXN0IGluIHdvcmtzcGFjZSByb290JywgKCkgewogICAgICBjb3B5V29ya3NwYWNlUHVic3BlY0xvY2soCiAgICAgICAgY29udGV4dCwKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgd29ya3NwYWNlUm9vdDogcm9vdERpcmVjdG9yeS5wYXRoLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIGV4cGVjdChwcm9qZWN0RGlyZWN0b3J5Lmxpc3RTeW5jKCksIGlzRW1wdHkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMgd2l0aCBlcnJvciB3aGVuIHVuYWJsZSB0byBjb3B5IGxvY2tmaWxlJywgKCkgewogICAgICBjb25zdCBwdWJzcGVjTG9ja0NvbnRlbnRzID0gJycnCiMgR2VuZXJhdGVkIGJ5IHB1YgojIFNlZSBodHRwczovL2RhcnQuZGV2L3Rvb2xzL3B1Yi9nbG9zc2FyeSNsb2NrZmlsZQpwYWNrYWdlczoKJycnOwogICAgICBmaW5hbCBmaWxlID0gRmlsZShwYXRoLmpvaW4ocm9vdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpCiAgICAgICAgLi53cml0ZUFzU3RyaW5nU3luYyhwdWJzcGVjTG9ja0NvbnRlbnRzKTsKICAgICAgUHJvY2Vzcy5ydW5TeW5jKCdjaG1vZCcsIFsnMDAwJywgZmlsZS5wYXRoXSk7CiAgICAgIGNvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaygKICAgICAgICBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICB3b3Jrc3BhY2VSb290OiByb290RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmVycihhbnkodGhhdDogY29udGFpbnMoJ1Blcm1pc3Npb24gZGVuaWVkJykpKSwKICAgICAgKTsKICAgIH0pOwoKICAgIHRlc3QoJ2NvcGllcyBwdWJzcGVjLmxvY2sgdG8gcHJvamVjdCBkaXJlY3Rvcnkgd2hlbiBmb3VuZCcsICgpIHsKICAgICAgY29uc3QgcHVic3BlY0xvY2tDb250ZW50cyA9ICcnJwojIEdlbmVyYXRlZCBieSBwdWIKIyBTZWUgaHR0cHM6Ly9kYXJ0LmRldi90b29scy9wdWIvZ2xvc3NhcnkjbG9ja2ZpbGUKcGFja2FnZXM6CicnJzsKICAgICAgRmlsZShwYXRoLmpvaW4ocm9vdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpCiAgICAgICAgICAud3JpdGVBc1N0cmluZ1N5bmMocHVic3BlY0xvY2tDb250ZW50cyk7CiAgICAgIGNvcHlXb3Jrc3BhY2VQdWJzcGVjTG9jaygKICAgICAgICBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICB3b3Jrc3BhY2VSb290OiByb290RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeUNvbnRlbnRzID0gcHJvamVjdERpcmVjdG9yeS5saXN0U3luYygpOwogICAgICBleHBlY3QocHJvamVjdERpcmVjdG9yeUNvbnRlbnRzLCBoYXNMZW5ndGgoMSkpOwogICAgICBleHBlY3QoCiAgICAgICAgcHJvamVjdERpcmVjdG9yeUNvbnRlbnRzLmZpcnN0LAogICAgICAgIGlzQTxGaWxlPigpLmhhdmluZygKICAgICAgICAgIChmKSA9PiBwYXRoLmJhc2VuYW1lKGYucGF0aCksCiAgICAgICAgICAnbmFtZScsCiAgICAgICAgICAncHVic3BlYy5sb2NrJywKICAgICAgICApLAogICAgICApOwogICAgICBleHBlY3QoCiAgICAgICAgKHByb2plY3REaXJlY3RvcnlDb250ZW50cy5maXJzdCBhcyBGaWxlKS5yZWFkQXNTdHJpbmdTeW5jKCksCiAgICAgICAgZXF1YWxzKHB1YnNwZWNMb2NrQ29udGVudHMpLAogICAgICApOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - }, - { - "path": "build/test/src/create_bundle_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcgaGlkZSBjcmVhdGVCdW5kbGU7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9CgpjbGFzcyBfTW9ja1Byb2dyZXNzIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIFByb2dyZXNzIHt9CgpjbGFzcyBfRmFrZUhvb2tDb250ZXh0IGV4dGVuZHMgRmFrZSBpbXBsZW1lbnRzIEhvb2tDb250ZXh0IHsKICBfRmFrZUhvb2tDb250ZXh0KHtMb2dnZXI/IGxvZ2dlcn0pIDogX2xvZ2dlciA9IGxvZ2dlciA/PyBfTW9ja0xvZ2dlcigpOwoKICBmaW5hbCBMb2dnZXIgX2xvZ2dlcjsKCiAgdmFyIF92YXJzID0gPFN0cmluZywgZHluYW1pYz57fTsKCiAgQG92ZXJyaWRlCiAgTWFwPFN0cmluZywgZHluYW1pYz4gZ2V0IHZhcnMgPT4gX3ZhcnM7CgogIEBvdmVycmlkZQogIHNldCB2YXJzKE1hcDxTdHJpbmcsIGR5bmFtaWM+IHZhbHVlKSA9PiBfdmFycyA9IHZhbHVlOwoKICBAb3ZlcnJpZGUKICBMb2dnZXIgZ2V0IGxvZ2dlciA9PiBfbG9nZ2VyOwp9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUJ1bmRsZScsICgpIHsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKCiAgICBzZXRVcCgoKSB7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGNvbnRleHQgPSBfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKTsKCiAgICAgIHdoZW4oKCkgPT4gbG9nZ2VyLnByb2dyZXNzKGFueSgpKSkudGhlblJldHVybihfTW9ja1Byb2dyZXNzKCkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBpZiBidW5kbGluZyB0aHJvd3MnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IGNyZWF0ZUJ1bmRsZSgKICAgICAgICBjb250ZXh0OiBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IERpcmVjdG9yeSgnL2ludmFsaWQvZGlyJyksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeSgnL2ludmFsaWQvZGlyL2J1aWxkJyksCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICB2ZXJpZnkoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpLmNhbGxlZCgxKTsKICAgIH0pOwoKICAgIHRlc3QoJ2RvZXMgbm90IHRocm93IHdoZW4gYnVuZGxpbmcgc3VjY2VlZHMnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBmaW5hbCBkb3REYXJ0RnJvZ0RpciA9CiAgICAgICAgICBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy5kYXJ0X2Zyb2cnKSkKICAgICAgICAgICAgLi5jcmVhdGVTeW5jKCk7CiAgICAgIGZpbmFsIGJ1aWxkRGlyZWN0b3J5ID0KICAgICAgICAgIERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSkuLmNyZWF0ZVN5bmMoKTsKICAgICAgZmluYWwgb2xkQnVpbGRBcnRpZmFjdCA9CiAgICAgICAgICBGaWxlKHBhdGguam9pbihidWlsZERpcmVjdG9yeS5wYXRoLCAnYXJ0aWZhY3QudHh0JykpLi5jcmVhdGVTeW5jKCk7CgogICAgICBhd2FpdCBjcmVhdGVCdW5kbGUoCiAgICAgICAgY29udGV4dDogY29udGV4dCwKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBidWlsZERpcmVjdG9yeSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwoKICAgICAgZXhwZWN0KGRvdERhcnRGcm9nRGlyLmV4aXN0c1N5bmMoKSwgaXNGYWxzZSk7CiAgICAgIGV4cGVjdChidWlsZERpcmVjdG9yeS5leGlzdHNTeW5jKCksIGlzVHJ1ZSk7CiAgICAgIGV4cGVjdChvbGRCdWlsZEFydGlmYWN0LmV4aXN0c1N5bmMoKSwgaXNGYWxzZSk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" - }, - { - "path": "build/test/src/create_external_packages_folder_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwoKICAgIHRlc3QoImRvZXNuJ3Qgb3ZlcnJpZGUgZXhpc3Rpbmcgb3ZlcnJpZGVzIiwgKCkgYXN5bmMgewogICAgICBjb25zdCBleGlzdGluZ092ZXJyaWRlcyA9ICcnJwpkZXBlbmRlbmN5X292ZXJyaWRlczoKICBkYXJ0X2Zyb2c6CiAgICBnaXQ6CiAgICAgIHVybDogaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtZnJvZy1kZXYvZGFydF9mcm9nCiAgICAgIHBhdGg6IHBhY2thZ2VzL2RhcnRfZnJvZwonJyc7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdidWlsZCcsICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICkKICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMoZXhpc3RpbmdPdmVycmlkZXMpOwogICAgICBGaWxlKAogICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSwKICAgICAgKS53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgICAgZXhwZWN0KAogICAgICAgIEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICkucmVhZEFzU3RyaW5nU3luYygpLAogICAgICAgIGNvbnRhaW5zKGV4aXN0aW5nT3ZlcnJpZGVzKSwKICAgICAgKTsKICAgIH0pOwogIH0pOwp9Cg==", - "type": "text" - }, - { - "path": "build/test/src/dart_pub_get_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnRlc3QvdGVzdC5kYXJ0JzsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdkYXJ0UHViR2V0JywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIGNvbnN0IHByb2Nlc3NJZCA9IDQyOwogICAgZmluYWwgcHJvY2Vzc1Jlc3VsdCA9IFByb2Nlc3NSZXN1bHQoCiAgICAgIHByb2Nlc3NJZCwKICAgICAgRXhpdENvZGUuc3VjY2Vzcy5jb2RlLAogICAgICAnJywKICAgICAgJycsCiAgICApOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdjb21wbGV0ZXMgd2hlbiBwcm9jZXNzIHN1Y2NlZWRzJywgKCkgYXN5bmMgewogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwoKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICBleHBlY3QoZXhlY3V0YWJsZSwgZXF1YWxzKCdkYXJ0JykpOwogICAgICAgICAgZXhwZWN0KGFyZ3MsIGVxdWFscyhbJ3B1YicsICdnZXQnXSkpOwogICAgICAgICAgZXhwZWN0KHdvcmtpbmdEaXJlY3RvcnksIGVxdWFscygnLicpKTsKICAgICAgICAgIGV4cGVjdChydW5JblNoZWxsLCBpc1RydWUpOwogICAgICAgICAgcmV0dXJuIHByb2Nlc3NSZXN1bHQ7CiAgICAgICAgfSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMgd2hlbiBwcm9jZXNzIGZhaWxzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBlcnJvciA9ICdvb3BzIHNvbWV0aGluZyB3ZW50IHdyb25nJzsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKCiAgICAgIGZpbmFsIHByb2Nlc3NSZXN1bHQgPSBQcm9jZXNzUmVzdWx0KAogICAgICAgIHByb2Nlc3NJZCwKICAgICAgICBFeGl0Q29kZS5zb2Z0d2FyZS5jb2RlLAogICAgICAgICcnLAogICAgICAgIGVycm9yLAogICAgICApOwoKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICByZXR1cm4gcHJvY2Vzc1Jlc3VsdDsKICAgICAgICB9LAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbRXhpdENvZGUuc29mdHdhcmUuY29kZV0pKTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5lcnIoZXJyb3IpKS5jYWxsZWQoMSk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0cyB3aGVuIFByb2Nlc3NFeGNlcHRpb24gb2NjdXJzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBlcnJvciA9ICdvb3BzIHNvbWV0aGluZyB3ZW50IHdyb25nJzsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICB0aHJvdyBQcm9jZXNzRXhjZXB0aW9uKAogICAgICAgICAgICAnZGFydCcsCiAgICAgICAgICAgIFsncHViJywgJ2dldCddLAogICAgICAgICAgICBlcnJvciwKICAgICAgICAgICAgRXhpdENvZGUuc29mdHdhcmUuY29kZSwKICAgICAgICAgICk7CiAgICAgICAgfSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoW0V4aXRDb2RlLnNvZnR3YXJlLmNvZGVdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGVycm9yKSkuY2FsbGVkKDEpOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - }, - { - "path": "build/test/src/disable_workspace_resolution_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnIGhpZGUgUGFja2FnZTsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tIb29rQ29udGV4dCBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7fQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9CgpjbGFzcyBfTW9ja1BhY2thZ2VDb25maWcgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUGFja2FnZUNvbmZpZyB7fQoKY2xhc3MgX01vY2tQYWNrYWdlR3JhcGggZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUGFja2FnZUdyYXBoIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2Rpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uJywgKCkgewogICAgY29uc3QgcGFja2FnZU5hbWUgPSAnc2VydmVyJzsKCiAgICBsYXRlIExpc3Q8aW50PiBleGl0Q2FsbHM7CiAgICBsYXRlIEhvb2tDb250ZXh0IGNvbnRleHQ7CiAgICBsYXRlIExvZ2dlciBsb2dnZXI7CiAgICBsYXRlIERpcmVjdG9yeSByb290RGlyZWN0b3J5OwogICAgbGF0ZSBEaXJlY3RvcnkgcHJvamVjdERpcmVjdG9yeTsKICAgIGxhdGUgUGFja2FnZUNvbmZpZyBwYWNrYWdlQ29uZmlnOwogICAgbGF0ZSBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoOwoKICAgIHNldFVwKCgpIHsKICAgICAgZXhpdENhbGxzID0gW107CiAgICAgIGNvbnRleHQgPSBfTW9ja0hvb2tDb250ZXh0KCk7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIHJvb3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygncm9vdCcpOwogICAgICBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgICAgIHBhdGguam9pbihyb290RGlyZWN0b3J5LnBhdGgsICdwYWNrYWdlcycsICdwcm9qZWN0JyksCiAgICAgICkuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgRmlsZShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJykpCiAgICAgICAgICAud3JpdGVBc1N0cmluZ1N5bmMoJ25hbWU6ICIkcGFja2FnZU5hbWUiJyk7CiAgICAgIHBhY2thZ2VDb25maWcgPSBfTW9ja1BhY2thZ2VDb25maWcoKTsKICAgICAgcGFja2FnZUdyYXBoID0gX01vY2tQYWNrYWdlR3JhcGgoKTsKCiAgICAgIHdoZW4oKCkgPT4gY29udGV4dC5sb2dnZXIpLnRoZW5SZXR1cm4obG9nZ2VyKTsKICAgICAgd2hlbigoKSA9PiBwYWNrYWdlR3JhcGgucm9vdHMpLnRoZW5SZXR1cm4oW3BhY2thZ2VOYW1lXSk7CiAgICAgIHdoZW4oKCkgPT4gcGFja2FnZUdyYXBoLnBhY2thZ2VzKS50aGVuUmV0dXJuKAogICAgICAgIFsKICAgICAgICAgIGNvbnN0IFBhY2thZ2VHcmFwaFBhY2thZ2UoCiAgICAgICAgICAgIG5hbWU6IHBhY2thZ2VOYW1lLAogICAgICAgICAgICBkZXBlbmRlbmNpZXM6IFtdLAogICAgICAgICAgICBkZXZEZXBlbmRlbmNpZXM6IFtdLAogICAgICAgICAgICB2ZXJzaW9uOiAnMS4wLjAnLAogICAgICAgICAgKSwKICAgICAgICBdLAogICAgICApOwogICAgICB3aGVuKCgpID0+IHBhY2thZ2VDb25maWcucGFja2FnZXMpLnRoZW5SZXR1cm4oW10pOwoKICAgICAgYWRkVGVhckRvd24oKCkgPT4gcHJvamVjdERpcmVjdG9yeS5kZWxldGUoKS5pZ25vcmUoKSk7CiAgICB9KTsKCiAgICBncm91cCgnd2hlbiBwdWJzcGVjX292ZXJyaWRlcy55YW1sIGRvZXMgbm90IGV4aXN0JywgKCkgewogICAgICB0ZXN0KCdhZGRzIHJlc29sdXRpb246IG51bGwnLCAoKSB7CiAgICAgICAgZGlzYWJsZVdvcmtzcGFjZVJlc29sdXRpb24oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgICAgIHBhY2thZ2VHcmFwaDogcGFja2FnZUdyYXBoLAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgd29ya3NwYWNlUm9vdDogcm9vdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICApOwogICAgICAgIGZpbmFsIGNvbnRlbnRzID0gcHJvamVjdERpcmVjdG9yeS5saXN0U3luYygpOwogICAgICAgIGV4cGVjdChjb250ZW50cywgaGFzTGVuZ3RoKDIpKTsKICAgICAgICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gY29udGVudHMuZmlyc3RXaGVyZSgKICAgICAgICAgIChwKSA9PiBwYXRoLmJhc2VuYW1lKHAucGF0aCkgPT0gJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnLAogICAgICAgICkgYXMgRmlsZTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBwdWJzcGVjT3ZlcnJpZGVzLnJlYWRBc1N0cmluZ1N5bmMoKSwKICAgICAgICAgIGVxdWFscygnJycKcmVzb2x1dGlvbjogbnVsbApkZXBlbmRlbmN5X292ZXJyaWRlczoge30KJycnKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHB1YnNwZWNfb3ZlcnJpZGVzLnlhbWwgZXhpc3RzJywgKCkgewogICAgICBjb25zdCBvcmlnaW5hbFB1YnNwZWNPdmVycmlkZXNDb250ZW50ID0gJycnCmRlcGVuZGVuY3lfb3ZlcnJpZGVzOgogIGZvbzoKICAgIHBhdGg6IC4vcGF0aC90by9mb28nJyc7CgogICAgICBzZXRVcCgoKSB7CiAgICAgICAgRmlsZSgKICAgICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgKS53cml0ZUFzU3RyaW5nU3luYyhvcmlnaW5hbFB1YnNwZWNPdmVycmlkZXNDb250ZW50KTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdhZGRzIHJlc29sdXRpb246IG51bGwnLCAoKSB7CiAgICAgICAgZGlzYWJsZVdvcmtzcGFjZVJlc29sdXRpb24oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgICAgIHBhY2thZ2VHcmFwaDogcGFja2FnZUdyYXBoLAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgd29ya3NwYWNlUm9vdDogcm9vdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICApOwogICAgICAgIGZpbmFsIGNvbnRlbnRzID0gcHJvamVjdERpcmVjdG9yeS5saXN0U3luYygpOwogICAgICAgIGV4cGVjdChjb250ZW50cywgaGFzTGVuZ3RoKDIpKTsKICAgICAgICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gY29udGVudHMuZmlyc3RXaGVyZSgKICAgICAgICAgIChwKSA9PiBwYXRoLmJhc2VuYW1lKHAucGF0aCkgPT0gJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnLAogICAgICAgICkgYXMgRmlsZTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBwdWJzcGVjT3ZlcnJpZGVzLnJlYWRBc1N0cmluZ1N5bmMoKSwKICAgICAgICAgIGVxdWFscygKICAgICAgICAgICAgJycnCiRvcmlnaW5hbFB1YnNwZWNPdmVycmlkZXNDb250ZW50CnJlc29sdXRpb246IG51bGwKJycnLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHVuYWJsZSB0byByZWFkIHB1YnNwZWNfb3ZlcnJpZGVzJywgKCkgewogICAgICBzZXRVcCgoKSB7CiAgICAgICAgZmluYWwgcHVic3BlY092ZXJyaWRlcyA9IEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICkuLmNyZWF0ZVN5bmMoKTsKICAgICAgICBQcm9jZXNzLnJ1blN5bmMoJ2NobW9kJywgWycwMDAnLCBwdWJzcGVjT3ZlcnJpZGVzLnBhdGhdKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdleGl0cyB3aXRoIGVycm9yJywgKCkgewogICAgICAgIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgY29udGV4dCwKICAgICAgICAgIHBhY2thZ2VDb25maWc6IHBhY2thZ2VDb25maWcsCiAgICAgICAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICAgICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAgIHdvcmtzcGFjZVJvb3Q6IHJvb3REaXJlY3RvcnkucGF0aCwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgKTsKICAgICAgICBmaW5hbCBjb250ZW50cyA9IHByb2plY3REaXJlY3RvcnkubGlzdFN5bmMoKTsKICAgICAgICBleHBlY3QoY29udGVudHMsIGhhc0xlbmd0aCgyKSk7CiAgICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICAgIHZlcmlmeSgKICAgICAgICAgICgpID0+IGxvZ2dlci5lcnIoYW55KHRoYXQ6IGNvbnRhaW5zKCdQZXJtaXNzaW9uIGRlbmllZCcpKSksCiAgICAgICAgKS5jYWxsZWQoMSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - }, - { - "path": "build/test/src/exit_overrides_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdFeGl0T3ZlcnJpZGVzJywgKCkgewogICAgZ3JvdXAoJ3J1blpvbmVkJywgKCkgewogICAgICB0ZXN0KCd1c2VzIGRlZmF1bHQgZXhpdCB3aGVuIG5vdCBzcGVjaWZpZWQnLCAoKSB7CiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgoKSB7CiAgICAgICAgICBmaW5hbCBvdmVycmlkZXMgPSBFeGl0T3ZlcnJpZGVzLmN1cnJlbnQ7CiAgICAgICAgICBleHBlY3Qob3ZlcnJpZGVzIS5leGl0LCBlcXVhbHMoZXhpdCkpOwogICAgICAgIH0pOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ3VzZXMgY3VzdG9tIGV4aXQgd2hlbiBzcGVjaWZpZWQnLCAoKSB7CiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgKICAgICAgICAgICgpIHsKICAgICAgICAgICAgZmluYWwgb3ZlcnJpZGVzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogICAgICAgICAgICBleHBlY3Qob3ZlcnJpZGVzIS5leGl0LCBpc05vdChlcXVhbHMoZXhpdCkpKTsKICAgICAgICAgIH0sCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKTsKICAgICAgfSk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" - }, - { - "path": "build/test/src/get_internal_path_dependencies_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2dldFBhdGhEZXBlbmRlbmNpZXMnLCAoKSB7CiAgICB0ZXN0KCdyZXR1cm5zIG5vdGhpbmcgd2hlbiB0aGVyZSBhcmUgbm8gcGF0aCBkZXBlbmRlbmNpZXMnLCAoKSB7CiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgICcnJwpwYWNrYWdlczoKICB0ZXN0OgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFuYWx5emVyCiAgICAgIHNoYTI1NjogZjg1NTY2ZWM3YjNkMjVjYmVhNjBmN2RkNGYxNTdjNTAyNWYyZjE5MjMzY2E0ZmVlZWQzM2I2MTZjNzhhMjZhMwogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjYuMS4wIgogIG1hc29uOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFuYWx5emVyCiAgICAgIHNoYTI1NjogZjg1NTY2ZWM3YjNkMjVjYmVhNjBmN2RkNGYxNTdjNTAyNWYyZjE5MjMzY2E0ZmVlZWQzM2I2MTZjNzhhMjZhMwogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjYuMS4wIgonJycsCiAgICAgICk7CiAgICAgIGV4cGVjdChnZXRJbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMoZGlyZWN0b3J5KSwgY29tcGxldGlvbihpc0VtcHR5KSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3JldHVybnMgY29ycmVjdCBwYXRoIGRlcGVuZGVuY2llcycsICgpIHsKICAgICAgZmluYWwgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgJycnCnBhY2thZ2VzOgogIGRhcnRfZnJvZzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGF0aC90by9kYXJ0X2Zyb2ciCiAgICAgIHJlbGF0aXZlOiB0cnVlCiAgICBzb3VyY2U6IHBhdGgKICAgIHZlcnNpb246ICIwLjAuMCIKICBkYXJ0X2Zyb2dfZ2VuOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgogICAgZGVzY3JpcHRpb246CiAgICAgIHBhdGg6ICJwYXRoL3RvL2RhcnRfZnJvZ19nZW4iCiAgICAgIHJlbGF0aXZlOiB0cnVlCiAgICBzb3VyY2U6IHBhdGgKICAgIHZlcnNpb246ICIwLjAuMCIKJycnLAogICAgICApOwogICAgICBleHBlY3QoCiAgICAgICAgZ2V0SW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzKGRpcmVjdG9yeSksCiAgICAgICAgY29tcGxldGlvbigKICAgICAgICAgIGVxdWFscyhbJ3BhdGgvdG8vZGFydF9mcm9nJywgJ3BhdGgvdG8vZGFydF9mcm9nX2dlbiddKSwKICAgICAgICApLAogICAgICApOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" - }, - { - "path": "build/test/src/pubspec_lock/pubspec_lock_test.dart", - "data": - "Ly8gaWdub3JpbmcgZm9yIHRlc3RpbmcgcHVycG9zZXMKLy8gaWdub3JlX2Zvcl9maWxlOiBwcmVmZXJfY29uc3RfY29uc3RydWN0b3JzCgppbXBvcnQgJ3BhY2thZ2U6ZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzL3NyYy9wdWJzcGVjX2xvY2svcHVic3BlY19sb2NrLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6eWFtbC95YW1sLmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCckUHVic3BlY0xvY2snLCAoKSB7CiAgICBncm91cCgnZnJvbVN0cmluZycsICgpIHsKICAgICAgdGVzdCgncGFyc2VzIGNvcnJlY3RseScsICgpIHsKICAgICAgICBmaW5hbCBwdWJzcGVjTG9jayA9IFB1YnNwZWNMb2NrLmZyb21TdHJpbmcoX3B1YnNwZWNMb2NrQ29udGVudCk7CgogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHB1YnNwZWNMb2NrLnBhY2thZ2VzLAogICAgICAgICAgZXF1YWxzKAogICAgICAgICAgICBjb25zdCBbCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3ZlcnlfZ29vZF90ZXN0X3J1bm5lcicsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5kaXJlY3RNYWluLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3ZlcnlfZ29vZF9hbmFseXNpcycsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5kaXJlY3REZXYsCiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgICAgICAgICBuYW1lOiAneWFtbCcsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS50cmFuc2l0aXZlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3BhdGgnLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0T3ZlcnJpZGRlbiwKICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIFB1YnNwZWNMb2NrUGFja2FnZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdmb28nLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgICAgICAgICAgIHBhdGhEZXNjcmlwdGlvbjogUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICAgICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgICAgICAgICAgICByZWxhdGl2ZTogdHJ1ZSwKICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgICAgICAgICBuYW1lOiAneWFtbDInLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudHJhbnNpdGl2ZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ3Rocm93cyBhICRQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uIHdoZW4gY29udGVudCBpcyBlbXB0eScsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICAoKSA9PiBQdWJzcGVjTG9jay5mcm9tU3RyaW5nKCcnKSwKICAgICAgICAgIHRocm93c0EoaXNBPFB1YnNwZWNMb2NrUGFyc2VFeGNlcHRpb24+KCkpLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgncmV0dXJucyBlbXB0eSBQdWJzcGVjTG9jayB3aGVuIGNvbnRlbnQgaGFzIG5vIHBhY2thZ2VzIGVudHJ5JywgKCkgewogICAgICAgIGZpbmFsIHB1YnNwZWNMb2NrID0gUHVic3BlY0xvY2suZnJvbVN0cmluZyhfZW1wdHlQdWJzcGVjTG9ja0NvbnRlbnQpOwogICAgICAgIGV4cGVjdChwdWJzcGVjTG9jay5wYWNrYWdlcywgaXNFbXB0eSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7CgogIGdyb3VwKCckUHVic3BlY0xvY2tQYWNrYWdlJywgKCkgewogICAgdGVzdCgnY2FuIGJlIGluc3RhbnRpYXRlZCcsICgpIHsKICAgICAgZXhwZWN0KAogICAgICAgIFB1YnNwZWNMb2NrUGFja2FnZSgKICAgICAgICAgIG5hbWU6ICdmb28nLAogICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgICApLAogICAgICAgIGlzQTxQdWJzcGVjTG9ja1BhY2thZ2U+KCksCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdzdXBwb3J0cyB2YWx1ZSBlcXVhbGl0eScsICgpIHsKICAgICAgZmluYWwgcGFja2FnZTEgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2ZvbycsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgKTsKICAgICAgZmluYWwgcGFja2FnZTIgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2ZvbycsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgKTsKICAgICAgZmluYWwgcGFja2FnZTMgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2JhcicsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudHJhbnNpdGl2ZSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChwYWNrYWdlMSwgZXF1YWxzKHBhY2thZ2UyKSk7CiAgICAgIGV4cGVjdChwYWNrYWdlMSwgaXNOb3QoZXF1YWxzKHBhY2thZ2UzKSkpOwogICAgICBleHBlY3QocGFja2FnZTIsIGlzTm90KGVxdWFscyhwYWNrYWdlMykpKTsKICAgIH0pOwogIH0pOwoKICBncm91cCgnJFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlJywgKCkgewogICAgZ3JvdXAoJ3BhcnNlJywgKCkgewogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3QgbWFpbmAnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2RpcmVjdCBtYWluJyksCiAgICAgICAgICBlcXVhbHMoUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3QgZGV2YCcsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5wYXJzZSgnZGlyZWN0IGRldicpLAogICAgICAgICAgZXF1YWxzKFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLmRpcmVjdERldiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3Qgb3ZlcnJpZGRlbmAnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2RpcmVjdCBvdmVycmlkZGVuJyksCiAgICAgICAgICBlcXVhbHMoUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0T3ZlcnJpZGRlbiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGB0cmFuc2l0aXZlYCcsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5wYXJzZSgndHJhbnNpdGl2ZScpLAogICAgICAgICAgZXF1YWxzKFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLnRyYW5zaXRpdmUpLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgndGhyb3dzIGEgJEFyZ3VtZW50RXJyb3Igd2hlbiB0eXBlIGlzIGludmFsaWQnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgKCkgPT4gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2ludmFsaWQnKSwKICAgICAgICAgIHRocm93c0EoaXNBPEFyZ3VtZW50RXJyb3I+KCkpLAogICAgICAgICk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7CgogIGdyb3VwKCckUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24nLCAoKSB7CiAgICB0ZXN0KCdjYW4gYmUgaW5zdGFudGlhdGVkJywgKCkgewogICAgICBleHBlY3QoCiAgICAgICAgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICBwYXRoOiAncGFja2FnZXMvZm9vJywKICAgICAgICAgIHJlbGF0aXZlOiB0cnVlLAogICAgICAgICksCiAgICAgICAgaXNBPFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uPigpLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgnc3VwcG9ydHMgdmFsdWUgZXF1YWxpdHknLCAoKSB7CiAgICAgIGZpbmFsIGRlc2NyaXB0aW9uMSA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uKAogICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgIHJlbGF0aXZlOiB0cnVlLAogICAgICApOwogICAgICBmaW5hbCBkZXNjcmlwdGlvbjIgPSBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbigKICAgICAgICBwYXRoOiAncGFja2FnZXMvZm9vJywKICAgICAgICByZWxhdGl2ZTogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZGVzY3JpcHRpb24zID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgcGF0aDogJ3BhY2thZ2VzL2JhcicsCiAgICAgICAgcmVsYXRpdmU6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGRlc2NyaXB0aW9uNCA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uKAogICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgIHJlbGF0aXZlOiBmYWxzZSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChkZXNjcmlwdGlvbjEsIGVxdWFscyhkZXNjcmlwdGlvbjIpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMSwgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uMykpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMSwgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uNCkpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMywgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uNCkpKTsKICAgIH0pOwoKICAgIGdyb3VwKCd0cnlQYXJzZScsICgpIHsKICAgICAgdGVzdCgncGFyc2VzJywgKCkgewogICAgICAgIGZpbmFsIGRhdGEgPSBsb2FkWWFtbCgKICAgICAgICAgICcnJwpwYXRoOiAicGFja2FnZXMvZm9vIgpyZWxhdGl2ZTogdHJ1ZQogICAgICAgICAgICAnJycsCiAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICBmaW5hbCBkZXNjcmlwdGlvbiA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRhdGEpOwoKICAgICAgICBleHBlY3QoCiAgICAgICAgICBkZXNjcmlwdGlvbiwKICAgICAgICAgIGVxdWFscygKICAgICAgICAgICAgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICAgICAgcGF0aDogJ3BhY2thZ2VzL2ZvbycsCiAgICAgICAgICAgICAgcmVsYXRpdmU6IHRydWUsCiAgICAgICAgICAgICksCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgZ3JvdXAoJ3JldHVybnMgbnVsbCcsICgpIHsKICAgICAgICB0ZXN0KCd3aGVuIG1pc3NpbmcgInBhdGgiJywgKCkgewogICAgICAgICAgZmluYWwgZGF0YSA9IGxvYWRZYW1sKAogICAgICAgICAgICAnJycKcmVsYXRpdmU6IHRydWUKICAgICAgICAgICAgJycnLAogICAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24udHJ5UGFyc2UoZGF0YSk7CgogICAgICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uLCBpc051bGwpOwogICAgICAgIH0pOwoKICAgICAgICB0ZXN0KCd3aGVuICJwYXRoIiBpcyBub3QgYSBTdHJpbmcnLCAoKSB7CiAgICAgICAgICBmaW5hbCBkYXRhID0gbG9hZFlhbWwoCiAgICAgICAgICAgICcnJwpwYXRoOiAxCnJlbGF0aXZlOiB0cnVlCiAgICAgICAgICAgICcnJywKICAgICAgICAgICkgYXMgWWFtbE1hcDsKCiAgICAgICAgICBmaW5hbCBkZXNjcmlwdGlvbiA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRhdGEpOwoKICAgICAgICAgIGV4cGVjdChkZXNjcmlwdGlvbiwgaXNOdWxsKTsKICAgICAgICB9KTsKCiAgICAgICAgdGVzdCgnd2hlbiBtaXNzaW5nICJyZWxhdGl2ZSInLCAoKSB7CiAgICAgICAgICBmaW5hbCBkYXRhID0gbG9hZFlhbWwoCiAgICAgICAgICAgICcnJwpwYXRoOiAicGFja2FnZXMvZm9vIgogICAgICAgICAgICAnJycsCiAgICAgICAgICApIGFzIFlhbWxNYXA7CgogICAgICAgICAgZmluYWwgZGVzY3JpcHRpb24gPSBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbi50cnlQYXJzZShkYXRhKTsKCiAgICAgICAgICBleHBlY3QoZGVzY3JpcHRpb24sIGlzTnVsbCk7CiAgICAgICAgfSk7CgogICAgICAgIHRlc3QoJ3doZW4gInJlbGF0aXZlIiBpcyBub3QgYSBib29sJywgKCkgewogICAgICAgICAgZmluYWwgZGF0YSA9IGxvYWRZYW1sKAogICAgICAgICAgICAnJycKcGF0aDogInBhY2thZ2VzL2ZvbyIKcmVsYXRpdmU6IDUKICAgICAgICAgICAgJycnLAogICAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24udHJ5UGFyc2UoZGF0YSk7CgogICAgICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uLCBpc051bGwpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0pOwogIH0pOwp9CgovLy8gQW4gZXhhbXBsZSBwdWJzcGVjLmxvY2sgY29udGVudCB1c2VkIHRvIHRlc3QgdGhlIFtQdWJzcGVjTG9ja10gY2xhc3MuCi8vLwovLy8gSXQgaGFzIGJlZW4gYXJ0aWZpY2lhbGx5IGNyYWZ0ZWQgdG8gaW5jbHVkZToKLy8vIC0gb25lIHB1YiBob3N0ZWQgZGlyZWN0IG1haW4gcGFja2FnZSBlbnRyeQovLy8gLSBvbmUgcHViIGhvc3RlZCBkaXJlY3QgZGV2IHBhY2thZ2UgZW50cnkKLy8vIC0gb25lIHB1YiBob3N0ZWQgdHJhbnNpdGl2ZSBwYWNrYWdlIGVudHJ5Ci8vLyAtIG9uZSBwdWIgaG9zdGVkIG92ZXJyaWRkZW4gcGFja2FnZSBlbnRyeQovLy8gLSBvbmUgcGF0aCBkaXJlY3QgbWFpbiBwYWNrYWdlIGVudHJ5Ci8vLyAtIG9uZSBub3QgcHViIGhvc3RlZCB0cmFuc2l0aXZlIHBhY2thZ2UgZW50cnkKLy8vIC0gb25lIGludmFsaWQgcGFja2FnZSBlbnRyeQpjb25zdCBfcHVic3BlY0xvY2tDb250ZW50ID0gJycnCnBhY2thZ2VzOgogIHZlcnlfZ29vZF90ZXN0X3J1bm5lcjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB2ZXJ5X2dvb2RfdGVzdF9ydW5uZXIKICAgICAgc2hhMjU2OiAiNGQ0MWU1ZDc2NzdkMjU5YjlhMTU5OWM3ODY0NWFjMmQzNmJjMmJkNmZmNzc3MzUwN2JjYjBiYWI0MTQxN2ZlMiIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIwLjEuMiIKICB2ZXJ5X2dvb2RfYW5hbHlzaXM6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB2ZXJ5X2dvb2RfYW5hbHlzaXMKICAgICAgc2hhMjU2OiAiOWFlN2YzYTNiZDU3NjRmYjAyMWIzMzVjYTI4YTM0ZjA0MGNkMGFiNmVlYzAwYTFiMjEzYjQ0NWRhZTU4YTRiOCIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICI1LjEuMCIKICB5YW1sOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IHlhbWwKICAgICAgc2hhMjU2OiAiNzU3Njk1MDFlYTM0ODlmY2E1NjYwMWZmMzM0NTRmZTQ1NTA3ZWEzYmZiMDE0MTYxYWJjM2I0M2FlMjU5ODlkNSIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIzLjEuMiIKICBwYXRoOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBvdmVycmlkZGVuIgogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IHBhdGgKICAgICAgc2hhMjU2OiAiMDg3Y2U0OWMzZjBkYzM5MTgwYmVmZWZjNjBmZGI0YWNkOGY4NjIwZTU2ODJmZTI0NzZhZmQwYjM2ODhiYjRhZiIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIxLjkuMCIKICBmb286CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgcGF0aDogInBhY2thZ2VzL2ZvbyIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjEuMC4wKzEiCiAgeWFtbDI6CiAgICBkZXBlbmRlbmN5OiB0cmFuc2l0aXZlCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogeWFtbAogICAgICBzaGEyNTY6ICI3NTc2OTUwMWVhMzQ4OWZjYTU2NjAxZmYzMzQ1NGZlNDU1MDdlYTNiZmIwMTQxNjFhYmMzYjQzYWUyNTk4OWQ1IgogICAgICB1cmw6ICJodHRwczovL25vdC1wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIzLjEuMiIKICBiYWRfcGFja2FnZToKICAgIG5vdF9kZXBlbmRlbmN5OiAiYmFkIgpzZGtzOgogIGRhcnQ6ICI+PTMuMS4wIDw0LjAuMCIKJycnOwoKLy8vIEEgdmFsaWQgcHVic3BlYyBsb2NrIGZpbGUgd2l0aCBubyBwYWNrYWdlcy4KY29uc3QgX2VtcHR5UHVic3BlY0xvY2tDb250ZW50ID0gJycnCnNka3M6CiAgZGFydDogIj49My4xLjAgPDQuMC4wIgonJyc7Cg==", - "type": "text" - }, - { - "path": "build/test/src/uses_workspace_resolution_test.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tIb29rQ29udGV4dCBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7fQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ3VzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uJywgKCkgewogICAgbGF0ZSBMaXN0PGludD4gZXhpdENhbGxzOwogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwogICAgbGF0ZSBEaXJlY3RvcnkgYnVpbGREaXJlY3Rvcnk7CiAgICBsYXRlIERpcmVjdG9yeSB3b3JraW5nRGlyZWN0b3J5OwoKICAgIHNldFVwKCgpIHsKICAgICAgZXhpdENhbGxzID0gW107CiAgICAgIGNvbnRleHQgPSBfTW9ja0hvb2tDb250ZXh0KCk7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGJ1aWxkRGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoJ2J1aWxkJyk7CiAgICAgIHdvcmtpbmdEaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygnd29ya2luZycpOwoKICAgICAgd2hlbigoKSA9PiBjb250ZXh0LmxvZ2dlcikudGhlblJldHVybihsb2dnZXIpOwoKICAgICAgYWRkVGVhckRvd24oKCkgewogICAgICAgIGJ1aWxkRGlyZWN0b3J5LmRlbGV0ZSgpLmlnbm9yZSgpOwogICAgICAgIHdvcmtpbmdEaXJlY3RvcnkuZGVsZXRlKCkuaWdub3JlKCk7CiAgICAgIH0pOwogICAgfSk7CgogICAgZ3JvdXAoJ3doZW4gcHVic3BlYy55YW1sIGRvZXMgbm90IGV4aXN0JywgKCkgewogICAgICB0ZXN0KCdyZXR1cm5zIGZhbHNlJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICApLAogICAgICAgICAgaXNGYWxzZSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHB1YnNwZWMueWFtbCBpcyBtYWxmb3JtZWQnLCAoKSB7CiAgICAgIGxhdGUgRmlsZSBwdWJzcGVjRmlsZTsKICAgICAgc2V0VXAoKCkgewogICAgICAgIHB1YnNwZWNGaWxlID0gRmlsZSgKICAgICAgICAgIHBhdGguam9pbih3b3JraW5nRGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLnlhbWwnKSwKICAgICAgICApLi53cml0ZUFzU3RyaW5nU3luYygnaW52YWxpZCBwdWJzcGVjLnlhbWwnKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdyZXR1cm5zIGZhbHNlJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICApLAogICAgICAgICAgaXNGYWxzZSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgICB2ZXJpZnkoCiAgICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgICBhbnkodGhhdDogY29udGFpbnMoJ1VuYWJsZSB0byBwYXJzZSAke3B1YnNwZWNGaWxlLnBhdGh9JykpLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCd3aGVuIHB1YnNwZWMueWFtbCBpcyB2YWxpZCB3aXRoIG5vIHJlc29sdXRpb24nLCAoKSB7CiAgICAgIHNldFVwKCgpIHsKICAgICAgICBGaWxlKAogICAgICAgICAgcGF0aC5qb2luKHdvcmtpbmdEaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMueWFtbCcpLAogICAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoJycnCm5hbWU6IF8KJycnKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdyZXR1cm5zIGZhbHNlJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHVzZXNXb3Jrc3BhY2VSZXNvbHV0aW9uKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICApLAogICAgICAgICAgaXNGYWxzZSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgfSk7CiAgICB9KTsKCiAgICBncm91cCgnd2hlbiBwdWJzcGVjLnlhbWwgaXMgdmFsaWQgd2l0aCByZXNvbHV0aW9uIHdvcmtzcGFjZScsICgpIHsKICAgICAgc2V0VXAoKCkgewogICAgICAgIEZpbGUoCiAgICAgICAgICBwYXRoLmpvaW4od29ya2luZ0RpcmVjdG9yeS5wYXRoLCAncHVic3BlYy55YW1sJyksCiAgICAgICAgKS53cml0ZUFzU3RyaW5nU3luYygnJycKbmFtZTogXwpyZXNvbHV0aW9uOiB3b3Jrc3BhY2UKJycnKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdyZXR1cm5zIHRydWUnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgdXNlc1dvcmtzcGFjZVJlc29sdXRpb24oCiAgICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6IHdvcmtpbmdEaXJlY3RvcnkucGF0aCwKICAgICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgICksCiAgICAgICAgICBpc1RydWUsCiAgICAgICAgKTsKICAgICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - }, { "path": "lib/dart_frog_prod_server_hooks.dart", "data": - "ZXhwb3J0ICdzcmMvY29weV93b3Jrc3BhY2VfcHVic3BlY19sb2NrLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfYnVuZGxlLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfZXh0ZXJuYWxfcGFja2FnZXNfZm9sZGVyLmRhcnQnOwpleHBvcnQgJ3NyYy9kYXJ0X3B1Yl9nZXQuZGFydCc7CmV4cG9ydCAnc3JjL2Rpc2FibGVfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CmV4cG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfaW50ZXJuYWxfcGF0aF9kZXBlbmRlbmNpZXMuZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wYWNrYWdlX2NvbmZpZy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X3BhY2thZ2VfZ3JhcGguZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wdWJzcGVjX2xvY2suZGFydCc7CmV4cG9ydCAnc3JjL2dldF93b3Jrc3BhY2Vfcm9vdC5kYXJ0JzsKZXhwb3J0ICdzcmMvcGFja2FnZV9ncmFwaC9wYWNrYWdlX2dyYXBoLmRhcnQnOwpleHBvcnQgJ3NyYy9wYXRoX2RlcGVuZGVuY3kuZGFydCc7CmV4cG9ydCAnc3JjL3VzZXNfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CgovLy8gQSB2b2lkIGNhbGxiYWNrIGZ1bmN0aW9uIChlLmcuIGB2b2lkIEZ1bmN0aW9uKClgKS4KdHlwZWRlZiBWb2lkQ2FsbGJhY2sgPSB2b2lkIEZ1bmN0aW9uKCk7Cg==", + "ZXhwb3J0ICdzcmMvY29weV93b3Jrc3BhY2VfcHVic3BlY19sb2NrLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfYnVuZGxlLmRhcnQnOwpleHBvcnQgJ3NyYy9jcmVhdGVfZXh0ZXJuYWxfcGFja2FnZXNfZm9sZGVyLmRhcnQnOwpleHBvcnQgJ3NyYy9kYXJ0X3B1Yl9nZXQuZGFydCc7CmV4cG9ydCAnc3JjL2Rpc2FibGVfd29ya3NwYWNlX3Jlc29sdXRpb24uZGFydCc7CmV4cG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfaW50ZXJuYWxfcGF0aF9kZXBlbmRlbmNpZXMuZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wYWNrYWdlX2NvbmZpZy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X3BhY2thZ2VfZ3JhcGguZGFydCc7CmV4cG9ydCAnc3JjL2dldF9wdWJzcGVjX2xvY2suZGFydCc7CmV4cG9ydCAnc3JjL2dldF93b3Jrc3BhY2Vfcm9vdC5kYXJ0JzsKZXhwb3J0ICdzcmMvcGFja2FnZV9ncmFwaC9wYWNrYWdlX2dyYXBoLmRhcnQnOwpleHBvcnQgJ3NyYy91c2VzX3dvcmtzcGFjZV9yZXNvbHV0aW9uLmRhcnQnOwoKLy8vIEEgdm9pZCBjYWxsYmFjayBmdW5jdGlvbiAoZS5nLiBgdm9pZCBGdW5jdGlvbigpYCkuCnR5cGVkZWYgVm9pZENhbGxiYWNrID0gdm9pZCBGdW5jdGlvbigpOwo=", "type": "text" }, { @@ -250,7 +46,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "lib/src/create_external_packages_folder.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICBmaW5hbCBpc0V4dGVybmFsID0gIXBhdGhSZXNvbHZlci5pc1dpdGhpbignJywgcGF0aERlc2NyaXB0aW9uLnBhdGgpOwogICAgICAgICAgaWYgKCFpc0V4dGVybmFsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSgKICAgICAgICAgICAgbmFtZTogZGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICBwYXRoOiBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCBwYXRoRGVzY3JpcHRpb24ucGF0aCksCiAgICAgICAgICApOwogICAgICAgIH0sCiAgICAgICkKICAgICAgLndoZXJlVHlwZTxFeHRlcm5hbFBhdGhEZXBlbmRlbmN5PigpCiAgICAgIC50b0xpc3QoKTsKCiAgaWYgKGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5pc0VtcHR5KSByZXR1cm4gW107CgogIGZpbmFsIHBhY2thZ2VzRGlyZWN0b3J5ID0gRGlyZWN0b3J5KAogICAgcGF0aFJlc29sdmVyLmpvaW4oCiAgICAgIGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICksCiAgKS4uY3JlYXRlU3luYyhyZWN1cnNpdmU6IHRydWUpOwoKICBmaW5hbCBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBhd2FpdCBGdXR1cmUud2FpdCgKICAgIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5tYXAoCiAgICAgIChleHRlcm5hbFBhdGhEZXBlbmRlbmN5KSBhc3luYyB7CiAgICAgICAgZmluYWwgY29weSA9IGF3YWl0IGV4dGVybmFsUGF0aERlcGVuZGVuY3kuY29weVRvKAogICAgICAgICAgY29weVBhdGg6IGNvcHlQYXRoLAogICAgICAgICAgdGFyZ2V0RGlyZWN0b3J5OiBEaXJlY3RvcnkoCiAgICAgICAgICAgIHBhdGhSZXNvbHZlci5qb2luKAogICAgICAgICAgICAgIHBhY2thZ2VzRGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAgICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICApLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhjb3B5LnBhdGgpOwogICAgICAgIHJldHVybiBjb3B5OwogICAgICB9LAogICAgKSwKICApOwoKICBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoYnVpbGREaXJlY3RvcnkucGF0aCk7CiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMsCiAgKTsKCiAgcmV0dXJuIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcwogICAgICAubWFwKChkZXBlbmRlbmN5KSA9PiBkZXBlbmRlbmN5LnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICBmaW5hbCBpc0V4dGVybmFsID0gIXBhdGhSZXNvbHZlci5pc1dpdGhpbignJywgcGF0aERlc2NyaXB0aW9uLnBhdGgpOwogICAgICAgICAgaWYgKCFpc0V4dGVybmFsKSByZXR1cm4gbnVsbDsKCiAgICAgICAgICByZXR1cm4gX0V4dGVybmFsUGF0aERlcGVuZGVuY3koCiAgICAgICAgICAgIG5hbWU6IGRlcGVuZGVuY3kubmFtZSwKICAgICAgICAgICAgcGF0aDogcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgcGF0aERlc2NyaXB0aW9uLnBhdGgpLAogICAgICAgICAgKTsKICAgICAgICB9LAogICAgICApCiAgICAgIC53aGVyZVR5cGU8X0V4dGVybmFsUGF0aERlcGVuZGVuY3k+KCkKICAgICAgLnRvTGlzdCgpOwoKICBpZiAoZXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLmlzRW1wdHkpIHJldHVybiBbXTsKCiAgZmluYWwgcGFja2FnZXNEaXJlY3RvcnkgPSBEaXJlY3RvcnkoCiAgICBwYXRoUmVzb2x2ZXIuam9pbigKICAgICAgYnVpbGREaXJlY3RvcnkucGF0aCwKICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgKSwKICApLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CgogIGZpbmFsIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IGF3YWl0IEZ1dHVyZS53YWl0KAogICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLm1hcCgKICAgICAgKGV4dGVybmFsUGF0aERlcGVuZGVuY3kpIGFzeW5jIHsKICAgICAgICBmaW5hbCBjb3B5ID0gYXdhaXQgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jeS5jb3B5VG8oCiAgICAgICAgICBjb3B5UGF0aDogY29weVBhdGgsCiAgICAgICAgICB0YXJnZXREaXJlY3Rvcnk6IERpcmVjdG9yeSgKICAgICAgICAgICAgcGF0aFJlc29sdmVyLmpvaW4oCiAgICAgICAgICAgICAgcGFja2FnZXNEaXJlY3RvcnkucGF0aCwKICAgICAgICAgICAgICBleHRlcm5hbFBhdGhEZXBlbmRlbmN5Lm5hbWUsCiAgICAgICAgICAgICksCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgICAgb3ZlcnJpZGVSZXNvbHV0aW9uSW5QdWJzcGVjT3ZlcnJpZGVzKGNvcHkucGF0aCk7CiAgICAgICAgcmV0dXJuIGNvcHk7CiAgICAgIH0sCiAgICApLAogICk7CgogIEZpbGUoCiAgICBwYXRoUmVzb2x2ZXIuam9pbihidWlsZERpcmVjdG9yeS5wYXRoLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAnJycKcmVzb2x1dGlvbjogbnVsbApkZXBlbmRlbmN5X292ZXJyaWRlczoKJHtjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMubWFwKAogICAgICAoZGVwZW5kZW5jeSkgewogICAgICAgIGZpbmFsIG5hbWUgPSBkZXBlbmRlbmN5Lm5hbWU7CiAgICAgICAgZmluYWwgcGF0aCA9CiAgICAgICAgICAgIHBhdGhSZXNvbHZlci5yZWxhdGl2ZShkZXBlbmRlbmN5LnBhdGgsIGZyb206IGJ1aWxkRGlyZWN0b3J5LnBhdGgpOwogICAgICAgIHJldHVybiAnICAkbmFtZTpcbiAgICBwYXRoOiAkcGF0aCc7CiAgICAgIH0sCiAgICApLmpvaW4oJ1xuJyl9CicnJywKICApOwoKICByZXR1cm4gY29waWVkRXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzCiAgICAgIC5tYXAoKGRlcGVuZGVuY3kpID0+IGRlcGVuZGVuY3kucGF0aCkKICAgICAgLnRvTGlzdCgpOwp9CgovLy8ge0B0ZW1wbGF0ZSBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9Ci8vLyBBIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIG5vdCB3aXRoaW4gdGhlIGJ1bmRsZWQgRGFydCBGcm9nIHByb2plY3QKLy8vIGRpcmVjdG9yeS4KLy8vCi8vLyBGb3IgZXhhbXBsZToKLy8vIGBgYHlhbWwKLy8vIG5hbWU6IG15X2RhcnRfZnJvZ19wcm9qZWN0Ci8vLyBkZXBlbmRlbmNpZXM6Ci8vLyAgIG15X3BhY2thZ2U6Ci8vLyAgICAgcGF0aDogLi4vbXlfcGFja2FnZQovLy8gYGBgCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBfRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSB7CiAgLy8vIHtAbWFjcm8gZXh0ZXJuYWxfcGF0aF9kZXBlbmRlbmN5fQogIGNvbnN0IF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5KHsKICAgIHJlcXVpcmVkIHRoaXMubmFtZSwKICAgIHJlcXVpcmVkIHRoaXMucGF0aCwKICB9KTsKCiAgLy8vIFRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlLgogIGZpbmFsIFN0cmluZyBuYW1lOwoKICAvLy8gVGhlIGFic29sdXRlIHBhdGggdG8gdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIHBhdGg7CgogIC8vLyBDb3BpZXMgdGhlIFtfRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeV0gdG8gW3RhcmdldERpcmVjdG9yeV0uCiAgRnV0dXJlPF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5PiBjb3B5VG8oewogICAgcmVxdWlyZWQgRGlyZWN0b3J5IHRhcmdldERpcmVjdG9yeSwKICAgIENvcHlQYXRoIGNvcHlQYXRoID0gaW8uY29weVBhdGgsCiAgfSkgYXN5bmMgewogICAgYXdhaXQgY29weVBhdGgocGF0aCwgdGFyZ2V0RGlyZWN0b3J5LnBhdGgpOwogICAgcmV0dXJuIF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5KG5hbWU6IG5hbWUsIHBhdGg6IHRhcmdldERpcmVjdG9yeS5wYXRoKTsKICB9Cn0K", "type": "text" }, { @@ -262,7 +58,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "lib/src/disable_workspace_resolution.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sX2VkaXQveWFtbF9lZGl0LmRhcnQnOwoKLy8vIE9wdHMgb3V0IG9mIGRhcnQgd29ya3NwYWNlcyB1bnRpbCB3ZSBjYW4gZ2VuZXJhdGUgcGVyIHBhY2thZ2UgbG9ja2ZpbGVzLgovLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtbGFuZy9wdWIvaXNzdWVzLzQ1OTQKVm9pZENhbGxiYWNrIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBQYWNrYWdlQ29uZmlnIHBhY2thZ2VDb25maWcsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKICByZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCBTdHJpbmcgd29ya3NwYWNlUm9vdCwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIFZvaWRDYWxsYmFjayByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKICB0cnkgewogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoCiAgICAgIHByb2plY3REaXJlY3RvcnksCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlJyk7CiAgICBleGl0KDEpOwogICAgcmV0dXJuICgpIHt9OyAvLyBuby1vcAogIH0KCiAgdHJ5IHsKICAgIG92ZXJyaWRlUGF0aERlcGVuZGVuY2llc0luUHVic3BlY092ZXJyaWRlcygKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbigpOwogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZScpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsgLy8gbm8tb3AKICB9CgogIHJldHVybiByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKfQoKLy8vIEFkZCByZXNvbHV0aW9uOm51bGwgdG8gcHVic3BlY19vdmVycmlkZXMueWFtbC4KVm9pZENhbGxiYWNrIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhTdHJpbmcgcHJvamVjdERpcmVjdG9yeSkgewogIGZpbmFsIHB1YnNwZWNPdmVycmlkZXNGaWxlID0gRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICk7CgogIGlmICghcHVic3BlY092ZXJyaWRlc0ZpbGUuZXhpc3RzU3luYygpKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuIHB1YnNwZWNPdmVycmlkZXNGaWxlLmRlbGV0ZVN5bmM7CiAgfQoKICBmaW5hbCBjb250ZW50cyA9IHB1YnNwZWNPdmVycmlkZXNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gbG9hZFlhbWwoY29udGVudHMpIGFzIFlhbWxNYXA/OwoKICBpZiAocHVic3BlY092ZXJyaWRlcyA9PSBudWxsKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKICB9CgogIGlmIChwdWJzcGVjT3ZlcnJpZGVzWydyZXNvbHV0aW9uJ10gPT0gJ251bGwnKSByZXR1cm4gKCkge307IC8vIG5vLW9wCgogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpLi51cGRhdGUoWydyZXNvbHV0aW9uJ10sIG51bGwpOwogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKCiAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKfQoKLy8vIEFkZCBvdmVycmlkZXMgZm9yIGFsbCBwYXRoIGRlcGVuZGVuY2llcyB0byBgcHVic3BlY19vdmVycmlkZXMueWFtbGAKdm9pZCBvdmVycmlkZVBhdGhEZXBlbmRlbmNpZXNJblB1YnNwZWNPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIFBhY2thZ2VDb25maWcgcGFja2FnZUNvbmZpZywKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgbmFtZSA9IGdldFBhY2thZ2VOYW1lKHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkpOwogIGlmIChuYW1lID09IG51bGwpIHsKICAgIHRocm93IEV4Y2VwdGlvbignRmFpbGVkIHRvIHBhcnNlICJuYW1lIiBmcm9tIHB1YnNwZWMueWFtbCcpOwogIH0KCiAgZmluYWwgcHJvZHVjdGlvbkRlcHMgPSBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKAogICAgcGFja2FnZU5hbWU6IG5hbWUsCiAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICApOwoKICBmaW5hbCBwYXRoRGVwZW5kZW5jaWVzID0gcGFja2FnZUNvbmZpZy5wYWNrYWdlcwogICAgICAud2hlcmUoKHApID0+IHAucmVsYXRpdmVSb290ICYmIHByb2R1Y3Rpb25EZXBzLmNvbnRhaW5zKHAubmFtZSkpCiAgICAgIC5tYXAoKHApID0+IFBhdGhEZXBlbmRlbmN5KG5hbWU6IHAubmFtZSwgcGF0aDogcC5yb290LnBhdGgpKTsKCiAgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcygKICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICBwYXRoRGVwZW5kZW5jaWVzOiBwYXRoRGVwZW5kZW5jaWVzLAogICk7Cn0KCnZvaWQgd3JpdGVQYXRoRGVwZW5kZW5jeU92ZXJyaWRlcyh7CiAgcmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgSXRlcmFibGU8UGF0aERlcGVuZGVuY3k+IHBhdGhEZXBlbmRlbmNpZXMsCn0pIHsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzRmlsZSA9IEZpbGUoCiAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICApOwogIGZpbmFsIGNvbnRlbnRzID0gcHVic3BlY092ZXJyaWRlc0ZpbGUucmVhZEFzU3RyaW5nU3luYygpOwogIGZpbmFsIG92ZXJyaWRlcyA9IGxvYWRZYW1sKGNvbnRlbnRzKSBhcyBZYW1sTWFwOwogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpOwogIGlmICghb3ZlcnJpZGVzLmNvbnRhaW5zS2V5KCdkZXBlbmRlbmN5X292ZXJyaWRlcycpKSB7CiAgICBlZGl0b3IudXBkYXRlKFsnZGVwZW5kZW5jeV9vdmVycmlkZXMnXSwge30pOwogIH0KICBmb3IgKGZpbmFsIHBhY2thZ2UgaW4gcGF0aERlcGVuZGVuY2llcykgewogICAgZWRpdG9yLnVwZGF0ZSgKICAgICAgWydkZXBlbmRlbmN5X292ZXJyaWRlcycsIHBhY2thZ2UubmFtZV0sCiAgICAgIHsncGF0aCc6IHBhdGgucmVsYXRpdmUocGFja2FnZS5wYXRoLCBmcm9tOiBwcm9qZWN0RGlyZWN0b3J5KX0sCiAgICApOwogIH0KICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYyhlZGl0b3IudG9TdHJpbmcoKSk7Cn0KCi8vLyBFeHRyYWN0IHRoZSBwYWNrYWdlIG5hbWUgZnJvbSB0aGUgcHVic3BlYy55YW1sIGluIFtwcm9qZWN0RGlyZWN0b3J5XS4KU3RyaW5nPyBnZXRQYWNrYWdlTmFtZSh7cmVxdWlyZWQgU3RyaW5nIHByb2plY3REaXJlY3Rvcnl9KSB7CiAgZmluYWwgcHVic3BlY0ZpbGUgPSBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlYy55YW1sJykpOwogIGZpbmFsIHB1YnNwZWMgPSBsb2FkWWFtbChwdWJzcGVjRmlsZS5yZWFkQXNTdHJpbmdTeW5jKCkpOwogIGlmIChwdWJzcGVjIGlzISBZYW1sTWFwKSByZXR1cm4gbnVsbDsKCiAgZmluYWwgbmFtZSA9IHB1YnNwZWNbJ25hbWUnXTsKICBpZiAobmFtZSBpcyEgU3RyaW5nKSByZXR1cm4gbnVsbDsKCiAgcmV0dXJuIG5hbWU7Cn0KCi8vLyBCdWlsZCBhIGNvbXBsZXRlIGxpc3Qgb2YgZGVwZW5kZW5jaWVzIChkaXJlY3QgYW5kIHRyYW5zaXRpdmUpLgpTZXQ8U3RyaW5nPiBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKHsKICByZXF1aXJlZCBTdHJpbmcgcGFja2FnZU5hbWUsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKfSkgewogIGZpbmFsIGRlcGVuZGVuY2llcyA9IDxTdHJpbmc+e307CiAgZmluYWwgcm9vdCA9IHBhY2thZ2VHcmFwaC5yb290cy5maXJzdFdoZXJlKChyb290KSA9PiByb290ID09IHBhY2thZ2VOYW1lKTsKICBmaW5hbCByb290UGFja2FnZSA9IHBhY2thZ2VHcmFwaC5wYWNrYWdlcy5maXJzdFdoZXJlKChwKSA9PiBwLm5hbWUgPT0gcm9vdCk7CiAgZmluYWwgZGVwZW5kZW5jaWVzVG9WaXNpdCA9IDxTdHJpbmc+Wy4uLnJvb3RQYWNrYWdlLmRlcGVuZGVuY2llc107CgogIGRvIHsKICAgIGZpbmFsIGRpc2NvdmVyZWREZXBlbmRlbmNpZXMgPSA8U3RyaW5nPltdOwogICAgZm9yIChmaW5hbCBkZXBlbmRlbmN5VG9WaXNpdCBpbiBkZXBlbmRlbmNpZXNUb1Zpc2l0KSB7CiAgICAgIGZpbmFsIHBhY2thZ2UgPSBwYWNrYWdlR3JhcGgucGFja2FnZXMuZmlyc3RXaGVyZSgKICAgICAgICAocCkgPT4gcC5uYW1lID09IGRlcGVuZGVuY3lUb1Zpc2l0LAogICAgICApOwogICAgICBkZXBlbmRlbmNpZXMuYWRkKHBhY2thZ2UubmFtZSk7CiAgICAgIGZvciAoZmluYWwgcGFja2FnZURlcGVuZGVuY3kgaW4gcGFja2FnZS5kZXBlbmRlbmNpZXMpIHsKICAgICAgICAvLyBBdm9pZCBpbmZpbml0ZSBsb29wcyBmcm9tIGRlcGVuZGVuY3kgY3ljbGVzIChjaXJjdWxhciBkZXBlbmRlbmNpZXMpLgogICAgICAgIGlmIChkZXBlbmRlbmNpZXMuY29udGFpbnMocGFja2FnZURlcGVuZGVuY3kpKSBjb250aW51ZTsKICAgICAgICBkaXNjb3ZlcmVkRGVwZW5kZW5jaWVzLmFkZChwYWNrYWdlRGVwZW5kZW5jeSk7CiAgICAgIH0KICAgIH0KICAgIGRlcGVuZGVuY2llc1RvVmlzaXQKICAgICAgLi5jbGVhcigpCiAgICAgIC4uYWRkQWxsKGRpc2NvdmVyZWREZXBlbmRlbmNpZXMpOwogIH0gd2hpbGUgKGRlcGVuZGVuY2llc1RvVmlzaXQuaXNOb3RFbXB0eSk7CiAgcmV0dXJuIGRlcGVuZGVuY2llczsKfQo=", + "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19wcm9kX3NlcnZlcl9ob29rcy9kYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhY2thZ2VfY29uZmlnL3BhY2thZ2VfY29uZmlnLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sX2VkaXQveWFtbF9lZGl0LmRhcnQnOwoKLy8vIE9wdHMgb3V0IG9mIGRhcnQgd29ya3NwYWNlcyB1bnRpbCB3ZSBjYW4gZ2VuZXJhdGUgcGVyIHBhY2thZ2UgbG9ja2ZpbGVzLgovLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhcnQtbGFuZy9wdWIvaXNzdWVzLzQ1OTQKVm9pZENhbGxiYWNrIGRpc2FibGVXb3Jrc3BhY2VSZXNvbHV0aW9uKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBQYWNrYWdlQ29uZmlnIHBhY2thZ2VDb25maWcsCiAgcmVxdWlyZWQgUGFja2FnZUdyYXBoIHBhY2thZ2VHcmFwaCwKICByZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCBTdHJpbmcgd29ya3NwYWNlUm9vdCwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIFZvaWRDYWxsYmFjayByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKICB0cnkgewogICAgcmVzdG9yZVdvcmtzcGFjZVJlc29sdXRpb24gPSBvdmVycmlkZVJlc29sdXRpb25JblB1YnNwZWNPdmVycmlkZXMoCiAgICAgIHByb2plY3REaXJlY3RvcnksCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlJyk7CiAgICBleGl0KDEpOwogICAgcmV0dXJuICgpIHt9OyAvLyBuby1vcAogIH0KCiAgdHJ5IHsKICAgIG92ZXJyaWRlUGF0aERlcGVuZGVuY2llc0luUHVic3BlY092ZXJyaWRlcygKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgcGFja2FnZUNvbmZpZzogcGFja2FnZUNvbmZpZywKICAgICAgcGFja2FnZUdyYXBoOiBwYWNrYWdlR3JhcGgsCiAgICApOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlKSB7CiAgICByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbigpOwogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZScpOwogICAgZXhpdCgxKTsKICAgIHJldHVybiAoKSB7fTsgLy8gbm8tb3AKICB9CgogIHJldHVybiByZXN0b3JlV29ya3NwYWNlUmVzb2x1dGlvbjsKfQoKLy8vIEFkZCByZXNvbHV0aW9uOm51bGwgdG8gcHVic3BlY19vdmVycmlkZXMueWFtbC4KVm9pZENhbGxiYWNrIG92ZXJyaWRlUmVzb2x1dGlvbkluUHVic3BlY092ZXJyaWRlcyhTdHJpbmcgcHJvamVjdERpcmVjdG9yeSkgewogIGZpbmFsIHB1YnNwZWNPdmVycmlkZXNGaWxlID0gRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICk7CgogIGlmICghcHVic3BlY092ZXJyaWRlc0ZpbGUuZXhpc3RzU3luYygpKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuIHB1YnNwZWNPdmVycmlkZXNGaWxlLmRlbGV0ZVN5bmM7CiAgfQoKICBmaW5hbCBjb250ZW50cyA9IHB1YnNwZWNPdmVycmlkZXNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKTsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzID0gbG9hZFlhbWwoY29udGVudHMpIGFzIFlhbWxNYXA/OwoKICBpZiAocHVic3BlY092ZXJyaWRlcyA9PSBudWxsKSB7CiAgICBwdWJzcGVjT3ZlcnJpZGVzRmlsZS53cml0ZUFzU3RyaW5nU3luYygncmVzb2x1dGlvbjogbnVsbCcpOwogICAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKICB9CgogIGlmIChwdWJzcGVjT3ZlcnJpZGVzWydyZXNvbHV0aW9uJ10gPT0gJ251bGwnKSByZXR1cm4gKCkge307IC8vIG5vLW9wCgogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpLi51cGRhdGUoWydyZXNvbHV0aW9uJ10sIG51bGwpOwogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKCiAgcmV0dXJuICgpID0+IHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGNvbnRlbnRzKTsKfQoKLy8vIEFkZCBvdmVycmlkZXMgZm9yIGFsbCBwYXRoIGRlcGVuZGVuY2llcyB0byBgcHVic3BlY19vdmVycmlkZXMueWFtbGAKdm9pZCBvdmVycmlkZVBhdGhEZXBlbmRlbmNpZXNJblB1YnNwZWNPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIFBhY2thZ2VDb25maWcgcGFja2FnZUNvbmZpZywKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgbmFtZSA9IGdldFBhY2thZ2VOYW1lKHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnkpOwogIGlmIChuYW1lID09IG51bGwpIHsKICAgIHRocm93IEV4Y2VwdGlvbignRmFpbGVkIHRvIHBhcnNlICJuYW1lIiBmcm9tIHB1YnNwZWMueWFtbCcpOwogIH0KCiAgZmluYWwgcHJvZHVjdGlvbkRlcHMgPSBnZXRQcm9kdWN0aW9uRGVwZW5kZW5jaWVzKAogICAgcGFja2FnZU5hbWU6IG5hbWUsCiAgICBwYWNrYWdlR3JhcGg6IHBhY2thZ2VHcmFwaCwKICApOwoKICBmaW5hbCBwYXRoRGVwZW5kZW5jaWVzID0gcGFja2FnZUNvbmZpZy5wYWNrYWdlcy53aGVyZSgKICAgIChwYWNrYWdlKSA9PiBwYWNrYWdlLnJlbGF0aXZlUm9vdCAmJiBwcm9kdWN0aW9uRGVwcy5jb250YWlucyhwYWNrYWdlLm5hbWUpLAogICk7CgogIHdyaXRlUGF0aERlcGVuZGVuY3lPdmVycmlkZXMoCiAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgcGF0aERlcGVuZGVuY2llczogcGF0aERlcGVuZGVuY2llcywKICApOwp9Cgp2b2lkIHdyaXRlUGF0aERlcGVuZGVuY3lPdmVycmlkZXMoewogIHJlcXVpcmVkIFN0cmluZyBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIEl0ZXJhYmxlPFBhY2thZ2U+IHBhdGhEZXBlbmRlbmNpZXMsCn0pIHsKICBmaW5hbCBwdWJzcGVjT3ZlcnJpZGVzRmlsZSA9IEZpbGUoCiAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeSwgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICApOwogIGZpbmFsIGNvbnRlbnRzID0gcHVic3BlY092ZXJyaWRlc0ZpbGUucmVhZEFzU3RyaW5nU3luYygpOwogIGZpbmFsIG92ZXJyaWRlcyA9IGxvYWRZYW1sKGNvbnRlbnRzKSBhcyBZYW1sTWFwOwogIGZpbmFsIGVkaXRvciA9IFlhbWxFZGl0b3IoY29udGVudHMpOwogIGlmICghb3ZlcnJpZGVzLmNvbnRhaW5zS2V5KCdkZXBlbmRlbmN5X292ZXJyaWRlcycpKSB7CiAgICBlZGl0b3IudXBkYXRlKFsnZGVwZW5kZW5jeV9vdmVycmlkZXMnXSwge30pOwogIH0KICBmb3IgKGZpbmFsIHBhY2thZ2UgaW4gcGF0aERlcGVuZGVuY2llcykgewogICAgZWRpdG9yLnVwZGF0ZSgKICAgICAgWydkZXBlbmRlbmN5X292ZXJyaWRlcycsIHBhY2thZ2UubmFtZV0sCiAgICAgIHsncGF0aCc6IHBhdGgucmVsYXRpdmUocGFja2FnZS5yb290LnBhdGgsIGZyb206IHByb2plY3REaXJlY3RvcnkpfSwKICAgICk7CiAgfQogIHB1YnNwZWNPdmVycmlkZXNGaWxlLndyaXRlQXNTdHJpbmdTeW5jKGVkaXRvci50b1N0cmluZygpKTsKfQoKLy8vIEV4dHJhY3QgdGhlIHBhY2thZ2UgbmFtZSBmcm9tIHRoZSBwdWJzcGVjLnlhbWwgaW4gW3Byb2plY3REaXJlY3RvcnldLgpTdHJpbmc/IGdldFBhY2thZ2VOYW1lKHtyZXF1aXJlZCBTdHJpbmcgcHJvamVjdERpcmVjdG9yeX0pIHsKICBmaW5hbCBwdWJzcGVjRmlsZSA9IEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnksICdwdWJzcGVjLnlhbWwnKSk7CiAgZmluYWwgcHVic3BlYyA9IGxvYWRZYW1sKHB1YnNwZWNGaWxlLnJlYWRBc1N0cmluZ1N5bmMoKSk7CiAgaWYgKHB1YnNwZWMgaXMhIFlhbWxNYXApIHJldHVybiBudWxsOwoKICBmaW5hbCBuYW1lID0gcHVic3BlY1snbmFtZSddOwogIGlmIChuYW1lIGlzISBTdHJpbmcpIHJldHVybiBudWxsOwoKICByZXR1cm4gbmFtZTsKfQoKLy8vIEJ1aWxkIGEgY29tcGxldGUgbGlzdCBvZiBkZXBlbmRlbmNpZXMgKGRpcmVjdCBhbmQgdHJhbnNpdGl2ZSkuClNldDxTdHJpbmc+IGdldFByb2R1Y3Rpb25EZXBlbmRlbmNpZXMoewogIHJlcXVpcmVkIFN0cmluZyBwYWNrYWdlTmFtZSwKICByZXF1aXJlZCBQYWNrYWdlR3JhcGggcGFja2FnZUdyYXBoLAp9KSB7CiAgZmluYWwgZGVwZW5kZW5jaWVzID0gPFN0cmluZz57fTsKICBmaW5hbCByb290ID0gcGFja2FnZUdyYXBoLnJvb3RzLmZpcnN0V2hlcmUoKHJvb3QpID0+IHJvb3QgPT0gcGFja2FnZU5hbWUpOwogIGZpbmFsIHJvb3RQYWNrYWdlID0gcGFja2FnZUdyYXBoLnBhY2thZ2VzLmZpcnN0V2hlcmUoKHApID0+IHAubmFtZSA9PSByb290KTsKICBmaW5hbCBkZXBlbmRlbmNpZXNUb1Zpc2l0ID0gPFN0cmluZz5bLi4ucm9vdFBhY2thZ2UuZGVwZW5kZW5jaWVzXTsKCiAgZG8gewogICAgZmluYWwgZGlzY292ZXJlZERlcGVuZGVuY2llcyA9IDxTdHJpbmc+W107CiAgICBmb3IgKGZpbmFsIGRlcGVuZGVuY3lUb1Zpc2l0IGluIGRlcGVuZGVuY2llc1RvVmlzaXQpIHsKICAgICAgZmluYWwgcGFja2FnZSA9IHBhY2thZ2VHcmFwaC5wYWNrYWdlcy5maXJzdFdoZXJlKAogICAgICAgIChwKSA9PiBwLm5hbWUgPT0gZGVwZW5kZW5jeVRvVmlzaXQsCiAgICAgICk7CiAgICAgIGRlcGVuZGVuY2llcy5hZGQocGFja2FnZS5uYW1lKTsKICAgICAgZm9yIChmaW5hbCBwYWNrYWdlRGVwZW5kZW5jeSBpbiBwYWNrYWdlLmRlcGVuZGVuY2llcykgewogICAgICAgIC8vIEF2b2lkIGluZmluaXRlIGxvb3BzIGZyb20gZGVwZW5kZW5jeSBjeWNsZXMgKGNpcmN1bGFyIGRlcGVuZGVuY2llcykuCiAgICAgICAgaWYgKGRlcGVuZGVuY2llcy5jb250YWlucyhwYWNrYWdlRGVwZW5kZW5jeSkpIGNvbnRpbnVlOwogICAgICAgIGRpc2NvdmVyZWREZXBlbmRlbmNpZXMuYWRkKHBhY2thZ2VEZXBlbmRlbmN5KTsKICAgICAgfQogICAgfQogICAgZGVwZW5kZW5jaWVzVG9WaXNpdAogICAgICAuLmNsZWFyKCkKICAgICAgLi5hZGRBbGwoZGlzY292ZXJlZERlcGVuZGVuY2llcyk7CiAgfSB3aGlsZSAoZGVwZW5kZW5jaWVzVG9WaXNpdC5pc05vdEVtcHR5KTsKICByZXR1cm4gZGVwZW5kZW5jaWVzOwp9Cg==", "type": "text" }, { @@ -313,12 +109,6 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ "Ly8gR0VORVJBVEVEIENPREUgLSBETyBOT1QgTU9ESUZZIEJZIEhBTkQKCi8vIGlnbm9yZV9mb3JfZmlsZTogdHlwZT1saW50CgpwYXJ0IG9mICdwYWNrYWdlX2dyYXBoLmRhcnQnOwoKLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLy8gSnNvblNlcmlhbGl6YWJsZUdlbmVyYXRvcgovLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoKUGFja2FnZUdyYXBoIF8kUGFja2FnZUdyYXBoRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoJywKICAgICAganNvbiwKICAgICAgKCRjaGVja2VkQ29udmVydCkgewogICAgICAgIGZpbmFsIHZhbCA9IFBhY2thZ2VHcmFwaCgKICAgICAgICAgIHJvb3RzOiAkY2hlY2tlZENvbnZlcnQoJ3Jvb3RzJywKICAgICAgICAgICAgICAodikgPT4gKHYgYXMgTGlzdDxkeW5hbWljPikubWFwKChlKSA9PiBlIGFzIFN0cmluZykudG9MaXN0KCkpLAogICAgICAgICAgcGFja2FnZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAncGFja2FnZXMnLAogICAgICAgICAgICAgICh2KSA9PiAodiBhcyBMaXN0PGR5bmFtaWM+KQogICAgICAgICAgICAgICAgICAubWFwKChlKSA9PgogICAgICAgICAgICAgICAgICAgICAgUGFja2FnZUdyYXBoUGFja2FnZS5mcm9tSnNvbihlIGFzIE1hcDxTdHJpbmcsIGR5bmFtaWM+KSkKICAgICAgICAgICAgICAgICAgLnRvTGlzdCgpKSwKICAgICAgICAgIGNvbmZpZ1ZlcnNpb246CiAgICAgICAgICAgICAgJGNoZWNrZWRDb252ZXJ0KCdjb25maWdWZXJzaW9uJywgKHYpID0+ICh2IGFzIG51bSkudG9JbnQoKSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsKClBhY2thZ2VHcmFwaFBhY2thZ2UgXyRQYWNrYWdlR3JhcGhQYWNrYWdlRnJvbUpzb24oTWFwPFN0cmluZywgZHluYW1pYz4ganNvbikgPT4KICAgICRjaGVja2VkQ3JlYXRlKAogICAgICAnUGFja2FnZUdyYXBoUGFja2FnZScsCiAgICAgIGpzb24sCiAgICAgICgkY2hlY2tlZENvbnZlcnQpIHsKICAgICAgICBmaW5hbCB2YWwgPSBQYWNrYWdlR3JhcGhQYWNrYWdlKAogICAgICAgICAgbmFtZTogJGNoZWNrZWRDb252ZXJ0KCduYW1lJywgKHYpID0+IHYgYXMgU3RyaW5nKSwKICAgICAgICAgIHZlcnNpb246ICRjaGVja2VkQ29udmVydCgndmVyc2lvbicsICh2KSA9PiB2IGFzIFN0cmluZyksCiAgICAgICAgICBkZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgICBkZXZEZXBlbmRlbmNpZXM6ICRjaGVja2VkQ29udmVydCgKICAgICAgICAgICAgICAnZGV2RGVwZW5kZW5jaWVzJywKICAgICAgICAgICAgICAodikgPT4KICAgICAgICAgICAgICAgICAgKHYgYXMgTGlzdDxkeW5hbWljPj8pPy5tYXAoKGUpID0+IGUgYXMgU3RyaW5nKS50b0xpc3QoKSA/PwogICAgICAgICAgICAgICAgICBbXSksCiAgICAgICAgKTsKICAgICAgICByZXR1cm4gdmFsOwogICAgICB9LAogICAgKTsK", "type": "text" }, - { - "path": "lib/src/path_dependency.dart", - "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CgovLy8ge0B0ZW1wbGF0ZSBwYXRoX2RlcGVuZGVuY3l9Ci8vLyBBIHBhdGggZGVwZW5kZW5jeSB0aGF0IHRoZSBEYXJ0IEZyb2cgcHJvamVjdCByZWxpZXMgb24uCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4vbXlfcGFja2FnZQovLy8gYGBgCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQYXRoRGVwZW5kZW5jeSB7CiAgLy8vIHtAbWFjcm8gcGF0aF9kZXBlbmRlbmN5fQogIGNvbnN0IFBhdGhEZXBlbmRlbmN5KHtyZXF1aXJlZCB0aGlzLm5hbWUsIHJlcXVpcmVkIHRoaXMucGF0aH0pOwoKICAvLy8gVGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIG5hbWU7CgogIC8vLyBUaGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgcGF0aDsKfQoKLy8vIHtAdGVtcGxhdGUgZXh0ZXJuYWxfcGF0aF9kZXBlbmRlbmN5fQovLy8gQSBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3Qgd2l0aGluIHRoZSBidW5kbGVkIERhcnQgRnJvZyBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLwovLy8gRm9yIGV4YW1wbGU6Ci8vLyBgYGB5YW1sCi8vLyBuYW1lOiBteV9kYXJ0X2Zyb2dfcHJvamVjdAovLy8gZGVwZW5kZW5jaWVzOgovLy8gICBteV9wYWNrYWdlOgovLy8gICAgIHBhdGg6IC4uL215X3BhY2thZ2UKLy8vIGBgYAovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSBleHRlbmRzIFBhdGhEZXBlbmRlbmN5IHsKICAvLy8ge0BtYWNybyBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9CiAgY29uc3QgRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSh7cmVxdWlyZWQgc3VwZXIubmFtZSwgcmVxdWlyZWQgc3VwZXIucGF0aH0pOwoKICAvLy8gQ29waWVzIHRoZSBbRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeV0gdG8gW3RhcmdldERpcmVjdG9yeV0uCiAgRnV0dXJlPEV4dGVybmFsUGF0aERlcGVuZGVuY3k+IGNvcHlUbyh7CiAgICByZXF1aXJlZCBEaXJlY3RvcnkgdGFyZ2V0RGlyZWN0b3J5LAogICAgQ29weVBhdGggY29weVBhdGggPSBpby5jb3B5UGF0aCwKICB9KSBhc3luYyB7CiAgICBhd2FpdCBjb3B5UGF0aChwYXRoLCB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgICByZXR1cm4gRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeShuYW1lOiBuYW1lLCBwYXRoOiB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgfQp9Cg==", - "type": "text" - }, { "path": "lib/src/pubspec_lock/pubspec_lock.dart", "data": @@ -394,7 +184,7 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ { "path": "test/src/create_external_packages_folder_test.dart", "data": - "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwoKICAgIHRlc3QoImRvZXNuJ3Qgb3ZlcndyaXRlIGV4aXN0aW5nIG92ZXJyaWRlcyIsICgpIGFzeW5jIHsKICAgICAgY29uc3QgZXhpc3RpbmdPdmVycmlkZXMgPSAnJycKZGVwZW5kZW5jeV9vdmVycmlkZXM6CiAgZGFydF9mcm9nOgogICAgZ2l0OgogICAgICB1cmw6IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXJ0LWZyb2ctZGV2L2RhcnRfZnJvZwogICAgICBwYXRoOiBwYWNrYWdlcy9kYXJ0X2Zyb2cKJycnOwogICAgICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICApCiAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAuLndyaXRlQXNTdHJpbmdTeW5jKGV4aXN0aW5nT3ZlcnJpZGVzKTsKICAgICAgRmlsZSgKICAgICAgICBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJyksCiAgICAgICkud3JpdGVBc1N0cmluZ1N5bmMoZm9vUGF0aFdpdGhJbnRlcm5hbERlcGVuZGVuY3kpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZyb20gPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIHRvID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnZm9vJywKICAgICAgKTsKICAgICAgZXhwZWN0KGNvcHlDYWxscywgWyckZnJvbSAtPiAkdG8nXSk7CiAgICAgIGV4cGVjdCgKICAgICAgICBGaWxlKAogICAgICAgICAgcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJywgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnKSwKICAgICAgICApLnJlYWRBc1N0cmluZ1N5bmMoKSwKICAgICAgICBjb250YWlucyhleGlzdGluZ092ZXJyaWRlcyksCiAgICAgICk7CiAgICB9KTsKICB9KTsKfQo=", + "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KCdidW5kbGVzIGV4dGVybmFsIGRlcGVuZGVuY2llcyB3aXRoIGV4dGVybmFsIGRlcGVuZGVuY2llcycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ3B1YnNwZWMubG9jaycpKQogICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGgpOwogICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgYXdhaXQgY3JlYXRlRXh0ZXJuYWxQYWNrYWdlc0ZvbGRlcigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgIGNvcHlQYXRoOiAoZnJvbSwgdG8pIGFzeW5jIHsKICAgICAgICAgIGNvcHlDYWxscy5hZGQoJyRmcm9tIC0+ICR0bycpOwogICAgICAgICAgRmlsZSgKICAgICAgICAgICAgcGF0aC5qb2luKHRvLCAncHVic3BlY19vdmVycmlkZXMueWFtbCcpLAogICAgICAgICAgKS5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgICAgICAgfSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnkgPSBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnLi4vLi4vZm9vJyk7CiAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwoKICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9IHBhdGguam9pbigKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgJy4uLy4uL2ZvbzInLAogICAgICApOwogICAgICBmaW5hbCBzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0ID0gcGF0aC5qb2luKAogICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAnYnVpbGQnLAogICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICk7CiAgICAgIGV4cGVjdChjb3B5Q2FsbHMsIFsKICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICckc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSAtPiAkc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCcsCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgiZG9lc24ndCBidW5kbGUgaW50ZXJuYWwgcGF0aCBkZXBlbmRlbmNpZXMiLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoV2l0aEludGVybmFsRGVwZW5kZW5jeSk7CiAgICAgIGZpbmFsIGNvcHlDYWxscyA9IDxTdHJpbmc+W107CgogICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IHByb2plY3REaXJlY3RvcnksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgYXN5bmMgewogICAgICAgICAgY29weUNhbGxzLmFkZCgnJGZyb20gLT4gJHRvJyk7CiAgICAgICAgICBGaWxlKAogICAgICAgICAgICBwYXRoLmpvaW4odG8sICdwdWJzcGVjX292ZXJyaWRlcy55YW1sJyksCiAgICAgICAgICApLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZnJvbSA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28nKTsKICAgICAgZmluYWwgdG8gPSBwYXRoLmpvaW4oCiAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICdidWlsZCcsCiAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICdmb28nLAogICAgICApOwogICAgICBleHBlY3QoY29weUNhbGxzLCBbJyRmcm9tIC0+ICR0byddKTsKICAgIH0pOwogIH0pOwp9Cg==", "type": "text" }, {