�����JFIF��XX����������    $.' ",#(7),01444'9=82<.342  2!!22222222222222222222222222222222222222222222222222�����"����4���������������������������� ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������,�PG"Z_�4�˷����kjز�Z�,F+��_z�,�© �����zh6�٨�ic�fu������������������������������������#ډb���_�N��?�����������wQ���5-�~�I���8���������������������������������TK<5o�Iv-������������������k�_U_������������������������������~b�M��d��������Ӝ�U�Hh��?]��E�w��Q���k�{��_}qFW7HTՑ��Y��F�����?_�'ϔ��_�Ջt������������������������=||I �����6�έ"�����D���/[�k�9����Y�8������ds|\���Ҿp6�Ҵ���]��.����6���z<�v��@]�i%������������������������$j��~����g��J>��no����pM[me�i$[�����������s�o�ᘨ�˸ nɜG-�ĨU�ycP���3.DB�li�;���������������������hj���x����7Z^�N�h��������N3u{�:j�����x�힞��#M��&��jL P@��_���� P�������������������&��o8��������9������@Sz���6�t7#O�ߋ �����s}Yf�T������lmr����Z)'N��k�۞p�����w\�T���������������ȯ?�8`���O��i{wﭹW�[�r�� ��Q4F�׊������3m&L�=��h3�������z~��#����\�l :�F,j@�� ʱ�wQT����8�"kJO����6�֚l������������������}����R�>ډK���]��y����&����p�}b������;N�1�m�r$����|��7�>e�@���B�TM*-i�H��g�D�)� E�m�|�ؘbҗ�a���Ҿ����������������t4�����o���G��*oCN�rP���Q��@z,|?W[0���������:�n,j���WiE��W������$~/�hp\��?��{(�0���+�Y8rΟ�+����>S-S���������������VN;���}�s?.����� w��9��˟<���Mq4�Wv'������{)0�1mB����V����W[��������8�/<� �%���wT^�5���b��)iM� p�g�N�&ݝ������������VO~��q���u���9��� ����!��J27�����$����O-���! �:���%H��� ـ�������y�ΠM=t{!S�� �oK8�������t<����è��������:a��������[������ա�H���~��w��Qz`�p����o�^ ������Q��n����� �,uu�C��$ ^���,�������8�#��:�6��e�|~�����������!�3��3.�\0�����q��o�4`.|� ����y�Q�`~;�d�ׯ,��O�Zw�������`73�v�܋�<�����Ȏ�� ـ4k��5�K�a�u�=9Yd��$>x�A�&�� j0� ���vF��� Y���|�y��� ~�6�@c��1vOp��������Ig�����4��l�OD�����L����� R���c���j�_�uX�6��3?nk��Wy�f;^*B� ��@���~a�`��Eu�������+�����6�L��.ü>��}y���}_�O�6�͐�:�Yr���G�X��kG������l^w����������~㒶sy���Iu�!���� W ��X��N�7BV��O��!X�2����wvG�R�f�T#�����t�/?���%8�^�W�aT����G�cL�M���I��(J����1~�8�?aT ���]����AS�E��(��*E}� 2������#I/�׍qz��^t�̔���������b�Yz4x����t�){ OH�����+(E��A&�N�������XT��o��"�XC����'���)}�J�z�p� ����~5�}�^����+�6����w��c��Q�|�Lp�d�H��}�(�.|����k��c4^�����"�����Z?ȕ ��a<�������L�!0�39C� �Eu�����C�F�Ew�ç ;�n?�*o���B�8�bʝ���'#Rqf����M}7����]�������s2tcS{�\icTx;�\��7K���P������ʇ Z O-��~�������c>"��?��������P�����E��O�8��@�8��G��Q�g�a�Վ���󁶠��䧘��_%#r�>�����1�z�a���eb��qcP��ѵ��n���#L��� =��׀t� L�7�`�����V����A{�C:�g���e@�����w1 Xp�3�c3�ġ�������p��M"'-�@n4���fG���B3�DJ�8[Jo�ߐ���gK)ƛ��$���� �������8�3�����+���� �����6�ʻ���� ���S�kI�*KZlT _`�������?��K�����QK�d���������B`�s}�>���`������*�>��,*@J�d�oF*�����弝��O}�k��s��]��y�ߘ�������c1G�V���<=�7��7����6��q�PT��tXԀ�!9*4�4Tހ���3XΛex�46�������Y��D ����� ����BdemDa����\�_l,����G�/���֌7���Y�](�xTt^%�GE�����4�}bT����ڹ�����;��Y)���B�Q��u��>J/J ���⮶.�XԄ��j�ݳ������+E��d ���r�5�_D�����1 ���o�� �B�x�΢�#����<��W�����8���R6�@���g�M�.��� dr�D��>(otU��@�x=��~v���2� ӣ�d�oBd�����3�eO�6�㣷����������ݜ�6��6Y��Qz`����S��{���\P��~z m5{J/L��1������<�e�ͅPu���b�]�ϔ��������'�������f�b� Zpw��c`"��i���BD@:)ִ�:�]��h���v�E��w���T�l�������P����"Ju�}��وV ��J��G6��. J/�Qgl߭�e�����@�z�Zev2u����)]կ���������7x�������s�M�-<ɯ�c��r��v�����@��$�ޮ}lk���a����'����>x��O\�Z������Fu>������ck#��&:��`�$��ai�>2Δ����l���oF[h�������lE�ܺ�Π���k:)���`������� $[6�����9�����kOw�\|�����8}������ބ:��񶐕��������I�A1/���=�2[�,�!��.}gN#�u����b���� ~���������݊��}34q�����d�E��L��������c��$���"�[q�U�硬g^��%B ��z���r�p�������J�ru%v\h�����1Y�ne`������ǥ:g����pQM~�^��Xi� ��`S�:V2������9.�P���V������?B�k�� ��������AEvw%�_�9C�Q����wKekP�ؠ�\������;Io d�{ ߞo�c1eP�����\� `����E=���@K<�Y��������eڼ�J����w����{av�F�'�M�@��������������/J��+9p����|]���������Iw &`���8���&�M�hg���[�{�������Xj���%��Ӓ�������������������$��(�����ʹN�������<>�I���RY�����K2�NPlL�ɀ�)��&e��������B+ь����(������������������� � �JTx����_?EZ� }@���� 6�U���뙢ط�z��dWI��n` D����噥�[��uV��"�G&�����Ú����2�g�}&m���������������������?ċ���"����Om#�������������������������� ��{���������������������ON��"S�X���Ne��ysQ���@�������������Fn��Vg�����dX�~nj����������������������]J�<�K]:����FW���b�������62����������=��5f����JKw����bf�X������������������������55��~J �%^�������:�-�QIE��P��v�nZum� z � ~ə ���� ���ة����;�f��\v�������g�8�1��f2�������������������������4;�V���ǔ�)�������������������9���1\������������������������������c��v�/'Ƞ�w������������������$�4�R-��t����������������������������������� e�6�/�ġ �̕Ecy�J���u�B���<�W�ַ~�w[B1L۲�-JS΂�{���΃�������������������������������������������A��20�c#���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@���� 0!1@AP"#2Q`$3V�%45a6�FRUq����� ������^7ׅ,$n��������+��F�`��2X'��0vM��p�L=�������5��8������u�p~���.�`r�����\����O��,ư�0oS ��_�M�����l���4�kv\JSd���x���SW�<��Ae�IX����������$I���w�:S���y���›R��9�Q[���,�5�;�@]�%���u�@ *ro�lbI �� ��+���%m:�͇ZV�����u�̉����θau<�fc�.����{�4Ա� �Q����*�Sm��8\ujqs]{kN���)qO�y�_*dJ�b�7���yQqI&9�ԌK!�M}�R�;�������S�T���1���i[U�ɵz�]��U)V�S6���3$K{��ߊ<�(� E]Զ[ǼENg�����'�\?#)Dkf��J���o��v���'�%ƞ�&K�u��!��b�35LX�Ϸ��63$K�a�;�9>,R��W��3�3� d�JeTYE.Mϧ��-�o�j3+y��y^�c�������VO�9NV\nd�1 ��!͕_)a�v;����թ�M�lWR1��)El��P;��yوÏ�u 3�k�5Pr6<�⒲l�!˞*��u־�n�!�l:����UNW ��%��Chx8vL'��X�@��*��)���̮��ˍ��� ����D-M�+J�U�kvK����+�x8��cY������?�Ԡ��~3mo��|�u@[XeY�C�\Kp�x8�oC�C�&����N�~3-H���� ��MX�s�u<`���~"WL��$8ξ��3���a�)|:@�m�\���^�`�@ҷ)�5p+��6���p�%i)P M���ngc�����#0Aruz���RL+xSS?���ʮ}()#�t��mˇ!��0}}y����<�e� �-ή�Ԩ��X������ MF���ԙ~l L.3���}�V뽺�v������멬��Nl�)�2����^�Iq��a��M��qG��T�����c3#������3U�Ǎ���}��לS�|qa��ڃ�+���-��2�f����/��bz��ڐ�� �ݼ[2�ç����k�X�2�* �Z�d���J�G����M*9W���s{��w���T��x��y,�in�O�v��]���n����P�$��JB@=4�OTI�n��e�22a\����q�d���%�$��(���:���: /*�K[PR�fr\nڙdN���F�n�$�4��[�� U�zƶ����� �mʋ���,�ao�u 3�z� �x��Kn����\[��VFmbE;�_U��&V�Gg�]L�۪&#n%�$ɯ��dG���D�TI=�%+AB�Ru#��b4�1�»x�cs�YzڙJG��f��Il���d�eF'T� iA��T���uC�$����Y��H?����[!G`}���ͪ� �纤Hv\������j�Ex�K���!���OiƸ�Yj�+u-<���'q����uN�*�r\��+�]���<�wOZ.fp�ێ��,-*)V?j-kÊ#�`�r��dV����(�ݽBk�����G�ƛk�QmUڗe��Z���f}|����8�8��a���i��3'J�����~G_�^���d�8w������ R�`(�~�.��u���l�s+g�bv���W���lGc}��u���afE~1�Ue������Z�0�8�=e�� f@/�jqEKQQ�J���oN��J���W5~M>$6�Lt�;$ʳ{���^��6�{����v6���ķܰg�V�cnn �~z�x�«�,2�u�?cE+Ș�H؎�%�Za�)���X>uW�Tz�Nyo����s���FQƤ��$��*�&�LLXL)�1�" L��eO��ɟ�9=���:t��Z���c��Ž���Y?�ӭV�wv�~,Y��r�ۗ�|�y��GaF�����C�����.�+� ���v1���fήJ�����]�S��T��B��n5sW}y�$��~z�'�c ��8 ��� ,! �p��VN�S��N�N�q��y8z˱�A��4��*��'������2n<�s���^ǧ˭P�Jޮɏ�U�G�L�J�*#��<�V��t7�8����TĜ>��i}K%,���)[��z�21z ?�N�i�n1?T�I�R#��m-�����������������1����lA�`��fT5+��ܐ�c�q՝��ʐ��,���3�f2U�եmab��#ŠdQ�y>\��)�SLY����w#��.���ʑ�f��� ,"+�w�~�N�'�c�O�3F�������N<���)j��&��,-� �љ���֊�_�zS���TǦ����w�>��?�������n��U仆�V���e�����0���$�C�d���rP �m�׈e�Xm�Vu� �L��.�bֹ��� �[Դaզ���*��\y�8�Է:�Ez\�0�Kq�C b��̘��cө���Q��=0Y��s�N��S.����3.���O�o:���#���v7�[#߫ ��5�܎�L���Er4���9n��COWlG�^��0k�%<���ZB���aB_���������'=��{i�v�l�$�uC���mƎҝ{�c㱼�y]���W�i ��ߧc��m�H� m�"�"�����;Y�ߝ�Z�Ǔ�����:S#��|}�y�,/k�Ld� TA�(�AI$+I3��;Y*���Z��}|��ӧO��d�v��..#:n��f>�>���ȶI�TX��� 8��y����"d�R�|�)0���=���n4��6ⲑ�+��r<�O�܂~zh�z����7ܓ�HH�Ga롏���nCo�>������a ���~]���R���̲c?�6(�q�;5%� |�uj�~z8R�=X��I�V=�|{v�Gj\gc��q����z�؋%M�ߍ����1y��#��@f^���^�>N������#x#۹��6�Y~�?�dfPO��{��P�4��V��u1E1J �*|���%����JN��`eWu�zk M6���q t[�� ��g�G���v��WIG��u_ft����5�j�"�Y�:T��ɐ���*�;� e5���4����q$C��2d�}���� _S�L#m�Yp��O�.�C�;��c����Hi#֩%+) �Ӎ��ƲV���SYź��g |���tj��3�8���r|���V��1#;.SQ�A[���S������#���`n�+���$��$�I �P\[�@�s��(�ED�z���P��])8�G#��0B��[ى��X�II�q<��9�~[Z멜�Z�⊔IWU&A>�P~�#��dp<�?����7���c��'~���5 ��+$���lx@�M�dm��n<=e�dyX��?{�|Aef ,|n3�<~z�ƃ�uۧ�����P��Y,�ӥQ�*g�#먙R�\���;T��i,��[9Qi歉����c>]9�� ��"�c��P�� �Md?٥��If�ت�u��k��/����F��9�c*9��Ǎ:�ØF���z�n*�@|I�ށ9����N3{'��[�'ͬ�Ҳ4��#}��!�V� Fu��,�,mTIk���v C�7v���B�6k�T9��1�*l� '~��ƞF��lU��'�M ����][ΩũJ_�{�i�I�n��$����L�� j��O�dx�����kza۪��#�E��Cl����x˘�o�����V���ɞ�ljr��)�/,�߬h�L��#��^��L�ф�,íMƁe�̩�NB�L�����iL����q�}��(��q��6IçJ$�W�E$��:������=#����(�K�B����zђ <��K(�N�۫K�w��^O{!����)��H���>x�������lx�?>Պ�+�>�W���,Ly!_�D���Ō�l���Q�!�[ �S����J��1��Ɛ�Y}��b,+�Lo�x�ɓ)����=�y�oh�@�꥟/��I��ѭ=��P�y9��� �ۍYӘ�e+�p�Jnϱ?V\SO%�(�t� ���=?MR�[Ș�����d�/ ��n�l��B�7j� ��!�;ӥ�/�[-���A�>��dN�sLj ��,ɪv��=1c�.SQ�O3�U���ƀ�ܽ�E����������̻��9G�ϷD�7(�}��Ävӌ\��y�_0[w ���<΍>����a_��[0+�L��F.�޺��f�>oN�T����q;���y\��bՃ��y�jH�<|q-eɏ�_?_9+P���Hp$�����[ux�K w�Mw��N�ی'$Y2�=��q���KB��P��~�������Yul:�[<����F1�2�O���5=d����]Y�sw:���Ϯ���E��j,_Q��X��z`H1,#II ��d�wr��P˂@�ZJV����y$�\y�{}��^~���[:N����ߌ�U�������O��d�����ؾe��${p>G��3c���Ė�lʌ�� ת��[��`ϱ�-W����dg�I��ig2��� ��}s ��ؤ(%#sS@���~���3�X�nRG�~\jc3�v��ӍL��M[JB�T��s3}��j�Nʖ��W����;7���ç?=X�F=-�=����q�ߚ���#���='�c��7���ڑW�I(O+=:uxq�������������e2�zi+�kuG�R��������0�&e�n���iT^J����~\jy���p'dtG��s����O��3����9* �b#Ɋ�� p������[Bws�T�>d4�ۧs���nv�n���U���_�~,�v����ƜJ1��s�� �QIz���)�(lv8M���U=�;����56��G���s#�K���MP�=��LvyGd��}�VwWBF�'�à �?MH�U�g2�� ����!�p�7Q��j��ڴ����=��j�u��� Jn�A s���uM������e��Ɔ�Ҕ�!)�'��8Ϣ�ٔ���ޝ(��Vp���צ֖d=�IC�J�Ǡ{q������kԭ�߸���i��@K����u�|�p=..�*+����x�����z[Aqġ#s2a�Ɗ���RR�)*HRsi�~�a &f��M��P����-K�L@��Z��Xy�'x�{}��Zm+���:�)�) IJ�-i�u���� ���ܒH��'��L(7�y�GӜq���� j��� 6ߌg1�g�o���,kر���tY�?W,���p���e���f�OQS��!K�۟cҒA�|ս�j�>��=⬒��˧L[�� �߿2JaB~R��u�:��Q�] �0H~���]�7��Ƽ�I���(�}��cq '�ήET���q�?f�ab���ӥvr� �)o��-Q��_'����ᴎo��K������;��V���o��%���~OK ����*��b�f:���-ťIR��`B�5!RB@���ï�� �u �̯e\�_U�_������� g�ES��3��������QT��a�����x����U<~�c?�*�#]�MW,[8O�a�x��]�1bC|踤�P��lw5V%�)�{t�<��d��5���0i�XSU��m:��Z�┵�i�"��1�^B�-��P�hJ��&)O��*�D��c�W��vM��)����}���P��ܗ-q����\mmζZ-l@�}��a��E�6��F�@��&Sg@���ݚ�M����� ȹ 4����#p�\H����dYDo�H���"��\��..R�B�H�z_�/5˘����6��KhJR��P�mƶi�m���3��,#c�co��q�a)*P�t����R�m�k�7x�D�E�\Y�閣_X�<���~�)���c[[�BP����6�Yq���S��0����%_����;��Àv�~�| VS؇ ��'O0��F0��\���U�-�d@�����7�SJ*z��3n��y��P����O����������m�~�P�3|Y��ʉr#�C�<�G~�.,! ���bqx���h~0=��!ǫ�jy����l��O,�[B��~��|9��ٱ����Xly�#�i�B��g%�S��������tˋ���e���ې��\[d�t)��.+u�|1 ������#�~Oj����hS�%��i.�~X���I�H�m��0n���c�1uE�q��cF�RF�o���7� �O�ꮧ� ���ۛ{��ʛi5�rw?׌#Qn�TW��~?y$��m\�\o����%W� ?=>S�N@�� �Ʈ���R����N�)�r"C�:��:����� �����#��qb��Y�. �6[��2K����2u�Ǧ�HYR��Q�MV��� �G�$��Q+.>�����nNH��q�^��� ����q��mM��V��D�+�-�#*�U�̒ ���p욳��u:�������IB���m����PV@O���r[b= �� ��1U�E��_Nm�yKbN�O���U�}�the�`�|6֮P>�\2�P�V���I�D�i�P�O;�9�r�mAHG�W�S]��J*�_�G��+kP�2����Ka�Z���H�'K�x�W�MZ%�O�YD�Rc+o��?�q��Ghm��d�S�oh�\�D�|:W������UA�Qc yT�q��������~^�H��/��#p�CZ���T�I�1�ӏT����4��"�ČZ�����}��`w�#�*,ʹ�� ��0�i��課�Om�*�da��^gJ݅{���l�e9uF#T�ֲ��̲�ٞC"�q���ߍ ոޑ�o#�XZTp����@ o�8��(jd��xw�]�,f���`~��|,s��^����f�1���t��|��m�򸄭/ctr��5s��7�9Q�4�H1꠲BB@�l9@���C�����+�wp�xu�£Yc�9��?`@#�o�mH�s2��)�=��2�.�l����jg�9$�Y�S�%*L������R�Y������7Z���,*=�䷘$�������arm�o�ϰ���UW.|�r�uf����IGw�t����Zwo��~5 ��YյhO+=8fF�)�W�7�L9lM�̘·Y���֘YLf�큹�pRF���99.A �"wz��=E\Z���'a� 2��Ǚ�#;�'}�G���*��l��^"q��+2FQ� hj��kŦ��${���ޮ-�T�٭cf�|�3#~�RJ����t��$b�(R��(����r���dx� >U b�&9,>���%E\� Ά�e�$��'�q't��*�א���ެ�b��-|d���SB�O�O��$�R+�H�)�܎�K��1m`;�J�2�Y~9��O�g8=vqD`K[�F)k�[���1m޼c��n���]s�k�z$@��)!I �x՝"v��9=�ZA=`Ɠi �:�E��)`�7��vI��}d�YI�_ �o�:ob���o ���3Q��&D&�2=�� �Ά��;>�h����y.*ⅥS������Ӭ�+q&����j|UƧ�����}���J0��WW< ۋS�)jQR�j���Ư��rN)�Gű�4Ѷ(�S)Ǣ�8��i��W52���No˓� ۍ%�5brOn�L�;�n��\G����=�^U�dI���8$�&���h��'���+�(������cȁ߫k�l��S^���cƗjԌE�ꭔ��gF���Ȓ��@���}O���*;e�v�WV���YJ\�]X'5��ղ�k�F��b 6R�o՜m��i N�i�����>J����?��lPm�U��}>_Z&�KK��q�r��I�D�Չ~�q�3fL�:S�e>���E���-G���{L�6p�e,8��������QI��h��a�Xa��U�A'���ʂ���s�+טIjP�-��y�8ۈZ?J$��W�P� ��R�s�]��|�l(�ԓ��sƊi��o(��S0���Y� 8�T97.�����WiL��c�~�dxc�E|�2!�X�K�Ƙਫ਼�$((�6�~|d9u+�qd�^3�89��Y�6L�.I�����?���iI�q���9�)O/뚅����O���X��X�V��ZF[�یgQ�L��K1���RҖr@v�#��X�l��F���Нy�S�8�7�kF!A��sM���^rkp�jP�DyS$N���q���nxҍ!U�f�!eh�i�2�m����`�Y�I�9r�6� �TF���C}/�y�^���Η���5d�'��9A-��J��>{�_l+�`��A���[�'��յ�ϛ#w:݅�%��X�}�&�PSt�Q�"�-��\縵�/����$Ɨh�Xb�*�y��BS����;W�ջ_mc�����vt?2}1�;qS�d�d~u:2k5�2�R�~�z+|HE!)�Ǟl��7`��0�<�,�2*���Hl-��x�^����'_TV�gZA�'j� ^�2Ϊ��N7t�����?w�� �x1��f��Iz�C-Ȗ��K�^q�;���-W�DvT�7��8�Z�������� hK�(P:��Q- �8�n�Z���܃e貾�<�1�YT<�,�����"�6{�/ �?�͟��|1�:�#g��W�>$����d��J��d�B���=��jf[��%rE^��il:��B���x���Sּ�1հ��,�=��*�7 fcG��#q� �eh?��2�7�����,�!7x��6�n�LC�4x��},Geǝ�tC.��vS �F�43��zz\��;QYC,6����~;RYS/6���|2���5���v��T��i����������mlv��������&� �nRh^ejR�LG�f���? �ۉҬܦƩ��|��Ȱ����>3����!v��i�ʯ�>�v��オ�X3e���_1z�Kȗ\<������!�8���V��]��?b�k41�Re��T�q��mz��TiOʦ�Z��Xq���L������q"+���2ۨ��8}�&N7XU7Ap�d�X��~�׿��&4e�o�F��� �H�����O���č�c�� 懴�6���͉��+)��v;j��ݷ�� �UV�� i��� j���Y9GdÒJ1��詞�����V?h��l�����l�cGs�ځ�������y�Ac������\V3�? �� ܙg�>qH�S,�E�W�[�㺨�uch�⍸�O�}���a��>�q�6�n6�����N6�q��������N� ���! 1AQaq�0@����"2BRb�#Pr���3C`��Scst���$4D���%Td���� ?�����N����a��3��m���C���w��������xA�m�q�m����m������$����4n淿t'��C"w��zU=D�\R+w�p+Y�T�&�պ@��ƃ��3ޯ?�Aﶂ��aŘ���@-�����Q�=���9D��ռ�ѻ@��M�V��P��܅�G5�f�Y<�u=,EC)�<�Fy'�"�&�չ�X~f��l�KԆV��?�� �W�N����=(� �;���{�r����ٌ�Y���h{�١������jW����P���Tc�����X�K�r��}���w�R��%��?���E��m�� �Y�q|����\lEE4����r���}�lsI�Y������f�$�=�d�yO����p�����yBj8jU�o�/�S��?�U��*������ˍ�0�������u�q�m [�?f����a�� )Q�>����6#������� ?����0UQ����,IX���(6ڵ[�DI�MNލ�c&���υ�j\��X�R|,4��� j������T�hA�e��^���d���b<����n�� �즇�=!���3�^�`j�h�ȓr��jẕ�c�,ٞX����-����a�ﶔ���#�$��]w�O��Ӫ�1y%��L�Y<�wg#�ǝ�̗`�x�xa�t�w��»1���o7o5��>�m뭛C���Uƃߜ}�C���y1Xνm�F8�jI���]����H���ۺиE@I�i;r�8ӭ�����V�F�Շ| ��&?�3|x�B�MuS�Ge�=Ӕ�#BE5G������Y!z��_e��q�р/W>|-�Ci߇�t�1ޯќd�R3�u��g�=0 5��[?�#͏��q�cf���H��{ ?u�=?�?ǯ���}Z��z���hmΔ�BFTW�����<�q��(v� ��!��z���iW]*�J�V�z��gX֧A�q�&��/w���u�gYӘa���; �i=����g:��?2�dž6�ى�k�4�>�Pxs����}������G�9���3 ���)gG�R<>r h�$��'nc�h�P��Bj��J�ҧH� -��N1���N��?��~��}-q!=��_2hc�M��l�vY%UE�@|�v����M2�.Y[|y�"Eï��K�ZF,�ɯ?,q�?v�M 80jx�"�;�9vk�����+ ֧�� �ȺU��?�%�vcV��mA�6��Qg^M�����A}�3�nl� QRN�l8�kkn�'�����(��M�7m9و�q���%ޟ���*h$Zk"��$�9��: �?U8�Sl��,,|ɒ��xH(ѷ����Gn�/Q�4�P��G�%��Ա8�N��!� �&�7�;���eKM7�4��9R/%����l�c>�x;������>��C�:�����t��h?aKX�bhe�ᜋ^�$�Iհ �hr7%F$�E��Fd���t��5���+�(M6�t����Ü�UU|zW�=a�Ts�Tg������dqP�Q����b'�m���1{|Y����X�N��b �P~��F^F:����k6�"�j!�� �I�r�`��1&�-$�Bevk:y���#y�w��I0��x��=D�4��tU���P�ZH��ڠ底taP��6����b>�xa�����Q�#� WeF��ŮNj�p�J* mQ�N�����*I�-*�ȩ�F�g�3 �5��V�ʊ�ɮ�a��5F���O@{���NX��?����H�]3��1�Ri_u��������ѕ�� ����0��� F��~��:60�p�͈�S��qX#a�5>���`�o&+�<2�D����: �������ڝ�$�nP���*)�N�|y�Ej�F�5ټ�e���ihy�Z �>���k�bH�a�v��h�-#���!�Po=@k̆IEN��@��}Ll?j�O������߭�ʞ���Q|A07x���wt!xf���I2?Z��<ץ�T���cU�j��]���陎Ltl �}5�ϓ��$�,��O�mˊ�;�@O��jE��j(�ا,��LX���LO���Ц�90�O �.����a��nA���7������j4 ��W��_ٓ���zW�jcB������y՗+EM�)d���N�g6�y1_x��p�$Lv�:��9�"z��p���ʙ$��^��JԼ*�ϭ����o���=x�Lj�6�J��u82�A�H�3$�ٕ@�=Vv�]�'�qEz�;I˼��)��=��ɯ���x �/�W(V���p�����$ �m�������u�����񶤑Oqˎ�T����r��㠚x�sr�GC��byp�G��1ߠ�w e�8�$⿄����/�M{*}��W�]˷.�CK\�ުx���/$�WP�w���r� |i���&�}�{�X� �>��$-��l���?-z���g����lΆ���(F���h�vS*���b���߲ڡn,|)mrH[���a�3�ר�[1��3o_�U�3�TC�$��(�=�)0�kgP���� ��u�^=��4 �WYCҸ:��vQ�ר�X�à��tk�m,�t*��^�,�}D*�� �"(�I��9R����>`�`��[~Q]�#af��i6l��8���6�:,s�s�N6�j"�A4���IuQ��6E,�GnH��zS�HO�uk�5$�I�4��ؤ�Q9�@��C����wp��BGv[]�u�Ov����0I4���\��y�����Q�Ѹ��~>Z��8�T��a��q�ޣ;z��a���/��S��I:�ܫ_�|������>=Z����8:�S��U�I�J��"IY���8%b8���H��:�QO�6�;7�I�S��J��ҌAά3��>c���E+&jf$eC+�z�;��V����� �r���ʺ������my�e���aQ�f&��6�ND���.:��NT�vm�<- u���ǝ\MvZY�N�NT��-A�>jr!S��n�O 1�3�Ns�%�3D@���`������ܟ 1�^c<���� �a�ɽ�̲�Xë#�w�|y�cW�=�9I*H8�p�^(4���՗�k��arOcW�tO�\�ƍR��8����'�K���I�Q�����?5�>[�}��yU�ײ -h��=��% q�ThG�2�)���"ו3]�!kB��*p�FDl�A���,�eEi�H�f�Ps�����5�H:�Փ~�H�0Dت�D�I����h�F3�������c��2���E��9�H��5�zԑ�ʚ�i�X�=:m�xg�hd(�v����׊�9iS��O��d@0ڽ���:�p�5�h-��t�&���X�q�ӕ,��ie�|���7A�2���O%P��E��htj��Y1��w�Ѓ!����  ���� ࢽ��My�7�\�a�@�ţ�J ��4�Ȼ�F�@o�̒?4�wx��)��]�P��~�����u�����5�����7X ��9��^ܩ�U;Iꭆ 5 �������eK2�7(�{|��Y׎ �V��\"���Z�1� Z�����}��(�Ǝ"�1S���_�vE30>���p;� ΝD��%x�W�?W?v����o�^V�i�d��r[��/&>�~`�9Wh��y�;���R���� ;;ɮT��?����r$�g1�K����A��C��c��K��l:�'��3 c�ﳯ*"t8�~l��)���m��+U,z��`(��>yJ�?����h>��]��v��ЍG*�{`��;y]��I�T� ;c��NU�fo¾h���/$���|NS���1�S�"�H��V���T���4��uhǜ�]�v;���5�͠x��'C\�SBpl���h}�N����� A�Bx���%��ޭ�l��/����T��w�ʽ]D�=����K���ž�r㻠l4�S�O?=�k �M:� ��c�C�a�#ha���)�ѐxc�s���gP�iG���{+���x���Q���I= �� z��ԫ+ �8"�k�ñ�j=|����c ��y��CF��/���*9ж�h{ �?4�o� ��k�m�Q�N�x��;�Y��4膚�a�w?�6�>�e]�����Q�r�:����g�,i"�����ԩA��*M�<�G��b�if��l^M��5�� �Ҩ�{����6J��ZJ�����P�*�����Y���ݛu�_4�9�I8�7���������,^ToR���m4�H��?�N�S�ѕw��/S��甍�@�9H�S�T��t�ƻ���ʒU��*{Xs�@����f������֒Li�K{H�w^���������Ϥm�tq���s� ���ք��f:��o~s��g�r��ט� �S�ѱC�e]�x���a��) ���(b-$(�j>�7q�B?ӕ�F��hV25r[7 Y� }L�R��}����*sg+��x�r�2�U=�*'WS��ZDW]�WǞ�<��叓���{�$�9Ou4��y�90-�1�'*D`�c�^o?(�9��u���ݐ��'PI&� f�Jݮ�������:wS����jfP1F:X �H�9dԯ����˝[�_54 �}*;@�ܨ�� ð�yn�T���?�ןd�#���4rG�ͨ��H�1�|-#���Mr�S3��G�3�����)�.᧏3v�z֑��r����$G"�`j �1t��x0<Ɔ�Wh6�y�6��,œ�Ga��gA����y��b��)���h�D��ß�_�m��ü �gG;��e�v��ݝ�nQ� ��C����-�*��o���y�a��M��I�>�<���]obD��"�:���G�A��-\%LT�8���c�)��+y76���o�Q�#*{�(F�⽕�y����=���rW�\p���۩�c���A���^e6��K������ʐ�cVf5$�'->���ՉN"���F�"�UQ@�f��Gb~��#�&�M=��8�ט�JNu9��D��[̤�s�o�~������� G��9T�tW^g5y$b��Y'��س�Ǵ�=��U-2 #�MC�t(�i� �lj�@Q 5�̣i�*�O����s�x�K�f��}\��M{E�V�{�υ��Ƈ�����);�H����I��fe�Lȣr�2��>��W��I�Ȃ6������i��k�� �5�YOxȺ����>��Y�f5'��|��H+��98pj�n�.O�y�������jY��~��i�w'������l�;�s�2��Y��:'lg�ꥴ)o#'Sa�a�K��Z� �m��}�`169�n���"���x��I ��*+� }F<��cГ���F�P�������ֹ*�PqX�x۩��,� ��N�� �4<-����%����:��7����W���u�`����� $�?�I��&����o��o��`v�>��P��"��l���4��5'�Z�gE���8���?��[�X�7(��.Q�-��*���ތL@̲����v��.5���[��=�t\+�CNܛ��,g�SQnH����}*F�G16���&:�t��4ُ"A��̣��$�b �|����#rs��a�����T�� ]�<�j��B�S�('$�ɻ� �wP;�/�n��?�ݜ��x�F��yUn�~mL*-�������Xf�wd^�a�}��f�,=t�׵i�.2/wpN�Ep8�OР���•��R�FJ� 55TZ��T �ɭ�<��]��/�0�r�@�f��V��V����Nz�G��^���7hZi����k��3�,kN�e|�vg�1{9]_i��X5y7� 8e]�U����'�-2,���e"����]ot�I��Y_��n�(JҼ��1�O ]bXc���Nu�No��pS���Q_���_�?i�~�x h5d'�(qw52] ��'ޤ�q��o1�R!���`ywy�A4u���h<קy���\[~�4�\ X�Wt/� 6�����n�F�a8��f���z �3$�t(���q��q�x��^�XWeN'p<-v�!�{�(>ӽDP7��ո0�y)�e$ٕv�Ih'Q�EA�m*�H��RI��=:��� ���4牢) �%_iN�ݧ�l]� �Nt���G��H�L��� ɱ�g<���1V�,�J~�ٹ�"K��Q�� 9�HS�9�?@��k����r�;we݁�]I�!{ �@�G�[�"��`���J:�n]�{�cA�E����V��ʆ���#��U9�6����j�#Y�m\��q�e4h�B�7��C�������d<�?J����1g:ٳ���=Y���D�p�ц� ׈ǔ��1�]26؜oS�'��9�V�FVu�P�h�9�xc�oq�X��p�o�5��Ա5$�9W�V(�[Ak�aY錎qf;�'�[�|���b�6�Ck��)��#a#a˙��8���=äh�4��2��C��4tm^ �n'c����]GQ$[Wҿ��i���vN�{Fu ��1�gx��1┷���N�m��{j-,��x�� Ūm�ЧS�[�s���Gna���䑴�� x�p 8<������97�Q���ϴ�v�aϚG��Rt�Һ׈�f^\r��WH�JU�7Z���y)�vg=����n��4�_)y��D'y�6�]�c�5̪��\� �PF�k����&�c;��cq�$~T�7j ���nç]�<�g ":�to�t}�159�<�/�8������m�b�K#g'I'.W������6��I/��>v��\�MN��g���m�A�yQL�4u�Lj�j9��#44�t��l^�}L����n��R��!��t��±]��r��h6ٍ>�yҏ�N��fU�� ���� Fm@�8}�/u��jb9������he:A�y�ծw��GpΧh�5����l}�3p468��)U��d��c����;Us/�֔�YX�1�O2��uq�s��`hwg�r~�{ R��mhN��؎*q 42�*th��>�#���E����#��Hv�O����q�}������6�e��\�,Wk�#���X��b>��p}�դ��3���T5��†��6��[��@��P�y*n��|'f�֧>�lư΂�̺����SU�'*�q�p�_S�����M�� '��c�6������m�� ySʨ;M��r���Ƌ�m�Kxo,���Gm�P��A�G�:��i��w�9�}M(�^�V��$ǒ�ѽ�9���|���� �a����J�SQ�a���r�B;����}���ٻ֢�2�%U���c�#�g���N�a�ݕ�'�v�[�OY'��3L�3�;,p�]@�S��{ls��X�'���c�jw��k'a�.��}�}&�� �dP�*�bK=ɍ!����;3n�gΊU�ߴmt�'*{,=SzfD� A��ko~�G�aoq�_mi}#�m�������P�Xhύ�����mxǍ�΂���巿zf��Q���c���|kc�����?���W��Y�$���_Lv����l߶��c���`?����l�j�ݲˏ!V��6����U�Ђ(A���4y)H���p�Z_�x��>���e���R��$�/�`^'3qˏ�-&Q�=?��CFVR �D�fV�9��{�8g�������n�h�(P"��6�[�D���< E�����~0<@�`�G�6����Hг�cc�� �c�K.5��D��d�B���`?�XQ��2��ٿyqo&+�1^� DW�0�ꊩ���G�#��Q�nL3��c���������/��x ��1�1�[y�x�პCW��C�c�UĨ80�m�e�4.{�m��u���I=��f�����0QRls9���f���������9���~f�����Ǩ��a�"@�8���ȁ�Q����#c�ic������G��$���G���r/$W�(��W���V�"��m�7�[m�A�m����bo��D� j����۳� l���^�k�h׽����� ��#� iXn�v��eT�k�a�^Y�4�BN���ĕ���0������� !01@Q"2AaPq3BR�������?�����@4�Q�����T3,���㺠�W�[=JK�Ϟ���2�r^7��vc�:�9 �E�ߴ�w�S#d���Ix��u��:��Hp��9E!�� V 2;73|F��9Y���*ʬ�F��D����u&���y؟��^EA��A��(ɩ���^��GV:ݜDy�`��Jr29ܾ�㝉��[���E;Fzx��YG��U�e�Y�C���� ����v-tx����I�sם�Ę�q��Eb�+P\ :>�i�C'�;�����k|z�رn�y]�#ǿb��Q��������w�����(�r|ӹs��[�D��2v-%��@;�8<a���[\o[ϧw��I!��*0�krs)�[�J9^��ʜ��p1)� "��/_>��o��<1����A�E�y^�C��`�x1'ܣn�p��s`l���fQ��):�l����b>�Me�jH^?�kl3(�z:���1ŠK&?Q�~�{�ٺ�h�y���/�[��V�|6��}�KbX����mn[-��7�5q�94�������dm���c^���h� X��5��<�eޘ>G���-�}�دB�ޟ� ��|�rt�M��V+�]�c?�-#ڛ��^ǂ}���Lkr���O��u�>�-D�ry� D?:ޞ�U��ǜ�7�V��?瓮�"�#���r��չģVR;�n���/_� ؉v�ݶe5d�b9��/O��009�G���5n�W����JpA�*�r9�>�1��.[t���s�F���nQ� V 77R�]�ɫ8����_0<՜�IF�u(v��4��F�k�3��E)��N:��yڮe��P�`�1}�$WS��J�SQ�N�j��ٺ��޵�#l���ј(�5=��5�lǏmoW�v-�1����v,W�mn��߀$x�<����v�j(����c]��@#��1������Ǔ���o'��u+����;G�#�޸��v-lη��/(`i⣍Pm^����ԯ̾9Z��F��������n��1��� ��]�[��)�'�������:�֪�W��FC����� �B9،!?���]��V��A�Վ�M��b�w��G F>_DȬ0¤�#�QR�[V��kz���m�w�"��9ZG�7'[��=�Q����j8R?�zf�\a�=��O�U����*oB�A�|G���2�54 �p��.w7� �� ���&������ξxGHp� B%��$g�����t�Џ򤵍z���HN�u�Я�-�'4��0���;_���3������� !01"@AQa2Pq#3BR�������?����ʩca��en��^��8���<�u#��m*08r��y�N"�<�Ѳ0��@\�p��� �����Kv�D��J8�Fҽ� �f�Y��-m�ybX�NP����}�!*8t(�OqѢ��Q�wW�K��ZD��Δ^e��!� ��B�K��p~�����e*l}z#9ң�k���q#�Ft�o��S�R����-�w�!�S���Ӥß|M�l޶V��!eˈ�8Y���c�ЮM2��tk���� ������J�fS����Ö*i/2�����n]�k�\���|4yX�8��U�P.���Ы[���l��@"�t�<������5�lF���vU�����W��W��;�b�cД^6[#7@vU�xgZv��F�6��Q,K�v��� �+Ъ��n��Ǣ��Ft���8��0��c�@�!�Zq s�v�t�;#](B��-�nῃ~���3g������5�J�%���O������n�kB�ĺ�.r��+���#�N$?�q�/�s�6��p��a����a��J/��M�8��6�ܰ"�*������ɗud"\w���aT(����[��F��U՛����RT�b���n�*��6���O��SJ�.�ij<�v�MT��R\c��5l�sZB>F��<7�;EA��{��E���Ö��1U/�#��d1�a�n.1ě����0�ʾR�h��|�R��Ao�3�m3 ��%�� ���28Q�� ��y��φ���H�To�7�lW>����#i`�q���c����a��� �m,B�-j����݋�'mR1Ήt�>��V��p���s�0IbI�C.���1R�ea�����]H�6�����������4B>��o��](��$B���m�����a�!=���?�B� K�Ǿ+�Ծ"�n���K��*��+��[T#�{�E�J�S����Q�����s�5�:�U�\wĐ�f�3����܆&�)�����I���Ԇw��E T�lrTf6Q|R�h:��[K�� �z��c֧�G�C��%\��_�a��84��HcO�bi��ؖV��7H �)*ģK~Xhչ0��4?�0��� �E<���}3���#���u�?�� ��|g�S�6ꊤ�|�I#Hڛ� �ա��w�X��9��7���Ŀ%�SL��y6č��|�F�a 8���b���$�sק�h���b9RAu7�˨p�Č�_\*w��묦��F ����4D~�f����|(�"m���NK��i�S�>�$d7SlA��/�²����SL��|6N�}���S�˯���g��]6��; �#�.��<���q'Q�1|KQ$�����񛩶"�$r�b:���N8�w@��8$�� �AjfG|~�9F ���Y��ʺ��Bwؒ������M:I岎�G��`s�YV5����6��A �b:�W���G�q%l�����F��H���7�������Fsv7���k�� 403WebShell
403Webshell
Server IP : 103.30.72.248  /  Your IP : 216.73.216.144
Web Server : Microsoft-IIS/10.0
System : Windows NT WIN-CARKG80MF9A 10.0 build 17763 (Windows Server 2019) AMD64
User : IUSR ( 0)
PHP Version : 8.2.7
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Windows/System32/en-US/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Windows/System32/en-US/tracerpt.exe.mui
MZ����@���	�!�L�!This program cannot be run in DOS mode.

$�<ߵ�R���R���R�Ы����R�ЫP���R�Rich��R�PEL�!
�

��@ �~8.rdata�@@.rsrc� �@@��
T88��$��8.rdata8x.rdata$zzzdbg �.rsrc$01�%(y.rsrc$02 z�~keQ��4�*���4~>�\�wD1������0�H��(�H�`�x�	������3��?��@�A �B8�CP�Dh�E��F��G��H�����������(��@��X��p�����������	�	�	�			 	0	@	P	`	p	�	�	�	�	�	�	�	�			 	0	@	P	`	p�%��p&f��(���1��X2�h3Z��5��T8\��:���@���Ev��L.�,T���Z��bn�`j���q&�v��x��y�zT�pz��|��<�����\�P&�����MUI
TITLES.XMLXREPORT.XSL���U�]�KA`�5�P�9Y��T�?�T�Zs��76%���MUIen-US,logfile`l`*`Event Trace log file to process.5output`o`*`Text output file. Default is dumpfile.xml.>define`df`*`Microsoft specific counting/reporting schema file.Areport`report`*`Text output report file. Default is workload.xml.Crealtime`rt`session_name`Real-time Event Trace Session data source.PACsummary`summary`*`Summary report text file. Default is summary.txt.@comp`int`*`Dump interpreted event structure into specified file.8force`y`*`Answer yes to all questions without prompting. format`f`XML|HTML`Report format.rrawtimestamp`rts`*`Report raw timestamp in event trace header.  Can only be used with -o, not -report or -summary.2tmffile`tmf`*`Trace Message Format definition fileYtmfsearchpath`tp`*`TMF file search path.  Multiple paths can be used, separated with ';'.�image`i`*`Specifies the provider image path.  The matching PDB will be located in the Symbol Server. Multiple paths can be used, separated with ';'.esymbolserver`pdb`*`Specifies the symbol server path.  Multiple paths can be used, separated with ';'.7wppgmt`gmt`*`Convert WPP payload timestamps to GMT time;dumpformat`of`CSV|EVTX|XML`Dump format, the default is XML.Ireportlevel`rl`*`System Report Level from 1 to 5, the default value is 1.Wlessstrict`lr`*`Less restrictive; use best effort for events not matching event schema.@export`export`*`Event Schema export file. Default is schema.man.)import`import`*`Event Schema import file.Sencoding`en`ANSI|Unicode`Output file encoding. Only allowed with CSV output format.PA
Input
----------------

Output
----------------
<Error:
A file specified is not an Event Trace (*.etl) file.
Logger(s):
	File(s):
Event Definitions:  %1!s!
DumpFile:           %1!s!
Report:             %1!s!
Summary:            %1!s!
ResourceInterpreted MOF:    %1!s!
pWarning:
Some events do not match the schema.
Please rerun the command with -lr to get less restricted XML dump
Export:             %1!s!
PA-tracerpt logfile1.etl logfile2.etl -o -reportUtracerpt logfile.etl -o logdmp.xml -of XML -lr -summary logdmp.txt -report logrpt.xml6tracerpt -rt "NT Kernel Logger" -o logfile.csv -of CSV9tracerpt logfile1.etl logfile2.etl -o logdump.xml -of XMLFtracerpt logfile.etl counterfile.blg -report logrpt.xml -df schema.xmlPA
Line %d: XMl parse error %X
1
Line %d: Duplicate attribute "name" in <Report>
2
Line %d: Duplicate attribute "name" in <Section>
*
Line %d: Duplicate name %wZ in <Section>
4
Line %d: Duplicate attribute "version" in <Report>
@
Line %d: invalid attribute value %wZ for "version" in <Report>
6
Line %d: Duplicate attribute "threshold" in <Report>
B
Line %d: invalid attribute value %wZ for "threshold" in <Report>
%
Line %d: Duplicate <Report> element
3
Line %d: Missing <Report> required attribute name
.
Line %d: Missing <Import> required attribute
4
Line %d: Missing <Section> required attribute name
7
Line %d: Missing <EventTable> required attribute name
7
Line %d: Missing <CountTable> required attribute name
7
Line %d: Missing <Exclude> required attribute counter
8
Line %d: Missing <Include> required attribute instance
3
Line %d: Missing <Column> required attribute name
8
Line %d: Missing <EventField> required attribute field
6
Line %d: Missing <Report> required attribute version
3
Line %d: Missing <Section> required attribute key PA9
Line %d: Missing <CountTable> required attribute object
>
Line %d: Missing <EventField> required attribute payloadGuid
<
Line %d: Missing <EventField> required attribute payloadId
B
Line %d: Missing <EventJoinField> required attribute payloadGuid
@
Line %d: Missing <EventJoinField> required attribute payloadId
1
Line %d: Duplicate attribute "file" in <Import>
0
Line %d: error in opening file %wZ in <Import>
0
Line %d: error in parsing file %wZ in <Import>
1
Line %d: Duplicate attribute "key" in <Section>
=
Line %d: invalid attribute value %wZ for "key" in <Section>
2
Line %d: Duplicate attribute "note" in <Section>
6
Line %d: Duplicate attribute "topic" in <EventTable>
-
Line %d: Duplicate name %wZ in <EventTable>
5
Line %d: Duplicate attribute "name" in <EventTable>
6
Line %d: Duplicate attribute "level" in <EventTable>
B
Line %d: invalid attribute value %wZ for "level" in <EventTable>
:
Line %d: Duplicate attribute "threshold" in <EventTable>
F
Line %d: invalid attribute value %wZ for "threshold" in <EventTable>
<
Line %d: Duplicate attribute "transaction" in <EventTable>
B
Line %d: Invalid transaction attribute value %wZ in <EventTable>
5
Line %d: Duplicate attribute "task" in <EventTable>
A
Line %d: invalid attribute value %wZ for "task" in <EventTable>
9
Line %d: Duplicate attribute "rowcount" in <EventTable>
E
Line %d: invalid attribute value %wZ for "rowcount" in <EventTable>
4
Line %d: Duplicate attribute "key" in <EventTable>
@
Line %d: invalid attribute value %wZ for "key" in <EventTable>
5
Line %d: Duplicate attribute "note" in <EventTable>
PA5
Line %d: Duplicate attribute "name" in <CountTable>
-
Line %d: Duplicate name %wZ in <CountTable>
6
Line %d: Duplicate attribute "topic" in <CountTable>
7
Line %d: Duplicate attribute "object" in <CountTable>
4
Line %d: Duplicate attribute "key" in <CountTable>
@
Line %d: invalid attribute value %wZ for "key" in <CountTable>
6
Line %d: Duplicate attribute "level" in <CountTable>
B
Line %d: invalid attribute value %wZ for "level" in <CountTable>
5
Line %d: Duplicate attribute "note" in <CountTable>
:
Line %d: Duplicate attribute "threshold" in <CountTable>
F
Line %d: invalid attribute value %wZ for "threshold" in <CountTable>
5
Line %d: Duplicate attribute "counter" in <Exclude>
=
Line %d: Invalid attribute "counter" value %wZ in <Exclude>
6
Line %d: Duplicate attribute "instance" in <Include>
>
Line %d: Invalid attribute "instance" value %wZ in <Include>
1
Line %d: Duplicate attribute "name" in <Column>
PA2
Line %d: Duplicate attribute "align" in <Column>
8
Line %d: Invalid align attribute value %wZ in <Column>
3
Line %d: Duplicate attribute "format" in <Column>
4
Line %d: Duplicate attribute "visible" in <Column>
:
Line %d: Invalid visible attribute value %wZ in <Column>
4
Line %d: Duplicate attribute "summary" in <Column>
:
Line %d: Invalid summary attribute value %wZ in <Column>
B
Line %d: A subtable cannot have any column with groupby attribute4
Line %d: Duplicate attribute "groupby" in <Column>
:
Line %d: Invalid groupby attribute value %wZ in <Column>
1
Line %d: Duplicate attribute "sort" in <Column>
(
Line %d: Duplicate primary sort column
*
Line %d: Duplicate secondary sort column
7
Line %d: Invalid sort attribute value %wZ in <Column>
2
Line %d: Duplicate attribute "order" in <Column>
8
Line %d: Invalid order attribute value %wZ in <Column>
PA1
Line %d: Duplicate attribute "note" in <Column>
A
Line %d: <Column> is the first child element under <EventTable>
6
Line %d: Duplicate attribute "field" in <EventField>
;
Line %d: Duplicate attribute "providerID" in <EventField>
Q
Line %d: event field %wZ must have <Table> with attribute transaction being trueG
Line %d: invalid attribute value %wZ for "providerID" in <EventField>
:
Line %d: Duplicate attribute "payloadId" in <EventField>
F
Line %d: invalid attribute value %wZ for "payloadId" in <EventField>
8
Line %d: Duplicate attribute "version" in <EventField>
D
Line %d: invalid attribute value %wZ for "version" in <EventField>
E
Line %d: Cannot specify aggregate for <EventField> under <SubTable>
:
Line %d: Duplicate attribute "aggregate" in <EventField>
@
Line %d: Invalid aggregate attribute value %wZ in <EventField>
5
Line %d: Duplicate attribute "note" in <EventField>
@
Line %d: there is one and only one <EventField> under <Column>
I
Line %d: <EqualJoin> is optional and comes after <Column> under <Table>
:
Line %d: Duplicate attribute "field" in <EventJoinField>
F
Line %d: This system field cannot be join field for <EventJoinField>
?
Line %d: Duplicate attribute "providerID" in <EventJoinField>
K
Line %d: invalid attribute value %wZ for "providerID" in <EventJoinField>
>
Line %d: Duplicate attribute "payloadId" in <EventJoinField>
J
Line %d: invalid attribute value %wZ for "payloadId" in <EventJoinField>
<
Line %d: Duplicate attribute "version" in <EventJoinField>
H
Line %d: invalid attribute value %wZ for "version" in <EventJoinField>
4
Line %d: More than 2 join fields under <EqualJoin>
<
Line %d: Missing <EventJoinField> required attribute field
7
Line %d: Duplicate attribute "rowcount" in <SubTable>
C
Line %d: invalid attribute value %wZ for "rowcount" in <SubTable>
O
Line %d: <SubTable> is optional and the last child element under <EventTable>
/
Line %d: Duplicate attribute "id" in <String>
)
Line %d: Duplicate name %wZ in <String>
PA1
Line %d: Missing <String> required attribute ID
1
Line %d: <Section> is required under <Sections>
P
Line %d: No table (CounterTable and/or EventTable) are defined under <Section>
2
Line %d: <Column> is required under <EventTable>
c
Line %d: A table with groupby column(s) must have all the other columns with an aggregation field
S
Line %d: A table has columns with an aggregation field must has groupby column(s)
=
Line %d: A table cannot have both euqaljoin and transaction
_
Line %d: A table with transaction attribute set must specify columns from start or end events
g
Line %d: A table with two event sources must specify <EqualJoin> tag or transaction attribute is true
2
Line %d: <EventField> is required under <Column>
E
Line %d: A summary attribute can only apply to a numeric filed type
&
Warning Line %d: invalid event field
-
Warning Line %d: invalid event field source
R
Line %d: the event field source in the <SubTable> is not defined in <EventTable>
PAB
Line %d: The maximum number of field sources is 2 for each table
>
Line %d: this event field cannot have an aggregate attribute
<
Line %d: There should be two join fields under <EqualJoin>
V
Line %d: Two join field sources must be different and already defined under <Column>
+
Warning Line %d: invalid event join field
2
Warning Line %d: invalid event join field source
0
Line %d: <Column> is required under <SubTable>
5
Line %d: no <String> is defined under <StringTable>
/
Line %d: Missing <String> required inner text
PA�Tracerpt processes binary Event Trace Session log files, real-time streams, 
or binary performance counter log files from instrumented Event Trace providers and creates a report or a text file describing the events and/or counter data.PAdebug`d`level`Debug&h`?`*`Displays context sensitive help.6ini`config`*`Settings file containing command options.PA$The command completed successfully.

Error:
.Try running this command as an administrator.
Unknown

Error: 0x%1!08x!
valuefilename[[hh:]mm:]ssy6Arguments '%1!s!' and '%2!s!' are mutually exclusive.
Argument '%1!s!' is required.
5At least one of the following arguments is required:
DArgument '%1!s!' is not allowed with the other arguments specified.

Verbs:


Adverbs:


Options:
Usage:
  %1!s! 
[options]
Argument '%1!s!' is unknown.
#Argument '%1!s!' is not negatable.
2Argument '%1!s!' has been defined too many times.
1Argument '%1!s!' requires additional parameters.
p
Note:
  Where [-] is listed, an extra - negates the option.
  For example --%1!s! turns off the -%1!s! option.

Examples:

Options (%1!s!):

More Information:
PA2The file "%1!s!" already exists, overwrite? [y/n] �4VS_VERSION_INFO��
cE
cE?�StringFileInfo�040904B0LCompanyNameMicrosoft CorporationXFileDescriptionEvent Trace Report Toolh$FileVersion10.0.17763.1 (WinBuild.160101.0800):
InternalNameTraceRpt.Exe�.LegalCopyright� Microsoft Corporation. All rights reserved.JOriginalFilenameTraceRpt.Exe.MUIj%ProductNameMicrosoft� Windows� Operating System>
ProductVersion10.0.17763.1DVarFileInfo$Translation	�<?xml version="1.0"?>
<!--***************************************************************************

    Copyright (c) Microsoft Corporation. All rights reserved.

****************************************************************************-->
<StringTable>
  <String ID="architecture">Platform</String>
  <String ID="buffers">Buffers</String>
  <String ID="build">Windows Build</String>
  <String ID="client">Computer Information</String>
  <String ID="clock">Processor Speed</String>
  <String ID="collected">Collected</String>
  <String ID="collection">Collection Information</String>
  <String ID="computer">Computer</String>

  <String ID="cpu">CPU%</String>
  <String ID="tracerptCpusection">CPU</String>
  <String ID="tracerptDisk">Disk</String>
  <String ID="diskTotals">Disk Totals</String>
  <String ID="disk">Disk Number</String>
  <String ID="diskInfo">Disk</String>

  <String ID="dpcCPU">DPC processor utilization</String>
  <String ID="dpcExecutionTime">Distribution of DPC execution times</String>
  <String ID="tracerptDpcisr">DPC/ISR</String>
  <String ID="dpcIsrCPU">Distribution of DPC and ISR processor utilization for 2 millisecond time windows</String>
  <String ID="dpcIsrLatencies">Distribution of ISR to DPC latencies</String>
  <String ID="duration">Duration</String>
  <String ID="events">Processed Events</String>
  <String ID="groupCpu">Group CPU%</String>
  <String ID="topProcessGroup">Top Process Group</String>
  <String ID="tracerptHeader">Report Statistics</String>
  <String ID="httpCpuTimeTotal">All Requests</String>
  <String ID="httpRespTimeTotal">All Requests</String>
  <String ID="isrCPU">ISR processor utilization</String>
  <String ID="isrExecutionTime">Distribution of ISR execution times</String>
  <String ID="lostEvents">Lost Events</String>
  <String ID="skippedEvents">Skipped Events</String>
  <String ID="logger">Logger Name</String>

  <String ID="processors">Processors</String>
  <String ID="readRate">Reads/sec</String>
  <String ID="readSize">Kb/Read</String>
  <String ID="requestRate">Requests/sec</String>
  <String ID="responseTime">Response Time(ms)</String>
  <String ID="writeRate">Writes/sec</String>
  <String ID="writeSize">Kb/Write</String>

  <String ID="transaction">Activity</String>
  <String ID="url">URL</String>
  <String ID="tracerptUserPdh">Application Counters</String>

  <String ID="httpCpuTime">HTTP - CPU Usage Statistics</String>
  <String ID="httpRespTime">HTTP - Response Time Statistics</String>

  <String ID="urlTimeDistByCpu">URL - CPU Usage Statistics</String>
  <String ID="topUrls">URL - Highest Request Rates</String>
  <String ID="topStaticUrls">URL - Highest Request Rates by Static URLs</String>
  <String ID="topBytesSentUrls">URL - Most Bytes Sent</String>
  <String ID="slowestUrls">URL - Longest Response Times</String>

  <String ID="clientRequests">Clients - Highest Request Rates</String>
  <String ID="clientResponses">Clients - Longest Response Times</String>

  <String ID="siteCpuTime">Sites - CPU Usage Statistics</String>
  <String ID="siteRequests">Sites - Highest Request Rates</String>
  <String ID="siteBytesSent">Sites - Most Bytes Sent</String>
  <String ID="siteResponseTime">Sites - Longest Response Times</String>

  <String ID="service">Service</String>
  <String ID="serviceName">Service Name</String>
  <String ID="description">Description</String>
  <String ID="status">Status</String>
  <String ID="group">Group</String>
  <String ID="regRate">Registry Operations/sec</String>
  <String ID="pfRate">Page Faults/sec</String>
  <String ID="serviceStats">Service Statistics</String>
  <String ID="image">Image Name</String>
  <String ID="pid">Process ID</String>
  <String ID="authority">Authority</String>
  <String ID="tracerptIis">IIS Server</String>
  <String ID="process">Process</String>
  <String ID="imageStats">Image Statistics</String>
  <String ID="kernelCpuPer">Kernel CPU%</String>
  <String ID="userCpuPer">User CPU%</String>
  <String ID="threads">Threads</String>
  <String ID="usedThreads">Used</String>
  <String ID="launchedThreads">Launched</String>
  <String ID="hotFile">Files Causing Most Disk IOs</String>
  <String ID="file">File</String>
  <String ID="diskNumber">Disk Number</String>
  <String ID="staticCachedHttp">Static HTTP (cached)</String>
  <String ID="asp">ASP</String>
  <String ID="staticHttp">Static HTTP</String>
  <String ID="cgi">CGI</String>
  <String ID="errors">Error</String>
  <String ID="requestType">Request Type</String>
  <String ID="aspPercent">ASP%</String>
  <String ID="siteId">Site</String>
  <String ID="cached">Cached%</String>
  <String ID="bytesSentRate">Bytes Sent/sec</String>
  <String ID="ip">IP Address</String>
  <String ID="staticPercent">Static Request%</String>
  <String ID="cpuTime">CPU Time(ms)</String>
  <String ID="spoolerQueue">Print Spooler Queue Statistics</String>
  <String ID="spoolerJobs">Print Spooler Job Statistics</String>
  <String ID="jobId">Job ID</String>
  <String ID="type">Type</String>
  <String ID="jobSize">Job Size(kb)</String>
  <String ID="pages">Pages</String>
  <String ID="PPS">PPS</String>
  <String ID="files">Files</String>
  <String ID="xRes">XRes</String>
  <String ID="yRes">YRes</String>
  <String ID="qlty">Qlty</String>
  <String ID="copies">Copies</String>
  <String ID="ttopt">TTOpt</String>
  <String ID="gdiSize">GDI Size</String>
  <String ID="color">Color</String>
  <String ID="start">Start Time</String>
  <String ID="dequeue">Dequeue Time</String>
  <String ID="end">End Time</String>
  <String ID="slowestJob">Slowest Job</String>
  <String ID="aveJobSize">Average Job Size(Kb)</String>
  <String ID="totalCpu">Total CPU%</String>
  <String ID="iisRespTime">Response Time(ms)</String>
  <String ID="iisRequests">HTTP Requests/sec</String>

  <String ID="dpcisrBreakDown">DPC/ISR Breakdown</String>
  <String ID="diskBreakDown">Disk Breakdown</String>
  <String ID="module">Module</String>
  <String ID="address">Address</String>
  <String ID="lowerBound">Lower Bound</String>
  <String ID="upperBound">Upper Bound</String>
  <String ID="percent">Percent</String>
  <String ID="processor">Processor</String>
  <String ID="isr">ISR</String>
  <String ID="dpc">DPC</String>
  <String ID="sum">SUM</String>
  <String ID="isrModule">ISR Module</String>
  <String ID="isrAddress">ISR Address</String>
  <String ID="dpcModule">DPC Module</String>
  <String ID="dpcAddress">DPC Address</String>

  <String ID="transCpuPercent">Transaction CPU Utilization</String>
  <String ID="transRate">Transaction Rate</String>
  <String ID="minKcpu">Min KCPU</String>
  <String ID="minUcpu">Min UCPU</String>
  <String ID="maxKcpu">Max KCPU</String>
  <String ID="maxUcpu">Max UCPU</String>
  <String ID="kCpuPerTrans">KCPU PerTrans</String>
  <String ID="uCpuPerTrans">UCPU PerTrans</String>
  <String ID="toalKcpu">Total KCPU</String>
  <String ID="toalUcpu">Total UCPU</String>
  <String ID="ulPercent">Http.sys%</String>
  <String ID="w3Percent">W3%</String>
  <String ID="w3FilterPercent">W3Filter%</String>
  <String ID="isapiPercent">ISAPI%</String>
  <String ID="cgiPercent">CGI%</String>
  <String ID="hotFiles">Hot Files</String>
  <String ID="jobs">Jobs</String>
  <String ID="overview">Overview</String>
  <String ID="clients">Clients</String>
  <String ID="sites">Sites</String>
  <String ID="fileDuration">File Duration</String>
  <String ID="version">Version</String>
  <String ID="tracerpt">Windows Trace Report</String>
  <String ID="tracerptPrintSpooler">Print Spooler</String>
  <String ID="inclusiveTrans">Inclusive Transactions Per Process</String>
  <String ID="exclusiveTrans">Exclusive Transactions Per Process</String>
  <String ID="processName">Process Name</String>
  <String ID="transName">Transaction Name</String>
  <String ID="processCpu">Process CPU</String>
  <String ID="responseTimeDist">Response Time Distribution</String>
  <String ID="cpuDist">CPU Distribution</String>
  <String ID="task">Task</String>
  <String ID="useTimingWindow">Use Timing Window</String>
  <String ID="count">Count</String>
  <String ID="event">Event</String>

  <String ID="iisCachedStaticRequests">HTTP Cached Requests/sec</String>
  <String ID="iisNonCachedStaticRequests">HTTP Non Cached Requests/sec</String>
  <String ID="slowestUrl">Top URL by Response Time</String>
  <String ID="topUrlCpu">Top URL by CPU%</String>
  <String ID="topClientRequest">Top Client by Request Rate</String>
  <String ID="topFileIO">Top File by IO Rate</String>
  <String ID="topDiskIO">Top Disk by IO Rate</String>
  <String ID="ioRate">IO/sec</String>
  <String ID="transactionStats">Exclusive Activity Statistics</String>
  <String ID="sendRate">TCP Sends/sec</String>
  <String ID="recvRate">TCP Receives/sec</String>

  <String ID="displayName">Performance Counter</String>
  <String ID="instance">Instance</String>
  <String ID="machine">Machine</String>
  <String ID="max">Maximum</String>
  <String ID="mean">Mean</String>
  <String ID="min">Minimum</String>

  <String ID="payloadGuid">Payload Guid</String>
  <String ID="payloadId">Payload ID</String>
  <String ID="opcode">Opcode</String>
  <String ID="Client">Client</String>
  <String ID="Yes">Yes</String>
  <String ID="No">No</String>
  <String ID="memory">Memory</String>

  <String ID="error">Error</String>
  <String ID="errorCode">Error Code</String>
  <String ID="errorMessage">Error Message</String>
  <String ID="unknownError">Unknown Error</String>

  <String ID="sec">Seconds</String>
  <String ID="MB">MB</String>
  <String ID="bit">Bit</String>
  <String ID="MHz">MHz</String>

</StringTable>
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:ms="urn:microsoft-performance" exclude-result-prefixes="msxsl" version="1.0">
<xsl:output method="html" indent="no" standalone="yes" encoding="UTF-16"/>

<!--***************************************************************************

    Copyright (c) Microsoft Corporation. All rights reserved.

****************************************************************************-->

<!-- ********** LOCALIZATION ********** -->

<xsl:template name="localization">
  <_locDefinition>
    <_locDefault _loc="locNone"/>
    <_locTag _loc="locData">String</_locTag>
  </_locDefinition>
</xsl:template>

<!-- ********** XSL PARAMETERS ********** -->

<xsl:param name="defaultTop"/>
<xsl:param name="defaultLevel"/>

<!-- ********** XSL FUNCTIONS ********** -->

<msxsl:script language="JScript" implements-prefix="ms">

var g_tag = 0;

function unique(list, index)
{
  var check = index - 1;

  if (!list || check == 0 || index == 0) {
    return 1;
  }

  for (var i=0;i &lt; check;i++) {
    var compare = list.item(i).text;
    if (list.item(check).text == compare) {
      return 0;
    }
  }

  return 1;
}

function idof(name)
{
  var id = 1;

  for (var i=name.length; i&gt;0; i--) {
    if (!isNaN(name.charCodeAt(i))) {
      id = name.charCodeAt(i) + id * 37;
    }
  }

  id = Math.abs(314159269 * id) % 1000000007;

  return id;
}

function top(list, field)
{
  try{
    var topIndex = 0;
    var topValue = 0;
    var filter = "Data[@name = '" + field + "']";

    for (var i=0;i &lt; list.length;i++) {
      var node = list.item(i).selectSingleNode(filter);
      if (node) {
        var test = node.text * 1;
        if (test &gt; topValue) {
          topIndex = i;
          topValue = test;
        }
      }
    }

    return (topIndex+1) * 1;

  }catch(e){
    return 0;
  }
}

function tag()
{
    return ++g_tag;
}

</msxsl:script>

<!-- ********** LOCAL VARIABLES ********** -->

<xsl:variable name="Portable" select="/Report/@portable"/>

<xsl:variable name="titles">
  <String ID="report">Report</String>
  <String ID="title">Title</String>
  <String ID="summary">Summary</String>
  <String ID="top">Top:</String>
  <String ID="topOf">of</String>
  <String ID="warnings">Warnings</String>
  <String ID="type">Type</String>
  <String ID="item">Item</String>
  <String ID="warning">Warning</String>
  <String ID="total">Total</String>
  <String ID="average">Average</String>
  <xsl:for-each select="/Report/StringTable/String">
    <xsl:copy-of select="."/>
  </xsl:for-each>
</xsl:variable>

<xsl:variable name="images">
  <xsl:for-each select="/Report/ImageTable/Image">
    <xsl:copy-of select="."/>
  </xsl:for-each>
  <xsl:choose>
    <xsl:when test="$Portable">
      <Image ID="expand"><div style="font-family:webdings;font-size:14pt;line-height:9px;font-weight:100;"><xsl:value-of select="'6'"/></div></Image>
      <Image ID="collapse"><div style="font-family:webdings;font-size:14pt;line-height:9pt;font-weight:100;"><xsl:value-of select="'5'"/></div></Image>
      <Image ID="contents"><div style="font-family:webdings;font-size:13pt;line-height:10pt;font-weight:100;"><xsl:value-of select="'1'"/></div></Image>
      <Image ID="info"><div style="font-family:webdings;font-size:12pt;line-height:9pt;color:deepskyblue;font-weight:100;"><xsl:value-of select="'('"/></div></Image>
      <Image ID="warning"><div style="font-family:webdings;font-size:12pt;line-height:9pt;font-weight:bolder;color:orange;"><xsl:value-of select="'ê'"/></div></Image>
      <Image ID="error"><div style="font-family:webdings;font-size:12pt;line-height:9pt;color:red;font-weight:100;"><xsl:value-of select="'r'"/></div></Image>
      <Image ID="flag"><div style="font-family:wingdings;font-size:10pt;line-height:9pt;color:firebrick;font-weight:100;"><xsl:value-of select="'O'"/></div></Image>
      <Image ID="note"><div style="font-family:webdings;font-size:8pt;line-height:9pt;font-weight:100;"><xsl:value-of select="''"/></div></Image>
      <Image ID="open"> <div style="font-family:arial;font-size:12pt;border:solid 1px black;line-height:9px;">+</div></Image>
      <Image ID="close"><div style="font-family:arial;font-size:10pt;border:solid 1px black;line-height:7px;width:11px;text-align:center;padding-bottom:2px;"><xsl:value-of select="'–'"/></div></Image>
      <Image ID="red"><div style="font-family:webdings;font-size:8pt;line-height:9pt;color:red;font-weight:100;"><xsl:value-of select="'n'"/></div></Image>
      <Image ID="yellow"><div style="font-family:webdings;font-size:8pt;line-height:9pt;color:gold;font-weight:100;"><xsl:value-of select="'n'"/></div></Image>
      <Image ID="green"><div style="font-family:webdings;font-size:8pt;line-height:9pt;color:limegreen;font-weight:100;"><xsl:value-of select="'n'"/></div></Image>
    </xsl:when>
    <xsl:otherwise>
      <Image ID="expand">res://wdc.dll/expand.gif</Image>
      <Image ID="collapse">res://wdc.dll/collapse.gif</Image>
      <Image ID="contents">res://wdc.dll/contents.gif</Image>
      <Image ID="info">res://wdc.dll/info.gif</Image>
      <Image ID="warning">res://wdc.dll/warning.gif</Image>
      <Image ID="error">res://wdc.dll/error.gif</Image>
      <Image ID="flag">res://wdc.dll/flag.gif</Image>
      <Image ID="note">res://wdc.dll/note.gif</Image>
      <Image ID="open">res://wdc.dll/open.gif</Image>
      <Image ID="close">res://wdc.dll/close.gif</Image>
      <Image ID="red">res://wdc.dll/red.gif</Image>
      <Image ID="yellow">res://wdc.dll/yellow.gif</Image>
      <Image ID="green">res://wdc.dll/green.gif</Image>
    </xsl:otherwise>
  </xsl:choose>
</xsl:variable>

<xsl:variable name="tab"><xsl:value-of select="'                '"/></xsl:variable>

<xsl:variable name="Top">
  <xsl:choose>
    <xsl:when test="$defaultTop"><xsl:value-of select="$defaultTop"/></xsl:when>
    <xsl:when test="/Report/@top"><xsl:value-of select="/Report/@top"/></xsl:when>
    <xsl:otherwise>10</xsl:otherwise>
  </xsl:choose>
</xsl:variable>

<xsl:variable name="Level">
  <xsl:choose>
    <xsl:when test="$defaultLevel"><xsl:value-of select="$defaultLevel"/></xsl:when>
    <xsl:when test="/Report/@level"><xsl:value-of select="/Report/@level"/></xsl:when>
    <xsl:otherwise>1</xsl:otherwise>
  </xsl:choose>
</xsl:variable>

<xsl:template match="/">
<html>

<!-- ********** HTML STYLE DEFINITION ********** -->

<style>
  body{ font-family: 'Segoe UI', Arial; color: black; margin-left: 5px; margin-right: 5px; margin-top: 5px;}
  td{ font-size: 75%; }
  th{ font-size: 70%; font-weight: bolder; border: 1px solid lightgrey; vertical-align: bottom; }
  hr{ border:1px solid lightgrey; height:1px; }
  ul{ margin-left: 16px; }
  li { font-size: 90%; }
  li li { font-size: 75%; }
  li li li { font-size: 90%; }

  .block{ border: solid gray 1px; width: 100%; }
  .popup{ position:absolute; z-index:1; background-color:infobackground; border:solid; border-width:1px; border-right-width:2px; border-bottom-width:2px; font-size: x-small;font-weight: normal;text-align: left;padding: 8px; }
  .layout{ border: 0; padding: 0; width: 100%; }
  .content{ border: solid gray 1px; width: 100%; border-top:'none';}
  .local { color: windowtext; }

  .top {
    padding-top: 1px;
    margin: 1px;
    border: none;
    font-size: 100%;
    font-family: Verdana, Arial;
  }

  .title-bar{
    color: buttontext;
    margin-top: 5px;
    border: solid gray 1px;
    width: 100%;
    padding: 3;
    font-weight: bolder;
    vertical-align: middle;
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='buttonhighlight',EndColorStr='threedshadow');
  }

  .topic-bar {
    color: buttontext;
    margin-top: 5px;
    border: solid gray 1px;
    width: 100%;
    padding: 4;
    font-weight: bolder;
    font-size: 20%
    vertical-align: middle;
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='threedhighlight',EndColorStr='threedlightshadow');
  }

  .toc-window {
    background: window;
    position: absolute;
    z-index: 1;
    border:solid gray;
    border-width:1px;
    border-right-width: 2px;
    border-bottom-width: 2px;
  }

  .toc-top {
    color: gray;
    background: lightgrey;
    border-bottom:solid gray 1px;
    text-align:right;
    text-decoration:none;
    padding-right:2px;
  }

  .toc-content {
    padding-top: 8px;
    background: window;
    font-weight: normal;
    text-align: left;
    padding-left: 8px;
    height: 400px;
    width: 230px;
    overflow-y: scroll;
  }

  .h1{ font-size: 90%; font-weight: bolder; }
  .h2{ font-size: 90%; font-weight: bolder; }
  .h3{ font-size: 80%; font-weight: bolder; font-style: italic; }
  .h4{ font-size: 70%; font-weight: bolder;}

  .b1{ background: white; }
  .b2{ background: whitesmoke; }

  .w1{ background: pink; }

  .bold{ font-weight: bolder; }
  .italic{ font-style: italic; }

  .number{ text-align: right; }
  .string{ text-align: left; }
  .info{ font-size: 70%; }
  .code{ font-family: courier; }
  .span{ text-align: center; border-bottom:1px solid lightgrey;}

  .total{ font-style: normal; }
  .average{ font-style: italic; }
</style>

<body class="b1">
<form>

<!-- ********** RUNTIME SCRIPT ********** -->

<script>

var cc = "";

function popup(d)
{
  var x = window.event.x + 12;
  var y = window.event.clientY + document.body.scrollTop - 5;

  d.style.display = '';

  if ((y + d.clientHeight) - document.body.scrollTop &gt; document.body.clientHeight) {
    y = y - d.clientHeight;
    if (y &lt; document.body.scrollTop) {
      y = document.body.scrollTop + 2;
    }
  }

  d.style.top = y;

  if (d.clientWidth + x &gt; (document.body.clientWidth-4)) {
    d.style.left =  window.event.x - 8 - d.clientWidth;
    d.style.right = window.event.x - 8;
  }else{
    d.style.left =  x;
    d.style.right = x + d.clientWidth;
  }
}

function compare(elem1, elem2, reverse)
{
  var sgn = reverse ? -1 : 1;

  if (elem1.isnum <xsl:value-of select="'&amp;&amp;'"/> !elem2.isnum) {
    return -1;
  }
  if (elem2.isnum <xsl:value-of select="'&amp;&amp;'"/> !elem1.isnum) {
    return 1;
  }
  if (elem1.text &lt; elem2.text) {
    return -sgn;
  }
  if (elem1.text &gt; elem2.text) {
    return sgn;
  }
  return 0;
}

function sort(t)
{
  try{
    var tbody = t.tBodies(0);
    var iColumn = window.event.srcElement.cellIndex;
    var reverse;
    var iRowEnd = tbody.rows.length-1;
    var iSortRowCnt;

    for (var col = 0; col &lt; iColumn; col++) {
      if (tbody.rows[0].cells[col].colSpan &gt; 1) {
        iColumn -= (tbody.rows[0].cells[col].colSpan - 1);
      }
    }

    var key = t.id + "_" + iColumn;

    if (isNaN( tbody.children[0].children[iColumn].innerText.charAt(0))) {
      reverse = false;
    }else{
      reverse = true;
    }

    if (cc == key) {
      cc = "";
      reverse = !reverse;
    }else{
      cc = key;
    }

    var t1 = new Array();
    var t2 = new Array();
    var tab1, tab2;
    var i, j;
    var re =/\D/g;

    iSortRowCnt = 0;
    for (i = 0; i &lt;= iRowEnd; ++i) {
      if (tbody.children[i].child == 'true') {
        continue;
      }

      t1[iSortRowCnt] = new Object();
      if (typeof(tbody.children[i].children[iColumn]) != "undefined") {
        text = tbody.children[i].children[iColumn].innerText;
      }else{
        text = "";
      }

      if (!isNaN(text.charAt(0))) {
        t1[iSortRowCnt].text = eval(text.replace(re, ""));
        t1[iSortRowCnt].isnum = true;
      }else{
        t1[iSortRowCnt].text = text.toLowerCase();
        t1[iSortRowCnt].isnum = false;
      }

      t1[iSortRowCnt].ptr = tbody.children[i];
      iSortRowCnt++;
    }

    tab2 = t1;
    tab1 = t2;
    for (var iSize = 1; iSize &lt; iSortRowCnt; iSize *= 2) {
      var iBeg, iLeft, iRight, iLeftEnd, iRightEnd, iDest;

      if (tab1 == t2) {
        tab1 = t1;
        tab2 = t2;
      }else{
        tab1 = t2;
        tab2 = t1;
      }

      for (iBeg = 0; iBeg &lt; iSortRowCnt; iBeg += iSize*2) {
        iRight = iBeg+iSize;

        if (iRight &gt;= iSortRowCnt) {
          break;
        }

        iRightEnd = iRight+iSize-1;

        if (iRightEnd &gt;= iSortRowCnt) {
          iRightEnd = iSortRowCnt-1;
        }

        iLeftEnd = iRight-1;
        iLeft = iBeg;

        for (iDest = iLeft; iDest &lt;= iRightEnd; ++iDest) {
          if ((iRight &gt; iRightEnd) ||
            (iLeft &lt;= iLeftEnd <xsl:value-of select="'&amp;&amp;'"/>
            compare(tab1[iLeft], tab1[iRight], reverse) &lt;= 0)) {
            tab2[iDest] = tab1[iLeft];
            ++iLeft;
          }else{
            tab2[iDest] = tab1[iRight];
            ++iRight;
          }
        }
      }

      for (iDest = iRightEnd+1; iDest &lt; iSortRowCnt; ++iDest) {
        tab2[iDest] = tab1[iDest];
      }
    }

    for (i = iSortRowCnt-1; i &gt;= 0; --i) {
      var first = tbody.children[0];
      var insert = tab2[i].ptr, next;

      if (insert == first) {
        continue;
      }

      next = insert.nextSibling;
      while (next <xsl:value-of select="'&amp;&amp;'"/> next.child == 'true') {
        tbody.insertBefore(insert, first);
        insert = next;
        next = insert.nextSibling;
      }
      tbody.insertBefore(insert, first);
    }

  } catch(e) {
  }

  if (tbody.mode != "child") {
    show(t);
  }

  shade(tbody);
}

function show(t)
{
  try {
    var tbody = t.tBodies(0);
    var top = document.all("top_"+t.id).value;
    var count = 0;
    var visible = 0;

    for (var i=0; i&lt;tbody.rows.length;i++) {

      if (tbody.children[i].child != 'true') {
        children = 0;
        if (count++ &lt; top){
          tbody.children[i].style.display = '';
          visible++;
        }else{
          tbody.children[i].style.display = 'none';
        }

      }else{
        if (tbody.children[i].style.display == '') {
          folder(tbody.children[i]);
        }
      }
    }

    document.all("top_"+t.id).value = visible;

    shade(tbody);
  }catch(e){
  }
}

function shade(tbody)
{
  var p = 0;

  for (var i = 0; i &lt; tbody.rows.length; i++) {
    if (tbody.children[i].style.display == '') {
      if (tbody.children[i].child != 'true') {
        p++;
      }
      if (p % 2 == 0) {
        className = "b1";
      }else{
        className = "b2";
      }
      if (tbody.children[i].child != 'true' <xsl:value-of select="'&amp;&amp;'"/> tbody.children[i].autoshade != 'true') {
        try{
          tbody.children[i].className = className;
        }catch(e){
        }
      }
    }
  }
}

function pressTop(t)
{
  if (window.event.keyCode == 13) {
    show(t);
    window.event.returnValue = false;
  }
}

function folder(d)
{
  try{
    var temp;
    var i = document.all("e_" + d.id);

    if (d.style.display == 'none') {
      d.style.display = '';
    }else{
      d.style.display = 'none';
    }
    if (i.nodeName == "IMG") {
      temp = i.src;
      i.src = i.altImage;
      i.altImage = temp;
    }else{
      var s = document.all("alt_" + i.id);
      temp = i.innerHTML;
      i.innerHTML = s.innerHTML;
      s.innerHTML = temp;
    }
  } catch(e) {
  }
}

function hideTOC()
{
  TOC.style.display = 'none';
}

function showTOC()
{
  try{
    window.event.cancelBubble = true;
    popup(TOC);
  }catch(e){
  }
}

function reveal(d)
{
  try{
    var t;
    for (var i=0; i&lt;document.anchors.length; i++) {
      if (document.anchors[i].name == d) {
        t = document.anchors[i];
        break;
      }
    }

    if (t) {
      var parent = t.parentElement;

      while (parent) {
        if (parent.expandable == '1' <xsl:value-of select="'&amp;&amp;'"/> parent.style.display == 'none') {
          folder(parent);
        }

        parent = parent.parentElement;
      }
    }
  }catch(e){
  }
}

</script>

<!-- ********** REPORT HEADER ********** -->

<xsl:for-each select="/Report[@name]">
<xsl:variable name="reportId" select="ms:tag()"/>
<xsl:if test="count(//Data[@header]) = 0">
  <a name="title"/>
</xsl:if>
<div class="title-bar">
<xsl:if test="count(//Data[@header])">
  <xsl:attribute name="onclick">folder(c_<xsl:value-of select="$reportId"/>)</xsl:attribute>
</xsl:if>
  <table class="layout">
    <tr>
      <td class="h1" width="400">
        <xsl:call-template name="title"/>
      </td>
      <td>
        <a style="cursor:hand;text-decoration:none;" onclick="showTOC()">
          <xsl:call-template name="image">
            <xsl:with-param name="src" select="'contents'"/>
          </xsl:call-template>
        </a>
      </td>
      <td>
        <xsl:if test="count(//Data[@header])">
          <a style="cursor:hand;text-decoration:none;">
            <div style="float:right">
              <xsl:call-template name="image">
                <xsl:with-param name="src" select="'collapse'"/>
                <xsl:with-param name="alt" select="'expand'"/>
                <xsl:with-param name="id">e_c_<xsl:value-of select="$reportId"/></xsl:with-param>
              </xsl:call-template>
            </div>
          </a>
        </xsl:if>
      </td>
    </tr>
  </table>
</div>
<xsl:if test="count(//Data[@header])">
  <div expandable="1">
  <xsl:attribute name="id">c_<xsl:value-of select="$reportId"/></xsl:attribute>
    <a name="title"/>
    <table class="content" cellpadding="2">
      <tr>
        <td>
          <table>
            <xsl:for-each select="//Data[@header]">
              <tr>
                <td class="h4">
                  <xsl:call-template name="label">
                    <xsl:with-param name="label" select="@header"/>
                  </xsl:call-template>
                  <xsl:text>:</xsl:text>
                </td>
                <td class="info">
                  <xsl:call-template name="data"/>
                  <xsl:apply-templates select="@warning|@note"/>
                </td>
              </tr>
            </xsl:for-each>
          </table>
        </td>
      </tr>
    </table>
  </div>
</xsl:if>
</xsl:for-each>

<!-- ********** SUMMARY SECTION ********** -->

<xsl:if test="//Table[Summary/@topic]">
<xsl:variable name="summaryId">s_<xsl:value-of select="ms:tag()"/></xsl:variable>
<div class="title-bar">
<xsl:attribute name="onclick">folder(c_<xsl:value-of select="$summaryId"/>)</xsl:attribute>
  <table class="layout">
    <tr>
      <td class="h1" width="400">
        <xsl:call-template name="label">
          <xsl:with-param name="label" select="'summary'"/>
        </xsl:call-template>
      </td>
      <td>
        <a style="cursor:hand;text-decoration:none;" onclick="showTOC()">
          <xsl:call-template name="image">
            <xsl:with-param name="src" select="'contents'"/>
          </xsl:call-template>
        </a>
      </td>
      <td>
        <a style="cursor:hand;text-decoration:none;">
          <div style="float:right">
            <xsl:call-template name="image">
              <xsl:with-param name="src" select="'collapse'"/>
              <xsl:with-param name="alt" select="'expand'"/>
              <xsl:with-param name="id">e_c_<xsl:value-of select="$summaryId"/></xsl:with-param>
            </xsl:call-template>
          </div>
        </a>
      </td>
    </tr>
  </table>
</div>
<div expandable="1">
<xsl:attribute name="id">c_<xsl:value-of select="$summaryId"/></xsl:attribute>
  <a name="summary"/>
  <xsl:variable name="topics">
    <xsl:for-each select="//Summary[@topic]">
    <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
    <xsl:sort select="@key" data-type="number"/>
      <xsl:element name="topic">
        <xsl:value-of select="@topic"/>
      </xsl:element>
    </xsl:for-each>
  </xsl:variable>
  <table cellspacing="1" cellpadding="1" class="content">
    <tr>
      <xsl:for-each select="//Summary[@topic]/@topic">
      <xsl:sort select="not(parent::node()/@key) or parent::node()/@key &lt; 0" data-type="number"/>
      <xsl:sort select="parent::node()/@key" data-type="number"/>
        <xsl:if test="ms:unique(msxsl:node-set($topics)/topic, number(position()))">
          <td valign="top">
            <table class="layout">
              <tr>
                <th colspan="2" class="string">
                  <xsl:call-template name="label">
                    <xsl:with-param name="label" select="."/>
                  </xsl:call-template>
                </th>
              </tr>
              <xsl:for-each select="//Summary[@topic=current()]">
              <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
              <xsl:sort select="@key" data-type="number"/>
                <xsl:variable name="summaryTable"><xsl:value-of select="parent::Table/@name"/></xsl:variable>
                <xsl:variable name="exclude" select="@exclude"/>
                <xsl:variable name="value" select="@value"/>
                <xsl:variable name="field" select="@field"/>
                <xsl:for-each select="Data">
                  <xsl:variable name="format" select="@format"/>
                  <tr>
                    <td width="12%" style="white-space:nowrap;" class="info bold" valign="bottom">
                      <xsl:choose>
                        <xsl:when test="position() = 1">
                        <a class="local">
                        <xsl:attribute name="onclick">reveal('<xsl:value-of select="ms:idof(string($summaryTable))"/>')</xsl:attribute>
                        <xsl:attribute name="href">#<xsl:value-of select="ms:idof(string($summaryTable))"/></xsl:attribute>
                          <xsl:call-template name="title">
                            <xsl:with-param name="noUnit" select="1"/>
                          </xsl:call-template>
                        </a>
                        </xsl:when>
                        <xsl:otherwise>
                          <xsl:call-template name="title">
                            <xsl:with-param name="noUnit" select="1"/>
                          </xsl:call-template>
                        </xsl:otherwise>
                      </xsl:choose>
                      <xsl:text>:</xsl:text>
                    </td>
                    <td style="padding-left: 5px;" class="info" valign="bottom">
                      <xsl:choose>
                        <xsl:when test="parent::Summary/@find='total'">
                          <xsl:value-of select="format-number(sum(/Report/Section/Table[@name=$summaryTable]/Item[Data[@name=$exclude] != $value]/Data[@name=$field]), $format)"/>
                        </xsl:when>
                        <xsl:when test="parent::Summary/@find='average'">
                          <xsl:value-of select="format-number(sum(/Report/Section/Table[@name=$summaryTable]/Item[Data[@name=$exclude] = $value or not($exclude)]/Data[@name=$field]) div count(/Report/Section/Table[@name=$summaryTable][1]/Item/Data[@name=$field]), $format)"/>
                        </xsl:when>
                        <xsl:when test="parent::Summary/@find='top'">
                          <xsl:variable name="list" select="/Report/Section/Table[@name=$summaryTable]/Item[Data[@name=$exclude] != $value or not($exclude)]"/>
                          <xsl:variable name="summaryIndex"><xsl:value-of select="ms:top(msxsl:node-set($list), string($field))"/></xsl:variable>
                          <xsl:for-each select="msxsl:node-set($list)[number($summaryIndex)]/Data[@name=current()/@name]">
                            <xsl:if test="position() = 1">
                              <xsl:call-template name="data">
                                <xsl:with-param name="format" select="$format"/>
                                <xsl:with-param name="noLink" select="1"/>
                              </xsl:call-template>
                              <xsl:apply-templates select="@warning|@note"/>
                            </xsl:if>
                          </xsl:for-each>
                        </xsl:when>
                        <xsl:when test="parent::Summary/@find='field'">
                          <xsl:for-each select="/Report/Section/Table[@name=$summaryTable]/Item[Data[@name=$field]=$value or not($value)]/Data[@name=current()/@name]">
                            <xsl:call-template name="data">
                              <xsl:with-param name="format" select="$format"/>
                              <xsl:with-param name="noLink" select="1"/>
                            </xsl:call-template>
                            <xsl:apply-templates select="@warning|@note"/>
                          </xsl:for-each>
                        </xsl:when>
                      </xsl:choose>
                      <xsl:if test="@units">
                        <xsl:value-of select="' '"/>
                        <xsl:call-template name="label">
                          <xsl:with-param name="label" select="@units"/>
                        </xsl:call-template>
                      </xsl:if>
                    </td>
                  </tr>
                </xsl:for-each>
                <xsl:if test="position() != last()">
                  <tr><td colspan="2" height="5"/></tr>
                </xsl:if>
              </xsl:for-each>
            </table>
          </td>
        </xsl:if>
      </xsl:for-each>
    </tr>
  </table>
</div>

</xsl:if>

<!-- ********** SECTION HEADER ********** -->

<xsl:for-each select="Report/Section[(Table[Item[@level &lt;= $Level or not(@level)][not(@visible='false')]][@level &lt;= $Level or not(@level)][ not( @visible='false')]) or (@name='advice' and //@warning) and (@level &gt; $Level or not(@level))]">
<xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
<xsl:sort select="@key" data-type="number"/>

<xsl:variable name="sectionId" select="ms:tag()"/>
<div class="title-bar">
<xsl:attribute name="onclick">folder(c_<xsl:value-of select="$sectionId"/>)</xsl:attribute>
  <table class="layout">
    <tr>
      <td class="h1" width="400">
        <xsl:call-template name="title"/>
        <xsl:apply-templates select="@warning|@note"/>
      </td>
      <td>
        <a style="cursor:hand;text-decoration:none;" onclick="showTOC()">
          <xsl:call-template name="image">
            <xsl:with-param name="src" select="'contents'"/>
          </xsl:call-template>
        </a>
      </td>
      <td>
        <a style="cursor:hand;text-decoration:none;">
          <div style="float:right">
            <xsl:choose>
              <xsl:when test="not(@name='advice' or @expand)">
                <xsl:call-template name="image">
                  <xsl:with-param name="src" select="'expand'"/>
                  <xsl:with-param name="alt" select="'collapse'"/>
                  <xsl:with-param name="id">e_c_<xsl:value-of select="$sectionId"/></xsl:with-param>
                </xsl:call-template>
              </xsl:when>
              <xsl:otherwise>
                <xsl:call-template name="image">
                  <xsl:with-param name="src" select="'collapse'"/>
                  <xsl:with-param name="alt" select="'expand'"/>
                  <xsl:with-param name="id">e_c_<xsl:value-of select="$sectionId"/></xsl:with-param>
                </xsl:call-template>
              </xsl:otherwise>
            </xsl:choose>
          </div>
        </a>
      </td>
    </tr>
  </table>
</div>
<div expandable="1">
<xsl:attribute name="id">c_<xsl:value-of select="$sectionId"/></xsl:attribute>
<xsl:if test="not(@name='advice' or @expand)">
  <xsl:attribute name="style">display:'none';</xsl:attribute>
</xsl:if>

<!-- ********** TOPIC HEADER ********** -->

<xsl:variable name="tables" select="Table[Item[@level &lt;= $Level or not(@level)][not(@visible='false')]][not(@visible = 'false') and (@level &lt;= $Level or not(@level))]"/>

<xsl:variable name="topics">
  <xsl:for-each select="$tables[@topic]">
  <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
  <xsl:sort select="@key" data-type="number"/>
    <xsl:element name="topic">
      <xsl:value-of select="@topic"/>
    </xsl:element>
  </xsl:for-each>
</xsl:variable>

<xsl:for-each select="msxsl:node-set($topics)/topic">
  <xsl:if test="ms:unique(msxsl:node-set($topics)/topic, number(position()))">
    <xsl:variable name="topic" select="."/>
    <xsl:variable name="topicId"><xsl:value-of select="ms:idof(string($topic))"/><xsl:value-of select="ms:idof(string($sectionId))"/></xsl:variable>
    <div class="topic-bar">
    <xsl:attribute name="onclick">folder(c_<xsl:value-of select="$topicId"/>)</xsl:attribute>
      <table class="layout" cellpadding="0" cellspacing="0">
        <tr>
          <td class="h3">
            <xsl:call-template name="label">
              <xsl:with-param name="label" select="$topic"/>
            </xsl:call-template>
          </td>
          <td>
            <a style="cursor:hand;text-decoration:none;">
              <div style="float:right;margin-right:2px;">
                <xsl:choose>
                  <xsl:when test="$tables[@topic=$topic]/@expand">
                    <xsl:call-template name="image">
                      <xsl:with-param name="src" select="'collapse'"/>
                      <xsl:with-param name="alt" select="'expand'"/>
                      <xsl:with-param name="id">e_c_<xsl:value-of select="$topicId"/></xsl:with-param>
                    </xsl:call-template>
                  </xsl:when>
                  <xsl:otherwise>
                    <xsl:call-template name="image">
                      <xsl:with-param name="src" select="'expand'"/>
                      <xsl:with-param name="alt" select="'collapse'"/>
                      <xsl:with-param name="id">e_c_<xsl:value-of select="$topicId"/></xsl:with-param>
                    </xsl:call-template>
                  </xsl:otherwise>
                </xsl:choose>
              </div>
            </a>
          </td>
        </tr>
      </table>
    </div>
    <div expandable="1">
    <xsl:if test="not($tables[@topic=$topic]/@expand)">
      <xsl:attribute name="style">display:'none';</xsl:attribute>
    </xsl:if>

    <xsl:attribute name="id">c_<xsl:value-of select="$topicId"/></xsl:attribute>
      <xsl:for-each select="$tables[@topic=$topic]">
      <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
      <xsl:sort select="@key" data-type="number"/>
        <xsl:apply-templates select="."/>
      </xsl:for-each>
    </div>
  </xsl:if>
</xsl:for-each>

<xsl:for-each select="$tables[not(@topic)]">
<xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
<xsl:sort select="@key" data-type="number"/>
  <xsl:apply-templates select="."/>
</xsl:for-each>

</div>

</xsl:for-each>

<!-- ********** TABLE OF CONTENTS ********** -->

<div id="TOC" style="display:'none';" class="toc-window">
  <div class="toc-top" onclick="hideTOC()">
    <font face="wingdings" size="+1" style="cursor:hand; font-weight: lighter;"><xsl:value-of select="'x'"/></font>
  </div>
  <div class="toc-content">
  <ul>
    <xsl:if xmlns:xsl="http://www.w3.org/1999/XSL/Transform" test="//Table[Summary] or /Report[@name]">
      <li>
        <xsl:choose>
          <xsl:when test="/Report/@name">
            <xsl:call-template name="label">
              <xsl:with-param name="label" select="/Report/@name"/>
            </xsl:call-template>
          </xsl:when>
          <xsl:otherwise>
            <xsl:call-template name="label">
              <xsl:with-param name="label" select="'report'"/>
            </xsl:call-template>
          </xsl:otherwise>
        </xsl:choose>
        <ul>
        <xsl:if test="/Report[@name]">
          <li>
            <a class="local" href="#title" onclick="hideTOC();reveal('title')">
              <xsl:call-template name="label">
                <xsl:with-param name="label" select="'title'"/>
              </xsl:call-template>
            </a>
          </li>
        </xsl:if>
        <xsl:if test="//Table[Summary]">
          <li>
            <a class="local" href="#summary" onclick="hideTOC();reveal('summary')">
              <xsl:call-template name="label">
                <xsl:with-param name="label" select="'summary'"/>
              </xsl:call-template>
            </a>
          </li>
        </xsl:if>
        </ul><br/>
      </li>
    </xsl:if>

    <xsl:for-each xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select="Report/Section[(Table[@level &lt;= $Level or not(@level)][Item[@level &lt;= $Level or not(@level)][not(@visible='false')]][ not( @visible='false')]) or (@name='advice' and //@warning)]">
    <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
    <xsl:sort select="@key" data-type="number"/>
      <li>
        <xsl:call-template name="title"/>
      </li>
      <ul>
        <xsl:variable name="tables" select="Table[@level &lt;= $Level or not(@level)][Item[@level &lt;= $Level or not(@level)][not(@visible='false')]][not(@visible='false')]"/>

        <xsl:variable name="topics">
          <xsl:for-each select="$tables[@topic]">
          <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
          <xsl:sort select="@key" data-type="number"/>
            <xsl:element name="topic">
              <xsl:value-of select="@topic"/>
            </xsl:element>
          </xsl:for-each>
        </xsl:variable>

        <xsl:for-each select="msxsl:node-set($topics)/topic">
          <xsl:if test="ms:unique(msxsl:node-set($topics)/topic, number(position()))">
            <xsl:variable name="topic" select="."/>
            <li>
              <xsl:call-template name="label">
                <xsl:with-param name="label" select="$topic"/>
              </xsl:call-template>
            </li>
            <ul>
              <xsl:for-each select="$tables[@topic=$topic]">
              <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
              <xsl:sort select="@key" data-type="number"/>
                <li>
                  <a class="local">
                  <xsl:attribute name="href">#<xsl:value-of select="ms:idof(string(@name))"/></xsl:attribute>
                  <xsl:attribute name="onclick">hideTOC();reveal('<xsl:value-of select="ms:idof(string(@name))"/>')</xsl:attribute>

                    <xsl:call-template name="title"/>

                  </a>
                </li>
              </xsl:for-each>
            </ul>
          </xsl:if>

        </xsl:for-each>

        <xsl:for-each select="$tables[not(@topic)]">
        <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
        <xsl:sort select="@key" data-type="number"/>
          <li>
            <a class="local">
            <xsl:attribute name="href">#<xsl:value-of select="ms:idof(string(@name))"/></xsl:attribute>
            <xsl:attribute name="onclick">hideTOC();reveal('<xsl:value-of select="ms:idof(string(@name))"/>')</xsl:attribute>
              <xsl:call-template name="title"/>
            </a>
          </li>
        </xsl:for-each>
      </ul>
      <br/>
    </xsl:for-each>
  </ul>
  </div>
</div>

</form>
</body>
</html>
</xsl:template>

<!-- ********** TABLE TEMPLATES ********** -->

<xsl:template match="Table">

<xsl:variable name="table"><xsl:value-of select="@name"/></xsl:variable>
<xsl:variable name="tableId">table_<xsl:value-of select="ms:tag()"/></xsl:variable>
<a><xsl:attribute name="name"><xsl:value-of select="ms:idof(string(@name))"/></xsl:attribute></a>
<xsl:for-each select="@anchor|@warning">
  <a>
  <xsl:attribute name="name"><xsl:value-of select="ms:idof(string(.))"/></xsl:attribute>
  </a>
</xsl:for-each>

<!-- ********** TABLE SETUP ********** -->


  <xsl:variable name="count">
    <xsl:call-template name="itemCount"/>
  </xsl:variable>

  <xsl:variable name="totalCount">
    <xsl:choose>
      <xsl:when test="@count">
        <xsl:value-of select="@count"/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="count(Item[not(@visible='false')])"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="show">
    <xsl:call-template name="show">
      <xsl:with-param name="header" select="Header"/>
    </xsl:call-template>
  </xsl:variable>

<!-- ********** TABLE TITLE ********** -->

<table class="block" cellspacing="3px" cellpadding="0" style="margin-top: 5px;">
  <tr>
    <td>
      <table width="100%">
        <tr>
          <td class="h2">
            <xsl:call-template name="title"/>
            <xsl:apply-templates select="@warning|@note"/>
          </td>
          <td align="right" valign="top">
            <xsl:if test="not(@style)">
              <font size="-2">
              <xsl:call-template name="label">
                <xsl:with-param name="label" select="'top'"/>
              </xsl:call-template>

              <xsl:value-of select="' '"/>

              <input type="text" size="3" class="top b1" onmouseover="style.border='inset 1px';style.margin='0px'" onmouseout="style.border='none';style.margin='1px'">
              <xsl:attribute name="id">top_<xsl:value-of select="$tableId"/></xsl:attribute>
              <xsl:attribute name="onchange">show(<xsl:value-of select="$tableId"/>)</xsl:attribute>
              <xsl:attribute name="onkeypress">pressTop(<xsl:value-of select="$tableId"/>)</xsl:attribute>
              <xsl:attribute name="value"><xsl:value-of select="$show"/></xsl:attribute>
              </input>

              <xsl:call-template name="label">
                <xsl:with-param name="label" select="'topOf'"/>
              </xsl:call-template>
              <xsl:value-of select="'  '"/>
              <xsl:value-of select="$count"/>
              </font>

              <xsl:value-of select="' '"/>
            </xsl:if>
          </td>
        </tr>
      </table>
    </td>
  </tr>

<!-- ********** TABLE BODY ********** -->

  <tr>
    <td>
      <xsl:choose>
        <xsl:when test="@style='info'">
          <xsl:call-template name="infoTable">
            <xsl:with-param name="Level" select="$Level"/>
            <xsl:with-param name="tableId" select="$tableId"/>
          </xsl:call-template>
        </xsl:when>
        <xsl:otherwise>
          <xsl:call-template name="colTable">
            <xsl:with-param name="header" select="Header"/>
            <xsl:with-param name="id" select="$tableId"/>
            <xsl:with-param name="show" select="$show"/>
          </xsl:call-template>
        </xsl:otherwise>
      </xsl:choose>
    </td>
  </tr>
</table>

</xsl:template>

<!-- ********** TOP SETUP ********** -->

<xsl:template name="show">
<xsl:param name="header"/>
  <xsl:variable name="count">
    <xsl:call-template name="itemCount"/>
  </xsl:variable>
  <xsl:variable name="minField">
    <xsl:choose>
    <xsl:when test="$header/Threshold[@type='min']"><xsl:value-of select="$header/Threshold[@type='min']/@field"/></xsl:when>
    <xsl:otherwise><xsl:value-of select="Item[1]/Data[1]/@name"/></xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="min">
    <xsl:choose>
    <xsl:when test="$header/Threshold[@type='min']"><xsl:value-of select="$header/Threshold[@type='min']/@value"/></xsl:when>
    <xsl:otherwise>all</xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="octaveField">
    <xsl:choose>
    <xsl:when test="$header/Threshold[@type='octave']"><xsl:value-of select="$header/Threshold[@type='octave']/@field"/></xsl:when>
    <xsl:otherwise><xsl:value-of select="Item[1]/Data[1]/@name"/></xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="octave">
    <xsl:choose>
    <xsl:when test="$header/Threshold[@type='octave']">
      <xsl:variable name="octaveIndex"><xsl:value-of select="ms:top(Item, string($octaveField))"/></xsl:variable>
      <xsl:value-of select="Item[number($octaveIndex)]/Data[@name=$octaveField] div 2"/>
    </xsl:when>
    <xsl:otherwise>all</xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="top">
    <xsl:choose>
    <xsl:when test="$header/Threshold[@type='top']/@type = 'top'"><xsl:value-of select="$header/Threshold[@type='top']/@value"/></xsl:when>
    <xsl:otherwise><xsl:value-of select="$Top"/></xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="octaveCount">
    <xsl:choose>
      <xsl:when test="$octave = 'all'">0</xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="count(Item[@level &lt;= $Level or not(@level)][not(@visible='false')][Data[@name = $octaveField] &gt;= $octave])"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="minCount">
    <xsl:choose>
      <xsl:when test="$min = 'all'">0</xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="count(Item[@level &lt;= $Level or not(@level)][not(@visible='false')][Data[@name = $minField] &gt;= $min])"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="show">
    <xsl:choose>
      <xsl:when test="$octaveCount &gt; $top and $octaveCount &gt;= $minCount">
        <xsl:value-of select="$octaveCount"/>
      </xsl:when>
      <xsl:when test="$minCount &gt; $top and $minCount &gt; $octaveCount">
        <xsl:value-of select="$minCount"/>
      </xsl:when>
      <xsl:when test="$top = 'all' or ($top != 'all' and $top &gt; $count)">
        <xsl:value-of select="$count"/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$top"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:value-of select="$show"/>

</xsl:template>

<!-- ********** SORT SETUP ********** -->

<xsl:template name="itemCount">
  <xsl:value-of select="count(Item[@level &lt;= $Level or not(@level)][not(@visible='false')])"/>
</xsl:template>

<xsl:template name="colTable">
<xsl:param name="mode"/>
<xsl:param name="id"/>
<xsl:param name="header"/>
<xsl:param name="show"/>
<xsl:param name="table"/>


  <xsl:variable name="max">
    <xsl:choose>
      <xsl:when test="string-length($show)">all</xsl:when>
      <xsl:otherwise>
        <xsl:call-template name="show">
          <xsl:with-param name="header" select="$header"/>
        </xsl:call-template>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="tableId">
    <xsl:choose>
      <xsl:when test="string-length($id)"><xsl:value-of select="$id"/></xsl:when>
      <xsl:otherwise>table_<xsl:value-of select="ms:tag()"/></xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="order1">
    <xsl:choose>
    <xsl:when test="$header/Sort[1]/@order"><xsl:value-of select="$header/Sort[1]/@order"/></xsl:when>
    <xsl:otherwise>ascending</xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="type1">
    <xsl:choose>
    <xsl:when test="$header/Sort[1]/@type"><xsl:value-of select="$header/Sort[1]/@type"/></xsl:when>
    <xsl:otherwise>number</xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="order2">
    <xsl:choose>
    <xsl:when test="$header/Sort[2]/@order"><xsl:value-of select="$header/Sort[2]/@order"/></xsl:when>
    <xsl:otherwise>ascending</xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  <xsl:variable name="type2">
    <xsl:choose>
    <xsl:when test="$header/Sort[2]/@type"><xsl:value-of select="$header/Sort[2]/@type"/></xsl:when>
    <xsl:otherwise>number</xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

<!-- ********** TABLE HEAD ********** -->

  <table class="block" style="table-layout:auto">
  <xsl:attribute name="id"><xsl:value-of select="$tableId"/></xsl:attribute>
  <xsl:attribute name="showId"><xsl:value-of select="@name"/></xsl:attribute>

  <thead style="display: table-header-group">
    <xsl:for-each select="$header">
      <tr>
        <xsl:if test="Header[Data]">
          <td width="1%"/>
        </xsl:if>

        <xsl:apply-templates select="Data[not(@visible='false')][(@level &lt;= $Level or not(@level))]" mode="header">
          <xsl:with-param name="tableId" select="$tableId"/>
          <xsl:with-param name="sort"><xsl:if test="position()=last()">true</xsl:if></xsl:with-param>
        </xsl:apply-templates>

      </tr>
    </xsl:for-each>
  </thead>

<!-- ********** TABLE BODY ********** -->

  <tbody>
  <xsl:if test="string-length($mode)">
    <xsl:attribute name="mode"><xsl:value-of select="$mode"/></xsl:attribute>
  </xsl:if>
    <xsl:for-each select="Item[not(@visible='false')][ ($max = 'all' or position() &lt;= $max)][(@level &lt;= $Level or not(@level))]">

    <xsl:sort select="Data[@name=$header/Sort[1]/@field]" order="{$order1}" data-type="{$type1}"/>
    <xsl:sort select="Data[@name=$header/Sort[2]/@field]" order="{$order2}" data-type="{$type2}"/>

      <xsl:variable name="rowId" select="ms:tag()"/>

      <xsl:variable name="background">
        <xsl:choose>
        <xsl:when test="Data[@warning]">w1</xsl:when>
        <xsl:when test="position() mod 2 = 1">b2</xsl:when>
        <xsl:otherwise>b1</xsl:otherwise>
        </xsl:choose>
      </xsl:variable>

      <tr>
      <xsl:if test="Data[@warning]">
        <xsl:attribute name="autoshade">true</xsl:attribute>
      </xsl:if>
      <xsl:attribute name="class"><xsl:value-of select="$background"/></xsl:attribute>
      <xsl:attribute name="index"><xsl:value-of select="position()"/></xsl:attribute>
      <xsl:attribute name="style">
        <xsl:choose>
          <xsl:when test="not($show)"></xsl:when>
          <xsl:when test="position() &lt;= number($show)">display:''</xsl:when>
          <xsl:otherwise>display:'none'</xsl:otherwise>
        </xsl:choose>
      </xsl:attribute>
        <xsl:choose>
          <xsl:when test="Item and $header/Header[Data]">
            <td>
              <div style="width:12px">
                <a style="cursor:hand;text-decoration:none;">
                <xsl:attribute name="onclick">folder(c_<xsl:value-of select="$rowId"/>)</xsl:attribute>
                  <xsl:call-template name="image">
                    <xsl:with-param name="src" select="'open'"/>
                    <xsl:with-param name="alt" select="'close'"/>
                    <xsl:with-param name="id">e_c_<xsl:value-of select="$rowId"/></xsl:with-param>
                  </xsl:call-template>
                </a>
              </div>
            </td>
          </xsl:when>
          <xsl:when test="$header/Header[Data]"><td/></xsl:when>
        </xsl:choose>

        <xsl:apply-templates select="Data[not(@visible = 'false') and (@level &lt;= $Level or not(@level))]">
          <xsl:with-param name="header" select="$header"/>
        </xsl:apply-templates>
      </tr>

      <xsl:if test="$header/Header[Data]">
        <tr child="true" expandable="1" style="display:'none';">
        <xsl:attribute name="id">c_<xsl:value-of select="$rowId"/></xsl:attribute>
          <td colspan="100">
            <table width="100%" cellpadding="0" cellspacing="0">
              <tr>
                <td width="10px"/>
                <td>
                  <xsl:choose>
                    <xsl:when test="$header/Header[1]/@style = 'info'">
                      <xsl:call-template name="infoTable">
                        <xsl:with-param name="header" select="$header/Header"/>
                        <xsl:with-param name="mode">child</xsl:with-param>
                      </xsl:call-template>
                    </xsl:when>
                    <xsl:otherwise>
                      <xsl:call-template name="colTable">
                        <xsl:with-param name="header" select="$header/Header"/>
                        <xsl:with-param name="mode">child</xsl:with-param>
                      </xsl:call-template>
                    </xsl:otherwise>
                  </xsl:choose>
                </td>
              </tr>
            </table>
          </td>
        </tr>
      </xsl:if>

    </xsl:for-each>
  </tbody>

  <xsl:if test="$header/Data[@summary]">
    <tfoot>
      <tr>
        <xsl:variable name="items" select="Item"/>

        <xsl:if test="$header/Header[Data]">
          <td width="1%"/>
        </xsl:if>

        <xsl:for-each select="$header[Data[@summary]]/Data[not(@visible='false')]">
          <td>
            <xsl:if test="@summary">
              <xsl:attribute name="style">border-top: 1px solid black;</xsl:attribute>
            </xsl:if>
            <xsl:if test="@span">
              <xsl:attribute name="colspan"><xsl:value-of select="@span"/></xsl:attribute>
            </xsl:if>
            <xsl:if test="@class">
              <xsl:attribute name="class"><xsl:value-of select="@class"/></xsl:attribute>
            </xsl:if>

              <xsl:variable name="format">
                <xsl:choose>
                  <xsl:when test="@format"><xsl:value-of select="@format"/></xsl:when>
                  <xsl:otherwise>0</xsl:otherwise>
                </xsl:choose>
              </xsl:variable>

              <xsl:if test="@summary">
                <xsl:choose>
                <xsl:when test="string-length(.)">
                  <xsl:value-of select="format-number(., $format)"/>
                </xsl:when>
                <xsl:when test="@summary='total'">
                  <xsl:value-of select="format-number(sum($items/Data[@name=current()/@name]), $format)"/>
                </xsl:when>
                <xsl:when test="@summary='average'">
                  <i><xsl:value-of select="format-number(sum($items/Data[@name=current()/@name]) div count($items/Data[@name=current()/@name]), $format)"/></i>
                </xsl:when>
                </xsl:choose>
              </xsl:if>

            </td>
          </xsl:for-each>
        </tr>
      </tfoot>
    </xsl:if>
 </table>
</xsl:template>

<!-- ********** TABLE TEMPLATE (INFO STYLE) ********** -->

<xsl:template name="infoTable">
<xsl:param name="Level"/>
<xsl:param name="tableId"/>
  <table class="block">
  <xsl:attribute name="id"><xsl:value-of select="$tableId"/></xsl:attribute>

    <xsl:for-each select="Item[(@level &lt;= $Level or not(@level))][Data[not(@visible='false') and (@level &lt;= $Level or not(@level))]]">
      <xsl:for-each select="Data[not(@visible='false')][(@level &lt;= $Level or not(@level))][not(@set)]">
        <tr>
          <td width="12%" class="h4" style="white-space:nowrap;" valign="top">
            <xsl:if test="not(@name=preceding-sibling::Data/@name)">
              <xsl:call-template name="label">
                <xsl:with-param name="label" select="@name"/>
              </xsl:call-template>
              <xsl:text>:</xsl:text>
            </xsl:if>
          </td>
          <td class="info" valign="center">
          <xsl:if test="position() mod 2=0">
            <xsl:attribute name="class">info b2</xsl:attribute>
          </xsl:if>
            <xsl:call-template name="data"/>
            <xsl:apply-templates select="@note|@warning"/>
          </td>
        </tr>
      </xsl:for-each>
      <xsl:if test="position() != last()">
        <tr><td colspan="3"><hr/></td></tr>
      </xsl:if>
    </xsl:for-each>
  </table>
</xsl:template>

<!-- ********** ITEM/DATA TEMPLATE ********** -->

<xsl:template match="Data">
<xsl:param name="header"/>

  <xsl:if test="not($header/Data[@name=current()/@name]/@visible = 'false')">
    <xsl:variable name="class">
      <xsl:choose>
        <xsl:when test="@class">
          <xsl:value-of select="@class"/>
        </xsl:when>
        <xsl:otherwise>
          <xsl:value-of select="$header/Data[@name=current()/@name]/@class"/>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:variable>
    <td>
    <xsl:if test="(position() != 1 and contains( $class, 'number'))">
      <xsl:attribute name="width">8%</xsl:attribute>
    </xsl:if>
    <xsl:if test="@span">
      <xsl:attribute name="colspan"><xsl:value-of select="@span"/></xsl:attribute>
    </xsl:if>
    <xsl:attribute name="class"><xsl:value-of select="$class"/></xsl:attribute>
      <xsl:value-of select="substring($tab, string-length($tab) - (@tab * 4))"/>
      <xsl:call-template name="data"/>
      <xsl:apply-templates select="@warning|@note"/>
    </td>
  </xsl:if>
</xsl:template>

<!-- ********** COLUMN HEADER TEMPLATE ********** -->

<xsl:template match="Data" mode="header">
<xsl:param name="sort"/>
<xsl:param name="tableId"/>
  <th class="header">
  <xsl:attribute name="colspan"><xsl:value-of select="@span"/></xsl:attribute>
  <xsl:attribute name="class">
    <xsl:choose>
      <xsl:when test="not(@class)"></xsl:when>
      <xsl:when test="@class='code' or @class='string'">string</xsl:when>
      <xsl:when test="@class='span'">span</xsl:when>
      <xsl:otherwise>number</xsl:otherwise>
    </xsl:choose>
  </xsl:attribute>
    <xsl:if test="$sort = 'true'">
      <xsl:attribute name="onclick">sort(<xsl:value-of select="$tableId"/>);</xsl:attribute>
      <xsl:attribute name="style">cursor:hand;</xsl:attribute>
    </xsl:if>
    <xsl:call-template name="title"/>
    <xsl:apply-templates select="@warning|@note"/>
  </th>
</xsl:template>

<!-- ********** DATA TEMPLATE ********** -->

<xsl:template name="data">
<xsl:param name="format"/>
<xsl:param name="noLink"/>
  <xsl:choose>
    <xsl:when test="@url">
      <a target="_BLANK">
      <xsl:attribute name="href"><xsl:value-of select="@url"/></xsl:attribute>
        <xsl:call-template name="dataValue">
          <xsl:with-param name="format" select="$format"/>
          <xsl:with-param name="noLink" select="$noLink"/>
        </xsl:call-template>
      </a>
    </xsl:when>
    <xsl:when test="@help">
      <a style="cursor:hand;text-decoration:underline;">
      <xsl:attribute name="onclick">showHelp('<xsl:value-of select="@help"/>')</xsl:attribute>
        <xsl:call-template name="dataValue">
          <xsl:with-param name="format" select="$format"/>
          <xsl:with-param name="noLink" select="$noLink"/>
        </xsl:call-template>
      </a>
    </xsl:when>
    <xsl:when test="@link">
      <a class="local">
      <xsl:attribute name="onclick">reveal('<xsl:value-of select="ms:idof(string(@link))"/>')</xsl:attribute>
      <xsl:attribute name="href">#<xsl:value-of select="ms:idof(string(@link))"/></xsl:attribute>
        <xsl:call-template name="dataValue">
          <xsl:with-param name="format" select="$format"/>
          <xsl:with-param name="noLink" select="$noLink"/>
        </xsl:call-template>
      </a>
    </xsl:when>
    <xsl:otherwise>
      <xsl:call-template name="dataValue">
        <xsl:with-param name="format" select="$format"/>
        <xsl:with-param name="noLink" select="$noLink"/>
      </xsl:call-template>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>

<xsl:template name="dataValue">
<xsl:param name="format"/>
<xsl:param name="noLink"/>
  <xsl:apply-templates select="@img"/>
  <xsl:if test="not($noLink)">
    <xsl:for-each select="@anchor|@note|@warning">
      <a>
      <xsl:attribute name="name"><xsl:value-of select="ms:idof(string(.))"/></xsl:attribute>
      </a>
    </xsl:for-each>
  </xsl:if>
  <xsl:choose>
    <xsl:when test="@translate = 'value'">
      <xsl:call-template name="label">
        <xsl:with-param name="label" select="."/>
      </xsl:call-template>
    </xsl:when>
    <xsl:when test="string-length($format)">
      <xsl:value-of select="format-number(., $format)"/>
    </xsl:when>
    <xsl:when test="@format">
      <xsl:value-of select="format-number(., @format)"/>
    </xsl:when>
    <xsl:when test="ancestor::Table/Header/Data[@name=current()/@name]/@format">
      <xsl:value-of select="format-number(., ancestor::Table/Header/Data[@name=current()/@name]/@format)"/>
    </xsl:when>
    <xsl:otherwise><xsl:copy-of select="child::node()"/></xsl:otherwise>
  </xsl:choose>
  <xsl:if test="@units">
    <xsl:value-of select="' '"/>
    <xsl:call-template name="label">
      <xsl:with-param name="label" select="@units"/>
    </xsl:call-template>
  </xsl:if>
</xsl:template>

<!-- ********** LABEL TEMPLATE ********** -->

<xsl:template name="label">
<xsl:param name="label"/>

   <xsl:choose>
    <xsl:when test="@translate='false'">
      <xsl:value-of select="$label"/>
    </xsl:when>
    <xsl:otherwise>
      <xsl:variable name="title">
        <xsl:copy-of select="msxsl:node-set($titles)/String[@ID = $label][1]/child::node()"/>
      </xsl:variable>
      <xsl:choose>
        <xsl:when test="string-length($title)">
          <xsl:copy-of select="$title"/>
        </xsl:when>
        <xsl:otherwise>
         <xsl:value-of select="$label"/>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>

<!-- ********** TITLE TEMPLATE ********** -->

<xsl:template name="title">
<xsl:param name="noUnit"/>

  <xsl:variable name="label">
    <xsl:choose>
      <xsl:when test="@label"><xsl:value-of select="@label"/></xsl:when>
      <xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:call-template name="label">
    <xsl:with-param name="label" select="$label"/>
  </xsl:call-template>

  <xsl:if test="not($noUnit) and @units">
    <xsl:value-of select="' '"/>
    <xsl:text>(</xsl:text>
    <xsl:call-template name="label">
      <xsl:with-param name="label" select="@units"/>
    </xsl:call-template>
    <xsl:text>)</xsl:text>
  </xsl:if>

  <xsl:if test="@index">
    <xsl:value-of select="' '"/>
    <xsl:value-of select="@index"/>
  </xsl:if>

</xsl:template>

<!-- ********** IMAGE TEMPLATE ********** -->

<xsl:template name="image">
<xsl:param name="src"/>
<xsl:param name="alt"/>
<xsl:param name="id"/>

  <xsl:variable name="srcImage">
    <xsl:choose>
      <xsl:when test="msxsl:node-set($images)/Image[@ID=$src]">
        <xsl:copy-of select="msxsl:node-set($images)/Image[@ID=$src][1]/child::node()"/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$src"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:variable name="altImage">
    <xsl:choose>
      <xsl:when test="msxsl:node-set($images)/Image[@ID=$alt]">
        <xsl:copy-of select="msxsl:node-set($images)/Image[@ID=$alt][1]/child::node()"/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$alt"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>

  <xsl:choose>
    <xsl:when test="$Portable">
      <div style="float:left;width:0;letter-spacing:0;">
      <xsl:if test="$id">
        <xsl:attribute name="id"><xsl:copy-of select="$id"/></xsl:attribute>
      </xsl:if>
        <xsl:copy-of select="$srcImage"/>
      </div>
      <xsl:if test="$alt and $id">
        <div style="display:'none'">
        <xsl:attribute name="id">alt_<xsl:value-of select="$id"/></xsl:attribute>
          <xsl:copy-of select="$altImage"/>
        </div>
      </xsl:if>
    </xsl:when>
    <xsl:otherwise>
      <div style="float:left">
        <img border="0" style="margin-right: 5px">
        <xsl:if xmlns:xsl="http://www.w3.org/1999/XSL/Transform" test="$alt">
          <xsl:attribute name="altImage"><xsl:copy-of select="$altImage"/></xsl:attribute>
        </xsl:if>
        <xsl:if xmlns:xsl="http://www.w3.org/1999/XSL/Transform" test="$id">
          <xsl:attribute name="id"><xsl:copy-of select="$id"/></xsl:attribute>
        </xsl:if>
        <xsl:attribute xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="src"><xsl:copy-of select="$srcImage"/></xsl:attribute>
        </img>
      </div>
    </xsl:otherwise>
  </xsl:choose>

</xsl:template>

<xsl:template match="@img">
  <xsl:call-template name="image">
    <xsl:with-param name="src" select="."/>
  </xsl:call-template>
</xsl:template>

<!-- ********** NOTE POPUP TEMPLATE ********** -->

<xsl:template match="@note|@warning">
  <xsl:variable name="id">popup_<xsl:value-of select="ms:tag()"/></xsl:variable>
  <a style="cursor:help">
  <xsl:attribute name="onMouseOver">popup(<xsl:value-of select="$id"/>)</xsl:attribute>
  <xsl:attribute name="onMouseOut"><xsl:value-of select="$id"/>.style.display='none'</xsl:attribute>
    <div style="position:absolute;">
      <div style="position:absolute;top:-2px;left:3;">
        <xsl:call-template name="image">
          <xsl:with-param name="src">
            <xsl:choose>
              <xsl:when test="name()='note'">note</xsl:when>
              <xsl:otherwise>flag</xsl:otherwise>
            </xsl:choose>
          </xsl:with-param>
        </xsl:call-template>
      </div>
    </div>
    <xsl:value-of select="'   '"/>
  </a>
  <div class="popup" style="display:'none';width:300;">
  <xsl:variable name="value" select="."/>
  <xsl:attribute name="id"><xsl:value-of select="$id"/></xsl:attribute>
    <xsl:choose>
      <xsl:when test="//Data/@message = .">
        <xsl:for-each select="//Data[@message = $value]">
        <xsl:sort select="not(@key) or @key &lt; 0" data-type="number"/>
          <xsl:call-template name="dataValue"/><br/>
          <xsl:if test="position()!=last()"><hr/></xsl:if>
        </xsl:for-each>
      </xsl:when>
      <xsl:otherwise>
        <xsl:call-template name="label">
          <xsl:with-param name="label" select="$value"/>
        </xsl:call-template>
      </xsl:otherwise>
    </xsl:choose>

  </div>
</xsl:template>

</xsl:stylesheet>
PADPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGX

Youez - 2016 - github.com/yon3zu
LinuXploit