HEX
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1j PHP/8.4.25
System: Windows NT DESKTOP-4TAV2RJ 10.0 build 19045 (Windows 10) AMD64
User: fred (0)
PHP: 8.4.25
Disabled: NONE
Upload Files
File: C:/Windows/System32/zh-TW/edgehtml.dll.mui
MZ����@���	�!�L�!This program cannot be run in DOS mode.

$5�<�q�R�q�R�q�R�e���p�R�e�P�p�R�Richq�R�PEL�!n

�Y@ l8.rdata�@@.rsrcp l@@/\�C
T88/\�C$��8.rdata8x.rdata$zzzdbg �9.rsrc$01�Y�.rsrc$02 )�|�PRI͈���8�ր6㣲�Я�2�/\�C�.�H�`���	�������`��.�x�������1��3��5��6	�8 	�98	�:P	�?h	�@�	�A�	�B�	�_�	�`�	���	��
��(
��@
��X
��p
���
���
���
���
�&�
�:�L�U0��H��`��x��������������� �8�P�h�3��r�����(��)��*���
��(
��@
��X
��p
���
���
���
���
���
������0�H�`�x������������ �8�P�h�����!��1��4��5��6�7(�8@�9X�;p�A��Q��R��V��W��a�b�g0�hH�i`�mx�q��r��t����������� ��8��P��h����������������-��Q�R(�S@�qX�
p�
��
��
��
��
��
�
�
0�!
H�"
`�&
x�'
��(
��)
��q
���
���
��
 ��
8��
P��
h��
���
���
���
���
���
���
��
(��
@��
X��
p�������!��1��A�Q�R0�H�`�	(x�)��*��+��,��.��0�2 �48�P�h�I�.����.���/���:/���b/����/����/���/�(��/�@��/�X�0�p�60���J0���f0����0����0����0���0��1�0�61�H�V1�`��1�x��1����1����1��� 2���H2���Z2��t2� ��2�8��2�P��2�h�3���*3���H3���v3����3����3����3��4�(�.4�@�R4�X�x4�p��4����4����4����4���
5���(5��D5��p5�0��5�H��5�`��5�x��5���6���D6���j6����6����6���6� ��6�8�7�P�7�h�67���R7����7����7����7����7���
8��&8�(�L8�@�Xhx��������  ( 8 H X h x � � � � � � � � !!(!8!H!X!h!x!�!�!�!�!�!�!�!�!""("8"H"X"h"x"�"�"�"�"�"�"�"�"##(#8#H#X#h#x#�#�#�#�#�#�#�#�#$$($8$H$X$h$x$�$�$�$�$�$�$�$�$%%(%8%H%X%h%x%�%�%�%�%�%�%�%�%&&(&8&H&X&h&x&�&�&�&�&�&�&�&�&''('8'H'X'h'x'�'�'�'�'�'�'�'�'((((8(H(X(h(x(�(�(�(�(�(�(�(�())()8)H)X)h)x)�)�)�)�)�)�)�)�)**(*8*H*X*h*x*�*�*�*�*�*�*�*�*++(+8+H+X+h+x+�+�+�+�+�+�+�+�+,,(,8,H,X,h,x,�,�,�,�,�,�,�,�,--(-8-H-X-h-x-�-�-�-�-�-�-�-�-..(.8.H.X.h.x.�.�.tX��DY���Y(�\H�X\��]*�8^*�d^��_<�X_8��_$��_X�`���`��LaZ��a~�(b*�Tb0��b��c��Hd���d4�0e:�lf,��i��Hj.�xj��k\�xk��m0��m��n��Xp��Hrz��t��lw���x���yR��yZ�@{��|D�P|��}D�D}�L~�������L�4���V�؀>��T�l���<�.�l�\�Ȃ��`���$��,�j���4�̅D��h�x�j��L�0��D�n�������������`�^���2��@�4�,�`���(�L�t�����������R���r�l����D�H����0�@��D����:�X�F���p��~�����l��� ��,�X���>�������(���P���@�8��T��������^������^�,�J�x���<���$�r���j������������<�v���t�(�p�����$������th��6�n����$
���
:��&������`v��<����������(��6��#���&L��&���,���0���1��d5��$8<�`<r��?���C���G��@HF��K��tL�tMd��M��xPl��S\�@T���T���U2��Y�	��c��Xh^��jH�kh�hk0��l`��l`�Xm�`m�hm�xm��m��Pn��8����I�,���������5���9���T�H�����X��lq��t���t�
��'���,���-���1��$5��9��@��G����/��l3O��8��X>p��@���F��hL���Qt�dUC��XG��[y�la��,gq��j��oO�u�xv������H8��@O�`Q~��Vo�P\I��aQ(�����w�\����z�l����;�T������иu�H�L���M���������\�������8�,�5�d�������������'�����#�U� y#�Dzr��~ �؂��؃5����MUIIDD_ADDTOSAVE_DIALOG_MSHTML	ABOUT.MOZABOUTCOMPAT.CSSABOUTCOMPAT.JSARROW-DOWN-ICON.SVGARROW-UP-ICON.SVG	BLANK.HTMBROWSERMDL.TTF
COMPAT.HTMCORRUPTPDFERROR.HTMDIVIDER.PNGERRORPAGESTYLES.CSS	FLAGS.HTM
HEADERIMG.PNGHEADERIMG_DOWN.PNGHEADERIMG_HOVER.PNGHELPIMG.PNGHELPIMG_DOWN.PNGHELPIMG_HOVER.PNGHTML5ENTITIES.DTDICON-SEARCH.SVGICONS-CIRCLE-MINUS.SVGICONS-CIRCLE-PLUS.SVG
LANDSCAPE.PNGLANDSCAPE_DISABLED.PNGLANDSCAPE_DOWN.PNGLANDSCAPE_HOVER.PNGLEFT.PNGLEFTMOST.PNGLEFTMOST_DISABLED.PNGLEFTMOST_DOWN.PNGLEFTMOST_HOVER.PNGLEFT_DISABLED.PNG
LEFT_DOWN.PNGLEFT_HOVER.PNGPDFERRORMFNOTFOUND.HTMPDFFAILUREPAGE.HTMPERFWIDGET.HTMLPHISHSITE_WEBVIEW.HTMPORTRAIT.PNGPORTRAIT_DISABLED.PNGPORTRAIT_DOWN.PNGPORTRAIT_HOVER.PNGPREVIEW.DLG
PREVIEW.JSPRINTIMG.PNGPRINTIMG_DOWN.PNGPRINTIMG_HOVER.PNGPSTEMPLATE.DLG
PSTEMPLATE.JSRESIZE_HORIZONTAL.PNGRESIZE_VERTICAL.PNG	RIGHT.PNG
RIGHTMOST.PNGRIGHTMOST_DISABLED.PNGRIGHTMOST_DOWN.PNGRIGHTMOST_HOVER.PNGRIGHT_DISABLED.PNGRIGHT_DOWN.PNGRIGHT_HOVER.PNGSETTINGS.PNGSETTINGS_DOWN.PNGSETTINGS_HOVER.PNGTABLE.JSTB_BACK.PNG
TB_CENTRE.PNGWEBCORE.PART.LTR.LIGHT.CSSXMLTREEVIEW.JSZOOMPAGE.PNGZOOMPAGE_DOWN.PNGZOOMPAGE_HOVER.PNG
ZOOMWIDTH.PNGZOOMWIDTH_DOWN.PNGZOOMWIDTH_HOVER.PNG���9�-1��X�[������i��7R�Uw<x�T���$�MUI	zh-TW��DT�	�Microsoft JhengHei UIP)��������(&L):!P5�F ������Ȁ��}�/���	��Microsoft JhengHei UIPiy���P%�$�������/f&T��ݑ
\dk�}�2�L�uP/�?
dk�}�S+T/�����S��OvQ!q�lck�xo�:ybK�\O0�Y�g�`&N^�,nf�dk�}��	cNN [&T]0 P%/�����
N���Qo�:y�P
�o`(&D)P%=�����O(u Internet Explorer gQ�^�vc�N�xuP/��]wQ(&B)P�S2���/f(&Y)P�S2���&T(&N)�Pj6����HTML �e�N
HTML Document-30s+30s�d>e�f\P\���d�\���SX[q_Gr...�SX[�
�...���q_Gr URL����
� URL%sX%.3fXInternet ExplorerPA/����]-Nbk�}�/���㉼x/���!qHe�v�O�n
Nf�v/���q_Gr�d>e�z6q\Pbk - ˊ
z�_�Qf�0~b
N0Rq_Gr0
!q�lI��c�vQ�N݈n0!q�l\q_Gr㉼x0
N/e�cdkq_Gr�jHh^��W0
|vuOUL� - ˊ
z�_�Qf�0�
��d>e�z6q\Pbk - ˊ
z�_�Qf�0	~b
N0Rdk�
��jHh0!q�l\�
�㉼x0
N/e�cdk�
��jHh^��W0PA.....PA�d>e�f\P�y�vQ�Nq_GrMOn�ϑ\���d�\��	�}N�Bf��/PI��N�	iR�Bf��/PI��N�	o�:y�
�x��S�R��h�o�:y��RW[U^x��S�R��h��ϑ/\��hQ��U^P}_ghQ��U^>e'Y.~\PA*g}T
Tܕ��%1 (��_U)-��[�ZԚCQ }�vhQ��U^���n��Bl͑-�N,��]<h_S0W@WjL� 1jL� 2jL� 3jL� 4jL� 5jL� 6�}_�n�U��v&{_�n�U�v�n�U�R��h�n�U�[�^�Y_�[��k=�<pre>	<address><h1><h2><h3><h4><h5>PA<h6><ol><ul><dir><menu><dt><dd><p><div>
BlockQuotepreaddressh1PAh2h3h4h5h6oluldirmenudtddPdivPA/Internet Explorer <0d>.<1d2>.<2d4>.<3d><4s><5s>PA(*g}T
T)PA
N/e�c�P}T�N0	gQ�[(&P)...Windows Internet Explorer
�zl�e�l:
<0s>|vu/����!q�l�[b�d\O <0x>0ˊ8�eQNP <0d> � <1d> KN���v<P0	ˊ8�eQ'Y�e���v<P0ˊ8�eQ'Y�ebI{�e���v<P0
ir�N�]�}���f0�`���f�e�U?VR�ghV�cMRB}bkVR�ghV(W <0s> �]�SB}bkMicrosoft Internet ExplorerWGr^��W!qHe0gQ�[<ONN	gOUL�0�c6R�gQ�[<0s> gQ�[PA�_�S <0s>͑ZP <0s>!q�l�_�S!q�l͑ZP�ceQir�N*Rd�ir�Nl\'`���f�}�p��hV>eN!q�l��_UD��R0Rdk PDF �v�jHh!q�l\dk PDF 2QX[0R�}�MOn0��
N�eW[\Omi��R!hck�WL�g��!q�l-��[gQ�[0 �c6R�
N�S��0*g_U�Rb!q�l�c�S&qޞ��Vdk!q�l\&qޞ�y0R�c6R�
N0(W��!q�lO(u�P�e�l0ˊ8�eQi�vu�v<P0
!q�l|T�S <0s> �e�l0�c6R���&qޞ0
\�e�lbgQ�[X[�S|v�Q^��g�v|T�S0*gc�[�v/���0<P
N/fWGrir�N0
!qHe�vgQ�[c�R"}_0gQ�[<P!qHe0�nMO0�l	gO(u
kP�0PA
Nck�x�v_xe0!q�l�^�z�c6R��V�p*g�S�_i�vu�v�c
k0�vjCQ }
\�P�d\O!qHe0�S�Y HTML 
\�P�d\O!qHe
Nf�P�}@W!qHe0ˊHQ�j�g�}@W6q�_͑f�0~b
N0R�}�z0ˊ�x�[�}@Wck�x6q�_͑f�0X�u�nMO|vu(WL�xe: <0d>��aԚ
N��|vu(WL�xe: <0d>�P�e�NS+T�vj�
N�v&{�@b�N*g�[hQ	�eQ0
�P�d\O
N�v�[�vj:ycj0
�P�d\O*g�[MO�vj:ycj0�P�d\O*g�[MO�vCQ }0X�u�nMO�}�z
�o`...�!q�l�e�X�RKagQ�[0	gc�N�xVf��ceQ�RKagQ�[�bHQMR�RKa�O9eN��vCQ }���S��
N�[hQ0�O�Y�O(u innerHTML gQ�[�e�Xc�N�xb<h_
Nck�x�v HTML g"uudk�OY�r�l0O(u toStaticHTML �e�l�O�{x��RKagQ�[�bO(u createElement I{�e�lf�x�^�zCQ }�Tl\'`0�Y�s�0}nj
��ˊ�S�� http://go.microsoft.com/fwlink/?LinkID=2471040ˊ8�eQ�[�x0�[�x
Nck�x0ˊ�Qf�N!k0�`	g*g2QX[�v���f:
<0s>�P�}�z�l	g��Bl�`�c�OMOn�v
kP�0!q�l$R�e�`�v�vMRMOn0!q�l$R�e�`�v�vMRMOn0PA
Nf�v�
�TS�[PA,<0s>�<1s> � <2d> MOCQ�R�[ <3i>; <5s> � <6d> MOCQ�N�c(NO) (i�-N)(ؚ)�]�R�[gQ�[<ONN�]
d�k0b�v��f�я�zgQ萲}��O�N�v�}�z�}���}�P�6R�v�}�zvQ�N(&M)�	�eQWGr|bmp|@b	gWGr�j|*.bmp;*.wmf;*.emf;*.ico;*.dib;*.cur;*.gif;*.jpg|ޞc�W(*.Bmp;*.Dib)|*.bmp;*.dib|-N|~�j(*.Wmf;*.Emf)|*.wmf;*.emf|W:y(*.Ico;*.Cur)|*.ico;*.cur|GIF(*.Gif)|*.gif|JPEG(*.Jpg)|*.jpg|@b	g�jHh(*.*)|*.*|3	�eQWGr|bmp|W:y(*.Ico;*.Cur)|*.ico;*.cur|@b	g�jHh(*.*)|*.*|PA -- �}�
\q�rx��d��
N�P�v�jHh|*|@b	g�jHh (*.*)|*.*|WGr (*.gif;*.jpg;*.jpeg;*.png)|*.gif;*.jpg;*.jpeg;*.png|HTML (*.htm;*.html)|*.htm;*.html|�e0}fԚ!q�l2QX[WGr0'��\Pbk�WL��Pc�N�x�U? �P�}�
N�vc�N�x\�`�vp��hV���f��WL���^��ba0D�Pkub�	g
N�[hQ�v ActiveX �c6R�0
�`�vMR�v�[hQ'`-��[
N�[1��`�WL��Pkub�
N�v
N�[hQ�c6R�0
P}�g/f�Pkub��S��!q�lck8^o�:y0E�Pkub��S��+T	g ActiveX �c6R�[o(W
N�[hQ�vnj
�0�`�vMR�v�[hQ'`-��[
N�[1��`�N�.z�e�l�WL��c6R�0P}�g/f�Pkub��S��!q�lck8^o�:y0PA9傁�͑�etet�}��p��hV�_�͑��`�]�WL��v�NUO�R\O0�O�Y��Y�g�`�]�}(Wh�<h-N8�eQnj
���`�vnj
�\͑�e�c�N�r��}�z0e!q�lo�:yNPbYP Active X �c6R���V�p:

1) �`�vMR�v�[hQ'`-��[�ybk(W�Pkub��WL� ActiveX �c6R��b�
2) �`�]�}\��vQ-NNP�c6R��v|vL��0

P}�g/fkub��S��!q�lck8^o�:y0&*gb
\b
Nck�x�v XML P}_gjd|  <1s><2s> �,{ <0d> L�0L�: <1d>

/���: <2s>!q�lRpSWGr0!q�l�N��P[���N�P�WGr0E2QX[ HTML �e�N|htm|HTML �jHh (*.htm;*.html)|*.htm;*.html|�eW[�j (*.txt)|*.txt|-2QX[WGr|gif|GIF (*.gif)|*.gif|ޞc�W (*.bmp)|*.bmp|.2QX[WGr|jpg|JPEG (*.jpg)|*.jpg|ޞc�W (*.bmp)|*.bmp|2QX[WGr|bmp|ޞc�W (*.bmp)|*.bmp|2QX[WGr|avi|AVI (*.avi)|*.avi|2QX[WGr|mpg|MPEG (*.mpg)|*.mpg|2QX[WGr|mov|MOV (*.mov)|*.mov|2QX[WGr||�S�Y�j (*.*)|*.*|untitled.bmpPA
untitled.html$<0s>\Internet Explorer Wallpaper.bmp%s ����`�v�g�Nnj
�0-2QX[WGr|png|PNG (*.png)|*.png|ޞc�W (*.bmp)|*.bmp|02QX[WGr|tif|TIFF (*.tiff)|*.tiff|ޞc�W (*.bmp)|*.bmp|-2QX[WGr|jxr|JXR (*.jxr)|*.jxr|ޞc�W (*.bmp)|*.bmp|C2QX[WGr|svg|�S.~>eTϑWb_ (*.svg)|*.svg|PNG (*.png)|*.png|ޞc�W (*.bmp)|*.bmp|untitled.svg-2QX[WGr|ico|ICO (*.ico)|*.ico|ޞc�W (*.bmp)|*.bmp|PA*g}T
T.png�
��jHhq_�P�j��
��jHh���jHh-2QX[WGr|dds|DDS (*.dds)|*.dds|ޞc�W (*.bmp)|*.bmp|vQ�N...
N1� %02d�%s,{ %02d 1�
yyyy/mm/dd(iR� <0d> P��v) ck(WN	�WGr <0s>...ck(W"uu�}� <0s>...ck(WI{P <0s>...--------- ----	1� --�----PA
ck(W�[݈CQ�N...<0s>--:-- ----:----:--:-- ----:--:--	c�ck(WN	�nj�e <0s>...�[bPA�egT
NTN�c�S�S�mt^�Ng1�)Y\Bf�e�N	�eQ/���R�PAg��!q�l��_U�}���}}�z <0s>0

<1s>
�`�x�[��▋��P�}�p��?�y�`�Sd\�P"}_0ˊ8�eQd\ܕu�W[:ˊ	c [�x�[] |~�~�b	c [�S�m] \PYu(W�vMR�v�}�0�/f�Sd\�v"}_0ˊ8�eQd\ܕu�W[: Bf��FontNameFontSizeFontBold
FontItalic	FontUnder	BackColorPABorderColorBorderStyle	TextAlign
SpecialEffectFontSuperscript
FontSubscriptr�i_r���i_�^�N�^}r�ͅr��}r�<*g�[�>nulltruefalse
&w&b� &p / &P&u&b&d0.7500000.7500000.7500000.750000XPS �e�N (*.xps)|*.xps|͑-���Q�gb�p��...nd�<Po�:y�[�x�_�}�p��hVlQHO�vh��U0�V�p�-��v���N(u6b�z�[݈
Nck�x��Vdk!q�l�WL��P�d\O0EsS\�N���P[���N�O�P��Ph��U0
�P��Ph��UBf�_�\�`�v��P[���N0W@WJT4�6e�N�N�
�Nh��U
Ng2�L����y
k�R�[0

�`�S�N|~�~b�S�m�P�0~b
N0R���N(u6b�z2QX[ PDF|pdf|PDF (*.pdf)|*.pdf|*g}T
T.pdf12QX[WGr|webp|WEBP (*.webp)|*.webp|ޞc�W (*.bmp)|*.bmp|PA+T	gjR��?|�v}T�N��S\~b�eW[0�}/�#�P}0+T	g(u�O�c6R�}�o�:y�v}T�N0+T	g(W�}�-N�ceQCQ }�v}T�N0+T	g(u�O��te�}�x��dCQ }�v}T�N0*	c�ሉ[݈NR ActiveX �c6R�: �O�  <1s>  �v  <0s> ...�p Adobe Flash x��S (�mT)
Nf�v@S�W	�S�Ow�!j_: _U�R	�S�Ow�!j_: ܕ��	�S�Ow�!j_: �R7_PA%1!ls! | %2!ls!PAp����
N�P�v�jHh8h�S�S�m8h�S�0R	cx��Sܕ����_U	ciQN8�eQ��
N�PKN�jHh�v
T1z#�P}@S�W^��W: PLUGIN: type=ObjectPLUGIN: type=EmbedMSAAHTML Registered Handler%d%%PAAlt+TNu�PA<0d> / <1d>^��X^�nU\��zd�uR�c	cNN�S�mx��Sj��
���
��d>e�f\P�
�: %1��
�: %1�d>e�vMR�v�ZԚx��S��v�f\P�vMR�v�ZԚx��S��v�y�vQ�Nq_GrMOn
d\��f�v�v�NaMOn
(W %1�=~� %2�ϑ%1%%	�}N�Bf��/PI��N�%1	iR�Bf��/PI��N�%1	o�:y�
�x��S�R��h�o�:y��RW[U^x��S�R��h�/���ck(W	�eQ	ck(W	�eQ�ZԚ...hQ��U^P}_ghQ��U^PAzz<hu�)T�]u�bT�Su��S�_2� 10 �y; SHIFT + T�]u�bT�Su��S�_2� 30 �y0T
Nu��STNu��S��ؚb��NO�ϑMAUSHIFT + T�]u��SPI��N� 30 �y0SHIFT + T�Su��S�_�MR2� 30 �y0	Alt+ENTERPAEsc>e'Y.~\Z�e %1 R��S %2 �y��qQ %3 R��S %4 �y�PAMeter}Ynf�
NsO;N��<h_p��d\�N܈kjE^gQ�[nj
�@S�W@S�k�e��p��;N������>\�e�z�
�@SJX_��[�Wmeterj�8��QBf��h��U��P[���N�jHh_��x�[�xd\�eJX��q�URL�egBf��g1�vu0W�eg�TBf��r�i_x��dhVPAXd��2QX[<hgQ�[nj
�WR�c��ܕW[^��e<hd\�eJXThe command succeeded.?The specified session ID does not exist or is no longer active.CThe specified element was not found in the current frame or window.AThe specified frame was not found in the current frame or window.!The specified command is unknown.DThe command failed because the specified element reference is stale.YThe command failed because the specified element is not pointer or keyboard interactable.HThe command failed because the specified element is in an invalid state.AAn unknown error occurred while processing the specified command.(The specified element is not selectable.7An error occurred while executing the specified script."The specified selector is invalid.PABThe specified command did not complete before its timeout expired.(The specified window could not be found.^An attempt was made to set a cookie under a different domain than the current frame or window.5The command failed to set the specified cookie value.>The specified command was blocked due to an open modal dialog.EAn attempt was made to operate on a modal dialog when none were open.AThe specified script did not complete before its timeout expired.&The specified coordinates are invalid.PAThe IME is not available.!The IME engine activation failed."The specified selector is invalid.%The new session could not be created.kThe target for mouse interaction is not in the browser's viewport and cannot be brought into that viewport.%The specified command is unsupported.The screen capture failed.)The specified command is not implemented.:The specified arguments passed to the command are invalid.Use an alternative method.=The command failed because the specified element is obscured.YThe command failed because the specified element is not pointer or keyboard interactable.TypeError: cyclic object value.PAF12u�`�_�ܕ�� Internet Explorer ;N���z-N�v F12 ��|v�N�T�]wQ�Mb��(W�P
\q��eJX-N��_U��|v�N�T�]wQ



傁�ܕ���s	g�v F12 ��|v�N�T�]wQ���z�&N(WdkU���_U��N�]wQ�ˊ	cNN [�x�[]0&TGRˊ	cNN [�S�m]0HTTPS �[hQ'`�S0R <0s> �vqS�[W[�x��_ <0s> ͑�e_U�R� <1s>-/���: NRnj�n�]��\����V�p�[��Bl�N
N�[hQ�v�e_O(u SSL 3.0 �O^�܈: <0s>�V�p MIME ^��W
N&{�@b�N�_ <0s> \��c�N�x�V�p MIME ^��W
N&{�@b�N�_eu CSS4W[�x� <0s> (�_ (<1s>) ���Y) \���[]��z�vW[�x�  <2s> (�_ (<3s>) ���Y)-N|~jd|
NAQ1�W[�x� <0s>��SAQ1�W[�x� <1s>0%�l�{ iframe �v�[hQ'`�S���V�pAQ1�c�N�x�T�vT�v�S�YX[�S�m�0RqS�[0�ZԚ�gb� -ms-viewport �]���S�N0PA@W[CQƖUNICODE MOCQD}��^j�HTTP jL�.<0s> MO�e Internet Explorer �v�v�['`�j��n�U ( <1s> ) -N0Ndk�}�
N�vz_�x�]\P(u
NN��NN��_�S0�Y�s�0}nj
��ˊ�S��: http://go.microsoft.com/fwlink/?LinkID=291337@font-face |vu
Nf�v/���0@font-face �v WOFF �[te'`�j�g1YWe0!q�lX�%R @font-face W[�W<h_�l	gi�(u�e @font-face ��GR�vW[�W@font-face �v WOFF2 �[te'`�j�g1YWe0ܕ��dk�}�z�v��w@font-face !q�l	�eQ!qHe�v OpenType W[�W0.:visited � :link #j_�S�S�Nr�i_@SR0	g�g�N#j_*gWY(u0R :visited0��d��Ow�\���Ndk�b��vN	�\Omi0

<0s>8@font-face �v荟S�Y�O�n��Bl1YWe0�l	g Access-Control-Allow-Origin j-�0@font-face �v荟S�Y�O�n��Bl1YWe0nj�nX[�S�S0RP�6R0!q�l�^�z�e�v#j_h�0�e�N-N�v#j_h���N� <0d> P0,�]euN� x-ua-compatible U�tc:y ( <0s> )��V�p�e�N!j_�]�[b0|vup��0+_xe  url  !qHe0!q�l�d���N2�MO'Y�Wir�N (Blob) URL:  <0s> 0�bU}X[�S0!q�l�d��荟S�Y�O�n URL:  <0s> 0
~b
N0Rnj�n  <0s> 0PA)
\ <0s> �v�}�Bl*gb�R0

�`�v�a(uz_nj
�n�U*g�[JTNR�R��: <1s>6
\ <0s> �v�}�Bl*gb�R0

dk Internet Explorer �WL�PԚ�l	gNR�R��: <1s>#�bU}X[�S0
\�eNR荟S�Y�O�n URL�nj�n�vX[�S�SP�:  <0s> 0'(W  <0s>  -NuP,n0R�S���v荲}�zc�N�x0r�gQ�[�]1u XSS �{x�hV�O9e0nj�n
NX[(W�e�_�S-N:  <0s> 0nj�n
NX[(W�e:O
ghV
N:  <0s> 0nj
�n�U
NX[(W�e:O
ghV
N:  <0s> 0nj
�n�UVR�g1YWe:  <0s> 0�WL��f�eBfnj
�n�U�]���f:  <0s> 0
AppCache �V͑/���ck(WO(unj
�n�U�^�z AppCache:  <0s> 0*�]�}��"}_�v DB �S	g(WwQ	g http b https URL M�n�v�}�zMb�S(u0��]���e�e�NKNMR	gNbYP�N2�MO'Y�Wir�N URL &N*g�d��0�V�p*g�d���v�N2�MO'Y�Wir�N URL g|~�~�S(u�|q}nj�n�

ˊ|T�S URL.revokeObjectURL Kb�R�d���N2�MO'Y�Wir�N URL�b(W|T�S URL.createObjectURL �N�^�z�N2�MO'Y�Wir�N URL BfO(u {oneTimeOnly} �ej0|v�swQ	g
N�v�[KN�WL��}!j_�vTS�R�^FU Blob ir�N?�]�N�ܕ�� Blob �d��NbYPݑ
\r� Blob �^�z�v URL0��N URL �]
Ng�Q㉐g�p�]ˑ>eKN URL �v�Wynj�e0
~b
N0Rnj�n  <0s> 0(!q�l�b�S URL �v IUriToStreamResolver:  <0s> 0#�bU}X[�S0
\�eNR荟S�Y�O�n URL�nj�n�vX[�S�SP�:  <0s> 03
\ UriToStreamAsync �v|T�Sb�R�FO�P�V URL �v Null �d\O:  <0s> 0�!q�l�_NR�O�n�c6e ScriptNotify �N�N:  <0s> 0r��}�z�]Vf��_*gS+T(Wdk�a(uz_KN ApplicationContentUriRules -N�v WebView URI �P� ScriptNotify �N�Nf}�a(uz_0傁�AQ1�dk�N�N�ˊ\r� URI �e�X�WY�Nnj
�n�U�v ApplicationContentUriRules @S�k ((W Visual Studio -N�\dk URI �e�X�nj
�n�U-���]wQ�v [gQ�[ URI] "}_jd|)0dWindows 7 
N�v Internet Explorer 
N/e�c DDS q_�P<h_0�Y�s�0}nj
��ˊ�S�� http://go.microsoft.com/fwlink/?LinkId=291257Rq_�P  <0s>  O(u
N�S/e�c�v�}�x<h_0�Y�/e�c�v<h_n�U�ˊ�S�� http://go.microsoft.com/fwlink/?LinkId=2912570oq_�P  <0s>  wQ	g
Nf�x�v Alpha r�g<P0�S��o�:y�]f�xc�[ Alpha L��p�v DDS q_�P0�Y�s�0}nj
��ˊ�S�� http://go.microsoft.com/fwlink/?LinkId=29125706 <0s>  MO�e Internet Explorer �v [�v�['`�j��n�U] (wQ	g HTTP2 P�6R)0l�ZԚ�gb� -ms-view-state �]N�Bf0(W Windows 8.1 KN�_�vHr,g�bP�S��g�O9e -ms-view-state �ZԚ�gb�b
N�Q�c�O0ˊ9e�pO(u max-width � min-width �gb�0>Internet Explorer is running in Enterprise Mode emulating IE8.console.profile �]N�Bf��N�]
N�Q�S0R/e�c0!console.profileEnd �]N�Bf��N�]
N�Q�S0R/e�c0console.table *g�[\O0ˊO(uvQ�N_j6R�O��07console.memory *g�[\O��N\gݑ
\@b	gl\'`�P�V 00ˊO(u��aԚR�g�]wQ�O�v����aԚO(u�r�l0Adobe Flash �]
d�k0�]�d�	�eQ�Flash gQ�[��V�p�[O(u*YY��aԚ0
NAQ1�	�eQnj�n '<0s>'0 console.timeline *g�[\O0ˊO(uvQ�N_j6R�O��0#console.timelineEnd *g�[\O0ˊO(uvQ�N_j6R�O��0$console.markTimeline *g�[\O0ˊO(uvQ�N_j6R�O��0PA<0s>: <1s>�k�y�BfhV '<0s>' �]X[(W0�BfhV '<0s>' 
NX[(W0(���v
�o`xe�v��N�;N�c�S�S�No�:y�v
�o`xe�v0�Sgo�:y�k�y�vMR 1000 P
�o`0&console.select() �g�v HTMLElement ^��W_xe0!_U�R [CQ }] "}_jd|�N_U(u console.select()0PASVG _nj�e<h_
Nck�x�!q�l�[hQVR�g0SVG ޞn�U<h_
Nck�x�!q�l�[hQVR�g0PAWY(u�[te�v XSLT U�t0
XSLT U�t1YWe0��Bl荲}�W�WL� XSLT ���b0P�6R�vFh�g-N
NAQ1� XML+XSLT0PAMX_E_MX	*g�g�v8�eQP}>\0!q�l��X��v�}�x0!q�lR�c�}�x0!q�l��X��v8�eQ�}�x=|�z0WC_E_WC�_���	gzz<h0�_���	gR_�0	�_���	g  > 0	�_���	g__�W[CQ0	�_���	g  = 0l\'`<P-N
N�SS+T  <  W[CQ0�_���	gASmQ2�MOxeW[0
�_���	gAS2�MOxeW[0	�_���	g  [ 0	�_���	g  ( 0
NT�l�v XML W[CQ0	
NT�l�v
T1zW[CQ0	
Nck�x�v�e�N���l0
Nck�x�v CDATA @S�k���l0	
Nck�x�v;�㉞��l0
Nck�x�v�h�N@S�k���l0
Nck�x�v ATTLIST �[JT���l0
Nck�x�v DOCTYPE �[JT���l0
Nck�x�v ELEMENT �[JT���l0
Nck�x�v ENTITY �[JT���l0
Nck�x�v NOTATION �[JT���l0
�_���	g  NDATA 0�_���	g  PUBLIC 0�_���	g  SYSTEM 0!qHe�v
T1z0	�S�S	gNP9hCQ }0P}>\j�
T1z����Yj�
T1z�N
N
\�a0dkCQ }-N�]	gT
T�vl\'`0XML �[JT�S�S(u�e�jHh��-�0
MRn�v  xml 0
Nck�x�v�eW[�[JT���l0
Nck�x�v XML �[JT���l0
Nck�x�v�}�x
T1z���l0
Nck�x�vlQ(uX�%RCQ���l0gQ� DTD P[Ɩ-N�vj��[JT
N�SS+T�Sxe�[Ԛ�Sgq0%j��[JTKN��@b(uKN�Sxe�[Ԛ�Sgq�v�S�N�eW[,g���_�S+TN�|R�[te�vj��[JT0�}N�VR�g�v�[Ԛ�_�S+T
\vQ,g���v�v�cb���c�Sgq0
c�[�[Ԛ�vgQ�[<h_
Nck�x0
c�[�v�[Ԛ\*g�[JT0�[Ԛ�Sgq
N�SS+T*g�}VR�gKN�[Ԛ�v
T1z0l\'`<P
N�SS+T
\Y��[Ԛ�v�v�cb���c�Sgq0
Nck�x�vU�tc�N���l0
Nck�x�v�|q}X�%RCQ���l0�_���	gOU_� (?)0!
N�S(WCQ }gQ�[-NO(u CDATA @S�k�vP}_gR��&{_�  ]]> 0&N*g���S@b	g�vnj�e@SJX0
�]~b0R DTD�FO�]�y(u03�](W!qHe�v<PgQ~b0R xml:space l\'`0	gHe<P�p  preserve  b  default 0NC_E_NC
NT�l�vP��[
T1zW[CQ0P��[
T1z-N
N�SS+TYP�Q_�  : 0
T1z-N
N�SS+T�Q_�  : 0�]�[JT���x0
\*g�[JTc�[�v���x0^��-��v
T1zzz���[JT
N�SwQ	gzz�v URI0> xml  ���xg�N�OYu�N�_�S+T URI  http://www.w3.org/XML/1998/namespace 0 xmlns  ���xg�OYu�O XML O(u0Bxml }T
Tzz�� URI (http://www.w3.org/XML/1998/namespace) �S�Sc>mf}���x  xml 0PA9 xmlns }T
Tzz�� URI (http://www.w3.org/2000/xmlns/) g�OYuN
N�_O(u0SC_E_SC���Q�]�rCQ }�v�m�^
NP�0���Q�[ԚU\��xe�v
NP�0WR_E_WR"WR_E_NONWHITESPACE: �[eQhV: c�[�vW[2N
N/fzz<h.WR_E_NSPREFIXDECLARED: �[eQhV: �]O(uvQ�N}T
Tzz���[JTdk}T
Tzz�����x4WR_E_NSPREFIXWITHEMPTYNSURI: �[eQhV: !q�l&N(udk���x�zz�v}T
Tzz�� URI#WR_E_DUPLICATEATTRIBUTE: �[eQhV: ͑��vl\'`1WR_E_XMLNSPREFIXDECLARATION: �[eQhV: !q�l͑�e�[� xmlns ���xSWR_E_XMLPREFIXDECLARATION: �[eQhV: xml ���x�_�S+T http://www.w3.org/XML/1998/namespace URI^WR_E_XMLURIDECLARATION: �[eQhV: xml }T
Tzz�� URI (http://www.w3.org/XML/1998/namespace) �S�Sc>mf}���x  xml VWR_E_XMLNSURIDECLARATION: �[eQhV: xmlns }T
Tzz�� URI (http://www.w3.org/2000/xmlns/) g�OYuN
N�_O(u&WR_E_NAMESPACEUNDECLARED: �[eQhV: *g�[JT}T
Tzz��JWR_E_INVALIDXMLSPACE: �[eQhV: xml:space l\'`�v<P!qHe (AQ1��v<P�p  default  �S  preserve )/WR_E_INVALIDACTION: �[eQhV: �WL�@b��Bl�v�R\O\g"uu!qHe�v XML �e�N/WR_E_INVALIDSURROGATEPAIR: �[eQhV: 8�eQS+T!qHeb
N�[te�v�f�NM�
\W[CQ�[Ԛ-N	g*g�g�vW[CQ0�_�/fAS2�MOxeW[0W[CQ�[Ԛ-N	g*g�g�vW[CQ0�_�/fASmQ2�MOxeW[0c�[KNW[CQ�[Ԛ�v Unicode <P!qHe0!qHe�v�}�x0Unspecified XML error.PA
N/e�c XPath �gb�  <0s> PAinternetClientprivateNetworkClientServer
Nf!j�d IE9!j�d IE8!j�d IE7*g-��[QuirksIE7 j�nIE8 j�nIE9 j�nPA�N� F12 ��|v�N�T�]wQR�N� X-UA-compatible -N|~jd|�N� X-UA-compatible HTTP j-��N�,g_j�v�['`�j��-��[	�N��v�['`�j��n�U�N�gQ萲}�v�['`-��[,(W Access-Control-Allow-Origin j-�-N~b
N0R�Sޞ <0s>09vu��I��ej-��[�p True Bf�
NAQ1�(W Access-Control-Allow-Origin -NO(u,�(uW[CQ0A��I��ej�]-��[�p True�FO Access-Control-Allow-Credentials 
NX[(Wb*g-��[�p  True 00��Blj-� <0s> 
NX[(W�e Access-Control-Allow-Headers n�U-N00��Bl�e�l <0s> 
NX[(W�e Access-Control-Allow-Methods n�U-N0!<0s> �v XMLHttpRequest \��V�aj-�VR�g1YWe0CORS ��j��Bl
NAQ1�͑�e\T0�]ݑ
\ CORS ��Bl\��͑�e\T00
NAQ1��p CORS �V�aO(uYP Access-Control-Allow-Origin j-�05
NAQ1��p CORS �V�aO(uYP Access-Control-Allow-Credentials j-�0+Tek XMLHttpRequest �v-��[ withCredentials l\'`�]N�Bf?(WTek�ej-��[�p True �v�`�lNO(u XMLHttpRequest �v�e_�]N�Bf��V�p�g
\O(u�a�S0R�v�}�zHe��	gq_��0'���R_ '<0s>' �N�NR>mg���]�_eu preventDefault |T�S0(WxeW[W[CQ�Sgq��-�|v�s*g�g�vW[CQ0�g�a�p [0-9]0/(WASmQ2�MOxeW[W[CQ�Sgq��-�|v�s*g�g�vW[CQ0�g�a�p [0-9]0[a-f] b [A-F]0W[CQ�Sgq:\P}>\R_�  ; 0xeW[W[CQ�Sgq*g㉐g�p	gHe�vW[CQ0!q�l��X��vwQ
TW[CQ�Sgq0!!qHe�vW[CQ: U+0000 NULL0
N�ar�O(u Null W[CQ0jd|��-�!qHe:  <? 0
N��O(uOU_�ZP�pjd|�v��-�0jd|
T1z!qHe0,{NPW[CQ�ar�&{T [a-zA-Z]0P}_gjd|  </>  !qHe0P}_gjd|
N��/fzz�v0%l\'`
T1zW[CQ!qHe0l\'`
T1z
N�ar�S+T (")0(')0(<) b (=)0/*g�R__��vl\'`<P!qHe0*g�R__��vl\'`<P
N�ar�S+T (")0(')0(<)0(=) b (`)0aY�v�jHhP}>\0;�㉄v<h_/���0;�㉄v��-��ar�/f  <!--  0*g�g�vW[CQ: U+003E 'Y�e&{_� (>)*g�g�vW[CQ: U+0021 Z�V_� (!)*g�g�vW[CQ: U+002D n_� (-)(W;��P}>\|v�s*g�g�vW[CQ0�g�a�p  --> 0.DOCTYPE /fzz�v0g�w�v	gHe doctype /f  <!DOCTYPE html> 0(W DOCTYPE -N|v�s*g�g�vW[CQ0.(W DOCTYPE -N|v�s*g�g�vܕu�W[0�g�a�p  PUBLIC  b  SYSTEM 0-(W  PUBLIC  b  SYSTEM  ܕu�W[�_b�|v�s*g�g�v__�0�g�a�pzz}vW[CQ0P}_gjd|�v<h_/���0P}_gjd|
N�ar�S+Tl\'`0'���Yjd|�v<h_/���0�L�P}_g�e�}�_b��ar��cW� U+003E 'Y�e&{_� (>)0���Yjd|�v<h_/���0�_�O(uzz}vW[CQ�OR��l\'`0W[CQ!qHePAjd|
N��/f�L�P}_gjd|0ˊO(uf�x�vP}_gjd|0aY�v�jHhP}>\0**g�g�v DOCTYPE0�SAQ1�NP DOCTYPE��N�[�_��Q�s(W@b	gCQ }KNMR0	*g�g�v���Yjd|0	*g�g�vP}_gjd|0*g�g�vW[CQ��Y_�WCQ0aY�v
kVg0"*g�g�vW[CQ: U+0000 NULL0
N�ar�O(u Null W[CQ0P}_gjd|:\
\�a�v���Yjd|0P}_gjd|:\
\�a�v���Yjd|0��Bl�v�{ޞ
N(W�{
W-N0(W  <head>  Y|v�s*g�g�vj-�d\}CQ }0P}_gjd|:\
\�a�v���Yjd|0)|v�sM�Y�v  <html>  jd|0�kP�e�N-N�S��	gNP  <html>  jd|0)|v�sM�Y�v  <body>  jd|0�kP�e�N-N�S��	gNP  <body>  jd|0,(W�e�N�v*YN�e|v�s  <frameset> 0dkjd|�ar��Q�s(W  <body>  KNMR0/�]�rP}�i!qHe0j-�jd| (�O�Y� <h1>  b  <h2> ) 
N�ar�>e(W�SNPj-�jd|-N0&�]�rP}�i!qHe0 <form>  jd|
N�ar�>e(W�SNP  <form>  -N0*�]�rP}�i!qHe0 <button>  jd|
N�ar�>e(W�SNP  <button>  -N0 �]�rP}�i!qHe0 <a>  jd|
N�ar�>e(W�SNP  <a>  -N0$*g�g�v���Yjd|:  <isindex>  CQ }�]N�Bf��Vdk
N�ar�O(u0/*g�g�v  </body>  b�jHhP}>\0(W�jHhP}>\KNMR�@b	g��-�CQ }���ar�	g
\�a�vP}_gCQ }0%P}_gjd|!qHe:  </br> 0ˊ9e(u  <br>  b  <br/> 04P}_gjd|͑�u0jd|P}�i�_��P  <b><i></i></b> ��^�  <b><i></b></i> 0-HTML5 DOCTYPE !qHe0ˊ�naO(u�N�<h_  <!DOCTYPE html> 0#(WY�gQ�[ (MathML/SVG) -N|v�s*g�g�v HTML jd|0&�]�rP}�i!qHe0 <nobr>  jd|
N�ar�>e(W�SNP  <nobr>  -N07�g�a	g DOCTYPE0ˊ�na�e�X	gHe�v HTML5 doctype:  <!DOCTYPE html> 0'(W HTML -N|v�s*g�g�v  <image> 0ˊ9e�pO(u  <img> 09!qHe�v xmlns:xlink l\'`<P0r�<P�_�/f  http://www.w3.org/1999/xlink 07(WP}�iSh�<hCQ }-N|v�s�eW[0h�<h�eW[�S��>e(W  <caption> 0 <td>  b  <th>  CQ }gQ0;!qHe�v xmlns l\'`<P0
\�e SVG CQ }�r�<P�_�/f  http://www.w3.org/2000/svg 0F!qHe�v xmlns l\'`<P0
\�e MathML CQ }�r�<P�_�/f  http://www.w3.org/1998/Math/MathML 0:��ec�N�x_�d	�^8O!jD}c�N�x_�d�eW[�d>e̎: !qHe�vBf��3b�0hr=<0x>0�eW[�d>e̎: ��aԚ
N��0hr=<0x>0�eW[�d>e̎: aY�v/���0hr=<0x>0�eW[�d>e̎: *g�w�v MIME ^��W0hr=<0x>0WebVTT �eW[�d>e̎: �jHhaYP}_g0hr=<0x>0WebVTT �eW[�d>e̎: !qHe�v�jHh=|�z0hr=<0x>0-WebVTT �eW[�d>e̎: �g(W�jHh=|�z�_�ar�	g 2 bYPL�P}_gW[CQ0hr=<0x>0&WebVTT �eW[�d>e̎: Bf��3b�=|�z�ar�/f  --> 0hr=<0x>0,WebVTT �eW[�d>e̎: �g(W�c:yX�%R�x�_�ar�	g 2 PL�P}_gW[CQ0hr=<0x>0)WebVTT �eW[�d>e̎: Vf�\~b�c:y�N2�L�VR�gBf|vuaY/���0hr=<0x>0WebVTT �eW[�d>e̎: *g�g�vzzL�0hr=<0x>0%WebVTT �eW[�d>e̎: �c:y�vBf��3b�-N|vuzz}v/���0hr=<0x>0+WebVTT �eW[�d>e̎: Vf�\~b�c:y�eW[�N2�L�VR�gBf|vuaY/���0hr=<0x>0(TTML �eW[�d>e̎: *g�g�v ttp:tickRate <P0hr=<0x>0)TTML �eW[�d>e̎: *g�g�v ttp:frameRate <P0hr=<0x>0PA3TTML �eW[�d>e̎: *g�g�v ttp:frameRateMultiplier <P0hr=<0x>0.TTML �eW[�d>e̎: G�0R*g�g�vCQ } - �S�bwQ	g!qHe}T
Tzz���vCQ }0hr=<0x>0TTML �eW[�d>e̎: |v�s
Nb
\�vCQ }0hr=<0x>0TTML �eW[�d>e̎: U�t#j_Bf|vu/���0hr=<0x>0)TTML �eW[�d>e̎: G�0R!qHe�v XML0XmlLite /����x/f: <0x>0PA�
�/��
�: *g�w�v MIME ^��W0"q_GrI�o��vhs�z�d�[�]\P(u0�g
\He�� �b��b�q_��0src: <0s>q_GrI�o��vhs�z�d�[�s(W�]_U(u0src: <0s>PA<0s>INVALID_ENUM: <0s>INVALID_VALUE: <0s>INVALID_OPERATION: <0s>OUT_OF_MEMORY: <0s>CONTEXT_LOST_WEBGL: <0s>#INVALID_FRAMEBUFFER_OPERATION: <0s>|vu*YY/����\
Ng�Q���NUO/���PA<0s>: !qHe�vj~W!j_0<0s>: W�r�hVD��N�]�}	gW�r�hV0<0s>: Uniform �W%R
N&{TW�r�hV-N�[JT�v�W%R0<0s>: Uniform 'Y\
N&{Tq}N�e�l0
<0s>: !qHe�v�mT�Q_<0s>: !qHe�v�mT�ez_<0s>: c�[�vnj�n'Y\'Y�e}t'Y\
NP�0<0s>: �j��@S'Y\
N���p��xe<0s>: ��<P�xebMO�y0<0s>: 
\�ec�[�v�xe�MO�y���LuP�CQ }c�R*Y\0.<0s>: MOCQD}MO�y
\�e UNSIGNED_SHORT ��!qHe (�_�/f 2 �v
Pxe)0<0s>: �_�	gCQ }c�R�}]�@Sk~P}0%<0s>: �ޞ�Gr�kW�r�hV-N�v Uniform wQ	g�vT
T1zFO^��W
NT0<0s>: !qHe�v�}]�@S�vjR	�<0s>: �}]�@S�]k~P}�
NT�v�vj<0s>: !qHe�v�}]�@SO(u�e_R	�<0s>: !qHe�vW�r�hV^��W<0s>: !q�l(W�l	g�O�n�v�`�lN�}o�W�r�hV
<0s>: !qHe�vn�iMOCQ<0s>: 
N��	g��<P�vؚ�^b�[�^
<0s>: �}]�@S'Y\
N��(<0s>: �S/e�c RGBA <h_� UNSIGNED_BYTE ^��W�v�|�xD}T<0s>: dk
NN�e�l	g�vMR�vz_<0s>: 
N��	g��<P�v���Y<Pb�xe<0s>: �Sxe���QLuP�<0s>: *g#�P}z_<0s>: ��xe
N/f�vMRz_�vN�R<0s>: Near <P
N���k Far <P'Y<0s>: 
N��\�e 0 b'Y�e}txe�v
NP�<0s>: !qHeb
N�S/e�c�v}t�vj<0s>: �_�k~P}}tPA<0s>: !qHe�v<h_<0s>: !qHe�v^��W<0s>: <h_�_�&{TgQ�<h_<0s>: !qHe�v<h_�^��WD}T<0s>: s�0}nj�ed\}���Q�{
W
<0s>: !qHe�vgQ�<h_
<0s>: Fh�}�_�/f 0<0s>: }tؚ�^��[�^
N��/f��<P��N
N����N�}t'Y\
NP�<0s>: ����]_U(u�v�}]�@S<0s>: �S/e�c UNSIGNED_SHORT ^��W<0s>: 
N��	g��<P�vekݍ<0s>: �ޞl\'`'Y\�_�/f 10203 b 4
<0s>: �_�k~P}�}]�@S<0s>: !qHeb
N�S/e�c�v�|�x�^^��W<0s>: ���͑�e�}o�W�r�hV<0s>: 
N��\�e 0 b'Y�e}txe�v
NP�PA<0s>: ���Y<Pb�xe���Q�}]�@S�vP}>\<0s>: �c�O�v�Sxe���Q�c�O�v�}]�@S<0s>: �g�a	g WebGLShader ir�N<0s>: �g�a	g WebGLProgram ir�N<0s>: �W%Rc�R^��W��P }nj�e^��W�_��v&{<0s>: �P }nj�eX[>e@S����W%Rc�R#<0s>: �S/e�c RGBA <h_� UNSIGNED_BYTE ^��W<0s>: dkq_�P�vnj�e!q�lO(u<0s>: 
N/e�cdk}t�O�n<0s>: !q�lX�%R}t�o�<0s>: !q�lX�%R}tS݈!j_<0s>: !q�lX�%R�cx� (Cull) !j_
<0s>: ����ޞW�r�hV
<0s>: ���Gr�kW�r�hV<0s>: �}]�@S'Y\*g
\J�nj�e^��W-<0s>: WebGL ir�N�]�}��SNP WebGLRenderingContext ܕo� <0s>: �Sxe
T1z
\�e renderbuffer D��N��!qHe<0s>: !qHe�v renderbuffer �vj<0s>: !qHe�v framebuffer �vj<0s>: �_�k~P} framebuffer<0s>: �_�k~P} renderbuffer<0s>: #�P}}tBf�Mipmap d\}�_�/f 0*<0s>: Renderbuffer �[�^�ؚ�^
N��/f��<P��N
N����N�}t'Y\
NP�<0s>: D��N^��W�_��D��Nir�N�v�[<0s>: �l	gD��NX[(W<0s>: 
N/e�c�v framebuffer -��[<0s>: D��N�l	g�vT�v:\�[
<0s>: !qHe�vD��N^��W<0s>: Renderbuffer �[�^�ؚ�^�_�'Y�e 0<0s>: !qHe�v renderbuffer gQ�<h_<0s>: R	� <1s> �vMR
N�S/e�cPA<0s>: q_�PCQ }*gc�[ src<0s>: }t�O�nU��S�}�WP�6R<0s>: }t
N/f 2 �v!k�e�b
N/f�[te mipmap<0s>: �vMR�v�z�eԚ
\�aԚ (cube map) 
N�[te<0s>: c�[�v:\�[���Q}t�vLuP�.<0s>: Gr�kW�r�hV-N@b	g�N\�Ka�e_O(u�vT.z��xe�(W�ޞW�r�hV-N�_�	g^��W�vT�v
\�a��xe
<0s>: gQ�#�P}hV/���PA<0s>: !q�lO(ur�ir�N��V�p�[�]��*Rd�<0s>: 
NAQ1���-��p  gl_  �vl\'`$<0s>: z_ir�N-NwQ	g
NT�S#jhV^��W�v��xe!q�lcT�vT�v}tq_�P�UCQ<0s>: z_-N�[��v�S#jhVxe�v��N�dklxԚ�vP�6R<0s>: �ޞl\'`c>m�vzz��
N���!q�l�[
}�wc�l\'`&<0s>: TEXTURE_MAX_ANISOTROPY �_�'Y�ebI{�e 1<0s>: �d�\݈c>m�_�/f 10204 b 8<0s>: �PeQ�v}t�vj�<h_�_�&{T(u�O�[�}t�v�S�Y-��[<0s>: �z�eԚ0WW�v�kNb����_�wQ	g�vI{�v�[�^�ؚ�^.<0s>: }t�v�z�eԚ0WWz�^*g�[b0�_��[��z�eԚ0WW�v�kNb���N�kNb��v'Y\�_��vT<0s>: ��-N�e#�P}�vW�r�hV�vMR�_�#�P}0Rz_<0s>: �X.~�v}t�}�^�_�[R}Y&{T�PeQnj�e�v�}�^<0s>: �[�^0ؚ�^�MO�y�Sxe�_�/f 4 �v
Pxe<0s>: �X.~�v}t
N/e�cMipmap "uu<0s>: !q�l\�X.~�v}t-��[�pFh�g�}]�@S�v�v0WPA8<0s>: �_�\'Y\bc�R�P^�f} bufferData0zz<P(Null)�*g�[�(undefined)GWl\!qHe+<0s>: bufferSubData �g6e0R�PeQ�vc�R0zz<P(Null)
N/f	gHe<P<0s>: �_��N�W%Rc�R�PeQnj�e"<0s>: MO�y��ݍ (Stride) �_�/f�PeQKNnj�e^��W�v
Pxe2<0s>: nmޞxe}t��� NEAREST b NEAREST_MIPMAP_NEAREST N��ohV<0s>: gQ�<h_�_�S+T�vMRLuP�Fh�g�}]�@S<h_�vP[Ɩ <0s>: gTMR�e�gT�_�eKN	N҉b_�v#jg�S��n�i<P�_��vT<0s>: �vMR
N/e�c
NN�el\'` <1s><0s>: (W#�P}Bf����N����RTϑ�xe
NP�<0s>: �\NP�]_U(u�vl\'`�_�	gd�xeb��PA<0s>: Primcount �_�'Y�ebI{�e��"<0s>: �PeQ�v}t<h_�^��W�_�&{TvuR(u�O�[�}t�v<h_�^��W<0s>: MOnw��^
N����N� 256 PW[CQ<0s>: �ޞl\'`�Gr�k6R_<h_
N��	g�vT�v
T1z+<0s>: 
NAQ1���-��p  gl_ 0 webgl_  b  _webgl_  �vl\'`/<0s>: �vMR�vlxԚ
N/e�c drawArrays 	g��N� 65536 P	N҉b_0�]euN�|T�S0v<0s>: CONSTANT_COLOR (b ONE_MINUS_CONSTANT_COLOR) � CONSTANT_ALPHA (b ONE_MINUS_CONSTANT_ALPHA) !q�lTBfO(u�p�mT�Q_-N�v�O�n��v�v0W�Vxe0-<0s>: (W�`�vlxԚ
N�
NAQ1�O(u SRC_ALPHA_SATURATE ZP�p�mT�Q_0.<0s>: �S/e�c UNSIGNED_SHORT and UNSIGNED_BYTE ^��W09<0s>: �S/e�c UNSIGNED_SHORT0UNSIGNED_BYTE � UNSIGNED_INT ^��W0'<0s>: �vMR�vlxԚ
N/e�c SAMPLE_ALPHA_TO_COVERAGE#<0s>: �v�v0W�mT�Vxe
N��/f SRC_ALPHA_SATURATE<0s>: �l	gdkq_Gr�vnj�e<0s>: !qHe�v}t�vj�<h_D}T<0s>: �P }nj�e�_�/f Null<0s>: }td\}�_�/f��PA<0s>: �vMR�vlxԚ
N/e�c^� 2 �v!k�e�v�z�eԚ
\�a}t<0s>: D��R0R�vMRkub��}]�@S�v}t_N�]k~P}0R�vMR�vgQ�[<0s>: MO�y�_�\�ebI{�e 2^32uP,n0R GPU ͑-�0�fBfR�c0RߎԚI�o�0�fBfR�c�pߎԚI�o��No�:y WebGL gQ�[0PA�V0R %s (Alt+Left)�_MR0R %s (Alt+Right)
NN�NN�,g�0Could not allocate memory for required operation
Parsing errorUnknown locatorLocator not implementedElement not displayedElement is obscured+Could not determine if element is displayed*Could not determine if element is obscured{"message":"%1"}!Width and height are out of rangeThe element is disabledThe element is not editableThe element is not in a formThe element is not focusable-Javascript execution context no longer existsmissing key parametermissing value parameter-The area element is not associated with a map$The map element does not have a name/The map element is not used by an image elementLocalStorage is disabledSessionStorage is disabled!Gamepad simulation is not enabledGamepad is not plugged inGamepad is already plugged inPAGamepad index is out of bounds#Gamepad axis index is out of bounds%Gamepad button index is out of bounds%Date must be in the format YYYY-MM-DDUnknown input source type"Input source has a mismatched type)Input source has a mismatched pointerTypeUnknown pointerType.Input source does not support this action typeUnknown origin1Key action value is not a single grapheme clusterFile or folder not found#Duration must be a positive integer,%1 timeout duration was not a signed integer0None of the expected timeout keywords were found*Pointer input source type is not supported=JSON format error: %1 object must contain pair with name "%2"FJSON format error: pair with name "%1" must have an array as its valueDJSON format error: pair with name "%1" must have a bool as its valueEJSON format error: pair with name "%1" must have a float as its valueHJSON format error: pair with name "%1" must have an integer as its valueDJSON format error: pair with name "%1" must have a null as its valueGJSON format error: pair with name "%1" must have an object as its valueFJSON format error: pair with name "%1" must have a string as its valueAJSON format error: array with name "%1" must contain only strings1JSON format error: the root has a mismatched typeAJSON format error: array with name "%1" must contain only objectsir�N
N/e�cdk�R\O_xe
N�px��d'`
c>mf}/U��kMObl\'`|T�Sir�N!qHe!qHe�v_xe�]1ugQ�[�[hQ'`�SGR\��PA�e�X�W[xQeuN�	\Pbk!hck  %1 *Rd�͑�W[���vQ�N�{t-��[...�{t���...PA�`�_�8�eQw��^
N��N� %d PW[CQ�v�eW[ˊ8�eQ'Y�eNR<P�v<P: ˊ8�eQ\�eNR<P�v<P: �`�_�8�eQ�N�e %1 0R %2 KN���v<P	�`�_�8�eQ	gHe�v<P�`�_�8�eQ	gHe�v URL�`�_�8�eQ	gHe�v��P[���N0W@W�/f�_��kMO
�`�_�x��Sdk8h�S�eJX�`�_�x��dx���`�_�x��d�jHh�`�_��_n�U-Nx��S��v
�`�_�O(udk<h_: �`�_�O(uNR<h_8�eQ URL: �`�_�O(uNR<h_8�eQ��P[���N0W@W: ˊ8�eQxeW[PA
Caps Lock �]_U(u
ˊ(WNR��v�_�e8�eQ<P: 
ˊ(WNR��vMR�e8�eQ<P: �`�_�8�eQw��^��N� %d PW[CQ�v�eW[�     <div style='color: #2a2a2a'>    <div style='position: fixed;                 top: 10.2px;                 left: 0px;                 border: solid 1px #2a2a2a;                 padding: 15px 20px 15px 15px;                 margin: 0px;                 font-size: 11pt;                 line-height: 15pt;                 color: #1a1a1a;                 min-width: 150px;                 max-width: 320px;'                 unselectable='on'                 id='contentContainer'>     </div>     <svg style='position: fixed; top: 0.5px; left: 15px' unselectable='on'>         <line x1='19.3' y1='10' x2='0.7' y2='10' stroke='window' stroke-width='2px' stroke-linecap='round'/>         <line x1='0' y1='10' x2='10' y2='0' stroke='currentColor' stroke-width='1px' stroke-linecap='round'/>         <line x1='10' y1='0' x2='20' y2='10' stroke='currentColor' stroke-width='1px' stroke-linecap='round'/>     </svg>    </div>�     <div style='color: #2a2a2a'>    <div style='position: fixed;                 top: 0.2px;                 left: 0px;                 border: solid 1px #2a2a2a;                 padding: 10px 10px 10px 10px;                 margin: 0px;                 font-size: 11pt;                 line-height: 15pt;                 color: #1a1a1a;                 min-width: 150px;                 max-width: 320px;'                 unselectable='on'                 id='contentContainer'>     </div>     </div>PANN�PA$!q�l\ir�N  <0s>  lQ��0R WebView��V�p hr=<1x>0V!q�l\ir�N  <0s>  lQ��0R WebView0ˊ�x�[r�ir�N�v�WL����k^�%R/f Agile0�l	g WebHostHidden l\'`��NwQ	g AllowForWeb l\'`0&!q�l㉼xMO�e URL  <0s>  N MIME �p  <1s>  �vq_�P0!q�l	�eQ���}T�N�jHh:  <0s> 0PA�]ݑ
\ URL _U�R <0s> ��Bl�v�HQI�o�hV: <1s>%1u�e URL �v <1s>��]�bU} <0s> ��Bl�v�HQI�o�hV: <2s>#�P}j�	FlipAhead*g�w�v�S�V�HQI�o��]\P(u
�]T��HQI�o�hV��Blxe�v
NP�
!qHe�v URL M�n/f��HQI�o�KN URI �vT�v URI	�vjHQMR�]�HQI�o�CV n�UP�6R1u�e URL �v <0s>��HQI�o�hV�vj�]B}bk: <1s>�S�N�vj�HQ	�eQܕ_j�HQI�o�hV�vj(W>�BfKN�_*gO(uPA���jRN�_�S��
NhQx�1XJT�p�[hQ�N��|~�~ܕ��	1u %1 ݈	�


dk�}�gQ�[�]��1XJT�p
N�[hQPAH%1

%2

�]T Microsoft �V1Xdk�}�gQ�[��V�pvQ-N�S��S+Tg
\�`�v��f� �bZ��vgQ�[ (�S��g �b�`�vP�Nnj
�b���Rnj
��fIQ)0Fhttp://go.microsoft.com/fwlink/?LinkID=109695&result=block&t=%1&URL=%2commentsocialsharebar	sharetool
share-toolcontrolscontrolmboxdefaultbuttonsbuttonsharehiddenhideleft-ear	right-earadPAad_	nocontent
nocontentspromo_holderpromo-componentgoogleadsky_addapifbylinetitle	liveblog_sidebarfeedmaplogo
stb-processedrel_inactivearticletoolsociable
share-article	utilitiesaction-overlayrobots-nocontentGMSCfooterarticle-side-railbasic-modal-disclaimerwtbchartlivefyretc-tag-item-bingPAtc-tag-item-advertising-techmod-ad-4 ad-containerpost-gallerygallery-thumbnailsgallery-thumbnail
js_replies:-| !q�lVR�g <0s>��V�p <1d> - �SGR\���_eu0/!q�lݑ
\MO�e  <2s>  �vc:y^�  <1s>  VR�g <0s> -N�v�O�n - \�_eu�O�n0<0s> �SGR/fzz�v0'<2s> -N�vc:y^�  <1s>  	g*g�w�O�n  <0s>  - \�_eu�O�n0)<2s> -N�vc:y^�  <1s>  	g
N/e�c�v�O�n  <0s>  - \�_eu�O�n0;�l	g�p <1s> �vc:y^�  <0s>  �c�O�O�n - ��vvu�eO(u  none  �N\g2�bkN	�dk^��W�v@b	gnj�n0!�]ݑ
\ <2s> �vc:y^�  <1s>  �c�O�O�n  <0s> 0!q�lVR�gMO�e  <1s>  KN <0s> -N�vc:y^�0<1s> -N	g*g�w�vc:y^�  <0s>  - \�_euc:y^�0<1s> -N	g
N/e�c�vc:y^�  <0s>  - \�_euc:y^�0"�](W <1s> -N�c�Oc:y^�  <0s>  - \�_eu͑��vc:y^�0#/e�cU��S <1s> -N�vc:y^� '<0s>': <2s>0\\��nj�n0./e�cU��S <1s> -N�vc:y^� '<0s>': <2s>01u�e�SGR�p�P1XJT�\
Ng\��nj�n0!q�l7_6R <0s> -N�v�l�{c:y^���V�p <1d>01u�e;N_j���[�\AQ1�c�N�xU�0O01u�e;N_j���[�\
NAQ1�Fh�g '<0s>'0PA;ck(Wݑ
\ <1s> -N�vc:y^� '<0s>' euN� 'unsafe-inline'��V�p�]c�[ nonce bܖJn<P0�]\���vnj�nwQ	g '<0s>' �vܖJn0=Y�cz_^��W <2s> (�]�[JT�v^��W&{T�[��^��W: <3s>) U��S <1s> -N�vc:y^� '<0s>'0\\��r�nj�n0MY�cz_^��W <2s> (�]�[JT�v^��W&{T�[��^��W: <3s>) U��S <1s> -N�vc:y^� '<0s>'01u�e�SGR/f-��[�p0�P�V1X
0�\
Ng\��r�nj�n08<1s> -N�vnj�nU��Sc:y^� '<0s>': <2s>��e <3s> �vL� <4d> k <5d>0\\��nj�n0E<1s> -N�vnj�nU��Sc:y^� '<0s>': <2s>��e <3s> �vL� <4d> k <5d>0�V�p�SGR�p�P1XJT�@b�N\
Ng\��nj�n0^�j�n�rKa0
<0s><1s> - <2s>)/����v��Bl - :O
ghV!q�lU�t��Bl��V�p���l!qHe0
<0s><1s> - <2s>#m��bU} - ��Bl�vnj�n���O(u�W�I�0
<0s><1s> - <2s>(��Bl�N>k - :O
ghV��Bl�_�HQ�N>kMb��U�t��Bl0
<0s><1s> - <2s>%m��ybk - :O
ghV�N㉁�Bl�FO/f�bU}�[b0
<0s><1s> - <2s>2~b
N0R - :O
ghV~b
N0R&{T@b��Bl (q}Nnj�nX�%R�) �v�NUO��v0
<0s><1s> - <2s>)/����v�e�l - 
N/e�cO(u�v HTTP c�N�R^�0
<0s><1s> - <2s>$!q�l�c�S - ~b
N0R(u6b�z�S�c�S�v�V�a0
<0s><1s> - <2s>-��� PROXY W�I� - O(udk Proxy ���W�I�0
<0s><1s> - <2s>"��Bl>�Bf - :O
ghVI{P��BlBf>�Bf0
<0s><1s> - <2s>*]��z - 1u�e�nj�n�v�vMR�rKa]��z�!q�l�[bdk��Bl0
<0s><1s> - <2s>/�]�m1Y - :O
ghV
N�Q�c�O��Bl�vnj�n��Vdk
N�wS��NUOI��[0W@W0
<0s><1s> - <2s>+�_�	gw��^ - :O
ghV�bU}�c�S�l	g�[�gQ�[w��^�v��Bl0
<0s><1s> - <2s>;MRn�h�N1YWe - NPbYP��Blj-�kMO�vc�[�h�N(W:O
ghV
N,nf�Bf��U��p false0
<0s><1s> - <2s>&b	�*Y'Y - 
ghV�bU}U�t��Bl��V�p��Bl�[Ԛ�k:O
ghVX�ab�� YU�t�v�O�_'Y0DURI *Yw� - :O
ghV�bU}
g�Rdk��Bl��V�p��Bl URI (q}Nnj�nX�%R�x) �k:O
ghVX�a�o��v�O�_w�0
<0s><1s> - <2s>B
N/e�c�v�ZԚ^��W - :O
ghV�bU}
g�Rdk��Bl��V�p��Bl�v�[ԚO(u�v<h_
N�S@b��BlKN�e�l�v��Blnj�n/e�c0
<0s><1s> - <2s>=!q�l�n���v��Bl�{
W - :O
ghV!q�l�c�O(u6b�z@b��BlKN�jHh�v�g�R0r��R�S����N��jHhP}>\0
<0s><1s> - <2s>)�g1YWe - :O
ghV
N&{T�g��Blj-�kMO�v�Bl0
<0s><1s> - <2s>$b/f6��X - :O
ghV/f6��X�!q�lnq�TaU0
<0s><1s> - <2s>"W�I�>�Bf - HQMR	gHe�vW�I��]N�g0
<0s><1s> - <2s>/!q�lU�t�v�[Ԛ - ��Bl�v<h_ck�x�FO�V�p��a/����!q�lU�t0
<0s><1s> - <2s>!�]���[ - ��X[�S�vnj�n�]�����[0
<0s><1s> - <2s>(1YWe�v�v�O'` - ��Bl1YWe��V�pHQMR�v��Bl1YWe0
<0s><1s> - <2s>'�_�GS} - (u6b�z�_�R�c0R
NT�v�
�TS�[0
<0s><1s> - <2s>/���MRn�h�N - �S�Y:O
ghV��Bl@b�c�O�v��Bl�_�/f�h�N'`��Bl0
<0s><1s> - <2s>.*YY��Bl - :O
ghV�bU}
g�Rr���Bl��V�p(u6b�z�c�N*YY��Bl0
<0s><1s> - <2s>G��Blj-�kMO*Y'Y - :O
ghV�bU}
g�Rr���Bl��V�p�gPj-�kMOb@b	gj-�kMO=~�T��N�:O
ghVX�ab�� YU�t�v'Y\0
<0s><1s> - <2s>PA%͑f� - �ar�(W�WL�i�vu�R\OKN�_͑f���Bl0
<0s><1s> - <2s>2�V�l�_�S�V�!q�lO(u - 1u�e�l�_�S�V�:O
ghV�]�bU}
\r�nj�n�vX[�S0
<0s><1s> - <2s>PA+:O
ghV/��� - :O
ghV|vuaY�r�l��Vdk!q�l�n����Bl0
<0s><1s> - <2s>&
N/e�c - :O
ghV
N/e�c�� Y�n����Bl�v�R��0
<0s><1s> - <2s>A/����v��S� - ZP�p��S�b Proxy �v:O
ghVVf��[b��BlBf��_X[�S�v
N8n:O
ghV6e0R!qHe�v�V�a0
<0s><1s> - <2s> 
g�R!q�lO(u - 
g�R�fBf��	�0
<0s><1s> - <2s>!��S�>�Bf - ��BlI{P��S�Bf>�Bf0
<0s><1s> - <2s>8
N/e�c�vHr,g - :O
ghV
N/e�cb�bU}/e�c(u�e��Bl
�o`�v HTTP �
�TS�[Hr,g0
<0s><1s> - <2s>(��xe_N�N�m - ��Bl�v�fgQ�[�N�mU��e�_�t�S�0
<0s><1s> - <2s>+2QX[zz��
N�� - :O
ghV!q�l2QX[�[b��Bl@b��vh�:y�l0
<0s><1s> - <2s>)uP,n0R�W - :O
ghV(W
g�R��BlBfuP,n0R!qP��W0
<0s><1s> - <2s>**g�^8O - ���2�Nek�^8O��Bl�:O
ghVMb���n����Bl0
<0s><1s> - <2s>)����}�W�I� - (u6b�z�_�W�I��N�S�_�}�X[�S
k0
<0s><1s> - <2s>!q�lݑ
\�kP <1du> Fh�g�v <0du> �S��^�z�}]�@S0(�c�O�v sampleRate (<0d>) ���Q�{
W [<1d>, <2d>]0Fh�gxe�v�_�'Y�e 00�S�"}_ (<0du>) ��N��S�xe�v (<1du>)08�eQ�S�xe�v (<0du>) ��N�g'Y<P (<1du>)0	!q�l|T�S_U�RY!k0 when  �Sxe�_�/f^���xe0 offset  �Sxe�_�/f^���xe0 duration  �Sxe�_�/f^���xe0�c�O�v fftSize <P (<0du>) 
N/f�N�v!k�e0AudioContexts xe�v�]T�g'Y<P (<0du>)0OfflineAudioContext �]���YI�o�0㉼x/���: �c�O�vnj�eAm�]
d�kb
N�S/e�c08��Q"}_ (<0du>) ��N�8��Qxe�v (<1du>)08�eQ"}_ (<0du>) ��N�8�eQxe�v (<1du>)0!q�l#��}0Rl\�e
NT AudioContext �v�v�v0W0&ConvolverNode �v�]��V�a�}]�@S�_�	g 102 b 4 P�S�0$!q�l#��}0Rl\�e
NT AudioContext �v AudioParam0)�c�O�v channelCount (<0du>) ���Q�{
W [1, <2du>]0
�}]�@S�S#j�s
N&{TgQ�[�s0+channelCountMode !q�l�_  explicit  ���f�p  <0s> 08�eQxe�v (<0du>) �_��N�e 1 0R <1du> KN��08��Qxe�v (<0du>) �_��N�e 1 0R <1du> KN��0'�Sxe  maxDelayTime  �_��N�e 0 0R <0d> KN�� (+T)02HTMLMediaElement HQMR�]#��}0R
NT�v MediaElementSourceNode0!qHe�v HTMLMediaElement0/OfflineAudioDestinationNode(<0du>, <1du>, <2d>)$�[��c�Rw��^ (<0du>) �[�xec�Rw��^ (<1du>) �_��v&{0!q�l�f\P�]ܕ���v AudioContext0!q�l|~�~�]ܕ���v AudioContext0+�}]�@S'Y\ (<0du>) �_�/f�N�v!k�e�N�_��N�e 256 0R 16384 KN��08�eQ�S��8��Q�S��vxe�v
N����/f��08�eQ�S�xe�v (<0du>) ��N�g'Y<P (<1du>)08��Q�S�xe�v (<0du>) ��N�g'Y<P (<1du>)0!channelCount !q�l�_ <0du> ���f�p <1du>0�c�O�v  curve  <P (<0du>) 
N��\�e 20$�c�O�v�S�xe�v (<0du>) ���Q�{
W [<1du>, <2du>]0<!q�l(W  StereoPannerNode  
N-��[  channelCountMode  l\'`: 
NAQ1�  max 0'�c�O�v smoothingTimeConstant <P���Q�{
W [0, 1]06!q�l(W  PannerNode  
N-��[  channelCountMode  l\'`: 
NAQ1�  max 0�c�O�v maxDecibels \�ebI{�eNP�0�vj<P
N��/f��0<0s> �_�/f^���xe0<0s> �_�/fckxe0PA(�c�O�v fftSize (<0du>) ���Q�{
W [<1du>, <2du>]0�c�O�v minDecibels 'Y�ebI{�e
NP�0
|vu*g�w�v㉼x/���07!qHe�v AudioBuffer0�`
N��O(u�O�  audioprocess  �N�N�v AudioBuffer0*gHQ|T�S_U�RKNMR!q�l|T�S\Pbk0MediaStream �l	gsSBf�f�v0.!q�l\8��Q�S�xe�v�p 0 �v ScriptProcessorNode #��}0R�NUO�v�v0W�{ޞ0!q�l-��[�}]�@S��V�p�}]�@S�]-��[0-!qHe�v ArrayBuffer0�`�_��c�OS+T��㉼xKN�
�nj�e�v ArrayBuffer0�c�O�vc�R�p Null b!qHe�v^��W07 StartInChannel  <P (<0d>) ��N��O�n AudioBuffer (<1du>) �vw��^08 StartInChannel  <P (<0d>) ��N��v�v0W AudioBuffer (<1du>) �vw��^0*g#��}0Rc�[�v�v�v0W08��Q (<0du>) *g#��}0Rc�[�v�v�v0W08��Q (<0du>) *g#��}0R�v�v0W�v8�eQ (<1du>)0*g#��}0Rc�[�v AudioParam0PA$*g#��}0Rc�[�v�v�v0W AudioParam ��{ޞ8��Q (<0du>)0<0s> � <1s> ͑�u0'�c�O�v feedback xe�v�Oxe (<0du>) ���Q�{
W [1, 20]0*�c�O�v feedforward xe�v�Oxe (<0du>) ���Q�{
W [1, 20]0,{NP feedback �Oxe
N��/f��0�\��	gNP feedforward �Oxe�_�/f^���<P0+�c�O�v magResponse w��^ (<0du>) \�ebI{�eNP� (<1du>)0-�c�O�v phaseResponse w��^ (<0du>) \�ebI{�eNP� (<1du>)0frequencyHz w��^�_�/f^���<P0!q�lܕ��ck(Wܕ��b�]ܕ���v AudioContext0!q�l(W AudioContext ܕ��KN�_#��}0!q�lܕ�� OfflineAudioContext0'suspendTime' �Sxe�_�/f^���xe0)!q�l(Wkub� <0du> �c�[�f\P��V�p�['Y�ebI{�e <2du> �v=~I�o�g��w��^0"!q�l(Wkub� <0du> �c�[�f\P��V�p�[�e�e�vMR�vkub� <1du>0!q�l(Wkub� <0du> �c�[YP�f\P0!q�l|~�~�]���Y�v OfflineAudioContext0#!q�l(W AudioContext ܕ���_�^�z�e�v AudioNode0ORTC <0s>: NbYP_xe!qHe0hr=<1x>0ORTC <0s>: ~b
N0R�v&{�v�Nb�0hr=<1x>0ORTC <0s>: ��aԚ
N��0hr=<1x>0ORTC <0s>: ݈nR	�1YWe0hr=<1x>0ORTC <0s>: !qHe�v�rKa0hr=<1x>0ORTC <0s>: ݈n\*g1\�}0hr=<1x>0ORTC <0s>: �S�
N�SO(u0hr=<1x>0ORTC <0s>: *g�w�vI��xhV0hr=<1x>0ORTC <0s>: 
Nf�v�ZԚ^��W0hr=<1x>0ORTC <0s>: ݈nR�YS1YWe0hr=<1x>0ORTC <0s>: !qHe�v�[�x�}o��Sxe0hr=<1x>0ORTC <0s>: *g�[\O0hr=<1x>0ORTC <0s>: !qHe�v RTP �Sxe0hr=<1x>0ORTC <0s>: �P8��zޞM�n1YWe0hr=<1x>0ORTC <0s>: DTLS �N�c1YWe0hr=<1x>0PAORTC <0s>: N,�/���0hr=<1x>0RTCDtlsTransportRTCIceGathererRTCRtpReceiver RTCRtpSenderRTCSrtpSdesTransportPA
\ <0s> �v��Bl�]1u�^8O!jD} <1s> �S�m0!
\ <0s> �v��Bl�]1u�^8O!jD} <2s> ͑�e\T0R <1s>06�]hc�h
\ <0s> (�O�^8O!jD} <1s>) KN��Bl�v�V�a��V�p HTTP j-� <2s> 	g]��z�v�O9e0���f8�eQ!j_ܕ��J�2b�c6RhV8�eQ!j_?��_UJ�2b�c6RhV8�eQ!j_?ܕ����_U!q�l�^�i '<0s>': <1s>0!q�l(W '<1s>': <2s> 
N�WL� '<0s>'0����\NP_xegQ�[�]�}�����S!q�lVR�g�O� '<0s>' �v�}@W (URL)!q�l�d�S6^	g!qHeHTTP�rKa�x�v�V�a
N��	ggQ�[!q�l�^�iˊBlir�N�]��O(u�vˊBlHEAD b GET ˊBl
N��	ggQ�[!q�l㉐g�O� '<0s>' �v_(u�}@W!qHe!j_ navigate 
N/e�c '<0s>' HTTP �e�l09'only-if-cached' �_�S!j_�S��� 'same-origin' ˊBlNw�O(u�FO��O(u '<0s>''no-cors' !j_
N/ec '<0s>' HTTP �e�lO(u 'no-cors' !j_Bf��[te'`l\'`�ar��pzzW[2NHeaders �p
N�S��PA!q�l���S0!q�l�S�_�e�v ReadableStreamReader0!q�l�S�_�e�v WritableStreamWriter0!q�l�WL� Error WritableStream0/!q�lˑ>e ReadableStreamReader 
\ ReadableStream �v���[0/!q�lˑ>e WritableStreamWriter 
\ WritableStream �v���[0WritableStreamWriter ���[�]ˑ>e0!q�l�[eQ0WritableStream �]aYܕ��0WritableStream �]
N(W1\�}�rKa0WritableStream �]ˑ>e0!q�l�WL� abort() WritableStream0UnderlyingSink abort() �d�V�OY�r�l0!q�l�WL� close() WritableStream0UnderlyingSink close() �d�V�OY�r�l0UnderlyingSink start() �d�V�OY�r�l0UnderlyingSink write() �d�V�OY�r�l0HTTP�rKa�x�ar�(W 200 0R 599 �{
WgQ�gQ+T	�0*HTTP ͑�e\T�rKa�x�a�p 301030203030307 b 308 vQ-NNP0PA-serviceWorker.<0s> �V�p <1s> -N
N�[hQ�vgQ�[b;N_jP�6R�m�0R�bU}0#�P} F12 ��|v�]wQBf>�Bf�BfhV
NgB}bk
g�R�]\O�0(*g�w�v x-ms-windowscomponent /��� (<0s> <1x>)Lx-ms-windowscomponent.attach 1YWe��V�p�c�OKNCQ�N-N�_�v RoActivateInstance 1YWe (<0s> <1x>)Tx-ms-windowscomponent.attach 1YWe��V�p�c�O�vCQ�N-N�_
N/e�c IWindowsComponentFactory �Nb� (<0s> <1x>)`x-ms-windowscomponent.attach 1YWe��V�p IWindowsComponentFactory::LaunchAsync �vCQ�N-N�_�[\OTek1YWe (<0s> <1x>)�x-ms-windowscomponent.attach 1YWe��V�p"uu IAsyncOperation::put_Completed �v IWindowsComponentFactory::LaunchAsync CQ�N-N�_�[\O1YWe (<0s> <1x>)ax-ms-windowscomponent.attach 1YWe��V�p IWindowsComponentFactory::LaunchAsync �vCQ�N-N�_�[\O^�Tek1YWe (<0s> <1x>)PA,[Ping] �Sޞ '<0s>' !q�l�P� Ping ��Bl0R
N/e�c�v�vj '<1s>'05[Preload] �Sޞ '<0s>' �p '<2s>' �v <1s> nj�n�^�z�N�_*gO(u�v�HQ	�eQ��Bl0D[Preload] �Sޞ '<0s>' �p '<3s>' �v <2s> nj�nVf��^�z!qHe�v�v0W '<1s>' �v�HQ	�eQ��Bl�FO�]�bU}0A[Integrity] �Sޞ '<0s>' �p '<3s>' �v <2s> nj�nc�[�N
N/e�c�v�[te'`�[�x�}o�o�{�l '<1s>'00[Integrity] �Sޞ '<0s>' !q�l�p '<2s>' �v <1s> nj�n�j�g�[te'`0@[Mixed-Content] �Sޞ '<0s>' �](W�[hQ�vgQ�[-N	�eQ�FOVf�(W '<2s>' 	�eQ
N�[hQ�v <1s> nj�n0B[Mixed-Content] �Sޞ '<0s>' �](W�[hQ�vgQ�[-N	�eQ�N(W '<2s>' 	�eQ�N�S\���v
N�[hQ <1s> nj�n0-[XHR] �Sޞ '<0s>' Vf�O(u!qHe�v response type '<1s>'04[CORS] �Sޞ '<0s>' !q�lAQ1� '<2s>' �v cross-origin <1s> nj�n0k[CORS] �Sޞ '<0s>' !q�l�p '<3s>' �v cross-origin <2s> nj�n(W Access-Control-Allow-Origin response header -N~b0R '<1s>'0�[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin <1s> nj�n(W credentials !j_�p 'include' Bf�(W Access-Control-Allow-Origin response header -N~b0R '*'0�[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin <1s> nj�nO(u credentials !j_ 'include' �c�Q��Bl�FO~b
N0R<P�p 'true' �v Access-Control-Allow-credentials response header0g[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin <1s> nj�n~b0RYP Access-Control-Allow-credentials response headers0b[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin <1s> nj�n~b0RYP Access-Control-Allow-Origin response headers0N[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin <1s> nj�n~b0RYP Timing-Allow-Origin �V�aj-�0C[CORS] �Sޞ '<0s>' �p '<1s>' �v cross-origin ��Bl\���NVf�͑�e\T�v preflight ��Bl0o[CORS] �Sޞ '<0s>' �p '<1s>' �v cross-origin ��Bl\���N!q�l�c�O Access-Control-Allow-Methods response header �v preflight ��Bl0o[CORS] �Sޞ '<0s>' �p '<1s>' �v cross-origin ��Bl\���N!q�l�c�O Access-Control-Allow-Headers response header �v preflight ��Bl0�[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin ��Bl\���N(W Access-Control-Allow-Headers response header n�U-N�l	g Request Header '<1s>' �v preflight ��Bl0�[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin ��Bl\���N(W Access-Control-Allow-Methods response header n�U-N�l	g Request Methods '<1s>' �v preflight ��Bl0_[CORS] �Sޞ '<0s>' �p '<2s>' �v cross-origin ��Bl(W�c�O�v<P��N�dk�{
WBf�O(u�N '<1s>' �v Access-Control-Max-Age g'Y<P0(vu VRDisplay &N*gHT�skub�Bf�!q�l�WL� submitFrame \Omi0�VRDisplay.requestPresent m�0R�bU} - HT�s�v HTMLCanvasElement �vgQ�[� VRDisplay 
N�v�[0Event.preventDefault() �_�/f(WHT�s�v HTMLCanvasElement 
N_|v webglcontextlost �N�Ng��|T�S08VRDisplay.requestPresent m�0R�bU} - !q�lR�c0R� VRDisplay �v�[�vWb_aS0RpS�SX[�e�j>e'Y.~\�xe�,{ %1 ��qQ %2 �qQ %1 �	(W�e"}_jd|-N��_UPA
I�o�!j_�<0s>0<0s>0<0s>0%�'�	X.	C	-	V-	A	PqFt��t�	Z++	Y	X.	C	-	V-.b	.\	A
	PqF
C�
V�
F�
P�r�	B4	U?	I8
B4
U?
I8
Z�	 �
j�	E�	L�!�	Q�
N�	L�	SF	FC�KL	X.	C	-	V-.br�	Z++	Y�A	X.	C	-	V-.br�	Z++	Y�A�e��FC
C��FC
C��FC �	M�	&�	(�	$�		%�	#�		'�	%�	'�	%�	'�	k�	��	��	m�	��	T�	K�	J�	U�	A�	Z�	
�	��	11�00�11�PP�RR�RR�� ��X���ҩҴ���V�aBf��

���Y

\Pbk

nj
�

nj
�

Error

Warning

Verbose

8Microsoft-IEResp-MSHTML

8Microsoft-IE-JSDumpHeap

$Microsoft-IE

(capturing phase

at target

(bubbling phase

 setTimeout

 setInterval

$setImmediate

4requestAnimationFrame

,telephone number

None

,HostConfiguration

$LoadFromInfo

$MissingAnchor

8ScrollingToFoundAnchor

0ScrollingToPosition

4BookmarkTaskComplete

$SwitchMarkup

4ContinuationHostRules

@ContinuationIncompletePaint

0LoadStatusParseDone

4SwitchMarkupEmptyTab

@LoadStatusParseDoneEmptyTab

Unknown

$CanvasElement

$CanvasPattern

(CanvasGradient

Markup

Blob

ActiveX

$ImageElement

,MSWebViewElement

,WebGLSmallObjects

,WebGLLargeObjects

$MediaElement

None

 Concurrent

 Synchronous

None

Forced

 TotalWeight

 TotalCount

NewWeight

NewCount

Normal

 Concurrent

Building

Enabled

Disabled

Running

Inertia

Ready

Suspended

Invalid

Enabled

Ready

Running

Inertia

Suspended

Disabled

Stopped

8IHTWaitForSecondContact

8PostWMAppIHTPointerDown

$IHTSetContact

HCrossSlideDragHasPendingPreview

THoldDragIgnoreDManipDragDropDragging

`DraggableTouchTargetClearDmanipFromDragging

hDraggableTouchTargetAddDragPreviewToRootVisual

DDraggableTouchTargetPassivate

dDraggableTouchTargetReleaseDragPreviewPending

dDraggableTouchTargetReleaseDragPreviewActive

lDraggableTouchTargetTransferDragPreviewOwnership

TDraggableTouchTargetHandlerOnDropped

Begin

$Manipulation

 GestureTap

 GestureHold

,GestureCrossSlide

,GesturePinchZoom

End

Ready

Preselect

Selecting

Dragging

Cancelled

Committed

Initial

 ShouldPulse

TooBig

4ThinVerticalRectangle

8ThinHorizontalRectangle

TooSmall

 ThinColumn

Row

,VerticalRectangle

Column

0HorizontalRectangle

Ideal

Unzooming

Rest

$Manipulation

Inertia

Preselect

Selecting

Dragging

Cancelled

Committed

Stopped

(Unknown Reason

4Prerendering Disabled

TReached Maximum Number Of Prerenders

0Invalid URL Scheme

MetaTag

0Navigation Failure

$Duplicate URI

@Failed To Create Hidden Tab

HPage Was Previously Prerendered

DUninitialized Preload Manager

@Prerendering CV Restricted

DDefer Active-X Object Loading

@Defer Audio/Video Playback

@Defer History Object Action

8Defer Background Sound

,Defer For Suspend

4Defer Open New Window

0Defer Window Focus

4Defer Session Storage

No Target

WebMaster

 Rules Based

Document

Element

Free

Offer

IndexedDB

$CacheStorage

TINDEXED_DB_DATABASE_HANDLE_SERIALIZE

lINDEXED_DB_DATABASE_OPENBLOCKED_HANDLE_SERIALIZE

XINDEXED_DB_OBJECTSTORE_HANDLE_SERIALIZE

LINDEXED_DB_INDEX_HANDLE_SERIALIZE

PINDEXED_DB_CURSOR_HANDLE_SERIALIZE

XINDEXED_DB_TRANSACTION_HANDLE_SERIALIZE

HCACHE_STORAGE_HANDLE_SERIALIZE

8CACHE_HANDLE_SERIALIZE

@CACHE_PUT_HANDLE_SERIALIZE

0CreateCacheStorage

0DeleteCacheStorage

8DeleteAllCacheStorages

,CacheStorage_open

,CacheStorage_has

0CacheStorage_delete

0CacheStorage_match

,CacheStorage_keys

0CacheStorage_close

Cache_put

0Cache_put_complete

 Cache_match

(Cache_matchAll

$Cache_delete

 Cache_keys

 Cache_close

Readback

8CommandDoesNotSupportIR

4CommandListRequested

$WebGLContext

$ContentScript

4ContentScriptPolyfill

4InjectedContentScript

@ContentScriptFramePolyfill

$EventHandler

 HostBridge

,default canceled

Dimmediate propagation stopped

0propagation stopped

0Child List Changed

,Attribute Changed

8Character Data Changed

0CrossSlideVertical

4CrossSlideHorizontal

PinchZoom

Vertical

 Horizontal

 SelectOnly

 SelectDrag

HoldDrag

�4VS_VERSION_INFO��aJaJ?StringFileInfo�040404B0LCompanyNameMicrosoft CorporationTFileDescriptionMicrosoft Edge Web s^�Sj%FileVersion11.00.19041.1 (WinBuild.160101.0800)2	InternalNameEDGEHTML�.LegalCopyright� Microsoft Corporation. All rights reserved.JOriginalFilenameEDGEHTML.DLL.MUIXProductNameMicrosoft Edge Web Platform@ProductVersion11.00.19041.1(OleSelfRegisterDVarFileInfo$Translation�<HTML>
<HEAD>
<BODY bgcolor="#000080" text="#FFFFFF">
</BODY>
</HTML>PADhtml {
    overflow-y: scroll;
}

#content-container {
    display: flex;
    flex-direction: column;
}
#aboutcompat-description, #filters, #emielist-information-container {
    max-width: 40rem;
}

.table, .table > * {
    display: block;
    width: 100%;
    max-width: 100%;
}
.table ul, .table li {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.table > ul > li {
    display: flex;
    flex-direction: row;
    width: 100%;
    max-width: 100%;
    min-width: 34rem;
}
.table > ul > li > * {
    display: block;
    text-align: left;
    padding: 16px;
}
.table > ul > li > :nth-child(1) {
    padding-left: 42px;
    word-break: break-all;
    flex: 4 0 10rem;
}
.table > ul > li > :nth-child(2) {
    flex: 1 0 7rem;
}
.table > ul > li > :nth-child(3) {
    flex: 1 0 7rem;
}
.table > ul > li > :nth-child(4) {
    flex: 1 0 10rem;
    word-break: break-all;
}
.table > ul > li:nth-child(2n) {
    background: rgba(242,242,242,1);
}
#table-header > * {
    vertical-align: top;
    padding-top: 0px;
    padding-right: 10px;
    color: rgba(137,137,137,1);
    font-size: 0.81rem;
    line-height: 1.2307;
    font-weight: 400;
}

.new-checkbox {
    margin-top: 24px;
}
.new-checkbox input[type=checkbox] {
    float: left;
}
[dir=rtl] .new-checkbox input[type=checkbox] {
    float: right;
}
.filter-list-info {
    margin-top: 12px;
    margin-left: 28px;
    font-size: 0.68rem;
    display: block;
}
.list-description {
    display: none;
}
.list-description.active {
    display: block;
}
.toggle-description {
    background: none;
    padding: 0;
    cursor: pointer;
    color:rgba(0, 108, 216, 1);
    border: none;
}

#emielist-information-container {
    display: flex;
    flex-direction: column;
    background-color: rgba(242,242,242,1);
    margin-bottom: 24px;
    padding: 24px;
}
#emie-update-status {
    font-size: 12px;
    line-height: 1.333;
    margin-top: 12px;
}
#emie-update-button {
    margin-top: 12px;
    min-width: 110px;
    width: 110px;
    color: rgba(0,0,0,1);
    background-color: rgba(0,0,0,.2);
    font-size: 15px;
    line-height: 1;
    padding: 8px;
    border: 2px solid transparent;
}
#emie-update-button:hover {
    border-color: rgba(0,0,0,.4);
}
#emie-update-button:active {
    background-color: rgba(0,0,0,.4);
    border-color: transparent;
}
#emie-update-button.active{
    display: none;
}

@keyframes orbit {
    0% {
        transform: rotate(225deg);
        opacity: 1;
        animation-timing-function: ease-out;
    }
    7% {
        transform: rotate(345deg);
        animation-timing-function: linear;
    }
    30% {
        transform: rotate(455deg);
        animation-timing-function: ease-in-out;
    }
    39% {
        transform: rotate(690deg);
        animation-timing-function: linear;
    }
    70% {
        transform: rotate(815deg);
        opacity: 1;
        animation-timing-function: ease-out;
    }
    75% {
        transform: rotate(945deg);
        animation-timing-function: ease-out;
    }
    76% {
        transform: rotate(945deg);
        opacity: 0;
    }
    100% {
        transform: rotate(945deg);
        opacity: 0;
    }
}
#progress {
    display: none;
    margin-top: 12px;
    margin-bottom: 24px;
    margin-left: 7px;
    width: 20px;
    height: 20px;
}
#progress.active {
    display: block;
}
#progress span {
    position: absolute;
    transform: rotate(225deg);
    animation: orbit 5.5s infinite;
    width: 25px;
    height: 25px;
}
#progress span::after {
    width: 3px;
    height: 3px;
    content: "";
    position: absolute;
    border-radius: 100%;
    background: rgba(0, 111, 198, 1);
}
#progress span:nth-child(2) {
    animation-delay: 240ms;
}
#progress span:nth-child(3) {
    animation-delay: 480ms;
}
#progress span:nth-child(4) {
    animation-delay: 720ms;
}
#progress span:nth-child(5) {
    animation-delay: 960ms;
}

@media (min-width: 450px) and (max-width: 899px) {
    #emielist-information-container {
        flex-direction: row;
        margin-bottom: 36px;
    }
    #emie-update-button, #progress {
        margin-top: auto;
        margin-bottom: auto;
        margin-left: auto;
    }
    #emielist-description {
        margin-right: 36px;
    }
}

@media (min-width: 900px) {
    #content-container {
        flex-flow: row wrap;
    }
    #aboutcompat-description {
        max-width: 600px;
    }
    #emielist-information-container, #filters {
        width: 15rem;
        margin-left: auto;
    }
    #filters {
        order: 1;
    }
    .table-section {
        width: calc(100% - 18rem);
    }
}
PADvar table;
var EMIEListUrl;
var EMIEListVersion = 'unknown';
var CVListUrl;

function DomainRowEntry(domainEntry, listName) {
    'use strict';
    this.Domain = domainEntry.site;
    this.SiteList = listName;
    this.Section = domainEntry.section;

    if (domainEntry.uaString) {
        this.UaString = domainEntry.uaString;
    }
    if (domainEntry.transition === "IE11" || domainEntry.transition === "true") {
        this.Transition = "true";
    }
}

function updateCountOfResults() {
    'use strict';
    const quantity = table.countOfResults();
    document.getElementById('SitesCount').innerHTML = `Included sites: ${quantity} result${(quantity !== 1) ? 's' : ''}`;
}

function createTable(arrayObj) {
    'use strict';

    var columns = [
        new Column('Domain', 'Domain', true),
        new Column('List Type', 'SiteList'),
        new Column('Open in Internet Explorer 11', 'Transition', true),
        new Column('User Agent String', 'UaString', true),
    ];
    table = new FlexTable('mainTable', arrayObj, columns);
    updateCountOfResults();
}

function getDomainFromArray(arrayObj, url) {
    'use strict';
    let i;
    for (i = 0; i < arrayObj.length; i++) {
        if (arrayObj[i].Domain === url) {
            return arrayObj[i];
        }
    }
    return null;
}

function loadJSON(arrayObj, apiResponse, listName) {
    'use strict';
    let i, jsonItem, DomainEntry, jsonObj;

    if (apiResponse && apiResponse.length > 0) {
        jsonObj = JSON.parse(apiResponse);
        for (i = 0; jsonObj.data && i < jsonObj.data.length; i++) {
            jsonItem = jsonObj.data[i];
            if (jsonItem.site) {
                arrayObj.push(new DomainRowEntry(jsonItem, listName));
            }
        }
    }
}

function displayEMIEListVersion() {
    'use strict';

    let div = document.getElementById('emie-version');

    if (!div) {
        div = document.createElement('div');
        div.setAttribute('id', 'emie-version');
        div.setAttribute('class', 'text-body');
        document.getElementById('emielist-description').appendChild(div);
    }

    div.textContent = `Version number ${EMIEListVersion}`;
}

function displayXMLLink(containerId, url) {
    'use strict'
    const container = document.getElementById(containerId);
    const xmlLinks = container.getElementsByClassName('xml-url');

    if (url) {
        if (xmlLinks.length > 0) {
            xmlLinks[0].setAttribute('href', url);
        } else {
            const link = document.createElement('a');
            link.setAttribute('href', url);
            link.setAttribute('class', 'filter-list-info xml-url');
            link.setAttribute('target', '_blank');
            link.textContent = 'View raw XML file';
            container.appendChild(link);
        }
    } else if (xmlLinks.length > 0) {
        container.removeChild(xmlLinks[0]);
    }
}

function getConfiguration() {
    'use strict'
    let jsonObj;

    try {
        const configuration = window.external.GetEMIEListConfiguration();
        jsonObj = JSON.parse(configuration);
    } catch (ex) {
        jsonObj = {};
    }

    EMIEListUrl = jsonObj.EMIEListUrl;
    EMIEListVersion = jsonObj.EMIEListVersion || 'unknown';

    try {
        CVListUrl = window.external.GetCVListURL();
    } catch (ex) {
        // do nothing
    }
}

function createData() {
    'use strict';
    let emieData, cvData;
    document.getElementById('search-box').value = '';

    let arrayObj = [];
    if (document.getElementById('checkbox-emielist').checked) {
        try {
            emieData = window.external.GetEMIEListData();
            loadJSON(arrayObj, emieData, 'Enterprise Mode');
        } catch(ex) {
            //do nothing
        }

    }
    if (document.getElementById('checkbox-cvlist').checked) {
        try {
            cvData = window.external.GetCVListData();
            loadJSON(arrayObj, cvData, 'Compatibility List');
        } catch(ex) {
            //do nothing
        }
    }
    createTable(arrayObj);
}

function startSearch() {
    'use strict';
    const searchValue = document.getElementById('search-box').value;
    table.search(searchValue);
    updateCountOfResults();
}

function onClear() {
    'use strict';
    document.getElementById('search-box').value = "";
    startSearch();
}

function setDescriptionButtons() {
    'use strict'
    const buttons = document.querySelectorAll('.toggle-description');

    function displayContent(button, content) {
        if (content.classList.contains('active')) {
            content.classList.remove('active');
            content.setAttribute('aria-hidden', 'true');
            button.setAttribute('aria-expanded', 'false');
            button.textContent = "View list description";
        } else {
            content.classList.add('active');
            content.setAttribute('aria-hidden', 'false');
            button.setAttribute('aria-expanded', 'true');
            button.textContent = "Hide list description";
        }
    }

    for (let i = 0; i < buttons.length; i++) {
        const content = buttons[i].previousElementSibling;

        buttons[i].setAttribute('id', `button-${i}`);
        buttons[i].setAttribute('aria-expanded', 'false');
        buttons[i].setAttribute('aria-controls', `content-${i}`);

        content.setAttribute('id', `content-${i}`);
        content.setAttribute('aria-hidden', 'true');
        content.setAttribute('aria-labelledby', `button-${i}`);

        buttons[i].addEventListener('click', () => {
            displayContent(buttons[i], content);
        });

        buttons[i].addEventListener('keydown', (event) => {
            // Handle 'space' key
            if (event.which === 32) {
                event.preventDefault();
                event.target.click();
            }
        });
    }
}

function updateEMIEListData() {
    'use strict'
    const descriptionElement = document.getElementById('emielist-description');
    var button = document.getElementById('emie-update-button');
    var progress = button.previousElementSibling;

    var statusText = document.getElementById('emie-update-status');
    if (!statusText) {
        statusText = document.createElement('div');
        statusText.id = 'emie-update-status';
        descriptionElement.appendChild(statusText);
    }
    statusText.textContent = 'Checking for updates...';

    button.classList.add('active');
    button.disabled = true;
    progress.classList.add('active');

    var initialCounter = window.external.UpdateEMIEListData();
    const initialVersion = EMIEListVersion;

    var interval = setInterval(function () {
        let status = window.external.GetEMIEListUpdateStatus(initialCounter);
        if (status !== 'Downloading') {
            if (status === 'DownloadSuccess') {
                getConfiguration();
                if (initialVersion === EMIEListVersion) {
                    statusText.textContent = 'No updates available.';
                } else {
                    statusText.textContent = 'List successfully updated!';
                    loadData();
                }
            } else if (status === 'DownloadFailure') {
                statusText.textContent = 'There was a problem updating the list. Please try again.';
            }
            clearInterval(interval);
            button.classList.remove('active');
            button.disabled = false;
            progress.classList.remove('active');
        }
    }, 500);
}

function loadData() {
    'use strict'
    createData();
    getConfiguration();
    displayEMIEListVersion();
    displayXMLLink('checkbox-emielist-container', EMIEListUrl);
    displayXMLLink('checkbox-cvlist-container', CVListUrl);
}

window.addEventListener('load', setDescriptionButtons);
window.addEventListener('load', loadData);<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 8 4" xml:space="preserve">
<g>
	<path d="M7.5,0l0.4,0.4L3.9,4.3L0,0.4L0.4,0l3.6,3.6L7.5,0z"/>
</g>
</svg>
PAD<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 8 4" xml:space="preserve">
<g>
	<path d="M3.9,0.7L0.4,4.3L0,3.9L3.9,0l3.9,3.9L7.5,4.3L3.9,0.7z"/>
</g>
</svg>
PAD<HTML>
<meta http-equiv="Content-Type" content="text/html; charset=big5"/>
</HTML>�pOS/2JZz^�`VDMX�^�q\�cmap���<2cvt 	�	�p*fpgm����Ygasp�glyf��0
x�head�S�9�6hhea�8$hmtxA�2��\�loca�������maxp���t nameކK����post�Qw�� prepx��������3�3�f
MS  @
�0 ��		



  !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������&��n
 ������!�#�1�8�;�@�I�O�\�b�i�n�t�{�������������������-�8����������������������������$�-�2�F�n�t��������
�7�@�B�F�M�U�]�e�g������i�~��
���!�`�l�����D�M�P�_��J�V����������4������&�-�0��
 ���
���!�#�'�3�;�>�I�M�\�b�g�k�t�z�������������������)�8����������������������������!�,�1�F�n�t��������
�7�@�B�E�M�U�]�e�g������i�|�����!�`�k�����A�M�P�_��J�V����������4������&�-�/�������1��������������yuXV�����������}skcaPKFA9'������x~FFC5,#��#���v8.
��_WUG�bW����������
�
�
��������t1
gA3 !45"'()
fIJhl��������*Up���@�@Up���@�@@
	,K�	PX��Y����D�	_^-,  EiD�`-,�*!-, F�%FRX#Y � �Id� F had�%F hadRX#e�Y/ �SXi �TX!�@Yi �TX!�@eYY:-, F�%FRX#�Y F jad�%F jadRX#�Y/�-,K �&PXQX��D�@DY!! E��PX��D!YY-,  EiD�`  E}iD�`-,�*-,K �&SX�@�Y�� �&SX#!�����#Y �&SX#!�����#Y �&SX#!����#Y �&SX#!�@���#Y �&SX�%E��PX#!��#!�%E#!#!Y!YD-,KSXED!!Y-
����v3!%!!�����Jv���N�	)�+��
�
���01!5!!5!!5!�����������-		7�Z��Z���Z��Z�m!#!5!3�@��@��@��@����@��

		'	7	
�N�Z�M�MZ��NZ��Z��M�MZ��NZ��Z�N�Z��7s��%"#"&#%&'%4&5465%67%26323%>54&'7'.''.#"'%%732677>772#".54>2>54.#"����D���				���D�ן���)D�				�D)����V��A&?Д0/��?&@ ��V��VA&?Д0/��?&@ V��N�f;;f�NN�f;;f�N7`H))H`77`H))H`$				���D�ן���)D�				�D)������D����/0��?&@ V��V��A&?Д/0��?&@ ��V��VA&?�j;f�NN�f;;f�NN�f;��)H`77`H))H`77`H)�2#"&'!+!'7!32!>3!'.'>?!@N�/�TiyA@�����@AyiT�/�N@"�s~RR~�"��C=;_B$@@$B_;=C�$+On��nO+$�*7!3!"54>3	"6$;	���������X@u���|��@�=jef9W�uQ�~ʀ��u������3c�[�|�ǣu@��@�@�
$p��\pr����@!5!����%12!!!4>3!!)!!!!!!!2#"&546�/#���#/����������&&&&#/����/#���������&&&&'C_u".54>32!".54>322#"$.54>$2>54.#"2>7#".'7�.##..##.�.##..##.�e�仅II�������仅II����{�Ǥu@@u���{{�Ǥu@@u���|I�v_!s)x��[\��x)s!_v��#..##..##..##..#�I�������仅II�����仅I��@u���|{�Ǥu@@u���{{�Ǥu@�(JjA:Q�\22\�Q:AjJ(����
!!3!!����K������K�����[	'	��]�]Z��Z��^Z��Z����';2#".54>!2#".54>!2#".54>.##..##..##..##..##..##.�#..##..##..##..##..##..#�#'+/!35!35!355!!5!!!355!�������������������������������������������������������������
�	
 %!!5#!'!!!	!		!	)3!�����D����x�������D������<�6������D�������������<��<���D!.'!!!!!!��$I%%I$�
f�g(L&��������p�������v�vv�vN�M|�|2����������!!!�%��������S��		'!5!7M��SZ����Z��S�SZ�ZS�	!	!��Z�S�Z��@���Z��Z��7#"$.54>7!5!#32>54.'7��nI�������仅IJ��{���u��H@u���|{�Ǥu@a��"�-����ì���仅II������D��)8���{�Ǥu@@u���|��({!!!4>32)4.#"!!�N��mm��N��:g�RR�g:�����vl��RR��l��vQ�l>>l�Q�
���-I'			7.52>7>323>5&$'.#""D���D��DD��Dw�շ�LS���HU�f3\WT+H���SL����ICt���ff˸�tC���~D�QQ�D~��^D��D���D��D��F����� :.75
).: �����з�9�~�ӽ��;;������PQ,)),QP�)E#53#3.52>7>323>5&$'.#"����@w�շ�LS���HU�f3\WT+H���SL����ICt���ff˸�tC���~D�QQ�D~������F����� :.75
).: �����з�9�~�ӽ��;;������PQ,)),QP)72#"$.54>$2$7654.#"�仆II�������仆II�����+|�kp@u���!kp@u���|���|I�������仆II�����仆I��pk�|�դ|�ǣu@5|+�|�ǣu@pk		!!.'>7!!�������������&L(g�f�
���
f�g(L&�������\|�|M�N�-N�M|�|2���",6!!5!2>3!!">3!!2.#!!.#!#!#!"!����X�EE�X���F�6;�C��C�;6�F��& BGO.�������.OGB &����6666�/-�!!�!!�-/�/!�!/�!!!!!!�����������!!����5!#'	!!3���]Z�X�^����������^Z���]���[�����!#!!3!5���[������[�����[���[���
	3#!#3		'	7	%�[[������������Z���Z��Z�����[J�����Z��ZZ�����!!.5467	7	[���m���:f�`�����l��A##A���f�:���`�f����w��'5=C'>54.''654''>54&'3#!!%#3�Z�`11`�ZZQ}V--V}Q�?aC##Ca?[luul�HNNHZ6::6��[[����%[����%�Z�����ZZQ���rr�нQ�?���XY���?[l��l�H�ff�HZ6�MM�6���������	��������
�����33#���������%		�Z��Z�^�]Z��Z�]�][�%	7	'��^Z��Z]��Z��Z��+/###".'##3!3>7#!!�x�?H&2@(5N8%	H�?x����$
�
$������Uemj`H+Ju��{&������GbpjXXjpbGt�
&2AO[ju��2#"$.54>$.'4'!!62>7!>54&'!!.5467!"!.!>.'>7!�仅II�������仅II����&l��T$:- �%��k%��1UH9,�N,9HU�		�"		��%k��%�1UH9,�,9HU��T��l&M -:� &l��T$:- T��l&�� -:I�������仅II�����仅I��Q�v\2pwz<���{@AA@{�6Xorj''jroX6�@AA@@AA@�{@AA@{�6Xorj''jroX61\v�Q<zwp�cQ�v\2pwz<�1\v�Q<zwp��+a2#".54>3267>54.#"#"'#327.#"'7	7>32&54>7�]�zFFz�]]�zFFz��2WuB/Z'�EK3WtB/Z'�!?CO2"��271�
�,,/9l.�Ȉ-9�~-F�c'M&{&7!�Fz�]]�zFFz�]]�zF�@BuW2�'Z�'Z/BtW3I!7&�
�172�
! �����-�8�-FJ
{"1OD?!��+?#4&$#"#4>7.54>3232>54.#"2�ۙR�u��kƫ�c6�T�ۇN|W/d�酅�d/W{��Q��jj��QQ��jj��QM/������u6c���k�ܨ1*x��X��dd��X��y	j��QQ��jj��QQ��S��[	'!!!'	!!�ZS�����SZ-�����[�RZR�����%RZ�S%���������%[�	��%���%�%����%�	!%�%�%E#"'&'&'.'732>54.#"!!3>7676$32mZ�m0PPN����Ϯ����]/E{(���{�Ǥu@@u���{��ө7)��(^~�.��������Z�[q������NP97ee�E�Q"��`@u���|{�Ǥu@I��t��� =}[^bPN��+>32	%.'>54.#"20����%0|BEz[5�Fj�#9��0I
-@R.�.$!9K+&91,�B|0�۞y%025[z�v#�j:%�R.R@-
�,19&+K9!$.#72#"&'#"&547.54>2>54.#"@a���\22\���a}�`��&OT2\���awҜ[[��wwҜ[[��2\���aa���\2TO��&`�}a���\2�[��wwҜ[[��wwҜ[��--	7	�Z���Z��-Z��.Z�.��#-159##!".5#5!54>3!2)5!!3!265%#3#3#3�4F(�(F4�#.�.#������&&���������@(F44F(���.##.����@&&�������'2!'4>3!!!33!#!#3!!.#���#.����������f���#.����.#��������������7;?2#".54>2>54.#"3#3#���֯}DD}�����֯}DD}���rչ�l<<l���rsԹ�l<<l���3����D}�����֯}DD}�����֯}D�<l���srչ�l<<l���rrչ�l<����!!4.#"#4>32!!��;g�RR�g;�N��mm��N�������R�g;;g�Rm��NN��m�������@D2>654&#"73!'4>3!2#!#3!5!33!!8*I6�3��^�H[)
�L"��I���%�#..#����[%���������5I*'J�3^y��'	
�L�",���.##.�������[[�����'T2#".54>2>54.#"%!!3>54.#"#4>$325]F((F]55]F((F]5.##..##.J��{��u��H@u���{{�Ǥu@�I�����仅I(F]55]F((F]55]F(��#..##..#�����C���7���{�Ǥu@@u���{�仅II���%%��+?			7	'	7%'	2#".54>2>54.#"��Z��n�Z����Z��Z��Z��ZmmZ��O�i<<i�OP�i<<i�P5]F((F]55]F((F]���Zmm��Z��nZ��%��ZZ�Zn��Z�[<i�OP�i<<i�PO�i<��(F]55]F((F]55]F(!!!!)!!55!5!���������������������������������������
!!!	!!��[%%�������%�%�[�����2#".54>��ee�鄄�ee���e�鄄�ee�鄄�e)"!!46.#3!!	4&>7!s�V#	���	#V�s����@D��D@�Ds���S����S���sD�������Y���DE���Z��!!!!!!!���������������������������"!!5!5!5!	'7'7�����D���DnD���D���������������D���D�D���D
		!!������������������ ��@!! ��@���@@���@@�@
"!4.#�Y�c6��6c�X@O�Q��@Q�O@��@	!.467��� ��a��*+)a���`	����@ `�@��� �
%)-!".54>3!"3!63!!"!!7!5!���5]F(+G\2�.##.��<D�.$��������(F]51]G+��#..#^"�$.�����*B2#!#"'4>5	4.5!!/#"#/��+$5&���"��"���"�#/�`.))2B-��/#�'@
&%���-A3()/���[� .))2B-���/�{-A3()/`�@@%".5!!(<*�*<��@Q~��rr��~Q��@�	3	'�@@�������	3#!	�����@�@���	��	5%2$>7#"$.'#!!!5!.#"'6,325��-z2����������H���;����<;�������-z2�A����H�_��&����mD��u��u��I���u��I_��&��mD��u�S-!5!	73��-����ZӀӀ���rZ�*��W���
!!3!!	!3!!!������������������������%��������[��ۥ�����!!!!!!!!�����������������������������������!.2#!!4>5!4.'3�.#"#.���"��		�#.� /)(3A-� .#���-A3()/��$$� 		'	7	�o������o���oo����o���oo���o�5!5353!5!!!5!�����������������������������%�
!!!%!!��%���%����%ۀ�����%��p�
R�	#!#>'47633!4&'2!2672#""&'.>5!+"&#.#!#"&'.'.'326=!""'&=467633!.'>7!""'&=47633!2632!2672�U�U��U�U�{*S*ED
(*S*$(!��fH(N(��3:7"D"��(P((P(?*#@ ��*S**S*u
4i9A(N(�������@�E�E D 
%:$I$173',%�`<y<2
-�`	58_	 !

+Q%�A#".54>32#".5332654.#"32>5Gy�]]�yG3WtBBtW34F((F4�&&4F((F43WtBBtW3��@]�yGGy�]BtW33WtB�(F44F(@��&&(F44F(�BtW33WtB���!!!33'%!!!!!!���[��%����%��[�������%���������������j
69!#33!52>54.'!!5>73���U�V�Ql���(<0�?)$
�@
$)��16"�R^����ޢD��J�Y)@-,,	2:=6''5<92	,,	)>0���}��@@@�2#!!�&(0(&�@@�&� 9H>H9� &�"@T!!!5#".54>32	>54.#"32673!!!2#".54>���J�Ta���\22\���aa���\2�N[��wwҜ[[��wa�KY��.##..##.�%�'(2\���aa���\22\���a3d0�,�9s=wҜ[[��wwҜ[B>���#..##..#��#".5332>5!!�d�酅�d�Q��jj��Q�������dd�����j��QQ��j����'

	#!#	V�U��U�VՒ�����������K���@R�

	#!#	!+������+U���R��@������6��@���!3!3%7��������S������c����������Vt�F�*,�5I!#!5!3#.#"#4>7.54>3232>54.#"�����_�~T�t��rX��uS.�G��pqP��jj��P!>Y�8<i�PO�i<<i�OP�i<������$v��dp��L.Su��Xx޼�*J�j��PP��jB~p_�P�i<<i�PO�i<<i���5353!5!53%!!5!53!5!����������������������������������-Q#"&'#".5467.54>322>54'	&#"3267�+ )Kj��O/��0{CEz[520&)Kj��O6[TR-�vf@]�yG����gDI]�yG�� !8L**LX!B$-RT[6O��jK)��025[zEC{0&/O��jK) +�vf�fGy�]ID��hGy�]#B!��L**L8! W����2#".54>O�i<<i�OP�i<<i��<i�OP�i<<i�PO�i<!!%!!!����������������!5����!!!�3��f���!!!!!!!!3�f���f���3���3���ff����3f��.BVZ^bfjnrvz~���������!!#".54>3!#".54>32!32>54.#"2>54.#"3##5!3+53#53#53#53#53#53#53!3#3#3#3#3#%3#%3#%3#%3#[���[��-2)E^45]E))E]5#��#vE5]E))E]54^E)����.##..##..##..##.�����������������������������������������������������$i:5]E))E]54^E);E)E]54^E))E^4��#..##..#��#..##..#�������������������������������������@h�%!!!������h�hX�@���#'!!#!%!!!#!##!###���������������������������������������!#'!!!3�3�^���+���������^����3�+����1!5!5!!!!!".54>32#4.#"3!�������@BtW33WtBBtW3�4F((F44F(�����������3WtBBtW33WtB(F44F((F4��%)-159=AEIMQUiu!!#".5467.54>32!!#533#3#3##533##5#53#53%#533#3#2>54.#"2654&#"�<�į0Tp??pT02T<!0Tp?1ZM:�!�	�������3��g����������������������&%%%�+;;++;;ͯ>F?pT00Tp?99N`4?pT06L.�������f�����3�������������&%%%�g;++;;++;�%2!!>"7654&!!�)H6 $.��-08%�L"��+U����^�� 6I)%90,�.$��L�"�*�f��^y�
#!!3!5�+����+���+�3�+����7;?%".54>32"32>54.3#3#���֯}DD}�����֯}DD}���sԹ�l<<l���srչ�l<<l��ղ�����D}�����֯}DD}�����֯}D<l���rrչ�l<<l���srչ�l<���������	7	�������y�%'	7	�yn��y�ynny�����
%7	7	��I��H���I��H��H�G�I�'H�G�H�f�
!!	!%!!	���d�g����dg����f�������ff�%!!!��g�����df�����f?/23!52>54.'!2!5>7>73i.��
 ��
 ��0@I���
  
""BF9	*2.(
""#,)
�(��2��				���oy����ny��n����y��y����y��!!4>32)4.#"�N��mm��N��:g�RR�g:����vl��RR��l��vQ�l>>l�Q	���!%	!!!3!!!3#53535353���������[�����������������[�%���[������������������!5!#!!5!!3!!%!��������������������������������������!!%!'7!!7!5!'7����V��VU��V�U�V�UV�����+V��VU�UU�UV��
�,5BMW#!#3!33'!5!!!!!!2+#2654&+2+2>54.#%!#3##����������������������������(F44F(@��&&@5]F((F]5��.##.�@����������[���[�������4F((F4��&&�(F]55]F(��#..#������"	!!5!!5!!5!!5!	'7'7�����D���DnD���Dn���������������D���DnD���Dn)2%7>326	>54.#"�&�&67NID�B�DI�gW�E��������=C=j�QW�<&�&E�Wg�ID�:��DIN76���4��=<�WQ�j=B>f�59=A%7>327.'&'7!7>7%4.#"!!!����&4Ev�ZN�g>�'(O�#h��T����P;42K%+Kf<Dy[6g3��3����V�/�3�=\Y�wE8c�N &L>fKj��G��j*M�2!`9:<gM,6[zC�g��D�A+?�l����5!!!!5��������������G;�@��GQ�@�����Gv�@���G}�@��2��Gt�@��%�G/%�@���%[�G.��@����G^�@���G�@��	!�@��@������3#53����������;Ygu�!#".=!5!54>322!!#".=!5!54>2!!#".=!5!54>4&#"32654&#"32654&#"3265�4F((F4���4F((F4@(F4�4F((F4���4F��(F4���4F((F4�4Fh&&&&�&&&&&&&&�@(F44F(@�@(F44F(@�4F(@�@(F44F(@�@(F4�4F(@�@(F44F(@�@(F4�&&�&&�&&�&&�&&�&&�@�7o";!#".=!#".54>;!54>32!".54>;!54.#"!#";!32>=!@.##.���(F]55]F(��@5]F((F]5@�(F]55]F(��5]F((F]5@��#..#���.##.��#..#��#..#�@5]F((F]5@�(F]55]F(�@5]F((F]5@���(F]55]F(�.##.���#..#���.##.��1?C23.5267>.'&#">5"&'5!!!!!�<`2U�d.Pn��GH��nP.d�U2`�S�F=II=F�SN�RR�N� @ ��(����� 60��X���sa((as���X06 ��8/((/8�h���33���hu�\��!@���MM��(/37Gv������$048<@DHLPTX\`dh2##!#.54>3!7>32'"3.#3!#4&#!"3!2652#"&'.'.54>7>7>>54&'#53.'.'.#"3#!!3#!!3#32>7!5!>7#52+"&5463!4&+"!5!!5!26=!32#".54>2654&#"2#"&5462654&#"%#53!5!;#'3+53!5!#5;!!7!!#!5!#535!3#%!!M%$`��Հ` +%���$_T/-RZ$��� =�<��[u\kU�f���Wdj^I*
	,",01P�QN�M+X##+		+##V-M�s z[(/+O�QJUZRCgr��g|��
M+EQXUI0��{'���3 -- � -- �����f&%%& --  -- ��MM3�Mgg���4���fMM3�4���g��f���L���MM���3%�$��3��7	7"�%U$��$)'"[$��3���M��%_hi/(qrc

	
bpo*+ooa��*R*H�A3
	"%3%3



3%3'3	3'3�- �� --  -����3�3�&%%&�f-  --  -g3333�3333�M33�33M3333��333�MA2	.54>3275>>54.#"	'77.#"i��OLH����HLO��i`�ui;�H��@EH|�^+YUK�1t��$�s7cn�X^�{HDALMO��id�F��WF�di��O4Yt@�HL��?�Z^�|H"1 �7�f��$���<oV3H{�^Z�?��'3?i�2#".54>2>54.#"2#"&5462654&#"2+#".'#".54>;>322>54.+.#"#";326?� 8)*8 8**8 %%&%��%44%&45%�M�|gI(X��t%L�dI�{h&9X�tCCt�X`]r�E^�E?i��PP��iTJSW+D{gS�M�f;;f�MVK�_�HM*8 7*)8  8*�%%&%�4%%54&%4�H(Hf|�Mt˘W@E$Ec>Cs�XX�sC=cE%DA��O��ii��P 1"&Ec<;e�NN�e;{�A=
%	!!!!!������������@�������h���(��G1�@@�
2!>3"!.#T/) �(/	
���
	�'��'���k���z	0^2+2+%%465#.'+#!5!5!5!5!5!5!5!5!5!5!5!5!5!232f



&&



&�@�f�<�@��l	
��������������������l��@���@������
�P��=w�u;
�s�@�@�@�@�@�@�"M3�:?nr��##"&'.54&#"+".'#53>3:32>;23347#!232>54.#!#'!"32>=4>'37#>54.#"&#"&'.+".54>3!2#3NL}�[]�CC55C:�R\�}LN_Vu�M.JEG,-Y08ZW\;fM�uV_�3 �&8b�JEyZ55ZyE�����EyZ55ZyEJ�a9&
>
XA47Ao�U+EAB)2b66b2-Y0fU�oA74<i�P�O�i<� �\�vC5CC�]]�C:>Cv�\�JzX11XzJf&J�b85ZyEEyZ5ff5ZyEEyZ58b�J&�3��8�MU�oAAo�UM�8-d5O�i<<i�O5d3�M*Lnz##".5#53'53375#!32>5#".5.54>?7>54.''532>5'2#"&546M3 8K**K8 3�M�M��33f��*8  8)�o2R: QH1B%%A1IP :Q2#LM3#9((9$��#9(RG#//#���*K8  8K*�3M��M��q33v�� 8**8  ?Rb5U�.�%A11A%�/�V4cR?��LL"��5BK'(KA5쀀�5BK'R�(��/##/�$0@3#!".54>3!!!4.#522#4.#2#4.#��#.�.##.��#.5]F(�j��P�<i�OjŪ�d7�.Su��X��.##.�.#���.#�(F]5P��jO�i<�7d���jX��uS.�	".5A!5!!#3#!".54>3!!!2#4.#2#!4.#52�����#.��.##.���P�h<�(F]5.#�Q��j��d��������.##.�.#���<h�P5]F(�#.j��Q�d������K[fv2!3267!#"&'#".54>7>7>7>32>7.'4.#">54.#"+!DA;+1 --��0UuFX�7�0���sQ�L)[_a0JoL&.Nhrw7
Eqc[/
Di���H@����^'>+#KKGz�6 2�0UuFFuU0
��L&5J,'POK� ,d>%LKH!U�a#%"
FuU/3Hh�r= ,"4ZyEV�����>?N]8R�oW@)
(I7 �'F5#?�B�tEwW22WwEk$�z6y;.F/$N�<!32>7#".54>7!4.#">32���.Plz�@Q���FN���Wsּ�p>E��u@G
�-d�p�����DQ���N�J��S@Jx]C,->%�N&7&5c���v~�/@�Xn�m7O��p��˥u?3�����#'+/37;?CGKO^i#53#53#53#533#3#3#3#%3#%3#%3#!!735#%!!735#!!735#3##535#53>32	654&#"���������������������������������������������������������4��^�I()I6 ���*�L"�����������������������������������������8(I�3^y� 6I���*�L�	�#!!%!!5!5#!35!35�������������@���������������������������������		'	7	!!!!!���"Z���Z"��Z###��������������Z"��Z##Z��"�����������������c%)Ga2#!".54>3!54>3!2)5!"3!546;2!2>54&#265#!+"&=!"&'3;(H65H)��)H56G)�$0
0$�q
����+9!( � (!9+$P*�� � ��*P$'5H(�)H66H)(H5�1%%1������!9+f!!f+9!���f!!f�%HM�Sen~�������������)3JTjt��������5?Y]aeqy�����������'1ISku��������0%#&'#4>7.#"32#4&#".'#6$746325'#>15.=46324&>32#32%&57#332654'"'537'5'54#"35##'#6=4''#326='7'37.'>7#&'#7"=4323"=432"53"&5473'7'37.'>7#&'#7'373'77'7#&'#3'7'3.'#>7.'>7'373'7>7.'>7#'%'373'77.'>7#&''7'37.'>7#'#>7373'7'7.'>7#.'%'373''>7.'>7#.'7'373/>7.'7#.'73'7'7#>7.'>7#.'373''>7.'>7#.'#57#5##5"&54632'"3254'4>7#.5'#53537##65735'#354&'"5467&54>32>32#"'74'32>'&#">54'">7.3267&'7'37.'>7#.'#>7'7'37.'>7#'#>7'7'373.'>7#'#>'7'37.'>7#.'#>7/7'373.'>7#.'#>3'7'37#&'#7'%'7'37.'>7#.'#>7'373''7.'>7#.''373'5>7.'>7#.'�u^Xm4'
$1^�jO�J"(
8(&��s$�/
/^�S�y J	

�&

Mfsj+!/00/;
H- 	
�000/;�/;;000!
M:/1//;U0;;/00		��/;:/00	
//00/:	.ON?@@
('3�{?NN?@@

3�?NO@@@
			)2IO?@@?f2

(	
2�_v$$u^%``#
$$
#Yu
&

��
@
!"

#
*8E<3 MM�
!,	!- 	�

"&)(n'*(#
1}/000;
��/00/:	�000;;M	��/00/;	
	900/;:/		
�;000/;'
�?@@?N22
��?ON?@@
	(

24?NO?@@
		
			
2�A_V=(56*11"((8%C�t�
�',$V

gW
1*-4mU�
5-��z�	
m
	_�`&&
m�ff
�z$<%%<$::=		�					p%;%%;%99=
	
M$::$<%%A�9%;%%;%
	

	�%99%;%%S	

[%99%;%%S		�F$;%%;$::=	
			,MM1O11O$v0MM0P22s



��P0MM0P2A	FMM1O11O1"IssIwJJ�,,++�S



f&



":)@(++(?'2

"r?Nfs+,F	 -!	,!
y)'"
'�(0
#(+��$<%%<$::=		�$<%%<$::=	
		
<%%<$::+


	
��$<%%<$::=	

	
�%%<$::$
		
		��$<%%<$:GF1O11O1LL^



k1MM1O11s�0MM0P22s		%!#!>!5!!!!�A@����������S A ���������A�m�������"�
�HLPTt����������������%)8<TXr|�����2#!"&546;.5467#535#5!7.=4>;2!2##3!!+3!3#'67!"3!.'#53.'#53>7#54&#!!2#!!2655''5'7&54>752=4#!%35#35#'3'"34&35#4&#"35#35#35#2>=#735#'3265#"34634&463274&>322354&+#"&#332654&/5#!'!!>=4&'!3#3#3#5!3!5!".54>3!5!";#"!4&+3265".54>32'#3265"&'"&"=432#"=432�+$*�z**g+12*�))M#
%�%
#*1!/-/�4z��))�))%��))OLE��n��

�)���
 p 4

����44�44Y8�	)�RR\	qq�RRfqq%
D�f&7
RR
0"$$>
/��7��)���gg��>>�)*8 ��{0$$1��{ 8*R44�44�
&%%&/0""01
H

�
��+++S00R>�=#	�%%�	#*�%#):A0�=��z��))


g
�
�
�).
.�
A�
�
K(
G��	
��	



b;		
�(*=

))

="0$$�O

���
(K)))R� 8*$01$)8����zp&%%&�"00"
G







!.2#!!4>5!4.'3/#"#/���"��		�#/�^-))3B,��/#�� ,B3))-�� $$��@@��2#!!&"&����&�`&8.).8%��&�*B2#!#"'4>5	4.5!!/#"#/��+$5&���"��"���"�#/�`.))2B-��/#�'@
&%���-A3()/���[� .))2B-���/�{-A3()/`@@��2#!#"'!&"&�@%����&�`&8.).8%��&�%Z
!!!%!!73!!!5!5!!!���[�e����@�ۀ����������f�����������������!!!!!!!!!!!!��������������������������Fu�32#".54>3!!"#"&'.54>324>324&'%#"&=4&#"#"&/&#"32>5+532654.54632�4F(&&BuW22WuB��@(F4� 5'[��w��g�(6I))H53G*(F4���&&&(*�+�S�w]�yG�4F(��&"&(F4�(F4&&2WuBBtW3�4F��#2<!�wҜ[mg�J'*H66�)I7 4F(�B��"�,&&��&&��(�*�'TYGy�](F4�&

&4F��
	!>7��������������C����PA�@@�A��!	������C����!!!	!!!!��������[������[��������	!!5!#5!3#!!!�������������������������������!!5!7'7'7'!!���VUV��VUU��VU�V�U��UV��VU���VU�U�,��	���_:�,�,8�8d`1w{�2#"&'.#"0#"&547>323267>#*'#"&54>7&=47'#"&547>327>32>32'7''32>7�&NX^-c�D1xHF{0 &6`h|Sc�D1xHLp5�"�=	� %	/&@A�&�6$#?G
	*  ^ %�WW7��c!%"%#7&MG3993 &6dL-MG3993

��y	W^&$'"(/�
� �&&
� %"�/&/5%";H+:+�`�ǖ
���C��@����C���@g-AO]#4.#"#4>7.54>3232>54.#"'654''>54&'o��G�.Su��XX��uS.�G��o8Y>!P��jj��P!>Y�8<i�PO�i<<i�OP�i<g����[v~~v�QXXQZ?CC?�'���uX��uS..Su��Xu࿓'$^p}Cj��PP��jC}p^�P�i<<i�PO�i<<i���������[v/��/v�Q�ss�QZ?�ZZ�?f���#3	3#3#!	'7!	!'C�������U�V�V�U��$�-��Z����Z��-Z�J����6���6�J����Z��Z--Z������##3	3!3#!#!7	'7!5)!	Æ�����$�V�U��U�$�mZ-��Z���%�ےZ��-Z����6������Z���Z����Z--Z�+�
->	#!#	2#5#".54>7%54.#"5>2>=�Հ��ր��+��kBuW2�?�[BuW2#>U2�4F(Z�AH�+BtW3�}.!4F����������@2WuB�@�AE2WuB3\I2D*(F4A?�./��2WuBT@(2(F4g
#'+/37;?CGKOSW[_cg3!26767!.5!#.'!3#3#%3#%3#3#3##53!3##53!3#!#53#53!3##533#%3#!#53N@Q�a���a�Q@N���c~�L�M�~c�����������������������������������������������������+70��%\07+�%�W��r//r��W�������������������������������!!!!!5!!5!!����������������������������������!!!!!!5���������������������!3!!#	!5!��������w�Z��nZ�	����������ZmmZӀ���
)T3#!!%#3	'>54&''654'!!5!2>3!!.'5#!".#!3!# ``���� `����+E[``[[HNNH~��~[mttm����B�X�EE�X�B ���F�6�6�F�����������p[ꀀ�[[H�gg�H��������[m��m�a���6666��T"? ���0-��a-0������=!!#!5!3!5!5!!!!!".54>32#4.#"3!�������������������@BuW22WuBBtW3�4F((F44F(������������������2WuBBtW33WtB(F44F((F4�uf
!!!%!!��B���f�vf��B�3�3��u#�!(,048<@DHLPTX\`dhlptx|����������3!2>7>7!.5.'!3!3#73#73#73#73#73#3#53#53#5;#3#53#53#533#3#3#3##53#53#53#53#53!3#3#3#3#3#73#73#73#73#�aO)W[^0��1^ZW*(W0��U��iMh��U�4MM�MM�MM�MM�MM�MM�MM�MM�MMLMM�MM�MM�MM��MMMMMMMMMMMMMMMMMM��MMMMMMMMMM�MM�MM�MM�MM�5#��%�#��%�1{��cc��{1MMMMMMMMMMMMMMMMMMMMMM�MMMLMMM�M�M�M�M�MMMMLMMMLMMMMMMMMM#+;#4&+3!3#"#!	!5467#!#3.1��f[?��AYf����JH�j�Ue��zp��A^a����gY�������1)`1�2c*�������L#/7#4&+3!3#"!5467!7!'>7!##3���f[?��AYf�J����ʥR?oX@��"�uu����A^a����gY��)`1�2c*���1��eM"Vg{H�b�C���@h�!	!������@�h����@���7;?2#".54>2>54.#"3#3#@��֯}DD}�����֯}DD}���sԹ�l<<l���ssԹ�l<<l���3�����D}�����֯}DD}�����֯}D�<l���ssԹ�l<<l���ssԹ�l<����!34>32��<i�PO�i<����O�i<<i�O����!354>32)54.#"���(F]55]F(��#..#����5]F((F]5��.##.E�㚊_<������6k�	*�1���������S�%����%��� @@��S�����@�'R��@�?2�f�2%����M���NM�@@���`f�+��@��F]u���.�'H^�b����Ay�X��Gds���,�����	7

�
�+@O�Xo�


c
�{�+Mn��6Hb{��=_{��
Ht��	)4��;��-e������V|�z��1H^���
-]����(��������)<� � �"�#L$$;$F$w%%�&�&�'K'�(H(�):)|*0#0X2�2�33s3�3�44�4�55,5b5�5�6d6o6z6�7C7�7�8�8�8�99�::!;;l;�;�<5<P<~�1H�
d)%�(8	dH	&�	�	&�	&�	�	"�	r	*�	T�	
�
	T�
�������$*-(

Normaloby
ejn�normalStandard��������� 2014 Microsoft Corporation. All Rights Reserved.Browser MDL2 AssetsRegularVersion 2.27BrowserMDL2AssetsSegoe is a trademark of the Microsoft group of companies.Microsoft Corporationhttp://www.microsoft.com/typography/fonts/You may use this font as permitted by the EULA for the product in which this font is included to display and print content. You may only (i) embed this font in content as permitted by the embedding restrictions included in this font; and (ii) temporarily download this font to a printer or other output device to help print content.NormaaliNorm�lNormaleStandaardNormalny1KG=K9Norm�lneNavadnoth��ngArrunta�Nw�+�	+�
	+�
�mU=%+�eS@.+�XH8(+�
C7++�,$+�+�	+�+���pP0+��mU=%+�eS@.+�XH8(+�C7++�,$+�+�	+�+�	��pP0+�+� E}iD<!doctype html>
<html>
    <head>
<meta http-equiv="Content-Type" content="text/html; charset=big5"/>
        <title>about:compat</title>
        <link rel="stylesheet" href="webcore.part.ltr.light.css">
        <link rel="stylesheet" href="aboutcompat.css">
        <script src="table.js"></script>
        <script src="aboutcompat.js"></script>
    </head>
    <body>
        <div id="content-container">
            <div id="aboutcompat-description">
                <h1>Compatibility Settings</h1>
                <p>Review all of the websites included in the Microsoft Compatibility List, which is updated and maintained by Microsoft, and in the Enterprise
                Mode Site List, which if enabled is updated and maintained by your company. For more information please see our <a href="http://go.microsoft.com/fwlink/?LinkID=624362">test tools</a>.</p>
            </div>
            <div id="emielist-information-container">
                <div id="emielist-description">
                    <div class="text-base">Enterprise Mode Site List</div>
                </div>
                <div id="progress" role="progressbar" aria-valuetext="Loading...">
                    <span role="presentation"></span>
                    <span role="presentation"></span>
                    <span role="presentation"></span>
                    <span role="presentation"></span>
                    <span role="presentation"></span>
                </div>
                <button type="button" id="emie-update-button" onclick="updateEMIEListData()">�j���s</button>
            </div>
            <div id="filters">
                <section class="section">
                    <header class="section-header">
                        <h5 class="section-title" id="aboutcompat-filter">�z��</h5>
                    </header>
                    <div class="section-body">
                        <div class="search-container">
                            <div class="form-group form-searchbox">
                                <form onsubmit="event.preventDefault();">
                                    <label class="text-base" id="aboutcompat-search">�j�M����ݩ�:</label>
                                    <input type="text" id="search-box" name="focus" required="" class="form-control" placeholder="example.com" autocomplete="off" oninput="startSearch();">
                                    <button class="clear-icon" type="reset" onclick="onClear();"><span class="win-icon win-icon-Clear"></span></button>
                                    <span class="search-icon" onclick="startSearch();">
                                        <i class="win-icon win-icon-Search"></i>
                                    </span>
                                </form>
                            </div>
                        </div>
                        <div class="form-group">
                            <label class="text-base" id="aboutcompat-checkbox">��ܨӦ۩ҿ�ۮe�ʳ]�w�M�檺��:</label>
                            <ul>
                                <li>
                                    <div class="new-checkbox" id="checkbox-emielist-container">
                                        <label>
                                            <input type="checkbox" id="checkbox-emielist" name="EMIE" checked onclick="createData();">
                                            <span class="text-body"><!--_locComment_text="{Locked}"-->Enterprise Mode Site List</span>
                                        </label>
                                        <div class="filter-list-info list-description" id="aboutcompat-emie-description">���M��W����ϥΡu���~�Ҧ��v�f�t Microsoft Edge �b Internet Explorer 11 ��
                                            �۰ʶ}�ҡC�b Internet Explorer 11 �}�Ҥ�����A�|�ϥΤw�ק諸�s����]�w (��
                                            �]�w�|��� IE8�BIE7 �P IE8 - IE11���Ҧ�) ����Ķ��A�H�קK�o�ͱ`���� Web
                                            ���ε{�� (�b�ª� Internet Explorer �W���g�δ���) �ۮe�ʰ��D�C�Y�{���Y�Ӻ�
                                            ���ӱq�ӲM�沾���A�гs���z���t�κ޲z���C
                                        </div>
                                        <button class="filter-list-info toggle-description">View list description</button>
                                    </div>
                                </li>
                                <li>
                                    <div class="new-checkbox" id="checkbox-cvlist-container">
                                        <label>
                                            <input type="checkbox" id="checkbox-cvlist" name="CVList" checked onclick="createData();">
                                            <span class="text-body"><!--_locComment_text="{Locked}"-->Microsoft Compatibility List</span>
                                        </label>
                                        <div class="filter-list-info list-description" id="aboutcompat-cv-description">���M��W����ϥΡu���~�Ҧ��v�f�t Microsoft Edge �Ӵ��ܨϥΪ̦b
                                            Internet Explorer 11 ���}�Һ�C�b IE ���}�Ҥ���A�t�αN�|�۰���Ķ��A�N��
                                            �z�O�b�ª� Internet Explorer ���˵���@�ˡC�Y�n�N����q���M�沾���A�бN
                                            �q�l�l��H�� <a href="mailto:[email protected]">[email protected]</a>�C
                                        </div>
                                        <button class="filter-list-info toggle-description">View list description</button>
                                    </div>
                                </li>
                            </ul>
                        </div>
                    </div>
                </section>
            </div>
            <section class="section table-section">
                <header class="section-header">
                    <h5 class="section-title" id="SitesCount">�Ϭq���D</h5>
                </header>
                <div class="section-body table" id="mainTable" role="table"></div>
            </section>
        </div>
    </body>
</html>P<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta charset="utf-8">
    <link rel="stylesheet" type="text/css" href="res://edgehtml.dll/ErrorPageStyles.css">
</head>
<body>
    <div id="Wrapper">
        <div id="PDFError">
            <table>
                <tbody>
                    <tr>
                        <td>
                            <h1>Couldn’t open PDF</h1>
                            <p>Something’s keeping this PDF from opening.</p>
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</body>
</html>
P�PNG


IHDRB��6`IDATx�U̱��;m�,�b�,�j$�D)L��l��@�'
%�B:�sX:��mg���4-�gY�ǁFU���@��C�俜>��k-��zv�72=tMfIEND�B`�PADhtml, body {
    margin: 0;
    padding: 0;
}

#Wrapper {
    margin-left: auto;
    margin-right: auto;
    margin-top: 72px;
    min-width: 320px;
    max-width: 600px;
}

h1 {
    line-height: 28px;
    font-size: 24px;
    font-family: 'Microsoft JhengHei UI', 'Microsoft JhengHei', �s�ө���, 'Segoe UI SemiLight', 'Segoe UI';
    font-weight: normal;
    color:#1f1f1f;
    margin: 0;
    padding: 4px 28px 0 0;
}

p {
    line-height: 20px;
    font-size: 15px;
    font-family: 'Microsoft JhengHei UI';
    font-weight: normal;
    color:#1f1f1f;
    margin: 16px 28px 0 0;
    padding: 0;
}

ul {
    line-height: 20px;
    font-size: 15px;
    font-family: 'Microsoft JhengHei UI';
    font-weight: normal;
    color:#1f1f1f;
    margin: 20px 28px 0 0;
    padding: 0;
}


li {

    margin: 12px 0 0 26px;
    line-height: 22px;
}
td, table {
    vertical-align: top;
    border-collapse: collapse;
    border-spacing: 0;
}

#webpage {
    line-height: 20px;
    font-size: 15px;
    font-family: 'Microsoft JhengHei UI';
    font-weight: normal;
    color:#4d4d4d;
}

#icon {
    font-size: 80px;
    font-family: 'Segoe UI Symbol';
    font-weight: bold;
    color:#1f1f1f;
    margin: -20px 24px 0px 10px;
    display: block;
}

.button-row{
    width: 480px;
    height: 32px;
    margin: 36px 0 42px 120px;
    padding: 0 0 0 0;
    text-align: left;
}

.pushbutton{
    display: inline-block;
    font-size: 15px;
    font-family: 'Microsoft JhengHei UI';
    color: #000000;
    min-width: 100px;
    height: 28px;
    padding: 0 16px 0 16px;
    text-align: center;
    line-height: 26px;
}

.btn-default{
    background-color: #cccccc;
    border: 2px solid #cccccc;
    transition-duration: .05s;
    transition-timing-function: ease-out;
}
.btn-default:hover{
    border: 2px solid #999999;
    transition-duration: .15s;
    transition-timing-function: ease-out;
}
.btn-default:active{
    border: 2 px solid #999999;
    background-color: #999999 ;
    transition-duration: .001s;
    transition-timing-function: ease-out;
}


.btn-highlighted{
    color: #ffffff;
    background-color: #0078d7 !important;
    border: 2px solid #0078d7;
    transition-duration: .05s;
    transition-timing-function: ease-out;
}

.btn-highlighted:hover{
    border: 2px solid #0062a5 !important;
    background-color: #0062a5 !important;
    transition-duration: .15s;
    transition-timing-function: ease-out;
}
.btn-highlighted:active{
    border: 2px solid #004f84 !important;
    background-color: #004f84 !important;
    transition-duration: .001s;
    transition-timing-function: ease-out;
}


.btn-disabled{
    background-color: #cccccc;
}<!doctype html>
<html lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta charset="utf-8">
    <title>about:flags</title>
    <meta name="viewport" content="width=device-width">
    <style>
        @font-face {
            font-family: "Browser MDL2 Assets";
            src: url('res://edgehtml.dll/BrowserMDL.ttf#Browser MDL2 Assets') format('truetype');
        }
        *,
        *:before,
        *:after {
            box-sizing: border-box;
            -ms-user-select: none;
        }
        body {
            font-family: "Segoe UI";
            font-size: 15px;
            line-height: 20px;
            font-weight: 400;
            font-size: 0.94rem;
            line-height: 1.25rem;
            margin: 0px;
            padding: 0.23px;
        }
        button {
            color: inherit;
            cursor: pointer;
            font: inherit;
            margin: 0px;
            overflow: visible;
            text-transform: none;
        }
        input {
            line-height: normal;
        }
        h2,
        h3,
        .text-title,
        .text-subtitle,
        .text-body,
        p {
            margin-top: 0px;
            margin-bottom: 0px;
        }
        h2 {
            font: 200 2.13rem/2.5rem "Segoe UI";
            padding: 3.18px 0px;
        }
        .text-title,
        h3 {
            font: 300 1.5rem/1.75rem "Segoe UI";
            padding: 2.36px 0px;
        }
        .text-subtitle {
            font: 400 1.25rem/1.5rem "Segoe UI";
            padding: 1.64px 0px;
        }
        .text-body,
        p {
            font: 400 0.94rem/1.25rem "Segoe UI";
            padding: 0.23px 0px;
        }
        label {
            display: inline-block;
            max-width: 100%;
        }
        .checkbox {
            position: relative;
            display: block;
        }
        .checkbox label {
            margin-top: 2px;
            min-height: 20px;
            cursor: pointer;
        }
        input,
        button,
        select,
        option {
            max-width: 100%;
            line-height: inherit;
            font-size: inherit;
        }
        input[type="checkbox"] {
            width: 20px;
            height: 20px;
        }
        .form-group {
            margin-top: 20px;
        }
        .form-group label {
            margin-top: 0px;
            margin-bottom: 8px;
        }
        .checkbox {
            margin-top: 24px;
            margin-bottom: 24px;
        }
        .checkbox label {
            margin-bottom: 0px;
            padding-left: 32px;
        }
        .checkbox input[type="checkbox"] {
            position: absolute;
            top: 0px;
            left: 0px;
            margin-left: 0px;
        }
        fieldset[disabled] input[type="radio"] + span,
        input[type="checkbox"][disabled] + span,
        input[type="checkbox"].disabled + span,
        fieldset[disabled] input[type="checkbox"] + span {
            color: rgba(0, 0, 0, 0.6);
        }
        button {
            display: inline-block;
            min-width: 120px;
            padding: 4px 12px;
            margin: 4px 0px;
            max-width: 100%;
            text-align: center;
            white-space: nowrap;
            overflow: hidden;
            vertical-align: middle;
            text-overflow: clip;
            touch-action: manipulation;
            color: #000000;
            border: solid 2px transparent;
            background-color: rgba(0, 0, 0, 0.2);
        }
        button:hover,
        button:focus,
        button:active {
            border-color: rgba(0, 0, 0, 0.4);
        }
        button:active {
            border-color: transparent;
        }
        .section {
            margin-top: 84px;
        }
        .section .section-header {
            padding-bottom: 12px;
            border-bottom: 1px solid #E6E6E6;
            margin-bottom: 16px;
        }
        .section .section-title {
            display: block;
            margin: 0px;
            font: 600 0.94rem/1.25rem "Segoe UI";
            padding: 0.23px;
            color: #000000;
        }
        .section .section-title.text-maxlines-1 {
            white-space: nowrap;
            text-overflow: ellipsis;
            max-height: 1.28rem;
        }
        @media (min-width: 320px) {
            .section .section-title {
                font: 300 1.5rem/1.75rem "Segoe UI";
            }
            .section .section-title.text-maxlines-1 {
                max-height: 2rem;
            }
            .section p {
                margin-top: 12px;
                margin-bottom: 12px;
            }
            .section.remove-header-rule > .section-header {
                border-style: none;
            }
            .section.item-section {
                margin-bottom: 32px;
                margin-top: 0px;
            }
            .section.item-section .section-header {
                margin-bottom: 16px;
                border-style: none;
                padding-bottom: 0px;
            }
            .section.item-section .section-title {
                color: #000000;
                font-size: 15px;
                line-height: 20px;
                font-weight: 600;
                font-size: 0.94rem;
                line-height: 1.25rem;
                padding-bottom: 0.23px;
                padding-top: 0.23px;
            }
            .section.item-section .section-title.text-maxlines-1 {
                max-height: 1.28rem;
            }
        }
        /* about:flags specific CSS */
        .hidden {
            display: none;
        }
        .page-container {
            margin: 0px 20px;
        }
        .section {
            margin-top: 28px;
        }
        .section-compat,
        .section-preview,
        .section-experimental {
            margin-top: 52px;
        }
        .section .section-header {
            padding-bottom: 0px;
        }
        select {
            width: 292px;
            max-width: 100%;
        }
        .checkbox {
            margin-bottom: 0px;
        }
        .checkbox + .checkbox {
            margin-top: 12px;
        }
        .checkbox:first-child,
        .form-group:first-child {
            margin-top: 0px;
        }
        .section-icon {
            display: inline-block;
            width: 64px;
            height: 64px;
            font: normal normal 64px/1 "Browser MDL2 Assets";
        }
        .content-flags {
            margin: 32px auto 60px;
        }
        .section-flags {
            position: relative;
            max-width: 27em;
        }
        .section .section-preamble {
            margin-bottom: 24px;
        }
        .alert-restart {
            position: fixed;
            z-index: 9000;
            bottom: -160px;
            width: 100%;
            padding: 20px;
            background-color: #E0E0E0;
            transition-property: bottom;
            transition-duration: 0.5s;
            transition-timing-function: linear;
            visibility: visible;
        }
        .spacer {
            margin: 0px;
            padding: 0px;
            display: block;
            visibility: hidden;
        }
        /* "Tablet" and wider */
        @media (min-width: 640px) {
            .content-flags {
                padding-left: 90px;
            }
            .section-icon {
                position: absolute;
                top: 0px;
                left: -90px;
            }
        }
    </style>
    <script>
        var g_Flags = {};
        var g_IsMobileEdge = false;
        var g_IsXboxEdge = false;
        var g_IsHololensEdge = false;
        var restartMsg = false;

        var initFlagsFromDictionary = function() {
            for (var x in g_Flags) {
                var flag = g_Flags[x];
                var enabled = false;
                var input = document.getElementById(x);
                if (flag.ValueBased) {
                    var currentValue = window.external.GetExperimentalValue(flag.FlagName);
                    for (var i = 0; i < input.options.length; i++) {
                        if (input.options[i].value == currentValue) {
                            input.selectedIndex = i;
                            break;
                        }
                    }
                } else {
                    enabled = window.external.GetExperimentalFlag(flag.FlagName);
                    input.checked = flag.Reverse ? !enabled : enabled;
                    if (window.external.GetExperimentalFlagIsPolicyEnabled(flag.FlagName))
                    {
                        input.disabled = true;
                    }
                }
            }
        };

        var changeFlag = function(name) {
            var input = document.getElementById(name);
            var flag = g_Flags[name];
            // "Mobile" equates to OneCoreUAP, but some things may be included for some UAP platforms such as Xbox.
            if (!(g_IsMobileEdge && flag.HideForMobile && !(g_IsXboxEdge && flag.ShowForXbox))) {
                if (flag.ValueBased) {
                    if (input.selectedIndex > -1) {
                        window.external.SetExperimentalValue(flag.FlagName, input.options[input.selectedIndex].value);
                    }
                } else {
                    window.external.SetExperimentalFlag(flag.FlagName, flag.Reverse ? !input.checked : input.checked);
                }

                if (flag.RequiresRestart && !restartMsg) {
                    showResetMessage();
                }
            }
        };

        var initEventListenersFromDictionary = function() {
            for (var x in g_Flags) {
                // Closure for scoping
                var input = document.getElementById(x);
                input.addEventListener(
                    "change", (function(name) {
                        return function(sender, keyEventArgs) {
                            changeFlag(name);
                        };
                    })(x)
                );
            }
        };

        var hideSectionsForMobile = function() {
            for (var x in g_Flags) {
                var flag = g_Flags[x];
                // "Mobile" equates to OneCoreUAP, but some things may be included for some UAP platforms such as Xbox.
                if (flag.HideForMobile && !(g_IsXboxEdge && flag.ShowForXbox)) {
                    var input = document.getElementById(x);
                    var parent = input;
                    while ((parent = parent.parentElement) != null) {
                        if (parent.classList.contains("hideformobile")) {
                            parent.classList.add("hidden");
                            break;
                        }
                    }
                }
            }
        };

         var showSectionsForHololensOnly = function() {
            for (var x in g_Flags) {
                var flag = g_Flags[x];
                if (flag.ShowForHololensOnly && !g_IsHololensEdge) {
                    var input = document.getElementById(x);
                    var parent = input;
                    while ((parent = parent.parentElement) != null) {
                        if (parent.classList.contains("showforhololensonly")) {
                            parent.classList.add("hidden");
                            break;
                        }
                    }
                }
            }
        };

        var setDiagnosticsKeyHandler = function() {
            document.addEventListener('keydown', function(event) {
              if (event.keyCode == 68 /* KeyD */ && event.ctrlKey && event.shiftKey) {
                var diagnosticsSection = document.getElementById("diagnostics");
                diagnosticsSection.style.display = "block";
                diagnosticsSection.setAttribute("aria-hidden", "false");
              }
            });
        };

        var onLoad = function() {
            setDiagnosticsKeyHandler();
            // Add an entry here for every flag
            // FlagName is passed to get/SetExperimentalFlag
            // RequiresRestart will show the UI to tell the user to restart the browser
            // Reverse means that the flag representation on the page is the opposite of the flag representation in the host
            // ValueBased means this is Value backed and will be represented in a drop down with matching values (0, 1, 2, etc.)
            // ShowForHololensOnly will show the UI only on the Hololens, but hidden otherwise
            g_Flags = {
                // Developer Settings
                F12ContextMenuEntryPoints: {
                    FlagName: "F12ContextMenuEntryPoints",
                    RequiresRestart: false,
                    HideForMobile: true
                },
                CompatMode: {
                    FlagName: "CompatMode",
                    RequiresRestart: true
                },
                EnableUseEnterpriseModeSiteList: {
                    FlagName: "EnableUseEnterpriseModeSiteList",
                    RequiresRestart: true,
                    HideForMobile: true
                },
                LocalhostLoopback: {
                    FlagName: "LocalhostLoopback",
                    RequiresRestart: true
                },
                BchostLocalhostLoopback: {
                    FlagName: "BchostLocalhostLoopback",
                    RequiresRestart: true,
                    HideForMobile: true
                },
                EnableExtensionDevelopment: {
                    FlagName: "EnableExtensionDevelopment",
                    RequiresRestart: true,
                    HideForMobile: true,
                    ShowForXbox: true
                },
                AllowUnlimitedMemoryForContent: {
                    FlagName: "AllowUnlimitedMemoryForContent",
                    RequiresRestart: true,
                    HideForMobile: true
                },
                HideLocalHostIP: {
                    FlagName: "HideLocalHostIP",
                    RequiresRestart: true,
                    HideForMobile: true
                },
                //Standards Preview
                TouchEvents: {
                    FlagName: "TouchEvents",
                    RequiresRestart: true,
                    ValueBased: true,
                    HideForMobile: true
                },
                VP9VideoFormat: {
                    FlagName: "VP9VideoFormat",
                    RequiresRestart: true,
                    ValueBased: true,
                    HideForMobile: true
                },
                ExperimentalJS: {
                    FlagName: "ExperimentalJS",
                    RequiresRestart: true
                },
                EnableStandardFullscreenAPI: {
                    FlagName: "EnableStandardFullscreenAPI",
                    RequiresRestart: true
                },
                EnableIndividualTransforms: {
                    FlagName: "EnableIndividualTransforms",
                    RequiresRestart: true
                },
                CSSMasking: {
                    FlagName: "CSSMasking",
                    RequiresRestart: true
                },
                EnablePenNavigation: {
                    FlagName: "EnablePenNavigation",
                    RequiresRestart: true
                },
                CSSClipPath: {
                    FlagName: "CSSClipPath",
                    RequiresRestart: true
                },
                CSSBackgroundBlendMode: {
                    FlagName: "CSSBackgroundBlendMode",
                    RequiresRestart: true
                },
                //Diagnostics
                //Text Input and Editing
                EnableNewInsertParagraph: {
                    FlagName: "EnableNewInsertParagraph",
                    RequiresRestart: true
                },
                //JavaScript
                DisableRAFOnOutOfViewXDomainIframes: {
                    FlagName: "DisableRAFOnOutOfViewXDomainIframes",
                    RequiresRestart: true
                },
                DisableClampTimersOnOutOfViewXDomainIframes: {
                    FlagName: "DisableClampTimersOnOutOfViewXDomainIframes",
                    RequiresRestart: true
                },
                AllowLowPowerMode: {
                    FlagName: "AllowLowPowerMode",
                    RequiresRestart: true
                },
                UseMoreAggressiveBackgroundTimerClamping: {
                    FlagName: "UseMoreAggressiveBackgroundTimerClamping",
                    RequiresRestart: true
                },
                UseMoreAggressiveXDomainIframeTimerClamping: {
                    FlagName: "UseMoreAggressiveXDomainIframeTimerClamping",
                    RequiresRestart: true
                },
                ProcessRAFBeforePaint: {
                    FlagName: "ProcessRAFBeforePaint",
                    RequiresRestart: true
                },
                Use30FPS: {
                    FlagName: "Use30FPS",
                    RequiresRestart: true
                },
                DisableHighFrequencyTimers: {
                    FlagName: "DisableHighFrequencyTimers",
                    RequiresRestart: true
                },
                ClampTimersToOneSecondWhenLoading: {
                    FlagName: "ClampTimersToOneSecondWhenLoading",
                    RequiresRestart: true
                },
                AllowRenderThrottling: {
                    FlagName: "AllowRenderThrottling",
                    RequiresRestart: true
                },
                AllowVsyncToTurnOffWhenBeatDidNotPaint: {
                    FlagName: "AllowVsyncToTurnOffWhenBeatDidNotPaint",
                    RequiresRestart: true
                },
                ForceVsyncPaintBeat: {
                    FlagName: "ForceVsyncPaintBeat",
                    RequiresRestart: true
                },
                BlockSpecificRenderThrottling: {
                    FlagName: "BlockSpecificRenderThrottling",
                    RequiresRestart: true
                },
                AllowPageOcclusionTesting: {
                    FlagName: "AllowPageOcclusionTesting",
                    RequiresRestart: true
                },
                AllowPageOcclusionThrottling: {
                    FlagName: "AllowPageOcclusionThrottling",
                    RequiresRestart: true
                },
                PauseTask: {
                    FlagName: "PauseTaskConfiguration",
                    RequiresRestart: true,
                    ValueBased: true,
                },
                IFrameLifetimeManagement: {
                    FlagName: "IFrameLifetimeManagement",
                    RequiresRestart: true
                },
                //Networking
                EnableTcpFastOpen: {
                    FlagName: "EnableTcpFastOpen",
                    RequiresRestart: true,
                    ValueBased: true
                },
                //Element properties
                RelayHoverActiveFromControlToLabels: {
                    FlagName: "RelayHoverActiveFromControlToLabels",
                    RequiresRestart: true
                },
                //WebVR
                EnableWebVR_Holographic: {
                    FlagName: "EnableWebVR_Holographic",
                    ShowForHololensOnly: true,
                    RequiresRestart: true
                }
            };

            g_IsMobileEdge = window.external.GetIsMobileEdge();
            g_IsXboxEdge = window.external.GetIsXboxEdge();
            g_IsHololensEdge = window.external.GetIsHololensEdge();
            initFlagsFromDictionary();
            initEventListenersFromDictionary();
            if (g_IsMobileEdge) {
                hideSectionsForMobile();
            }

            showSectionsForHololensOnly();
        };

        var showResetMessage = function() {
            var restartDiv = document.getElementById("RestartDiv");
            restartDiv.style.bottom = "0px";
            restartDiv.style.visibility = "visible";
            restartDiv.setAttribute("aria-hidden", "false");
            restartMsg = true;
            var L_Restart_Text = "必須重新啟動瀏覽器,變更才會生效。";  // Restart browser message
            document.getElementById("flags_restartdiv").innerText = L_Restart_Text;
            document.getElementById("SpacerDiv").style.height = `${restartDiv.offsetHeight}px`
        };

        var resetAllFlags = function() {
            window.external.ResetAllExperimentalFlagsAndValues();
            initFlagsFromDictionary();
            if (!restartMsg) {
                showResetMessage();
            }
        };
    </script>
</head>

<body onload="onLoad();">
    <div role="alert" id="RestartDiv" class="alert-restart" aria-atomic="true" aria-hidden="true">
        <h2 class="text-subtitle" id="flags_restartdiv"></h2>
    </div>
    <div class="container page-container">
        <div class="content-flags">
            <button class="pushbutton btn-default" id="ResetAllFlags" onclick="resetAllFlags()">將所有旗標重設為預設值</button>
            <section class="section remove-header-rule section-flags section-compat">
                <span class="section-icon" role="presentation">&#60432;</span>
                <header class="section-header">
                    <h2 class="text-title" id="flags_compatsettings">開發人員設定</h2>
                </header>
                <div class="section-body">
                    <form>
                        <div class="checkbox hideformobile">
                            <label for="F12ContextMenuEntryPoints">
                                <input type="checkbox" id="F12ContextMenuEntryPoints">
                                <span class="text-body" id="flags_f12ContextMenuEntryPoints">在操作功能表中顯示 [檢視原始檔] 與 [檢查元素]</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="CompatMode">
                                <input type="checkbox" id="CompatMode">
                                <span class="text-body" id="flags_compatmode">使用 Microsoft 相容性清單</span>
                            </label>
                        </div>
                        <div class="checkbox hideformobile">
                            <label for="EnableUseEnterpriseModeSiteList">
                                <input type="checkbox" id="EnableUseEnterpriseModeSiteList">
                                <span class="text-body" id="flags_enableUseEnterpriseModeSiteList">使用企業模式網站清單</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="LocalhostLoopback">
                                <input type="checkbox" id="LocalhostLoopback">
                                <span class="text-body" id="flags_localhostloopback">允許 localhost 回送 (這可能會讓您的裝置有風險)。某些狀況 (例如自訂回送主機檔案對應和來自內部網路網站的要求) 可能需要額外設定。如需詳細資訊,請參閱<a href="https://go.microsoft.com/fwlink/?linkid=838927">常見問題</a>。</span>
                            </label>
                        </div>
                        <div class="checkbox hideformobile">
                            <label for="BchostLocalhostLoopback">
                                <input type="checkbox" id="BchostLocalhostLoopback">
                                <span class="text-body" id="flags_bchostlocalhostloopback">允許 Adobe Flash Player localhost 回送 (這可能會使得您的裝置有危險)</span>
                            </label>
                        </div>
                        <div class="checkbox hideformobile">
                            <label for="EnableExtensionDevelopment">
                                <input type="checkbox" id="EnableExtensionDevelopment">
                                <span class="text-body" id="flags_enableExtensionDevelopment">啟用延伸模組開發人員功能 (這樣可能會讓您的裝置有風險)</span>
                            </label>
                        </div>
                        <div class="checkbox hideformobile">
                            <label for="AllowUnlimitedMemoryForContent">
                                <input type="checkbox" id="AllowUnlimitedMemoryForContent">
                                <span class="text-body" id="flags_allowUnlimitedMemoryForContent">為網頁允許不受限制的記憶體使用 (這可能會影響裝置的整體效能)</span>
                            </label>
                        </div>
                        <div class="checkbox hideformobile">
                            <label for="HideLocalHostIP">
                                <input type="checkbox" id="HideLocalHostIP">
                                <span class="text-body" id="flags_hidelocalhostip">在 WebRTC 連線上隱藏我的本機 IP 位址</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="EnablePenNavigation">
                                <input type="checkbox" id="EnablePenNavigation">
                                <span class="text-body" id="flags_enablePenNavigation">啟用觸控式手寫筆導覽和筒狀按鈕選擇</span>
                            </label>
                        </div>
                    </form>
                </div>
            </section>
            <section class="section remove-header-rule section-flags section-preview">
                <span class="section-icon" role="presentation">&#60431;</span>
                <header class="section-header">
                    <h2 class="text-title" id="flags_expfeatures">標準預覽</h2>
                </header>
                <div class="section-body">
                    <p class="section-preamble" id="flags_safetygoggles">注意! 這些功能是可變更的,代表其可能隨時變更、中斷或消失。使用的話可能也會導致未預期的瀏覽器行為,即您可能會遺失所有的瀏覽資料或者您的安全性及 (或) 隱私權可能會受到危害。如要繼續進行,風險請自行負責。</p>
                    <form>
                        <div class="form-group hideformobile">
                            <label id="flags_enabletouchev" for="TouchEvents">啟用觸控事件</label>
                            <select id="TouchEvents">
                                <option id="flags_touchon" value="1">一律開啟</option>
                                <option id="flags_touchdetect" value="2">只有在偵測到觸控式螢幕時</option>
                                <option id="flags_touchoff" value="0">一律關閉</option>
                            </select>
                        </div>
                        <div class="form-group hideformobile">
                            <label for="VP9VideoFormat" id="flags_EnableVP9">啟用 VP9 視訊格式</label>
                            <select id="VP9VideoFormat">
                                <option value="1" id="flags_VP9AlwaysOn">一律開啟</option>
                                <option value="2" id="flags_VP9Automatic">自動</option>
                                <option value="0" id="flags_VP9AlwaysOff">一律關閉</option>
                            </select>
                        </div>
                        <div class="checkbox">
                            <label for="ExperimentalJS">
                                <input type="checkbox" id="ExperimentalJS">
                                <span class="text-body" id="flags_expJS">啟用實驗性 JavaScript 功能</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="EnableStandardFullscreenAPI">
                                <input type="checkbox" id="EnableStandardFullscreenAPI">
                                <span class="text-body" id="flags_EnableStandardFullscreenAPI">啟用標準全螢幕 API</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="EnableIndividualTransforms">
                                <input type="checkbox" id="EnableIndividualTransforms">
                                <span class="text-body" id="flags_enableindividualtransforms">啟用個別轉換</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="CSSMasking">
                                <input type="checkbox" id="CSSMasking">
                                <span class="text-body" id="flags_cssmasking">啟用 CSS 遮罩</span>
                            </label>
                        </div>
                        <div class="checkbox showforhololensonly">
                            <label for="EnableWebVR_Holographic">
                                <input type="checkbox" id="EnableWebVR_Holographic">
                                <span class="text-body" id="flags_EnableWebVR_Holographic">啟用 WebVR</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="CSSClipPath">
                                <input type="checkbox" id="CSSClipPath">
                                <span class="text-body" id="flags_cssclippath">啟用 CSS 多媒體路徑</span>
                            </label>
                        </div>
                        <div class="checkbox">
                            <label for="CSSBackgroundBlendMode">
                                <input type="checkbox" id="CSSBackgroundBlendMode">
                                <span class="text-body" id="flags_cssbackgroundblendmode">啟用 CSS 背景混合模式屬性</span>
                            </label>
                        </div>
                    </form>
                </div>
            </section>
            <section class="section remove-header-rule section-flags section-experimental hidden" id="diagnostics" aria-atomic="true" aria-hidden="true">
                <span class="section-icon" role="presentation">&#60431;</span>
                <header class="section-header">
                    <h2 class="text-title" id="flags_expfeatures">診斷</h2>
                </header>
                <div class="section-body">
                    <section class="section item-section">
                        <header class="section-header">
                            <h3 class="section-title text-maxlines-1" id="flags_editing">文字輸入及編輯</h3>
                        </header>
                        <div class="section-body">
                            <form>
                                <div class="checkbox">
                                    <label for="EnableNewInsertParagraph">
                                        <input type="checkbox" id="EnableNewInsertParagraph">
                                        <span class="text-body" id="flags_enablenewinsertparagraph">啟用新的 InsertParagraph 命令</span>
                                    </label>
                                </div>
                            </form>
                        </div>
                    </section>
                    <section class="section item-section">
                        <header class="section-header">
                            <h3 class="section-title text-maxlines-1" id="flags_javascript">JavaScript</h3>
                        </header>
                        <div class="section-body">
                            <form>
                                <div class="checkbox">
                                    <label for="DisableRAFOnOutOfViewXDomainIframes">
                                        <input type="checkbox" id="DisableRAFOnOutOfViewXDomainIframes">
                                        <span class="text-body" id="flags_disablerafonoutofviewxdomainiframes">當跨來源框架不可見時,停用跨來源框架的 requestAnimationFrame 回呼</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="DisableClampTimersOnOutOfViewXDomainIframes">
                                        <input type="checkbox" id="DisableClampTimersOnOutOfViewXDomainIframes">
                                        <span class="text-body" id="flags_disableclamptimersonoutofviewxdomainiframes">當跨來源 iframe 不可見時,強制將 setTimeout 與 setInterval 設定為 1 秒的期間</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="AllowLowPowerMode">
                                        <input type="checkbox" id="AllowLowPowerMode">
                                        <span class="text-body" id="flags_allowlowpowermode">允許將背景索引標籤置於低電源模式中。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="UseMoreAggressiveBackgroundTimerClamping">
                                        <input type="checkbox" id="UseMoreAggressiveBackgroundTimerClamping">
                                        <span class="text-body" id="flags_useMoreAggressiveBackgroundTimerClamping">針對背景索引標籤強制將 setTimeout 與 setInterval 設為 30 秒而非 1 秒。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="UseMoreAggressiveXDomainIframeTimerClamping">
                                        <input type="checkbox" id="UseMoreAggressiveXDomainIframeTimerClamping">
                                        <span class="text-body" id="flags_useMoreAggressiveXDomainIframeTimerClamping">針對不可見的跨原始來源 iframe 強制將 setTimeout 與 setInterval 設為 30 秒而非 1 秒。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="ProcessRAFBeforePaint">
                                        <input type="checkbox" id="ProcessRAFBeforePaint">
                                        <span class="text-body" id="flags_processRAFBeforePaint">繪圖前處理 requestAnimationFrame 回呼,使規格符合規範</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="Use30FPS">
                                        <input type="checkbox" id="Use30FPS">
                                        <span class="text-body" id="flags_use30fps">將畫面播放速率強制設定為 30 fps 而不是 60 fps。此旗標已由 ForceVsyncPaintBeat 鎖定為 false。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="DisableHighFrequencyTimers">
                                        <input type="checkbox" id="DisableHighFrequencyTimers">
                                        <span class="text-body" id="flags_disableHighFrequencyTimers">停用高頻率指令碼計時器,將指令碼計時器強制設定為最高頻率 16 毫秒</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="ClampTimersToOneSecondWhenLoading">
                                        <input type="checkbox" id="ClampTimersToOneSecondWhenLoading">
                                        <span class="text-body" id="flags_clampTimersToOneSecondWhenLoading">載入頁面時強制將 setTimeout 與 setInterval 設為 1 秒的期間</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="AllowRenderThrottling">
                                        <input type="checkbox" id="AllowRenderThrottling">
                                        <span class="text-body" id="flags_allowRenderThrottling">允許針對轉譯管線進行節流,以延長電池使用時間。此旗標已由 ForceVsyncPaintBeat 鎖定為 false。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="AllowVsyncToTurnOffWhenBeatDidNotPaint">
                                        <input type="checkbox" id="AllowVsyncToTurnOffWhenBeatDidNotPaint">
                                        <span class="text-body" id="flags_allowVsyncToTurnOffWhenBeatDidNotPaint">允許 Vsync 在 setTimeout 不會造成 PSP 時關閉。此旗標已由 ForceVsyncPaintBeat 鎖定為 false。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="ForceVsyncPaintBeat">
                                        <input type="checkbox" id="ForceVsyncPaintBeat">
                                        <span class="text-body" id="flags_forceVsyncPaintBeat">強制所有繪圖訊號由 Vsync 驅動 (如果有的話)。此旗標將覆寫 AllowVsyncToTurnOffWhenBeatDidNotPaint、AllowRenderThrottling 和 Use30FPS。</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="BlockSpecificRenderThrottling">
                                        <input type="checkbox" id="BlockSpecificRenderThrottling">
                                        <span class="text-body" id="flags_blockSpecificRenderThrottling">禁止特定類型的轉譯節流</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="AllowPageOcclusionTesting">
                                        <input type="checkbox" id="AllowPageOcclusionTesting">
                                        <span class="text-body" id="flags_allowPageOcclusionTesting">開啟CAPS LOCK 鍵以測試網頁閉塞</span>
                                    </label>
                                </div>
                                <div class="checkbox">
                                    <label for="AllowPageOcclusionThrottling">
                                        <input type="checkbox" id="AllowPageOcclusionThrottling">
                                        <span class="text-body" id="flags_allowPageOcclusionThrottling">啟動隱藏幕前標籤頁的節流</span>
                                    </label>
                                </div>
                                <div class="form-group">
                                    <label id="flags_enablepausetask" for="PauseTask">啟用暫停工作</label>
                                    <select id="PauseTask">
                                        <option value="2" id="flags_pausetaskdefault">預設值</option>
                                        <option value="1" id="flags_pausetaskon">永遠開啟</option>
                                        <option value="0" id="flags_pausetaskoff">永遠關閉</option>
                                    </select>
                                </div>
                                <div class="checkbox">
                                    <label for="IFrameLifetimeManagement">
                                        <input type="checkbox" id="IFrameLifetimeManagement">
                                        <span class="text-body" id="flags_IFrameLifetimeManagement">允許 iframe 的 JavaScript 引擎維持運作,直到沒有傳入參考為止</span>
                                    </label>
                                </div>
                            </form>
                        </div>
                    </section>
                    <section class="section item-section">
                        <header class="section-header">
                            <h3 class="section-title text-maxlines-1" id="flags_networking">網路功能</h3>
                        </header>
                        <div class="section-body">
                            <form>
                                <div class="form-group">
                                    <label for="EnableTcpFastOpen" id="flags_EnableTcpFastOpen">啟用 TCP 快速開啟</label>
                                    <select id="EnableTcpFastOpen">
                                        <option value="1" id="flags_EnableTcpFastOpenAlwaysOn">永遠開啟</option>
                                        <option value="2" id="flags_EnableTcpFastOpenAutomatic">自動</option>
                                        <option value="0" id="flags_EnableTcpFastOpenAlwaysOff">永遠關閉</option>
                                    </select>
                                </div>
                            </form>
                        </div>
                    </section>
                    <section class="section item-section">
                        <header class="section-header">
                            <h3 class="section-title text-maxlines-1" id="flags_elemprops">元素內容</h3>
                        </header>
                        <div class="section-body">
                            <form>
                                <div class="checkbox">
                                    <label for="RelayHoverActiveFromControlToLabels">
                                        <input type="checkbox" id="RelayHoverActiveFromControlToLabels">
                                        <span class="text-body" id="flags_relayhover">轉送與元素關聯之標籤的暫留與作用中狀態</span>
                                    </label>
                                </div>
                            </form>
                        </div>
                    </section>
                </div>
            </section>
        </div>
    </div>
    <div class="spacer" id="SpacerDiv"></div>
</body>
</html>

P�PNG


IHDR$�0�-PLTE���JVmBLaKWo������LXp�=�+tRNS+&
�����SIDAT(Sc`�.�~/-�B|g`�0B�.�9s�S(!tdPHS�`"۩���y���`��,�!� �0O��tX@�]R����IEND�B`�PAD�PNG


IHDR$,-��IDATx�͗?ha�/���.�$mj��AmET�A[qq��?t*�A)�;�Үu�Һ��b�	�CE���DLKlJ-D!Z����S�JL.�!M���;r�}��������u�0ĭ��̳�a��F'��\�����P(t��pt�����CCC�X,�977וL&/�������u��������`E"�����#�/0t>����㞖��T*}�f������F9vV{{;���m�x����g�D"���4��5����c;yv&��/N�Q�|>��u�"�D�$�~?#�St;��Nߵ7�1��tWۼ�kHӴ"E�z����_~��ї����kUUK.��l�����e5h_�U۲�T*%lnn�L�5�h��
!4!666t��E����b�"�
z�PC��Z�y���B�Jv��E�_�!�hx+&��d�ʒ�*��)P�
&ϲdd�l�f¸+���?�����j�����o�.�M�5����5DoP���Q�f@i�$I�e�]c{8%�j5����vU	Doa�DS�0$a�-�����%S�BG�s��͛�1R���%�]kH�$r�P��1Q�d��1�^c#�2�0ѩ�&�VsHrJ��j�e����3J�9�*��L�k
	�[����>7��t�_QKC3�_ٖUx�^�,0��1D���z=�Y�q��tTd�Sq��a��ӳ�@ �=EL�+{Y��/���'Nmnm�����:�N�>P�e2N�G�
:mN;���V�������z�2}
�Vf����5��w�s_��<�c�}�z8���"H��Чp8�111��tw_�x<NP0�^��p�>X�v�m|�bc�
SL^���a��u��8�Ch�l�[z����������Ӕ��AZ������`08��m���k(0����f����4�����������+��IEND�B`�PA�PNG


IHDR$,-�XIDATx�͗]O�P�۞��V���0���1xc�+͌WF��a��(~/4\H�7^@�E����X�f�DDM67��֗��t-ήs%)�����iO{z�R*'�~@�A��y~跳%Ɩ	�J%e||\���R��q��531��N���)�D�z.�{d���k²�s��Y�l�~__�Et@:��ޮ
�	8�F�[M���?`�d>���B֥�8n8�ܛH�OӠ��������i7kr�0,G~�+�� /����N����5W֢#�1��]�Յ�Y�xU&�!��ꮜ����n�QK൵�ŀ���ѽ�*~��Kɦ4*xx���Z��=�2��sMiT(��e���px�>�;��i1��iX��KM�������1��6�U�W*�Z_YY������/�V���Z�P(�	��Ρ�&��<�R{�'� ��bD����n\.�SDԝ_B�X���(��������av����dgG��� l���e�(Jp9�Nfbv��a�nD�6��m�k��W˾�h4�[Z˜Q�2"�]'�!B8�
/�䓣�Z�NϿa�B�������&a���ٻ�~W�4�$JGa���=�B{w���o��nl|����X*�y�"��޶08�zl��7p���~Q��#�G��=�L��8�$��,C9��]+T��Ya=�����=+M�V?��	�DHgg�®@�U�ZwX���9�~J����	-���1$Q4eY�i$x�L�&B(��9��
�/g�'�W�֮���W��i�0��m�����v���3��8�d=�L��O�ӻ��d2��b�ߗa&f�����`�v�v��T��p��1�
IEND�B`�PAD�PNG


IHDR�?T/�IDATH��V[H�ANSC!/eJA`V$FY�iy�T��P�i�{�յ�JE�KT�)Vۺ)Z���J��u�mn^
5��(�z�J���k��у��Ћ>��Μ��̙3k�6�Y0X2X1X3�pX�9K��N���8�Q���ٛ������}l��L*�ek�x0f�"U���9-8}��ײ�
�<��Iπ�}S�)�1�1k�?�sM
`�q�R��VoDq�d�^"D1����=֋���@c�a�GEF��Y0)KbL��:��qa�i�8�z�{]��dC��w�w �w�B������3`9#�tƔ��6#r�_�W:���|��_?'�Yg���^���&�o�#��;.����k�b&��<���2?iB�q��3l�kp ψ/��1�}��:,/é�GB
$˒���y���ފ��
Jq�~�lJ2�'Q�Mp	��׎j�y�#��"�����Z%!���Í����̚Z�*:4E����N��#����p����J^�Bv����=L�u�%Bdef��=V28q���L:��Ǻ=-p�����r����nǛ�CHϫ��05��܀W�
�W��|�B~��sNB)�o�ҰJ8���a���TAy�UuxD��'�sZ����6	iOW�?7Ź5)��V�*��{���$�*v**�/�>�k�9����ر\Tu'�+LI�I&���Հm��.��%����)z��@�a|w�o��H'c�Xh5&4
S
��Î$��C�3"JR�KL�m� ��E�TQt7ĹF44�"#NX{��j$6��$�����>ā��ؚT�m�Z�s�P��U����ֈD��z�"3�ޖ��$��9���s����$��<u�$��\$ �J�j*.~ƞ���9.����i\��䭴���7Gs]���`l8#{�B9������5kf�?X�/�X�IEND�B`�PAD�PNG


IHDR�?T/�IDATx��[h����w�c�I4����Q���b���-�-E�W�l��J�ݻҽ��
�+�n�����*� z���f��q�Lb29mf�L������y`\�$jn��?O����|�{����
�"�#��j	�$kd�W����y����R��S�>޶m�eل�Z��8n֜�9�c.Ï�8q�w===����btt419996===�"��ΎsL���_e��yo޼�簾�O��\���W��Ϟ=�F�pg�*�}������g7c�����~��V�1��4�ddd$>88��x<~�U��D"q��f���<�j�JUUiYVA���Ǟ�dIc�m�HB�疜��Fcm�U}w]�&�_�g�hb��\kv%�b��w�4���p���q�mwۤ�iR�uo�"����֋����j�!ו���Ժ�B4R���RS:5����t'-�A*`�ֲ��sk`�:�C��^|2��Ʀ�7�tta"���Q0�r�iK��cw�6=1t0�4�E�Y,��Agm��n�I�ͭ�d�����[��π��
��n�J��w�t��11>�'�hj�P(�(�"���ݩ'��Eվ��.�����!
a��a	E�Dp`���g� �~�,--���z���2$���𸀵mWֶ��@����h�gV���@E	�Uć��~q�}�y��mE,"p���ʠ1Z~5�kii��f�_�f�:8�՚��4�M��p'^�tʐ�E�>����<>��bz�&S��r�b��f�c(�B��P�����Tj�ʕ+��Tl�U=2��C-��r�Ud���e���(�J��<�l�F�'0�*��HOFoܸ1q�ڵ��̩��W�#p�Ұ�+ �Z@�X�/�ou��ܕn�/#��"�P@]�[z[H[��@�B�l3Agh����<��sm��O��)��CC���CB�ޝ:hh�5M��u]p$�z�$�J�jWl�����=��f! !�]Uq�4�~u�:�������S3�e�
�f3��m��*����Ye�����i5z����U���R������4K�MC�wx�|]Ž����]��I�`W��uΓR�
ïjZ����F�\�����Xb���D��/���4�{�U����q��?�m6
�Uʣ����Y?箫k�‡�P(*>�_-��Ol���:1<Y��Ź?BS|h����#::ZmL�
�����w���A���t�8B�e�v�uM׷���"���E�T��[�ݷ3���;[�w�~m��Bs��ݾ��LN<^Z^�o��B��7���&q����
�I}�DY*(~?P*U,��9%O�����T5F��TOǬU��S�S�r)Igy�Zm��)��Eu)��t�(���	��C�m��
=��m�*��~�v4��Ҏ�,�-K�<W/�-����z�v]d�A-�ŧP�
��	�l7��v�K�Hĥox����:r��iH�m,^�,\�<�y��8�wM>��X��r�:���0fS6�.nM$Rē���GO�<y�ҥK
����7��;X�&I(�P�=�2t��:�+�*I|{ث��d���9w��G~s�<~�x��ŋ���>��7�{��}�0�y����]lR


�c�V/\��a.�9H��#�Nr�K�g0y�02���G�#IEND�B`�PAD�PNG


IHDR�?T/�IDATx��Il������f�,x����S@&
I�TU�)�R��J�P[�[����C�ޫ�PU
��JiI�*�%�`C�;���ƞ�=�,��}^ՖF��_�k>��{��݀�$��4���/������B�$��k��۶�9s�Lk]]���˲�/9� �ɊϞ=����L6���b
�gk��(y/ *���rCG��<�|���fF7����###o������<[*�'�e��,�Υ�%����_����XXX@$���1�}_&�u]�_h�&TU���^y��Z%�F�J��jX#���I�&	�g�~�Aj���-�r9�H�i�Fc�ѦƦ�}=kY�B>=�ImL�Y�HA�~@���~~����ykG]��g_'���Z\�7���4��~����W��
=b���{dg#8�M6y�����k�m�X.�K�
Fg=@xHE�x�e7�h2&����鉔+勝��O�o��n���u��
3�]�v����;�On���x%�w��F�
���q���nW;H����-��4��&�@Ts��v9�.]����c������]$"
>�i񈀢�b���ނ����m��޸y��=����ax4>]��peC;�uS�����h�ͩ�n
9PQ�m��?f�_�/׋�U�;�#c��y�������-�:�>}����@ƪ��mw�κK��W(����>(QU�&X�o��ޣU�����F&f1�d�Rwr��؎�Bk���\ƪ��n�v�,���q�vb����.VWKX,�8>x/
�)��a��"��x����"S,UZ�Lƪ��o�&aM�����D@�^��a����"�%��nś��ㇸq{�D
�Au}��+W��ӆ����Ho}�l�Mb���:�δ�\~˅|jM�#`�44}$�� 
��
1�o8��.�ʺ��0S�.m 8��$�28�誏k_N��CM�A3M
Cc!��
C~C�~@�輀�U[�<�{z�q������w@%��1�S�h�o���9C�l�� Z�L�m�059aW��Wr���?8M4�2f��b1��8�p�~/����8WQq4���bQ��Xh١�'o1>��ӓ�ҙݛJ��d2)(�fx���|_)V��㉄�L�����`
�;�~�CEZN��/Yh���8�u�hkr16|ٯ{h���dxcS��1���_\�,���	�{�Z,�Z���}F����s�,�OÏ�Vh�1m ��2���C��pfg�\s\�����y}}�B1�uU2��P0�n����z~P��Bp�`��1���\�������h����W�YclH��b���7L�?��T2�4�ruj*�6(��z.gL��J�&�tUUB��+ ��1MӔ��%��V���s+��V�[�绪��@ �E��-�x\M$����k`�1�����p�eZ1�}�� �4%b�I�B,�k�b�]�4��`�u=n�3t���E�� �K���%��pEQ5ɩ�;t��cc�---�hl�e ��(�v��SjkA<O�9"[nQ�@G'#S�5.��r}p	]7#2��vdxx�x�\	|�ĉ�#]]+}��殝;_S%�V��P�N?�쓣��Z|ͨ�뿔h�
�����p��I�&�ڿ�x��i\�psssxY�i�u���n�;w�i^�p�B�fr�|Yp�M�&�����4v��>@@IEND�B`�PA<!ENTITY Tab "&#x9;">
<!ENTITY NewLine "&#xA;">
<!ENTITY excl "&#x21;">
<!ENTITY quot "&#x22;">
<!ENTITY QUOT "&#x22;">
<!ENTITY num "&#x23;">
<!ENTITY dollar "&#x24;">
<!ENTITY percnt "&#x25;">
<!ENTITY amp "&#x26;">
<!ENTITY AMP "&#x26;">
<!ENTITY apos "&#x27;">
<!ENTITY lpar "&#x28;">
<!ENTITY rpar "&#x29;">
<!ENTITY ast "&#x2A;">
<!ENTITY midast "&#x2A;">
<!ENTITY plus "&#x2B;">
<!ENTITY comma "&#x2C;">
<!ENTITY period "&#x2E;">
<!ENTITY sol "&#x2F;">
<!ENTITY colon "&#x3A;">
<!ENTITY semi "&#x3B;">
<!ENTITY lt "&#x3C;">
<!ENTITY LT "&#x3C;">
<!ENTITY equals "&#x3D;">
<!ENTITY gt "&#x3E;">
<!ENTITY GT "&#x3E;">
<!ENTITY quest "&#x3F;">
<!ENTITY commat "&#x40;">
<!ENTITY lsqb "&#x5B;">
<!ENTITY lbrack "&#x5B;">
<!ENTITY bsol "&#x5C;">
<!ENTITY rsqb "&#x5D;">
<!ENTITY rbrack "&#x5D;">
<!ENTITY Hat "&#x5E;">
<!ENTITY lowbar "&#x5F;">
<!ENTITY UnderBar "&#x5F;">
<!ENTITY grave "&#x60;">
<!ENTITY DiacriticalGrave "&#x60;">
<!ENTITY lcub "&#x7B;">
<!ENTITY lbrace "&#x7B;">
<!ENTITY verbar "&#x7C;">
<!ENTITY vert "&#x7C;">
<!ENTITY VerticalLine "&#x7C;">
<!ENTITY rcub "&#x7D;">
<!ENTITY rbrace "&#x7D;">
<!ENTITY nbsp "&#xA0;">
<!ENTITY NonBreakingSpace "&#xA0;">
<!ENTITY iexcl "&#xA1;">
<!ENTITY cent "&#xA2;">
<!ENTITY pound "&#xA3;">
<!ENTITY curren "&#xA4;">
<!ENTITY yen "&#xA5;">
<!ENTITY brvbar "&#xA6;">
<!ENTITY sect "&#xA7;">
<!ENTITY Dot "&#xA8;">
<!ENTITY die "&#xA8;">
<!ENTITY DoubleDot "&#xA8;">
<!ENTITY uml "&#xA8;">
<!ENTITY copy "&#xA9;">
<!ENTITY COPY "&#xA9;">
<!ENTITY ordf "&#xAA;">
<!ENTITY laquo "&#xAB;">
<!ENTITY not "&#xAC;">
<!ENTITY shy "&#xAD;">
<!ENTITY reg "&#xAE;">
<!ENTITY circledR "&#xAE;">
<!ENTITY REG "&#xAE;">
<!ENTITY macr "&#xAF;">
<!ENTITY strns "&#xAF;">
<!ENTITY deg "&#xB0;">
<!ENTITY plusmn "&#xB1;">
<!ENTITY pm "&#xB1;">
<!ENTITY PlusMinus "&#xB1;">
<!ENTITY sup2 "&#xB2;">
<!ENTITY sup3 "&#xB3;">
<!ENTITY acute "&#xB4;">
<!ENTITY DiacriticalAcute "&#xB4;">
<!ENTITY micro "&#xB5;">
<!ENTITY para "&#xB6;">
<!ENTITY middot "&#xB7;">
<!ENTITY centerdot "&#xB7;">
<!ENTITY CenterDot "&#xB7;">
<!ENTITY cedil "&#xB8;">
<!ENTITY Cedilla "&#xB8;">
<!ENTITY sup1 "&#xB9;">
<!ENTITY ordm "&#xBA;">
<!ENTITY raquo "&#xBB;">
<!ENTITY frac14 "&#xBC;">
<!ENTITY frac12 "&#xBD;">
<!ENTITY half "&#xBD;">
<!ENTITY frac34 "&#xBE;">
<!ENTITY iquest "&#xBF;">
<!ENTITY Agrave "&#xC0;">
<!ENTITY Aacute "&#xC1;">
<!ENTITY Acirc "&#xC2;">
<!ENTITY Atilde "&#xC3;">
<!ENTITY Auml "&#xC4;">
<!ENTITY Aring "&#xC5;">
<!ENTITY angst "&#xC5;">
<!ENTITY AElig "&#xC6;">
<!ENTITY Ccedil "&#xC7;">
<!ENTITY Egrave "&#xC8;">
<!ENTITY Eacute "&#xC9;">
<!ENTITY Ecirc "&#xCA;">
<!ENTITY Euml "&#xCB;">
<!ENTITY Igrave "&#xCC;">
<!ENTITY Iacute "&#xCD;">
<!ENTITY Icirc "&#xCE;">
<!ENTITY Iuml "&#xCF;">
<!ENTITY ETH "&#xD0;">
<!ENTITY Ntilde "&#xD1;">
<!ENTITY Ograve "&#xD2;">
<!ENTITY Oacute "&#xD3;">
<!ENTITY Ocirc "&#xD4;">
<!ENTITY Otilde "&#xD5;">
<!ENTITY Ouml "&#xD6;">
<!ENTITY times "&#xD7;">
<!ENTITY Oslash "&#xD8;">
<!ENTITY Ugrave "&#xD9;">
<!ENTITY Uacute "&#xDA;">
<!ENTITY Ucirc "&#xDB;">
<!ENTITY Uuml "&#xDC;">
<!ENTITY Yacute "&#xDD;">
<!ENTITY THORN "&#xDE;">
<!ENTITY szlig "&#xDF;">
<!ENTITY agrave "&#xE0;">
<!ENTITY aacute "&#xE1;">
<!ENTITY acirc "&#xE2;">
<!ENTITY atilde "&#xE3;">
<!ENTITY auml "&#xE4;">
<!ENTITY aring "&#xE5;">
<!ENTITY aelig "&#xE6;">
<!ENTITY ccedil "&#xE7;">
<!ENTITY egrave "&#xE8;">
<!ENTITY eacute "&#xE9;">
<!ENTITY ecirc "&#xEA;">
<!ENTITY euml "&#xEB;">
<!ENTITY igrave "&#xEC;">
<!ENTITY iacute "&#xED;">
<!ENTITY icirc "&#xEE;">
<!ENTITY iuml "&#xEF;">
<!ENTITY eth "&#xF0;">
<!ENTITY ntilde "&#xF1;">
<!ENTITY ograve "&#xF2;">
<!ENTITY oacute "&#xF3;">
<!ENTITY ocirc "&#xF4;">
<!ENTITY otilde "&#xF5;">
<!ENTITY ouml "&#xF6;">
<!ENTITY divide "&#xF7;">
<!ENTITY div "&#xF7;">
<!ENTITY oslash "&#xF8;">
<!ENTITY ugrave "&#xF9;">
<!ENTITY uacute "&#xFA;">
<!ENTITY ucirc "&#xFB;">
<!ENTITY uuml "&#xFC;">
<!ENTITY yacute "&#xFD;">
<!ENTITY thorn "&#xFE;">
<!ENTITY yuml "&#xFF;">
<!ENTITY Amacr "&#x100;">
<!ENTITY amacr "&#x101;">
<!ENTITY Abreve "&#x102;">
<!ENTITY abreve "&#x103;">
<!ENTITY Aogon "&#x104;">
<!ENTITY aogon "&#x105;">
<!ENTITY Cacute "&#x106;">
<!ENTITY cacute "&#x107;">
<!ENTITY Ccirc "&#x108;">
<!ENTITY ccirc "&#x109;">
<!ENTITY Cdot "&#x10A;">
<!ENTITY cdot "&#x10B;">
<!ENTITY Ccaron "&#x10C;">
<!ENTITY ccaron "&#x10D;">
<!ENTITY Dcaron "&#x10E;">
<!ENTITY dcaron "&#x10F;">
<!ENTITY Dstrok "&#x110;">
<!ENTITY dstrok "&#x111;">
<!ENTITY Emacr "&#x112;">
<!ENTITY emacr "&#x113;">
<!ENTITY Edot "&#x116;">
<!ENTITY edot "&#x117;">
<!ENTITY Eogon "&#x118;">
<!ENTITY eogon "&#x119;">
<!ENTITY Ecaron "&#x11A;">
<!ENTITY ecaron "&#x11B;">
<!ENTITY Gcirc "&#x11C;">
<!ENTITY gcirc "&#x11D;">
<!ENTITY Gbreve "&#x11E;">
<!ENTITY gbreve "&#x11F;">
<!ENTITY Gdot "&#x120;">
<!ENTITY gdot "&#x121;">
<!ENTITY Gcedil "&#x122;">
<!ENTITY Hcirc "&#x124;">
<!ENTITY hcirc "&#x125;">
<!ENTITY Hstrok "&#x126;">
<!ENTITY hstrok "&#x127;">
<!ENTITY Itilde "&#x128;">
<!ENTITY itilde "&#x129;">
<!ENTITY Imacr "&#x12A;">
<!ENTITY imacr "&#x12B;">
<!ENTITY Iogon "&#x12E;">
<!ENTITY iogon "&#x12F;">
<!ENTITY Idot "&#x130;">
<!ENTITY imath "&#x131;">
<!ENTITY inodot "&#x131;">
<!ENTITY IJlig "&#x132;">
<!ENTITY ijlig "&#x133;">
<!ENTITY Jcirc "&#x134;">
<!ENTITY jcirc "&#x135;">
<!ENTITY Kcedil "&#x136;">
<!ENTITY kcedil "&#x137;">
<!ENTITY kgreen "&#x138;">
<!ENTITY Lacute "&#x139;">
<!ENTITY lacute "&#x13A;">
<!ENTITY Lcedil "&#x13B;">
<!ENTITY lcedil "&#x13C;">
<!ENTITY Lcaron "&#x13D;">
<!ENTITY lcaron "&#x13E;">
<!ENTITY Lmidot "&#x13F;">
<!ENTITY lmidot "&#x140;">
<!ENTITY Lstrok "&#x141;">
<!ENTITY lstrok "&#x142;">
<!ENTITY Nacute "&#x143;">
<!ENTITY nacute "&#x144;">
<!ENTITY Ncedil "&#x145;">
<!ENTITY ncedil "&#x146;">
<!ENTITY Ncaron "&#x147;">
<!ENTITY ncaron "&#x148;">
<!ENTITY napos "&#x149;">
<!ENTITY ENG "&#x14A;">
<!ENTITY eng "&#x14B;">
<!ENTITY Omacr "&#x14C;">
<!ENTITY omacr "&#x14D;">
<!ENTITY Odblac "&#x150;">
<!ENTITY odblac "&#x151;">
<!ENTITY OElig "&#x152;">
<!ENTITY oelig "&#x153;">
<!ENTITY Racute "&#x154;">
<!ENTITY racute "&#x155;">
<!ENTITY Rcedil "&#x156;">
<!ENTITY rcedil "&#x157;">
<!ENTITY Rcaron "&#x158;">
<!ENTITY rcaron "&#x159;">
<!ENTITY Sacute "&#x15A;">
<!ENTITY sacute "&#x15B;">
<!ENTITY Scirc "&#x15C;">
<!ENTITY scirc "&#x15D;">
<!ENTITY Scedil "&#x15E;">
<!ENTITY scedil "&#x15F;">
<!ENTITY Scaron "&#x160;">
<!ENTITY scaron "&#x161;">
<!ENTITY Tcedil "&#x162;">
<!ENTITY tcedil "&#x163;">
<!ENTITY Tcaron "&#x164;">
<!ENTITY tcaron "&#x165;">
<!ENTITY Tstrok "&#x166;">
<!ENTITY tstrok "&#x167;">
<!ENTITY Utilde "&#x168;">
<!ENTITY utilde "&#x169;">
<!ENTITY Umacr "&#x16A;">
<!ENTITY umacr "&#x16B;">
<!ENTITY Ubreve "&#x16C;">
<!ENTITY ubreve "&#x16D;">
<!ENTITY Uring "&#x16E;">
<!ENTITY uring "&#x16F;">
<!ENTITY Udblac "&#x170;">
<!ENTITY udblac "&#x171;">
<!ENTITY Uogon "&#x172;">
<!ENTITY uogon "&#x173;">
<!ENTITY Wcirc "&#x174;">
<!ENTITY wcirc "&#x175;">
<!ENTITY Ycirc "&#x176;">
<!ENTITY ycirc "&#x177;">
<!ENTITY Yuml "&#x178;">
<!ENTITY Zacute "&#x179;">
<!ENTITY zacute "&#x17A;">
<!ENTITY Zdot "&#x17B;">
<!ENTITY zdot "&#x17C;">
<!ENTITY Zcaron "&#x17D;">
<!ENTITY zcaron "&#x17E;">
<!ENTITY fnof "&#x192;">
<!ENTITY imped "&#x1B5;">
<!ENTITY gacute "&#x1F5;">
<!ENTITY jmath "&#x237;">
<!ENTITY circ "&#x2C6;">
<!ENTITY caron "&#x2C7;">
<!ENTITY Hacek "&#x2C7;">
<!ENTITY breve "&#x2D8;">
<!ENTITY Breve "&#x2D8;">
<!ENTITY dot "&#x2D9;">
<!ENTITY DiacriticalDot "&#x2D9;">
<!ENTITY ring "&#x2DA;">
<!ENTITY ogon "&#x2DB;">
<!ENTITY tilde "&#x2DC;">
<!ENTITY DiacriticalTilde "&#x2DC;">
<!ENTITY dblac "&#x2DD;">
<!ENTITY DiacriticalDoubleAcute "&#x2DD;">
<!ENTITY DownBreve "&#x311;">
<!ENTITY Alpha "&#x391;">
<!ENTITY Beta "&#x392;">
<!ENTITY Gamma "&#x393;">
<!ENTITY Delta "&#x394;">
<!ENTITY Epsilon "&#x395;">
<!ENTITY Zeta "&#x396;">
<!ENTITY Eta "&#x397;">
<!ENTITY Theta "&#x398;">
<!ENTITY Iota "&#x399;">
<!ENTITY Kappa "&#x39A;">
<!ENTITY Lambda "&#x39B;">
<!ENTITY Mu "&#x39C;">
<!ENTITY Nu "&#x39D;">
<!ENTITY Xi "&#x39E;">
<!ENTITY Omicron "&#x39F;">
<!ENTITY Pi "&#x3A0;">
<!ENTITY Rho "&#x3A1;">
<!ENTITY Sigma "&#x3A3;">
<!ENTITY Tau "&#x3A4;">
<!ENTITY Upsilon "&#x3A5;">
<!ENTITY Phi "&#x3A6;">
<!ENTITY Chi "&#x3A7;">
<!ENTITY Psi "&#x3A8;">
<!ENTITY Omega "&#x3A9;">
<!ENTITY ohm "&#x3A9;">
<!ENTITY alpha "&#x3B1;">
<!ENTITY beta "&#x3B2;">
<!ENTITY gamma "&#x3B3;">
<!ENTITY delta "&#x3B4;">
<!ENTITY epsi "&#x3B5;">
<!ENTITY epsilon "&#x3B5;">
<!ENTITY zeta "&#x3B6;">
<!ENTITY eta "&#x3B7;">
<!ENTITY theta "&#x3B8;">
<!ENTITY iota "&#x3B9;">
<!ENTITY kappa "&#x3BA;">
<!ENTITY lambda "&#x3BB;">
<!ENTITY mu "&#x3BC;">
<!ENTITY nu "&#x3BD;">
<!ENTITY xi "&#x3BE;">
<!ENTITY omicron "&#x3BF;">
<!ENTITY pi "&#x3C0;">
<!ENTITY rho "&#x3C1;">
<!ENTITY sigmav "&#x3C2;">
<!ENTITY varsigma "&#x3C2;">
<!ENTITY sigmaf "&#x3C2;">
<!ENTITY sigma "&#x3C3;">
<!ENTITY tau "&#x3C4;">
<!ENTITY upsi "&#x3C5;">
<!ENTITY upsilon "&#x3C5;">
<!ENTITY phi "&#x3C6;">
<!ENTITY chi "&#x3C7;">
<!ENTITY psi "&#x3C8;">
<!ENTITY omega "&#x3C9;">
<!ENTITY thetav "&#x3D1;">
<!ENTITY vartheta "&#x3D1;">
<!ENTITY thetasym "&#x3D1;">
<!ENTITY Upsi "&#x3D2;">
<!ENTITY upsih "&#x3D2;">
<!ENTITY straightphi "&#x3D5;">
<!ENTITY phiv "&#x3D5;">
<!ENTITY varphi "&#x3D5;">
<!ENTITY piv "&#x3D6;">
<!ENTITY varpi "&#x3D6;">
<!ENTITY Gammad "&#x3DC;">
<!ENTITY gammad "&#x3DD;">
<!ENTITY digamma "&#x3DD;">
<!ENTITY kappav "&#x3F0;">
<!ENTITY varkappa "&#x3F0;">
<!ENTITY rhov "&#x3F1;">
<!ENTITY varrho "&#x3F1;">
<!ENTITY epsiv "&#x3F5;">
<!ENTITY straightepsilon "&#x3F5;">
<!ENTITY varepsilon "&#x3F5;">
<!ENTITY bepsi "&#x3F6;">
<!ENTITY backepsilon "&#x3F6;">
<!ENTITY IOcy "&#x401;">
<!ENTITY DJcy "&#x402;">
<!ENTITY GJcy "&#x403;">
<!ENTITY Jukcy "&#x404;">
<!ENTITY DScy "&#x405;">
<!ENTITY Iukcy "&#x406;">
<!ENTITY YIcy "&#x407;">
<!ENTITY Jsercy "&#x408;">
<!ENTITY LJcy "&#x409;">
<!ENTITY NJcy "&#x40A;">
<!ENTITY TSHcy "&#x40B;">
<!ENTITY KJcy "&#x40C;">
<!ENTITY Ubrcy "&#x40E;">
<!ENTITY DZcy "&#x40F;">
<!ENTITY Acy "&#x410;">
<!ENTITY Bcy "&#x411;">
<!ENTITY Vcy "&#x412;">
<!ENTITY Gcy "&#x413;">
<!ENTITY Dcy "&#x414;">
<!ENTITY IEcy "&#x415;">
<!ENTITY ZHcy "&#x416;">
<!ENTITY Zcy "&#x417;">
<!ENTITY Icy "&#x418;">
<!ENTITY Jcy "&#x419;">
<!ENTITY Kcy "&#x41A;">
<!ENTITY Lcy "&#x41B;">
<!ENTITY Mcy "&#x41C;">
<!ENTITY Ncy "&#x41D;">
<!ENTITY Ocy "&#x41E;">
<!ENTITY Pcy "&#x41F;">
<!ENTITY Rcy "&#x420;">
<!ENTITY Scy "&#x421;">
<!ENTITY Tcy "&#x422;">
<!ENTITY Ucy "&#x423;">
<!ENTITY Fcy "&#x424;">
<!ENTITY KHcy "&#x425;">
<!ENTITY TScy "&#x426;">
<!ENTITY CHcy "&#x427;">
<!ENTITY SHcy "&#x428;">
<!ENTITY SHCHcy "&#x429;">
<!ENTITY HARDcy "&#x42A;">
<!ENTITY Ycy "&#x42B;">
<!ENTITY SOFTcy "&#x42C;">
<!ENTITY Ecy "&#x42D;">
<!ENTITY YUcy "&#x42E;">
<!ENTITY YAcy "&#x42F;">
<!ENTITY acy "&#x430;">
<!ENTITY bcy "&#x431;">
<!ENTITY vcy "&#x432;">
<!ENTITY gcy "&#x433;">
<!ENTITY dcy "&#x434;">
<!ENTITY iecy "&#x435;">
<!ENTITY zhcy "&#x436;">
<!ENTITY zcy "&#x437;">
<!ENTITY icy "&#x438;">
<!ENTITY jcy "&#x439;">
<!ENTITY kcy "&#x43A;">
<!ENTITY lcy "&#x43B;">
<!ENTITY mcy "&#x43C;">
<!ENTITY ncy "&#x43D;">
<!ENTITY ocy "&#x43E;">
<!ENTITY pcy "&#x43F;">
<!ENTITY rcy "&#x440;">
<!ENTITY scy "&#x441;">
<!ENTITY tcy "&#x442;">
<!ENTITY ucy "&#x443;">
<!ENTITY fcy "&#x444;">
<!ENTITY khcy "&#x445;">
<!ENTITY tscy "&#x446;">
<!ENTITY chcy "&#x447;">
<!ENTITY shcy "&#x448;">
<!ENTITY shchcy "&#x449;">
<!ENTITY hardcy "&#x44A;">
<!ENTITY ycy "&#x44B;">
<!ENTITY softcy "&#x44C;">
<!ENTITY ecy "&#x44D;">
<!ENTITY yucy "&#x44E;">
<!ENTITY yacy "&#x44F;">
<!ENTITY iocy "&#x451;">
<!ENTITY djcy "&#x452;">
<!ENTITY gjcy "&#x453;">
<!ENTITY jukcy "&#x454;">
<!ENTITY dscy "&#x455;">
<!ENTITY iukcy "&#x456;">
<!ENTITY yicy "&#x457;">
<!ENTITY jsercy "&#x458;">
<!ENTITY ljcy "&#x459;">
<!ENTITY njcy "&#x45A;">
<!ENTITY tshcy "&#x45B;">
<!ENTITY kjcy "&#x45C;">
<!ENTITY ubrcy "&#x45E;">
<!ENTITY dzcy "&#x45F;">
<!ENTITY ensp "&#x2002;">
<!ENTITY emsp "&#x2003;">
<!ENTITY emsp13 "&#x2004;">
<!ENTITY emsp14 "&#x2005;">
<!ENTITY numsp "&#x2007;">
<!ENTITY puncsp "&#x2008;">
<!ENTITY thinsp "&#x2009;">
<!ENTITY ThinSpace "&#x2009;">
<!ENTITY hairsp "&#x200A;">
<!ENTITY VeryThinSpace "&#x200A;">
<!ENTITY ZeroWidthSpace "&#x200B;">
<!ENTITY NegativeVeryThinSpace "&#x200B;">
<!ENTITY NegativeThinSpace "&#x200B;">
<!ENTITY NegativeMediumSpace "&#x200B;">
<!ENTITY NegativeThickSpace "&#x200B;">
<!ENTITY zwnj "&#x200C;">
<!ENTITY zwj "&#x200D;">
<!ENTITY lrm "&#x200E;">
<!ENTITY rlm "&#x200F;">
<!ENTITY hyphen "&#x2010;">
<!ENTITY dash "&#x2010;">
<!ENTITY ndash "&#x2013;">
<!ENTITY mdash "&#x2014;">
<!ENTITY horbar "&#x2015;">
<!ENTITY Verbar "&#x2016;">
<!ENTITY Vert "&#x2016;">
<!ENTITY lsquo "&#x2018;">
<!ENTITY OpenCurlyQuote "&#x2018;">
<!ENTITY rsquo "&#x2019;">
<!ENTITY rsquor "&#x2019;">
<!ENTITY CloseCurlyQuote "&#x2019;">
<!ENTITY lsquor "&#x201A;">
<!ENTITY sbquo "&#x201A;">
<!ENTITY ldquo "&#x201C;">
<!ENTITY OpenCurlyDoubleQuote "&#x201C;">
<!ENTITY rdquo "&#x201D;">
<!ENTITY rdquor "&#x201D;">
<!ENTITY CloseCurlyDoubleQuote "&#x201D;">
<!ENTITY ldquor "&#x201E;">
<!ENTITY bdquo "&#x201E;">
<!ENTITY dagger "&#x2020;">
<!ENTITY Dagger "&#x2021;">
<!ENTITY ddagger "&#x2021;">
<!ENTITY bull "&#x2022;">
<!ENTITY bullet "&#x2022;">
<!ENTITY nldr "&#x2025;">
<!ENTITY hellip "&#x2026;">
<!ENTITY mldr "&#x2026;">
<!ENTITY permil "&#x2030;">
<!ENTITY pertenk "&#x2031;">
<!ENTITY prime "&#x2032;">
<!ENTITY Prime "&#x2033;">
<!ENTITY tprime "&#x2034;">
<!ENTITY bprime "&#x2035;">
<!ENTITY backprime "&#x2035;">
<!ENTITY lsaquo "&#x2039;">
<!ENTITY rsaquo "&#x203A;">
<!ENTITY oline "&#x203E;">
<!ENTITY OverBar "&#x203E;">
<!ENTITY caret "&#x2041;">
<!ENTITY hybull "&#x2043;">
<!ENTITY frasl "&#x2044;">
<!ENTITY bsemi "&#x204F;">
<!ENTITY qprime "&#x2057;">
<!ENTITY MediumSpace "&#x205F;">
<!ENTITY NoBreak "&#x2060;">
<!ENTITY ApplyFunction "&#x2061;">
<!ENTITY af "&#x2061;">
<!ENTITY InvisibleTimes "&#x2062;">
<!ENTITY it "&#x2062;">
<!ENTITY InvisibleComma "&#x2063;">
<!ENTITY ic "&#x2063;">
<!ENTITY euro "&#x20AC;">
<!ENTITY tdot "&#x20DB;">
<!ENTITY TripleDot "&#x20DB;">
<!ENTITY DotDot "&#x20DC;">
<!ENTITY Copf "&#x2102;">
<!ENTITY complexes "&#x2102;">
<!ENTITY incare "&#x2105;">
<!ENTITY gscr "&#x210A;">
<!ENTITY hamilt "&#x210B;">
<!ENTITY HilbertSpace "&#x210B;">
<!ENTITY Hscr "&#x210B;">
<!ENTITY Hfr "&#x210C;">
<!ENTITY Poincareplane "&#x210C;">
<!ENTITY quaternions "&#x210D;">
<!ENTITY Hopf "&#x210D;">
<!ENTITY planckh "&#x210E;">
<!ENTITY planck "&#x210F;">
<!ENTITY hbar "&#x210F;">
<!ENTITY plankv "&#x210F;">
<!ENTITY hslash "&#x210F;">
<!ENTITY Iscr "&#x2110;">
<!ENTITY imagline "&#x2110;">
<!ENTITY image "&#x2111;">
<!ENTITY Im "&#x2111;">
<!ENTITY imagpart "&#x2111;">
<!ENTITY Ifr "&#x2111;">
<!ENTITY Lscr "&#x2112;">
<!ENTITY lagran "&#x2112;">
<!ENTITY Laplacetrf "&#x2112;">
<!ENTITY ell "&#x2113;">
<!ENTITY Nopf "&#x2115;">
<!ENTITY naturals "&#x2115;">
<!ENTITY numero "&#x2116;">
<!ENTITY copysr "&#x2117;">
<!ENTITY weierp "&#x2118;">
<!ENTITY wp "&#x2118;">
<!ENTITY Popf "&#x2119;">
<!ENTITY primes "&#x2119;">
<!ENTITY rationals "&#x211A;">
<!ENTITY Qopf "&#x211A;">
<!ENTITY Rscr "&#x211B;">
<!ENTITY realine "&#x211B;">
<!ENTITY real "&#x211C;">
<!ENTITY Re "&#x211C;">
<!ENTITY realpart "&#x211C;">
<!ENTITY Rfr "&#x211C;">
<!ENTITY reals "&#x211D;">
<!ENTITY Ropf "&#x211D;">
<!ENTITY rx "&#x211E;">
<!ENTITY trade "&#x2122;">
<!ENTITY TRADE "&#x2122;">
<!ENTITY integers "&#x2124;">
<!ENTITY Zopf "&#x2124;">
<!ENTITY mho "&#x2127;">
<!ENTITY Zfr "&#x2128;">
<!ENTITY zeetrf "&#x2128;">
<!ENTITY iiota "&#x2129;">
<!ENTITY bernou "&#x212C;">
<!ENTITY Bernoullis "&#x212C;">
<!ENTITY Bscr "&#x212C;">
<!ENTITY Cfr "&#x212D;">
<!ENTITY Cayleys "&#x212D;">
<!ENTITY escr "&#x212F;">
<!ENTITY Escr "&#x2130;">
<!ENTITY expectation "&#x2130;">
<!ENTITY Fscr "&#x2131;">
<!ENTITY Fouriertrf "&#x2131;">
<!ENTITY phmmat "&#x2133;">
<!ENTITY Mellintrf "&#x2133;">
<!ENTITY Mscr "&#x2133;">
<!ENTITY order "&#x2134;">
<!ENTITY orderof "&#x2134;">
<!ENTITY oscr "&#x2134;">
<!ENTITY alefsym "&#x2135;">
<!ENTITY aleph "&#x2135;">
<!ENTITY beth "&#x2136;">
<!ENTITY gimel "&#x2137;">
<!ENTITY daleth "&#x2138;">
<!ENTITY CapitalDifferentialD "&#x2145;">
<!ENTITY DD "&#x2145;">
<!ENTITY DifferentialD "&#x2146;">
<!ENTITY dd "&#x2146;">
<!ENTITY ExponentialE "&#x2147;">
<!ENTITY exponentiale "&#x2147;">
<!ENTITY ee "&#x2147;">
<!ENTITY ImaginaryI "&#x2148;">
<!ENTITY ii "&#x2148;">
<!ENTITY frac13 "&#x2153;">
<!ENTITY frac23 "&#x2154;">
<!ENTITY frac15 "&#x2155;">
<!ENTITY frac25 "&#x2156;">
<!ENTITY frac35 "&#x2157;">
<!ENTITY frac45 "&#x2158;">
<!ENTITY frac16 "&#x2159;">
<!ENTITY frac56 "&#x215A;">
<!ENTITY frac18 "&#x215B;">
<!ENTITY frac38 "&#x215C;">
<!ENTITY frac58 "&#x215D;">
<!ENTITY frac78 "&#x215E;">
<!ENTITY larr "&#x2190;">
<!ENTITY leftarrow "&#x2190;">
<!ENTITY LeftArrow "&#x2190;">
<!ENTITY slarr "&#x2190;">
<!ENTITY ShortLeftArrow "&#x2190;">
<!ENTITY uarr "&#x2191;">
<!ENTITY uparrow "&#x2191;">
<!ENTITY UpArrow "&#x2191;">
<!ENTITY ShortUpArrow "&#x2191;">
<!ENTITY rarr "&#x2192;">
<!ENTITY rightarrow "&#x2192;">
<!ENTITY RightArrow "&#x2192;">
<!ENTITY srarr "&#x2192;">
<!ENTITY ShortRightArrow "&#x2192;">
<!ENTITY darr "&#x2193;">
<!ENTITY downarrow "&#x2193;">
<!ENTITY DownArrow "&#x2193;">
<!ENTITY ShortDownArrow "&#x2193;">
<!ENTITY harr "&#x2194;">
<!ENTITY leftrightarrow "&#x2194;">
<!ENTITY LeftRightArrow "&#x2194;">
<!ENTITY varr "&#x2195;">
<!ENTITY updownarrow "&#x2195;">
<!ENTITY UpDownArrow "&#x2195;">
<!ENTITY nwarr "&#x2196;">
<!ENTITY UpperLeftArrow "&#x2196;">
<!ENTITY nwarrow "&#x2196;">
<!ENTITY nearr "&#x2197;">
<!ENTITY UpperRightArrow "&#x2197;">
<!ENTITY nearrow "&#x2197;">
<!ENTITY searr "&#x2198;">
<!ENTITY searrow "&#x2198;">
<!ENTITY LowerRightArrow "&#x2198;">
<!ENTITY swarr "&#x2199;">
<!ENTITY swarrow "&#x2199;">
<!ENTITY LowerLeftArrow "&#x2199;">
<!ENTITY nlarr "&#x219A;">
<!ENTITY nleftarrow "&#x219A;">
<!ENTITY nrarr "&#x219B;">
<!ENTITY nrightarrow "&#x219B;">
<!ENTITY rarrw "&#x219D;">
<!ENTITY rightsquigarrow "&#x219D;">
<!ENTITY Larr "&#x219E;">
<!ENTITY twoheadleftarrow "&#x219E;">
<!ENTITY Uarr "&#x219F;">
<!ENTITY Rarr "&#x21A0;">
<!ENTITY twoheadrightarrow "&#x21A0;">
<!ENTITY Darr "&#x21A1;">
<!ENTITY larrtl "&#x21A2;">
<!ENTITY leftarrowtail "&#x21A2;">
<!ENTITY rarrtl "&#x21A3;">
<!ENTITY rightarrowtail "&#x21A3;">
<!ENTITY LeftTeeArrow "&#x21A4;">
<!ENTITY mapstoleft "&#x21A4;">
<!ENTITY UpTeeArrow "&#x21A5;">
<!ENTITY mapstoup "&#x21A5;">
<!ENTITY map "&#x21A6;">
<!ENTITY RightTeeArrow "&#x21A6;">
<!ENTITY mapsto "&#x21A6;">
<!ENTITY DownTeeArrow "&#x21A7;">
<!ENTITY mapstodown "&#x21A7;">
<!ENTITY larrhk "&#x21A9;">
<!ENTITY hookleftarrow "&#x21A9;">
<!ENTITY rarrhk "&#x21AA;">
<!ENTITY hookrightarrow "&#x21AA;">
<!ENTITY larrlp "&#x21AB;">
<!ENTITY looparrowleft "&#x21AB;">
<!ENTITY rarrlp "&#x21AC;">
<!ENTITY looparrowright "&#x21AC;">
<!ENTITY harrw "&#x21AD;">
<!ENTITY leftrightsquigarrow "&#x21AD;">
<!ENTITY nharr "&#x21AE;">
<!ENTITY nleftrightarrow "&#x21AE;">
<!ENTITY lsh "&#x21B0;">
<!ENTITY Lsh "&#x21B0;">
<!ENTITY rsh "&#x21B1;">
<!ENTITY Rsh "&#x21B1;">
<!ENTITY ldsh "&#x21B2;">
<!ENTITY rdsh "&#x21B3;">
<!ENTITY crarr "&#x21B5;">
<!ENTITY cularr "&#x21B6;">
<!ENTITY curvearrowleft "&#x21B6;">
<!ENTITY curarr "&#x21B7;">
<!ENTITY curvearrowright "&#x21B7;">
<!ENTITY olarr "&#x21BA;">
<!ENTITY circlearrowleft "&#x21BA;">
<!ENTITY orarr "&#x21BB;">
<!ENTITY circlearrowright "&#x21BB;">
<!ENTITY lharu "&#x21BC;">
<!ENTITY LeftVector "&#x21BC;">
<!ENTITY leftharpoonup "&#x21BC;">
<!ENTITY lhard "&#x21BD;">
<!ENTITY leftharpoondown "&#x21BD;">
<!ENTITY DownLeftVector "&#x21BD;">
<!ENTITY uharr "&#x21BE;">
<!ENTITY upharpoonright "&#x21BE;">
<!ENTITY RightUpVector "&#x21BE;">
<!ENTITY uharl "&#x21BF;">
<!ENTITY upharpoonleft "&#x21BF;">
<!ENTITY LeftUpVector "&#x21BF;">
<!ENTITY rharu "&#x21C0;">
<!ENTITY RightVector "&#x21C0;">
<!ENTITY rightharpoonup "&#x21C0;">
<!ENTITY rhard "&#x21C1;">
<!ENTITY rightharpoondown "&#x21C1;">
<!ENTITY DownRightVector "&#x21C1;">
<!ENTITY dharr "&#x21C2;">
<!ENTITY RightDownVector "&#x21C2;">
<!ENTITY downharpoonright "&#x21C2;">
<!ENTITY dharl "&#x21C3;">
<!ENTITY LeftDownVector "&#x21C3;">
<!ENTITY downharpoonleft "&#x21C3;">
<!ENTITY rlarr "&#x21C4;">
<!ENTITY rightleftarrows "&#x21C4;">
<!ENTITY RightArrowLeftArrow "&#x21C4;">
<!ENTITY udarr "&#x21C5;">
<!ENTITY UpArrowDownArrow "&#x21C5;">
<!ENTITY lrarr "&#x21C6;">
<!ENTITY leftrightarrows "&#x21C6;">
<!ENTITY LeftArrowRightArrow "&#x21C6;">
<!ENTITY llarr "&#x21C7;">
<!ENTITY leftleftarrows "&#x21C7;">
<!ENTITY uuarr "&#x21C8;">
<!ENTITY upuparrows "&#x21C8;">
<!ENTITY rrarr "&#x21C9;">
<!ENTITY rightrightarrows "&#x21C9;">
<!ENTITY ddarr "&#x21CA;">
<!ENTITY downdownarrows "&#x21CA;">
<!ENTITY lrhar "&#x21CB;">
<!ENTITY ReverseEquilibrium "&#x21CB;">
<!ENTITY leftrightharpoons "&#x21CB;">
<!ENTITY rlhar "&#x21CC;">
<!ENTITY rightleftharpoons "&#x21CC;">
<!ENTITY Equilibrium "&#x21CC;">
<!ENTITY nlArr "&#x21CD;">
<!ENTITY nLeftarrow "&#x21CD;">
<!ENTITY nhArr "&#x21CE;">
<!ENTITY nLeftrightarrow "&#x21CE;">
<!ENTITY nrArr "&#x21CF;">
<!ENTITY nRightarrow "&#x21CF;">
<!ENTITY lArr "&#x21D0;">
<!ENTITY Leftarrow "&#x21D0;">
<!ENTITY DoubleLeftArrow "&#x21D0;">
<!ENTITY uArr "&#x21D1;">
<!ENTITY Uparrow "&#x21D1;">
<!ENTITY DoubleUpArrow "&#x21D1;">
<!ENTITY rArr "&#x21D2;">
<!ENTITY Rightarrow "&#x21D2;">
<!ENTITY Implies "&#x21D2;">
<!ENTITY DoubleRightArrow "&#x21D2;">
<!ENTITY dArr "&#x21D3;">
<!ENTITY Downarrow "&#x21D3;">
<!ENTITY DoubleDownArrow "&#x21D3;">
<!ENTITY hArr "&#x21D4;">
<!ENTITY Leftrightarrow "&#x21D4;">
<!ENTITY DoubleLeftRightArrow "&#x21D4;">
<!ENTITY iff "&#x21D4;">
<!ENTITY vArr "&#x21D5;">
<!ENTITY Updownarrow "&#x21D5;">
<!ENTITY DoubleUpDownArrow "&#x21D5;">
<!ENTITY nwArr "&#x21D6;">
<!ENTITY neArr "&#x21D7;">
<!ENTITY seArr "&#x21D8;">
<!ENTITY swArr "&#x21D9;">
<!ENTITY lAarr "&#x21DA;">
<!ENTITY Lleftarrow "&#x21DA;">
<!ENTITY rAarr "&#x21DB;">
<!ENTITY Rrightarrow "&#x21DB;">
<!ENTITY zigrarr "&#x21DD;">
<!ENTITY larrb "&#x21E4;">
<!ENTITY LeftArrowBar "&#x21E4;">
<!ENTITY rarrb "&#x21E5;">
<!ENTITY RightArrowBar "&#x21E5;">
<!ENTITY duarr "&#x21F5;">
<!ENTITY DownArrowUpArrow "&#x21F5;">
<!ENTITY loarr "&#x21FD;">
<!ENTITY roarr "&#x21FE;">
<!ENTITY hoarr "&#x21FF;">
<!ENTITY forall "&#x2200;">
<!ENTITY ForAll "&#x2200;">
<!ENTITY comp "&#x2201;">
<!ENTITY complement "&#x2201;">
<!ENTITY part "&#x2202;">
<!ENTITY PartialD "&#x2202;">
<!ENTITY exist "&#x2203;">
<!ENTITY Exists "&#x2203;">
<!ENTITY nexist "&#x2204;">
<!ENTITY NotExists "&#x2204;">
<!ENTITY nexists "&#x2204;">
<!ENTITY empty "&#x2205;">
<!ENTITY emptyset "&#x2205;">
<!ENTITY emptyv "&#x2205;">
<!ENTITY varnothing "&#x2205;">
<!ENTITY nabla "&#x2207;">
<!ENTITY Del "&#x2207;">
<!ENTITY isin "&#x2208;">
<!ENTITY isinv "&#x2208;">
<!ENTITY Element "&#x2208;">
<!ENTITY in "&#x2208;">
<!ENTITY notin "&#x2209;">
<!ENTITY NotElement "&#x2209;">
<!ENTITY notinva "&#x2209;">
<!ENTITY niv "&#x220B;">
<!ENTITY ReverseElement "&#x220B;">
<!ENTITY ni "&#x220B;">
<!ENTITY SuchThat "&#x220B;">
<!ENTITY notni "&#x220C;">
<!ENTITY notniva "&#x220C;">
<!ENTITY NotReverseElement "&#x220C;">
<!ENTITY prod "&#x220F;">
<!ENTITY Product "&#x220F;">
<!ENTITY coprod "&#x2210;">
<!ENTITY Coproduct "&#x2210;">
<!ENTITY sum "&#x2211;">
<!ENTITY Sum "&#x2211;">
<!ENTITY minus "&#x2212;">
<!ENTITY mnplus "&#x2213;">
<!ENTITY mp "&#x2213;">
<!ENTITY MinusPlus "&#x2213;">
<!ENTITY plusdo "&#x2214;">
<!ENTITY dotplus "&#x2214;">
<!ENTITY setmn "&#x2216;">
<!ENTITY setminus "&#x2216;">
<!ENTITY Backslash "&#x2216;">
<!ENTITY ssetmn "&#x2216;">
<!ENTITY smallsetminus "&#x2216;">
<!ENTITY lowast "&#x2217;">
<!ENTITY compfn "&#x2218;">
<!ENTITY SmallCircle "&#x2218;">
<!ENTITY radic "&#x221A;">
<!ENTITY Sqrt "&#x221A;">
<!ENTITY prop "&#x221D;">
<!ENTITY propto "&#x221D;">
<!ENTITY Proportional "&#x221D;">
<!ENTITY vprop "&#x221D;">
<!ENTITY varpropto "&#x221D;">
<!ENTITY infin "&#x221E;">
<!ENTITY angrt "&#x221F;">
<!ENTITY ang "&#x2220;">
<!ENTITY angle "&#x2220;">
<!ENTITY angmsd "&#x2221;">
<!ENTITY measuredangle "&#x2221;">
<!ENTITY angsph "&#x2222;">
<!ENTITY mid "&#x2223;">
<!ENTITY VerticalBar "&#x2223;">
<!ENTITY smid "&#x2223;">
<!ENTITY shortmid "&#x2223;">
<!ENTITY nmid "&#x2224;">
<!ENTITY NotVerticalBar "&#x2224;">
<!ENTITY nsmid "&#x2224;">
<!ENTITY nshortmid "&#x2224;">
<!ENTITY par "&#x2225;">
<!ENTITY parallel "&#x2225;">
<!ENTITY DoubleVerticalBar "&#x2225;">
<!ENTITY spar "&#x2225;">
<!ENTITY shortparallel "&#x2225;">
<!ENTITY npar "&#x2226;">
<!ENTITY nparallel "&#x2226;">
<!ENTITY NotDoubleVerticalBar "&#x2226;">
<!ENTITY nspar "&#x2226;">
<!ENTITY nshortparallel "&#x2226;">
<!ENTITY and "&#x2227;">
<!ENTITY wedge "&#x2227;">
<!ENTITY or "&#x2228;">
<!ENTITY vee "&#x2228;">
<!ENTITY cap "&#x2229;">
<!ENTITY cup "&#x222A;">
<!ENTITY int "&#x222B;">
<!ENTITY Integral "&#x222B;">
<!ENTITY Int "&#x222C;">
<!ENTITY tint "&#x222D;">
<!ENTITY iiint "&#x222D;">
<!ENTITY conint "&#x222E;">
<!ENTITY oint "&#x222E;">
<!ENTITY ContourIntegral "&#x222E;">
<!ENTITY Conint "&#x222F;">
<!ENTITY DoubleContourIntegral "&#x222F;">
<!ENTITY Cconint "&#x2230;">
<!ENTITY cwint "&#x2231;">
<!ENTITY cwconint "&#x2232;">
<!ENTITY ClockwiseContourIntegral "&#x2232;">
<!ENTITY awconint "&#x2233;">
<!ENTITY CounterClockwiseContourIntegral "&#x2233;">
<!ENTITY there4 "&#x2234;">
<!ENTITY therefore "&#x2234;">
<!ENTITY Therefore "&#x2234;">
<!ENTITY becaus "&#x2235;">
<!ENTITY because "&#x2235;">
<!ENTITY Because "&#x2235;">
<!ENTITY ratio "&#x2236;">
<!ENTITY Colon "&#x2237;">
<!ENTITY Proportion "&#x2237;">
<!ENTITY minusd "&#x2238;">
<!ENTITY dotminus "&#x2238;">
<!ENTITY mDDot "&#x223A;">
<!ENTITY homtht "&#x223B;">
<!ENTITY sim "&#x223C;">
<!ENTITY Tilde "&#x223C;">
<!ENTITY thksim "&#x223C;">
<!ENTITY thicksim "&#x223C;">
<!ENTITY bsim "&#x223D;">
<!ENTITY backsim "&#x223D;">
<!ENTITY ac "&#x223E;">
<!ENTITY mstpos "&#x223E;">
<!ENTITY acd "&#x223F;">
<!ENTITY wreath "&#x2240;">
<!ENTITY VerticalTilde "&#x2240;">
<!ENTITY wr "&#x2240;">
<!ENTITY nsim "&#x2241;">
<!ENTITY NotTilde "&#x2241;">
<!ENTITY esim "&#x2242;">
<!ENTITY EqualTilde "&#x2242;">
<!ENTITY eqsim "&#x2242;">
<!ENTITY sime "&#x2243;">
<!ENTITY TildeEqual "&#x2243;">
<!ENTITY simeq "&#x2243;">
<!ENTITY nsime "&#x2244;">
<!ENTITY nsimeq "&#x2244;">
<!ENTITY NotTildeEqual "&#x2244;">
<!ENTITY cong "&#x2245;">
<!ENTITY TildeFullEqual "&#x2245;">
<!ENTITY simne "&#x2246;">
<!ENTITY ncong "&#x2247;">
<!ENTITY NotTildeFullEqual "&#x2247;">
<!ENTITY asymp "&#x2248;">
<!ENTITY ap "&#x2248;">
<!ENTITY TildeTilde "&#x2248;">
<!ENTITY approx "&#x2248;">
<!ENTITY thkap "&#x2248;">
<!ENTITY thickapprox "&#x2248;">
<!ENTITY nap "&#x2249;">
<!ENTITY NotTildeTilde "&#x2249;">
<!ENTITY napprox "&#x2249;">
<!ENTITY ape "&#x224A;">
<!ENTITY approxeq "&#x224A;">
<!ENTITY apid "&#x224B;">
<!ENTITY bcong "&#x224C;">
<!ENTITY backcong "&#x224C;">
<!ENTITY asympeq "&#x224D;">
<!ENTITY CupCap "&#x224D;">
<!ENTITY bump "&#x224E;">
<!ENTITY HumpDownHump "&#x224E;">
<!ENTITY Bumpeq "&#x224E;">
<!ENTITY bumpe "&#x224F;">
<!ENTITY HumpEqual "&#x224F;">
<!ENTITY bumpeq "&#x224F;">
<!ENTITY esdot "&#x2250;">
<!ENTITY DotEqual "&#x2250;">
<!ENTITY doteq "&#x2250;">
<!ENTITY eDot "&#x2251;">
<!ENTITY doteqdot "&#x2251;">
<!ENTITY efDot "&#x2252;">
<!ENTITY fallingdotseq "&#x2252;">
<!ENTITY erDot "&#x2253;">
<!ENTITY risingdotseq "&#x2253;">
<!ENTITY colone "&#x2254;">
<!ENTITY coloneq "&#x2254;">
<!ENTITY Assign "&#x2254;">
<!ENTITY ecolon "&#x2255;">
<!ENTITY eqcolon "&#x2255;">
<!ENTITY ecir "&#x2256;">
<!ENTITY eqcirc "&#x2256;">
<!ENTITY cire "&#x2257;">
<!ENTITY circeq "&#x2257;">
<!ENTITY wedgeq "&#x2259;">
<!ENTITY veeeq "&#x225A;">
<!ENTITY trie "&#x225C;">
<!ENTITY triangleq "&#x225C;">
<!ENTITY equest "&#x225F;">
<!ENTITY questeq "&#x225F;">
<!ENTITY ne "&#x2260;">
<!ENTITY NotEqual "&#x2260;">
<!ENTITY equiv "&#x2261;">
<!ENTITY Congruent "&#x2261;">
<!ENTITY nequiv "&#x2262;">
<!ENTITY NotCongruent "&#x2262;">
<!ENTITY le "&#x2264;">
<!ENTITY leq "&#x2264;">
<!ENTITY ge "&#x2265;">
<!ENTITY GreaterEqual "&#x2265;">
<!ENTITY geq "&#x2265;">
<!ENTITY lE "&#x2266;">
<!ENTITY LessFullEqual "&#x2266;">
<!ENTITY leqq "&#x2266;">
<!ENTITY gE "&#x2267;">
<!ENTITY GreaterFullEqual "&#x2267;">
<!ENTITY geqq "&#x2267;">
<!ENTITY lnE "&#x2268;">
<!ENTITY lneqq "&#x2268;">
<!ENTITY gnE "&#x2269;">
<!ENTITY gneqq "&#x2269;">
<!ENTITY Lt "&#x226A;">
<!ENTITY NestedLessLess "&#x226A;">
<!ENTITY ll "&#x226A;">
<!ENTITY Gt "&#x226B;">
<!ENTITY NestedGreaterGreater "&#x226B;">
<!ENTITY gg "&#x226B;">
<!ENTITY twixt "&#x226C;">
<!ENTITY between "&#x226C;">
<!ENTITY NotCupCap "&#x226D;">
<!ENTITY nlt "&#x226E;">
<!ENTITY NotLess "&#x226E;">
<!ENTITY nless "&#x226E;">
<!ENTITY ngt "&#x226F;">
<!ENTITY NotGreater "&#x226F;">
<!ENTITY ngtr "&#x226F;">
<!ENTITY nle "&#x2270;">
<!ENTITY NotLessEqual "&#x2270;">
<!ENTITY nleq "&#x2270;">
<!ENTITY nge "&#x2271;">
<!ENTITY NotGreaterEqual "&#x2271;">
<!ENTITY ngeq "&#x2271;">
<!ENTITY lsim "&#x2272;">
<!ENTITY LessTilde "&#x2272;">
<!ENTITY lesssim "&#x2272;">
<!ENTITY gsim "&#x2273;">
<!ENTITY gtrsim "&#x2273;">
<!ENTITY GreaterTilde "&#x2273;">
<!ENTITY nlsim "&#x2274;">
<!ENTITY NotLessTilde "&#x2274;">
<!ENTITY ngsim "&#x2275;">
<!ENTITY NotGreaterTilde "&#x2275;">
<!ENTITY lg "&#x2276;">
<!ENTITY lessgtr "&#x2276;">
<!ENTITY LessGreater "&#x2276;">
<!ENTITY gl "&#x2277;">
<!ENTITY gtrless "&#x2277;">
<!ENTITY GreaterLess "&#x2277;">
<!ENTITY ntlg "&#x2278;">
<!ENTITY NotLessGreater "&#x2278;">
<!ENTITY ntgl "&#x2279;">
<!ENTITY NotGreaterLess "&#x2279;">
<!ENTITY pr "&#x227A;">
<!ENTITY Precedes "&#x227A;">
<!ENTITY prec "&#x227A;">
<!ENTITY sc "&#x227B;">
<!ENTITY Succeeds "&#x227B;">
<!ENTITY succ "&#x227B;">
<!ENTITY prcue "&#x227C;">
<!ENTITY PrecedesSlantEqual "&#x227C;">
<!ENTITY preccurlyeq "&#x227C;">
<!ENTITY sccue "&#x227D;">
<!ENTITY SucceedsSlantEqual "&#x227D;">
<!ENTITY succcurlyeq "&#x227D;">
<!ENTITY prsim "&#x227E;">
<!ENTITY precsim "&#x227E;">
<!ENTITY PrecedesTilde "&#x227E;">
<!ENTITY scsim "&#x227F;">
<!ENTITY succsim "&#x227F;">
<!ENTITY SucceedsTilde "&#x227F;">
<!ENTITY npr "&#x2280;">
<!ENTITY nprec "&#x2280;">
<!ENTITY NotPrecedes "&#x2280;">
<!ENTITY nsc "&#x2281;">
<!ENTITY nsucc "&#x2281;">
<!ENTITY NotSucceeds "&#x2281;">
<!ENTITY sub "&#x2282;">
<!ENTITY subset "&#x2282;">
<!ENTITY sup "&#x2283;">
<!ENTITY supset "&#x2283;">
<!ENTITY Superset "&#x2283;">
<!ENTITY nsub "&#x2284;">
<!ENTITY nsup "&#x2285;">
<!ENTITY sube "&#x2286;">
<!ENTITY SubsetEqual "&#x2286;">
<!ENTITY subseteq "&#x2286;">
<!ENTITY supe "&#x2287;">
<!ENTITY supseteq "&#x2287;">
<!ENTITY SupersetEqual "&#x2287;">
<!ENTITY nsube "&#x2288;">
<!ENTITY nsubseteq "&#x2288;">
<!ENTITY NotSubsetEqual "&#x2288;">
<!ENTITY nsupe "&#x2289;">
<!ENTITY nsupseteq "&#x2289;">
<!ENTITY NotSupersetEqual "&#x2289;">
<!ENTITY subne "&#x228A;">
<!ENTITY subsetneq "&#x228A;">
<!ENTITY supne "&#x228B;">
<!ENTITY supsetneq "&#x228B;">
<!ENTITY cupdot "&#x228D;">
<!ENTITY uplus "&#x228E;">
<!ENTITY UnionPlus "&#x228E;">
<!ENTITY sqsub "&#x228F;">
<!ENTITY SquareSubset "&#x228F;">
<!ENTITY sqsubset "&#x228F;">
<!ENTITY sqsup "&#x2290;">
<!ENTITY SquareSuperset "&#x2290;">
<!ENTITY sqsupset "&#x2290;">
<!ENTITY sqsube "&#x2291;">
<!ENTITY SquareSubsetEqual "&#x2291;">
<!ENTITY sqsubseteq "&#x2291;">
<!ENTITY sqsupe "&#x2292;">
<!ENTITY SquareSupersetEqual "&#x2292;">
<!ENTITY sqsupseteq "&#x2292;">
<!ENTITY sqcap "&#x2293;">
<!ENTITY SquareIntersection "&#x2293;">
<!ENTITY sqcup "&#x2294;">
<!ENTITY SquareUnion "&#x2294;">
<!ENTITY oplus "&#x2295;">
<!ENTITY CirclePlus "&#x2295;">
<!ENTITY ominus "&#x2296;">
<!ENTITY CircleMinus "&#x2296;">
<!ENTITY otimes "&#x2297;">
<!ENTITY CircleTimes "&#x2297;">
<!ENTITY osol "&#x2298;">
<!ENTITY odot "&#x2299;">
<!ENTITY CircleDot "&#x2299;">
<!ENTITY ocir "&#x229A;">
<!ENTITY circledcirc "&#x229A;">
<!ENTITY oast "&#x229B;">
<!ENTITY circledast "&#x229B;">
<!ENTITY odash "&#x229D;">
<!ENTITY circleddash "&#x229D;">
<!ENTITY plusb "&#x229E;">
<!ENTITY boxplus "&#x229E;">
<!ENTITY minusb "&#x229F;">
<!ENTITY boxminus "&#x229F;">
<!ENTITY timesb "&#x22A0;">
<!ENTITY boxtimes "&#x22A0;">
<!ENTITY sdotb "&#x22A1;">
<!ENTITY dotsquare "&#x22A1;">
<!ENTITY vdash "&#x22A2;">
<!ENTITY RightTee "&#x22A2;">
<!ENTITY dashv "&#x22A3;">
<!ENTITY LeftTee "&#x22A3;">
<!ENTITY top "&#x22A4;">
<!ENTITY DownTee "&#x22A4;">
<!ENTITY bottom "&#x22A5;">
<!ENTITY bot "&#x22A5;">
<!ENTITY perp "&#x22A5;">
<!ENTITY UpTee "&#x22A5;">
<!ENTITY models "&#x22A7;">
<!ENTITY vDash "&#x22A8;">
<!ENTITY DoubleRightTee "&#x22A8;">
<!ENTITY Vdash "&#x22A9;">
<!ENTITY Vvdash "&#x22AA;">
<!ENTITY VDash "&#x22AB;">
<!ENTITY nvdash "&#x22AC;">
<!ENTITY nvDash "&#x22AD;">
<!ENTITY nVdash "&#x22AE;">
<!ENTITY nVDash "&#x22AF;">
<!ENTITY prurel "&#x22B0;">
<!ENTITY vltri "&#x22B2;">
<!ENTITY vartriangleleft "&#x22B2;">
<!ENTITY LeftTriangle "&#x22B2;">
<!ENTITY vrtri "&#x22B3;">
<!ENTITY vartriangleright "&#x22B3;">
<!ENTITY RightTriangle "&#x22B3;">
<!ENTITY ltrie "&#x22B4;">
<!ENTITY trianglelefteq "&#x22B4;">
<!ENTITY LeftTriangleEqual "&#x22B4;">
<!ENTITY rtrie "&#x22B5;">
<!ENTITY trianglerighteq "&#x22B5;">
<!ENTITY RightTriangleEqual "&#x22B5;">
<!ENTITY origof "&#x22B6;">
<!ENTITY imof "&#x22B7;">
<!ENTITY mumap "&#x22B8;">
<!ENTITY multimap "&#x22B8;">
<!ENTITY hercon "&#x22B9;">
<!ENTITY intcal "&#x22BA;">
<!ENTITY intercal "&#x22BA;">
<!ENTITY veebar "&#x22BB;">
<!ENTITY barvee "&#x22BD;">
<!ENTITY angrtvb "&#x22BE;">
<!ENTITY lrtri "&#x22BF;">
<!ENTITY xwedge "&#x22C0;">
<!ENTITY Wedge "&#x22C0;">
<!ENTITY bigwedge "&#x22C0;">
<!ENTITY xvee "&#x22C1;">
<!ENTITY Vee "&#x22C1;">
<!ENTITY bigvee "&#x22C1;">
<!ENTITY xcap "&#x22C2;">
<!ENTITY Intersection "&#x22C2;">
<!ENTITY bigcap "&#x22C2;">
<!ENTITY xcup "&#x22C3;">
<!ENTITY Union "&#x22C3;">
<!ENTITY bigcup "&#x22C3;">
<!ENTITY diam "&#x22C4;">
<!ENTITY diamond "&#x22C4;">
<!ENTITY Diamond "&#x22C4;">
<!ENTITY sdot "&#x22C5;">
<!ENTITY sstarf "&#x22C6;">
<!ENTITY Star "&#x22C6;">
<!ENTITY divonx "&#x22C7;">
<!ENTITY divideontimes "&#x22C7;">
<!ENTITY bowtie "&#x22C8;">
<!ENTITY ltimes "&#x22C9;">
<!ENTITY rtimes "&#x22CA;">
<!ENTITY lthree "&#x22CB;">
<!ENTITY leftthreetimes "&#x22CB;">
<!ENTITY rthree "&#x22CC;">
<!ENTITY rightthreetimes "&#x22CC;">
<!ENTITY bsime "&#x22CD;">
<!ENTITY backsimeq "&#x22CD;">
<!ENTITY cuvee "&#x22CE;">
<!ENTITY curlyvee "&#x22CE;">
<!ENTITY cuwed "&#x22CF;">
<!ENTITY curlywedge "&#x22CF;">
<!ENTITY Sub "&#x22D0;">
<!ENTITY Subset "&#x22D0;">
<!ENTITY Sup "&#x22D1;">
<!ENTITY Supset "&#x22D1;">
<!ENTITY Cap "&#x22D2;">
<!ENTITY Cup "&#x22D3;">
<!ENTITY fork "&#x22D4;">
<!ENTITY pitchfork "&#x22D4;">
<!ENTITY epar "&#x22D5;">
<!ENTITY ltdot "&#x22D6;">
<!ENTITY lessdot "&#x22D6;">
<!ENTITY gtdot "&#x22D7;">
<!ENTITY gtrdot "&#x22D7;">
<!ENTITY Ll "&#x22D8;">
<!ENTITY Gg "&#x22D9;">
<!ENTITY ggg "&#x22D9;">
<!ENTITY leg "&#x22DA;">
<!ENTITY LessEqualGreater "&#x22DA;">
<!ENTITY lesseqgtr "&#x22DA;">
<!ENTITY gel "&#x22DB;">
<!ENTITY gtreqless "&#x22DB;">
<!ENTITY GreaterEqualLess "&#x22DB;">
<!ENTITY cuepr "&#x22DE;">
<!ENTITY curlyeqprec "&#x22DE;">
<!ENTITY cuesc "&#x22DF;">
<!ENTITY curlyeqsucc "&#x22DF;">
<!ENTITY nprcue "&#x22E0;">
<!ENTITY NotPrecedesSlantEqual "&#x22E0;">
<!ENTITY nsccue "&#x22E1;">
<!ENTITY NotSucceedsSlantEqual "&#x22E1;">
<!ENTITY nsqsube "&#x22E2;">
<!ENTITY NotSquareSubsetEqual "&#x22E2;">
<!ENTITY nsqsupe "&#x22E3;">
<!ENTITY NotSquareSupersetEqual "&#x22E3;">
<!ENTITY lnsim "&#x22E6;">
<!ENTITY gnsim "&#x22E7;">
<!ENTITY prnsim "&#x22E8;">
<!ENTITY precnsim "&#x22E8;">
<!ENTITY scnsim "&#x22E9;">
<!ENTITY succnsim "&#x22E9;">
<!ENTITY nltri "&#x22EA;">
<!ENTITY ntriangleleft "&#x22EA;">
<!ENTITY NotLeftTriangle "&#x22EA;">
<!ENTITY nrtri "&#x22EB;">
<!ENTITY ntriangleright "&#x22EB;">
<!ENTITY NotRightTriangle "&#x22EB;">
<!ENTITY nltrie "&#x22EC;">
<!ENTITY ntrianglelefteq "&#x22EC;">
<!ENTITY NotLeftTriangleEqual "&#x22EC;">
<!ENTITY nrtrie "&#x22ED;">
<!ENTITY ntrianglerighteq "&#x22ED;">
<!ENTITY NotRightTriangleEqual "&#x22ED;">
<!ENTITY vellip "&#x22EE;">
<!ENTITY ctdot "&#x22EF;">
<!ENTITY utdot "&#x22F0;">
<!ENTITY dtdot "&#x22F1;">
<!ENTITY disin "&#x22F2;">
<!ENTITY isinsv "&#x22F3;">
<!ENTITY isins "&#x22F4;">
<!ENTITY isindot "&#x22F5;">
<!ENTITY notinvc "&#x22F6;">
<!ENTITY notinvb "&#x22F7;">
<!ENTITY isinE "&#x22F9;">
<!ENTITY nisd "&#x22FA;">
<!ENTITY xnis "&#x22FB;">
<!ENTITY nis "&#x22FC;">
<!ENTITY notnivc "&#x22FD;">
<!ENTITY notnivb "&#x22FE;">
<!ENTITY barwed "&#x2305;">
<!ENTITY barwedge "&#x2305;">
<!ENTITY Barwed "&#x2306;">
<!ENTITY doublebarwedge "&#x2306;">
<!ENTITY lceil "&#x2308;">
<!ENTITY LeftCeiling "&#x2308;">
<!ENTITY rceil "&#x2309;">
<!ENTITY RightCeiling "&#x2309;">
<!ENTITY lfloor "&#x230A;">
<!ENTITY LeftFloor "&#x230A;">
<!ENTITY rfloor "&#x230B;">
<!ENTITY RightFloor "&#x230B;">
<!ENTITY drcrop "&#x230C;">
<!ENTITY dlcrop "&#x230D;">
<!ENTITY urcrop "&#x230E;">
<!ENTITY ulcrop "&#x230F;">
<!ENTITY bnot "&#x2310;">
<!ENTITY profline "&#x2312;">
<!ENTITY profsurf "&#x2313;">
<!ENTITY telrec "&#x2315;">
<!ENTITY target "&#x2316;">
<!ENTITY ulcorn "&#x231C;">
<!ENTITY ulcorner "&#x231C;">
<!ENTITY urcorn "&#x231D;">
<!ENTITY urcorner "&#x231D;">
<!ENTITY dlcorn "&#x231E;">
<!ENTITY llcorner "&#x231E;">
<!ENTITY drcorn "&#x231F;">
<!ENTITY lrcorner "&#x231F;">
<!ENTITY frown "&#x2322;">
<!ENTITY sfrown "&#x2322;">
<!ENTITY smile "&#x2323;">
<!ENTITY ssmile "&#x2323;">
<!ENTITY cylcty "&#x232D;">
<!ENTITY profalar "&#x232E;">
<!ENTITY topbot "&#x2336;">
<!ENTITY ovbar "&#x233D;">
<!ENTITY solbar "&#x233F;">
<!ENTITY angzarr "&#x237C;">
<!ENTITY lmoust "&#x23B0;">
<!ENTITY lmoustache "&#x23B0;">
<!ENTITY rmoust "&#x23B1;">
<!ENTITY rmoustache "&#x23B1;">
<!ENTITY tbrk "&#x23B4;">
<!ENTITY OverBracket "&#x23B4;">
<!ENTITY bbrk "&#x23B5;">
<!ENTITY UnderBracket "&#x23B5;">
<!ENTITY bbrktbrk "&#x23B6;">
<!ENTITY OverParenthesis "&#x23DC;">
<!ENTITY UnderParenthesis "&#x23DD;">
<!ENTITY OverBrace "&#x23DE;">
<!ENTITY UnderBrace "&#x23DF;">
<!ENTITY trpezium "&#x23E2;">
<!ENTITY elinters "&#x23E7;">
<!ENTITY blank "&#x2423;">
<!ENTITY oS "&#x24C8;">
<!ENTITY circledS "&#x24C8;">
<!ENTITY boxh "&#x2500;">
<!ENTITY HorizontalLine "&#x2500;">
<!ENTITY boxv "&#x2502;">
<!ENTITY boxdr "&#x250C;">
<!ENTITY boxdl "&#x2510;">
<!ENTITY boxur "&#x2514;">
<!ENTITY boxul "&#x2518;">
<!ENTITY boxvr "&#x251C;">
<!ENTITY boxvl "&#x2524;">
<!ENTITY boxhd "&#x252C;">
<!ENTITY boxhu "&#x2534;">
<!ENTITY boxvh "&#x253C;">
<!ENTITY boxH "&#x2550;">
<!ENTITY boxV "&#x2551;">
<!ENTITY boxdR "&#x2552;">
<!ENTITY boxDr "&#x2553;">
<!ENTITY boxDR "&#x2554;">
<!ENTITY boxdL "&#x2555;">
<!ENTITY boxDl "&#x2556;">
<!ENTITY boxDL "&#x2557;">
<!ENTITY boxuR "&#x2558;">
<!ENTITY boxUr "&#x2559;">
<!ENTITY boxUR "&#x255A;">
<!ENTITY boxuL "&#x255B;">
<!ENTITY boxUl "&#x255C;">
<!ENTITY boxUL "&#x255D;">
<!ENTITY boxvR "&#x255E;">
<!ENTITY boxVr "&#x255F;">
<!ENTITY boxVR "&#x2560;">
<!ENTITY boxvL "&#x2561;">
<!ENTITY boxVl "&#x2562;">
<!ENTITY boxVL "&#x2563;">
<!ENTITY boxHd "&#x2564;">
<!ENTITY boxhD "&#x2565;">
<!ENTITY boxHD "&#x2566;">
<!ENTITY boxHu "&#x2567;">
<!ENTITY boxhU "&#x2568;">
<!ENTITY boxHU "&#x2569;">
<!ENTITY boxvH "&#x256A;">
<!ENTITY boxVh "&#x256B;">
<!ENTITY boxVH "&#x256C;">
<!ENTITY uhblk "&#x2580;">
<!ENTITY lhblk "&#x2584;">
<!ENTITY block "&#x2588;">
<!ENTITY blk14 "&#x2591;">
<!ENTITY blk12 "&#x2592;">
<!ENTITY blk34 "&#x2593;">
<!ENTITY squ "&#x25A1;">
<!ENTITY square "&#x25A1;">
<!ENTITY Square "&#x25A1;">
<!ENTITY squf "&#x25AA;">
<!ENTITY squarf "&#x25AA;">
<!ENTITY blacksquare "&#x25AA;">
<!ENTITY FilledVerySmallSquare "&#x25AA;">
<!ENTITY EmptyVerySmallSquare "&#x25AB;">
<!ENTITY rect "&#x25AD;">
<!ENTITY marker "&#x25AE;">
<!ENTITY fltns "&#x25B1;">
<!ENTITY xutri "&#x25B3;">
<!ENTITY bigtriangleup "&#x25B3;">
<!ENTITY utrif "&#x25B4;">
<!ENTITY blacktriangle "&#x25B4;">
<!ENTITY utri "&#x25B5;">
<!ENTITY triangle "&#x25B5;">
<!ENTITY rtrif "&#x25B8;">
<!ENTITY blacktriangleright "&#x25B8;">
<!ENTITY rtri "&#x25B9;">
<!ENTITY triangleright "&#x25B9;">
<!ENTITY xdtri "&#x25BD;">
<!ENTITY bigtriangledown "&#x25BD;">
<!ENTITY dtrif "&#x25BE;">
<!ENTITY blacktriangledown "&#x25BE;">
<!ENTITY dtri "&#x25BF;">
<!ENTITY triangledown "&#x25BF;">
<!ENTITY ltrif "&#x25C2;">
<!ENTITY blacktriangleleft "&#x25C2;">
<!ENTITY ltri "&#x25C3;">
<!ENTITY triangleleft "&#x25C3;">
<!ENTITY loz "&#x25CA;">
<!ENTITY lozenge "&#x25CA;">
<!ENTITY cir "&#x25CB;">
<!ENTITY tridot "&#x25EC;">
<!ENTITY xcirc "&#x25EF;">
<!ENTITY bigcirc "&#x25EF;">
<!ENTITY ultri "&#x25F8;">
<!ENTITY urtri "&#x25F9;">
<!ENTITY lltri "&#x25FA;">
<!ENTITY EmptySmallSquare "&#x25FB;">
<!ENTITY FilledSmallSquare "&#x25FC;">
<!ENTITY starf "&#x2605;">
<!ENTITY bigstar "&#x2605;">
<!ENTITY star "&#x2606;">
<!ENTITY phone "&#x260E;">
<!ENTITY female "&#x2640;">
<!ENTITY male "&#x2642;">
<!ENTITY spades "&#x2660;">
<!ENTITY spadesuit "&#x2660;">
<!ENTITY clubs "&#x2663;">
<!ENTITY clubsuit "&#x2663;">
<!ENTITY hearts "&#x2665;">
<!ENTITY heartsuit "&#x2665;">
<!ENTITY diams "&#x2666;">
<!ENTITY diamondsuit "&#x2666;">
<!ENTITY sung "&#x266A;">
<!ENTITY flat "&#x266D;">
<!ENTITY natur "&#x266E;">
<!ENTITY natural "&#x266E;">
<!ENTITY sharp "&#x266F;">
<!ENTITY check "&#x2713;">
<!ENTITY checkmark "&#x2713;">
<!ENTITY cross "&#x2717;">
<!ENTITY malt "&#x2720;">
<!ENTITY maltese "&#x2720;">
<!ENTITY sext "&#x2736;">
<!ENTITY VerticalSeparator "&#x2758;">
<!ENTITY lbbrk "&#x2772;">
<!ENTITY rbbrk "&#x2773;">
<!ENTITY bsolhsub "&#x27C8;">
<!ENTITY suphsol "&#x27C9;">
<!ENTITY lobrk "&#x27E6;">
<!ENTITY LeftDoubleBracket "&#x27E6;">
<!ENTITY robrk "&#x27E7;">
<!ENTITY RightDoubleBracket "&#x27E7;">
<!ENTITY lang "&#x27E8;">
<!ENTITY LeftAngleBracket "&#x27E8;">
<!ENTITY langle "&#x27E8;">
<!ENTITY rang "&#x27E9;">
<!ENTITY RightAngleBracket "&#x27E9;">
<!ENTITY rangle "&#x27E9;">
<!ENTITY Lang "&#x27EA;">
<!ENTITY Rang "&#x27EB;">
<!ENTITY loang "&#x27EC;">
<!ENTITY roang "&#x27ED;">
<!ENTITY xlarr "&#x27F5;">
<!ENTITY longleftarrow "&#x27F5;">
<!ENTITY LongLeftArrow "&#x27F5;">
<!ENTITY xrarr "&#x27F6;">
<!ENTITY longrightarrow "&#x27F6;">
<!ENTITY LongRightArrow "&#x27F6;">
<!ENTITY xharr "&#x27F7;">
<!ENTITY longleftrightarrow "&#x27F7;">
<!ENTITY LongLeftRightArrow "&#x27F7;">
<!ENTITY xlArr "&#x27F8;">
<!ENTITY Longleftarrow "&#x27F8;">
<!ENTITY DoubleLongLeftArrow "&#x27F8;">
<!ENTITY xrArr "&#x27F9;">
<!ENTITY Longrightarrow "&#x27F9;">
<!ENTITY DoubleLongRightArrow "&#x27F9;">
<!ENTITY xhArr "&#x27FA;">
<!ENTITY Longleftrightarrow "&#x27FA;">
<!ENTITY DoubleLongLeftRightArrow "&#x27FA;">
<!ENTITY xmap "&#x27FC;">
<!ENTITY longmapsto "&#x27FC;">
<!ENTITY dzigrarr "&#x27FF;">
<!ENTITY nvlArr "&#x2902;">
<!ENTITY nvrArr "&#x2903;">
<!ENTITY nvHarr "&#x2904;">
<!ENTITY Map "&#x2905;">
<!ENTITY lbarr "&#x290C;">
<!ENTITY rbarr "&#x290D;">
<!ENTITY bkarow "&#x290D;">
<!ENTITY lBarr "&#x290E;">
<!ENTITY rBarr "&#x290F;">
<!ENTITY dbkarow "&#x290F;">
<!ENTITY RBarr "&#x2910;">
<!ENTITY drbkarow "&#x2910;">
<!ENTITY DDotrahd "&#x2911;">
<!ENTITY UpArrowBar "&#x2912;">
<!ENTITY DownArrowBar "&#x2913;">
<!ENTITY Rarrtl "&#x2916;">
<!ENTITY latail "&#x2919;">
<!ENTITY ratail "&#x291A;">
<!ENTITY lAtail "&#x291B;">
<!ENTITY rAtail "&#x291C;">
<!ENTITY larrfs "&#x291D;">
<!ENTITY rarrfs "&#x291E;">
<!ENTITY larrbfs "&#x291F;">
<!ENTITY rarrbfs "&#x2920;">
<!ENTITY nwarhk "&#x2923;">
<!ENTITY nearhk "&#x2924;">
<!ENTITY searhk "&#x2925;">
<!ENTITY hksearow "&#x2925;">
<!ENTITY swarhk "&#x2926;">
<!ENTITY hkswarow "&#x2926;">
<!ENTITY nwnear "&#x2927;">
<!ENTITY nesear "&#x2928;">
<!ENTITY toea "&#x2928;">
<!ENTITY seswar "&#x2929;">
<!ENTITY tosa "&#x2929;">
<!ENTITY swnwar "&#x292A;">
<!ENTITY rarrc "&#x2933;">
<!ENTITY cudarrr "&#x2935;">
<!ENTITY ldca "&#x2936;">
<!ENTITY rdca "&#x2937;">
<!ENTITY cudarrl "&#x2938;">
<!ENTITY larrpl "&#x2939;">
<!ENTITY curarrm "&#x293C;">
<!ENTITY cularrp "&#x293D;">
<!ENTITY rarrpl "&#x2945;">
<!ENTITY harrcir "&#x2948;">
<!ENTITY Uarrocir "&#x2949;">
<!ENTITY lurdshar "&#x294A;">
<!ENTITY ldrushar "&#x294B;">
<!ENTITY LeftRightVector "&#x294E;">
<!ENTITY RightUpDownVector "&#x294F;">
<!ENTITY DownLeftRightVector "&#x2950;">
<!ENTITY LeftUpDownVector "&#x2951;">
<!ENTITY LeftVectorBar "&#x2952;">
<!ENTITY RightVectorBar "&#x2953;">
<!ENTITY RightUpVectorBar "&#x2954;">
<!ENTITY RightDownVectorBar "&#x2955;">
<!ENTITY DownLeftVectorBar "&#x2956;">
<!ENTITY DownRightVectorBar "&#x2957;">
<!ENTITY LeftUpVectorBar "&#x2958;">
<!ENTITY LeftDownVectorBar "&#x2959;">
<!ENTITY LeftTeeVector "&#x295A;">
<!ENTITY RightTeeVector "&#x295B;">
<!ENTITY RightUpTeeVector "&#x295C;">
<!ENTITY RightDownTeeVector "&#x295D;">
<!ENTITY DownLeftTeeVector "&#x295E;">
<!ENTITY DownRightTeeVector "&#x295F;">
<!ENTITY LeftUpTeeVector "&#x2960;">
<!ENTITY LeftDownTeeVector "&#x2961;">
<!ENTITY lHar "&#x2962;">
<!ENTITY uHar "&#x2963;">
<!ENTITY rHar "&#x2964;">
<!ENTITY dHar "&#x2965;">
<!ENTITY luruhar "&#x2966;">
<!ENTITY ldrdhar "&#x2967;">
<!ENTITY ruluhar "&#x2968;">
<!ENTITY rdldhar "&#x2969;">
<!ENTITY lharul "&#x296A;">
<!ENTITY llhard "&#x296B;">
<!ENTITY rharul "&#x296C;">
<!ENTITY lrhard "&#x296D;">
<!ENTITY udhar "&#x296E;">
<!ENTITY UpEquilibrium "&#x296E;">
<!ENTITY duhar "&#x296F;">
<!ENTITY ReverseUpEquilibrium "&#x296F;">
<!ENTITY RoundImplies "&#x2970;">
<!ENTITY erarr "&#x2971;">
<!ENTITY simrarr "&#x2972;">
<!ENTITY larrsim "&#x2973;">
<!ENTITY rarrsim "&#x2974;">
<!ENTITY rarrap "&#x2975;">
<!ENTITY ltlarr "&#x2976;">
<!ENTITY gtrarr "&#x2978;">
<!ENTITY subrarr "&#x2979;">
<!ENTITY suplarr "&#x297B;">
<!ENTITY lfisht "&#x297C;">
<!ENTITY rfisht "&#x297D;">
<!ENTITY ufisht "&#x297E;">
<!ENTITY dfisht "&#x297F;">
<!ENTITY lopar "&#x2985;">
<!ENTITY ropar "&#x2986;">
<!ENTITY lbrke "&#x298B;">
<!ENTITY rbrke "&#x298C;">
<!ENTITY lbrkslu "&#x298D;">
<!ENTITY rbrksld "&#x298E;">
<!ENTITY lbrksld "&#x298F;">
<!ENTITY rbrkslu "&#x2990;">
<!ENTITY langd "&#x2991;">
<!ENTITY rangd "&#x2992;">
<!ENTITY lparlt "&#x2993;">
<!ENTITY rpargt "&#x2994;">
<!ENTITY gtlPar "&#x2995;">
<!ENTITY ltrPar "&#x2996;">
<!ENTITY vzigzag "&#x299A;">
<!ENTITY vangrt "&#x299C;">
<!ENTITY angrtvbd "&#x299D;">
<!ENTITY ange "&#x29A4;">
<!ENTITY range "&#x29A5;">
<!ENTITY dwangle "&#x29A6;">
<!ENTITY uwangle "&#x29A7;">
<!ENTITY angmsdaa "&#x29A8;">
<!ENTITY angmsdab "&#x29A9;">
<!ENTITY angmsdac "&#x29AA;">
<!ENTITY angmsdad "&#x29AB;">
<!ENTITY angmsdae "&#x29AC;">
<!ENTITY angmsdaf "&#x29AD;">
<!ENTITY angmsdag "&#x29AE;">
<!ENTITY angmsdah "&#x29AF;">
<!ENTITY bemptyv "&#x29B0;">
<!ENTITY demptyv "&#x29B1;">
<!ENTITY cemptyv "&#x29B2;">
<!ENTITY raemptyv "&#x29B3;">
<!ENTITY laemptyv "&#x29B4;">
<!ENTITY ohbar "&#x29B5;">
<!ENTITY omid "&#x29B6;">
<!ENTITY opar "&#x29B7;">
<!ENTITY operp "&#x29B9;">
<!ENTITY olcross "&#x29BB;">
<!ENTITY odsold "&#x29BC;">
<!ENTITY olcir "&#x29BE;">
<!ENTITY ofcir "&#x29BF;">
<!ENTITY olt "&#x29C0;">
<!ENTITY ogt "&#x29C1;">
<!ENTITY cirscir "&#x29C2;">
<!ENTITY cirE "&#x29C3;">
<!ENTITY solb "&#x29C4;">
<!ENTITY bsolb "&#x29C5;">
<!ENTITY boxbox "&#x29C9;">
<!ENTITY trisb "&#x29CD;">
<!ENTITY rtriltri "&#x29CE;">
<!ENTITY LeftTriangleBar "&#x29CF;">
<!ENTITY RightTriangleBar "&#x29D0;">
<!ENTITY iinfin "&#x29DC;">
<!ENTITY infintie "&#x29DD;">
<!ENTITY nvinfin "&#x29DE;">
<!ENTITY eparsl "&#x29E3;">
<!ENTITY smeparsl "&#x29E4;">
<!ENTITY eqvparsl "&#x29E5;">
<!ENTITY lozf "&#x29EB;">
<!ENTITY blacklozenge "&#x29EB;">
<!ENTITY RuleDelayed "&#x29F4;">
<!ENTITY dsol "&#x29F6;">
<!ENTITY xodot "&#x2A00;">
<!ENTITY bigodot "&#x2A00;">
<!ENTITY xoplus "&#x2A01;">
<!ENTITY bigoplus "&#x2A01;">
<!ENTITY xotime "&#x2A02;">
<!ENTITY bigotimes "&#x2A02;">
<!ENTITY xuplus "&#x2A04;">
<!ENTITY biguplus "&#x2A04;">
<!ENTITY xsqcup "&#x2A06;">
<!ENTITY bigsqcup "&#x2A06;">
<!ENTITY qint "&#x2A0C;">
<!ENTITY iiiint "&#x2A0C;">
<!ENTITY fpartint "&#x2A0D;">
<!ENTITY cirfnint "&#x2A10;">
<!ENTITY awint "&#x2A11;">
<!ENTITY rppolint "&#x2A12;">
<!ENTITY scpolint "&#x2A13;">
<!ENTITY npolint "&#x2A14;">
<!ENTITY pointint "&#x2A15;">
<!ENTITY quatint "&#x2A16;">
<!ENTITY intlarhk "&#x2A17;">
<!ENTITY pluscir "&#x2A22;">
<!ENTITY plusacir "&#x2A23;">
<!ENTITY simplus "&#x2A24;">
<!ENTITY plusdu "&#x2A25;">
<!ENTITY plussim "&#x2A26;">
<!ENTITY plustwo "&#x2A27;">
<!ENTITY mcomma "&#x2A29;">
<!ENTITY minusdu "&#x2A2A;">
<!ENTITY loplus "&#x2A2D;">
<!ENTITY roplus "&#x2A2E;">
<!ENTITY Cross "&#x2A2F;">
<!ENTITY timesd "&#x2A30;">
<!ENTITY timesbar "&#x2A31;">
<!ENTITY smashp "&#x2A33;">
<!ENTITY lotimes "&#x2A34;">
<!ENTITY rotimes "&#x2A35;">
<!ENTITY otimesas "&#x2A36;">
<!ENTITY Otimes "&#x2A37;">
<!ENTITY odiv "&#x2A38;">
<!ENTITY triplus "&#x2A39;">
<!ENTITY triminus "&#x2A3A;">
<!ENTITY tritime "&#x2A3B;">
<!ENTITY iprod "&#x2A3C;">
<!ENTITY intprod "&#x2A3C;">
<!ENTITY amalg "&#x2A3F;">
<!ENTITY capdot "&#x2A40;">
<!ENTITY ncup "&#x2A42;">
<!ENTITY ncap "&#x2A43;">
<!ENTITY capand "&#x2A44;">
<!ENTITY cupor "&#x2A45;">
<!ENTITY cupcap "&#x2A46;">
<!ENTITY capcup "&#x2A47;">
<!ENTITY cupbrcap "&#x2A48;">
<!ENTITY capbrcup "&#x2A49;">
<!ENTITY cupcup "&#x2A4A;">
<!ENTITY capcap "&#x2A4B;">
<!ENTITY ccups "&#x2A4C;">
<!ENTITY ccaps "&#x2A4D;">
<!ENTITY ccupssm "&#x2A50;">
<!ENTITY And "&#x2A53;">
<!ENTITY Or "&#x2A54;">
<!ENTITY andand "&#x2A55;">
<!ENTITY oror "&#x2A56;">
<!ENTITY orslope "&#x2A57;">
<!ENTITY andslope "&#x2A58;">
<!ENTITY andv "&#x2A5A;">
<!ENTITY orv "&#x2A5B;">
<!ENTITY andd "&#x2A5C;">
<!ENTITY ord "&#x2A5D;">
<!ENTITY wedbar "&#x2A5F;">
<!ENTITY sdote "&#x2A66;">
<!ENTITY simdot "&#x2A6A;">
<!ENTITY congdot "&#x2A6D;">
<!ENTITY easter "&#x2A6E;">
<!ENTITY apacir "&#x2A6F;">
<!ENTITY apE "&#x2A70;">
<!ENTITY eplus "&#x2A71;">
<!ENTITY pluse "&#x2A72;">
<!ENTITY Esim "&#x2A73;">
<!ENTITY Colone "&#x2A74;">
<!ENTITY Equal "&#x2A75;">
<!ENTITY eDDot "&#x2A77;">
<!ENTITY ddotseq "&#x2A77;">
<!ENTITY equivDD "&#x2A78;">
<!ENTITY ltcir "&#x2A79;">
<!ENTITY gtcir "&#x2A7A;">
<!ENTITY ltquest "&#x2A7B;">
<!ENTITY gtquest "&#x2A7C;">
<!ENTITY les "&#x2A7D;">
<!ENTITY LessSlantEqual "&#x2A7D;">
<!ENTITY leqslant "&#x2A7D;">
<!ENTITY ges "&#x2A7E;">
<!ENTITY GreaterSlantEqual "&#x2A7E;">
<!ENTITY geqslant "&#x2A7E;">
<!ENTITY lesdot "&#x2A7F;">
<!ENTITY gesdot "&#x2A80;">
<!ENTITY lesdoto "&#x2A81;">
<!ENTITY gesdoto "&#x2A82;">
<!ENTITY lesdotor "&#x2A83;">
<!ENTITY gesdotol "&#x2A84;">
<!ENTITY lap "&#x2A85;">
<!ENTITY lessapprox "&#x2A85;">
<!ENTITY gap "&#x2A86;">
<!ENTITY gtrapprox "&#x2A86;">
<!ENTITY lne "&#x2A87;">
<!ENTITY lneq "&#x2A87;">
<!ENTITY gne "&#x2A88;">
<!ENTITY gneq "&#x2A88;">
<!ENTITY lnap "&#x2A89;">
<!ENTITY lnapprox "&#x2A89;">
<!ENTITY gnap "&#x2A8A;">
<!ENTITY gnapprox "&#x2A8A;">
<!ENTITY lEg "&#x2A8B;">
<!ENTITY lesseqqgtr "&#x2A8B;">
<!ENTITY gEl "&#x2A8C;">
<!ENTITY gtreqqless "&#x2A8C;">
<!ENTITY lsime "&#x2A8D;">
<!ENTITY gsime "&#x2A8E;">
<!ENTITY lsimg "&#x2A8F;">
<!ENTITY gsiml "&#x2A90;">
<!ENTITY lgE "&#x2A91;">
<!ENTITY glE "&#x2A92;">
<!ENTITY lesges "&#x2A93;">
<!ENTITY gesles "&#x2A94;">
<!ENTITY els "&#x2A95;">
<!ENTITY eqslantless "&#x2A95;">
<!ENTITY egs "&#x2A96;">
<!ENTITY eqslantgtr "&#x2A96;">
<!ENTITY elsdot "&#x2A97;">
<!ENTITY egsdot "&#x2A98;">
<!ENTITY el "&#x2A99;">
<!ENTITY eg "&#x2A9A;">
<!ENTITY siml "&#x2A9D;">
<!ENTITY simg "&#x2A9E;">
<!ENTITY simlE "&#x2A9F;">
<!ENTITY simgE "&#x2AA0;">
<!ENTITY LessLess "&#x2AA1;">
<!ENTITY GreaterGreater "&#x2AA2;">
<!ENTITY glj "&#x2AA4;">
<!ENTITY gla "&#x2AA5;">
<!ENTITY ltcc "&#x2AA6;">
<!ENTITY gtcc "&#x2AA7;">
<!ENTITY lescc "&#x2AA8;">
<!ENTITY gescc "&#x2AA9;">
<!ENTITY smt "&#x2AAA;">
<!ENTITY lat "&#x2AAB;">
<!ENTITY smte "&#x2AAC;">
<!ENTITY late "&#x2AAD;">
<!ENTITY bumpE "&#x2AAE;">
<!ENTITY pre "&#x2AAF;">
<!ENTITY preceq "&#x2AAF;">
<!ENTITY PrecedesEqual "&#x2AAF;">
<!ENTITY sce "&#x2AB0;">
<!ENTITY succeq "&#x2AB0;">
<!ENTITY SucceedsEqual "&#x2AB0;">
<!ENTITY prE "&#x2AB3;">
<!ENTITY scE "&#x2AB4;">
<!ENTITY prnE "&#x2AB5;">
<!ENTITY precneqq "&#x2AB5;">
<!ENTITY scnE "&#x2AB6;">
<!ENTITY succneqq "&#x2AB6;">
<!ENTITY prap "&#x2AB7;">
<!ENTITY precapprox "&#x2AB7;">
<!ENTITY scap "&#x2AB8;">
<!ENTITY succapprox "&#x2AB8;">
<!ENTITY prnap "&#x2AB9;">
<!ENTITY precnapprox "&#x2AB9;">
<!ENTITY scnap "&#x2ABA;">
<!ENTITY succnapprox "&#x2ABA;">
<!ENTITY Pr "&#x2ABB;">
<!ENTITY Sc "&#x2ABC;">
<!ENTITY subdot "&#x2ABD;">
<!ENTITY supdot "&#x2ABE;">
<!ENTITY subplus "&#x2ABF;">
<!ENTITY supplus "&#x2AC0;">
<!ENTITY submult "&#x2AC1;">
<!ENTITY supmult "&#x2AC2;">
<!ENTITY subedot "&#x2AC3;">
<!ENTITY supedot "&#x2AC4;">
<!ENTITY subE "&#x2AC5;">
<!ENTITY subseteqq "&#x2AC5;">
<!ENTITY supE "&#x2AC6;">
<!ENTITY supseteqq "&#x2AC6;">
<!ENTITY subsim "&#x2AC7;">
<!ENTITY supsim "&#x2AC8;">
<!ENTITY subnE "&#x2ACB;">
<!ENTITY subsetneqq "&#x2ACB;">
<!ENTITY supnE "&#x2ACC;">
<!ENTITY supsetneqq "&#x2ACC;">
<!ENTITY csub "&#x2ACF;">
<!ENTITY csup "&#x2AD0;">
<!ENTITY csube "&#x2AD1;">
<!ENTITY csupe "&#x2AD2;">
<!ENTITY subsup "&#x2AD3;">
<!ENTITY supsub "&#x2AD4;">
<!ENTITY subsub "&#x2AD5;">
<!ENTITY supsup "&#x2AD6;">
<!ENTITY suphsub "&#x2AD7;">
<!ENTITY supdsub "&#x2AD8;">
<!ENTITY forkv "&#x2AD9;">
<!ENTITY topfork "&#x2ADA;">
<!ENTITY mlcp "&#x2ADB;">
<!ENTITY Dashv "&#x2AE4;">
<!ENTITY DoubleLeftTee "&#x2AE4;">
<!ENTITY Vdashl "&#x2AE6;">
<!ENTITY Barv "&#x2AE7;">
<!ENTITY vBar "&#x2AE8;">
<!ENTITY vBarv "&#x2AE9;">
<!ENTITY Vbar "&#x2AEB;">
<!ENTITY Not "&#x2AEC;">
<!ENTITY bNot "&#x2AED;">
<!ENTITY rnmid "&#x2AEE;">
<!ENTITY cirmid "&#x2AEF;">
<!ENTITY midcir "&#x2AF0;">
<!ENTITY topcir "&#x2AF1;">
<!ENTITY nhpar "&#x2AF2;">
<!ENTITY parsim "&#x2AF3;">
<!ENTITY parsl "&#x2AFD;">
<!ENTITY fflig "&#xFB00;">
<!ENTITY filig "&#xFB01;">
<!ENTITY fllig "&#xFB02;">
<!ENTITY ffilig "&#xFB03;">
<!ENTITY ffllig "&#xFB04;">
<!ENTITY Ascr "&#x1D49C;">
<!ENTITY Cscr "&#x1D49E;">
<!ENTITY Dscr "&#x1D49F;">
<!ENTITY Gscr "&#x1D4A2;">
<!ENTITY Jscr "&#x1D4A5;">
<!ENTITY Kscr "&#x1D4A6;">
<!ENTITY Nscr "&#x1D4A9;">
<!ENTITY Oscr "&#x1D4AA;">
<!ENTITY Pscr "&#x1D4AB;">
<!ENTITY Qscr "&#x1D4AC;">
<!ENTITY Sscr "&#x1D4AE;">
<!ENTITY Tscr "&#x1D4AF;">
<!ENTITY Uscr "&#x1D4B0;">
<!ENTITY Vscr "&#x1D4B1;">
<!ENTITY Wscr "&#x1D4B2;">
<!ENTITY Xscr "&#x1D4B3;">
<!ENTITY Yscr "&#x1D4B4;">
<!ENTITY Zscr "&#x1D4B5;">
<!ENTITY ascr "&#x1D4B6;">
<!ENTITY bscr "&#x1D4B7;">
<!ENTITY cscr "&#x1D4B8;">
<!ENTITY dscr "&#x1D4B9;">
<!ENTITY fscr "&#x1D4BB;">
<!ENTITY hscr "&#x1D4BD;">
<!ENTITY iscr "&#x1D4BE;">
<!ENTITY jscr "&#x1D4BF;">
<!ENTITY kscr "&#x1D4C0;">
<!ENTITY lscr "&#x1D4C1;">
<!ENTITY mscr "&#x1D4C2;">
<!ENTITY nscr "&#x1D4C3;">
<!ENTITY pscr "&#x1D4C5;">
<!ENTITY qscr "&#x1D4C6;">
<!ENTITY rscr "&#x1D4C7;">
<!ENTITY sscr "&#x1D4C8;">
<!ENTITY tscr "&#x1D4C9;">
<!ENTITY uscr "&#x1D4CA;">
<!ENTITY vscr "&#x1D4CB;">
<!ENTITY wscr "&#x1D4CC;">
<!ENTITY xscr "&#x1D4CD;">
<!ENTITY yscr "&#x1D4CE;">
<!ENTITY zscr "&#x1D4CF;">
<!ENTITY Afr "&#x1D504;">
<!ENTITY Bfr "&#x1D505;">
<!ENTITY Dfr "&#x1D507;">
<!ENTITY Efr "&#x1D508;">
<!ENTITY Ffr "&#x1D509;">
<!ENTITY Gfr "&#x1D50A;">
<!ENTITY Jfr "&#x1D50D;">
<!ENTITY Kfr "&#x1D50E;">
<!ENTITY Lfr "&#x1D50F;">
<!ENTITY Mfr "&#x1D510;">
<!ENTITY Nfr "&#x1D511;">
<!ENTITY Ofr "&#x1D512;">
<!ENTITY Pfr "&#x1D513;">
<!ENTITY Qfr "&#x1D514;">
<!ENTITY Sfr "&#x1D516;">
<!ENTITY Tfr "&#x1D517;">
<!ENTITY Ufr "&#x1D518;">
<!ENTITY Vfr "&#x1D519;">
<!ENTITY Wfr "&#x1D51A;">
<!ENTITY Xfr "&#x1D51B;">
<!ENTITY Yfr "&#x1D51C;">
<!ENTITY afr "&#x1D51E;">
<!ENTITY bfr "&#x1D51F;">
<!ENTITY cfr "&#x1D520;">
<!ENTITY dfr "&#x1D521;">
<!ENTITY efr "&#x1D522;">
<!ENTITY ffr "&#x1D523;">
<!ENTITY gfr "&#x1D524;">
<!ENTITY hfr "&#x1D525;">
<!ENTITY ifr "&#x1D526;">
<!ENTITY jfr "&#x1D527;">
<!ENTITY kfr "&#x1D528;">
<!ENTITY lfr "&#x1D529;">
<!ENTITY mfr "&#x1D52A;">
<!ENTITY nfr "&#x1D52B;">
<!ENTITY ofr "&#x1D52C;">
<!ENTITY pfr "&#x1D52D;">
<!ENTITY qfr "&#x1D52E;">
<!ENTITY rfr "&#x1D52F;">
<!ENTITY sfr "&#x1D530;">
<!ENTITY tfr "&#x1D531;">
<!ENTITY ufr "&#x1D532;">
<!ENTITY vfr "&#x1D533;">
<!ENTITY wfr "&#x1D534;">
<!ENTITY xfr "&#x1D535;">
<!ENTITY yfr "&#x1D536;">
<!ENTITY zfr "&#x1D537;">
<!ENTITY Aopf "&#x1D538;">
<!ENTITY Bopf "&#x1D539;">
<!ENTITY Dopf "&#x1D53B;">
<!ENTITY Eopf "&#x1D53C;">
<!ENTITY Fopf "&#x1D53D;">
<!ENTITY Gopf "&#x1D53E;">
<!ENTITY Iopf "&#x1D540;">
<!ENTITY Jopf "&#x1D541;">
<!ENTITY Kopf "&#x1D542;">
<!ENTITY Lopf "&#x1D543;">
<!ENTITY Mopf "&#x1D544;">
<!ENTITY Oopf "&#x1D546;">
<!ENTITY Sopf "&#x1D54A;">
<!ENTITY Topf "&#x1D54B;">
<!ENTITY Uopf "&#x1D54C;">
<!ENTITY Vopf "&#x1D54D;">
<!ENTITY Wopf "&#x1D54E;">
<!ENTITY Xopf "&#x1D54F;">
<!ENTITY Yopf "&#x1D550;">
<!ENTITY aopf "&#x1D552;">
<!ENTITY bopf "&#x1D553;">
<!ENTITY copf "&#x1D554;">
<!ENTITY dopf "&#x1D555;">
<!ENTITY eopf "&#x1D556;">
<!ENTITY fopf "&#x1D557;">
<!ENTITY gopf "&#x1D558;">
<!ENTITY hopf "&#x1D559;">
<!ENTITY iopf "&#x1D55A;">
<!ENTITY jopf "&#x1D55B;">
<!ENTITY kopf "&#x1D55C;">
<!ENTITY lopf "&#x1D55D;">
<!ENTITY mopf "&#x1D55E;">
<!ENTITY nopf "&#x1D55F;">
<!ENTITY oopf "&#x1D560;">
<!ENTITY popf "&#x1D561;">
<!ENTITY qopf "&#x1D562;">
<!ENTITY ropf "&#x1D563;">
<!ENTITY sopf "&#x1D564;">
<!ENTITY topf "&#x1D565;">
<!ENTITY uopf "&#x1D566;">
<!ENTITY vopf "&#x1D567;">
<!ENTITY wopf "&#x1D568;">
<!ENTITY xopf "&#x1D569;">
<!ENTITY yopf "&#x1D56A;">
<!ENTITY zopf "&#x1D56B;">
PAD<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 12 12" xml:space="preserve">
<g>
	<path fill="#000100" d="M7.9,0C8.3,0,8.6,0,9,0.1s0.7,0.2,1,0.4s0.6,0.4,0.8,0.6s0.5,0.5,0.6,0.8s0.3,0.6,0.4,1S12,3.7,12,4.1
		s0,0.7-0.1,1.1s-0.2,0.7-0.4,1S11,6.8,10.8,7S10.3,7.5,10,7.7S9.3,8,9,8.1S8.3,8.2,7.9,8.2c-0.5,0-1-0.1-1.4-0.2S5.6,7.6,5.2,7.3
		l-4.6,4.6C0.6,12,0.5,12,0.4,12s-0.2,0-0.3-0.1S0,11.7,0,11.6s0-0.2,0.1-0.3l4.6-4.6C4.4,6.4,4.2,6,4,5.5S3.8,4.6,3.8,4.1
		c0-0.4,0-0.7,0.1-1.1s0.2-0.7,0.4-1S4.7,1.5,5,1.2s0.5-0.5,0.8-0.6s0.6-0.3,1-0.4S7.5,0,7.9,0z M7.9,7.5c0.5,0,0.9-0.1,1.3-0.3
		s0.8-0.4,1.1-0.7s0.5-0.7,0.7-1.1s0.3-0.8,0.3-1.3S11.2,3.2,11,2.8S10.6,2,10.3,1.7S9.6,1.2,9.2,1S8.3,0.8,7.9,0.8S7,0.8,6.6,1
		S5.8,1.4,5.5,1.7S4.9,2.4,4.8,2.8S4.5,3.7,4.5,4.1S4.6,5,4.8,5.4s0.4,0.8,0.7,1.1s0.7,0.5,1.1,0.7S7.4,7.5,7.9,7.5z"/>
</g>
</svg>
P<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 16 16" xml:space="preserve">
<g>
	<path d="M8,0c0.7,0,1.4,0.1,2.1,0.3c0.7,0.2,1.3,0.5,1.9,0.8c0.6,0.3,1.1,0.8,1.6,1.3c0.5,0.5,0.9,1,1.3,1.6
		c0.3,0.6,0.6,1.2,0.8,1.9C15.9,6.6,16,7.3,16,8s-0.1,1.4-0.3,2.1c-0.2,0.7-0.5,1.3-0.8,1.9c-0.3,0.6-0.8,1.1-1.3,1.6
		c-0.5,0.5-1,0.9-1.6,1.3c-0.6,0.3-1.2,0.6-1.9,0.8C9.4,15.9,8.7,16,8,16s-1.4-0.1-2.1-0.3c-0.7-0.2-1.3-0.5-1.9-0.8
		s-1.1-0.8-1.6-1.2c-0.5-0.5-0.9-1-1.2-1.6c-0.3-0.6-0.6-1.2-0.8-1.9C0.1,9.4,0,8.7,0,8c0-0.7,0.1-1.4,0.3-2.1
		C0.5,5.2,0.7,4.6,1.1,4c0.3-0.6,0.8-1.1,1.3-1.6c0.5-0.5,1-0.9,1.6-1.3c0.6-0.3,1.2-0.6,1.9-0.8C6.6,0.1,7.3,0,8,0z M8,15
		c0.6,0,1.3-0.1,1.9-0.2c0.6-0.2,1.2-0.4,1.7-0.7c0.5-0.3,1-0.7,1.4-1.1c0.4-0.4,0.8-0.9,1.1-1.4s0.5-1.1,0.7-1.7
		C14.9,9.3,15,8.6,15,8s-0.1-1.3-0.2-1.9C14.6,5.5,14.3,5,14,4.5s-0.7-1-1.1-1.4c-0.4-0.4-0.9-0.8-1.4-1.1C11,1.7,10.5,1.4,9.9,1.2
		C9.3,1.1,8.6,1,8,1C7.4,1,6.7,1.1,6.1,1.2C5.5,1.4,5,1.7,4.5,2c-0.5,0.3-1,0.7-1.4,1.1C2.6,3.5,2.3,3.9,2,4.5S1.4,5.5,1.2,6.1
		C1.1,6.7,1,7.4,1,8s0.1,1.3,0.2,1.9C1.4,10.5,1.7,11,2,11.5c0.3,0.5,0.7,1,1.1,1.4c0.4,0.4,0.9,0.8,1.4,1.1
		c0.5,0.3,1.1,0.5,1.7,0.7C6.7,14.9,7.4,15,8,15z M4,8.5v-1h8v1H4z"/>
</g>
</svg>
P<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 16 16" xml:space="preserve">
<g>
	<path d="M8,0c0.7,0,1.4,0.1,2.1,0.3c0.7,0.2,1.3,0.5,1.9,0.8c0.6,0.3,1.1,0.8,1.6,1.3c0.5,0.5,0.9,1,1.3,1.6
		c0.3,0.6,0.6,1.2,0.8,1.9C15.9,6.6,16,7.3,16,8s-0.1,1.4-0.3,2.1c-0.2,0.7-0.5,1.3-0.8,1.9c-0.3,0.6-0.8,1.1-1.3,1.6
		c-0.5,0.5-1,0.9-1.6,1.3c-0.6,0.3-1.2,0.6-1.9,0.8C9.4,15.9,8.7,16,8,16s-1.4-0.1-2.1-0.3c-0.7-0.2-1.3-0.5-1.9-0.8
		c-0.6-0.3-1.1-0.8-1.6-1.2c-0.5-0.5-0.9-1-1.2-1.6c-0.3-0.6-0.6-1.2-0.8-1.9C0.1,9.4,0,8.7,0,8c0-0.7,0.1-1.4,0.3-2.1
		C0.5,5.2,0.7,4.6,1.1,4c0.3-0.6,0.8-1.1,1.3-1.6c0.5-0.5,1-0.9,1.6-1.3c0.6-0.3,1.2-0.6,1.9-0.8C6.6,0.1,7.3,0,8,0z M8,15
		c0.6,0,1.3-0.1,1.9-0.2c0.6-0.2,1.2-0.4,1.7-0.7c0.5-0.3,1-0.7,1.4-1.1c0.4-0.4,0.8-0.9,1.1-1.4c0.3-0.5,0.5-1.1,0.7-1.7
		C14.9,9.3,15,8.6,15,8c0-0.6-0.1-1.3-0.2-1.9C14.6,5.5,14.3,5,14,4.5c-0.3-0.5-0.7-1-1.1-1.4c-0.4-0.4-0.9-0.8-1.4-1.1
		C11,1.7,10.5,1.4,9.9,1.2C9.3,1.1,8.6,1,8,1C7.4,1,6.7,1.1,6.1,1.2C5.5,1.4,5,1.7,4.5,2c-0.5,0.3-1,0.7-1.4,1.1
		C2.6,3.5,2.3,3.9,2,4.5C1.7,5,1.4,5.5,1.2,6.1C1.1,6.7,1,7.4,1,8c0,0.6,0.1,1.3,0.2,1.9C1.4,10.5,1.7,11,2,11.5
		c0.3,0.5,0.7,1,1.1,1.4c0.4,0.4,0.9,0.8,1.4,1.1c0.5,0.3,1.1,0.5,1.7,0.7C6.7,14.9,7.4,15,8,15z M8.5,7.5H12v1H8.5V12h-1V8.5H4v-1
		h3.5V4h1V7.5z"/>
</g>
</svg>
PAD�PNG


IHDR"2]�7IDATx�Mh�`�EH��L�Q/�@[bAw� �ă�y�"�N^xVD��mS�:�1?�ش�*S���	�m����<��`�\�>�#o�/~��v����fB!BD�P��0�*��w(��c��v� z�-22!Z!$��Xf7�MF&,)��+#����-$:��m��k�[s�x�L��i4[D��6�Vf��K��1t%%��_y���}��;�%R�7Q����e5��ZFt�)"�f�S�K�5ęE�]Dؗ��QG���s^�7��Y'F_ak�.�9�J�����"�D�P}���M�!�,i�����%���$>�E���s��hF��(�&n?Hc{�1��.`ߩ��=�w�N�Е�s "�b�����:b#s�?�
��9�y�;�O���<W���ݿN�@D2���j���e�/�9��_u�}���n�K���@Dr�ed��.�!v!�C�fq�ֲ�����>�D��"�3�\ "y^���[��8u�	J$[(	28�pn�s�99��	I?��G�%�$xO��O�B�<!�Dx�J(��C����/E7~�Ԟ���X3IEND�B`��PNG


IHDR"2]��IDATx^��{hU��<��l�Z�j-V�V�6���"�%��A0"EZAP�i,UP�
LH*� �Tڴ���
��֘�I�n��4���{��&�$�T��a�ٽ����դ��aO�6¢���`�ȿ9]�����%M8��lvOsssyWWWlzzڼ UUUnCC�ږ���`0�N��֦��O�����klllx%?����������������t�=���۷o_����\�=��d�V�t:}|9�F�c�Y�&���Sɱ���J&�F�8�i]�� $!�$�*�o\װ}���z3b�3�b?�!s�ܼ���
��{���)MӈaW��yl��`P�4�x��{���@�U~>��?���
�5l�|�JKK۶����\�Ir�O�RA�}�N7�m��o;�Ӌ;�~��ڵ��.OI ���Y�ByH�h*�U)����/p�SYY�G�a\h9')� 	\{^i���>�B戞y��ݲ0��  0㩘+���������e=��{�RWT�h\���ɯ���`$��@����&�J��	���
)��t���� 'k��3wP�)u�X*L�F��iffF���h^��[�4�66�He�_^�g<�0G��F��u�p�6<pE��J�)��B�5�N.U��LNNNutt��&��D�'�j?6����	j}�!��Y:>8J���;�bY�3�N��822��g���$MЮ]��Py6iu-��*#���sI�q��$��x.MM40@t�V��M���F7$�W
�m[S�eY=�
աĚ���ý�i?�Q��x�>:t����oz�v=�T�@"�~I��0���8�Y"!lҕ�֎'|ّ��;�L��cqb�U��E���$�e�^zަ�Ia�c���˕F�F�P��航v'S;=CyW��=�i�=��$M&r��Q�<r�^~��X�WF���|qdqi�4,��i��`Z��5�6}��&b)�m�Ul��RZbZ�
X ��c�x��0B��	b@b�U_�
m��|��d�<��u�RpL���=b��T#
��nh���o�G��"Ѩ�;k8��#�$�Z�(
�K4�`��@��lK\M�����xVX��	�BH����$`]H�����i9��Z<�m>�C	�	����X4R�<��i(��!�]�<�k:y�K�D$!���cA��BC�B
����Ŭ�mG�+.�m���H=�ю߿n݆���e�:���Rcʅ���\�t�<�~�'��c���^��.����,��j���&[2���cǎ�[[[+�ݻw�v˖ͨ����������]��@I����������g[[���ؘ�Y9���$z�>9x0�~"q�v���{��{��$�A�ӫ����oH�I6�/bB�� �IEND�B`�PA�PNG


IHDR"2]��IDATx��]lTE����ݻ_��/����U�I}1�	��)$}L#M�|��F�4�>�XҪ�F#�$�4��X���.��m�{?f<���L�-���K&�ɝ;�wϙ{gj�PJ�<A�!j	�;��Z�_99j�}O-c�DM>�okoo�9r�Hrbb¼"����֭[Wttt4ٶ��A����j���V=z�����.��E'�k���/�W���ȑ��K---�=����M,����7900O�R�g}���LD�Lʲ~�"4�^�l������Y�"�L&c���!��
X��DY�rr4�7�z�=�&�P�BaZ<���_94��(�P9\"
���Ct��K�4a�_VBX�%#��䬙��@�1a�4X����]�6?�x���ڡ�瑐��D��G84�٬��O��_i~�
_��-�vnzx�!Z�~]]�C�jI�#q�4r���-ȼ�nz����l��n,�Ts��xР�Br�YI�H���p�2lz�J���̫�?�^�V���EKS �AO �$e�Ǔb!��`���"hZ����=88tFGG��hT�����G,��
��K�5F���D'~H��[8yv)66�Q������R����K�f�RT�xe"���W{zz��-�X��<^�����1tq
�W�q|�:��Ú�V"aPP�1�>s�ԩ����?i�\����پ}�c�iMT��˲�uy�O���hy�����;��� �m��V�f'�A#Q�*#�������Ɍ�pu�� ��y9�� ���zu��r,�Y.��F��{�
A�'���+�C٨OY�}t�~x�}��ܸKj�<ai�P����H��妈�J�x���p}��I���8�S���ܵ$��	��9C��ol~&���� �*/�R�Gyo	�"bۑ����3Y'�\��)꿄W�,�7'��t�ߓ@�Wcx��0ze��)�(5�1�E|�"� B,#B���6ᒚ0>~�Q�����zn�kUB1-�&�8��)8&'|��h`�9��B����_VB��,��N
nmz��m�Ñ�C�L�Y.B��X� @PS!���4��|�-�$�p<����1�bY��.�[��L��,e $ �\f?�L��ӹ\�s=����� %������0BTZ%�dYJ$�¡�W����d"!��x�c�kd��
��.�޻j՚���(��v$b��dѓ�\��ݹ��/�����( �7�He�&�G@�MNmMM����q��؁E~ܶm�ݝ���o��=�qÆ�4��|�$7.�M!7~�@Og�_N���N�%hU�
������׸�ٻw���ښp�ENvuu=Nq`��������
��;vL�۷/�,r����Ç��= v;D�E:��&��&)�9��IEND�B`�P�PNG


IHDR"2]�MIDATx��iheǟ��nv��l�6�`mlA��)�f�0� �e�j���@��*x =��P�mm�JZQZ�����Ib�*�4istw�G��;��_�]�f��T��/�3��{�La��Y��0�s�.w>'j�ij��ܩT�fϞ=�eee.I��n-hB��ܘ��ݻw����o��b��}??��s�H$�~yy�Іy����6�L6q�#f�e���gg���Ah�a����]�r}�qlΝωmЄ6<�d���M&
2����������W�\Q�PHɕ�A_���ĸnBS�牊y1%���ie��7��Ħu5;ySN-X� ��T��a�5�i�liT������oZ��3���С�O���~O0t�~�mfF�3��255���|{6x��������F���[#)ߏ�t� ]gK~�r�~�H���3gگ6�������1Uh�ZM�;%i�Ή�21a�[��p���M�H��5�Y���p����.�-SfN�������Pd��u��o���5N*_��~:yd?��P'/�#K8E��ݩ�C$��T$��LLit�o��.��َ8��8D�XL^���
��J�H��
�D�Ϣ���� �n�����
��\����G���|��~��OףIR�eD)���#�mmm!�k����iB�d4�=A����CQFS)|C��¢b��֥1�ƜN'��_D�tGb):u��٘�sPhp��}�G_�]��[J��n�k�~��EQ$~��עc�j�Pf4�2;�<3B��?�#DYi>}w�K�{�_��N��#//OƸvFd#26�0"��(c*���TZ�ON^G������E^:��ڲ}D?�0���H��Q��������G���i�nj!���-,�-�`�+Vl]�~�3��[М��TU�����s�l�-���Y1�t�Υvk�ay�:���.��3>��9c�h���Q���K�<^/���o����Rqq���S�V5M�tɀ�=b�iE�=��)**r=X�jQqfG�1�W��#O����me�*Jۜ�������%K���[�P.,,r	h�4�s��w��N(�7?������VN���x��:ZD�O���~�vy �u.���_[YU5QYQI�K�]Z�$⛵��g���dC<�\��W���\������]��.tvnb63�]��B�u��_�[�-��_�x���U�%o������7����x<u�˗_�{HU�#�Q���g�0A�ʜ�M~
���c�GX�chA���F*a��/�چ�����R�P�;�hA��F��y�y�.��-hB���j��
mIEND�B`�PA�PNG


IHDR;0��;IDATx�]HCeǟs��6�q�~д&�V+%%�.�()�J�R��%�.ldWy��%F7�hz(�E(�2�+ȯ�L�r�tt�����ƋgXQ�~<g���9�y7��u�syat��I���[��?7��2(�lW.����,k��č7y�Q0EQ�TW���k�Pp�����斚v)Q�W���{�n�D$�{0T�a�Ĕ����P9���C�M���QH��@)Ƙ�i7��0����ZV<;���B������!��\.+g�
�$	��
G��8�47(����e��?tx~�qs�ae;��[�P��DC�������g���c����p��q�ל-2���S?�#!�b��d�?����[U'	�z���\�R�(����r�E!V�����9P���镻�.ǽ>���t=��b��,ŢkI9ƅ��MD1��Jg2�qz���\JPX����cT�_!S�C;[��$7~���}sz+��]�Zˈ�X�ka)��s��c���2�}����`��_�O��K�k4Xi
w�B�c�X��dm���x}�'_5
�?��x}.�(��=9~cj�+�R���Y'�\L�ÿ����W���"��$.��/����W?Ł18y�)w�V���'W�g� �j)�!ݱ�m��]b�"(̉��X�"VW�����m7w'(�{9oЇn����\� ǎ�b��b$�D�C�|����W�fp`�3sv87p����\���?'�cJ}�Ň�>Bi=nʉ�W/B�*v��8A�U;bŞ��E�.CE�])�B�)3$�W"!���
�~�r��IEND�B`��PNG


IHDR;0��
IDATx�_HSQ�Ͻ��9���iM�œ&��DE!�C�Sdo=TB�HB�?F�hO�h�����6����lJ�\�J�����{:�Ε��#����w|�9�s�>�;���Mm��fu��u�\K������A�����
+�/|rk�[�8d�8��K���~X:B�<r�@S��A��_gx;z=��6O"!1xo�*pz�K���KC�h?��?y��87�o*,ʬue���d����CNʹ�;�}-�M��v�����++]Gq��Zֆ2�(w�<����r�]�]�f�X,E�]��
��q�$�ꕻUUՍ�<�>����V@�e}�������tT8
�u�<�[S��0DQ\qE��J|��[�v���l�"�,;���$	@U��ժ�מ��r:��P�e�"�G���Ҫ0�e�`�<�GxZ�R$b���S�U	T�c�ư|}m==�?v�B���ڽ'����5��?�56:�_`��?�r��i�gdx�}���X�Rd]�X
����>ox848~}hp&������l.��[��ݭ���NM���$,�ե;�K����#I2��������E>V'&���R[�P���

�磋�d��qk�m�m�����Y��=���#�O���.�yz�p��#����3h."'hpZӥ"g"oEvb�c^#��s9
?�#� g![�k��|�"<�V99$�!QffE+���&�f�pi��+ؚ�/l�YmL�g��$���r�����r��(�KIEND�B`�P�PNG


IHDR;0��IDATx���OA��<Jm�
*!��݃����
�o�r����� ϔ����B��}l[��e7��d<x�`ƙͷ�PK[Jу~i;���73;�|:���o��/�7��:���]W��Q�a�o�9q�$}A�dm�I��F��	ӈ�S�ֹ��W޼v�@�m�ˊ�4��by^lĴB�b╕PH����+��Y*�M^N\�d$I-&Kgy#���W�AF��b&��d��v����IJ,��n�L�$/�'�c�{iK�s�J�Rȹ"�tb��니{1�a�fm�F������t���(�3�(j�c�.ئ�j�}���25��`�>�F%���%3Aħ0G1&-�=�]�@?��(���t:�
y��C�q�J-{�\��h$�9��|�D"���*�iz���l.m�<+�[�I{<Gǩ�b1�����D|g�~a��_�y�\8F�H$����69��b��{wߞ�ۜ.�Z*
�&����$��[��ڬ#�o\��\���p.�@f�cpn�˭���
g��NH$��<��<>�//�z�5{��c��:|�ޏ����O rB�lj�$51�AhHƛ�C=��o�a�6뢫��y�<� n�����m��Og�OOyBX섗qw)svڷJ���pIh��n��G�/�_.M���n.�z�h����ԵH�HX
#��f�mMEb�G��T!@�����Z**
����&v,}(�o�ϊK�b4��rŞ�Du���m�����?�/��Z�S��IEND�B`�P�PNG


IHDR;0��@IDATx�U�k\U��ΝG2s��L����EĂ;E�E���.J��_��\��K7ō7v�b)��6kj��C��$���ܹ�s��7ܣ��A�|��8�|��9��&A�2���������G���Ϯ����h4�6��(�n\�~��K��ӳ*D_��x��a	���ׁ
��k׮}����ⰱx�ܹOL�`:L*����RJ��uLI���_��3_u�����ϯz��j������C��H��̱��k����ݷ�e��g�ck{��:�ș�r�����@�q��9'/����u�o���$I5�&IB��K))��P�\��(��0ԎA��vJ���B
iw�ΌF�33�ӵ��SJ�����<�u�p�eπ������$3o��A_�G�k��I?(Nu�]g���0��Ţ�:��d��5)̗6�3"��ur��a
`�hrr���f�/�ԫ���KӞ��H�!z�^X�T$��Kap�iI[@�h��hR�kY��U>�׫o5��R��0��FF�u����:	(��gW��5�JZ&JVf����t��\������qs�J�I���2 Jo��Ӄ�e�R��Z�q!��Œ�B8
�
	�"3����(CLRya~S2X����u��tHQTsHƨc)�
(2�1!����� ��ٔ�^%lL�+�;G����cL;����+9>�Q�8�~��ß�m��=�=̓@�
�i��V��2��G9�`8y^F~�n__l�n��zk��Aœo�0�};v;��"7m�'w���v�Ӗ�E�/�J.߿�f���V���A2^�s��s���a���>f�t�B\�V��ϋ�Z����iw������kx���W�/��f���ɸ�u�,��j� ¥�����'��[cJ MҴ�}V;y/5[��ɥH��Q���e���p�*{�o��(Nԫ'O7�/�1�R���JRa8�*SV������	o+�����ڟ��N6Ga�:��B��xF�aw���gᗍ�ٹ�+Z"`D̑�0Ⲑ�3S�b����׏�ێ�\��E�Lc)ڶ�w�B@�-��?|�Vj6�8��!�`��m�|1�0D�]�;6�\�s��k�)U��@F����pF���I�="�<^q�8�o
��Q��]�+���a�)��Բ���1�U+q��xw��=��oʴF��U,P��G�Ȋ@D4��
�vq�p�!R�jm�gff$q�8���
)�s�z[�H����;�yt�\�Ξ=[�x񢿸�X��Xd�&�Fg��x0�P��Ay�ʕ�իWGf�%��ݿr�"f�4�IEND�B`�PAD�PNG


IHDR;0���IDATx�U�k\U�s�L�}��$m&��]�fQ��(�PJ	�(�"n���.�R�(�Nܸq�F��to��6-uH�MjM'�t&�d23�q��w�K'VA����9�}�sX��H�a���" �G��\�xq�ҥK/�����	�C\׽u�ڵ_��������|�R���c �K�p�o|G�a~]�R����1�)Ւ�`�%.eL���+�d����.�6Ҷm�cI��ű�P��~��:�����'��V��l'�Ͽ�!N�Ra2��gy|����]�~��G��%���u�P'F��H�����3�j)"��r2��*2f6��f/s���7]�s�s�D�P:���C"'tbe{n��f��h��"aL��y����ss�)�Ir��J����FD�NV�l&�Q�vQ���VG�ד��eY2N�@�1����,6_)����lxc�����t:�"FG�9h�O"N"��:ЎI�y�P�]�x�C@D|��B�vV�#���v��R�_��K�1�@�D�K��%���$F�Qc	!�E�67�T��w��Ĥ�XU��18Cͥ�|�"���H:[���fv+�a��Vee�{�q�|bW��%Ƕ��+J1e
�)Z�b�/��|���m554�F�d0�n{	�SCa�8K�}��L�9VZW�����
�otT�U�&��3ݞ�6"C-ubr(�q�	f�$��jCh����Kr}=喆SڦBt��N�X����0YQ���=����׵��O�O�{�4R��a������<��FW�4����G����n��x���Ƀ/8�8R3b4�@�ri��5n��44�F�B��������/�+���z���w�h��Vs;�N:o�(�q��둦ɩ�)@�0�i	�Z�`�?3u�)�/j�֣奎��8bE�H �>w����h2"�9w6ӌZ���nޝ��^����ۓ��:�8b�@���FJ�Ē��*D��%�{�i'�k#��
�����\�����׹���}�P��jģs�u���f���:3^@I��������yr9�o����yx.A�o<��G���-�ך˞�]��9V:�����)Ťa���1|Si,��:��L�1H߃C]r�H)0��N�
mf����酅�����,���E������z�Ѣ��s8���[������rH��O���g�AB`L�����"�7
�k�P(������9���%�S�7���R�Q�	#�'��˱�Y,i���|b="G��o���0��Yĺ��zsѠ�r�.�nlxX�V%$��R����#0��6�h�%�ݮ��Ņ�._�<x�����6Qz�4MLL0��u�" �Lߋ�+W֨D��}��)��/�ّ��IEND�B`�P�PNG


IHDR;0��8IDATx���OQ���T�DQ�
�Đx��݋'/���� �=h4��CT0-��e+]HkK��}���6M��Řx�`�߫�4�8-`h8��v�7�oy�ި!��@�_�o�j"8���
��"
S�ە�1��=���f��m�=�h�nG�||IJ�����v�[�d�V��s�t�X$ ���m@+��qqh�����rQ���������^��f�Sb5��7Y�)��o�r�
���ż0�{���У\��Fl�X��b�'�fr�@/�����4S����Ĺʬ0,I$�H*YT$�Ȓ7F�M҉�(^����,[L�J���e�*T��r�4{

J=O��z�<<�]2��b��d����EA��d�d�٪�b���:Q^�ċ����*��
?��t:M��d�T*U9�Pz������(�~��8�~�/,�b1B�������419�5�z����[^j������s������zȡ�Q|8���+�i>=a�{�Ң�B�b~����Lؼ�O6�j-$���X�+��`zm���%������mVw��.�s�Na��{�b
�<��?�^s\�@Y���4�B)���{13)G�Z\�dr�{�K z77�穜Nj(=�?��4ʠ��>�6�|��'�w�3
9��Ä�ͦ9'��(Ѕe��R�l�K&��`�u�z1ukrr)�o��Ø�^�=�b�Z����2>}2~�2<?��.�y'w'��뱬8a�m�ޞ.e��ҷ����K�Z�P�4:I"� �8�F����b��}��Z"��u�!IEND�B`�PAD�PNG


IHDR;0���IDATx�Vmk#U�;�L'�4I��t�
��[�v�O
�DX� q-V�-�V?��~� ��edյ��n��5��L2o���	�zM	B=�˹�����s΄i�X����࿘p@�ᐓ�j�:���v�P(�-	.�|���������)�Az��b�ėE<55�:���� }���.�v
�x	��1Y�K7����!0�5���t���m�>�1�.-�B����ݷ��(�B��Ox��*�'Iu�u�o���0�΂ �cZ�osεD"1Ny��q��n\�<����[���*D|溮��R).�0MS��
p)�bH�:���o�����ag��V���L2�$�J9�OB�'N"��<��1�m�����.�sȦ
��aOp�q<˲8,�/B�9�"Vӏ7T�p��������l�,���</�PL��ʝ��|�LƢ�5i��f���ϛZi����3U�$��v�Z��ޛ��Z���v��@��#���|Ѷ-ZڐA�f�4��V�K�O���zQ6�W0ڪ�b��4�l��$�t�H@�n`�J�J(�0����L&�t:������q�lY�����y�j6}zg���G��
�09Y��N`-�8��Q��n�����)LK��P%�I�(�_%�ޗ���cz���X��Si��GO��kS��.�dU[����N��r-����/��j��.�̔�R|Tk7~߭����([X(]Gz��X�q�Q��g��0l��Y���)��#q�Rɔ�9�V�w~;;���A�i����
j)C`�E6���K�#�1M"T�@%�[��W�{���|tm)SZ,g���Vs���D4��h�	k�Ӟm����P;a�'
2ћFK�[�>u|�]�v����r?��]�@ ��\ {������
�s�/�V��ٓ'��x����"tq""��|HV8U3C专2��C�뤒� 9U�o����`t��6�����=�3$r(SA�U;�?p�"���K�0Y����(�g��\��� I=��q����s ��P�#u 2t�y��rn3zW���8�T��N��9԰\.���0���kA�'��*1�XRI�a�޽�h���	�X<�\�_� ���X��HC/��u���hoi��$�677����J�R��g �R�T�X�@���E�%d�-�����4VN�YIEND�B`�P�PNG


IHDR;0��IDATx�U]h[U?�&m�|5I�t�V˺��|qLE"CqN:A�׽�m/C��� >苾�2�Guʶ�ɾ*�[疵K�4��n�{�����y�56�~��sO��}9�1���@���mP���:�8�:q�Ė�'ON��7���@�պp�ܹk333wI����t�P(���;�Ϟ&�����gIx��`-��=}Lp�?�\B�Ǟ
,�a
�o�/U�[
��X
��"n�
�~����{�:*:@�h_�yz��F���ʝכ��>!dU*�/�Dt8��u3����L�T����J���Ю�h����ض�)Ā�Ѩ�+4�8�z`���ݭ�<�����FC��f��@kh�*"6�N�&	+�ڬRJ���פ��"9�Rq�i1�5C�U�\n��q%xMT���QZ!�R$l�X��Dg/�:b{R)k�u�uD�0�`��lnu��JhV[k0�.؍&[���Ȼ>�:�t�>1X\�u�0�<���|$�����l�Ç�<����t>�E�dO�
-����r�V��u&�y��%�f/-�o4G�i��B^ֶ��%]D"�hYV�u]����Y�R�
�R)�N��R)f<6З.��^]��d��q!�Q�q�R�F�ͺ�8a}}�J_�c	p��By�U&c5әp4�]Pİ�p�c�U
��}DHv���i�4ݻGyzz������u�T���|�8��xr$���ک�A�o��|$���W���b���S��x��/�^�r���ȤR���xu�փ�t\9��
�T�wv~�̍�����%S�x@�_[	.}J�aT�Y�r�	�8�B�a�
�Dpd*X�i%�I���o���?/.^�^�`b">Vܚ��������fhh����h�л��a�s��QpL#N���W^�]��w��ڇ���3�35N�>���a0��ce"�P���q�a2T=V�.q�H��׺�Y��҅��=�N�Hn��#pރp{ttTd�Y�]�T�4����>*2��2#Na'q��>tc1����?�w���"���v,�\NЄb=��0L=��n�!"��Tp�v�>��<s���x�>D��sa��Y�5�o�=����Aa�N�q���ak�ucuV�A�����;�#�̈́kݡvY �48��#��yB&��!�
Ϛڪ��
�^@��8BIy�J��(䈈�|
1�!�	W�Uodd���.���mS��
�m&:@����Ǐ��:ujxjj*O� @d97-�T�O���Ҧ鶳g����h4�IEND�B`�P<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta charset="utf-8">
    <link rel="stylesheet" type="text/css" href="res://edgehtml.dll/ErrorPageStyles.css">
</head>
<body>
    <div id="Wrapper">
        <div id="PDFError_MF">
            <table>
                <tbody>
                    <tr>
                        <td>
                            <h1>Something is missing</h1>
                            <p>To view a PDF, you need some media functionality that you don’t currently have. You can install the Media Feature Pack to view this PDF.</p>
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</body>
</html><!--VS->Advanced->FormatDocument-->
<html lang="en"><head><title>載入 PDF 時發生錯誤</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><style>@font-face {font-family: "Browser MDL2 Assets";src: url('ms-appx-web:///Assets/Fonts/BrowserMDL.ttf') format('truetype');}.outer{display: table; position: absolute; height: 100%%; width: 100%%;}.middle{display: table-cell; vertical-align: middle;}.inner{ margin-left: auto; margin-right: auto; max-width: 684px; padding-bottom: 40px;}h1, p, body, #ex{text-align:center; -ms-user-select: none; cursor: default;}body{background-color:#E6E6E6; margin:0;}#but{position: relative; background-color: #0078d7; color: white; padding: 8px 16px; text-align: center; text-decoration: none; display: inline-block; font-size: 14px; cursor: pointer; border: 1px solid #0078d7; font-family: Segoe UI; margin: 1px;}#but:hover{border:1px solid black;}#but:focus{border:1px solid black;}#but:active{background-color:gray;} #icon{width: 248px; height: 248px; display: inline-block;font: normal normal 64px/1 "Browser MDL2 Assets";line-height: 248px;font-size:200px;} #ex{margin-top: 24px; width: 200px; height: 200px; display: inline-block; border: solid 1px gray; border-radius:100px; line-height:200px; font-size:150px; font-family:「Segoe UI SemiLight」,「Segoe UI」; text-shadow: #000 0px 0px 3px; color:#E6E6E6; display:inline-block;}@media only screen and (max-height: 450px){#icon{display: none;}}#ht{margin-top: 4px; font-family: Segoe UI; font-size: 34px; font-weight: lighter; margin-bottom: 0px;}#bt{margin-top: 10px; font-family: Segoe UI; font-size: 15px; margin-bottom: 28px;}.inner #empty, #corrupt, #download, #unsupported, #generic, #mfnotfound{display: none;}#%s{display:block !important;}#ps{margin-top: 28px;display:inline-block;color:#0078d7;font-family:Segoe UI;}#ps:hover{color:#9C9C9C;}#ps:active{color:#6D6D6D;}</style></head><body> <div class="outer"><div class="middle"><div class="inner">
<div id="empty" tabindex="0" aria-label="PDF document is empty"><div id="icon" role="presentation">&#63305;</div><p id="ht">在這裡沒有東西可看</p><p id="bt">糟糕!看來此 PDF 是空的。</p></div>
<div id="corrupt" tabindex="0" aria-label="PDF document is corrupted"><div id="icon" role="presentation">&#63306;</div><p id="ht">此 PDF 已損毀</p><p id="bt">我們無法打開此項目。</p></div>
<div id="download" tabindex="0" aria-label="PDF document failed to download"><div id="icon" role="presentation">&#63307;</div><p id="ht">發生未預期的問題...</p><p id="bt">無法打開此 PDF。請嘗試重新整理此頁面,或選擇其他檔案。</p></div>
<div id="unsupported" tabindex="0" aria-label="PDF document is not supported"><div id="icon" role="presentation">&#63309;</div><p id="ht">此 PDF 不受支援</p><p id="bt">我們無法打開此項目。</p></div>
<div id="generic" tabindex="0" aria-label="PDF document has failed to load"><div id="icon" role="presentation">&#63309;</div><p id="ht">在這裡沒有東西可看</p><p id="bt">糟糕!此 PDF 似乎發生問題。</p></div>
<div id="mfnotfound" tabindex="0" aria-label="PDF document needs Media Feature Pack to open"><div id="icon" role="presentation">&#63309;</div><p id="ht">遺失某些項目</p><p id="bt">若要檢視 PDF,您需要一些目前沒有的媒體功能。您可以安裝「媒體功能套件」以檢視此 PDF。</p></div>
<a href="Feedback-Hub:?newFeedback=True&feedbackType=Problem&ContextId=455&SessionId=%llu"><div id="but">報告問題</div></a><br/>
<a href="https://privacy.microsoft.com/privacystatement" target="_blank" id="ps">Privacy statement</a>
</div></div></div></body></html>PA<!doctype html>
<html dir="ltr">
  <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta charset="UTF-8"/>
    <style type="text/css">
      .hidden {
          display: none !important;
      }

      body {
          margin: 0px;
          padding: 0px;
      }

      .gripper {
          text-align: center;
          -ms-user-select: none;
          -ms-touch-action: none;
          cursor: move;
          color: #999;
          font-family: "Microsoft JhengHei UI";
          font-size: 14px;
      }

      /* overview */

      #overview {
          box-sizing: border-box;
          width: 283px;
          height: 128px;
          margin: 6px;
          border: solid 1px #AAA;
          display: -ms-grid;
          -ms-grid-columns: (70px)[4];
          -ms-grid-rows: 14px 70px 38px;
      }

      #overview .gripper {
          -ms-grid-row: 1;
          -ms-grid-column: 1;
          -ms-grid-column-span: 4;
      }

      #overview .metric {
          -ms-grid-row: 2;
          font-family: "Microsoft JhengHei UI";
          font-weight: 500;
          -ms-user-select: none;
      }

      #overview .metric.box {
          box-sizing: border-box;
          width: 69px;
          height: 69px;
          margin: 1px;
      }

      #overview .metric.bar {
          box-sizing: border-box;
          height: 38px;
          line-height: 38px;
          cursor: default;
      }

      #overview a {
          display: inline-block;
          cursor: pointer;
          border: 1px solid white; /* invisible border to prevent pixel-shifting */
      }

      #overview .headline {
          font-size: 16pt;
          text-align: center;
          padding-bottom: 3px;
      }

      #overview .inline {
          font-size: 9pt;
      }

      #overview .unit {
          font-size: 9pt;
          text-align: center;
      }

      #overview #paintTime {
          -ms-grid-column: 1;
      }

      #overview #paintTime:hover {
          border: 1px solid rgb(77, 166, 12);
          background: rgb(219, 237, 206);
      }

      #overview #paintTime:active {
          border: 1px solid rgb(77, 166, 12);
          background: rgb(77, 166, 12);
      }

      #overview #frameRate {
          -ms-grid-column: 2;
      }

      #overview #frameRate:hover {
          border: 1px solid rgb(167, 79, 1);
          background: rgb(238, 222, 207);
      }

      #overview #frameRate:active {
          border: 1px solid rgb(167, 79, 1);
          background: rgb(224, 130, 47);
      }

      #overview #memory {
          -ms-grid-column: 3;
      }

      #overview #memory:hover {
          border: 1px solid rgb(139, 18, 174);
          background: rgb(236, 222, 240);
      }

      #overview #memory:active {
          border: 1px solid rgb(139, 18, 174);
          background: rgb(129, 114, 133);
      }

      #overview #cpu {
          -ms-grid-column: 4;
      }

      #overview #cpu:hover {
          border: 1px solid rgb(17, 125, 187);
          background: rgb(217, 234, 244);
      }

      #overview #cpu:active {
          border: 1px solid rgb(17, 128, 187);
          background: rgb(51, 134, 181);
      }

      #overview #network {
          text-align: center;
          -ms-grid-row: 3;
          -ms-grid-column: 1;
          -ms-grid-column-span: 4;
      }

      #overview .forwardButton {
          -ms-grid-column: 4;
          -ms-grid-row: 3;
          -ms-grid-column-align: end;
          -ms-grid-row-align: end;
          color: #999;
          cursor: pointer;
      }

      /* extraOverview */

      #extraOverview {
          box-sizing: border-box;
          width: 283px;
          height: 278px;
          margin: 6px;
          padding-left: 15px;
          padding-right: 15px;
          border: solid 1px #AAA;
          display: -ms-grid;
          -ms-grid-columns: 100%;
          -ms-grid-rows: 14px (25px)[10];
          font-family: "Microsoft JhengHei UI";
      }

      #extraOverview .gripper {
          -ms-grid-column: 1;
          -ms-grid-row: 1;
      }

      #extraOverview .backButton {
          -ms-grid-column: 1;
          -ms-grid-row: 11;
          -ms-grid-column-align: end;
          -ms-grid-row-align: end;
          color: #999;
          cursor: pointer;
      }

      #extraOverview #irStatus {
          text-align: left;
          -ms-grid-row: 2;
          -ms-grid-column: 1;
          cursor: pointer;
      }

      /* details */

      #details {
          box-sizing: border-box;
          border: solid 1px #AAA;
          width: 283px;
          height: 278px;
          margin: 6px;
          padding-left: 15px;
          padding-right: 15px;
          display: -ms-grid;
          -ms-grid-columns: 80% 20%;
          -ms-grid-rows: 14px 30px 14px 164px 14px;
          font-family: "Microsoft JhengHei UI";
      }

      #details .gripper {
          -ms-grid-column: 1;
          -ms-grid-row: 1;
          -ms-grid-column-span: 2;
      }

      #details .label {
          -ms-user-select: none;
          cursor: default;
      }

      #details .headline {
          -ms-grid-column: 1;
          -ms-grid-row: 2;
          font-size: 16pt;
      }

      #details .value {
          -ms-grid-column: 2;
          -ms-grid-row: 2;
          -ms-grid-column-align: end;
          font-size: 16pt;
      }

      #details .description {
          -ms-grid-column: 1;
          -ms-grid-row: 3;
          font-size: 9pt;
          color: #777;
      }

      #details .y-max {
          -ms-grid-column: 2;
          -ms-grid-row: 3;
          -ms-grid-column-align: end;
          font-size: 9pt;
          color: #777;
      }

      #details .x-min {
          -ms-grid-column: 1;
          -ms-grid-row: 5;
          font-size: 9pt;
          color: #777;
      }

      #details .y-min {
          -ms-grid-column: 2;
          -ms-grid-row: 5;
          -ms-grid-column-align: end;
          font-size: 9pt;
          color: #777;
      }

      #details #graphContainer {
          -ms-grid-column: 1;
          -ms-grid-column-span: 2;
          -ms-grid-row: 4;
          /* width: 100%; */
          width: 250px;
          height: 160px;
          margin-top: 4px;
          cursor: pointer;
      }

      #details #graph #memory {
          display: none;
      }

      #details #graph line.border.horizontal {
          stroke-width: 3;
      }

      #details #graph line.border.vertical {
          stroke-width: 3;
      }

      #details #graph line.grid.horizontal {
          stroke-width: 2;
      }

      #details #graph line.grid.vertical {
          stroke-width: 2;
      }

      /* memory graph */
      #details.memory #graph #memory {
          display: block;
      }

      #details #graph #memory polygon#graphData {
          fill: rgba(129, 114, 133, 0.1);
          stroke: rgb(149, 40, 180);
          stroke-width: 4;
      }

      #details.memory #graph #lines line.border {
          stroke: rgb(139, 18, 174);
      }

      #details.memory #graph #lines line.grid {
          stroke: rgb(236, 222, 240);
      }

      /* paintTime graph */
      #details.paintTime #graph #paintTime {
          display: block;
      }

      #details.paintTime #graph #lines line.border {
          stroke: rgb(77, 166, 12);
      }

      #details.paintTime #graph #lines line.grid {
          stroke: rgb(219, 237, 206);
      }

      #details.paintTime #graph #paintTime #graphData line {
          stroke: rgb(77, 166, 12);
          stroke-width: 4;
      }

      /* frameRate graph */
      #details.frameRate #graph #frameRate {
          display: block;
      }

      #details.frameRate #graph #lines line.border {
          stroke: rgb(167, 79, 1);
      }

      #details.frameRate #graph #lines line.grid {
          stroke: rgb(238, 222, 207);
      }

      #details.frameRate #graph #frameRate #graphData rect {
          fill: rgba(224, 130, 47, 0.5);
          stroke: rgb(167, 79, 1);
          stroke-width: 1;
      }

      /* cpu graph */
      #details.cpu #graph #cpu {
          display: block;
      }

      #details.cpu #graph #lines line.border {
          stroke: rgb(17, 125, 187);
      }

      #details.cpu #graph #lines line.grid {
          stroke: rgb(217, 234, 244);
      }

      #details.cpu #graph #graphData rect.kind0 {
          fill: rgba(129, 114, 133, 0.5);
      }

      #details.cpu #graph #graphData rect.kind1 {
          fill: rgba(224, 130, 47, 0.5);
      }

      #details.cpu #graph #graphData rect.kind2 {
          fill: rgba(77, 166, 12, 0.5);
      }

      #details.cpu #graph #graphData rect.kindTotal {
          fill: rgba(51, 134, 181, 0.5);
      }

      /* extraDetails */

      #extraDetails {
          box-sizing: border-box;
          width: 283px;
          height: 278px;
          margin: 6px;
          border: solid 1px #AAA;
          padding-left: 15px;
          padding-right: 15px;
          display: -ms-grid;
          -ms-grid-columns: 100%;
          -ms-grid-rows: 14px 35px 25px;
          font-family: "Microsoft JhengHei UI";
          cursor: pointer;
      }

      #extraDetails .gripper {
          -ms-grid-column: 1;
          -ms-grid-row: 1;
      }

      #extraDetails #irEnabled {
          text-align: left;
          -ms-grid-row: 2;
          -ms-grid-column: 1;
          font-size: 14pt;
      }

      #extraDetails #irDisablingContent {
          text-align: left;
          -ms-grid-row: 3;
          -ms-grid-column: 1;
          font-size: 10pt;
      }


      /* paint time graph */

    </style>
    <!-- <script type="text/javascript" src="external.js"></script> -->
    <script type="text/javascript">
      var string_percent = "";
      var string_zeroPercent = "";

      var maxCpuSpeed = null;

      var panes = {
          svg: null,

          /*
           common properties set in initializer:
            - yMax/yMin
            - value
           */

          cpu: {
              overview: null,
              graph: null,
              graphElement: null,
              timer: updateCpuGraph,
              period: 1000,
              dataRetention: 60000,
              data: [],
              last: null,
              lastTotal: null,
              lastTime: null
          },

          memory: {
              overview: null,
              graph: null,
              graphElement: null,
              timer: updateMemoryGraph,
              period: 1000,
              dataRetention: 60000,
              data: [],
              last: null
          },

          paintTime: {
              overview: null,
              graph: null,
              graphElement: null,
              timer: updatePaintTimeGraph,
              period: 100,
              dataRetention: 6 * external.performanceCounterFrequency, //6 seconds
              data: [],
              last: null
          },

          frameRate: {
              overview: null,
              graph: null,
              graphElement: null,
              timer: updateFrameRateGraph,
              period: 1000,
              start: null,
              dataRetention: 2 * external.performanceCounterFrequency, //pruned manually really
              data: [],
              last: null,
              buckets: {},
              firstBucketTime: null,
              lastBucketTime: null
          },

          network: {
              overview: null,
              data: {
                  activeRequests: { }
              }
          },

          irEnabled: {
              overview: null
          },

          irDisablingContent: {
              overview: null
          }
      };

      var overviewTimer = null;
      var paneTimer = null;
      var extraDetailsTimer = null;

      /* overview functions */

      function getCurrentMemoryUsageString() {
          var memory = external.getMemoryUsage() / 1048576; //MB
          return memory.toFixed(1);
      }

      function getCurrentCpuUsageString() {
          if(maxCpuSpeed == null)
              return "N/A";

          var cpuUsageDelta = 0;
          var prevTime = panes.cpu.lastTime;
          var now = new Date().getTime();
          var cpuUsage = external.getProcessCpuUsage();
          if(panes.cpu.lastTotal !== null) {              
              cpuUsageDelta = cpuUsage - panes.cpu.lastTotal;
          }
          panes.cpu.lastTotal = cpuUsage;      
          panes.cpu.lastTime = now;

          var deltaT = (now - prevTime) / 1000;

          if(prevTime === null)
              return string_zeroPercent;

          return (cpuUsageDelta / (external.maxCpuSpeed * deltaT / 100)).toFixed(0) + string_percent; //MHz
      }

      function getCurrentPaintTimeString() {
          var paintTime = external.averagePaintTime;
          return isNaN(paintTime) ? "-" : paintTime.toFixed(1);
      }

      function getCurrentFrameRateString() {
          var frameTime = external.averageFrameTime;
          if(isNaN(frameTime) || frameTime < (1000 / 60))
              return 60;

          return (1000 / frameTime).toFixed(0);
      }

      function getIREnabledString() {
          var IRAvailable = external.irStatusAvailable;
          var IREnabled = external.independentRenderingEnabled;
          return (IRAvailable ? (IREnabled ? "On" : "Off") : "-");
      }
      
      function getIRDisablingContentString() {
          var IREnabled = external.independentRenderingEnabled;
          var IRDisablingContent;
          if (!IREnabled) {
              IRDisablingContent = external.irDisablingContentString;
          }
          return (IREnabled ? "" : ("" + IRDisablingContent));
      }

      function updateOverview() {
          panes.memory.overview.innerText = getCurrentMemoryUsageString();
          panes.paintTime.overview.innerText = getCurrentPaintTimeString();
          panes.frameRate.overview.innerText = getCurrentFrameRateString();
          panes.cpu.overview.innerText = getCurrentCpuUsageString();
          panes.network.overview.innerText = external.activeNetworkRequestCount;
      }

      function showOverview() {
          EnsureCorrectExtraOverviewButton();

          overviewTimer = setInterval(updateOverview, 1000);
          document.getElementById("overview").classList.remove("hidden");
          external.resizeWindow(295, 140);
      }

      function hideOverview() {
          clearInterval(overviewTimer);
          overviewTimer = null;
          document.getElementById("overview").classList.add("hidden");
      }

      function makeGridlines() {
          var g = document.getElementById("lines");

          for(var i = 1; i < 10; ++i) {
              var line = document.createElementNS("http://www.w3.org/2000/svg", "line");
              line.setAttribute("x1", 0);
              line.setAttribute("y1", gHeight * i / 10);
              line.setAttribute("x2", gWidth);
              line.setAttribute("y2", gHeight * i / 10);
              line.setAttribute("class", "grid horizontal");
              g.appendChild(line);
          }

          for(var i = 1; i < 6; ++i) {
              var line = document.createElementNS("http://www.w3.org/2000/svg", "line");
              line.setAttribute("x1", gWidth * i / 6);
              line.setAttribute("y1", 0);
              line.setAttribute("x2", gWidth * i / 6);
              line.setAttribute("y2", gHeight);
              line.setAttribute("class", "grid vertical");
              g.appendChild(line);
          }

          var borders = [
              [0, 0, 0, gHeight, "vertical"], //left
              [0, 0, gWidth, 0, "horizontal"], //top
              [gWidth, 0, gWidth, gHeight, "vertical"], //right
              [0, gHeight, gWidth, gHeight, "horizontal"] ]; //bottom

          for(var i = 0; i < 4; ++i) {
              var border = document.createElementNS("http://www.w3.org/2000/svg", "line");
              border.setAttribute("x1", borders[i][0]);
              border.setAttribute("y1", borders[i][1]);
              border.setAttribute("x2", borders[i][2]);
              border.setAttribute("y2", borders[i][3]);
              border.setAttribute("class", "border " + borders[i][4]);
              g.appendChild(border);
          }
      }

      function showDetailsAndStart(paneId) {
          var labels = document.querySelectorAll("#details>.label " + "." + paneId);
          for(var i = 0; i < labels.length; ++i) {
              labels[i].classList.remove("hidden");
          }
          
          document.querySelector("#details #graph #" + paneId).className.baseVal = "";

          external.resizeWindow(295, 290);

          document.getElementById("details").classList.add(paneId);
          document.getElementById("details").classList.remove("hidden");

          var paneInfo = panes[paneId];
          paneInfo.timer(paneInfo);
          paneTimer = setInterval(function() { paneInfo.timer(paneInfo) }, paneInfo.period);
      }

      function hideDetailsAndStop(paneId) {
          document.querySelector("#details #graph #" + paneId).className.baseVal = "hidden";
          
          var labels = document.querySelectorAll("#details>.label " + "." + paneId);
          for(var i = 0; i < labels.length; ++i) {
              labels[i].classList.add("hidden");
          }

          document.getElementById("details").classList.add("hidden");
          document.getElementById("details").classList.remove(paneId);

          var paneInfo = panes[paneId];
          clearInterval(paneTimer);
          paneTimer = null;
          updateOverview();
      }

      var gCurrentDetails = null;
      function showDetails(id) {
          gCurrentDetails = id;
          hideOverview();
          showDetailsAndStart(id);

          return false;
      }

      function hideDetails() {
          hideDetailsAndStop(gCurrentDetails);
          gCurrentDetails = null;

          showOverview();

          return false;
      }

      function showExtraDetails() {
          extraDetailsTimer = setInterval(updateExtraDetails, 1000);
          hideExtraOverview();
          document.getElementById("extraDetails").classList.remove("hidden");
      }

      function hideExtraDetails() {
          clearInterval(extraDetailsTimer);
          extraDetailsTimer = null;
          document.getElementById("extraDetails").classList.add("hidden");
          showExtraOverview();
      }

      function showExtraOverview() {
          hideOverview();
          external.resizeWindow(300, 290);
          document.getElementById("extraOverview").classList.remove("hidden");
      }

      function hideExtraOverview() {
          document.getElementById("extraOverview").classList.add("hidden");
      }

      function backToOverview() {
          hideExtraOverview();
          showOverview();
      }

      function EnsureCorrectExtraOverviewButton() {
          if (external.extraInformationEnabled) {
              document.getElementById("buttonExtraOverview").classList.remove("hidden");
          }
          else {
              document.getElementById("buttonExtraOverview").classList.add("hidden");
          }
      }

      function handlePaneKey(id, event) {
          if(event.keyCode === 13 || //enter & space
             event.keyCode === 32)
          {
              showDetails(id);
              setTimeout(function() {
                      document.querySelector("#details #graphContainer").focus();
                  }, 0);
              return true;
          }

          return false;
      }

      function handleGraphKey(event) {
          if(event.keyCode === 13 || //enter & space
             event.keyCode === 32)
          {
              var id = gCurrentDetails;
              hideDetails();
              setTimeout(function() {
                      document.querySelector("#overview #" + id).focus();
                  }, 0);
              return true;
          }

          return false;
      }

      function loadStrings() {
          string_percent = document.getElementById("_loc_percent").innerText;
          string_zeroPercent = document.getElementById("_loc_zeroPercent").innerText;
      }

      function go() {
          if(typeof _testing !== "undefined") {
              external = external;
              external._start();
          }

          try {
              maxCpuSpeed = external.maxCpuSpeed;
              mhzIntervals = [0, maxCpuSpeed / 4, maxCpuSpeed / 2, maxCpuSpeed, maxCpuSpeed * 2, maxCpuSpeed * 4, maxCpuSpeed * 6, maxCpuSpeed * 8];
          } catch(x) {
              maxCpuSpeed = null;
          }

          loadStrings();

          EnsureCorrectExtraOverviewButton();

          makeGridlines();

          panes.svg = document.querySelector("#details svg");
          
          var ids = [ "memory", "cpu", "network", "paintTime", "frameRate" ];
          ids.forEach(function(id) {
              panes[id].overview = document.querySelector("#overview #" + id + " .value");
              if("graph" in panes[id]) {
                  panes[id].graph = document.querySelector("#details svg g#" + id);
                  panes[id].graphElement = document.querySelector("#details svg g#" + id + " #graphData");
              }

              panes[id].value = document.querySelector("#details .value ." + id);
              panes[id].yMax = document.querySelector("#details .y-max ." + id);
              panes[id].yMin = document.querySelector("#details .y-min ." + id);
          });

          var extraids = ["irEnabled", "irDisablingContent"];
          extraids.forEach(function (id) {
              panes[id].overview = document.querySelector("#extraDetails #" + id + " .value");
          });

          external.addEventListener("networkRequestInitiated", function(id) { onNetworkRequestInitiated(panes.network, id); });
          external.addEventListener("networkRequestCompleted", function(id) { onNetworkRequestCompleted(panes.network, id); });

          showOverview();
      }

      /* graph functions */

      var gWidth = 500;
      var gHeight = 320;

      var MB = 1048576; //constant
      var mbIntervals = [0, 10 * MB, 20 * MB, 40 * MB, 80 * MB, 100 * MB, 200 * MB, 400 * MB, 800 * MB, 1000 * MB, 2000 * MB, 4000 * MB, 8000 * MB];

      var mhzIntervals = null;

      function _min(min, range, d) {
          for(var i = 1; i < range.length; ++i)
              if(min < range[i])
                  return range[i - 1];

          return d;
      }

      function _max(max, range, d) {
          for(var i = 0; i < range.length; ++i)
              if(max < range[i])
                  return range[i];

          return d;
      }

      function _createPoint() {
          return panes.svg.createSVGPoint();
      }

      function _updateData(info, f, m) {
          var newData = f(info.last);

          if(newData.length === 0)
              return false;

          if(!m)
              m = function(d) { return d; }

          var now = newData[newData.length - 1][0];
          info.last = now;
          
          for(var i = 0; i < newData.length; ++i)
              info.data.push(m(newData[i]));

          while(info.data.length > 0) {
              if(info.data[0][0] < (now - info.dataRetention)) {
                  if(info.data.length > 1 && info.data[1][0] < (now - info.dataRetention)) {
                      info.data.shift();
                  } else {
                      break;
                  }
              } else {
                  break;
              }
          }

          return now;
      }

      /*
         Note: the following functions draw the graphs. It would probably be better to manipulate the
           graphs with transform math (instead of effectively re-rendering the entire graph). However,
           strokes don't play nice with transforms. For example, say you rescale a graph to have a higher
           maximum via "scale(1, 2)", then all strokes will be 2x as tall as they are wide, which looks
           aesthetically terrible. This can be mitigated by using "vector-effect: non-scaling-stroke".
           Unfortunately, that isn't supported in IE11, so we're back to re-rendering the graphs.
       */

      function updateMemoryGraph(info) {
          info.value.innerText = getCurrentMemoryUsageString();

          var now = _updateData(info, external.getRecentMemoryUsage.bind(external));
          if(!now)
              return;

          function xUnits(t) {
              //viewbox is 60 seconds wide (t * gWidth / 60000)
              return gWidth - ((now - t) * gWidth / 60000); 
          }

          function yUnits(m) {
              return gHeight - ((m - min) * gHeight / (max - min));
          }

          var min = null;
          var max = null;
          for(var i = 0; i < info.data.length; ++i) {
              if(min === null || info.data[i][1] < min)
                  min = info.data[i][1];
              if(max === null || info.data[i][1] > max)
                  max = info.data[i][1];
          }

          //min = _min(min, mbIntervals, 0);
          max = _max(max, mbIntervals, 10000 * MB);
          min = min > (max / 2) ? (max / 2) : 0;

          var points = info.graphElement.points;
          points.clear();

          if(xUnits(info.data[0][0]) > 0) {
              var pt = _createPoint();
              pt.x = xUnits(info.data[0][0]);
              pt.y = yUnits(info.data[0][1]);
              points.appendItem(pt);
          }
          
          for(var i = 1; i < info.data.length; ++i) {
              var pt = _createPoint();
              pt.x = xUnits(info.data[i][0]);
              pt.y = yUnits(info.data[i][1]);
              points.appendItem(pt);
          }

          //set the bottom right
          var ptBr = _createPoint();
          ptBr.x = xUnits(now);
          ptBr.y = yUnits(min);
          points.appendItem(ptBr);

          var leftEdge = xUnits(info.data[0][0]);
          if(leftEdge < 0)
              leftEdge = 0;

          //set the bottom left
          var ptBl = _createPoint();
          ptBl.x = leftEdge;
          ptBl.y = yUnits(min);
          points.appendItem(ptBl);

          //set the left point
          var ptL = _createPoint();
          ptL.x = leftEdge;
          ptL.y = yUnits(info.data[0][1]);
          points.appendItem(ptL);
          
          info.yMax.textContent = max / MB;
          info.yMin.textContent = min / MB;
      }

      function updateCpuGraph(info) {
          if(maxCpuSpeed == null)
              return;

          info.value.innerText = getCurrentCpuUsageString();

          //data is [ticks, processUsage, [threadUsage, type, id]+ ]

          function bundle(d) {
              //bundle up each element so that the 2nd element is an object (key = id) 
              var r = [d[0], d[1], {}];

              for(var i = 2; i < d.length; ++i)
                  r[2][d[i][2]] = [d[i][0], d[i][1]];

              return r;
          }

          //data is [ticks, processUsage, {id: [threadUsage, type] }
          
          var now = _updateData(info, external.getRecentCpuUsage.bind(external), bundle);
          if(!now)
              return;

          function xUnits(t) {
              //viewbox is 60 seconds wide (t * gWidth / 60000)
              return gWidth - ((now - t) * gWidth / 60000); 
          }

          function xDelta(dt) {
              return (dt * gWidth / 60000); 
          }

          function yUnits(c) {
              return gHeight - ((c - min) * gHeight / (max - min));
          }

          function yDelta(dc) {
              return (dc * gHeight / (max - min));
          }

          var min = null;
          var max = null;
          for(var i = 1; i < info.data.length; ++i) {
              var d = info.data[i][1] - info.data[i - 1][1];
              if(min === null || d < min)
                  min = d;
              if(max === null || d > max)
                  max = d;
          }

          min = 0;
          max = _max(max, mhzIntervals, external.maxCpuSpeed * 128);

          var g = document.createElementNS("http://www.w3.org/2000/svg", "g");
          g.setAttribute("id", "graphData");

          for(var i = 1; i < info.data.length; ++i) {
              var d = info.data[i];
              var pd = info.data[i - 1];
              var dt = d[0] - pd[0];
              var cycles = 0;
              var w = xDelta(dt);
              var x = xUnits(d[0]) - w;

              if(x < xUnits(now - 60000)) {
                  var oldX = x;
                  x = xUnits(now - 60000);
                  w = w - (x - oldX);
              }

              for(var threadId in d[2]) {
                  var threadData = d[2][threadId];
                  var deltaCycles = 0;
                  if(threadId in pd[2]) {
                      var prevThreadData = pd[2][threadId];
                      deltaCycles += (threadData[0] - prevThreadData[0]);
                  }
                  
                  if(deltaCycles > 0) {
                      var r = document.createElementNS("http://www.w3.org/2000/svg", "rect");
                      var h = yDelta(deltaCycles);
                      r.setAttribute("x", x);
                      r.setAttribute("y", yUnits(cycles) - h);
                      r.setAttribute("width", w);
                      r.setAttribute("height", h);
                      r.setAttribute("class", "kind" + threadData[1]);
                      
                      cycles += deltaCycles;

                      g.appendChild(r);
                  }
              }

              var deltaCycles = d[1] - pd[1] - cycles;
              var r = document.createElementNS("http://www.w3.org/2000/svg", "rect");
              var h = yDelta(deltaCycles);
              r.setAttribute("x", x);
              r.setAttribute("y", yUnits(cycles) - h);
              r.setAttribute("width", w);
              r.setAttribute("height", h);
              r.setAttribute("class", "kindTotal");
                            
              g.appendChild(r);
          }

          // about 5x faster to replace the <g> element instead of removing & adding children
          info.graph.removeChild(info.graphElement);
          info.graphElement = g;
          info.graph.appendChild(g);

          info.yMax.textContent = max * 100 / external.maxCpuSpeed + "%";
      }

      ////

      function updatePaintTimeGraph(info) {
          info.value.innerText = getCurrentPaintTimeString();

          //data is [ [beatStartPerfCount, beatEndPerfCount]+ ]
          
          _updateData(info, external.getRecentPaintRequests.bind(external));
          var now = external.performanceCounter;

          var duration = 6 * external.performanceCounterFrequency; // 6 seconds

          function xUnits(t) {
              return gWidth - ((now - t) * gWidth / duration); 
          }

          function yUnits(c) {
              return gHeight - ((c - min) * gHeight / (max - min));
          }

          var min = 0;
          var max = external.performanceCounterFrequency / 10; //100 ms

          var g = document.createElementNS("http://www.w3.org/2000/svg", "g");
          g.setAttribute("id", "graphData");

          for(var i = 0; i < info.data.length; ++i) {
              var beat = info.data[i];
              var x = xUnits(beat[0]);

              if(x < 0) {
                  info.data.shift();
                  --i;
                  continue;
              }

              var line = document.createElementNS("http://www.w3.org/2000/svg", "line");
              line.setAttribute("x1", x);
              line.setAttribute("y1", gHeight);
              line.setAttribute("x2", x);
              line.setAttribute("y2", Math.max(yUnits(beat[1] - beat[0]), 0));

              g.appendChild(line);
          }

          info.graph.removeChild(info.graphElement);
          info.graphElement = g;
          info.graph.appendChild(g);
      }

      ////

      function updateFrameRateGraph(info) {
          info.value.innerText = getCurrentFrameRateString();

          //raw data is [ [prevFrameStartPerfCount, currentFrameStartPerfCount]+ ]

          _updateData(info, external.getRecentFrames.bind(external));
          var now = external.performanceCounter;

          var pcf = external.performanceCounterFrequency;
          var duration = 6;

          if(info.start === null)
              info.start = parseInt(now / pcf);

          function xUnits(t) {
              return gWidth - (t * gWidth / duration); 
          }

          function xDelta(t) {
              return (t * gWidth / duration); 
          }

          function yDelta(fps) {
              return fps * gHeight / 60;
          }

          //bucket data is { bucket#: [ next#, time, frames, paintTime ] }

          function bid(b) {
              //objects don't like to be indexed by large number-like things
              return "b-" + b.toString();
          }

          // delete old buckets
          var currentBucketTime = parseInt(now / pcf);
          while(info.firstBucketTime !== null) {
              if(info.firstBucketTime < (currentBucketTime - (duration + 1))) {
                  if(info.lastBucketTime === info.firstBucketTime) {
                      info.lastBucketTime = null;
                  }

                  var bucketId = bid(info.firstBucketTime);
                  var firstBucket = info.buckets[bucketId];

                  info.firstBucketTime =
                      (firstBucket[0] !== null) ?
                      info.buckets[firstBucket[0]][1] :
                      null;
                  
                  delete info.buckets[bucketId];
              } else {
                  break;
              }
          }
          
          for(var i = 0; i < info.data.length; ++i) {
              var d = info.data[i];
              var time = parseInt(d[0] / pcf);
              var bucketId = bid(time);

              if(!(bucketId in info.buckets)) {
                  info.buckets[bucketId] = [ null, time, 0, 0 ];
                  if(info.lastBucketTime !== null)
                      info.buckets[bid(info.lastBucketTime)][0] = bucketId;
                  info.lastBucketTime = time;
                  if(info.firstBucketTime === null)
                      info.firstBucketTime = time;
              }

              var bucket = info.buckets[bucketId];
              bucket[2] += 1;
              bucket[3] += d[1] - d[0];
          }

          info.data = [];

          var g = document.createElementNS("http://www.w3.org/2000/svg", "g");
          g.setAttribute("id", "graphData");

          for(var i = 1; i < (duration + 1); ++i) {
              var bucketId = bid(currentBucketTime - i);

              var bucket = [ null, null, 0, 0 ];
              if(bucketId in info.buckets)
                  bucket = info.buckets[bucketId];

              var fps = 60;
              if((currentBucketTime - i) < info.start)
                  continue;
              if(bucket[2] > 0)
                  fps = Math.min(1 / (bucket[3] / bucket[2] / pcf), 60);

              var r = document.createElementNS("http://www.w3.org/2000/svg", "rect");
              var y = yDelta(fps);
              r.setAttribute("x", xUnits(i));
              r.setAttribute("y", gHeight - y);
              r.setAttribute("width", xDelta(1));
              r.setAttribute("height", y);

              g.appendChild(r);
          }

          info.graph.removeChild(info.graphElement);
          info.graphElement = g;
          info.graph.appendChild(g);
      }

      ////

      function updateExtraDetails() {
          panes.irEnabled.overview.innerText = getIREnabledString();
          panes.irDisablingContent.overview.innerText = getIRDisablingContentString();
      }

      ////

      function onNetworkRequestInitiated(info, requestId) {
          var now = new Date().getTime();
          info.data.activeRequests[requestId] = true;
      }

      function onNetworkRequestCompleted(info, requestId) {
          if(requestId in info.data.activeRequests) {
              delete info.data.activeRequests[requestId];
          }
      }

      //// gripper functions

      var gGripper = {
          dragging: false,
          lx: null, //last x
          ly: null //last y
      };

      function onGripperDown(e) {
          window.addEventListener("mousemove", function () { onGripperMove(event) }, true);
          gGripper.dragging = true;
          gGripper.lx = e.screenX;
          gGripper.ly = e.screenY;
      }

      function onGripperMove(e) {
          if(e.buttons === 0)
              gGripper.dragging = false;
          
          if(!gGripper.dragging)
              return;

          var dx = e.screenX - gGripper.lx;
          var dy = e.screenY - gGripper.ly;

          if(dx != 0 || dy != 0) {
              external.repositionWindow(dx, dy);
              gGripper.lx = e.screenX;
              gGripper.ly = e.screenY;
          }
      }

      function onGripperUp(e) {
          gGripper.dragging = false;
          window.removeEventListener("mousemove", function () { onGripperMove(event) }, true);
      }

      function onGripperKey(event) {
          if(event.keyCode === 37) {
              //left
              external.repositionWindow(-11, 0);
              return true;
          } else if(event.keyCode === 38) {
              //up
              external.repositionWindow(0, -11);
              return true;
          } else if(event.keyCode === 39) {
              //right
              external.repositionWindow(11, 0);
              return true;
          } else if(event.keyCode === 40) {
              //down
              external.repositionWindow(0, 11);
              return true;
          }

          return false;
      }

      ////

    </script>
  </head>
  <body onload="go()" oncontextmenu="return false;">
    <div id="overview">
      <div class="gripper" tabindex="0"
          onmousedown="onGripperDown(event)"
          onmousemove="onGripperMove(event)"
          onmouseup="onGripperUp(event)"
          onkeydown="onGripperKey(event)">
        &bullet; &bullet; &bullet;
      </div>
      <a class="metric box" id="paintTime" tabindex="0"
          onclick="showDetails(this.id)" 
          onkeypress="handlePaneKey(this.id, event)">
        <div class="headline value">
          N/A
        </div>
        <div class="unit" id=_loc_PaintTime>
          繪製時間<br/>(毫秒)
        </div>
      </a>
      <a class="metric box" id="frameRate" tabindex="0"
          onclick="showDetails(this.id)" 
          onkeypress="handlePaneKey(this.id, event)">
        <div class="headline value">
          N/A
        </div>
        <div class="unit" id=_loc_FrameRate>
          畫面播放速率<br/>(FPS)
        </div>
      </a>
      <a class="metric box" id="memory" tabindex="0"
          onclick="showDetails(this.id)" 
          onkeypress="handlePaneKey(this.id, event)">
        <div class="headline value">
          N/A
        </div>
        <div class="unit" id=_loc_Memory>
          記憶體<br/>(MB)
        </div>
      </a>
      <a class="metric box" id="cpu" tabindex="0"
          onclick="showDetails(this.id)" 
          onkeypress="handlePaneKey(this.id, event)">
        <div class="headline value">
          N/A
        </div>
        <div class="unit" id=_loc_CPU>
          CPU<br/>(%)
        </div>
      </a>
      <div class="metric bar" id="network">
        <span class="inline value">
          N/A
        </span>
        <span class="unit" id=_loc_NetworkRequests>
          網路要求
        </span>
      </div>
      <div class="forwardButton hidden" id="buttonExtraOverview" onclick="showExtraOverview()">
        &#x2217;
      </div>
    </div>
    
    <div id="extraOverview" class="hidden">
      <div class="gripper" onmousedown="onGripperDown(event)" onmousemove="onGripperMove(event)" onmouseup="onGripperUp(event)">
        &bullet; &bullet; &bullet;
      </div>
      <div class="metric bar" id="irStatus" onclick="showExtraDetails()">
        <span class="unit" id=_loc_IRStatus>
          獨立式轉譯狀態
        </span>
      </div>
      <div class="backButton" onclick="backToOverview()">
        &#x2217;
      </div>
     </div>


    <div id="details" class="hidden">
      <div class="gripper" tabindex="0"
          onmousedown="onGripperDown(event)"
          onmousemove="onGripperMove(event)"
          onmouseup="onGripperUp(event)"
          onkeydown="onGripperKey(event)">
        &bullet; &bullet; &bullet;
      </div>
      <div class="headline label">
        <span class="cpu hidden" id=_loc_CPU>CPU</span>
        <span class="memory hidden" id=_loc_Memory>Memory</span>
        <span class="frameRate hidden" id=_loc_FrameRate>Frame Rate</span>
        <span class="paintTime hidden" id=_loc_PaintTime>Paint Time</span>
      </div>
      <div class="value label">
        <span class="cpu hidden" id=_loc_NA>N/A</span>
        <span class="memory hidden" id=_loc_NA>N/A</span>
        <span class="frameRate hidden" id=_loc_NA>N/A</span>
        <span class="paintTime hidden" id=_loc_NA>N/A</span>
      </div>
      <div class="description label">
        <span class="cpu hidden" id=_loc_PcUtilization>% Utilization</span>
        <span class="memory hidden" id=_loc_PrivateWorkingSet>Private bytes (MB)</span>
        <span class="frameRate hidden" id=_loc_FPS>Frames per second</span>
        <span class="paintTime hidden" id=_loc_milliseconds>milliseconds</span>
      </div>
      <div class="y-max label">
        <span class="cpu hidden">100%</span>
        <span class="memory hidden" id=_loc_NA>N/A</span>
        <span class="frameRate hidden">60</span>
        <span class="paintTime hidden">100</span>
      </div>
      <div class="y-min label">
        <span class="cpu hidden">0</span>
        <span class="memory hidden">0</span>
        <span class="frameRate hidden">0</span>
        <span class="paintTime hidden">0</span>
      </div>
      <div class="x-min label">
        <span class="cpu hidden" id=_loc_60Seconds>60 seconds</span>
        <span class="memory hidden" id=_loc_60Seconds>60 seconds</span>
        <span class="frameRate hidden" id=_loc_6Seconds>6 seconds</span>
        <span class="paintTime hidden" id=_loc_6Seconds>6 seconds</span>
      </div>
      <div id="graphContainer" tabindex="0"
          onclick="hideDetails()"
          onkeypress="handleGraphKey(event)">
        <svg id="graph" viewBox="0 0 500 320" version="1.1" preserveAspectRatio="none">
          <g id="lines">
            <!-- populated in makeGridlines -->
          </g>
          <g id="memory">
            <polygon id="graphData"></polygon>
          </g>
          <g id="cpu">
            <g id="graphData">
              <!-- this g is replaced in script -->
            </g>
          </g>
          <g id="paintTime">
            <g id="graphData">
              <!-- this g is replaced in script -->
            </g>
          </g>
          <g id="frameRate">
            <g id="graphData">
              <!-- this g is replaced in script -->
            </g>
          </g>
        </svg>
      </div>
    </div>
    <div id="extraDetails" class="hidden" onclick="hideExtraDetails()">
      <div class="gripper" onmousedown="onGripperDown(event)" onmousemove="onGripperMove(event)" onmouseup="onGripperUp(event)">
        &bullet; &bullet; &bullet;
      </div>
      <div class="metric bar" id="irEnabled">
        <span class="unit" id=_loc_irEnabled>
          獨立式轉譯: 
        </span>
        <span class="inline value">
          N/A
        </span>
      </div>
      <div class="metric bar" id="irDisablingContent">
        <span class="inline value">
          N/A
        </span>
      </div>
    </div>
    <div class="hidden"> <!-- for localization -->
      <span id=_loc_percent>%</span>
      <span id=_loc_zeroPercent>0%</span>
    </div>
  </body>
</html>
PAD<!DOCTYPE HTML>
<html dir="LTR">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5"/>
  <title>������e�w�Q���i�����w��</title>

  <script type="text/javascript">
    function promptSafeUrl(e) {
      function isExternalUrlSafeForNavigation(urlStr) {
        var regEx = new RegExp("^(http(s?))://", "i");
        return regEx.exec(urlStr);
      }

      function realPageURL() {
        var docURL = window.document.location.href;
        var beginURL = docURL.indexOf("#", 1) + 1;
        var urlresult = docURL.substring(beginURL);

        if (!isExternalUrlSafeForNavigation(urlresult)) {
          return window.document.location.toString();
        }

        return urlresult;
      }

      if (window.external.msPromptSafeUrl()) {
        var smartScreenLink = document.getElementById("overrideLink");
        smartScreenLink.href = realPageURL();

        document.removeEventListener('click', promptSafeUrl, false);
        document.removeEventListener('keyup', promptSafeUrlKeyUp, false);
        smartScreenLink.click();
      }

      e.preventDefault();
      e.stopPropagation();
    }

    function promptSafeUrlKeyUp(e) {
      // Only call this for the enter key
      if (e.keyCode == 13) {
        promptSafeUrl(e);
      }
    }

    document.addEventListener('click', promptSafeUrl, false);
    document.addEventListener('keyup', promptSafeUrlKeyUp, false);
  </script>

  <style>
    body {
      background-color: rgb(174, 11, 11);
      font-family: "Microsoft JhengHei UI", "Microsoft JhengHei", �s�ө���, "Segoe UI semilight", "Segoe UI", Verdana, Arial;
      color: #C0C0C0;
      overflow: hidden;
      -ms-content-zooming: none;
      -ms-user-select: none;
    }
    
    a {
      color: #C0C0C0;
    }
    
    img {
      border: 0px;
    }

    #top, #bottom, #left, #right {
      background: #FFFFFF;
    }

    #left, #right {
      position: fixed;
      top: 0;
      bottom: 0;
      width: 1px;
    }

    #left {
      left: 0;
    }

    #right {
      right: 0;
    }

    #top, #bottom {
      position: fixed;
      left: 0;
      right: 0;
      height: 1px;
    }

    #top {
      top: 0;
    }

    #bottom {
      bottom: 0;
    }

    .smartscreen_link {
      display: none;
    }

    /* small */
    @media not all and (min-width: 115px) and (min-height: 115px) {
      .smartscreen_large {
        display: none;
      }

      .image_large {
        display: none;
      }

      .smartscreen_small {
        width: 22px;
        height: 22px;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-left: -11px;
        margin-top: -11px;
        display: inherit;
      }
    }

    /* wrapped */
    @media all and (min-width: 115px) and (min-height: 115px) and (max-width: 169px) {
      .smartscreen_large {
        width: 140px;
        height: 100px;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-left: -70px;
        margin-top: -50px;
        display: inherit;
      }
      
      .image_large {
        padding-bottom: 7px;
      }

      .smartscreen_small {
        display: none;
      }
    }

    /* single line */
    @media all and (min-width: 170px) and (min-height: 105px) {
      .smartscreen_large {
        width: 200px;
        height: 80px;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-left: -100px;
        margin-top: -40px;
        display: inherit;
      }
      
      .image_large {
        display: inherit;
        padding-bottom: 7px;
      }

      .smartscreen_small {
        display: none;
      }
    }
    
  </style>
</head>
<body>
  <div id="Div1">
    <div class="smartscreen_large">
      <center>
        <img id="largeImage" class="image_large" tabIndex="1" alt="This web content has been reported as unsafe." src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAhxJREFUeNrsWYtxgzAMNZ2AEegG6QRlBLoB3aAjsEFHMBukncDNBLlMQDZINnClnkmJLxh/ZMfc5d05cAFZT1i2JJuxCJBSttAG+Q+8b1nuAJIltK2cBz4rcya/l8vYZ2cEENpoLrMEfHeTC/kG2km6A2UaqqHnk47xvraQqzQ5X2AflYW+WtMnkHsBP5/w/OOGzBHaF7QdtPPkf1T2Co16VUFd30rviFLpapReHT0aINmK8cRWjocBDwMyMOB4J1kSA/qiKJ7xmlj2KkAMvgFI64cnkr1KSZiKaEHkHYmEyOoQbCH9vW21eUS5K/kAb9jiHDg4el1lIgJ+/T7j1716Nmv4TLpgwmGsniSVG82MBA8YNRPaMZeXEY2IRV5eaorQdDhgBQxKx6cdidRGENQSYhrIdoEBrXUxQr0bWk/s9GqHAjzBlx9RX0YAlrcfrerKHWfFmfTL8IT+z+d2F9YyiRvKxC71MjqYOuxWEMi6pT2i3FOJkmJYfQjx2HqnO265ptOV7eTqfL5E5IKmc90vHVyIRC4pB+ctecu4wAOWQxfZxnedtik3h4CAZCO7NXEsllwJLnuPUo8KuG/0AnnP2WtfSAm+3SnR+9NtIk89H6jRkH6OgOLfr1iPdB7WrpZ8IiPaJLNLbcWcCImfkh+7qmgtCMiLux58e9QQfvlNZCMqx9EQ1pllYkPqBUOEzSF6LoY4n/774FeAAQChSfcFKXfEcAAAAABJRU5ErkJggg=="/>
        <br />
         Microsoft SmartScreen
      </center>
    </div>
    <div class="smartscreen_small">
      <center>
         <img id="smallImage" tabIndex="1" alt="������e�w�Q���i�����w���C" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAOVJREFUeNrElQERwyAMRdkUTAJzUgmVgIRKmAMkTELroBIyB5NQCRm5pRtHwxHWcvt3OXoEXjn4BGMUQkSPX3mzVwFyCTHjVkC50uQbT6bWRv0uxBPzopyLxtuI5U80wjTQ2TTSX8CPEFdua3KfTc/JRs4AyRF8YKJMxk4pYIVLfZLm1PwluAb6vkTsV9TAlVCSo8ObGphiWlcxHrgVY+yM/sDD61PbwQF2A8nPnbBim1lVLtdp6m6tfKmMwg9Q0Bb3Gni56Ctejs3VVUOTHwwhFgFIfcPed49O/86whb9tad5LgAEAKRi2QKUfvLAAAAAASUVORK5CYII=" />
      </center>
    </div>
  </div>
  <div id="left"></div>
  <div id="right"></div>
  <div id="top"></div>
  <div id="bottom"></div>
  <!-- Continuing through to the unsafe page requires navigation from a link in the document -->
  <a class="smartscreen_link" id="overrideLink"></a>
</body>
</html>
PA�PNG


IHDRk�?�IDATx��=��P�qH>�еV��Į�ա�MP�M�Ep�X��� ��тT����V!}or��6}I�C P�4gph���9$�O(�{�o��:�$$#���g%z7C�\�q�wrH���ѫ�[�m�/�x\�= \Ay��
Kl��QA�baH �x���HM���vA���׸�a�m��{}�Oi�'kXe����V�G��P�j8�%��DH�[n��op��N^�{�bk�㄄m�����ڽO��h���ޚ8.����L��/4.T5����#딞�Ąg��2�4������=
W�~����hDb�㹋<�z�.�4�_��!��no��$~NHx8ua�p�૶��ɝf��l�h�	&y�T�BM��̳�}&�?�uaa��	WnvH�vcz}ZKNKX�@�qrs#q����[}�,�e�C%�I=�J����T�rS�'�>�x){��E`��"�CIEND�B`�P�PNG


IHDRk�?EIDATx��]h�Ɵ3_�3�]Ӥ����EE�Q[,�؛ޔ4�*+酅�BCA��"F�"����DI�GI/��i/*JZh��5FI�$&Ƥ��dw��Kfd�F��	3;9��y�3�*�Zo���,/E�x2���"te�Tj۷o�ʞ������4�


�֭[�����lnkk�h:{�l����˲4걁�?=�l�*�J0<<|���u��<��յYF�^WW��������Z])u�.%���}U.�5�
��x��>t]S�Tݧ�ũ�)���ydzz���؞����)�u#��F�S�P��މ'����0d����g��
1�Ⱥ+L���C
T�~����GK�^\8u˩y{���,��r�c{�
�b0�B�*%������7��I566��r��v9�*1c)��ˈ$#��~��0�xR�9Rt���ٰX,z�|�qc�_��
�x�%�M*
-,��N$ga��\�3��%
�
�B���CH��E7�X۔��$@�+Ӣr�@$�T{I�
�a�X����9l��w�;��x�G��|�
�Q�����C�G�@.�i�Eg.�������#��ĉc
c�I��GA#K'.�9ї'oa�'�#���q�Eq�j<>>>���=��\������Vg���#��U�v����2.��{�&�������oy�k�?�9P;v�x3�����{��ԏ�x{}-Z����.������2�9�9(D2MSA��$�r�&$�����Ld3�����P�҇�;ɍD��#qcFU�C����A�%L�G���Ѷ�o��ױecD�ό ���F/�^OU`aK�Ⱥ(��dߨ���d��lX_�y���s�F�������e���k�[Z��E?�r�է���:f�<�轋W_ʈq૛H�0M�J����0�k����d�fc;^����!���|V-�	s4�Ȓ�K���]���+���'_��G�p�.���z��Ri��R�������)�vr�dn{�
�?�t?��rY��'m;��ؖ�_�`Y��lM��i��Z����LO犅��
�Ҕ�Kf��HU��1
2�P�e�O�R�L�	ۖC�%�d����18x����ճ��=���٥���V��G����'D��W�L4�1�B|���)��+r�쳃ׯ��
S�l۶������ۋolڴ!��ѹK'P�"�����P���0:qJ0i�=��!ϧCn��+W�9|���k׮)9_?<W�ٳ��ܹsY���q�f�����cǦ����Ho�����G�j��DO�������IEND�B`�PA�PNG


IHDRk�?6IDATx��[hU�3����$�f/�`i���V���]b��-)Z�D�`����^�ZjAĴ�%ҋƇ"�%�h1��iI/1M����&;�s��Y&�m����v��|s9��ֺ��j&��1��c�9��L�f���;:;;3===������766z�6m�wuu��F������#;00�|�رt.��'�䆅�����qp��8�����>�y�q��񎆆��}}}M����aW������ɿS�(G�yprr�mmm�<55���86==me�뺿Q�p���ȑJ�R�d���O��P(�#��b�3�n���8C(cY�fт& K�"|��#/�6x񹧾�d2^:��l�vā21g�ZR�#s��_=��A�������b9Z�t`pp0����p�n*���QK,�R��Z�}x�u��.cccV]]�b\^Ɏ8��qH{�}�m�R�V0�QZW�
�|�B����:D���<A���D�D���"��4����f�Jtܰ����Y �_�B_i�X՜Bm*5}�H�`��`�KK(���e�D�3#�Ely�?��QJ�0c�q8GꉣJ��� �e"�����1S�p��(߅��\"h�+ujV��W�xww���s��ֈ���4���>:t	-k�˚�
���W���/�9=�{��u���eHe�ˡf\���GF�³�#�at����0��A��H��"�6qq0��m���؃���F���z�?s��.B��)?(����cRGꉣ�՚p���}�m�(��a\:��/����-�F�����y4d|Ĭ8�a�RG�I�VkT�%@�x)��tu������Uףظ����5c2F�$!RS\���Z[v8�1�ר��D��r7��C}��r�]���$xz���8i��}�ca֑�$����4�$x�)@���F�|��7?��{�<��9@3E��^�#%$x瓋��(�	�R[�άu�ׄ�5#�hlv��Kt��A���w�p-�Ǣ�D8qX;$�b1��b�A3`0��\/:Yk�ЋW��G��E�+R<O$���ڶ8�by�٩d�Q)�(�M��5L�x嵝���T8�Lĉ��)q[=ǽ�ah�����+f���Z�aؖe���=�+%��1>�m�7�I@Lcѝ�$J�ˋ���rV6��s=�pۓ�K�SĿo޼��ݻwg�ڱ��؆
��D�����2jp]�x���KYD�5�Y����餚p��|>*}Y�Μ={~Ϟ=��m�&e]�Wo߾={���gg��@�;�W+FK����������'b��¬b�w�Ef�9͌���n��}t�IEND�B`�P�PNG


IHDRk�?IDATx��_lSU���]�#�:7	aq*���#�J�:����% �+`B�>HL`��(R@&�B��h�$KTP���m�k�6���9��I�r�6��w�{�~���\ H�a?�^ˎ�mh�id���;55�v�޽u555M��a�`�ED^�v��ݻ��Xl����!۶�񽋳�2ڹ��l�Ӻ���`�	��p8Z(�a�N�;�
��6::�=���S��N������3��Y�\d";��u�&�Q"���]�V�<�M^�c��ʕ+{x;�6r�
X`�T���f�]�6X�J��7��6q��'�j��d2��Jyc`H�4�48%��b>��b�?8z��Q���鴛+E��[��N���`�c�}��
[�<�")Q���R|ftޭm��\�A�
�ݺѶm� U6(l�D��1u,@-�R�ř�S�3>>��=s���x�Я��T_��T,
v��,3�`��R[Ҽ`�X�e��0�5;5�7���g�۶	�l��t�L�VKB\%Z����P�˃twܤ�K��ZIN�!���d��k<l�s-v�i��=y��HR�=Z��)dL%)�փJ�Ͼ!}�ڵ߉�2�G	Q�çR�J
�N�N����	c��
�R����www�"G��W��-�x�&BO^�gV.�
/=FЙ�9�E�m��Y��Z�)++�	`�AB#���/B"�~��a�?�R���$��-�:|$�p84�˥#G���1	-6��?O�h�IZU�����ܢ�Y:�u�>z�q¢�t���ԑ3W0N�&�BJ\�AB�W.�A�6�`8����X�')	�	<�u2Ls���\�t"�x_������{GD6^�s����LA��,�S�ga�kll���޾.q��
�	��:M�'''������x"�$��5�557��y˖W�y��ϢeYNô|�e���=���G��%��z����u{ܥL�����d�á�y5����;>����pX���t1�ǹB�4�}�c�G��,t�����
�WmjX��S黻/�
u�lg@ڿ���G����_�|����v�Rc��Ŏ�P�y�C��0�&��`0P�B\�`uu��a�r��i�d$)����ZZ"����;��q��ϵ�1n#|?�fM���ir9�_��ڋLd'��?�s�_�\��7on���e���W�!?1<<�u&��<[�i�9��R�<��7��i�w���c�y�`ttt�p���h<�VUU���mh�cd�3}�~v����?	d��4�s�\�IEND�B`�PAD
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="MSThemeCompatible" content="Yes">
<title>預覽列印</title>
<style>
.divPage
{
position: absolute;
top: -20000px;
border-left: 1pt solid black;
border-top: 1pt solid black;
border-right: 4pt solid black;
border-bottom: 4pt solid black;
}
.page
{
display: inline-block;
position: relative;
z-index: 0;
background: white;
width: 8.5in;
height: 11in;
margin: 0px;
overflow: hidden;
}
.mRect
{
position: absolute;
margin: 1in;
width: 6.5in;
height: 9in;
border: none;
overflow : hidden;
}
.mRectAtPage
{
overflow : hidden;
}
.mRectAtPageLeft
{
overflow : hidden;
}
.mRectAtPageRight
{
overflow : hidden;
}
.mRectAtPageFirst
{
overflow : hidden;
}
.mRectUserOverride
{
overflow : hidden;
}
.divHead
{
position: absolute;
overflow: hidden;
top: 0in;
left: 0in;
width: 8.5in;
}
.divHeadAtPage
{
overflow: hidden;
}
.divHeadAtPageLeft
{
overflow: hidden;
}
.divHeadAtPageRight
{
overflow: hidden;
}
.divHeadAtPageFirst
{
overflow: hidden;
}
.divHeadUserOverride
{
overflow: hidden;
}
.divFoot
{
position: absolute;
overflow: hidden;
bottom: 0in;
left: 0in;
width: 8.5in;
}
.divFootAtPage
{
overflow: hidden;
}
.divFootAtPageLeft
{
overflow: hidden;
}
.divFootAtPageRight
{
overflow: hidden;
}
.divFootAtPageFirst
{
overflow: hidden;
}
.divFootUserOverride
{
overflow: hidden;
}
.THeader
{
border: none;
background: white;
color: black;
}
.TFooter
{
border: none;
background: white;
color: black;
}
.MarginAnchor
{
position: absolute;
top: 0;
left: 0;
display: none;
z-index: 100;
}
.MarginOutline
{
position: absolute;
top: 0;
left: 0;
background: transparent;
border:dashed 1px windowtext;
display: none;
z-index: 100;
}
BODY { overflow:hidden; padding:0; margin:0; background:threedface; }
TD.uiPane { width: 20px; border: none; font-family: 'Microsoft JhengHei UI'; font-size: 9pt; vertical-align:middle; }
TD.uiSeparator { height: 31px; border: none; padding: 0px; }
* { box-sizing: border-box; }
select::-ms-value { padding-top:1px; padding-bottom:1px; }
</style>
<script defer src="preview.js">
</script>
</head>
<body onLoad="OnLoadBody();">
<!-- Toolbar -->
<div id="idDivToolbar">
<table border=0 cellpadding=2 cellspacing=0 style="margin: 0px; padding: 0px; height:27px;overflow:hidden;width:100%;"><tr>
<!-- Print button -->
<td class="uiPane"> <input type="image" id="printimg" accesskey="P" src="printimg.png" alt="" title="列印文件 (Alt+P)" style="cursor:default;" width=35 height=27 border=0></td>
<td class="uiSeparator" width=2><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<!-- Portrait toggle -->
<td class="uiPane"> <input type="image" id="portrait" accesskey="O" src="portrait.png" alt="" title="直印 (Alt+O)" style="cursor:default;" width=30 height=27 border=0></td>
<!-- Landscape toggle -->
<td class="uiPane"> <input type="image" id="landscape" accesskey="L" src="landscape.png" alt="" title="橫印 (Alt+L)" style="cursor:default;" width=34 height=27 border=0></td>
<td class="uiSeparator" width=2><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<!-- Page Setup button -->
<td class="uiPane"> <input type="image" accesskey="U" id="settings" src="settings.png" alt="" title="設定列印格式 (Alt+U)" style="cursor:default;" width=31 height=27 border=0></td>
<td class="uiSeparator" width=2><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<!-- Headers/Footers toggle -->
<td class="uiPane"> <input type="image" accesskey="E" id="headerimg" src="headerimg.png" alt="" title="開啟或關閉頁首與頁尾 (Alt+E)" style="cursor:default;" width=36 height=27 border=0></td>
<td class="uiSeparator" width=2><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<!-- Zoom Page Width button -->
<td class="uiPane"> <input type="image" id="zoomWidth" accesskey="W" src="zoomwidth.png" alt="" title="檢視全寬 (Alt+W)" style="cursor:default;" width=35 height=27 border=0></td>
<!-- Zoom Page button -->
<td class="uiPane"> <input type="image" id="zoomPage" accesskey="1" src="zoompage.png" alt="" title="檢視全頁 (Alt+1)" style="cursor:default;" width=36 height=27 border=0></td>
<!-- Pages dropdown -->
<td class="uiPane">
<select id="selectPages" accesskey="N" title="顯示多頁 (Alt+N)" onfocus="printimg.scrollIntoView();">
<option value="1" selected id="onePageView">1 頁檢視</option>
<option value="2" id="twoPageView">2 頁檢視</option>
<option value="3" id="threePageView">3 頁檢視</option>
<option value="6" id="sixPageView">6 頁檢視</option>
<option value="12" id="twelvePageView">12 頁檢視</option>
</select>
</td>
<td class="uiSeparator" width=2 id="separatorFrameset" style="display:none"><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<!-- Frameset control selector thing; invisible until we discover a frameset -->
<td class="uiPane" id="cellFrameset" style="display:none" onfocus="printimg.scrollIntoView();">
<span>
<select id="selectFrameset" accesskey="F" title="選取內容 (Alt+F)">
<option value="0" id="idLaidOut">顯示的畫面</option>
<option value="1" id="idSelected">只有選擇的框架</option>
<option value="2" id="idSeparate">所有個別的框架</option>
<option value="3" id="idSelection">如同在畫面所選取</option>
</select>
</span>
</td>
<td class="uiSeparator" width=2><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<!-- Scale Level input dropdown -->
<td class="uiPane">
<span>
<select id="selectScale" accesskey="S" title="變更列印大小 (Alt+S)" onfocus="printimg.scrollIntoView();">
<option value="-1" id="idScaleToFit">自動縮小</option>
<option value="30" id="printsize1">30%</option>
<option value="50" id="printsize2">50%</option>
<option value="60" id="printsize3">60%</option>
<option value="70" id="printsize4">70%</option>
<option value="80" id="printsize5">80%</option>
<option value="85" id="printsize6">85%</option>
<option value="90" id="printsize7">90%</option>
<option value="95" id="printsize8">95%</option>
<option value="100" id="printsize9" selected>100%</option>
<option value="125" id="printsize10">125%</option>
<option value="150" id="printsize11">150%</option>
<option value="200" id="printsize12">200%</option>
<option value="0" id="idCustomScale">自訂</option>
</select>
</span>
</td>
<td id="cellCustomScale" class="uiPane" style="display:none"><nobr>
<input type="text" id="inputCustomScale" title="自訂大小 (Alt+T)" value="100" style="color:windowtext;" maxlength="3" size="3" accesskey="T">%
</nobr></td>
<td class="uiSeparator" width=2><img src="divider.png" alt="" width=2 height=31 border=0 hspace=1 vspace=0></td>
<td width="*">&nbsp;</td>
<!-- Help button -->
<td class="uiPane"> <input type="image" id="helpimg" src="helpimg.png" alt="" title="說明 (F1)" style="cursor:default;" width=31 height=27 border=0></td>
</tr></table>
</div>
<div id="idDivToolbar2" style="visibility:hidden;position:absolute;left:0px;width:100%;height:48px;overflow:hidden;">
<table border=0 cellpadding=0 cellspacing=0 style="margin: 0px auto; padding: 0px; height:100%;"><tr>
<!-- Page input static text and edit box -->
<td class="uiPane">
<span style="color:windowtext;">
<nobr Loc>&nbsp;<id id="idTdPageXofYLocText1">頁(<u>A</u>)</id>&nbsp;
<input type="text" id="inputPageNum" title="本頁 (Alt+A)" value="1" style="height:1.5em; width:2em; color:windowtext;" accesskey="A">
<id id="idTdPageXofYLocText2"> / </id>
<span id="spanPageTotal" style="display:inline-block;width:4em;"></span>
&nbsp;
</nobr>
</span>
</td>
<!-- First Page [<<] button -->
<td class="uiPane"> <input type="image" id="begin" value="leftmost" src="leftmost_disabled.png" alt="" title="第一頁 (Alt+Home)" width=30 height=30 border=0></td>
<!-- Back One Page [<] button -->
<td class="uiPane"> <input type="image" id="prev" value="left" src="left_disabled.png" alt="" title="上一頁 (Alt+向左鍵)" width=30 height=30 border=0></td>
<!-- Forward One Page [>] button -->
<td class="uiPane"> <input type="image" id="next" value="right" src="right_disabled.png" alt="" title="下一頁 (Alt+向右鍵)" width=30 height=30 border=0></td>
<!-- Last Page [>>] button -->
<td class="uiPane"> <input type="image" id="end" value="rightmost" src="rightmost_disabled.png" alt="" title="最後一頁 (Alt+End)" width=30 height=30 border=0></td>
</tr></table>
</div>
<div id="tbCenterAlign" align="center" style="position:absolute;left:0;top:0;width:100%;height:31px;z-index:-100;background: url(tb_back.png) repeat-x;overflow:hidden;">
<div style="width:438px;height:31px;background:url(tb_centre.png) norepeat;"></div>
</div>
<div id="OverflowContainer" onclick="this.focus();" onfocus="printimg.scrollIntoView();" tabindex="1" style="position:absolute; left:0; width:100%; overflow:auto; border:thin threedhighlight inset; background:threedshadow;">
<div id="MasterContainer" tabindex="0" style="width:100%; position:absolute;" >
<!-- Pages go here -->
<div id="EmptyPage" class="divPage" style="position:absolute; left:0px; top:0px; display:none;"><div class="page">&nbsp;</div></div>
</div>
<div id="MarginBox" class="MarginOutline"></div>
<img id="maLeft" class="MarginAnchor" style="cursor:col-resize" src="resize_horizontal.png" width="19" height="19" border="0" alt="" title="調整邊界" draggable="false">
<img id="maRight" class="MarginAnchor" style="cursor:col-resize" src="resize_horizontal.png" width="19" height="19" border="0" alt="" title="調整邊界" draggable="false">
<img id="maTop" class="MarginAnchor" style="cursor:row-resize" src="resize_vertical.png" width="19" height="19" border="0" alt="" title="調整邊界" draggable="false">
<img id="maBottom" class="MarginAnchor" style="cursor:row-resize" src="resize_vertical.png" width="19" height="19" border="0" alt="" title="調整邊界" draggable="false">
</div>
</body>
</html>
PAD
var Printer = window.msTemplatePrinter;
var HeadFoot = Printer.createHeaderFooter();
var g_aDocTree = new Object();
var g_nDispPage = -1;
var g_cLeftToPrint = 0;
var g_fRTL = false;
var g_fPageProgressionRTL = false;
var g_fPageProgressionDetermined = false;
var g_fPreview;
var g_nScreenDPI = 96;
var g_fPrintManagerMode = false;
var g_fPrintManagerDocInit = false;
var g_fPrintManagerPaginated = false;
var g_nPMFirstPagePreview = 0;
var g_fIEImmersive = false;
var g_fClickHandlerPending = false;
var g_fPMIsCurContentSelection = false;
var g_nMarginTop = 0;
var g_nMarginBottom = 0;
var g_nMarginLeft = 0;
var g_nMarginRight = 0;
var g_nPageWidth = 0;
var g_nPageHeight = 0;
var g_strOrientation = Printer.orientation;
var g_nScalePercent = 100;
var g_fCheckAutoFit = false;
var g_fCheckOrphan = false;
var g_oOptionSTF = null;
var g_bSTF = true;
var g_bPrintBackground = false;
var g_fHasBody = false;
var g_nUnprintTop = 0;
var g_nUnprintBottom = 0;
var g_strHeader = "";
var g_strFooter = "";
var g_strHeaderFooterFont = "";
var g_fPrintHeaderFooter = true;
var g_cPagesDisplayed = 0;
var g_cxDisplaySlots = 1;
var g_cyDisplaySlots = 1;
var g_imgUnderMouse = null;
var g_imgDown = null;
var g_curMultiSelect = null;
var g_curMultiPages = 1;
var g_nFramesetLayout = 0;
var g_strActiveFrame = null;
var g_nTotalPages = 0;
var g_nDocsToCalc = 0;
var g_nFramesLeft = 0;
var g_nPMPrevFrameset = 0;
var g_nZoomLevel = 100;
var g_zoomLayout = -2;
var g_zoomLayoutX = 1;
var g_zoomLayoutY = 1;
var g_zoomPageCount = 1;
var g_ObsoleteBar = 0;
var g_oUserOverrideForMargins = {left:null, right:null, top:null, bottom:null};
var g_oMarginsAtPage = null;
var g_oMarginsAtPageFirst = null;
var g_oMarginsAtPageLeft = null;
var g_oMarginsAtPageRight = null;
var g_oPrintedDocument = null;
var g_nMarginIncreaseForHeader = (27 / 100);
var g_nMarginIncreaseForFooter = (27 / 100);
function AttachDialogEvents()
{
printimg.onclick = HandleDeferredClick(HandlePrintClick);
printimg.onpointerover = buttonOver;
printimg.onpointerout = buttonOut;
portrait.onpointerover = buttonOver;
portrait.onpointerout = buttonOut;
landscape.onpointerover = buttonOver;
landscape.onpointerout = buttonOut;
settings.onpointerover = buttonOver;
settings.onpointerout = buttonOut;
headerimg.onpointerover = buttonOver;
headerimg.onpointerout = buttonOut;
zoomWidth.onpointerover = buttonOver;
zoomWidth.onpointerout = buttonOut;
zoomPage.onpointerover = buttonOver;
zoomPage.onpointerout = buttonOut;
helpimg.onpointerover = buttonOver;
helpimg.onpointerout = buttonOut;
begin.onpointerover = buttonOver;
begin.onpointerout = buttonOut;
prev.onpointerover = buttonOver;
prev.onpointerout = buttonOut;
next.onpointerover = buttonOver;
next.onpointerout = buttonOut;
end.onpointerover = buttonOver;
end.onpointerout = buttonOut;
printimg.onpointerdown = buttonDown;
printimg.onpointerup = buttonUp;
portrait.onpointerdown = buttonDown;
portrait.onpointerup = buttonUp;
landscape.onpointerdown = buttonDown;
landscape.onpointerup = buttonUp;
settings.onpointerdown = buttonDown;
settings.onpointerup = buttonUp;
headerimg.onpointerdown = buttonDown;
headerimg.onpointerup = buttonUp;
zoomWidth.onpointerdown = buttonDown;
zoomWidth.onpointerup = buttonUp;
zoomPage.onpointerdown = buttonDown;
zoomPage.onpointerup = buttonUp;
helpimg.onpointerdown = buttonDown;
helpimg.onpointerup = buttonUp;
portrait.onclick = HandlePortrait;
landscape.onclick = HandleLandscape;
settings.onclick = HandleDeferredClick(HandlePageSetup);
headerimg.onclick = HandleHeaders;
zoomWidth.onclick = HandleZoomWidthButton;
zoomPage.onclick = HandleZoomPageButton;
begin.onclick = HandleFirstPage;
prev.onclick = HandleBackPage;
next.onclick = HandleForwardPage;
end.onclick = HandleLastPage;
helpimg.onclick = HandleHelp;
document.onhelp = HandleHelp;
begin.onpointerdown = buttonDown;
begin.onpointerup = buttonUp;
prev.onpointerdown = buttonDown;
prev.onpointerup = buttonUp;
next.onpointerdown = buttonDown;
next.onpointerup = buttonUp;
end.onpointerdown = buttonDown;
end.onpointerup = buttonUp;
inputCustomScale.onkeypress = HandleInputKeyPress;
inputCustomScale.onchange = HandleCustomScaleSelect;
inputPageNum.onkeypress = HandleInputKeyPress;
inputPageNum.onchange = HandlePageSelect;
selectScale.onchange = HandleScaleSelect;
selectFrameset.onchange = HandleFramesetSelect;
selectPages.onchange = HandleZoomMultiPageSelect;
window.onresize = OnResizeBody;
window.onerror = HandleError;
document.body.onkeypress = OnKeyPress;
document.body.onkeydown = OnKeyDown;
OverflowContainer.onpointerdown = HandleMarginPointerDown;
OverflowContainer.onpointerup = HandleMarginPointerUp;
OverflowContainer.onpointermove = HandleMarginPointerMove;
window.onfocus = new Function("MasterContainer.focus()");
}
function PostTimeoutTask(strTask, uDelayForClassic, uDelayForModernPrint)
{
if (g_fPrintManagerMode)
{
return window.setTimeout(strTask, uDelayForModernPrint);
}
else
{
return window.setTimeout(strTask, uDelayForClassic);
}
}
function GetRuleFromSelector(strSelector)
{
var i;
var oRule;
var oSS = document.styleSheets[0];
for (i = 0; i < oSS.rules.length; i++)
{
oRule = oSS.rules[i];
if (oRule == null)
break;
if (oRule.selectorText == strSelector)
break;
else
{
oRule = null;
}
}
return oRule;
}
function UnprintableURL(strLink)
{
var fUnprintable = false;
var cIndex;
cIndex = strLink.indexOf(":");
switch (cIndex)
{
case 4:
if (strLink.substr(0, cIndex) == "news")
{
fUnprintable = true;
}
break;
case 5:
if (strLink.substr(0, cIndex) == "snews")
{
fUnprintable = true;
}
break;
case 6:
if ( strLink.substr(0, cIndex) == "telnet"
|| strLink.substr(0, cIndex) == "mailto")
{
fUnprintable = true;
}
break;
case 8:
if (strLink.substr(0,cIndex) == "vbscript")
{
fUnprintable = true;
}
break;
case 10:
if (strLink.substr(0,cIndex) == "javascript")
{
fUnprintable = true;
}
break;
}
return fUnprintable;
}
function OnKeyPress()
{
if (event.keyCode == 27)
{
Close();
}
}
function OnKeyDown()
{
if(event.keyCode==13 && event.srcElement && (event.srcElement.id=="OverflowContainer" || event.srcElement.id=="MasterContainer")) {
event.cancelBubble = true;
return false;
}
if (event.altKey)
{
switch (event.keyCode)
{
case 37:
if (document.body.dir=="rtl")
{
ChangeDispPage(g_nDispPage+1);
}
else
{
ChangeDispPage(g_nDispPage-1);
}
break;
case 39:
if (document.body.dir=="rtl")
{
ChangeDispPage(g_nDispPage-1);
}
else
{
ChangeDispPage(g_nDispPage+1);
}
break;
case 35:
HandleLastPage();
break;
case 36:
HandleFirstPage();
break;
case 50: '2'
case 98: '2'
selectPages.selectedIndex = 1;
HandleZoomMultiPageClick(2);
break;
case 51: '3'
case 99: '3'
selectPages.selectedIndex = 2;
HandleZoomMultiPageClick(3);
break;
case 54: '6'
case 102: '6'
selectPages.selectedIndex = 3;
HandleZoomMultiPageClick(6);
break;
case 67: 'C'
Close();
break;
case 48: '0'
case 96: '0'
selectPages.selectedIndex = 4;
HandleZoomMultiPageClick(12);
break;
default:
return;
}
event.cancelBubble = true;
return false;
}
}
function OnLoadBody()
{
if (dialogArguments.__IE_PrintType == "PrintManager")
{
OnLoadBodyWorker();
}
else
{
PostTimeoutTask("OnLoadBodyWorker()", 25, 25);
}
}
function OnLoadBodyWorker()
{
try{
g_fIEImmersive = dialogArguments.__IE_Immersive;
} catch(e){}
try{
if(dialogArguments.__IE_BrowseDocument)
{
g_oPrintedDocument = dialogArguments.__IE_BrowseDocument;
g_fHasBody = (null != dialogArguments.__IE_BrowseDocument.body);
}
}catch(e){}
g_fRTL = (getComputedStyle(document.body).direction.toLowerCase() == "rtl");
g_fPreview = dialogArguments.__IE_PrintType == "Preview";
g_fPrintManagerMode = dialogArguments.__IE_PrintType == "PrintManager";
if (UnprintableURL(dialogArguments.__IE_ContentDocumentUrl))
{
var L_Invalid_Text = "無法列印 URL。請直接瀏覽到此頁面並選取 [列印]。";
alert(L_Invalid_Text);
window.close();
}
if (!g_fPrintManagerMode)
{
UpdateOrientationButtons();
ChangeZoom();
}
if (dialogArguments.__IE_HeaderString)
{
Printer.header = dialogArguments.__IE_HeaderString
}
if (dialogArguments.__IE_FooterString)
{
Printer.footer = dialogArguments.__IE_FooterString
}
g_fCheckAutoFit = (dialogArguments.__IE_STFScaleMin != 100);
g_fCheckOrphan = true;
if (!dialogArguments.__IE_ShrinkToFit)
{
g_fCheckAutoFit = false;
g_bSTF = false;
if (!g_fPrintManagerMode)
{
g_oOptionSTF = selectScale.options[0];
selectScale.options.remove(0);
selectScale.selectedIndex = 8;
}
}
if (dialogArguments.__IE_PrintBackground)
{
g_bPrintBackground = true;
}
if (g_fPrintManagerMode)
{
Printer.addEventListener("paginate", HandlePrintManagerPaginate);
Printer.addEventListener("previewpage", HandlePrintManagerPreviewPage);
Printer.addEventListener("print", HandlePrintManagerPrint);
Printer.addEventListener("printtaskoptionchange", HandlePrintManagerPrintTaskOptionChange);
Printer.startPrint();
}
else
{
BuildAllFrames();
}
}
function BuildAllFrames()
{
EnsureDocuments(false);
CreateDocument(dialogArguments.__IE_ContentDocumentUrl, "C");
if (g_oPrintedDocument == null)
{
EnsureDocuments(false);
}
if (!g_fPrintManagerMode)
{
ChangeDispPage(1);
}
g_nFramesLeft = 1;
OnBuildAllFrames("C");
if (g_fPreview || g_fPrintManagerMode)
{
if(dialogArguments.__IE_ContentSelectionUrl)
{
CreateDocument(dialogArguments.__IE_ContentSelectionUrl, "S");
}
window.onunload = UpdatePageStatusForClose;
if (g_fPreview)
{
AttachDialogEvents();
OverflowContainer.style.top = idDivToolbar.offsetHeight + "px";
var h = document.documentElement.clientHeight - idDivToolbar.offsetHeight - idDivToolbar2.offsetHeight;
if(h<0) h = 0;
OverflowContainer.style.height = h + "px";
idDivToolbar2.style.visibility = "visible";
idDivToolbar2.style.top = (idDivToolbar.offsetHeight + h) + "px";
ChangeZoomSpecial(g_zoomLayout);
}
}
else
{
PrintNow(dialogArguments.__IE_PrintType == "Prompt");
}
}
function BuildAllFramesComplete()
{
;
if (!g_fPrintManagerMode)
{
UpdateFramesetSelect();
}
}
function UpdatePrintManagerFirstPagePreview(nDesiredState)
{
switch (nDesiredState)
{
case 0:
g_nPMFirstPagePreview = 0;
break;
case 1:
switch (g_nPMFirstPagePreview)
{
case 0:
if (g_fCheckAutoFit || g_fCheckOrphan)
{
g_nPMFirstPagePreview = 1;
}
else
{
g_nPMFirstPagePreview = 3;
}
break;
case 2:
g_nPMFirstPagePreview = 3;
break;
case 1:
case 3:
break;
default:
HandleError("Cannot enter FirstPagePreview Requested state", document.URL, "UpdatePrintManagerFirstPagePreview");
break;
}
break;
case 2:
switch (g_nPMFirstPagePreview)
{
case 0:
g_nPMFirstPagePreview = 2;
break;
case 4:
case 1:
g_nPMFirstPagePreview = 3;
break;
case 2:
case 3:
break;
default:
HandleError("Cannot enter FirstPagePreview Enabled state", document.URL, "UpdatePrintManagerFirstPagePreview");
break;
}
break;
case 3:
HandleError("Cannot enter FirstPagePreview Pending state", document.URL, "UpdatePrintManagerFirstPagePreview");
break;
case 4:
if (g_nPMFirstPagePreview == 3)
{
g_nPMFirstPagePreview = 4;
}
else
{
HandleError("Cannot enter FirstPagePreview Completed state", document.URL, "UpdatePrintManagerFirstPagePreview");
}
break;
default:
break;
}
}
function CalcDocsComplete()
{
if (g_nDocsToCalc > 0)
{
return;
}
if (g_fPrintManagerMode)
{
UpdatePrintManagerFirstPagePreview(2);
}
if (g_nFramesetLayout == 2)
{
ChangeFramesetLayout(g_nFramesetLayout, true)
}
if(g_fCheckAutoFit)
{
g_fCheckAutoFit = false;
var fitScale = CalcAutoFit();
if (fitScale < dialogArguments.__IE_STFScaleMin) fitScale = dialogArguments.__IE_STFScaleMin;
if(fitScale < 30) fitScale = 30;
if (!g_fPrintManagerMode)
{
selectScale.selectedIndex = 0;
cellCustomScale.style.display = "none";
}
g_nScalePercent = fitScale;
if(fitScale!=100 )
{
EnsureDocuments(true);
return;
}
}
if (g_fCheckOrphan)
{
g_fCheckOrphan = false;
if(IsOrphaned())
{
var orphanScale = CalcOrphanRemovalScale();
g_nScalePercent = g_nScalePercent * orphanScale/100;
if(g_nScalePercent < 30) g_nScalePercent = 30;
EnsureDocuments(true);
return;
}
}
if (!g_fPrintManagerMode)
{
ChangeDispPage(g_nDispPage);
ChangeZoomSpecial(g_zoomLayout);
}
else
{
Printer.setPageCount(TotalDisplayPages());
g_fPrintManagerDocInit = true;
g_fPrintManagerPaginated = true;
UpdatePrintManagerFirstPagePreview(0);
}
}
function HandlePrintManagerPaginate(e)
{
g_fPrintManagerPaginated = false;
if (!g_fPrintManagerDocInit)
{
BuildAllFrames();
}
else
{
ReflowDocument();
}
}
function SetFramesetTypeIfRequired()
{
if (Printer.selection)
{
if (dialogArguments.__IE_ContentSelectionUrl && (g_nFramesetLayout != 3))
{
g_fPMIsCurContentSelection = true;
g_nPMPrevFrameset = g_nFramesetLayout;
g_nFramesetLayout = 3;
}
}
else
{
if (g_fPMIsCurContentSelection)
{
g_nFramesetLayout = g_nPMPrevFrameset;
g_fPMIsCurContentSelection = false;
}
}
}
function DrawPreviewPage(nDispPage)
{
if (!g_fIEImmersive)
{
SetFramesetTypeIfRequired();
}
if (!g_fPrintManagerPaginated)
{
if ((nDispPage > 1) && (g_nPMFirstPagePreview == 0))
{
UpdatePrintManagerFirstPagePreview(1);
nDispPage = 1;
}
PostTimeoutTask("DrawPreviewPage('" + nDispPage + "')", 100, 10);
return;
}
var totalPages = TotalDisplayPages();
if ((nDispPage < 1) || (nDispPage > totalPages))
{
nDispPage = 1;
}
var strDispDoc = DisplayDocument(nDispPage);
if (g_aDocTree != null &&
g_aDocTree[strDispDoc] != null &&
g_aDocTree[strDispDoc].Pages() > 0)
{
MarkPageNeedsRerender(nDispPage);
var oPage = DisplayPage(nDispPage);
Printer.drawPreviewPage(oPage.children[0], nDispPage);
}
}
function HandlePrintManagerPreviewPage(e)
{
DrawPreviewPage(e.detail);
}
function HandlePrintManagerPrint()
{
PrintNow(true);
}
function HandlePrintManagerPrintTaskOptionChange(e)
{
var fForceInvalidate = false;
var strOptionId = e.detail;
if (null != strOptionId)
{
if (-1 != strOptionId.search("HtmlPrintDocumentSource::smartPrint"))
{
g_aDocTree["C"]._strDocURL = dialogArguments.__IE_ContentSmartDocumentUrl;
g_aDocTree["C"].InitDocument();
fForceInvalidate = true;
}
else if (-1 != strOptionId.search("HtmlPrintDocumentSource::originalDoc"))
{
g_aDocTree["C"]._strDocURL = dialogArguments.__IE_ContentDocumentUrl;
g_aDocTree["C"].InitDocument();
fForceInvalidate = true;
}
else if (-1 != strOptionId.search("HtmlPrintDocumentSource::MarginCollection"))
{
var top = Printer.marginTop / 100;
var bottom = Printer.marginBottom / 100;
var left = Printer.marginLeft / 100;
var right = Printer.marginRight / 100;
if (top != g_nMarginTop ||
bottom != g_nMarginBottom ||
left != g_nMarginLeft ||
right != g_nMarginRight)
{
fForceInvalidate = true;
}
}
else if (-1 != strOptionId.search("HtmlPrintDocumentSource::PercentZoom"))
{
var bSTF = Printer.shrinkToFit;
var nScalePercent = Printer.percentScale;
if (nScalePercent != g_nScalePercent)
{
if (!bSTF)
{
fForceInvalidate = true;
}
}
}
else if (-1 != strOptionId.search("HtmlPrintDocumentSource::ShrinkToFit"))
{
var bSTF = Printer.shrinkToFit;
if (bSTF != g_bSTF)
{
if (bSTF)
{
g_fCheckAutoFit = true;
g_fCheckOrphan = true;
}
else
{
g_fCheckAutoFit = false;
g_fCheckOrphan = false;
}
g_nScalePercent = 100;
fForceInvalidate = true;
}
}
else if (-1 != strOptionId.search("HtmlPrintDocumentSource::ContentCollection"))
{
if (Printer.selection)
{
g_fPMIsCurContentSelection = true;
g_nPMPrevFrameset = g_nFramesetLayout;
g_nFramesetLayout = 3;
fForceInvalidate = true;
}
else
{
if (g_fPMIsCurContentSelection)
{
fForceInvalidate = true;
g_nFramesetLayout = g_nPMPrevFrameset;
}
g_fPMIsCurContentSelection = false;
}
}
else if (-1 != strOptionId.search("HtmlPrintDocumentSource::HeaderFooterStates"))
{
var headerFooterState = Printer.showHeaderFooter;
if (headerFooterState != g_fPrintHeaderFooter)
{
fForceInvalidate = true;
}
}
if (fForceInvalidate)
{
Printer.invalidatePreview();
}
}
}
function OnResizeBody()
{
OverflowContainer.style.top = idDivToolbar.offsetHeight + "px";
var h = document.documentElement.clientHeight - idDivToolbar.offsetHeight - idDivToolbar2.offsetHeight;
if(h<0) h = 0;
OverflowContainer.style.height = h + "px";
idDivToolbar2.style.visibility = "visible";
idDivToolbar2.style.top = (idDivToolbar.offsetHeight + h) + "px";
ChangeZoomSpecial(g_zoomLayout);
PositionPages(g_nDispPage);
}
function HandleError(message, url, line)
{
var L_Internal_ErrorMessage = "發生內部錯誤,因此 Internet Explorer 無法列印此文件。";
alert(L_Internal_ErrorMessage);
window.close();
return true;
}
function OnRectComplete(strDoc, strElement, ObsoleteCookie)
{
if (!g_aDocTree[strDoc])
{
HandleError("Document " + strDoc + " does not exist.", document.URL, "OnRectComplete");
return;
}
if (ObsoleteCookie == g_ObsoleteBar)
{
var contentOverflow = (document.getElementById(strElement).msRegionOverflow == "overflow");
PostTimeoutTask("OnRectCompleteNext('" + strDoc + "', " + contentOverflow + ",'" + strElement + "'," + ObsoleteCookie + ");", 1, 1);
}
}
function OnRectCompleteNext( strDoc, fOverflow, strElement, ObsoleteCookie)
{
if (ObsoleteCookie == g_ObsoleteBar)
{
g_aDocTree[strDoc].RectComplete(fOverflow, strElement);
}
}
function enableButton(img)
{
var imgname = img.id;
if (img == begin || img == end || img == prev || img == next)
{
imgname = img.value;
}
img.disabled = false;
if (g_imgUnderMouse == img)
{
if(g_imgDown==img)
{
img.src = imgname + "_down.png";
}
else
{
img.src = imgname + "_hover.png";
}
}
else
{
img.src = imgname + ".png";
}
}
function disableButton(img)
{
var imgname = img.id;
if (img == begin || img == end || img == prev || img == next)
{
imgname = img.value;
}
img.disabled = true;
img.src = imgname + "_disabled.png";
}
function updateNavButtons()
{
if (g_nDispPage == 1)
{
disableButton(begin);
disableButton(prev);
}
else
{
enableButton(begin);
enableButton(prev);
}
if (TotalDisplayPages() - g_nDispPage < g_cxDisplaySlots * g_cyDisplaySlots)
{
disableButton(next);
disableButton(end);
}
else
{
enableButton(next);
enableButton(end);
}
}
function UpdateOrientationButtons()
{
if (g_strOrientation != Printer.orientation)
{
g_strOrientation = Printer.orientation;
}
if (g_strOrientation == "portrait")
{
disableButton(portrait);
enableButton(landscape);
}
else
{
disableButton(landscape);
enableButton(portrait);
}
}
function buttonOver()
{
var imgSrc = event.srcElement;
if(imgSrc.disabled) return;
g_imgUnderMouse = imgSrc;
if (imgSrc == begin ||
imgSrc == prev ||
imgSrc == next ||
imgSrc == end)
{
updateNavButtons();
}
else
{
if(g_imgDown==imgSrc)
{
imgSrc.src= "" + imgSrc.id + "_down.png";
}
else
{
imgSrc.src= "" + imgSrc.id + "_hover.png";
}
}
}
function buttonOut()
{
var imgSrc = event.srcElement;
if(imgSrc.disabled) return;
g_imgUnderMouse = null;
if (imgSrc == begin || imgSrc == prev ||
imgSrc == next || imgSrc == end)
{
updateNavButtons();
}
else
{
imgSrc.src= "" + imgSrc.id + ".png";
}
}
function buttonDown()
{
if(event.buttons!=1) return;
var imgSrc = event.srcElement;
if(imgSrc.disabled) return;
var imgname = imgSrc.id;
if (imgSrc == begin || imgSrc == end
|| imgSrc == next || imgSrc == prev)
{
imgname = imgSrc.value;
}
imgSrc.src= "" + imgname + "_down.png";
g_imgDown = imgSrc;
g_imgDown.setPointerCapture(event.pointerId);
}
function buttonUp()
{
var imgSrc = event.srcElement;
if(imgSrc.disabled) return;
if(g_imgDown!=null) {
var imgname = g_imgDown.id;
if (g_imgDown == begin || g_imgDown == end
|| g_imgDown == next || g_imgDown == prev)
{
imgname = g_imgDown.value;
}
if(g_imgUnderMouse==g_imgDown)
{
g_imgDown.src= "" + imgname + "_hover.png";
}
else
{
g_imgDown.src= "" + imgname + ".png";
}
g_imgDown = null;
}
}
function HandlePageSelect()
{
event.srcElement.value = ChangeDispPage(parseInt(inputPageNum.value));
MasterContainer.focus();
}
function HandleCustomScaleSelect()
{
var scale = parseInt(inputCustomScale.value);
if(isNaN(scale)) scale = 100;
if (scale < 30)
{
scale = 30;
}
if (scale > 999)
{
scale = 999;
}
inputCustomScale.value = scale;
if(g_nScalePercent!=scale)
{
g_nScalePercent = scale;
EnsureDocuments(true);
}
MasterContainer.focus();
}
function HandleInputKeyPress()
{
var keyStroke = event.keyCode;
if (keyStroke == 13)
{
event.srcElement.onchange();
return false;
}
else if (keyStroke < 48 || keyStroke > 57)
{
event.returnValue = false;
}
}
function HandleScaleSelect()
{
var oldScale = g_nScalePercent;
g_nScalePercent = parseInt(selectScale.options[selectScale.selectedIndex].value);
g_fCheckAutoFit = false;
g_fCheckOrphan = false;
if (g_nScalePercent == (-1))
{
g_nScalePercent = 100;
g_fCheckAutoFit = true;
g_fCheckOrphan = true;
cellCustomScale.style.display = "none";
EnsureDocuments(true);
}
else if(g_nScalePercent == (0))
{
g_nScalePercent = oldScale;
cellCustomScale.style.display = "";
inputCustomScale.value = oldScale;
inputCustomScale.select();
}
else
{
cellCustomScale.style.display = "none";
EnsureDocuments(true);
}
printimg.scrollIntoView();
}
function HandlePageSetup()
{
if (Printer.showPageSetupDialog())
{
g_oUserOverrideForMargins.left = Printer.marginLeft / 100;
g_oUserOverrideForMargins.right = Printer.marginRight / 100;
g_oUserOverrideForMargins.top = Printer.marginTop / 100;
g_oUserOverrideForMargins.bottom = Printer.marginBottom / 100;
UpdateOrientationButtons();
if (dialogArguments.__IE_ShrinkToFit)
{
if (!g_bSTF)
{
selectScale.options.add(g_oOptionSTF, 0);
selectScale.selectedIndex = 0;
g_oOptionSTF = null;
}
}
else
{
if (g_bSTF)
{
g_oOptionSTF = selectScale.options[0];
selectScale.options.remove(0);
selectScale.selectedIndex = 8;
HandleScaleSelect();
}
}
var bPSBackground = dialogArguments.__IE_PrintBackground;
if (bPSBackground != g_bPrintBackground)
{
g_bPrintBackground = bPSBackground;
for (i in g_aDocTree)
{
g_aDocTree[i].ContentDocument().updateSettings();
}
}
if (IsShrinkToFit())
{
g_nScalePercent = 100;
g_fCheckAutoFit = true;
g_fCheckOrphan = true;
EnsureDocuments(true);
}
else
{
EnsureDocuments(false);
}
}
}
function HandleHelp()
{
var w = Math.floor(document.documentElement.offsetWidth*0.75);
var h = Math.floor(document.documentElement.offsetHeight*0.75);
try
{
window.open("http://go.microsoft.com/fwlink/?LinkId=127847","_blank","scrollbars=yes,width="+w+",height="+h);
}
catch (error)
{
var objShell = new ActiveXObject("Shell.Application");
objShell.ShellExecute("http://go.microsoft.com/fwlink/?LinkId=127847", "", "", "open", 1);
}
event.cancelBubble = true;
return false;
}
function HandleForwardPage()
{
ChangeDispPage(g_nDispPage + 1);
}
function HandleBackPage()
{
ChangeDispPage(g_nDispPage - 1);
}
function HandleFirstPage()
{
ChangeDispPage(1);
}
function HandleLastPage()
{
ChangeDispPage(TotalDisplayPages());
}
function HandleHeaders()
{
if (!g_fPrintManagerMode)
{
g_fPrintHeaderFooter = !g_fPrintHeaderFooter;
}
else
{
g_fPrintHeaderFooter = Printer.showHeaderFooter;
}
var oRule = GetRuleFromSelector(".divHead");
if (oRule == null)
{
HandleError("'.divHead' rule does not exist!", document.URL, "HandleHeaders()");
}
oRule.style.display = g_fPrintHeaderFooter ? "inline" : "none";
oRule = GetRuleFromSelector(".divFoot");
if (oRule == null)
{
HandleError("'.divFoot' rule does not exist!", document.URL, "HandleHeaders()");
}
oRule.style.display = g_fPrintHeaderFooter ? "inline" : "none";
}
function HandleLandscape()
{
HandleOrient(false);
}
function HandlePortrait()
{
HandleOrient(true);
}
function HandleOrient(fPortrait)
{
var newOrient;
if (fPortrait)
{
newOrient = "portrait";
}
else
{
newOrient = "landscape";
}
if(newOrient==g_strOrientation) return;
g_strOrientation = newOrient;
var ml = Printer.marginLeft;
var mr = Printer.marginRight;
var mt = Printer.marginTop;
var mb = Printer.marginBottom;
Printer.orientation = g_strOrientation;
Printer.marginLeft = mt;
Printer.marginRight = mb;
Printer.marginTop = ml;
Printer.marginBottom = mr;
UpdateOrientationButtons();
ReflowDocument();
}
function HandleFramesetSelect()
{
UndisplayPages();
var newFramesetLayout = parseInt(selectFrameset.options[selectFrameset.selectedIndex].value);
var isShrinkToFit = IsShrinkToFit();
if (isShrinkToFit)
{
g_nScalePercent = 100;
g_fCheckAutoFit = true;
g_fCheckOrphan = true;
}
ChangeFramesetLayout(newFramesetLayout, false);
if (isShrinkToFit)
{
EnsureDocuments(true);
}
printimg.scrollIntoView();
}
function HandleZoomWidthButton()
{
ChangeZoomSpecial(-1);
g_zoomPageCount = 1;
selectPages.selectedIndex = 0;
}
function HandleZoomPageButton()
{
ChangeZoomSpecial(-2);
g_zoomPageCount = 1;
selectPages.selectedIndex = 0;
}
function getLeft(elm) {
if(elm==null) {
return 0;
} else {
var sz = getLeft(elm.offsetParent);
return sz + elm.offsetLeft;
}
}
function getTop(elm) {
if(elm==null) {
return 0;
} else {
var sz = getTop(elm.offsetParent);
return sz + elm.offsetTop;
}
}
function HandleZoomMultiPageSelect()
{
g_zoomPageCount = parseInt(selectPages.options[selectPages.selectedIndex].value);
UpdateZoomMultiPage();
}
function HandleZoomMultiPageClick(pageCount)
{
g_zoomPageCount = pageCount;
UpdateZoomMultiPage()
}
function UpdateZoomMultiPage()
{
switch(g_zoomPageCount) {
case 2:
HandleZoomMultiPage(2,1);
break;
case 3:
HandleZoomMultiPage(3,1);
break;
case 6:
HandleZoomMultiPage(3,2);
break;
case 12:
HandleZoomMultiPage(4,3);
break;
default:
ChangeZoomSpecial(-2);
break;
}
printimg.scrollIntoView();
}
function HandleZoomMultiPage(x,y)
{
g_zoomLayoutX = x;
g_zoomLayoutY = y;
ChangeZoomSpecial(0);
}
function HandleDeferredClick(handler)
{
return function ()
{
if (!g_fClickHandlerPending)
{
g_fClickHandlerPending = true;
setTimeout(function () {
handler();
g_fClickHandlerPending = false;
}, 0);
}
};
}
function HandlePrintClick()
{
PrintNow(true);
}
var g_sMarginItemID;
var g_nMarginStartingPos;
var g_nMarginImageOffset;
var g_nMarginLowerLimit;
var g_nMarginUpperLimit;
function HandleMarginPointerDown()
{
if(event.buttons!=1) return;
if(g_zoomLayout!=-2) return;
var posX = event.x;
var posY = event.y;
if(g_nDispPage <= 0) return;
var oPage = DisplayPage(g_nDispPage);
if(null == oPage) return;
var oPageCS = getComputedStyle(oPage);
var pageOffsetX;
var pageOffsetY = parseInt(oPageCS.top);
if(g_fRTL)
{
pageOffsetX = parseInt(oPageCS.right);
}
else
{
pageOffsetX = parseInt(oPageCS.left);
}
var xPageWidth = getPageWidth();
var yPageHeight = getPageHeight();
switch(event.srcElement.id)
{
case "maLeft":
g_nMarginStartingPos = posX;
g_nMarginImageOffset = maLeft.offsetLeft - posX;
g_nMarginLowerLimit = (pageOffsetX * g_nZoomLevel/100) - 10;
g_nMarginUpperLimit = g_nMarginLowerLimit + ((xPageWidth - ((g_nMarginRight+0.5)*g_nScreenDPI)) * g_nZoomLevel/100);
break;
case "maRight":
g_nMarginStartingPos = posX;
g_nMarginImageOffset = maRight.offsetLeft - posX;
g_nMarginLowerLimit = (pageOffsetX * g_nZoomLevel/100) - 10;
g_nMarginUpperLimit = g_nMarginLowerLimit + (xPageWidth * g_nZoomLevel/100);
g_nMarginLowerLimit += ((g_nMarginLeft+0.5)*g_nScreenDPI) * g_nZoomLevel/100;
break;
case "maTop":
g_nMarginStartingPos = posY;
g_nMarginImageOffset = maTop.offsetTop - posY;
g_nMarginLowerLimit = (pageOffsetY * g_nZoomLevel/100) - 10;
g_nMarginUpperLimit = g_nMarginLowerLimit + ((yPageHeight - ((g_nMarginBottom+0.5)*g_nScreenDPI)) * g_nZoomLevel/100);
break;
case "maBottom":
g_nMarginStartingPos = posY;
g_nMarginImageOffset = maBottom.offsetTop - posY;
g_nMarginLowerLimit = (pageOffsetY * g_nZoomLevel/100) - 10;
g_nMarginUpperLimit = g_nMarginLowerLimit + (yPageHeight * g_nZoomLevel/100);
g_nMarginLowerLimit += ((g_nMarginTop+0.5)*g_nScreenDPI) * g_nZoomLevel/100;
break;
default:
return;
}
g_sMarginItemID = event.srcElement.id;
UpdateMarginBox();
OverflowContainer.setPointerCapture(event.pointerId);
}
function ReflowDocument()
{
if(IsShrinkToFit())
{
g_nScalePercent = 100;
g_fCheckAutoFit = true;
g_fCheckOrphan = true;
}
EnsureDocuments(true);
}
function IsShrinkToFit()
{
return parseInt(selectScale.options[selectScale.selectedIndex].value) == (-1);
}
function UpdateMarginBox()
{
MarginBox.style.left = (parseInt(getComputedStyle(maLeft).left) + 10) + "px";
MarginBox.style.width = (parseInt(getComputedStyle(maRight).left) - parseInt(getComputedStyle(maLeft).left)) + "px";
MarginBox.style.top = (parseInt(getComputedStyle(maTop).top) + 10) + "px";
MarginBox.style.height = (parseInt(getComputedStyle(maBottom).top) - parseInt(getComputedStyle(maTop).top)) + "px";
MarginBox.style.display = "block";
}
function HandleMarginPointerUp()
{
if(g_sMarginItemID==null) return;
if(((g_sMarginItemID=="maLeft" || g_sMarginItemID=="maRight") && g_nMarginStartingPos==event.x)
|| ((g_sMarginItemID=="maTop" || g_sMarginItemID=="maBottom") && g_nMarginStartingPos==event.y))
{
g_sMarginItemID = null;
MarginBox.style.display = "none";
return;
}
var posX = event.x + g_nMarginImageOffset + 10;
var posY = event.y + g_nMarginImageOffset + 10;
posX *= 100/g_nZoomLevel;
posY *= 100/g_nZoomLevel;
var oPage = DisplayPage(g_nDispPage);
var oPageCS = getComputedStyle(oPage);
var pageOffsetX;
var pageOffsetY = parseInt(oPageCS.top);
var xPageWidth = getPageWidth();
var yPageHeight = getPageHeight();
var fReflow = false;
var limit;
if(g_fRTL)
{
pageOffsetX = parseInt(oPageCS.right);
}
else
{
pageOffsetX = parseInt(oPageCS.left);
}
switch(g_sMarginItemID)
{
case "maLeft":
var newLeft = Math.floor((posX - pageOffsetX) * 100 / g_nScreenDPI);
limit = Printer.pageWidth - Printer.marginRight - 50;
if(newLeft > limit) newLeft = limit;
if(newLeft<0) newLeft = 0;
if(Printer.marginLeft!=newLeft)
{
Printer.marginLeft = newLeft;
g_oUserOverrideForMargins.left = newLeft / 100;
g_oUserOverrideForMargins.right = g_nMarginRight;
g_oUserOverrideForMargins.top = g_nMarginTop;
g_oUserOverrideForMargins.bottom = g_nMarginBottom;
fReflow = true;
}
break;
case "maRight":
var newRight = Math.floor((pageOffsetX + xPageWidth - posX) * 100 / g_nScreenDPI);
limit = Math.floor((g_nPageWidth-g_nMarginLeft-0.5)*100);
if(newRight > limit) newRight = limit;
if(newRight<0) newRight = 0;
if(Printer.marginRight!=newRight)
{
Printer.marginRight = newRight;
g_oUserOverrideForMargins.left = g_nMarginLeft;
g_oUserOverrideForMargins.right = newRight / 100;
g_oUserOverrideForMargins.top = g_nMarginTop;
g_oUserOverrideForMargins.bottom = g_nMarginBottom;
fReflow = true;
}
break;
case "maTop":
var newTop = Math.floor((posY - pageOffsetY) * 100 / g_nScreenDPI);
limit = Math.floor((g_nPageHeight-g_nMarginBottom-0.5)*100);
if(newTop > limit) newTop = limit;
if(newTop<0) newTop = 0;
if(Printer.marginTop != newTop)
{
Printer.marginTop = newTop;
g_oUserOverrideForMargins.left = g_nMarginLeft;
g_oUserOverrideForMargins.right = g_nMarginRight;
g_oUserOverrideForMargins.top = newTop / 100;
g_oUserOverrideForMargins.bottom = g_nMarginBottom;
fReflow = true;
}
break;
case "maBottom":
var newBottom = Math.floor((pageOffsetY + yPageHeight - posY) * 100 / g_nScreenDPI);
if(newBottom<0) newBottom = 0;
limit = Math.floor((g_nPageHeight-g_nMarginTop-0.5)*100);
if(newBottom > limit) newBottom = limit;
if(Printer.marginBottom != newBottom)
{
Printer.marginBottom = newBottom;
g_oUserOverrideForMargins.left = g_nMarginLeft;
g_oUserOverrideForMargins.right = g_nMarginRight;
g_oUserOverrideForMargins.top = g_nMarginTop;
g_oUserOverrideForMargins.bottom = newBottom / 100;
fReflow = true;
}
break;
}
if(fReflow)
{
ReflowDocument();
}
else
{
PositionPages(g_nDispPage);
}
g_sMarginItemID = null;
MarginBox.style.display = "none";
}
function HandleMarginPointerMove()
{
if(g_sMarginItemID==null) return;
var posX = event.x + g_nMarginImageOffset;
var posY = event.y + g_nMarginImageOffset;
switch(g_sMarginItemID)
{
case "maLeft":
if(posX < g_nMarginLowerLimit) posX = g_nMarginLowerLimit;
if(posX > g_nMarginUpperLimit) posX = g_nMarginUpperLimit;
maLeft.style.left = posX + "px";
break;
case "maRight":
if(posX < g_nMarginLowerLimit) posX = g_nMarginLowerLimit;
if(posX > g_nMarginUpperLimit) posX = g_nMarginUpperLimit;
maRight.style.left = posX + "px";
break;
case "maTop":
if(posY < g_nMarginLowerLimit) posY = g_nMarginLowerLimit;
if(posY > g_nMarginUpperLimit) posY = g_nMarginUpperLimit;
maTop.style.top = posY + "px";
break;
case "maBottom":
if(posY < g_nMarginLowerLimit) posY = g_nMarginLowerLimit;
if(posY > g_nMarginUpperLimit) posY = g_nMarginUpperLimit;
maBottom.style.top = posY + "px";
break;
}
UpdateMarginBox();
}
function UpdateFramesetSelect()
{
if(g_aDocTree["S"]==null)
{
selectFrameset.options.remove(3);
}
if ( g_aDocTree["C"]._fFrameset )
{
if (!g_strActiveFrame)
{
selectFrameset.options.remove(1);
}
separatorFrameset.style.display = "";
cellFrameset.style.display = "";
}
if(g_aDocTree["S"]!=null)
{
if(!g_aDocTree["C"]._fFrameset)
{
selectFrameset.options.remove(2);
selectFrameset.options.remove(1);
}
if(g_nFramesetLayout == 3)
{
idSelection.selected = true;
}
separatorFrameset.style.display = "";
cellFrameset.style.display = "";
}
}
function getPageWidth()
{
return g_aDocTree["C"].Pages() > 0 ? g_aDocTree["C"].Page(1).offsetWidth : EmptyPage.offsetWidth;
}
function getPageHeight()
{
return g_aDocTree["C"].Pages() > 0 ? g_aDocTree["C"].Page(1).offsetHeight : EmptyPage.offsetHeight;
}
function UndisplayPages()
{
while (g_cPagesDisplayed > 0)
{
var oPage = DisplayPage(g_nDispPage + g_cPagesDisplayed - 1);
if (oPage != null)
{
oPage.style.top = "-20000px";
if (g_fRTL)
{
oPage.style.right = "10px";
}
else
{
oPage.style.left = "10px";
}
}
g_cPagesDisplayed--;
}
var oAnchorRule = GetRuleFromSelector(".MarginAnchor");
oAnchorRule.style.display = "none";
}
function PositionPages(nDispPage)
{
var fRendering = false;
if((g_fCheckAutoFit || g_fCheckOrphan) && g_nDocsToCalc>0) {
UndisplayPages();
fRendering = true;
}
var strDispDoc = DisplayDocument(nDispPage);
if (g_aDocTree != null &&
g_aDocTree[strDispDoc] != null)
{
fRendering |= (g_aDocTree[strDispDoc].Pages() == 0);
if (fRendering)
{
EmptyPage.style.display = "block";
}
else
{
EmptyPage.style.display = "none";
}
UndisplayPages();
RecalculateZoom();
var xPageWidth = getPageWidth();
var yPageHeight = getPageHeight();
var nMaxPage = TotalDisplayPages();
var xContainerWidth = (OverflowContainer.offsetWidth)*100/g_nZoomLevel;
var yContainerHeight = OverflowContainer.offsetHeight*100/g_nZoomLevel;
if(g_zoomLayout==0) {
g_cxDisplaySlots = g_zoomLayoutX;
g_cyDisplaySlots = g_zoomLayoutY;
} else {
g_cxDisplaySlots = 1;
g_cyDisplaySlots = 1;
}
var yOff = (yContainerHeight - (g_cyDisplaySlots * yPageHeight) - ((g_cyDisplaySlots-1)*10)) / 2;
if(yOff<0)
{
xContainerWidth -= 20*100/g_nZoomLevel;
yOff = 10;
}
var xOff = (xContainerWidth - (g_cxDisplaySlots * xPageWidth) - ((g_cxDisplaySlots-1)*10)) / 2;
if(xOff<0) xOff = 0;
if(fRendering)
{
if (g_fRTL)
{
EmptyPage.style.right = xOff + "px";
}
else
{
EmptyPage.style.left = xOff + "px";
}
EmptyPage.style.top = yOff + "px";
return;
}
var nMaxPageRequest = Math.max(nMaxPage - g_cxDisplaySlots * g_cyDisplaySlots + 1, 1);
if (nDispPage < 1)
{
nDispPage = 1;
}
else if (nDispPage > nMaxPageRequest)
{
nDispPage = nMaxPageRequest;
}
g_nDispPage = nDispPage;
document.all.spanPageTotal.innerText = nMaxPage;
document.all.inputPageNum.value = g_nDispPage;
updateNavButtons();
var xDisplaySlot = 1;
var yDisplaySlot = 1;
var iPage = g_nDispPage;
g_cPagesDisplayed = 0;
while (iPage <= nMaxPage && yDisplaySlot <= g_cyDisplaySlots)
{
var xPos = xOff + (xDisplaySlot-1)*(xPageWidth+10);
var yPos = yOff + (yDisplaySlot-1)*(yPageHeight+10);
var oPage = DisplayPage(iPage);
if (g_fRTL)
{
oPage.style.right = xPos + "px";
}
else
{
oPage.style.left = xPos + "px";
}
oPage.style.top = yPos + "px";
iPage++;
if (++xDisplaySlot > g_cxDisplaySlots)
{
xDisplaySlot = 1;
yDisplaySlot++;
}
g_cPagesDisplayed++;
}
var oAnchorRule = GetRuleFromSelector(".MarginAnchor");
if(g_zoomLayout==-2)
{
var oPage = DisplayPage(g_nDispPage);
var oPageCS = getComputedStyle(oPage);
var maTopBottomLeft;
if(g_fRTL)
{
maLeft.style.left = (((parseInt(oPageCS.right) * g_nZoomLevel/100) - 10) + (g_nMarginLeft * g_nScreenDPI * g_nZoomLevel/100)) + "px";
maTopBottomLeft = ((parseInt(oPageCS.right) * g_nZoomLevel/100) - 24);
maTop.style.left = maTopBottomLeft + "px";
maRight.style.left = ((((parseInt(oPageCS.right) + xPageWidth) * g_nZoomLevel/100) - 10) - (g_nMarginRight * g_nScreenDPI * g_nZoomLevel/100)) + "px";
}
else
{
maLeft.style.left = (((parseInt(oPageCS.left) * g_nZoomLevel/100) - 10) + (g_nMarginLeft * g_nScreenDPI * g_nZoomLevel/100)) + "px";
maTopBottomLeft = ((parseInt(oPageCS.left) * g_nZoomLevel/100) - 20);
maTop.style.left = maTopBottomLeft + "px";
maRight.style.left = ((((parseInt(oPageCS.left) + xPageWidth) * g_nZoomLevel/100) - 10) - (g_nMarginRight * g_nScreenDPI * g_nZoomLevel/100)) + "px";
}
var maLeftRightTop = ((parseInt(oPageCS.top) * g_nZoomLevel/100) - 20);
maLeft.style.top = maLeftRightTop + "px";
maTop.style.top = ((parseInt(oPageCS.top) * g_nZoomLevel/100 - 10) + (g_nMarginTop * g_nScreenDPI * g_nZoomLevel/100)) + "px";
maRight.style.top = maLeftRightTop + "px";
maBottom.style.left = maTopBottomLeft + "px";
maBottom.style.top = ((((parseInt(oPageCS.top) + yPageHeight) * g_nZoomLevel/100) - 10) - (g_nMarginBottom * g_nScreenDPI * g_nZoomLevel/100)) + "px";
oAnchorRule.style.display = "block";
}
else
{
oAnchorRule.style.display = "none";
}
}
}
function ChangeDispPage(nDispPageNew)
{
if (isNaN(nDispPageNew))
{
inputPageNum.value = g_nDispPage;
}
else
{
var totalPages = TotalDisplayPages();
if (nDispPageNew < 1)
{
nDispPageNew = 1;
}
else if (nDispPageNew > totalPages)
{
nDispPageNew = totalPages;
}
if((!g_fCheckAutoFit && !g_fCheckOrphan) || g_nDocsToCalc>0)
{
PositionPages(nDispPageNew);
}
}
return g_nDispPage;
}
function DisplayDocument(nWhichPage)
{
switch (g_nFramesetLayout)
{
case 0:
return "C";
break;
case 1:
return g_strActiveFrame;
break;
case 3:
return "S";
break;
case 2:
var i;
if (!nWhichPage)
return null;
;
for (i in g_aDocTree)
{
if ( nWhichPage >= g_aDocTree[i]._nStartingPage
&& nWhichPage < (g_aDocTree[i]._nStartingPage + g_aDocTree[i].Pages()))
return i;
}
break;
default:
HandleError("Display document cannot be found!", document.URL, "DisplayDocument");
break;
}
}
function TotalDisplayPages()
{
if (g_nFramesetLayout == 2)
{
return g_nTotalPages;
}
return g_aDocTree[DisplayDocument()].Pages();
}
function DisplayPage(nWhichPage)
{
;
if (g_nFramesetLayout != 2)
{
return g_aDocTree[DisplayDocument(nWhichPage)].Page(nWhichPage);
}
return g_aDocTree[DisplayDocument(nWhichPage)].Page(nWhichPage - g_aDocTree[DisplayDocument(nWhichPage)]._nStartingPage + 1);
}
function DisplayPageLayoutRect(nWhichPage)
{
var oPage = DisplayPage(nWhichPage);
if(oPage==null) return null;
var oRectColl = oPage.querySelectorAll(".mRect");
if(oRectColl==null || oRectColl.length==0) return null;
;
return oRectColl[0];
}
function MarkPageNeedsRerender(nWhichPage)
{
;
;
;
var nPageIndex = nWhichPage - 1;
var oPrintDoc = g_aDocTree[DisplayDocument(nWhichPage)];
if (g_nFramesetLayout == 2)
{
nPageIndex -= (oPrintDoc._nStartingPage - 1);
}
oPrintDoc._afRerenderPage[nPageIndex] = true;
}
function ChangeZoom()
{
PositionPages(g_nDispPage);
return g_nZoomLevel;
}
function ChangeZoomSpecial(zoomtype)
{
CalculateZoomSpecial(zoomtype);
ChangeZoom();
}
function RecalculateZoom()
{
CalculateZoomSpecial(g_zoomLayout);
}
function CalculateZoomSpecial(zoomtype)
{
var xPage = getPageWidth();
var yPage = getPageHeight();
if(xPage==0 || yPage==0) return;
var xContainer = OverflowContainer.offsetWidth;
var yContainer = OverflowContainer.offsetHeight;
if(zoomtype==0 && g_zoomLayoutX==1 && g_zoomLayoutY==1) {
zoomtype = -2;
}
var x,y;
var factor = 100;
switch(zoomtype) {
case -1:
factor = Math.floor(((xContainer - 40)*100)/xPage);
break;
case -2:
x = Math.floor(((xContainer - 40)*100)/xPage);
y = Math.floor(((yContainer - 40)*100)/yPage);
factor = Math.min(x,y);
break;
case 0:
x = Math.floor(((xContainer - 20)*100)/((xPage+10)*g_zoomLayoutX));
y = Math.floor(((yContainer - 20)*100)/((yPage+10)*g_zoomLayoutY));
factor = Math.min(x,y);
break;
default:
return;
}
if(factor<10) factor = 10;
else if(factor>1000) factor = 1000;
g_zoomLayout = zoomtype;
g_nZoomLevel = factor;
}
function CreateDocument(docURL, strDocID)
{
if (g_aDocTree[strDocID])
{
return;
}
g_aDocTree[strDocID] = new CPrintDoc(strDocID, docURL);
g_aDocTree[strDocID].InitDocument();
g_nDocsToCalc++;
}
function ChangeFramesetLayout(nNewLayout, fForce)
{
if (g_nFramesetLayout == nNewLayout && !fForce)
{
return;
}
if (!g_fPrintManagerMode)
{
UndisplayPages();
}
g_nFramesetLayout = nNewLayout;
switch (nNewLayout)
{
case 0:
case 1:
case 3:
break;
case 2:
g_nTotalPages = 0;
var i;
for (i in g_aDocTree)
{
if (g_aDocTree[i]._fFrameset || i == "S")
{
g_aDocTree[i]._nStartingPage = 0;
}
else
{
g_aDocTree[i]._nStartingPage = g_nTotalPages + 1;
g_nTotalPages += g_aDocTree[i].Pages();
}
}
break;
default:
HandleError("Impossible frameset layout type: " + nNewLayout, document.URL, "ChangeFramesetLayout");
break;
}
if (!g_fPrintManagerMode)
{
ChangeDispPage(1);
}
}
function EnsureDocuments(fForceRepaginate)
{
var i;
var tmp;
var top = Printer.marginTop / 100;
var bottom = Printer.marginBottom / 100;
var left = Printer.marginLeft / 100;
var right = Printer.marginRight / 100;
var pageWidth = Printer.pageWidth / 100;
var pageHeight = Printer.pageHeight / 100;
var upTop = Printer.unprintableTop / 100;
var upBottom = Printer.unprintableBottom / 100;
var header = Printer.header;
var footer = Printer.footer;
var bSTF = dialogArguments.__IE_ShrinkToFit;
var strHeaderFooterFont = Printer.headerFooterfont;
if (g_fPrintManagerMode)
{
bSTF = Printer.shrinkToFit;
}
if (header)
{
tmp = upTop + (27 / 100);
if (tmp > top)
{
top = tmp;
}
}
if (footer)
{
tmp = upBottom + (27 / 100);
if (tmp > bottom)
{
bottom = tmp;
}
}
if (upTop != g_nUnprintTop)
{
g_nUnprintTop = upTop;
var oRule = GetRuleFromSelector(".divHead");
if (oRule == null)
{
HandleError("'.divHead' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
oRule.style.top = upTop + "in";
if(g_fRTL)
{
oRule.style.direction = "rtl";
}
}
if (upBottom != g_nUnprintBottom)
{
g_nUnprintBottom= upBottom;
var oRule = GetRuleFromSelector(".divFoot");
if (oRule == null)
{
HandleError("'.divFoot' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
oRule.style.bottom = upBottom + "in";
if(g_fRTL)
{
oRule.style.direction = "rtl";
}
}
if (g_fPrintManagerMode)
{
HandleHeaders();
var nScalePercent = Printer.percentScale;
if (nScalePercent != g_nScalePercent)
{
if (!bSTF)
{
g_nScalePercent = nScalePercent;
}
fForceRepaginate = true;
}
}
var oMarginsAtPage = GetAuthorSpecifiedMargins("");
var oMarginsAtPageFirst = GetAuthorSpecifiedMargins("first");
var oMarginsAtPageLeft = GetAuthorSpecifiedMargins("left");
var oMarginsAtPageRight = GetAuthorSpecifiedMargins("right");
if (top != g_nMarginTop ||
bottom != g_nMarginBottom ||
left != g_nMarginLeft ||
right != g_nMarginRight ||
pageWidth != g_nPageWidth ||
pageHeight != g_nPageHeight ||
header != g_strHeader ||
footer != g_strFooter ||
strHeaderFooterFont != g_strHeaderFooterFont ||
!CompareMarginObjects(oMarginsAtPage, g_oMarginsAtPage) ||
!CompareMarginObjects(oMarginsAtPageFirst, g_oMarginsAtPageFirst) ||
!CompareMarginObjects(oMarginsAtPageLeft, g_oMarginsAtPageLeft) ||
!CompareMarginObjects(oMarginsAtPageRight, g_oMarginsAtPageRight) ||
bSTF != g_bSTF ||
fForceRepaginate == true)
{
g_nMarginTop = top;
g_nMarginBottom = bottom;
g_nMarginLeft = left;
g_nMarginRight = right;
g_nPageWidth = pageWidth;
g_nPageHeight = pageHeight;
g_strHeader = header;
g_strFooter = footer;
g_bSTF = bSTF;
g_strHeaderFooterFont = strHeaderFooterFont
g_oMarginsAtPage = oMarginsAtPage;
g_oMarginsAtPageFirst = oMarginsAtPageFirst;
g_oMarginsAtPageLeft = oMarginsAtPageLeft;
g_oMarginsAtPageRight = oMarginsAtPageRight;
HeadFoot.textHead = g_strHeader;
HeadFoot.textFoot = g_strFooter;
HeadFoot.font = g_strHeaderFooterFont;
if (!g_fPrintManagerMode)
{
UndisplayPages();
}
g_nTotalPages = 0;
g_nDocsToCalc = 0;
for (i in g_aDocTree)
{
g_nDocsToCalc++;
g_aDocTree[i].ResetDocument();
}
g_ObsoleteBar++;
var oRule;
oRule = GetRuleFromSelector(".page");
if (oRule == null)
{
HandleError("'.page' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
oRule.style.width = pageWidth + "in";
oRule.style.height = pageHeight + "in";
oRule = GetRuleFromSelector(".mRect");
if (oRule == null)
{
HandleError("'.mRect' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
oRule.style.marginLeft = left + "in";
oRule.style.marginRight = right + "in";
oRule.style.marginTop = top + "in";
oRule.style.marginBottom = bottom + "in";
var transformScale = g_nScalePercent / 100;
oRule.style.transform = "scale(" + transformScale + "," + transformScale + ")";
oRule.style.transformOrigin = g_fRTL ? "top right" : "top left";
ApplyAuthorSpecifiedMargins("AtPage", oMarginsAtPage);
ApplyAuthorSpecifiedMargins("AtPageFirst", oMarginsAtPageFirst);
ApplyAuthorSpecifiedMargins("AtPageLeft", oMarginsAtPageLeft);
ApplyAuthorSpecifiedMargins("AtPageRight", oMarginsAtPageRight);
if (g_fPageProgressionDetermined)
{
ApplyPageSizeAndGlobalMargins();
}
for (i in g_aDocTree)
{
g_aDocTree[i].InitDocument();
}
if (g_nFramesetLayout == 2)
{
ChangeFramesetLayout(g_nFramesetLayout, true);
}
if (!g_fPrintManagerMode)
{
PositionPages(g_nDispPage);
}
}
}
function CalcAutoFit()
{
var docWidthPx = 0;
var docWidthIn = 0;
var printerWidth = Printer.pageWidth / 100;
var scale = 100;
var docClientWidthPx = 0;
if (g_nScreenDPI == 0)
{
return scale;
}
printerWidth -= g_nMarginLeft;
printerWidth -= g_nMarginRight;
var nCount = TotalDisplayPages();
var i;
for(i = 1; i<=nCount; i++)
{
var oRect = DisplayPageLayoutRect(i);
if(oRect!=null)
{
if (oRect.scrollWidth > docWidthPx)
{
docWidthPx = oRect.scrollWidth;
}
if (oRect.clientWidth > docClientWidthPx)
{
docClientWidthPx = oRect.clientWidth;
}
}
}
docWidthIn = docWidthPx * (1/g_nScreenDPI);
if (docWidthPx == 0 || docClientWidthPx >= docWidthPx)
{
return scale;
}
scale = (printerWidth / docWidthIn) * 100;
scale = Math.floor(scale+0.05);
if (scale < 30)
{
scale = 30;
}
if (scale > 100)
{
scale = 100;
}
return scale;
}
function CalcPageCoverage(nWhichPage)
{
var printerHeight = Printer.pageHeight / 100;
printerHeight -= g_nMarginTop;
printerHeight -= g_nMarginBottom;
if(printerHeight <= 0) return 100;
var oRect = DisplayPageLayoutRect(nWhichPage);
if(g_nScreenDPI==0) return 100;
var layoutHeight = oRect.scrollHeight/g_nScreenDPI;
var pageCoverage = layoutHeight * 100 / printerHeight;
return pageCoverage;
}
function IsOrphaned()
{
if((g_nFramesetLayout!=0 && g_nFramesetLayout!=1) || TotalDisplayPages()!=2)
{
return false;
}
return CalcPageCoverage(2) < 10;
}
function CalcOrphanRemovalScale()
{
var scale = 100;
var printerHeight = Printer.pageHeight / 100;
printerHeight -= g_nMarginTop;
printerHeight -= g_nMarginBottom;
if(printerHeight <= 0) return scale;
var oSecondRect = DisplayPageLayoutRect(2);
if(oSecondRect==null) return scale;
if(g_nScreenDPI==0) return false;
var totalHeight = oSecondRect.scrollHeight;
totalHeight = totalHeight / g_nScreenDPI;
totalHeight += printerHeight;
if(totalHeight <= 0) return scale;
scale = printerHeight*100/totalHeight;
scale = Math.floor(scale+0.05);
if(scale>100) scale = 100;
return scale;
}
function Close()
{
UpdatePageStatusForClose();
window.close();
}
var g_fUpdatedPageStatusForClose = false;
function UpdatePageStatusForClose()
{
if (g_fUpdatedPageStatusForClose)
{
return;
}
g_fUpdatedPageStatusForClose = true;
if (!g_fPrintManagerMode)
{
Printer.updatePageStatus(-1);
}
else
{
if (dialogArguments.__IE_TrackPrintJob)
{
try
{
Printer.updatePageStatus(-1);
}
catch(e)
{
}
}
}
}
function PrintAll()
{
var i;
var nFirstDoc;
if (g_nFramesLeft > 0 && Printer.framesetDocument && !Printer.frameAsShown)
{
PostTimeoutTask("PrintAll()", 100, 5);
return;
}
EnsureDocuments(false);
if (Printer.copies <= 0)
{
Close();
}
else if (Printer.selectedPages && Printer.pageFrom > Printer.pageTo )
{
var L_PAGERANGE_ErrorMessage = "[從] 的值不能比 [到] 的值大。";
alert(L_PAGERANGE_ErrorMessage);
if (g_fPrintManagerMode)
{
Close();
}
else
{
;
if (!g_fPreview)
PrintNow(true);
}
}
else
{
g_cLeftToPrint = 1;
if (!g_fPrintManagerMode)
{
Printer.updatePageStatus(1);
}
var strSel;
if (Printer.selection)
{
strSel = "S";
}
else if (Printer.frameActive && !!g_strActiveFrame)
{
strSel = g_strActiveFrame;
}
else
{
strSel = "C";
}
PrintSentinel(strSel, true);
}
}
function PrintSentinel(strDoc, fRecursionOK)
{
if (g_fCheckAutoFit || g_fCheckOrphan || !g_aDocTree[strDoc] || !g_aDocTree[strDoc].ReadyToPrint())
{
PostTimeoutTask("PrintSentinel('" + strDoc + "'," + fRecursionOK + ");", 500, 10);
return;
}
g_aDocTree[strDoc].Print(fRecursionOK);
}
function PrintDocumentComplete()
{
g_cLeftToPrint--;
if (g_cLeftToPrint <= 0)
{
if (g_fPrintManagerMode)
{
Printer.endPrint();
}
Close();
}
}
function PrintNow(fWithPrompt)
{
if (!g_aDocTree["C"] ||
!g_aDocTree["C"].ContentDocument() ||
(g_fHasBody && !g_aDocTree["C"].ContentDocument().body) ||
(!g_fHasBody && !g_aDocTree["C"].ContentDocument().documentElement))
{
PostTimeoutTask("PrintNow('" + fWithPrompt + "');", 100, 2);
return;
}
var oDoc = g_aDocTree["C"].ContentDocument();
var fConfirmed = true;
var fFramesetDocument = (g_fHasBody && oDoc.body.tagName.toUpperCase() == "FRAMESET");
var fActiveFrame = (oDoc.documentElement.getAttribute('__IE_ActiveFrame') != null);
Printer.framesetDocument = fFramesetDocument;
Printer.frameActiveEnabled = fActiveFrame;
Printer.frameActive = (g_nFramesetLayout == 1 || g_nFramesetLayout == 3);
Printer.frameAsShown = (g_nFramesetLayout == 0);
if (g_fPreview)
{
Printer.currentPageAvail = true;
}
else
{
Printer.currentPageAvail = false;
}
Printer.selectionEnabled = !!(dialogArguments.__IE_ContentSelectionUrl);
Printer.selection = Printer.selectionEnabled && (g_nFramesetLayout == 3);
if (!g_fPrintManagerMode)
{
fConfirmed = (eval(fWithPrompt)) ? Printer.showPrintDialog() : Printer.ensurePrintDialogDefaults();
}
if (fConfirmed)
{
if (Printer.selection && dialogArguments.__IE_ContentSelectionUrl && g_aDocTree["S"]==null)
{
CreateDocument(dialogArguments.__IE_ContentSelectionUrl, "S");
}
if (!g_fPrintManagerMode)
{
Printer.usePrinterCopyCollate =(Printer.deviceSupports("copies") >= Printer.copies &&
(!Printer.collate || Printer.deviceSupports("collate")) );
}
PrintAll();
}
else
{
if (!g_fPreview)
{
Close();
}
}
}
function CPrintDoc_ReadyToPrint()
{
if(g_fCheckAutoFit || g_fCheckOrphan) return false;
return (this._nStatus == 3 && this.ContentDocument().readyState == "complete");
}
function CPrintDoc_Print(fRecursionOK)
{
if (!this.ReadyToPrint())
{
HandleError("Printing when not ready!", document.URL, "CPrintDoc::Print");
return;
}
var nCount = (Printer.usePrinterCopyCollate) ? 1 : Printer.copies;
var nFrom;
var nTo;
;
if (fRecursionOK)
{
var fFrameset = (g_fHasBody && this.ContentDocument().body.tagName.toUpperCase() == "FRAMESET");
if (Printer.frameActive)
{
var n = parseInt(this.ContentDocument().documentElement.getAttribute('__IE_ActiveFrame'));
if (n >= 0)
{
var oTargetFrame = (fFrameset)
? this.ContentDocument().getElementsByTagName("frame").item(n)
: this.ContentDocument().getElementsByTagName("iframe").item(n);
this.CreateSubDocument(oTargetFrame.src);
this.PrintAllSubDocuments(true);
PrintDocumentComplete();
return;
}
}
if (fFrameset) {
if (!Printer.frameAsShown) {
this.PrintAllSubDocuments(true);
PrintDocumentComplete();
return;
}
}
}
if (Printer.selectedPages)
{
nFrom = Printer.pageFrom;
nTo = Printer.pageTo;
if (nFrom < 1)
{
nFrom = 1;
}
if (nTo > this.Pages())
{
nTo = this.Pages();
}
}
else if ( Printer.currentPage
&& this._strDoc == DisplayDocument())
{
;
var nStartPage = g_fPrintManagerMode ? Printer.pageFrom : g_nDispPage;
nFrom = (this.Pages() >= nStartPage) ? nStartPage : this.Pages();
nTo = nFrom;
}
else
{
nFrom = 1;
nTo = this.Pages();
}
if (nTo < nFrom)
{
PrintDocumentComplete();
return;
}
;
;
;
if (Printer.startDoc(this.ContentDocument().URL))
{
try
{
if (Printer.collate)
{
var fExtraPage = (Printer.duplex && ((nFrom - nTo) % 2 == 0));
var j;
for (j = 0; j < nCount; j++)
{
for (i = nFrom; i <= nTo; i++)
{
Printer.printPage(this.Page(i).children[0]);
}
if (fExtraPage)
{
Printer.printBlankPage();
}
}
}
else
{
var fDuplex = Printer.duplex;
for (i = nFrom; i <= nTo; i++)
{
for (j = 0; j < nCount; j++)
{
Printer.printPage(this.Page(i).children[0]);
if (fDuplex)
{
if (i < nTo)
{
Printer.printPage(this.Page(i+1).children[0]);
}
else
{
Printer.printBlankPage();
}
}
}
if (fDuplex)
{
i++;
}
}
}
}
catch(e)
{
HandleError(
"Internal Error occured during printPage(). This could because of a GDI or D2D failure.",
document.URL,
"CPrintDoc_Print");
}
Printer.stopDoc();
}
PrintDocumentComplete();
}
function CPrintDoc_RectComplete(fOverflow, strElement)
{
var nPage = parseInt(strElement.substr(strElement.lastIndexOf("p") + 1));
;
if (g_fPrintManagerMode &&
this._afRerenderPage[nPage])
{
;
this._afRerenderPage[nPage] = false;
var nPageGlobal = nPage + 1;
if (g_nFramesetLayout == 2)
{
nPageGlobal += (this._nStartingPage - 1);
}
PostTimeoutTask("DrawPreviewPage('" + nPageGlobal + "')", 100, 10);
}
if (nPage != this._cPage - 1)
{
return false;
}
if (this._nStatus > 1)
{
if (!fOverflow)
{
return false;
}
this.StopFixupHF();
if (this._nStatus == 3)
{
g_nDocsToCalc++;
}
this._nStatus = 1;
}
if (g_fPrintManagerMode &&
g_nPMFirstPagePreview == 3 &&
this._strDoc == DisplayDocument(1) &&
1 <= TotalDisplayPages() &&
10 < CalcPageCoverage(1))
{
Printer.drawPreviewPage(DisplayPage(1).children[0], 1);
UpdatePrintManagerFirstPagePreview(4);
}
if (fOverflow)
{
this.AddPage();
}
else
{
this._nStatus = 2;
if (this._strDoc == DisplayDocument()) {
if (!g_fPrintManagerMode)
{
ChangeDispPage(g_nDispPage);
}
}
this.FixupHF();
}
if (!g_fPrintManagerMode)
{
if (this._strDoc == DisplayDocument())
{
spanPageTotal.innerText = this.Pages();
updateNavButtons();
}
}
}
function GetGeneratedClassName(nPageNumber)
{
;
var classLayoutRect = "mRect mRectAtPage";
if (((nPageNumber % 2) == 1 && !g_fPageProgressionRTL) || ((nPageNumber % 2) == 0 && g_fPageProgressionRTL))
{
classLayoutRect += " mRectAtPageRight";
}
else
{
classLayoutRect += " mRectAtPageLeft";
}
if (nPageNumber == 1)
{
classLayoutRect += " mRectAtPageFirst";
}
classLayoutRect += " mRectUserOverride";
return classLayoutRect;
}
function CPrintDoc_AddPage()
{
var newHTM = "";
var aPage = this._aPage;
var aRect = this._aRect;
;
this._cPage++;
HeadFoot.URL = this.EnsureURL();
HeadFoot.title = this.EnsureTitle();
HeadFoot.pageTotal = this.Pages();
HeadFoot.page = HeadFoot.pageTotal;
if (this._cPage <= aPage.length)
{
var oPage = aPage[this._cPage - 1];
oPage.children("header").innerHTML = HeadFoot.htmlHead;
oPage.children("footer").innerHTML = HeadFoot.htmlFoot;
}
else
{
var nNewPageNumber = aPage.length + 1;
var classHeader = "divHead divHeadAtPage";
var classFooter = "divFoot divFootAtPage";
var classLayoutRect = GetGeneratedClassName(nNewPageNumber);
;
if (((nNewPageNumber % 2) == 1 && !g_fPageProgressionRTL) || ((nNewPageNumber % 2) == 0 && g_fPageProgressionRTL))
{
classHeader += " divHeadAtPageRight";
classFooter += " divFootAtPageRight";
}
else
{
classHeader += " divHeadAtPageLeft";
classFooter += " divFootAtPageLeft";
}
if (nNewPageNumber == 1)
{
classHeader += " divHeadAtPageFirst";
classFooter += " divFootAtPageFirst";
}
classHeader += " divHeadUserOverride";
classFooter += " divFootUserOverride";
var newId = "mRect" + this._strDoc + "p" + aRect.length;
newHTM = "<DIV class=divPage><DIV class=page id=mDiv" + this._strDoc + "p" + aPage.length + ">";
newHTM += "<DIV id=" + newId;
newHTM += " style='-ms-flow-from:flow" + this._strDoc + "'";
newHTM += " class='" + classLayoutRect + "'";
newHTM += " onmsregionupdate=\"OnRectComplete('" + this._strDoc + "', '" + newId + "', " + g_ObsoleteBar + ")\"";
newHTM += " tabindex=-1 onbeforefocusenter='event.returnValue=false;' ";
newHTM += " ></DIV>";
newHTM += "<DIV class='" + classHeader + "' id=header>";
newHTM += HeadFoot.htmlHead;
newHTM += "</DIV>";
newHTM += "<DIV class='" + classFooter + "' id=footer>";
newHTM += HeadFoot.htmlFoot;
newHTM += "</DIV>";
newHTM += "</DIV></DIV>";
MasterContainer.insertAdjacentHTML("beforeEnd", newHTM);
aPage[aPage.length] = eval("document.all.mDiv" + this._strDoc + "p" + aPage.length);
aRect[aRect.length] = eval("document.all.mRect" + this._strDoc + "p" + aRect.length);
}
}
function CPrintDoc_InitDocument()
{
this._nStatus = 0;
this._cPage = 0;
document.msSetPrintDocumentUriForNamedFlow("flow" + this._strDoc, this._strDocURL);
this.ContentDocument().onreadystatechange = new Function("g_aDocTree['" + this._strDoc + "'].OnReadyStateChange();");
}
function CPrintDoc_OnReadyStateChange()
{
;
var doc = this.ContentDocument();
var readyState = doc.readyState;
if (readyState == "interactive" || readyState == "complete")
{
this._nStatus = 1;
if (!g_fPageProgressionDetermined && this._strDoc == "C")
{
DeterminePageProgression(doc);
ApplyPageSizeAndGlobalMargins();
}
this.AddPage();
doc.onreadystatechange = null;
}
}
function CPrintDoc_PrintAllSubDocuments(fRecursionOK)
{
if (this._aDoc)
{
var nDocs = this._aDoc.length;
var i;
g_cLeftToPrint += nDocs;
for (i = 0; i < nDocs; i++)
{
PrintSentinel(this._aDoc[i]._strDoc, fRecursionOK);
}
}
}
function OnBuildAllFrames(strDoc)
{
if (!g_aDocTree[strDoc] ||
!g_aDocTree[strDoc].ContentDocument() ||
(g_fHasBody && !g_aDocTree[strDoc].ContentDocument().body) ||
(!g_fHasBody && !g_aDocTree[strDoc].ContentDocument().documentElement))
{
PostTimeoutTask("OnBuildAllFrames('" + strDoc + "');", 100, 5);
return;
}
g_aDocTree[strDoc].BuildAllFrames();
}
function IsPersistedDoc()
{
return (!!g_aDocTree["C"].ContentDocument().documentElement.__IE_DisplayURL);
}
function CPrintDoc_BuildAllFrames()
{
var aFrames = this.ContentDocument().getElementsByTagName("frame");
var nFrames = aFrames.length;
var nActive = parseInt(this.ContentDocument().documentElement.getAttribute('__IE_ActiveFrame'));
var i;
var strSrc;
var strDoc;
if (nFrames > 0)
{
this._fFrameset = true;
}
for (i = 0; i < nFrames; i++)
{
strSrc = (!aFrames[i].src) ? " " : aFrames[i].src;
strDoc = this.CreateSubDocument(strSrc);
if (i == nActive)
{
g_strActiveFrame = strDoc;
}
g_nFramesLeft++;
OnBuildAllFrames(strDoc);
}
g_nFramesLeft--;
if (g_nFramesLeft <= 0)
{
BuildAllFramesComplete();
}
}
function CPrintDoc_CreateSubDocument(docURL)
{
if (!this._aDoc)
this._aDoc = new Array();
var nDoc = this._aDoc.length;
var strDoc = this._strDoc + "_" + nDoc;
CreateDocument(docURL, strDoc);
this._aDoc[nDoc] = g_aDocTree[strDoc];
return (strDoc);
}
function OnTickHF( strDoc )
{
if (!g_aDocTree[strDoc])
{
HandleError("Document " + strDoc + " does not exist.", document.URL, "OnRectComplete");
return;
}
g_aDocTree[strDoc].TickHF();
}
function CPrintDoc_TickHF()
{
var iTo;
var nStartPage = this._nNextHF;
var cPages = this.Pages();
iTo = nStartPage;
if (iTo > cPages)
{
iTo = cPages;
}
else
{
var j, jTo;
var aTok = this.Page(nStartPage).children[0].getElementsByTagName("span");
for (j=0, jTo = aTok.length; j < jTo; j++)
{
var oTok = aTok[j];
if (oTok.className == "hfPageTotal")
{
oTok.innerText = cPages;
}
else if (oTok.className == "hfUrl" && oTok.innerText == "")
{
oTok.innerText = this.EnsureURL();
}
else if (oTok.className == "hfTitle" && oTok.innerText == "")
{
oTok.innerText = this.EnsureTitle();
}
}
this._nNextHF = iTo + 1;
}
if (iTo == cPages)
{
this._nStatus = 3;
if (--g_nDocsToCalc == 0)
{
PostTimeoutTask("CalcDocsComplete()", 1, 1);
}
}
else
{
this._nTimerHF = PostTimeoutTask("OnTickHF('" + this._strDoc + "');", 1, 1);
}
}
function CPrintDoc_FixupHF()
{
;
this.TickHF();
}
function CPrintDoc_Pages()
{
return this._cPage;
}
function CPrintDoc_Page(nPage)
{
var i;
var n = nPage;
if (n <= 0)
return null;
if (n <= this._cPage)
{
return this._aPage[n - 1].parentElement;
}
return null;
}
function CPrintDoc_EnsureURL()
{
if (this._strURL == null)
{
if (this.ContentDocument())
{
this._strURL = this.ContentDocument().URL;
}
if (this._strURL == null)
{
return "";
}
}
return this._strURL;
}
function CPrintDoc_EnsureTitle()
{
if (this._strTitle == null)
{
if (this.ContentDocument())
{
this._strTitle = this.ContentDocument().title;
}
if (this._strTitle == null)
{
return "";
}
}
return this._strTitle;
}
function CPrintDoc_ContentDocument()
{
return document.msGetPrintDocumentForNamedFlow("flow" + this._strDoc);
}
function CPrintDoc_ResetDocument()
{
var i;
this._aRect = new Array();
this._aPage = new Array();
this._cPage = 0;
if (g_fPrintManagerMode)
{
this._afRerenderPage = new Array();
}
MasterContainer.innerHTML = "<div id=\"EmptyPage\" class=\"divPage\" style=\"position:absolute; left:0px; top:0px; display:none;\"><div class=\"page\">&nbsp;</div></div>";
this.StopFixupHF();
var doc = this.ContentDocument();
if (doc != null)
{
doc.onreadystatechange = null;
}
}
function CPrintDoc_StopFixupHF()
{
if (this._nTimerHF != -1)
window.clearTimeout(this._nTimerHF);
this._nTimerHF = -1;
this._nNextHF = 1;
}
function CPrintDoc(nDocNum, strDocURL)
{
var i;
this._aDoc = null;
this._strDoc = nDocNum;
this._strDocURL = strDocURL;
this._nStatus = 0;
this._aPage = new Array();
this._aRect = new Array();
this._cPage = 0;
this._afRerenderPage = g_fPrintManagerMode? new Array() : null;
this._nNextHF = 1;
this._nTimerHF = -1;
this._strURL = null;
this._strTitle = null;
this._fFrameset = false;
this._nStartingPage = 0;
}
function DeterminePageProgression(doc)
{
var cs = doc.defaultView.getComputedStyle(doc.documentElement);
var writingMode = cs.writingMode;
if (writingMode == "rl-tb" || writingMode == "rl-bt" || writingMode == "tb-rl" || writingMode == "bt-rl" ||
writingMode == "vertical-rl" || (writingMode == "horizontal-tb" && cs.direction == "rtl"))
{
g_fPageProgressionRTL = true;
}
else
{
;
}
g_fPageProgressionDetermined = true;
}
function ApplyPageSizeAndGlobalMargins()
{
;
var arMargins = new Array();
arMargins.push(g_oUserOverrideForMargins);
arMargins.push(g_oMarginsAtPageFirst);
arMargins.push(g_fPageProgressionRTL ? g_oMarginsAtPageLeft : g_oMarginsAtPageRight);
arMargins.push(g_oMarginsAtPage);
var computedLeftMargin = null;
var computedRightMargin = null;
var computedTopMargin = null;
var computedBottomMargin = null;
for (var iIndex = 0; iIndex < arMargins.length; iIndex++)
{
if (arMargins[iIndex] != null)
{
if (arMargins[iIndex].left != null && computedLeftMargin == null)
{
computedLeftMargin = arMargins[iIndex].left;
}
if (arMargins[iIndex].right != null && computedRightMargin == null)
{
computedRightMargin = arMargins[iIndex].right;
}
if (arMargins[iIndex].top != null && computedTopMargin == null)
{
computedTopMargin = arMargins[iIndex].top;
}
if (arMargins[iIndex].bottom != null && computedBottomMargin == null)
{
computedBottomMargin = arMargins[iIndex].bottom;
}
}
}
if (computedLeftMargin == null)
{
computedLeftMargin = g_nMarginLeft;
}
if (computedRightMargin == null)
{
computedRightMargin = g_nMarginRight;
}
if (computedTopMargin == null)
{
computedTopMargin = g_nMarginTop;
}
if (computedBottomMargin == null)
{
computedBottomMargin = g_nMarginBottom;
}
var oMRectUserOverrideRule = GetRuleFromSelector(".mRectUserOverride");
if (oMRectUserOverrideRule == null)
{
HandleError("'.mRectUserOverride' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
var conWidth = g_nPageWidth - computedLeftMargin - computedRightMargin;
var conHeight = g_nPageHeight - computedTopMargin - computedBottomMargin;
if (conWidth < 0)
{
conWidth = 0;
}
if (conHeight < 0)
{
conHeight = 0;
}
oMRectUserOverrideRule.style.width = (conWidth*100/g_nScalePercent) + "in";
oMRectUserOverrideRule.style.height = (conHeight*100/g_nScalePercent) + "in";
if (g_oUserOverrideForMargins.left != null)
{
oMRectUserOverrideRule.style.marginLeft = g_oUserOverrideForMargins.left + "in";
}
if (g_oUserOverrideForMargins.right != null)
{
oMRectUserOverrideRule.style.marginRight = g_oUserOverrideForMargins.right + "in";
}
if (g_oUserOverrideForMargins.top != null)
{
oMRectUserOverrideRule.style.marginTop = g_oUserOverrideForMargins.top + "in";
}
if (g_oUserOverrideForMargins.bottom != null)
{
oMRectUserOverrideRule.style.marginBottm = g_oUserOverrideForMargins.bottom + "in";
}
oRule = GetRuleFromSelector(".divHead");
if (oRule == null)
{
HandleError("'.divHead' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
oRule.style.left = g_nMarginLeft + "in";
oRule.style.width = conWidth + "in";
oRule = GetRuleFromSelector(".divFoot");
if (oRule == null)
{
HandleError("'.divFoot' rule does not exist!", document.URL, "CPrintDoc::EnsureDocuments");
}
oRule.style.left = g_nMarginLeft + "in";
oRule.style.width = conWidth + "in";
if (g_oUserOverrideForMargins.left != null)
{
var oRuleHeadUserOverride = GetRuleFromSelector(".divHeadUserOverride");
if (oRuleHeadUserOverride!= null)
{
oRuleHeadUserOverride.style.left = g_oUserOverrideForMargins.left + "in";
}
var oRuleFootUserOverride = GetRuleFromSelector(".divFootUserOverride");
if (oRuleFootUserOverride!= null)
{
oRuleFootUserOverride.style.left = g_oUserOverrideForMargins.left + "in";
}
}
g_nMarginTop = computedTopMargin;
g_nMarginBottom = computedBottomMargin;
g_nMarginLeft = computedLeftMargin;
g_nMarginRight = computedRightMargin;
}
function GetAuthorSpecifiedMargins(strRequestedPseudoClass)
{
var oAuthorSpecifiedMargins = {left:null, right:null, top:null, bottom:null};
var oDocumentToPrint;
try
{
if (g_oPrintedDocument != null)
{
oDocumentToPrint = g_oPrintedDocument;
}
else if (g_aDocTree["C"] && g_aDocTree["C"].ContentDocument())
{
oDocumentToPrint = g_aDocTree["C"].ContentDocument();
}
if (oDocumentToPrint != null)
{
var hadTopImportant = false;
var hadRightImportant = false;
var hadBottomImportant = false;
var hadLeftImportant = false;
var arStyleSheets = oDocumentToPrint.styleSheets;
for (var iStyleSheet = 0; iStyleSheet < arStyleSheets.length; iStyleSheet++)
{
var arPages = arStyleSheets[iStyleSheet].pages;
for (var iPage = 0; iPage < arPages.length; iPage++)
{
if (arPages[iPage].pseudoClass == strRequestedPseudoClass)
{
var pageBoxWidth;
var pageBoxHeight;
if (Printer.orientation == "portrait")
{
pageBoxWidth = Printer.pageWidth * 10;
pageBoxHeight = Printer.pageHeight * 10;
}
else
{
pageBoxWidth = Printer.pageHeight * 10;
pageBoxHeight = Printer.pageWidth * 10;
}
var top = Printer.getPageMarginTop(arPages[iPage], pageBoxWidth, pageBoxHeight);
var right = Printer.getPageMarginRight(arPages[iPage], pageBoxWidth, pageBoxHeight);
var bottom = Printer.getPageMarginBottom(arPages[iPage], pageBoxWidth, pageBoxHeight);
var left = Printer.getPageMarginLeft(arPages[iPage], pageBoxWidth, pageBoxHeight);
if (top != null)
{
var topImportant = Printer.getPageMarginTopImportant(arPages[iPage]);
if (topImportant || !hadTopImportant)
{
oAuthorSpecifiedMargins.top = top / 1000;
hadTopImportant |= topImportant;
}
}
if (right != null)
{
var rightImportant = Printer.getPageMarginRightImportant(arPages[iPage]);
if (rightImportant || !hadRightImportant)
{
oAuthorSpecifiedMargins.right = right / 1000;
hadRightImportant |= rightImportant;
}
}
if (bottom != null)
{
var bottomImportant = Printer.getPageMarginBottomImportant(arPages[iPage]);
if (bottomImportant || !hadBottomImportant)
{
oAuthorSpecifiedMargins.bottom = bottom / 1000;
hadBottomImportant |= bottomImportant;
}
}
if (left != null)
{
var leftImportant = Printer.getPageMarginLeftImportant(arPages[iPage]);
if (leftImportant || !hadLeftImportant)
{
oAuthorSpecifiedMargins.left = left / 1000;
hadLeftImportant |= leftImportant;
}
}
}
}
}
}
} catch(e){}
return oAuthorSpecifiedMargins;
}
function CompareMarginObjects(oMarginObject1, oMarginObject2)
{
if (oMarginObject1 == null && oMarginObject2 == null)
{
return true;
}
else if (oMarginObject1 == null && oMarginObject2 != null)
{
return false;
}
else if (oMarginObject1 != null && oMarginObject2 == null)
{
return false;
}
else
{
if (CompareIndividualMargins(oMarginObject1.left, oMarginObject2.left) &&
CompareIndividualMargins(oMarginObject1.right, oMarginObject2.right) &&
CompareIndividualMargins(oMarginObject1.top, oMarginObject2.top) &&
CompareIndividualMargins(oMarginObject1.bottom, oMarginObject2.bottom)
)
{
return true;
}
else
{
return false;
}
}
}
function CompareIndividualMargins(oMargin1, oMargin2)
{
if (oMargin1 == null && oMargin2 == null)
{
return true;
}
else if (oMargin1 == null && oMargin2 != null)
{
return false;
}
else if (oMargin1 != null && oMargin2 == null)
{
return false;
}
else
{
if (oMargin1 != oMargin2)
{
return false;
}
else
{
return true;
}
}
}
function ApplyAuthorSpecifiedMargins(strAuthorPagePropertiesType, oAuthorSpecifiedMargins)
{
if (strAuthorPagePropertiesType != "AtPage" && strAuthorPagePropertiesType != "AtPageLeft" && strAuthorPagePropertiesType != "AtPageRight" && strAuthorPagePropertiesType != "AtPageFirst")
{
HandleError("Invalid Author Specified Page Type", document.URL, "CPrintDoc::ProcessAuthorSpecifiedPageProperties");
return null;
}
var strSelectorName = ".mRect" + strAuthorPagePropertiesType;
var oRule = GetRuleFromSelector(strSelectorName);
if (oRule == null)
{
HandleError(strSelectorName + " rule does not exist!", document.URL, "CPrintDoc::ProcessAuthorSpecifiedPageProperties");
return null;
}
if (oAuthorSpecifiedMargins.left != null)
oRule.style.marginLeft = oAuthorSpecifiedMargins.left == null ? "" : oAuthorSpecifiedMargins.left + "in";
if (oAuthorSpecifiedMargins.right != null)
oRule.style.marginRight = oAuthorSpecifiedMargins.right == null ? "" : oAuthorSpecifiedMargins.right + "in";
if (oAuthorSpecifiedMargins.top != null)
oRule.style.marginTop = oAuthorSpecifiedMargins.top == null ? "" : oAuthorSpecifiedMargins.top + "in";
if (oAuthorSpecifiedMargins.bottom != null)
oRule.style.marginBottom = oAuthorSpecifiedMargins.bottom == null ? "" : oAuthorSpecifiedMargins.bottom + "in";
strSelectorName = ".divHead" + strAuthorPagePropertiesType;
oRule = GetRuleFromSelector(strSelectorName);
if (oRule != null)
{
if (oAuthorSpecifiedMargins.left != null)
oRule.style.left = oAuthorSpecifiedMargins.left == null ? "" : oAuthorSpecifiedMargins.left + "in";
}
strSelectorName = ".divFoot" + strAuthorPagePropertiesType;
oRule = GetRuleFromSelector(strSelectorName);
if (oRule != null)
{
if (oAuthorSpecifiedMargins.left != null)
oRule.style.left = oAuthorSpecifiedMargins.left == null ? "" : oAuthorSpecifiedMargins.left + "in";
}
return null;
}
CPrintDoc.prototype.RectComplete = CPrintDoc_RectComplete;
CPrintDoc.prototype.AddPage = CPrintDoc_AddPage;
CPrintDoc.prototype.FixupHF = CPrintDoc_FixupHF;
CPrintDoc.prototype.StopFixupHF = CPrintDoc_StopFixupHF;
CPrintDoc.prototype.TickHF = CPrintDoc_TickHF;
CPrintDoc.prototype.InitDocument = CPrintDoc_InitDocument;
CPrintDoc.prototype.ResetDocument = CPrintDoc_ResetDocument;
CPrintDoc.prototype.OnReadyStateChange = CPrintDoc_OnReadyStateChange;
CPrintDoc.prototype.BuildAllFrames = CPrintDoc_BuildAllFrames;
CPrintDoc.prototype.CreateSubDocument = CPrintDoc_CreateSubDocument;
CPrintDoc.prototype.Print = CPrintDoc_Print;
CPrintDoc.prototype.PrintAllSubDocuments = CPrintDoc_PrintAllSubDocuments;
CPrintDoc.prototype.ReadyToPrint = CPrintDoc_ReadyToPrint;
CPrintDoc.prototype.Page = CPrintDoc_Page;
CPrintDoc.prototype.Pages = CPrintDoc_Pages;
CPrintDoc.prototype.EnsureURL = CPrintDoc_EnsureURL;
CPrintDoc.prototype.EnsureTitle = CPrintDoc_EnsureTitle;
CPrintDoc.prototype.ContentDocument = CPrintDoc_ContentDocument;
PA�PNG


IHDR#��6�>IDATxcQ`������b�rA f��c�0��4X��btq̨cfϜ
6����T�7}�$�$�Ύ6��GN_�_UUE*��ooo9H�"�:p������aza�f	��w�id�ν��888�T�K=�lں��qXߖ�ө�3f���[�H�0��s̗�_���lhOw��\0Fa;E�w
O�_��
RR�Kǀ|���&`CA�g�o���?��ؿ��vv/���G�O�BPZ�9�0�c��[����-�KD� ���@��K���
j��R@�Ӌ(��ߞ!%Z(�6\��h�<�`D�'0
?5�	���IEND�B`�P�PNG


IHDR#��6�ZIDATxڽ�_L[U��mK3lLʺ4�&�,�:���cq1D1�4��Ե�lq����NV�pѭTk2)�B�ò������	��1Ed�!P����^��5���>�|�I��_�=�s[���8NK�H8	\(2��]-|(h�7�H���l�z��˲�r=�B>d����n���arr��څ��C���F9�����m����������C>`�h4�h �TUU1�t�ǭ��ow#�S(�Щ���3>>����������������l�\@�Ї�J���f���L&U.�]�C�MnS$R�T��H��X�0kkk�|u��|f�&Yȧ3V=����լ\-�J�Ё����)!���U����Z��gf;Qd�b&�L��ZЕ{L�b(��cWdk�S������MLL8�t0�9�N��B�`ݍ�p�`�3<<|V\���&�Y9�������mne����h���XL������Kv�n�ᦦ������~�1��%#�E���k}}}�P���)W������7�3C�!�V��|�]��YYY)a��M�VTT�jCWb����$E>x3�8�	��n�9gF�R�jCWb~���R&.�x����5�
fĵ�/5��8e�Z]I����0��<�SL$d��e�_����`�z|���->��Z�Z\��n���XZ;-o�y���f�XrpC-���F��'���/�18ppN����C�x��h����f�B�B7���v�j���ٻ�]���p��L&�G�\z���k@l���0�=���B�L������!�E�C]�AWbf(�����>�ryι���g����/�'�'O�`�P ����WZZ>֢�.�+1�Y8��~�G^�/��{�=��O���c�n��Ձt�f<Z�v��r�����w�� ��|O�͎'&^mi�S�!?_���ქ?���1��{�h|B�Ѩ�C��{KA����ʧ�T���x�0Ԟ���'�P(XB�1��.6�jRgg�U������`�bo/g2�VC��]��^�𷷷_��tCز"-2oW�]蓏}B{�ㄻ̿(�;�z����¾P�V�IEND�B`�P�PNG


IHDR#��6�AIDATx��mLu�R�-E_IH܈	/�P�n<L�t��[��F�}b�+� 1�I��8��fb�F�I7���1�N��.�ئa]����3�qx=Yv�'�����o/M{��0O�	y
(���/�l�WVV�������L9uK��>x�G��i���uuu�E"��766��s߈0��v�giiə��]?z�LIzz�<��G�S��hA��61��F{�G�ao5=Kk-��� � q�����̄!!Ԉ��~��������2�2;;�B��I$�P7� �
�T6\�r��333M"�n�2��Aj������}>�Z$sT��0Q)�)e,˛^�W%�9,T��(�LJ��`�x<�D2�����B}��t:%�9W���J�@~�P�^�>�8��@��:����O�t0�����p����*�M<�A���Ȣ�h$��"�j�j�;T�st���erss����v�zIe�OL�TWWK���\FGd�Aȗ_�W�}Ÿ�22��`GGGϡ*�%僐���뿄$��"'//�����)�C+T��x���>΁�[�q�������t3
-�]�†*��i;փ�p=7�����9�\�r.x7������;}�>GV��
�V�C�{t�~
c͢p���^�G��>y���@��ӳ;9^~<mC7o�
.�r����g_V*kJK��e����2�<g�"�g�G�Opep'�E�ů�����R�����wS�x<n�e����unn7����3�v
�
I�;�WV�6[-͖��nw�>�sȅ>x7���ۃ����¾��B�A�*��F�ccU�`a2Ȃ>x7�Y^^>�ǟ)‹�/�^�؂��kt8��F���dr]kck��`4����7��=��1��iNΣ��M.�>_��V�o�6Fc1e$��e <��߯�<9i�����$,t��s�a��i�r�j�| �Hs
<��ozzZ��̾���)~�qC����Z__��%Nc��O��ę���c�?8ǝK�"�<�k6�Qf׿�Mt����	>x����P�9ċ���>x����0юNIEND�B`�PA
<!doctype html>
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<META HTTP-EQUIV="MSThemeCompatible" CONTENT="Yes">
<SCRIPT>
var L_Dialog_ErrorMessage = "[設定列印格式] 對話方塊發生錯誤。";
var L_ErrorNumber_Text = "錯誤: ";
</SCRIPT>
<SCRIPT LANGUAGE="javascript" src="pstemplate.js"></SCRIPT>
</HEAD>
<BODY onload="BodyOnload()" scroll=no>
</BODY>
</HTML>

function HandleError(message, url, line)
{
var str = L_Dialog_ErrorMessage + "\n\n"
+ L_ErrorNumber_Text + line + "\n"
+ message;
alert (str);
window.close();
return true;
}
function BodyOnload ()
{
window.msTemplatePrinter.showPageSetupDialog();
window.close();
}
window.onerror = HandleError;
P�PNG


IHDR�Y�G�IDATx�ҭ�0��:���
US��Aax�g	�a�0P��;�����Ok�a���0��yq3wF�P�ٳ�	�"v��ak+2{��S�8�P ��N��X�=���Q���Q��"�Q�����:��{.~ЄJ_%IEND�B`�PA�PNG


IHDR�Y�G}IDATx���1W�DŠN�T�9���%�p���ݦ/�$���7lR�D��h�Ky2%
_ڝ��|��4�[�)�r=2:����o~����LM^Z��Ht[�u��/���Rd�R��-��K�JM̬�IEND�B`�PA�PNG


IHDR;0��<IDATx��K|U�����xm�L)���1�H$*B�B�@�`�$D	��a$�R�M*��eT8:�_�3S4��4�Mϙ3�Қa�9��\����o�5k+�tqW19�Quq����_.����(!�<`��K}>�vv5�M��tV����ĤX4��m��<����]S�=�B,�g�{��1Jm�����}-�oxr�����b�0D�Բ,R��۪��n�[&�y��ὟW/:�`���[������J���[nu0H����4M�ÚaE#��D֕�x⛗�����)�L\RؐM#���
�����$��rJ	��#t�,�������7�>�����
lQ�ly9l����J(��3D�2�����(���d.�J*�~2�iiQ^�^8\����
����{��Z�j�|�����n1�-���Eʿ��k��0��rE.�.K�V�?18��������V�Jf3?���%�o�~?��-�>1\���$�_�
l��32%�(��h�m���2ą����oǢJx#�L2��'*�paK�ux}����+st�4vj�ƅ��v�N��Ư��K���@逆�f����Oi��;��/I�x���sJr;���љ����!- E~����E�`f"�?ೠڲx{+�Z_W"?o~;��I��b���q���ypp����t,����:7���۱K�#�S*�3rZ0e'į%2�~�0�v��\��x
6<�����!x�nBB@5p=���S�'�
5@%P�o�H%r�	�s���Ė#S�p!"O�L���p����S2���IEND�B`�PAD�PNG


IHDR;0��IDATx�[HSa��s6g�R�֘����t�-0)"5��+�=�ڃ�I�J�Po�T�SD���S�
/�4o�l.S�An��ܹ�m��8��t4W/��ǁ����}C+��<�=�����H!��(F�5k�^���:�d"�tpp�5w�������N�%`�r11�Pȉ����3�o֖�H�m2 ���[@*�i4�H���2��3�%�3On�*l>x��%'�����b%f?ORƩ�)à�<mNiy�>�*�jU啲��E�L���Θ�DQbYef�K�:f,ݱS�P}��,,�gA����a9�3���H�^��-,�x���M���X��!v��H$8�e�?qɭ��-r9���~MF����y�X�@�1I�ÅeQ�oVe�ٛ��`��:RYw�/=��)�k���mCN�C5���q�$�G%���/�i��uS!1��1HS�sf��PO����%��1�}��bjo��l�D ">b����ȫ/�V��ֺٓƩ�N<����4M��s��C��v�y����C<$�Y���I-�8����
I߼����y��m�l2��J���~�D���tWAњ�)�{z|��dy��t����~	�RK;��6��l3����_@u�)m,���!�2$_����M�\h먟��`��P�a�˃\�߷��̧a�~�� A���QcT�$�c�\�$\��&��Dᙒ�ȅ��BbdA6C�F��	��$HY�8	����%ج�E��H�X�
K������r>;IEND�B`��PNG


IHDR;0��IDATx��[HQ��ٵmmW�Ļ�n�mij�Zao�E !A��c,QP��CB�>��R��t�R����egI�UjW�ٙs����N;{�
_�33����L�,�`3.ؤ�?xs�===`p�c�r��@
i��6�tl���<q�,�
RJtA���|�ݽ�\�%��mQ���O
�F�V�(�>��yЦ��t�(�ՠ�Ѵ��ô���"���U�]\��P��"�Cq8u6�*23�;�ٶ�����=�u%�,��74uv$H���F�)c�*!�����hn�l��.����u�,��0$I�{��u�&��hsT���B�����uz�2�����UǪT��A�ݑ_묶���56t�'��f����si�e�kw��ʊ��M�]Z�a�N.���g*�;��e�W�5oS�g�K;Չ��bD�0^�����T��5�W�|ޥ�~�����~Rh�O5��"����W3��w����83���LҬ��g(���B���_<QOIJR&�u�2�~5��\\X
r\��74L`1E�J�%�� q�·��y����@�(���.f���g�?W*Vrщٙ嗓�7�����] =�Q�ǩ�Dx9�>s���сA$���( V�c�L���c%py���WG�>�c��Q�A��H�����@��~9-��o��'@5Y�*1��}f��e�e��;&B�;� �`����c�)�����5�p1HZ��0�cL�2pZ��I�	��ަD}��>�R�F�M�>�IEND�B`�PAD�PNG


IHDR;0��fIDATx�V[oTU��9s�v��K���A��b4�����K��ƿ�o��~
O�G �LM�E[j)�Զ3�\:ù�ߚ���
c_�e��Z{�=㰿P]0��]��!(@��29{��ksssG'&&>�/Qݹu����ϟoPf%���瘯��e	�r��<��$�B�S�+�d/+�L�m��I��1{�G��01W�D9_p�p�=)%űa�;�0�3�ڔ_��`~��y�D
��ωV*��OC���V��N�o<�SD��gi	k
!?�Q���'7��~��\t$O��pݴ'� ����j5���@�8�З�̌������G�NMw�=�����+W����|ߗ�N	qF��>a����n�Y6�U�pG�^���b,<����w(��#�S٬��s�Q�v��UE I���e'�ȴ�u�f��8>WI���{�F炡�tvlvu�2�ͭ<h����,�<U�V,�##�l�a��~��E��zؓ�0_)�	H!M�qd$[<qrrfr���7��Z�n箈䃠��7E�@�.�Z�h�ľktV��QA���ڴ�1w��Ny�������A��:�J�A�M䦀���<�Vu���}竟���zNʮ�H����&HMj[�f�^;zll����!\WY�;�#Es�]j�cv�]js��n7
�K/� p2�)3���0������"��p�ۺ��jT�«�qG�L�Y@7��by�JE�}�:`�_�Y�^_]�^*W:W���漜P#9Vw�:F�@�(&-�K}lM�B�n'���Zk7���GW�$�3q1�}�fM�C�k�P��r�>���)̾ !���7zM������{�o�CS	<
I�R�����:I��8�NT�=�f���#?]Yn?^\�Z���������9��R��������~��QN@Ʌq��),̌�p�ѵ�
���}�`y�G�V/�^��yN��`�ZMFFF826}��:FIQ?4�p�FSx�fW�_���[���uDp}?+ LbCQ�#[zU��Ba(��� !h$n
w�H{��¹���+U6��}��@B	2�$�RK|��I�!m�5��K���X���4"^�ғh���Q.����_onn��Vާ��~����e�V�KU$��Y�z�Fncc#����C�HP��6�	'fƸ���d��Pv8[�f	��+㗈��!0<GH�G���a#H�n.n�����[��Tʡ� J�Ut�42�������p@��J�l��\t�c,�0�g��Jf���>33C} www]ڠ�aT�G/p���9}�t�ܹs����Jj?{Nz��(h��F�3T�_�p�{�ҥP��^-�	3i�6��2IEND�B`�P�PNG


IHDR;0���IDATx�V]oTE�s����v?J�,1��HL���Q0����[�hb�!�Ŀ`jpG�B���o �h��.-���~u�|��';�dJ�0�O�dv�μϼ�<��u0�c��X�� ��cǎ�?~|�Ν;ߕ��4�_�xqnzzz��K+++K���\�>�q]�F<�@�e!���m?�h���<���y�RX]������N�Y$y�1���ш
�0�ax�fj�W.�O�3��#G���Q����Egg�}ev-V��X�h��Jsc�����]�@����yn,���w���ґ'O�t˲<�q\�y�+�Ɏi�,_��b�F��[���=��9��j �/��C�gN]��������O@�@\�L��R��j���t:���E���ǒ�$^�Ҍ��J������\��������D���,��g
����>U�<��>�AҤ�}��$����=Ǡ�v�fs��'��޷g}�^�w�}%\ǜ6�o����f����yĞ����!�@����l6��ܗ�O�#gN]�hy��d���J�U�
"�����]-�v�e[P�rD��˨�����7�����
	A�MN'3z ��{�&W{
I�|no���偉;�~|�ܵתժ����T	��⪮&pIL⪰�|!�{a"���n��?&p��P���l�U�5IB��*e�[-�t=-LQVb�‘�œ
�)��]���v�X��ݝ^�cS�*�B	"n�4��j;5@K����+��j�=?�>_�+��܂�TW�D����ʸ�p;�	���4�f�����,-�~.�N3ֽ�]E�'_e
pk���k�v��֫��ΫW�&	!�裇mc�V�Aը�-���ɤ�N��\.gZ����*L��
q�el�e;��a��(���ߍ�\Tg�{ץ��d��b�����j.�z۶I8���÷Vܹ��ɗb�﷗+����x\��T�Cv.���!�P(x�]�����D���Ev��c�0�?B�cw��]�;W�^O$�>��"C�.�=��G����:�&��6.�8���ݥ�TѰp��0�c�:��������P^r���c����l����	�'b��oA����e�X���8����5��Z���,..��4�E.����7<<��e��LI�׳��居��D�RI�n3�5L�u�6���I�
g�	��ir��e��Ȝ�H�R"d$��l�����y��3�����#���GGG]�J�� �q�A�,<Ӱ�`S###^:�;�y}��asQ�;pg; ���e`��ȶmj||<8�Y��Q�
�p+Zԓ�����T�ĉ�����^{Z��[
�s�(!���N�<ٜ���䄽���?��zʜ��IEND�B`�PAD�PNG


IHDR;0��FIDATx��OHQ�gf7��$�4�Ey�C��%��ϩ?x(�����DDA7�N�AAЩ4��n�BY��d�j���N�[�qwfgvfzo{#Ϸ���҃/o�������o��:���6����B�$�l6���3�m�=��b�������?q��<Z�ƴa`�ba�����Ƴ��ꃅ�͂�,��-VU�*//���+i)�Qu�~��:�l].|��㣼�`��}eGXv�����@��&<-�@��zɆ[/u<����,I׈���쏈���>�<c� 
���v�MMQJ�U�24�7�j��������M�a����	�y��0��4���;;�i,ˤ�T�dR���s(��>A�Lr��#u9�ގ"���I0��nW�%�,Ã�
7jC�	�������;�G�^��7���Y-Ɓ$��Pグ��y��QG� '������6vN*[)QT��H�DBTP�W-�Ֆ���$�j+r������c������C0D�dhu���r24���?^�i2!��̯(*�-5�
.u���G�;~���àR&0�\�((�OK4�N^|V]S�csm$/�u�y��TF@�:g�̥���h�qB���a�Eh0(
w�5�����|	�
v��,�Q��CH�LV�E3����MMO��\��N�]b�q��,�	�%3ɲ��bB|�|�7�[�o�	k3'�����r�Ѕ���]�|8���k�=�-_���45�{*%b��#}�()�S�	���X��ł�Fb�1��r�z}�u�0q���
��W���qi����T�獾ܗ�Z������׳�m���W.f�IEND�B`�P�PNG


IHDR;0���IDATx^��KoU�ϙ��׌�^i�TMK)X%B�j7����X��,YP��A���R��$z�I��^�8��x<�����A�đlP��W'���̣(b���z2!c��M�P)x�.ʝ9sf߹s�&GGG?ր�P�ә�~���.<&gi@O�	e(�-p"�x�������SH�ݏ����/���h�C�R�9$�l�Œ��8�0�A���`6��ʲ:���WSs]�)�~
���a�-یF<�K�7��I���p�L��'Vlt����:6���đ=�\��t�Qy��~���t��Y�b�"%u��i��|�M��o�Fb���t��x��w�+۶��I�GL�Pj�4nM�V����v2����ƽB6��o�.�O��.�R�����x�ZqAr�Cߴ����0
�N��qB�D�r9'��ɗ�wn�o\[;p�X(d[�C�k.q�
�}�C(E���VA�s�?~�x�4�1ws=sx���k�2ء��
,5xs3b�v�j�k�t��>-�iX�G��������>W��	�W�w��q+=����Uܓ�O�F�?]�����0�tG.x̑
#R5��j��z�t$XA�ZA�֎Mȃ\R�Ѣ4ǡ[��X���v�EI�o�9�3)@��#��ǩ��Q�n���k�p@�o[A��i
��<
���]{^*��g��_l�W��@;��R���=h0c��y?b�S�T\�iCH����>}��C/�=!��z�o�ˍ���+����@$���	p#w��4X��G4k|��d��-�oWs���J;}򸱂�?�޴W�@S�X""���.A���ʶq�c�8�L[I��
���n.�;�ץ�B�ɽ��y=��0�K���d2)��	��FPw�Dr$ A��8�������M���������3L�ƃKrJ@��D.���}�1��2�X@�zp}�
��5�J�,,-�^�����p�DH`��P���H;�\R	����kPb��NAM(�j6_gGV�Mn#JD���R�9����k�d��{x�///�ժkQ�R
�e�X$׊j�N`�"���n¥�u�!w�-u���"�����a�a�78?���J����8�C5K��F�Ԥh
FJ�� ���A6FP���{��i����ٱ��5�0�G�ױ;F�`8==]�t钯G��������\r��IEND�B`�PA�PNG


IHDR;0���IDATx^���kU���G���f�JѶ��(RA�"Hjc��� H��o�HП�
X�J���`Uhj�D�M��d��c�9w�߳�q�Ŭ|��3���9�ٶm�B�e?��BJ��M�!Y$�
M����|������kp��j�fff/]��N�d6�=�L&�`
�������_�n�u�`�}���%|EY?�*d@��,C�@n��Ń'@U��Iv��n�ݼ;zn����t�i6�|�`��i���)h�ƹ�?��^���\<n����t��N�եc�0Lkd�7U,�ʧ�7�c�Fn�<sx��Z$�,Ǡ�B�n��{p��XR�$��w�����O��:�d!<���ۤ=BLs(�Di�M�v�vi
@":���7��O|v��[��9��8��;��da��ZC���g^Q��R�`�-5
��
���#Q��ݱO��/�}�Z*�W��Էk.����^�:��lp�0�Y�q���9��'OERȮ��[��]��5�����M|�W�6�U�RD!Vg	�j�$D`�
%�~Żt�G[�o_?��ϑH�&���ⴲ�v�u�X�=q2t�������d�PP�ժ��	��P�-�^�'�p_*5�v�m�r���'T���c�@^R�T�4;����]�?^����H��<|$���s�}xG,M\�T��|�,�>�W��e��x�	[��ǎ���r�+K�l&S^>��{6W���
Z��N��^*��8�r&�qollx)=�rE��·��S���%��b��p]�([�<Ը!I~t�����=�ߥ�;G&�h�ҽ�х��Bm7@��:��̦�[K�9���N��;^��ȢѨ��XOO�B���Z�=��~���9�D�+!�����Y�e'�?�+˻ˡ��7�����ML�&,�H���X̄s�b��1ߓL��8��H�L2Cn���o�,]7YzU�\K~I��_��v����p�	���e�x܄cNP7>@�L�cxA�
���V6��V
�굣C�y�O�K/�3f�pK3�&(	���P��X;ʀX:Z`�Ԉg9����{��������T[�����w�w�I�#dEy����tڕ��h^3�
���7S�9�ȩ�v3�x?B�d�BؘA���c[H1Gc5�FP��̻qLc
�W�I'�3@-Ը�p�S���wvvt_��~��
'V�s��9\�J���?>>�
{R7!�Z�c�!`�OMM�\�RWfH�#�'UD�XF��MIEND�B`��PNG


IHDR�?T/�IDATx�]L�g�Gi�Zgd��6b�"ɒE��fs˜a&�ɒ�I�Ɇ�4�`�L,ݬ�B�Vhm�9��R�J��Q
��B�"�*�&�9���̼��}��nv���e��4�:���y�o�c{lII&p��?9�{��F}!������@�j͞����c_�',����¿6��!�\񦤩�hM�3Q ӽNIF����jjDxfp,�8m�y蚼��O��e4� �2�����|����1��&��:�s{�Ѿ�/>?>{�W��w�w%�����#R����wPR�	��:��zC��?r������p��}��Bsodgi�Y�U�Q�x�@g���N(�3���%`c��W�(���ř��/�t
��-��kӖW��x���:���C[ ֑)P�L~�ڊ˟C�D�l���-:���7�L�Ք�>�пٌ�_�s
ը���9r���.Ky	����M�9���������w���4������id��"�kJ�G�
E��0e�,s�b���.�?�d]�����-�N�q��>�����$)�	?�fִ�獎78�Bc����wq�D�F�dDP�`ʣF��?����&�DV��g7E$-}�v�a�j�LV���?O�:����4�v���m�Gf@g
�y�'rql
"8��ʍ�?t]<|�j,t����2�ulӞ���@a�$�=a |
�W~ץ��=E7v�;��,~���3�AP��Q+�K�_�&-�u��V�z>+V�����:�1�8���3`ā�\��5�a(�5���?,�Q��4��[��,G���KԔ�JC�B[�wD����!���J�ؙW&'��T�r�+���;X�
�ZrDՒ�˃��zص_\����R%�Fv��n$Z�ZΣ}XH������oZ�2#G��#R����3�n۞S"��7��'/ݗ�G6]M*=��{:��uH*�C�li\d�B�\IX��G�.�%-B^5}J!�g{l_��(��0�IEND�B`�PAD�PNG


IHDR�?T/~IDATx��Kl\W���>�s��Ɍ�<j;�TET
�r!�] ���$()��dCY�ؠ(AEb�&�t� Q���IA��%v�k��g<3��g칯s�Or�0~�,�>��s��������ay
v�f�_�ٳ�
��>���}��ٳg{�^��U�U�y���b|�ر����
�FϜ9S�����ڵL�T�eY���u�=�$���P��a&�����8q��1�|��(e~.���q��P.����G0'8��K�N��^�Gcccs�F�c��m6��EQt����C�:����xd�=�<q��WJ�� X��g�D\)��T�m'�����8E����" Dp��J�=�t�@�#�$1CSUv
�8[���.���R`}=�;7�d�"E�($�f�*��H�nG�~'�S�^�m[mq6�c(�v�8�eVQ��c�!ًn���b���1�g�f�3�|:�Vx�6@���m5��P�߈T�r�dxOIP4A��%��;��b�j�Oj�{���3��g۲���N�ܖ��M/����ʱJ��fʬR[��X����`�����F������_e�٘0M3ٱ��
��8��ָ�C�|�/՗������{�����?�����^ܗvD_.Ś�5�����d����yQm[v��u�<]���餿,��6�ѝ��ƭ���}�Yc�J��bߑl�f�'������x*�b8C�Tzbl����+W�Ltÿq�'�(��=`�)Vo��ٹ���w�z��v]wkȠ]��+��u�k���Z��«?�����{��@�"��<y�U���EN,�=hXv6�J3)4�LS��B)��d�$Bu5��m��Z���,�/�W���x*K�����_���wo����0�lpp���#c�a��!c@}�G�R��j��{o�������R`؞�#Φ�k�D׿K:�ړ�������|_�J����(Ç_���A�c�'��5$`%O(@�8[�]#��p���°́���P[�e�LO�#���Ϫ�o�c��e&V1����6�И��+?l�����qJ����vgN�IӲ\�H@:C��0sm~�#��F|~d���e�9��3=^��V�0�����?�t��M�.*�R��8TE��g3\)����Q�"^���X*<d�r��U�W��~ʵX�ȶŰ�V0s��[��r��*��IRH:!pQw�M��r.�C�ʏA�%Jg�3�}m?H�3����X[��ʣ�'�̊T��N����-���ql�0ךi�p�l�Me8�8ӂV>s��o/��Z�Ň��ыv�F*�����kk�/{Is��U�/}�L;����D'p�����=E�<D_��� ({<)�XɎ�X�y3�=��g���r����Hb�ȕ,.B�1<�&pe��wpwS����i�ժ ���$z����H�R�s�K��!��*+�Q��"0��񼾩��2x���{���.\(��ܹ��>|�2(o��z���8���!g��q�����#Sڇ������[�o?�x�y�ԩ:�ߟ��O�>]�~���ۥ|^�v�Q�ѣG[�.]�;��[�3��}�z^�A��݄-�:Q�ڮ�O�IEND�B`�P�PNG


IHDR�?T/�IDATx^��mh�Y�Ͻ����L�}�L2���K���`*T@�����(�JV����PD)�ɭ��E鮰Rm�IIܤM�&��d2/��y����$�z&�%�眜�!B���Qٽ����8<{بꑼ�x	:��˗/��סP(�����ٳgO\�x�a7%||vv���Ӌ���F�YB����r�,�p*���S��}��^�zu\��L2�|�^����P�E}�	��<�Q�����O%Ore�z�\������{��c2i��PUUB@QGG��DNK��=���uP�(�����ҫ��}����t]�@�k�&d�J&Õ�@����A��r���L,�V2 � Ȩ���;KG��:Un�/��F���Bv5
1��8�ܣ*�ڞI	Ͷ|�;�����u}s���@	�B�k088�b���qX��*w�Yޜ�Ss����L61�R>l=��y0�9F�v*u]ԫ������m���|dQv ��p�����Fhi����` ��a,�b�k�m(��*�R1T)�L�0�ji�	�\�M��622�����c�`��(`�����"�N�
��.�;�o���>�ߺ����k�:���	2!��������cE<�����=�ۓ��ś�Z0X�����x<d��=]���M��7���خ�p�8ۿƽ�;����G��w��DOȆ�,�g��y"!��l䶝a���x<�oMOO7�C�;-�r�����܆�j�բ���>ov<�Z�	۶ұ����d��B	������_XXX*�wq?/p����˅$P�:�x�ƍ�nݺ�*����}�#ܸ���{ߪ4꠪FG��ا�|IN/�N��.p׈�SҽfY�������\H�;�vџ�[�ϫ�XoqM�8Ř�*f��`��mll��$�;#��}+��Y0��VQM��T�I���-��,�hVT��2[(U����,81>B#��/*�V��8�	�)���Z�1J�ɱ׉_}/�N�D"!���.�=
�p��_�e�PQ��'G3/
&"��؀u]lׁc�ֆ�ҽ�惷���8�d�}�^,�����F�i�~0�F(?������bk�D���1�:����6��v��sQ�\{J+��ӭLfL$�IIz�ݡ�px��3�W��V�sA���	%S)��ti���ێ��܍n��mF�ѪcG��߸��1>�0&���fGEv4K�*z(�f�I�DXfP90�R=�����=�V ��p&������o����G��?�Q[��q-.�M���ՋC�;���	�5��	bH�'}����\h�B-�$��@�@p7KQ�c���4�&uG;��ضuE�0�u����H�V%�8ኪj�iM�("$� �s0QΙ/��K�*�RC׉eZ
g��K�[˶m��8�*�uC�놡+�����%X�K8��*9�p7�L���rSSS���K���)AMӧ��m�d�P)��>��&��� 7d���&�@r%|�ܹsS�ff�������B�}0�KB���h�_���E��w�����4.\� �9	t�ҥ)�u��N��A���Ҁ�Ο?W�\��}c�P����(��`T��
q�t
ևIEND�B`�Pfunction Column(name, attr, sortable) {
    'use strict';
    this.TitleName = name;
    this.Attribute = attr;
    this.IsSortable = sortable;

    if (sortable === true) {
        this.SortOrder = "asc";
    }
}

function FlexTable(id, dataArray, columnArray) {
    'use strict';
    this.Element = document.getElementById(id);

    // Delete old data
    this.Element.innerHTML = '';

    this.Data = dataArray;
    this.SubsetData = dataArray;
    this.Columns = columnArray;
    this.StartingIndex = 0;
    this.LinesAmount = 200;

    this.Template = document.createElement('li');
    this.Template.setAttribute('role', 'row');
    for (let i = 0; i < this.Columns.length; i++) {
        const cell = document.createElement('span');
        cell.setAttribute('role', 'cell');
        this.Template.appendChild(cell);
    }
    this.Template.firstChild.setAttribute('role', 'rowheader');

    this.initializeHeader();
    this.resetDataRows();
    this.sortColumn(0);

    const rowHeight = this.Template.offsetHeight;
    document.body.style.minHeight = `${this.SubsetData.length * rowHeight}px`;

    requestAnimationFrame(() => { this.appendLinesWorker(); });
}

FlexTable.prototype.createLine = function (entry) {
    'use strict';
    const line = this.Template.cloneNode(true);
    this.Columns.forEach((column, index) => {
        let value = '';
        if (entry[column.Attribute]) {
            value = entry[column.Attribute];
        }
        line.childNodes[index].textContent = value;
    })
    return line;
};

FlexTable.prototype.appendLines = function (start, count) {
    const maxCount = this.SubsetData.length - start;
    count = Math.min(count, maxCount);
    if (count <= 0) {
        return;
    }

    const newLines = document.createDocumentFragment();
    for(var i = start; i - start < count; i++) {
        newLines.appendChild(this.createLine(this.SubsetData[i]));
    }

    this.Output.appendChild(newLines);
}

FlexTable.prototype.appendLinesWorker = function () {
    this.appendLines(this.StartingIndex, this.LinesAmount);
    this.StartingIndex += this.LinesAmount;

    if (this.StartingIndex < this.SubsetData.length) {
        requestAnimationFrame(() => { this.appendLinesWorker(); });
    }
}

FlexTable.prototype.initializeHeader = function () {
    'use strict';
    const ul = document.createElement('ul');
    ul.setAttribute('role', 'rowgroup');
    const li = document.createElement('li');
    li.setAttribute('role', 'row');
    ul.appendChild(li);

    for (let i = 0; i < this.Columns.length; i++) {
        const column = document.createElement('div');
        column.textContent = this.Columns[i].TitleName;
        column.setAttribute('name', this.Columns[i].Attribute);
        column.setAttribute('role', 'columnheader');
        column.id = `column-header-${this.Columns[i].Attribute}`;

        if (this.Columns[i].IsSortable) {
            column.addEventListener('click', function () {
                table.sortColumn(i);
            });

            column.className = "sortable-column";
            let spanIcon = document.createElement("span");
            spanIcon.className = "sort-icon";
            spanIcon.setAttribute("role", "presentation");
            column.appendChild(spanIcon);
        }

        li.appendChild(column);
    }

    li.id = 'table-header';
    this.Element.appendChild(ul);
};

FlexTable.prototype.resetDataRows = function () {
    'use strict';
    if (this.Output) {
        this.Element.removeChild(this.Output);
    }
    this.Output = document.createElement('ul');
    this.Output.setAttribute('role', 'rowgroup')
    this.Element.appendChild(this.Output);
};

FlexTable.prototype.search = function (query) {
    'use strict';
    this.SubsetData = [];

    if (query && query.length > 0) {
        const queryLower = query.toLowerCase();
        for (let i = 0; i < this.Data.length; i++) {
            for (let j = 0; j < this.Columns.length; j++) {
                const text = this.Data[i][this.Columns[j].Attribute];
                if (text && text.toLowerCase().includes(queryLower)) {
                    this.SubsetData.push(this.Data[i]);
                    break;
                }
            }
        }
    } else {
        this.SubsetData = this.Data;
    }

    this.StartingIndex = 0;
    this.resetDataRows();
    requestAnimationFrame(() => { this.appendLinesWorker(); });
};

FlexTable.prototype.countOfResults = function () {
    'use strict';
    return this.SubsetData.length;
};

FlexTable.prototype.sortColumn = function (columnIndex) {
    'use strict';
    const columnAttribute = this.Columns[columnIndex].Attribute;
    const sortOrder = this.Columns[columnIndex].SortOrder;
    this.SubsetData.sort(function (a, b) {
        let x = "", y = "";

        if (a[columnAttribute]) {
            x = a[columnAttribute].toLowerCase();
        }
        if (b[columnAttribute]) {
            y = b[columnAttribute].toLowerCase();
        }

        if (sortOrder === "asc") {
            return x < y ? -1 : x > y ? 1 : 0;
        }
        return x > y ? -1 : x < y ? 1 : 0;
    });

    // remove any existing sort-up-icon or sort-down-icon
    RemoveClassFromElements("sort-up-icon", "sort-icon");
    RemoveClassFromElements("sort-down-icon", "sort-icon");

    // add arrow icon only for the column that is actively being sorted by the user
    const colElement = document.getElementById(`column-header-${this.Columns[columnIndex].Attribute}`);
    if (sortOrder === "asc") {
        this.Columns[columnIndex].SortOrder = "desc";
        colElement.getElementsByClassName("sort-icon")[0].className = "sort-icon sort-up-icon";
    } else {
        this.Columns[columnIndex].SortOrder = "asc";
        colElement.getElementsByClassName("sort-icon")[0].className = "sort-icon sort-down-icon";
    }

    this.StartingIndex = 0;
    this.resetDataRows();
    requestAnimationFrame(() => { this.appendLinesWorker(); });
};

function RemoveClassFromElements(nameOfClass, newClass) {
    'use strict';

    const arrayOfElements = document.getElementsByClassName(nameOfClass);

    for(let i = 0; i < arrayOfElements.length; i++) {
        arrayOfElements[i].className = newClass;
    }
}�PNG


IHDRKw+L_IDATxm�
BA��Rg�y$$J ����w�VaFU�2�4*�ݚ)�M��[�1�dP�Dhdx�?���J��bi��Ё�n�ukG�e����i~��͊�ժIEND�B`��PNG


IHDR���IDATx��1qD1QY�8�W� Ȥ�r�@��:��Iu����Y"����:��9��D�
�Eu0��w�I��`�
�E.�O���|�.*W�\\$W���U���v0��;���L�$��E�~~O0��W0��b}���%�@ �O�0:y6�H�p���΁����sg��puH�.�LV�_�V��4�(���d�	z\�V�y��ᣮ�IEND�B`�Pbody {
    margin: 24px;
}
html {
    font-family: Microsoft JhengHei UI;
    -ms-text-size-adjust: 100%;
}
h1 {
    font-size: 2em;
    margin: .67em 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
col {
    word-wrap: break-word;
}
td, th {
    padding: 0;
}
hr {
    box-sizing: content-box;
    height: 0px;
}
button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}
*, ::after, ::before {
    box-sizing: border-box;
}
a {
    background-color: transparent;
}
body {
    font-family: "Segoe UI","Segoe UI Web","Segoe UI Symbol","Helvetica Neue","BBAlpha Sans","S60 Sans",Arial,sans-serif;
    padding-bottom: 0.23px;
    padding-top: 0.23px;
    color: #000;
    background-color: #FFF;
}
body {
    font-size: 0.93rem;
}
html {
    font-size: 100%;
}
hr {
    border-top: 1px solid #888;
}
body, div, hr, html, span {
    outline: 0;
}
label {
    display: inline-block;
    max-width: 100%;
}
.text-base, .text-body, .text-caption, .text-caption-alt, .text-header, .text-headline, .text-subcaption, .text-subheader, .text-subtitle, .text-title, h1, h2, h3, h4, h5, h6, p {
    margin-top: 0px;
    margin-bottom: 0px;
    outline: 0;
    vertical-align: top;
}
.text-header, h1 {
    line-height: 1.2173;
    font-weight: 200;
    font-size: 2.87rem;
}
.text-body, p {
    font-size: 0.93rem;
    line-height: 1.3333;
    font-weight: 400;
}
p {
    margin: 24px 0;
}
.pull-right {
    float: right !important;
}
.list-unstyled, ul {
    padding-left: 0px;
    list-style: none;
}
ol, ul {
    margin: 0;
}
ol li, ul li {
    margin-bottom: 12px;
}
a {
    color: #ccc;
    text-decoration: none;
}
a:link {
    color: #006cd8;
}
a:link else, a:visited {
    color: #0078d7;
}
.section .section-header {
    padding-bottom: 18px;
    border-bottom: 1px solid #E6E6E6;
    margin-bottom: 28px;
}
table {
    background-color: transparent;
}
.table {
    width: 100%;
    max-width: 100%;
}
.expandable-row {
    background: url('icons-circle-plus.svg') no-repeat center left;
    background-size: 20px 20px;
}
.table > tbody > tr:nth-child(2n+1) {
    background-color: #F2F2F2;
}
th {
    text-align: left;
}
.table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, .table > thead > tr > th {
    padding: 16px;
}
.table > thead > tr > th {
    vertical-align: top;
}
.table > thead > tr > th {
    padding: 0 16px 10px;
    color: #898989;
}
.table > thead > tr > th {
    font-size: 0.81rem;
    line-height: 1.2307;
    font-weight: 400;
}
.text-caption, h5 {
    font-size: 0.81rem;
    line-height: 1.2307;
    font-weight: 400;
}
.section .section-title {
    display: block;
    margin-top: 0px;
    margin-bottom: 0px;
    color: #000;
}
.section .section-title {
    font-size: 1.5rem;
    line-height: 1.1666;
    font-weight: 300;
}
.text-title, h3 {
    font-size: 24px;
    line-height: 1.1666;
    font-weight: 300;
}
.text-title, h3 {
    font-size: 1.5rem;
}
.form-group {
    margin-top: 20px;
    position: relative;
}
.text-base {
    font-size: 0.93rem;
    line-height: 1.3333;
    font-weight: 600;
}
.text-caption-alt, h6 {
    font-size: 0.68rem;
    line-height: 1.2727;
    font-weight: 400;
}
.form-group label {
    margin-top: 0px;
    margin-bottom: 8px;
}
.new-checkbox {
    margin-top: 10px;
    margin-bottom: 24px;
}
.new-checkbox label {
    margin-bottom: 0px;
    margin-left: 28px;
    cursor: pointer;
}
button, input, select, textarea {
    font-family: inherit;
    font-size: inherit;
}
button, input, option, progress, select, textarea {
    max-width: 100%;
    line-height: inherit;
}
input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0;
}
input[type=checkbox] {
    width: 20px;
    height: 20px;
}
.new-checkbox input[type=checkbox], .new-checkbox-inline input[type=checkbox] {
    margin-left: -28px;
}
[dir=rtl] .new-checkbox input[type=checkbox], [dir=rtl] .new-checkbox-inline input[type=checkbox] {
    margin-right: -28px;
    margin-left: 0px;
}
.form-searchbox {
    display: block;
}
.form-control {
    display: block;
    width: 100%;
    background-image: none;
}
input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], textarea {
    padding: 4px 8px;
    border-style: solid;
    border-width: 2px;
    border-color: rgba(0, 0, 0, .4);
    background-color: rgba(255,255,255,.4);
    height: 32px;
    height: 2rem;
}
input[type=color]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, input[type=datetime-local]:-ms-input-placeholder, input[type=datetime]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=month]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=search]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=text]:-ms-input-placeholder, input[type=time]:-ms-input-placeholder, input[type=url]:-ms-input-placeholder, input[type=week]:-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.6);
}
.form-searchbox input[type=text] {
    background-color: rgba(255,255,255,.4);
    border-color: rgba(0, 0, 0, .6);
    border-width: 1px;
    color: #000;
    height: 36px;
    padding: .23px 35px .23px 12px;
}
.form-searchbox input[type=text] {
    font-size: 0.93rem;
    line-height: 1.3333;
    font-weight: 400;
}
.clear-icon, .search-icon {
    position: absolute;
    bottom: 0px;
    right: 0px;
    line-height: 0;
    margin: auto;
    text-align: center;
    color: rgba(0, 0, 0, 0.6);
    height: 34px;
    width: 36px;
    padding: 9px 0;
    font-size: 16px;
    cursor: pointer;
}
.search-icon {
    background: url('icon-search.svg') no-repeat center / 16px 16px;
}
.clear-icon {
    background: transparent;
    right: 36px;
    min-width: inherit;
    border: none;
    outline: 0;
}
.sort-icon {
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    margin-left: 5px;
    cursor: pointer;
}
.sort-up-icon {
    background: url('arrow-up-icon.svg') no-repeat;
}
.sort-down-icon {
    background: url('arrow-down-icon.svg') no-repeat;
}
.sortable-column {
    cursor: pointer;
}(function()
{
    var XHTML = "http://www.w3.org/1999/xhtml";

    // Time slicing constants
    var LIMIT    =  10; // Maximum number of nodes to process before checking time
    var DURATION = 200; // Maximum amount of time (ms) to process before unblocking UI
    var DELAY    =  15; // Amount of time (ms) to unblock UI

    // Tree building state
    var iterator;
    var nextNode;
    var root;
    var rootFirstChild;
    var time;

    // Template References
    var attrTemplate, attrName, attrValue;
    var elmStartTemplate, elmStartName;
    var elmEndTemplate, elmEndName;
    var cdataTemplate, cdataValue;
    var commentTemplate, commentValue;
    var style;

    // Only invoke this script if it was injected by our parser. Test for a condition that is
    // impossible for a markup to create - two direct children of the document.
    var secondRootElement = document.documentElement.nextElementSibling;
    if (secondRootElement == null)
    {
        // We've been included externally, bail
        return;
    }

    // Remove the script element from the document so that it doesn't show up in the XML tree view
    document.removeChild(secondRootElement);

    // Main entry point. Build the tree view.
    function buildTree()
    {
        time = (new Date()).getTime();

        // Cache references to the root element and its first child for later use
        root = document.documentElement;
        rootFirstChild = root.firstChild;

        // Initialize templates
        buildAttributeTemplate();
        buildCDATASectionTemplate();
        buildCommentTemplate();
        buildElementTemplate();
        buildStyles();

        // Start processing the document
        buildXMLDeclaration();
        iterator = document.createNodeIterator(document, NodeFilter.SHOW_ALL, null, false);
        nextNode = iterator.nextNode();
        buildNode();
    }

    // Resume tree building after pausing to unblock UI
    function resumeBuilder()
    {
        time = (new Date()).getTime();
        buildNode();
    }

    // Build the tree incrementally and delegate to appropriate node function
    function buildNode()
    {
        var node, i = 0;
        while(nextNode)
        {
            if(i++ <= LIMIT)
            {
                node = nextNode;
                nextNode = iterator.nextNode();
                switch(node.nodeType)
                {
                    case Node.CDATA_SECTION_NODE          : buildCDATASection         (node); break;
                    case Node.COMMENT_NODE                : buildComment              (node); break;
                    case Node.DOCUMENT_TYPE_NODE          : buildDocumentType         (node); break;
                    case Node.ELEMENT_NODE                : buildElement              (node); break;
                    case Node.PROCESSING_INSTRUCTION_NODE : buildProcessingInstruction(node); break;
                    // No additional handling is needed for text nodes
                }
            }
            else if((new Date()).getTime() - time >= DURATION)
            {
                setTimeout(resumeBuilder, DELAY);
                break;
            }
            else
            {
                i = 0;
            }
        }
    }

    // Attr
    function buildAttribute(attr, treeNode)
    {
        attrName.textContent = attr.nodeName;
        attrValue.textContent = attr.nodeValue;

        // Custom Styling for xmlns or xml
        if(attr.namespaceURI && (attr.namespaceURI == "http://www.w3.org/2000/xmlns/" || attr.namespaceURI == "http://www.w3.org/XML/1998/namespace"))
        {
            attrName.style.color = "red";
            attrValue.style.color = "red";
        }
        else
        {
            attrName.style.color = "#900";
            attrValue.style.color = "black";
        }

        treeNode.appendChild(attrTemplate.cloneNode(true));
    }

    // Attr Template
    function buildAttributeTemplate()
    {
        // Template root
        attrTemplate = document.createDocumentFragment();
        attrTemplate.appendChild(document.createTextNode(" "));

        // Attribute name
        attrName = document.createElementNS(XHTML, "span");
        attrTemplate.appendChild(attrName);

        attrTemplate.appendChild(document.createTextNode('="'));

        // Attribute value
        attrValue = document.createElementNS(XHTML, "span");
        attrValue.style.fontWeight = "bold";
        attrTemplate.appendChild(attrValue);

        attrTemplate.appendChild(document.createTextNode('"'));
    }

    // CDATASection
    function buildCDATASection(cdata)
    {
        cdataValue.textContent = cdata.nodeValue;
        var treeNode = cdataTemplate.cloneNode(true);
        // Set the appropriate state for expand/collapse behavior
        treeNode.onclick = toggleCData;

        cdata.parentNode.insertBefore(treeNode, cdata);
        cdata.parentNode.removeChild(cdata);
    }

    // CDATASection Template
    function buildCDATASectionTemplate()
    {
        cdataTemplate = document.createElementNS(XHTML, "a");
        cdataTemplate.style.color = "blue";
        cdataTemplate.style.fontWeight = "normal";
        // Set the appropriate state for expand/collapse behavior
        cdataTemplate.className = "collapse";
        cdataTemplate.tabIndex = "0";
        cdataTemplate.style.position = "relative";

        cdataTemplate.appendChild(document.createTextNode("<![CDATA["));

        cdataValue = document.createElementNS(XHTML, "div");
        cdataValue.style.color = "black";
        cdataValue.style.whiteSpace = "pre";
        cdataTemplate.appendChild(cdataValue);

        var end = document.createTextNode("]]>");
        cdataTemplate.appendChild(end);
    }

    // Comment
    function buildComment(comment)
    {
        commentValue.textContent = comment.nodeValue;
        insertBefore(commentTemplate.cloneNode(true), comment);
    }

    // Comment Template
    function buildCommentTemplate()
    {
        commentTemplate = document.createElementNS(XHTML, "div");
        commentTemplate.style.color = "blue";
        commentTemplate.style.fontWeight = "normal";

        var start = document.createTextNode("<!--");
        commentTemplate.appendChild(start);

        commentValue = document.createElementNS(XHTML, "span");
        commentValue.style.color = "#888";
        commentTemplate.appendChild(commentValue);

        var end = document.createTextNode("-->");
        commentTemplate.appendChild(end);
    }

    // DocumentType
    function buildDocumentType(doctype)
    {
        var treeNode = document.createElementNS(XHTML, "div");
        treeNode.style.fontWeight = "normal";
        treeNode.style.color = "blue";
        treeNode.textContent = "<!DOCTYPE " + doctype.name
                        + ((doctype.systemId) ? ' SYSTEM "' + doctype.systemId + '"' : "")
                        + ((doctype.publicId) ? ' PUBLIC "' + doctype.publicId + '"' : "")
                        + ">";
        insertBefore(treeNode, doctype);
    }

    // Element
    function buildElement(elm)
    {
        // Skip HTML elements since they are part of the tree view, not the original XML
        if(elm instanceof HTMLElement) return;
        
        // Retrieve information about this element's content model (has children, needs to be collapsable)
        var firstChild = (elm == root) ? rootFirstChild : elm.firstChild;
        var hasChildren = (null != firstChild);
        var isCollapsable = (hasChildren && (null != firstChild.nextSibling || firstChild.nodeType != Node.TEXT_NODE));
        var ancestor=elm; while(ancestor=ancestor.parentElement) { if('ariaLevel' in ancestor) { break; } };
        var ariaLevel = (ancestor ? ancestor.ariaLevel+1 : 1);
        var ariaSetsize = (ancestor ? ancestor.ariaSetsize : 1);
        var ariaPosinset = (ancestor ? ++ancestor.ariaPosinset : 1); 
        elm.ariaLevel = ariaLevel;
        elm.ariaSetsize = elm.children.length;
        elm.ariaPosinset = 0;

        // Build the start tag from the element start template
        elmStartName.textContent = elm.nodeName;
        var treeNode = elmStartTemplate.cloneNode(true);
        treeNode.setAttribute('aria-level', ariaLevel);
        treeNode.setAttribute('aria-posinset', ariaPosinset);
        treeNode.setAttribute('aria-setsize', ariaSetsize);

        // Check if this needs to be a collapsable element
        if(isCollapsable)
        {
            // Set the appropriate state for expand/collapse behavior
            treeNode.tabIndex = "0";
            treeNode.className = "collapse";
            treeNode.style.position = "relative";
            treeNode.setAttribute('aria-expanded', 'true');
            treeNode.onclick = toggle;
        }
        else
        {
            treeNode.tabIndex = "-1";
        }

        // Insert the generated start tag into the tree
        if(elm == root)
        {
            // Ensure the start tag for the root element appears after
            // the display for preceeding comments, processing instructions, etc.
            elm.insertBefore(treeNode, rootFirstChild);
        }
        else
        {
            // For other elements, simply place make the start tag the first child
            elm.insertBefore(treeNode, elm.firstChild);
        }

        // Generate representation of attributes
        for(var i = 0; i < elm.attributes.length; i++)
        {
            buildAttribute(elm.attributes[i], treeNode);
        }

        // Close the start tag appropriately
        treeNode.appendChild(document.createTextNode((hasChildren) ? ">" : "/>"));

        // Create an end tag (if needed)
        if(hasChildren)
        {
            elmEndName.textContent = elm.nodeName;
            treeNode = elmEndTemplate.cloneNode(true);
            if(isCollapsable)
            {
                treeNode.className = "block";
                treeNode.style.marginLeft = "-2em";
            }
            elm.appendChild(treeNode);
        }
    }

    // Element Template
    function buildElementTemplate()
    {
        // Start tag
        elmStartTemplate = document.createElementNS(XHTML, "a");
        elmStartTemplate.setAttribute("role", "treeitem");
        elmStartTemplate.setAttribute("aria-level", "1");
        elmStartTemplate.setAttribute("aria-expanded", "true");
        elmStartTemplate.style.color = "blue";
        elmStartTemplate.style.marginLeft = "-2em";
        elmStartTemplate.appendChild(document.createTextNode("<"));
        elmStartName = document.createElementNS(XHTML, "span");
        elmStartName.style.color = "#900";
        elmStartTemplate.appendChild(elmStartName);

        // End tag
        elmEndTemplate = document.createElementNS(XHTML, "span");
        elmEndTemplate.style.color = "blue";
        elmEndTemplate.appendChild(document.createTextNode("</"));
        elmEndName = document.createElementNS(XHTML, "span");
        elmEndName.style.color = "#900";
        elmEndTemplate.appendChild(elmEndName);
        elmEndTemplate.appendChild(document.createTextNode(">"));
    }

    // ProcessingInstruction
    function buildProcessingInstruction(pi)
    {
        var treeNode = document.createElementNS(XHTML, "div");
        treeNode.style.color = "blue";
        treeNode.style.fontWeight = "normal";
        treeNode.textContent = "<?" + pi.nodeName + " " + pi.nodeValue + "?>";
        insertBefore(treeNode, pi);
    }

    // Create a stylesheet to apply general styles to the tree view
    function buildStyles()
    {
        // Style definitions
        var styles = "@namespace html url(" + XHTML + ");"

            // Setup styles on the root element
            + " :root {                   "
            + "    font:small Verdana;    "
            + "    font-weight: bold;     "
            + "    padding: 2em;          "
            + "    padding-left:4em;      "
            + " }                         "

            // Default all elements to block styling
            // This allows generic elements to provide structure
            + " * {                       "
            + "    display: block;        "
            + "    padding-left: 2em;     "
            + " }                         "

            // Ensure the style element stays hidden
            + " html|style {              "
            + "    display: none;         "
            + " }                         "

            // Default styling for tag-like spans/anchors
            + " html|span, html|a {       "
            + "    display: inline;       "
            + "    padding: 0;            "
            + "    font-weight: normal;   "
            + "    text-decoration: none; "
            + " }                         "
            
            + " html|a[tabindex='0'] {    "
            + "    cursor: pointer;       "
            + " }                         "

            + " html|span.block {         "
            + "    display: block;        "
            + " }                         "

            // Hide content under a collapsed element
            + " *[html|hidden],           "
            + " *[html|hidden] *,         "
            + " span.block[html|hidden] { "
            + "    display:none!important;"
            + " }                         "

            // Show "+" for elements that can be expanded
            + " .expand {                 "
            + "    display: block;        "
            + " }                         "
            + " .expand:before {          "
            + "    content: '+';          "
            + "    color: red;            "
            + "    position: absolute;    "
            + "    left: -1em;            "
            + " } "

            // Show "-" for elements that can be collapsed
            + " .collapse {               "
            + "    display: block;        "
            + " }                         "
            + " .collapse:before {        "
            + "    content: '-';          "
            + "    color: red;            "
            + "    position: absolute;    "
            + "    left:-1em;             "
            + " }                         ";

        // Build a <style> element to commit the styles to the current page
        style = document.createElementNS(XHTML, "style");
        root.insertBefore(style, root.firstChild);
        style.textContent = styles;
    }

    // XML Declaration
    function buildXMLDeclaration()
    {
        // Display an <?xml?> declaration based on DOM data
        var xmlDecl = document.createElementNS(XHTML, "div");
        xmlDecl.style.color = "blue";
        xmlDecl.style.fontWeight = "normal";
        xmlDecl.style.marginLeft = "-4em";
        xmlDecl.textContent = '<?xml version="1.0" encoding="ISO-8859-1"?>';
        root.insertBefore(xmlDecl, root.firstChild);
    }

    // Helper function to wrap text nodes with a container element
    // This allows them to be displayed/hidden as subtree visibility is toggled
    function wrapText(txt)
    {
        var treeNode = document.createElementNS(XHTML, "span");
        treeNode.style.fontWeight = "bold";
        txt.parentNode.insertBefore(treeNode, txt);
        treeNode.appendChild(txt);
        return treeNode;
    }

    // Helper function to insert a tree view node before a reference node
    // This moves the rendering for top-level nodes inside the root element
    function insertBefore(node, refNode)
    {
        if(refNode.parentNode == document)
        {
            // Move rendering inside the root element and adjust positioning accordingly
            node.style.marginLeft = "-4em";
            root.insertBefore(node, rootFirstChild);
        }
        else
        {
            refNode.parentNode.insertBefore(node, refNode);
        }
    }

    // Helper function for toggling the visibility of a element subtree
    function toggle(e)
    {
        // Grab target element, determine current state
        var node = e.currentTarget;
        var hide = (node.className == "collapse");

        // cancel event if there is a text selection in the node
        if(!window.getSelection().isCollapsed) {
            try {
                var selectionElement = window.getSelection().getRangeAt(0).commonAncestorContainer;
                if(node == selectionElement || node.contains(selectionElement)) {
                    return;
                }
            } catch (ex) {
                // no cancel then
            }
        }

        // update toggle
        node.className = (hide ? "expand" : "collapse");
        node.setAttribute('aria-expanded', (hide ? "false" : "true"));

        // Update visibility of all following elements / text nodes
        while(node = node.nextSibling)
        {
            if(node.nodeType == Node.TEXT_NODE)
            {
                // Wrap raw text nodes so we can toggle their visibility
                node = wrapText(node);
            }
            if(node.nodeType == Node.ELEMENT_NODE)
            {
                if(hide)
                {
                    node.setAttributeNS(XHTML, "hidden", "true");
                }
                else
                {
                    node.removeAttributeNS(XHTML, "hidden");
                }
            }
        }
        
        e.preventDefault();

        return false;
    }

    // Helper function for toggling the visibility of a CDATA content
    function toggleCData(e) {
        // Grab target element, determine current state, and update toggle
        var node = e.currentTarget;
        var hide = (node.className == "collapse");
        node.className = (hide) ? "expand" : "collapse";

        // Update visibility of all following elements / text nodes
        var cdataContent = node.firstChild.nextSibling;
        if (hide) {
            cdataContent.setAttributeNS(XHTML, "hidden", "true");
        }
        else {
            cdataContent.removeAttributeNS(XHTML, "hidden");
        }

        return false;
    }
    
    var focusNavigator = document.createTreeWalker(document.documentElement, NodeFilter.SHOW_ELEMENT, function(element) { return element.hasAttribute('tabindex') && getComputedStyle(element).display != 'none' });
    function handleKeys(e) {
        switch(e.key) {
            case 'Down': case 'ArrowDown':
            case 'j': case 'J':
            {
                focusNavigator.currentNode = document.activeElement;
                try {
                    focusNavigator.nextNode();
                    if(e.shiftKey) {
                        while(focusNavigator.currentNode.parentElement.ariaLevel > document.activeElement.parentElement.ariaLevel) {
                            if(!focusNavigator.nextNode()) return;
                        }
                    }
                    focusNavigator.currentNode.focus()
                } catch (ex) {}
                e.preventDefault();
                break;
            }
            case 'Up': case 'ArrowUp':
            case 'k': case 'K':
            {
                focusNavigator.currentNode = document.activeElement;
                try {
                    focusNavigator.previousNode();
                    if(e.shiftKey) {
                        while(focusNavigator.currentNode.parentElement.ariaLevel > document.activeElement.parentElement.ariaLevel) {
                            if(!focusNavigator.previousNode()) return;
                        }
                    }
                    focusNavigator.currentNode.focus()
                } catch (ex) {}
                e.preventDefault();
                break;
            }
            case 'Enter': case 'Return':
            case 'Space': case 'SapceBar':
            {
                try { document.activeElement.click(); } catch (ex) {}
                break;
            }
            case 'Left': case 'ArrowLeft':
            {
                if(!e.altKey && document.activeElement.classList.contains('collapse')) {
                    document.activeElement.click();
                    break;
                }
                focusNavigator.currentNode = document.activeElement;
                try {
                    while(focusNavigator.currentNode.parentElement.ariaLevel >= document.activeElement.parentElement.ariaLevel) {
                        focusNavigator.previousNode();
                    }
                    focusNavigator.currentNode.focus()
                } catch (ex) {}
                e.preventDefault();
                break;
            }
            case 'Right': case 'ArrowRight':
            {
                if(!e.altKey && document.activeElement.classList.contains('expand')) {
                    document.activeElement.click();
                }
                focusNavigator.currentNode = document.activeElement;
                try {
                    focusNavigator.nextNode();
                    if(focusNavigator.currentNode.parentElement.ariaLevel > document.activeElement.parentElement.ariaLevel) {
                        focusNavigator.currentNode.focus()
                    }
                } catch (ex) {}
                e.preventDefault();
                break;
            }
        }
    }

    window.addEventListener('keydown', handleKeys);
    buildTree();
})()
PA�PNG


IHDR$#���3PLTE���JVmBLaKWo���LXp�����ժ����tRNS+
&
���y˩s�IDATx^͒�� D���N���ڒr��������xI0���<����K�Qɥт;H�J:��%��I��i��y1,��RF��Eњ5�T*�D�TH��t�N�1'��\��44̇����d�7a�qU��a�	~\��Fgz\��/t�Z�)�IEND�B`�P�PNG


IHDR$,-�9IDATxŗ�OG���;*��<���
5qM*BJU*��Y�J1��\\�P
�1)M�[¥�)����"�l�4��G�|Q�Y[1ڑ>��ٙ�<;�ݹ��DIWI2���E� �	6<�5���E�G���v��C//B`�
�C�Ah���]ZZZ�B�������a(������#0�����NII�������>�o��w���>��b�
��#0�saaa��,X�@ ����qЀ����=E��	6<�ˉ�p8����z����qZwk�^U��(I�&���mss�-L����4�!/�}�y����z<��sꍏ�������`+�򭯮�6�B�i<���������V�[a����y/��4~.b[[�#����`+mll,�R��b�NG�xnZ������v70�
CkkksCCC2/� ��i��fs+�63c��0D�l���_�uzS#r�<���+	��Բ,?��l&�[ahqqq����x�Y?��FccGGG%c��0�����������{�PjjjqVV�u��\��l�3���������e존��✜�\�[a����YXX���2����t�J���1��f�QTT��;]e������]nn����Ћ�/���
��;7I75Z����o/�nU!c��0�r�z��+A��Z["��tEZA��3���^1� ~��]]p�K,0�Vr:��`(-3���$$� �ˣ���Т��T��:F��[a��t�TȦ�J����TUC�E3�؟[�w���^,kL��~��l�XZ�����꾫��o��z[}wE.J�o�K�q�,�`�b��&�鹭�s����f��F괶�<i��i}C��R��$Iz���=z�~*���bYr�
�_)G�E�^�KK��>cE��\[���>Lz�9O��٩#!!�����������z����SSS��������]Gܧ�������������a�S��"��a��<@9j�����4�5�`k4�:>;9�����$�}.�w�a���K��N�`�
W��b��"�OIEND�B`�PA�PNG


IHDR$,-��IDATxŗ]L[eǽT{�iD�����x�ׅ�mQ��κ5Gd��m�A�x-����%��"����4�pgh
b��~,��M�.|4���p̛�o��E���o�>�NO{ι#���K�'^&�СV8�F�|����ץ��.���Z�|��C�pȂ@�wttH�,�ɤs{{��}�?��[�J$���Լ�Ȃ@Ǫ���t:�K�
q�h�3j�KI�Rd@ʟ:J{��M�y�K�N���r����>���ּ��u���FdQar�x�M~���,���o�P�b{�/
5���8�uQ���
������Q�������ۜkD�E����q9�ߋ:::j���?˹\�@W�S,l#�b��a������ɜ�(�����{��t:����g8�Q���K,�E�
X����g�u__����\�E��!4��~/��l6���=���@6��b�Pw�h����sSSS�9�M�B<��g����yEQ�q.KɁ*}
��LhY��W���
>ʹ̢@&�A������;<44��2��������^�S˲|��v�G�wA��l�G2�Oe%�x���GL�=�z�����y�u����5v�΁H4v,��O����ݾ�h<�x�S=p�](�ɼ��<Z?����3�г�Ͼ�����{��8��@f2Fb������H��b$rT���whR)�,�������'�N�ѓ\���+���ҫ�ŗNR0<sk|��5<ܨ(J���h��>5;���v�=��==Vc�0�֝���r
n��ˁ@�4p�	7(�L=�7d�޵���d*�&Q����@߱��@�0}�����L4z������>���h�1�D���O���ϻ���}�छ�Y��:�֡�ht�`����l6��"܄�!���k���̙Ͽ��u�NO�N�������eV�U�j���{�p��e�#��W��7W8�� �_:���y��IEND�B`��PNG


IHDR#�.ƫ3PLTE���JVmBLaKWoLXp������ժ�����tRNS+
&
����z�mIDATx^���
� ����Z��?m�(t&�6Q����Q��ql�˦
��u�ƅ��!� �+�M-@���&Cȏv��y~���~�e���;3p^���6� X���vҦ�ˤ;XIEND�B`�PAD�PNG


IHDR#��6��IDATxڽWKlU�y�����O���#DQ�RĆ
����Ja���"bQ�۰�&a�]EEl)Y�&$$`A%�H#׀�BD(�"�r����9�<k2vlC�^�h���s|�׊��}?
�
�f���Í@7M��Z����wr��K��^xZ�u�O�^���ʮ��^X^^�X.�_��ظ���9z���^����N>�?����,��f^.
���l<��(�f�j��}/����/��322b---��>}p�̠�y�T*����-���a}}��A�zԥ>}�J����z��/}%w
+o�~��2��x��/\�[!���:��+��f<�;@Ԣ4��ػ��|V��ŝ��o\�m��ْ��_���M=
��ڛO������^S�S��&T��%��n������cH~�v3sP�Q��[�
Vc]�S��ajF%{�)ec�as�N�Ր��S�K���s��Fg�_E�Fޑ�l`����0�`�ؗ;�9�+��|rHFT����(��]��'mr�A8������q�K~�v��`�%)c�9~Gr���)؈�hBtKr9'zE�:mA]W�P�u;*ýI"�a�30s�?|���x^��İ�-�E�3-��Ӵ���i�m�bְ+��1���f<πS�q!4�	U��+��t�:ԣn�9c膑�8&m�ra>�Rî�eY	DZԡu;�(J̶����ɘe��R�q�԰+�H$+Сu;�6vf�M�Oa�50�Be(��:����\��>#�j9�I[��;�m�eR7l��N��_���ϟa�ѣ�1f<I�\�d��m�R�X8P�z�����Ü��8�+0����&��z�6���,+�@�Qt��%�t�g�lC��U��yll����\v�������W��κHR���O�k-.y���QE�hO�4�i���d��=^5qX6�w�4??o���� �>'�	t�LLL��f�wy9��z�zԥ>|��+)\���?��@7G���a�qV7�IEND�B`�PAD�PNG


IHDR#��6��IDATxڽWKOQ��;���,������0�B']i0��F
��(����D
&5ndAt�OS�������%m��9ӹu�V:@�$_z���}sa0�4e�I@'@�G�r�ye���d2�����Ң���=��
�C^�G(���А���}css�as0���=��
��b:::.!?�@1��D"1�Q��v���S�3��!?�@1V�@��{7)�,\��3+���?nmm���z�ы��o�b�wp�	�r�CE��"�HO2���♥b8��Y,�>{ P�F�$�Ji.���)F��pb�ͼ��ܶ�����š��+'f�����4M���i��\�g���������r`P�Y�Ӥ��+Ak�~������1t]-����4�L_Sc펷Ķ8�1���š��*M�߱8�fj��m/p�c���š��Xr��
�O��y��34��������g��3{0�ք߽�33��w���� �(�ns_b���<ϡ�=���'�����HL�f4]��-���t�-����$I"˲R*��c���Xu��(3���t:%�1ﳐJ�*�Q�dH��r ���u^�t?dȯjj��J�L}}����a�<��Gޢi�!\�$�49�"����~7>��<�9�I��)��J���dBx�e��eq���)K�Q8:4�za�]y�s�����@2��2�,o���9k'�h�o��N�!���$Y�j�k���ll��	��8�#�SL��J4����~N���?�X�'���'��An�'T��g��:��Z�1`܀q�Y[>G�.K��l$+��D��/�������8�������{w�1�8�9`0	xa�3�i����c{�����a�1�y�|�;88���Ӆ��~%�w�!���䧧)�@�!Qvټ����vl�4ZIEND�B`�PA