Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(26)

Side by Side Diff: src/site/samples/gauge/example/gauge.dart.js

Issue 1387723002: Updating the samples page to reflect the examples that have been retired. (Closed) Base URL: https://github.com/dart-lang/www.dartlang.org.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Generated by dart2js, the Dart to JavaScript compiler.
2 // The code supports the following hooks:
3 // dartPrint(message) - if this function is defined it is called
4 // instead of the Dart [print] method.
5 // dartMainRunner(main) - if this function is defined, the Dart [main]
6 // method will not be invoked directly.
7 // Instead, a closure that will invoke [main] is
8 // passed to [dartMainRunner].
9 (function($) {
10 var A = {};
11 delete A.x;
12 var B = {};
13 delete B.x;
14 var C = {};
15 delete C.x;
16 var D = {};
17 delete D.x;
18 var E = {};
19 delete E.x;
20 var F = {};
21 delete F.x;
22 var G = {};
23 delete G.x;
24 var H = {};
25 delete H.x;
26 var J = {};
27 delete J.x;
28 var K = {};
29 delete K.x;
30 var L = {};
31 delete L.x;
32 var M = {};
33 delete M.x;
34 var N = {};
35 delete N.x;
36 var O = {};
37 delete O.x;
38 var P = {};
39 delete P.x;
40 var Q = {};
41 delete Q.x;
42 var R = {};
43 delete R.x;
44 var S = {};
45 delete S.x;
46 var T = {};
47 delete T.x;
48 var U = {};
49 delete U.x;
50 var V = {};
51 delete V.x;
52 var W = {};
53 delete W.x;
54 var X = {};
55 delete X.x;
56 var Y = {};
57 delete Y.x;
58 var Z = {};
59 delete Z.x;
60 function Isolate() {}
61 init();
62
63 $ = Isolate.$isolateProperties;
64 var $$ = {};
65
66 // Native classes
67 // Method closures
68 $$.BoundClosure$i0 = [H, {"": "BoundClosure;_self,__js_helper$_target,_receiver, __js_helper$_name",
69 call$0: function() {
70 return this.__js_helper$_target.call(this._self, this._receiver);
71 }
72 }];
73
74 $$.BoundClosure$1 = [H, {"": "BoundClosure;_self,__js_helper$_target,_receiver,_ _js_helper$_name",
75 call$1: function(p0) {
76 return this.__js_helper$_target.call(this._self, p0);
77 },
78 $is_args1: true
79 }];
80
81 $$.BoundClosure$i1 = [P, {"": "BoundClosure;_self,__js_helper$_target,_receiver, __js_helper$_name",
82 call$1: function(p0) {
83 return this.__js_helper$_target.call(this._self, this._receiver, p0);
84 },
85 call$0: function() {
86 return this.call$1(null);
87 },
88 "+call:0:0": 0,
89 $is_args1: true
90 }];
91
92 $$.BoundClosure$2 = [P, {"": "BoundClosure;_self,__js_helper$_target,_receiver,_ _js_helper$_name",
93 call$2: function(p0, p1) {
94 return this.__js_helper$_target.call(this._self, p0, p1);
95 },
96 call$1: function(p0) {
97 return this.call$2(p0, null);
98 },
99 "+call:1:0": 0,
100 $is_args2: true,
101 $is_args1: true
102 }];
103
104 $$.BoundClosure$0 = [P, {"": "BoundClosure;_self,__js_helper$_target,_receiver,_ _js_helper$_name",
105 call$0: function() {
106 return this.__js_helper$_target.call(this._self);
107 }
108 }];
109
110 $$.BoundClosure$20 = [P, {"": "BoundClosure;_self,__js_helper$_target,_receiver, __js_helper$_name",
111 call$2: function(p0, p1) {
112 return this.__js_helper$_target.call(this._self, p0, p1);
113 },
114 $is_args2: true
115 }];
116
117 $$.Closure$2 = [H, {"": "Closure;call$2,$name", $is_args2: true}];
118
119 $$.Closure$1 = [H, {"": "Closure;call$1,$name", $is_args1: true}];
120
121 $$.Closure$0 = [H, {"": "Closure;call$0,$name"}];
122
123 $$.Closure$7 = [H, {"": "Closure;call$7,$name"}];
124
125 $$.Closure$20 = [P, {"": "Closure;call$2,$name",
126 call$1: function(p0) {
127 return this.call$2(p0, null);
128 },
129 "+call:1:0": 0,
130 $is_args2: true,
131 $is_args1: true
132 }];
133
134 $$.Closure$4 = [P, {"": "Closure;call$4,$name"}];
135
136 (function (reflectionData) {
137 function map(x){x={x:x};delete x.x;return x}
138 if (!init.libraries) init.libraries = [];
139 if (!init.mangledNames) init.mangledNames = map();
140 if (!init.mangledGlobalNames) init.mangledGlobalNames = map();
141 if (!init.statics) init.statics = map();
142 if (!init.typeInformation) init.typeInformation = map();
143 if (!init.globalFunctions) init.globalFunctions = map();
144 var libraries = init.libraries;
145 var mangledNames = init.mangledNames;
146 var mangledGlobalNames = init.mangledGlobalNames;
147 var hasOwnProperty = Object.prototype.hasOwnProperty;
148 var length = reflectionData.length;
149 for (var i = 0; i < length; i++) {
150 var data = reflectionData[i];
151 var name = data[0];
152 var uri = data[1];
153 var metadata = data[2];
154 var globalObject = data[3];
155 var descriptor = data[4];
156 var isRoot = !!data[5];
157 var fields = descriptor && descriptor[""];
158 var classes = [];
159 var functions = [];
160 function processStatics(descriptor) {
161 for (var property in descriptor) {
162 if (!hasOwnProperty.call(descriptor, property)) continue;
163 if (property === "") continue;
164 var element = descriptor[property];
165 var firstChar = property.substring(0, 1);
166 var previousProperty;
167 if (firstChar === "+") {
168 mangledGlobalNames[previousProperty] = property.substring(1);
169 if (descriptor[property] == 1) descriptor[previousProperty].$reflectab le = 1;
170 if (element && element.length) init.typeInformation[previousProperty] = element;
171 } else if (firstChar === "@") {
172 property = property.substring(1);
173 $[property]["@"] = element;
174 } else if (firstChar === "*") {
175 globalObject[previousProperty].$defaultValues = element;
176 var optionalMethods = descriptor.$methodsWithOptionalArguments;
177 if (!optionalMethods) {
178 descriptor.$methodsWithOptionalArguments = optionalMethods = {}
179 }
180 optionalMethods[property] = previousProperty;
181 } else if (typeof element === "function") {
182 globalObject[previousProperty = property] = element;
183 functions.push(property);
184 init.globalFunctions[property] = element;
185 } else {
186 previousProperty = property;
187 var newDesc = {};
188 var previousProp;
189 for (var prop in element) {
190 if (!hasOwnProperty.call(element, prop)) continue;
191 firstChar = prop.substring(0, 1);
192 if (prop === "static") {
193 processStatics(init.statics[property] = element[prop]);
194 } else if (firstChar === "+") {
195 mangledNames[previousProp] = prop.substring(1);
196 if (element[prop] == 1) element[previousProp].$reflectable = 1;
197 } else if (firstChar === "@" && prop !== "@") {
198 newDesc[prop.substring(1)]["@"] = element[prop];
199 } else if (firstChar === "*") {
200 newDesc[previousProp].$defaultValues = element[prop];
201 var optionalMethods = newDesc.$methodsWithOptionalArguments;
202 if (!optionalMethods) {
203 newDesc.$methodsWithOptionalArguments = optionalMethods={}
204 }
205 optionalMethods[prop] = previousProp;
206 } else {
207 newDesc[previousProp = prop] = element[prop];
208 }
209 }
210 $$[property] = [globalObject, newDesc];
211 classes.push(property);
212 }
213 }
214 }
215 processStatics(descriptor);
216 libraries.push([name, uri, classes, functions, metadata, fields, isRoot,
217 globalObject]);
218 }
219 })([
220 ["_foreign_helper", "dart:_foreign_helper", , H, {
221 JS_CONST: {"": "Object;code"}}],
222 ["_interceptors", "dart:_interceptors", , J, {
223 getInterceptor: function(object) {
224 return void 0;
225 },
226
227 makeDispatchRecord: function(interceptor, proto, extension, indexability) {
228 return {i: interceptor, p: proto, e: extension, x: indexability};
229 },
230
231 getNativeInterceptor: function(object) {
232 var record, proto, objectProto, interceptor;
233 record = object[init.dispatchPropertyName];
234 if (record == null)
235 if ($.initNativeDispatchFlag == null) {
236 H.initNativeDispatch();
237 record = object[init.dispatchPropertyName];
238 }
239 if (record != null) {
240 proto = record.p;
241 if (false === proto)
242 return record.i;
243 if (true === proto)
244 return object;
245 objectProto = Object.getPrototypeOf(object);
246 if (proto === objectProto)
247 return record.i;
248 if (record.e === objectProto)
249 throw H.wrapException(P.UnimplementedError$("Return interceptor for " + H. S(proto(object, record))));
250 }
251 interceptor = H.lookupAndCacheInterceptor(object);
252 if (interceptor == null)
253 return C.UnknownJavaScriptObject_methods;
254 return interceptor;
255 },
256
257 Interceptor: {"": "Object;",
258 $eq: function(receiver, other) {
259 return receiver === other;
260 },
261 get$hashCode: function(receiver) {
262 return H.Primitives_objectHashCode(receiver);
263 },
264 toString$0: function(receiver) {
265 return H.Primitives_objectToString(receiver);
266 },
267 noSuchMethod$1: function(receiver, invocation) {
268 throw H.wrapException(P.NoSuchMethodError$(receiver, invocation.get$memberNa me(), invocation.get$positionalArguments(), invocation.get$namedArguments(), nul l));
269 },
270 "%": "DOMError|FileError|MediaError|MediaKeyError|Navigator|NavigatorUserMedia Error|PositionError|SQLError|SVGAnimatedNumberList"
271 },
272
273 JSBool: {"": "bool/Interceptor;",
274 toString$0: function(receiver) {
275 return String(receiver);
276 },
277 get$hashCode: function(receiver) {
278 return receiver ? 519018 : 218159;
279 },
280 $isbool: true
281 },
282
283 JSNull: {"": "Interceptor;",
284 $eq: function(receiver, other) {
285 return null == other;
286 },
287 toString$0: function(receiver) {
288 return "null";
289 },
290 get$hashCode: function(receiver) {
291 return 0;
292 }
293 },
294
295 JavaScriptObject: {"": "Interceptor;",
296 get$hashCode: function(_) {
297 return 0;
298 }
299 },
300
301 PlainJavaScriptObject: {"": "JavaScriptObject;"},
302
303 UnknownJavaScriptObject: {"": "JavaScriptObject;"},
304
305 JSArray: {"": "List/Interceptor;",
306 add$1: function(receiver, value) {
307 if (!!receiver.fixed$length)
308 H.throwExpression(P.UnsupportedError$("add"));
309 receiver.push(value);
310 },
311 addAll$1: function(receiver, collection) {
312 var t1;
313 for (t1 = J.get$iterator$ax(collection); t1.moveNext$0();)
314 this.add$1(receiver, t1.get$current());
315 },
316 forEach$1: function(receiver, f) {
317 return H.IterableMixinWorkaround_forEach(receiver, f);
318 },
319 map$1: function(receiver, f) {
320 var t1 = new H.MappedListIterable(receiver, f);
321 H.setRuntimeTypeInfo(t1, [null, null]);
322 return t1;
323 },
324 elementAt$1: function(receiver, index) {
325 if (index >>> 0 !== index || index >= receiver.length)
326 throw H.ioore(receiver, index);
327 return receiver[index];
328 },
329 toString$0: function(receiver) {
330 return H.IterableMixinWorkaround_toStringIterable(receiver, "[", "]");
331 },
332 get$iterator: function(receiver) {
333 return new H.ListIterator(receiver, receiver.length, 0, null);
334 },
335 get$hashCode: function(receiver) {
336 return H.Primitives_objectHashCode(receiver);
337 },
338 get$length: function(receiver) {
339 return receiver.length;
340 },
341 $index: function(receiver, index) {
342 if (typeof index !== "number" || Math.floor(index) !== index)
343 throw H.wrapException(new P.ArgumentError(index));
344 if (index >= receiver.length || index < 0)
345 throw H.wrapException(P.RangeError$value(index));
346 return receiver[index];
347 },
348 $indexSet: function(receiver, index, value) {
349 if (!!receiver.immutable$list)
350 H.throwExpression(P.UnsupportedError$("indexed set"));
351 if (typeof index !== "number" || Math.floor(index) !== index)
352 throw H.wrapException(new P.ArgumentError(index));
353 if (index >= receiver.length || index < 0)
354 throw H.wrapException(P.RangeError$value(index));
355 receiver[index] = value;
356 },
357 $isList: true,
358 $asList: null,
359 $asIterable: null,
360 $isList: true,
361 $isEfficientLength: true,
362 $isIterable: true
363 },
364
365 JSMutableArray: {"": "JSArray;", $isJSMutableArray: true,
366 $asJSArray: function() {
367 return [null];
368 },
369 $asList: function() {
370 return [null];
371 },
372 $asIterable: function() {
373 return [null];
374 }
375 },
376
377 JSFixedArray: {"": "JSMutableArray;"},
378
379 JSExtendableArray: {"": "JSMutableArray;", $isJSExtendableArray: true},
380
381 JSNumber: {"": "num/Interceptor;",
382 remainder$1: function(receiver, b) {
383 return receiver % b;
384 },
385 abs$0: function(receiver) {
386 return Math.abs(receiver);
387 },
388 toInt$0: function(receiver) {
389 var t1;
390 if (receiver >= -2147483648 && receiver <= 2147483647)
391 return receiver | 0;
392 if (isFinite(receiver)) {
393 t1 = receiver < 0 ? Math.ceil(receiver) : Math.floor(receiver);
394 return t1 + 0;
395 }
396 throw H.wrapException(P.UnsupportedError$('' + receiver));
397 },
398 toString$0: function(receiver) {
399 if (receiver === 0 && 1 / receiver < 0)
400 return "-0.0";
401 else
402 return "" + receiver;
403 },
404 get$hashCode: function(receiver) {
405 return receiver & 0x1FFFFFFF;
406 },
407 $sub: function(receiver, other) {
408 return receiver - other;
409 },
410 $tdiv: function(receiver, other) {
411 if ((receiver | 0) === receiver && (other | 0) === other && 0 !== other && - 1 !== other)
412 return receiver / other | 0;
413 else
414 return this._slowTdiv$1(receiver, other);
415 },
416 _slowTdiv$1: function(receiver, other) {
417 return this.toInt$0(receiver / other);
418 },
419 $shl: function(receiver, other) {
420 if (other < 0)
421 throw H.wrapException(new P.ArgumentError(other));
422 if (other > 31)
423 return 0;
424 return receiver << other >>> 0;
425 },
426 $shr: function(receiver, other) {
427 if (other < 0)
428 throw H.wrapException(new P.ArgumentError(other));
429 if (receiver > 0) {
430 if (other > 31)
431 return 0;
432 return receiver >>> other;
433 }
434 if (other > 31)
435 other = 31;
436 return receiver >> other >>> 0;
437 },
438 $lt: function(receiver, other) {
439 if (typeof other !== "number")
440 throw H.wrapException(P.ArgumentError$(other));
441 return receiver < other;
442 },
443 $gt: function(receiver, other) {
444 if (typeof other !== "number")
445 throw H.wrapException(P.ArgumentError$(other));
446 return receiver > other;
447 },
448 $ge: function(receiver, other) {
449 if (typeof other !== "number")
450 throw H.wrapException(new P.ArgumentError(other));
451 return receiver >= other;
452 },
453 $isnum: true,
454 static: {
455 "": "JSNumber__MIN_INT32,JSNumber__MAX_INT32",
456 }
457
458 },
459
460 JSInt: {"": "int/JSNumber;", $isnum: true, $isint: true},
461
462 JSDouble: {"": "double/JSNumber;", $isnum: true},
463
464 JSString: {"": "String/Interceptor;",
465 codeUnitAt$1: function(receiver, index) {
466 if (typeof index !== "number" || Math.floor(index) !== index)
467 throw H.wrapException(P.ArgumentError$(index));
468 if (index < 0)
469 throw H.wrapException(P.RangeError$value(index));
470 if (index >= receiver.length)
471 throw H.wrapException(P.RangeError$value(index));
472 return receiver.charCodeAt(index);
473 },
474 substring$2: function(receiver, startIndex, endIndex) {
475 var t1;
476 if (typeof startIndex !== "number" || Math.floor(startIndex) !== startIndex)
477 H.throwExpression(P.ArgumentError$(startIndex));
478 if (endIndex == null)
479 endIndex = receiver.length;
480 if (typeof endIndex !== "number" || Math.floor(endIndex) !== endIndex)
481 H.throwExpression(P.ArgumentError$(endIndex));
482 t1 = J.getInterceptor$n(startIndex);
483 if (t1.$lt(startIndex, 0))
484 throw H.wrapException(P.RangeError$value(startIndex));
485 if (t1.$gt(startIndex, endIndex))
486 throw H.wrapException(P.RangeError$value(startIndex));
487 if (J.$gt$n(endIndex, receiver.length))
488 throw H.wrapException(P.RangeError$value(endIndex));
489 return receiver.substring(startIndex, endIndex);
490 },
491 substring$1: function($receiver, startIndex) {
492 return this.substring$2($receiver, startIndex, null);
493 },
494 get$isEmpty: function(receiver) {
495 return receiver.length === 0;
496 },
497 toString$0: function(receiver) {
498 return receiver;
499 },
500 get$hashCode: function(receiver) {
501 var t1, hash, i;
502 for (t1 = receiver.length, hash = 0, i = 0; i < t1; ++i) {
503 hash = 536870911 & hash + receiver.charCodeAt(i);
504 hash = 536870911 & hash + ((524287 & hash) << 10 >>> 0);
505 hash ^= hash >> 6;
506 }
507 hash = 536870911 & hash + ((67108863 & hash) << 3 >>> 0);
508 hash ^= hash >> 11;
509 return 536870911 & hash + ((16383 & hash) << 15 >>> 0);
510 },
511 get$length: function(receiver) {
512 return receiver.length;
513 },
514 $index: function(receiver, index) {
515 if (typeof index !== "number" || Math.floor(index) !== index)
516 throw H.wrapException(new P.ArgumentError(index));
517 if (index >= receiver.length || index < 0)
518 throw H.wrapException(P.RangeError$value(index));
519 return receiver[index];
520 },
521 $isString: true
522 }}],
523 ["_isolate_helper", "dart:_isolate_helper", , H, {
524 _callInIsolate: function(isolate, $function) {
525 var result = isolate.eval$1($function);
526 $globalState.topEventLoop.run$0();
527 return result;
528 },
529
530 startRootIsolate: function(entry) {
531 var rootContext;
532 $globalState = H._Manager$(entry);
533 if ($globalState.isWorker === true)
534 return;
535 rootContext = H._IsolateContext$();
536 $globalState.rootContext = rootContext;
537 $globalState.currentContext = rootContext;
538 if (!!entry.$is_args1)
539 rootContext.eval$1(new H.startRootIsolate_closure(entry));
540 else if (!!entry.$is_args2)
541 rootContext.eval$1(new H.startRootIsolate_closure0(entry));
542 else
543 rootContext.eval$1(entry);
544 $globalState.topEventLoop.run$0();
545 },
546
547 IsolateNatives_computeThisScript: function() {
548 var currentScript = init.currentScript;
549 if (currentScript != null)
550 return String(currentScript.src);
551 if (typeof version == "function" && typeof os == "object" && "system" in os)
552 return H.IsolateNatives_computeThisScriptD8();
553 if (typeof version == "function" && typeof system == "function")
554 return thisFilename();
555 return;
556 },
557
558 IsolateNatives_computeThisScriptD8: function() {
559 var stack, matches;
560 stack = new Error().stack;
561 if (stack == null) {
562 stack = (function() {try { throw new Error() } catch(e) { return e.stack }}) ();
563 if (stack == null)
564 throw H.wrapException(P.UnsupportedError$("No stack trace"));
565 }
566 matches = stack.match(new RegExp("^ *at [^(]*\\((.*):[0-9]*:[0-9]*\\)$", "m")) ;
567 if (matches != null)
568 return matches[1];
569 matches = stack.match(new RegExp("^[^@]*@(.*):[0-9]*$", "m"));
570 if (matches != null)
571 return matches[1];
572 throw H.wrapException(P.UnsupportedError$("Cannot extract URI from \"" + stack + "\""));
573 },
574
575 IsolateNatives__processWorkerMessage: function(sender, e) {
576 var msg, t1, functionName, entryPoint, args, message, isSpawnUri, replyTo, con text, t2;
577 msg = H._deserializeMessage(e.data);
578 t1 = J.getInterceptor$asx(msg);
579 switch (t1.$index(msg, "command")) {
580 case "start":
581 $globalState.currentManagerId = t1.$index(msg, "id");
582 functionName = t1.$index(msg, "functionName");
583 entryPoint = functionName == null ? $globalState.entry : init.globalFuncti ons[functionName];
584 args = t1.$index(msg, "args");
585 message = H._deserializeMessage(t1.$index(msg, "msg"));
586 isSpawnUri = t1.$index(msg, "isSpawnUri");
587 replyTo = H._deserializeMessage(t1.$index(msg, "replyTo"));
588 context = H._IsolateContext$();
589 $globalState.topEventLoop.events._add$1(new H._IsolateEvent(context, new H .IsolateNatives__processWorkerMessage_closure(entryPoint, args, message, isSpawn Uri, replyTo), "worker-start"));
590 $globalState.currentContext = context;
591 $globalState.topEventLoop.run$0();
592 break;
593 case "spawn-worker":
594 H.IsolateNatives__spawnWorker(t1.$index(msg, "functionName"), t1.$index(ms g, "uri"), t1.$index(msg, "args"), t1.$index(msg, "msg"), t1.$index(msg, "isSpaw nUri"), t1.$index(msg, "replyPort"));
595 break;
596 case "message":
597 if (t1.$index(msg, "port") != null)
598 t1.$index(msg, "port").send$1(t1.$index(msg, "msg"));
599 $globalState.topEventLoop.run$0();
600 break;
601 case "close":
602 t1 = $globalState.managers;
603 t2 = $.get$IsolateNatives_workerIds();
604 t1.remove$1(t1, t2.$index(t2, sender));
605 sender.terminate();
606 $globalState.topEventLoop.run$0();
607 break;
608 case "log":
609 H.IsolateNatives__log(t1.$index(msg, "msg"));
610 break;
611 case "print":
612 if ($globalState.isWorker === true) {
613 t1 = $globalState.mainManager;
614 t2 = H._serializeMessage(H.fillLiteralMap(["command", "print", "msg", ms g], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null)));
615 t1.toString;
616 self.postMessage(t2);
617 } else
618 P.print(t1.$index(msg, "msg"));
619 break;
620 case "error":
621 throw H.wrapException(t1.$index(msg, "msg"));
622 default:
623 }
624 },
625
626 IsolateNatives__log: function(msg) {
627 var trace, t1, t2, exception;
628 if ($globalState.isWorker === true) {
629 t1 = $globalState.mainManager;
630 t2 = H._serializeMessage(H.fillLiteralMap(["command", "log", "msg", msg], P. LinkedHashMap_LinkedHashMap(null, null, null, null, null)));
631 t1.toString;
632 self.postMessage(t2);
633 } else
634 try {
635 $.get$globalThis().console.log(msg);
636 } catch (exception) {
637 H.unwrapException(exception);
638 trace = new H._StackTrace(exception, null);
639 throw H.wrapException(P.Exception_Exception(trace));
640 }
641
642 },
643
644 IsolateNatives__startIsolate: function(topLevel, args, message, isSpawnUri, repl yTo) {
645 var t1;
646 H.Primitives_initializeStatics($globalState.currentContext.id);
647 $.lazyPort = H.ReceivePortImpl$();
648 t1 = $.lazyPort;
649 t1.toString;
650 replyTo.send$1(["spawned", new H._NativeJsSendPort(t1, $globalState.currentCon text.id)]);
651 if (isSpawnUri !== true)
652 topLevel.call$1(message);
653 else {
654 t1 = J.getInterceptor(topLevel);
655 if (!!t1.$is_args2)
656 topLevel.call$2(args, message);
657 else if (!!t1.$is_args1)
658 topLevel.call$1(args);
659 else
660 topLevel.call$0();
661 }
662 },
663
664 IsolateNatives__spawnWorker: function(functionName, uri, args, message, isSpawnU ri, replyPort) {
665 var worker, t1, workerId;
666 if (uri == null)
667 uri = $.get$IsolateNatives_thisScript();
668 worker = new Worker(uri);
669 worker.onmessage = function(e) { H.IsolateNatives__processWorkerMessage$closur e.call$2(worker, e); };
670 t1 = $globalState;
671 workerId = t1.nextManagerId;
672 t1.nextManagerId = workerId + 1;
673 t1 = $.get$IsolateNatives_workerIds();
674 t1.$indexSet(t1, worker, workerId);
675 t1 = $globalState.managers;
676 t1.$indexSet(t1, workerId, worker);
677 worker.postMessage(H._serializeMessage(H.fillLiteralMap(["command", "start", " id", workerId, "replyTo", H._serializeMessage(replyPort), "args", args, "msg", H ._serializeMessage(message), "isSpawnUri", isSpawnUri, "functionName", functionN ame], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null))));
678 },
679
680 _waitForPendingPorts: function(message, callback) {
681 var finder = H._PendingSendPortFinder$();
682 finder.traverse$1(message);
683 P.Future_wait(finder.ports).then$1(new H._waitForPendingPorts_closure(callback ));
684 },
685
686 _serializeMessage: function(message) {
687 var t1;
688 if ($globalState.supportsWorkers === true) {
689 t1 = new H._JsSerializer(0, new H._MessageTraverserVisitedMap());
690 t1._visited = new H._JsVisitedMap(null);
691 return t1.traverse$1(message);
692 } else {
693 t1 = new H._JsCopier(new H._MessageTraverserVisitedMap());
694 t1._visited = new H._JsVisitedMap(null);
695 return t1.traverse$1(message);
696 }
697 },
698
699 _deserializeMessage: function(message) {
700 if ($globalState.supportsWorkers === true)
701 return new H._JsDeserializer(null).deserialize$1(message);
702 else
703 return message;
704 },
705
706 _MessageTraverser_isPrimitive: function(x) {
707 return x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean";
708 },
709
710 _Deserializer_isPrimitive: function(x) {
711 return x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean";
712 },
713
714 startRootIsolate_closure: {"": "Closure;entry_0",
715 call$0: function() {
716 this.entry_0.call$1([]);
717 },
718 "+call:0:0": 0,
719 $isFunction: true
720 },
721
722 startRootIsolate_closure0: {"": "Closure;entry_1",
723 call$0: function() {
724 this.entry_1.call$2([], null);
725 },
726 "+call:0:0": 0,
727 $isFunction: true
728 },
729
730 _Manager: {"": "Object;nextIsolateId,currentManagerId,nextManagerId,currentConte xt,rootContext,topEventLoop,fromCommandLine,isWorker,supportsWorkers,isolates,ma inManager,managers,entry",
731 _nativeDetectEnvironment$0: function() {
732 var t1, t2;
733 t1 = $.get$globalWindow() == null;
734 t2 = $.get$globalWorker();
735 this.isWorker = t1 && $.get$globalPostMessageDefined() === true;
736 if (this.isWorker !== true)
737 t2 = t2 != null && $.get$IsolateNatives_thisScript() != null;
738 else
739 t2 = true;
740 this.supportsWorkers = t2;
741 this.fromCommandLine = t1 && this.isWorker !== true;
742 },
743 _nativeInitWorkerMessageHandler$0: function() {
744 var $function = function (e) { H.IsolateNatives__processWorkerMessage$closur e.call$2(this.mainManager, e); };
745 $.get$globalThis().onmessage = $function;
746 $.get$globalThis().dartPrint = function (object) {};
747 },
748 _Manager$1: function(entry) {
749 this._nativeDetectEnvironment$0();
750 this.topEventLoop = new H._EventLoop(P.ListQueue$(null, H._IsolateEvent), 0) ;
751 this.isolates = P.LinkedHashMap_LinkedHashMap(null, null, null, J.JSInt, H._ IsolateContext);
752 this.managers = P.LinkedHashMap_LinkedHashMap(null, null, null, J.JSInt, nul l);
753 if (this.isWorker === true) {
754 this.mainManager = new H._MainManagerStub();
755 this._nativeInitWorkerMessageHandler$0();
756 }
757 },
758 static: {
759 _Manager$: function(entry) {
760 var t1 = new H._Manager(0, 0, 1, null, null, null, null, null, null, null, nul l, null, entry);
761 t1._Manager$1(entry);
762 return t1;
763 }}
764
765 },
766
767 _IsolateContext: {"": "Object;id,ports,isolateStatics<",
768 eval$1: function(code) {
769 var old, result;
770 old = $globalState.currentContext;
771 $globalState.currentContext = this;
772 $ = this.isolateStatics;
773 result = null;
774 try {
775 result = code.call$0();
776 } finally {
777 $globalState.currentContext = old;
778 if (old != null)
779 $ = old.get$isolateStatics();
780 }
781 return result;
782 },
783 lookup$1: function(portId) {
784 var t1 = this.ports;
785 return t1.$index(t1, portId);
786 },
787 register$2: function(_, portId, port) {
788 var t1;
789 if (this.ports.containsKey$1(portId))
790 throw H.wrapException(P.Exception_Exception("Registry: ports must be regis tered only once."));
791 t1 = this.ports;
792 t1.$indexSet(t1, portId, port);
793 t1 = $globalState.isolates;
794 t1.$indexSet(t1, this.id, this);
795 },
796 unregister$1: function(portId) {
797 var t1 = this.ports;
798 t1.remove$1(t1, portId);
799 if (this.ports._collection$_length === 0) {
800 t1 = $globalState.isolates;
801 t1.remove$1(t1, this.id);
802 }
803 },
804 _IsolateContext$0: function() {
805 var t1, t2;
806 t1 = $globalState;
807 t2 = t1.nextIsolateId;
808 t1.nextIsolateId = t2 + 1;
809 this.id = t2;
810 this.ports = P.LinkedHashMap_LinkedHashMap(null, null, null, J.JSInt, P.Rece ivePort);
811 this.isolateStatics = new Isolate();
812 },
813 static: {
814 _IsolateContext$: function() {
815 var t1 = new H._IsolateContext(null, null, null);
816 t1._IsolateContext$0();
817 return t1;
818 }}
819
820 },
821
822 _EventLoop: {"": "Object;events,activeTimerCount",
823 dequeue$0: function() {
824 var t1 = this.events;
825 if (t1._head === t1._tail)
826 return;
827 return t1.removeFirst$0();
828 },
829 checkOpenReceivePortsFromCommandLine$0: function() {
830 if ($globalState.rootContext != null && $globalState.isolates.containsKey$1( $globalState.rootContext.id) && $globalState.fromCommandLine === true && $global State.rootContext.ports._collection$_length === 0)
831 throw H.wrapException(P.Exception_Exception("Program exited with open Rece ivePorts."));
832 },
833 runIteration$0: function() {
834 var $event, t1, t2;
835 $event = this.dequeue$0();
836 if ($event == null) {
837 this.checkOpenReceivePortsFromCommandLine$0();
838 t1 = $globalState;
839 if (t1.isWorker === true && t1.isolates._collection$_length === 0 && t1.to pEventLoop.activeTimerCount === 0) {
840 t1 = t1.mainManager;
841 t2 = H._serializeMessage(H.fillLiteralMap(["command", "close"], P.Linked HashMap_LinkedHashMap(null, null, null, null, null)));
842 t1.toString;
843 self.postMessage(t2);
844 }
845 return false;
846 }
847 $event.process$0();
848 return true;
849 },
850 _runHelper$0: function() {
851 if ($.get$globalWindow() != null)
852 new H._EventLoop__runHelper_next(this).call$0();
853 else
854 for (; this.runIteration$0();)
855 ;
856 },
857 run$0: function() {
858 var e, trace, exception, t1, t2;
859 if ($globalState.isWorker !== true)
860 this._runHelper$0();
861 else
862 try {
863 this._runHelper$0();
864 } catch (exception) {
865 t1 = H.unwrapException(exception);
866 e = t1;
867 trace = new H._StackTrace(exception, null);
868 t1 = $globalState.mainManager;
869 t2 = H._serializeMessage(H.fillLiteralMap(["command", "error", "msg", H. S(e) + "\n" + H.S(trace)], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null)));
870 t1.toString;
871 self.postMessage(t2);
872 }
873
874 }
875 },
876
877 _EventLoop__runHelper_next: {"": "Closure;this_0",
878 call$0: function() {
879 if (!this.this_0.runIteration$0())
880 return;
881 P.Timer_Timer(C.Duration_0, this);
882 },
883 "+call:0:0": 0,
884 $isFunction: true
885 },
886
887 _IsolateEvent: {"": "Object;isolate,fn,message",
888 process$0: function() {
889 this.isolate.eval$1(this.fn);
890 }
891 },
892
893 _MainManagerStub: {"": "Object;"},
894
895 IsolateNatives__processWorkerMessage_closure: {"": "Closure;entryPoint_0,args_1, message_2,isSpawnUri_3,replyTo_4",
896 call$0: function() {
897 H.IsolateNatives__startIsolate(this.entryPoint_0, this.args_1, this.message_ 2, this.isSpawnUri_3, this.replyTo_4);
898 },
899 "+call:0:0": 0,
900 $isFunction: true
901 },
902
903 _BaseSendPort: {"": "Object;", $isSendPort: true},
904
905 _NativeJsSendPort: {"": "_BaseSendPort;_receivePort,_isolateId",
906 send$1: function(message) {
907 H._waitForPendingPorts(message, new H._NativeJsSendPort_send_closure(this, m essage));
908 },
909 $eq: function(_, other) {
910 var t1;
911 if (other == null)
912 return false;
913 t1 = J.getInterceptor(other);
914 return typeof other === "object" && other !== null && !!t1.$is_NativeJsSendP ort && J.$eq(this._receivePort, other._receivePort);
915 },
916 get$hashCode: function(_) {
917 return this._receivePort.get$_id();
918 },
919 $is_NativeJsSendPort: true,
920 $isSendPort: true
921 },
922
923 _NativeJsSendPort_send_closure: {"": "Closure;this_1,message_2",
924 call$0: function() {
925 var t1, t2, t3, t4, isolate, shouldSerialize, msg;
926 t1 = {};
927 t2 = $globalState.isolates;
928 t3 = this.this_1;
929 t4 = t3._isolateId;
930 isolate = t2.$index(t2, t4);
931 if (isolate == null)
932 return;
933 if ((t3._receivePort.get$_controller()._state & 4) !== 0)
934 return;
935 shouldSerialize = $globalState.currentContext != null && $globalState.curren tContext.id !== t4;
936 msg = this.message_2;
937 t1.msg_0 = msg;
938 if (shouldSerialize)
939 t1.msg_0 = H._serializeMessage(t1.msg_0);
940 t2 = $globalState.topEventLoop;
941 t4 = "receive " + H.S(msg);
942 t2.events._add$1(new H._IsolateEvent(isolate, new H._NativeJsSendPort_send__ closure(t1, t3, shouldSerialize), t4));
943 },
944 "+call:0:0": 0,
945 $isFunction: true
946 },
947
948 _NativeJsSendPort_send__closure: {"": "Closure;box_0,this_3,shouldSerialize_4",
949 call$0: function() {
950 var t1, t2;
951 t1 = this.this_3._receivePort;
952 if ((t1.get$_controller()._state & 4) === 0) {
953 if (this.shouldSerialize_4) {
954 t2 = this.box_0;
955 t2.msg_0 = H._deserializeMessage(t2.msg_0);
956 }
957 t1 = t1.get$_controller();
958 t2 = this.box_0.msg_0;
959 if (t1._state >= 4)
960 H.throwExpression(t1._badEventState$0());
961 t1._async$_add$1(t2);
962 }
963 },
964 "+call:0:0": 0,
965 $isFunction: true
966 },
967
968 _WorkerSendPort: {"": "_BaseSendPort;_workerId,_receivePortId,_isolateId",
969 send$1: function(message) {
970 H._waitForPendingPorts(message, new H._WorkerSendPort_send_closure(this, mes sage));
971 },
972 $eq: function(_, other) {
973 var t1;
974 if (other == null)
975 return false;
976 t1 = J.getInterceptor(other);
977 return typeof other === "object" && other !== null && !!t1.$is_WorkerSendPor t && J.$eq(this._workerId, other._workerId) && J.$eq(this._isolateId, other._iso lateId) && J.$eq(this._receivePortId, other._receivePortId);
978 },
979 get$hashCode: function(_) {
980 var t1, t2, t3;
981 t1 = J.$shl$n(this._workerId, 16);
982 t2 = J.$shl$n(this._isolateId, 8);
983 t3 = this._receivePortId;
984 if (typeof t3 !== "number")
985 throw H.iae(t3);
986 return (t1 ^ t2 ^ t3) >>> 0;
987 },
988 $is_WorkerSendPort: true,
989 $isSendPort: true
990 },
991
992 _WorkerSendPort_send_closure: {"": "Closure;this_0,message_1",
993 call$0: function() {
994 var t1, workerMessage, t2, manager;
995 t1 = this.this_0;
996 workerMessage = H._serializeMessage(H.fillLiteralMap(["command", "message", "port", t1, "msg", this.message_1], P.LinkedHashMap_LinkedHashMap(null, null, nu ll, null, null)));
997 if ($globalState.isWorker === true) {
998 $globalState.mainManager.toString;
999 self.postMessage(workerMessage);
1000 } else {
1001 t2 = $globalState.managers;
1002 manager = t2.$index(t2, t1._workerId);
1003 if (manager != null)
1004 manager.postMessage(workerMessage);
1005 }
1006 },
1007 "+call:0:0": 0,
1008 $isFunction: true
1009 },
1010
1011 ReceivePortImpl: {"": "Stream;_id<,_controller<",
1012 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) {
1013 var t1 = this._controller;
1014 t1.toString;
1015 t1 = new P._ControllerStream(t1);
1016 H.setRuntimeTypeInfo(t1, [null]);
1017 return t1.listen$4$cancelOnError$onDone$onError(onData, cancelOnError, onDon e, onError);
1018 },
1019 listen$3$onDone$onError: function(onData, onDone, onError) {
1020 return this.listen$4$cancelOnError$onDone$onError(onData, null, onDone, onEr ror);
1021 },
1022 close$0: function(_) {
1023 var t1 = this._controller;
1024 if ((t1._state & 4) !== 0)
1025 return;
1026 t1.close$0(t1);
1027 $globalState.currentContext.unregister$1(this._id);
1028 },
1029 get$close: function(_receiver) {
1030 return new H.BoundClosure$i0(this, H.ReceivePortImpl.prototype.close$0, _rec eiver, "close$0");
1031 },
1032 ReceivePortImpl$0: function() {
1033 this._controller = P.StreamController_StreamController(this.get$close(this), null, null, null, true, null);
1034 var t1 = $globalState.currentContext;
1035 t1.register$2(t1, this._id, this);
1036 },
1037 static: {
1038 "": "ReceivePortImpl__nextFreeId",
1039 ReceivePortImpl$: function() {
1040 var t1 = $.ReceivePortImpl__nextFreeId;
1041 $.ReceivePortImpl__nextFreeId = t1 + 1;
1042 t1 = new H.ReceivePortImpl(t1, null);
1043 t1.ReceivePortImpl$0();
1044 return t1;
1045 }}
1046
1047 },
1048
1049 _waitForPendingPorts_closure: {"": "Closure;callback_0",
1050 call$1: function(_) {
1051 return this.callback_0.call$0();
1052 },
1053 "+call:1:0": 0,
1054 $isFunction: true,
1055 $is_args1: true
1056 },
1057
1058 _PendingSendPortFinder: {"": "_MessageTraverser;ports,_visited",
1059 visitPrimitive$1: function(x) {
1060 },
1061 visitList$1: function(list) {
1062 var t1 = this._visited;
1063 if (t1.$index(t1, list) != null)
1064 return;
1065 t1 = this._visited;
1066 t1.$indexSet(t1, list, true);
1067 J.forEach$1$ax(list, this.get$_dispatch());
1068 },
1069 visitMap$1: function(map) {
1070 var t1 = this._visited;
1071 if (t1.$index(t1, map) != null)
1072 return;
1073 t1 = this._visited;
1074 t1.$indexSet(t1, map, true);
1075 t1 = map.get$values(map);
1076 t1.forEach$1(t1, this.get$_dispatch());
1077 },
1078 visitSendPort$1: function(port) {
1079 },
1080 _PendingSendPortFinder$0: function() {
1081 this._visited = new H._JsVisitedMap(null);
1082 },
1083 static: {
1084 _PendingSendPortFinder$: function() {
1085 var t1 = new H._PendingSendPortFinder([], new H._MessageTraverserVisitedMap()) ;
1086 t1._PendingSendPortFinder$0();
1087 return t1;
1088 }}
1089
1090 },
1091
1092 _JsSerializer: {"": "_Serializer;_nextFreeRefId,_visited",
1093 visitSendPort$1: function(x) {
1094 if (!!x.$is_NativeJsSendPort)
1095 return ["sendport", $globalState.currentManagerId, x._isolateId, x._receiv ePort.get$_id()];
1096 if (!!x.$is_WorkerSendPort)
1097 return ["sendport", x._workerId, x._isolateId, x._receivePortId];
1098 throw H.wrapException("Illegal underlying port " + H.S(x));
1099 }
1100 },
1101
1102 _JsCopier: {"": "_Copier;_visited",
1103 visitSendPort$1: function(x) {
1104 if (!!x.$is_NativeJsSendPort)
1105 return new H._NativeJsSendPort(x._receivePort, x._isolateId);
1106 if (!!x.$is_WorkerSendPort)
1107 return new H._WorkerSendPort(x._workerId, x._receivePortId, x._isolateId);
1108 throw H.wrapException("Illegal underlying port " + H.S(x));
1109 }
1110 },
1111
1112 _JsDeserializer: {"": "_Deserializer;_deserialized",
1113 deserializeSendPort$1: function(list) {
1114 var t1, managerId, isolateId, receivePortId, isolate, receivePort;
1115 t1 = J.getInterceptor$asx(list);
1116 managerId = t1.$index(list, 1);
1117 isolateId = t1.$index(list, 2);
1118 receivePortId = t1.$index(list, 3);
1119 if (J.$eq(managerId, $globalState.currentManagerId)) {
1120 t1 = $globalState.isolates;
1121 isolate = t1.$index(t1, isolateId);
1122 if (isolate == null)
1123 return;
1124 receivePort = isolate.lookup$1(receivePortId);
1125 if (receivePort == null)
1126 return;
1127 return new H._NativeJsSendPort(receivePort, isolateId);
1128 } else
1129 return new H._WorkerSendPort(managerId, receivePortId, isolateId);
1130 }
1131 },
1132
1133 _JsVisitedMap: {"": "Object;tagged",
1134 $index: function(_, object) {
1135 return object.__MessageTraverser__attached_info__;
1136 },
1137 $indexSet: function(_, object, info) {
1138 this.tagged.push(object);
1139 object.__MessageTraverser__attached_info__ = info;
1140 },
1141 reset$0: function(_) {
1142 this.tagged = P.List_List(null, null);
1143 },
1144 cleanup$0: function() {
1145 var $length, i, t1;
1146 for ($length = this.tagged.length, i = 0; i < $length; ++i) {
1147 t1 = this.tagged;
1148 if (i >= t1.length)
1149 throw H.ioore(t1, i);
1150 t1[i].__MessageTraverser__attached_info__ = null;
1151 }
1152 this.tagged = null;
1153 }
1154 },
1155
1156 _MessageTraverserVisitedMap: {"": "Object;",
1157 $index: function(_, object) {
1158 return;
1159 },
1160 $indexSet: function(_, object, info) {
1161 },
1162 reset$0: function(_) {
1163 },
1164 cleanup$0: function() {
1165 }
1166 },
1167
1168 _MessageTraverser: {"": "Object;",
1169 traverse$1: function(x) {
1170 var result, t1;
1171 if (H._MessageTraverser_isPrimitive(x))
1172 return this.visitPrimitive$1(x);
1173 t1 = this._visited;
1174 t1.reset$0(t1);
1175 result = null;
1176 try {
1177 result = this._dispatch$1(x);
1178 } finally {
1179 this._visited.cleanup$0();
1180 }
1181 return result;
1182 },
1183 _dispatch$1: function(x) {
1184 var t1;
1185 if (x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean")
1186 return this.visitPrimitive$1(x);
1187 t1 = J.getInterceptor(x);
1188 if (typeof x === "object" && x !== null && (x.constructor === Array || !!t1. $isList))
1189 return this.visitList$1(x);
1190 if (typeof x === "object" && x !== null && !!t1.$isMap)
1191 return this.visitMap$1(x);
1192 if (typeof x === "object" && x !== null && !!t1.$isSendPort)
1193 return this.visitSendPort$1(x);
1194 return this.visitObject$1(x);
1195 },
1196 get$_dispatch: function() {
1197 return new H.BoundClosure$1(this, H._MessageTraverser.prototype._dispatch$1, null, "_dispatch$1");
1198 },
1199 visitObject$1: function(x) {
1200 throw H.wrapException("Message serialization: Illegal value " + H.S(x) + " p assed");
1201 }
1202 },
1203
1204 _Copier: {"": "_MessageTraverser;",
1205 visitPrimitive$1: function(x) {
1206 return x;
1207 },
1208 visitList$1: function(list) {
1209 var t1, copy, len, t2, i, t3;
1210 t1 = this._visited;
1211 copy = t1.$index(t1, list);
1212 if (copy != null)
1213 return copy;
1214 t1 = J.getInterceptor$asx(list);
1215 len = t1.get$length(list);
1216 copy = P.List_List(len, null);
1217 t2 = this._visited;
1218 t2.$indexSet(t2, list, copy);
1219 if (typeof len !== "number")
1220 throw H.iae(len);
1221 t2 = copy.length;
1222 i = 0;
1223 for (; i < len; ++i) {
1224 t3 = this._dispatch$1(t1.$index(list, i));
1225 if (i >= t2)
1226 throw H.ioore(copy, i);
1227 copy[i] = t3;
1228 }
1229 return copy;
1230 },
1231 visitMap$1: function(map) {
1232 var t1, t2;
1233 t1 = {};
1234 t2 = this._visited;
1235 t1.copy_0 = t2.$index(t2, map);
1236 t2 = t1.copy_0;
1237 if (t2 != null)
1238 return t2;
1239 t1.copy_0 = P.LinkedHashMap_LinkedHashMap(null, null, null, null, null);
1240 t2 = this._visited;
1241 t2.$indexSet(t2, map, t1.copy_0);
1242 map.forEach$1(map, new H._Copier_visitMap_closure(t1, this));
1243 return t1.copy_0;
1244 }
1245 },
1246
1247 _Copier_visitMap_closure: {"": "Closure;box_0,this_1",
1248 call$2: function(key, val) {
1249 var t1 = this.this_1;
1250 J.$indexSet$ax(this.box_0.copy_0, t1._dispatch$1(key), t1._dispatch$1(val));
1251 },
1252 "+call:2:0": 0,
1253 $isFunction: true,
1254 $is_args2: true
1255 },
1256
1257 _Serializer: {"": "_MessageTraverser;",
1258 visitPrimitive$1: function(x) {
1259 return x;
1260 },
1261 visitList$1: function(list) {
1262 var t1, copyId, id;
1263 t1 = this._visited;
1264 copyId = t1.$index(t1, list);
1265 if (copyId != null)
1266 return ["ref", copyId];
1267 id = this._nextFreeRefId;
1268 this._nextFreeRefId = id + 1;
1269 t1 = this._visited;
1270 t1.$indexSet(t1, list, id);
1271 return ["list", id, this._serializeList$1(list)];
1272 },
1273 visitMap$1: function(map) {
1274 var t1, copyId, id, keys;
1275 t1 = this._visited;
1276 copyId = t1.$index(t1, map);
1277 if (copyId != null)
1278 return ["ref", copyId];
1279 id = this._nextFreeRefId;
1280 this._nextFreeRefId = id + 1;
1281 t1 = this._visited;
1282 t1.$indexSet(t1, map, id);
1283 t1 = map.get$keys();
1284 keys = this._serializeList$1(P.List_List$from(t1, true, H.getRuntimeTypeArgu ment(t1, "IterableBase", 0)));
1285 t1 = map.get$values(map);
1286 return ["map", id, keys, this._serializeList$1(P.List_List$from(t1, true, H. getRuntimeTypeArgument(t1, "IterableBase", 0)))];
1287 },
1288 _serializeList$1: function(list) {
1289 var t1, len, result, t2, i, t3;
1290 t1 = J.getInterceptor$asx(list);
1291 len = t1.get$length(list);
1292 result = P.List_List(len, null);
1293 if (typeof len !== "number")
1294 throw H.iae(len);
1295 t2 = result.length;
1296 i = 0;
1297 for (; i < len; ++i) {
1298 t3 = this._dispatch$1(t1.$index(list, i));
1299 if (i >= t2)
1300 throw H.ioore(result, i);
1301 result[i] = t3;
1302 }
1303 return result;
1304 }
1305 },
1306
1307 _Deserializer: {"": "Object;",
1308 deserialize$1: function(x) {
1309 if (H._Deserializer_isPrimitive(x))
1310 return x;
1311 this._deserialized = P.HashMap_HashMap(null, null, null, null, null);
1312 return this._deserializeHelper$1(x);
1313 },
1314 _deserializeHelper$1: function(x) {
1315 var t1, id;
1316 if (x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean")
1317 return x;
1318 t1 = J.getInterceptor$asx(x);
1319 switch (t1.$index(x, 0)) {
1320 case "ref":
1321 id = t1.$index(x, 1);
1322 t1 = this._deserialized;
1323 return t1.$index(t1, id);
1324 case "list":
1325 return this._deserializeList$1(x);
1326 case "map":
1327 return this._deserializeMap$1(x);
1328 case "sendport":
1329 return this.deserializeSendPort$1(x);
1330 default:
1331 return this.deserializeObject$1(x);
1332 }
1333 },
1334 _deserializeList$1: function(x) {
1335 var t1, id, dartList, len, i;
1336 t1 = J.getInterceptor$asx(x);
1337 id = t1.$index(x, 1);
1338 dartList = t1.$index(x, 2);
1339 t1 = this._deserialized;
1340 t1.$indexSet(t1, id, dartList);
1341 t1 = J.getInterceptor$asx(dartList);
1342 len = t1.get$length(dartList);
1343 if (typeof len !== "number")
1344 throw H.iae(len);
1345 i = 0;
1346 for (; i < len; ++i)
1347 t1.$indexSet(dartList, i, this._deserializeHelper$1(t1.$index(dartList, i) ));
1348 return dartList;
1349 },
1350 _deserializeMap$1: function(x) {
1351 var result, t1, id, t2, keys, values, len, i;
1352 result = P.LinkedHashMap_LinkedHashMap(null, null, null, null, null);
1353 t1 = J.getInterceptor$asx(x);
1354 id = t1.$index(x, 1);
1355 t2 = this._deserialized;
1356 t2.$indexSet(t2, id, result);
1357 keys = t1.$index(x, 2);
1358 values = t1.$index(x, 3);
1359 t1 = J.getInterceptor$asx(keys);
1360 len = t1.get$length(keys);
1361 if (typeof len !== "number")
1362 throw H.iae(len);
1363 t2 = J.getInterceptor$asx(values);
1364 i = 0;
1365 for (; i < len; ++i)
1366 result.$indexSet(result, this._deserializeHelper$1(t1.$index(keys, i)), th is._deserializeHelper$1(t2.$index(values, i)));
1367 return result;
1368 },
1369 deserializeObject$1: function(x) {
1370 throw H.wrapException("Unexpected serialized object");
1371 }
1372 },
1373
1374 TimerImpl: {"": "Object;_once,_inEventLoop,_handle",
1375 TimerImpl$2: function(milliseconds, callback) {
1376 var t1, t2;
1377 if (milliseconds === 0)
1378 t1 = $.get$globalThis().setTimeout == null || $globalState.isWorker === tr ue;
1379 else
1380 t1 = false;
1381 if (t1) {
1382 this._handle = 1;
1383 t1 = $globalState.topEventLoop;
1384 t2 = $globalState.currentContext;
1385 t1.events._add$1(new H._IsolateEvent(t2, new H.TimerImpl_internalCallback( this, callback), "timer"));
1386 this._inEventLoop = true;
1387 } else if ($.get$globalThis().setTimeout != null) {
1388 t1 = $globalState.topEventLoop;
1389 t1.activeTimerCount = t1.activeTimerCount + 1;
1390 this._handle = $.get$globalThis().setTimeout(H.convertDartClosureToJS(new H.TimerImpl_internalCallback0(this, callback), 0), milliseconds);
1391 } else
1392 throw H.wrapException(P.UnsupportedError$("Timer greater than 0."));
1393 },
1394 static: {
1395 TimerImpl$: function(milliseconds, callback) {
1396 var t1 = new H.TimerImpl(true, false, null);
1397 t1.TimerImpl$2(milliseconds, callback);
1398 return t1;
1399 }}
1400
1401 },
1402
1403 TimerImpl_internalCallback: {"": "Closure;this_0,callback_1",
1404 call$0: function() {
1405 this.this_0._handle = null;
1406 this.callback_1.call$0();
1407 },
1408 "+call:0:0": 0,
1409 $isFunction: true
1410 },
1411
1412 TimerImpl_internalCallback0: {"": "Closure;this_2,callback_3",
1413 call$0: function() {
1414 this.this_2._handle = null;
1415 var t1 = $globalState.topEventLoop;
1416 t1.activeTimerCount = t1.activeTimerCount - 1;
1417 this.callback_3.call$0();
1418 },
1419 "+call:0:0": 0,
1420 $isFunction: true
1421 }}],
1422 ["_js_helper", "dart:_js_helper", , H, {
1423 isJsIndexable: function(object, record) {
1424 var result, t1;
1425 if (record != null) {
1426 result = record.x;
1427 if (result != null)
1428 return result;
1429 }
1430 t1 = J.getInterceptor(object);
1431 return typeof object === "object" && object !== null && !!t1.$isJavaScriptInde xingBehavior;
1432 },
1433
1434 S: function(value) {
1435 var res;
1436 if (typeof value === "string")
1437 return value;
1438 if (typeof value === "number") {
1439 if (value !== 0)
1440 return "" + value;
1441 } else if (true === value)
1442 return "true";
1443 else if (false === value)
1444 return "false";
1445 else if (value == null)
1446 return "null";
1447 res = J.toString$0(value);
1448 if (typeof res !== "string")
1449 throw H.wrapException(P.ArgumentError$(value));
1450 return res;
1451 },
1452
1453 Primitives_initializeStatics: function(id) {
1454 $.Primitives_mirrorFunctionCacheName = $.Primitives_mirrorFunctionCacheName + ("_" + H.S(id));
1455 $.Primitives_mirrorInvokeCacheName = $.Primitives_mirrorInvokeCacheName + ("_" + H.S(id));
1456 },
1457
1458 Primitives_objectHashCode: function(object) {
1459 var hash = object.$identityHash;
1460 if (hash == null) {
1461 hash = Math.random() * 0x3fffffff | 0;
1462 object.$identityHash = hash;
1463 }
1464 return hash;
1465 },
1466
1467 Primitives__throwFormatException: function(string) {
1468 throw H.wrapException(P.FormatException$(string));
1469 },
1470
1471 Primitives_parseInt: function(source, radix, handleError) {
1472 var match, t1;
1473 handleError = H.Primitives__throwFormatException$closure;
1474 if (typeof source !== "string")
1475 H.throwExpression(new P.ArgumentError(source));
1476 match = /^\s*[+-]?((0x[a-f0-9]+)|(\d+)|([a-z0-9]+))\s*$/i.exec(source);
1477 if (match != null) {
1478 t1 = match.length;
1479 if (2 >= t1)
1480 throw H.ioore(match, 2);
1481 if (match[2] != null)
1482 return parseInt(source, 16);
1483 if (3 >= t1)
1484 throw H.ioore(match, 3);
1485 if (match[3] != null)
1486 return parseInt(source, 10);
1487 return handleError.call$1(source);
1488 }
1489 if (match == null)
1490 return handleError.call$1(source);
1491 return parseInt(source, 10);
1492 },
1493
1494 Primitives_objectTypeName: function(object) {
1495 var $name, decompiled, t1;
1496 $name = C.JS_CONST_86y(J.getInterceptor(object));
1497 if ($name === "Object") {
1498 decompiled = String(object.constructor).match(/^\s*function\s*(\S*)\s*\(/)[1 ];
1499 if (typeof decompiled === "string")
1500 $name = decompiled;
1501 }
1502 t1 = J.getInterceptor$s($name);
1503 if (t1.codeUnitAt$1($name, 0) === 36)
1504 $name = t1.substring$1($name, 1);
1505 t1 = H.getRuntimeTypeInfo(object);
1506 return H.S($name) + H.joinArguments(t1, 0, null);
1507 },
1508
1509 Primitives_objectToString: function(object) {
1510 return "Instance of '" + H.Primitives_objectTypeName(object) + "'";
1511 },
1512
1513 Primitives_newFixedList: function($length) {
1514 var result = new Array($length);
1515 result.fixed$length = true;
1516 return result;
1517 },
1518
1519 Primitives__fromCharCodeApply: function(array) {
1520 var end, t1, result, i, subarray, t2;
1521 end = array.length;
1522 for (t1 = end <= 500, result = "", i = 0; i < end; i += 500) {
1523 if (t1)
1524 subarray = array;
1525 else {
1526 t2 = i + 500;
1527 t2 = t2 < end ? t2 : end;
1528 subarray = array.slice(i, t2);
1529 }
1530 result += String.fromCharCode.apply(null, subarray);
1531 }
1532 return result;
1533 },
1534
1535 Primitives_stringFromCodePoints: function(codePoints) {
1536 var a, t1, i;
1537 a = [];
1538 a.$builtinTypeInfo = [J.JSInt];
1539 for (t1 = new H.ListIterator(codePoints, codePoints.length, 0, null); t1.moveN ext$0();) {
1540 i = t1._current;
1541 if (typeof i !== "number" || Math.floor(i) !== i)
1542 throw H.wrapException(new P.ArgumentError(i));
1543 if (i <= 65535)
1544 a.push(i);
1545 else if (i <= 1114111) {
1546 a.push(55296 + (C.JSInt_methods.$shr(i - 65536, 10) & 1023));
1547 a.push(56320 + (i & 1023));
1548 } else
1549 throw H.wrapException(new P.ArgumentError(i));
1550 }
1551 return H.Primitives__fromCharCodeApply(a);
1552 },
1553
1554 Primitives_stringFromCharCodes: function(charCodes) {
1555 var t1, i;
1556 for (t1 = new H.ListIterator(charCodes, charCodes.length, 0, null); t1.moveNex t$0();) {
1557 i = t1._current;
1558 if (typeof i !== "number" || Math.floor(i) !== i)
1559 throw H.wrapException(new P.ArgumentError(i));
1560 if (i < 0)
1561 throw H.wrapException(new P.ArgumentError(i));
1562 if (i > 65535)
1563 return H.Primitives_stringFromCodePoints(charCodes);
1564 }
1565 return H.Primitives__fromCharCodeApply(charCodes);
1566 },
1567
1568 Primitives_lazyAsJsDate: function(receiver) {
1569 if (receiver.date === void 0)
1570 receiver.date = new Date(receiver.millisecondsSinceEpoch);
1571 return receiver.date;
1572 },
1573
1574 Primitives_getYear: function(receiver) {
1575 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCFullYear() + 0 : H.Primitives_lazyAsJsDate(receiver).getFullYear() + 0;
1576 },
1577
1578 Primitives_getMonth: function(receiver) {
1579 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCMonth() + 1 : H.Primitives_lazyAsJsDate(receiver).getMonth() + 1;
1580 },
1581
1582 Primitives_getDay: function(receiver) {
1583 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCDate() + 0 : H.Primitives_lazyAsJsDate(receiver).getDate() + 0;
1584 },
1585
1586 Primitives_getHours: function(receiver) {
1587 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCHours() + 0 : H.Primitives_lazyAsJsDate(receiver).getHours() + 0;
1588 },
1589
1590 Primitives_getMinutes: function(receiver) {
1591 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCMinutes() + 0 : H.Primitives_lazyAsJsDate(receiver).getMinutes() + 0;
1592 },
1593
1594 Primitives_getSeconds: function(receiver) {
1595 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCSeconds() + 0 : H.Primitives_lazyAsJsDate(receiver).getSeconds() + 0;
1596 },
1597
1598 Primitives_getMilliseconds: function(receiver) {
1599 return receiver.isUtc ? H.Primitives_lazyAsJsDate(receiver).getUTCMilliseconds () + 0 : H.Primitives_lazyAsJsDate(receiver).getMilliseconds() + 0;
1600 },
1601
1602 Primitives_getProperty: function(object, key) {
1603 if (object == null || typeof object === "boolean" || typeof object === "number " || typeof object === "string")
1604 throw H.wrapException(new P.ArgumentError(object));
1605 return object[key];
1606 },
1607
1608 Primitives_setProperty: function(object, key, value) {
1609 if (object == null || typeof object === "boolean" || typeof object === "number " || typeof object === "string")
1610 throw H.wrapException(new P.ArgumentError(object));
1611 object[key] = value;
1612 },
1613
1614 Primitives_applyFunction: function($function, positionalArguments, namedArgument s) {
1615 var t1, buffer, $arguments, allNamedArguments, listOfNamedArguments, t2, t3, t 4, selectorName, jsFunction;
1616 t1 = {};
1617 t1.argumentCount_0 = 0;
1618 buffer = P.StringBuffer$("");
1619 $arguments = [];
1620 t1.argumentCount_0 = t1.argumentCount_0 + positionalArguments.length;
1621 C.JSArray_methods.addAll$1($arguments, positionalArguments);
1622 if ("call$catchAll" in $function) {
1623 allNamedArguments = $function.call$catchAll();
1624 if (namedArguments != null && !namedArguments.get$isEmpty(namedArguments))
1625 namedArguments.forEach$1(namedArguments, new H.Primitives_applyFunction_cl osure(allNamedArguments));
1626 listOfNamedArguments = Object.getOwnPropertyNames(allNamedArguments);
1627 t2 = t1.argumentCount_0;
1628 t3 = J.getInterceptor$asx(listOfNamedArguments);
1629 t4 = t3.get$length(listOfNamedArguments);
1630 if (typeof t4 !== "number")
1631 throw H.iae(t4);
1632 t1.argumentCount_0 = t2 + t4;
1633 t3.forEach$1(listOfNamedArguments, new H.Primitives_applyFunction_closure0(b uffer, $arguments, allNamedArguments));
1634 } else if (namedArguments != null && !namedArguments.get$isEmpty(namedArgument s))
1635 namedArguments.forEach$1(namedArguments, new H.Primitives_applyFunction_clos ure1(t1, buffer, $arguments));
1636 selectorName = "call$" + H.S(t1.argumentCount_0) + H.S(buffer);
1637 jsFunction = $function[selectorName];
1638 if (jsFunction == null) {
1639 if (namedArguments == null)
1640 t1 = [];
1641 else {
1642 t1 = namedArguments.get$keys();
1643 t1 = P.List_List$from(t1, true, H.getRuntimeTypeArgument(t1, "IterableBase ", 0));
1644 }
1645 return J.noSuchMethod$1($function, new H.JSInvocationMirror(C.Symbol_call, s electorName, 0, $arguments, t1, null));
1646 }
1647 return jsFunction.apply($function, $arguments);
1648 },
1649
1650 iae: function(argument) {
1651 throw H.wrapException(P.ArgumentError$(argument));
1652 },
1653
1654 ioore: function(receiver, index) {
1655 if (receiver == null)
1656 J.get$length$asx(receiver);
1657 if (typeof index !== "number" || Math.floor(index) !== index)
1658 H.iae(index);
1659 throw H.wrapException(P.RangeError$value(index));
1660 },
1661
1662 wrapException: function(ex) {
1663 var wrapper;
1664 if (ex == null)
1665 ex = new P.NullThrownError();
1666 wrapper = new Error();
1667 wrapper.dartException = ex;
1668 if ("defineProperty" in Object) {
1669 Object.defineProperty(wrapper, "message", { get: H.toStringWrapper$closure.c all$0 });
1670 wrapper.name = "";
1671 } else
1672 wrapper.toString = H.toStringWrapper$closure.call$0;
1673 return wrapper;
1674 },
1675
1676 toStringWrapper: function() {
1677 return J.toString$0(this.dartException);
1678 },
1679
1680 throwExpression: function(ex) {
1681 throw H.wrapException(ex);
1682 },
1683
1684 makeLiteralListConst: function(list) {
1685 list.immutable$list = true;
1686 list.fixed$length = true;
1687 return list;
1688 },
1689
1690 unwrapException: function(ex) {
1691 var t1, message, number, ieErrorCode, t2, t3, t4, nullLiteralCall, t5, t6, t7, t8, t9, match;
1692 t1 = new H.unwrapException_saveStackTrace(ex);
1693 if (ex == null)
1694 return;
1695 if (typeof ex !== "object")
1696 return ex;
1697 if ("dartException" in ex)
1698 return t1.call$1(ex.dartException);
1699 else if (!("message" in ex))
1700 return ex;
1701 message = ex.message;
1702 if ("number" in ex && typeof ex.number == "number") {
1703 number = ex.number;
1704 ieErrorCode = number & 65535;
1705 if ((C.JSInt_methods.$shr(number, 16) & 8191) === 10)
1706 switch (ieErrorCode) {
1707 case 438:
1708 return t1.call$1(H.JsNoSuchMethodError$(H.S(message) + " (Error " + ie ErrorCode + ")", null));
1709 case 445:
1710 case 5007:
1711 t2 = H.S(message) + " (Error " + ieErrorCode + ")";
1712 return t1.call$1(new H.NullError(t2, null));
1713 default:
1714 }
1715 }
1716 if (ex instanceof TypeError) {
1717 t2 = $.get$TypeErrorDecoder_noSuchMethodPattern();
1718 t3 = $.get$TypeErrorDecoder_notClosurePattern();
1719 t4 = $.get$TypeErrorDecoder_nullCallPattern();
1720 nullLiteralCall = $.get$TypeErrorDecoder_nullLiteralCallPattern();
1721 t5 = $.get$TypeErrorDecoder_undefinedCallPattern();
1722 t6 = $.get$TypeErrorDecoder_undefinedLiteralCallPattern();
1723 t7 = $.get$TypeErrorDecoder_nullPropertyPattern();
1724 $.get$TypeErrorDecoder_nullLiteralPropertyPattern();
1725 t8 = $.get$TypeErrorDecoder_undefinedPropertyPattern();
1726 t9 = $.get$TypeErrorDecoder_undefinedLiteralPropertyPattern();
1727 match = t2.matchTypeError$1(message);
1728 if (match != null)
1729 return t1.call$1(H.JsNoSuchMethodError$(message, match));
1730 else {
1731 match = t3.matchTypeError$1(message);
1732 if (match != null) {
1733 match.method = "call";
1734 return t1.call$1(H.JsNoSuchMethodError$(message, match));
1735 } else {
1736 match = t4.matchTypeError$1(message);
1737 if (match == null) {
1738 match = nullLiteralCall.matchTypeError$1(message);
1739 if (match == null) {
1740 match = t5.matchTypeError$1(message);
1741 if (match == null) {
1742 match = t6.matchTypeError$1(message);
1743 if (match == null) {
1744 match = t7.matchTypeError$1(message);
1745 if (match == null) {
1746 match = nullLiteralCall.matchTypeError$1(message);
1747 if (match == null) {
1748 match = t8.matchTypeError$1(message);
1749 if (match == null) {
1750 match = t9.matchTypeError$1(message);
1751 t2 = match != null;
1752 } else
1753 t2 = true;
1754 } else
1755 t2 = true;
1756 } else
1757 t2 = true;
1758 } else
1759 t2 = true;
1760 } else
1761 t2 = true;
1762 } else
1763 t2 = true;
1764 } else
1765 t2 = true;
1766 if (t2) {
1767 t2 = match == null ? null : match.method;
1768 return t1.call$1(new H.NullError(message, t2));
1769 }
1770 }
1771 }
1772 t2 = typeof message === "string" ? message : "";
1773 return t1.call$1(new H.UnknownJsTypeError(t2));
1774 }
1775 if (ex instanceof RangeError) {
1776 if (typeof message === "string" && message.indexOf("call stack") !== -1)
1777 return new P.StackOverflowError();
1778 return t1.call$1(new P.ArgumentError(null));
1779 }
1780 if (typeof InternalError == "function" && ex instanceof InternalError)
1781 if (typeof message === "string" && message === "too much recursion")
1782 return new P.StackOverflowError();
1783 return ex;
1784 },
1785
1786 objectHashCode: function(object) {
1787 if (object == null || typeof object != 'object')
1788 return J.get$hashCode$(object);
1789 else
1790 return H.Primitives_objectHashCode(object);
1791 },
1792
1793 fillLiteralMap: function(keyValuePairs, result) {
1794 var $length, index, index0, index1;
1795 $length = keyValuePairs.length;
1796 for (index = 0; index < $length; index = index1) {
1797 index0 = index + 1;
1798 index1 = index0 + 1;
1799 result.$indexSet(result, keyValuePairs[index], keyValuePairs[index0]);
1800 }
1801 return result;
1802 },
1803
1804 invokeClosure: function(closure, isolate, numberOfArguments, arg1, arg2, arg3, a rg4) {
1805 var t1 = J.getInterceptor(numberOfArguments);
1806 if (t1.$eq(numberOfArguments, 0))
1807 return H._callInIsolate(isolate, new H.invokeClosure_closure(closure));
1808 else if (t1.$eq(numberOfArguments, 1))
1809 return H._callInIsolate(isolate, new H.invokeClosure_closure0(closure, arg1) );
1810 else if (t1.$eq(numberOfArguments, 2))
1811 return H._callInIsolate(isolate, new H.invokeClosure_closure1(closure, arg1, arg2));
1812 else if (t1.$eq(numberOfArguments, 3))
1813 return H._callInIsolate(isolate, new H.invokeClosure_closure2(closure, arg1, arg2, arg3));
1814 else if (t1.$eq(numberOfArguments, 4))
1815 return H._callInIsolate(isolate, new H.invokeClosure_closure3(closure, arg1, arg2, arg3, arg4));
1816 else
1817 throw H.wrapException(P.Exception_Exception("Unsupported number of arguments for wrapped closure"));
1818 },
1819
1820 convertDartClosureToJS: function(closure, arity) {
1821 var $function;
1822 if (closure == null)
1823 return;
1824 $function = closure.$identity;
1825 if (!!$function)
1826 return $function;
1827 $function = (function(closure, arity, context, invoke) { return function(a1, a2, a3, a4) { return invoke(closure, context, arity, a1, a2, a3, a4); };})( closure,arity,$globalState.currentContext,H.invokeClosure$closure.call$7);
1828 closure.$identity = $function;
1829 return $function;
1830 },
1831
1832 throwCyclicInit: function(staticName) {
1833 throw H.wrapException(P.CyclicInitializationError$("Cyclic initialization for static " + H.S(staticName)));
1834 },
1835
1836 createRuntimeType: function($name) {
1837 return new H.TypeImpl($name, null);
1838 },
1839
1840 setRuntimeTypeInfo: function(target, typeInfo) {
1841 if (target != null)
1842 target.$builtinTypeInfo = typeInfo;
1843 return target;
1844 },
1845
1846 getRuntimeTypeInfo: function(target) {
1847 if (target == null)
1848 return;
1849 return target.$builtinTypeInfo;
1850 },
1851
1852 getRuntimeTypeArguments: function(target, substitutionName) {
1853 return H.substitute(target["$as" + H.S(substitutionName)], H.getRuntimeTypeInf o(target));
1854 },
1855
1856 getRuntimeTypeArgument: function(target, substitutionName, index) {
1857 var $arguments = H.getRuntimeTypeArguments(target, substitutionName);
1858 return $arguments == null ? null : $arguments[index];
1859 },
1860
1861 getRuntimeTypeAsString: function(runtimeType, onTypeVariable) {
1862 return runtimeType[0].builtin$cls + H.joinArguments(runtimeType, 1, onTypeVari able);
1863 },
1864
1865 runtimeTypeToString: function(type, onTypeVariable) {
1866 if (type == null)
1867 return "dynamic";
1868 else if (typeof type === "object" && type !== null && type.constructor === Arr ay)
1869 return H.getRuntimeTypeAsString(type, onTypeVariable);
1870 else if (typeof type == "function")
1871 return type.builtin$cls;
1872 else if (typeof type === "number" && Math.floor(type) === type)
1873 return C.JSInt_methods.toString$0(type);
1874 else
1875 return;
1876 },
1877
1878 joinArguments: function(types, startIndex, onTypeVariable) {
1879 var buffer, index, firstArgument, allDynamic, argument, str;
1880 if (types == null)
1881 return "";
1882 buffer = P.StringBuffer$("");
1883 for (index = startIndex, firstArgument = true, allDynamic = true; index < type s.length; ++index) {
1884 if (firstArgument)
1885 firstArgument = false;
1886 else
1887 buffer._contents = buffer._contents + ", ";
1888 argument = types[index];
1889 if (argument != null)
1890 allDynamic = false;
1891 str = H.runtimeTypeToString(argument, onTypeVariable);
1892 str = typeof str === "string" ? str : H.S(str);
1893 buffer._contents = buffer._contents + str;
1894 }
1895 return allDynamic ? "" : "<" + H.S(buffer) + ">";
1896 },
1897
1898 substitute: function(substitution, $arguments) {
1899 if (typeof substitution === "object" && substitution !== null && substitution. constructor === Array)
1900 $arguments = substitution;
1901 else if (typeof substitution == "function") {
1902 substitution = H.invokeOn(substitution, null, $arguments);
1903 if (typeof substitution === "object" && substitution !== null && substitutio n.constructor === Array)
1904 $arguments = substitution;
1905 else if (typeof substitution == "function")
1906 $arguments = H.invokeOn(substitution, null, $arguments);
1907 }
1908 return $arguments;
1909 },
1910
1911 computeSignature: function(signature, context, contextName) {
1912 return H.invokeOn(signature, context, H.getRuntimeTypeArguments(context, conte xtName));
1913 },
1914
1915 invokeOn: function($function, receiver, $arguments) {
1916 return $function.apply(receiver, $arguments);
1917 },
1918
1919 toStringForNativeObject: function(obj) {
1920 var t1 = $.getTagFunction;
1921 return "Instance of " + (t1 == null ? "<Unknown>" : t1.call$1(obj));
1922 },
1923
1924 hashCodeForNativeObject: function(object) {
1925 return H.Primitives_objectHashCode(object);
1926 },
1927
1928 defineProperty: function(obj, property, value) {
1929 Object.defineProperty(obj, property, {value: value, enumerable: false, writabl e: true, configurable: true});
1930 },
1931
1932 lookupAndCacheInterceptor: function(obj) {
1933 var tag, record, interceptor, interceptorClass, mark, t1;
1934 tag = $.getTagFunction.call$1(obj);
1935 record = $.dispatchRecordsForInstanceTags[tag];
1936 if (record != null) {
1937 Object.defineProperty(obj, init.dispatchPropertyName, {value: record, enumer able: false, writable: true, configurable: true});
1938 return record.i;
1939 }
1940 interceptor = $.interceptorsForUncacheableTags[tag];
1941 if (interceptor != null)
1942 return interceptor;
1943 interceptorClass = init.interceptorsByTag[tag];
1944 if (interceptorClass == null) {
1945 tag = $.alternateTagFunction.call$2(obj, tag);
1946 if (tag != null) {
1947 record = $.dispatchRecordsForInstanceTags[tag];
1948 if (record != null) {
1949 Object.defineProperty(obj, init.dispatchPropertyName, {value: record, en umerable: false, writable: true, configurable: true});
1950 return record.i;
1951 }
1952 interceptor = $.interceptorsForUncacheableTags[tag];
1953 if (interceptor != null)
1954 return interceptor;
1955 interceptorClass = init.interceptorsByTag[tag];
1956 }
1957 }
1958 if (interceptorClass == null)
1959 return;
1960 interceptor = interceptorClass.prototype;
1961 mark = tag[0];
1962 if (mark === "!") {
1963 record = H.makeLeafDispatchRecord(interceptor);
1964 $.dispatchRecordsForInstanceTags[tag] = record;
1965 Object.defineProperty(obj, init.dispatchPropertyName, {value: record, enumer able: false, writable: true, configurable: true});
1966 return record.i;
1967 }
1968 if (mark === "~") {
1969 $.interceptorsForUncacheableTags[tag] = interceptor;
1970 return interceptor;
1971 }
1972 if (mark === "-") {
1973 t1 = H.makeLeafDispatchRecord(interceptor);
1974 Object.defineProperty(Object.getPrototypeOf(obj), init.dispatchPropertyName, {value: t1, enumerable: false, writable: true, configurable: true});
1975 return t1.i;
1976 }
1977 if (mark === "+")
1978 return H.patchInteriorProto(obj, interceptor);
1979 if (mark === "*")
1980 throw H.wrapException(P.UnimplementedError$(tag));
1981 if (init.leafTags[tag] === true) {
1982 t1 = H.makeLeafDispatchRecord(interceptor);
1983 Object.defineProperty(Object.getPrototypeOf(obj), init.dispatchPropertyName, {value: t1, enumerable: false, writable: true, configurable: true});
1984 return t1.i;
1985 } else
1986 return H.patchInteriorProto(obj, interceptor);
1987 },
1988
1989 patchInteriorProto: function(obj, interceptor) {
1990 var proto, record;
1991 proto = Object.getPrototypeOf(obj);
1992 record = J.makeDispatchRecord(interceptor, proto, null, null);
1993 Object.defineProperty(proto, init.dispatchPropertyName, {value: record, enumer able: false, writable: true, configurable: true});
1994 return interceptor;
1995 },
1996
1997 makeLeafDispatchRecord: function(interceptor) {
1998 return J.makeDispatchRecord(interceptor, false, null, !!interceptor.$isJavaScr iptIndexingBehavior);
1999 },
2000
2001 makeDefaultDispatchRecord: function(tag, interceptorClass, proto) {
2002 var interceptor = interceptorClass.prototype;
2003 if (init.leafTags[tag] === true)
2004 return J.makeDispatchRecord(interceptor, false, null, !!interceptor.$isJavaS criptIndexingBehavior);
2005 else
2006 return J.makeDispatchRecord(interceptor, proto, null, null);
2007 },
2008
2009 initNativeDispatch: function() {
2010 if (true === $.initNativeDispatchFlag)
2011 return;
2012 $.initNativeDispatchFlag = true;
2013 H.initNativeDispatchContinue();
2014 },
2015
2016 initNativeDispatchContinue: function() {
2017 var map, tags, i, tag, proto, record, interceptorClass;
2018 $.dispatchRecordsForInstanceTags = Object.create(null);
2019 $.interceptorsForUncacheableTags = Object.create(null);
2020 H.initHooks();
2021 map = init.interceptorsByTag;
2022 tags = Object.getOwnPropertyNames(map);
2023 if (typeof window != "undefined") {
2024 window;
2025 for (i = 0; i < tags.length; ++i) {
2026 tag = tags[i];
2027 proto = $.prototypeForTagFunction.call$1(tag);
2028 if (proto != null) {
2029 record = H.makeDefaultDispatchRecord(tag, map[tag], proto);
2030 if (record != null)
2031 Object.defineProperty(proto, init.dispatchPropertyName, {value: record , enumerable: false, writable: true, configurable: true});
2032 }
2033 }
2034 }
2035 for (i = 0; i < tags.length; ++i) {
2036 tag = tags[i];
2037 if (/^[A-Za-z_]/.test(tag)) {
2038 interceptorClass = map[tag];
2039 map["!" + tag] = interceptorClass;
2040 map["~" + tag] = interceptorClass;
2041 map["-" + tag] = interceptorClass;
2042 map["+" + tag] = interceptorClass;
2043 map["*" + tag] = interceptorClass;
2044 }
2045 }
2046 },
2047
2048 initHooks: function() {
2049 var hooks, transformers, i, transformer, getTag, getUnknownTag, prototypeForTa g;
2050 hooks = C.JS_CONST_TtD();
2051 hooks = H.applyHooksTransformer(C.JS_CONST_0, H.applyHooksTransformer(C.JS_CON ST_Fs4, H.applyHooksTransformer(C.JS_CONST_Fs4, H.applyHooksTransformer(C.JS_CON ST_rD3, H.applyHooksTransformer(C.JS_CONST_6qb, H.applyHooksTransformer(C.JS_CON ST_Cbr(C.JS_CONST_86y), hooks))))));
2052 if (typeof dartNativeDispatchHooksTransformer != "undefined") {
2053 transformers = dartNativeDispatchHooksTransformer;
2054 if (typeof transformers == "function")
2055 transformers = [transformers];
2056 if (transformers.constructor == Array)
2057 for (i = 0; i < transformers.length; ++i) {
2058 transformer = transformers[i];
2059 if (typeof transformer == "function")
2060 hooks = transformer(hooks) || hooks;
2061 }
2062 }
2063 getTag = hooks.getTag;
2064 getUnknownTag = hooks.getUnknownTag;
2065 prototypeForTag = hooks.prototypeForTag;
2066 $.getTagFunction = new H.initHooks_closure(getTag);
2067 $.alternateTagFunction = new H.initHooks_closure0(getUnknownTag);
2068 $.prototypeForTagFunction = new H.initHooks_closure1(prototypeForTag);
2069 },
2070
2071 applyHooksTransformer: function(transformer, hooks) {
2072 return transformer(hooks) || hooks;
2073 },
2074
2075 JSInvocationMirror: {"": "Object;__js_helper$_memberName,_internalName,_kind,_ar guments,_namedArgumentNames,_namedIndices",
2076 get$memberName: function() {
2077 return this.__js_helper$_memberName;
2078 },
2079 get$positionalArguments: function() {
2080 var t1, argumentCount, list, index;
2081 if (this._kind === 1)
2082 return C.List_empty;
2083 t1 = this._arguments;
2084 argumentCount = t1.length - this._namedArgumentNames.length;
2085 if (argumentCount === 0)
2086 return C.List_empty;
2087 list = [];
2088 for (index = 0; index < argumentCount; ++index) {
2089 if (index >= t1.length)
2090 throw H.ioore(t1, index);
2091 list.push(t1[index]);
2092 }
2093 return H.makeLiteralListConst(list);
2094 },
2095 get$namedArguments: function() {
2096 var t1, namedArgumentCount, t2, namedArgumentsStartIndex, map, i, t3, t4;
2097 if (this._kind !== 0) {
2098 t1 = H.fillLiteralMap([], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null));
2099 H.setRuntimeTypeInfo(t1, [P.Symbol, null]);
2100 return t1;
2101 }
2102 t1 = this._namedArgumentNames;
2103 namedArgumentCount = t1.length;
2104 t2 = this._arguments;
2105 namedArgumentsStartIndex = t2.length - namedArgumentCount;
2106 if (namedArgumentCount === 0) {
2107 t1 = H.fillLiteralMap([], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null));
2108 H.setRuntimeTypeInfo(t1, [P.Symbol, null]);
2109 return t1;
2110 }
2111 map = P.LinkedHashMap_LinkedHashMap(null, null, null, P.Symbol, null);
2112 for (i = 0; i < namedArgumentCount; ++i) {
2113 if (i >= t1.length)
2114 throw H.ioore(t1, i);
2115 t3 = t1[i];
2116 t4 = namedArgumentsStartIndex + i;
2117 if (t4 < 0 || t4 >= t2.length)
2118 throw H.ioore(t2, t4);
2119 map.$indexSet(map, new H.Symbol0(t3), t2[t4]);
2120 }
2121 return map;
2122 },
2123 static: {
2124 "": "JSInvocationMirror_METHOD,JSInvocationMirror_GETTER,JSInvocationMirror_SETT ER",
2125 }
2126
2127 },
2128
2129 Primitives_applyFunction_closure: {"": "Closure;allNamedArguments_1",
2130 call$2: function(key, argument) {
2131 this.allNamedArguments_1[key] = argument;
2132 },
2133 "+call:2:0": 0,
2134 $isFunction: true,
2135 $is_args2: true
2136 },
2137
2138 Primitives_applyFunction_closure0: {"": "Closure;buffer_2,arguments_3,allNamedAr guments_4",
2139 call$1: function($name) {
2140 this.buffer_2.write$1("$" + H.S($name));
2141 this.arguments_3.push(this.allNamedArguments_4[$name]);
2142 },
2143 "+call:1:0": 0,
2144 $isFunction: true,
2145 $is_args1: true
2146 },
2147
2148 Primitives_applyFunction_closure1: {"": "Closure;box_0,buffer_5,arguments_6",
2149 call$2: function($name, argument) {
2150 var t1;
2151 this.buffer_5.write$1("$" + H.S($name));
2152 this.arguments_6.push(argument);
2153 t1 = this.box_0;
2154 t1.argumentCount_0 = t1.argumentCount_0 + 1;
2155 },
2156 "+call:2:0": 0,
2157 $isFunction: true,
2158 $is_args2: true
2159 },
2160
2161 TypeErrorDecoder: {"": "Object;_pattern,_arguments,_argumentsExpr,_expr,_method, _receiver",
2162 matchTypeError$1: function(message) {
2163 var match, result, t1;
2164 match = new RegExp(this._pattern).exec(message);
2165 if (match == null)
2166 return;
2167 result = {};
2168 t1 = this._arguments;
2169 if (t1 !== -1)
2170 result.arguments = match[t1 + 1];
2171 t1 = this._argumentsExpr;
2172 if (t1 !== -1)
2173 result.argumentsExpr = match[t1 + 1];
2174 t1 = this._expr;
2175 if (t1 !== -1)
2176 result.expr = match[t1 + 1];
2177 t1 = this._method;
2178 if (t1 !== -1)
2179 result.method = match[t1 + 1];
2180 t1 = this._receiver;
2181 if (t1 !== -1)
2182 result.receiver = match[t1 + 1];
2183 return result;
2184 },
2185 static: {
2186 "": "TypeErrorDecoder_noSuchMethodPattern,TypeErrorDecoder_notClosurePattern,Typ eErrorDecoder_nullCallPattern,TypeErrorDecoder_nullLiteralCallPattern,TypeErrorD ecoder_undefinedCallPattern,TypeErrorDecoder_undefinedLiteralCallPattern,TypeErr orDecoder_nullPropertyPattern,TypeErrorDecoder_nullLiteralPropertyPattern,TypeEr rorDecoder_undefinedPropertyPattern,TypeErrorDecoder_undefinedLiteralPropertyPat tern",
2187 TypeErrorDecoder_extractPattern: function(message) {
2188 var match, $arguments, argumentsExpr, expr, method, receiver;
2189 message = message.replace(String({}), '$receiver$').replace(new RegExp("[[\\]{ }()*+?.\\\\^$|]", 'g'), '\\$&');
2190 match = message.match(/\\\$[a-zA-Z]+\\\$/g);
2191 if (match == null)
2192 match = [];
2193 $arguments = match.indexOf("\\$arguments\\$");
2194 argumentsExpr = match.indexOf("\\$argumentsExpr\\$");
2195 expr = match.indexOf("\\$expr\\$");
2196 method = match.indexOf("\\$method\\$");
2197 receiver = match.indexOf("\\$receiver\\$");
2198 return new H.TypeErrorDecoder(message.replace('\\$arguments\\$', '((?:x|[^x])* )').replace('\\$argumentsExpr\\$', '((?:x|[^x])*)').replace('\\$expr\\$', '((?:x |[^x])*)').replace('\\$method\\$', '((?:x|[^x])*)').replace('\\$receiver\\$', '( (?:x|[^x])*)'), $arguments, argumentsExpr, expr, method, receiver);
2199 },
2200
2201 TypeErrorDecoder_provokeCallErrorOn: function(expression) {
2202 return function($expr$) {
2203 var $argumentsExpr$ = '$arguments$'
2204 try {
2205 $expr$.$method$($argumentsExpr$);
2206 } catch (e) {
2207 return e.message;
2208 }
2209 }(expression);
2210 },
2211
2212 TypeErrorDecoder_provokeCallErrorOnNull: function() {
2213 return function() {
2214 var $argumentsExpr$ = '$arguments$'
2215 try {
2216 null.$method$($argumentsExpr$);
2217 } catch (e) {
2218 return e.message;
2219 }
2220 }();
2221 },
2222
2223 TypeErrorDecoder_provokeCallErrorOnUndefined: function() {
2224 return function() {
2225 var $argumentsExpr$ = '$arguments$'
2226 try {
2227 (void 0).$method$($argumentsExpr$);
2228 } catch (e) {
2229 return e.message;
2230 }
2231 }();
2232 },
2233
2234 TypeErrorDecoder_provokePropertyErrorOn: function(expression) {
2235 return function($expr$) {
2236 try {
2237 $expr$.$method$;
2238 } catch (e) {
2239 return e.message;
2240 }
2241 }(expression);
2242 },
2243
2244 TypeErrorDecoder_provokePropertyErrorOnNull: function() {
2245 return function() {
2246 try {
2247 null.$method$;
2248 } catch (e) {
2249 return e.message;
2250 }
2251 }();
2252 },
2253
2254 TypeErrorDecoder_provokePropertyErrorOnUndefined: function() {
2255 return function() {
2256 try {
2257 (void 0).$method$;
2258 } catch (e) {
2259 return e.message;
2260 }
2261 }();
2262 }}
2263
2264 },
2265
2266 NullError: {"": "Error;_message,_method",
2267 toString$0: function(_) {
2268 var t1 = this._method;
2269 if (t1 == null)
2270 return "NullError: " + H.S(this._message);
2271 return "NullError: Cannot call \"" + H.S(t1) + "\" on null";
2272 },
2273 $isError: true
2274 },
2275
2276 JsNoSuchMethodError: {"": "Error;_message,_method,_receiver",
2277 toString$0: function(_) {
2278 var t1, t2;
2279 t1 = this._method;
2280 if (t1 == null)
2281 return "NoSuchMethodError: " + H.S(this._message);
2282 t2 = this._receiver;
2283 if (t2 == null)
2284 return "NoSuchMethodError: Cannot call \"" + t1 + "\" (" + H.S(this._messa ge) + ")";
2285 return "NoSuchMethodError: Cannot call \"" + t1 + "\" on \"" + t2 + "\" (" + H.S(this._message) + ")";
2286 },
2287 $isError: true,
2288 static: {
2289 JsNoSuchMethodError$: function(_message, match) {
2290 var t1, t2;
2291 t1 = match == null;
2292 t2 = t1 ? null : match.method;
2293 t1 = t1 ? null : match.receiver;
2294 return new H.JsNoSuchMethodError(_message, t2, t1);
2295 }}
2296
2297 },
2298
2299 UnknownJsTypeError: {"": "Error;_message",
2300 toString$0: function(_) {
2301 var t1 = this._message;
2302 return C.JSString_methods.get$isEmpty(t1) ? "Error" : "Error: " + t1;
2303 }
2304 },
2305
2306 unwrapException_saveStackTrace: {"": "Closure;ex_0",
2307 call$1: function(error) {
2308 var t1 = J.getInterceptor(error);
2309 if (typeof error === "object" && error !== null && !!t1.$isError)
2310 if (error.$thrownJsError == null)
2311 error.$thrownJsError = this.ex_0;
2312 return error;
2313 },
2314 "+call:1:0": 0,
2315 $isFunction: true,
2316 $is_args1: true
2317 },
2318
2319 _StackTrace: {"": "Object;_exception,_trace",
2320 toString$0: function(_) {
2321 var t1, trace;
2322 t1 = this._trace;
2323 if (t1 != null)
2324 return t1;
2325 t1 = this._exception;
2326 trace = typeof t1 === "object" ? t1.stack : null;
2327 t1 = trace == null ? "" : trace;
2328 this._trace = t1;
2329 return t1;
2330 }
2331 },
2332
2333 invokeClosure_closure: {"": "Closure;closure_0",
2334 call$0: function() {
2335 return this.closure_0.call$0();
2336 },
2337 "+call:0:0": 0,
2338 $isFunction: true
2339 },
2340
2341 invokeClosure_closure0: {"": "Closure;closure_1,arg1_2",
2342 call$0: function() {
2343 return this.closure_1.call$1(this.arg1_2);
2344 },
2345 "+call:0:0": 0,
2346 $isFunction: true
2347 },
2348
2349 invokeClosure_closure1: {"": "Closure;closure_3,arg1_4,arg2_5",
2350 call$0: function() {
2351 return this.closure_3.call$2(this.arg1_4, this.arg2_5);
2352 },
2353 "+call:0:0": 0,
2354 $isFunction: true
2355 },
2356
2357 invokeClosure_closure2: {"": "Closure;closure_6,arg1_7,arg2_8,arg3_9",
2358 call$0: function() {
2359 return this.closure_6.call$3(this.arg1_7, this.arg2_8, this.arg3_9);
2360 },
2361 "+call:0:0": 0,
2362 $isFunction: true
2363 },
2364
2365 invokeClosure_closure3: {"": "Closure;closure_10,arg1_11,arg2_12,arg3_13,arg4_14 ",
2366 call$0: function() {
2367 return this.closure_10.call$4(this.arg1_11, this.arg2_12, this.arg3_13, this .arg4_14);
2368 },
2369 "+call:0:0": 0,
2370 $isFunction: true
2371 },
2372
2373 Closure: {"": "Object;",
2374 toString$0: function(_) {
2375 return "Closure";
2376 },
2377 $isFunction: true
2378 },
2379
2380 BoundClosure: {"": "Closure;_self,__js_helper$_target,_receiver,__js_helper$_nam e",
2381 $eq: function(_, other) {
2382 var t1;
2383 if (other == null)
2384 return false;
2385 if (this === other)
2386 return true;
2387 t1 = J.getInterceptor(other);
2388 if (typeof other !== "object" || other === null || !t1.$isBoundClosure)
2389 return false;
2390 return this._self === other._self && this.__js_helper$_target === other.__js _helper$_target && this._receiver === other._receiver;
2391 },
2392 get$hashCode: function(_) {
2393 var t1, receiverHashCode;
2394 t1 = this._receiver;
2395 if (t1 == null)
2396 receiverHashCode = H.Primitives_objectHashCode(this._self);
2397 else
2398 receiverHashCode = typeof t1 !== "object" ? J.get$hashCode$(t1) : H.Primit ives_objectHashCode(t1);
2399 return (receiverHashCode ^ H.Primitives_objectHashCode(this.__js_helper$_tar get)) >>> 0;
2400 },
2401 $isBoundClosure: true
2402 },
2403
2404 TypeImpl: {"": "Object;_typeName,_unmangledName",
2405 toString$0: function(_) {
2406 var t1, unmangledName, unmangledName0;
2407 t1 = this._unmangledName;
2408 if (t1 != null)
2409 return t1;
2410 unmangledName = this._typeName;
2411 unmangledName0 = H.unmangleGlobalNameIfPreservedAnyways(unmangledName);
2412 unmangledName = unmangledName0 == null ? unmangledName : unmangledName0;
2413 this._unmangledName = unmangledName;
2414 return unmangledName;
2415 },
2416 get$hashCode: function(_) {
2417 return J.get$hashCode$(this._typeName);
2418 },
2419 $eq: function(_, other) {
2420 var t1;
2421 if (other == null)
2422 return false;
2423 t1 = J.getInterceptor(other);
2424 return typeof other === "object" && other !== null && !!t1.$isTypeImpl && J. $eq(this._typeName, other._typeName);
2425 },
2426 $isTypeImpl: true
2427 },
2428
2429 initHooks_closure: {"": "Closure;getTag_0",
2430 call$1: function(o) {
2431 return this.getTag_0(o);
2432 },
2433 "+call:1:0": 0,
2434 $isFunction: true,
2435 $is_args1: true
2436 },
2437
2438 initHooks_closure0: {"": "Closure;getUnknownTag_1",
2439 call$2: function(o, tag) {
2440 return this.getUnknownTag_1(o, tag);
2441 },
2442 "+call:2:0": 0,
2443 $isFunction: true,
2444 $is_args2: true
2445 },
2446
2447 initHooks_closure1: {"": "Closure;prototypeForTag_2",
2448 call$1: function(tag) {
2449 return this.prototypeForTag_2(tag);
2450 },
2451 "+call:1:0": 0,
2452 $isFunction: true,
2453 $is_args1: true
2454 }}],
2455 ["dart._collection.dev", "dart:_collection-dev", , H, {
2456 Arrays_copy: function(src, srcStart, dst, dstStart, count) {
2457 var i, j, t1;
2458 if (srcStart < dstStart)
2459 for (i = srcStart + count - 1, j = dstStart + count - 1; i >= srcStart; --i, --j) {
2460 if (i < 0 || i >= src.length)
2461 throw H.ioore(src, i);
2462 C.JSArray_methods.$indexSet(dst, j, src[i]);
2463 }
2464 else
2465 for (t1 = srcStart + count, j = dstStart, i = srcStart; i < t1; ++i, ++j) {
2466 if (i < 0 || i >= src.length)
2467 throw H.ioore(src, i);
2468 C.JSArray_methods.$indexSet(dst, j, src[i]);
2469 }
2470 },
2471
2472 IterableMixinWorkaround_forEach: function(iterable, f) {
2473 var t1;
2474 for (t1 = new H.ListIterator(iterable, iterable.length, 0, null); t1.moveNext$ 0();)
2475 f.call$1(t1._current);
2476 },
2477
2478 IterableMixinWorkaround_toStringIterable: function(iterable, leftDelimiter, righ tDelimiter) {
2479 var result, i, t1;
2480 for (i = 0; i < $.get$IterableMixinWorkaround__toStringList().length; ++i) {
2481 t1 = $.get$IterableMixinWorkaround__toStringList();
2482 if (i >= t1.length)
2483 throw H.ioore(t1, i);
2484 if (t1[i] === iterable)
2485 return H.S(leftDelimiter) + "..." + H.S(rightDelimiter);
2486 }
2487 result = P.StringBuffer$("");
2488 try {
2489 $.get$IterableMixinWorkaround__toStringList().push(iterable);
2490 result.write$1(leftDelimiter);
2491 result.writeAll$2(iterable, ", ");
2492 result.write$1(rightDelimiter);
2493 } finally {
2494 t1 = $.get$IterableMixinWorkaround__toStringList();
2495 if (0 >= t1.length)
2496 throw H.ioore(t1, 0);
2497 t1.pop();
2498 }
2499 return result.get$_contents();
2500 },
2501
2502 IterableMixinWorkaround__rangeCheck: function(list, start, end) {
2503 if (start < 0 || start > list.length)
2504 throw H.wrapException(P.RangeError$range(start, 0, list.length));
2505 if (end < start || end > list.length)
2506 throw H.wrapException(P.RangeError$range(end, start, list.length));
2507 },
2508
2509 IterableMixinWorkaround_setRangeList: function(list, start, end, from, skipCount ) {
2510 var $length;
2511 H.IterableMixinWorkaround__rangeCheck(list, start, end);
2512 $length = end - start;
2513 if ($length === 0)
2514 return;
2515 if (skipCount < 0)
2516 throw H.wrapException(new P.ArgumentError(skipCount));
2517 if (skipCount + $length > from.length)
2518 throw H.wrapException(P.StateError$("Not enough elements"));
2519 H.Arrays_copy(from, skipCount, list, start, $length);
2520 },
2521
2522 printToConsole: function(line) {
2523 if (typeof dartPrint == "function") {
2524 dartPrint(line);
2525 return;
2526 }
2527 if (typeof console == "object" && typeof console.log == "function") {
2528 console.log(line);
2529 return;
2530 }
2531 if (typeof window == "object")
2532 return;
2533 if (typeof print == "function") {
2534 print(line);
2535 return;
2536 }
2537 throw "Unable to print message: " + String(line);
2538 },
2539
2540 ListIterable: {"": "IterableBase;",
2541 get$iterator: function(_) {
2542 return new H.ListIterator(this, this.get$length(this), 0, null);
2543 },
2544 forEach$1: function(_, action) {
2545 var $length, i;
2546 $length = this.get$length(this);
2547 if (typeof $length !== "number")
2548 throw H.iae($length);
2549 i = 0;
2550 for (; i < $length; ++i) {
2551 action.call$1(this.elementAt$1(this, i));
2552 if ($length !== this.get$length(this))
2553 throw H.wrapException(P.ConcurrentModificationError$(this));
2554 }
2555 },
2556 map$1: function(_, f) {
2557 var t1 = new H.MappedListIterable(this, f);
2558 H.setRuntimeTypeInfo(t1, [null, null]);
2559 return t1;
2560 },
2561 $asIterableBase: null,
2562 $asIterable: null,
2563 $isEfficientLength: true
2564 },
2565
2566 ListIterator: {"": "Object;_iterable,_length,_index,_current",
2567 get$current: function() {
2568 return this._current;
2569 },
2570 moveNext$0: function() {
2571 var t1, t2, $length, t3;
2572 t1 = this._iterable;
2573 t2 = J.getInterceptor$asx(t1);
2574 $length = t2.get$length(t1);
2575 if (!J.$eq(this._length, $length))
2576 throw H.wrapException(P.ConcurrentModificationError$(t1));
2577 t3 = this._index;
2578 if (typeof $length !== "number")
2579 throw H.iae($length);
2580 if (t3 >= $length) {
2581 this._current = null;
2582 return false;
2583 }
2584 this._current = t2.elementAt$1(t1, t3);
2585 this._index = this._index + 1;
2586 return true;
2587 }
2588 },
2589
2590 MappedIterable: {"": "IterableBase;_iterable,_f",
2591 get$iterator: function(_) {
2592 var t1 = this._iterable;
2593 t1 = t1.get$iterator(t1);
2594 t1 = new H.MappedIterator(null, t1, this._f);
2595 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "MappedIterable", 0 ), H.getRuntimeTypeArgument(this, "MappedIterable", 1)]);
2596 return t1;
2597 },
2598 get$length: function(_) {
2599 var t1 = this._iterable;
2600 return t1.get$length(t1);
2601 },
2602 $asIterableBase: function($S, $T) {
2603 return [$T];
2604 },
2605 $asIterable: function($S, $T) {
2606 return [$T];
2607 },
2608 static: {
2609 MappedIterable_MappedIterable: function(iterable, $function, $S, $T) {
2610 var t1;
2611 if (!!iterable.$isEfficientLength) {
2612 t1 = new H.EfficientLengthMappedIterable(iterable, $function);
2613 H.setRuntimeTypeInfo(t1, [$S, $T]);
2614 return t1;
2615 }
2616 t1 = new H.MappedIterable(iterable, $function);
2617 H.setRuntimeTypeInfo(t1, [$S, $T]);
2618 return t1;
2619 }}
2620
2621 },
2622
2623 EfficientLengthMappedIterable: {"": "MappedIterable;_iterable,_f", $asMappedIter able: null,
2624 $asIterable: function($S, $T) {
2625 return [$T];
2626 },
2627 $isEfficientLength: true
2628 },
2629
2630 MappedIterator: {"": "Iterator;_current,_iterator,_f",
2631 _f$1: function(arg0) {
2632 return this._f.call$1(arg0);
2633 },
2634 moveNext$0: function() {
2635 var t1 = this._iterator;
2636 if (t1.moveNext$0()) {
2637 this._current = this._f$1(t1.get$current());
2638 return true;
2639 }
2640 this._current = null;
2641 return false;
2642 },
2643 get$current: function() {
2644 return this._current;
2645 },
2646 $asIterator: function($S, $T) {
2647 return [$T];
2648 }
2649 },
2650
2651 MappedListIterable: {"": "ListIterable;_dev$_source,_f",
2652 _f$1: function(arg0) {
2653 return this._f.call$1(arg0);
2654 },
2655 get$length: function(_) {
2656 return J.get$length$asx(this._dev$_source);
2657 },
2658 elementAt$1: function(_, index) {
2659 return this._f$1(J.elementAt$1$ax(this._dev$_source, index));
2660 },
2661 $asListIterable: function($S, $T) {
2662 return [$T];
2663 },
2664 $asIterable: function($S, $T) {
2665 return [$T];
2666 },
2667 $isEfficientLength: true
2668 },
2669
2670 FixedLengthListMixin: {"": "Object;"},
2671
2672 Symbol0: {"": "Object;_name<",
2673 $eq: function(_, other) {
2674 var t1;
2675 if (other == null)
2676 return false;
2677 t1 = J.getInterceptor(other);
2678 return typeof other === "object" && other !== null && !!t1.$isSymbol0 && J.$ eq(this._name, other._name);
2679 },
2680 get$hashCode: function(_) {
2681 return 536870911 & 664597 * J.get$hashCode$(this._name);
2682 },
2683 toString$0: function(_) {
2684 return "Symbol(\"" + H.S(this._name) + "\")";
2685 },
2686 $isSymbol0: true,
2687 static: {
2688 "": "Symbol_validationPattern",
2689 }
2690
2691 }}],
2692 ["dart._js_names", "dart:_js_names", , H, {
2693 unmangleGlobalNameIfPreservedAnyways: function($name) {
2694 return init.mangledGlobalNames[$name];
2695 }}],
2696 ["dart.async", "dart:async", , P, {
2697 _invokeErrorHandler: function(errorHandler, error, stackTrace) {
2698 var t1 = J.getInterceptor(errorHandler);
2699 if (!!t1.$is_args2)
2700 return errorHandler.call$2(error, stackTrace);
2701 else
2702 return errorHandler.call$1(error);
2703 },
2704
2705 _registerErrorHandler: function(errorHandler, zone) {
2706 var t1 = J.getInterceptor(errorHandler);
2707 zone.toString;
2708 if (!!t1.$is_args2)
2709 return errorHandler;
2710 else
2711 return errorHandler;
2712 },
2713
2714 Future_wait: function(futures) {
2715 var t1, t2, t3, future, pos, t4, t5, result, completer;
2716 t1 = {};
2717 t1.completer_0 = null;
2718 t1.values_1 = null;
2719 t2 = new P.Future_wait_handleError(t1);
2720 t1.remaining_2 = 0;
2721 for (t3 = new H.ListIterator(futures, futures.length, 0, null); t3.moveNext$0( );) {
2722 future = t3._current;
2723 pos = t1.remaining_2;
2724 t1.remaining_2 = pos + 1;
2725 t4 = future.catchError$1(t2);
2726 t5 = $.Zone__current;
2727 t5.toString;
2728 result = new P._Future(0, t5, null, null, new P.Future_wait_closure(t1, pos) , null, P._registerErrorHandler(null, t5), null);
2729 result.$builtinTypeInfo = [null];
2730 t4._addListener$1(result);
2731 }
2732 t2 = t1.remaining_2;
2733 if (t2 === 0)
2734 return P._Future$immediate(C.List_empty, null);
2735 t1.values_1 = P.List_List(t2, null);
2736 t2 = J.JSArray;
2737 completer = new P._AsyncCompleter(P._Future$(t2));
2738 H.setRuntimeTypeInfo(completer, [t2]);
2739 t1.completer_0 = completer;
2740 return t1.completer_0.future;
2741 },
2742
2743 _asyncRunCallback: function() {
2744 var callback, t1, exception, milliseconds;
2745 for (; t1 = $.get$_asyncCallbacks(), t1._head !== t1._tail;) {
2746 callback = $.get$_asyncCallbacks().removeFirst$0();
2747 try {
2748 callback.call$0();
2749 } catch (exception) {
2750 H.unwrapException(exception);
2751 milliseconds = C.JSNumber_methods.$tdiv(C.Duration_0._duration, 1000);
2752 H.TimerImpl$(milliseconds < 0 ? 0 : milliseconds, P._asyncRunCallback$clos ure);
2753 throw exception;
2754 }
2755
2756 }
2757 $._callbacksAreEnqueued = false;
2758 },
2759
2760 _scheduleAsyncCallback: function(callback) {
2761 $.get$_asyncCallbacks()._add$1(callback);
2762 if (!$._callbacksAreEnqueued) {
2763 P._createTimer(C.Duration_0, P._asyncRunCallback$closure);
2764 $._callbacksAreEnqueued = true;
2765 }
2766 },
2767
2768 scheduleMicrotask: function(callback) {
2769 var t1 = $.Zone__current;
2770 if (t1 === C.C__RootZone) {
2771 t1.toString;
2772 P._scheduleAsyncCallback(callback);
2773 return;
2774 }
2775 P._scheduleAsyncCallback(t1.bindCallback$2$runGuarded(callback, true));
2776 },
2777
2778 StreamController_StreamController: function(onCancel, onListen, onPause, onResum e, sync, $T) {
2779 var t1;
2780 if (sync) {
2781 t1 = new P._SyncStreamController(onListen, onPause, onResume, onCancel, null , 0, null);
2782 H.setRuntimeTypeInfo(t1, [$T]);
2783 } else {
2784 t1 = new P._AsyncStreamController(onListen, onPause, onResume, onCancel, nul l, 0, null);
2785 H.setRuntimeTypeInfo(t1, [$T]);
2786 }
2787 return t1;
2788 },
2789
2790 _runGuarded: function(notificationHandler) {
2791 var result, e, s, t1, t2, exception;
2792 if (notificationHandler == null)
2793 return;
2794 try {
2795 result = notificationHandler.call$0();
2796 t1 = result;
2797 t2 = J.getInterceptor(t1);
2798 if (typeof t1 === "object" && t1 !== null && !!t2.$isFuture)
2799 return result;
2800 return;
2801 } catch (exception) {
2802 t1 = H.unwrapException(exception);
2803 e = t1;
2804 s = new H._StackTrace(exception, null);
2805 t1 = $.Zone__current;
2806 t1.toString;
2807 P._rootHandleUncaughtError(t1, null, t1, e, s);
2808 }
2809
2810 },
2811
2812 _nullDataHandler: function(value) {
2813 },
2814
2815 _nullErrorHandler: function(error, stackTrace) {
2816 var t1 = $.Zone__current;
2817 t1.toString;
2818 P._rootHandleUncaughtError(t1, null, t1, error, stackTrace);
2819 },
2820
2821 _nullDoneHandler: function() {
2822 },
2823
2824 _runUserCode: function(userCode, onSuccess, onError) {
2825 var e, s, exception, t1;
2826 try {
2827 onSuccess.call$1(userCode.call$0());
2828 } catch (exception) {
2829 t1 = H.unwrapException(exception);
2830 e = t1;
2831 s = new H._StackTrace(exception, null);
2832 onError.call$2(e, s);
2833 }
2834
2835 },
2836
2837 _cancelAndError: function(subscription, future, error, stackTrace) {
2838 var cancelFuture, t1;
2839 cancelFuture = subscription.cancel$0();
2840 t1 = J.getInterceptor(cancelFuture);
2841 if (typeof cancelFuture === "object" && cancelFuture !== null && !!t1.$isFutur e)
2842 cancelFuture.whenComplete$1(new P._cancelAndError_closure(future, error, sta ckTrace));
2843 else
2844 future._completeError$2(error, stackTrace);
2845 },
2846
2847 _cancelAndErrorClosure: function(subscription, future) {
2848 return new P._cancelAndErrorClosure_closure(subscription, future);
2849 },
2850
2851 Timer_Timer: function(duration, callback) {
2852 var t1 = $.Zone__current;
2853 if (t1 === C.C__RootZone) {
2854 t1.toString;
2855 return P._createTimer(duration, callback);
2856 }
2857 return P._createTimer(duration, t1.bindCallback$2$runGuarded(callback, true));
2858 },
2859
2860 _createTimer: function(duration, callback) {
2861 var milliseconds = C.JSNumber_methods.$tdiv(duration._duration, 1000);
2862 return H.TimerImpl$(milliseconds < 0 ? 0 : milliseconds, callback);
2863 },
2864
2865 _rootHandleUncaughtError: function($self, $parent, zone, error, stackTrace) {
2866 P._rootRun($self, null, $self, new P._rootHandleUncaughtError_closure(error, s tackTrace));
2867 },
2868
2869 _rootRun: function($self, $parent, zone, f) {
2870 var old, t1, t2;
2871 t1 = $.Zone__current;
2872 t2 = zone;
2873 if (t1 == null ? t2 == null : t1 === t2)
2874 return f.call$0();
2875 old = t1;
2876 try {
2877 $.Zone__current = zone;
2878 t1 = f.call$0();
2879 return t1;
2880 } finally {
2881 $.Zone__current = old;
2882 }
2883 },
2884
2885 _rootRunUnary: function($self, $parent, zone, f, arg) {
2886 var old, t1, t2;
2887 t1 = $.Zone__current;
2888 t2 = zone;
2889 if (t1 == null ? t2 == null : t1 === t2)
2890 return f.call$1(arg);
2891 old = t1;
2892 try {
2893 $.Zone__current = zone;
2894 t1 = f.call$1(arg);
2895 return t1;
2896 } finally {
2897 $.Zone__current = old;
2898 }
2899 },
2900
2901 _rootRunBinary: function($self, $parent, zone, f, arg1, arg2) {
2902 var old, t1, t2;
2903 t1 = $.Zone__current;
2904 t2 = zone;
2905 if (t1 == null ? t2 == null : t1 === t2)
2906 return f.call$2(arg1, arg2);
2907 old = t1;
2908 try {
2909 $.Zone__current = zone;
2910 t1 = f.call$2(arg1, arg2);
2911 return t1;
2912 } finally {
2913 $.Zone__current = old;
2914 }
2915 },
2916
2917 _AsyncError: {"": "Object;error>,stackTrace<", $isError: true},
2918
2919 Future: {"": "Object;", $isFuture: true},
2920
2921 Future_wait_handleError: {"": "Closure;box_0",
2922 call$1: function(error) {
2923 var t1 = this.box_0;
2924 if (t1.values_1 != null) {
2925 t1.values_1 = null;
2926 t1.completer_0.completeError$1(error);
2927 }
2928 return;
2929 },
2930 "+call:1:0": 0,
2931 $isFunction: true,
2932 $is_args1: true
2933 },
2934
2935 Future_wait_closure: {"": "Closure;box_0,pos_1",
2936 call$1: function(value) {
2937 var t1, t2, t3;
2938 t1 = this.box_0;
2939 t2 = t1.values_1;
2940 if (t2 == null)
2941 return;
2942 t3 = this.pos_1;
2943 if (t3 < 0 || t3 >= t2.length)
2944 throw H.ioore(t2, t3);
2945 t2[t3] = value;
2946 t1.remaining_2 = t1.remaining_2 - 1;
2947 if (t1.remaining_2 === 0) {
2948 t2 = t1.completer_0;
2949 t1 = t1.values_1;
2950 t2 = t2.future;
2951 if (t2._state !== 0)
2952 H.throwExpression(P.StateError$("Future already completed"));
2953 t2._asyncComplete$1(t1);
2954 }
2955 },
2956 "+call:1:0": 0,
2957 $isFunction: true,
2958 $is_args1: true
2959 },
2960
2961 _Completer: {"": "Object;"},
2962
2963 _AsyncCompleter: {"": "_Completer;future",
2964 complete$1: function(_, value) {
2965 var t1 = this.future;
2966 if (t1._state !== 0)
2967 throw H.wrapException(P.StateError$("Future already completed"));
2968 t1._asyncComplete$1(value);
2969 },
2970 get$complete: function(_receiver) {
2971 return new P.BoundClosure$i1(this, P._AsyncCompleter.prototype.complete$1, _ receiver, "complete$1");
2972 },
2973 completeError$2: function(error, stackTrace) {
2974 var t1;
2975 if (error == null)
2976 throw H.wrapException(new P.ArgumentError("Error must not be null"));
2977 t1 = this.future;
2978 if (t1._state !== 0)
2979 throw H.wrapException(P.StateError$("Future already completed"));
2980 t1._asyncCompleteError$2(error, stackTrace);
2981 },
2982 completeError$1: function(error) {
2983 return this.completeError$2(error, null);
2984 },
2985 $as_Completer: null
2986 },
2987
2988 _Future: {"": "Object;_state,_zone<,_resultOrListeners,_nextListener@,_onValueCa llback,_errorTestCallback,_onErrorCallback,_whenCompleteActionCallback",
2989 get$_isComplete: function() {
2990 return this._state >= 4;
2991 },
2992 get$_hasError: function() {
2993 return this._state === 8;
2994 },
2995 set$_isChained: function(value) {
2996 if (value)
2997 this._state = 2;
2998 else
2999 this._state = 0;
3000 },
3001 get$_onValue: function() {
3002 return this._state === 2 ? null : this._onValueCallback;
3003 },
3004 _onValue$1: function(arg0) {
3005 return this.get$_onValue().call$1(arg0);
3006 },
3007 get$_errorTest: function() {
3008 return this._state === 2 ? null : this._errorTestCallback;
3009 },
3010 get$_onError: function() {
3011 return this._state === 2 ? null : this._onErrorCallback;
3012 },
3013 get$_whenCompleteAction: function() {
3014 return this._state === 2 ? null : this._whenCompleteActionCallback;
3015 },
3016 _whenCompleteAction$0: function() {
3017 return this.get$_whenCompleteAction().call$0();
3018 },
3019 then$2$onError: function(f, onError) {
3020 var result = P._Future$_then(f, onError, null);
3021 this._addListener$1(result);
3022 return result;
3023 },
3024 then$1: function(f) {
3025 return this.then$2$onError(f, null);
3026 },
3027 catchError$2$test: function(onError, test) {
3028 var result = P._Future$_catchError(onError, test, null);
3029 this._addListener$1(result);
3030 return result;
3031 },
3032 catchError$1: function(onError) {
3033 return this.catchError$2$test(onError, null);
3034 },
3035 whenComplete$1: function(action) {
3036 var result = P._Future$_whenComplete(action, H.getRuntimeTypeArgument(this, "_Future", 0));
3037 this._addListener$1(result);
3038 return result;
3039 },
3040 get$_value: function() {
3041 return this._resultOrListeners;
3042 },
3043 get$_error: function() {
3044 return this._resultOrListeners;
3045 },
3046 _setValue$1: function(value) {
3047 this._state = 4;
3048 this._resultOrListeners = value;
3049 },
3050 _setError$2: function(error, stackTrace) {
3051 this._state = 8;
3052 this._resultOrListeners = new P._AsyncError(error, stackTrace);
3053 },
3054 _addListener$1: function(listener) {
3055 if (this._state >= 4) {
3056 this._zone.toString;
3057 P._scheduleAsyncCallback(new P._Future__addListener_closure(this, listener ));
3058 } else {
3059 listener.set$_nextListener(this._resultOrListeners);
3060 this._resultOrListeners = listener;
3061 }
3062 },
3063 _removeListeners$0: function() {
3064 var current, prev, next;
3065 current = this._resultOrListeners;
3066 this._resultOrListeners = null;
3067 for (prev = null; current != null; prev = current, current = next) {
3068 next = current.get$_nextListener();
3069 current.set$_nextListener(prev);
3070 }
3071 return prev;
3072 },
3073 _complete$1: function(value) {
3074 var t1, listeners;
3075 t1 = J.getInterceptor(value);
3076 if (typeof value === "object" && value !== null && !!t1.$isFuture) {
3077 P._Future__chainFutures(value, this);
3078 return;
3079 }
3080 listeners = this._removeListeners$0();
3081 this._setValue$1(value);
3082 P._Future__propagateToListeners(this, listeners);
3083 },
3084 _completeError$2: function(error, stackTrace) {
3085 var listeners = this._removeListeners$0();
3086 this._setError$2(error, stackTrace);
3087 P._Future__propagateToListeners(this, listeners);
3088 },
3089 get$_completeError: function() {
3090 return new P.BoundClosure$2(this, P._Future.prototype._completeError$2, null , "_completeError$2");
3091 },
3092 _asyncComplete$1: function(value) {
3093 var t1, t2;
3094 t1 = J.getInterceptor(value);
3095 t2 = typeof value === "object" && value !== null && !!t1.$isFuture;
3096 if (t2)
3097 ;
3098 if (t2)
3099 t1 = typeof value !== "object" || value === null || !t1.$is_Future || valu e._state < 4;
3100 else
3101 t1 = false;
3102 if (t1) {
3103 this._complete$1(value);
3104 return;
3105 }
3106 if (this._state !== 0)
3107 H.throwExpression(P.StateError$("Future already completed"));
3108 this._state = 1;
3109 this._zone.toString;
3110 P._scheduleAsyncCallback(new P._Future__asyncComplete_closure(this, value));
3111 },
3112 _asyncCompleteError$2: function(error, stackTrace) {
3113 if (this._state !== 0)
3114 H.throwExpression(P.StateError$("Future already completed"));
3115 this._state = 1;
3116 this._zone.toString;
3117 P._scheduleAsyncCallback(new P._Future__asyncCompleteError_closure(this, err or, stackTrace));
3118 },
3119 _async$_Future$immediate$1: function(value, $T) {
3120 this._asyncComplete$1(value);
3121 },
3122 $is_Future: true,
3123 $isFuture: true,
3124 static: {
3125 "": "_Future__INCOMPLETE,_Future__PENDING_COMPLETE,_Future__CHAINED,_Future__VAL UE,_Future__ERROR",
3126 _Future$: function($T) {
3127 var t1 = new P._Future(0, $.Zone__current, null, null, null, null, null, null) ;
3128 H.setRuntimeTypeInfo(t1, [$T]);
3129 return t1;
3130 },
3131
3132 _Future$immediate: function(value, $T) {
3133 var t1 = new P._Future(0, $.Zone__current, null, null, null, null, null, null) ;
3134 H.setRuntimeTypeInfo(t1, [$T]);
3135 t1._async$_Future$immediate$1(value, $T);
3136 return t1;
3137 },
3138
3139 _Future$_then: function(onValueCallback, onErrorCallback, $T) {
3140 var t1 = $.Zone__current;
3141 t1.toString;
3142 t1 = new P._Future(0, t1, null, null, onValueCallback, null, P._registerErrorH andler(onErrorCallback, t1), null);
3143 H.setRuntimeTypeInfo(t1, [$T]);
3144 return t1;
3145 },
3146
3147 _Future$_catchError: function(onErrorCallback, errorTestCallback, $T) {
3148 var t1, t2;
3149 t1 = $.Zone__current;
3150 t2 = P._registerErrorHandler(onErrorCallback, t1);
3151 $.Zone__current.toString;
3152 t2 = new P._Future(0, t1, null, null, null, errorTestCallback, t2, null);
3153 H.setRuntimeTypeInfo(t2, [$T]);
3154 return t2;
3155 },
3156
3157 _Future$_whenComplete: function(whenCompleteActionCallback, $T) {
3158 var t1 = $.Zone__current;
3159 t1.toString;
3160 t1 = new P._Future(0, t1, null, null, null, null, null, whenCompleteActionCall back);
3161 H.setRuntimeTypeInfo(t1, [$T]);
3162 return t1;
3163 },
3164
3165 _Future__chainFutures: function(source, target) {
3166 var t1;
3167 target.set$_isChained(true);
3168 t1 = J.getInterceptor(source);
3169 if (typeof source === "object" && source !== null && !!t1.$is_Future)
3170 if (source._state >= 4)
3171 P._Future__propagateToListeners(source, target);
3172 else
3173 source._addListener$1(target);
3174 else
3175 source.then$2$onError(new P._Future__chainFutures_closure(target), new P._Fu ture__chainFutures_closure0(target));
3176 },
3177
3178 _Future__propagateMultipleListeners: function(source, listeners) {
3179 var listeners0;
3180 do {
3181 listeners0 = listeners.get$_nextListener();
3182 listeners.set$_nextListener(null);
3183 P._Future__propagateToListeners(source, listeners);
3184 if (listeners0 != null) {
3185 listeners = listeners0;
3186 continue;
3187 } else
3188 break;
3189 } while (true);
3190 },
3191
3192 _Future__propagateToListeners: function(source, listeners) {
3193 var t1, t2, hasError, asyncError, t3, t4, t5, chainSource, listeners0;
3194 t1 = {};
3195 t1.source_4 = source;
3196 for (; true;) {
3197 t2 = {};
3198 if (!t1.source_4.get$_isComplete())
3199 return;
3200 hasError = t1.source_4.get$_hasError();
3201 if (hasError && listeners == null) {
3202 asyncError = t1.source_4.get$_error();
3203 t2 = t1.source_4.get$_zone();
3204 t3 = J.get$error$x(asyncError);
3205 t4 = asyncError.get$stackTrace();
3206 t2.toString;
3207 P._rootHandleUncaughtError(t2, null, t2, t3, t4);
3208 return;
3209 }
3210 if (listeners == null)
3211 return;
3212 if (listeners.get$_nextListener() != null) {
3213 P._Future__propagateMultipleListeners(t1.source_4, listeners);
3214 return;
3215 }
3216 if (hasError) {
3217 t3 = t1.source_4.get$_zone();
3218 t4 = listeners.get$_zone();
3219 t3.toString;
3220 t4.toString;
3221 t3 = t4 == null ? t3 != null : t4 !== t3;
3222 } else
3223 t3 = false;
3224 if (t3) {
3225 asyncError = t1.source_4.get$_error();
3226 t2 = t1.source_4.get$_zone();
3227 t3 = J.get$error$x(asyncError);
3228 t4 = asyncError.get$stackTrace();
3229 t2.toString;
3230 P._rootHandleUncaughtError(t2, null, t2, t3, t4);
3231 return;
3232 }
3233 t3 = $.Zone__current;
3234 t4 = listeners.get$_zone();
3235 if (t3 == null ? t4 != null : t3 !== t4) {
3236 t4.toString;
3237 P._rootRun(t4, null, t4, new P._Future__propagateToListeners_closure(t1, l isteners));
3238 return;
3239 }
3240 t2.listenerHasValue_1 = null;
3241 t2.listenerValueOrError_2 = null;
3242 t2.isPropagationAborted_3 = false;
3243 t3 = listeners.get$_zone();
3244 t3.toString;
3245 P._rootRun(t3, null, t3, new P._Future__propagateToListeners_closure0(t1, t2 , hasError, listeners));
3246 if (t2.isPropagationAborted_3)
3247 return;
3248 t3 = t2.listenerHasValue_1 === true;
3249 if (t3) {
3250 t4 = t2.listenerValueOrError_2;
3251 t5 = J.getInterceptor(t4);
3252 t5 = typeof t4 === "object" && t4 !== null && !!t5.$isFuture;
3253 t4 = t5;
3254 } else
3255 t4 = false;
3256 if (t4) {
3257 chainSource = t2.listenerValueOrError_2;
3258 t2 = J.getInterceptor(chainSource);
3259 if (typeof chainSource === "object" && chainSource !== null && !!t2.$is_Fu ture && chainSource._state >= 4) {
3260 listeners.set$_isChained(true);
3261 t1.source_4 = chainSource;
3262 continue;
3263 }
3264 P._Future__chainFutures(chainSource, listeners);
3265 return;
3266 }
3267 if (t3) {
3268 listeners0 = listeners._removeListeners$0();
3269 listeners._setValue$1(t2.listenerValueOrError_2);
3270 } else {
3271 listeners0 = listeners._removeListeners$0();
3272 asyncError = t2.listenerValueOrError_2;
3273 listeners._setError$2(J.get$error$x(asyncError), asyncError.get$stackTrace ());
3274 }
3275 t1.source_4 = listeners;
3276 listeners = listeners0;
3277 }
3278 }}
3279
3280 },
3281
3282 _Future__addListener_closure: {"": "Closure;this_0,listener_1",
3283 call$0: function() {
3284 P._Future__propagateToListeners(this.this_0, this.listener_1);
3285 },
3286 "+call:0:0": 0,
3287 $isFunction: true
3288 },
3289
3290 _Future__chainFutures_closure: {"": "Closure;target_0",
3291 call$1: function(value) {
3292 this.target_0._complete$1(value);
3293 },
3294 "+call:1:0": 0,
3295 $isFunction: true,
3296 $is_args1: true
3297 },
3298
3299 _Future__chainFutures_closure0: {"": "Closure;target_1",
3300 call$2: function(error, stackTrace) {
3301 this.target_1._completeError$2(error, stackTrace);
3302 },
3303 "+call:2:0": 0,
3304 "*call": [0],
3305 call$1: function(error) {
3306 return this.call$2(error, null);
3307 },
3308 "+call:1:0": 0,
3309 $isFunction: true,
3310 $is_args2: true,
3311 $is_args1: true
3312 },
3313
3314 _Future__asyncComplete_closure: {"": "Closure;this_0,value_1",
3315 call$0: function() {
3316 this.this_0._complete$1(this.value_1);
3317 },
3318 "+call:0:0": 0,
3319 $isFunction: true
3320 },
3321
3322 _Future__asyncCompleteError_closure: {"": "Closure;this_0,error_1,stackTrace_2",
3323 call$0: function() {
3324 this.this_0._completeError$2(this.error_1, this.stackTrace_2);
3325 },
3326 "+call:0:0": 0,
3327 $isFunction: true
3328 },
3329
3330 _Future__propagateToListeners_closure: {"": "Closure;box_2,listener_3",
3331 call$0: function() {
3332 P._Future__propagateToListeners(this.box_2.source_4, this.listener_3);
3333 },
3334 "+call:0:0": 0,
3335 $isFunction: true
3336 },
3337
3338 _Future__propagateToListeners_closure0: {"": "Closure;box_2,box_1,hasError_4,lis tener_5",
3339 call$0: function() {
3340 var t1, value, asyncError, test, matchesTest, errorCallback, e, s, t2, t3, t 4, exception;
3341 t1 = {};
3342 try {
3343 t2 = this.box_2;
3344 if (!this.hasError_4) {
3345 value = t2.source_4.get$_value();
3346 t2 = this.listener_5;
3347 t3 = this.box_1;
3348 if (t2.get$_onValue() != null) {
3349 t3.listenerValueOrError_2 = t2._onValue$1(value);
3350 t3.listenerHasValue_1 = true;
3351 } else {
3352 t3.listenerValueOrError_2 = value;
3353 t3.listenerHasValue_1 = true;
3354 }
3355 } else {
3356 asyncError = t2.source_4.get$_error();
3357 t2 = this.listener_5;
3358 test = t2.get$_errorTest();
3359 matchesTest = true;
3360 if (test != null)
3361 matchesTest = test.call$1(J.get$error$x(asyncError));
3362 t3 = matchesTest === true && t2.get$_onError() != null;
3363 t4 = this.box_1;
3364 if (t3) {
3365 errorCallback = t2.get$_onError();
3366 t4.listenerValueOrError_2 = P._invokeErrorHandler(errorCallback, J.get $error$x(asyncError), asyncError.get$stackTrace());
3367 t4.listenerHasValue_1 = true;
3368 } else {
3369 t4.listenerValueOrError_2 = asyncError;
3370 t4.listenerHasValue_1 = false;
3371 }
3372 }
3373 t2 = this.listener_5;
3374 if (t2.get$_whenCompleteAction() != null) {
3375 t1.completeResult_0 = t2._whenCompleteAction$0();
3376 t3 = t1.completeResult_0;
3377 t4 = J.getInterceptor(t3);
3378 if (typeof t3 === "object" && t3 !== null && !!t4.$isFuture) {
3379 t2.set$_isChained(true);
3380 t1.completeResult_0.then$2$onError(new P._Future__propagateToListeners __closure(this.box_2, t2), new P._Future__propagateToListeners__closure0(t1, t2) );
3381 this.box_1.isPropagationAborted_3 = true;
3382 }
3383 }
3384 } catch (exception) {
3385 t1 = H.unwrapException(exception);
3386 e = t1;
3387 s = new H._StackTrace(exception, null);
3388 if (this.hasError_4) {
3389 t1 = J.get$error$x(this.box_2.source_4.get$_error());
3390 t2 = e;
3391 t2 = t1 == null ? t2 == null : t1 === t2;
3392 t1 = t2;
3393 } else
3394 t1 = false;
3395 t2 = this.box_1;
3396 if (t1)
3397 t2.listenerValueOrError_2 = this.box_2.source_4.get$_error();
3398 else
3399 t2.listenerValueOrError_2 = new P._AsyncError(e, s);
3400 this.box_1.listenerHasValue_1 = false;
3401 }
3402
3403 },
3404 "+call:0:0": 0,
3405 $isFunction: true
3406 },
3407
3408 _Future__propagateToListeners__closure: {"": "Closure;box_2,listener_6",
3409 call$1: function(ignored) {
3410 P._Future__propagateToListeners(this.box_2.source_4, this.listener_6);
3411 },
3412 "+call:1:0": 0,
3413 $isFunction: true,
3414 $is_args1: true
3415 },
3416
3417 _Future__propagateToListeners__closure0: {"": "Closure;box_0,listener_7",
3418 call$2: function(error, stackTrace) {
3419 var t1, t2, t3;
3420 t1 = this.box_0;
3421 t2 = t1.completeResult_0;
3422 t3 = J.getInterceptor(t2);
3423 if (typeof t2 !== "object" || t2 === null || !t3.$is_Future) {
3424 t1.completeResult_0 = P._Future$(null);
3425 t1.completeResult_0._setError$2(error, stackTrace);
3426 }
3427 P._Future__propagateToListeners(t1.completeResult_0, this.listener_7);
3428 },
3429 "+call:2:0": 0,
3430 "*call": [0],
3431 call$1: function(error) {
3432 return this.call$2(error, null);
3433 },
3434 "+call:1:0": 0,
3435 $isFunction: true,
3436 $is_args2: true,
3437 $is_args1: true
3438 },
3439
3440 Stream: {"": "Object;",
3441 map$1: function(_, convert) {
3442 var t1 = new P._MapStream(convert, this);
3443 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "Stream", 0), null] );
3444 return t1;
3445 },
3446 forEach$1: function(_, action) {
3447 var t1, future;
3448 t1 = {};
3449 future = P._Future$(null);
3450 t1.subscription_0 = null;
3451 t1.subscription_0 = this.listen$4$cancelOnError$onDone$onError(new P.Stream_ forEach_closure(t1, this, action, future), true, new P.Stream_forEach_closure0(f uture), future.get$_completeError());
3452 return future;
3453 },
3454 get$length: function(_) {
3455 var t1, future;
3456 t1 = {};
3457 future = P._Future$(J.JSInt);
3458 t1.count_0 = 0;
3459 this.listen$4$cancelOnError$onDone$onError(new P.Stream_length_closure(t1), true, new P.Stream_length_closure0(t1, future), future.get$_completeError());
3460 return future;
3461 }
3462 },
3463
3464 Stream_forEach_closure: {"": "Closure;box_0,this_1,action_2,future_3",
3465 call$1: function(element) {
3466 P._runUserCode(new P.Stream_forEach__closure(this.action_2, element), new P. Stream_forEach__closure0(), P._cancelAndErrorClosure(this.box_0.subscription_0, this.future_3));
3467 },
3468 "+call:1:0": 0,
3469 $isFunction: true,
3470 $is_args1: true
3471 },
3472
3473 Stream_forEach__closure: {"": "Closure;action_4,element_5",
3474 call$0: function() {
3475 return this.action_4.call$1(this.element_5);
3476 },
3477 "+call:0:0": 0,
3478 $isFunction: true
3479 },
3480
3481 Stream_forEach__closure0: {"": "Closure;",
3482 call$1: function(_) {
3483 },
3484 "+call:1:0": 0,
3485 $isFunction: true,
3486 $is_args1: true
3487 },
3488
3489 Stream_forEach_closure0: {"": "Closure;future_6",
3490 call$0: function() {
3491 this.future_6._complete$1(null);
3492 },
3493 "+call:0:0": 0,
3494 $isFunction: true
3495 },
3496
3497 Stream_length_closure: {"": "Closure;box_0",
3498 call$1: function(_) {
3499 var t1 = this.box_0;
3500 t1.count_0 = t1.count_0 + 1;
3501 },
3502 "+call:1:0": 0,
3503 $isFunction: true,
3504 $is_args1: true
3505 },
3506
3507 Stream_length_closure0: {"": "Closure;box_0,future_1",
3508 call$0: function() {
3509 this.future_1._complete$1(this.box_0.count_0);
3510 },
3511 "+call:0:0": 0,
3512 $isFunction: true
3513 },
3514
3515 StreamSubscription: {"": "Object;"},
3516
3517 _StreamController: {"": "Object;",
3518 get$_pendingEvents: function() {
3519 if ((this._state & 8) === 0)
3520 return this._varData;
3521 return this._varData.get$varData();
3522 },
3523 _ensurePendingEvents$0: function() {
3524 if ((this._state & 8) === 0) {
3525 if (this._varData == null)
3526 this._varData = new P._StreamImplEvents(null, null, 0);
3527 return this._varData;
3528 }
3529 var t1 = this._varData.get$varData();
3530 return t1;
3531 },
3532 get$_subscription: function() {
3533 if ((this._state & 8) !== 0)
3534 return this._varData.get$varData();
3535 return this._varData;
3536 },
3537 _badEventState$0: function() {
3538 if ((this._state & 4) !== 0)
3539 return new P.StateError("Cannot add event after closing");
3540 return new P.StateError("Cannot add event while adding a stream");
3541 },
3542 _ensureDoneFuture$0: function() {
3543 if (this._doneFuture == null) {
3544 this._doneFuture = P._Future$(null);
3545 if ((this._state & 2) !== 0)
3546 this._doneFuture._complete$1(null);
3547 }
3548 return this._doneFuture;
3549 },
3550 close$0: function(_) {
3551 var t1 = this._state;
3552 if ((t1 & 4) !== 0)
3553 return this._doneFuture;
3554 if (t1 >= 4)
3555 throw H.wrapException(this._badEventState$0());
3556 this._state = (t1 | 4) >>> 0;
3557 this._ensureDoneFuture$0();
3558 t1 = this._state;
3559 if ((t1 & 1) !== 0)
3560 this._sendDone$0();
3561 else if ((t1 & 3) === 0) {
3562 t1 = this._ensurePendingEvents$0();
3563 t1.add$1(t1, C.C__DelayedDone);
3564 }
3565 return this._doneFuture;
3566 },
3567 _async$_add$1: function(value) {
3568 var t1 = this._state;
3569 if ((t1 & 1) !== 0)
3570 this._sendData$1(value);
3571 else if ((t1 & 3) === 0) {
3572 t1 = this._ensurePendingEvents$0();
3573 t1.add$1(t1, new P._DelayedData(value, null));
3574 }
3575 },
3576 _addError$2: function(error, stackTrace) {
3577 var t1 = this._state;
3578 if ((t1 & 1) !== 0)
3579 this._sendError$2(error, stackTrace);
3580 else if ((t1 & 3) === 0) {
3581 t1 = this._ensurePendingEvents$0();
3582 t1.add$1(t1, new P._DelayedError(error, stackTrace, null));
3583 }
3584 },
3585 _subscribe$1: function(cancelOnError) {
3586 var t1, t2, subscription, pendingEvents, addState;
3587 if ((this._state & 3) !== 0)
3588 throw H.wrapException(P.StateError$("Stream has already been listened to." ));
3589 t1 = $.Zone__current;
3590 t2 = cancelOnError ? 1 : 0;
3591 subscription = new P._ControllerSubscription(this, null, null, null, t1, t2, null, null);
3592 H.setRuntimeTypeInfo(subscription, [null]);
3593 pendingEvents = this.get$_pendingEvents();
3594 this._state = (this._state | 1) >>> 0;
3595 if ((this._state & 8) !== 0) {
3596 addState = this._varData;
3597 addState.set$varData(subscription);
3598 addState.resume$0();
3599 } else
3600 this._varData = subscription;
3601 subscription._setPendingEvents$1(pendingEvents);
3602 subscription._guardCallback$1(new P._StreamController__subscribe_closure(thi s));
3603 return subscription;
3604 },
3605 _recordCancel$1: function(subscription) {
3606 var t1, future;
3607 if ((this._state & 8) !== 0)
3608 this._varData.cancel$0();
3609 this._varData = null;
3610 this._state = (this._state & 4294967286 | 2) >>> 0;
3611 t1 = new P._StreamController__recordCancel_complete(this);
3612 future = P._runGuarded(this.get$_onCancel());
3613 if (future != null)
3614 future = future.whenComplete$1(t1);
3615 else
3616 t1.call$0();
3617 return future;
3618 }
3619 },
3620
3621 _StreamController__subscribe_closure: {"": "Closure;this_0",
3622 call$0: function() {
3623 P._runGuarded(this.this_0.get$_onListen());
3624 },
3625 "+call:0:0": 0,
3626 $isFunction: true
3627 },
3628
3629 _StreamController__recordCancel_complete: {"": "Closure;this_0",
3630 call$0: function() {
3631 var t1 = this.this_0._doneFuture;
3632 if (t1 != null && t1._state === 0)
3633 t1._asyncComplete$1(null);
3634 },
3635 "+call:0:0": 0,
3636 $isFunction: true
3637 },
3638
3639 _SyncStreamControllerDispatch: {"": "Object;",
3640 _sendData$1: function(data) {
3641 this.get$_subscription()._async$_add$1(data);
3642 },
3643 _sendError$2: function(error, stackTrace) {
3644 this.get$_subscription()._addError$2(error, stackTrace);
3645 },
3646 _sendDone$0: function() {
3647 this.get$_subscription()._close$0();
3648 }
3649 },
3650
3651 _AsyncStreamControllerDispatch: {"": "Object;",
3652 _sendData$1: function(data) {
3653 this.get$_subscription()._addPending$1(new P._DelayedData(data, null));
3654 },
3655 _sendError$2: function(error, stackTrace) {
3656 this.get$_subscription()._addPending$1(new P._DelayedError(error, stackTrace , null));
3657 },
3658 _sendDone$0: function() {
3659 this.get$_subscription()._addPending$1(C.C__DelayedDone);
3660 }
3661 },
3662
3663 _AsyncStreamController: {"": "_StreamController__AsyncStreamControllerDispatch;_ onListen<,_onPause<,_onResume<,_onCancel<,_varData,_state,_doneFuture"},
3664
3665 _StreamController__AsyncStreamControllerDispatch: {"": "_StreamController+_Async StreamControllerDispatch;"},
3666
3667 _SyncStreamController: {"": "_StreamController__SyncStreamControllerDispatch;_on Listen<,_onPause<,_onResume<,_onCancel<,_varData,_state,_doneFuture"},
3668
3669 _StreamController__SyncStreamControllerDispatch: {"": "_StreamController+_SyncSt reamControllerDispatch;"},
3670
3671 _ControllerStream: {"": "_StreamImpl;_async$_controller",
3672 _createSubscription$1: function(cancelOnError) {
3673 return this._async$_controller._subscribe$1(cancelOnError);
3674 },
3675 get$hashCode: function(_) {
3676 return (H.Primitives_objectHashCode(this._async$_controller) ^ 892482866) >> > 0;
3677 },
3678 $eq: function(_, other) {
3679 var t1;
3680 if (other == null)
3681 return false;
3682 if (this === other)
3683 return true;
3684 t1 = J.getInterceptor(other);
3685 if (typeof other !== "object" || other === null || !t1.$is_ControllerStream)
3686 return false;
3687 return other._async$_controller === this._async$_controller;
3688 },
3689 $is_ControllerStream: true,
3690 $as_StreamImpl: null
3691 },
3692
3693 _ControllerSubscription: {"": "_BufferingStreamSubscription;_async$_controller,_ async$_onData,_onError,_onDone,_zone,_state,_cancelFuture,_pending",
3694 _onCancel$0: function() {
3695 return this._async$_controller._recordCancel$1(this);
3696 },
3697 _onPause$0: function() {
3698 var t1, addState;
3699 t1 = this._async$_controller;
3700 if ((t1._state & 8) !== 0) {
3701 addState = t1._varData;
3702 addState.pause$0(addState);
3703 }
3704 P._runGuarded(t1.get$_onPause());
3705 },
3706 get$_onPause: function() {
3707 return new P.BoundClosure$0(this, P._ControllerSubscription.prototype._onPau se$0, null, "_onPause$0");
3708 },
3709 _onResume$0: function() {
3710 var t1 = this._async$_controller;
3711 if ((t1._state & 8) !== 0)
3712 t1._varData.resume$0();
3713 P._runGuarded(t1.get$_onResume());
3714 },
3715 get$_onResume: function() {
3716 return new P.BoundClosure$0(this, P._ControllerSubscription.prototype._onRes ume$0, null, "_onResume$0");
3717 },
3718 $as_BufferingStreamSubscription: null
3719 },
3720
3721 _EventSink: {"": "Object;"},
3722
3723 _BufferingStreamSubscription: {"": "Object;_async$_onData,_onError<,_onDone,_zon e<,_state,_cancelFuture,_pending",
3724 _setPendingEvents$1: function(pendingEvents) {
3725 if (pendingEvents == null)
3726 return;
3727 this._pending = pendingEvents;
3728 if (!pendingEvents.get$isEmpty(pendingEvents)) {
3729 this._state = (this._state | 64) >>> 0;
3730 this._pending.schedule$1(this);
3731 }
3732 },
3733 onData$1: function(handleData) {
3734 $.Zone__current.toString;
3735 this._async$_onData = handleData;
3736 },
3737 onError$1: function(_, handleError) {
3738 this._onError = P._registerErrorHandler(handleError, $.Zone__current);
3739 },
3740 onDone$1: function(handleDone) {
3741 $.Zone__current.toString;
3742 this._onDone = handleDone;
3743 },
3744 pause$1: function(_, resumeSignal) {
3745 var t1 = this._state;
3746 if ((t1 & 8) !== 0)
3747 return;
3748 this._state = (t1 + 128 | 4) >>> 0;
3749 if (t1 < 128 && this._pending != null)
3750 this._pending.cancelSchedule$0();
3751 if ((t1 & 4) === 0 && (this._state & 32) === 0)
3752 this._guardCallback$1(this.get$_onPause());
3753 },
3754 pause$0: function($receiver) {
3755 return this.pause$1($receiver, null);
3756 },
3757 resume$0: function() {
3758 var t1 = this._state;
3759 if ((t1 & 8) !== 0)
3760 return;
3761 if (t1 >= 128) {
3762 this._state = t1 - 128;
3763 t1 = this._state;
3764 if (t1 < 128) {
3765 if ((t1 & 64) !== 0) {
3766 t1 = this._pending;
3767 t1 = !t1.get$isEmpty(t1);
3768 } else
3769 t1 = false;
3770 if (t1)
3771 this._pending.schedule$1(this);
3772 else {
3773 this._state = (this._state & 4294967291) >>> 0;
3774 if ((this._state & 32) === 0)
3775 this._guardCallback$1(this.get$_onResume());
3776 }
3777 }
3778 }
3779 },
3780 cancel$0: function() {
3781 this._state = (this._state & 4294967279) >>> 0;
3782 if ((this._state & 8) !== 0)
3783 return this._cancelFuture;
3784 this._cancel$0();
3785 return this._cancelFuture;
3786 },
3787 get$_mayResumeInput: function() {
3788 if (this._state < 128) {
3789 var t1 = this._pending;
3790 t1 = t1 == null || t1.get$isEmpty(t1);
3791 } else
3792 t1 = false;
3793 return t1;
3794 },
3795 _cancel$0: function() {
3796 this._state = (this._state | 8) >>> 0;
3797 if ((this._state & 64) !== 0)
3798 this._pending.cancelSchedule$0();
3799 if ((this._state & 32) === 0)
3800 this._pending = null;
3801 this._cancelFuture = this._onCancel$0();
3802 },
3803 _async$_add$1: function(data) {
3804 var t1 = this._state;
3805 if ((t1 & 8) !== 0)
3806 return;
3807 if (t1 < 32)
3808 this._sendData$1(data);
3809 else
3810 this._addPending$1(new P._DelayedData(data, null));
3811 },
3812 _addError$2: function(error, stackTrace) {
3813 var t1 = this._state;
3814 if ((t1 & 8) !== 0)
3815 return;
3816 if (t1 < 32)
3817 this._sendError$2(error, stackTrace);
3818 else
3819 this._addPending$1(new P._DelayedError(error, stackTrace, null));
3820 },
3821 _close$0: function() {
3822 var t1 = this._state;
3823 if ((t1 & 8) !== 0)
3824 return;
3825 this._state = (t1 | 2) >>> 0;
3826 if (this._state < 32)
3827 this._sendDone$0();
3828 else
3829 this._addPending$1(C.C__DelayedDone);
3830 },
3831 _onPause$0: function() {
3832 },
3833 get$_onPause: function() {
3834 return new P.BoundClosure$0(this, P._BufferingStreamSubscription.prototype._ onPause$0, null, "_onPause$0");
3835 },
3836 _onResume$0: function() {
3837 },
3838 get$_onResume: function() {
3839 return new P.BoundClosure$0(this, P._BufferingStreamSubscription.prototype._ onResume$0, null, "_onResume$0");
3840 },
3841 _onCancel$0: function() {
3842 },
3843 _addPending$1: function($event) {
3844 var pending, t1;
3845 pending = this._pending;
3846 if (pending == null) {
3847 pending = new P._StreamImplEvents(null, null, 0);
3848 this._pending = pending;
3849 }
3850 pending.add$1(pending, $event);
3851 t1 = this._state;
3852 if ((t1 & 64) === 0) {
3853 this._state = (t1 | 64) >>> 0;
3854 if (this._state < 128)
3855 this._pending.schedule$1(this);
3856 }
3857 },
3858 _sendData$1: function(data) {
3859 var t1 = this._state;
3860 this._state = (t1 | 32) >>> 0;
3861 this._zone.runUnaryGuarded$2(this._async$_onData, data);
3862 this._state = (this._state & 4294967263) >>> 0;
3863 this._checkState$1((t1 & 4) !== 0);
3864 },
3865 _sendError$2: function(error, stackTrace) {
3866 var t1, t2, t3;
3867 t1 = this._state;
3868 t2 = new P._BufferingStreamSubscription__sendError_sendError(this, error, st ackTrace);
3869 if ((t1 & 1) !== 0) {
3870 this._state = (t1 | 16) >>> 0;
3871 this._cancel$0();
3872 t1 = this._cancelFuture;
3873 t3 = J.getInterceptor(t1);
3874 if (typeof t1 === "object" && t1 !== null && !!t3.$isFuture)
3875 t1.whenComplete$1(t2);
3876 else
3877 t2.call$0();
3878 } else {
3879 t2.call$0();
3880 this._checkState$1((t1 & 4) !== 0);
3881 }
3882 },
3883 _sendDone$0: function() {
3884 var t1, t2, t3;
3885 t1 = new P._BufferingStreamSubscription__sendDone_sendDone(this);
3886 this._cancel$0();
3887 this._state = (this._state | 16) >>> 0;
3888 t2 = this._cancelFuture;
3889 t3 = J.getInterceptor(t2);
3890 if (typeof t2 === "object" && t2 !== null && !!t3.$isFuture)
3891 t2.whenComplete$1(t1);
3892 else
3893 t1.call$0();
3894 },
3895 _guardCallback$1: function(callback) {
3896 var t1 = this._state;
3897 this._state = (t1 | 32) >>> 0;
3898 callback.call$0();
3899 this._state = (this._state & 4294967263) >>> 0;
3900 this._checkState$1((t1 & 4) !== 0);
3901 },
3902 _checkState$1: function(wasInputPaused) {
3903 var t1, isInputPaused;
3904 if ((this._state & 64) !== 0) {
3905 t1 = this._pending;
3906 t1 = t1.get$isEmpty(t1);
3907 } else
3908 t1 = false;
3909 if (t1) {
3910 this._state = (this._state & 4294967231) >>> 0;
3911 if ((this._state & 4) !== 0 && this.get$_mayResumeInput())
3912 this._state = (this._state & 4294967291) >>> 0;
3913 }
3914 for (; true; wasInputPaused = isInputPaused) {
3915 t1 = this._state;
3916 if ((t1 & 8) !== 0) {
3917 this._pending = null;
3918 return;
3919 }
3920 isInputPaused = (t1 & 4) !== 0;
3921 if (wasInputPaused === isInputPaused)
3922 break;
3923 this._state = (t1 ^ 32) >>> 0;
3924 if (isInputPaused)
3925 this._onPause$0();
3926 else
3927 this._onResume$0();
3928 this._state = (this._state & 4294967263) >>> 0;
3929 }
3930 t1 = this._state;
3931 if ((t1 & 64) !== 0 && t1 < 128)
3932 this._pending.schedule$1(this);
3933 },
3934 static: {
3935 "": "_BufferingStreamSubscription__STATE_CANCEL_ON_ERROR,_BufferingStreamSubscri ption__STATE_CLOSED,_BufferingStreamSubscription__STATE_INPUT_PAUSED,_BufferingS treamSubscription__STATE_CANCELED,_BufferingStreamSubscription__STATE_WAIT_FOR_C ANCEL,_BufferingStreamSubscription__STATE_IN_CALLBACK,_BufferingStreamSubscripti on__STATE_HAS_PENDING,_BufferingStreamSubscription__STATE_PAUSE_COUNT,_Buffering StreamSubscription__STATE_PAUSE_COUNT_SHIFT",
3936 }
3937
3938 },
3939
3940 _BufferingStreamSubscription__sendError_sendError: {"": "Closure;this_0,error_1, stackTrace_2",
3941 call$0: function() {
3942 var t1, t2, t3, t4, t5;
3943 t1 = this.this_0;
3944 t2 = t1._state;
3945 if ((t2 & 8) !== 0 && (t2 & 16) === 0)
3946 return;
3947 t1._state = (t2 | 32) >>> 0;
3948 t2 = t1._zone;
3949 t3 = $.Zone__current;
3950 t2.toString;
3951 t3.toString;
3952 if (t3 == null ? t2 != null : t3 !== t2)
3953 P._rootHandleUncaughtError(t3, null, t3, this.error_1, this.stackTrace_2);
3954 else {
3955 t3 = t1._onError;
3956 t4 = J.getInterceptor(t3);
3957 t5 = this.error_1;
3958 if (!!t4.$is_args2)
3959 t2.runBinaryGuarded$3(t3, t5, this.stackTrace_2);
3960 else
3961 t2.runUnaryGuarded$2(t3, t5);
3962 }
3963 t1._state = (t1._state & 4294967263) >>> 0;
3964 },
3965 "+call:0:0": 0,
3966 $isFunction: true
3967 },
3968
3969 _BufferingStreamSubscription__sendDone_sendDone: {"": "Closure;this_0",
3970 call$0: function() {
3971 var t1, t2;
3972 t1 = this.this_0;
3973 t2 = t1._state;
3974 if ((t2 & 16) === 0)
3975 return;
3976 t1._state = (t2 | 42) >>> 0;
3977 t1._zone.runGuarded$1(t1._onDone);
3978 t1._state = (t1._state & 4294967263) >>> 0;
3979 },
3980 "+call:0:0": 0,
3981 $isFunction: true
3982 },
3983
3984 _StreamImpl: {"": "Stream;",
3985 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) {
3986 var subscription = this._createSubscription$1(true === cancelOnError);
3987 subscription.onData$1(onData);
3988 subscription.onError$1(subscription, onError);
3989 subscription.onDone$1(onDone);
3990 return subscription;
3991 },
3992 listen$3$onDone$onError: function(onData, onDone, onError) {
3993 return this.listen$4$cancelOnError$onDone$onError(onData, null, onDone, onEr ror);
3994 },
3995 _createSubscription$1: function(cancelOnError) {
3996 var t1, t2;
3997 t1 = $.Zone__current;
3998 t2 = cancelOnError ? 1 : 0;
3999 return new P._BufferingStreamSubscription(null, null, null, t1, t2, null, nu ll);
4000 },
4001 $asStream: null
4002 },
4003
4004 _DelayedEvent: {"": "Object;next@"},
4005
4006 _DelayedData: {"": "_DelayedEvent;value,next",
4007 perform$1: function(dispatch) {
4008 dispatch._sendData$1(this.value);
4009 }
4010 },
4011
4012 _DelayedError: {"": "_DelayedEvent;error>,stackTrace<,next",
4013 perform$1: function(dispatch) {
4014 dispatch._sendError$2(this.error, this.stackTrace);
4015 }
4016 },
4017
4018 _DelayedDone: {"": "Object;",
4019 perform$1: function(dispatch) {
4020 dispatch._sendDone$0();
4021 },
4022 get$next: function() {
4023 return;
4024 },
4025 set$next: function(_) {
4026 throw H.wrapException(P.StateError$("No events after a done."));
4027 }
4028 },
4029
4030 _PendingEvents: {"": "Object;",
4031 schedule$1: function(dispatch) {
4032 var t1 = this._state;
4033 if (t1 === 1)
4034 return;
4035 if (t1 >= 1) {
4036 this._state = 1;
4037 return;
4038 }
4039 P.scheduleMicrotask(new P._PendingEvents_schedule_closure(this, dispatch));
4040 this._state = 1;
4041 },
4042 cancelSchedule$0: function() {
4043 if (this._state === 1)
4044 this._state = 3;
4045 }
4046 },
4047
4048 _PendingEvents_schedule_closure: {"": "Closure;this_0,dispatch_1",
4049 call$0: function() {
4050 var t1, oldState;
4051 t1 = this.this_0;
4052 oldState = t1._state;
4053 t1._state = 0;
4054 if (oldState === 3)
4055 return;
4056 t1.handleNext$1(this.dispatch_1);
4057 },
4058 "+call:0:0": 0,
4059 $isFunction: true
4060 },
4061
4062 _StreamImplEvents: {"": "_PendingEvents;firstPendingEvent,lastPendingEvent,_stat e",
4063 get$isEmpty: function(_) {
4064 return this.lastPendingEvent == null;
4065 },
4066 add$1: function(_, $event) {
4067 var t1 = this.lastPendingEvent;
4068 if (t1 == null) {
4069 this.lastPendingEvent = $event;
4070 this.firstPendingEvent = $event;
4071 } else {
4072 t1.set$next($event);
4073 this.lastPendingEvent = $event;
4074 }
4075 },
4076 handleNext$1: function(dispatch) {
4077 var $event = this.firstPendingEvent;
4078 this.firstPendingEvent = $event.get$next();
4079 if (this.firstPendingEvent == null)
4080 this.lastPendingEvent = null;
4081 $event.perform$1(dispatch);
4082 }
4083 },
4084
4085 _cancelAndError_closure: {"": "Closure;future_0,error_1,stackTrace_2",
4086 call$0: function() {
4087 return this.future_0._completeError$2(this.error_1, this.stackTrace_2);
4088 },
4089 "+call:0:0": 0,
4090 $isFunction: true
4091 },
4092
4093 _cancelAndErrorClosure_closure: {"": "Closure;subscription_0,future_1",
4094 call$2: function(error, stackTrace) {
4095 return P._cancelAndError(this.subscription_0, this.future_1, error, stackTra ce);
4096 },
4097 "+call:2:0": 0,
4098 $isFunction: true,
4099 $is_args2: true
4100 },
4101
4102 _ForwardingStream: {"": "Stream;",
4103 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) {
4104 var result = P._ForwardingStreamSubscription$(this, true === cancelOnError, H.getRuntimeTypeArgument(this, "_ForwardingStream", 0), H.getRuntimeTypeArgument (this, "_ForwardingStream", 1));
4105 result.onData$1(onData);
4106 result.onError$1(result, onError);
4107 result.onDone$1(onDone);
4108 return result;
4109 },
4110 listen$3$onDone$onError: function(onData, onDone, onError) {
4111 return this.listen$4$cancelOnError$onDone$onError(onData, null, onDone, onEr ror);
4112 },
4113 _handleData$2: function(data, sink) {
4114 sink._async$_add$1(data);
4115 },
4116 $asStream: function($S, $T) {
4117 return [$T];
4118 }
4119 },
4120
4121 _ForwardingStreamSubscription: {"": "_BufferingStreamSubscription;_stream,_subsc ription,_async$_onData,_onError,_onDone,_zone,_state,_cancelFuture,_pending",
4122 _async$_add$1: function(data) {
4123 if ((this._state & 2) !== 0)
4124 return;
4125 P._BufferingStreamSubscription.prototype._async$_add$1.call(this, data);
4126 },
4127 _addError$2: function(error, stackTrace) {
4128 if ((this._state & 2) !== 0)
4129 return;
4130 P._BufferingStreamSubscription.prototype._addError$2.call(this, error, stack Trace);
4131 },
4132 _onPause$0: function() {
4133 var t1 = this._subscription;
4134 if (t1 == null)
4135 return;
4136 t1.pause$0(t1);
4137 },
4138 get$_onPause: function() {
4139 return new P.BoundClosure$0(this, P._ForwardingStreamSubscription.prototype. _onPause$0, null, "_onPause$0");
4140 },
4141 _onResume$0: function() {
4142 var t1 = this._subscription;
4143 if (t1 == null)
4144 return;
4145 t1.resume$0();
4146 },
4147 get$_onResume: function() {
4148 return new P.BoundClosure$0(this, P._ForwardingStreamSubscription.prototype. _onResume$0, null, "_onResume$0");
4149 },
4150 _onCancel$0: function() {
4151 var t1 = this._subscription;
4152 if (t1 != null) {
4153 this._subscription = null;
4154 t1.cancel$0();
4155 }
4156 return;
4157 },
4158 _handleData$1: function(data) {
4159 this._stream._handleData$2(data, this);
4160 },
4161 get$_handleData: function() {
4162 return new H.BoundClosure$1(this, P._ForwardingStreamSubscription.prototype. _handleData$1, null, "_handleData$1");
4163 },
4164 _handleError$2: function(error, stackTrace) {
4165 this._addError$2(error, stackTrace);
4166 },
4167 get$_handleError: function() {
4168 return new P.BoundClosure$20(this, P._ForwardingStreamSubscription.prototype ._handleError$2, null, "_handleError$2");
4169 },
4170 _handleDone$0: function() {
4171 this._close$0();
4172 },
4173 get$_handleDone: function() {
4174 return new P.BoundClosure$0(this, P._ForwardingStreamSubscription.prototype. _handleDone$0, null, "_handleDone$0");
4175 },
4176 _ForwardingStreamSubscription$2: function(_stream, cancelOnError, $S, $T) {
4177 var t1, t2;
4178 t1 = this.get$_handleData();
4179 t2 = this.get$_handleError();
4180 this._subscription = this._stream._source.listen$3$onDone$onError(t1, this.g et$_handleDone(), t2);
4181 },
4182 $as_BufferingStreamSubscription: function($S, $T) {
4183 return [$T];
4184 },
4185 static: {
4186 _ForwardingStreamSubscription$: function(_stream, cancelOnError, $S, $T) {
4187 var t1, t2;
4188 t1 = $.Zone__current;
4189 t2 = cancelOnError ? 1 : 0;
4190 t2 = new P._ForwardingStreamSubscription(_stream, null, null, null, null, t1, t2, null, null);
4191 H.setRuntimeTypeInfo(t2, [$S, $T]);
4192 t2._ForwardingStreamSubscription$2(_stream, cancelOnError, $S, $T);
4193 return t2;
4194 }}
4195
4196 },
4197
4198 _MapStream: {"": "_ForwardingStream;_transform,_source",
4199 _transform$1: function(arg0) {
4200 return this._transform.call$1(arg0);
4201 },
4202 _handleData$2: function(inputEvent, sink) {
4203 var outputEvent, e, s, exception, t1;
4204 outputEvent = null;
4205 try {
4206 outputEvent = this._transform$1(inputEvent);
4207 } catch (exception) {
4208 t1 = H.unwrapException(exception);
4209 e = t1;
4210 s = new H._StackTrace(exception, null);
4211 sink._addError$2(e, s);
4212 return;
4213 }
4214
4215 sink._async$_add$1(outputEvent);
4216 },
4217 $as_ForwardingStream: null
4218 },
4219
4220 _BaseZone: {"": "Object;",
4221 runGuarded$1: function(f) {
4222 var e, s, t1, exception;
4223 try {
4224 t1 = this.run$1(f);
4225 return t1;
4226 } catch (exception) {
4227 t1 = H.unwrapException(exception);
4228 e = t1;
4229 s = new H._StackTrace(exception, null);
4230 return this.handleUncaughtError$2(e, s);
4231 }
4232
4233 },
4234 runUnaryGuarded$2: function(f, arg) {
4235 var e, s, t1, exception;
4236 try {
4237 t1 = this.runUnary$2(f, arg);
4238 return t1;
4239 } catch (exception) {
4240 t1 = H.unwrapException(exception);
4241 e = t1;
4242 s = new H._StackTrace(exception, null);
4243 return this.handleUncaughtError$2(e, s);
4244 }
4245
4246 },
4247 runBinaryGuarded$3: function(f, arg1, arg2) {
4248 var e, s, t1, exception;
4249 try {
4250 t1 = this.runBinary$3(f, arg1, arg2);
4251 return t1;
4252 } catch (exception) {
4253 t1 = H.unwrapException(exception);
4254 e = t1;
4255 s = new H._StackTrace(exception, null);
4256 return this.handleUncaughtError$2(e, s);
4257 }
4258
4259 },
4260 bindCallback$2$runGuarded: function(f, runGuarded) {
4261 var registered = this.registerCallback$1(f);
4262 if (runGuarded)
4263 return new P._BaseZone_bindCallback_closure(this, registered);
4264 else
4265 return new P._BaseZone_bindCallback_closure0(this, registered);
4266 },
4267 bindUnaryCallback$2$runGuarded: function(f, runGuarded) {
4268 var registered = this.registerUnaryCallback$1(f);
4269 if (runGuarded)
4270 return new P._BaseZone_bindUnaryCallback_closure(this, registered);
4271 else
4272 return new P._BaseZone_bindUnaryCallback_closure0(this, registered);
4273 }
4274 },
4275
4276 _BaseZone_bindCallback_closure: {"": "Closure;this_0,registered_1",
4277 call$0: function() {
4278 return this.this_0.runGuarded$1(this.registered_1);
4279 },
4280 "+call:0:0": 0,
4281 $isFunction: true
4282 },
4283
4284 _BaseZone_bindCallback_closure0: {"": "Closure;this_2,registered_3",
4285 call$0: function() {
4286 return this.this_2.run$1(this.registered_3);
4287 },
4288 "+call:0:0": 0,
4289 $isFunction: true
4290 },
4291
4292 _BaseZone_bindUnaryCallback_closure: {"": "Closure;this_0,registered_1",
4293 call$1: function(arg) {
4294 return this.this_0.runUnaryGuarded$2(this.registered_1, arg);
4295 },
4296 "+call:1:0": 0,
4297 $isFunction: true,
4298 $is_args1: true
4299 },
4300
4301 _BaseZone_bindUnaryCallback_closure0: {"": "Closure;this_2,registered_3",
4302 call$1: function(arg) {
4303 return this.this_2.runUnary$2(this.registered_3, arg);
4304 },
4305 "+call:1:0": 0,
4306 $isFunction: true,
4307 $is_args1: true
4308 },
4309
4310 _rootHandleUncaughtError_closure: {"": "Closure;error_0,stackTrace_1",
4311 call$0: function() {
4312 P._scheduleAsyncCallback(new P._rootHandleUncaughtError__closure(this.error_ 0, this.stackTrace_1));
4313 },
4314 "+call:0:0": 0,
4315 $isFunction: true
4316 },
4317
4318 _rootHandleUncaughtError__closure: {"": "Closure;error_2,stackTrace_3",
4319 call$0: function() {
4320 var t1, trace, t2;
4321 t1 = this.error_2;
4322 P.print("Uncaught Error: " + H.S(t1));
4323 trace = this.stackTrace_3;
4324 if (trace == null) {
4325 t2 = J.getInterceptor(t1);
4326 t2 = typeof t1 === "object" && t1 !== null && !!t2.$isError;
4327 } else
4328 t2 = false;
4329 if (t2)
4330 trace = t1.get$stackTrace();
4331 if (trace != null)
4332 P.print("Stack Trace: \n" + H.S(trace) + "\n");
4333 throw H.wrapException(t1);
4334 },
4335 "+call:0:0": 0,
4336 $isFunction: true
4337 },
4338
4339 _RootZone: {"": "_BaseZone;",
4340 $index: function(_, key) {
4341 return;
4342 },
4343 handleUncaughtError$2: function(error, stackTrace) {
4344 return P._rootHandleUncaughtError(this, null, this, error, stackTrace);
4345 },
4346 run$1: function(f) {
4347 return P._rootRun(this, null, this, f);
4348 },
4349 runUnary$2: function(f, arg) {
4350 return P._rootRunUnary(this, null, this, f, arg);
4351 },
4352 runBinary$3: function(f, arg1, arg2) {
4353 return P._rootRunBinary(this, null, this, f, arg1, arg2);
4354 },
4355 registerCallback$1: function(f) {
4356 return f;
4357 },
4358 registerUnaryCallback$1: function(f) {
4359 return f;
4360 }
4361 }}],
4362 ["dart.collection", "dart:collection", , P, {
4363 _defaultEquals: function(a, b) {
4364 return J.$eq(a, b);
4365 },
4366
4367 _defaultHashCode: function(a) {
4368 return J.get$hashCode$(a);
4369 },
4370
4371 HashMap_HashMap: function(equals, hashCode, isValidKey, $K, $V) {
4372 var t1 = new P._HashMap(0, null, null, null, null);
4373 H.setRuntimeTypeInfo(t1, [$K, $V]);
4374 return t1;
4375 },
4376
4377 HashMap_HashMap$identity: function($K, $V) {
4378 var t1 = new P._IdentityHashMap(0, null, null, null, null);
4379 H.setRuntimeTypeInfo(t1, [$K, $V]);
4380 return t1;
4381 },
4382
4383 HashSet_HashSet$identity: function($E) {
4384 var t1 = new P._IdentityHashSet(0, null, null, null, null);
4385 H.setRuntimeTypeInfo(t1, [$E]);
4386 return t1;
4387 },
4388
4389 _iterableToString: function(iterable) {
4390 var parts, t1;
4391 t1 = $.get$_toStringVisiting();
4392 if (t1.contains$1(t1, iterable))
4393 return "(...)";
4394 t1 = $.get$_toStringVisiting();
4395 t1.add$1(t1, iterable);
4396 parts = [];
4397 try {
4398 P._iterablePartsToStrings(iterable, parts);
4399 } finally {
4400 t1 = $.get$_toStringVisiting();
4401 t1.remove$1(t1, iterable);
4402 }
4403 t1 = P.StringBuffer$("(");
4404 t1.writeAll$2(parts, ", ");
4405 t1.write$1(")");
4406 return t1._contents;
4407 },
4408
4409 _iterablePartsToStrings: function(iterable, parts) {
4410 var it, $length, count, next, ultimateString, penultimateString, penultimate, ultimate, ultimate0, elision;
4411 it = iterable.get$iterator(iterable);
4412 $length = 0;
4413 count = 0;
4414 while (true) {
4415 if (!($length < 80 || count < 3))
4416 break;
4417 if (!it.moveNext$0())
4418 return;
4419 next = H.S(it.get$current());
4420 parts.push(next);
4421 $length += next.length + 2;
4422 ++count;
4423 }
4424 if (!it.moveNext$0()) {
4425 if (count <= 5)
4426 return;
4427 if (0 >= parts.length)
4428 throw H.ioore(parts, 0);
4429 ultimateString = parts.pop();
4430 if (0 >= parts.length)
4431 throw H.ioore(parts, 0);
4432 penultimateString = parts.pop();
4433 } else {
4434 penultimate = it.get$current();
4435 ++count;
4436 if (!it.moveNext$0()) {
4437 if (count <= 4) {
4438 parts.push(H.S(penultimate));
4439 return;
4440 }
4441 ultimateString = H.S(penultimate);
4442 if (0 >= parts.length)
4443 throw H.ioore(parts, 0);
4444 penultimateString = parts.pop();
4445 $length += ultimateString.length + 2;
4446 } else {
4447 ultimate = it.get$current();
4448 ++count;
4449 for (; it.moveNext$0(); penultimate = ultimate, ultimate = ultimate0) {
4450 ultimate0 = it.get$current();
4451 ++count;
4452 if (count > 100) {
4453 while (true) {
4454 if (!($length > 75 && count > 3))
4455 break;
4456 if (0 >= parts.length)
4457 throw H.ioore(parts, 0);
4458 $length -= parts.pop().length + 2;
4459 --count;
4460 }
4461 parts.push("...");
4462 return;
4463 }
4464 }
4465 penultimateString = H.S(penultimate);
4466 ultimateString = H.S(ultimate);
4467 $length += ultimateString.length + penultimateString.length + 4;
4468 }
4469 }
4470 if (count > parts.length + 2) {
4471 $length += 5;
4472 elision = "...";
4473 } else
4474 elision = null;
4475 while (true) {
4476 if (!($length > 80 && parts.length > 3))
4477 break;
4478 if (0 >= parts.length)
4479 throw H.ioore(parts, 0);
4480 $length -= parts.pop().length + 2;
4481 if (elision == null) {
4482 $length += 5;
4483 elision = "...";
4484 }
4485 }
4486 if (elision != null)
4487 parts.push(elision);
4488 parts.push(penultimateString);
4489 parts.push(ultimateString);
4490 },
4491
4492 LinkedHashMap_LinkedHashMap: function(equals, hashCode, isValidKey, $K, $V) {
4493 var t1 = new P._LinkedHashMap(0, null, null, null, null, null, 0);
4494 H.setRuntimeTypeInfo(t1, [$K, $V]);
4495 return t1;
4496 },
4497
4498 Maps_mapToString: function(m) {
4499 var t1, result, i, t2;
4500 t1 = {};
4501 for (i = 0; i < $.get$Maps__toStringList().length; ++i) {
4502 t2 = $.get$Maps__toStringList();
4503 if (i >= t2.length)
4504 throw H.ioore(t2, i);
4505 if (t2[i] === m)
4506 return "{...}";
4507 }
4508 result = P.StringBuffer$("");
4509 try {
4510 $.get$Maps__toStringList().push(m);
4511 result.write$1("{");
4512 t1.first_0 = true;
4513 J.forEach$1$ax(m, new P.Maps_mapToString_closure(t1, result));
4514 result.write$1("}");
4515 } finally {
4516 t1 = $.get$Maps__toStringList();
4517 if (0 >= t1.length)
4518 throw H.ioore(t1, 0);
4519 t1.pop();
4520 }
4521 return result.get$_contents();
4522 },
4523
4524 _HashMap: {"": "Object;_collection$_length,_strings,_nums,_rest,_keys",
4525 get$length: function(_) {
4526 return this._collection$_length;
4527 },
4528 get$keys: function() {
4529 var t1 = new P.HashMapKeyIterable(this);
4530 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_HashMap", 0)]);
4531 return t1;
4532 },
4533 get$values: function(_) {
4534 var t1 = new P.HashMapKeyIterable(this);
4535 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_HashMap", 0)]);
4536 return H.MappedIterable_MappedIterable(t1, new P._HashMap_values_closure(thi s), H.getRuntimeTypeArgument(t1, "IterableBase", 0), null);
4537 },
4538 containsKey$1: function(key) {
4539 var strings, nums, rest;
4540 if (typeof key === "string" && key !== "__proto__") {
4541 strings = this._strings;
4542 return strings == null ? false : strings[key] != null;
4543 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4544 nums = this._nums;
4545 return nums == null ? false : nums[key] != null;
4546 } else {
4547 rest = this._rest;
4548 if (rest == null)
4549 return false;
4550 return this._findBucketIndex$2(rest[this._computeHashCode$1(key)], key) >= 0;
4551 }
4552 },
4553 $index: function(_, key) {
4554 var strings, t1, entry, nums, rest, bucket, index;
4555 if (typeof key === "string" && key !== "__proto__") {
4556 strings = this._strings;
4557 if (strings == null)
4558 t1 = null;
4559 else {
4560 entry = strings[key];
4561 t1 = entry === strings ? null : entry;
4562 }
4563 return t1;
4564 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4565 nums = this._nums;
4566 if (nums == null)
4567 t1 = null;
4568 else {
4569 entry = nums[key];
4570 t1 = entry === nums ? null : entry;
4571 }
4572 return t1;
4573 } else {
4574 rest = this._rest;
4575 if (rest == null)
4576 return;
4577 bucket = rest[this._computeHashCode$1(key)];
4578 index = this._findBucketIndex$2(bucket, key);
4579 return index < 0 ? null : bucket[index + 1];
4580 }
4581 },
4582 $indexSet: function(_, key, value) {
4583 var strings, nums, rest, hash, bucket, index;
4584 if (typeof key === "string" && key !== "__proto__") {
4585 strings = this._strings;
4586 if (strings == null) {
4587 strings = P._HashMap__newHashTable();
4588 this._strings = strings;
4589 }
4590 this._addHashTableEntry$3(strings, key, value);
4591 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4592 nums = this._nums;
4593 if (nums == null) {
4594 nums = P._HashMap__newHashTable();
4595 this._nums = nums;
4596 }
4597 this._addHashTableEntry$3(nums, key, value);
4598 } else {
4599 rest = this._rest;
4600 if (rest == null) {
4601 rest = P._HashMap__newHashTable();
4602 this._rest = rest;
4603 }
4604 hash = this._computeHashCode$1(key);
4605 bucket = rest[hash];
4606 if (bucket == null) {
4607 P._HashMap__setTableEntry(rest, hash, [key, value]);
4608 this._collection$_length = this._collection$_length + 1;
4609 this._keys = null;
4610 } else {
4611 index = this._findBucketIndex$2(bucket, key);
4612 if (index >= 0)
4613 bucket[index + 1] = value;
4614 else {
4615 bucket.push(key, value);
4616 this._collection$_length = this._collection$_length + 1;
4617 this._keys = null;
4618 }
4619 }
4620 }
4621 },
4622 forEach$1: function(_, action) {
4623 var keys, $length, i, key;
4624 keys = this._computeKeys$0();
4625 for ($length = keys.length, i = 0; i < $length; ++i) {
4626 key = keys[i];
4627 action.call$2(key, this.$index(this, key));
4628 if (keys !== this._keys)
4629 throw H.wrapException(P.ConcurrentModificationError$(this));
4630 }
4631 },
4632 _computeKeys$0: function() {
4633 var t1, result, strings, names, entries, index, i, nums, rest, bucket, $leng th, i0;
4634 t1 = this._keys;
4635 if (t1 != null)
4636 return t1;
4637 result = P.List_List(this._collection$_length, null);
4638 strings = this._strings;
4639 if (strings != null) {
4640 names = Object.getOwnPropertyNames(strings);
4641 entries = names.length;
4642 for (index = 0, i = 0; i < entries; ++i) {
4643 result[index] = names[i];
4644 ++index;
4645 }
4646 } else
4647 index = 0;
4648 nums = this._nums;
4649 if (nums != null) {
4650 names = Object.getOwnPropertyNames(nums);
4651 entries = names.length;
4652 for (i = 0; i < entries; ++i) {
4653 result[index] = +names[i];
4654 ++index;
4655 }
4656 }
4657 rest = this._rest;
4658 if (rest != null) {
4659 names = Object.getOwnPropertyNames(rest);
4660 entries = names.length;
4661 for (i = 0; i < entries; ++i) {
4662 bucket = rest[names[i]];
4663 $length = bucket.length;
4664 for (i0 = 0; i0 < $length; i0 += 2) {
4665 result[index] = bucket[i0];
4666 ++index;
4667 }
4668 }
4669 }
4670 this._keys = result;
4671 return result;
4672 },
4673 _addHashTableEntry$3: function(table, key, value) {
4674 if (table[key] == null) {
4675 this._collection$_length = this._collection$_length + 1;
4676 this._keys = null;
4677 }
4678 P._HashMap__setTableEntry(table, key, value);
4679 },
4680 _computeHashCode$1: function(key) {
4681 return J.get$hashCode$(key) & 0x3ffffff;
4682 },
4683 _findBucketIndex$2: function(bucket, key) {
4684 var $length, i;
4685 if (bucket == null)
4686 return -1;
4687 $length = bucket.length;
4688 for (i = 0; i < $length; i += 2)
4689 if (J.$eq(bucket[i], key))
4690 return i;
4691 return -1;
4692 },
4693 $isMap: true,
4694 static: {
4695 _HashMap__setTableEntry: function(table, key, value) {
4696 if (value == null)
4697 table[key] = table;
4698 else
4699 table[key] = value;
4700 },
4701
4702 _HashMap__newHashTable: function() {
4703 var table = Object.create(null);
4704 P._HashMap__setTableEntry(table, "<non-identifier-key>", table);
4705 delete table["<non-identifier-key>"];
4706 return table;
4707 }}
4708
4709 },
4710
4711 _HashMap_values_closure: {"": "Closure;this_0",
4712 call$1: function(each) {
4713 var t1 = this.this_0;
4714 return t1.$index(t1, each);
4715 },
4716 "+call:1:0": 0,
4717 $isFunction: true,
4718 $is_args1: true
4719 },
4720
4721 _IdentityHashMap: {"": "_HashMap;_collection$_length,_strings,_nums,_rest,_keys" ,
4722 _computeHashCode$1: function(key) {
4723 return H.objectHashCode(key) & 0x3ffffff;
4724 },
4725 _findBucketIndex$2: function(bucket, key) {
4726 var $length, i, t1;
4727 if (bucket == null)
4728 return -1;
4729 $length = bucket.length;
4730 for (i = 0; i < $length; i += 2) {
4731 t1 = bucket[i];
4732 if (t1 == null ? key == null : t1 === key)
4733 return i;
4734 }
4735 return -1;
4736 },
4737 $as_HashMap: null,
4738 $asMap: null
4739 },
4740
4741 HashMapKeyIterable: {"": "IterableBase;_map",
4742 get$length: function(_) {
4743 return this._map._collection$_length;
4744 },
4745 get$iterator: function(_) {
4746 var t1 = this._map;
4747 return new P.HashMapKeyIterator(t1, t1._computeKeys$0(), 0, null);
4748 },
4749 forEach$1: function(_, f) {
4750 var t1, keys, $length, i;
4751 t1 = this._map;
4752 keys = t1._computeKeys$0();
4753 for ($length = keys.length, i = 0; i < $length; ++i) {
4754 f.call$1(keys[i]);
4755 if (keys !== t1._keys)
4756 throw H.wrapException(P.ConcurrentModificationError$(t1));
4757 }
4758 },
4759 $asIterableBase: null,
4760 $asIterable: null,
4761 $isEfficientLength: true
4762 },
4763
4764 HashMapKeyIterator: {"": "Object;_map,_keys,_offset,_collection$_current",
4765 get$current: function() {
4766 return this._collection$_current;
4767 },
4768 moveNext$0: function() {
4769 var keys, offset, t1;
4770 keys = this._keys;
4771 offset = this._offset;
4772 t1 = this._map;
4773 if (keys !== t1._keys)
4774 throw H.wrapException(P.ConcurrentModificationError$(t1));
4775 else if (offset >= keys.length) {
4776 this._collection$_current = null;
4777 return false;
4778 } else {
4779 this._collection$_current = keys[offset];
4780 this._offset = offset + 1;
4781 return true;
4782 }
4783 }
4784 },
4785
4786 _LinkedHashMap: {"": "Object;_collection$_length,_strings,_nums,_rest,_first,_la st,_modifications",
4787 get$length: function(_) {
4788 return this._collection$_length;
4789 },
4790 get$isEmpty: function(_) {
4791 return this._collection$_length === 0;
4792 },
4793 get$keys: function() {
4794 var t1 = new P.LinkedHashMapKeyIterable(this);
4795 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_LinkedHashMap", 0 )]);
4796 return t1;
4797 },
4798 get$values: function(_) {
4799 var t1 = new P.LinkedHashMapKeyIterable(this);
4800 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_LinkedHashMap", 0 )]);
4801 return H.MappedIterable_MappedIterable(t1, new P._LinkedHashMap_values_closu re(this), H.getRuntimeTypeArgument(t1, "IterableBase", 0), null);
4802 },
4803 containsKey$1: function(key) {
4804 var nums, rest;
4805 if ((key & 0x3ffffff) === key) {
4806 nums = this._nums;
4807 if (nums == null)
4808 return false;
4809 return nums[key] != null;
4810 } else {
4811 rest = this._rest;
4812 if (rest == null)
4813 return false;
4814 return this._findBucketIndex$2(rest[this._computeHashCode$1(key)], key) >= 0;
4815 }
4816 },
4817 $index: function(_, key) {
4818 var strings, cell, nums, rest, bucket, index;
4819 if (typeof key === "string" && key !== "__proto__") {
4820 strings = this._strings;
4821 if (strings == null)
4822 return;
4823 cell = strings[key];
4824 return cell == null ? null : cell.get$_collection$_value();
4825 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4826 nums = this._nums;
4827 if (nums == null)
4828 return;
4829 cell = nums[key];
4830 return cell == null ? null : cell.get$_collection$_value();
4831 } else {
4832 rest = this._rest;
4833 if (rest == null)
4834 return;
4835 bucket = rest[this._computeHashCode$1(key)];
4836 index = this._findBucketIndex$2(bucket, key);
4837 if (index < 0)
4838 return;
4839 return bucket[index].get$_collection$_value();
4840 }
4841 },
4842 $indexSet: function(_, key, value) {
4843 var strings, nums, rest, hash, bucket, index;
4844 if (typeof key === "string" && key !== "__proto__") {
4845 strings = this._strings;
4846 if (strings == null) {
4847 strings = P._LinkedHashMap__newHashTable();
4848 this._strings = strings;
4849 }
4850 this._addHashTableEntry$3(strings, key, value);
4851 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4852 nums = this._nums;
4853 if (nums == null) {
4854 nums = P._LinkedHashMap__newHashTable();
4855 this._nums = nums;
4856 }
4857 this._addHashTableEntry$3(nums, key, value);
4858 } else {
4859 rest = this._rest;
4860 if (rest == null) {
4861 rest = P._LinkedHashMap__newHashTable();
4862 this._rest = rest;
4863 }
4864 hash = this._computeHashCode$1(key);
4865 bucket = rest[hash];
4866 if (bucket == null)
4867 rest[hash] = [this._newLinkedCell$2(key, value)];
4868 else {
4869 index = this._findBucketIndex$2(bucket, key);
4870 if (index >= 0)
4871 bucket[index].set$_collection$_value(value);
4872 else
4873 bucket.push(this._newLinkedCell$2(key, value));
4874 }
4875 }
4876 },
4877 remove$1: function(_, key) {
4878 var rest, bucket, index, cell;
4879 if (typeof key === "string" && key !== "__proto__")
4880 return this._removeHashTableEntry$2(this._strings, key);
4881 else if (typeof key === "number" && (key & 0x3ffffff) === key)
4882 return this._removeHashTableEntry$2(this._nums, key);
4883 else {
4884 rest = this._rest;
4885 if (rest == null)
4886 return;
4887 bucket = rest[this._computeHashCode$1(key)];
4888 index = this._findBucketIndex$2(bucket, key);
4889 if (index < 0)
4890 return;
4891 cell = bucket.splice(index, 1)[0];
4892 this._unlinkCell$1(cell);
4893 return cell.get$_collection$_value();
4894 }
4895 },
4896 forEach$1: function(_, action) {
4897 var cell, modifications;
4898 cell = this._first;
4899 modifications = this._modifications;
4900 for (; cell != null;) {
4901 action.call$2(cell._key, cell._collection$_value);
4902 if (modifications !== this._modifications)
4903 throw H.wrapException(P.ConcurrentModificationError$(this));
4904 cell = cell._next;
4905 }
4906 },
4907 _addHashTableEntry$3: function(table, key, value) {
4908 var cell = table[key];
4909 if (cell == null)
4910 table[key] = this._newLinkedCell$2(key, value);
4911 else
4912 cell.set$_collection$_value(value);
4913 },
4914 _removeHashTableEntry$2: function(table, key) {
4915 var cell;
4916 if (table == null)
4917 return;
4918 cell = table[key];
4919 if (cell == null)
4920 return;
4921 this._unlinkCell$1(cell);
4922 delete table[key];
4923 return cell.get$_collection$_value();
4924 },
4925 _newLinkedCell$2: function(key, value) {
4926 var cell, last;
4927 cell = new P.LinkedHashMapCell(key, value, null, null);
4928 if (this._first == null) {
4929 this._last = cell;
4930 this._first = cell;
4931 } else {
4932 last = this._last;
4933 cell._previous = last;
4934 last._next = cell;
4935 this._last = cell;
4936 }
4937 this._collection$_length = this._collection$_length + 1;
4938 this._modifications = this._modifications + 1 & 67108863;
4939 return cell;
4940 },
4941 _unlinkCell$1: function(cell) {
4942 var previous, next;
4943 previous = cell.get$_previous();
4944 next = cell.get$_next();
4945 if (previous == null)
4946 this._first = next;
4947 else
4948 previous._next = next;
4949 if (next == null)
4950 this._last = previous;
4951 else
4952 next._previous = previous;
4953 this._collection$_length = this._collection$_length - 1;
4954 this._modifications = this._modifications + 1 & 67108863;
4955 },
4956 _computeHashCode$1: function(key) {
4957 return J.get$hashCode$(key) & 0x3ffffff;
4958 },
4959 _findBucketIndex$2: function(bucket, key) {
4960 var $length, i;
4961 if (bucket == null)
4962 return -1;
4963 $length = bucket.length;
4964 for (i = 0; i < $length; ++i)
4965 if (J.$eq(bucket[i].get$_key(), key))
4966 return i;
4967 return -1;
4968 },
4969 toString$0: function(_) {
4970 return P.Maps_mapToString(this);
4971 },
4972 $isMap: true,
4973 static: {
4974 _LinkedHashMap__newHashTable: function() {
4975 var table = Object.create(null);
4976 table["<non-identifier-key>"] = table;
4977 delete table["<non-identifier-key>"];
4978 return table;
4979 }}
4980
4981 },
4982
4983 _LinkedHashMap_values_closure: {"": "Closure;this_0",
4984 call$1: function(each) {
4985 var t1 = this.this_0;
4986 return t1.$index(t1, each);
4987 },
4988 "+call:1:0": 0,
4989 $isFunction: true,
4990 $is_args1: true
4991 },
4992
4993 LinkedHashMapCell: {"": "Object;_key<,_collection$_value@,_next<,_previous<"},
4994
4995 LinkedHashMapKeyIterable: {"": "IterableBase;_map",
4996 get$length: function(_) {
4997 return this._map._collection$_length;
4998 },
4999 get$iterator: function(_) {
5000 var t1 = this._map;
5001 t1 = new P.LinkedHashMapKeyIterator(t1, t1._modifications, null, null);
5002 t1._cell = t1._map._first;
5003 return t1;
5004 },
5005 forEach$1: function(_, f) {
5006 var t1, cell, modifications;
5007 t1 = this._map;
5008 cell = t1._first;
5009 modifications = t1._modifications;
5010 for (; cell != null;) {
5011 f.call$1(cell._key);
5012 if (modifications !== t1._modifications)
5013 throw H.wrapException(P.ConcurrentModificationError$(t1));
5014 cell = cell._next;
5015 }
5016 },
5017 $asIterableBase: null,
5018 $asIterable: null,
5019 $isEfficientLength: true
5020 },
5021
5022 LinkedHashMapKeyIterator: {"": "Object;_map,_modifications,_cell,_collection$_cu rrent",
5023 get$current: function() {
5024 return this._collection$_current;
5025 },
5026 moveNext$0: function() {
5027 var t1 = this._map;
5028 if (this._modifications !== t1._modifications)
5029 throw H.wrapException(P.ConcurrentModificationError$(t1));
5030 else {
5031 t1 = this._cell;
5032 if (t1 == null) {
5033 this._collection$_current = null;
5034 return false;
5035 } else {
5036 this._collection$_current = t1._key;
5037 this._cell = this._cell._next;
5038 return true;
5039 }
5040 }
5041 }
5042 },
5043
5044 _HashSet: {"": "_HashSetBase;",
5045 get$iterator: function(_) {
5046 return new P.HashSetIterator(this, this._computeElements$0(), 0, null);
5047 },
5048 get$length: function(_) {
5049 return this._collection$_length;
5050 },
5051 contains$1: function(_, object) {
5052 var strings, nums, rest;
5053 if (typeof object === "string" && object !== "__proto__") {
5054 strings = this._strings;
5055 return strings == null ? false : strings[object] != null;
5056 } else if (typeof object === "number" && (object & 0x3ffffff) === object) {
5057 nums = this._nums;
5058 return nums == null ? false : nums[object] != null;
5059 } else {
5060 rest = this._rest;
5061 if (rest == null)
5062 return false;
5063 return this._findBucketIndex$2(rest[this._computeHashCode$1(object)], obje ct) >= 0;
5064 }
5065 },
5066 lookup$1: function(object) {
5067 var t1, rest, bucket, index;
5068 if (!(typeof object === "string" && object !== "__proto__"))
5069 t1 = typeof object === "number" && (object & 0x3ffffff) === object;
5070 else
5071 t1 = true;
5072 if (t1)
5073 return this.contains$1(this, object) ? object : null;
5074 rest = this._rest;
5075 if (rest == null)
5076 return;
5077 bucket = rest[this._computeHashCode$1(object)];
5078 index = this._findBucketIndex$2(bucket, object);
5079 if (index < 0)
5080 return;
5081 return J.$index$asx(bucket, index);
5082 },
5083 add$1: function(_, element) {
5084 var rest, table, hash, bucket;
5085 rest = this._rest;
5086 if (rest == null) {
5087 table = Object.create(null);
5088 table["<non-identifier-key>"] = table;
5089 delete table["<non-identifier-key>"];
5090 this._rest = table;
5091 rest = table;
5092 }
5093 hash = this._computeHashCode$1(element);
5094 bucket = rest[hash];
5095 if (bucket == null)
5096 rest[hash] = [element];
5097 else {
5098 if (this._findBucketIndex$2(bucket, element) >= 0)
5099 return false;
5100 bucket.push(element);
5101 }
5102 this._collection$_length = this._collection$_length + 1;
5103 this._elements = null;
5104 return true;
5105 },
5106 remove$1: function(_, object) {
5107 var rest, bucket, index;
5108 rest = this._rest;
5109 if (rest == null)
5110 return false;
5111 bucket = rest[this._computeHashCode$1(object)];
5112 index = this._findBucketIndex$2(bucket, object);
5113 if (index < 0)
5114 return false;
5115 this._collection$_length = this._collection$_length - 1;
5116 this._elements = null;
5117 bucket.splice(index, 1);
5118 return true;
5119 },
5120 _computeElements$0: function() {
5121 var t1, result, strings, names, entries, index, i, nums, rest, bucket, $leng th, i0;
5122 t1 = this._elements;
5123 if (t1 != null)
5124 return t1;
5125 result = P.List_List(this._collection$_length, null);
5126 strings = this._strings;
5127 if (strings != null) {
5128 names = Object.getOwnPropertyNames(strings);
5129 entries = names.length;
5130 for (index = 0, i = 0; i < entries; ++i) {
5131 result[index] = names[i];
5132 ++index;
5133 }
5134 } else
5135 index = 0;
5136 nums = this._nums;
5137 if (nums != null) {
5138 names = Object.getOwnPropertyNames(nums);
5139 entries = names.length;
5140 for (i = 0; i < entries; ++i) {
5141 result[index] = +names[i];
5142 ++index;
5143 }
5144 }
5145 rest = this._rest;
5146 if (rest != null) {
5147 names = Object.getOwnPropertyNames(rest);
5148 entries = names.length;
5149 for (i = 0; i < entries; ++i) {
5150 bucket = rest[names[i]];
5151 $length = bucket.length;
5152 for (i0 = 0; i0 < $length; ++i0) {
5153 result[index] = bucket[i0];
5154 ++index;
5155 }
5156 }
5157 }
5158 this._elements = result;
5159 return result;
5160 },
5161 _computeHashCode$1: function(element) {
5162 return J.get$hashCode$(element) & 0x3ffffff;
5163 },
5164 _findBucketIndex$2: function(bucket, element) {
5165 var $length, i;
5166 if (bucket == null)
5167 return -1;
5168 $length = bucket.length;
5169 for (i = 0; i < $length; ++i)
5170 if (J.$eq(bucket[i], element))
5171 return i;
5172 return -1;
5173 },
5174 $as_HashSetBase: null,
5175 $asIterable: null,
5176 $isEfficientLength: true,
5177 $isIterable: true
5178 },
5179
5180 _IdentityHashSet: {"": "_HashSet;_collection$_length,_strings,_nums,_rest,_eleme nts",
5181 _computeHashCode$1: function(key) {
5182 return H.objectHashCode(key) & 0x3ffffff;
5183 },
5184 _findBucketIndex$2: function(bucket, element) {
5185 var $length, i, t1;
5186 if (bucket == null)
5187 return -1;
5188 $length = bucket.length;
5189 for (i = 0; i < $length; ++i) {
5190 t1 = bucket[i];
5191 if (t1 == null ? element == null : t1 === element)
5192 return i;
5193 }
5194 return -1;
5195 },
5196 $as_HashSet: null,
5197 $asIterable: null
5198 },
5199
5200 HashSetIterator: {"": "Object;_set,_elements,_offset,_collection$_current",
5201 get$current: function() {
5202 return this._collection$_current;
5203 },
5204 moveNext$0: function() {
5205 var elements, offset, t1;
5206 elements = this._elements;
5207 offset = this._offset;
5208 t1 = this._set;
5209 if (elements !== t1._elements)
5210 throw H.wrapException(P.ConcurrentModificationError$(t1));
5211 else if (offset >= elements.length) {
5212 this._collection$_current = null;
5213 return false;
5214 } else {
5215 this._collection$_current = elements[offset];
5216 this._offset = offset + 1;
5217 return true;
5218 }
5219 }
5220 },
5221
5222 _HashSetBase: {"": "IterableBase;",
5223 toString$0: function(_) {
5224 return H.IterableMixinWorkaround_toStringIterable(this, "{", "}");
5225 },
5226 $asIterableBase: null,
5227 $asIterable: null,
5228 $isEfficientLength: true,
5229 $isIterable: true
5230 },
5231
5232 IterableBase: {"": "Object;",
5233 map$1: function(_, f) {
5234 return H.MappedIterable_MappedIterable(this, f, H.getRuntimeTypeArgument(thi s, "IterableBase", 0), null);
5235 },
5236 forEach$1: function(_, f) {
5237 var t1;
5238 for (t1 = this.get$iterator(this); t1.moveNext$0();)
5239 f.call$1(t1.get$current());
5240 },
5241 get$length: function(_) {
5242 var it, count;
5243 it = this.get$iterator(this);
5244 for (count = 0; it.moveNext$0();)
5245 ++count;
5246 return count;
5247 },
5248 elementAt$1: function(_, index) {
5249 var t1, remaining, element, t2;
5250 if (typeof index !== "number" || Math.floor(index) !== index || index < 0)
5251 throw H.wrapException(P.RangeError$value(index));
5252 for (t1 = this.get$iterator(this), remaining = index; t1.moveNext$0();) {
5253 element = t1.get$current();
5254 t2 = J.getInterceptor(remaining);
5255 if (t2.$eq(remaining, 0))
5256 return element;
5257 remaining = t2.$sub(remaining, 1);
5258 }
5259 throw H.wrapException(P.RangeError$value(index));
5260 },
5261 toString$0: function(_) {
5262 return P._iterableToString(this);
5263 },
5264 $isIterable: true,
5265 $asIterable: null
5266 },
5267
5268 ListMixin: {"": "Object;",
5269 get$iterator: function(receiver) {
5270 return new H.ListIterator(receiver, this.get$length(receiver), 0, null);
5271 },
5272 elementAt$1: function(receiver, index) {
5273 return this.$index(receiver, index);
5274 },
5275 forEach$1: function(receiver, action) {
5276 var $length, i;
5277 $length = this.get$length(receiver);
5278 if (typeof $length !== "number")
5279 throw H.iae($length);
5280 i = 0;
5281 for (; i < $length; ++i) {
5282 action.call$1(this.$index(receiver, i));
5283 if ($length !== this.get$length(receiver))
5284 throw H.wrapException(P.ConcurrentModificationError$(receiver));
5285 }
5286 },
5287 map$1: function(receiver, f) {
5288 var t1 = new H.MappedListIterable(receiver, f);
5289 H.setRuntimeTypeInfo(t1, [null, null]);
5290 return t1;
5291 },
5292 toString$0: function(receiver) {
5293 var result, t1;
5294 t1 = $.get$_toStringVisiting();
5295 if (t1.contains$1(t1, receiver))
5296 return "[...]";
5297 result = P.StringBuffer$("");
5298 try {
5299 t1 = $.get$_toStringVisiting();
5300 t1.add$1(t1, receiver);
5301 result.write$1("[");
5302 result.writeAll$2(receiver, ", ");
5303 result.write$1("]");
5304 } finally {
5305 t1 = $.get$_toStringVisiting();
5306 t1.remove$1(t1, receiver);
5307 }
5308 return result.get$_contents();
5309 },
5310 $isList: true,
5311 $asList: null,
5312 $isEfficientLength: true,
5313 $isIterable: true,
5314 $asIterable: null
5315 },
5316
5317 Maps_mapToString_closure: {"": "Closure;box_0,result_1",
5318 call$2: function(k, v) {
5319 var t1 = this.box_0;
5320 if (!t1.first_0)
5321 this.result_1.write$1(", ");
5322 t1.first_0 = false;
5323 t1 = this.result_1;
5324 t1.write$1(k);
5325 t1.write$1(": ");
5326 t1.write$1(v);
5327 },
5328 "+call:2:0": 0,
5329 $isFunction: true,
5330 $is_args2: true
5331 },
5332
5333 ListQueue: {"": "IterableBase;_table,_head,_tail,_modificationCount",
5334 get$iterator: function(_) {
5335 return P._ListQueueIterator$(this);
5336 },
5337 forEach$1: function(_, action) {
5338 var modificationCount, i, t1;
5339 modificationCount = this._modificationCount;
5340 for (i = this._head; i !== this._tail; i = (i + 1 & this._table.length - 1) >>> 0) {
5341 t1 = this._table;
5342 if (i < 0 || i >= t1.length)
5343 throw H.ioore(t1, i);
5344 action.call$1(t1[i]);
5345 if (modificationCount !== this._modificationCount)
5346 H.throwExpression(P.ConcurrentModificationError$(this));
5347 }
5348 },
5349 get$length: function(_) {
5350 return (this._tail - this._head & this._table.length - 1) >>> 0;
5351 },
5352 toString$0: function(_) {
5353 return H.IterableMixinWorkaround_toStringIterable(this, "{", "}");
5354 },
5355 removeFirst$0: function() {
5356 var t1, t2, t3, result;
5357 if (this._head === this._tail)
5358 throw H.wrapException(P.StateError$("No elements"));
5359 this._modificationCount = this._modificationCount + 1;
5360 t1 = this._table;
5361 t2 = this._head;
5362 t3 = t1.length;
5363 if (t2 < 0 || t2 >= t3)
5364 throw H.ioore(t1, t2);
5365 result = t1[t2];
5366 this._head = (t2 + 1 & t3 - 1) >>> 0;
5367 return result;
5368 },
5369 _add$1: function(element) {
5370 var t1, t2, t3;
5371 t1 = this._table;
5372 t2 = this._tail;
5373 t3 = t1.length;
5374 if (t2 < 0 || t2 >= t3)
5375 throw H.ioore(t1, t2);
5376 t1[t2] = element;
5377 this._tail = (t2 + 1 & t3 - 1) >>> 0;
5378 if (this._head === this._tail)
5379 this._grow$0();
5380 this._modificationCount = this._modificationCount + 1;
5381 },
5382 _grow$0: function() {
5383 var newTable, t1, t2, split;
5384 newTable = P.List_List(this._table.length * 2, H.getRuntimeTypeArgument(this , "ListQueue", 0));
5385 H.setRuntimeTypeInfo(newTable, [H.getRuntimeTypeArgument(this, "ListQueue", 0)]);
5386 t1 = this._table;
5387 t2 = this._head;
5388 split = t1.length - t2;
5389 H.IterableMixinWorkaround_setRangeList(newTable, 0, split, t1, t2);
5390 t1 = this._head;
5391 t2 = this._table;
5392 H.IterableMixinWorkaround_setRangeList(newTable, split, split + t1, t2, 0);
5393 this._head = 0;
5394 this._tail = this._table.length;
5395 this._table = newTable;
5396 },
5397 ListQueue$1: function(initialCapacity, $E) {
5398 var t1 = P.List_List(8, $E);
5399 H.setRuntimeTypeInfo(t1, [$E]);
5400 this._table = t1;
5401 },
5402 $asIterableBase: null,
5403 $asIterable: null,
5404 $isEfficientLength: true,
5405 $isIterable: true,
5406 static: {
5407 "": "ListQueue__INITIAL_CAPACITY",
5408 ListQueue$: function(initialCapacity, $E) {
5409 var t1 = new P.ListQueue(null, 0, 0, 0);
5410 H.setRuntimeTypeInfo(t1, [$E]);
5411 t1.ListQueue$1(initialCapacity, $E);
5412 return t1;
5413 }}
5414
5415 },
5416
5417 _ListQueueIterator: {"": "Object;_queue,_end,_modificationCount,_position,_colle ction$_current",
5418 get$current: function() {
5419 return this._collection$_current;
5420 },
5421 moveNext$0: function() {
5422 var t1, t2, t3;
5423 t1 = this._queue;
5424 if (this._modificationCount !== t1._modificationCount)
5425 H.throwExpression(P.ConcurrentModificationError$(t1));
5426 t2 = this._position;
5427 if (t2 === this._end) {
5428 this._collection$_current = null;
5429 return false;
5430 }
5431 t3 = t1._table;
5432 if (t2 < 0 || t2 >= t3.length)
5433 throw H.ioore(t3, t2);
5434 this._collection$_current = t3[t2];
5435 this._position = (this._position + 1 & t1._table.length - 1) >>> 0;
5436 return true;
5437 },
5438 static: {
5439 _ListQueueIterator$: function(queue) {
5440 return new P._ListQueueIterator(queue, queue._tail, queue._modificationCount, queue._head, null);
5441 }}
5442
5443 }}],
5444 ["dart.core", "dart:core", , P, {
5445 Function__toMangledNames: function(namedArguments) {
5446 return;
5447 },
5448
5449 Error_safeToString: function(object) {
5450 var buffer, t1, i, codeUnit, t2, charCodes;
5451 if (typeof object === "number" || typeof object === "boolean" || null == objec t)
5452 return J.toString$0(object);
5453 if (typeof object === "string") {
5454 buffer = new P.StringBuffer("");
5455 buffer._contents = "\"";
5456 for (t1 = object.length, i = 0; i < t1; ++i) {
5457 codeUnit = C.JSString_methods.codeUnitAt$1(object, i);
5458 if (codeUnit <= 31)
5459 if (codeUnit === 10)
5460 buffer._contents = buffer._contents + "\\n";
5461 else if (codeUnit === 13)
5462 buffer._contents = buffer._contents + "\\r";
5463 else if (codeUnit === 9)
5464 buffer._contents = buffer._contents + "\\t";
5465 else {
5466 buffer._contents = buffer._contents + "\\x";
5467 if (codeUnit < 16)
5468 buffer._contents = buffer._contents + "0";
5469 else {
5470 buffer._contents = buffer._contents + "1";
5471 codeUnit -= 16;
5472 }
5473 t2 = codeUnit < 10 ? 48 + codeUnit : 87 + codeUnit;
5474 charCodes = P.List_List$filled(1, t2, J.JSInt);
5475 charCodes.$builtinTypeInfo = [J.JSInt];
5476 t2 = H.Primitives_stringFromCharCodes(charCodes);
5477 buffer._contents = buffer._contents + t2;
5478 }
5479 else if (codeUnit === 92)
5480 buffer._contents = buffer._contents + "\\\\";
5481 else if (codeUnit === 34)
5482 buffer._contents = buffer._contents + "\\\"";
5483 else {
5484 charCodes = P.List_List$filled(1, codeUnit, J.JSInt);
5485 charCodes.$builtinTypeInfo = [J.JSInt];
5486 t2 = H.Primitives_stringFromCharCodes(charCodes);
5487 buffer._contents = buffer._contents + t2;
5488 }
5489 }
5490 buffer._contents = buffer._contents + "\"";
5491 return buffer._contents;
5492 }
5493 return "Instance of '" + H.Primitives_objectTypeName(object) + "'";
5494 },
5495
5496 Exception_Exception: function(message) {
5497 return new P._ExceptionImplementation(message);
5498 },
5499
5500 identical: function(a, b) {
5501 return a == null ? b == null : a === b;
5502 },
5503
5504 identityHashCode: function(object) {
5505 return H.objectHashCode(object);
5506 },
5507
5508 List_List: function($length, $E) {
5509 if ($length == null)
5510 return new Array(0);
5511 if (typeof $length !== "number" || Math.floor($length) !== $length || $length < 0)
5512 throw H.wrapException(new P.ArgumentError("Length must be a positive integer : " + H.S($length) + "."));
5513 return H.Primitives_newFixedList($length);
5514 },
5515
5516 List_List$filled: function($length, fill, $E) {
5517 var result, t1, i;
5518 if ($length < 0)
5519 throw H.wrapException(new P.ArgumentError("Length must be a positive integer : " + $length + "."));
5520 result = H.Primitives_newFixedList($length);
5521 if ($length !== 0 && true)
5522 for (t1 = result.length, i = 0; i < t1; ++i)
5523 result[i] = fill;
5524 return result;
5525 },
5526
5527 List_List$from: function(other, growable, $E) {
5528 var list, t1, $length, fixedList, i;
5529 list = P.List_List(null, $E);
5530 H.setRuntimeTypeInfo(list, [$E]);
5531 for (t1 = J.get$iterator$ax(other); t1.moveNext$0();)
5532 list.push(t1.get$current());
5533 if (growable)
5534 return list;
5535 $length = list.length;
5536 fixedList = P.List_List($length, $E);
5537 H.setRuntimeTypeInfo(fixedList, [$E]);
5538 for (t1 = list.length, i = 0; i < $length; ++i) {
5539 if (i >= t1)
5540 throw H.ioore(list, i);
5541 fixedList[i] = list[i];
5542 }
5543 return fixedList;
5544 },
5545
5546 print: function(object) {
5547 var line = J.toString$0(object);
5548 H.printToConsole(line);
5549 },
5550
5551 Function__toMangledNames_closure: {"": "Closure;result_0",
5552 call$2: function(symbol, value) {
5553 var t1 = this.result_0;
5554 t1.$indexSet(t1, symbol.get$_name(), value);
5555 },
5556 "+call:2:0": 0,
5557 $isFunction: true,
5558 $is_args2: true
5559 },
5560
5561 NoSuchMethodError_toString_closure: {"": "Closure;box_0",
5562 call$2: function(key, value) {
5563 var t1 = this.box_0;
5564 if (t1.i_1 > 0)
5565 t1.sb_0.write$1(", ");
5566 t1.sb_0.write$1(key.get$_name());
5567 t1.sb_0.write$1(": ");
5568 t1.sb_0.write$1(P.Error_safeToString(value));
5569 t1.i_1 = t1.i_1 + 1;
5570 },
5571 "+call:2:0": 0,
5572 $isFunction: true,
5573 $is_args2: true
5574 },
5575
5576 DateTime: {"": "Object;millisecondsSinceEpoch,isUtc",
5577 $eq: function(_, other) {
5578 var t1;
5579 if (other == null)
5580 return false;
5581 t1 = J.getInterceptor(other);
5582 if (typeof other !== "object" || other === null || !t1.$isDateTime)
5583 return false;
5584 return this.millisecondsSinceEpoch === other.millisecondsSinceEpoch && this. isUtc === other.isUtc;
5585 },
5586 get$hashCode: function(_) {
5587 return this.millisecondsSinceEpoch;
5588 },
5589 toString$0: function(_) {
5590 var t1, y, m, d, h, min, sec, ms;
5591 t1 = new P.DateTime_toString_twoDigits();
5592 y = new P.DateTime_toString_fourDigits().call$1(H.Primitives_getYear(this));
5593 m = t1.call$1(H.Primitives_getMonth(this));
5594 d = t1.call$1(H.Primitives_getDay(this));
5595 h = t1.call$1(H.Primitives_getHours(this));
5596 min = t1.call$1(H.Primitives_getMinutes(this));
5597 sec = t1.call$1(H.Primitives_getSeconds(this));
5598 ms = new P.DateTime_toString_threeDigits().call$1(H.Primitives_getMillisecon ds(this));
5599 if (this.isUtc)
5600 return H.S(y) + "-" + H.S(m) + "-" + H.S(d) + " " + H.S(h) + ":" + H.S(min ) + ":" + H.S(sec) + "." + H.S(ms) + "Z";
5601 else
5602 return H.S(y) + "-" + H.S(m) + "-" + H.S(d) + " " + H.S(h) + ":" + H.S(min ) + ":" + H.S(sec) + "." + H.S(ms);
5603 },
5604 DateTime$fromMillisecondsSinceEpoch$2$isUtc: function(millisecondsSinceEpoch, isUtc) {
5605 if (Math.abs(millisecondsSinceEpoch) > 8640000000000000)
5606 throw H.wrapException(new P.ArgumentError(millisecondsSinceEpoch));
5607 },
5608 $isDateTime: true,
5609 static: {
5610 "": "DateTime_MONDAY,DateTime_TUESDAY,DateTime_WEDNESDAY,DateTime_THURSDAY,DateT ime_FRIDAY,DateTime_SATURDAY,DateTime_SUNDAY,DateTime_DAYS_PER_WEEK,DateTime_JAN UARY,DateTime_FEBRUARY,DateTime_MARCH,DateTime_APRIL,DateTime_MAY,DateTime_JUNE, DateTime_JULY,DateTime_AUGUST,DateTime_SEPTEMBER,DateTime_OCTOBER,DateTime_NOVEM BER,DateTime_DECEMBER,DateTime_MONTHS_PER_YEAR,DateTime__MAX_MILLISECONDS_SINCE_ EPOCH",
5611 DateTime$fromMillisecondsSinceEpoch: function(millisecondsSinceEpoch, isUtc) {
5612 var t1 = new P.DateTime(millisecondsSinceEpoch, isUtc);
5613 t1.DateTime$fromMillisecondsSinceEpoch$2$isUtc(millisecondsSinceEpoch, isUtc);
5614 return t1;
5615 }}
5616
5617 },
5618
5619 DateTime_toString_fourDigits: {"": "Closure;",
5620 call$1: function(n) {
5621 var t1, absN, sign;
5622 t1 = J.getInterceptor$n(n);
5623 absN = t1.abs$0(n);
5624 sign = t1.$lt(n, 0) ? "-" : "";
5625 if (absN >= 1000)
5626 return H.S(n);
5627 if (absN >= 100)
5628 return sign + "0" + H.S(absN);
5629 if (absN >= 10)
5630 return sign + "00" + H.S(absN);
5631 return sign + "000" + H.S(absN);
5632 },
5633 "+call:1:0": 0,
5634 $isFunction: true,
5635 $is_args1: true
5636 },
5637
5638 DateTime_toString_threeDigits: {"": "Closure;",
5639 call$1: function(n) {
5640 var t1 = J.getInterceptor$n(n);
5641 if (t1.$ge(n, 100))
5642 return H.S(n);
5643 if (t1.$ge(n, 10))
5644 return "0" + H.S(n);
5645 return "00" + H.S(n);
5646 },
5647 "+call:1:0": 0,
5648 $isFunction: true,
5649 $is_args1: true
5650 },
5651
5652 DateTime_toString_twoDigits: {"": "Closure;",
5653 call$1: function(n) {
5654 if (J.$ge$n(n, 10))
5655 return H.S(n);
5656 return "0" + H.S(n);
5657 },
5658 "+call:1:0": 0,
5659 $isFunction: true,
5660 $is_args1: true
5661 },
5662
5663 Duration: {"": "Object;_duration<",
5664 $sub: function(_, other) {
5665 return P.Duration$(0, 0, C.JSNumber_methods.$sub(this._duration, other.get$_ duration()), 0, 0, 0);
5666 },
5667 $lt: function(_, other) {
5668 return C.JSNumber_methods.$lt(this._duration, other.get$_duration());
5669 },
5670 $gt: function(_, other) {
5671 return this._duration > other.get$_duration();
5672 },
5673 $ge: function(_, other) {
5674 return this._duration >= other.get$_duration();
5675 },
5676 $eq: function(_, other) {
5677 var t1;
5678 if (other == null)
5679 return false;
5680 t1 = J.getInterceptor(other);
5681 if (typeof other !== "object" || other === null || !t1.$isDuration)
5682 return false;
5683 return this._duration === other._duration;
5684 },
5685 get$hashCode: function(_) {
5686 return this._duration & 0x1FFFFFFF;
5687 },
5688 toString$0: function(_) {
5689 var t1, t2, twoDigitMinutes, twoDigitSeconds, sixDigitUs;
5690 t1 = new P.Duration_toString_twoDigits();
5691 t2 = this._duration;
5692 if (t2 < 0)
5693 return "-" + H.S(P.Duration$(0, 0, -t2, 0, 0, 0));
5694 twoDigitMinutes = t1.call$1(C.JSNumber_methods.remainder$1(C.JSNumber_method s.$tdiv(t2, 60000000), 60));
5695 twoDigitSeconds = t1.call$1(C.JSNumber_methods.remainder$1(C.JSNumber_method s.$tdiv(t2, 1000000), 60));
5696 sixDigitUs = new P.Duration_toString_sixDigits().call$1(C.JSNumber_methods.r emainder$1(t2, 1000000));
5697 return H.S(C.JSNumber_methods.$tdiv(t2, 3600000000)) + ":" + H.S(twoDigitMin utes) + ":" + H.S(twoDigitSeconds) + "." + H.S(sixDigitUs);
5698 },
5699 $isDuration: true,
5700 static: {
5701 "": "Duration_MICROSECONDS_PER_MILLISECOND,Duration_MILLISECONDS_PER_SECOND,Dura tion_SECONDS_PER_MINUTE,Duration_MINUTES_PER_HOUR,Duration_HOURS_PER_DAY,Duratio n_MICROSECONDS_PER_SECOND,Duration_MICROSECONDS_PER_MINUTE,Duration_MICROSECONDS _PER_HOUR,Duration_MICROSECONDS_PER_DAY,Duration_MILLISECONDS_PER_MINUTE,Duratio n_MILLISECONDS_PER_HOUR,Duration_MILLISECONDS_PER_DAY,Duration_SECONDS_PER_HOUR, Duration_SECONDS_PER_DAY,Duration_MINUTES_PER_DAY,Duration_ZERO",
5702 Duration$: function(days, hours, microseconds, milliseconds, minutes, seconds) {
5703 return new P.Duration(days * 86400000000 + hours * 3600000000 + minutes * 6000 0000 + seconds * 1000000 + milliseconds * 1000 + microseconds);
5704 }}
5705
5706 },
5707
5708 Duration_toString_sixDigits: {"": "Closure;",
5709 call$1: function(n) {
5710 var t1 = J.getInterceptor$n(n);
5711 if (t1.$ge(n, 100000))
5712 return H.S(n);
5713 if (t1.$ge(n, 10000))
5714 return "0" + H.S(n);
5715 if (t1.$ge(n, 1000))
5716 return "00" + H.S(n);
5717 if (t1.$ge(n, 100))
5718 return "000" + H.S(n);
5719 if (t1.$gt(n, 10))
5720 return "0000" + H.S(n);
5721 return "00000" + H.S(n);
5722 },
5723 "+call:1:0": 0,
5724 $isFunction: true,
5725 $is_args1: true
5726 },
5727
5728 Duration_toString_twoDigits: {"": "Closure;",
5729 call$1: function(n) {
5730 if (J.$ge$n(n, 10))
5731 return H.S(n);
5732 return "0" + H.S(n);
5733 },
5734 "+call:1:0": 0,
5735 $isFunction: true,
5736 $is_args1: true
5737 },
5738
5739 Error: {"": "Object;",
5740 get$stackTrace: function() {
5741 return new H._StackTrace(this.$thrownJsError, null);
5742 },
5743 $isError: true
5744 },
5745
5746 NullThrownError: {"": "Error;",
5747 toString$0: function(_) {
5748 return "Throw of null.";
5749 }
5750 },
5751
5752 ArgumentError: {"": "Error;message",
5753 toString$0: function(_) {
5754 var t1 = this.message;
5755 if (t1 != null)
5756 return "Illegal argument(s): " + H.S(t1);
5757 return "Illegal argument(s)";
5758 },
5759 static: {
5760 ArgumentError$: function(message) {
5761 return new P.ArgumentError(message);
5762 }}
5763
5764 },
5765
5766 RangeError: {"": "ArgumentError;message",
5767 toString$0: function(_) {
5768 return "RangeError: " + H.S(this.message);
5769 },
5770 static: {
5771 RangeError$value: function(value) {
5772 return new P.RangeError("value " + H.S(value));
5773 },
5774
5775 RangeError$range: function(value, start, end) {
5776 return new P.RangeError("value " + H.S(value) + " not in range " + start + ".. " + H.S(end));
5777 }}
5778
5779 },
5780
5781 NoSuchMethodError: {"": "Error;_core$_receiver,_memberName,_core$_arguments,_nam edArguments,_existingArgumentNames",
5782 toString$0: function(_) {
5783 var t1, t2, t3, t4, str;
5784 t1 = {};
5785 t1.sb_0 = P.StringBuffer$("");
5786 t1.i_1 = 0;
5787 for (t2 = this._core$_arguments; t3 = t1.i_1, t3 < t2.length; t1.i_1 = t1.i_ 1 + 1) {
5788 if (t3 > 0) {
5789 t3 = t1.sb_0;
5790 t3._contents = t3._contents + ", ";
5791 }
5792 t3 = t1.sb_0;
5793 t4 = t1.i_1;
5794 if (t4 < 0 || t4 >= t2.length)
5795 throw H.ioore(t2, t4);
5796 str = P.Error_safeToString(t2[t4]);
5797 str = typeof str === "string" ? str : H.S(str);
5798 t3._contents = t3._contents + str;
5799 }
5800 t2 = this._namedArguments;
5801 t2.forEach$1(t2, new P.NoSuchMethodError_toString_closure(t1));
5802 return "NoSuchMethodError : method not found: '" + H.S(this._memberName) + " '\nReceiver: " + H.S(P.Error_safeToString(this._core$_receiver)) + "\nArguments: [" + H.S(t1.sb_0) + "]";
5803 },
5804 static: {
5805 NoSuchMethodError$: function(receiver, memberName, positionalArguments, namedArg uments, existingArgumentNames) {
5806 return new P.NoSuchMethodError(receiver, memberName, positionalArguments, name dArguments, existingArgumentNames);
5807 }}
5808
5809 },
5810
5811 UnsupportedError: {"": "Error;message",
5812 toString$0: function(_) {
5813 return "Unsupported operation: " + this.message;
5814 },
5815 static: {
5816 UnsupportedError$: function(message) {
5817 return new P.UnsupportedError(message);
5818 }}
5819
5820 },
5821
5822 UnimplementedError: {"": "Error;message",
5823 toString$0: function(_) {
5824 var t1 = this.message;
5825 return t1 != null ? "UnimplementedError: " + H.S(t1) : "UnimplementedError";
5826 },
5827 $isError: true,
5828 static: {
5829 UnimplementedError$: function(message) {
5830 return new P.UnimplementedError(message);
5831 }}
5832
5833 },
5834
5835 StateError: {"": "Error;message",
5836 toString$0: function(_) {
5837 return "Bad state: " + this.message;
5838 },
5839 static: {
5840 StateError$: function(message) {
5841 return new P.StateError(message);
5842 }}
5843
5844 },
5845
5846 ConcurrentModificationError: {"": "Error;modifiedObject",
5847 toString$0: function(_) {
5848 var t1 = this.modifiedObject;
5849 if (t1 == null)
5850 return "Concurrent modification during iteration.";
5851 return "Concurrent modification during iteration: " + H.S(P.Error_safeToStri ng(t1)) + ".";
5852 },
5853 static: {
5854 ConcurrentModificationError$: function(modifiedObject) {
5855 return new P.ConcurrentModificationError(modifiedObject);
5856 }}
5857
5858 },
5859
5860 StackOverflowError: {"": "Object;",
5861 toString$0: function(_) {
5862 return "Stack Overflow";
5863 },
5864 get$stackTrace: function() {
5865 return;
5866 },
5867 $isError: true
5868 },
5869
5870 CyclicInitializationError: {"": "Error;variableName",
5871 toString$0: function(_) {
5872 return "Reading static variable '" + this.variableName + "' during its initi alization";
5873 },
5874 static: {
5875 CyclicInitializationError$: function(variableName) {
5876 return new P.CyclicInitializationError(variableName);
5877 }}
5878
5879 },
5880
5881 _ExceptionImplementation: {"": "Object;message",
5882 toString$0: function(_) {
5883 var t1 = this.message;
5884 if (t1 == null)
5885 return "Exception";
5886 return "Exception: " + H.S(t1);
5887 }
5888 },
5889
5890 FormatException: {"": "Object;message",
5891 toString$0: function(_) {
5892 return "FormatException: " + H.S(this.message);
5893 },
5894 static: {
5895 FormatException$: function(message) {
5896 return new P.FormatException(message);
5897 }}
5898
5899 },
5900
5901 Expando: {"": "Object;name",
5902 toString$0: function(_) {
5903 return "Expando:" + H.S(this.name);
5904 },
5905 $index: function(_, object) {
5906 var values = H.Primitives_getProperty(object, "expando$values");
5907 return values == null ? null : H.Primitives_getProperty(values, this._getKey $0());
5908 },
5909 $indexSet: function(_, object, value) {
5910 var values = H.Primitives_getProperty(object, "expando$values");
5911 if (values == null) {
5912 values = new P.Object();
5913 H.Primitives_setProperty(object, "expando$values", values);
5914 }
5915 H.Primitives_setProperty(values, this._getKey$0(), value);
5916 },
5917 _getKey$0: function() {
5918 var key, t1;
5919 key = H.Primitives_getProperty(this, "expando$key");
5920 if (key == null) {
5921 t1 = $.Expando__keyCount;
5922 $.Expando__keyCount = t1 + 1;
5923 key = "expando$key$" + t1;
5924 H.Primitives_setProperty(this, "expando$key", key);
5925 }
5926 return key;
5927 },
5928 static: {
5929 "": "Expando__KEY_PROPERTY_NAME,Expando__EXPANDO_PROPERTY_NAME,Expando__keyCount ",
5930 }
5931
5932 },
5933
5934 Function: {"": "Object;", $isFunction: true},
5935
5936 Iterator: {"": "Object;"},
5937
5938 Null: {"": "Object;",
5939 toString$0: function(_) {
5940 return "null";
5941 }
5942 },
5943
5944 Object: {"": ";",
5945 $eq: function(_, other) {
5946 return this === other;
5947 },
5948 get$hashCode: function(_) {
5949 return H.Primitives_objectHashCode(this);
5950 },
5951 toString$0: function(_) {
5952 return H.Primitives_objectToString(this);
5953 },
5954 noSuchMethod$1: function(_, invocation) {
5955 throw H.wrapException(P.NoSuchMethodError$(this, invocation.get$memberName() , invocation.get$positionalArguments(), invocation.get$namedArguments(), null));
5956 }
5957 },
5958
5959 StackTrace: {"": "Object;"},
5960
5961 StringBuffer: {"": "Object;_contents<",
5962 get$length: function(_) {
5963 return this._contents.length;
5964 },
5965 write$1: function(obj) {
5966 var str = typeof obj === "string" ? obj : H.S(obj);
5967 this._contents = this._contents + str;
5968 },
5969 writeAll$2: function(objects, separator) {
5970 var iterator, str;
5971 iterator = J.get$iterator$ax(objects);
5972 if (!iterator.moveNext$0())
5973 return;
5974 if (separator.length === 0)
5975 do {
5976 str = iterator.get$current();
5977 str = typeof str === "string" ? str : H.S(str);
5978 this._contents = this._contents + str;
5979 } while (iterator.moveNext$0());
5980 else {
5981 this.write$1(iterator.get$current());
5982 for (; iterator.moveNext$0();) {
5983 this._contents = this._contents + separator;
5984 str = iterator.get$current();
5985 str = typeof str === "string" ? str : H.S(str);
5986 this._contents = this._contents + str;
5987 }
5988 }
5989 },
5990 toString$0: function(_) {
5991 return this._contents;
5992 },
5993 StringBuffer$1: function($content) {
5994 this._contents = $content;
5995 },
5996 static: {
5997 StringBuffer$: function($content) {
5998 var t1 = new P.StringBuffer("");
5999 t1.StringBuffer$1($content);
6000 return t1;
6001 }}
6002
6003 },
6004
6005 Symbol: {"": "Object;"}}],
6006 ["dart.dom.html", "dart:html", , W, {
6007 _wrapZone: function(callback) {
6008 var t1 = $.Zone__current;
6009 if (t1 === C.C__RootZone)
6010 return callback;
6011 return t1.bindUnaryCallback$2$runGuarded(callback, true);
6012 },
6013
6014 HtmlElement: {"": "Element;", "%": "HTMLAppletElement|HTMLAreaElement|HTMLBRElem ent|HTMLBaseElement|HTMLBaseFontElement|HTMLBodyElement|HTMLCanvasElement|HTMLCo ntentElement|HTMLDListElement|HTMLDataListElement|HTMLDetailsElement|HTMLDialogE lement|HTMLDirectoryElement|HTMLDivElement|HTMLEmbedElement|HTMLFieldSetElement| HTMLFontElement|HTMLFrameElement|HTMLFrameSetElement|HTMLHRElement|HTMLHeadEleme nt|HTMLHeadingElement|HTMLHtmlElement|HTMLIFrameElement|HTMLImageElement|HTMLKey genElement|HTMLLabelElement|HTMLLegendElement|HTMLLinkElement|HTMLMapElement|HTM LMarqueeElement|HTMLMenuElement|HTMLMetaElement|HTMLModElement|HTMLOListElement| HTMLObjectElement|HTMLOptGroupElement|HTMLParagraphElement|HTMLPreElement|HTMLQu oteElement|HTMLScriptElement|HTMLShadowElement|HTMLSourceElement|HTMLSpanElement |HTMLStyleElement|HTMLTableCaptionElement|HTMLTableCellElement|HTMLTableColEleme nt|HTMLTableDataCellElement|HTMLTableElement|HTMLTableHeaderCellElement|HTMLTabl eRowElement|HTMLTableSectionElement|HTMLTemplateElement|HTMLTitleElement|HTMLTra ckElement|HTMLUListElement|HTMLUnknownElement;HTMLElement"},
6015
6016 AnchorElement: {"": "HtmlElement;",
6017 toString$0: function(receiver) {
6018 return receiver.toString();
6019 },
6020 "%": "HTMLAnchorElement"
6021 },
6022
6023 Blob: {"": "Interceptor;", $isBlob: true, "%": "Blob|File"},
6024
6025 ButtonElement: {"": "HtmlElement;value=", "%": "HTMLButtonElement"},
6026
6027 CharacterData: {"": "Node;length=", "%": "CDATASection|CharacterData|Comment|Pro cessingInstruction|Text"},
6028
6029 DomException: {"": "Interceptor;",
6030 toString$0: function(receiver) {
6031 return receiver.toString();
6032 },
6033 "%": "DOMException"
6034 },
6035
6036 Element: {"": "Node;",
6037 toString$0: function(receiver) {
6038 return receiver.localName;
6039 },
6040 "%": "SVGAElement|SVGAltGlyphDefElement|SVGAltGlyphElement|SVGAltGlyphItemElem ent|SVGAnimateColorElement|SVGAnimateElement|SVGAnimateMotionElement|SVGAnimateT ransformElement|SVGAnimationElement|SVGCircleElement|SVGClipPathElement|SVGCompo nentTransferFunctionElement|SVGCursorElement|SVGDefsElement|SVGDescElement|SVGEl ement|SVGEllipseElement|SVGFEBlendElement|SVGFEColorMatrixElement|SVGFEComponent TransferElement|SVGFECompositeElement|SVGFEConvolveMatrixElement|SVGFEDiffuseLig htingElement|SVGFEDisplacementMapElement|SVGFEDistantLightElement|SVGFEDropShado wElement|SVGFEFloodElement|SVGFEFuncAElement|SVGFEFuncBElement|SVGFEFuncGElement |SVGFEFuncRElement|SVGFEGaussianBlurElement|SVGFEImageElement|SVGFEMergeElement| SVGFEMergeNodeElement|SVGFEMorphologyElement|SVGFEOffsetElement|SVGFEPointLightE lement|SVGFESpecularLightingElement|SVGFESpotLightElement|SVGFETileElement|SVGFE TurbulenceElement|SVGFilterElement|SVGFontElement|SVGFontFaceElement|SVGFontFace FormatElement|SVGFontFaceNameElement|SVGFontFaceSrcElement|SVGFontFaceUriElement |SVGForeignObjectElement|SVGGElement|SVGGlyphElement|SVGGlyphRefElement|SVGGradi entElement|SVGGraphicsElement|SVGHKernElement|SVGImageElement|SVGLineElement|SVG LinearGradientElement|SVGMPathElement|SVGMarkerElement|SVGMaskElement|SVGMetadat aElement|SVGMissingGlyphElement|SVGPathElement|SVGPatternElement|SVGPolygonEleme nt|SVGPolylineElement|SVGRadialGradientElement|SVGRectElement|SVGSVGElement|SVGS criptElement|SVGSetElement|SVGStopElement|SVGStyleElement|SVGSwitchElement|SVGSy mbolElement|SVGTSpanElement|SVGTextContentElement|SVGTextElement|SVGTextPathElem ent|SVGTextPositioningElement|SVGTitleElement|SVGUseElement|SVGVKernElement|SVGV iewElement;Element"
6041 },
6042
6043 ErrorEvent: {"": "Event;error=", "%": "ErrorEvent"},
6044
6045 Event: {"": "Interceptor;", $isEvent: true, "%": "AudioProcessingEvent|Autocompl eteErrorEvent|BeforeLoadEvent|BeforeUnloadEvent|CSSFontFaceLoadEvent|CloseEvent| CompositionEvent|CustomEvent|DeviceMotionEvent|DeviceOrientationEvent|DragEvent| FocusEvent|HashChangeEvent|IDBVersionChangeEvent|KeyboardEvent|MIDIConnectionEve nt|MIDIMessageEvent|MSPointerEvent|MediaKeyEvent|MediaKeyMessageEvent|MediaKeyNe ededEvent|MediaStreamEvent|MediaStreamTrackEvent|MessageEvent|MouseEvent|MouseSc rollEvent|MouseWheelEvent|MutationEvent|OfflineAudioCompletionEvent|OverflowEven t|PageTransitionEvent|PointerEvent|PopStateEvent|ProgressEvent|RTCDTMFToneChange Event|RTCDataChannelEvent|RTCIceCandidateEvent|ResourceProgressEvent|SVGZoomEven t|SecurityPolicyViolationEvent|SpeechInputEvent|SpeechRecognitionEvent|SpeechSyn thesisEvent|StorageEvent|TextEvent|TouchEvent|TrackEvent|TransitionEvent|UIEvent |WebGLContextEvent|WebKitAnimationEvent|WebKitTransitionEvent|WheelEvent|XMLHttp RequestProgressEvent;Event"},
6046
6047 EventTarget: {"": "Interceptor;",
6048 addEventListener$3: function(receiver, type, listener, useCapture) {
6049 return receiver.addEventListener(type, H.convertDartClosureToJS(listener, 1) , useCapture);
6050 },
6051 removeEventListener$3: function(receiver, type, listener, useCapture) {
6052 return receiver.removeEventListener(type, H.convertDartClosureToJS(listener, 1), useCapture);
6053 },
6054 "%": "MediaStream;EventTarget"
6055 },
6056
6057 FormElement: {"": "HtmlElement;length=", "%": "HTMLFormElement"},
6058
6059 ImageData: {"": "Interceptor;", $isImageData: true, "%": "ImageData"},
6060
6061 InputElement: {"": "HtmlElement;value=", $isNode: true, "%": "HTMLInputElement"} ,
6062
6063 LIElement: {"": "HtmlElement;value=", "%": "HTMLLIElement"},
6064
6065 MediaElement: {"": "HtmlElement;error=", "%": "HTMLAudioElement|HTMLMediaElement |HTMLVideoElement"},
6066
6067 MeterElement: {"": "HtmlElement;value=", "%": "HTMLMeterElement"},
6068
6069 Node: {"": "EventTarget;",
6070 toString$0: function(receiver) {
6071 var t1 = receiver.nodeValue;
6072 return t1 == null ? J.Interceptor.prototype.toString$0.call(this, receiver) : t1;
6073 },
6074 $isNode: true,
6075 "%": "Attr|Document|DocumentFragment|DocumentType|Entity|HTMLDocument|Notation |SVGDocument|ShadowRoot;Node"
6076 },
6077
6078 OptionElement: {"": "HtmlElement;value=", "%": "HTMLOptionElement"},
6079
6080 OutputElement: {"": "HtmlElement;value=", "%": "HTMLOutputElement"},
6081
6082 ParamElement: {"": "HtmlElement;value=", "%": "HTMLParamElement"},
6083
6084 ProgressElement: {"": "HtmlElement;value=", "%": "HTMLProgressElement"},
6085
6086 SelectElement: {"": "HtmlElement;length=,value=", "%": "HTMLSelectElement"},
6087
6088 SpeechRecognitionError: {"": "Event;error=", "%": "SpeechRecognitionError"},
6089
6090 TextAreaElement: {"": "HtmlElement;value=", "%": "HTMLTextAreaElement"},
6091
6092 Window: {"": "EventTarget;",
6093 toString$0: function(receiver) {
6094 return receiver.toString();
6095 },
6096 $isWindow: true,
6097 "%": "DOMWindow|Window"
6098 },
6099
6100 EventStreamProvider: {"": "Object;_eventType"},
6101
6102 _EventStream: {"": "Stream;",
6103 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) {
6104 var t1 = new W._EventStreamSubscription(0, this._target, this._eventType, W. _wrapZone(onData), this._useCapture);
6105 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_EventStream", 0)] );
6106 t1._tryResume$0();
6107 return t1;
6108 },
6109 listen$3$onDone$onError: function(onData, onDone, onError) {
6110 return this.listen$4$cancelOnError$onDone$onError(onData, null, onDone, onEr ror);
6111 },
6112 $asStream: null
6113 },
6114
6115 _ElementEventStreamImpl: {"": "_EventStream;_target,_eventType,_useCapture", $as _EventStream: null},
6116
6117 _EventStreamSubscription: {"": "StreamSubscription;_pauseCount,_target,_eventTyp e,_onData,_useCapture",
6118 cancel$0: function() {
6119 if (this._target == null)
6120 return;
6121 this._unlisten$0();
6122 this._target = null;
6123 this._onData = null;
6124 },
6125 pause$1: function(_, resumeSignal) {
6126 if (this._target == null)
6127 return;
6128 this._pauseCount = this._pauseCount + 1;
6129 this._unlisten$0();
6130 },
6131 pause$0: function($receiver) {
6132 return this.pause$1($receiver, null);
6133 },
6134 resume$0: function() {
6135 if (this._target == null || this._pauseCount <= 0)
6136 return;
6137 this._pauseCount = this._pauseCount - 1;
6138 this._tryResume$0();
6139 },
6140 _tryResume$0: function() {
6141 var t1 = this._onData;
6142 if (t1 != null && this._pauseCount <= 0)
6143 J.addEventListener$3$x(this._target, this._eventType, t1, this._useCapture );
6144 },
6145 _unlisten$0: function() {
6146 var t1 = this._onData;
6147 if (t1 != null)
6148 J.removeEventListener$3$x(this._target, this._eventType, t1, this._useCapt ure);
6149 },
6150 $asStreamSubscription: null
6151 }}],
6152 ["dart.dom.indexed_db", "dart:indexed_db", , P, {
6153 KeyRange: {"": "Interceptor;", $isKeyRange: true, "%": "IDBKeyRange"}}],
6154 ["dart.isolate", "dart:isolate", , P, {
6155 ReceivePort: {"": "Object;"}}],
6156 ["dart.js", "dart:js", , P, {
6157 _convertDartFunction: function(f, captureThis) {
6158 return function(_call, f, captureThis) {return function() {return _call(f, cap tureThis, this, Array.prototype.slice.apply(arguments));}}(P._callDartFunction$c losure.call$4, f, captureThis);
6159 },
6160
6161 _callDartFunction: function(callback, captureThis, $self, $arguments) {
6162 var arguments0;
6163 if (captureThis === true) {
6164 arguments0 = [$self];
6165 C.JSArray_methods.addAll$1(arguments0, $arguments);
6166 $arguments = arguments0;
6167 }
6168 return P._convertToJS(H.Primitives_applyFunction(callback, P.List_List$from(J. map$1$ax($arguments, P._convertToDart$closure), true, null), P.Function__toMangl edNames(null)));
6169 },
6170
6171 _defineProperty: function(o, $name, value) {
6172 var exception;
6173 if (Object.isExtensible(o))
6174 try {
6175 Object.defineProperty(o, $name, { value: value});
6176 return true;
6177 } catch (exception) {
6178 H.unwrapException(exception);
6179 }
6180
6181 return false;
6182 },
6183
6184 _convertToJS: function(o) {
6185 var t1;
6186 if (o == null)
6187 return;
6188 else {
6189 if (typeof o !== "string")
6190 if (typeof o !== "number")
6191 if (typeof o !== "boolean") {
6192 t1 = J.getInterceptor(o);
6193 t1 = typeof o === "object" && o !== null && !!t1.$isBlob || typeof o = == "object" && o !== null && !!t1.$isEvent || typeof o === "object" && o !== nul l && !!t1.$isKeyRange || typeof o === "object" && o !== null && !!t1.$isImageDat a || typeof o === "object" && o !== null && !!t1.$isNode || typeof o === "object " && o !== null && !!t1.$isTypedData || typeof o === "object" && o !== null && ! !t1.$isWindow;
6194 } else
6195 t1 = true;
6196 else
6197 t1 = true;
6198 else
6199 t1 = true;
6200 if (t1)
6201 return o;
6202 else {
6203 t1 = J.getInterceptor(o);
6204 if (typeof o === "object" && o !== null && !!t1.$isDateTime)
6205 return H.Primitives_lazyAsJsDate(o);
6206 else if (typeof o === "object" && o !== null && !!t1.$isJsObject)
6207 return o._jsObject;
6208 else if (typeof o === "object" && o !== null && !!t1.$isFunction)
6209 return P._getJsProxy(o, "$dart_jsFunction", new P._convertToJS_closure() );
6210 else
6211 return P._getJsProxy(o, "_$dart_jsObject", new P._convertToJS_closure0() );
6212 }
6213 }
6214 },
6215
6216 _getJsProxy: function(o, propertyName, createProxy) {
6217 var jsProxy = o[propertyName];
6218 if (jsProxy == null) {
6219 jsProxy = createProxy.call$1(o);
6220 P._defineProperty(o, propertyName, jsProxy);
6221 }
6222 return jsProxy;
6223 },
6224
6225 _convertToDart: function(o) {
6226 var t1;
6227 if (o == null || typeof o == "string" || typeof o == "number" || typeof o == " boolean")
6228 return o;
6229 else {
6230 if (o instanceof Object) {
6231 t1 = J.getInterceptor(o);
6232 t1 = typeof o === "object" && o !== null && !!t1.$isBlob || typeof o === " object" && o !== null && !!t1.$isEvent || typeof o === "object" && o !== null && !!t1.$isKeyRange || typeof o === "object" && o !== null && !!t1.$isImageData || typeof o === "object" && o !== null && !!t1.$isNode || typeof o === "object" && o !== null && !!t1.$isTypedData || typeof o === "object" && o !== null && !!t1. $isWindow;
6233 } else
6234 t1 = false;
6235 if (t1)
6236 return o;
6237 else if (o instanceof Date)
6238 return P.DateTime$fromMillisecondsSinceEpoch(o.getMilliseconds(), false);
6239 else if (o.constructor === DartObject)
6240 return o.o;
6241 else
6242 return P._wrapToDart(o);
6243 }
6244 },
6245
6246 _wrapToDart: function(o) {
6247 if (typeof o == "function")
6248 return P._getDartProxy(o, "_$dart_dartClosure", new P._wrapToDart_closure()) ;
6249 else if (o instanceof Array)
6250 return P._getDartProxy(o, "_$dart_dartObject", new P._wrapToDart_closure0()) ;
6251 else
6252 return P._getDartProxy(o, "_$dart_dartObject", new P._wrapToDart_closure1()) ;
6253 },
6254
6255 _getDartProxy: function(o, propertyName, createProxy) {
6256 var dartProxy = o[propertyName];
6257 if (dartProxy == null) {
6258 dartProxy = createProxy.call$1(o);
6259 P._defineProperty(o, propertyName, dartProxy);
6260 }
6261 return dartProxy;
6262 },
6263
6264 JsObject: {"": "Object;_jsObject",
6265 $index: function(_, property) {
6266 if (typeof property !== "string" && typeof property !== "number")
6267 throw H.wrapException(new P.ArgumentError("property is not a String or num "));
6268 return P._convertToDart(this._jsObject[property]);
6269 },
6270 $indexSet: function(_, property, value) {
6271 if (typeof property !== "string" && typeof property !== "number")
6272 throw H.wrapException(new P.ArgumentError("property is not a String or num "));
6273 this._jsObject[property] = P._convertToJS(value);
6274 },
6275 get$hashCode: function(_) {
6276 return 0;
6277 },
6278 $eq: function(_, other) {
6279 var t1;
6280 if (other == null)
6281 return false;
6282 t1 = J.getInterceptor(other);
6283 return typeof other === "object" && other !== null && !!t1.$isJsObject && th is._jsObject === other._jsObject;
6284 },
6285 toString$0: function(_) {
6286 var t1, exception;
6287 try {
6288 t1 = String(this._jsObject);
6289 return t1;
6290 } catch (exception) {
6291 H.unwrapException(exception);
6292 return P.Object.prototype.toString$0.call(this, this);
6293 }
6294
6295 },
6296 callMethod$2: function(method, args) {
6297 var t1, t2;
6298 t1 = this._jsObject;
6299 if (args == null)
6300 t2 = null;
6301 else {
6302 args.toString;
6303 t2 = new H.MappedListIterable(args, P._convertToJS$closure);
6304 H.setRuntimeTypeInfo(t2, [null, null]);
6305 t2 = P.List_List$from(t2, true, null);
6306 }
6307 return P._convertToDart(t1[method].apply(t1, t2));
6308 },
6309 $isJsObject: true,
6310 static: {
6311 JsObject_JsObject: function($constructor, $arguments) {
6312 var constr, args, t1, factoryFunction;
6313 constr = P._convertToJS($constructor);
6314 args = [null];
6315 t1 = new H.MappedListIterable($arguments, P._convertToJS$closure);
6316 H.setRuntimeTypeInfo(t1, [null, null]);
6317 C.JSArray_methods.addAll$1(args, t1);
6318 factoryFunction = constr.bind.apply(constr, args);
6319 String(factoryFunction);
6320 return P._wrapToDart(new factoryFunction());
6321 },
6322
6323 JsObject_JsObject$jsify: function(object) {
6324 var t1 = J.getInterceptor(object);
6325 if (!t1.$isMap && (typeof object !== "object" || object === null || object.con structor !== Array && !t1.$isIterable))
6326 throw H.wrapException(new P.ArgumentError("object must be a Map or Iterable" ));
6327 return P._wrapToDart(P.JsObject__convertDataTree(object));
6328 },
6329
6330 JsObject__convertDataTree: function(data) {
6331 return new P.JsObject__convertDataTree__convert(P.HashMap_HashMap$identity(nul l, null)).call$1(data);
6332 }}
6333
6334 },
6335
6336 JsObject__convertDataTree__convert: {"": "Closure;_convertedObjects_0",
6337 call$1: function(o) {
6338 var t1, t2, convertedMap, key, convertedList;
6339 t1 = this._convertedObjects_0;
6340 if (t1.containsKey$1(o))
6341 return t1.$index(t1, o);
6342 t2 = J.getInterceptor(o);
6343 if (typeof o === "object" && o !== null && !!t2.$isMap) {
6344 convertedMap = {};
6345 t1.$indexSet(t1, o, convertedMap);
6346 for (t1 = o.get$keys(), t1 = t1.get$iterator(t1); t1.moveNext$0();) {
6347 key = t1.get$current();
6348 convertedMap[key] = this.call$1(t2.$index(o, key));
6349 }
6350 return convertedMap;
6351 } else if (typeof o === "object" && o !== null && (o.constructor === Array | | !!t2.$isIterable)) {
6352 convertedList = [];
6353 t1.$indexSet(t1, o, convertedList);
6354 C.JSArray_methods.addAll$1(convertedList, t2.map$1(o, this));
6355 return convertedList;
6356 } else
6357 return P._convertToJS(o);
6358 },
6359 "+call:1:0": 0,
6360 $isFunction: true,
6361 $is_args1: true
6362 },
6363
6364 JsFunction: {"": "JsObject;_jsObject", static: {
6365 JsFunction_JsFunction$withThis: function(f) {
6366 return new P.JsFunction(P._convertDartFunction(f, true));
6367 }}
6368 },
6369
6370 JsArray: {"": "JsObject_ListMixin;_jsObject",
6371 $index: function(_, index) {
6372 var t1;
6373 if (typeof index === "number" && index === C.JSNumber_methods.toInt$0(index) ) {
6374 if (typeof index === "number" && Math.floor(index) === index)
6375 if (!(index < 0)) {
6376 t1 = P.JsObject.prototype.$index.call(this, this, "length");
6377 if (typeof t1 !== "number")
6378 throw H.iae(t1);
6379 t1 = index >= t1;
6380 } else
6381 t1 = true;
6382 else
6383 t1 = false;
6384 if (t1)
6385 H.throwExpression(P.RangeError$range(index, 0, P.JsObject.prototype.$ind ex.call(this, this, "length")));
6386 }
6387 return P.JsObject.prototype.$index.call(this, this, index);
6388 },
6389 $indexSet: function(_, index, value) {
6390 var t1;
6391 if (typeof index === "number" && index === C.JSNumber_methods.toInt$0(index) ) {
6392 if (typeof index === "number" && Math.floor(index) === index)
6393 if (!(index < 0)) {
6394 t1 = P.JsObject.prototype.$index.call(this, this, "length");
6395 if (typeof t1 !== "number")
6396 throw H.iae(t1);
6397 t1 = index >= t1;
6398 } else
6399 t1 = true;
6400 else
6401 t1 = false;
6402 if (t1)
6403 H.throwExpression(P.RangeError$range(index, 0, P.JsObject.prototype.$ind ex.call(this, this, "length")));
6404 }
6405 P.JsObject.prototype.$indexSet.call(this, this, index, value);
6406 },
6407 get$length: function(_) {
6408 return P.JsObject.prototype.$index.call(this, this, "length");
6409 },
6410 $asList: null,
6411 $asIterable: null
6412 },
6413
6414 JsObject_ListMixin: {"": "JsObject+ListMixin;", $isList: true, $asList: null, $i sEfficientLength: true, $isIterable: true, $asIterable: null},
6415
6416 _convertToJS_closure: {"": "Closure;",
6417 call$1: function(o) {
6418 var jsFunction = P._convertDartFunction(o, false);
6419 P._defineProperty(jsFunction, "_$dart_dartClosure", o);
6420 return jsFunction;
6421 },
6422 "+call:1:0": 0,
6423 $isFunction: true,
6424 $is_args1: true
6425 },
6426
6427 _convertToJS_closure0: {"": "Closure;",
6428 call$1: function(o) {
6429 return new DartObject(o);
6430 },
6431 "+call:1:0": 0,
6432 $isFunction: true,
6433 $is_args1: true
6434 },
6435
6436 _wrapToDart_closure: {"": "Closure;",
6437 call$1: function(o) {
6438 return new P.JsFunction(o);
6439 },
6440 "+call:1:0": 0,
6441 $isFunction: true,
6442 $is_args1: true
6443 },
6444
6445 _wrapToDart_closure0: {"": "Closure;",
6446 call$1: function(o) {
6447 var t1 = new P.JsArray(o);
6448 H.setRuntimeTypeInfo(t1, [null]);
6449 return t1;
6450 },
6451 "+call:1:0": 0,
6452 $isFunction: true,
6453 $is_args1: true
6454 },
6455
6456 _wrapToDart_closure1: {"": "Closure;",
6457 call$1: function(o) {
6458 return new P.JsObject(o);
6459 },
6460 "+call:1:0": 0,
6461 $isFunction: true,
6462 $is_args1: true
6463 }}],
6464 ["dart.typed_data", "dart:typed_data", , P, {
6465 TypedData: {"": "Interceptor;",
6466 _invalidIndex$2: function(receiver, index, $length) {
6467 var t1 = J.getInterceptor$n(index);
6468 if (t1.$lt(index, 0) || t1.$ge(index, $length))
6469 throw H.wrapException(P.RangeError$range(index, 0, $length));
6470 else
6471 throw H.wrapException(new P.ArgumentError("Invalid list index " + H.S(inde x)));
6472 },
6473 $isTypedData: true,
6474 "%": "DataView;ArrayBufferView;TypedData_ListMixin|TypedData_ListMixin_FixedLe ngthListMixin|TypedData_ListMixin0|TypedData_ListMixin_FixedLengthListMixin0|Typ edData_ListMixin1|TypedData_ListMixin_FixedLengthListMixin1|TypedData_ListMixin2 |TypedData_ListMixin_FixedLengthListMixin2|TypedData_ListMixin3|TypedData_ListMi xin_FixedLengthListMixin3|TypedData_ListMixin4|TypedData_ListMixin_FixedLengthLi stMixin4|TypedData_ListMixin5|TypedData_ListMixin_FixedLengthListMixin5|TypedDat a_ListMixin6|TypedData_ListMixin_FixedLengthListMixin6|TypedData_ListMixin7|Type dData_ListMixin_FixedLengthListMixin7|Int64List|Uint64List"
6475 },
6476
6477 Float32List: {"": "TypedData_ListMixin_FixedLengthListMixin;",
6478 get$length: function(receiver) {
6479 return C.JS_CONST_ZYJ(receiver);
6480 },
6481 $index: function(receiver, index) {
6482 var t1 = C.JS_CONST_ZYJ(receiver);
6483 if (index >>> 0 != index || J.$ge$n(index, t1))
6484 this._invalidIndex$2(receiver, index, t1);
6485 return receiver[index];
6486 },
6487 $indexSet: function(receiver, index, value) {
6488 var t1 = C.JS_CONST_ZYJ(receiver);
6489 if (index >>> 0 != index || J.$ge$n(index, t1))
6490 this._invalidIndex$2(receiver, index, t1);
6491 receiver[index] = value;
6492 },
6493 $asList: function() {
6494 return [J.JSDouble];
6495 },
6496 $asIterable: function() {
6497 return [J.JSDouble];
6498 },
6499 $isList: true,
6500 $isEfficientLength: true,
6501 $isIterable: true,
6502 $isJavaScriptIndexingBehavior: true,
6503 "%": "Float32Array"
6504 },
6505
6506 Float64List: {"": "TypedData_ListMixin_FixedLengthListMixin0;",
6507 get$length: function(receiver) {
6508 return C.JS_CONST_ZYJ(receiver);
6509 },
6510 $index: function(receiver, index) {
6511 var t1 = C.JS_CONST_ZYJ(receiver);
6512 if (index >>> 0 != index || J.$ge$n(index, t1))
6513 this._invalidIndex$2(receiver, index, t1);
6514 return receiver[index];
6515 },
6516 $indexSet: function(receiver, index, value) {
6517 var t1 = C.JS_CONST_ZYJ(receiver);
6518 if (index >>> 0 != index || J.$ge$n(index, t1))
6519 this._invalidIndex$2(receiver, index, t1);
6520 receiver[index] = value;
6521 },
6522 $asList: function() {
6523 return [J.JSDouble];
6524 },
6525 $asIterable: function() {
6526 return [J.JSDouble];
6527 },
6528 $isList: true,
6529 $isEfficientLength: true,
6530 $isIterable: true,
6531 $isJavaScriptIndexingBehavior: true,
6532 "%": "Float64Array"
6533 },
6534
6535 Int16List: {"": "TypedData_ListMixin_FixedLengthListMixin1;",
6536 get$length: function(receiver) {
6537 return C.JS_CONST_ZYJ(receiver);
6538 },
6539 $index: function(receiver, index) {
6540 var t1 = C.JS_CONST_ZYJ(receiver);
6541 if (index >>> 0 != index || J.$ge$n(index, t1))
6542 this._invalidIndex$2(receiver, index, t1);
6543 return receiver[index];
6544 },
6545 $indexSet: function(receiver, index, value) {
6546 var t1 = C.JS_CONST_ZYJ(receiver);
6547 if (index >>> 0 != index || J.$ge$n(index, t1))
6548 this._invalidIndex$2(receiver, index, t1);
6549 receiver[index] = value;
6550 },
6551 $asList: function() {
6552 return [J.JSInt];
6553 },
6554 $asIterable: function() {
6555 return [J.JSInt];
6556 },
6557 $isList: true,
6558 $isEfficientLength: true,
6559 $isIterable: true,
6560 $isJavaScriptIndexingBehavior: true,
6561 "%": "Int16Array"
6562 },
6563
6564 Int32List: {"": "TypedData_ListMixin_FixedLengthListMixin2;",
6565 get$length: function(receiver) {
6566 return C.JS_CONST_ZYJ(receiver);
6567 },
6568 $index: function(receiver, index) {
6569 var t1 = C.JS_CONST_ZYJ(receiver);
6570 if (index >>> 0 != index || J.$ge$n(index, t1))
6571 this._invalidIndex$2(receiver, index, t1);
6572 return receiver[index];
6573 },
6574 $indexSet: function(receiver, index, value) {
6575 var t1 = C.JS_CONST_ZYJ(receiver);
6576 if (index >>> 0 != index || J.$ge$n(index, t1))
6577 this._invalidIndex$2(receiver, index, t1);
6578 receiver[index] = value;
6579 },
6580 $asList: function() {
6581 return [J.JSInt];
6582 },
6583 $asIterable: function() {
6584 return [J.JSInt];
6585 },
6586 $isList: true,
6587 $isEfficientLength: true,
6588 $isIterable: true,
6589 $isJavaScriptIndexingBehavior: true,
6590 "%": "Int32Array"
6591 },
6592
6593 Int8List: {"": "TypedData_ListMixin_FixedLengthListMixin3;",
6594 get$length: function(receiver) {
6595 return C.JS_CONST_ZYJ(receiver);
6596 },
6597 $index: function(receiver, index) {
6598 var t1 = C.JS_CONST_ZYJ(receiver);
6599 if (index >>> 0 != index || J.$ge$n(index, t1))
6600 this._invalidIndex$2(receiver, index, t1);
6601 return receiver[index];
6602 },
6603 $indexSet: function(receiver, index, value) {
6604 var t1 = C.JS_CONST_ZYJ(receiver);
6605 if (index >>> 0 != index || J.$ge$n(index, t1))
6606 this._invalidIndex$2(receiver, index, t1);
6607 receiver[index] = value;
6608 },
6609 $asList: function() {
6610 return [J.JSInt];
6611 },
6612 $asIterable: function() {
6613 return [J.JSInt];
6614 },
6615 $isList: true,
6616 $isEfficientLength: true,
6617 $isIterable: true,
6618 $isJavaScriptIndexingBehavior: true,
6619 "%": "Int8Array"
6620 },
6621
6622 Uint16List: {"": "TypedData_ListMixin_FixedLengthListMixin4;",
6623 get$length: function(receiver) {
6624 return C.JS_CONST_ZYJ(receiver);
6625 },
6626 $index: function(receiver, index) {
6627 var t1 = C.JS_CONST_ZYJ(receiver);
6628 if (index >>> 0 != index || J.$ge$n(index, t1))
6629 this._invalidIndex$2(receiver, index, t1);
6630 return receiver[index];
6631 },
6632 $indexSet: function(receiver, index, value) {
6633 var t1 = C.JS_CONST_ZYJ(receiver);
6634 if (index >>> 0 != index || J.$ge$n(index, t1))
6635 this._invalidIndex$2(receiver, index, t1);
6636 receiver[index] = value;
6637 },
6638 $asList: function() {
6639 return [J.JSInt];
6640 },
6641 $asIterable: function() {
6642 return [J.JSInt];
6643 },
6644 $isList: true,
6645 $isEfficientLength: true,
6646 $isIterable: true,
6647 $isJavaScriptIndexingBehavior: true,
6648 "%": "Uint16Array"
6649 },
6650
6651 Uint32List: {"": "TypedData_ListMixin_FixedLengthListMixin5;",
6652 get$length: function(receiver) {
6653 return C.JS_CONST_ZYJ(receiver);
6654 },
6655 $index: function(receiver, index) {
6656 var t1 = C.JS_CONST_ZYJ(receiver);
6657 if (index >>> 0 != index || J.$ge$n(index, t1))
6658 this._invalidIndex$2(receiver, index, t1);
6659 return receiver[index];
6660 },
6661 $indexSet: function(receiver, index, value) {
6662 var t1 = C.JS_CONST_ZYJ(receiver);
6663 if (index >>> 0 != index || J.$ge$n(index, t1))
6664 this._invalidIndex$2(receiver, index, t1);
6665 receiver[index] = value;
6666 },
6667 $asList: function() {
6668 return [J.JSInt];
6669 },
6670 $asIterable: function() {
6671 return [J.JSInt];
6672 },
6673 $isList: true,
6674 $isEfficientLength: true,
6675 $isIterable: true,
6676 $isJavaScriptIndexingBehavior: true,
6677 "%": "Uint32Array"
6678 },
6679
6680 Uint8ClampedList: {"": "TypedData_ListMixin_FixedLengthListMixin6;",
6681 get$length: function(receiver) {
6682 return C.JS_CONST_ZYJ(receiver);
6683 },
6684 $index: function(receiver, index) {
6685 var t1 = C.JS_CONST_ZYJ(receiver);
6686 if (index >>> 0 != index || J.$ge$n(index, t1))
6687 this._invalidIndex$2(receiver, index, t1);
6688 return receiver[index];
6689 },
6690 $indexSet: function(receiver, index, value) {
6691 var t1 = C.JS_CONST_ZYJ(receiver);
6692 if (index >>> 0 != index || J.$ge$n(index, t1))
6693 this._invalidIndex$2(receiver, index, t1);
6694 receiver[index] = value;
6695 },
6696 $asList: function() {
6697 return [J.JSInt];
6698 },
6699 $asIterable: function() {
6700 return [J.JSInt];
6701 },
6702 $isList: true,
6703 $isEfficientLength: true,
6704 $isIterable: true,
6705 $isJavaScriptIndexingBehavior: true,
6706 "%": "CanvasPixelArray|Uint8ClampedArray"
6707 },
6708
6709 Uint8List: {"": "TypedData_ListMixin_FixedLengthListMixin7;",
6710 get$length: function(receiver) {
6711 return C.JS_CONST_ZYJ(receiver);
6712 },
6713 $index: function(receiver, index) {
6714 var t1 = C.JS_CONST_ZYJ(receiver);
6715 if (index >>> 0 != index || J.$ge$n(index, t1))
6716 this._invalidIndex$2(receiver, index, t1);
6717 return receiver[index];
6718 },
6719 $indexSet: function(receiver, index, value) {
6720 var t1 = C.JS_CONST_ZYJ(receiver);
6721 if (index >>> 0 != index || J.$ge$n(index, t1))
6722 this._invalidIndex$2(receiver, index, t1);
6723 receiver[index] = value;
6724 },
6725 $asList: function() {
6726 return [J.JSInt];
6727 },
6728 $asIterable: function() {
6729 return [J.JSInt];
6730 },
6731 $isList: true,
6732 $isEfficientLength: true,
6733 $isIterable: true,
6734 $isJavaScriptIndexingBehavior: true,
6735 "%": ";Uint8Array"
6736 },
6737
6738 TypedData_ListMixin: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6739
6740 TypedData_ListMixin_FixedLengthListMixin: {"": "TypedData_ListMixin+FixedLengthL istMixin;", $asList: null, $asIterable: null},
6741
6742 TypedData_ListMixin0: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6743
6744 TypedData_ListMixin_FixedLengthListMixin0: {"": "TypedData_ListMixin0+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6745
6746 TypedData_ListMixin1: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6747
6748 TypedData_ListMixin_FixedLengthListMixin1: {"": "TypedData_ListMixin1+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6749
6750 TypedData_ListMixin2: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6751
6752 TypedData_ListMixin_FixedLengthListMixin2: {"": "TypedData_ListMixin2+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6753
6754 TypedData_ListMixin3: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6755
6756 TypedData_ListMixin_FixedLengthListMixin3: {"": "TypedData_ListMixin3+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6757
6758 TypedData_ListMixin4: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6759
6760 TypedData_ListMixin_FixedLengthListMixin4: {"": "TypedData_ListMixin4+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6761
6762 TypedData_ListMixin5: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6763
6764 TypedData_ListMixin_FixedLengthListMixin5: {"": "TypedData_ListMixin5+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6765
6766 TypedData_ListMixin6: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6767
6768 TypedData_ListMixin_FixedLengthListMixin6: {"": "TypedData_ListMixin6+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6769
6770 TypedData_ListMixin7: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true, $isIterable: true, $asIterable: null},
6771
6772 TypedData_ListMixin_FixedLengthListMixin7: {"": "TypedData_ListMixin7+FixedLengt hListMixin;", $asList: null, $asIterable: null},
6773
6774 Int64List: {"": "TypedData;", $isList: true,
6775 $asList: function() {
6776 return [J.JSInt];
6777 },
6778 $isEfficientLength: true,
6779 $isIterable: true,
6780 $asIterable: function() {
6781 return [J.JSInt];
6782 },
6783 $isJavaScriptIndexingBehavior: true,
6784 static: {
6785 "": "Int64List_BYTES_PER_ELEMENT",
6786 }
6787
6788 },
6789
6790 Uint64List: {"": "TypedData;", $isList: true,
6791 $asList: function() {
6792 return [J.JSInt];
6793 },
6794 $isEfficientLength: true,
6795 $isIterable: true,
6796 $asIterable: function() {
6797 return [J.JSInt];
6798 },
6799 $isJavaScriptIndexingBehavior: true,
6800 static: {
6801 "": "Uint64List_BYTES_PER_ELEMENT",
6802 }
6803
6804 }}],
6805 ["", "gauge.dart", , Y, {
6806 main: function() {
6807 Y.Gauge_load().then$1(new Y.main_closure());
6808 },
6809
6810 Gauge: {"": "Object;jsOptions,jsTable,jsChart,_gauge$_value",
6811 draw$0: function() {
6812 this.jsTable.callMethod$2("setValue", [0, 1, this._gauge$_value]);
6813 this.jsChart.callMethod$2("draw", [this.jsTable, this.jsOptions]);
6814 },
6815 Gauge$4: function(element, title, _value, options) {
6816 var t1, vis;
6817 t1 = this._gauge$_value;
6818 vis = J.$index$asx(J.$index$asx($.get$context(), "google"), "visualization") ;
6819 this.jsTable = vis.callMethod$2("arrayToDataTable", [P.JsObject_JsObject$jsi fy([["Label", "Value"], [title, t1]])]);
6820 this.jsChart = P.JsObject_JsObject(J.$index$asx(vis, "Gauge"), [element]);
6821 this.jsOptions = P.JsObject_JsObject$jsify(options);
6822 this.draw$0();
6823 },
6824 static: {
6825 Gauge$: function(element, title, _value, options) {
6826 var t1 = new Y.Gauge(null, null, null, _value);
6827 t1.Gauge$4(element, title, _value, options);
6828 return t1;
6829 },
6830
6831 Gauge_load: function() {
6832 var t1, c;
6833 t1 = null;
6834 c = new P._AsyncCompleter(P._Future$(t1));
6835 H.setRuntimeTypeInfo(c, [t1]);
6836 J.$index$asx($.get$context(), "google").callMethod$2("load", ["visualization", "1", P.JsObject_JsObject$jsify(H.fillLiteralMap(["packages", ["gauge"], "callba ck", P.JsFunction_JsFunction$withThis(c.get$complete(c))], P.LinkedHashMap_Linke dHashMap(null, null, null, null, null)))]);
6837 return c.future;
6838 }}
6839
6840 },
6841
6842 main_closure: {"": "Closure;",
6843 call$1: function(_) {
6844 var t1, gauge, t2;
6845 t1 = new Y.main__sliderValue();
6846 gauge = Y.Gauge$($.get$visualization(), "Slider", t1.call$0(), H.fillLiteral Map(["min", 0, "max", 280, "yellowFrom", 200, "yellowTo", 250, "redFrom", 250, " redTo", 280, "minorTicks", 5], P.LinkedHashMap_LinkedHashMap(null, null, null, n ull, null)));
6847 t2 = $.get$slider();
6848 t2.toString;
6849 t2 = new W._ElementEventStreamImpl(t2, C.EventStreamProvider_change._eventTy pe, false);
6850 H.setRuntimeTypeInfo(t2, [null]);
6851 t1 = new W._EventStreamSubscription(0, t2._target, t2._eventType, W._wrapZon e(new Y.main__closure(t1, gauge)), t2._useCapture);
6852 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(t2, "_EventStream", 0)]);
6853 t1._tryResume$0();
6854 },
6855 "+call:1:0": 0,
6856 $isFunction: true,
6857 $is_args1: true
6858 },
6859
6860 main__sliderValue: {"": "Closure;",
6861 call$0: function() {
6862 return H.Primitives_parseInt(J.get$value$x($.get$slider()), null, null);
6863 },
6864 "+call:0:0": 0,
6865 $isFunction: true
6866 },
6867
6868 main__closure: {"": "Closure;sliderValue_0,gauge_1",
6869 call$1: function(_) {
6870 var t1, t2;
6871 t1 = this.gauge_1;
6872 t2 = this.sliderValue_0.call$0();
6873 t1._gauge$_value = t2;
6874 t1.draw$0();
6875 return t2;
6876 },
6877 "+call:1:0": 0,
6878 $isFunction: true,
6879 $is_args1: true
6880 }},
6881 1],
6882 ]);
6883 Isolate.$finishClasses($$, $, null);
6884 $$ = null;
6885
6886 // Static function getters
6887 init.globalFunctions.IsolateNatives__processWorkerMessage$closure = H.IsolateNat ives__processWorkerMessage$closure = new H.Closure$2(H.IsolateNatives__processWo rkerMessage, "IsolateNatives__processWorkerMessage$closure");
6888 init.globalFunctions.Primitives__throwFormatException$closure = H.Primitives__th rowFormatException$closure = new H.Closure$1(H.Primitives__throwFormatException, "Primitives__throwFormatException$closure");
6889 init.globalFunctions.toStringWrapper$closure = H.toStringWrapper$closure = new H .Closure$0(H.toStringWrapper, "toStringWrapper$closure");
6890 init.globalFunctions.invokeClosure$closure = H.invokeClosure$closure = new H.Clo sure$7(H.invokeClosure, "invokeClosure$closure");
6891 init.globalFunctions._asyncRunCallback$closure = P._asyncRunCallback$closure = n ew H.Closure$0(P._asyncRunCallback, "_asyncRunCallback$closure");
6892 init.globalFunctions._nullDataHandler$closure = P._nullDataHandler$closure = new H.Closure$1(P._nullDataHandler, "_nullDataHandler$closure");
6893 init.globalFunctions._nullErrorHandler$closure = P._nullErrorHandler$closure = n ew P.Closure$20(P._nullErrorHandler, "_nullErrorHandler$closure");
6894 init.globalFunctions._nullDoneHandler$closure = P._nullDoneHandler$closure = new H.Closure$0(P._nullDoneHandler, "_nullDoneHandler$closure");
6895 init.globalFunctions._defaultEquals$closure = P._defaultEquals$closure = new H.C losure$2(P._defaultEquals, "_defaultEquals$closure");
6896 init.globalFunctions._defaultHashCode$closure = P._defaultHashCode$closure = new H.Closure$1(P._defaultHashCode, "_defaultHashCode$closure");
6897 init.globalFunctions.identical$closure = P.identical$closure = new H.Closure$2(P .identical, "identical$closure");
6898 init.globalFunctions.identityHashCode$closure = P.identityHashCode$closure = new H.Closure$1(P.identityHashCode, "identityHashCode$closure");
6899 init.globalFunctions._callDartFunction$closure = P._callDartFunction$closure = n ew P.Closure$4(P._callDartFunction, "_callDartFunction$closure");
6900 init.globalFunctions._convertToJS$closure = P._convertToJS$closure = new H.Closu re$1(P._convertToJS, "_convertToJS$closure");
6901 init.globalFunctions._convertToDart$closure = P._convertToDart$closure = new H.C losure$1(P._convertToDart, "_convertToDart$closure");
6902 init.globalFunctions.main$closure = Y.main$closure = new H.Closure$0(Y.main, "ma in$closure");
6903 // Runtime type support
6904 J.JSInt.$isint = true;
6905 J.JSInt.$isObject = true;
6906 J.JSDouble.$isObject = true;
6907 J.JSString.$isString = true;
6908 J.JSString.$isObject = true;
6909 J.JSNumber.$isObject = true;
6910 P.Duration.$isObject = true;
6911 W.Event.$isObject = true;
6912 P.Symbol.$isSymbol = true;
6913 P.Symbol.$isObject = true;
6914 P.ReceivePort.$isObject = true;
6915 H._IsolateEvent.$isObject = true;
6916 H._IsolateContext.$isObject = true;
6917 J.JSArray.$isList = true;
6918 J.JSArray.$isObject = true;
6919 P.StackTrace.$isStackTrace = true;
6920 P.StackTrace.$isObject = true;
6921 P.Object.$isObject = true;
6922 P.Function.$isFunction = true;
6923 P.Function.$isObject = true;
6924 J.JSBool.$isbool = true;
6925 J.JSBool.$isObject = true;
6926 P._EventSink.$is_EventSink = true;
6927 P._EventSink.$isObject = true;
6928 P.Future.$isFuture = true;
6929 P.Future.$isObject = true;
6930 P.StreamSubscription.$isStreamSubscription = true;
6931 P.StreamSubscription.$isObject = true;
6932 // getInterceptor methods
6933 J.getInterceptor = function(receiver) {
6934 if (typeof receiver == "number") {
6935 if (Math.floor(receiver) == receiver)
6936 return J.JSInt.prototype;
6937 return J.JSDouble.prototype;
6938 }
6939 if (typeof receiver == "string")
6940 return J.JSString.prototype;
6941 if (receiver == null)
6942 return J.JSNull.prototype;
6943 if (typeof receiver == "boolean")
6944 return J.JSBool.prototype;
6945 if (receiver.constructor == Array)
6946 return J.JSArray.prototype;
6947 if (typeof receiver != "object")
6948 return receiver;
6949 if (receiver instanceof P.Object)
6950 return receiver;
6951 return J.getNativeInterceptor(receiver);
6952 };
6953 J.getInterceptor$asx = function(receiver) {
6954 if (typeof receiver == "string")
6955 return J.JSString.prototype;
6956 if (receiver == null)
6957 return receiver;
6958 if (receiver.constructor == Array)
6959 return J.JSArray.prototype;
6960 if (typeof receiver != "object")
6961 return receiver;
6962 if (receiver instanceof P.Object)
6963 return receiver;
6964 return J.getNativeInterceptor(receiver);
6965 };
6966 J.getInterceptor$ax = function(receiver) {
6967 if (receiver == null)
6968 return receiver;
6969 if (receiver.constructor == Array)
6970 return J.JSArray.prototype;
6971 if (typeof receiver != "object")
6972 return receiver;
6973 if (receiver instanceof P.Object)
6974 return receiver;
6975 return J.getNativeInterceptor(receiver);
6976 };
6977 J.getInterceptor$n = function(receiver) {
6978 if (typeof receiver == "number")
6979 return J.JSNumber.prototype;
6980 if (receiver == null)
6981 return receiver;
6982 if (!(receiver instanceof P.Object))
6983 return J.UnknownJavaScriptObject.prototype;
6984 return receiver;
6985 };
6986 J.getInterceptor$s = function(receiver) {
6987 if (typeof receiver == "string")
6988 return J.JSString.prototype;
6989 if (receiver == null)
6990 return receiver;
6991 if (!(receiver instanceof P.Object))
6992 return J.UnknownJavaScriptObject.prototype;
6993 return receiver;
6994 };
6995 J.getInterceptor$x = function(receiver) {
6996 if (receiver == null)
6997 return receiver;
6998 if (typeof receiver != "object")
6999 return receiver;
7000 if (receiver instanceof P.Object)
7001 return receiver;
7002 return J.getNativeInterceptor(receiver);
7003 };
7004 C.C__DelayedDone = new P._DelayedDone();
7005 C.C__RootZone = new P._RootZone();
7006 C.Duration_0 = new P.Duration(0);
7007 C.EventStreamProvider_change = new W.EventStreamProvider("change");
7008 C.JSArray_methods = J.JSArray.prototype;
7009 C.JSInt_methods = J.JSInt.prototype;
7010 C.JSNumber_methods = J.JSNumber.prototype;
7011 C.JSString_methods = J.JSString.prototype;
7012 C.JS_CONST_0 = function(hooks) {
7013 if (typeof dartExperimentalFixupGetTag != "function") return hooks;
7014 hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag);
7015 };
7016 C.JS_CONST_6qb = function(hooks) {
7017 var userAgent = typeof navigator == "object" ? navigator.userAgent : "";
7018 if (userAgent.indexOf("Firefox") == -1) return hooks;
7019 var getTag = hooks.getTag;
7020 var quickMap = {
7021 "BeforeUnloadEvent": "Event",
7022 "DataTransfer": "Clipboard",
7023 "GeoGeolocation": "Geolocation",
7024 "WorkerMessageEvent": "MessageEvent",
7025 "XMLDocument": "Document"};
7026 function getTagFirefox(o) {
7027 var tag = getTag(o);
7028 return quickMap[tag] || tag;
7029 }
7030 hooks.getTag = getTagFirefox;
7031 };
7032 C.JS_CONST_86y = function getTagFallback(o) {
7033 if (o == null) return "Null";
7034 var constructor = o.constructor;
7035 if (typeof constructor == "function") {
7036 var name = constructor.builtin$cls;
7037 if (typeof name == "string") return name;
7038 name = constructor.name;
7039 if (typeof name == "string"
7040 && name !== ""
7041 && name !== "Object"
7042 && name !== "Function.prototype") {
7043 return name;
7044 }
7045 }
7046 var s = Object.prototype.toString.call(o);
7047 return s.substring(8, s.length - 1);
7048 };
7049 C.JS_CONST_Cbr = function(getTagFallback) {
7050 return function(hooks) {
7051 if (typeof navigator != "object") return hooks;
7052 var userAgent = navigator.userAgent;
7053 if (userAgent.indexOf("Chrome") >= 0 ||
7054 userAgent.indexOf("DumpRenderTree") >= 0) {
7055 return hooks;
7056 }
7057 hooks.getTag = getTagFallback;
7058 };
7059 };
7060 C.JS_CONST_Fs4 = function(hooks) { return hooks; }
7061 ;
7062 C.JS_CONST_TtD = function() {
7063 function typeNameInChrome(obj) { return obj.constructor.name; }
7064 function getUnknownTag(object, tag) {
7065 if (/^HTML[A-Z].*Element$/.test(tag)) {
7066 var name = Object.prototype.toString.call(object);
7067 if (name == "[object Object]") return null;
7068 return "HTMLElement";
7069 }
7070 }
7071 function getUnknownTagGenericBrowser(object, tag) {
7072 if (object instanceof HTMLElement) return "HTMLElement";
7073 return getUnknownTag(object, tag);
7074 }
7075 function prototypeForTag(tag) {
7076 if (typeof window == "undefined") return null;
7077 if (typeof window[tag] == "undefined") return null;
7078 var constructor = window[tag];
7079 if (typeof constructor != "function") return null;
7080 return constructor.prototype;
7081 }
7082 function discriminator(tag) { return null; }
7083 var isBrowser = typeof navigator == "object";
7084 return {
7085 getTag: typeNameInChrome,
7086 getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag,
7087 prototypeForTag: prototypeForTag,
7088 discriminator: discriminator };
7089 };
7090 C.JS_CONST_ZYJ = ((typeof version == "function" && typeof os == "object" && "system" in os)
7091 || (typeof navigator == "object"
7092 && navigator.userAgent.indexOf('Chrome') != -1))
7093 ? function(x) { return x.$dartCachedLength || x.length; }
7094 : function(x) { return x.length; };
7095 ;
7096 C.JS_CONST_rD3 = function(hooks) {
7097 var userAgent = typeof navigator == "object" ? navigator.userAgent : "";
7098 if (userAgent.indexOf("Trident/") == -1) return hooks;
7099 var getTag = hooks.getTag;
7100 var quickMap = {
7101 "BeforeUnloadEvent": "Event",
7102 "DataTransfer": "Clipboard",
7103 "HTMLDDElement": "HTMLElement",
7104 "HTMLDTElement": "HTMLElement",
7105 "HTMLPhraseElement": "HTMLElement",
7106 "Position": "Geoposition"
7107 };
7108 function getTagIE(o) {
7109 var tag = getTag(o);
7110 var newTag = quickMap[tag];
7111 if (newTag) return newTag;
7112 if (tag == "Document") {
7113 if (!!o.xmlVersion) return "!Document";
7114 return "!HTMLDocument";
7115 }
7116 if (tag == "Object") {
7117 if (window.DataView && (o instanceof window.DataView)) return "DataView";
7118 }
7119 return tag;
7120 }
7121 function prototypeForTagIE(tag) {
7122 if (tag == "Document") return null;
7123 var constructor = window[tag];
7124 if (constructor == null) return null;
7125 return constructor.prototype;
7126 }
7127 hooks.getTag = getTagIE;
7128 hooks.prototypeForTag = prototypeForTagIE;
7129 };
7130 Isolate.makeConstantList = function(list) {
7131 list.immutable$list = true;
7132 list.fixed$length = true;
7133 return list;
7134 };
7135 C.List_empty = Isolate.makeConstantList([]);
7136 C.Symbol_call = new H.Symbol0("call");
7137 C.Type_oqh = H.createRuntimeType('Uint64List');
7138 C.Type_qxd = H.createRuntimeType('Int64List');
7139 C.UnknownJavaScriptObject_methods = J.UnknownJavaScriptObject.prototype;
7140 $.lazyPort = null;
7141 $.ReceivePortImpl__nextFreeId = 1;
7142 $.Primitives_mirrorFunctionCacheName = "$cachedFunction";
7143 $.Primitives_mirrorInvokeCacheName = "$cachedInvocation";
7144 $.getTagFunction = null;
7145 $.alternateTagFunction = null;
7146 $.prototypeForTagFunction = null;
7147 $.dispatchRecordsForInstanceTags = null;
7148 $.interceptorsForUncacheableTags = null;
7149 $.initNativeDispatchFlag = null;
7150 $.printToZone = null;
7151 $._callbacksAreEnqueued = false;
7152 $.Zone__current = C.C__RootZone;
7153 $.Expando__keyCount = 0;
7154 $.Device__isOpera = null;
7155 $.Device__isWebKit = null;
7156 J.$eq = function(receiver, a0) {
7157 if (receiver == null)
7158 return a0 == null;
7159 if (typeof receiver != "object")
7160 return a0 != null && receiver === a0;
7161 return J.getInterceptor(receiver).$eq(receiver, a0);
7162 };
7163 J.$ge$n = function(receiver, a0) {
7164 if (typeof receiver == "number" && typeof a0 == "number")
7165 return receiver >= a0;
7166 return J.getInterceptor$n(receiver).$ge(receiver, a0);
7167 };
7168 J.$gt$n = function(receiver, a0) {
7169 if (typeof receiver == "number" && typeof a0 == "number")
7170 return receiver > a0;
7171 return J.getInterceptor$n(receiver).$gt(receiver, a0);
7172 };
7173 J.$index$asx = function(receiver, a0) {
7174 if (receiver.constructor == Array || typeof receiver == "string" || H.isJsInde xable(receiver, receiver[init.dispatchPropertyName]))
7175 if (a0 >>> 0 === a0 && a0 < receiver.length)
7176 return receiver[a0];
7177 return J.getInterceptor$asx(receiver).$index(receiver, a0);
7178 };
7179 J.$indexSet$ax = function(receiver, a0, a1) {
7180 if ((receiver.constructor == Array || H.isJsIndexable(receiver, receiver[init. dispatchPropertyName])) && !receiver.immutable$list && a0 >>> 0 === a0 && a0 < r eceiver.length)
7181 return receiver[a0] = a1;
7182 return J.getInterceptor$ax(receiver).$indexSet(receiver, a0, a1);
7183 };
7184 J.$shl$n = function(receiver, a0) {
7185 return J.getInterceptor$n(receiver).$shl(receiver, a0);
7186 };
7187 J.addEventListener$3$x = function(receiver, a0, a1, a2) {
7188 return J.getInterceptor$x(receiver).addEventListener$3(receiver, a0, a1, a2);
7189 };
7190 J.elementAt$1$ax = function(receiver, a0) {
7191 return J.getInterceptor$ax(receiver).elementAt$1(receiver, a0);
7192 };
7193 J.forEach$1$ax = function(receiver, a0) {
7194 return J.getInterceptor$ax(receiver).forEach$1(receiver, a0);
7195 };
7196 J.get$error$x = function(receiver) {
7197 return J.getInterceptor$x(receiver).get$error(receiver);
7198 };
7199 J.get$hashCode$ = function(receiver) {
7200 return J.getInterceptor(receiver).get$hashCode(receiver);
7201 };
7202 J.get$iterator$ax = function(receiver) {
7203 return J.getInterceptor$ax(receiver).get$iterator(receiver);
7204 };
7205 J.get$length$asx = function(receiver) {
7206 return J.getInterceptor$asx(receiver).get$length(receiver);
7207 };
7208 J.get$value$x = function(receiver) {
7209 return J.getInterceptor$x(receiver).get$value(receiver);
7210 };
7211 J.map$1$ax = function(receiver, a0) {
7212 return J.getInterceptor$ax(receiver).map$1(receiver, a0);
7213 };
7214 J.noSuchMethod$1 = function(receiver, a0) {
7215 return J.getInterceptor(receiver).noSuchMethod$1(receiver, a0);
7216 };
7217 J.removeEventListener$3$x = function(receiver, a0, a1, a2) {
7218 return J.getInterceptor$x(receiver).removeEventListener$3(receiver, a0, a1, a2 );
7219 };
7220 J.toString$0 = function(receiver) {
7221 return J.getInterceptor(receiver).toString$0(receiver);
7222 };
7223 Isolate.$lazy($, "globalThis", "globalThis", "get$globalThis", function() {
7224 return function() { return this; }();
7225 });
7226 Isolate.$lazy($, "globalWindow", "globalWindow", "get$globalWindow", function() {
7227 return $.get$globalThis().window;
7228 });
7229 Isolate.$lazy($, "globalWorker", "globalWorker", "get$globalWorker", function() {
7230 return $.get$globalThis().Worker;
7231 });
7232 Isolate.$lazy($, "globalPostMessageDefined", "globalPostMessageDefined", "get$gl obalPostMessageDefined", function() {
7233 return $.get$globalThis().postMessage !== void 0;
7234 });
7235 Isolate.$lazy($, "thisScript", "IsolateNatives_thisScript", "get$IsolateNatives_ thisScript", function() {
7236 return H.IsolateNatives_computeThisScript();
7237 });
7238 Isolate.$lazy($, "workerIds", "IsolateNatives_workerIds", "get$IsolateNatives_wo rkerIds", function() {
7239 return new P.Expando(null);
7240 });
7241 Isolate.$lazy($, "noSuchMethodPattern", "TypeErrorDecoder_noSuchMethodPattern", "get$TypeErrorDecoder_noSuchMethodPattern", function() {
7242 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn ({ toString: function() { return "$receiver$"; } }));
7243 });
7244 Isolate.$lazy($, "notClosurePattern", "TypeErrorDecoder_notClosurePattern", "get $TypeErrorDecoder_notClosurePattern", function() {
7245 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn ({ $method$: null, toString: function() { return "$receiver$"; } }));
7246 });
7247 Isolate.$lazy($, "nullCallPattern", "TypeErrorDecoder_nullCallPattern", "get$Typ eErrorDecoder_nullCallPattern", function() {
7248 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn (null));
7249 });
7250 Isolate.$lazy($, "nullLiteralCallPattern", "TypeErrorDecoder_nullLiteralCallPatt ern", "get$TypeErrorDecoder_nullLiteralCallPattern", function() {
7251 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn Null());
7252 });
7253 Isolate.$lazy($, "undefinedCallPattern", "TypeErrorDecoder_undefinedCallPattern" , "get$TypeErrorDecoder_undefinedCallPattern", function() {
7254 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn (void 0));
7255 });
7256 Isolate.$lazy($, "undefinedLiteralCallPattern", "TypeErrorDecoder_undefinedLiter alCallPattern", "get$TypeErrorDecoder_undefinedLiteralCallPattern", function() {
7257 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn Undefined());
7258 });
7259 Isolate.$lazy($, "nullPropertyPattern", "TypeErrorDecoder_nullPropertyPattern", "get$TypeErrorDecoder_nullPropertyPattern", function() {
7260 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOn(null));
7261 });
7262 Isolate.$lazy($, "nullLiteralPropertyPattern", "TypeErrorDecoder_nullLiteralProp ertyPattern", "get$TypeErrorDecoder_nullLiteralPropertyPattern", function() {
7263 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOnNull());
7264 });
7265 Isolate.$lazy($, "undefinedPropertyPattern", "TypeErrorDecoder_undefinedProperty Pattern", "get$TypeErrorDecoder_undefinedPropertyPattern", function() {
7266 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOn(void 0));
7267 });
7268 Isolate.$lazy($, "undefinedLiteralPropertyPattern", "TypeErrorDecoder_undefinedL iteralPropertyPattern", "get$TypeErrorDecoder_undefinedLiteralPropertyPattern", function() {
7269 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOnUndefined());
7270 });
7271 Isolate.$lazy($, "_toStringList", "IterableMixinWorkaround__toStringList", "get$ IterableMixinWorkaround__toStringList", function() {
7272 return P.List_List(null, null);
7273 });
7274 Isolate.$lazy($, "_asyncCallbacks", "_asyncCallbacks", "get$_asyncCallbacks", fu nction() {
7275 return P.ListQueue$(null, {func: "void_", void: true});
7276 });
7277 Isolate.$lazy($, "_toStringVisiting", "_toStringVisiting", "get$_toStringVisitin g", function() {
7278 return P.HashSet_HashSet$identity(null);
7279 });
7280 Isolate.$lazy($, "_toStringList", "Maps__toStringList", "get$Maps__toStringList" , function() {
7281 return P.List_List(null, null);
7282 });
7283 Isolate.$lazy($, "context", "context", "get$context", function() {
7284 return P._wrapToDart(function() { return this; }());
7285 });
7286 Isolate.$lazy($, "visualization", "visualization", "get$visualization", function () {
7287 return document.querySelector("#gauge");
7288 });
7289 Isolate.$lazy($, "slider", "slider", "get$slider", function() {
7290 return document.querySelector("#slider");
7291 });
7292 // Native classes
7293
7294 init.functionAliases = {};
7295 ;
7296 init.metadata = [,
7297 ];
7298 $ = null;
7299 Isolate = Isolate.$finishIsolateConstructor(Isolate);
7300 $ = new Isolate();
7301 function convertToFastObject(properties) {
7302 function MyClass() {};
7303 MyClass.prototype = properties;
7304 new MyClass();
7305 return properties;
7306 }
7307 A = convertToFastObject(A);
7308 B = convertToFastObject(B);
7309 C = convertToFastObject(C);
7310 D = convertToFastObject(D);
7311 E = convertToFastObject(E);
7312 F = convertToFastObject(F);
7313 G = convertToFastObject(G);
7314 H = convertToFastObject(H);
7315 J = convertToFastObject(J);
7316 K = convertToFastObject(K);
7317 L = convertToFastObject(L);
7318 M = convertToFastObject(M);
7319 N = convertToFastObject(N);
7320 O = convertToFastObject(O);
7321 P = convertToFastObject(P);
7322 Q = convertToFastObject(Q);
7323 R = convertToFastObject(R);
7324 S = convertToFastObject(S);
7325 T = convertToFastObject(T);
7326 U = convertToFastObject(U);
7327 V = convertToFastObject(V);
7328 W = convertToFastObject(W);
7329 X = convertToFastObject(X);
7330 Y = convertToFastObject(Y);
7331 Z = convertToFastObject(Z);
7332 !function() {
7333 var objectProto = Object.prototype;
7334 for (var i = 0;; i++) {
7335 var property = "___dart_dispatch_record_ZxYxX_0_";
7336 if (i > 0)
7337 property = rootProperty + "_" + i;
7338 if (!(property in objectProto))
7339 return init.dispatchPropertyName = property;
7340 }
7341 }();
7342 // BEGIN invoke [main].
7343 ;(function (callback) {
7344 if (typeof document === "undefined") {
7345 callback(null);
7346 return;
7347 }
7348 if (document.currentScript) {
7349 callback(document.currentScript);
7350 return;
7351 }
7352
7353 var scripts = document.scripts;
7354 function onLoad(event) {
7355 for (var i = 0; i < scripts.length; ++i) {
7356 scripts[i].removeEventListener("load", onLoad, false);
7357 }
7358 callback(event.target);
7359 }
7360 for (var i = 0; i < scripts.length; ++i) {
7361 scripts[i].addEventListener("load", onLoad, false);
7362 }
7363 })(function(currentScript) {
7364 init.currentScript = currentScript;
7365
7366 if (typeof dartMainRunner === "function") {
7367 dartMainRunner(function() { H.startRootIsolate(Y.main$closure); });
7368 } else {
7369 H.startRootIsolate(Y.main$closure);
7370 }
7371 });
7372 // END invoke [main].
7373 function init() {
7374 Isolate.$isolateProperties = {};
7375 function generateAccessor(field, accessors, cls) {
7376 var len = field.length;
7377 var code = field.charCodeAt(len - 1);
7378 var reflectable = false;
7379 if (code == 45) {
7380 len--;
7381 code = field.charCodeAt(len - 1);
7382 field = field.substring(0, len);
7383 reflectable = true;
7384 }
7385 code = code >= 60 && code <= 64 ? code - 59 : code >= 123 && code <= 126 ? c ode - 117 : code >= 37 && code <= 43 ? code - 27 : 0;
7386 if (code) {
7387 var getterCode = code & 3;
7388 var setterCode = code >> 2;
7389 var accessorName = field = field.substring(0, len - 1);
7390 var divider = field.indexOf(":");
7391 if (divider > 0) {
7392 accessorName = field.substring(0, divider);
7393 field = field.substring(divider + 1);
7394 }
7395 if (getterCode) {
7396 var args = getterCode & 2 ? "receiver" : "";
7397 var receiver = getterCode & 1 ? "this" : "receiver";
7398 var body = "return " + receiver + "." + field;
7399 var property = cls + ".prototype.get$" + accessorName + "=";
7400 var fn = "function(" + args + "){" + body + "}";
7401 if (reflectable)
7402 accessors.push(property + "$reflectable(" + fn + ");\n");
7403 else
7404 accessors.push(property + fn + ";\n");
7405 }
7406 if (setterCode) {
7407 var args = setterCode & 2 ? "receiver, value" : "value";
7408 var receiver = setterCode & 1 ? "this" : "receiver";
7409 var body = receiver + "." + field + " = value";
7410 var property = cls + ".prototype.set$" + accessorName + "=";
7411 var fn = "function(" + args + "){" + body + "}";
7412 if (reflectable)
7413 accessors.push(property + "$reflectable(" + fn + ");\n");
7414 else
7415 accessors.push(property + fn + ";\n");
7416 }
7417 }
7418 return field;
7419 }
7420 Isolate.$isolateProperties.$generateAccessor = generateAccessor;
7421 function defineClass(name, cls, fields) {
7422 var accessors = [];
7423 var str = "function " + cls + "(";
7424 var body = "";
7425 for (var i = 0; i < fields.length; i++) {
7426 if (i != 0)
7427 str += ", ";
7428 var field = generateAccessor(fields[i], accessors, cls);
7429 var parameter = "parameter_" + field;
7430 str += parameter;
7431 body += "this." + field + " = " + parameter + ";\n";
7432 }
7433 str += ") {\n" + body + "}\n";
7434 str += cls + ".builtin$cls=\"" + name + "\";\n";
7435 str += "$desc=$collectedClasses." + cls + ";\n";
7436 str += "if($desc instanceof Array) $desc = $desc[1];\n";
7437 str += cls + ".prototype = $desc;\n";
7438 if (typeof defineClass.name != "string") {
7439 str += cls + ".name=\"" + cls + "\";\n";
7440 }
7441 str += accessors.join("");
7442 return str;
7443 }
7444 var inheritFrom = function() {
7445 function tmp() {
7446 }
7447 var hasOwnProperty = Object.prototype.hasOwnProperty;
7448 return function(constructor, superConstructor) {
7449 tmp.prototype = superConstructor.prototype;
7450 var object = new tmp();
7451 var properties = constructor.prototype;
7452 for (var member in properties)
7453 if (hasOwnProperty.call(properties, member))
7454 object[member] = properties[member];
7455 object.constructor = constructor;
7456 constructor.prototype = object;
7457 return object;
7458 };
7459 }();
7460 Isolate.$finishClasses = function(collectedClasses, isolateProperties, existin gIsolateProperties) {
7461 var pendingClasses = {};
7462 if (!init.allClasses)
7463 init.allClasses = {};
7464 var allClasses = init.allClasses;
7465 var hasOwnProperty = Object.prototype.hasOwnProperty;
7466 if (typeof dart_precompiled == "function") {
7467 var constructors = dart_precompiled(collectedClasses);
7468 } else {
7469 var combinedConstructorFunction = "function $reflectable(fn){fn.$reflectab le=1;return fn};\n" + "var $desc;\n";
7470 var constructorsList = [];
7471 }
7472 for (var cls in collectedClasses) {
7473 if (hasOwnProperty.call(collectedClasses, cls)) {
7474 var desc = collectedClasses[cls];
7475 if (desc instanceof Array)
7476 desc = desc[1];
7477 var classData = desc[""], supr, name = cls, fields = classData;
7478 if (typeof classData == "string") {
7479 var split = classData.split("/");
7480 if (split.length == 2) {
7481 name = split[0];
7482 fields = split[1];
7483 }
7484 }
7485 var s = fields.split(";");
7486 fields = s[1] == "" ? [] : s[1].split(",");
7487 supr = s[0];
7488 if (supr && supr.indexOf("+") > 0) {
7489 s = supr.split("+");
7490 supr = s[0];
7491 var mixin = collectedClasses[s[1]];
7492 if (mixin instanceof Array)
7493 mixin = mixin[1];
7494 for (var d in mixin) {
7495 if (hasOwnProperty.call(mixin, d) && !hasOwnProperty.call(desc, d))
7496 desc[d] = mixin[d];
7497 }
7498 }
7499 if (typeof dart_precompiled != "function") {
7500 combinedConstructorFunction += defineClass(name, cls, fields);
7501 constructorsList.push(cls);
7502 }
7503 if (supr)
7504 pendingClasses[cls] = supr;
7505 }
7506 }
7507 if (typeof dart_precompiled != "function") {
7508 combinedConstructorFunction += "return [\n " + constructorsList.join(",\n ") + "\n]";
7509 var constructors = new Function("$collectedClasses", combinedConstructorFu nction)(collectedClasses);
7510 combinedConstructorFunction = null;
7511 }
7512 for (var i = 0; i < constructors.length; i++) {
7513 var constructor = constructors[i];
7514 var cls = constructor.name;
7515 var desc = collectedClasses[cls];
7516 var globalObject = isolateProperties;
7517 if (desc instanceof Array) {
7518 globalObject = desc[0] || isolateProperties;
7519 desc = desc[1];
7520 }
7521 allClasses[cls] = constructor;
7522 globalObject[cls] = constructor;
7523 }
7524 constructors = null;
7525 var finishedClasses = {};
7526 init.interceptorsByTag = Object.create(null);
7527 init.leafTags = {};
7528 function finishClass(cls) {
7529 var hasOwnProperty = Object.prototype.hasOwnProperty;
7530 if (hasOwnProperty.call(finishedClasses, cls))
7531 return;
7532 finishedClasses[cls] = true;
7533 var superclass = pendingClasses[cls];
7534 if (!superclass || typeof superclass != "string")
7535 return;
7536 finishClass(superclass);
7537 var constructor = allClasses[cls];
7538 var superConstructor = allClasses[superclass];
7539 if (!superConstructor)
7540 superConstructor = existingIsolateProperties[superclass];
7541 var prototype = inheritFrom(constructor, superConstructor);
7542 if (hasOwnProperty.call(prototype, "%")) {
7543 var nativeSpec = prototype["%"].split(";");
7544 if (nativeSpec[0]) {
7545 var tags = nativeSpec[0].split("|");
7546 for (var i = 0; i < tags.length; i++) {
7547 init.interceptorsByTag[tags[i]] = constructor;
7548 init.leafTags[tags[i]] = true;
7549 }
7550 }
7551 if (nativeSpec[1]) {
7552 tags = nativeSpec[1].split("|");
7553 if (nativeSpec[2]) {
7554 var subclasses = nativeSpec[2].split("|");
7555 for (var i = 0; i < subclasses.length; i++) {
7556 var subclass = allClasses[subclasses[i]];
7557 subclass.$nativeSuperclassTag = tags[0];
7558 }
7559 }
7560 for (i = 0; i < tags.length; i++) {
7561 init.interceptorsByTag[tags[i]] = constructor;
7562 init.leafTags[tags[i]] = false;
7563 }
7564 }
7565 }
7566 }
7567 for (var cls in pendingClasses)
7568 finishClass(cls);
7569 };
7570 Isolate.$lazy = function(prototype, staticName, fieldName, getterName, lazyVal ue) {
7571 var sentinelUndefined = {};
7572 var sentinelInProgress = {};
7573 prototype[fieldName] = sentinelUndefined;
7574 prototype[getterName] = function() {
7575 var result = $[fieldName];
7576 try {
7577 if (result === sentinelUndefined) {
7578 $[fieldName] = sentinelInProgress;
7579 try {
7580 result = $[fieldName] = lazyValue();
7581 } finally {
7582 if (result === sentinelUndefined) {
7583 if ($[fieldName] === sentinelInProgress) {
7584 $[fieldName] = null;
7585 }
7586 }
7587 }
7588 } else {
7589 if (result === sentinelInProgress)
7590 H.throwCyclicInit(staticName);
7591 }
7592 return result;
7593 } finally {
7594 $[getterName] = function() {
7595 return this[fieldName];
7596 };
7597 }
7598 };
7599 };
7600 Isolate.$finishIsolateConstructor = function(oldIsolate) {
7601 var isolateProperties = oldIsolate.$isolateProperties;
7602 function Isolate() {
7603 var hasOwnProperty = Object.prototype.hasOwnProperty;
7604 for (var staticName in isolateProperties)
7605 if (hasOwnProperty.call(isolateProperties, staticName))
7606 this[staticName] = isolateProperties[staticName];
7607 function ForceEfficientMap() {
7608 }
7609 ForceEfficientMap.prototype = this;
7610 new ForceEfficientMap();
7611 }
7612 Isolate.prototype = oldIsolate.prototype;
7613 Isolate.prototype.constructor = Isolate;
7614 Isolate.$isolateProperties = isolateProperties;
7615 Isolate.$finishClasses = oldIsolate.$finishClasses;
7616 Isolate.makeConstantList = oldIsolate.makeConstantList;
7617 return Isolate;
7618 };
7619 }
7620 })()
7621
7622 //# sourceMappingURL=gauge.dart.js.map
7623 //@ sourceMappingURL=gauge.dart.js.map
OLDNEW
« no previous file with comments | « src/site/samples/gauge/example/gauge.html ('k') | src/site/samples/gauge/example/gauge.dart.js.map » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698