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

Side by Side Diff: src/site/codelabs/darrrt/examples/2-inputnamebadge/piratebadge.dart.js

Issue 339243004: Update generated JS for codelab's pirate app. (Closed) Base URL: https://github.com/dart-lang/dartlang.org.git@master
Patch Set: Created 6 years, 6 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
1 // Generated by dart2js, the Dart to JavaScript compiler. 1 // Generated by dart2js, the Dart to JavaScript compiler.
2 // The code supports the following hooks: 2 (function($){function dart(){this.x=0}var A=new dart
3 // dartPrint(message) - if this function is defined it is called 3 delete A.x
4 // instead of the Dart [print] method. 4 var B=new dart
5 // dartMainRunner(main) - if this function is defined, the Dart [main] 5 delete B.x
6 // method will not be invoked directly. 6 var C=new dart
7 // Instead, a closure that will invoke [main] is 7 delete C.x
8 // passed to [dartMainRunner]. 8 var D=new dart
9 (function($) { 9 delete D.x
10 var A = {}; 10 var E=new dart
11 delete A.x; 11 delete E.x
12 var B = {}; 12 var F=new dart
13 delete B.x; 13 delete F.x
14 var C = {}; 14 var G=new dart
15 delete C.x; 15 delete G.x
16 var D = {}; 16 var H=new dart
17 delete D.x; 17 delete H.x
18 var E = {}; 18 var J=new dart
19 delete E.x; 19 delete J.x
20 var F = {}; 20 var K=new dart
21 delete F.x; 21 delete K.x
22 var G = {}; 22 var L=new dart
23 delete G.x; 23 delete L.x
24 var H = {}; 24 var M=new dart
25 delete H.x; 25 delete M.x
26 var J = {}; 26 var N=new dart
27 delete J.x; 27 delete N.x
28 var K = {}; 28 var O=new dart
29 delete K.x; 29 delete O.x
30 var L = {}; 30 var P=new dart
31 delete L.x; 31 delete P.x
32 var M = {}; 32 var Q=new dart
33 delete M.x; 33 delete Q.x
34 var N = {}; 34 var R=new dart
35 delete N.x; 35 delete R.x
36 var O = {}; 36 var S=new dart
37 delete O.x; 37 delete S.x
38 var P = {}; 38 var T=new dart
39 delete P.x; 39 delete T.x
40 var Q = {}; 40 var U=new dart
41 delete Q.x; 41 delete U.x
42 var R = {}; 42 var V=new dart
43 delete R.x; 43 delete V.x
44 var S = {}; 44 var W=new dart
45 delete S.x; 45 delete W.x
46 var T = {}; 46 var X=new dart
47 delete T.x; 47 delete X.x
48 var U = {}; 48 var Y=new dart
49 delete U.x; 49 delete Y.x
50 var V = {}; 50 var Z=new dart
51 delete V.x; 51 delete Z.x
52 var W = {}; 52 function I(){}
53 delete W.x; 53 init()
54 var X = {}; 54 $=I.p
55 delete X.x; 55 var $$={}
56 var Y = {}; 56 ;(function(a){"use strict"
57 delete Y.x; 57 function map(b){b={x:b}
58 var Z = {}; 58 delete b.x
59 delete Z.x; 59 return b}function processStatics(a3){for(var h in a3){if(!u.call(a3,h))continue
60 function Isolate() {} 60 if(h==="^")continue
61 init(); 61 var g=a3[h]
62 62 var f=h.substring(0,1)
63 $ = Isolate.$isolateProperties; 63 var e
64 var $$ = {}; 64 if(f==="+"){v[e]=h.substring(1)
65 65 var d=a3[h]
66 // Native classes 66 if(d>0)a3[e].$reflectable=d
67 // Method closures 67 if(g&&g.length)init.typeInformation[e]=g}else if(f==="@"){h=h.substring(1)
68 $$.BoundClosure$i0 = [H, {"": "BoundClosure;_self,__js_helper$_target,_receiver, __js_helper$_name", 68 $[h]["@"]=g}else if(f==="*"){n[e].$defaultValues=g
69 call$0: function() { 69 var c=a3.$methodsWithOptionalArguments
70 return this.__js_helper$_target.call(this._self, this._receiver); 70 if(!c){a3.$methodsWithOptionalArguments=c={}}c[h]=e}else if(typeof g==="function "){n[e=h]=g
71 i.push(h)
72 init.globalFunctions[h]=g}else if(g.constructor===Array){addStubs(n,g,h,true,a3, i)}else{e=h
73 var b={}
74 var a0
75 for(var a1 in g){if(!u.call(g,a1))continue
76 f=a1.substring(0,1)
77 if(a1==="static"){processStatics(init.statics[h]=g[a1])}else if(f==="+"){w[a0]=a 1.substring(1)
78 var d=g[a1]
79 if(d>0)g[a0].$reflectable=d}else if(f==="@"&&a1!=="@"){b[a1.substring(1)]["@"]=g [a1]}else if(f==="*"){b[a0].$defaultValues=g[a1]
80 var c=b.$methodsWithOptionalArguments
81 if(!c){b.$methodsWithOptionalArguments=c={}}c[a1]=a0}else{var a2=g[a1]
82 if(a1!=="^"&&a2!=null&&a2.constructor===Array&&a1!=="<>"){addStubs(b,a2,a1,false ,g,[])}else{b[a0=a1]=a2}}}$$[h]=[n,b]
83 j.push(h)}}}function addStubs(b3,b4,b5,b6,b7,b8){var h,g=[b7[b5]=b3[b5]=h=b4[0]]
84 h.$stubName=b5
85 b8.push(b5)
86 for(var f=0;f<b4.length;f+=2){h=b4[f+1]
87 if(typeof h!="function")break
88 h.$stubName=b4[f+2]
89 g.push(h)
90 if(h.$stubName){b7[h.$stubName]=b3[h.$stubName]=h
91 b8.push(h.$stubName)}}for(var e=0;e<g.length;f++,e++){g[e].$callName=b4[f+1]}var d=b4[++f]
92 b4=b4.slice(++f)
93 var c=b4[0]
94 var b=c>>1
95 var a0=(c&1)===1
96 var a1=c===3
97 var a2=c===1
98 var a3=b4[1]
99 var a4=a3>>1
100 var a5=(a3&1)===1
101 var a6=b+a4!=g[0].length
102 var a7=b4[2]
103 var a8=2*a4+b+3
104 var a9=b4.length>a8
105 if(d){h=tearOff(g,b4,b6,b5,a6)
106 b3[b5].$getter=h
107 h.$getterStub=true
108 if(b6)init.globalFunctions[b5]=h
109 b7[d]=b3[d]=h
110 g.push(h)
111 if(d)b8.push(d)
112 h.$stubName=d
113 h.$callName=null
114 if(a6)init.interceptedNames[d]=true}if(a9){for(var e=0;e<g.length;e++){g[e].$ref lectable=1
115 g[e].$reflectionInfo=b4}var b0=b6?init.mangledGlobalNames:init.mangledNames
116 var b1=b4[a8]
117 var b2=b1
118 if(d)b0[d]=b2
119 if(a1){b2+="="}else if(!a2){b2+=":"+b+":"+a4}b0[b5]=b2
120 g[0].$reflectionName=b2
121 g[0].$metadataIndex=a8+1
122 if(a4)b3[b1+"*"]=g[0]}}function tearOffGetterNoCsp(b,c,d,e){return e?new Functio n("funcs","reflectionInfo","name","H","c","return function tearOff_"+d+z+++"(x) {"+"if (c === null) c = H.qm("+"this, funcs, reflectionInfo, false, [x], name);" +"return new c(this, funcs[0], x, name);"+"}")(b,c,d,H,null):new Function("funcs ","reflectionInfo","name","H","c","return function tearOff_"+d+z+++"() {"+"if (c === null) c = H.qm("+"this, funcs, reflectionInfo, false, [], name);"+"return n ew c(this, funcs[0], null, name);"+"}")(b,c,d,H,null)}function tearOffGetterCsp( b,c,d,e){var h=null
123 return e?function(f){if(h===null)h=H.qm(this,b,c,false,[f],d)
124 return new h(this,b[0],f,d)}:function(){if(h===null)h=H.qm(this,b,c,false,[],d)
125 return new h(this,b[0],null,d)}}function tearOff(b,c,d,e,f){var h
126 return d?function(){if(h===void 0)h=H.qm(this,b,c,true,[],e).prototype
127 return h}:y(b,c,e,f)}var z=0
128 var y=typeof dart_precompiled=="function"?tearOffGetterCsp:tearOffGetterNoCsp
129 if(!init.libraries)init.libraries=[]
130 if(!init.mangledNames)init.mangledNames=map()
131 if(!init.mangledGlobalNames)init.mangledGlobalNames=map()
132 if(!init.statics)init.statics=map()
133 if(!init.typeInformation)init.typeInformation=map()
134 if(!init.globalFunctions)init.globalFunctions=map()
135 if(!init.interceptedNames)init.interceptedNames=map()
136 var x=init.libraries
137 var w=init.mangledNames
138 var v=init.mangledGlobalNames
139 var u=Object.prototype.hasOwnProperty
140 var t=a.length
141 for(var s=0;s<t;s++){var r=a[s]
142 var q=r[0]
143 var p=r[1]
144 var o=r[2]
145 var n=r[3]
146 var m=r[4]
147 var l=!!r[5]
148 var k=m&&m["^"]
149 var j=[]
150 var i=[]
151 processStatics(m)
152 x.push([q,p,j,i,o,k,l,n])}})([["_foreign_helper","dart:_foreign_helper",,H,{
153 "^":"",
154 FK:{
155 "^":"a;tT"}}],["_interceptors","dart:_interceptors",,J,{
156 "^":"",
157 x:function(a){return void 0},
158 Qu:function(a,b,c,d){return{i:a,p:b,e:c,x:d}},
159 ks:function(a){var z,y,x,w
160 z=a[init.dispatchPropertyName]
161 if(z==null)if($.Bv==null){H.XD()
162 z=a[init.dispatchPropertyName]}if(z!=null){y=z.p
163 if(!1===y)return z.i
164 if(!0===y)return a
165 x=Object.getPrototypeOf(a)
166 if(y===x)return z.i
167 if(z.e===x)throw H.b(P.SY("Return interceptor for "+H.d(y(a,z))))}w=H.w3(a)
168 if(w==null){y=Object.getPrototypeOf(a)
169 if(y==null||y===Object.prototype)return C.ZQ
170 else return C.vB}return w},
171 Gv:{
172 "^":"a;",
173 n:function(a,b){return a===b},
174 giO:function(a){return H.eQ(a)},
175 bu:function(a){return H.a5(a)},
176 "%":"DOMError|FileError|MediaError|MediaKeyError|Navigator|NavigatorUserMediaErr or|PositionError|SQLError|SVGAnimatedNumberList|SVGAnimatedString"},
177 kn:{
178 "^":"Gv;",
179 bu:function(a){return String(a)},
180 giO:function(a){return a?519018:218159},
181 $isa2:true},
182 YE:{
183 "^":"Gv;",
184 n:function(a,b){return null==b},
185 bu:function(a){return"null"},
186 giO:function(a){return 0}},
187 Ue:{
188 "^":"Gv;",
189 giO:function(a){return 0}},
190 iC:{
191 "^":"Ue;"},
192 is:{
193 "^":"Ue;"},
194 Q:{
195 "^":"Gv;",
196 Rz:function(a,b){var z
197 if(!!a.fixed$length)H.vh(P.f("remove"))
198 for(z=0;z<a.length;++z)if(J.de(a[z],b)){a.splice(z,1)
199 return!0}return!1},
200 aN:function(a,b){return H.bQ(a,b)},
201 Zv:function(a,b){if(b<0||b>=a.length)return H.e(a,b)
202 return a[b]},
203 tg:function(a,b){var z
204 for(z=0;z<a.length;++z)if(J.de(a[z],b))return!0
205 return!1},
206 bu:function(a){return H.mx(a,"[","]")},
207 gA:function(a){return new H.a7(a,a.length,0,null)},
208 giO:function(a){return H.eQ(a)},
209 gB:function(a){return a.length},
210 sB:function(a,b){if(b<0)throw H.b(P.N(b))
211 if(!!a.fixed$length)H.vh(P.f("set length"))
212 a.length=b},
213 t:function(a,b){if(typeof b!=="number"||Math.floor(b)!==b)throw H.b(P.u(b))
214 if(b>=a.length||b<0)throw H.b(P.N(b))
215 return a[b]},
216 u:function(a,b,c){if(!!a.immutable$list)H.vh(P.f("indexed set"))
217 if(typeof b!=="number"||Math.floor(b)!==b)throw H.b(P.u(b))
218 if(b>=a.length||b<0)throw H.b(P.N(b))
219 a[b]=c},
220 $isQ:true,
221 $iszM:true,
222 $aszM:null},
223 P:{
224 "^":"Gv;",
225 JV:function(a,b){return a%b},
226 yu:function(a){var z
227 if(a>=-2147483648&&a<=2147483647)return a|0
228 if(isFinite(a)){z=a<0?Math.ceil(a):Math.floor(a)
229 return z+0}throw H.b(P.f(''+a))},
230 bu:function(a){if(a===0&&1/a<0)return"-0.0"
231 else return""+a},
232 giO:function(a){return a&0x1FFFFFFF},
233 g:function(a,b){return a+b},
234 cU:function(a,b){return(a|0)===a?a/b|0:this.yu(a/b)},
235 GG:function(a,b){var z
236 if(a>0)z=b>31?0:a>>>b
237 else{z=b>31?31:b
238 z=a>>z>>>0}return z},
239 C:function(a,b){if(typeof b!=="number")throw H.b(P.u(b))
240 return a<b},
241 F:function(a,b){if(typeof b!=="number")throw H.b(P.u(b))
242 return a>=b},
243 $islf:true,
244 static:{"^":"SA,yc"}},
245 im:{
246 "^":"P;",
247 $islf:true,
248 $isKN:true},
249 VA:{
250 "^":"P;",
251 $islf:true},
252 O:{
253 "^":"Gv;",
254 j:function(a,b){if(b<0)throw H.b(P.N(b))
255 if(b>=a.length)throw H.b(P.N(b))
256 return a.charCodeAt(b)},
257 g:function(a,b){if(typeof b!=="string")throw H.b(P.u(b))
258 return a+b},
259 Nj:function(a,b,c){if(c==null)c=a.length
260 if(typeof c!=="number"||Math.floor(c)!==c)H.vh(P.u(c))
261 if(b<0)throw H.b(P.N(b))
262 if(typeof c!=="number")return H.s(c)
263 if(b>c)throw H.b(P.N(b))
264 if(c>a.length)throw H.b(P.N(c))
265 return a.substring(b,c)},
266 yn:function(a,b){return this.Nj(a,b,null)},
267 gl0:function(a){return a.length===0},
268 bu:function(a){return a},
269 giO:function(a){var z,y,x
270 for(z=a.length,y=0,x=0;x<z;++x){y=536870911&y+a.charCodeAt(x)
271 y=536870911&y+((524287&y)<<10>>>0)
272 y^=y>>6}y=536870911&y+((67108863&y)<<3>>>0)
273 y^=y>>11
274 return 536870911&y+((16383&y)<<15>>>0)},
275 gB:function(a){return a.length},
276 t:function(a,b){if(typeof b!=="number"||Math.floor(b)!==b)throw H.b(P.u(b))
277 if(b>=a.length||b<0)throw H.b(P.N(b))
278 return a[b]},
279 $isqU:true}}],["_isolate_helper","dart:_isolate_helper",,H,{
280 "^":"",
281 zd:function(a,b){var z=a.vV(b)
282 init.globalState.Xz.bL()
283 return z},
284 ox:function(){--init.globalState.Xz.GL},
285 Rq:function(a,b){var z,y,x,w,v,u
286 z={}
287 z.a=b
288 b=b
289 z.a=b
290 if(b==null){b=[]
291 z.a=b
292 y=b}else y=b
293 if(!J.x(y).$iszM)throw H.b(P.u("Arguments to main must be a List: "+H.d(y)))
294 y=new H.O2(0,0,1,null,null,null,null,null,null,null,null,null,a)
295 y.i6(a)
296 init.globalState=y
297 if(init.globalState.EF===!0)return
298 y=init.globalState.Hg++
299 x=P.L5(null,null,null,P.KN,H.yo)
300 w=P.Ls(null,null,null,P.KN)
301 v=new H.yo(0,null,!1)
302 u=new H.aX(y,x,w,new I(),v,P.N3(),P.N3(),!1,[],P.Ls(null,null,null,null),null,nu ll,!1,!1)
303 w.h(0,0)
304 u.aU(0,v)
305 init.globalState.yc=u
306 init.globalState.N0=u
307 y=H.N7()
308 x=H.KT(y,[y]).BD(a)
309 if(x)u.vV(new H.PK(z,a))
310 else{y=H.KT(y,[y,y]).BD(a)
311 if(y)u.vV(new H.JO(z,a))
312 else u.vV(a)}init.globalState.Xz.bL()},
313 Td:function(){var z=init.currentScript
314 if(z!=null)return String(z.src)
315 if(typeof version=="function"&&typeof os=="object"&&"system" in os)return H.mf()
316 if(typeof version=="function"&&typeof system=="function")return thisFilename()
317 if(init.globalState.EF===!0)return H.mf()
318 return},
319 mf:function(){var z,y
320 z=new Error().stack
321 if(z==null){z=function(){try{throw new Error()}catch(x){return x.stack}}()
322 if(z==null)throw H.b(P.f("No stack trace"))}y=z.match(new RegExp("^ *at [^(]*\\( (.*):[0-9]*:[0-9]*\\)$","m"))
323 if(y!=null)return y[1]
324 y=z.match(new RegExp("^[^@]*@(.*):[0-9]*$","m"))
325 if(y!=null)return y[1]
326 throw H.b(P.f("Cannot extract URI from \""+H.d(z)+"\""))},
327 Mg:function(a,b){var z,y,x,w,v,u,t,s,r,q,p,o,n,m,l,k,j,i
328 z=H.Hh(b.data)
329 y=J.U6(z)
330 switch(y.t(z,"command")){case"start":init.globalState.oL=y.t(z,"id")
331 x=y.t(z,"functionName")
332 w=x==null?init.globalState.w2:init.globalFunctions[x]()
333 v=y.t(z,"args")
334 u=H.Hh(y.t(z,"msg"))
335 t=y.t(z,"isSpawnUri")
336 s=y.t(z,"startPaused")
337 r=H.Hh(y.t(z,"replyTo"))
338 y=init.globalState.Hg++
339 q=P.L5(null,null,null,P.KN,H.yo)
340 p=P.Ls(null,null,null,P.KN)
341 o=new H.yo(0,null,!1)
342 n=new H.aX(y,q,p,new I(),o,P.N3(),P.N3(),!1,[],P.Ls(null,null,null,null),null,nu ll,!1,!1)
343 p.h(0,0)
344 n.aU(0,o)
345 init.globalState.Xz.Rk.NZ(new H.IY(n,new H.jl(w,v,u,t,s,r),"worker-start"))
346 init.globalState.N0=n
347 init.globalState.Xz.bL()
348 break
349 case"spawn-worker":q=y.t(z,"functionName")
350 m=y.t(z,"uri")
351 p=y.t(z,"args")
352 o=y.t(z,"msg")
353 l=y.t(z,"isSpawnUri")
354 k=y.t(z,"startPaused")
355 y=y.t(z,"replyPort")
356 if(m==null)m=$.Rs()
357 j=new Worker(m)
358 j.onmessage=function(c,d){return function(e){c(d,e)}}(H.Mg,j)
359 i=init.globalState.Y7++
360 $.p6().u(0,j,i)
361 init.globalState.XC.u(0,i,j)
362 j.postMessage(H.Gy(P.EF(["command","start","id",i,"replyTo",H.Gy(y),"args",p,"ms g",H.Gy(o),"isSpawnUri",l,"startPaused",k,"functionName",q],null,null)))
363 break
364 case"message":if(y.t(z,"port")!=null)y.t(z,"port").wR(y.t(z,"msg"))
365 init.globalState.Xz.bL()
366 break
367 case"close":init.globalState.XC.Rz(0,$.p6().t(0,a))
368 a.terminate()
369 init.globalState.Xz.bL()
370 break
371 case"log":H.VL(y.t(z,"msg"))
372 break
373 case"print":if(init.globalState.EF===!0){y=init.globalState.vd
374 q=H.Gy(P.EF(["command","print","msg",z],null,null))
375 y.toString
376 self.postMessage(q)}else P.JS(y.t(z,"msg"))
377 break
378 case"error":throw H.b(y.t(z,"msg"))}},
379 VL:function(a){var z,y,x,w
380 if(init.globalState.EF===!0){y=init.globalState.vd
381 x=H.Gy(P.EF(["command","log","msg",a],null,null))
382 y.toString
383 self.postMessage(x)}else try{$.jk().console.log(a)}catch(w){H.Ru(w)
384 z=new H.XO(w,null)
385 throw H.b(P.FM(z))}},
386 Z7:function(a,b,c,d,e,f){var z,y,x,w
387 z=init.globalState.N0
388 y=z.jO
389 $.te=$.te+("_"+y)
390 $.eb=$.eb+("_"+y)
391 y=z.EE
392 x=init.globalState.N0.jO
393 w=z.Qy
394 f.wR(["spawned",new H.JM(y,x),w,z.PX])
395 x=new H.Vg(a,b,c,d)
396 if(e===!0){z.v8(w,w)
397 init.globalState.Xz.Rk.NZ(new H.IY(z,x,"start isolate"))}else x.$0()},
398 Gy:function(a){var z
399 if(init.globalState.ji===!0){z=new H.Bj(0,new H.X1())
400 z.iq=new H.fP(null)
401 return z.h7(a)}else{z=new H.NO(new H.X1())
402 z.iq=new H.fP(null)
403 return z.h7(a)}},
404 Hh:function(a){if(init.globalState.ji===!0)return new H.II(null).QS(a)
405 else return a},
406 vM:function(a){return a==null||typeof a==="string"||typeof a==="number"||typeof a==="boolean"},
407 uu:function(a){return a==null||typeof a==="string"||typeof a==="number"||typeof a==="boolean"},
408 PK:{
409 "^":"Tp:7;a,b",
410 $0:function(){this.b.$1(this.a.a)}},
411 JO:{
412 "^":"Tp:7;a,c",
413 $0:function(){this.c.$2(this.a.a,null)}},
414 O2:{
415 "^":"a;Hg,oL,Y7,N0,yc,Xz,Ai,EF,ji,i2,vd,XC,w2",
416 i6:function(a){var z,y,x,w
417 z=$.C5()==null
418 y=$.vy()
419 x=z&&$.Iz()===!0
420 this.EF=x
421 if(!x)y=y!=null&&$.Rs()!=null
422 else y=!0
423 this.ji=y
424 this.Ai=z&&!x
425 y=H.IY
426 x=H.VM(new P.Sw(null,0,0,0),[y])
427 x.Eo(null,y)
428 this.Xz=new H.cC(x,0)
429 this.i2=P.L5(null,null,null,P.KN,H.aX)
430 this.XC=P.L5(null,null,null,P.KN,null)
431 if(this.EF===!0){z=new H.JH()
432 this.vd=z
433 w=function(b,c){return function(d){b(c,d)}}(H.Mg,z)
434 $.jk().onmessage=w
435 $.jk().dartPrint=function(b){}}}},
436 aX:{
437 "^":"a;jO,Gx,fW,En<,EE<,Qy,PX,UF,C9,lJ,Jp,ml,mf,pa",
438 v8:function(a,b){if(!this.Qy.n(0,a))return
439 if(this.lJ.h(0,b)&&!this.UF)this.UF=!0
440 this.PC()},
441 cK:function(a){var z,y,x,w,v,u
442 if(!this.UF)return
443 z=this.lJ
444 z.Rz(0,a)
445 if(z.X5===0){for(z=this.C9;y=z.length,y!==0;){if(0>=y)return H.e(z,0)
446 x=z.pop()
447 y=init.globalState.Xz.Rk
448 w=y.av
449 v=y.v5
450 u=v.length
451 w=(w-1&u-1)>>>0
452 y.av=w
453 if(w<0||w>=u)return H.e(v,w)
454 v[w]=x
455 if(w===y.HV)y.VW();++y.qT}this.UF=!1}this.PC()},
456 iK:function(a){var z=this.Jp
457 if(z==null){z=[]
458 this.Jp=z}if(J.kE(z,a))return
459 this.Jp.push(a)},
460 Hh:function(a){var z=this.Jp
461 if(z==null)return
462 J.V1(z,a)},
463 MZ:function(a,b){if(!this.PX.n(0,a))return
464 this.pa=b},
465 Wq:function(a,b){var z,y
466 z=J.x(b)
467 if(!z.n(b,0))y=z.n(b,1)&&!this.mf
468 else y=!0
469 if(y){a.wR(null)
470 return}y=new H.NY(a)
471 if(z.n(b,2)){init.globalState.Xz.Rk.NZ(new H.IY(this,y,"ping"))
472 return}z=this.ml
473 if(z==null){z=H.VM(new P.Sw(null,0,0,0),[null])
474 z.Eo(null,null)
475 this.ml=z}z.NZ(y)},
476 bc:function(a,b){var z,y
477 if(!this.PX.n(0,a))return
478 z=J.x(b)
479 if(!z.n(b,0))y=z.n(b,1)&&!this.mf
480 else y=!0
481 if(y){this.Dm()
482 return}if(z.n(b,2)){z=init.globalState.Xz
483 y=this.gIm()
484 z.Rk.NZ(new H.IY(this,y,"kill"))
485 return}z=this.ml
486 if(z==null){z=H.VM(new P.Sw(null,0,0,0),[null])
487 z.Eo(null,null)
488 this.ml=z}z.NZ(this.gIm())},
489 vV:function(a){var z,y,x
490 z=init.globalState.N0
491 init.globalState.N0=this
492 $=this.En
493 y=null
494 this.mf=!0
495 try{y=a.$0()}finally{this.mf=!1
496 init.globalState.N0=z
497 if(z!=null)$=z.gEn()
498 if(this.ml!=null)for(;x=this.ml,!x.gl0(x);)this.ml.Ux().$0()}return y},
499 hV:function(a){return this.Gx.t(0,a)},
500 aU:function(a,b){var z=this.Gx
501 if(z.x4(a))throw H.b(P.FM("Registry: ports must be registered only once."))
502 z.u(0,a,b)},
503 PC:function(){if(this.Gx.X5-this.fW.X5>0||this.UF)init.globalState.i2.u(0,this.j O,this)
504 else this.Dm()},
505 Dm:[function(){var z,y,x
506 z=this.ml
507 if(z!=null)z.V1(0)
508 for(z=this.Gx,y=z.gUQ(z),x=y.l6,y=H.VM(new H.MH(null,x.gA(x),y.T6),[H.Kp(y,0),H. Kp(y,1)]);y.G();)y.lo.pr()
509 if(z.X5>0){z.lX=null
510 z.H9=null
511 z.OB=null
512 z.OX=null
513 z.vv=null
514 z.X5=0
515 z.zN=z.zN+1&67108863}z=this.fW
516 if(z.X5>0){z.lX=null
517 z.H9=null
518 z.OB=null
519 z.OX=null
520 z.vv=null
521 z.X5=0
522 z.zN=z.zN+1&67108863}init.globalState.i2.Rz(0,this.jO)
523 z=this.Jp
524 if(z!=null){for(z=new H.a7(z,z.length,0,null);z.G();)z.lo.wR(null)
525 this.Jp=null}},"$0","gIm",0,0,1]},
526 NY:{
527 "^":"Tp:1;a",
528 $0:function(){this.a.wR(null)}},
529 cC:{
530 "^":"a;Rk,GL",
531 Jc:function(){var z=this.Rk
532 if(z.av===z.HV)return
533 return z.Ux()},
534 xB:function(){var z,y,x
535 z=this.Jc()
536 if(z==null){if(init.globalState.yc!=null&&init.globalState.i2.x4(init.globalStat e.yc.jO)&&init.globalState.Ai===!0&&init.globalState.yc.Gx.X5===0)H.vh(P.FM("Pro gram exited with open ReceivePorts."))
537 y=init.globalState
538 if(y.EF===!0&&y.i2.X5===0&&y.Xz.GL===0){y=y.vd
539 x=H.Gy(P.EF(["command","close"],null,null))
540 y.toString
541 self.postMessage(x)}return!1}z.VU()
542 return!0},
543 Wu:function(){if($.C5()!=null)new H.RA(this).$0()
544 else for(;this.xB(););},
545 bL:function(){var z,y,x,w,v
546 if(init.globalState.EF!==!0)this.Wu()
547 else try{this.Wu()}catch(x){w=H.Ru(x)
548 z=w
549 y=new H.XO(x,null)
550 w=init.globalState.vd
551 v=H.Gy(P.EF(["command","error","msg",H.d(z)+"\n"+H.d(y)],null,null))
552 w.toString
553 self.postMessage(v)}}},
554 RA:{
555 "^":"Tp:1;a",
556 $0:function(){if(!this.a.xB())return
557 P.rT(C.RT,this)}},
558 IY:{
559 "^":"a;od,i3,G1",
560 VU:function(){var z=this.od
561 if(z.UF){z.C9.push(this)
562 return}z.vV(this.i3)}},
563 JH:{
564 "^":"a;"},
565 jl:{
566 "^":"Tp:7;a,b,c,d,e,f",
567 $0:function(){H.Z7(this.a,this.b,this.c,this.d,this.e,this.f)}},
568 Vg:{
569 "^":"Tp:1;a,b,c,d",
570 $0:function(){var z,y,x
571 if(this.d!==!0)this.a.$1(this.c)
572 else{z=this.a
573 y=H.N7()
574 x=H.KT(y,[y,y]).BD(z)
575 if(x)z.$2(this.b,this.c)
576 else{y=H.KT(y,[y]).BD(z)
577 if(y)z.$1(this.b)
578 else z.$0()}}}},
579 Iy:{
580 "^":"a;",
581 $isbC:true,
582 $isIU:true},
583 JM:{
584 "^":"Iy;JE,Jz",
585 wR:function(a){var z,y,x,w,v
586 z={}
587 y=this.Jz
588 x=init.globalState.i2.t(0,y)
589 if(x==null)return
590 w=this.JE
591 if(w.gKS())return
592 v=init.globalState.N0!=null&&init.globalState.N0.jO!==y
593 z.a=a
594 if(v)z.a=H.Gy(a)
595 if(x.gEE()===w){z=z.a
596 y=J.U6(z)
597 switch(y.t(z,0)){case"pause":x.v8(y.t(z,1),y.t(z,2))
598 break
599 case"resume":x.cK(y.t(z,1))
600 break
601 case"add-ondone":x.iK(y.t(z,1))
602 break
603 case"remove-ondone":x.Hh(y.t(z,1))
604 break
605 case"set-errors-fatal":x.MZ(y.t(z,1),y.t(z,2))
606 break
607 case"ping":x.Wq(y.t(z,1),y.t(z,2))
608 break
609 case"kill":x.bc(y.t(z,1),y.t(z,2))
610 break}return}y=init.globalState.Xz
611 w="receive "+H.d(a)
612 y.Rk.NZ(new H.IY(x,new H.Ua(z,this,v),w))},
613 n:function(a,b){if(b==null)return!1
614 return!!J.x(b).$isJM&&J.de(this.JE,b.JE)},
615 giO:function(a){return this.JE.gx6()},
616 $isJM:true,
617 $isbC:true,
618 $isIU:true},
619 Ua:{
620 "^":"Tp:7;a,b,c",
621 $0:function(){var z,y
622 z=this.b.JE
623 if(!z.gKS()){if(this.c){y=this.a
624 y.a=H.Hh(y.a)}z.FL(this.a.a)}}},
625 ns:{
626 "^":"Iy;Ws,bv,Jz",
627 wR:function(a){var z,y
628 z=H.Gy(P.EF(["command","message","port",this,"msg",a],null,null))
629 if(init.globalState.EF===!0){init.globalState.vd.toString
630 self.postMessage(z)}else{y=init.globalState.XC.t(0,this.Ws)
631 if(y!=null)y.postMessage(z)}},
632 n:function(a,b){if(b==null)return!1
633 return!!J.x(b).$isns&&J.de(this.Ws,b.Ws)&&J.de(this.Jz,b.Jz)&&J.de(this.bv,b.bv) },
634 giO:function(a){var z,y,x
635 z=this.Ws
636 if(typeof z!=="number")return z.O()
637 y=this.Jz
638 if(typeof y!=="number")return y.O()
639 x=this.bv
640 if(typeof x!=="number")return H.s(x)
641 return(z<<16^y<<8^x)>>>0},
642 $isns:true,
643 $isbC:true,
644 $isIU:true},
645 yo:{
646 "^":"a;x6<,Sy,KS<",
647 aV:function(a){return this.Sy.$1(a)},
648 pr:function(){this.KS=!0
649 this.Sy=null},
650 FL:function(a){if(this.KS)return
651 this.aV(a)},
652 static:{"^":"ty"}},
653 Bj:{
654 "^":"Tf;CN,iq",
655 aC:function(a){if(!!a.$isJM)return["sendport",init.globalState.oL,a.Jz,a.JE.gx6( )]
656 if(!!a.$isns)return["sendport",a.Ws,a.Jz,a.bv]
657 throw H.b("Illegal underlying port "+a.bu(0))},
658 yf:function(a){if(!!a.$isku)return["capability",a.x6]
659 throw H.b("Capability not serializable: "+a.bu(0))}},
660 NO:{
661 "^":"oo;iq",
662 aC:function(a){if(!!a.$isJM)return new H.JM(a.JE,a.Jz)
663 if(!!a.$isns)return new H.ns(a.Ws,a.bv,a.Jz)
664 throw H.b("Illegal underlying port "+a.bu(0))},
665 yf:function(a){if(!!a.$isku)return new H.ku(a.x6)
666 throw H.b("Capability not serializable: "+a.bu(0))}},
667 II:{
668 "^":"iY;RZ",
669 Vf:function(a){var z,y,x,w,v,u
670 z=J.U6(a)
671 y=z.t(a,1)
672 x=z.t(a,2)
673 w=z.t(a,3)
674 if(J.de(y,init.globalState.oL)){v=init.globalState.i2.t(0,x)
675 if(v==null)return
676 u=v.hV(w)
677 if(u==null)return
678 return new H.JM(u,x)}else return new H.ns(y,w,x)},
679 Op:function(a){return new H.ku(J.UQ(a,1))}},
680 fP:{
681 "^":"a;kw",
682 t:function(a,b){return b.__MessageTraverser__attached_info__},
683 u:function(a,b,c){this.kw.push(b)
684 b.__MessageTraverser__attached_info__=c},
685 CH:function(a){this.kw=[]},
686 F4:function(){var z,y,x
687 for(z=this.kw.length,y=0;y<z;++y){x=this.kw
688 if(y>=x.length)return H.e(x,y)
689 x[y].__MessageTraverser__attached_info__=null}this.kw=null}},
690 X1:{
691 "^":"a;",
692 t:function(a,b){return},
693 u:function(a,b,c){},
694 CH:function(a){},
695 F4:function(){}},
696 HU:{
697 "^":"a;",
698 h7:function(a){var z
699 if(H.vM(a))return this.Pq(a)
700 this.iq.CH(0)
701 z=null
702 try{z=this.I8(a)}finally{this.iq.F4()}return z},
703 I8:function(a){var z
704 if(a==null||typeof a==="string"||typeof a==="number"||typeof a==="boolean")retur n this.Pq(a)
705 z=J.x(a)
706 if(!!z.$iszM)return this.wb(a)
707 if(!!z.$isZ0)return this.w5(a)
708 if(!!z.$isbC)return this.aC(a)
709 if(!!z.$isIU)return this.yf(a)
710 return this.N1(a)},
711 N1:function(a){throw H.b("Message serialization: Illegal value "+H.d(a)+" passed ")}},
712 oo:{
713 "^":"HU;",
714 Pq:function(a){return a},
715 wb:function(a){var z,y,x
716 z=this.iq.t(0,a)
717 if(z!=null)return z
718 y=J.q8(a)
719 z=Array(y)
720 z.fixed$length=init
721 this.iq.u(0,a,z)
722 for(x=0;x<y;++x){if(x>=a.length)return H.e(a,x)
723 z[x]=this.I8(a[x])}return z},
724 w5:function(a){var z,y
725 z={}
726 y=this.iq.t(0,a)
727 z.a=y
728 if(y!=null)return y
729 y=P.L5(null,null,null,null,null)
730 z.a=y
731 this.iq.u(0,a,y)
732 a.aN(0,new H.OW(z,this))
733 return z.a},
734 aC:function(a){return H.vh(P.SY(null))},
735 yf:function(a){return H.vh(P.SY(null))}},
736 OW:{
737 "^":"Tp:8;a,b",
738 $2:function(a,b){var z=this.b
739 J.kW(this.a.a,z.I8(a),z.I8(b))}},
740 Tf:{
741 "^":"HU;",
742 Pq:function(a){return a},
743 wb:function(a){var z,y
744 z=this.iq.t(0,a)
745 if(z!=null)return["ref",z]
746 y=this.CN++
747 this.iq.u(0,a,y)
748 return["list",y,this.mE(a)]},
749 w5:function(a){var z,y,x,w
750 z=this.iq.t(0,a)
751 if(z!=null)return["ref",z]
752 y=this.CN++
753 this.iq.u(0,a,y)
754 x=a.gvc()
755 w=this.mE(P.F(x,!0,H.ip(x,"mW",0)))
756 x=a.gUQ(a)
757 return["map",y,w,this.mE(P.F(x,!0,H.ip(x,"mW",0)))]},
758 mE:function(a){var z,y,x,w
759 z=J.q8(a)
760 y=[]
761 C.Nm.sB(y,z)
762 for(x=0;x<z;++x){if(x>=a.length)return H.e(a,x)
763 w=this.I8(a[x])
764 if(x>=y.length)return H.e(y,x)
765 y[x]=w}return y},
766 aC:function(a){return H.vh(P.SY(null))},
767 yf:function(a){return H.vh(P.SY(null))}},
768 iY:{
769 "^":"a;",
770 QS:function(a){if(H.uu(a))return a
771 this.RZ=P.Py(null,null,null,null,null)
772 return this.XE(a)},
773 XE:function(a){var z,y
774 if(a==null||typeof a==="string"||typeof a==="number"||typeof a==="boolean")retur n a
775 z=J.U6(a)
776 switch(z.t(a,0)){case"ref":y=z.t(a,1)
777 return this.RZ.t(0,y)
778 case"list":return this.Dj(a)
779 case"map":return this.tv(a)
780 case"sendport":return this.Vf(a)
781 case"capability":return this.Op(a)
782 default:return this.PR(a)}},
783 Dj:function(a){var z,y,x,w,v
784 z=J.U6(a)
785 y=z.t(a,1)
786 x=z.t(a,2)
787 this.RZ.u(0,y,x)
788 z=J.U6(x)
789 w=z.gB(x)
790 if(typeof w!=="number")return H.s(w)
791 v=0
792 for(;v<w;++v)z.u(x,v,this.XE(z.t(x,v)))
793 return x},
794 tv:function(a){var z,y,x,w,v,u,t,s
795 z=P.L5(null,null,null,null,null)
796 y=J.U6(a)
797 x=y.t(a,1)
798 this.RZ.u(0,x,z)
799 w=y.t(a,2)
800 v=y.t(a,3)
801 y=J.U6(w)
802 u=y.gB(w)
803 if(typeof u!=="number")return H.s(u)
804 t=J.U6(v)
805 s=0
806 for(;s<u;++s)z.u(0,this.XE(y.t(w,s)),this.XE(t.t(v,s)))
807 return z},
808 PR:function(a){throw H.b("Unexpected serialized object")}},
809 yH:{
810 "^":"a;Kf,zu,p9",
811 Qa:function(a,b){var z,y
812 if(a===0)z=$.jk().setTimeout==null||init.globalState.EF===!0
813 else z=!1
814 if(z){this.p9=1
815 z=init.globalState.Xz
816 y=init.globalState.N0
817 z.Rk.NZ(new H.IY(y,new H.FA(this,b),"timer"))
818 this.zu=!0}else{z=$.jk()
819 if(z.setTimeout!=null){++init.globalState.Xz.GL
820 this.p9=z.setTimeout(H.tR(new H.Av(this,b),0),a)}else throw H.b(P.f("Timer great er than 0."))}},
821 static:{cy:function(a,b){var z=new H.yH(!0,!1,null)
822 z.Qa(a,b)
823 return z}}},
824 FA:{
825 "^":"Tp:1;a,b",
826 $0:function(){this.a.p9=null
827 this.b.$0()}},
828 Av:{
829 "^":"Tp:1;c,d",
830 $0:function(){this.c.p9=null
831 H.ox()
832 this.d.$0()}},
833 ku:{
834 "^":"a;x6<",
835 giO:function(a){var z=this.x6
836 if(typeof z!=="number")return z.m()
837 z=C.CD.GG(z,0)^C.CD.cU(z,4294967296)
838 z=(~z>>>0)+(z<<15>>>0)&4294967295
839 z=((z^z>>>12)>>>0)*5&4294967295
840 z=((z^z>>>4)>>>0)*2057&4294967295
841 return(z^z>>>16)>>>0},
842 n:function(a,b){var z,y
843 if(b==null)return!1
844 if(b===this)return!0
845 if(!!J.x(b).$isku){z=this.x6
846 y=b.x6
847 return z==null?y==null:z===y}return!1},
848 $isku:true,
849 $isIU:true}}],["_js_helper","dart:_js_helper",,H,{
850 "^":"",
851 wV:function(a,b){var z
852 if(b!=null){z=b.x
853 if(z!=null)return z}return!!J.x(a).$isXj},
854 d:function(a){var z
855 if(typeof a==="string")return a
856 if(typeof a==="number"){if(a!==0)return""+a}else if(!0===a)return"true"
857 else if(!1===a)return"false"
858 else if(a==null)return"null"
859 z=J.AG(a)
860 if(typeof z!=="string")throw H.b(P.u(a))
861 return z},
862 eQ:function(a){var z=a.$identityHash
863 if(z==null){z=Math.random()*0x3fffffff|0
864 a.$identityHash=z}return z},
865 lh:function(a){var z,y
866 z=C.w2(J.x(a))
867 if(z==="Object"){y=String(a.constructor).match(/^\s*function\s*(\S*)\s*\(/)[1]
868 if(typeof y==="string")z=/^\w+$/.test(y)?y:z}if(z.length>1&&C.xB.j(z,0)===36)z=C .xB.yn(z,1)
869 return(z+H.ia(H.oX(a),0,null)).replace(/[^<,> ]+/g,function(b){return init.mangl edGlobalNames[b]||b})},
870 a5:function(a){return"Instance of '"+H.lh(a)+"'"},
871 Lw:function(a){var z
872 if(0<=a){if(a<=65535)return String.fromCharCode(a)
873 if(a<=1114111){z=a-65536
874 return String.fromCharCode((55296|C.jn.GG(z,10))>>>0,56320|z&1023)}}throw H.b(P. TE(a,0,1114111))},
875 VK:function(a,b){if(a==null||typeof a==="boolean"||typeof a==="number"||typeof a ==="string")throw H.b(P.u(a))
876 return a[b]},
877 aw:function(a,b,c){if(a==null||typeof a==="boolean"||typeof a==="number"||typeof a==="string")throw H.b(P.u(a))
878 a[b]=c},
879 s:function(a){throw H.b(P.u(a))},
880 e:function(a,b){if(a==null)J.q8(a)
881 if(typeof b!=="number"||Math.floor(b)!==b)H.s(b)
882 throw H.b(P.N(b))},
883 b:function(a){var z
884 if(a==null)a=new P.LK()
885 z=new Error()
886 z.dartException=a
887 if("defineProperty" in Object){Object.defineProperty(z,"message",{get:H.Ju})
888 z.name=""}else z.toString=H.Ju
889 return z},
890 Ju:function(){return J.AG(this.dartException)},
891 vh:function(a){throw H.b(a)},
892 Ru:function(a){var z,y,x,w,v,u,t,s,r,q,p,o,n,m
893 z=new H.Am(a)
894 if(a==null)return
895 if(typeof a!=="object")return a
896 if("dartException" in a)return z.$1(a.dartException)
897 else if(!("message" in a))return a
898 y=a.message
899 if("number" in a&&typeof a.number=="number"){x=a.number
900 w=x&65535
901 if((C.jn.GG(x,16)&8191)===10)switch(w){case 438:return z.$1(H.T3(H.d(y)+" (Error "+w+")",null))
902 case 445:case 5007:v=H.d(y)+" (Error "+w+")"
903 return z.$1(new H.W0(v,null))}}if(a instanceof TypeError){v=$.WD()
904 u=$.OI()
905 t=$.PH()
906 s=$.D1()
907 r=$.rx()
908 q=$.Y9()
909 p=$.zO()
910 $.Bi()
911 o=$.eA()
912 n=$.ko()
913 m=v.qS(y)
914 if(m!=null)return z.$1(H.T3(y,m))
915 else{m=u.qS(y)
916 if(m!=null){m.method="call"
917 return z.$1(H.T3(y,m))}else{m=t.qS(y)
918 if(m==null){m=s.qS(y)
919 if(m==null){m=r.qS(y)
920 if(m==null){m=q.qS(y)
921 if(m==null){m=p.qS(y)
922 if(m==null){m=s.qS(y)
923 if(m==null){m=o.qS(y)
924 if(m==null){m=n.qS(y)
925 v=m!=null}else v=!0}else v=!0}else v=!0}else v=!0}else v=!0}else v=!0}else v=!0
926 if(v){v=m==null?null:m.method
927 return z.$1(new H.W0(y,v))}}}v=typeof y==="string"?y:""
928 return z.$1(new H.vV(v))}if(a instanceof RangeError){if(typeof y==="string"&&y.i ndexOf("call stack")!==-1)return new P.VS()
929 return z.$1(new P.AT(null))}if(typeof InternalError=="function"&&a instanceof In ternalError)if(typeof y==="string"&&y==="too much recursion")return new P.VS()
930 return a},
931 CU:function(a){if(a==null||typeof a!='object')return J.v1(a)
932 else return H.eQ(a)},
933 B7:function(a,b){var z,y,x,w
934 z=a.length
935 for(y=0;y<z;y=w){x=y+1
936 w=x+1
937 b.u(0,a[y],a[x])}return b},
938 ft:function(a,b,c,d,e,f,g){var z=J.x(c)
939 if(z.n(c,0))return H.zd(b,new H.dr(a))
940 else if(z.n(c,1))return H.zd(b,new H.TL(a,d))
941 else if(z.n(c,2))return H.zd(b,new H.KX(a,d,e))
942 else if(z.n(c,3))return H.zd(b,new H.uZ(a,d,e,f))
943 else if(z.n(c,4))return H.zd(b,new H.OQ(a,d,e,f,g))
944 else throw H.b(P.FM("Unsupported number of arguments for wrapped closure"))},
945 tR:function(a,b){var z
946 if(a==null)return
947 z=a.$identity
948 if(!!z)return z
949 z=function(c,d,e,f){return function(g,h,i,j){return f(c,e,d,g,h,i,j)}}(a,b,init. globalState.N0,H.ft)
950 a.$identity=z
951 return z},
952 iA:function(a,b,c,d,e,f){var z,y,x,w,v,u,t,s,r,q,p,o,n,m
953 z=b[0]
954 z.$stubName
955 y=z.$callName
956 z.$reflectionInfo=c
957 x=H.zh(z).AM
958 w=d?Object.create(new H.Bp().constructor.prototype):Object.create(new H.v(null,n ull,null,null).constructor.prototype)
959 w.$initialize=w.constructor
960 if(d)v=function(){this.$initialize()}
961 else if(typeof dart_precompiled=="function"){u=function(g,h,i,j){this.$initializ e(g,h,i,j)}
962 v=u}else{u=$.yj
963 $.yj=J.WB(u,1)
964 u=new Function("a","b","c","d","this.$initialize(a,b,c,d);"+u)
965 v=u}w.constructor=v
966 v.prototype=w
967 u=!d
968 if(u){t=e.length==1&&!0
969 s=H.bx(a,z,t)
970 s.$reflectionInfo=c}else{w.$name=f
971 s=z
972 t=!1}if(typeof x=="number")r=function(g){return function(){return init.metadata[ g]}}(x)
973 else if(u&&typeof x=="function"){q=t?H.yS:H.DV
974 r=function(g,h){return function(){return g.apply({$receiver:h(this)},arguments)} }(x,q)}else throw H.b("Error in reflectionInfo.")
975 w.$signature=r
976 w[y]=s
977 for(u=b.length,p=1;p<u;++p){o=b[p]
978 n=o.$callName
979 if(n!=null){m=d?o:H.bx(a,o,t)
980 w[n]=m}}w["call*"]=s
981 return v},
982 vq:function(a,b,c,d){var z=H.DV
983 switch(b?-1:a){case 0:return function(e,f){return function(){return f(this)[e]() }}(c,z)
984 case 1:return function(e,f){return function(g){return f(this)[e](g)}}(c,z)
985 case 2:return function(e,f){return function(g,h){return f(this)[e](g,h)}}(c,z)
986 case 3:return function(e,f){return function(g,h,i){return f(this)[e](g,h,i)}}(c, z)
987 case 4:return function(e,f){return function(g,h,i,j){return f(this)[e](g,h,i,j)} }(c,z)
988 case 5:return function(e,f){return function(g,h,i,j,k){return f(this)[e](g,h,i,j ,k)}}(c,z)
989 default:return function(e,f){return function(){return e.apply(f(this),arguments) }}(d,z)}},
990 bx:function(a,b,c){var z,y,x,w,v,u
991 if(c)return H.Hf(a,b)
992 z=b.$stubName
993 y=b.length
994 x=a[z]
995 w=b==null?x==null:b===x
996 if(typeof dart_precompiled=="function"||!w||y>=27)return H.vq(y,!w,z,b)
997 if(y===0){w=$.mJ
998 if(w==null){w=H.E2("self")
999 $.mJ=w}w="return function(){return this."+H.d(w)+"."+H.d(z)+"();"
1000 v=$.yj
1001 $.yj=J.WB(v,1)
1002 return new Function(w+H.d(v)+"}")()}u="abcdefghijklmnopqrstuvwxyz".split("").spl ice(0,y).join(",")
1003 w="return function("+u+"){return this."
1004 v=$.mJ
1005 if(v==null){v=H.E2("self")
1006 $.mJ=v}v=w+H.d(v)+"."+H.d(z)+"("+u+");"
1007 w=$.yj
1008 $.yj=J.WB(w,1)
1009 return new Function(v+H.d(w)+"}")()},
1010 Z4:function(a,b,c,d){var z,y
1011 z=H.DV
1012 y=H.yS
1013 switch(b?-1:a){case 0:throw H.b(H.Ef("Intercepted function with no arguments."))
1014 case 1:return function(e,f,g){return function(){return f(this)[e](g(this))}}(c,z ,y)
1015 case 2:return function(e,f,g){return function(h){return f(this)[e](g(this),h)}}( c,z,y)
1016 case 3:return function(e,f,g){return function(h,i){return f(this)[e](g(this),h,i )}}(c,z,y)
1017 case 4:return function(e,f,g){return function(h,i,j){return f(this)[e](g(this),h ,i,j)}}(c,z,y)
1018 case 5:return function(e,f,g){return function(h,i,j,k){return f(this)[e](g(this) ,h,i,j,k)}}(c,z,y)
1019 case 6:return function(e,f,g){return function(h,i,j,k,l){return f(this)[e](g(thi s),h,i,j,k,l)}}(c,z,y)
1020 default:return function(e,f,g,h){return function(){h=[g(this)]
1021 Array.prototype.push.apply(h,arguments)
1022 return e.apply(f(this),h)}}(d,z,y)}},
1023 Hf:function(a,b){var z,y,x,w,v,u,t,s
1024 z=H.oN()
1025 y=$.P4
1026 if(y==null){y=H.E2("receiver")
1027 $.P4=y}x=b.$stubName
1028 w=b.length
1029 v=typeof dart_precompiled=="function"
1030 u=a[x]
1031 t=b==null?u==null:b===u
1032 if(v||!t||w>=28)return H.Z4(w,!t,x,b)
1033 if(w===1){y="return function(){return this."+H.d(z)+"."+H.d(x)+"(this."+H.d(y)+" );"
1034 t=$.yj
1035 $.yj=J.WB(t,1)
1036 return new Function(y+H.d(t)+"}")()}s="abcdefghijklmnopqrstuvwxyz".split("").spl ice(0,w-1).join(",")
1037 y="return function("+s+"){return this."+H.d(z)+"."+H.d(x)+"(this."+H.d(y)+", "+s +");"
1038 t=$.yj
1039 $.yj=J.WB(t,1)
1040 return new Function(y+H.d(t)+"}")()},
1041 qm:function(a,b,c,d,e,f){b.fixed$length=init
1042 c.fixed$length=init
1043 return H.iA(a,b,c,!!d,e,f)},
1044 aE:function(a,b){var z=J.U6(b)
1045 throw H.b(H.aq(H.lh(a),z.Nj(b,3,z.gB(b))))},
1046 Go:function(a,b){var z
1047 if(a!=null)z=typeof a==="object"&&J.x(a)[b]
1048 else z=!0
1049 if(z)return a
1050 H.aE(a,b)},
1051 ag:function(a){throw H.b(P.Gz("Cyclic initialization for static "+H.d(a)))},
1052 KT:function(a,b,c){return new H.tD(a,b,c,null)},
1053 N7:function(){return C.KZ},
1054 VM:function(a,b){if(a!=null)a.$builtinTypeInfo=b
1055 return a},
1056 oX:function(a){if(a==null)return
1057 return a.$builtinTypeInfo},
1058 IM:function(a,b){return H.Z9(a["$as"+H.d(b)],H.oX(a))},
1059 ip:function(a,b,c){var z=H.IM(a,b)
1060 return z==null?null:z[c]},
1061 Kp:function(a,b){var z=H.oX(a)
1062 return z==null?null:z[b]},
1063 Ko:function(a,b){if(a==null)return"dynamic"
1064 else if(typeof a==="object"&&a!==null&&a.constructor===Array)return a[0].builtin $cls+H.ia(a,1,b)
1065 else if(typeof a=="function")return a.builtin$cls
1066 else if(typeof a==="number"&&Math.floor(a)===a)return C.jn.bu(a)
1067 else return},
1068 ia:function(a,b,c){var z,y,x,w,v,u
1069 if(a==null)return""
1070 z=P.p9("")
1071 for(y=b,x=!0,w=!0;y<a.length;++y){if(x)x=!1
1072 else z.vM+=", "
1073 v=a[y]
1074 if(v!=null)w=!1
1075 u=H.Ko(v,c)
1076 z.vM+=typeof u==="string"?u:H.d(u)}return w?"":"<"+H.d(z)+">"},
1077 Z9:function(a,b){if(typeof a==="object"&&a!==null&&a.constructor===Array)b=a
1078 else if(typeof a=="function"){a=H.ml(a,null,b)
1079 if(typeof a==="object"&&a!==null&&a.constructor===Array)b=a
1080 else if(typeof a=="function")b=H.ml(a,null,b)}return b},
1081 hv:function(a,b){var z,y
1082 if(a==null||b==null)return!0
1083 z=a.length
1084 for(y=0;y<z;++y)if(!H.t1(a[y],b[y]))return!1
1085 return!0},
1086 IG:function(a,b,c){return H.ml(a,b,H.IM(b,c))},
1087 t1:function(a,b){var z,y,x,w,v,u,t
1088 if(a===b)return!0
1089 if(a==null||b==null)return!0
1090 if("func" in b){if(!("func" in a)){if("$is_"+H.d(b.func) in a)return!0
1091 z=a.$signature
1092 if(z==null)return!1
1093 a=z.apply(a,null)}return H.Ly(a,b)}if(b.builtin$cls==="EH"&&"func" in a)return!0
1094 y=typeof a==="object"&&a!==null&&a.constructor===Array
1095 x=y?a[0]:a
1096 w=typeof b==="object"&&b!==null&&b.constructor===Array
1097 v=w?b[0]:b
1098 u=H.Ko(v,null)
1099 if(v!==x){if(!("$is"+H.d(u) in x))return!1
1100 t=x["$as"+H.d(H.Ko(v,null))]}else t=null
1101 if(!y&&t==null||!w)return!0
1102 y=y?a.slice(1):null
1103 w=w?b.slice(1):null
1104 return H.hv(H.Z9(t,y),w)},
1105 Hc:function(a,b,c){var z,y,x,w,v
1106 if(b==null&&a==null)return!0
1107 if(b==null)return c
1108 if(a==null)return!1
1109 z=a.length
1110 y=b.length
1111 if(c){if(z<y)return!1}else if(z!==y)return!1
1112 for(x=0;x<y;++x){w=a[x]
1113 v=b[x]
1114 if(!(H.t1(w,v)||H.t1(v,w)))return!1}return!0},
1115 Vt:function(a,b){var z,y,x,w,v,u
1116 if(b==null)return!0
1117 if(a==null)return!1
1118 z=Object.getOwnPropertyNames(b)
1119 z.fixed$length=init
1120 y=z
1121 for(z=y.length,x=0;x<z;++x){w=y[x]
1122 if(!Object.hasOwnProperty.call(a,w))return!1
1123 v=b[w]
1124 u=a[w]
1125 if(!(H.t1(v,u)||H.t1(u,v)))return!1}return!0},
1126 Ly:function(a,b){var z,y,x,w,v,u,t,s,r,q,p,o,n,m,l
1127 if(!("func" in a))return!1
1128 if("void" in a){if(!("void" in b)&&"ret" in b)return!1}else if(!("void" in b)){z =a.ret
1129 y=b.ret
1130 if(!(H.t1(z,y)||H.t1(y,z)))return!1}x=a.args
1131 w=b.args
1132 v=a.opt
1133 u=b.opt
1134 t=x!=null?x.length:0
1135 s=w!=null?w.length:0
1136 r=v!=null?v.length:0
1137 q=u!=null?u.length:0
1138 if(t>s)return!1
1139 if(t+r<s+q)return!1
1140 if(t===s){if(!H.Hc(x,w,!1))return!1
1141 if(!H.Hc(v,u,!0))return!1}else{for(p=0;p<t;++p){o=x[p]
1142 n=w[p]
1143 if(!(H.t1(o,n)||H.t1(n,o)))return!1}for(m=p,l=0;m<s;++l,++m){o=v[l]
1144 n=w[m]
1145 if(!(H.t1(o,n)||H.t1(n,o)))return!1}for(m=0;m<q;++l,++m){o=v[l]
1146 n=u[m]
1147 if(!(H.t1(o,n)||H.t1(n,o)))return!1}}return H.Vt(a.named,b.named)},
1148 ml:function(a,b,c){return a.apply(b,c)},
1149 or:function(a){var z=$.NF
1150 return"Instance of "+(z==null?"<Unknown>":z.$1(a))},
1151 wz:function(a){return H.eQ(a)},
1152 iw:function(a,b,c){Object.defineProperty(a,b,{value:c,enumerable:false,writable: true,configurable:true})},
1153 w3:function(a){var z,y,x,w,v,u
1154 z=$.NF.$1(a)
1155 y=$.nw[z]
1156 if(y!=null){Object.defineProperty(a,init.dispatchPropertyName,{value:y,enumerabl e:false,writable:true,configurable:true})
1157 return y.i}x=$.vv[z]
1158 if(x!=null)return x
1159 w=init.interceptorsByTag[z]
1160 if(w==null){z=$.TX.$2(a,z)
1161 if(z!=null){y=$.nw[z]
1162 if(y!=null){Object.defineProperty(a,init.dispatchPropertyName,{value:y,enumerabl e:false,writable:true,configurable:true})
1163 return y.i}x=$.vv[z]
1164 if(x!=null)return x
1165 w=init.interceptorsByTag[z]}}if(w==null)return
1166 x=w.prototype
1167 v=z[0]
1168 if(v==="!"){y=H.Va(x)
1169 $.nw[z]=y
1170 Object.defineProperty(a,init.dispatchPropertyName,{value:y,enumerable:false,writ able:true,configurable:true})
1171 return y.i}if(v==="~"){$.vv[z]=x
1172 return x}if(v==="-"){u=H.Va(x)
1173 Object.defineProperty(Object.getPrototypeOf(a),init.dispatchPropertyName,{value: u,enumerable:false,writable:true,configurable:true})
1174 return u.i}if(v==="+")return H.Lc(a,x)
1175 if(v==="*")throw H.b(P.SY(z))
1176 if(init.leafTags[z]===true){u=H.Va(x)
1177 Object.defineProperty(Object.getPrototypeOf(a),init.dispatchPropertyName,{value: u,enumerable:false,writable:true,configurable:true})
1178 return u.i}else return H.Lc(a,x)},
1179 Lc:function(a,b){var z,y
1180 z=Object.getPrototypeOf(a)
1181 y=J.Qu(b,z,null,null)
1182 Object.defineProperty(z,init.dispatchPropertyName,{value:y,enumerable:false,writ able:true,configurable:true})
1183 return b},
1184 Va:function(a){return J.Qu(a,!1,null,!!a.$isXj)},
1185 ow:function(a,b,c){var z=b.prototype
1186 if(init.leafTags[a]===true)return J.Qu(z,!1,null,!!z.$isXj)
1187 else return J.Qu(z,c,null,null)},
1188 XD:function(){if(!0===$.Bv)return
1189 $.Bv=!0
1190 H.Z1()},
1191 Z1:function(){var z,y,x,w,v,u,t,s
1192 $.nw=Object.create(null)
1193 $.vv=Object.create(null)
1194 H.kO()
1195 z=init.interceptorsByTag
1196 y=Object.getOwnPropertyNames(z)
1197 if(typeof window!="undefined"){window
1198 x=function(){}
1199 for(w=0;w<y.length;++w){v=y[w]
1200 u=$.x7.$1(v)
1201 if(u!=null){t=H.ow(v,z[v],u)
1202 if(t!=null){Object.defineProperty(u,init.dispatchPropertyName,{value:t,enumerabl e:false,writable:true,configurable:true})
1203 x.prototype=u}}}}for(w=0;w<y.length;++w){v=y[w]
1204 if(/^[A-Za-z_]/.test(v)){s=z[v]
1205 z["!"+v]=s
1206 z["~"+v]=s
1207 z["-"+v]=s
1208 z["+"+v]=s
1209 z["*"+v]=s}}},
1210 kO:function(){var z,y,x,w,v,u,t
1211 z=C.MA()
1212 z=H.ud(C.Mc,H.ud(C.hQ,H.ud(C.XQ,H.ud(C.XQ,H.ud(C.M1,H.ud(C.lR,H.ud(C.ur(C.w2),z) ))))))
1213 if(typeof dartNativeDispatchHooksTransformer!="undefined"){y=dartNativeDispatchH ooksTransformer
1214 if(typeof y=="function")y=[y]
1215 if(y.constructor==Array)for(x=0;x<y.length;++x){w=y[x]
1216 if(typeof w=="function")z=w(z)||z}}v=z.getTag
1217 u=z.getUnknownTag
1218 t=z.prototypeForTag
1219 $.NF=new H.dC(v)
1220 $.TX=new H.wN(u)
1221 $.x7=new H.VX(t)},
1222 ud:function(a,b){return a(b)||b},
1223 FD:{
1224 "^":"a;mr,Rn,XZ,Rv,hG,Mo,AM,NE",
1225 static:{"^":"t4,FV,Oc,pv",zh:function(a){var z,y,x
1226 z=a.$reflectionInfo
1227 if(z==null)return
1228 z.fixed$length=init
1229 z=z
1230 y=z[0]
1231 x=z[1]
1232 return new H.FD(a,z,(y&1)===1,y>>1,x>>1,(x&1)===1,z[2],null)}}},
1233 Zr:{
1234 "^":"a;bT,rq,Xs,Fa,Ga,EP",
1235 qS:function(a){var z,y,x
1236 z=new RegExp(this.bT).exec(a)
1237 if(z==null)return
1238 y={}
1239 x=this.rq
1240 if(x!==-1)y.arguments=z[x+1]
1241 x=this.Xs
1242 if(x!==-1)y.argumentsExpr=z[x+1]
1243 x=this.Fa
1244 if(x!==-1)y.expr=z[x+1]
1245 x=this.Ga
1246 if(x!==-1)y.method=z[x+1]
1247 x=this.EP
1248 if(x!==-1)y.receiver=z[x+1]
1249 return y},
1250 static:{"^":"lm,k1,Re,fN,qi,rZ,BX,tt,dt,A7",cM:function(a){var z,y,x,w,v,u
1251 a=a.replace(String({}),'$receiver$').replace(new RegExp("[[\\]{}()*+?.\\\\^$|]", 'g'),'\\$&')
1252 z=a.match(/\\\$[a-zA-Z]+\\\$/g)
1253 if(z==null)z=[]
1254 y=z.indexOf("\\$arguments\\$")
1255 x=z.indexOf("\\$argumentsExpr\\$")
1256 w=z.indexOf("\\$expr\\$")
1257 v=z.indexOf("\\$method\\$")
1258 u=z.indexOf("\\$receiver\\$")
1259 return new H.Zr(a.replace('\\$arguments\\$','((?:x|[^x])*)').replace('\\$argumen tsExpr\\$','((?:x|[^x])*)').replace('\\$expr\\$','((?:x|[^x])*)').replace('\\$me thod\\$','((?:x|[^x])*)').replace('\\$receiver\\$','((?:x|[^x])*)'),y,x,w,v,u)}, S7:function(a){return function($expr$){var $argumentsExpr$='$arguments$'
1260 try{$expr$.$method$($argumentsExpr$)}catch(z){return z.message}}(a)},Mj:function (a){return function($expr$){try{$expr$.$method$}catch(z){return z.message}}(a)}} },
1261 W0:{
1262 "^":"Ge;V7,Ga",
1263 bu:function(a){var z=this.Ga
1264 if(z==null)return"NullError: "+H.d(this.V7)
1265 return"NullError: Cannot call \""+H.d(z)+"\" on null"},
1266 $isGe:true},
1267 az:{
1268 "^":"Ge;V7,Ga,EP",
1269 bu:function(a){var z,y
1270 z=this.Ga
1271 if(z==null)return"NoSuchMethodError: "+H.d(this.V7)
1272 y=this.EP
1273 if(y==null)return"NoSuchMethodError: Cannot call \""+H.d(z)+"\" ("+H.d(this.V7)+ ")"
1274 return"NoSuchMethodError: Cannot call \""+H.d(z)+"\" on \""+H.d(y)+"\" ("+H.d(th is.V7)+")"},
1275 $isGe:true,
1276 static:{T3:function(a,b){var z,y
1277 z=b==null
1278 y=z?null:b.method
1279 z=z?null:b.receiver
1280 return new H.az(a,y,z)}}},
1281 vV:{
1282 "^":"Ge;V7",
1283 bu:function(a){var z=this.V7
1284 return C.xB.gl0(z)?"Error":"Error: "+z}},
1285 Am:{
1286 "^":"Tp:9;a",
1287 $1:function(a){if(!!J.x(a).$isGe)if(a.$thrownJsError==null)a.$thrownJsError=this .a
1288 return a}},
1289 XO:{
1290 "^":"a;lA,ui",
1291 bu:function(a){var z,y
1292 z=this.ui
1293 if(z!=null)return z
1294 z=this.lA
1295 y=typeof z==="object"?z.stack:null
1296 z=y==null?"":y
1297 this.ui=z
1298 return z}},
1299 dr:{
1300 "^":"Tp:7;a",
1301 $0:function(){return this.a.$0()}},
1302 TL:{
1303 "^":"Tp:7;b,c",
1304 $0:function(){return this.b.$1(this.c)}},
1305 KX:{
1306 "^":"Tp:7;d,e,f",
1307 $0:function(){return this.d.$2(this.e,this.f)}},
1308 uZ:{
1309 "^":"Tp:7;UI,bK,Gq,Rm",
1310 $0:function(){return this.UI.$3(this.bK,this.Gq,this.Rm)}},
1311 OQ:{
1312 "^":"Tp:7;w3,HZ,mG,xC,cj",
1313 $0:function(){return this.w3.$4(this.HZ,this.mG,this.xC,this.cj)}},
1314 Tp:{
1315 "^":"a;",
1316 bu:function(a){return"Closure"},
1317 gKu:function(){return this}},
1318 Bp:{
1319 "^":"Tp;"},
1320 v:{
1321 "^":"Bp;nw,jm,EP,RA",
1322 n:function(a,b){if(b==null)return!1
1323 if(this===b)return!0
1324 if(!J.x(b).$isv)return!1
1325 return this.nw===b.nw&&this.jm===b.jm&&this.EP===b.EP},
1326 giO:function(a){var z,y
1327 z=this.EP
1328 if(z==null)y=H.eQ(this.nw)
1329 else y=typeof z!=="object"?J.v1(z):H.eQ(z)
1330 z=H.eQ(this.jm)
1331 if(typeof y!=="number")return y.w()
1332 return(y^z)>>>0},
1333 $isv:true,
1334 static:{"^":"mJ,P4",DV:function(a){return a.nw},yS:function(a){return a.EP},oN:f unction(){var z=$.mJ
1335 if(z==null){z=H.E2("self")
1336 $.mJ=z}return z},E2:function(a){var z,y,x,w,v
1337 z=new H.v("self","target","receiver","name")
1338 y=Object.getOwnPropertyNames(z)
1339 y.fixed$length=init
1340 x=y
1341 for(y=x.length,w=0;w<y;++w){v=x[w]
1342 if(z[v]===a)return v}}}},
1343 Pe:{
1344 "^":"Ge;G1",
1345 bu:function(a){return this.G1},
1346 $isGe:true,
1347 static:{aq:function(a,b){return new H.Pe("CastError: Casting value of type "+H.d (a)+" to incompatible type "+H.d(b))}}},
1348 Eq:{
1349 "^":"Ge;G1",
1350 bu:function(a){return"RuntimeError: "+H.d(this.G1)},
1351 static:{Ef:function(a){return new H.Eq(a)}}},
1352 lb:{
1353 "^":"a;"},
1354 tD:{
1355 "^":"lb;dw,Iq,is,p6",
1356 BD:function(a){var z=this.rP(a)
1357 return z==null?!1:H.Ly(z,this.za())},
1358 rP:function(a){var z=J.x(a)
1359 return"$signature" in z?z.$signature():null},
1360 za:function(){var z,y,x,w,v,u,t
1361 z={func:"dynafunc"}
1362 y=this.dw
1363 x=J.x(y)
1364 if(!!x.$isnr)z.void=true
1365 else if(!x.$ishJ)z.ret=y.za()
1366 y=this.Iq
1367 if(y!=null&&y.length!==0)z.args=H.Dz(y)
1368 y=this.is
1369 if(y!=null&&y.length!==0)z.opt=H.Dz(y)
1370 y=this.p6
1371 if(y!=null){w={}
1372 v=H.kU(y)
1373 for(x=v.length,u=0;u<x;++u){t=v[u]
1374 w[t]=y[t].za()}z.named=w}return z},
1375 bu:function(a){var z,y,x,w,v,u,t,s
1376 z=this.Iq
1377 if(z!=null)for(y=z.length,x="(",w=!1,v=0;v<y;++v,w=!0){u=z[v]
1378 if(w)x+=", "
1379 x+=H.d(u)}else{x="("
1380 w=!1}z=this.is
1381 if(z!=null&&z.length!==0){x=(w?x+", ":x)+"["
1382 for(y=z.length,w=!1,v=0;v<y;++v,w=!0){u=z[v]
1383 if(w)x+=", "
1384 x+=H.d(u)}x+="]"}else{z=this.p6
1385 if(z!=null){x=(w?x+", ":x)+"{"
1386 t=H.kU(z)
1387 for(y=t.length,w=!1,v=0;v<y;++v,w=!0){s=t[v]
1388 if(w)x+=", "
1389 x+=H.d(z[s].za())+" "+s}x+="}"}}return x+(") -> "+H.d(this.dw))},
1390 static:{"^":"lc",Dz:function(a){var z,y,x
1391 a=a
1392 z=[]
1393 for(y=a.length,x=0;x<y;++x)z.push(a[x].za())
1394 return z}}},
1395 hJ:{
1396 "^":"lb;",
1397 bu:function(a){return"dynamic"},
1398 za:function(){return},
1399 $ishJ:true},
1400 dC:{
1401 "^":"Tp:9;a",
1402 $1:function(a){return this.a(a)}},
1403 wN:{
1404 "^":"Tp:10;b",
1405 $2:function(a,b){return this.b(a,b)}},
1406 VX:{
1407 "^":"Tp:11;c",
1408 $1:function(a){return this.c(a)}}}],["dart._internal","dart:_internal",,H,{
1409 "^":"",
1410 bQ:function(a,b){var z
1411 for(z=new H.a7(a,a.length,0,null);z.G();)b.$1(z.lo)},
1412 mx:function(a,b,c){var z,y,x,w
1413 for(y=0;x=$.RM(),y<x.length;++y){x=x[y]
1414 w=a
1415 if(x==null?w==null:x===w)return H.d(b)+"..."+H.d(c)}z=P.p9("")
1416 try{$.RM().push(a)
1417 z.KF(b)
1418 z.We(a,", ")
1419 z.KF(c)}finally{x=$.RM()
1420 if(0>=x.length)return H.e(x,0)
1421 x.pop()}return z.gvM()},
1422 qG:function(a,b,c,d,e){var z
1423 if(b<0||b>a.length)H.vh(P.TE(b,0,a.length))
1424 if(c<b||c>a.length)H.vh(P.TE(c,b,a.length))
1425 z=c-b
1426 if(z===0)return
1427 if(e+z>d.length)throw H.b(H.ar())
1428 H.Gj(d,e,a,b,z)},
1429 ar:function(){return new P.lj("Too few elements")},
1430 Gj:function(a,b,c,d,e){var z,y,x,w
1431 if(b<d)for(z=b+e-1,y=d+e-1,x=a.length;z>=b;--z,--y){if(z>=x)return H.e(a,z)
1432 C.Nm.u(c,y,a[z])}else for(x=b+e,w=a.length,y=d,z=b;z<x;++z,++y){if(z>=w)return H .e(a,z)
1433 C.Nm.u(c,y,a[z])}},
1434 Fv:function(a){return a.gfN()},
1435 a7:{
1436 "^":"a;l6,SW,G7,lo",
1437 gl:function(){return this.lo},
1438 G:function(){var z,y,x,w
1439 z=this.l6
1440 y=J.U6(z)
1441 x=y.gB(z)
1442 if(this.SW!==x)throw H.b(P.a4(z))
1443 w=this.G7
1444 if(w>=x){this.lo=null
1445 return!1}this.lo=y.Zv(z,w);++this.G7
1446 return!0}},
1447 i1:{
1448 "^":"mW;l6,T6",
1449 gA:function(a){var z=this.l6
1450 z=new H.MH(null,z.gA(z),this.T6)
1451 z.$builtinTypeInfo=this.$builtinTypeInfo
1452 return z},
1453 gB:function(a){var z=this.l6
1454 return z.gB(z)},
1455 $asmW:function(a,b){return[b]},
1456 static:{K1:function(a,b,c,d){return H.VM(new H.xy(a,b),[c,d])}}},
1457 xy:{
1458 "^":"i1;l6,T6"},
1459 MH:{
1460 "^":"An;lo,OI,T6",
1461 mb:function(a){return this.T6.$1(a)},
1462 G:function(){var z=this.OI
1463 if(z.G()){this.lo=this.mb(z.gl())
1464 return!0}this.lo=null
1465 return!1},
1466 gl:function(){return this.lo}},
1467 SU:{
1468 "^":"a;"}}],["dart._js_names","dart:_js_names",,H,{
1469 "^":"",
1470 kU:function(a){var z=H.VM(function(b,c){var y=[]
1471 for(var x in b){if(c.call(b,x))y.push(x)}return y}(a,Object.prototype.hasOwnProp erty),[null])
1472 z.fixed$length=init
1473 return z}}],["dart.async","dart:async",,P,{
1474 "^":"",
1475 Oj:function(){if($.jk().scheduleImmediate!=null)return P.Sx()
1476 return P.K7()},
1477 ZV:[function(a){++init.globalState.Xz.GL
1478 $.jk().scheduleImmediate(H.tR(new P.C6(a),0))},"$1","Sx",2,0,0],
1479 Bz:[function(a){P.jL(C.RT,a)},"$1","K7",2,0,0],
1480 VH:function(a,b){var z=H.N7()
1481 z=H.KT(z,[z,z]).BD(a)
1482 if(z){b.toString
1483 return a}else{b.toString
1484 return a}},
1485 Cx:function(){var z=$.S6
1486 for(;z!=null;){z.Ki()
1487 z=z.aw
1488 $.S6=z}$.k8=null},
1489 BG:[function(){var z
1490 try{P.Cx()}catch(z){H.Ru(z)
1491 $.ej().$1(P.qZ())
1492 $.S6=$.S6.aw
1493 throw z}},"$0","qZ",0,0,1],
1494 IA:function(a){var z,y
1495 z=$.k8
1496 if(z==null){z=new P.OM(a,null)
1497 $.k8=z
1498 $.S6=z
1499 $.ej().$1(P.qZ())}else{y=new P.OM(a,null)
1500 z.aw=y
1501 $.k8=y}},
1502 FE:function(a,b,c){var z,y,x,w
1503 try{b.$1(a.$0())}catch(x){w=H.Ru(x)
1504 z=w
1505 y=new H.XO(x,null)
1506 c.$2(z,y)}},
1507 NX:function(a,b,c,d){a.ed()
1508 b.K5(c,d)},
1509 TB:function(a,b){return new P.uR(a,b)},
1510 rT:function(a,b){var z=$.X3
1511 if(z===C.NU){z.toString
1512 return P.h8(z,null,z,a,b)}return P.h8(z,null,z,a,z.xi(b,!0))},
1513 jL:function(a,b){var z=C.jn.cU(a.Fq,1000)
1514 return H.cy(z<0?0:z,b)},
1515 PJ:function(a){var z=$.X3
1516 $.X3=a
1517 return z},
1518 L2:function(a,b,c,d,e){P.T8(a,null,a,new P.pK(d,e))},
1519 T8:function(a,b,c,d){var z,y
1520 if($.X3===c)return d.$0()
1521 z=P.PJ(c)
1522 try{y=d.$0()
1523 return y}finally{$.X3=z}},
1524 V7:function(a,b,c,d,e){var z,y
1525 if($.X3===c)return d.$1(e)
1526 z=P.PJ(c)
1527 try{y=d.$1(e)
1528 return y}finally{$.X3=z}},
1529 Qx:function(a,b,c,d,e,f){var z,y
1530 if($.X3===c)return d.$2(e,f)
1531 z=P.PJ(c)
1532 try{y=d.$2(e,f)
1533 return y}finally{$.X3=z}},
1534 Tk:function(a,b,c,d){P.IA(C.NU!==c?c.ce(d):d)},
1535 h8:function(a,b,c,d,e){return P.jL(d,C.NU!==c?c.ce(e):e)},
1536 C6:{
1537 "^":"Tp:7;a",
1538 $0:function(){H.ox()
1539 this.a.$0()}},
1540 Ca:{
1541 "^":"a;kc>,I4<",
1542 $isGe:true},
1543 vs:{
1544 "^":"a;Gv,Lj<,jk,BQ<,OY,As,qV,o4",
1545 gcg:function(){return this.Gv>=4},
1546 gWj:function(){return this.Gv===4},
1547 gNm:function(){return this.Gv===8},
1548 swG:function(a){if(a)this.Gv=2
1549 else this.Gv=0},
1550 Rx:function(a,b){var z,y
1551 z=$.X3
1552 z.toString
1553 y=H.VM(new P.vs(0,z,null,null,a,null,P.VH(b,z),null),[null])
1554 this.au(y)
1555 return y},
1556 gDL:function(){return this.jk},
1557 gcG:function(){return this.jk},
1558 Am:function(a){this.Gv=4
1559 this.jk=a},
1560 E6:function(a,b){this.Gv=8
1561 this.jk=new P.Ca(a,b)},
1562 au:function(a){var z
1563 if(this.Gv>=4){z=this.Lj
1564 z.toString
1565 P.Tk(z,null,z,new P.da(this,a))}else{a.BQ=this.jk
1566 this.jk=a}},
1567 L3:function(){var z,y,x
1568 z=this.jk
1569 this.jk=null
1570 for(y=null;z!=null;y=z,z=x){x=z.gBQ()
1571 z.BQ=y}return y},
1572 rX:function(a){var z,y
1573 z=J.x(a)
1574 if(!!z.$isb8)if(!!z.$isvs)P.A9(a,this)
1575 else P.k3(a,this)
1576 else{y=this.L3()
1577 this.Am(a)
1578 P.HZ(this,y)}},
1579 K5:[function(a,b){var z=this.L3()
1580 this.E6(a,b)
1581 P.HZ(this,z)},function(a){return this.K5(a,null)},"Lp","$2","$1","gbY",2,2,12,13 ],
1582 $isvs:true,
1583 $isb8:true,
1584 static:{"^":"Gn,Ry,C3,UX,NK",Dt:function(a){return H.VM(new P.vs(0,$.X3,null,nul l,null,null,null,null),[a])},k3:function(a,b){b.Gv=2
1585 a.Rx(new P.pV(b),new P.U7(b))},A9:function(a,b){b.Gv=2
1586 if(a.Gv>=4)P.HZ(a,b)
1587 else a.au(b)},yE:function(a,b){var z
1588 do{z=b.gBQ()
1589 b.BQ=null
1590 P.HZ(a,b)
1591 if(z!=null){b=z
1592 continue}else break}while(!0)},HZ:function(a,b){var z,y,x,w,v,u,t,s,r,q,p,o
1593 z={}
1594 z.e=a
1595 for(y=a;!0;){x={}
1596 if(!y.gcg())return
1597 w=z.e.gNm()
1598 if(w&&b==null){v=z.e.gcG()
1599 y=z.e.gLj()
1600 x=J.w8(v)
1601 u=v.gI4()
1602 y.toString
1603 P.L2(y,null,y,x,u)
1604 return}if(b==null)return
1605 if(b.BQ!=null){P.yE(z.e,b)
1606 return}x.b=!0
1607 t=z.e.gWj()?z.e.gDL():null
1608 x.c=t
1609 x.d=!1
1610 y=!w
1611 if(y){u=b.Gv===2
1612 if((u?null:b.OY)==null){s=(u?null:b.o4)!=null
1613 u=s}else u=!0}else u=!0
1614 if(u){r=b.Lj
1615 if(w){u=z.e.gLj()
1616 u.toString
1617 r.toString
1618 u=r==null?u!=null:r!==u}else u=!1
1619 if(u){v=z.e.gcG()
1620 y=z.e.gLj()
1621 x=J.w8(v)
1622 u=v.gI4()
1623 y.toString
1624 P.L2(y,null,y,x,u)
1625 return}q=$.X3
1626 if(q==null?r!=null:q!==r)$.X3=r
1627 else q=null
1628 if(y){if((b.Gv===2?null:b.OY)!=null)x.b=new P.rq(x,b,t,r).$0()}else new P.RW(z,x ,b,r).$0()
1629 if((b.Gv===2?null:b.o4)!=null)new P.YP(z,x,w,b,r).$0()
1630 if(q!=null)$.X3=q
1631 if(x.d)return
1632 if(x.b===!0){y=x.c
1633 y=(t==null?y!=null:t!==y)&&!!J.x(y).$isb8}else y=!1
1634 if(y){p=x.c
1635 if(!!J.x(p).$isvs)if(p.Gv>=4){b.Gv=2
1636 z.e=p
1637 y=p
1638 continue}else P.A9(p,b)
1639 else P.k3(p,b)
1640 return}}if(x.b===!0){o=b.L3()
1641 y=x.c
1642 b.Gv=4
1643 b.jk=y}else{o=b.L3()
1644 v=x.c
1645 y=J.w8(v)
1646 x=v.gI4()
1647 b.Gv=8
1648 b.jk=new P.Ca(y,x)}z.e=b
1649 y=b
1650 b=o}}}},
1651 da:{
1652 "^":"Tp:7;a,b",
1653 $0:function(){P.HZ(this.a,this.b)}},
1654 pV:{
1655 "^":"Tp:9;a",
1656 $1:function(a){var z,y
1657 z=this.a
1658 y=z.L3()
1659 z.Am(a)
1660 P.HZ(z,y)}},
1661 U7:{
1662 "^":"Tp:14;b",
1663 $2:function(a,b){this.b.K5(a,b)},
1664 $1:function(a){return this.$2(a,null)}},
1665 rq:{
1666 "^":"Tp:15;b,d,e,f",
1667 $0:function(){var z,y,x,w,v
1668 try{x=this.f
1669 w=this.d
1670 w=w.Gv===2?null:w.OY
1671 x.toString
1672 this.b.c=P.V7(x,null,x,w,this.e)
1673 return!0}catch(v){x=H.Ru(v)
1674 z=x
1675 y=new H.XO(v,null)
1676 this.b.c=new P.Ca(z,y)
1677 return!1}}},
1678 RW:{
1679 "^":"Tp:1;c,b,UI,bK",
1680 $0:function(){var z,y,x,w,v,u,t,s,r,q,p,o,n,m
1681 z=this.c.e.gcG()
1682 r=this.UI
1683 y=r.Gv===2?null:r.As
1684 x=!0
1685 if(y!=null)try{q=this.bK
1686 p=J.w8(z)
1687 q.toString
1688 x=P.V7(q,null,q,y,p)}catch(o){r=H.Ru(o)
1689 w=r
1690 v=new H.XO(o,null)
1691 r=J.w8(z)
1692 q=w
1693 n=(r==null?q==null:r===q)?z:new P.Ca(w,v)
1694 r=this.b
1695 r.c=n
1696 r.b=!1
1697 return}u=r.Gv===2?null:r.qV
1698 if(x===!0&&u!=null){try{r=u
1699 q=H.N7()
1700 q=H.KT(q,[q,q]).BD(r)
1701 p=this.bK
1702 m=this.b
1703 if(q){r=J.w8(z)
1704 q=z.gI4()
1705 p.toString
1706 m.c=P.Qx(p,null,p,u,r,q)}else{r=J.w8(z)
1707 p.toString
1708 m.c=P.V7(p,null,p,u,r)}}catch(o){r=H.Ru(o)
1709 t=r
1710 s=new H.XO(o,null)
1711 r=J.w8(z)
1712 q=t
1713 n=(r==null?q==null:r===q)?z:new P.Ca(t,s)
1714 r=this.b
1715 r.c=n
1716 r.b=!1
1717 return}this.b.b=!0}else{r=this.b
1718 r.c=z
1719 r.b=!1}}},
1720 YP:{
1721 "^":"Tp:1;c,b,Gq,Rm,w3",
1722 $0:function(){var z,y,x,w,v,u
1723 z={}
1724 z.a=null
1725 try{w=this.w3
1726 v=this.Rm
1727 v=v.Gv===2?null:v.o4
1728 w.toString
1729 z.a=P.T8(w,null,w,v)}catch(u){w=H.Ru(u)
1730 y=w
1731 x=new H.XO(u,null)
1732 if(this.Gq){w=J.w8(this.c.e.gcG())
1733 v=y
1734 v=w==null?v==null:w===v
1735 w=v}else w=!1
1736 v=this.b
1737 if(w)v.c=this.c.e.gcG()
1738 else v.c=new P.Ca(y,x)
1739 v.b=!1}if(!!J.x(z.a).$isb8){w=this.Rm
1740 w.swG(!0)
1741 this.b.d=!0
1742 z.a.Rx(new P.jZ(this.c,w),new P.FZ(z,w))}}},
1743 jZ:{
1744 "^":"Tp:9;c,HZ",
1745 $1:function(a){P.HZ(this.c.e,this.HZ)}},
1746 FZ:{
1747 "^":"Tp:14;a,mG",
1748 $2:function(a,b){var z,y
1749 z=this.a
1750 if(!J.x(z.a).$isvs){y=P.Dt(null)
1751 z.a=y
1752 y.E6(a,b)}P.HZ(z.a,this.mG)},
1753 $1:function(a){return this.$2(a,null)}},
1754 OM:{
1755 "^":"a;FR,aw",
1756 Ki:function(){return this.FR.$0()}},
1757 qh:{
1758 "^":"a;",
1759 aN:function(a,b){var z,y
1760 z={}
1761 y=P.Dt(null)
1762 z.a=null
1763 z.a=this.KR(new P.lz(z,this,b,y),!0,new P.M4(y),y.gbY())
1764 return y},
1765 gB:function(a){var z,y
1766 z={}
1767 y=P.Dt(P.KN)
1768 z.a=0
1769 this.KR(new P.B5(z),!0,new P.PI(z,y),y.gbY())
1770 return y}},
1771 lz:{
1772 "^":"Tp;a,b,c,d",
1773 $1:function(a){P.FE(new P.Rl(this.c,a),new P.Jb(),P.TB(this.a.a,this.d))},
1774 $signature:function(){return H.IG(function(a){return{func:"Lf",args:[a]}},this.b ,"qh")}},
1775 Rl:{
1776 "^":"Tp:7;e,f",
1777 $0:function(){return this.e.$1(this.f)}},
1778 Jb:{
1779 "^":"Tp:9;",
1780 $1:function(a){}},
1781 M4:{
1782 "^":"Tp:7;UI",
1783 $0:function(){this.UI.rX(null)}},
1784 B5:{
1785 "^":"Tp:9;a",
1786 $1:function(a){++this.a.a}},
1787 PI:{
1788 "^":"Tp:7;a,b",
1789 $0:function(){this.b.rX(this.a.a)}},
1790 MO:{
1791 "^":"a;"},
1792 nP:{
1793 "^":"a;"},
1794 dR:{
1795 "^":"Tp:7;a,b,c",
1796 $0:function(){return this.a.K5(this.b,this.c)}},
1797 uR:{
1798 "^":"Tp:16;a,b",
1799 $2:function(a,b){return P.NX(this.a,this.b,a,b)}},
1800 fZ:{
1801 "^":"a;",
1802 bH:function(a){var z,y,x,w
1803 try{x=this.Gr(a)
1804 return x}catch(w){x=H.Ru(w)
1805 z=x
1806 y=new H.XO(w,null)
1807 return this.hk(z,y)}},
1808 m1:function(a,b){var z,y,x,w
1809 try{x=this.FI(a,b)
1810 return x}catch(w){x=H.Ru(w)
1811 z=x
1812 y=new H.XO(w,null)
1813 return this.hk(z,y)}},
1814 xi:function(a,b){var z=this.Al(a)
1815 if(b)return new P.TF(this,z)
1816 else return new P.K5(this,z)},
1817 ce:function(a){return this.xi(a,!0)},
1818 oj:function(a,b){var z=this.cR(a)
1819 if(b)return new P.Cg(this,z)
1820 else return new P.Hs(this,z)}},
1821 TF:{
1822 "^":"Tp:7;a,b",
1823 $0:function(){return this.a.bH(this.b)}},
1824 K5:{
1825 "^":"Tp:7;c,d",
1826 $0:function(){return this.c.Gr(this.d)}},
1827 Cg:{
1828 "^":"Tp:9;a,b",
1829 $1:function(a){return this.a.m1(this.b,a)}},
1830 Hs:{
1831 "^":"Tp:9;c,d",
1832 $1:function(a){return this.c.FI(this.d,a)}},
1833 pK:{
1834 "^":"Tp:7;a,b",
1835 $0:function(){P.IA(new P.eM(this.a,this.b))}},
1836 eM:{
1837 "^":"Tp:7;c,d",
1838 $0:function(){var z,y
1839 z=this.c
1840 P.JS("Uncaught Error: "+H.d(z))
1841 y=this.d
1842 if(y==null&&!!J.x(z).$isGe)y=z.gI4()
1843 if(y!=null)P.JS("Stack Trace: \n"+H.d(y)+"\n")
1844 throw H.b(z)}},
1845 R8:{
1846 "^":"fZ;",
1847 t:function(a,b){return},
1848 hk:function(a,b){return P.L2(this,null,this,a,b)},
1849 Gr:function(a){return P.T8(this,null,this,a)},
1850 FI:function(a,b){return P.V7(this,null,this,a,b)},
1851 Al:function(a){return a},
1852 cR:function(a){return a}}}],["dart.collection","dart:collection",,P,{
1853 "^":"",
1854 EF:function(a,b,c){return H.B7(a,H.VM(new P.YB(0,null,null,null,null,null,0),[b, c]))},
1855 jB:function(){var z=Object.create(null)
1856 z["<non-identifier-key>"]=z
1857 delete z["<non-identifier-key>"]
1858 return z},
1859 Ou:[function(a,b){return J.de(a,b)},"$2","iv",4,0,2],
1860 T9:[function(a){return J.v1(a)},"$1","py",2,0,3],
1861 Py:function(a,b,c,d,e){return H.VM(new P.k6(0,null,null,null,null),[d,e])},
1862 yv:function(a){return H.VM(new P.YO(0,null,null,null,null),[a])},
1863 FO:function(a){var z,y
1864 if($.xb().tg(0,a))return"(...)"
1865 $.xb().h(0,a)
1866 z=[]
1867 try{P.Vr(a,z)}finally{$.xb().Rz(0,a)}y=P.p9("(")
1868 y.We(z,", ")
1869 y.KF(")")
1870 return y.vM},
1871 Vr:function(a,b){var z,y,x,w,v,u,t,s,r,q,p
1872 z=a.gA(a)
1873 y=0
1874 x=0
1875 while(!0){if(!(y<80||x<3))break
1876 if(!z.G())return
1877 w=H.d(z.gl())
1878 b.push(w)
1879 y+=w.length+2;++x}if(!z.G()){if(x<=5)return
1880 if(0>=b.length)return H.e(b,0)
1881 v=b.pop()
1882 if(0>=b.length)return H.e(b,0)
1883 u=b.pop()}else{t=z.gl();++x
1884 if(!z.G()){if(x<=4){b.push(H.d(t))
1885 return}v=H.d(t)
1886 if(0>=b.length)return H.e(b,0)
1887 u=b.pop()
1888 y+=v.length+2}else{s=z.gl();++x
1889 for(;z.G();t=s,s=r){r=z.gl();++x
1890 if(x>100){while(!0){if(!(y>75&&x>3))break
1891 if(0>=b.length)return H.e(b,0)
1892 q=J.q8(b.pop())
1893 if(typeof q!=="number")return q.g()
1894 y-=q+2;--x}b.push("...")
1895 return}}u=H.d(t)
1896 v=H.d(s)
1897 y+=v.length+u.length+4}}if(x>b.length+2){y+=5
1898 p="..."}else p=null
1899 while(!0){if(!(y>80&&b.length>3))break
1900 if(0>=b.length)return H.e(b,0)
1901 q=J.q8(b.pop())
1902 if(typeof q!=="number")return q.g()
1903 y-=q+2
1904 if(p==null){y+=5
1905 p="..."}}if(p!=null)b.push(p)
1906 b.push(u)
1907 b.push(v)},
1908 L5:function(a,b,c,d,e){return H.VM(new P.YB(0,null,null,null,null,null,0),[d,e]) },
1909 Ls:function(a,b,c,d){return H.VM(new P.b6(0,null,null,null,null,null,0),[d])},
1910 vW:function(a){var z,y,x,w,v
1911 z={}
1912 for(x=0;w=$.tw(),x<w.length;++x){w=w[x]
1913 v=a
1914 if(w==null?v==null:w===v)return"{...}"}y=P.p9("")
1915 try{$.tw().push(a)
1916 y.KF("{")
1917 z.a=!0
1918 J.kH(a,new P.LG(z,y))
1919 y.KF("}")}finally{z=$.tw()
1920 if(0>=z.length)return H.e(z,0)
1921 z.pop()}return y.gvM()},
1922 k6:{
1923 "^":"a;X5,vv,OX,OB,wV",
1924 gB:function(a){return this.X5},
1925 gvc:function(){return H.VM(new P.fG(this),[H.Kp(this,0)])},
1926 gUQ:function(a){return H.K1(H.VM(new P.fG(this),[H.Kp(this,0)]),new P.oi(this),H .Kp(this,0),H.Kp(this,1))},
1927 t:function(a,b){var z,y,x,w
1928 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
1929 if(z==null)y=null
1930 else{x=z[b]
1931 y=x===z?null:x}return y}else if(typeof b==="number"&&(b&0x3ffffff)===b){w=this.O X
1932 if(w==null)y=null
1933 else{x=w[b]
1934 y=x===w?null:x}return y}else return this.Dl(b)},
1935 Dl:function(a){var z,y,x
1936 z=this.OB
1937 if(z==null)return
1938 y=z[this.nm(a)]
1939 x=this.aH(y,a)
1940 return x<0?null:y[x+1]},
1941 u:function(a,b,c){var z,y
1942 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
1943 if(z==null){z=P.a0()
1944 this.vv=z}this.dg(z,b,c)}else if(typeof b==="number"&&(b&0x3ffffff)===b){y=this. OX
1945 if(y==null){y=P.a0()
1946 this.OX=y}this.dg(y,b,c)}else this.ms(b,c)},
1947 ms:function(a,b){var z,y,x,w
1948 z=this.OB
1949 if(z==null){z=P.a0()
1950 this.OB=z}y=this.nm(a)
1951 x=z[y]
1952 if(x==null){P.cW(z,y,[a,b]);++this.X5
1953 this.wV=null}else{w=this.aH(x,a)
1954 if(w>=0)x[w+1]=b
1955 else{x.push(a,b);++this.X5
1956 this.wV=null}}},
1957 aN:function(a,b){var z,y,x,w
1958 z=this.Ig()
1959 for(y=z.length,x=0;x<y;++x){w=z[x]
1960 b.$2(w,this.t(0,w))
1961 if(z!==this.wV)throw H.b(P.a4(this))}},
1962 Ig:function(){var z,y,x,w,v,u,t,s,r,q,p,o
1963 z=this.wV
1964 if(z!=null)return z
1965 y=Array(this.X5)
1966 y.fixed$length=init
1967 x=this.vv
1968 if(x!=null){w=Object.getOwnPropertyNames(x)
1969 v=w.length
1970 for(u=0,t=0;t<v;++t){y[u]=w[t];++u}}else u=0
1971 s=this.OX
1972 if(s!=null){w=Object.getOwnPropertyNames(s)
1973 v=w.length
1974 for(t=0;t<v;++t){y[u]=+w[t];++u}}r=this.OB
1975 if(r!=null){w=Object.getOwnPropertyNames(r)
1976 v=w.length
1977 for(t=0;t<v;++t){q=r[w[t]]
1978 p=q.length
1979 for(o=0;o<p;o+=2){y[u]=q[o];++u}}}this.wV=y
1980 return y},
1981 dg:function(a,b,c){if(a[b]==null){++this.X5
1982 this.wV=null}P.cW(a,b,c)},
1983 nm:function(a){return J.v1(a)&0x3ffffff},
1984 aH:function(a,b){var z,y
1985 if(a==null)return-1
1986 z=a.length
1987 for(y=0;y<z;y+=2)if(J.de(a[y],b))return y
1988 return-1},
1989 $isZ0:true,
1990 static:{cW:function(a,b,c){if(c==null)a[b]=a
1991 else a[b]=c},a0:function(){var z=Object.create(null)
1992 P.cW(z,"<non-identifier-key>",z)
1993 delete z["<non-identifier-key>"]
1994 return z}}},
1995 oi:{
1996 "^":"Tp:9;a",
1997 $1:function(a){return this.a.t(0,a)}},
1998 fG:{
1999 "^":"mW;Fb",
2000 gB:function(a){return this.Fb.X5},
2001 gA:function(a){var z=this.Fb
2002 return new P.EQ(z,z.Ig(),0,null)},
2003 aN:function(a,b){var z,y,x,w
2004 z=this.Fb
2005 y=z.Ig()
2006 for(x=y.length,w=0;w<x;++w){b.$1(y[w])
2007 if(y!==z.wV)throw H.b(P.a4(z))}}},
2008 EQ:{
2009 "^":"a;Fb,wV,zi,fD",
2010 gl:function(){return this.fD},
2011 G:function(){var z,y,x
2012 z=this.wV
2013 y=this.zi
2014 x=this.Fb
2015 if(z!==x.wV)throw H.b(P.a4(x))
2016 else if(y>=z.length){this.fD=null
2017 return!1}else{this.fD=z[y]
2018 this.zi=y+1
2019 return!0}}},
2020 YB:{
2021 "^":"a;X5,vv,OX,OB,H9,lX,zN",
2022 gB:function(a){return this.X5},
2023 gvc:function(){return H.VM(new P.i5(this),[H.Kp(this,0)])},
2024 gUQ:function(a){return H.K1(H.VM(new P.i5(this),[H.Kp(this,0)]),new P.a1(this),H .Kp(this,0),H.Kp(this,1))},
2025 x4:function(a){var z
2026 if((a&0x3ffffff)===a){z=this.OX
2027 if(z==null)return!1
2028 return z[a]!=null}else return this.Zt(a)},
2029 Zt:function(a){var z=this.OB
2030 if(z==null)return!1
2031 return this.aH(z[this.nm(a)],a)>=0},
2032 t:function(a,b){var z,y,x
2033 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
2034 if(z==null)return
2035 y=z[b]
2036 return y==null?null:y.gS4()}else if(typeof b==="number"&&(b&0x3ffffff)===b){x=th is.OX
2037 if(x==null)return
2038 y=x[b]
2039 return y==null?null:y.gS4()}else return this.Dl(b)},
2040 Dl:function(a){var z,y,x
2041 z=this.OB
2042 if(z==null)return
2043 y=z[this.nm(a)]
2044 x=this.aH(y,a)
2045 if(x<0)return
2046 return y[x].gS4()},
2047 u:function(a,b,c){var z,y
2048 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
2049 if(z==null){z=P.Qs()
2050 this.vv=z}this.dg(z,b,c)}else if(typeof b==="number"&&(b&0x3ffffff)===b){y=this. OX
2051 if(y==null){y=P.Qs()
2052 this.OX=y}this.dg(y,b,c)}else this.ms(b,c)},
2053 ms:function(a,b){var z,y,x,w
2054 z=this.OB
2055 if(z==null){z=P.Qs()
2056 this.OB=z}y=this.nm(a)
2057 x=z[y]
2058 if(x==null)z[y]=[this.pE(a,b)]
2059 else{w=this.aH(x,a)
2060 if(w>=0)x[w].sS4(b)
2061 else x.push(this.pE(a,b))}},
2062 Rz:function(a,b){if(typeof b==="string"&&b!=="__proto__")return this.Nv(this.vv, b)
2063 else if(typeof b==="number"&&(b&0x3ffffff)===b)return this.Nv(this.OX,b)
2064 else return this.bB(b)},
2065 bB:function(a){var z,y,x,w
2066 z=this.OB
2067 if(z==null)return
2068 y=z[this.nm(a)]
2069 x=this.aH(y,a)
2070 if(x<0)return
2071 w=y.splice(x,1)[0]
2072 this.Vb(w)
2073 return w.gS4()},
2074 aN:function(a,b){var z,y
2075 z=this.H9
2076 y=this.zN
2077 for(;z!=null;){b.$2(z.gkh(),z.S4)
2078 if(y!==this.zN)throw H.b(P.a4(this))
2079 z=z.DG}},
2080 dg:function(a,b,c){var z=a[b]
2081 if(z==null)a[b]=this.pE(b,c)
2082 else z.sS4(c)},
2083 Nv:function(a,b){var z
2084 if(a==null)return
2085 z=a[b]
2086 if(z==null)return
2087 this.Vb(z)
2088 delete a[b]
2089 return z.gS4()},
2090 pE:function(a,b){var z,y
2091 z=new P.db(a,b,null,null)
2092 if(this.H9==null){this.lX=z
2093 this.H9=z}else{y=this.lX
2094 z.zQ=y
2095 y.sDG(z)
2096 this.lX=z}++this.X5
2097 this.zN=this.zN+1&67108863
2098 return z},
2099 Vb:function(a){var z,y
2100 z=a.gzQ()
2101 y=a.gDG()
2102 if(z==null)this.H9=y
2103 else z.sDG(y)
2104 if(y==null)this.lX=z
2105 else y.szQ(z);--this.X5
2106 this.zN=this.zN+1&67108863},
2107 nm:function(a){return J.v1(a)&0x3ffffff},
2108 aH:function(a,b){var z,y
2109 if(a==null)return-1
2110 z=a.length
2111 for(y=0;y<z;++y)if(J.de(a[y].gkh(),b))return y
2112 return-1},
2113 bu:function(a){return P.vW(this)},
2114 $isZ0:true,
2115 static:{Qs:function(){var z=Object.create(null)
2116 z["<non-identifier-key>"]=z
2117 delete z["<non-identifier-key>"]
2118 return z}}},
2119 a1:{
2120 "^":"Tp:9;a",
2121 $1:function(a){return this.a.t(0,a)}},
2122 db:{
2123 "^":"a;kh<,S4@,DG@,zQ@"},
2124 i5:{
2125 "^":"mW;Fb",
2126 gB:function(a){return this.Fb.X5},
2127 gA:function(a){var z,y
2128 z=this.Fb
2129 y=new P.N6(z,z.zN,null,null)
2130 y.zq=z.H9
2131 return y},
2132 aN:function(a,b){var z,y,x
2133 z=this.Fb
2134 y=z.H9
2135 x=z.zN
2136 for(;y!=null;){b.$1(y.gkh())
2137 if(x!==z.zN)throw H.b(P.a4(z))
2138 y=y.DG}}},
2139 N6:{
2140 "^":"a;Fb,zN,zq,fD",
2141 gl:function(){return this.fD},
2142 G:function(){var z=this.Fb
2143 if(this.zN!==z.zN)throw H.b(P.a4(z))
2144 else{z=this.zq
2145 if(z==null){this.fD=null
2146 return!1}else{this.fD=z.gkh()
2147 this.zq=this.zq.gDG()
2148 return!0}}}},
2149 jg:{
2150 "^":"u3;",
2151 gA:function(a){return new P.oz(this,this.Zl(),0,null)},
2152 gB:function(a){return this.X5},
2153 tg:function(a,b){var z,y
2154 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
2155 return z==null?!1:z[b]!=null}else if(typeof b==="number"&&(b&0x3ffffff)===b){y=t his.OX
2156 return y==null?!1:y[b]!=null}else return this.bk(b)},
2157 bk:function(a){var z=this.OB
2158 if(z==null)return!1
2159 return this.aH(z[this.nm(a)],a)>=0},
2160 hV:function(a){var z
2161 if(!(typeof a==="string"&&a!=="__proto__"))z=typeof a==="number"&&(a&0x3ffffff)= ==a
2162 else z=!0
2163 if(z)return this.tg(0,a)?a:null
2164 return this.AD(a)},
2165 AD:function(a){var z,y,x
2166 z=this.OB
2167 if(z==null)return
2168 y=z[this.nm(a)]
2169 x=this.aH(y,a)
2170 if(x<0)return
2171 return J.UQ(y,x)},
2172 h:function(a,b){return this.NZ(b)},
2173 NZ:function(a){var z,y,x
2174 z=this.OB
2175 if(z==null){z=P.jB()
2176 this.OB=z}y=this.nm(a)
2177 x=z[y]
2178 if(x==null)z[y]=[a]
2179 else{if(this.aH(x,a)>=0)return!1
2180 x.push(a)}++this.X5
2181 this.DM=null
2182 return!0},
2183 Rz:function(a,b){return this.bB(b)},
2184 bB:function(a){var z,y,x
2185 z=this.OB
2186 if(z==null)return!1
2187 y=z[this.nm(a)]
2188 x=this.aH(y,a)
2189 if(x<0)return!1;--this.X5
2190 this.DM=null
2191 y.splice(x,1)
2192 return!0},
2193 Zl:function(){var z,y,x,w,v,u,t,s,r,q,p,o
2194 z=this.DM
2195 if(z!=null)return z
2196 y=Array(this.X5)
2197 y.fixed$length=init
2198 x=this.vv
2199 if(x!=null){w=Object.getOwnPropertyNames(x)
2200 v=w.length
2201 for(u=0,t=0;t<v;++t){y[u]=w[t];++u}}else u=0
2202 s=this.OX
2203 if(s!=null){w=Object.getOwnPropertyNames(s)
2204 v=w.length
2205 for(t=0;t<v;++t){y[u]=+w[t];++u}}r=this.OB
2206 if(r!=null){w=Object.getOwnPropertyNames(r)
2207 v=w.length
2208 for(t=0;t<v;++t){q=r[w[t]]
2209 p=q.length
2210 for(o=0;o<p;++o){y[u]=q[o];++u}}}this.DM=y
2211 return y},
2212 nm:function(a){return J.v1(a)&0x3ffffff},
2213 aH:function(a,b){var z,y
2214 if(a==null)return-1
2215 z=a.length
2216 for(y=0;y<z;++y)if(J.de(a[y],b))return y
2217 return-1}},
2218 YO:{
2219 "^":"jg;X5,vv,OX,OB,DM",
2220 nm:function(a){return H.CU(a)&0x3ffffff},
2221 aH:function(a,b){var z,y,x
2222 if(a==null)return-1
2223 z=a.length
2224 for(y=0;y<z;++y){x=a[y]
2225 if(x==null?b==null:x===b)return y}return-1}},
2226 oz:{
2227 "^":"a;O2,DM,zi,fD",
2228 gl:function(){return this.fD},
2229 G:function(){var z,y,x
2230 z=this.DM
2231 y=this.zi
2232 x=this.O2
2233 if(z!==x.DM)throw H.b(P.a4(x))
2234 else if(y>=z.length){this.fD=null
2235 return!1}else{this.fD=z[y]
2236 this.zi=y+1
2237 return!0}}},
2238 b6:{
2239 "^":"u3;X5,vv,OX,OB,H9,lX,zN",
2240 gA:function(a){var z=new P.zQ(this,this.zN,null,null)
2241 z.zq=this.H9
2242 return z},
2243 gB:function(a){return this.X5},
2244 tg:function(a,b){var z,y
2245 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
2246 if(z==null)return!1
2247 return z[b]!=null}else if(typeof b==="number"&&(b&0x3ffffff)===b){y=this.OX
2248 if(y==null)return!1
2249 return y[b]!=null}else return this.bk(b)},
2250 bk:function(a){var z=this.OB
2251 if(z==null)return!1
2252 return this.aH(z[this.nm(a)],a)>=0},
2253 hV:function(a){var z
2254 if(!(typeof a==="string"&&a!=="__proto__"))z=typeof a==="number"&&(a&0x3ffffff)= ==a
2255 else z=!0
2256 if(z)return this.tg(0,a)?a:null
2257 else return this.AD(a)},
2258 AD:function(a){var z,y,x
2259 z=this.OB
2260 if(z==null)return
2261 y=z[this.nm(a)]
2262 x=this.aH(y,a)
2263 if(x<0)return
2264 return J.UQ(y,x).gGc()},
2265 aN:function(a,b){var z,y
2266 z=this.H9
2267 y=this.zN
2268 for(;z!=null;){b.$1(z.gGc())
2269 if(y!==this.zN)throw H.b(P.a4(this))
2270 z=z.DG}},
2271 h:function(a,b){var z,y
2272 if(typeof b==="string"&&b!=="__proto__"){z=this.vv
2273 if(z==null){z=P.T2()
2274 this.vv=z}return this.cA(z,b)}else if(typeof b==="number"&&(b&0x3ffffff)===b){y= this.OX
2275 if(y==null){y=P.T2()
2276 this.OX=y}return this.cA(y,b)}else return this.NZ(b)},
2277 NZ:function(a){var z,y,x
2278 z=this.OB
2279 if(z==null){z=P.T2()
2280 this.OB=z}y=this.nm(a)
2281 x=z[y]
2282 if(x==null)z[y]=[this.xf(a)]
2283 else{if(this.aH(x,a)>=0)return!1
2284 x.push(this.xf(a))}return!0},
2285 Rz:function(a,b){if(typeof b==="string"&&b!=="__proto__")return this.Nv(this.vv, b)
2286 else if(typeof b==="number"&&(b&0x3ffffff)===b)return this.Nv(this.OX,b)
2287 else return this.bB(b)},
2288 bB:function(a){var z,y,x
2289 z=this.OB
2290 if(z==null)return!1
2291 y=z[this.nm(a)]
2292 x=this.aH(y,a)
2293 if(x<0)return!1
2294 this.Vb(y.splice(x,1)[0])
2295 return!0},
2296 cA:function(a,b){if(a[b]!=null)return!1
2297 a[b]=this.xf(b)
2298 return!0},
2299 Nv:function(a,b){var z
2300 if(a==null)return!1
2301 z=a[b]
2302 if(z==null)return!1
2303 this.Vb(z)
2304 delete a[b]
2305 return!0},
2306 xf:function(a){var z,y
2307 z=new P.tj(a,null,null)
2308 if(this.H9==null){this.lX=z
2309 this.H9=z}else{y=this.lX
2310 z.zQ=y
2311 y.sDG(z)
2312 this.lX=z}++this.X5
2313 this.zN=this.zN+1&67108863
2314 return z},
2315 Vb:function(a){var z,y
2316 z=a.gzQ()
2317 y=a.gDG()
2318 if(z==null)this.H9=y
2319 else z.sDG(y)
2320 if(y==null)this.lX=z
2321 else y.szQ(z);--this.X5
2322 this.zN=this.zN+1&67108863},
2323 nm:function(a){return J.v1(a)&0x3ffffff},
2324 aH:function(a,b){var z,y
2325 if(a==null)return-1
2326 z=a.length
2327 for(y=0;y<z;++y)if(J.de(a[y].gGc(),b))return y
2328 return-1},
2329 static:{T2:function(){var z=Object.create(null)
2330 z["<non-identifier-key>"]=z
2331 delete z["<non-identifier-key>"]
2332 return z}}},
2333 tj:{
2334 "^":"a;Gc<,DG@,zQ@"},
2335 zQ:{
2336 "^":"a;O2,zN,zq,fD",
2337 gl:function(){return this.fD},
2338 G:function(){var z=this.O2
2339 if(this.zN!==z.zN)throw H.b(P.a4(z))
2340 else{z=this.zq
2341 if(z==null){this.fD=null
2342 return!1}else{this.fD=z.gGc()
2343 this.zq=this.zq.gDG()
2344 return!0}}}},
2345 u3:{
2346 "^":"mW;",
2347 bu:function(a){return H.mx(this,"{","}")}},
2348 mW:{
2349 "^":"a;",
2350 aN:function(a,b){var z
2351 for(z=this.gA(this);z.G();)b.$1(z.gl())},
2352 gB:function(a){var z,y
2353 z=this.gA(this)
2354 for(y=0;z.G();)++y
2355 return y},
2356 Zv:function(a,b){var z,y,x
2357 if(b<0)throw H.b(P.N(b))
2358 for(z=this.gA(this),y=b;z.G();){x=z.gl()
2359 if(y===0)return x;--y}throw H.b(P.N(b))},
2360 bu:function(a){return P.FO(this)}},
2361 FN:{
2362 "^":"a;",
2363 gA:function(a){return new H.a7(a,this.gB(a),0,null)},
2364 Zv:function(a,b){return this.t(a,b)},
2365 aN:function(a,b){var z,y,x
2366 z=this.gB(a)
2367 for(y=a.length,x=0;x<z;++x){if(x>=y)return H.e(a,x)
2368 b.$1(a[x])
2369 if(z!==y)throw H.b(P.a4(a))}},
2370 bu:function(a){var z
2371 if($.xb().tg(0,a))return"[...]"
2372 z=P.p9("")
2373 try{$.xb().h(0,a)
2374 z.KF("[")
2375 z.We(a,", ")
2376 z.KF("]")}finally{$.xb().Rz(0,a)}return z.gvM()},
2377 $iszM:true,
2378 $aszM:null},
2379 LG:{
2380 "^":"Tp:8;a,b",
2381 $2:function(a,b){var z=this.a
2382 if(!z.a)this.b.KF(", ")
2383 z.a=!1
2384 z=this.b
2385 z.KF(a)
2386 z.KF(": ")
2387 z.KF(b)}},
2388 Sw:{
2389 "^":"mW;v5,av,HV,qT",
2390 gA:function(a){return new P.o0(this,this.HV,this.qT,this.av,null)},
2391 aN:function(a,b){var z,y,x
2392 z=this.qT
2393 for(y=this.av;y!==this.HV;y=(y+1&this.v5.length-1)>>>0){x=this.v5
2394 if(y<0||y>=x.length)return H.e(x,y)
2395 b.$1(x[y])
2396 if(z!==this.qT)H.vh(P.a4(this))}},
2397 gl0:function(a){return this.av===this.HV},
2398 gB:function(a){return(this.HV-this.av&this.v5.length-1)>>>0},
2399 V1:function(a){var z,y,x,w,v
2400 z=this.av
2401 y=this.HV
2402 if(z!==y){for(x=this.v5,w=x.length,v=w-1;z!==y;z=(z+1&v)>>>0){if(z<0||z>=w)retur n H.e(x,z)
2403 x[z]=null}this.HV=0
2404 this.av=0;++this.qT}},
2405 bu:function(a){return H.mx(this,"{","}")},
2406 Ux:function(){var z,y,x,w
2407 z=this.av
2408 if(z===this.HV)throw H.b(P.w("No elements"));++this.qT
2409 y=this.v5
2410 x=y.length
2411 if(z>=x)return H.e(y,z)
2412 w=y[z]
2413 y[z]=null
2414 this.av=(z+1&x-1)>>>0
2415 return w},
2416 NZ:function(a){var z,y,x
2417 z=this.v5
2418 y=this.HV
2419 x=z.length
2420 if(y>=x)return H.e(z,y)
2421 z[y]=a
2422 x=(y+1&x-1)>>>0
2423 this.HV=x
2424 if(this.av===x)this.VW();++this.qT},
2425 VW:function(){var z,y,x,w
2426 z=Array(this.v5.length*2)
2427 z.fixed$length=init
2428 y=H.VM(z,[H.Kp(this,0)])
2429 z=this.v5
2430 x=this.av
2431 w=z.length-x
2432 H.qG(y,0,w,z,x)
2433 z=this.av
2434 x=this.v5
2435 H.qG(y,w,w+z,x,0)
2436 this.av=0
2437 this.HV=this.v5.length
2438 this.v5=y},
2439 Eo:function(a,b){var z=Array(8)
2440 z.fixed$length=init
2441 this.v5=H.VM(z,[b])},
2442 static:{"^":"TN"}},
2443 o0:{
2444 "^":"a;Lz,dP,qT,Dc,fD",
2445 gl:function(){return this.fD},
2446 G:function(){var z,y,x
2447 z=this.Lz
2448 if(this.qT!==z.qT)H.vh(P.a4(z))
2449 y=this.Dc
2450 if(y===this.dP){this.fD=null
2451 return!1}z=z.v5
2452 x=z.length
2453 if(y>=x)return H.e(z,y)
2454 this.fD=z[y]
2455 this.Dc=(y+1&x-1)>>>0
2456 return!0}}}],["dart.core","dart:core",,P,{
2457 "^":"",
2458 Hp:function(a){return H.Fv(a)},
2459 hl:function(a){var z,y,x,w,v
2460 if(typeof a==="number"||typeof a==="boolean"||null==a)return J.AG(a)
2461 if(typeof a==="string"){z=new P.Rn("")
2462 z.vM="\""
2463 for(y=a.length,x=0,w="\"";x<y;++x){v=C.xB.j(a,x)
2464 if(v<=31)if(v===10)w=z.vM+="\\n"
2465 else if(v===13)w=z.vM+="\\r"
2466 else if(v===9)w=z.vM+="\\t"
2467 else{w=z.vM+="\\x"
2468 if(v<16)z.vM=w+"0"
2469 else{z.vM=w+"1"
2470 v-=16}w=H.Lw(v<10?48+v:87+v)
2471 w=z.vM+=w}else if(v===92)w=z.vM+="\\\\"
2472 else if(v===34)w=z.vM+="\\\""
2473 else{w=H.Lw(v)
2474 w=z.vM+=w}}y=w+"\""
2475 z.vM=y
2476 return y}return"Instance of '"+H.lh(a)+"'"},
2477 FM:function(a){return new P.HG(a)},
2478 ad:[function(a,b){return a==null?b==null:a===b},"$2","n0",4,0,4],
2479 xv:[function(a){return H.CU(a)},"$1","J2",2,0,5],
2480 F:function(a,b,c){var z,y
2481 z=H.VM([],[c])
2482 for(y=a.gA(a);y.G();)z.push(y.gl())
2483 if(b)return z
2484 z.fixed$length=init
2485 return z},
2486 JS:function(a){var z=H.d(a)
2487 H.qw(z)},
2488 CL:{
2489 "^":"Tp:17;a",
2490 $2:function(a,b){var z=this.a
2491 if(z.b>0)z.a.KF(", ")
2492 z.a.KF(P.Hp(a))}},
2493 a2:{
2494 "^":"a;",
2495 $isa2:true},
2496 "+bool":0,
2497 CP:{
2498 "^":"lf;"},
2499 "+double":0,
2500 a6:{
2501 "^":"a;Fq",
2502 g:function(a,b){return P.k5(0,0,C.jn.g(this.Fq,b.gFq()),0,0,0)},
2503 C:function(a,b){return C.jn.C(this.Fq,b.gFq())},
2504 F:function(a,b){return C.jn.F(this.Fq,b.gFq())},
2505 n:function(a,b){if(b==null)return!1
2506 if(!J.x(b).$isa6)return!1
2507 return this.Fq===b.Fq},
2508 giO:function(a){return this.Fq&0x1FFFFFFF},
2509 bu:function(a){var z,y,x,w,v
2510 z=new P.DW()
2511 y=this.Fq
2512 if(y<0)return"-"+P.k5(0,0,-y,0,0,0).bu(0)
2513 x=z.$1(C.jn.JV(C.jn.cU(y,60000000),60))
2514 w=z.$1(C.jn.JV(C.jn.cU(y,1000000),60))
2515 v=new P.P7().$1(C.jn.JV(y,1000000))
2516 return""+C.jn.cU(y,3600000000)+":"+H.d(x)+":"+H.d(w)+"."+H.d(v)},
2517 $isa6:true,
2518 static:{"^":"Wt,S4,dk,Lo,zj,b2,q9,Ie,Do,Cv,kT,IJ,D9,Vk,S8,rG",k5:function(a,b,c, d,e,f){return new P.a6(a*86400000000+b*3600000000+e*60000000+f*1000000+d*1000+c) }}},
2519 P7:{
2520 "^":"Tp:18;",
2521 $1:function(a){if(a>=100000)return""+a
2522 if(a>=10000)return"0"+a
2523 if(a>=1000)return"00"+a
2524 if(a>=100)return"000"+a
2525 if(a>=10)return"0000"+a
2526 return"00000"+a}},
2527 DW:{
2528 "^":"Tp:18;",
2529 $1:function(a){if(a>=10)return""+a
2530 return"0"+a}},
2531 Ge:{
2532 "^":"a;",
2533 gI4:function(){return new H.XO(this.$thrownJsError,null)},
2534 $isGe:true},
2535 LK:{
2536 "^":"Ge;",
2537 bu:function(a){return"Throw of null."}},
2538 AT:{
2539 "^":"Ge;G1",
2540 bu:function(a){var z=this.G1
2541 if(z!=null)return"Illegal argument(s): "+H.d(z)
2542 return"Illegal argument(s)"},
2543 static:{u:function(a){return new P.AT(a)}}},
2544 bJ:{
2545 "^":"AT;G1",
2546 bu:function(a){return"RangeError: "+H.d(this.G1)},
2547 static:{N:function(a){return new P.bJ("value "+H.d(a))},TE:function(a,b,c){retur n new P.bJ("value "+H.d(a)+" not in range "+b+".."+H.d(c))}}},
2548 ub:{
2549 "^":"Ge;G1",
2550 bu:function(a){return"Unsupported operation: "+this.G1},
2551 static:{f:function(a){return new P.ub(a)}}},
2552 ds:{
2553 "^":"Ge;G1",
2554 bu:function(a){var z=this.G1
2555 return z!=null?"UnimplementedError: "+H.d(z):"UnimplementedError"},
2556 $isGe:true,
2557 static:{SY:function(a){return new P.ds(a)}}},
2558 lj:{
2559 "^":"Ge;G1",
2560 bu:function(a){return"Bad state: "+this.G1},
2561 static:{w:function(a){return new P.lj(a)}}},
2562 UV:{
2563 "^":"Ge;YA",
2564 bu:function(a){var z=this.YA
2565 if(z==null)return"Concurrent modification during iteration."
2566 return"Concurrent modification during iteration: "+H.d(P.hl(z))+"."},
2567 static:{a4:function(a){return new P.UV(a)}}},
2568 VS:{
2569 "^":"a;",
2570 bu:function(a){return"Stack Overflow"},
2571 gI4:function(){return},
2572 $isGe:true},
2573 t7:{
2574 "^":"Ge;Wo",
2575 bu:function(a){return"Reading static variable '"+this.Wo+"' during its initializ ation"},
2576 static:{Gz:function(a){return new P.t7(a)}}},
2577 HG:{
2578 "^":"a;G1",
2579 bu:function(a){var z=this.G1
2580 if(z==null)return"Exception"
2581 return"Exception: "+H.d(z)}},
2582 kM:{
2583 "^":"a;oc",
2584 bu:function(a){return"Expando:"+H.d(this.oc)},
2585 t:function(a,b){var z=H.VK(b,"expando$values")
2586 return z==null?null:H.VK(z,this.J4())},
2587 u:function(a,b,c){var z=H.VK(b,"expando$values")
2588 if(z==null){z=new P.a()
2589 H.aw(b,"expando$values",z)}H.aw(z,this.J4(),c)},
2590 J4:function(){var z,y
2591 z=H.VK(this,"expando$key")
2592 if(z==null){y=$.Ss
2593 $.Ss=y+1
2594 z="expando$key$"+y
2595 H.aw(this,"expando$key",z)}return z},
2596 static:{"^":"bZ,rl,Ss"}},
2597 KN:{
2598 "^":"lf;",
2599 $isKN:true},
2600 "+int":0,
2601 An:{
2602 "^":"a;"},
2603 zM:{
2604 "^":"a;",
2605 $iszM:true,
2606 $aszM:null},
2607 "+List":0,
2608 c8:{
2609 "^":"a;",
2610 bu:function(a){return"null"}},
2611 "+Null":0,
2612 lf:{
2613 "^":"a;",
2614 $islf:true},
2615 "+num":0,
2616 a:{
2617 "^":";",
2618 n:function(a,b){return this===b},
2619 giO:function(a){return H.eQ(this)},
2620 bu:function(a){return H.a5(this)}},
2621 mE:{
2622 "^":"a;"},
2623 qU:{
2624 "^":"a;",
2625 $isqU:true},
2626 "+String":0,
2627 Rn:{
2628 "^":"a;vM<",
2629 gB:function(a){return this.vM.length},
2630 KF:function(a){this.vM+=typeof a==="string"?a:H.d(a)},
2631 We:function(a,b){var z,y
2632 z=J.GP(a)
2633 if(!z.G())return
2634 if(b.length===0)do{y=z.gl()
2635 this.vM+=typeof y==="string"?y:H.d(y)}while(z.G())
2636 else{this.KF(z.gl())
2637 for(;z.G();){this.vM+=b
2638 y=z.gl()
2639 this.vM+=typeof y==="string"?y:H.d(y)}}},
2640 bu:function(a){return this.vM},
2641 PD:function(a){this.vM=a},
2642 static:{p9:function(a){var z=new P.Rn("")
2643 z.PD(a)
2644 return z}}},
2645 wv:{
2646 "^":"a;"}}],["dart.dom.html","dart:html",,W,{
2647 "^":"",
2648 qc:function(a){var z
2649 if(a==null)return
2650 if("setInterval" in a){z=W.P1(a)
2651 if(!!J.x(z).$isD0)return z
2652 return}else return a},
2653 VF:function(a){var z=$.X3
2654 if(z===C.NU)return a
2655 return z.oj(a,!0)},
2656 qE:{
2657 "^":"cv;",
2658 "%":"HTMLAppletElement|HTMLBRElement|HTMLButtonElement|HTMLCanvasElement|HTMLCon tentElement|HTMLDListElement|HTMLDataListElement|HTMLDetailsElement|HTMLDialogEl ement|HTMLDirectoryElement|HTMLDivElement|HTMLEmbedElement|HTMLFieldSetElement|H TMLFontElement|HTMLFrameElement|HTMLHRElement|HTMLHeadElement|HTMLHeadingElement |HTMLHtmlElement|HTMLIFrameElement|HTMLImageElement|HTMLKeygenElement|HTMLLIElem ent|HTMLLabelElement|HTMLLegendElement|HTMLLinkElement|HTMLMapElement|HTMLMarque eElement|HTMLMenuElement|HTMLMetaElement|HTMLMeterElement|HTMLModElement|HTMLOLi stElement|HTMLObjectElement|HTMLOptGroupElement|HTMLOptionElement|HTMLOutputElem ent|HTMLParagraphElement|HTMLParamElement|HTMLPreElement|HTMLProgressElement|HTM LQuoteElement|HTMLScriptElement|HTMLShadowElement|HTMLSourceElement|HTMLSpanElem ent|HTMLStyleElement|HTMLTableCaptionElement|HTMLTableCellElement|HTMLTableColEl ement|HTMLTableDataCellElement|HTMLTableElement|HTMLTableHeaderCellElement|HTMLT ableRowElement|HTMLTableSectionElement|HTMLTemplateElement|HTMLTextAreaElement|H TMLTitleElement|HTMLTrackElement|HTMLUListElement|HTMLUnknownElement;HTMLElement "},
2659 Gh:{
2660 "^":"qE;N:target=",
2661 bu:function(a){return a.toString()},
2662 "%":"HTMLAnchorElement"},
2663 fY:{
2664 "^":"qE;N:target=",
2665 bu:function(a){return a.toString()},
2666 "%":"HTMLAreaElement"},
2667 nB:{
2668 "^":"qE;N:target=",
2669 "%":"HTMLBaseElement"},
2670 QP:{
2671 "^":"qE;",
2672 $isD0:true,
2673 "%":"HTMLBodyElement"},
2674 nx:{
2675 "^":"KV;B:length=",
2676 "%":"CDATASection|Comment|Text;CharacterData"},
2677 Nh:{
2678 "^":"Gv;",
2679 bu:function(a){return a.toString()},
2680 "%":"DOMException"},
2681 cv:{
2682 "^":"KV;",
2683 bu:function(a){return a.localName},
2684 gLm:function(a){return H.VM(new W.Cq(a,C.io.Ph,!1),[null])},
2685 $isD0:true,
2686 "%":";Element"},
2687 hY:{
2688 "^":"ea;kc:error=",
2689 "%":"ErrorEvent"},
2690 ea:{
2691 "^":"Gv;",
2692 gN:function(a){return W.qc(a.target)},
2693 "%":"AudioProcessingEvent|AutocompleteErrorEvent|BeforeLoadEvent|BeforeUnloadEve nt|CSSFontFaceLoadEvent|CloseEvent|CompositionEvent|CustomEvent|DeviceMotionEven t|DeviceOrientationEvent|DragEvent|FocusEvent|HashChangeEvent|IDBVersionChangeEv ent|InstallEvent|InstallPhaseEvent|KeyboardEvent|MIDIConnectionEvent|MIDIMessage Event|MSPointerEvent|MediaKeyEvent|MediaKeyMessageEvent|MediaKeyNeededEvent|Medi aStreamEvent|MediaStreamTrackEvent|MessageEvent|MouseEvent|MouseScrollEvent|Mous eWheelEvent|MutationEvent|OfflineAudioCompletionEvent|OverflowEvent|PageTransiti onEvent|PointerEvent|PopStateEvent|ProgressEvent|RTCDTMFToneChangeEvent|RTCDataC hannelEvent|RTCIceCandidateEvent|ResourceProgressEvent|SVGZoomEvent|SecurityPoli cyViolationEvent|SpeechInputEvent|SpeechRecognitionEvent|SpeechSynthesisEvent|St orageEvent|TextEvent|TouchEvent|TrackEvent|TransitionEvent|UIEvent|WebGLContextE vent|WebKitAnimationEvent|WebKitTransitionEvent|WheelEvent|XMLHttpRequestProgres sEvent;Event"},
2694 D0:{
2695 "^":"Gv;",
2696 On:function(a,b,c,d){return a.addEventListener(b,H.tR(c,1),d)},
2697 Y9:function(a,b,c,d){return a.removeEventListener(b,H.tR(c,1),d)},
2698 $isD0:true,
2699 "%":";EventTarget"},
2700 Yu:{
2701 "^":"qE;B:length=,N:target=",
2702 "%":"HTMLFormElement"},
2703 Mi:{
2704 "^":"qE;",
2705 $isMi:true,
2706 $isD0:true,
2707 "%":"HTMLInputElement"},
2708 El:{
2709 "^":"qE;kc:error=",
2710 "%":"HTMLAudioElement|HTMLMediaElement|HTMLVideoElement"},
2711 KV:{
2712 "^":"D0;",
2713 bu:function(a){var z=a.nodeValue
2714 return z==null?J.Gv.prototype.bu.call(this,a):z},
2715 "%":"Attr|Document|DocumentFragment|DocumentType|HTMLDocument|Notation|ShadowRoo t|XMLDocument;Node"},
2716 nC:{
2717 "^":"nx;N:target=",
2718 "%":"ProcessingInstruction"},
2719 lp:{
2720 "^":"qE;B:length=",
2721 "%":"HTMLSelectElement"},
2722 HN:{
2723 "^":"ea;kc:error=",
2724 "%":"SpeechRecognitionError"},
2725 Oi:{
2726 "^":"D0;",
2727 bu:function(a){return a.toString()},
2728 $isD0:true,
2729 "%":"DOMWindow|Window"},
2730 Nf:{
2731 "^":"qE;",
2732 $isD0:true,
2733 "%":"HTMLFrameSetElement"},
2734 Fk:{
2735 "^":"a;Ph"},
2736 RO:{
2737 "^":"qh;",
2738 KR:function(a,b,c,d){var z=new W.xC(0,this.uv,this.Ph,W.VF(a),this.Sg)
2739 z.$builtinTypeInfo=this.$builtinTypeInfo
2740 z.Zz()
2741 return z}},
2742 Cq:{
2743 "^":"RO;uv,Ph,Sg"},
2744 xC:{
2745 "^":"MO;VP,uv,Ph,u7,Sg",
2746 ed:function(){if(this.uv==null)return
2747 this.Ns()
2748 this.uv=null
2749 this.u7=null
2750 return},
2751 Zz:function(){var z=this.u7
2752 if(z!=null&&this.VP<=0)J.qV(this.uv,this.Ph,z,this.Sg)},
2753 Ns:function(){var z=this.u7
2754 if(z!=null)J.GJ(this.uv,this.Ph,z,this.Sg)}},
2755 dW:{
2756 "^":"a;Ui",
2757 $isD0:true,
2758 static:{P1:function(a){if(a===window)return a
2759 else return new W.dW(a)}}}}],["dart.dom.svg","dart:svg",,P,{
2760 "^":"",
2761 Y0:{
2762 "^":"tp;N:target=",
2763 "%":"SVGAElement"},
2764 tp:{
2765 "^":"d5;",
2766 "%":"SVGAltGlyphElement|SVGCircleElement|SVGClipPathElement|SVGDefsElement|SVGEl lipseElement|SVGForeignObjectElement|SVGGElement|SVGGeometryElement|SVGImageElem ent|SVGLineElement|SVGPathElement|SVGPolygonElement|SVGPolylineElement|SVGRectEl ement|SVGSVGElement|SVGSwitchElement|SVGTSpanElement|SVGTextContentElement|SVGTe xtElement|SVGTextPathElement|SVGTextPositioningElement|SVGUseElement;SVGGraphics Element"},
2767 d5:{
2768 "^":"cv;",
2769 gLm:function(a){return H.VM(new W.Cq(a,C.io.Ph,!1),[null])},
2770 $isD0:true,
2771 "%":"SVGAltGlyphDefElement|SVGAltGlyphItemElement|SVGAnimateElement|SVGAnimateMo tionElement|SVGAnimateTransformElement|SVGAnimationElement|SVGComponentTransferF unctionElement|SVGCursorElement|SVGDescElement|SVGDiscardElement|SVGFEBlendEleme nt|SVGFEColorMatrixElement|SVGFEComponentTransferElement|SVGFECompositeElement|S VGFEConvolveMatrixElement|SVGFEDiffuseLightingElement|SVGFEDisplacementMapElemen t|SVGFEDistantLightElement|SVGFEDropShadowElement|SVGFEFloodElement|SVGFEFuncAEl ement|SVGFEFuncBElement|SVGFEFuncGElement|SVGFEFuncRElement|SVGFEGaussianBlurEle ment|SVGFEImageElement|SVGFEMergeElement|SVGFEMergeNodeElement|SVGFEMorphologyEl ement|SVGFEOffsetElement|SVGFEPointLightElement|SVGFESpecularLightingElement|SVG FESpotLightElement|SVGFETileElement|SVGFETurbulenceElement|SVGFilterElement|SVGF ontElement|SVGFontFaceElement|SVGFontFaceFormatElement|SVGFontFaceNameElement|SV GFontFaceSrcElement|SVGFontFaceUriElement|SVGGlyphElement|SVGGlyphRefElement|SVG GradientElement|SVGHKernElement|SVGLinearGradientElement|SVGMPathElement|SVGMark erElement|SVGMaskElement|SVGMetadataElement|SVGMissingGlyphElement|SVGPatternEle ment|SVGRadialGradientElement|SVGScriptElement|SVGSetElement|SVGStopElement|SVGS tyleElement|SVGSymbolElement|SVGTitleElement|SVGVKernElement|SVGViewElement;SVGE lement"}}],["dart.isolate","dart:isolate",,P,{
2772 "^":"",
2773 IU:{
2774 "^":"a;",
2775 $isIU:true,
2776 static:{N3:function(){return new H.ku((Math.random()*0x100000000>>>0)+(Math.rand om()*0x100000000>>>0)*4294967296)}}}}],["dart.typed_data.implementation","dart:_ native_typed_data",,H,{
2777 "^":"",
2778 ET:{
2779 "^":"Gv;",
2780 J2:function(a,b,c){var z=J.Wx(b)
2781 if(z.C(b,0)||z.F(b,c))throw H.b(P.TE(b,0,c))
2782 else throw H.b(P.u("Invalid list index "+H.d(b)))},
2783 "%":";ArrayBufferView;b0|Ob|GV|Pg"},
2784 V6:{
2785 "^":"Pg;",
2786 gB:function(a){return a.length},
2787 t:function(a,b){var z=a.length
2788 if(b>>>0!==b||b>=z)this.J2(a,b,z)
2789 return a[b]},
2790 u:function(a,b,c){var z=a.length
2791 if(b>>>0!==b||b>=z)this.J2(a,b,z)
2792 a[b]=c},
2793 $iszM:true,
2794 $aszM:function(){return[P.KN]},
2795 "%":";Uint8Array"},
2796 b0:{
2797 "^":"ET;",
2798 gB:function(a){return a.length},
2799 $isXj:true},
2800 Pg:{
2801 "^":"GV;",
2802 $iszM:true,
2803 $aszM:function(){return[P.KN]}},
2804 Ob:{
2805 "^":"b0+FN;",
2806 $iszM:true,
2807 $aszM:function(){return[P.KN]}},
2808 GV:{
2809 "^":"Ob+SU;"}}],["dart2js._js_primitives","dart:_js_primitives",,H,{
2810 "^":"",
2811 qw:function(a){if(typeof dartPrint=="function"){dartPrint(a)
2812 return}if(typeof console=="object"&&typeof console.log=="function"){console.log( a)
2813 return}if(typeof window=="object")return
2814 if(typeof print=="function"){print(a)
2815 return}throw"Unable to print message: "+String(a)}}],["","file:///Users/kathyw/S pot/one-hour-codelab/web/2-inputnamebadge/piratebadge.dart",,A,{
2816 "^":"",
2817 Iq:[function(){var z=J.q0(document.querySelector("#inputName"))
2818 H.VM(new W.xC(0,z.uv,z.Ph,W.VF(A.qC()),z.Sg),[H.Kp(z,0)]).Zz()},"$0","eE",0,0,1] ,
2819 zL:[function(a){document.querySelector("#badgeName").textContent=H.Go(J.l2(a),"$ isMi").value},"$1","qC",2,0,6]},1],])
2820 I.$finishClasses($$,$,null)
2821 $$=null
2822 P.KN.$isKN=true
2823 P.KN.$isa=true
2824 P.qU.$isqU=true
2825 P.qU.$isa=true
2826 P.lf.$isa=true
2827 P.a6.$isa=true
2828 W.ea.$isea=true
2829 W.ea.$isa=true
2830 H.yo.$isa=true
2831 H.IY.$isa=true
2832 H.aX.$isa=true
2833 P.wv.$iswv=true
2834 P.wv.$isa=true
2835 P.a2.$isa2=true
2836 P.a2.$isa=true
2837 P.mE.$ismE=true
2838 P.mE.$isa=true
2839 P.a.$isa=true
2840 P.nP.$isnP=true
2841 P.nP.$isa=true
2842 J.Qc=function(a){if(typeof a=="number")return J.P.prototype
2843 if(typeof a=="string")return J.O.prototype
2844 if(a==null)return a
2845 if(!(a instanceof P.a))return J.is.prototype
2846 return a}
2847 J.RE=function(a){if(a==null)return a
2848 if(typeof a!="object")return a
2849 if(a instanceof P.a)return a
2850 return J.ks(a)}
2851 J.U6=function(a){if(typeof a=="string")return J.O.prototype
2852 if(a==null)return a
2853 if(a.constructor==Array)return J.Q.prototype
2854 if(typeof a!="object")return a
2855 if(a instanceof P.a)return a
2856 return J.ks(a)}
2857 J.Wx=function(a){if(typeof a=="number")return J.P.prototype
2858 if(a==null)return a
2859 if(!(a instanceof P.a))return J.is.prototype
2860 return a}
2861 J.w1=function(a){if(a==null)return a
2862 if(a.constructor==Array)return J.Q.prototype
2863 if(typeof a!="object")return a
2864 if(a instanceof P.a)return a
2865 return J.ks(a)}
2866 J.x=function(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.im.prototype
2867 return J.VA.prototype}if(typeof a=="string")return J.O.prototype
2868 if(a==null)return J.YE.prototype
2869 if(typeof a=="boolean")return J.kn.prototype
2870 if(a.constructor==Array)return J.Q.prototype
2871 if(typeof a!="object")return a
2872 if(a instanceof P.a)return a
2873 return J.ks(a)}
2874 J.AG=function(a){return J.x(a).bu(a)}
2875 J.GJ=function(a,b,c,d){return J.RE(a).Y9(a,b,c,d)}
2876 J.GP=function(a){return J.w1(a).gA(a)}
2877 J.UQ=function(a,b){if(a.constructor==Array||typeof a=="string"||H.wV(a,a[init.di spatchPropertyName]))if(b>>>0===b&&b<a.length)return a[b]
2878 return J.U6(a).t(a,b)}
2879 J.V1=function(a,b){return J.w1(a).Rz(a,b)}
2880 J.WB=function(a,b){if(typeof a=="number"&&typeof b=="number")return a+b
2881 return J.Qc(a).g(a,b)}
2882 J.de=function(a,b){if(a==null)return b==null
2883 if(typeof a!="object")return b!=null&&a===b
2884 return J.x(a).n(a,b)}
2885 J.kE=function(a,b){return J.U6(a).tg(a,b)}
2886 J.kH=function(a,b){return J.w1(a).aN(a,b)}
2887 J.kW=function(a,b,c){if((a.constructor==Array||H.wV(a,a[init.dispatchPropertyNam e]))&&!a.immutable$list&&b>>>0===b&&b<a.length)return a[b]=c
2888 return J.w1(a).u(a,b,c)}
2889 J.l2=function(a){return J.RE(a).gN(a)}
2890 J.q0=function(a){return J.RE(a).gLm(a)}
2891 J.q8=function(a){return J.U6(a).gB(a)}
2892 J.qV=function(a,b,c,d){return J.RE(a).On(a,b,c,d)}
2893 J.v1=function(a){return J.x(a).giO(a)}
2894 J.w8=function(a){return J.RE(a).gkc(a)}
2895 C.Nm=J.Q.prototype
2896 C.jn=J.im.prototype
2897 C.CD=J.P.prototype
2898 C.xB=J.O.prototype
2899 C.ZQ=J.iC.prototype
2900 C.vB=J.is.prototype
2901 C.KZ=new H.hJ()
2902 C.NU=new P.R8()
2903 C.RT=new P.a6(0)
2904 C.io=new W.Fk("input")
2905 C.Mc=function(hooks) {
2906 if (typeof dartExperimentalFixupGetTag != "function") return hooks;
2907 hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag);
2908 }
2909 C.lR=function(hooks) {
2910 var userAgent = typeof navigator == "object" ? navigator.userAgent : "";
2911 if (userAgent.indexOf("Firefox") == -1) return hooks;
2912 var getTag = hooks.getTag;
2913 var quickMap = {
2914 "BeforeUnloadEvent": "Event",
2915 "DataTransfer": "Clipboard",
2916 "GeoGeolocation": "Geolocation",
2917 "Location": "!Location",
2918 "WorkerMessageEvent": "MessageEvent",
2919 "XMLDocument": "!Document"};
2920 function getTagFirefox(o) {
2921 var tag = getTag(o);
2922 return quickMap[tag] || tag;
71 } 2923 }
72 }]; 2924 hooks.getTag = getTagFirefox;
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$2 = [P, {"": "BoundClosure;_self,__js_helper$_target,_receiver,_ _js_helper$_name",
82 call$2: function(p0, p1) {
83 return this.__js_helper$_target.call(this._self, p0, p1);
84 },
85 call$1: function(p0) {
86 return this.call$2(p0, null);
87 },
88 $is_args2: true,
89 $is_args1: true
90 }];
91
92 $$.BoundClosure$0 = [P, {"": "BoundClosure;_self,__js_helper$_target,_receiver,_ _js_helper$_name",
93 call$0: function() {
94 return this.__js_helper$_target.call(this._self);
95 }
96 }];
97
98 $$.Closure$2 = [H, {"": "Closure;call$2,$name", $is_args2: true}];
99
100 $$.Closure$0 = [H, {"": "Closure;call$0,$name"}];
101
102 $$.Closure$7 = [H, {"": "Closure;call$7,$name"}];
103
104 $$.Closure$1 = [H, {"": "Closure;call$1,$name", $is_args1: true}];
105
106 $$.Closure$21 = [P, {"": "Closure;call$2,$name",
107 call$1: function(p0) {
108 return this.call$2(p0, null);
109 },
110 $is_args2: true,
111 $is_args1: true
112 }];
113
114 (function (reflectionData) {
115 function map(x){x={x:x};delete x.x;return x}
116 if (!init.libraries) init.libraries = [];
117 if (!init.mangledNames) init.mangledNames = map();
118 if (!init.mangledGlobalNames) init.mangledGlobalNames = map();
119 if (!init.statics) init.statics = map();
120 if (!init.interfaces) init.interfaces = map();
121 if (!init.globalFunctions) init.globalFunctions = map();
122 var libraries = init.libraries;
123 var mangledNames = init.mangledNames;
124 var mangledGlobalNames = init.mangledGlobalNames;
125 var hasOwnProperty = Object.prototype.hasOwnProperty;
126 var length = reflectionData.length;
127 for (var i = 0; i < length; i++) {
128 var data = reflectionData[i];
129 var name = data[0];
130 var uri = data[1];
131 var metadata = data[2];
132 var globalObject = data[3];
133 var descriptor = data[4];
134 var isRoot = !!data[5];
135 var fields = descriptor && descriptor[""];
136 var classes = [];
137 var functions = [];
138 function processStatics(descriptor) {
139 for (var property in descriptor) {
140 if (!hasOwnProperty.call(descriptor, property)) continue;
141 if (property === "") continue;
142 var element = descriptor[property];
143 var firstChar = property.substring(0, 1);
144 var previousProperty;
145 if (firstChar === "+") {
146 mangledGlobalNames[previousProperty] = property.substring(1);
147 if (descriptor[property] == 1) descriptor[previousProperty].$reflectab le = 1;
148 if (element && element.length) init.interfaces[previousProperty] = ele ment;
149 } else if (firstChar === "@") {
150 property = property.substring(1);
151 $[property]["@"] = element;
152 } else if (firstChar === "*") {
153 globalObject[previousProperty].$defaultValues = element;
154 var optionalMethods = descriptor.$methodsWithOptionalArguments;
155 if (!optionalMethods) {
156 descriptor.$methodsWithOptionalArguments = optionalMethods = {}
157 }
158 optionalMethods[property] = previousProperty;
159 } else if (typeof element === "function") {
160 globalObject[previousProperty = property] = element;
161 functions.push(property);
162 init.globalFunctions[property] = element;
163 } else {
164 previousProperty = property;
165 var newDesc = {};
166 var previousProp;
167 for (var prop in element) {
168 if (!hasOwnProperty.call(element, prop)) continue;
169 firstChar = prop.substring(0, 1);
170 if (prop === "static") {
171 processStatics(init.statics[property] = element[prop]);
172 } else if (firstChar === "+") {
173 mangledNames[previousProp] = prop.substring(1);
174 if (element[prop] == 1) element[previousProp].$reflectable = 1;
175 } else if (firstChar === "@" && prop !== "@") {
176 newDesc[prop.substring(1)]["@"] = element[prop];
177 } else if (firstChar === "*") {
178 newDesc[previousProp].$defaultValues = element[prop];
179 var optionalMethods = newDesc.$methodsWithOptionalArguments;
180 if (!optionalMethods) {
181 newDesc.$methodsWithOptionalArguments = optionalMethods={}
182 }
183 optionalMethods[prop] = previousProp;
184 } else {
185 newDesc[previousProp = prop] = element[prop];
186 }
187 }
188 $$[property] = [globalObject, newDesc];
189 classes.push(property);
190 }
191 }
192 }
193 processStatics(descriptor);
194 libraries.push([name, uri, classes, functions, metadata, fields, isRoot,
195 globalObject]);
196 }
197 })([
198 ["_foreign_helper", "dart:_foreign_helper", , H, {
199 JS_CONST: {"": "Object;code"}}],
200 ["_interceptors", "dart:_interceptors", , J, {
201 getInterceptor: function(object) {
202 return void 0;
203 },
204
205 makeDispatchRecord: function(interceptor, proto, extension, indexability) {
206 return {i: interceptor, p: proto, e: extension, x: indexability};
207 },
208
209 getNativeInterceptor: function(object) {
210 var record, proto, objectProto;
211 record = object[init.dispatchPropertyName];
212 if (record == null)
213 if ($.initNativeDispatchFlag == null) {
214 H.initNativeDispatch();
215 record = object[init.dispatchPropertyName];
216 }
217 if (record != null) {
218 proto = record.p;
219 if (false === proto)
220 return record.i;
221 if (true === proto)
222 return object;
223 objectProto = Object.getPrototypeOf(object);
224 if (proto === objectProto)
225 return record.i;
226 if (record.e === objectProto)
227 return proto(object, record);
228 }
229 record = H.lookupDispatchRecord(object);
230 if (record == null)
231 return C.C_UnknownJavaScriptObject;
232 Object.defineProperty(Object.getPrototypeOf(object), init.dispatchPropertyName , {value: record, enumerable: false, writable: true, configurable: true});
233 return J.getNativeInterceptor(object);
234 },
235
236 Interceptor: {"": "Object;",
237 $eq: function(receiver, other) {
238 return receiver === other;
239 },
240 get$hashCode: function(receiver) {
241 return H.Primitives_objectHashCode(receiver);
242 },
243 toString$0: function(receiver) {
244 return H.Primitives_objectToString(receiver);
245 }
246 },
247
248 JSBool: {"": "bool/Interceptor;",
249 toString$0: function(receiver) {
250 return String(receiver);
251 },
252 get$hashCode: function(receiver) {
253 return receiver ? 519018 : 218159;
254 },
255 $isbool: true
256 },
257
258 JSNull: {"": "Interceptor;",
259 $eq: function(receiver, other) {
260 return null == other;
261 },
262 toString$0: function(receiver) {
263 return "null";
264 },
265 get$hashCode: function(receiver) {
266 return 0;
267 }
268 },
269
270 JavaScriptObject: {"": "Interceptor;",
271 get$hashCode: function(_) {
272 return 0;
273 }
274 },
275
276 PlainJavaScriptObject: {"": "JavaScriptObject;"},
277
278 UnknownJavaScriptObject: {"": "JavaScriptObject;"},
279
280 JSArray: {"": "List/Interceptor;",
281 forEach$1: function(receiver, f) {
282 return H.IterableMixinWorkaround_forEach(receiver, f);
283 },
284 elementAt$1: function(receiver, index) {
285 if (index < 0 || index >= receiver.length)
286 throw H.ioore(receiver, index);
287 return receiver[index];
288 },
289 toString$0: function(receiver) {
290 return H.IterableMixinWorkaround_toStringIterable(receiver, "[", "]");
291 },
292 get$iterator: function(receiver) {
293 return new H.ListIterator(receiver, receiver.length, 0, null);
294 },
295 get$hashCode: function(receiver) {
296 return H.Primitives_objectHashCode(receiver);
297 },
298 get$length: function(receiver) {
299 return receiver.length;
300 },
301 $index: function(receiver, index) {
302 if (typeof index !== "number" || Math.floor(index) !== index)
303 throw H.wrapException(new P.ArgumentError(index));
304 if (index >= receiver.length || index < 0)
305 throw H.wrapException(P.RangeError$value(index));
306 return receiver[index];
307 },
308 $indexSet: function(receiver, index, value) {
309 if (!!receiver.immutable$list)
310 H.throwExpression(P.UnsupportedError$("indexed set"));
311 if (typeof index !== "number" || Math.floor(index) !== index)
312 throw H.wrapException(new P.ArgumentError(index));
313 if (index >= receiver.length || index < 0)
314 throw H.wrapException(P.RangeError$value(index));
315 receiver[index] = value;
316 },
317 $isList: true,
318 $asList: null,
319 $isList: true,
320 $isEfficientLength: true
321 },
322
323 JSMutableArray: {"": "JSArray;", $isJSMutableArray: true,
324 $asJSArray: function() {
325 return [null];
326 },
327 $asList: function() {
328 return [null];
329 }
330 },
331
332 JSFixedArray: {"": "JSMutableArray;"},
333
334 JSExtendableArray: {"": "JSMutableArray;"},
335
336 JSNumber: {"": "num/Interceptor;",
337 remainder$1: function(receiver, b) {
338 return receiver % b;
339 },
340 toInt$0: function(receiver) {
341 var t1;
342 if (receiver >= -2147483648 && receiver <= 2147483647)
343 return receiver | 0;
344 if (isFinite(receiver)) {
345 t1 = receiver < 0 ? Math.ceil(receiver) : Math.floor(receiver);
346 return t1 + 0;
347 }
348 throw H.wrapException(P.UnsupportedError$('' + receiver));
349 },
350 toString$0: function(receiver) {
351 if (receiver === 0 && 1 / receiver < 0)
352 return "-0.0";
353 else
354 return "" + receiver;
355 },
356 get$hashCode: function(receiver) {
357 return receiver & 0x1FFFFFFF;
358 },
359 $tdiv: function(receiver, other) {
360 if ((receiver | 0) === receiver && (other | 0) === other && 0 !== other && - 1 !== other)
361 return receiver / other | 0;
362 else
363 return this._slowTdiv$1(receiver, other);
364 },
365 _slowTdiv$1: function(receiver, other) {
366 return this.toInt$0(receiver / other);
367 },
368 $shr: function(receiver, other) {
369 if (other < 0)
370 throw H.wrapException(new P.ArgumentError(other));
371 if (receiver > 0) {
372 if (other > 31)
373 return 0;
374 return receiver >>> other;
375 }
376 if (other > 31)
377 other = 31;
378 return receiver >> other >>> 0;
379 },
380 $lt: function(receiver, other) {
381 if (typeof other !== "number")
382 throw H.wrapException(new P.ArgumentError(other));
383 return receiver < other;
384 },
385 $gt: function(receiver, other) {
386 if (typeof other !== "number")
387 throw H.wrapException(new P.ArgumentError(other));
388 return receiver > other;
389 },
390 $ge: function(receiver, other) {
391 if (typeof other !== "number")
392 throw H.wrapException(new P.ArgumentError(other));
393 return receiver >= other;
394 },
395 $isnum: true,
396 static: {
397 "": "JSNumber__MIN_INT32,JSNumber__MAX_INT32",
398 } 2925 }
399 2926 C.w2=function getTagFallback(o) {
400 }, 2927 var constructor = o.constructor;
401 2928 if (typeof constructor == "function") {
402 JSInt: {"": "int/JSNumber;", $isdouble: true, $isnum: true, $isint: true}, 2929 var name = constructor.name;
403 2930 if (typeof name == "string" &&
404 JSDouble: {"": "double/JSNumber;", $isdouble: true, $isnum: true}, 2931 name.length > 2 &&
405 2932 name !== "Object" &&
406 JSString: {"": "String/Interceptor;", 2933 name !== "Function.prototype") {
407 codeUnitAt$1: function(receiver, index) { 2934 return name;
408 if (index < 0)
409 throw H.wrapException(P.RangeError$value(index));
410 if (index >= receiver.length)
411 throw H.wrapException(P.RangeError$value(index));
412 return receiver.charCodeAt(index);
413 },
414 substring$2: function(receiver, startIndex, endIndex) {
415 if (endIndex == null)
416 endIndex = receiver.length;
417 if (typeof endIndex !== "number")
418 H.throwExpression(P.ArgumentError$(endIndex));
419 if (startIndex < 0)
420 throw H.wrapException(P.RangeError$value(startIndex));
421 if (typeof endIndex !== "number")
422 throw H.iae(endIndex);
423 if (startIndex > endIndex)
424 throw H.wrapException(P.RangeError$value(startIndex));
425 if (endIndex > receiver.length)
426 throw H.wrapException(P.RangeError$value(endIndex));
427 return receiver.substring(startIndex, endIndex);
428 },
429 substring$1: function($receiver, startIndex) {
430 return this.substring$2($receiver, startIndex, null);
431 },
432 get$isEmpty: function(receiver) {
433 return receiver.length === 0;
434 },
435 toString$0: function(receiver) {
436 return receiver;
437 },
438 get$hashCode: function(receiver) {
439 var t1, hash, i;
440 for (t1 = receiver.length, hash = 0, i = 0; i < t1; ++i) {
441 hash = 536870911 & hash + receiver.charCodeAt(i);
442 hash = 536870911 & hash + ((524287 & hash) << 10 >>> 0);
443 hash ^= hash >> 6;
444 }
445 hash = 536870911 & hash + ((67108863 & hash) << 3 >>> 0);
446 hash ^= hash >> 11;
447 return 536870911 & hash + ((16383 & hash) << 15 >>> 0);
448 },
449 get$length: function(receiver) {
450 return receiver.length;
451 },
452 $index: function(receiver, index) {
453 if (typeof index !== "number" || Math.floor(index) !== index)
454 throw H.wrapException(new P.ArgumentError(index));
455 if (index >= receiver.length || index < 0)
456 throw H.wrapException(P.RangeError$value(index));
457 return receiver[index];
458 },
459 $isString: true
460 }}],
461 ["_isolate_helper", "dart:_isolate_helper", , H, {
462 _callInIsolate: function(isolate, $function) {
463 var result = isolate.eval$1($function);
464 $globalState.topEventLoop.run$0();
465 return result;
466 },
467
468 startRootIsolate: function(entry) {
469 var rootContext, t1;
470 $globalState = H._Manager$(entry);
471 if ($globalState.isWorker === true)
472 return;
473 rootContext = H._IsolateContext$();
474 $globalState.rootContext = rootContext;
475 $globalState.currentContext = rootContext;
476 t1 = J.getInterceptor(entry);
477 if (!!t1.$is_args1)
478 rootContext.eval$1(new H.startRootIsolate_closure(entry));
479 else if (!!t1.$is_args2)
480 rootContext.eval$1(new H.startRootIsolate_closure0(entry));
481 else
482 rootContext.eval$1(entry);
483 $globalState.topEventLoop.run$0();
484 },
485
486 IsolateNatives_computeThisScript: function() {
487 var currentScript = init.currentScript;
488 if (currentScript != null)
489 return String(currentScript.src);
490 if (typeof version == "function" && typeof os == "object" && "system" in os)
491 return H.IsolateNatives_computeThisScriptD8();
492 if (typeof version == "function" && typeof system == "function")
493 return thisFilename();
494 return;
495 },
496
497 IsolateNatives_computeThisScriptD8: function() {
498 var stack, matches;
499 stack = new Error().stack;
500 if (stack == null) {
501 stack = (function() {try { throw new Error() } catch(e) { return e.stack }}) ();
502 if (stack == null)
503 throw H.wrapException(P.UnsupportedError$("No stack trace"));
504 }
505 matches = stack.match(new RegExp("^ *at [^(]*\\((.*):[0-9]*:[0-9]*\\)$", "m")) ;
506 if (matches != null)
507 return matches[1];
508 matches = stack.match(new RegExp("^[^@]*@(.*):[0-9]*$", "m"));
509 if (matches != null)
510 return matches[1];
511 throw H.wrapException(P.UnsupportedError$("Cannot extract URI from \"" + stack + "\""));
512 },
513
514 IsolateNatives__processWorkerMessage: function(sender, e) {
515 var msg, t1, functionName, entryPoint, args, message, isSpawnUri, replyTo, con text, t2;
516 msg = H._deserializeMessage(e.data);
517 t1 = J.getInterceptor$asx(msg);
518 switch (t1.$index(msg, "command")) {
519 case "start":
520 $globalState.currentManagerId = t1.$index(msg, "id");
521 functionName = t1.$index(msg, "functionName");
522 entryPoint = functionName == null ? $globalState.entry : init.globalFuncti ons[functionName];
523 args = t1.$index(msg, "args");
524 message = H._deserializeMessage(t1.$index(msg, "msg"));
525 isSpawnUri = t1.$index(msg, "isSpawnUri");
526 replyTo = H._deserializeMessage(t1.$index(msg, "replyTo"));
527 context = H._IsolateContext$();
528 $globalState.topEventLoop.events._add$1(new H._IsolateEvent(context, new H .IsolateNatives__processWorkerMessage_closure(entryPoint, args, message, isSpawn Uri, replyTo), "worker-start"));
529 $globalState.currentContext = context;
530 $globalState.topEventLoop.run$0();
531 break;
532 case "spawn-worker":
533 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"));
534 break;
535 case "message":
536 if (t1.$index(msg, "port") != null)
537 t1.$index(msg, "port").send$1(t1.$index(msg, "msg"));
538 $globalState.topEventLoop.run$0();
539 break;
540 case "close":
541 t1 = $globalState.managers;
542 t2 = $.get$IsolateNatives_workerIds();
543 t1.remove$1(t1, t2.$index(t2, sender));
544 sender.terminate();
545 $globalState.topEventLoop.run$0();
546 break;
547 case "log":
548 H.IsolateNatives__log(t1.$index(msg, "msg"));
549 break;
550 case "print":
551 if ($globalState.isWorker === true) {
552 t1 = $globalState.mainManager;
553 t2 = H._serializeMessage(H.fillLiteralMap(["command", "print", "msg", ms g], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null)));
554 t1.toString;
555 self.postMessage(t2);
556 } else
557 P.print(t1.$index(msg, "msg"));
558 break;
559 case "error":
560 throw H.wrapException(t1.$index(msg, "msg"));
561 default:
562 }
563 },
564
565 IsolateNatives__log: function(msg) {
566 var trace, t1, t2, exception;
567 if ($globalState.isWorker === true) {
568 t1 = $globalState.mainManager;
569 t2 = H._serializeMessage(H.fillLiteralMap(["command", "log", "msg", msg], P. LinkedHashMap_LinkedHashMap(null, null, null, null, null)));
570 t1.toString;
571 self.postMessage(t2);
572 } else
573 try {
574 $.get$globalThis().console.log(msg);
575 } catch (exception) {
576 H.unwrapException(exception);
577 trace = new H._StackTrace(exception, null);
578 throw H.wrapException(P.Exception_Exception(trace));
579 }
580
581 },
582
583 IsolateNatives__startIsolate: function(topLevel, args, message, isSpawnUri, repl yTo) {
584 var t1;
585 H.Primitives_initializeStatics($globalState.currentContext.id);
586 $.lazyPort = H.ReceivePortImpl$();
587 t1 = $.lazyPort;
588 t1.toString;
589 replyTo.send$1(["spawned", new H._NativeJsSendPort(t1, $globalState.currentCon text.id)]);
590 if (isSpawnUri !== true)
591 topLevel.call$1(message);
592 else {
593 t1 = J.getInterceptor(topLevel);
594 if (!!t1.$is_args2)
595 topLevel.call$2(args, message);
596 else if (!!t1.$is_args1)
597 topLevel.call$1(args);
598 else
599 topLevel.call$0();
600 }
601 },
602
603 IsolateNatives__spawnWorker: function(functionName, uri, args, message, isSpawnU ri, replyPort) {
604 var worker, t1, workerId;
605 if (uri == null)
606 uri = $.get$IsolateNatives_thisScript();
607 worker = new Worker(uri);
608 worker.onmessage = function(e) { H.IsolateNatives__processWorkerMessage$closur e.call$2(worker, e); };
609 t1 = $globalState;
610 workerId = t1.nextManagerId;
611 t1.nextManagerId = workerId + 1;
612 t1 = $.get$IsolateNatives_workerIds();
613 t1.$indexSet(t1, worker, workerId);
614 t1 = $globalState.managers;
615 t1.$indexSet(t1, workerId, worker);
616 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))));
617 },
618
619 _waitForPendingPorts: function(message, callback) {
620 var finder = H._PendingSendPortFinder$();
621 finder.traverse$1(message);
622 P.Future_wait(finder.ports).then$1(new H._waitForPendingPorts_closure(callback ));
623 },
624
625 _serializeMessage: function(message) {
626 var t1;
627 if ($globalState.supportsWorkers === true) {
628 t1 = new H._JsSerializer(0, new H._MessageTraverserVisitedMap());
629 t1._visited = new H._JsVisitedMap(null);
630 return t1.traverse$1(message);
631 } else {
632 t1 = new H._JsCopier(new H._MessageTraverserVisitedMap());
633 t1._visited = new H._JsVisitedMap(null);
634 return t1.traverse$1(message);
635 }
636 },
637
638 _deserializeMessage: function(message) {
639 if ($globalState.supportsWorkers === true)
640 return new H._JsDeserializer(null).deserialize$1(message);
641 else
642 return message;
643 },
644
645 _MessageTraverser_isPrimitive: function(x) {
646 return x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean";
647 },
648
649 _Deserializer_isPrimitive: function(x) {
650 return x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean";
651 },
652
653 startRootIsolate_closure: {"": "Closure;entry_0",
654 call$0: function() {
655 this.entry_0.call$1([]);
656 }
657 },
658
659 startRootIsolate_closure0: {"": "Closure;entry_1",
660 call$0: function() {
661 this.entry_1.call$2([], null);
662 }
663 },
664
665 _Manager: {"": "Object;nextIsolateId,currentManagerId,nextManagerId,currentConte xt,rootContext,topEventLoop,fromCommandLine,isWorker,supportsWorkers,isolates,ma inManager,managers,entry",
666 _nativeDetectEnvironment$0: function() {
667 var t1, t2;
668 t1 = $.get$globalWindow() == null;
669 t2 = $.get$globalWorker();
670 this.isWorker = t1 && $.get$globalPostMessageDefined() === true;
671 if (this.isWorker !== true)
672 t2 = t2 != null && $.get$IsolateNatives_thisScript() != null;
673 else
674 t2 = true;
675 this.supportsWorkers = t2;
676 this.fromCommandLine = t1 && this.isWorker !== true;
677 },
678 _nativeInitWorkerMessageHandler$0: function() {
679 var $function = function (e) { H.IsolateNatives__processWorkerMessage$closur e.call$2(this.mainManager, e); };
680 $.get$globalThis().onmessage = $function;
681 $.get$globalThis().dartPrint = function (object) {};
682 },
683 _Manager$1: function(entry) {
684 this._nativeDetectEnvironment$0();
685 this.topEventLoop = new H._EventLoop(P.ListQueue$(null, H._IsolateEvent), 0) ;
686 this.isolates = P.LinkedHashMap_LinkedHashMap(null, null, null, J.JSInt, H._ IsolateContext);
687 this.managers = P.LinkedHashMap_LinkedHashMap(null, null, null, J.JSInt, nul l);
688 if (this.isWorker === true) {
689 this.mainManager = new H._MainManagerStub();
690 this._nativeInitWorkerMessageHandler$0();
691 }
692 },
693 static: {
694 _Manager$: function(entry) {
695 var t1 = new H._Manager(0, 0, 1, null, null, null, null, null, null, null, nul l, null, entry);
696 t1._Manager$1(entry);
697 return t1;
698 }}
699
700 },
701
702 _IsolateContext: {"": "Object;id,ports,isolateStatics<",
703 eval$1: function(code) {
704 var old, result;
705 old = $globalState.currentContext;
706 $globalState.currentContext = this;
707 $ = this.isolateStatics;
708 result = null;
709 try {
710 result = code.call$0();
711 } finally {
712 $globalState.currentContext = old;
713 if (old != null)
714 $ = old.get$isolateStatics();
715 }
716 return result;
717 },
718 lookup$1: function(portId) {
719 var t1 = this.ports;
720 return t1.$index(t1, portId);
721 },
722 register$2: function(_, portId, port) {
723 var t1;
724 if (this.ports.containsKey$1(portId))
725 throw H.wrapException(P.Exception_Exception("Registry: ports must be regis tered only once."));
726 t1 = this.ports;
727 t1.$indexSet(t1, portId, port);
728 t1 = $globalState.isolates;
729 t1.$indexSet(t1, this.id, this);
730 },
731 unregister$1: function(portId) {
732 var t1 = this.ports;
733 t1.remove$1(t1, portId);
734 if (this.ports._collection$_length === 0) {
735 t1 = $globalState.isolates;
736 t1.remove$1(t1, this.id);
737 }
738 },
739 _IsolateContext$0: function() {
740 var t1, t2;
741 t1 = $globalState;
742 t2 = t1.nextIsolateId;
743 t1.nextIsolateId = t2 + 1;
744 this.id = t2;
745 this.ports = P.LinkedHashMap_LinkedHashMap(null, null, null, J.JSInt, P.Rece ivePort);
746 this.isolateStatics = new Isolate();
747 },
748 static: {
749 _IsolateContext$: function() {
750 var t1 = new H._IsolateContext(null, null, null);
751 t1._IsolateContext$0();
752 return t1;
753 }}
754
755 },
756
757 _EventLoop: {"": "Object;events,activeTimerCount",
758 dequeue$0: function() {
759 var t1 = this.events;
760 if (t1._head === t1._tail)
761 return;
762 return t1.removeFirst$0();
763 },
764 checkOpenReceivePortsFromCommandLine$0: function() {
765 if ($globalState.rootContext != null && $globalState.isolates.containsKey$1( $globalState.rootContext.id) && $globalState.fromCommandLine === true && $global State.rootContext.ports._collection$_length === 0)
766 throw H.wrapException(P.Exception_Exception("Program exited with open Rece ivePorts."));
767 },
768 runIteration$0: function() {
769 var $event, t1, t2;
770 $event = this.dequeue$0();
771 if ($event == null) {
772 this.checkOpenReceivePortsFromCommandLine$0();
773 t1 = $globalState;
774 if (t1.isWorker === true && t1.isolates._collection$_length === 0 && t1.to pEventLoop.activeTimerCount === 0) {
775 t1 = t1.mainManager;
776 t2 = H._serializeMessage(H.fillLiteralMap(["command", "close"], P.Linked HashMap_LinkedHashMap(null, null, null, null, null)));
777 t1.toString;
778 self.postMessage(t2);
779 }
780 return false;
781 }
782 $event.process$0();
783 return true;
784 },
785 _runHelper$0: function() {
786 if ($.get$globalWindow() != null)
787 new H._EventLoop__runHelper_next(this).call$0();
788 else
789 for (; this.runIteration$0();)
790 ;
791 },
792 run$0: function() {
793 var e, trace, exception, t1, t2;
794 if ($globalState.isWorker !== true)
795 this._runHelper$0();
796 else
797 try {
798 this._runHelper$0();
799 } catch (exception) {
800 t1 = H.unwrapException(exception);
801 e = t1;
802 trace = new H._StackTrace(exception, null);
803 t1 = $globalState.mainManager;
804 t2 = H._serializeMessage(H.fillLiteralMap(["command", "error", "msg", H. S(e) + "\n" + H.S(trace)], P.LinkedHashMap_LinkedHashMap(null, null, null, null, null)));
805 t1.toString;
806 self.postMessage(t2);
807 }
808
809 }
810 },
811
812 _EventLoop__runHelper_next: {"": "Closure;this_0",
813 call$0: function() {
814 if (!this.this_0.runIteration$0())
815 return;
816 P.Timer_Timer(C.Duration_0, this);
817 }
818 },
819
820 _IsolateEvent: {"": "Object;isolate,fn,message",
821 process$0: function() {
822 this.isolate.eval$1(this.fn);
823 }
824 },
825
826 _MainManagerStub: {"": "Object;"},
827
828 IsolateNatives__processWorkerMessage_closure: {"": "Closure;entryPoint_0,args_1, message_2,isSpawnUri_3,replyTo_4",
829 call$0: function() {
830 H.IsolateNatives__startIsolate(this.entryPoint_0, this.args_1, this.message_ 2, this.isSpawnUri_3, this.replyTo_4);
831 }
832 },
833
834 _BaseSendPort: {"": "Object;", $isSendPort: true},
835
836 _NativeJsSendPort: {"": "_BaseSendPort;_receivePort,_isolateId",
837 send$2: function(message, replyTo) {
838 H._waitForPendingPorts(message, new H._NativeJsSendPort_send_closure(this, m essage));
839 },
840 send$1: function(message) {
841 return this.send$2(message, null);
842 },
843 $eq: function(_, other) {
844 var t1;
845 if (other == null)
846 return false;
847 t1 = J.getInterceptor(other);
848 return typeof other === "object" && other !== null && !!t1.$is_NativeJsSendP ort && J.$eq(this._receivePort, other._receivePort);
849 },
850 get$hashCode: function(_) {
851 return this._receivePort.get$_id();
852 },
853 $is_NativeJsSendPort: true,
854 $isSendPort: true
855 },
856
857 _NativeJsSendPort_send_closure: {"": "Closure;this_1,message_2",
858 call$0: function() {
859 var t1, t2, t3, t4, isolate, shouldSerialize, msg;
860 t1 = {};
861 t2 = $globalState.isolates;
862 t3 = this.this_1;
863 t4 = t3._isolateId;
864 isolate = t2.$index(t2, t4);
865 if (isolate == null)
866 return;
867 if ((t3._receivePort.get$_controller()._state & 4) !== 0)
868 return;
869 shouldSerialize = $globalState.currentContext != null && $globalState.curren tContext.id !== t4;
870 msg = this.message_2;
871 t1.msg_0 = msg;
872 if (shouldSerialize)
873 t1.msg_0 = H._serializeMessage(t1.msg_0);
874 t2 = $globalState.topEventLoop;
875 t4 = "receive " + H.S(msg);
876 t2.events._add$1(new H._IsolateEvent(isolate, new H._NativeJsSendPort_send__ closure(t1, t3, shouldSerialize), t4));
877 }
878 },
879
880 _NativeJsSendPort_send__closure: {"": "Closure;box_0,this_3,shouldSerialize_4",
881 call$0: function() {
882 var t1, t2;
883 t1 = this.this_3._receivePort;
884 if ((t1.get$_controller()._state & 4) === 0) {
885 if (this.shouldSerialize_4) {
886 t2 = this.box_0;
887 t2.msg_0 = H._deserializeMessage(t2.msg_0);
888 }
889 t1 = t1.get$_controller();
890 t2 = this.box_0.msg_0;
891 if (t1._state >= 4)
892 H.throwExpression(t1._badEventState$0());
893 t1._async$_add$1(t2);
894 } 2935 }
895 } 2936 }
896 }, 2937 var s = Object.prototype.toString.call(o);
2938 return s.substring(8, s.length - 1);
2939 }
2940 C.XQ=function(hooks) { return hooks; }
897 2941
898 _WorkerSendPort: {"": "_BaseSendPort;_workerId,_receivePortId,_isolateId", 2942 C.ur=function(getTagFallback) {
899 send$2: function(message, replyTo) { 2943 return function(hooks) {
900 H._waitForPendingPorts(message, new H._WorkerSendPort_send_closure(this, mes sage)); 2944 if (typeof navigator != "object") return hooks;
901 }, 2945 var ua = navigator.userAgent;
902 send$1: function(message) { 2946 if (ua.indexOf("DumpRenderTree") >= 0) return hooks;
903 return this.send$2(message, null); 2947 if (ua.indexOf("Chrome") >= 0) {
904 }, 2948 function confirm(p) {
905 $eq: function(_, other) { 2949 return typeof window == "object" && window[p] && window[p].name == p;
906 var t1; 2950 }
907 if (other == null) 2951 if (confirm("Window") && confirm("HTMLElement")) return hooks;
908 return false; 2952 }
909 t1 = J.getInterceptor(other); 2953 hooks.getTag = getTagFallback;
910 if (typeof other === "object" && other !== null && !!t1.$is_WorkerSendPort) 2954 };
911 t1 = J.$eq(this._workerId, other._workerId) && J.$eq(this._isolateId, othe r._isolateId) && J.$eq(this._receivePortId, other._receivePortId); 2955 }
912 else 2956 C.MA=function() {
913 t1 = false; 2957 function typeNameInChrome(o) {
914 return t1; 2958 var name = o.constructor.name;
915 }, 2959 if (name) return name;
916 get$hashCode: function(_) { 2960 var s = Object.prototype.toString.call(o);
917 var t1, t2, t3; 2961 return s.substring(8, s.length - 1);
918 t1 = this._workerId; 2962 }
919 if (typeof t1 !== "number") 2963 function getUnknownTag(object, tag) {
920 throw t1.$shl(); 2964 if (/^HTML[A-Z].*Element$/.test(tag)) {
921 t2 = this._isolateId; 2965 var name = Object.prototype.toString.call(object);
922 if (typeof t2 !== "number") 2966 if (name == "[object Object]") return null;
923 throw t2.$shl(); 2967 return "HTMLElement";
924 t3 = this._receivePortId;
925 if (typeof t3 !== "number")
926 throw H.iae(t3);
927 return (t1 << 16 ^ t2 << 8 ^ t3) >>> 0;
928 },
929 $is_WorkerSendPort: true,
930 $isSendPort: true
931 },
932
933 _WorkerSendPort_send_closure: {"": "Closure;this_0,message_1",
934 call$0: function() {
935 var t1, workerMessage, t2, manager;
936 t1 = this.this_0;
937 workerMessage = H._serializeMessage(H.fillLiteralMap(["command", "message", "port", t1, "msg", this.message_1], P.LinkedHashMap_LinkedHashMap(null, null, nu ll, null, null)));
938 if ($globalState.isWorker === true) {
939 $globalState.mainManager.toString;
940 self.postMessage(workerMessage);
941 } else {
942 t2 = $globalState.managers;
943 manager = t2.$index(t2, t1._workerId);
944 if (manager != null)
945 manager.postMessage(workerMessage);
946 } 2968 }
947 } 2969 }
948 }, 2970 function getUnknownTagGenericBrowser(object, tag) {
2971 if (object instanceof HTMLElement) return "HTMLElement";
2972 return getUnknownTag(object, tag);
2973 }
2974 function prototypeForTag(tag) {
2975 if (typeof window == "undefined") return null;
2976 if (typeof window[tag] == "undefined") return null;
2977 var constructor = window[tag];
2978 if (typeof constructor != "function") return null;
2979 return constructor.prototype;
2980 }
2981 function discriminator(tag) { return null; }
2982 var isBrowser = typeof navigator == "object";
2983 return {
2984 getTag: typeNameInChrome,
2985 getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag,
2986 prototypeForTag: prototypeForTag,
2987 discriminator: discriminator };
2988 }
2989 C.M1=function(hooks) {
2990 var userAgent = typeof navigator == "object" ? navigator.userAgent : "";
2991 if (userAgent.indexOf("Trident/") == -1) return hooks;
2992 var getTag = hooks.getTag;
2993 var quickMap = {
2994 "BeforeUnloadEvent": "Event",
2995 "DataTransfer": "Clipboard",
2996 "HTMLDDElement": "HTMLElement",
2997 "HTMLDTElement": "HTMLElement",
2998 "HTMLPhraseElement": "HTMLElement",
2999 "Position": "Geoposition"
3000 };
3001 function getTagIE(o) {
3002 var tag = getTag(o);
3003 var newTag = quickMap[tag];
3004 if (newTag) return newTag;
3005 if (tag == "Object") {
3006 if (window.DataView && (o instanceof window.DataView)) return "DataView";
3007 }
3008 return tag;
3009 }
3010 function prototypeForTagIE(tag) {
3011 var constructor = window[tag];
3012 if (constructor == null) return null;
3013 return constructor.prototype;
3014 }
3015 hooks.getTag = getTagIE;
3016 hooks.prototypeForTag = prototypeForTagIE;
3017 }
3018 C.hQ=function(hooks) {
3019 var getTag = hooks.getTag;
3020 var prototypeForTag = hooks.prototypeForTag;
3021 function getTagFixed(o) {
3022 var tag = getTag(o);
3023 if (tag == "Document") {
3024 if (!!o.xmlVersion) return "!Document";
3025 return "!HTMLDocument";
3026 }
3027 return tag;
3028 }
3029 function prototypeForTagFixed(tag) {
3030 if (tag == "Document") return null;
3031 return prototypeForTag(tag);
3032 }
3033 hooks.getTag = getTagFixed;
3034 hooks.prototypeForTag = prototypeForTagFixed;
3035 }
3036 $.libraries_to_load = {}
3037 $.te="$cachedFunction"
3038 $.eb="$cachedInvocation"
3039 $.yj=0
3040 $.mJ=null
3041 $.P4=null
3042 $.lc=!1
3043 $.NF=null
3044 $.TX=null
3045 $.x7=null
3046 $.nw=null
3047 $.vv=null
3048 $.Bv=null
3049 $.oK=null
3050 $.S6=null
3051 $.k8=null
3052 $.X3=C.NU
3053 $.Ss=0
3054 $.Qz=null
3055 $.PN=null
3056 I.$lazy($,"globalThis","DX","jk",function(){return function(){return this}()})
3057 I.$lazy($,"globalWindow","cO","C5",function(){return $.jk().window})
3058 I.$lazy($,"globalWorker","u9","vy",function(){return $.jk().Worker})
3059 I.$lazy($,"globalPostMessageDefined","Wd","Iz",function(){return $.jk().postMess age!==void 0})
3060 I.$lazy($,"thisScript","Kb","Rs",function(){return H.Td()})
3061 I.$lazy($,"workerIds","rS","p6",function(){return new P.kM(null)})
3062 I.$lazy($,"noSuchMethodPattern","lm","WD",function(){return H.cM(H.S7({toString: function(){return"$receiver$"}}))})
3063 I.$lazy($,"notClosurePattern","k1","OI",function(){return H.cM(H.S7({$method$:nu ll,toString:function(){return"$receiver$"}}))})
3064 I.$lazy($,"nullCallPattern","Re","PH",function(){return H.cM(H.S7(null))})
3065 I.$lazy($,"nullLiteralCallPattern","fN","D1",function(){return H.cM(function(){v ar $argumentsExpr$='$arguments$'
3066 try{null.$method$($argumentsExpr$)}catch(z){return z.message}}())})
3067 I.$lazy($,"undefinedCallPattern","qi","rx",function(){return H.cM(H.S7(void 0))} )
3068 I.$lazy($,"undefinedLiteralCallPattern","rZ","Y9",function(){return H.cM(functio n(){var $argumentsExpr$='$arguments$'
3069 try{(void 0).$method$($argumentsExpr$)}catch(z){return z.message}}())})
3070 I.$lazy($,"nullPropertyPattern","BX","zO",function(){return H.cM(H.Mj(null))})
3071 I.$lazy($,"nullLiteralPropertyPattern","tt","Bi",function(){return H.cM(function (){try{null.$method$}catch(z){return z.message}}())})
3072 I.$lazy($,"undefinedPropertyPattern","dt","eA",function(){return H.cM(H.Mj(void 0))})
3073 I.$lazy($,"undefinedLiteralPropertyPattern","A7","ko",function(){return H.cM(fun ction(){try{(void 0).$method$}catch(z){return z.message}}())})
3074 I.$lazy($,"_toStringList","Ml","RM",function(){return[]})
3075 I.$lazy($,"scheduleImmediateClosure","lI","ej",function(){return P.Oj()})
3076 I.$lazy($,"_toStringVisiting","xg","xb",function(){return P.yv(null)})
3077 I.$lazy($,"_toStringList","yu","tw",function(){return[]})
949 3078
950 ReceivePortImpl: {"": "Stream;_id<,_controller<", 3079 init.functionAliases={}
951 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) { 3080 init.metadata=[{func:"n9",void:true,args:[{func:"X0",void:true}]},{func:"X0",voi d:true},{func:"Gl",ret:P.a2,args:[null,null]},{func:"bX",ret:P.KN,args:[null]},{ func:"E0",ret:P.a2,args:[P.a,P.a]},{func:"ZY",ret:P.KN,args:[P.a]},{func:"WW",vo id:true,args:[W.ea]},{func:"NT"},{func:"bh",args:[null,null]},{func:"aB",args:[n ull]},{func:"TS",args:[null,P.qU]},{func:"uO",args:[P.qU]},{func:"Vx",void:true, args:[null],opt:[P.mE]},,{func:"BG",args:[null],opt:[null]},{func:"Uf",ret:P.a2} ,{func:"bb",args:[null,P.mE]},{func:"lv",args:[P.wv,null]},{func:"Pt",ret:P.qU,a rgs:[P.KN]},];$=null
952 var t1 = this._controller; 3081 I = I.$finishIsolateConstructor(I)
953 t1.toString; 3082 $=new I()
954 t1 = new P._ControllerStream(t1);
955 H.setRuntimeTypeInfo(t1, [null]);
956 return t1.listen$4$cancelOnError$onDone$onError(onData, cancelOnError, onDon e, onError);
957 },
958 close$0: function(_) {
959 var t1 = this._controller;
960 if ((t1._state & 4) !== 0)
961 return;
962 t1.close$0(t1);
963 $globalState.currentContext.unregister$1(this._id);
964 },
965 get$close: function(_receiver) {
966 return new H.BoundClosure$i0(this, H.ReceivePortImpl.prototype.close$0, _rec eiver, "close$0");
967 },
968 ReceivePortImpl$0: function() {
969 this._controller = P.StreamController_StreamController(this.get$close(this), null, null, null, true, null);
970 var t1 = $globalState.currentContext;
971 t1.register$2(t1, this._id, this);
972 },
973 static: {
974 "": "ReceivePortImpl__nextFreeId",
975 ReceivePortImpl$: function() {
976 var t1 = $.ReceivePortImpl__nextFreeId;
977 $.ReceivePortImpl__nextFreeId = t1 + 1;
978 t1 = new H.ReceivePortImpl(t1, null);
979 t1.ReceivePortImpl$0();
980 return t1;
981 }}
982
983 },
984
985 _waitForPendingPorts_closure: {"": "Closure;callback_0",
986 call$1: function(_) {
987 return this.callback_0.call$0();
988 },
989 $is_args1: true
990 },
991
992 _PendingSendPortFinder: {"": "_MessageTraverser;ports,_visited",
993 visitPrimitive$1: function(x) {
994 },
995 visitList$1: function(list) {
996 var t1 = this._visited;
997 if (t1.$index(t1, list) != null)
998 return;
999 t1 = this._visited;
1000 t1.$indexSet(t1, list, true);
1001 J.forEach$1$ax(list, this.get$_dispatch());
1002 },
1003 visitMap$1: function(map) {
1004 var t1 = this._visited;
1005 if (t1.$index(t1, map) != null)
1006 return;
1007 t1 = this._visited;
1008 t1.$indexSet(t1, map, true);
1009 t1 = map.get$values(map);
1010 t1.forEach$1(t1, this.get$_dispatch());
1011 },
1012 visitSendPort$1: function(port) {
1013 },
1014 _PendingSendPortFinder$0: function() {
1015 this._visited = new H._JsVisitedMap(null);
1016 },
1017 static: {
1018 _PendingSendPortFinder$: function() {
1019 var t1 = new H._PendingSendPortFinder([], new H._MessageTraverserVisitedMap()) ;
1020 t1._PendingSendPortFinder$0();
1021 return t1;
1022 }}
1023
1024 },
1025
1026 _JsSerializer: {"": "_Serializer;_nextFreeRefId,_visited",
1027 visitSendPort$1: function(x) {
1028 if (!!x.$is_NativeJsSendPort)
1029 return ["sendport", $globalState.currentManagerId, x._isolateId, x._receiv ePort.get$_id()];
1030 if (!!x.$is_WorkerSendPort)
1031 return ["sendport", x._workerId, x._isolateId, x._receivePortId];
1032 throw H.wrapException("Illegal underlying port " + H.S(x));
1033 }
1034 },
1035
1036 _JsCopier: {"": "_Copier;_visited",
1037 visitSendPort$1: function(x) {
1038 if (!!x.$is_NativeJsSendPort)
1039 return new H._NativeJsSendPort(x._receivePort, x._isolateId);
1040 if (!!x.$is_WorkerSendPort)
1041 return new H._WorkerSendPort(x._workerId, x._receivePortId, x._isolateId);
1042 throw H.wrapException("Illegal underlying port " + H.S(x));
1043 }
1044 },
1045
1046 _JsDeserializer: {"": "_Deserializer;_deserialized",
1047 deserializeSendPort$1: function(list) {
1048 var t1, managerId, isolateId, receivePortId, isolate, receivePort;
1049 t1 = J.getInterceptor$asx(list);
1050 managerId = t1.$index(list, 1);
1051 isolateId = t1.$index(list, 2);
1052 receivePortId = t1.$index(list, 3);
1053 if (J.$eq(managerId, $globalState.currentManagerId)) {
1054 t1 = $globalState.isolates;
1055 isolate = t1.$index(t1, isolateId);
1056 if (isolate == null)
1057 return;
1058 receivePort = isolate.lookup$1(receivePortId);
1059 if (receivePort == null)
1060 return;
1061 return new H._NativeJsSendPort(receivePort, isolateId);
1062 } else
1063 return new H._WorkerSendPort(managerId, receivePortId, isolateId);
1064 }
1065 },
1066
1067 _JsVisitedMap: {"": "Object;tagged",
1068 $index: function(_, object) {
1069 return object.__MessageTraverser__attached_info__;
1070 },
1071 $indexSet: function(_, object, info) {
1072 this.tagged.push(object);
1073 object.__MessageTraverser__attached_info__ = info;
1074 },
1075 reset$0: function(_) {
1076 this.tagged = P.List_List(null, null);
1077 },
1078 cleanup$0: function() {
1079 var $length, i, t1;
1080 for ($length = this.tagged.length, i = 0; i < $length; ++i) {
1081 t1 = this.tagged;
1082 if (i >= t1.length)
1083 throw H.ioore(t1, i);
1084 t1[i].__MessageTraverser__attached_info__ = null;
1085 }
1086 this.tagged = null;
1087 }
1088 },
1089
1090 _MessageTraverserVisitedMap: {"": "Object;",
1091 $index: function(_, object) {
1092 return;
1093 },
1094 $indexSet: function(_, object, info) {
1095 },
1096 reset$0: function(_) {
1097 },
1098 cleanup$0: function() {
1099 }
1100 },
1101
1102 _MessageTraverser: {"": "Object;",
1103 traverse$1: function(x) {
1104 var result, t1;
1105 if (H._MessageTraverser_isPrimitive(x))
1106 return this.visitPrimitive$1(x);
1107 t1 = this._visited;
1108 t1.reset$0(t1);
1109 result = null;
1110 try {
1111 result = this._dispatch$1(x);
1112 } finally {
1113 this._visited.cleanup$0();
1114 }
1115 return result;
1116 },
1117 _dispatch$1: function(x) {
1118 var t1;
1119 if (x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean")
1120 return this.visitPrimitive$1(x);
1121 t1 = J.getInterceptor(x);
1122 if (typeof x === "object" && x !== null && (x.constructor === Array || !!t1. $isList))
1123 return this.visitList$1(x);
1124 if (typeof x === "object" && x !== null && !!t1.$isMap)
1125 return this.visitMap$1(x);
1126 if (typeof x === "object" && x !== null && !!t1.$isSendPort)
1127 return this.visitSendPort$1(x);
1128 return this.visitObject$1(x);
1129 },
1130 get$_dispatch: function() {
1131 return new H.BoundClosure$1(this, H._MessageTraverser.prototype._dispatch$1, null, "_dispatch$1");
1132 },
1133 visitObject$1: function(x) {
1134 throw H.wrapException("Message serialization: Illegal value " + H.S(x) + " p assed");
1135 }
1136 },
1137
1138 _Copier: {"": "_MessageTraverser;",
1139 visitPrimitive$1: function(x) {
1140 return x;
1141 },
1142 visitList$1: function(list) {
1143 var t1, copy, len, t2, i, t3;
1144 t1 = this._visited;
1145 copy = t1.$index(t1, list);
1146 if (copy != null)
1147 return copy;
1148 t1 = J.getInterceptor$asx(list);
1149 len = t1.get$length(list);
1150 copy = P.List_List(len, null);
1151 t2 = this._visited;
1152 t2.$indexSet(t2, list, copy);
1153 for (t2 = copy.length, i = 0; i < len; ++i) {
1154 t3 = this._dispatch$1(t1.$index(list, i));
1155 if (i >= t2)
1156 throw H.ioore(copy, i);
1157 copy[i] = t3;
1158 }
1159 return copy;
1160 },
1161 visitMap$1: function(map) {
1162 var t1, t2;
1163 t1 = {};
1164 t2 = this._visited;
1165 t1.copy_0 = t2.$index(t2, map);
1166 t2 = t1.copy_0;
1167 if (t2 != null)
1168 return t2;
1169 t1.copy_0 = P.LinkedHashMap_LinkedHashMap(null, null, null, null, null);
1170 t2 = this._visited;
1171 t2.$indexSet(t2, map, t1.copy_0);
1172 map.forEach$1(map, new H._Copier_visitMap_closure(t1, this));
1173 return t1.copy_0;
1174 }
1175 },
1176
1177 _Copier_visitMap_closure: {"": "Closure;box_0,this_1",
1178 call$2: function(key, val) {
1179 var t1 = this.this_1;
1180 J.$indexSet$ax(this.box_0.copy_0, t1._dispatch$1(key), t1._dispatch$1(val));
1181 },
1182 $is_args2: true
1183 },
1184
1185 _Serializer: {"": "_MessageTraverser;",
1186 visitPrimitive$1: function(x) {
1187 return x;
1188 },
1189 visitList$1: function(list) {
1190 var t1, copyId, id;
1191 t1 = this._visited;
1192 copyId = t1.$index(t1, list);
1193 if (copyId != null)
1194 return ["ref", copyId];
1195 id = this._nextFreeRefId;
1196 this._nextFreeRefId = id + 1;
1197 t1 = this._visited;
1198 t1.$indexSet(t1, list, id);
1199 return ["list", id, this._serializeList$1(list)];
1200 },
1201 visitMap$1: function(map) {
1202 var t1, copyId, id, keys;
1203 t1 = this._visited;
1204 copyId = t1.$index(t1, map);
1205 if (copyId != null)
1206 return ["ref", copyId];
1207 id = this._nextFreeRefId;
1208 this._nextFreeRefId = id + 1;
1209 t1 = this._visited;
1210 t1.$indexSet(t1, map, id);
1211 t1 = map.get$keys();
1212 keys = this._serializeList$1(P.List_List$from(t1, true, H.getRuntimeTypeArgu ment(t1, "IterableBase", 0)));
1213 t1 = map.get$values(map);
1214 return ["map", id, keys, this._serializeList$1(P.List_List$from(t1, true, H. getRuntimeTypeArgument(t1, "IterableBase", 0)))];
1215 },
1216 _serializeList$1: function(list) {
1217 var t1, len, result, t2, i, t3;
1218 t1 = J.getInterceptor$asx(list);
1219 len = t1.get$length(list);
1220 result = P.List_List(len, null);
1221 for (t2 = result.length, i = 0; i < len; ++i) {
1222 t3 = this._dispatch$1(t1.$index(list, i));
1223 if (i >= t2)
1224 throw H.ioore(result, i);
1225 result[i] = t3;
1226 }
1227 return result;
1228 }
1229 },
1230
1231 _Deserializer: {"": "Object;",
1232 deserialize$1: function(x) {
1233 if (H._Deserializer_isPrimitive(x))
1234 return x;
1235 this._deserialized = P.HashMap_HashMap(null, null, null, null, null);
1236 return this._deserializeHelper$1(x);
1237 },
1238 _deserializeHelper$1: function(x) {
1239 var t1, id;
1240 if (x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean")
1241 return x;
1242 t1 = J.getInterceptor$asx(x);
1243 switch (t1.$index(x, 0)) {
1244 case "ref":
1245 id = t1.$index(x, 1);
1246 t1 = this._deserialized;
1247 return t1.$index(t1, id);
1248 case "list":
1249 return this._deserializeList$1(x);
1250 case "map":
1251 return this._deserializeMap$1(x);
1252 case "sendport":
1253 return this.deserializeSendPort$1(x);
1254 default:
1255 return this.deserializeObject$1(x);
1256 }
1257 },
1258 _deserializeList$1: function(x) {
1259 var t1, id, dartList, len, i;
1260 t1 = J.getInterceptor$asx(x);
1261 id = t1.$index(x, 1);
1262 dartList = t1.$index(x, 2);
1263 t1 = this._deserialized;
1264 t1.$indexSet(t1, id, dartList);
1265 t1 = J.getInterceptor$asx(dartList);
1266 len = t1.get$length(dartList);
1267 if (typeof len !== "number")
1268 throw H.iae(len);
1269 i = 0;
1270 for (; i < len; ++i)
1271 t1.$indexSet(dartList, i, this._deserializeHelper$1(t1.$index(dartList, i) ));
1272 return dartList;
1273 },
1274 _deserializeMap$1: function(x) {
1275 var result, t1, id, t2, keys, values, len, i;
1276 result = P.LinkedHashMap_LinkedHashMap(null, null, null, null, null);
1277 t1 = J.getInterceptor$asx(x);
1278 id = t1.$index(x, 1);
1279 t2 = this._deserialized;
1280 t2.$indexSet(t2, id, result);
1281 keys = t1.$index(x, 2);
1282 values = t1.$index(x, 3);
1283 t1 = J.getInterceptor$asx(keys);
1284 len = t1.get$length(keys);
1285 if (typeof len !== "number")
1286 throw H.iae(len);
1287 t2 = J.getInterceptor$asx(values);
1288 i = 0;
1289 for (; i < len; ++i)
1290 result.$indexSet(result, this._deserializeHelper$1(t1.$index(keys, i)), th is._deserializeHelper$1(t2.$index(values, i)));
1291 return result;
1292 },
1293 deserializeObject$1: function(x) {
1294 throw H.wrapException("Unexpected serialized object");
1295 }
1296 },
1297
1298 TimerImpl: {"": "Object;_once,_inEventLoop,_handle",
1299 TimerImpl$2: function(milliseconds, callback) {
1300 var t1, t2;
1301 if (milliseconds === 0)
1302 t1 = $.get$globalThis().setTimeout == null || $globalState.isWorker === tr ue;
1303 else
1304 t1 = false;
1305 if (t1) {
1306 this._handle = 1;
1307 t1 = $globalState.topEventLoop;
1308 t2 = $globalState.currentContext;
1309 t1.events._add$1(new H._IsolateEvent(t2, new H.TimerImpl_internalCallback( this, callback), "timer"));
1310 this._inEventLoop = true;
1311 } else if ($.get$globalThis().setTimeout != null) {
1312 t1 = $globalState.topEventLoop;
1313 t1.activeTimerCount = t1.activeTimerCount + 1;
1314 this._handle = $.get$globalThis().setTimeout(H.convertDartClosureToJS(new H.TimerImpl_internalCallback0(this, callback), 0), milliseconds);
1315 } else
1316 throw H.wrapException(P.UnsupportedError$("Timer greater than 0."));
1317 },
1318 static: {
1319 TimerImpl$: function(milliseconds, callback) {
1320 var t1 = new H.TimerImpl(true, false, null);
1321 t1.TimerImpl$2(milliseconds, callback);
1322 return t1;
1323 }}
1324
1325 },
1326
1327 TimerImpl_internalCallback: {"": "Closure;this_0,callback_1",
1328 call$0: function() {
1329 this.this_0._handle = null;
1330 this.callback_1.call$0();
1331 }
1332 },
1333
1334 TimerImpl_internalCallback0: {"": "Closure;this_2,callback_3",
1335 call$0: function() {
1336 this.this_2._handle = null;
1337 var t1 = $globalState.topEventLoop;
1338 t1.activeTimerCount = t1.activeTimerCount - 1;
1339 this.callback_3.call$0();
1340 }
1341 }}],
1342 ["_js_helper", "dart:_js_helper", , H, {
1343 isJsIndexable: function(object, record) {
1344 var result, t1;
1345 if (record != null) {
1346 result = record.x;
1347 if (result != null)
1348 return result;
1349 }
1350 t1 = J.getInterceptor(object);
1351 return typeof object === "object" && object !== null && !!t1.$isJavaScriptInde xingBehavior;
1352 },
1353
1354 S: function(value) {
1355 var res;
1356 if (typeof value === "string")
1357 return value;
1358 if (typeof value === "number") {
1359 if (value !== 0)
1360 return "" + value;
1361 } else if (true === value)
1362 return "true";
1363 else if (false === value)
1364 return "false";
1365 else if (value == null)
1366 return "null";
1367 res = J.toString$0(value);
1368 if (typeof res !== "string")
1369 throw H.wrapException(P.ArgumentError$(value));
1370 return res;
1371 },
1372
1373 Primitives_initializeStatics: function(id) {
1374 $.Primitives_mirrorFunctionCacheName = $.Primitives_mirrorFunctionCacheName + ("_" + H.S(id));
1375 $.Primitives_mirrorInvokeCacheName = $.Primitives_mirrorInvokeCacheName + ("_" + H.S(id));
1376 },
1377
1378 Primitives_objectHashCode: function(object) {
1379 var hash = object.$identityHash;
1380 if (hash == null) {
1381 hash = Math.random() * 0x3fffffff | 0;
1382 object.$identityHash = hash;
1383 }
1384 return hash;
1385 },
1386
1387 Primitives_objectTypeName: function(object) {
1388 var $name, decompiled, t1;
1389 $name = H.constructorNameFallback(J.getInterceptor(object));
1390 if (J.$eq($name, "Object")) {
1391 decompiled = String(object.constructor).match(/^\s*function\s*(\S*)\s*\(/)[1 ];
1392 if (typeof decompiled === "string")
1393 $name = decompiled;
1394 }
1395 t1 = J.getInterceptor$s($name);
1396 if (t1.codeUnitAt$1($name, 0) === 36)
1397 $name = t1.substring$1($name, 1);
1398 t1 = H.getRuntimeTypeInfo(object);
1399 return H.S($name) + H.joinArguments(t1, 0);
1400 },
1401
1402 Primitives_objectToString: function(object) {
1403 return "Instance of '" + H.Primitives_objectTypeName(object) + "'";
1404 },
1405
1406 Primitives_newFixedList: function($length) {
1407 var result = new Array($length);
1408 result.fixed$length = true;
1409 return result;
1410 },
1411
1412 Primitives__fromCharCodeApply: function(array) {
1413 var end, t1, result, i, subarray, t2;
1414 end = array.length;
1415 for (t1 = end <= 500, result = "", i = 0; i < end; i += 500) {
1416 if (t1)
1417 subarray = array;
1418 else {
1419 t2 = i + 500;
1420 t2 = t2 < end ? t2 : end;
1421 subarray = array.slice(i, t2);
1422 }
1423 result += String.fromCharCode.apply(null, subarray);
1424 }
1425 return result;
1426 },
1427
1428 Primitives_stringFromCodePoints: function(codePoints) {
1429 var a, t1, i;
1430 a = [];
1431 for (t1 = new H.ListIterator(codePoints, codePoints.length, 0, null); t1.moveN ext$0();) {
1432 i = t1._current;
1433 if (typeof i !== "number" || Math.floor(i) !== i)
1434 throw H.wrapException(new P.ArgumentError(i));
1435 if (i <= 65535)
1436 a.push(i);
1437 else if (i <= 1114111) {
1438 a.push(55296 + (C.JSInt_methods.$shr(i - 65536, 10) & 1023));
1439 a.push(56320 + (i & 1023));
1440 } else
1441 throw H.wrapException(new P.ArgumentError(i));
1442 }
1443 return H.Primitives__fromCharCodeApply(a);
1444 },
1445
1446 Primitives_stringFromCharCodes: function(charCodes) {
1447 var t1, i;
1448 for (t1 = new H.ListIterator(charCodes, charCodes.length, 0, null); t1.moveNex t$0();) {
1449 i = t1._current;
1450 if (typeof i !== "number" || Math.floor(i) !== i)
1451 throw H.wrapException(new P.ArgumentError(i));
1452 if (i < 0)
1453 throw H.wrapException(new P.ArgumentError(i));
1454 if (i > 65535)
1455 return H.Primitives_stringFromCodePoints(charCodes);
1456 }
1457 return H.Primitives__fromCharCodeApply(charCodes);
1458 },
1459
1460 Primitives_getProperty: function(object, key) {
1461 if (object == null || typeof object === "boolean" || typeof object === "number " || typeof object === "string")
1462 throw H.wrapException(new P.ArgumentError(object));
1463 return object[key];
1464 },
1465
1466 Primitives_setProperty: function(object, key, value) {
1467 if (object == null || typeof object === "boolean" || typeof object === "number " || typeof object === "string")
1468 throw H.wrapException(new P.ArgumentError(object));
1469 object[key] = value;
1470 },
1471
1472 iae: function(argument) {
1473 throw H.wrapException(P.ArgumentError$(argument));
1474 },
1475
1476 ioore: function(receiver, index) {
1477 if (receiver == null)
1478 J.get$length$asx(receiver);
1479 if (typeof index !== "number" || Math.floor(index) !== index)
1480 H.iae(index);
1481 throw H.wrapException(P.RangeError$value(index));
1482 },
1483
1484 wrapException: function(ex) {
1485 var wrapper;
1486 if (ex == null)
1487 ex = new P.NullThrownError();
1488 wrapper = new Error();
1489 wrapper.dartException = ex;
1490 if ("defineProperty" in Object) {
1491 Object.defineProperty(wrapper, "message", { get: H.toStringWrapper$closure.c all$0 });
1492 wrapper.name = "";
1493 } else
1494 wrapper.toString = H.toStringWrapper$closure.call$0;
1495 return wrapper;
1496 },
1497
1498 toStringWrapper: function() {
1499 return J.toString$0(this.dartException);
1500 },
1501
1502 throwExpression: function(ex) {
1503 throw H.wrapException(ex);
1504 },
1505
1506 unwrapException: function(ex) {
1507 var t1, message, number, ieErrorCode, t2, t3, t4, nullLiteralCall, t5, t6, t7, t8, t9, match;
1508 t1 = new H.unwrapException_saveStackTrace(ex);
1509 if (ex == null)
1510 return;
1511 if (typeof ex !== "object")
1512 return ex;
1513 if ("dartException" in ex)
1514 return t1.call$1(ex.dartException);
1515 else if (!("message" in ex))
1516 return ex;
1517 message = ex.message;
1518 if ("number" in ex && typeof ex.number == "number") {
1519 number = ex.number;
1520 ieErrorCode = number & 65535;
1521 if ((C.JSInt_methods.$shr(number, 16) & 8191) === 10)
1522 switch (ieErrorCode) {
1523 case 438:
1524 return t1.call$1(H.JsNoSuchMethodError$(H.S(message) + " (Error " + ie ErrorCode + ")", null));
1525 case 445:
1526 case 5007:
1527 t2 = H.S(message) + " (Error " + ieErrorCode + ")";
1528 return t1.call$1(new H.NullError(t2, null));
1529 default:
1530 }
1531 }
1532 if (ex instanceof TypeError) {
1533 t2 = $.get$TypeErrorDecoder_noSuchMethodPattern();
1534 t3 = $.get$TypeErrorDecoder_notClosurePattern();
1535 t4 = $.get$TypeErrorDecoder_nullCallPattern();
1536 nullLiteralCall = $.get$TypeErrorDecoder_nullLiteralCallPattern();
1537 t5 = $.get$TypeErrorDecoder_undefinedCallPattern();
1538 t6 = $.get$TypeErrorDecoder_undefinedLiteralCallPattern();
1539 t7 = $.get$TypeErrorDecoder_nullPropertyPattern();
1540 $.get$TypeErrorDecoder_nullLiteralPropertyPattern();
1541 t8 = $.get$TypeErrorDecoder_undefinedPropertyPattern();
1542 t9 = $.get$TypeErrorDecoder_undefinedLiteralPropertyPattern();
1543 match = t2.matchTypeError$1(message);
1544 if (match != null)
1545 return t1.call$1(H.JsNoSuchMethodError$(message, match));
1546 else {
1547 match = t3.matchTypeError$1(message);
1548 if (match != null) {
1549 match.method = "call";
1550 return t1.call$1(H.JsNoSuchMethodError$(message, match));
1551 } else {
1552 match = t4.matchTypeError$1(message);
1553 if (match == null) {
1554 match = nullLiteralCall.matchTypeError$1(message);
1555 if (match == null) {
1556 match = t5.matchTypeError$1(message);
1557 if (match == null) {
1558 match = t6.matchTypeError$1(message);
1559 if (match == null) {
1560 match = t7.matchTypeError$1(message);
1561 if (match == null) {
1562 match = nullLiteralCall.matchTypeError$1(message);
1563 if (match == null) {
1564 match = t8.matchTypeError$1(message);
1565 if (match == null) {
1566 match = t9.matchTypeError$1(message);
1567 t2 = match != null;
1568 } else
1569 t2 = true;
1570 } else
1571 t2 = true;
1572 } else
1573 t2 = true;
1574 } else
1575 t2 = true;
1576 } else
1577 t2 = true;
1578 } else
1579 t2 = true;
1580 } else
1581 t2 = true;
1582 if (t2) {
1583 t2 = match == null ? null : match.method;
1584 return t1.call$1(new H.NullError(message, t2));
1585 }
1586 }
1587 }
1588 t2 = typeof message === "string" ? message : "";
1589 return t1.call$1(new H.UnknownJsTypeError(t2));
1590 }
1591 if (ex instanceof RangeError) {
1592 if (typeof message === "string" && message.indexOf("call stack") !== -1)
1593 return new P.StackOverflowError();
1594 return t1.call$1(new P.ArgumentError(null));
1595 }
1596 if (typeof InternalError == "function" && ex instanceof InternalError)
1597 if (typeof message === "string" && message === "too much recursion")
1598 return new P.StackOverflowError();
1599 return ex;
1600 },
1601
1602 objectHashCode: function(object) {
1603 if (object == null || typeof object != 'object')
1604 return J.get$hashCode$(object);
1605 else
1606 return H.Primitives_objectHashCode(object);
1607 },
1608
1609 fillLiteralMap: function(keyValuePairs, result) {
1610 var $length, index, index0, index1;
1611 $length = keyValuePairs.length;
1612 for (index = 0; index < $length; index = index1) {
1613 index0 = index + 1;
1614 index1 = index0 + 1;
1615 result.$indexSet(result, keyValuePairs[index], keyValuePairs[index0]);
1616 }
1617 return result;
1618 },
1619
1620 invokeClosure: function(closure, isolate, numberOfArguments, arg1, arg2, arg3, a rg4) {
1621 var t1 = J.getInterceptor(numberOfArguments);
1622 if (t1.$eq(numberOfArguments, 0))
1623 return H._callInIsolate(isolate, new H.invokeClosure_closure(closure));
1624 else if (t1.$eq(numberOfArguments, 1))
1625 return H._callInIsolate(isolate, new H.invokeClosure_closure0(closure, arg1) );
1626 else if (t1.$eq(numberOfArguments, 2))
1627 return H._callInIsolate(isolate, new H.invokeClosure_closure1(closure, arg1, arg2));
1628 else if (t1.$eq(numberOfArguments, 3))
1629 return H._callInIsolate(isolate, new H.invokeClosure_closure2(closure, arg1, arg2, arg3));
1630 else if (t1.$eq(numberOfArguments, 4))
1631 return H._callInIsolate(isolate, new H.invokeClosure_closure3(closure, arg1, arg2, arg3, arg4));
1632 else
1633 throw H.wrapException(P.Exception_Exception("Unsupported number of arguments for wrapped closure"));
1634 },
1635
1636 convertDartClosureToJS: function(closure, arity) {
1637 var $function;
1638 if (closure == null)
1639 return;
1640 $function = closure.$identity;
1641 if (!!$function)
1642 return $function;
1643 $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);
1644 closure.$identity = $function;
1645 return $function;
1646 },
1647
1648 propertyTypeCastError: function(value, property) {
1649 var t1 = J.getInterceptor$asx(property);
1650 throw H.wrapException(H.CastErrorImplementation$(H.Primitives_objectTypeName(v alue), t1.substring$2(property, 3, t1.get$length(property))));
1651 },
1652
1653 interceptedTypeCast: function(value, property) {
1654 var t1;
1655 if (value != null)
1656 t1 = typeof value === "object" && J.getInterceptor(value)[property];
1657 else
1658 t1 = true;
1659 if (t1)
1660 return value;
1661 H.propertyTypeCastError(value, property);
1662 },
1663
1664 throwCyclicInit: function(staticName) {
1665 throw H.wrapException(P.CyclicInitializationError$("Cyclic initialization for static " + H.S(staticName)));
1666 },
1667
1668 setRuntimeTypeInfo: function(target, typeInfo) {
1669 if (target != null)
1670 target.$builtinTypeInfo = typeInfo;
1671 return target;
1672 },
1673
1674 getRuntimeTypeInfo: function(target) {
1675 if (target == null)
1676 return;
1677 return target.$builtinTypeInfo;
1678 },
1679
1680 getRuntimeTypeArguments: function(target, substitutionName) {
1681 return H.substitute(target["$as" + H.S(substitutionName)], H.getRuntimeTypeInf o(target));
1682 },
1683
1684 getRuntimeTypeArgument: function(target, substitutionName, index) {
1685 var $arguments = H.getRuntimeTypeArguments(target, substitutionName);
1686 return $arguments == null ? null : $arguments[index];
1687 },
1688
1689 runtimeTypeToString: function(type) {
1690 if (type == null)
1691 return "dynamic";
1692 else if (typeof type === "object" && type !== null && type.constructor === Arr ay)
1693 return type[0].builtin$cls + H.joinArguments(type, 1);
1694 else if (typeof type == "function")
1695 return type.builtin$cls;
1696 else if (typeof type === "number" && Math.floor(type) === type)
1697 return C.JSInt_methods.toString$0(type);
1698 else
1699 return;
1700 },
1701
1702 joinArguments: function(types, startIndex) {
1703 var buffer, index, firstArgument, allDynamic, argument, str;
1704 if (types == null)
1705 return "";
1706 buffer = P.StringBuffer$("");
1707 for (index = startIndex, firstArgument = true, allDynamic = true; index < type s.length; ++index) {
1708 if (firstArgument)
1709 firstArgument = false;
1710 else
1711 buffer._contents = buffer._contents + ", ";
1712 argument = types[index];
1713 if (argument != null)
1714 allDynamic = false;
1715 str = H.runtimeTypeToString(argument);
1716 str = typeof str === "string" ? str : str;
1717 buffer._contents = buffer._contents + str;
1718 }
1719 return allDynamic ? "" : "<" + H.S(buffer) + ">";
1720 },
1721
1722 substitute: function(substitution, $arguments) {
1723 if (typeof substitution === "object" && substitution !== null && substitution. constructor === Array)
1724 $arguments = substitution;
1725 else if (typeof substitution == "function") {
1726 substitution = H.invokeOn(substitution, null, $arguments);
1727 if (typeof substitution === "object" && substitution !== null && substitutio n.constructor === Array)
1728 $arguments = substitution;
1729 else if (typeof substitution == "function")
1730 $arguments = H.invokeOn(substitution, null, $arguments);
1731 }
1732 return $arguments;
1733 },
1734
1735 computeSignature: function(signature, context, contextName) {
1736 return H.invokeOn(signature, context, H.getRuntimeTypeArguments(context, conte xtName));
1737 },
1738
1739 invokeOn: function($function, receiver, $arguments) {
1740 return $function.apply(receiver, $arguments);
1741 },
1742
1743 typeNameInChrome: function(obj) {
1744 return obj.constructor.name;
1745 },
1746
1747 typeNameInSafari: function(obj) {
1748 return H.constructorNameFallback(obj);
1749 },
1750
1751 typeNameInOpera: function(obj) {
1752 return H.constructorNameFallback(obj);
1753 },
1754
1755 typeNameInFirefox: function(obj) {
1756 var $name = H.constructorNameFallback(obj);
1757 if ($name === "BeforeUnloadEvent")
1758 return "Event";
1759 if ($name === "DataTransfer")
1760 return "Clipboard";
1761 if ($name === "GeoGeolocation")
1762 return "Geolocation";
1763 if ($name === "WorkerMessageEvent")
1764 return "MessageEvent";
1765 if ($name === "XMLDocument")
1766 return "Document";
1767 return $name;
1768 },
1769
1770 typeNameInIE: function(obj) {
1771 var $name = H.constructorNameFallback(obj);
1772 if ($name === "Document") {
1773 if (!!obj.xmlVersion)
1774 return "Document";
1775 return "HTMLDocument";
1776 }
1777 if ($name === "BeforeUnloadEvent")
1778 return "Event";
1779 if ($name === "DataTransfer")
1780 return "Clipboard";
1781 if ($name === "HTMLDDElement")
1782 return "HTMLElement";
1783 if ($name === "HTMLDTElement")
1784 return "HTMLElement";
1785 if ($name === "HTMLPhraseElement")
1786 return "HTMLElement";
1787 if ($name === "Position")
1788 return "Geoposition";
1789 if ($name === "Object")
1790 if (window.DataView && obj instanceof window.DataView)
1791 return "DataView";
1792 return $name;
1793 },
1794
1795 constructorNameFallback: function(object) {
1796 var $constructor, $name, t1, string;
1797 if (object == null)
1798 return "Null";
1799 $constructor = object.constructor;
1800 if (typeof $constructor === "function") {
1801 $name = $constructor.builtin$cls;
1802 if ($name != null)
1803 return $name;
1804 $name = $constructor.name;
1805 if (typeof $name === "string")
1806 t1 = $name !== "" && $name !== "Object" && $name !== "Function.prototype";
1807 else
1808 t1 = false;
1809 if (t1)
1810 return $name;
1811 }
1812 string = Object.prototype.toString.call(object);
1813 return string.substring(8, string.length - 1);
1814 },
1815
1816 alternateTag: function(object, tag) {
1817 if (!!/^HTML[A-Z].*Element$/.test(tag)) {
1818 if (Object.prototype.toString.call(object) === "[object Object]")
1819 return;
1820 return "HTMLElement";
1821 }
1822 return;
1823 },
1824
1825 getFunctionForTypeNameOf: function() {
1826 var getTagFunction = H.getBaseFunctionForTypeNameOf();
1827 if (typeof dartExperimentalFixupGetTag == "function")
1828 return H.applyExperimentalFixup(dartExperimentalFixupGetTag, getTagFunction) ;
1829 return getTagFunction;
1830 },
1831
1832 getBaseFunctionForTypeNameOf: function() {
1833 if (typeof navigator !== "object")
1834 return H.typeNameInChrome$closure;
1835 var userAgent = navigator.userAgent;
1836 if (userAgent.indexOf("Chrome") !== -1 || userAgent.indexOf("DumpRenderTree") !== -1)
1837 return H.typeNameInChrome$closure;
1838 else if (userAgent.indexOf("Firefox") !== -1)
1839 return H.typeNameInFirefox$closure;
1840 else if (userAgent.indexOf("Trident/") !== -1)
1841 return H.typeNameInIE$closure;
1842 else if (userAgent.indexOf("Opera") !== -1)
1843 return H.typeNameInOpera$closure;
1844 else if (userAgent.indexOf("AppleWebKit") !== -1)
1845 return H.typeNameInSafari$closure;
1846 else
1847 return H.constructorNameFallback$closure;
1848 },
1849
1850 applyExperimentalFixup: function(fixupJSFunction, originalGetTagDartFunction) {
1851 return new H.applyExperimentalFixup_newGetTagDartFunction(fixupJSFunction((fun ction(invoke, closure){return function(arg){ return invoke(closure, arg); };})(H .callDartFunctionWith1Arg$closure.call$2, originalGetTagDartFunction)));
1852 },
1853
1854 callDartFunctionWith1Arg: function(fn, arg) {
1855 return fn.call$1(arg);
1856 },
1857
1858 toStringForNativeObject: function(obj) {
1859 return "Instance of " + $.get$getTypeNameOf().call$1(obj);
1860 },
1861
1862 hashCodeForNativeObject: function(object) {
1863 return H.Primitives_objectHashCode(object);
1864 },
1865
1866 defineProperty: function(obj, property, value) {
1867 Object.defineProperty(obj, property, {value: value, enumerable: false, writabl e: true, configurable: true});
1868 },
1869
1870 lookupInterceptor: function(hasOwnPropertyFunction, tag) {
1871 var map = init.interceptorsByTag;
1872 return hasOwnPropertyFunction.call(map, tag) ? map[tag] : null;
1873 },
1874
1875 lookupDispatchRecord: function(obj) {
1876 var hasOwnPropertyFunction, tag, interceptorClass, secondTag, interceptor;
1877 hasOwnPropertyFunction = Object.prototype.hasOwnProperty;
1878 tag = $.get$getTypeNameOf().call$1(obj);
1879 interceptorClass = H.lookupInterceptor(hasOwnPropertyFunction, tag);
1880 if (interceptorClass == null) {
1881 secondTag = H.alternateTag(obj, tag);
1882 if (secondTag != null)
1883 interceptorClass = H.lookupInterceptor(hasOwnPropertyFunction, secondTag);
1884 }
1885 if (interceptorClass == null)
1886 return;
1887 interceptor = interceptorClass.prototype;
1888 if (init.leafTags[tag] === true)
1889 return H.makeLeafDispatchRecord(interceptor);
1890 else
1891 return J.makeDispatchRecord(interceptor, Object.getPrototypeOf(obj), null, n ull);
1892 },
1893
1894 makeLeafDispatchRecord: function(interceptor) {
1895 return J.makeDispatchRecord(interceptor, false, null, !!interceptor.$isJavaScr iptIndexingBehavior);
1896 },
1897
1898 makeDefaultDispatchRecord: function(tag, interceptorClass, proto) {
1899 var interceptor = interceptorClass.prototype;
1900 if (init.leafTags[tag] === true)
1901 return J.makeDispatchRecord(interceptor, false, null, !!interceptor.$isJavaS criptIndexingBehavior);
1902 else
1903 return J.makeDispatchRecord(interceptor, proto, null, null);
1904 },
1905
1906 initNativeDispatch: function() {
1907 var context, map, tags, i, tag, proto, record;
1908 $.initNativeDispatchFlag = true;
1909 if (typeof window != "undefined") {
1910 context = window;
1911 map = init.interceptorsByTag;
1912 tags = Object.getOwnPropertyNames(map);
1913 for (i = 0; i < tags.length; ++i) {
1914 tag = tags[i];
1915 if (typeof context[tag] == "function") {
1916 proto = context[tag].prototype;
1917 if (proto != null) {
1918 record = H.makeDefaultDispatchRecord(tag, map[tag], proto);
1919 if (record != null)
1920 Object.defineProperty(proto, init.dispatchPropertyName, {value: reco rd, enumerable: false, writable: true, configurable: true});
1921 }
1922 }
1923 }
1924 }
1925 },
1926
1927 TypeErrorDecoder: {"": "Object;_pattern,_arguments,_argumentsExpr,_expr,_method, _receiver",
1928 matchTypeError$1: function(message) {
1929 var match, result, t1;
1930 match = new RegExp(this._pattern).exec(message);
1931 if (match == null)
1932 return;
1933 result = {};
1934 t1 = this._arguments;
1935 if (t1 !== -1)
1936 result.arguments = match[t1 + 1];
1937 t1 = this._argumentsExpr;
1938 if (t1 !== -1)
1939 result.argumentsExpr = match[t1 + 1];
1940 t1 = this._expr;
1941 if (t1 !== -1)
1942 result.expr = match[t1 + 1];
1943 t1 = this._method;
1944 if (t1 !== -1)
1945 result.method = match[t1 + 1];
1946 t1 = this._receiver;
1947 if (t1 !== -1)
1948 result.receiver = match[t1 + 1];
1949 return result;
1950 },
1951 static: {
1952 "": "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",
1953 TypeErrorDecoder_extractPattern: function(message) {
1954 var match, $arguments, argumentsExpr, expr, method, receiver;
1955 message = message.replace(String({}), '$receiver$').replace(new RegExp("[[\\]{ }()*+?.\\\\^$|]", 'g'), '\\$&');
1956 match = message.match(/\\\$[a-zA-Z]+\\\$/g);
1957 if (match == null)
1958 match = [];
1959 $arguments = match.indexOf("\\$arguments\\$");
1960 argumentsExpr = match.indexOf("\\$argumentsExpr\\$");
1961 expr = match.indexOf("\\$expr\\$");
1962 method = match.indexOf("\\$method\\$");
1963 receiver = match.indexOf("\\$receiver\\$");
1964 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);
1965 },
1966
1967 TypeErrorDecoder_provokeCallErrorOn: function(expression) {
1968 return function($expr$) {
1969 var $argumentsExpr$ = '$arguments$'
1970 try {
1971 $expr$.$method$($argumentsExpr$);
1972 } catch (e) {
1973 return e.message;
1974 }
1975 }(expression);
1976 },
1977
1978 TypeErrorDecoder_provokeCallErrorOnNull: function() {
1979 return function() {
1980 var $argumentsExpr$ = '$arguments$'
1981 try {
1982 null.$method$($argumentsExpr$);
1983 } catch (e) {
1984 return e.message;
1985 }
1986 }();
1987 },
1988
1989 TypeErrorDecoder_provokeCallErrorOnUndefined: function() {
1990 return function() {
1991 var $argumentsExpr$ = '$arguments$'
1992 try {
1993 (void 0).$method$($argumentsExpr$);
1994 } catch (e) {
1995 return e.message;
1996 }
1997 }();
1998 },
1999
2000 TypeErrorDecoder_provokePropertyErrorOn: function(expression) {
2001 return function($expr$) {
2002 try {
2003 $expr$.$method$;
2004 } catch (e) {
2005 return e.message;
2006 }
2007 }(expression);
2008 },
2009
2010 TypeErrorDecoder_provokePropertyErrorOnNull: function() {
2011 return function() {
2012 try {
2013 null.$method$;
2014 } catch (e) {
2015 return e.message;
2016 }
2017 }();
2018 },
2019
2020 TypeErrorDecoder_provokePropertyErrorOnUndefined: function() {
2021 return function() {
2022 try {
2023 (void 0).$method$;
2024 } catch (e) {
2025 return e.message;
2026 }
2027 }();
2028 }}
2029
2030 },
2031
2032 NullError: {"": "Error;_message,_method",
2033 toString$0: function(_) {
2034 var t1 = this._method;
2035 if (t1 == null)
2036 return "NullError: " + H.S(this._message);
2037 return "NullError: Cannot call \"" + H.S(t1) + "\" on null";
2038 },
2039 $isError: true
2040 },
2041
2042 JsNoSuchMethodError: {"": "Error;_message,_method,_receiver",
2043 toString$0: function(_) {
2044 var t1, t2;
2045 t1 = this._method;
2046 if (t1 == null)
2047 return "NoSuchMethodError: " + H.S(this._message);
2048 t2 = this._receiver;
2049 if (t2 == null)
2050 return "NoSuchMethodError: Cannot call \"" + t1 + "\" (" + H.S(this._messa ge) + ")";
2051 return "NoSuchMethodError: Cannot call \"" + t1 + "\" on \"" + t2 + "\" (" + H.S(this._message) + ")";
2052 },
2053 $isError: true,
2054 static: {
2055 JsNoSuchMethodError$: function(_message, match) {
2056 var t1, t2;
2057 t1 = match == null;
2058 t2 = t1 ? null : match.method;
2059 t1 = t1 ? null : match.receiver;
2060 return new H.JsNoSuchMethodError(_message, t2, t1);
2061 }}
2062
2063 },
2064
2065 UnknownJsTypeError: {"": "Error;_message",
2066 toString$0: function(_) {
2067 var t1 = this._message;
2068 return C.JSString_methods.get$isEmpty(t1) ? "Error" : "Error: " + t1;
2069 }
2070 },
2071
2072 unwrapException_saveStackTrace: {"": "Closure;ex_0",
2073 call$1: function(error) {
2074 var t1 = J.getInterceptor(error);
2075 if (typeof error === "object" && error !== null && !!t1.$isError)
2076 if (error.$thrownJsError == null)
2077 error.$thrownJsError = this.ex_0;
2078 return error;
2079 },
2080 $is_args1: true
2081 },
2082
2083 _StackTrace: {"": "Object;_exception,_trace",
2084 toString$0: function(_) {
2085 var t1, trace;
2086 t1 = this._trace;
2087 if (t1 != null)
2088 return t1;
2089 t1 = this._exception;
2090 trace = typeof t1 === "object" ? t1.stack : null;
2091 t1 = trace == null ? "" : trace;
2092 this._trace = t1;
2093 return t1;
2094 }
2095 },
2096
2097 invokeClosure_closure: {"": "Closure;closure_0",
2098 call$0: function() {
2099 return this.closure_0.call$0();
2100 }
2101 },
2102
2103 invokeClosure_closure0: {"": "Closure;closure_1,arg1_2",
2104 call$0: function() {
2105 return this.closure_1.call$1(this.arg1_2);
2106 }
2107 },
2108
2109 invokeClosure_closure1: {"": "Closure;closure_3,arg1_4,arg2_5",
2110 call$0: function() {
2111 return this.closure_3.call$2(this.arg1_4, this.arg2_5);
2112 }
2113 },
2114
2115 invokeClosure_closure2: {"": "Closure;closure_6,arg1_7,arg2_8,arg3_9",
2116 call$0: function() {
2117 return this.closure_6.call$3(this.arg1_7, this.arg2_8, this.arg3_9);
2118 }
2119 },
2120
2121 invokeClosure_closure3: {"": "Closure;closure_10,arg1_11,arg2_12,arg3_13,arg4_14 ",
2122 call$0: function() {
2123 return this.closure_10.call$4(this.arg1_11, this.arg2_12, this.arg3_13, this .arg4_14);
2124 }
2125 },
2126
2127 Closure: {"": "Object;",
2128 toString$0: function(_) {
2129 return "Closure";
2130 }
2131 },
2132
2133 BoundClosure: {"": "Closure;_self,__js_helper$_target,_receiver,__js_helper$_nam e",
2134 $eq: function(_, other) {
2135 var t1;
2136 if (other == null)
2137 return false;
2138 if (this === other)
2139 return true;
2140 t1 = J.getInterceptor(other);
2141 if (typeof other !== "object" || other === null || !t1.$isBoundClosure)
2142 return false;
2143 return this._self === other._self && this.__js_helper$_target === other.__js _helper$_target && this._receiver === other._receiver;
2144 },
2145 get$hashCode: function(_) {
2146 var t1, receiverHashCode;
2147 t1 = this._receiver;
2148 if (t1 == null)
2149 receiverHashCode = H.Primitives_objectHashCode(this._self);
2150 else
2151 receiverHashCode = typeof t1 !== "object" ? J.get$hashCode$(t1) : H.Primit ives_objectHashCode(t1);
2152 return (receiverHashCode ^ H.Primitives_objectHashCode(this.__js_helper$_tar get)) >>> 0;
2153 },
2154 $isBoundClosure: true
2155 },
2156
2157 CastErrorImplementation: {"": "Error;message",
2158 toString$0: function(_) {
2159 return this.message;
2160 },
2161 $isError: true,
2162 static: {
2163 CastErrorImplementation$: function(actualType, expectedType) {
2164 return new H.CastErrorImplementation("CastError: Casting value of type " + act ualType + " to incompatible type " + H.S(expectedType));
2165 }}
2166
2167 },
2168
2169 applyExperimentalFixup_newGetTagDartFunction: {"": "Closure;newGetTagJSFunction_ 0",
2170 call$1: function(object) {
2171 return this.newGetTagJSFunction_0(object);
2172 },
2173 $is_args1: true
2174 }}],
2175 ["dart._collection.dev", "dart:_collection-dev", , H, {
2176 Arrays_copy: function(src, srcStart, dst, dstStart, count) {
2177 var i, j, t1;
2178 if (srcStart < dstStart)
2179 for (i = srcStart + count - 1, j = dstStart + count - 1; i >= srcStart; --i, --j) {
2180 if (i < 0 || i >= src.length)
2181 throw H.ioore(src, i);
2182 C.JSArray_methods.$indexSet(dst, j, src[i]);
2183 }
2184 else
2185 for (t1 = srcStart + count, j = dstStart, i = srcStart; i < t1; ++i, ++j) {
2186 if (i < 0 || i >= src.length)
2187 throw H.ioore(src, i);
2188 C.JSArray_methods.$indexSet(dst, j, src[i]);
2189 }
2190 },
2191
2192 IterableMixinWorkaround_forEach: function(iterable, f) {
2193 var t1;
2194 for (t1 = new H.ListIterator(iterable, iterable.length, 0, null); t1.moveNext$ 0();)
2195 f.call$1(t1._current);
2196 },
2197
2198 IterableMixinWorkaround_toStringIterable: function(iterable, leftDelimiter, righ tDelimiter) {
2199 var result, i, t1;
2200 for (i = 0; i < $.get$IterableMixinWorkaround__toStringList().length; ++i) {
2201 t1 = $.get$IterableMixinWorkaround__toStringList();
2202 if (i >= t1.length)
2203 throw H.ioore(t1, i);
2204 if (t1[i] === iterable)
2205 return H.S(leftDelimiter) + "..." + H.S(rightDelimiter);
2206 }
2207 result = P.StringBuffer$("");
2208 try {
2209 $.get$IterableMixinWorkaround__toStringList().push(iterable);
2210 result.write$1(leftDelimiter);
2211 result.writeAll$2(iterable, ", ");
2212 result.write$1(rightDelimiter);
2213 } finally {
2214 t1 = $.get$IterableMixinWorkaround__toStringList();
2215 if (0 >= t1.length)
2216 throw H.ioore(t1, 0);
2217 t1.pop();
2218 }
2219 return result.get$_contents();
2220 },
2221
2222 IterableMixinWorkaround__rangeCheck: function(list, start, end) {
2223 if (start < 0 || start > list.length)
2224 throw H.wrapException(P.RangeError$range(start, 0, list.length));
2225 if (end < start || end > list.length)
2226 throw H.wrapException(P.RangeError$range(end, start, list.length));
2227 },
2228
2229 IterableMixinWorkaround_setRangeList: function(list, start, end, from, skipCount ) {
2230 var $length;
2231 H.IterableMixinWorkaround__rangeCheck(list, start, end);
2232 $length = end - start;
2233 if ($length === 0)
2234 return;
2235 if (skipCount < 0)
2236 throw H.wrapException(new P.ArgumentError(skipCount));
2237 if (skipCount + $length > from.length)
2238 throw H.wrapException(P.StateError$("Not enough elements"));
2239 H.Arrays_copy(from, skipCount, list, start, $length);
2240 },
2241
2242 printToConsole: function(line) {
2243 if (typeof dartPrint == "function") {
2244 dartPrint(line);
2245 return;
2246 }
2247 if (typeof console == "object" && typeof console.log == "function") {
2248 console.log(line);
2249 return;
2250 }
2251 if (typeof window == "object")
2252 return;
2253 if (typeof print == "function") {
2254 print(line);
2255 return;
2256 }
2257 throw "Unable to print message: " + String(line);
2258 },
2259
2260 Symbol_getName: function(symbol) {
2261 return symbol.get$_name();
2262 },
2263
2264 ListIterator: {"": "Object;_iterable,_length,_index,_current",
2265 get$current: function() {
2266 return this._current;
2267 },
2268 moveNext$0: function() {
2269 var t1, t2, $length, t3;
2270 t1 = this._iterable;
2271 t2 = J.getInterceptor$asx(t1);
2272 $length = t2.get$length(t1);
2273 if (this._length !== $length)
2274 throw H.wrapException(P.ConcurrentModificationError$(t1));
2275 t3 = this._index;
2276 if (t3 >= $length) {
2277 this._current = null;
2278 return false;
2279 }
2280 this._current = t2.elementAt$1(t1, t3);
2281 this._index = this._index + 1;
2282 return true;
2283 }
2284 },
2285
2286 MappedIterable: {"": "IterableBase;_iterable,_f",
2287 get$iterator: function(_) {
2288 var t1 = this._iterable;
2289 t1 = t1.get$iterator(t1);
2290 t1 = new H.MappedIterator(null, t1, this._f);
2291 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "MappedIterable", 0 ), H.getRuntimeTypeArgument(this, "MappedIterable", 1)]);
2292 return t1;
2293 },
2294 get$length: function(_) {
2295 var t1 = this._iterable;
2296 return t1.get$length(t1);
2297 },
2298 $asIterableBase: function($S, $T) {
2299 return [$T];
2300 },
2301 static: {
2302 MappedIterable_MappedIterable: function(iterable, $function, $S, $T) {
2303 var t1;
2304 if (!!iterable.$isEfficientLength) {
2305 t1 = new H.EfficientLengthMappedIterable(iterable, $function);
2306 H.setRuntimeTypeInfo(t1, [$S, $T]);
2307 return t1;
2308 }
2309 t1 = new H.MappedIterable(iterable, $function);
2310 H.setRuntimeTypeInfo(t1, [$S, $T]);
2311 return t1;
2312 }}
2313
2314 },
2315
2316 EfficientLengthMappedIterable: {"": "MappedIterable;_iterable,_f", $asMappedIter able: null, $isEfficientLength: true},
2317
2318 MappedIterator: {"": "Iterator;_current,_iterator,_f",
2319 _f$1: function(arg0) {
2320 return this._f.call$1(arg0);
2321 },
2322 moveNext$0: function() {
2323 var t1 = this._iterator;
2324 if (t1.moveNext$0()) {
2325 this._current = this._f$1(t1.get$current());
2326 return true;
2327 }
2328 this._current = null;
2329 return false;
2330 },
2331 get$current: function() {
2332 return this._current;
2333 },
2334 $asIterator: function($S, $T) {
2335 return [$T];
2336 }
2337 },
2338
2339 FixedLengthListMixin: {"": "Object;"}}],
2340 ["dart.async", "dart:async", , P, {
2341 _attachStackTrace: function(o, st) {
2342 var t1;
2343 if (o == null || typeof o === "boolean" || typeof o === "number" || typeof o = == "string")
2344 return;
2345 t1 = $.get$_stackTraceExpando();
2346 t1.$indexSet(t1, o, st);
2347 },
2348
2349 _invokeErrorHandler: function(errorHandler, error, stackTrace) {
2350 var t1 = J.getInterceptor(errorHandler);
2351 if (!!t1.$is_args2)
2352 return errorHandler.call$2(error, stackTrace);
2353 else
2354 return errorHandler.call$1(error);
2355 },
2356
2357 _registerErrorHandler: function(errorHandler, zone) {
2358 var t1 = J.getInterceptor(errorHandler);
2359 zone.toString;
2360 if (!!t1.$is_args2)
2361 return errorHandler;
2362 else
2363 return errorHandler;
2364 },
2365
2366 getAttachedStackTrace: function(o) {
2367 var t1;
2368 if (o == null || typeof o === "boolean" || typeof o === "number" || typeof o = == "string")
2369 return;
2370 t1 = $.get$_stackTraceExpando();
2371 return t1.$index(t1, o);
2372 },
2373
2374 Future_wait: function(futures) {
2375 var t1, t2, t3, future, pos, t4, t5, result, completer;
2376 t1 = {};
2377 t1.completer_0 = null;
2378 t1.values_1 = null;
2379 t2 = new P.Future_wait_handleError(t1);
2380 t1.remaining_2 = 0;
2381 for (t3 = new H.ListIterator(futures, futures.length, 0, null); t3.moveNext$0( );) {
2382 future = t3._current;
2383 pos = t1.remaining_2;
2384 t1.remaining_2 = pos + 1;
2385 t4 = future.catchError$1(t2);
2386 t5 = $.Zone__current;
2387 t5.toString;
2388 result = new P._Future(0, t5, null, null, new P.Future_wait_closure(t1, pos) , null, P._registerErrorHandler(null, t5), null);
2389 result.$builtinTypeInfo = [null];
2390 t4._addListener$1(result);
2391 }
2392 t2 = t1.remaining_2;
2393 if (t2 === 0)
2394 return P._Future$immediate(C.List_empty, null);
2395 t1.values_1 = P.List_List(t2, null);
2396 t2 = J.JSArray;
2397 completer = new P._AsyncCompleter(P._Future$(t2));
2398 H.setRuntimeTypeInfo(completer, [t2]);
2399 t1.completer_0 = completer;
2400 return t1.completer_0.future;
2401 },
2402
2403 _asyncRunCallback: function() {
2404 var callback, t1, exception, milliseconds;
2405 for (; t1 = $.get$_asyncCallbacks(), t1._head !== t1._tail;) {
2406 callback = $.get$_asyncCallbacks().removeFirst$0();
2407 try {
2408 callback.call$0();
2409 } catch (exception) {
2410 H.unwrapException(exception);
2411 milliseconds = C.JSNumber_methods.$tdiv(C.Duration_0._duration, 1000);
2412 H.TimerImpl$(milliseconds < 0 ? 0 : milliseconds, P._asyncRunCallback$clos ure);
2413 throw exception;
2414 }
2415
2416 }
2417 $._callbacksAreEnqueued = false;
2418 },
2419
2420 _scheduleAsyncCallback: function(callback) {
2421 $.get$_asyncCallbacks()._add$1(callback);
2422 if (!$._callbacksAreEnqueued) {
2423 P._createTimer(C.Duration_0, P._asyncRunCallback$closure);
2424 $._callbacksAreEnqueued = true;
2425 }
2426 },
2427
2428 scheduleMicrotask: function(callback) {
2429 var t1, t2;
2430 t1 = $.Zone__current;
2431 if (t1 === C.C__RootZone) {
2432 t1.toString;
2433 P._scheduleAsyncCallback(callback);
2434 return;
2435 }
2436 t2 = t1.bindCallback$2$runGuarded(callback, true);
2437 t1.toString;
2438 P._scheduleAsyncCallback(t2);
2439 },
2440
2441 StreamController_StreamController: function(onCancel, onListen, onPause, onResum e, sync, $T) {
2442 var t1;
2443 if (sync) {
2444 t1 = new P._SyncStreamController(onListen, onPause, onResume, onCancel, null , 0, null);
2445 H.setRuntimeTypeInfo(t1, [$T]);
2446 } else {
2447 t1 = new P._AsyncStreamController(onListen, onPause, onResume, onCancel, nul l, 0, null);
2448 H.setRuntimeTypeInfo(t1, [$T]);
2449 }
2450 return t1;
2451 },
2452
2453 _runGuarded: function(notificationHandler) {
2454 var result, e, s, t1, t2, exception;
2455 if (notificationHandler == null)
2456 return;
2457 try {
2458 result = notificationHandler.call$0();
2459 t1 = result;
2460 t2 = J.getInterceptor(t1);
2461 if (typeof t1 === "object" && t1 !== null && !!t2.$isFuture)
2462 return result;
2463 return;
2464 } catch (exception) {
2465 t1 = H.unwrapException(exception);
2466 e = t1;
2467 s = new H._StackTrace(exception, null);
2468 t1 = $.Zone__current;
2469 t2 = P._asyncError(e, s);
2470 t1.toString;
2471 P._rootHandleUncaughtError(t1, null, t1, t2, s);
2472 }
2473
2474 },
2475
2476 _nullDataHandler: function(value) {
2477 },
2478
2479 _nullErrorHandler: function(error, stackTrace) {
2480 var t1 = $.Zone__current;
2481 t1.toString;
2482 P._rootHandleUncaughtError(t1, null, t1, error, stackTrace);
2483 },
2484
2485 _nullDoneHandler: function() {
2486 },
2487
2488 _asyncError: function(error, stackTrace) {
2489 if (stackTrace == null)
2490 return error;
2491 if (P.getAttachedStackTrace(error) != null)
2492 return error;
2493 P._attachStackTrace(error, stackTrace);
2494 return error;
2495 },
2496
2497 _runUserCode: function(userCode, onSuccess, onError) {
2498 var e, s, exception, t1;
2499 try {
2500 onSuccess.call$1(userCode.call$0());
2501 } catch (exception) {
2502 t1 = H.unwrapException(exception);
2503 e = t1;
2504 s = new H._StackTrace(exception, null);
2505 onError.call$2(P._asyncError(e, s), s);
2506 }
2507
2508 },
2509
2510 _cancelAndError: function(subscription, future, error, stackTrace) {
2511 var cancelFuture, t1;
2512 cancelFuture = subscription.cancel$0();
2513 t1 = J.getInterceptor(cancelFuture);
2514 if (typeof cancelFuture === "object" && cancelFuture !== null && !!t1.$isFutur e)
2515 cancelFuture.whenComplete$1(new P._cancelAndError_closure(future, error, sta ckTrace));
2516 else
2517 future._completeError$2(error, stackTrace);
2518 },
2519
2520 _cancelAndErrorClosure: function(subscription, future) {
2521 return new P._cancelAndErrorClosure_closure(subscription, future);
2522 },
2523
2524 Timer_Timer: function(duration, callback) {
2525 var t1, t2;
2526 t1 = $.Zone__current;
2527 if (t1 === C.C__RootZone) {
2528 t1.toString;
2529 return P._createTimer(duration, callback);
2530 }
2531 t2 = t1.bindCallback$2$runGuarded(callback, true);
2532 t1.toString;
2533 return P._createTimer(duration, t2);
2534 },
2535
2536 _createTimer: function(duration, callback) {
2537 var milliseconds = C.JSNumber_methods.$tdiv(duration._duration, 1000);
2538 return H.TimerImpl$(milliseconds < 0 ? 0 : milliseconds, callback);
2539 },
2540
2541 _rootHandleUncaughtError: function($self, $parent, zone, error, stackTrace) {
2542 P._rootRun($self, null, $self, new P._rootHandleUncaughtError_closure(error, s tackTrace));
2543 },
2544
2545 _rootRun: function($self, $parent, zone, f) {
2546 var old, t1, t2;
2547 t1 = $.Zone__current;
2548 t2 = zone;
2549 if (t1 == null ? t2 == null : t1 === t2)
2550 return f.call$0();
2551 old = t1;
2552 try {
2553 $.Zone__current = zone;
2554 t1 = f.call$0();
2555 return t1;
2556 } finally {
2557 $.Zone__current = old;
2558 }
2559 },
2560
2561 _rootRunUnary: function($self, $parent, zone, f, arg) {
2562 var old, t1, t2;
2563 t1 = $.Zone__current;
2564 t2 = zone;
2565 if (t1 == null ? t2 == null : t1 === t2)
2566 return f.call$1(arg);
2567 old = t1;
2568 try {
2569 $.Zone__current = zone;
2570 t1 = f.call$1(arg);
2571 return t1;
2572 } finally {
2573 $.Zone__current = old;
2574 }
2575 },
2576
2577 _AsyncError: {"": "Object;error>,stackTrace<", $isError: true},
2578
2579 Future: {"": "Object;", $isFuture: true},
2580
2581 Future_wait_handleError: {"": "Closure;box_0",
2582 call$1: function(error) {
2583 var t1 = this.box_0;
2584 if (t1.values_1 != null) {
2585 t1.values_1 = null;
2586 t1 = t1.completer_0.future;
2587 if (t1._state !== 0)
2588 H.throwExpression(P.StateError$("Future already completed"));
2589 t1._asyncCompleteError$2(error, null);
2590 }
2591 return;
2592 },
2593 $is_args1: true
2594 },
2595
2596 Future_wait_closure: {"": "Closure;box_0,pos_1",
2597 call$1: function(value) {
2598 var t1, t2, t3;
2599 t1 = this.box_0;
2600 t2 = t1.values_1;
2601 if (t2 == null)
2602 return;
2603 t3 = this.pos_1;
2604 if (t3 < 0 || t3 >= t2.length)
2605 throw H.ioore(t2, t3);
2606 t2[t3] = value;
2607 t1.remaining_2 = t1.remaining_2 - 1;
2608 if (t1.remaining_2 === 0) {
2609 t2 = t1.completer_0;
2610 t1 = t1.values_1;
2611 t2 = t2.future;
2612 if (t2._state !== 0)
2613 H.throwExpression(P.StateError$("Future already completed"));
2614 t2._asyncComplete$1(t1);
2615 }
2616 },
2617 $is_args1: true
2618 },
2619
2620 _Completer: {"": "Object;"},
2621
2622 _AsyncCompleter: {"": "_Completer;future", $as_Completer: null},
2623
2624 _Future: {"": "Object;_state,_zone<,_resultOrListeners,_nextListener@,_onValueCa llback,_errorTestCallback,_onErrorCallback,_whenCompleteActionCallback",
2625 get$_isComplete: function() {
2626 return this._state >= 4;
2627 },
2628 get$_hasError: function() {
2629 return this._state === 8;
2630 },
2631 set$_isChained: function(value) {
2632 if (value)
2633 this._state = 2;
2634 else
2635 this._state = 0;
2636 },
2637 get$_onValue: function() {
2638 return this._state === 2 ? null : this._onValueCallback;
2639 },
2640 _onValue$1: function(arg0) {
2641 return this.get$_onValue().call$1(arg0);
2642 },
2643 get$_whenCompleteAction: function() {
2644 return this._state === 2 ? null : this._whenCompleteActionCallback;
2645 },
2646 _whenCompleteAction$0: function() {
2647 return this.get$_whenCompleteAction().call$0();
2648 },
2649 then$2$onError: function(f, onError) {
2650 var result = P._Future$_then(f, onError, null);
2651 this._addListener$1(result);
2652 return result;
2653 },
2654 then$1: function(f) {
2655 return this.then$2$onError(f, null);
2656 },
2657 catchError$2$test: function(onError, test) {
2658 var result = P._Future$_catchError(onError, test, null);
2659 this._addListener$1(result);
2660 return result;
2661 },
2662 catchError$1: function(onError) {
2663 return this.catchError$2$test(onError, null);
2664 },
2665 whenComplete$1: function(action) {
2666 var result = P._Future$_whenComplete(action, H.getRuntimeTypeArgument(this, "_Future", 0));
2667 this._addListener$1(result);
2668 return result;
2669 },
2670 get$_value: function() {
2671 return this._resultOrListeners;
2672 },
2673 get$_error: function() {
2674 return this._resultOrListeners;
2675 },
2676 _setValue$1: function(value) {
2677 this._state = 4;
2678 this._resultOrListeners = value;
2679 },
2680 _setError$2: function(error, stackTrace) {
2681 this._state = 8;
2682 this._resultOrListeners = new P._AsyncError(error, stackTrace);
2683 },
2684 _addListener$1: function(listener) {
2685 if (this._state >= 4) {
2686 this._zone.toString;
2687 P._scheduleAsyncCallback(new P._Future__addListener_closure(this, listener ));
2688 } else {
2689 listener._nextListener = this._resultOrListeners;
2690 this._resultOrListeners = listener;
2691 }
2692 },
2693 _removeListeners$0: function() {
2694 var current, prev, next;
2695 current = this._resultOrListeners;
2696 this._resultOrListeners = null;
2697 for (prev = null; current != null; prev = current, current = next) {
2698 next = current.get$_nextListener();
2699 current.set$_nextListener(prev);
2700 }
2701 return prev;
2702 },
2703 _complete$1: function(value) {
2704 var t1, listeners;
2705 t1 = J.getInterceptor(value);
2706 if (typeof value === "object" && value !== null && !!t1.$isFuture) {
2707 P._Future__chainFutures(value, this);
2708 return;
2709 }
2710 listeners = this._removeListeners$0();
2711 this._setValue$1(value);
2712 P._Future__propagateToListeners(this, listeners);
2713 },
2714 _completeError$2: function(error, stackTrace) {
2715 var listeners;
2716 if (stackTrace != null)
2717 P._attachStackTrace(error, stackTrace);
2718 listeners = this._state === 2 ? null : this._removeListeners$0();
2719 this._setError$2(error, stackTrace);
2720 P._Future__propagateToListeners(this, listeners);
2721 },
2722 get$_completeError: function() {
2723 return new P.BoundClosure$2(this, P._Future.prototype._completeError$2, null , "_completeError$2");
2724 },
2725 _asyncComplete$1: function(value) {
2726 if (this._state !== 0)
2727 H.throwExpression(P.StateError$("Future already completed"));
2728 this._state = 1;
2729 this._zone.toString;
2730 P._scheduleAsyncCallback(new P._Future__asyncComplete_closure(this, value));
2731 },
2732 _asyncCompleteError$2: function(error, stackTrace) {
2733 if (this._state !== 0)
2734 H.throwExpression(P.StateError$("Future already completed"));
2735 this._state = 1;
2736 this._zone.toString;
2737 P._scheduleAsyncCallback(new P._Future__asyncCompleteError_closure(this, err or, stackTrace));
2738 },
2739 _async$_Future$immediate$1: function(value, $T) {
2740 this._asyncComplete$1(value);
2741 },
2742 $is_Future: true,
2743 $isFuture: true,
2744 static: {
2745 "": "_Future__INCOMPLETE,_Future__PENDING_COMPLETE,_Future__CHAINED,_Future__VAL UE,_Future__ERROR",
2746 _Future$: function($T) {
2747 var t1 = new P._Future(0, $.Zone__current, null, null, null, null, null, null) ;
2748 H.setRuntimeTypeInfo(t1, [$T]);
2749 return t1;
2750 },
2751
2752 _Future$immediate: function(value, $T) {
2753 var t1 = new P._Future(0, $.Zone__current, null, null, null, null, null, null) ;
2754 H.setRuntimeTypeInfo(t1, [$T]);
2755 t1._async$_Future$immediate$1(value, $T);
2756 return t1;
2757 },
2758
2759 _Future$_then: function(onValueCallback, onErrorCallback, $T) {
2760 var t1 = $.Zone__current;
2761 t1.toString;
2762 t1 = new P._Future(0, t1, null, null, onValueCallback, null, P._registerErrorH andler(onErrorCallback, t1), null);
2763 H.setRuntimeTypeInfo(t1, [$T]);
2764 return t1;
2765 },
2766
2767 _Future$_catchError: function(onErrorCallback, errorTestCallback, $T) {
2768 var t1, t2;
2769 t1 = $.Zone__current;
2770 t2 = P._registerErrorHandler(onErrorCallback, t1);
2771 t1.toString;
2772 t2 = new P._Future(0, t1, null, null, null, errorTestCallback, t2, null);
2773 H.setRuntimeTypeInfo(t2, [$T]);
2774 return t2;
2775 },
2776
2777 _Future$_whenComplete: function(whenCompleteActionCallback, $T) {
2778 var t1 = $.Zone__current;
2779 t1.toString;
2780 t1 = new P._Future(0, t1, null, null, null, null, null, whenCompleteActionCall back);
2781 H.setRuntimeTypeInfo(t1, [$T]);
2782 return t1;
2783 },
2784
2785 _Future__chainFutures: function(source, target) {
2786 var t1;
2787 target._state = 2;
2788 t1 = J.getInterceptor(source);
2789 if (typeof source === "object" && source !== null && !!t1.$is_Future)
2790 if (source._state >= 4)
2791 P._Future__propagateToListeners(source, target);
2792 else
2793 source._addListener$1(target);
2794 else
2795 source.then$2$onError(new P._Future__chainFutures_closure(target), new P._Fu ture__chainFutures_closure0(target));
2796 },
2797
2798 _Future__propagateMultipleListeners: function(source, listeners) {
2799 var listeners0;
2800 do {
2801 listeners0 = listeners.get$_nextListener();
2802 listeners.set$_nextListener(null);
2803 P._Future__propagateToListeners(source, listeners);
2804 if (listeners0 != null) {
2805 listeners = listeners0;
2806 continue;
2807 } else
2808 break;
2809 } while (true);
2810 },
2811
2812 _Future__propagateToListeners: function(source, listeners) {
2813 var t1, t2, hasError, asyncError, t3, t4, t5, chainSource, listeners0;
2814 t1 = {};
2815 t1.source_4 = source;
2816 for (; true;) {
2817 t2 = {};
2818 if (!t1.source_4.get$_isComplete())
2819 return;
2820 hasError = t1.source_4.get$_hasError();
2821 if (hasError && listeners == null) {
2822 t2 = t1.source_4;
2823 asyncError = t2.get$_error();
2824 t2 = t2.get$_zone();
2825 t3 = J.get$error$x(asyncError);
2826 t4 = asyncError.get$stackTrace();
2827 t2.toString;
2828 P._rootHandleUncaughtError(t2, null, t2, t3, t4);
2829 return;
2830 }
2831 if (listeners == null)
2832 return;
2833 if (listeners._nextListener != null) {
2834 P._Future__propagateMultipleListeners(t1.source_4, listeners);
2835 return;
2836 }
2837 if (hasError) {
2838 t3 = t1.source_4.get$_zone();
2839 t4 = listeners._zone;
2840 t3.toString;
2841 t4.toString;
2842 t3 = t4 == null ? t3 != null : t4 !== t3;
2843 } else
2844 t3 = false;
2845 if (t3) {
2846 t2 = t1.source_4;
2847 asyncError = t2.get$_error();
2848 t2 = t2.get$_zone();
2849 t3 = J.get$error$x(asyncError);
2850 t4 = asyncError.get$stackTrace();
2851 t2.toString;
2852 P._rootHandleUncaughtError(t2, null, t2, t3, t4);
2853 return;
2854 }
2855 t3 = $.Zone__current;
2856 t4 = listeners._zone;
2857 if (t3 == null ? t4 != null : t3 !== t4) {
2858 t4.toString;
2859 P._rootRun(t4, null, t4, new P._Future__propagateToListeners_closure(t1, l isteners));
2860 return;
2861 }
2862 t2.listenerHasValue_1 = null;
2863 t2.listenerValueOrError_2 = null;
2864 t2.isPropagationAborted_3 = false;
2865 t4.toString;
2866 P._rootRun(t4, null, t4, new P._Future__propagateToListeners_closure0(t1, t2 , hasError, listeners));
2867 if (t2.isPropagationAborted_3)
2868 return;
2869 t3 = t2.listenerHasValue_1 === true;
2870 if (t3) {
2871 t4 = t2.listenerValueOrError_2;
2872 t5 = J.getInterceptor(t4);
2873 t5 = typeof t4 === "object" && t4 !== null && !!t5.$isFuture;
2874 t4 = t5;
2875 } else
2876 t4 = false;
2877 if (t4) {
2878 chainSource = t2.listenerValueOrError_2;
2879 t2 = J.getInterceptor(chainSource);
2880 if (typeof chainSource === "object" && chainSource !== null && !!t2.$is_Fu ture && chainSource._state >= 4) {
2881 listeners._state = 2;
2882 t1.source_4 = chainSource;
2883 continue;
2884 }
2885 P._Future__chainFutures(chainSource, listeners);
2886 return;
2887 }
2888 if (t3) {
2889 listeners0 = listeners._removeListeners$0();
2890 t2 = t2.listenerValueOrError_2;
2891 listeners._state = 4;
2892 listeners._resultOrListeners = t2;
2893 } else {
2894 listeners0 = listeners._removeListeners$0();
2895 asyncError = t2.listenerValueOrError_2;
2896 t2 = J.get$error$x(asyncError);
2897 t3 = asyncError.get$stackTrace();
2898 listeners._state = 8;
2899 listeners._resultOrListeners = new P._AsyncError(t2, t3);
2900 }
2901 t1.source_4 = listeners;
2902 listeners = listeners0;
2903 }
2904 }}
2905
2906 },
2907
2908 _Future__addListener_closure: {"": "Closure;this_0,listener_1",
2909 call$0: function() {
2910 P._Future__propagateToListeners(this.this_0, this.listener_1);
2911 }
2912 },
2913
2914 _Future__chainFutures_closure: {"": "Closure;target_0",
2915 call$1: function(value) {
2916 this.target_0._complete$1(value);
2917 },
2918 $is_args1: true
2919 },
2920
2921 _Future__chainFutures_closure0: {"": "Closure;target_1",
2922 call$2: function(error, stackTrace) {
2923 this.target_1._completeError$2(error, stackTrace);
2924 },
2925 call$1: function(error) {
2926 return this.call$2(error, null);
2927 },
2928 $is_args2: true,
2929 $is_args1: true
2930 },
2931
2932 _Future__asyncComplete_closure: {"": "Closure;this_0,value_1",
2933 call$0: function() {
2934 this.this_0._complete$1(this.value_1);
2935 }
2936 },
2937
2938 _Future__asyncCompleteError_closure: {"": "Closure;this_0,error_1,stackTrace_2",
2939 call$0: function() {
2940 this.this_0._completeError$2(this.error_1, this.stackTrace_2);
2941 }
2942 },
2943
2944 _Future__propagateToListeners_closure: {"": "Closure;box_2,listener_3",
2945 call$0: function() {
2946 P._Future__propagateToListeners(this.box_2.source_4, this.listener_3);
2947 }
2948 },
2949
2950 _Future__propagateToListeners_closure0: {"": "Closure;box_2,box_1,hasError_4,lis tener_5",
2951 call$0: function() {
2952 var t1, value, asyncError, test, matchesTest, errorCallback, e, s, t2, t3, t 4, exception;
2953 t1 = {};
2954 try {
2955 t2 = this.box_2;
2956 if (!this.hasError_4) {
2957 value = t2.source_4.get$_value();
2958 t2 = this.listener_5;
2959 t3 = t2._state === 2 ? null : t2._onValueCallback;
2960 t4 = this.box_1;
2961 if (t3 != null) {
2962 t4.listenerValueOrError_2 = t2._onValue$1(value);
2963 t4.listenerHasValue_1 = true;
2964 } else {
2965 t4.listenerValueOrError_2 = value;
2966 t4.listenerHasValue_1 = true;
2967 }
2968 } else {
2969 asyncError = t2.source_4.get$_error();
2970 t2 = this.listener_5;
2971 test = t2._state === 2 ? null : t2._errorTestCallback;
2972 matchesTest = true;
2973 if (test != null)
2974 matchesTest = test.call$1(J.get$error$x(asyncError));
2975 if (matchesTest === true)
2976 t3 = (t2._state === 2 ? null : t2._onErrorCallback) != null;
2977 else
2978 t3 = false;
2979 if (t3) {
2980 errorCallback = t2._state === 2 ? null : t2._onErrorCallback;
2981 t2 = this.box_1;
2982 t2.listenerValueOrError_2 = P._invokeErrorHandler(errorCallback, J.get $error$x(asyncError), asyncError.get$stackTrace());
2983 t2.listenerHasValue_1 = true;
2984 } else {
2985 t2 = this.box_1;
2986 t2.listenerValueOrError_2 = asyncError;
2987 t2.listenerHasValue_1 = false;
2988 }
2989 }
2990 t2 = this.listener_5;
2991 if ((t2._state === 2 ? null : t2._whenCompleteActionCallback) != null) {
2992 t1.completeResult_0 = t2._whenCompleteAction$0();
2993 t3 = t1.completeResult_0;
2994 t4 = J.getInterceptor(t3);
2995 if (typeof t3 === "object" && t3 !== null && !!t4.$isFuture) {
2996 t2.set$_isChained(true);
2997 t1.completeResult_0.then$2$onError(new P._Future__propagateToListeners __closure(this.box_2, t2), new P._Future__propagateToListeners__closure0(t1, t2) );
2998 this.box_1.isPropagationAborted_3 = true;
2999 }
3000 }
3001 } catch (exception) {
3002 t1 = H.unwrapException(exception);
3003 e = t1;
3004 s = new H._StackTrace(exception, null);
3005 if (this.hasError_4) {
3006 t1 = J.get$error$x(this.box_2.source_4.get$_error());
3007 t2 = e;
3008 t2 = t1 == null ? t2 == null : t1 === t2;
3009 t1 = t2;
3010 } else
3011 t1 = false;
3012 t2 = this.box_1;
3013 if (t1)
3014 t2.listenerValueOrError_2 = this.box_2.source_4.get$_error();
3015 else
3016 t2.listenerValueOrError_2 = new P._AsyncError(P._asyncError(e, s), s);
3017 this.box_1.listenerHasValue_1 = false;
3018 }
3019
3020 }
3021 },
3022
3023 _Future__propagateToListeners__closure: {"": "Closure;box_2,listener_6",
3024 call$1: function(ignored) {
3025 P._Future__propagateToListeners(this.box_2.source_4, this.listener_6);
3026 },
3027 $is_args1: true
3028 },
3029
3030 _Future__propagateToListeners__closure0: {"": "Closure;box_0,listener_7",
3031 call$2: function(error, stackTrace) {
3032 var t1, t2, t3;
3033 t1 = this.box_0;
3034 t2 = t1.completeResult_0;
3035 t3 = J.getInterceptor(t2);
3036 if (typeof t2 !== "object" || t2 === null || !t3.$is_Future) {
3037 t1.completeResult_0 = P._Future$(null);
3038 t1.completeResult_0._setError$2(error, stackTrace);
3039 }
3040 P._Future__propagateToListeners(t1.completeResult_0, this.listener_7);
3041 },
3042 call$1: function(error) {
3043 return this.call$2(error, null);
3044 },
3045 $is_args2: true,
3046 $is_args1: true
3047 },
3048
3049 Stream: {"": "Object;",
3050 forEach$1: function(_, action) {
3051 var t1, future;
3052 t1 = {};
3053 future = P._Future$(null);
3054 t1.subscription_0 = null;
3055 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());
3056 return future;
3057 },
3058 get$length: function(_) {
3059 var t1, future;
3060 t1 = {};
3061 future = P._Future$(J.JSInt);
3062 t1.count_0 = 0;
3063 this.listen$4$cancelOnError$onDone$onError(new P.Stream_length_closure(t1), true, new P.Stream_length_closure0(t1, future), future.get$_completeError());
3064 return future;
3065 }
3066 },
3067
3068 Stream_forEach_closure: {"": "Closure;box_0,this_1,action_2,future_3",
3069 call$1: function(element) {
3070 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));
3071 },
3072 $is_args1: true
3073 },
3074
3075 Stream_forEach__closure: {"": "Closure;action_4,element_5",
3076 call$0: function() {
3077 return this.action_4.call$1(this.element_5);
3078 }
3079 },
3080
3081 Stream_forEach__closure0: {"": "Closure;",
3082 call$1: function(_) {
3083 },
3084 $is_args1: true
3085 },
3086
3087 Stream_forEach_closure0: {"": "Closure;future_6",
3088 call$0: function() {
3089 this.future_6._complete$1(null);
3090 }
3091 },
3092
3093 Stream_length_closure: {"": "Closure;box_0",
3094 call$1: function(_) {
3095 var t1 = this.box_0;
3096 t1.count_0 = t1.count_0 + 1;
3097 },
3098 $is_args1: true
3099 },
3100
3101 Stream_length_closure0: {"": "Closure;box_0,future_1",
3102 call$0: function() {
3103 this.future_1._complete$1(this.box_0.count_0);
3104 }
3105 },
3106
3107 StreamSubscription: {"": "Object;"},
3108
3109 _StreamController: {"": "Object;",
3110 get$_pendingEvents: function() {
3111 if ((this._state & 8) === 0)
3112 return this._varData;
3113 return this._varData.get$varData();
3114 },
3115 _ensurePendingEvents$0: function() {
3116 if ((this._state & 8) === 0) {
3117 if (this._varData == null)
3118 this._varData = new P._StreamImplEvents(null, null, 0);
3119 return this._varData;
3120 }
3121 var t1 = this._varData.get$varData();
3122 return t1;
3123 },
3124 get$_subscription: function() {
3125 if ((this._state & 8) !== 0)
3126 return this._varData.get$varData();
3127 return this._varData;
3128 },
3129 _badEventState$0: function() {
3130 if ((this._state & 4) !== 0)
3131 return new P.StateError("Cannot add event after closing");
3132 return new P.StateError("Cannot add event while adding a stream");
3133 },
3134 _ensureDoneFuture$0: function() {
3135 if (this._doneFuture == null) {
3136 this._doneFuture = P._Future$(null);
3137 if ((this._state & 2) !== 0)
3138 this._doneFuture._complete$1(null);
3139 }
3140 return this._doneFuture;
3141 },
3142 close$0: function(_) {
3143 var t1 = this._state;
3144 if ((t1 & 4) !== 0)
3145 return this._doneFuture;
3146 if (t1 >= 4)
3147 throw H.wrapException(this._badEventState$0());
3148 this._state = (t1 | 4) >>> 0;
3149 this._ensureDoneFuture$0();
3150 t1 = this._state;
3151 if ((t1 & 1) !== 0)
3152 this._sendDone$0();
3153 else if ((t1 & 3) === 0) {
3154 t1 = this._ensurePendingEvents$0();
3155 t1.add$1(t1, C.C__DelayedDone);
3156 }
3157 return this._doneFuture;
3158 },
3159 _async$_add$1: function(value) {
3160 var t1 = this._state;
3161 if ((t1 & 1) !== 0)
3162 this._sendData$1(value);
3163 else if ((t1 & 3) === 0) {
3164 t1 = this._ensurePendingEvents$0();
3165 t1.add$1(t1, new P._DelayedData(value, null));
3166 }
3167 },
3168 _subscribe$1: function(cancelOnError) {
3169 var t1, t2, subscription, pendingEvents;
3170 if ((this._state & 3) !== 0)
3171 throw H.wrapException(P.StateError$("Stream has already been listened to." ));
3172 t1 = $.Zone__current;
3173 t2 = cancelOnError ? 1 : 0;
3174 subscription = new P._ControllerSubscription(this, null, null, null, t1, t2, null, null);
3175 H.setRuntimeTypeInfo(subscription, [null]);
3176 pendingEvents = this.get$_pendingEvents();
3177 this._state = (this._state | 1) >>> 0;
3178 if ((this._state & 8) !== 0)
3179 this._varData.set$varData(subscription);
3180 else
3181 this._varData = subscription;
3182 subscription._setPendingEvents$1(pendingEvents);
3183 subscription._guardCallback$1(new P._StreamController__subscribe_closure(thi s));
3184 return subscription;
3185 },
3186 _recordCancel$1: function(subscription) {
3187 var t1, future;
3188 if ((this._state & 8) !== 0)
3189 this._varData.cancel$0();
3190 this._varData = null;
3191 this._state = (this._state & 4294967286 | 2) >>> 0;
3192 t1 = new P._StreamController__recordCancel_complete(this);
3193 future = P._runGuarded(this.get$_onCancel());
3194 if (future != null)
3195 future = future.whenComplete$1(t1);
3196 else
3197 t1.call$0();
3198 return future;
3199 }
3200 },
3201
3202 _StreamController__subscribe_closure: {"": "Closure;this_0",
3203 call$0: function() {
3204 P._runGuarded(this.this_0.get$_onListen());
3205 }
3206 },
3207
3208 _StreamController__recordCancel_complete: {"": "Closure;this_0",
3209 call$0: function() {
3210 var t1 = this.this_0._doneFuture;
3211 if (t1 != null && t1._state === 0)
3212 t1._asyncComplete$1(null);
3213 }
3214 },
3215
3216 _SyncStreamControllerDispatch: {"": "Object;",
3217 _sendData$1: function(data) {
3218 this.get$_subscription()._async$_add$1(data);
3219 },
3220 _sendDone$0: function() {
3221 this.get$_subscription()._close$0();
3222 }
3223 },
3224
3225 _AsyncStreamControllerDispatch: {"": "Object;",
3226 _sendData$1: function(data) {
3227 this.get$_subscription()._addPending$1(new P._DelayedData(data, null));
3228 },
3229 _sendDone$0: function() {
3230 this.get$_subscription()._addPending$1(C.C__DelayedDone);
3231 }
3232 },
3233
3234 _AsyncStreamController: {"": "_StreamController__AsyncStreamControllerDispatch;_ onListen<,_onPause<,_onResume<,_onCancel<,_varData,_state,_doneFuture"},
3235
3236 _StreamController__AsyncStreamControllerDispatch: {"": "_StreamController+_Async StreamControllerDispatch;"},
3237
3238 _SyncStreamController: {"": "_StreamController__SyncStreamControllerDispatch;_on Listen<,_onPause<,_onResume<,_onCancel<,_varData,_state,_doneFuture"},
3239
3240 _StreamController__SyncStreamControllerDispatch: {"": "_StreamController+_SyncSt reamControllerDispatch;"},
3241
3242 _ControllerStream: {"": "_StreamImpl;_async$_controller",
3243 _createSubscription$1: function(cancelOnError) {
3244 return this._async$_controller._subscribe$1(cancelOnError);
3245 },
3246 get$hashCode: function(_) {
3247 return (H.Primitives_objectHashCode(this._async$_controller) ^ 892482866) >> > 0;
3248 },
3249 $eq: function(_, other) {
3250 var t1;
3251 if (other == null)
3252 return false;
3253 if (this === other)
3254 return true;
3255 t1 = J.getInterceptor(other);
3256 if (typeof other !== "object" || other === null || !t1.$is_ControllerStream)
3257 return false;
3258 return other._async$_controller === this._async$_controller;
3259 },
3260 $is_ControllerStream: true,
3261 $as_StreamImpl: null
3262 },
3263
3264 _ControllerSubscription: {"": "_BufferingStreamSubscription;_async$_controller,_ async$_onData,_onError,_onDone,_zone,_state,_cancelFuture,_pending",
3265 _onCancel$0: function() {
3266 return this._async$_controller._recordCancel$1(this);
3267 },
3268 _onPause$0: function() {
3269 var t1, addState;
3270 t1 = this._async$_controller;
3271 if ((t1._state & 8) !== 0) {
3272 addState = t1._varData;
3273 addState.pause$0(addState);
3274 }
3275 P._runGuarded(t1.get$_onPause());
3276 },
3277 get$_onPause: function() {
3278 return new P.BoundClosure$0(this, P._ControllerSubscription.prototype._onPau se$0, null, "_onPause$0");
3279 },
3280 _onResume$0: function() {
3281 var t1 = this._async$_controller;
3282 if ((t1._state & 8) !== 0)
3283 t1._varData.resume$0();
3284 P._runGuarded(t1.get$_onResume());
3285 },
3286 get$_onResume: function() {
3287 return new P.BoundClosure$0(this, P._ControllerSubscription.prototype._onRes ume$0, null, "_onResume$0");
3288 },
3289 $as_BufferingStreamSubscription: null
3290 },
3291
3292 _EventSink: {"": "Object;"},
3293
3294 _BufferingStreamSubscription: {"": "Object;_async$_onData,_onError,_onDone,_zone <,_state,_cancelFuture,_pending",
3295 _setPendingEvents$1: function(pendingEvents) {
3296 if (pendingEvents == null)
3297 return;
3298 this._pending = pendingEvents;
3299 if (!pendingEvents.get$isEmpty(pendingEvents)) {
3300 this._state = (this._state | 64) >>> 0;
3301 this._pending.schedule$1(this);
3302 }
3303 },
3304 onData$1: function(handleData) {
3305 $.Zone__current.toString;
3306 this._async$_onData = handleData;
3307 },
3308 onError$1: function(_, handleError) {
3309 this._onError = P._registerErrorHandler(handleError, $.Zone__current);
3310 },
3311 onDone$1: function(handleDone) {
3312 $.Zone__current.toString;
3313 this._onDone = handleDone;
3314 },
3315 pause$1: function(_, resumeSignal) {
3316 var t1 = this._state;
3317 if ((t1 & 8) !== 0)
3318 return;
3319 this._state = (t1 + 128 | 4) >>> 0;
3320 if (t1 < 128 && this._pending != null)
3321 this._pending.cancelSchedule$0();
3322 if ((t1 & 4) === 0 && (this._state & 32) === 0)
3323 this._guardCallback$1(this.get$_onPause());
3324 },
3325 pause$0: function($receiver) {
3326 return this.pause$1($receiver, null);
3327 },
3328 resume$0: function() {
3329 var t1, t2;
3330 t1 = this._state;
3331 if ((t1 & 8) !== 0)
3332 return;
3333 if (t1 >= 128) {
3334 this._state = t1 - 128;
3335 t1 = this._state;
3336 if (t1 < 128) {
3337 if ((t1 & 64) !== 0) {
3338 t2 = this._pending;
3339 t2 = !t2.get$isEmpty(t2);
3340 } else
3341 t2 = false;
3342 if (t2)
3343 this._pending.schedule$1(this);
3344 else {
3345 this._state = (t1 & 4294967291) >>> 0;
3346 if ((this._state & 32) === 0)
3347 this._guardCallback$1(this.get$_onResume());
3348 }
3349 }
3350 }
3351 },
3352 cancel$0: function() {
3353 this._state = (this._state & 4294967279) >>> 0;
3354 if ((this._state & 8) !== 0)
3355 return this._cancelFuture;
3356 this._cancel$0();
3357 return this._cancelFuture;
3358 },
3359 get$_mayResumeInput: function() {
3360 if (this._state < 128) {
3361 var t1 = this._pending;
3362 t1 = t1 == null || t1.get$isEmpty(t1);
3363 } else
3364 t1 = false;
3365 return t1;
3366 },
3367 _cancel$0: function() {
3368 this._state = (this._state | 8) >>> 0;
3369 if ((this._state & 64) !== 0)
3370 this._pending.cancelSchedule$0();
3371 if ((this._state & 32) === 0)
3372 this._pending = null;
3373 this._cancelFuture = this._onCancel$0();
3374 },
3375 _async$_add$1: function(data) {
3376 var t1 = this._state;
3377 if ((t1 & 8) !== 0)
3378 return;
3379 if (t1 < 32)
3380 this._sendData$1(data);
3381 else
3382 this._addPending$1(new P._DelayedData(data, null));
3383 },
3384 _close$0: function() {
3385 var t1 = this._state;
3386 if ((t1 & 8) !== 0)
3387 return;
3388 this._state = (t1 | 2) >>> 0;
3389 if (this._state < 32)
3390 this._sendDone$0();
3391 else
3392 this._addPending$1(C.C__DelayedDone);
3393 },
3394 _onPause$0: function() {
3395 },
3396 get$_onPause: function() {
3397 return new P.BoundClosure$0(this, P._BufferingStreamSubscription.prototype._ onPause$0, null, "_onPause$0");
3398 },
3399 _onResume$0: function() {
3400 },
3401 get$_onResume: function() {
3402 return new P.BoundClosure$0(this, P._BufferingStreamSubscription.prototype._ onResume$0, null, "_onResume$0");
3403 },
3404 _onCancel$0: function() {
3405 },
3406 _addPending$1: function($event) {
3407 var pending, t1;
3408 pending = this._pending;
3409 if (pending == null) {
3410 pending = new P._StreamImplEvents(null, null, 0);
3411 this._pending = pending;
3412 }
3413 pending.add$1(pending, $event);
3414 t1 = this._state;
3415 if ((t1 & 64) === 0) {
3416 this._state = (t1 | 64) >>> 0;
3417 if (this._state < 128)
3418 this._pending.schedule$1(this);
3419 }
3420 },
3421 _sendData$1: function(data) {
3422 var t1 = this._state;
3423 this._state = (t1 | 32) >>> 0;
3424 this._zone.runUnaryGuarded$2(this._async$_onData, data);
3425 this._state = (this._state & 4294967263) >>> 0;
3426 this._checkState$1((t1 & 4) !== 0);
3427 },
3428 _sendDone$0: function() {
3429 var t1, t2, t3;
3430 t1 = new P._BufferingStreamSubscription__sendDone_sendDone(this);
3431 this._cancel$0();
3432 this._state = (this._state | 16) >>> 0;
3433 t2 = this._cancelFuture;
3434 t3 = J.getInterceptor(t2);
3435 if (typeof t2 === "object" && t2 !== null && !!t3.$isFuture)
3436 t2.whenComplete$1(t1);
3437 else
3438 t1.call$0();
3439 },
3440 _guardCallback$1: function(callback) {
3441 var t1 = this._state;
3442 this._state = (t1 | 32) >>> 0;
3443 callback.call$0();
3444 this._state = (this._state & 4294967263) >>> 0;
3445 this._checkState$1((t1 & 4) !== 0);
3446 },
3447 _checkState$1: function(wasInputPaused) {
3448 var t1, t2, isInputPaused;
3449 t1 = this._state;
3450 if ((t1 & 64) !== 0) {
3451 t2 = this._pending;
3452 t2 = t2.get$isEmpty(t2);
3453 } else
3454 t2 = false;
3455 if (t2) {
3456 this._state = (t1 & 4294967231) >>> 0;
3457 if ((this._state & 4) !== 0 && this.get$_mayResumeInput())
3458 this._state = (this._state & 4294967291) >>> 0;
3459 }
3460 for (; true; wasInputPaused = isInputPaused) {
3461 t1 = this._state;
3462 if ((t1 & 8) !== 0) {
3463 this._pending = null;
3464 return;
3465 }
3466 isInputPaused = (t1 & 4) !== 0;
3467 if (wasInputPaused === isInputPaused)
3468 break;
3469 this._state = (t1 ^ 32) >>> 0;
3470 if (isInputPaused)
3471 this._onPause$0();
3472 else
3473 this._onResume$0();
3474 this._state = (this._state & 4294967263) >>> 0;
3475 }
3476 t1 = this._state;
3477 if ((t1 & 64) !== 0 && t1 < 128)
3478 this._pending.schedule$1(this);
3479 },
3480 static: {
3481 "": "_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",
3482 }
3483
3484 },
3485
3486 _BufferingStreamSubscription__sendDone_sendDone: {"": "Closure;this_0",
3487 call$0: function() {
3488 var t1, t2;
3489 t1 = this.this_0;
3490 t2 = t1._state;
3491 if ((t2 & 16) === 0)
3492 return;
3493 t1._state = (t2 | 42) >>> 0;
3494 t1._zone.runGuarded$1(t1._onDone);
3495 t1._state = (t1._state & 4294967263) >>> 0;
3496 }
3497 },
3498
3499 _StreamImpl: {"": "Stream;",
3500 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) {
3501 var subscription = this._createSubscription$1(true === cancelOnError);
3502 subscription.onData$1(onData);
3503 subscription.onError$1(subscription, onError);
3504 subscription.onDone$1(onDone);
3505 return subscription;
3506 },
3507 _createSubscription$1: function(cancelOnError) {
3508 var t1, t2;
3509 t1 = $.Zone__current;
3510 t2 = cancelOnError ? 1 : 0;
3511 return new P._BufferingStreamSubscription(null, null, null, t1, t2, null, nu ll);
3512 },
3513 $asStream: null
3514 },
3515
3516 _DelayedEvent: {"": "Object;next@"},
3517
3518 _DelayedData: {"": "_DelayedEvent;value,next",
3519 perform$1: function(dispatch) {
3520 dispatch._sendData$1(this.value);
3521 }
3522 },
3523
3524 _DelayedDone: {"": "Object;",
3525 perform$1: function(dispatch) {
3526 dispatch._sendDone$0();
3527 },
3528 get$next: function() {
3529 return;
3530 },
3531 set$next: function(_) {
3532 throw H.wrapException(P.StateError$("No events after a done."));
3533 }
3534 },
3535
3536 _PendingEvents: {"": "Object;",
3537 schedule$1: function(dispatch) {
3538 var t1 = this._state;
3539 if (t1 === 1)
3540 return;
3541 if (t1 >= 1) {
3542 this._state = 1;
3543 return;
3544 }
3545 P.scheduleMicrotask(new P._PendingEvents_schedule_closure(this, dispatch));
3546 this._state = 1;
3547 },
3548 cancelSchedule$0: function() {
3549 if (this._state === 1)
3550 this._state = 3;
3551 }
3552 },
3553
3554 _PendingEvents_schedule_closure: {"": "Closure;this_0,dispatch_1",
3555 call$0: function() {
3556 var t1, oldState;
3557 t1 = this.this_0;
3558 oldState = t1._state;
3559 t1._state = 0;
3560 if (oldState === 3)
3561 return;
3562 t1.handleNext$1(this.dispatch_1);
3563 }
3564 },
3565
3566 _StreamImplEvents: {"": "_PendingEvents;firstPendingEvent,lastPendingEvent,_stat e",
3567 get$isEmpty: function(_) {
3568 return this.lastPendingEvent == null;
3569 },
3570 add$1: function(_, $event) {
3571 var t1 = this.lastPendingEvent;
3572 if (t1 == null) {
3573 this.lastPendingEvent = $event;
3574 this.firstPendingEvent = $event;
3575 } else {
3576 t1.set$next($event);
3577 this.lastPendingEvent = $event;
3578 }
3579 },
3580 handleNext$1: function(dispatch) {
3581 var $event = this.firstPendingEvent;
3582 this.firstPendingEvent = $event.get$next();
3583 if (this.firstPendingEvent == null)
3584 this.lastPendingEvent = null;
3585 $event.perform$1(dispatch);
3586 }
3587 },
3588
3589 _cancelAndError_closure: {"": "Closure;future_0,error_1,stackTrace_2",
3590 call$0: function() {
3591 return this.future_0._completeError$2(this.error_1, this.stackTrace_2);
3592 }
3593 },
3594
3595 _cancelAndErrorClosure_closure: {"": "Closure;subscription_0,future_1",
3596 call$2: function(error, stackTrace) {
3597 return P._cancelAndError(this.subscription_0, this.future_1, error, stackTra ce);
3598 },
3599 $is_args2: true
3600 },
3601
3602 _BaseZone: {"": "Object;",
3603 runGuarded$1: function(f) {
3604 var e, s, t1, exception;
3605 try {
3606 t1 = this.run$1(f);
3607 return t1;
3608 } catch (exception) {
3609 t1 = H.unwrapException(exception);
3610 e = t1;
3611 s = new H._StackTrace(exception, null);
3612 return this.handleUncaughtError$2(e, s);
3613 }
3614
3615 },
3616 runUnaryGuarded$2: function(f, arg) {
3617 var e, s, t1, exception;
3618 try {
3619 t1 = this.runUnary$2(f, arg);
3620 return t1;
3621 } catch (exception) {
3622 t1 = H.unwrapException(exception);
3623 e = t1;
3624 s = new H._StackTrace(exception, null);
3625 return this.handleUncaughtError$2(e, s);
3626 }
3627
3628 },
3629 bindCallback$2$runGuarded: function(f, runGuarded) {
3630 var registered = this.registerCallback$1(f);
3631 if (runGuarded)
3632 return new P._BaseZone_bindCallback_closure(this, registered);
3633 else
3634 return new P._BaseZone_bindCallback_closure0(this, registered);
3635 },
3636 bindUnaryCallback$2$runGuarded: function(f, runGuarded) {
3637 var registered = this.registerUnaryCallback$1(f);
3638 if (runGuarded)
3639 return new P._BaseZone_bindUnaryCallback_closure(this, registered);
3640 else
3641 return new P._BaseZone_bindUnaryCallback_closure0(this, registered);
3642 }
3643 },
3644
3645 _BaseZone_bindCallback_closure: {"": "Closure;this_0,registered_1",
3646 call$0: function() {
3647 return this.this_0.runGuarded$1(this.registered_1);
3648 }
3649 },
3650
3651 _BaseZone_bindCallback_closure0: {"": "Closure;this_2,registered_3",
3652 call$0: function() {
3653 return this.this_2.run$1(this.registered_3);
3654 }
3655 },
3656
3657 _BaseZone_bindUnaryCallback_closure: {"": "Closure;this_0,registered_1",
3658 call$1: function(arg) {
3659 return this.this_0.runUnaryGuarded$2(this.registered_1, arg);
3660 },
3661 $is_args1: true
3662 },
3663
3664 _BaseZone_bindUnaryCallback_closure0: {"": "Closure;this_2,registered_3",
3665 call$1: function(arg) {
3666 return this.this_2.runUnary$2(this.registered_3, arg);
3667 },
3668 $is_args1: true
3669 },
3670
3671 _rootHandleUncaughtError_closure: {"": "Closure;error_0,stackTrace_1",
3672 call$0: function() {
3673 P._scheduleAsyncCallback(new P._rootHandleUncaughtError__closure(this.error_ 0, this.stackTrace_1));
3674 }
3675 },
3676
3677 _rootHandleUncaughtError__closure: {"": "Closure;error_2,stackTrace_3",
3678 call$0: function() {
3679 var t1, trace;
3680 t1 = this.error_2;
3681 P.print("Uncaught Error: " + H.S(t1));
3682 trace = this.stackTrace_3;
3683 if (trace == null)
3684 trace = P.getAttachedStackTrace(t1);
3685 P._attachStackTrace(t1, null);
3686 if (trace != null)
3687 P.print("Stack Trace: \n" + H.S(trace) + "\n");
3688 throw H.wrapException(t1);
3689 }
3690 },
3691
3692 _RootZone: {"": "_BaseZone;",
3693 $index: function(_, key) {
3694 return;
3695 },
3696 handleUncaughtError$2: function(error, stackTrace) {
3697 return P._rootHandleUncaughtError(this, null, this, error, stackTrace);
3698 },
3699 run$1: function(f) {
3700 return P._rootRun(this, null, this, f);
3701 },
3702 runUnary$2: function(f, arg) {
3703 return P._rootRunUnary(this, null, this, f, arg);
3704 },
3705 registerCallback$1: function(f) {
3706 return f;
3707 },
3708 registerUnaryCallback$1: function(f) {
3709 return f;
3710 }
3711 }}],
3712 ["dart.collection", "dart:collection", , P, {
3713 _HashSet__newHashTable: function() {
3714 var table = Object.create(null);
3715 table["<non-identifier-key>"] = table;
3716 delete table["<non-identifier-key>"];
3717 return table;
3718 },
3719
3720 _defaultEquals: function(a, b) {
3721 return J.$eq(a, b);
3722 },
3723
3724 _defaultHashCode: function(a) {
3725 return J.get$hashCode$(a);
3726 },
3727
3728 HashMap_HashMap: function(equals, hashCode, isValidKey, $K, $V) {
3729 var t1 = new P._HashMap(0, null, null, null, null);
3730 H.setRuntimeTypeInfo(t1, [$K, $V]);
3731 return t1;
3732 },
3733
3734 _iterableToString: function(iterable) {
3735 var parts, t1;
3736 t1 = $.get$_toStringVisiting();
3737 if (t1.contains$1(t1, iterable))
3738 return "(...)";
3739 t1 = $.get$_toStringVisiting();
3740 t1.add$1(t1, iterable);
3741 parts = [];
3742 try {
3743 P._iterablePartsToStrings(iterable, parts);
3744 } finally {
3745 t1 = $.get$_toStringVisiting();
3746 t1.remove$1(t1, iterable);
3747 }
3748 t1 = P.StringBuffer$("(");
3749 t1.writeAll$2(parts, ", ");
3750 t1.write$1(")");
3751 return t1._contents;
3752 },
3753
3754 _iterablePartsToStrings: function(iterable, parts) {
3755 var it, $length, count, next, ultimateString, penultimateString, penultimate, ultimate, ultimate0, elision;
3756 it = iterable.get$iterator(iterable);
3757 $length = 0;
3758 count = 0;
3759 while (true) {
3760 if (!($length < 80 || count < 3))
3761 break;
3762 if (!it.moveNext$0())
3763 return;
3764 next = H.S(it.get$current());
3765 parts.push(next);
3766 $length += next.length + 2;
3767 ++count;
3768 }
3769 if (!it.moveNext$0()) {
3770 if (count <= 5)
3771 return;
3772 if (0 >= parts.length)
3773 throw H.ioore(parts, 0);
3774 ultimateString = parts.pop();
3775 if (0 >= parts.length)
3776 throw H.ioore(parts, 0);
3777 penultimateString = parts.pop();
3778 } else {
3779 penultimate = it.get$current();
3780 ++count;
3781 if (!it.moveNext$0()) {
3782 if (count <= 4) {
3783 parts.push(H.S(penultimate));
3784 return;
3785 }
3786 ultimateString = H.S(penultimate);
3787 if (0 >= parts.length)
3788 throw H.ioore(parts, 0);
3789 penultimateString = parts.pop();
3790 $length += ultimateString.length + 2;
3791 } else {
3792 ultimate = it.get$current();
3793 ++count;
3794 for (; it.moveNext$0(); penultimate = ultimate, ultimate = ultimate0) {
3795 ultimate0 = it.get$current();
3796 ++count;
3797 if (count > 100) {
3798 while (true) {
3799 if (!($length > 75 && count > 3))
3800 break;
3801 if (0 >= parts.length)
3802 throw H.ioore(parts, 0);
3803 $length -= parts.pop().length + 2;
3804 --count;
3805 }
3806 parts.push("...");
3807 return;
3808 }
3809 }
3810 penultimateString = H.S(penultimate);
3811 ultimateString = H.S(ultimate);
3812 $length += ultimateString.length + penultimateString.length + 4;
3813 }
3814 }
3815 if (count > parts.length + 2) {
3816 $length += 5;
3817 elision = "...";
3818 } else
3819 elision = null;
3820 while (true) {
3821 if (!($length > 80 && parts.length > 3))
3822 break;
3823 if (0 >= parts.length)
3824 throw H.ioore(parts, 0);
3825 $length -= parts.pop().length + 2;
3826 if (elision == null) {
3827 $length += 5;
3828 elision = "...";
3829 }
3830 }
3831 if (elision != null)
3832 parts.push(elision);
3833 parts.push(penultimateString);
3834 parts.push(ultimateString);
3835 },
3836
3837 LinkedHashMap_LinkedHashMap: function(equals, hashCode, isValidKey, $K, $V) {
3838 var t1 = new P._LinkedHashMap(0, null, null, null, null, null, 0);
3839 H.setRuntimeTypeInfo(t1, [$K, $V]);
3840 return t1;
3841 },
3842
3843 Maps_mapToString: function(m) {
3844 var t1, result, i, t2;
3845 t1 = {};
3846 for (i = 0; i < $.get$Maps__toStringList().length; ++i) {
3847 t2 = $.get$Maps__toStringList();
3848 if (i >= t2.length)
3849 throw H.ioore(t2, i);
3850 if (t2[i] === m)
3851 return "{...}";
3852 }
3853 result = P.StringBuffer$("");
3854 try {
3855 $.get$Maps__toStringList().push(m);
3856 result.write$1("{");
3857 t1.first_0 = true;
3858 J.forEach$1$ax(m, new P.Maps_mapToString_closure(t1, result));
3859 result.write$1("}");
3860 } finally {
3861 t1 = $.get$Maps__toStringList();
3862 if (0 >= t1.length)
3863 throw H.ioore(t1, 0);
3864 t1.pop();
3865 }
3866 return result.get$_contents();
3867 },
3868
3869 _HashMap: {"": "Object;_collection$_length,_strings,_nums,_rest,_keys",
3870 get$length: function(_) {
3871 return this._collection$_length;
3872 },
3873 get$keys: function() {
3874 var t1 = new P.HashMapKeyIterable(this);
3875 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_HashMap", 0)]);
3876 return t1;
3877 },
3878 get$values: function(_) {
3879 var t1 = new P.HashMapKeyIterable(this);
3880 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_HashMap", 0)]);
3881 return H.MappedIterable_MappedIterable(t1, new P._HashMap_values_closure(thi s), H.getRuntimeTypeArgument(t1, "IterableBase", 0), null);
3882 },
3883 $index: function(_, key) {
3884 var strings, t1, entry, nums, rest, bucket, index;
3885 if (typeof key === "string" && key !== "__proto__") {
3886 strings = this._strings;
3887 if (strings == null)
3888 t1 = null;
3889 else {
3890 entry = strings[key];
3891 t1 = entry === strings ? null : entry;
3892 }
3893 return t1;
3894 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
3895 nums = this._nums;
3896 if (nums == null)
3897 t1 = null;
3898 else {
3899 entry = nums[key];
3900 t1 = entry === nums ? null : entry;
3901 }
3902 return t1;
3903 } else {
3904 rest = this._rest;
3905 if (rest == null)
3906 return;
3907 bucket = rest[this._computeHashCode$1(key)];
3908 index = this._findBucketIndex$2(bucket, key);
3909 return index < 0 ? null : bucket[index + 1];
3910 }
3911 },
3912 $indexSet: function(_, key, value) {
3913 var strings, nums, rest, hash, bucket, index;
3914 if (typeof key === "string" && key !== "__proto__") {
3915 strings = this._strings;
3916 if (strings == null) {
3917 strings = P._HashMap__newHashTable();
3918 this._strings = strings;
3919 }
3920 this._addHashTableEntry$3(strings, key, value);
3921 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
3922 nums = this._nums;
3923 if (nums == null) {
3924 nums = P._HashMap__newHashTable();
3925 this._nums = nums;
3926 }
3927 this._addHashTableEntry$3(nums, key, value);
3928 } else {
3929 rest = this._rest;
3930 if (rest == null) {
3931 rest = P._HashMap__newHashTable();
3932 this._rest = rest;
3933 }
3934 hash = this._computeHashCode$1(key);
3935 bucket = rest[hash];
3936 if (bucket == null) {
3937 P._HashMap__setTableEntry(rest, hash, [key, value]);
3938 this._collection$_length = this._collection$_length + 1;
3939 this._keys = null;
3940 } else {
3941 index = this._findBucketIndex$2(bucket, key);
3942 if (index >= 0)
3943 bucket[index + 1] = value;
3944 else {
3945 bucket.push(key, value);
3946 this._collection$_length = this._collection$_length + 1;
3947 this._keys = null;
3948 }
3949 }
3950 }
3951 },
3952 forEach$1: function(_, action) {
3953 var keys, $length, i, key;
3954 keys = this._computeKeys$0();
3955 for ($length = keys.length, i = 0; i < $length; ++i) {
3956 key = keys[i];
3957 action.call$2(key, this.$index(this, key));
3958 if (keys !== this._keys)
3959 throw H.wrapException(P.ConcurrentModificationError$(this));
3960 }
3961 },
3962 _computeKeys$0: function() {
3963 var t1, result, strings, names, entries, index, i, nums, rest, bucket, $leng th, i0;
3964 t1 = this._keys;
3965 if (t1 != null)
3966 return t1;
3967 result = P.List_List(this._collection$_length, null);
3968 strings = this._strings;
3969 if (strings != null) {
3970 names = Object.getOwnPropertyNames(strings);
3971 entries = names.length;
3972 for (index = 0, i = 0; i < entries; ++i) {
3973 result[index] = names[i];
3974 ++index;
3975 }
3976 } else
3977 index = 0;
3978 nums = this._nums;
3979 if (nums != null) {
3980 names = Object.getOwnPropertyNames(nums);
3981 entries = names.length;
3982 for (i = 0; i < entries; ++i) {
3983 result[index] = +names[i];
3984 ++index;
3985 }
3986 }
3987 rest = this._rest;
3988 if (rest != null) {
3989 names = Object.getOwnPropertyNames(rest);
3990 entries = names.length;
3991 for (i = 0; i < entries; ++i) {
3992 bucket = rest[names[i]];
3993 $length = bucket.length;
3994 for (i0 = 0; i0 < $length; i0 += 2) {
3995 result[index] = bucket[i0];
3996 ++index;
3997 }
3998 }
3999 }
4000 this._keys = result;
4001 return result;
4002 },
4003 _addHashTableEntry$3: function(table, key, value) {
4004 if (table[key] == null) {
4005 this._collection$_length = this._collection$_length + 1;
4006 this._keys = null;
4007 }
4008 P._HashMap__setTableEntry(table, key, value);
4009 },
4010 _computeHashCode$1: function(key) {
4011 return J.get$hashCode$(key) & 0x3ffffff;
4012 },
4013 _findBucketIndex$2: function(bucket, key) {
4014 var $length, i;
4015 if (bucket == null)
4016 return -1;
4017 $length = bucket.length;
4018 for (i = 0; i < $length; i += 2)
4019 if (J.$eq(bucket[i], key))
4020 return i;
4021 return -1;
4022 },
4023 $isMap: true,
4024 static: {
4025 _HashMap__setTableEntry: function(table, key, value) {
4026 if (value == null)
4027 table[key] = table;
4028 else
4029 table[key] = value;
4030 },
4031
4032 _HashMap__newHashTable: function() {
4033 var table = Object.create(null);
4034 P._HashMap__setTableEntry(table, "<non-identifier-key>", table);
4035 delete table["<non-identifier-key>"];
4036 return table;
4037 }}
4038
4039 },
4040
4041 _HashMap_values_closure: {"": "Closure;this_0",
4042 call$1: function(each) {
4043 var t1 = this.this_0;
4044 return t1.$index(t1, each);
4045 },
4046 $is_args1: true
4047 },
4048
4049 HashMapKeyIterable: {"": "IterableBase;_map",
4050 get$length: function(_) {
4051 return this._map._collection$_length;
4052 },
4053 get$iterator: function(_) {
4054 var t1 = this._map;
4055 return new P.HashMapKeyIterator(t1, t1._computeKeys$0(), 0, null);
4056 },
4057 forEach$1: function(_, f) {
4058 var t1, keys, $length, i;
4059 t1 = this._map;
4060 keys = t1._computeKeys$0();
4061 for ($length = keys.length, i = 0; i < $length; ++i) {
4062 f.call$1(keys[i]);
4063 if (keys !== t1._keys)
4064 throw H.wrapException(P.ConcurrentModificationError$(t1));
4065 }
4066 },
4067 $asIterableBase: null,
4068 $isEfficientLength: true
4069 },
4070
4071 HashMapKeyIterator: {"": "Object;_map,_keys,_offset,_collection$_current",
4072 get$current: function() {
4073 return this._collection$_current;
4074 },
4075 moveNext$0: function() {
4076 var keys, offset, t1;
4077 keys = this._keys;
4078 offset = this._offset;
4079 t1 = this._map;
4080 if (keys !== t1._keys)
4081 throw H.wrapException(P.ConcurrentModificationError$(t1));
4082 else if (offset >= keys.length) {
4083 this._collection$_current = null;
4084 return false;
4085 } else {
4086 this._collection$_current = keys[offset];
4087 this._offset = offset + 1;
4088 return true;
4089 }
4090 }
4091 },
4092
4093 _LinkedHashMap: {"": "Object;_collection$_length,_strings,_nums,_rest,_first,_la st,_modifications",
4094 get$length: function(_) {
4095 return this._collection$_length;
4096 },
4097 get$keys: function() {
4098 var t1 = new P.LinkedHashMapKeyIterable(this);
4099 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_LinkedHashMap", 0 )]);
4100 return t1;
4101 },
4102 get$values: function(_) {
4103 var t1 = new P.LinkedHashMapKeyIterable(this);
4104 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_LinkedHashMap", 0 )]);
4105 return H.MappedIterable_MappedIterable(t1, new P._LinkedHashMap_values_closu re(this), H.getRuntimeTypeArgument(t1, "IterableBase", 0), null);
4106 },
4107 containsKey$1: function(key) {
4108 var nums, rest;
4109 if ((key & 0x3ffffff) === key) {
4110 nums = this._nums;
4111 if (nums == null)
4112 return false;
4113 return nums[key] != null;
4114 } else {
4115 rest = this._rest;
4116 if (rest == null)
4117 return false;
4118 return this._findBucketIndex$2(rest[this._computeHashCode$1(key)], key) >= 0;
4119 }
4120 },
4121 $index: function(_, key) {
4122 var strings, cell, nums, rest, bucket, index;
4123 if (typeof key === "string" && key !== "__proto__") {
4124 strings = this._strings;
4125 if (strings == null)
4126 return;
4127 cell = strings[key];
4128 return cell == null ? null : cell.get$_collection$_value();
4129 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4130 nums = this._nums;
4131 if (nums == null)
4132 return;
4133 cell = nums[key];
4134 return cell == null ? null : cell.get$_collection$_value();
4135 } else {
4136 rest = this._rest;
4137 if (rest == null)
4138 return;
4139 bucket = rest[this._computeHashCode$1(key)];
4140 index = this._findBucketIndex$2(bucket, key);
4141 if (index < 0)
4142 return;
4143 return bucket[index].get$_collection$_value();
4144 }
4145 },
4146 $indexSet: function(_, key, value) {
4147 var strings, nums, rest, hash, bucket, index;
4148 if (typeof key === "string" && key !== "__proto__") {
4149 strings = this._strings;
4150 if (strings == null) {
4151 strings = P._LinkedHashMap__newHashTable();
4152 this._strings = strings;
4153 }
4154 this._addHashTableEntry$3(strings, key, value);
4155 } else if (typeof key === "number" && (key & 0x3ffffff) === key) {
4156 nums = this._nums;
4157 if (nums == null) {
4158 nums = P._LinkedHashMap__newHashTable();
4159 this._nums = nums;
4160 }
4161 this._addHashTableEntry$3(nums, key, value);
4162 } else {
4163 rest = this._rest;
4164 if (rest == null) {
4165 rest = P._LinkedHashMap__newHashTable();
4166 this._rest = rest;
4167 }
4168 hash = this._computeHashCode$1(key);
4169 bucket = rest[hash];
4170 if (bucket == null)
4171 rest[hash] = [this._newLinkedCell$2(key, value)];
4172 else {
4173 index = this._findBucketIndex$2(bucket, key);
4174 if (index >= 0)
4175 bucket[index].set$_collection$_value(value);
4176 else
4177 bucket.push(this._newLinkedCell$2(key, value));
4178 }
4179 }
4180 },
4181 remove$1: function(_, key) {
4182 var rest, bucket, index, cell;
4183 if (typeof key === "string" && key !== "__proto__")
4184 return this._removeHashTableEntry$2(this._strings, key);
4185 else if (typeof key === "number" && (key & 0x3ffffff) === key)
4186 return this._removeHashTableEntry$2(this._nums, key);
4187 else {
4188 rest = this._rest;
4189 if (rest == null)
4190 return;
4191 bucket = rest[this._computeHashCode$1(key)];
4192 index = this._findBucketIndex$2(bucket, key);
4193 if (index < 0)
4194 return;
4195 cell = bucket.splice(index, 1)[0];
4196 this._unlinkCell$1(cell);
4197 return cell.get$_collection$_value();
4198 }
4199 },
4200 forEach$1: function(_, action) {
4201 var cell, modifications;
4202 cell = this._first;
4203 modifications = this._modifications;
4204 for (; cell != null;) {
4205 action.call$2(cell._key, cell._collection$_value);
4206 if (modifications !== this._modifications)
4207 throw H.wrapException(P.ConcurrentModificationError$(this));
4208 cell = cell._next;
4209 }
4210 },
4211 _addHashTableEntry$3: function(table, key, value) {
4212 var cell = table[key];
4213 if (cell == null)
4214 table[key] = this._newLinkedCell$2(key, value);
4215 else
4216 cell.set$_collection$_value(value);
4217 },
4218 _removeHashTableEntry$2: function(table, key) {
4219 var cell;
4220 if (table == null)
4221 return;
4222 cell = table[key];
4223 if (cell == null)
4224 return;
4225 this._unlinkCell$1(cell);
4226 delete table[key];
4227 return cell.get$_collection$_value();
4228 },
4229 _newLinkedCell$2: function(key, value) {
4230 var cell, last;
4231 cell = new P.LinkedHashMapCell(key, value, null, null);
4232 if (this._first == null) {
4233 this._last = cell;
4234 this._first = cell;
4235 } else {
4236 last = this._last;
4237 cell._previous = last;
4238 last._next = cell;
4239 this._last = cell;
4240 }
4241 this._collection$_length = this._collection$_length + 1;
4242 this._modifications = this._modifications + 1 & 67108863;
4243 return cell;
4244 },
4245 _unlinkCell$1: function(cell) {
4246 var previous, next;
4247 previous = cell.get$_previous();
4248 next = cell.get$_next();
4249 if (previous == null)
4250 this._first = next;
4251 else
4252 previous._next = next;
4253 if (next == null)
4254 this._last = previous;
4255 else
4256 next._previous = previous;
4257 this._collection$_length = this._collection$_length - 1;
4258 this._modifications = this._modifications + 1 & 67108863;
4259 },
4260 _computeHashCode$1: function(key) {
4261 return J.get$hashCode$(key) & 0x3ffffff;
4262 },
4263 _findBucketIndex$2: function(bucket, key) {
4264 var $length, i;
4265 if (bucket == null)
4266 return -1;
4267 $length = bucket.length;
4268 for (i = 0; i < $length; ++i)
4269 if (J.$eq(bucket[i].get$_key(), key))
4270 return i;
4271 return -1;
4272 },
4273 toString$0: function(_) {
4274 return P.Maps_mapToString(this);
4275 },
4276 $isMap: true,
4277 static: {
4278 _LinkedHashMap__newHashTable: function() {
4279 var table = Object.create(null);
4280 table["<non-identifier-key>"] = table;
4281 delete table["<non-identifier-key>"];
4282 return table;
4283 }}
4284
4285 },
4286
4287 _LinkedHashMap_values_closure: {"": "Closure;this_0",
4288 call$1: function(each) {
4289 var t1 = this.this_0;
4290 return t1.$index(t1, each);
4291 },
4292 $is_args1: true
4293 },
4294
4295 LinkedHashMapCell: {"": "Object;_key<,_collection$_value@,_next<,_previous<"},
4296
4297 LinkedHashMapKeyIterable: {"": "IterableBase;_map",
4298 get$length: function(_) {
4299 return this._map._collection$_length;
4300 },
4301 get$iterator: function(_) {
4302 var t1 = this._map;
4303 t1 = new P.LinkedHashMapKeyIterator(t1, t1._modifications, null, null);
4304 t1._cell = t1._map._first;
4305 return t1;
4306 },
4307 forEach$1: function(_, f) {
4308 var t1, cell, modifications;
4309 t1 = this._map;
4310 cell = t1._first;
4311 modifications = t1._modifications;
4312 for (; cell != null;) {
4313 f.call$1(cell._key);
4314 if (modifications !== t1._modifications)
4315 throw H.wrapException(P.ConcurrentModificationError$(t1));
4316 cell = cell._next;
4317 }
4318 },
4319 $asIterableBase: null,
4320 $isEfficientLength: true
4321 },
4322
4323 LinkedHashMapKeyIterator: {"": "Object;_map,_modifications,_cell,_collection$_cu rrent",
4324 get$current: function() {
4325 return this._collection$_current;
4326 },
4327 moveNext$0: function() {
4328 var t1 = this._map;
4329 if (this._modifications !== t1._modifications)
4330 throw H.wrapException(P.ConcurrentModificationError$(t1));
4331 else {
4332 t1 = this._cell;
4333 if (t1 == null) {
4334 this._collection$_current = null;
4335 return false;
4336 } else {
4337 this._collection$_current = t1._key;
4338 this._cell = this._cell._next;
4339 return true;
4340 }
4341 }
4342 }
4343 },
4344
4345 _HashSet: {"": "_HashSetBase;",
4346 get$iterator: function(_) {
4347 return new P.HashSetIterator(this, this._computeElements$0(), 0, null);
4348 },
4349 get$length: function(_) {
4350 return this._collection$_length;
4351 },
4352 contains$1: function(_, object) {
4353 var strings, nums, rest;
4354 if (typeof object === "string" && object !== "__proto__") {
4355 strings = this._strings;
4356 return strings == null ? false : strings[object] != null;
4357 } else if (typeof object === "number" && (object & 0x3ffffff) === object) {
4358 nums = this._nums;
4359 return nums == null ? false : nums[object] != null;
4360 } else {
4361 rest = this._rest;
4362 if (rest == null)
4363 return false;
4364 return this._findBucketIndex$2(rest[this._computeHashCode$1(object)], obje ct) >= 0;
4365 }
4366 },
4367 lookup$1: function(object) {
4368 var t1, rest, bucket, index;
4369 if (!(typeof object === "string" && object !== "__proto__"))
4370 t1 = typeof object === "number" && (object & 0x3ffffff) === object;
4371 else
4372 t1 = true;
4373 if (t1)
4374 return this.contains$1(this, object) ? object : null;
4375 rest = this._rest;
4376 if (rest == null)
4377 return;
4378 bucket = rest[this._computeHashCode$1(object)];
4379 index = this._findBucketIndex$2(bucket, object);
4380 if (index < 0)
4381 return;
4382 return J.$index$asx(bucket, index);
4383 },
4384 add$1: function(_, element) {
4385 var rest, hash, bucket;
4386 rest = this._rest;
4387 if (rest == null) {
4388 rest = P._HashSet__newHashTable();
4389 this._rest = rest;
4390 }
4391 hash = this._computeHashCode$1(element);
4392 bucket = rest[hash];
4393 if (bucket == null)
4394 rest[hash] = [element];
4395 else {
4396 if (this._findBucketIndex$2(bucket, element) >= 0)
4397 return false;
4398 bucket.push(element);
4399 }
4400 this._collection$_length = this._collection$_length + 1;
4401 this._elements = null;
4402 return true;
4403 },
4404 remove$1: function(_, object) {
4405 var rest, bucket, index;
4406 rest = this._rest;
4407 if (rest == null)
4408 return false;
4409 bucket = rest[this._computeHashCode$1(object)];
4410 index = this._findBucketIndex$2(bucket, object);
4411 if (index < 0)
4412 return false;
4413 this._collection$_length = this._collection$_length - 1;
4414 this._elements = null;
4415 bucket.splice(index, 1);
4416 return true;
4417 },
4418 _computeElements$0: function() {
4419 var t1, result, strings, names, entries, index, i, nums, rest, bucket, $leng th, i0;
4420 t1 = this._elements;
4421 if (t1 != null)
4422 return t1;
4423 result = P.List_List(this._collection$_length, null);
4424 strings = this._strings;
4425 if (strings != null) {
4426 names = Object.getOwnPropertyNames(strings);
4427 entries = names.length;
4428 for (index = 0, i = 0; i < entries; ++i) {
4429 result[index] = names[i];
4430 ++index;
4431 }
4432 } else
4433 index = 0;
4434 nums = this._nums;
4435 if (nums != null) {
4436 names = Object.getOwnPropertyNames(nums);
4437 entries = names.length;
4438 for (i = 0; i < entries; ++i) {
4439 result[index] = +names[i];
4440 ++index;
4441 }
4442 }
4443 rest = this._rest;
4444 if (rest != null) {
4445 names = Object.getOwnPropertyNames(rest);
4446 entries = names.length;
4447 for (i = 0; i < entries; ++i) {
4448 bucket = rest[names[i]];
4449 $length = bucket.length;
4450 for (i0 = 0; i0 < $length; ++i0) {
4451 result[index] = bucket[i0];
4452 ++index;
4453 }
4454 }
4455 }
4456 this._elements = result;
4457 return result;
4458 },
4459 _computeHashCode$1: function(element) {
4460 return J.get$hashCode$(element) & 0x3ffffff;
4461 },
4462 _findBucketIndex$2: function(bucket, element) {
4463 var $length, i;
4464 if (bucket == null)
4465 return -1;
4466 $length = bucket.length;
4467 for (i = 0; i < $length; ++i)
4468 if (J.$eq(bucket[i], element))
4469 return i;
4470 return -1;
4471 },
4472 $as_HashSetBase: null,
4473 $isEfficientLength: true
4474 },
4475
4476 _IdentityHashSet: {"": "_HashSet;_collection$_length,_strings,_nums,_rest,_eleme nts",
4477 _computeHashCode$1: function(key) {
4478 return H.objectHashCode(key) & 0x3ffffff;
4479 },
4480 _findBucketIndex$2: function(bucket, element) {
4481 var $length, i, t1;
4482 if (bucket == null)
4483 return -1;
4484 $length = bucket.length;
4485 for (i = 0; i < $length; ++i) {
4486 t1 = bucket[i];
4487 if (t1 == null ? element == null : t1 === element)
4488 return i;
4489 }
4490 return -1;
4491 },
4492 $as_HashSet: null
4493 },
4494
4495 HashSetIterator: {"": "Object;_set,_elements,_offset,_collection$_current",
4496 get$current: function() {
4497 return this._collection$_current;
4498 },
4499 moveNext$0: function() {
4500 var elements, offset, t1;
4501 elements = this._elements;
4502 offset = this._offset;
4503 t1 = this._set;
4504 if (elements !== t1._elements)
4505 throw H.wrapException(P.ConcurrentModificationError$(t1));
4506 else if (offset >= elements.length) {
4507 this._collection$_current = null;
4508 return false;
4509 } else {
4510 this._collection$_current = elements[offset];
4511 this._offset = offset + 1;
4512 return true;
4513 }
4514 }
4515 },
4516
4517 _HashSetBase: {"": "IterableBase;",
4518 toString$0: function(_) {
4519 return H.IterableMixinWorkaround_toStringIterable(this, "{", "}");
4520 },
4521 $asIterableBase: null,
4522 $isEfficientLength: true
4523 },
4524
4525 HashSet: {"": "Object;", $isEfficientLength: true, static: {
4526 HashSet_HashSet$identity: function($E) {
4527 var t1 = new P._IdentityHashSet(0, null, null, null, null);
4528 H.setRuntimeTypeInfo(t1, [$E]);
4529 return t1;
4530 }}
4531 },
4532
4533 IterableBase: {"": "Object;",
4534 forEach$1: function(_, f) {
4535 var t1;
4536 for (t1 = this.get$iterator(this); t1.moveNext$0();)
4537 f.call$1(t1.get$current());
4538 },
4539 get$length: function(_) {
4540 var it, count;
4541 it = this.get$iterator(this);
4542 for (count = 0; it.moveNext$0();)
4543 ++count;
4544 return count;
4545 },
4546 elementAt$1: function(_, index) {
4547 var t1, remaining, element;
4548 if (index < 0)
4549 throw H.wrapException(P.RangeError$value(index));
4550 for (t1 = this.get$iterator(this), remaining = index; t1.moveNext$0();) {
4551 element = t1.get$current();
4552 if (remaining === 0)
4553 return element;
4554 --remaining;
4555 }
4556 throw H.wrapException(P.RangeError$value(index));
4557 },
4558 toString$0: function(_) {
4559 return P._iterableToString(this);
4560 }
4561 },
4562
4563 ListMixin: {"": "Object;",
4564 get$iterator: function(receiver) {
4565 return new H.ListIterator(receiver, this.get$length(receiver), 0, null);
4566 },
4567 elementAt$1: function(receiver, index) {
4568 return this.$index(receiver, index);
4569 },
4570 forEach$1: function(receiver, action) {
4571 var $length, i;
4572 $length = this.get$length(receiver);
4573 for (i = 0; i < $length; ++i) {
4574 action.call$1(this.$index(receiver, i));
4575 if ($length !== this.get$length(receiver))
4576 throw H.wrapException(P.ConcurrentModificationError$(receiver));
4577 }
4578 },
4579 toString$0: function(receiver) {
4580 var result, t1;
4581 t1 = $.get$_toStringVisiting();
4582 if (t1.contains$1(t1, receiver))
4583 return "[...]";
4584 result = P.StringBuffer$("");
4585 try {
4586 t1 = $.get$_toStringVisiting();
4587 t1.add$1(t1, receiver);
4588 result.write$1("[");
4589 result.writeAll$2(receiver, ", ");
4590 result.write$1("]");
4591 } finally {
4592 t1 = $.get$_toStringVisiting();
4593 t1.remove$1(t1, receiver);
4594 }
4595 return result.get$_contents();
4596 },
4597 $isList: true,
4598 $asList: null,
4599 $isEfficientLength: true
4600 },
4601
4602 Maps_mapToString_closure: {"": "Closure;box_0,result_1",
4603 call$2: function(k, v) {
4604 var t1 = this.box_0;
4605 if (!t1.first_0)
4606 this.result_1.write$1(", ");
4607 t1.first_0 = false;
4608 t1 = this.result_1;
4609 t1.write$1(k);
4610 t1.write$1(": ");
4611 t1.write$1(v);
4612 },
4613 $is_args2: true
4614 },
4615
4616 ListQueue: {"": "IterableBase;_table,_head,_tail,_modificationCount",
4617 get$iterator: function(_) {
4618 return P._ListQueueIterator$(this);
4619 },
4620 forEach$1: function(_, action) {
4621 var modificationCount, i, t1;
4622 modificationCount = this._modificationCount;
4623 for (i = this._head; i !== this._tail; i = (i + 1 & this._table.length - 1) >>> 0) {
4624 t1 = this._table;
4625 if (i < 0 || i >= t1.length)
4626 throw H.ioore(t1, i);
4627 action.call$1(t1[i]);
4628 if (modificationCount !== this._modificationCount)
4629 H.throwExpression(P.ConcurrentModificationError$(this));
4630 }
4631 },
4632 get$length: function(_) {
4633 return (this._tail - this._head & this._table.length - 1) >>> 0;
4634 },
4635 toString$0: function(_) {
4636 return H.IterableMixinWorkaround_toStringIterable(this, "{", "}");
4637 },
4638 removeFirst$0: function() {
4639 var t1, t2, t3, result;
4640 if (this._head === this._tail)
4641 throw H.wrapException(P.StateError$("No elements"));
4642 this._modificationCount = this._modificationCount + 1;
4643 t1 = this._table;
4644 t2 = this._head;
4645 t3 = t1.length;
4646 if (t2 < 0 || t2 >= t3)
4647 throw H.ioore(t1, t2);
4648 result = t1[t2];
4649 this._head = (t2 + 1 & t3 - 1) >>> 0;
4650 return result;
4651 },
4652 _add$1: function(element) {
4653 var t1, t2, t3;
4654 t1 = this._table;
4655 t2 = this._tail;
4656 t3 = t1.length;
4657 if (t2 < 0 || t2 >= t3)
4658 throw H.ioore(t1, t2);
4659 t1[t2] = element;
4660 this._tail = (t2 + 1 & t3 - 1) >>> 0;
4661 if (this._head === this._tail)
4662 this._grow$0();
4663 this._modificationCount = this._modificationCount + 1;
4664 },
4665 _grow$0: function() {
4666 var newTable, t1, t2, split;
4667 newTable = P.List_List(this._table.length * 2, H.getRuntimeTypeArgument(this , "ListQueue", 0));
4668 H.setRuntimeTypeInfo(newTable, [H.getRuntimeTypeArgument(this, "ListQueue", 0)]);
4669 t1 = this._table;
4670 t2 = this._head;
4671 split = t1.length - t2;
4672 H.IterableMixinWorkaround_setRangeList(newTable, 0, split, t1, t2);
4673 t1 = this._head;
4674 t2 = this._table;
4675 H.IterableMixinWorkaround_setRangeList(newTable, split, split + t1, t2, 0);
4676 this._head = 0;
4677 this._tail = this._table.length;
4678 this._table = newTable;
4679 },
4680 ListQueue$1: function(initialCapacity, $E) {
4681 var t1 = P.List_List(8, $E);
4682 H.setRuntimeTypeInfo(t1, [$E]);
4683 this._table = t1;
4684 },
4685 $asIterableBase: null,
4686 $isEfficientLength: true,
4687 static: {
4688 "": "ListQueue__INITIAL_CAPACITY",
4689 ListQueue$: function(initialCapacity, $E) {
4690 var t1 = new P.ListQueue(null, 0, 0, 0);
4691 H.setRuntimeTypeInfo(t1, [$E]);
4692 t1.ListQueue$1(initialCapacity, $E);
4693 return t1;
4694 }}
4695
4696 },
4697
4698 _ListQueueIterator: {"": "Object;_queue,_end,_modificationCount,_position,_colle ction$_current",
4699 get$current: function() {
4700 return this._collection$_current;
4701 },
4702 moveNext$0: function() {
4703 var t1, t2, t3;
4704 t1 = this._queue;
4705 if (this._modificationCount !== t1._modificationCount)
4706 H.throwExpression(P.ConcurrentModificationError$(t1));
4707 t2 = this._position;
4708 if (t2 === this._end) {
4709 this._collection$_current = null;
4710 return false;
4711 }
4712 t3 = t1._table;
4713 if (t2 < 0 || t2 >= t3.length)
4714 throw H.ioore(t3, t2);
4715 this._collection$_current = t3[t2];
4716 this._position = (this._position + 1 & t1._table.length - 1) >>> 0;
4717 return true;
4718 },
4719 static: {
4720 _ListQueueIterator$: function(queue) {
4721 return new P._ListQueueIterator(queue, queue._tail, queue._modificationCount, queue._head, null);
4722 }}
4723
4724 }}],
4725 ["dart.core", "dart:core", , P, {
4726 _symbolToString: function(symbol) {
4727 return H.Symbol_getName(symbol);
4728 },
4729
4730 Error_safeToString: function(object) {
4731 var buffer, t1, i, codeUnit, t2, charCodes;
4732 if (typeof object === "number" && Math.floor(object) === object || typeof obje ct === "number" || typeof object === "boolean" || null == object)
4733 return J.toString$0(object);
4734 if (typeof object === "string") {
4735 buffer = new P.StringBuffer("");
4736 buffer._contents = "\"";
4737 for (t1 = object.length, i = 0; i < t1; ++i) {
4738 codeUnit = C.JSString_methods.codeUnitAt$1(object, i);
4739 if (codeUnit <= 31)
4740 if (codeUnit === 10)
4741 buffer._contents = buffer._contents + "\\n";
4742 else if (codeUnit === 13)
4743 buffer._contents = buffer._contents + "\\r";
4744 else if (codeUnit === 9)
4745 buffer._contents = buffer._contents + "\\t";
4746 else {
4747 buffer._contents = buffer._contents + "\\x";
4748 if (codeUnit < 16)
4749 buffer._contents = buffer._contents + "0";
4750 else {
4751 buffer._contents = buffer._contents + "1";
4752 codeUnit -= 16;
4753 }
4754 t2 = codeUnit < 10 ? 48 + codeUnit : 87 + codeUnit;
4755 charCodes = P.List_List$filled(1, t2, J.JSInt);
4756 charCodes.$builtinTypeInfo = [J.JSInt];
4757 t2 = H.Primitives_stringFromCharCodes(charCodes);
4758 buffer._contents = buffer._contents + t2;
4759 }
4760 else if (codeUnit === 92)
4761 buffer._contents = buffer._contents + "\\\\";
4762 else if (codeUnit === 34)
4763 buffer._contents = buffer._contents + "\\\"";
4764 else {
4765 charCodes = P.List_List$filled(1, codeUnit, J.JSInt);
4766 charCodes.$builtinTypeInfo = [J.JSInt];
4767 t2 = H.Primitives_stringFromCharCodes(charCodes);
4768 buffer._contents = buffer._contents + t2;
4769 }
4770 }
4771 buffer._contents = buffer._contents + "\"";
4772 return buffer._contents;
4773 }
4774 return "Instance of '" + H.Primitives_objectTypeName(object) + "'";
4775 },
4776
4777 Exception_Exception: function(message) {
4778 return new P._ExceptionImplementation(message);
4779 },
4780
4781 identical: function(a, b) {
4782 return a == null ? b == null : a === b;
4783 },
4784
4785 identityHashCode: function(object) {
4786 return H.objectHashCode(object);
4787 },
4788
4789 List_List: function($length, $E) {
4790 if ($length == null)
4791 return new Array(0);
4792 if (typeof $length !== "number" || Math.floor($length) !== $length || $length < 0)
4793 throw H.wrapException(new P.ArgumentError("Length must be a positive integer : " + H.S($length) + "."));
4794 return H.Primitives_newFixedList($length);
4795 },
4796
4797 List_List$filled: function($length, fill, $E) {
4798 var result, t1, i;
4799 if ($length < 0)
4800 throw H.wrapException(new P.ArgumentError("Length must be a positive integer : " + $length + "."));
4801 result = H.Primitives_newFixedList($length);
4802 if ($length !== 0 && true)
4803 for (t1 = result.length, i = 0; i < t1; ++i)
4804 result[i] = fill;
4805 return result;
4806 },
4807
4808 List_List$from: function(other, growable, $E) {
4809 var list, t1, $length, fixedList, t2, i, t3;
4810 list = P.List_List(null, $E);
4811 H.setRuntimeTypeInfo(list, [$E]);
4812 for (t1 = J.get$iterator$ax(other); t1.moveNext$0();)
4813 list.push(t1.get$current());
4814 if (growable)
4815 return list;
4816 $length = list.length;
4817 fixedList = P.List_List($length, $E);
4818 H.setRuntimeTypeInfo(fixedList, [$E]);
4819 for (t1 = list.length, t2 = fixedList.length, i = 0; i < $length; ++i) {
4820 if (i >= t1)
4821 throw H.ioore(list, i);
4822 t3 = list[i];
4823 if (i >= t2)
4824 throw H.ioore(fixedList, i);
4825 fixedList[i] = t3;
4826 }
4827 return fixedList;
4828 },
4829
4830 print: function(object) {
4831 var line = J.toString$0(object);
4832 H.printToConsole(line);
4833 },
4834
4835 NoSuchMethodError_toString_closure: {"": "Closure;box_0",
4836 call$2: function(key, value) {
4837 var t1 = this.box_0;
4838 if (t1.i_1 > 0)
4839 t1.sb_0.write$1(", ");
4840 t1.sb_0.write$1(P._symbolToString(key));
4841 },
4842 $is_args2: true
4843 },
4844
4845 Duration: {"": "Object;_duration",
4846 $lt: function(_, other) {
4847 return C.JSNumber_methods.$lt(this._duration, other.get$_duration());
4848 },
4849 $gt: function(_, other) {
4850 return C.JSNumber_methods.$gt(this._duration, other.get$_duration());
4851 },
4852 $ge: function(_, other) {
4853 return C.JSNumber_methods.$ge(this._duration, other.get$_duration());
4854 },
4855 $eq: function(_, other) {
4856 var t1;
4857 if (other == null)
4858 return false;
4859 t1 = J.getInterceptor(other);
4860 if (typeof other !== "object" || other === null || !t1.$isDuration)
4861 return false;
4862 return this._duration === other._duration;
4863 },
4864 get$hashCode: function(_) {
4865 return this._duration & 0x1FFFFFFF;
4866 },
4867 toString$0: function(_) {
4868 var t1, t2, twoDigitMinutes, twoDigitSeconds, sixDigitUs;
4869 t1 = new P.Duration_toString_twoDigits();
4870 t2 = this._duration;
4871 if (t2 < 0)
4872 return "-" + H.S(P.Duration$(0, 0, -t2, 0, 0, 0));
4873 twoDigitMinutes = t1.call$1(C.JSNumber_methods.remainder$1(C.JSNumber_method s.$tdiv(t2, 60000000), 60));
4874 twoDigitSeconds = t1.call$1(C.JSNumber_methods.remainder$1(C.JSNumber_method s.$tdiv(t2, 1000000), 60));
4875 sixDigitUs = new P.Duration_toString_sixDigits().call$1(C.JSNumber_methods.r emainder$1(t2, 1000000));
4876 return H.S(C.JSNumber_methods.$tdiv(t2, 3600000000)) + ":" + H.S(twoDigitMin utes) + ":" + H.S(twoDigitSeconds) + "." + H.S(sixDigitUs);
4877 },
4878 $isDuration: true,
4879 static: {
4880 "": "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",
4881 Duration$: function(days, hours, microseconds, milliseconds, minutes, seconds) {
4882 return new P.Duration(days * 86400000000 + hours * 3600000000 + minutes * 6000 0000 + seconds * 1000000 + milliseconds * 1000 + microseconds);
4883 }}
4884
4885 },
4886
4887 Duration_toString_sixDigits: {"": "Closure;",
4888 call$1: function(n) {
4889 var t1 = J.getInterceptor$n(n);
4890 if (t1.$ge(n, 100000))
4891 return H.S(n);
4892 if (t1.$ge(n, 10000))
4893 return "0" + H.S(n);
4894 if (t1.$ge(n, 1000))
4895 return "00" + H.S(n);
4896 if (t1.$ge(n, 100))
4897 return "000" + H.S(n);
4898 if (t1.$gt(n, 10))
4899 return "0000" + H.S(n);
4900 return "00000" + H.S(n);
4901 },
4902 $is_args1: true
4903 },
4904
4905 Duration_toString_twoDigits: {"": "Closure;",
4906 call$1: function(n) {
4907 if (J.$ge$n(n, 10))
4908 return H.S(n);
4909 return "0" + H.S(n);
4910 },
4911 $is_args1: true
4912 },
4913
4914 Error: {"": "Object;",
4915 get$stackTrace: function() {
4916 return new H._StackTrace(this.$thrownJsError, null);
4917 },
4918 $isError: true
4919 },
4920
4921 NullThrownError: {"": "Error;",
4922 toString$0: function(_) {
4923 return "Throw of null.";
4924 }
4925 },
4926
4927 ArgumentError: {"": "Error;message",
4928 toString$0: function(_) {
4929 var t1 = this.message;
4930 if (t1 != null)
4931 return "Illegal argument(s): " + H.S(t1);
4932 return "Illegal argument(s)";
4933 },
4934 static: {
4935 ArgumentError$: function(message) {
4936 return new P.ArgumentError(message);
4937 }}
4938
4939 },
4940
4941 RangeError: {"": "ArgumentError;message",
4942 toString$0: function(_) {
4943 return "RangeError: " + H.S(this.message);
4944 },
4945 static: {
4946 RangeError$value: function(value) {
4947 return new P.RangeError("value " + H.S(value));
4948 },
4949
4950 RangeError$range: function(value, start, end) {
4951 return new P.RangeError("value " + H.S(value) + " not in range " + start + ".. " + H.S(end));
4952 }}
4953
4954 },
4955
4956 UnsupportedError: {"": "Error;message",
4957 toString$0: function(_) {
4958 return "Unsupported operation: " + this.message;
4959 },
4960 static: {
4961 UnsupportedError$: function(message) {
4962 return new P.UnsupportedError(message);
4963 }}
4964
4965 },
4966
4967 StateError: {"": "Error;message",
4968 toString$0: function(_) {
4969 return "Bad state: " + this.message;
4970 },
4971 static: {
4972 StateError$: function(message) {
4973 return new P.StateError(message);
4974 }}
4975
4976 },
4977
4978 ConcurrentModificationError: {"": "Error;modifiedObject",
4979 toString$0: function(_) {
4980 var t1 = this.modifiedObject;
4981 if (t1 == null)
4982 return "Concurrent modification during iteration.";
4983 return "Concurrent modification during iteration: " + P.Error_safeToString(t 1) + ".";
4984 },
4985 static: {
4986 ConcurrentModificationError$: function(modifiedObject) {
4987 return new P.ConcurrentModificationError(modifiedObject);
4988 }}
4989
4990 },
4991
4992 StackOverflowError: {"": "Object;",
4993 toString$0: function(_) {
4994 return "Stack Overflow";
4995 },
4996 get$stackTrace: function() {
4997 return;
4998 },
4999 $isError: true
5000 },
5001
5002 CyclicInitializationError: {"": "Error;variableName",
5003 toString$0: function(_) {
5004 return "Reading static variable '" + this.variableName + "' during its initi alization";
5005 },
5006 static: {
5007 CyclicInitializationError$: function(variableName) {
5008 return new P.CyclicInitializationError(variableName);
5009 }}
5010
5011 },
5012
5013 _ExceptionImplementation: {"": "Object;message",
5014 toString$0: function(_) {
5015 var t1 = this.message;
5016 if (t1 == null)
5017 return "Exception";
5018 return "Exception: " + H.S(t1);
5019 }
5020 },
5021
5022 Expando: {"": "Object;name",
5023 toString$0: function(_) {
5024 return "Expando:" + this.name;
5025 },
5026 $index: function(_, object) {
5027 var values = H.Primitives_getProperty(object, "expando$values");
5028 return values == null ? null : H.Primitives_getProperty(values, this._getKey $0());
5029 },
5030 $indexSet: function(_, object, value) {
5031 var values = H.Primitives_getProperty(object, "expando$values");
5032 if (values == null) {
5033 values = new P.Object();
5034 H.Primitives_setProperty(object, "expando$values", values);
5035 }
5036 H.Primitives_setProperty(values, this._getKey$0(), value);
5037 },
5038 _getKey$0: function() {
5039 var key, t1;
5040 key = H.Primitives_getProperty(this, "expando$key");
5041 if (key == null) {
5042 t1 = $.Expando__keyCount;
5043 $.Expando__keyCount = t1 + 1;
5044 key = "expando$key$" + t1;
5045 H.Primitives_setProperty(this, "expando$key", key);
5046 }
5047 return key;
5048 },
5049 static: {
5050 "": "Expando__KEY_PROPERTY_NAME,Expando__EXPANDO_PROPERTY_NAME,Expando__keyCount ",
5051 }
5052
5053 },
5054
5055 Function: {"": "Object;"},
5056
5057 Iterator: {"": "Object;"},
5058
5059 Null: {"": "Object;",
5060 toString$0: function(_) {
5061 return "null";
5062 }
5063 },
5064
5065 Object: {"": ";",
5066 $eq: function(_, other) {
5067 return this === other;
5068 },
5069 get$hashCode: function(_) {
5070 return H.Primitives_objectHashCode(this);
5071 },
5072 toString$0: function(_) {
5073 return H.Primitives_objectToString(this);
5074 }
5075 },
5076
5077 StackTrace: {"": "Object;"},
5078
5079 StringBuffer: {"": "Object;_contents<",
5080 get$length: function(_) {
5081 return this._contents.length;
5082 },
5083 write$1: function(obj) {
5084 var str = typeof obj === "string" ? obj : H.S(obj);
5085 this._contents = this._contents + str;
5086 },
5087 writeAll$2: function(objects, separator) {
5088 var iterator, str;
5089 iterator = J.get$iterator$ax(objects);
5090 if (!iterator.moveNext$0())
5091 return;
5092 if (separator.length === 0)
5093 do {
5094 str = iterator.get$current();
5095 str = typeof str === "string" ? str : H.S(str);
5096 this._contents = this._contents + str;
5097 } while (iterator.moveNext$0());
5098 else {
5099 this.write$1(iterator.get$current());
5100 for (; iterator.moveNext$0();) {
5101 this._contents = this._contents + separator;
5102 str = iterator.get$current();
5103 str = typeof str === "string" ? str : H.S(str);
5104 this._contents = this._contents + str;
5105 }
5106 }
5107 },
5108 toString$0: function(_) {
5109 return this._contents;
5110 },
5111 StringBuffer$1: function($content) {
5112 this._contents = $content;
5113 },
5114 static: {
5115 StringBuffer$: function($content) {
5116 var t1 = new P.StringBuffer("");
5117 t1.StringBuffer$1($content);
5118 return t1;
5119 }}
5120
5121 },
5122
5123 Symbol: {"": "Object;"}}],
5124 ["dart.dom.html", "dart:html", , W, {
5125 _convertNativeToDart_EventTarget: function(e) {
5126 var $window, t1;
5127 if (e == null)
5128 return;
5129 if ("setInterval" in e) {
5130 $window = W._DOMWindowCrossFrame__createSafe(e);
5131 t1 = J.getInterceptor($window);
5132 if (typeof $window === "object" && $window !== null && !!t1.$isEventTarget)
5133 return $window;
5134 return;
5135 } else
5136 return e;
5137 },
5138
5139 _wrapZone: function(callback) {
5140 var t1 = $.Zone__current;
5141 if (t1 === C.C__RootZone)
5142 return callback;
5143 return t1.bindUnaryCallback$2$runGuarded(callback, true);
5144 },
5145
5146 _EventStream: {"": "Stream;",
5147 listen$4$cancelOnError$onDone$onError: function(onData, cancelOnError, onDone, onError) {
5148 var t1 = new W._EventStreamSubscription(0, this._target, this._eventType, W. _wrapZone(onData), this._useCapture);
5149 H.setRuntimeTypeInfo(t1, [H.getRuntimeTypeArgument(this, "_EventStream", 0)] );
5150 t1._tryResume$0();
5151 return t1;
5152 },
5153 $asStream: null
5154 },
5155
5156 _ElementEventStreamImpl: {"": "_EventStream;_target,_eventType,_useCapture", $as _EventStream: null},
5157
5158 _EventStreamSubscription: {"": "StreamSubscription;_pauseCount,_target,_eventTyp e,_onData,_useCapture",
5159 cancel$0: function() {
5160 if (this._target == null)
5161 return;
5162 this._unlisten$0();
5163 this._target = null;
5164 this._onData = null;
5165 },
5166 _tryResume$0: function() {
5167 var t1 = this._onData;
5168 if (t1 != null && this._pauseCount <= 0)
5169 J.addEventListener$3$x(this._target, this._eventType, t1, this._useCapture );
5170 },
5171 _unlisten$0: function() {
5172 var t1 = this._onData;
5173 if (t1 != null)
5174 J.removeEventListener$3$x(this._target, this._eventType, t1, this._useCapt ure);
5175 },
5176 $asStreamSubscription: null
5177 },
5178
5179 EventStreamProvider: {"": "Object;_eventType"},
5180
5181 _DOMWindowCrossFrame: {"": "Object;_window", $isEventTarget: true, static: {
5182 _DOMWindowCrossFrame__createSafe: function(w) {
5183 if (w === window)
5184 return w;
5185 else
5186 return new W._DOMWindowCrossFrame(w);
5187 }}
5188 },
5189
5190 HtmlElement: {"": "Element;", "%": "HTMLAppletElement|HTMLBRElement|HTMLBaseFont Element|HTMLBodyElement|HTMLButtonElement|HTMLCanvasElement|HTMLContentElement|H TMLDListElement|HTMLDataListElement|HTMLDetailsElement|HTMLDialogElement|HTMLDir ectoryElement|HTMLDivElement|HTMLEmbedElement|HTMLFieldSetElement|HTMLFontElemen t|HTMLFrameElement|HTMLFrameSetElement|HTMLHRElement|HTMLHeadElement|HTMLHeading Element|HTMLHtmlElement|HTMLIFrameElement|HTMLImageElement|HTMLKeygenElement|HTM LLIElement|HTMLLabelElement|HTMLLegendElement|HTMLLinkElement|HTMLMapElement|HTM LMarqueeElement|HTMLMenuElement|HTMLMetaElement|HTMLMeterElement|HTMLModElement| HTMLOListElement|HTMLObjectElement|HTMLOptGroupElement|HTMLOptionElement|HTMLOut putElement|HTMLParagraphElement|HTMLParamElement|HTMLPreElement|HTMLProgressElem ent|HTMLQuoteElement|HTMLScriptElement|HTMLShadowElement|HTMLSourceElement|HTMLS panElement|HTMLStyleElement|HTMLTableCaptionElement|HTMLTableCellElement|HTMLTab leColElement|HTMLTableDataCellElement|HTMLTableElement|HTMLTableHeaderCellElemen t|HTMLTableRowElement|HTMLTableSectionElement|HTMLTemplateElement|HTMLTextAreaEl ement|HTMLTitleElement|HTMLTrackElement|HTMLUListElement|HTMLUnknownElement;HTML Element"},
5191
5192 AnchorElement: {"": "HtmlElement;target=",
5193 toString$0: function(receiver) {
5194 return receiver.toString();
5195 },
5196 "%": "HTMLAnchorElement"
5197 },
5198
5199 AreaElement: {"": "HtmlElement;target=", "%": "HTMLAreaElement"},
5200
5201 BaseElement: {"": "HtmlElement;target=", "%": "HTMLBaseElement"},
5202
5203 CharacterData: {"": "Node;length=", "%": "CDATASection|Comment|Text;CharacterDat a"},
5204
5205 DomException: {"": "Interceptor;",
5206 toString$0: function(receiver) {
5207 return receiver.toString();
5208 },
5209 "%": "DOMException"
5210 },
5211
5212 Element: {"": "Node;",
5213 toString$0: function(receiver) {
5214 return receiver.localName;
5215 },
5216 "%": ";Element"
5217 },
5218
5219 ErrorEvent: {"": "Event;error=", "%": "ErrorEvent"},
5220
5221 Event: {"": "Interceptor;",
5222 get$target: function(receiver) {
5223 return W._convertNativeToDart_EventTarget(receiver.target);
5224 },
5225 "%": "AudioProcessingEvent|AutocompleteErrorEvent|BeforeLoadEvent|BeforeUnload Event|CSSFontFaceLoadEvent|CloseEvent|CompositionEvent|CustomEvent|DeviceMotionE vent|DeviceOrientationEvent|DragEvent|FocusEvent|HashChangeEvent|IDBVersionChang eEvent|KeyboardEvent|MIDIConnectionEvent|MIDIMessageEvent|MSPointerEvent|MediaKe yEvent|MediaKeyMessageEvent|MediaKeyNeededEvent|MediaStreamEvent|MediaStreamTrac kEvent|MessageEvent|MouseEvent|MouseScrollEvent|MouseWheelEvent|MutationEvent|Of flineAudioCompletionEvent|OverflowEvent|PageTransitionEvent|PointerEvent|PopStat eEvent|ProgressEvent|RTCDTMFToneChangeEvent|RTCDataChannelEvent|RTCIceCandidateE vent|ResourceProgressEvent|SVGZoomEvent|SecurityPolicyViolationEvent|SpeechInput Event|SpeechRecognitionEvent|SpeechSynthesisEvent|StorageEvent|TextEvent|TouchEv ent|TrackEvent|TransitionEvent|UIEvent|WebGLContextEvent|WebKitAnimationEvent|We bKitTransitionEvent|WheelEvent|XMLHttpRequestProgressEvent;Event"
5226 },
5227
5228 EventTarget: {"": "Interceptor;",
5229 addEventListener$3: function(receiver, type, listener, useCapture) {
5230 return receiver.addEventListener(type, H.convertDartClosureToJS(listener, 1) , useCapture);
5231 },
5232 removeEventListener$3: function(receiver, type, listener, useCapture) {
5233 return receiver.removeEventListener(type, H.convertDartClosureToJS(listener, 1), useCapture);
5234 },
5235 $isEventTarget: true,
5236 "%": "MediaStream;EventTarget"
5237 },
5238
5239 FormElement: {"": "HtmlElement;length=,target=", "%": "HTMLFormElement"},
5240
5241 InputElement: {"": "HtmlElement;", $isInputElement: true, $isEventTarget: true, "%": "HTMLInputElement"},
5242
5243 MediaElement: {"": "HtmlElement;error=", "%": "HTMLAudioElement|HTMLMediaElement |HTMLVideoElement"},
5244
5245 Node: {"": "EventTarget;",
5246 toString$0: function(receiver) {
5247 var t1 = receiver.nodeValue;
5248 return t1 == null ? J.Interceptor.prototype.toString$0.call(this, receiver) : t1;
5249 },
5250 "%": "Attr|Document|DocumentFragment|DocumentType|Entity|HTMLDocument|Notation |SVGDocument|ShadowRoot;Node"
5251 },
5252
5253 ProcessingInstruction: {"": "CharacterData;target=", "%": "ProcessingInstruction "},
5254
5255 SelectElement: {"": "HtmlElement;length=", "%": "HTMLSelectElement"},
5256
5257 SpeechRecognitionError: {"": "Event;error=", "%": "SpeechRecognitionError"},
5258
5259 Window: {"": "EventTarget;",
5260 toString$0: function(receiver) {
5261 return receiver.toString();
5262 },
5263 $isEventTarget: true,
5264 "%": "DOMWindow|Window"
5265 }}],
5266 ["dart.dom.svg", "dart:svg", , P, {
5267 AElement: {"": "GraphicsElement;target=", "%": "SVGAElement"},
5268
5269 GraphicsElement: {"": "SvgElement;", "%": "SVGAltGlyphElement|SVGCircleElement|S VGClipPathElement|SVGDefsElement|SVGEllipseElement|SVGForeignObjectElement|SVGGE lement|SVGImageElement|SVGLineElement|SVGPathElement|SVGPolygonElement|SVGPolyli neElement|SVGRectElement|SVGSVGElement|SVGSwitchElement|SVGTSpanElement|SVGTextC ontentElement|SVGTextElement|SVGTextPathElement|SVGTextPositioningElement|SVGUse Element;SVGGraphicsElement"},
5270
5271 SvgElement: {"": "Element;", "%": "SVGAltGlyphDefElement|SVGAltGlyphItemElement| SVGAnimateColorElement|SVGAnimateElement|SVGAnimateMotionElement|SVGAnimateTrans formElement|SVGAnimationElement|SVGComponentTransferFunctionElement|SVGCursorEle ment|SVGDescElement|SVGFEBlendElement|SVGFEColorMatrixElement|SVGFEComponentTran sferElement|SVGFECompositeElement|SVGFEConvolveMatrixElement|SVGFEDiffuseLightin gElement|SVGFEDisplacementMapElement|SVGFEDistantLightElement|SVGFEDropShadowEle ment|SVGFEFloodElement|SVGFEFuncAElement|SVGFEFuncBElement|SVGFEFuncGElement|SVG FEFuncRElement|SVGFEGaussianBlurElement|SVGFEImageElement|SVGFEMergeElement|SVGF EMergeNodeElement|SVGFEMorphologyElement|SVGFEOffsetElement|SVGFEPointLightEleme nt|SVGFESpecularLightingElement|SVGFESpotLightElement|SVGFETileElement|SVGFETurb ulenceElement|SVGFilterElement|SVGFontElement|SVGFontFaceElement|SVGFontFaceForm atElement|SVGFontFaceNameElement|SVGFontFaceSrcElement|SVGFontFaceUriElement|SVG GlyphElement|SVGGlyphRefElement|SVGGradientElement|SVGHKernElement|SVGLinearGrad ientElement|SVGMPathElement|SVGMarkerElement|SVGMaskElement|SVGMetadataElement|S VGMissingGlyphElement|SVGPatternElement|SVGRadialGradientElement|SVGScriptElemen t|SVGSetElement|SVGStopElement|SVGStyleElement|SVGSymbolElement|SVGTitleElement| SVGVKernElement|SVGViewElement;SVGElement"}}],
5272 ["dart.isolate", "dart:isolate", , P, {
5273 ReceivePort: {"": "Object;"}}],
5274 ["dart.typed_data", "dart:typed_data", , P, {
5275 TypedData_ListMixin: {"": "TypedData+ListMixin;", $isList: true, $asList: null, $isEfficientLength: true},
5276
5277 TypedData_ListMixin_FixedLengthListMixin: {"": "TypedData_ListMixin+FixedLengthL istMixin;", $asList: null},
5278
5279 TypedData: {"": "Interceptor;",
5280 _invalidIndex$2: function(receiver, index, $length) {
5281 var t1 = J.getInterceptor$n(index);
5282 if (t1.$lt(index, 0) || t1.$ge(index, $length))
5283 throw H.wrapException(P.RangeError$range(index, 0, $length));
5284 else
5285 throw H.wrapException(new P.ArgumentError("Invalid list index " + H.S(inde x)));
5286 },
5287 "%": ";ArrayBufferView;TypedData_ListMixin|TypedData_ListMixin_FixedLengthList Mixin"
5288 },
5289
5290 Uint8List: {"": "TypedData_ListMixin_FixedLengthListMixin;",
5291 get$length: function(receiver) {
5292 return C.JS_CONST_ZYJ(receiver);
5293 },
5294 $index: function(receiver, index) {
5295 var t1 = C.JS_CONST_ZYJ(receiver);
5296 if (index >>> 0 != index || J.$ge$n(index, t1))
5297 this._invalidIndex$2(receiver, index, t1);
5298 return receiver[index];
5299 },
5300 $indexSet: function(receiver, index, value) {
5301 var t1 = C.JS_CONST_ZYJ(receiver);
5302 if (index >>> 0 != index || J.$ge$n(index, t1))
5303 this._invalidIndex$2(receiver, index, t1);
5304 receiver[index] = value;
5305 },
5306 $asList: function() {
5307 return [J.JSInt];
5308 },
5309 $isList: true,
5310 $isEfficientLength: true,
5311 $isJavaScriptIndexingBehavior: true,
5312 "%": ";Uint8Array"
5313 }}],
5314 ["", "piratebadge.dart", , A, {
5315 main: function() {
5316 var t1, t2;
5317 t1 = document.querySelector("#inputName");
5318 t1.toString;
5319 t1 = new W._ElementEventStreamImpl(t1, C.EventStreamProvider_input._eventType, false);
5320 H.setRuntimeTypeInfo(t1, [null]);
5321 t2 = new W._EventStreamSubscription(0, t1._target, t1._eventType, W._wrapZone( A.updateBadge$closure), t1._useCapture);
5322 H.setRuntimeTypeInfo(t2, [H.getRuntimeTypeArgument(t1, "_EventStream", 0)]);
5323 t2._tryResume$0();
5324 },
5325
5326 updateBadge: function(e) {
5327 document.querySelector("#badgeName").textContent = H.interceptedTypeCast(J.get $target$x(e), "$isInputElement").value;
5328 }},
5329 1],
5330 ]);
5331 Isolate.$finishClasses($$, $, null);
5332 $$ = null;
5333
5334 // Static function getters
5335 init.globalFunctions.IsolateNatives__processWorkerMessage$closure = H.IsolateNat ives__processWorkerMessage$closure = new H.Closure$2(H.IsolateNatives__processWo rkerMessage, "IsolateNatives__processWorkerMessage$closure");
5336 init.globalFunctions.toStringWrapper$closure = H.toStringWrapper$closure = new H .Closure$0(H.toStringWrapper, "toStringWrapper$closure");
5337 init.globalFunctions.invokeClosure$closure = H.invokeClosure$closure = new H.Clo sure$7(H.invokeClosure, "invokeClosure$closure");
5338 init.globalFunctions.typeNameInChrome$closure = H.typeNameInChrome$closure = new H.Closure$1(H.typeNameInChrome, "typeNameInChrome$closure");
5339 init.globalFunctions.typeNameInSafari$closure = H.typeNameInSafari$closure = new H.Closure$1(H.typeNameInSafari, "typeNameInSafari$closure");
5340 init.globalFunctions.typeNameInOpera$closure = H.typeNameInOpera$closure = new H .Closure$1(H.typeNameInOpera, "typeNameInOpera$closure");
5341 init.globalFunctions.typeNameInFirefox$closure = H.typeNameInFirefox$closure = n ew H.Closure$1(H.typeNameInFirefox, "typeNameInFirefox$closure");
5342 init.globalFunctions.typeNameInIE$closure = H.typeNameInIE$closure = new H.Closu re$1(H.typeNameInIE, "typeNameInIE$closure");
5343 init.globalFunctions.constructorNameFallback$closure = H.constructorNameFallback $closure = new H.Closure$1(H.constructorNameFallback, "constructorNameFallback$c losure");
5344 init.globalFunctions.callDartFunctionWith1Arg$closure = H.callDartFunctionWith1A rg$closure = new H.Closure$2(H.callDartFunctionWith1Arg, "callDartFunctionWith1A rg$closure");
5345 init.globalFunctions._asyncRunCallback$closure = P._asyncRunCallback$closure = n ew H.Closure$0(P._asyncRunCallback, "_asyncRunCallback$closure");
5346 init.globalFunctions._nullDataHandler$closure = P._nullDataHandler$closure = new H.Closure$1(P._nullDataHandler, "_nullDataHandler$closure");
5347 init.globalFunctions._nullErrorHandler$closure = P._nullErrorHandler$closure = n ew P.Closure$21(P._nullErrorHandler, "_nullErrorHandler$closure");
5348 init.globalFunctions._nullDoneHandler$closure = P._nullDoneHandler$closure = new H.Closure$0(P._nullDoneHandler, "_nullDoneHandler$closure");
5349 init.globalFunctions._defaultEquals$closure = P._defaultEquals$closure = new H.C losure$2(P._defaultEquals, "_defaultEquals$closure");
5350 init.globalFunctions._defaultHashCode$closure = P._defaultHashCode$closure = new H.Closure$1(P._defaultHashCode, "_defaultHashCode$closure");
5351 init.globalFunctions.identical$closure = P.identical$closure = new H.Closure$2(P .identical, "identical$closure");
5352 init.globalFunctions.identityHashCode$closure = P.identityHashCode$closure = new H.Closure$1(P.identityHashCode, "identityHashCode$closure");
5353 init.globalFunctions.main$closure = A.main$closure = new H.Closure$0(A.main, "ma in$closure");
5354 init.globalFunctions.updateBadge$closure = A.updateBadge$closure = new H.Closure $1(A.updateBadge, "updateBadge$closure");
5355 // Runtime type support
5356 J.JSInt.$isint = true;
5357 J.JSInt.$isObject = true;
5358 J.JSString.$isString = true;
5359 J.JSString.$isObject = true;
5360 J.JSNumber.$isObject = true;
5361 P.Duration.$isObject = true;
5362 W.Event.$isEvent = true;
5363 W.Event.$isObject = true;
5364 P.ReceivePort.$isObject = true;
5365 H._IsolateEvent.$isObject = true;
5366 H._IsolateContext.$isObject = true;
5367 J.JSArray.$isObject = true;
5368 P.Symbol.$isSymbol = true;
5369 P.Symbol.$isObject = true;
5370 P.StackTrace.$isStackTrace = true;
5371 P.StackTrace.$isObject = true;
5372 P.Object.$isObject = true;
5373 P.Function.$isFunction = true;
5374 P.Function.$isObject = true;
5375 J.JSBool.$isbool = true;
5376 J.JSBool.$isObject = true;
5377 P._EventSink.$is_EventSink = true;
5378 P._EventSink.$isObject = true;
5379 P.Future.$isFuture = true;
5380 P.Future.$isObject = true;
5381 P.StreamSubscription.$isStreamSubscription = true;
5382 P.StreamSubscription.$isObject = true;
5383 // getInterceptor methods
5384 J.getInterceptor = function(receiver) {
5385 if (typeof receiver == "number") {
5386 if (Math.floor(receiver) == receiver)
5387 return J.JSInt.prototype;
5388 return J.JSDouble.prototype;
5389 }
5390 if (typeof receiver == "string")
5391 return J.JSString.prototype;
5392 if (receiver == null)
5393 return J.JSNull.prototype;
5394 if (typeof receiver == "boolean")
5395 return J.JSBool.prototype;
5396 if (receiver.constructor == Array)
5397 return J.JSArray.prototype;
5398 if (typeof receiver != "object")
5399 return receiver;
5400 if (receiver instanceof P.Object)
5401 return receiver;
5402 return J.getNativeInterceptor(receiver);
5403 };
5404 J.getInterceptor$asx = function(receiver) {
5405 if (typeof receiver == "string")
5406 return J.JSString.prototype;
5407 if (receiver == null)
5408 return receiver;
5409 if (receiver.constructor == Array)
5410 return J.JSArray.prototype;
5411 if (typeof receiver != "object")
5412 return receiver;
5413 if (receiver instanceof P.Object)
5414 return receiver;
5415 return J.getNativeInterceptor(receiver);
5416 };
5417 J.getInterceptor$ax = function(receiver) {
5418 if (receiver == null)
5419 return receiver;
5420 if (receiver.constructor == Array)
5421 return J.JSArray.prototype;
5422 if (typeof receiver != "object")
5423 return receiver;
5424 if (receiver instanceof P.Object)
5425 return receiver;
5426 return J.getNativeInterceptor(receiver);
5427 };
5428 J.getInterceptor$n = function(receiver) {
5429 if (typeof receiver == "number")
5430 return J.JSNumber.prototype;
5431 if (receiver == null)
5432 return receiver;
5433 if (!(receiver instanceof P.Object))
5434 return J.UnknownJavaScriptObject.prototype;
5435 return receiver;
5436 };
5437 J.getInterceptor$s = function(receiver) {
5438 if (typeof receiver == "string")
5439 return J.JSString.prototype;
5440 if (receiver == null)
5441 return receiver;
5442 if (!(receiver instanceof P.Object))
5443 return J.UnknownJavaScriptObject.prototype;
5444 return receiver;
5445 };
5446 J.getInterceptor$x = function(receiver) {
5447 if (receiver == null)
5448 return receiver;
5449 if (typeof receiver != "object")
5450 return receiver;
5451 if (receiver instanceof P.Object)
5452 return receiver;
5453 return J.getNativeInterceptor(receiver);
5454 };
5455 C.C_UnknownJavaScriptObject = new J.UnknownJavaScriptObject();
5456 C.C__DelayedDone = new P._DelayedDone();
5457 C.C__RootZone = new P._RootZone();
5458 C.Duration_0 = new P.Duration(0);
5459 C.EventStreamProvider_input = new W.EventStreamProvider("input");
5460 C.JSArray_methods = J.JSArray.prototype;
5461 C.JSInt_methods = J.JSInt.prototype;
5462 C.JSNumber_methods = J.JSNumber.prototype;
5463 C.JSString_methods = J.JSString.prototype;
5464 C.JS_CONST_ZYJ = ((typeof version == "function" && typeof os == "object" && "system" in os)
5465 || (typeof navigator == "object"
5466 && navigator.userAgent.indexOf('Chrome') != -1))
5467 ? function(x) { return x.$dartCachedLength || x.length; }
5468 : function(x) { return x.length; };
5469 ;
5470 Isolate.makeConstantList = function(list) {
5471 list.immutable$list = true;
5472 list.fixed$length = true;
5473 return list;
5474 };
5475 C.List_empty = Isolate.makeConstantList([]);
5476 $.lazyPort = null;
5477 $.ReceivePortImpl__nextFreeId = 1;
5478 $.Primitives_mirrorFunctionCacheName = "$cachedFunction";
5479 $.Primitives_mirrorInvokeCacheName = "$cachedInvocation";
5480 $.initNativeDispatchFlag = null;
5481 $.printToZone = null;
5482 $._callbacksAreEnqueued = false;
5483 $.Zone__current = C.C__RootZone;
5484 $.Expando__keyCount = 0;
5485 $.Device__isOpera = null;
5486 $.Device__isWebKit = null;
5487 J.$eq = function(receiver, a0) {
5488 if (receiver == null)
5489 return a0 == null;
5490 if (typeof receiver != "object")
5491 return a0 != null && receiver === a0;
5492 return J.getInterceptor(receiver).$eq(receiver, a0);
5493 };
5494 J.$ge$n = function(receiver, a0) {
5495 if (typeof receiver == "number" && typeof a0 == "number")
5496 return receiver >= a0;
5497 return J.getInterceptor$n(receiver).$ge(receiver, a0);
5498 };
5499 J.$index$asx = function(receiver, a0) {
5500 if (receiver.constructor == Array || typeof receiver == "string" || H.isJsInde xable(receiver, receiver[init.dispatchPropertyName]))
5501 if (a0 >>> 0 === a0 && a0 < receiver.length)
5502 return receiver[a0];
5503 return J.getInterceptor$asx(receiver).$index(receiver, a0);
5504 };
5505 J.$indexSet$ax = function(receiver, a0, a1) {
5506 if ((receiver.constructor == Array || H.isJsIndexable(receiver, receiver[init. dispatchPropertyName])) && !receiver.immutable$list && a0 >>> 0 === a0 && a0 < r eceiver.length)
5507 return receiver[a0] = a1;
5508 return J.getInterceptor$ax(receiver).$indexSet(receiver, a0, a1);
5509 };
5510 J.addEventListener$3$x = function(receiver, a0, a1, a2) {
5511 return J.getInterceptor$x(receiver).addEventListener$3(receiver, a0, a1, a2);
5512 };
5513 J.forEach$1$ax = function(receiver, a0) {
5514 return J.getInterceptor$ax(receiver).forEach$1(receiver, a0);
5515 };
5516 J.get$error$x = function(receiver) {
5517 return J.getInterceptor$x(receiver).get$error(receiver);
5518 };
5519 J.get$hashCode$ = function(receiver) {
5520 return J.getInterceptor(receiver).get$hashCode(receiver);
5521 };
5522 J.get$iterator$ax = function(receiver) {
5523 return J.getInterceptor$ax(receiver).get$iterator(receiver);
5524 };
5525 J.get$length$asx = function(receiver) {
5526 return J.getInterceptor$asx(receiver).get$length(receiver);
5527 };
5528 J.get$target$x = function(receiver) {
5529 return J.getInterceptor$x(receiver).get$target(receiver);
5530 };
5531 J.removeEventListener$3$x = function(receiver, a0, a1, a2) {
5532 return J.getInterceptor$x(receiver).removeEventListener$3(receiver, a0, a1, a2 );
5533 };
5534 J.toString$0 = function(receiver) {
5535 return J.getInterceptor(receiver).toString$0(receiver);
5536 };
5537 Isolate.$lazy($, "globalThis", "globalThis", "get$globalThis", function() {
5538 return function() { return this; }();
5539 });
5540 Isolate.$lazy($, "globalWindow", "globalWindow", "get$globalWindow", function() {
5541 return $.get$globalThis().window;
5542 });
5543 Isolate.$lazy($, "globalWorker", "globalWorker", "get$globalWorker", function() {
5544 return $.get$globalThis().Worker;
5545 });
5546 Isolate.$lazy($, "globalPostMessageDefined", "globalPostMessageDefined", "get$gl obalPostMessageDefined", function() {
5547 return $.get$globalThis().postMessage !== void 0;
5548 });
5549 Isolate.$lazy($, "thisScript", "IsolateNatives_thisScript", "get$IsolateNatives_ thisScript", function() {
5550 return H.IsolateNatives_computeThisScript();
5551 });
5552 Isolate.$lazy($, "workerIds", "IsolateNatives_workerIds", "get$IsolateNatives_wo rkerIds", function() {
5553 return new P.Expando(null);
5554 });
5555 Isolate.$lazy($, "noSuchMethodPattern", "TypeErrorDecoder_noSuchMethodPattern", "get$TypeErrorDecoder_noSuchMethodPattern", function() {
5556 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn ({ toString: function() { return "$receiver$"; } }));
5557 });
5558 Isolate.$lazy($, "notClosurePattern", "TypeErrorDecoder_notClosurePattern", "get $TypeErrorDecoder_notClosurePattern", function() {
5559 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn ({ $method$: null, toString: function() { return "$receiver$"; } }));
5560 });
5561 Isolate.$lazy($, "nullCallPattern", "TypeErrorDecoder_nullCallPattern", "get$Typ eErrorDecoder_nullCallPattern", function() {
5562 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn (null));
5563 });
5564 Isolate.$lazy($, "nullLiteralCallPattern", "TypeErrorDecoder_nullLiteralCallPatt ern", "get$TypeErrorDecoder_nullLiteralCallPattern", function() {
5565 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn Null());
5566 });
5567 Isolate.$lazy($, "undefinedCallPattern", "TypeErrorDecoder_undefinedCallPattern" , "get$TypeErrorDecoder_undefinedCallPattern", function() {
5568 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn (void 0));
5569 });
5570 Isolate.$lazy($, "undefinedLiteralCallPattern", "TypeErrorDecoder_undefinedLiter alCallPattern", "get$TypeErrorDecoder_undefinedLiteralCallPattern", function() {
5571 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn Undefined());
5572 });
5573 Isolate.$lazy($, "nullPropertyPattern", "TypeErrorDecoder_nullPropertyPattern", "get$TypeErrorDecoder_nullPropertyPattern", function() {
5574 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOn(null));
5575 });
5576 Isolate.$lazy($, "nullLiteralPropertyPattern", "TypeErrorDecoder_nullLiteralProp ertyPattern", "get$TypeErrorDecoder_nullLiteralPropertyPattern", function() {
5577 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOnNull());
5578 });
5579 Isolate.$lazy($, "undefinedPropertyPattern", "TypeErrorDecoder_undefinedProperty Pattern", "get$TypeErrorDecoder_undefinedPropertyPattern", function() {
5580 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOn(void 0));
5581 });
5582 Isolate.$lazy($, "undefinedLiteralPropertyPattern", "TypeErrorDecoder_undefinedL iteralPropertyPattern", "get$TypeErrorDecoder_undefinedLiteralPropertyPattern", function() {
5583 return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErr orOnUndefined());
5584 });
5585 Isolate.$lazy($, "getTypeNameOf", "getTypeNameOf", "get$getTypeNameOf", function () {
5586 return H.getFunctionForTypeNameOf();
5587 });
5588 Isolate.$lazy($, "_toStringList", "IterableMixinWorkaround__toStringList", "get$ IterableMixinWorkaround__toStringList", function() {
5589 return P.List_List(null, null);
5590 });
5591 Isolate.$lazy($, "_stackTraceExpando", "_stackTraceExpando", "get$_stackTraceExp ando", function() {
5592 return new P.Expando("asynchronous error");
5593 });
5594 Isolate.$lazy($, "_asyncCallbacks", "_asyncCallbacks", "get$_asyncCallbacks", fu nction() {
5595 return P.ListQueue$(null, {func: "void_", void: true});
5596 });
5597 Isolate.$lazy($, "_toStringVisiting", "_toStringVisiting", "get$_toStringVisitin g", function() {
5598 return P.HashSet_HashSet$identity(null);
5599 });
5600 Isolate.$lazy($, "_toStringList", "Maps__toStringList", "get$Maps__toStringList" , function() {
5601 return P.List_List(null, null);
5602 });
5603 // Native classes
5604 J.Interceptor["%"] = "DOMError|FileError|MediaError|MediaKeyError|Navigator|Navi gatorUserMediaError|PositionError|SQLError|SVGAnimatedNumberList|SVGAnimatedStri ng";
5605
5606
5607 init.functionAliases = {};
5608 ;
5609 init.metadata = [];
5610 $ = null;
5611 Isolate = Isolate.$finishIsolateConstructor(Isolate);
5612 $ = new Isolate();
5613 function convertToFastObject(properties) { 3083 function convertToFastObject(properties) {
5614 function MyClass() {}; 3084 function MyClass() {};
5615 MyClass.prototype = properties; 3085 MyClass.prototype = properties;
5616 new MyClass(); 3086 new MyClass();
5617 return properties; 3087 return properties;
5618 } 3088 }
5619 A = convertToFastObject(A); 3089 A = convertToFastObject(A)
5620 B = convertToFastObject(B); 3090 B = convertToFastObject(B)
5621 C = convertToFastObject(C); 3091 C = convertToFastObject(C)
5622 D = convertToFastObject(D); 3092 D = convertToFastObject(D)
5623 E = convertToFastObject(E); 3093 E = convertToFastObject(E)
5624 F = convertToFastObject(F); 3094 F = convertToFastObject(F)
5625 G = convertToFastObject(G); 3095 G = convertToFastObject(G)
5626 H = convertToFastObject(H); 3096 H = convertToFastObject(H)
5627 J = convertToFastObject(J); 3097 J = convertToFastObject(J)
5628 K = convertToFastObject(K); 3098 K = convertToFastObject(K)
5629 L = convertToFastObject(L); 3099 L = convertToFastObject(L)
5630 M = convertToFastObject(M); 3100 M = convertToFastObject(M)
5631 N = convertToFastObject(N); 3101 N = convertToFastObject(N)
5632 O = convertToFastObject(O); 3102 O = convertToFastObject(O)
5633 P = convertToFastObject(P); 3103 P = convertToFastObject(P)
5634 Q = convertToFastObject(Q); 3104 Q = convertToFastObject(Q)
5635 R = convertToFastObject(R); 3105 R = convertToFastObject(R)
5636 S = convertToFastObject(S); 3106 S = convertToFastObject(S)
5637 T = convertToFastObject(T); 3107 T = convertToFastObject(T)
5638 U = convertToFastObject(U); 3108 U = convertToFastObject(U)
5639 V = convertToFastObject(V); 3109 V = convertToFastObject(V)
5640 W = convertToFastObject(W); 3110 W = convertToFastObject(W)
5641 X = convertToFastObject(X); 3111 X = convertToFastObject(X)
5642 Y = convertToFastObject(Y); 3112 Y = convertToFastObject(Y)
5643 Z = convertToFastObject(Z); 3113 Z = convertToFastObject(Z)
5644 !function() { 3114 !function(){function intern(a){var u={}
5645 var objectProto = Object.prototype; 3115 u[a]=1
5646 for (var i = 0;; i++) { 3116 return Object.keys(convertToFastObject(u))[0]}init.getIsolateTag=function(a){ret urn intern("___dart_"+a+init.isolateTag)}
5647 var property = "___dart_dispatch_record_ZxYxX_0_"; 3117 var z="___dart_isolate_tags_"
5648 if (i > 0) 3118 var y=Object[z]||(Object[z]=Object.create(null))
5649 property = rootProperty + "_" + i; 3119 var x="_ZxYxX"
5650 if (!(property in objectProto)) 3120 for(var w=0;;w++){var v=intern(x+"_"+w+"_")
5651 return init.dispatchPropertyName = property; 3121 if(!(v in y)){y[v]=1
5652 } 3122 init.isolateTag=v
5653 }(); 3123 break}}}()
5654 // BEGIN invoke [main]. 3124 init.dispatchPropertyName=init.getIsolateTag("dispatch_record")
5655 ;(function (callback) { 3125 ;(function (callback) {
5656 if (typeof document === "undefined") { 3126 if (typeof document === "undefined") {
5657 callback(null); 3127 callback(null);
5658 return; 3128 return;
5659 } 3129 }
5660 if (document.currentScript) { 3130 if (document.currentScript) {
5661 callback(document.currentScript); 3131 callback(document.currentScript);
5662 return; 3132 return;
5663 } 3133 }
5664 3134
5665 var scripts = document.scripts; 3135 var scripts = document.scripts;
5666 function onLoad(event) { 3136 function onLoad(event) {
5667 for (var i = 0; i < scripts.length; ++i) { 3137 for (var i = 0; i < scripts.length; ++i) {
5668 scripts[i].removeEventListener("load", onLoad, false); 3138 scripts[i].removeEventListener("load", onLoad, false);
5669 } 3139 }
5670 callback(event.target); 3140 callback(event.target);
5671 } 3141 }
5672 for (var i = 0; i < scripts.length; ++i) { 3142 for (var i = 0; i < scripts.length; ++i) {
5673 scripts[i].addEventListener("load", onLoad, false); 3143 scripts[i].addEventListener("load", onLoad, false);
5674 } 3144 }
5675 })(function(currentScript) { 3145 })(function(currentScript) {
5676 init.currentScript = currentScript; 3146 init.currentScript = currentScript;
5677 3147
5678 if (typeof dartMainRunner === "function") { 3148 if (typeof dartMainRunner === "function") {
5679 dartMainRunner(function() { H.startRootIsolate(A.main$closure); }); 3149 dartMainRunner((function(a){H.Rq(A.eE(),a)}), []);
5680 } else { 3150 } else {
5681 H.startRootIsolate(A.main$closure); 3151 (function(a){H.Rq(A.eE(),a)})([]);
5682 } 3152 }
5683 }); 3153 })
5684 // END invoke [main]. 3154 function init(){I.p={}
5685 function init() { 3155 function generateAccessor(a,b,c){var y=a.split("-")
5686 Isolate.$isolateProperties = {}; 3156 var x=y[0]
5687 function generateAccessor(field, accessors, cls) { 3157 var w=x.length
5688 var len = field.length; 3158 var v=x.charCodeAt(w-1)
5689 var code = field.charCodeAt(len - 1); 3159 var u
5690 var reflectable = false; 3160 if(y.length>1)u=true
5691 if (code == 45) { 3161 else u=false
5692 len--; 3162 v=v>=60&&v<=64?v-59:v>=123&&v<=126?v-117:v>=37&&v<=43?v-27:0
5693 code = field.charCodeAt(len - 1); 3163 if(v){var t=v&3
5694 field = field.substring(0, len); 3164 var s=v>>2
5695 reflectable = true; 3165 var r=x=x.substring(0,w-1)
5696 } 3166 var q=x.indexOf(":")
5697 code = code >= 60 && code <= 64 ? code - 59 : code >= 123 && code <= 126 ? c ode - 117 : code >= 37 && code <= 43 ? code - 27 : 0; 3167 if(q>0){r=x.substring(0,q)
5698 if (code) { 3168 x=x.substring(q+1)}if(t){var p=t&2?"r":""
5699 var getterCode = code & 3; 3169 var o=t&1?"this":"r"
5700 var setterCode = code >> 2; 3170 var n="return "+o+"."+x
5701 var accessorName = field = field.substring(0, len - 1); 3171 var m=c+".prototype.g"+r+"="
5702 var divider = field.indexOf(":"); 3172 var l="function("+p+"){"+n+"}"
5703 if (divider > 0) { 3173 if(u)b.push(m+"$reflectable("+l+");\n")
5704 accessorName = field.substring(0, divider); 3174 else b.push(m+l+";\n")}if(s){var p=s&2?"r,v":"v"
5705 field = field.substring(divider + 1); 3175 var o=s&1?"this":"r"
5706 } 3176 var n=o+"."+x+"=v"
5707 if (getterCode) { 3177 var m=c+".prototype.s"+r+"="
5708 var args = getterCode & 2 ? "receiver" : ""; 3178 var l="function("+p+"){"+n+"}"
5709 var receiver = getterCode & 1 ? "this" : "receiver"; 3179 if(u)b.push(m+"$reflectable("+l+");\n")
5710 var body = "return " + receiver + "." + field; 3180 else b.push(m+l+";\n")}}return x}I.p.$generateAccessor=generateAccessor
5711 var property = cls + ".prototype.get$" + accessorName + "="; 3181 function defineClass(a,b,c){var y=[]
5712 var fn = "function(" + args + "){" + body + "}"; 3182 var x="function "+b+"("
5713 if (reflectable) 3183 var w=""
5714 accessors.push(property + "$reflectable(" + fn + ");\n"); 3184 for(var v=0;v<c.length;v++){if(v!=0)x+=", "
5715 else 3185 var u=generateAccessor(c[v],y,b)
5716 accessors.push(property + fn + ";\n"); 3186 var t="parameter_"+u
5717 } 3187 x+=t
5718 if (setterCode) { 3188 w+="this."+u+" = "+t+";\n"}x+=") {\n"+w+"}\n"
5719 var args = setterCode & 2 ? "receiver, value" : "value"; 3189 x+=b+".builtin$cls=\""+a+"\";\n"
5720 var receiver = setterCode & 1 ? "this" : "receiver"; 3190 x+="$desc=$collectedClasses."+b+";\n"
5721 var body = receiver + "." + field + " = value"; 3191 x+="if($desc instanceof Array) $desc = $desc[1];\n"
5722 var property = cls + ".prototype.set$" + accessorName + "="; 3192 x+=b+".prototype = $desc;\n"
5723 var fn = "function(" + args + "){" + body + "}"; 3193 if(typeof defineClass.name!="string"){x+=b+".name=\""+b+"\";\n"}x+=y.join("")
5724 if (reflectable) 3194 return x}var z=function(){function tmp(){}var y=Object.prototype.hasOwnProperty
5725 accessors.push(property + "$reflectable(" + fn + ");\n"); 3195 return function(a,b){tmp.prototype=b.prototype
5726 else 3196 var x=new tmp()
5727 accessors.push(property + fn + ";\n"); 3197 var w=a.prototype
5728 } 3198 for(var v in w)if(y.call(w,v))x[v]=w[v]
5729 } 3199 x.constructor=a
5730 return field; 3200 a.prototype=x
5731 } 3201 return x}}()
5732 Isolate.$isolateProperties.$generateAccessor = generateAccessor; 3202 I.$finishClasses=function(a,b,c){var y={}
5733 function defineClass(name, cls, fields) { 3203 if(!init.allClasses)init.allClasses={}
5734 var accessors = []; 3204 var x=init.allClasses
5735 var str = "function " + cls + "("; 3205 var w=Object.prototype.hasOwnProperty
5736 var body = ""; 3206 if(typeof dart_precompiled=="function"){var v=dart_precompiled(a)}else{var u="fu nction $reflectable(fn){fn.$reflectable=1;return fn};\n"+"var $desc;\n"
5737 for (var i = 0; i < fields.length; i++) { 3207 var t=[]}for(var s in a){if(w.call(a,s)){var r=a[s]
5738 if (i != 0) 3208 if(r instanceof Array)r=r[1]
5739 str += ", "; 3209 var q=r["^"],p,o=s,n=q
5740 var field = generateAccessor(fields[i], accessors, cls); 3210 if(typeof q=="string"){var m=q.split("/")
5741 var parameter = "parameter_" + field; 3211 if(m.length==2){o=m[0]
5742 str += parameter; 3212 n=m[1]}}var l=n.split(";")
5743 body += "this." + field + " = " + parameter + ";\n"; 3213 n=l[1]==""?[]:l[1].split(",")
5744 } 3214 p=l[0]
5745 str += ") {\n" + body + "}\n"; 3215 m=p.split(":")
5746 str += cls + ".builtin$cls=\"" + name + "\";\n"; 3216 if(m.length==2){p=m[0]
5747 str += "$desc=$collectedClasses." + cls + ";\n"; 3217 var k=m[1]
5748 str += "if($desc instanceof Array) $desc = $desc[1];\n"; 3218 if(k)r.$signature=function(d){return function(){return init.metadata[d]}}(k)}if( p&&p.indexOf("+")>0){l=p.split("+")
5749 str += cls + ".prototype = $desc;\n"; 3219 p=l[0]
5750 if (typeof defineClass.name != "string") { 3220 var j=a[l[1]]
5751 str += cls + ".name=\"" + cls + "\";\n"; 3221 if(j instanceof Array)j=j[1]
5752 } 3222 for(var i in j){if(w.call(j,i)&&!w.call(r,i))r[i]=j[i]}}if(typeof dart_precompil ed!="function"){u+=defineClass(o,s,n)
5753 str += accessors.join(""); 3223 t.push(s)}if(p)y[s]=p}}if(typeof dart_precompiled!="function"){u+="return [\n " +t.join(",\n ")+"\n]"
5754 return str; 3224 var v=new Function("$collectedClasses",u)(a)
5755 } 3225 u=null}for(var h=0;h<v.length;h++){var g=v[h]
5756 var inheritFrom = function() { 3226 var s=g.name
5757 function tmp() { 3227 var r=a[s]
5758 } 3228 var f=b
5759 var hasOwnProperty = Object.prototype.hasOwnProperty; 3229 if(r instanceof Array){f=r[0]||b
5760 return function(constructor, superConstructor) { 3230 r=r[1]}x[s]=g
5761 tmp.prototype = superConstructor.prototype; 3231 f[s]=g}v=null
5762 var object = new tmp(); 3232 var e={}
5763 var properties = constructor.prototype; 3233 init.interceptorsByTag=Object.create(null)
5764 for (var member in properties) 3234 init.leafTags={}
5765 if (hasOwnProperty.call(properties, member)) 3235 function finishClass(a9){var d=Object.prototype.hasOwnProperty
5766 object[member] = properties[member]; 3236 if(d.call(e,a9))return
5767 object.constructor = constructor; 3237 e[a9]=true
5768 constructor.prototype = object; 3238 var a0=y[a9]
5769 return object; 3239 if(!a0||typeof a0!="string")return
5770 }; 3240 finishClass(a0)
5771 }(); 3241 var a1=x[a9]
5772 Isolate.$finishClasses = function(collectedClasses, isolateProperties, existin gIsolateProperties) { 3242 var a2=x[a0]
5773 var pendingClasses = {}; 3243 if(!a2)a2=c[a0]
5774 if (!init.allClasses) 3244 var a3=z(a1,a2)
5775 init.allClasses = {}; 3245 if(d.call(a3,"%")){var a4=a3["%"].split(";")
5776 var allClasses = init.allClasses; 3246 if(a4[0]){var a5=a4[0].split("|")
5777 var hasOwnProperty = Object.prototype.hasOwnProperty; 3247 for(var a6=0;a6<a5.length;a6++){init.interceptorsByTag[a5[a6]]=a1
5778 if (typeof dart_precompiled == "function") { 3248 init.leafTags[a5[a6]]=true}}if(a4[1]){a5=a4[1].split("|")
5779 var constructors = dart_precompiled(collectedClasses); 3249 if(a4[2]){var a7=a4[2].split("|")
5780 } else { 3250 for(var a6=0;a6<a7.length;a6++){var a8=x[a7[a6]]
5781 var combinedConstructorFunction = "function $reflectable(fn){fn.$reflectab le=1;return fn};\n" + "var $desc;\n"; 3251 a8.$nativeSuperclassTag=a5[0]}}for(a6=0;a6<a5.length;a6++){init.interceptorsByTa g[a5[a6]]=a1
5782 var constructorsList = []; 3252 init.leafTags[a5[a6]]=false}}}}for(var s in y)finishClass(s)}
5783 } 3253 I.$lazy=function(a,b,c,d,e){var y={}
5784 for (var cls in collectedClasses) { 3254 var x={}
5785 if (hasOwnProperty.call(collectedClasses, cls)) { 3255 a[c]=y
5786 var desc = collectedClasses[cls]; 3256 a[d]=function(){var w=$[c]
5787 if (desc instanceof Array) 3257 try{if(w===y){$[c]=x
5788 desc = desc[1]; 3258 try{w=$[c]=e()}finally{if(w===y)if($[c]===x)$[c]=null}}else{if(w===x)H.ag(b)}ret urn w}finally{$[d]=function(){return this[c]}}}}
5789 var classData = desc[""], supr, name = cls, fields = classData; 3259 I.$finishIsolateConstructor=function(a){var y=a.p
5790 if (typeof classData == "string") { 3260 function Isolate(){var x=Object.prototype.hasOwnProperty
5791 var split = classData.split("/"); 3261 for(var w in y)if(x.call(y,w))this[w]=y[w]
5792 if (split.length == 2) { 3262 function ForceEfficientMap(){}ForceEfficientMap.prototype=this
5793 name = split[0]; 3263 new ForceEfficientMap()}Isolate.prototype=a.prototype
5794 fields = split[1]; 3264 Isolate.prototype.constructor=Isolate
5795 } 3265 Isolate.p=y
5796 } 3266 Isolate.$finishClasses=a.$finishClasses
5797 var s = fields.split(";"); 3267 return Isolate}}
5798 fields = s[1] == "" ? [] : s[1].split(",");
5799 supr = s[0];
5800 if (supr && supr.indexOf("+") > 0) {
5801 s = supr.split("+");
5802 supr = s[0];
5803 var mixin = collectedClasses[s[1]];
5804 if (mixin instanceof Array)
5805 mixin = mixin[1];
5806 for (var d in mixin) {
5807 if (hasOwnProperty.call(mixin, d) && !hasOwnProperty.call(desc, d))
5808 desc[d] = mixin[d];
5809 }
5810 }
5811 if (typeof dart_precompiled != "function") {
5812 combinedConstructorFunction += defineClass(name, cls, fields);
5813 constructorsList.push(cls);
5814 }
5815 if (supr)
5816 pendingClasses[cls] = supr;
5817 }
5818 }
5819 if (typeof dart_precompiled != "function") {
5820 combinedConstructorFunction += "return [\n " + constructorsList.join(",\n ") + "\n]";
5821 var constructors = new Function("$collectedClasses", combinedConstructorFu nction)(collectedClasses);
5822 combinedConstructorFunction = null;
5823 }
5824 for (var i = 0; i < constructors.length; i++) {
5825 var constructor = constructors[i];
5826 var cls = constructor.name;
5827 var desc = collectedClasses[cls];
5828 var globalObject = isolateProperties;
5829 if (desc instanceof Array) {
5830 globalObject = desc[0] || isolateProperties;
5831 desc = desc[1];
5832 }
5833 allClasses[cls] = constructor;
5834 globalObject[cls] = constructor;
5835 }
5836 constructors = null;
5837 var finishedClasses = {};
5838 init.interceptorsByTag = {};
5839 init.leafTags = {};
5840 function finishClass(cls) {
5841 var hasOwnProperty = Object.prototype.hasOwnProperty;
5842 if (hasOwnProperty.call(finishedClasses, cls))
5843 return;
5844 finishedClasses[cls] = true;
5845 var superclass = pendingClasses[cls];
5846 if (!superclass || typeof superclass != "string")
5847 return;
5848 finishClass(superclass);
5849 var constructor = allClasses[cls];
5850 var superConstructor = allClasses[superclass];
5851 if (!superConstructor)
5852 superConstructor = existingIsolateProperties[superclass];
5853 var prototype = inheritFrom(constructor, superConstructor);
5854 if (hasOwnProperty.call(prototype, "%")) {
5855 var nativeSpec = prototype["%"].split(";");
5856 if (nativeSpec[0]) {
5857 var tags = nativeSpec[0].split("|");
5858 for (var i = 0; i < tags.length; i++) {
5859 init.interceptorsByTag[tags[i]] = constructor;
5860 init.leafTags[tags[i]] = true;
5861 }
5862 }
5863 if (nativeSpec[1]) {
5864 tags = nativeSpec[1].split("|");
5865 if (nativeSpec[2]) {
5866 var subclasses = nativeSpec[2].split("|");
5867 for (var i = 0; i < subclasses.length; i++) {
5868 var subclass = allClasses[subclasses[i]];
5869 subclass.$nativeSuperclassTag = tags[0];
5870 }
5871 }
5872 for (i = 0; i < tags.length; i++) {
5873 init.interceptorsByTag[tags[i]] = constructor;
5874 init.leafTags[tags[i]] = false;
5875 }
5876 }
5877 }
5878 }
5879 for (var cls in pendingClasses)
5880 finishClass(cls);
5881 };
5882 Isolate.$lazy = function(prototype, staticName, fieldName, getterName, lazyVal ue) {
5883 var sentinelUndefined = {};
5884 var sentinelInProgress = {};
5885 prototype[fieldName] = sentinelUndefined;
5886 prototype[getterName] = function() {
5887 var result = $[fieldName];
5888 try {
5889 if (result === sentinelUndefined) {
5890 $[fieldName] = sentinelInProgress;
5891 try {
5892 result = $[fieldName] = lazyValue();
5893 } finally {
5894 if (result === sentinelUndefined) {
5895 if ($[fieldName] === sentinelInProgress) {
5896 $[fieldName] = null;
5897 }
5898 }
5899 }
5900 } else {
5901 if (result === sentinelInProgress)
5902 H.throwCyclicInit(staticName);
5903 }
5904 return result;
5905 } finally {
5906 $[getterName] = function() {
5907 return this[fieldName];
5908 };
5909 }
5910 };
5911 };
5912 Isolate.$finishIsolateConstructor = function(oldIsolate) {
5913 var isolateProperties = oldIsolate.$isolateProperties;
5914 function Isolate() {
5915 var hasOwnProperty = Object.prototype.hasOwnProperty;
5916 for (var staticName in isolateProperties)
5917 if (hasOwnProperty.call(isolateProperties, staticName))
5918 this[staticName] = isolateProperties[staticName];
5919 function ForceEfficientMap() {
5920 }
5921 ForceEfficientMap.prototype = this;
5922 new ForceEfficientMap();
5923 }
5924 Isolate.prototype = oldIsolate.prototype;
5925 Isolate.prototype.constructor = Isolate;
5926 Isolate.$isolateProperties = isolateProperties;
5927 Isolate.$finishClasses = oldIsolate.$finishClasses;
5928 Isolate.makeConstantList = oldIsolate.makeConstantList;
5929 return Isolate;
5930 };
5931 }
5932 })() 3268 })()
5933
5934 //# sourceMappingURL=piratebadge.dart.js.map
5935 //@ sourceMappingURL=piratebadge.dart.js.map
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698