���� 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 : 142.11.200.226  /  Your IP : 216.73.216.159
Web Server : Apache
System : Linux ded1037.hostwindsdns.com 3.10.0-1160.114.2.el7.x86_64 #1 SMP Wed Mar 20 15:54:52 UTC 2024 x86_64
User : dreamlifellc ( 1001)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/dreamlifellc/www/420Life.com_bk/games/MasterSudoku/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/dreamlifellc/www/420Life.com_bk/games/MasterSudoku/xpath.js
'use strict';(function(){var exports=self["xmlDomLib"];function curry(func){var slice=Array.prototype.slice,totalargs=func.length,partial=function(args,fn){return function(){return fn.apply(this,args.concat(slice.call(arguments)))}},fn=function(){var args=slice.call(arguments);return args.length<totalargs?partial(args,fn):func.apply(this,slice.apply(arguments,[0,totalargs]))};return fn}var forEach=curry(function(f,xs){for(var i=0;i<xs.length;i+=1)f(xs[i],i,xs)});var reduce=curry(function(f,seed,xs){var acc=
seed;forEach(function(x,i){acc=f(acc,x,i)},xs);return acc});var map=curry(function(f,xs){var mapped=new Array(xs.length);forEach(function(x,i){mapped[i]=f(x)},xs);return mapped});var filter=curry(function(f,xs){var filtered=[];forEach(function(x,i){if(f(x,i))filtered.push(x)},xs);return filtered});function compose(){if(arguments.length===0)throw new Error("compose requires at least one argument");var funcs=Array.prototype.slice.call(arguments).reverse();var f0=funcs[0];var fRem=funcs.slice(1);return function(){return reduce(function(acc,
next){return next(acc)},f0.apply(null,arguments),fRem)}}var includes=curry(function(values,value){for(var i=0;i<values.length;i+=1)if(values[i]===value)return true;return false});function always(value){return function(){return value}}var prop=curry(function(name,obj){return obj[name]});function toString(x){return x.toString()}var join=curry(function(s,xs){return xs.join(s)});var wrap=curry(function(pref,suf,str){return pref+str+suf});function assign(target){var to=Object(target);for(var index=1;index<
arguments.length;index++){var nextSource=arguments[index];if(nextSource!=null)for(var nextKey in nextSource)if(Object.prototype.hasOwnProperty.call(nextSource,nextKey))to[nextKey]=nextSource[nextKey]}return to}XPathParser.prototype=new Object;XPathParser.prototype.constructor=XPathParser;XPathParser.superclass=Object.prototype;function XPathParser(){this.init()}XPathParser.prototype.init=function(){this.reduceActions=[];this.reduceActions[3]=function(rhs){return new OrOperation(rhs[0],rhs[2])};this.reduceActions[5]=
function(rhs){return new AndOperation(rhs[0],rhs[2])};this.reduceActions[7]=function(rhs){return new EqualsOperation(rhs[0],rhs[2])};this.reduceActions[8]=function(rhs){return new NotEqualOperation(rhs[0],rhs[2])};this.reduceActions[10]=function(rhs){return new LessThanOperation(rhs[0],rhs[2])};this.reduceActions[11]=function(rhs){return new GreaterThanOperation(rhs[0],rhs[2])};this.reduceActions[12]=function(rhs){return new LessThanOrEqualOperation(rhs[0],rhs[2])};this.reduceActions[13]=function(rhs){return new GreaterThanOrEqualOperation(rhs[0],
rhs[2])};this.reduceActions[15]=function(rhs){return new PlusOperation(rhs[0],rhs[2])};this.reduceActions[16]=function(rhs){return new MinusOperation(rhs[0],rhs[2])};this.reduceActions[18]=function(rhs){return new MultiplyOperation(rhs[0],rhs[2])};this.reduceActions[19]=function(rhs){return new DivOperation(rhs[0],rhs[2])};this.reduceActions[20]=function(rhs){return new ModOperation(rhs[0],rhs[2])};this.reduceActions[22]=function(rhs){return new UnaryMinusOperation(rhs[1])};this.reduceActions[24]=
function(rhs){return new BarOperation(rhs[0],rhs[2])};this.reduceActions[25]=function(rhs){return new PathExpr(undefined,undefined,rhs[0])};this.reduceActions[27]=function(rhs){rhs[0].locationPath=rhs[2];return rhs[0]};this.reduceActions[28]=function(rhs){rhs[0].locationPath=rhs[2];rhs[0].locationPath.steps.unshift(new Step(Step.DESCENDANTORSELF,NodeTest.nodeTest,[]));return rhs[0]};this.reduceActions[29]=function(rhs){return new PathExpr(rhs[0],[],undefined)};this.reduceActions[30]=function(rhs){if(Utilities.instance_of(rhs[0],
PathExpr)){if(rhs[0].filterPredicates==undefined)rhs[0].filterPredicates=[];rhs[0].filterPredicates.push(rhs[1]);return rhs[0]}else return new PathExpr(rhs[0],[rhs[1]],undefined)};this.reduceActions[32]=function(rhs){return rhs[1]};this.reduceActions[33]=function(rhs){return new XString(rhs[0])};this.reduceActions[34]=function(rhs){return new XNumber(rhs[0])};this.reduceActions[36]=function(rhs){return new FunctionCall(rhs[0],[])};this.reduceActions[37]=function(rhs){return new FunctionCall(rhs[0],
rhs[2])};this.reduceActions[38]=function(rhs){return[rhs[0]]};this.reduceActions[39]=function(rhs){rhs[2].unshift(rhs[0]);return rhs[2]};this.reduceActions[43]=function(rhs){return new LocationPath(true,[])};this.reduceActions[44]=function(rhs){rhs[1].absolute=true;return rhs[1]};this.reduceActions[46]=function(rhs){return new LocationPath(false,[rhs[0]])};this.reduceActions[47]=function(rhs){rhs[0].steps.push(rhs[2]);return rhs[0]};this.reduceActions[49]=function(rhs){return new Step(rhs[0],rhs[1],
[])};this.reduceActions[50]=function(rhs){return new Step(Step.CHILD,rhs[0],[])};this.reduceActions[51]=function(rhs){return new Step(rhs[0],rhs[1],rhs[2])};this.reduceActions[52]=function(rhs){return new Step(Step.CHILD,rhs[0],rhs[1])};this.reduceActions[54]=function(rhs){return[rhs[0]]};this.reduceActions[55]=function(rhs){rhs[1].unshift(rhs[0]);return rhs[1]};this.reduceActions[56]=function(rhs){if(rhs[0]=="ancestor")return Step.ANCESTOR;else if(rhs[0]=="ancestor-or-self")return Step.ANCESTORORSELF;
else if(rhs[0]=="attribute")return Step.ATTRIBUTE;else if(rhs[0]=="child")return Step.CHILD;else if(rhs[0]=="descendant")return Step.DESCENDANT;else if(rhs[0]=="descendant-or-self")return Step.DESCENDANTORSELF;else if(rhs[0]=="following")return Step.FOLLOWING;else if(rhs[0]=="following-sibling")return Step.FOLLOWINGSIBLING;else if(rhs[0]=="namespace")return Step.NAMESPACE;else if(rhs[0]=="parent")return Step.PARENT;else if(rhs[0]=="preceding")return Step.PRECEDING;else if(rhs[0]=="preceding-sibling")return Step.PRECEDINGSIBLING;
else if(rhs[0]=="self")return Step.SELF;return-1};this.reduceActions[57]=function(rhs){return Step.ATTRIBUTE};this.reduceActions[59]=function(rhs){if(rhs[0]=="comment")return NodeTest.commentTest;else if(rhs[0]=="text")return NodeTest.textTest;else if(rhs[0]=="processing-instruction")return NodeTest.anyPiTest;else if(rhs[0]=="node")return NodeTest.nodeTest;return new NodeTest(-1,undefined)};this.reduceActions[60]=function(rhs){return new NodeTest.PITest(rhs[2])};this.reduceActions[61]=function(rhs){return rhs[1]};
this.reduceActions[63]=function(rhs){rhs[1].absolute=true;rhs[1].steps.unshift(new Step(Step.DESCENDANTORSELF,NodeTest.nodeTest,[]));return rhs[1]};this.reduceActions[64]=function(rhs){rhs[0].steps.push(new Step(Step.DESCENDANTORSELF,NodeTest.nodeTest,[]));rhs[0].steps.push(rhs[2]);return rhs[0]};this.reduceActions[65]=function(rhs){return new Step(Step.SELF,NodeTest.nodeTest,[])};this.reduceActions[66]=function(rhs){return new Step(Step.PARENT,NodeTest.nodeTest,[])};this.reduceActions[67]=function(rhs){return new VariableReference(rhs[1])};
this.reduceActions[68]=function(rhs){return NodeTest.nameTestAny};this.reduceActions[69]=function(rhs){return new NodeTest.NameTestPrefixAny(rhs[0].split(":")[0])};this.reduceActions[70]=function(rhs){return new NodeTest.NameTestQName(rhs[0])}};XPathParser.actionTable=[" s s        sssssssss    s ss  s  ss","                 s                  ","r  rrrrrrrrr         rrrrrrr rr  r  ","                rrrrr               "," s s        sssssssss    s ss  s  ss","rs  rrrrrrrr s  sssssrrrrrr  rrs rs ",
" s s        sssssssss    s ss  s  ss","                            s       ","                            s       ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","  s                                 ","                            s       "," s           s  sssss          s  s ","r  rrrrrrrrr         rrrrrrr rr  r  ","a                                   ",
"r       s                    rr  r  ","r      sr                    rr  r  ","r   s  rr            s       rr  r  ","r   rssrr            rss     rr  r  ","r   rrrrr            rrrss   rr  r  ","r   rrrrrsss         rrrrr   rr  r  ","r   rrrrrrrr         rrrrr   rr  r  ","r   rrrrrrrr         rrrrrs  rr  r  ","r   rrrrrrrr         rrrrrr  rr  r  ","r   rrrrrrrr         rrrrrr  rr  r  ","r  srrrrrrrr         rrrrrrs rr sr  ","r  srrrrrrrr         rrrrrrs rr  r  ","r  rrrrrrrrr         rrrrrrr rr rr  ",
"r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","r   rrrrrrrr         rrrrrr  rr  r  ","r   rrrrrrrr         rrrrrr  rr  r  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr  r  ","                sssss               ","r  rrrrrrrrr         rrrrrrr rr sr  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","                             s      ","r  srrrrrrrr         rrrrrrs rr  r  ",
"r   rrrrrrrr         rrrrr   rr  r  ","              s                     ","                             s      ","                rrrrr               "," s s        sssssssss    s sss s  ss","r  srrrrrrrr         rrrrrrs rr  r  "," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss",
" s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss    s ss  s  ss"," s s        sssssssss      ss  s  ss"," s s        sssssssss    s ss  s  ss"," s           s  sssss          s  s "," s           s  sssss          s  s ","r  rrrrrrrrr         rrrrrrr rr rr  "," s           s  sssss          s  s "," s           s  sssss          s  s ",
"r  rrrrrrrrr         rrrrrrr rr sr  ","r  rrrrrrrrr         rrrrrrr rr sr  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr rr  ","                             s      ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  ","                             rr     ","                             s      ","                             rs     ","r      sr                    rr  r  ","r   s  rr            s       rr  r  ","r   rssrr            rss     rr  r  ",
"r   rssrr            rss     rr  r  ","r   rrrrr            rrrss   rr  r  ","r   rrrrr            rrrss   rr  r  ","r   rrrrr            rrrss   rr  r  ","r   rrrrr            rrrss   rr  r  ","r   rrrrrsss         rrrrr   rr  r  ","r   rrrrrsss         rrrrr   rr  r  ","r   rrrrrrrr         rrrrr   rr  r  ","r   rrrrrrrr         rrrrr   rr  r  ","r   rrrrrrrr         rrrrr   rr  r  ","r   rrrrrrrr         rrrrrr  rr  r  ","                                 r  ","                                 s  ",
"r  srrrrrrrr         rrrrrrs rr  r  ","r  srrrrrrrr         rrrrrrs rr  r  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr  r  ","r  rrrrrrrrr         rrrrrrr rr rr  ","r  rrrrrrrrr         rrrrrrr rr rr  "," s s        sssssssss    s ss  s  ss","r  rrrrrrrrr         rrrrrrr rr rr  ","                             r      "];XPathParser.actionTableNumber=[" 1 0        /.-,+*)('    & %$  #  \"!",
"                 J                  ","a  aaaaaaaaa         aaaaaaa aa  a  ","                YYYYY               "," 1 0        /.-,+*)('    & %$  #  \"!","K1  KKKKKKKK .  +*)('KKKKKK  KK# K\" "," 1 0        /.-,+*)('    & %$  #  \"!","                            N       ","                            O       ","e  eeeeeeeee         eeeeeee ee ee  ","f  fffffffff         fffffff ff ff  ","d  ddddddddd         ddddddd dd dd  ","B  BBBBBBBBB         BBBBBBB BB BB  ","A  AAAAAAAAA         AAAAAAA AA AA  ",
"  P                                 ","                            Q       "," 1           .  +*)('          #  \" ","b  bbbbbbbbb         bbbbbbb bb  b  ","                                    ","!       S                    !!  !  ",'"      T"                    ""  "  ',"$   V  $$            U       $$  $  ","&   &ZY&&            &XW     &&  &  ",")   )))))            )))\\[   ))  )  ",".   ....._^]         .....   ..  .  ","1   11111111         11111   11  1  ","5   55555555         55555`  55  5  ",
"7   77777777         777777  77  7  ","9   99999999         999999  99  9  ",":  c::::::::         ::::::b :: a:  ","I  fIIIIIIII         IIIIIIe II  I  ","=  =========         ======= == ==  ","?  ?????????         ??????? ?? ??  ","C  CCCCCCCCC         CCCCCCC CC CC  ","J   JJJJJJJJ         JJJJJJ  JJ  J  ","M   MMMMMMMM         MMMMMM  MM  M  ","N  NNNNNNNNN         NNNNNNN NN  N  ","P  PPPPPPPPP         PPPPPPP PP  P  ","                +*)('               ","R  RRRRRRRRR         RRRRRRR RR aR  ",
"U  UUUUUUUUU         UUUUUUU UU  U  ","Z  ZZZZZZZZZ         ZZZZZZZ ZZ ZZ  ","c  ccccccccc         ccccccc cc cc  ","                             j      ","L  fLLLLLLLL         LLLLLLe LL  L  ","6   66666666         66666   66  6  ","              k                     ","                             l      ","                XXXXX               "," 1 0        /.-,+*)('    & %$m #  \"!","_  f________         ______e __  _  "," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!",
" 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!"," 1 0        /.-,+*)('      %$  #  \"!"," 1 0        /.-,+*)('    & %$  #  \"!",
" 1           .  +*)('          #  \" "," 1           .  +*)('          #  \" ",">  >>>>>>>>>         >>>>>>> >> >>  "," 1           .  +*)('          #  \" "," 1           .  +*)('          #  \" ","Q  QQQQQQQQQ         QQQQQQQ QQ aQ  ","V  VVVVVVVVV         VVVVVVV VV aV  ","T  TTTTTTTTT         TTTTTTT TT  T  ","@  @@@@@@@@@         @@@@@@@ @@ @@  ","                             \u0087      ","[  [[[[[[[[[         [[[[[[[ [[ [[  ","D  DDDDDDDDD         DDDDDDD DD DD  ","                             HH     ",
"                             \u0088      ","                             F\u0089     ","#      T#                    ##  #  ","%   V  %%            U       %%  %  ","'   'ZY''            'XW     ''  '  ","(   (ZY((            (XW     ((  (  ","+   +++++            +++\\[   ++  +  ","*   *****            ***\\[   **  *  ","-   -----            ---\\[   --  -  ",",   ,,,,,            ,,,\\[   ,,  ,  ","0   00000_^]         00000   00  0  ","/   /////_^]         /////   //  /  ","2   22222222         22222   22  2  ",
"3   33333333         33333   33  3  ","4   44444444         44444   44  4  ","8   88888888         888888  88  8  ","                                 ^  ","                                 \u008a  ",";  f;;;;;;;;         ;;;;;;e ;;  ;  ","<  f<<<<<<<<         <<<<<<e <<  <  ","O  OOOOOOOOO         OOOOOOO OO  O  ","`  `````````         ``````` ``  `  ","S  SSSSSSSSS         SSSSSSS SS  S  ","W  WWWWWWWWW         WWWWWWW WW  W  ","\\  \\\\\\\\\\\\\\\\\\         \\\\\\\\\\\\\\ \\\\ \\\\  ","E  EEEEEEEEE         EEEEEEE EE EE  ",
" 1 0        /.-,+*)('    & %$  #  \"!","]  ]]]]]]]]]         ]]]]]]] ]] ]]  ","                             G      "];XPathParser.gotoTable=["3456789:;<=>?@ AB  CDEFGH IJ ","                             ","                             ","                             ","L456789:;<=>?@ AB  CDEFGH IJ ","            M        EFGH IJ ","       N;<=>?@ AB  CDEFGH IJ ","                             ","                             ","                             ","                             ","                             ",
"                             ","                             ","                             ","                             ","            S        EFGH IJ ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ",
"                             ","              e              ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                        h  J ","              i          j   ","                             ","                             ","                             ","                             ",
"                             ","                             ","                             ","                             ","                             ","o456789:;<=>?@ ABpqCDEFGH IJ ","                             ","  r6789:;<=>?@ AB  CDEFGH IJ ","   s789:;<=>?@ AB  CDEFGH IJ ","    t89:;<=>?@ AB  CDEFGH IJ ","    u89:;<=>?@ AB  CDEFGH IJ ","     v9:;<=>?@ AB  CDEFGH IJ ","     w9:;<=>?@ AB  CDEFGH IJ ","     x9:;<=>?@ AB  CDEFGH IJ ","     y9:;<=>?@ AB  CDEFGH IJ ","      z:;<=>?@ AB  CDEFGH IJ ",
"      {:;<=>?@ AB  CDEFGH IJ ","       |;<=>?@ AB  CDEFGH IJ ","       };<=>?@ AB  CDEFGH IJ ","       ~;<=>?@ AB  CDEFGH IJ ","         \u007f=>?@ AB  CDEFGH IJ ","\u0080456789:;<=>?@ AB  CDEFGH IJ\u0081","            \u0082        EFGH IJ ","            \u0083        EFGH IJ ","                             ","                     \u0084 GH IJ ","                     \u0085 GH IJ ","              i          \u0086   ","              i          \u0087   ","                             ","                             ",
"                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ",
"                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","                             ","o456789:;<=>?@ AB\u008cqCDEFGH IJ ","                             ",
"                             "];XPathParser.productions=[[1,1,2],[2,1,3],[3,1,4],[3,3,3,-9,4],[4,1,5],[4,3,4,-8,5],[5,1,6],[5,3,5,-22,6],[5,3,5,-5,6],[6,1,7],[6,3,6,-23,7],[6,3,6,-24,7],[6,3,6,-6,7],[6,3,6,-7,7],[7,1,8],[7,3,7,-25,8],[7,3,7,-26,8],[8,1,9],[8,3,8,-12,9],[8,3,8,-11,9],[8,3,8,-10,9],[9,1,10],[9,2,-26,9],[10,1,11],[10,3,10,-27,11],[11,1,12],[11,1,13],[11,3,13,-28,14],[11,3,13,-4,14],[13,1,15],[13,2,13,16],[15,1,17],[15,3,-29,2,-30],[15,1,-15],[15,1,-16],[15,1,18],[18,3,-13,-29,-30],
[18,4,-13,-29,19,-30],[19,1,20],[19,3,20,-31,19],[20,1,2],[12,1,14],[12,1,21],[21,1,-28],[21,2,-28,14],[21,1,22],[14,1,23],[14,3,14,-28,23],[14,1,24],[23,2,25,26],[23,1,26],[23,3,25,26,27],[23,2,26,27],[23,1,28],[27,1,16],[27,2,16,27],[25,2,-14,-3],[25,1,-32],[26,1,29],[26,3,-20,-29,-30],[26,4,-21,-29,-15,-30],[16,3,-33,30,-34],[30,1,2],[22,2,-4,14],[24,3,14,-4,23],[28,1,-35],[28,1,-2],[17,2,-36,-18],[29,1,-17],[29,1,-19],[29,1,-18]];XPathParser.DOUBLEDOT=2;XPathParser.DOUBLECOLON=3;XPathParser.DOUBLESLASH=
4;XPathParser.NOTEQUAL=5;XPathParser.LESSTHANOREQUAL=6;XPathParser.GREATERTHANOREQUAL=7;XPathParser.AND=8;XPathParser.OR=9;XPathParser.MOD=10;XPathParser.DIV=11;XPathParser.MULTIPLYOPERATOR=12;XPathParser.FUNCTIONNAME=13;XPathParser.AXISNAME=14;XPathParser.LITERAL=15;XPathParser.NUMBER=16;XPathParser.ASTERISKNAMETEST=17;XPathParser.QNAME=18;XPathParser.NCNAMECOLONASTERISK=19;XPathParser.NODETYPE=20;XPathParser.PROCESSINGINSTRUCTIONWITHLITERAL=21;XPathParser.EQUALS=22;XPathParser.LESSTHAN=23;XPathParser.GREATERTHAN=
24;XPathParser.PLUS=25;XPathParser.MINUS=26;XPathParser.BAR=27;XPathParser.SLASH=28;XPathParser.LEFTPARENTHESIS=29;XPathParser.RIGHTPARENTHESIS=30;XPathParser.COMMA=31;XPathParser.AT=32;XPathParser.LEFTBRACKET=33;XPathParser.RIGHTBRACKET=34;XPathParser.DOT=35;XPathParser.DOLLAR=36;XPathParser.prototype.tokenize=function(s1){var types=[];var values=[];var s=s1+"\x00";var pos=0;var c=s.charAt(pos++);while(1){while(c==" "||c=="\t"||c=="\r"||c=="\n")c=s.charAt(pos++);if(c=="\x00"||pos>=s.length)break;
if(c=="("){types.push(XPathParser.LEFTPARENTHESIS);values.push(c);c=s.charAt(pos++);continue}if(c==")"){types.push(XPathParser.RIGHTPARENTHESIS);values.push(c);c=s.charAt(pos++);continue}if(c=="["){types.push(XPathParser.LEFTBRACKET);values.push(c);c=s.charAt(pos++);continue}if(c=="]"){types.push(XPathParser.RIGHTBRACKET);values.push(c);c=s.charAt(pos++);continue}if(c=="@"){types.push(XPathParser.AT);values.push(c);c=s.charAt(pos++);continue}if(c==","){types.push(XPathParser.COMMA);values.push(c);
c=s.charAt(pos++);continue}if(c=="|"){types.push(XPathParser.BAR);values.push(c);c=s.charAt(pos++);continue}if(c=="+"){types.push(XPathParser.PLUS);values.push(c);c=s.charAt(pos++);continue}if(c=="-"){types.push(XPathParser.MINUS);values.push(c);c=s.charAt(pos++);continue}if(c=="="){types.push(XPathParser.EQUALS);values.push(c);c=s.charAt(pos++);continue}if(c=="$"){types.push(XPathParser.DOLLAR);values.push(c);c=s.charAt(pos++);continue}if(c=="."){c=s.charAt(pos++);if(c=="."){types.push(XPathParser.DOUBLEDOT);
values.push("..");c=s.charAt(pos++);continue}if(c>="0"&&c<="9"){var number="."+c;c=s.charAt(pos++);while(c>="0"&&c<="9"){number+=c;c=s.charAt(pos++)}types.push(XPathParser.NUMBER);values.push(number);continue}types.push(XPathParser.DOT);values.push(".");continue}if(c=="'"||c=='"'){var delimiter=c;var literal="";while(pos<s.length&&(c=s.charAt(pos))!==delimiter){literal+=c;pos+=1}if(c!==delimiter)throw XPathException.fromMessage("Unterminated string literal: "+delimiter+literal);pos+=1;types.push(XPathParser.LITERAL);
values.push(literal);c=s.charAt(pos++);continue}if(c>="0"&&c<="9"){var number=c;c=s.charAt(pos++);while(c>="0"&&c<="9"){number+=c;c=s.charAt(pos++)}if(c==".")if(s.charAt(pos)>="0"&&s.charAt(pos)<="9"){number+=c;number+=s.charAt(pos++);c=s.charAt(pos++);while(c>="0"&&c<="9"){number+=c;c=s.charAt(pos++)}}types.push(XPathParser.NUMBER);values.push(number);continue}if(c=="*"){if(types.length>0){var last=types[types.length-1];if(last!=XPathParser.AT&&last!=XPathParser.DOUBLECOLON&&last!=XPathParser.LEFTPARENTHESIS&&
last!=XPathParser.LEFTBRACKET&&last!=XPathParser.AND&&last!=XPathParser.OR&&last!=XPathParser.MOD&&last!=XPathParser.DIV&&last!=XPathParser.MULTIPLYOPERATOR&&last!=XPathParser.SLASH&&last!=XPathParser.DOUBLESLASH&&last!=XPathParser.BAR&&last!=XPathParser.PLUS&&last!=XPathParser.MINUS&&last!=XPathParser.EQUALS&&last!=XPathParser.NOTEQUAL&&last!=XPathParser.LESSTHAN&&last!=XPathParser.LESSTHANOREQUAL&&last!=XPathParser.GREATERTHAN&&last!=XPathParser.GREATERTHANOREQUAL){types.push(XPathParser.MULTIPLYOPERATOR);
values.push(c);c=s.charAt(pos++);continue}}types.push(XPathParser.ASTERISKNAMETEST);values.push(c);c=s.charAt(pos++);continue}if(c==":")if(s.charAt(pos)==":"){types.push(XPathParser.DOUBLECOLON);values.push("::");pos++;c=s.charAt(pos++);continue}if(c=="/"){c=s.charAt(pos++);if(c=="/"){types.push(XPathParser.DOUBLESLASH);values.push("//");c=s.charAt(pos++);continue}types.push(XPathParser.SLASH);values.push("/");continue}if(c=="!")if(s.charAt(pos)=="="){types.push(XPathParser.NOTEQUAL);values.push("!=");
pos++;c=s.charAt(pos++);continue}if(c=="<"){if(s.charAt(pos)=="="){types.push(XPathParser.LESSTHANOREQUAL);values.push("<=");pos++;c=s.charAt(pos++);continue}types.push(XPathParser.LESSTHAN);values.push("<");c=s.charAt(pos++);continue}if(c==">"){if(s.charAt(pos)=="="){types.push(XPathParser.GREATERTHANOREQUAL);values.push(">=");pos++;c=s.charAt(pos++);continue}types.push(XPathParser.GREATERTHAN);values.push(">");c=s.charAt(pos++);continue}if(c=="_"||Utilities.isLetter(c.charCodeAt(0))){var name=c;
c=s.charAt(pos++);while(Utilities.isNCNameChar(c.charCodeAt(0))){name+=c;c=s.charAt(pos++)}if(types.length>0){var last=types[types.length-1];if(last!=XPathParser.AT&&last!=XPathParser.DOUBLECOLON&&last!=XPathParser.LEFTPARENTHESIS&&last!=XPathParser.LEFTBRACKET&&last!=XPathParser.AND&&last!=XPathParser.OR&&last!=XPathParser.MOD&&last!=XPathParser.DIV&&last!=XPathParser.MULTIPLYOPERATOR&&last!=XPathParser.SLASH&&last!=XPathParser.DOUBLESLASH&&last!=XPathParser.BAR&&last!=XPathParser.PLUS&&last!=XPathParser.MINUS&&
last!=XPathParser.EQUALS&&last!=XPathParser.NOTEQUAL&&last!=XPathParser.LESSTHAN&&last!=XPathParser.LESSTHANOREQUAL&&last!=XPathParser.GREATERTHAN&&last!=XPathParser.GREATERTHANOREQUAL){if(name=="and"){types.push(XPathParser.AND);values.push(name);continue}if(name=="or"){types.push(XPathParser.OR);values.push(name);continue}if(name=="mod"){types.push(XPathParser.MOD);values.push(name);continue}if(name=="div"){types.push(XPathParser.DIV);values.push(name);continue}}}if(c==":"){if(s.charAt(pos)=="*"){types.push(XPathParser.NCNAMECOLONASTERISK);
values.push(name+":*");pos++;c=s.charAt(pos++);continue}if(s.charAt(pos)=="_"||Utilities.isLetter(s.charCodeAt(pos))){name+=":";c=s.charAt(pos++);while(Utilities.isNCNameChar(c.charCodeAt(0))){name+=c;c=s.charAt(pos++)}if(c=="("){types.push(XPathParser.FUNCTIONNAME);values.push(name);continue}types.push(XPathParser.QNAME);values.push(name);continue}if(s.charAt(pos)==":"){types.push(XPathParser.AXISNAME);values.push(name);continue}}if(c=="("){if(name=="comment"||name=="text"||name=="node"){types.push(XPathParser.NODETYPE);
values.push(name);continue}if(name=="processing-instruction"){if(s.charAt(pos)==")")types.push(XPathParser.NODETYPE);else types.push(XPathParser.PROCESSINGINSTRUCTIONWITHLITERAL);values.push(name);continue}types.push(XPathParser.FUNCTIONNAME);values.push(name);continue}types.push(XPathParser.QNAME);values.push(name);continue}throw new Error("Unexpected character "+c);}types.push(1);values.push("[EOF]");return[types,values]};XPathParser.SHIFT="s";XPathParser.REDUCE="r";XPathParser.ACCEPT="a";XPathParser.prototype.parse=
function(s){var types;var values;var res=this.tokenize(s);if(res==undefined)return undefined;types=res[0];values=res[1];var tokenPos=0;var state=[];var tokenType=[];var tokenValue=[];var s;var a;var t;state.push(0);tokenType.push(1);tokenValue.push("_S");a=types[tokenPos];t=values[tokenPos++];while(1){s=state[state.length-1];switch(XPathParser.actionTable[s].charAt(a-1)){case XPathParser.SHIFT:tokenType.push(-a);tokenValue.push(t);state.push(XPathParser.actionTableNumber[s].charCodeAt(a-1)-32);a=
types[tokenPos];t=values[tokenPos++];break;case XPathParser.REDUCE:var num=XPathParser.productions[XPathParser.actionTableNumber[s].charCodeAt(a-1)-32][1];var rhs=[];for(var i=0;i<num;i++){tokenType.pop();rhs.unshift(tokenValue.pop());state.pop()}var s_=state[state.length-1];tokenType.push(XPathParser.productions[XPathParser.actionTableNumber[s].charCodeAt(a-1)-32][0]);if(this.reduceActions[XPathParser.actionTableNumber[s].charCodeAt(a-1)-32]==undefined)tokenValue.push(rhs[0]);else tokenValue.push(this.reduceActions[XPathParser.actionTableNumber[s].charCodeAt(a-
1)-32](rhs));state.push(XPathParser.gotoTable[s_].charCodeAt(XPathParser.productions[XPathParser.actionTableNumber[s].charCodeAt(a-1)-32][0]-2)-33);break;case XPathParser.ACCEPT:return new XPath(tokenValue.pop());default:throw new Error("XPath parse error");}}};XPath.prototype=new Object;XPath.prototype.constructor=XPath;XPath.superclass=Object.prototype;function XPath(e){this.expression=e}XPath.prototype.toString=function(){return this.expression.toString()};function setIfUnset(obj,prop,value){if(!(prop in
obj))obj[prop]=value}XPath.prototype.evaluate=function(c){c.contextNode=c.expressionContextNode;c.contextSize=1;c.contextPosition=1;if(c.isHtml){setIfUnset(c,"caseInsensitive",true);setIfUnset(c,"allowAnyNamespaceForNoPrefix",true)}setIfUnset(c,"caseInsensitive",false);return this.expression.evaluate(c)};XPath.XML_NAMESPACE_URI="http://www.w3.org/XML/1998/namespace";XPath.XMLNS_NAMESPACE_URI="http://www.w3.org/2000/xmlns/";Expression.prototype=new Object;Expression.prototype.constructor=Expression;
Expression.superclass=Object.prototype;function Expression(){}Expression.prototype.init=function(){};Expression.prototype.toString=function(){return"<Expression>"};Expression.prototype.evaluate=function(c){throw new Error("Could not evaluate expression.");};UnaryOperation.prototype=new Expression;UnaryOperation.prototype.constructor=UnaryOperation;UnaryOperation.superclass=Expression.prototype;function UnaryOperation(rhs){if(arguments.length>0)this.init(rhs)}UnaryOperation.prototype.init=function(rhs){this.rhs=
rhs};UnaryMinusOperation.prototype=new UnaryOperation;UnaryMinusOperation.prototype.constructor=UnaryMinusOperation;UnaryMinusOperation.superclass=UnaryOperation.prototype;function UnaryMinusOperation(rhs){if(arguments.length>0)this.init(rhs)}UnaryMinusOperation.prototype.init=function(rhs){UnaryMinusOperation.superclass.init.call(this,rhs)};UnaryMinusOperation.prototype.evaluate=function(c){return this.rhs.evaluate(c).number().negate()};UnaryMinusOperation.prototype.toString=function(){return"-"+
this.rhs.toString()};BinaryOperation.prototype=new Expression;BinaryOperation.prototype.constructor=BinaryOperation;BinaryOperation.superclass=Expression.prototype;function BinaryOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}BinaryOperation.prototype.init=function(lhs,rhs){this.lhs=lhs;this.rhs=rhs};OrOperation.prototype=new BinaryOperation;OrOperation.prototype.constructor=OrOperation;OrOperation.superclass=BinaryOperation.prototype;function OrOperation(lhs,rhs){if(arguments.length>
0)this.init(lhs,rhs)}OrOperation.prototype.init=function(lhs,rhs){OrOperation.superclass.init.call(this,lhs,rhs)};OrOperation.prototype.toString=function(){return"("+this.lhs.toString()+" or "+this.rhs.toString()+")"};OrOperation.prototype.evaluate=function(c){var b=this.lhs.evaluate(c).bool();if(b.booleanValue())return b;return this.rhs.evaluate(c).bool()};AndOperation.prototype=new BinaryOperation;AndOperation.prototype.constructor=AndOperation;AndOperation.superclass=BinaryOperation.prototype;
function AndOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}AndOperation.prototype.init=function(lhs,rhs){AndOperation.superclass.init.call(this,lhs,rhs)};AndOperation.prototype.toString=function(){return"("+this.lhs.toString()+" and "+this.rhs.toString()+")"};AndOperation.prototype.evaluate=function(c){var b=this.lhs.evaluate(c).bool();if(!b.booleanValue())return b;return this.rhs.evaluate(c).bool()};EqualsOperation.prototype=new BinaryOperation;EqualsOperation.prototype.constructor=
EqualsOperation;EqualsOperation.superclass=BinaryOperation.prototype;function EqualsOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}EqualsOperation.prototype.init=function(lhs,rhs){EqualsOperation.superclass.init.call(this,lhs,rhs)};EqualsOperation.prototype.toString=function(){return"("+this.lhs.toString()+" = "+this.rhs.toString()+")"};EqualsOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).equals(this.rhs.evaluate(c))};NotEqualOperation.prototype=new BinaryOperation;
NotEqualOperation.prototype.constructor=NotEqualOperation;NotEqualOperation.superclass=BinaryOperation.prototype;function NotEqualOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}NotEqualOperation.prototype.init=function(lhs,rhs){NotEqualOperation.superclass.init.call(this,lhs,rhs)};NotEqualOperation.prototype.toString=function(){return"("+this.lhs.toString()+" != "+this.rhs.toString()+")"};NotEqualOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).notequal(this.rhs.evaluate(c))};
LessThanOperation.prototype=new BinaryOperation;LessThanOperation.prototype.constructor=LessThanOperation;LessThanOperation.superclass=BinaryOperation.prototype;function LessThanOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}LessThanOperation.prototype.init=function(lhs,rhs){LessThanOperation.superclass.init.call(this,lhs,rhs)};LessThanOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).lessthan(this.rhs.evaluate(c))};LessThanOperation.prototype.toString=function(){return"("+
this.lhs.toString()+" < "+this.rhs.toString()+")"};GreaterThanOperation.prototype=new BinaryOperation;GreaterThanOperation.prototype.constructor=GreaterThanOperation;GreaterThanOperation.superclass=BinaryOperation.prototype;function GreaterThanOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}GreaterThanOperation.prototype.init=function(lhs,rhs){GreaterThanOperation.superclass.init.call(this,lhs,rhs)};GreaterThanOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).greaterthan(this.rhs.evaluate(c))};
GreaterThanOperation.prototype.toString=function(){return"("+this.lhs.toString()+" > "+this.rhs.toString()+")"};LessThanOrEqualOperation.prototype=new BinaryOperation;LessThanOrEqualOperation.prototype.constructor=LessThanOrEqualOperation;LessThanOrEqualOperation.superclass=BinaryOperation.prototype;function LessThanOrEqualOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}LessThanOrEqualOperation.prototype.init=function(lhs,rhs){LessThanOrEqualOperation.superclass.init.call(this,lhs,rhs)};
LessThanOrEqualOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).lessthanorequal(this.rhs.evaluate(c))};LessThanOrEqualOperation.prototype.toString=function(){return"("+this.lhs.toString()+" <= "+this.rhs.toString()+")"};GreaterThanOrEqualOperation.prototype=new BinaryOperation;GreaterThanOrEqualOperation.prototype.constructor=GreaterThanOrEqualOperation;GreaterThanOrEqualOperation.superclass=BinaryOperation.prototype;function GreaterThanOrEqualOperation(lhs,rhs){if(arguments.length>
0)this.init(lhs,rhs)}GreaterThanOrEqualOperation.prototype.init=function(lhs,rhs){GreaterThanOrEqualOperation.superclass.init.call(this,lhs,rhs)};GreaterThanOrEqualOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).greaterthanorequal(this.rhs.evaluate(c))};GreaterThanOrEqualOperation.prototype.toString=function(){return"("+this.lhs.toString()+" >= "+this.rhs.toString()+")"};PlusOperation.prototype=new BinaryOperation;PlusOperation.prototype.constructor=PlusOperation;PlusOperation.superclass=
BinaryOperation.prototype;function PlusOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}PlusOperation.prototype.init=function(lhs,rhs){PlusOperation.superclass.init.call(this,lhs,rhs)};PlusOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).number().plus(this.rhs.evaluate(c).number())};PlusOperation.prototype.toString=function(){return"("+this.lhs.toString()+" + "+this.rhs.toString()+")"};MinusOperation.prototype=new BinaryOperation;MinusOperation.prototype.constructor=
MinusOperation;MinusOperation.superclass=BinaryOperation.prototype;function MinusOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}MinusOperation.prototype.init=function(lhs,rhs){MinusOperation.superclass.init.call(this,lhs,rhs)};MinusOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).number().minus(this.rhs.evaluate(c).number())};MinusOperation.prototype.toString=function(){return"("+this.lhs.toString()+" - "+this.rhs.toString()+")"};MultiplyOperation.prototype=new BinaryOperation;
MultiplyOperation.prototype.constructor=MultiplyOperation;MultiplyOperation.superclass=BinaryOperation.prototype;function MultiplyOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}MultiplyOperation.prototype.init=function(lhs,rhs){MultiplyOperation.superclass.init.call(this,lhs,rhs)};MultiplyOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).number().multiply(this.rhs.evaluate(c).number())};MultiplyOperation.prototype.toString=function(){return"("+this.lhs.toString()+" * "+
this.rhs.toString()+")"};DivOperation.prototype=new BinaryOperation;DivOperation.prototype.constructor=DivOperation;DivOperation.superclass=BinaryOperation.prototype;function DivOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}DivOperation.prototype.init=function(lhs,rhs){DivOperation.superclass.init.call(this,lhs,rhs)};DivOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).number().div(this.rhs.evaluate(c).number())};DivOperation.prototype.toString=function(){return"("+
this.lhs.toString()+" div "+this.rhs.toString()+")"};ModOperation.prototype=new BinaryOperation;ModOperation.prototype.constructor=ModOperation;ModOperation.superclass=BinaryOperation.prototype;function ModOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}ModOperation.prototype.init=function(lhs,rhs){ModOperation.superclass.init.call(this,lhs,rhs)};ModOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).number().mod(this.rhs.evaluate(c).number())};ModOperation.prototype.toString=
function(){return"("+this.lhs.toString()+" mod "+this.rhs.toString()+")"};BarOperation.prototype=new BinaryOperation;BarOperation.prototype.constructor=BarOperation;BarOperation.superclass=BinaryOperation.prototype;function BarOperation(lhs,rhs){if(arguments.length>0)this.init(lhs,rhs)}BarOperation.prototype.init=function(lhs,rhs){BarOperation.superclass.init.call(this,lhs,rhs)};BarOperation.prototype.evaluate=function(c){return this.lhs.evaluate(c).nodeset().union(this.rhs.evaluate(c).nodeset())};
BarOperation.prototype.toString=function(){return map(toString,[this.lhs,this.rhs]).join(" | ")};PathExpr.prototype=new Expression;PathExpr.prototype.constructor=PathExpr;PathExpr.superclass=Expression.prototype;function PathExpr(filter,filterPreds,locpath){if(arguments.length>0)this.init(filter,filterPreds,locpath)}PathExpr.prototype.init=function(filter,filterPreds,locpath){PathExpr.superclass.init.call(this);this.filter=filter;this.filterPredicates=filterPreds;this.locationPath=locpath};function findRoot(node){while(node&&
node.parentNode)node=node.parentNode;return node}PathExpr.applyPredicates=function(predicates,c,nodes){return reduce(function(inNodes,pred){var ctx=c.extend({contextSize:inNodes.length});return filter(function(node,i){return PathExpr.predicateMatches(pred,ctx.extend({contextNode:node,contextPosition:i+1}))},inNodes)},nodes,predicates)};PathExpr.getRoot=function(xpc,nodes){var firstNode=nodes[0];if(firstNode.nodeType===9)return firstNode;if(xpc.virtualRoot)return xpc.virtualRoot;var ownerDoc=firstNode.ownerDocument;
if(ownerDoc)return ownerDoc;var n=firstNode;while(n.parentNode!=null)n=n.parentNode;return n};PathExpr.applyStep=function(step,xpc,node){var self=this;var newNodes=[];xpc.contextNode=node;switch(step.axis){case Step.ANCESTOR:if(xpc.contextNode===xpc.virtualRoot)break;var m;if(xpc.contextNode.nodeType==2)m=PathExpr.getOwnerElement(xpc.contextNode);else m=xpc.contextNode.parentNode;while(m!=null){if(step.nodeTest.matches(m,xpc))newNodes.push(m);if(m===xpc.virtualRoot)break;m=m.parentNode}break;case Step.ANCESTORORSELF:for(var m=
xpc.contextNode;m!=null;m=m.nodeType==2?PathExpr.getOwnerElement(m):m.parentNode){if(step.nodeTest.matches(m,xpc))newNodes.push(m);if(m===xpc.virtualRoot)break}break;case Step.ATTRIBUTE:var nnm=xpc.contextNode.attributes;if(nnm!=null)for(var k=0;k<nnm.length;k++){var m=nnm.item(k);if(step.nodeTest.matches(m,xpc))newNodes.push(m)}break;case Step.CHILD:for(var m=xpc.contextNode.firstChild;m!=null;m=m.nextSibling)if(step.nodeTest.matches(m,xpc))newNodes.push(m);break;case Step.DESCENDANT:var st=[xpc.contextNode.firstChild];
while(st.length>0)for(var m=st.pop();m!=null;){if(step.nodeTest.matches(m,xpc))newNodes.push(m);if(m.firstChild!=null){st.push(m.nextSibling);m=m.firstChild}else m=m.nextSibling}break;case Step.DESCENDANTORSELF:if(step.nodeTest.matches(xpc.contextNode,xpc))newNodes.push(xpc.contextNode);var st=[xpc.contextNode.firstChild];while(st.length>0)for(var m=st.pop();m!=null;){if(step.nodeTest.matches(m,xpc))newNodes.push(m);if(m.firstChild!=null){st.push(m.nextSibling);m=m.firstChild}else m=m.nextSibling}break;
case Step.FOLLOWING:if(xpc.contextNode===xpc.virtualRoot)break;var st=[];if(xpc.contextNode.firstChild!=null)st.unshift(xpc.contextNode.firstChild);else st.unshift(xpc.contextNode.nextSibling);for(var m=xpc.contextNode.parentNode;m!=null&&m.nodeType!=9&&m!==xpc.virtualRoot;m=m.parentNode)st.unshift(m.nextSibling);do for(var m=st.pop();m!=null;){if(step.nodeTest.matches(m,xpc))newNodes.push(m);if(m.firstChild!=null){st.push(m.nextSibling);m=m.firstChild}else m=m.nextSibling}while(st.length>0);break;
case Step.FOLLOWINGSIBLING:if(xpc.contextNode===xpc.virtualRoot)break;for(var m=xpc.contextNode.nextSibling;m!=null;m=m.nextSibling)if(step.nodeTest.matches(m,xpc))newNodes.push(m);break;case Step.NAMESPACE:var n={};if(xpc.contextNode.nodeType==1){n["xml"]=XPath.XML_NAMESPACE_URI;n["xmlns"]=XPath.XMLNS_NAMESPACE_URI;for(var m=xpc.contextNode;m!=null&&m.nodeType==1;m=m.parentNode)for(var k=0;k<m.attributes.length;k++){var attr=m.attributes.item(k);var nm=String(attr.name);if(nm=="xmlns"){if(n[""]==
undefined)n[""]=attr.value}else if(nm.length>6&&nm.substring(0,6)=="xmlns:"){var pre=nm.substring(6,nm.length);if(n[pre]==undefined)n[pre]=attr.value}}for(var pre in n){var nsn=new XPathNamespace(pre,n[pre],xpc.contextNode);if(step.nodeTest.matches(nsn,xpc))newNodes.push(nsn)}}break;case Step.PARENT:m=null;if(xpc.contextNode!==xpc.virtualRoot)if(xpc.contextNode.nodeType==2)m=PathExpr.getOwnerElement(xpc.contextNode);else m=xpc.contextNode.parentNode;if(m!=null&&step.nodeTest.matches(m,xpc))newNodes.push(m);
break;case Step.PRECEDING:var st;if(xpc.virtualRoot!=null)st=[xpc.virtualRoot];else st=[findRoot(xpc.contextNode)];outer:while(st.length>0)for(var m=st.pop();m!=null;){if(m==xpc.contextNode)break outer;if(step.nodeTest.matches(m,xpc))newNodes.unshift(m);if(m.firstChild!=null){st.push(m.nextSibling);m=m.firstChild}else m=m.nextSibling}break;case Step.PRECEDINGSIBLING:if(xpc.contextNode===xpc.virtualRoot)break;for(var m=xpc.contextNode.previousSibling;m!=null;m=m.previousSibling)if(step.nodeTest.matches(m,
xpc))newNodes.push(m);break;case Step.SELF:if(step.nodeTest.matches(xpc.contextNode,xpc))newNodes.push(xpc.contextNode);break;default:}return newNodes};PathExpr.applySteps=function(steps,xpc,nodes){return reduce(function(inNodes,step){return[].concat.apply([],map(function(node){return PathExpr.applyPredicates(step.predicates,xpc,PathExpr.applyStep(step,xpc,node))},inNodes))},nodes,steps)};PathExpr.prototype.applyFilter=function(c,xpc){if(!this.filter)return{nodes:[c.contextNode]};var ns=this.filter.evaluate(c);
if(!Utilities.instance_of(ns,XNodeSet)){if(this.filterPredicates!=null&&this.filterPredicates.length>0||this.locationPath!=null)throw new Error("Path expression filter must evaluate to a nodeset if predicates or location path are used");return{nonNodes:ns}}return{nodes:PathExpr.applyPredicates(this.filterPredicates||[],xpc,ns.toUnsortedArray())}};PathExpr.applyLocationPath=function(locationPath,xpc,nodes){if(!locationPath)return nodes;var startNodes=locationPath.absolute?[PathExpr.getRoot(xpc,nodes)]:
nodes;return PathExpr.applySteps(locationPath.steps,xpc,startNodes)};PathExpr.prototype.evaluate=function(c){var xpc=assign(new XPathContext,c);var filterResult=this.applyFilter(c,xpc);if("nonNodes"in filterResult)return filterResult.nonNodes;var ns=new XNodeSet;ns.addArray(PathExpr.applyLocationPath(this.locationPath,xpc,filterResult.nodes));return ns};PathExpr.predicateMatches=function(pred,c){var res=pred.evaluate(c);return Utilities.instance_of(res,XNumber)?c.contextPosition==res.numberValue():
res.booleanValue()};PathExpr.predicateString=compose(wrap("[","]"),toString);PathExpr.predicatesString=compose(join(""),map(PathExpr.predicateString));PathExpr.prototype.toString=function(){if(this.filter!=undefined){var filterStr=toString(this.filter);if(Utilities.instance_of(this.filter,XString))return wrap("'","'",filterStr);if(this.filterPredicates!=undefined&&this.filterPredicates.length)return wrap("(",")",filterStr)+PathExpr.predicatesString(this.filterPredicates);if(this.locationPath!=undefined)return filterStr+
(this.locationPath.absolute?"":"/")+toString(this.locationPath);return filterStr}return toString(this.locationPath)};PathExpr.getOwnerElement=function(n){if(n.ownerElement)return n.ownerElement;try{if(n.selectSingleNode)return n.selectSingleNode("..")}catch(e){}var doc=n.nodeType==9?n:n.ownerDocument;var elts=doc.getElementsByTagName("*");for(var i=0;i<elts.length;i++){var elt=elts.item(i);var nnm=elt.attributes;for(var j=0;j<nnm.length;j++){var an=nnm.item(j);if(an===n)return elt}}return null};LocationPath.prototype=
new Object;LocationPath.prototype.constructor=LocationPath;LocationPath.superclass=Object.prototype;function LocationPath(abs,steps){if(arguments.length>0)this.init(abs,steps)}LocationPath.prototype.init=function(abs,steps){this.absolute=abs;this.steps=steps};LocationPath.prototype.toString=function(){return(this.absolute?"/":"")+map(toString,this.steps).join("/")};Step.prototype=new Object;Step.prototype.constructor=Step;Step.superclass=Object.prototype;function Step(axis,nodetest,preds){if(arguments.length>
0)this.init(axis,nodetest,preds)}Step.prototype.init=function(axis,nodetest,preds){this.axis=axis;this.nodeTest=nodetest;this.predicates=preds};Step.prototype.toString=function(){return Step.STEPNAMES[this.axis]+"::"+this.nodeTest.toString()+PathExpr.predicatesString(this.predicates)};Step.ANCESTOR=0;Step.ANCESTORORSELF=1;Step.ATTRIBUTE=2;Step.CHILD=3;Step.DESCENDANT=4;Step.DESCENDANTORSELF=5;Step.FOLLOWING=6;Step.FOLLOWINGSIBLING=7;Step.NAMESPACE=8;Step.PARENT=9;Step.PRECEDING=10;Step.PRECEDINGSIBLING=
11;Step.SELF=12;Step.STEPNAMES=reduce(function(acc,x){return acc[x[0]]=x[1],acc},{},[[Step.ANCESTOR,"ancestor"],[Step.ANCESTORORSELF,"ancestor-or-self"],[Step.ATTRIBUTE,"attribute"],[Step.CHILD,"child"],[Step.DESCENDANT,"descendant"],[Step.DESCENDANTORSELF,"descendant-or-self"],[Step.FOLLOWING,"following"],[Step.FOLLOWINGSIBLING,"following-sibling"],[Step.NAMESPACE,"namespace"],[Step.PARENT,"parent"],[Step.PRECEDING,"preceding"],[Step.PRECEDINGSIBLING,"preceding-sibling"],[Step.SELF,"self"]]);NodeTest.prototype=
new Object;NodeTest.prototype.constructor=NodeTest;NodeTest.superclass=Object.prototype;function NodeTest(type,value){if(arguments.length>0)this.init(type,value)}NodeTest.prototype.init=function(type,value){this.type=type;this.value=value};NodeTest.prototype.toString=function(){return"<unknown nodetest type>"};NodeTest.prototype.matches=function(n,xpc){console.warn("unknown node test type")};NodeTest.NAMETESTANY=0;NodeTest.NAMETESTPREFIXANY=1;NodeTest.NAMETESTQNAME=2;NodeTest.COMMENT=3;NodeTest.TEXT=
4;NodeTest.PI=5;NodeTest.NODE=6;NodeTest.isNodeType=function(types){return compose(includes(types),prop("nodeType"))};NodeTest.makeNodeTestType=function(type,members,ctor){var newType=ctor||function(){};newType.prototype=new NodeTest(members.type);newType.prototype.constructor=type;for(var key in members)newType.prototype[key]=members[key];return newType};NodeTest.makeNodeTypeTest=function(type,nodeTypes,stringVal){return new (NodeTest.makeNodeTestType(type,{matches:NodeTest.isNodeType(nodeTypes),
toString:always(stringVal)}))};NodeTest.hasPrefix=function(node){return node.prefix||(node.nodeName||node.tagName).indexOf(":")!==-1};NodeTest.isElementOrAttribute=NodeTest.isNodeType([1,2]);NodeTest.nameSpaceMatches=function(prefix,xpc,n){var nNamespace=n.namespaceURI||"";if(!prefix)return!nNamespace||xpc.allowAnyNamespaceForNoPrefix&&!NodeTest.hasPrefix(n);var ns=xpc.namespaceResolver.getNamespace(prefix,xpc.expressionContextNode);if(ns==null)throw new Error("Cannot resolve QName "+prefix);return ns===
nNamespace};NodeTest.localNameMatches=function(localName,xpc,n){var nLocalName=n.localName||n.nodeName;return xpc.caseInsensitive?localName.toLowerCase()===nLocalName.toLowerCase():localName===nLocalName};NodeTest.NameTestPrefixAny=NodeTest.makeNodeTestType(NodeTest.NAMETESTPREFIXANY,{matches:function(n,xpc){return NodeTest.isElementOrAttribute(n)&&NodeTest.nameSpaceMatches(this.prefix,xpc,n)},toString:function(){return this.prefix+":*"}},function(prefix){this.prefix=prefix});NodeTest.NameTestQName=
NodeTest.makeNodeTestType(NodeTest.NAMETESTQNAME,{matches:function(n,xpc){return NodeTest.isNodeType([1,2,XPathNamespace.XPATH_NAMESPACE_NODE])(n)&&NodeTest.nameSpaceMatches(this.prefix,xpc,n)&&NodeTest.localNameMatches(this.localName,xpc,n)},toString:function(){return this.name}},function(name){var nameParts=name.split(":");this.name=name;this.prefix=nameParts.length>1?nameParts[0]:null;this.localName=nameParts[nameParts.length>1?1:0]});NodeTest.PITest=NodeTest.makeNodeTestType(NodeTest.PI,{matches:function(n,
xpc){return NodeTest.isNodeType([7])(n)&&(n.target||n.nodeName)===this.name},toString:function(){return wrap('processing-instruction("','")',this.name)}},function(name){this.name=name});NodeTest.nameTestAny=NodeTest.makeNodeTypeTest(NodeTest.NAMETESTANY,[1,2,XPathNamespace.XPATH_NAMESPACE_NODE],"*");NodeTest.textTest=NodeTest.makeNodeTypeTest(NodeTest.TEXT,[3,4],"text()");NodeTest.commentTest=NodeTest.makeNodeTypeTest(NodeTest.COMMENT,[8],"comment()");NodeTest.nodeTest=NodeTest.makeNodeTypeTest(NodeTest.NODE,
[1,2,3,4,7,8,9],"node()");NodeTest.anyPiTest=NodeTest.makeNodeTypeTest(NodeTest.PI,[7],"processing-instruction()");VariableReference.prototype=new Expression;VariableReference.prototype.constructor=VariableReference;VariableReference.superclass=Expression.prototype;function VariableReference(v){if(arguments.length>0)this.init(v)}VariableReference.prototype.init=function(v){this.variable=v};VariableReference.prototype.toString=function(){return"$"+this.variable};VariableReference.prototype.evaluate=
function(c){var parts=Utilities.resolveQName(this.variable,c.namespaceResolver,c.contextNode,false);if(parts[0]==null)throw new Error("Cannot resolve QName "+fn);var result=c.variableResolver.getVariable(parts[1],parts[0]);if(!result)throw XPathException.fromMessage("Undeclared variable: "+this.toString());return result};FunctionCall.prototype=new Expression;FunctionCall.prototype.constructor=FunctionCall;FunctionCall.superclass=Expression.prototype;function FunctionCall(fn,args){if(arguments.length>
0)this.init(fn,args)}FunctionCall.prototype.init=function(fn,args){this.functionName=fn;this.arguments=args};FunctionCall.prototype.toString=function(){var s=this.functionName+"(";for(var i=0;i<this.arguments.length;i++){if(i>0)s+=", ";s+=this.arguments[i].toString()}return s+")"};FunctionCall.prototype.evaluate=function(c){var f=FunctionResolver.getFunctionFromContext(this.functionName,c);if(!f)throw new Error("Unknown function "+this.functionName);var a=[c].concat(this.arguments);return f.apply(c.functionResolver.thisArg,
a)};var Operators=new Object;Operators.equals=function(l,r){return l.equals(r)};Operators.notequal=function(l,r){return l.notequal(r)};Operators.lessthan=function(l,r){return l.lessthan(r)};Operators.greaterthan=function(l,r){return l.greaterthan(r)};Operators.lessthanorequal=function(l,r){return l.lessthanorequal(r)};Operators.greaterthanorequal=function(l,r){return l.greaterthanorequal(r)};XString.prototype=new Expression;XString.prototype.constructor=XString;XString.superclass=Expression.prototype;
function XString(s){if(arguments.length>0)this.init(s)}XString.prototype.init=function(s){this.str=String(s)};XString.prototype.toString=function(){return this.str};XString.prototype.evaluate=function(c){return this};XString.prototype.string=function(){return this};XString.prototype.number=function(){return new XNumber(this.str)};XString.prototype.bool=function(){return new XBoolean(this.str)};XString.prototype.nodeset=function(){throw new Error("Cannot convert string to nodeset");};XString.prototype.stringValue=
function(){return this.str};XString.prototype.numberValue=function(){return this.number().numberValue()};XString.prototype.booleanValue=function(){return this.bool().booleanValue()};XString.prototype.equals=function(r){if(Utilities.instance_of(r,XBoolean))return this.bool().equals(r);if(Utilities.instance_of(r,XNumber))return this.number().equals(r);if(Utilities.instance_of(r,XNodeSet))return r.compareWithString(this,Operators.equals);return new XBoolean(this.str==r.str)};XString.prototype.notequal=
function(r){if(Utilities.instance_of(r,XBoolean))return this.bool().notequal(r);if(Utilities.instance_of(r,XNumber))return this.number().notequal(r);if(Utilities.instance_of(r,XNodeSet))return r.compareWithString(this,Operators.notequal);return new XBoolean(this.str!=r.str)};XString.prototype.lessthan=function(r){return this.number().lessthan(r)};XString.prototype.greaterthan=function(r){return this.number().greaterthan(r)};XString.prototype.lessthanorequal=function(r){return this.number().lessthanorequal(r)};
XString.prototype.greaterthanorequal=function(r){return this.number().greaterthanorequal(r)};XNumber.prototype=new Expression;XNumber.prototype.constructor=XNumber;XNumber.superclass=Expression.prototype;function XNumber(n){if(arguments.length>0)this.init(n)}XNumber.prototype.init=function(n){this.num=typeof n==="string"?this.parse(n):Number(n)};XNumber.prototype.numberFormat=/^\s*-?[0-9]*\.?[0-9]+\s*$/;XNumber.prototype.parse=function(s){return this.numberFormat.test(s)?parseFloat(s):Number.NaN};
function padSmallNumber(numberStr){var parts=numberStr.split("e-");var base=parts[0].replace(".","");var exponent=Number(parts[1]);for(var i=0;i<exponent-1;i+=1)base="0"+base;return"0."+base}function padLargeNumber(numberStr){var parts=numberStr.split("e");var base=parts[0].replace(".","");var exponent=Number(parts[1]);var zerosToAppend=exponent+1-base.length;for(var i=0;i<zerosToAppend;i+=1)base+="0";return base}XNumber.prototype.toString=function(){var strValue=this.num.toString();if(strValue.indexOf("e-")!==
-1)return padSmallNumber(strValue);if(strValue.indexOf("e")!==-1)return padLargeNumber(strValue);return strValue};XNumber.prototype.evaluate=function(c){return this};XNumber.prototype.string=function(){return new XString(this.toString())};XNumber.prototype.number=function(){return this};XNumber.prototype.bool=function(){return new XBoolean(this.num)};XNumber.prototype.nodeset=function(){throw new Error("Cannot convert number to nodeset");};XNumber.prototype.stringValue=function(){return this.string().stringValue()};
XNumber.prototype.numberValue=function(){return this.num};XNumber.prototype.booleanValue=function(){return this.bool().booleanValue()};XNumber.prototype.negate=function(){return new XNumber(-this.num)};XNumber.prototype.equals=function(r){if(Utilities.instance_of(r,XBoolean))return this.bool().equals(r);if(Utilities.instance_of(r,XString))return this.equals(r.number());if(Utilities.instance_of(r,XNodeSet))return r.compareWithNumber(this,Operators.equals);return new XBoolean(this.num==r.num)};XNumber.prototype.notequal=
function(r){if(Utilities.instance_of(r,XBoolean))return this.bool().notequal(r);if(Utilities.instance_of(r,XString))return this.notequal(r.number());if(Utilities.instance_of(r,XNodeSet))return r.compareWithNumber(this,Operators.notequal);return new XBoolean(this.num!=r.num)};XNumber.prototype.lessthan=function(r){if(Utilities.instance_of(r,XNodeSet))return r.compareWithNumber(this,Operators.greaterthan);if(Utilities.instance_of(r,XBoolean)||Utilities.instance_of(r,XString))return this.lessthan(r.number());
return new XBoolean(this.num<r.num)};XNumber.prototype.greaterthan=function(r){if(Utilities.instance_of(r,XNodeSet))return r.compareWithNumber(this,Operators.lessthan);if(Utilities.instance_of(r,XBoolean)||Utilities.instance_of(r,XString))return this.greaterthan(r.number());return new XBoolean(this.num>r.num)};XNumber.prototype.lessthanorequal=function(r){if(Utilities.instance_of(r,XNodeSet))return r.compareWithNumber(this,Operators.greaterthanorequal);if(Utilities.instance_of(r,XBoolean)||Utilities.instance_of(r,
XString))return this.lessthanorequal(r.number());return new XBoolean(this.num<=r.num)};XNumber.prototype.greaterthanorequal=function(r){if(Utilities.instance_of(r,XNodeSet))return r.compareWithNumber(this,Operators.lessthanorequal);if(Utilities.instance_of(r,XBoolean)||Utilities.instance_of(r,XString))return this.greaterthanorequal(r.number());return new XBoolean(this.num>=r.num)};XNumber.prototype.plus=function(r){return new XNumber(this.num+r.num)};XNumber.prototype.minus=function(r){return new XNumber(this.num-
r.num)};XNumber.prototype.multiply=function(r){return new XNumber(this.num*r.num)};XNumber.prototype.div=function(r){return new XNumber(this.num/r.num)};XNumber.prototype.mod=function(r){return new XNumber(this.num%r.num)};XBoolean.prototype=new Expression;XBoolean.prototype.constructor=XBoolean;XBoolean.superclass=Expression.prototype;function XBoolean(b){if(arguments.length>0)this.init(b)}XBoolean.prototype.init=function(b){this.b=Boolean(b)};XBoolean.prototype.toString=function(){return this.b.toString()};
XBoolean.prototype.evaluate=function(c){return this};XBoolean.prototype.string=function(){return new XString(this.b)};XBoolean.prototype.number=function(){return new XNumber(this.b)};XBoolean.prototype.bool=function(){return this};XBoolean.prototype.nodeset=function(){throw new Error("Cannot convert boolean to nodeset");};XBoolean.prototype.stringValue=function(){return this.string().stringValue()};XBoolean.prototype.numberValue=function(){return this.number().numberValue()};XBoolean.prototype.booleanValue=
function(){return this.b};XBoolean.prototype.not=function(){return new XBoolean(!this.b)};XBoolean.prototype.equals=function(r){if(Utilities.instance_of(r,XString)||Utilities.instance_of(r,XNumber))return this.equals(r.bool());if(Utilities.instance_of(r,XNodeSet))return r.compareWithBoolean(this,Operators.equals);return new XBoolean(this.b==r.b)};XBoolean.prototype.notequal=function(r){if(Utilities.instance_of(r,XString)||Utilities.instance_of(r,XNumber))return this.notequal(r.bool());if(Utilities.instance_of(r,
XNodeSet))return r.compareWithBoolean(this,Operators.notequal);return new XBoolean(this.b!=r.b)};XBoolean.prototype.lessthan=function(r){return this.number().lessthan(r)};XBoolean.prototype.greaterthan=function(r){return this.number().greaterthan(r)};XBoolean.prototype.lessthanorequal=function(r){return this.number().lessthanorequal(r)};XBoolean.prototype.greaterthanorequal=function(r){return this.number().greaterthanorequal(r)};XBoolean.true_=new XBoolean(true);XBoolean.false_=new XBoolean(false);
AVLTree.prototype=new Object;AVLTree.prototype.constructor=AVLTree;AVLTree.superclass=Object.prototype;function AVLTree(n){this.init(n)}AVLTree.prototype.init=function(n){this.left=null;this.right=null;this.node=n;this.depth=1};AVLTree.prototype.balance=function(){var ldepth=this.left==null?0:this.left.depth;var rdepth=this.right==null?0:this.right.depth;if(ldepth>rdepth+1){var lldepth=this.left.left==null?0:this.left.left.depth;var lrdepth=this.left.right==null?0:this.left.right.depth;if(lldepth<
lrdepth)this.left.rotateRR();this.rotateLL()}else if(ldepth+1<rdepth){var rrdepth=this.right.right==null?0:this.right.right.depth;var rldepth=this.right.left==null?0:this.right.left.depth;if(rldepth>rrdepth)this.right.rotateLL();this.rotateRR()}};AVLTree.prototype.rotateLL=function(){var nodeBefore=this.node;var rightBefore=this.right;this.node=this.left.node;this.right=this.left;this.left=this.left.left;this.right.left=this.right.right;this.right.right=rightBefore;this.right.node=nodeBefore;this.right.updateInNewLocation();
this.updateInNewLocation()};AVLTree.prototype.rotateRR=function(){var nodeBefore=this.node;var leftBefore=this.left;this.node=this.right.node;this.left=this.right;this.right=this.right.right;this.left.right=this.left.left;this.left.left=leftBefore;this.left.node=nodeBefore;this.left.updateInNewLocation();this.updateInNewLocation()};AVLTree.prototype.updateInNewLocation=function(){this.getDepthFromChildren()};AVLTree.prototype.getDepthFromChildren=function(){this.depth=this.node==null?0:1;if(this.left!=
null)this.depth=this.left.depth+1;if(this.right!=null&&this.depth<=this.right.depth)this.depth=this.right.depth+1};function nodeOrder(n1,n2){if(n1===n2)return 0;if(n1.compareDocumentPosition){var cpos=n1.compareDocumentPosition(n2);if(cpos&1)return 1;if(cpos&10)return 1;if(cpos&20)return-1;return 0}var d1=0,d2=0;for(var m1=n1;m1!=null;m1=m1.parentNode||m1.ownerElement)d1++;for(var m2=n2;m2!=null;m2=m2.parentNode||m2.ownerElement)d2++;if(d1>d2){while(d1>d2){n1=n1.parentNode||n1.ownerElement;d1--}if(n1===
n2)return 1}else if(d2>d1){while(d2>d1){n2=n2.parentNode||n2.ownerElement;d2--}if(n1===n2)return-1}var n1Par=n1.parentNode||n1.ownerElement,n2Par=n2.parentNode||n2.ownerElement;while(n1Par!==n2Par){n1=n1Par;n2=n2Par;n1Par=n1.parentNode||n1.ownerElement;n2Par=n2.parentNode||n2.ownerElement}var n1isAttr=Utilities.isAttribute(n1);var n2isAttr=Utilities.isAttribute(n2);if(n1isAttr&&!n2isAttr)return-1;if(!n1isAttr&&n2isAttr)return 1;if(n1Par){var cn=n1isAttr?n1Par.attributes:n1Par.childNodes,len=cn.length;
for(var i=0;i<len;i+=1){var n=cn[i];if(n===n1)return-1;if(n===n2)return 1}}throw new Error("Unexpected: could not determine node order");}AVLTree.prototype.add=function(n){if(n===this.node)return false;var o=nodeOrder(n,this.node);var ret=false;if(o==-1)if(this.left==null){this.left=new AVLTree(n);ret=true}else{ret=this.left.add(n);if(ret)this.balance()}else if(o==1)if(this.right==null){this.right=new AVLTree(n);ret=true}else{ret=this.right.add(n);if(ret)this.balance()}if(ret)this.getDepthFromChildren();
return ret};XNodeSet.prototype=new Expression;XNodeSet.prototype.constructor=XNodeSet;XNodeSet.superclass=Expression.prototype;function XNodeSet(){this.init()}XNodeSet.prototype.init=function(){this.tree=null;this.nodes=[];this.size=0};XNodeSet.prototype.toString=function(){var p=this.first();if(p==null)return"";return this.stringForNode(p)};XNodeSet.prototype.evaluate=function(c){return this};XNodeSet.prototype.string=function(){return new XString(this.toString())};XNodeSet.prototype.stringValue=
function(){return this.toString()};XNodeSet.prototype.number=function(){return new XNumber(this.string())};XNodeSet.prototype.numberValue=function(){return Number(this.string())};XNodeSet.prototype.bool=function(){return new XBoolean(this.booleanValue())};XNodeSet.prototype.booleanValue=function(){return!!this.size};XNodeSet.prototype.nodeset=function(){return this};XNodeSet.prototype.stringForNode=function(n){if(n.nodeType==9||n.nodeType==1||n.nodeType===11)return this.stringForContainerNode(n);
if(n.nodeType===2)return n.value||n.nodeValue;if(n.isNamespaceNode)return n.namespace;return n.nodeValue};XNodeSet.prototype.stringForContainerNode=function(n){var s="";for(var n2=n.firstChild;n2!=null;n2=n2.nextSibling){var nt=n2.nodeType;if(nt===1||nt===3||nt===4||nt===9||nt===11)s+=this.stringForNode(n2)}return s};XNodeSet.prototype.buildTree=function(){if(!this.tree&&this.nodes.length){this.tree=new AVLTree(this.nodes[0]);for(var i=1;i<this.nodes.length;i+=1)this.tree.add(this.nodes[i])}return this.tree};
XNodeSet.prototype.first=function(){var p=this.buildTree();if(p==null)return null;while(p.left!=null)p=p.left;return p.node};XNodeSet.prototype.add=function(n){for(var i=0;i<this.nodes.length;i+=1)if(n===this.nodes[i])return;this.tree=null;this.nodes.push(n);this.size+=1};XNodeSet.prototype.addArray=function(ns){var self=this;forEach(function(x){self.add(x)},ns)};XNodeSet.prototype.toArray=function(){var a=[];this.toArrayRec(this.buildTree(),a);return a};XNodeSet.prototype.toArrayRec=function(t,a){if(t!=
null){this.toArrayRec(t.left,a);a.push(t.node);this.toArrayRec(t.right,a)}};XNodeSet.prototype.toUnsortedArray=function(){return this.nodes.slice()};XNodeSet.prototype.compareWithString=function(r,o){var a=this.toUnsortedArray();for(var i=0;i<a.length;i++){var n=a[i];var l=new XString(this.stringForNode(n));var res=o(l,r);if(res.booleanValue())return res}return new XBoolean(false)};XNodeSet.prototype.compareWithNumber=function(r,o){var a=this.toUnsortedArray();for(var i=0;i<a.length;i++){var n=a[i];
var l=new XNumber(this.stringForNode(n));var res=o(l,r);if(res.booleanValue())return res}return new XBoolean(false)};XNodeSet.prototype.compareWithBoolean=function(r,o){return o(this.bool(),r)};XNodeSet.prototype.compareWithNodeSet=function(r,o){var arr=this.toUnsortedArray();var oInvert=function(lop,rop){return o(rop,lop)};for(var i=0;i<arr.length;i++){var l=new XString(this.stringForNode(arr[i]));var res=r.compareWithString(l,oInvert);if(res.booleanValue())return res}return new XBoolean(false)};
XNodeSet.compareWith=curry(function(o,r){if(Utilities.instance_of(r,XString))return this.compareWithString(r,o);if(Utilities.instance_of(r,XNumber))return this.compareWithNumber(r,o);if(Utilities.instance_of(r,XBoolean))return this.compareWithBoolean(r,o);return this.compareWithNodeSet(r,o)});XNodeSet.prototype.equals=XNodeSet.compareWith(Operators.equals);XNodeSet.prototype.notequal=XNodeSet.compareWith(Operators.notequal);XNodeSet.prototype.lessthan=XNodeSet.compareWith(Operators.lessthan);XNodeSet.prototype.greaterthan=
XNodeSet.compareWith(Operators.greaterthan);XNodeSet.prototype.lessthanorequal=XNodeSet.compareWith(Operators.lessthanorequal);XNodeSet.prototype.greaterthanorequal=XNodeSet.compareWith(Operators.greaterthanorequal);XNodeSet.prototype.union=function(r){var ns=new XNodeSet;ns.addArray(this.toUnsortedArray());ns.addArray(r.toUnsortedArray());return ns};XPathNamespace.prototype=new Object;XPathNamespace.prototype.constructor=XPathNamespace;XPathNamespace.superclass=Object.prototype;function XPathNamespace(pre,
ns,p){this.isXPathNamespace=true;this.ownerDocument=p.ownerDocument;this.nodeName="#namespace";this.prefix=pre;this.localName=pre;this.namespaceURI=ns;this.nodeValue=ns;this.ownerElement=p;this.nodeType=XPathNamespace.XPATH_NAMESPACE_NODE}XPathNamespace.prototype.toString=function(){return'{ "'+this.prefix+'", "'+this.namespaceURI+'" }'};XPathContext.prototype=new Object;XPathContext.prototype.constructor=XPathContext;XPathContext.superclass=Object.prototype;function XPathContext(vr,nr,fr){this.variableResolver=
vr!=null?vr:new VariableResolver;this.namespaceResolver=nr!=null?nr:new NamespaceResolver;this.functionResolver=fr!=null?fr:new FunctionResolver}XPathContext.prototype.extend=function(newProps){return assign(new XPathContext,this,newProps)};VariableResolver.prototype=new Object;VariableResolver.prototype.constructor=VariableResolver;VariableResolver.superclass=Object.prototype;function VariableResolver(){}VariableResolver.prototype.getVariable=function(ln,ns){return null};FunctionResolver.prototype=
new Object;FunctionResolver.prototype.constructor=FunctionResolver;FunctionResolver.superclass=Object.prototype;function FunctionResolver(thisArg){this.thisArg=thisArg!=null?thisArg:Functions;this.functions=new Object;this.addStandardFunctions()}FunctionResolver.prototype.addStandardFunctions=function(){this.functions["{}last"]=Functions.last;this.functions["{}position"]=Functions.position;this.functions["{}count"]=Functions.count;this.functions["{}id"]=Functions.id;this.functions["{}local-name"]=
Functions.localName;this.functions["{}namespace-uri"]=Functions.namespaceURI;this.functions["{}name"]=Functions.name;this.functions["{}string"]=Functions.string;this.functions["{}concat"]=Functions.concat;this.functions["{}starts-with"]=Functions.startsWith;this.functions["{}contains"]=Functions.contains;this.functions["{}substring-before"]=Functions.substringBefore;this.functions["{}substring-after"]=Functions.substringAfter;this.functions["{}substring"]=Functions.substring;this.functions["{}string-length"]=
Functions.stringLength;this.functions["{}normalize-space"]=Functions.normalizeSpace;this.functions["{}translate"]=Functions.translate;this.functions["{}boolean"]=Functions.boolean_;this.functions["{}not"]=Functions.not;this.functions["{}true"]=Functions.true_;this.functions["{}false"]=Functions.false_;this.functions["{}lang"]=Functions.lang;this.functions["{}number"]=Functions.number;this.functions["{}sum"]=Functions.sum;this.functions["{}floor"]=Functions.floor;this.functions["{}ceiling"]=Functions.ceiling;
this.functions["{}round"]=Functions.round};FunctionResolver.prototype.addFunction=function(ns,ln,f){this.functions["{"+ns+"}"+ln]=f};FunctionResolver.getFunctionFromContext=function(qName,context){var parts=Utilities.resolveQName(qName,context.namespaceResolver,context.contextNode,false);if(parts[0]===null)throw new Error("Cannot resolve QName "+qName);return context.functionResolver.getFunction(parts[1],parts[0])};FunctionResolver.prototype.getFunction=function(localName,namespace){return this.functions["{"+
namespace+"}"+localName]};NamespaceResolver.prototype=new Object;NamespaceResolver.prototype.constructor=NamespaceResolver;NamespaceResolver.superclass=Object.prototype;function NamespaceResolver(){}NamespaceResolver.prototype.getNamespace=function(prefix,n){if(prefix=="xml")return XPath.XML_NAMESPACE_URI;else if(prefix=="xmlns")return XPath.XMLNS_NAMESPACE_URI;if(n.nodeType==9)n=n.documentElement;else if(n.nodeType==2)n=PathExpr.getOwnerElement(n);else if(n.nodeType!=1)n=n.parentNode;while(n!=null&&
n.nodeType==1){var nnm=n.attributes;for(var i=0;i<nnm.length;i++){var a=nnm.item(i);var aname=a.name||a.nodeName;if(aname==="xmlns"&&prefix===""||aname==="xmlns:"+prefix)return String(a.value||a.nodeValue)}n=n.parentNode}return null};var Functions=new Object;Functions.last=function(c){if(arguments.length!=1)throw new Error("Function last expects ()");return new XNumber(c.contextSize)};Functions.position=function(c){if(arguments.length!=1)throw new Error("Function position expects ()");return new XNumber(c.contextPosition)};
Functions.count=function(){var c=arguments[0];var ns;if(arguments.length!=2||!Utilities.instance_of(ns=arguments[1].evaluate(c),XNodeSet))throw new Error("Function count expects (node-set)");return new XNumber(ns.size)};Functions.id=function(){var c=arguments[0];var id;if(arguments.length!=2)throw new Error("Function id expects (object)");id=arguments[1].evaluate(c);if(Utilities.instance_of(id,XNodeSet))id=id.toArray().join(" ");else id=id.stringValue();var ids=id.split(/[\x0d\x0a\x09\x20]+/);var count=
0;var ns=new XNodeSet;var doc=c.contextNode.nodeType==9?c.contextNode:c.contextNode.ownerDocument;for(var i=0;i<ids.length;i++){var n;if(doc.getElementById)n=doc.getElementById(ids[i]);else n=Utilities.getElementById(doc,ids[i]);if(n!=null){ns.add(n);count++}}return ns};Functions.localName=function(c,eNode){var n;if(arguments.length==1)n=c.contextNode;else if(arguments.length==2)n=eNode.evaluate(c).first();else throw new Error("Function local-name expects (node-set?)");if(n==null)return new XString("");
return new XString(n.localName||n.baseName||n.target||n.nodeName||"")};Functions.namespaceURI=function(){var c=arguments[0];var n;if(arguments.length==1)n=c.contextNode;else if(arguments.length==2)n=arguments[1].evaluate(c).first();else throw new Error("Function namespace-uri expects (node-set?)");if(n==null)return new XString("");return new XString(n.namespaceURI)};Functions.name=function(){var c=arguments[0];var n;if(arguments.length==1)n=c.contextNode;else if(arguments.length==2)n=arguments[1].evaluate(c).first();
else throw new Error("Function name expects (node-set?)");if(n==null)return new XString("");if(n.nodeType==1)return new XString(n.nodeName);else if(n.nodeType==2)return new XString(n.name||n.nodeName);else if(n.nodeType===7)return new XString(n.target||n.nodeName);else if(n.localName==null)return new XString("");else return new XString(n.localName)};Functions.string=function(){var c=arguments[0];if(arguments.length==1)return new XString(XNodeSet.prototype.stringForNode(c.contextNode));else if(arguments.length==
2)return arguments[1].evaluate(c).string();throw new Error("Function string expects (object?)");};Functions.concat=function(c){if(arguments.length<3)throw new Error("Function concat expects (string, string[, string]*)");var s="";for(var i=1;i<arguments.length;i++)s+=arguments[i].evaluate(c).stringValue();return new XString(s)};Functions.startsWith=function(){var c=arguments[0];if(arguments.length!=3)throw new Error("Function startsWith expects (string, string)");var s1=arguments[1].evaluate(c).stringValue();
var s2=arguments[2].evaluate(c).stringValue();return new XBoolean(s1.substring(0,s2.length)==s2)};Functions.contains=function(){var c=arguments[0];if(arguments.length!=3)throw new Error("Function contains expects (string, string)");var s1=arguments[1].evaluate(c).stringValue();var s2=arguments[2].evaluate(c).stringValue();return new XBoolean(s1.indexOf(s2)!==-1)};Functions.substringBefore=function(){var c=arguments[0];if(arguments.length!=3)throw new Error("Function substring-before expects (string, string)");
var s1=arguments[1].evaluate(c).stringValue();var s2=arguments[2].evaluate(c).stringValue();return new XString(s1.substring(0,s1.indexOf(s2)))};Functions.substringAfter=function(){var c=arguments[0];if(arguments.length!=3)throw new Error("Function substring-after expects (string, string)");var s1=arguments[1].evaluate(c).stringValue();var s2=arguments[2].evaluate(c).stringValue();if(s2.length==0)return new XString(s1);var i=s1.indexOf(s2);if(i==-1)return new XString("");return new XString(s1.substring(i+
s2.length))};Functions.substring=function(){var c=arguments[0];if(!(arguments.length==3||arguments.length==4))throw new Error("Function substring expects (string, number, number?)");var s=arguments[1].evaluate(c).stringValue();var n1=Math.round(arguments[2].evaluate(c).numberValue())-1;var n2=arguments.length==4?n1+Math.round(arguments[3].evaluate(c).numberValue()):undefined;return new XString(s.substring(n1,n2))};Functions.stringLength=function(){var c=arguments[0];var s;if(arguments.length==1)s=
XNodeSet.prototype.stringForNode(c.contextNode);else if(arguments.length==2)s=arguments[1].evaluate(c).stringValue();else throw new Error("Function string-length expects (string?)");return new XNumber(s.length)};Functions.normalizeSpace=function(){var c=arguments[0];var s;if(arguments.length==1)s=XNodeSet.prototype.stringForNode(c.contextNode);else if(arguments.length==2)s=arguments[1].evaluate(c).stringValue();else throw new Error("Function normalize-space expects (string?)");var i=0;var j=s.length-
1;while(Utilities.isSpace(s.charCodeAt(j)))j--;var t="";while(i<=j&&Utilities.isSpace(s.charCodeAt(i)))i++;while(i<=j)if(Utilities.isSpace(s.charCodeAt(i))){t+=" ";while(i<=j&&Utilities.isSpace(s.charCodeAt(i)))i++}else{t+=s.charAt(i);i++}return new XString(t)};Functions.translate=function(c,eValue,eFrom,eTo){if(arguments.length!=4)throw new Error("Function translate expects (string, string, string)");var value=eValue.evaluate(c).stringValue();var from=eFrom.evaluate(c).stringValue();var to=eTo.evaluate(c).stringValue();
var cMap=reduce(function(acc,ch,i){if(!(ch in acc))acc[ch]=i>to.length?"":to[i];return acc},{},from);var t=join("",map(function(ch){return ch in cMap?cMap[ch]:ch},value));return new XString(t)};Functions.boolean_=function(){var c=arguments[0];if(arguments.length!=2)throw new Error("Function boolean expects (object)");return arguments[1].evaluate(c).bool()};Functions.not=function(c,eValue){if(arguments.length!=2)throw new Error("Function not expects (object)");return eValue.evaluate(c).bool().not()};
Functions.true_=function(){if(arguments.length!=1)throw new Error("Function true expects ()");return XBoolean.true_};Functions.false_=function(){if(arguments.length!=1)throw new Error("Function false expects ()");return XBoolean.false_};Functions.lang=function(){var c=arguments[0];if(arguments.length!=2)throw new Error("Function lang expects (string)");var lang;for(var n=c.contextNode;n!=null&&n.nodeType!=9;n=n.parentNode){var a=n.getAttributeNS(XPath.XML_NAMESPACE_URI,"lang");if(a!=null){lang=String(a);
break}}if(lang==null)return XBoolean.false_;var s=arguments[1].evaluate(c).stringValue();return new XBoolean(lang.substring(0,s.length)==s&&(lang.length==s.length||lang.charAt(s.length)=="-"))};Functions.number=function(){var c=arguments[0];if(!(arguments.length==1||arguments.length==2))throw new Error("Function number expects (object?)");if(arguments.length==1)return new XNumber(XNodeSet.prototype.stringForNode(c.contextNode));return arguments[1].evaluate(c).number()};Functions.sum=function(){var c=
arguments[0];var ns;if(arguments.length!=2||!Utilities.instance_of(ns=arguments[1].evaluate(c),XNodeSet))throw new Error("Function sum expects (node-set)");ns=ns.toUnsortedArray();var n=0;for(var i=0;i<ns.length;i++)n+=(new XNumber(XNodeSet.prototype.stringForNode(ns[i]))).numberValue();return new XNumber(n)};Functions.floor=function(){var c=arguments[0];if(arguments.length!=2)throw new Error("Function floor expects (number)");return new XNumber(Math.floor(arguments[1].evaluate(c).numberValue()))};
Functions.ceiling=function(){var c=arguments[0];if(arguments.length!=2)throw new Error("Function ceiling expects (number)");return new XNumber(Math.ceil(arguments[1].evaluate(c).numberValue()))};Functions.round=function(){var c=arguments[0];if(arguments.length!=2)throw new Error("Function round expects (number)");return new XNumber(Math.round(arguments[1].evaluate(c).numberValue()))};var Utilities=new Object;Utilities.isAttribute=function(val){return val&&(val.nodeType===2||val.ownerElement)};Utilities.splitQName=
function(qn){var i=qn.indexOf(":");if(i==-1)return[null,qn];return[qn.substring(0,i),qn.substring(i+1)]};Utilities.resolveQName=function(qn,nr,n,useDefault){var parts=Utilities.splitQName(qn);if(parts[0]!=null)parts[0]=nr.getNamespace(parts[0],n);else if(useDefault){parts[0]=nr.getNamespace("",n);if(parts[0]==null)parts[0]=""}else parts[0]="";return parts};Utilities.isSpace=function(c){return c==9||c==13||c==10||c==32};Utilities.isLetter=function(c){return c>=65&&c<=90||c>=97&&c<=122||c>=192&&c<=
214||c>=216&&c<=246||c>=248&&c<=255||c>=256&&c<=305||c>=308&&c<=318||c>=321&&c<=328||c>=330&&c<=382||c>=384&&c<=451||c>=461&&c<=496||c>=500&&c<=501||c>=506&&c<=535||c>=592&&c<=680||c>=699&&c<=705||c==902||c>=904&&c<=906||c==908||c>=910&&c<=929||c>=931&&c<=974||c>=976&&c<=982||c==986||c==988||c==990||c==992||c>=994&&c<=1011||c>=1025&&c<=1036||c>=1038&&c<=1103||c>=1105&&c<=1116||c>=1118&&c<=1153||c>=1168&&c<=1220||c>=1223&&c<=1224||c>=1227&&c<=1228||c>=1232&&c<=1259||c>=1262&&c<=1269||c>=1272&&c<=1273||
c>=1329&&c<=1366||c==1369||c>=1377&&c<=1414||c>=1488&&c<=1514||c>=1520&&c<=1522||c>=1569&&c<=1594||c>=1601&&c<=1610||c>=1649&&c<=1719||c>=1722&&c<=1726||c>=1728&&c<=1742||c>=1744&&c<=1747||c==1749||c>=1765&&c<=1766||c>=2309&&c<=2361||c==2365||c>=2392&&c<=2401||c>=2437&&c<=2444||c>=2447&&c<=2448||c>=2451&&c<=2472||c>=2474&&c<=2480||c==2482||c>=2486&&c<=2489||c>=2524&&c<=2525||c>=2527&&c<=2529||c>=2544&&c<=2545||c>=2565&&c<=2570||c>=2575&&c<=2576||c>=2579&&c<=2600||c>=2602&&c<=2608||c>=2610&&c<=2611||
c>=2613&&c<=2614||c>=2616&&c<=2617||c>=2649&&c<=2652||c==2654||c>=2674&&c<=2676||c>=2693&&c<=2699||c==2701||c>=2703&&c<=2705||c>=2707&&c<=2728||c>=2730&&c<=2736||c>=2738&&c<=2739||c>=2741&&c<=2745||c==2749||c==2784||c>=2821&&c<=2828||c>=2831&&c<=2832||c>=2835&&c<=2856||c>=2858&&c<=2864||c>=2866&&c<=2867||c>=2870&&c<=2873||c==2877||c>=2908&&c<=2909||c>=2911&&c<=2913||c>=2949&&c<=2954||c>=2958&&c<=2960||c>=2962&&c<=2965||c>=2969&&c<=2970||c==2972||c>=2974&&c<=2975||c>=2979&&c<=2980||c>=2984&&c<=2986||
c>=2990&&c<=2997||c>=2999&&c<=3001||c>=3077&&c<=3084||c>=3086&&c<=3088||c>=3090&&c<=3112||c>=3114&&c<=3123||c>=3125&&c<=3129||c>=3168&&c<=3169||c>=3205&&c<=3212||c>=3214&&c<=3216||c>=3218&&c<=3240||c>=3242&&c<=3251||c>=3253&&c<=3257||c==3294||c>=3296&&c<=3297||c>=3333&&c<=3340||c>=3342&&c<=3344||c>=3346&&c<=3368||c>=3370&&c<=3385||c>=3424&&c<=3425||c>=3585&&c<=3630||c==3632||c>=3634&&c<=3635||c>=3648&&c<=3653||c>=3713&&c<=3714||c==3716||c>=3719&&c<=3720||c==3722||c==3725||c>=3732&&c<=3735||c>=3737&&
c<=3743||c>=3745&&c<=3747||c==3749||c==3751||c>=3754&&c<=3755||c>=3757&&c<=3758||c==3760||c>=3762&&c<=3763||c==3773||c>=3776&&c<=3780||c>=3904&&c<=3911||c>=3913&&c<=3945||c>=4256&&c<=4293||c>=4304&&c<=4342||c==4352||c>=4354&&c<=4355||c>=4357&&c<=4359||c==4361||c>=4363&&c<=4364||c>=4366&&c<=4370||c==4412||c==4414||c==4416||c==4428||c==4430||c==4432||c>=4436&&c<=4437||c==4441||c>=4447&&c<=4449||c==4451||c==4453||c==4455||c==4457||c>=4461&&c<=4462||c>=4466&&c<=4467||c==4469||c==4510||c==4520||c==4523||
c>=4526&&c<=4527||c>=4535&&c<=4536||c==4538||c>=4540&&c<=4546||c==4587||c==4592||c==4601||c>=7680&&c<=7835||c>=7840&&c<=7929||c>=7936&&c<=7957||c>=7960&&c<=7965||c>=7968&&c<=8005||c>=8008&&c<=8013||c>=8016&&c<=8023||c==8025||c==8027||c==8029||c>=8031&&c<=8061||c>=8064&&c<=8116||c>=8118&&c<=8124||c==8126||c>=8130&&c<=8132||c>=8134&&c<=8140||c>=8144&&c<=8147||c>=8150&&c<=8155||c>=8160&&c<=8172||c>=8178&&c<=8180||c>=8182&&c<=8188||c==8486||c>=8490&&c<=8491||c==8494||c>=8576&&c<=8578||c>=12353&&c<=12436||
c>=12449&&c<=12538||c>=12549&&c<=12588||c>=44032&&c<=55203||c>=19968&&c<=40869||c==12295||c>=12321&&c<=12329};Utilities.isNCNameChar=function(c){return c>=48&&c<=57||c>=1632&&c<=1641||c>=1776&&c<=1785||c>=2406&&c<=2415||c>=2534&&c<=2543||c>=2662&&c<=2671||c>=2790&&c<=2799||c>=2918&&c<=2927||c>=3047&&c<=3055||c>=3174&&c<=3183||c>=3302&&c<=3311||c>=3430&&c<=3439||c>=3664&&c<=3673||c>=3792&&c<=3801||c>=3872&&c<=3881||c==46||c==45||c==95||Utilities.isLetter(c)||c>=768&&c<=837||c>=864&&c<=865||c>=1155&&
c<=1158||c>=1425&&c<=1441||c>=1443&&c<=1465||c>=1467&&c<=1469||c==1471||c>=1473&&c<=1474||c==1476||c>=1611&&c<=1618||c==1648||c>=1750&&c<=1756||c>=1757&&c<=1759||c>=1760&&c<=1764||c>=1767&&c<=1768||c>=1770&&c<=1773||c>=2305&&c<=2307||c==2364||c>=2366&&c<=2380||c==2381||c>=2385&&c<=2388||c>=2402&&c<=2403||c>=2433&&c<=2435||c==2492||c==2494||c==2495||c>=2496&&c<=2500||c>=2503&&c<=2504||c>=2507&&c<=2509||c==2519||c>=2530&&c<=2531||c==2562||c==2620||c==2622||c==2623||c>=2624&&c<=2626||c>=2631&&c<=2632||
c>=2635&&c<=2637||c>=2672&&c<=2673||c>=2689&&c<=2691||c==2748||c>=2750&&c<=2757||c>=2759&&c<=2761||c>=2763&&c<=2765||c>=2817&&c<=2819||c==2876||c>=2878&&c<=2883||c>=2887&&c<=2888||c>=2891&&c<=2893||c>=2902&&c<=2903||c>=2946&&c<=2947||c>=3006&&c<=3010||c>=3014&&c<=3016||c>=3018&&c<=3021||c==3031||c>=3073&&c<=3075||c>=3134&&c<=3140||c>=3142&&c<=3144||c>=3146&&c<=3149||c>=3157&&c<=3158||c>=3202&&c<=3203||c>=3262&&c<=3268||c>=3270&&c<=3272||c>=3274&&c<=3277||c>=3285&&c<=3286||c>=3330&&c<=3331||c>=3390&&
c<=3395||c>=3398&&c<=3400||c>=3402&&c<=3405||c==3415||c==3633||c>=3636&&c<=3642||c>=3655&&c<=3662||c==3761||c>=3764&&c<=3769||c>=3771&&c<=3772||c>=3784&&c<=3789||c>=3864&&c<=3865||c==3893||c==3895||c==3897||c==3902||c==3903||c>=3953&&c<=3972||c>=3974&&c<=3979||c>=3984&&c<=3989||c==3991||c>=3993&&c<=4013||c>=4017&&c<=4023||c==4025||c>=8400&&c<=8412||c==8417||c>=12330&&c<=12335||c==12441||c==12442||c==183||c==720||c==721||c==903||c==1600||c==3654||c==3782||c==12293||c>=12337&&c<=12341||c>=12445&&c<=
12446||c>=12540&&c<=12542};Utilities.coalesceText=function(n){for(var m=n.firstChild;m!=null;m=m.nextSibling)if(m.nodeType==3||m.nodeType==4){var s=m.nodeValue;var first=m;m=m.nextSibling;while(m!=null&&(m.nodeType==3||m.nodeType==4)){s+=m.nodeValue;var del=m;m=m.nextSibling;del.parentNode.removeChild(del)}if(first.nodeType==4){var p=first.parentNode;if(first.nextSibling==null){p.removeChild(first);p.appendChild(p.ownerDocument.createTextNode(s))}else{var next=first.nextSibling;p.removeChild(first);
p.insertBefore(p.ownerDocument.createTextNode(s),next)}}else first.nodeValue=s;if(m==null)break}else if(m.nodeType==1)Utilities.coalesceText(m)};Utilities.instance_of=function(o,c){while(o!=null){if(o.constructor===c)return true;if(o===Object)return false;o=o.constructor.superclass}return false};Utilities.getElementById=function(n,id){if(n.nodeType==1)if(n.getAttribute("id")==id||n.getAttributeNS(null,"id")==id)return n;for(var m=n.firstChild;m!=null;m=m.nextSibling){var res=Utilities.getElementById(m,
id);if(res!=null)return res}return null};var XPathException=function(){function getMessage(code,exception){var msg=exception?": "+exception.toString():"";switch(code){case XPathException.INVALID_EXPRESSION_ERR:return"Invalid expression"+msg;case XPathException.TYPE_ERR:return"Type error"+msg}return null}function XPathException(code,error,message){var err=Error.call(this,getMessage(code,error)||message);err.code=code;err.exception=error;return err}XPathException.prototype=Object.create(Error.prototype);
XPathException.prototype.constructor=XPathException;XPathException.superclass=Error;XPathException.prototype.toString=function(){return this.message};XPathException.fromMessage=function(message,error){return new XPathException(null,error,message)};XPathException.INVALID_EXPRESSION_ERR=51;XPathException.TYPE_ERR=52;return XPathException}();XPathExpression.prototype={};XPathExpression.prototype.constructor=XPathExpression;XPathExpression.superclass=Object.prototype;function XPathExpression(e,r,p){this.xpath=
p.parse(e);this.context=new XPathContext;this.context.namespaceResolver=new XPathNSResolverWrapper(r)}XPathExpression.getOwnerDocument=function(n){return n.nodeType===9?n:n.ownerDocument};XPathExpression.detectHtmlDom=function(n){if(!n)return false;var doc=XPathExpression.getOwnerDocument(n);try{return doc.implementation.hasFeature("HTML","2.0")}catch(e){return true}};XPathExpression.prototype.evaluate=function(n,t,res){this.context.expressionContextNode=n;this.context.caseInsensitive=XPathExpression.detectHtmlDom(n);
var result=this.xpath.evaluate(this.context);return new XPathResult(result,t)};XPathNSResolverWrapper.prototype={};XPathNSResolverWrapper.prototype.constructor=XPathNSResolverWrapper;XPathNSResolverWrapper.superclass=Object.prototype;function XPathNSResolverWrapper(r){this.xpathNSResolver=r}XPathNSResolverWrapper.prototype.getNamespace=function(prefix,n){if(this.xpathNSResolver==null)return null;return this.xpathNSResolver.lookupNamespaceURI(prefix)};NodeXPathNSResolver.prototype={};NodeXPathNSResolver.prototype.constructor=
NodeXPathNSResolver;NodeXPathNSResolver.superclass=Object.prototype;function NodeXPathNSResolver(n){this.node=n;this.namespaceResolver=new NamespaceResolver}NodeXPathNSResolver.prototype.lookupNamespaceURI=function(prefix){return this.namespaceResolver.getNamespace(prefix,this.node)};XPathResult.prototype={};XPathResult.prototype.constructor=XPathResult;XPathResult.superclass=Object.prototype;function XPathResult(v,t){if(t==XPathResult.ANY_TYPE)if(v.constructor===XString)t=XPathResult.STRING_TYPE;
else if(v.constructor===XNumber)t=XPathResult.NUMBER_TYPE;else if(v.constructor===XBoolean)t=XPathResult.BOOLEAN_TYPE;else if(v.constructor===XNodeSet)t=XPathResult.UNORDERED_NODE_ITERATOR_TYPE;this.resultType=t;switch(t){case XPathResult.NUMBER_TYPE:this.numberValue=v.numberValue();return;case XPathResult.STRING_TYPE:this.stringValue=v.stringValue();return;case XPathResult.BOOLEAN_TYPE:this.booleanValue=v.booleanValue();return;case XPathResult.ANY_UNORDERED_NODE_TYPE:case XPathResult.FIRST_ORDERED_NODE_TYPE:if(v.constructor===
XNodeSet){this.singleNodeValue=v.first();return}break;case XPathResult.UNORDERED_NODE_ITERATOR_TYPE:case XPathResult.ORDERED_NODE_ITERATOR_TYPE:if(v.constructor===XNodeSet){this.invalidIteratorState=false;this.nodes=v.toArray();this.iteratorIndex=0;return}break;case XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE:case XPathResult.ORDERED_NODE_SNAPSHOT_TYPE:if(v.constructor===XNodeSet){this.nodes=v.toArray();this.snapshotLength=this.nodes.length;return}break}throw new XPathException(XPathException.TYPE_ERR);
}XPathResult.prototype.iterateNext=function(){if(this.resultType!=XPathResult.UNORDERED_NODE_ITERATOR_TYPE&&this.resultType!=XPathResult.ORDERED_NODE_ITERATOR_TYPE)throw new XPathException(XPathException.TYPE_ERR);return this.nodes[this.iteratorIndex++]};XPathResult.prototype.snapshotItem=function(i){if(this.resultType!=XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE&&this.resultType!=XPathResult.ORDERED_NODE_SNAPSHOT_TYPE)throw new XPathException(XPathException.TYPE_ERR);return this.nodes[i]};XPathResult.ANY_TYPE=
0;XPathResult.NUMBER_TYPE=1;XPathResult.STRING_TYPE=2;XPathResult.BOOLEAN_TYPE=3;XPathResult.UNORDERED_NODE_ITERATOR_TYPE=4;XPathResult.ORDERED_NODE_ITERATOR_TYPE=5;XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE=6;XPathResult.ORDERED_NODE_SNAPSHOT_TYPE=7;XPathResult.ANY_UNORDERED_NODE_TYPE=8;XPathResult.FIRST_ORDERED_NODE_TYPE=9;function installDOM3XPathSupport(doc,p){doc.createExpression=function(e,r){try{return new XPathExpression(e,r,p)}catch(e){throw new XPathException(XPathException.INVALID_EXPRESSION_ERR,
e);}};doc.createNSResolver=function(n){return new NodeXPathNSResolver(n)};doc.evaluate=function(e,cn,r,t,res){if(t<0||t>9)throw{code:0,toString:function(){return"Request type not supported"}};return doc.createExpression(e,r,p).evaluate(cn,t,res)}}try{var shouldInstall=true;try{if(document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("XPath",null))shouldInstall=false}catch(e){}if(shouldInstall)installDOM3XPathSupport(document,new XPathParser)}catch(e){}installDOM3XPathSupport(exports,
new XPathParser);(function(){var parser=new XPathParser;var defaultNSResolver=new NamespaceResolver;var defaultFunctionResolver=new FunctionResolver;var defaultVariableResolver=new VariableResolver;function makeNSResolverFromFunction(func){return{getNamespace:function(prefix,node){var ns=func(prefix,node);return ns||defaultNSResolver.getNamespace(prefix,node)}}}function makeNSResolverFromObject(obj){return makeNSResolverFromFunction(obj.getNamespace.bind(obj))}function makeNSResolverFromMap(map){return makeNSResolverFromFunction(function(prefix){return map[prefix]})}
function makeNSResolver(resolver){if(resolver&&typeof resolver.getNamespace==="function")return makeNSResolverFromObject(resolver);if(typeof resolver==="function")return makeNSResolverFromFunction(resolver);if(typeof resolver==="object")return makeNSResolverFromMap(resolver);return defaultNSResolver}function convertValue(value){if(value===null||typeof value==="undefined"||value instanceof XString||value instanceof XBoolean||value instanceof XNumber||value instanceof XNodeSet)return value;switch(typeof value){case "string":return new XString(value);
case "boolean":return new XBoolean(value);case "number":return new XNumber(value)}var ns=new XNodeSet;ns.addArray([].concat(value));return ns}function makeEvaluator(func){return function(context){var args=Array.prototype.slice.call(arguments,1).map(function(arg){return arg.evaluate(context)});var result=func.apply(this,[].concat(context,args));return convertValue(result)}}function makeFunctionResolverFromFunction(func){return{getFunction:function(name,namespace){var found=func(name,namespace);if(found)return makeEvaluator(found);
return defaultFunctionResolver.getFunction(name,namespace)}}}function makeFunctionResolverFromObject(obj){return makeFunctionResolverFromFunction(obj.getFunction.bind(obj))}function makeFunctionResolverFromMap(map){return makeFunctionResolverFromFunction(function(name){return map[name]})}function makeFunctionResolver(resolver){if(resolver&&typeof resolver.getFunction==="function")return makeFunctionResolverFromObject(resolver);if(typeof resolver==="function")return makeFunctionResolverFromFunction(resolver);
if(typeof resolver==="object")return makeFunctionResolverFromMap(resolver);return defaultFunctionResolver}function makeVariableResolverFromFunction(func){return{getVariable:function(name,namespace){var value=func(name,namespace);return convertValue(value)}}}function makeVariableResolver(resolver){if(resolver){if(typeof resolver.getVariable==="function")return makeVariableResolverFromFunction(resolver.getVariable.bind(resolver));if(typeof resolver==="function")return makeVariableResolverFromFunction(resolver);
if(typeof resolver==="object")return makeVariableResolverFromFunction(function(name){return resolver[name]})}return defaultVariableResolver}function copyIfPresent(prop,dest,source){if(prop in source)dest[prop]=source[prop]}function makeContext(options){var context=new XPathContext;if(options){context.namespaceResolver=makeNSResolver(options.namespaces);context.functionResolver=makeFunctionResolver(options.functions);context.variableResolver=makeVariableResolver(options.variables);context.expressionContextNode=
options.node;copyIfPresent("allowAnyNamespaceForNoPrefix",context,options);copyIfPresent("isHtml",context,options)}else context.namespaceResolver=defaultNSResolver;return context}function evaluate(parsedExpression,options){var context=makeContext(options);return parsedExpression.evaluate(context)}var evaluatorPrototype={evaluate:function(options){return evaluate(this.expression,options)},evaluateNumber:function(options){return this.evaluate(options).numberValue()},evaluateString:function(options){return this.evaluate(options).stringValue()},
evaluateBoolean:function(options){return this.evaluate(options).booleanValue()},evaluateNodeSet:function(options){return this.evaluate(options).nodeset()},select:function(options){return this.evaluateNodeSet(options).toArray()},select1:function(options){return this.select(options)[0]}};function parse(xpath){var parsed=parser.parse(xpath);return Object.create(evaluatorPrototype,{expression:{value:parsed}})}exports.parse=parse})();exports.XPath=XPath;exports.XPathParser=XPathParser;exports.XPathResult=
XPathResult;exports.Step=Step;exports.NodeTest=NodeTest;exports.BarOperation=BarOperation;exports.NamespaceResolver=NamespaceResolver;exports.FunctionResolver=FunctionResolver;exports.VariableResolver=VariableResolver;exports.Utilities=Utilities;exports.XPathContext=XPathContext;exports.XNodeSet=XNodeSet;exports.XBoolean=XBoolean;exports.XString=XString;exports.XNumber=XNumber;exports.select=function(e,doc,single){return exports.selectWithResolver(e,doc,null,single)};exports.useNamespaces=function(mappings){var resolver=
{mappings:mappings||{},lookupNamespaceURI:function(prefix){return this.mappings[prefix]}};return function(e,doc,single){return exports.selectWithResolver(e,doc,resolver,single)}};exports.selectWithResolver=function(e,doc,resolver,single){var expression=new XPathExpression(e,resolver,new XPathParser);var type=XPathResult.ANY_TYPE;var result=expression.evaluate(doc,type,null);if(result.resultType==XPathResult.STRING_TYPE)result=result.stringValue;else if(result.resultType==XPathResult.NUMBER_TYPE)result=
result.numberValue;else if(result.resultType==XPathResult.BOOLEAN_TYPE)result=result.booleanValue;else{result=result.nodes;if(single)result=result[0]}return result};exports.select1=function(e,doc){return exports.select(e,doc,true)}})();

Youez - 2016 - github.com/yon3zu
LinuXploit