Back to build
Raw log | Switch to full mode | Login

{"name":"dart2js/inference/type_mask2_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 12.000569s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/inference/type_mask2_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n--test from kernel------------------------------------------------\n\nstderr:\nUnhandled exception:\nExpect.isFalse(true) fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.isFalse (package:expect/expect.dart:142:5)\n#2 testStringSubtypes (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/inference/type_mask2_test.dart:223:10)\n<asynchronous suspension>\n#3 main.runTests (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/inference/type_mask2_test.dart:29:11)\n<asynchronous suspension>\n#4 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/inference/type_mask2_test.dart:34:19)\n<asynchronous suspension>\n#5 asyncTest (package:async_helper/async_helper.dart:88:11)\n#6 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/inference/type_mask2_test.dart:32:3)\n#7 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#8 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/inference/type_mask2_test\n"} {"name":"dart2js/codegen/string_escapes_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 14.000540s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/string_escapes_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n--test from kernel----------------------------------------------\n\nstderr:\nUnhandled exception:\nExpect.isTrue(false, 'function() {\n return \"\\n()\";\n}') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.isTrue (package:expect/expect.dart:133:5)\n#2 main.runTests.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/string_escapes_test.dart:20:14)\n#3 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#4 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#5 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#6 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#7 Future._complete (dart:async/future_impl.dart:473:7)\n#8 _SyncCompleter.complete (dart:async/future_impl.dart:51:12)\n#9 _AsyncAwaitCompleter.complete (dart:async/runtime/libasync_patch.dart:28:18)\n#10 _completeOnAsyncReturn (dart:async/runtime/libasync_patch.dart:294:13)\n#11 compile (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart)\n<asynchronous suspension>\n#12 main.runTests.compileExpression (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/string_escapes_test.dart:16:14)\n#13 main.runTests (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/string_escapes_test.dart:19:28)\n<asynchronous suspension>\n#14 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/string_escapes_test.dart:101:19)\n<asynchronous suspension>\n#15 asyncTest (package:async_helper/async_helper.dart:88:11)\n#16 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/string_escapes_test.dart:99:3)\n#17 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#18 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/codegen/string_escapes_test\n"} {"name":"dart2js/codegen/logical_expression_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 16.000310s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/logical_expression_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n--test from kernel------------------------------------------------\n\nstderr:\nUnhandled exception:\nExpect.isTrue(false, 'Pattern 'var x = x == null;\n if \\(x\\) [^;]+;\n if \\(x \\|\\| [a-zA-Z0-9$.]+\\(\\) === true\\) [^;]+;\n if \\(x \\|\\| [a-zA-Z0-9$.]+\\(\\) === true\\) [^;]+;' not found in\nfunction(list, bar) {\n var t1 = list == null;\n if (t1)\n bar.call$0();\n t1 = !t1;\n if (!t1 || bar.call$0())\n bar.call$0();\n if (!t1 || bar.call$0())\n bar.call$0();\n}\nfrom source\nvoid foo(list, bar) {\n if (list == null) bar();\n if (list == null || bar()) bar();\n if (list == null || bar()) bar();\n}\n') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.isTrue (package:expect/expect.dart:133:5)\n#2 compileAndMatchFuzzyHelper.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart:171:14)\n#3 compile (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart:85:10)\n<asynchronous suspension>\n#4 compileAndMatchFuzzyHelper (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart:164:10)\n#5 compileAndMatchFuzzy (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart:155:10)\n#6 main.runTests (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/logical_expression_test.dart:42:11)\n<asynchronous suspension>\n#7 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/logical_expression_test.dart:50:19)\n<asynchronous suspension>\n#8 asyncTest (package:async_helper/async_helper.dart:88:11)\n#9 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/logical_expression_test.dart:48:3)\n#10 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#11 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/codegen/logical_expression_test\n"} {"name":"dart2js/codegen/simple_function_subtype_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 14.000407s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/simple_function_subtype_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n--test from kernel------------------------------------------------\n\nstderr:\nUnhandled exception:\nExpect.isTrue(false, 'Expected predicate check .$is_args0') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.isTrue (package:expect/expect.dart:133:5)\n#2 main.runTest.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/simple_function_subtype_test.dart:58:16)\n#3 compile (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart:85:10)\n<asynchronous suspension>\n#4 main.runTest (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/simple_function_subtype_test.dart:55:11)\n<asynchronous suspension>\n#5 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/simple_function_subtype_test.dart:68:18)\n<asynchronous suspension>\n#6 asyncTest (package:async_helper/async_helper.dart:88:11)\n#7 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/simple_function_subtype_test.dart:66:3)\n#8 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#9 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/codegen/simple_function_subtype_test\n"} {"name":"dart2js/codegen/gvn_dynamic_field_get_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 13.000689s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/gvn_dynamic_field_get_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n--test from kernel------------------------------------------------\n\nstderr:\nUnhandled exception:\nExpect.isFalse(true, 'Found more than 1 matches') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.isFalse (package:expect/expect.dart:142:5)\n#2 checkNumberOfMatches (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/helpers/compiler_helper.dart:133:10)\n#3 main.runTests (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/gvn_dynamic_field_get_test.dart:43:5)\n<asynchronous suspension>\n#4 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/gvn_dynamic_field_get_test.dart:56:19)\n<asynchronous suspension>\n#5 asyncTest (package:async_helper/async_helper.dart:88:11)\n#6 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/gvn_dynamic_field_get_test.dart:54:3)\n#7 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#8 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/codegen/gvn_dynamic_field_get_test\n"} {"name":"dart2js/codegen/list_tracer_length_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 14.000619s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/list_tracer_length_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n\nstderr:\nUnhandled exception:\nExpect.equals(expected: <false>, actual: <true>, 'Unexpected use of 'hasRangeError' for test:\nvar a = [42];\nmain() {\n return a[0];\n}\n\nin code\n// Generated by dart2js (fast startup emitter, strong), the Dart to JavaScript compiler.\n// The code supports the following hooks:\n// dartPrint(message):\n// if this function is defined it is called instead of the Dart [print]\n// method.\n//\n// dartMainRunner(main, args):\n// if this function is defined, the Dart [main] method will not be invoked\n// directly. Instead, a closure that will invoke [main], and its arguments\n// [args] is passed to [dartMainRunner].\n//\n// dartDeferredLibraryLoader(uri, successCallback, errorCallback):\n// if this function is defined, it will be called when a deferred library\n// is loaded. It should load and eval the javascript of `uri`, and call\n// successCallback. If it fails to do so, it should call errorCallback with\n// an error.\n//\n// dartCallInstrumentation(id, qualifiedName):\n// if this function is defined, it will be called at each entry of a\n// method or constructor. Used only when compiling programs with\n// --experiment-call-instrumentation.\n//\n// defaultPackagesBase:\n// Override the location where `package:` uris are resolved from. By default\n// they are resolved under \"packages/\" from the current window location.\n{\n}\n(function dartProgram() {\n function copyProperties(from, to) {\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n to[key] = from[key];\n }\n }\n var supportsDirectProtoAccess = function() {\n var cls = function() {\n };\n cls.prototype = {p: {}};\n var object = new cls();\n if (!(object.__proto__ && object.__proto__.p === cls.prototype.p))\n return false;\n try {\n if (typeof navigator != \"undefined\" && typeof navigator.userAgent == \"string\" && navigator.userAgent.indexOf(\"Chrome/\") >= 0)\n return true;\n if (typeof version == \"function\" && version.length == 0) {\n var v = version();\n if (/^\\d+\\.\\d+\\.\\d+\\.\\d+$/.test(v))\n return true;\n }\n } catch (_) {\n }\n return false;\n }();\n function setFunctionNamesIfNecessary(holders) {\n function t() {\n }\n ;\n if (typeof t.name == \"string\")\n return;\n for (var i = 0; i < holders.length; i++) {\n var holder = holders[i];\n var keys = Object.keys(holder);\n for (var j = 0; j < keys.length; j++) {\n var key = keys[j];\n var f = holder[key];\n if (typeof f == 'function')\n f.name = key;\n }\n }\n }\n function inherit(cls, sup) {\n cls.prototype.constructor = cls;\n cls.prototype[\"$is\" + cls.name] = cls;\n if (sup != null) {\n if (supportsDirectProtoAccess) {\n cls.prototype.__proto__ = sup.prototype;\n return;\n }\n var clsPrototype = Object.create(sup.prototype);\n copyProperties(cls.prototype, clsPrototype);\n cls.prototype = clsPrototype;\n }\n }\n function inheritMany(sup, classes) {\n for (var i = 0; i < classes.length; i++)\n inherit(classes[i], sup);\n }\n function mixin(cls, mixin) {\n copyProperties(mixin.prototype, cls.prototype);\n cls.prototype.constructor = cls;\n }\n function lazy(holder, name, getterName, initializer) {\n var uninitializedSentinel = holder;\n holder[name] = uninitializedSentinel;\n holder[getterName] = function() {\n holder[getterName] = function() {\n H.throwCyclicInit(name);\n };\n var result;\n var sentinelInProgress = initializer;\n try {\n if (holder[name] === uninitializedSentinel) {\n result = holder[name] = sentinelInProgress;\n result = holder[name] = initializer();\n } else\n result = holder[name];\n } finally {\n if (result === sentinelInProgress)\n holder[name] = null;\n holder[getterName] = function() {\n return this[name];\n };\n }\n return result;\n };\n }\n function makeConstList(list) {\n list.immutable$list = Array;\n list.fixed$length = Array;\n return list;\n }\n function convertToFastObject(properties) {\n function t() {\n }\n t.prototype = properties;\n new t();\n return properties;\n }\n function convertAllToFastObject(arrayOfObjects) {\n for (var i = 0; i < arrayOfObjects.length; ++i)\n convertToFastObject(arrayOfObjects[i]);\n }\n var functionCounter = 0;\n function tearOffGetter(funcs, applyTrampolineIndex, reflectionInfo, name, isIntercepted) {\n return isIntercepted ? new Function(\"funcs\", \"applyTrampolineIndex\", \"reflectionInfo\", \"name\", \"H\", \"c\", \"return function tearOff_\" + name + functionCounter++ + \"(receiver) {\" + \"if (c === null) c = \" + \"H.closureFromTearOff\" + \"(\" + \"this, funcs, applyTrampolineIndex, reflectionInfo, false, true, name);\" + \"return new c(this, funcs[0], receiver, name);\" + \"}\")(funcs, applyTrampolineIndex, reflectionInfo, name, H, null) : new Function(\"funcs\", \"applyTrampolineIndex\", \"reflectionInfo\", \"name\", \"H\", \"c\", \"return function tearOff_\" + name + functionCounter++ + \"() {\" + \"if (c === null) c = \" + \"H.closureFromTearOff\" + \"(\" + \"this, funcs, applyTrampolineIndex, reflectionInfo, false, false, name);\" + \"return new c(this, funcs[0], null, name);\" + \"}\")(funcs, applyTrampolineIndex, reflectionInfo, name, H, null);\n }\n function tearOff(funcs, applyTrampolineIndex, reflectionInfo, isStatic, name, isIntercepted) {\n var cache = null;\n return isStatic ? function() {\n if (cache === null)\n cache = H.closureFromTearOff(this, funcs, applyTrampolineIndex, reflectionInfo, true, false, name).prototype;\n return cache;\n } : tearOffGetter(funcs, applyTrampolineIndex, reflectionInfo, name, isIntercepted);\n }\n var typesOffset = 0;\n function installTearOff(container, getterName, isStatic, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex) {\n var funs = [];\n for (var i = 0; i < funsOrNames.length; i++) {\n var fun = funsOrNames[i];\n if (typeof fun == 'string')\n fun = container[fun];\n fun.$callName = callNames[i];\n funs.push(fun);\n }\n var fun = funs[0];\n fun.$requiredArgCount = requiredParameterCount;\n fun.$defaultValues = optionalParameterDefaultValues;\n var reflectionInfo = funType;\n if (typeof reflectionInfo == \"number\")\n reflectionInfo = reflectionInfo + typesOffset;\n var name = funsOrNames[0];\n fun.$stubName = name;\n var getterFunction = tearOff(funs, applyIndex || 0, reflectionInfo, isStatic, name, isIntercepted);\n container[getterName] = getterFunction;\n if (isStatic)\n fun.$tearOff = getterFunction;\n }\n function installStaticTearOff(container, getterName, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex) {\n return installTearOff(container, getterName, true, false, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex);\n }\n function installInstanceTearOff(container, getterName, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex) {\n return installTearOff(container, getterName, false, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex);\n }\n function setOrUpdateInterceptorsByTag(newTags) {\n var tags = init.interceptorsByTag;\n if (!tags) {\n init.interceptorsByTag = newTags;\n return;\n }\n copyProperties(newTags, tags);\n }\n function setOrUpdateLeafTags(newTags) {\n var tags = init.leafTags;\n if (!tags) {\n init.leafTags = newTags;\n return;\n }\n copyProperties(newTags, tags);\n }\n function updateTypes(newTypes) {\n var types = init.types;\n var length = types.length;\n types.push.apply(types, newTypes);\n return length;\n }\n function updateHolder(holder, newHolder) {\n copyProperties(newHolder, holder);\n return holder;\n }\n var hunkHelpers = function() {\n var mkInstance = function(isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, applyIndex) {\n return function(container, getterName, name, funType) {\n return installInstanceTearOff(container, getterName, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, [name], funType, applyIndex);\n };\n },\n mkStatic = function(requiredParameterCount, optionalParameterDefaultValues, callNames, applyIndex) {\n return function(container, getterName, name, funType) {\n return installStaticTearOff(container, getterName, requiredParameterCount, optionalParameterDefaultValues, callNames, [name], funType, applyIndex);\n };\n };\n return {inherit: inherit, inheritMany: inheritMany, mixin: mixin, installStaticTearOff: installStaticTearOff, installInstanceTearOff: installInstanceTearOff, _instance_0u: mkInstance(0, 0, null, [\"call$0\"], 0), _instance_1u: mkInstance(0, 1, null, [\"call$1\"], 0), _instance_2u: mkInstance(0, 2, null, [\"call$2\"], 0), _instance_0i: mkInstance(1, 0, null, [\"call$0\"], 0), _instance_1i: mkInstance(1, 1, null, [\"call$1\"], 0), _instance_2i: mkInstance(1, 2, null, [\"call$2\"], 0), _static_0: mkStatic(0, null, [\"call$0\"], 0), _static_1: mkStatic(1, null, [\"call$1\"], 0), _static_2: mkStatic(2, null, [\"call$2\"], 0), makeConstList: makeConstList, lazy: lazy, updateHolder: updateHolder, convertToFastObject: convertToFastObject, setFunctionNamesIfNecessary: setFunctionNamesIfNecessary, updateTypes: updateTypes, setOrUpdateInterceptorsByTag: setOrUpdateInterceptorsByTag, setOrUpdateLeafTags: setOrUpdateLeafTags};\n }();\n function initializeDeferredHunk(hunk) {\n typesOffset = init.types.length;\n hunk(hunkHelpers, init, holders, $);\n }\n function getGlobalFromName(name) {\n for (var i = 0; i < holders.length; i++) {\n if (holders[i] == C)\n continue;\n if (holders[i][name])\n return holders[i][name];\n }\n }\n var C = {},\n H = {JS_CONST: function JS_CONST(t0) {\n this.code = t0;\n },\n isCheckPropertyToJsConstructorName: function(isCheckProperty) {\n return isCheckProperty.substring(3);\n },\n isDartFunctionType: function(type) {\n return 'func' in type;\n },\n isDartFutureOrType: function(type) {\n return 'futureOr' in type;\n },\n isDartVoidTypeRti: function(type) {\n return type === -1;\n },\n rawRtiToJsConstructorName: function(rti) {\n return rti.name;\n },\n unminifyOrTag: function(rawClassName) {\n var preserved = H.unmangleGlobalNameIfPreservedAnyways(rawClassName);\n if (typeof preserved === \"string\")\n return preserved;\n return rawClassName;\n },\n getRawRuntimeType: function(o) {\n return o.constructor;\n },\n builtinIsSubtype: function(type, other) {\n return '$is' + other in type.prototype;\n },\n isDartFunctionTypeRti: function(type) {\n return type.name === \"Function\";\n },\n isNullType: function(type) {\n return type.name === \"Null\";\n },\n isDartDynamicTypeRti: function(type) {\n return type == null;\n },\n isDartJsInteropTypeArgumentRti: function(type) {\n return type === -2;\n },\n isDartObjectTypeRti: function(type) {\n return type.name === \"Object\";\n },\n isNullTypeRti: function(type) {\n return type.name === \"Null\";\n },\n getType: function(index) {\n return init.types[H.intTypeCheck(index)];\n },\n S: function(value) {\n var res;\n if (typeof value === \"string\")\n return value;\n if (typeof value === \"number\") {\n if (value !== 0)\n return \"\" + value;\n } else if (true === value)\n return \"true\";\n else if (false === value)\n return \"false\";\n else if (value == null)\n return \"null\";\n res = J.toString$0$(value);\n if (typeof res !== \"string\")\n throw H.wrapException(H.argumentErrorValue(value));\n return res;\n },\n Primitives_formatType: function(className, typeArguments) {\n return H.unmangleAllIdentifiersIfPreservedAnyways(className + H.joinArguments(typeArguments, 0));\n },\n Primitives_objectTypeName: function(object) {\n return H.Primitives__objectClassName(object) + H.joinArguments(H.getRuntimeTypeInfo(object), 0);\n },\n Primitives__objectClassName: function(object) {\n var interceptor, interceptorConstructor, interceptorConstructorName, $name, t1, dispatchName, objectConstructor, match, decompiledName;\n interceptor = J.getInterceptor$(object);\n interceptorConstructor = interceptor.constructor;\n if (typeof interceptorConstructor == \"function\") {\n interceptorConstructorName = interceptorConstructor.name;\n $name = typeof interceptorConstructorName === \"string\" ? interceptorConstructorName : null;\n } else\n $name = null;\n t1 = $name == null;\n if (t1 || interceptor === C.Interceptor_methods || false) {\n dispatchName = H.constructorNameFallback(object);\n if (t1)\n $name = dispatchName;\n if (dispatchName === \"Object\") {\n objectConstructor = object.constructor;\n if (typeof objectConstructor == \"function\") {\n match = String(objectConstructor).match(/^\\s*function\\s*([\\w$]*)\\s*\\(/);\n decompiledName = match == null ? null : match[1];\n if (typeof decompiledName === \"string\" && /^\\w+$/.test(decompiledName))\n $name = decompiledName;\n }\n }\n return $name;\n }\n $name = $name;\n return H.unminifyOrTag($name.length > 1 && C.JSString_methods._codeUnitAt$1($name, 0) === 36 ? C.JSString_methods.substring$1($name, 1) : $name);\n },\n Primitives_objectToHumanReadableString: function(object) {\n return \"Instance of '\" + H.Primitives_objectTypeName(object) + \"'\";\n },\n Primitives_stringConcatUnchecked: function(string1, string2) {\n return string1 + string2;\n },\n Primitives_flattenString: function(str) {\n return str.charCodeAt(0) == 0 ? str : str;\n },\n JsCache_fetch: function(cache, key) {\n return cache[key];\n },\n iae: function(argument) {\n throw H.wrapException(H.argumentErrorValue(argument));\n },\n ioore: function(receiver, index) {\n if (receiver == null)\n J.get$length$as(receiver);\n throw H.wrapException(H.diagnoseIndexError(receiver, index));\n },\n diagnoseIndexError: function(indexable, index) {\n var $length;\n if (typeof index !== \"number\" || Math.floor(index) !== index)\n return P.ArgumentError$value(index, \"index\", null);\n $length = J.get$length$as(indexable);\n if (index < 0 || index >= $length)\n return P.IndexError$(index, indexable, \"index\", null, $length);\n return P.RangeError$value(index, \"index\", null);\n },\n argumentErrorValue: function(object) {\n return P.ArgumentError$value(object, null, null);\n },\n wrapException: function(ex) {\n var wrapper;\n if (ex == null)\n ex = P.NullThrownError$();\n wrapper = new Error();\n wrapper.dartException = ex;\n if (\"defineProperty\" in Object) {\n Object.defineProperty(wrapper, \"message\", {get: H.toStringWrapper});\n wrapper.name = \"\";\n } else\n wrapper.toString = H.toStringWrapper;\n return wrapper;\n },\n toStringWrapper: function() {\n return J.toString$0$(this.dartException);\n },\n throwConcurrentModificationError: function(collection) {\n throw H.wrapException(P.ConcurrentModificationError$(collection));\n },\n stringTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"string\")\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"String\"));\n },\n numTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"number\")\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"num\"));\n },\n boolTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"boolean\")\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"bool\"));\n },\n intTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"number\" && Math.floor(value) === value)\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"int\"));\n },\n listTypeCheck: function(value) {\n if (value == null)\n return value;\n if (!!J.getInterceptor$(value).$isList)\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"List<dynamic>\"));\n },\n extractFunctionTypeObjectFrom: function(o) {\n return H.extractFunctionTypeObjectFromInternal(J.getInterceptor$(o));\n },\n extractFunctionTypeObjectFromInternal: function(o) {\n var signature;\n if (\"$signature\" in o) {\n signature = o.$signature;\n if (typeof signature == \"number\")\n return H.getType(H.intTypeCheck(signature));\n else\n return o.$signature();\n }\n return;\n },\n functionTypeTest: function(value, functionTypeRti) {\n var functionTypeObject;\n if (value == null)\n return false;\n if (typeof value == \"function\")\n return true;\n functionTypeObject = H.extractFunctionTypeObjectFrom(value);\n if (functionTypeObject == null)\n return false;\n return H.isFunctionSubtype(functionTypeObject, functionTypeRti);\n },\n TypeErrorImplementation$: function(value, type) {\n return new H.TypeErrorImplementation(\"TypeError: \" + P.Error_safeToString(value) + \": type '\" + H._typeDescription(value) + \"' is not a subtype of type '\" + type + \"'\");\n },\n _typeDescription: function(value) {\n var functionTypeObject;\n if (value instanceof H.Closure) {\n functionTypeObject = H.extractFunctionTypeObjectFrom(value);\n if (functionTypeObject != null)\n return H.runtimeTypeToString(functionTypeObject);\n return \"Closure\";\n }\n return H.Primitives_objectTypeName(value);\n },\n throwCyclicInit: function(staticName) {\n throw H.wrapException(P.CyclicInitializationError$(H.stringTypeCheck(staticName)));\n },\n jsonEncodeNative: function(string) {\n return JSON.stringify(string);\n },\n setRuntimeTypeInfo: function(target, rti) {\n target.$ti = rti;\n return target;\n },\n getRuntimeTypeInfo: function(target) {\n if (target == null)\n return;\n return target.$ti;\n },\n getTypeArgumentByIndex: function(target, index) {\n var rti;\n H.intTypeCheck(index);\n rti = H.getRuntimeTypeInfo(target);\n return rti == null ? null : H.getIndex(rti, index);\n },\n _getRuntimeTypeAsString: function(rti, genericContext) {\n H.assertSubtype(genericContext, \"$isList\", [P.String], \"$asList\");\n return H.unminifyOrTag(H.rawRtiToJsConstructorName(H.getIndex(rti, 0))) + H._joinArguments(rti, 1, genericContext);\n },\n runtimeTypeToString: function(rti) {\n return H._runtimeTypeToString(rti, null);\n },\n _runtimeTypeToString: function(rti, genericContext) {\n var t1, t2;\n H.assertSubtype(genericContext, \"$isList\", [P.String], \"$asList\");\n if (H.isDartDynamicTypeRti(rti))\n return \"dynamic\";\n if (H.isDartVoidTypeRti(rti))\n return \"void\";\n if (H.isJsArray(rti))\n return H._getRuntimeTypeAsString(rti, genericContext);\n if (H.isJsFunction(rti))\n return H.unminifyOrTag(H.rawRtiToJsConstructorName(rti));\n if (H.isDartJsInteropTypeArgumentRti(rti))\n return \"dynamic\";\n if (H.isGenericFunctionTypeParameter(rti)) {\n H.intTypeCheck(rti);\n if (genericContext != null) {\n if (typeof rti !== \"number\")\n return rti.$lt();\n t1 = rti < 0 || rti >= genericContext.length;\n } else\n t1 = true;\n if (t1)\n return \"unexpected-generic-index:\" + H.S(rti);\n t1 = genericContext.length;\n if (typeof rti !== \"number\")\n return H.iae(rti);\n t2 = t1 - rti - 1;\n if (t2 < 0 || t2 >= t1)\n return H.ioore(genericContext, t2);\n return H.S(genericContext[t2]);\n }\n if (H.isDartFunctionType(rti))\n return H._functionRtiToString(rti, genericContext);\n if (H.isDartFutureOrType(rti))\n return \"FutureOr<\" + H._runtimeTypeToString(H.getFutureOrArgument(rti), genericContext) + \">\";\n return \"unknown-reified-type\";\n },\n _functionRtiToString: function(rti, genericContext) {\n var t1, boundsRti, outerContextLength, offset, i, i0, typeParameters, typeSep, t2, boundRti, returnTypeText, $arguments, argumentsText, sep, _i, argument, optionalArguments, namedArguments, t3;\n t1 = [P.String];\n H.assertSubtype(genericContext, \"$isList\", t1, \"$asList\");\n if (H.hasField(rti, \"bounds\")) {\n boundsRti = rti.bounds;\n if (genericContext == null) {\n genericContext = H.setRuntimeTypeInfo([], t1);\n outerContextLength = null;\n } else\n outerContextLength = genericContext.length;\n offset = genericContext.length;\n for (i = boundsRti.length, i0 = i; i0 > 0; --i0)\n C.JSArray_methods.add$1(genericContext, \"T\" + (offset + i0));\n for (typeParameters = \"<\", typeSep = \"\", i0 = 0; i0 < i; ++i0, typeSep = \", \") {\n typeParameters += typeSep;\n t1 = genericContext.length;\n t2 = t1 - i0 - 1;\n if (t2 < 0)\n return H.ioore(genericContext, t2);\n typeParameters = C.JSString_methods.$add(typeParameters, genericContext[t2]);\n boundRti = boundsRti[i0];\n if (H.isInterestingBound(boundRti))\n typeParameters += \" extends \" + H._runtimeTypeToString(boundRti, genericContext);\n }\n typeParameters += \">\";\n } else {\n typeParameters = \"\";\n outerContextLength = null;\n }\n returnTypeText = !!rti.v ? \"void\" : H._runtimeTypeToString(rti.ret, genericContext);\n if (H.hasField(rti, \"args\")) {\n $arguments = rti.args;\n for (t1 = $arguments.length, argumentsText = \"\", sep = \"\", _i = 0; _i < t1; ++_i, sep = \", \") {\n argument = $arguments[_i];\n argumentsText = argumentsText + sep + H._runtimeTypeToString(argument, genericContext);\n }\n } else {\n argumentsText = \"\";\n sep = \"\";\n }\n if (\"opt\" in rti) {\n optionalArguments = rti.opt;\n argumentsText += sep + \"[\";\n for (t1 = optionalArguments.length, sep = \"\", _i = 0; _i < t1; ++_i, sep = \", \") {\n argument = optionalArguments[_i];\n argumentsText = argumentsText + sep + H._runtimeTypeToString(argument, genericContext);\n }\n argumentsText += \"]\";\n }\n if (\"named\" in rti) {\n namedArguments = rti.named;\n argumentsText += sep + \"{\";\n for (t1 = H.extractKeys(namedArguments), t2 = t1.length, sep = \"\", _i = 0; _i < t2; ++_i, sep = \", \") {\n t3 = H.stringTypeCheck(t1[_i]);\n argumentsText = argumentsText + sep + H._runtimeTypeToString(namedArguments[t3], genericContext) + (\" \" + H.S(t3));\n }\n argumentsText += \"}\";\n }\n if (outerContextLength != null)\n genericContext.length = outerContextLength;\n return typeParameters + \"(\" + argumentsText + \") => \" + returnTypeText;\n },\n joinArguments: function(types, startIndex) {\n return H._joinArguments(types, startIndex, null);\n },\n _joinArguments: function(types, startIndex, genericContext) {\n var buffer, index, separator, allDynamic, argument;\n H.assertSubtype(genericContext, \"$isList\", [P.String], \"$asList\");\n if (types == null)\n return \"\";\n buffer = P.StringBuffer$(\"\");\n for (index = startIndex, separator = \"\", allDynamic = true; index < H.getLength(types); ++index, separator = \", \") {\n buffer.write$1(separator);\n argument = H.getIndex(types, index);\n if (argument != null)\n allDynamic = false;\n buffer.write$1(H._runtimeTypeToString(argument, genericContext));\n }\n return \"<\" + buffer.toString$0(0) + \">\";\n },\n substitute: function(substitution, $arguments) {\n if (substitution == null)\n return $arguments;\n substitution = H.invoke(substitution, $arguments);\n if (substitution == null)\n return;\n if (H.isJsArray(substitution))\n return substitution;\n if (H.isJsFunction(substitution))\n return H.invoke(substitution, $arguments);\n return $arguments;\n },\n checkSubtype: function(object, isField, checks, asField) {\n var $arguments, interceptor;\n H.stringTypeCheck(isField);\n H.listTypeCheck(checks);\n H.stringTypeCheck(asField);\n if (object == null)\n return false;\n $arguments = H.getRuntimeTypeInfo(object);\n interceptor = J.getInterceptor$(object);\n if (H.getField(interceptor, isField) == null)\n return false;\n return H.checkArguments(H.getField(interceptor, asField), $arguments, null, checks, null);\n },\n computeTypeName: function(isField, $arguments) {\n return H.Primitives_formatType(H.unminifyOrTag(H.isCheckPropertyToJsConstructorName(isField)), $arguments);\n },\n assertSubtype: function(object, isField, checks, asField) {\n H.stringTypeCheck(isField);\n H.listTypeCheck(checks);\n H.stringTypeCheck(asField);\n if (object == null)\n return object;\n if (H.checkSubtype(object, isField, checks, asField))\n return object;\n throw H.wrapException(H.TypeErrorImplementation$(object, H.computeTypeName(isField, checks)));\n },\n checkArguments: function(substitution, $arguments, sEnv, checks, tEnv) {\n return H.areSubtypes(H.substitute(substitution, $arguments), sEnv, checks, tEnv);\n },\n areSubtypes: function(s, sEnv, t, tEnv) {\n var len, i;\n if (t == null)\n return true;\n if (s == null) {\n len = H.getLength(t);\n for (i = 0; i < len; ++i)\n if (!H._isSubtype(null, null, H.getIndex(t, i), tEnv))\n return false;\n return true;\n }\n len = H.getLength(s);\n for (i = 0; i < len; ++i)\n if (!H._isSubtype(H.getIndex(s, i), sEnv, H.getIndex(t, i), tEnv))\n return false;\n return true;\n },\n isTopType: function(type) {\n return H.isDartDynamicTypeRti(type) || H.isDartVoidTypeRti(type) || H.isDartObjectTypeRti(type) || H.isDartJsInteropTypeArgumentRti(type);\n },\n isSupertypeOfNull: function(type) {\n return H.isSupertypeOfNullBase(type) || H.isSupertypeOfNullRecursive(type);\n },\n isSupertypeOfNullBase: function(type) {\n return H.isDartDynamicTypeRti(type) || H.isDartObjectTypeRti(type) || H.isNullTypeRti(type) || H.isDartVoidTypeRti(type) || H.isDartJsInteropTypeArgumentRti(type);\n },\n isSupertypeOfNullRecursive: function(type) {\n var typeArgument;\n if (H.isGenericFunctionTypeParameter(type))\n return false;\n if (H.isDartFutureOrType(type)) {\n typeArgument = H.getFutureOrArgument(type);\n return H.isSupertypeOfNullBase(type) || H.isSupertypeOfNullRecursive(typeArgument);\n }\n return false;\n },\n getFutureOrArgument: function(type) {\n return H.hasField(type, \"type\") ? H.getField(type, \"type\") : null;\n },\n checkSubtypeOfRuntimeType: function(o, t) {\n var type, rti;\n if (o == null)\n return H.isSupertypeOfNull(t);\n if (H.isTopType(t))\n return true;\n if (typeof t == \"object\") {\n if (H.isDartFutureOrType(t))\n if (H.checkSubtypeOfRuntimeType(o, H.getFutureOrArgument(t)))\n return true;\n if (H.isDartFunctionType(t))\n return H.functionTypeTest(o, t);\n }\n type = H.getRawRuntimeType(J.getInterceptor$(o));\n rti = H.getRuntimeTypeInfo(o);\n if (rti != null) {\n rti = rti.slice();\n rti.splice(0, 0, type);\n type = rti;\n }\n return H.isSubtype(type, t);\n },\n assertSubtypeOfRuntimeType: function(object, type) {\n if (object != null && !H.checkSubtypeOfRuntimeType(object, type))\n throw H.wrapException(H.TypeErrorImplementation$(object, H.runtimeTypeToString(type)));\n return object;\n },\n getArguments: function(type) {\n return H.isJsArray(type) ? type.slice(1) : null;\n },\n isSubtype: function(s, t) {\n return H._isSubtype(s, null, t, null);\n },\n _isSubtype: function(s, sEnv, t, tEnv) {\n var typeOfS, tTypeArgument, futureArguments, typeOfT, typeOfTString, substitution;\n if (H.isIdentical(s, t))\n return true;\n if (H.isTopType(t))\n return true;\n if (H.isDartJsInteropTypeArgumentRti(s))\n return true;\n if (H.isTopType(s)) {\n if (H.isGenericFunctionTypeParameter(t))\n return false;\n if (H.isDartFutureOrType(t))\n return H._isSubtype(s, sEnv, H.getFutureOrArgument(t), tEnv);\n return false;\n }\n if (H.isGenericFunctionTypeParameter(s))\n return false;\n if (H.isGenericFunctionTypeParameter(t))\n return false;\n if (H.isNullType(s))\n return true;\n if (H.isDartFunctionType(t))\n return H._isFunctionSubtype(s, sEnv, t, tEnv);\n if (H.isDartFunctionType(s))\n return H.isDartFunctionTypeRti(t);\n typeOfS = H.isJsArray(s) ? H.getIndex(s, 0) : s;\n if (H.isDartFutureOrType(t)) {\n tTypeArgument = H.getFutureOrArgument(t);\n if (H.isDartFutureOrType(s))\n return H._isSubtype(H.getFutureOrArgument(s), sEnv, tTypeArgument, tEnv);\n else if (H._isSubtype(s, sEnv, tTypeArgument, tEnv))\n return true;\n else {\n if (!H.builtinIsSubtype(typeOfS, \"Future\"))\n return false;\n futureArguments = H.substitute(H.getField(typeOfS.prototype, \"$as\" + \"Future\"), H.getArguments(s));\n return H._isSubtype(H.isJsArray(futureArguments) ? H.getIndex(futureArguments, 0) : null, sEnv, tTypeArgument, tEnv);\n }\n }\n typeOfT = H.isJsArray(t) ? H.getIndex(t, 0) : t;\n if (H.isNotIdentical(typeOfT, typeOfS)) {\n typeOfTString = H.rawRtiToJsConstructorName(typeOfT);\n if (!H.builtinIsSubtype(typeOfS, typeOfTString))\n return false;\n substitution = H.getField(typeOfS.prototype, \"$as\" + typeOfTString);\n } else\n substitution = null;\n if (!H.isJsArray(t))\n return true;\n return H.checkArguments(substitution, H.getArguments(s), sEnv, H.getArguments(t), tEnv);\n },\n isFunctionSubtype: function(s, t) {\n return H._isFunctionSubtype(s, null, t, null);\n },\n _isFunctionSubtype: function(s, sEnv, t, tEnv) {\n var sBounds, tBounds, sParameterTypes, tParameterTypes, sOptionalParameterTypes, tOptionalParameterTypes, sParametersLen, tParametersLen, sOptionalParametersLen, tOptionalParametersLen, pos, tPos, sPos, sNamedParameters, tNamedParameters;\n if (!H.isDartFunctionType(s))\n return false;\n if (H.hasField(s, \"bounds\")) {\n if (H.hasNoField(t, \"bounds\"))\n return false;\n sBounds = H.getField(s, \"bounds\");\n tBounds = H.getField(t, \"bounds\");\n if (H.getLength(sBounds) !== H.getLength(tBounds))\n return false;\n } else if (H.hasField(t, \"bounds\"))\n return false;\n if (!H._isSubtype(H.getField(s, \"ret\"), sEnv, H.getField(t, \"ret\"), tEnv))\n return false;\n sParameterTypes = H.getField(s, \"args\");\n tParameterTypes = H.getField(t, \"args\");\n sOptionalParameterTypes = H.getField(s, \"opt\");\n tOptionalParameterTypes = H.getField(t, \"opt\");\n sParametersLen = sParameterTypes != null ? H.getLength(sParameterTypes) : 0;\n tParametersLen = tParameterTypes != null ? H.getLength(tParameterTypes) : 0;\n sOptionalParametersLen = sOptionalParameterTypes != null ? H.getLength(sOptionalParameterTypes) : 0;\n tOptionalParametersLen = tOptionalParameterTypes != null ? H.getLength(tOptionalParameterTypes) : 0;\n if (sParametersLen > tParametersLen)\n return false;\n if (sParametersLen + sOptionalParametersLen < tParametersLen + tOptionalParametersLen)\n return false;\n for (pos = 0; pos < sParametersLen; ++pos)\n if (!H._isSubtype(H.getIndex(tParameterTypes, pos), tEnv, H.getIndex(sParameterTypes, pos), sEnv))\n return false;\n for (tPos = pos, sPos = 0; tPos < tParametersLen; ++sPos, ++tPos)\n if (!H._isSubtype(H.getIndex(tParameterTypes, tPos), tEnv, H.getIndex(sOptionalParameterTypes, sPos), sEnv))\n return false;\n for (tPos = 0; tPos < tOptionalParametersLen; ++sPos, ++tPos)\n if (!H._isSubtype(H.getIndex(tOptionalParameterTypes, tPos), tEnv, H.getIndex(sOptionalParameterTypes, sPos), sEnv))\n return false;\n sNamedParameters = H.getField(s, \"named\");\n tNamedParameters = H.getField(t, \"named\");\n if (tNamedParameters == null)\n return true;\n if (sNamedParameters == null)\n return false;\n return H.namedParametersSubtypeCheck(sNamedParameters, sEnv, tNamedParameters, tEnv);\n },\n namedParametersSubtypeCheck: function(s, sEnv, t, tEnv) {\n var names, t1, i, $name;\n names = Object.getOwnPropertyNames(t);\n for (t1 = names.length, i = 0; i < t1; ++i) {\n $name = names[i];\n if (!Object.hasOwnProperty.call(s, $name))\n return false;\n if (!H._isSubtype(t[$name], tEnv, s[$name], sEnv))\n return false;\n }\n return true;\n },\n isGenericFunctionTypeParameter: function(type) {\n return typeof type === \"number\";\n },\n invoke: function($function, $arguments) {\n return H.invokeOn($function, null, $arguments);\n },\n invokeOn: function($function, receiver, $arguments) {\n return $function.apply(receiver, $arguments);\n },\n getField: function(object, $name) {\n return object[$name];\n },\n getIndex: function(array, index) {\n return array[index];\n },\n getLength: function(array) {\n return array.length;\n },\n isJsArray: function(value) {\n return typeof value === \"object\" && value !== null && value.constructor === Array;\n },\n hasField: function(object, $name) {\n return $name in object;\n },\n hasNoField: function(object, $name) {\n return !H.hasField(object, $name);\n },\n isJsFunction: function(o) {\n return typeof o == \"function\";\n },\n isIdentical: function(s, t) {\n return s === t;\n },\n isNotIdentical: function(s, t) {\n return s !== t;\n },\n isInterestingBound: function(rti) {\n return rti != null && H.isNotIdentical(rti, P.Object);\n },\n constructorNameFallback: function(object) {\n return C.JS_CONST_u2C(object);\n },\n Closure: function Closure() {\n },\n TypeErrorImplementation: function TypeErrorImplementation(t0) {\n this.message = t0;\n },\n extractKeys: function(victim) {\n return J.JSArray_JSArray$markFixed(victim ? Object.keys(victim) : [], null);\n },\n unmangleGlobalNameIfPreservedAnyways: function($name) {\n return H.stringTypeCheck(H.JsCache_fetch(init.mangledGlobalNames, $name));\n },\n unmangleAllIdentifiersIfPreservedAnyways: function(str) {\n return function(str, names) {\n return str.replace(/[^<,> ]+/g, function(m) {\n return names[m] || m;\n });\n }(str, init.mangledGlobalNames);\n }\n },\n J = {\n JSArray_JSArray$typed: function(allocation, $E) {\n return allocation;\n },\n JSArray_JSArray$markFixed: function(allocation, $E) {\n return J.JSArray_markFixedList(H.setRuntimeTypeInfo(J.JSArray_JSArray$typed(allocation, $E), [$E]));\n },\n JSArray_markFixedList: function(list) {\n H.listTypeCheck(list);\n list.fixed$length = Array;\n return list;\n },\n ArrayIterator$: function(iterable, $E) {\n return new J.ArrayIterator(iterable, iterable.length, 0, [$E]);\n },\n getInterceptor$: function(receiver) {\n if (typeof receiver == \"number\") {\n if (Math.floor(receiver) == receiver)\n return J.JSInt.prototype;\n return J.JSDouble.prototype;\n }\n if (typeof receiver == \"string\")\n return J.JSString.prototype;\n if (receiver == null)\n return J.JSNull.prototype;\n if (typeof receiver == \"boolean\")\n return J.JSBool.prototype;\n if (receiver.constructor == Array)\n return J.JSArray.prototype;\n return receiver;\n },\n getInterceptor$as: function(receiver) {\n if (typeof receiver == \"string\")\n return J.JSString.prototype;\n if (receiver == null)\n return receiver;\n if (receiver.constructor == Array)\n return J.JSArray.prototype;\n return receiver;\n },\n get$length$as: function(receiver) {\n return J.getInterceptor$as(receiver).get$length(receiver);\n },\n toString$0$: function(receiver) {\n return J.getInterceptor$(receiver).toString$0(receiver);\n },\n Interceptor: function Interceptor() {\n },\n JSBool: function JSBool() {\n },\n JSNull: function JSNull() {\n },\n JSArray: function JSArray(t0) {\n this.$ti = t0;\n },\n JSUnmodifiableArray: function JSUnmodifiableArray(t0) {\n this.$ti = t0;\n },\n ArrayIterator: function ArrayIterator(t0, t1, t2, t3) {\n var _ = this;\n _._iterable = t0;\n _._length = t1;\n _._index = t2;\n _._current = null;\n _.$ti = t3;\n },\n JSNumber: function JSNumber() {\n },\n JSInt: function JSInt() {\n },\n JSDouble: function JSDouble() {\n },\n JSString: function JSString() {\n }\n },\n P = {\n Error__objectToString: function(object) {\n if (object instanceof H.Closure)\n return object.toString$0(0);\n return H.Primitives_objectToHumanReadableString(object);\n },\n Error__stringToSafeString: function(string) {\n return H.jsonEncodeNative(string);\n },\n StringBuffer$: function($content) {\n return new P.StringBuffer($content);\n },\n StringBuffer__writeAll: function(string, objects, separator) {\n var iterator = C.JSArray_methods.get$iterator(objects);\n if (!iterator.moveNext$0())\n return string;\n if (C.JSString_methods.get$isEmpty(separator)) {\n do\n string = P.StringBuffer__writeOne(string, iterator.get$current());\n while (iterator.moveNext$0());\n } else {\n string = P.StringBuffer__writeOne(string, iterator.get$current());\n for (; iterator.moveNext$0();)\n string = P.StringBuffer__writeOne(P.StringBuffer__writeOne(string, separator), iterator.get$current());\n }\n return string;\n },\n StringBuffer__writeOne: function(string, obj) {\n return H.Primitives_stringConcatUnchecked(string, H.S(obj));\n },\n Error_safeToString: function(object) {\n if (typeof object === \"number\" || typeof object === \"boolean\" || null == object)\n return J.toString$0$(object);\n if (typeof object === \"string\")\n return P.Error__stringToSafeString(object);\n return P.Error__objectToString(object);\n },\n NullThrownError$: function() {\n return new P.NullThrownError();\n },\n ArgumentError$value: function(value, $name, message) {\n return new P.ArgumentError(true, value, $name, message);\n },\n RangeError$value: function(value, $name, message) {\n return new P.RangeError(null, null, true, value, $name, \"Value not in range\");\n },\n IndexError$: function(invalidValue, indexable, $name, message, $length) {\n return new P.IndexError(indexable, $length, true, invalidValue, $name, \"Index out of range\");\n },\n UnsupportedError$: function(message) {\n return new P.UnsupportedError(message);\n },\n ConcurrentModificationError$: function(modifiedObject) {\n return new P.ConcurrentModificationError(modifiedObject);\n },\n CyclicInitializationError$: function(variableName) {\n return new P.CyclicInitializationError(variableName);\n },\n bool: function bool() {\n },\n double: function double() {\n },\n Error: function Error() {\n },\n NullThrownError: function NullThrownError() {\n },\n ArgumentError: function ArgumentError(t0, t1, t2, t3) {\n var _ = this;\n _._hasValue = t0;\n _.invalidValue = t1;\n _.name = t2;\n _.message = t3;\n },\n RangeError: function RangeError(t0, t1, t2, t3, t4, t5) {\n var _ = this;\n _.start = t0;\n _.end = t1;\n _._hasValue = t2;\n _.invalidValue = t3;\n _.name = t4;\n _.message = t5;\n },\n IndexError: function IndexError(t0, t1, t2, t3, t4, t5) {\n var _ = this;\n _.indexable = t0;\n _.length = t1;\n _._hasValue = t2;\n _.invalidValue = t3;\n _.name = t4;\n _.message = t5;\n },\n UnsupportedError: function UnsupportedError(t0) {\n this.message = t0;\n },\n ConcurrentModificationError: function ConcurrentModificationError(t0) {\n this.modifiedObject = t0;\n },\n CyclicInitializationError: function CyclicInitializationError(t0) {\n this.variableName = t0;\n },\n int: function int() {\n },\n List: function List() {\n },\n Null: function Null() {\n },\n num: function num() {\n },\n Object: function Object() {\n },\n String: function String() {\n },\n StringBuffer: function StringBuffer(t0) {\n this._contents = t0;\n },\n IterableBase_iterableToFullString: function(iterable, leftDelimiter, rightDelimiter) {\n var buffer, t1;\n if (P._isToStringVisiting(iterable))\n return leftDelimiter + \"...\" + rightDelimiter;\n buffer = P.StringBuffer$(leftDelimiter);\n t1 = $.$get$_toStringVisiting();\n C.JSArray_methods.add$1(t1, iterable);\n try {\n buffer.writeAll$2(iterable, \", \");\n } finally {\n if (0 >= t1.length)\n return H.ioore(t1, -1);\n t1.pop();\n }\n buffer.write$1(rightDelimiter);\n return J.toString$0$(buffer);\n },\n _isToStringVisiting: function(o) {\n var i, t1;\n for (i = 0; t1 = $.$get$_toStringVisiting(), i < t1.length; ++i)\n if (o === t1[i])\n return true;\n return false;\n },\n ListBase_listToString: function(list) {\n return P.IterableBase_iterableToFullString(list, \"[\", \"]\");\n }\n },\n F = {\n main: function() {\n return $.$get$a()[0];\n }\n };\n var holders = [C, H, J, P, F];\n hunkHelpers.setFunctionNamesIfNecessary(holders);\n var $ = {};\n H.JS_CONST.prototype = {};\n J.Interceptor.prototype = {\n toString$0: function(receiver) {\n return H.Primitives_objectToHumanReadableString(receiver);\n }\n };\n J.JSBool.prototype = {\n toString$0: function(receiver) {\n return String(receiver);\n },\n $isbool: 1\n };\n J.JSNull.prototype = {\n toString$0: function(receiver) {\n return \"null\";\n }\n };\n J.JSArray.prototype = {\n checkGrowable$1: function(receiver, reason) {\n if (!!receiver.fixed$length)\n throw H.wrapException(P.UnsupportedError$(reason));\n },\n add$1: function(receiver, value) {\n H.assertSubtypeOfRuntimeType(value, H.getTypeArgumentByIndex(receiver, 0));\n this.checkGrowable$1(receiver, \"add\");\n receiver.push(value);\n },\n toString$0: function(receiver) {\n return P.ListBase_listToString(receiver);\n },\n get$iterator: function(receiver) {\n return J.ArrayIterator$(receiver, H.getTypeArgumentByIndex(receiver, 0));\n },\n get$length: function(receiver) {\n return receiver.length;\n },\n $isIterable: 1,\n $isList: 1\n };\n J.JSUnmodifiableArray.prototype = {};\n J.ArrayIterator.prototype = {\n get$current: function() {\n return this._current;\n },\n moveNext$0: function() {\n var t1, $length, t2;\n t1 = this._iterable;\n $length = t1.length;\n if (this._length !== $length)\n throw H.wrapException(H.throwConcurrentModificationError(t1));\n t2 = this._index;\n if (t2 >= $length) {\n this.set$_current(null);\n return false;\n }\n this.set$_current(t1[t2]);\n ++this._index;\n return true;\n },\n set$_current: function(_current) {\n this._current = H.assertSubtypeOfRuntimeType(_current, H.getTypeArgumentByIndex(this, 0));\n }\n };\n J.JSNumber.prototype = {\n toString$0: function(receiver) {\n if (receiver === 0 && 1 / receiver < 0)\n return \"-0.0\";\n else\n return \"\" + receiver;\n },\n $isnum: 1\n };\n J.JSInt.prototype = {$isint: 1};\n J.JSDouble.prototype = {};\n J.JSString.prototype = {\n _codeUnitAt$1: function(receiver, index) {\n if (index >= receiver.length)\n throw H.wrapException(H.diagnoseIndexError(receiver, index));\n return receiver.charCodeAt(index);\n },\n $add: function(receiver, other) {\n if (typeof other !== \"string\")\n throw H.wrapException(P.ArgumentError$value(other, null, null));\n return receiver + other;\n },\n substring$2: function(receiver, startIndex, endIndex) {\n endIndex = receiver.length;\n if (startIndex > endIndex)\n throw H.wrapException(P.RangeError$value(startIndex, null, null));\n if (endIndex > endIndex)\n throw H.wrapException(P.RangeError$value(endIndex, null, null));\n return receiver.substring(startIndex, endIndex);\n },\n substring$1: function($receiver, startIndex) {\n return this.substring$2($receiver, startIndex, null);\n },\n get$isEmpty: function(receiver) {\n return receiver.length === 0;\n },\n toString$0: function(receiver) {\n return receiver;\n },\n get$length: function(receiver) {\n return receiver.length;\n },\n $isString: 1\n };\n H.Closure.prototype = {\n get$$call: function() {\n return this;\n },\n \"call*\": \"call$1\",\n $requiredArgCount: 1,\n $defaultValues: null\n };\n H.TypeErrorImplementation.prototype = {\n toString$0: function(_) {\n return this.message;\n }\n };\n P.bool.prototype = {\n toString$0: function(_) {\n return this ? \"true\" : \"false\";\n }\n };\n P.double.prototype = {};\n P.Error.prototype = {};\n P.NullThrownError.prototype = {\n toString$0: function(_) {\n return \"Throw of null.\";\n }\n };\n P.ArgumentError.prototype = {\n get$_errorName: function() {\n return \"Invalid argument\";\n },\n get$_errorExplanation: function() {\n return \"\";\n },\n toString$0: function(_) {\n var t1, nameString, message, prefix, explanation, errorValue;\n t1 = this.name;\n nameString = t1 != null ? \" (\" + t1 + \")\" : \"\";\n t1 = this.message;\n message = t1 == null ? \"\" : \": \" + t1;\n prefix = this.get$_errorName() + nameString + message;\n explanation = this.get$_errorExplanation();\n errorValue = P.Error_safeToString(this.invalidValue);\n return prefix + explanation + \": \" + errorValue;\n }\n };\n P.RangeError.prototype = {\n get$_errorName: function() {\n return \"RangeError\";\n },\n get$_errorExplanation: function() {\n return \"\";\n }\n };\n P.IndexError.prototype = {\n get$_errorName: function() {\n return \"RangeError\";\n },\n get$_errorExplanation: function() {\n var invalidValue, t1;\n invalidValue = H.intTypeCheck(this.invalidValue);\n if (typeof invalidValue !== \"number\")\n return invalidValue.$lt();\n if (invalidValue < 0)\n return \": index must not be negative\";\n t1 = this.length;\n if (t1 === 0)\n return \": no indices are valid\";\n return \": index should be less than \" + t1;\n },\n get$length: function(receiver) {\n return this.length;\n }\n };\n P.UnsupportedError.prototype = {\n toString$0: function(_) {\n return \"Unsupported operation: \" + this.message;\n }\n };\n P.ConcurrentModificationError.prototype = {\n toString$0: function(_) {\n var t1 = this.modifiedObject;\n if (t1 == null)\n return \"Concurrent modification during iteration.\";\n return \"Concurrent modification during iteration: \" + P.Error_safeToString(t1) + \".\";\n }\n };\n P.CyclicInitializationError.prototype = {\n toString$0: function(_) {\n var t1 = this.variableName;\n return t1 == null ? \"Reading static variable during its initialization\" : \"Reading static variable '\" + t1 + \"' during its initialization\";\n }\n };\n P.int.prototype = {};\n P.List.prototype = {$isIterable: 1};\n P.Null.prototype = {\n toString$0: function(_) {\n return \"null\";\n }\n };\n P.num.prototype = {};\n P.Object.prototype = {constructor: P.Object, $isObject: 1,\n toString$0: function(_) {\n return H.Primitives_objectToHumanReadableString(this);\n },\n toString: function() {\n return this.toString$0(this);\n }\n };\n P.String.prototype = {};\n P.StringBuffer.prototype = {\n get$length: function(_) {\n return this._contents.length;\n },\n write$1: function(obj) {\n this._writeString$1(obj);\n },\n writeAll$2: function(objects, separator) {\n this._contents = P.StringBuffer__writeAll(this._contents, objects, separator);\n },\n toString$0: function(_) {\n return H.Primitives_flattenString(this._contents);\n },\n _writeString$1: function(str) {\n this._contents = H.Primitives_stringConcatUnchecked(this._contents, str);\n }\n };\n (function inheritance() {\n var _inherit = hunkHelpers.inherit,\n _inheritMany = hunkHelpers.inheritMany;\n _inherit(P.Object, null);\n _inheritMany(P.Object, [H.JS_CONST, J.Interceptor, J.ArrayIterator, H.Closure, P.Error, P.bool, P.num, P.List, P.Null, P.String, P.StringBuffer]);\n _inheritMany(J.Interceptor, [J.JSBool, J.JSNull, J.JSArray, J.JSNumber, J.JSString]);\n _inherit(J.JSUnmodifiableArray, J.JSArray);\n _inheritMany(J.JSNumber, [J.JSInt, J.JSDouble]);\n _inheritMany(P.Error, [H.TypeErrorImplementation, P.NullThrownError, P.ArgumentError, P.UnsupportedError, P.ConcurrentModificationError, P.CyclicInitializationError]);\n _inheritMany(P.num, [P.double, P.int]);\n _inheritMany(P.ArgumentError, [P.RangeError, P.IndexError]);\n })();\n (function constants() {\n C.Interceptor_methods = J.Interceptor.prototype;\n C.JSArray_methods = J.JSArray.prototype;\n C.JSString_methods = J.JSString.prototype;\n C.JS_CONST_u2C = function getTagFallback(o) {\n var s = Object.prototype.toString.call(o);\n return s.substring(8, s.length - 1);\n};\n })();\n (function lazyInitializers() {\n var _lazy = hunkHelpers.lazy;\n _lazy($, \"_toStringVisiting\", \"$get$_toStringVisiting\", function() {\n return [];\n });\n _lazy($, \"a\", \"$get$a\", function() {\n return H.setRuntimeTypeInfo([42], [P.int]);\n });\n })();\n var init = {mangledGlobalNames: {int: \"int\", double: \"double\", num: \"num\", String: \"String\", bool: \"bool\", Null: \"Null\", List: \"List\"}, mangledNames: {}, getTypeFromName: getGlobalFromName, metadata: [], types: []};\n convertAllToFastObject(holders);\n convertToFastObject($);\n (function(callback) {\n if (typeof document === \"undefined\") {\n callback(null);\n return;\n }\n if (typeof document.currentScript != 'undefined') {\n callback(document.currentScript);\n return;\n }\n var scripts = document.scripts;\n function onLoad(event) {\n for (var i = 0; i < scripts.length; ++i)\n scripts[i].removeEventListener(\"load\", onLoad, false);\n callback(event.target);\n }\n for (var i = 0; i < scripts.length; ++i)\n scripts[i].addEventListener(\"load\", onLoad, false);\n })(function(currentScript) {\n init.currentScript = currentScript;\n if (typeof dartMainRunner === \"function\")\n dartMainRunner(F.main, []);\n else\n F.main([]);\n });\n})();\n') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.equals (package:expect/expect.dart:124:5)\n#2 checkRangeError (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/list_tracer_length_test.dart:94:10)\n<asynchronous suspension>\n#3 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/list_tracer_length_test.dart:103:11)\n<asynchronous suspension>\n#4 asyncTest (package:async_helper/async_helper.dart:88:11)\n#5 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/list_tracer_length_test.dart:102:3)\n#6 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#7 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/codegen/list_tracer_length_test\n"} {"name":"dart2js/codegen/side_effect_tdiv_regression_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 14.000842s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/side_effect_tdiv_regression_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n--test from kernel----------------------------------------------\n\nstderr:\nUnhandled exception:\nExpect.isTrue(false, 'Expected generated code to contain 'return c + c;':\n// Generated by dart2js (fast startup emitter, strong), the Dart to JavaScript compiler.\n// The code supports the following hooks:\n// dartPrint(message):\n// if this function is defined it is called instead of the Dart [print]\n// method.\n//\n// dartMainRunner(main, args):\n// if this function is defined, the Dart [main] method will not be invoked\n// directly. Instead, a closure that will invoke [main], and its arguments\n// [args] is passed to [dartMainRunner].\n//\n// dartDeferredLibraryLoader(uri, successCallback, errorCallback):\n// if this function is defined, it will be called when a deferred library\n// is loaded. It should load and eval the javascript of `uri`, and call\n// successCallback. If it fails to do so, it should call errorCallback with\n// an error.\n//\n// dartCallInstrumentation(id, qualifiedName):\n// if this function is defined, it will be called at each entry of a\n// method or constructor. Used only when compiling programs with\n// --experiment-call-instrumentation.\n//\n// defaultPackagesBase:\n// Override the location where `package:` uris are resolved from. By default\n// they are resolved under \"packages/\" from the current window location.\n{\n}\n(function dartProgram() {\n function copyProperties(from, to) {\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n to[key] = from[key];\n }\n }\n var supportsDirectProtoAccess = function() {\n var cls = function() {\n };\n cls.prototype = {p: {}};\n var object = new cls();\n if (!(object.__proto__ && object.__proto__.p === cls.prototype.p))\n return false;\n try {\n if (typeof navigator != \"undefined\" && typeof navigator.userAgent == \"string\" && navigator.userAgent.indexOf(\"Chrome/\") >= 0)\n return true;\n if (typeof version == \"function\" && version.length == 0) {\n var v = version();\n if (/^\\d+\\.\\d+\\.\\d+\\.\\d+$/.test(v))\n return true;\n }\n } catch (_) {\n }\n return false;\n }();\n function setFunctionNamesIfNecessary(holders) {\n function t() {\n }\n ;\n if (typeof t.name == \"string\")\n return;\n for (var i = 0; i < holders.length; i++) {\n var holder = holders[i];\n var keys = Object.keys(holder);\n for (var j = 0; j < keys.length; j++) {\n var key = keys[j];\n var f = holder[key];\n if (typeof f == 'function')\n f.name = key;\n }\n }\n }\n function inherit(cls, sup) {\n cls.prototype.constructor = cls;\n cls.prototype[\"$is\" + cls.name] = cls;\n if (sup != null) {\n if (supportsDirectProtoAccess) {\n cls.prototype.__proto__ = sup.prototype;\n return;\n }\n var clsPrototype = Object.create(sup.prototype);\n copyProperties(cls.prototype, clsPrototype);\n cls.prototype = clsPrototype;\n }\n }\n function inheritMany(sup, classes) {\n for (var i = 0; i < classes.length; i++)\n inherit(classes[i], sup);\n }\n function mixin(cls, mixin) {\n copyProperties(mixin.prototype, cls.prototype);\n cls.prototype.constructor = cls;\n }\n function lazy(holder, name, getterName, initializer) {\n var uninitializedSentinel = holder;\n holder[name] = uninitializedSentinel;\n holder[getterName] = function() {\n holder[getterName] = function() {\n H.throwCyclicInit(name);\n };\n var result;\n var sentinelInProgress = initializer;\n try {\n if (holder[name] === uninitializedSentinel) {\n result = holder[name] = sentinelInProgress;\n result = holder[name] = initializer();\n } else\n result = holder[name];\n } finally {\n if (result === sentinelInProgress)\n holder[name] = null;\n holder[getterName] = function() {\n return this[name];\n };\n }\n return result;\n };\n }\n function makeConstList(list) {\n list.immutable$list = Array;\n list.fixed$length = Array;\n return list;\n }\n function convertToFastObject(properties) {\n function t() {\n }\n t.prototype = properties;\n new t();\n return properties;\n }\n function convertAllToFastObject(arrayOfObjects) {\n for (var i = 0; i < arrayOfObjects.length; ++i)\n convertToFastObject(arrayOfObjects[i]);\n }\n var functionCounter = 0;\n function tearOffGetter(funcs, applyTrampolineIndex, reflectionInfo, name, isIntercepted) {\n return isIntercepted ? new Function(\"funcs\", \"applyTrampolineIndex\", \"reflectionInfo\", \"name\", \"H\", \"c\", \"return function tearOff_\" + name + functionCounter++ + \"(receiver) {\" + \"if (c === null) c = \" + \"H.closureFromTearOff\" + \"(\" + \"this, funcs, applyTrampolineIndex, reflectionInfo, false, true, name);\" + \"return new c(this, funcs[0], receiver, name);\" + \"}\")(funcs, applyTrampolineIndex, reflectionInfo, name, H, null) : new Function(\"funcs\", \"applyTrampolineIndex\", \"reflectionInfo\", \"name\", \"H\", \"c\", \"return function tearOff_\" + name + functionCounter++ + \"() {\" + \"if (c === null) c = \" + \"H.closureFromTearOff\" + \"(\" + \"this, funcs, applyTrampolineIndex, reflectionInfo, false, false, name);\" + \"return new c(this, funcs[0], null, name);\" + \"}\")(funcs, applyTrampolineIndex, reflectionInfo, name, H, null);\n }\n function tearOff(funcs, applyTrampolineIndex, reflectionInfo, isStatic, name, isIntercepted) {\n var cache = null;\n return isStatic ? function() {\n if (cache === null)\n cache = H.closureFromTearOff(this, funcs, applyTrampolineIndex, reflectionInfo, true, false, name).prototype;\n return cache;\n } : tearOffGetter(funcs, applyTrampolineIndex, reflectionInfo, name, isIntercepted);\n }\n var typesOffset = 0;\n function installTearOff(container, getterName, isStatic, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex) {\n var funs = [];\n for (var i = 0; i < funsOrNames.length; i++) {\n var fun = funsOrNames[i];\n if (typeof fun == 'string')\n fun = container[fun];\n fun.$callName = callNames[i];\n funs.push(fun);\n }\n var fun = funs[0];\n fun.$requiredArgCount = requiredParameterCount;\n fun.$defaultValues = optionalParameterDefaultValues;\n var reflectionInfo = funType;\n if (typeof reflectionInfo == \"number\")\n reflectionInfo = reflectionInfo + typesOffset;\n var name = funsOrNames[0];\n fun.$stubName = name;\n var getterFunction = tearOff(funs, applyIndex || 0, reflectionInfo, isStatic, name, isIntercepted);\n container[getterName] = getterFunction;\n if (isStatic)\n fun.$tearOff = getterFunction;\n }\n function installStaticTearOff(container, getterName, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex) {\n return installTearOff(container, getterName, true, false, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex);\n }\n function installInstanceTearOff(container, getterName, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex) {\n return installTearOff(container, getterName, false, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, funsOrNames, funType, applyIndex);\n }\n function setOrUpdateInterceptorsByTag(newTags) {\n var tags = init.interceptorsByTag;\n if (!tags) {\n init.interceptorsByTag = newTags;\n return;\n }\n copyProperties(newTags, tags);\n }\n function setOrUpdateLeafTags(newTags) {\n var tags = init.leafTags;\n if (!tags) {\n init.leafTags = newTags;\n return;\n }\n copyProperties(newTags, tags);\n }\n function updateTypes(newTypes) {\n var types = init.types;\n var length = types.length;\n types.push.apply(types, newTypes);\n return length;\n }\n function updateHolder(holder, newHolder) {\n copyProperties(newHolder, holder);\n return holder;\n }\n var hunkHelpers = function() {\n var mkInstance = function(isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, applyIndex) {\n return function(container, getterName, name, funType) {\n return installInstanceTearOff(container, getterName, isIntercepted, requiredParameterCount, optionalParameterDefaultValues, callNames, [name], funType, applyIndex);\n };\n },\n mkStatic = function(requiredParameterCount, optionalParameterDefaultValues, callNames, applyIndex) {\n return function(container, getterName, name, funType) {\n return installStaticTearOff(container, getterName, requiredParameterCount, optionalParameterDefaultValues, callNames, [name], funType, applyIndex);\n };\n };\n return {inherit: inherit, inheritMany: inheritMany, mixin: mixin, installStaticTearOff: installStaticTearOff, installInstanceTearOff: installInstanceTearOff, _instance_0u: mkInstance(0, 0, null, [\"call$0\"], 0), _instance_1u: mkInstance(0, 1, null, [\"call$1\"], 0), _instance_2u: mkInstance(0, 2, null, [\"call$2\"], 0), _instance_0i: mkInstance(1, 0, null, [\"call$0\"], 0), _instance_1i: mkInstance(1, 1, null, [\"call$1\"], 0), _instance_2i: mkInstance(1, 2, null, [\"call$2\"], 0), _static_0: mkStatic(0, null, [\"call$0\"], 0), _static_1: mkStatic(1, null, [\"call$1\"], 0), _static_2: mkStatic(2, null, [\"call$2\"], 0), makeConstList: makeConstList, lazy: lazy, updateHolder: updateHolder, convertToFastObject: convertToFastObject, setFunctionNamesIfNecessary: setFunctionNamesIfNecessary, updateTypes: updateTypes, setOrUpdateInterceptorsByTag: setOrUpdateInterceptorsByTag, setOrUpdateLeafTags: setOrUpdateLeafTags};\n }();\n function initializeDeferredHunk(hunk) {\n typesOffset = init.types.length;\n hunk(hunkHelpers, init, holders, $);\n }\n function getGlobalFromName(name) {\n for (var i = 0; i < holders.length; i++) {\n if (holders[i] == C)\n continue;\n if (holders[i][name])\n return holders[i][name];\n }\n }\n var C = {},\n H = {JS_CONST: function JS_CONST(t0) {\n this.code = t0;\n },\n isCheckPropertyToJsConstructorName: function(isCheckProperty) {\n return isCheckProperty.substring(3);\n },\n isDartFunctionType: function(type) {\n return 'func' in type;\n },\n isDartFutureOrType: function(type) {\n return 'futureOr' in type;\n },\n isDartVoidTypeRti: function(type) {\n return type === -1;\n },\n rawRtiToJsConstructorName: function(rti) {\n return rti.name;\n },\n unminifyOrTag: function(rawClassName) {\n var preserved = H.unmangleGlobalNameIfPreservedAnyways(rawClassName);\n if (typeof preserved === \"string\")\n return preserved;\n return rawClassName;\n },\n getRawRuntimeType: function(o) {\n return o.constructor;\n },\n builtinIsSubtype: function(type, other) {\n return '$is' + other in type.prototype;\n },\n isDartFunctionTypeRti: function(type) {\n return type.name === \"Function\";\n },\n isNullType: function(type) {\n return type.name === \"Null\";\n },\n isDartDynamicTypeRti: function(type) {\n return type == null;\n },\n isDartJsInteropTypeArgumentRti: function(type) {\n return type === -2;\n },\n isDartObjectTypeRti: function(type) {\n return type.name === \"Object\";\n },\n isNullTypeRti: function(type) {\n return type.name === \"Null\";\n },\n getType: function(index) {\n return init.types[H.intTypeCheck(index)];\n },\n S: function(value) {\n var res;\n if (typeof value === \"string\")\n return value;\n if (typeof value === \"number\") {\n if (value !== 0)\n return \"\" + value;\n } else if (true === value)\n return \"true\";\n else if (false === value)\n return \"false\";\n else if (value == null)\n return \"null\";\n res = J.toString$0$(value);\n if (typeof res !== \"string\")\n throw H.wrapException(H.argumentErrorValue(value));\n return res;\n },\n Primitives_formatType: function(className, typeArguments) {\n return H.unmangleAllIdentifiersIfPreservedAnyways(className + H.joinArguments(typeArguments, 0));\n },\n Primitives_objectTypeName: function(object) {\n return H.Primitives__objectClassName(object) + H.joinArguments(H.getRuntimeTypeInfo(object), 0);\n },\n Primitives__objectClassName: function(object) {\n var interceptor, interceptorConstructor, interceptorConstructorName, $name, t1, dispatchName, objectConstructor, match, decompiledName;\n interceptor = J.getInterceptor$(object);\n interceptorConstructor = interceptor.constructor;\n if (typeof interceptorConstructor == \"function\") {\n interceptorConstructorName = interceptorConstructor.name;\n $name = typeof interceptorConstructorName === \"string\" ? interceptorConstructorName : null;\n } else\n $name = null;\n t1 = $name == null;\n if (t1 || interceptor === C.Interceptor_methods || false) {\n dispatchName = H.constructorNameFallback(object);\n if (t1)\n $name = dispatchName;\n if (dispatchName === \"Object\") {\n objectConstructor = object.constructor;\n if (typeof objectConstructor == \"function\") {\n match = String(objectConstructor).match(/^\\s*function\\s*([\\w$]*)\\s*\\(/);\n decompiledName = match == null ? null : match[1];\n if (typeof decompiledName === \"string\" && /^\\w+$/.test(decompiledName))\n $name = decompiledName;\n }\n }\n return $name;\n }\n $name = $name;\n return H.unminifyOrTag($name.length > 1 && C.JSString_methods._codeUnitAt$1($name, 0) === 36 ? C.JSString_methods.substring$1($name, 1) : $name);\n },\n Primitives_objectToHumanReadableString: function(object) {\n return \"Instance of '\" + H.Primitives_objectTypeName(object) + \"'\";\n },\n Primitives_stringConcatUnchecked: function(string1, string2) {\n return string1 + string2;\n },\n Primitives_flattenString: function(str) {\n return str.charCodeAt(0) == 0 ? str : str;\n },\n JsCache_fetch: function(cache, key) {\n return cache[key];\n },\n iae: function(argument) {\n throw H.wrapException(H.argumentErrorValue(argument));\n },\n ioore: function(receiver, index) {\n if (receiver == null)\n J.get$length$as(receiver);\n throw H.wrapException(H.diagnoseIndexError(receiver, index));\n },\n diagnoseIndexError: function(indexable, index) {\n var $length;\n if (typeof index !== \"number\" || Math.floor(index) !== index)\n return P.ArgumentError$value(index, \"index\", null);\n $length = J.get$length$as(indexable);\n if (index < 0 || index >= $length)\n return P.IndexError$(index, indexable, \"index\", null, $length);\n return P.RangeError$value(index, \"index\", null);\n },\n argumentErrorValue: function(object) {\n return P.ArgumentError$value(object, null, null);\n },\n wrapException: function(ex) {\n var wrapper;\n if (ex == null)\n ex = P.NullThrownError$();\n wrapper = new Error();\n wrapper.dartException = ex;\n if (\"defineProperty\" in Object) {\n Object.defineProperty(wrapper, \"message\", {get: H.toStringWrapper});\n wrapper.name = \"\";\n } else\n wrapper.toString = H.toStringWrapper;\n return wrapper;\n },\n toStringWrapper: function() {\n return J.toString$0$(this.dartException);\n },\n throwConcurrentModificationError: function(collection) {\n throw H.wrapException(P.ConcurrentModificationError$(collection));\n },\n stringTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"string\")\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"String\"));\n },\n numTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"number\")\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"num\"));\n },\n boolTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"boolean\")\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"bool\"));\n },\n intTypeCheck: function(value) {\n if (value == null)\n return value;\n if (typeof value === \"number\" && Math.floor(value) === value)\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"int\"));\n },\n listTypeCheck: function(value) {\n if (value == null)\n return value;\n if (!!J.getInterceptor$(value).$isList)\n return value;\n throw H.wrapException(H.TypeErrorImplementation$(value, \"List<dynamic>\"));\n },\n extractFunctionTypeObjectFrom: function(o) {\n return H.extractFunctionTypeObjectFromInternal(J.getInterceptor$(o));\n },\n extractFunctionTypeObjectFromInternal: function(o) {\n var signature;\n if (\"$signature\" in o) {\n signature = o.$signature;\n if (typeof signature == \"number\")\n return H.getType(H.intTypeCheck(signature));\n else\n return o.$signature();\n }\n return;\n },\n functionTypeTest: function(value, functionTypeRti) {\n var functionTypeObject;\n if (value == null)\n return false;\n if (typeof value == \"function\")\n return true;\n functionTypeObject = H.extractFunctionTypeObjectFrom(value);\n if (functionTypeObject == null)\n return false;\n return H.isFunctionSubtype(functionTypeObject, functionTypeRti);\n },\n TypeErrorImplementation$: function(value, type) {\n return new H.TypeErrorImplementation(\"TypeError: \" + P.Error_safeToString(value) + \": type '\" + H._typeDescription(value) + \"' is not a subtype of type '\" + type + \"'\");\n },\n _typeDescription: function(value) {\n var functionTypeObject;\n if (value instanceof H.Closure) {\n functionTypeObject = H.extractFunctionTypeObjectFrom(value);\n if (functionTypeObject != null)\n return H.runtimeTypeToString(functionTypeObject);\n return \"Closure\";\n }\n return H.Primitives_objectTypeName(value);\n },\n throwCyclicInit: function(staticName) {\n throw H.wrapException(P.CyclicInitializationError$(H.stringTypeCheck(staticName)));\n },\n jsonEncodeNative: function(string) {\n return JSON.stringify(string);\n },\n setRuntimeTypeInfo: function(target, rti) {\n target.$ti = rti;\n return target;\n },\n getRuntimeTypeInfo: function(target) {\n if (target == null)\n return;\n return target.$ti;\n },\n getTypeArgumentByIndex: function(target, index) {\n var rti;\n H.intTypeCheck(index);\n rti = H.getRuntimeTypeInfo(target);\n return rti == null ? null : H.getIndex(rti, index);\n },\n _getRuntimeTypeAsString: function(rti, genericContext) {\n H.assertSubtype(genericContext, \"$isList\", [P.String], \"$asList\");\n return H.unminifyOrTag(H.rawRtiToJsConstructorName(H.getIndex(rti, 0))) + H._joinArguments(rti, 1, genericContext);\n },\n runtimeTypeToString: function(rti) {\n return H._runtimeTypeToString(rti, null);\n },\n _runtimeTypeToString: function(rti, genericContext) {\n var t1, t2;\n H.assertSubtype(genericContext, \"$isList\", [P.String], \"$asList\");\n if (H.isDartDynamicTypeRti(rti))\n return \"dynamic\";\n if (H.isDartVoidTypeRti(rti))\n return \"void\";\n if (H.isJsArray(rti))\n return H._getRuntimeTypeAsString(rti, genericContext);\n if (H.isJsFunction(rti))\n return H.unminifyOrTag(H.rawRtiToJsConstructorName(rti));\n if (H.isDartJsInteropTypeArgumentRti(rti))\n return \"dynamic\";\n if (H.isGenericFunctionTypeParameter(rti)) {\n H.intTypeCheck(rti);\n if (genericContext != null) {\n if (typeof rti !== \"number\")\n return rti.$lt();\n t1 = rti < 0 || rti >= genericContext.length;\n } else\n t1 = true;\n if (t1)\n return \"unexpected-generic-index:\" + H.S(rti);\n t1 = genericContext.length;\n if (typeof rti !== \"number\")\n return H.iae(rti);\n t2 = t1 - rti - 1;\n if (t2 < 0 || t2 >= t1)\n return H.ioore(genericContext, t2);\n return H.S(genericContext[t2]);\n }\n if (H.isDartFunctionType(rti))\n return H._functionRtiToString(rti, genericContext);\n if (H.isDartFutureOrType(rti))\n return \"FutureOr<\" + H._runtimeTypeToString(H.getFutureOrArgument(rti), genericContext) + \">\";\n return \"unknown-reified-type\";\n },\n _functionRtiToString: function(rti, genericContext) {\n var t1, boundsRti, outerContextLength, offset, i, i0, typeParameters, typeSep, t2, boundRti, returnTypeText, $arguments, argumentsText, sep, _i, argument, optionalArguments, namedArguments, t3;\n t1 = [P.String];\n H.assertSubtype(genericContext, \"$isList\", t1, \"$asList\");\n if (H.hasField(rti, \"bounds\")) {\n boundsRti = rti.bounds;\n if (genericContext == null) {\n genericContext = H.setRuntimeTypeInfo([], t1);\n outerContextLength = null;\n } else\n outerContextLength = genericContext.length;\n offset = genericContext.length;\n for (i = boundsRti.length, i0 = i; i0 > 0; --i0)\n C.JSArray_methods.add$1(genericContext, \"T\" + (offset + i0));\n for (typeParameters = \"<\", typeSep = \"\", i0 = 0; i0 < i; ++i0, typeSep = \", \") {\n typeParameters += typeSep;\n t1 = genericContext.length;\n t2 = t1 - i0 - 1;\n if (t2 < 0)\n return H.ioore(genericContext, t2);\n typeParameters = C.JSString_methods.$add(typeParameters, genericContext[t2]);\n boundRti = boundsRti[i0];\n if (H.isInterestingBound(boundRti))\n typeParameters += \" extends \" + H._runtimeTypeToString(boundRti, genericContext);\n }\n typeParameters += \">\";\n } else {\n typeParameters = \"\";\n outerContextLength = null;\n }\n returnTypeText = !!rti.v ? \"void\" : H._runtimeTypeToString(rti.ret, genericContext);\n if (H.hasField(rti, \"args\")) {\n $arguments = rti.args;\n for (t1 = $arguments.length, argumentsText = \"\", sep = \"\", _i = 0; _i < t1; ++_i, sep = \", \") {\n argument = $arguments[_i];\n argumentsText = argumentsText + sep + H._runtimeTypeToString(argument, genericContext);\n }\n } else {\n argumentsText = \"\";\n sep = \"\";\n }\n if (\"opt\" in rti) {\n optionalArguments = rti.opt;\n argumentsText += sep + \"[\";\n for (t1 = optionalArguments.length, sep = \"\", _i = 0; _i < t1; ++_i, sep = \", \") {\n argument = optionalArguments[_i];\n argumentsText = argumentsText + sep + H._runtimeTypeToString(argument, genericContext);\n }\n argumentsText += \"]\";\n }\n if (\"named\" in rti) {\n namedArguments = rti.named;\n argumentsText += sep + \"{\";\n for (t1 = H.extractKeys(namedArguments), t2 = t1.length, sep = \"\", _i = 0; _i < t2; ++_i, sep = \", \") {\n t3 = H.stringTypeCheck(t1[_i]);\n argumentsText = argumentsText + sep + H._runtimeTypeToString(namedArguments[t3], genericContext) + (\" \" + H.S(t3));\n }\n argumentsText += \"}\";\n }\n if (outerContextLength != null)\n genericContext.length = outerContextLength;\n return typeParameters + \"(\" + argumentsText + \") => \" + returnTypeText;\n },\n joinArguments: function(types, startIndex) {\n return H._joinArguments(types, startIndex, null);\n },\n _joinArguments: function(types, startIndex, genericContext) {\n var buffer, index, separator, allDynamic, argument;\n H.assertSubtype(genericContext, \"$isList\", [P.String], \"$asList\");\n if (types == null)\n return \"\";\n buffer = P.StringBuffer$(\"\");\n for (index = startIndex, separator = \"\", allDynamic = true; index < H.getLength(types); ++index, separator = \", \") {\n buffer.write$1(separator);\n argument = H.getIndex(types, index);\n if (argument != null)\n allDynamic = false;\n buffer.write$1(H._runtimeTypeToString(argument, genericContext));\n }\n return \"<\" + buffer.toString$0(0) + \">\";\n },\n substitute: function(substitution, $arguments) {\n if (substitution == null)\n return $arguments;\n substitution = H.invoke(substitution, $arguments);\n if (substitution == null)\n return;\n if (H.isJsArray(substitution))\n return substitution;\n if (H.isJsFunction(substitution))\n return H.invoke(substitution, $arguments);\n return $arguments;\n },\n checkSubtype: function(object, isField, checks, asField) {\n var $arguments, interceptor;\n H.stringTypeCheck(isField);\n H.listTypeCheck(checks);\n H.stringTypeCheck(asField);\n if (object == null)\n return false;\n $arguments = H.getRuntimeTypeInfo(object);\n interceptor = J.getInterceptor$(object);\n if (H.getField(interceptor, isField) == null)\n return false;\n return H.checkArguments(H.getField(interceptor, asField), $arguments, null, checks, null);\n },\n computeTypeName: function(isField, $arguments) {\n return H.Primitives_formatType(H.unminifyOrTag(H.isCheckPropertyToJsConstructorName(isField)), $arguments);\n },\n assertSubtype: function(object, isField, checks, asField) {\n H.stringTypeCheck(isField);\n H.listTypeCheck(checks);\n H.stringTypeCheck(asField);\n if (object == null)\n return object;\n if (H.checkSubtype(object, isField, checks, asField))\n return object;\n throw H.wrapException(H.TypeErrorImplementation$(object, H.computeTypeName(isField, checks)));\n },\n checkArguments: function(substitution, $arguments, sEnv, checks, tEnv) {\n return H.areSubtypes(H.substitute(substitution, $arguments), sEnv, checks, tEnv);\n },\n areSubtypes: function(s, sEnv, t, tEnv) {\n var len, i;\n if (t == null)\n return true;\n if (s == null) {\n len = H.getLength(t);\n for (i = 0; i < len; ++i)\n if (!H._isSubtype(null, null, H.getIndex(t, i), tEnv))\n return false;\n return true;\n }\n len = H.getLength(s);\n for (i = 0; i < len; ++i)\n if (!H._isSubtype(H.getIndex(s, i), sEnv, H.getIndex(t, i), tEnv))\n return false;\n return true;\n },\n isTopType: function(type) {\n return H.isDartDynamicTypeRti(type) || H.isDartVoidTypeRti(type) || H.isDartObjectTypeRti(type) || H.isDartJsInteropTypeArgumentRti(type);\n },\n isSupertypeOfNull: function(type) {\n return H.isSupertypeOfNullBase(type) || H.isSupertypeOfNullRecursive(type);\n },\n isSupertypeOfNullBase: function(type) {\n return H.isDartDynamicTypeRti(type) || H.isDartObjectTypeRti(type) || H.isNullTypeRti(type) || H.isDartVoidTypeRti(type) || H.isDartJsInteropTypeArgumentRti(type);\n },\n isSupertypeOfNullRecursive: function(type) {\n var typeArgument;\n if (H.isGenericFunctionTypeParameter(type))\n return false;\n if (H.isDartFutureOrType(type)) {\n typeArgument = H.getFutureOrArgument(type);\n return H.isSupertypeOfNullBase(type) || H.isSupertypeOfNullRecursive(typeArgument);\n }\n return false;\n },\n getFutureOrArgument: function(type) {\n return H.hasField(type, \"type\") ? H.getField(type, \"type\") : null;\n },\n checkSubtypeOfRuntimeType: function(o, t) {\n var type, rti;\n if (o == null)\n return H.isSupertypeOfNull(t);\n if (H.isTopType(t))\n return true;\n if (typeof t == \"object\") {\n if (H.isDartFutureOrType(t))\n if (H.checkSubtypeOfRuntimeType(o, H.getFutureOrArgument(t)))\n return true;\n if (H.isDartFunctionType(t))\n return H.functionTypeTest(o, t);\n }\n type = H.getRawRuntimeType(J.getInterceptor$(o));\n rti = H.getRuntimeTypeInfo(o);\n if (rti != null) {\n rti = rti.slice();\n rti.splice(0, 0, type);\n type = rti;\n }\n return H.isSubtype(type, t);\n },\n assertSubtypeOfRuntimeType: function(object, type) {\n if (object != null && !H.checkSubtypeOfRuntimeType(object, type))\n throw H.wrapException(H.TypeErrorImplementation$(object, H.runtimeTypeToString(type)));\n return object;\n },\n getArguments: function(type) {\n return H.isJsArray(type) ? type.slice(1) : null;\n },\n isSubtype: function(s, t) {\n return H._isSubtype(s, null, t, null);\n },\n _isSubtype: function(s, sEnv, t, tEnv) {\n var typeOfS, tTypeArgument, futureArguments, typeOfT, typeOfTString, substitution;\n if (H.isIdentical(s, t))\n return true;\n if (H.isTopType(t))\n return true;\n if (H.isDartJsInteropTypeArgumentRti(s))\n return true;\n if (H.isTopType(s)) {\n if (H.isGenericFunctionTypeParameter(t))\n return false;\n if (H.isDartFutureOrType(t))\n return H._isSubtype(s, sEnv, H.getFutureOrArgument(t), tEnv);\n return false;\n }\n if (H.isGenericFunctionTypeParameter(s))\n return false;\n if (H.isGenericFunctionTypeParameter(t))\n return false;\n if (H.isNullType(s))\n return true;\n if (H.isDartFunctionType(t))\n return H._isFunctionSubtype(s, sEnv, t, tEnv);\n if (H.isDartFunctionType(s))\n return H.isDartFunctionTypeRti(t);\n typeOfS = H.isJsArray(s) ? H.getIndex(s, 0) : s;\n if (H.isDartFutureOrType(t)) {\n tTypeArgument = H.getFutureOrArgument(t);\n if (H.isDartFutureOrType(s))\n return H._isSubtype(H.getFutureOrArgument(s), sEnv, tTypeArgument, tEnv);\n else if (H._isSubtype(s, sEnv, tTypeArgument, tEnv))\n return true;\n else {\n if (!H.builtinIsSubtype(typeOfS, \"Future\"))\n return false;\n futureArguments = H.substitute(H.getField(typeOfS.prototype, \"$as\" + \"Future\"), H.getArguments(s));\n return H._isSubtype(H.isJsArray(futureArguments) ? H.getIndex(futureArguments, 0) : null, sEnv, tTypeArgument, tEnv);\n }\n }\n typeOfT = H.isJsArray(t) ? H.getIndex(t, 0) : t;\n if (H.isNotIdentical(typeOfT, typeOfS)) {\n typeOfTString = H.rawRtiToJsConstructorName(typeOfT);\n if (!H.builtinIsSubtype(typeOfS, typeOfTString))\n return false;\n substitution = H.getField(typeOfS.prototype, \"$as\" + typeOfTString);\n } else\n substitution = null;\n if (!H.isJsArray(t))\n return true;\n return H.checkArguments(substitution, H.getArguments(s), sEnv, H.getArguments(t), tEnv);\n },\n isFunctionSubtype: function(s, t) {\n return H._isFunctionSubtype(s, null, t, null);\n },\n _isFunctionSubtype: function(s, sEnv, t, tEnv) {\n var sBounds, tBounds, sParameterTypes, tParameterTypes, sOptionalParameterTypes, tOptionalParameterTypes, sParametersLen, tParametersLen, sOptionalParametersLen, tOptionalParametersLen, pos, tPos, sPos, sNamedParameters, tNamedParameters;\n if (!H.isDartFunctionType(s))\n return false;\n if (H.hasField(s, \"bounds\")) {\n if (H.hasNoField(t, \"bounds\"))\n return false;\n sBounds = H.getField(s, \"bounds\");\n tBounds = H.getField(t, \"bounds\");\n if (H.getLength(sBounds) !== H.getLength(tBounds))\n return false;\n } else if (H.hasField(t, \"bounds\"))\n return false;\n if (!H._isSubtype(H.getField(s, \"ret\"), sEnv, H.getField(t, \"ret\"), tEnv))\n return false;\n sParameterTypes = H.getField(s, \"args\");\n tParameterTypes = H.getField(t, \"args\");\n sOptionalParameterTypes = H.getField(s, \"opt\");\n tOptionalParameterTypes = H.getField(t, \"opt\");\n sParametersLen = sParameterTypes != null ? H.getLength(sParameterTypes) : 0;\n tParametersLen = tParameterTypes != null ? H.getLength(tParameterTypes) : 0;\n sOptionalParametersLen = sOptionalParameterTypes != null ? H.getLength(sOptionalParameterTypes) : 0;\n tOptionalParametersLen = tOptionalParameterTypes != null ? H.getLength(tOptionalParameterTypes) : 0;\n if (sParametersLen > tParametersLen)\n return false;\n if (sParametersLen + sOptionalParametersLen < tParametersLen + tOptionalParametersLen)\n return false;\n for (pos = 0; pos < sParametersLen; ++pos)\n if (!H._isSubtype(H.getIndex(tParameterTypes, pos), tEnv, H.getIndex(sParameterTypes, pos), sEnv))\n return false;\n for (tPos = pos, sPos = 0; tPos < tParametersLen; ++sPos, ++tPos)\n if (!H._isSubtype(H.getIndex(tParameterTypes, tPos), tEnv, H.getIndex(sOptionalParameterTypes, sPos), sEnv))\n return false;\n for (tPos = 0; tPos < tOptionalParametersLen; ++sPos, ++tPos)\n if (!H._isSubtype(H.getIndex(tOptionalParameterTypes, tPos), tEnv, H.getIndex(sOptionalParameterTypes, sPos), sEnv))\n return false;\n sNamedParameters = H.getField(s, \"named\");\n tNamedParameters = H.getField(t, \"named\");\n if (tNamedParameters == null)\n return true;\n if (sNamedParameters == null)\n return false;\n return H.namedParametersSubtypeCheck(sNamedParameters, sEnv, tNamedParameters, tEnv);\n },\n namedParametersSubtypeCheck: function(s, sEnv, t, tEnv) {\n var names, t1, i, $name;\n names = Object.getOwnPropertyNames(t);\n for (t1 = names.length, i = 0; i < t1; ++i) {\n $name = names[i];\n if (!Object.hasOwnProperty.call(s, $name))\n return false;\n if (!H._isSubtype(t[$name], tEnv, s[$name], sEnv))\n return false;\n }\n return true;\n },\n isGenericFunctionTypeParameter: function(type) {\n return typeof type === \"number\";\n },\n invoke: function($function, $arguments) {\n return H.invokeOn($function, null, $arguments);\n },\n invokeOn: function($function, receiver, $arguments) {\n return $function.apply(receiver, $arguments);\n },\n getField: function(object, $name) {\n return object[$name];\n },\n getIndex: function(array, index) {\n return array[index];\n },\n getLength: function(array) {\n return array.length;\n },\n isJsArray: function(value) {\n return typeof value === \"object\" && value !== null && value.constructor === Array;\n },\n hasField: function(object, $name) {\n return $name in object;\n },\n hasNoField: function(object, $name) {\n return !H.hasField(object, $name);\n },\n isJsFunction: function(o) {\n return typeof o == \"function\";\n },\n isIdentical: function(s, t) {\n return s === t;\n },\n isNotIdentical: function(s, t) {\n return s !== t;\n },\n isInterestingBound: function(rti) {\n return rti != null && H.isNotIdentical(rti, P.Object);\n },\n constructorNameFallback: function(object) {\n return C.JS_CONST_u2C(object);\n },\n Closure: function Closure() {\n },\n TypeErrorImplementation: function TypeErrorImplementation(t0) {\n this.message = t0;\n },\n printToConsole: function(line) {\n H.printString(line);\n },\n extractKeys: function(victim) {\n return J.JSArray_JSArray$markFixed(victim ? Object.keys(victim) : [], null);\n },\n unmangleGlobalNameIfPreservedAnyways: function($name) {\n return H.stringTypeCheck(H.JsCache_fetch(init.mangledGlobalNames, $name));\n },\n unmangleAllIdentifiersIfPreservedAnyways: function(str) {\n return function(str, names) {\n return str.replace(/[^<,> ]+/g, function(m) {\n return names[m] || m;\n });\n }(str, init.mangledGlobalNames);\n },\n printString: function(string) {\n if (typeof dartPrint == \"function\") {\n dartPrint(string);\n return;\n }\n if (typeof console == \"object\" && typeof console.log != \"undefined\") {\n console.log(string);\n return;\n }\n if (typeof window == \"object\")\n return;\n if (typeof print == \"function\") {\n print(string);\n return;\n }\n throw \"Unable to print message: \" + String(string);\n }\n },\n J = {\n JSArray_JSArray$typed: function(allocation, $E) {\n return allocation;\n },\n JSArray_JSArray$markFixed: function(allocation, $E) {\n return J.JSArray_markFixedList(H.setRuntimeTypeInfo(J.JSArray_JSArray$typed(allocation, $E), [$E]));\n },\n JSArray_markFixedList: function(list) {\n H.listTypeCheck(list);\n list.fixed$length = Array;\n return list;\n },\n ArrayIterator$: function(iterable, $E) {\n return new J.ArrayIterator(iterable, iterable.length, 0, [$E]);\n },\n getInterceptor$: function(receiver) {\n if (typeof receiver == \"number\") {\n if (Math.floor(receiver) == receiver)\n return J.JSInt.prototype;\n return J.JSDouble.prototype;\n }\n if (typeof receiver == \"string\")\n return J.JSString.prototype;\n if (receiver == null)\n return J.JSNull.prototype;\n if (typeof receiver == \"boolean\")\n return J.JSBool.prototype;\n if (receiver.constructor == Array)\n return J.JSArray.prototype;\n return receiver;\n },\n getInterceptor$as: function(receiver) {\n if (typeof receiver == \"string\")\n return J.JSString.prototype;\n if (receiver == null)\n return receiver;\n if (receiver.constructor == Array)\n return J.JSArray.prototype;\n return receiver;\n },\n get$length$as: function(receiver) {\n return J.getInterceptor$as(receiver).get$length(receiver);\n },\n toString$0$: function(receiver) {\n return J.getInterceptor$(receiver).toString$0(receiver);\n },\n Interceptor: function Interceptor() {\n },\n JSBool: function JSBool() {\n },\n JSNull: function JSNull() {\n },\n JSArray: function JSArray(t0) {\n this.$ti = t0;\n },\n JSUnmodifiableArray: function JSUnmodifiableArray(t0) {\n this.$ti = t0;\n },\n ArrayIterator: function ArrayIterator(t0, t1, t2, t3) {\n var _ = this;\n _._iterable = t0;\n _._length = t1;\n _._index = t2;\n _._current = null;\n _.$ti = t3;\n },\n JSNumber: function JSNumber() {\n },\n JSInt: function JSInt() {\n },\n JSDouble: function JSDouble() {\n },\n JSString: function JSString() {\n }\n },\n P = {\n Error__objectToString: function(object) {\n if (object instanceof H.Closure)\n return object.toString$0(0);\n return H.Primitives_objectToHumanReadableString(object);\n },\n Error__stringToSafeString: function(string) {\n return H.jsonEncodeNative(string);\n },\n StringBuffer$: function($content) {\n return new P.StringBuffer($content);\n },\n StringBuffer__writeAll: function(string, objects, separator) {\n var iterator = C.JSArray_methods.get$iterator(objects);\n if (!iterator.moveNext$0())\n return string;\n if (C.JSString_methods.get$isEmpty(separator)) {\n do\n string = P.StringBuffer__writeOne(string, iterator.get$current());\n while (iterator.moveNext$0());\n } else {\n string = P.StringBuffer__writeOne(string, iterator.get$current());\n for (; iterator.moveNext$0();)\n string = P.StringBuffer__writeOne(P.StringBuffer__writeOne(string, separator), iterator.get$current());\n }\n return string;\n },\n StringBuffer__writeOne: function(string, obj) {\n return H.Primitives_stringConcatUnchecked(string, H.S(obj));\n },\n Error_safeToString: function(object) {\n if (typeof object === \"number\" || typeof object === \"boolean\" || null == object)\n return J.toString$0$(object);\n if (typeof object === \"string\")\n return P.Error__stringToSafeString(object);\n return P.Error__objectToString(object);\n },\n NullThrownError$: function() {\n return new P.NullThrownError();\n },\n ArgumentError$value: function(value, $name, message) {\n return new P.ArgumentError(true, value, $name, message);\n },\n RangeError$value: function(value, $name, message) {\n return new P.RangeError(null, null, true, value, $name, \"Value not in range\");\n },\n IndexError$: function(invalidValue, indexable, $name, message, $length) {\n return new P.IndexError(indexable, $length, true, invalidValue, $name, \"Index out of range\");\n },\n UnsupportedError$: function(message) {\n return new P.UnsupportedError(message);\n },\n ConcurrentModificationError$: function(modifiedObject) {\n return new P.ConcurrentModificationError(modifiedObject);\n },\n CyclicInitializationError$: function(variableName) {\n return new P.CyclicInitializationError(variableName);\n },\n print: function(object) {\n H.printToConsole(\"\" + object);\n },\n bool: function bool() {\n },\n double: function double() {\n },\n Error: function Error() {\n },\n NullThrownError: function NullThrownError() {\n },\n ArgumentError: function ArgumentError(t0, t1, t2, t3) {\n var _ = this;\n _._hasValue = t0;\n _.invalidValue = t1;\n _.name = t2;\n _.message = t3;\n },\n RangeError: function RangeError(t0, t1, t2, t3, t4, t5) {\n var _ = this;\n _.start = t0;\n _.end = t1;\n _._hasValue = t2;\n _.invalidValue = t3;\n _.name = t4;\n _.message = t5;\n },\n IndexError: function IndexError(t0, t1, t2, t3, t4, t5) {\n var _ = this;\n _.indexable = t0;\n _.length = t1;\n _._hasValue = t2;\n _.invalidValue = t3;\n _.name = t4;\n _.message = t5;\n },\n UnsupportedError: function UnsupportedError(t0) {\n this.message = t0;\n },\n ConcurrentModificationError: function ConcurrentModificationError(t0) {\n this.modifiedObject = t0;\n },\n CyclicInitializationError: function CyclicInitializationError(t0) {\n this.variableName = t0;\n },\n int: function int() {\n },\n List: function List() {\n },\n Null: function Null() {\n },\n num: function num() {\n },\n Object: function Object() {\n },\n String: function String() {\n },\n StringBuffer: function StringBuffer(t0) {\n this._contents = t0;\n },\n IterableBase_iterableToFullString: function(iterable, leftDelimiter, rightDelimiter) {\n var buffer, t1;\n if (P._isToStringVisiting(iterable))\n return leftDelimiter + \"...\" + rightDelimiter;\n buffer = P.StringBuffer$(leftDelimiter);\n t1 = $.$get$_toStringVisiting();\n C.JSArray_methods.add$1(t1, iterable);\n try {\n buffer.writeAll$2(iterable, \", \");\n } finally {\n if (0 >= t1.length)\n return H.ioore(t1, -1);\n t1.pop();\n }\n buffer.write$1(rightDelimiter);\n return J.toString$0$(buffer);\n },\n _isToStringVisiting: function(o) {\n var i, t1;\n for (i = 0; t1 = $.$get$_toStringVisiting(), i < t1.length; ++i)\n if (o === t1[i])\n return true;\n return false;\n },\n ListBase_listToString: function(list) {\n return P.IterableBase_iterableToFullString(list, \"[\", \"]\");\n }\n },\n F = {\n A$: function() {\n return new F.A();\n },\n main: function() {\n var a, b, c;\n a = F.A$();\n b = [42, -1];\n c = a.field;\n P.print(C.JSInt_methods.$tdiv(b[0], b[1]));\n return c + a.field;\n },\n A: function A() {\n this.field = 42;\n }\n };\n var holders = [C, H, J, P, F];\n hunkHelpers.setFunctionNamesIfNecessary(holders);\n var $ = {};\n H.JS_CONST.prototype = {};\n J.Interceptor.prototype = {\n toString$0: function(receiver) {\n return H.Primitives_objectToHumanReadableString(receiver);\n }\n };\n J.JSBool.prototype = {\n toString$0: function(receiver) {\n return String(receiver);\n },\n $isbool: 1\n };\n J.JSNull.prototype = {\n toString$0: function(receiver) {\n return \"null\";\n }\n };\n J.JSArray.prototype = {\n checkGrowable$1: function(receiver, reason) {\n if (!!receiver.fixed$length)\n throw H.wrapException(P.UnsupportedError$(reason));\n },\n add$1: function(receiver, value) {\n H.assertSubtypeOfRuntimeType(value, H.getTypeArgumentByIndex(receiver, 0));\n this.checkGrowable$1(receiver, \"add\");\n receiver.push(value);\n },\n toString$0: function(receiver) {\n return P.ListBase_listToString(receiver);\n },\n get$iterator: function(receiver) {\n return J.ArrayIterator$(receiver, H.getTypeArgumentByIndex(receiver, 0));\n },\n get$length: function(receiver) {\n return receiver.length;\n },\n $isIterable: 1,\n $isList: 1\n };\n J.JSUnmodifiableArray.prototype = {};\n J.ArrayIterator.prototype = {\n get$current: function() {\n return this._current;\n },\n moveNext$0: function() {\n var t1, $length, t2;\n t1 = this._iterable;\n $length = t1.length;\n if (this._length !== $length)\n throw H.wrapException(H.throwConcurrentModificationError(t1));\n t2 = this._index;\n if (t2 >= $length) {\n this.set$_current(null);\n return false;\n }\n this.set$_current(t1[t2]);\n ++this._index;\n return true;\n },\n set$_current: function(_current) {\n this._current = H.assertSubtypeOfRuntimeType(_current, H.getTypeArgumentByIndex(this, 0));\n }\n };\n J.JSNumber.prototype = {\n toString$0: function(receiver) {\n if (receiver === 0 && 1 / receiver < 0)\n return \"-0.0\";\n else\n return \"\" + receiver;\n },\n _isInt32$1: function(receiver, value) {\n return (value | 0) === value;\n },\n $tdiv: function(receiver, other) {\n if (this._isInt32$1(receiver, receiver))\n if (other >= 1 || other < -1)\n return receiver / other | 0;\n return this._tdivSlow$1(receiver, other);\n },\n _tdivSlow$1: function(receiver, other) {\n var quotient = receiver / other;\n if (quotient >= -2147483648 && quotient <= 2147483647)\n return quotient | 0;\n if (quotient > 0) {\n if (quotient !== 1 / 0)\n return Math.floor(quotient);\n } else if (quotient > -1 / 0)\n return Math.ceil(quotient);\n throw H.wrapException(P.UnsupportedError$(\"Result of truncating division is \" + H.S(quotient) + \": \" + H.S(receiver) + \" ~/ \" + other));\n },\n $isnum: 1\n };\n J.JSInt.prototype = {$isint: 1};\n J.JSDouble.prototype = {};\n J.JSString.prototype = {\n _codeUnitAt$1: function(receiver, index) {\n if (index >= receiver.length)\n throw H.wrapException(H.diagnoseIndexError(receiver, index));\n return receiver.charCodeAt(index);\n },\n $add: function(receiver, other) {\n if (typeof other !== \"string\")\n throw H.wrapException(P.ArgumentError$value(other, null, null));\n return receiver + other;\n },\n substring$2: function(receiver, startIndex, endIndex) {\n endIndex = receiver.length;\n if (startIndex > endIndex)\n throw H.wrapException(P.RangeError$value(startIndex, null, null));\n if (endIndex > endIndex)\n throw H.wrapException(P.RangeError$value(endIndex, null, null));\n return receiver.substring(startIndex, endIndex);\n },\n substring$1: function($receiver, startIndex) {\n return this.substring$2($receiver, startIndex, null);\n },\n get$isEmpty: function(receiver) {\n return receiver.length === 0;\n },\n toString$0: function(receiver) {\n return receiver;\n },\n get$length: function(receiver) {\n return receiver.length;\n },\n $isString: 1\n };\n H.Closure.prototype = {\n get$$call: function() {\n return this;\n },\n \"call*\": \"call$1\",\n $requiredArgCount: 1,\n $defaultValues: null\n };\n H.TypeErrorImplementation.prototype = {\n toString$0: function(_) {\n return this.message;\n }\n };\n P.bool.prototype = {\n toString$0: function(_) {\n return this ? \"true\" : \"false\";\n }\n };\n P.double.prototype = {};\n P.Error.prototype = {};\n P.NullThrownError.prototype = {\n toString$0: function(_) {\n return \"Throw of null.\";\n }\n };\n P.ArgumentError.prototype = {\n get$_errorName: function() {\n return \"Invalid argument\";\n },\n get$_errorExplanation: function() {\n return \"\";\n },\n toString$0: function(_) {\n var t1, nameString, message, prefix, explanation, errorValue;\n t1 = this.name;\n nameString = t1 != null ? \" (\" + t1 + \")\" : \"\";\n t1 = this.message;\n message = t1 == null ? \"\" : \": \" + t1;\n prefix = this.get$_errorName() + nameString + message;\n explanation = this.get$_errorExplanation();\n errorValue = P.Error_safeToString(this.invalidValue);\n return prefix + explanation + \": \" + errorValue;\n }\n };\n P.RangeError.prototype = {\n get$_errorName: function() {\n return \"RangeError\";\n },\n get$_errorExplanation: function() {\n return \"\";\n }\n };\n P.IndexError.prototype = {\n get$_errorName: function() {\n return \"RangeError\";\n },\n get$_errorExplanation: function() {\n var invalidValue, t1;\n invalidValue = H.intTypeCheck(this.invalidValue);\n if (typeof invalidValue !== \"number\")\n return invalidValue.$lt();\n if (invalidValue < 0)\n return \": index must not be negative\";\n t1 = this.length;\n if (t1 === 0)\n return \": no indices are valid\";\n return \": index should be less than \" + t1;\n },\n get$length: function(receiver) {\n return this.length;\n }\n };\n P.UnsupportedError.prototype = {\n toString$0: function(_) {\n return \"Unsupported operation: \" + this.message;\n }\n };\n P.ConcurrentModificationError.prototype = {\n toString$0: function(_) {\n var t1 = this.modifiedObject;\n if (t1 == null)\n return \"Concurrent modification during iteration.\";\n return \"Concurrent modification during iteration: \" + P.Error_safeToString(t1) + \".\";\n }\n };\n P.CyclicInitializationError.prototype = {\n toString$0: function(_) {\n var t1 = this.variableName;\n return t1 == null ? \"Reading static variable during its initialization\" : \"Reading static variable '\" + t1 + \"' during its initialization\";\n }\n };\n P.int.prototype = {};\n P.List.prototype = {$isIterable: 1};\n P.Null.prototype = {\n toString$0: function(_) {\n return \"null\";\n }\n };\n P.num.prototype = {};\n P.Object.prototype = {constructor: P.Object, $isObject: 1,\n toString$0: function(_) {\n return H.Primitives_objectToHumanReadableString(this);\n },\n toString: function() {\n return this.toString$0(this);\n }\n };\n P.String.prototype = {};\n P.StringBuffer.prototype = {\n get$length: function(_) {\n return this._contents.length;\n },\n write$1: function(obj) {\n this._writeString$1(obj);\n },\n writeAll$2: function(objects, separator) {\n this._contents = P.StringBuffer__writeAll(this._contents, objects, separator);\n },\n toString$0: function(_) {\n return H.Primitives_flattenString(this._contents);\n },\n _writeString$1: function(str) {\n this._contents = H.Primitives_stringConcatUnchecked(this._contents, str);\n }\n };\n F.A.prototype = {};\n (function inheritance() {\n var _inherit = hunkHelpers.inherit,\n _inheritMany = hunkHelpers.inheritMany;\n _inherit(P.Object, null);\n _inheritMany(P.Object, [H.JS_CONST, J.Interceptor, J.ArrayIterator, H.Closure, P.Error, P.bool, P.num, P.List, P.Null, P.String, P.StringBuffer, F.A]);\n _inheritMany(J.Interceptor, [J.JSBool, J.JSNull, J.JSArray, J.JSNumber, J.JSString]);\n _inherit(J.JSUnmodifiableArray, J.JSArray);\n _inheritMany(J.JSNumber, [J.JSInt, J.JSDouble]);\n _inheritMany(P.Error, [H.TypeErrorImplementation, P.NullThrownError, P.ArgumentError, P.UnsupportedError, P.ConcurrentModificationError, P.CyclicInitializationError]);\n _inheritMany(P.num, [P.double, P.int]);\n _inheritMany(P.ArgumentError, [P.RangeError, P.IndexError]);\n })();\n (function constants() {\n C.Interceptor_methods = J.Interceptor.prototype;\n C.JSArray_methods = J.JSArray.prototype;\n C.JSInt_methods = J.JSInt.prototype;\n C.JSString_methods = J.JSString.prototype;\n C.JS_CONST_u2C = function getTagFallback(o) {\n var s = Object.prototype.toString.call(o);\n return s.substring(8, s.length - 1);\n};\n })();\n (function lazyInitializers() {\n var _lazy = hunkHelpers.lazy;\n _lazy($, \"_toStringVisiting\", \"$get$_toStringVisiting\", function() {\n return [];\n });\n })();\n var init = {mangledGlobalNames: {int: \"int\", double: \"double\", num: \"num\", String: \"String\", bool: \"bool\", Null: \"Null\", List: \"List\"}, mangledNames: {}, getTypeFromName: getGlobalFromName, metadata: [], types: []};\n convertAllToFastObject(holders);\n convertToFastObject($);\n (function(callback) {\n if (typeof document === \"undefined\") {\n callback(null);\n return;\n }\n if (typeof document.currentScript != 'undefined') {\n callback(document.currentScript);\n return;\n }\n var scripts = document.scripts;\n function onLoad(event) {\n for (var i = 0; i < scripts.length; ++i)\n scripts[i].removeEventListener(\"load\", onLoad, false);\n callback(event.target);\n }\n for (var i = 0; i < scripts.length; ++i)\n scripts[i].addEventListener(\"load\", onLoad, false);\n })(function(currentScript) {\n init.currentScript = currentScript;\n if (typeof dartMainRunner === \"function\")\n dartMainRunner(F.main, []);\n else\n F.main([]);\n });\n})();\n') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.isTrue (package:expect/expect.dart:133:5)\n#2 main.runTest (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/side_effect_tdiv_regression_test.dart:28:12)\n<asynchronous suspension>\n#3 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/side_effect_tdiv_regression_test.dart:34:18)\n<asynchronous suspension>\n#4 asyncTest (package:async_helper/async_helper.dart:88:11)\n#5 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/codegen/side_effect_tdiv_regression_test.dart:32:3)\n#6 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#7 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/codegen/side_effect_tdiv_regression_test\n"} {"name":"dart2js/end_to_end/show_package_warnings_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 10.000404s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/show_package_warnings_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\n==================================================================\ntest: memory:main.dart showPackageWarnings=[]\n------------------------------------------------------------------\nmemory:pkg/pkg_error1/pkg_error1.dart:5:11:\nError: The getter 'length' isn't defined for the class 'Object'.\n - 'Object' is from 'dart:core'.\n o = o.length;\n ^^^^^^\nmemory:pkg/pkg_error2/pkg_error2.dart:5:11:\nError: The getter 'length' isn't defined for the class 'Object'.\n - 'Object' is from 'dart:core'.\n o = o.length;\n ^^^^^^\nmemory:error.dart:3:11:\nError: The getter 'length' isn't defined for the class 'Object'.\n - 'Object' is from 'dart:core'.\n o = o.length;\n ^^^^^^\n\nstderr:\nUnhandled exception:\nExpect.equals(expected: <0>, actual: <3>, 'Unexpected errors: (MessageKind.GENERIC:memory:pkg/pkg_error1/pkg_error1.dart:153:159:The getter 'length' isn't defined for the class 'Object'.\n - 'Object' is from 'dart:core'.:error, MessageKind.GENERIC:memory:pkg/pkg_error2/pkg_error2.dart:153:159:The getter 'length' isn't defined for the class 'Object'.\n - 'Object' is from 'dart:core'.:error, MessageKind.GENERIC:memory:error.dart:45:51:The getter 'length' isn't defined for the class 'Object'.\n - 'Object' is from 'dart:core'.:error)') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.equals (package:expect/expect.dart:124:5)\n#2 test (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/show_package_warnings_test.dart:100:10)\n<asynchronous suspension>\n#3 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/show_package_warnings_test.dart:124:11)\n<asynchronous suspension>\n#4 asyncTest (package:async_helper/async_helper.dart:88:11)\n#5 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/show_package_warnings_test.dart:123:3)\n#6 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#7 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/end_to_end/show_package_warnings_test\n"} {"name":"dart2js/end_to_end/generate_code_with_compile_time_errors_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 10.000623s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/generate_code_with_compile_time_errors_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\nmemory:main.dart:2:10:\nError: New expression is not a constant expression.\n const [ new List() ];\n ^^^\nmemory:main.dart:2:10:\nError: New expression is not a constant expression.\n const [ new List() ];\n ^^^\nmemory:main.dart:2:10:\nError: New expression is not a constant expression.\n const [ new List() ];\n ^^^\n\nstderr:\nUnhandled exception:\nExpect.equals(expected: <true>, actual: <false>, 'Expected generated code for options [--generate-code-with-compile-time-errors].') fails.\n#0 Expect._fail (package:expect/expect.dart:651:5)\n#1 Expect.equals (package:expect/expect.dart:124:5)\n#2 test (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/generate_code_with_compile_time_errors_test.dart:50:10)\n<asynchronous suspension>\n#3 main.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/generate_code_with_compile_time_errors_test.dart:69:11)\n<asynchronous suspension>\n#4 asyncTest (package:async_helper/async_helper.dart:88:11)\n#5 main (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/end_to_end/generate_code_with_compile_time_errors_test.dart:65:3)\n#6 _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:289:19)\n#7 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/end_to_end/generate_code_with_compile_time_errors_test\n"} {"name":"dart2js/sourcemaps/d2js_validity_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 15.000387s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/d2js_validity_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\nCompiling tests/compiler/dart2js/sourcemaps/test_files/validator_test_file.dart\nCompiled 7,368,294 characters Dart to 58,364 characters JavaScript in 6.60 seconds\nDart file (tests/compiler/dart2js/sourcemaps/test_files/validator_test_file.dart) compiled to JavaScript: ../../../tmp/t/sourceMap_test-MFIKVP/out.js\nAccessing file:///b/s/w/ir/tmp/t/sourceMap_test-MFIKVP/out.js\nAccessing file:///b/s/w/ir/tmp/t/sourceMap_test-MFIKVP/out.js.map\nChecking sources\n\nstderr:\nUnhandled exception:\nUnsupported operation: Cannot extract a file path from a org-dartlang-sdk URI\n#0 _Uri.toFilePath (dart:core/uri.dart:2615:7)\n#1 new File.fromUri (dart:io/file.dart:265:49)\n#2 checkFileReferences.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/helpers/source_map_validator_helper.dart:71:23)\n#3 List.forEach (dart:core/runtime/libgrowable_array.dart:277:8)\n#4 checkFileReferences (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/helpers/source_map_validator_helper.dart:70:18)\n#5 validateSourceMap (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/helpers/source_map_validator_helper.dart:19:3)\n#6 main.<anonymous closure>.<anonymous closure>.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/d2js_validity_test.dart:29:11)\n#7 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#8 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#9 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#10 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#11 Future._complete (dart:async/future_impl.dart:473:7)\n#12 _SyncCompleter.complete (dart:async/future_impl.dart:51:12)\n#13 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#14 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#15 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#16 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#17 Future._complete (dart:async/future_impl.dart:473:7)\n#18 _SyncCompleter.complete (dart:async/future_impl.dart:51:12)\n#19 _AsyncAwaitCompleter.complete (dart:async/runtime/libasync_patch.dart:28:18)\n#20 _completeOnAsyncReturn (dart:async/runtime/libasync_patch.dart:294:13)\n#21 Compiler.runInternal (package:compiler/src/compiler.dart)\n<asynchronous suspension>\n#22 Compiler.run.<anonymous closure>.<anonymous closure> (package:compiler/src/compiler.dart:223:38)\n#23 new Future.sync (dart:async/future.dart:224:31)\n#24 Compiler.run.<anonymous closure> (package:compiler/src/compiler.dart:223:20)\n#25 CompilerTask.measureSubtask (package:compiler/src/common/tasks.dart:177:35)\n#26 Compiler.run (package:compiler/src/compiler.dart:220:41)\n#27 CompilerImpl.run.<anonymous closure>.<anonymous closure> (package:compiler/src/apiimpl.dart:88:22)\n#28 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#29 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#30 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#31 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#32 Future._completeWithValue (dart:async/future_impl.dart:483:5)\n#33 Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:513:7)\n#34 _microtaskLoop (dart:async/schedule_microtask.dart:41:21)\n#35 _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)\n#36 _runPendingImmediateCallback (dart:isolate/runtime/libisolate_patch.dart:115:13)\n#37 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:172:5)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/sourcemaps/d2js_validity_test\n"} {"name":"dart2js/sourcemaps/deferred_d2js_validity_test","configuration":"unittest-asserts-no-sdk-linux","result":"RuntimeError","log":"--- Command \"vm\" (took 19.000438s):\nDART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart --enable_asserts --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/deferred_d2js_validity_test.dart\n\nexit code:\n255\n\nstdout:\nunittest-suite-wait-for-done\nCompiling tests/compiler/dart2js/sourcemaps/test_files/deferred_validator_test_file.dart\nHint: When run on the command-line, the compiled output might require a preamble file located in:\n <sdk>/lib/_internal/js_runtime/lib/preambles.\nCompiled 7,368,612 characters Dart to 151,533 characters JavaScript in 10.6 seconds\nDart file (tests/compiler/dart2js/sourcemaps/test_files/deferred_validator_test_file.dart) compiled to JavaScript: ../../../tmp/t/sourceMap_test-DWNSMB/out.js\nAccessing file:///b/s/w/ir/tmp/t/sourceMap_test-DWNSMB/out.js\nAccessing file:///b/s/w/ir/tmp/t/sourceMap_test-DWNSMB/out.js.map\nChecking sources\n\nstderr:\nUnhandled exception:\nUnsupported operation: Cannot extract a file path from a org-dartlang-sdk URI\n#0 _Uri.toFilePath (dart:core/uri.dart:2615:7)\n#1 new File.fromUri (dart:io/file.dart:265:49)\n#2 checkFileReferences.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/helpers/source_map_validator_helper.dart:71:23)\n#3 List.forEach (dart:core/runtime/libgrowable_array.dart:277:8)\n#4 checkFileReferences (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/helpers/source_map_validator_helper.dart:70:18)\n#5 validateSourceMap (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/helpers/source_map_validator_helper.dart:19:3)\n#6 main.<anonymous closure>.<anonymous closure>.<anonymous closure> (file:///b/s/w/ir/cache/builder/sdk/tests/compiler/dart2js/sourcemaps/deferred_d2js_validity_test.dart:30:11)\n#7 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#8 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#9 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#10 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#11 Future._complete (dart:async/future_impl.dart:473:7)\n#12 _SyncCompleter.complete (dart:async/future_impl.dart:51:12)\n#13 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#14 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#15 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#16 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#17 Future._complete (dart:async/future_impl.dart:473:7)\n#18 _SyncCompleter.complete (dart:async/future_impl.dart:51:12)\n#19 _AsyncAwaitCompleter.complete (dart:async/runtime/libasync_patch.dart:28:18)\n#20 _completeOnAsyncReturn (dart:async/runtime/libasync_patch.dart:294:13)\n#21 Compiler.runInternal (package:compiler/src/compiler.dart)\n<asynchronous suspension>\n#22 Compiler.run.<anonymous closure>.<anonymous closure> (package:compiler/src/compiler.dart:223:38)\n#23 new Future.sync (dart:async/future.dart:224:31)\n#24 Compiler.run.<anonymous closure> (package:compiler/src/compiler.dart:223:20)\n#25 CompilerTask.measureSubtask (package:compiler/src/common/tasks.dart:177:35)\n#26 Compiler.run (package:compiler/src/compiler.dart:220:41)\n#27 CompilerImpl.run.<anonymous closure>.<anonymous closure> (package:compiler/src/apiimpl.dart:88:22)\n#28 _RootZone.runUnary (dart:async/zone.dart:1379:54)\n#29 _FutureListener.handleValue (dart:async/future_impl.dart:126:18)\n#30 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)\n#31 Future._propagateToListeners (dart:async/future_impl.dart:668:32)\n#32 Future._completeWithValue (dart:async/future_impl.dart:483:5)\n#33 Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:513:7)\n#34 _microtaskLoop (dart:async/schedule_microtask.dart:41:21)\n#35 _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)\n#36 _runPendingImmediateCallback (dart:isolate/runtime/libisolate_patch.dart:115:13)\n#37 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:172:5)\n\n--- Re-run this test:\npython tools/test.py -n unittest-asserts-no-sdk-linux dart2js/sourcemaps/deferred_d2js_validity_test\n"}