From 3deaa0cce74d3b50eb28433aadbe6ca5d8d46086 Mon Sep 17 00:00:00 2001 From: Ben Konyi Date: Wed, 4 Sep 2024 14:39:55 -0400 Subject: [PATCH] Prep DWDS for next release (24.2.0-wip) and get presubmit checks working again (#2485) * Prep DWDS for next release (24.2.0-wip) * [DWDS] Make TestContext.setUp set the --disable-gpu Chrome option when launching Chrome * [DWDS] Skip frontend_server_ddc_and_canary_evaluate_test.dart * [webdev] Skip cases in webdev/test/e2e_test.dart that are failing on Windows --------- Co-authored-by: Derek Xu --- dwds/CHANGELOG.md | 2 + dwds/lib/src/debugging/instance.dart | 5 +- dwds/lib/src/injected/client.js | 991 +++++++++--------- dwds/lib/src/version.dart | 2 +- dwds/pubspec.yaml | 2 +- dwds/test/fixtures/context.dart | 3 + ...d_server_ddc_and_canary_evaluate_test.dart | 9 +- webdev/test/e2e_test.dart | 107 +- 8 files changed, 568 insertions(+), 553 deletions(-) diff --git a/dwds/CHANGELOG.md b/dwds/CHANGELOG.md index c931e0690..314a66bc3 100644 --- a/dwds/CHANGELOG.md +++ b/dwds/CHANGELOG.md @@ -1,3 +1,5 @@ +## 24.2.0-wip + ## 24.1.0 - Fix bug where debugging clients are not aware of service extensions when connecting to a new web app. - [#2388](https://github.com/dart-lang/webdev/pull/2388) diff --git a/dwds/lib/src/debugging/instance.dart b/dwds/lib/src/debugging/instance.dart index bc6f5f3a4..75ab231ad 100644 --- a/dwds/lib/src/debugging/instance.dart +++ b/dwds/lib/src/debugging/instance.dart @@ -268,9 +268,8 @@ class InstanceHelper extends Domain { objectId, offset: offset, count: count, - length: metaData.kind != InstanceKind.kPlainInstance - ? metaData.length - : null, + length: + metaData.kind != InstanceKind.kPlainInstance ? metaData.length : null, ); final dartProperties = await _dartFieldsFor(properties, remoteObject); diff --git a/dwds/lib/src/injected/client.js b/dwds/lib/src/injected/client.js index a72407c19..2b29e7ae2 100644 --- a/dwds/lib/src/injected/client.js +++ b/dwds/lib/src/injected/client.js @@ -1,4 +1,4 @@ -// Generated by dart2js (NullSafetyMode.sound, csp, intern-composite-values), the Dart to JavaScript compiler version: 3.6.0-122.0.dev. +// Generated by dart2js (NullSafetyMode.sound, csp, intern-composite-values), the Dart to JavaScript compiler version: 3.5.0-edge. // The code supports the following hooks: // dartPrint(message): // if this function is defined it is called instead of the Dart [print] @@ -127,7 +127,8 @@ }; } function makeConstList(list) { - list.$flags = 7; + list.immutable$list = Array; + list.fixed$length = Array; return list; } function convertToFastObject(properties) { @@ -294,9 +295,16 @@ return A._setArrayType(new Array($length), $E._eval$1("JSArray<0>")); }, JSArray_JSArray$markFixed(allocation, $E) { - var t1 = A._setArrayType(allocation, $E._eval$1("JSArray<0>")); - t1.$flags = 1; - return t1; + return J.JSArray_markFixedList(A._setArrayType(allocation, $E._eval$1("JSArray<0>")), $E); + }, + JSArray_markFixedList(list, $T) { + list.fixed$length = Array; + return list; + }, + JSArray_markUnmodifiableList(list) { + list.fixed$length = Array; + list.immutable$list = Array; + return list; }, JSArray__compareAny(a, b) { var t1 = type$.Comparable_dynamic; @@ -1453,42 +1461,6 @@ throwExpressionWithWrapper(ex, wrapper) { throw A.initializeExceptionWrapper(wrapper, ex); }, - throwUnsupportedOperation(o, operation, verb) { - var wrapper; - if (operation == null) - operation = 0; - if (verb == null) - verb = 0; - wrapper = Error(); - A.throwExpressionWithWrapper(A._diagnoseUnsupportedOperation(o, operation, verb), wrapper); - }, - _diagnoseUnsupportedOperation(o, encodedOperation, encodedVerb) { - var operation, table, tableLength, index, verb, object, flags, article, adjective; - if (typeof encodedOperation == "string") - operation = encodedOperation; - else { - table = "[]=;add;removeWhere;retainWhere;removeRange;setRange;setInt8;setInt16;setInt32;setUint8;setUint16;setUint32;setFloat32;setFloat64".split(";"); - tableLength = table.length; - index = encodedOperation; - if (index > tableLength) { - encodedVerb = index / tableLength | 0; - index %= tableLength; - } - operation = table[index]; - } - verb = typeof encodedVerb == "string" ? encodedVerb : "modify;remove from;add to".split(";")[encodedVerb]; - object = type$.List_dynamic._is(o) ? "list" : "ByteData"; - flags = o.$flags | 0; - article = "a "; - if ((flags & 4) !== 0) - adjective = "constant "; - else if ((flags & 2) !== 0) { - adjective = "unmodifiable "; - article = "an "; - } else - adjective = (flags & 1) !== 0 ? "fixed-length " : ""; - return new A.UnsupportedError("'" + operation + "': Cannot " + verb + " " + article + adjective + object); - }, throwConcurrentModificationError(collection) { throw A.wrapException(A.ConcurrentModificationError$(collection)); }, @@ -1884,11 +1856,9 @@ return closure._interceptor; }, BoundClosure__computeFieldNamed(fieldName) { - var names, i, $name, + var t1, i, $name, template = new A.BoundClosure("receiver", "interceptor"), - t1 = Object.getOwnPropertyNames(template); - t1.$flags = 1; - names = t1; + names = J.JSArray_markFixedList(Object.getOwnPropertyNames(template), type$.nullable_Object); for (t1 = names.length, i = 0; i < t1; ++i) { $name = names[i]; if (template[$name] === fieldName) @@ -2691,14 +2661,24 @@ return testRti._as(object); }, _nullIs(testRti) { - var kind = testRti._kind, - t1 = true; + var t1, + kind = testRti._kind; if (!A.isSoundTopType(testRti)) if (!(testRti === type$.legacy_Object)) if (!(testRti === type$.legacy_Never)) if (kind !== 7) if (!(kind === 6 && A._nullIs(testRti._primary))) t1 = kind === 8 && A._nullIs(testRti._primary) || testRti === type$.Null || testRti === type$.JSNull; + else + t1 = true; + else + t1 = true; + else + t1 = true; + else + t1 = true; + else + t1 = true; return t1; }, _generalIsTestImplementation(object) { @@ -2930,12 +2910,13 @@ return s + "})"; }, _functionRtiToString(functionType, genericContext, bounds) { - var boundsLength, offset, i, t1, t2, typeParametersText, typeSep, t3, t4, boundRti, kind, parameters, requiredPositional, requiredPositionalLength, optionalPositional, optionalPositionalLength, named, namedLength, returnTypeText, argumentsText, sep, _s2_ = ", ", outerContextLength = null; + var boundsLength, outerContextLength, offset, i, t1, t2, typeParametersText, typeSep, t3, t4, boundRti, kind, parameters, requiredPositional, requiredPositionalLength, optionalPositional, optionalPositionalLength, named, namedLength, returnTypeText, argumentsText, sep, _s2_ = ", "; if (bounds != null) { boundsLength = bounds.length; - if (genericContext == null) + if (genericContext == null) { genericContext = A._setArrayType([], type$.JSArray_String); - else + outerContextLength = null; + } else outerContextLength = genericContext.length; offset = genericContext.length; for (i = boundsLength; i > 0; --i) @@ -2956,8 +2937,10 @@ typeParametersText += " extends " + A._rtiToString(boundRti, genericContext); } typeParametersText += ">"; - } else + } else { typeParametersText = ""; + outerContextLength = null; + } t1 = functionType._primary; parameters = functionType._rest; requiredPositional = parameters._requiredPositional; @@ -3164,11 +3147,16 @@ var baseKind, t1, starArgument, rti; if (normalize) { baseKind = baseType._kind; - t1 = true; if (!A.isSoundTopType(baseType)) if (!(baseType === type$.Null || baseType === type$.JSNull)) if (baseKind !== 7) t1 = baseKind === 8 && A.isNullable(baseType._primary); + else + t1 = true; + else + t1 = true; + else + t1 = true; if (t1) return baseType; else if (baseKind === 1 || baseType === type$.legacy_Never) @@ -3540,24 +3528,30 @@ } }, _Parser_handleArguments(parser, stack) { - var requiredPositional, returnType, parameters, + var optionalPositional, named, requiredPositional, returnType, parameters, _null = null, t1 = parser.u, - head = stack.pop(), - optionalPositional = null, named = null; + head = stack.pop(); if (typeof head == "number") switch (head) { case -1: optionalPositional = stack.pop(); + named = _null; break; case -2: named = stack.pop(); + optionalPositional = _null; break; default: stack.push(head); + named = _null; + optionalPositional = named; break; } - else + else { stack.push(head); + named = _null; + optionalPositional = named; + } requiredPositional = A._Parser_collectArray(parser, stack); head = stack.pop(); switch (head) { @@ -3877,13 +3871,21 @@ return true; }, isNullable(t) { - var kind = t._kind, - t1 = true; + var t1, + kind = t._kind; if (!(t === type$.Null || t === type$.JSNull)) if (!A.isSoundTopType(t)) if (kind !== 7) if (!(kind === 6 && A.isNullable(t._primary))) t1 = kind === 8 && A.isNullable(t._primary); + else + t1 = true; + else + t1 = true; + else + t1 = true; + else + t1 = true; return t1; }, isDefinitelyTopType(t) { @@ -4032,13 +4034,15 @@ }, Future_Future$microtask(computation, $T) { var result = new A._Future($.Zone__current, $T._eval$1("_Future<0>")); - A.scheduleMicrotask(new A.Future_Future$microtask_closure(computation, result)); + A.scheduleMicrotask(new A.Future_Future$microtask_closure(result, computation)); return result; }, Future_Future$sync(computation, $T) { - var error, stackTrace, future, replacement, exception, t1, result = null; + var result, error, stackTrace, future, replacement, t1, exception; try { result = computation.call$0(); + t1 = $T._eval$1("Future<0>")._is(result) ? result : A._Future$value(result, $T); + return t1; } catch (exception) { error = A.unwrapException(exception); stackTrace = A.getTraceFromException(exception); @@ -4051,7 +4055,6 @@ future._asyncCompleteError$2(error, stackTrace); return future; } - return $T._eval$1("Future<0>")._is(result) ? result : A._Future$value(result, $T); }, Future_Future$value(value, $T) { var t1 = value == null ? $T._as(value) : value, @@ -4082,10 +4085,6 @@ var t1, t2, listeners; for (t1 = type$._Future_dynamic; t2 = source._state, (t2 & 4) !== 0;) source = t1._as(source._resultOrListeners); - if (source === target) { - target._asyncCompleteError$2(new A.ArgumentError(true, source, null, "Cannot complete a future with itself"), A.StackTrace_current()); - return; - } t1 = t2 | target._state & 1; source._state = t1; if ((t1 & 24) !== 0) { @@ -4105,10 +4104,6 @@ source = t2._as(t1._resultOrListeners); _box_0.source = source; } - if (t1 === target) { - target._asyncCompleteError$2(new A.ArgumentError(true, t1, null, "Cannot complete a future with itself"), A.StackTrace_current()); - return; - } if ((t3 & 24) === 0) { listeners = type$.nullable__FutureListener_dynamic_dynamic._as(target._resultOrListeners); target._setChained$1(t1); @@ -4548,8 +4543,8 @@ this.stackTrace = t1; }, Future_Future$microtask_closure: function Future_Future$microtask_closure(t0, t1) { - this.computation = t0; - this.result = t1; + this.result = t0; + this.computation = t1; }, TimeoutException: function TimeoutException() { }, @@ -5195,10 +5190,10 @@ throw A.wrapException(A.FormatException$("Invalid base64 padding, more than two '=' characters", source, sourceIndex)); }, _Base64Encoder_encodeChunk(alphabet, bytes, start, end, isLast, output, outputIndex, state) { - var t1, t2, t3, i, byteOr, byte, outputIndex0, t4, t5, outputIndex1, + var t1, t2, t3, i, byteOr, byte, outputIndex0, t4, outputIndex1, bits = state >>> 2, expectedChars = 3 - (state & 3); - for (t1 = J.getInterceptor$asx(bytes), t2 = alphabet.length, t3 = output.$flags | 0, i = start, byteOr = 0; i < end; ++i) { + for (t1 = J.getInterceptor$asx(bytes), t2 = alphabet.length, t3 = output.length, i = start, byteOr = 0; i < end; ++i) { byte = t1.$index(bytes, i); byteOr = (byteOr | byte) >>> 0; bits = (bits << 8 | byte) & 16777215; @@ -5208,30 +5203,28 @@ t4 = bits >>> 18 & 63; if (!(t4 < t2)) return A.ioore(alphabet, t4); - t3 & 2 && A.throwUnsupportedOperation(output); - t5 = output.length; - if (!(outputIndex < t5)) + if (!(outputIndex < t3)) return A.ioore(output, outputIndex); output[outputIndex] = alphabet.charCodeAt(t4); outputIndex = outputIndex0 + 1; t4 = bits >>> 12 & 63; if (!(t4 < t2)) return A.ioore(alphabet, t4); - if (!(outputIndex0 < t5)) + if (!(outputIndex0 < t3)) return A.ioore(output, outputIndex0); output[outputIndex0] = alphabet.charCodeAt(t4); outputIndex0 = outputIndex + 1; t4 = bits >>> 6 & 63; if (!(t4 < t2)) return A.ioore(alphabet, t4); - if (!(outputIndex < t5)) + if (!(outputIndex < t3)) return A.ioore(output, outputIndex); output[outputIndex] = alphabet.charCodeAt(t4); outputIndex = outputIndex0 + 1; t4 = bits & 63; if (!(t4 < t2)) return A.ioore(alphabet, t4); - if (!(outputIndex0 < t5)) + if (!(outputIndex0 < t3)) return A.ioore(output, outputIndex0); output[outputIndex0] = alphabet.charCodeAt(t4); bits = 0; @@ -5246,8 +5239,6 @@ t1 = bits >>> 2 & 63; if (!(t1 < t2)) return A.ioore(alphabet, t1); - t3 & 2 && A.throwUnsupportedOperation(output); - t3 = output.length; if (!(outputIndex < t3)) return A.ioore(output, outputIndex); output[outputIndex] = alphabet.charCodeAt(t1); @@ -5268,8 +5259,6 @@ t1 = bits >>> 10 & 63; if (!(t1 < t2)) return A.ioore(alphabet, t1); - t3 & 2 && A.throwUnsupportedOperation(output); - t3 = output.length; if (!(outputIndex < t3)) return A.ioore(output, outputIndex); output[outputIndex] = alphabet.charCodeAt(t1); @@ -5309,7 +5298,7 @@ bits = B.JSInt_methods._shrOtherPositive$1(state, 2), count = state & 3, inverseAlphabet = $.$get$_Base64Decoder__inverseAlphabet(); - for (t1 = input.length, t2 = inverseAlphabet.length, t3 = output.$flags | 0, i = start, charOr = 0; i < end; ++i) { + for (t1 = input.length, t2 = inverseAlphabet.length, t3 = output.length, i = start, charOr = 0; i < end; ++i) { if (!(i < t1)) return A.ioore(input, i); char = input.charCodeAt(i); @@ -5323,17 +5312,15 @@ count = count + 1 & 3; if (count === 0) { outIndex0 = outIndex + 1; - t3 & 2 && A.throwUnsupportedOperation(output); - t4 = output.length; - if (!(outIndex < t4)) + if (!(outIndex < t3)) return A.ioore(output, outIndex); output[outIndex] = bits >>> 16 & 255; outIndex = outIndex0 + 1; - if (!(outIndex0 < t4)) + if (!(outIndex0 < t3)) return A.ioore(output, outIndex0); output[outIndex0] = bits >>> 8 & 255; outIndex0 = outIndex + 1; - if (!(outIndex < t4)) + if (!(outIndex < t3)) return A.ioore(output, outIndex); output[outIndex] = bits & 255; outIndex = outIndex0; @@ -5347,19 +5334,16 @@ if ((bits & 3) !== 0) throw A.wrapException(A.FormatException$(_s31_, input, i)); outIndex0 = outIndex + 1; - t3 & 2 && A.throwUnsupportedOperation(output); - t1 = output.length; - if (!(outIndex < t1)) + if (!(outIndex < t3)) return A.ioore(output, outIndex); output[outIndex] = bits >>> 10; - if (!(outIndex0 < t1)) + if (!(outIndex0 < t3)) return A.ioore(output, outIndex0); output[outIndex0] = bits >>> 2; } else { if ((bits & 15) !== 0) throw A.wrapException(A.FormatException$(_s31_, input, i)); - t3 & 2 && A.throwUnsupportedOperation(output); - if (!(outIndex < output.length)) + if (!(outIndex < t3)) return A.ioore(output, outIndex); output[outIndex] = bits >>> 4; } @@ -5737,19 +5721,17 @@ return 0; if (n === 0 && resultDigits === xDigits) return xUsed; - for (i = xUsed - 1, t1 = xDigits.length, t2 = resultDigits.$flags | 0; i >= 0; --i) { + for (i = xUsed - 1, t1 = xDigits.length, t2 = resultDigits.length; i >= 0; --i) { t3 = i + n; if (!(i < t1)) return A.ioore(xDigits, i); t4 = xDigits[i]; - t2 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(t3 >= 0 && t3 < resultDigits.length)) + if (!(t3 >= 0 && t3 < t2)) return A.ioore(resultDigits, t3); resultDigits[t3] = t4; } for (i = n - 1; i >= 0; --i) { - t2 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + if (!(i < t2)) return A.ioore(resultDigits, i); resultDigits[i] = 0; } @@ -5761,41 +5743,38 @@ bitShift = B.JSInt_methods.$mod(n, 16), carryBitShift = 16 - bitShift, bitMask = B.JSInt_methods.$shl(1, carryBitShift) - 1; - for (i = xUsed - 1, t1 = xDigits.length, t2 = resultDigits.$flags | 0, carry = 0; i >= 0; --i) { + for (i = xUsed - 1, t1 = xDigits.length, t2 = resultDigits.length, carry = 0; i >= 0; --i) { if (!(i < t1)) return A.ioore(xDigits, i); digit = xDigits[i]; t3 = i + digitShift + 1; t4 = B.JSInt_methods.$shr(digit, carryBitShift); - t2 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(t3 >= 0 && t3 < resultDigits.length)) + if (!(t3 >= 0 && t3 < t2)) return A.ioore(resultDigits, t3); resultDigits[t3] = (t4 | carry) >>> 0; carry = B.JSInt_methods.$shl((digit & bitMask) >>> 0, bitShift); } - t2 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(digitShift >= 0 && digitShift < resultDigits.length)) + if (!(digitShift >= 0 && digitShift < t2)) return A.ioore(resultDigits, digitShift); resultDigits[digitShift] = carry; }, _BigIntImpl__lShiftDigits(xDigits, xUsed, n, resultDigits) { - var resultUsed, t1, i, + var resultUsed, t1, i, t2, digitsShift = B.JSInt_methods._tdivFast$1(n, 16); if (B.JSInt_methods.$mod(n, 16) === 0) return A._BigIntImpl__dlShiftDigits(xDigits, xUsed, digitsShift, resultDigits); resultUsed = xUsed + digitsShift + 1; A._BigIntImpl__lsh(xDigits, xUsed, n, resultDigits); - for (t1 = resultDigits.$flags | 0, i = digitsShift; --i, i >= 0;) { - t1 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + for (t1 = resultDigits.length, i = digitsShift; --i, i >= 0;) { + if (!(i < t1)) return A.ioore(resultDigits, i); resultDigits[i] = 0; } - t1 = resultUsed - 1; - if (!(t1 >= 0 && t1 < resultDigits.length)) - return A.ioore(resultDigits, t1); - if (resultDigits[t1] === 0) - resultUsed = t1; + t2 = resultUsed - 1; + if (!(t2 >= 0 && t2 < t1)) + return A.ioore(resultDigits, t2); + if (resultDigits[t2] === 0) + resultUsed = t2; return resultUsed; }, _BigIntImpl__rsh(xDigits, xUsed, n, resultDigits) { @@ -5809,20 +5788,18 @@ return A.ioore(xDigits, digitsShift); carry = B.JSInt_methods.$shr(xDigits[digitsShift], bitShift); last = xUsed - digitsShift - 1; - for (t2 = resultDigits.$flags | 0, i = 0; i < last; ++i) { + for (t2 = resultDigits.length, i = 0; i < last; ++i) { t3 = i + digitsShift + 1; if (!(t3 < t1)) return A.ioore(xDigits, t3); digit = xDigits[t3]; t3 = B.JSInt_methods.$shl((digit & bitMask) >>> 0, carryBitShift); - t2 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + if (!(i < t2)) return A.ioore(resultDigits, i); resultDigits[i] = (t3 | carry) >>> 0; carry = B.JSInt_methods.$shr(digit, bitShift); } - t2 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(last >= 0 && last < resultDigits.length)) + if (!(last >= 0 && last < t2)) return A.ioore(resultDigits, last); resultDigits[last] = carry; }, @@ -5844,15 +5821,14 @@ }, _BigIntImpl__absAdd(digits, used, otherDigits, otherUsed, resultDigits) { var t1, t2, t3, carry, i, t4; - for (t1 = digits.length, t2 = otherDigits.length, t3 = resultDigits.$flags | 0, carry = 0, i = 0; i < otherUsed; ++i) { + for (t1 = digits.length, t2 = otherDigits.length, t3 = resultDigits.length, carry = 0, i = 0; i < otherUsed; ++i) { if (!(i < t1)) return A.ioore(digits, i); t4 = digits[i]; if (!(i < t2)) return A.ioore(otherDigits, i); carry += t4 + otherDigits[i]; - t3 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + if (!(i < t3)) return A.ioore(resultDigits, i); resultDigits[i] = carry & 65535; carry = B.JSInt_methods._shrOtherPositive$1(carry, 16); @@ -5861,28 +5837,25 @@ if (!(i >= 0 && i < t1)) return A.ioore(digits, i); carry += digits[i]; - t3 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + if (!(i < t3)) return A.ioore(resultDigits, i); resultDigits[i] = carry & 65535; carry = B.JSInt_methods._shrOtherPositive$1(carry, 16); } - t3 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(used >= 0 && used < resultDigits.length)) + if (!(used >= 0 && used < t3)) return A.ioore(resultDigits, used); resultDigits[used] = carry; }, _BigIntImpl__absSub(digits, used, otherDigits, otherUsed, resultDigits) { var t1, t2, t3, carry, i, t4; - for (t1 = digits.length, t2 = otherDigits.length, t3 = resultDigits.$flags | 0, carry = 0, i = 0; i < otherUsed; ++i) { + for (t1 = digits.length, t2 = otherDigits.length, t3 = resultDigits.length, carry = 0, i = 0; i < otherUsed; ++i) { if (!(i < t1)) return A.ioore(digits, i); t4 = digits[i]; if (!(i < t2)) return A.ioore(otherDigits, i); carry += t4 - otherDigits[i]; - t3 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + if (!(i < t3)) return A.ioore(resultDigits, i); resultDigits[i] = carry & 65535; carry = 0 - (B.JSInt_methods._shrOtherPositive$1(carry, 16) & 1); @@ -5891,27 +5864,25 @@ if (!(i >= 0 && i < t1)) return A.ioore(digits, i); carry += digits[i]; - t3 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(i < resultDigits.length)) + if (!(i < t3)) return A.ioore(resultDigits, i); resultDigits[i] = carry & 65535; carry = 0 - (B.JSInt_methods._shrOtherPositive$1(carry, 16) & 1); } }, _BigIntImpl__mulAdd(x, multiplicandDigits, i, accumulatorDigits, j, n) { - var t1, t2, t3, c, i0, t4, combined, j0, l; + var t1, t2, c, i0, t3, combined, j0, l; if (x === 0) return; - for (t1 = multiplicandDigits.length, t2 = accumulatorDigits.length, t3 = accumulatorDigits.$flags | 0, c = 0; --n, n >= 0; j = j0, i = i0) { + for (t1 = multiplicandDigits.length, t2 = accumulatorDigits.length, c = 0; --n, n >= 0; j = j0, i = i0) { i0 = i + 1; if (!(i < t1)) return A.ioore(multiplicandDigits, i); - t4 = multiplicandDigits[i]; + t3 = multiplicandDigits[i]; if (!(j >= 0 && j < t2)) return A.ioore(accumulatorDigits, j); - combined = x * t4 + accumulatorDigits[j] + c; + combined = x * t3 + accumulatorDigits[j] + c; j0 = j + 1; - t3 & 2 && A.throwUnsupportedOperation(accumulatorDigits); accumulatorDigits[j] = combined & 65535; c = B.JSInt_methods._tdivFast$1(combined, 65536); } @@ -5920,7 +5891,6 @@ return A.ioore(accumulatorDigits, j); l = accumulatorDigits[j] + c; j0 = j + 1; - t3 & 2 && A.throwUnsupportedOperation(accumulatorDigits); accumulatorDigits[j] = l & 65535; c = B.JSInt_methods._tdivFast$1(l, 65536); } @@ -5961,6 +5931,12 @@ throw error; throw A.wrapException("unreachable"); }, + DateTime$fromMillisecondsSinceEpoch(millisecondsSinceEpoch, isUtc) { + if (Math.abs(millisecondsSinceEpoch) > 864e13) + A.throwExpression(A.ArgumentError$("DateTime is outside valid range: " + millisecondsSinceEpoch, null)); + A.checkNotNullable(isUtc, "isUtc", type$.bool); + return new A.DateTime(millisecondsSinceEpoch, isUtc); + }, List_List$filled($length, fill, growable, $E) { var i, result = growable ? J.JSArray_JSArray$growable($length, $E) : J.JSArray_JSArray$fixed($length, $E); @@ -5976,15 +5952,13 @@ B.JSArray_methods.add$1(list, $E._as(t1.get$current(t1))); if (growable) return list; - list.$flags = 1; - return list; + return J.JSArray_markFixedList(list, $E); }, List_List$of(elements, growable, $E) { var t1; if (growable) return A.List_List$_of(elements, $E); - t1 = A.List_List$_of(elements, $E); - t1.$flags = 1; + t1 = J.JSArray_markFixedList(A.List_List$_of(elements, $E), $E); return t1; }, List_List$_of(elements, $E) { @@ -5997,9 +5971,7 @@ return list; }, List_List$unmodifiable(elements, $E) { - var result = A.List_List$from(elements, false, $E); - result.$flags = 3; - return result; + return J.JSArray_markUnmodifiableList(A.List_List$from(elements, false, $E)); }, String_String$fromCharCodes(charCodes, start, end) { var t1, t2, maxLength, array, len; @@ -6088,17 +6060,6 @@ StackTrace_current() { return A.getTraceFromException(new Error()); }, - DateTime__validate(millisecondsSinceEpoch, microsecond, isUtc) { - var _s11_ = "microsecond"; - if (microsecond < 0 || microsecond > 999) - throw A.wrapException(A.RangeError$range(microsecond, 0, 999, _s11_, null)); - if (millisecondsSinceEpoch < -864e13 || millisecondsSinceEpoch > 864e13) - throw A.wrapException(A.RangeError$range(millisecondsSinceEpoch, -864e13, 864e13, "millisecondsSinceEpoch", null)); - if (millisecondsSinceEpoch === 864e13 && microsecond !== 0) - throw A.wrapException(A.ArgumentError$value(microsecond, _s11_, string$.Time_i)); - A.checkNotNullable(isUtc, "isUtc", type$.bool); - return millisecondsSinceEpoch; - }, DateTime__fourDigits(n) { var absN = Math.abs(n), sign = n < 0 ? "-" : ""; @@ -6347,7 +6308,7 @@ toZone.call$1(object); }, Uri_parse(uri) { - var delta, indices, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, isSimple, scheme, t1, t2, schemeAuth, queryStart0, pathStart0, port, userInfoStart, userInfo, host, portNumber, path, query, _null = null, + var delta, indices, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, isSimple, scheme, t1, t2, schemeAuth, queryStart0, pathStart0, userInfoStart, userInfo, host, portNumber, port, path, query, _null = null, end = uri.length; if (end >= 5) { if (4 >= end) @@ -6387,12 +6348,16 @@ if (portStart < hostStart) portStart = pathStart; isSimple = indices[7] < 0; - scheme = _null; - if (isSimple) { - isSimple = false; - if (!(hostStart > schemeEnd + 3)) { + if (isSimple) + if (hostStart > schemeEnd + 3) { + scheme = _null; + isSimple = false; + } else { t1 = portStart > 0; - if (!(t1 && portStart + 1 === pathStart)) { + if (t1 && portStart + 1 === pathStart) { + scheme = _null; + isSimple = false; + } else { if (!B.JSString_methods.startsWith$2(uri, "\\", pathStart)) if (hostStart > 0) t2 = B.JSString_methods.startsWith$2(uri, "\\", hostStart - 1) || B.JSString_methods.startsWith$2(uri, "\\", hostStart - 2); @@ -6400,64 +6365,71 @@ t2 = false; else t2 = true; - if (!t2) { + if (t2) { + scheme = _null; + isSimple = false; + } else { if (!(queryStart < end && queryStart === pathStart + 2 && B.JSString_methods.startsWith$2(uri, "..", pathStart))) t2 = queryStart > pathStart + 2 && B.JSString_methods.startsWith$2(uri, "/..", queryStart - 3); else t2 = true; - if (!t2) - if (schemeEnd === 4) { - if (B.JSString_methods.startsWith$2(uri, "file", 0)) { - if (hostStart <= 0) { - if (!B.JSString_methods.startsWith$2(uri, "/", pathStart)) { - schemeAuth = "file:///"; - delta = 3; - } else { - schemeAuth = "file://"; - delta = 2; - } - uri = schemeAuth + B.JSString_methods.substring$2(uri, pathStart, end); - queryStart += delta; - fragmentStart += delta; - end = uri.length; - hostStart = 7; - portStart = 7; - pathStart = 7; - } else if (pathStart === queryStart) { - ++fragmentStart; - queryStart0 = queryStart + 1; - uri = B.JSString_methods.replaceRange$3(uri, pathStart, queryStart, "/"); - ++end; - queryStart = queryStart0; + if (t2) + scheme = _null; + else if (schemeEnd === 4) + if (B.JSString_methods.startsWith$2(uri, "file", 0)) { + if (hostStart <= 0) { + if (!B.JSString_methods.startsWith$2(uri, "/", pathStart)) { + schemeAuth = "file:///"; + delta = 3; + } else { + schemeAuth = "file://"; + delta = 2; } - scheme = "file"; - } else if (B.JSString_methods.startsWith$2(uri, "http", 0)) { - if (t1 && portStart + 3 === pathStart && B.JSString_methods.startsWith$2(uri, "80", portStart + 1)) { - fragmentStart -= 3; - pathStart0 = pathStart - 3; - queryStart -= 3; - uri = B.JSString_methods.replaceRange$3(uri, portStart, pathStart, ""); - end -= 3; - pathStart = pathStart0; - } - scheme = "http"; + uri = schemeAuth + B.JSString_methods.substring$2(uri, pathStart, end); + queryStart += delta; + fragmentStart += delta; + end = uri.length; + hostStart = 7; + portStart = 7; + pathStart = 7; + } else if (pathStart === queryStart) { + ++fragmentStart; + queryStart0 = queryStart + 1; + uri = B.JSString_methods.replaceRange$3(uri, pathStart, queryStart, "/"); + ++end; + queryStart = queryStart0; } - } else if (schemeEnd === 5 && B.JSString_methods.startsWith$2(uri, "https", 0)) { - if (t1 && portStart + 4 === pathStart && B.JSString_methods.startsWith$2(uri, "443", portStart + 1)) { - fragmentStart -= 4; - pathStart0 = pathStart - 4; - queryStart -= 4; + scheme = "file"; + } else if (B.JSString_methods.startsWith$2(uri, "http", 0)) { + if (t1 && portStart + 3 === pathStart && B.JSString_methods.startsWith$2(uri, "80", portStart + 1)) { + fragmentStart -= 3; + pathStart0 = pathStart - 3; + queryStart -= 3; uri = B.JSString_methods.replaceRange$3(uri, portStart, pathStart, ""); end -= 3; pathStart = pathStart0; } - scheme = "https"; + scheme = "http"; + } else + scheme = _null; + else if (schemeEnd === 5 && B.JSString_methods.startsWith$2(uri, "https", 0)) { + if (t1 && portStart + 4 === pathStart && B.JSString_methods.startsWith$2(uri, "443", portStart + 1)) { + fragmentStart -= 4; + pathStart0 = pathStart - 4; + queryStart -= 4; + uri = B.JSString_methods.replaceRange$3(uri, portStart, pathStart, ""); + end -= 3; + pathStart = pathStart0; } + scheme = "https"; + } else + scheme = _null; isSimple = !t2; } } } - } + else + scheme = _null; if (isSimple) return new A._SimpleUri(end < uri.length ? B.JSString_methods.substring$2(uri, 0, end) : uri, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, scheme); if (scheme == null) @@ -6468,7 +6440,6 @@ A._Uri__fail(uri, 0, "Invalid empty scheme"); scheme = ""; } - port = _null; if (hostStart > 0) { userInfoStart = schemeEnd + 3; userInfo = userInfoStart < hostStart ? A._Uri__makeUserInfo(uri, userInfoStart, hostStart - 1) : ""; @@ -6477,9 +6448,11 @@ if (t1 < pathStart) { portNumber = A.Primitives_parseInt(B.JSString_methods.substring$2(uri, t1, pathStart), _null); port = A._Uri__makePort(portNumber == null ? A.throwExpression(A.FormatException$("Invalid port", uri, t1)) : portNumber, scheme); - } + } else + port = _null; } else { - host = _null; + port = _null; + host = port; userInfo = ""; } path = A._Uri__makePath(uri, pathStart, queryStart, _null, scheme, host != null); @@ -6667,7 +6640,7 @@ return index >= start && index < end ? index : end; }, _Uri__normalizeZoneID(host, start, end, prefix) { - var t1, index, sectionStart, isNormalized, char, replacement, t2, t3, sourceLength, tail, slice, + var t1, index, sectionStart, isNormalized, char, replacement, t2, t3, tail, sourceLength, slice, buffer = prefix !== "" ? new A.StringBuffer(prefix) : null; for (t1 = host.length, index = start, sectionStart = index, isNormalized = true; index < end;) { if (!(index >= 0 && index < t1)) @@ -6711,7 +6684,6 @@ } ++index; } else { - sourceLength = 1; if ((char & 64512) === 55296 && index + 1 < end) { t2 = index + 1; if (!(t2 < t1)) @@ -6720,8 +6692,10 @@ if ((tail & 64512) === 56320) { char = (char & 1023) << 10 | tail & 1023 | 65536; sourceLength = 2; - } - } + } else + sourceLength = 1; + } else + sourceLength = 1; slice = B.JSString_methods.substring$2(host, sectionStart, index); if (buffer == null) { buffer = new A.StringBuffer(""); @@ -6764,13 +6738,14 @@ if (!isNormalized) slice = slice.toLowerCase(); t3 = buffer._contents += slice; - sourceLength = 3; - if (t2) + if (t2) { replacement = B.JSString_methods.substring$2(host, index, index + 3); - else if (replacement === "%") { + sourceLength = 3; + } else if (replacement === "%") { replacement = "%25"; sourceLength = 1; - } + } else + sourceLength = 3; buffer._contents = t3 + replacement; index += sourceLength; sectionStart = index; @@ -6805,7 +6780,6 @@ if (t2) A._Uri__fail(host, index, "Invalid character"); else { - sourceLength = 1; if ((char & 64512) === 55296 && index + 1 < end) { t2 = index + 1; if (!(t2 < t1)) @@ -6814,8 +6788,10 @@ if ((tail & 64512) === 56320) { char = (char & 1023) << 10 | tail & 1023 | 65536; sourceLength = 2; - } - } + } else + sourceLength = 1; + } else + sourceLength = 1; slice = B.JSString_methods.substring$2(host, sectionStart, index); if (!isNormalized) slice = slice.toLowerCase(); @@ -7007,7 +6983,7 @@ return t1 == null ? B.JSString_methods.substring$2(component, start, end) : t1; }, _Uri__normalize(component, start, end, charTable, escapeDelimiters, replaceBackslash) { - var t1, t2, index, sectionStart, buffer, char, t3, sourceLength, replacement, tail, t4, _null = null; + var t1, t2, index, sectionStart, buffer, char, t3, replacement, sourceLength, tail, t4, _null = null; for (t1 = !escapeDelimiters, t2 = component.length, index = start, sectionStart = index, buffer = _null; index < end;) { if (!(index >= 0 && index < t2)) return A.ioore(component, index); @@ -7022,28 +6998,31 @@ if (t3) ++index; else { - sourceLength = 1; if (char === 37) { replacement = A._Uri__normalizeEscape(component, index, false); if (replacement == null) { index += 3; continue; } - if ("%" === replacement) + if ("%" === replacement) { replacement = "%25"; - else + sourceLength = 1; + } else sourceLength = 3; - } else if (char === 92 && replaceBackslash) + } else if (char === 92 && replaceBackslash) { replacement = "/"; - else { - t3 = false; + sourceLength = 1; + } else { if (t1) if (char <= 93) { t3 = char >>> 4; if (!(t3 < 8)) return A.ioore(B.List_VOY, t3); t3 = (B.List_VOY[t3] & 1 << (char & 15)) !== 0; - } + } else + t3 = false; + else + t3 = false; if (t3) { A._Uri__fail(component, index, "Invalid character"); sourceLength = _null; @@ -7058,9 +7037,12 @@ if ((tail & 64512) === 56320) { char = (char & 1023) << 10 | tail & 1023 | 65536; sourceLength = 2; - } - } - } + } else + sourceLength = 1; + } else + sourceLength = 1; + } else + sourceLength = 1; replacement = A._Uri__escapeChar(char); } } @@ -7429,10 +7411,9 @@ this._box_0 = t0; this.sb = t1; }, - DateTime: function DateTime(t0, t1, t2) { + DateTime: function DateTime(t0, t1) { this._value = t0; - this._microsecond = t1; - this.isUtc = t2; + this.isUtc = t1; }, Duration: function Duration(t0) { this._duration = t0; @@ -7654,7 +7635,7 @@ return true; }, _Html5NodeValidator__uriAttributeValidator(element, attributeName, value, context) { - var t1, t2, t3, t4, t5, t6; + var t1, t2, t3, t4, t5; type$.Element._as(element); A._asString(attributeName); A._asString(value); @@ -7663,28 +7644,29 @@ B.AnchorElement_methods.set$href(t2, value); t3 = t2.hostname; t1 = t1._loc; - t4 = false; if (t3 == t1.hostname) { - t5 = t2.port; - t6 = t1.port; - t6.toString; - if (t5 === t6) { + t4 = t2.port; + t5 = t1.port; + t5.toString; + if (t4 === t5) { t4 = t2.protocol; t1 = t1.protocol; t1.toString; t1 = t4 === t1; } else - t1 = t4; + t1 = false; } else - t1 = t4; - if (!t1) { t1 = false; + if (!t1) if (t3 === "") if (t2.port === "") { t1 = t2.protocol; t1 = t1 === ":" || t1 === ""; - } - } else + } else + t1 = false; + else + t1 = false; + else t1 = true; return t1; }, @@ -8221,7 +8203,7 @@ else if (o instanceof Object && type$.TypedData._is(o)) return o; else if (o instanceof Date) - return new A.DateTime(A.DateTime__validate(A._asInt(o.getTime()), 0, false), 0, false); + return A.DateTime$fromMillisecondsSinceEpoch(A._asInt(o.getTime()), false); else if (o.constructor === $.$get$_dartProxyCtor()) return o.o; else @@ -8289,24 +8271,6 @@ else return $F._as(A._convertDartFunctionFast(f)); }, - _functionToJS1(f) { - var result; - if (typeof f == "function") - throw A.wrapException(A.ArgumentError$("Attempting to rewrap a JS function.", null)); - result = function(_call, f) { - return function(arg1) { - return _call(f, arg1, arguments.length); - }; - }(A._callDartFunctionFast1, f); - result[$.$get$DART_CLOSURE_PROPERTY_NAME()] = f; - return result; - }, - _callDartFunctionFast1(callback, arg1, $length) { - type$.Function._as(callback); - if (A._asInt($length) >= 1) - return callback.call$1(arg1); - return callback.call$0(); - }, _noJsifyRequired(o) { return o == null || A._isBool(o) || typeof o == "number" || typeof o == "string" || type$.Int8List._is(o) || type$.Uint8List._is(o) || type$.Uint8ClampedList._is(o) || type$.Int16List._is(o) || type$.Uint16List._is(o) || type$.Int32List._is(o) || type$.Uint32List._is(o) || type$.Float32List._is(o) || type$.Float64List._is(o) || type$.ByteBuffer._is(o) || type$.ByteData._is(o); }, @@ -8315,6 +8279,9 @@ return object; return new A.jsify__convert(new A._IdentityHashMap(type$._IdentityHashMap_of_nullable_Object_and_nullable_Object)).call$1(object); }, + callMethod(o, method, args, $T) { + return $T._as(o[method].apply(o, args)); + }, promiseToFuture(jsPromise, $T) { var t1 = new A._Future($.Zone__current, $T._eval$1("_Future<0>")), completer = new A._AsyncCompleter(t1, $T._eval$1("_AsyncCompleter<0>")); @@ -9487,7 +9454,7 @@ t1 = null; else { t1 = A._wrapZone0(new A._EventStreamSubscription_closure0(onData), type$.JSObject); - t1 = t1 == null ? null : A._functionToJS1(t1); + t1 = t1 == null ? null : type$.JavaScriptFunction._as(A.allowInterop(t1, type$.Function)); } t1 = new A._EventStreamSubscription0(_target, _eventType, t1, false, $T._eval$1("_EventStreamSubscription0<0>")); t1._streams$_tryResume$0(); @@ -10067,13 +10034,15 @@ }, add$1(receiver, value) { A._arrayInstanceType(receiver)._precomputed1._as(value); - receiver.$flags & 1 && A.throwUnsupportedOperation(receiver, 29); + if (!!receiver.fixed$length) + A.throwExpression(A.UnsupportedError$("add")); receiver.push(value); }, addAll$1(receiver, collection) { var t1; A._arrayInstanceType(receiver)._eval$1("Iterable<1>")._as(collection); - receiver.$flags & 1 && A.throwUnsupportedOperation(receiver, "addAll", 2); + if (!!receiver.fixed$length) + A.throwExpression(A.UnsupportedError$("addAll")); if (Array.isArray(collection)) { this._addAllFromArray$1(receiver, collection); return; @@ -10093,7 +10062,8 @@ receiver.push(array[i]); }, clear$0(receiver) { - receiver.$flags & 1 && A.throwUnsupportedOperation(receiver, "clear", "clear"); + if (!!receiver.fixed$length) + A.throwExpression(A.UnsupportedError$("clear")); receiver.length = 0; }, map$1$1(receiver, f, $T) { @@ -10162,7 +10132,8 @@ setRange$4(receiver, start, end, iterable, skipCount) { var $length, otherList, otherStart, t1, i; A._arrayInstanceType(receiver)._eval$1("Iterable<1>")._as(iterable); - receiver.$flags & 2 && A.throwUnsupportedOperation(receiver, 5); + if (!!receiver.immutable$list) + A.throwExpression(A.UnsupportedError$("setRange")); A.RangeError_checkValidRange(start, end, receiver.length); $length = end - start; if ($length === 0) @@ -10201,7 +10172,8 @@ var len, a, b, undefineds, i, t1 = A._arrayInstanceType(receiver); t1._eval$1("int(1,1)?")._as(compare); - receiver.$flags & 2 && A.throwUnsupportedOperation(receiver, "sort"); + if (!!receiver.immutable$list) + A.throwExpression(A.UnsupportedError$("sort")); len = receiver.length; if (len < 2) return; @@ -10219,13 +10191,14 @@ } return; } - undefineds = 0; - if (t1._precomputed1._is(null)) - for (i = 0; i < receiver.length; ++i) + if (t1._precomputed1._is(null)) { + for (undefineds = 0, i = 0; i < receiver.length; ++i) if (receiver[i] === void 0) { receiver[i] = null; ++undefineds; } + } else + undefineds = 0; receiver.sort(A.convertDartClosureToJS(compare, 2)); if (undefineds > 0) this._replaceSomeNullsWithUndefined$1(receiver, undefineds); @@ -10283,7 +10256,8 @@ }, $indexSet(receiver, index, value) { A._arrayInstanceType(receiver)._precomputed1._as(value); - receiver.$flags & 2 && A.throwUnsupportedOperation(receiver); + if (!!receiver.immutable$list) + A.throwExpression(A.UnsupportedError$("indexed set")); if (!(index >= 0 && index < receiver.length)) throw A.wrapException(A.diagnoseIndexError(receiver, index)); receiver[index] = value; @@ -10390,6 +10364,14 @@ return d; throw A.wrapException(A.UnsupportedError$("" + receiver + ".floor()")); }, + round$0(receiver) { + if (receiver > 0) { + if (receiver !== 1 / 0) + return Math.round(receiver); + } else if (receiver > -1 / 0) + return 0 - Math.round(0 - receiver); + throw A.wrapException(A.UnsupportedError$("" + receiver + ".round()")); + }, toRadixString$1(receiver, radix) { var result, t1, t2, match, exponent; if (radix < 2 || radix > 36) @@ -10685,7 +10667,8 @@ }; A._CastIterableBase.prototype = { get$iterator(_) { - return new A.CastIterator(J.get$iterator$ax(this.get$__internal$_source()), A._instanceType(this)._eval$1("CastIterator<1,2>")); + var t1 = A._instanceType(this); + return new A.CastIterator(J.get$iterator$ax(this.get$__internal$_source()), t1._eval$1("@<1>")._bind$1(t1._rest[1])._eval$1("CastIterator<1,2>")); }, get$length(_) { return J.get$length$asx(this.get$__internal$_source()); @@ -10777,7 +10760,8 @@ }; A.CastMap.prototype = { cast$2$0(_, RK, RV) { - return new A.CastMap(this.__internal$_source, this.$ti._eval$1("@<1,2>")._bind$1(RK)._bind$1(RV)._eval$1("CastMap<1,2,3,4>")); + var t1 = this.$ti; + return new A.CastMap(this.__internal$_source, t1._eval$1("@<1>")._bind$1(t1._rest[1])._bind$1(RK)._bind$1(RV)._eval$1("CastMap<1,2,3,4>")); }, containsKey$1(_, key) { return J.containsKey$1$x(this.__internal$_source, key); @@ -11012,7 +10996,8 @@ }; A.MappedIterable.prototype = { get$iterator(_) { - return new A.MappedIterator(J.get$iterator$ax(this.__internal$_iterable), this._f, A._instanceType(this)._eval$1("MappedIterator<1,2>")); + var t1 = A._instanceType(this); + return new A.MappedIterator(J.get$iterator$ax(this.__internal$_iterable), this._f, t1._eval$1("@<1>")._bind$1(t1._rest[1])._eval$1("MappedIterator<1,2>")); }, get$length(_) { return J.get$length$asx(this.__internal$_iterable); @@ -11369,8 +11354,7 @@ list = []; for (index = 0; index < argumentCount; ++index) list.push(t2.$index(t1, index)); - list.$flags = 3; - return list; + return J.JSArray_markUnmodifiableList(list); }, get$namedArguments() { var t1, t2, namedArgumentCount, t3, t4, namedArgumentsStartIndex, map, i, _this = this; @@ -11918,7 +11902,7 @@ return t1 == null ? type$.RegExpMatch._as(t1) : t1; }, moveNext$0() { - var t1, t2, t3, match, nextIndex, t4, _this = this, + var t1, t2, t3, match, nextIndex, _this = this, string = _this._string; if (string == null) return false; @@ -11931,22 +11915,24 @@ _this.__js_helper$_current = match; nextIndex = match.get$end(0); if (match._match.index === nextIndex) { - t1 = false; if (t3._nativeRegExp.unicode) { - t3 = _this._nextIndex; - t4 = t3 + 1; - if (t4 < t2) { - if (!(t3 >= 0 && t3 < t2)) - return A.ioore(string, t3); - t3 = string.charCodeAt(t3); - if (t3 >= 55296 && t3 <= 56319) { - if (!(t4 >= 0)) - return A.ioore(string, t4); - t1 = string.charCodeAt(t4); + t1 = _this._nextIndex; + t3 = t1 + 1; + if (t3 < t2) { + if (!(t1 >= 0 && t1 < t2)) + return A.ioore(string, t1); + t1 = string.charCodeAt(t1); + if (t1 >= 55296 && t1 <= 56319) { + if (!(t3 >= 0)) + return A.ioore(string, t3); + t1 = string.charCodeAt(t3); t1 = t1 >= 56320 && t1 <= 57343; - } - } - } + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; nextIndex = (t1 ? nextIndex + 1 : nextIndex) + 1; } _this._nextIndex = nextIndex; @@ -12054,7 +12040,6 @@ }, $indexSet(receiver, index, value) { A._asDouble(value); - receiver.$flags & 2 && A.throwUnsupportedOperation(receiver); A._checkValidIndex(index, receiver, receiver.length); receiver[index] = value; }, @@ -12065,7 +12050,6 @@ A.NativeTypedArrayOfInt.prototype = { $indexSet(receiver, index, value) { A._asInt(value); - receiver.$flags & 2 && A.throwUnsupportedOperation(receiver); A._checkValidIndex(index, receiver, receiver.length); receiver[index] = value; }, @@ -12393,16 +12377,14 @@ }; A.Future_Future$microtask_closure.prototype = { call$0() { - var e, s, exception, computationResult = null; + var e, s, exception; try { - computationResult = this.computation.call$0(); + this.result._complete$1(this.computation.call$0()); } catch (exception) { e = A.unwrapException(exception); s = A.getTraceFromException(exception); A._completeWithErrorCallback(this.result, e, s); - return; } - this.result._complete$1(computationResult); }, $signature: 0 }; @@ -12528,7 +12510,7 @@ result = new A._Future(t2, t1); if (t2 !== B.C__RootZone) onError = A._registerErrorHandler(onError, t2); - this._addListener$1(new A._FutureListener(result, 2, null, onError, t1._eval$1("_FutureListener<1,1>"))); + this._addListener$1(new A._FutureListener(result, 2, null, onError, t1._eval$1("@<1>")._bind$1(t1._precomputed1)._eval$1("_FutureListener<1,2>"))); return result; }, whenComplete$1(action) { @@ -12539,7 +12521,7 @@ result = new A._Future(t2, t1); if (t2 !== B.C__RootZone) action = t2.registerCallback$1$1(action, type$.dynamic); - this._addListener$1(new A._FutureListener(result, 8, action, null, t1._eval$1("_FutureListener<1,1>"))); + this._addListener$1(new A._FutureListener(result, 8, action, null, t1._eval$1("@<1>")._bind$1(t1._precomputed1)._eval$1("_FutureListener<1,2>"))); return result; }, _setErrorObject$1(error) { @@ -13364,13 +13346,15 @@ t1 = _this._state; if ((t1 & 128) !== 0 && _this._pending.lastPendingEvent == null) { t1 = _this._state = (t1 & 4294967167) >>> 0; - t2 = false; if ((t1 & 4) !== 0) if (t1 < 256) { t2 = _this._pending; t2 = t2 == null ? null : t2.lastPendingEvent == null; t2 = t2 !== false; - } + } else + t2 = false; + else + t2 = false; if (t2) { t1 = (t1 & 4294967291) >>> 0; _this._state = t1; @@ -13571,19 +13555,20 @@ }; A._ForwardingStream.prototype = { listen$4$cancelOnError$onDone$onError(onData, cancelOnError, onDone, onError) { - var t2, t3, t4, t5, t6, t7, + var t2, t3, t4, t5, t6, t7, t8, t1 = this.$ti; t1._eval$1("~(2)?")._as(onData); type$.nullable_void_Function._as(onDone); - t2 = $.Zone__current; - t3 = cancelOnError === true ? 1 : 0; - t4 = onError != null ? 32 : 0; - t5 = A._BufferingStreamSubscription__registerDataHandler(t2, onData, t1._rest[1]); - t6 = A._BufferingStreamSubscription__registerErrorHandler(t2, onError); - t7 = onDone == null ? A.async___nullDoneHandler$closure() : onDone; - t1 = new A._ForwardingStreamSubscription(this, t5, t6, t2.registerCallback$1$1(t7, type$.void), t2, t3 | t4, t1._eval$1("_ForwardingStreamSubscription<1,2>")); - t1.set$_subscription(this._source.listen$3$onDone$onError(t1.get$_handleData(), t1.get$_handleDone(), t1.get$_handleError())); - return t1; + t2 = t1._rest[1]; + t3 = $.Zone__current; + t4 = cancelOnError === true ? 1 : 0; + t5 = onError != null ? 32 : 0; + t6 = A._BufferingStreamSubscription__registerDataHandler(t3, onData, t2); + t7 = A._BufferingStreamSubscription__registerErrorHandler(t3, onError); + t8 = onDone == null ? A.async___nullDoneHandler$closure() : onDone; + t2 = new A._ForwardingStreamSubscription(this, t6, t7, t3.registerCallback$1$1(t8, type$.void), t3, t4 | t5, t1._eval$1("@<1>")._bind$1(t2)._eval$1("_ForwardingStreamSubscription<1,2>")); + t2.set$_subscription(this._source.listen$3$onDone$onError(t2.get$_handleData(), t2.get$_handleDone(), t2.get$_handleError())); + return t2; }, listen$2$onError(onData, onError) { return this.listen$4$cancelOnError$onDone$onError(onData, null, null, onError); @@ -14247,21 +14232,21 @@ } }, _computeKeys$0() { - var strings, index, names, entries, i, nums, rest, bucket, $length, i0, _this = this, + var strings, names, entries, index, i, nums, rest, bucket, $length, i0, _this = this, result = _this._keys; if (result != null) return result; result = A.List_List$filled(_this._collection$_length, null, false, type$.dynamic); strings = _this._collection$_strings; - index = 0; if (strings != null) { names = Object.getOwnPropertyNames(strings); entries = names.length; - for (i = 0; i < entries; ++i) { + for (index = 0, i = 0; i < entries; ++i) { result[index] = names[i]; ++index; } - } + } else + index = 0; nums = _this._collection$_nums; if (nums != null) { names = Object.getOwnPropertyNames(nums); @@ -14498,21 +14483,21 @@ return true; }, _computeElements$0() { - var strings, index, names, entries, i, nums, rest, bucket, $length, i0, _this = this, + var strings, names, entries, index, i, nums, rest, bucket, $length, i0, _this = this, result = _this._collection$_elements; if (result != null) return result; result = A.List_List$filled(_this._collection$_length, null, false, type$.dynamic); strings = _this._collection$_strings; - index = 0; if (strings != null) { names = Object.getOwnPropertyNames(strings); entries = names.length; - for (i = 0; i < entries; ++i) { + for (index = 0, i = 0; i < entries; ++i) { result[index] = names[i]; ++index; } - } + } else + index = 0; nums = _this._collection$_nums; if (nums != null) { names = Object.getOwnPropertyNames(nums); @@ -14799,7 +14784,7 @@ if (end == null) end = listLength; A.RangeError_checkValidRange(start, end, listLength); - return A.List_List$of(this.getRange$2(receiver, start, end), true, A.instanceType(receiver)._eval$1("ListBase.E")); + return A.List_List$from(this.getRange$2(receiver, start, end), true, A.instanceType(receiver)._eval$1("ListBase.E")); }, sublist$1(receiver, start) { return this.sublist$2(receiver, start, null); @@ -15345,7 +15330,7 @@ A.SplayTreeSet.prototype = { get$iterator(_) { var t1 = this.$ti; - return new A._SplayTreeKeyIterator(this, A._setArrayType([], t1._eval$1("JSArray<_SplayTreeSetNode<1>>")), this._splayCount, t1._eval$1("_SplayTreeKeyIterator<1,_SplayTreeSetNode<1>>")); + return new A._SplayTreeKeyIterator(this, A._setArrayType([], t1._eval$1("JSArray<_SplayTreeSetNode<1>>")), this._splayCount, t1._eval$1("@<1>")._bind$1(t1._eval$1("_SplayTreeSetNode<1>"))._eval$1("_SplayTreeKeyIterator<1,2>")); }, get$length(_) { return this._count; @@ -15986,12 +15971,11 @@ }; A._Utf8Encoder.prototype = { _writeReplacementCharacter$0() { - var t4, _this = this, + var _this = this, t1 = _this._buffer, t2 = _this._bufferIndex, - t3 = _this._bufferIndex = t2 + 1; - t1.$flags & 2 && A.throwUnsupportedOperation(t1); - t4 = t1.length; + t3 = _this._bufferIndex = t2 + 1, + t4 = t1.length; if (!(t2 < t4)) return A.ioore(t1, t2); t1[t2] = 239; @@ -16011,7 +15995,6 @@ t1 = _this._buffer; t2 = _this._bufferIndex; t3 = _this._bufferIndex = t2 + 1; - t1.$flags & 2 && A.throwUnsupportedOperation(t1); t4 = t1.length; if (!(t2 < t4)) return A.ioore(t1, t2); @@ -16035,7 +16018,7 @@ } }, _fillBuffer$3(str, start, end) { - var t1, t2, t3, t4, stringIndex, codeUnit, t5, t6, _this = this; + var t1, t2, t3, stringIndex, codeUnit, t4, t5, _this = this; if (start !== end) { t1 = end - 1; if (!(t1 >= 0 && t1 < str.length)) @@ -16045,60 +16028,57 @@ t1 = false; if (t1) --end; - for (t1 = _this._buffer, t2 = t1.$flags | 0, t3 = t1.length, t4 = str.length, stringIndex = start; stringIndex < end; ++stringIndex) { - if (!(stringIndex < t4)) + for (t1 = _this._buffer, t2 = t1.length, t3 = str.length, stringIndex = start; stringIndex < end; ++stringIndex) { + if (!(stringIndex < t3)) return A.ioore(str, stringIndex); codeUnit = str.charCodeAt(stringIndex); if (codeUnit <= 127) { - t5 = _this._bufferIndex; - if (t5 >= t3) + t4 = _this._bufferIndex; + if (t4 >= t2) break; - _this._bufferIndex = t5 + 1; - t2 & 2 && A.throwUnsupportedOperation(t1); - t1[t5] = codeUnit; + _this._bufferIndex = t4 + 1; + t1[t4] = codeUnit; } else { - t5 = codeUnit & 64512; - if (t5 === 55296) { - if (_this._bufferIndex + 4 > t3) + t4 = codeUnit & 64512; + if (t4 === 55296) { + if (_this._bufferIndex + 4 > t2) break; - t5 = stringIndex + 1; - if (!(t5 < t4)) - return A.ioore(str, t5); - if (_this._writeSurrogate$2(codeUnit, str.charCodeAt(t5))) - stringIndex = t5; - } else if (t5 === 56320) { - if (_this._bufferIndex + 3 > t3) + t4 = stringIndex + 1; + if (!(t4 < t3)) + return A.ioore(str, t4); + if (_this._writeSurrogate$2(codeUnit, str.charCodeAt(t4))) + stringIndex = t4; + } else if (t4 === 56320) { + if (_this._bufferIndex + 3 > t2) break; _this._writeReplacementCharacter$0(); } else if (codeUnit <= 2047) { - t5 = _this._bufferIndex; - t6 = t5 + 1; - if (t6 >= t3) + t4 = _this._bufferIndex; + t5 = t4 + 1; + if (t5 >= t2) break; - _this._bufferIndex = t6; - t2 & 2 && A.throwUnsupportedOperation(t1); - if (!(t5 < t3)) - return A.ioore(t1, t5); - t1[t5] = codeUnit >>> 6 | 192; - _this._bufferIndex = t6 + 1; - t1[t6] = codeUnit & 63 | 128; + _this._bufferIndex = t5; + if (!(t4 < t2)) + return A.ioore(t1, t4); + t1[t4] = codeUnit >>> 6 | 192; + _this._bufferIndex = t5 + 1; + t1[t5] = codeUnit & 63 | 128; } else { - t5 = _this._bufferIndex; - if (t5 + 2 >= t3) + t4 = _this._bufferIndex; + if (t4 + 2 >= t2) break; - t6 = _this._bufferIndex = t5 + 1; - t2 & 2 && A.throwUnsupportedOperation(t1); - if (!(t5 < t3)) - return A.ioore(t1, t5); - t1[t5] = codeUnit >>> 12 | 224; - t5 = _this._bufferIndex = t6 + 1; - if (!(t6 < t3)) - return A.ioore(t1, t6); - t1[t6] = codeUnit >>> 6 & 63 | 128; - _this._bufferIndex = t5 + 1; - if (!(t5 < t3)) + t5 = _this._bufferIndex = t4 + 1; + if (!(t4 < t2)) + return A.ioore(t1, t4); + t1[t4] = codeUnit >>> 12 | 224; + t4 = _this._bufferIndex = t5 + 1; + if (!(t5 < t2)) return A.ioore(t1, t5); - t1[t5] = codeUnit & 63 | 128; + t1[t5] = codeUnit >>> 6 & 63 | 128; + _this._bufferIndex = t4 + 1; + if (!(t4 < t2)) + return A.ioore(t1, t4); + t1[t4] = codeUnit & 63 | 128; } } } @@ -16295,7 +16275,7 @@ return _this._isNegative && rem._used > 0 ? rem.$negate(0) : rem; }, _divRem$1(other) { - var yDigits, yUsed, t1, nsh, yDigits0, yUsed0, resultDigits, resultUsed0, topDigitDivisor, j, tmpDigits, tmpUsed, resultUsed1, nyDigits, i, estimatedQuotientDigit, _this = this, + var yDigits, yUsed, t1, nsh, yDigits0, yUsed0, resultDigits, resultUsed0, topDigitDivisor, j, tmpDigits, tmpUsed, resultUsed1, t2, nyDigits, i, estimatedQuotientDigit, _this = this, resultUsed = _this._used; if (resultUsed === $._BigIntImpl__lastDividendUsed && other._used === $._BigIntImpl__lastDivisorUsed && _this._digits === $._BigIntImpl__lastDividendDigits && other._digits === $._BigIntImpl__lastDivisorDigits) return; @@ -16324,27 +16304,25 @@ tmpDigits = new Uint16Array(resultUsed0); tmpUsed = A._BigIntImpl__dlShiftDigits(yDigits0, yUsed0, j, tmpDigits); resultUsed1 = resultUsed0 + 1; - t1 = resultDigits.$flags | 0; + t1 = resultDigits.length; if (A._BigIntImpl__compareDigits(resultDigits, resultUsed0, tmpDigits, tmpUsed) >= 0) { - t1 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(resultUsed0 >= 0 && resultUsed0 < resultDigits.length)) + if (!(resultUsed0 >= 0 && resultUsed0 < t1)) return A.ioore(resultDigits, resultUsed0); resultDigits[resultUsed0] = 1; A._BigIntImpl__absSub(resultDigits, resultUsed1, tmpDigits, tmpUsed, resultDigits); } else { - t1 & 2 && A.throwUnsupportedOperation(resultDigits); - if (!(resultUsed0 >= 0 && resultUsed0 < resultDigits.length)) + if (!(resultUsed0 >= 0 && resultUsed0 < t1)) return A.ioore(resultDigits, resultUsed0); resultDigits[resultUsed0] = 0; } - t1 = yUsed0 + 2; - nyDigits = new Uint16Array(t1); - if (!(yUsed0 >= 0 && yUsed0 < t1)) + t2 = yUsed0 + 2; + nyDigits = new Uint16Array(t2); + if (!(yUsed0 >= 0 && yUsed0 < t2)) return A.ioore(nyDigits, yUsed0); nyDigits[yUsed0] = 1; A._BigIntImpl__absSub(nyDigits, yUsed0 + 1, yDigits0, yUsed0, nyDigits); i = resultUsed0 - 1; - for (t1 = resultDigits.length; j > 0;) { + for (; j > 0;) { estimatedQuotientDigit = A._BigIntImpl__estimateQuotientDigit(topDigitDivisor, resultDigits, i); --j; A._BigIntImpl__mulAdd(estimatedQuotientDigit, nyDigits, 0, resultDigits, j, yUsed0); @@ -16468,18 +16446,14 @@ $eq(_, other) { if (other == null) return false; - return other instanceof A.DateTime && this._value === other._value && this._microsecond === other._microsecond && this.isUtc === other.isUtc; - }, - get$hashCode(_) { - return A.Object_hash(this._value, this._microsecond, B.C_SentinelValue, B.C_SentinelValue); + return other instanceof A.DateTime && this._value === other._value && this.isUtc === other.isUtc; }, compareTo$1(_, other) { - var r; - type$.DateTime._as(other); - r = B.JSInt_methods.compareTo$1(this._value, other._value); - if (r !== 0) - return r; - return B.JSInt_methods.compareTo$1(this._microsecond, other._microsecond); + return B.JSInt_methods.compareTo$1(this._value, type$.DateTime._as(other)._value); + }, + get$hashCode(_) { + var t1 = this._value; + return (t1 ^ B.JSInt_methods._shrOtherPositive$1(t1, 30)) & 1073741823; }, toString$0(_) { var _this = this, @@ -16490,13 +16464,11 @@ min = A.DateTime__twoDigits(A.Primitives_getMinutes(_this)), sec = A.DateTime__twoDigits(A.Primitives_getSeconds(_this)), ms = A.DateTime__threeDigits(A.Primitives_getMilliseconds(_this)), - t1 = _this._microsecond, - us = t1 === 0 ? "" : A.DateTime__threeDigits(t1); - t1 = y + "-" + m; + t1 = y + "-" + m; if (_this.isUtc) - return t1 + "-" + d + " " + h + ":" + min + ":" + sec + "." + ms + us + "Z"; + return t1 + "-" + d + " " + h + ":" + min + ":" + sec + "." + ms + "Z"; else - return t1 + "-" + d + " " + h + ":" + min + ":" + sec + "." + ms + us; + return t1 + "-" + d + " " + h + ":" + min + ":" + sec + "." + ms; }, $isComparable: 1 }; @@ -16679,7 +16651,7 @@ }; A.FormatException.prototype = { toString$0(_) { - var t1, lineEnd, lineNum, lineStart, previousCharWasCR, i, char, prefix, postfix, end, start, + var t1, lineEnd, lineNum, lineStart, previousCharWasCR, i, char, end, start, prefix, postfix, message = this.message, report = "" !== message ? "FormatException: " + message : "FormatException", offset = this.offset, @@ -16721,12 +16693,12 @@ break; } } - prefix = ""; - if (lineEnd - lineStart > 78) { - postfix = "..."; + if (lineEnd - lineStart > 78) if (offset - lineStart < 75) { end = lineStart + 75; start = lineStart; + prefix = ""; + postfix = "..."; } else { if (lineEnd - offset < 75) { start = lineEnd - 75; @@ -16735,12 +16707,14 @@ } else { start = offset - 36; end = offset + 36; + postfix = "..."; } prefix = "..."; } - } else { + else { end = lineEnd; start = lineStart; + prefix = ""; postfix = ""; } return report + prefix + B.JSString_methods.substring$2(source, start, end) + postfix + "\n" + B.JSString_methods.$mul(" ", offset - start + prefix.length) + "^\n"; @@ -17037,12 +17011,11 @@ return this.get$_text(); }, $eq(_, other) { - var t1, t2, t3, _this = this; + var t1, t2, _this = this; if (other == null) return false; if (_this === other) return true; - t1 = false; if (type$.Uri._is(other)) if (_this.scheme === other.get$scheme()) if (_this._host != null === other.get$hasAuthority()) @@ -17050,21 +17023,38 @@ if (_this.get$host(0) === other.get$host(other)) if (_this.get$port(0) === other.get$port(other)) if (_this.path === other.get$path(other)) { - t2 = _this._query; - t3 = t2 == null; - if (!t3 === other.get$hasQuery()) { - if (t3) - t2 = ""; - if (t2 === other.get$query(other)) { - t2 = _this._fragment; - t3 = t2 == null; - if (!t3 === other.get$hasFragment()) { - t1 = t3 ? "" : t2; + t1 = _this._query; + t2 = t1 == null; + if (!t2 === other.get$hasQuery()) { + if (t2) + t1 = ""; + if (t1 === other.get$query(other)) { + t1 = _this._fragment; + t2 = t1 == null; + if (!t2 === other.get$hasFragment()) { + if (t2) + t1 = ""; t1 = t1 === other.get$fragment(); - } - } - } - } + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; + else + t1 = false; + else + t1 = false; + else + t1 = false; + else + t1 = false; + else + t1 = false; + else + t1 = false; return t1; }, $isUri: 1, @@ -17124,20 +17114,19 @@ }; A._createTables_setChars.prototype = { call$3(target, chars, transition) { - var t1, t2, i, t3; - for (t1 = chars.length, t2 = target.$flags | 0, i = 0; i < t1; ++i) { - t3 = chars.charCodeAt(i) ^ 96; - t2 & 2 && A.throwUnsupportedOperation(target); - if (!(t3 < 96)) - return A.ioore(target, t3); - target[t3] = transition; + var t1, i, t2; + for (t1 = chars.length, i = 0; i < t1; ++i) { + t2 = chars.charCodeAt(i) ^ 96; + if (!(t2 < 96)) + return A.ioore(target, t2); + target[t2] = transition; } }, $signature: 25 }; A._createTables_setRange.prototype = { call$3(target, range, transition) { - var i, n, t2, + var i, n, t1 = range.length; if (0 >= t1) return A.ioore(range, 0); @@ -17145,13 +17134,11 @@ if (1 >= t1) return A.ioore(range, 1); n = range.charCodeAt(1); - t1 = target.$flags | 0; for (; i <= n; ++i) { - t2 = (i ^ 96) >>> 0; - t1 & 2 && A.throwUnsupportedOperation(target); - if (!(t2 < 96)) - return A.ioore(target, t2); - target[t2] = transition; + t1 = (i ^ 96) >>> 0; + if (!(t1 < 96)) + return A.ioore(target, t1); + target[t1] = transition; } }, $signature: 25 @@ -17428,26 +17415,28 @@ return "Rectangle (" + A.S(t1) + ", " + A.S(t2) + ") " + A.S(this.get$width(receiver)) + " x " + A.S(this.get$height(receiver)); }, $eq(receiver, other) { - var t1, t2, t3; + var t1, t2; if (other == null) return false; - t1 = false; if (type$.Rectangle_num._is(other)) { - t2 = receiver.left; + t1 = receiver.left; + t1.toString; + t2 = other.left; t2.toString; - t3 = other.left; - t3.toString; - if (t2 === t3) { - t2 = receiver.top; + if (t1 === t2) { + t1 = receiver.top; + t1.toString; + t2 = other.top; t2.toString; - t3 = other.top; - t3.toString; - if (t2 === t3) { + if (t1 === t2) { t1 = J.getInterceptor$x(other); t1 = this.get$width(receiver) === t1.get$width(other) && this.get$height(receiver) === t1.get$height(other); - } - } - } + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; return t1; }, get$hashCode(receiver) { @@ -18611,33 +18600,36 @@ return "Rectangle (" + A.S(t1) + ", " + A.S(t2) + ") " + A.S(t3) + " x " + A.S(t4); }, $eq(receiver, other) { - var t1, t2, t3; + var t1, t2; if (other == null) return false; - t1 = false; if (type$.Rectangle_num._is(other)) { - t2 = receiver.left; + t1 = receiver.left; + t1.toString; + t2 = other.left; t2.toString; - t3 = other.left; - t3.toString; - if (t2 === t3) { - t2 = receiver.top; + if (t1 === t2) { + t1 = receiver.top; + t1.toString; + t2 = other.top; t2.toString; - t3 = other.top; - t3.toString; - if (t2 === t3) { - t2 = receiver.width; - t2.toString; - t3 = J.getInterceptor$x(other); - if (t2 === t3.get$width(other)) { + if (t1 === t2) { + t1 = receiver.width; + t1.toString; + t2 = J.getInterceptor$x(other); + if (t1 === t2.get$width(other)) { t1 = receiver.height; t1.toString; - t3 = t1 === t3.get$height(other); - t1 = t3; - } - } - } - } + t2 = t1 === t2.get$height(other); + t1 = t2; + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; return t1; }, get$hashCode(receiver) { @@ -19489,7 +19481,7 @@ if (t1) { t1 = e.getTime(); t1.toString; - return new A.DateTime(A.DateTime__validate(t1, 0, true), 0, true); + return A.DateTime$fromMillisecondsSinceEpoch(t1, true); } t1 = e instanceof RegExp; t1.toString; @@ -19739,7 +19731,7 @@ if (t1.containsKey$1(0, o)) return t1.$index(0, o); if (o instanceof Date) - return new A.DateTime(A.DateTime__validate(o.getTime(), 0, true), 0, true); + return A.DateTime$fromMillisecondsSinceEpoch(o.getTime(), true); if (o instanceof RegExp) throw A.wrapException(A.ArgumentError$("structured clone of RegExp", null)); if (typeof Promise != "undefined" && o instanceof Promise) @@ -20490,7 +20482,8 @@ t1 = _this.__ListMultimapBuilder__builtMap_A; t1 === $ && A.throwLateFieldNI(_s9_); t2 = _this.$ti; - _this.set$_list_multimap$_builtMapOwner(new A._BuiltListMultimap(t1, A.BuiltList_BuiltList$from(B.List_empty, t2._rest[1]), t2._eval$1("_BuiltListMultimap<1,2>"))); + t3 = t2._rest[1]; + _this.set$_list_multimap$_builtMapOwner(new A._BuiltListMultimap(t1, A.BuiltList_BuiltList$from(B.List_empty, t3), t2._eval$1("@<1>")._bind$1(t3)._eval$1("_BuiltListMultimap<1,2>"))); } t1 = _this._list_multimap$_builtMapOwner; t1.toString; @@ -20603,7 +20596,7 @@ toBuilder$0() { var t1 = this.$ti; t1._eval$1("_BuiltMap<1,2>")._as(this); - return new A.MapBuilder(this._mapFactory, this._map$_map, this, t1._eval$1("MapBuilder<1,2>")); + return new A.MapBuilder(this._mapFactory, this._map$_map, this, t1._eval$1("@<1>")._bind$1(t1._rest[1])._eval$1("MapBuilder<1,2>")); }, get$hashCode(_) { var t2, _this = this, @@ -20702,11 +20695,12 @@ }; A.MapBuilder.prototype = { build$0() { - var t1, _this = this; + var t1, t2, _this = this; if (_this._mapOwner == null) { t1 = _this.__MapBuilder__map_A; t1 === $ && A.throwLateFieldNI("_map"); - _this.set$_mapOwner(new A._BuiltMap(_this._mapFactory, t1, _this.$ti._eval$1("_BuiltMap<1,2>"))); + t2 = _this.$ti; + _this.set$_mapOwner(new A._BuiltMap(_this._mapFactory, t1, t2._eval$1("@<1>")._bind$1(t2._rest[1])._eval$1("_BuiltMap<1,2>"))); } t1 = _this._mapOwner; t1.toString; @@ -21075,7 +21069,8 @@ t1 = _this.__SetMultimapBuilder__builtMap_A; t1 === $ && A.throwLateFieldNI(_s9_); t2 = _this.$ti; - _this.set$_builtMapOwner(new A._BuiltSetMultimap(t1, A.BuiltSet_BuiltSet$from(B.List_empty, t2._rest[1]), t2._eval$1("_BuiltSetMultimap<1,2>"))); + t3 = t2._rest[1]; + _this.set$_builtMapOwner(new A._BuiltSetMultimap(t1, A.BuiltSet_BuiltSet$from(B.List_empty, t3), t2._eval$1("@<1>")._bind$1(t3)._eval$1("_BuiltSetMultimap<1,2>"))); } t1 = _this._builtMapOwner; t1.toString; @@ -22119,22 +22114,17 @@ type$.DateTime._as(dateTime); if (!dateTime.isUtc) throw A.wrapException(A.ArgumentError$value(dateTime, "dateTime", "Must be in utc for serialization.")); - return 1000 * dateTime._value + dateTime._microsecond; + return 1000 * dateTime._value; }, serialize$2(serializers, dateTime) { return this.serialize$3$specifiedType(serializers, dateTime, B.FullType_null_List_empty_false); }, deserialize$3$specifiedType(serializers, serialized, specifiedType) { - var t1, t2; - A._asInt(serialized); - t1 = B.JSInt_methods.$mod(serialized, 1000); - t2 = B.JSInt_methods._tdivFast$1(serialized - t1, 1000); - if (t2 < -864e13 || t2 > 864e13) - A.throwExpression(A.RangeError$range(t2, -864e13, 864e13, "millisecondsSinceEpoch", null)); - if (t2 === 864e13 && t1 !== 0) - A.throwExpression(A.ArgumentError$value(t1, "microsecond", string$.Time_i)); + var t1 = B.JSNumber_methods.round$0(A._asInt(serialized) / 1000); + if (Math.abs(t1) > 864e13) + A.throwExpression(A.ArgumentError$("DateTime is outside valid range: " + t1, null)); A.checkNotNullable(true, "isUtc", type$.bool); - return new A.DateTime(t2, t1, true); + return new A.DateTime(t1, true); }, deserialize$2(serializers, serialized) { return this.deserialize$3$specifiedType(serializers, serialized, B.FullType_null_List_empty_false); @@ -25014,15 +25004,17 @@ A.PoolResource.prototype = {}; A.SseClient.prototype = { SseClient$2$debugKey(serverUrl, debugKey) { - var t2, _this = this, + var t2, t3, _this = this, t1 = serverUrl + "?sseClientId=" + _this._clientId; _this.__SseClient__serverUrl_A = t1; t2 = type$.JSObject; t1 = t2._as(new self.EventSource(t1, {withCredentials: true})); _this.__SseClient__eventSource_A = t1; new A._EventStream(t1, "open", false, type$._EventStream_JSObject).get$first(0).whenComplete$1(new A.SseClient_closure(_this)); - _this.__SseClient__eventSource_A.addEventListener("message", A._functionToJS1(_this.get$_onIncomingMessage())); - _this.__SseClient__eventSource_A.addEventListener("control", A._functionToJS1(_this.get$_onIncomingControlMessage())); + t1 = type$.Function; + t3 = type$.JavaScriptFunction; + _this.__SseClient__eventSource_A.addEventListener("message", t3._as(A.allowInterop(_this.get$_onIncomingMessage(), t1))); + _this.__SseClient__eventSource_A.addEventListener("control", t3._as(A.allowInterop(_this.get$_onIncomingControlMessage(), t1))); t1 = type$.nullable_void_Function_JSObject; A._EventStreamSubscription$0(_this.__SseClient__eventSource_A, "open", t1._as(new A.SseClient_closure0(_this)), false, t2); A._EventStreamSubscription$0(_this.__SseClient__eventSource_A, "error", t1._as(new A.SseClient_closure1(_this)), false, t2); @@ -25513,7 +25505,7 @@ throw A.wrapException(A.StateError$("Subscription has been canceled.")); _this._streams$_unlisten$0(); t1 = A._wrapZone0(new A._EventStreamSubscription_onData_closure(handleData), type$.JSObject); - t1 = t1 == null ? null : A._functionToJS1(t1); + t1 = t1 == null ? null : type$.JavaScriptFunction._as(A.allowInterop(t1, type$.Function)); _this._streams$_onData = t1; _this._streams$_tryResume$0(); }, @@ -25569,7 +25561,7 @@ throw A.wrapException(A.WebSocketConnectionClosed$()); t1 = A.jsify(b); t1.toString; - this._webSocket.send(t1); + A.callMethod(this._webSocket, "send", [t1], type$.void); }, close$2(_, code, reason) { var $async$goto = 0, @@ -25769,7 +25761,7 @@ A.throwExpression(A.WebSocketConnectionClosed$()); t2 = A.jsify(t2); t2.toString; - t1._webSocket.send(t2); + A.callMethod(t1._webSocket, "send", [t2], type$.void); break $label1$1; } b = null; @@ -26204,22 +26196,26 @@ }; A.main__closure7.prototype = { call$1(e) { - var t2, - t1 = false; + var t1; if (type$.KeyboardEvent._is(e)) if (B.JSArray_methods.contains$1(B.List_2ZF, e.key)) { - t2 = e.altKey; - t2.toString; - if (t2) { - t2 = e.ctrlKey; - t2.toString; - if (!t2) { + t1 = e.altKey; + t1.toString; + if (t1) { + t1 = e.ctrlKey; + t1.toString; + if (!t1) { t1 = e.metaKey; t1.toString; t1 = !t1; - } - } - } + } else + t1 = false; + } else + t1 = false; + } else + t1 = false; + else + t1 = false; if (t1) { e.preventDefault(); self.$launchDevTools.call$0(); @@ -27216,12 +27212,11 @@ arrayRti: Symbol("$ti"), rttc: {} }; - A._Universe_addRules(init.typeUniverse, JSON.parse('{"PlainJavaScriptObject":"LegacyJavaScriptObject","UnknownJavaScriptObject":"LegacyJavaScriptObject","JavaScriptFunction":"LegacyJavaScriptObject","Promise":"LegacyJavaScriptObject","JsError":"LegacyJavaScriptObject","RequireLoader":"LegacyJavaScriptObject","JsMap":"LegacyJavaScriptObject","KeyframeEffect":"JavaScriptObject","KeyframeEffectReadOnly":"JavaScriptObject","AnimationEffectReadOnly":"JavaScriptObject","AbortPaymentEvent":"Event","ExtendableEvent":"Event","AudioContext":"BaseAudioContext","AbsoluteOrientationSensor":"EventTarget","OrientationSensor":"EventTarget","Sensor":"EventTarget","AElement":"SvgElement","GraphicsElement":"SvgElement","_ResourceProgressEvent":"ProgressEvent","AudioElement":"HtmlElement","MediaElement":"HtmlElement","ShadowRoot":"Node","DocumentFragment":"Node","XmlDocument":"Document","VttCue":"TextTrackCue","CompositionEvent":"UIEvent","DedicatedWorkerGlobalScope":"WorkerGlobalScope","CDataSection":"CharacterData","Text":"CharacterData","MathMLElement":"Element","HttpRequestUpload":"HttpRequestEventTarget","HtmlFormControlsCollection":"HtmlCollection","CssCharsetRule":"CssRule","CssMatrixComponent":"CssTransformComponent","CssStyleSheet":"StyleSheet","CssurlImageValue":"CssStyleValue","CssImageValue":"CssStyleValue","CssResourceValue":"CssStyleValue","JSArray":{"List":["1"],"EfficientLengthIterable":["1"],"JSObject":[],"Iterable":["1"],"JSIndexable":["1"],"Iterable.E":"1"},"JSBool":{"bool":[],"TrustedGetRuntimeType":[]},"JSNull":{"Null":[],"TrustedGetRuntimeType":[]},"JavaScriptObject":{"JSObject":[]},"LegacyJavaScriptObject":{"JSObject":[],"Promise":["1&"],"JsError":[]},"JSUnmodifiableArray":{"JSArray":["1"],"List":["1"],"EfficientLengthIterable":["1"],"JSObject":[],"Iterable":["1"],"JSIndexable":["1"],"Iterable.E":"1"},"ArrayIterator":{"Iterator":["1"]},"JSNumber":{"double":[],"num":[],"Comparable":["num"]},"JSInt":{"double":[],"int":[],"num":[],"Comparable":["num"],"TrustedGetRuntimeType":[]},"JSNumNotInt":{"double":[],"num":[],"Comparable":["num"],"TrustedGetRuntimeType":[]},"JSString":{"String":[],"Comparable":["String"],"Pattern":[],"JSIndexable":["@"],"TrustedGetRuntimeType":[]},"_CastIterableBase":{"Iterable":["2"]},"CastIterator":{"Iterator":["2"]},"CastIterable":{"_CastIterableBase":["1","2"],"Iterable":["2"],"Iterable.E":"2"},"_EfficientLengthCastIterable":{"CastIterable":["1","2"],"_CastIterableBase":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"Iterable.E":"2"},"_CastListBase":{"ListBase":["2"],"List":["2"],"_CastIterableBase":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"]},"CastList":{"_CastListBase":["1","2"],"ListBase":["2"],"List":["2"],"_CastIterableBase":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"ListBase.E":"2","Iterable.E":"2"},"CastMap":{"MapBase":["3","4"],"Map":["3","4"],"MapBase.K":"3","MapBase.V":"4"},"LateError":{"Error":[]},"EfficientLengthIterable":{"Iterable":["1"]},"ListIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"]},"SubListIterable":{"ListIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListIterable.E":"1","Iterable.E":"1"},"ListIterator":{"Iterator":["1"]},"MappedIterable":{"Iterable":["2"],"Iterable.E":"2"},"EfficientLengthMappedIterable":{"MappedIterable":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"Iterable.E":"2"},"MappedIterator":{"Iterator":["2"]},"MappedListIterable":{"ListIterable":["2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"ListIterable.E":"2","Iterable.E":"2"},"WhereIterable":{"Iterable":["1"],"Iterable.E":"1"},"WhereIterator":{"Iterator":["1"]},"TakeIterable":{"Iterable":["1"],"Iterable.E":"1"},"EfficientLengthTakeIterable":{"TakeIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"TakeIterator":{"Iterator":["1"]},"SkipIterable":{"Iterable":["1"],"Iterable.E":"1"},"EfficientLengthSkipIterable":{"SkipIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"SkipIterator":{"Iterator":["1"]},"EmptyIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"EmptyIterator":{"Iterator":["1"]},"UnmodifiableListBase":{"ListBase":["1"],"UnmodifiableListMixin":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"ReversedListIterable":{"ListIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListIterable.E":"1","Iterable.E":"1"},"Symbol":{"Symbol0":[]},"ConstantMapView":{"UnmodifiableMapView":["1","2"],"_UnmodifiableMapView_MapView__UnmodifiableMapMixin":["1","2"],"MapView":["1","2"],"_UnmodifiableMapMixin":["1","2"],"Map":["1","2"]},"ConstantMap":{"Map":["1","2"]},"ConstantStringMap":{"ConstantMap":["1","2"],"Map":["1","2"]},"_KeysOrValues":{"Iterable":["1"],"Iterable.E":"1"},"_KeysOrValuesOrElementsIterator":{"Iterator":["1"]},"JSInvocationMirror":{"Invocation":[]},"NullError":{"TypeError":[],"Error":[]},"JsNoSuchMethodError":{"Error":[]},"UnknownJsTypeError":{"Error":[]},"_StackTrace":{"StackTrace":[]},"Closure":{"Function":[]},"Closure0Args":{"Function":[]},"Closure2Args":{"Function":[]},"TearOffClosure":{"Function":[]},"StaticClosure":{"Function":[]},"BoundClosure":{"Function":[]},"_CyclicInitializationError":{"Error":[]},"RuntimeError":{"Error":[]},"_AssertionError":{"Error":[]},"JsLinkedHashMap":{"MapBase":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"LinkedHashMapKeyIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"LinkedHashMapKeyIterator":{"Iterator":["1"]},"JSSyntaxRegExp":{"RegExp":[],"Pattern":[]},"_MatchImplementation":{"RegExpMatch":[],"Match":[]},"_AllMatchesIterable":{"Iterable":["RegExpMatch"],"Iterable.E":"RegExpMatch"},"_AllMatchesIterator":{"Iterator":["RegExpMatch"]},"StringMatch":{"Match":[]},"_StringAllMatchesIterable":{"Iterable":["Match"],"Iterable.E":"Match"},"_StringAllMatchesIterator":{"Iterator":["Match"]},"NativeByteBuffer":{"JSObject":[],"ByteBuffer":[],"TrustedGetRuntimeType":[]},"NativeTypedData":{"JSObject":[],"TypedData":[]},"NativeByteData":{"NativeTypedData":[],"ByteData":[],"JSObject":[],"TypedData":[],"TrustedGetRuntimeType":[]},"NativeTypedArray":{"NativeTypedData":[],"JavaScriptIndexingBehavior":["1"],"JSObject":[],"TypedData":[],"JSIndexable":["1"]},"NativeTypedArrayOfDouble":{"ListBase":["double"],"List":["double"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["double"],"EfficientLengthIterable":["double"],"JSObject":[],"TypedData":[],"JSIndexable":["double"],"Iterable":["double"],"FixedLengthListMixin":["double"]},"NativeTypedArrayOfInt":{"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"]},"NativeFloat32List":{"Float32List":[],"ListBase":["double"],"List":["double"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["double"],"EfficientLengthIterable":["double"],"JSObject":[],"TypedData":[],"JSIndexable":["double"],"Iterable":["double"],"FixedLengthListMixin":["double"],"TrustedGetRuntimeType":[],"ListBase.E":"double","Iterable.E":"double"},"NativeFloat64List":{"Float64List":[],"ListBase":["double"],"List":["double"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["double"],"EfficientLengthIterable":["double"],"JSObject":[],"TypedData":[],"JSIndexable":["double"],"Iterable":["double"],"FixedLengthListMixin":["double"],"TrustedGetRuntimeType":[],"ListBase.E":"double","Iterable.E":"double"},"NativeInt16List":{"Int16List":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeInt32List":{"Int32List":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeInt8List":{"Int8List":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint16List":{"Uint16List":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint32List":{"Uint32List":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint8ClampedList":{"Uint8ClampedList":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint8List":{"Uint8List":[],"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"_Type":{"Type":[]},"_Error":{"Error":[]},"_TypeError":{"TypeError":[],"Error":[]},"AsyncError":{"Error":[]},"_Future":{"Future":["1"]},"_TimerImpl":{"Timer":[]},"_AsyncAwaitCompleter":{"Completer":["1"]},"_Completer":{"Completer":["1"]},"_AsyncCompleter":{"_Completer":["1"],"Completer":["1"]},"_SyncCompleter":{"_Completer":["1"],"Completer":["1"]},"_StreamController":{"StreamController":["1"],"StreamSink":["1"],"_StreamControllerLifecycle":["1"],"_EventSink":["1"],"_EventDispatch":["1"]},"_AsyncStreamController":{"_AsyncStreamControllerDispatch":["1"],"_StreamController":["1"],"StreamController":["1"],"StreamSink":["1"],"_StreamControllerLifecycle":["1"],"_EventSink":["1"],"_EventDispatch":["1"]},"_SyncStreamController":{"_SyncStreamControllerDispatch":["1"],"_StreamController":["1"],"StreamController":["1"],"StreamSink":["1"],"_StreamControllerLifecycle":["1"],"_EventSink":["1"],"_EventDispatch":["1"]},"_ControllerStream":{"_StreamImpl":["1"],"Stream":["1"],"Stream.T":"1"},"_ControllerSubscription":{"_BufferingStreamSubscription":["1"],"StreamSubscription":["1"],"_EventSink":["1"],"_EventDispatch":["1"],"_BufferingStreamSubscription.T":"1"},"_StreamSinkWrapper":{"StreamSink":["1"]},"_BufferingStreamSubscription":{"StreamSubscription":["1"],"_EventSink":["1"],"_EventDispatch":["1"],"_BufferingStreamSubscription.T":"1"},"_StreamImpl":{"Stream":["1"]},"_DelayedData":{"_DelayedEvent":["1"]},"_DelayedError":{"_DelayedEvent":["@"]},"_DelayedDone":{"_DelayedEvent":["@"]},"_ForwardingStream":{"Stream":["2"]},"_ForwardingStreamSubscription":{"_BufferingStreamSubscription":["2"],"StreamSubscription":["2"],"_EventSink":["2"],"_EventDispatch":["2"],"_BufferingStreamSubscription.T":"2"},"_MapStream":{"_ForwardingStream":["1","2"],"Stream":["2"],"Stream.T":"2"},"_ZoneSpecification":{"ZoneSpecification":[]},"_ZoneDelegate":{"ZoneDelegate":[]},"_Zone":{"Zone":[]},"_CustomZone":{"_Zone":[],"Zone":[]},"_RootZone":{"_Zone":[],"Zone":[]},"_SplayTreeSetNode":{"_SplayTreeNode":["1","_SplayTreeSetNode<1>"],"_SplayTreeNode.1":"_SplayTreeSetNode<1>","_SplayTreeNode.K":"1"},"_HashMap":{"MapBase":["1","2"],"HashMap":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"_IdentityHashMap":{"_HashMap":["1","2"],"MapBase":["1","2"],"HashMap":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"_CustomHashMap":{"_HashMap":["1","2"],"MapBase":["1","2"],"HashMap":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"_HashMapKeyIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"_HashMapKeyIterator":{"Iterator":["1"]},"_HashSet":{"_SetBase":["1"],"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"_HashSetIterator":{"Iterator":["1"]},"_LinkedHashSet":{"_SetBase":["1"],"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"_LinkedHashSetIterator":{"Iterator":["1"]},"UnmodifiableListView":{"ListBase":["1"],"UnmodifiableListMixin":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","Iterable.E":"1","UnmodifiableListMixin.E":"1"},"ListBase":{"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"MapBase":{"Map":["1","2"]},"MapView":{"Map":["1","2"]},"UnmodifiableMapView":{"_UnmodifiableMapView_MapView__UnmodifiableMapMixin":["1","2"],"MapView":["1","2"],"_UnmodifiableMapMixin":["1","2"],"Map":["1","2"]},"ListQueue":{"Queue":["1"],"ListIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListIterable.E":"1","Iterable.E":"1"},"_ListQueueIterator":{"Iterator":["1"]},"SetBase":{"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"_SetBase":{"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"_SplayTreeIterator":{"Iterator":["3"]},"_SplayTreeKeyIterator":{"_SplayTreeIterator":["1","2","1"],"Iterator":["1"],"_SplayTreeIterator.K":"1","_SplayTreeIterator.T":"1","_SplayTreeIterator.1":"2"},"SplayTreeSet":{"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"_SplayTree":["1","_SplayTreeSetNode<1>"],"Iterable":["1"],"Iterable.E":"1","_SplayTree.1":"_SplayTreeSetNode<1>","_SplayTree.K":"1"},"_JsonMap":{"MapBase":["String","@"],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"_JsonMapKeyIterable":{"ListIterable":["String"],"EfficientLengthIterable":["String"],"Iterable":["String"],"ListIterable.E":"String","Iterable.E":"String"},"Base64Codec":{"Codec":["List","String"],"Codec.S":"List"},"Base64Encoder":{"Converter":["List","String"],"StreamTransformer":["List","String"]},"Base64Decoder":{"Converter":["String","List"],"StreamTransformer":["String","List"]},"Converter":{"StreamTransformer":["1","2"]},"Encoding":{"Codec":["String","List"]},"JsonUnsupportedObjectError":{"Error":[]},"JsonCyclicError":{"Error":[]},"JsonCodec":{"Codec":["Object?","String"],"Codec.S":"Object?"},"JsonEncoder":{"Converter":["Object?","String"],"StreamTransformer":["Object?","String"]},"JsonDecoder":{"Converter":["String","Object?"],"StreamTransformer":["String","Object?"]},"Utf8Codec":{"Codec":["String","List"],"Codec.S":"String"},"Utf8Encoder":{"Converter":["String","List"],"StreamTransformer":["String","List"]},"BigInt":{"Comparable":["BigInt"]},"DateTime":{"Comparable":["DateTime"]},"double":{"num":[],"Comparable":["num"]},"Duration":{"Comparable":["Duration"]},"int":{"num":[],"Comparable":["num"]},"List":{"EfficientLengthIterable":["1"],"Iterable":["1"]},"num":{"Comparable":["num"]},"RegExp":{"Pattern":[]},"RegExpMatch":{"Match":[]},"Set":{"EfficientLengthIterable":["1"],"Iterable":["1"]},"String":{"Comparable":["String"],"Pattern":[]},"_BigIntImpl":{"BigInt":[],"Comparable":["BigInt"]},"AssertionError":{"Error":[]},"TypeError":{"Error":[]},"ArgumentError":{"Error":[]},"RangeError":{"Error":[]},"IndexError":{"Error":[]},"NoSuchMethodError":{"Error":[]},"UnsupportedError":{"Error":[]},"UnimplementedError":{"Error":[]},"StateError":{"Error":[]},"ConcurrentModificationError":{"Error":[]},"OutOfMemoryError":{"Error":[]},"StackOverflowError":{"Error":[]},"IntegerDivisionByZeroException":{"Error":[]},"_StringStackTrace":{"StackTrace":[]},"StringBuffer":{"StringSink":[]},"_Uri":{"Uri":[]},"_SimpleUri":{"Uri":[]},"_DataUri":{"Uri":[]},"CssRule":{"JSObject":[]},"Element":{"Node":[],"EventTarget":[],"JSObject":[]},"Event":{"JSObject":[]},"File":{"Blob":[],"JSObject":[]},"Gamepad":{"JSObject":[]},"HttpRequest":{"EventTarget":[],"JSObject":[]},"KeyboardEvent":{"Event":[],"JSObject":[]},"MessageEvent":{"Event":[],"JSObject":[]},"MimeType":{"JSObject":[]},"Node":{"EventTarget":[],"JSObject":[]},"Plugin":{"JSObject":[]},"ProgressEvent":{"Event":[],"JSObject":[]},"ScriptElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"SourceBuffer":{"EventTarget":[],"JSObject":[]},"SpeechGrammar":{"JSObject":[]},"SpeechRecognitionResult":{"JSObject":[]},"StyleSheet":{"JSObject":[]},"TextTrack":{"EventTarget":[],"JSObject":[]},"TextTrackCue":{"EventTarget":[],"JSObject":[]},"Touch":{"JSObject":[]},"_Html5NodeValidator":{"NodeValidator":[]},"HtmlElement":{"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"AccessibleNodeList":{"JSObject":[]},"AnchorElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"AreaElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"BaseElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"Blob":{"JSObject":[]},"BodyElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"CharacterData":{"Node":[],"EventTarget":[],"JSObject":[]},"CssPerspective":{"JSObject":[]},"CssStyleDeclaration":{"JSObject":[]},"CssStyleValue":{"JSObject":[]},"CssTransformComponent":{"JSObject":[]},"CssTransformValue":{"JSObject":[]},"CssUnparsedValue":{"JSObject":[]},"CustomEvent":{"Event":[],"JSObject":[]},"DataTransferItemList":{"JSObject":[]},"Document":{"Node":[],"EventTarget":[],"JSObject":[]},"DomException":{"JSObject":[]},"DomImplementation":{"JSObject":[]},"DomRectList":{"ListBase":["Rectangle"],"ImmutableListMixin":["Rectangle"],"List":["Rectangle"],"JavaScriptIndexingBehavior":["Rectangle"],"EfficientLengthIterable":["Rectangle"],"JSObject":[],"Iterable":["Rectangle"],"JSIndexable":["Rectangle"],"ImmutableListMixin.E":"Rectangle","ListBase.E":"Rectangle","Iterable.E":"Rectangle"},"DomRectReadOnly":{"Rectangle":["num"],"JSObject":[]},"DomStringList":{"ListBase":["String"],"ImmutableListMixin":["String"],"List":["String"],"JavaScriptIndexingBehavior":["String"],"EfficientLengthIterable":["String"],"JSObject":[],"Iterable":["String"],"JSIndexable":["String"],"ImmutableListMixin.E":"String","ListBase.E":"String","Iterable.E":"String"},"DomTokenList":{"JSObject":[]},"_FrozenElementList":{"ListBase":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","Iterable.E":"1"},"EventTarget":{"JSObject":[]},"FileList":{"ListBase":["File"],"ImmutableListMixin":["File"],"List":["File"],"JavaScriptIndexingBehavior":["File"],"EfficientLengthIterable":["File"],"JSObject":[],"Iterable":["File"],"JSIndexable":["File"],"ImmutableListMixin.E":"File","ListBase.E":"File","Iterable.E":"File"},"FileWriter":{"EventTarget":[],"JSObject":[]},"FormElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"History":{"JSObject":[]},"HtmlCollection":{"ListBase":["Node"],"ImmutableListMixin":["Node"],"List":["Node"],"JavaScriptIndexingBehavior":["Node"],"EfficientLengthIterable":["Node"],"JSObject":[],"Iterable":["Node"],"JSIndexable":["Node"],"ImmutableListMixin.E":"Node","ListBase.E":"Node","Iterable.E":"Node"},"HtmlDocument":{"Document":[],"Node":[],"EventTarget":[],"JSObject":[]},"HttpRequestEventTarget":{"EventTarget":[],"JSObject":[]},"ImageData":{"JSObject":[]},"Location":{"JSObject":[]},"MediaList":{"JSObject":[]},"MessagePort":{"EventTarget":[],"JSObject":[]},"MidiInputMap":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"MidiOutputMap":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"MimeTypeArray":{"ListBase":["MimeType"],"ImmutableListMixin":["MimeType"],"List":["MimeType"],"JavaScriptIndexingBehavior":["MimeType"],"EfficientLengthIterable":["MimeType"],"JSObject":[],"Iterable":["MimeType"],"JSIndexable":["MimeType"],"ImmutableListMixin.E":"MimeType","ListBase.E":"MimeType","Iterable.E":"MimeType"},"_ChildNodeListLazy":{"ListBase":["Node"],"List":["Node"],"EfficientLengthIterable":["Node"],"Iterable":["Node"],"ListBase.E":"Node","Iterable.E":"Node"},"NodeList":{"ListBase":["Node"],"ImmutableListMixin":["Node"],"List":["Node"],"JavaScriptIndexingBehavior":["Node"],"EfficientLengthIterable":["Node"],"JSObject":[],"Iterable":["Node"],"JSIndexable":["Node"],"ImmutableListMixin.E":"Node","ListBase.E":"Node","Iterable.E":"Node"},"PluginArray":{"ListBase":["Plugin"],"ImmutableListMixin":["Plugin"],"List":["Plugin"],"JavaScriptIndexingBehavior":["Plugin"],"EfficientLengthIterable":["Plugin"],"JSObject":[],"Iterable":["Plugin"],"JSIndexable":["Plugin"],"ImmutableListMixin.E":"Plugin","ListBase.E":"Plugin","Iterable.E":"Plugin"},"RtcStatsReport":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"SelectElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"SharedArrayBuffer":{"JSObject":[]},"SourceBufferList":{"ListBase":["SourceBuffer"],"ImmutableListMixin":["SourceBuffer"],"List":["SourceBuffer"],"EventTarget":[],"JavaScriptIndexingBehavior":["SourceBuffer"],"EfficientLengthIterable":["SourceBuffer"],"JSObject":[],"Iterable":["SourceBuffer"],"JSIndexable":["SourceBuffer"],"ImmutableListMixin.E":"SourceBuffer","ListBase.E":"SourceBuffer","Iterable.E":"SourceBuffer"},"SpeechGrammarList":{"ListBase":["SpeechGrammar"],"ImmutableListMixin":["SpeechGrammar"],"List":["SpeechGrammar"],"JavaScriptIndexingBehavior":["SpeechGrammar"],"EfficientLengthIterable":["SpeechGrammar"],"JSObject":[],"Iterable":["SpeechGrammar"],"JSIndexable":["SpeechGrammar"],"ImmutableListMixin.E":"SpeechGrammar","ListBase.E":"SpeechGrammar","Iterable.E":"SpeechGrammar"},"Storage":{"MapBase":["String","String"],"JSObject":[],"Map":["String","String"],"MapBase.K":"String","MapBase.V":"String"},"TableElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TableRowElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TableSectionElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TemplateElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TextTrackCueList":{"ListBase":["TextTrackCue"],"ImmutableListMixin":["TextTrackCue"],"List":["TextTrackCue"],"JavaScriptIndexingBehavior":["TextTrackCue"],"EfficientLengthIterable":["TextTrackCue"],"JSObject":[],"Iterable":["TextTrackCue"],"JSIndexable":["TextTrackCue"],"ImmutableListMixin.E":"TextTrackCue","ListBase.E":"TextTrackCue","Iterable.E":"TextTrackCue"},"TextTrackList":{"ListBase":["TextTrack"],"ImmutableListMixin":["TextTrack"],"List":["TextTrack"],"EventTarget":[],"JavaScriptIndexingBehavior":["TextTrack"],"EfficientLengthIterable":["TextTrack"],"JSObject":[],"Iterable":["TextTrack"],"JSIndexable":["TextTrack"],"ImmutableListMixin.E":"TextTrack","ListBase.E":"TextTrack","Iterable.E":"TextTrack"},"TimeRanges":{"JSObject":[]},"TouchList":{"ListBase":["Touch"],"ImmutableListMixin":["Touch"],"List":["Touch"],"JavaScriptIndexingBehavior":["Touch"],"EfficientLengthIterable":["Touch"],"JSObject":[],"Iterable":["Touch"],"JSIndexable":["Touch"],"ImmutableListMixin.E":"Touch","ListBase.E":"Touch","Iterable.E":"Touch"},"TrackDefaultList":{"JSObject":[]},"UIEvent":{"Event":[],"JSObject":[]},"Url":{"JSObject":[]},"VideoTrackList":{"EventTarget":[],"JSObject":[]},"Window":{"WindowBase":[],"EventTarget":[],"JSObject":[]},"WorkerGlobalScope":{"EventTarget":[],"JSObject":[]},"_Attr":{"Node":[],"EventTarget":[],"JSObject":[]},"_CssRuleList":{"ListBase":["CssRule"],"ImmutableListMixin":["CssRule"],"List":["CssRule"],"JavaScriptIndexingBehavior":["CssRule"],"EfficientLengthIterable":["CssRule"],"JSObject":[],"Iterable":["CssRule"],"JSIndexable":["CssRule"],"ImmutableListMixin.E":"CssRule","ListBase.E":"CssRule","Iterable.E":"CssRule"},"_DomRect":{"Rectangle":["num"],"JSObject":[]},"_GamepadList":{"ListBase":["Gamepad?"],"ImmutableListMixin":["Gamepad?"],"List":["Gamepad?"],"JavaScriptIndexingBehavior":["Gamepad?"],"EfficientLengthIterable":["Gamepad?"],"JSObject":[],"Iterable":["Gamepad?"],"JSIndexable":["Gamepad?"],"ImmutableListMixin.E":"Gamepad?","ListBase.E":"Gamepad?","Iterable.E":"Gamepad?"},"_NamedNodeMap":{"ListBase":["Node"],"ImmutableListMixin":["Node"],"List":["Node"],"JavaScriptIndexingBehavior":["Node"],"EfficientLengthIterable":["Node"],"JSObject":[],"Iterable":["Node"],"JSIndexable":["Node"],"ImmutableListMixin.E":"Node","ListBase.E":"Node","Iterable.E":"Node"},"_SpeechRecognitionResultList":{"ListBase":["SpeechRecognitionResult"],"ImmutableListMixin":["SpeechRecognitionResult"],"List":["SpeechRecognitionResult"],"JavaScriptIndexingBehavior":["SpeechRecognitionResult"],"EfficientLengthIterable":["SpeechRecognitionResult"],"JSObject":[],"Iterable":["SpeechRecognitionResult"],"JSIndexable":["SpeechRecognitionResult"],"ImmutableListMixin.E":"SpeechRecognitionResult","ListBase.E":"SpeechRecognitionResult","Iterable.E":"SpeechRecognitionResult"},"_StyleSheetList":{"ListBase":["StyleSheet"],"ImmutableListMixin":["StyleSheet"],"List":["StyleSheet"],"JavaScriptIndexingBehavior":["StyleSheet"],"EfficientLengthIterable":["StyleSheet"],"JSObject":[],"Iterable":["StyleSheet"],"JSIndexable":["StyleSheet"],"ImmutableListMixin.E":"StyleSheet","ListBase.E":"StyleSheet","Iterable.E":"StyleSheet"},"_AttributeMap":{"MapBase":["String","String"],"Map":["String","String"]},"_ElementAttributeMap":{"MapBase":["String","String"],"Map":["String","String"],"MapBase.K":"String","MapBase.V":"String"},"_EventStream0":{"Stream":["1"],"Stream.T":"1"},"_EventStreamSubscription":{"StreamSubscription":["1"]},"NodeValidatorBuilder":{"NodeValidator":[]},"_SimpleNodeValidator":{"NodeValidator":[]},"_TemplatingNodeValidator":{"NodeValidator":[]},"_SvgNodeValidator":{"NodeValidator":[]},"FixedSizeListIterator":{"Iterator":["1"]},"_DOMWindowCrossFrame":{"WindowBase":[],"EventTarget":[],"JSObject":[]},"_SameOriginUriPolicy":{"UriPolicy":[]},"_ValidatingTreeSanitizer":{"NodeTreeSanitizer":[]},"KeyRange":{"JSObject":[]},"JsArray":{"ListBase":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","Iterable.E":"1"},"_JSRandom":{"Random":[]},"Length":{"JSObject":[]},"Number":{"JSObject":[]},"Transform":{"JSObject":[]},"LengthList":{"ListBase":["Length"],"ImmutableListMixin":["Length"],"List":["Length"],"EfficientLengthIterable":["Length"],"JSObject":[],"Iterable":["Length"],"ImmutableListMixin.E":"Length","ListBase.E":"Length","Iterable.E":"Length"},"NumberList":{"ListBase":["Number"],"ImmutableListMixin":["Number"],"List":["Number"],"EfficientLengthIterable":["Number"],"JSObject":[],"Iterable":["Number"],"ImmutableListMixin.E":"Number","ListBase.E":"Number","Iterable.E":"Number"},"PointList":{"JSObject":[]},"ScriptElement0":{"SvgElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"StringList":{"ListBase":["String"],"ImmutableListMixin":["String"],"List":["String"],"EfficientLengthIterable":["String"],"JSObject":[],"Iterable":["String"],"ImmutableListMixin.E":"String","ListBase.E":"String","Iterable.E":"String"},"SvgElement":{"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TransformList":{"ListBase":["Transform"],"ImmutableListMixin":["Transform"],"List":["Transform"],"EfficientLengthIterable":["Transform"],"JSObject":[],"Iterable":["Transform"],"ImmutableListMixin.E":"Transform","ListBase.E":"Transform","Iterable.E":"Transform"},"AudioBuffer":{"JSObject":[]},"AudioParamMap":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"AudioTrackList":{"EventTarget":[],"JSObject":[]},"BaseAudioContext":{"EventTarget":[],"JSObject":[]},"OfflineAudioContext":{"EventTarget":[],"JSObject":[]},"DelegatingStreamSink":{"StreamSink":["1"]},"ErrorResult":{"Result":["0&"]},"ValueResult":{"Result":["1"]},"_NextRequest":{"_EventRequest":["1"]},"_HasNextRequest":{"_EventRequest":["1"]},"BuiltList":{"Iterable":["1"]},"_BuiltList":{"BuiltList":["1"],"Iterable":["1"],"Iterable.E":"1"},"_BuiltListMultimap":{"BuiltListMultimap":["1","2"]},"_BuiltMap":{"BuiltMap":["1","2"]},"BuiltSet":{"Iterable":["1"]},"_BuiltSet":{"BuiltSet":["1"],"Iterable":["1"],"Iterable.E":"1"},"_BuiltSetMultimap":{"BuiltSetMultimap":["1","2"]},"BuiltValueNullFieldError":{"Error":[]},"BuiltValueNestedFieldError":{"Error":[]},"BoolJsonObject":{"JsonObject":[]},"ListJsonObject":{"JsonObject":[]},"MapJsonObject":{"JsonObject":[]},"NumJsonObject":{"JsonObject":[]},"StringJsonObject":{"JsonObject":[]},"DeserializationError":{"Error":[]},"BigIntSerializer":{"PrimitiveSerializer":["BigInt"],"Serializer":["BigInt"]},"BoolSerializer":{"PrimitiveSerializer":["bool"],"Serializer":["bool"]},"BuiltJsonSerializers":{"Serializers":[]},"BuiltListMultimapSerializer":{"StructuredSerializer":["BuiltListMultimap<@,@>"],"Serializer":["BuiltListMultimap<@,@>"]},"BuiltListSerializer":{"StructuredSerializer":["BuiltList<@>"],"Serializer":["BuiltList<@>"]},"BuiltMapSerializer":{"StructuredSerializer":["BuiltMap<@,@>"],"Serializer":["BuiltMap<@,@>"]},"BuiltSetMultimapSerializer":{"StructuredSerializer":["BuiltSetMultimap<@,@>"],"Serializer":["BuiltSetMultimap<@,@>"]},"BuiltSetSerializer":{"StructuredSerializer":["BuiltSet<@>"],"Serializer":["BuiltSet<@>"]},"DateTimeSerializer":{"PrimitiveSerializer":["DateTime"],"Serializer":["DateTime"]},"DoubleSerializer":{"PrimitiveSerializer":["double"],"Serializer":["double"]},"DurationSerializer":{"PrimitiveSerializer":["Duration"],"Serializer":["Duration"]},"Int32Serializer":{"PrimitiveSerializer":["Int32"],"Serializer":["Int32"]},"Int64Serializer":{"PrimitiveSerializer":["Int64"],"Serializer":["Int64"]},"IntSerializer":{"PrimitiveSerializer":["int"],"Serializer":["int"]},"JsonObjectSerializer":{"PrimitiveSerializer":["JsonObject"],"Serializer":["JsonObject"]},"NullSerializer":{"PrimitiveSerializer":["Null"],"Serializer":["Null"]},"NumSerializer":{"PrimitiveSerializer":["num"],"Serializer":["num"]},"RegExpSerializer":{"PrimitiveSerializer":["RegExp"],"Serializer":["RegExp"]},"StringSerializer":{"PrimitiveSerializer":["String"],"Serializer":["String"]},"Uint8ListSerializer":{"PrimitiveSerializer":["Uint8List"],"Serializer":["Uint8List"]},"UriSerializer":{"PrimitiveSerializer":["Uri"],"Serializer":["Uri"]},"DefaultEquality":{"Equality":["1"]},"IterableEquality":{"Equality":["Iterable<1>"]},"ListEquality":{"Equality":["List<1>"]},"_UnorderedEquality":{"Equality":["2"]},"SetEquality":{"_UnorderedEquality":["1","Set<1>"],"Equality":["Set<1>"],"_UnorderedEquality.E":"1","_UnorderedEquality.T":"Set<1>"},"MapEquality":{"Equality":["Map<1,2>"]},"DeepCollectionEquality":{"Equality":["@"]},"QueueList":{"ListBase":["1"],"List":["1"],"Queue":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","QueueList.E":"1","Iterable.E":"1"},"_CastQueueList":{"QueueList":["2"],"ListBase":["2"],"List":["2"],"Queue":["2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"ListBase.E":"2","QueueList.E":"2","Iterable.E":"2"},"_$BuildStatusSerializer":{"PrimitiveSerializer":["BuildStatus"],"Serializer":["BuildStatus"]},"_$BuildResultSerializer":{"StructuredSerializer":["BuildResult"],"Serializer":["BuildResult"]},"_$BuildResult":{"BuildResult":[]},"_$ConnectRequestSerializer":{"StructuredSerializer":["ConnectRequest"],"Serializer":["ConnectRequest"]},"_$ConnectRequest":{"ConnectRequest":[]},"_$DebugEventSerializer":{"StructuredSerializer":["DebugEvent"],"Serializer":["DebugEvent"]},"_$BatchedDebugEventsSerializer":{"StructuredSerializer":["BatchedDebugEvents"],"Serializer":["BatchedDebugEvents"]},"_$DebugEvent":{"DebugEvent":[]},"_$BatchedDebugEvents":{"BatchedDebugEvents":[]},"_$DebugInfoSerializer":{"StructuredSerializer":["DebugInfo"],"Serializer":["DebugInfo"]},"_$DebugInfo":{"DebugInfo":[]},"_$DevToolsRequestSerializer":{"StructuredSerializer":["DevToolsRequest"],"Serializer":["DevToolsRequest"]},"_$DevToolsResponseSerializer":{"StructuredSerializer":["DevToolsResponse"],"Serializer":["DevToolsResponse"]},"_$DevToolsRequest":{"DevToolsRequest":[]},"_$DevToolsResponse":{"DevToolsResponse":[]},"_$ErrorResponseSerializer":{"StructuredSerializer":["ErrorResponse"],"Serializer":["ErrorResponse"]},"_$ErrorResponse":{"ErrorResponse":[]},"_$ExtensionRequestSerializer":{"StructuredSerializer":["ExtensionRequest"],"Serializer":["ExtensionRequest"]},"_$ExtensionResponseSerializer":{"StructuredSerializer":["ExtensionResponse"],"Serializer":["ExtensionResponse"]},"_$ExtensionEventSerializer":{"StructuredSerializer":["ExtensionEvent"],"Serializer":["ExtensionEvent"]},"_$BatchedEventsSerializer":{"StructuredSerializer":["BatchedEvents"],"Serializer":["BatchedEvents"]},"_$ExtensionRequest":{"ExtensionRequest":[]},"_$ExtensionResponse":{"ExtensionResponse":[]},"_$ExtensionEvent":{"ExtensionEvent":[]},"_$BatchedEvents":{"BatchedEvents":[]},"_$IsolateExitSerializer":{"StructuredSerializer":["IsolateExit"],"Serializer":["IsolateExit"]},"_$IsolateStartSerializer":{"StructuredSerializer":["IsolateStart"],"Serializer":["IsolateStart"]},"_$IsolateExit":{"IsolateExit":[]},"_$IsolateStart":{"IsolateStart":[]},"_$RegisterEventSerializer":{"StructuredSerializer":["RegisterEvent"],"Serializer":["RegisterEvent"]},"_$RegisterEvent":{"RegisterEvent":[]},"_$RunRequestSerializer":{"StructuredSerializer":["RunRequest"],"Serializer":["RunRequest"]},"_$RunRequest":{"RunRequest":[]},"SseSocketClient":{"SocketClient":[]},"WebSocketClient":{"SocketClient":[]},"Int32":{"Comparable":["Object"]},"Int64":{"Comparable":["Object"]},"Level":{"Comparable":["Level"]},"SseClient":{"StreamChannel":["String?"]},"GuaranteeChannel":{"StreamChannel":["1"]},"_GuaranteeSink":{"StreamSink":["1"]},"StreamChannelMixin":{"StreamChannel":["1"]},"_EventStream":{"Stream":["1"],"Stream.T":"1"},"_EventStreamSubscription0":{"StreamSubscription":["1"]},"BrowserWebSocket":{"WebSocket0":[]},"TextDataReceived":{"WebSocketEvent":[]},"BinaryDataReceived":{"WebSocketEvent":[]},"CloseReceived":{"WebSocketEvent":[]},"AdapterWebSocketChannel":{"WebSocketChannel":[],"StreamChannel":["@"]},"_WebSocketSink":{"WebSocketSink":[],"DelegatingStreamSink":["@"],"StreamSink":["@"],"DelegatingStreamSink.T":"@"},"DdcRestarter":{"Restarter":[]},"RequireRestarter":{"Restarter":[]},"ByteData":{"TypedData":[]},"Int8List":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Uint8List":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Uint8ClampedList":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Int16List":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Uint16List":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Int32List":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Uint32List":{"List":["int"],"EfficientLengthIterable":["int"],"TypedData":[],"Iterable":["int"]},"Float32List":{"List":["double"],"EfficientLengthIterable":["double"],"TypedData":[],"Iterable":["double"]},"Float64List":{"List":["double"],"EfficientLengthIterable":["double"],"TypedData":[],"Iterable":["double"]}}')); + A._Universe_addRules(init.typeUniverse, JSON.parse('{"PlainJavaScriptObject":"LegacyJavaScriptObject","UnknownJavaScriptObject":"LegacyJavaScriptObject","JavaScriptFunction":"LegacyJavaScriptObject","Promise":"LegacyJavaScriptObject","JsError":"LegacyJavaScriptObject","RequireLoader":"LegacyJavaScriptObject","JsMap":"LegacyJavaScriptObject","KeyframeEffect":"JavaScriptObject","KeyframeEffectReadOnly":"JavaScriptObject","AnimationEffectReadOnly":"JavaScriptObject","AbortPaymentEvent":"Event","ExtendableEvent":"Event","AudioContext":"BaseAudioContext","AbsoluteOrientationSensor":"EventTarget","OrientationSensor":"EventTarget","Sensor":"EventTarget","AElement":"SvgElement","GraphicsElement":"SvgElement","_ResourceProgressEvent":"ProgressEvent","AudioElement":"HtmlElement","MediaElement":"HtmlElement","ShadowRoot":"Node","DocumentFragment":"Node","XmlDocument":"Document","VttCue":"TextTrackCue","CompositionEvent":"UIEvent","DedicatedWorkerGlobalScope":"WorkerGlobalScope","CDataSection":"CharacterData","Text":"CharacterData","MathMLElement":"Element","HttpRequestUpload":"HttpRequestEventTarget","HtmlFormControlsCollection":"HtmlCollection","CssCharsetRule":"CssRule","CssMatrixComponent":"CssTransformComponent","CssStyleSheet":"StyleSheet","CssurlImageValue":"CssStyleValue","CssImageValue":"CssStyleValue","CssResourceValue":"CssStyleValue","JSArray":{"List":["1"],"EfficientLengthIterable":["1"],"JSObject":[],"Iterable":["1"],"JSIndexable":["1"],"Iterable.E":"1"},"JSBool":{"bool":[],"TrustedGetRuntimeType":[]},"JSNull":{"Null":[],"TrustedGetRuntimeType":[]},"JavaScriptObject":{"JSObject":[]},"LegacyJavaScriptObject":{"JSObject":[],"Promise":["1&"],"JsError":[]},"JSUnmodifiableArray":{"JSArray":["1"],"List":["1"],"EfficientLengthIterable":["1"],"JSObject":[],"Iterable":["1"],"JSIndexable":["1"],"Iterable.E":"1"},"ArrayIterator":{"Iterator":["1"]},"JSNumber":{"double":[],"num":[],"Comparable":["num"]},"JSInt":{"double":[],"int":[],"num":[],"Comparable":["num"],"TrustedGetRuntimeType":[]},"JSNumNotInt":{"double":[],"num":[],"Comparable":["num"],"TrustedGetRuntimeType":[]},"JSString":{"String":[],"Comparable":["String"],"Pattern":[],"JSIndexable":["@"],"TrustedGetRuntimeType":[]},"_CastIterableBase":{"Iterable":["2"]},"CastIterator":{"Iterator":["2"]},"CastIterable":{"_CastIterableBase":["1","2"],"Iterable":["2"],"Iterable.E":"2"},"_EfficientLengthCastIterable":{"CastIterable":["1","2"],"_CastIterableBase":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"Iterable.E":"2"},"_CastListBase":{"ListBase":["2"],"List":["2"],"_CastIterableBase":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"]},"CastList":{"_CastListBase":["1","2"],"ListBase":["2"],"List":["2"],"_CastIterableBase":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"ListBase.E":"2","Iterable.E":"2"},"CastMap":{"MapBase":["3","4"],"Map":["3","4"],"MapBase.K":"3","MapBase.V":"4"},"LateError":{"Error":[]},"EfficientLengthIterable":{"Iterable":["1"]},"ListIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"]},"SubListIterable":{"ListIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListIterable.E":"1","Iterable.E":"1"},"ListIterator":{"Iterator":["1"]},"MappedIterable":{"Iterable":["2"],"Iterable.E":"2"},"EfficientLengthMappedIterable":{"MappedIterable":["1","2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"Iterable.E":"2"},"MappedIterator":{"Iterator":["2"]},"MappedListIterable":{"ListIterable":["2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"ListIterable.E":"2","Iterable.E":"2"},"WhereIterable":{"Iterable":["1"],"Iterable.E":"1"},"WhereIterator":{"Iterator":["1"]},"TakeIterable":{"Iterable":["1"],"Iterable.E":"1"},"EfficientLengthTakeIterable":{"TakeIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"TakeIterator":{"Iterator":["1"]},"SkipIterable":{"Iterable":["1"],"Iterable.E":"1"},"EfficientLengthSkipIterable":{"SkipIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"SkipIterator":{"Iterator":["1"]},"EmptyIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"EmptyIterator":{"Iterator":["1"]},"UnmodifiableListBase":{"ListBase":["1"],"UnmodifiableListMixin":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"ReversedListIterable":{"ListIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListIterable.E":"1","Iterable.E":"1"},"Symbol":{"Symbol0":[]},"ConstantMapView":{"UnmodifiableMapView":["1","2"],"_UnmodifiableMapView_MapView__UnmodifiableMapMixin":["1","2"],"MapView":["1","2"],"_UnmodifiableMapMixin":["1","2"],"Map":["1","2"]},"ConstantMap":{"Map":["1","2"]},"ConstantStringMap":{"ConstantMap":["1","2"],"Map":["1","2"]},"_KeysOrValues":{"Iterable":["1"],"Iterable.E":"1"},"_KeysOrValuesOrElementsIterator":{"Iterator":["1"]},"JSInvocationMirror":{"Invocation":[]},"NullError":{"TypeError":[],"Error":[]},"JsNoSuchMethodError":{"Error":[]},"UnknownJsTypeError":{"Error":[]},"_StackTrace":{"StackTrace":[]},"Closure":{"Function":[]},"Closure0Args":{"Function":[]},"Closure2Args":{"Function":[]},"TearOffClosure":{"Function":[]},"StaticClosure":{"Function":[]},"BoundClosure":{"Function":[]},"_CyclicInitializationError":{"Error":[]},"RuntimeError":{"Error":[]},"_AssertionError":{"Error":[]},"JsLinkedHashMap":{"MapBase":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"LinkedHashMapKeyIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"LinkedHashMapKeyIterator":{"Iterator":["1"]},"JSSyntaxRegExp":{"RegExp":[],"Pattern":[]},"_MatchImplementation":{"RegExpMatch":[],"Match":[]},"_AllMatchesIterable":{"Iterable":["RegExpMatch"],"Iterable.E":"RegExpMatch"},"_AllMatchesIterator":{"Iterator":["RegExpMatch"]},"StringMatch":{"Match":[]},"_StringAllMatchesIterable":{"Iterable":["Match"],"Iterable.E":"Match"},"_StringAllMatchesIterator":{"Iterator":["Match"]},"NativeByteBuffer":{"JSObject":[],"ByteBuffer":[],"TrustedGetRuntimeType":[]},"NativeTypedData":{"JSObject":[],"TypedData":[]},"NativeByteData":{"NativeTypedData":[],"ByteData":[],"JSObject":[],"TypedData":[],"TrustedGetRuntimeType":[]},"NativeTypedArray":{"NativeTypedData":[],"JavaScriptIndexingBehavior":["1"],"JSObject":[],"TypedData":[],"JSIndexable":["1"]},"NativeTypedArrayOfDouble":{"ListBase":["double"],"List":["double"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["double"],"EfficientLengthIterable":["double"],"JSObject":[],"TypedData":[],"JSIndexable":["double"],"Iterable":["double"],"FixedLengthListMixin":["double"]},"NativeTypedArrayOfInt":{"ListBase":["int"],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"]},"NativeFloat32List":{"ListBase":["double"],"Float32List":[],"List":["double"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["double"],"EfficientLengthIterable":["double"],"JSObject":[],"TypedData":[],"JSIndexable":["double"],"Iterable":["double"],"FixedLengthListMixin":["double"],"TrustedGetRuntimeType":[],"ListBase.E":"double","Iterable.E":"double"},"NativeFloat64List":{"ListBase":["double"],"Float64List":[],"List":["double"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["double"],"EfficientLengthIterable":["double"],"JSObject":[],"TypedData":[],"JSIndexable":["double"],"Iterable":["double"],"FixedLengthListMixin":["double"],"TrustedGetRuntimeType":[],"ListBase.E":"double","Iterable.E":"double"},"NativeInt16List":{"ListBase":["int"],"Int16List":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeInt32List":{"ListBase":["int"],"Int32List":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeInt8List":{"ListBase":["int"],"Int8List":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint16List":{"ListBase":["int"],"Uint16List":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint32List":{"ListBase":["int"],"Uint32List":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint8ClampedList":{"ListBase":["int"],"Uint8ClampedList":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"NativeUint8List":{"ListBase":["int"],"Uint8List":[],"List":["int"],"NativeTypedData":[],"JavaScriptIndexingBehavior":["int"],"EfficientLengthIterable":["int"],"JSObject":[],"TypedData":[],"JSIndexable":["int"],"Iterable":["int"],"FixedLengthListMixin":["int"],"TrustedGetRuntimeType":[],"ListBase.E":"int","Iterable.E":"int"},"_Type":{"Type":[]},"_Error":{"Error":[]},"_TypeError":{"TypeError":[],"Error":[]},"AsyncError":{"Error":[]},"_Future":{"Future":["1"]},"_TimerImpl":{"Timer":[]},"_AsyncAwaitCompleter":{"Completer":["1"]},"_Completer":{"Completer":["1"]},"_AsyncCompleter":{"_Completer":["1"],"Completer":["1"]},"_SyncCompleter":{"_Completer":["1"],"Completer":["1"]},"_StreamController":{"StreamController":["1"],"StreamSink":["1"],"_StreamControllerLifecycle":["1"],"_EventSink":["1"],"_EventDispatch":["1"]},"_AsyncStreamController":{"_AsyncStreamControllerDispatch":["1"],"_StreamController":["1"],"StreamController":["1"],"StreamSink":["1"],"_StreamControllerLifecycle":["1"],"_EventSink":["1"],"_EventDispatch":["1"]},"_SyncStreamController":{"_SyncStreamControllerDispatch":["1"],"_StreamController":["1"],"StreamController":["1"],"StreamSink":["1"],"_StreamControllerLifecycle":["1"],"_EventSink":["1"],"_EventDispatch":["1"]},"_ControllerStream":{"_StreamImpl":["1"],"Stream":["1"],"Stream.T":"1"},"_ControllerSubscription":{"_BufferingStreamSubscription":["1"],"StreamSubscription":["1"],"_EventSink":["1"],"_EventDispatch":["1"],"_BufferingStreamSubscription.T":"1"},"_StreamSinkWrapper":{"StreamSink":["1"]},"_BufferingStreamSubscription":{"StreamSubscription":["1"],"_EventSink":["1"],"_EventDispatch":["1"],"_BufferingStreamSubscription.T":"1"},"_StreamImpl":{"Stream":["1"]},"_DelayedData":{"_DelayedEvent":["1"]},"_DelayedError":{"_DelayedEvent":["@"]},"_DelayedDone":{"_DelayedEvent":["@"]},"_ForwardingStream":{"Stream":["2"]},"_ForwardingStreamSubscription":{"_BufferingStreamSubscription":["2"],"StreamSubscription":["2"],"_EventSink":["2"],"_EventDispatch":["2"],"_BufferingStreamSubscription.T":"2"},"_MapStream":{"_ForwardingStream":["1","2"],"Stream":["2"],"Stream.T":"2"},"_ZoneSpecification":{"ZoneSpecification":[]},"_ZoneDelegate":{"ZoneDelegate":[]},"_Zone":{"Zone":[]},"_CustomZone":{"_Zone":[],"Zone":[]},"_RootZone":{"_Zone":[],"Zone":[]},"_SplayTreeSetNode":{"_SplayTreeNode":["1","_SplayTreeSetNode<1>"],"_SplayTreeNode.1":"_SplayTreeSetNode<1>","_SplayTreeNode.K":"1"},"_HashMap":{"MapBase":["1","2"],"HashMap":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"_IdentityHashMap":{"_HashMap":["1","2"],"MapBase":["1","2"],"HashMap":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"_CustomHashMap":{"_HashMap":["1","2"],"MapBase":["1","2"],"HashMap":["1","2"],"Map":["1","2"],"MapBase.K":"1","MapBase.V":"2"},"_HashMapKeyIterable":{"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"_HashMapKeyIterator":{"Iterator":["1"]},"_HashSet":{"_SetBase":["1"],"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"_HashSetIterator":{"Iterator":["1"]},"_LinkedHashSet":{"_SetBase":["1"],"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"Iterable.E":"1"},"_LinkedHashSetIterator":{"Iterator":["1"]},"UnmodifiableListView":{"ListBase":["1"],"UnmodifiableListMixin":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","Iterable.E":"1","UnmodifiableListMixin.E":"1"},"ListBase":{"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"MapBase":{"Map":["1","2"]},"MapView":{"Map":["1","2"]},"UnmodifiableMapView":{"_UnmodifiableMapView_MapView__UnmodifiableMapMixin":["1","2"],"MapView":["1","2"],"_UnmodifiableMapMixin":["1","2"],"Map":["1","2"]},"ListQueue":{"Queue":["1"],"ListIterable":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListIterable.E":"1","Iterable.E":"1"},"_ListQueueIterator":{"Iterator":["1"]},"SetBase":{"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"_SetBase":{"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"]},"_SplayTreeIterator":{"Iterator":["3"]},"_SplayTreeKeyIterator":{"_SplayTreeIterator":["1","2","1"],"Iterator":["1"],"_SplayTreeIterator.K":"1","_SplayTreeIterator.T":"1","_SplayTreeIterator.1":"2"},"SplayTreeSet":{"SetBase":["1"],"Set":["1"],"EfficientLengthIterable":["1"],"_SplayTree":["1","_SplayTreeSetNode<1>"],"Iterable":["1"],"Iterable.E":"1","_SplayTree.1":"_SplayTreeSetNode<1>","_SplayTree.K":"1"},"_JsonMap":{"MapBase":["String","@"],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"_JsonMapKeyIterable":{"ListIterable":["String"],"EfficientLengthIterable":["String"],"Iterable":["String"],"ListIterable.E":"String","Iterable.E":"String"},"Base64Codec":{"Codec":["List","String"],"Codec.S":"List"},"Base64Encoder":{"Converter":["List","String"],"StreamTransformer":["List","String"]},"Base64Decoder":{"Converter":["String","List"],"StreamTransformer":["String","List"]},"Converter":{"StreamTransformer":["1","2"]},"Encoding":{"Codec":["String","List"]},"JsonUnsupportedObjectError":{"Error":[]},"JsonCyclicError":{"Error":[]},"JsonCodec":{"Codec":["Object?","String"],"Codec.S":"Object?"},"JsonEncoder":{"Converter":["Object?","String"],"StreamTransformer":["Object?","String"]},"JsonDecoder":{"Converter":["String","Object?"],"StreamTransformer":["String","Object?"]},"Utf8Codec":{"Codec":["String","List"],"Codec.S":"String"},"Utf8Encoder":{"Converter":["String","List"],"StreamTransformer":["String","List"]},"BigInt":{"Comparable":["BigInt"]},"DateTime":{"Comparable":["DateTime"]},"double":{"num":[],"Comparable":["num"]},"Duration":{"Comparable":["Duration"]},"int":{"num":[],"Comparable":["num"]},"List":{"EfficientLengthIterable":["1"],"Iterable":["1"]},"num":{"Comparable":["num"]},"RegExp":{"Pattern":[]},"RegExpMatch":{"Match":[]},"Set":{"EfficientLengthIterable":["1"],"Iterable":["1"]},"String":{"Comparable":["String"],"Pattern":[]},"_BigIntImpl":{"BigInt":[],"Comparable":["BigInt"]},"AssertionError":{"Error":[]},"TypeError":{"Error":[]},"ArgumentError":{"Error":[]},"RangeError":{"Error":[]},"IndexError":{"Error":[]},"NoSuchMethodError":{"Error":[]},"UnsupportedError":{"Error":[]},"UnimplementedError":{"Error":[]},"StateError":{"Error":[]},"ConcurrentModificationError":{"Error":[]},"OutOfMemoryError":{"Error":[]},"StackOverflowError":{"Error":[]},"IntegerDivisionByZeroException":{"Error":[]},"_StringStackTrace":{"StackTrace":[]},"StringBuffer":{"StringSink":[]},"_Uri":{"Uri":[]},"_SimpleUri":{"Uri":[]},"_DataUri":{"Uri":[]},"CssRule":{"JSObject":[]},"Element":{"Node":[],"EventTarget":[],"JSObject":[]},"Event":{"JSObject":[]},"File":{"Blob":[],"JSObject":[]},"Gamepad":{"JSObject":[]},"HttpRequest":{"EventTarget":[],"JSObject":[]},"KeyboardEvent":{"Event":[],"JSObject":[]},"MessageEvent":{"Event":[],"JSObject":[]},"MimeType":{"JSObject":[]},"Node":{"EventTarget":[],"JSObject":[]},"Plugin":{"JSObject":[]},"ProgressEvent":{"Event":[],"JSObject":[]},"ScriptElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"SourceBuffer":{"EventTarget":[],"JSObject":[]},"SpeechGrammar":{"JSObject":[]},"SpeechRecognitionResult":{"JSObject":[]},"StyleSheet":{"JSObject":[]},"TextTrack":{"EventTarget":[],"JSObject":[]},"TextTrackCue":{"EventTarget":[],"JSObject":[]},"Touch":{"JSObject":[]},"_Html5NodeValidator":{"NodeValidator":[]},"HtmlElement":{"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"AccessibleNodeList":{"JSObject":[]},"AnchorElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"AreaElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"BaseElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"Blob":{"JSObject":[]},"BodyElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"CharacterData":{"Node":[],"EventTarget":[],"JSObject":[]},"CssPerspective":{"JSObject":[]},"CssStyleDeclaration":{"JSObject":[]},"CssStyleValue":{"JSObject":[]},"CssTransformComponent":{"JSObject":[]},"CssTransformValue":{"JSObject":[]},"CssUnparsedValue":{"JSObject":[]},"CustomEvent":{"Event":[],"JSObject":[]},"DataTransferItemList":{"JSObject":[]},"Document":{"Node":[],"EventTarget":[],"JSObject":[]},"DomException":{"JSObject":[]},"DomImplementation":{"JSObject":[]},"DomRectList":{"ListBase":["Rectangle"],"ImmutableListMixin":["Rectangle"],"List":["Rectangle"],"JavaScriptIndexingBehavior":["Rectangle"],"EfficientLengthIterable":["Rectangle"],"JSObject":[],"Iterable":["Rectangle"],"JSIndexable":["Rectangle"],"ImmutableListMixin.E":"Rectangle","ListBase.E":"Rectangle","Iterable.E":"Rectangle"},"DomRectReadOnly":{"Rectangle":["num"],"JSObject":[]},"DomStringList":{"ListBase":["String"],"ImmutableListMixin":["String"],"List":["String"],"JavaScriptIndexingBehavior":["String"],"EfficientLengthIterable":["String"],"JSObject":[],"Iterable":["String"],"JSIndexable":["String"],"ImmutableListMixin.E":"String","ListBase.E":"String","Iterable.E":"String"},"DomTokenList":{"JSObject":[]},"_FrozenElementList":{"ListBase":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","Iterable.E":"1"},"EventTarget":{"JSObject":[]},"FileList":{"ListBase":["File"],"ImmutableListMixin":["File"],"List":["File"],"JavaScriptIndexingBehavior":["File"],"EfficientLengthIterable":["File"],"JSObject":[],"Iterable":["File"],"JSIndexable":["File"],"ImmutableListMixin.E":"File","ListBase.E":"File","Iterable.E":"File"},"FileWriter":{"EventTarget":[],"JSObject":[]},"FormElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"History":{"JSObject":[]},"HtmlCollection":{"ListBase":["Node"],"ImmutableListMixin":["Node"],"List":["Node"],"JavaScriptIndexingBehavior":["Node"],"EfficientLengthIterable":["Node"],"JSObject":[],"Iterable":["Node"],"JSIndexable":["Node"],"ImmutableListMixin.E":"Node","ListBase.E":"Node","Iterable.E":"Node"},"HtmlDocument":{"Document":[],"Node":[],"EventTarget":[],"JSObject":[]},"HttpRequestEventTarget":{"EventTarget":[],"JSObject":[]},"ImageData":{"JSObject":[]},"Location":{"JSObject":[]},"MediaList":{"JSObject":[]},"MessagePort":{"EventTarget":[],"JSObject":[]},"MidiInputMap":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"MidiOutputMap":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"MimeTypeArray":{"ListBase":["MimeType"],"ImmutableListMixin":["MimeType"],"List":["MimeType"],"JavaScriptIndexingBehavior":["MimeType"],"EfficientLengthIterable":["MimeType"],"JSObject":[],"Iterable":["MimeType"],"JSIndexable":["MimeType"],"ImmutableListMixin.E":"MimeType","ListBase.E":"MimeType","Iterable.E":"MimeType"},"_ChildNodeListLazy":{"ListBase":["Node"],"List":["Node"],"EfficientLengthIterable":["Node"],"Iterable":["Node"],"ListBase.E":"Node","Iterable.E":"Node"},"NodeList":{"ListBase":["Node"],"ImmutableListMixin":["Node"],"List":["Node"],"JavaScriptIndexingBehavior":["Node"],"EfficientLengthIterable":["Node"],"JSObject":[],"Iterable":["Node"],"JSIndexable":["Node"],"ImmutableListMixin.E":"Node","ListBase.E":"Node","Iterable.E":"Node"},"PluginArray":{"ListBase":["Plugin"],"ImmutableListMixin":["Plugin"],"List":["Plugin"],"JavaScriptIndexingBehavior":["Plugin"],"EfficientLengthIterable":["Plugin"],"JSObject":[],"Iterable":["Plugin"],"JSIndexable":["Plugin"],"ImmutableListMixin.E":"Plugin","ListBase.E":"Plugin","Iterable.E":"Plugin"},"RtcStatsReport":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"SelectElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"SharedArrayBuffer":{"JSObject":[]},"SourceBufferList":{"ListBase":["SourceBuffer"],"ImmutableListMixin":["SourceBuffer"],"List":["SourceBuffer"],"EventTarget":[],"JavaScriptIndexingBehavior":["SourceBuffer"],"EfficientLengthIterable":["SourceBuffer"],"JSObject":[],"Iterable":["SourceBuffer"],"JSIndexable":["SourceBuffer"],"ImmutableListMixin.E":"SourceBuffer","ListBase.E":"SourceBuffer","Iterable.E":"SourceBuffer"},"SpeechGrammarList":{"ListBase":["SpeechGrammar"],"ImmutableListMixin":["SpeechGrammar"],"List":["SpeechGrammar"],"JavaScriptIndexingBehavior":["SpeechGrammar"],"EfficientLengthIterable":["SpeechGrammar"],"JSObject":[],"Iterable":["SpeechGrammar"],"JSIndexable":["SpeechGrammar"],"ImmutableListMixin.E":"SpeechGrammar","ListBase.E":"SpeechGrammar","Iterable.E":"SpeechGrammar"},"Storage":{"MapBase":["String","String"],"JSObject":[],"Map":["String","String"],"MapBase.K":"String","MapBase.V":"String"},"TableElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TableRowElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TableSectionElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TemplateElement":{"HtmlElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TextTrackCueList":{"ListBase":["TextTrackCue"],"ImmutableListMixin":["TextTrackCue"],"List":["TextTrackCue"],"JavaScriptIndexingBehavior":["TextTrackCue"],"EfficientLengthIterable":["TextTrackCue"],"JSObject":[],"Iterable":["TextTrackCue"],"JSIndexable":["TextTrackCue"],"ImmutableListMixin.E":"TextTrackCue","ListBase.E":"TextTrackCue","Iterable.E":"TextTrackCue"},"TextTrackList":{"ListBase":["TextTrack"],"ImmutableListMixin":["TextTrack"],"List":["TextTrack"],"EventTarget":[],"JavaScriptIndexingBehavior":["TextTrack"],"EfficientLengthIterable":["TextTrack"],"JSObject":[],"Iterable":["TextTrack"],"JSIndexable":["TextTrack"],"ImmutableListMixin.E":"TextTrack","ListBase.E":"TextTrack","Iterable.E":"TextTrack"},"TimeRanges":{"JSObject":[]},"TouchList":{"ListBase":["Touch"],"ImmutableListMixin":["Touch"],"List":["Touch"],"JavaScriptIndexingBehavior":["Touch"],"EfficientLengthIterable":["Touch"],"JSObject":[],"Iterable":["Touch"],"JSIndexable":["Touch"],"ImmutableListMixin.E":"Touch","ListBase.E":"Touch","Iterable.E":"Touch"},"TrackDefaultList":{"JSObject":[]},"UIEvent":{"Event":[],"JSObject":[]},"Url":{"JSObject":[]},"VideoTrackList":{"EventTarget":[],"JSObject":[]},"Window":{"WindowBase":[],"EventTarget":[],"JSObject":[]},"WorkerGlobalScope":{"EventTarget":[],"JSObject":[]},"_Attr":{"Node":[],"EventTarget":[],"JSObject":[]},"_CssRuleList":{"ListBase":["CssRule"],"ImmutableListMixin":["CssRule"],"List":["CssRule"],"JavaScriptIndexingBehavior":["CssRule"],"EfficientLengthIterable":["CssRule"],"JSObject":[],"Iterable":["CssRule"],"JSIndexable":["CssRule"],"ImmutableListMixin.E":"CssRule","ListBase.E":"CssRule","Iterable.E":"CssRule"},"_DomRect":{"Rectangle":["num"],"JSObject":[]},"_GamepadList":{"ListBase":["Gamepad?"],"ImmutableListMixin":["Gamepad?"],"List":["Gamepad?"],"JavaScriptIndexingBehavior":["Gamepad?"],"EfficientLengthIterable":["Gamepad?"],"JSObject":[],"Iterable":["Gamepad?"],"JSIndexable":["Gamepad?"],"ImmutableListMixin.E":"Gamepad?","ListBase.E":"Gamepad?","Iterable.E":"Gamepad?"},"_NamedNodeMap":{"ListBase":["Node"],"ImmutableListMixin":["Node"],"List":["Node"],"JavaScriptIndexingBehavior":["Node"],"EfficientLengthIterable":["Node"],"JSObject":[],"Iterable":["Node"],"JSIndexable":["Node"],"ImmutableListMixin.E":"Node","ListBase.E":"Node","Iterable.E":"Node"},"_SpeechRecognitionResultList":{"ListBase":["SpeechRecognitionResult"],"ImmutableListMixin":["SpeechRecognitionResult"],"List":["SpeechRecognitionResult"],"JavaScriptIndexingBehavior":["SpeechRecognitionResult"],"EfficientLengthIterable":["SpeechRecognitionResult"],"JSObject":[],"Iterable":["SpeechRecognitionResult"],"JSIndexable":["SpeechRecognitionResult"],"ImmutableListMixin.E":"SpeechRecognitionResult","ListBase.E":"SpeechRecognitionResult","Iterable.E":"SpeechRecognitionResult"},"_StyleSheetList":{"ListBase":["StyleSheet"],"ImmutableListMixin":["StyleSheet"],"List":["StyleSheet"],"JavaScriptIndexingBehavior":["StyleSheet"],"EfficientLengthIterable":["StyleSheet"],"JSObject":[],"Iterable":["StyleSheet"],"JSIndexable":["StyleSheet"],"ImmutableListMixin.E":"StyleSheet","ListBase.E":"StyleSheet","Iterable.E":"StyleSheet"},"_AttributeMap":{"MapBase":["String","String"],"Map":["String","String"]},"_ElementAttributeMap":{"MapBase":["String","String"],"Map":["String","String"],"MapBase.K":"String","MapBase.V":"String"},"_EventStream0":{"Stream":["1"],"Stream.T":"1"},"_EventStreamSubscription":{"StreamSubscription":["1"]},"NodeValidatorBuilder":{"NodeValidator":[]},"_SimpleNodeValidator":{"NodeValidator":[]},"_TemplatingNodeValidator":{"NodeValidator":[]},"_SvgNodeValidator":{"NodeValidator":[]},"FixedSizeListIterator":{"Iterator":["1"]},"_DOMWindowCrossFrame":{"WindowBase":[],"EventTarget":[],"JSObject":[]},"_SameOriginUriPolicy":{"UriPolicy":[]},"_ValidatingTreeSanitizer":{"NodeTreeSanitizer":[]},"KeyRange":{"JSObject":[]},"JsArray":{"ListBase":["1"],"List":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","Iterable.E":"1"},"_JSRandom":{"Random":[]},"Length":{"JSObject":[]},"Number":{"JSObject":[]},"Transform":{"JSObject":[]},"LengthList":{"ListBase":["Length"],"ImmutableListMixin":["Length"],"List":["Length"],"EfficientLengthIterable":["Length"],"JSObject":[],"Iterable":["Length"],"ImmutableListMixin.E":"Length","ListBase.E":"Length","Iterable.E":"Length"},"NumberList":{"ListBase":["Number"],"ImmutableListMixin":["Number"],"List":["Number"],"EfficientLengthIterable":["Number"],"JSObject":[],"Iterable":["Number"],"ImmutableListMixin.E":"Number","ListBase.E":"Number","Iterable.E":"Number"},"PointList":{"JSObject":[]},"ScriptElement0":{"SvgElement":[],"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"StringList":{"ListBase":["String"],"ImmutableListMixin":["String"],"List":["String"],"EfficientLengthIterable":["String"],"JSObject":[],"Iterable":["String"],"ImmutableListMixin.E":"String","ListBase.E":"String","Iterable.E":"String"},"SvgElement":{"Element":[],"Node":[],"EventTarget":[],"JSObject":[]},"TransformList":{"ListBase":["Transform"],"ImmutableListMixin":["Transform"],"List":["Transform"],"EfficientLengthIterable":["Transform"],"JSObject":[],"Iterable":["Transform"],"ImmutableListMixin.E":"Transform","ListBase.E":"Transform","Iterable.E":"Transform"},"AudioBuffer":{"JSObject":[]},"AudioParamMap":{"MapBase":["String","@"],"JSObject":[],"Map":["String","@"],"MapBase.K":"String","MapBase.V":"@"},"AudioTrackList":{"EventTarget":[],"JSObject":[]},"BaseAudioContext":{"EventTarget":[],"JSObject":[]},"OfflineAudioContext":{"EventTarget":[],"JSObject":[]},"DelegatingStreamSink":{"StreamSink":["1"]},"ErrorResult":{"Result":["0&"]},"ValueResult":{"Result":["1"]},"_NextRequest":{"_EventRequest":["1"]},"_HasNextRequest":{"_EventRequest":["1"]},"BuiltList":{"Iterable":["1"]},"_BuiltList":{"BuiltList":["1"],"Iterable":["1"],"Iterable.E":"1"},"_BuiltListMultimap":{"BuiltListMultimap":["1","2"]},"_BuiltMap":{"BuiltMap":["1","2"]},"BuiltSet":{"Iterable":["1"]},"_BuiltSet":{"BuiltSet":["1"],"Iterable":["1"],"Iterable.E":"1"},"_BuiltSetMultimap":{"BuiltSetMultimap":["1","2"]},"BuiltValueNullFieldError":{"Error":[]},"BuiltValueNestedFieldError":{"Error":[]},"BoolJsonObject":{"JsonObject":[]},"ListJsonObject":{"JsonObject":[]},"MapJsonObject":{"JsonObject":[]},"NumJsonObject":{"JsonObject":[]},"StringJsonObject":{"JsonObject":[]},"DeserializationError":{"Error":[]},"BigIntSerializer":{"PrimitiveSerializer":["BigInt"],"Serializer":["BigInt"]},"BoolSerializer":{"PrimitiveSerializer":["bool"],"Serializer":["bool"]},"BuiltJsonSerializers":{"Serializers":[]},"BuiltListMultimapSerializer":{"StructuredSerializer":["BuiltListMultimap<@,@>"],"Serializer":["BuiltListMultimap<@,@>"]},"BuiltListSerializer":{"StructuredSerializer":["BuiltList<@>"],"Serializer":["BuiltList<@>"]},"BuiltMapSerializer":{"StructuredSerializer":["BuiltMap<@,@>"],"Serializer":["BuiltMap<@,@>"]},"BuiltSetMultimapSerializer":{"StructuredSerializer":["BuiltSetMultimap<@,@>"],"Serializer":["BuiltSetMultimap<@,@>"]},"BuiltSetSerializer":{"StructuredSerializer":["BuiltSet<@>"],"Serializer":["BuiltSet<@>"]},"DateTimeSerializer":{"PrimitiveSerializer":["DateTime"],"Serializer":["DateTime"]},"DoubleSerializer":{"PrimitiveSerializer":["double"],"Serializer":["double"]},"DurationSerializer":{"PrimitiveSerializer":["Duration"],"Serializer":["Duration"]},"Int32Serializer":{"PrimitiveSerializer":["Int32"],"Serializer":["Int32"]},"Int64Serializer":{"PrimitiveSerializer":["Int64"],"Serializer":["Int64"]},"IntSerializer":{"PrimitiveSerializer":["int"],"Serializer":["int"]},"JsonObjectSerializer":{"PrimitiveSerializer":["JsonObject"],"Serializer":["JsonObject"]},"NullSerializer":{"PrimitiveSerializer":["Null"],"Serializer":["Null"]},"NumSerializer":{"PrimitiveSerializer":["num"],"Serializer":["num"]},"RegExpSerializer":{"PrimitiveSerializer":["RegExp"],"Serializer":["RegExp"]},"StringSerializer":{"PrimitiveSerializer":["String"],"Serializer":["String"]},"Uint8ListSerializer":{"PrimitiveSerializer":["Uint8List"],"Serializer":["Uint8List"]},"UriSerializer":{"PrimitiveSerializer":["Uri"],"Serializer":["Uri"]},"DefaultEquality":{"Equality":["1"]},"IterableEquality":{"Equality":["Iterable<1>"]},"ListEquality":{"Equality":["List<1>"]},"_UnorderedEquality":{"Equality":["2"]},"SetEquality":{"_UnorderedEquality":["1","Set<1>"],"Equality":["Set<1>"],"_UnorderedEquality.E":"1","_UnorderedEquality.T":"Set<1>"},"MapEquality":{"Equality":["Map<1,2>"]},"DeepCollectionEquality":{"Equality":["@"]},"QueueList":{"ListBase":["1"],"List":["1"],"Queue":["1"],"EfficientLengthIterable":["1"],"Iterable":["1"],"ListBase.E":"1","QueueList.E":"1","Iterable.E":"1"},"_CastQueueList":{"QueueList":["2"],"ListBase":["2"],"List":["2"],"Queue":["2"],"EfficientLengthIterable":["2"],"Iterable":["2"],"ListBase.E":"2","QueueList.E":"2","Iterable.E":"2"},"_$BuildStatusSerializer":{"PrimitiveSerializer":["BuildStatus"],"Serializer":["BuildStatus"]},"_$BuildResultSerializer":{"StructuredSerializer":["BuildResult"],"Serializer":["BuildResult"]},"_$BuildResult":{"BuildResult":[]},"_$ConnectRequestSerializer":{"StructuredSerializer":["ConnectRequest"],"Serializer":["ConnectRequest"]},"_$ConnectRequest":{"ConnectRequest":[]},"_$DebugEventSerializer":{"StructuredSerializer":["DebugEvent"],"Serializer":["DebugEvent"]},"_$BatchedDebugEventsSerializer":{"StructuredSerializer":["BatchedDebugEvents"],"Serializer":["BatchedDebugEvents"]},"_$DebugEvent":{"DebugEvent":[]},"_$BatchedDebugEvents":{"BatchedDebugEvents":[]},"_$DebugInfoSerializer":{"StructuredSerializer":["DebugInfo"],"Serializer":["DebugInfo"]},"_$DebugInfo":{"DebugInfo":[]},"_$DevToolsRequestSerializer":{"StructuredSerializer":["DevToolsRequest"],"Serializer":["DevToolsRequest"]},"_$DevToolsResponseSerializer":{"StructuredSerializer":["DevToolsResponse"],"Serializer":["DevToolsResponse"]},"_$DevToolsRequest":{"DevToolsRequest":[]},"_$DevToolsResponse":{"DevToolsResponse":[]},"_$ErrorResponseSerializer":{"StructuredSerializer":["ErrorResponse"],"Serializer":["ErrorResponse"]},"_$ErrorResponse":{"ErrorResponse":[]},"_$ExtensionRequestSerializer":{"StructuredSerializer":["ExtensionRequest"],"Serializer":["ExtensionRequest"]},"_$ExtensionResponseSerializer":{"StructuredSerializer":["ExtensionResponse"],"Serializer":["ExtensionResponse"]},"_$ExtensionEventSerializer":{"StructuredSerializer":["ExtensionEvent"],"Serializer":["ExtensionEvent"]},"_$BatchedEventsSerializer":{"StructuredSerializer":["BatchedEvents"],"Serializer":["BatchedEvents"]},"_$ExtensionRequest":{"ExtensionRequest":[]},"_$ExtensionResponse":{"ExtensionResponse":[]},"_$ExtensionEvent":{"ExtensionEvent":[]},"_$BatchedEvents":{"BatchedEvents":[]},"_$IsolateExitSerializer":{"StructuredSerializer":["IsolateExit"],"Serializer":["IsolateExit"]},"_$IsolateStartSerializer":{"StructuredSerializer":["IsolateStart"],"Serializer":["IsolateStart"]},"_$IsolateExit":{"IsolateExit":[]},"_$IsolateStart":{"IsolateStart":[]},"_$RegisterEventSerializer":{"StructuredSerializer":["RegisterEvent"],"Serializer":["RegisterEvent"]},"_$RegisterEvent":{"RegisterEvent":[]},"_$RunRequestSerializer":{"StructuredSerializer":["RunRequest"],"Serializer":["RunRequest"]},"_$RunRequest":{"RunRequest":[]},"SseSocketClient":{"SocketClient":[]},"WebSocketClient":{"SocketClient":[]},"Int32":{"Comparable":["Object"]},"Int64":{"Comparable":["Object"]},"Level":{"Comparable":["Level"]},"SseClient":{"StreamChannel":["String?"]},"GuaranteeChannel":{"StreamChannel":["1"]},"_GuaranteeSink":{"StreamSink":["1"]},"StreamChannelMixin":{"StreamChannel":["1"]},"_EventStream":{"Stream":["1"],"Stream.T":"1"},"_EventStreamSubscription0":{"StreamSubscription":["1"]},"BrowserWebSocket":{"WebSocket0":[]},"TextDataReceived":{"WebSocketEvent":[]},"BinaryDataReceived":{"WebSocketEvent":[]},"CloseReceived":{"WebSocketEvent":[]},"AdapterWebSocketChannel":{"WebSocketChannel":[],"StreamChannel":["@"]},"_WebSocketSink":{"WebSocketSink":[],"DelegatingStreamSink":["@"],"StreamSink":["@"],"DelegatingStreamSink.T":"@"},"DdcRestarter":{"Restarter":[]},"RequireRestarter":{"Restarter":[]},"ByteData":{"TypedData":[]},"Int8List":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Uint8List":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Uint8ClampedList":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Int16List":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Uint16List":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Int32List":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Uint32List":{"List":["int"],"EfficientLengthIterable":["int"],"Iterable":["int"],"TypedData":[]},"Float32List":{"List":["double"],"EfficientLengthIterable":["double"],"Iterable":["double"],"TypedData":[]},"Float64List":{"List":["double"],"EfficientLengthIterable":["double"],"Iterable":["double"],"TypedData":[]}}')); A._Universe_addErasedTypes(init.typeUniverse, JSON.parse('{"UnmodifiableListBase":1,"__CastListBase__CastIterableBase_ListMixin":2,"NativeTypedArray":1,"_DelayedEvent":1,"_SplayTreeSet__SplayTree_Iterable":1,"_SplayTreeSet__SplayTree_Iterable_SetMixin":1,"MapEntry":2,"_JsArray_JsObject_ListMixin":1,"_QueueList_Object_ListMixin":1,"StreamChannelMixin":1}')); var string$ = { ABCDEF: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", Error_: "Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type", - Time_i: "Time including microseconds is outside valid range", serial: "serializer must be StructuredSerializer or PrimitiveSerializer" }; var type$ = (function rtii() { diff --git a/dwds/lib/src/version.dart b/dwds/lib/src/version.dart index 282212553..28d30453c 100644 --- a/dwds/lib/src/version.dart +++ b/dwds/lib/src/version.dart @@ -1,2 +1,2 @@ // Generated code. Do not modify. -const packageVersion = '24.1.0'; +const packageVersion = '24.2.0-wip'; diff --git a/dwds/pubspec.yaml b/dwds/pubspec.yaml index cd75a591b..c3e3f9d08 100644 --- a/dwds/pubspec.yaml +++ b/dwds/pubspec.yaml @@ -1,6 +1,6 @@ name: dwds # Every time this changes you need to run `dart run build_runner build`. -version: 24.1.0 +version: 24.2.0-wip description: >- A service that proxies between the Chrome debug protocol and the Dart VM service protocol. diff --git a/dwds/test/fixtures/context.dart b/dwds/test/fixtures/context.dart index 31ca1f043..b90e5699c 100644 --- a/dwds/test/fixtures/context.dart +++ b/dwds/test/fixtures/context.dart @@ -384,6 +384,9 @@ class TestContext { ..addAll({ Capabilities.chromeOptions: { 'args': [ + // --disable-gpu speeds up the tests that use ChromeDriver when + // they are run on GitHub Actions. + '--disable-gpu', 'remote-debugging-port=$debugPort', if (enableDebugExtension) '--load-extension=debug_extension/prod_build', diff --git a/dwds/test/frontend_server_ddc_and_canary_evaluate_test.dart b/dwds/test/frontend_server_ddc_and_canary_evaluate_test.dart index e865e8248..9e3f402e0 100644 --- a/dwds/test/frontend_server_ddc_and_canary_evaluate_test.dart +++ b/dwds/test/frontend_server_ddc_and_canary_evaluate_test.dart @@ -7,8 +7,6 @@ @Timeout(Duration(minutes: 5)) library; -import 'dart:io'; - import 'package:dwds/expression_compiler.dart'; import 'package:test/test.dart'; import 'package:test_common/test_sdk_configuration.dart'; @@ -43,8 +41,11 @@ void main() async { debug: debug, ); }, - // https://github.com/dart-lang/sdk/issues/49277 - skip: indexBaseMode == IndexBaseMode.base && Platform.isWindows, + // TODO(#2488): Restore the skip argument below, related to + // https://github.com/dart-lang/sdk/issues/49277, once + // https://github.com/dart-lang/webdev/issues/2488 is resolved. + // skip: indexBaseMode == IndexBaseMode.base && Platform.isWindows, + skip: 'https://github.com/dart-lang/webdev/issues/2488', ); } }); diff --git a/webdev/test/e2e_test.dart b/webdev/test/e2e_test.dart index 59330970c..cb431a9ed 100644 --- a/webdev/test/e2e_test.dart +++ b/webdev/test/e2e_test.dart @@ -99,68 +99,83 @@ void main() { await process.shouldExit(isNot(0)); }); - test('build should allow passing extra arguments to build_runner', () async { - var args = [ - 'build', - '-o', - 'web:${d.sandbox}', - '--', - '--delete-conflicting-outputs' - ]; + test( + 'build should allow passing extra arguments to build_runner', + () async { + var args = [ + 'build', + '-o', + 'web:${d.sandbox}', + '--', + '--delete-conflicting-outputs' + ]; - var process = await testRunner.runWebDev(args, - workingDirectory: soundExampleDirectory); + var process = await testRunner.runWebDev(args, + workingDirectory: soundExampleDirectory); - await checkProcessStdout(process, ['Succeeded']); - await process.shouldExit(0); - }); + await checkProcessStdout(process, ['Succeeded']); + await process.shouldExit(0); + }, + // https://github.com/dart-lang/webdev/issues/2489, + skip: Platform.isWindows, + ); group('should build with valid configuration', () { for (var withDDC in [true, false]) { - test(withDDC ? 'DDC' : 'dart2js', () async { - var args = ['build', '-o', 'web:${d.sandbox}']; - if (withDDC) { - args.add('--no-release'); - } + test( + withDDC ? 'DDC' : 'dart2js', + () async { + var args = ['build', '-o', 'web:${d.sandbox}']; + if (withDDC) { + args.add('--no-release'); + } - var process = await testRunner.runWebDev(args, - workingDirectory: soundExampleDirectory); + var process = await testRunner.runWebDev(args, + workingDirectory: soundExampleDirectory); - var expectedItems = ['Succeeded']; + var expectedItems = ['Succeeded']; - await checkProcessStdout(process, expectedItems); - await process.shouldExit(0); + await checkProcessStdout(process, expectedItems); + await process.shouldExit(0); - for (var entry in _testItems.entries) { - var shouldExist = (entry.value ?? withDDC) == withDDC; + for (var entry in _testItems.entries) { + var shouldExist = (entry.value ?? withDDC) == withDDC; - if (shouldExist) { - await d.file(entry.key, isNotEmpty).validate(); - } else { - await d.nothing(entry.key).validate(); + if (shouldExist) { + await d.file(entry.key, isNotEmpty).validate(); + } else { + await d.nothing(entry.key).validate(); + } } - } - }); + }, + // https://github.com/dart-lang/webdev/issues/2489 + skip: Platform.isWindows && withDDC, + ); } - test('and --null-safety=sound', () async { - var args = [ - 'build', - '-o', - 'web:${d.sandbox}', - '--no-release', - '--null-safety=sound' - ]; + test( + 'and --null-safety=sound', + () async { + var args = [ + 'build', + '-o', + 'web:${d.sandbox}', + '--no-release', + '--null-safety=sound' + ]; - var process = await testRunner.runWebDev(args, - workingDirectory: soundExampleDirectory); + var process = await testRunner.runWebDev(args, + workingDirectory: soundExampleDirectory); - var expectedItems = ['Succeeded']; + var expectedItems = ['Succeeded']; - await checkProcessStdout(process, expectedItems); - await process.shouldExit(0); + await checkProcessStdout(process, expectedItems); + await process.shouldExit(0); - await d.file('main.ddc.js', isNotEmpty).validate(); - }); + await d.file('main.ddc.js', isNotEmpty).validate(); + }, + // https://github.com/dart-lang/webdev/issues/2489 + skip: Platform.isWindows, + ); }); group('should build with --output=NONE', () {