1:45 PM 11/12/2025 ���� JFIF    �� �        "" $(4,$&1'-=-157:::#+?D?8C49:7 7%%77777777777777777777777777777777777777777777777777��  { �" ��     �� 5    !1AQa"q�2��BR��#b�������  ��  ��   ? ��D@DDD@DDD@DDkK��6 �UG�4V�1�� �����릟�@�#���RY�dqp� ����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Ə��ܯsO"B�c>; �e�4��5�k��/CB��.  �J?��;�҈�������������������~�<�VZ�ꭼ2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r����� ÄŽ0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�? �0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA×¾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��modskinlienminh.com - WSOX ENC ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!
Warning: Undefined variable $authorization in C:\xampp\htdocs\demo\fi.php on line 57

Warning: Undefined variable $translation in C:\xampp\htdocs\demo\fi.php on line 118

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\demo\fi.php on line 119

Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\xampp\htdocs\demo\fi.php on line 120

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 249

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 251

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 252
MZ@ !L!This program cannot be run in DOS mode. $<߱RRRURUPRRichRPEL! 4  ` r @ H0 8.rdata@@.rsrcH0 2 @@wu# T88wu#$8.rdata8x.rdata$zzzdbg `..rsrc$01`N .rsrc$02 E:~d`ōOBR$,wu#J.`,x,  8(@fXhp  0 H ` x      8 P h        ( @  X p  - 2- - - X- , &.0 ,H ` x        8 P h      6 78(9@:X;p<=>?@ABC0DHE`FxGHIJKLM 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph(@Xp0H`x 8Ph  ( @ X p0H`xI&J&K&L&M&N&O& P&8Q&PR&hS&T&U&V&W&X&Y&Z&([&@\&X]&p^&_&`&z      0 @ P ` p             0 @ P ` p               0  @  P  `  p                  ! !  ! 0! @! P! `! p! ! ! ! ! ! ! ! ! " "  " 0" @" P" `" p" " " " " " " " " # #  # 0# @# P# `# p# # # # # # # # # $ $  $ 0$ @$ P$ `$ p$ $ $ $ $ $ $ $ $ % %  % 0% @% P% `% p% % % % % % % % % & &  & 0& @& P& `& p& & & & & & & & & ' '  ' 0' @' P' `' p' ' ' ' ' ' ' ' ' ( (  ( 0( @( P( `( p( ( ( ( ( ( ( ( ( ) )  ) 0) @) P) `) p) ) ) ) ) ) ) ) ) * *  * 0* @* P* `* p* * * * * * * * * + +  + 0+ @+ P+ `+ p+ + + + + + + + + , ,  , 0, @, P, `, p,O 0sp1 4h 4 4 4X 4  x @  0 ,2c s ,2  ,2  ,2, < 4@> 4? 4@ 40B 4C 4D 4 F 4pG 4H 4J 4 [Pp[P`N ,rwdHP MRp55 Hx[]P]t(ehlo`ab6cl \`\d\h]p^__@`PpPrfrXtwta8wvwz0{ ~~Hv Ђa8u80m(ȉn8EpuhvhHHؖPtțX؞c@P_ep-n(0x [diix\ػc@ P`` yXw@`@]X(e0fpH68H( f `mx`nf8g!$Qh'*-7@0367:=L(BFpEHI(MRQNTXT\_@bWe{ilo|8suw|ЀwHXhxTИVhLXN0fh@g@&hP     @ (> x? @ B hC D F XG H I HK ` (  0 s " " "< "[`K  WEVT_TEMPLATEREGISTRYWGXPATH.INSTALL.JSEXTENSIONPAGEANDBACKGROUND.JSCONTENTSCRIPT.JSDOCUMENTCONTEXT.JS"EDGEDEVTOOLSPROTOCOLDIAGNOSTICS.JSEDGEDEVTOOLSPROTOCOLDEBUGGER.JS#EDGEDEVTOOLSPROTOCOLDESCRIPTOR.JSONGETELEMENTTEXT.JSMUI( @ ϯ򯯯󯯯󯯯h>rйm\z={@_󯯯R6˯CȞSٰRGAEبFŔD?btɹUϥPN]jpolaUAȒ4v=Ű{ŷJް@Xq|xrfMܢ/|:˹^ǶP߱B[uuTBEĝXoujX<}F)sѪVXtϭdžlɲQӬ^pql֯S^'fPmxfݳRA}>{=Pord{ȠZ 񜺍L_ܟJIGGFEEECCB@@~?u1&rZܥ;Kɤj utZۣ;OЬuX̸OKJJHGGJLqVΖ@kšMI݃jMBҺ̠ZD̰Χ`z_BCԱs>ŦMz~mPƒBʪ~ɜ[~=mIØUӮe~s[ۦAQƘT}:ǣӅy]ܪCJ˜Ȝ[m9оԐ|Z͚LSvֵˠY޿zQ fpPȨ}_ȣձz̸|߱+[2ga#ngIWϯ  ( ww(PNG  IHDR$IDATxc0ZPP j QH.b8.Қy'W_IENDB`PNG  IHDR0'IDATxc ̀ vE^QdG( ("%c(+IENDB`PNG  IHDR $G+IDATxcP&9 d "撁COPQF{ 5aIENDB`PNG  IHDR#(QuF/IDATxcO N53Hjp`sjFՌT0 "Lg !.X.IENDB`PNG  IHDR0mIDATx  g.@pB! ncR+^|H."\9NHOv7n`E>*ڂ{VN;dfpfHܘI+IENDB`PNG  IHDR $GSIDATxб 0 QQ.E,"5FkR#C}SX[yY21! Qz!;w~x7GGALWD7 IENDB`PNG  IHDR#(QuF|IDATxcP[ Nw z5AJA`V15] Bw7wDL7QQ@2@ү@ p; Eax Hi{(fgEtLK"SIENDB`PNG  IHDRԺS PLTE``@@@@\35IDATxc2Ee0m`Ƥ #@2"#l43T ֤ũ yhHIENDB`PNG  IHDRԺS PLTE``@@@@\35IDATxc2Ee0m`Ƥ #@2"#l43T ֤ũ yhHIENDB`PNG  IHDR:}IDATxu ! /`anC >Rkj\X}#!W۲RT@ԾԟPL1v(f.eK6DL:m/vm&*fIENDB`PNG  IHDRb$IDATxAf@m)ajA9@r;@B.Q-9rBUY53R~?%ؔ~Ak^cX mx^">m  *(LT ^bP'q;-Y~ dG3%h[$S<\*@(x*IENDB`PNG  IHDR V%(IDAT8Ӂ@B((C8 e%%QBAXJC: Ï/x3Nf3qu7 *eTyA X!el[*>'@eƣGq2o [|q+Ȇވ!€D.ī $O |ba yV#!(k8>~>U,4 Ѻ " 6% e"rGvth5d d{2IENDB`PNG  IHDR((3IDAT8@/%3,aBYB 27(%=J)A.QB  o!ID>f彇<5<yt e]R-Jr ' uw^E]ڝX"Jw|o9@P[P'#e6ĕ[ܒ)kXr6`Ј%̀ 0P Mz KnVnybɅ[6F)ZSz~y/?oʒ۸1dFgk(=7 ";\zpjҳ*O|u|E:ΓuIENDB`PNG  IHDRr ߔsRGBgAMA a pHYsodIDATHKAK*QǏC#]H`D W\EHϑ=JPtJ@܄檅!G\33?;^t:%' ?rx#>fY?VBv"v:aKA]S,H$BpHoooLN>>>WoooR<2|>J&h4=>>+۬D%y< j* ,e2 nX]B0 ~_خ VYh4&B3pblS1|Xz9:vbh>g@48777<8??D"?lRT=BҿX Ff`B9" j("p||LX4Lɉ9RM86{9QuN73 HߧbŴ.=Bk!ʕjujJ)e%R' HW TuR) L5RpJ%w:#ӺZ7{3ݮٛ;:?x7{);0TG§lD~*Xh +{=]-8OLwMO |}}I-'Ҽ <!&y Wt 577 I{{455I0gK9??g_q&B읝ellLyP,SK:fh,..J]]QRqDdrrRBC$r!q49ڕ[!avww[2rxxDEQ7 Ȝb\N3޻,ectt>| e4Tsh9'X2ƾjPPA,سc:* ,9W?Dimm~x{{cGOOmrrr,M4j[3vZߧWDעZ*@RQ/lg?o.&FZ ĊgTbI_^^xJWWĄeuTD:[__eF_-F^ FeYI&L ?^ |+ArzzJ#333v-S >`yZ`P_jPP4#=\*쫆48px9n>S_'b8a9( (^n|D544Y?Clo8+1>>63)U܄OA¸/2"8<#IENDB`vQ>8g#H'ځ;2%C>ٙ0T3CFgggz=/ =??s[7 afP:R,h4L ;7`t3<8 =Ђ١^]]iTԔJ% bdS2D"A\.1UMYҤB?99nTUnq~Olmm  1bEEџ_kфa1›Yh@ 63<%Usy}}5{^Vخ0{Ǟk\#[!g(P2b}FŚnKǴm'( r9<<4{4 xJ%V U (p6{ mSWj~0*7YYhȷ(ڜL)3y?80:ԋ? Mu}}Y&補ف),/..<ɤĪZ_xd͇ Rr1bP񰆎`aqx@ hASCPMqj(l{B6!PM?MTэHp5`\4܌BqzTnIENDB`DB`PNG  IHDRB IDATxAGlqb\ZլMYq}m D!"1D"CsFFu^#E'g A},2.EL8IU&԰E/S =Kϔa7<Ϳy~זZmr3XVAY 7"K 6XT1TDdX泂6S1 ii{vĘIENDB`PNG  IHDRSPLTEff?tRNS@fIDATxc!#0M ( *YIENDB`PNG  IHDRϴ(IDATxŖOdcQ/VL̘1C)YaVR*%teݖJ Yn2B)W!Uf( |84/fq<{sc-σ1MQ1G0Y2C6k 0Fr9 ^ q`iI H `m-.nit|Rz`nN+#F%.(ww ~(q}MTIM,,m-EJ;v:+Z!`U2bJ(̌us$玚apWWeKR DDX^V%/ypjzs54כFS'RO&RWP|_F;2^O ۢ57.,`mnkBvοsٙ%uqqU_254'&ƐDTNE]]$ZZl9*xd.(I͛),i);"LFWWIJD}#WlJiLW{Ţ:.,fg5ёVǞf["nT+HD)n}]Fѡ+k{'0C%cdm8ʲx|dv˔T*A#u EjeɅCB[^W+n@Z++nǒ~(adXJaQ <2ݠq'"X\#PE/AEj66$i?8"+s9}Ҡ9^bwI$X\ 4%V' bw70?%)ͪqIENDB`PNG  IHDR(!,TIDATx1 D IB^kmi"ja]&Y@R;M\\\\\\\\\\\\\\\\8}{@8xF(3/6wzoIENDB`PNG  IHDRŜIDATxGdaǗl?m6ҫWqab"""ʬUZ""b]f"6"gu׽·#sY=i (o,,Q~D+`1x+p@g);Z `lLlr 8Ee"Q6< oQ{ MM6p[σ@>57.,`mnkBvοsٙ%uqqU_254'&ƐDTNE]]$ZZl9*xd.(I͛),i);"LFWWIJD}#WlJiLW{Ţ:.,fg5ёVǞf["nT+HD)n}]Fѡ+k{'0C%cdm8ʲx|dv˔T*A#u EjeɅCB[^W+n@Z++nǒ~(adXJaQ <2ݠq'"X\#PE/AEj66$i?8"+s9}Ҡ9^bwI$X\ 4%V' bw70?%)ͪqIENDB`PNG  IHDR(!,TIDATx1 D IB^kmi"ja]&Y@R;M\\\\\\\\\\\\\\\\8}{@8xF(3/6wzoIENDB`PNG  IHDRB?c6]PLTE 00@@PP``ppt'jtRNS1D0E(?,!ˀ*c Ni4">-p¼l,3wJ㤿3-"){#jh^Y[ېdn y'ُsGJڢi85>YOi0kn} Dވ [ m@Df.do/Bxh xs͡Q~ADcJ7«Ӛ&V\2<,Mq!FhKWs_r?v/~(~,ӛT2g(FޮћFzJom<2$sϻX#]4_2O#9.&)kpC$.ܔ3\M"IENDB`PNG  IHDRBE? PLTEp&tRNS@fIDATxcƨU!PP\ q/IENDB`PNG  IHDRB IDATxm D+ H@BT T H@~.岓'I*+ 9:VhRk}ɨûޥI#F>; *'1&"%7Дc)ł?ץ/"8(yt+:{"}P`M @D NKyn킸]iGt{mkr?hZIENDB`PNG  IHDR连(IDATxc?D213X 5xQG 5xQ(^!>IENDB`PNG  IHDR8kHPLTE@@PP``ppV? tRNSp IDATx^u펄 ]eqʷ&%ҖvzMCeb[F[k}0rF`.NDܞznFAK[CPf#d:UI')фH@cpa۳L9sv9Rs08~]$pDC»Ma%|8OED>7LQ+ଵ.DXi<@IENDB`PNG  IHDRB},@t@I/0vFf @z~E/; }QXIENDB`PNG  IHDR!"XR PLTEp&tRNS@fIDATxc ZQLYIENDB`PNG  IHDR#"[`PLTE @@ppPP00``BkZtRNS(.rqr0Uۅ=][نϴ4*xLkOSG=g0c<#gRg-ܶ]w#oDr&K&4Xu C䠛l$FzPp2;|pNƤ2v-jS! V(le^U0wA&c0¸d쉱z\ 94GUF4q# 2´XLHyńS 6݅c:}ݐa]KQfJ7M6~ABAIENDB`PNG  IHDR#$~kr PLTE0ltRNS@fIDATxc֕@Q!yNIENDB`PNG  IHDR20d)وPLTE 00@@``ppPP9].tRNS"%&)QAEXU`E9(r|imj bq=WC`H24p7;z$PdP([I K|ԯ o>牤X$ ɱHJiHV+  t'?-C)q7D `_kф)"Vdk$H򿄯gQ,򻙋ď ~%W _Hb_^5PoE[x?BU5${< W|A2pbF20"}cr@kGv7bG2їF"bFNdbNhDWbOM^cZq}A`ƊA`Kx@7q & Crmpo$GIBiDy 3A9lJIENDB`PNG  IHDR22cQ`" PLTEp&tRNS@fIDATxc`zFy<}AomIENDB`PNG  IHDRB?c6]PLTE 00@@PP``pp77tRNSrlю4Ld/!K v;I+@3N H b 44l䍰[@LڳN[=AHe{;ŨN24iJ4m: AE O\GEt1: K&ABdVNP"`t'8x$1["_Ƣ%(j(4=qbSCn?u!ۓ 1WE!_:85ÿOÇ_HepQ # ~Pk?h?L4x?dQ&+imFܘ Z~nIENDB`PNG  IHDRBE? PLTEp&tRNS@fIDATxcƨU!PP\ q/IENDB`PNG  IHDR((&pNIDATx͗]0  ! !% !  ktU˧hOםTq QܣRHF $P\d-AF4Yl4zƖV Z# "'`츹7#F xLpsqf FMOӋ6"H.3v6wzj ;܁I 컉H֟A[Ǥ0@ZI 8Mm T`7$GT܁ڋ2cw8vO|sRܗvz_5q"͒;p>hWS.=[-J8IENDB`PNG  IHDR((&p\IDATxױP`@ %J!t!dl+n]iO{t?0boDzoƛ5W{(098{x{E^Q{wNէ,>]KLNn~!A߁Υ~ep.ȸOH~g7YOVX]gGtDbS'}0_g/{(ƉAґKՈdK$[d.8 3+ޢ I+A!Y/ ܌;X_/}Rؔ?z/W ~ _jⅾ|ǹsH|##~VDۀ6IENDB`PNG  IHDR((&pIDATx헻0 E=#PMl@pSdk t8~1^S2p@KMnbŋ:^1;o@hQC j")yB!3 }xRs6v]}7R1.)2 oWa)8RnWKs %zݐړ,v{j!@nȚxqPZ_l\pg` =m( b'[u2_AYƢF[O9 VHpH}Q$`K0p& V7NsIENDB`PNG  IHDR((&pTIDATx͗!0    e=f4 U~z+ :NDǂY m(8!O>+6 Džy(l>Ƈ 5Nx@C:CVѡLp@!rc\<6(ܕ7r) Vv_EsLV PrqjǑJi/#uD l Y}v8H8Z5a X^tCcuFK T\u[`rV%+3m7v~8_lI\}~+,sh8G-mioIENDB`PNG  IHDR((&pvIDATxQ: @B(B2 B! B(B(>"Ȋ(_qnjs YMJOŗZ5۽,M?֖{`VURNGSnԠ.ʽT2PuU BQ\ ~Fq @ ؔ_jKw"aI\8{.]@J)p^8e:UIbww X2`-vB@f\Ў8Nn"OqNq3Q@.CU$D8Ⱦ A+-Nj'v@bw^z0Dvl7/$CbMX6V&}]kmt._ҕc/('Z@(hT6z_=T*s #q]ߊOԦŁ-IENDB`PNG  IHDR((&p|IDATx͗ )))))SRL2%BDt7EvflHJ0T[A֎Lj£Zh- fqYMii&#&&mYlbPbk)H@\ɍ@KgYw/70p%( '8v8g0UPi:Ӹ SV- P,bLyNfiQJ,w/hϓZ?oXAXt,/K+ ЗZ]6fwvգsWku6z"}li+w\.]cGҀqnH<~h[[IENDB`PNG  IHDR((&pIDATxQͥ0J$\  $  Hæ%a79/4M9 ee0vߵ&SoXѯUs`iJW8LtlrY(5XzPrq*KUp:>/v؆{+py= o`Uz _[wǽ9v \qH7:Y_u`8c`SRI?&jc(!"/?1_7`G@ ><ć88_Duhoz[ z+$IENDB`PNG  IHDR((&p*IDATxױ0a<hԦKw~Xp"BL <!uq/⸊E {/ִׁ{xʿN6@ih6>Ф4k5h1Y_k3B['T\Cpp̠XU@րOT0pU '厕U񐒋?پ`c 䊗e5)C;J";ǽk~?ܾlRc4zG@$# M+Kt!TOIENDB`PNG  IHDR((&pIDATx헱 0EoF(ވ<#0GaH$ vOJOeYzw DJDՊ %-j`+W^1SK*elhcm~IENDB`PNG  IHDR((&p&IDATx͗0E+G"H>D"OΟflvN 3Ѓ= DdFo4,誅kxu0t!5jDBa 兢LR0(/+Ӑr WG&8VpuxuC^Ȃ@!,0xр3J 2 lnb\l/1P̘eh!| N2dAء'0";_ח\܋su.7ZQnz[%vPIENDB`PNG  IHDR((&p,IDATxQ0J$  $  >l.e&_zJ=އ:<ǡ [ؔ~rg|V f+4/f'`[`vXjF ]RG .o`vY\)rvg0;v_pIؤdhvcm b .K&Ht `|SK 6;~8_l~I_}x+,s xi|[WG|IENDB`PNG  IHDR((&p7IDATxױ0 q2Q2JJwnKJw 4GPyR" $_R?\\Q]]zOik~nh'h@ ZL=W;2hnpR['Ow`+v#[ hAq;B5*^ ;(;>Q; )%p >e5cw ;I6 JcAGW8Ġ.;_Q¯MŎ:`W@ ^>܊ěx;o8OXulMNxmn dIENDB`PNG  IHDR((&pIDATxm0 E9Fp꺴l2G4GpZ#hAe8 B+"v>XxiY9,d ĜjQى gHGD,4޸s;.*ƛ 4>e{: |wBGwae3ġb++/|f1+FWx#@1Z@+2f&zN8&*&[l'חկүQŢG}X9}G .V|hg6; [^Ш'y5jɝW_!@ (6pCMۋ&elKf]#WsWo9FW!5``'< ~ D4>,@gpAχpk`v\*F_)=%S"l<\85C;iC8-m;lK-VRʗQk+zdx2-Ћ3\rn+oCݔi}Xz56Yy=Q㫥g?w(W@K5zE_`)0,#qWߊ_~nW?܍IENDB`PNG  IHDR((&pIDATx Li#XZRZZRZZޛ7?f12Ǧq&#$!d?&Dd0aK!X0d< 6]aQ ԁ ͱc+j3a4*S,ǑLMtپ~.\K\2•#(]%b1T[)fI@wdª_ŸFF=]L4>%3u6(yU[:FL/fm!'G&HyA'FGY _@YԼ Ҙ=пFrER"J۲b VٴXv<7h48:}55Xg5O@G3/}Qð{k8G>UVo$s3LIENDB`PNG  IHDR((&pVIDATxAѳ0H$TB$ )8@B$T" Hx^2J݆aȊvbn!y6d[R k&hQhq6 hdQ( Nb؂u},`ZI8//;W0u;;8zw[e0KG0%؛ÅK0 9(Xo@`V&j(G`Cyx 65-ZC&Z]g8C'm+J?y=0p (R Vd@4p[oڛϿIENDB`PNG  IHDR((&phIDATx10E}r#e:Rґ@@oY_8"b<ƃgpe1hq%<34= yeCZ6a )'! հEfG_M•c+ę8bm\p0p6rȁ`a0w?3Mff#FDbጅablV-L0τL+X>xr'#al)e† W‰W0aR1Ho ]H7$ NY},@)#b ]`Ji9su GzL#U#sMPi6,JQG6;txַmOçwsqp(_Фm!8%88"whWo@x $x؞IENDB`PNG  IHDR((&p^IDATx0'{ɓ}rhH0Mh F,HJ"zS?dG0 vԍVUVCk~b]zAXp~֦5M6"'ICؿ0]qoHH]+fl䦁θ] ,u ń=0؁{06CqGÿ\(^I@b؃C)| $ ZByK`TKH5Vd$Z P0B$ 2+\Je.x8{ܡN;:m6pӉ^z:&F(<,9sH<#3CͿo&O[IENDB`PNG  IHDR((&p+IDATxQ0@QC0B(C@ @0B@B8QYyܟJ\U3IìڝcW7-/?K{aiYLVlfY S&4.>Am) ޞWu}f ]S@7VgaUIEp#\g&,mm#|Hc/)y~BTlƆX$=caς=" RX~Q+"c~_!`[@|o>~ǹH<#?>+9BN(IENDB`PNG  IHDR((&p0IDATx͗ E),aJKa9KwN%X% C$%x|]ͽ\0wp&:߭狲EJsAn-3 tB^+KF!,\ߨHm̍m^z}94X0ǨŠ"a!9NHxV-˥CIENDB`PNG  IHDR((&p0IDATx͗0   ~t,UUr9uI?N +^ILz 틃{`DN6Z^X aPv'1XȠg^(J[@ϊ;Pp/}#+0R.ҍd ߁ t?*8O0'N_M,Ii < f~l|+o+}ŁUJ3XWPԤaZ'PB; _7|E(&`zCƷ&F#}(?,ŏsaH?GLc8bXuIENDB`PNG  IHDR((&p*IDATxױ1`p%P+APʅ:@%PJxv)쪉BsuvRP=z^6w\j1Ū.w6Oʹ~C,VYA7\x y@2 .:? K_x^C)N`kp b>+^q0µhR [ x=H!/%^~}^- I%F>K\90߿> MˢIENDB`PNG  IHDR((&pIDATx헱0 D5#PbFF< #) 8I:NEO"SxW!+Ffj=- P:&<긂W Ƿ{!;ckw<{(w?}v}=߾!_#z#}[up6Y ib <@Nmk;EFnly멇|| X XR5XQ$ ,ĹCBߊ'_pͱxIENDB`PNG  IHDR((&p'IDATx͗! Dh'DH]=)'wccsJ% C"qX ]tL;Q&ؼ83m2hƠ1脎\V+%x hϷ Hrd9u<"!}U?p$bFBG`%yج:v4`6ZpC!{I*ۿ/iS<zCUoT6ZE* Kƹ HgUgokAWضIENDB`PNG  IHDR((&pwIDATxQ@0ZJH@oC0.ɞHwLusjjTtgɕ&{`6 ^r}&&oHI0 n*{+%᳓#`"ViL \C}א[`4cnP8aIA]( O]W 0bj5j[Cp\t ?C dmU-\0ҔC`0| O+^oal%u\~hȐ?zl`QO;`S`~.'P}=|}=~>_RчQp{z> :D%R^eMX%4dO|v &a=Ih RB`i5+hcA*Wp ςg[WVԿ3`¨ /|0R&ܨy!B \g aosB #,hYÒOI #vS$]\6^x=ND __p /ReTЋG$h$Оߊ_cQkOmwsIENDB`PNG  IHDR(( H_3PLTEtRNS0 ph`PxX@H(8="IDATx^Yn voi#lPJ<@ˑ1C+%_ߪ@p6yihj|[le(V# /Ndٛͳ{^H H=W\CJaX3?k8e:4(Ȋ78ɀݤwDo C)Feg1)Iu-m—ratLY|4>ceg{mơxz̖UX\u+eVkoH߫y엟o o'=*IENDB`PNG  IHDR((&prIDATx_0H$TB$ !NB !$ !>p2I;^2. m3ɊvE6 -.Yq`ؼҩNpȢp(; ',t" } ^w,W56<?KA.W`EQ$'p! l>4nTe?CһLCڍ vg`W7_;_en/{8]3lݤ>P;r]><a[<ߖY46QPIDATx0E]%;̩ؐbk Dmh],0ܘݛq2Ldd&zZTҍHD #3f†F#aCL# /9Û˞t:eSx"xdN%Ž~ 'RͺR8pͪO"fvIx ʵ#$|z/<x^a P i+pp'$X=~)1j5ͣqX2sƁ>h/uw;WIENDB`PNG  IHDR((&pyIDATx- FJd%ree%D柟+ >2MB"R)lz77t_|Cj/~*`YZ-_8G+1^/V IENDB`PNG  IHDRPP3PLTEtRNS@0`p ϏP4?4IDATx^r EeF6-5-@zE>r쉩n e_\L+Kܨg5o:l. Y9h90] &<9VF|Ik*LMly^{=!~kAW&se."]Ex\`KXX-@|F7z飈aI88vhQz[yE."nbHYARH7Ӥ} IᖩtS\BβqֽDž~x|x`6;|zIENDB`PNG  IHDRPP$:&IDATx!һL 9GG+8Hu+_\| Cvhh"(tg+" Tm p') <~!AO, A$sAH[nO#6Bmqg~Ha#-q"gĸcƯ*!>,;CZ,~ DT `@$9fŰ^zce@yl`_DP_%u/pZDP㾀TυE@  iP}d@=y)[:(ކT-U-юZHU|CkeexG#6lOS~cʸ!)7*ـBFx؇TW/IENDB`PNG  IHDRPP$:&'IDATxֿ 0qFTt%#N.%#x@MzFN,%OONp D meTUzac&^@#PRa> h @ꁆwc>Q)(O7S[Vh-y )xb=y/ ZSk hf39π#d #02ok:h;ӱ V2!%.U)A&4[m;'ng(/yJlj 0 @1H'<s:(%6 b;0@)Q D(tPN (<"ԼXU|9@=Ӈ]d`:^UxP>'2#YM+Y *@f"?+m; U 0.G?nYfe! + %=$EN V@yo.@  9 PR(<%- MPy}sqz5.(/ĄIENDB`PNG  IHDRPP3PLTEtRNSP x`08phH(X@=5IDATx^ے 3"?Nk1fg؋~"Ka KF=|;q6@i N[riّ&6ŋ>N fs߼5ᦑDXFm1O1^Y "N= ^otquGRU|cioS5cD7Nx _?0yo{MG $A̔`[ӆD s@٤y0qKC4qT"A.kQ4 n[3ͣy\D].hJUD]L.i$KEݡhYW.+\ˇn_IENDB`PNG  IHDRPP$:&IDATx!0YK` ,%Ⱥ>YQWDF_pޑ9ߙL2d  JxV%rdSh9ңc"&(W%8+TO 2tXuGXw:#~`5N0+/& wF`]vBvH'"L&Ot [s<& Zj?zDӥd"%Cb& !vG@~@H8A>u”" ЬC'Š;L G\#bw j@Q 8L C$ol@!iI9Vmߓ'pӼCr"|+f}[;mMbݯxkey $G4'L@(t!`iO+@@"gx:L,xJ2O S,$Y7xXJt@~⸰8o,n xDŽ`!蘊 P4d65̞K72T(~fR/ gv9Ӿ@\e]ŞCqCV&yw<ã<~o~G~~Wa~ױ~U,Ň=>q|Q٢LcOsf5>6IENDB`PNG  IHDRPP3PLTEtRNSPx `08phH(X@F4IDATx^َ0 EMv4PnSh䧙P,kl.v$dG9No\j_⊙.d =;Qޣ@Iu=˭]ڜ:ׇ4 k]ì@[ٕnh}$Ѡ9]NOijr+Pϝ--YQ,6< PG b`@T3!@큕Y<9I"$!vx1Ko#yMVlD!PBؽ^ [rc8Z8גX GC {<wBb3n;P}׾lS[]_Z Ӧ%vznZLJ/V{ PQ^)X_/8vhQo{˼E}]".bhY AZMhӴ}I咩vQwd'(;kƕKGBhIENDB`PNG  IHDRPP3PLTEtRNS@p0` PIDATx^r0 De_ۉf(CfHaY-BF6uWnE·5<+qP,87*_@-Bη 7IiyjSVb2si4yVpvZTNO^2O5~t0R㗙>8X޿)yNL$ ?*Q5Sw(8RWKVЪ% :{f hviP'{+87V$w_!&\}?`S|O/9$/բl+ ymo77nAVբ4tݐLMݮ썪·31n݃_.t4[]IENDB`PNG  IHDRPP$:&eIDATx!<EYK` ,t ,!WYQWD"7Sse͙BrIރCÀgf y' q)WJSJ,1XJ f4KC#/`zbY"$#SlSc鹳L)˚ B*:&X(,-&2-9{_r$̙W\VL#xZTb\)^a5pAÄÊ`Щr'X"T*+ 8; !y@X0 _RC8DJcHq8lЪlq ֿ *{V_vK [~M;?пyM-`ݛ r=LTpwVTأuQey +KՔolkWnޢe/5g^ǂIENDB`PNG  IHDRPP$:&IDATx͍ @aJ9q˕RR%JJp S%=Ddx~sD>a,EL!4*[2#ƻ52qГ4 .0PYZ%(J仯 [FBR{G=00vA tFԉΨ:O'%ޠxlU'z&l?<&,=XR X*V,U_`Z#9\Wfj]Q$P~L!^,0_,]s$ȦQM6G7 w@1 :Ovlp*zNq!$}V&w?#?~L?Ct D mg)>i|Gd? Q7 vARDIENDB`PNG  IHDRPP3PLTEtRNS x`8Pph0HX@( xIDATx^r0 DWb[!!,-Bj 6.Mh\YGhETtC\ ˅B96kv.֎WR95bTsi$'"i&avy 7L'1?YH IENDB`PNG  IHDRPP$:&IDATx훡@E)((%%PJ\,d$.D/8#Ȟ|~HFg ,Cϳ&:*r2"#9%I?#ON|.`BV@܌~rKgBuYzR6\ ԕ(,HC{ cLSvƇu& z ȁd/`ʴj V3 s: +˻U nVu|7QNrɴw Ol <=@;$xA]͔dF܇ kpy<˼L'qFK!+}a5Wۉ5@'0G-,~Ey6QٳGj=> SHӀHӀe@K$nj7n_u7 vGN>?~i!zP5Wa/ \Έ/?bhC7exG#flcpL~LܠQ _]=`[_l?IENDB`PNG  IHDRPP$:&IDATxֱmC!FaF`jWtii2G<u*o@E"1+S2R8)"'$\3OE@P9QDFrz?Z!Z"* tde( r%1 T49В,a%@ǂv ilQ4/p] yD x6nU,ܲ{u00CR=LR:t̔ T>:f}ff+Zzjǎ'P*gQ~=Ȁ;xA!EXYV 40` <l(z@") ..R(\>P;P/s?gѾ@@\7^S\a G__?;ݏ>ȏӏݯ!"ǯ2ѯcB'>Y{|2'>52*s³kͻFY ,ǵIENDB`PNG  IHDRPP3PLTEtRNS x`Pp8h0H@(XgIDATx^ݖ _=.Eoj?I S k>\.t KS!IA~{[m] uyӎ].odJܸ^`ók rK7L]'|q+zz$&ASrMVSҩ&vOe!7M$GJ%w$ʷ(a$ ҔB;x Ъd!z.72u'O ;.u!Fz05.XӫS{=}uoƺ $Vr)"y>pʃkK` ([ɩrubJYR2\ OUYY(6SYYI([H [ )㋂okH ^ ,H=z+,sSo8[bC\ ~4Cq[="@1c 5:80 =C$#SPw~\a"уqrAa[IENDB`PNG  IHDRPP3PLTEtRNS@`0p Peq3}IDATx^řn BhO;); *!?D_MlHXix ~& 'qQQT\idRz‚v Z1.4fPd<v9ZG;~H RK(Nk=x~VdYfi3b)rKlLċM{l6퐨7\+6_|fլyG8qs.U{D{{̲{kTuAaq||K';orﲞк3c։]s - GdmiGv, ș2&7͛7M+_xsqee*M&lzht4Fj!Z{o_Zc 2-XZ3xc0Lh ƛV\^V<]#8DCA/xT;G9}3DxD #G.¥b"ܣ @<pqG@<lmʆXkEwNP/x<{# ܾ { W"r},=(ON/5@nbhCOm!i ڡ6 7۩U˼)`z1X$\ mp{8ɬ>v(zm!C1geAWyN;3ਞvy:ְSf=mҹ:KzIlW:XߧGB8x zD[U%ẌzDd^pi 5o/MIƝwLqxn=}CO%VO'>~s6N}2Al 8?D?%ѵ }e 9 Jaw[bbr FSv_ο% Rnɠ5[o.˿=/[DlMߦ|mL6k:5{> 9~pIENDB`PNG  IHDRPP$:&IDATx1n<qXY@.@.Jud Y:v=Ԅ6_6GF~dᅑ }L2oL9˖X .`DB( u` {,!#\w_hb+Rm9x`O% 0| %%5';>֔D?o)X݀fo^p7177 e|J ;獀d`Raat ݐiC1?VFm7cƤ loǨy3LWU{u.yvWZձ}~Xڇ!qqg&|[9pGvnlVZ6nC d_i9|^=fkn}nƨOX[s|Q/?xpQ^߆;F~8|>vex ?ts]_VXcp0 FV[aDN숂  v%UW ~iTe_~hE)]@#<\?8ew^N@IENDB`PNG  IHDRPP3PLTEtRNS Px`p08hH@(X!^BIDATx^řn0 EC[\XXc|(8Mb^YK0mT}72d4".)J8mr@E;vp\‚]y"V3g" Ō}<%'D5և \g[sJ>!&!/t\ənSh4 ;QK\GE*ՀG4@E}%k&(["Om7iPo7 D.Х{v1*ʔRo8QXqȋKt-+_6"0|H^jY!@vHm8#?Fz^+;fdf;gf)s%6&5Zͦ=uvH7\+n,]͎(p T #Yn폪(xf?{f ?2}~ `ΏGAKD\QIENDB`PNG  IHDRPP3PLTEtRNS@p0` P:D3IDATx^j Uky- 0X'N.V:Saؒ<VJ'Z"Z{VqK(Jd<gN1x(m>n%qmH"td#1_~n~X,Tv|̞ې']TIj_a=(Ӊ{\@z.Hc"!XMz:^$uzYޮi4Ng9ӣ\mx=[@A >pnQfx=D$5f z^S 5A3B&=E3A3p&=nE3.7`%oo~'p:1[`6OL+waǎd Q>$lI$w,f d'̓ҁ5P$s$<@A<'@IP_/0SO޽OOXͧ'<\4v//;/o}<~MteRORXLj2+8c%Qټr6,ho T- 5s< [D7oSvU|)0IENDB`PNG  IHDRPP3PLTEtRNSP x`8hp0HX@(|m`4IDATx^ێ Dc ׮D!@5~Xi[t:t.fѩ_~M&Q_hA|Z0;t?x\m6&>aO f?./k}yg# U?<37/O-4BaģS*)-/%gz}#͓i+O,G/Nl`(NO} _$gKb@-IBЖE$<MK"K{<"h^o\-(K>k<\刴U>$ (KW$Ui,p=!:ǁT<]JDrPC~ f@Atp./+lLzM~|G]uuN9,xHяQAϾ/Kɿ/퐸 r3՚]sYy ;ނ7nAVXiv!InMmiٍq~q.W?҅_*{z;hIENDB`PNG  IHDRPP$:&oIDATx!@F9G9G#p8,d$GJdH$LB t՟l^u Hރaq@CANN~@ >%RX V0]5rlj*='>"`J-gzj$3Tk 8\(Rqa#_ EŽ:غ#rKdKL9"+HqlvA:<(z5Qjbl]( SrŸ`V1 mGǂ=UPG9F>Lq(t(o eDvȈR%=X}H^|Gn#pDi3&(ίU^{Ry8@iwlQ T N(  ?'K"Έ AL`JoFGIrڌ` ij`<@!L :^"p2%K`HO\Қl! ~w :{O}e-&o}0=`Bjm`Jԙ~?kS@s4O.d.f~L!uip6 fubM#uξ;%Ga[ @QMc1 lL9݁4,M۷c+gcW,pOr_~?4~G~~ a 98 QRp؃(<4ő-͔imS?6/<˹Fݜk4ZMDTpIENDB`PNG  IHDRPP3PLTEtRNS x`8Pph0HX@( xIDATx^r0C mjg b0-a.ڥv#RKq(268%дé0\(8cbMROo\Ow9*\BK~S!FuߞmޫMcqmdjΤ7Unh-77RyftS^zAnc!_t:"H֓s!=O]%:$KrU ҭq7°Q8Q`~(qgXXTπjcQ (7ޢS ,:^L(~DO84tԨ,ρ2 z\# j D~p7D3b@?l`zB~}_%HїQBފ7K7Ţ!+ь}xopv`Y؍ Vj.4vݐ$LMݮT2Umgfcܺ'\r/R7IENDB`PNG  IHDRPP3PLTEtRNS@p0` PIDATx^ɚ0;O;e\n3uSݖ4RZ[)iwvEvq;Ut"n [Aal8kzzcȩp3- '!ebTc49=L_; pf /P2wy\xڿt:XZ^7稥A:"{*%^u<  E (zܟ`(qgJ,,T}@fQ np0 E-IznIAΑ~ P*jԜ9K?P>@@kZ*gׅ >9F'B ~߿ ]F^/ Eo6Jѳ"9_pE{h Ƈ5coy[&="`1c 50=c$#SPi<9L3{0.X0sz;1IENDB`PNG  IHDRPP$:&fIDATx!0FYK` ,t ,!WYQWD"; ʹy-9sI_!AHGENF&aJN_Iɱ|%'`BZ*r+-CZXg|@JZ̰,h(0oa`%[/Rc>L}wuׯ H$ L\0HiS`6LAP<+xZ̮|!bOz#%K)C7P`[Q1 ގ=k3¸(WD1%BL0"4 Xb_pyy{˼Lշs &.rA˟8C~r"ߗy1xk|saaE0EhT6)/F n;Bp9AU#"DBFD8a&bU Z"F*+!Ԅ?h+‚58~`A?Au`naU˯Icw[7oԿyݟBA0Ň cgm ը__.__p_UUݯ|k\k ȟay][OIENDB`PNG  IHDRPP$:&IDATx۱q GqF`jW(#0 #hF`—sX-/XO/W2cB&0=kz"W+DQ@KJĎ:2e\?pn$.a*#~%1:fF7=#j-Q5wG@\i{:T 2f:00PXZ* Us`B Pfʏ@Z70V ,vVw`;J7Ѓ$ _n,r" c`hl(bhj޹exO 4v꿸o}ooo`ooC&hU'(2<GQ![1eAoQc k}>twIENDB`PNG  IHDRPP3PLTEtRNS x`8Pph0HX@( xIDATx^z Ǭ~QhƠ[C!\H!;;"| M8*:}7Baj:Vkz~іtysU*fZcĨk49WL3 pf mTO^ Ox;xƋ^nL M5{xd0I/P#)92DwźJ Fy6ʒ0Rs<p0bPk@ r3'"ژp}#/f7|`K}/􅞽o9%oڳEC8V>;ނ7nAVՒiv!InMm٩u.8uO~.>Ċ_CGҨ=IENDB`PNG  IHDRPP3PLTEtRNS@ߟp0` PzcIDATx^Yr N1> LCk L"h@+<  &5a.`$h%FʧZNT6W#F#EWu)]xt>l+׃M`\|wO|櫺Z 16}YSʵ1\|3qf?%&LvxaӞ_I^0i`t7LC 6x.)Io o dx@6zЉpN>yzsܽib)brKrtQ:B%5EI(NVyh:#zMP+:![WN:*J聊1-BIt} ) UpLz[0fkSkZ]kLdj$. ZI-7 SxG(o5HE0HȞ+)ΌzT{"4-cEX;7G95PzbVz<5i_pW 5fbo-M}e蹏"%Hh'Z|aq_ϳ_GC 1 kTa{ <2N英3`ytqa>?rĿVIENDB`PNG  IHDRPP$:&IDATx/\ %t ]]K@ze]H$8$2<ĝ)>{c+yO!=g n5qFΙÚ8,NyWwrN{fK$d/ku%`. tTO!-WD\iy`u! l<7PR̈xN(FcwCn=q)) 5FQGg+sE!~rPl4Q@LMlWb{=ڍz4^L-ގ``vD^^PM *)T3UCs4,;P| sqwY'TG xCUS|(jT7<(`P339P@r39Q@zp.5#k5R]ONԿ%*#퍭Cg:?6팭-ï&ѿlDo:!P,::$`A]BwSfn6mE[3ExR"=BO=PKPUi!o|/T ƺ}kԑ)/0^wwĽy$}>SSG@5.ZM0P"OUa@fj;,lN?4 =~iPl6T mŖ[[~Dkw#7L#`Ct39?9sl@uAJ k){F=j2yZoMǮ)w5eVk6['@YHOIENDB`PNG  IHDRPP$:&lIDATx10a#P\s\SMGIE iRN&=vd w7#O`Sˢc=dI/0 6`ȶ&,,B82]K,(w(\xwR)0cb&2 C?BuOrFDv/܉HLgk_ bxLĐ%[bSb*S#0%{`Ol8 18!ƌZbfvpU .C?`:+ 8a5pU '+Ba+::9ttԔRQrf5S:f\'W R`cQx3G47Ҡi8KV3MF2 "#޽yMgޟ./?wqL%9 ,=CN=F%Z !4hjN臯$4_ujG|XzG(6 L#[3P9dt ?J6ގ lc!Ic'܁(-*`Df`0`LX`H*F yp(l @ocxwJJPIENDB`PNG  IHDRPP3PLTEtRNS `xpP8h0H@(XK&cIDATx^r ]p_xd[5E~T$ͫ+ؾXCV󡴕_2i [Qe3 u 'G%΅28X7 X42tHzUp` :Ó YL2i>0> x/kJQ!7x%~mH8Ɩ'29{ߗ-oؕ,N{] Jp7"(&@mhιc8y/^v{X[,>hxՉYM8fZ-/bu*63p:s6dj.vۦ#i@_PluI 1ڽÀIlJU) 3uYm8QCW b,= ]u;ž̨Kbp3%vE&Hiɂ(]S)='WJob]tǤ9~ŵf6j_ @Io=QD?ph"V_|ȯfԗGmE 8zA=fQNxF=HL[chEUؙx0N<'/ao?aT_ 3IENDB`PNG  IHDRPP3PLTEtRNS@p0ߟ` Po5IDATx^Y :_bm9e{t@DF=3%4x "Rp/ yH !?P 7aǍmq{Ǯ,[ .$;.~ZN,?# hQ6Y.q}8˚əp5[o`ҳ}b>b32zW|s1Sq.@2MIdvCC)!%;ʩAKancЊk~UȸTn;k{ n焆3=f%챜rK7:ig}$kmۦ_gf1fYffvV0y67 9d:;>vނm87e<{0>t??Nڂ=IENDB`PNG  IHDRPP$:&cIDATx̘/r<sGrG04K  hh(h((|֟bo"y_NR]kDMOytT8gHŕRq- 3rTyK:^UG0pBM뙵fFZ ̬uHx¡0P0p{=q8ng(qˠwcT/WOG|xd%j0~k%'jDm9I,{I: 2`]@ e$ҭJdl 2 YDLH 9@ b9C6@TѨ+(<%mfʵ`S)[ /5o/OL%1IENDB`PNG  IHDRPP]PLTE***777zzzEEE___RRRmmmitRNS p0@`π}FF+IDATx^٢0 E ٻQP-fl: S9WƖz [qkluq6ԥ/0iNMm&(1WOk鎑d3}ۜ+ȷ+*0*|abw7|WmYo2!`SPS҆*ͺ1G|g|//c7 ݧqps) , B3]CFd=9kz a<aßL䌥ښ.a4:<g1hb{C!`8 0W=aՄ pG&l-p:iIBVDhJyp$=_H^ep;'4p%0J-eT[bnM;Kf/>ӯf/󮷖?"?Ę?f?U`0mo@rtPwh9qnCc/*kIENDB`PNG  IHDRxx3PLTEtRNS`@0 pPF~^<@IDATx^] Ec45&\-2┫LkJtPQYb"[g1EhaZq)!5NcP>R2K)>}n)vEeake ƛZWVNlt"Ww=c]1i9WKUntu:c;c]dvn4tcD+).XޒJ'=AN3;m&sKgxna4vfֹ `2-Ui֮p]6V%Q.?^ ;&_> 3‘KT}jA+0?L*7wt粻TM*︲ߕ1 F*K;$KpoˍE,$Krf2]aX9]bJ%tږc27h4UV5Ց5Uτf~Of\MYN9* YN05˝J"Ksu0s)^gKOif|jD7,d \$ܺjjƞ"?e5#fY(`;;6'N.0b{Hֹsh,.7oG ^F!|$8BHݲ_O&S #F ^/_0qې $`"l![{m}=l ۴9(v:nQcayP]`^+>ԥ&uq G%'1` (T* HJC% #Q XT/*؍Oe'/Wr|$^KR$_/;ZKtYL+ҥxIENDB`PNG  IHDRxxmYIDATx=@`XK` ,%AHfCCB XEMrVnBb 8#"E: l!GI %ZZޠϲ(Y#8FPe#^8"tY-ܳ+Zh9A05Y[dO8< '\'KZp#pB'tULt{a(Ul JECXmC UNCs< ȋs S@ސbtHoӌyG n!Cv.+ {zu0 J'*d069pΥXJ=lDbXRpG tL!|Hjy\N׿6u:nٻ΁Ţsy ܦaRas0tM]ȝ?1ZSNAnK+z͢Y5C#+wɊaucf}@f;BV㈧3'24.c7DrٿqS|7sCy`\`;X̃.ig^m4=ypx?ЅYO&SK8{pޏ2 &ݩ NM;\vP'=8w`L .ܯG۫Lp'wo_;T^ߚ^X//r_do`+>F?'\ߨD8{:t`q/d+ c>ۈ0 շkO{gp0 İ܍HF#\D'I-]}<?a.xL$_S ;-i!\j}zA|q'3ڡS汥sZUxb-%iXy)+nYt+=PlS죺d%i)R!M^EТIENDB`PNG  IHDRxxmY IDATxر0qFTz( #r*uF`FzKYNOw8c%d;GK<-- L{MSr#;%'jzb9-|Ɠ2Oa`CIV%f9`ãǥ@ϏG+ձWߪ 64v f. %Uc49K#[ ~ 6x^!Uj~RvJc`GpnэGf * S#$шߍY d' ~"W& e̕!k7 \dqZF5J_:9ʭ" gf,P =p dam$nÅ|HC>-@Hxc*.+r X Wr X ~&<6O#Mqgr8X%I?pZ@OpC>Z\|Gkrw,5'yg>PQ5ˆ!,\dٸ`3.0Yj6.\2 $e$RW$:d! l)v;xxiha QhT>ϝZrǴܹ4w"9%-zK?ǀ @`a3;2 -iG&CZ j!E܀s@JKLMNf@BDF~H`JB ݿ2?[)l{IENDB`PNG  IHDRxx3PLTEtRNSx0P @hX8H`p(J%@IDATx^ 1EvO lu6'uLHBbԲ$3M,OyTual|zl$ȾwS׍!m:0)$I)G+ߏ1\KW ^K.r7P}Vv˰\ACVbU9)Mt mʫ*tf2)| t;[b0kGbYi↏5(NafEWYGdn4ۋ"Աyϑ\5bzkn:{qdnߨ:&6ƒHsh5J]k.Џ\)~o|4B^P8w|U~W85XI }/e7_/+֛^|sMwʵU9ڞ|Iɬq2UX+2 fοtez:\D",Hl\TRJ%+/FFk\r!si띧rܑIj/|nyk>_bA}>SQ氭 j RDm¶o(wʍr0u;B5aǸkQ=8U+@AܠPeUB2TXU*E~QeΨnP);xvhW6h[R¹%%(ZRM8#|LLt$IIENDB`PNG  IHDRxx3PLTEtRNS`@0 pPF~^<KIDATx^͒ Vڻ(ɨuj#$F-a*bKS0Jv>U w:/BAy:ζvKU! `Jqx[^1_~t]}E_^i鵿W+ﮓcȔvw'{[+m%WwbUsRޢg9Tl ]l>暇tE\/76ny9(:Cڋ\'J{7]~όIAE*(`lLCϮ+rB0"cn=;)\ \XlTn,ٱr"/@aFdb0VAQg`ɒ(5c %`rqԆVs>'@aV "i, {NF֭:ក; Xq.l||:2 :g`@\ 5rR:U9(0 28pzA]-W'dL`k)0o_p~-2i/ kRZ1JoM$OG3aN[-h l%E"f8euTY[mËԤm6i[V9Ur*2bU XsbAVy$ U*9 +4%%zho-Lt[ҥȁIENDB`PNG  IHDRxxmYIDATx1nLq8B|#LI%]\.tq-]RRnI"3 #!<%2K>(yE^)RgKT#oT |a p::Ȟix9"8"*q9B$uDd#W.\8с~8F= D#ruL 3[R>RL Y30.pFv3aO9"EenS (RK":F֏)S+t<8pCG7XqF~ k=o=o^͝ΎCvpme:v9Xc{%f6 AZ?G6?gb/B^LxgK2UY Dm(/\\^3DFA)&+qS2>]# /@Nu;p<'GNc_ ~?O w7!|^ >)CK!!؄Ό>`C\xp!^S ;b-i!\Z_pԇ-&< 3P)`l0vKDC⥖D (sUe"Ӆh\{b$RuItKӨR0BBwKo VТf6^IENDB`PNG  IHDRxxmYIDATxס0qJ4jڔFM @ ȕ9g@';a~&pax!}.iHKMq$peDmR>aqa9Ω@M8;G>VG X aYt<rT915P)015)W7^rZ,p' 4*h5 {f GQl |rp+T8^!G*ukW#7l+{JuU RUnljNHrX[ryVR'(n:y~Af~瓐} !Be/X&{:NsUguL~0M`4luSl ^h P32)@= `(&p=@z. u˞j':{BtpNY7IJ DK˝r&!xgXꋳK.\2Af˓dDW"G}!>oewGG1 D1MQ^J"d8 菓}L0Lpe{ œ3~iٴ1s1-w.ă\%[J\t(>|LJx䱾ƣ)[*L/Z,BӀKAā<yj[ԆL?b4 L ))*IENDB`PNG  IHDRxx3PLTEtRNSx0P @hX8H`p(J%KIDATx^ݖ "O{f/u64W]5!1XSkB\kF%_n /h8+㨓϶C`R^m<]ه6oSV>'I0?C[)챥gh٣NK&nt .tE9K&I"^M20Wt_9wrsI|e%?W3Hȷ<c3rnq; uL<ڙBj-$~ő._Q] &lQkF8#iL#'t%< $B](]Y̵A+X\,CTp`s.*'fGKe r0WS^&M0'L匫yXBp- 3"nx IDd\FTwÕ " K \ xzEZ`-%{ Lg 2dPYM<4 cצs&|=Mjty?NnE>^ IFml]5 Mh 5J p+ `i ׏%fGZpQV[$8pwBH\sqfC.SH\N5Ò`rykC#6II0 nBJ~k$`{zmIڣ)- &E 8P q4_O]]Ba0iO7/85&Vk&avoUa06g*%_P&X R$hژx;LVpΗiS=b yqJ*;p 54 I> 82TKML05-C>`bL<{3l#Alxb(ؑhE `pZfH|S:ȇ@[:5XpkȐ/LFL B8wS]nK|yJw=_,`m^GZE3Z k#v%);NF󿯓`wI]G8pFUuu@8GWףjdwhbڱvܫ{;hߏqvvvluc. Z$r vu0>w`{/ ~;:(p]}($(`<>*8uvUp 8 \bb'm_ n&+N\k7\; >plV ?p1wo?i n92P乄BK/<b wjpRAWyZ`%\1 W=ҟևs4ׇ *fAg0pS;r[: AZ.)B/%@'PcST0^q P.-R̨.4 S*Ċ$qlI\~7t.IENDB`PNG  IHDRxx9PLTE777***,tRNS`@ϟ Pp0dIDATx^;0 Ddv;ak9ؼ!I7Ƃ% eKfupy),< 3:c#@G]ԸNZk5ra;ЊBh,zD@2vNٕ8v J )1;5ā$Tٌ |P9o7;'poFS+6¡-'a^S045=o,9 _Ԟ7v&I"R(|]FKi'⦷- Ȯd/@tVkֹ۟L IbgS]w_=l㥡 Wxi6 Ui١5$V4PI]ȿ~|59X (Up*JR `^=P{.T96)<ݤIeg&UޞۡHlM0O*=BJWdK#+oK`ޤ֛1+71ı`XǿFݵvYw}0L!`d~C4P8|9쇁/i`:_'?  IEAvp[ z' 0"`T `C96$j%m)Djv]xPk\5U*ǀJnPEF*T!tU,*DJ`QE2gTa7Z߮P  yKJޒ-)&| Z&oKf:X$@ٰTIENDB`PNG  IHDRxx3PLTEtRNS@ `Ͽ0Pp3IDATx^ś q7 ?푎ZjX'_`CvZUN55n}9Ǫدnɱ]G]r9'ls$.`#Ơ^V{~p~6`Cgk2UJt[ZORzzwN>&NB2A[;Js3">E2ʍشă iH3YVיL=2prR.G|l17ɘk'KF^0e4] L3$WUׁEeTlh 1"e^RnB׻޵nڹ;/.GU.g\/[{Qty~*]Ji("u[^>zE%.RGX7l#7Gl:sWAAjw@Mj`Ԫ& [^!pQWE`Ԛ5> `N! F0.h2Uj,O7 KatX&UjX&Uj `P3&?x D ڒ2imYmh[fu^hsQuD;`)Qiƴr2uCb].5i׸kU=8UA+@aܰXeUB2VXU*e~en~);xޮPvB%lI)@K voⷖٛd3}[ɉi IENDB`PNG  IHDRxxmYIDATx왱LE)(((6$LC3 ɴ 7$ܐKWul y~a.x q1 z.q\V[pCXp{A `ጧplt$^XBphCx)b"v`yjƛ[-2](~ٵ-%wUܿ4LKM$naar]IENDB`PNG  IHDRxxmYIDATxױ0qTrMzm:7`Z#xeJ,O!}ѻW>#r!`+ca!s!2x~z$1SyLbxw𙂱eF#8xUI~ᝑ@aZ4T5ǂW] 0zȘBO'x[ 1z̈Dϥ[g X\Y]/C^{*{^yt9R6q-ph`s%xX{_X{_~~;]ނ+v~MoW~I>otQy 6h<#EO//n`i#Y3E<;Y,Xt]EQ,:\t`/Y,:,:`ы,X 6Xh@,Z,Z,Z,Z, ~K?_ݱP P_=5c[45x%x\pK&Pxb ayj[2} E4LBw$qW.7<;IENDB`PNG  IHDRxx3PLTEtRNSxP @0h`Xp(8HIDATx^[n0 |VKtUUU//5ԤPbpa=6ؼQMd[) 6h[`#£gpIos:=M^Am+`M#Sb%v[;r3a;~x4 V&d`mB5S"C*S6Xۼ1 0B#3 TP8 *nKTNҊP.TOBVA! `Sp@* fP9 6` *iV+l{U^R[J܊6I [GdH0M*, rUJO]ϖ626>9[#/r\[Ij;zJx`\ ,qnn6Zh#h\fEn 7M4Mlbp8 |N8o6~QLQ|5 W!?j^ZW|Zj׸ZjWZ Zj(Z#7ZCFZcUZdZsZÂZZZ#ZCc2\AFIJd?vJiYc(|L| 'uHIENDB`PNG  IHDRxxWPLTEx*tRNS߰ט@` Pp0].;IDATx^ś[ Ƙi[3'v 3Ծ; "%Unڡ cgtU{6wnsn&DM E6`muJ5@b*Zx#m+x Ui"Mh ֽM1}Fk۩ vJ'a!A5z"hGX$E'Ė3D m  n@{ȭ[8)mMfN67Ij}Izxt^ `yi.3Y/R*<~a{s`Ɠ_$zF٦uܖ&:t]k8=%,}7Iߤg͇6>ӄ6 k y7] 8_p$dX`0xJgZ$y$tk9SQ,*քa9c[IW*}JQ$EEġY YM=g 6Ieg>1CyrjR(A6Ce/ةx vK̀E碛{iM#`UYzv\""d 9?SmTLjCT6 2>U V\oWK*7>*GD/0h n/ w0 "Ipj7̹Zuh_gpIsv8_ݦQR*lFrcڍXiEɱG5>\Lhf=7S=zգTaLxPf e2%SL5.\)N`J)"`cL.m@oc]zx7vbS_*_u.0L;Ȭ`xjB[4ud0V'nK#xJ̟e>YEpM<9jpmL$BYq>)wG}rAk!g/Vnss8ُH"S4c*xsKV5ɴl/0k7MRl.d-ErlGNaUm|y$N|hr٫%x"u#v%u'u)v+uq-vU/5 5!6"5r#5d$2plAB(,D|ZKISv07`y=h6XB?B'_:X?#hCmT{L?+{`.[@Y/ _8PnJ[n/9 l%ł+NIQ Ra*_6.)ʳ-+_ )eڅ֥5ŵUVsV;ZVˍVV[V#VVV{VCV VӯVVc~+~B!4dGRߑDh (Z鏖%0ו(muIENDB`PNG  IHDRxx3PLTEtRNS`@0 pP+|IDATx^śێ N{H\m6~%lV:!TkOF~)#=Gu>=-t l} g?ޣpk3`udkw6a8INZ3p负fbjǐD+tw&U<.T~KcD`6P+PO!xʽ«ׁEj W؟E)|P% |C(`j0V p.Hr0&.)e%4`|ZL`kK/[A"{~Dqhzd(ς1<-ăבF0) V,0H&I (P>ir^7`pO<*0 wFìY'{ .JpO01!o)Ld0RG0A;`j0 ;#ZůnS\dL\sc Yz@U, OƲ-\B@[0\b/t\b0`{p;2%j m[7m܆\i3ۦZm͎"_M&6#ECTccr k.C..5ͮq.ͮꭚ1PZnڪɬZ笚#BZ`~mۜ[*\IJ쟤DI#gG쟖Ec:?*]QyIENDB`PNG  IHDRxxmYPIDATx!v8Gz!GrA35a [(hh(h_зo9xҌ"C H؇=3g8sƱdc]jK'm>خ ah!>rTx(8 WSaz.\8ީ z=:=6hq .s{3P|#ʉ9qE7E*N\t#uċ{g.hDgTPXx=ZK 1=0OW3K\_S옧ƽjzqgý:F|*Jj>CVpK~ig2*}; YS= .283-kOloЁ~j4q+얂 B4fԫ((!/F^.-1x`g$.Zε{A5߮_ Fycc{[wRWH>=qF/ {K=Nߎ{q {+Iq9؛#%걏f"&0`J>2Ms W`w38%94?[еjzp=_RoQEIy 2޾xA$o#zpw+~y`G0/Oy4]`:e_ڵo{,B[)7ƥ ,pGm8+{p+En>ηKz:.OY Æi ՝s d~@]?8&+ !=XMp\PՃ;⌴+1y`& ,-GaR,1NP:;u sd +*δx`gdLEd: =4Gt̨4>቙d08œ:Omazp^Tۂsn \㱐NTG\0a"c1O`&6zmLp{|en'#|\qԪ lZ_(p eTn!K 'Wgc!kn0Z8A^_f7M^q4kj\Xk̀5Ysw=X5p`M\`M';\`d`͍NZJ-}<<k.qȣ͍En-fLvÊA 2ZFGZ gǰ Q–%%2>Y=ni?_.z7Y{v$ϮrA}wfF;?7z' ::˧Ci.`9tA}*7IE\RP>w>u3q!#ҌtwˉF?ӠvmxϦo)\8yg;|uw4-/y 7l(~Șѡf].SykB w3B P  B83l8WBNRt?`g `IȎa/p#p1F!k|gZ `|aTo,!׳.#ӶIa;[gYiAʝp'Ϙ<p;dF-'qcgls-F LRM\/xF$@"{0 p!_cZ_c"@&Tߚ5Zp+$!)&T ^Ðb*}>C n0dFA?= nS| 1.6Lwu 7_e עb4"-Uwj(ҁ@mH>U-c3j~15%oNaȀz' d)?a~9m|}j}MEMܘ& 6)EITicrvȐ%!Z?j ^ZK|Zj˸Z jKZcm@rHk[F2sZGjmWwnJ ~$%ԏ?vJh0]`S;>R&TV}IENDB`PNG  IHDRxx3PLTEtRNS@ `ϯp0POIDATx^˶ E*_{']Vh 9PwsBfYo0KF55l 6Pe_ֻ*|uqX =X7i749sn}N/gcz;a|i>U?1U7xzҏ^*[S=]XQNG"tV_ lV kAAH床M Wǵp7,i+Ưי9 ȶBfd'PGnTF0sӔ^ bPjR.GRHr;wT۸K50z(?UuQMnb8V|t* l/VT|!#kUjkg2\~uط RV;0+8\t9\hdV}N|ۂ|^M{9/cP)Pzx ު-x8j=aYj "5b< 9` }|[-nd2#? J0\H w#k:>zBvXw io?֜\imYmh[fU^hsQuD;`)Qiƴr2uCb].5i׸kU=8UA+@aܰXeUB2VXU*e~YeάnR);xSB+4-)%% ZRM8#~LLt?IENDB`PNG  IHDRxxmYpIDATx1:aXK` .%SAIt)-Wy33{IG Y.\vd'GT16XxK_i~;xCe, oTbeȿ#Xbg%Ž \rp+WÙyr:#g%#zZi7RsDO,05=Nop@ƻ9"6%QaG,e pۍ#9ríZ, fMq|pθ_ r':1B[;Ƅ>ˡ's|W .|᜹|\`#q-E(87!7W2o@V0ςs,z %|BwCV27tgu.s5IuKWul y~a.x q1 z.q\V[pCXp{A `ጧplt$^XBphCx)b"v`yjƛ[-2](~ٵ-%wUܿ4LKM$nalIENDB`PNG  IHDRxxmYRIDATxA#!ᖀ>) 8@BK$LfI U|Ga9%llxXSnc%rox!xD`|" LjRE#N9 `3sb$U¾l.W`C$x&R["Ԙ`K5r=sWZh޹ZȚ;I3`GGVgV{HE}@{ Z s |AK#`mpBSssQ`D%X0T_D-X0?e]Uw TԃW˿ԃa\?O>p./x.0` S7ฃ3Viv Ol]X& <<<<XoI?O{w@ 0&  3n.6'bZ{iwi!/  պ O{p^lA]BNC?D0E!vL7$qT-}IENDB`PNG  IHDRxx3PLTEtRNSx P@0hX8`pH(4NIDATx^˖  ޣIO;;#还(rrvI⃍KC6ؘ҂AKбG5!.܃uͫsŹ5ߏvwk?6`|Zˇr?1uϤXJXQkM͌3Icc.z-EAҖ # qdafNdӟIRokAcS\1|krkǖ2{Hr'wUz nE$~*٩iM=DB3Q \tr_Rt~]=9hjXBRa?+*;NY\E1ʡ&okH09c^nz* yȜ>f9즁t|2NU,0ѿ~_0ar56 ض;>x"@{^SQ/氫 vRD]®a* ^ + װR=9Վk@AܠPmUF2TYjE~QmΨnP+;yҸB+4#)u$% FRC8#~L>Lt6^#TrIENDB`PNG  IHDRxx3PLTEtRNS@ `ϯp0POIDATx^ p O{64*n8~c0[$>`:gj>x4lJ OSMLos)C`1L`>g ̹9?1\]v4i>r?1pޔb{zٚ^Wr+Z EXQkd-n!r]O wk!7,@qyf}fo;f<'[m3@<7M뵀+&k (۱,չɝ6h Cg!cdcXJ CQ:yН;yKH>n. =X3 i߀`<XcdҒ--6mުH^ah/mT֋9(v:nюYccA9jvº]xXk\5U*ǠJnXEF*V!tU,*dJ`YE2gVa7U?]!  %% ZRM8#~LLtDVIENDB`PNG  IHDRxxmYdIDATxٱL@qJJJJAHdnhxv8~s#epQ3g)1$dQٓ, @4۹7`3GpLb|1a /…ÃpE_a ys*j%'x- %4IcNѐ#_Nľ[ S/ 1(D&r]O NPnXhE280L[њat pư+G2,6X֒#?aMnkS?OE ٝ({>dgW!3, 2i/r_pjK?'? Ȇ;"v~ _,`Zm:Es: {vW*d!Sq8w7{`$W`J8p٫,pϮgBG~łW! 5l8{ssgC®\`W[Xel&p3>~t|x_H- 욠 v \޿~zdtE)vUp 4bv~$D nu/A/}V؟&$UHWpnxnYtIڃg(RU]rKӨR0B,I7ْi?;H8IENDB`PNG  IHDRxx6PLTE***p&&tRNS@`ϟP 0p}jIDATx^K %ƿ$o(q7Х*Ȫ8\?+d`]ݺUoXf%GxY3UAcmpU!6ꢽL`/GMjB,zjDޭ h 2ۇ5&G,jBx1u"T|I9# bVWr$u&S6ug'DWw<>54Z5vm5LR` <2K)XxڅqڙXq.sVXqi>ZNq*}i]l&ij-x1g3!Ĉ'{0F`'wK' ;`Go-]aKvM.(P&l!*66/@=jbϸ5TO8@"7TȈUQA2.:BB,bTS}h]^WR%~_Wr2>8CIENDB`PNG  IHDRxx3PLTEtRNSx P@0hX8`pH(4NIDATx^ D @.MKvCOUă1lUm:ڔdIJ6j՜7a*jC=|?ZS][&֎:0UXs]iVì]R{4ؽ͛?[_'K[ xs ٓ~ѷU2zت{.Pk-&` d11HC<,O {kWiS י-TSsom:UٛU#b[Ẁ깩\'1Y\1BskC)\B\5NrK6 姒MuMjjt9\е*eEvpR-e.`w-. 鲿pxjd.{@  -_uΗG}TRJH/+z`WZc]ZT0-p|\#C S0 1`,6Ua_s5JH#H!a`H,E ,'@c7صzlʤ-em}h=Vʆ C{i^iGq퀍v:DYW‹uǺԤ].iWV9Ur*2bU XsbAVy$ U*e9 IA Ю@hhے>[RB%фCj;4ZqZ7Ӆf:ZL"4IENDB`PNG  IHDRxx6PLTEctRNS@ `pP0xIDATx^[ ;io3,J)F1vlQdlS2IfX჋ A9Ӭiy<Ǻa{֚F mڭ#mqv H>.Ǟz5m{#{W`*]zEOh'$HzZ s|,"a9xnIŐvܠ~pv$'6i~iuJgC/Aoƥ/Sbhʢ={JSbBҴ,vZؾ%Fpd7/d 1~bltUb湸eu>-9y} 6ybe|=Nr M0qB`3bF'"6m+ W w59vFbIH?Kl"WjZojm_|nJ!FZy4 >qb>b#&ݝ6{֜UkPz]=$qvϾw7mئM{U PIENDB`PNG  IHDRxxmYIDATx욱qJ@U%@ *\…d̄dᅄx7hlq oSHOv>ŇwWX$`rEN)vg2>0e/ leoXBb)x{F C, '(,ҏhjh4=ClZ -Ψh1ؿNpQ<@XO\t1QgjT1N(%*RN$!Wp%b B6ĒΐL4GÄ$ -"GB ҢvV晏PRwBnR(]z0k嵝C=Ytܒ Ң0ZnI}H- &~1G,lCNߪ"b%=ѳrpeH~ᜑ9>OLTDĜ{zs~-<>_ꦜ Luh~k]w@4woyXҝcw~ a\9As,3q& XߖsS,b;R/#?عem'6Gur? u8&ZnH;6#4+|P=Pofj__cƒ1a/X{:=5fCDbNz9*w{B#[ES/!?l0ՉQs@ w.uayޭдTBX~55MCLX/통A"{}xKvɎiQupa{ڴ "d \3#p+;o'ӸY13٣  j@R"/P. Ͷ:0w+tihVj)6,-VdtУeAv{}3WhGQ|m:c=oVDY_ېYcq[?;|- ]T91x @|f }ċ}fipcg[wF5@nY@r:JNSiy1M-qL\Z9r NACyAe–sC?\>,{p?y~l;m—i-4ɇzb)*5,=qsr C[?G盫KY][i!\uKEG9Vwc8Lܾk,R36x~Ƭ[),X 7Ah ,#A8jth +PB [l18tUN3GF`y!xdI 8*\zGKzF2DF12 0$F!hsaO?SM@mtKo`m\=`qv &qҶ5um|=/@HOvL0pl+F IR;إNTv\CaK!>5Uz%'( (JQҪH94WBR`4g%v#>WOR|#Zt7t, >} IENDB`PNG  IHDRxx6PLTEctRNS x@PX0h`8p(HgIDATx^[ M$$/{wf[F{mN#(A\a"+BhQXiwV5״AnRaejus~w=$7p Foaq{zvax4zۢFs=z֖vjO-u41-O 8_"ˋe fH[#)^?sw73a2s\nBdmÏij><3:[VXg-U@4] "4H"p1!MsB~ yC&N  Bgro$'&#C oHd,m#MϷ˛i? 7rhM/@M*t:/y8̛Hn=1s>տIo#JMXǡ5EY?Jo59*>paüfph~RKÙ_O\+ ҷ8ĻmpiӘl8pօ˜0L[6%%5OhkQHX w6$IN@n#-l̀Xb9>"Jng$|UKz1K ܽX@I ^k.q`"}gˈ>FNC1o: eq K5:Ԏt<{;%2os@ Чj6U:z2]\)$) %mSQ*-i*%qS)B"З""_/TnP]`TR* ZWj!Z?j^ZW|Zj׸ZjWZ Zj (Z-7ZMFZmUZdZsZ͂ZZ Z-ZMZmZJ繂')I{ *=;{hL1|L| *TIENDB`PNG  IHDRxx3PLTEtRNS@ `ϯp0PMs IDATx^[ے  -WvkO%6WͤUH)VrބBxw<4_'ZXDSuaik`--DvVꕬЖ6M -a\CR."CxC IO{dاft'w詑i,th 1+@èFI"l-RL^D!"2mp8Ѐlb.F_629>.Ȳmvu\G\CiN YT/?z\N/wMȵ%P?s2U%=XςUJ 5,5J( fj&d}:O`B3X2-gQvXw#D3 k,1eB`N`pex$N`(8׸ IKTxxuBXA*xpz's^zUYbd-AKN9f]~ #+Z/,~/3YT"q'P-éB:""V"7X܂¦jjˀB 8N8W3o#eI_e pW8#LnPO"B` g%D<&u y3I?2NHϠ+R^7lG3=^zU)]S|9u0w(\xE[ RՋ6NZ:(S9yym̂9QJ7 hEp/!#j7f]FRO _~-bEQnTQ4ǏfI6#,mRS07?̩ڑ-*96T٢nȜ2%溤_|ЈxгxۂҠΜ-YF*XrYD 9?x5ËJb_M0^oGH?nxW<"_IB E9oqpLoξvH(xDդ+T G[kgX{$[w||o9$1.Ş[y(%˕*G\O p5ű[,JJRla6m5ki㷩ȈjRlS]6xm I܎"^8`_`XF @pp!!Ylܑ"sZ㼀G<Ć=6CASSһV\W.+o\C|:X>pBq`(FnB  5Hjt.԰`PF`C s?~=b+!R̕`p_; *2e:y.XE_zIENDB`PNG  IHDRxxcPLTE***777___EEEzzzRRRmmmytRNS`@ϟ߿P 0p,NIDATx^Ң0 EE}S~rY3,L[>'w3$]9NjjVda|XiyR/Tz೮ dɚGQz-Q[m:BAkrORQpS]d`"+v*`%`%j0[Z+b֘ ͱ3 3raVbbf҉:kQc>3SSyC\ "jfY.pـc >言gˉcVȔ. kK(\9[V`b[beb[ӟ4Ii:_TlkT(~=6Mq=ZU`t7Tl '[ǥƆf:nv 6D5x 2Wc+ZfSs177<}hW岸NDQ=>3X=D+"Q~7!!N-}#|fk_S7j+|b:z'qo5X;8; j1m[s$>km`^_iY>{Q[]i+E =¸b-yA <얪$>>r_Kq0|mT!Oצ+w';KSU^/5bP^FxyaV?uPl*WQ_[=oTDwg`hlxmz`s<.RhG3n;rl=+I\kD6g1MGX<=qZR Rb(R#7RCFcUdsf1ŭ@ЯԘ`(u WR/_;h%}. L'v}q+qIENDB`PNG  IHDRxx3PLTEtRNS`x P@0hX8pH(4OkIDATx^[v  YNRKҮ>8M`rl:Zh،Q5M*wϠ.sN,ݨye4PG ~hdG`dImiw0{~B `u)J`j O3%3hiwwt&s.kw Q"gܖrR0)m6wKd~s4Ѐla.FMi2s|d5ώ{?2*I5OX'asEWnUa װ4+>eFSK4ZT5Nk eX˜*RHXm!{˺?Ù-pmﰺCt=\98 `wಅ> W03#\ pԾapI`K9R xJwMxc KCh=G0WiҚg}3̂.{š7p̛w'k;LVYÎT$+F""оMi l:}y-x'0-(lJw vJqlF`hB`@0HL9\PpSݧfГkEE~ywu .x˵̴L]8Hr4ǻnbD EventDataACoData+KName ObjectMSHTML A9oData!KNameCounter   ObjectMSHTMLCounterTEMP>P.S_ֱc&jD EventDataAIoData1KNameObjectXSSFilter  $ObjectXSSFilterTEMP4dW#X>@|D EventDataAIoData1KNameObjectXSSFilter A3oDataKNameType  $ObjectXSSFilterTypePRVAL4Microsoft-PerfTrack-MSHTMLOPCOT00win:Startwin:StopLEVL@P(win:InformationalTASKde~U@K s~g$!*EB1!Ei%*-IZ4mЎH3@C3iV/`x):WL6m}z{)I '|X?ZzrA^8mM NavigationScrollRedirect,XSSFilter-RuleCheck,XSSFilter-SanitizeHMshtml_TouchSelection_InvocationLMshtml_TouchSelection_ManipulationDMshtml_TouchSelection_DismissalKEYWh1defunct(win:ResponseTimeEVNTeex  fe  ggx( hg( iixD kkx` lk` mmx| nm| xxx yx zzx {z ||x }| ppWEVT0<  @LCHAN`X DMicrosoft-JSDumpHeap/DiagnosticTTBLTEMP @LW [U5D EventDataA5oDataKNameIndex A5oDataKNameCount AEZ ComplexDataKNameValues 8IndexCountValues IdSizeAddressTypeNameIdFlags$AttributeCountEdgeCountTEMPd@LW [U5D EventDataA5oDataKNameIndex A5oDataKNameCount AEZ ComplexDataKNameValues  IndexCountValuesTypeValueTEMP<0@LW [U5D EventDataA5oDataKNameIndex A5oDataKNameCount AEZ ComplexDataKNameValues 4HIndexCountValues(RelationshipTypeTargetTypeNameIdValueTEMPl@LW [U5D EventDataA5oDataKNameIndex A5oDataKNameCount AEZ ComplexDataKNameValues IndexCountValuesStringEntryTEMP @LW [U5D EventDataA5oDataKNameIndex A5oDataKNameCount AEZ ComplexDataKNameValues p IndexCountValuesDoubleEntryTEMP`Y";MFjD EventDataAIZ ComplexData#KNameSettings , P x   (SettingsVersion$MaxStringLength(IsTypeNamePrivate8IsEdgeStringValuePrivate8IsEdgeNumberValuePrivate@IsAttributeStringValuePrivate@IsAttributeNumberValuePrivateTEMP`be^ hXGhD EventDataAGZ ComplexData!KNameSummary $@\SummaryHrResultNodeCountEdgeCount$AttributeCountNumberCountStringCount(RundownDurationMSPRVADMicrosoft-IE-JSDumpHeapOPCOx100(win:Infowin:Startwin:StopLEVLTASKA A#DkJZC橴oO͆,D qIG=X;XE XlEiuTFlAG 9I9?@ABCD E F GVMAPL,+HIJKLMdNBMAP<t*   @VMAPD*OPQRSTVMAP|+ UVWXYZ[\] ^ _ ` aVMAP\p- bcdefghijVMAPl$. klmnopqrs t uVMAPT-vwxyz{|}VMAP,.~VMAP$.VMAP$,VMAP$x/VMAP\/ VMAP/     VMAP4)VMAPD,@CanvasCommandListFlushReason4CollectibleResourceMap,CollectionReasonMap0CollectionRequestMapdDirectManipulationDragDropConfigurationTypeMapTDirectManipulationDragDropStatusTypeMapPDirectManipulationInteractionTypeMapDDirectManipulationStatusTypeMapHDoubleTapReasonInterestingTypeMapEBudget@EdgehtmlExtensionsScriptType EventPhaseMap8EventPropagationStatusMap@FormatDetectionEntityTypeMap<GestureConfigurationTypeMap@HostPaintUpdateContextTypeMap0ManipulationStateMap@MutationObserverEventTypeMapDPrerenderDeferredLoadingTypeMap@PrerenderTerminationReasonMap$ScriptGCTypeMap,SelectorQueryTarget0TargetSourceMethodMap TimerTypeMapHTouchDiagnosisGenericInfoTypeMap,TouchStatusTypeMap4WebPlatStorageCategory8WebPlatStorageHandleType4WebPlatStorageRpcMethodTTBLeVTEMP 0D T?^HRmLD EventDataA1oDataKNameDOC A7oDataKNameMarkup 11 DOCMarkupTEMP2$#(\7ލNn|D EventDataA1oDataKNameDOC A7oDataKNameMarkup A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom X3d3x3333 DOCMarkupleft toprightbottomTEMP5 ?!O9PeWAPD EventDataA1oDataKNameDOC A7oDataKNameMarkup A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom AGoData/KNameEventContextId  D6P6d6t666 6 DOCMarkupleft toprightbottom$EventContextIdTEMP 7´KQ]WD EventDataA3oDataKNameHWND A5oDataKNameFlags 77HWNDFlagsTEMP8k:ZASD EventDataA3oDataKNameHWND A5oDataKNameFlags AGoData/KNameEventContextId  $949 D9HWNDFlags$EventContextIdTEMP4:S_nQ~o^ D EventDataA3oDataKNameView A=oData%KName grfLAYOUT \:l:ViewgrfLAYOUTTEMP;/:%4Z[PjH3I0D EventDataA3oDataKNameView A=oData%KName grfLAYOUT AGoData/KNameEventContextId  ;; <ViewgrfLAYOUT$EventContextIdTEMP<N*[lB;eD EventDataA1oDataKNameDOC A5oDataKNameFlags = = DOCFlagsTEMP@>JX F65{D EventDataA1oDataKNameDOC A5oDataKNameFlags AGoData/KNameEventContextId  |>> > DOCFlags$EventContextIdTEMPT?)#]:nM%obD EventDataAAoData)KName AddressName h?AddressNameTEMPLh@nA̟GXlDD EventDataAAoData)KName AddressName AGoData/KNameEventContextId  @ @AddressName$EventContextIdTEMPAOqv\HOf^bD EventDataA9oData!KNameThisPtr A1oDataKNameURL AAThisPtr URLTEMPtB/S*z7_8GD EventDataA5oDataKNameCDoc* A;oData#KNameCMarkup* A1oDataKNameURL  C0CHCCDoc*CMarkup* URLTEMPD|hAb]Pѧ~uțD EventDataA5oDataKNameCDoc* A;oData#KNameCMarkup* A1oDataKNameURL AGoData/KNameEventContextId  DE E ,ECDoc*CMarkup* URL$EventContextIdTEMPF\%MXFC!D EventDataA9oData!KNameThisPtr A1oDataKNamePCL @FTFThisPtr PCLTEMPGZnB[^":m/ D EventDataA7oDataKNamedwCode A5oDataKNamedwPos A5oDataKNamedwMax A3oDataKNameText GHH$HdwCodedwPosdwMaxTextTEMP H%'=Y 0!( D EventDataA1oDataKNameDOC A7oDataKNamedwCode  I,I DOCdwCodeTEMP JY- &T7R:ܪ-D EventDataA5oDataKNameFlags A3oDataKNameText ,JPgXtD EventDataA9oData!KNameHTMPOST A5oDataKNameFlags A3oDataKNameLine A7oDataKNameOffset @STSdStSHTMPOSTFlagsLineOffsetTEMPHlTDž^R&"?u YD EventDataA9oData!KNameHTMPOST AMoData5KNameOneExec2PT3ST4Run TTHTMPOST(OneExec2PT3ST4RunTEMPU'kPl|\ǿx6* D EventDataA9oData!KNameHTMPOST A3oDataKNameZero UUHTMPOSTZeroTEMPVg>GS@k`D EventDataA9oData!KNameHTMPOST A5oDataKNameError VVHTMPOSTErrorTEMPXLM7_ŋI D EventDataA7oDataKNameLength A7oDataKNameScript A;oData#KNameIsInline  DXXX lXLengthScriptIsInlineTEMPHhY~F~%죇Vr? / D EventDataAAoData)KName SourceIndex AEoData-KName NumElemsAdded YYSourceIndex NumElemsAddedTEMPZIxVnD EventDataA7oDataKNameMarkup A3oDataKNameZero ZZMarkupZeroTEMPl[.nLeW_ )Yě.XD EventDataA7oDataKNameMarkup [MarkupTEMP X\W3h_2T|-D EventDataA7oDataKNameMarkup A/oDataKNameHR \\Markup HRTEMP$p]U^8nDtpD EventDataA7oDataKNameMarkup A=oData%KName TravelLog ]]MarkupTravelLogTEMP^@wmtUř`D EventDataA5oDataKNameZero2 A5oDataKNameZero1 ^^Zero2Zero1TEMP\_Q~]rU^e4ç?zpTD EventDataA3oDataKNameCDoc p_CDocTEMP4X` (z0R֞D EventDataA3oDataKNameCDoc AGoData/KNameEventContextId  ` `CDoc$EventContextIdTEMPlbuؘ\*)T~f0D EventDataA;oData#KNameCOleSite A5oDataKNameCLSID A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom bb cc(c8cCOleSiteCLSIDleft toprightbottomTEMPe5c]P’6D EventDataA5oDataKNameCView AOoData7KNamefSynchronousRedraw A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom AOoData7KNamefInvalChildWindows AAoData)KName fPostRender XfhffffffgCView,fSynchronousRedrawleft toprightbottom,fInvalChildWindowsfPostRenderTEMPi-ƵfPpcYuamD EventDataA3oDataKNameHRGN A9oData!KNamedwFlags A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom A=oData%KName NoUpdSink iiiiiijHRGNdwFlagsleft toprightbottomNoUpdSinkTEMP,kNzzWꐨ(\OD EventDataA=oData%KName fParseNow A7oDataKNameLength A7oDataKNameScript hkkkfParseNowLengthScriptTEMP4l!IWe D EventDataA7oDataKNamewindow AEoData-KName FlagsOrResult llwindow FlagsOrResultTEMP m6/Z*~54D EventDataA3oDataKNamezero A5oDataKNamezero1 mmzerozero1TEMP,n= ZKJQU$;?iD EventDataA?oData'KName CHtmPrePtr A7oDataKNameObject  n oCHtmPrePtrObjectTEMP$oOVBHD EventDataA?oData'KName CHtmPrePtr A5oDataKNameFlags  p(pCHtmPrePtrFlagsTEMPpC;:KQʏw`D EventDataA?oData'KName CXmlPrePtr pCXmlPrePtrTEMP,qCOUD EventDataAAoData)KName CImgTaskPtr A7oDataKNamecbRead qrCImgTaskPtrcbReadTEMP(rֿ+HUG/` 'D EventDataAAoData)KName CImgTaskPtr A5oDataKNameFlags $s@sCImgTaskPtrFlagsTEMP$ tP@9wUs\S?D EventDataAAoData)KName CDwnTaskPtr A3oDataKNameZero HtdtCDwnTaskPtrZeroTEMP=D EventDataA9oData!KNameStorage A1oDataKNameKey \pStorage KeyTEMP4Ts(l]9їID EventDataAEoData-KName StorageHelper A7oDataKNameDomain | StorageHelperDomainTEMPTOVFI]\l 9{onD EventDataAMoData5KNameStorageListHelper h(StorageListHelperTEMPЈdvOR_QŶ, D EventDataA5oDataKNameThunk A7oDataKNameGrfDex A5oDataKNameZero1 A5oDataKNameZero2  0DTThunkGrfDexZero1Zero2TEMPP%^`T)ЭuzD EventDataA5oDataKNameThunk A/oDataKNamehr A7oDataKNameDispID A=oData%KName Versioned (Thunk hrDispIDVersionedTEMPKqEȧ[M%֖D EventDataA5oDataKNameThunk A7oDataKNameDispID 0@ThunkDispIDTEMP&*E_XFn D EventDataA5oDataKNameThunk A7oDataKNameDispID A9oData!KNameDerived A/oDataKNamehr ThunkDispIDDerived hrTEMP,y@M^ɯ T @ D EventDataA7oDataKNameVTable A?oData'KName MethodType $8VTableMethodTypeTEMP<0-Y#W<&.D EventDataA;oData#KNameInstance ACoData+KName OptionalArgs XpInstance OptionalArgsTEMP,d*6\!D EventDataA7oDataKNameParser A?oData'KName ParserType ParserParserTypeTEMP`LKu[2rdw\D EventDataA7oDataKNameParser A?oData'KName ParserType A=oData%KName ParseType A1oDataKNameURL A;oData#KNameIsInline  ē ParserParserTypeParseType URLIsInlineTEMP+fu]T[~D EventDataA7oDataKNameParser A?oData'KName ParserType A=oData%KName ParseType A1oDataKNameURL A;oData#KNameIsInline  AGoData/KNameEventContextId  t Ȗ ParserParserTypeParseType URLIsInline$EventContextIdTEMP,ؗGU7hFD EventDataA;oData#KNameTreeNode A;oData#KNameNodeType TreeNodeNodeTypeTEMPP5/7TзFD EventDataA;oData#KNameTreeNode A;oData#KNameNodeType AGoData/KNameEventContextId   TreeNodeNodeType$EventContextIdTEMPJ[l8JUmFD EventDataA9oData!KNameElement A3oDataKNameZero КElementZeroTEMP<&v]< F'D EventDataA5oDataKNameCache A5oDataKNameIndex CacheIndexTEMP ȜļF S]h$pD EventDataA3oDataKNameView A3oDataKNameExit ViewExitTEMPOk}S_=TD EventDataA3oDataKNameView ViewTEMPSSEieVD EventDataA3oDataKNameView AGoData/KNameContextElement A5oDataKNameFlags A=oData%KName MessageId A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom Ԡ (View$ContextElementFlagsMessageIdleft toprightbottomTEMPc&X_ZfyD EventDataA3oDataKNameView A1oDataKNameHTC $4View HTCTEMP  z]#ZxD EventDataA3oDataKNameView A5oDataKNameNodes ,<ViewNodesTEMPtS)S)g_3D EventDataA3oDataKNameView AGoData/KNameUniqueSubtrees AIoData1KNameUpdatedSubtrees View$UniqueSubtrees$UpdatedSubtreesTEMPH 3YkU:D EventDataA1oDataKNameDoc A=oData%KName MessageId A=oData%KName PointerId T`x DocMessageIdPointerIdTEMP$̛ r)[w^D EventDataA=oData%KName EventType 8EventTypeTEMPا𳺸T2ᴆW| RD EventDataA1oDataKNameURL  URLTEMPh?/W6(^D EventDataA/oDataKNameHR A?oData'KName CHtmPrePtr A=oData%KName fDataPend A?oData'KName fSuspended A7oDataKNameObject  0 L HRCHtmPrePtrfDataPendfSuspendedObjectTEMPp@>V m1D EventDataA9oData!KNameCWindow A7oDataKNameMarkup A=oData%KName EventName ԫCWindowMarkupEventNameTEMP@1y\Hn@Вy D EventDataA/oDataKNameHR A?oData'KName CXmlPrePtr A=oData%KName fDataPend A?oData'KName fSuspended Э HRCXmlPrePtrfDataPendfSuspendedTEMPpU\37BK]VffPD EventDataA/oDataKNameHR  HRTEMP p,3Sc\| Ap D EventDataACoData+KName RenderTarget AUoData=KNameTargetSurfaceBaseType ASoData;KNameTargetSurfaceSubType <l RenderTarget0TargetSurfaceBaseType0TargetSurfaceSubTypeTEMP433Y#3^EdD EventDataACoData+KName RenderTarget H RenderTargetTEMP@ *p'ʋ]9?=f|D EventDataA9oData!KNameImgInfo A9oData!KNameImgTask AEoData-KName ImgCacheEntry A5oDataKNameWidth A7oDataKNameHeight AGoData/KNameCompressedSize A;oData#KNameBitCount AMoData5KNameChromaSubsampling A1oDataKNameURL ̴$8\tImgInfoImgTask ImgCacheEntryWidthHeight$CompressedSizeBitCount(ChromaSubsampling URLTEMP }tUxD EventDataAEoData-KName ImgCacheEntry A9oData!KNameImgInfo A?oData'KName FrameIndex A9oData!KNameImgBits AAoData)KName ImgBitsSize A5oDataKNameWidth A7oDataKNameHeight A;oData#KNameBitCount ACoData+KName IsSolidColor AEoData-KName IsTransparent lй(H ImgCacheEntryImgInfoFrameIndexImgBitsImgBitsSizeWidthHeightBitCount IsSolidColor IsTransparentTEMP| dm©YyA?JD EventDataAEoData-KName ImgCacheEntry A;oData#KNameDestLeft  A9oData!KNameDestTop  A=oData%KName DestRight  A?oData'KName DestBottom  AIoData1KNameScaledSizeWidth  AKoData3KNameScaledSizeHeight  A?oData'KName TranslateX  A?oData'KName TranslateY  A9oData!KNameOpacity A5oDataKNameTiled AMoData5KNameUnscaledSizeWidth AOoData7KNameUnscaledSizeHeight h ̿ 4 P l ImgCacheEntryDestLeftDestTopDestRightDestBottom$ScaledSizeWidth(ScaledSizeHeightTranslateXTranslateYOpacityTiled(UnscaledSizeWidth,UnscaledSizeHeightTEMPT!hO W次6r]fD EventDataAEoData-KName ImgCacheEntry  ImgCacheEntryTEMPs=YSbζJXQ.D EventDataA9oData!KNameDwnInfo A?oData'KName HitDwnInfo AOoData7KNameIsHitDwnInfoActive A1oDataKNameURL h|DwnInfoHitDwnInfo,IsHitDwnInfoActive URLTEMP`rL_^w]iZD EventDataA9oData!KNameDwnInfo tDwnInfoTEMP0`۪nV |N갭D EventDataA9oData!KNameDwnInfo AAoData)KName DecodeFlags DwnInfoDecodeFlagsTEMPsQ+*Bi]D EventDataA;oData#KNameCurrentX A;oData#KNameCurrentY A7oDataKNameDeltaX A7oDataKNameDeltaY XpCurrentXCurrentYDeltaXDeltaYTEMPqhXtSD EventDataAKoData3KNameTimeSinceStartUs AQoData9KNameExpectedFrameTimeUs AKoData3KNameLastScrollTimeUs 8`(TimeSinceStartUs,ExpectedFrameTimeUs(LastScrollTimeUsTEMPN].gg4D EventDataA=oData%KName Allocator A?oData'KName Allocation A3oDataKNameSize 8AllocatorAllocationSizeTEMP|($ EX)D EventDataACoData+KName CurrentRound AGoData/KNameCallsToProcess  AEoData-KName CurrentTimeMs   CurrentRound$CallsToProcess CurrentTimeMsTEMPtH-.Sqb fD EventDataA7oDataKNameObject A9oData!KNameTimerId A9oData!KNameDeltaMs A;oData#KNamePeriodMs AEoData-KName CurrentTimeMs   0DX pObjectTimerIdDeltaMsPeriodMs CurrentTimeMsTEMP@lHz\;%D EventDataA7oDataKNameObject A9oData!KNameTimerId A9oData!KNameDeltaMs A;oData#KNamePeriodMs AEoData-KName CurrentTimeMs  A5oDataKNameFlags A;oData#KNameCallback 4H\p ObjectTimerIdDeltaMsPeriodMs CurrentTimeMsFlagsCallbackTEMP, tS}e]!T6F5$pD EventDataA7oDataKNameObject A9oData!KNameTimerId A9oData!KNameDeltaMs A;oData#KNamePeriodMs AEoData-KName CurrentTimeMs  A5oDataKNameFlags A;oData#KNameCallback A?oData'KName Visibility  A?oData'KName TimerRound (<Pd | ObjectTimerIdDeltaMsPeriodMs CurrentTimeMsFlagsCallbackVisibilityTimerRoundTEMPJ#[x[XfݰMdD EventDataACoData+KName WindowObject  WindowObjectTEMPHZ@y\#K3LD EventDataACoData+KName WindowObject A-oDataKNameX  A-oDataKNameY  A5oDataKNameFlags AGoData/KNameDocumentObject A[oDataCKNameRelativeToLayoutViewport  A?oData'KName SameMarkup  AGoData/KNameClipToViewport    ( L WindowObjectXYFlags$DocumentObject8RelativeToLayoutViewportSameMarkup$ClipToViewportTEMP|-c QяE0pD EventDataA7oDataKNameObject AEoData-KName CurrentTimeMs  A9oData!KNameDeltaMs ACoData+KName BeatPeriodMs AMoData5KNameRefreshMultipleUs  (HObject CurrentTimeMsDeltaMs BeatPeriodMs(RefreshMultipleUsTEMP8"3yR<~ޟD EventDataA7oDataKNameObject A5oDataKNameValue   ` tObjectValueTEMPbPj XD EventDataA7oDataKNameObject $ObjectTEMP4=|NP5pk7TD EventDataA3oDataKNameName NameTEMP4i"}ZLlD EventDataA3oDataKNameName A=oData%KName StartMark A9oData!KNameEndMark A;oData#KNameDuration   NameStartMarkEndMarkDurationTEMPttIJhU*whFfD EventDataAEoData-KName MediaEngineID  MediaEngineIDTEMP,|Ye5R.{ D EventDataAEoData-KName MediaEngineID A3oDataKNameTime   MediaEngineIDTimeTEMP<"}`Xf9 D EventDataAEoData-KName MediaEngineID A;oData#KNamehrResult  MediaEngineIDhrResultTEMP,[l^[yCt D EventDataAEoData-KName MediaEngineID A3oDataKNameRate   , MediaEngineIDRateTEMP\뾖_zwމ$D EventDataAEoData-KName MediaEngineID A=oData%KName majortype A9oData!KNamesubtype  MediaEngineIDmajortypesubtypeTEMPO ]YǤb29D EventDataAEoData-KName MediaEngineID A7oDataKNameformat A5oDataKNamewidth A7oDataKNameheight ACoData+KName frameratenum ACoData+KName framerateden Ddx MediaEngineIDformatwidthheight frameratenum frameratedenTEMPHX1 W¹FD EventDataAEoData-KName MediaEngineID AAoData)KName numchannels AEoData-KName samplespersec AEoData-KName bitspersample  MediaEngineIDnumchannels samplespersec bitspersampleTEMPP,W 89D EventDataAEoData-KName MediaEngineID A?oData'KName sampletime  AEoData-KName dataPresented   MediaEngineIDsampletime dataPresentedTEMP8:K\Yn|[jD EventDataAEoData-KName MediaEngineID A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom A?oData'KName sampletime  AAoData)KName processtime    MediaEngineIDleft toprightbottomsampletimeprocesstimeTEMP$E薼X^frxy2D EventDataAEoData-KName MediaEngineID A7oDataKNamereason A?oData'KName sampletime  AAoData)KName processtime   ( MediaEngineIDreasonsampletimeprocesstimeTEMP((Q-PUY;YD EventDataAEoData-KName MediaEngineID A1oDataKNamelag  @ ` MediaEngineID lagTEMP#W0\Z&[yHD EventDataAEoData-KName ScriptContext A?oData'KName FunctionId A9oData!KNameUndefer    ScriptContextFunctionIdUndeferTEMP$yX{r-D EventDataA;oData#KNameTimerMan A3oDataKNameInfo  $TimerManInfoTEMP$~>rгQ1su=@D EventDataA=oData%KName Presenter A-oDataKNamex A-oDataKNamey A5oDataKNamewidth A7oDataKNameheight  $,4DPresenterxywidthheightTEMPјdRy?2ު^D EventDataA=oData%KName Presenter PresenterTEMP4 ncN\efGD EventDataA=oData%KName DestRight A?oData'KName DestBottom    0DestRightDestBottomTEMP!NJV@ D]hD EventDataAGoData/KNameMediaElementId $MediaElementIdTEMPlKXKQxD EventDataAGoData/KNameMediaElementId AOoData7KNameTimeDurationInSecs  < `$MediaElementId,TimeDurationInSecsTEMPt ?W\5lzy~SD EventDataAGoData/KNameMediaElementId ASoData;KNamePositionInPercentage   $MediaElementId0PositionInPercentageTEMPL 2i$W`ܴ 4D EventDataAGoData/KNameMediaElementId A?oData'KName TimeInSecs    0$MediaElementIdTimeInSecsTEMP|HTUY_ӛ+D EventDataAGoData/KNameMediaElementId AYoDataAKNameMediaElementIdAttribute p$MediaElementId4MediaElementIdAttributeTEMPl4 SFQTl=pD EventDataAGoData/KNameMediaElementId AYoDataAKNameMediaElementIdAttribute AKoData3KNameUniqueDeviceName AOoData7KNameFriendlyDeviceName <$MediaElementId4MediaElementIdAttribute(UniqueDeviceName,FriendlyDeviceNameTEMP 8IT;QfO('D EventDataA9oData!KNameElement A9oData!KNameTooltip `tElementTooltipTEMP( A@V;eRTHw bcD EventDataA;oData#KNameDispNode A=oData%KName DispLayer A3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom ACoData+KName ElementDDTId   8 P ` l |  DispNodeDispLayerleft toprightbottom ElementDDTIdTEMP ~_[ YqFD EventDataACoData+KName WindowObject A=oData%KName IsPrimary A1oDataKNameURL   8  WindowObjectIsPrimary URLTEMP JXP],.=D EventDataAUoData=KNameAnimationClientObject A;oData#KNameTreeNode A7oDataKNameDISPID A?oData'KName ReasonCode AAoData)KName Description L(|((((0AnimationClientObjectTreeNodeDISPIDReasonCodeDescriptionTEMPL\*,FSĽFD EventDataAUoData=KNameAnimationClientObject A;oData#KNameTreeNode A?oData'KName ReasonCode AAoData)KName Description ***+0AnimationClientObjectTreeNodeReasonCodeDescriptionTEMP,^4.8\Rw)fD EventDataAYoDataAKNameAnimationInstanceObject A]oDataEKNameAnimationStoryboardObject A7oDataKNameDISPID ACoData+KName IsTransition  -L-- -4AnimationInstanceObject8AnimationStoryboardObjectDISPID IsTransitionTEMPh.׈ZQP,zD EventDataAYoDataAKNameAnimationInstanceObject |.4AnimationInstanceObjectTEMPP/E}Vk@IlD EventDataAKoData3KNameScrollbarLayerId d/(ScrollbarLayerIdTEMPP0UY,0W><D EventDataA5oDataKNameClsid A1oDataKNameUrl x00Clsid UrlTEMP 1 8T0LtVD EventDataA5oDataKNameClsid 41ClsidTEMPT2:T,_Z7(;D EventDataASoData;KNameTotalStoryboardCount A_oDataGKNameIndependentStoryboardCount |220TotalStoryboardCount<IndependentStoryboardCountTEMPp32eY.]D EventDataAIoData1KNameNumberOfUpdates AQoData9KNameNumberOfUpdateSkips 4,4$NumberOfUpdates,NumberOfUpdateSkipsTEMP @6M1|PFC2}yD EventDataAAoData)KName AnimationID AYoDataAKNameAnimationInstanceObject AQoData9KNameAnimationPropertyId ACoData+KName IsTransition  AIoData1KNameQPCScheduleTime  666 7 @7AnimationID4AnimationInstanceObject,AnimationPropertyId IsTransition$QPCScheduleTimeTEMP8(ϞQBVB<bD EventDataAAoData)KName AnimationID AYoDataAKNameAnimationInstanceObject A;oData#KNameTreeNode AWoData?KNamePreviousAnimationState L9h999AnimationID4AnimationInstanceObjectTreeNode4PreviousAnimationStateTEMP: g[$_ NfS*% `D EventDataAQoData9KNameCActiveScriptHolder A9oData!KNameCMarkup h>>,CActiveScriptHolderCMarkupTEMP?Oww.5TD EventDataAQoData9KNameCActiveScriptHolder A9oData!KNameCMarkup A/oDataKNameHR @,@@@,CActiveScriptHolderCMarkup HRTEMPH0A9a7^vk28D EventDataAMoData5KNameCScriptCollection A9oData!KNameCMarkup XAA(CScriptCollectionCMarkupTEMP(Bb^Se)c^D EventDataA=oData%KName CDispNode }D EventDataA9oData!KNameSBLayer ACoData+KName DCompSurface A5oDataKNameWidth A7oDataKNameHeight A=oData%KName AlphaMode A5oDataKNameFlags  ] ]@]P]d]|]SBLayer DCompSurfaceWidthHeightAlphaModeFlagsTEMP^]WsTبD EventDataA7oDataKNameObject AAoData)KName RectsLength A5oDataKNameRects ^^_ObjectRectsLengthRectsTEMP`q[3$8D EventDataA9oData!KNameSuccess A=oData%KName MatchType A1oDataKNameUri AAoData)KName TextContent AAoData)KName FileVersion A7oDataKNameRuleID  ha|aaaaaSuccessMatchType UriTextContentFileVersionRuleIDTEMP(cqlLxSBD EventDataA5oDataKNameCView ASoData;KNameElements Invalidated AOoData7KNameInvalidation Flags dctccCView0Elements Invalidated,Invalidation FlagsTEMP,fJ'2^Y/ (D EventDataA;oData#KNameDispNode AIoData1KNameNodeDescription A?oData'KName ReasonCode AMoData5KNameReasonDescription A=oData%KName DispNode2 AKoData3KNameNodeDescription2 AEoData-KName CandidacyCode fffg8gPgxgDispNode$NodeDescriptionReasonCode(ReasonDescriptionDispNode2(NodeDescription2 CandidacyCodeTEMP8i*SL`xlD EventDataA;oData#KNameDispNode AIoData1KNameNodeDescription AeoDataMKNameHasDependentCompositionEffect  AMoData5KNameHasRoundedBorders  ii i jDispNode$NodeDescription@HasDependentCompositionEffect(HasRoundedBordersTEMPTk؟L~/v^<KD EventDataA;oData#KNameDispNode AIoData1KNameNodeDescription A?oData'KName ReasonCode kkkDispNode$NodeDescriptionReasonCodeTEMP8nQ|RVfhYjD EventDataAOoData7KNameCHTMLCanvasElement A=oData%KName Operation AAoData)KName canvasWidth ACoData+KName canvasHeight A;oData#KNameDestLeft  A9oData!KNameDestTop  AIoData1KNameScaledSizeWidth  AKoData3KNameScaledSizeHeight  (oToloo o o o o,CHTMLCanvasElementOperationcanvasWidth canvasHeightDestLeftDestTop$ScaledSizeWidth(ScaledSizeHeightTEMPqF/]`D EventDataAIoData1KNameCGarbageTracker AEoData-KName Resource Type A7oDataKNameReason AMoData5KNameRequested GC Type A9oData!KNameGC Type @r"drl#r@#r#r$CGarbageTracker Resource TypeReason(Requested GC TypeGC TypeTEMP(lu8^b+Y ȅbD EventDataA=oData%KName EventType A?oData'KName EventParam AAoData)KName EventTarget A?oData'KName EventPhase AMoData5KNamePropagationStatus AQoData9KNameListenerUsesCapture  A?oData'KName FunctionId A7oDataKNameObject   v$v@v!\v!xv vv vEventTypeEventParamEventTargetEventPhase(PropagationStatus,ListenerUsesCaptureFunctionIdObjectTEMP y%[ W;&X1HhD EventDataA=oData%KName EventType A?oData'KName EventParam AAoData)KName EventTarget A?oData'KName EventPhase AMoData5KNamePropagationStatus AQoData9KNameListenerUsesCapture  A?oData'KName FunctionId A7oDataKNameObject  AIoData1KNameScriptContextId  zzz!z!{ ,{X{ t{ {EventTypeEventParamEventTargetEventPhase(PropagationStatus,ListenerUsesCaptureFunctionIdObject$ScriptContextIdTEMP|6>nqCP+0}D EventDataA=oData%KName TimerType AGoData/KNameCallbackCookie A?oData'KName FunctionId "}(}L}TimerType$CallbackCookieFunctionIdTEMP(%\2]ОD EventDataA=oData%KName TimerType AGoData/KNameCallbackCookie A?oData'KName FunctionId ACoData+KName TimeoutValue AIoData1KNameScriptContextId  " TimerType$CallbackCookieFunctionId TimeoutValue$ScriptContextIdTEMPH80I\g>TkD EventDataA=oData%KName TimerType AGoData/KNameCallbackCookie A?oData'KName FunctionId ACoData+KName TimeoutValue AIoData1KNameScriptContextId  AGoData/KNameEventContextId  "Ȃ ( LTimerType$CallbackCookieFunctionId TimeoutValue$ScriptContextId$EventContextIdTEMPMVP'ؙ?&D EventDataA=oData%KName EventType A?oData'KName EventParam AAoData)KName EventTarget ̄EventTypeEventParamEventTargetTEMP4goQ6(3":D EventDataA=oData%KName EventType A?oData'KName EventParam AAoData)KName EventTarget AGoData/KNameEventContextId  ܆ ,EventTypeEventParamEventTarget$EventContextIdTEMP<Ĉ~Ti0 坘@D EventDataA=oData%KName EventType A?oData'KName EventParam AAoData)KName EventTarget AMoData5KNamePropagationStatus ,H!dEventTypeEventParamEventTarget(PropagationStatusTEMPPى13Pī3[/D EventDataA=oData%KName EventType A?oData'KName EventParam AAoData)KName EventTarget AMoData5KNamePropagationStatus AGoData/KNameEventContextId  ̋! ,EventTypeEventParamEventTarget(PropagationStatus$EventContextIdTEMP 3S\X ,0D EventDataA7oDataKNameACount AGoData/KNameobjectInstance  A;oData#KNameproperty  AAoData)KName StringValue   <TACount$objectInstancepropertyStringValueTEMP0_\+}c$D EventDataA7oDataKNameACount A-oDataKNameA XlACountATEMP8d厘XW?c qD EventDataA3oDataKNameleft A1oDataKNametop A5oDataKNameright A7oDataKNamebottom AAoData)KName TouchTarget A;oData#KNameScenario ܑ̑ left toprightbottomTouchTargetScenarioTEMP7pw[dzOD EventDataA7oDataKName_fBusy A5oDataKNamefBusy    (_fBusyfBusyTEMPDqefYR0zܓD EventDataA;oData#KNameDispNode AIoData1KNameNodeDescription @XDispNode$NodeDescriptionTEMPxxg]"^;\LD EventDataAAoData)KName Current_URL A]oDataEKNamePrefetch_or_Prerender_URL Current_URL8Prefetch_or_Prerender_URLTEMP}?:QOǥD EventDataA?oData'KName MediaQuery A?oData'KName FunctionId AIoData1KNameScriptContextId   4MediaQueryFunctionId$ScriptContextIdTEMPHШNJOSJDD EventDataA?oData'KName MediaQuery A?oData'KName FunctionId AIoData1KNameScriptContextId  AGoData/KNameEventContextId   < X |MediaQueryFunctionId$ScriptContextId$EventContextIdTEMP$puM RQ #D EventDataACoData+KName FailureFlags A1oDataKNameURL  FailureFlags URLTEMP'-E}/1_-SD EventDataA7oDataKNameParser A7oDataKNameStream ̫ParserStreamTEMP\pv}PV/HQ;ZD EventDataA9oData!KNameManager A/oDataKNameID ACoData+KName WorkerObject AAoData)KName WorkerScope A1oDataKNameURL ԭ0Manager ID WorkerObjectWorkerScope URLTEMPTiHΦPŻR9D EventDataAAoData)KName MessagePort A5oDataKNameOwner A=oData%KName OwnerType MessagePortOwnerOwnerTypeTEMPhSs]X69=`D EventDataA?oData'KName RenderTask |RenderTaskTEMP$hZ [фD EventDataACoData+KName SuspendLevel A/oDataKNameHR  SuspendLevel HRTEMPԲ4xΚQ#D EventDataACoData+KName IsDocVisible AAoData)KName NotifyFrame  A/oDataKNameHR   0L IsDocVisibleNotifyFrame HRTEMP<4؝Z ՠ^D EventDataA9oData!KNameVisible AGoData/KNameIsDocInvisible   \ pVisible$IsDocInvisibleTEMPG/EQ?~*/D EventDataACoData+KName ElementDDTId AEoData-KName StyleProperty A;oData#KNameNewValue  8 ElementDDTId StylePropertyNewValueTEMP|JCbjR";?D EventDataA5oDataKNameCDoc* AKoData3KNamePrimary CMarkup* AGoData/KNameSource Context ȷP"CDoc*(Primary CMarkup*$Source ContextTEMPLu&zZ[KirD EventDataA?oData'KName FunctionId AIoData1KNameScriptContextId    <FunctionId$ScriptContextIdTEMP)[^\%CɃZD EventDataA?oData'KName FunctionId AIoData1KNameScriptContextId  AGoData/KNameEventContextId  к  FunctionId$ScriptContextId$EventContextIdTEMPлPhTAdrvhD EventDataAGoData/KNameEventContextId  $EventContextIdTEMP ?fP[{VD EventDataAOoData7KNameTargetElementDdtId A3oDataKNameType ASoData;KNameChangedAttributeName AIoData1KNameAddedChildCount AMoData5KNameRemovedChildCount  H#tؾ,TargetElementDdtIdType0ChangedAttributeName$AddedChildCount(RemovedChildCountTEMP,r{HRFŞlD EventDataAOoData7KNameTargetElementDdtId A3oDataKNameType ASoData;KNameChangedAttributeName AIoData1KNameAddedChildCount AMoData5KNameRemovedChildCount AGoData/KNameEventContextId   #4 \,TargetElementDdtIdType0ChangedAttributeName$AddedChildCount(RemovedChildCount$EventContextIdTEMPsH?R]X=JD EventDataA5oDataKNameWidth A7oDataKNameHeight AGoData/KNamePresenterWidth AIoData1KNamePresenterHeight AAoData)KName ScaleFactor  ACoData+KName DisableDComp A?oData'KName DCompState A9oData!KNameThisPtr  (HdWidthHeight$PresenterWidth$PresenterHeightScaleFactor DisableDCompDCompStateThisPtrTEMP |w1z].HD EventDataAOoData7KNameHrErrorDescription A9oData!KNameThisPtr A/oDataKNameHR  ,HrErrorDescriptionThisPtr HRTEMPDT.C2_m& ֳD EventDataAQoData9KNameWinErrorDescription A9oData!KNameThisPtr A;oData#KNameWinError ,WinErrorDescriptionThisPtrWinErrorTEMP̝J/[+=D EventDataAKoData3KNameErrorDescription A9oData!KNameThisPtr A/oDataKNameHR ,T h(ErrorDescriptionThisPtr HRTEMP@Tf+UR`D EventDataAIoData1KNameInfoDescription A9oData!KNameThisPtr |$InfoDescriptionThisPtrTEMP/mR^^9cxۃD EventDataAIoData1KNameInfoDescription AAoData)KName StringParam A9oData!KNameThisPtr <X$InfoDescriptionStringParamThisPtrTEMP{՘׼:R2rtMD EventDataAOoData7KNameWarningDescription AAoData)KName StringParam A9oData!KNameThisPtr ,WarningDescriptionStringParamThisPtrTEMP\iʨRRCߍD EventDataAOoData7KNameWarningDescription A?oData'KName DwordParam A9oData!KNameThisPtr ,WarningDescriptionDwordParamThisPtrTEMPL5sRT[g_\$D EventDataA5oDataKNameCDoc* AIoData1KNameBaseOpticalZoom  AWoData?KNameBaseOpticalZoomDefault  ACoData+KName HostDpiAware  A]oDataEKNameStaticViewportSizeApplied  AkoDataSKName AtViewportHasDeviceWidthOrHeight     , L CDoc*$BaseOpticalZoom4BaseOpticalZoomDefault HostDpiAware8StaticViewportSizeAppliedHAtViewportHasDeviceWidthOrHeightTEMP C[UU*~D EventDataA7oDataKNameCView* AQoData9KNameVisualViewportWidth ASoData;KNameVisualViewportHeight AQoData9KNameLayoutViewportWidth ASoData;KNameLayoutViewportHeight AIoData1KNameBaseOpticalZoom  A?oData'KName IsClamping  AMoData5KNameHasAtViewportRule  AWoData?KNameHasDeviceWidthOrHeight  A]oDataEKNameViewportControllerEnabled AWoData?KNameHasHorizontalScrollbar ASoData;KNameHasVerticalScrollbar AWoData?KNameUpdateUnitInfoZoomOnly   P t    $ X CView*,VisualViewportWidth0VisualViewportHeight,LayoutViewportWidth0LayoutViewportHeight$BaseOpticalZoomIsClamping(HasAtViewportRule4HasDeviceWidthOrHeight8ViewportControllerEnabled4HasHorizontalScrollbar0HasVerticalScrollbar4UpdateUnitInfoZoomOnlyTEMPAh)|#R+D EventDataA7oDataKNameCView* AQoData9KNameFixedLayoutWidthOld  AQoData9KNameFixedLayoutWidthNew  4 H tCView*,FixedLayoutWidthOld,FixedLayoutWidthNewTEMP$p vSѹjŽF@D EventDataA7oDataKNameCView* A=oData%KName IsEnabled   CView*IsEnabledTEMP| 8[;cY,J@D EventDataA1oDataKNameMsg A=oData%KName TimeStamp  A=oData%KName PointerId A9oData!KNameFrameId AAoData)KName PointerType A9oData!KNameScreenX A9oData!KNameScreenY A9oData!KNameClientX A9oData!KNameClientY AEoData-KName ButtonChanged AAoData)KName ButtonState ACoData+KName PointerFlags ( 4Ldx  MsgTimeStampPointerIdFrameIdPointerTypeScreenXScreenYClientXClientY ButtonChangedButtonState PointerFlagsTEMPxoXx]JBKD EventDataAGoData/KNamePreviousStatus AEoData-KName CurrentStatus AGoData/KNameTouchTargetPtr $$$PreviousStatus CurrentStatus$TouchTargetPtrTEMP:(V55KGapD EventDataA_oDataGKNameManualGestureConfiguration A=oData%KName PointerID AAoData)KName IsIHTThread  A]oDataEKNameCDMScrollableTouchTarget* $L d<ManualGestureConfigurationPointerIDIsIHTThread8CDMScrollableTouchTarget*TEMP+]rYȂbA &D EventDataAAoData)KName IsIHTThread A7oDataKNamemat_11  A7oDataKNamemat_12  A7oDataKNamemat_21  A7oDataKNamemat_22  A7oDataKNamemat_31  A7oDataKNamemat_32  AIoData1KNameCDMTouchTarget*        4HIsIHTThreadmat_11mat_12mat_21mat_22mat_31mat_32$CDMTouchTarget*TEMP$ZQUCW& 'r`D EventDataAQoData9KNameViewportOffsetWidth ASoData;KNameViewportOffsetHeight  A=oData%KName ZoomLevel  AkoDataSKName CDMScrollableTouchTargetHandler*  t  ,ViewportOffsetWidth0ViewportOffsetHeightZoomLevelHCDMScrollableTouchTargetHandler*TEMP(iWXn@XLD EventDataAQoData9KNameViewportOffsetWidth ASoData;KNameViewportOffsetHeight  A]oDataEKNameLayoutViewportOffsetWidth  A_oDataGKNameLayoutViewportOffsetHeight  A=oData%KName ZoomLevel  AkoDataSKName CDMScrollableTouchTargetHandler*  ( T   ,ViewportOffsetWidth0ViewportOffsetHeight8LayoutViewportOffsetWidth<LayoutViewportOffsetHeightZoomLevelHCDMScrollableTouchTargetHandler*TEMP|T 5 W b`D EventDataA5oDataKNameMsgID AkoDataSKName CDMScrollableTouchTargetHandler* |MsgIDHCDMScrollableTouchTargetHandler*TEMPgKWֆP D EventDataA?oData'KName FromStatus A;oData#KNameToStatus AWoData?KNameCDMTouchTargetHandler* L$DL$`xFromStatusToStatus4CDMTouchTargetHandler*TEMP0:.[cZh;D EventDataAAoData)KName GenericInfo A9oData!KNameThisPtr $GenericInfoThisPtrTEMPo¶6mY26܊D EventDataAAoData)KName IDispLayer* AooDataWKName"CDMCrossSlideDraggableTouchTarget* ,IDispLayer*LCDMCrossSlideDraggableTouchTarget*TEMP<UBXUh2D EventDataAAoData)KName IDispLayer* ASoData;KNamefIsDraggingRequested  AooDataWKName"CDMCrossSlideDraggableTouchTarget*  8hIDispLayer*0fIsDraggingRequestedLCDMCrossSlideDraggableTouchTarget*TEMP|R nΠ[rS4D EventDataAQoData9KNameViewportOffsetWidth ASoData;KNameViewportOffsetHeight  A=oData%KName ZoomLevel  A}oDataeKName)CDMCrossSlideDraggableTouchTargetHandler*    (@,ViewportOffsetWidth0ViewportOffsetHeightZoomLevelXCDMCrossSlideDraggableTouchTargetHandler*TEMPkhUrV# D EventDataAUoData=KNameDManipInteractionType AcoDataKKNameCDMHoldDraggableTouchTarget* @%0DManipInteractionType@CDMHoldDraggableTouchTarget*TEMP\HM|r_H D EventDataAaoDataIKNameDManipDragDropConfiguration A[oDataCKNameCDMDraggableTouchTarget* %<DManipDragDropConfiguration8CDMDraggableTouchTarget*TEMPDry@D EventDataA9oData!KNameElement A?oData'KName DropEffect AIoData1KNameScreenLocationX AIoData1KNameScreenLocationY ####ElementDropEffect$ScreenLocationX$ScreenLocationYTEMP$%O TP/JbD EventDataA9oData!KNameElement AEoData-KName PreviousState ACoData+KName CurrentState `%&t%&%Element PreviousState CurrentStateTEMPL&J R_JtCbD EventDataAAoData)KName DragPreview `&DragPreviewTEMPL`'512\W~nD EventDataAAoData)KName DragPreview AGoData/KNameFailureHresult ''DragPreview$FailureHresultTEMPp(G=7r]R-m%rD EventDataAQoData9KNameTouchDragDropHelper (,TouchDragDropHelperTEMPl) 1VBўD EventDataAQoData9KNameTouchDragDropHelper AGoData/KNameFailureHresult )),TouchDragDropHelper$FailureHresultTEMPP+=BcY'@X:sD EventDataAQoData9KNameTouchDragDropHelper A9oData!KNameElement ,+X+,TouchDragDropHelperElementTEMP, VۆTڏ4q%~,D EventDataAQoData9KNameTouchDragDropHelper A9oData!KNameElement AGoData/KNameFailureHresult ,--,TouchDragDropHelperElement$FailureHresultTEMP-n η;_$ݟK\D EventDataA;oData#KNameCMarkup* -CMarkup*TEMP,.u4Z+ʬWD EventDataA;oData#KNameCMarkup* A;oData#KNameCanceled  . /CMarkup*CanceledTEMPH0tG93gY!TD EventDataA;oData#KNameCMarkup* AEoData-KName Refresh Level A;oData#KNameCanceled  00 0CMarkup* Refresh LevelCanceledTEMP,1rZ[^耕kgD EventDataA;oData#KNameCMarkup* A;oData#KNamehrReason 11CMarkup*hrReasonTEMP d3ap8_BՓ^k,0D EventDataA;oData#KNameCMarkup* ACoData+KName Redirect URL AAoData)KName Status Code A;oData#KNameCanceled  333 4CMarkup* Redirect URLStatus CodeCanceledTEMP5*X#Hk_.,D EventDataAMoData5KNameCMemoryProtector* A=oData%KName StackSize  A7oDataKNameBlocks  A5oDataKNameBytes  5 5 6 $6(CMemoryProtector*StackSizeBlocksBytesTEMP6wU+zWK4_0PnD EventDataAMoData5KNameCMemoryProtector* 6(CMemoryProtector*TEMP08XPŨZ U!D EventDataAMoData5KNameCMemoryProtector* A7oDataKNameBlocks  A5oDataKNameBytes  l8 8 8(CMemoryProtector*BlocksBytesTEMP92M:mR=DVD EventDataAMoData5KNameCMemoryProtector* ACoData+KName MarkedBlocks  AAoData)KName MarkedBytes  (: P: p:(CMemoryProtector* MarkedBlocksMarkedBytesTEMP4<AbRL& ɲFD EventDataA9oData!KNameHRESULT A3oDataKNameLeft A5oDataKNameRight A1oDataKNameTop A7oDataKNameBottom l<<<<<HRESULTLeftRight TopBottomTEMPl=s,M\>PD EventDataAYoDataAKNameCContentSecurityPolicy* A?oData'KName PolicyType =>4CContentSecurityPolicy*PolicyTypeTEMP\?V-%G='D EventDataAYoDataAKNameCContentSecurityPolicy* A?oData'KName PolicyType A5oDataKNameAdded  ?? ?4CContentSecurityPolicy*PolicyTypeAddedTEMPAQ[1WWm D EventDataAYoDataAKNameCContentSecurityPolicy* AUoData=KNameResourceDirectiveType ,A`A4CContentSecurityPolicy*0ResourceDirectiveTypeTEMPB `Ψ(RF@UD EventDataAYoDataAKNameCContentSecurityPolicy* AUoData=KNameResourceDirectiveType A9oData!KNameAllowed  CLC |C4CContentSecurityPolicy*0ResourceDirectiveTypeAllowedTEMPDEsUqISӇ!%DD EventDataA1oDataKNameURL AGoData/KNamePermissionType AIoData1KNamePermissionState AMoData5KNameIsPrimaryResponse  XEdEE E URL$PermissionType$PermissionState(IsPrimaryResponseTEMP<TG%+oA\j@္LD EventDataA1oDataKNamePID A1oDataKNameTID A=oData%KName SourceUrl A=oData%KName TargetUrl A3oDataKNameFunc GGGGH PID TIDSourceUrlTargetUrlFuncTEMPL*`ZD EventDataA9oData!KNameThisPtr LPThisPtrTEMPP(A? T%>ZD EventDataA9oData!KNameThisPtr QThisPtrTEMP Q`jf@R kD EventDataA/oDataKNameHR A9oData!KNameThisPtr  RR HRThisPtrTEMP(R < YGD EventDataA=oData%KName ICE-State A9oData!KNameThisPtr  S8SICE-StateThisPtrTEMP, TǗT=_e:gD EventDataA?oData'KName DTLS-State A9oData!KNameThisPtr HTdTDTLS-StateThisPtrTEMP@XU9ducZ "{yD EventDataAIoData1KNameSampleQueueType A9oData!KNameThisPtr UU$SampleQueueTypeThisPtrTEMPLVd}(\&ZCD EventDataAOoData7KNameDroppedSampleCount A9oData!KNameThisPtr  VV,DroppedSampleCountThisPtrTEMP,X13IGΥ[D EventDataAAoData)KName SampleCount AIoData1KNameCurrentTimeMSec  A9oData!KNameThisPtr  hX XXSampleCount$CurrentTimeMSecThisPtrTEMP`Zn>uZҊ̭pD EventDataACoData+KName SelectorType A;oData#KNameSelector A?oData'KName TargetType A7oDataKNameTarget A?oData'KName IsQueryAll  ZZ'Z[ ,[ SelectorTypeSelectorTargetTypeTargetIsQueryAllTEMP|P\\Z&R[_=kD EventDataA3oDataKNameType A7oDataKNameBudget A9oData!KNameCurrent '\\\TypeBudgetCurrentTEMPt^op;Y7My\|D EventDataA5oDataKNameWidth A7oDataKNameHeight ACoData+KName VideoElement AWoData?KNameRemoteMediaStreamTrack A9oData!KNameThisPtr ^^^_P_WidthHeight VideoElement4RemoteMediaStreamTrackThisPtrTEMPl|afr_&x;$LD EventDataAIoData1KNameDriftedTimeMSec AUoData=KNameLastSampleEndTimeMSec  AkoDataSKName CurrentPresentationClockTimeMSec  AcoDataKKNameAudioDriftDroppedSampleCount  A9oData!KNameThisPtr  a b 4b |bb$DriftedTimeMSec0LastSampleEndTimeMSecHCurrentPresentationClockTimeMSec@AudioDriftDroppedSampleCountThisPtrTEMPdvgQX 6*fD EventDataAUoData=KNameLastSampleEndTimeMSec AkoDataSKName CurrentPresentationClockTimeMSec  AcoDataKKNameAudioDriftDroppedSampleCount  A9oData!KNameThisPtr  d e `ee0LastSampleEndTimeMSecHCurrentPresentationClockTimeMSec@AudioDriftDroppedSampleCountThisPtrTEMPgAᖢsP,DD EventDataAQoData9KNameSampleRequstedCount ASoData;KNameSampleDeliveredCount  AQoData9KNameSampleReceivedCount  AOoData7KNameSampleDroppedCount  A=oData%KName TrackKind A9oData!KNameThisPtr  `h h h hi,i,SampleRequstedCount0SampleDeliveredCount,SampleReceivedCount,SampleDroppedCountTrackKindThisPtrTEMPxjRR\T0*q1D EventDataAcoDataKKNameOutstandingStatsRequestCount A7oDataKNameHrTask A9oData!KNameThisPtr  jjk@OutstandingStatsRequestCountHrTaskThisPtrTEMPkqMs_=j`D EventDataA?oData'KName MethodName kMethodNameTEMPl9t׸"D EventDataAAoData)KName ProcessName A1oDataKNamePID A;oData#KNameFileName Dr`rlrProcessName PIDFileNameTEMP$s[D EventDataA;oData#KNameTaskName AQoData9KNameScriptExecutionTime ASoData;KNameIsIgnoredInTelemetry  X|p| |TaskName,ScriptExecutionTime0IsIgnoredInTelemetryTEMP<}pW7ږ$koD EventDataA;oData#KNameTaskName AEoData-KName ObjectPointer }}TaskName ObjectPointerTEMP~𳺸T2ᴆW| RD EventDataA1oDataKNameURL ~ URLTEMP@./VTT˝\D EventDataA;oData#KNamePriority TPriorityTEMP<H)sVfh2D EventDataA;oData#KNamePriority ACoData+KName NestingLevel pPriority NestingLevelTEMP xV$s9{[D EventDataAGoData/KNameTaskQueueIndex ACoData+KName NestingLevel AaoDataIKNameTaskConsideredReadyTimeInUs  4X x$TaskQueueIndex NestingLevel<TaskConsideredReadyTimeInUsTEMPtIj]Za{ D EventDataAioDataQKNameIsPerformingMicrotaskCheckpoint  DIsPerformingMicrotaskCheckpointTEMPdSɿM|UJOND EventDataAGoData/KNameTaskQueueIndex AKoData3KNamePendingTaskCount $TaskQueueIndex(PendingTaskCountTEMPhuXoH01D EventDataA5oDataKNameState A9oData!KNameThisPtr $4StateThisPtrTEMP6]满@7 "D EventDataA=oData%KName Candidate A1oDataKNameMid AEoData-KName SdpMLineIndex A9oData!KNameThisPtr 4Candidate Mid SdpMLineIndexThisPtrTEMPL, '<\C?tUD EventDataAUoData=KNameCPowerStateController A3oDataKNameCDoc T0CPowerStateControllerCDocTEMP0T'xXhhD EventDataAGoData/KNameAllowExecution  D$AllowExecutionTEMP ȗIZ$~gl2jD EventDataAIoData1KNameCancelledLowPri  $CancelledLowPriTEMPdj']A̛fD EventDataAAoData)KName CommandList AAoData)KName NumCommands A=oData%KName BytesUsed ،CommandListNumCommandsBytesUsedTEMPHˡ]/YabD EventDataAAoData)KName FlushReason ,)FlushReasonTEMP ?j8U9D EventDataA/oDataKNameTo A3oDataKNameFrom AAoData)KName PayloadSize A7oDataKNameHeader LXh ToFromPayloadSizeHeaderTEMP$zE/7^J(^j2XD EventDataA7oDataKNameResult 8ResultTEMP\%l{Zo9D EventDataA=oData%KName Container A;oData#KNameCapacity A5oDataKNameInUse ȑContainerCapacityInUseTEMP}mZ2i.D EventDataAAoData)KName ExtensionId A?oData'KName ScriptType AEoData-KName CorrelationId <`)XtExtensionIdScriptType CorrelationIdTEMPT[9su(LD EventDataAAoData)KName ExtensionId A?oData'KName ScriptType AQoData9KNameScriptExecutionTime  AEoData-KName CorrelationId d`) ȕExtensionIdScriptType,ScriptExecutionTime CorrelationIdPRVA0Microsoft-IEOPCOx1H0`0xwin:Infowin:Startwin:StopLEVLR̖RPR(win:Errorwin:Warning(win:Informationalwin:VerboseTASKm_icXiC r  ]huJWx^ KJ:K ^lMXOky`UJM򂋝1CF"GHvOBp&83[P]A׻ڒXI}R{" v{;LT6EG$Fٛ8 ӕ}H#~>HF\"Eo*U@kL#:' IMh:$F}gG ]p% )PGUo L&נ䡜1Lx']^ )XM2tʧ(a/y@ӀJ)TYJ[_L*?bТqNgӐ+聄GErIsu,\INxdG-s ]bAe;%|h!<.5O{CSi:/#{Af]Lo0dmMJX1͵H=OD2M]y 3!qHF_4dx9*Iô%546Vr=KZK8y cD6S{}#E.@4s7"pI8n~8greHQlmQn9-Dp 8AD:M秛3KGMP-ߢ;YݼNSbIt<Y7Ieni=-ZopG2c$>\^J;mG=qPGh?ߥ5]M;Up@2^E2ՅAk_vMXdB e{_bKb)m@CX_A!:lD{YF3]yE"@aJ瑏Fv>ZAQv<GU#L-OZhHe[wFFZx}.I[NP4$NFmuIf ,?O9@9GO2?i4PmtΛDt9I"kWQQy@pw8RKMC;,S/PvfJ & V-0TkeOoYJ"yl*|U= M=gCV.V$@`Du W]iAEPXu%jCK]O͔ 'YV\Gy%bZs3HcJ[f@Eز/%D\[Eb,S] ~>D>8G9N^2OHB\n&_xQ&oF"ţ`wqbG"4 0ayk AC lPZ\bf~jHm{ Bcs_5M/ϊddAؐ \L&9fLB}e>8c8G5a΂ f:I&G/ \c\gM*¶Gag hn[~xF] b<iE2LBF ja`K?(Pk|Q@Vļ|l']GSjn#/mw|eQuBun AT@EIbo>)OEHpk_n=S0O;D/^ఈq^lurGry0b@r˯~TA?ɫ"Qst}ExIntf t ;=N/OLurдN6F)ϯ|v:H!VWCm-ew͈YvGE1oZXxC>qO sݠyWqxHm'BPzrv/Bw7&{U:K^|FAU}0)Q`A]#8?`~4g5G vyS&eDK&ǕfAb<%x;D6~GzDX4{,b=OHO[dNZ:)5HvJwl#2DXa|+GL.OAjCJlg@0͟qp@gUk#\OmK>~!H2DWO$HE5GIFڑ#V-x=$]$E1({|}# K`|+`͉\NHuL%x@@q!@JsM@%24EYE5*QEUд8U,:\nIaǥt8jFQsaCWD@Bm$(cCNNVB8b^ZH5mfNp6Oq؇SLwdK>q5iKhCNmQo6MVB{[g`0KLy=͡Z*O'K+:Uka5OHX\ՒDs̓ <7:ͲDSt5T|#Ci̗d @y~O&w{=EjWL7.dE»g\zDoI5Xe:BEW9#8My+N^~ /\>~Ga뙳K:}GwثÚ1AsFi_{I)k\PBU(HYuOg(n-'J0"Z]/A VIQ0c ab#INVˣ)(3 `m'F $ / aefrLLNiqCͤFO$3ezF{>]t *3J@MLE06KVVBn&,gB;-G6?fק\Oɏ BʮK-RZ^K.FPd/<]HL`>|wCN Fkua2w^fT̍Ao]>;@i4YUM[OO3|N~xK!|(':F2LS(@U9M ;h7%9~FS[{x>qݪAQB/S gWLAHMi2lF{ @$)nx=AI4"@u -|MѲL`*TF#x3r\E#4֕F:w/$?\>CWlt@8 tg2GZ}me,ALDOvNqdŮ$B-*XB+%D8hC;DFIEiDe@ABh9Z E"$+T6VCiH*FD0 Rc/G sp T5K3ghﮰ Uj9De  V^{FP\؅t X E|hNGmv Y³NSwJ^ ZDҥ#T [ 0b@hqh8} \딢DM. ]I:1NZڑH ^VM5 /Gu97 _S^GI@ `ގ6$M68$aKE.͠Icbډ'Hs ucJ0شDdW,V G,_6Ideh䴝YG*Gf_J\Fcg+ZBNV xi0 <As7j8[^CXhuJ4k+)i@|Xl4*SC.9ќm%xJOy/i'n \NXUdo]N1TB3vR;$p M`īJ:`qU"rD|>IrniH{(saVFL?B14z&UޖBoX|mO=@{}}!UDepŒ~pJwJ!BpڴIKT#/x4 yWLFF!kU~foC#?0Tl} C-U=!l?] J$MK.TzBۤ(`JV.ep XsJ)Jj(^e+}eK#okgD#eKgZF" L$vqOMwܭ$$IX#@u$D8ىJT#4%Ni*UOj7|%0wHBT WP%єOJOeˁad &x\N zjL&)[B8e{&(4G-F&wFrGW& $']G{2|A t'JjLο]u'>MHʕS^r($JH xCH(jWFFpJ!=(RBNOുX(3qۭL5O 4)_*WG;^ mЈ):#1Hh!#X){}K%nN}*(*0s5tE9)x*Fmq}O* Mo_qO+F"+o貘A!(J d+}ID*4uoj9+`bd ݮ"Jj:3)+<:*@_$t@eD,S;[ȐN%^),^ . OoWYŨ, ʡA Ƅ(-^OMѿǫJt-ԄHx+I-b°J6\tX}(.Ljϼ"7^|.ԪdEs,H.PN-e.bSz_EUV /Oz^ӚGhn(`/˸XDbcÊ(]/JMj|W C /Q1AziI0,0'H|'Np0fL"F­v01T D<->lP2Fg CYgn2 @zK?Fg!A3m!J`3[DiiE%jװ3L2S@&3y%NM=P4?H4>LՍB|"ct4g`B.Nr49E5._qJ{.G`5-@{]+Oi5{ IRDo 5_L($6YJ^tP\6ܰߢgH;@4Z6OujaMۻP0Ny7BUHDqfh77}QF)9 87>̇Ix988(=G:#|D8b GeY!9|8EɾNE[>Ƹ8PgGjm9`hGEVX9@3b3Lz% @3X>vlbOPve.>U"\jyOGѧ>c90AdW3D? MywCEŭ4JZ?)qCQ%$?К0ʦ M]V$@\G2z{EtMVd@p:ͅDגl6@ Bh yAkЖm@ jfJX C@A "jgF[A j9 Cv!P,B3W2@Ϣy xBȉ?jNIa`HB~YMRK" CL A~XC 6}F_`|CH}aA@z4D MA4RDBM9S'JDQGm434E.G(=[EgIcjF IG@<݃F,Mshtml_CDoc_OnPaint0Mshtml_CMarkup_LayoutDMshtml_CMarkup_BackgroundLayoutDMshtml_CMarkup_OnLoadStatusDone\Mshtml_CMarkup_DOMContentLoadedEvent_StartXMshtml_CMarkup_DOMContentLoadedEvent_StopDMshtml_CMarkup_LoadEvent_Start@Mshtml_CMarkup_LoadEvent_Stop@Mshtml_CFormElement_DoSubmit@Mshtml_CDoc_ExecuteScriptURL0AntiPhishing_EvaluateDAntiPhishing_ProcessingCompleteDMshtml_CDwnBindData_OnProgress8Mshtml_CDwnBindData_Bind4Mshtml_CHtmPre_SuspendLMshtml_CHtmPre_SpeculativeRejected<Mshtml_CHtmPre_ScriptStartDMshtml_HtmPost_PostManKillTimerDMshtml_HtmPost_PostManSetTimer@Mshtml_HtmPost_PostManOnTimer4Mshtml_HtmPost_SetFlag8Mshtml_HtmPost_ClearFlagDMshtml_HtmPost_AbandonTimesliceDMshtml_HtmPost_YieldToPreparser8Mshtml_HtmPost_OnPostDoneHMshtml_CScriptElement_CommitCodePMshtml_CHtmRootParseCtx_ElementsAdded4Mshtml_CMarkup_InvalDoc@Mshtml_NotifyGoesInteractive<Mshtml_CMarkup_SwitchMarkup@Mshtml_CMarkup_UnloadContents8Mshtml_InitImageSizeCacheLMshtml_CDoc_Running2InplaceInvalDoc<Mshtml_CView_InvalidateRect<Mshtml_CView_InvalidateRgn4Mshtml_CDoc_Invalidate0Mshtml_CHTMLoad_Write@Mshtml_CWindow_SuperNavigate2DMshtml_CImgHelper_RequestLayout(Mshtml_HtmPre_Run,Mshtml_CImgTaskExec8Mshtml_CImgTask_ReadYieldLMshtml_CDwnTaskExec_ThreadExecBailHMshtml_CDwnTaskExec_ThreadExecRun0Mshtml_CWindow_ScriptDMshtml_CWindow_CommitCodeLight@Mshtml_HtmPost_PostManExecute,Mshtml_HtmPost_Exec0Mshtml_CImgTask_Init,Mshtml_OnQuiescence@Mshtml_OffscreenBufferCreated0Mshtml_CDoc_PaintRectXMshtml_CElement_HandleMouseHoverForStyle4Mshtml_CStorage_GetItem4Mshtml_CStorage_SetItem<Mshtml_CStorage_RemoveItemLMshtml_CStorageHelper_CommitToDiskLMshtml_CStorageHelper_MergeFromDiskDMshtml_CStorageListHelper_LoadDMshtml_CStorageListHelper_SaveHMshtml_DOM_Marshalling_GetDispIDDMshtml_DOM_Marshalling_InvokeEx@Mshtml_DOM_Marshalling_Native(Mshtml_CSS_ParserTMshtml_FormatCalculation_ComputeFormatsJScript_GC JScript_ParseJScript_Run@Mshtml_Collections_EnsureAry,Mshtml_DOM_Expando4Mshtml_View_RenderView,Mshtml_View_OnViewQ,Mshtml_View_OnViewD8Mshtml_PrivacIE_BlockUrl<Mshtml_PrivacIE_AddUrlToDB@Mshtml_PrivacIE_AddToUserList@Mshtml_PrivacIE_AddWebFilter<Mshtml_DOM_CustomSiteEvent8Mshtml_Ole_OleLayout_Draw,Mshtml_ScrollEvent(Mshtml_ZoomEvent,Mshtml_PrintPreview8Mshtml_CWindow_ExecScript@Mshtml_CssLayout_BuildBlocks@Mshtml_CssLayout_BuildLayout@Mshtml_CssLayout_BuildDisplay(Mshtml_XmlPre_Run0Mshtml_Render_Present,JScript_ByteCodeGen0JScript_NativeCodeGen<JScript_NativeCodeGenDelay$JScript_CallOut4Mshtml_Dx_DeviceCreate@Mshtml_Dx_TargetSurfaceEnsure4Mshtml_CImgTask_Decoded@Mshtml_CImgCacheEntry_AttachPMshtml_CImgCacheEntry_PrepareToRenderLMshtml_CImgCacheEntry_RemoveFromWS@Mshtml_CImgCacheEntry_Destroy8Mshtml_CDwnInfo_CacheHit(Mshtml_Image_Draw4Mshtml_CImgInfo_Destroy0Mshtml_Print_Document(Mshtml_Print_Page4Mshtml_Scroll_SetOffset,Mshtml_Scroll_FrameDMshtml_Scroll_WaitForNextFrame,Mshtml_SAM_Allocate$Mshtml_SAM_Free8Mshtml_SAM_Segment_Create8Mshtml_SAM_Segment_Delete8Mshtml_AlignedTimer_Setup8Mshtml_AlignedTimer_Kill8Mshtml_AlignedTimer_Fire8Mshtml_AlignedBeat_Setup4Mshtml_AlignedBeat_Kill4Mshtml_AlignedBeat_Fire<Mshtml_AlignedBeat_Watchdog8Mshtml_AlignedBeat_VSyncDMshtml_AlignedBeat_VSyncStatusHMshtml_MsPerformance_FullyLoaded8Mshtml_MsPerformance_Mark@Mshtml_MsPerformance_Measure4Mshtml_AttachIDispImage4Mshtml_DetachIDispImageHMshtml_LowPriMethodCall_Watchdog<Mshtml_MediaEngine_Created4Mshtml_MediaEngine_Play8Mshtml_MediaEngine_Pause4Mshtml_MediaEngine_Seek8Mshtml_MediaEngine_EndedPMshtml_MediaEngine_PlaybackRateChange@Mshtml_MediaEngine_StreamInfoHMshtml_MediaEngine_VideoMediaTypeHMshtml_MediaEngine_AudioMediaTypeTMshtml_MediaEngine_VideoFramePresentedPMshtml_MediaEngine_VideoFrameDroppedTMshtml_MediaEngine_VideoQualityMessagePMshtml_MediaEngine_AudioDataPresented@Mshtml_MediaEngine_VSyncTick@Mshtml_MediaEngine_Destroyed<Mshtml_CImgTask_LazyDecodedDMshtml_CImgInfo_ForcedDecodingTMshtml_CPaintController_NotReadyToPaint0Mshtml_CTimerMan_WaitDMshtml_CHighFreqScheduler_FireTMshtml_CPaintController_CanNotPaintNow,Mshtml_CMarkup_QMEPMshtml_IViewObjectPresentSite_PresenthMshtml_IViewObjectPresentNotifySite_RequestFramePMshtml_MediaEngine_TransferVideoFrame0Mshtml_GlyphRun_DrawTMshtml_CTouchHelper_HandleTouchMessageTMshtml_CTouchHelper_DispatchTouchEvent8Mshtml_Animations_Update@Mshtml_MediaElement_PlayPauseHMshtml_MediaElement_VolumeChange8Mshtml_MediaElement_Seek8Mshtml_MediaElement_ZoomLMshtml_MediaElement_PlayTo_ConnectPMshtml_MediaElement_PlayTo_DisconnectXMshtml_CElement_HandleMouseForActiveStyle@Mshtml_HTMLSpell_InitSpellerPMshtml_HTMLSpell_SpellCheckingEngine\Mshtml_Composition_LayerManager_InitializeXMshtml_Composition_Destination_PreRender\Mshtml_Composition_Destination_RenderLayerDMshtml_Composition_Create_LayerTMshtml_Composition_Destroy_Layer_GroupPMshtml_Composition_Destroy_All_LayersXMshtml_Composition_Update_Implicit_LayersLMshtml_Composition_Layer_InvalidateXMshtml_CTouchHelper_DispatchGestureEvent<Mshtml_Animations_AnimatingDMshtml_Animations_Transitioning4Mshtml_HTMLSpell_NotifyDMshtml_HTMLSpell_CreateSpeller0Mshtml_SetTimeout_Url0Mshtml_FormsTimer_Set4Mshtml_FormsTimer_Reset4Mshtml_FormsTimer_Kill8Mshtml_FormsTimer_OnTimer<Mshtml_MediaElement_LoadingHMshtml_MediaElement_Visualization@Mshtml_MediaElement_BufferingHMshtml_HTMLSpell_ShowContextMenuLMshtml_HTMLSpell_ContextMenuInvokeLMshtml_Composition_Scrollbar_PaintPMshtml_OleSite_Immersive_IncompatibledMshtml_UrlAction_ActiveX_Immersive_Incompatible@Mshtml_MediaElement_FrameStepHMshtml_IndependentAnimation_StartHMshtml_IndependentAnimation_Stop`Mshtml_IndependentAnimation_Candidacy_FailureLMshtml_Composition_Layer_PaintRect<Mshtml_PredictedView_UpdateDMshtml_MediaElement_EndOfMediaPMshtml_CActiveScriptHolder_ConstructHMshtml_CActiveScriptHolder_CloseTMshtml_CJScript9Holder_TypeSystem_InitxMshtml_CScriptCollection_WebOC_FirstScriptExecutionEventMshtml_CScriptCollection_DevToolbar_FirstScriptExecutionEvent|Mshtml_CActiveScriptHolder_WebPlatform_NewScriptEngineEventHMshtml_CView_HitTest_InActiveViewLMshtml_CView_HitTest_MessageContextPMshtml_CView_ExecuteInvalidationTasks4Mshtml_DisplayTreeOpenMshtml_CDirectManipulationHandler_TouchHandler_Configuration<Mshtml_CDoc_OnMouseMessage8Mshtml_IndependentHitTest@Mshtml_IndependentHitTestInfoDMshtml_CElement_GetTooltipText4Mshtml_DocumentSuspend8Mshtml_JsCache_SaveEntryTMshtml_Composition_Create_ImplicitLayerdMshtml_Composition_Max_ImplicitLayers_ExceededDMshtml_HoverDeferral_UndeferredHMshtml_Composition_Create_SBLayerXMshtml_Composition_Create_SBLayer_SurfaceLMshtml_Composition_Destroy_SBLayerDMshtml_Composition_Trim_SBLayer`Mshtml_Composition_Destination_Invalid_RegionDMshtml_Composition_Scroller_PVR4FlipAhead_UpdateTarget4FlipAhead_InvokeTarget\Mshtml_Animations_HighQualityScale_Limited\Mshtml_CView_ExecuteInvalidationTasks_Stats,Mshtml_Image_Offer0Mshtml_Image_Reclaim8Mshtml_Image_Reclaim_FaildMshtml_XML_Http_Request_Open_Sync_On_UI_Thread\Mshtml_Composition_Layer_Candidacy_Failure\Mshtml_Composition_Layer_Dependent_SubtreeHMshtml_Composition_Layer_RevertedDMshtml_MediaElement_FullScreen4Mshtml_Animations_Timer<Mshtml_Animations_Instance4Mshtml_Canvas_OperationPMshtml_EventDebug_DOM_Event_Dispatch\Mshtml_EventDebug_DOM_Event_Invoke_CallbackTMshtml_EventDebug_Timer_Invoke_CallbackDMshtml_DynamicDependencyTrackerLMshtml_DMTouchTarget_SetContentRectlMshtml_DMTouchTarget_UpdateContentRectForBusyState<Mshtml_DispNode_Description,Mshtml_Prefetching,Mshtml_Prerendering@Mshtml_Composition_IR_EnabledDMshtml_Composition_IR_Disabled(WPGeneralTracing0Mshtml_Scheduler_API8Mshtml_RenderTask_Queued@Mshtml_RenderTask_ProcessingXMshtml_RenderTask_RenderThreadStateUpdate4Mshtml_FormatDetectionPMshtml_FormatDetection_LanguageChangeLMshtml_FormatDetection_EntityFound@Mshtml_View_LinkHighlightShow@Mshtml_View_LinkHighlightHide`Mshtml_View_LinkHighlightStartFromNormalEventdMshtml_View_LinkHighlightStartFromQueryContinueLMshtml_View_LinkHighlightTimerPaint`Mshtml_View_LinkHighlightPointerUpdateCancel4Mshtml_Phone_DoubleTapPMshtml_EventDebug_XmlHttpRequest_OpenTMshtml_EventDebug_XmlHttpRequest_RelatePMshtml_FormatDetection_TextExtractionTMshtml_FormatDetection_EntityExtractionXMshtml_FormatDetection_EntityHighlighting0Mshtml_ElementRundown`Mshtml_EventDebug_MediaQuery_Invoke_CallbackLMshtml_TouchSelection_GripperShownLMshtml_TouchSelection_GripperHiddenHMshtml_TouchSelection_CaretShownHMshtml_TouchSelection_CaretHiddenPMshtml_TouchSelection_CaretPlacement|Mshtml_TouchSelection_TouchSelectionManipulation_Initiation|Mshtml_TouchSelection_TouchSelectionManipulation_Completion@Mshtml_TravelLogPrerendering$Mshtml_BFCacheDMshtml_Media_TextTrack_Parsing4Mshtml_CDoc_Navigation(Mshtml_WebWorker,Mshtml_MessagePort<Mshtml_RenderTask_ApplyPSPHMshtml_CDoc_PrepareForSetVisible@Mshtml_CDoc_OnSuspendDocumentLMshtml_CDoc_OnUserVisibilityChanged$Mshtml_SetStylePMshtml_CGarbageTracker_CollectGarbageTMshtml_CDoc_HostPaintUpdateNotificationtMshtml_CDoc_HostPaintUpdateNotification_IgnoredRequest\Mshtml_EventDebug_MutationObserverCallback8Mshtml_Generic_Diagnosis,Mshtml_Video_Sizing<Mshtml_CDoc_UpdateUnitInfo\Mshtml_CView_UpdateRootScrollerSizeAndZoomHMshtml_CView_SetFixedLayoutWidth`Mshtml_CView_SetViewportMode_FixedLayoutWidthlMshtml_CView_SetViewportMode_VisualHeightExclusiontMshtml_CDMScrollableTouchTarget_OnViewportStatusChangedhMshtml_CDMScrollableTouchTarget_BeginInteractionPMshtml_CDMTouchTarget_InputTransformTMshtml_CDMTouchTarget_DisplayTransformXMshtml_IndependentHitTest_HitTestPointerlMshtml_CDMScrollableTouchTargetHandler_ContentStatelMshtml_CDMScrollableTouchTargetHandler_StartTargettMshtml_CDMTouchTargetHandler_ApplyViewportStatusChangeXMshtml_TouchDiagnosis_GenericInfo_OutputMshtml_CDMCrossSlideDraggableTouchTarget_AssignDispLayerImplMshtml_CDMCrossSlideDraggableTouchTarget_AssignDispLayerWithDragStateMshtml_CDMCrossSlideDraggableTouchTarget_SetupLayerForDraggingMshtml_CDMCrossSlideDraggableTouchTarget_ClearLayerFromDraggingMshtml_CDMCrossSlideDraggableTouchTargetHandler_UpdateCrossSlideOffsethMshtml_CDMHoldDraggableTouchTarget_OnInteractiontMshtml_CDMDraggableTouchTarget_SetDragDropConfigurationxMshtml_CDMDraggableTouchTarget_OnDragDropStatusChangeImpdMshtml_CDMDraggableTouchTarget_BeginInteractionpMshtml_CDMDraggableTouchTarget_HandleDragStateChangesMshtml_CDMDraggableTouchTarget_ReturnTargetToOriginalLocationtMshtml_CDMDraggableTouchTarget_OnViewportStatusChangedMshtml_CDMDraggableTouchTarget_ProcessTouchTargetStatusChangepMshtml_CDMDraggableTouchTargetHandler_OnDragInitiated$Mshtml_CStoragexMshtml_CTouchHelper_OnPointerMessage_StartDoubleTapTimerMshtml_CTouchHelper_DoubleTapOnTick_CommitDeferredActionsForDoubleTapZoomCancelMshtml_CTouchHelper_PreFilterMessageForCapture_CommitDeferredActionsForDoubleTapZoomCancelMshtml_CTouchHelper_PreFilterMessageForCapture_CommitDeferredActionsForDoubleTapZoom@Mshtml_CDoubleTap_PanAndZoomPMshtml_CDoubleTap_IsDoubleTapAllowedHMshtml_CTouchHelper_IsDoubleClick\Mshtml_CTouchHelper_HandleTouchMessage_InfoDMshtml_DragAndDrop_Fire_DragEndHMshtml_DragAndDrop_Fire_DragEnterHMshtml_DragAndDrop_Fire_DragOverHMshtml_DragAndDrop_Fire_DragStart@Mshtml_DragAndDrop_Fire_Drop@Mshtml_DragAndDrop_Fire_DragHMshtml_DragAndDrop_Fire_DragLeavePMshtml_Post_MSManipulationStateChangePMshtml_Fire_MSManipulationStateChangeHMshtml_CDragPreview_RenderPreviewDMshtml_CDragPreview_InitializeHMshtml_CDragPreview_CreateSurface<Mshtml_CDragPreview_HookupXMshtml_CTouchDragDropHelper_DragInitiatedXMshtml_CTouchDragDropHelper_DragCancelledTMshtml_CTouchDragDropHelper_OnDraggingPMshtml_CTouchDragDropHelper_OnDroppedPMshtml_CTouchDragDropHelper_ShutdownPMshtml_DMTouchTargetHandler_TouchEndHMshtml_WebOCEvents_BeforeNavigateXMshtml_WebOCEvents_BeforeNavigateRefreshLMshtml_WebOCEvents_NavigateCompleteHMshtml_WebOCEvents_DownloadBeginLMshtml_WebOCEvents_DownloadCompleteLMshtml_WebOCEvents_DocumentCompleteHMshtml_WebOCEvents_NavigateErrorPMshtml_WebOCEvents_NavigateRedirectedLMshtml_WebOCEvents_DelegateNavigateLMshtml_WebOCEvents_DOMContentLoadedpMshtml_MemoryProtector_ReclaimMemoryWithoutProtectionDMshtml_MemoryProtector_SyncMarkTMshtml_MemoryProtector_ReclaimUnmarked,Edgehtml_HtmlPopup0Mshtml_CSP_AddPolicy4Mshtml_CSP_CheckPolicyTEdgeHTML_Webview_AppPermissionResponsePMshtml_CrossCDoc_NodeAdoptionAttempt8Mshtml_Download_InitiatorDMshtml_Ortc_Candidate_GatheringDMshtml_Ortc_Connectivity_Check4Mshtml_Ortc_Dtls_StateTMshtml_Ortc_Create_Render_Sample_QueueHMshtml_Ortc_Render_Sample_DroppedXMshtml_Ortc_Audio_Render_Sample_Time_PushXMshtml_Ortc_Audio_Render_Sample_Time_Pull`Mshtml_Ortc_Audio_Render_Sample_Time_DeliveryXMshtml_Ortc_Video_Render_Sample_Time_PushXMshtml_Ortc_Video_Render_Sample_Time_Pull`Mshtml_Ortc_Video_Render_Sample_Time_DeliveryHMshtml_Generic_Diagnosis_Hr_ErrorLMshtml_Generic_Diagnosis_Win_ErrorTMshtml_Generic_Diagnosis_Trace_Hr_ErrorDMshtml_Generic_Diagnosis_Info1DMshtml_Generic_Diagnosis_Warn0DMshtml_Generic_Diagnosis_Warn1LMshtml_Selectors_Api_Query_SelectorLMshtml_Image_Pooling_Budget_EnforcePMshtml_Ortc_Set_Video_Size_Preference`Mshtml_Ortc_Audio_Drift_Render_Sample_DroppedlMshtml_Ortc_Audio_Clock_Stall_Render_Sample_DroppedPMshtml_Ortc_Capture_Sample_RequestedPMshtml_Ortc_Capture_Sample_DeliveredLMshtml_Ortc_Capture_Sample_ReceivedLMshtml_Ortc_Capture_Sample_DroppedDMshtml_Ortc_Ice_Transport_Stats8Mshtml_Ortc_Sender_Stats<Mshtml_Ortc_Receiver_StatsPMshtml_Media_Capture_Sample_RequestedPMshtml_Media_Capture_Sample_DeliveredPMshtml_Media_Capture_Sample_ReceivedLMshtml_Media_Capture_Sample_Dropped0WebPlatStorageServerDMshtml_AlignedTimer_Processing<Mshtml_CBase_AddPrivateRefDMshtml_CBase_ReleasePrivateRef<Mshtml_CBase_AddInternalRefDMshtml_CBase_ReleaseInternalRef4Mshtml_CBase_AddSubRef<Mshtml_CBase_ReleaseSubRef<WebPlatStorageServer_HandleDWebPlatStorageServer_RPC_Method(Mshtml_Gwnd_Task4Mshtml_Gwnd_Task_Queued(Mshtml_Input_Task4Mshtml_Aligned_RAF_Fire<Mshtml_Aligned_RAF_Enabled<Mshtml_Aligned_RAF_DisabledLMshtml_Query_App_Link_Support_Task@Mshtml_Launch_Uri_Async_TaskDMshtml_EventLoop_QueueSentinelHMshtml_EventLoop_OnSentinelFiredHMshtml_EventLoop_RunReadiedTasks\Mshtml_EventLoop_PerformMicrotaskCheckpointLMshtml_EventLoop_YieldTaskExecutionLMshtml_WebRTC_Ice_Connection_StateHMshtml_WebRTC_Ice_Gathering_State@Mshtml_WebRTC_Signaling_StatePMshtml_WebRTC_Gathered_Ice_CandidateDMshtml_WebRTC_Add_Ice_CandidateHMshtml_ElementFromPointCache_HitHMshtml_ElementFromPointCache_MissPMshtml_PowerStateController_RegisterTMshtml_PowerStateController_UnregisterLMshtml_PowerStateController_VisiblePMshtml_PowerStateController_InvisibleXMshtml_PowerStateController_LowPowerState`Mshtml_PowerStateController_NormalPowerState\Mshtml_EventLoop_MessageGroupCallbackRePostXMshtml_EventLoop_MessageGroupCallbackStopLMshtml_EventLoop_MessageGroupEnable\Mshtml_EventLoop_MessageGroupAlreadyQueuedXMshtml_EventLoop_DriveRegularTasksFromLowLMshtml_EventLoop_DriveRegularTasks0JScript_Parse_Script8Mshtml_Canvas_CommandListDEdgehtml_Extensions_WrxMessage0Mshtml_Container_Size@Mshtml_AlignedBeat_Timer_Beat@Mshtml_AlignedBeat_VSync_BeatPEdgehtml_Extensions_Script_ExecutionKEYWl&IIIIJ (J@LJdJJJJJJ J@K K4K@KTKtKK K@KKKL0LXLhL L@LLLM,MHMdM M$element_rundownweboceventsdraganddropgwnd$eventsandtimers$generaltracingselfhost scheduler_apiprimarynavsubsystemextendedverbosemshtmlmarshalling DDTjscript apcanvas controlpanelprivaciepagemarkscroll$jscript_verbosepaintbeatmediaengine invalidation(pageloadbreakdowntouchcompositionanimationflipahead,composition_verbose$privaterefcount(internalrefcountsubrefcountextensionscontainershttpdiagEVNTD010PH30PP6<PX7<P`h90lh:0lp(<<lx0=<l>$>$>0?0><ܗ?<ܗ >0 ?0 >< ?< >$0!>$L" @0h# @<h$"PE$%#`F0&#4H<'$@I0($`F<)%LJ$ؘ*&LJ$+'\L$ ,(M$,-)M$H.*N0d /*N<d,0+Q$81,Q$@2-S$H3.T0ԙP4.T<ԙX5/U$`60V$ h71X$(l82Z$Dp93Z0`t:3Z<`|;4Y0|<4[<|=5Z0>5[<?6]0@6]<A7^$КB8Lc$C9Lc$D:g$$E;j$@F<k0\G<k<\H=l$xI>m0J><K?(r0L?(r<M@p0̛N@p<̛OAPs$PBPs0QBPs<RCtt0 SCtt< TD^0<TD_0< UDu<<(UDv<<0VEx0X8WE|<XDXF4y0tPXFz0t\YF}<thYFp<ttZG$[H$\IO$ȜdN$eO0fO<gPl0hPl<iQl08jQl<8kRl0TlRl<TmS|0pnS|<poT|0pT|<qU0rU<sV0ĝtV<ĝuW 0vW d<wX @0xX T<yY (0zY T<{Z04{Z04{Z04|Z<4|Z<4|Z<4}[0P }[00P$~[<P(~[0<P,\0l0\<l4]08]<<^@0@^@<H_0P_<T` 0ܞX` <ܞ\a0`a<lb$xc$0|dP0LdP<LeP0heP<hfl0fl<gl0gl<h`$i`0؟i<؟j$k$l0,l<,mtt0Hmtt<Hn0d n<do0o<$p0,p<0q8p04q<<r$ԠDs0Ls<Pt0 Tt< Xu0(\u<(`v@0Ddv@<Dhw0`lw<`xx0|x<|yh$z${$С|$}$~$$h$@$\0x<x0< 0 < $̢ 0 <$$ $<$X$t$t$$$$$ȣ$0 p$p$8p$T$p8$ $$p$Ĥ(p$,$0$4048<4<0P@<PD0lH<lL$P$T<$X$ܥ\$`$d $0hD$Ll$$hp$t$xh$|$ئ$<0<p0,p<,p$Hp$d4$X$0<$ԧ3$$4$@5$\R0S<T0 U< V D10(W 2<(\L0D]L<D^L0D_L<D`L0`aL0`b0` cL<`(d 0|0e 0|8f0|@g0|HhL<|PiL0XjL<`kL0hlL<pm0xn<|o0p<q0$r<$wh$d0@<@0\<\0x<x0<0<0̩<̩0<$0 < 0 < 0 < L0< 0Ш(L<Ш0 0<8 <<< h0X@ <XD0tH<tP0X<` $hD $ȪlD $pD $tD $xL08|L<80T<T8$pa$b$c$,d$He0de<df0f<g0g<0<0< .$ī/$0$ L0(L00L<8 X404@ d7<PD  9$lH  T$$lL $P :$X L$\ X=$ܬdX=$hX=0l><pL@00tL@<0xL@0L|L@<LX=0hX=<h]@l$$0<<@0L<A0حA<حTB$E0^<tG0,tG<,4H$H$K$ << (<< <X 0&<X%(M$&N$'$Ԯ(P$@R$\)$ *Z$(+$D,]$`-]$|N$.:$/@0/@_< /@$0@_$Я1 $2a$6P$x$7c$(8g$,9,j$̰0:L04:L<<:L0D:L<L ;0T ;<X <,+0 \ <-< d =k$<l>p0Xp>0Xt>P<Xx><X|?r0t?v0t?r<t?v<t@{0@h}0@(0@{<@h}<@(<A@P$A@p0A@p<A@p$Bt$ȱC$$D8$E|$E|0E|<E$F|$8 F|$8!F|$8"F$8#F|$8$F|$8%G$T&H$p'FȚ08(FȚ<8)I $*J@$+K$IJ,L0-L< .M̟$(/N000N<41O$482Ph$P<3\0h@4\<hD5]0H6]<L7^0P8^<T;iP$X<iP$\=iP$`>j$Եd?Z$0h@[t$LlA_0pB_<xC`0شC`X0شD`<شD`X<شEkĪ0FkĪ<GkĪ0HkĪ<IkĪ0JkĪ<KkĪ0LkĪ<MkĪ0NkĪ<OkĪ0PkĪ<QkĪ0RkĪ<SQ0lTQ<lUR0(VR<4WT0@XT<LYU0XZU<d[V<ܳp\V<ܳ|]X<^X<_Y0`Y<alA$ alTC$ bm$(cm0(dm<(en<$Dfn0Dgn<Dhoԯ0`ioԯ<`jp0|kp<|lq0mq<nrX0orX<ps$ж}z p$|P0|P<}P$$~0@ ~`0@~<@~4<@~$@~$@ x$$$($4,t$\0$P4l$l80$<t0\@<\D0xH<xL$P$T$̷X$\$`@$ d$<h$Xl$tp|I$t0$xl$|X$ȸ$$$x$8$T$p$$D$Ĺ$$$8 $4@$P $l $$$ $$p$ $$ܺ$h$$0 T$L$$h(< $ ,< |"$ 0$4!$8!$<!$ػ@!$D!$H!$,L!$HP$$dT$$X%0\|&<d%0l|&<t%0Լ||&<Լ%0|&<*0 l+< '0((<('0D(<D'0`(<`'0|'<|F$8$-$(/$н@-$@-$@-$$@-$@0$\ 2$x@-$@-$ 40̾46<̾  40$46<(70,8<0:$ 4<0<8,><<<?0X@A<XDC$tH H$LE$TO0ȿX`P<ȿ\Q$ȿ`$R$dLS$hxT$lU$8pW$TtW$pxW$|W$W$W$X$H[0H[<\$d_$b$e$0e$Le$he$ @i0 @i< @i0 @i< @i0@i<e$e$e$,e$H$ @k0d !@k<d "@l0d #@m<d $@n$d %@o$d &@Tp$d '@p$d (H0)H<*$+r$,r$-r$.r$/r$ 0r$(1@xw$D 2@xw$D 3@xw$D 4@t0` 5@u<` 6,y0|7z<|8|$ 9,y0:z<;$<$=$ >~0$$?~<$(@~$@,A~$\0Bl$x4C08D<<E0@F<DG̃$HH0$LI0$PJ0$ TKH$<XLH$X\M $t`N $dO H$hP H$lQ H$pRH$tSH$xTH$8|U$TV$pW$X$Yh$Z$[$\@0]<^$_04`$4a<4bL$Pcp$ldp$eؑ0f<GHGHGHGHGHGHGHGHGGHGHGHGHGHGHGHGHGHGGG8HG8HG8HGGGGGGGGGGGGGHGGHGGGGGGGGGGGGGGGGGGGGHGHGHGHGGGGGGGGGGGGGGHGGHGGGGGGGGHGHGHGHGHGHGGHGGHGGHGGHGGHGGHGGGGGGGGGGGGGGGGGGGGGGHHHHHHGGGGGGGGGGGGGGGG(H(H(H(HHHHHGGHHGGHGGHGGGhHGhHGhHGhHGhHGhHGhHGhHGGxHGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG(H(H(H(H(H(HHHGGHGGHGHGHGGGGGGGHGGGGGHHHHHGGGGHHHHHHHHHHHHGGGGGHHHHHHHHHHHHHHHHHHHGGGHHHHHGGGGHHGHGGGGHGHGHGHIIGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHGHGHGHGHGHGHGHGGGGGGGGIIIIGGGGGGGGHHHHHGGGGGGGGGGGHGHGHGHGHGHGHGHGHGHGGGGGGGGHGGGGGGGGGGIIIIGHHGGGGGGGGGGGGHGGGGGGGGGGGGGGIIIIGHHGHHHHHHHHIIIIIGHGHH(IGGGGGGGG(I(II(II(IHHxGxGxGxGxGxGxGxGxGxGxGxGxGxGHHHHGGHGGGGGGGGGGGHGHGGGGHGHGHGHGHGGGGGGGGGGGGGGxGxG8GG8GGxGGxGGxGGxGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHGGHGGHGGHGGHGGHGGHGGHGGHGGHGGHGGHGGGGGGGGGGGGGHGHGGGGGGGGGGGxGxGxGxGxGxGGGGGGGGGGGGGGGGGHHHHHHHHHHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHGGGGGHHHHHHHIIHXGXGXGXGXGXGXGHHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHXGHGHHGHGHGHGHGHGHGHGHGHGGGGGGGGGGGGGGIGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHH8I8IHIHIXIXIhGhGhGhGhGHHHGGGhGhGhGhGhGhGhGGGGGGGGGGGGGGhGhGhGhGhGhG(HGHGHGHhIhIhIxIHHGhIGhIHKCR { Trident.Mshtmled.1 = s 'Trident Editing Command Target' { CLSID = s '{3050F494-98B5-11CF-BB82-00AA00BDCE0B}' } CLSID { ForceRemove {3050F494-98B5-11CF-BB82-00AA00BDCE0B} = s 'Trident Editing Command Target' { ProgID = s 'Trident.Mshtmled.1' InprocServer32 = s '%MODULE%' { val ThreadingModel = s 'Apartment' } } } } HKCR { Trident.HTMLEditor.1 = s 'Trident HTMLEditor' { CLSID = s '{3050f4f5-98B5-11CF-BB82-00AA00BDCE0B}' } CLSID { ForceRemove {3050f4f5-98B5-11CF-BB82-00AA00BDCE0B} = s 'Trident HTMLEditor' { ProgID = s 'Trident.HTMLEditor.1' InprocServer32 = s '%MODULE%' { val ThreadingModel = s 'Apartment' } } } } (function(){var h=this;function aa(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return "array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return "object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return "array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return "function"}else return "null";else if("function"==b&&"undefined"==typeof a.call)return "object";return b}function k(a){return "string"==typeof a}function ba(a,b,c){return a.call.apply(a.bind,arguments)}function ca(a,b,c){if(!a)throw Error();if(2b?1:0};var q;a:{var ha=h.navigator;if(ha){var ia=ha.userAgent;if(ia){q=ia;break a}}q=""}function r(a){return -1!=q.indexOf(a)};var s=Array.prototype,ja=s.indexOf?function(a,b,c){return s.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(k(a))return k(b)&&1==b.length?a.indexOf(b,c):-1;for(;cc?null:k(a)?a.charAt(c):a[c]}function na(a){return s.concat.apply(s,arguments)}function oa(a,b,c){return 2>=arguments.length?s.slice.call(a,b):s.slice.call(a,b,c)};var pa=r("Opera")||r("OPR"),v=r("Trident")||r("MSIE"),qa=r("Gecko")&&-1==q.toLowerCase().indexOf("webkit")&&!(r("Trident")||r("MSIE")),ra=-1!=q.toLowerCase().indexOf("webkit");function sa(){var a=h.document;return a?a.documentMode:void 0}var ta=function(){var a="",b;if(pa&&h.opera)return a=h.opera.version,"function"==aa(a)?a():a;qa?b=/rv\:([^\);]+)(\)|;)/:v?b=/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/:ra&&(b=/WebKit\/(\S+)/);b&&(a=(a=b.exec(q))?a[1]:"");return v&&(b=sa(),b>parseFloat(a))?String(b):a}(),ua={};function va(a){if(!ua[a]){for(var b=0,c=fa(String(ta)).split("."),d=fa(String(a)).split("."),e=Math.max(c.length,d.length),f=0;0==b&&f]=|\\s+|.", "g"), Fa = /^\s/;function y(a,b){return a.b[a.a+(b||0)]}function z(a){return a.b[a.a++]}function Ga(a){return a.b.length<=a.a}function A(a,b,strict){this.strict=strict;this.h=this.strict?a:a.toLowerCase();this.c=b?b:((a==="*")?"*":(this.strict?null:"http://www.w3.org/1999/xhtml"));}A.prototype.a=function(a){var b=IsolatedGlobalScope.Node_nodeType(a);return 1!=b&&2!=b?!1:("*"!=this.h&&this.h!=(this.strict?IsolatedGlobalScope.Node_localName(a):IsolatedGlobalScope.Node_localName(a).toLowerCase())?!1:(this.c=="*"||(this.c==(IsolatedGlobalScope.Node_namespaceURI(a)?(this.strict?IsolatedGlobalScope.Node_namespaceURI(a):IsolatedGlobalScope.Node_namespaceURI(a).toLowerCase()):(this.strict?null:"http://www.w3.org/1999/xhtml")))));};A.prototype.d=function(){return this.h};A.prototype.e=function(){return this.c};A.prototype.f=function(){return this.strict};A.prototype.toString=function(){return "Name Test: "+("http://www.w3.org/1999/xhtml"==this.c?"":this.c+":")+this.h};function B(a,b){this.f=a;this.c=void 0 !== b?b:null;this.b=null;switch (a){case "comment":this.b=8;break;case "text":this.b=3;break;case "processing-instruction":this.b=7;break;case "node":break;default:throw Error("Unexpected argument");}}function Ha(a){return "comment"==a||"text"==a||"processing-instruction"==a||"node"==a}B.prototype.a=function(a){return null===this.b||this.b==IsolatedGlobalScope.Node_nodeType(a)};B.prototype.d=function(){return this.f};B.prototype.toString=function(){var a="Kind Test: "+this.f;null===this.c||(a+=D(this.c));return a};function Ia(a){Abandon(5);switch (a.nodeType){case 1:return ea(Ja,a);case 9:return Ia(a.documentElement);case 11:case 10:case 6:case 12:return Ka;default:return a.parentNode?Ia(a.parentNode):Ka}}function Ka(){return null}function Ja(a,b){Abandon(6);if(a.prefix==b)return a.namespaceURI||"http://www.w3.org/1999/xhtml";var c=a.getAttributeNode("xmlns:"+b);return c&&c.specified?c.value||null:a.parentNode&&9!=a.parentNode.nodeType?Ja(a.parentNode,b):null};var E=v&&!(v&&9<=xa),La=v&&!(v&&8<=xa);function F(a,b,c,d){this.a=a;this.nodeName=c;this.nodeValue=d;this.nodeType=2;this.parentNode=this.ownerElement=b}function Ma(a,b){Abandon(7);var c=La&&"href"==b.nodeName?a.getAttribute(b.nodeName,2):b.nodeValue;return new F(b,a,b.nodeName,c)};function G(a){var b=null,c=IsolatedGlobalScope.Node_nodeType(a);1==c&&(b=IsolatedGlobalScope.Node_textContent(a),b=void 0==b||null==b?Abandon(8)&&a.innerText:b,b=void 0==b||null==b?"":b);if("string"!=typeof b)if(E&&Abandon(9)&&"title"==a.nodeName.toLowerCase()&&1==c)b=a.text;else if(9==c||1==c){a=9==c?IsolatedGlobalScope.Document_documentElement(a):a.firstChild&&Abandon(10);for(var c=0,d=[],b="";a;){do 1!=IsolatedGlobalScope.Node_nodeType(a)&&(b+=IsolatedGlobalScope.Node_nodeValue(a)),E&&Abandon(11)&&"title"==a.nodeName.toLowerCase()&&(b+=a.text),d[c++]=a;while(a=IsolatedGlobalScope.Node_firstChild(a));for(;c&&!(a=IsolatedGlobalScope.Node_nextSibling(d[--c])););}}else b=IsolatedGlobalScope.Node_nodeValue(a);return ""+b}function H(a,b,c,ns){if(null===b)return !0;try{if(!a.getAttribute)return !1} catch (d){return !1}La&&"class"==b&&(b="className");var attrval=ns?IsolatedGlobalScope.Element_getAttributeNS(a,ns,b):IsolatedGlobalScope.Element_getAttribute(a,b);return null==c?!!attrval:attrval==c}function I(a,b,c,d,e,ns){return (E?Na:Oa).call(null,a,b,k(c)?c:null,k(d)?d:null,e||new J,ns)}function Na(a,b,c,d,e){Abandon(12);if(a instanceof A||8==a.b||c&&null===a.b){var f=b.all;if(!f)return e;a=Pa(a);if("*"!=a&&(f=b.getElementsByTagName(a),!f))return e;if(c){for(var g=[],l=0;b=f[l++];)H(b,c,d)&&g.push(b);f=g}for(l=0;b=f[l++];)"*"==a&&"!"==b.tagName||K(e,b);return e}Qa(a,b,c,d,e);return e}function Oa(a,b,c,d,e,ns){b.getElementsByName&&d&&"name"==c&&!v?(b=IsolatedGlobalScope.Document_getElementsByName(b,d),t(b,function(b){a.a(b)&&K(e,b)})):b.getElementsByClassName&&d&&"class"==c?(b=IsolatedGlobalScope.Node_getElementsByClassName(b,d),t(b,function(b){b.className==d&&a.a(b)&&K(e,b)})):a instanceof B?Qa(a,b,c,d,e):b.getElementsByTagNameNS&&(b=IsolatedGlobalScope.Node_getElementsByTagNameNS(b,a.e(),a.d()),t(b,function(a){H(a,c,d,ns)&&K(e,a)}));return e}function Ra(a,b,c,d,e){Abandon(13); var f;if((a instanceof A||8==a.b||c&&null===a.b)&&(f=b.childNodes)){var g=Pa(a);if("*"!=g&&(f=ka(f,function(a){return a.tagName&&a.tagName.toLowerCase()==g}),!f))return e;c&&(f=ka(f,function(a){return H(a,c,d)}));t(f,function(a){"*"==g&&("!"==a.tagName||"*"==g&&1!=a.nodeType)||K(e,a)});return e}return Sa(a,b,c,d,e)}function Sa(a,b,c,d,e,ns){for(b=IsolatedGlobalScope.Node_firstChild(b);b;b=IsolatedGlobalScope.Node_nextSibling(b))H(b,c,d,ns)&&a.a(b)&&K(e,b);return e}function Qa(a,b,c,d,e){for(b=IsolatedGlobalScope.Node_firstChild(b);b;b=IsolatedGlobalScope.Node_nextSibling(b))H(b,c,d)&&a.a(b)&&K(e,b),Qa(a,b,c,d,e)}function Pa(a){if(a instanceof B){if(8==a.b)return "!";if(null===a.b)return "*"}return a.d()};function J(){this.b=this.a=null;this.i=0}function Ta(a){this.d=a;this.a=this.b=null}function Ua(a,b){if(!a.a)return b;if(!b.a)return a;for(var c=a.a,d=b.a,e=null,f=null,g=0;c&&d;){var f=c.d,l=d.d;f==l||f instanceof F&&l instanceof F&&f.a==l.a?(f=c,c=c.a,d=d.a):0",4,2,function(a,b,c){return R(function(a,b){return a>b},a,b,c)});S("<=",4,2,function(a,b,c){return R(function(a,b){return a<=b},a,b,c)});S(">=",4,2,function(a,b,c){return R(function(a,b){return a>=b},a,b,c)});var ab=S("=",3,2,function(a,b,c){return R(function(a,b){return a==b},a,b,c,!0)});S("!=",3,2,function(a,b,c){return R(function(a,b){return a!=b},a,b,c,!0)});S("and",2,2,function(a,b,c){return P(a,c)&&P(b,c)});S("or",1,2,function(a,b,c){return P(a,c)||P(b,c)});function db(a,b){if(b.a.length&&4!=a.g)throw Error("Primary expression must evaluate to nodeset if filter has predicate(s).");n.call(this,a.g);this.c=a;this.f=b;this.e=a.e;this.b=a.b}m(db);db.prototype.a=function(a){a=this.c.a(a);return eb(this.f,a)};db.prototype.toString=function(){var a;a="Filter:"+D(this.c);return a+=D(this.f)};function fb(a,b){if(b.lengtha.n)throw Error("Function "+a.h+" expects at most "+a.n+" arguments,"+b.length+" given");a.s&&t(b,function(b,d){if(4!=b.g)throw Error("Argument "+d+" to function "+a.h+" is not of type Nodeset: "+b);});n.call(this,a.g);this.f=a;this.c=b;Za(this,a.e||la(b,function(a){return a.e}));$a(this,a.r&&!b.length||a.q&&!!b.length||la(b,function(a){return a.b}))}m(fb);fb.prototype.a=function(a){return this.f.j.apply(null,na(a,this.c))};fb.prototype.toString=function(){var a="Function: "+this.f;if(this.c.length)var b=u(this.c,function(a,b){return a+D(b)},"Arguments:"),a=a+D(b);return a};function gb(a,b,c,d,e,f,g,l,p){this.h=a;this.g=b;this.e=c;this.r=d;this.q=e;this.j=f;this.o=g;this.n=void 0 !== l?l:g;this.s=!!p}gb.prototype.toString=function(){return this.h};var hb ={};function T(a,b,c,d,e,f,g,l){if(hb.hasOwnProperty(a))throw Error("Function already created: "+a+".");hb[a]=new gb(a,b,c,d,!1,e,f,g,l)}T("boolean",2,!1,!1,function(a,b){return P(b,a)},1);T("ceiling",1,!1,!1,function(a,b){return Math.ceil(N(b,a))},1);T("concat",3,!1,!1,function(a,b){return u(oa(arguments,1),function(b,d){return b+O(d,a)},"")},2,null);T("contains",2,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);return -1!=b.indexOf(a)},2);T("count",1,!1,!1,function(a,b){return b.a(a).i},1,1,!0);T("false",2,!1,!1,function(){return !1},0);T("floor",1,!1,!1,function(a,b){return Math.floor(N(b,a))},1);T("id",4,!1,!1,function(a,b){function c(a){if(E){Abandon(14);var b=e.all[a];if(b){if(b.nodeType&&a==b.id)return b;if(b.length)return ma(b,function(b){return a==b.id})}return null}return IsolatedGlobalScope.Document_getElementById(e,(a))}var d=a.a,e=9==IsolatedGlobalScope.Node_nodeType(d)?d:IsolatedGlobalScope.Node_ownerDocument(d),d=O(b,a).split(/\s+/),f=[];t(d,function(a){a=c(a);!a||0<=ja(f,a)||f.push(a)});f.sort(za);var g=new J;t(f,function(a){K(g,a)});return g},1);T("lang",2,!1,!1,function(){return !1},1);T("last",1,!0,!1,function(a){if(1!=arguments.length)throw Error("Function last expects ()");return a.d},0);T("local-name",3,!1,!0,function(a,b){var c=b?Wa(b.a(a)):a.a;return c?IsolatedGlobalScope.Node_localName(c)||IsolatedGlobalScope.Node_nodeName(c).toLowerCase():""},0,1,!0);T("name",3,!1,!0,function(a,b){var c=b?Wa(b.a(a)):a.a;return c?IsolatedGlobalScope.Node_nodeName(c).toLowerCase():""},0,1,!0);T("namespace-uri",3,!0,!1,function(a,b){var c=b?Wa(b.a(a)):a.a;return c?IsolatedGlobalScope.Node_namespaceURI(c):""},0,1,!0);T("normalize-space",3,!1,!0,function(a,b){return (b?O(b,a):G(a.a)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1);T("not",2,!1,!1,function(a,b){return !P(b,a)},1);T("number",1,!1,!0,function(a,b){return b?N(b,a):+G(a.a)},0,1);T("position",1,!0,!1,function(a){return a.b},0);T("round",1,!1,!1,function(a,b){return Math.round(N(b,a))},1);T("starts-with",2,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);return 0==b.lastIndexOf(a,0)},2);T("string",3,!1,!0,function(a,b){return b?O(b,a):G(a.a)},0,1);T("string-length",1,!1,!0,function(a,b){return (b?O(b,a):G(a.a)).length},0,1);T("substring",3,!1,!1,function(a,b,c,d){c=N(c,a);if(isNaN(c)||Infinity==c||-Infinity==c)return "";d=d?N(d,a):Infinity;if(isNaN(d)||-Infinity===d)return "";c=Math.round(c)-1;var e=Math.max(c,0);a=O(b,a);if(Infinity==d)return a.substring(e);b=Math.round(d);return a.substring(e,c+b)},2,3);T("substring-after",3,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);c=b.indexOf(a);return -1==c?"":b.substring(c+a.length)},2);T("substring-before",3,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);a=b.indexOf(a);return -1==a?"":b.substring(0,a)},2);T("sum",1,!1,!1,function(a,b){for(var c=L(b.a(a)),d=0,e=M(c);e;e=M(c))d+=+G(e);return d},1,1,!0);T("translate",3,!1,!1,function(a,b,c,d){b=O(b,a);c=O(c,a);var e=O(d,a);a=[];for(d=0;da.length)throw Error("Unclosed literal string");return new ib(a)}function Fb(a){var strict=a.a.strict;var b=z(a.a),c=b.indexOf(":");if(-1==c)return new A(b,null,strict);var d=b.substring(0,c);a=a.b(d);if(!a)throw Error("Namespace prefix not declared: "+d);b=b.substr(c+1);return new A(b,a,strict)}function Gb(a){var b,c=[],d;if(nb(y(a.a))){b=z(a.a);d=y(a.a);if("/"==b&&(Ga(a.a)||"."!=d&&".."!=d&&"@"!=d&&"*"!=d&&!/(?![0-9])[\w]/.test(d)))return new U;d=new U;Y(a,"Missing next location step.");b=Hb(a,b);c.push(b)}else{a:{b=y(a.a);d=b.charAt(0);switch (d){case "$":throw Error("Variable reference not allowed in HTML XPath");case "(":z(a.a);b=Ab(a);Y(a,'unclosed "("');Cb(a,")");break;case '"':case "'":b=Eb(a);break;default:if(isNaN(+b)){var r=new RegExp("(?![0-9])[\\w]");if(!Ha(b)&&r.test(d)&&"("==y(a.a,1)){b=z(a.a);b=hb[b]||null;z(a.a);for(d=[];")"!=y(a.a);){Y(a,"Missing function argument list.");d.push(Ab(a));if(","!=y(a.a))break;z(a.a)}Y(a,"Unclosed function argument list.");Db(a);b=new fb(b,d)}else{b=null;break a}}else b=new jb(+z(a.a))}"["==y(a.a)&&(d=new qb(Ib(a)),b=new db(b,d))}if(b)if(nb(y(a.a)))d=b;else return b;else b=Hb(a,"/"),d=new mb,c.push(b)}for(;nb(y(a.a));)b=z(a.a),Y(a,"Missing next location step."),b=Hb(a,b),c.push(b);return new kb(d,c)}function Hb(a,b){var c,d,e;if("/"!=b&&"//"!=b)throw Error('Step op should be "/" or "//"');if("."==y(a.a))return d=new V(wb,new B("node")),z(a.a),d;if(".."==y(a.a))return d=new V(vb,new B("node")),z(a.a),d;var f;if("@"==y(a.a))f=lb,z(a.a),Y(a,"Missing attribute name");else if("::"==y(a.a,1)){if(!/(?![0-9])[\w]/.test(y(a.a).charAt(0)))throw Error("Bad token: "+z(a.a));c=z(a.a);f=ub[c]||null;if(!f)throw Error("No axis with name: "+c);z(a.a);Y(a,"Missing node name")}else f=rb;c=y(a.a);if(/(?![0-9])[\w\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/.test(c.charAt(0)))if("("==y(a.a,1)){if(!Ha(c))throw Error("Invalid node type: "+c);c=z(a.a);if(!Ha(c))throw Error("Invalid type name: "+c);Cb(a,"(");Y(a,"Bad nodetype");e=y(a.a).charAt(0);var g=null;if('"'==e||"'"==e)g=Eb(a);Y(a,"Bad nodetype");Db(a);c=new B(c,g)}else c=Fb(a);else if("*"==c)c=Fb(a);else throw Error("Bad token: "+z(a.a));e=new qb(Ib(a),f.a);return d||new V(f,c,e,"//"==b)}function Ib(a){for(var b=[];"["==y(a.a);){z(a.a);Y(a,"Missing predicate expression.");var c=Ab(a);b.push(c);Y(a,"Unclosed predicate expression.");Cb(a,"]")}return b}function Bb(a){if("-"==y(a.a))return z(a.a),new xb(Bb(a));var b=Gb(a);if("|"!=y(a.a))a=b;else{for(b=[b];"|"==z(a.a);)Y(a,"Missing next union location path."),b.push(Gb(a));a.a.a--;a=new yb(b)}return a};function Jb(a,b,strict){if(!a.length)throw Error("Empty XPath expression.");var c=Da(a);c.strict=strict;if(Ga(c))throw Error("Invalid XPath expression.");var bCache=b;b?"function"==aa(b)||(b=function (prefix){ return IsolatedGlobalScope.XPathNSResolver_lookupNamespaceURI(bCache,prefix);}):b=function(){return null};var d=Ab(new zb(c,b));if(!Ga(c))throw Error("Bad token: "+z(c));this.evaluate=function(a,b){try{var c=d.a(new w(a));return new Z(c,b)}catch (ee){TranslateAndRethrowException(ee);}}}function Z(a,b){if(0==b)if(a instanceof J)b=4;else if("string"==typeof a)b=2;else if("number"==typeof a)b=1;else if("boolean"==typeof a)b=3;else throw Error("Unexpected evaluation result.");if(2!=b&&1!=b&&3!=b&&!(a instanceof J))throw Error("value could not be converted to the specified type");this.resultType=b;var c;switch (b){case 2:this.stringValue=a instanceof J?Xa(a):""+a;break;case 1:this.numberValue=a instanceof J?+Xa(a):+a;break;case 3:this.booleanValue=a instanceof J?0=c.length?null:c[f++]};this.snapshotItem=function(a){if(6!=b&&7!=b)throw Error("snapshotItem called with wrong result type");return a>=c.length||0>a?null:c[a]};this.nodeSet=c;}Z.ANY_TYPE=0;Z.NUMBER_TYPE=1;Z.STRING_TYPE=2;Z.BOOLEAN_TYPE=3;Z.UNORDERED_NODE_ITERATOR_TYPE=4;Z.ORDERED_NODE_ITERATOR_TYPE=5;Z.UNORDERED_NODE_SNAPSHOT_TYPE=6;Z.ORDERED_NODE_SNAPSHOT_TYPE=7;Z.ANY_UNORDERED_NODE_TYPE=8;Z.FIRST_ORDERED_NODE_TYPE=9;function Kb(a){this.lookupNamespaceURI=Ia(a)}function Lb(a){a=a||h;var b=a.document;b.evaluate||(a.XPathResult=Z,b.evaluate=function(a,b,e,f){return (new Jb(a,e)).evaluate(b,f)},b.createExpression=function(a,b){return new Jb(a,b)},b.createNSResolver=function(a){return new Kb(a)})}var Mb=["wgxpath","install"],$=h;Mb[0] in $||!$.execScript||$.execScript("var "+Mb[0]);for(var Nb;Mb.length&&(Nb=Mb.shift());)Mb.length||void 0===Lb?$[Nb]?$=$[Nb]:$=$[Nb] ={}:$[Nb]=Lb;this.StaticEvaluate=function (a,b,e,f){try{return (new Jb(a,e,IsolatedGlobalScope.IsInXMLDocument(b))).evaluate(b,f);}catch (ee){TranslateAndRethrowException(ee);}};this.StaticExpression=function (a,b,c){try{return new Jb(a,b,c);}catch (ee){TranslateAndRethrowException(ee);}};this.Abandon=function(n){throw Error("Unreachable code ("+n+")");};function TranslateAndRethrowException(ee){var error=new Error(ee.message);if(ee.message.indexOf("Bad token: ")===0){error.number=12;}else if(ee.message.indexOf("value could not be converted to the specified type")===0){error.number=17;}else if(ee.message.indexOf("Namespace prefix not declared:"===0)){error.number=14;}else{error.number=12;}throw error;}})(); (function(n){function hi(n,t,i){return function(){var r=i();return Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0}),r}}function ci(n,t){var r=typeof t.value=="function"?t.value.bind(n):t.value,i={configurable:t.configurable,enumerable:t.enumerable,value:r,writable:t.writable};return t.get&&(i.get=t.get.bind(n)),t.set&&(i.set=t.set.bind(n)),i}function y(n){var t=Object.assign.apply(Object,[{}].concat(Object.getOwnPropertyNames(n).map(function(t){return i={},i[t]=ci(n,Object.getOwnPropertyDescriptor(n,t)),i;var i})));return Object.defineProperties({},t)}function ct(t,i){var r=y(i);return new Proxy(r,{get:function(i,r){var u=i[r];return u!==undefined||i.hasOwnProperty(r)||n.fireExtensionApiTelemetry(t+r.toString(),!1,!1,""),u}})}function h(n,t){Object.defineProperty(window.browser,n,{get:hi(window.browser,n,function(){var i=t();return i!==undefined?ct(n+".",i):undefined}),enumerable:!0,configurable:!0})}function kt(n){var f,t,r,u;if(n==="")return"";if(f=n.search("://"),f===-1)return"Invalid url syntax "+n;var e=f+3,i=n.substring(0,e);return["http://","https://","file://","ftp://","*://"].indexOf(i)===-1?"Invalid url scheme: "+i:(t=n.substring(e),r=t.indexOf("/"),r===0&&i!=="file://")?"Local host is not allowed for given scheme: "+i:r===-1?"Invalid url, no path exist: "+n:(u=t.indexOf("*"),u!==-1&&u0&&(e+=", "),e+=u(t[r]);for(f="",r=0;r0&&(f+=", "),i[r].optional&&(f+="optional "),f+=i[r].type+" "+i[r].name;throw"Error: Invocation of form "+n+"("+e+") doesn't match definition "+n+"("+f+").";}function i(n,t,i){for(var r=!1,c=0,s=!0,h,o;!r&&s;){var e=0,f=0,l=0;for(s=!1,r=!0,f=0;f1)throw"Error: This event does not support filters.";u.add(r);u.size===1&&f(t+".addListener",li,{component:e},i,"")},removeListener:function(r){n.fireExtensionApiTelemetry(t+".removeListener",!0,!0,"");u.delete(r);u.size===0&&f(t+".removeListener",ai,{component:e},i,"")},hasListener:function(i){return n.fireExtensionApiTelemetry(t+".hasListener",!0,!0,""),u.has(i)},hasListeners:function(){return u.size!==0}});return{invoke:function(n,t){return r(n,t,Array.from(u))},public:function(){return o}}}function a(n,t,i){var r=ft(n,t,i);return ht(t,function(n,t){return r.invoke(n,t)}),r.public()}function st(n){function s(){u=!1;et.delete(r);ot.delete(r)}function h(){var n=ft("runtime.port.onMessage",rt,function(n,t,i){var e,r,u,f;if(t.message!==undefined)for(e=t.message,r=0,u=i;r0;){var t=s.shift();t&&h(t.sender,t.data)}}var e=new Set,o=new Map,f=t+"."+i,s=[],l={Frame_ExtensionManager_EventStore_AddFilteredEventListenerEvent:function(){return[305135616,0,0,1]},Frame_ExtensionManager_EventStore_RemoveFilteredEventListenerEvent:function(){return[305135616,0,0,2]}},a=y({addListener:function(t,i,s){try{if(typeof t=="function"){if(u.onAddListener)u.onAddListener(t,i,s);e.add(t);var a=Object.assign({},i,{extraInfoSpec:s}),h={filteredEventId:r,filter:a};n.fireExtensionApiTelemetry("traceLog",!0,!0,f+".addListener|"+JSON.stringify(h));k(l.Frame_ExtensionManager_EventStore_AddFilteredEventListenerEvent(),h,function(r){if(e.delete(t)){var u={filter:i,filterId:r,extraInfoSpec:s};n.fireExtensionApiTelemetry("traceLog",!0,!0,f+".FilterIdCallback|"+JSON.stringify(u));o.set(t,u);c()}})}n.fireExtensionApiTelemetry(f+".addListener",!0,!0,"")}catch(v){n.fireExtensionApiTelemetry(f+".addListener",!1,!0,"");throw v;}},removeListener:function(t){var i,u,s;try{typeof t=="function"&&(e.delete(t)&&(n.fireExtensionApiTelemetry("traceLog",!0,!0,f+".removeListener.PendingListenerDeleted"),c()),i=o.get(t),i&&(o.delete(t),u=Array.from(o.values()).reduce(function(n,t){return n+(t.filterId===i.filterId?1:0)},0),u===0&&(s={filteredEventId:r,filterId:i.filterId},k(l.Frame_ExtensionManager_EventStore_RemoveFilteredEventListenerEvent(),s))));n.fireExtensionApiTelemetry(f+".removeListener",!0,!0,"")}catch(h){n.fireExtensionApiTelemetry(f+".removeListener",!1,!0,"");throw h;}},hasListener:function(t){return n.fireExtensionApiTelemetry(f+".hasListener",!0,!0,""),e.has(t)||o.has(t)},hasListeners:function(){return n.fireExtensionApiTelemetry(f+".hasListeners",!0,!0,""),e.size!==0||o.size!==0}});return{invoke:function(n,t){h(n,t)},public:function(){return a}}}function cu(t,i,r,u){function h(n,t,i){var c,l,r,h,o;if(f.size===0)for(c=[],l=0,r=0,h=Array.from(e.entries());r0){var n=s.shift();n&&h(n.to,n.from,n.data)}}var f=new Set,e=new Map,o=t+"."+i,s=[],l={Frame_ExtensionManager_EventStore_AddFilteredEventListenerEvent:function(){return[305135616,0,0,1]},Frame_ExtensionManager_EventStore_RemoveFilteredEventListenerEvent:function(){return[305135616,0,0,2]}},a=y({addListener:function(t,i,s){try{if(typeof t=="function"){if(u.onAddListener)u.onAddListener(t,i,s);f.add(t);var h=Object.assign({},i,{extraInfoSpec:s}),a={filteredEventId:r,filter:h};k(l.Frame_ExtensionManager_EventStore_AddFilteredEventListenerEvent(),a,function(n){f.delete(t)&&(e.set(t,{filter:i,filterId:n,extraInfoSpec:s}),c())})}n.fireExtensionApiTelemetry(o+".addListener",!0,!0,"")}catch(v){n.fireExtensionApiTelemetry(o+".addListener",!1,!0,"");throw v;}},removeListener:function(t){var i,u,s;try{typeof t=="function"&&(f.delete(t)&&c(),i=e.get(t),i&&(e.delete(t),u=Array.from(e.values()).reduce(function(n,t){return n+(t.filterId===i.filterId?1:0)},0),u===0&&(s={filteredEventId:r,filterId:i.filterId},k(l.Frame_ExtensionManager_EventStore_RemoveFilteredEventListenerEvent(),s))));n.fireExtensionApiTelemetry(o+".removeListener",!0,!0,"")}catch(h){n.fireExtensionApiTelemetry(o+".removeListener",!1,!0,"");throw h;}},hasListener:function(t){return n.fireExtensionApiTelemetry(o+".hasListener",!0,!0,""),f.has(t)||e.has(t)},hasListeners:function(){return n.fireExtensionApiTelemetry(o+".hasListeners",!0,!0,""),f.size!==0||e.size!==0}});return{invoke:function(n,t,i){h(n,t,i)},public:function(){return a}}}function si(t,i){return n.fireExtensionApiTelemetry(t,!0,!0,""),lu(i)}function lu(t){var r=n.getExtensionId(),i="ms-browser-extension://"+r;return t.substr(0,1)!=="/"&&(i+="/"),i+t}function f(t,i,r,u,f,e){try{b(i,r,u,e)}catch(o){n.fireExtensionApiTelemetry(t,!1,!0,o.toString()+" ,parameters: "+JSON.stringify(f));throw o;}n.fireExtensionApiTelemetry(t,!0,!0,"")}function b(i,r,f,e){var o,s;e||typeof f!="function"||(e=f,f=null);e&&(o=ni(e));u(f)!="undefined"&&(s=t.stringify(f));n.genericFunction(i,r,s,o)}function s(t,i,r,u,f){try{k(i,r,f)}catch(e){n.fireExtensionApiTelemetry(t,!1,!0,e.toString()+" ,parameters: "+JSON.stringify(u));throw e;}n.fireExtensionApiTelemetry(t,!0,!0,"")}function k(i,r,f){var e,o;f||typeof r!="function"||(f=r,r=null);f&&(e=ni(f));u(r)!="undefined"&&(o=t.stringify(r));n.webPlatformGenericFunction(i,o,e)}var t=window.JSON,nt=10,tt=11,e=40,it=70,lt=90,at=91,vt=100,r=4092,li=r+10,ai=r+35,vi=r+40,yt=5,yi=14,pi=2,wi=16,bi=17,rt=19,pt=new Map,wt=new Map,ut=new Map,bt=0,et=new Map,ot=new Map,c;ht(rt,function(n,t){var r=t.id,u=t.message!==undefined?et:ot,i=u.get(r);return i?(i.invoke(n,t),!0):!1});var v=-4,g=-1,ri=r,tr=11,ir=18,rr=13,ur=14,fr=25,er=32,or=r+14,sr=r+26,hr=r+27,cr=r+28,lr=7,ar=9,pu=r+38,vr=3,yr=8,ui=r+41,pr=r+7,wr=r+20,br=r+30,fi=r+2,ei=r+5,kr=r+39,dr=r+19,gr=r+2,nu=r+3,tu=r+4,iu=r+5,ru=r+44,wu=r+21,bu=r+22,oi=r+13,uu=6,fu=12,eu=11,ou=13,su=16;Object.defineProperty(window,"browser",{value:ct("",{}),configurable:!0,enumerable:!0,writable:!0});Object.defineProperties(n,{executeGenericFunction:{value:f,enumerable:!1,configurable:!1,writable:!1},executeWebplatformGenericFunction:{value:s,enumerable:!1,configurable:!1,writable:!1},storeNoFilterHandler:{value:a,enumerable:!1,configurable:!1,writable:!1}});Object.defineProperty(window,"internalBrowser",{value:n,configurable:!0,enumerable:!1,writable:!1});n.registerGenericFunctionCallbackHandler(di);n.registerGenericListenerHandler(gi);c=n.registerWebRuntimeCallbackHandler(function(n,t,i){for(var r=0,f=Array.from(wt);r=0;--s)u(arguments[s])==="object"?(h=arguments[s],h&&(k=[{type:"string",name:"name",optional:!0},{type:"boolean",name:"includeTlsChannelId",optional:!0}],o(s,h,k))):u(arguments[s])==="string"&&(p=arguments[s]);var l=[],a=[],c=[],t={};if(t.onMessage={},t.onDisconnect={},t.isAlreadyDisconnected=!1,t.postMessage=function(n){if(t.isAlreadyDisconnected)throw"Error: Attempting to use a disconnected port object.";i("runtime.port.postMessage",arguments,[{type:"any",name:"message",optional:!0}]);l.push(n)},t.onMessage.addListener=function(n){if(t.isAlreadyDisconnected)throw"Error: Attempting to use a disconnected port object.";a.push(n)},t.onDisconnect.addListener=function(n){if(t.isAlreadyDisconnected)throw"Error: Attempting to use a disconnected port object.";c.push(n)},t.disconnect=function(){i("runtime.port.disconnect",arguments,[]);t.isAlreadyDisconnected=!0},r={},r.extensionId=p,r.contextUpper=g,r.contextLower=g,r.address=n.getThisAddress(),h!==undefined&&(r.name=h.name,t.name=h.name,h.includeTlsChannelId!==undefined))return null;var rt=function(n){var r,o,y,u,s,f,h,i,e,v,p;if(n===undefined){for(t.isAlreadyDisconnected=!0,r=0,o=c;r0)a.pop();while(c.length>0)c.pop();while(l.length>0)l.pop()}else{for(y=st(n),Object.assign(t,y),u=0,s=a;u0)a.pop();for(f=0,h=c;f0)c.pop();for(e=0,v=l;e0)l.pop();t.isAlreadyDisconnected&&t.disconnect()}},y={component:e},d=n.getThisAddress(),nt=kr;return(d.component===lt||d.component===at)&&(y.component=it,y.tabId=v,y.frameId=v,nt=dr),tt={contextUpper:r.contextUpper,contextLower:r.contextLower,address:r.address,name:"PII"},f(w,nt,y,r,tt,rt),t},getBackgroundPage:function(t){var e="runtime.getBackgroundPage",r,s,u,o;return i(e,arguments,[{type:"function",name:"callback"}]),r=!1,u=p("extension.inPrivateContext",pi,s,""),typeof u=="boolean"&&(r=u),o={component:r?nt:tt,extensionId:n.getExtensionId()},f(e,pr,o,undefined,"",t)},getPlatformInfo:function(){var n,t,r,u;i("runtime.getPlatformInfo",arguments,[{type:"function",name:"callback"}]);t=w(wi,n);r={os:"win",nacl_arch:n,arch:t};u=arguments[0];u(r)},getURL:function(n){return i("runtime.getURL",arguments,[{type:"string",name:"path"}]),si("runtime.getURL",n)},onConnect:s(),onConnectExternal:h(),onMessage:c(),onMessageExternal:y(),sendMessage:function(){var a="runtime.sendMessage",w,o,h,c;i(a,arguments,[{type:"string",name:"extensionId",optional:!0},{type:"any",name:"message"},{type:"function",name:"responseCallback",optional:!0}]);var s=null,y=null,p,u=arguments.length-1;return arguments.length>1&&(u===2&&arguments[u]==null?--u:u===1&&arguments[u]==null&&typeof arguments[0]=="object"?--u:typeof arguments[u]=="function"&&(p=r(arguments[u]),--u),u>0&&arguments[0]!=null&&(s=arguments[0])),arguments[u]===undefined||arguments[u]==null?l(u,"message must not be undefined or null"):y=t.stringify(arguments[u]),s||(s=n.getExtensionId()),w={extensionId:s,message:y},o={},o.component=e,h=br,c=n.getThisAddress(),(c.component===lt||c.component===at)&&(o.component=it,o.tabId=v,o.frameId=v,h=wr),f(a,h,o,w,"",p)}}});h("tabs",function(){function r(n){return function(i){var r;i&&i!=="undefined"&&(r=t.parse(i));n(r)}}return{executeScript:function(){var h="tabs.executeScript",t,y,c,e;i(h,arguments,[{type:"integer",name:"tabId",optional:!0},{type:"object",name:"details"},{type:"function",name:"callback",optional:!0}]);t=1;(arguments.length===1||u(arguments[0])==="object")&&(t=0);var r=arguments[t],s=t>0?arguments[t-1]:null,a=t+10?arguments[t-1]:null,a=t+1>4,(n<<28|33553920)>>>0,0,vr]}var h="tabs.detectLanguage",r,o,t,c,v,y,p;if(i(h,arguments,[{type:"integer",name:"tabId",optional:!0},{type:"function",name:"callback"}]),r=1,(arguments.length==1||u(arguments[0])==="function")&&(r=0),o=arguments[r],t=r>0?arguments[r-1]:null,c={},u(t)==="integer"){if(t<0||t>268435455)throw"Invalid tab id";return v=a(t),s(h,v,c,"",l)}if(t)throw"Invalid tab id";else{function w(t){if(!t||!t[0])throw"Invalid tab id";if(t[0].id){var i=a(t[0].id);s(h,i,c,"",l)}else n.setLastError("Unspecified error."),o(undefined),n.clearLastError()}return y={active:!0},p={component:e},f(h,oi,p,y,"",w)}}}});h("webNavigation",function(){function n(n){var i=e+f.indexOf(n),r=cu("webNavigation",n,i,{onEvent:function(n,i,r){try{r(i)}catch(u){}return t.stringify("noReturn")}});return u.set(i,r),r.public()}var f,e;if(d(fu)){var u=new Map,h=2,l=4,r={BackgroundScript_Context_DispatchWebNavigationEvent:function(n,t){return[805306368|n<<12>>>0|256|t>>>24,t<<8>>>0>>>0,0,1]},ContentProcess_NavContext_Frame_GetFrame:function(n,t){return[536870912|n>>4,n<<28|33553952|t>>12,t<<20>>>0,h]},ContentProcess_NavContext_GetAllFrames:function(n){return[536870912|n>>4,(n<<28|33553920)>>>0,0,l]}};return ti(r.BackgroundScript_Context_DispatchWebNavigationEvent(c.extensionId,c.contextId),function(n,i,r){var f,e;return r&&(f=void 0,f=t.parse(r),e=u.get(f.filteredEventId),e)?(e.invoke(n,i,f),!0):!1}),f=["onBeforeNavigate","onCommitted","onDOMContentLoaded","onCompleted","onErrorOccurred","onCreatedNavigationTarget","onReferenceFragmentUpdated","onTabReplaced","onHistoryStateUpdated"],e=9,{getFrame:function(n,t){var f="webNavigation.getFrame",e;i(f,arguments,[{type:"object",name:"details"},{type:"function",name:"callback"}]);e=[{type:"integer",name:"tabId"},{type:"integer",name:"processId",optional:!0},{type:"integer",name:"frameId"}];o(0,n,e);var u=n.tabId,h=n.frameId,c=function(n){t(n||null)};if(u<0||u>268435455)throw"Invalid tab id";return s(f,r.ContentProcess_NavContext_Frame_GetFrame(u,h),{},"",c)},getAllFrames:function(n,t){var u="webNavigation.getAllFrames",f;i(u,arguments,[{type:"object",name:"details"},{type:"function",name:"callback"}]);f=[{type:"integer",name:"tabId"}];o(0,n,f);var e=n.tabId,h=function(n){t(n||null)};return s(u,r.ContentProcess_NavContext_GetAllFrames(e),{},"",h)},onBeforeNavigate:n("onBeforeNavigate"),onCommitted:n("onCommitted"),onDOMContentLoaded:n("onDOMContentLoaded"),onCompleted:n("onCompleted"),onErrorOccurred:n("onErrorOccurred"),onCreatedNavigationTarget:n("onCreatedNavigationTarget"),onReferenceFragmentUpdated:n("onReferenceFragmentUpdated"),onTabReplaced:n("onTabReplaced"),onHistoryStateUpdated:n("onHistoryStateUpdated")}}});h("webRequest",function(){function r(i){var r=e+f.indexOf(i),o=hu("webRequest",i,r,{onAddListener:function(){y(i+".addListener",arguments,{onBeforeRequest:["blocking","requestBody"],onBeforeSendHeaders:["blocking","requestHeaders"],onSendHeaders:["requestHeaders"],onHeadersReceived:["blocking","responseHeaders"],onAuthRequired:["blocking","responseHeaders","asyncBlocking"],onResponseStarted:["responseHeaders"],onBeforeRedirect:["responseHeaders"],onCompleted:["responseHeaders"],onErrorOccurred:[]}[i])},onEvent:function(r,u,f,e,o){var nt=r.tabId,tt=r.frameId,k=o.extraInfoSpec?h("blocking",o.extraInfoSpec):!1,ut=o.extraInfoSpec?h("asyncBlocking",o.extraInfoSpec):!1,d=!1,c="noReturn",a=o.filter||{},s,b,rt;if(a.tabId&&(d=a.tabId!==nt),a.windowId&&(d=a.windowId!==tt),!d){var v={},ft={onBeforeRequest:["requestId","url","method","frameId","parentFrameId","requestBody","tabId","type","timeStamp"],onBeforeSendHeaders:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","requestHeaders"],onSendHeaders:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","requestHeaders"],onHeadersReceived:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","responseHeaders","statusLine","statusCode"],onAuthRequired:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","scheme","realm","challenger","isProxy","responseHeaders","statusLine","statusCode"],onResponseStarted:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","ip","fromCache","responseHeaders","statusLine","statusCode"],onBeforeRedirect:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","ip","fromCache","responseHeaders","statusLine","statusCode","redirectUrl"],onCompleted:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","ip","fromCache","responseHeaders","statusLine","statusCode"],onErrorOccurred:["requestId","url","method","frameId","parentFrameId","tabId","type","timeStamp","ip","fromCache","error"]}[i],y=Object.keys(u);for(s=0;s>>0|256|t>>>24,(t<<8>>>0|16|i>>12)>>>0,i<<20>>>0,1]},Frame_ExtensionManager_BrowsingExtension_BackgroundContext_MessageReceivedEvent:function(n,t){return[304087040|n<<4>>>0|1,t,0,1]},NullCallback:function(){return[0,0,0,0]}};return ti(i.BackgroundScript_Context_Frame_PostMessage(c.extensionId,c.contextId,c.frameId),function(n,t,i){return u(n,t,i)}),{onMessageFromHost:{addListener:function(n){t.push(n)},removeListener:function(n){var i=t.lastIndexOf(n);i!=-1&&t.splice(i,1)}},postMessageToHost:function(t){if(!Array.isArray(t))throw!1;t.forEach(function(n){if(typeof n!="string")throw!1;});var r=JSON.stringify(t);n.genericWebRuntimeCallout(i.Frame_ExtensionManager_BrowsingExtension_BackgroundContext_MessageReceivedEvent(c.extensionId,c.contextId),i.NullCallback(),r)}}})})(window.browser)(function(n){function ct(n,t,i){return function(){var r=i();return Object.defineProperty(n,t,{value:r,enumerable:!0,configurable:!0}),r}}function lt(n,t){var r=typeof t.value=="function"?t.value.bind(n):t.value,i={configurable:t.configurable,enumerable:t.enumerable,value:r,writable:t.writable};return t.get&&(i.get=t.get.bind(n)),t.set&&(i.set=t.set.bind(n)),i}function s(n){var t=Object.assign.apply(Object,[{}].concat(Object.getOwnPropertyNames(n).map(function(t){return i={},i[t]=lt(n,Object.getOwnPropertyDescriptor(n,t)),i;var i})));return Object.defineProperties({},t)}function b(t,i){var r=s(i);return new Proxy(r,{get:function(i,r){var u=i[r];return u!==undefined||i.hasOwnProperty(r)||n.fireExtensionApiTelemetry(t+r.toString(),!1,!1,""),u}})}function h(n,t){Object.defineProperty(window.browser,n,{get:ct(window.browser,n,function(){var i=t();return i!==undefined?b(n+".",i):undefined}),enumerable:!0,configurable:!0})}function i(n){var t=typeof n;return t==="number"?parseFloat(n)==parseInt(n)&&(t="integer"):t==="object"&&(n?Array.isArray(n)&&(t="array"):t="null"),t}function tt(n,t){var r,i;if(t==="any")return!0;for(r=t.split(" or "),i=0;i0&&(e+=", "),e+=i(t[u]);for(f="",u=0;u0&&(f+=", "),r[u].optional&&(f+="optional "),f+=r[u].type+" "+r[u].name;throw"Error: Invocation of form "+n+"("+e+") doesn't match definition "+n+"("+f+").";}function u(n,t,r){for(var u=!1,c=0,s=!0,h,o;!u&&s;){var e=0,f=0,l=0;for(s=!1,u=!0,f=0;f1)throw"Error: This event does not support filters.";u.add(r);u.size===1&&f(t+".addListener",d,{component:e},i,"")},removeListener:function(r){n.fireExtensionApiTelemetry(t+".removeListener",!0,!0,"");u.delete(r);u.size===0&&f(t+".removeListener",vt,{component:e},i,"")},hasListener:function(i){return n.fireExtensionApiTelemetry(t+".hasListener",!0,!0,""),u.has(i)},hasListeners:function(){return u.size!==0}});return{invoke:function(n,t){return r(n,t,Array.from(u))},public:function(){return o}}}function it(n,t,i){var r=a(n,t,i);return rt(t,function(n,t){return r.invoke(n,t)}),r.public()}function ri(n){function c(){r=!1;v.delete(i);y.delete(i)}function l(){var n=a("runtime.port.onMessage",o,function(n,t,i){var e,r,u,f;if(t.message!==undefined)for(e=t.message,r=0,u=i;r>>0,i.b=0,i.c=0,i.d=t.functionId-r,i}function f(t,i,r,u,f,e){try{ci(i,r,u,e)}catch(o){n.fireExtensionApiTelemetry(t,!1,!0,o.toString()+" ,parameters: "+JSON.stringify(f));throw o;}n.fireExtensionApiTelemetry(t,!0,!0,"")}function ci(r,u,f,e){var o,s,h;e||typeof f!="function"||(e=f,f=null);e&&(o=ti(e));i(f)!="undefined"&&(s=t.stringify(f));u.functionId=r;h=ht(u);n.genericFunction(h,s,o)}var t=window.JSON,e=40,k=70,at=100,r=4092,d=r+10,vt=r+35,yt=r+40,pt=5,wt=14,bt=17,o=19,g=new Map,kt=new Map,c=new Map,nt=0,v=new Map,y=new Map;rt(o,function(n,t){var r=t.id,u=t.message!==undefined?v:y,i=u.get(r);return i?(i.invoke(n,t),!0):!1});var ei=1e4,oi=r+19,si=r+20,bi=r+41,hi=15,et=-4,ot=-4,w=null;Object.defineProperty(window,"browser",{value:b("",{}),configurable:!0,enumerable:!0,writable:!0});Object.defineProperties(n,{executeGenericFunction:{value:f,enumerable:!1,configurable:!1,writable:!1},storeNoFilterHandler:{value:it,enumerable:!1,configurable:!1,writable:!1}});Object.defineProperty(window,"internalBrowser",{value:n,configurable:!0,enumerable:!1,writable:!1});h("extension",function(){return{getURL:function(n){return st("extension.getURL",n)}}});h("runtime",function(){function r(n){return function(i){var r;typeof i!="undefined"&&i!=="undefined"&&(r=t.parse(i));n(r)}}function s(n){if(w===null){var i={component:e,functionId:d},r=ht(i),u={to:r,parameters:t.stringify(o)};w=p(n,ei,u,"")}return w}function h(){return it("runtime.onMessage",hi,function(i,r,u){for(var o,e=!1,h=t.parse(r.message),c=r.sender,l=function(r){if(!e&&(e=!0,i!==null)){var u=void 0;u=r===undefined?'"undefined"':t.stringify(t.stringify(r));n.genericFunction(i,u)}},s=!1,f=0;f=0;--e)i(arguments[e])==="object"?(o=arguments[e],o&&(w=[{type:"string",name:"name",optional:!0},{type:"boolean",name:"includeTlsChannelId",optional:!0}],ni(e,o,w))):i(arguments[e])==="string"&&(y=arguments[e]);r={};p=s(a);r.contextUpper=p.contextUpper;r.contextLower=p.contextLower;r.extensionId=y;r.senderUrl=window.location.href;b={component:at,frameId:et,tabId:ot,extensionId:v};r.address=b;var c=[],l=[],h=[],t={};if(t.onMessage={},t.onDisconnect={},t.isAlreadyDisconnected=!1,o!==undefined&&(r.name=o.name,t.name=o.name,o.includeTlsChannelId!==undefined))return null;t.postMessage=function(n){if(t.isAlreadyDisconnected)throw"Error: Attempting to use a disconnected port object.";u("runtime.port.postMessage",arguments,[{type:"any",name:"message",optional:!0}]);c.push(n)};t.onMessage.addListener=function(n){if(t.isAlreadyDisconnected)throw"Error: Attempting to use a disconnected port object.";l.push(n)};t.onDisconnect.addListener=function(n){if(t.isAlreadyDisconnected)throw"Error: Attempting to use a disconnected port object.";h.push(n)};t.disconnect=function(){u("runtime.port.disconnect",arguments,[]);t.isAlreadyDisconnected=!0};var d=function(n){var r,o,y,u,s,f,a,i,e,v,p;if(n==undefined){for(t.isAlreadyDisconnected=!0,r=0,o=h;r0)l.pop();while(h.length>0)h.pop();while(c.length>0)c.pop()}else{for(y=ri(n),Object.assign(t,y),u=0,s=l;u0)l.pop();for(f=0,a=h;f0)h.pop();for(e=0,v=c;e0)c.pop();t.isAlreadyDisconnected&&t.disconnect()}},g={component:k},nt={contextUpper:r.contextUpper,contextLower:r.contextLower,address:r.address,name:"PII"};return f(a,oi,g,r,nt,d),t},getURL:function(n){return st("runtime.getURL",n)},sendMessage:function(){var o="runtime.sendMessage",c,a;u(o,arguments,[{type:"string",name:"extensionId",optional:!0},{type:"any",name:"message"},{type:"function",name:"responseCallback",optional:!0}]);var e=null,s=null,h,i=arguments.length-1;return arguments.length>1&&(i==2&&arguments[i]==null?--i:i==1&&arguments[i]==null&&typeof arguments[0]=="object"?--i:typeof arguments[i]=="function"&&(h=r(arguments[i]),--i),i>0&&arguments[0]!=null&&(e=arguments[0])),arguments[i]===undefined||arguments[i]==null?l(i,"message must not be undefined or null"):s=t.stringify(arguments[i]),e||(e=n.getExtensionId()),c={extensionId:e,message:s,senderUrl:window.location.href},a={component:k,tabId:ot,frameId:et},f(o,si,a,c,"",h)},onMessage:h()}});h("webruntime",function(){var i=[],u=function(n,t,r){var u=JSON.parse(r);return i.forEach(function(n){try{n(u)}catch(t){}}),!0},f=function(n,t,i){var r={"4":u},f=n[3]&65535;return f in r?r[f](n,t,i):!1},t=n.registerWebRuntimeCallbackHandler(function(n,t,i){var r=(n[3]&251658240)==0;return r?f(n,t,i):!1}),r={Frame_BrowsingContext_Document_BrowsingExtension_IsolatedMessageReceivedEvent:function(n,t,i){return[285212672|n>>8,n<<24>>>0|1048576|t<<4|1,i<<16>>>0|0,4]},ContentProcess_NavContext_Extension_Frame_NullCallback:function(n,t,i,r){return[536870912|n>>4,n<<28>>>0|16777216|t<<8|16|i>>12,i<<20>>>0|65536|r,5]}};return{onMessageFromHost:{addListener:function(n){i.push(n)},removeListener:function(n){var t=i.lastIndexOf(n);t!=-1&&i.splice(t,1)}},postMessageToHost:function(i){if(!Array.isArray(i))throw!1;i.forEach(function(n){if(typeof n!="string")throw!1;});var u=JSON.stringify(i);n.genericWebRuntimeCallout(r.Frame_BrowsingContext_Document_BrowsingExtension_IsolatedMessageReceivedEvent(t.browsingContextId,t.documentId,t.extensionId),r.ContentProcess_NavContext_Extension_Frame_NullCallback(t.contentProcessId,t.documentId,t.extensionId,t.frameId),u)}}});n.registerGenericFunctionCallbackHandler(ii);n.registerGenericPersistentCallbackHandler(ui)})(window.msContentScript)(function(n,t,i){function o(n,i,f){function o(n,i){try{let r=t.ContentProcess_NavContext_Frame_Extension_param(i[0]);n(e(r),JSON.parse(i[2]))}catch(r){}}if(r===null)u.push([n,i,f]);else{if(u!==null){while(u.length>0){let n=u.shift();for(let t of r)o(t,n)}u=null}for(let t of r)o(t,[n,i,f])}}let r=null,u=[],f=function(n){if(n in t.extensionIds)return t.extensionIds[n];throw!1;},e=function(n){for(let i in t.extensionIds)if(t.extensionIds[i]==n)return i;throw!1;};let s={webruntime:{onMessageFromHost:{addListener:function(n){r===null&&(r=new Set);r.add(n)},removeListener:function(n){r!==null&&r.delete(n)}},postMessageToHost:function(r,u){try{let e=t.Frame_BrowsingContext_Document_BrowsingExtension_set_params(t.WrxAddress_DocumentMessageReceived,f(r)),o=t.ContentProcess_NavContext_Frame_NullCallback_address;i(e,o,n(u))}catch(e){}}}},h=function(n,t,i){let r=!1;return n[3]==1&&typeof i=="string"&&(o(n,t,i),r=!0),r};return{browser:s,callback:h}})var ErrorCodes,EdgeDevtoolsProtocol;!function(e){let t;!function(e){e[e.serverError=-32e3]="serverError",e[e.invalidParams=-32602]="invalidParams",e[e.internalError=-32603]="internalError"}(t=e.Code||(e.Code={}))}(ErrorCodes||(ErrorCodes={})),function(e){"use strict";e.EDP_FAIL_FAST=function(e){throw new Error(e)},e.EDP_FAIL_FAST_WITH_ERROR=function(e){throw e},e.EDP_FAIL_FAST_IF=function(e,t){if(e)throw new Error(t)},e.EDP_FAIL_FAST_IF_FALSE=function(e,t){if(!e)throw new Error(t)},e.EDP_FAIL_FAST_IF_NULL=function(e,t){if(!e)throw new Error(t);return e},e.EDP_FAIL_FAST_IF_UNDEFINED=function(e,t){if(!e)throw new Error(t);return e}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t{constructor(e,t){this._nativeConsole=new Map,this._executionContext=e,this._runtimeHandler=t,this._consoleCounters=new Map,this._consoleTimers=new Map,this._injectedConsoles={}}initialize(){const e=this._executionContext.global;let r=browser.unwrapMirror(e).console;const n=(e,n,o)=>{let s;s=o||e;this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,e,(...e)=>{t.consoleDefaultImpl(e,s,this._executionContext,this._runtimeHandler,n)})};return n("log",!0),n("info",!0),n("warn",!0,"warning"),n("error",!0),n("debug",!0),n("table",!0),n("trace",!1),n("dir",!0),n("dirxml",!0),n("clear",!1),n("count",!1),n("countReset",!1),n("time",!1),n("timeEnd",!1),n("exception",!0,"error"),n("group",!1,"startGroup"),n("groupCollapsed",!1,"startGroupCollapsed"),n("groupEnd",!1,"endGroup"),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"assert",(...e)=>{t.consoleAssertImpl(e,this._executionContext,this._runtimeHandler)})})(),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"count",(...e)=>this.consoleCounterImpl(e))})(),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"countReset",(...e)=>this.consoleCounterResetImpl(e))})(),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"time",(...e)=>this.consoleTimeImpl(e))})(),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"timeEnd",(...e)=>this.consoleTimeEndImpl(e))})(),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"timeStamp",(...e)=>this.consoleTimeStampImpl(e))})(),(()=>{this.defineInjectedConsoleObjFunction(this._injectedConsoles,r,this._executionContext,"select",(...e)=>{t.consoleSelectImpl(e,this._executionContext,this._runtimeHandler)})})(),!0}uninitializeConsoles(){const e=browser.unwrapMirror(this._executionContext.global);this.uninitializeConsole(e,this._injectedConsoles)}uninitializeConsole(e,t){try{if(e.console)for(let r in t)e.console[r]===t[r]&&(delete e.console[r],e.console[r]=this._nativeConsole.get(r))}catch(e){}}static getTimeStamp(){return e.RuntimeHelpers.getDefaultView(browser.document).performance.now()}defineInjectedConsoleObjFunction(e,t,r,n,o){this._nativeConsole.set(n,t[n]),t[n]=r.createSafeConsoleFunction(o,n),e[n]=t[n]}static consoleDefaultImpl(t,r,n,o,s){const a=n.global;if(!s||t.length>0){const n={callFrames:e.RuntimeHelpers.getStackFrameArray()},s=o.executionContextManager.getExecutionContextId(a);e.EDP_FAIL_FAST_IF_UNDEFINED(s),o.handleConsoleAPICalled(r,s,t,n)}}static consoleSelectImpl(r,n,o){const s=n.global;if(r.length>0){const n=o.executionContextManager.getExecutionContextId(s),a={callFrames:e.RuntimeHelpers.getStackFrameArray()};e.EDP_FAIL_FAST_IF(0===n);const i=browser.unwrapMirror(s);r[0]instanceof i.HTMLElement?(o.fireInspectRequested(r,n>0?n:void 0),o.handleConsoleAPICalled("select",n,r,a)):o.handleConsoleAPICalled("warning",n,[t.getConsoleMessage(45444)],a)}}static consoleAssertImpl(t,r,n){const o=r.global;if(!(t.length&&"boolean"!=typeof t[0]||t.length&&t[0])){let r=t.slice(1);const s={callFrames:e.RuntimeHelpers.getStackFrameArray()},a=n.executionContextManager.getExecutionContextId(o);e.EDP_FAIL_FAST_IF_UNDEFINED(a),n.handleConsoleAPICalled("assert",a,r,s)}}static getConsoleMessage(e,...t){return external.getConsoleMessage(e,...t)}consoleCounterImpl(t){let r=String(t[0]);0!==t.length&&void 0!==t[0]||(r="default");let n=1;this._consoleCounters.has(r)&&(n=this._consoleCounters.get(r)+1);const o=`${r}: ${n}`;this._consoleCounters.set(r,n);const s={callFrames:e.RuntimeHelpers.getStackFrameArray()},a=this._executionContext.global,i=this._runtimeHandler.executionContextManager.getExecutionContextId(a);this._runtimeHandler.handleConsoleAPICalled("count",i,[o],s)}consoleCounterResetImpl(e){let t=String(e[0]);void 0!==e[0]&&0!==e.length||(t="default"),this._consoleCounters.has(t)&&this._consoleCounters.set(t,0)}consoleTimeImpl(r){let n=String(r[0]);0!==r.length&&void 0!==r[0]||(n="default");const o={callFrames:e.RuntimeHelpers.getStackFrameArray()},s=this._executionContext.global,a=this._runtimeHandler.executionContextManager.getExecutionContextId(s);this._consoleTimers.has(n)?this._runtimeHandler.handleConsoleAPICalled("warning",a,[t.getConsoleMessage(45441,n)],o):this._consoleTimers.set(n,t.getTimeStamp())}consoleTimeEndImpl(r){let n=String(r[0]);0!==r.length&&void 0!==r[0]||(n="default");const o={callFrames:e.RuntimeHelpers.getStackFrameArray()},s=this._executionContext.global,a=this._runtimeHandler.executionContextManager.getExecutionContextId(s);if(this._consoleTimers.has(n)){const e=this._consoleTimers.get(n);this._consoleTimers.delete(n),this._runtimeHandler.handleConsoleAPICalled("timeEnd",a,[t.getConsoleMessage(45440,n,(t.getTimeStamp()-e).toFixed(4))],o)}else this._runtimeHandler.handleConsoleAPICalled("warning",a,[t.getConsoleMessage(45442,n)],o)}consoleTimeStampImpl(r){let n=String(r[0]);0!==r.length&&void 0!==r[0]||(n="timestamp");const o=`${n}: ${t.getTimeStamp()}ms`,s={callFrames:e.RuntimeHelpers.getStackFrameArray()},a=this._executionContext.global,i=this._runtimeHandler.executionContextManager.getExecutionContextId(a);this._runtimeHandler.handleConsoleAPICalled("timeStamp",i,[o],s)}}e.ConsoleOM=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.CommandLineApi=class{constructor(e){this._executionContext=e,this._injectedCommand=new Map}registerCommandLineByEval(e,t){const r=diagnosticsScript.getConsoleScope(),n=browser.unwrapMirror(this._executionContext.global);if(!(e in r||e in n))try{let r=this._executionContext.executeScript(t,!0);this._injectedCommand.set(e,r)}catch(e){}}registerCommandLineByAssignment(e,t){try{const r=diagnosticsScript.getConsoleScope(),n=browser.unwrapMirror(this._executionContext.global);!(e in r||e in n)&&(n[e]=t,r[e]=t,this._injectedCommand.set(e,t))}catch(e){}}registerCommandLineAPI(){const e=browser.unwrapMirror(this._executionContext.global);e.__DEVTOOLS_CONSOLE={},e.__DEVTOOLS_CONSOLE.getEventListenersInvoker=this._executionContext.createSafeFunction(t=>{try{if(!(t instanceof e.Element||t instanceof e.Document||t instanceof e.Window))return"{}"}catch(e){}const r=dom.getElementEventHelper(t,!0).getEventHandlers();return JSON.stringify(r.reduce((e,t)=>{let r=t.eventName;return r in e||(e[r]=[]),e[r].push({column:t.column,document:t.document,eventName:t.eventName,functionName:t.functionName,line:t.line,useCapture:t.usesCapture}),e},{}))}),this.registerCommandLineByAssignment("dir",e.console.dir),this.registerCommandLineByAssignment("select",e.console.select),this.registerCommandLineByEval("$",`window.$ = ${function(e,t){return t?t.querySelector.call(t,e):window.document.querySelector.apply(window.document,arguments)}.toString()};`),this.registerCommandLineByEval("$$",`window.$$ = ${function(e,t){return t?t.querySelectorAll.call(t,e):window.document.querySelectorAll.apply(window.document,arguments)}.toString()};`),this.registerCommandLineByEval("getEventListeners",`window.getEventListeners = ${function(e){if(e)return JSON.parse(window.__DEVTOOLS_CONSOLE.getEventListenersInvoker(e))}.toString()}`),this.registerCommandLineByEval("keys",`window.keys = ${function(e){return Object.keys(e)}.toString()};`),this.registerCommandLineByEval("values",`window.values = ${function(e){return Object.values(e)}.toString()};`),this.registerCommandLineByEval("$x",`window.$x = ${function(e){let t=window.document.evaluate(e,window.document,window.document.createNSResolver(window.document),5,null),r=[],n=t.iterateNext();for(;n&&!t.invalidIteratorState;)r.push(n),n=t.iterateNext();return r}.toString()}`);for(let e=0;e<5;e++){const t=`$${e.toString()}`;this.registerCommandLineByAssignment(t,this._executionContext.commandLineProperties.get(t))}this.registerCommandLineByAssignment("$_",this._executionContext.commandLineProperties.get("$_"))}unregisterCommandLineAPI(){const e=browser.unwrapMirror(this._executionContext.global);try{this._injectedCommand.forEach((t,r)=>{e[r]===t&&delete e[r];const n=diagnosticsScript.getConsoleScope();n[r]===t&&delete n[r]}),"getEventListenersInvoker"in e.__DEVTOOLS_CONSOLE&&delete e.__DEVTOOLS_CONSOLE.getEventListenersInvoker}catch(e){}this._injectedCommand.clear()}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){function t(e){return!("number"!=typeof e.r||!Number.isInteger(e.r)||e.r>255||e.r<0)&&(!("number"!=typeof e.g||!Number.isInteger(e.g)||e.g>255||e.g<0)&&(!("number"!=typeof e.b||!Number.isInteger(e.b)||e.b>255||e.b<0)&&(void 0===e.a||!("number"!=typeof e.a||e.a>1||e.a<0))))}e.isValidHighlightConfig=function(e){for(const[r,n]of Object.entries(e))switch(r){case"contentColor":case"marginColor":case"borderColor":case"paddingColor":if(!t(n))return!1;break;default:return!1}return!0},e.validateRGBA=t,e.createColorString=function(e){return e?(e.a||(e.a=1),"rgba( "+e.r+", "+e.g+", "+e.b+", "+e.a+")"):"rgba(0, 0, 0, 0)"}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(e){class t{constructor(t){this.protocol=e.getProtocol(t)}static mapNodeId(e){let r=dom.getNodeById(e);if(!r)throw t.generatedInvalidNodeIdError(`the DOM has no node with ID '${e}`);if(1!==r.nodeType&&r.parentNode&&1===r.parentNode.nodeType&&(r=r.parentNode),1===r.nodeType)return r}static generateValidationError(e,t){return new Error(`'${e}': ${t}`)}static generatedInvalidNodeIdError(e){return t.generateValidationError(t.nodeIdNameField,e)}static mapProtocolTypeToJavascriptType(e){return"integer"===e?"number":e}static runThroughCustomMapper(e,t){if(e.id){const r=this.c_customMappings.get(e.id.toLowerCase());if(r)return r(t)}return t}static validateArg(e,r){const n=r[e.name],o=t.mapProtocolTypeToJavascriptType(e.type);if(!n&&!e.optional)throw t.generateValidationError(e.name,"argument not provided and not optional");if(typeof n!==o)throw t.generateValidationError(e.name,`argument is of type '${typeof n}', '${e.type}' expected. BODY: '${JSON.stringify(e)}`);return t.runThroughCustomMapper(e,n)}validateFunctionArgs(e,r,n){return this.protocol.getExpectedFunctionArguments(e,r).map(e=>t.validateArg(e,n))}}t.c_customMappings=new Map([["nodeid",t.mapNodeId]]),t.nodeIdNameField="nodeId",e.FunctionArgumentValidator=t}(e.Validation||(e.Validation={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(t){class r{constructor(e){this.domains=e.domains,this.version=e.version,this._functionArgumentMap=new Map}getExpectedFunctionArguments(e,t){const r=this.getDomainMap(e);let n=r.get(t);return n||(n=this.lookupExpectedFunctionArguments(e,t),r.set(t,n)),n}mapPropertyToFunctionArgument(e,t){let r,n;const o=[];if(t.type)r=t.type,o.concat(this.getObjectProperties(e,t,r));else{const s=this.resolveRef(e,t.$ref);if(r=s.type,n=s.id,"object"===s.type)o.concat(this.mapTypeProperties(e,s));else if("array"===s.type)throw new Error("Invalid protocol JSON: object declarations for $ref should never be an array.")}return{type:r,id:n,name:t.name,optional:t.optional||!1,properties:o}}getObjectProperties(e,t,r){const n=[];if("array"===r){const r=this.mapPropertyToFunctionArgument(e,t.items);n.concat(r.properties)}return n}getDomainDefinition(t){return this.getDomainDefinitionByString(e.EdpDomain[t])}getDomainDefinitionByString(e){const t=this.domains.filter(t=>t.domain===e);if(1!==t.length)throw new Error("Invalid length of domains. Developer error!");return t[0]}getDomainMap(e){let t=this._functionArgumentMap.get(e);return t||(t=new Map,this._functionArgumentMap.set(e,t)),t}getFunctionDefinition(e,t){const r=e.commands.filter(e=>e.name===t);if(1!==r.length)throw new Error("Invalid function definition");return r[0]}lookupExpectedFunctionArguments(e,t){const r=this.getDomainDefinition(e);return this.getFunctionDefinition(r,t).parameters.map(t=>this.mapPropertyToFunctionArgument(e,t))}mapTypeProperties(e,t){return t.properties.map(t=>this.mapPropertyToFunctionArgument(e,t))}parseObjectReference(t,r){const n=r.split(".",2);let o,s;return 2===n.length?(o=n[0],s=n[1]):(o=e.EdpDomain[t],s=n[0]),{targetDomain:o,targetType:s}}resolveRef(e,t){const r=this.parseObjectReference(e,t),n=this.getDomainDefinitionByString(r.targetDomain).types.filter(e=>e.id===r.targetType);if(n.length>1)throw new Error("Multiply defined type.");if(0===n.length)throw new Error("Type not found");return n[0]}}t.Protocol=r,t.getProtocol=function(e){const t=e.protocolJson,n=t.substring(t.indexOf("{"),t.lastIndexOf("}")+1);return new r(JSON.parse(n))}}(e.Validation||(e.Validation={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t{static getVersionAsString(){return"v"+t.major+"."+t.minor}}let r;t.major=0,t.minor=2,e.EdpVersion=t,function(e){e[e.Schema=0]="Schema",e[e.Page=1]="Page",e[e.CSS=2]="CSS",e[e.DOM=3]="DOM",e[e.Runtime=4]="Runtime",e[e.Debugger=5]="Debugger",e[e.DOMDebugger=6]="DOMDebugger",e[e.Overlay=7]="Overlay"}(r=e.EdpDomain||(e.EdpDomain={}));class n{constructor(e,t,r,n){this._enabled=!1,this._domainName=e,this._domainStateHandler=r,this._inputValidator=n,this._messageHandler=t}get domain(){return{name:r[this._domainName],version:n.VERSION}}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this._domainStateHandler.setInitialDomainState(r[this._domainName],this._enabled)}get messageHandler(){return this._messageHandler}applyInitialDomainState(e){this.enabled=e}processMessage(e,t){let r;switch(e){case"enable":r=this.enable();break;case"disable":r=this.disable();break;default:r=this._messageHandler.createError(`Invalid Method: ${e}`)}return r}enable(){return this.enabled=!0,this._messageHandler.createResult({})}disable(){return this.enabled=!1,this._messageHandler.createResult({})}executeMethod(t,r,n){if(!this._inputValidator)return null;let o=[];try{o=this._inputValidator.validateFunctionArgs(this._domainName,t,n.params)}catch(e){return this._messageHandler.createError(`Invalid argument ${e.message}`,ErrorCodes.Code.invalidParams)}try{return{result:r(...o)}}catch(t){return e.BaseMessageHandler.createError(`Caught an unhandled exception: ${t.message},`,ErrorCodes.Code.serverError)}}}n.VERSION=t.getVersionAsString(),e.DomainHandler=n}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t{static executeScript(e,t,r=!1){var n;try{browser.enterToolsScriptMode(),n=diagnosticsScript.debugEval.bind(t)(e,r)}finally{browser.exitToolsScriptMode()}return n}static createSafeFunction(e,r,n,o){return t.executeScript("(func) => { return (...args) => func(...args) }",r,!0)(e.createSafeFunction(r,n,o))}static createSafeConsoleFunction(e,r,n,o){return t.executeScript(`(func) => {\n const nativeFunction = console.${o};\n return (...args) => {\n try {\n return func(...args);\n } catch (error) {\n return nativeFunction(...args);\n }\n }\n }`,r,!0)(e.createSafeFunction(r,n,!0))}static addSafeListener(e,r,n,o,s,a){var i=t.createSafeFunction(browser,e,o,a);return t.addListener(r,n,i,s),i}static addListener(e,t,r,n){n?e.addEventListener(t,r,n):e.addEventListener(t,r)}static getDefaultView(e){return e.defaultView}static getValidWindow(e,r,n){try{if(dom.isWindow(r)){let o=r;if(t.isCrossSiteWindow(e,r)){let t=dom.getCrossSiteWindow(e,r,n);t&&(o=t.document.defaultView)}if(o.document)return{isValid:!0,window:o.document.defaultView}}}catch(e){}return{isValid:!1}}static isCrossSiteWindow(e,t){try{e.Object.getOwnPropertyNames(t)}catch(e){return!0}return!1}static windowHasValidFrames(e){let t=!1;try{e.frames&&(t=!0)}catch(e){}return t}static getIdsByPostOrderTraversal(e){let r=[];if(!e.childFrames)return[e.frame.id];for(const n of e.childFrames)r=r.concat(t.getIdsByPostOrderTraversal(n));return r.push(e.frame.id),r}static getDocumentURL(e){return e.URL}static getDocumentMineType(e){return e.contentType}static getFrameName(e){try{const t=dom.getOwningFrameElement(e);let r=void 0;return t&&((r=t.getAttribute("name"))||(r=t.getAttribute("id")),r||(r=void 0)),r}catch(e){return}}static getDocumentIdFromLongDocumentId(e){let t=void 0;try{t=String(external.getDocumentIdFromLongDocumentId(e))}catch(e){t=""}return t}static getStackFrameArray(){const e=diagnosticsScript.getStackTrace(t.MAX_STACK_DEPTH);let r=[];for(const n of e){const e={functionName:n.functionName,scriptId:t.getDocumentIdFromLongDocumentId(String(n.documentID)),url:n.documentUrl,lineNumber:n.line,columnNumber:n.column};r.push(e)}return r}}t.MAX_STACK_DEPTH=30,e.RuntimeHelpers=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.EventDispatcher=class{constructor(){this._eventHandlers=new Map}addEventListener(e,t){this._eventHandlers.has(e)||this._eventHandlers.set(e,new Set);let r=this._eventHandlers.get(e);void 0!==r&&r.add(t)}removeEventListener(e,t){let r=this._eventHandlers.get(e);void 0!==r&&r.delete(t)}removeAllListeners(e){this._eventHandlers.delete(e)}dispatchAll(e,t){let r=this._eventHandlers.get(e);if(void 0!==r)for(let e of r)e(t)}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t extends e.EventDispatcher{constructor(e){super(),this._browser=e,this._frameIdMap=new Map,this._frameNodeMap=new Map,this._frameTreeRoot=this.buildFrameTree(this._browser.document.defaultView),this._browser.addEventListener("frameAttached",e=>this.onFrameAttached(e)),this._browser.addEventListener("frameNavigated",e=>this.onFrameNavigated(e)),this._browser.addEventListener("frameDetached",e=>this.onFrameDetached(e))}onFrameAttached(r){if(!r||!r.browserOrWindow)return;const n=t.getFrameId(r.frameId),o=e.RuntimeHelpers.getDefaultView(r.browserOrWindow.document),s={targetWindow:o,frameId:n,parentFrameId:t.getFrameId(r.parentFrameId),isCreatedByScript:r.isCreatedByScript};this._frameIdMap.set(s.frameId,s.targetWindow),this.dispatchAll("onFrameAttached",s);const a={frame:this.createEdpFrame(o,s.parentFrameId)};if(this._frameNodeMap.set(n,a),n===t.TOP_WINDOW_FRAME_ID)this._frameTreeRoot=a;else if(this._frameNodeMap.has(s.parentFrameId)){let e=this._frameNodeMap.get(s.parentFrameId);e&&(e.childFrames||(e.childFrames=[]),e.childFrames.push(a))}}onFrameNavigated(e){if(!e||!e.browserOrWindow)return;const r=t.getFrameId(e.frameId),n=e.parentFrameId>-1?t.getFrameId(e.parentFrameId):void 0,o={targetWindow:e.browserOrWindow,frameId:r,parentFrameId:n,frameName:e.frameName,url:e.url,mimeType:e.mimeType};this._frameIdMap.set(o.frameId,o.targetWindow),this.dispatchAll("onFrameNavigated",o);const s=this._frameNodeMap.get(o.frameId);if(s){let e=s.frame;e.name=o.frameName,e.securityOrigin=o.targetWindow.location.protocol+"//"+o.targetWindow.location.host,e.url=o.url,e.mimeType=o.mimeType}}getWindowFromFrameId(e){return this._frameIdMap.get(e)}getFrameIdFromWindow(e){return t.getFrameId(this._browser.getFrameId(e))}fireOnFrameDetached(e){const t={frameId:e};this.dispatchAll("onFrameDetached",t),this._frameIdMap.delete(t.frameId);const r=this._frameNodeMap.get(t.frameId);let n;if(r&&r.frame.parentId&&(n=this._frameNodeMap.get(r.frame.parentId)),this._frameNodeMap.delete(t.frameId),r&&n&&n.childFrames){const e=n.childFrames.indexOf(r);e>=0&&(1===n.childFrames.length?delete n.childFrames:n.childFrames.splice(e,1))}}onFrameDetached(r){if(!r||!r.frameId)return;const n=t.getFrameId(r.frameId),o=this._frameNodeMap.get(n);if(!o)return;const s=e.RuntimeHelpers.getIdsByPostOrderTraversal(o);for(const e of s)this.fireOnFrameDetached(e)}createEdpFrame(r,n){const o=t.getFrameId(this._browser.getFrameId(r)),s=r.document;return{id:o,parentId:n,name:e.RuntimeHelpers.getFrameName(r),url:e.RuntimeHelpers.getDocumentURL(s),securityOrigin:r.location.origin,mimeType:e.RuntimeHelpers.getDocumentMineType(s)}}buildFrameTree(t,r){const n=this.createEdpFrame(t,r),o=n.id;this._frameIdMap.has(o)||this._frameIdMap.set(o,t);let s=[];if(e.RuntimeHelpers.windowHasValidFrames(t))for(let r=0;r0?s:void 0};return this._frameNodeMap.set(o,a),a}getFrameTree(){return this._frameTreeRoot||(this._frameTreeRoot=this.buildFrameTree(this._browser.document.defaultView)),{frameTree:this._frameTreeRoot}}static getFrameId(e){return String(e)}}t.TOP_WINDOW_FRAME_ID="0",e.FrameManager=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.getArrayDescription=function(e,t){return`${t}(${e.length})`},e.getContainerDescription=function(e,t){return`${t}(${e.size})`},e.getErrorDescription=function(e){return e.message},e.getDateDescription=function(e){return Date.prototype.toString.call(e)},e.getRegExpDescription=function(e){return RegExp.prototype.toString.call(e)}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.cObjectClassNameToSubTypeMap=new Map([["Array","array"],["Map","map"],["Set","set"],["WeakMap","weakmap"],["WeakSet","weakset"],["Date","date"],["Generator","generator"],["Promise","promise"],["Proxy","proxy"],["RegExp","regexp"],["MapIterator","iterator"],["SetIterator","iterator"],["Int8Array","typedarray"],["Uint8Array","typedarray"],["Uint8ClampedArray","typedarray"],["Int16Array","typedarray"],["Uint16Array","typedarray"],["Int32Array","typedarray"],["Uint32Array","typedarray"],["Float32Array","typedarray"],["Float64Array","typedarray"],["Error","error"],["EvalError","error"],["RangeError","error"],["ReferenceError","error"],["SyntaxError","error"],["TypeError","error"],["URIError","error"]]),e.cObjectDescriptionMap=new Map([["Array",e.getArrayDescription],["Int8Array",e.getArrayDescription],["Uint8Array",e.getArrayDescription],["Uint8ClampedArray",e.getArrayDescription],["Int16Array",e.getArrayDescription],["Uint16Array",e.getArrayDescription],["Int32Array",e.getArrayDescription],["Uint32Array",e.getArrayDescription],["Float32Array",e.getArrayDescription],["Float64Array",e.getArrayDescription],["Map",e.getContainerDescription],["Set",e.getContainerDescription],["Date",e.getDateDescription],["RegExp",e.getRegExpDescription],["Error",e.getErrorDescription],["EvalError",e.getErrorDescription],["RangeError",e.getErrorDescription],["ReferenceError",e.getErrorDescription],["SyntaxError",e.getErrorDescription],["TypeError",e.getErrorDescription],["URIError",e.getErrorDescription]])}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.RemoteObjectManager=class{constructor(e,t,r){this._objIdCounter=1,this._groupMap=new Map,this._idMap=new Map,this._contextEventMapListenerAdded=!1,this._browser=e,this._onScriptClearedMapBind=(()=>{}),this._executionContextManager=t,this._messageHandler=r}hasObject(e){return this._idMap.has(e)}getObject(e){var t={object:void 0,contextId:0,errorResult:void 0};let r,n=this.normalizeObjectId(e);try{r=JSON.parse(n)}catch(e){return t.errorResult=this._messageHandler.createError('Invalid parameters, "ObjectId": '+n,ErrorCodes.Code.invalidParams),t}let o=r.executionContextId;if(!Number.isInteger(o))return t.errorResult=this._messageHandler.createError('Invalid parameters, "ContextId": number value expected'+n,ErrorCodes.Code.invalidParams),t;if(!this._executionContextManager.getExecutionContext(o))return t.errorResult=this._messageHandler.createError("Cannot find context with given id:: "+n,ErrorCodes.Code.serverError),t;t.contextId=o;let s=r.id;return Number.isInteger(s)?this._idMap.has(n)?(t.object=this._idMap.get(n),t):(t.errorResult=this._messageHandler.createError("Could not find object with given objectId: "+n,ErrorCodes.Code.serverError),t):(t.errorResult=this._messageHandler.createError('Invalid parameters, "id": number value expected'+n,ErrorCodes.Code.invalidParams),t)}getGroupById(e){return this._groupMap.get(e)}addObject(e,t,r){r||(r=this._executionContextManager.getDefaultExecutionContextId());const n={executionContextId:r,id:this._objIdCounter},o=JSON.stringify(n);return t&&this._groupMap.set(o,t),this._idMap.set(o,e),this._objIdCounter++,o}updateObject(e,t){let r=!1;return this._idMap.has(e)&&(this._idMap.set(e,t),r=!0),r}removeObject(e){this._idMap.delete(e),this._groupMap.delete(e)}removeObjectGroup(e){this._groupMap.forEach((t,r)=>{t===e&&(this._idMap.delete(r),this._groupMap.delete(r))})}clear(){this._groupMap.clear(),this._idMap.clear(),this._objIdCounter=1,this._browser.removeEventListener("scriptContextsCleared",this._onScriptClearedMapBind),this._contextEventMapListenerAdded=!1}normalizeObjectId(e){try{return JSON.stringify(JSON.parse(e))}catch(t){return e}}convertToObject(e){try{return JSON.parse(e)}catch(e){return}}convertToString(e){try{return JSON.stringify(e)}catch(e){return}}buildRemoteObject(e,t,r,n,o){this._contextEventMapListenerAdded||(this._onScriptClearedMapBind=this.clear.bind(this),this._browser.addEventListener("scriptContextsCleared",this._onScriptClearedMapBind),this._contextEventMapListenerAdded=!0);let s={type:typeof e,value:e};if(null===e)return s.subtype="null",s;switch(typeof e){case"number":Object.is(-0,e)?s.description="-0":s.description=Number.prototype.toString.call(e),-1!=["NaN","Infinity","-Infinity","-0"].indexOf(s.description||"")&&(s.unserializableValue=s.description,s.value=void 0);break;case"function":t?s.value={}:(s.className="Function",s.description=Function.prototype.toString.call(e),s.objectId=this.addObject(e,r,n),s.msDebuggerPropertyId=s.objectId);break;case"object":t||(s.value=void 0,s.className=this.getClassName(e),s.subtype=this.getSubType(e,s.className,n),s.description=this.getDescription(e,s.className,s.subtype),s.objectId=this.addObject(e,r,n),s.msDebuggerPropertyId=s.objectId);break;case"symbol":s.description="Symbol"}return o&&(s.msDebuggerPropertyId=o),s}getClassName(e){let t=Object.prototype.toString.call(e);return"Array Iterator"!==(t=t.substring(8,t.length-1))&&(t=t.replace(/\s/g,"")),"Error"===t&&(t=e.name),t}getSubType(t,r,n){if("Array Iterator"==r)return;let o=e.cObjectClassNameToSubTypeMap.get(r);if(void 0===o){const e=n||this._executionContextManager.getDefaultExecutionContextId(),r=this._executionContextManager.getExecutionContext(e);void 0!==r&&t instanceof this._browser.unwrapMirror(r.global).Node&&(o="node")}return o}getDescription(t,r,n){let o=r;const s=e.cObjectDescriptionMap.get(r);return void 0!==s&&(o=s.apply(t,[t,r])),o}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.AddRemoteObjectWindowFunction="__DEVTOOLS_ADD_REMOTE_OBJECT",e.AddRemoteObjectWindowFunctionResult="__DEVTOOLS_ADD_REMOTE_OBJECT_RESULT",e.UpdateRemoteObjectWindowFunction="__DEVTOOLS_UPDATE_REMOTE_OBJECT",e.ReleaseObjectGroupWindowFunction="__DEVTOOLS_RELEASE_OBJECT_GROUP",e.DebuggerReturnResultFunction="__DEVTOOLS_CONSOLE_GLOBAL_SCOPE_RETURN_RESULT",e.DebuggerEvalResultObject="__DEVTOOLS_CONSOLE_GLOBAL_SCOPE_EVAL_RESULT",e.AddCommandLineAPIFunction="__DEVTOOLS_ADD_COMMAND_LINE_API",e.RemoveCommandLineAPIFunction="__DEVTOOLS_REMOVE_COMMAND_LINE_API",e.UpdateConsole$_Function="__DEVTOOLS_UPDATE_CONSOLE_$_"}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";let t;!function(e){e[e.Frame=0]="Frame",e[e.ExtensionContext=1]="ExtensionContext"}(t=e.ExecutionContextType||(e.ExecutionContextType={}));class r{constructor(e,t){this._commandLineProperties=new Map,this._global=e,this._frameId=t}get name(){return""}get type(){return t.Frame}get global(){return this._global}get origin(){return this._global.location.protocol+"//"+this._global.location.host}get frameId(){return this._frameId}get contextId(){return this._contextId}set contextId(e){this._contextId=e}get commandLineProperties(){return this._commandLineProperties}get consoleObj(){return this._consoleObj}set consoleObj(e){this._consoleObj=e}updateWindow(e){this._global=e}executeScript(t,r){return e.RuntimeHelpers.executeScript(t,browser.unwrapMirror(this._global),r)}createSafeFunction(t){return e.RuntimeHelpers.createSafeFunction(browser,browser.unwrapMirror(this._global),t,!0)}createSafeConsoleFunction(t,r){return e.RuntimeHelpers.createSafeConsoleFunction(browser,browser.unwrapMirror(this._global),t,r)}addSafeListener(t,r,n,o){return e.RuntimeHelpers.addSafeListener(browser.unwrapMirror(this._global),t,r,n,o,!0)}RegisterFunction(e,t){let r=browser.unwrapMirror(this._global);!r||e in r||(r[e]=t)}UnregisterFunction(e){let t=browser.unwrapMirror(this._global);t&&e in t&&delete t[e]}}e.FrameExecutionContext=r;class n{constructor(e,t){this._commandLineProperties=new Map,this._extensionContext=e,this._frameId=t;let r=this._extensionContext.name;const n=r.lastIndexOf("_");n>=0&&(r=r.substr(0,n)),this._name=r}get name(){return this._name}get type(){return t.ExtensionContext}get global(){return this._extensionContext.global}get origin(){return this._name}get frameId(){return this._frameId}get contextId(){return this._contextId}set contextId(e){this._contextId=e}get commandLineProperties(){return this._commandLineProperties}get consoleObj(){return this._consoleObj}set consoleObj(e){this._consoleObj=e}get extensionContext(){return this._extensionContext}updateWindow(e){}executeScript(t,r){return e.RuntimeHelpers.executeScript(t,browser.unwrapMirror(this._extensionContext.global),r)}createSafeFunction(t){return e.RuntimeHelpers.createSafeFunction(this._extensionContext,browser.unwrapMirror(this.global),t,!0)}createSafeConsoleFunction(t,r){return e.RuntimeHelpers.createSafeConsoleFunction(this._extensionContext,browser.unwrapMirror(this.global),t,r)}addSafeListener(t,r,n,o){var s=this.createSafeFunction(n);return e.RuntimeHelpers.addListener(t,r,s,o),s}RegisterFunction(e,t){let r=browser.unwrapMirror(this._extensionContext.global);!r||e in r||(r[e]=t)}UnregisterFunction(e){let t=browser.unwrapMirror(this._extensionContext.global);t&&e in t&&delete t[e]}}e.ExtensionExecutionContext=n;class o{constructor(e,t,r,n){this._contextId=0,this._browser=e,this._messageHandler=t,this._runtimeDomainHandler=r,this._contextIdMap=new Map,this._targetIdByExtensionId=new Map,this._frameManager=n,this._defaultExecutionContextId=0,this.initializeExecutionContextManager()}enable(){this.fireExecutionContextCreatedForAllContexts()}getDefaultExecutionContextId(){return this._defaultExecutionContextId}initializeExecutionContextManager(){this.initializeExecutionContexts(browser.document.defaultView),this._frameManager.addEventListener("onFrameNavigated",e=>this.onFrameNavigated(e)),this._frameManager.addEventListener("onFrameDetached",e=>this.onFrameDetached(e)),this._targetIdByExtensionId.clear(),this._browser.extensionContexts.forEach(e=>this.onExtensionContextCreated(e)),this._browser.addEventListener("extensionContextCreated",e=>this.onExtensionContextCreated(e)),this._browser.addEventListener("extensionContextClosed",e=>this.onExtensionContextClosed(e)),this._browser.addEventListener("scriptContextsCleared",()=>this.onScriptContextsCleared())}getExecutionContext(e){return this._contextIdMap.get(e)}onScriptContextCreated(e,r){this.updateExecutionContextId(e),this.fireExecutionContextCreated(e,this._contextId),e.executeScript("",!0),this.registerEdpProperties(e),e.type===t.ExtensionContext&&r&&this._targetIdByExtensionId.set(r,this._contextId)}onExtensionContextClosed(e){const t=this._targetIdByExtensionId.get(e);t&&this.removeFrameTarget(t),this._targetIdByExtensionId.delete(e)}onScriptContextsCleared(){this.fireExecutionContextsCleared(),this._contextId=0,this._contextIdMap.clear(),this._targetIdByExtensionId.clear()}onExtensionContextCreated(t){if(this._targetIdByExtensionId.has(t.id))return;const r=this._frameManager.getFrameIdFromWindow(t.global.document.defaultView);e.EDP_FAIL_FAST_IF("-1"===r,"Unable to get valid FrameId for Extension Context"),this.onScriptContextCreated(new n(t,r))}initializeExecutionContexts(t,n){let o;if(n)o=n;else try{o=e.RuntimeHelpers.getDefaultView(browser.document)}catch(e){return}const s=t===t.parent;if(!s){let r=e.RuntimeHelpers.getValidWindow(o,t);if(!r.window)return;t=r.window}const a=this._frameManager.getFrameIdFromWindow(t);let i=!1;if(this._contextIdMap.forEach((e,r)=>{try{e.frameId===a&&(i=!0,this.updateWindowForContext(e,t),this.updateExecutionContextId(e,r),this.fireExecutionContextCreated(e,r))}catch(e){}}),!i){let e=new r(t,a);this.onScriptContextCreated(e),s&&(this._defaultExecutionContextId=this._contextId)}if(e.RuntimeHelpers.windowHasValidFrames(t))for(let r=0;r{r.registerCommandLineAPI()}),o=t.createSafeFunction(()=>{r.unregisterCommandLineAPI()}),s=t.createSafeFunction(e=>{t.commandLineProperties.set("$_",e)});t.RegisterFunction(e.AddCommandLineAPIFunction,n),t.RegisterFunction(e.RemoveCommandLineAPIFunction,o),t.RegisterFunction(e.UpdateConsole$_Function,s)}}unregisterCommandLineAPIOnWindow(t){t.UnregisterFunction(e.AddCommandLineAPIFunction),t.UnregisterFunction(e.RemoveCommandLineAPIFunction)}static convertToResult(e){let t=e.result;return e.isError&&((t=new Error).message=e.result.message,t.name=e.result.name,e.result.stack&&(t.stack=e.result.stack)),t}registerAddRemoteObjectOnWindow(r){let n=void 0;if(r.type==t.Frame||r.type==t.ExtensionContext?n=browser.unwrapMirror(r.global):e.EDP_FAIL_FAST("Register add remote object on window not supported on current context type."),e.AddRemoteObjectWindowFunction in n)return;const s=this._runtimeDomainHandler,a=r.contextId;const i=r.createSafeFunction(function(t,r,i){const d=o.convertToResult(t),l=s.remoteObjectManager.buildRemoteObject(d,i,r,a);n[e.AddRemoteObjectWindowFunctionResult]=JSON.stringify(l)});r.RegisterFunction(e.AddRemoteObjectWindowFunction,i)}unregisterAddRemoteObjectFromWindow(t){t.UnregisterFunction(e.AddRemoteObjectWindowFunction)}registerUpdateRemoteObjectOnWindow(r){let n=void 0;if(r.type==t.Frame||r.type==t.ExtensionContext?n=browser.unwrapMirror(r.global):e.EDP_FAIL_FAST("Register update remote object on window not supported on current context type."),e.UpdateRemoteObjectWindowFunction in n)return;const s=this._runtimeDomainHandler;const a=r.createSafeFunction(function(e,t){const r=o.convertToResult(e);s.remoteObjectManager.updateObject(t,r)});r.RegisterFunction(e.UpdateRemoteObjectWindowFunction,a)}unregisterUpdateRemoteObjectFromWindow(t){t.UnregisterFunction(e.UpdateRemoteObjectWindowFunction)}registerReleaseObjectGroupOnWindow(t){const r=this._runtimeDomainHandler;const n=t.createSafeFunction(function(e){r.remoteObjectManager.removeObjectGroup(e)});t.RegisterFunction(e.ReleaseObjectGroupWindowFunction,n)}unregisterReleaseObjectGroupFromWindow(t){t.UnregisterFunction(e.ReleaseObjectGroupWindowFunction)}onFrameNavigated(t){const n=t.targetWindow;try{let o=e.RuntimeHelpers.getDefaultView(n.document),s=this.getExecutionContextIdByFrameId(t.frameId);if(s>0){this._contextIdMap.get(s)&&this.removeFrameTarget(s)}this.onScriptContextCreated(new r(o,t.frameId)),o===e.RuntimeHelpers.getDefaultView(browser.document)&&(this._defaultExecutionContextId=this._contextId)}catch(e){return}}onFrameDetached(e){try{this._contextIdMap.forEach((t,r)=>{t.frameId===e.frameId&&this.removeFrameTarget(r)})}catch(e){}}removeFrameTarget(e){if(this._contextIdMap.has(e)){const t=this._contextIdMap.get(e);t&&this.unregisterEdpProperties(t),this.fireExecutionContextDestroyed(e),this._contextIdMap.delete(e)}}getExecutionContextId(e,t){let r=0;t&&(r=this._defaultExecutionContextId);for(const[t,r]of this._contextIdMap)if(r.global===e)return t;return r}getExecutionContextIdByFrameId(e){for(const[t,r]of this._contextIdMap)if(e===r.frameId)return t;return 0}getNextContextId(){return++this._contextId}fireExecutionContextCreatedForAllContexts(){if(this._runtimeDomainHandler.enabled)for(const[e,t]of this._contextIdMap)this.fireExecutionContextCreated(t,e)}fireExecutionContextCreated(e,t){if(!this._runtimeDomainHandler.enabled)return;const r={context:{id:t,origin:e.origin,name:e.name,auxData:parseInt(e.frameId)>=0?{frameId:e.frameId}:void 0}};this._messageHandler.postNotification("Runtime.executionContextCreated",r)}fireExecutionContextDestroyed(e){this._runtimeDomainHandler.enabled&&this._messageHandler.postNotification("Runtime.executionContextDestroyed",{executionContextId:e})}fireExecutionContextsCleared(){this._runtimeDomainHandler.clearRuntimeMessageQueue(),this._runtimeDomainHandler.enabled&&this._messageHandler.postNotification("Runtime.executionContextsCleared",{})}injectConsoleForExecutionContexts(){for(let e of this._contextIdMap.values())e.consoleObj.initialize()}uninjectConsoleForExecutionContexts(){for(let e of this._contextIdMap.values())e.consoleObj.uninitializeConsoles()}}e.ExecutionContextManager=o}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";const t="console",r=1e3;e.RuntimeDomainHandler=class extends e.DomainHandler{constructor(t,r,n){super(e.EdpDomain.Runtime,t,r),this._exceptionCounter=1,this._browser=browser,this._executionContextManager=new e.ExecutionContextManager(this._browser,this._messageHandler,this,n),this._remoteObjectManager=new e.RemoteObjectManager(this._browser,this._executionContextManager,t),this._runtimeMessageQueue=[],this._onConsoleMessageBind=(()=>{}),this._onDetachBind=this.disableRuntime.bind(this),this._messageHandler.addEventListener("OnDetach",this._onDetachBind)}processMessage(e,t){let r;switch(e){case"enable":r=this.enableRuntime();break;case"disable":r=this.disableRuntime();break;case"evaluate":r=this.evaluate(t);break;case"callFunctionOn":r=this.callFunctionOn(t);break;case"awaitPromise":r=this.awaitPromise(t);break;case"getProperties":r=this.getProperties(t);break;case"releaseObjectGroup":r=this.releaseObjectGroup(t);break;case"releaseObject":r=this.releaseObject(t);break;case"discardConsoleEntries":r=this.discardConsoleEntries();break;case"msSetDebuggerPropertyValue":r=this.msSetDebuggerPropertyValue(t);break;case"globalLexicalScopeNames":r=this.globalLexicalScopeNames(t);break;default:r=super.processMessage(e,t)}return r}applyInitialDomainState(e){e?this.enableRuntime():this.disableRuntime()}get remoteObjectManager(){return this._remoteObjectManager}get executionContextManager(){return this._executionContextManager}enableRuntime(){if(!this.enabled){this._onConsoleMessageBind=this.onConsoleMessage.bind(this),this._executionContextManager.injectConsoleForExecutionContexts(),this._browser.addEventListener("consoleMessage",this._onConsoleMessageBind),this.enabled=!0,this._executionContextManager.enable();for(let e of this._runtimeMessageQueue)if(0===e.messageType){const t=e.message;this.fireConsoleMessage(t.type,t.executionContextId,t.args,t.stackTrace)}else this._messageHandler.postNotification("Runtime.exceptionThrown",e.message)}return this.enable()}disableRuntime(){return this.enabled&&(this._browser.removeEventListener("consoleMessage",this._onConsoleMessageBind),this._executionContextManager.uninjectConsoleForExecutionContexts()),this.disable()}onConsoleMessage(e){if("CONSOLE"!==e.source&&"SCRIPT"!==e.source)return;let t;if("CONSOLE"===e.source){let r={type:e.source,args:[e.messageText]};t={messageType:0,message:r},this.fireConsoleMessage(r.type,this._executionContextManager.getDefaultExecutionContextId(),r.args)}else if("SCRIPT"===e.source){const r={exceptionId:this._exceptionCounter++,text:e.messageText,lineNumber:e.line||0,columnNumber:e.column||0,url:e.fileUrl},n={timestamp:Date.now(),exceptionDetails:r};t={messageType:1,message:n},this.enabled&&this._messageHandler.postNotification("Runtime.exceptionThrown",n)}t&&(this._runtimeMessageQueue.length>=r&&this._runtimeMessageQueue.shift(),this._runtimeMessageQueue.push(t))}fireConsoleMessage(e,r,n,o){let s=[];if(n&&this.enabled){for(const e of n)s.push(this._remoteObjectManager.buildRemoteObject(e,!1,t,r));const a={type:e,args:s,executionContextId:r,timestamp:Date.now(),stackTrace:o};this._messageHandler.postNotification("Runtime.consoleAPICalled",a)}}fireInspectRequested(e,r){if(e){const n={object:this._remoteObjectManager.buildRemoteObject(e,!1,t,r),hints:{}};this.enabled&&this._messageHandler.postNotification("Runtime.inspectRequested",n)}}handleConsoleAPICalled(e,t,n,o){let s={type:e,args:n,executionContextId:t,stackTrace:o};this._runtimeMessageQueue.length>=r&&this._runtimeMessageQueue.shift(),this._runtimeMessageQueue.push({messageType:0,message:s}),this.fireConsoleMessage(e,t,n,o)}clearRuntimeMessageQueue(){this._runtimeMessageQueue=[],this._exceptionCounter=1}releaseObject(e){return e.params.objectId?this._remoteObjectManager.hasObject(e.params.objectId)?(this._remoteObjectManager.removeObject(e.params.objectId),this._messageHandler.createResult({})):this._messageHandler.createError("Invalid remote object id",ErrorCodes.Code.serverError):this._messageHandler.createError("Expected objectId in params.",ErrorCodes.Code.invalidParams)}releaseObjectGroup(e){return e.params.objectGroup?(this._remoteObjectManager.removeObjectGroup(e.params.objectGroup),this._messageHandler.createResult({})):this._messageHandler.createError("Expected objectGroup in params.",ErrorCodes.Code.invalidParams)}discardConsoleEntries(){return this._remoteObjectManager.removeObjectGroup(t),this._messageHandler.createResult({})}evaluate(t){if(null==t.params.expression)return this._messageHandler.createError("Expected expression in params: "+JSON.stringify(t.params),ErrorCodes.Code.invalidParams);const r="silent"in t.params&&t.params.silent;let n=this._executionContextManager.getDefaultExecutionContextId();if(void 0!==t.params.contextId){const e=t.params.contextId;if(!Number.isInteger(e))return this._messageHandler.createError("Invalid parameters, integer value expected for contextId: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);n=e}let o,s,a,i=this._executionContextManager.getExecutionContext(n);if(!i)return this._messageHandler.createError("Cannot find context with given id: "+n,ErrorCodes.Code.serverError);if(t.params.includeCommandLineAPI){if("boolean"!=typeof t.params.includeCommandLineAPI)return this._messageHandler.createError("Invalid parameters, boolean value expected for includeCommandLineAPI: "+t.params.includeCommandLineAPI,ErrorCodes.Code.invalidParams);(o=new e.CommandLineApi(i)).registerCommandLineAPI()}try{i&&(s=i.executeScript(t.params.expression,r))}catch(e){s=e}if(s instanceof Error||i.commandLineProperties.set("$_",s),o&&t.params.includeCommandLineAPI&&o.unregisterCommandLineAPI(),s instanceof Error){const e=this._remoteObjectManager.buildRemoteObject(s,t.params.returnByValue,t.params.objectGroup,n);a=this._messageHandler.createResult({result:e})}else if(t.params.awaitPromise&&"function"==typeof s.then)a=null,this.safeAsyncCall(browser.document.defaultView,s).then(e=>{const r=this._remoteObjectManager.buildRemoteObject(e,t.params.returnByValue,t.params.objectGroup,n);let o=this._messageHandler.createResult({result:r});"symbol"===r.type&&t.params.returnByValue&&(o=this._messageHandler.createError("Object couldn't be returned by value",ErrorCodes.Code.serverError)),this._messageHandler.postResponse(t.id,o)},e=>{const r=this._remoteObjectManager.buildRemoteObject(e,t.params.returnByValue,t.params.objectGroup,n);let o=this._messageHandler.createResult({result:r});"symbol"===r.type&&t.params.returnByValue&&(o=this._messageHandler.createError("Object couldn't be returned by value",ErrorCodes.Code.serverError)),this._messageHandler.postResponse(t.id,o)});else{const e=this._remoteObjectManager.buildRemoteObject(s,t.params.returnByValue,t.params.objectGroup,n);a="symbol"===e.type&&t.params.returnByValue?this._messageHandler.createError("Object couldn't be returned by value",ErrorCodes.Code.serverError):this._messageHandler.createResult({result:e})}return a}callFunctionOn(e){if("string"!=typeof e.params.functionDeclaration)return this._messageHandler.createError("Expected functionDeclaration in params: "+JSON.stringify(e.params),ErrorCodes.Code.invalidParams);if("string"!=typeof e.params.objectId&&"number"!=typeof e.params.executionContextId)return this._messageHandler.createError("Either objectId or executionContextId must be specified",ErrorCodes.Code.invalidParams);if(e.params.objectId&&e.params.executionContextId)return this._messageHandler.createError("ObjectId must not be specified together with executionContextId",ErrorCodes.Code.invalidParams);let t=[];if(e.params.arguments&&!this.formatArgumentList(e.params.arguments,t))return this._messageHandler.createError("Invalid argument list : "+JSON.stringify(e.params.arguments),ErrorCodes.Code.serverError);if(e.params.executionContextId&&!Number.isInteger(e.params.executionContextId))return this._messageHandler.createError("Invalid parameters, integer value expected for contextId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);const r=e.params.id,n=e.params.objectId?e.params.objectId:void 0,o=e.params.executionContextId?e.params.executionContextId:void 0,s=e.params.functionDeclaration,a=!e.params.silent||e.params.silent,i=!!e.params.returnByValue&&e.params.returnByValue,d=!!e.params.awaitPromise&&e.params.awaitPromise,l=e.params.objectGroup?e.params.objectGroup:this._remoteObjectManager.getGroupById(e.params.objectId);return this.callFunctionOnImpl(r,n,o,s,t,a,i,d,l)}callFunctionOnImpl(e,t,r,n,o,s,a,i,d){let l,c,u,m;if(t){const e=this._remoteObjectManager.getObject(t);if(void 0!==e.errorResult)return e.errorResult;u=e.contextId,l=e.object,c=this._executionContextManager.getExecutionContext(u)}else r&&(u=r,(c=this._executionContextManager.getExecutionContext(u))&&(l=c.global));if(!c){const e=t?"remoteObjectId: "+t:"executionContextId: "+r;return this._messageHandler.createError("Could not find the execution context for "+e,ErrorCodes.Code.serverError)}const h="("+n+")";try{let t,r=c.executeScript(h,s);if(t=o.length>0?r.apply(l,o):r.call(l),i&&"function"==typeof t.then)m=null,this.safeAsyncCall(c.global,t).then(t=>{let r=this._remoteObjectManager.buildRemoteObject(t,a,d,u),n=this._messageHandler.createResult({result:r});this._messageHandler.postResponse(e,n)},t=>{let r=this._remoteObjectManager.buildRemoteObject(t,a,d,u),n=this._messageHandler.createResult({result:r});this._messageHandler.postResponse(e,n)});else{let e=this._remoteObjectManager.buildRemoteObject(t,a,d,u);m=this._messageHandler.createResult({result:e})}}catch(e){let t={type:"object",subtype:"error",description:e.toString()};m=this._messageHandler.createResult({result:t})}return m}getProperties(e){if(!e.params.objectId)return this._messageHandler.createError("Expected objectId in params: "+JSON.stringify(e.params),ErrorCodes.Code.invalidParams);const t=this._remoteObjectManager.convertToObject(e.params.objectId);if(!t||!this._remoteObjectManager.hasObject(e.params.objectId))return this._messageHandler.createError("Invalid remote object Id: "+JSON.stringify(e.params),ErrorCodes.Code.serverError);const r=this._remoteObjectManager.getObject(e.params.objectId);if(r.errorResult)return r.errorResult;const n=r.contextId,o=this._remoteObjectManager.getGroupById(e.params.objectId),s="ownProperties"in e.params&&e.params.ownProperties,a="accessorPropertiesOnly"in e.params&&e.params.accessorPropertiesOnly;let i=[],d=this.getPropertiesImpl(t,r.object,!0,s,a,i,n,o);return d||(d=this._messageHandler.createResult({result:i})),d}getPropertiesImpl(e,t,r,n,o,s,a,i){if(null==t)return;const d=Object.getOwnPropertyDescriptors(t),l=Object.entries(d);for(const[t,n]of l){const d=n.get||n.set;if(!o||o&&d){let o;try{o=JSON.stringify({objectId:e,propertyName:t})}catch(e){return this._messageHandler.createError("Invalid debuggerPropertyId: "+e.message,ErrorCodes.Code.serverError)}let l={name:t,value:this._remoteObjectManager.buildRemoteObject(n.value,!1,void 0,a,o),writable:n.writable||!1,configurable:n.configurable||!1,enumerable:n.enumerable||!1,isOwn:r};d&&(l.set=this._remoteObjectManager.buildRemoteObject(n.set,!1,i,a),l.get=this._remoteObjectManager.buildRemoteObject(n.get,!1,i,a)),s.push(l)}}if(!n){const r=Object.getPrototypeOf(t);if(r)return this.getPropertiesImpl(e,r,!1,n,o,s,a,i)}}formatArgumentList(e,t){let r=!0;for(let n=0;n{let n=this._remoteObjectManager.buildRemoteObject(t,e.params.returnByValue,void 0,r),o=this._messageHandler.createResult({result:n});this._messageHandler.postResponse(e.id,o)},t=>{let n=this._remoteObjectManager.buildRemoteObject(t,e.params.returnByValue,void 0,r),o=this._messageHandler.createResult({result:n});this._messageHandler.postResponse(e.id,o)}),null):this._messageHandler.createError("Could not find promise object with given id: "+e.params.promiseObjectId,ErrorCodes.Code.serverError)}safeAsyncCall(e,t){let r,n;const o=new Promise((e,t)=>{r=e,n=t});let s=this.createSafeFunction(e,e=>{r(e)}),a=this.createSafeFunction(e,e=>{n(e)});return t.then(s,a),o}createSafeFunction(e,t){return this.executeScript("(func) => { return (...args) => func(...args) }",e,!0)(this._browser.createSafeFunction(e,t))}msSetDebuggerPropertyValue(e){if(!e.params.debuggerPropertyId)return this._messageHandler.createError("Expected debuggerPropertyId in params: "+JSON.stringify(e.params),ErrorCodes.Code.invalidParams);if("string"!=typeof e.params.debuggerPropertyId)return this._messageHandler.createError("Invalid parameters, string value expected for debuggerPropertyId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if("string"!=typeof e.params.newValue)return this._messageHandler.createError("Expected newValue (string) in params: "+JSON.stringify(e.params),ErrorCodes.Code.invalidParams);const t=e.id;let r;try{r=JSON.parse(e.params.debuggerPropertyId)}catch(e){return this._messageHandler.createError("Invalid internal state for debuggerPropertyId: "+e.message,ErrorCodes.Code.serverError)}const n=this._remoteObjectManager.convertToString(r.objectId);if(!n)return this._messageHandler.createError("Unable to obtain remoteObjectId from debuggerPropertyId.",ErrorCodes.Code.serverError);const o=r.propertyName,s=e.params.newValue,a=this._remoteObjectManager.getObject(n);if(void 0!==a.errorResult)return a.errorResult;const i=this._executionContextManager.getExecutionContext(a.contextId);if(!i)return this._messageHandler.createError("Could not find the execution context for remoteObjectId: "+n,ErrorCodes.Code.serverError);let d;try{d=i.executeScript(s,!0)}catch(e){return this._messageHandler.createError("Invalid newValue provided: "+s,ErrorCodes.Code.invalidParams)}const l=[o,d];return this.callFunctionOnImpl(t,n,void 0,"function(a,b){this[a]=b;}",l,!0,!0,!1,void 0)}globalLexicalScopeNames(t){const r=diagnosticsScript.getConsoleScope(),n=Object.keys(r).filter(t=>t!==e.DebuggerEvalResultObject&&t!==e.DebuggerReturnResultFunction);return this.messageHandler.createResult({names:n})}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.PageDomainHandler=class extends e.DomainHandler{constructor(t,r,n){super(e.EdpDomain.Page,t,r),this.onFrameAttached=(t=>{const r=t.frameId,n=t.parentFrameId;let o=void 0;t.isCreatedByScript&&(o={callFrames:e.RuntimeHelpers.getStackFrameArray()}),this._messageHandler.postNotification("Page.frameAttached",{frameId:r,parentFrameId:n,stack:o})}),this.onFrameDetached=(e=>{this._messageHandler.postNotification("Page.frameDetached",{frameId:e.frameId})}),this.onFrameNavigated=(e=>{const t=e.targetWindow.location.protocol+"//"+e.targetWindow.location.host,r={id:e.frameId,parentId:e.parentFrameId,name:e.frameName,url:e.url,securityOrigin:t,mimeType:e.mimeType};this.messageHandler.postNotification("Page.frameNavigated",{frame:r})}),this.onNavigateComplete=(e=>{e.isTopWindow&&(this._browser.document.defaultView.addEventListener("load",this.onPageLoad),this._browser.document.addEventListener("DOMContentLoaded",this.onDomContentLoaded))}),this.onPageLoad=(()=>{this.messageHandler.postNotification("Page.loadEventFired",{timeStamp:Date.now()})}),this.onDomContentLoaded=(()=>{this.messageHandler.postNotification("Page.domContentEventFired",{timeStamp:Date.now()})}),this._browser=browser,this._frameManager=n}processMessage(e,t){let r;switch(e){case"navigate":r=this.navigate(t);break;case"getFrameTree":r=this.getFrameTree(t);break;default:r=super.processMessage(e,t)}return r}applyInitialDomainState(e){e?this.enable():this.disable()}enable(){return this.enabled||(this._frameManager.addEventListener("onFrameAttached",this.onFrameAttached),this._frameManager.addEventListener("onFrameDetached",this.onFrameDetached),this._browser.addEventListener("navigateComplete",this.onNavigateComplete),this._frameManager.addEventListener("onFrameNavigated",this.onFrameNavigated)),super.enable()}disable(){return this.enabled&&(this._browser.removeEventListener("navigateComplete",this.onNavigateComplete),this._frameManager.removeEventListener("onFrameNavigated",this.onFrameNavigated),this._browser.document.defaultView.removeEventListener("load",this.onPageLoad),this._browser.document.removeEventListener("DOMContentLoaded",this.onDomContentLoaded),this._frameManager.removeEventListener("onFrameAttached",this.onFrameAttached),this._frameManager.removeEventListener("onFrameDetached",this.onFrameDetached)),super.disable()}navigate(t){if("string"!=typeof t.params.url)return this._messageHandler.createError("Parameter url (string) expected on request: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(void 0!==t.params.frameId){if("string"!=typeof t.params.frameId)return this._messageHandler.createError("Parameter frameId (string) expected on request: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(t.params.frameId!==e.FrameManager.TOP_WINDOW_FRAME_ID){let e=this._frameManager.getWindowFromFrameId(t.params.frameId);if(void 0===e)return this._messageHandler.createError("Unable to find frame with given FrameId: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);try{this._browser.navigateWindow(e,t.params.url)}catch(e){return this._messageHandler.createResult({frameId:t.params.frameId,errorText:"Frame failed to navigate to url: "+t.params.url})}return this._messageHandler.createResult({frameId:t.params.frameId})}}try{this._browser.navigateWindow(this._browser.document.defaultView,t.params.url)}catch(r){return this._messageHandler.createResult({frameId:e.FrameManager.TOP_WINDOW_FRAME_ID,errorText:"Page failed to navigate to url: "+t.params.url})}return this._messageHandler.createResult({frameId:e.FrameManager.TOP_WINDOW_FRAME_ID})}getFrameTree(e){return this._messageHandler.createResult(this._frameManager.getFrameTree())}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(e){"use strict";function t(e,t){return t?`${e} !important`:e}function r(e){const r=t(e.value,e.important);return{disabled:!e.enabled,important:e.important,name:e.propertyName,parsedOk:"Valid"===e.status,range:{startLine:e.range.startLine,startColumn:e.range.startColumn,endLine:e.range.endLine,endColumn:e.range.endColumn},text:`${e.propertyName}: ${r};`,value:r}}function n(e){const n=styles.getParsedPropertyList(e),o=[],s=[];for(const e of n){if(e.longhands.length>0){s.push({name:e.propertyName,value:t(e.value,e.important),important:e.important});for(const t of e.longhands)o.push({name:t.propertyName,value:t.value})}o.push(r(e))}return{shorthands:s,properties:o}}e.getCSSPropertyList=n,e.getCSSStyle=function(e){const t=n(e),r=styles.getSourceRange(e),o={cssProperties:t.properties,cssText:e.cssText,shorthandEntries:t.shorthands,range:{startLine:r.startLine,startColumn:r.startColumn,endLine:r.endLine,endColumn:r.endColumn}};return e.parentRule&&e.parentRule.parentStyleSheet&&(o.styleSheetId=styles.getStyleSheetId(e.parentRule.parentStyleSheet)),o}}(e.CSS||(e.CSS={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(e){"use strict";e.getComputedStyleForElement=function(e){const t=function(e){let t=e;return void 0===t&&(t=browser.document.querySelector("html")),browser.document.defaultView.getComputedStyle(t)}(e),r=[];for(let n=0;n0){n={text:r,selectors:function(e){return e.split(",").map(e=>t(e))}(r)}}return n}function n(t,n){const o={media:e.getMediaForRule(t,"",n.parentRule),selectorList:r(n.parentRule),style:e.getCSSStyle(n)};return null!==n.parentRule.parentStyleSheet&&(o.styleSheetId=styles.getStyleSheetId(n.parentRule.parentStyleSheet),o.style.styleSheetId=o.styleSheetId),{rule:o}}function o(e,t){const r=[];return t.forEach(t=>{r.push(n(e,t))}),r}function s(e,t){return t.map(t=>(function(e,t,r){return{pseudoType:t,matches:o(e,r)}})(e,t.type,t.styles))}function a(e,t){const r=t.getAllAppliedStyles();return{matchedCSSRules:o(e,function(e,t){let r;const n=t.findIndex(t=>t===e.style);return{inline:r=-1!==n?t.splice(n,1)[0]:e.style,notInline:t}}(e,r.elementStyles).notInline),pseudoElements:s(e,r.pseudoElements)}}function i(r){const n={keyText:t(r.keyText),style:e.getCSSStyle(r.style)};return r.parentStyleSheet&&(n.styleSheetId=styles.getStyleSheetId(r.parentStyleSheet)),n}function d(e){const r=[];for(let t=0;t{const r=a(t,styles.getTracedStyles(t));return{inlineStyle:e.getCSSStyle(t.style),matchedCSSRules:r.matchedCSSRules}})}(r),cssKeyframesRules:(o=styles.getKeyframes(t),o.map(d))});var o}}(e.CSS||(e.CSS={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(e){"use strict";const t=/ *\(? *([^:]*) *: *(\d*)(.*) *\)? */,r=0,n=1,o=2;function s(e){const s=function(e){const s=t.exec(e);if(s)return[s[r+1],s[n+1],s[o+1]]}(e);if(s)return{feature:s[r],value:parseInt(s[n],10),unit:s[o],computedLength:e.length}}function a(e){const t=e.split(" ").filter(e=>-1!==e.indexOf(":"));return t.map(s).filter(e=>void 0!==e).map(e=>e)}function i(e,t,r){const n=[];for(let e=0;e({source:"linkedSheet",text:e}))}(0,r)}e.getMediaForRule=function(e,t,r){let n=[];return n=(n=(n=n.concat(function(e,t){if(t.parentRule&&t.parentRule.type===t.MEDIA_RULE){const e=t.parentRule;return i("mediaRule",0,e.media)}}(0,r)||[])).concat(function(e,t){if(t.parentRule&&t.parentRule.type===t.IMPORT_RULE){const e=t.parentRule;if(e.media)return i("importRule",0,e.media)}}(0,r)||[])).concat(d(0,r)||[]),t&&r.parentStyleSheet&&function(e,t,r){e.forEach(e=>{e.styleSheetId=t,e.sourceURL=r})}(n,t,r.parentStyleSheet.href),n}}(e.CSS||(e.CSS={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(e){"use strict";function t(e){return{familyName:e.computedFontName,isCustomFont:"Network"===e.fontSource,glyphCount:e.characterCount}}e.mapPlatformFontUsage=t,e.getPlatformFontsForElement=function(e){return styles.getRenderedFonts(e).map(t)}}(e.CSS||(e.CSS={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.CSSDomainHandler=class extends e.DomainHandler{constructor(t,r,n,o){super(e.EdpDomain.CSS,t,n,o),this._methodMap=new Map([["getComputedStyleForNode",e.CSS.getComputedStyleForElement],["getInlineStylesForNode",e.CSS.getInlineStylesForElement],["getMatchedStylesForNode",e.CSS.getMatchedStylesForElement],["getPlatformFontsForNode",e.CSS.getPlatformFontsForElement]]),this._browser=browser,this._domDomainHandler=r,this._browser.addEventListener("styleSheetAdded",e=>this.onStyleSheetAdded(e)),this._browser.addEventListener("styleSheetRemoved",e=>this.onStyleSheetRemoved(e)),this._browser.addEventListener("styleSheetChanged",e=>this.onStyleSheetChanged(e))}processMessage(e,t){let r;if("enable"===e)r=this.enableCSS();else if("disable"===e)r=this.disableCSS();else{if(!this.enabled)return this._messageHandler.createError("CSS agent was not enabled",ErrorCodes.Code.serverError);r=this.executeFromMap(e,t)}return r}applyInitialDomainState(e){e?super.enable():super.disable()}executeFromMap(e,t){let r;const n=this._methodMap.get(e);return r=void 0!==n?this.executeMethod(e,n,t):super.processMessage(e,t)}enableCSS(e){return this._domDomainHandler.enabled?(this.enabled||this._browser.enumerateStyleSheets(),super.enable()):this._messageHandler.createError("DOM agent needs to be enabled first",ErrorCodes.Code.serverError)}disableCSS(e){return super.disable()}onStyleSheetAdded(e){if(!this.enabled)return;const t={styleSheetId:e.styleSheetId,sourceURL:e.url,disabled:e.disabled,isInline:e.isInline,startLine:e.startLine,startColumn:e.startColumn,length:e.length};this._messageHandler.postNotification("CSS.styleSheetAdded",{header:t})}onStyleSheetRemoved(e){if(!this.enabled)return;const t=e.styleSheetId;this._messageHandler.postNotification("CSS.styleSheetRemoved",{styleSheetId:t})}onStyleSheetChanged(e){if(!this.enabled)return;const t=e.styleSheetId;this._messageHandler.postNotification("CSS.styleSheetChanged",{styleSheetId:t})}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.DomState=class{constructor(e,t){this._idsSentToFrontend=new Set,this._nodeToIdMap=new WeakMap,this._traversedNodes=new WeakSet,this._dom=dom,this._browser=browser,this._nextId=1,this._documentMutationObservers=new Map,this._domhandler=e,this._frameManager=t,this._frameManager.addEventListener("onFrameNavigated",e=>this.onFrameNavigated(e)),this._frameIdToNodeIdMap=new Map}clear(){this._nodeToIdMap=new WeakMap,this._traversedNodes=new WeakSet,this._idsSentToFrontend.clear(),this._frameIdToNodeIdMap.clear(),this._dom.clearNodeIdMap(),this._nextId=1,this._documentMutationObservers.clear()}disconnectObservers(){for(let e of this._documentMutationObservers.values())e.disconnect()}ensureNodeId(e){let t=this._nodeToIdMap.get(e);return t||(t=this._nextId++,this._nodeToIdMap.set(e,t),this._dom.setNodeId(e,t),this._idsSentToFrontend.add(t)),t}walkNodePreorder(t,r,n,o){const s=this.ensureNodeId(t);let a;t.parentNode&&(a=e.EDP_FAIL_FAST_IF_UNDEFINED(this._nodeToIdMap.get(t.parentNode),"Ureachable code: Parent Nodes should have an ID in preorder walk."));let i={nodeId:s,backendNodeId:s,nodeName:t.nodeName,localName:t.localName||"",nodeType:t.nodeType,nodeValue:t.nodeValue||"",parentId:a};switch(t.nodeType){case 9:this.ensureSubtreeMutationObserver(t),i.baseURL=t.baseURI||"",i.documentURL=t.URL,i.xmlVersion=t.xmlVersion||"";break;case 1:if(i.attributes=this.getAttributes(t),t instanceof SVGElement)i.isSVG=!0;else if(this.isFrameElement(t)){const e=this._dom.getFrameElementId(t);e>=0&&(i.frameId=String(e),this._frameIdToNodeIdMap.set(i.frameId,i.nodeId));let o=this.getIframeDocument(t);if(o){const e=n&&!this._traversedNodes.has(t)?r:0,s=n&&!this._traversedNodes.has(t);i.contentDocument=this.walkNodePreorder(o,e,s,!1)}}break;case 10:i.publicId=t.publicId||void 0,i.systemId=t.systemId||void 0,i.internalSubset=t.internalSubset||void 0;break;case 2:i.name=t.name,i.value=t.value}if(0!==r){if(t.childNodes.length>0){const e=o&&this._traversedNodes.has(t);let s=[];for(let o=0;othis.subtreeMutationCallback(e));t.observe(e,{childList:!0,attributes:!0,characterData:!0,subtree:!0}),this._documentMutationObservers.set(e,t)}subtreeMutationCallback(e){for(let t of e){const e=t.target,r=this._nodeToIdMap.get(e);if(r)switch(t.type){case"childList":this.processChildMutation(r,e,t);break;case"characterData":this.processCharacterDataMutation(r,e,t);break;case"attributes":this.proccessAttributeMutation(r,e,t)}}}processChildMutation(e,t,r){if(this._traversedNodes.has(t)){for(let t=0;tthis.onNavigateComplete(e))}processMessage(e,t){let r;switch(e){case"getDocument":r=this.getDocument(t);break;case"requestChildNodes":r=this.requestChildNodes(t);break;case"getAttributes":r=this.getAttributes(t);break;case"getOuterHTML":r=this.getOuterHTML(t);break;case"querySelector":r=this.querySelector(t);break;case"querySelectorAll":r=this.querySelectorAll(t);break;case"resolveNode":r=this.resolveNode(t);break;case"requestNode":r=this.requestNode(t);break;case"highlightNode":r=this.highlightNode(t);break;case"hideHighlight":r=this.hideHighlight();break;case"setInspectedNode":r=this.setInspectedNode(t);break;case"pushNodesByBackendIdsToFrontend":r=this.pushNodesByBackendIdsToFrontend(t);break;default:r=super.processMessage(e,t)}return r}applyInitialDomainState(e){e?this.enable():this.disable()}enable(){return this.enabled,super.enable()}disable(){return this.enabled,this._state.clear(),super.disable()}getNodeFromDomNode(e){return this._state.walkNodePreorder(e,0,!1,!0)}getNodeIdFromDomNode(e,t){const r=this._state.resolveNodeAndAncestors(e);return t&&this._state.walkNodePreorder(e,0,!1,t),r}getDocument(e){let t;this.enable();let r=2,n=!1;if(void 0!==e.params.depth){if("number"!=typeof e.params.depth||!Number.isInteger(e.params.depth))return this._messageHandler.createError("Invalid parameters, integer value expected for depth: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(e.params.depth<-1)return this._messageHandler.createError("Please provide an integer greater than or equal to -1 (entire subtree) as depth: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);r=e.params.depth}if("boolean"==typeof e.params.pierce)n=Boolean(e.params.pierce);else if(void 0!==e.params.pierce)return this._messageHandler.createError("Invalid parameters, boolean value expected for pierce: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);const o=this._state.getDocument(r,n);return t=this._messageHandler.createResult({root:o})}getAttributes(e){let t;if(!e.params.nodeId)return this._messageHandler.createError("Missing param: nodeId (integer) is expected.",ErrorCodes.Code.invalidParams);if("number"!=typeof e.params.nodeId||!Number.isInteger(e.params.nodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for nodeId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);const r=e.params.nodeId;let n=this._state.getDomNodeById(r);if(!n)return this._messageHandler.createError("Invalid params: Could not find node with given nodeId "+r,ErrorCodes.Code.serverError);if(1!==n.nodeType)return this._messageHandler.createError("Invalid params, Node is not an Element",ErrorCodes.Code.serverError);const o=this._state.getAttributes(n);return t=this._messageHandler.createResult({attributes:o})}getOuterHTML(e){let t,r="",n=null;if(e.params.nodeId){if("number"!=typeof e.params.nodeId||!Number.isInteger(e.params.nodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for nodeId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!(n=this._state.getDomNodeById(e.params.nodeId)))return this._messageHandler.createError("Invalid params: Could not find node with given nodeId "+e.params.nodeId,ErrorCodes.Code.serverError)}else if(e.params.backendNodeId){if("number"!=typeof e.params.backendNodeId||!Number.isInteger(e.params.backendNodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for backendNodeId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!(n=this._state.getDomNodeById(e.params.backendNodeId)))return this._messageHandler.createError("Invalid params: Could not find node with given backendNodeId "+e.params.backendNodeId,ErrorCodes.Code.serverError)}else{if(!e.params.objectId)return this._messageHandler.createError("Missing params, either a nodeId (integer) or backendNodeId (integer) or objectId (string) must be specified",ErrorCodes.Code.serverError);if("string"!=typeof e.params.objectId)return this._messageHandler.createError("Parameter objectId (string) expected on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!this._runtimeDomainHandler.remoteObjectManager.hasObject(e.params.objectId))return this._messageHandler.createError("Invalid remote object id: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!(n=this.remoteObjectIdToDomNode(e.params.objectId)))return this._messageHandler.createError("Object id doesn't reference a Node: "+JSON.stringify(e),ErrorCodes.Code.invalidParams)}switch(n.nodeType){case 1:r=n.outerHTML;break;case 3:r=n.nodeValue;break;case 8:r="\x3c!--"+n.nodeValue+"--\x3e";break;case 9:{let e=n;e.doctype&&(r=this.getDocumentTypeHTML(e.doctype)),r+=e.documentElement.outerHTML;break}case 10:{let e=n;r=this.getDocumentTypeHTML(e);break}case 7:r="";break;default:r=""}return t=this.messageHandler.createResult({outerHTML:r})}onReadyStateChange(){"interactive"===this._browser.document.readyState&&this.notifyDocumentUpdated()}onNavigateComplete(e){e.isTopWindow&&(this.notifyDocumentUpdated(),this._browser.document.addEventListener("readystatechange",()=>this.onReadyStateChange()))}notifyDocumentUpdated(){this.enabled&&(this._state.clear(),this._messageHandler.postNotification("DOM.documentUpdated",{}))}requestChildNodes(e){if(!e.params.nodeId)return this._messageHandler.createError("Missing nodeId parameter on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!Number.isInteger(e.params.nodeId)||e.params.nodeId<1)return this._messageHandler.createError("Invalid nodeId parameter on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);let t=e.params.nodeId,r=1,n=!1;if("boolean"==typeof e.params.pierce)n=Boolean(e.params.pierce);else if(void 0!==e.params.pierce)return this._messageHandler.createError("Invalid parameters, boolean value expected for pierce: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(void 0!==e.params.depth){if("number"!=typeof e.params.depth||!Number.isInteger(e.params.depth))return this._messageHandler.createError("Invalid parameters, integer value expected for depth: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(0===e.params.depth||e.params.depth<-1)return this._messageHandler.createError("Please provide a positive integer or -1 (entire subtree) as depth: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);r=e.params.depth}return this._state.requestChildNodes(t,r,n),this._messageHandler.createResult({})}getDocumentTypeHTML(e){let t;return t=""}querySelector(e){return this.querySelectorHelper(e,!1)}querySelectorAll(e){return this.querySelectorHelper(e,!0)}querySelectorHelper(e,t){if(!e.params.nodeId)return this._messageHandler.createError("Missing nodeId parameter on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!Number.isInteger(e.params.nodeId)||e.params.nodeId<1)return this._messageHandler.createError("Invalid nodeId parameter on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!e.params.selector||"string"!=typeof e.params.selector)return this._messageHandler.createError("Parameter selector (string) expected on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);const r=e.params.nodeId,n=e.params.selector,o=this._state.getDomNodeById(r);if(!o)return this._messageHandler.createError("Invalid params: Could not find node with given nodeId "+e.params.nodeId,ErrorCodes.Code.serverError);if(9!==o.nodeType&&1!==o.nodeType)return this._messageHandler.createError("Requested node is not a container Node.",ErrorCodes.Code.serverError);if(t){const e=this._state.querySelectorAll(o,n);return this._messageHandler.createResult({nodeIds:e})}{const e=this._state.querySelector(o,n);return this._messageHandler.createResult({nodeId:e})}}resolveNode(e){let t=null;if(e.params.nodeId){if("number"!=typeof e.params.nodeId||!Number.isInteger(e.params.nodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for nodeId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!(t=this._state.getDomNodeById(e.params.nodeId)))return this._messageHandler.createError("Invalid params: Could not find node with given nodeId "+e.params.nodeId,ErrorCodes.Code.serverError)}else{if(!e.params.backendNodeId)return this._messageHandler.createError("Missing params, either a nodeId (integer) or backendNodeId (integer) must be specified",ErrorCodes.Code.serverError);if("number"!=typeof e.params.backendNodeId||!Number.isInteger(e.params.backendNodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for backendNodeId: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!(t=this._state.getDomNodeById(e.params.backendNodeId)))return this._messageHandler.createError("Invalid params: Could not find node with given backendNodeId "+e.params.backendNodeId,ErrorCodes.Code.serverError)}if(void 0!==e.params.objectGroup&&"string"!=typeof e.params.objectGroup)return this._messageHandler.createError("Parameter objectGroup (string) expected on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);const r=this._browser.unwrapMirror(t),n=(t.ownerDocument||t).defaultView,o=this._runtimeDomainHandler.executionContextManager.getExecutionContextId(n,!0),s=this._runtimeDomainHandler.remoteObjectManager.buildRemoteObject(r,!1,e.params.objectGroup,o);return this.messageHandler.createResult({object:s})}requestNode(e){if("string"!=typeof e.params.objectId)return this._messageHandler.createError("Parameter objectId (string) expected on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);if(!this._runtimeDomainHandler.remoteObjectManager.hasObject(e.params.objectId))return this._messageHandler.createError("Invalid remote object id: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);let t=this.remoteObjectIdToDomNode(e.params.objectId);if(!t)return this._messageHandler.createError("Object id doesn't reference a Node: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);const r=this._state.resolveNodeAndAncestors(t);return this.messageHandler.createResult({nodeId:r})}highlightNode(t){if(void 0===t.params.highlightConfig)return this._messageHandler.createError("Parameter highlightConfig (HighlightConfig) expected on request: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(!e.isValidHighlightConfig(t.params.highlightConfig))return this._messageHandler.createError("Invalid highlightConfig (HighlightConfig) provided",ErrorCodes.Code.invalidParams);const r=t.params.highlightConfig;let n=null;if(t.params.nodeId){if("number"!=typeof t.params.nodeId||!Number.isInteger(t.params.nodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for nodeId: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(!(n=this._state.getDomNodeById(t.params.nodeId)))return this._messageHandler.createError("Invalid params: Could not find node with given nodeId "+t.params.nodeId,ErrorCodes.Code.serverError)}else if(t.params.backendNodeId){if("number"!=typeof t.params.backendNodeId||!Number.isInteger(t.params.backendNodeId))return this._messageHandler.createError("Invalid parameters, integer value expected for backendNodeId: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(!(n=this._state.getDomNodeById(t.params.backendNodeId)))return this._messageHandler.createError("Invalid params: Could not find node with given backendNodeId "+t.params.backendNodeId,ErrorCodes.Code.serverError)}else{if(!t.params.objectId)return this._messageHandler.createError("Missing params, either a nodeId (integer) or backendNodeId (integer) or objectId (string) must be specified",ErrorCodes.Code.serverError);if("string"!=typeof t.params.objectId)return this._messageHandler.createError("Parameter objectId (string) expected on request: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(!this._runtimeDomainHandler.remoteObjectManager.hasObject(t.params.objectId))return this._messageHandler.createError("Invalid remote object id: "+JSON.stringify(t),ErrorCodes.Code.invalidParams);if(!(n=this.remoteObjectIdToDomNode(t.params.objectId)))return this._messageHandler.createError("Object id doesn't reference a Node: "+JSON.stringify(t),ErrorCodes.Code.invalidParams)}if(1!==n.nodeType&&9!==n.nodeType)return this.hideHighlight(),this.messageHandler.createResult({});if(9===n.nodeType)for(let e=0;e0;e--){const t=o.commandLineProperties.get(`$${(e-1).toString()}`);o.commandLineProperties.set(`$${e.toString()}`,t)}o.commandLineProperties.set("$0",this._browser.unwrapMirror(t))}catch(e){return this._messageHandler.createError("Internal Error: "+e,ErrorCodes.Code.serverError)}return this._messageHandler.createResult({})}pushNodesByBackendIdsToFrontend(e){const t=e;if(!t.params.backendNodeIds)return this._messageHandler.createError("Missing param: backendNodeIds (integer[]) is expected.",ErrorCodes.Code.invalidParams);const r=t.params.backendNodeIds.map(e=>{const t=this._state.getEdpNodeById(e);return t?t.nodeId:null});return this.messageHandler.createResult({nodeIds:r})}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.OverlayState=class{constructor(e){this.overlayHandler=e,this.highlightConfig={},this.isSelecting=!1}getHighlightColors(){const t=this.highlightConfig;return{content:e.createColorString(t.contentColor),border:e.createColorString(t.borderColor),padding:e.createColorString(t.paddingColor),margin:e.createColorString(t.marginColor)}}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t extends e.DomainHandler{constructor(t,r,n){super(e.EdpDomain.Overlay,t,r),this.domDomainHandler=n,this.onSelectElement=(e=>{if(this.stopNodeInspection(),e.target){const t=e.target,r=this.domDomainHandler.getNodeFromDomNode(t);this.messageHandler.postNotification("Overlay.setInspectedNode",{backendNodeId:r.backendNodeId})}}),this.onHoverElement=(e=>{if(e.target){const t=e.target;if(1===t.nodeType){this.messageHandler.postNotification("Overlay.nodeHighlightRequested",{nodeId:this.domDomainHandler.getNodeIdFromDomNode(e.target,!0)});const{content:r,border:n,padding:o,margin:s}=this._state.getHighlightColors();this._browser.highlightElement(t,s,o,n,r)}}}),this._browser=browser,this._state=new e.OverlayState(this)}processMessage(e,t){let r=null;switch(e){case"enable":r=this.enable();break;case"disable":r=this.disable();break;case"setInspectMode":r=this.setInspectMode(t)}return r}setInspectMode(r){const n=r;if(void 0===n.params.highlightConfig)return this._messageHandler.createError("Parameter highlightConfig (HighlightConfig) expected on request: "+JSON.stringify(r),ErrorCodes.Code.invalidParams);const o=n.params.highlightConfig;if(o&&!e.isValidHighlightConfig(o))return this._messageHandler.createError("Invalid highlightConfig (HighlightConfig) provided",ErrorCodes.Code.invalidParams);if(void 0===n.params.mode)return this._messageHandler.createError("Parameter mode (InspectMode) expected on request: "+JSON.stringify(r),ErrorCodes.Code.invalidParams);const s=n.params.mode;if(!t.isValidInspectMode(s))return this._messageHandler.createError("Invalid mode (InspectMode) provided",ErrorCodes.Code.invalidParams);switch(s){case"searchForNode":this._state.isSelecting?this._state.highlightConfig=o:this.beginNodeInspection(o);break;case"none":this._state.isSelecting&&this.stopNodeInspection()}return this._messageHandler.createResult({})}beginNodeInspection(e){this._state.highlightConfig=e,this._browser.elementSelectionEventsEnabled=!0,this._browser.addEventListener("selectElement",this.onSelectElement),this._browser.addEventListener("hoverElement",this.onHoverElement)}stopNodeInspection(){const{content:e,border:t,padding:r,margin:n}=this._state.getHighlightColors();this._browser.highlightElement(null,n,r,t,e),this._browser.elementSelectionEventsEnabled=!1,this._browser.removeEventListener("selectElement",this.onSelectElement),this._browser.removeEventListener("hoverElement",this.onHoverElement)}static isValidInspectMode(e){return"searchForNode"===e||"none"===e}}e.OverlayDomainHandler=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.SchemaDomainHandler=class extends e.DomainHandler{constructor(t,r){super(e.EdpDomain.Schema,t,r),this.enabled=!0,this._domains=[]}processMessage(e,t){let r;switch(e){case"enable":case"disable":r=this._messageHandler.createError("Invalid Method: Schema is always enabled.");break;case"getDomains":r=this.getDomains();break;default:r=super.processMessage(e,t)}return r}getDomains(){let e=this._messageHandler;return this._domains=e.getDomains(),e.createResult({domains:this._domains})}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t extends e.EventDispatcher{constructor(e){super(),this._messageHandler=e,this._registeredDomainHandlers=new Map,this._domainMethodSubstitution=new Map([["Debugger.msSetDebuggerPropertyValue","Runtime.msSetDebuggerPropertyValue"]]);this._messageHandler.addEventListener("edpmessage",e=>{this.messageHandler(e)})}postResponse(e,t){const r=this.createResponse(e,t);this._messageHandler.sendMessage("OnEdpMessage",String(e),JSON.stringify(r))}postNotification(e,t){this._messageHandler.sendMessage("OnEdpMessage","0",JSON.stringify(this.createNotification(e,t)))}createResponse(e,t){let r={id:e};return t?t.error?r.error=t.error:void 0===t.result||null===t.result?r.result={}:r.result=t.result:r.error=new Error("No response specified"),r}registerDomain(e){this._registeredDomainHandlers.set(e.domain.name,e)}postErrorResponse(e,r,n){n&&(r=`Error Code: ${n}. Description: ${r}`);const o=t.createError(r);this.postResponse(e,o)}static createResult(e){return{result:e}}createResult(e){return t.createResult(e)}createError(e,r){return t.createError(e,r)}static createError(e,t){return t?{error:{code:t,description:e}}:{error:{description:e}}}createNotification(e,t){return{method:e,params:t}}getSubstitutedDomain(e){let t=this._domainMethodSubstitution.get(e);return t||(t=e),t}messageHandler(e){let t={id:0,method:"",params:[]};if("OnEdpMessage"===e.commandId){try{t=JSON.parse(e.data)}catch(t){return void this.postErrorResponse(0,`Message must be valid JSON: ${e.data}`)}if(t.id>0){const e=this.getSubstitutedDomain(t.method).split(".");if(2===e.length){const r=e[0],n=e[1],o=this._registeredDomainHandlers.get(r);if(o){const e=o.processMessage(n,t);null!==e&&this.postResponse(t.id,e)}else this.postErrorResponse(t.id,`Invalid Domain: ${JSON.stringify(r)}`)}else this.postErrorResponse(t.id,`Invalid request: ${JSON.stringify(t)}`)}else this.postErrorResponse(0,`Invalid id: ${JSON.stringify(t.id)}`)}else this.dispatchAll(e.commandId,e.data)}}e.BaseMessageHandler=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t extends e.BaseMessageHandler{constructor(){super(external),this._debuggerDomainHolder={name:"Debugger",version:e.EdpVersion.getVersionAsString()},this._domDebuggerDomainHolder={name:"DOMDebugger",version:e.EdpVersion.getVersionAsString()},this._validator=new e.Validation.FunctionArgumentValidator(resources);let t=external,r=new e.FrameManager(browser),n=new e.RuntimeDomainHandler(this,t,r);this.registerDomain(n),this.registerDomain(new e.PageDomainHandler(this,t,r));let o=new e.DOMDomainHandler(this,t,r,n);this.registerDomain(o),this.registerDomain(new e.CSSDomainHandler(this,o,t,this._validator)),this.registerDomain(new e.OverlayDomainHandler(this,t,o)),this.registerDomain(new e.SchemaDomainHandler(this,t)),this.addEventListener("OnEnableInitialDomainState",e=>this.onEnableInitialDomainState(e))}getDomains(){let e=[];return this._registeredDomainHandlers.forEach(t=>{e.push(t.domain)}),e.push(this._debuggerDomainHolder),e.push(this._domDebuggerDomainHolder),e}onEnableInitialDomainState(e){const t=this._registeredDomainHandlers.get(e);t&&t.applyInitialDomainState(!0)}}e.BrowserMessageHandler=t,e.browserMessageHandler=new t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={}));var ErrorCodes,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol,EdgeDevtoolsProtocol;!function(e){let t;!function(e){e[e.serverError=-32e3]="serverError",e[e.invalidParams=-32602]="invalidParams",e[e.internalError=-32603]="internalError"}(t=e.Code||(e.Code={}))}(ErrorCodes||(ErrorCodes={})),function(e){"use strict";e.EDP_FAIL_FAST=function(e){throw new Error(e)},e.EDP_FAIL_FAST_WITH_ERROR=function(e){throw e},e.EDP_FAIL_FAST_IF=function(e,t){if(e)throw new Error(t)},e.EDP_FAIL_FAST_IF_FALSE=function(e,t){if(!e)throw new Error(t)},e.EDP_FAIL_FAST_IF_NULL=function(e,t){if(!e)throw new Error(t);return e},e.EDP_FAIL_FAST_IF_UNDEFINED=function(e,t){if(!e)throw new Error(t);return e}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.AddRemoteObjectWindowFunction="__DEVTOOLS_ADD_REMOTE_OBJECT",e.AddRemoteObjectWindowFunctionResult="__DEVTOOLS_ADD_REMOTE_OBJECT_RESULT",e.UpdateRemoteObjectWindowFunction="__DEVTOOLS_UPDATE_REMOTE_OBJECT",e.ReleaseObjectGroupWindowFunction="__DEVTOOLS_RELEASE_OBJECT_GROUP",e.DebuggerReturnResultFunction="__DEVTOOLS_CONSOLE_GLOBAL_SCOPE_RETURN_RESULT",e.DebuggerEvalResultObject="__DEVTOOLS_CONSOLE_GLOBAL_SCOPE_EVAL_RESULT",e.AddCommandLineAPIFunction="__DEVTOOLS_ADD_COMMAND_LINE_API",e.RemoveCommandLineAPIFunction="__DEVTOOLS_REMOVE_COMMAND_LINE_API",e.UpdateConsole$_Function="__DEVTOOLS_UPDATE_CONSOLE_$_"}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";function t(e,r,o){let s,n=e.getDebugger().getChildProperties(r,0,0),a=-1;for(let e=0;e-1&&"Null"!==n.propInfos[a].type&&(s=t(e,n.propInfos[a].propertyId,o)),s}e.getArrayDescription=function(e,r,o){let s=0;const n=t(o,e.propertyId,"length");return void 0!==n&&(s=Number(n.value)),`${r}(${s})`},e.getContainerDescription=function(e,r,o){let s=0;const n=t(o,e.propertyId,"size");return void 0!==n&&(s=Number(n.value)),`${r}(${s})`},e.getErrorDescription=function(e,r,o){let s="Error";const n=t(o,e.propertyId,"message");return void 0!==n&&(s=n.value.substring(1,n.value.length-1)),s},e.getDateDescription=function(e){return e.value},e.getRegExpDescription=function(e){return e.value}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.cObjectClassNameToSubTypeMap=new Map([["Array","array"],["Map","map"],["Set","set"],["WeakMap","weakmap"],["WeakSet","weakset"],["Date","date"],["Generator","generator"],["Promise","promise"],["Proxy","proxy"],["RegExp","regexp"],["MapIterator","iterator"],["SetIterator","iterator"],["Int8Array","typedarray"],["Uint8Array","typedarray"],["Uint8ClampedArray","typedarray"],["Int16Array","typedarray"],["Uint16Array","typedarray"],["Int32Array","typedarray"],["Uint32Array","typedarray"],["Float32Array","typedarray"],["Float64Array","typedarray"],["Error","error"],["EvalError","error"],["RangeError","error"],["ReferenceError","error"],["SyntaxError","error"],["TypeError","error"],["URIError","error"]]),e.cObjectDescriptionMap=new Map([["Array",e.getArrayDescription],["Int8Array",e.getArrayDescription],["Uint8Array",e.getArrayDescription],["Uint8ClampedArray",e.getArrayDescription],["Int16Array",e.getArrayDescription],["Uint16Array",e.getArrayDescription],["Int32Array",e.getArrayDescription],["Uint32Array",e.getArrayDescription],["Float32Array",e.getArrayDescription],["Float64Array",e.getArrayDescription],["Map",e.getContainerDescription],["Set",e.getContainerDescription],["Date",e.getDateDescription],["RegExp",e.getRegExpDescription],["Error",e.getErrorDescription],["EvalError",e.getErrorDescription],["RangeError",e.getErrorDescription],["ReferenceError",e.getErrorDescription],["SyntaxError",e.getErrorDescription],["TypeError",e.getErrorDescription],["URIError",e.getErrorDescription]])}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";function t(e){try{return JSON.stringify(e)}catch(e){}}function r(e,t,r){return{objectId:{id:e,executionContextId:0},propertyName:r,callFrameId:t}}function o(e,t,o){return r(e.propertyId,t,o?e.name:e.fullName)}e.ReturnScopeObjectName="[Returns]",e.getRemoteObjectDebugIdFromString=function(e){try{return JSON.parse(e)}catch(e){}},e.getRemoteObjectDebugIdAsString=t,e.createRemoteObjectDebugId=r,e.createRemoteObjectDebugIdFromPropertyInfo=o,e.getRemoteObjectFromPropInfo=function(r,s,n,a){let i={type:s.type.toLowerCase(),msDebuggerPropertyId:String(s.propertyId)};switch(i.type){case"number":const l=s.value;i.description=l,-1!=["NaN","Infinity","-Infinity","-0"].indexOf(l)?(i.unserializableValue=i.description,i.value=void 0):i.value=Number(s.value);break;case"boolean":i.value=s.value.indexOf("true")>-1;break;case"string":i.value=s.value.substring(1,s.value.length-1);break;case"null":i.type="object",i.subtype="null",i.value=null;break;case"undefined":i.value=void 0;break;default:if(i.className=function(e){let t;if(-1!==e.type.indexOf("[")){const r=e.type.indexOf("]")-e.type.indexOf(",")-2;t=e.type.substr(e.type.indexOf(",")+2,r)}else if(-1!==e.type.indexOf(",")){const r=e.type.indexOf(")")-e.type.indexOf("(")-1;"Regular Expression"===(t=e.type.substr(e.type.indexOf("(")+1,r))&&(t="RegExp")}else t=e.type;return t}(s),"Function"===i.className)i.type="function",i.description=s.value;else if("Symbol"===i.className)i.type="symbol",i.description="Symbol",i.className=void 0;else{i.type="object",i.subtype=function(t){if("Array Iterator"!=t)return e.cObjectClassNameToSubTypeMap.get(t)}(i.className),i.description=function(t,r,o){let s=o;const n=e.cObjectDescriptionMap.get(o);return void 0!==n&&(s=n.apply(null,[r,o,t])),s}(r,s,i.className),i.value=void 0;const l=o(s,n,a);i.objectId=t(l),e.EDP_FAIL_FAST_IF_NULL(i.objectId,"getRemoteObjectFromPropInfo failed to convert objectId")}}return i}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.EventDispatcher=class{constructor(){this._eventHandlers=new Map}addEventListener(e,t){this._eventHandlers.has(e)||this._eventHandlers.set(e,new Set);let r=this._eventHandlers.get(e);void 0!==r&&r.add(t)}removeEventListener(e,t){let r=this._eventHandlers.get(e);void 0!==r&&r.delete(t)}removeAllListeners(e){this._eventHandlers.delete(e)}dispatchAll(e,t){let r=this._eventHandlers.get(e);if(void 0!==r)for(let e of r)e(t)}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t{constructor(e){this.onAddDocuments=(e=>{for(const t of e)this.addDocument(t)}),this.onRemoveDocuments=(e=>{for(const t of e)this.removeDocument(t)}),this._debuggerDomainHandler=e,this._blackboxStateMap=new Map,this._blackboxPatterns=new Set,this._debuggerDomainHandler.getCache().register(t.CACHE_ENTRY_KEY,e=>{this.cacheApplicationCallback(e)})}setBlackboxPatterns(e){this._blackboxPatterns.clear(),this.addCacheEntry(e);for(const r of e){const e=new RegExp(r,t.REGEX_FLAGS_IGNORE_CASE_AND_GLOBAL_MATCH);this._blackboxPatterns.add(e)}this._blackboxPatterns.size>0?this.enable():this.disable()}getBlackboxState(e){return this._blackboxStateMap.get(e)||!1}addCacheEntry(e){this._debuggerDomainHandler.getCache().set(t.CACHE_ENTRY_KEY,JSON.stringify(e))}cacheApplicationCallback(e){this._debuggerDomainHandler.getMessageHandler().postNotification(`Apply cacheValue: ${JSON.stringify(e)}`),this.setBlackboxPatterns(e)}enable(){this._debuggerDomainHandler.debuggerOM.addEventListener("onAddDocuments",this.onAddDocuments),this._debuggerDomainHandler.debuggerOM.addEventListener("onRemoveDocuments",this.onRemoveDocuments),this.updateBlackboxState()}disable(){this._debuggerDomainHandler.debuggerOM.removeEventListener("onAddDocuments",this.onAddDocuments),this._debuggerDomainHandler.debuggerOM.removeEventListener("onRemoveDocuments",this.onRemoveDocuments),this._blackboxStateMap.clear()}urlMatchesBlackboxPattern(e){for(const t of this._blackboxPatterns){if(t.test(e))return!0}return!1}updateBlackboxState(){this._blackboxStateMap.clear();const e=this._debuggerDomainHandler.debuggerDocumentController.documents;for(const t of e)this.addDocument(t)}addDocument(e){const t=this.urlMatchesBlackboxPattern(e.url);this._blackboxStateMap.set(e.url,t)}removeDocument(e){this._blackboxStateMap.delete(e.url)}}t.CACHE_ENTRY_KEY="BlackboxPatterns",t.REGEX_FLAGS_IGNORE_CASE_AND_GLOBAL_MATCH="ig",e.BlackboxStateController=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";const t=256;e.BlackboxBreakController=class{constructor(t){this._blackboxStateController=new e.BlackboxStateController(t),this._debuggerDomainHandler=t,this._steppingInto=0,this._steppingOut=!1}reset(){this._steppingInto=0,this._steppingOut=!1}isStepping(){return this._steppingOut||this._steppingInto>0}getBreakAction(e,r){let o={ignoreBreak:!1,ignoreBreakAction:1};if(e.length>0){let s=this.getDocFromStackFrame(e[0]);void 0!==s?this._blackboxStateController.getBlackboxState(s.url)?0===r&&(!this._steppingOut&&++this._steppingInto<=t?(o.ignoreBreak=!0,o.ignoreBreakAction=2):(this._steppingInto=0,this._steppingOut=!0,o.ignoreBreak=!0,o.ignoreBreakAction=4)):(this.reset(),o.ignoreBreak=!1):this.reset()}else this.reset();return o}getDocFromStackFrame(e){return this._debuggerDomainHandler.debuggerDocumentController.getDocumentFromId(e.location.docId)}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t{static getVersionAsString(){return"v"+t.major+"."+t.minor}}let r;t.major=0,t.minor=2,e.EdpVersion=t,function(e){e[e.Schema=0]="Schema",e[e.Page=1]="Page",e[e.CSS=2]="CSS",e[e.DOM=3]="DOM",e[e.Runtime=4]="Runtime",e[e.Debugger=5]="Debugger",e[e.DOMDebugger=6]="DOMDebugger",e[e.Overlay=7]="Overlay"}(r=e.EdpDomain||(e.EdpDomain={}));class o{constructor(e,t,r,o){this._enabled=!1,this._domainName=e,this._domainStateHandler=r,this._inputValidator=o,this._messageHandler=t}get domain(){return{name:r[this._domainName],version:o.VERSION}}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this._domainStateHandler.setInitialDomainState(r[this._domainName],this._enabled)}get messageHandler(){return this._messageHandler}applyInitialDomainState(e){this.enabled=e}processMessage(e,t){let r;switch(e){case"enable":r=this.enable();break;case"disable":r=this.disable();break;default:r=this._messageHandler.createError(`Invalid Method: ${e}`)}return r}enable(){return this.enabled=!0,this._messageHandler.createResult({})}disable(){return this.enabled=!1,this._messageHandler.createResult({})}executeMethod(t,r,o){if(!this._inputValidator)return null;let s=[];try{s=this._inputValidator.validateFunctionArgs(this._domainName,t,o.params)}catch(e){return this._messageHandler.createError(`Invalid argument ${e.message}`,ErrorCodes.Code.invalidParams)}try{return{result:r(...s)}}catch(t){return e.BaseMessageHandler.createError(`Caught an unhandled exception: ${t.message},`,ErrorCodes.Code.serverError)}}}o.VERSION=t.getVersionAsString(),e.DomainHandler=o}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t{constructor(e){this._vtabSwitched=!1,this._documentMap=new Map,this._debuggerDomainHandler=e,this._debuggerDomainHandler.debuggerOM.addEventListener("onAddDocuments",e=>this.onAddDocuments(e)),this._debuggerDomainHandler.debuggerOM.addEventListener("onUpdateDocuments",e=>this.onUpdateDocuments(e)),this._debuggerDomainHandler.debuggerOM.addEventListener("onRemoveDocuments",e=>this.onRemoveDocuments(e))}set vtabSwitched(e){this._vtabSwitched=e}get documents(){let e=[];for(let t of this._documentMap.values())e.push(t.document);return e}getDocumentFromId(e){let t,r=this._documentMap.get(e);return r&&(t=r.document),t}hasDocumentId(e){return this._documentMap.has(e)}getUrlByDocumentId(e){let t="",r=this._documentMap.get(e);return r&&(t=r.document.sourceUrl||r.document.url),t}getDocumentIdFromLongDocumentId(e){let t=0;for(let r of this._documentMap.values())if(r.document.longDocumentId==e){t=r.document.docId;break}return t}getLineEndingsValidity(e){let t,r=this._documentMap.get(e);return r&&(t=r.lineEndingsValidity),t}getLineEndings(e){let t,r=this._documentMap.get(e);return r&&(t=r.lineEndings),t}setLineEndings(e,t){let r=this._documentMap.get(e);r&&(r.lineEndings=t,this._documentMap.set(e,r))}setLineEndingsValidity(e,t){let r=this._documentMap.get(e);r&&(r.lineEndingsValidity=t,this._documentMap.set(e,r))}generateLineEndings(e,t){if(t){let r=[],o=0;const s=t.length-1;for(let e=0;et.supportedDocument(e));this._vtabSwitched&&(r=r.filter(e=>t.vtabSwitchDocumentFilter(e)),this._vtabSwitched=!1),r.map(e=>this.addDocument(e)),this.fireScriptParsedFor(r)}onUpdateDocuments(e){const r=e.filter(e=>t.supportedDocument(e));this.fireScriptParsedFor(r),r.map(e=>this.setLineEndingsValidity(e.docId,!1))}onRemoveDocuments(e){for(let t of e)this.removeDocument(t)}addDocument(e){let t={docId:e.docId,document:e,url:e.url,lineEndings:[],lineEndingsValidity:!1};this._documentMap.set(e.docId,t)}removeDocument(e){this._documentMap.delete(e)}fireScriptParsedFor(e){if(0==this._debuggerDomainHandler.enabled)return;let t=0;for(let r=0;r{this._isAwaitingDebuggerEnableCall=!1,this._debugger.removeEventListener("debuggingenabled",e);let r=this._debugger.connect(!0);this._isEnabled=!0,0!==r&&(this._enableCount=0,this._isEnabled=!1);for(let e of this._enableCallbacks)e(r);this._enableCallbacks=[]};this._debugger.addEventListener("debuggingenabled",e),this._debugger.enable()}}disable(){this._enableCount--,0==this._enableCount&&(this._debugger.disable(),this._isEnabled=!1)}getDebugger(){return this._debugger}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.DOMDebuggerDomainHandler=class extends e.DomainHandler{constructor(t,r,o){super(e.EdpDomain.DOMDebugger,t,r),this._debuggerState=o}processMessage(e,t){let r;switch(e){case"enable":r=this._messageHandler.createError("DOMDebugger.enable was not found.",ErrorCodes.Code.serverError);break;case"disable":r=this._messageHandler.createError("DOMDebugger.disable was not found.",ErrorCodes.Code.serverError);break;case"setInstrumentationBreakpoint":r=this.setInstrumentationBreakpoint(t);break;case"removeInstrumentationBreakpoint":r=this.removeInstrumentationBreakpoint(t);break;default:r=super.processMessage(e,t)}return r}setInstrumentationBreakpoint(e){return"string"!=typeof e.params.eventName?this._messageHandler.createError("Parameter eventName (string) expected on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams):"scriptFirstStatement"!==e.params.eventName?this._messageHandler.createError("Invalid eventName on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams):this._debuggerState.getDebugger().setInstrumentationBreakpointState("scriptFirstStatement",!0)?this.messageHandler.createResult({}):this._messageHandler.createError("Unable to set instrumentation breakpoint with eventName: "+e.params.eventName,ErrorCodes.Code.serverError)}removeInstrumentationBreakpoint(e){return"string"!=typeof e.params.eventName?this._messageHandler.createError("Parameter eventName (string) expected on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams):"scriptFirstStatement"!==e.params.eventName?this._messageHandler.createError("Invalid eventName on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams):this._debuggerState.getDebugger().setInstrumentationBreakpointState("scriptFirstStatement",!1)?this.messageHandler.createResult({}):this._messageHandler.createError("Unable to remove instrumentation breakpoint with eventName: "+e.params.eventName,ErrorCodes.Code.serverError)}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){!function(e){"use strict";class t{constructor(e,r){this._debuggerOMProvider=e,this._messageHandler=r,this._registeredCallbacks=new Map,this._messageHandler.addEventListener(t.c_cacheUpdateEventString,e=>{this.apply(e)})}applyKeyValuePair(e,t){const r=this._registeredCallbacks.get(e);if(void 0!==r)for(const e of r)e(t)}apply(e){const t=JSON.parse(e);for(const e in t){if(void 0!==e){const r=JSON.parse(t[e]);this.applyKeyValuePair(e,r)}}}register(e,t){const r=this._registeredCallbacks.get(e);void 0!==r?r.add(t):this._registeredCallbacks.set(e,new Set([t]))}set(e,t){this._debuggerOMProvider.getDebugger().updateEdpState(e,JSON.stringify(t))}}t.c_cacheUpdateEventString="OnEdpCacheUpdate",e.CacheWrapper=t}(e.Cache||(e.Cache={}))}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(EdgeDevtoolsProtocol){"use strict";const breakpointScopeObjectGroup="BreakpointScopeGroup";class DebuggerDomainHandler extends EdgeDevtoolsProtocol.DomainHandler{constructor(e,t,r,o){super(EdgeDevtoolsProtocol.EdpDomain.Debugger,e,t),this._currentFrames=[],this._debugger=r,this._cacheWrapper=o,this._isAtBreakpoint=!1,this._blackboxBreakController=new EdgeDevtoolsProtocol.BlackboxBreakController(this),this._debuggerDocumentController=new EdgeDevtoolsProtocol.DebuggerDocumentController(this),this._initialExceptionFilter=0,this._exceptionFilter=0,this._shouldFireResume=!0,this._currentBreakpoints=new Set,this._messageHandler.addEventListener("OnResumeScriptExecution",()=>this.onResumeScriptExecution()),this._messageHandler.addEventListener("OnDetach",()=>this.onDetach()),this._messageHandler.addEventListener("OnSetInitialPauseOnExceptions",e=>this.onSetInitialPauseOnExceptions(e)),this._debugger.getDebugger().addEventListener("onResolveBreakpoints",e=>this.onResolveBreakpoints(e)),this._debugger.getDebugger().addEventListener("debuggingresumed",()=>this.onResumed()),this._debugger.getDebugger().addEventListener("onBreak",e=>this.onBreak(e)),this._debugger.getDebugger().addEventListener("onPdmClose",()=>{this.enabled=!1,this.debuggerDisable()})}getCache(){return this._cacheWrapper}getMessageHandler(){return this._messageHandler}registerOnBreakCallback(e){this._onBreakCallback=e}processMessage(e,t){let r;if(this.enabled||"enable"==e)switch(e){case"enable":r=this.debuggerEnable(t.id);break;case"disable":r=this.debuggerDisable();break;case"getScriptSource":r=this.getScriptSource(t);break;case"evaluateOnCallFrame":r=this.evaluateOnCallFrame(t);break;case"setBreakpoint":r=this.setBreakpoint(t);break;case"setBreakpointByUrl":r=this.setBreakpointByUrl(t);break;case"removeBreakpoint":r=this.removeBreakpoint(t);break;case"stepOver":r=this.stepOver();break;case"stepInto":r=this.stepInto();break;case"stepOut":r=this.stepOut();break;case"pause":r=this.pause();break;case"resume":r=this.resume();break;case"setBreakpointsActive":r=this.setBreakpointsActive(t);break;case"setVariableValue":r=this.setVariableValue(t);break;case"setPauseOnExceptions":r=this.setPauseOnExceptions(t);break;case"setBlackboxPatterns":r=this.setBlackboxPatterns(t);break;case"getPossibleBreakpoints":r=this.getPossibleBreakpoints(t);break;default:r=super.processMessage(e,t)}else r=this._messageHandler.createError("Debugging agent is not enabled.",ErrorCodes.Code.serverError);return r}applyInitialDomainState(e){this._debuggerDocumentController.vtabSwitched=!0,e?this.debuggerEnable():this.debuggerDisable()}get debuggerOM(){return this._debugger.getDebugger()}get debuggerDocumentController(){return this._debuggerDocumentController}onResumeScriptExecution(){this.debuggerResumeImpl(0)}onSetInitialPauseOnExceptions(e){this._initialExceptionFilter=Number(e)}onDetach(){this.debuggerResumeImpl(1),this.enabled=!1}onResolveBreakpoints(e){for(let t of e){const e=String(t.breakpointId);this._currentBreakpoints.has(e)||this._currentBreakpoints.add(e),this._messageHandler.postNotification("Debugger.breakpointResolved",{breakpointId:e,location:this._debuggerDocumentController.getLocationFromResolvedBreakpointInfo(t)})}}debuggerDisable(){return this.debuggerResumeImpl(1),this.enabled?(this._debugger.disable(),this.enabled=!1,this._exceptionFilter=0,this._initialExceptionFilter=0,this._messageHandler.createResult({})):this._messageHandler.createResult({})}debuggerEnable(e){if(this.enabled)return this._messageHandler.createResult({});return this._debugger.enable(t=>{if(0===t)this.enabled=!0,this.debuggerEnabled(),void 0!==e&&this._messageHandler.postResponse(e,this._messageHandler.createResult({}));else if(void 0!==e){const r=2===t?"Another Debugger is already attached.":"Debugger could not be enabled.";this._messageHandler.postErrorResponse(e,r,ErrorCodes.Code.serverError)}}),null}debuggerEnabled(){this.applyInitialPauseOnExceptions(),this._debuggerDocumentController.fireScriptParsedForAllDocuments()}getScriptSource(e){let t;try{let r=e.params.scriptId,o=parseInt(r,10);if(Number.isNaN(o))t=this._messageHandler.createError("Invalid params: invalid ScriptId "+String(r),ErrorCodes.Code.invalidParams);else{let e=this._debugger.getDebugger().getSourceText(o);t=e.loadFailed?this._messageHandler.createError("Invalid params: ScriptId "+String(o)+" failed to load.",ErrorCodes.Code.serverError):this._messageHandler.createResult({scriptSource:e.text})}}catch(r){t=this._messageHandler.createError("Invalid request: "+JSON.stringify(e),ErrorCodes.Code.serverError)}return t}convertRemoteObjectPropertyInfoToRemoteObject(e){if(null===e||"null"===e.value){return{type:"object",subtype:"null",value:null}}let t=e.value.substring(1,e.value.length-1),r=JSON.parse(t);return r.msDebuggerPropertyId=r.objectId,r}evaluateOnCallFrame(e){if(!this._isAtBreakpoint)return this._messageHandler.createError("Can only perform operation while paused.",ErrorCodes.Code.serverError);if("string"!=typeof e.params.callFrameId)return this._messageHandler.createError("param: callFrameId (string) expected.",ErrorCodes.Code.invalidParams);if(null===this.getCallFrameById(e.params.callFrameId))return this._messageHandler.createError("Invalid callFrameId: "+e.params.callFrameId,ErrorCodes.Code.invalidParams);if(null==e.params.expression)return this._messageHandler.createError("param: expression (string) expected.",ErrorCodes.Code.invalidParams);const t=parseInt(e.params.callFrameId),r=e.params.expression,o="objectGroup"in e.params?e.params.objectGroup:"",s="returnByValue"in e.params&&e.params.returnByValue,n="includeCommandLineAPI"in e.params&&e.params.includeCommandLineAPI;let a;const i=this.evaluateOnCallFrameImpl(t,r,o,s,n);return a=void 0!==i?this._messageHandler.createResult({result:i}):this._messageHandler.createError("Internal Error: failed to perform evaluation: "+JSON.stringify(e),ErrorCodes.Code.serverError)}evaluateOnCallFrameImpl(e,t,r,o,s,n){const a=DebuggerDomainHandler.getEvalString(t,r,o,s,n),i=this._debugger.getDebugger().eval(e,a);if(null!==i)return this.convertRemoteObjectPropertyInfoToRemoteObject(i)}setBreakpoint(e){let t;if(void 0===e.params.location)return this._messageHandler.createError("Missing location parameter on request: "+JSON.stringify(e),ErrorCodes.Code.invalidParams);let r=e.params.location,o=this.validateLocationObject(r,"location");if(o)return o;const s=parseInt(r.scriptId,10);if(!s||!this.debuggerDocumentController.hasDocumentId(s))return this._messageHandler.createError("Invalid Script id on location: "+JSON.stringify(r),ErrorCodes.Code.serverError);const n=this._debuggerDocumentController.getCharPositionFromLineColumn(s,r.lineNumber,r.columnNumber);if(n<0)return this._messageHandler.createError("Invalid location parameter: "+JSON.stringify(r),ErrorCodes.Code.serverError);let a="";if(e.params.condition){if("string"!=typeof e.params.condition)return this._messageHandler.createError("condition: string value expected: "+JSON.stringify(a),ErrorCodes.Code.invalidParams);a=e.params.condition}const i=this._debugger.getDebugger().addCodeBreakpoint(s,n,a,!1);if(null===i)return this._messageHandler.createError("Invalid location parameter: "+JSON.stringify(r),ErrorCodes.Code.serverError);const l=String(i.breakpointId),d=this._debuggerDocumentController.getLocationFromSourceLocation(i.location);return this._currentBreakpoints.has(l)?this._messageHandler.createError("Breakpoint at this location already exists: "+JSON.stringify(d),ErrorCodes.Code.serverError):(this._currentBreakpoints.add(l),t=this._messageHandler.createResult({breakpointId:String(i.breakpointId),actualLocation:d}))}setBreakpointByUrl(e){let t;return t=void 0!==e.params.lineNumber?e.params.url?this.setBreakpointByUrlHelper(e.params.url,1,e.params.lineNumber,e.params.columnNumber,e.params.condition):e.params.urlRegex?this.setBreakpointByUrlHelper(e.params.urlRegex,2,e.params.lineNumber,e.params.columnNumber,e.params.condition):this._messageHandler.createError("Invalid Request, must contain url or urlRegex: "+JSON.stringify(e),ErrorCodes.Code.invalidParams):this._messageHandler.createError("Invalid Request, must contain line number: "+JSON.stringify(e),ErrorCodes.Code.invalidParams)}setBreakpointByUrlHelper(e,t,r,o,s){let n;const a=s||"";let i=0;void 0!==o&&(i=o);const l=this._debugger.getDebugger().addPendingBreakpointByUrl(e,t,r,i,a,!0),d=String(l.breakpointId);return this._currentBreakpoints.has(d)?n=this._messageHandler.createError("Breakpoint at this location already exists: "+JSON.stringify(location),ErrorCodes.Code.serverError):(this._currentBreakpoints.add(d),n=this._messageHandler.createResult({breakpointId:d,locations:l.locations.map(e=>this._debuggerDocumentController.getLocationFromSourceLocation(e))})),n}removeBreakpoint(e){let t;const r=e.params.breakpointId;let o=parseInt(r,10);return o&&this._currentBreakpoints.has(r)?(this._currentBreakpoints.delete(r),this._debugger.getDebugger().removeBreakpoint(o),t=this._messageHandler.createResult({})):t=this._messageHandler.createError("Unable to remove breakpoint: "+e.params.breakpointId,ErrorCodes.Code.serverError),t}onResumed(){!this._blackboxBreakController.isStepping()&&this._shouldFireResume&&this._messageHandler.postNotification("Debugger.resumed")}onBreak(e){this._shouldFireResume=!0;const t=this._debuggerDocumentController.getUrlByDocumentId(e.docId);if(101===e.breakReason&&t.startsWith("eval code ("))return this._shouldFireResume=!1,this._debugger.getDebugger().resume(1),!1;if(e.docId>0&&!this.debuggerDocumentController.hasDocumentId(e.docId))return this._shouldFireResume=!1,this._debugger.getDebugger().resume(1),!1;if(void 0!==this._onBreakCallback&&this._onBreakCallback(e),6==e.breakReason&&(0===this._exceptionFilter||!this.enabled))return this._shouldFireResume=!1,this._debugger.getDebugger().resume(1),!1;if(e.breakpoints){let t=!1,r=!1;for(let o of e.breakpoints)if(o.condition){t=!0;let s=this._debugger.getDebugger().eval(e.firstFrameId,o.condition);if(null!==s&&!s.invalid&&"Error"!==s.type&&"Undefined"!==s.type){if("Number"===s.type&&"0"===s.value||"Boolean"===s.type&&"false"===s.value)continue;r=!0;break}}if(t&&!r)return this._shouldFireResume=!1,this._debugger.getDebugger().resume(1),!1}let r=this._debugger.getDebugger().getFrames(0),o=this._blackboxBreakController.getBreakAction(r,e.breakReason);return o.ignoreBreak?this.handleBlackboxedBreak(o):(this._isAtBreakpoint=!0,this._blackboxBreakController.reset(),this.generatePausedEvent(e,r)),!0}handleBlackboxedBreak(e){EdgeDevtoolsProtocol.EDP_FAIL_FAST_IF_FALSE(e.ignoreBreak&&(2==e.ignoreBreakAction||4==e.ignoreBreakAction),"Internal Error: Unexpected Blackbox action state."),this.debuggerResumeImpl(e.ignoreBreakAction)}generatePausedEvent(e,t){let r=this.getBreakReasonString(e.breakReason),o=this.getCallFrames(t);if(void 0===o)return void this._messageHandler.postNotification("Internal Error: Failed to fire Debugger.paused",ErrorCodes.Code.serverError);let s={callFrames:o,reason:r,data:this.generatePauseEventDataField(e)};if(1===e.breakReason&&void 0!==e.breakpoints){let t=[];e.breakpoints.forEach(function(e){t.push(String(e.breakpointId))}),s.hitBreakpoints=t}if(void 0!==e.asyncCallStackInfo){let t;try{t=JSON.parse(e.asyncCallStackInfo)}catch(t){return void this._messageHandler.postNotification("Invalid Json : "+e.asyncCallStackInfo,ErrorCodes.Code.serverError)}let r=this.getAsyncCallStack(t),o=r;for(;void 0!==t.parent;)o.parent=this.getAsyncCallStack(t.parent),o=o.parent,t=t.parent;s.asyncStackTrace=r}this._messageHandler.postNotification("Debugger.paused",s)}getAsyncCallStack(e){let t=[];for(let r of e.callFrames){let e=this._debuggerDocumentController.getDocumentIdFromLongDocumentId(r.scriptId),o={functionName:r.functionName,scriptId:String(e),url:this._debuggerDocumentController.getUrlByDocumentId(e),lineNumber:0,columnNumber:0},s={docId:e,start:r.startIndex,length:r.length};const n=this._debuggerDocumentController.getLocationFromSourceLocation(s);o.lineNumber=n.lineNumber,o.columnNumber=n.columnNumber,t.push(o)}return{description:e.description,callFrames:t}}getCallFrames(e){let t=[];for(let r=0;r0){let e=this.createOrUpdateScopeRemoteObject(s,n,breakpointScopeObjectGroup);if(void 0===e)return;o.push({object:e,type:"local",name:"[Locals]"})}if(n>0){let t=this.createReturnScopeRemoteObject(n,e[r].callFrameId);void 0!==t&&o.push({object:t,type:"return",name:EdgeDevtoolsProtocol.ReturnScopeObjectName})}if(a>0){let e=this.createOrUpdateScopeRemoteObject(s,a,breakpointScopeObjectGroup);if(void 0===e)return;o.push({object:e,type:"expando",name:"[Expando]"})}if(i>0){let e=this.createOrUpdateScopeRemoteObject(s,i,breakpointScopeObjectGroup);if(void 0===e)return;o.push({object:e,type:"closure",name:"[Scope]"})}let d=this.evaluateOnCallFrameImpl(s,"this",breakpointScopeObjectGroup,!1,!1);if(void 0===d)return;d.msDebuggerPropertyId=String(l),o.push({object:d,type:"global",name:"[Globals]"}),t.push({callFrameId:String(s),functionName:e[r].functionName,location:this._debuggerDocumentController.getLocationFromSourceLocation(e[r].location),scopeChain:o,this:d})}return this._currentFrames=t,t}generatePauseEventDataField(e){let t={description:e.description};switch(e.breakReason){case 101:t.eventName=e.instrumentationEventName;break;case 102:let r=[];r.push({reason:"other"}),r.push({reason:"EventListener",auxData:{eventName:e.instrumentationEventName}}),t.reasons=r}return t}createOrUpdateScopeRemoteObject(e,t,r,o){let s="";const n=this._debugger.getDebugger().getChildProperties(t,0,0);for(const e of n.propInfos)e.fake||e.invalid||(s.length>0&&(s+=","),s+=e.name+":"+e.name);let a=this.evaluateOnCallFrameImpl(e,`({${s}})`,r,!1,!1,o);return void 0!==a&&(a.msDebuggerPropertyId=String(t)),a}createReturnScopeRemoteObject(e,t){let r=!1;const o=this._debugger.getDebugger().getChildProperties(e,0,0);for(const e of o.propInfos)if(e.returnValue){r=!0;break}if(!r)return;const s={objectId:{id:e,executionContextId:0},propertyName:EdgeDevtoolsProtocol.ReturnScopeObjectName,callFrameId:t};return{type:"object",className:"Object",description:"Object",objectId:JSON.stringify(s),msDebuggerPropertyId:String(e)+":return"}}getCallFramePropertyIds(e){const t=this._debugger.getDebugger().getLocals(e),r=this._debugger.getDebugger().getChildProperties(t,0,0),o=r.propInfos.find(function(e){return"[Expando]"===e.name}),s=o?o.propertyId:0,n=r.propInfos.find(function(e){return"[Scope]"===e.name}),a=n?n.propertyId:0,i=r.propInfos.find(function(e){return"[Globals]"===e.name});return[t,s,a,i?i.propertyId:0]}getBreakReasonString(e){switch(e){case 1:return"breakpoint";case 0:return"step";case 6:return"exception";case 101:return"EventListener";case 102:return"ambiguous";default:return"other"}}releaseBreakpointScopeObjectGroup(){if(!this._isAtBreakpoint)return;if(!(this._currentFrames&&this._currentFrames.length>0))return;const e=parseInt(this._currentFrames[0].callFrameId,10);if(!e)return;const t="window."+EdgeDevtoolsProtocol.ReleaseObjectGroupWindowFunction+' ("'+breakpointScopeObjectGroup+'");';this._debugger.getDebugger().eval(e,t)}debuggerResumeImpl(e){return this.releaseBreakpointScopeObjectGroup(),this._isAtBreakpoint=!1,this._debugger.getDebugger().resume(e)}debuggerResume(e,t){return this.debuggerResumeImpl(e)?this._messageHandler.createResult({}):this._messageHandler.createError("Couldn't "+t,ErrorCodes.Code.serverError)}stepOver(){return this.debuggerResume(3,this.stepOver.name)}stepInto(){return this.debuggerResume(2,this.stepInto.name)}stepOut(){return this.debuggerResume(4,this.stepOut.name)}resume(){return this.debuggerResume(1,this.resume.name)}pause(){return this._debugger.getDebugger().causeBreak(0,0)?this._messageHandler.createResult({}):this._messageHandler.createError("Couldn't "+this.pause.name,ErrorCodes.Code.serverError)}toggleBreakpoints(e){for(let t of this._currentBreakpoints){let r=parseInt(t,10);this._debugger.getDebugger().setBreakpointEnabledState(r,e)}return this._messageHandler.createResult({})}setBreakpointsActive(e){let t;return void 0!==e.params.active?(this.toggleBreakpoints(e.params.active),t=this._messageHandler.createResult({})):t=this._messageHandler.createError('Invalid parameters: "active": boolean value expected',ErrorCodes.Code.invalidParams)}getCallFrameById(e){for(let t of this._currentFrames)if(t.callFrameId==e)return t;return null}setPropertyByName(e,t,r){let o="undefined";if(void 0!==t.value)o=JSON.stringify(t.value);else if(void 0!==t.unserializableValue){if("string"!=typeof t.unserializableValue)return this._messageHandler.createError("newValue.unserializableValue: string value expected",ErrorCodes.Code.invalidParams);if("Infinity"!==t.unserializableValue&&"-Infinity"!==t.unserializableValue&&"-0"!==t.unserializableValue&&"NaN"!==t.unserializableValue)return this._messageHandler.createError("Couldn't parse value object in call argument",ErrorCodes.Code.serverError);o=t.unserializableValue}else if(void 0!==t.objectId)return"string"!=typeof t.objectId?this._messageHandler.createError("newValue.objectId: string value expected",ErrorCodes.Code.invalidParams):void this._messageHandler.createError("Debugger.setVariableValue currently does not support objectId parameters in newValue");const s=DebuggerDomainHandler.getEvalString(e+"="+o,"",!1,!1);this._debugger.getDebugger().eval(r,s)}validateVariableName(e,t){for(let r of t.propInfos)if(r.name==e)return!0;return!1}static getLocalsObjectId(e){let t;const r=e.scopeChain.find(e=>"[Locals]"===e.name);return r&&(t=r.object.objectId),t}updateLocalsScopeObject(e){const t=DebuggerDomainHandler.getLocalsObjectId(e);if(void 0!==t){const r=parseInt(e.callFrameId),o=this._debugger.getDebugger().getLocals(r);this.createOrUpdateScopeRemoteObject(r,o,breakpointScopeObjectGroup,t)}}setVariableValue(e){const t=this.getCallFrameById(e.params.callFrameId.toString());if(null===t)return this._messageHandler.createError("Invalid callFrameId: "+e.params.callFrameId,ErrorCodes.Code.serverError);if("number"!=typeof e.params.scopeNumber)return this._messageHandler.createError("Invalid scopeNumber: "+e.params.scopeNumber,ErrorCodes.Code.serverError);const r=t.scopeChain[e.params.scopeNumber];if(void 0===r||void 0===r.object||void 0===r.object.msDebuggerPropertyId)return this._messageHandler.createError("Internal error: "+JSON.stringify(e),ErrorCodes.Code.internalError);const o=parseInt(r.object.msDebuggerPropertyId,10);if(NaN===o)return this._messageHandler.createError("Internal error: "+JSON.stringify(e),ErrorCodes.Code.internalError);let s=this._debugger.getDebugger().getChildProperties(o,0,0);if(!this.validateVariableName(e.params.variableName,s))return this._messageHandler.createError("Internal error: "+JSON.stringify(e),ErrorCodes.Code.internalError);let n=this.setPropertyByName(e.params.variableName,e.params.newValue,parseInt(e.params.callFrameId));return void 0===n?(this.updateLocalsScopeObject(t),this._messageHandler.createResult({})):n}setPauseOnExceptions(e){let t=e.params.state;return this.setPauseOnExceptionsImpl(t)}setPauseOnExceptionsImpl(e){let t=this._messageHandler.createResult({}),r=!1;return"string"==typeof e?"none"===e?(this._exceptionFilter=0,r=this._debugger.getDebugger().setPauseOnExceptions(0)):"uncaught"===e?(this._exceptionFilter=1,r=this._debugger.getDebugger().setPauseOnExceptions(1)):"all"===e?(this._exceptionFilter=2,r=this._debugger.getDebugger().setPauseOnExceptions(2)):t=this._messageHandler.createError("Unknown pause on exceptions mode: "+e,ErrorCodes.Code.serverError):t=this._messageHandler.createError('Invalid parameters: "state": string value expected',ErrorCodes.Code.invalidParams),r||(t=this._messageHandler.createError("setPauseOnExceptions failed to enable with state: "+e,ErrorCodes.Code.serverError)),t}applyInitialPauseOnExceptions(){if(this._initialExceptionFilter!==this._exceptionFilter){this._exceptionFilter=this._initialExceptionFilter;let e=this._exceptionFilter.toString();switch(this._exceptionFilter){case 0:e="none";break;case 1:e="uncaught";break;case 2:e="all"}this.setPauseOnExceptionsImpl(e)}}createInvalidPatternError(e){return this._messageHandler.createError(`Invalid blackbox patterns: ${e}`,ErrorCodes.Code.invalidParams)}setBlackboxPatternsSafe(e){try{return this._blackboxBreakController._blackboxStateController.setBlackboxPatterns(e.params.patterns),this._messageHandler.createResult({})}catch(t){if(t instanceof SyntaxError)return this.createInvalidPatternError(e.params.patterns);throw t}}setBlackboxPatterns(e){let t;return t=Array.isArray(e.params.patterns)?this.setBlackboxPatternsSafe(e):this.createInvalidPatternError(e.params.patterns)}getPossibleBreakpoints(e){let t;if(!e.params.start)return this._messageHandler.createError("Invalid parameters: start object expected"+JSON.stringify(e.params),ErrorCodes.Code.invalidParams);const r=e.params.start;if(t=this.validateLocationObject(r,"start"))return t;if(e.params.end){const o=e.params.end;if(t=this.validateLocationObject(o,"end"))return t;if(r.scriptId!==o.scriptId)return this._messageHandler.createError("Locations should contain the same scriptId",ErrorCodes.Code.serverError)}const o=parseInt(r.scriptId,10);return o&&this._debuggerDocumentController.hasDocumentId(o)?this.getPossibleBreakPointsImpl(o,e):this._messageHandler.createError("Invalid start scriptId: "+JSON.stringify(r.scriptId),ErrorCodes.Code.serverError)}getPossibleBreakPointsImpl(e,t){let r;const o=this._debuggerDocumentController.getCharPositionFromLineColumn(e,t.params.start.lineNumber,t.params.start.columnNumber);if(!(o>-1))return this._messageHandler.createError("Cannot find the start location specified as: "+JSON.stringify(t.params.start),ErrorCodes.Code.serverError);{let s=-1,n=!0;if(t.params.end&&(s=this._debuggerDocumentController.getCharPositionFromLineColumn(e,t.params.end.lineNumber,t.params.end.columnNumber))>-1&&(n=!1),!(n||o<=s))return this._messageHandler.createError("End location must occur after start location: "+JSON.stringify(t.params),ErrorCodes.Code.serverError);{const t=this._debugger.getDebugger().getPossibleBreakpointLocations(e,o,s,n);r=this._messageHandler.createResult({locations:t.map(e=>this.getBreakLocationFromSourceLocation(e))})}}return r}validateLocationObject(e,t){return"string"!=typeof e.scriptId?this._messageHandler.createError("Invalid parameters: "+t+".scriptId: string value expected "+JSON.stringify(e),ErrorCodes.Code.invalidParams):"number"==typeof e.lineNumber&&Number.isInteger(e.lineNumber)?!e.columnNumber||"number"==typeof e.columnNumber&&Number.isInteger(e.columnNumber)?e.lineNumber<0||e.columnNumber&&e.columnNumber<0?this._messageHandler.createError(t+".lineNumber and "+t+".columnNumber should be >= 0",ErrorCodes.Code.serverError):null:this._messageHandler.createError("Invalid parameters: "+t+".columnNumber: integer value expected "+JSON.stringify(e),ErrorCodes.Code.invalidParams):this._messageHandler.createError("Invalid parameters: "+t+".lineNumber: integer value expected "+JSON.stringify(e),ErrorCodes.Code.invalidParams)}getBreakLocationFromSourceLocation(e){return this._debuggerDocumentController.getLocationFromSourceLocation(e)}static getBreakpointEvalString(){const breakpointEvalFunction=function(window,objectId_SUBSTITUTION_MARKER,addObject_SUBSTITUTION_MARKER,addObjectResult_SUBSTITUTION_MARKER,updateObject_SUBSTITUTION_MARKER,expression_SUBSTITUTION_MARKER,objectGroup_SUBSTITUTION_MARKER,returnByValue_SUBSTITUTION_MARKER,addCommandLineApiFunc_SUBSTITUTION_MARKER,removeCommandLineApiFunc_SUBSTITUTION_MARKER,includeCommandLineAPI_SUBSTITUTION_MARKER,updateConsole$_API_SUBSTITUTION_MARKER){const returnResult_SUBSTITUTION_MARKER=function(e){return e};includeCommandLineAPI_SUBSTITUTION_MARKER&&"addCommandLineApiFunc_SUBSTITUTION_MARKER"in window&&window.addCommandLineApiFunc_SUBSTITUTION_MARKER();let evalResult_SUBSTITUTION_MARKER={result:void 0,isError:!1};try{evalResult_SUBSTITUTION_MARKER.result=eval(expression_SUBSTITUTION_MARKER),window.updateConsole$_API_SUBSTITUTION_MARKER(evalResult_SUBSTITUTION_MARKER.result)}catch(e){evalResult_SUBSTITUTION_MARKER.result=e,evalResult_SUBSTITUTION_MARKER.isError=!0}if(includeCommandLineAPI_SUBSTITUTION_MARKER&&"removeCommandLineApiFunc_SUBSTITUTION_MARKER"in window&&window.removeCommandLineApiFunc_SUBSTITUTION_MARKER(),void 0===objectId_SUBSTITUTION_MARKER)if("addObject_SUBSTITUTION_MARKER"in window&&window.addObject_SUBSTITUTION_MARKER(evalResult_SUBSTITUTION_MARKER,objectGroup_SUBSTITUTION_MARKER,returnByValue_SUBSTITUTION_MARKER),"addObjectResult_SUBSTITUTION_MARKER"in window){let e=window.addObjectResult_SUBSTITUTION_MARKER;delete window.addObjectResult_SUBSTITUTION_MARKER,returnResult_SUBSTITUTION_MARKER(e)}else returnResult_SUBSTITUTION_MARKER(null);else"updateObject_SUBSTITUTION_MARKER"in window&&window.updateObject_SUBSTITUTION_MARKER(evalResult_SUBSTITUTION_MARKER,objectId_SUBSTITUTION_MARKER),returnResult_SUBSTITUTION_MARKER(null)};return breakpointEvalFunction.toString()}static getEvalString(e,t,r,o,s){const n=JSON.stringify(e).slice(1,-1);let a=DebuggerDomainHandler.getBreakpointEvalString();return a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=a.substring(a.indexOf("{")+1,a.lastIndexOf("}"))).split("objectId_SUBSTITUTION_MARKER").join(void 0===s?"undefined":"'"+s+"'")).split("addObject_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.AddRemoteObjectWindowFunction)).split("addObjectResult_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.AddRemoteObjectWindowFunctionResult)).split("updateObject_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.UpdateRemoteObjectWindowFunction)).split("expression_SUBSTITUTION_MARKER").join('"'+n+'"')).split("objectGroup_SUBSTITUTION_MARKER").join('"'+t+'"')).split("returnByValue_SUBSTITUTION_MARKER").join(r?"true":"false")).split("returnResult_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.DebuggerReturnResultFunction)).split("evalResult_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.DebuggerEvalResultObject)).split("addCommandLineApiFunc_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.AddCommandLineAPIFunction)).split("removeCommandLineApiFunc_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.RemoveCommandLineAPIFunction)).split("includeCommandLineAPI_SUBSTITUTION_MARKER").join(o?"true":"false")).split("updateConsole$_API_SUBSTITUTION_MARKER").join(EdgeDevtoolsProtocol.UpdateConsole$_Function)}}EdgeDevtoolsProtocol.DebuggerDomainHandler=DebuggerDomainHandler}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";e.RuntimeDebuggerDomainHandler=class extends e.DomainHandler{constructor(t,r,o,s){super(e.EdpDomain.Runtime,t,o),this._exceptionCounter=1,this._debugger=s,this._debuggerDocumentController=r.debuggerDocumentController,this._debuggerDomainHandler=r,this._exceptionList=[],this._debugger.getDebugger().addEventListener("onRemoveDocuments",e=>this.onRemoveDocuments()),this._debuggerDomainHandler.registerOnBreakCallback(this.onBreak.bind(this))}processMessage(e,t){let r;switch(e){case"enable":r=this.enableRuntime();break;case"disable":r=this.disableRuntime();break;case"getProperties":r=this.getProperties(t);break;default:r=super.processMessage(e,t)}return r}applyInitialDomainState(e){e?this.enableRuntime():this.disableRuntime()}enableRuntime(){if(!this.enabled){const e=e=>{0===e&&(this.enabled=!0)};this._debugger.enable(e);for(const e of this._exceptionList)this._messageHandler.postNotification("Runtime.exceptionThrown",e)}return null}disableRuntime(){return this.enabled&&this._debugger.disable(),this.disable(),null}onRemoveDocuments(){this._exceptionList=[],this._exceptionCounter=1}onBreak(e){if(!e.isUserUnhandled&&6==e.breakReason&&!e.isFirstChanceException){const t=this._debugger.getDebugger().getFrames(0),r=this.getRuntimeCallFrames(t),o=this.createExceptionDetails(e,r),s={timestamp:Date.now(),exceptionDetails:o};this._exceptionList.push(s),this.enabled&&this._messageHandler.postNotification("Runtime.exceptionThrown",s)}}getRuntimeCallFrames(e){let t=[];for(let r of e){let e={functionName:r.functionName,scriptId:String(r.location.docId),url:this._debuggerDocumentController.getUrlByDocumentId(r.location.docId),lineNumber:0,columnNumber:0};const o=this._debuggerDocumentController.getLocationFromSourceLocation(r.location);e.lineNumber=o.lineNumber,e.columnNumber=o.columnNumber,t.push(e)}return t}createExceptionDetails(e,t){let r={exceptionId:this._exceptionCounter,text:e.description,lineNumber:0,columnNumber:0};if(this._exceptionCounter++,void 0!==t[0]){let o=t[0];r.lineNumber=o.lineNumber,r.columnNumber=o.columnNumber,r.scriptId=o.scriptId,r.stackTrace={description:e.description,callFrames:t}}return r}getProperties(t){let r;"string"!=typeof t.params.objectId&&this._messageHandler.createError("Invalid objectId: "+t.params.objectId,ErrorCodes.Code.invalidParams);const o=e.getRemoteObjectDebugIdFromString(t.params.objectId);if(void 0===o)return this._messageHandler.createError("Invalid objectId (parse): "+t.params.objectId,ErrorCodes.Code.invalidParams);const s=o.objectId.id;if(void 0===s||"number"!=typeof s||!Number.isInteger(s)||s<1)return this._messageHandler.createError("Invalid objectId (id): "+t.params.objectId,ErrorCodes.Code.invalidParams);const n=o.callFrameId;if("number"!=typeof n||!Number.isInteger(n)||n<0)return this._messageHandler.createError("Invalid objectId (callFrameId): "+t.params.objectId,ErrorCodes.Code.invalidParams);let a=[],i=!0;t.params.ownProperties&&(i=!t.params.ownProperties);const l={recurseProto:i,firstPass:!0};if(o.propertyName===e.ReturnScopeObjectName)a=this.getPropertiesForReturnScopeRemoteObject(o),r=this._messageHandler.createResult({result:a});else if(t.params.accessorPropertiesOnly){if(!this.getAccessorPropertiesRecursive(a,o,l))return this._messageHandler.createError("Invalid objectId (propertyName): "+t.params.objectId,ErrorCodes.Code.invalidParams);r=this._messageHandler.createResult({result:a})}else this.getPropertiesRecursive(a,o,l),r=this._messageHandler.createResult({result:a});return r}getPropertiesForReturnScopeRemoteObject(t){let r=[];const o=this._debugger.getDebugger().getChildProperties(t.objectId.id,0,0);for(const s of o.propInfos)if(s.returnValue){const o={name:s.name,value:e.getRemoteObjectFromPropInfo(this._debugger,s,t.callFrameId),writable:!s.readOnly,configurable:!s.readOnly,enumerable:s.expandable,isOwn:!0,msReturnValue:!0};r.push(o)}return r}getPropertiesRecursive(t,r,o){let s=this._debugger.getDebugger().getChildProperties(r.objectId.id,0,0),n=-1,a=-1;for(let e=0;e-1){const o={recurseProto:!1,firstPass:!1},a=e.createRemoteObjectDebugIdFromPropertyInfo(s.propInfos[n],r.callFrameId,!1);this.getPropertiesRecursive(t,a,o)}if(a>-1){if("Null"!==s.propInfos[a].type&&o.recurseProto){const o={recurseProto:!0,firstPass:!1},n=e.createRemoteObjectDebugIdFromPropertyInfo(s.propInfos[a],r.callFrameId,!0);this.getPropertiesRecursive(t,n,o)}if(o.firstPass){let e=this.getPropDescriptorFromPropInfo(s.propInfos[a],!1,r.callFrameId);t.push(e)}}}getAccessorPropertiesRecursive(t,r,o){const s=r.callFrameId;let n=!1;if(s){const a=this._debugger.getDebugger().eval(s,"Object.getOwnPropertyDescriptors("+r.propertyName+")");if(null!==a){n=!0;const i=this._debugger.getDebugger().getChildProperties(a.propertyId,0,0);let l=void 0;for(const e of i.propInfos)if("__proto__"!==e.name){let r,n;const a=this._debugger.getDebugger().getChildProperties(e.propertyId,0,0),i=a.propInfos.find(e=>"[Methods]"===e.name),l=a.propInfos.find(e=>"configurable"===e.name),d=a.propInfos.find(e=>"enumerable"==e.name);if(i){const e=this._debugger.getDebugger().getChildProperties(i.propertyId,0,0);for(const t of e.propInfos)if("get"===t.name?r=t:"set"===t.name&&(n=t),void 0!==r&&void 0!==n)break}void 0===r&&void 0===n||t.push(this.createAccessorPropertyDescriptor(e,o.firstPass,s,r,n,l,d))}else l=e;if(void 0!==l&&o.recurseProto){const s=e.createRemoteObjectDebugId(l.propertyId,r.callFrameId,r.propertyName+".__proto__"),a={recurseProto:o.recurseProto,firstPass:!1};n=this.getAccessorPropertiesRecursive(t,s,a)}}}return n}getPropDescriptorFromPropInfo(t,r,o){let s={name:t.name,configurable:!1,enumerable:!0},n=e.getRemoteObjectFromPropInfo(this._debugger,t,o);return void 0!==t.returnValue&&(s.msReturnValue=t.returnValue),t.readOnly||(s.writable=!0,s.configurable=!0),r&&("__proto__"!==t.name&&(s.enumerable=!0),s.isOwn=!0),s.value=n,s}createAccessorPropertyDescriptor(t,r,o,s,n,a,i){let l={name:t.name,configurable:!1,enumerable:!1};return a&&a.value.indexOf("true")>-1&&(l.configurable=!0),i&&i.value.indexOf("true")>-1&&(l.enumerable=!0),r&&(l.isOwn=!0),s&&(l.get=e.getRemoteObjectFromPropInfo(this._debugger,s,o,!0)),n&&(l.set=e.getRemoteObjectFromPropInfo(this._debugger,n,o,!0)),l}}}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t extends e.EventDispatcher{constructor(e){super(),this._messageHandler=e,this._registeredDomainHandlers=new Map,this._domainMethodSubstitution=new Map([["Debugger.msSetDebuggerPropertyValue","Runtime.msSetDebuggerPropertyValue"]]);this._messageHandler.addEventListener("edpmessage",e=>{this.messageHandler(e)})}postResponse(e,t){const r=this.createResponse(e,t);this._messageHandler.sendMessage("OnEdpMessage",String(e),JSON.stringify(r))}postNotification(e,t){this._messageHandler.sendMessage("OnEdpMessage","0",JSON.stringify(this.createNotification(e,t)))}createResponse(e,t){let r={id:e};return t?t.error?r.error=t.error:void 0===t.result||null===t.result?r.result={}:r.result=t.result:r.error=new Error("No response specified"),r}registerDomain(e){this._registeredDomainHandlers.set(e.domain.name,e)}postErrorResponse(e,r,o){o&&(r=`Error Code: ${o}. Description: ${r}`);const s=t.createError(r);this.postResponse(e,s)}static createResult(e){return{result:e}}createResult(e){return t.createResult(e)}createError(e,r){return t.createError(e,r)}static createError(e,t){return t?{error:{code:t,description:e}}:{error:{description:e}}}createNotification(e,t){return{method:e,params:t}}getSubstitutedDomain(e){let t=this._domainMethodSubstitution.get(e);return t||(t=e),t}messageHandler(e){let t={id:0,method:"",params:[]};if("OnEdpMessage"===e.commandId){try{t=JSON.parse(e.data)}catch(t){return void this.postErrorResponse(0,`Message must be valid JSON: ${e.data}`)}if(t.id>0){const e=this.getSubstitutedDomain(t.method).split(".");if(2===e.length){const r=e[0],o=e[1],s=this._registeredDomainHandlers.get(r);if(s){const e=s.processMessage(o,t);null!==e&&this.postResponse(t.id,e)}else this.postErrorResponse(t.id,`Invalid Domain: ${JSON.stringify(r)}`)}else this.postErrorResponse(t.id,`Invalid request: ${JSON.stringify(t)}`)}else this.postErrorResponse(0,`Invalid id: ${JSON.stringify(t.id)}`)}else this.dispatchAll(e.commandId,e.data)}}e.BaseMessageHandler=t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={})),function(e){"use strict";class t extends e.BaseMessageHandler{constructor(){super(external);let t=debug,r=new e.DebuggerState;this._cacheWrapper=new e.Cache.CacheWrapper(r,this);let o=new e.DebuggerDomainHandler(this,t,r,this._cacheWrapper);this.registerDomain(o),this.registerDomain(new e.DOMDebuggerDomainHandler(this,t,r)),this.registerDomain(new e.RuntimeDebuggerDomainHandler(this,o,t,r)),this.addEventListener("OnEnableInitialDomainState",e=>this.onEnableInitialDomainState(e)),this.addEventListener("OnEdpCacheUpdate",e=>this.onEdpCacheUpdate(e))}onEnableInitialDomainState(e){const t=this._registeredDomainHandlers.get(e);t&&t.applyInitialDomainState(!0)}onEdpCacheUpdate(e){this._cacheWrapper.apply(e)}}e.DebuggerMessageHandler=t,e.debuggerMessageHandler=new t}(EdgeDevtoolsProtocol||(EdgeDevtoolsProtocol={}));{"version":{"major":"0","minor":"2"},"domains":[{"domain":"Schema","description":"Provides information about the protocol schema.","types":[{"id":"Domain","type":"object","description":"Description of the protocol domain.","properties":[{"name":"name","type":"string","description":"Domain name."},{"name":"version","type":"string","description":"Domain version."}]}],"commands":[{"name":"getDomains","description":"Returns supported domains.","handlers":["browser","renderer"],"returns":[{"name":"domains","type":"array","items":{"$ref":"Domain"},"description":"List of supported domains."}]}]},{"domain":"Page","description":"Actions and events related to the inspected page belong to the page domain.","dependencies":[],"types":[{"id":"FrameId","type":"string","description":"Unique frame identifier."},{"id":"Frame","type":"object","description":"Information about the Frame on the Page.","properties":[{"name":"id","$ref":"FrameId","description":"Frame unique identifier."},{"name":"parentId","$ref":"FrameId","optional":true,"description":"Parent frame unique identifier."},{"name":"name","type":"string","optional":true,"description":"Frame's name as specified in the tag."},{"name":"url","type":"string","description":"Frame document's URL."},{"name":"securityOrigin","type":"string","description":"Frame document's security origin."},{"name":"mimeType","type":"string","description":"Frame document's mimeType as determined by the browser."}]},{"id":"FrameTree","type":"object","description":"Information about the Frame hierarchy.","properties":[{"$ref":"Frame","name":"frame","description":"Frame information for this tree item."},{"type":"array","items":{"$ref":"FrameTree"},"optional":true,"name":"childFrames","description":"Child frames."}]}],"commands":[{"name":"enable","description":"Enables page domain notifications."},{"name":"disable","description":"Disables page domain notifications."},{"name":"navigate","parameters":[{"name":"url","type":"string","description":"URL to navigate the page to."},{"name":"frameId","$ref":"FrameId","optional":true,"description":"Frame id to navigate. If not specified, will navigate the top page."}],"returns":[{"name":"frameId","$ref":"FrameId","description":"Frame id that will be navigated."}],"description":"Navigates current page to the given URL."},{"name":"getFrameTree","returns":[{"$ref":"FrameTree","name":"frameTree","description":"Present frame tree structure."}],"description":"Returns present frame tree structure."}],"events":[{"name":"frameAttached","parameters":[{"$ref":"FrameId","name":"frameId","description":"Id of the frame that has been attached."},{"$ref":"FrameId","name":"parentFrameId","description":"Parent frame identifier."},{"$ref":"Runtime.StackTrace","optional":true,"name":"stack","description":"JavaScript stack trace of when frame was attached, only set if frame initiated from script."}],"description":"Fired when frame has been attached to its parent."},{"name":"frameDetached","parameters":[{"$ref":"FrameId","name":"frameId","description":"Id of the frame that has been detached."}],"description":"Fired when frame has been detached from its parent."},{"name":"frameNavigated","description":"Fired once navigation of the frame has completed.","parameters":[{"$ref":"Frame","name":"frame","description":"Frame object."}]},{"name":"loadEventFired","description":"Corresponds to the window.onload event.","parameters":[{"type":"number","name":"timestamp","description":"Number of milliseconds since epoch."}]},{"name":"domContentEventFired","description":"Corresponds to the document.onDOMContentLoaded event.","parameters":[{"type":"number","name":"timestamp","description":"Number of milliseconds since epoch."}]}]},{"domain":"DOMDebugger","description":"DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript execution will stop on these operations as if there was a regular breakpoint set.","dependencies":[],"types":[],"commands":[{"name":"setInstrumentationBreakpoint","parameters":[{"name":"eventName","type":"string","description":"Instrumentation name to stop on. Valid values: 'scriptFirstStatement'."}],"experimental":true,"description":"Sets a breakpoint on a particular native event."},{"name":"removeInstrumentationBreakpoint","parameters":[{"name":"eventName","type":"string","description":"Instrumentation name to stop on. Valid values: 'scriptFirstStatement'."}],"experimental":true,"description":"Removes a breakpoint on a particular native event."}],"events":[]},{"domain":"CSS","description":"This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) have an associated `id` used in subsequent operations on the related object. Each object type has a specific `id` structure, and those are not interchangeable between objects of different kinds. CSS objects can be loaded using the `get*ForNode()` calls (which accept a DOM node id). A client can also keep track of stylesheets via the `styleSheetAdded`/`styleSheetRemoved` events and subsequently load the required stylesheet contents using the `getStyleSheet[Text]()` methods.","dependencies":["DOM"],"experimental":true,"types":[{"id":"StyleSheetId","type":"string"},{"id":"PseudoElementMatches","description":"CSS rule collection for a single pseudo style.","type":"object","properties":[{"name":"pseudoType","description":"Pseudo element type.","$ref":"DOM.PseudoType"},{"name":"matches","description":"Matches of CSS rules applicable to the pseudo style.","type":"array","items":{"$ref":"RuleMatch"}}]},{"id":"InheritedStyleEntry","description":"Inherited CSS rule collection from ancestor node.","type":"object","properties":[{"name":"inlineStyle","description":"The ancestor node's inline style, if any, in the style inheritance chain.","optional":true,"$ref":"CSSStyle"},{"name":"matchedCSSRules","description":"Matches of CSS rules matching the ancestor node in the style inheritance chain.","type":"array","items":{"$ref":"RuleMatch"}}]},{"id":"RuleMatch","description":"Match data for a CSS rule.","type":"object","properties":[{"name":"rule","description":"CSS rule in the match.","$ref":"CSSRule"}]},{"id":"Value","description":"Data for a simple selector (these are delimited by commas in a selector list).","type":"object","properties":[{"name":"text","description":"Value text.","type":"string"},{"name":"range","description":"Value range in the underlying resource (if available).","optional":true,"$ref":"SourceRange"}]},{"id":"SelectorList","description":"Selector list data.","type":"object","properties":[{"name":"selectors","description":"Selectors in the list.","type":"array","items":{"$ref":"Value"}},{"name":"text","description":"Rule selector text.","type":"string"}]},{"id":"CSSRule","description":"CSS rule representation.","type":"object","properties":[{"name":"styleSheetId","description":"The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.","optional":true,"$ref":"StyleSheetId"},{"name":"selectorList","optional":true,"description":"Rule selector data.","$ref":"SelectorList"},{"name":"origin","optional":true,"description":"Parent stylesheet's origin.","$ref":"StyleSheetOrigin"},{"name":"style","description":"Associated style declaration.","$ref":"CSSStyle"},{"name":"media","description":"Media list array (for rules involving media queries). The array enumerates media queries\nstarting with the innermost one, going outwards.","optional":true,"type":"array","items":{"$ref":"CSSMedia"}}]},{"id":"SourceRange","description":"Text range within a resource. All numbers are zero-based.","type":"object","properties":[{"name":"startLine","description":"Start line of range.","type":"integer"},{"name":"startColumn","description":"Start column of range (inclusive).","type":"integer"},{"name":"endLine","description":"End line of range","type":"integer"},{"name":"endColumn","description":"End column of range (exclusive).","type":"integer"}]},{"id":"ShorthandEntry","type":"object","properties":[{"name":"name","description":"Shorthand name.","type":"string"},{"name":"value","description":"Shorthand value.","type":"string"},{"name":"important","description":"Whether the property has \"!important\" annotation (implies `false` if absent).","optional":true,"type":"boolean"}]},{"id":"CSSStyle","description":"CSS style representation.","type":"object","properties":[{"name":"styleSheetId","description":"The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.","optional":true,"$ref":"StyleSheetId"},{"name":"cssProperties","description":"CSS properties in the style.","type":"array","items":{"$ref":"CSSProperty"}},{"name":"shorthandEntries","description":"Computed values for all shorthands found in the style.","type":"array","items":{"$ref":"ShorthandEntry"}},{"name":"cssText","description":"Style declaration text (if available).","optional":true,"type":"string"},{"name":"range","description":"Style declaration range in the enclosing stylesheet (if available).","optional":true,"$ref":"SourceRange"}]},{"id":"CSSProperty","description":"CSS property declaration data.","type":"object","properties":[{"name":"name","description":"The property name.","type":"string"},{"name":"value","description":"The property value.","type":"string"},{"name":"important","description":"Whether the property has \"!important\" annotation (implies `false` if absent).","optional":true,"type":"boolean"},{"name":"implicit","description":"Whether the property is implicit (implies `false` if absent).","optional":true,"type":"boolean"},{"name":"text","description":"The full property text as specified in the style.","optional":true,"type":"string"},{"name":"parsedOk","description":"Whether the property is understood by the browser (implies `true` if absent).","optional":true,"type":"boolean"},{"name":"disabled","description":"Whether the property is disabled by the user (present for source-based properties only).","optional":true,"type":"boolean"},{"name":"range","description":"The entire property range in the enclosing style declaration (if available).","optional":true,"$ref":"SourceRange"}]},{"id":"CSSMedia","description":"CSS media rule descriptor.","type":"object","properties":[{"name":"text","description":"Media query text.","type":"string"},{"name":"source","description":"Source of the media query: \"mediaRule\" if specified by a @media rule, \"importRule\" if\nspecified by an @import rule, \"linkedSheet\" if specified by a \"media\" attribute in a linked\nstylesheet's LINK tag, \"inlineSheet\" if specified by a \"media\" attribute in an inline\nstylesheet's STYLE tag.","type":"string","enum":["mediaRule","importRule","linkedSheet","inlineSheet"]},{"name":"sourceURL","description":"URL of the document containing the media query description.","optional":true,"type":"string"},{"name":"range","description":"The associated rule (@media or @import) header range in the enclosing stylesheet (if\navailable).","optional":true,"$ref":"SourceRange"},{"name":"styleSheetId","description":"Identifier of the stylesheet containing this object (if exists).","optional":true,"$ref":"StyleSheetId"},{"name":"mediaList","description":"Array of media queries.","optional":true,"type":"array","items":{"$ref":"MediaQuery"}}]},{"id":"MediaQuery","description":"Media query descriptor.","type":"object","properties":[{"name":"expressions","description":"Array of media query expressions.","type":"array","items":{"$ref":"MediaQueryExpression"}},{"name":"active","description":"Whether the media query condition is satisfied.","type":"boolean"}]},{"id":"MediaQueryExpression","description":"Media query expression descriptor.","type":"object","properties":[{"name":"value","description":"Media query expression value.","type":"number"},{"name":"unit","description":"Media query expression units.","type":"string"},{"name":"feature","description":"Media query expression feature.","type":"string"},{"name":"valueRange","description":"The associated range of the value text in the enclosing stylesheet (if available).","optional":true,"$ref":"SourceRange"},{"name":"computedLength","description":"Computed length of media query expression (if applicable).","optional":true,"type":"number"}]},{"id":"PlatformFontUsage","description":"Information about amount of glyphs that were rendered with given font.","type":"object","properties":[{"name":"familyName","description":"Font's family name reported by platform.","type":"string"},{"name":"isCustomFont","description":"Indicates if the font was downloaded or resolved locally.","type":"boolean"},{"name":"glyphCount","description":"Amount of glyphs that were rendered with this font.","type":"number"}]},{"id":"CSSKeyframesRule","description":"CSS keyframes rule representation.","type":"object","properties":[{"name":"animationName","description":"Animation name.","$ref":"Value"},{"name":"keyframes","description":"List of keyframes.","type":"array","items":{"$ref":"CSSKeyframeRule"}}]},{"id":"CSSKeyframeRule","description":"CSS keyframe rule representation.","type":"object","properties":[{"name":"styleSheetId","description":"The css style sheet identifier (absent for user agent stylesheet and user-specified\nstylesheet rules) this rule came from.","optional":true,"$ref":"StyleSheetId"},{"name":"origin","description":"Parent stylesheet's origin.","$ref":"StyleSheetOrigin"},{"name":"keyText","description":"Associated key text.","$ref":"Value"},{"name":"style","description":"Associated style declaration.","$ref":"CSSStyle"}]},{"id":"CSSComputedStyleProperty","type":"object","properties":[{"name":"name","description":"Computed style property name.","type":"string"},{"name":"value","description":"Computed style property value.","type":"string"}]},{"id":"CSSStyleSheetHeader","description":"CSS stylesheet metainformation.","type":"object","properties":[{"name":"styleSheetId","description":"The stylesheet identifier.","$ref":"StyleSheetId"},{"name":"sourceURL","description":"Stylesheet resource URL.","type":"string"},{"name":"disabled","description":"Denotes whether the stylesheet is disabled.","type":"boolean"},{"name":"isInline","description":"Whether this stylesheet is created for STYLE tag by parser. This flag is not set for\ndocument.written STYLE tags.","type":"boolean"},{"name":"startLine","description":"Line offset of the stylesheet within the resource (zero based).","type":"number"},{"name":"startColumn","description":"Column offset of the stylesheet within the resource (zero based).","type":"number"},{"name":"length","description":"Size of the content (in characters).","type":"number"}]}],"commands":[{"name":"enable","description":"Enables the CSS agent for the given page. Clients should not assume that the CSS agent has been enabled until the result of this command is received."},{"name":"disable","description":"Disables the CSS agent for the given page."},{"name":"getInlineStylesForNode","description":"Returns the styles defined inline (explicitly in the \"style\" attribute and implicitly, using DOM\nattributes) for a DOM node identified by `nodeId`.","parameters":[{"name":"nodeId","$ref":"DOM.NodeId"}],"returns":[{"name":"inlineStyle","description":"Inline style for the specified DOM node.","optional":true,"$ref":"CSSStyle"},{"name":"attributesStyle","description":"Attribute-defined element style (e.g. resulting from \"width=20 height=100%\").","optional":true,"$ref":"CSSStyle"}]},{"name":"getMatchedStylesForNode","description":"Returns requested styles for a DOM node identified by `nodeId`.","parameters":[{"name":"nodeId","$ref":"DOM.NodeId"}],"returns":[{"name":"inlineStyle","description":"Inline style for the specified DOM node.","optional":true,"$ref":"CSSStyle"},{"name":"attributesStyle","description":"Attribute-defined element style (e.g. resulting from \"width=20 height=100%\").","optional":true,"$ref":"CSSStyle"},{"name":"matchedCSSRules","description":"CSS rules matching this node, from all applicable stylesheets.","optional":true,"type":"array","items":{"$ref":"RuleMatch"}},{"name":"pseudoElements","description":"Pseudo style matches for this node.","optional":true,"type":"array","items":{"$ref":"PseudoElementMatches"}},{"name":"inherited","description":"A chain of inherited styles (from the immediate node parent up to the DOM tree root).","optional":true,"type":"array","items":{"$ref":"InheritedStyleEntry"}},{"name":"cssKeyframesRules","description":"A list of CSS keyframed animations matching this node.","optional":true,"type":"array","items":{"$ref":"CSSKeyframesRule"}}]},{"name":"getPlatformFontsForNode","description":"Requests information about platform fonts which we used to render child TextNodes in the given\nnode.","parameters":[{"name":"nodeId","$ref":"DOM.NodeId"}],"returns":[{"name":"fonts","description":"Usage statistics for every employed platform font.","type":"array","items":{"$ref":"PlatformFontUsage"}}]},{"name":"getComputedStyleForNode","parameters":[{"name":"nodeId","$ref":"DOM.NodeId"}],"returns":[{"items":{"$ref":"CSSComputedStyleProperty"},"type":"array","name":"computedStyle","description":"Computed style for the specified DOM node."}],"description":"Returns the computed style for a DOM node identified by `nodeId`."}],"events":[{"name":"styleSheetAdded","description":"Fired whenever an active document stylesheet is added.","parameters":[{"$ref":"CSSStyleSheetHeader","name":"header","description":"Added stylesheet metainfo."}]},{"name":"styleSheetChanged","description":"Fired whenever a stylesheet is changed as a result of the client operation.","parameters":[{"name":"styleSheetId","$ref":"StyleSheetId"}]},{"name":"styleSheetRemoved","description":"Fired whenever an active document stylesheet is removed.","parameters":[{"$ref":"StyleSheetId","name":"styleSheetId","description":"Identifier of the removed stylesheet."}]}]},{"domain":"DOM","description":"This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object that has an `id`. This `id` can be used to get additional information on the Node, resolve it into the JavaScript object wrapper, etc. It is important that client receives DOM events only for the nodes that are known to the client. Backend keeps track of the nodes that were sent to the client and never sends the same node twice. It is client's responsibility to collect information about the nodes that were sent to the client.

Note that `iframe` owner elements will return corresponding document elements as their child nodes.

","dependencies":["Runtime"],"types":[{"id":"RGBA","type":"object","description":"A Structure holding an RGBA color.","properties":[{"name":"r","type":"integer","description":"The red component, in the [0-255] range."},{"name":"g","type":"integer","description":"The green component, in the [0-255] range."},{"name":"b","type":"integer","description":"The blue component, in the [0-255] range."},{"name":"a","type":"number","optional":true,"description":"The alpha component, in the [0-1] range. Default is 1."}]},{"id":"HighlightConfig","type":"object","description":"Configuration data for highlighting of page elements.","properties":[{"name":"contentColor","$ref":"RGBA","optional":true,"description":"The content box highlight fill color. Default is transparent."},{"name":"paddingColor","$ref":"RGBA","optional":true,"description":"The padding highlight fill color. Default is transparent."},{"name":"borderColor","$ref":"RGBA","optional":true,"description":"The border highlight fill color. Default is transparent."},{"name":"marginColor","$ref":"RGBA","optional":true,"description":"The margin highlight fill color. Default is transparent."}]},{"id":"NodeId","type":"integer","description":"Unique DOM node identifier"},{"id":"Node","type":"object","description":"Mirror object that represents the actual DOM nodes.","properties":[{"name":"nodeId","$ref":"NodeId","description":"Node Identifier used to reference this node. Backend will fire DOM events for nodes that have a nodeId that is known to the client"},{"name":"parentId","$ref":"NodeId","optional":true,"description":"Node Identifier of the parent Node, if any."},{"name":"backendNodeId","$ref":"NodeId","description":"Backend Node identifier of the node. BackendNodeIds reference Nodes that can be known to the client, but do not push DOM events about this node."},{"name":"nodeType","type":"integer","description":"`Node`'s nodeType."},{"name":"nodeName","type":"string","description":"`Node`'s nodeName."},{"name":"localName","type":"string","description":"`Node`'s localName"},{"name":"nodeValue","type":"string","description":"`Node`'s nodeValue"},{"name":"childNodeCount","type":"integer","optional":true,"description":"Child count for `Container` nodes."},{"name":"children","type":"array","items":{"$ref":"Node"},"optional":true,"description":"Child nodes of this node when requested with children."},{"name":"attributes","type":"array","items":{"type":"string"},"optional":true,"description":"Attributes of `Element` nodes in the form of a flat array `[name1, value1, name2, value2]"},{"name":"documentURL","type":"string","optional":true,"description":"Document URL that `Document` nodes point to."},{"name":"baseURL","type":"string","optional":true,"description":"Document URL that `Document` nodes use for URL completion."},{"name":"publicId","type":"string","optional":true,"description":"`DocumentType` Node's publicId."},{"name":"systemId","type":"string","optional":true,"description":"`DocumentType` Node's systemId."},{"name":"internalSubset","type":"string","optional":true,"description":"`DocumentType` Node's internalSubset."},{"name":"xmlVersion","type":"string","optional":true,"description":"`Document` Node's xml version in the case of XML documents."},{"name":"name","type":"string","optional":true,"description":"`Attr` Node's name."},{"name":"value","type":"string","optional":true,"description":"`Attr` Node's value."},{"name":"frameId","$ref":"Page.FrameId","optional":true,"description":"Frame ID for frame owner elements."},{"name":"contentDocument","$ref":"Node","optional":true,"description":"Content document for frame owner elements."},{"name":"isSVG","type":"boolean","optional":true,"description":"True if the node is SVG."}]},{"id":"BackendNodeId","type":"integer","description":"Unique DOM node identifier used to reference a node that may not have been pushed to the front-end."},{"id":"PseudoType","type":"string","enum":["first-line","first-letter","before","after","selection"],"description":"Pseudo element type."}],"commands":[{"name":"enable","description":"Enables DOM agent for the given page."},{"name":"disable","description":"Disables DOM agent for the given page. Disabling the DOM will invalidate any previously valid nodeIds."},{"name":"getDocument","parameters":[{"name":"depth","type":"integer","description":"The maximum depth at which children should be retrieved, defaults to 2. Use -1 for entire subtree."},{"name":"pierce","type":"boolean","description":"Whether or not iframes should be traversed when returning the subtree (default is false)."}],"returns":[{"name":"root","$ref":"Node","description":"Resulting Node."}],"description":"Returns the root DOM node (and optionally the subtree) to the caller. Calling `getDocument` will invalidate any previously valid nodeIds"},{"name":"highlightNode","parameters":[{"$ref":"NodeId","optional":true,"name":"nodeId","description":"Identifier of the node to highlight."},{"$ref":"BackendNodeId","optional":true,"name":"backendNodeId","description":"Identifier of the backend node to highlight."},{"$ref":"Runtime.RemoteObjectId","optional":true,"name":"objectId","description":"JavaScript object id of the node to be highlighted."},{"$ref":"HighlightConfig","name":"higlightConfig","description":"Descriptor of the highlight appearance."}],"returns":[{"name":"root","$ref":"Node","description":"Resulting Node."}],"description":"Higlights DOM node with given id or object wrapper. nodeId, backendNodeId, or objectId must be specified."},{"name":"hideHighlight","description":"Hides any current DOM node highlight."},{"name":"requestChildNodes","parameters":[{"name":"nodeId","$ref":"NodeId","description":"Id of the node to get children from."},{"name":"depth","type":"integer","description":"The maximum depth at which children should be retrieved, defaults to 1. Use -1 for entire subtree."},{"name":"pierce","type":"boolean","description":"Whether or not iframes should be traversed when returning the subtree (default is false)."}],"description":"Requests that children of the node with given id are returned to ghe caller in the form of `setChildNodes` events. `setChildNodes` will be fired for each node that has not previously returned it's children, starting from the requested node down to the specified depth."},{"name":"getAttributes","parameters":[{"$ref":"NodeId","name":"nodeId","description":"Id of the node to retrieve attibutes for."}],"returns":[{"items":{"type":"string"},"type":"array","name":"attributes","description":"An interleaved array of node attribute names and values."}],"description":"Returns attributes for the specified node."},{"name":"getOuterHTML","parameters":[{"$ref":"NodeId","optional":true,"name":"nodeId","description":"Identifier of the node."},{"$ref":"BackendNodeId","optional":true,"name":"backendNodeId","description":"Identifier of the backend node."},{"$ref":"Runtime.RemoteObjectId","optional":true,"name":"objectId","description":"JavaScript object id of the node wrapper."}],"returns":[{"type":"string","name":"outerHTML","description":"Outer HTML markup."}],"description":"Returns node's HTML markup."},{"name":"pushNodesByBackendIdsToFrontend","parameters":[{"name":"backendNodeIds","type":"array","items":{"$ref":"BackendNodeId"},"description":"Backend Node IDs of the nodes to resolve"}],"returns":[{"name":"nodeIds","type":"array","items":{"$ref":"Node"},"description":"Node Ids of the resolved nodes"}],"description":"Looks up Node Ids and resolves all parents for the specified Backend Node Ids"},{"name":"querySelector","parameters":[{"name":"nodeId","$ref":"NodeId","description":"Id of the node to query upon."},{"name":"selector","type":"string","description":"The selector string."}],"returns":[{"name":"nodeId","$ref":"NodeId","description":"Query selector result."}],"description":"Executes `querySelector` on a given node."},{"name":"querySelectorAll","parameters":[{"name":"nodeId","$ref":"NodeId","description":"Id of the node to query upon."},{"name":"selector","type":"string","description":"The selector string."}],"returns":[{"name":"nodeIds","type":"array","items":{"$ref":"NodeId"},"description":"Query selector results."}],"description":"Executes `querySelectorAll` on a given node."},{"name":"requestNode","parameters":[{"name":"objectId","$ref":"Runtime.RemoteObjectId","description":"JavaScript object Id to convert into node."}],"returns":[{"name":"nodeId","$ref":"NodeId","description":"Node Id for given object."}],"description":"Requests that the node with given remote object Id is sent to caller. All nodes that form the path from the node to the root are also sent to the client as a series of `setChildNodes` notifications. returns 0 if the document containing the requested node has not previously been requested by the client."},{"name":"resolveNode","parameters":[{"name":"nodeId","$ref":"NodeId","optional":true,"description":"Id of the node to resolve."},{"name":"backendNodeId","$ref":"BackendNodeId","optional":true,"description":"Backend Node Id of the node to resolve."},{"name":"objectGroup","type":"string","description":"Symbolic group name that can be used to release multiple objects."}],"returns":[{"name":"object","$ref":"Runtime.RemoteObject","description":"JavaScript object wrapper for given node."}],"description":"Resolves the JavaScript node object for a given NodeId or BackendNodeId."},{"name":"setInspectedNode","parameters":[{"$ref":"NodeId","name":"nodeId","description":"DOM node id to be accessible by means of $0-$4 in command line API."}],"experimental":true,"description":"Enables console to refer to the previous inspected node with given id via $0-$4."}],"events":[{"name":"setChildNodes","description":"Fired when the backend wishes to provide client with missing DOM structure. This happens upon most calls requesting nodeIds","parameters":[{"name":"parentId","$ref":"NodeId","description":"Parent node to poplate with children."},{"name":"nodes","type":"array","items":{"$ref":"NodeId"},"description":"Child nodes array."}]},{"name":"attributeModified","description":"Fired when `Element`'s attribute is modified.","parameters":[{"name":"nodeId","$ref":"NodeId","description":"Id of the node that has changed."},{"name":"name","type":"string","description":"Attribute name."},{"name":"value","type":"string","description":"Attribute value."}]},{"name":"attributeRemoved","description":"Fired when `Element`'s attribute is removed.","parameters":[{"name":"nodeId","$ref":"NodeId","description":"Id of the node that has changed."},{"name":"name","type":"string","description":"Attribute name."}]},{"name":"characterDataModified","description":"Mirrors `DOMCharacterDataModified` event.","parameters":[{"name":"nodeId","$ref":"NodeId","description":"Id of the node that has changed."},{"name":"charcterData","type":"string","description":"New text value."}]},{"name":"childNodeInserted","description":"Mirrors `DOMNodeInserted` event.","parameters":[{"name":"parentNodeId","$ref":"NodeId","description":"Id of the node that has changed."},{"name":"previousNodeId","$ref":"NodeId","description":"Id of the inserted node's previous sibling."},{"name":"node","$ref":"Node","description":"Inserted node data."}]},{"name":"childNodeRemoved","description":"Mirrors `DOMNodeRemoved` event.","parameters":[{"name":"parentNodeId","$ref":"NodeId","description":"Id of the node that has changed."},{"name":"nodeId","$ref":"NodeId","description":"Id of the node that has been removed."}]},{"name":"documentUpdated","description":"Fired when `Document` has been totally updated. Node ids are no longer valid."}]},{"domain":"Overlay","description":"Overlay domain exposes visual adornments and node selection interaction","types":[],"dependencies":["DOM"],"experimental":true,"commands":[{"name":"enable","description":"Enables reporting of nodeHighlightRequested and inspectElementRequested events"},{"name":"disable","description":"Disables reporting of Overlay domain events"},{"name":"setInspectMode","description":"Sets the element selection mode for the client","parameters":[{"name":"mode","type":"string","description":"The inspection mode. Valid values are 'searchForNode' and 'none'."},{"name":"highlightConfig","optional":true,"$ref":"DOM.HighlightConfig","description":"The highlight configuration to use while inspecting"}]}],"events":[{"name":"inspectNodeRequested","description":"Notifies the client that the user has asked to inspect a particular node","parameters":[{"$ref":"DOM.BackendNodeId","name":"backendNodeId","description":"The backend node ID of node requested"}]},{"name":"nodeHighlightRequested","description":"Indicates that the user has hovered over the node and may inspect the node","parameters":[{"$ref":"DOM.NodeId","name":"nodeId","description":"The node ID of the node being considered"}]}]},{"domain":"Runtime","description":"Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects. Evaluation results are returned as mirror object that expose object type, string representation and unique identifier that can be used for further object reference. Original objects are maintained in memory unless they are either explicitly released.","types":[{"id":"ScriptId","type":"string","description":"Unique script identifier."},{"id":"RemoteObjectId","type":"string","description":"Unique object identifier."},{"id":"UnserializableValue","type":"string","enum":["Infinity","NaN","-Infinity","-0"],"description":"Primitive value which cannot be JSON-stringified."},{"id":"RemoteObject","type":"object","description":"Mirror object referencing original JavaScript object.","properties":[{"name":"type","type":"string","enum":["object","function","undefined","string","number","boolean","symbol"],"description":"Object type."},{"name":"subtype","type":"string","optional":true,"enum":["null","error","promise","node"],"description":"Object subtype hint. Specified for object type values only."},{"name":"className","type":"string","optional":true,"description":"Object class (constructor) name. Specified for object type values only."},{"name":"value","type":"any","optional":true,"description":"Remote object value in case of primitive values or JSON values (if it was requested)."},{"name":"unserializableValue","$ref":"UnserializableValue","optional":true,"description":"Primitive value which can not be JSON-stringified does not have value, but gets this property."},{"name":"description","type":"string","optional":true,"description":"String representation of the object."},{"name":"objectId","$ref":"RemoteObjectId","optional":true,"description":"Unique object identifier (for non-primitive values)."},{"name":"msDebuggerPropertyId","type":"string","optional":true,"experimental":true,"description":"Microsoft: The associated debugger property id for this object."}]},{"id":"PropertyDescriptor","type":"object","description":"Object property descriptor.","properties":[{"name":"name","type":"string","description":"Property name or symbol description."},{"name":"value","$ref":"RemoteObject","optional":true,"description":"The value associated with the property."},{"name":"writable","type":"boolean","optional":true,"description":"True if the value associated with the property may be changed (data descriptors only)."},{"name":"get","$ref":"RemoteObject","optional":true,"description":"A function which serves as a getter for the property, or undefined if there is no getter (accessor descriptors only)."},{"name":"set","$ref":"RemoteObject","optional":true,"description":"A function which serves as a setter for the property, or undefined if there is no setter (accessor descriptors only)."},{"name":"configurable","type":"boolean","description":"True if the type of this property descriptor may be changed and if the property may be deleted from the corresponding object."},{"name":"enumerable","type":"boolean","description":"True if this property shows up during enumeration of the properties on the corresponding object."},{"name":"wasThrown","type":"boolean","optional":true,"description":"True if the result was thrown during the evaluation."},{"name":"isOwn","optional":true,"type":"boolean","description":"True if the property is owned for the object."},{"name":"msReturnValue","type":"boolean","optional":true,"experimental":true,"description":"Microsoft: True if the property is a return value."},{"name":"symbol","$ref":"RemoteObject","optional":true,"description":"Property symbol object, if the property is of the `symbol` type. "}]},{"id":"CallArgument","type":"object","description":"Represents function call argument. Either remote object id objectId, primitive value, unserializable primitive value or neither of (for undefined) them should be specified.","properties":[{"name":"value","type":"any","optional":true,"description":"Primitive value or serializable javascript object."},{"name":"unserializableValue","$ref":"UnserializableValue","optional":true,"description":"Primitive value which can not be JSON-stringified."},{"name":"objectId","$ref":"RemoteObjectId","optional":true,"description":"Remote object handle."}]},{"id":"ExecutionContextId","type":"integer","description":"Id of an execution context."},{"properties":[{"$ref":"ExecutionContextId","name":"id","description":"Unique id of the execution context. It can be used to specify in which execution context\nscript evaluation should be performed."},{"type":"string","name":"origin","description":"Execution context origin."},{"type":"string","name":"name","description":"Human readable name describing given context."}],"type":"object","id":"ExecutionContextDescription","description":"Description of an isolated world."},{"id":"ExceptionDetails","type":"object","description":"Detailed information about exception (or error) that was thrown during script compilation or execution.","properties":[{"name":"exceptionId","type":"integer","description":"Exception id."},{"name":"text","type":"string","description":"Exception text, which should be used together with exception object when available."},{"name":"lineNumber","type":"integer","description":"Line number of the exception location (0-based)."},{"name":"columnNumber","type":"integer","description":"Column number of the exception location (0-based)."},{"name":"scriptId","$ref":"ScriptId","optional":true,"description":"Script ID of the exception location."},{"name":"url","type":"string","optional":true,"description":"URL of the exception location, to be used when the script was not reported."},{"name":"stackTrace","$ref":"StackTrace","optional":true,"description":"JavaScript stack trace if available."},{"name":"exception","$ref":"RemoteObject","optional":true,"description":"Exception object if available."},{"name":"executionContextId","$ref":"ExecutionContextId","optional":true,"description":"Identifier of the context where exception happened."}]},{"id":"Timestamp","type":"integer","description":"Number of milliseconds since epoch."},{"id":"CallFrame","type":"object","description":"Stack entry for runtime errors and assertions.","properties":[{"name":"functionName","type":"string","description":"JavaScript function name."},{"name":"scriptId","$ref":"ScriptId","description":"JavaScript script id. ScriptId will be empty if debugger is not enabled."},{"name":"url","type":"string","description":"JavaScript script name or url."},{"name":"lineNumber","type":"integer","description":"JavaScript script line number (0-based)."},{"name":"columnNumber","type":"integer","description":"JavaScript script column number (0-based)."}]},{"id":"StackTrace","type":"object","description":"Call frames for assertions or error messages.","properties":[{"name":"description","type":"string","optional":true,"description":"String label of this stack trace. For async traces this may be a name of the function that initiated the async call."},{"name":"callFrames","type":"array","items":{"$ref":"CallFrame"},"description":"JavaScript function name."},{"name":"parent","$ref":"StackTrace","optional":true,"description":"Asynchronous JavaScript stack trace that preceded this stack, if available."}]}],"commands":[{"name":"enable","description":"Enables reporting of the executionContextCreated, executionContextDestroyed and executionContextsCleared events. When the reporting gets enabled the executionContextCreated event will be sent immediately for each existing execution context."},{"name":"disable","description":"Disables reporting of the executionContextCreated, executionContextDestroyed and executionContextsCleared events."},{"name":"evaluate","parameters":[{"name":"expression","type":"string","description":"Expression to evaluate."},{"name":"includeCommandLineAPI","type":"boolean","optional":true,"description":"Determines whether Command Line API should be available during the evaluation."},{"name":"objectGroup","type":"string","optional":true,"description":"Symbolic group name that can be used to release multiple objects."},{"name":"silent","type":"boolean","optional":true,"description":"In silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException state."},{"name":"contextId","$ref":"ExecutionContextId","optional":true,"description":"Specifies in which execution context to perform evaluation. If the parameter is omitted the evaluation will be performed in the context of the inspected page."},{"name":"returnByValue","type":"boolean","optional":true,"description":"Whether the result is expected to be a JSON object that should be sent by value."},{"name":"awaitPromise","type":"boolean","optional":true,"description":"Whether execution should await for resulting value and return once awaited promise is resolved."}],"returns":[{"name":"result","$ref":"RemoteObject","description":"Evaluation result."}],"description":"Evaluates expression on global object."},{"name":"callFunctionOn","parameters":[{"name":"functionDeclaration","type":"string","description":"Declaration of the function to call."},{"name":"objectId","$ref":"RemoteObjectId","optional":true,"description":"Identifier of the object to call function on. Either objectId or executionContextId should be specified. objectId must be from the Runtime.evaluate() function."},{"name":"arguments","type":"array","items":{"$ref":"CallArgument","description":"Call argument."},"optional":true,"description":"Call arguments. All call arguments must belong to the same JavaScript world as the target object."},{"name":"silent","type":"boolean","optional":true,"description":"In silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException state."},{"name":"returnByValue","type":"boolean","optional":true,"description":"Whether the result is expected to be a JSON object which should be sent by value."},{"name":"awaitPromise","type":"boolean","optional":true,"description":"Whether execution should await for resulting value and return once awaited promise is resolved."},{"$ref":"ExecutionContextId","optional":true,"name":"executionContextId","description":"Specifies execution context which global object will be used to call function on. Either\nexecutionContextId or objectId should be specified."},{"name":"objectGroup","type":"string","optional":true,"description":"Symbolic group name that can be used to release multiple objects. If objectGroup is not specified and objectId is, objectGroup will be inherited from object."}],"returns":[{"name":"result","$ref":"RemoteObject","description":"Call result."}],"description":"Calls function with given declaration on the given object. Object group of the result is inherited from the target object."},{"name":"awaitPromise","parameters":[{"name":"promiseObjectId","$ref":"RemoteObjectId","description":"Identifier of the promise."},{"name":"returnByValue","optional":true,"type":"boolean","description":"Whether the result is expected to be a JSON object that should be sent by value."}],"returns":[{"name":"result","$ref":"RemoteObject","description":"Promise result. Will contain rejected value if promise was rejected."}],"description":"Add handler to promise with given promise object id."},{"name":"getProperties","parameters":[{"name":"objectId","$ref":"RemoteObjectId","description":"Identifier of the object to return properties for. objectId must be from the Debugger.evaluateOnCallFrame() function."},{"name":"ownProperties","optional":true,"type":"boolean","description":"If true, returns properties belonging only to the element itself, not to its prototype chain."},{"name":"accessorPropertiesOnly","optional":true,"type":"boolean","description":"If true, returns accessor properties (with getter/setter) only; internal properties are not returned either.","experimental":true}],"returns":[{"name":"result","type":"array","items":{"$ref":"PropertyDescriptor"},"description":"Object properties."}],"description":"Returns properties of a given object. Object group of the result is inherited from the target object."},{"name":"globalLexicalScopeNames","returns":[{"name":"names","type":"array","items":{"type":"string"}}],"description":"Returns all let, const, and class variables from the console global scope."},{"name":"releaseObject","parameters":[{"name":"objectId","$ref":"RemoteObjectId","description":"Identifier of the object to release. "}],"description":"Releases remote object with given id."},{"name":"releaseObjectGroup","parameters":[{"name":"objectGroup","type":"string","description":"Symbolic object group name. "}],"description":"Releases all remote objects that belong to a given group."},{"name":"discardConsoleEntries","description":"Discards collected exceptions and console API calls."}],"events":[{"name":"executionContextCreated","parameters":[{"$ref":"ExecutionContextDescription","name":"context","description":"A newly created execution context."}],"description":"Issued when new execution context is created."},{"name":"executionContextDestroyed","parameters":[{"$ref":"ExecutionContextId","name":"executionContextId","description":"Id of the destroyed context"}],"description":"Issued when execution context is destroyed."},{"name":"executionContextsCleared","description":"Issued when all executionContexts were cleared in browser"},{"name":"exceptionThrown","description":"Issued when exception was thrown and unhandled.","parameters":[{"name":"timestamp","$ref":"Timestamp","description":"Timestamp of the exception."},{"name":"exceptionDetails","$ref":"ExceptionDetails"}]},{"name":"consoleAPICalled","parameters":[{"name":"type","description":"Type of the call. This includes log, info, warn, error, debug, assert, table, trace, dir, dirxml, clear, select, count, countReset, timeEnd, exception, timeStamp, group, groupCollapsed, groupEnd.","type":"string","enum":["log","info","warning","error","debug","assert","table","trace","dir","dirxml","clear","select","count","countReset","timeEnd","timeStamp","startGroup","startGroupCollapsed","endGroup"]},{"name":"args","description":"Call arguments.","type":"array","items":{"$ref":"RemoteObject"}},{"name":"executionContextId","description":"Identifier of the context where console call was made","$ref":"ExecutionContextId"},{"name":"timestamp","description":"Call timestamp.","$ref":"Timestamp","optional":true},{"name":"stackTrace","description":"Stack trace captured if available","$ref":"StackTrace","optional":true}]}]},{"domain":"Debugger","description":"Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing breakpoints, stepping through execution, exploring stack traces, etc.","dependencies":["Runtime"],"types":[{"id":"BreakpointId","type":"string","description":"Breakpoint identifier."},{"id":"CallFrameId","type":"string","description":"Call frame identifier."},{"id":"Location","type":"object","properties":[{"name":"scriptId","$ref":"Runtime.ScriptId","description":"Script identifier as reported in the Debugger.scriptParsed."},{"name":"lineNumber","type":"integer","description":"Line number in the script (0-based)."},{"name":"columnNumber","type":"integer","optional":true,"description":"Column number in the script (0-based)."},{"name":"msLength","type":"integer","description":"Microsoft: Length of code (i.e. number of characters) at this call frame."}],"description":"Location in the source code."},{"id":"BreakLocation","type":"object","properties":[{"name":"scriptId","$ref":"Runtime.ScriptId","description":"Script identifier as reported in the Debugger.scriptParsed."},{"name":"lineNumber","type":"integer","description":"Line number in the script (0-based)."},{"name":"columnNumber","type":"integer","optional":true,"description":"Column number in the script (0-based)."},{"name":"msLength","type":"integer","description":"Microsoft: Length of code (i.e. number of characters) at this call frame."},{"name":"type","type":"string","optional":true,"description":"Allowed values: debuggerStatement, call, return."}],"description":"Break location in the source code."},{"id":"CallFrame","type":"object","properties":[{"name":"callFrameId","$ref":"CallFrameId","description":"Call frame identifier. This identifier is only valid while the debugger is paused."},{"name":"functionName","type":"string","description":"Name of the JavaScript function called on this call frame."},{"name":"functionLocation","$ref":"Location","optional":true,"experimental":true,"description":"Location in the source code."},{"name":"location","$ref":"Location","description":"Location in the source code."},{"name":"url","type":"string","description":"JavaScript script name or url."},{"name":"scopeChain","type":"array","items":{"$ref":"Scope"},"description":"Scope chain for this call frame."},{"name":"this","$ref":"Runtime.RemoteObject","description":"this object for this call frame."},{"name":"returnValue","$ref":"Runtime.RemoteObject","optional":true,"description":"The value being returned, if the function is at return point."}],"description":"JavaScript call frame. Array of call frames form the call stack."},{"id":"Scope","type":"object","properties":[{"name":"type","type":"string","enum":["global","local","with","closure","catch","block","script","eval","module","return"],"description":"Scope type."},{"name":"object","$ref":"Runtime.RemoteObject","description":"Object representing the scope. For global and with scopes it represents the actual object; for the rest of the scopes, it is artificial transient object enumerating scope variables as its properties."},{"name":"name","type":"string","optional":true},{"name":"startLocation","$ref":"Location","optional":true,"description":"Location in the source code where scope starts"},{"name":"endLocation","$ref":"Location","optional":true,"description":"Location in the source code where scope ends"}],"description":"Scope description."}],"commands":[{"name":"enable","description":"Enables debugger for the given page. Clients should not assume that the debugging has been enabled until the result for this command is received."},{"name":"disable","description":"Disables debugger for given page."},{"name":"getPossibleBreakpoints","parameters":[{"name":"start","$ref":"Location","description":"Start of range to search possible breakpoint locations in."},{"name":"end","$ref":"Location","description":"End of range to search possible breakpoint locations in (excluding). When not specified, end of scripts is used as end of range."}],"returns":[{"name":"locations","$ref":"BreakLocation","description":"List of the possible breakpoint locations."}],"description":"Returns possible locations for breakpoint. scriptId in start and end range locations should be the same."},{"name":"setBreakpointsActive","parameters":[{"name":"active","type":"boolean","description":"New value for breakpoints active state."}],"description":"Activates / deactivates all breakpoints on the page."},{"name":"setBreakpointByUrl","parameters":[{"name":"lineNumber","type":"integer","description":"Line number to set breakpoint at."},{"name":"url","type":"string","optional":true,"description":"URL of the resources to set breakpoint on."},{"name":"urlRegex","type":"string","optional":true,"description":"Regex pattern for the URLs of the resources to set breakpoints on. Either url or urlRegex must be specified."},{"name":"columnNumber","type":"integer","optional":true,"description":"Offset in the line to set breakpoint at."},{"name":"condition","type":"string","optional":true,"description":"Expression to use as a breakpoint condition. When specified, debugger will only stop on the breakpoint if this expression evaluates to true."}],"returns":[{"name":"breakpointId","$ref":"BreakpointId","description":"Id of the created breakpoint for further reference."},{"name":"locations","type":"array","items":{"$ref":"Location"},"description":"List of the locations this breakpoint resolved into upon addition."}],"description":"Sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this command is issued, all existing parsed scripts will have breakpoints resolved and returned in locations property. Further matching script parsing will result in subsequent breakpointResolved events issued. This logical breakpoint will survive page reloads."},{"name":"setBreakpoint","parameters":[{"name":"location","$ref":"Location","description":"Location to set breakpoint in."},{"name":"condition","type":"string","optional":true,"description":"Expression to use as a breakpoint condition. When specified, debugger will only stop on the breakpoint if this expression evaluates to true."}],"returns":[{"name":"breakpointId","$ref":"BreakpointId","description":"Id of the created breakpoint for further reference."},{"name":"actualLocation","$ref":"Location","description":"Location this breakpoint resolved into."}],"description":"Sets JavaScript breakpoint at a given location."},{"name":"removeBreakpoint","parameters":[{"name":"breakpointId","$ref":"BreakpointId"}],"description":"Removes JavaScript breakpoint."},{"name":"stepOver","description":"Steps over the statement."},{"name":"stepInto","description":"Steps into the function call."},{"name":"stepOut","description":"Steps out of the function call."},{"name":"pause","description":"Stops on the next JavaScript statement."},{"name":"resume","description":"Resumes JavaScript execution."},{"name":"getScriptSource","parameters":[{"name":"scriptId","$ref":"Runtime.ScriptId","description":"Id of the script to get source for."}],"returns":[{"name":"scriptSource","type":"string","description":"Script source."}],"description":"Returns source for the script with given id."},{"name":"setPauseOnExceptions","parameters":[{"name":"state","type":"string","enum":["none","uncaught","all"],"description":"Pause on exceptions mode."}],"description":"Defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or no exceptions. Initial pause on exceptions state is none."},{"name":"evaluateOnCallFrame","parameters":[{"name":"callFrameId","$ref":"CallFrameId","description":"Call frame identifier to evaluate on."},{"name":"expression","type":"string","description":"Expression to evaluate."}],"returns":[{"name":"result","$ref":"Runtime.RemoteObject","description":"Object wrapper for the evaluation result."}],"description":"Evaluates expression on a given call frame."},{"name":"setVariableValue","parameters":[{"name":"scopeNumber","type":"integer","description":"0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch' scope types are allowed. Other scopes could be manipulated manually."},{"name":"variableName","type":"string","description":"Variable name."},{"name":"newValue","$ref":"Runtime.CallArgument","description":"New variable value."},{"name":"callFrameId","$ref":"CallFrameId","description":"Id of callframe that holds variable."}],"description":"Changes value of variable in a callframe. Object-based scopes are not supported and must be mutated manually."},{"name":"setBlackboxPatterns","parameters":[{"name":"patterns","type":"array","items":{"type":"string"},"description":"Array of regexps that will be used to check script url for blackbox state."}],"experimental":true,"description":"Replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in scripts with url matching one of the patterns. The debugger will try to leave blackboxed script by performing 'step in' several times, finally resorting to 'step out' if unsuccessful."},{"name":"msSetDebuggerPropertyValue","parameters":[{"name":"debuggerPropertyId","type":"string","description":"Microsoft: The property id (i.e. msDebuggerPropertyId) to set."},{"name":"newValue","type":"string"}],"deprecated":true,"experimental":true,"description":"Microsoft: Sets the specified debugger property to the specified value."}],"events":[{"name":"scriptParsed","parameters":[{"name":"scriptId","$ref":"Runtime.ScriptId","description":"Identifier of the script parsed."},{"name":"url","type":"string","description":"URL or name of the script parsed (if any)."},{"name":"startLine","type":"integer","description":"Line offset of the script within the resource with given URL (for script tags)."},{"name":"startColumn","type":"integer","description":"Column offset of the script within the resource with given URL."},{"name":"endLine","type":"integer","description":"Last line of the script."},{"name":"endColumn","type":"integer","description":"Length of the last line of the script."},{"name":"executionContextId","$ref":"Runtime.ExecutionContextId","description":"Specifies script creation context."},{"name":"sourceMapURL","type":"string","optional":true,"description":"URL of source map associated with script (if any)."},{"name":"length","type":"integer","optional":true,"description":"This script length.","experimental":true},{"name":"msParentId","type":"string","optional":true,"experimental":true,"description":"This is the parent document ID."},{"name":"msMimeType","type":"string","optional":true,"experimental":true,"description":"This is the mime type."},{"name":"msIsDynamicCode","type":"boolean","optional":true,"experimental":true,"description":"This indicates whether it is dynamic code."},{"name":"msLongDocumentId","type":"integer","optional":true,"experimental":true,"description":"This is the long document ID."}],"description":"Fired when the script is parsed. This event is also fired for all known and uncollected scripts upon enabling debugger."},{"name":"breakpointResolved","parameters":[{"name":"breakpointId","$ref":"BreakpointId","description":"Breakpoint unique identifier."},{"name":"location","$ref":"Location","description":"Actual breakpoint location."},{"name":"msLength","type":"integer","optional":true,"experimental":true,"description":"Microsoft: Length of code (i.e. number of characters) at the breakpoint location."}],"description":"Fired when breakpoint is resolved to an actual script and location."},{"name":"paused","parameters":[{"name":"callFrames","type":"array","items":{"$ref":"CallFrame"},"description":"Call stack the debugger stopped on."},{"name":"reason","type":"string","enum":["breakpoint","step","exception","other","EventListener"],"description":"Pause reason."},{"name":"data","type":"object","optional":true,"description":"Object containing break-specific auxiliary properties."},{"name":"hitBreakpoints","type":"array","optional":true,"items":{"type":"string"},"description":"Hit breakpoints IDs"},{"name":"asyncStackTrace","$ref":"StackTrace","optional":true,"description":"JavaScript async stack trace."}],"description":"Fired when the debuggers breaks for a breakpoint or exception."},{"name":"resumed","description":"Fired when the debugger resumes execution."}]}]} var k=this;function l(a){return void 0!==a}function n(a){return"string"==typeof a} function aa(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null"; else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function ba(a,b,c){return a.call.apply(a.bind,arguments)}function ca(a,b,c){if(!a)throw Error();if(2b?null:n(a)?a.charAt(b):a[b]}function na(a){return Array.prototype.concat.apply([],arguments)}function oa(a,b,c){return 2>=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};function t(a,b){this.x=l(a)?a:0;this.y=l(b)?b:0}t.prototype.toString=function(){return"("+this.x+", "+this.y+")"};t.prototype.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};t.prototype.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};t.prototype.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};function pa(a,b,c,d){this.c=a;this.a=b;this.b=c;this.f=d}pa.prototype.toString=function(){return"("+this.c+"t, "+this.a+"r, "+this.b+"b, "+this.f+"l)"};pa.prototype.ceil=function(){this.c=Math.ceil(this.c);this.a=Math.ceil(this.a);this.b=Math.ceil(this.b);this.f=Math.ceil(this.f);return this};pa.prototype.floor=function(){this.c=Math.floor(this.c);this.a=Math.floor(this.a);this.b=Math.floor(this.b);this.f=Math.floor(this.f);return this}; pa.prototype.round=function(){this.c=Math.round(this.c);this.a=Math.round(this.a);this.b=Math.round(this.b);this.f=Math.round(this.f);return this};function qa(a){var b=a.length-1;return 0<=b&&a.indexOf(" ",b)==b}var ra=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]};function sa(a,b){return ab?1:0}function ta(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var v;a:{var ua=k.navigator;if(ua){var va=ua.userAgent;if(va){v=va;break a}}v=""}function w(a){return-1!=v.indexOf(a)};function wa(){return w("iPhone")&&!w("iPod")&&!w("iPad")};function xa(){return(w("Chrome")||w("CriOS"))&&!w("Edge")};function ya(a,b){var c=za;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)};var Aa=w("Opera"),x=w("Trident")||w("MSIE"),Ba=w("Edge"),Ca=w("Gecko")&&!(-1!=v.toLowerCase().indexOf("webkit")&&!w("Edge"))&&!(w("Trident")||w("MSIE"))&&!w("Edge"),Da=-1!=v.toLowerCase().indexOf("webkit")&&!w("Edge");function Ea(){var a=k.document;return a?a.documentMode:void 0}var Fa; a:{var Ga="",Ha=function(){var a=v;if(Ca)return/rv:([^\);]+)(\)|;)/.exec(a);if(Ba)return/Edge\/([\d\.]+)/.exec(a);if(x)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(Da)return/WebKit\/(\S+)/.exec(a);if(Aa)return/(?:Version)[ \/]?(\S+)/.exec(a)}();Ha&&(Ga=Ha?Ha[1]:"");if(x){var Ia=Ea();if(null!=Ia&&Ia>parseFloat(Ga)){Fa=String(Ia);break a}}Fa=Ga}var za={}; function Ja(a){return ya(a,function(){for(var b=0,c=ra(String(Fa)).split("."),d=ra(String(a)).split("."),e=Math.max(c.length,d.length),f=0;0==b&&fb||a.indexOf("Error",b)!=b)a+="Error";this.name=a;a=Error(this.message);a.name=this.name;this.stack=a.stack||""}q(Va,Error);var Wa="unknown error",z={15:"element not selectable",11:"element not visible"};z[31]=Wa;z[30]=Wa;z[24]="invalid cookie domain";z[29]="invalid element coordinates";z[12]="invalid element state"; z[32]="invalid selector";z[51]="invalid selector";z[52]="invalid selector";z[17]="javascript error";z[405]="unsupported operation";z[34]="move target out of bounds";z[27]="no such alert";z[7]="no such element";z[8]="no such frame";z[23]="no such window";z[28]="script timeout";z[33]="session not created";z[10]="stale element reference";z[21]="timeout";z[25]="unable to set cookie";z[26]="unexpected alert open";z[13]=Wa;z[9]="unknown command";Va.prototype.toString=function(){return this.name+": "+this.message};var Xa=w("Firefox"),Ya=wa()||w("iPod"),Za=w("iPad"),$a=w("Android")&&!(xa()||w("Firefox")||w("Opera")||w("Silk")),ab=xa(),bb=w("Safari")&&!(xa()||w("Coast")||w("Opera")||w("Edge")||w("Silk")||w("Android"))&&!(wa()||w("iPad")||w("iPod"));function cb(a){return(a=a.exec(v))?a[1]:""}(function(){if(Xa)return cb(/Firefox\/([0-9.]+)/);if(x||Ba||Aa)return Fa;if(ab)return wa()||w("iPad")||w("iPod")?cb(/CriOS\/([0-9.]+)/):cb(/Chrome\/([0-9.]+)/);if(bb&&!(wa()||w("iPad")||w("iPod")))return cb(/Version\/([0-9.]+)/);if(Ya||Za){var a=/Version\/(\S+).*Mobile\/(\S+)/.exec(v);if(a)return a[1]+"."+a[2]}else if($a)return(a=cb(/Android\s+([0-9.]+)/))?a:cb(/Version\/([0-9.]+)/);return""})();var db,eb=function(){if(!Ca)return!1;var a=k.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(e){return!1}var b=a.classes;a=a.interfaces;var c=b["@mozilla.org/xpcom/version-comparator;1"].getService(a.nsIVersionComparator),d=b["@mozilla.org/xre/app-info;1"].getService(a.nsIXULAppInfo).version;db=function(a){c.compare(d,""+a)};return!0}();$a&&eb&&db(2.3);$a&&eb&&db(4);bb&&eb&&db(6);function A(a,b){b&&"string"!==typeof b&&(b=b.toString());return!!a&&1==a.nodeType&&(!b||a.tagName.toUpperCase()==b)}; var B=x&&!(9<=Number(Ka)),fb=x&&!(8<=Number(Ka));function gb(a,b,c,d){this.a=a;this.nodeName=c;this.nodeValue=d;this.nodeType=2;this.parentNode=this.ownerElement=b}function hb(a,b){var c=fb&&"href"==b.nodeName?a.getAttribute(b.nodeName,2):b.nodeValue;return new gb(b,a,b.nodeName,c)};function D(a){var b=null,c=a.nodeType;1==c&&(b=a.textContent,b=void 0==b||null==b?a.innerText:b,b=void 0==b||null==b?"":b);if("string"!=typeof b)if(B&&"title"==a.nodeName.toLowerCase()&&1==c)b=a.text;else if(9==c||1==c){a=9==c?a.documentElement:a.firstChild;c=0;var d=[];for(b="";a;){do 1!=a.nodeType&&(b+=a.nodeValue),B&&"title"==a.nodeName.toLowerCase()&&(b+=a.text),d[c++]=a;while(a=a.firstChild);for(;c&&!(a=d[--c].nextSibling););}}else b=a.nodeValue;return b} function E(a,b,c){if(null===b)return!0;try{if(!a.getAttribute)return!1}catch(d){return!1}fb&&"class"==b&&(b="className");return null==c?!!a.getAttribute(b):a.getAttribute(b,2)==c}function ib(a,b,c,d,e){return(B?jb:kb).call(null,a,b,n(c)?c:null,n(d)?d:null,e||new F)} function jb(a,b,c,d,e){if(a instanceof lb||8==a.b||c&&null===a.b){var f=b.all;if(!f)return e;a=mb(a);if("*"!=a&&(f=b.getElementsByTagName(a),!f))return e;if(c){for(var g=[],h=0;b=f[h++];)E(b,c,d)&&g.push(b);f=g}for(h=0;b=f[h++];)"*"==a&&"!"==b.tagName||e.add(b);return e}nb(a,b,c,d,e);return e} function kb(a,b,c,d,e){b.getElementsByName&&d&&"name"==c&&!x?(b=b.getElementsByName(d),r(b,function(b){a.a(b)&&e.add(b)})):b.getElementsByClassName&&d&&"class"==c?(b=b.getElementsByClassName(d),r(b,function(b){b.className==d&&a.a(b)&&e.add(b)})):a instanceof G?nb(a,b,c,d,e):b.getElementsByTagName&&(b=b.getElementsByTagName(a.f()),r(b,function(a){E(a,c,d)&&e.add(a)}));return e} function ob(a,b,c,d,e){var f;if((a instanceof lb||8==a.b||c&&null===a.b)&&(f=b.childNodes)){var g=mb(a);if("*"!=g&&(f=ha(f,function(a){return a.tagName&&a.tagName.toLowerCase()==g}),!f))return e;c&&(f=ha(f,function(a){return E(a,c,d)}));r(f,function(a){"*"==g&&("!"==a.tagName||"*"==g&&1!=a.nodeType)||e.add(a)});return e}return pb(a,b,c,d,e)}function pb(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)E(b,c,d)&&a.a(b)&&e.add(b);return e} function nb(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)E(b,c,d)&&a.a(b)&&e.add(b),nb(a,b,c,d,e)}function mb(a){if(a instanceof G){if(8==a.b)return"!";if(null===a.b)return"*"}return a.f()};function F(){this.b=this.a=null;this.l=0}function qb(a){this.f=a;this.a=this.b=null}function rb(a,b){if(!a.a)return b;if(!b.a)return a;var c=a.a;b=b.a;for(var d=null,e,f=0;c&&b;){e=c.f;var g=b.f;e==g||e instanceof gb&&g instanceof gb&&e.a==g.a?(e=c,c=c.a,b=b.a):0",4,2,function(a,b,c){return Wb(function(a,b){return a>b},a,b,c)});R("<=",4,2,function(a,b,c){return Wb(function(a,b){return a<=b},a,b,c)});R(">=",4,2,function(a,b,c){return Wb(function(a,b){return a>=b},a,b,c)});var Vb=R("=",3,2,function(a,b,c){return Wb(function(a,b){return a==b},a,b,c,!0)});R("!=",3,2,function(a,b,c){return Wb(function(a,b){return a!=b},a,b,c,!0)});R("and",2,2,function(a,b,c){return Cb(a,c)&&Cb(b,c)});R("or",1,2,function(a,b,c){return Cb(a,c)||Cb(b,c)});function Zb(a){J.call(this,1);this.c=a;this.g=a.g;this.b=a.b}q(Zb,J);Zb.prototype.a=function(a){return-M(this.c,a)};Zb.prototype.toString=function(){return"Unary Expression: -"+K(this.c)};function $b(a){J.call(this,3);this.c=a.substring(1,a.length-1)}q($b,J);$b.prototype.a=function(){return this.c};$b.prototype.toString=function(){return"Literal: "+this.c};function ac(a){J.call(this,1);this.c=a}q(ac,J);ac.prototype.a=function(){return this.c};ac.prototype.toString=function(){return"Number: "+this.c};function lb(a,b){this.j=a.toLowerCase();a="*"==this.j?"*":"http://www.w3.org/1999/xhtml";this.c=b?b.toLowerCase():a}lb.prototype.a=function(a){var b=a.nodeType;if(1!=b&&2!=b)return!1;b=l(a.localName)?a.localName:a.nodeName;return"*"!=this.j&&this.j!=b.toLowerCase()?!1:"*"==this.c?!0:this.c==(a.namespaceURI?a.namespaceURI.toLowerCase():"http://www.w3.org/1999/xhtml")};lb.prototype.f=function(){return this.j}; lb.prototype.toString=function(){return"Name Test: "+("http://www.w3.org/1999/xhtml"==this.c?"":this.c+":")+this.j};function bc(a,b){if(b.lengtha.A)throw Error("Function "+a.j+" expects at most "+a.A+" arguments, "+b.length+" given");a.G&&r(b,function(b,d){if(4!=b.i)throw Error("Argument "+d+" to function "+a.j+" is not of type Nodeset: "+b);});J.call(this,a.i);this.v=a;this.c=b;Ab(this,a.g||ka(b,function(a){return a.g}));Bb(this,a.F&&!b.length||a.D&&!!b.length||ka(b,function(a){return a.b}))} q(bc,J);bc.prototype.a=function(a){return this.v.m.apply(null,na(a,this.c))};bc.prototype.toString=function(){var a="Function: "+this.v;if(this.c.length){var b=ja(this.c,function(a,b){return a+K(b)},"Arguments:");a+=K(b)}return a};function cc(a,b,c,d,e,f,g,h){this.j=a;this.i=b;this.g=c;this.F=d;this.D=!1;this.m=e;this.B=f;this.A=l(g)?g:f;this.G=!!h}cc.prototype.toString=function(){return this.j};var dc={}; function S(a,b,c,d,e,f,g,h){if(dc.hasOwnProperty(a))throw Error("Function already created: "+a+".");dc[a]=new cc(a,b,c,d,e,f,g,h)}S("boolean",2,!1,!1,function(a,b){return Cb(b,a)},1);S("ceiling",1,!1,!1,function(a,b){return Math.ceil(M(b,a))},1);S("concat",3,!1,!1,function(a,b){return ja(oa(arguments,1),function(b,d){return b+N(d,a)},"")},2,null);S("contains",2,!1,!1,function(a,b,c){b=N(b,a);a=N(c,a);return-1!=b.indexOf(a)},2);S("count",1,!1,!1,function(a,b){return b.a(a).l},1,1,!0); S("false",2,!1,!1,function(){return!1},0);S("floor",1,!1,!1,function(a,b){return Math.floor(M(b,a))},1);S("id",4,!1,!1,function(a,b){function c(a){if(B){var b=e.all[a];if(b){if(b.nodeType&&a==b.id)return b;if(b.length)return ma(b,function(b){return a==b.id})}return null}return e.getElementById(a)}var d=a.a,e=9==d.nodeType?d:d.ownerDocument;a=N(b,a).split(/\s+/);var f=[];r(a,function(a){a=c(a);!a||0<=fa(f,a)||f.push(a)});f.sort(Pa);var g=new F;r(f,function(a){g.add(a)});return g},1); S("lang",2,!1,!1,function(){return!1},1);S("last",1,!0,!1,function(a){if(1!=arguments.length)throw Error("Function last expects ()");return a.f},0);S("local-name",3,!1,!0,function(a,b){return(a=b?tb(b.a(a)):a.a)?a.localName||a.nodeName.toLowerCase():""},0,1,!0);S("name",3,!1,!0,function(a,b){return(a=b?tb(b.a(a)):a.a)?a.nodeName.toLowerCase():""},0,1,!0);S("namespace-uri",3,!0,!1,function(){return""},0,1,!0); S("normalize-space",3,!1,!0,function(a,b){return(b?N(b,a):D(a.a)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1);S("not",2,!1,!1,function(a,b){return!Cb(b,a)},1);S("number",1,!1,!0,function(a,b){return b?M(b,a):+D(a.a)},0,1);S("position",1,!0,!1,function(a){return a.b},0);S("round",1,!1,!1,function(a,b){return Math.round(M(b,a))},1);S("starts-with",2,!1,!1,function(a,b,c){b=N(b,a);a=N(c,a);return 0==b.lastIndexOf(a,0)},2);S("string",3,!1,!0,function(a,b){return b?N(b,a):D(a.a)},0,1); S("string-length",1,!1,!0,function(a,b){return(b?N(b,a):D(a.a)).length},0,1);S("substring",3,!1,!1,function(a,b,c,d){c=M(c,a);if(isNaN(c)||Infinity==c||-Infinity==c)return"";d=d?M(d,a):Infinity;if(isNaN(d)||-Infinity===d)return"";c=Math.round(c)-1;var e=Math.max(c,0);a=N(b,a);return Infinity==d?a.substring(e):a.substring(e,c+Math.round(d))},2,3);S("substring-after",3,!1,!1,function(a,b,c){b=N(b,a);a=N(c,a);c=b.indexOf(a);return-1==c?"":b.substring(c+a.length)},2); S("substring-before",3,!1,!1,function(a,b,c){b=N(b,a);a=N(c,a);a=b.indexOf(a);return-1==a?"":b.substring(0,a)},2);S("sum",1,!1,!1,function(a,b){a=H(b.a(a));b=0;for(var c=I(a);c;c=I(a))b+=+D(c);return b},1,1,!0);S("translate",3,!1,!1,function(a,b,c,d){b=N(b,a);c=N(c,a);var e=N(d,a);a={};for(d=0;da.length)throw Error("Unclosed literal string");return new $b(a)} function mc(a){var b=[];if(Ib(V(a.a))){var c=U(a.a);var d=V(a.a);if("/"==c&&(ic(a.a)||"."!=d&&".."!=d&&"@"!=d&&"*"!=d&&!/(?![0-9])[\w]/.test(d)))return new Gb;d=new Gb;T(a,"Missing next location step.");c=nc(a,c);b.push(c)}else{a:{c=V(a.a);d=c.charAt(0);switch(d){case "$":throw Error("Variable reference not allowed in HTML XPath");case "(":U(a.a);c=gc(a);T(a,'unclosed "("');jc(a,")");break;case '"':case "'":c=lc(a);break;default:if(isNaN(+c))if(!Lb(c)&&/(?![0-9])[\w]/.test(d)&&"("==V(a.a,1)){c=U(a.a); c=dc[c]||null;U(a.a);for(d=[];")"!=V(a.a);){T(a,"Missing function argument list.");d.push(gc(a));if(","!=V(a.a))break;U(a.a)}T(a,"Unclosed function argument list.");kc(a);c=new bc(c,d)}else{c=null;break a}else c=new ac(+U(a.a))}"["==V(a.a)&&(d=new Mb(oc(a)),c=new ec(c,d))}if(c)if(Ib(V(a.a)))d=c;else return c;else c=nc(a,"/"),d=new Hb,b.push(c)}for(;Ib(V(a.a));)c=U(a.a),T(a,"Missing next location step."),c=nc(a,c),b.push(c);return new Eb(d,b)} function nc(a,b){if("/"!=b&&"//"!=b)throw Error('Step op should be "/" or "//"');if("."==V(a.a)){var c=new O(Tb,new G("node"));U(a.a);return c}if(".."==V(a.a))return c=new O(Sb,new G("node")),U(a.a),c;if("@"==V(a.a)){var d=Fb;U(a.a);T(a,"Missing attribute name")}else if("::"==V(a.a,1)){if(!/(?![0-9])[\w]/.test(V(a.a).charAt(0)))throw Error("Bad token: "+U(a.a));var e=U(a.a);d=Rb[e]||null;if(!d)throw Error("No axis with name: "+e);U(a.a);T(a,"Missing node name")}else d=Ob;e=V(a.a);if(/(?![0-9])[\w\*]/.test(e.charAt(0)))if("("== V(a.a,1)){if(!Lb(e))throw Error("Invalid node type: "+e);e=U(a.a);if(!Lb(e))throw Error("Invalid type name: "+e);jc(a,"(");T(a,"Bad nodetype");var f=V(a.a).charAt(0),g=null;if('"'==f||"'"==f)g=lc(a);T(a,"Bad nodetype");kc(a);e=new G(e,g)}else if(e=U(a.a),f=e.indexOf(":"),-1==f)e=new lb(e);else{g=e.substring(0,f);if("*"==g)var h="*";else if(h=a.b(g),!h)throw Error("Namespace prefix not declared: "+g);e=e.substr(f+1);e=new lb(e,h)}else throw Error("Bad token: "+U(a.a));a=new Mb(oc(a),d.s);return c|| new O(d,e,a,"//"==b)}function oc(a){for(var b=[];"["==V(a.a);){U(a.a);T(a,"Missing predicate expression.");var c=gc(a);b.push(c);T(a,"Unclosed predicate expression.");jc(a,"]")}return b}function hc(a){if("-"==V(a.a))return U(a.a),new Zb(hc(a));var b=mc(a);if("|"!=V(a.a))a=b;else{for(b=[b];"|"==U(a.a);)T(a,"Missing next union location path."),b.push(mc(a));a.a.a--;a=new Db(b)}return a};function pc(a){this.b=a;this.a=0}function qc(a){a=a.match(rc);for(var b=0;b]=|\s+|./g,sc=/^\s/;function V(a,b){return a.b[a.a+(b||0)]}function U(a){return a.b[a.a++]}function ic(a){return a.b.length<=a.a};function tc(a,b){if(!a.length)throw Error("Empty XPath expression.");a=qc(a);if(ic(a))throw Error("Invalid XPath expression.");b?"function"==aa(b)||(b=da(b.lookupNamespaceURI,b)):b=function(){return null};var c=gc(new fc(a,b));if(!ic(a))throw Error("Bad token: "+U(a));this.evaluate=function(a,b){a=c.a(new zb(a));return new W(a,b)}} function W(a,b){if(0==b)if(a instanceof F)b=4;else if("string"==typeof a)b=2;else if("number"==typeof a)b=1;else if("boolean"==typeof a)b=3;else throw Error("Unexpected evaluation result.");if(2!=b&&1!=b&&3!=b&&!(a instanceof F))throw Error("value could not be converted to the specified type");this.resultType=b;switch(b){case 2:this.stringValue=a instanceof F?ub(a):""+a;break;case 1:this.numberValue=a instanceof F?+ub(a):+a;break;case 3:this.booleanValue=a instanceof F?0=d.length?null:d[f++]};this.snapshotItem=function(a){if(6!=b&&7!=b)throw Error("snapshotItem called with wrong result type");return a>=d.length|| 0>a?null:d[a]}}W.ANY_TYPE=0;W.NUMBER_TYPE=1;W.STRING_TYPE=2;W.BOOLEAN_TYPE=3;W.UNORDERED_NODE_ITERATOR_TYPE=4;W.ORDERED_NODE_ITERATOR_TYPE=5;W.UNORDERED_NODE_SNAPSHOT_TYPE=6;W.ORDERED_NODE_SNAPSHOT_TYPE=7;W.ANY_UNORDERED_NODE_TYPE=8;W.FIRST_ORDERED_NODE_TYPE=9;function uc(a){this.lookupNamespaceURI=wb(a)} function vc(a,b){a=a||k;var c=a.Document&&a.Document.prototype||a.document;if(!c.evaluate||b)a.XPathResult=W,c.evaluate=function(a,b,c,g){return(new tc(a,c)).evaluate(b,g)},c.createExpression=function(a,b){return new tc(a,b)},c.createNSResolver=function(a){return new uc(a)}}var wc=["wgxpath","install"],X=k;wc[0]in X||"undefined"==typeof X.execScript||X.execScript("var "+wc[0]);for(var xc;wc.length&&(xc=wc.shift());)!wc.length&&l(vc)?X[xc]=vc:X[xc]&&X[xc]!==Object.prototype[xc]?X=X[xc]:X=X[xc]={};var yc=function(){var a={L:"http://www.w3.org/2000/svg"};return function(b){return a[b]||null}}(); function zc(a,b){var c=Sa(a);if(!c.documentElement)return null;(x||$a)&&vc(c?c.parentWindow||c.defaultView:window);try{var d=c.createNSResolver?c.createNSResolver(c.documentElement):yc;if(x&&!Ja(7))return c.evaluate.call(c,b,a,d,9,null);if(!x||9<=Number(Ka)){for(var e={},f=c.getElementsByTagName("*"),g=0;g=b&&0<=c&&255>=c&&0<=d&&255>=d&&0<=e&&1>=e)){b=[b,c,d,e];break b}b=null}if(!b)b:{if(d=a.match(Gc))if(b= Number(d[1]),c=Number(d[2]),d=Number(d[3]),0<=b&&255>=b&&0<=c&&255>=c&&0<=d&&255>=d){b=[b,c,d,1];break b}b=null}if(!b)b:{b=a.toLowerCase();c=Bc[b.toLowerCase()];if(!c&&(c="#"==b.charAt(0)?b:"#"+b,4==c.length&&(c=c.replace(Dc,"#$1$1$2$2$3$3")),!Ec.test(c))){b=null;break b}b=[parseInt(c.substr(1,2),16),parseInt(c.substr(3,2),16),parseInt(c.substr(5,2),16),1]}a=b?"rgba("+b.join(", ")+")":a}return a} function Ic(a,b){var c=a.currentStyle||a.style,d=c[b];!l(d)&&"function"==aa(c.getPropertyValue)&&(d=c.getPropertyValue(b));return"inherit"!=d?l(d)?d:null:(a=Hc(a))?Ic(a,b):null} function Jc(a,b,c){function d(a){var b=Kc(a);return 0=C.a+C.width;C=e.c>=C.b+C.height;if(L&&"hidden"==m.x||C&&"hidden"==m.y)return Z;if(L&&"visible"!=m.x||C&&"visible"!=m.y){if(u&&(m=d(a),e.f>=g.scrollWidth-m.x||e.a>=g.scrollHeight-m.y))return Z;e=Lc(a);return e==Z?Z:"scroll"}}}return"none"} function Kc(a){var b=Mc(a);if(b)return b.rect;if(A(a,"HTML"))return a=Sa(a),a=((a?a.parentWindow||a.defaultView:window)||window).document,a="CSS1Compat"==a.compatMode?a.documentElement:a.body,a=new Ma(a.clientWidth,a.clientHeight),new y(0,0,a.width,a.height);try{var c=a.getBoundingClientRect()}catch(d){return new y(0,0,0,0)}return new y(c.left,c.top,c.right-c.left,c.bottom-c.top)} function Mc(a){var b=A(a,"MAP");if(!b&&!A(a,"AREA"))return null;var c=b?a:A(a.parentNode,"MAP")?a.parentNode:null,d=null,e=null;c&&c.name&&(d=Ac('/descendant::*[@usemap = "#'+c.name+'"]',Sa(c)))&&(e=Kc(d),b||"default"==a.shape.toLowerCase()||(a=Qc(a),b=Math.min(Math.max(a.a,0),e.width),c=Math.min(Math.max(a.b,0),e.height),e=new y(b+e.a,c+e.b,Math.min(a.width,e.width-b),Math.min(a.height,e.height-c))));return{image:d,rect:e||new y(0,0,0,0)}} function Qc(a){var b=a.shape.toLowerCase();a=a.coords.split(",");if("rect"==b&&4==a.length){b=a[0];var c=a[1];return new y(b,c,a[2]-b,a[3]-c)}if("circle"==b&&3==a.length)return b=a[2],new y(a[0]-b,a[1]-b,2*b,2*b);if("poly"==b&&2|<<88<<>|????? @4( @7wg? @4( @@  @?? @4( @@@@@4XTTRrTT4X@@@@????'#!#'???? @4( @A)Q91axp !   ????? @4( @ @( @ 00000000001000000000077007M00700000000M0000,000000077777777777    ``?? @ ( @ 00000000000000000000000000000000000000000000000000000000000000000000000000000 @  ( @ 1777M7M77777070700000707077?????c? @  ( @ 1777M7M77777777777????? @  (@0bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbᇇFFFFFFbbbbbbXXX000bbbxxxxxxbbb000XXXbbbbbb yyyyyy ???bbb??????bbbVVVVVV@@@ ===777 XXX XXXxxxrrrFFF//////GGG```aaaxxxyyyxxxxxx```aaaGGG//////GGGxxxrrrZZZ XXX ====== VVVVVV====== wwwwww YYY...aaawwwwwwaaa...YYYᇇFFF (((GGG?8????????????( @ bZk444<<<k+++333k++++++ck++++++koon++++++kf444 444++++++kg000LLLMMM+++k///onMMMMMMn888888 888888mKKKMMMm000///f000LLLLLL000gf888 888fnn?@,2 @  (@0bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbᇇFFFFFFbbbbbbXXX000bbbxxxxxxbbb000XXXbbbbbb yyyyyy ???bbb??????bbbVVVVVV@@@ ===777 XXX XXXxxxrrrFFF//////GGG```aaaxxxyyyxxxxxx```aaaGGG//////GGGxxxrrrZZZ XXX ====== VVVVVV====== wwwwww YYY...aaawwwwwwaaa...YYYᇇFFF (((GGG?8????????????( @ bZk444<<<k+++333k++++++ck++++++koon++++++kf444 444++++++kg000LLLMMM+++k///onMMMMMMn888888 888888mKKKMMMm000///f000LLLLLL000gf888 888fnn?@,2 @ (@0'''''''''''')aSQ࿹}{@0-''''l_]G85'''9(&(''QB@,'']PM(''E63xv''/@1.'''''xv5$!''\NLwlj''@0-''/''(''''oca''VGE''B20/''shf''')A1/''''xmk(''''9(&~|3"''''''''''''''*,'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''QB@RDA'''''''''''QC@RDA''''''''''QC@QC@'''''''''''QC@QC@''''''?? `( @ '''''''N'|6&#i]Z''A'UGD/'>'pTFC''60_RO'B'''xmk''zRDA''W;+(''9(&''*'''^*1 '''''' '½''/A1/*''''''''''''''''''''''''''''''1 0'h''''' ' 'c))''''''''''S'S'''E????????????????@,2 @ (@0'''''''''''')aSQ࿹}{@0-''''l_]G85'''9(&(''QB@,'']PM(''E63xv''/@1.'''''xv5$!''\NLwlj''@0-''/''(''''oca''VGE''B20/''shf''')A1/''''xmk(''''9(&~|3"''''''''''''''*,''''''''''''''''''''''''''QB@RDA'''''''''''''''QC@RDA''QC@QC@''''''''''''''QC@QC@''''''?? `( @ '''''''N'|6&#i]Z''A'UGD/'>'pTFC''60_RO'B'''xmk''zRDA''W;+(''9(&''*'''^*1 '''''' '½''/A1/*''''''''''I:7I:7'}'''''('('L(''''''S''S'''E????????????@,2 @ ( @@  @@  @??? @4( @@@@  @??? @4 ( @@ b  b @?  ? @4( @ @@ sa@@as @4 ( @? $DB$B$ Ã @4 ( @@@@ @@@AB0DHHP`H0? @4 ( @$ BB$$D ?Ã @4( @0$(B$B"$! @   ?ǁÁ? @4( @0 P @ H((H @ P 0 ?p 0 0p? @4( @@  @@  @@  @???? @4( @@  ?@@@A BBD"D"BBA @@@?  @?????>|<<88<<>|????? @44VS_VERSION_INFO |O |O?StringFileInfo040904B0LCompanyNameMicrosoft Corporation`FileDescriptionMicrosoft Edge Web Platformp(FileVersion11.00.20348.4893 (WinBuild.160101.0800)2 InternalNameEDGEHTML.LegalCopyright Microsoft Corporation. All rights reserved.B OriginalFilenameEDGEHTML.DLLXProductNameMicrosoft Edge Web PlatformFProductVersion11.00.20348.4893(OleSelfRegisterDVarFileInfo$Translation 09-1X[i7RUw