diff --git a/Dart/build.log b/Dart/build.log index cb94299..a487615 100644 --- a/Dart/build.log +++ b/Dart/build.log @@ -1,5 +1,5 @@ -Built on 2025-01-28 15:34:10+01:00 +Built on 2025-03-06 09:52:17+01:00 Cloning into 'wasm_gc_benchmarks'... -cf32ca4 Recompile all benchmarks +f80892d Update Dart SDK, switch wasm to -O2, recompile performance benchmarks Copying files from wasm_gc_benchmarks/ into build/ Build success diff --git a/Dart/build/flute.dart2wasm.mjs b/Dart/build/flute.dart2wasm.mjs index acf4de7..d7138d6 100644 --- a/Dart/build/flute.dart2wasm.mjs +++ b/Dart/build/flute.dart2wasm.mjs @@ -1,4 +1,3 @@ - // Compiles a dart2wasm-generated main module from `source` which can then // instantiatable via the `instantiate` method. // @@ -47,7 +46,7 @@ class CompiledApp { // wasm file produced by the dart2wasm compiler and returns the bytes to // load the module. These bytes can be in either a format supported by // `WebAssembly.compile` or `WebAssembly.compileStreaming`. - async instantiate(additionalImports, {loadDeferredWasm} = {}) { + async instantiate(additionalImports, {loadDeferredWasm, loadDynamicModule} = {}) { let dartInstance; // Prints to the console @@ -92,31 +91,31 @@ class CompiledApp { // Imports const dart2wasm = { - - _13: x0 => x0.length, - _15: (x0,x1) => x0[x1], - _19: (x0,x1,x2) => new DataView(x0,x1,x2), - _21: x0 => new Int8Array(x0), - _22: (x0,x1,x2) => new Uint8Array(x0,x1,x2), - _23: x0 => new Uint8Array(x0), - _31: x0 => new Int32Array(x0), - _35: x0 => new Float32Array(x0), - _37: x0 => new Float64Array(x0), - _39: (o, c) => o instanceof c, - _42: (o,s,v) => o[s] = v, - _69: () => Symbol("jsBoxedDartObjectProperty"), - _70: (decoder, codeUnits) => decoder.decode(codeUnits), - _71: () => new TextDecoder("utf-8", {fatal: true}), - _72: () => new TextDecoder("utf-8", {fatal: false}), - _80: Date.now, - _82: s => new Date(s * 1000).getTimezoneOffset() * 60, - _83: s => { + _14: x0 => x0.length, + _16: (x0,x1) => x0[x1], + _20: (x0,x1,x2) => new DataView(x0,x1,x2), + _22: x0 => new Int8Array(x0), + _23: (x0,x1,x2) => new Uint8Array(x0,x1,x2), + _24: x0 => new Uint8Array(x0), + _33: x0 => new Int32Array(x0), + _37: x0 => new Float32Array(x0), + _40: x0 => new Float64Array(x0), + _42: (o, c) => o instanceof c, + _45: (o,s,v) => o[s] = v, + _72: () => Symbol("jsBoxedDartObjectProperty"), + _73: (decoder, codeUnits) => decoder.decode(codeUnits), + _74: () => new TextDecoder("utf-8", {fatal: true}), + _75: () => new TextDecoder("utf-8", {fatal: false}), + _76: (s) => parseFloat(s), + _77: Date.now, + _79: s => new Date(s * 1000).getTimezoneOffset() * 60, + _80: s => { if (!/^\s*[+-]?(?:Infinity|NaN|(?:\.\d+|\d+(?:\.\d*)?)(?:[eE][+-]?\d+)?)\s*$/.test(s)) { return NaN; } return parseFloat(s); }, - _84: () => { + _81: () => { let stackString = new Error().stack.toString(); let frames = stackString.split('\n'); let drop = 2; @@ -125,29 +124,28 @@ class CompiledApp { } return frames.slice(drop).join('\n'); }, - _85: () => typeof dartUseDateNowForTicks !== "undefined", - _86: () => 1000 * performance.now(), - _87: () => Date.now(), - _90: () => new WeakMap(), - _91: (map, o) => map.get(o), - _92: (map, o, v) => map.set(o, v), - _105: s => JSON.stringify(s), - _106: s => printToConsole(s), - _107: a => a.join(''), - _110: (s, t) => s.split(t), - _111: s => s.toLowerCase(), - _112: s => s.toUpperCase(), - _113: s => s.trim(), - _114: s => s.trimLeft(), - _115: s => s.trimRight(), - _117: (s, p, i) => s.indexOf(p, i), - _118: (s, p, i) => s.lastIndexOf(p, i), - _120: Object.is, - _121: s => s.toUpperCase(), - _122: s => s.toLowerCase(), - _123: (a, i) => a.push(i), - _127: a => a.pop(), - _128: (a, i) => a.splice(i, 1), + _82: () => typeof dartUseDateNowForTicks !== "undefined", + _83: () => 1000 * performance.now(), + _84: () => Date.now(), + _87: () => new WeakMap(), + _88: (map, o) => map.get(o), + _89: (map, o, v) => map.set(o, v), + _109: s => JSON.stringify(s), + _111: s => printToConsole(s), + _112: (o, p, r) => o.replaceAll(p, () => r), + _114: Function.prototype.call.bind(String.prototype.toLowerCase), + _115: s => s.toUpperCase(), + _116: s => s.trim(), + _117: s => s.trimLeft(), + _118: s => s.trimRight(), + _119: (string, times) => string.repeat(times), + _120: Function.prototype.call.bind(String.prototype.indexOf), + _121: (s, p, i) => s.lastIndexOf(p, i), + _122: (string, token) => string.split(token), + _123: Object.is, + _124: (a, i) => a.push(i), + _128: a => a.pop(), + _129: (a, i) => a.splice(i, 1), _130: (a, s) => a.join(s), _131: (a, s, e) => a.slice(s, e), _134: a => a.length, @@ -199,51 +197,51 @@ class CompiledApp { _184: x0 => x0.mark, _185: x0 => x0.clearMeasures, _186: x0 => x0.clearMarks, - _187: (x0,x1,x2,x3) => x0.measure(x1,x2,x3), - _188: (x0,x1,x2) => x0.mark(x1,x2), - _189: x0 => x0.clearMeasures(), - _190: x0 => x0.clearMarks(), - _191: (x0,x1) => x0.parse(x1), - _197: (ms, c) => + _188: (x0,x1,x2,x3) => x0.measure(x1,x2,x3), + _190: (x0,x1,x2) => x0.mark(x1,x2), + _191: x0 => x0.clearMeasures(), + _193: x0 => x0.clearMarks(), + _195: (x0,x1) => x0.parse(x1), + _201: (ms, c) => setTimeout(() => dartInstance.exports.$invokeCallback(c),ms), - _198: (handle) => clearTimeout(handle), - _201: (c) => + _202: (handle) => clearTimeout(handle), + _205: (c) => queueMicrotask(() => dartInstance.exports.$invokeCallback(c)), - _233: (x0,x1) => x0.matchMedia(x1), - _234: (s, m) => { + _237: (x0,x1) => x0.matchMedia(x1), + _238: (s, m) => { try { return new RegExp(s, m); } catch (e) { return String(e); } }, - _235: (x0,x1) => x0.exec(x1), - _236: (x0,x1) => x0.test(x1), - _237: (x0,x1) => x0.exec(x1), - _238: (x0,x1) => x0.exec(x1), - _239: x0 => x0.pop(), - _241: o => o === undefined, - _260: o => typeof o === 'function' && o[jsWrappedDartFunctionSymbol] === true, - _263: o => o instanceof RegExp, - _264: (l, r) => l === r, - _265: o => o, - _266: o => o, - _267: o => o, - _268: b => !!b, - _269: o => o.length, - _272: (o, i) => o[i], - _273: f => f.dartFunction, - _274: l => arrayFromDartList(Int8Array, l), - _275: l => arrayFromDartList(Uint8Array, l), - _276: l => arrayFromDartList(Uint8ClampedArray, l), - _277: l => arrayFromDartList(Int16Array, l), - _278: l => arrayFromDartList(Uint16Array, l), - _279: l => arrayFromDartList(Int32Array, l), - _280: l => arrayFromDartList(Uint32Array, l), - _281: l => arrayFromDartList(Float32Array, l), - _282: l => arrayFromDartList(Float64Array, l), - _283: x0 => new ArrayBuffer(x0), - _284: (data, length) => { + _239: (x0,x1) => x0.exec(x1), + _240: (x0,x1) => x0.test(x1), + _241: (x0,x1) => x0.exec(x1), + _242: (x0,x1) => x0.exec(x1), + _243: x0 => x0.pop(), + _245: o => o === undefined, + _264: o => typeof o === 'function' && o[jsWrappedDartFunctionSymbol] === true, + _267: o => o instanceof RegExp, + _268: (l, r) => l === r, + _269: o => o, + _270: o => o, + _271: o => o, + _272: b => !!b, + _273: o => o.length, + _276: (o, i) => o[i], + _277: f => f.dartFunction, + _278: l => arrayFromDartList(Int8Array, l), + _279: l => arrayFromDartList(Uint8Array, l), + _280: l => arrayFromDartList(Uint8ClampedArray, l), + _281: l => arrayFromDartList(Int16Array, l), + _282: l => arrayFromDartList(Uint16Array, l), + _283: l => arrayFromDartList(Int32Array, l), + _284: l => arrayFromDartList(Uint32Array, l), + _285: l => arrayFromDartList(Float32Array, l), + _286: l => arrayFromDartList(Float64Array, l), + _287: x0 => new ArrayBuffer(x0), + _288: (data, length) => { const getValue = dartInstance.exports.$byteDataGetUint8; const view = new DataView(new ArrayBuffer(length)); for (let i = 0; i < length; i++) { @@ -251,13 +249,12 @@ class CompiledApp { } return view; }, - _285: l => arrayFromDartList(Array, l), - _286: () => ({}), - _288: l => new Array(l), - _289: () => globalThis, - _292: (o, p) => o[p], - _296: o => String(o), - _298: o => { + _289: l => arrayFromDartList(Array, l), + _290: () => ({}), + _293: () => globalThis, + _296: (o, p) => o[p], + _300: o => String(o), + _302: o => { if (o === undefined) return 1; var type = typeof o; if (type === 'boolean') return 2; @@ -279,83 +276,2718 @@ class CompiledApp { if (o instanceof ArrayBuffer) return 16; return 17; }, - _299: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _303: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const getValue = dartInstance.exports.$wasmI8ArrayGet; for (let i = 0; i < length; i++) { jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i); } }, - _300: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _304: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const setValue = dartInstance.exports.$wasmI8ArraySet; for (let i = 0; i < length; i++) { setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]); } }, - _303: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _307: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const getValue = dartInstance.exports.$wasmI32ArrayGet; for (let i = 0; i < length; i++) { jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i); } }, - _304: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _308: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const setValue = dartInstance.exports.$wasmI32ArraySet; for (let i = 0; i < length; i++) { setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]); } }, - _305: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _309: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const getValue = dartInstance.exports.$wasmF32ArrayGet; for (let i = 0; i < length; i++) { jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i); } }, - _306: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _310: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const setValue = dartInstance.exports.$wasmF32ArraySet; for (let i = 0; i < length; i++) { setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]); } }, - _307: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _311: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const getValue = dartInstance.exports.$wasmF64ArrayGet; for (let i = 0; i < length; i++) { jsArray[jsArrayOffset + i] = getValue(wasmArray, wasmArrayOffset + i); } }, - _308: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { + _312: (jsArray, jsArrayOffset, wasmArray, wasmArrayOffset, length) => { const setValue = dartInstance.exports.$wasmF64ArraySet; for (let i = 0; i < length; i++) { setValue(wasmArray, wasmArrayOffset + i, jsArray[jsArrayOffset + i]); } }, - _312: x0 => x0.index, - _315: (x0,x1) => x0.exec(x1), - _317: x0 => x0.flags, - _318: x0 => x0.multiline, - _319: x0 => x0.ignoreCase, - _320: x0 => x0.unicode, - _321: x0 => x0.dotAll, - _322: (x0,x1) => x0.lastIndex = x1, - _324: (o, p) => o[p], - _327: x0 => x0.random(), - _328: x0 => x0.random(), - _332: () => globalThis.Math, - _334: Function.prototype.call.bind(Number.prototype.toString), - _335: (d, digits) => d.toFixed(digits), - _2137: () => globalThis.window, - _8959: x0 => x0.matches, - _12979: x0 => globalThis.window.flutterCanvasKit = x0, + _316: x0 => x0.index, + _319: (x0,x1) => x0.exec(x1), + _321: x0 => x0.flags, + _322: x0 => x0.multiline, + _323: x0 => x0.ignoreCase, + _324: x0 => x0.unicode, + _325: x0 => x0.dotAll, + _326: (x0,x1) => x0.lastIndex = x1, + _328: (o, p) => o[p], + _331: x0 => x0.random(), + _332: x0 => x0.random(), + _336: () => globalThis.Math, + _338: Function.prototype.call.bind(Number.prototype.toString), + _339: Function.prototype.call.bind(BigInt.prototype.toString), + _340: Function.prototype.call.bind(Number.prototype.toString), + _341: (d, digits) => d.toFixed(digits), + _2143: () => globalThis.window, + _8965: x0 => x0.matches, + _12985: x0 => globalThis.window.flutterCanvasKit = x0, }; const baseImports = { dart2wasm: dart2wasm, - - Math: Math, Date: Date, Object: Object, Array: Array, Reflect: Reflect, + s: [ + "Too few arguments passed. Expected 1 or more, got ", +"Infinity or NaN toInt", +" instead.", +"info", +"null", +"", +" (", +")", +": ", +"Instance of '", +"'", +"Object?", +"Object", +"dynamic", +"void", +"Invalid top type kind", +"minified:Class", +"<", +", ", +">", +"?", +"Attempt to execute code removed by Dart AOT compiler (TFA)", +"T", +"Invalid argument", +"(s)", +"0.0", +"-0.0", +"1.0", +"-1.0", +"NaN", +"-Infinity", +"Infinity", +"e", +".0", +"RangeError (details omitted due to --minify)", +"Unsupported operation: ", +"DiagnosticLevel.", +"true", +"false", +"Division resulted in non-finite value", +"IntegerDivisionByZeroException", +"Type '", +"' is not a subtype of type '", +" in type cast", +"Null", +"Never", +"X", +" extends ", +"(", +"[", +"]", +"{", +"}", +" => ", +"Closure: ", +"...", +"Runtime type check failed (details omitted due to --minify)", +"Type argument substitution not supported for ", +"Type parameter should have been substituted already.", +" ", +"FutureOr", +"required ", +"IndexError (details omitted due to --minify)", +"Concurrent modification during iteration: ", +".", +"Unhandled dartifyRaw type case: ", +"{...}", +"Function?", +"Function", +"buffer", +"Null check operator used on a null value", +"Too few arguments passed. Expected 2 or more, got ", +"Expected integer value, but was not integer.", +"Too few arguments passed. Expected 0 or more, got ", +"Cannot add to a fixed-length list", +"Could not call main", +"JavaScriptError", +"idle", +"Warm-up frame", +"Lock events", +"No element", +"Bad state: ", +"while dispatching a non-hit-tested pointer event", +"while dispatching a pointer event", +"Another exception was thrown: ", +"summary", +"flat", +"MISSING", +"DiagnosticsTreeStyle.", +"thrown", +"The number ", +" was ", +"assertion", +"message", +" object", +"The following ", +":", +"flutter", +"Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.\nIn either case, please report this assertion by filing a bug on GitHub:\n https://github.com/flutter/flutter/issues/new?template=2_bug.md", +"When the exception was thrown, this was the stack", +"Cannot add to an unmodifiable list", +"\n", +"(...)", +"singleLine", +"|()", +"m", +"i", +"u", +"s", +"g", +"Illegal RegExp pattern (", +"FormatException", +" (at line ", +", character ", +")\n", +" (at character ", +"^\n", +" (at offset ", +"The implementation cannot handle very large operands (was: ", +").", +"Exception: ", +"dart:async-patch", +"dart:async", +"package:stack_trace", +"class _AssertionError", +"class _FakeAsync", +"class _FrameCallbackEntry", +"class _Timer", +"class _RawReceivePortImpl", +"class ", +" frames)", +" (1 frame)", +"(elided one frame from ", +"and ", +"(elided ", +" frames from ", +"Too many elements", +"MapEntry(", +"key", +"Key not in map.", +"<asynchronous suspension>", +"asynchronous suspension", +"#", +"^#(\\d+) +(.+) \\((.+?):?(\\d+){0,1}:?(\\d+){0,1}\\)$", +".<anonymous closure>", +"new", +"<unknown>", +"dart", +"package", +"/", +"Radix ", +" not in range 2..36", +"Positive input exceeds the limit of integer", +"Negative input exceeds the limit of integer", +"Invalid number", +"Invalid radix-", +" number", +"\\", +"..", +"/..", +"file", +"file://", +"file:///", +"http", +"80", +"https", +"443", +"Invalid empty scheme", +"Invalid port", +"pathSegments", +"Field '", +"' has been assigned during initialization.", +"LateInitializationError: ", +"Illegal percent encoding in URI", +"Truncated URI", +"Invalid UTF-8 byte", +"Missing extension byte", +"Unexpected extension byte", +"Overlong encoding", +"Out of unicode range", +"Encoded surrogate", +"Unfinished UTF-8 octet sequence", +"Invalid URL encoding", +"hashCode", +"_text", +"//", +"@", +"\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000϶\u0000Єϴ ϴ϶ǶǶ϶ϼǴϿϿքϿϿϿϿϿϿϿϿϿϿהǴ\u0000Ǵ\u0000ԄׄϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿЀ\u0000ЀȀϷȀϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿϿȀȀȀϷ\u0000", +"%", +"%25", +"Invalid character", +"unreachable", +"0123456789ABCDEF", +"start", +"Invalid value", +": Not greater than or equal to ", +": Not in inclusive range ", +": Valid value range is empty", +": Only valid value is ", +"RangeError", +"/.", +"./", +"%3A", +"Missing end `]` to match `[` in host", +"25", +"address is too short", +"invalid start colon.", +"only one wildcard `::` is allowed", +"too few parts", +"expected a part after last `:`", +"an address with a wildcard must have less than 7 parts", +"an address without a wildcard must contain exactly 8 parts", +"invalid character", +"IPv4 address should contain exactly 4 parts", +"each part must be in the range 0..255", +"Illegal IPv4 address, ", +"an IPv6 part can only contain a maximum of 4 hex digits", +"each part must be in the range of `0x0..0xFFFF`", +"Illegal IPv6 address, ", +"ZoneID should not contain % anymore", +"Scheme not starting with alphabetic character", +"Illegal scheme character", +"á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001ááá\u0001áá\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001áãáá\u0001á\u0001áÍ\u0001á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u000e\u0003\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\"\u0001á\u0001á¬á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001ááá\u0001áá\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001áêáá\u0001á\u0001áÍ\u0001á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\n\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\"\u0001á\u0001á¬ëëëëëëëëëëëÍëëëë¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëDëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u0012D\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬å\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005ååå\u0005åDååååååååååååååååååååååååååèåå\u0005å\u0005åÍ\u0005å\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005f\u0005å\u0005å¬å\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005ååå\u0005åDååååååååååååååååååååååååååååå\u0005å\u0005åÍ\u0005å\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005\u0005f\u0005å\u0005å¬ççççççççççççççççççççççççççççççççDçççççççççççççççççççççççççççççççççÍçççççççççççç\u0007\u0007\u0007\u0007\u0007\u0007\u0007\u0007\u0007ççççç¬ççççççççççççççççççççççççççççççççDçççççççççççççççççççççççççççççççççÍççççççççççç\u0007\u0007\u0007\u0007\u0007\u0007\u0007\u0007\u0007\u0007ççççç¬\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\u0005\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëêëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u0010ê\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëêëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u0012\n\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëêëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\n\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬ì\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\fììì\fìì\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\fìììì\fì\fìÍ\fì\f\f\f\f\f\f\f\f\fì\f\f\f\f\f\f\f\f\f\fì\fì\fì\fí\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\rííí\ríí\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\ríííí\rí\ríí\rí\r\r\r\r\r\r\r\r\rí\r\r\r\r\r\r\r\r\r\rí\rí\rí\rá\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001ááá\u0001áá\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001áêáá\u0001á\u0001áÍ\u0001á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u000fê\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\"\u0001á\u0001á¬á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001ááá\u0001áá\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001áéáá\u0001á\u0001áÍ\u0001á\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\t\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0001\"\u0001á\u0001á¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëêëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u0011ê\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëéëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\t\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëêëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u0013ê\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬ë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëëë\u000bëë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bëêëë\u000bë\u000bëÍ\u000bë\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bê\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000b\u000bë\u000bë\u000bë¬õ\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015õõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõ\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015õõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõõ\u0015õ\u0015\u0015õ\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015\u0015õõõõõõ", +"data", +"Invalid MIME type", +"base64", +"Expecting '='", +"data:", +"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", +"Invalid base64 data", +"Invalid base64 encoding length ", +"=", +"==", +"Invalid base64 padding, padded length must be multiple of four, ", +"is ", +"Invalid base64 padding, '=' not at the end", +"Invalid base64 padding, more than two '=' characters", +"Cannot modify an unmodifiable list", +"end", +"count", +"index", +"Index out of range", +": index must not be negative", +": no indices are valid", +": index should be less than ", +"byteOffset", +"Too few elements", +"Value was negative (details omitted due to --minify)", +"RegExp/", +"^(package.+) (\\d+):(\\d+)\\s+(.+)$", +"^(.+) (\\d+):(\\d+)\\s+(.+)$", +"StackFrame", +"(#", +", className: ", +", method: ", +"hint", +" Failed assertion:", +" ", +" <no message available>", +"hidden", +"warning", +"fine", +"takeCount", +"StackTrace.current", +"dart-sdk/lib/_internal", +"dart:sdk_internal", +"Future already completed", +"Cannot complete a future with itself", +"The error handler of Future.then must return a value of the returned future's type", +"onError", +"The error handler of Future.catchError must return a value of the future's type", +"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type", +"-", +"0", +"inSpace", +"inWord", +"atBreak", +"_WordWrapParseMode.", +"^ *(?:[-+*] |[0-9]+[.):] )?", +"lastWordStart", +"Local '", +"' has not been initialized.", +"truncateChildren", +"This ", +" had the following descendants (showing up to depth ", +"):", +" had the following child:", +" has no descendants.", +"error", +"errorProperty", +"Widget", +"Exception caught by ", +"none", +"dense", +"sparse", +"offstage", +"whitespace", +"transition", +"shallow", +"│", +"╘═╦", +"╞═╦", +" ║ ", +" ╚═══════════", +"══╡ ", +" ╞══", +"═════", +"╘═╦══ ", +"╞═╦══ ", +" ═══", +"╎", +"└╌", +"╎╌", +"│ ", +"└─", +"├─", +"└", +"├", +"debug", +" ...(descendants list truncated after ", +" lines)", +"forceReport", +"Symbol(\"", +"\")", +",", +"gesture library", +"while routing a pointer event", +"call", +"Cannot modify unmodifiable map", +"NoSuchMethodError: method not found: '", +"'\n", +"Receiver: ", +"Arguments: [", +"Type argument '", +"' is not a ", +"subtype of type parameter bound '", +"???", +"type '", +"' is not a subtype of ", +"' of '", +"Event", +"Target", +"mouse", +"while dispatching notifications for ", +"foundation library", +"The ", +" sending notification was", +"PointerDeviceKind.", +"flutter/mousecursor", +"activateSystemCursor", +"device", +"kind", +"_stackTrace=", +"IntegerDivisionByZeroException._stackTrace", +"_stackTrace", +"No implementation found for method ", +" on channel ", +"Expected envelope, got nothing", +"Invalid envelope", +"PlatformException(", +"Message corrupted", +"Offset had incorrect alignment (details omitted due to --minify)", +"Offset (", +") must be a multiple of ", +"MissingPluginException(", +"light", +"Brightness.", +"accessibleNavigation", +"invertColors", +"disableAnimations", +"boldText", +"reduceMotion", +"highContrast", +"AccessibilityFeatures", +"during a platform message response callback", +"services library", +"_defaultBinaryMessenger", +"done() must not be called more than once on the same ", +"MethodCall", +"UnimplementedError: ", +"UnimplementedError", +"defer", +"touch", +"Offset(", +"<optimized out>", +"latestEvent: ", +"annotations: [list of ", +"[0] ", +"\n[1] ", +"[2] ", +"\n[3] ", +"HitTestResult(", +"<empty path>", +"_pipelineOwner", +"_resampler", +"Uneven calls to start and finish", +"Missing JSON.parse() support", +"-begin", +"-end", +"{}", +"Converting object to an encodable object failed:", +"Converting object did not return an encodable object:", +"Cyclic error in JSON stringify", +"\"", +",\"", +"\":", +"toJson", +"SchedulerPhase.", +"Frame #", +": build ", +" ms; draw ", +" ms", +"persistentCallbacks", +"postFrameCallbacks", +"during a scheduler callback", +"scheduler library", +"Frame", +"Animate", +"transientCallbacks", +"midFrameMicrotasks", +"active", +"_ElementLifecycle.", +"BUILD", +"while rebuilding dirty elements", +"Uneven calls to startSync and finishSync", +"_jsonArguments", +"widgets library", +"_depth", +"The element being rebuilt at the time was index ", +" of ", +", but _dirtyElements only had ", +" entries. This suggests some confusion in the framework internals.", +"debugCreator", +"⋯", +" ← ", +"(DEFUNCT)", +"attaching to the render tree", +"[#", +"_paragraph", +"' has already been initialized.", +"\\s+", +"TextStyle(", +"color: ", +"unspecified", +"decoration: ", +"decorationColor: ", +"decorationStyle: ", +"solid", +"double", +"dotted", +"dashed", +"wavy", +"decorationThickness: ", +"fontWeight: ", +"fontStyle: ", +"normal", +"italic", +"textBaseline: ", +"alphabetic", +"ideographic", +"fontFamily: ", +"fontFamilyFallback: ", +"fontSize: ", +"letterSpacing: ", +"x", +"wordSpacing: ", +"height: ", +"leadingDistribution: ", +"locale: ", +"background: ", +"foreground: ", +"shadows: ", +"fontFeatures: ", +"fontVariations: ", +"TextBaseline.", +"FontStyle.", +"FontWeight.w100", +"FontWeight.w200", +"FontWeight.w300", +"FontWeight.w400", +"FontWeight.w500", +"FontWeight.w600", +"FontWeight.w700", +"FontWeight.w800", +"FontWeight.w900", +"TextDecorationStyle.", +"TextDecoration.none", +"underline", +"overline", +"lineThrough", +"TextDecoration.", +"TextDecoration.combine([", +"])", +"Color(0x", +"sans-serif", +"left", +"ltr", +"proportional", +"TextLeadingDistribution.", +"TextDirection.", +"TextAlign.", +"ParagraphStyle(", +"textAlign: ", +"right", +"center", +"justify", +"textDirection: ", +"rtl", +"maxLines: ", +"textHeightBehavior: ", +"ellipsis: ", +"TextHeightBehavior(", +"applyHeightToFirstAscent: ", +"applyHeightToLastDescent: ", +"LayerHandle(", +"DISPOSED", +" relayoutBoundary=up", +" NEEDS-LAYOUT", +" NEEDS-PAINT", +" NEEDS-COMPOSITING-BITS-UPDATE", +" DETACHED", +"initial", +"inactive", +"defunct", +"building ", +"Flutter Demo Home Page", +"Flutter Demo", +"system", +"en", +"US", +"BU", +"MM", +"DD", +"DE", +"FX", +"FR", +"TP", +"TL", +"YD", +"YE", +"ZR", +"CD", +"in", +"id", +"iw", +"he", +"ji", +"yi", +"jw", +"jv", +"mo", +"ro", +"aam", +"aas", +"adp", +"dz", +"aue", +"ktz", +"ayx", +"nun", +"bgm", +"bcg", +"bjd", +"drl", +"ccq", +"rki", +"cjr", +"mom", +"cka", +"cmr", +"cmk", +"xch", +"coy", +"pij", +"cqu", +"quh", +"drh", +"khk", +"drw", +"prs", +"gav", +"dev", +"gfx", +"vaj", +"ggn", +"gvr", +"gti", +"nyc", +"guv", +"duz", +"hrr", +"jal", +"ibi", +"opa", +"ilw", +"gal", +"jeg", +"oyb", +"kgc", +"tdf", +"kgh", +"kml", +"koj", +"kwv", +"krm", +"bmf", +"ktr", +"dtp", +"kvs", +"gdj", +"kwq", +"yam", +"kxe", +"tvd", +"kzj", +"kzt", +"lii", +"raq", +"lmm", +"rmx", +"meg", +"cir", +"mst", +"mry", +"mwj", +"myt", +"nad", +"xny", +"ncp", +"kdz", +"nnx", +"ngv", +"nts", +"oun", +"pcr", +"adx", +"pmc", +"huw", +"pmu", +"phr", +"ppa", +"bfy", +"ppr", +"lcq", +"pry", +"prt", +"puz", +"pub", +"sca", +"hle", +"skk", +"tdu", +"thc", +"tpo", +"thx", +"tie", +"ras", +"tkk", +"twm", +"tlw", +"weo", +"tmp", +"tyj", +"tne", +"kak", +"tnf", +"tsf", +"taj", +"uok", +"ema", +"xba", +"cax", +"xia", +"acn", +"xkh", +"waw", +"xsj", +"suj", +"ybd", +"yma", +"lrr", +"ymt", +"mtm", +"yos", +"zom", +"yuu", +"yug", +"_", +"ParametricCurve", +"ThemeMode.", +"button", +"checkbox", +"plainText", +"datePicker", +"progressIndicator", +"slider", +"appBar", +"_WidgetKind.", +"_heroController", +"ScrollBehavior", +"SemanticsProperties", +"AttributedString", +"('", +"', attributes: ", +"_wasRepaintBoundary", +"<none>", +"offset=", +"SemanticsAction.tap", +"SemanticsAction.longPress", +"SemanticsAction.scrollLeft", +"SemanticsAction.scrollRight", +"SemanticsAction.scrollUp", +"SemanticsAction.scrollDown", +"SemanticsAction.increase", +"SemanticsAction.decrease", +"SemanticsAction.showOnScreen", +"SemanticsAction.moveCursorForwardByCharacter", +"SemanticsAction.moveCursorBackwardByCharacter", +"SemanticsAction.setSelection", +"SemanticsAction.copy", +"SemanticsAction.cut", +"SemanticsAction.paste", +"SemanticsAction.didGainAccessibilityFocus", +"SemanticsAction.didLoseAccessibilityFocus", +"SemanticsAction.customAction", +"SemanticsAction.dismiss", +"SemanticsAction.moveCursorForwardByWord", +"SemanticsAction.moveCursorBackwardByWord", +"SemanticsAction.setText", +"size", +"_MediaQueryAspect.", +"alert", +"flutter/platform", +"SystemSound.play", +"Expected envelope List, got ", +"Invalid envelope: ", +"Unterminated string", +"Unexpected character", +"Unexpected end of input", +"Unterminated number literal", +"+NaN", +"-NaN", +"Missing expected digit", +"Control character in string", +"Invalid unicode escape", +"Unrecognized string escape", +"", +"Invalid hex digit", +"method", +"args", +"SystemSoundType.", +"pressed", +"tap", +"android", +"fuchsia", +"iOS", +"linux", +"macOS", +"windows", +"click", +"TargetPlatform.", +"englishLike", +"auto", +"FloatingLabelAlignment.start", +"FloatingLabelAlignment.center", +"FloatingLabelAlignment(x: ", +"FloatingLabelBehavior.", +"accent", +"primary", +"BorderStyle.", +"BorderSide", +"Radius.circular(", +"Radius.elliptical(", +"BorderRadius.circular(", +"BorderRadius.all(", +"BorderRadius.only(", +"topLeft: ", +"topRight: ", +"bottomLeft: ", +"bottomRight: ", +"BorderRadiusDirectional.circular(", +"BorderRadiusDirectional.all(", +"BorderRadiusDirectional.only(", +"topStart: ", +"topEnd: ", +"bottomStart: ", +"bottomEnd: ", +" + ", +"BorderRadius.zero", +"RoundedRectangleBorder", +"ButtonTextTheme.", +"EdgeInsets.zero", +"EdgeInsets.all(", +"EdgeInsets(", +"EdgeInsetsDirectional(", +"0.0, ", +"0.0)", +"TextStyle", +"tall", +"ScriptCategory.", +"flutter/accessibility", +"type", +"nodeId", +"SemanticsEvent", +"hover", +"focus", +"hovered", +"reverse", +"preserve", +"forward", +"completed", +"dismissed", +"Tolerance", +"(distance: ±", +", time: ±", +", velocity: ±", +"Simulation", +"complete", +"canceled", +"while notifying status listeners for ", +"animation library", +"_set", +"_status", +"AnimationStatus.", +"while notifying listeners for ", +"This ticker was canceled: ", +"The ticker was canceled before the \"orCancel\" property was first used.", +"_value", +"AnimationBehavior.", +"_accessibilityFeatures", +"_AnimationDirection.", +"_alphaController", +"Notification", +"➩", +"Animatable", +" → ", +"▶", +"◀", +"⏭", +"⏮", +"; paused", +"; DISPOSED", +"; silenced", +"MaterialState.", +"_HighlightType.", +"+", +"*", +"Size(", +"AlignmentDirectional.topStart", +"AlignmentDirectional.topCenter", +"AlignmentDirectional.topEnd", +"AlignmentDirectional.centerStart", +"AlignmentDirectional.center", +"AlignmentDirectional.centerEnd", +"AlignmentDirectional.bottomStart", +"AlignmentDirectional.bottomCenter", +"AlignmentDirectional.bottomEnd", +"AlignmentDirectional(", +"Alignment.topLeft", +"Alignment.topCenter", +"Alignment.topRight", +"Alignment.centerLeft", +"Alignment.center", +"Alignment.centerRight", +"Alignment.bottomLeft", +"Alignment.bottomCenter", +"Alignment.bottomRight", +"Alignment(", +"Velocity(", +"SpellOutStringAttribute(", +"TextRange(start: ", +", end: ", +"_radiusController", +"Rect.fromLTRB(", +"SemanticsFlag.hasCheckedState", +"SemanticsFlag.isChecked", +"SemanticsFlag.isSelected", +"SemanticsFlag.isButton", +"SemanticsFlag.isTextField", +"SemanticsFlag.isFocused", +"SemanticsFlag.hasEnabledState", +"SemanticsFlag.isEnabled", +"SemanticsFlag.isInMutuallyExclusiveGroup", +"SemanticsFlag.isHeader", +"SemanticsFlag.isObscured", +"SemanticsFlag.scopesRoute", +"SemanticsFlag.namesRoute", +"SemanticsFlag.isHidden", +"SemanticsFlag.isImage", +"SemanticsFlag.isLiveRegion", +"SemanticsFlag.hasToggledState", +"SemanticsFlag.isToggled", +"SemanticsFlag.hasImplicitScrolling", +"SemanticsFlag.isMultiline", +"SemanticsFlag.isReadOnly", +"SemanticsFlag.isFocusable", +"SemanticsFlag.isLink", +"SemanticsFlag.isSlider", +"SemanticsFlag.isKeyboardKey", +"SemanticsFlag.isCheckStateMixed", +"_hadPrimaryFocus", +"_couldRequestFocus", +"monospace", +"fallback style; consider putting your text in a Material", +"Navigator Scope", +"clip", +"; NOT NORMALIZED", +"BoxConstraints(biggest", +"BoxConstraints(unconstrained", +"w", +"h", +"BoxConstraints(", +"<=", +"SizedBox", +".expand", +".shrink", +"ignored", +"skipRemainingHandlers", +"handled", +"_completer", +"direction: ", +"depth: ", +"local", +"remote", +"ScrollDirection.", +"_controller", +"StorageEntryIdentifier(", +"flutter/restoration", +"put", +"_restorationManager", +"DrivenScrollActivity", +"BallisticScrollActivity", +"overscroll: ", +"velocity: ", +"scrollDelta: ", +"up", +"down", +"AxisDirection.", +"created by ", +"Ticker", +"GestureSettings(physicalTouchSlop: ", +", physicalDoubleTapSlop: ", +"ViewPadding(left: ", +", top: ", +", right: ", +", bottom: ", +"[window: ", +", geometry: ", +"devicePixelRatio", +"Cubic", +"line", +"page", +"ScrollIncrementType.", +"parent", +"1", +"2", +"3", +"4", +"5", +"6", +"7", +"8", +"9", +"Alt", +"AltGraph", +"ArrowDown", +"ArrowLeft", +"ArrowRight", +"ArrowUp", +"Clear", +"Control", +"Delete", +"End", +"Enter", +"Home", +"Insert", +"Meta", +"PageDown", +"PageUp", +"Shift", +"AVRInput", +"AVRPower", +"Accel", +"Accept", +"Again", +"AllCandidates", +"Alphanumeric", +"AppSwitch", +"Attn", +"AudioBalanceLeft", +"AudioBalanceRight", +"AudioBassBoostDown", +"AudioBassBoostToggle", +"AudioBassBoostUp", +"AudioFaderFront", +"AudioFaderRear", +"AudioSurroundModeNext", +"AudioTrebleDown", +"AudioTrebleUp", +"AudioVolumeDown", +"AudioVolumeMute", +"AudioVolumeUp", +"Backspace", +"BrightnessDown", +"BrightnessUp", +"BrowserBack", +"BrowserFavorites", +"BrowserForward", +"BrowserHome", +"BrowserRefresh", +"BrowserSearch", +"BrowserStop", +"Call", +"Camera", +"CameraFocus", +"Cancel", +"CapsLock", +"ChannelDown", +"ChannelUp", +"Close", +"ClosedCaptionToggle", +"CodeInput", +"ColorF0Red", +"ColorF1Green", +"ColorF2Yellow", +"ColorF3Blue", +"ColorF4Grey", +"ColorF5Brown", +"Compose", +"ContextMenu", +"Convert", +"Copy", +"CrSel", +"Cut", +"DVR", +"Dimmer", +"DisplaySwap", +"Eisu", +"Eject", +"EndCall", +"EraseEof", +"Esc", +"Escape", +"ExSel", +"Execute", +"Exit", +"F1", +"F10", +"F11", +"F12", +"F13", +"F14", +"F15", +"F16", +"F17", +"F18", +"F19", +"F2", +"F20", +"F21", +"F22", +"F23", +"F24", +"F3", +"F4", +"F5", +"F6", +"F7", +"F8", +"F9", +"FavoriteClear0", +"FavoriteClear1", +"FavoriteClear2", +"FavoriteClear3", +"FavoriteRecall0", +"FavoriteRecall1", +"FavoriteRecall2", +"FavoriteRecall3", +"FavoriteStore0", +"FavoriteStore1", +"FavoriteStore2", +"FavoriteStore3", +"FinalMode", +"Find", +"Fn", +"FnLock", +"GoBack", +"GoHome", +"GroupFirst", +"GroupLast", +"GroupNext", +"GroupPrevious", +"Guide", +"GuideNextDay", +"GuidePreviousDay", +"HangulMode", +"HanjaMode", +"Hankaku", +"HeadsetHook", +"Help", +"Hibernate", +"Hiragana", +"HiraganaKatakana", +"Hyper", +"Info", +"InstantReplay", +"JunjaMode", +"KanaMode", +"KanjiMode", +"Katakana", +"Key11", +"Key12", +"LastNumberRedial", +"LaunchApplication1", +"LaunchApplication2", +"LaunchAssistant", +"LaunchCalendar", +"LaunchContacts", +"LaunchControlPanel", +"LaunchMail", +"LaunchMediaPlayer", +"LaunchMusicPlayer", +"LaunchPhone", +"LaunchScreenSaver", +"LaunchSpreadsheet", +"LaunchWebBrowser", +"LaunchWebCam", +"LaunchWordProcessor", +"Link", +"ListProgram", +"LiveContent", +"Lock", +"LogOff", +"MailForward", +"MailReply", +"MailSend", +"MannerMode", +"MediaApps", +"MediaAudioTrack", +"MediaClose", +"MediaFastForward", +"MediaLast", +"MediaPause", +"MediaPlay", +"MediaPlayPause", +"MediaRecord", +"MediaRewind", +"MediaSkip", +"MediaSkipBackward", +"MediaSkipForward", +"MediaStepBackward", +"MediaStepForward", +"MediaStop", +"MediaTopMenu", +"MediaTrackNext", +"MediaTrackPrevious", +"MicrophoneToggle", +"MicrophoneVolumeDown", +"MicrophoneVolumeMute", +"MicrophoneVolumeUp", +"ModeChange", +"NavigateIn", +"NavigateNext", +"NavigateOut", +"NavigatePrevious", +"New", +"NextCandidate", +"NextFavoriteChannel", +"NextUserProfile", +"NonConvert", +"NumLock", +"OnDemand", +"Open", +"Pairing", +"Paste", +"Pause", +"PinPDown", +"PinPMove", +"PinPToggle", +"PinPUp", +"Play", +"PlaySpeedDown", +"PlaySpeedReset", +"PlaySpeedUp", +"Power", +"PowerOff", +"PreviousCandidate", +"Print", +"PrintScreen", +"Process", +"Props", +"RandomToggle", +"RcLowBattery", +"RecordSpeedNext", +"Redo", +"RfBypass", +"Romaji", +"STBInput", +"STBPower", +"Save", +"ScanChannelsToggle", +"ScreenModeNext", +"ScrollLock", +"Select", +"Settings", +"ShiftLevel5", +"SingleCandidate", +"Soft1", +"Soft2", +"Soft3", +"Soft4", +"Soft5", +"Soft6", +"Soft7", +"Soft8", +"SpeechCorrectionList", +"SpeechInputToggle", +"SpellCheck", +"SplitScreenToggle", +"Standby", +"Subtitle", +"Super", +"Symbol", +"SymbolLock", +"TV", +"TV3DMode", +"TVAntennaCable", +"TVAudioDescription", +"TVAudioDescriptionMixDown", +"TVAudioDescriptionMixUp", +"TVContentsMenu", +"TVDataService", +"TVInput", +"TVInputComponent1", +"TVInputComponent2", +"TVInputComposite1", +"TVInputComposite2", +"TVInputHDMI1", +"TVInputHDMI2", +"TVInputHDMI3", +"TVInputHDMI4", +"TVInputVGA1", +"TVMediaContext", +"TVNetwork", +"TVNumberEntry", +"TVPower", +"TVRadioService", +"TVSatellite", +"TVSatelliteBS", +"TVSatelliteCS", +"TVSatelliteToggle", +"TVTerrestrialAnalog", +"TVTerrestrialDigital", +"TVTimer", +"Tab", +"Teletext", +"Undo", +"Unidentified", +"VideoModeNext", +"VoiceDial", +"WakeUp", +"Wink", +"Zenkaku", +"ZenkakuHankaku", +"ZoomIn", +"ZoomOut", +"ZoomToggle", +"KeyEventResult.", +"keyboard", +"SelectionChangedCause.", +"mac", +"win", +"iphone", +"ipad", +"ipod", +"only screen and (pointer: fine)", +"focusNode", +"FocusTraversalGroup", +"[IN FOCUS PATH]", +"[PRIMARY FOCUS]", +"traversalOrder", +"inverseHitTest", +"Child ", +"child", +"DebugSemanticsDumpOrder.", +"deferToChild", +"HitTestBehavior.", +"Expando:", +"opaque", +"[GlobalKey#", +"DefaultWidgetsLocalizations.delegate(en_US)", +"_selectedIntent", +"_selectedAction", +"keepVisibleAtStart", +"keepVisibleAtEnd", +"Invalid direction ", +"explicit", +"RevealedOffset", +"(offset: ", +", rect: ", +"ScrollPositionAlignmentPolicy.", +"TraversalDirection.", +"leaveFlutterView", +"closedLoop", +"scope", +"previouslyFocusedChild", +"UnfocusDisposition.", +"TraversalEdgeBehavior.", +"SystemChrome.setApplicationSwitcherDescription", +"label", +"primaryColor", +"TextWidthBasis.", +"TextOverflow.", +"nav", +"Clip.", +"Navigator", +"_children", +"hardEdge", +"onstage ", +"offstage ", +"no offstage children", +"_paintOrderIterable", +" - ", +"top=", +"right=", +"bottom=", +"left=", +"width=", +"not positioned", +"; ", +"_hitTestOrderIterable", +"_theater", +"_overlayKey", +"translucent", +"RouteSettings", +"remove", +"add", +"_RouteLifecycle.", +"A DefaultSelectionStyle constructed with DefaultSelectionStyle.fallback cannot be incorporated into the widget tree, it is meant only to provide a fallback value returned by DefaultSelectionStyle.of() when no enclosing default selection style is present in a BuildContext.", +"FlutterError", +"systemBlue", +"systemBackground", +"inactiveGray", +"color", +"darkColor", +"highContrastColor", +"darkHighContrastColor", +"elevatedColor", +"darkElevatedColor", +"highContrastElevatedColor", +"darkHighContrastElevatedColor", +"CupertinoDynamicColor", +", resolved by: ", +"UNRESOLVED", +" = ", +"ₒₙ/", +"ₒₙ", +"dark", +"platformBrightness", +"MaterialIcons", +"small", +"regular", +"_FloatingActionButtonType.", +"<default FloatingActionButton tag>", +"IconData(U+", +"FILL", +"wght", +"GRAD", +"opsz", +"visible", +"ellipsis", +"…", +"identical", +"metadata", +"paint", +"layout", +"RenderComparison.", +"text", +"scale=", +"attributedLabel", +"InlineSpanSemanticsInformation", +"{text: ", +", semanticsLabel: ", +", recognizer: ", +"TextSpan", +"FontVariation('", +"', ", +"base", +"elevated", +"CupertinoUserInterfaceLevelData.", +"large", +"extended", +"min", +"(h: ", +", v: ", +"focused", +"padded", +"shrinkWrap", +"MaterialTapTargetSize.", +"ink renderer", +"transparency", +"canvas", +"evenOdd", +"Unsupport Path verb ", +"PathFillType.", +"nonZero", +"Path(", +"MoveTo(", +"LineTo(", +"Quad(", +"Conic(", +", w = ", +"Cubic(", +"Close()", +"RRect.fromLTRBR(", +"RRect.fromLTRBXY(", +"RRect.fromLTRBAndCorners(", +"CustomClipper", +"card", +"circle", +"CircleBorder", +", eccentricity: ", +"rectangle", +"BoxShape.", +"DragStartBehavior.", +"DragEndDetails", +"DragStartDetails", +"DragDownDetails", +"longPress", +"HapticFeedback.vibrate", +"TooltipTriggerMode.", +"_triggerMode", +"_enableFeedback", +"tooltip", +"(opaque: ", +"; maintainState: ", +"viewInsets", +"textScaleFactor", +"A DefaultTextStyle constructed with DefaultTextStyle.fallback cannot be incorporated into the widget tree, it is meant only to provide a fallback value returned by DefaultTextStyle.of() when no enclosing default text style is present in a BuildContext.", +"_preferBelow", +"_verticalOffset", +"_textAlign", +"_textStyle", +"_decoration", +"_margin", +"_padding", +"_height", +"_hoverShowDuration", +"from", +"_showDuration", +"_waitDuration", +"_forceRemoval", +"_mouseIsConnected", +"_isConcealed", +"_visible", +"DragUpdateDetails", +"gestureSettings", +"ready", +"GestureRecognizerState.", +"traditional", +"directional", +"NavigationMode.", +"navigationMode", +"FocusHighlightMode.", +"_actionMap", +"Widgets that mix AutomaticKeepAliveClientMixin into their State must call super.build() but must ignore the return value of the superclass.", +"background", +"DecorationPosition.", +"ImageConfiguration(", +"bundle: ", +"devicePixelRatio: ", +"size: ", +"platform: ", +"()", +"MaterialType.", +"disabled", +"basic", +"clickable", +"SystemMouseCursor", +"MaterialStateMouseCursor(", +"MaterialStateMouseCursor(FloatActionButton)", +"horizontal", +"VerticalDirection.", +"MainAxisAlignment.", +"Axis.", +"CrossAxisAlignment.", +"MainAxisSize.", +"vertical", +"top", +"bottom", +"_OverflowSide.", +"child ", +"; flex=", +"; fit=", +" OVERFLOWING", +"StadiumBorder", +"_textTheme", +"_colors", +"DefaultCupertinoLocalizations.delegate(en_US)", +"DefaultMaterialLocalizations.delegate(en_US)", +"Instance check should not reach function type parameter.", +"GlobalObjectKey", +"<State<StatefulWidget>>", +"kAlwaysDismissedAnimation", +"ProxyAnimation", +"(null; ", +"ModalRoute", +", animation: ", +"root", +"body", +"loose", +"bottomSheet", +"floatingActionButton", +"statusBar", +"No such element", +"widget library", +"viewPadding", +"FloatingActionButtonAnimator", +"_currentRotationAnimation", +"_currentScaleAnimation", +"_previousRotationAnimation", +"_previousScaleAnimation", +"_previousController", +"_floatingActionButtonVisibilityController", +"_geometryNotifier", +"_floatingActionButtonAnimator", +"_floatingActionButtonMoveController", +"StackFit.", +"padding", +"orientation", +"systemGestureInsets", +"alwaysUse24HourFormat", +"displayFeatures", +"landscape", +"portrait", +"Orientation.", +"textScaleFactor: ", +"platformBrightness: ", +"padding: ", +"viewPadding: ", +"viewInsets: ", +"systemGestureInsets: ", +"alwaysUse24HourFormat: ", +"accessibleNavigation: ", +"highContrast: ", +"disableAnimations: ", +"invertColors: ", +"boldText: ", +"navigationMode: ", +"gestureSettings: ", +"displayFeatures: ", +"MediaQueryData", +"_ScaffoldSlot.", +"; id=", +"FloatingActionButtonLocation.endFloat", +"MultiChildLayoutDelegate", +"Scaffold.of() called with a context that does not contain a Scaffold.", +"No Scaffold ancestor could be found starting from the context that was passed to Scaffold.of(). This usually happens when the context provided is from the same StatefulWidget as that whose build function actually creates the Scaffold widget being sought.", +"There are several ways to avoid this problem. The simplest is to use a Builder to get a context that is \"under\" the Scaffold. For an example of this, please see the documentation for Scaffold.of():\n https://api.flutter.dev/flutter/material/Scaffold/of.html", +"A more efficient solution is to split your build function into several widgets. This introduces a new context from which you can obtain the Scaffold. In this solution, you would have an outer widget that creates the Scaffold populated by instances of your new inner widgets, and then in these inner widgets you would use Scaffold.of().\nA less elegant but more expedient solution is assign a GlobalKey to the Scaffold, then use the key.currentState property to obtain the ScaffoldState rather than using the Scaffold.of() function.", +"The context used was", +"<'", +"'>", +"max", +"secondChild", +"Button", +"Hello World!", +"material", +"ello", +"H", +"W", +"o", +"r", +"l", +"d", +"!", +"_SliderType.", +"<linked>", +"<dangling>", +"adaptive", +"systemFill", +"_position", +"_DragState.", +"dragged", +"onlyForDiscrete", +"_tap", +"_drag", +"overlayController", +"valueIndicatorController", +"onlyForContinuous", +"always", +"never", +"enableController", +"positionController", +"_valueIndicatorAnimation", +"_enableAnimation", +"_overlayAnimation", +"localPosition", +"_SliderAdjustmentType.", +"ShowValueIndicator.", +"_ActivityIndicatorType.", +"SawTooth", +"CurveTween", +"(curve: ", +"Interval", +")➩", +"hms", +"CupertinoTimerPickerMode.", +"tight", +"hm", +"ms", +"tertiarySystemFill", +".SF Pro Display", +"numberLabelBaseline", +"numberLabelHeight", +"textDirection", +"sec.", +"localizations", +"Decoration", +"FrictionSimulation", +"(cₓ: ", +", x₀: ", +", dx₀: ", +"SpringSimulation", +"(end: ", +"underDamped", +"SpringType.", +"overDamped", +"criticallyDamped", +"SpringDescription", +"(mass: ", +", stiffness: ", +", damping: ", +"ScrollPhysics", +" -> ", +"stretch", +"glow", +"_GlowingOverscrollIndicatorPainter(", +"dragDetails", +"pull", +"recede", +"_glowController", +"_glowSize", +"_glowOpacity", +"_GlowState.", +"_displacementTicker", +"absorb", +"side: ", +"leading edge", +"trailing edge", +"_stretchController", +"trailing", +"_stretchSize", +"_StretchDirection.", +"_StretchState.", +"_StretchController()", +"leading", +"AndroidOverscrollIndicator.", +"indicator", +"_configuration", +"_WrappedScrollBehavior", +"HapticFeedbackType.selectionClick", +"initialScrollOffset: ", +"no clients", +"one client, offset ", +" clients", +"selectedMinute", +"secondLabelWidth", +"min.", +"hour", +"hours", +"hourLabelWidth", +"minuteLabelWidth", +"numberLabelWidth", +"totalWidth", +"pickerColumnWidth", +"_repaint", +"selected", +"_reactionController", +"_reactionHoverFadeController", +"_reactionFocusFadeController", +"_reactionHoverFade", +"_reactionFocusFade", +"_reaction", +"MaterialStatePropertyAll(", +"ButtonStyleButton_MouseCursor", +"_fadeOutController", +"_fadeInController", +"{hovered: ", +", focused,pressed: ", +", otherwise: null}", +"{disabled: ", +", otherwise: ", +"FlexFit.", +"firstChild", +"_animation", +"scrolledUnder", +"SystemUiOverlayStyle", +"systemNavigationBarColor", +"systemNavigationBarDividerColor", +"systemStatusBarContrastEnforced", +"statusBarColor", +"statusBarBrightness", +"statusBarIconBrightness", +"systemNavigationBarIconBrightness", +"systemNavigationBarContrastEnforced", +"middle", +"_ToolbarSlot.", +"Open navigation menu", +", focused: ", +", pressed: ", +"Back", +"standard", +"_IconButtonVariant.", +"filled", +"filledTonal", +"outlined", +"statesController", +"_excludeFromSemantics", +"bubble", +"pop", +"doNotPop", +"description", +"name", +"arguments", +"settings", +"route", +"VM", +"Isolate", +"Debug", +"GC", +"_Echo", +"HeapSnapshot", +"Logging", +"Timeline", +"Profiler", +"Extension", +"stream", +"Cannot be a protected stream.", +"Cannot start with an underscore.", +"TransitionRoute", +"adding", +"push", +"pushReplace", +"replace", +"pushing", +"popping", +"removing", +"dispose", +"disposed", +"staging", +"p+", +"r+", +"latency", +"DartPerformanceMode.", +"listener", +"flutter/navigation", +"routeInformationUpdated", +"location", +"state", +"_modalScope", +"_modalBarrier", +"maximize", +"minimize", +"_TrainHoppingMode.", +"TrainHoppingAnimation", +"(next: ", +"(no next)", +"kAlwaysCompleteAnimation", +"heroRectTween", +"RelativeRect.fromLTRB(", +"_endArc", +"_beginArc", +"MaterialPointArcTween", +"; center=", +", radius=", +", beginAngle=", +", endAngle=", +"topLeft", +"topRight", +"bottomLeft", +"bottomRight", +"_CornerId.", +"maxValue", +"MaterialRectArcTween", +"; beginArc=", +", endArc=", +"toHeroLocation", +"fromHeroLocation", +"FlippedCurve", +"➪", +"ReverseAnimation", +"_proxyAnimation", +"manifest", +"HeroFlight(for: ", +", from: ", +", to: ", +"isValid", +"_HeroFlightManifest(", +" tag: ", +" from route: ", +"to route: ", +" with hero: ", +" to ", +", INVALID", +"HeroFlightDirection.", +"a Dart object", +"The Wasm reference is not ", +"_effectiveObservers", +" Focus Scope", +"BlurStyle.", +"BoxShadow(", +"BoxBorder.lerp can only interpolate Border and BorderDirectional classes.", +"BoxBorder.lerp() was called with two objects of type ", +" and ", +":\n", +"However, only Border and BorderDirectional classes are supported by this method.", +"For a more general interpolation method, consider using ShapeBorder.lerp instead.", +"passthrough", +"_recognizer", +"permissive", +"SnapshotMode.", +"delegate", +"_listenable", +"RoutePopDisposition.", +"_theme", +"offset", +"FixedScrollMetrics", +"..[", +"]..", +"range: ", +"viewport: ", +"offset: ", +"fast", +"_duration", +"_distance", +"ScrollDecelerationRate.", +"_springTime", +"_frictionSimulation", +"_springSimulation", +"BouncingScrollSimulation", +"(leadingExtent: ", +", trailingExtent: ", +"c", +"Cannot remove from a fixed-length list", +"Cannot remove from an unmodifiable list", +"RestorationBucket", +"(restorationId: ", +", owner: ", +"v", +"history", +"named", +"anonymous", +"_RouteRestorationType.", +"drawer_open", +"end_drawer_open", +"LinkedListEntry is already in a LinkedList", +"_boxes", +"longestLine", +"ParagraphConstraints(width: ", +"TextPainter.text must be set to a non-null value before using the TextPainter.", +"while building a TextSpan", +"painting library", +"�", +"even", +"Listenable.merge([", +"_GlowController(color: ", +", axis: ", +"selectSingleEntryHistory", +"StadiumBorder(", +"% of the way to being a ", +"RoundedRectangleBorder)", +"% of the way to being a CircleBorder that is ", +"% oval)", +"% of the way to being a CircleBorder)", +"RoundedRectangleBorder(", +"rejected", +"possible", +"accepted", +"while handling a gesture", +"gesture", +"stylus", +"invertedStylus", +"unknown", +"trackpad", +"Could not estimate velocity.", +"; judged to not be a fling.", +"; fling at ", +"GestureDisposition.", +"SemanticsGestureDelegate", +"_descendantsWereTraversable", +"_descendantsWereFocusable", +"_effectiveAnimationStatus", +"CompoundAnimation", +"scaleTransition", +"fadeTransition", +"TweenSequence.evaluate() could not find an interval for ", +"TweenSequence(", +" items)", +"_positionController", +"animationStatusCallback", +"_TransitionSnapshotFabLocation", +"(begin: ", +", progress: ", +"englishLike displayLarge 2014", +"englishLike displayMedium 2014", +"englishLike displaySmall 2014", +"englishLike headlineLarge 2014", +"englishLike headlineMedium 2014", +"englishLike headlineSmall 2014", +"englishLike titleLarge 2014", +"englishLike titleMedium 2014", +"englishLike titleSmall 2014", +"englishLike bodyLarge 2014", +"englishLike bodyMedium 2014", +"englishLike bodySmall 2014", +"englishLike labelLarge 2014", +"englishLike labelMedium 2014", +"englishLike labelSmall 2014", +"dense displayLarge 2014", +"dense displayMedium 2014", +"dense displaySmall 2014", +"dense headlineLarge 2014", +"dense headlineMedium 2014", +"dense headlineSmall 2014", +"dense titleLarge 2014", +"dense titleMedium 2014", +"dense titleSmall 2014", +"dense bodyLarge 2014", +"dense bodyMedium 2014", +"dense bodySmall 2014", +"dense labelLarge 2014", +"dense labelMedium 2014", +"dense labelSmall 2014", +"tall displayLarge 2014", +"tall displayMedium 2014", +"tall displaySmall 2014", +"tall headlineLarge 2014", +"tall headlineMedium 2014", +"tall headlineSmall 2014", +"tall titleLarge 2014", +"tall titleMedium 2014", +"tall titleSmall 2014", +"tall bodyLarge 2014", +"tall bodyMedium 2014", +"tall bodySmall 2014", +"tall labelLarge 2014", +"tall labelMedium 2014", +"tall labelSmall 2014", +".SF UI Display", +"blackCupertino displayLarge", +"blackCupertino displayMedium", +"blackCupertino displaySmall", +"blackCupertino headlineLarge", +"blackCupertino headlineMedium", +"blackCupertino headlineSmall", +"blackCupertino titleLarge", +".SF UI Text", +"blackCupertino titleMedium", +"blackCupertino titleSmall", +"blackCupertino bodyLarge", +"blackCupertino bodyMedium", +"blackCupertino bodySmall", +"blackCupertino labelLarge", +"blackCupertino labelMedium", +"blackCupertino labelSmall", +"whiteCupertino displayLarge", +"whiteCupertino displayMedium", +"whiteCupertino displaySmall", +"whiteCupertino headlineLarge", +"whiteCupertino headlineMedium", +"whiteCupertino headlineSmall", +"whiteCupertino titleLarge", +"whiteCupertino titleMedium", +"whiteCupertino titleSmall", +"whiteCupertino bodyLarge", +"whiteCupertino bodyMedium", +"whiteCupertino bodySmall", +"whiteCupertino labelLarge", +"whiteCupertino labelMedium", +"whiteCupertino labelSmall", +"Roboto", +"blackMountainView displayLarge", +"blackMountainView displayMedium", +"blackMountainView displaySmall", +"blackMountainView headlineLarge", +"blackMountainView headlineMedium", +"blackMountainView headlineSmall", +"blackMountainView titleLarge", +"blackMountainView titleMedium", +"blackMountainView titleSmall", +"blackMountainView bodyLarge", +"blackMountainView bodyMedium", +"blackMountainView bodySmall", +"blackMountainView labelLarge", +"blackMountainView labelMedium", +"blackMountainView labelSmall", +"whiteMountainView displayLarge", +"whiteMountainView displayMedium", +"whiteMountainView displaySmall", +"whiteMountainView headlineLarge", +"whiteMountainView headlineMedium", +"whiteMountainView headlineSmall", +"whiteMountainView titleLarge", +"whiteMountainView titleMedium", +"whiteMountainView titleSmall", +"whiteMountainView bodyLarge", +"whiteMountainView bodyMedium", +"whiteMountainView bodySmall", +"whiteMountainView labelLarge", +"whiteMountainView labelMedium", +"whiteMountainView labelSmall", +"Segoe UI", +"blackRedmond displayLarge", +"blackRedmond displayMedium", +"blackRedmond displaySmall", +"blackRedmond headlineLarge", +"blackRedmond headlineMedium", +"blackRedmond headlineSmall", +"blackRedmond titleLarge", +"blackRedmond titleMedium", +"blackRedmond titleSmall", +"blackRedmond bodyLarge", +"blackRedmond bodyMedium", +"blackRedmond bodySmall", +"blackRedmond labelLarge", +"blackRedmond labelMedium", +"blackRedmond labelSmall", +"whiteRedmond displayLarge", +"whiteRedmond displayMedium", +"whiteRedmond displaySmall", +"whiteRedmond headlineLarge", +"whiteRedmond headlineMedium", +"whiteRedmond headlineSmall", +"whiteRedmond titleLarge", +"whiteRedmond titleMedium", +"whiteRedmond titleSmall", +"whiteRedmond bodyLarge", +"whiteRedmond bodyMedium", +"whiteRedmond bodySmall", +"whiteRedmond labelLarge", +"whiteRedmond labelMedium", +"whiteRedmond labelSmall", +".AppleSystemUIFont", +"blackRedwoodCity displayLarge", +"blackRedwoodCity displayMedium", +"blackRedwoodCity displaySmall", +"blackRedwoodCity headlineLarge", +"blackRedwoodCity headlineMedium", +"blackRedwoodCity headlineSmall", +"blackRedwoodCity titleLarge", +"blackRedwoodCity titleMedium", +"blackRedwoodCity titleSmall", +"blackRedwoodCity bodyLarge", +"blackRedwoodCity bodyMedium", +"blackRedwoodCity bodySmall", +"blackRedwoodCity labelLarge", +"blackRedwoodCity labelMedium", +"blackRedwoodCity labelSmall", +"whiteRedwoodCity displayLarge", +"whiteRedwoodCity displayMedium", +"whiteRedwoodCity displaySmall", +"whiteRedwoodCity headlineLarge", +"whiteRedwoodCity headlineMedium", +"whiteRedwoodCity headlineSmall", +"whiteRedwoodCity titleLarge", +"whiteRedwoodCity titleMedium", +"whiteRedwoodCity titleSmall", +"whiteRedwoodCity bodyLarge", +"whiteRedwoodCity bodyMedium", +"whiteRedwoodCity bodySmall", +"whiteRedwoodCity labelLarge", +"whiteRedwoodCity labelMedium", +"whiteRedwoodCity labelSmall", +"Ubuntu", +"Cantarell", +"DejaVu Sans", +"Liberation Sans", +"Arial", +"blackHelsinki displayLarge", +"blackHelsinki displayMedium", +"blackHelsinki displaySmall", +"blackHelsinki headlineLarge", +"blackHelsinki headlineMedium", +"blackHelsinki headlineSmall", +"blackHelsinki titleLarge", +"blackHelsinki titleMedium", +"blackHelsinki titleSmall", +"blackHelsinki bodyLarge", +"blackHelsinki bodyMedium", +"blackHelsinki bodySmall", +"blackHelsinki labelLarge", +"blackHelsinki labelMedium", +"blackHelsinki labelSmall", +"whiteHelsinki displayLarge", +"whiteHelsinki displayMedium", +"whiteHelsinki displaySmall", +"whiteHelsinki headlineLarge", +"whiteHelsinki headlineMedium", +"whiteHelsinki headlineSmall", +"whiteHelsinki titleLarge", +"whiteHelsinki titleMedium", +"whiteHelsinki titleSmall", +"whiteHelsinki bodyLarge", +"whiteHelsinki bodyMedium", +"whiteHelsinki bodySmall", +"whiteHelsinki labelLarge", +"whiteHelsinki labelMedium", +"whiteHelsinki labelSmall", +"englishLike displayLarge 2021", +"englishLike displayMedium 2021", +"englishLike displaySmall 2021", +"englishLike headlineLarge 2021", +"englishLike headlineMedium 2021", +"englishLike headlineSmall 2021", +"englishLike titleLarge 2021", +"englishLike titleMedium 2021", +"englishLike titleSmall 2021", +"englishLike bodyLarge 2021", +"englishLike bodyMedium 2021", +"englishLike bodySmall 2021", +"englishLike labelLarge 2021", +"englishLike labelMedium 2021", +"englishLike labelSmall 2021", +"dense displayLarge 2021", +"dense displayMedium 2021", +"dense displaySmall 2021", +"dense headlineLarge 2021", +"dense headlineMedium 2021", +"dense headlineSmall 2021", +"dense titleLarge 2021", +"dense titleMedium 2021", +"dense titleSmall 2021", +"dense bodyLarge 2021", +"dense bodyMedium 2021", +"dense bodySmall 2021", +"dense labelLarge 2021", +"dense labelMedium 2021", +"dense labelSmall 2021", +"tall displayLarge 2021", +"tall displayMedium 2021", +"tall displaySmall 2021", +"tall headlineLarge 2021", +"tall headlineMedium 2021", +"tall headlineSmall 2021", +"tall titleLarge 2021", +"tall titleMedium 2021", +"tall titleSmall 2021", +"tall bodyLarge 2021", +"tall bodyMedium 2021", +"tall bodySmall 2021", +"tall labelLarge 2021", +"tall labelMedium 2021", +"tall labelSmall 2021", +"ColorSwatch", +"(primary value: ", +"[root]", +"DeviceGestureSettings(touchSlop: ", +"priority", +"scheduler", +"Framework initialization", +"debugDumpApp", +"didSendFirstFrameEvent", +"didSendFirstFrameRasterizedEvent", +"fastReassemble", +"profileWidgetBuilds", +"profileUserWidgetBuilds", +"enabled", +"extension", +"ext.flutter.", +"value", +"ext.", +"Must begin with ext.", +"Extension already registered: ", +"result", +"computation", +"The type parameter is not nullable", +"during a service extension callback for \"", +"Flutter framework", +"exception", +"stack", +"_extensionType", +"errorCode", +"Out of range", +"WidgetsServiceExtensions.", +"debugDumpRenderTree", +"debugDumpSemanticsTreeInTraversalOrder", +"debugDumpSemanticsTreeInInverseHitTestOrder", +"profileRenderObjectPaints", +"profileRenderObjectLayouts", +"RenderingServiceExtensions.", +"timeDilation", +"Invalid double ", +"SchedulerServiceExtensions.", +"connectedVmServiceUri", +"activeDevToolsServerAddress", +"FoundationServiceExtensions.", +"Semantics not generated.\nFor performance reasons, the framework only generates semantics when asked to do so by the platform.\nUsually, platforms only ask for semantics when assistive technologies (like screen readers) are running.\nTo generate semantics, try turning on an assistive technology (like VoiceOver or TalkBack) on your device.", +"className", +"Success", +"Preparing Hot Reload (layout)", +"Preparing Hot Reload (widgets)", +"DEBUG MODE", +"<no tree currently mounted>", +"flutter/menu", +"Menu.selectedCallback", +"Menu.opened", +"Menu.closed", +"during a platform message callback", +"Invalid method call", +"Expected method call Map, got ", +"Invalid method call: ", +"popRoute", +"pushRoute", +"pushRouteInformation", +"SystemNavigator.pop", +"automatic", +"alwaysTouch", +"alwaysTraditional", +"FocusHighlightStrategy.", +"_keyEventManager", +"Root Focus Scope", +"rootScope", +"_semanticsEnabled", +"flutter/service_worker", +"first-frame", +"Widgets built first useful frame", +"_setNeedsReportTimings", +"FINALIZE TREE", +"while finalizing the widget tree", +"SEMANTICS", +"SemanticsData", +"", +"", +"", +"oldKeyedChildren", +"RenderViewport.twoPane", +"RenderViewport.excludeFromScrolling", +"SemanticsTag", +"A RenderObject does not have any constraints before it has been laid out.", +"downstream", +"TextAffinity.", +"TextSelection", +".invalid", +".collapsed(offset: ", +", affinity: ", +", isDirectional: ", +"(baseOffset: ", +", extentOffset: ", +"_transform", +"_rect", +"SemanticsNode", +"curve", +"descendant", +"duration", +"rect", +"antiAlias", +"antiAliasWithSaveLayer", +"isMergeUp", +"COMPOSITING", +"SystemChrome.setSystemUIOverlayStyle", +"PAINT", +"PictureRecorder did not start recording.", +"during ", +"rendering library", +"The following RenderObject was being processed when the exception was fired", +"RenderObject", +"AnnotationEntry", +"(annotation: ", +", localPosition: ", +"\"matrix4\" must have 16 entries.", +"\"recorder\" must not already be associated with another Canvas.", +"_needsCompositing", +"foreground", +"Paint(", +"stroke", +" hairline", +"butt", +"miter", +" up to ", +"antialias off", +"maskFilter: ", +"filterQuality: ", +"shader: ", +"invert: ", +"dither: ", +"creator", +"FilterQuality.", +"low", +"medium", +"high", +"outer", +"inner", +"MaskFilter.blur(", +"srcOver", +"BlendMode.", +"clear", +"src", +"dst", +"dstOver", +"srcIn", +"dstIn", +"srcOut", +"dstOut", +"srcATop", +"dstATop", +"xor", +"plus", +"modulate", +"screen", +"overlay", +"darken", +"lighten", +"colorDodge", +"colorBurn", +"hardLight", +"softLight", +"difference", +"exclusion", +"multiply", +"hue", +"saturation", +"luminosity", +"StrokeJoin.", +"round", +"bevel", +"StrokeCap.", +"square", +"PaintingStyle.", +"fill", +"BoxPainter for ", +"intersect", +"ClipOp.", +"GrowthDirection.", +"debugPreviousCanvasSaveCount", +"_radius", +"_alpha", +"_fadeOut", +"_fadeIn", +"TextPainter.paint called when text geometry was not yet calculated.\nPlease call layout() before paint() to position the text before painting it.", +"PaintingContext", +"(layer: ", +", canvas bounds: ", +"UPDATING COMPOSITING BITS", +"LAYOUT", +"performLayout", +"performResize", +".getDryLayout", +"baseline", +"aboveBaseline", +"belowBaseline", +"_placeholderSpans", +"PlaceholderAlignment.", +"PlaceholderDimensions(", +"minChildExtent", +"expand", +"fade", +"clamp", +"TileMode.", +"\"colors\" must have length 2 if \"colorStops\" is omitted.", +"VelocityEstimate(", +"; offset: ", +", duration: ", +", confidence: ", +"confidence", +"spaceBetween", +"spaceAround", +"spaceEvenly", +"betweenSpace", +"leadingSpace", +"bottomNavigationBar", +"persistentFooter", +"materialBanner", +"bodyScrim", +"snackBar", +"drawer", +"endDrawer", +"floatingActionButtonRect", +"while executing callbacks for FrameTiming", +"Rasterized first useful frame", +"Default", +"UserTag instance limit (64) reached.", +"fold", +"hinge", +"cutout", +"postureFlat", +"postureHalfOpened", +"postureFlipped", +"DisplayFeature(rect: ", +", type: ", +", state: ", +"DisplayFeatureState.", +"DisplayFeatureType.", +"resumed", +" at ", +"flutter/system", +"flutter/lifecycle", +"paused", +"detached", +"AppLifecycleState.", +"AppLifecycleState.paused", +"AppLifecycleState.resumed", +"AppLifecycleState.inactive", +"AppLifecycleState.detached", +"flutter/textinput", +"during method call ", +"TextInputClient.focusElement", +"TextInputClient.requestElementsInRect", +"TextInputClient.scribbleInteractionBegan", +"TextInputClient.scribbleInteractionFinished", +"TextInputClient.updateEditingState", +"TextInputClient.updateEditingStateWithDeltas", +"TextInputClient.performAction", +"TextInputClient.performSelectors", +"TextInputClient.performPrivateCommand", +"TextInputClient.updateFloatingCursor", +"TextInputClient.onConnectionClosed", +"TextInputClient.showAutocorrectionPromptRect", +"TextInputClient.showToolbar", +"TextInputClient.insertTextPlaceholder", +"TextInputClient.removeTextPlaceholder", +"_channel", +"rawLicenses", +"No events after a done.", +"Cannot add event after closing", +"Cannot add event while adding a stream", +"RawReceivePort", +"Computation ended without result", +"\n\n", +"NOTICES", +"UTF8 decode for \"NOTICES\"", +"^[\\-\\.0-9A-Z_a-z~]*$", +"The asset does not exist or has empty data.", +"Unable to load asset: \"NOTICES\".", +"controller", +"flutter/keyevent", +"rawKeyData", +"while processing the key message handler", +"KeyMessage(", +"while processing a key handler", +"numLock", +"scrollLock", +"capsLock", +"KeyboardLockMode.", +"while processing a raw key listener", +"controlModifier", +"shiftModifier", +"altModifier", +"metaModifier", +"capsLockModifier", +"numLockModifier", +"scrollLockModifier", +"functionModifier", +"symbolModifier", +"all", +"any", +"KeyboardSide.", +"ModifierKey.", +"Abort", +"AltLeft", +"AltRight", +"Backquote", +"Backslash", +"BracketLeft", +"BracketRight", +"Comma", +"ControlLeft", +"ControlRight", +"Digit0", +"Digit1", +"Digit2", +"Digit3", +"Digit4", +"Digit5", +"Digit6", +"Digit7", +"Digit8", +"Digit9", +"DisplayToggleIntExt", +"Equal", +"GameButton1", +"GameButton10", +"GameButton11", +"GameButton12", +"GameButton13", +"GameButton14", +"GameButton15", +"GameButton16", +"GameButton2", +"GameButton3", +"GameButton4", +"GameButton5", +"GameButton6", +"GameButton7", +"GameButton8", +"GameButton9", +"GameButtonA", +"GameButtonB", +"GameButtonC", +"GameButtonLeft1", +"GameButtonLeft2", +"GameButtonMode", +"GameButtonRight1", +"GameButtonRight2", +"GameButtonSelect", +"GameButtonStart", +"GameButtonThumbLeft", +"GameButtonThumbRight", +"GameButtonX", +"GameButtonY", +"GameButtonZ", +"IntlBackslash", +"IntlRo", +"IntlYen", +"KeyA", +"KeyB", +"KeyC", +"KeyD", +"KeyE", +"KeyF", +"KeyG", +"KeyH", +"KeyI", +"KeyJ", +"KeyK", +"KeyL", +"KeyM", +"KeyN", +"KeyO", +"KeyP", +"KeyQ", +"KeyR", +"KeyS", +"KeyT", +"KeyU", +"KeyV", +"KeyW", +"KeyX", +"KeyY", +"KeyZ", +"KeyboardLayoutSelect", +"Lang1", +"Lang2", +"Lang3", +"Lang4", +"Lang5", +"LaunchApp1", +"LaunchApp2", +"MediaSelect", +"MetaLeft", +"MetaRight", +"MicrophoneMuteToggle", +"Minus", +"Numpad0", +"Numpad1", +"Numpad2", +"Numpad3", +"Numpad4", +"Numpad5", +"Numpad6", +"Numpad7", +"Numpad8", +"Numpad9", +"NumpadAdd", +"NumpadBackspace", +"NumpadClear", +"NumpadClearEntry", +"NumpadComma", +"NumpadDecimal", +"NumpadDivide", +"NumpadEnter", +"NumpadEqual", +"NumpadMemoryAdd", +"NumpadMemoryClear", +"NumpadMemoryRecall", +"NumpadMemoryStore", +"NumpadMemorySubtract", +"NumpadMultiply", +"NumpadParenLeft", +"NumpadParenRight", +"NumpadSubtract", +"Period", +"PrivacyScreenToggle", +"Quote", +"Resume", +"SelectTask", +"Semicolon", +"ShiftLeft", +"ShiftRight", +"ShowAllWindows", +"Slash", +"Sleep", +"Space", +"Suspend", +"Turbo", +"keydown", +"keyup", +"Unknown key event type: ", +"code", +"metaState", +"keyCode", +"KeyDataTransitMode.", +"keyDataThenRawKeyData", +"_keyboard", +" was invoked but isn't implemented by ", +"while handling a pointer data packet", +"gestures library", +"number", +"startTime", +"elapsed", +"build", +"raster", +"vsyncOverhead", +"fontsChange", +"memoryPressure", +"ImageCache.clear", +"pendingImages", +"keepAliveImages", +"liveImages", +"currentSizeInBytes", +"_imageCache", +"BindingBase", +"FluteComplex", +".TimeToMain(StartupTime): ", +" us.", +"Z", +"00", +"000", +".TimeToFirstFrame(StartupTime): ", +".AverageBuild(RunTimeRaw): ", +".AverageDraw(RunTimeRaw): ", +".AverageFrame(RunTime): " + ], + }; const jsStringPolyfill = { @@ -390,14 +3022,30 @@ class CompiledApp { } return result; }, - }; + "intoCharCodeArray": (s, a, start) => { + if (s == '') return 0; - const deferredLibraryHelper = { - "loadModule": async (moduleName) => { - if (!loadDeferredWasm) { - throw "No implementation of loadDeferredWasm provided."; + const write = dartInstance.exports.$wasmI16ArraySet; + for (var i = 0; i < s.length; ++i) { + write(a, start++, s.charCodeAt(i)); } - const source = await Promise.resolve(loadDeferredWasm(moduleName)); + return s.length; + }, + }; + + + const loadModuleFromBytes = async (bytes) => { + const module = await WebAssembly.compile(bytes, this.builtins); + return await WebAssembly.instantiate(module, { + ...baseImports, + ...additionalImports, + "wasm:js-string": jsStringPolyfill, + "module0": dartInstance.exports, + }); + } + + const loadModule = async (loader, loaderArgument) => { + const source = await Promise.resolve(loader(loaderArgument)); const module = await ((source instanceof Response) ? WebAssembly.compileStreaming(source, this.builtins) : WebAssembly.compile(source, this.builtins)); @@ -407,6 +3055,25 @@ class CompiledApp { "wasm:js-string": jsStringPolyfill, "module0": dartInstance.exports, }); + } + + const deferredLibraryHelper = { + "loadModule": async (moduleName) => { + if (!loadDeferredWasm) { + throw "No implementation of loadDeferredWasm provided."; + } + return await loadModule(loadDeferredWasm, moduleName); + }, + "loadDynamicModuleFromUri": async (uri) => { + if (!loadDynamicModule) { + throw "No implementation of loadDynamicModule provided."; + } + const loadedModule = await loadModule(loadDynamicModule, uri); + return loadedModule.exports.$invokeEntryPoint; + }, + "loadDynamicModuleFromBytes": async (bytes) => { + const loadedModule = await loadModuleFromBytes(loadDynamicModule, uri); + return loadedModule.exports.$invokeEntryPoint; }, }; @@ -432,4 +3099,3 @@ class InstantiatedApp { this.instantiatedModule.exports.$invokeMain(args); } } - diff --git a/Dart/build/flute.dart2wasm.wasm b/Dart/build/flute.dart2wasm.wasm index cb3ce6d..5699605 100644 Binary files a/Dart/build/flute.dart2wasm.wasm and b/Dart/build/flute.dart2wasm.wasm differ