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

$PEd�ڌdc^;!�'b4+.0@0>��= �;��8a <(��;H.textp`b P`.data�&�'h@`�.rdata C�5Dh5@`@.pdataa�8b�8@[email protected]�q@9r9@[email protected]�-�9�`�.idata��;�9@0�.CRTh<�9@@�.tlsH <�9@`�/4�0<�9@PB/19��@<��9@B/31%0=&�:@B/45�,`=.�:@B/578
�=�:@@B/70��=�:@B/81(k�=l�:@B/92� >X;@B�ffffff.�H��8���;D�
��;L��9H�ٯ9H�
ί9��9H�ݯ9H�D$ �k�ѯ9H��8��H��(1�f�=��MZ���;���;�s�;�y�;tw���;�w�9��tW��
H������A�
�k�;H�|�;H�m�;H�^�;��
�)�;��tH�
�
�
1�H��(�f����@Hc
%�H���Hʁ:PE�l����Jf��t*f���V�������I������1������7����zt�-���D���1�E��������ATUWVSH�����;1��
H�T$ ��H���H���eH�%0H�X1��H���;1�H��t7H9�@�t/H�=u�;1��
�H9��G����H���H�\�;H��u�1��G�;���2�8�;���p�֭9� �;���'��u
1��H��;H�l5H��tE1��1����
H�
�
���;H���;��
H�
|m5H�
�;��H���H��m5H�����;H��t	H�
N�������
D�`�;E��tyH�<�;1�H�������t(H����� ~�A��A����"AD���D��tH��H�P�@< ~�D$\H���H���;H��;�
�����;�-��9�MHc�H���}I��1���H�=��9~?1�H���j�pHc�H���TI��H��H��I��H���59��Hc�H��I�L�%W�9�z�
H�S�9H��;�
:�9H�L�<�9H�-�9�D�5�9�+�9E���D�
�9E��u����9H�Đ[^_]A\�D�D$`����fD��;������������;������H���;H�
��;�}���;���H���;����H���;H�
z�;���;�C�x���H�
Sk5��H������H�
Mk5��H�������H�
;k5���;H���������H��������D���f.�H��(��;�-�
�X�����H��(ÐH��(���;�
�
�8�����H��(ÐUWVSH��H���;L��$�H��H��$�L��$���L��j5H�H`H��j5���H�
�j5L�H`A�:��UH��tN��H��$�L�H`H�
�j5A���+H��$x��H�H`H��I���*��H�P`�
�
H��35H�l$@H�p��H��j5H�H`I������H�
�j5L�H`A�����H�
�j5L�H`A�1����H�
�j5L�H`A�*����H�
�j5L�H`A�B��i��H�
k5L�H`A�"��L��H�
k5L�H`A�J��/��H�
Nk5L�H`A�^����H�
�k5L�H`A�:����H�
�k5L�H`A�Z�����H�
�k5L�H`A�;����H�
l5L�H`A�B����H�
El5L�H`A�9����H�
hl5L�H`A�>��d��H�
�l5L�H`A�:��G��H�
�l5L�H`A�9��*��H�
�l5L�H`A� ��
��H�
�l5L�H`A�2�����H�
�l5L�H`A�A�����H�
"m5L�H`A�?����H�
Em5L�H`A�2����H�
`m5L�H`A�H��|��H�
�m5L�H`A�N��_��H��m5H�H`�]��H�n5H�H`�K��H�
Bn5L�H`A�)����H�
Un5L�H`A�4����H�
pn5L�H`A�T�����H�
�n5L�H`A�G�����H�
�n5L�H`A�C����H�
o5L�H`A�H����H�
4o5L�H`A�9��p��H�
Wo5L�H`A�=��S��H�
zo5L�H`A�D��6��H�
�o5L�H`A�F����I��?H�H`H��o5L�D$8�T$8���H�
	p5L�H`A�\�����H�
Lp5L�H`A�T����H�
�p5L�H`A�X����H�
�p5L�H`A�G��~��H�
�p5L�H`A�8��a��H�
q5L�H`A�d��D��I��?H�H`H�Uq5L�D$8�T$8�-��L��q5H�H`H��q5���H�
�q5L�H`A�E�����L�jq5H�H`H�r5����H�
=r5L�H`A�E����H�
hr5L�H`A�V����H�
�r5L�H`A�V��w��H�
�r5L�H`A�Q��Z��H�
s5L�H`A�D�1��;��H�
Bs5L�H`A�T����H�
}s5L�H`A�T���'�H��$�����H��s5H�H`I����E1���H���S�=���u�1�H��$��	H���H�ys5H�H`I�����H�
�s5L�H`A�>��1��a	H���H��s5H�H`I��1��o��H�
~s5L�H`A�>��B��H�
�s5L�H`A�=��%��H�
t5L�H`A�W��� H��$h����H�Jt5H�H`I���E1�1�H�D$(�D$ A��H���]=���u���H�
%t5L�H`A�G����H�
Pt5L�H`A�7����L�o5H�H`H�`t5�{��Q���������ATUWVSH��)t$@)|$PD)D$`D)L$pD)�$�D)�$�H��H��H�|$ �y ZYX�A�AP�AH�D$ �T$(�L$0���S��tH�C I��H��H��������|H�C I��H��H��������`���tW�C�*K���*��C�Ya�5�^��X]�5�,�9st(��-5H�
�5A����8�;H�H0��s(t$@(|$PD(D$`D(L$pD(�$�D(�$�H�Ġ[^_]A\��5��5H���=��5L�g�^��^��D$ f.��^��T$(�D��5�D��5�D��5�L$0�D
��5w�A^��H��L9�t+�f.�v��AX�fA(��A^���
�H��L9�u��D$ �Y��D$ �D$(�Y��Yt$0�D$(�t$0�a���H�C H�
�5H�@��8L�@8�3o
�f�SH�� H�A H��H�������H�� [�H�C H�
��5H�@��8L�@8��n
��VSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pH��H�ӋI���$I�H�I�@H�BI�@H�B�~ ZYXt5(t$ (|$0D(D$@D(L$PD(T$`D(\$pH�Ĉ[^�f��5��51���=*�5�^��D�5�D�5�D�5��C�D
э5�^��C�C�^��C�3f.�wG�AY��3H��H��u���Y���C�Y��Ys�C�s�%���f.�fA(���
�AY��A\��3�DH�F H�����������H�F H�
�5H�@��8L�@8�\m
�ff.�AW�8AVAUATUWVS�
H)�)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$D)�$D)�$ ��$���$���$���$���$�D��$���$���$0��$���$���$��$4��$�D��$���$8��$���$���$���$��$�L��$ H��$ ��$��$<��$���$���$$��$ ��$ ��$��$  H��$ ��$H��$���$@��$( ��$�H��$0 ��$8 ��$H L��$X ��$�H��$@ H��$���$D��$(�D�$P H��$H����$�����$�DŽ$�DŽ$�����E1���H��$�H�1�5���H��H��$�����	H��I����A��H���A�OHҁ����� baL����@8rncs�P@��@< BGREщPDA��PHA�W�PLA�W ��t�P\E�O8ǀ�TFSME��t�HPE�G<E��t�HPA�O@��t�HPA�WD��t�HPI�_(H��5A�csed�csedL��H��HD�A�T$`H��H����H�����H��F`�V@H�NhH���RI�_0H���5A�txet�trpcL��H��HD�A�T$`H��H���OH�����H��FL�V@H�NPH���I�wH��t?A�csed�dnmdL��A�T$`H��H���H���i��H�ىC`�S@H�KhH���I�_H��tAA�csed�ddmdL��A�T$`H��I����H���!��L��A�G`A�W@I�OhH���oA� ZYX�tptwL��A�T$`H��H���~H���@LH�гY����?�P@H�CP�5%�5I��
O��e�?A� ZYX�tpkbL��H�0�pL�xA�T$`H��H���&�@LH���P@H�CP��$�fW����8�x�x��A� ZYX�ZYXrL��A�T$`H��H����A� ZYX�ZYXgL��A�T$`H��H����A� ZYX�ZYXbL��A�T$`H��I�����@LH���CL�FL�V@H��S@L��A�W@H�FPA�vruc�CRTrL���0�x�xH�CP�8�p�xI�GP�8�x�pA�T$`H��H���6���yA�vruc�CRTgL��A�T$`H��H���A�vruc�CRTbL��A�T$`H��H������$�t��$��GLJ�LJ�dž�dž�ǃ�ǃ�H��S@H��V@H���W@D��$�E����A�txet�gratL��A�T$`H��H���>H�U~5L���IH��H����1�A�H���5����H���-��H��FL�V@E1�1�H������rD�FLH�NP�I��A����VL��H9��;H�VPH�����A�grat�DveDL��A�T$pH��tA�grat�DEICL��A�T$pH����A��$�M��$�H�
e}5�e
A�2tfm�0B2AL��A�T$`H���>��$�ǀ�	ǀ�	�`����$��Zǀ�		ǀ�	ǀ�	H���P@D��$ E����D��$�E���e���H�ED�hE����D��$�E��t��;H�5}5H�H0E���5��$��Ѓ�(D�H�H��H��H����H��H��$���1�L�}5H��U`����H�UH�H�=9}5�H�R(H��H����@H�="}5�H����]DŽ$�1�L�C}5H��Uh���/H�H��$�H�EH��$�H�@8������1�L�e}5H��Uh����Hc�H�EH�@8������1�L��}5H��Uh����H�H��$�H�EH��$�H�@8�����e��$@���u��$����k1�L��}5H��Uh���$H�UHc�H�B8�����1�L��}5H��Uh����H�ULc�H�B8B������1�L��}5H��Uh����H�UHc�H�B8�����wH��L��$�L��$�H��$���$�H��L��D��$�L��$I��I��D��$�I��H��$�1���$�H��1�H���D��5fD(�M��M��M��H���p��A^Ћ�$����A^��SP�A^��KX�C`��H�SPH�
5H��$�I��踁	H��$���H�èH��9�$��jH�PH�RHI��?L���H�:J�*�	J�"�A^��f.��J�2�A^��S��A^��C��fA.���fA.���H�*D��$��J�:E���SP�	H��$��KXH�
��C`�����$��%�����$�������H�SPH�
�5H��$�I���	H��$����ǀ�	-ǀ�	ǀ�	���A�CRTr�CRTgL��A�T$pH��H��tA�CRTr�CRTbL��A�T$pH��H�������M��$�H�
Vx51���`
D��$�L��$D��$�D��$�E�����$E1�1���D��$�E��tH�
R~5�
Ic�H��H��$�H��H���9�
H��I���=H��$��D-L�5�D%K�5H���%x�5E1��H�AP�YA���f(��A]��ZH�BP�A_�f(��QH�AX�]��R�_�H�BXH�A`H���f(�f(��_�H�B`�]�f(�f(��\��\��Y����H�¨E9��k���E��A���$�EO�1���$�H��?H��?�D$XH�|$hH�l$`L���D$P�D$H���D$@�D$8�D$0�D$(����D�t$ �VH��I����H��$��D
51�1�H��$p�D5��DSP�CX�K`�D�$p��$x��$��Y��Y��X��Q�f.��i�AY��D\�fE.�v*H�fE(ʉ�H��$�H�CH��$�H�CH��$���H�èA9���E���c���L�CPH�
�5H���}	�D�$p��$x��$��[�����$��RD��$�L��$�L���"�H��H������$0��$4D��$8D��$�D��$$D��$<�%�����E‰�E��E‰€΀E��E‰�@E��E‰�E��������$���$(��$�T$ E1�1�HDŽ$���$�H��?H�D$xH�D$hH��$��D|$`H�D$p�d$XH�D$H�l$PH�D$@A�cH�D$8A�D-H��D�l$0�D$(�S(H��H���TM��tL��A�W(H����$ ���.��$������A��L�S A�c�H�D$8E1�%��H�D$0�D$( baLH�ىD$ A��H��H����A����$�D��$`�DŽ$0DŽ$8 BGR%��H��$@L�� baL��$ �0A2B��$4A�T$PH��H��$��JD��$ E�������	DŽ$(�DŽ$,����DŽ$$��t5D���	�1�A�Ѓ�E��9�D��u�A���1���A��9�u�D�H�
z5��$$�a�
H�
z5�}�
��;H�H0�
H���H�
��H��$�L��$ H�D$pH�D$hH�D$H��$4A�H�L$`H�
��H�D$XH�D$PH�D$@H�L$0H�D$8��D$( BGR�D$ �����D��$ E����
D��$�E����
H��H��SE1�H��$�L��A�T$(����L��A�T$@H��$��Q8��$�$���H��$�H�:y5���H��H��$����l�	H��I����E1�H��$�H���P���1��D$ A� baLA�L��A��$�H��H����H��$�fD(�fD(�1�H��$pL��$�D��$�fH�CPE��L��$�H��$�H�CXH��$�H�C`H��$�uvH��L���蝞	f(�H�èA9��DX��A_��X�fD(��KI��H��H����h���
E���y���L��$�L�CPH�
b5L���x	E��t�D��$�E���y���L�KL�H��H��$�L���DS�D�$�L��$��D�$�H��$��D�$�L��$��D�$x�D�$p躝	L��$�L��$���$�H��$�H��$��D|$H�Dt$@f(�L��$��Dl$8H�
Aw5��$�L��$��Dd$0�D\$(H�D$P�DT$ ��$���
����D^�L��$�H�
w5�D�$�L��$���$�H��$�fA(���
H����L��A�T$@H��$��Q8H��$�(�$�(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$D(�$D(�$ H��8[^_]A\A]A^A_�
��$�5

��$D��e���Hc�H��$�L��H��H��L��I�PPA�W��$���$�f(�f(�f(��_�v5�_�f(���$�f(��_��A*��^��^���$��^�f(��^���$��
'v5��$��q�
�D8v5fD.�wfE(��D��fAT�fEU�fDV�H��$��D�u5�D5�u5DŽ$�1�H��$�D��$�L��$���$�E1�A�D-�A*�1�H�H��H��H��$�H��H��$�H����W	H��$�D��$�D
�u5fE(�1�fA(��H��H��f(��]��A_�f(�fD(�u��D\�H��H���oZ	�AX�fD.�vfD(�A����H�ƨA9��D��$H�SPI��L��A�W fA(‹�$��A]����AY��A^������fE(ƒ��EY�fE.����E^ȿ
�A,�����
N�����Hc�$�D*�H��$�D��$�A�H��H��H��$�H�4�Hc�H�$��DX�H��H��H�,�I�틬$��A��I�ŨA9���A*�H��$��^L���f(��X��X��A^��Y��\��A^��Y�X��+V	I�UPM��L��A�W L��H���Y	fA.�fA(�w	f(��AY��A^ʅ��A���d���M�MM�EH�
�q5I�U�L$8I�E`A��H�D$0I�EXH�D$(I�EPI�ŨL��$���$�L��$���$�H��$���$�H�D$ �`�
A9��������$�D��$�D�A��A������$��-���L�KL�CH�
q5H��D$8H�C`H�D$0H�CXH�D$(H�CPL��$���$�L��$���$�H��$���$�H�D$ ��
���DŽ$����1�L�+m5H��Uh���'H�UHc�H�B8�4����1�L�Vm5H��Uh����H�ULc�H�B8F��E����1�L�m5H��Uh����H�UHc�H�B8D��E�����H�
�m5��Q
@1�DŽ$�A���1�DŽ$�E1��j�L��軼H��H���9��$���$$���%�����$�D‰����E‰���$�A
��$D�H��?��$��� H�D$hH��$�E1���$(�T$ ��$��$�1�HDŽ$�H�D$xH�D$p�D|$`H�D$H�d$XH�D$@H�D$8�l$PD�l$0A�cD�l$(H��S(H���H�����H��S����1�L�ql5H��U`����H�UH�H�R(H����
1҉�$PL��l5H��U`����H�UH�H�R(H���5�
1���$XL��l5H��U`���tH�UH�H�Y@H�R(H����
��$P��$`H��$h����H��$�1�H��$@�Duo5H��$�I���	��$`�*�H�_l5�*�L����$X�\��\��^��Y��X��AX��D,����
1�M��H��Uh������H�UH�H�R8D��E���s��$P�VH��9��v���D��$�D��$DfW��D$0E��HD�$�H��$��D�$�A��L��$���$����$�%�� baL�D$(H��$HH�D$ �HEH��I����H��$�L��$�L��H��$��D#n5fD(�D��$�H��I��L��$�D��$�1�I��1�M��M��H��I�UI��?L���H�RHL�:I�*�K�"�A^��f.��
K�2�A^��K��A^��C��fA.���fA.�����$P������H��$@L��$PL��1�HcI��H�I�DP H��L9�u�H�SPL����A��p�H�èH��9�$�� ���D��$�L��$�L��D��$�A��X��D�LJ�LJ�dž�dž�ǃ�ǃ���H�
Gk5���
���8�L��$P�L������8�H�
�k5��
��
��
��A�2tfm�0A2BL��A�T$`H������$�ǀ�	ǀ�	~Yǀ�	-ǀ�	ǀ�	H���P@��ǀ�	!ǀ�	ǀ�	�t����������$���D��$�E����ǀ�		ǀ�	ǀ�	�H�
�c5�K
A��$�M��$�H�
�b5�K
M��$�H�
�b51��pK
H��$�H�
jb5�\K
H�
}b5�PK
ǀ�	ǀ�	ǀ�	��ǀ�	ǀ�	ǀ�	����ǀ�	ǀ�	@ǀ�	@���ǀ�	!ǀ�	ǀ�	����VH�
*h5�J
H�
�g5�J
H��$�H�
�g5�J
H��$�H�
vg5�J
H�
*g5�uJ
H�
�f5�iJ
H�
�f5�]J
H�
�e5�QJ
H�
�e5�EJ
H�
fe5�9J
H�
*e5�-J
H�
�d5�!J
H�
�a5L���J
H�
�a5L���J
H�
|a5L����I
L��$�A��$�M��$�H�
u`5��I
M��$�H�
�h5���I
M��$�H�
�h5���I
A��$�M��$�H�
]h5�I
A��$�M��$�H�
h5�lI
��8L�C8H�
�_5�VI
H�
�f5�JI
��
f(���H�
5g5�0I
H�
g5�$I
�AY�H�
�d5���AY��AY���$�L��$���$�L��$�f(��D$ f(���H
H�
pc5��H
H�
<c5�H
H�
c5�H
H�
�b5�H
H�
�b5�H
H�
\b5�H
H�
 b5�H
H�
�a5�wH
H�
�a5�kH
H�
|a5�_H
H�
@a5�SH
H�
a5�GH
H�
�`5�;H
H�
l`5�/H
H�
=`5�#H
����
�~5�AfW�f.�sf(��\��X����VSH��)�$�H����5H~5f.H~5�\�v"�X5B~5f(�(�$�H��[^�@fW�f.������H�A`H��$�L��$��Y�H��XH����$�����Y��Y��H����$���$��PH�C`H�T$ I��H��������\����X5�}5�O���f��X5�}5�9���UWVSH��x)t$`H�t$ H��H��H�A8H��H��������0�������H���H�|$@I��H��H�����H��H��f(���K	��|5f(�f.����}5fW�f.�vp��M��tW�C�*K���*��C�Y�|5�^��X�|5�,�9st(��5H�
^f5A���O�
��;H�H0�h�
�s(t$`H��x[^_]���|5f(�f.��z���f(��X��^
�|5�e���@H�
9�4I��H����d	���f��8|5fW�����H�C8H�
�e5H�@��8L�@8�qE
�SH�� H�A8H��H�������H�� [�H�C8H�
�e5H�@��8L�@8�2E
��WVSH�� I�Hc�H��L�Ã|�tI�I�AI�@I�AI�@t&H����I��H��H������|�tt*H�� [^_Áy0 baLtTH�F8I��H��H�@H����0�H�F8I��H��H�@H����8�~0 baLu�H�
�4I��H��H�� [^_��c	f�H�
��4H���l	�ffffff.�AWAVAUATUWVSH��)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$I��I��H�\$@�y0 ZYXI�xI�p�A0HDŽ$��t$@H�|$HH�t$P�1I���tA�o����I��I��1�L���y���E�_E��u
I���tI�G8I��H��H���������I�G8L��$�E1�E1�H�\$0H�D$ L�l$(L��H��������pE�WE��t<��$�fW��A\O�_��AO(�AYG ��$�f.��Q�AF�A�@�PE�O�t$@H�|$HH�t$PE���	I�GXH����A�W0I��I��H�����A�@�L��1���5y5H�\$`fW��
�I�GPI��H��H����0I�G`A�W0I��I��H�����I��?�tI��I�؉�L������I�G8I��H��H��������OI�G8Mc�E1�J�l�E1�H�\$0L�l$(H�D$ H��H��������E�GE��tP��$�f(��A\G�_��AG �Y��AO(��$�f.�v
��$�f(�H��H���AD��H��A9w@��H�D$@E�gDfA.�?�H�D$`H�D$HH�D$hH�D$PH�D$pw!������I�GHI��H��H����0���I�G`I��H��$�H��XH���P�A�?�I�G`��$�L��$�H���Y�H��XH����$���$��Y��Y�$���$���$��P�Z����A���t\A�G�A*O���*�A�G�Yw5�^��X�v5�,�A9_t)��4H�
�`5A����
�"�;H�H0��
A�_(�$�(�$�D(�$�D(�$�D(�$�D(�$�D(�$H��[^_]A\A]A^A_�I�G8I��H��H�����������I�G8H�
`5H�@��8L�@8�?
f���$�f(�����D%]v51�f(�H�=��4�=Pv5�A^��Dbv5�DAv5�D@v5�D
?v5f.�w-�A^��Y7�3H��H��t*�43f(��A^�f.�v��AX�fA(��A^��P�
���t$@H�|$HH�t$P�*���A�p baJtOA�0 ZYX�.���H�
Z�4I��H���^	����I�G8I��H��H���������������f�A�0 baLtI�GhI��H��H���P����H�
��4I��H���e	��ffff.�WVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�H��H�֋A���I�H�I�@H�BI�@H�B�{0 ZYXtB(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�H�Ġ[^_��D
ot5H�=��4�D-�t51��=
t5�Dtt5fA(��D%vt5�DMt5�D<t5��^fA.�w#�AY�f(�f.�v2�H��H��u��>���fA(��f�
�AY�f(��A\�f.�w�f(��AY����H�A8H����������H�C8H�
]5H�@��8L�@8��<
�ff.�AW�8\AVAUATUWVS�
�
H)�)�$�[)�$�[D)�$�[D)�$�[D)�$�[D)�$�[D)�$�[D)�$\D)�$\D)�$ \H��$�YE��D��$�\��$hH��$]��$�\��$\D��$D��$PD��$�\��$�H��$(H��$]L��$]D��$0D��$�\H��$�D��$�D��$�\D��$D��$�\D��$D��$�\D��$D��$�\D��$�D��$�\D��$�D��$�\D��$�D��$�\D��$�D��$�\D��$�L��$]L��$HD��$ ]D��$L��$0]��$(]��$8]��$`]L��$L��$@]��$�H��$�]��$���$h]��$�L��$��D��$H]H��$x��$�H��$�]�D�$p]D��$�L��$P]H��$�L��$�D��$X]D��$(D��$x]D��$TD��$�]D��$�L��$�]L��$D��$�]D��$lL��$�]L��$�L��$�]L��$ D��$�]H��$�H��$�1���$\H��$�]D��$�D��$�]�H�H��HDŽ$�[D��$,L��$�]H��$�YH��H��$�YL��$pL��$�]L��$��p��$\�<��$\DŽ$XDŽ$����E�A��D��$81�L�Z5L��A�T$`����GI�T$H�H�=3Z5�H�R(H�4������$XDŽ$4��t&H��$xD��$T��E����	�����$41�L��n5L��A�T$`��x4I�T$H�L��$�[H�R(H��H��Y5���
��tHDŽ$�[1�L��Y5L��A�T$`��DŽ$�x-I�T$H�H�=�Y5�H�R(H�4��A��E��D��$�DŽ$$HDŽ$`��1�L�.n5L��A�T$`����I�T$H�H��$�ZL��$�ZI��H�R(H��H��$�ZH�Y5H�D$ ��
��HDŽ$`�lV��$���VDŽ$4DŽ$�DŽ$$�-DŽ$4DŽ$�DŽ$$HDŽ$`1�L��X5L��A�T$`���KEI�T$H�H�=�X5�	H�R(H��H���DŽ$�����8��6H�=�X5�	H���DŽ$�����8��H�=�X5�H����P:H�=�X5�H����]BH�=�X5�H�����UH�=xX5�H���DŽ$DŽ$������DŽ$  BGR8��:H�=@X5�	H�����UH�=2X5�	H����qU��$PDŽ$DŽ$��DŽ$  BGR��9DŽ$��GE1҃�$PA��F��	�W��$P��DŽ$�DŽ$DŽ$DŽ$ KYMC�eAE1҃�$PA��F��DŽ$��D�$�D��$���$���$0DŽ$-�LDŽ$!t?��$0DŽ$f�t&E�A��A����$0D��$�����@H�.W5L��A�T$H���7SA�L$���BI�T$1����H��x9��*�zu�9Bu���}H��I����RL��$(A��L��L��A�U����R��$A9M\�|R��$$A�UX����,��rtnm�QRH��$�H�W5�ÜH��H��$��R�m�	H��H����Q��$$H����KHD��$ �D�P<����rtnm��$�P8ҁ����� baL����P@�EщPD��PH�S�PL�S ��t�P\D�[8E��t�HPD�S<E��t�HPD�K@E��t�HPD�CDE��t�HP��$X��t
�x8rtnm�*9DŽ$h��$4D��$$����$�tE��t
A����8D��H��U����8L�{(M����*A�csed�csedH��U`H����PL��H��$���
H��$���H�щB`�R@H��$�H�JhL�����
L�{0H�S5A�txet�trpcH��M��LD��U`H���@PL��H��$�� �
H��$���H�щBL�R@H��$�H�JPL���`�
H�{H��t?A�csed�dnmdH��U`H��I����OH�����
��L��A�G`A�W@I�OhH����
H�[H��t?A�csed�ddmdH��U`H��I���hOH����
��L��A�G`A�W@I�OhH�����
��$$��tVfW���$�[f.�vCA� ZYX�imulH��U`H��H����N�@LH���P@H�CPH��$�[�8H�P�xA� ZYX�tptwH��U`H��H����NH���@L�P@H�CPH���4A� ZYXH��H�H��4H�PH�|�4H�P�tpkb�U`H��H���/NH���@L�P@H�CPH���:A�trlcH��H�H���:H�PH���:H�P�trlc�U`H��H����M��$ �
���$A�ljCL�}A9���MH��S@�CL��t`��$E1���$@�D���������?�H��H�����
H���DME��H��A��I��LCPI�H�/�
D9{Lw���$@M����$�t9D��$D��$$tA�EP����3��$�tE��tA�EP����3D��$XE����A� ZYX�ZYXrH��U`H��H����LA� ZYX�ZYXgH��U`H��H���aLA� ZYX�ZYXbH��U`H��H���/L�@LH���FL�CLI�[����O�?�S@H��V@H���W@H�CPH��~��?H��������?I�;q9^���?I�7P�|z�?I��!��?I���I�?��?H�CUL����?H�PH�H�CRTrL�8H�FPH���9�ٸ?H��L�L�HA�vrucL�PH�GPH�XL�H�p�U`H��H���OKD��$8E����0A�CRTr�CRTgH��UpH��H���KA�CRTr�CRTbH��UpH��H����J��$\��&��$\��&��$\��&LJ�LJ�dž�dž�ǃ�ǃ�H��S@H��V@H���W@D���E���E1�L��H��M��E1�I���5d5H���=e5E���De5I���De5�D
e5�D�d5�"�A^�A��I���E9�����D���A*��H*�L��L��H��I�$�L��I���\��^�f.�w��AX�fA(�H��$�H��$�L��$��A^��
�
D���L��$�H��$�H��$��Y���I��H��M�ċ�$���
I�D$�@����$��I��$����$Hc�$�H��H��H����
H��H��$��HH��$H��1�L��Q5L��A�T$`��xCI�T$H�H�R(H���)�
f.�c5v%�
�c5f.�rfW�L��$HfA.:�\H��$��tOL��$H�Af."b5v8�*�$�f.�v)�Y1b5H�
"Q5��$�H��$�f(��*
��$  BGR�.��$  YMC�R$1�L��S5L��A�T$h����GI�T$Lc�H�B8B������G1�L��S5L��A�T$h���oGI�T$H�H��$�L��$�H�B8B�����<G1�L��S5L��A�T$h���GI�T$H�H��$�L��$�H�B8B������F1�L�T5L��A�T$h����$��FI�D$Lc�$H�@8B������F��$���$��$�����1�L�T5L��A�T$h���LFI�T$Hc�H�B8D�4�E���'F1�L�DT5L��A�T$h���FI�T$Hc�H�B8�<�����E1�L�tT5L��A�T$h����EI�T$Hc�H�B8D��E����EHc�$H��L��$�H��$���$�N��L��$�L�<�L�4�I��L��$H��$(H��M��H��$M��I��I��1�1���$��5�_5H��$��D�_5��$$fW��f�D��$�E���4��$���tT�A^��A^��SP�A^��KX�C`��$�[f.�v'�KP�Y��KP�KX�Y��YC`�KX�C`���H�èH��;�$��'I�QH�RHH��?H���H�:J��J��A^��f.��J�*�A^��[�J�"�A^��S�	�A^��K�xCf.��nCf.��dCf.��ZCJ�:���J�2H�*�SP�	�KX��C`�����D��$�E��u�A^Ћ�$���A^��SP�A^��KX�C`tVH�SPH�
	�4��$�L��$�L��$�I��L��$��F	��$�L��$�L��$�L��$������$��������$�������H�SPH�
��4��$�L��$�L��$�I��L��$��N	L��$�L��$�L��$���$��+���H�SPH�
@�4��$�L��$�L��$�I��L��$��)N	��$���$�L��$�L��$�L��$����������E1��7��$$L��$H��$(������$�H��$�=0]5��H��H��H��1�H���DXH�H9��_�f(�u�f(�H��$1���$D��$��^�f(����H�èD9�tP�CP���Y��CP�CX�Y��CX�C`�Y��C`t�H�SPH�
�4��H�èI���D	D9�u�H��$`tH��$`H�����$$��t��$���L1D��$XE���D��$XE���Ã�$h��	����	��$�tL��A�UE1�H��$�H��U(���)@H��U@H��$��Q8D��$�D�$�*H��$�H��T5�R�H��H��$���?�	H��I����?E1�H��$�H���P���~?1��D$ A� baLA�L��A���H��I���8?fW�H��$1�H��$ Z��$L��$�D��$�fD(�fD(�fD(��f.�H�FPL��$`[H��$`[H�FXH��$h[H�F`H��$p[E�����$�����$ KYMCL��$p[�oL�NL�H��L���D^L��$h[�D�$`[�D�$0ZL��$��D�$(ZL��$��D�$ ZL��$��h	L��$�L��$���$�L��$�H��$��D|$@�Dt$8f(�L��$��Dl$0H�
�X5��$�L��$��Dd$(�D\$ L�\$PL�d$H��$���
H��L����g	f(�H�ƨ;�$��DX��A_��X�fD(�f(��Y��DX��JI��H��L��A��h���'=���T���L��$`[L�FPH�
��4L���iA	�`���L�FL�NH��H��$h[L��L�&�D^L��$��D�$`[L��$��D�$0ZH��$��D�$(ZL��$��D�$ Z�g	L��$���$�L��$�H��$�L��$��D|$HH��$��Dt$@H�
W5L��$��Dl$8��$�f(�L��$��Dd$0�D\$(L�D$ L�\$X��$�M��H�D$P�`�
�p���fA(�L��$��^��Q�f.���;�D^���$�L��$�f(�H�
�V5fA(��D�$�L��$��D�$�H��$�fA(���
L��A��L��A�V@H��$��Q8H��$(�$�[(�$�[D(�$�[D(�$�[D(�$�[D(�$�[D(�$�[D(�$\D(�$\D(�$ \H��8\[^_]A\A]A^A_鴾
D��$4A�2tfmE���)�0B2AH��U`H����:D��$�H��ǀ�	D���	D��$�D���	D��$�D���	D���	�P@A�2tfm�0A2BH��U`H���&:D��$�ǀ�	H�����	���	D���	D��$D���	�P@��$h�����H����x8rtnm���x@ ZYX�����$�����A�txet�gratH��U`H��H���(6H��$(H��C5�Y�
H��H����51�A�H���E�
����5H���=�
��H��FL�V@E1�1�H����
����5D�FLH�NP�I��A����
�VL��H9��O5H�VPH�����
A�grat�DveDH��UpH���5A�grat�DEICH��UpH�������L���H�
�B5�
DŽ$�DŽ$DŽ$DŽ$ KYMCDŽ$�DŽ$���1�L��H5L��A�T$h���>8I�T$Hc�H�B8D��E���81�L��H5L��A�T$h����7I�T$Hc�H�B8D��E����71�L�I5L��A�T$h����7I�T$Hc�H�B8D��E���t�H�
I5�&
fDDŽ$8DŽ$XDŽ$���DŽ$8DŽ$XDŽ$���1B2AH��U`H���7D��$�H��ǀ�	D���	D��$�D���	D��$�D���	D���	�P@A�1B2A�0B2AH��UpH����6A�1B2A�2B2AH��UpH���\6A�2tfm�1A2BH��U`H���)6D��$�ǀ�	H�����	���	D���	D��$D���	�P@H��$x����$T����A�1A2B�0A2BH��UpH����5A�1A2B�2A2BH��UpH���k5A�2tfm�tmagH��U`H���85D��$H��ǀ�	ǀ�	ǀ�	ǀ�	D���	�P@���H���^�H��H����4��$��$�D��$PL��$��$���$����$���%�����$\D‰����H��$�[E‰�
��1��D�H�F(��$$D��$�L��$H�Dt$hH�L$HL�L$8�D$`�T$ �L$XA�L�T$xE��T$PD��$�A��1�A��cL��$�H��H�D$pH�D$@D�T$0D�T$(��H����3H���������E1�H�D$8H�D$0�D$(�D$ A��H��V H��I���E3�trlcH��UPH��I���3�PL����H��$ Z��H�CH��H���H��H9�H�H��u�1�I��H��?I��I��H��L��L��IT$PH��(A���L��IL$PH��(H���	�	�GH��H��A;D$Lr�L��A���H��V��H���&�H��H��$��H2��$���$D��$D��$�D��$��$���$����$�%�����H��$�E‰�E��L��$�E‰�@E��D��$PE‰€΀E��M�P(E�H��$HD��$�
��$4L��$L��$�H�D$p�Dt$hH�T$xH��$�[�D$`L�L$8�L$XE��T$PE1�H�T$HA��b��$�A��H�D$@�D$ �T$0�T$(1�A��H����0H�������$HDŽ$�ZHDŽ$�ZHDŽ$�ZHDŽ$�ZHDŽ$�Z��HDŽ$�ZHDŽ$[HDŽ$[HDŽ$[tH�
�F5�E�
H��$xH�Y@DŽ$tWH��$xWHDŽ$�WHDŽ$�W��H��$x�rH��H��$��/H��$�ށH��I����/fW�E1�E��E����M����$�H��$�M��H��$0X��E1�L�T$(E1��D$ A�����H��L��L��$���#��L��$�x'E1�L�T$(�D$ A��H��L���#����/���x��Nf.��>$�Ff.�v.�Vf.�r)f(��^��^��c�Y��Y��S�[f.�r:f.~v3f(��[�^��Y��Sf(��\�f(��\��^��Y��K�F f.�r�C �F(f.�r�C(�F0f.�r�C0�F8f.�r�C8�F@f.�r�C@�NHf.��v#�FPf.�v.�VXf.�r)f(��^��^��cP�Y��Y��SX�[Hf.�r:f.~Xv3f(��[P�^��Y��SHf(��\�f(��\��^��Y��KX�F`f.�r�C`�Fhf.�r�Ch�Npf.���"�Fxf.�v4���f.�r,f(��^��^��cx�Y��Y�����[pf.�r@f.��v6f(��[x�^��Y��Spf(��\�f(��\��^��Y����A��A���K�����$L��$�L��$HI�@ L��$Y�D$(�L�T$8�����L��$(L�D$0�����$Ɂ����� baL��$4�L$ H��$�E�E1�A��bA����H��H��$��<,��$D��$DŽ$pWHDŽ$�WHDŽ$�WHDŽ$�WD��$`WD��$ �DŽ$�WHDŽ$�W%��HDŽ$�WHDŽ$�W baLM��D��$�W��$�WH��$���$�D��$HDŽ$�WHDŽ$�WH��$�WH��?HDŽ$ XH��$�WH��?D��$(XH��$X��$T����
�$���$�����$l�����$�WL��$1����$�W��I��9��$I�H��t�Hc�H����Wu�H��A5�zH��I��H���Z��*�/�	H��H��H����Z�p*E1�L��H���P���G*H����x8tsba�'*�xDH�������D����W�|H��H���[��)��$�W baLL�P � ZYXu����W� baLDщT$ H�D$8E1�H�D$0�D$(�D����WH��A��H��H����W�i)��$�WM���9ډ�����I�$I9t��I����9������I�$I9u拌��WHclj���WH����WH����WH���[H���[H����ZH����ZH���ZH���Z��$��t���L�
�05tL�
�05H��05��LEʅ�M�H��05tH��05H�
�05��HD�H�
�@5�F�
��$�W�/�����$,H��$ H��$YL��$��Z�����$4�����0A2BH��UPH��H��$ [�(��$����	��$�W�p��$��bL��$pE�A��uL��$�E�A���6H��$�WH��$@[E1�E1�H��$`WH��H�����H��$�WH���I��H��XH���PI��������?I��?H���L��$ ZL��$`[I����ư>L��$ ZL��$`[1�H�D$HH�D$@�H�t$8H�D$0�D$(�L�T$ �k
����&L��$pA�����&��$`WL��$�A���tOH��$`[��H��$X��H��$�H�
�B5��$��k�
��$`W�f���$`WH��$`W����H��$ [DŽ$hW�DŽ$lW����DŽ$dW���	��t8���	A�0�E����D��9�E��u�D�A��1Ƀ�A��9�u�D�H�
B5��$dW螫
H�
B5身
�Lv;H�H0�ӫ
H����H�
���D��$ L����H��$ [H�D$pH�D$`��$�WI��H�L$H��$�WL�D$0H�D$hE1�H�D$XH�D$PH�D$@H�D$8D�T$(�D$ �����$��$`W��t
�
�2�
��$�W����L����1�N�4#I�H���kH�����H��[H���PH���ZH���P@H���ZH���P8��$�W��9�}!��Lc�M�I��N9��`W���9�u�I�H����9��x���H��$�WH��tH����(HDŽ$�WH��$�WH��tH����(HDŽ$�WH��$�WH��tH�����HDŽ$�WH��$�WH��tH�����HDŽ$�WH��$�WH��tH���HDŽ$�W��$�tL��A�WH��$tH��$�Q@��$��tH�
@5�Q�
�trlcH��UPH��I����"�HL��tyH��$ Z��H�CH��H���H��H9�H�H��u�L��$�1�I��I��?I��I��ML$PL�<�L��I�Q(A����GH��H��A;D$Lr�D��$4E���I��$D��$��$D��$`WD��$ �%�� baL��D��$�W��$�WH��$�H��$�W��!��$0�@( baL�@, baLD��$H�@�
-A5ǀ baLǀ baLD��$(Xt?��$0�
A5t-��$0�
�@5t��$0�
A5��u�
�@5H��$����H��H��$ X�/!�tmagH��UPH��H���� D��$`WE��tfDŽ$hWDŽ$lW����DŽ$dW���	��t D���	1Ҹ��A��9�u���$dWH�
�=5�V�
��q;H�H0�o�
H�
��L�	��L�
���1�H�D$hH�D$`H�L$XL�D$@H��L�L$(H�D$PI��H�D$HH�D$8H�D$0�D$ YARGD��$�W��
����D��$`WE����H��$ XH�����D��$HDŽ$ XE����H��$����H��$��Q����$�W����JDŽ�`W������$L�
[(5L�`(5��H�O(5LDȁ�$ KYMCt��$  YMCL�9(5H�)(5LE�L��$0XH�`+5L���P�
�����rtrp�p��H��'5���H�
W*5I��H���t
@�Bp;D��$�H�H0H��,5�Z�
����LJ�LJ�dž�dž�ǃ�ǃ��D��1�L�0.5L��A�T$h����I�T$Lc�H�B8F��E����1�L�^.5L��A�T$h���gI�T$H�H��$�L��$�H�B8B�����41�L�~.5L��A�T$h���I�T$Lc�L��$�H�R8B��������$��$������1�L��25L��A�T$`����I�T$H�H�R(H���f�
1҉�$0L��25L��A�T$`���hI�T$H�H�R(H���
�
1���$8L��25L��A�T$`���&I�T$H�H�R(H���ԣ
��$$��$@���O��$�����I��?L��$H��$0����H��$�M�5�;5�D
�;5H��$ Z1��*�H�Y25�*�H����$8�\��^���$@�\��Y��X��AX��D,�誣
1�I��L��A�T$h����:I�T$H�H�R8D��E�����$0��H��9��t���D��$$E������$���L��$�H��$�ZD��$�L��$���$��D$0H�D$ H��L�T$(�	����{�H��$`��$L��$�D��$�L��$�fWɋ�$��D$0L�T$ �%�� baL�D$(�H��H���	Lc�$@��L��$(����$�L��$�I��L��$(H��$�E1�H��$�5:5��I��L��$�H��I��H��$��D:5L��H��H��$�M��M��H�UH��?H���H�RHN�2K�:�I�2�A^��f.��K�"�A^��W�
K�*�A^��O��A^��G��f.���f.���f.�����$0������H��$�ML��$0L��1�HcI��H�I�DP H��L9�u�H�WPH��H�Ǩ��p�I��L;�$�����L��$�H��$�H���X���$$��������$�������H�
K15�
L��$0덋�$(���3���L��$ H��$0�]1�L��/5L���H�L��A�T$`����Hc�I�D$H�@(H��������H��$(���%���~��$ ����$�~#��$�I�F ��I�T�(H�H��H9�u�L��$���$�J�<�fW�H��$��
�85M�\$I����E1�L��$8Lc�$H��f(�H���%�75DŽ$f(�L��$(��85I��L��$@I�CH��$  BGRJ�H�8����$  YMC�-f.
vrH�0f.
vhL��$8J�f.
vVH��$@H�f.vD��$���~5I�CHL��$�MN�1�Ic�ADF I���X�ADF H��H9�u��X�$I��D��$D9�$��8���f.��gD��$ E��~"A��I�F K�T�(��^��H��H9�u냼$��"��$��H��$;fWҋ�$�H���C�����I��M��H��$(H�����������$�������H��$�[H�����H��$�[�&h;H�&.5H�H0H��$�I����$��2�
�S���D1�HDŽ$�DŽ$������$�[��55f.
Q55��$H�_����^���$H�M�����f.��}���H�0�f.��k���H��$8H��f.��
����L����f.�A���H�0f.�3���L��$8J�f.��������I�Y@L��$H���A�2tfm�0A2BH��U`H����D��$�ǀ�	H�����	���	D���	D��$D���	�P@��$l���;A�0A2B�2A2BH��UpH�������L���H�
L"5�	A�vruc�CRTgH��U`H��H���/A�vruc�CRTbH��U`H��H���8��L���H�
3!51��Q�	�1�L�V#5L��A�T$h����I�T$Lc�H�B8F��E����1�L��#5L��A�T$h����I�T$H�H��$�L��$�H�B8F��E���Y1�L��#5L��A�T$h���4I�T$Lc�L��$�H�R8F��E���B���H�
�#5�	�DŽ$�W�d�H��$0XE1�L���4���E1�HDŽ$��DŽ$�DŽ$DŽ$DŽ$  YMC��$P�A��DŽ$�DŽ$�-DŽ$�������d;H�
H 5L�H0A�F��̙
���A�tgcv�tgcvH��U`H��I���	
fW��@Hf�@Pf�@RH��f�@T�P@L���5�25�D�25I���D
�15���D�15L���D-�25HDŽ$@�D%�25I���D�25H��$@D��$@1�fD(�H��	�`f.�fA(��]�f(�A�ET��t�AY��AX��^��Y��AY��A^��AY�H�FX���AX��,�f�8H����t�*�D��L���^�A�U@f.�v�fA(��H��$@H��$@�L�����L��M��������$A����]���3c;H�
�5L�H0A�C��8�
D��H��U���<�����L���H�
�5��	fD�x@ ZYX�D�$h��$h����1A2BH��UPH��H��$ [��
��$���D��$E����
��$0DŽ$�1�=�05tm��$0DŽ$�'�=�05tP��$0DŽ$��=�05t3D��$0DŽ$��={05E��u�=f05DŽ$�D��$lL��$pE��A�tL��$���A3����%�������$�ۃ������$l��t3L��$���$�A�E҃��OA��A���D��$����#��A���k
��$��S
H��$�YL��$�YH��$�Y��$�YL��H��$0XH�D$ �shH��$�YE1�H�|$0�D$(�D$  baLA��H�D$8�L��A�W H��H��$�W����$��tH�
<)5�
H��$�Wf(�H�����H��H������$lE1��yH��$���$T@�Dž���$�@����
1�L��$HH��$�H��$YE1��D$(�D$  baLH�D$0E��L�T$8�Q H��H��$�W�.D��$E���f(�H�����H��I���k��$���H��$�W�aD��$E��t��$TH�
�)5��
�K-5E1�1��1@H��H����*�$T�AX�L��H���A^��p������$������$�D��$�1���$H�D$`M��H�D$X�D$HI����D�T$PH�5L��$p�D$@HE��D$8�D$0H�D$hH�\$(H��L�T$ �. H��H��$�W�2�0A2BH��UPH��H��$([����$l���U��$�����$�D��$T����$DE�$���D��$�tH�
�(5D��踓
H��t	H������+5E1�1���>H��H���GfA(��*�$�L��H���\�f(��A^��p���D��$�D��$�H��51���$H�D$`H�D$X�D$HM��D�T$PL��$�E��HE��D$@�D$8H�D$h�D$0I��H�\$(L�T$ L����H��H��$�W���2A2BH��UPH��H��$0[��I9��FH��t	H��H��t	H�����L��A���H��$ [��DŽ$DŽ$DŽ$  YMC���DŽ$�DŽ$�龾��H��$�=�*51�L��$ ZH���)�CP��$ Z�]ǃ�H�è;�$�f(�t)��$��u�L�CPH�
�4L����	��$ Z�H��$1�L��$ Z�D*5�DC*5�D
+5�'�GP�\��A^�f.�vK��H�Ǩ;�$�tiD��$E��u�L�GPH�
��4L���I	��$ Z�\��A^�f.�w�f(��\�f(�fA(��|
�AY��X��Y������1�1�L��$ ZfW��^H�FPH��$ ZH�FXH��$(ZH�F`H��$0Zf.>sZf.�$ Zshf.�$(Zs]f.�$0ZsR��H�ƨ;�$�tOD��$E��t�L�FPH�
��4L���	f.>r�f.~r�f.~s�f.�$ Zr�Hdž���랋�$��������Z;H�E!5H�H0A����
���H�
}5���	�5���F���������FP��������Fx�Q��A�2tfm�2A2BH��U`H��tKD��$����	H�����	ǀ�	D���	D��$D���	�P@���H�
<5�7�	���L���H�
�5��	M�������L��A��$����H�
�$5��	���L���H�
�!5���	���L���H�
�!5���	H�
�$5��	H�
�#5��	H�
�#5軎
����H�
�#5��	��HDŽ$@[HDŽ$H[HDŽ$P[����%1�DŽ$�W baJ�]�H��$�X��$0XH��$�W�D$H��$PXH�L$`H��$�XL��$8XH�L$XH��$�XH�L$PH��$xXH�L$@H��$pXH�L$8H��$hXH�L$0H��$`XH�L$(H��$XXH�L$ H���P1ҁ�$�W baJ��fW�E1��9H��H���I��$�W baJ��L��$@[L���4H�
�4H��$ ZL���	H�
ѝ4M��L���	M��M��H��H��I���9���1����H�
�!5�1�
H��$�W���H��$�H�
=5��8L�@8���	H�
�5�
�(������L���H�
�5���	DŽ$�!DŽ$��w������L���H�
p5��	H�
a5��	H�
5�x�	H�
�5�l�	H�
�5�`�	H�
q5�T�	L���H�
!51��?�	���L���H�
5�&�	E1�1��h�����$@XH��$0X�%s$5��X�$Yf(���$HXH��$(��$8XA���X�$YDŽ$�����X�$Y�Y��Y��^��Y��Y��Y��Y���$@X��$8X��$HX�H����E�A��A������uNA��A��D��$����u!D��$�1�E�����U�H�
35�&�	��$�ۃ�^���4�A��_A��D��$��]��$�tH�
�5�&�	@���P���D��$TE���?���L��$pE�D��$D��$E��tH��$�H�
�5�؊
f(�E1�1��5H��$�H��H��������tH�������$������9����H�
}5��	��H��$�YH�|$0E1��D$(�D$  baLL��H�T$8D��$��A�W H��H��t>��$��tH�
h5�
f(�H�����H��I����H�������A��8M�G8H�
�5��	H��$�H�
�5��8L�@8��	H��$�WH��$ ZL���4L��$@[H��H���PH��$�WM��L��H���P����H�
�5�:�	DŽ$�W baL1����A��8M�G8H�
V5��	A��8M�G8H�
?5��	H��$�H�
�5���	A��8M�G8H�
5���	H�
h5���	H�
�5��	L��$��E1��
����H�
51����	D��$ A�C�H��E��~<I�D$L��$�MH�@HL��1�IcI���fA.DF v�ADF H��H9�u�H��9�$���X5� 5��H�
X5��	I�D$H�
5H�@(H����	H�
�5���	H�
�5���	H�
s5���	H�
E5���	��|�H�
	5H����	H�
�5H����	H�
�5��	H�
/5��	H�
�5�~�	H�
�5�r�	H�
c5�f�	H�
5�Z�	H�
�5�N�	H�
�5�B�	H�
s5�6�	���L���H�
�
5��	H��$(H�
)5�	�	H��$(H�
�
5��	H��$(H�
�
5���	H��$(H�
�
5���	���L���H�
�5��	H�
5�
�[��
�	�
�����L���H�
�5�{�	���L���H�
>5�b�	H��$�H�
Z5H�B��8L�@8�@�	H�
"5�L�
H��$�W�������L���H�
�5��	���L���H�
�5��	��$`WH��$`[1���H��$�W�d��H��$�H�
�5��$��
�;��H�
�5���	��$`W������L���H�
]5��	���L���H�
�5�h�	H�
�5�\�	H�
�5�P�	L���H�
�5���;�	H�
L5�/�	I�H�
5� �	H��$�H�
Q5��8L�@8��	A��8M�F8H�
05���	H�
�5���	H��$xH�
�5���	H��$�H�
�5��8L�@8��	H�
$5��	���L���H�
d5��	��8L�F8H�
�5�r�	��8L�F8H�
�5�\�	H�
�5�P�	���L���H�

5�7�	���L���H�
�
5��	���L���H�
�
5��	���L���H�
�	5���	���L���H�

5���	���L���H�
f
5��	���L���H�
�	5��	H�
R5��	H�
5��	H�
�5�}�	H�
�5�q�	H�
b5�e�	���L���H�
,	5�L�	���L���H�
	5�3�	�~t
f(��)��L��$�H�
V5A���M�����	A���M���H�
.5���	M���H�
\5�����	H�
�5���	H��$�H�
�5��	L���H�
5����	�_�5�KA�f.�wf(�E0��Cf.�wOf(��Kf.�v:A��AY�H�
c5����$�L��$�f(��7�	H�
�5�+�	f(���A��H�
�5��	H�
j5��	H�
65��	H�
�
5���	H�
�
5���	H�
z
5���	H�
F
5���	H�

5��	H�
�5��	H�
�5��	H�
V5��	H�
5E1���	H�
�5�~�	�^5�A钷��H�
�5�`�	H�
�5�T�	L���H�
�51��?�	L���H�
�51��*�	L���H�
�51���	L���H�
�51���	L���H�
�51����	L���H�
�51����	H�
�5���	H�
�5��	���L���H�
�5��	���L���H�
l5��	���L���H�
S5�s�	���L���H�
:5�Z�	���L���H�
!5�A�	���L���H�
5�(�	���L���H�
�5��	���L���H�
�5��	H�
5���	H��$�H�
�5���	H�5�:����@/A�M\�H���//H�
P5I��H����	I���H�
05��	H�
5�~�	H�
�5�r�	�DJ;H�
�5L�H0A�5��I
DŽ$4DŽ$�DŽ$$����$�Zf.
j5�}�����$�ZI��?L��$�ZH��$`�^���$�Z��$�Z�^���$�Z�2���DŽ$�DŽ$DŽ$��DŽ$  BGR�o�H�
�5��	DŽ$�DŽ$DŽ$��DŽ$  BGR�2�������������Y���I�\��\��Y��I�\��^��X���fff.�SH��pE1�H��I�H��H�L$0H�D$ A�H��$�H�T$0�H�L$(H�����%���uH�D$0H�H��p[�H�
v5��	�SH�� H���H��H��t	H����XH���H��t	H����XH���H��t	H����XH��H�� [��}
fff.�VSH���H��H��H�QH��$����H��$�H�T$ H�D$ H���H�����H�D$pH�H��$�H�CH��$�H�CH���[^�@AUATUWVSH��XH��I��H����H��������H����A�؉��(H��H����H��1�H��$0�����H��L��I���"���H��H���A��H��H��������y�H�t$@H��H�����t\L��$H��$�H��$�H�D$0H�D$(H��H�D$ M��I��H������tfH��H��X[^_]A\A]�L���E1�1�H���I��H��L��H���i���I�غH���L9�u�E1��H����Q���I��H��L���/���I��H��L���!���M��L��L������M��I��H��H����Y���fff.�H��I��H��H�����ffffff.�VSH��)�$�)�$�D)�$�D)�$�D)�$H��H��L��$��Q H��
I���AH�T$P�L$P�\��\��Q(�^��A�\��Y��X��Q0�D$X�AH��$�H�D$@H�D$8�\�H�L$0H��$�H�L$(H�L$p�Y�H�L$ H���X��D$`������I��$��5�5f.��.f(��D�5�^�fA(�f(��YC8fD(�fD(��EY��DX��X��A\��D^�f(�fD(��DX��A^�fD(��DX�fA(��Qz
�,�����D\��
P5f(��AY��D\��\��D^��DX�fA(��T$P�D$p�DY
5�\��AY��DX��X��D^�f(��A\��EY��Y��AX��Y��X��T$X��D$x�\��Y��X��T$`�F��$��\��Y��X��F(�$�(�$�D(�$�D(�$�D(�$H��[^�fD�D\��
S5fA(��AX��\��X��D^������VSH��I�H�����z>L��H��H�4@H�T$`H�H��I�4@H�4@H�L$hL�D$pH��$�H��H��$�L��$�H�SH��H��$�H�SH�� H�D$8H��L�L$ L�L$`H��$�H�D$HH�D$@�H�D$0�D$(��6
��t8L�KL�CH�
�5H�L�L$X�\$XL�D$X�T$XH�T$X�L$X��	H��$�H�H��$�H�FH��$�H�FH�Ĩ[^��WVSH����H��H��L�Å��cH�VH��$�I���������H��$�H�\$0H��H�D$0H���H�����D�E���DH���H������$����f.�������$�f.��1���f.����
5f.�vf(��^�f.�����f.����%�5�]�f(��Y��Y���$���$�H��$�H���D$8�L$@H�T$0H����H����Hh��~1�H�T�PH��H��9��D�E���NH���[^_���$����f(�f.��^��A����^��R���@L��$�L��$�H�
�5H��$�L�L$(�\$(L�D$(�T$(H�T$(�L$(�{u
H���H���w���H��$�H�H��$�H�GH��$�H�GH���[^_�L��$�L��$�H�
E5H��$�L�L$(�\$(L�D$(�T$(H�T$(�L$(�t
���M�HM�@H�
�5H�L�L$(�\$(L�D$(�T$(H�T$(�L$(�t
�`���H����e	H�
�5H���t
�H���[^_����f(�f.������f.��������@VSH��HH�t$ I��H��H������fW�1���\�H��H���Y��X�u�H��H[^�f.�AW�hFAVAUATUWVS�^
H)�)�$�E)�$�ED)�$�ED)�$�ED)�$FD)�$FD)�$ FD)�$0FD)�$@FD)�$PF��L��$�FH��$�FL��$�F�y �@���s
H��H��$���@H��$�L����L�
g���H�����L��0L��(L��$pBH��8��$�FL��$L��$PBH�D$0H�D$(H�D$ ��L��$0�L��$E1�H��$�FL��������>H;�$�Ft	H����H��$PBH��$�FH��$�BH��$pBH��$H��$�BH��$XBH��$�BH��$xBH��$�BH��$`BH��$�BH��$�BH��$�B��$�F���`H��$�BH�D$0H�\$(H��$�FH��$�BE1�E1�1�H�|$ �������=��$�F������$�F����9��$�F����9H��$�BL��$`BH�
�
5L��$XBH��$PBH�D$0H��$xBL��$���$�L��$�H�D$(H��$pB��$�H��$���$�H�D$ �?q
H��$�BL��$�BH�
�
5L��$�BH��$�BH�D$0H��$�BL��$���$�L��$�H�D$(H��$�B��$�H��$���$�H�D$ �p
H��$CL��$�BH�
B
5L��$�BH��$�BH�D$0H��$�BL��$���$�L��$�H�D$(H��$�B��$�H��$���$�H�D$ �Cp
��$PBL��$�F��$�BH��$�C��$pBL��$�Cf(�1�f(��\��D�$XB�\���$xB��$`B��$�B�D
85�^��Y��X��\���$EfA(��\��Y��X��A\���$Ef(��\��Y��X��\���$ E��$�Bf(��\��^��Y��Y��Y�fA(��X��X��AX���$E�ARL��$E��$�D�\�L��$L��$�DH��$��$�DL��$�L���$�Y��Y��Y��X����Y��X��AH��H���(��빋�$�F����"fW�E1�1���H��H��$��;H��$L��$�FH���h��$�F����H��$�BH�D$0H�D$(H��$H��$�BE1�E1�1�H�D$ ����������8;H�
}	5L�H`A�>��m
H��$��Ln
HDŽ$��E1�L��$���H��$�BH�D$(H�\$0���H��$�BH�D$(H�D$0�P�����$�F���! H��$�CH��$�FL��$�DH��$�DH�D$@H�D$8L��$�H�D$0M��H��$�DH��$�CI��H�D$(L�T$ H��H��$�DH��$�CH��$�DH��$�CH��$�DH��$�CH��$�DH��$�CH��$�D������c:L��$�F�5^5�ABf.�v`H��$�BH��$�DH��$�BH��$�DH��$�BH��$�DH��$�BH��$�DH��$�BH��$�DH��$CH��$�DD��$�FE������$�D��$�Bf.�vt��$�D�\��\��^��Y��X���$�D��$�D��$�D�\��Y��X���$�D��$�D��$�D�\��Y��X���$�DH��$�CH��$H��$pAI��L��$PEL��$0EH��$0EH��$�CH��$8EH��$�CH��$@E��L��$H��$pAL��譔H��$�FH�D$@M��H�D$8H�D$0M��H�D$(L�|$ L�������8L��$�F�ABf.�v0H��$�BH��$0EH��$�BH��$8EH��$�BH��$@ED��$�FE������$PE��$�Bf.�vt��$0E�\��\��^��Y��X���$8E��$PE��$XE�\��Y��X���$@E��$XE��$`E�\��Y��X���$`EL��$�FA�B8����t����H��$�DH��$�D����$�D��$�D��$�DH��$�C��$�DH��$�C��$�C��$�C��$�C��$�C�1��$�CH��$�CH��$�C��$�F������$pBH��$��$PBH��$f(�1��\���$xB�\�fW��^��Y��X���$E��$XB�\��Y��X���$�B��$E��$`B�\��Y�f(��X���$ E�H��H���\�f(��\��Y��Y��X��X�t��$�A���Q�f.���5�Q�f.���5f(�H��$H��$�L��$1��^��A��\��Y��X��H��H��u�D��$�FE���!H��$�L��$�I��H��$L�d$ H��H�����H��$�L��$�M��L��$H��H��hL�T$ H����L��$0H��$CH����L��$H��$0CH����H��$PCL��$�BH�����H��$pCL��$�BH�������$C��$�Cf.���L��$�FfA(�fD(��AB�\��Y�f(��Y��X���$0C�D�$�CfA.��'L��$�FfA(�f(��AR(�\��DY�f(��Y��DX�f(�L��$0DfA(�H���\�L���\��^��Y��X���$C��$0D��$8C�\��Y��X���$@C��$8D��$ C�\��Y��X���$@D����$CL��$PD��$0CH��f(�L���\��\��^��Y��X���$C��$PD��$8C�\��Y��X���$ C��$XD��$@C�\��Y��X���$`D���D�$�C��$�Cf(�fA(��\��D�$�C�\���$�C��$�Cf(��^��Y��X��A\���$pDfA(��Y��\��AX��Y���$�D�X��A\���$xD��$�C�Y��\��AX��Y���$�D�X��\���$�D�Y�fA(��\��X���$�Df(��A\�f.���f(�1��Y
$
5fA(��_
5L��$�F�\�fA(�1�I�$@H�$@�\�H��?A���D�$�7L��$08�X��Y���$�7��$88H��$�8�D�$�8H��$�9DŽ$�Ef(�f(��X��Y�	5��$�8�A\���$09�\��Y%�	5�X��Y�	5�X��AX��X��\�f(���$�9��$0:�\��Y�fA(��\��^�f(��X��]�f(�fA(���$�9�\�f(�f(��\��\��Y�f(��\��^��X�fA(��_�f(��AJ0��$�:f(���5�Y���$(:f(��Y��Y��Y���$�:覗H��$�H��H�����/I�{�G�zt?H��H�@Y@L��$ AL��$ AI�@H��$�?H��$0@H��$�@L�L$PL�T$HH��$0@L��$�@L��$�?L��$�EI�Y@H�T$8H�L$(L��$�@L�L$ 1�HDŽ$�@H�D$XA�L�T$@L�t$0L��$�7H����h����H��$�H��$ >��$ >H��H���H�����H��$p>H��$�H���D�$ >H��$@BH���H�����H��$p>H��$�1��D�$0BL�
��L��$0B��$8BH��$HBH���H�������$�F���H��1�A�H��$�?H�@Y@�H��$0@H�Y@HDŽ$�@H��$�@裕H��$�H��H�����-H��$�L��$�@L��$�@H��$0@L���H��$�?L�L$@H�T$(L�T$81�H�L$ L�t$0L�
:�H�������t$H��$�H���H���H���H���L��$0H��$�H��$�CH��$DH����L��$H��$�H������$�F���U
L��$�FM��L��$�+H��$H9�$�F�
H��$�H����H��H��$ �},L��$�F�z5�AJ@f.����AJHf.���H��$G�g*H��$H9�$ tH��$ ���L��$�FL9�$tH��$���H��$�FH9�$tH��$���H��$�(�$�E(�$�ED(�$�ED(�$�ED(�$FD(�$FD(�$ FD(�$0FD(�$@FD(�$PFH��hF[^_]A\A]A^A_�D��$GL��$�FH�@L��$ H��$1��D$(H�|$ D�T$0��XD��Ic�D��$�H��H��H���]
H��H��$@D��$��+��$�CfW�f(��\�$�C�Y��X���$�Cf(��\�$�C�Y��X��Q�f.��O+��$�CH��$@�D�$�C1���$�C��$�CfD(��D�$�C�A\��D�$�C�D\��D�$�C�D\�fD(���$��E\���$�H��$H�D\�fE(��D\�H���*�1��^5�L��\��Y��X��H��H��u��f.5�5f(��RP�\�f(��A^��A^�f(��AY��X���$PE��$��Y��AY��AX��X���$XE��$`Ef(��AY��X���$0EfA(��Y��AY��AX��X���$8E��$@E����$�fA(��X��\�fW��^�f.�wf(�fA.���5��f(��Y��AX�1��A�AL�Y��Y��X��DPH��H��u׃����A9��<(H�¨�������H�D�����cLH�D�����c�H�D�����c�H��$�@H�D�����cLH��$8@H��$ AH�D�����c�H��$@H��$0@H�D�����c�I�D�����cLH��$�@H�D�����cLI�D�����cLH��$�@I�D�����c�H�D�����cLH�D�����c�H��$�@H��$(AL��$�@L��$0A1�L��$@@H��$�@�1���� Af.�v	�� Af.��@v	���@H��H��uŃ�H�¨��u�H��$D��$�M��L���D��$�1��AD�� Af.�v	�� A�Af.��@v	���@H��H��u�H��$Gt]H��$GtRH��$GH��$G0���� Af.�v	�� A�f.��@v	���@H��H��u�H��$�FD��$�M��L�����D��$�1��A���@f.�v	���@�ADf.�0@v	��0@H��H��u�H�`�
H��$PD��$��C���mH��$�H�4�
H���|C���NL��$pH��
L��L��$��UC��L��$�D��$��H��$�FH��$*H��$PI��H�Ap�Q`L�D$(H�D$0H�AhH��D��$�H�D$ �GL��$�FD��$��Ay`�AQhf(��AIp�X��X�f.P�4�cfA(���$�F�$�Ft'D��$�F��$�FH��D��$��ED��$�H��$0@H��$�@L��$�@H��$ A�|$xI��������?H��$���$GH�@H��$�H��$�FL��$�H��$��T$p1�DŽ$�L��$�H�l$hD��$�F�AHH��$�FL��$f.B�4���D$`1��A@f.,�4���D$XH�AXH�D$PH�APD�L$0��$�FL��$ H�T$ L��H�D$H��$�FH�t$@L�d$8D��$��D$(�RH��H��$(D��$��v#H��$G��!H��$GE1��D��$���H��H��D��$��/#�W�	H��H��D��$��
#D��$�H���4H���P@H���4H��UX��D��$��u!D��$�FE���o"���
���8E1ɉ�$�L�%ٳ
�5��4E��D���j�I�D$�H��$0EI�D$�H��$8EI�D$�H��$@EHc�H��L�
W�
H��I��8f(�H)�H��L��M�D �����A�D$ȅ���
��u�Hc�H��H��H��$�H��H)�H�
��
L�DH��$�L�����H��$��v���fA(�fA(�fW��D���f�f(���4�Y��X���4�\��Y�f(�f(��X��Y��\�f(�fA(��Y��\��Y�fA(��X��\�����f(ǿfA(�fD(�fA(�fD(�f(���fD.���L��$�FfA(�f(��Az �\��Y�f(��AY��X����f.���L��$�FfA(�f(��ER�A\��AY�fD(��DY��DX��@���$�FH��$0EH��$PEL��$8EL��$XEL��$@EL��$`E��H��$�CH��$�CL��$�CL��$�CL��$�CL��$�C�������$�C��$�CH��$�C��$�CH��$�CH��$�CH��$�C��$�F���.�L��$�CH��$�C�L$ L��$�Cf(�H�
��4L��$�H�D$0��$�H��$�CL��$���$���$�H��$�H�D$(�S
��$�C��$�C��H��$�F�w��$GH�
b�4��R
H���^��H�
g�4�R
�M��H��$H��$ ��H��$ DL��$DH�
��4L��$�CH��$�CH�D$0H��$DL��$���$�L��$�H�D$(H��$D��$�H��$���$�H�D$ �7R
�(�L��$@BH��$HB��$�L��$�f(��DD$ H�
O�4L��$���$�H��$���$���Q
H��$�H����$ >H���H�����H��$p>H��$�H���D�$ >H��$@BH���H�����L��$@BH��$p>��$�L��$��DD$ H�
��4f(�L��$���$�H��$���$�H��$HB�Q
�����;H�
�4L�H`A�G��P
���H��$EL��$ EH�
k�4L��$EH��$EH�D$0H��$�DL��$���$�L��$�H�D$(H��$�D��$�H��$���$�H�D$ �tP
H��$�CL��$�CH�
%�4L��$�CH��$�CH�D$0H��$�CL��$���$�L��$�H�D$(H��$�C��$�H��$���$�H�D$ �O
H��$�L��$�I��H��$L�d$ H��H���ʿH��$�L��$�M��L��$H��H��hL�T$ H��蛿L��$0H��$CH����L��$H��$0CH���۾H��$PCL��$�BH���þH��$pCL��$�BH��諾L��$�CL��$�CH�
$�4H��$�CL��$���$�L��$���$�H��$���$���N
H��$@CL��$ CH�
�4L��$CH��$CH�D$0H��$8CL��$���$�L��$�H�D$(H��$0C��$�H��$���$�H�D$ �fN
H��$�CL��$`CH�
��4L��$XCH��$PCH�D$0H��$xCL��$���$�L��$�H�D$(H��$pC��$�H��$���$�H�D$ ��M
H��$�CL��$�CH�
��4L��$�CH��$�CH�D$0H��$�CL��$���$�L��$�H�D$(H��$�C��$�H��$���$�H�D$ �jM
�
�H��$�CL��$�CH�
�4L��$�CH��$�CH�D$0H��$�CL��$���$�L��$�H�D$(H��$�C��$�H��$���$�H�D$ ��L
�\��fD(�f(���f(�fD(����X;H�
��4L�H`A�#��]L
H��$�H���H����XH��$�H���H����XH��$H9�$ tH��$ ���L��$�FL9�$tH��$���H��$�FH9�$tH��$���H��$��hL
HDŽ$�����Y=�
�Yߡ
�Y
Ϟ
�X��X��}�H��$�DH��$�FE1�E1�1�H�D$0H�D$(H��$�DH�D$ ���L��$EE1�E1�1�H�D$0H��L�T$(L��$�DL�T$ ����
��4��$�D��$�D�X�f.�w��$�D�\�f.�$E����H�
6�4��J
�r����$�E��D��$�EE���]L��$(H��$�E1�H��$8D��$�H��$�FL��A��H��$@��F�����u@�_uHH�VH�NpL�FPf(���Ic�H��H��H�VH��H�H�VpH�PPH�VH�PH�VxH�PXH�V H�PH���H�P`H���H���A�D$9�$��j���u	D�^E��uIA��A��H��@D9�$�E�E����@����u@�K������t���uH�2���H���H���L���f(މ�$��3���$�H�H��H��H���H��H�H���H�PPH���H�PH���H�PXH���H�PH���H�P`H���H���A�T$9�$��THc�A��D9�$�H��H��H���H��H�H�PPH���H�PH�PXH���H�PH�P`H���H�������D��$�H�
�4D��E��航	�D��$�D��H��$�H��$8E9���H��$�H��$HE1��5y�4�E1��B�4 A�B6f(��\�f.��B�4�@wf(��X�f.�vK��$�L��$�H�
��4��$�L��$���$�H��$�f(�f(�f(��	�BD6P�B�4�@f.�v
�B�4�@fB.�40@v
�B�40@I��I���:���A��H�ƨA9��#���H��$�H��$�H���H��t	H����XD��$�FE��tH�
d�4�=G
D��$GH�{�G�zt?I�{�G�zt?I�{�G�zt?H��$�?L��$�?1�A��D��$BD��$BD��$BL��$�?�{H��$�L��$�?H��$�@L��$0@L��$@H���L�L$PH��$�@H�T$8L��$ AH��$BH�L$(H�D$X�|$HH�T$0L�L$ 1�L�T$@A��H����h��t��$�F����H��$�H���H��L���H���H����L��$�FfW��ABxf.���H��$�H��$�AL��$0DH��$�A��0H��$�H�W L��$PD��0L��$�FH��$�L�
|��H��$�FI��I�BxH��$�A1�H��$�AH���H�������$�F����
H��$�L��$0DL��H��$�>��0H��$�L��$PDL��0H��$�DL��$pDM��L��H��H�D$ �/�H��$�L�
���I��1�H���H�����H����H�ffffff�?E1�H��$ H��$PEH�ffffff�?H��H��$XEH�ffffff�?L�l$ H��$`E�q�4���H��M��H��$�FH��$PE�6�4H��1�H����$�E����H��$(E1��I��?I��?I��?I��?L��$0EL��$8EHDŽ$@EL��$�DHDŽ$�DHDŽ$�DHDŽ$�DL��$�DHDŽ$�DD�7E��u4D�GL��$�H��E��L�GME�1��I��L�Gp1�H��A��H��@D9�$�E�'���1�A�H��(H���S�ML�
��4L�6�4H�5�4L��$pEL��$xE��H��$�E�H�ED�hE���
D��$�L��$�H��$�EHDŽ$�xE1�DŽ$�f�L�
L�4L��H��$�I��E1�H��L��1�I��L��A�T$h��B�7��I�T$Lc�H�D*8B�����kI��I��t
J��tpE�H��H��$�L��I��H��?I��?H��$8EH��?L��$0EH��$@EE0�f�J�D"HJ��1�HcH��H�H�CH��H��u�I��H��L���~��E��t&I��?M��I��L�T$ H��$�DH���H��$�DI��D9�$�H��$�DH��$�DH��$�DH��$�DH��$�D~	H�U�\���E1�L��H��?I��?I��?M��H��$0EL��$8EI��L��$@Ef.�H�EJ�D0HJ��1�HcH��H�H�CH��H��u�I��H��L��A��0E��t&H��?M��I��H�T$ H��H��$�D���H��$�DI��D9�$�H��$�DH��$�DH��$�DH��$�DH��$�D�[�����$�D��$�D9U~rL��$�H�EB�D��$���$�L��H��x���PL��$�H��$��b���H���H��$@�@
��$�EH��$(�h;��H�����
��t�L�5A�
DŽ$�DŽ$��D5j�4H��$ �D-a�4�5��4�'��$����I��x��$�A�Fȅ��V�����t�uϋ�$����Lc�$����4L��M��L��$�H��I��I)�H�_�
J�|( H��H���_�����H�@�
J�L*H����f(�L��$L��$0I��L��fW
�4L�T$ �������$0EL��$�L��$�DH��$ ?H��?�AXF�H��H��$�DHDŽ$�DHDŽ$�DL��$�?HDŽ$�DHDŽ$�D1�HDŽ$�DfE(�fE(�fE(�fE(���$�D��$8E�AXF���$�D��$@E�AXF�L�|$ ��$E��H��$�DH��$�I��M��L��H�D$ ���D�4L��$�������*�HDŽ$E�Y��A^�f(���/
��$Ef(��0
H��$ ?M��L����$ E��H�D$@L��$pAM��H�D$8H�D$0L��H�D$(H�D$ H������X���L��$pAH��$�EL���荬��$�E��f(��A]��A_�fD(���$�EfD(�f(��A]��A_�fD(�fD(�������EX��
��4�EX�HDŽ$�D�DY%#�4�DY�4�D�$�DfA.��D�$E�,
���4fD.��
fA.��
fD.��
L��$�H��$ ?L��貫��$0EL��$�L��$�DH��$ ?H��?�AXF�H��H��$�DHDŽ$�DHDŽ$�DHDŽ$�DHDŽ$�DHDŽ$�D��$�D��$8E�AXF���$�D��$@E�AXF�L�|$ ��$E臫L��$�DH��$�M��L��L�L$ I���d�A�����H��$�L��$�H��$�EL��$�E1�H��I��I)�H�4�
L��$�J�THH��$��A*�HDŽ$�E�*��Y��^�f(��-
��$�Ef(��-
H��$ ?I��H����$�E�+�H�D$@L��$pAM��H�D$8H�D$0H��H�D$(H�D$ H��������AV1�fA(��\���pA�A�Y��Y��X��H��H��u�I��H��L��覼��L��$�I���H��I��H��L��A��$0L��$�H���
I���H��N�L`��A�A��D9�������H�� �H�� H��A�@B���(A�@B�H��(������$�H�
X�4E���h�	돺H���H��DŽ$������$�D��$�C��$�Cf.��O�f(�1��\��\��^�f(��\�Y��X��AH��H���n��A��L��$�H�L$ H�
��4��$�L��$���$�H��$���$�L�T$(L�\$0�8
L��$�FA�B8����$PEf(��\��\��^��Y��X���$�C��$XE�\��Y��X���$�C��$`E�\��Y��X���$�C���H�
�4��7
�9��H�
��4��7
���H�
6�4H��$�>�7
H��$�L��$0DL����0H��$�L��$PDL��0H��$�DL��$@EH�
�4L��$8EH��$0EH�D$0H��$xDL��$���$�L��$�H�D$(H��$pD��$�H��$���$�H�D$ �!7
H��$�DL��$`EH�
��4L��$XEH��$PEH�D$0H��$�DL��$���$�L��$�H�D$(H��$�D��$�H��$���$�H�D$ �6
H��$�DL��$pDM��L��H��H�D$ 耦H��$�L�
���I��1�H���H�����H��$�L��$0DL����0H��$�L��$PDL��0H�
��4�5
H��$�DL��$@EH�
��4L��$8EH��$0EH�D$0H��$xDL��$���$�L��$�H�D$(H��$pD��$�H��$���$�H�D$ �5
H��$�DL��$`EH�
9�4L��$XEH��$PEH�D$0H��$�DL��$���$�L��$�H�D$(H��$�D��$�H��$���$�H�D$ �"5
��1�1��
���$�F������H��$GH�
�4��4
�q��H���1�D��$����H��$�FH��$�请��H��H��$�����@�:H�
��4L�H`�A�!�E4
H��$�FH9�$�T��]�f���$�C����:H�
�4L�H`�A�=�3
H��$�FH9�$����fD���:H�
��4L�H`A�C��3
H��$��R4
HDŽ$�����H�
"�4D��$��3
D��$��p���R�:H�
��4L�H`A�C��W3
�2�H�
�4E�Љ��I�	H�
��4�=�	1��l���:A�%L�H`�H�
R�4��H�
9�4�	�	H�
�4�	��:H�
X�4L�H`A�!���2
������:A�1L�H`�H�
K�4�L�f(��#
f(��j��f(���#
�j���h�:H�
�4L�H`A���m2
H��$��3
HDŽ$��|��H�
8�4�K�	�#
��$�CD��$�f(���$�C���H�
_�4��	H�
�4��	��$�H�
��4�	��$�H�
��4��	H�
b�4H���֓	H�
/�4H���Ǔ	H�
��4軓	H�
l�4E��D��詓	D��$�H�
��4E��蒓	H�
;�4膓	D��$�H�
W�4��E���m�	�������������H��x)t$P)|$`fW�f.����5�4f.�f(�f(����f(�fT�fU�fV���f(��]�f(�f(��\�f(��\��Y��Y�f(�f(��Y��Y��X�f(��Y��X��Q�f.�zV�^�f(��Y�f(��Y��Y��q�A�(t$P(|$`H��x�f�f(�f.��5X�4�e���f(��h���f(�H�L$H�L$0�T$ �!
�T$ �L$0H�L$H�z����SH��)t$0)|$@D)D$PD)L$`D)T$pD)�$�H���R�Zf(��:fD(��Y��Y��A\8f(��D���D���E\H�A\p�X��Y��DQ�fE.����AP�AX�Y��Y��X��Q�f.����Y��D\��EY�fW��X��EY��AX��\��A\��_�f(��Q�f.�����4fA(��D���\��Y��AX��^�f(��X��Y
�DY���AY�(|$@�Y�D(L$`D(T$p�AX�D(�$�D(D$P�X�(t$0H�Đ[�L�D$(� 
L�D$(fD(�����f(��
�X���f(���
�����UWVSH��)�$�H�t$PH��H�l$pH�BH�yI��H��H�D$`H�H���H�D$XH�I@H�D$P��H�C(I��H��H�����L�C H��H�������f(��tfH�C H��$�H�
k�4f(�L�HL�H�T$8H�T$xH�T$0H�T$pH�T$(H�@L�L$H�\$HL�D$H�T$HH�D$ �D$HH�T$H��-
f(�(�$�H�Ĩ[^_]�AUATUWVSH��h)�$�)�$D)�$D)�$ D)�$0D)�$@D)�$PM��H��H��I�L��H�I�@H�BI�@H�B���EQ�Ay�AA�Ea �EI(�K8���fEW�fE.��cH�t$0H��I��H���|�H�L$PH������D��4I���l$`1����41�fA(�D�P���A�@f(�DD�Mc�O�R�B��@f.�vf(�f.�fA(�vf(�f(��X��X��\�f.�r
�X�f.�w*��I����u��l$(H�T$(H�
��4f(���	Lc�H��L�l$pL��H��H��P��L��@f(�H��L��H����Q1�fA.�M����L��H��H�K��H��L�$�J�&�TUfE.��D$p�5��4�XD$x�DZ�4fA(��E\�fT����f(�f(�fT�fA(�fAU�fV��DY��EX�sfA(��
f(�J��&`L��$�M���DY�H��$�L���Y��TL��L��L���OL��H��L��$���H��`I��L��舚L��L�����fA(���$�fA(��A\��AY��\��Y�$��X���$��Y���$���$��Y��X���$�f(���$���$��\�fT��51�4f.Q�4vf.���X���$��Y��Y��X�f.�����$���$�H��H���AY���$���H�� I��H��腙�(�$�(�$D(�$D(�$ D(�$0D(�$@D(�$PH��h[^_]A\A]��fA.������fA.������fE.��|�����D
,�4fE(�fA(�fA(�fE(��=����\���$�� ���f��X�����UWVSH��)�$�I�I@H�|$PH��H�l$pH�BH�qI��H��L�L$PH�D$`H�H���H�D$X�j�H�C(I��H��H�����D��E����L�C H��H���H���D�f(�E��tfH�C H��$�H�
��4f(�L�HL�H�T$8H�T$xH�T$0H�T$pH�T$(H�@L�L$H�\$HL�D$H�T$HH�D$ �D$HH�T$H�V(
f(�(�$�H�Ĩ[^_]�L��I��H��H���Y����M���@UWVSH���H��$�H��L��H��L��H���LI���D$ (L�L$0H��H����A����~��L�L$��fW�D�T1��!�fA.	w(�BDHf.�sa��I��`D9�t}Hc�L�II����u��BDHf.�r�E1�H��t"H�IH��H�D0H�H�D8H�CH�D@H�CD��H���[^_]�D�@Mc�O�@I���BDHf.�s���I��`D9�u�A�D��H���[^_]�fffff.�H��)t$P)|$`D)D$pD)�$�D)�$��a�yf(��1fD(��Y��Y��\2fD(��D\J�D\R�X��Y��DQ�fE.����b�z�Y��Y��X��Q�f.���fA(��EY�fA(��AY�(|$`�\�fW�f(�D(D$p�X��Y��Y�D(�$��AX�D(�$��\�(t$P�\��Y��_��
��4�X��Y�$��X�fT�H�Ĩ�H�T$H�T$0�\$ ��
�\$ fD(��T$0H�T$H�#���f(��T$0�\$ �
�\$ �T$0�!����ATUWVSH��)�$�)�$�D)�$H�I@H�|$`H��H�BH�YI��H��H�t$`H��$�H�D$pH�H���L���H�D$h�m�H���I��H��$�H��H�����M��H��H��HǃHǃHDŽ$�HDŽ$��IH���k�f.k�4�]�D�����`H��H��f(��T$ �k���H���������H�S0H��f(�H�D$ �?������D�]����Y���(�X��AY�E����0�Y��AY��X���8�X��}L�K L�CH�
\�4H�SL�L$X�\$XL�D$X�T$XH�T$X�L$X�#
L��$�L��$�H�
-�4H��$�L�L$X�\$XL�D$X�T$XH�T$X�L$X�^#
L�� L��H�
��4H��L�L$X�\$XL�D$X�T$XH�T$X�L$X�#
L�K@L�C8H�
��4H�S0L�L$X�\$XL�D$X�T$XH�T$X�L$X��"
L��8L��0H�
��4H��(L�L$X�\$XL�D$X�T$XH�T$X�L$X�"
H�D$pL�L$`H�
��4�Uf(�L�L$XH�D$(H�D$h�\$X�t$XL�D$XH�D$ �_"
f(�(�$�(�$�D(�$H��[^_]A\�@���4H��H���^��)�H��$�H���E1�H�D$ I��H�T$@H��$�H��H�T$8H��$�H�T$0H��$�H�T$(L������.�����$��C���4�Cf.����r�4f.�v��$�f.��f.�������$�f.�������4fT�fT�f(��\�f.����X�f.������H��$��CH���CH��`��fD(��
��4�DY���$���fW��EX��D^��D��G���f.�$������C�C�D��������C�C�D������f�H��$��CH���CH��`�.�f(��D��Y���$��X�$��X��\��4�^������fffff.�fW��Jf.��=�I�Jf.���I�Jf.����I�J f.����I �J(f.����I(�J0f.����I0�J8f.��e�I8�J@f.��A�I@�JHf.���IH�JPf.����IP�JXf.����IX�J`f.����I`�Jhf.����Ih�Jpf.��i�Ip�Jxf.��E�Ix���f.��������f.���������f.���������f.���������f.�rz������f.�rT������f.�r.������f.�s�������������fD����fD����y�������S�������)�����������������Ix���fD�Ip���fD�Ih�i���fD�I`�E���fD�IX�!���fD�IP���fD�IH����fD�I@���fD�I8���fD�I0�m���fD�I(�I���fD�I �%���fD�I����fD�I����fD�I���fD�D$(�J�AY�Y��Y��X��AY�Y��I�J�Y��X��AY�Y��I�J�Y��X��AY �Y��I�J �Y��X��AY(�Y��I �J(�Y��X��AY0�Y��I(�J0�Y��X��AY8�Y��I0�J8�Y��X��AY@�Y��I8�J@�Y��X��AYH�Y��I@�JH�Y��X��AYP�Y��IH�JP�Y��X��AYX�Y��IP�JX�Y��X��IX�J`�AY`�Y��Y��X��AYh�Y��I`�Jh�Y��X��AYp�Y��Ih�Jp�Y��X��AYx�Y��Ip�Jx�Y��X��A���Y��Ix����Y��X��A���Y��������Y��X��A���Y��������Y��X��A���Y��������Y��X��A���Y��������Y��X��A���Y��������Y��X��A���Y��AY���������Y��Y���X��X��������DH�D$0�L$(�Z�Aa�Y��Y��D$8�X��`�Y��X��Aa�Y��Y�Z�Y��X��`�Y��X��Aa�Y��Y�Z�Y��X��`�Y��X��Aa �Y��Y�Z �Y��X��` �Y��X��Aa(�Y��Y �Z(�Y��X��`(�Y��X��Aa0�Y��Y(�Z0�Y��X��`0�Y��X��Aa8�Y��Y0�Z8�Y��X��`8�Y��X��Aa@�Y��Y8�Z@�Y��X��`@�Y��X��Y@�ZH�AaH�Y��Y��X��`H�Y��X��AaP�Y��YH�ZP�Y��X��`P�Y��X��AaX�Y��YP�ZX�Y��X��`X�Y��X��Aa`�Y��YX�Z`�Y��X��``�Y��X��Aah�Y��Y`�Zh�Y��X��`h�Y��X��Aap�Y��Yh�Zp�Y��X��`p�Y��X��Aax�Y��Yp�Zx�Y��X��`x�Y��X��A���Y��Yx����Y��X�����Y��X��A���Y��������Y��X�����Y��X��������A���Y��Y��X�����Y��X��A���Y��������Y��X�����Y��X��A���Y��������Y��X�����Y��X��A���Y��������Y��X�����Y��X��A���Y��AY���������Y��Y���X�����Y��Y���X��X��X��������ff.�AVAUATUWVSH�� 1�I��H���ǁ�ǁ�ǁ�ǁ�ǁ� ǁ�@ǁ�ǁ�ǁ�ǁ�	ǁ�
ǁ� ǁ�@f�ADŽ�H�H=�
u�E����H���I��I���M��I��A���������=t�=u�L��1����H����tËA�M!�9�u�L��H����ǃ���H��H����������T1�f�A�������H�H=�
u�f1�H�� [^_]A\A]A^ËE��t�I��I��=tZ=t=uLL��1��@��H����t2�E�EA!�D9�u�H��L������ǃ�H����u�M��I��A�������u��E���;���I��I����M��I��A�������t\=t����uԃ���t�L��1��D��H����t��A�!�9�u�L��H���+�ǃ��ϋE�������@=���������t���m��������a���L��1��fD��H�����A�����U!�9�u�H��H����ǃ��˸H�� [^_]A\A]A^����s�4A��A�҃�A��A���c�tcI��?L�YI��?L�YI��?L�YI��?L�Y I��?L�Y(A��t1A��t{H�����tnE��u�E��t� u���t�u�A���u�I��?Hǁ�Hǁ�L���I��?Hǁ�L���H�����u������Y��������Y�����X����ATUWVSH��@)t$01�f(�H��H��L��$�L��f.�H�H�LL�f(�L�d$ H���n�H���
u�(t$0H��@[^_]A\�DAVAUATUWVSH��P)t$@1�f(�I��H��L��$�H��$�L��L��$�fDL�H�TI�L�f(�L�l$0L�T$(H��L�t$ ���H���
u�(t$@H��P[^_]A\A]A^�AWAVAUATUWVSH���)�$`)�$pD)�$�D)�$�D)�$�D)�$�H��H��$�H��L��L��$ L��踪H��$PH��������~�-l�4H�
�4��$��D[�4���f(���1���L��I��I��M)�I)�I�D�P��A���A4�EE�f(�Mc�K�)��f.�vf(�f.�f(�vf(�f(��X��X�f(��A\�f.�rf(��AX�f.��4H��H��u��\$8H�T$8H�
�4f(��p	�D
��4L��$PA�E1�H��$�Dt�4fE(��f.�I�T$E��L�l$HH�T$@L��H����$��Z�H�T$@H����$�D���$f.�vfA(�f.�v
�AX�fA(��X�f(��A\�f.�rf(��AX�f.�wVI��I��I��I��t,A��D���_���H��$PH�D$HE1�H�T$@�S������$�����f�L�l$HLc��\�fEW��\��^�fD.���5L�4f(�f(����f(�fT�fU�fV�fD(�H�T$H�D��4L�l$H�DY��X�L��fA(�H��I��H��L�d$PI)�J��H��$P�\�f(�H)�N�L-L��H�T�DY��A\��DL$ f(���E�V�W�DL$ f(�H��Mc�Hc�J��I��I)�H��H��N�LH)�H��B���$���4f.�����$��\η4�^η4f.���f(�f(�M��fA(�H���Y��X�H���\�f(��Y��\��T$ f(����H����[@�S8�K0���L��$0A�q8���<H��$0��H��$ �f.��\��NL��$0��4fW��A���\��^�fA.��A�Kpf(�fE(��\�f.�vfD(��D\��DX��D^��KXf(��=ɶ4�\��X��X��^���S`fD(�f(��\��X��X��^��i�f(�fA(��A\��AY�fD(��DY��AX�f(��~
f(��\��Y��X��X��^�H����SP�KH�`���(�$`(�$pD(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_��H��$0����\��^�fA.�������
��4fW��Kx�w�f(�fD(��C`�=��4�\��X��X��^�f(��X��ShfD(�f(��\��X��X��^��5�f(��AY��A\��AY��X��Y�f(��\��X��Y��X��^�����L��$ H��$L��H��H���:yH��$ H��芤�=Z�4H��$0��$01�f(�E1���h��L��$0��@AD�f(�Hc�H�Lm�A��@f.�vf(�f.�f(�vf(�f(��X��X��A\�f.�r�AX�f.�����H����u��l$8H�T$8H�
\�4f(��j	f(�H���fD(�M���\�L���^��D\�f(��DL$ �8�H����DL$ I��f(�H�������fDf(��A��fT����L��$0Lc�H��L��L��$@H��I��P�#�H��$0f(�H��L��L��@�5-1�fA.�H��$0��M��H��H�K��H��H��H���L���y1L��$0K�d�A��AL�PH�Dm�\��AD�P�\��Y�$@�Y�$H�X��X����f.�fA(��5;�4����fffff.�WVSH��PH��H�IHH��L�K@H�T$0L���D$(H�\$ ��������f(������$0�\����\���4�^�����\��Y��X�����$8����\��Y���$�X���$��$@f(��X�fT���4f.��_�^��^���$��$H��$0H��H���jH����$H���zjI��H��H���+�H��P[^_����4��$��$�@WVSH��@H�t$ L��H��H������K�C�Y��Y��X��Q�f.�z@�>�4f.�v(�Y �4I��H��H���rm�H��@[^_�f���4��f(��f(���AVAUATUWVSH�� ��$�L��I��M��I��H�����0H������0��L��A��09���M�9�M�9��*��Y�$��Xp�4�,�|jL9�ueL���*�H���*��^��@��$���~�S���A���A)�����A����M��tI�mH�� [^_]A\A]A^�f����fff.�WVSH�� ��H��~5��1�H��H��H��
H��H�H���H��t��
H��@H9�u�H��H�� [^_�
fffff.�AW��AVAUATUWVS�Z�H)�)�$0)�$@D)�$PD)�$`D)�$pD)�$�D)�$�D)�$�D)�$�D)�$���$ H��$(L��L��$0L��$8H��$XH��$@A������H��$8tH��$0H��$8��������$�1�L��$@L��$8H��$�D$(H�5�c
��E�$�H��$0�D$0H��$�H�D$ �}���D��$���$��H��$`DŽ$`D��$xL��$0H��$�H��$�H��H��$�A�B�H���$HL��$�L��$`DŽ$�DŽ$���$�L��$�L�҅��$
H��$0H���E1�H�D$0H�D$(L��$XH�D$ �����t;H�Y@HDŽ$XDŽ$�H��$@H�I@H��$pH��$���$PH�D$0H�D$(H�D$ H�¸����
L��$�H��$@E1�M��������t;H�Y@HDŽ$0DŽ$�H��$H�I@H��$HH��t#H�H��$0H�CH��$8H�CH��$@H��$�H��$0H��P������DŽ$�fW�H��$�H��f(�H���H����H9��X�u�L��$��X�$p�DD�4HDŽ$���D
7�4HDŽ$�I���D3�4L��$�L��$��AY�I���L��$L��$�I��PL��$ L��$�I�€L��$�L��$�I��0L��$(L��$���$�L��$�H��$�H��$���$���$�I����$�H��$�L��$�H��H��L��$�H�D$ I��H����$���$�K�,RL��$���$���$�H��I��*H���voL��$�L��$�H��$�H�\$ I��I��*��Io��$��z�4���mL��$�f(�1�I�������XDPH��H=�u�f(�L��$��A^��A�x����A�`����\��\��^�f.���fA(��]�f(�H��$�I��H���2cH��$�I��H��H����nH��$�I��H��H�����mL��$�L��$�H��I��L����mD��$�E����H��$(H��$��fDL�����H��H���mH��H��H���ߘH����u�Hc�$�L��$HDŽ$�DŽ$�I�H�@L��$�L��$�H��H��H��$I���L��$�H��$�HH��$L��$�L��$ L��$�L��$L��$�f�1�1ۃ�$�t��$�H��$���H�$�L��$�L��L��$�H��$�M����s���Hc�$�H��$Hc�L��$�L��$�H��$�H�$H��H��$�H��H��L���H�[M�,�H��$0M�I�H�EH��A�I�H�EI�GH�EI�GI����I�GI����I�G I����I�G(H�I�G0H�GI�G8H�GI�G@H��H��M���-!H��A��u�H��H���^D��$�E���I��HH��H��HL;�$��Z�����$�H��$��H��H��$��H��$�H��$� H��$���$��P���H��$�H��$��H��$��H��$`H��$ �H��$��H��$(�H��$�����Hc�$��@�H��H��$��"HL��$0L9�$8�fW�E1�1��9�H��H��$��!HH��$�L��$0H��$8��hD��$�D�$x��H��$�Ƅ$�Ƅ$�H��$�D��$�E1�E���*H��$�D��$�1�L��$pH��$�H��$�=�4L��$�H���D
��4H��$��Dȥ4L��$0�A��A��D9�$���H��$�\$ M��I��H��H����H������L9�$tI��H��L��A��$���$1�I��H����$�X�f.��y���Ic�H��$�I��H��H��
H��H�H�$�H�P0H�D$p���H�D$pL��$@I��?H��$L��$�H��$�L���D��$��@HH��H�P(H�PhH��$E���@�@�L���L�@L�@PH���H�HH�HXH���H�P H�P`L���L���L�����A��D9�$�H�� H��PH�)\��(�?L��L��@H��H��HH����V���D��$���$�H��$(D�*�uE����1�E��H��$�H��$��8f�L��$�H��$�H��L�����$h�D$(H�|$ ��H��$p��H��@D9�u�H��$�L��$H��$�H��$�L��$p1�L��$�L�`H���L��$�L��H��$���$hL�sH��$pH�kP��H��$H���H��$H���H��$ L���f��L��L���+^H��$pH��$��C(M��H���H��H�SH��$xH���H�SH��$�H�S H���H���H��H����]L���H�S0�ChM��L��A���H�S0�CHH��@H�S8H��HH�S@H��PH��@D9�����H��$�H��$�1�L��$�H��$��D�4H��H��(I���tL���-]fA(��\�$��^�fA(��\�f(�f.���fA(��]�f(�fA(��\��Q�f(�f.���C����H��@D9���L���H��$�H���e��$�H��$�f.�$��U���H���\�^�$�fA(��\�f(�f.��^���f(��b���H��$0H���E1�H�D$0H�D$(L��$XH�D$ ����������H��H���"�����H�
�4�V	�H��$�L�@H��$��H��$�XfA.�fD(�H�D$p��
L�@PH�HXH�P`���L��$0L9�$�tH��$������$�tH��$����H��$�(�$0(�$@D(�$PD(�$`D(�$pD(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_�L��$�H��$@E1�M���������e��%�E�u�L��$0H��$�H��$�I�I@HDŽ$xI�FL��$pHDŽ$�I�ZHDŽ$HDŽ$H��H��
HDŽ$ H��1�D��$�L�$L��$��L�t5M��I��H�|$ H��@M�nI��(L���cI���H�\$ M��I��L����bL9�u�L��$�H��$�D��$�fD(��=�4L��I��
H��H���D=Ý4L��D57�4L��@fD(�A�@BH��L��$��N�F fD(��Y�fD(��Y��D_���D_���X��Q�f.��@�
a�4f.��?	�^ǜ4f.��	fA(�fA(��A^��A^�fD(�fD(�E1�dž�H��1����H��@D9����c�[ �Vf(��N f(��Y��Y��X�f.�w��C�\��\Ff(��AY��AY��Y��Y��AX��X�f(��\��AY��Y��X�fD.��r����DQ�fE.��-?������9���H���fA(�Hc�fA(�H�I�A\ă���H��H�H��@D9�f(��Y��X��\��Y��H�H�������A���E^֋��A��	�E^�	��������*�A9�DO�H��@H;�$��DX������A*ŋ�$ ����$��=E����A�E�L��$�E1�f(�H��H��H��
H��L�C�����~E��K���H�L@f(�1�H����XLH��H9�u�1��D�^��DH��H9�u�I��@M9�u���$ ���V=�D=�4E���D�$��D�$��"H��$�L��$H��$�H��$�D�4�=,�4L��$p�D�4I��E1�L��$�H��$���$�DŽ$dD��$hL��$pALJ�����AG(�AWhf(��AX�f.���I���I����AGhALJI���I�WI���I�WPI�WI�WXI�W I�W`I�WHI�W(I�W0I�WI�W8I�WI�W@I�W H��$�I�oI��(M�GPH��$��H��$�fE(���]H��$H��$H��$�H��$ H��$H��$�H����L��$�L��$�H�D$HH�D$@�H�D$0H�{�G�z�?H�t$8�D$(�H�D$ H��藬	��u9��$fD.�v)��$�fD(���$8��$���$0�D�$fA(�f(���	�AX�fA(��D�$��$�f(��l�	�AX�����$�����fE.�����$0I���H�I@M��L����$�H��$p��$8��$x�r\I���M��L��H�����A��L��$pL��$xH��$���M��M��I�� �eA��I��@E9��?���H��$�H��$�I�4@L��$�H�4@L��$�H��$�E1�H��(L��L��DŽ$dD��$h�H��$pfE(��[H��$xH��$pH��$�H��$�H��$xH��$�L�{��I�{�G�z�?L��$�H�D$HH�D$@�L�D$0L��$�L�|$8�D$(�L�T$ H���K�	��u9��$fD.�v)��$�fD(���$@��$���$P�D�$pfA(�f(��F�	�AX�fA(��D�$x��$�f(�� �	�AX�����$�����fE.���8��$PL��$�H���I�I@A����$ L��$��$@L����$�ZH���L��$�H��L����H��$H��$H��$ H�VXH��0H��HH���H�NPH��(H��@H�NPH�F`H��8H��PH���0Q�FhH��@E9������H��$�L��$�1�L��$�L��$�1�����f.�v����fA.v�A�D�f.�v��DfA.v�A�DP�Af.�v�A�DPfA.v�AH��H���l�����H��@D9��W�����D�|H���Ic�H�RH����H����H���D�����������Q�f.�����
�����DfA(�fA(��A^��A^�fD(�fD(������_�:H�
�4L�H`A�/��d�H��$���XL��$0L9�$�tH��$������$�tH��$����D��H��$���H��$(HDŽ$�����f(��i�fW�E1�1��P�H��H��$���5H��$�L��$�H��$@��x��$����LL��$0L9�$8��fW�E1�1���H��H���>5L��$�H��L��$@L��$0H��$�H��H�D$ L�T$(���H9�$�H��$�H��$�H��$���$�H9�$��� �$�H9�$@��$�H9�$��� �$��s�L��$8L��$��(�H��$�H��$@H��(����������H��D����x�H��$L��H�D$p�I�A^�H�D$pfD.��m����H��$�H9�$@H��$�Ƅ$���$�H9�$��� �$���I������I���I���M���M���M��M���I���H��I���I���H���1���I���H��H����LI�G0�AG(I��I�G8I��I�G@I�� �����T�:H�
=�4L�H`�A�$�Y�H��$(HDŽ$�����2�����:H�
W�4L�H`A�,���L��$0L9�$����������H��$�H9�$@H��$@H��$�Ƅ$���$�H9�$�H��$��� �$��M�I�I@HDŽ$xHDŽ$�L��$pHDŽ$A�@BHDŽ$HDŽ$ fD(����D�$��D�$���$��D5��4���*�f(��^�$��\��AY��AX��,����ZD�P����A��D��$�A���H��$�A)��*��A*�H��$�1��^���f(��\��Y��X��\���Y��X��H��H��uƋ�$�H�4@I�4@H��$�H��$�L��$����������$����H��$�����H��$����A�؉�腎H��I���01�H�����H��$�A��H��$0������xRL��$0H��$�L������H��$0L��A����H�
��4�D	DŽ$����������H��$�H��$��������.H��$�L��$H��$�L��$pH�D$0H�D$(L��$�H�D$ I��M��L������uVL��$�H��$�L�����H��$�M��L�����H��$�I��H������I��M��H��$�L��A���Ic�H��H��H��H��H��$�d�H��H��$���-E��L��$���,H��$�H��$�H��$�D�4L��$��=9�4H��$H��H��$�H��$P�D%E�4DŽ$��D�4H��$�L��$�H��D��$�H��(H��$�H�EPH��(HDŽ$I��DŽ$dH��$pH��$�D��$hA��WPH��$XfE(�H��$PH��$�H��$`H��$XH��$�L��$�H�ӱ��H�{�G�z�?L��$�L��$�H�T$ H�D$HH�D$@�L�T$8H�D$0H���D$(���	��u9��$fD.�v)��$���$�fD(���$X��$H�D�$PfA(�f(��	�AX�fA(��D�$X��$�f(��ط	�AX�A����$�����fE.��	L��$p��$X��$HH���H�I@L����$xH��$p��$�L�����NL��$pL��L��A���H��$pI��L���)H���L��$I��1�H�����H��$fA(�L��H��`�CM��L��L���fA(�L��L���EH��(��$�H�H��0H�CH��8H�CH���H�CPH���H�CXH���H��@H�C`H��?H���H�èD9�$��)���D��$�H�{�G�zt?A�H��$ H�{�G�zt?�H��$(1�H�{�G�zt?L��$�H��$D��$�D��$�D��$�H��$0�L��$�H��$�H��$ H��$�E��L��$�H�D$PH��?1�L�T$@L��$�H�D$XH�D$HfD(�L�T$8L��$�L��$�L�T$0L��$�L�T$(L��$�L�T$ ��hL��A���H��$����=��4H��$�H��$�DŽ$�fD(�L��$�H��$�D���1�E1�HDŽ$PHDŽ$pHDŽ$�HDŽ$�E��HDŽ$XHDŽ$xHDŽ$�HDŽ$�HDŽ$`HDŽ$�HDŽ$�HDŽ$��tH���L��A��H�H��H�(�D@fA(�H�U�Q@H��$�M��H����H�UPfA(�L���-@H��$�M��H�������D9������fE(�1�fE(�E1�H���H��$�L��A��H�H��H�(�D@L�}H��PM���L��L���7fA(�L��L���?H��$pM��H���DH��$�L���tB�AY�H��$�I��L���DX��GL��L����fA(�L��L���L?M��H��H����H��$�H���BD9���AY��DX�����fA.�wfA.�v
fE(�fE(�1�f.�pwf.<v�D�p�D$H��H��u�H���L��$pH��H��@����$�D9�$��{���L��$�H��$�L��$��D
�4L��$P�D�4D��$�DŽ$�L��$�L��$�H��$E���}H��$�fD(�fD(�1�1����HDŽ$`HDŽ$XHDŽ$PHDŽ$�HDŽ$x��HDŽ$p��E1�E1�DH���H��$�A��L�I��H�(�xf(�H�U�=L��$�L��L���.��EPH��$pL��$��Y�H����$���H�Y���$��Y�P��$���D9���a���H�SH��$�M����H��$�L���H���6�H��$�L��$pH����Q��f.��fA(�H��$�H�kP�\�H��I���=H��$@L��$�H��$����fA.���L��$���H���L����<H��$�H��@H��$�H��HH��$�H��PH��@D9�������t	�*��D^���$ ������$���$�����$����H��$�H��$�H��$�H��$�H��$�H��$�H��$�H��$����H��$�fA(�H��$0�=H��$@L��$�L��$0H��$��5�����t5H��$�H��$�H��$�H��$�H��$�H��$����H��$�H��$����>H��$�f(��DX��A_�H��$�H��$�H��$�H��$�fD(�H��$��I�����������fD(�1�fD(���������%�:H�
�4L�H`A�,��*�L��A���L��$0L9�$�������1�E��L��$�H��$H��$�~IH��@H���H�KP��H�CPH��HH��H�CXH��PH�C`�<�ChH��@D9�u�H��$�X�H��H��$����E����H��$�L��$�1�H���=Q�4L�WP��L��$�L���D
�4L��$��D��4I���H��$@1�I����f.���H�FPdžpH��XH�FXH��`H�F`H��h��Hdž�Hdž�Hdž�Hdž�H��@D9��H��$@1�L�FH�^P���f.��W���H�FPH��$�H��H��$�H�FXH��$�H�F`H��$����H��$�fA(�L���:L���H��XI��H��H�D$pL��A���H�D$pH��H���H;H���H��$0I��M��fD(��	�������džp�����$���$��DD$0�D\$(E�MH�
s}4A��)��*��^�$�D$ �������L��D��$�L��$�D��$�HDŽ$�DŽ$�L��$�H��$E����$E����H��$�H��$�1�H��H��L���I��?��L���L�L���L�@L���L�@L��@L�@PL��HL�@XL��PH��@L�@`H�D9�u�H�{�G�zt?A��H��$pH�{�G�zt?1�H��$xH�{�G�zt?D��$�D��$�D��$�H��$�H��$��<L��$���$�H��L�|$PE��H�D$X�D$HL��$�L�T$@L��$�1�H��L�T$8L��$�L�T$0L��$�L�T$(L��$�L�T$ ��hL��$�M��E1�E��I��H��I���H��$�H��I��xH��$�I���H��$�I���D�L$pL�T$hH��$����H��$�H��$�H��$�I���H��$�H��$�I���I���H��$�H��$�H��$����H��$���{4H���\7I��XM���H����H��H���4D�L$p�A��I��@L�T$hA��E9������fD(�H��fD(�L��fD(�E��fD(�M��f(�E1�fD(�fD(ދ���|4��~O��H���L�D@1�I��H�����AX��YDH��L9�f(����fT��_�f(�u��A\�D��$�E������H��xH���DX��E4L��XH��H������*�$��^
*{4f(���z4�\����f.��+�Y�{4�Y
�{4�X����f(�f.��
�A_��X=Qz4�DX�fD(�L���H��$0H���T$pA���~�H��$0�T$pH���3H���L��$0H���!�H�EPI��?L���H�H�EXH�GH�E`H�GH���H�GPH���H�GXH���H��@H�G`H�ǨE9��>�����$����$��H��$�H�{�G�zt?H�{�G�zt?H�{�G�zt?H��$xH��$�A�1ɺD��$�H��$pD��$�D��$��-L��$�I��?1�L�D$HH��H�D$XL�|$PE��L��$�L�T$@L��$�H��L�T$8L��$�L�T$0L��$�L�T$(L��$�L�T$ ��hE���fH��$�1�H��$����H��@D9��?��p��u�H�CPH��$�H��H��$�H�CXH��$�H�C`H��$����H��$���H��H��H���H��$�H���H��$�H����g1H�SPH��@I�����V������f.�s�Y�x4�X�H��xH������DX��1L��XH��H�����
�x4�w4�Y��f(��AY��Y��X�f(�����f(����fW�w4�D\��DX>w4�A_�fD(����H��X��$ �����w4�D^�$fD.��,
�E^�f.��
�D^��D\$`L�L$`H�
�u4�DT$`L�D$`�|$`H�T$`�DL$8fA(��Dd$0fA(��Dl$(f(��DD$ ����$���$��c���H��$�H��$fD(�f(��!�E���L��$�1�L��H��@H���H�KP��H�CPH��HH��H�CXH��PH�C`�s2�ChH��@D9�u�H��$�1�H�H��H��H�HH��H�H H��H���H�HH���H�HH���H�H H��H�H(H@D9�u�L��$�DŽ$��D%�u4�D�u4�D
gu4���$�I��@D9�$���I�t$I�\$PH��$0A�D$A�D$I��H��IDŽ$��e�H��$0�8.fA.�fD(�v�H��$ H��$�L��$�I��H��H�D$@H��$H�D$8H��$H�D$0H��$H�D$(H��$�H�D$ ������*���H�I@H��$@HDŽ$XH��$P��$PHDŽ$`L������tL��$p1�L��L��$�H�T$0E1�1�L�\$pH�D$(L�D$ H��$@E1�A�҅�L�\$p���D�t4�=5t4��$f.�����$f.t4���D-�s4��s4�A\�fT��A\�fT�f.��g
A�D$A�D$����H���X���fD(�1�f(�fD(�fD(�fD(��DNs4A�v����E���HDŽ$ HDŽ$HDŽ$HDŽ$�HDŽ$xE��HDŽ$pfA(�fA(���1�1�I���H���H�H��L� �DhfA(�I��$��%,H��$�I��H�����I��$�fA(�H���+I��L��L����A9�����$��$ �Y��Y��X��DQ�fE.����$x��$��Y��Y��X��Q�f.����A^�L��$�I���H��fD(��K���$�M��H��H���AY��DY�$��$��D�$���I���H���.H��$�f(��X��A_�I���H��$��EX�I���H��$fD(�I�����I��@D9�����fD.�v�A^�D��$ E��t,�|$`L�D$`H�
�p4�DD$`H�T$`f(�fA(��w�D��$�E��E����H��$��7	L��$0H��H��$@E��1�A���D��$�H��$0�D�p4DŽ$��D�q4DŽ$�A���D
Pq4D��$�D+�$�DŽ$�H��$�D��$����9�$���9�$���9�$�}��$����n;�$��a9�$��T9�$�G��$����8;�$��+9�$��9�$L��$�L��$�H��$H�P�N9�$�����H��H9���H��$(H��$�D�"��XH��$���XL��$0L9�$�tH��$������$�tH��$����E��~PA�D$�H��$�H��H��H��
H��H�1�HD�HD�HD�H@H9�u�H��$(D�"���D�0����D;�$���Ic��*�$��A\�H��H��
L��$�H��H��$���H�H�$�1�L��$��*�L��$��A�AB�\��^��Y��X��DCH��H��tL��$B��L�k1�H��M���fD.��F���L��$�L��$�H�I@H��$pH��$pH��H�4@M��H��L�T$ H��$�H�4@�D$(H��$�H�oHDŽ$xHDŽ$�L��$PHDŽ$HDŽ$HDŽ$ DŽ$dD��$hH��$pH��$�L��$��0���M��H��H�����L��(M��I��H��fA(�L��$�L��$�H��$�L�T$ �:2L���L��$�I��L��H�l$ L��L��$��2H��$�I��L���m1H��$X�D�m4DŽ$�H��$�H��$`H��$�L��$�H���L��$�L��$�H��$(H�D$HH�D$0H�{�G�z�?H�D$@L�T$8�D$(��H�D$ ��	��uj�D�$(fA.�vYH��$�H��$�M��fA(�L��H��$`H��$�H��$XH�I@H��$P�v0M��H��H�������$���$���L��$�H��$�M��I��H��L�T$ �0L��$�H��$�I��L��H�l$ �0H��$�I��L���/��$�H��$`�D�$XH��$��D�$������fA(�fA(��J�	�AX�fA(��D�$���$�fA(��#�	�AX���$��G���H�
Ij4�!	����fA.��8H��$pH��$�H��$�H��$xH��$�H��$�H��$�H��$�H��fD(���H��$���$�f(��SPH�CXH��$�H�C`1�L��$���\��A\H��H���Y��Y��X��DX�t�TP��fD(����fD(�����Q�f.�{	�-�f(��AQ�f.�{fA(���f(���i4f(����fT�fU�fV��^�fA.�w�Y����A����$���������H�:H��$�L�H`H�
i4A�,��E�M��H��H��������H�{�G�zt?A��1�H�{�G�zt?I�{�G�zt?D��$�H��$pD��$�L��$xD��$�H��$����L��$���$�H��H�D$XL�|$P�D$HE��L��$�L�T$@L��$�1�H��fD(�fD(�L�T$8L��$�fD(�fD(�f(�L�T$0L��$�fD(�fD(�L�T$(L��$�L�T$ ��h�z�H��$0H���k$�EX�fD.��:�H��$0H��XH��$8H��`H��$@H��h����$��X���H��$萼H��H���7��E��~_H��$�1�L�B��L�L�BL�@L�B L�@L�BPL�@PL�BXL�@XL�B`H��@L�@`I��?L���H�D9�u�D��$�H�{�G�zt?H�{�G�zt?H��$xH��$�H�{�G�zt?1�A��D��$�D��$�D��$�H��$p���L��$���$�H��$�H�D$XE��L�|$P�D$HI��L�T$@L��$�1�H��L�T$8L��$�L�T$0L��$�L�T$(L��$�L�T$ ��hH�����`���f(�軬�*�豬fD(����I��$�1�I��H�����I��$�f(�1�I��H�����f.��_���$fA(��X�$�AY��\)f4�Y�fA(��AY�f.��T��=�f4I�D$P��$hI��$��DY�f4fA(��Y�I��$�I�D$XH��$0L��H��$PA�D$A�D$I��$�I�D$`�\�I��$��DY��DY��E]�fA(�� M��H��L���?�I��H��H���a�fA(�H��H��� I��H��H����H��$H��$�I��H��$�f(�H��$�I��$�I��$�H�ffffff�?H��$pH��$xI��$�I��$�I��$�L��I��$�I��$�L���OH��$p��$h�Y�e4I��$�H��$xI��$�H��$��A�$�I��$���f.��L��$f.
Ld4�5fA(�fAW��AY��Y��e4�AY�f.��g�fA(��DY�d4I�D$I��$�H��$0�\�$pL��H��$PA�D$A�D$H��������?I��$�I�D$I��$�I�D$ �DY��DY�I��$��E]�fA(���M��H��L����I��H��H���z�fA(�H��H���I��H��H���\�H��$H��$�I��H��$�fA(�I��$�H��$�I��$�I��$�H��$pH��$xI��$�L��I��$�L��I��$�I��$�I��$�I��$�I��$��YH��$p��c4�Y�$hI��$�H��$xI��$�H��$��A�$�I��$���L��$�H��$PL��$(1�H�\$8H�t$0L�L$(L�\$ E1�H���*�����H��$P��$�b4�=b4H��$H��$Xf.�H��$H��$`H��$ v��$f.�w7f.�����$f.�����a4fT�fT��\�f.�vI�D$PL��$�H��fA(�H��H��$���$P��$pf.���H��$x��$PH��$XH��$�H��$`H��H���>fD(����I�D$L��$�H��fA(�H��H��$���$P��$pf.�vH��$x��$PH��$XH��$�H��$`H��H����fD(��d���$�f.��]���H��$���$PH��$XH��$�H��$`�/�����$�f.�v�H��$���$PH��$XH��$�H��$`�m���L��$p1�L����I��$A�D$A�D$I�D$PI��$I�D$XI��$ I�D$`��D��$�H�{�G�zt?H�{�G�zt?H��$ H��$01�H�{�G�zt?A��D��$�D��$�D��$�H��$(�3�L��$�H��?H��$�H�L$HH��$�H��$ E��L��$�1�L�T$@L��$�H�D$XH�D$PL�T$8L��$�L��$�L�T$0L��$�L�T$(L��$�L�T$ ��hL��A���H��$��;��Y���h~:A�/L�H`�H�
�[4�>��H��$�H��$@E1�1�L��A���H��$�H��$0I��H���J���L��$0�L��A���H9�u�E1��L��A��������}:H�
\4L�H`A���޲L��$0L9�$����������}:H�
&[4L�H`�A�/袲H��$(��k����i}:H�
"[4L�H`A���n�1��L���D^�H�
���DL$`H�T$`fA(�芲���H�
6[4�Q�����}:H�
�Z4L�H`A����L��$0L9�$�t�H��$�����x���f(��5��߿���+�fD(�������f(��'���������|:H�
[4L�H`A�,�葱L��$0L9�$��7���@����������������H��8L�L$ H��E1����H��8�DATUWVSH��)�$�)�$�H�\$0H��H��f(�L��H��H�������uqH���fW�L��$��+H�@H��H��H�D$ f(�I��H�����H9�t1H��t�f.>vʋG��t>��I��L��H��t`�����(�$�(�$�H��[^_]A\�f�H�H��$�H�CH��$�H�CH��$��\��������I���DVSH��(�
H��f�H�K8H��t�°H�KHH�C8�C4�C0H��t螰H�CH�CD�C@H��(��u�H��([^��SH��`)t$ )|$0D)D$@D)L$PH���A0�AP�z4�z4�Y��Y��AH�=z4�X���y4�Y��Y��Y5
z4�X���y4�Y��Y�y4�X���y4�Y��Y
�y4�X��X��X�fW�f.�����y4f.��]�f(����iy4f.��]�f(����
Oy4�]�f(��D�y4fA(���fA(�fD(�f(���fA(�f(�f(��ߙ�_y4f(�fA(�f(��Y�(t$ �Y��Y�(|$0�<y4D(D$@�X��X�D(L$P�X���C�KH��`[�f(�f.��1���f(�f.��=���f(��D���ff.�SH��p)t$ )|$0D)D$@D)L$PD)T$`H����x4�Ap�AY�EP�^�x4�X�x4f.�x4��fD(��=�x4�D^�x4�AY��X=�x4f(��D
�x4�^�x4�X�fA.���f(��\5�x4�^5rx4fA(��^�x4�\�f(�fA.����\Rx4�^Bx4�Y5bx4�
bx4��w4�Y���w4�=�w4�AY��Y��Y��Y5�w4�X��ew4�Y��X��ew4�AY��DYow4�X��Sw4�Y��Y
_w4�AX��X�fW��X�f.��<�
�v4�]�f(�f.���
�v4f.��]�f(�����v4�]�f(��D�v4f(�fA(��q�fA(�fD(�f(��^�fA(�f(�f(��L��D�{�C(t$ (|$0D(D$@D(L$PD(T$`H��p[��=�v4�
�v4�X��^=�v4f(��fD(������
�v4�ߖ�p���f.��
�v4�Öf(�� ���f.�f(�f.��
���f(�����f�f(������H��(��	wGHc�H��H���B0��~%H�H��H��H��H)�HB8�@0H��(�H�
YW4H��(�0	H�
W4��	�H��(��	w%Hc�H��H���@0�@@�@PH��(�H�
KW4�	�DWVSH��0��	H���Hc�H��H�4��V@�ND9�}xH�FHHc�M��H��H��A��A�H�HA�H�HA�H�Ht6�Af.�t4r'�@I�QH�PI�QH�P H��H�NjP@�@PH�����T�@H��0[^_Ð�T	H�NH�VDHc�H��t=H��L�D$(L�L$ H��薪L�L$ L�D$(H�FHH��tFH���T�@�B���fDH��L�D$(L�L$ H���Y�L�D$(H�FHL�L$ �H�
JV4�}	Hk�(H�
bV4�TD�i	��E1�����WVSH��0��	H���Hc�H��H�4��V@�ND9�}xH�FHHc�M��H��H��A��A�H�HA�H�@�����Ht6�Af.Ms4r'�@I�QH�PI�QH�P H��H�NjP@�@PH�����T�@H��0[^_�T	H�NH�VDHc�H��t=H��L�D$(L�L$ H���F�L�L$ L�D$(H�FHH��tFH���T�@�B���fDH��L�D$(L�L$ H���	�L�D$(H�FHL�L$ �H�
BU4�-
	Hk�(H�
U4�TD�
	��E1�����WVSH��0��	H���Hc�H��H�4��V@�ND9�}xH�FHHc�M��H��H��A��A�H�@�����@�����Ht6�Af.�q4r'�@I�QH�PI�QH�P H��H�NjP@�@PH�����T�@H��0[^_Ð�T	H�NH�VDHc�H��t=H��L�D$(L�L$ H���L�L$ L�D$(H�FHH��tFH���T�@�B���fDH��L�D$(L�L$ H��蹦L�D$(H�FHL�L$ �H�
"T4��	Hk�(H�
�S4�TD��	��E1�����ATUWVSH��)�$@)�$PD)�$`D)�$pD)�$�fEW�H�l$`H��H��$��Q M��H����$�L���
�S L��H���
f(�H��f(��A��5�p4fT�fU�f(�fV����fD.���H�F�D$@�=Gq4H�D$HH�FH�D$P�C(H��$��L$`H��?I��H��H��$��\�H��HDŽ$�HDŽ$��L$`��$��\���$��n�f(�H��H��H��$��	I��H��H���y�H��H��$�H��$�A	f(�H���rp4H����o4�_�f(��j�ro4H��H���WI��H��H���IH��H���H��fD(���D
0p4fD.����%p41���$����$�I����$ fT���$(fT���$�H����$0f.���f(���� fT�fT�f(�f.�HG�H��$ �����o4fT�fU�f(�fV�fW���� �kH����fD.��7�D
Go4�E��fETʋS�
��H�S���ˣL�KH�
UR4A��訣L��$L��$H�AR4H��$H�K�DL$(L�L$8�\$8L�D$8�T$8H�D$ �n�L��$�L��$�H�R4H��$�H�KL�L$8�\$8L�D$8�T$8H�D$ �+�L�KH�
R4A����L�KH�
R4A����L�L$HL�D$@H��Q4H�D$PH�KL�L$8�\$8L�D$8�T$8H�D$ 転L�KH�
R4A��萢�|$8H�KL�L$8�t$8L�D$8H��Q4f(�f(��r�L�KH�
R4A���G�L�KH�
�Q4A���,��(�$@(�$PD(�$`D(�$pD(�$�H�Đ[^_]A\�f.���L�KH�
iO4A���ȡL�KH�
ZO4A��譡L��$L��$�DL$(H��$H�KH�1O4L�L$8�\$8L�D$8�T$8H�D$ �s�L��$�L��$�H�O4H��$�H�KL�L$8�\$8L�D$8�T$8H�D$ �0�L�KH�
�N4A����L�KH�
�N4A�����|$8H�KL�L$8�t$8L�D$8H��N4f(�f(��̠L�L$HL�D$@H��N4H�D$PH�KL�L$8�\$8L�D$8�T$8H�D$ 蒠L�KH�
�N4A���g�L�KH�
�N4A���L�L�KH�
�N4A���1�����@H�t$@I��H��H�����=uk4H��H��f(��V�C���!�����I��H��H��t ��������fA(�讠fD(����������H�
"M4�	�@AVAUATUWVSH��D�Y1�H��E��urD�QE��u}H�Q�
�z�L�KH�
7O4A� ��W�L�KH�
=O4A���<�H�K裟H�K�ʟ�{�����C��H�Đ[^_]A\A]A^�L�IH�
�N4A����L�KH�
�N4A���͞�{L�KtH�
�N4A��謞�k���H�
�N4A��萞L�KH�
�N4A�
��u�L�KH�
�N4A���Z�����H�;H����H�H�	�H��H����H��H���b��/H���u�H���L�`L�t$ I�x3dom.csfA�D$sM�$H��L�-ki:L��A�Ճ����T$ ���T$`�T$$f�T$d�T$&f�T$f�T$(f�T$h�T$*f�T$j�T$,f�T$l�T$0�T$pH�T$8�щT$tH�T$@H�T$xH�T$HH��$�H�T$PH��$�u��tQH��M4H���НH��H����H�
u#I��A���*�H=�H��趝����I�x3dom.jsA�D$L��M�$H��A�Ճ���;�T$ ���T$`�T$$f�T$d�T$&f�T$f�T$(f�T$h�T$*f�T$j�T$,f�T$l�T$0�T$pH�T$8�щT$tH�T$@H�T$xH�T$HH��$�H�T$PH��$�u���$tIH��L4H���ܜH��H����H�
��I��A��$��6�H=�$uH���Ɯ��uH���œf����H�
|L4H������G����f��\H���C�H�������:H��I���*�H����������H�T$`�1�H���H��N���H�T$`�1�H���H��+���H�
�K4H������h���H�
�K4�����R����VSH��(H�������uH1�H�L8H��t��H�LHH��t�ޛH��(H���u�H�H��t�ěH��H��([^鶛H�
�K4�������A�A ��t5�AY@����A �AY@�B�A �AY�\A(�Bt0���AY��A �AY@�B�A �AY@�B�@��fffff.�WVSH��)�$�fW�M��H��H����$�L��f(�f(��5�d4��fT�fU�f(�fV��:�Af.��+I�A�D$@H�D$HI�AH�D$PH�T$`I��H�����sL�K���tH�
�K4A���řL�L$hL�D$`H��K4H�D$pH�KL�L$8�\$8L�D$8�T$8H�D$ 蛙L�KH�
�H4A���p�L�KH�
tH4A���U�L�L$HL�D$@H�lH4H�D$PH�KL�L$8�\$8L�D$8�T$8H�D$ �+�L�KH�
qH4A����H�KH�K4I���H�K�t$8L�D$8f(�H�K4�ޘL�KH�
MK4A��賘L�KH�
UH4A��蘘L�KH�
JH4A���}��(�$�H�Đ[^_ÐH�
I4A���Q�L�L$hL�D$`H��H4H�D$pH�KL�L$8�\$8L�D$8�T$8H�D$ �'�L�KH�
�E4A���L�KH�
�H4A����H�KH��H4I���ޗH�K�t$8L�D$8f(�H��H4迗L�KH�
I4A��蔗L�KH�
I4A�4��y�L�L$HL�D$@H�%I4H�D$PH�KL�L$8�\$8L�D$8�T$8H�D$ �O�L�KH�
I4A�
��$�L�KH�
�E4A���	�L�KH�
�E4A�����m�����C��t-��H�T$@I��H��t��������������H�H�D$@H�FH�D$HH�FH�D$P���fff.�VSH��)�$�)�$�D)�$�fW�M��H��H����$�fD(�f(�f(��5�`4���fT�fU�f(�fV��J�Af.��;I�PI�@�D$@H�T$HH�D$PH�T$`I��H�����CL�K����H�
nH4A���ÕL�L$hL�D$`H�jF4H�D$pH�KL�L$8�\$8L�D$8�T$8H�D$ 處L�KH�
dC4A���n�L�KH�
AF4A���S�H�K�t$8L�D$8f(�H��G4�D�L�KH�
H4A�7���fD.�v!�DD$8H�KL�D$8fA(�H�H4��L�L$HL�D$@H�H4H�D$PH�KL�L$8�\$8L�D$8�T$8H�D$ �ǔL�KH�
�F4A�
�蜔L�KH�
C4A��联L�KH�
C4A���f��(�$�(�$�D(�$�H�ĸ[^�f.�H�
�G4A���!�L�L$hL�D$`H�F4H�D$pH�KL�L$8�\$8L�D$8�T$8H�D$ �L�KH�
�B4A���̓L�KH�
�B4A��豓fD.�L�L$HL�D$@H�D$PH�KL�L$8�\$8L�D$8H�D$ �T$8��H��F4�|��DD$8H�KL�D$8fA(�H�G4�[�L�KH�
�B4A���0�H�K�t$8L�D$8f(�H��F4�!�L�KH�
�B4A���L�KH�
�B4A���ے�q����C��tF��H�T$@I��H��t&������H��A4跒�W���f.�������DH�H�D$@H�FH�D$HH�FH�D$P�p����H��8�\$ fW������H��8��AWAVAUATUWVSH��)t$`)|$p��	H��L��f(��XLc��D$<K�D�H���H0��~�P@��~H�@H�@�D$<�l$<H��fW�t�Ef.�r
K�D��D�P�CL�K���/�D$<���H�
�E4A��蓑L�KH�
�E4A���x�L�KH�
�E4A�"��]�H�S�
�W�L�KH�
tF4A���4�L�KH�
yF4A�,���K�D�L�4�E�~0E��~hL�d$@1�1�fDM�F8L��H�ك�I�H��8���L�L$HL�D$@H�KF4H�D$PH�KL�L$0�\$0L�D$0�T$0H�D$ 赐A9v0�L�KH�
*F4A��脐L�KH�
F4A���i�H�S�
�c�D�d$<H�^D4H�KL�XD4H��E4E��LE��A�K�D�L�$�E�t$@E��~q1�1��&�T$ D�D$(H�0F4D�����H��(A9t$@~EI�D$HH��P����D�@D�HH�KE��y��T$ D�H��E4��H��(�ďA9t$@�L�KH�
�E4A��蒏H�S�
茏K�D�L�KL�$�A�|$P����H�
�E4A���S�L�KH�
�E4A���8�L�KH�
�E4A�7���A�t$@����1�1�L�l$@�IL�MH�KH�EL�L$0f(��\$0H��E4�D$0L�D$0H�D$ ��H��(�׎A9t$@�tH��t�Ef.�s�I�D$HH��@f.���L�HH�KH�@ �D�T$<E���!H�
�F4A���b�L�KH�
W=4A���G�L�KH�
^F4A���,�K�D�L�KD�D�PE����	H�
�F4A�!��L�KO�t�H�
G4A��I���ڍB�L3@���1�E1�L�KH�
�F4J�<3A��E1�覍H�WHIc�H��D�0E��xH�KH��F4A��莍A��u�L�KH�
�F4A��A��H��(�U�F9d3@�L�KH�
�F4A�
��3�H�S�
�-�L�KH�
�F4A���
�K�D�L�4�A�F0��~jL�d$@1�1��M�F8L��H�ك�I�H��8���L�L$HL�D$@H�EF4H�D$PH�KL�L$0�\$0L�D$0�T$0H�D$ 襌A9v0�L�KH�
!F4A���t�H�S�
�n�L�KH�
F4A���K�K�D�L�$�A�D$P����L��1�1��E0L�d$@��M��DL�H H�@(H��E4H�Kf(Ѓ�H��8L�L$0H�D$ �\$0�D$0L�D$0��9u0~|H�E8H��@f.�s��S������I��L��H���^���H�D$PL�L$HL�D$@L�L$0H�KH�E4�\$0L�D$0�T$0H�D$ ��H��8�n�9u0�L�KH�
 E4A���>��D$<L�KA������H�
E4��L�KH�
:4A���L�KH�
E4A�%���L�KH�
E4A�-��Ɗf.����|$0H�KL�D$0f(�H�R>4譊�{�1L�KH�
�94A���x�L�KH�
:4A���]��DH�
�B4A�!��A�L�KH�
694A���&�L�KH�
}B4A����L�KH�
{B4A����L�KH�
yB4A���Չf.�L�K��H�
kB4A��谉����H�
4>4A��葉L�KH�
�=4A���v�L�KH�
>4A�"��[�L�KH�
#>4A���@�L�KH�
>4A���%�f.�L�K�%H�
>4A�������H�KD�HH��>4D�������@D��C����Mc���J����I��L��H��I)�MD$8���H�D$PL�L$HL�D$@L�L$0H�KH�N?4�\$0L�D$0�T$0H�D$ ��H��(�l�A9t$@�����f�L�KH�
$?4A���-�L�KH�
�=4A����L�KH�
�94A�
��L�KH�
<?4A�!��܇L�KH�
I?4A���L�KH�
M?4A��覇L�KH�
S?4A�#�苇f.�v�|$0H�KL�D$0f(�H�G?4�v�L�KH�
=4A���K�L�KH�
94A�
��0�L�KH�
?4A�����(t$`(|$pH�Ĉ[^_]A\A]A^A_�L�L�D$@L�HL�L$HH�@H�D$P�G���H�
�=4A���L�KH�
-=4A��襆L�KH�
�=4A�0�芆E�\$0E���4���L��1�1�L�d$@�MfDL�H H�@(H�)=4H�Kf(�L�L$0H�D$ �\$0�D$0L�D$0�A���H��89u0����H�E8H��@f.�s��S��tT��I��L��H�������H�D$PL�L$HL�D$@L�L$0H�KH��<4�\$0L�D$0�T$0H�D$ �Ņ�L�L�D$@L�HL�L$HH�@H�D$P�A�D$@���1���1�1�L�l$@�P�L�MH�KH�EL�L$0f(��\$0H��>4�D$0L�D$0H�D$ �Q���H��(A9t$@����H��t�Ef.�s�I�D$HH��@f.�rL�HH�KH�@ �fDD��C���QMc���J����I��L��H��I)�MD$8���H�D$PL�L$HL�D$@L�L$0H�KH�%>4�\$0L�D$0�T$0H�D$ 蓄�=���fDH�
y=4A� ��a��^���@H�
T>4�L��0������H�D$PL�L$HL�D$@���D���H�D$PL�L$HL�D$@�.���H�
�<4A�������H�
94A���ۃ�y�Ic�H��H��H)�ID$8L�L�D$@L�HL�L$HH�@H�D$P�����Ic�H��H��H)�ID$8L�L�D$@L�HL�L$HH�@H�D$P���f.�����L�KH�
�=4A�2��=����L�KH�
�=4A�!����{���I��L��H��I)�MD$8���H�D$PL�L$HL�D$@�^���I��L��H��I)�MD$8���H�D$PL�L$HL�D$@����H�
�64���ff.��[�ff.�E1��H���;�ff.�E1��(����ff.�E1����AUATUWVSH��)�$���	H��A�����AH�Q�
���F��L�KH�
�<4A�
���L�KH�
�<4A���ӁL�KH�
�<4A��踁L�KH�
�<4A��蝁L�KH�
�<4A��肁Mc�K�D�H�,ËE0����1�1�L�d$@� �H�!84��H��8�U�9u0~_L�E8H��L��I��6��CL�L$HL�D$@H�K��H�D$PL�L$8�\$8L�D$8�T$8H�D$ t�H��<4��H��8�9u0��{L�K����H�
74A��軀L�KH�
�24A�
�蠀�sL�K���)H�
m<4A���z�L�KH�
�74A�0��_�K�D�H�,�D�]0E����1�1�L��$�fW�L�d$`�"f.�H��64��H��8�%�9u0~rH�E8H��@f.��L�H H�P(�D$`L�L$hH�T$pD�SL�L$8�\$8H�K�D$8H�T$ L�D$8E��f(�t�H�e;4��H��8�9u0�D�KE��L�K�EH�
�;4A�
��vL�KH�
E14A�
��[D�CL�KE���*H�
�;4A���3L�KH�
�;4A�
���(�$�H�ĸ[^_]A\A]���L�HH�P�C��$�L��$���H��$�t3��M��L��H��t:���H�T$pL�L$h�D$`���f.��D$`L�L$hH�T$p������H�T$pL�L$h�D$`���H�
[:4A���Q~���@H�
a:4A���1~D�CL�KE������H�
M:4A���	~L�KH�
;:4A����}�����H�
�94A����}�,���@��}L�KH�
94A���}L�KH�
94A���}L�KH�
94A���r}L�KH�
�84A���W}����H�
#84�N��ffff.�AWAVAUATUWVSH��)�$���	H��A��E���D�YH�Q�
E�����|L�NH�
114A��Mc���|L�NH�
�74A���|L�NH�
L94A�!��|L�NH�
�74A���|L�NH�
�74A���f|K�D�L�4�E�V0E��~eH�l$@1�1�M�F8H��H���I�H��8�7�L�L$HL�D$@H��24H�D$PH�NL�L$8�\$8L�D$8�T$8H�D$ �|A9^0�L�NH�
,24A����{L�NH�
�-4A�
��{L�NH�
p84A���{K�D�L�4�E�N0E����E��A��1��L�NH�
E84A�
��]{A9^0~UE��tPHc�A��1�H��H��H)�����H��8A9�~*A9^0~$A��H�NH��74��� {I�F8D�D80E��t�L�NH�
�74A����zA;^0�e���L�NH�
�74A�
���zL�NH�
�74A���zL�NH�
64A���zL�NH�
�14A�0��qzK�D�H�,ƋM0����1�1�L��$�fW�L�d$`�S�D$`L�H L�L$hH�P(H�T$pL�L$8H�N���\$8H�T$ �D$8L�D$8H��04f(�H��8�z9]0~pH�E8H��@f.�v����$�L�HL��$�H�P�FH��$����K��M��L��H�������H�T$pL�L$h�D$`�U���L�NH�
�54A�
��hyL�NH�
7+4A�
��MyL�NH�
v54A���2yL�NH�
d54A���y�(�$�H�ĸ[^_]A\A]A^A_��xL�NH�
�04A��Mc���xL�NH�
E44A���xL�NH�
�54A���xL�NH�
�54A���xL�NH�
�54�A��kxK�D�L�4�A�V0����E��A��1�DL�NH�
54A�
��-xA;^0}SE��tNHc�A��1�H��H��H)�����H��8A9�~(A9^0~"A��H�NH�]54����wI�F8�D80��t�L�NH�
L54A�
��wA;^0�g���L�NH�
554A�
��wL�NH�
)54A���ywL�NH�
-54A���^wK�D�L�$�A�D$0��~dH�l$@1�1�M�D$8H��H���I�H��8�1��L�L$HL�D$@H��24H�D$PH�NL�L$8�\$8L�D$8�T$8H�D$ �vA9\$0�L�NH�
�24A����vL�NH�
�24A���vK�D�H�,ƋE0����1�1�L�l$`fW�L��$��\��$�L�H L��$�H�P(H��$�L�L$8H�N���\$8H�T$ �D$8L�D$8H��14f(�H��8�@v9]0~pH�E8H��@f.�v���D$`L�HL�L$hH�P�FH�T$p������M��L��H�������H��$�L��$���$��U���L�NH�
�14A���uL�NH�
q34A���uL�NH�
�14A�
��ju�O����D$`L�L$hH�T$p�"�����$�L��$�H��$��������H��$�L��$���$�������H�T$pL�L$h�D$`����H�
d14����fffff.�AVAUATUWVSH��p)t$`H��H��E��f(�H���0��A��u(t$`H��p[^_]A\A]A^ú	H��E��~;1�1�L�l$ ���x,��A��1�M��H���8M��ź	H��A9��H�|$@H�l$PH���PH��H���X��u_E�����D$@D�T$DD9�}	�D$PD�T$T�L$HA9�}	D�T$P�L$T9�~�L$P�D$TI��	H��0H��H���X��t�E��L��$��	f(�H��uC��h�	H�����f.�I���	H��P�?���f.���H��VSH��(�=��tH��([^�f.�H�
&14�s�
tH��H��t�H�14H��H�5�>:�օ�u�EH��([^�f.�H��04H��օ�t�H��04H��օ�u�
�p���H��04H��օ��\������M���fffff.�H��(�Q���t&��H��04t��H�z04H�j04HE�H��(�������͐H��(�Q���t&��H�P04t��H�N04H�L04HE�H��(�����W�͐WVSH��0��	H���,Hc�H��H�4��F0�V49�}|H�V8Lc�J��I��I)�I�I�M��I�I�PI�RI�PI�R��fW��Af.����ABI�QI�R I�QI�R(H���HA�B0�L�0H��0[^_�H�N8�T�V4Hc�H��H��tTH��L�D$(L�L$ H)��qL�L$ L�D$(H��H�F8H��t`H���D�0�4����H��I�r�v���H��L�D$(L�L$ H��H)��pL�D$(H��H�F8L�L$ �H�
�.4���Hk�(H�
�4�T4���E1��������ff.�H��(�����t&��H��.4t��H��.4H��.4HE�H��(��������fffff.�AVAUATUWVSH��)�$�)�$�D)�$D)�$D)�$ D)�$0D)�$@D)�$PD)�$`D)�$pH��A�Թ���\$8D��H�l$8�lpH��H����H���hoH�H
�WoH��H���H�4���H���H���H���H����H���H����H���H����H���H����H���H����H���H����H���H�4��H��H�V���H��H�X���H��H����H�� H���H��(H�~�H��H���H��0H����H��8H�D�H��@H�&�H��HH�x��H��PH�*��H��XH���H��`H���H��hH����H��pH����H��xH���H���H�v�H���H�����H���H�*���H���H�����H���H�����H���H��H���H����H����	
��������C�s�.���YI��?I�I@L�k L�s(H�H���mH�;�.H���mH��H���4H�+4H��H�=�8:�ׅ������H��H���fmH�H��+4�mH��I��H�C�)�C��������H�
�/4A�'���lL�KH�
�/4A�f���lL�KH�
604A����lL�KH�
�04A���l�{�AL�KH�
�04A�C��nlL�KH�
'14A���SlL�KH�
 14A�K��8lL�KH�
Q14A���lL�KH�
O14A���lL�KH�
O14A� ���kL�KH�
U14A����kL�KH�
V14A���kL�KH�
�04A���kL�KH�
<14A���{kL�KH�
�04A� ��`kL�KH�
%14A���EkL�KH�
�04A���*kL�KH�
C04A���kL�KH�
A04A����jL�KH�
A04A� ���jL�KH�
�04A���jL�KH�
H04A���jL�KH�
�/4A���jL�KH�
�/4A���mjL�KH�
�/4A� ��RjL�KH�
V04A���7jL�KH�
�/4A���jL�KH�
5/4A���jL�KH�
�/4A����iL�KH�
3/4A� ���iL�KH�
�/4A���iL�KH�
:/4A���iL�KH�
�.4A���ziL�KH�
�.4A���_iL�KH�
�.4A� ��DiL�KH�
�/4A���)iL�KH�
�.4A���iH�KH�l$8H�f/4�T$8I���iE����	H�t$@1���H�@I�Y@I�ffffff�?H��I�ffffff�?I�ffffff�?�H�H�5/4H�@H�I@H�Y@I�@I�@H�D$@H�I@H�T$`H�D$XH��.4H�L$hL�D$pL�L$xI��?H��$�H��.4L��$�L��$�H��$�H�Y@H��$�H�I�H��$�H��$�H�@L��$�H��$H�Y@L��$�H��$H�@H�@H��$H��?I�@H��$(H�.4I��?I�I@I�@H�Y@H��$0H�I�H�@H��$8H��-4I��?I��?L��$�H��$PH��$�H��-4H��$XL��$`L��$pI�I@L��$�L��$�H�I@H��$�H��$�H�Y@L��$�L��$�I�@H��$ H�@I�@H��$@H�@L��$8H��$HH�Y@H��$xH��$PH�ffffff�?H��$�H��$XH�ffffff�?L��$�H��$`H�ffffff�?L��$�H��$hH�q,4I��?I�I@H�@H�Y@H��$pH�<,4I�@I��?I�I@H�Y@H��$�H�,4H�@I��?I�I@L��$�H��$H�Y@L��$�H��$ H�@H��$�H��$(H�@H��$�H��$0H��?L��$�H��$8H�l+4L��$L��$H��$xI�@H��$PH�I@H��$�H��$`H�@L��$�H��$pH�	+4I�@H�Y@H��?H��$�L��$��CL��$�L��$�H��$�H��$�������}�CL�K����H�
�*4A����c1�H��Db/4H��H��	I�@H���DT$8L�t$8H)��5/4H�t fW��D
�.4�D#/4fE(��D%/4�H��*4�lcL�KH�
�*4A�
��AcL�KH�
�*4A���&cL�NL�H��*4H�KH�FL�L$8�\$8L�D$8�T$8H�D$ �cL�KH�
�*4A����bH�n H�~H��*4H�KL�n(H�l$8I��I���\$8H�|$8�T$8L�l$ �bL�KH�
�*4A���}bL�KH�
�*4A���bbL�KH�
n*4A���GbL�KH�
X*4A���,bfA(�fA(�fT�fT�f.��
fA(�fT�f.���	�fD.��AY����AX�f(��p-4�AX��\
�,4�\C(�CH�Kf(��T$8f(х�L�L$8�L$8L�D$8�D$ �

H��(4�aL�KH�
�(4A�
��iaL�KH�
�(4A���NaH�KL�F�H�_*4�JaH�KL�d$8H�r*4�T$8M���,aL�KH�
�*4A���aL�KH�
�*4A�.���`H�KH�l$8H��*4�\$8H�|$8�T$8I��I��L�l$ ��`L�KH�
�(4A���`L�KH�
�(4A���`L�KH�
�(4A���d`H��PH�~��m�Dn��C�Dv�H�KfA(��D~��\S(fA(��Dt$8L�L$8�D|$8L�D$8�T$ fA(������H�(4�`L�KH�
5(4A����_L�KH�
+(4A���_H�n H�~H�)(4H�KL�n(H�l$8I��I���\$8H�|$8�T$8L�l$ �_L�KH�
+(4A���h_L�NL�H�*(4H�KH�FL�L$8�\$8L�D$8�T$8H�D$ �B_L�KH�
(4A���_L�KH�
(4A���^����H�
X4�3��f�(�$�H��(�$�D(�$D(�$D(�$ D(�$0D(�$@D(�$PD(�$`D(�$pH�Ā[^_]A\A]A^�H�4H��ׅ��&�H��4H��ׅ���H��4H��ׅ����H��4H��ׅ����H�;H����]H�4���H�
�4A���]H�S�
�]L�KH�
�4A����]L�KH�
�4A���]L�KH�
�4A�
��]H�S�
�]L�KH�
�4A���u]L�KH�
�4A�2��Z]L�KH�
�4A���?]L�KH�
�4A� ��$]H�S�
�]L�KH�
�4A���\L�KH�
�4A����\L�KH�
�4A����\L�KH�
�4A���\L�KH�
54A���\L�KH�
E4A���t\L�KH�
B4A���Y\L�KH�
<4A���>\L�KH�
V4A���#\L�KH�
�
4A���\L�KH�
�4A����[L�KH�
�4A����[L�KH�
�4A���[L�KH�
�4A���[L�KH�
'
4A���[L�KH�
74A���f[L�KH�
44A���K[L�KH�
.4A���0[L�KH�
~4A���[L�KH�
�	4A���ZL�KH�
�4A����ZL�KH�
�4A����ZL�KH�
�4A���ZL�KH�
4A���ZL�KH�
	4A���sZL�KH�
)4A���XZL�KH�
&4A���=ZL�KH�
 4A���"ZL�KH�
�4A���ZL�KH�
�4A����YH�S�
��YL�KH�
w4A����YH�KH�l$8H�k4�T$8I���YL�KH�
04A���YH�S�
�Y��H�Y@H�C(H�C ���@H�
=4A���AYL�KH�
34A���&YL�KH�
 4A�	��YL�KH�
4A�N���XL�KH�
E4A�E���XL�KH�
p4A�
��XL�KH�
`4A�	��XL�KH�
T4A�9��XL�KH�
y4A�>��iXH�KH��4�iXH�KH��4�YXL�KH�
�4A�=��.X�{��H�
I4A� ��X1��=�f�f.�vJfA(�fT�f.�v;�VfD.��AY��6�AX�f(��
m#4�AX��\0"4���FfD.��AY��;�AX�fA(�fA(��AX��X����H��4�WL�KH�
�4A���_WL�KH�
�4A���DWH�KH�l$8H��4�\$8H�|$8�T$8I��I��L�l$ �#WL�KH�
�4A���VH�KL�F�H�� 4��VH�KL�d$8H�� 4�T$8M����VL�KH�
!4A���VL�KH�
�4A���VL�KH�
�4A���uV������D\���!4fA(�fA(��A\��X��{�H�Y@H�C H�I@H�C(��f.��D\�f(���!4fA(��A\��\
!4�(���CL�K����H�
�4A����U�����[��������D\�L�t$8f(��L$8fA(��A\��\�4��D�CL�K��ufH�
W4A���VU���@L�KH�
}4A�>��-U��H�
�4A� ��U��:�H�
�4A� ���T���H�H�
�4��H��1��uU���H�
K4��H��1��ZU����D�P 4�c�H��(������t&��H��4t��H��4H�w4HE�H��(�������͐�������������H�IH���H��f�H�IH���H��f�UWVSH��H�y, baJH��H��tMH�AH�|$ H��H�������L�KI��H��L��A�����H�CI��	�H��H�����	�H��H[^_]�H��XH�|$ H��H���PH�CI��H��H������L$(����<4f.�v�f(��D$(�^�f(��T$ �Y��YL$0�T$ �L$0�Y���ff.�1��ffff.�H�IH��`H��f�H�IH��hH��f�H�IH���H��f�H�IH���H��f�1��ffff.�H�IH��0H��f�AUATUWVSH����A<1�H��H��M�Ņ�~FL�d$ 1��I�D�L����L��H�D$ L��A���	�H�D$pH�D��CH��9G<ɉ�H���[^_]A\A]��ATUWVSH��H�|$ H��H��H�����I��A��H��H������I��H��D	�H����H��	�I��H������p	ƅ�u$I��H��H������I��H��H����	�	Ɖ�H�Ġ[^_]A\��AVAUATUWVSH��L��8H��L��H��A�SdE�KhD9�21���~H��H��9��1�H��[^_]A\A]A^��E��L�T$0~1�@I��I�T�PH��A9��L��$pL��$�H��8M��L��L�d$ M��A�����u.H��8�Pd��~�1�H��H��9���m���f�H��81�L��$�D�ZdE���E�����Jd�CH��9�~|D���8E��t�I�D�L��H��$�H��ޘH�����H��$ L��I�D�I��H��$�H��ޘH�����H��8H��$ �JdI�܍CH��9���������1���94�.f��A�f.�rTI��?L��fDH��9��x���D���8E��t��D��AL�f.�r�H����f.��\�f.�v��\��^�����H�IH��pH��f�ATUWVSH����pH��H�ׅ��D�I@1�H�\$ E��~I��H��H��A9��1�I��H��H�����I��H��	�H���	�I��H��H���	�I��H��H���	�H�Ġ[^_]A\��H�\$ H����I��A��H��H����D	��z���fDH�IH���H��f�H�IH���H��f�UWVSH��(���H�qH��H�ׅ�uu�Q<H�L$ ��~(H�A��I��L���	DH��L9�I�I��u�Hc��I�I��H��H�T� H��$���8Hc��H��ĠH�H��([^_]Ã�ti�Q<H�L$ ��~#H�A��I��L���H��L9�I�I��u�Hc��I�H��$�I��H��H�T� H��hI��H��H��x�t����Q@H�L$ ��~%H�A��I��H���f�H��H9�I�I��u�Hc��I�I��H��H�T� H��$���H����DWVSH�� H��`H��H��H��@I��H��H��HI��H��H��PH��XI��H��H�AH�� [^_H��f.�SH�� H�AH��L��D�E��y)D�AE��x�
H����@�H�� [�f��
H����0�H�� [�f�SH�� H�AH��L��D��
H����8�H�� [��WVSH��H�AH�|$ H��I��H��$�H��H�����H�CI��H��H�����H�H��H������H��[^_�DH�IH�� H��f�AUATUWVSH��hH�AH��$�I��H�T$\H��M��H��$�E1�H�T$@H�T$XH��$�H�D$HH�D$0H��H�T$8H��$�H�T$(H��$�H�T$ 1��(H��t�C �EH��t�D$X�M��t�C$A�EM��t�C(A�$H��t�C,�H��h[^_]A\A]�fff.�L�T$(H��tD�Y<E��~1��D�H��H��A9��M��t&�Q<��~1�f�L����M��H��9��M��t�Q@��~1�L����M��H��9��M��t�Q@��~1�L���8M��H��9����fDL�T$(H��t"D�Y<E��~1�������H��A9��M��t#�Q<��~1�fDL����M��H��9��M��t�Q@��~1�L���(M��H��9��M��t�Q@��~1�L���xM��H��9����fDH�A0H��f�ATUWVSH�Ā)t$ )|$0D)D$@D)L$PD)T$`D)\$pI��H��H�)�ud�����'fEW�1��D
�24fA(�fA(�fE(�fE(��-�fA.����A\�fA(��DX�H���X�9�~&���X�fD.�v�fA(�H��9��D\��X���AT$�\�fD.��~�DE24fA.�v~�A\�fA(��DX��X��324(|$0�AY�D(L$P�At$�\�D(D$@(t$ D(T$`D(\$pH��[^_]A\�fD��H��U@�=����D\�fA(��@��H��UH�fEW�1�fA(�fA(�fE(��7���ff.�H��h)t$0)|$@D)D$P�=t14f(��\�fW�f.���f(��]�f(��Z�Bf.�vB�DB�b f(�fA(�f.�s
f(�f.�r3f(�(t$0(|$@D(D$PH��h�Df(��DB f(��b�f(��\��\��^��J0H�T$(�2H�T$(�
�04f(��YJ(�^�f(�f(��\
�04�\��Y��X��^�f(��^J0�d2�A\��Y��AX��S����f(������SH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�fEW�H���504fD(��D\�fE.���f(��A]�fD(��{�Cf.��M�Dc�D[ fD(�f(�H���D�A\��&���f(�f(�fA(��AX��A\��A\��EX�f(��X�fD.��Y
�/4�
fD.�v�D\��AX�fD(�f.�v�\��X�f(�f.�vf(��\�f(��DX�f.�v%fE(��\��D\��D^�fE.�vfA.���fD.�v%f(��E\��A\��D^�fE.�vfA.���fD.����]�f(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�H�Ġ[�@fD(��Dc f(��D[���fD�X�fA(����f�fE(��e���fDfA(��u���fDf(�H���\����f(�f(�f(�f(��A\�fD(��DY��A\��\�f(��AY�fD(��DY��AX�����f(�H���\��K����EY�f(��A\��AY�fD(��EY��AX�����@VSH��H�AH��H��H�@H���@H�T$ I��H���P0D�V<fW����f.��H���E���U-4f(�f(����fT�fU�fV�~+H�D$(A�R�L�L$ H���
fDH��H9��AXI��u��\�f.�r/�~0KYMC���������H��L� �\��_�f(�E����,4~T1��%�,4�-�,4� Df.�v�\��_�f(�H��A9�~ ��f.�v�fW�H��A9��_�f(���_�f(�H�Ĩ[^��L$8�\��s����D�Q<H�T$ E�������H��H��H��A9�������A*����H�
_4誤�f�ATUWVSH��@D�a<H��H��H��$�E��~?L�d$ 1�DH�D�L��H�D$ H��ޘH�����H�D$pH�ߍCH��9F<�H��H�����H��@[^_]A\�@H��I��H�IH�T$ D�A<E��~1�f��AD��Y���H��A9���B���H�Ĩ�f.�AVAUATUWVSH���)�$�H��I��L�ŋI<M��H��$0H�\$ ��~1�DH��H��H��9��H��8H��H������O@A�ƅ�~E1�J�D�PK��I��D9��M��t>H��8�Hd��~0E1�1�fDF���8J��E��tLcƒ�K�D�I��D9��H��t*fW����f.�r5H��H���I����_�f(��E(�$�D��H���[^_]A\A]A^����f.�s�f(���ff.�H��8E1�L�D$ E1����H��8��AWAVAUATUWVSH���)�$�I��I��M��D�I<E���UH�l$@�5�)4E1�1�H��f.�K����E1ɺA�H�D$@K��H��$�K����H�l$(H�D$ H�������Ā��E�����������H�
�4���H�T$@H�
�4H�T$8�L$8�ܠH��$�H�
�4H�T$8�L$8轠�1�f(�E1��C\����Y�f�f.�vf(�D��A��D9��H�H�ƠH��H��H�D@K�D�A�GI��A9D$<���(�$���H���[^_]A\A]A^A_�1��1���H�
�
4���f�H��(H�mut surfI�CreatingI� Mono gaH��H�IH�AHH�ace not L�Q8H�APH�supporteL�Y@H�AXǁ8�A`d yef�Adt.�AfH����1�H��(�@WVSH���Q<H��ǁ�������~1�DŽ�8H��9��9S@}b�S0��KYMCtMH�C�ǀ8�e8H�KH�r
4I��H��8�>H�C��8H��[^_�f�ǃDH��8H�t$pH�|$ I��H��H����L��8A�Qd��~2�
'41����X��Y���Ð����H��9�؋�l�����{<���C4A�Qhǃ0ǃ4= baL��8��= ZYX��= baJtH��I��L��A��H��8�Ph1��������
[&41�����X��Y����HH��9��1�H��[^_�@1�ǃ0H��[^_�f�ǃ4�H����H��@1�H��[^_�H�
	4蘝L��8�=���fff.�AUATUWVSH���)t$@)|$PD)D$`D)L$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$��imulH�H��SPH���DS%4t�8 ZYX���saemH��SP�=2%4H��fD(�t�8saem�i�tptwH��SPH��t�8 ZYX�H��weivH��H�t$(�Dt$(�SPH��fE(���8weiv���5�$4�t$(H�l$(fD(�fD(�fD(�I��hcetH�ٿ�����SPH��t�8 gist�xHH����X8��tsbauf�(t$@(|$PD(D$`D(L$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]�D��knilt���lcmnt���capst�fW�D�hXfA(�fD(�A������E��fAT�fEU�fDV��DH�
41��D$0�`:H�
4�,:H�t$(fA(��\$(H�

4�Dt$(L�D$(I���D|$(H�T$(fA(��:L�d$(H�
�4L���L$(�9�t$(L�L$(H�l$(f(�H�
�4�T$(I���DL$(H�T$(H��fA(��9�DD$(H�T$(H�
�4fA(��9H�l$(H�
�4H���L$(�9H�l$(H�
�4H���L$(�i9�DT$(H�T$(H�
�4fA(��L9�Dd$(H�T$(H�
�4fA(��/9�Dl$(H�T$(H�
�4fA(��9�D\$(H�T$(H�
�4fA(��8�|$(H�T$(H�
�4f(���8H�l$(H�
�4I���\$(I��H��f(�f(��8���
H�
�4H���8���
H�
�4H���8H�
�4D���w8�D$0�fA.��@���fA.��5���H�t$(�L$(f.�� ������������ncsft2�
��macdt$f��=�� TRCtf����� DMA���������@�D@PL�`h�DHHH��?fE(��pX�EY��E^��A^��`�����PL�����H�@P�weivH���D8H�p�Dp�SPH��������5� 4�t$(���fEW��xp�DY������HL���H���H�@P�DP�9���fD��rtnm� TRCD������ohpr����b��sgmi��������varg����teji�����������atse���������busd�������ohpe����������xawt������:��ncsr�������klis�`��������DCPK�w����� DMP�C����f�����cdiv�Z�����mdiv�&����I�����sffo�=�����vtjp�	����,�����xelf� �����nrpf�������ffff.�ATUWVSH��PH��H�ֹ� E��D���S6H��H����H�xH�pH� E��ǃlǃpH���H�k�ǃ`ǃdǃhH���H�O�ǃxH���H��H���H���H���H��H���H�mH���H���H���H��kH���H�3kH���H��RH���H�g�H���H�i�H���H�{RH��H��SH���H��RH��H�A�H��H�C�H����H�RH���H�aSH���H�CH�K8H�S0L�K4E1��kH�L$(H�D$ H���� H�CH�S@H�D$HH�D$@H�D$8E1�H�T$ H�D$0L�C<H�D$(1�H����(H��H��P[^_]A\�H��RH���H��QH����U���ffffff.�UWVSH��XH��H�ֹ�D���4H��H���~H�hH�pH�eǃlǃpE1�H���H� �ǃ`ǃdǃhH�S0H���H��ǃxL�K4H��H���H���H���H�C�H���H��H���H��!H���H�y/H���H�;hH���H�=	H���H����H���H��QH���H�S��H���H�U��H���H���H���H�I�H���H�+RH���H��RH���H�_�H���H�1WH���H�3�H���H�E�H���H��H���H�y�H���H�;fH���H��RH���H����H���H���H���H���H��H�C8H�D$ H�D$(�� H�CH�S@E1�H�D$HH�D$@L�C<H�T$ H�D$81�H�D$0H�D$(H����(�{<
�{���{@
5H���H�D$ E1�E1�H��H��H��X[^_]�f.�H�KH���3A�
H��8�>1�C@
H�CH��ǀ8���1�H��H��X[^_]�f.�H�KH���3A�
H��8��0�C<
�ffff.�AUATUWVSH��xL��$�H�ωֹ� L��E���0H��H����H�xH�hH�GǃlǃpH���H���ǃ`ǃdǃhH���H���ǃxH���H�q�H���H��H���H�EH���H�w�H���H����H���H��fH���H�}fH���H��LH���H����H���H����H���H�ELH��H����H���H�)LH��H����H��H�m��H����$�����H�@LH���H�b��H���H�C8E1�H�S0H�KL�K4�sH�D$(D�kH�D$ �� H�CH�S@E1�H�D$HH�D$@L�C<H�T$ H�D$81�H�D$0H�D$(H����(��$� baJ����$�HǃXH�S$H�D$HH�D$8L�K(H�D$0H�D$(E1��C H�C,H�D$ H��H�D$@��(H�CH��8H�SHL���L���H�L$ H����@H�CH��xH���L��(L���H�L$ H����H�{$ baJt@�{( baJ��H��H��x[^_]A\A]�f�H����H���H��JH����t���H�`@H�Y@H�`�I�`@I�`�H���H��Hǃ�H���H���L���L���H��x[^_]A\A]�I�Y@I�`�I�`@I�`�H�`@H��Hǃ(L��xL��0L���L��8H���H��x[^_]A\A]�H����L���H��%I�T$p�A\$ M�D$H��H��XH�T$`I�T$hH�T$XI�T$`�D$HH�T$PI�T$HH�T$@I�T$@H�T$8I�T$8H�T$0I�T$0H�T$(I�T$(H�T$ A�$�P��$�E1�H�S$H�D$HH�D$8L�K(H�D$0H�D$(H��C H�C,H�D$ H�D$@��(A�E��C, baJ��w�C$ baJA��t	E���x����C( baJ�l���ffff.�VSH��h)t$@)|$PfW�H��I���yD�I f.�r$E��f(�~1��AX�H��A9��f.��Xf(��Cf.�r�C��xH��A��\��_�f(�E���4~X1���4��4�#�f.�v�\��_�f(�H��A9�~!�A�f.�v�fW�H��A9��_�f(���_�H�H�t$ H��H��f(���h�{$ ZYX���\$ �S(f(��K@�c8�\��\��S0�^��KH�\��Y��X��SP�\��\L$(�Y��CX�X��Y��\T$0�Y��X�f.�w�5D4�Y��@4�X��Y�(|$P�X�(t$@H��h[^��\�f(����H�
�93I��H���|��<����WVSH�� �y( baJH�Ή�L��t[I�I�I�AI�@I�AI�@H�FI��H��H����X�� ZYXtH�� [^_Á~8 baLu�H�
O93I��H��H�� [^_�M�H��XM��H��H���P�K��4f.�v�f(��C�^�f(���Y��YK��K�i���ff.�AWAVAUATUWVSH��)�$)�$ D)�$0D)�$@D)�$PD)�$`D)�$pD)�$�L��$�L��$L��$L�QL��$H��$H��$H��$���$�L��$�L��$�H��I�BL�T$PL��L��$�L��H�D$`I�I�EI�AI�EI�AL��$�I�EL�d$HH�D$@L�t$8H�t$0H�\$(H�|$ A��(��$L�T$PL�T$X����$�= baL��
��$�= YMC�C��= baL���=RLCE����
=KYMC�'	=RLCD��L�T$PL9T$XtH�L$X���(�$(�$ D(�$0D(�$@D(�$PD(�$`D(�$pD(�$�H�Ę[^_]A\A]A^A_�=RLC7t%��=RLCAt��=RLC8t=RLC9�b�����$�H��$`��~%H�C��H��H���f�H��H9�H�H��u�H�L$XL��$�I��L��h��$� ZYX�>��$�����H�|$pE1�E1�H��H�l$hE1�I��H�|$`D���5{4M���=�4I��D��H�\$X�����$���I��I��9��1H��?I��L��I�EH���h��$� ZYX���AI�E��$�f(��\�fT�f.�v�f.�w�A���=8HCM�!=5HCM�����= vuL����D��$�E���[D��$�E���JH��$�1�H�H��$�I�EH�BI�EH�BI�E����=RLC4�S�����=RLC2�B���=RLC3������2����H�
�43M��L��莥������$H�L$`1�D��$�D��$�D$ ���H��H�D$X��
H�L$XL�d$HL��$�H�D$@L�t$8L��$�H�t$0H�\$(L��H�|$ ��(�����$���~<H��$���H��$�H���f.�H��I��?H9�L�H��u����D��$�E�������H�L$XH��$�H��$�I��h�����H�D$X��$I��I��I��?��$�L��$�L��$�H��$���$�L��$8��$��$���$��L��$�H��$H�
?33H��$ ��L��$���4H��H��I�H��$ I�BH��$(I�BH��$0�ĆH�
�23I��H��袣��$���~"L��$�1�I��H��H��9��fW�Lc���$�f.��/�B���B�����$��D
U4f.�fA(�w�*�f(��A\��^���~H�\$p1���H��9��H��$�H��J�D�pL��$@H��$`1�����xV4fD(��W��D�
4I�o�D�
4�=y4fE(�@���L��$���~+H��$�1�L��I��������?L��M��H��9����$�f.�r�B��@f.�v
�B��@��$�f.�������$�f(�~.D�B�L��H��N�D��@H��L9��XH��u���$�f.�v>�*…��^���$�~)D�B�L��H��N�D��H���L9��\��H��u�H��$�L�
T���I����ư>H��$�L�D$ H�D$HL�L$0H�D$@I��H�D$8�D$(�M������u?��$�fD.�v/��$�fD(؅�~1��I��H��H��9��fD(؃�����\���fD.�	4�F��$�1����8fA.�vH��?H��H��9�~��f.�v�H��H��9��H�L$XI��H��$���hL�T$PL9T$XtH�L$X����$� baL�m���L��$�H�
�/3L��表�Q�����c����$�1����*f�H��I��������?L��I��H��9��HDŽ$�M��E1��7fA(�fA(����fT�fU�f(�fV��AUA��I��D9�$�~7fA(�f(��Em�f(��AX�f.�v�I�E�f.���$��"���@fW�fA(��r���$���$���~VfA(�L�D$pH��$�1��\�fD��I��������?�A�L���Y��Y��X��A�H��9�����HDŽ$������$fW�H��?H��$���$���$���$��C�H�L$XL��$�L��h��$� baL����H�
�-3M��L���ʦ���A��H�l$hH�|$`E��M����E���~�������H��$���H��$�H���f�H��H9�H�H��u��Q���= ZYX���= yxY����= BGR�����$����!���H��$���H��$�H���H��H9�H�H��u���H��$�H����=RLCF�'���=YARG�~���H�L$XL��$@H�\$pHDŽ$@M��H���h��$� ZYX�jH�L$XL��$�I��?L��$@M��L��h��$� ZYX��D$p�
,4�„$�fU���$��)���=RLC5�p���=RLC6����`���E����E���„���������HDŽ$@HDŽ$HHDŽ$P�����~;�=4L��$@1�H��L���?�f.�vf(���$���H��9��Lc�H��$K�dH���DpH�f.�4���Dx�
�4fT�f.������p���fT�f.�����~,H��$���H��$�H���H��H9�H�H��u탼$H��?J����������������=RLCB��=RLCC�g������f.��������$����H������H��$�H���H��$�����H��?H��?J���J�������H�
<*3M��L��������H�
%*3I��H���ښ����H�
*3M��L�����= ZYX�P�H�
��3�g{H�
�3�[{H�
l�3�O{���f.�4�����B�������f.�AVAUATUWVSH��H�AL�d$PL�l$0L�t$pL��H��H��L��L��M��H����`��L�t$ M��M�����H���a�C,= baJ��= baLu6H�
%)3M��L���ڙH�
)3M��L���șH�
)3M��L��趙H��tH�D$0H�EH�D$8H�EH�D$@H�EH��tH�D$PH�H�D$XH�GH�D$`H�GH��tH�D$pH�H�D$xH�FH��$�H�FH�Đ[^_]A\A]A^�1�H�����C,= baJ�5���H��XM��L��H���PH��XM��L��H���PH��XM��L��H���P�4���f.�SH�� H�AH��H����H��XH��tH���H��H�� [�
ffff.�SH�� H�AH��H����H��XH��tH���H��H�� [��ffff.�SH�� H��H��t3H�I8H��t�H�K@H��t�H��H�� [�f.�H�� [�f.�WVSH�� �q<H�υ�~EH��1�f.�H���H��t	H����XH���H��t	H����X��H��9w<�H��8H��t	H����XH��@H��t	H����X�_@��~*H��1�@H��HH��t	H����X��H��9_@�H�GH��t	H����H��XH��tH���H��`H��t	H����H��H�� [^_�x�SH�� H�AH��H��t�Q��uH���H��H�� [�FfDSH�� H��H�	�0H��H�� [�#AWAVAUATUWVSH��H)�$0H��f(�f.
��3L�qz�/H��$(E1�E1�1�H�D$0H�D$(H�D$@H��$,H�D$ H��H�D$8�����$,����$(= baJ�Of(�1�= baJH��$�L��$��E1�H��$��&���3H�Ƹ(�^��5��3�D,�A��'DN�E1�D��$D��$1�D��$DŽ$DŽ$DŽ$C�/1��*��A*�\��^��CH��H��t�����5�3����I��H��H���������H��H���H��$E1�B����C;�B���lB��I��I��u�I��I��� ���H��$�L��$�L�d$`H��I��M��L��H�D$X���H�D$XM��L��H��I�����1�H��E1����DŽ$DŽ$1�DŽ$1�1�������u��tRf��*�I����$��*�H����$��*�H����$��������I�غH���1�A������A��~nA��H��H��u�E1��H����(�$0H��H��H[^_]A\A]A^A_Ã��R������I������@���뎋�$����f���$��$��$����H�ing otheH�CreatingI� Gamut sI�FXH�r than DI�urface fI�F`H�evice <-I�or anythI�FhH�> PCS isAdž8I�FpH� not supI�n8I�FxH�ported.M�f@M�nHM�~P1�I������= baL�����H�Jab is nH�CreatingI� Gamut sI�urface PI�CS of otI�her thanH� Lab or H�ot suppoI�vhAdž8I�N81�M�F@M�NHM�VPM�^XI�^`I�~pA�FxrtedfA�F|.�_���A��8M�F8H�
��3��r��AWAVAUATUWVSH���)�$�)�$�D)�$�D)�$�H��$hI��H��$dL�Qf(�H�D$@H��$pH�D$(L��$lL��$xH�D$8H��$tL�T$pH�D$0H��$|H�D$ A�����$p���H��$h= baJ�����"D��$tE��xA����DŽ$tA�H�L$pI���E1�H�D$8�D$(H�T$0�D$ ��Q H��H��$���1ҁ�$h baJf(���E1��H��$�H��I��81�L��$�L�
��L��$�H�������$l= YMC�= BGR�=KYMC����$d= baL�P= ZYX�E= vuL�:= yxY�/��$xE1�1�H��������L��$��N�L��L�T$hL��H��H���H��H9��H��u�fW�L�d$hH��$ H��$@��$xE1Ʌ�~5�C�ψ�C*��C����\��Y��X��B�I��D9���A��f.�s�A��f.��c
H��L������E1�f.�w�J
�C��I��D9�~G��D��A��A��G���9��M���E1��H�����H��$�H�����H��$�H��$�H��$ H��$H��$�L��I��I��A���I��I��H��$�H������(�$�H��(�$�D(�$�D(�$�H���[^_]A\A]A^A_�E1�1�H��H��$ H��$@���1�DŽ$�DŽ$�DŽ$�1�1�A��E������u��te�A*�H��$�HDŽ$8I����$ �*�H����$(�*�H����$0�������I�غH�����L��$�1�E��A��A��E��~OA��H��H��u��d���A��c�O����9����A���H������<������3�����D��$���$���$�����f(�1�= baJfW���E1��I�H��H��$�I��81�L�
�L��$�L��$�H�����H��$�E1�E1�L��H��$�A���H��$�H�����f.������3f.�wI��8���3f.�����g�3��$x�
�^lj�$��,�	N����L��$�D�A�L��L�T$hL��H��N���H��L9��H��u�fD(�L��$@�D
%�31���H��$ L�D$h~5f��A�Lj�A*��A����\��Y��X���H��9���A��f.�s�A��fA.��H��$ L�����1���$xf.���D��$�H�T$h���H��A9���D����A��A��D���;�$�����$x�"���L�T$pI�CreatingI� Gamut sI�urface fH�or anythH�ing otheI�r than DI�evice <-I� not supL��M�j8M�r@M�zHI�RPH�ported.I�JXM�B`1�M�JhAǂ8I�> PCS isL�PpL�XxH�����������H��$ L�|$X�D$|H�D$`L�T$`H�D$hF�D�T$|E��D��$��-A9��$D�T$xDLcl$xB���������*�1��A\��*�L�T$XE1��A���A��L�T$`�\��^��Y��X��BS�DA��D9����A*��C���C����\��^��Y��X��B�� �A��f.�s�A��fA.�rH��L������f.�w�A��I��L��L��A���L��H�����D9��t�����9�������$x�D$x;L$x���H�D$`�D$|�A�H�D$X;�$������1�D��$�H�T$h���H��A9�~:D����A��A��D����k����������$x�2�ɉ�$��<�����$d= YMC�z= BGR�o=KYMC�d= baL�g���= ZYX�\���= vuL�Q���= yxY�F�����$xE1�1�H��������L��$��N�L��L�T$hL��H��H���
f�H��H9��H��u�L�d$hH��$ H��$@f(���$xE1Ʌ�~5�C�ψ�C*��C����\��Y��X��B�I��D9���A��f.�s�A��f.���H��L������E1�f.�w��C��I��D9�~C��D�ȃ���C���9��O���E1��H���������E1�1�H��H��$ H��$@���1�DŽ$�DŽ$�DŽ$�1�1�A��E����A��u	�����A*�HDŽ$8I����$ �*�H����$(�*�L����$0A������(I�غH�����L��$�1�E��A��A��E��~,A��H��H��u�������g������\����D��$���$���$��'������6����= baL�j�L�T$pI�CreatingH� Lab or I�urface PH�CS of otH�her thanH�Jab is nI�ot suppoL��M�J8Aǂ8I� Gamut sH�x`L�XHL�P@H�XP1�H�pXH�hhL�`p�@xrtedf�@|.���1��y���L�T$pH�
��3A��8M�B8��eH��$�I��H��H�����I��H�����E1�C��D�ȃ���C�������C��I��D9�����I��H��L��A���I��H�����E1��C��I��D9��f���C��D�ȃ���C���9�������F���f.�AWAVAUATUWVSH��H)�$ )�$0H��$H�͉�L�iH��$H�D$(H�D$@H��$L��$L��$H�D$8H��$H�D$0H��$H�D$ ���D��$E���C��$= baJ�H�`��H��H��H�D$pH�l$x��Lc�I��L����H��H��H�F8��L����H��H�F@�pH�v�ۉ^0H�VHH�vH�VPH���H�VX�PE1�I��H��N�<�J��I��D9��H��8I��I�@Y@1�L�.L�vL�
�L�D$pH������H�V8�x�31��\��XF��F�f.����f.�v	��f(��Nf.�v��H��9��D�V0E��~<L�N@fW��Af.�sTA�R�1�H����H���Af.�s0H9�u�(�$ H��(�$0H��H[^_]A\A]A^A_�@A�B������E1�f(��D$\H�H���5��3I�I�D�H�T$`H�D$h�f�D��A��E9�}�Ic��A�f.�s����A�KHc����A�L��f.�r�/Hc��A�L��f.�s�B���A��D9�u��&������B�,Lc��I��)�H�~8��)�9�M�N�4'N�,�*�D����A��)�A)�9�AM�f(��*�Hc��C!�C$�^��\��Y��Y��X��A��AY�AYU�X��ǍB���A��9�u�A9������A�����H�D$`�\$\�H�D$hf.�r��H���@f.����������u�����= baL�����H� not supH�CreatingH� CuspMapH� PCS of I�other thI�an Lab oI�r Jab isI�EhH�ported.I�u8ADž81�I�}@I�mHM�ePM�uXM�}`I�Ep���H��8H��I�@Y@H�>L�fL�
hL�D$p1�H�������
T�3�\��XN��N����H�CreatingH�her thanH� Device I�E8H� CuspMapI�-> PCS iI�E@H� for anyI�s not suI�EHI�pported.H�thing otADž8I�EP1�I�UXI�M`M�EhM�MpM�UxAƅ�����H���5�H��1��+�H�Malloc oI�f icxCusI�pMap faiADž8I�M8M�E@M�MHA�EPled�n���I�Malloc oI�f icxCusH�pMap faiADž8M�U8M�]@I�]HA�EPled�,����WVSH��`)t$PfW�H��H��L��H�A���f.���H��H���&���f.�H�C���P<��~1�H��H�L�H��9��H�w���fW�H�L$H���3���3H�\$(H�D$ �/���u{L�KA�Q<��~&�L$H1�����Y��D�H��9��H�t$0L�CL��H��A���H�CI��H��H�����H�CH��I��H�����H�H��H���PH�(t$PH��`[^_����f.������H�t$0I���@WVSH��`)t$PfW�H��H��L��H�A���f.���H��H�����f.�H�C���P<��~1�H��H�L�H��9��H�7���fW�H�L$H���3���3H�\$(H�D$ �����u~L�KA�Q<��~&�L$H1�����Y��D�H��9��H�t$0L�CL��H��A���H�CI��H��H�����H�CH��I��H�����H�H��H������(t$PH��`[^_����f.������H�t$0I���@WVSH��0)t$ H��H���A@�AH�E��5��3�Y�fW�f.����w0�*��Y��X��3���,���)�9�NV�D�@�����AO�E1�9�}D�@Mc�I��H�O8H�Hc��Y5<�3H��H�H�O@���K���]��Cf(��B�s�]�(t$ �CH��0[^_�@�X5��3�P���UWVSH��(�JH���BH���[��Y��3fW�f.����n0�*��Y��X
��3f(����,��K�C�Y��Y��Xȉ�)�9��Q�N�f.��}Hc�H��HF@f.v�H�F8H�H���f.v�H�CH�FH�CH�F��Nf.�v�FH�CH�F H�CH�F(H��([^_]Ð�X��3�6���f(�����u���DWVSH��@H�A8H�t$ H��H��H�D$ H�API��H�D$(H�AhH��H�D$0�!H�D$ I��H��H��H�C8H�D$(H�CPH�D$0H�ChH�C@H�D$ H�CXH�D$(H�CpH�D$0�!H�D$ I��H��H��H�C@H�D$(H�CXH�D$0H�CpH�CHH�D$ H�C`H�D$(H�CxH�D$0�p!H�D$ H�CHH�D$(H�C`H�D$0H�CxH��@[^_�ffff.�WVSH�� )�$)�$fW�H��H��H�t$ H�	����H�f(����I��H��H�~PfT�H�����H�H��H��8H�����H�I��H��H�����H��x, ZYXtH�
�3I��H��膀H��$�H�SL�FPH��� H��$�H�
O3I���x��$��SPf(��Kh�c`�\��\��SX�^��Kp�\��Y��X��Sx�\��\�$��Y�����X��Y��\�$��Y��X�f.�w�=�3�Y���3�X��Y�(�$�X�(�$H�� [^_ÐAWAVAUATUWVSH��)�$�)�$�D)�$�D)�$�D)�$�D)�$Ic�I��H��H��E��D�΋�$���$�H��H���[�H��H�D$X�s
H�D$X��E�&A���A�FI�����$�A�FH��$�I�F(��$�A�F��$�A�F H��$�I�F0��=��3A�F�D$dP�����
L��$��DT�3E1�H��$��D
h�3L����sP�CX�S`��$���$���$��Y��Y��X��Q�f.��H�AY��\�fA.�v/H��$�fD(�H�D$pH��$�H�D$xH��$�H��$�A��H�èA9�tq���e���L�CPH�
�3H���ru��$���$���$��\���f�����������	A�F�=I�3�D$d�����H�T$pH�
P3H��?I��?fEW�I���?}�T$xM����L$pH�\$x��$�L�|$X�^�1�M���L�t$h�^��L$p�A���D
��3�5�3�D:�3fE(���$��A���I�EPM�wPI�GPI�EXI�GXI�E`I�G`M��L��L���DtL��H���	���$�f.�v8fA.���f(��\�f(��AY��A^��AX��AY���A����I�ŨI�Ǩ9�t]I�E��I�I�EI�GI�EI�GI���I����B���M�wPM�EPH�
�3L����{�B���@fA(����fDL�t$hH�{�G�z�?H��������?H��������?I�FhH�333333�?H��������?I�FpH��������?I��������?I�FxH��?I��������?I���H��?I��������?I���H��?I�v8I���I�~@1�I�nHM�fPM�nXM�~`A�FA�FA�F	H��������?I���H��H��Hu�E��	E����H�,II���I�v8H��$��|$ L�t$HH�D$@H�RL�t$8I��I��H��H�D$0�D$d�D$(������E�1�E����D��$�E���GI��?A�FA�FA�FA�F
1�M����H��������?I���H��H��Pu�ɺ
��H�PH�|$ L�t$HL�t$8I��I��H�D$@H�~H��H�D$0�D$d�D$(�����kD��$�D��$�M���E��@��E��t	@���D��$�E���]E�.1�E����A�FA�F1�A�FA�FM���M���M���I��������?M���H��H��`u�ɺ�vH�_G�|$ L�t$HL�t$8I��I��H�D$@H��H��H�D$0�D$d�D$(�(����@���E���A��M�����E�E����
E�FD��$�A�FA�FA�FIdž�G�@E��Idž�Idž�Idž�A�PIdž�Idž�A�V�	�E��M����A�����A�@�H��1��IDŽ�H��H9�u�A��1�J��I��������?M���H��H9�u�A���t#H�
�3��A�V�����E���H��E�|$ L�t$HL�t$8I��I��H�D$@H��H��H�D$0�D$d�D$(蚬��tH��$�H�
��3H�T$P�L$P��NA�A�F ��t<1�fW��@H��H��Ht&fA.D8v�I�D8H��H��Hu�f.����H�L$X���1�(�$�(�$�D(�$�D(�$�D(�$�D(�$H��[^_]A\A]A^A_�A�.E1�����E�ND��$�A�FA�FA�FIdž�A�QE��Idž�A�V��Idž����~���A�A�H��1�f�IDŽ�H��H9�u�A��
1�J��I��������?M���H��H9�u��,���M�NHM�F@H�
-�3I�V8L�L$P�\$PL�D$P�T$PH�T$P�L$P�$�M�N`M�FXH�
�3I�VPL�L$P�\$PL�D$P�T$PH�T$P�L$P���M�NxM�FpH�
λ3I�VhL�L$P�\$PL�D$P�T$PH�T$P�L$P��A����f.�H�
/�3�l�A�V����H��$�H�
,�3H�T$P�L$P�lL�=����M�NHM�F@H�
0�3I�V8L�L$P�\$PL�D$P�T$PH�T$P�L$P�'�M�N`M�FXH�
�3I�VPL�L$P�\$PL�D$P�T$PH�T$P�L$P���M�NxM�FpH�
Ѻ3I�VhL�L$P�\$PL�D$P�T$PH�T$P�L$P����$����.���A�F������$����HI���H�
��3H�T$P�L$P�m���A�F�=x�3�D$d���I��?M����u���M�NHM�F@H�
�3I�V8L�L$P�\$PL�D$P�T$PH�T$P�L$P��M�N`M�FXH�
߹3I�VPL�L$P�\$PL�D$P�T$PH�T$P�L$P���M�NxM�FpH�
��3I�VhL�L$P�\$PL�D$P�T$PH�T$P�L$P��I���H�
��3H�T$P�L$P�l�E��N���H��$�H�
�3H�T$P�L$P�EJ����H�
��3��A�V�u���M�NHM�F@H�
��3I�V8L�L$P�\$PL�D$P�T$PH�T$P�L$P���M�N`M�FXH�
ո3I�VPL�L$P�\$PL�D$P�T$PH�T$P�L$P��M�NxM�FpH�
��3I�VhL�L$P�\$PL�D$P�T$PH�T$P�L$P��I���H�
��3H�T$P�L$P�b�A��D���H�����H�AllocatiH�on of scI�attered I�coordinaI�te arrayI� failedH�UH�ML�EL�ML�U L�](���H��$�H�
��3H�T$P�L$P��H�q���H�
ӷ3��A�V����A�F�=��3�D$d��K�A�F�=��3�D$d��.�H�T$pH�
��2I��?I��?I���p�T$xM����L$pL�l$x��$��^��^��L$p�A����$��A����H�
E�3���A�V������$����dM���M���H�
��3I���L�L$P�\$PL�D$P�T$PH�T$P�L$P��M���M���H�
��3I���L�L$P�\$PL�D$P�T$PH�T$P�L$P�d�A�F������1ۋ�$���$��?����<���4I���H�
B�3H�T$P�L$P������A9^�������u����&��@�M���M���H�
�3I���1�L�L$P�\$PL�D$P�T$PH�D$ ���Idž�Idž�Idž�����I���H�
:�3H�T$P�L$P�f�I���H�
0�3H�T$P�L$P�H�����M���M���H�
µ3I���L�L$P�\$PL�D$P�T$PH�T$P�L$P������CH�
�3��H�M�D�8L�D$P�T$P�������@�F�H�
�3��H�M�L�8�F�H�M�D�8Hc�I�D�8L�L$P�\$PL�D$P�T$PH�D$ ���t���M�NHM�F@H�
V�3I�V8L�L$P�\$PL�D$P�T$PH�T$P�L$P�M�M�N`M�FXH�
0�3I�VPL�L$P�\$PL�D$P�T$PH�T$P�L$P��M�NxM�FpH�
��3I�VhL�L$P�\$PL�D$P�T$PH�T$P�L$P���M���M���H�
Z�3I���L�L$P�\$PL�D$P�T$PH�T$P�L$P���R���f(������,�����f�WVSH��`�y, baLH��L��tJH�\$ H�
��2I��H�t$@H���>dH�
w�2I��H���,dH��H��衊H��`[^_�f�L��H��腊H��`[^_�ffff.�WVSH�� H�AH��H��H������{, baJ��t��H�� [^_ÐH��XI��H��H���P��H�� [^_�UWVSH��(H�AH��H��H�����L�N��I��H��L��A���I��H��H����o���	�	�H��([^_]�f�WVSH�� H�AH��H��H����p�{, baJ��t��H�� [^_ÐH��XI��H��H���P��H�� [^_�UWVSH��(H�AH��H��H����`L�N��I��H��L��A��hI��H��H����o���	�	�H��([^_]�f�VSH��(�y, baJH��H��tH�IH��H��xH��([^H��@H��XH���P�K�v�3f.�v'f(��C�^�f(���Y��YK��KH�NI��H��H��xH��([^H��ffffff.�UWVSH��(H��H���M���L�O��I��H��L��A�����H�GI��	�H��H�����	�H��([^_]�DVSH��(�y$ baJH��H��tH�IH��H��(H��([^H��@H��XH���P�K���3f.�v'f(��C�^�f(���Y��YK��KH�NI��H��H��(H��([^H��ffffff.�AUATUWVSH�����pH��H��M�ą�t3�Q@1���~DI��H�L�H��9��1���H���[^_]A\A]ËY@1���~�L�l$ 1�I��L���HL��H�D$ L��A���	�H�D$pH�D��CH��;F@|��WVSH�� ��pH��H�Ӆ�t)�I@1���~I��H��H��9��1���H�� [^_�@H�AH����P�~( baJ��u�H��XI��H��H���P��VSH��(��pH��H�Ӆ�t*�Q@1���~�I��H��H��9��1�H��([^���y( baJtH�IH��H��XH��([^H��H��XH���P�K���3f.�v'f(��C�^�f(���Y��YK��KH�NI��H��H��XH��([^H��ffffff.�ATUWVSH��)�$�H��D�ŋq�����A<H���H����H���H��
��3���f.����"�3�����fW�~���f.�w
f.
��3rH��H���H��8H�����f.�H����QfW�I���H��@H��t)���H���H�v���f.��<fW�I��Ѕ�tH��8�Ph9Pd�<H��?Hǃ(H��0(�$�1�H�Đ[^_]A\���0�3H��H�
ףp=
�?I�@I��?I��?I��?���H���ǃ�ǃ�H���L���Hǃ�Hǃ�L���L���L����*�f.��p����[����A@����D���A�f.�IB����D���A�f.�IB����DH�|$`H�l$@H�t$ H��I��I��H��D��pI��H��H��ǃp���I��H��H�����I��H��H������{4 ZYXD��ptT���3����L$ �Yȅ���0t�YD$`��(�=����YD$@��(�*���f.�H�
i�2I��H���\H�
W�2I��H���\H�
E�2I��H���[�q���DWVSH�� H�AH��H��H����x�{$ baJ��t��H�� [^_ÐH��XI��H��H���P��H�� [^_�WVSH�� H�YH��H��H���@I��H��H���HI��H��H���P�( baJtH�� [^_��H��XI��H��H�AH�� [^_H��DAWAVAUATUWVSH��)t$0)|$@D)D$PD)L$`D)T$pD)�$����M��M�΃yD�y��$�YQ0�����E��E��A��u@D�aE��tw��	fW�Hc��A�f.��f.���f(���f(�fD(t$0(|$@D(D$PD(L$`D(T$pD(�$��AH�Ę[^_]A\A]A^A_�f��A1ۅ��D$,���i9����CHc�Lc�I��fEW����D
&�3�DM�3��	H�H�M�|��+fA(��Y��\��AX��D^�f(�M�9��AX��^�tT���A7�*�fD(��DY�fA(����,Ѓ�tfAW��D\�fA.�s��AY�fA(��D\��\��D^�똋l$,������t>	�w�3Hc��AL�f.��Cf(����f.��G	�D
D�3H�fA(��A�fA.����Dw	fEW�H��A|�fD.����D6�3f(�fA.�rkf(�H�L$ ���H�L$ f(ЋA���D$,����|����5�3f(�fW���f(�fW��	���f����3��fA(�H�L$ �a�f(�fD(�fA(��A\��I�f(�H�L$ �A\��Y��Y��AX��e���f��\��Y��X�����fA(��P���Df.
�3�r����\��Y��X��a���1����f.�AUATUWVSH��X1�H�l$0I��H��L��M��I�D�L�L���I��L��H��H�D$ �a���H��u���f�D$0�\$8�Y��Y��T$@�X��f�Y��X���N�f �Y��Y��X��f(�Y��X��O�YF0�Y^8�YV@�X��X��GH��X[^_]A\A]�f�AVAUATUWVSH��@)�$�)�$�D)�$�D)�$D)�$D)�$ D)�$0H��H�ˋ�h7���^���fEW���fA(��1�1�L�d$pL��$�L����>H��H��L���H�ƨ���H�PP�~����Y�9��X���I��L��M��H��H���F���M��L��L���V��g7��t�H��H��H�
]�3H���L�HL�H�T$XH�P`H�T$PH�PXH�T$HH�PPH�T$@H��$�H�T$8H��$�H�T$0H��$�H�T$(H�@��L�L$h�\$hL�D$h�T$hH�D$ �r������*ЋC���^�fA(����CD�C����E���
[�3���UH�K�EP�Y��Y����Y��Y��AX��X����D%N�31��-,�3�%�3fE(�f(�fE(�fD(��*�E��t�A\�fA(��Y�H��9��Y��X�~U���L�XtӃ��G���1�*�f(��\��Y��\��Y��Y[(�AY��X��f��^��3�C�X�fA(�����C ��t)���31��LH��H��HfW��_�f(�u���3D(�$��Y�D(�$(�$��X�(�$�D(�$D(�$ D(�$0H��@[^_]A\A]A^�DE���Ż3�?�UHD�K�MP�Y��Y�E���Y��Y��AX��X��MX�Y��Y��X��M`�Y��Y��X��Mh�Y��Y��X��Mp�Y��Y��X������Dr�3H�Ux�%6�31��-D�3fA(�fA(�fD(�f(�f�1����u	E��t�\��Y�H��H���Y��X�u؃�D9��Z�����f(�~-��.�*�fA(��A\��Y��\��Y��YC(�AY��X�H��뎍A��*��Y��YK(�X�����P��*��Y��YC(�X������
�f�����H��$�L�d$pH���D
7�3H��I��M���D�$��D�$��D�$������|$xI��M��H��H���A\�HDŽ$�HDŽ$�HDŽ$�������31��A_��AfW�f.�v
�|fW�H��H��u��/����
0�3�.���� �3���fA(����f�VSH��XH�H�΋IM�����5H�H��$�H�BH��$�H�BH��$�H�S8L��$�H������H��$�H��$0H��$�H��$8H��$H��$@H��$�H��$H��$�H��$H��$�H��$ H�FH����H��$H��$�E1�H��I��H�T$`H��$H�T$hH��$ H�T$pH��$0H�T$@H��$8H�T$HH��$@H�T$PH�T$@H�T$(H�T$`H�T$ 1���H��H���9���H��X[^�H��$�H�
�2I��L�L$8H���XL�L$8����DH��$H��$�H�T$`L�D$@�I��H�D$`H��$H�D$hH��$ H�D$pH��$0H�D$@H��$8H�D$HH��$@H�D$P�#��J���fffff.�SH�� D��hH��E��t,�I@��~1�M��L��H��9��H�� [�f.������~�H�CH�
y�3��8L�@8�/�f.�SH�� D��`H��E��t<D��dE��t0�I<��~71��M��L��H��9��H�� [�f.�H������H�� [�H�CH�
�3��8L�@8�/��AWAVAUATUWVSH���)�$�H��I��M�ƋY@���fH�|$@�5t�3E1�1�H���B��@J���H�C�H��$��L$@E1�H�|$(�\�H�T$ ��$��A�H����$������ĀA��E�A��A����E����H�
h�3D���x-H�T$@H�
�3H�T$8�L$8�\-H��$�H�
q�3H�T$8�L$8�=-�1�f(�E1��B\��@�Y�f�f.�vf(�D��A��E9��Hc�H�àH��H��H�D@K�D�A�GI��9E@����(�$���H���[^_]A\A]A^A_�1��1���H�
X�3�k-�f.���p��t&�I@1���~M��L��H��9��1��f.�����ff.�VSH��(H��H�	H��M��I��H�Q8�r�C��uH��([^�@H�
i�2I��H��H��([^�L�VSH��(H��H������TH�S�C,H�RH���;B@t"= baLI��H��H�
�2tH��([^��KH��([^�f�H��([^�SH�CH�
)�3��8L�@8�K,�f.�VSH��(�� baLH��L��t^�� ZYXt9I�H�I�AH�CI�AH�CH�FI��H��H����P�~( baJtBH��([^Áy8 baLu�H�
[�2M��H���K�y8 ZYXu�H�
>�2M��H���CS룐H��XI��H��H�AH��([^H��fDWVSH�� L�Ɖ�M��H��H���f��� ZYXtH�� [^_�fD�{8 baLu�H�
��2I��H��H�� [^_��Rfffff.�VSH��(�� baLH��L��t,�� ZYXu	�y8 baLt;M��H��H��H��([^�����y8 ZYXu�H�
`�2M��H���eRI����H�
I�2M��H���II���f�SH�� �� ZYXL��tM��H��H�� [����y8 baLu�M��H�����H�
��2I��H��H�� [�QDWVSH�� L��H��H�
��2��M��H����Q�� baLt�� ZYXu	�8 baLtH�� [^_Á8 ZYXu�I��H��H��H�� [^_�P�AWAVAUATUWVSH��
)�$�
)�$�
D)�$�
D)�$�
D)�$�
H��I��D��L�H���D��H�����$xH���DŽ$�L��$�M���H9�L��$��
���;����$���;���yE1�A��H��L���t���H��H�����@H�P$H�@,E1�H�D$HH�D$8H�D$@H�C H�D$(H�D$ L�K(H��H�D$0��(�{, ZYX�L
H�CH��8H�SHL���L���H�L$ H����@H�CH��xH���L��(L���H�L$ H����H�{$ baJ�9�{( baJ��
A��A��D��$��_A��A���D��$���
L��$�A�S<�� YMC�a
�� BGR�C�ADŽ$8�M�I�L$8H�)�3I����H����1��_H� is incoI�icx_set_I�matrix: I�TRC typeI�D$PH�nsistentADŽ$8M�l$81�M�t$@M�|$HI�D$XA�D$`(�$�
H��(�$�
D(�$�
D(�$�
D(�$�
H��
[^_]A\A]A^A_�H�Y@H�`@Hǃ�H���H�`�H���H���H�`@H���H�`�H����o���fD�K<��~QL��$ L��$p1��I��?I��M��H��9��L��$@
1�M��M��H��9��L��$�A�{8rncs�tfWɁ� YMC��$
��$
��$
�w�� BGR����D��$`E���:H��$hD��$`1�f(�1�f(�f(��
��3f��f.�v(�@f.�v�@f.�v�X`P���XPX�XX`��H�D9�u���$
��$
��$
�����*ً�$���$
��$
��$
���^��^���$
�^���$
��$
�H���2��$`
H��$���$h
L��$�1���$p
H��$M��H�j�2L��$�H��$H�[�2H��$ H��$`
H��$�H��$h
H��$�H��$p
H��$H��$	H��$�H��$�L��$�H�D$(H��$H�D$ �����%=�)�EH�H��H��H����H��H��$�������E1�H��$�L��$hD��L��$�L��$�@I���I�OP��I��I���I�UI�I�UI�WI�UI�WI�UPI�WPI�UXI�WXI�U`I�ŨI�W`L��I�Ǩ�C�9�u�H��$�E1ۃ�$�H��?L�kH�D$pL��$0H��$��D$PA���D$(L��A��I�M8D��$�A��H�D$hA���D��$�A��A��A���E��D��$���A��A��@���D$`��D��$���D��$��D$X1������D$8��$�D�\$HD��$��D$0H��$�D�\$@H�D$ �����A��8H��$������C��3%=�#D��$�E���9L��$ L��$�	I�W8L��M��M��L��$�L��$���L��$�H��$�	H��$�L��$H��$�L��$�E1�1�L�l$ L��$
H��$`
H��$�	H�l$(H��$h
H��$�	H��$p
H�#�2H��$H��2H��$H��2H��$ H��$`
H��$�H��$h
H��$�H��$p
H��$H��$`	I��H��$����L��$�H��$�L�����H��$�L��H�����H��$
H��$�1�L�l$ H�l$(L��$�L��$�H��$`
H��$
H��$h
H��$
H��$p
H�.�2H��$H�'�2H��$H� �2H��$ H��$`
H��$�H��$h
H��$�H��$p
H��$���D��$�L��$�E����
fEW�fD.��:��$��5z�3���2
�C�������@t0��$
f(��Y�f.�vD��$�f(��^�E���
f.������C����$�����L��$�A�{8rtnm��
�� tL��$�A�{8rtnm���%!=!�L��0��0�qD��$�E��t6I�G8I����f�H��H9�tfD.v�H����D��$�E����D��$�E����H���1�L���L���H��$`	M�o8�������H��$�H��$���1��H*��H*�L��f(�M���L���\��^��d$ �|����`	H��$`	fD.���f.�vH��?H��H��H��t����f.�H���H��$`	H�ڋ�$���u'I��$�H��$h	H��I���H��$p	H�ڋ����9��-���H��$�H��$�H��$hH���H��$�	H���H���H��$�	H��$�H��$�	H��$�H��$�	H��$pH��$�	H��$�H��$�	H��$�H��$�	H��$xH��$�	H��$�H��$�	H��$�H��$�	舁H�EPH��$�	H�H��$�	H�PH��$�	H�PH�GPH��$�	H�H��$�	H�PH��$�	H�PH�FPH��$�	H�H��$�	H�PH��$�	H�P��$�������H�
Ï3萺����HDŽ�`	�#���H9�DŽ$����H�icx_set_H�nconsistADŽ$8I�D$8H�matrix: I�T$XI�D$@H�TRC sharA�D$`entI�D$HH�ing is i1�I�D$P�w�@L��$�L��L��$����H��$	H��H��$����H���2H��$
H���2H��$
H���2H��$
�#���H�SH�Can't crI�eate matI�rix profI�ile withI� PCS of H�J8ǂ8H��L�B@L�JHL�RPL�ZX�B`Lab f�Bd!���1���H���L��$�H���H���H���L���$�������H���H��$�H�H���H��$�H����K<���;�L��$ L��$p1��I��?I��M��H��9�����H�
��3�y��5�H�`�I�Y@I�`�I�`@H��8H�`@Hǃ(L��xL��0L���H������H��$ 
L��$pI�W8L��I���A�H��$�I��H���n�D��$�E���D��$�E������$ 
��$(
fD.���fD.�����fD.��yHDŽ$(
fD.�$0
�L��$��������H���V�H��I��膨H�
��3M��H���T��e���H��$�	H����f(�H��H���^��\�H��L���a���H��$
f(�H���H��$
H��$�1�L��$�L��$�H��$`
H��$
H��$h
H��$
H��$p
H���2H��$H���2H��$H���2H��$ H��$`
H��$�H��$h
H��$�H��$p
H��$H��$�H�D$(H��$H�D$ ����M����H�
�3�������=G�3f(�������$`A�����E���KL��$hL��$�	L��$�D��$`E1�H��$��D*�3��$��5۟3L���D��3D��M��E��L�FPH�
��2L���6��$�	��$�	�Y��Y��D�$�	�X��Q�f.����AY��D\�fA(�fD.����fXfD.�vWH�FP�S<��$(
A��fD(�H��$ 
H�F`��H��$0
~'H��$p1�DL��L��H��9��fD(�A����H�ƨD9��'���L��$�H��$�E����$�D��$�E���(��$
��$
��$
�"�f.�H�FP�S<A���fXfA(�H��$
H�F`����$
H��$
����H��$ 1�L��L��H��9��A��f(��������$�H��$�H�
��3f(�����f.�D��$`E����H��$hD��$`1�f(�1�f(���3f.v%f.@vf.@v�XXP���XHX�XP`D��H�D9�u���$
��$
��$
��f�H��$��3�H��$��&�H�?�2H��$
H�8�2H��$
H�1�2H��$
���$�f(��^�$
����H��$
f(�H����H��$ 
f(�H������$p�^���$p���H��$�
M�o8L��$@
L��I��L������H��$�I��H�������$ H��$�
��$(L��$`	f(�I��f(�H��$�	�_��3H��$�
L���D�$�
H��$�	L���D�$�	�_�f(���$0f(��_��^��^���$`	�^���$h	��$p	���H��$�I��H���1���$�
fA.�v.H��$�
��$�	fD(�H��$�	H��$�
H��$�	��$
fD.�v�D^�D��$�E���AY����C����$�L��$�H�
�3��$�L��$���$�H��$�f(�f(�f(����V����[�H����1��>���$�H��$�H�
��3f(��ʰ��H��$�
I�W8M��L��I������H��胣H��I��賡H�
��3M��H��聰L���Y�L��H��艡H�
��3I��H���W����H�
#�3��L��$ L��$�	I�W8L��M��M��L��$�L��$��D��H��$���H��$��H����H�
�3I��H����L��$���H��諢H��I���۠H�
ă3M��H��詯�����$pfA.����H��$��imul�QPH��H�����8 ZYX�`�@LH���P@H�EP��$���$p��H��HH�@���H��$pH�
��3���k�H��$��tpkb�QPH��H���J�8 ZYX�8�@LH���P@H��$ 
H�GPD��$�H�H��$(
E��H�PH��$0
H�P�"�L��$0
L��$(
H�
M�3H��$ 
L��$���$�L��$���$�H��$���$��N����H��$��tptw�QPH��H����8 ZYX���@LH���P@H�EPH��$
H�H��$
H�PH��$
H�P��$����I�L��$
L��$
H�
j�3H��$
L��$���$�L��$���$�H��$���$�臭���L��$
D��$�L���J�L��I���z��K<H��$ I���g�D��$�H�
p3I��L�|$ A�QM��L��$ 
��L����L��I���$��K<H��$pI����A�UH�
^3I��L�|$ M���֬��$
��$
��$
�N�H�icx_set_H�matrix: H�malloc fADŽ$8I�t$8I�|$@I�l$HA�D$PailefA�D$Td����$�H��$�H�
��3f(��F��I���HDŽ$0
��HDŽ$ 
fD.��|��k�@H�set_icxLH�uMatrix:H� can't hI�andle teI�st pointI�s withouI�t a whitH�e patchI�L$HADŽ$8H��I�D$8I�T$@M�D$PM�L$XM�T$`M�\$hI�t$p���1����H��$�	�芜��$�L��$�H�
�~3�D�$�L��$�H��f(�fA(��/�����H�icx_set_H�white_blH�ack: whiI�te tag hADŽ$8I�D$8I�T$@I�L$HM�D$PH�as wrongH��A�D$` typI�t$XfA�D$de���1���H�icx_set_H�white_blI�ack: blaI�ck tag hADŽ$8I�|$8I�l$@M�l$HM�t$P�H�set_icxLH��ADŽ$8I�D$8H�uMatrix:A�D$PfailI�D$@H� malloc fA�D$TedI�D$HA�D$V���1��[�I�luminancI�e: tag hI�as wrongH��ADŽ$8M�l$8M�t$@M�|$HA�D$P typfA�D$Te���1���f(�赚�;�H�icx_set_H��ADŽ$8I�D$8H�luminancA�D$`ce tI�D$@H�e: couldfA�D$dagI�D$HH�n't findA�D$fI�D$PH� luminanI�D$X���1��u�I�icx_set_I�white_blI�ack: couH�ldn't fiH�nd whiteADŽ$8M�L$8M�T$@M�\$HI�t$PI�|$XH��A�D$` tagA�D$d���1���H�white_blI�icx_set_ADŽ$8I�D$@H�ack: couM�|$8I�D$HH�ldn't fiI�D$PH�nd blackI�D$X�SH�� �	�Ӆ�uH�� [��^�2H�
B}3A���'���dt��r9H�H0H�� [�6��
�4���f�H��H)t$ )|$0�5"�3f.�wD�=��3f(��\�f(��X��
4�3迒�Y�(t$ �\�f(�(|$0H��H�@�X��
�3菒�Y�(|$0(t$ H��H�fff.�AUATUWVSH����$�H�ωչ�0E��M��踧H��H����H�xH�������H�CH����H�C H�)���H�C(�x�H��H���H��$(1ɉt$(L�l$ E��A��H�T$pH��$ H�T$h��$�T$`��$�T$X��$�T$P��$�T$H��$��T$@��$��T$8��$��T$0H���$�����u �sH��H�Ĉ[^_]A\A]�f.�H�訦H��1�螦��fff.�UWVSH��)t$`)|$pD)�$�L��H��H��D�D��E���jH�y���J�B�Y��Y��X��Q�f.��BH�CH�T$@I��H���PP�=)�3�D$H�Y�f.�v�t$HH�C���H�f(�f(��_6�]�f(���H�D$@H�D$(H�D$ H�D$PH�l$ H��H��H�D$0�?H�Cf(��P��\��X�\��P �^��6�3�\��Y��YH�Y��Y@(�C�XӅ��X��XT$(�XD$0�T$(�D$0~E1��BD��B\��B�I��D9��(t$`H��(|$pD(�$�H�Ę[^_]���\$@f.���fD(��\��D\��
��3�D^�fA(��[��V���H�C�L$@�P�\��Y��X��EY��D$ �DY��DYD$H�DD$(�����A���K���E1�f��BD��B\��B�I��D9���%���fD(��\��
�3�D\��D^�fA(�躎���H�C�f(��\T$@�Y��\�f(��W���f�1�����f(�萔f(�����AWAVAUATUWVSH��)�$�)�$�H��I��M�̃�lH��8L��$PL��$p�hhE�A��A��M��D�\$`tK�Hd1�1���~@@���8��t)Lc�I�D�����cLH�D�����c�O��D�B��Mc�K��H��9�ą�H��$�~/H��$�H��$1�fDI�L�H�L�PH�L�PH��9��H��0L��$@E1�L��H�L$p�:���H�D$hH��8;hd�:H��$ht��~H��$�1�H�L�PH��H��9��H�T$hH�\$(E1�A�H��fW�H�T$ �T$`���D�|$`�D$d�Ā��H��$h�E��f(�~%H��$�1��L�P�\�H��9��Y��X���Q�f.��{f(�%�D��t�E������l��������H��@�}H��`H��$�M��L��$�H��H����HH��`I��H��H����PH��XI��H��H���P��~1�f.�H��I�T�PH��9��H��8�Pd��~#1����8��tI��?M�,�H��9��9�H��@�T$`��H�L$h��T$dL�|$(L��8A�H�L$ H�����%�����
1���f(�f(�~=�AL�P�\�H��9��Y��X���Q�f.��x
�N�3f(��]�H��8��Pd��~C�+�31��\�D���A��Y��Y��X��A�H��9�ۿfDM��A��H��$P��E��u��t~H��8D�@dE��~nL��$P1�1��D���8�A�E��t>E��t)�Hc�M���A	f.�v�AI�L�f.v���t	Hc��Aʃ�H��A9��H��$ht
L��$h�A;(�$���(�$�H��[^_]A\A]A^A_��f(�%�1�����D��lE����H��$0L�CPH��H�����I��H��H��D��lE���H��$@L��$�H�
�t3L��$�H��$�H�D$0H��$8L�L$P�\$PL�D$PH�D$(H��$0�T$PH�T$P�L$PH�D$ ��f.�H��8�Hd��~"H��$1��L��L��H��9���~H��$1�f�H�L�PH�L�PH��9��H�L$pL��$@A�L�����H�D$hH��8E1�H�T$hH�\$(A�H��H�T$ D�����%�u|H��8D�@dE��~H��$1�f�L��L��H��A9���~H��$1ɐL�D�PL�D�PH��9��H�\$(H�D$ E1�A��0H�����%�@�������"���H��8H�kA��D�Jd�P�L�,�A�Q�I��L�\�I��@E��H��H���f�H���L9��BX�H��u�I���M9�u�E��������*�A�I�H�CH��H���H���H9��^��H��u�1�f�H��I��H����H��A9���b���f�H��8D�HdE����K���L��$�L��8L��$0I��H��M��L�T$XL�\$xL�|$ L������L�T$X��H��8�D$dfW��Hd��~M1�f.�D���8E��t I��?I��?L��L���H��9��fW��D$dH��$ht%��~!H��$�1�fDH�L�PH��H��9��D�|$`L�\$hA�H�\$(L�L$xH��A��D|$dL�\$ D���������H��81��Jd�����Jd�GH��9������8��t�I��H��$�H��$�H����L�T$XH�����H��$�L�T$XH��$�I��I��H��$�H����H�����H��8H��$�L�T$X�JdI���GH��9��k���M��t<��~81�E1�D���8E��tM��Mc�O��E�HM��A��Mc�O��H��9��H��$`�1�E1���~ND���8E��t9L��$`Mc�A���A��C�f.�w
�A��]������H��9���JdH��fW���~|1�f�D���8E��t\�A�H�����A�H��$��_�L�T$XH���]���$����H��$�H��8L�T$XH��H����OH��9JdH����D$d���L�\$h��L�|$(E1�A�H��L�\$ ����c���L��$01��
H�`@HDŽ$�A� ZYXL��H��$�A��H�H��?H�@1�H��$8H�������@H��$0H��$@H�Y@H��$�H�`�H��$�H�`@H��$�H�`�H��$�H�FH��D$ H�����H��H��`���|�F�V<D�F@�%��у�	���H��H��@�lH��L������N<L��$���~-H�����L��D���	I�@H���H��H9�D�
H��u�H��$�H��@L�D$0L�
�I��I��H�T$@H��$�H��H�T$8H���H�T$(H�VHH�T$ 1���H��@���H�9T��f.�H���s���A�f.�IB�fW�I�����������uL1����2������8��t*�A��A�f.�w
�A��]������H��9�������?D��pE���	H��$�džpM��H��L�T$XH���D���L�T$Xdžp�V4�� ZYX�L�� baL���5r�3H�����(L�T$X�Y�$���0�\��\��^�f(��N�����f(�L�T$X������H��8�JdH�Ѕ���1����8��t$�A�f.�w
�A��]������H��9��fW�����H��$�L�T$XM��H��H�����L�T$X����1���#����]������H��9�����D���8E��t��A��A�f(��\��AY��X�f.�v�f(��H�
#�2I��H��L�T$X��L�T$X����D$dfW��I���H���f(�L�T$X�cM��f.�L�T$Xvf(�f(�f(�H��8�JdH�Ѕ�~�fW�1��%�}3f(�f(��9�A�f.���f(��]�f(������H��9������D���8E��t烾�u��A�f.���f.���f(�f(��Y��Y��X��AY�������f(��H��8�JdH�Ѕ����1�D���8E��t�A��Y������H��9������H�
�h3�5�f(��\��v���f(�f(��i���H�VI�CreationI� of clutI� table rI�spl failL�B8L�J@L�RHL�ZPf�BXed�BZH�Fǂ8��8�����H�
�h3��H�FH����H�����8H�H8躒H�F��8�f(��Ń�z�H�
yh3�d�H�
�g3�X�%�f(����H�D$h��$���$�H�
�2L��h31��XH�X�L$(��$�f(��XH�D$PL�L$P�L$ ����f(‰D$X�*��D$X�o�H��HE1�L�D$0H�D$(E1�H�D$ �z�H��H�D��t��t&����� baJtX�� hCJt`�� hCLu�H�_h3Á��tX���t`���th���tp���tx���u�H��h3��H�h3��H�h3��H��g3��H��g3��H��g3��H�h3��H�
h3���������v%���t����������	����D��f.��ffffff.�ATUWVSH�� H�|$xI�̋L$pH��D��L�΅���H����M����I�$�tptwH���PPH��t�8 ZYX��H���_H�H�KH�WH�SH�GH�CH�CXH��?H�KHH�C`H�Z�2H�SPH�ChH�CpH�K�2H�CxH�H�2H��������H��tH�>g3H��[9�������#H��tH�?g3H���Z9�����t!H���hH�[g3H���Z9���PH�۾tTH�?g3I�@@I�L��c@I��������?I��������?�H���L�C L�K0L�S(H�C8L�[@��H�� [^_]A\�DH�۾����t�H�gf3�H�C8H���H�I@H�C H�@o@H�C0H��������?H�C(H��������?H�C@��H�� [^_]A\�D1�H���s���H�f3H��_@H�L��@I��������?�H�{ H���H��������?H�k0H�C@��L�c(H�C8H�� [^_]A\�@����H��tH�f3H��RY9�������H��tH�/f3H��,Y9�������PH��tH�Ff3H��Y9���3����H��f�tH�Wf3H���X9���r����H��tH�cf3H���X9�������H��tH�nf3H���X9������t#H��f��wH�nf3H��jX9���_H�۾��H�Mf3I� @I�T@I��������?H��������?�H���L�K L�S0L�[(H�C8H�{@���H���d������������PL���>���H�@PH�H�PH�@H�KH�SH�C�>���DH�۾�@���H�cd3H��������?H��������?�H�S(H���H�>@H�C8H�C H��b@H�K@H�C0���f�H�۾����H�+d3I�>@�L�c H�C8H���H��b@H�C0H��������?H�C(H��������?H�C@H�ffffff�?H�Ch�i���H�۾�[���H��c3I�E@I��b@H��������?H��������?�H���L�S L�[0H�{(H�C8H�k@����H�۾��H��c3H�6@H�^@I��������?I��������?�H���H�S H�K0L�C(H�C8L�K@���H�۾�����H��c3�H�C8H���H�$@H�C H�Y@H�C0H��������?H�C(H��������?H�C@�4���H�۾�&���H�Yc3H�$@I�T@�H�k H���H��������?L�c0H�C(H��������?H�C8H�C@����I�D$8H�5a3�*H���ADŽ$8���������	tH��t{H�c3H���T9��ugH�۾	�u���H��b3H��������?H�L��s@I��������?�H�S(H���H�%P2��O@H�K0H�C H�C8L�C@������
tH��tgH��b3H��dT9��uSH�۾
��H��b3�H�C8H�C@H���H�t@H�C H��������?H�C(�����tH��tgH�mb3H���S9��uSH�۾����H�Rb3�H�C8H�C@H���H�@�@H�C H��������?H�C(�:�����tH��tmH�*b3H���S9��uYH�۾����H�b3H��J@I��������?�H�k H���H��������?L�c(H�C8H�C@����M����������I�L$8H��a3A���+�ADŽ$8���f�ATUWVSH��pL��D��$�E��A��H��H���Q��H��H������$� baJD�`��HǀX��$�H�S$L�K(E1�H��C H�C,H�D$HH�D$8H�D$0H�D$@H�D$(H�D$ ��(H�CH��8H�SHL���L���H�L$ H����@H�CH��xH���L��(L���H�L$ H����H�{$ baJ�d�{( baJ��H��H��p[^_]A\�f�H��$��H����H��$��H�1��#H��8������H��XL���H�L$`H��0H�L$XH��(�D$HH�L$PH��H�L$@H��H�L$8H��H�L$0H���H�L$(H���H�L$ H���P��$�E1�H�S$L�K(H��C H�C,H�D$HH�D$8H�D$0H�D$@H�D$(H�D$ ��(A�D$��C, baJ��w�C$ baJA��t	E���D����C( baJ�8���f�H�`�H�Y@H�`�H���H�`@I�`@H���H��Hǃ�H���H���L���H��p[^_]A\�f�I�Y@I�`�I�`@I�`�H�`@H��Hǃ(L��xL��0L���L��8H���H��p[^_]A\�f�H���H�D$(�D$ E1�A�����H��������f�AWAVAUATUWVSH��(H��$�E��E��A��A�����A���I����D��$���w[����A� baJA���D�����u|���t���urE��A�btlA�� baJ�sD��$D�L$|�c@��u�A���t�A���t�A�� baJu�A���wA����E������A�aE��u�DŽ$�D$|I�E��$�H���T$ D���H��H����H��$E1�E1�1�H�D$HH�D$8H�D$@H��$H�D$0H�D$ H��H�D$(��(H��t$���������������E1���$����$H�]3Hc�H��f.���~6�
�k31�f��A����AX��8�Y��A��@H��9�֋�$����vGI��8H����8��t3H��$�L��A�譣����L��u�AC����t
L��A���E1�L��H��([^_]A\A]A^A_�f���2��2f(��VH�FP�^��Nf(��^��N�
đ2f(��NX�^��^����A��a�q
A���q
A��b@���A�fDDŽ$ ZYXA� ZYX�D$| baJ���f�D��A���D�D$|�D$8H�t$0�D$(�l$ E��I��D��L���&���I�����D�D$|�D$8H�t$0D�D$(��D�T$|�D$8H�t$0�T$(�l$ E��I��D��L���P��I������D$|�D$8H�t$0�D$(���E��H��L���L��H��I���v���A��D�`t
ǀlA�� tALJpA��tALJ|E����$�u
A���cA���Y�|$| baJ�xA��t���iI�G,ILJXA�o I�W$H�D$HH�D$0H�D$@H��$H�D$(H�D$ M�O(E1�H�D$8H���(I�GI���M�GHI��8M���L��$�I��H��$�H��M��H��$�H�t$ ��@I�GI��xI���M��(M���H�L$ H����HA�$ baJ��A�( baJ��A��p��t6A�W@��~.1�@I���(I����I���xI���8H��9��A�W<����1��v�I���I�T�HA���ALJ�L�
z/��H�L$@H�T$8M���H�L$(H��H�T$ 1�I���	L�D$0M�����A�W<�EH��9��"1�A��谲H��I�����o���I�WH�CreationL��H�B8H� of inpuǂ8H�B@H�t table �BXledH�BHH�rspl faiH�BPA���E1�����|$| baJuA��p�������ALJt�t����H����I�����H�1��vI��8�A��A���I��XM���H�L$`I��0H�L$XI��(�D$HH�L$PI��H�L$@I��H�L$8I��H�L$0I���H�L$(I���H�L$ H���PI�G,A�o E1�I�W$H�D$HH�D$0H�D$@H��$H�D$(H�D$ M�O(H��H�D$8��(�|$| baJ���I�EA�G, baJH����@8=tsba�==knil�����A�D$���wA�G$ baJA��t��$������A�G( baJ���fD���7�
e31��AD�H�AX�ǘ�Y��A���H��9��1��L��$�ffDI����I�T�HA���ALJ�L�
�,��L�d$0H�L$@H�T$8M��H�L$(H�T$ H��1���A�W<�GH��9��PI����A������,�=L�1ɉ�$軯H��I�����Z���I�WH�CreationH� of reveH�rse inpuH�t table I�rspl faiL��ǂ8H�Z8H�r@H�zHH�jPL�bX�B`ledA���E1�����E9H�
�T3L�H`A�:��$zALJx�v���I�Y@I�`�H�`@H�`�I�`@ILJ�M���M���I���I���M����������~;I���D�B�H��$�D���	H��$�N���@H��L9�D�	H��u�A��|E�G@�A����у�D	��?�H��I��8�NE��pE����H��$�L��$�H��L��@H�t$@L�l$(H�T$8H��$�L�D$ I��H�T$01���E��tE��uA�G(= baJ�n= baL�cA�W@������1��tI���8I����A���ALJ�L�
�)��H�L$@H�T$8M���H�L$(H��H�T$ 1�I���	L�D$0M�����A�W@�CH��9�����1�A����H��I���H�l���I�WH�CreationL��H�B8H� of outpǂ8H�B@H�ut table�BXiledH�BHH� rspl fa�B\H�BPA���E1��)���f������fDH�Y@H�`�H�`@I�`�I�`@ILJ(I��xI��0I���M��8M���������5����H��$�L��$�L�
����H�t$@L�l$(H��H�T$8H��$�L�D$ M��H�T$01������DI�EI�M8E1����A��8H�����v�'���A�G$ baJA�G( baJ�v����������I���H�D$(�D$ E1�A�����L�����X���H��$�1��
I��?I�������@H��$��H�I��8H�@L��$�H��$�L��$�H������8������f�I�GH�5�P3�#ǀ8H��8H���L��A���E1��,�fff.�AWAVAUATUWVSH��8)�$�)�$�D)�$�D)�$�D)�$�D)�$D)�$D)�$ D��I��H�9H��$�D��$���$���$�H��$ H���H��$D�ρ����E�A��A���D��$E���~A��H��H������$��pt
ǀl��$�t
ǃ`��$�t
ǃd��$���H�C,E1�H�S$H�D$HH�D$8L�K(H�D$@H�C H�D$(H�D$ L��H�D$0A��(�C,= ZYX��= baL���K@E1��D�]3��~1H��$`��H�BH���H��H9��2H��u��D�]3E1�H�CH��8H�SHL���L���H�L$ H����@H�CH��xH���L��(L���H�L$ H����H�{$ baJ�^�{( baJ������
H��2L��$H��$PH�Ӄ2A�Q<H��$XH�ȃ2��KYMCH��$`H�m8H��$pH�m8H��$xH�m8H��$��:�!
��YARG��� BGR�
�K<��~RL��$pH��$�1�I��?H��M�<�H��9��H��$1��M��L��H��9��L��$A�x8rncs�H��$fWۋQ<��$`��$X��$P��KYMC�$���� YMC�^	���)H��$�f(�f(�1���\31�f.v(f.@v!f.@v�XPP���XXX�XH`���H�9�u���$P��$X��$`�����*���$P��$X��$`�^؁{, ZYX�^���$P�^���$X��$`tH��$PH�
2I��H��$������H��$�y<YARG����t*��`��t��d��t
��h��uH�
lL3�p�K<��~?H�����H��$�D���	H��$�H���
f�H��H9�D�H��u�H��$ ��H��I������`��dD��hE�A��A��D����DE�D���E��DE���$���$7��$7����$8�e�S,��$���A��ɀ��@E���$<������ baLD������$���$(,A��t%E1Ƀ�$���
A��A����$�E�D�C<E����L��$�L��$�H��$�L��$H��$�1�fDH��ÈA��E�L�H�<�H����I�<�H��?H�<�H��A9��D�K@E���H��$PL��$1�L��$ H��$�H��$�9Y3H��$@��X3L��$����D��?H��A9������(��A���A����x�L�u��{, baLu�f.�v�f.�v�DŽ$�DŽ$�Y@�I���H��$�E1�H��H��8ILJ��D������a	��$�%�=�����$7�L��$A�x8rncstL��$A�y<KYMC�V�K<L��$@��~"H��$�L��$@1�L��M��H��9��M��L��H����H��8I�t$PL��H�����I��H��H�����{, ZYXtH�
�}2I��H���H��$pI���M�D$PH������$7��D��$<E����fW���$p��$x��$�f.���f.�wf.�vRf.���f.���f.�����$7t*H����_H��H���^H�
&A3I��H����lH��$�8rtnm��D��$8E���E��$�����$�t
H�CH����PH��$�H��A��D�����L���aA�� H����-�����QH��$�G@= baL�~H��$�W8��rtrpt��rtnm�_H��$D�O<A�� BGR�JfW�H��$�D
oU31��DlU3��$�f(���$���$�H��?I��H��H�D�H��������{, baLtH�
�{2I��H������$X��$`fD.�wfA.�wfD.�wfA.�vh��L��$PH�F3tH�F3H�F3��HD���$�L��$�L��$��L$ f(���$�H�
:G3���=T3�t�H��H������f.�����H��$�G@D�O<L���L�|���H�����H�
ޜ��H�D$hH�D$`L�D$XH�T$@I��H�L$(1�H�D$PH�D$HH�D$8L��H�D$0�D$ A��
���WH��$��H����H��$��H�1���bH��8H��X������L���H�L$`H��0H�L$XH��(�D$HH�L$PH��H�L$@H��H�L$8H��H�L$0H���H�L$(H���H�L$ H���P��$7t
H�
OF3�Yi�(�$�H��(�$�D(�$�D(�$�D(�$�D(�$D(�$D(�$ H��8[^_]A\A]A^A_�ǃh�E��� YMC��	H��$�ǁ8��cH��$�H��C3I��H��8�5iH����1��=���H�
}C3�h�����<S3A��D�Q3�Y��Y5qR3��$`��$p��$h�E�f�H�Y@Hǃ�H���H�`�H���H�`@H���H�`�H���H�`@H����J�I�Y@H�`�I�`@I�`�I�`@Hǃ(L��xH��0L���L��8L������fD��$`�Y5�Q3E1��D�P3��$h��$p�8�L��$H�M>H�
փ��H�T$`H��$�L��$�H��$�H��$�H��$���$H�T$HH��$PL�T$hH��$�H��$`H��$�H��$H�T$(H��$�H��$�D��$�H��$�H��$�L��$�H��$�H��$L��$�H��$�H�D$xH��$�H�D$pH��$�H�D$X��$��D$PH��$H�D$@H��$�H�D$8H��$pH�D$0�L$ L����$(A��(���8D�[<E1�L��$�E��c�f@J���J�T�HL�
���H�L$@H�T$8L���H�L$(H��H�T$ 1�I���	L�D$0M���A�EI��9C<�1�A��L��$�DŽ$�����D��$��)�H��J�����h���H�SH�CreationH�t table I�rspl faiH�B8H� of inpuǂ8H�B@H�JHL�BP�BXledL��A�� H����1�������$�����t7��$�����	��	�r
��$��ƒ�0����D‹S,������ ZYXE��<�C@���E1�L��$��cfDJ���8J����L�
I��H�L$@H�T$8L���H�L$(H��H�T$ 1�I���	L�D$0M���A�EI��9C@��1�A��L��$�DŽ$�����D��$�覘H��J���H�e���H�SH� of outpI�CreationH�B@H�ut tableǂ8H�BHH� rspl faL�r8H�BP�BXiled�B\�t���A�������E���^H��$��D�M3�=}M3E1��D
�M3Mc�fD�{, ZYX�E�vP�FX�V`��$P��$X��$`�Y��Y��X��Q�f.���AY��\�f(�f.�vSH�FP�S<E��f(�H��$PH�FX��H��$XH�F`H��$`~!H��$p1�L��L��H��9��f(�E��I�E
��fD.�vUH�FP�S<E��fD(�H��$pH�FX��H��$xH�F`H��$�~"H��$�1�L��L��H��9��fD(�E��A��H�ƨA9������{, ZYXt.H��$PH�
Hr2I���P�H��$pH�
1r2I���9����w�H��$PH��H��$�TH��$�H����R�K<H��$pH���RI��A�T$H��$pH�
�33I��H�l$ �}aH���UTH��H���R�K<H��$�H���rRA�WH�
�33I��H�l$ I���7aH��$�
TH��$�H���5RH�
<3I��H���a��L�FPH��$PH�
+q2�����$P��$X��$`���fD��YARG���� BGR��������oH��$�f(�f(�1���J31�@�f.�v(�@f.�v�@f.�v�X`P���XXX�XH`��H�9�u���$P��$X��$`�9�����L��$��=�J3�5�J3E1�H��$P�N@M�FPH�
%p2H���-���$Xf.�v	�Ef(�f.�v	�Ef(�A��I�ƨA9�t�{, ZYXu��AFX�DfE.ыK<�������L��$pH��$�1��I��?H��M�$�H��9���[��K<���r�L��$pH��$�1�I��?I��L��H��9�����K<���2�L��$pH��$�1�I��?I��L��H��9�����ǃhǃdǃ`�E�f.���$7��
D�k<E�����E1�L��$�L��$��LJ���J�T�HL�d$0L�
���M��H�L$@H�T$8H�L$(H�T$ H��1���A�FI��9C<�d�1�A��DŽ$�L��$�DŽ$�����D��$�茒H��J����k���H�SI�CreationH� of reveH�rse inpuH�t table I�rspl faiǂ8L�Z8H�r@H�zHH�jPL�bX�B`led�P���H��$PH��$����fD���H��$�f(�f(�1���G31�f.v'f.@v f.@vf.@v�XPP���XXX�XH`��H�9�u��������$`��$X��$P��$���$���$��~H��$�f(�f(�E1�f(�E1�f(�1�fD(���F3��F3f.��f.�v�XXPA���XhX�X``f.�v�DXHPA���XxX�Xp`��H�9�u�E��D����$P��$X��$`�D�$���$���$�tJ�A*�Ic����P���$P��$X��$`�^��
�D3�AY�f.�AF�E������A*�Mc��B��E���^����DY�D3��$���$���$���$P��$X��$`fD.��p�H��$�H�set_icxLI�n't handI�le test I�points wI�ithout aH� white pH��H�Q8ǁ8H�uLut: caL�@HL�HPH�H@L�PXH��L�X`H�ph�@patch�@t���1�������L��$pH��$�1�DI��?I��L�4�H��9���{���P���H��$PL��$ H��$�H��$H��$@���L��$�L��$�H��$�L��$H��$����A*��B��P�^�f.�����^���I���L��$H��$0H�
�i2I��?H��$�L��$`H��$�I���H��$�I���H��$�I���H��$I���H��$I���H��$I���H��$I���H��$ I���H��$(��H��$��B3H����H��$HH�
5i2I�������$7tWL��$XL��$PH�
�43H��$HL��$���$�L��$���$�H��$���$��X�K<��~(H�ED�A�H��N���@H��L9�H�H��u����fW��D
hA3f(�fA(����fT�fU�f(�fV���$�fA(����f.�s�*��A\��^�f(����}H��$D�A�H��H��N���H��L9��H��u�L��$@HDŽ$h1�H�T�I��H��9��H��$�L��E1���_���xV4fD(��/�D�@3H�F�D�@3L��$(�=-A3H��$fE(�I��E����S<��~!1�H�L�I��������?L��I��H��9�����f.�������{0KYMC���f(�f(����f(�fT�fAU�fV�t��xH�����f.�v	������f(�~/H��$D�B�L��N���f.�H��L9��XH��u�f.�vB�*…��^�f(�~2H��$D�B�L��N���	DH���L9��\��H��u�H��$�L�Y^��I����ư>H�D$HH�D$@I��H�L$8H��$�L�D$0�D$(�L�t$ M�����u4��$�fD.�v$�S<fD(؅�~1��I��I��H��9��fD(�A��A����M���fD.i?3L��$(�e�S<1���+�w�DfA.�vH��?I�4�H��9��Q��A�f.�v�I����f�A��c���S<1����f�I��I��H��������?H��H��9��HDŽ$�M��1��6fA(�fA(����fT�fU�f(�fV��A�S<��I��9������fA(�f(��E.�,f(��AX�f.�v�I����*��k���DfW�fA(��b,�S<��$���~KfA(�H��$1��\��L�I��������?��L���Y��Y��X��A�H��9������HDŽ$�����H�
W/3��S�c���H�CI�xfit fitI�ting faiǀ8L�H8L�P@�@Hled��H���FH��H���DH�
�'3I��H���S��H��$ �tptw�QPH��H���R�8 ZYX���@LH���P@H��$PH�FPH�H��$XH�PH��$`H�P�Z��7<3H��$��$�1��^�$X�^���Y����Y��H��H��u�fW�f.����H��$ �imul�QPH��H���
�8 ZYX���@LH���P@H�FP��$7�0��$X�p�Y��@�����$�H��$�H�
�&3f(��@R�e�H�
�-3�R���H��$ �tpkb�QPH��H�����8 ZYX�k�@LH���P@H��$pH�FPH�H��$xH�PH��$�H�P��H��$�DH��$�I����BH�
0-3M��H���Q�+�HDŽ$��`�HDŽ$x�E�HDŽ$p�*�H��$�I�icx_set_I�white_blH�ack: whiI�as wrongH��L�i8L�q@H�QHǁ8H�te tag hH�HPL�@X�@` typf�@de���H�SH� object I�CreationI� of xfitH��ǂ8L�r8L�z@H�BH�BPfailf�BTed�BV���1���H��$�H�icx_set_I�ack: blaI�ck tag hI�as wrongH��H�Q8ǁ8H�white_blL�@HL�HPH�H@L�PX�@` typf�@de��H��$�H���H�D$(�D$ E1�A������L�������Af(����H�
�l2H�S,3覣��H��$�I�luminancI�e: tag hI�as wrongǁ8L�i8L�q@L�yH�AP typf�ATeH����1���HDŽ$hL��$@���H��$�I�icx_set_H�white_blH�ack: couH�ldn't fiI�nd blackǁ8L�Y8H�q@H�yHH�iPL�aX�A` tag�Ad���L��$H�C�A�P@H����H�����HL��$�H��A�Q<��HH�
M+3H�\$ A��I��H���Z�H��$�H�icx_set_I�e: couldI�n't findI� luminanH��H�Q8ǁ8H�luminancL�@HL�HPH�H@L�PXH���@`ce tf�@dag�@f���1���H�
*3�үH��$�I�icx_set_I�white_blI�ack: couH�ldn't fiH�nd whiteǁ8L�I8L�Q@L�YHH�qPH�yX�A` tag�Ad��H�CH�
.3��8L�@8�P��ffffff.�VSH���)�$�H��H��$`��$8H��t!H�AH��t
D�QE���uH�s�C����H�D�L$ 1�E1�H�����H��H���H��$�E1�E1�1�H�D$HH�D$@H�D$(H�D$8H��H�D$0H�D$ ��(��$����p�������OH�Setting H�MonochroH�me Fwd pH�C8I�rofile fH�upportedI�rom scatI�tered daI�ta not sH�KHH�CpH��ǃ8H�S@L�CPL�KXL�S`L�[hf�Cx.��1�(�$�H���[^�f���$h��$0D��$�t$PE1��D$HH��H�ىD$xH��$X��$(H�D$pH��$P�D$@H�D$hH��$HH�D$`H��$@H�D$XH��$ H�D$8H��$H�D$0��$�D$(��$�D$ �g���>���f�1��5���f�fW�f.�����$h��$0D��$D��$�t$H�D$8H��H�ىD$@H��$��$(H�D$(��$�D$0�D$ 萂�������$�D��$�H��D��$��D��$�D��$���$��S�����33fW��M���H�Can onlyH�m scatteH�red dataH�C8H� create ǃ8H�C@H�Device->H�S`H�CHH�PCS profH�KhH�CPH�iles frof�Cp.H�CX1���fDH�H�K8���H�����8��I1�����f.�SH��0H��H�
�&3�I�����������������L�KL�CH�
�&3H�SL�L$(�\$(L�D$(�T$(H�T$(�L$(�]IH�S H�
�&3H�T$(�L$(�BIH�S(H�
�&3H�T$(�L$(�'ID�E���H�S8H�
�&3H�T$(�L$(�IH�S@H�
'3H�T$(�L$(��HL�KXL�CPH�
'3H�SHL�L$(�\$(L�D$(�T$(H�T$(�L$(�HH�S`H�
�&3H�T$(�L$(�HH�ShH�
�&3H�T$(�L$(�vH�Chf.�13vGL���L�CxH�
�&3H�SpL�L$(�\$(L�D$(�T$(H�T$(�L$(H��0[�&HfDH��0[�f.�H�S0H�
�%3H�T$(�L$(�G����H�
�$3�G�I���H�
�$3�G�8���H�
�$3�G�'���H�
�$3�G����fff.�SH��@)t$0fW�H��H�
E&3�[G�f.��v��03H�
C&3�Y��D$(H�T$(f(��NG�Kf.��/��03H�
0&3�Y��D$(H�T$(f(��G�C��tAH�
&3��F�C��tA��tP�P���va�P����6(t$0H��@[�f.�H�
�%3�F�C��u�H�
&3�F�C��u�H�
&3�uF�C�P���w�f�����H�
P&3�SFH�SH�
m&3H�T$(�L$(�`FH�SHH�
^&3H�T$(�L$(�EFH�S H�
O&3H�T$(�L$(�*FH�S(H�
@&3H�T$(�L$(�FH�S0H�
1&3H�T$(�L$(��EH�S8H�
"&3H�T$(�L$(��EH�S@H�
&3H�T$(�L$(�E�C�P�����������H�
7&3�rEH�SH�
`&3H�T$(�L$(�EH�SHH�
U&3H�T$(�L$(�dEH�S H�
J&3H�T$(�L$(�IEH�S(H�
?&3H�T$(�L$(�.EH�S0H�
4&3H�T$(�L$(�EH�S8H�
)&3H�T$(�L$(�DH�S@H�
&3H�T$(�L$(��DH�SPH�
&3H�T$(�L$(��DH���H�
&3H�T$(�L$(�DH�SXH�
�%3H�T$(�L$(�DH�S`H�
�%3H�T$(�L$(�nDH�ShH�
�%3H�T$(�L$(�SDH�SpH�
�%3H�T$(�L$(�8DH�SxH�
�%3(t$0H�T$(�L$(H��@[�DH�
�"3��C���H�
�"3��C���H�
#3�C�b���H�
.$3�C�2���fff.�WVSH�� H��M��H���L��H���u	����������H�3%3ǃ���CH�C1�H���H�%3H�CH�CH�C H���H�C(H�C0�C8H�C@H�CHH�CPH�CXH�C`H�ChH�CpH�Cx��H�� [^_������H��tH��$3H���
9������t!H����H��$3H���
9����H��$3ǃ���CH�C�H���H��$3H�CH�CH�C H���H�C(H�C0�C8H�C@H�CHH�CPH�CXH�C`H�ChH�CpH�Cx���@���������H��tH�$3H���9�������XH��tH�4$3H���9���;�������������H��tH�+$3H���9��������H��tH�E$3H��e9������t!H���oH�=$3H��?9���WH�%$3H��?H��������?I��?I��������?ǃ�H���H��#3��C�C8�H���H��?H�S@H�CH��?H�CHH�CH��?H�KPH�CH��?H�CXH�C H��?H�C`H�C(H�333333�?L�ChH�C0H�CpH�CxL����������k���H��tH��!3H��9���N���������H��!3�ǃ���CH���H��!3H�CH�CH�CH�����H�C H�C(H�C0�C8H�C@H�CHH�CPH�CXH�C`H�ChH�CpH�CxH�� [^_�DH�i!3H��?ǃ���C�H���H�=!3H�SH�C H�C(H���H��?H�C0H�CH��?�C8H�CH�C@H�CHH�CPH�CXH�C`H�ChH�CpH�Cx�m���f.�H�� 3H��?ǃ�H�{��H���H�� 3�CH�C0�C8H���H��?H�C@H�CH��?H�CHH�CH��?H�CPH�C H��?H�CXH�C(H�C`H�ChH�CpH�Cx���H�> 3H��?H��?I��?I��?I��?H���H� 3I��?H��?ǃ��H���H��?�CH�CH��?H�SH�CH�K �L�C(L�K0�C8L�S@H�CHL�[PH�CXH�s`H�ChH�CpH�Cx���H��3H��?I��?I��?H��?H�{(H���H�]3ǃ���C�H���H��?H�CH�C0H��?L�SH�C@H��?L�[H�CPH��?H�s �C8H�CHH�CXH�C`H�ChH�CpH�Cx������t!H���H��3H���9����H��3H��������?H��?H��?I��?I��?H���H��3I��������?I��������?H��������?H�{pH���H��?ǃ�H�CH��?�H�CH��?�CH�CH��?H�S(H�C H�K0��C8L�C@L�KHL�SPL�[XH�s`H�ChH�Cx���������	��H��tH��3H���9������
t!H����H��3H��q9����H��3ǃ���CH�C�
H���H��3H�CH�CH�C H���H�C(H�C0�C8H�C@H�CHH�CPH�CXH�C`H�ChH�CpH�Cx���H��3H��?H��?H��?I��?I��?H���H��3I��?I��?H��������?H�{XH���H��?ǃ�H�CH��?�H�CH��?�CH�CpH��������?H�SH�K L�C(�	L�K0�C8L�S@L�[HH�sPH�C`H�ChH�Cx�����t&H�����������H�(3H���9���q���H�3ǃ���CH�C �H���H��3H�C(H�C0�C8H���H��?H�C@H�CH��?H�CHH�CH��?H�CPH�CH�CXH�C`H�ChH�CpH�Cx���SH��0H��H�
m3�D7H���H��tH�
s3�T7�����d1H�
m3H���57����V�����������z���!D�CE��uHH�
(3��6���f.�3���D$(H�T$(H�
83f(�H��0[�6fDH�
�3�|6H�SH�
3H�T$(�L$(�6H�SH�
3H�T$(�L$(�n6H�SH�
33H�T$(�L$(�S6H�S H�
H3H�T$(�L$(�86H�S(H�
]3H�T$(�L$(�6H�S0H�
r3H�T$(�L$(�6H�
~3�5�C8���?�(����]��uH�
n3�5H�S@H�
�3H�T$(�L$(�5H�SHH�
�3H�T$(�L$(�5H�SPH�
�3H�T$(�L$(�x5H�SXH�
�3H�T$(�L$(�]5H�S`H�
3H�T$(�L$(�B5H�ShH�
3H�T$(�L$(�'5H�SpH�
<3H�T$(�L$(�5H�SxH�
Q3H�T$(�L$(��4����H��0[�fDH�
�3�4����H�
3�4����H�
{3�4���H�
�3�w4����f.�H�
i3�\4��s���H�
V3�I4���H�
�3�84��O���f�H�
3�4��3���ffff.�ATUWVSH�� �grat1�H��PPH��H�����8txet���bH��H�����SLH�KP�rH��H��tH�a3H��V@H�Y3H��V@H��A��H��VP��uOD�FE��~FL�N1��
���I��xD9�tTA�yu�E9au���H��H��tDL�
3A��H��H���W��uH��UHH���H��H�� [^_]A\�H����1�H��UH��H���H��UH��DVSH��(�@H�ι�3H��H��tBH�0H����H��H�CH�����H�C H�]�H�C(H�R���H�C0����CH�CH��H��([^�@AWAVAUATUWVSH��)�$�)�$�I��H����@<=RLCAt[~7=RLCDtR��=RLCCtE=KYMC��=RLCBt3������f�=RLC5t��=RLC3t=RLC4t=RLC2u�1��D$ A� baLA�L��A���H��H����E1�1�H��H�D$HH�D$@L��$|H�D$8H�D$0L��$�H�D$(H�D$ ��(��$|��~&I�T$��L��H���f�H��H9�H�H��u�H��$@M��H��hD��$|�����E���XL�l$PL��E1�E1�1�L���5�3�=�3�A����$|��H��H��9�~TI��?M��H��L�H��h�H���$@f(��\�fT�f.�v�f.�w�A���fDE����E������HDŽ$`HDŽ$hHDŽ$p�����~9�=�3H��$`1�L��H���$�f.�vf(��ރ�I��9�$|�Hc�H��$�H�@H���DPH�f.�3w"�DX�
�3fT�f.���fD�����H���(�$���(�$�H�Ĩ[^_]A\A]A^A_�=RLCF�����~X-5HCM��������J���=RLC7�r���~(=RLC8�e���=RLC9�'����U�������=RLC6�
����8���=RLCE������(�������fT�f.��@����@���H�
�3�ߐ�fffff.�WVSH��)�$�H��H���L��L�IH�E1�M��H��LE�H�T$ ���f(�fW�f.���H����H<�&H��t%�*��
�3���fT�fU�f(�fV��6H��t+H��������xH��D� f.�3rDI��L�(�$�H�İ[^_�@H��t
H��H�H��u�������f.�SH��p)t$P)|$`fW�H����$�f.�w^f.�w%H��t�M��t�A9(t$P(|$`H��p[�f�H�T$@L�D$H�T$0L�L$(����T$0L�L$(f.�w!�|$H�H�T$@L�D$HL�L$(�i���L�L$(�T$@f.�v���fDWVSH��)�$�H��f(�Ad�����P���$h��L��$�H�\$`L��H��$`1�H��������?I��������?I�L�H��L9�u�H���H��$`H��$xH�D$HH�D$@I��H�D$0H����ư>H�|$8�D$(�H�D$ �F���u2H��H������$pf(�(�$�H�Đ[^_���t$X�VdL�D$Xf(�H�
3�B���f(�1�VHf(�볐AUATUWVSH��)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$1�H�l$@H�|$`I��H�A��D5�3L���D$ M��H�D$(H�A�D-43�DC3�D
B3H�D$0�D%3�D�3�D3�AtfA(��^��^��tfA.��<�[�AY��AY��AX��<�tH��H��t�D ��L$H��3f(��T$h�%<3�Y�(�$��Y�(�$��\�3D(�$�D(�$�D(�$��A$H�H�F�D$@�^�\��u3D(�$��Y�D(�$�D(�$��AD$H�F(�D$`�Y�D(�$�Ff(�fW��Y��F f(��
�3�\D$P�Y��Y��AD$H�F0�D$p�V8fW��Y��F@H��[^_]A\A]�fA(�f(����A^�fA(��Y��f(���D�����p3��A\f(�f(��X��Y��	f(��X�3�Y��I�B�A\@f(��X��If(��Y��I f(��Y��B�A\@�X�f(��Y��X��Y��Q(�X��Y�ff.�ATUWVSH��0)�$ H��M��L�y, baL��H�\$ H��$�H�
92M��H��$I��H���{���M��L�CHH�
�82L��$�H��fW��Y���H��L��I������H��L��E1�Ic��)H���a�YE1�H����P�Y��Y��X��X��P0H���Y��X��B
I��I��u�A��H��PH��A��u�(�$ H��0[^_]A\�@H��$�M���@���H��$�H�H��$�H�FH��$�H�FH��$�H�FPH��$�H�FXH��$�H�F`��WVSH��)t$p)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$H��H��L����R�A\�JfD(��D�3fD(��E\p�Y��E\`f(�f(��Y��X��AY�fE(��EY��\$8�D$hf(��t$`�Y��DX�fA(��AY��X��DX��Q�f.����F�NfD(��Y��Y��X��Q�f.���f(�fD(��Y��DQ�fE.����
}3f(��<f(��Q�f.��}�D	3�Y��AX��[�AX��Y
>3�^�f(��Y��YK�\$@�L$H�
3��f(��Q�f.��f(�fD.�f(��n�Y��AX��f�AX��Y�3�^�f(��Y��Y��L$Pf(��D$X�\�f(��Y��LfD.��A�{�D\L$8�s�X��AY��X��AY��Y��Y��D\��Y��Y�fW��A^�fD.��A^��A^��A^��	fE(�fE(��EX��EY��EX��EY��D%�3�D\��EY��D\��D\��D\��D�3�
�
3�EY��DY-�3��3�DX��Y��DX�fA(��AY�fA(��AY��DY��^��A^��DY��D^��E^�D(�$��DD$`�^��D�DD$@�D^��DY��^��AX��AX�D(�$�DD$@�^��EY��^��AX�D(�$���|$H�D^��XD$8�Y��D^��X��AX�D(�$��|$H�D^��AY��AX�D(�$��X�(�$��w�t$h�w�t$P�Y��Y\$X�X��t$P�AY��X��DYd$X�AX�D(�$��AX�D(�$��X�(t$p�AX�D(�$��o �g(H��[^_�fE(�fD(��DX��EX�fA(��A\�����D%�
3fD(�fD(�fD(�fD(�fD(�������f(��4���f(��\$ ���\$ ���f(��L$ ��L$ �i����fD(��7����f(�����fDH��(�
�3��A\f(��f(�fW��Y��Q�B�XM3�A\@f(��AfW��Q f(��Y��B�A\@�X�fW��A�I(f(��Y��X��Q�f.�zH��(�f(�����f�WVSH�� )�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$D)�$H��H��L���B�D
f(��J�E\�Y��A\XfD(��Y��E\x�D%{
3fA(�fD(��AY��X��DY��T$P�Q�f.��DX�fA(��AY��DX�fA(�fAW��T$x���F�Nf(��Y��Y��X��Q�f.��Af(�fD(��Y��DQ�fE.����D5�	3f(��\$ fA(��d$0�s�\$ f(��d$0�Q�f.����D43�Y��\$ �AX��S�d$0�AX��AY��^�f(��Y��YK�T$X�L$`fA(���\$ f(��d$0�Q�f.���f(�fD.�f(��n�Y�f(��AX��\��AX��AY��Dv�^�fA(��Y��Y��L$h�D$pf(��Y��UfD.��J�s�D\T$P�KfAW�fAW��DY��Y��Y��D\��Y��E^��^��^�fW��A^�fD.��fD(�fAW�fA(�fEW��D\��\��A\��D\��D=�	3�%3�EY��D�DY-�	3�D�	3�DL$X�DX��DY��DX�fA(��AY�fA(��AY��DY��^��E^��D=�	3�DY��EY��D^��E^��EY��^��AX��AX��^��DL$X�D^��EY��^��AX��w�t$`�^��AY��^��X��X��l$`�D^��AY��D^��X��O�L$x�|$P�O�L$h�X��AY��DYD$p�AX��DX��L$h�AY��Q�f.��AX��DY|$p�DX��AX��DX��AX��Dw �W(��(�$�(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$D(�$H�� [^_��fE(�f(��DX��AX�fA(��\����fD(�f(�f(�fD(�fD(���f(��
�J���f(��T$@��
�d$0�\$ �T$@����f(��L$@�
�d$0�\$ �L$@�D����\$ �d$0�
�d$0fD(��\$ �����\$ �t$0�q
�d$0f(��\$ ����\$ �Q
�\$ f(��W���f��H3f.�r"�\��X�f(��Y��\��X��^��D�83f(��^��\�f(��Y��\��\��^���f.�sJ�%�3f(�f(��\��\��Y���3�^�fW��Y�3�\��^�f(�f(��Df(��Y��\��\��^���3fW��Y�3�Xp3f(��ff.�WVSH�Ā)t$ )|$0D)D$@D)L$PD)T$`D)\$p�҉���H��1�fEW��D3�DA3�,f(��AY��\��AX��D^�fA(�H��9��X��^�tS���6�*�fD(��DY�fA(���,��tfAW��D\�fA.�s��AY�fA(��D\��\��D^�뙐f(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pH��[^_�f�VSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$p�Ѓ���H���H�4�fEW��D3�D;3�6f�f(��AY��\��AX��D^�fA(�H�����X��^�tS�*��6fD(��DY�fA(���,��ufAW��D\�fA.�s��AY�fA(��D\��\��D^��@f(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pH�Ĉ[^�H��H)t$ )|$0�\�f(��t$p�\��^������Y�(t$ �X�(|$0H��H�H��H)t$ )|$0�\�f(��t$p�\��^�����Y�(t$ �X�(|$0H��H�UWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�E���q�D�3H��H�r�A�h������fEW��Dj3fE(��zf(�f(��Y��AX��\�f(�f(��AX��Y�f(��\��^��Y��^��^�f(څ��^��X��^�tfAW˅��N����H��H��9����C�7�*�fD(��DY�fA(���,���tfAW�fA(�fA.��\��H���f(�fA(�f(��Y�fE(��Y��D\��\��\��\�fA(�f(��Y��^��^��^��=�����H��H�����1���Y��H��H9�u��H��H��9��=���fDf(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H�Ę[^_]�DVSH��H)t$ )|$0D��H����$���$��\��\��^������Yƅ��X�~!1�f����Y���H��9��(t$ (|$0H��H[^�f�UWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�E��H��D���D%�2��H��1�fE(�fEW��D*�2�I�f(��AX��\�f(��AX�f(��D^��Y��^�fA(�H��9��DY��X��^�t���6�*�fD(��DY�fA(����,��tfAW��D\�f(�fA.��AY��z���fA(�fA(��\��\��D\�f(�f(��D^��Y��^��p���f��Def(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H�Ę[^_]�ffffff.�H��H)t$ )|$0�|$p�t$x�\��\��^��U����Y�(t$ �X�(|$0H��H�fffff.�ATUWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�E��M����$��D-7�2��D
X�2H�Z�fEW�A�i�fA(�H��fE(Ѿ����f��F�7�D*�fE(��DY�fA(��0�,���tfAW�fA(�fA.�f(��\��Y���f(�f(��\��X�f(�f(��X��Y�f(��\��^��Y��^��^��XÅ��A^��A^�tfAWʅ��Kx&��H��H�����1���Y��H��H9�u��H��H��9��DY�� ����E,$(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�H�Ġ[^_]A\��f(�f(�f(��\��Y��\�fD(��\��DY��\��A^��A^��^�����VSH��X)t$0)|$@D��H����$���$���$��\��\��^��D$ ����Yƅ��X�~"1�f.����Y���H��9��(t$0(|$@H��X[^�f�SL�\$0��~]A�@�fW�E1�H��E��K��f(�~#1��A��Y�H��A9��X��C��H��X	�C�I��D9��[��AUATUWVSD�T$XH�t$`E��H�|$hE�b~nfW�Mc�I��H��1�E1�1�E��J��f(�~*f.����Y�H��A9��X��B��D���L�D�H��X��B�I��E9��1�E��~L��L��H��A9��Ic�H��I��?E��L�~?Ic�Mc�H��H��I��1�1�E��~fDH�4�I�4�H��A9��H�M�D9�u�[^_]A\A]��W� VS�s�
H)��h�2H��$@ E��H��D���$~cf(�1�A�I����1�f(��\���A��Y�E�Mc��B��A��Y��A�H��A9��H��9�~
E��$뭅�~c��A�E1�A��fW�A�C�H��E��K��~/f(�1�I��D�A�YH��H9��X��C�u�H�I��D9��H�� [^_�ff.�AW� AVAUATUWVS�Z�
H)�D��$p A�H��$x H���6�2H��$� D���$A��E��~af(�E1�A�H���B�1�f(��\�����Y�A�Hc������Y���H��A9��I��E9�~
E��$�E��~bA�D$�fW�Mc�I��1�L�,�I��E��H�D�~+f(�1�H��@��AYH��L9��X��L�u�H��M�A9��E��~#A�D$�H��L��1�H�H�H��L9�u�E����Mc�Ic�M��f(�1�I��H��1�E��L��~@��H�L�D9�u�E����A�H��E1�A��fD1�f(����Y�H��A9�~ 9�t�A��r�f(��\�H��A9��Y��E��uaE��~+I��L��1��A���I��Y��\��L�D9�u�A��H��E9�u���I��D9��2���H�� [^_]A\A]A^A_�E��~�I��L��1��A��I��Y��X�L�D9�u�A��H��E9������ffff.�WVSH��@H��$�E��H����1�H���H��A9�w�A��tq�f�Hc���Hc��Ɖ�~D�A�H�D��Ic��Ɖ�f.�w�/D�P�Mc�F��Mc��B�f.�vLc؃�F��u�H�����D9�u�E�X��
1�2��Ic�Hc��\�t#1�A��D��A���B��Y��A�H��9�w�E��tf�@D�؋�A�C�Hc�Lc��B��\Ɖ����Hc�H��t,1�A��D��A���B��Y��AX��A�H��9�w�A��u��$Hc��Ƹ���H�L��t.1�DA��D��A���C��Y��AX��A�H��9�w�H��@[^_É�H�����D9���������f�H��(fW�L�T$I��f(�1���AYH��H���X�u��A	I��H��M9�u�H�$H�H�D$H�AH�D$H�AH��(ÐSH�� fW�H�\$I��M��f(�1��A�AYH��H���X�u��AI��I��I9�u�0�M�L�M�LL�LM�LL�LH��H��Hu�H�$H�H�D$H�AH�D$H�AH�� [�ATUWVSH�� fW�H�l$pH�\$I��M��f(�1��A�YDH��H���X�u��AI��I��I9�u�H��1ۿVUUUE1�D�$[�J��I��I��	t-D��E���D���)�9�u�E)�Mc�J�D�J��I��I��	uӃ�H��H��u�1�I�I�I�TI�TI�TI�TH��H��Hu�H�$H�H�D$H�AH�D$H�AH�� [^_]A\Ð�����I�L�L$H�L$(D�T$P�T$0L�\$hH�A8I�@�d$8�D$@H�A@I�@�l$X�D$`H�AH�A(��t��t<��1��fD���Y.�2H�I0�T$0D�T$HL�L$@�L$(�D$8H�AH��H�I0L�\$h�\$`�l$XD�T$PL�L$H�D$@�d$8�T$0�L$(H�AH���A(��t��t�ÐH�A0����DH�A0��T��@SH�� H��H��tC�A(��t��tH��H�� [�If�H�C0H���H��H�� [�*f.�H�� [�f.��A(��t��t1��H�I0H�AH��D�A(��t��t1��H�I0H�AH��D��f.�H���2��t!��H�k�2tH�v�2H�f�2��HD���f�VSH��(�P�ι�H��H����H�������H�H���H�CH�?���H�CH�T���H�CH�����H�C u#�C(�BH��H�C0t^H��H��([^�@���s(t:��t�5�8H�
��2L�H`A���:H��1���H��H��([^��[H��H�C0u����8H�
��2L�H`A�(��H��1���r������8H�
c�2L�H`A�(����L�������������WV1�H����H�ֹ]�H�^_��H��t
H��H�H���ffffff.��,����K���K���K�DUWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$p�H��H���yf(�f.�vf(�1��Cf.�vf(�1�f(Ћ3f(��\��D
ˣ3�\��*�fD(��^��A\��D^��Y��w�,ȅ��l�V�9��@�N�D�F����*��A*��D*��*��AY�fA(��AY�fD(��AY�fD(��AY�Mc�Hc��X�I��H���X�Hc�Hc��X�H��H���X�f(�f(ԉ�fD(��\�fD(��D\��D\��D\��\��AY�fD(�fA(��D\��AY��D\��\��AY�fD(��Y��D\��^�fA(��EY�fD(��Y��D\��AY�fD(��Y��D\��EY�D(\$p�Y��AY�D(L$P�A^�fD(��D\��EY�fD(��D\��EY�D(T$`�A^�fD(��D\�fA(�fD(��\��D\��AY�D(D$@�B��Y����Y��Y��^��X����Y��X����Y��X���B��������Y��Y��X������Y��X������Y��X��G�B���%�Y���%�Y��Y���%�Y���%�X��X�(|$0�X�(t$ �GH�Ĉ[^_]�D�A��Q�q�D*��A*��*��*�����
�3���3�fW�E1�����@UWVSH��H)t$ )|$0�H��H���Af.�vf(�1��Kf.�vf(�1��\ȋ3�\��=��3�*��^��\��Y�f(��f�,ȅ�x^�F�9�|G�N��*��\�f(�Hc�H��\��Yt� ���YL� �X��M(t$ (|$0H��H[^_]�D�*��A���fW�1��VSH��(H��H��������^F�H��([^�ff.�AWAVAUATUWVSH��)t$P)|$`D)D$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�I��?L��X�H��L���KH��]L���H���X���~6����p�H��1�fD�AD �^��AD H��H9�u�D��p�I��?L��p�E��uL��p��]L��L���H�fW�H�\$H���K���K�D$0fD(�f(�f.�rhH���KH�t$@L���%f(�H��H�����f(�H��L���t����D$@���K�X��YD$H�DX��*��K�X�f.�s����KfA(ȋ��K�^υ��=D�3f(��^�f(�~5�A�H��1�f����K�Y����KH��H9�u�fEW�f.�fE(�roL��p�H�t$@L���%f(�H��L�����f(�H��L������D$H���K�DX��YD$@�DX��*��K�X�f.�s����K���KfA(�D��p�f(��A^�E���^�f(�~/A�@�H��1�f������Y�����H��H9�u�D9�DžP��4fEW�f.�fE(�rZH�t$@L���%f(�H��L������f(�H��L�������D$@�DX��YD$H�DX��*��K�X����Kf.�s�fA(ɋ�X�f(��A^ȅ��^�f(�~3��H��1����x��Y���x�H��H9�u�fEW�L���^�D\�3�5\�3�D��3f(�H��L�������D$HfD.�v
fD(�fD(��X��KfD.�s��5N�3�DM�3�AX��D�3fEW�fD.���f(�H��L������D$HfA.�v
fD(�fD(��X��KfD.�s�L�����]L��L���qfA(�L���H�H���^L���A_�fD(�f�]�H�������~7�B�����H��1���AD �^��AD H��H9�u�I��?L����D���qE��~3A�@����qH��1�f��AD �^��AD H��H9�u��H��?��H���q��E\�H���KL�|$@�E\��Dʚ3�H�D$8�D\$(f��*�A������*������D���fEW��D\�fE(��\��^��DY��DX��A*�H�����3L��fD(�A���^|�3�Y�fAT��AX��D\�f(��A\��A^��Yt$(�����D$HA���EX��AX��]��AY��DX�u�fE(�H��fA(�L��fA(�����™3�A^�fA.�v0f.t$Hv(1�Hcƃ����HDŽ�q�����������t�fD.љ3�w��D$Hf.�v����3fA.�r�����Hc�H�L$8fA(��Y�L�����������L$@�/�3f.�vH���&�.>f(�H�T$@�D$H������\��Y��q�Y�����q��E���D���qA�@��5�����HDž�qH�HDž@�HDŽ�qf.�rH���KH�t$@�=��3f(�H��H���6���f.|$@vH���&�.>H�D$@f(�H�
�H�������D$H�X��K�YD$@�X�@���@���f.�s��D$0���q��H����qf.���f(�H��L�������H��X��K���q�XD$Hf.���H�s��^�@�H�hH��p�H�
H��x�H��	H����H��H����1���H�(t$P(|$`D(D$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H��[^_]A\A]A^A_����K�D	�3�\�x��
	�3fAT�f.���������K�\���fAT�f.��}�����~Y�����\��KfAT�f.��Z����Q�1�H���*�����\��KfAT�f.���H�����%���H9�u�DžP�����fW����fEW��z���fff.�WVH��I��tL��p�H�ֹ]L���H�A��p���~1���A���H��1��AD �^��AD H��H9�u�H��?I����M��t�]L��L���H�L��^_���ǁp���ff.�WVL���KI��H�ֹ]L���H�A���K��~6���A��KH��1�D�AD �^��AD H��H9�u�H��?M��I���K��I��p��]L��H���H�A��p���~4���A���L��1�D�D �^��D H��L9�u�H��?I����I���^L�ι]�H�L��^_��Aǃp���ffff.�UWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$p�H��H���yf(�f.�vf(�1��Cf.�vf(�1�f(Ћ3f(��\��D
�3�\��*�fD(��^��A\��D^��Y��
�,ȅ���D�F�D9����N�D�N����A*��A*��D*��*�fA(��AY��AY�Mc�Hc��AY�fD(��AY�fD(��X��BD� �X�fD(��X�Mc�Hc��X߉�f(�f(��D\��D\�fD(��\��\��D\��AY��\��D\��Y�f(��AY��\��AY��Y�f(��\��^��T� �AY�fD(��Y��D\��AY��AY��AY��^�f(��\��X��BT� �Y��Yt� �AY��AY��AY�fD(��D\��AY��AY�fD(��D\��AY��^��X�f(��\�f(�f(��\��\��Y��Y��^��X��E(t$ (|$0D(D$@D(L$PD(T$`D(\$pH�Ĉ[^_]�D�I�D�A�q�D*��A*��A*��*��Z����ӑ3��
Α3A�fW�E1ɹ�.���ffffff.��A�*	�\
��3�\A�^��
�3f.�w�#����{�ff.�AWAVAUATUWVSH���)t$P)|$`D)D$pD)�$�D)�$�D)�$�D)�$�fEW�L�t$8L���qH�|$H��H�t$0fE(�L�|$@�D�3H��$I��L���D$,H��$�5��fA(�f.�H���K���f(�L��L�����DL$8H��f(�H���EY��f��QD$Hf.���f(�H��H���D$H�A�fD.T$0vH���&�.>H�D$0f(�H�
�L�����D$0H��$�YD$H�X��K�AX��YD$@�X���f.��I����l$,H��$fD(��D^�@�������A�$H�CI�D$H�CI�D$H�CI�D$����oH��$�=ŏ3I�|$ 1�L�|$8L�l$H�D
��3L���qH���KH�ˆ�H�T$ �D��3fD(��uf�f(�L��H���!��L$Hf.�vH���&�.>fA(�H�D$H�T$0��f(��Y��YD$@�AX��Y��AYD$�^���H��9����*�L���*�L���S�s�\��A\��^��Y��X�f(���H�L$ f(�H�T$@�Dd$8�t�f(�H�T$0H���EY��^��QD$0f.����D$0�D$@f.�����fAT��Q�f.�z�L$0���(t$P1�(|$`D(D$pD(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_�fA(����D$0�O�
�l����D$H�?�
�T����5�
f(Ȑ�r���ff.�AWAVAUATUWVSH��)t$`)|$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�fEW�H�t$PL����H��$@fE(��DQ�3�D%��3H��$H�D?�3�D$,�5עfE(�f.��pH��$@H�T$@L�l$HH�l$XL�|$8H�T$ L���qL����H���K�q�fAT��Q�f.���fD(�H�T$ f(�H�
X��c��D$8H��$@�AY��X��K�X��YD$@�DX��1�f.���f(�H��L����f(�L��L���|$P��f(�H��H���AY����f(�L��H�����fD.T$8vH���&�.>H�D$8�T$HfD.��'����\$8f(�f(��Y��AY��Y��Y��YL$X�X��DQ�fE.���X��D\��Y\$H�D^����D�l$,H��$@fE(��D^�@��X���H��$H��H�CH�BH�CH�BH�CH�B�����H��H��$@E1�H�� L�l$HH�l$X�=5�3L���qL����H���KH�T$@�D�3�Da�3H�T$ �D�3�<�fAT��Q�f.��|�Y�H��$HA���YB��H��D9����*�L���A*�L���S�s�\��A\��^��Y��X�f(��>�f(�H�T$PL���Dd$H�&�H�T$ f(�H����f(�H��H����f.|$XvH���&�.>H�D$X�T$Pf.��/����\$XfA(�f(��AY��AY�f(��Y��Y��Y��YL$@�X��Q�f.����X��\��Y\$P�^�����(t$`1�(|$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H��[^_]A\A]A^A_�f(���
�v���f(���
�\$X�a�����
�\$8fD(��l���f(��q�
�_���fff.�VSH��)�$0)�$@D)�$PD)�$`D)�$pI���S㥛?I�1�Zd�?I�{�G�z�?H��L��H����x��?I���n��ʿH�L$ H�{�G�z�?L�D$(I���x�&��L�L$0H��~j�t�h?H�L$PL�D$XI�/�$��?H��?I��������?L�T$8L�\$@I��������?H�t$HL�L$`I��?H��?H��$�L��$�I��?H�	��8�d�?I�Ωd���?L�T$pL�\$xI��?H��$�L��$�I��?H��������?H��$�L��$�I��QF\�?H��&2s�˓?I����B���?L��$�L��$�I��Tm7�7�?I��C���?H��$�L��$�H��g�,{�?I�����j�?H��$�L��$�H��I��H��L��$�L��$�L��$H��$�1��
H�T$ I��H���H�T$pI��H����5A�3�DH�3�D
G�3�DF�3�=&�3�3f.����Y��3H��H��u�fW�@0��=�3�3f.�wzf(���
�3H��H��u�H��$�I��H���H��$H�
@�1I���xh�(�$0(�$@D(�$PD(�$`D(�$pH�Ĉ[^�f�H�3�fDfA(��&�
�AY��A\��3�4���f�AUATUWVSH��H��H�|$ H�	�H��H���G��D$(D�S8�L$ �^�E���L$ �L$0�^��^��L$0�D$(tsL�k H�l$@L�CL�d$`H��L���gL��L��I���gL��H����H���Pf.�wY�Pf.�v�\��Y
��3�X�H�Ĉ[^_]A\A]�H�l$@H�SL�d$`H���E�H��L���:�L��H��菍��\��
Y�3�Y��X�H�Ĉ[^_]A\A]�f��;�
ff.�AW�hAVAUATUWVS���
H)�)�$�)�$�D)�$�D)�$�D)�$D)�$D)�$ D)�$0D)�$@D)�$PfW�H���ЙH��$�fD(�fD(��D5��3L��$��D-�3�D$`L�L$X�5��fD(�fD(�f.��LH��$�H����L��$�L���qL��$�L���KH�D$PH��$�H��$�H��p�H�T$HH��$�H�D$@�fTc�3�Q�f.���
fD(�f(�H�
�H�������$��X��K��$��AY��AY���$��XD$8�AX��Y��Y��DX��DX����f.��bf(�L��L��fE(��}��D�$�L��f(�L���EY��EY��D|$8�S�fD.�$�vI�H�����z>L��$�f(�H��H���&�fD.�$�vI�H�����z>L��$�H�T$PH�L$Hf(���fD.�$�vI����ư>L��$�H�T$@H�L$Xf(����f.�$�wy��$�fD.��������$��
4�3fA(��Y��AY��Y��Y��Y�$��X��Q�f.����X�fD(��E\��Y�$��D^��B���f�HDŽ$��v����D�@��l$`fE(��E^��E^�fE(��p����D��KH�l$X���K��$p��$xfA.���$��H���qH��$�L��$�fD(�L���KH�T$@H�D$HH��p�H��$��5g�3H�T$8H����L��$�H�D$hH��$�H��$�H�T$XH��$�L�d$xH�D$PH��X��D��3H�T$p�D-y�3H�D$`@H�L$@fA(�L����H�T$pfA(�L���D�$�����f.�$�vH�H�����z>H��$�H�T$hH�L$8fA(����f.�$�vH�H�����z>H��$�H�T$xH�L$XfA(����fD.�$�vH����ư>H��$�H�T$HfA(�H���`��f.�$����$�fD.���f(�fAT��Q�f.��	fD(���$�f.�s#fD(��EY��DY��DY��EX��DY��D^�P���t
�D�$�H�T$PH�L$`�fA(�E1����Ii��fA(�H��H������A������$�Mc��AY��Y�$��BX��p�B��pt	I������*��K�DX����KfA.�������$p�������*��K�Y
�~3H��$p���K�Y�H��H�����tf.�wH��H9�t&����Y��t�f.�v�H�H��H9�u�H��$����U�M�De�L$h�M�҉T$`�L$p�v��H���q1��\$hL��$�H�T$@H��$�L���Kf(�L��$�H�T$HH��p�H��$��5~3L��$�H�T$8H�����Dt}3H�T$XH��$��D-}3H�T$P�D5@}3�f(�fAT��Q�f.��Of(���$�f.�sf(��EY��Y��Y��AX��Y��^�D��P�E��t	��$��AY̋E�S�AL� H��9��`�E�]�*�H�L$@�*�L��fD(��D\��A\��^��DY��DX�fA(��/��fA(�H��L���D�$����f.�$�vH�H�����z>H��$�H�T$HH�L$8fA(�����f.�$�vH�H�����z>H��$�H�L$XfA(�L�����fD.�$�vH����ư>H��$�H�T$PfA(�H�����f.�$��7��$�fD.��w�����$��
�{3fA(��Y��AY��Y�f(��Y��Y��Y�$��X��Q�f.��g�X�f(��\��Y�f(��^��+�����$���$�f(��AY��Y��Y��DX��X�$x��$x�V�����$��
K{3fA(��Y��AY��Y�f(��Y��Y��Y�$��X��Q�f.��)�X�fD(��\��Y�f(��^��3���@HDŽ$����HDŽ$����fD(��|$p�|$h�D$`D���K���
���H��$�t+H��$�H��$pH�H��$xH�BH��$�H�BH��$�tBH��$��L$hH��$��]H��$��T$`�H��H�L$p��D`�H(�$�(�$�D(�$�D(�$�D(�$D(�$D(�$ D(�$0D(�$@D(�$PH��h[^_]A\A]A^A_��
!y3�A^����L��$pH�
��1L���`[���L��$pH�
��1L����n����f(�fD(��}����d$ �6�
��$�f(���$��d$ �m�����
��$�f(����f(���
��$���f(����
�D����\$ ���
��$�f(���$��\$ �����
��$�f(����fDM��I��1�����x3�f.��{f.
�x3�mf(���x3�Y�f.�f(��Y��M��x3�^���x3�^��X���x3�^��X��X�x3��x3L�
�b3�
�x3L�'f3�Y�H�|i31��Y���x3�%�x3�Y��X��
�x3�Y��\rx3�Y��Y��Y�x3�\��vx3�Y��Y�x3�X
Zx3�X��X��\bx3�Xrx3�^��^�f.��A��Y��Y��AX�X��D H��H=Xu�I��r@H��@I�Y@�kL�Yf1�H�QL�A���\w3�^��Xw3�^��X��Pw3�^��X��XHw3����w3�f.��{f.
�v3�mf(���v3�Y�f.�f(��Y��M��v3�^���v3�^��X���v3�^��X��X�v3��v3L�
&k3�
�v3L�wn3�Y�H��q31��Y��.w3�%>w3�Y��X��
w3�Y��\�v3�Y��Y��Y*w3�X���v3�Y��Y
w3�X
�v3�X��X��\�v3�X�v3�^��^�f.��A��Y��Y��AX�X��D H��H=Xu�I��r@I��@I�Y@�kL�If1�L�QL�Y����u3�^���u3�^��X���u3�^��X��Xxu3���WV�I�ɋ�����tA;t^_�@�A���fA.@�����A���fA.@ztur�]H��L���H�A������~i����u3H��1��f��AD �^��D H��H9�t6�A���f.�w��AL �^��L ���^_���A@1��A^����B�.���DWV�I�ɋ�����tA;t^_�@�A���fA.@�����A���fA.@ztur�]H��L���H�A������~i���
�t3H��1��f��AD �Y��D H��H9�t6�A���f.�w��AYD �D ����^_���A@1��AY����B�.���DWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�D)�$��H��fD(��=4r3f.�w
f.
6r3vH(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�D(�$�H�İ[^_���s3H��@�D�s3H��r@�Y�H�A�fA(�H�y�^�f(��C�
��\��D
|s3���D^���H�~ �D-�q3�D%as31��D�r3fD�*���N�F�\��Y��*��\��^��X�fA(��AY�f(��t�
�AY�fD(�fA(��^���
fA(��\��AY��^��A^���H��9��H�Y@1�H�^���f�WVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�D)�$��H��fD(��=dp3f.�w
f.
fp3vH(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�D(�$�H�İ[^_���q3�Dr3�Y�fA(��^�f(���
��\��D
�q3���D^���H�~ �D-�o3�D%�q31��D8q3��*���N�F�\��Y��*��\��^��X�fA(��AY�f(��Ļ
�AY�fD(�fA(��^���
fA(��\��AY��^��A^���H��9��H�Y@H�F1����f�U�xWVS肺
H)ċH�˃�����8��H�t$ �j���vH�C8H��$I��H��H����p���$�C@��$�^ȅ���$��$ �^��^���$ ��$u>H��$0H�SH��$PH����qH��H����qH��H���wH��x[^_]�H�k H��$0L�CH��$PH��H���lPI��H��H���^PH��H����zH��x[^_]��H�t$ �
H��������������m3H��x[^_]�H�t$ H��r@�D$ �
H�D$(H��H��@H�D$0�����u�����
H���T�����u�����
H�������u��u���fDWVH��h)4$)|$D)D$ D)L$0D)T$@D)\$P��I��v1�(4$(|$D(D$ D(L$0D(T$@D(\$PH��h^_�@H�ɹ2��Hc�H��f(�(4$L��(|$D(D$ D(L$0D(T$@D(\$PH��h^_�[���f(�(4$(|$D(D$ D(L$0D(T$@D(\$PH��h^_����H�5��2�]L��1��H��F���H��r@H��@�H�AH�Qf(�(4$(|$D(D$ D(L$0D(T$@D(\$PH��h^_�@���H�5I�2�]L��1��H�����H�50�2�]L��1��H�����D�s6E���fW�I��@I�Y@H��r@L��r6L�
�r6��r6k1�H�
�r6L�
�r6L���2�5um3�-um3f(��%�l3�im3�=im3�D8k3�D
_m3�Dk3�Q@�*�f(��Y��^��X�f.�s/fA(�f.�v$�\�fE(��A^�f(��Y��X��D\��AY�H���AY�H��j�P�A�u�H�5r6�]L��1��H�����
�l3����H�5�2�]L��1��H��s����
�l3���H�5{n�]L��1��H��M���H�5�	3�]L��1��H��4���H�5�3�]L��1��H�����H�5p/3�]L��1��H�����H�5WB3�]L��1��H����f(�(4$(|$D(D$ D(L$0D(T$@D(\$PH��h^_��DW�VS�3�
H)�fW�H�t$ H��H�׺
H���T���I��H��H���p����K��t:��tH��[^_�f.�H�
��1I��H����a�H��[^_�f�H�
��1I��H����S�fff.�H��(H���2��w H���2��Hc�H��H�8�2�H��(�1�H��(�@H�#�2���H��2���H��2���H���2��H��2��H��2��H�׵2��H�˵2�t���@�X
�j3H�Ƶ2H�
��6�D,���
H���6�D���@�X
pj3H���2H�
j�6�D,����
H�Y�6����@�X
@j3H�o�2H�
:�6�D,���
H�)�6���@H��2����@H��2����@�X
�i3H��2H�
�6�D,��X�
H�ف6���@��v��DH�=�2��Hc�H��H���H�H���H�AH���H�A1��H��H�H�bH�AH�?1H�A1���H�~H�H���H�AH�ԣH�A1��H��CH�H��VH�AH��iH�A1��f.�H���H�H�g�H�AH�D�H�A1��H�&�H�H�H�AH��H�A1��f.�H��'H�H��:H�AH�tMH�A1��H�V`H�H�4sH�AH��H�A1��f.�H��H�H�ǫH�AH���H�A1��ffff.�H�:�2��w$H�A�2��Hc�H��f�H�ݳ2f���H�Ǵ2�fDH��2��H���2��H���2��H���2��H���2��H�˳2��H�ٳ2��H���2��H��2��H���2��w$H���2��Hc�H��f�H���2f���H���2�fDH���2��H��2��H�V�2��H�N�2��H�M�2��H�K�2��H�F�2��H�ֱ2��wH���2��Hc�H��f�H�j�2���H���2��H�j�2��H�-�2��H�>�2��H�=�2��AVAUATUWVSH���)�$�)�$���E��L��I�̋�$01�]�8H��$�H��$���8H����
I����H�Nj�$8����H�_�2H���W@E1��H���Wp1�L�
Q�2L�x�2H��H�D$ ���1�L�
h�2L�l�2H��H�D$ ���L����
1�A�D�M��H�D$ L�B�2H�������t	���:E��f�t	���H��f���L�l$@D�H�
�2L���{�
M��1�L���2H��H�D$ ���L�CH��2L��L�D$8�T$8�?�
M��1�L�ϳ2H��H�D$ ���L�CH���2L��L�D$8�T$8��
M��1�L���2H��H�D$ ���L�CH�s�2L��L�D$8�T$8���
1�H�D$ M��L�p�2H��������~s�=�a31��5d3f��*�H�I�2�SL���K���\��Y��*��\��^��X��X��D,��G�
E1�1�M��H������9��H�H���9�
H��H���\E1��~IfD���~��1�L��H�D H�H��L9�u�A��1�I��H��H������A9�u�H����
I�<$1�(�$�(�$�H���[^_]A\A]A^�H���2H���W@�K���H�l�2Hc�H��H�t�2��Hc�H��L�
�2H�D$ L� �21�H��������L�
�2��L�
��2��L�
��2��L�
��2�L�
�2�L�
�2�L�
�2H�D$ L�ͱ21�H������@���L�
�2��L�
�2��L�
J�2��L�
ذ2�H���������fffff.�SH�� H�������uH����1҉�H�� [�fDWVSH��@D��$�H��H�L$8D�T$(D��$�D�T$ �������t��H��@[^_�f�H�t$8H��H����t���H��@[^_�H�����H��@[^_�f�AVAUATUWVSH��`
)�$
)�$
D)�$ 
D)�$0
D)�$@
D)�$P
H��I��M��M�΋�$�
���H��H��������@����@��������H��$�
H��UX���-�}�#M��t_1�L��2H��U`��xLH�UH�H�=�2A�E�	H�R(H��H�����H�=�2�H�����A�EM��t]1�L���2H��U`��xJH�UH�H�=ή2A��H�R(H��H����$H�=�2�H����MA�M���
1�L��2H��U`���=H�UH�H�R(H����
1҉�L�Ү2H��U`���H�UH�H�R(H��荾
1�f(�L���2H��U`����H�UH�H�R(H���_�
1�fD(�L���2H��U`���D]3xH�UH�H�R(H���+�
fD(؅����*�D�v�fE(�1�I���D
_3�D\�L��$�	�\=�\3�#H�UHc�H�R8����uJ�D� H��L9��\�*�H��2L���AY��^��X��AX��D,��&�
1�M��H��Uh��y�H����(�$
(�$
D(�$ 
D(�$0
D(�$@
D(�$P
H��`
[^_]A\A]A^�H��2H��U@�W���H�ˬ2H��U@���A�����H���2H���P@@��������H���2H���P@����M��A���H��$�
tH��$�
�H�+1��2���A�E�X���H�=>�2�H����$H�=�2�
H����KA������$�
�$�
��$�
9��L�uE�nD9�}r�F�L��Lc�I��H�����2�r�DR�DZ~/M�FHL�T$ O� E1�fDOcO��M�	N�LB I��I9�u�9�tH���I��D9�u�H��$�
����+�$�
H��$�
����H�=�2�H���t H�=�2�H���u8A�E�*���A�E����A��s���1��������H�=��2�H���u0A�E����H�=��2�H����*���A�����H�=K�2�
H���u
A�E���H�=�2�H��������A�E�x���fDH��(H����1�H��(�fff.�H��xD��$�H��H�L$hL�L$ M��I��H��D�T$@D��$�D�T$8D��$�D�T$0L��$�L�T$(�����uH�T$h�D$XH�����D$XH��x�fffff.�H��8�D$(�D$ �'���H��8�f�H��8�D$(�D$ ��H��8�f�SH�� H�������uH����1҉�H�� [�fDH��XH�D$L�D$8�D$0�D$(H�D$ �����u
1��|$L��H��X�f�H��hH�D$\�D$@�D$8�D$0H�D$(H��$�H�D$ ������u
1��|$\��H��h�DH��(H����1�H��(�fff.�AUATUWVSH��HH��H���2�=�
H�ŸH���H�
��2I��A��蒸
H�GL�OH�w�2D�H��H�D$(H�GL�L$8�\$8H�D$ �o�
H�
^�2A�I���E�
D�E��~1�1�L�-
�2L�%	�2��D�����A9�~\A��Hc�M��A9�L�D� H�
�2MN�H��L�D$8�T$8�
��~�H�
�2A�I����1��Ʒ
D�A9��H�
̨2I��A��褷
H���<�
������H��H[^_]A\A]�ffffff.�H��8E1�I���D$(�D$ ����H��8��H��XI��H�D$DH�T$LL�D$H�D$8�D$0H�T$ �D$(H�������u�T$D��u1��|$L��H��X�f��Ұu�1��|$L����fffff.�VSH��(H��H��������^F�H��([^�ff.�AWAVAUATUWVSH��)t$@)|$PD)D$`D)L$pD)�$�D)�$�H��I��M�����KL��$���KH��$f.���fEW�L�d$0H���%L�l$8H�|$(fE(�fE(�fE(��cfDf(�L��H���!���f(�L��H�������D$(�L$8�YD$0�DX��DX��Y����K�DX��*��K�X�f.�rS���I��?L�\$(��u�f(�H��H������v���fEW��*��KfE(�fE(�fE(�f.�D����=�T3E��u�DY��=T3�A^�D���K�DY�E��t
�E_�fE(�M��t�EH��$t�AY�H��$�M�����]L��H���H������I�� 1�L�l$(L�d$0H���%L�|$8�D�S3�G�f(�L��H������f(�L��H������D$8�Y��YD$0�YD$(�A�I��9�~Z�*�D����KH��?�CH�L$8E���\��Y��*��A\��^��X��t���f(�L��H���5����`���(t$@(|$PD(D$`D(L$pD(�$�D(�$�H�Ĩ[^_]A\A]A^A_�@AWAVAUATUWVSH��x)t$@)|$PD)D$`fEW�E1�H�|$0L�l$8L�|$(H��H��$�L��fA(�L��J�D����K���Kf.���Ii��L����^f(�H��L���`���f(�L��H���Q����D$(A���YD$0t_�YD$8�BXD��BD��*��K�X����Kf.�rAH��?H�D$(�����u�f(�L��H������u���@�X��f.�I��I��������������*��K�Y
R3���K1��D���Y��DtfD.�wqH��H��uۋ��K��tg��tvH��$�t�]H��$��H�(t$@(|$PD(D$`H��x[^_]A\A]A^A_��
�P3�^��v���f.�H�D�H�
N�1I��H���3�H�
:�1I��H���F�s���f.�M��I��1�����H��8H�T$(f(�设���D$(H��8�H��8H�T$(f(��>����D$(H��8�H��8H�T$(f(�辻���D$(H��8����~3���IH��1���D �^��D H��H9�u�H��?H�A�����~&��H��1��D �Y��D H��H9�u���f�AT�0UWVS��
H)�)�$)�$ I��H��L��f.dO3D�
�b�B�Jf(�D�L$ �d$(�D$0�L$8z
���E���L1��=
O3H�t$ �fD�E�e�*��\�H�T� H���Y��A*��\��^��X��X�����D�M�CH��A9���M�Gf.���E��~&�^�A��H�F J�T�(��Y��H��H9�u�L��]�H�(�$(�$ H��0[^_]A\�E;�'���fA.`��������fA.@�	�������E��~SH�t$ A�A�H�V H��1��L�D L�H��H9�u��6���f��6���f.��R���H�t$ fD����ff.�fW������AUATUWVSH��8L�IL�AH��L�L$(�\$(L�D$(��T$(H�
��2�Ů
H�WH�
��2H�T$(�L$(誮
�����1�A�gfffL�%!�2H�-^�2�J��I��H�
_�2��9�Hc�H�T� MN�H�T$(�L$(�S�
��t>��P�9�t5��9�}A��A�������)Ɖ؍4�)��u�H�
�2��
�D�
���3�
�9�|��
H��8[^_]A\A]��
�ATUWVSH��@I�@L��H��A��H�D$(I�@H�D$ E�L���2�L�OL���2D��H��L�L$8�\$8�{���~.H�w 1�H�L�q�2A��D��H���H��H�D$ �K9�H��@[^_]A\�fff.�AWAVAUATUWVSH��)t$P)|$`D)D$pH��H��$�D��$���H�=-f6H�
�f6H��H�H��H9�u��Nڅ��w�5�M31��kK3H��$�H��H��t�J�]�f(��J�_�f(�H��9��f.��(�=^M3�X��ݬ
fD(�f(��X��ˬ
E1�f(�fA.���fA(�H�-�x6�D�J3H�D$HH�D$HH��e6L��$�L�5�x6E1��4�Hc��D9�~AI�}t%Mc�f(�N�4�I�M����Mi�YI��BD�A��I��I���A��~�D�D$HA��H�|$HXtt�AX�H�D$Hf.��f�����$�H��d6H�
,e6�D$8�D$(E1�H�D$ �D$0�G��(t$P(|$`D(D$pH�Ĉ[^_]A\A]A^A_�A�Y�f.�A�����DWSH��1�L�\$ I�ȹM��L���H�tF���Nڅ�~&I�C�S�M��L���H��M�I���L9�I��u�A���L���h����H�Ĩ[_�ffff.�WH��1�H�|$ I�˹�H�H�L$ H�T$(L�D$0�E��L�\$ �����H�Ġ_�ff.�A���AT��UWVS�@�
H)�)�$ )�$0D)�$@D)�$PD)�$`D)�$pD)�$�D)�$�L�d$ H��H�ֹ]fD(�L���H��\$ ��� fEW��S�I�D$ I�T�(fA(�f��X8H��H9�u��D*۹]�iJ3H��L���D
H3�H��u�Dm�A^��E\�fE(��D\��_�f(���]�\��AY��A^�荩
�,��*ȅ��AY��A^��X��c�E���M��1�H��$H��$fE(�fE(��V�fA(��]�f(���$�Y��AY���$�Y��X�f.�r�D� �E��9����Dm�M�*��D\��*�H��L���A\��AY��^��X�f(����f(�H�
�\H���ڥ����\Hc���\�\���$�\��L� �^�fD.��1���fA(��4����(�$ (�$0D(�$@D(�$PD(�$`D(�$pD(�$�D(�$�H�Ġ[^_]A\�)É؉]���fEW�fA(�����AUATUWVSH��X)t$@����ϹL��f(�E��L��$���$�轧
H��H��t=��ǀ�tT��t>f(։�H���{����tH�H��1��f�
�D(t$@H��H��X[^_]A\A]�H�5�Iǀ��]H���H�A���YH�L$ D��������u�H�t$ H����]�H�H�t$(H���%�� ZYXf�]�H�H�t$0H���8f�]�H��L�� baL�R�� tpL�F���ǃ�K��$�ǃ�K���KH���%H���KH���%H���KH�R���H��`�H�$�H��h�H��H��p�H���H��x�H����H����H�̟��H����H���H����H�@���H����H�Ÿ��H����H����H����H����H����H�����H��X��l���H����]L���H�H���%I��$��� ZYXf�]�H�H���8I��$�%f�]�H������ǃ�K����ǃ�K����VSH��HL�D$ L��$�H����$�D���D$0�D$( ZYXA���F���H�øH��tL��$�H��H���p�H���X�1�H��H[^�AU�8ATUWVS螎
H)�A��H�͉�M��L�d$@����$�D��L������¸����fW�A��E1��D$0�D$( ZYXL�l$ ����H�øH��tOM��H��H���p�H���X���$�1���u*�E�M�^��M�M�^��^��M�EH��8[^_]A\A]ù]L��H��$��H��S���@VSH��HH��H�L$ H��D�������A�u%H��tH�D$ H�@H�E1�H��tH�D$ H�@H�D��H��H[^�fffff.�SH��P)t$@H��H�L$ D��f(��2�����uLH�L$ �A�_��q�]�f(���H�L$(f(����H�L$0�Cf(�����C1�(t$@��H��P[�ATUWVSH���)�$�)�$���H��t��u6A�@��:A3��v9(�$�(�$�H���[^_]A\����tŃ��A3t���A������H�X�t(��H��t��H��t1���H�rLHD��AQ��$0�AAH�D$P�A	E1��^‰�$�1�H��$�H�t$P�^��D$h��$��^��L$X�L$p�5�B3�=�@3�T$`�T$x�H�D$P�*�H���PH���H�\��^��Y��X���$��9���f.�vL��$�f(����u�I�4@H����I�{�G�z�?L��$�L�L$ H��$�L��$�L��$�H�D$HH�D$@H�t$8�H�D$0�D$(�L��$��i_���o?3�4���H��t@H�L$P��$�H������E�M�^��M�M�^��^��M�E�?3�^�$�������H�t��@�����H��g�0�����H���� ���1���H��HD�����f�SH�� ��H��t��uA�@���v(I��L�H�� [�f���t݃�u�A�@���w�A��tz��H�
ݟt&��H�
��t��H�
EtH��I��HD��->3H���^T$P�ϙ���D$X��^C�Y��YC��C�D$X�CH�� [Ã�H�
c�t���H�
�ft���H�
��t�H����HD��f�WVSH��P)t$@H��H�L$ �=�t$(��G f.���f.w(���T$0�G0f.��~f.W8ww�_h1�A��L�XA��f.�A��f.���A8�t5Mc��d�@�BD�@�\�f(��\��\��Y��^��X�f.�v��H��H��tf(�E��뛸(t$@H��P[^_�f���t�w��~�^�H���E1�Hc�H��������f(�D��E���
f.�A��f.�A��E8�t;Lc��b�I��f(��B���\��\��\��Y��^��X�f.�v��E�AH��@A9�u��Q���AUATUWVSH���)t$P)|$`D)D$pD)�$�D)�$�D)�$�D)�$�D)�$�A��H��H��vxH�H�FH�FH�Ff�(t$P(|$`D(D$pD(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]�H���2E��Jc�H��H�&�.H�=�.H�D$ H���.H�D$(H�ת.H�D$0H��.H�D$8fEW�L�l$@�D[=3L�d$H�D%e=31��D
J=3�D�:3�D-�:3H�fA(��w�Gf.����f(�L��H�����f(�L��H������L$@fA(��҆
�L$H�AX��D$@�X��Y��X��Gf.�s�f(��^�fD.��1H�:�0�yE>fA(�H�<�A�
fAW��H��H�� �a���H�| �/���H��-H�=��-H�D$ H�ՠ-H�D$(H���-H�D$0H�M�-H�D$8���H��J.H�=�J.H�D$ H��].H�D$(H��p.H�D$0H��-H�D$8�y���H�H�-H�=A�-H�D$ H��-H�D$(H���-H�D$0H��-H�D$8�=���H��.H�=�.H�D$ H��$.H�D$(H�]7.H�D$0H���-H�D$8�����fA.�w
�����I�@fA(�L����fA(�fA(�����H�&�2��wH���2��Hc�H��f�H��2���H�H�2��H�F�2��H���2��H���2��H���2��UWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pfEW�H��73H�-�73H��H���=J:3�5z:3�D
a:3fD(��D�73fA(�1���Y��YH��H���X�u�f.�wZfA(��]�f(��
fAW�H���H��H9�u�(t$ (|$0D(D$@D(L$PD(T$`D(\$pH�Ĉ[^_]�@fA(��f�WVSH��`)t$ )|$0D)D$@D)L$P1�H��H���5k93�=�93fD(��D�63�f.�wCfA(��]�f(���
fW��H��H��u�(t$ (|$0D(D$@D(L$PH��`[^_�fA(����WVSH���)�$`)�$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�H�?�ܵ��?I�EGr��߿I�S��:�H��L��H�?W[���	@H��$�H��&1�ʿI�F��_���I��c]�F�?H�sh��|?�?H��$�H��H����x��?H�L$`L�D$hL�L$pL�T$xL��$�H��$�H��$��;H�H��$�L�D$ �I��H��$@H�BH��$HH�BH�T$@H��$PH��"N'�j�?H��$ H��?H��$(H�{��m�?H��$0H��"N'�j�?H�D$@H��?H�D$HH�{��m�?H�D$PH��$@H�D$ H��$HH�D$(H��$PH�D$0�IH��$I��H��蜿��$H�D$`fW���$H��H�HH��@�Y��Y��X��X��@H���Y�$�X��H��H9�u��De431��D%�63�D�63fE(��D�63�D
�63�=�63�fD.�rv�Y�f(����fU��H��H��u�(�$`(�$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H���[^_�DfA(���
�AY�fA(�fA(��A\����fT�fU�f(�fV���c���H�C���$H��$H�CH��$���fDATUWVSH��)�$`)�$pD)�$�D)�$�D)�$�H�]m��{�?H��,C���?H����z6�?I���7��d�?I��,C���?I���v���?H��$�H��N@aÓ?H��$�H��$�H�2�%䃾?H��$H��$��5H53H��"�~j�?�D%33�D
$53H�\$x�D53I���=�43H��L��L�L$`L�T$hL�\$pH��$�1��f.����^��DH��H��u�fW�H�D$`H��$���$��$M����$��H�Y��Y��X��X��HH���Y��X��A	I��H9�u�H����H��"N'�j�?H��"N'�j�?I�{��m�?H��$@H��?H��$�H��$HH�{��m�?H�T$ H��$PH�H��?L�D$0H�T$@L�D$ H�L$(I�ٹH��$ H�FH��$(H�FH��$0H��$ H�D$@H��$(H�D$HH��$0H�D$P�EM��H��L��藻�(�$`(�$pD(�$�D(�$�D(�$�H�İ[^_]A\��AX�fA(��A^���|
�D�S���fffff.�VSH��)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$H�r���_��I�o~�D��?I�0.Ui�k�?H��fW��bH�D$(�H�f��\�ԿH�D$0H��?H�%[]N	�߿�^�H�D$pH��?H�D$xH��?H�L$8L�D$@I�J�_{f�?I��vLݕ��H���Jvl�?H��$�H�L$(H��?L�D$pL�L$HH�BL�T$PH��L�\$XH�t$`�
�13�L$ ��B�^��BH���Y
�X���YB�X���J�YIH���X��H��L9���I���1��C�_
	13�_��K�_��f(��^��_��H��H��u�f(�L�D$pH��H��1��V��Dm.3�D%�03�D13fE(��D�03�D
�03�=�03�3fD.�rp�Y�f(����fU��3H��H��u�(�$�(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$H��[^�fA(��z
�AY�fA(�fA(��A\����fT�fU�f(�fV��3�i���VSH��X)t$@A�H�\$ f(�H��H����f(�H��H������(t$@H��X[^�ffffff.�AWAVAUATUWVSH��)�$)�$D)�$ D)�$0D)�$@D)�$PD)�$`D)�$pD)�$�1ۅ�t��vh1�(�$H��(�$D(�$ D(�$0D(�$@D(�$PD(�$`D(�$pD(�$�H�Ę[^_]A\A]A^A_�H�|2��Hc�H��E���������������b���H�n�*�)f�E�������P���s��f��'���H��Y'��E�����������J�������H�C�#�E��uK�������������H��� ����������������H�p!,�n���������������H�,�!�J�����������\���H�ȶ(�&���w��������7���H�CL%D�[E���"����=�~-�����H�
�~-�6U8�C��ts�=�~-����%H�
x~-��U8����H�*�H�}�,�H����H���&�H�"?#�H���%�t���H�-�"�h���H��d)�\����SH��$�������!����5	H��$���,3�zD�2�DJf.��+�E*��\��D�)3H�T$ fE(��D\��E\��AY��A^��
�D,�H�T$ �A*��AY��A^��X���,3fD.�vN�E*��\�fE(�H�T$ �D\��E\��AY��A^�襋
�D,�H�T$ �E*�A���EY��E^��DX�H���.AD���sH�C0H���.AD)�H�C H���.�E9�H�C8H���.��s�DKH�C(�v
fW�L���f(�1�fA(�L��$�fD(�H��$��D�+3��D�K(��$�����$��A$�AL$�Hǃ�Hc�fA(�H��fA(�H��������$��K f.�v�C f.C(v�C(��$��K0f.�v�C0f.C8v�C8A��I��@E9����sH��$����C�K�D*��\�Ic�H��H��H��H��$�H��$�H���DY��*�H��$�H��$�H��L��H��$��C���A\��D^��DX������(������A\D$��A\L$��Y��Y��X��Q�f.����DX��Ed$ ���D�#E���|����E��5 *3H��$�H�f(�H��H�H���H���H�S@H�CX���H��$�f(���$��v��H��$�f(���$��\���{��$�H��$�H��$������3&H��$�H�T$0L�BH�J0H�CHH��$�H�C`H���H�CPH���H�Ch1�L�L@H��?L�L�LXM�H�4H��H��u�H�Kp蓴���l���H�
4�1L�y2����=�y-����AH�
�y-1��P8�.���H�
�y-�3�����H��-!���H�;�$����H�/!����H�����H�w(���H��l+���H�?����H�
Sy-�������H�r�}����sE1ۅ����6H���.AI���.AI���.�I���.�H���ǃ�H���L���1�L�� �L���fDA��D�J��9���Hc��@�I��I���B��f.�v�H�H������f.�v�f.Hv�Hf.@v�@����D)�D9�u��@�A��H��(9�}HH���.AI���.AI���.�I���.��P�H�L�@�L�HL�P�2���f��H�A�����F�D����H�H���D��Hǃ�1��D���H��H���H��H=�u��KL����D�&31���A$�AY��A^��k�
�,��*�H�����f.�wf.�v	������I��@9�u��*�L����fE(�A�WfD(��D\��A\��A*�D���AY��A^��X�f.�Hc������,х�y��y�1���������Hc�H�����f.�r��*�B�AY�9��^��X��a���9��UHc�H�����f.�r��*��AY��^��X��\��\�fA(��^��\��Y��Y��X��A	I��A������������D�Ȯ�����H���1���D�$3A�A��f��9�|�U��؍BHc�Hc�H��H��H�H��������\���\��fAW�f(�f(��Y��Y��X��Q�f.��5�^����^��?�w�k9��@�����1D��AO�H��@��)��_����1��X���D�H�9�t,�*�fA(��AY��^��X�����fA(�1��V�����f(��D*�H�f(�H�����fA(��EY��D^��AX��g��������{���D�7��H�d�H��HD�H�D$(H�D$(H���.AH���.AI���.�I���.�H�{0H�k L�c8�0�p�DHL�k(�s���s�DK�fW�I��I�� L���1�H��$��D#3fD(�L���L���%�����$�����$��AE�AM��Hǃ�Hc�fA(�H��H���H��$��i���$��K f.�v�C f.C(v�C(��$��K0f.�v�C0f.C8v�C8��I��I��@9���I�$D�[H��$�L��H+T$(E��J�:J�2H��$�H��$�H��H��$������S �����A\E��A\M��Y��Y��X��Q�f.����DX��EE ����s�D�3�m���f(�E1��D�3����H�
�r-�������������H�-cH�fGHD�H�D$(����fW������D^!3�	�����p
f(������p
f(������E1��DG3fW������p
f(��8���H��HH��H�L$ ��L$(�D$0�\
!3�!3�\� 3�^��� 3�Y��Y��Y��Y��Y��Y
� 3�X��\��X� 3H��H�fffff.��� 3�%� 3�^�f.�f(��Y�f(��Y����Y� 3�Y� 3�Y� 3�\��X��X� 3f(��� 3�Y�f.�f(��Y���f.�f(�so�Y� 3�A�Y
� 3�\��� 3�Y��X��\
� 3�I���Y@ 3�@ 3�Y��Y< 3�X��X��X4 3�e����Y_ 3�A�Y
J 3�\��N 3�Y��X��\
F 3�I���Y 3�A�
�3�Y��\���3�Y��X��\
�3�I�DAT�UWVS�g
H)�)�$�)�$�D)�$���H�ϋ�$`H��$P��$�t��t	���HfW�L�L$ �D$0E���D$( ZYXE1����$P���H��H��$���3��H���&�H��$P�C�K�^�H��$�E1�1��^���$X��$p�^���$h��$��5�3�D3�=R3��$`��$x��*�H��H���AY��X���$��߫��f.�vL��$�f(����u�I�@@H�����I�{�G�z�?L��$�L�L$ H��$�L��$�L��$�H�D$HH�D$@H�t$8�H�D$0�D$(�L��$��o:����H��tl��$P���"���y��L�D$`������H��$�H��H����p��G��^���O�^��^��O�GH��$�H����X���$�(�$�(�$�D(�$�H��[^_]A\�D����3������H��$�H����X���3�f�H��$Xt�H��$PL��$XH��H�V��p���$X��$`��$h����L�D$`��$�L��L�D$X�Ţ����L�D$X����H��$�H����X�H�GH�GH�fW�����L�D$`H��@H��r@��$�H�L$pL��L�D$X�D$`H�T$h迧����L�D$X�P����u�����$�L��L�D$X�G�����L�D$X�(����M���D��$�L��L�D$X蚥����L�D$X������ ����AW��AVAUATUWVS�zc
H)�)�$@)�$PD)�$`D)�$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�fW�A�I��M�ŹE1��D$0�D$( ZYXH�D$ I���F��H��H���5x3��H��$ H��M��H��p�E1�1��D$0H�D$(H�t$ A������f(�fW�f.�����3f.���H�|$PI��r@I��@�D$PL�T$XH��L�\$`������NH��$�I��H��H��p��D$hI���AMH���Y�$�H���L$H�D$h��$(�Y��AE��p�M��H��H���p�H���X�H��$�H��H��H��$H��$�H��$H��$�H��$���$�H���Do3H����$��D%�3f(��D
�3fA(��AY��D*3f(��\��AY��AY��D�3�\��\��AX��^��^��fA(���$0��$(f(��\��AY��\�f(��AY��^��^�f(��AY��\���$��\��AX��Y��^��^���$��\��Y��X��Q�f.��ZM��t1�f.�3��A�fW��D$0�D$( ZYXH�D$ A�I������H��I����L��$@H�-N�.H��$1�L��Hi��H��L��H��L�DA��p�I��H��H���H��H��u�L��A��X�fW��D$0�D$( ZYXH�D$ A�M�����H��H���XH��$��D=3�D53E1��D-3H�D$@H���Ii��H��I��L�DH���p�H��H���9�KI���[H��f(�H��fA(��AY��\��AY��\�f(��AY��^��\��AX��^�f(��AY��AY�f(��AY��Y��Y��Y��Y��AX��AX��\��\��^��CfA(��^��CH���I���.���H��fW���X�H�t$@�D3�={3L��L��1�L)�H�H���T�AY�f(�M���\�f(�t�M���X��H��H����u��Y5�3fW�f(���f(��5�3fT�fU�f(��D$HfV��AEf(�(�$@(�$PD(�$`D(�$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_�H�|$PH��裛�����*����s����D$H�5�3�AE�Z����L$H�5�3�AM�A���f(��d
���fDAW��+AVAUATUWVS�\
H)�)�$`+)�$p+D)�$�+D)�$�+D)�$�+fW�E1�I��A���D$0�D$( ZYXH�D$ H��$,����H��H���=#3��L��$+fEW�H��L��$,L��p�E1�1��D$0H�D$(L�d$ A���q�fD.�f(��f�D
Q3fA.��^�D�3L�l$@fD.���fA.��zf(�L���������=t3�H��$�*M��H��H���p��D$XH��$,M��H��H���Y�$�*�DH�D$X��$+�AY��@��p�L��$,L��H����p�H����X�H��H���JL��L���?��$�*��$�*�\�$+�\�$+�Y��Y��X��Q�f.���M��t1�f.r3��A�fW��D$0�D$( ZYXH�D$ A�M�����H��H���aL��$,fW��D$0�D$( ZYXA�H�D$ �����H��H���;�=/3L��$�*�573H���D3E1�f(�H��$ &f(�A�@fA(��`�f(�H��fA(�f(��`�L��L��H��p��=�3L���$�*H��$ +�5V3H���Y�f(��^���$�*�Y���$�*f(��^���$�*�Y���$�*f(��^���$�*��p���$ +H��$@+f(���$@+�Y�I��H����$H+��$P+�^���$(+�Y��Y�$0+��$ +f(��^�f(��^���$(+��$0+舄��H��$@+�=�
3H��$�*H��$H+H��$�*H��$P+H��$�*�I��H��I����Mi��H�-k�/M�|H��H��L�I��p�M��H��H������I��L��H����p�L��$ +L��L�����H��$�*M��H��� A���f(�I��H���
Y
I���DX��r���fA(��
�3�^�3��X
�^�3�
!
3��X
�X��=�
3H���^���X�H����X�H��$,�DHf(�(�$`+(�$p+D(�$�+D(�$�+D(�$�+H�ĸ+[^_]A\A]A^A_�f�fA(�L���S������=�3u�H��$0fA(�H��肕����u�f(��D$@�A\����^=�3�S���I�u �5�31��*�H���L$H���T$P�\��Y��*��\��^��X����f(��Y��\��Y�X���D$@H��9�����@E1�1��D$0H�D$(L�d$ A�����fD.�f(��h�������f(�L���T������=�
3��������H��$,�=�
3�DH�x���H��$,H���DH��X��=�
3�T���f(��\
����f�AUATUWVSH���)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�D)�$�D)�$�I�͋-r�5�����D%i�5�D
h�5�Au�
3�A_�f.5u3ww�DX
"
3fW�fD.�rG�D�	3f(�L���R���f(�H�
�5fD(��=����AX��AY�fD.��X�s��^=�3��3�
�
3�^��]�f(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�D(�$�D(�$�H���[^_]A\A]�H��f@H��?H�y@H�Q�5H�=Z�5H�k	�1�5�H�5:�5H�=��=;	�D
3�D%)
3�D
0
3�D-�3�DH��H9���f(��3f(��\��AX��,�x��D*�L�%��5�D[�1��DS�*�fD(��X��E^��A\��AY��A^��AX��i
�,�9�fA(��A\��EY��AY��AX�H��AD� }�H��H9��d�����D
�
3������Ic@�H��H��H�DPH��ff.�ATUWVSH���AdH��H��L�Ņ�~:L�d$ 1�H�D�L��H�D$ H��ސH�����H�D$pH�ߍCH��9Fd�H��[^_]A\�ff.�ATUWVSH��)�$p)�$�1�H��H��M�ċQd����H�t$0�=�3�5�31�fDI��E1�A�
�H��$�Hc�H��ŐH�t$(H�D$ H�����%���������f(�I��E1�E1ɐ�A�\��Y�f.�vf(�E��A��I� D9��Mc�K��H��H�D0H�ߍCH��9Ed�R���1�(�$p(�$�H�Đ[^_]A\�f�E1�뵸������@VSH��(H��H�IpH��t��g
H���H��t�g
H���H��t�g
H���H��t�g
�Nd��~#1�Hc�H��ƐH��t	H����X��9^d�H��H��([^�^g
fffff.�AWAVAUATUWVSH��x)�$P)�$`H��I��1�28H��$HH��$H��18H���ag
H��	3H��H���W@�A��H���WpA��L�
�	3L��	3��H��H�D$ ���L�
�	3L��	3D��H��H�D$ ���H���e
D���D�I��H�D$ L��	3H�����A�WX��rncs�p��rtrp����rtnmtT��`I���H�s	3I���3f
ALJ��(�$P(�$`H��x[^_]A\A]A^A_�H�D$ L�
	3L�	3D��H�����A�O\��A�O\1�H�D$8�H�D$ I��L�L$8L��3D��H�����A�_P���E�_TE���'M�OpM��tH�D$ L��3D��H�����M���M��tH�D$ L��3D��H�����M���M��tH�D$ L��3D��H�����M���M��tH�D$ L��3D��H�����H��$�H��3M��H����d
E1�H��I��D���E�Wd�E��~Q1�A�O\�������^H�S3I��M��H���d
E1�I��D��H������C��A9_d�H�H���lc
H��H���I���H����0����D$4��*�H�t$@1��\=
3�*��^��3E�GdE��~?E1��K�����t$@H��H�����H��$�J�D�A�FI��A;Gd|�I��D��H�������;l$4u�H���c
H�L$8�c
L���c
1��g���H�D$ L�
�3L��3D��H�����E�_TE������H�D$ L�
�3L��3D��H��������I�Malloc fALJ�ailefALJ�dM���ALJ������H�D$ L�
�3L��3D��H�������H�D$ L�
�3L��3D��H���������ffffff.�UWVSH��(H��H���͐H��H��tuH��H����������u$H��H������uH������H��([^_]�H���H����a
���H�ى����������H��([^_]��H�new_cgatH�s() failfdž�edH����H�����Ɔ�dž�H��([^_]�@AWAVAUATUWVSH���H��H��E��M��H�Z3H��SH���,Mc�J��I��I)�L��HS�zu9Bt9H���H�R3M���Ja
Dž��H���[^_]A\A]A^A_�L�<3D��H��S`���VH�SH�H�=3�J�T"(L��L�����H�=3�L������EXrtrpL�3D��H��S`������Hc�H�CJ�D (H���4���E\�9L��3D��H��S`��x'H�SH�J�T"(H��H��3�9+8��u�EPL��3D��H��S`��x;H�SH�H�=�3�H�R(H��H���tH�=�3�H���u�ET�M\���M\�E`��M\��Ed��M\1�H�D$P�L�d3H��D��H��S`��xH�SH�J�T"(H���I
H�EpL�B3D��H��S`��xH�SH�J�T"(H���vI
H���L�3D��H��S`��xH�SH�J�T"(H���GI
H���L��3D��H��S`��xH�SH�J�T"(H���I
H���H�CF�L E����H�t$`H��3I��E1�H����^
I��D��H��Sh����$pxO�EdD9����M\D������H�u3I��I��H���^
I��D��H��ShB���tI����y�H���H�3I��M���n^
Dž������f�H���H�3M���B^
Dž����fD�EXrncs�Q���@�}XrtnmtWH���H��3M���]
Dž�����H�=3�L����?�EXrtnm���f.�H�
�3L���A�H�
�3�5
���E\����H�CHc�J�D (H���H��3M��L���l]
Dž������H�C��H���H��3M���<]
Dž��������N�H�|$XH�C1�I��?A��HDŽ$�L��$ B�D ��$���I�ǍF�M��H�L��Ő�X��$�Hc�H��H���[
H��I���t��A��~X�G�Hc�A��Lc��pM��1��*�H�CJ�D HI��@�*�H���H��J��^��AH�	I�IPI���9�u�H��$�1�L�
��M��L��H�D$@H�D$0H��$ H�D$8��H�D$(H��$�H�D$ A���L����[
D9md�����H�|$XH�L$P�[
H���[
1��~���H���H��2M���[
Dž���T���H���H��2M���y[
Dž���*���I�new_rsplI�() failefDž�dL���L����Dž����H���H��3A���[
Dž�����@WVSH��0H��H���.�H��H��tVH���2H���P@H��H��SX�����S���~"I��E1�H��H�����H�ىD$(����D$(H��0[^_�f�H�new_cgatI�s() fail�H���L���fdž�edƆ�dž�H��0[^_��H���H����Y
���H�ى��������H��0[^_�f.�AWAVAUATUWVSH��8H��H�ͺtgcvH��VPH��H����H����P8�H<�UX�M`�H
���E\�����F�dnmd�EdH��VPH��t
H�Hh�zC
H�Ep�ddmdH��VPH��tH�Hh�]C
H����csedH��VPH��tH�Hh�=C
H����trpcH��VPH��tH�HP�C
H����{H�D$\t�CR�D$\�ud1����71���D$\I��?1�A��H�D$`L��$���$��I��Hc�M��H�D$PL���nD��$Ic�H��H���W
H��H����E1�E��I��~OE�F��A*Չ�H��A���A*��^��A$���D��$�AD$PI�ĠE9��H�D$PL��ŐH��$1�L�
m�I��L��H�D$@H�D$0H��$�H�D$8��H�D$(H�D$`H�D$ A���H����W
9ud����1�H��8[^_]A\A]A^A_�H�Unable tI�o determI�ine inkmI�ask fromI� ICC proH���L���L����L���L���Dž�fileƅ�Dž��r���I�new_rsplI�() failefDž�dL���L����Dž��3���H���H���2E����V
Dž���	���H�ICC profDž�H���H�ile has H���H�no vcgtH��������fffff.�H����q�2��x;Qd|H����Hc��T$ H��ѐH�T$ H������D$pH����SH��pE1�A�
Hc�H�\$0��$�H��ѐH�D$ �H�\$(H�����%���te����2tP�
��2H�����2E1�1���\��Y�f.�vf(�A�Ѓ�H���9��Mc�K��H���D0H��p[�E1���fD�h�2��x;Qd|���(����H��(�	��EU
H��tmH�A�H�H�g�H�PH����H�PH����H�PH���H�P H�[�H�P(H�`�H�P0H���H�P8H�Z���H�P@H�_���H�PHH��(Ð�����ATUWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�I��H��L�ŋI���eIcD$ H�W1H��H��H�TH�H�W1H�TH�SH��V1H�DH�CA�D$����fW�H�=�V1�5��21��D�2fD(��D�f.���f(��]�f(�f(��\�f(�fA(��]>
f(�IcL�@IcT$ f(��\�1�L��H���\�I��H��f(�I�H��AT �^T8�Y��X��Y�H��H��u׍FH��A9D$�]���(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�H�Ġ[^_]A\�f.�fA(��#���H�BH�BH�=oU1H�A�T$�5��2����fW�1��D��2�D
��2fD(��D}�2�D%T�2�DS�2�T�fA(�f.�w&f.���f(�f(�fA(��AX��A^���<
IcT�@1�H��H��H��T �Y��X�H��H��u�FH��A9D$�IcT$$1�H��H��H��f(��AY�$���T �\��Y��X��H��H��u��z���fDfD.��I���f(��A^��S����VSH��(H��H������H�N(I��H��H��([^��f.�H��t�fQ
fD��fffff.���S11���tL�T1!ʃ���I��PA�P���u����WVSH�� �ι?���+P
H��H��tI���uM��S1��t8H��S1�f�H��P�S���t��t�H�S�H��H��P�9Q
�S���u�H��H�� [^_��@t�H���H����������!�%����t������D�H�QHD��H��f�i�l����AVAUATUWVSH�� �����I��E1�E1�E��u<i���=�R1����H��R1�f.�H��P�{���twH�3H���"O
H��I��L��H���iP
��u�A	�I�A�$A����u�A��t,H�mX1���H�����D9�t<���u�f�D��H�� [^_]A\A]A^�E1���f�A��@I���A����E1��f�E1�H��W1��u
�H��9�t�A����u�1��E1��Mc�H��W1K�@�D��ffff.��������t<D��Q1E��t01�D9�L�
�Q1u� I��PD9�tA!�A��E���E��u������f��JQ1��t#L��Q1E1Ʌ�t	D9�tA��I��PA�@���u��Ð�Q11���t(E1�9�H�XQ1u�@H��P9�t�A����u�1���E1��Mc�H��P1K��H��H��f���P11���t(E1�9�H��P1u�@H��P9�t�A����u�1���E1��Mc�H�vP1K��H��H�D���ZP11���t(E1�9�H��P1u�@H��P9�t�A����u�1���E1��Mc�H�&P1K��H��H�D����O1��t*E1���L�
:P1u�fDI��PD9�tA�A����u���E1��H��t�Mc�K��L��O1H��I�H�
ÐE1�L�
�U1��u�I��D9�tA�A����u��øE1�f�H��t�Mc�H�
qU1O�@J��H�
�DE1�H�^U1��u�H��A9�tD�A��E��u�1���E1�Mc�H�U1K�IH�ȸ9Qt�1�;Q���ff.����KYMCt~��YARGt-�� BGRt1��Á� YMC�u��Ð��rtrp������E�Á�rtrp���E���AW��$AVAUATUWVS�5
H)�)�$�$�� baL��L�������YARG������ YMC�����KYMC���L��$`L��$P L�=N11�L�L$(L��M)��RHc�H�
G[1H��L�$�H��M1��I��PI��N�D 8���L�
�M1I�.H�
[1H��O�D! �����tA���u����B��������L�t$PH��$P �H+|$(H�D$8�D$H�E�M��I���H��H��	L�L$0H��H)�L�H�D$@�C��D$L�ۋD$8�&H�L�d$PL��$`H��H��	E1�H��H)�I�fDL��H��E�,$�q�J�?f(��AD$H���Z�f.�v�AD$A��I��I��A9�u�����D�T$H�L$LE�����A��Ic�E��H��L�H�D�"�JH��$�$H�BH��$�$C�D9�|~D�Y�$�L�
Mc�I��M�M�L�JM�HA���D9�T9�}*Lc�L��I��H��I��L��CT�Bf.�v��Hc�H��L��Bf.�w�Ic�D��H��L�9�~�H��$�$E���JH�D�"�-���Hc�H��L��L�@H�D� �HL��$�$M�H��$�$L�M�FL�@�~E1������1�L��D�@#Hc�H��B����#L)�H�H���XLXA��A�������~.�E�H��$@$H��$�#L��1�D�D�H��L9�u�E�f(�L�T$PL��E1�A9�������H��$@$1�1�Lc�Lc�H��M��I��M)�L�
�J1M�I��NcDPO��I��C9�ȁ���t
f�����E�(�$�$H���$[^_]A\A]A^A_Á� SLHt�� VSH�D���1��́�rtrp���E�뷁� ZYXt�a�� vuLtՁ� BGR�
�����rtrp������E���ANI�E�&L�t$0L�L$@H��H�D$8M9�t>L��H�H�D$0����� yxY�p�����lcmn�d�����rbCY�����1��!�����t+H��$D#�K�H��$@#H���H��H9��H��u�A��fW�A��L�T$P�$���������Mc�L��L��H��H��	H)�HcLPI�T1�D���@#E��u���Hc
H��D���@#E���������9�u�A��A���u����Ic�f(�����#I��I��I)�Hc�L�H���\DXHcLPD�@#���9��	Hc�L�H��HcLP���@#��u��LX�X�f.�s�A��D�@#����#x}��u2A���l���9�D�@#B����#��A��A���tOf(�Mc�L��L��H��H��	H)�1�L��
f���H��9�t�Hc���@#��u��@�X�f.�v��f(�D9������f.�v.��f(�~&L��$@$H��$�#1��A�H��L9�u�f(�f(����A��f(����f(��'���fDE1�H��M1��u
�H��9�t�A����u�1��E1��Mc�H�fM1K�@�D��ffff.�SH�� �˹���C
H���nH�/�E1҉XH�H���H�PH���H�P�
G1��tVL�
OG1E1��3f.���uD�@$��tIc�A��D�D�@I��PA��A�Q���t��u�D�@ ��f�fW���D�P���xLHcP H�
�F1H��H��H�LH�H(H�
�F1H�LH�H0H�
�F1H�TH�P8H�� [�f.�E��L�nF1t0A��1�N��fDHcL@H��H��H��L9��AXu��
4�2HcP H�
!F1�^�H��H��H�H�H(I�H�H0H�
F1H�H�P8���H�� [�j
8H�
K�2L�H`A�/��oB
������UB
�������������SH�� H�YL�H��A�P�H���":
�ff.����N�1Ʌ�Iȅ�x*���M�Hc�Hc�H���2H�����f.�1���fff.�ATUWVSH�� H�\�21�H��$P�mH��H��t'� 1H��H����E1�A�H��H���P ��uH��H�� [^_]A\�H��S@1��p�1�I���F�1�H���l�1�H���B�H��$PH���2H���{�H��H��L����'�H���H���'�H���L��$L��$�s�H��袾������$�����f	H��H����Hc�$H���H��H��tzLc�$H��$H����A
H�����Hc�$I��H���RH��H������/H��H����E1�A�H��H���P �������H��S@1����H��V DH��1��f�������H����H����H����H��$`�ƶ	H�����H��$`��7
H��$�H���A
���H��$`H�\$ A�p�PH�D$ H��$�H��H�D$8�	H��$PH��2�?
H��H���H��H��蝾	H���U��H���X�	H��$L��$H���@���H�����p�	H��1��?
�H��H���������$H���H��H����D��$H��$H���
@
��$H��$��$�j?
�0���H�L$ 1��	1��J?
����H��V8��
���H��H��1�VH��V ���H��f��U8���賷	H��1��?
����H��1�蚷	����H��V 1���������SH�� H��H���H��t��>
H��H��t�>
H��H��t�>
H���H��t�>
H���H��t�>
H���H��t�r>
H��H�� [�e>
DH��H)t$ )|$0�\�f(��t$p�\��^��"���Y�(t$ �X�(|$0H��H�H��8Lc�H�H��fW�L����@
Jc��4I��H�B���<�B��0J����H�D$ u�k����Y�H��8�f��+$���Y�H��8�f�H��(D����L$Pǁ����ǁA��t^������7D��8��D)�E��D����~.1�H���A�H��A9��A��J��H�I�A��ta�����'D��,D�E��~@Lc�1�I��L���A����A�H��A9��A��J��H�I�A��uD��A��/��H��(Ð������D��\D��E�E��D��~�Lc�01�I��L���I��H���A�H��A9����D���D���E��D��D����Mc�1�I��L���A����A�H��A9���������������0���8���H�
s�2A�/D�����@AWAVAUATUWVSH��)�$@)�$PD)�$`D)�$pD)�$�D)�$�I�ϋ���AD�q��D$4��D��E��~%Hc�M���1�I��L��L��H��A9��E���fW�E��fD(�f(��x�D$4fW�H�t$PL��$�H�D$@1�H�D$H��fD(�I�D�f(�H�D$81�E��~cf�M���Ic���Lc�M����I����A��A���O�D�L�L$ H���A�� ����H��A9��Ic�M���M��T$4H�t$ E��I���p)���|$4����L��M��L���Df�L���M���L�\$ I���AU�^ ���AEH��I��H��H;|$8tFA�G
��0��<Hc�4u�L���M���L�\$ I���AU�7����AE�A�G��E��H��$�~I���1�H�L��L��H��A9��D�D$4E��~^M���E1�E1�I��CL�PE���C\�~-H�L$@I��1�L����Y��X���H��A9��I��I��PD9D$4�M���I���I�A��I���H�D$@ ���H�è�D$H�X�H�D$H�Yȃ�A9���DX�����A�GE�w�D$4�D^�A���fD(��fA(����E*�E���%��2I���A���f(�f(��A^�fD(����-z�2Hc�L���S�2�Dj�2E1��D
N�2fD(�C�����~lf(�L��1��
��H��9��Y��Y��X�t@��f(�~܃����*�f(��\��A^��\��AY��Y��X��CY��X륃�M�\�I��E9��{���fE(��DYӃ�f(��#�%��2�D*\$4�L$4I���A��0f(�f(օ��A^�fD(����-r�2Hc�L���K�2�D
b�2E1��DF�2f(�C���<����f(�L��1���
��H��9��Y��Y��X�tc��f(�~܃�7�*�f(��\��A^��\��Y��Y��X��CY�Ǩ�f.�D�H��A*��AY��X��CY�Ǩ낃�M�T�I��D9D$4�Q���fA(��Y��AX�(�$@D(�$`�X�D(�$p(�$PD(�$�D(�$�H�Ĩ[^_]A\A]A^A_�H��I��I���L��L�@PA����E����8��A�F�M��I�\�E1���~.Mc��I���1�N���L��M��H��9��A��A��A9�}BIc����I���D)�Mc�L��1�I�N��f�I�H��L9�u�I��I9��p���A��9������Lcك�N��A��)�L��1��Hc�L)�M���I��I�H�H��L9�u����D�H��A*��AY��X��CY��X���fff.�AW��<AVAUATUWVS�J
H)�)�$<)�$ <D)�$0<D)�$@<D)�$P<D)�$`<D)�$p<D)�$�<H��D����YH��$�<�qE���\$d�A����~$Hc�L���1�I��M��L��H��9��D���E��~'H�D$xE�A�H�T$pN���H��L9�H�H��u�D���E����fW��F��D$`���d$`L�d�H�D$PH�D$@fD(�H�D$Xf(�I��E1��H��$�L�t$@~vDJc���H���Ic�L���F���H�‰�I��N����+��L�L$(N���Hc�L�L$ H�T��B0�����B���:I��D9��Hc�H���H��$ ;L��$p6�\$ A��H�T$(H��$��H��H��$�:H�D$0��"�����dL��$p;�\$LL�d$hI��E1�I��L���|Hc�4M���I��$�D��<��A+�$0L�D$0M��0H��L�D$(N��� ;Hc�H��԰#L�D$ N���C���B�� ;I��I��H��D9���A�D$
�x����E�0Hc�4�E��I��$��B�� ;D��<�E\�N���A\‰�A+�$0H��E���A^�Hc�H��԰#H���D$ ����AY�E���AX�~$1���L��AY��L�H��A9���B�� ;�.���L��\$LL�d$h�G�5��L��$�;~%H�T$@H��1��H��I��H��9��~hL�T$@L��E1�L�\$P1�fD�AL�P���\�� ;~,L��H��1�L����Y��AX��A�H��9��H��I��P9��H��$0:L�L$@L��H���H����~q�C�L�T$PH��$�9f(�E1�L����J�~=L��H��1��B\f(�L���H��PL9��Y��X�u��BI��M9�u�H���H�L$@�������Y��X���D$L�DX���E1���f(���F���E����B����E1�E��A��D+����C�*f(�~MH�L��$p;L��$�9����D��1��A�Hc���AY�H��9��Y��p6�Y��X���Y�B�DA��E9�H��XL�p�L�pu�I��D9��Q����D$L��E1҅����D$`L��$��D�l$`�ك�M��E��D��~b�B��p;��H��$���L���BY�Ԑ9��H���ELcƒ�L9�H���Y��X��Y��BXD�p�BD�pu�I��D9����D$LtrE1ۅ�~kF���<E��~UF���4�B�ܐ91�E��D+�0B�B���D9�Hc�Hc���̰#�Y��X��Y��XD�p�D�pu�I��D9���D$XH�D$@�H�D$XH�D$P ��9���G���D����_�w��E���D^�~BA��H�T$pL��$�xN��1���I��^��H��L9�u�D$LfD(��I�D*˅��%r�2L������f(�f(��A^�fD(��H��DR�2H���-.�2L���x�D-=�2�D%$�2I�fE(�E1�F���E����fA(�1�1�f(��AX��0�*�f(��\��A^��\��AY��Y��X��BY��XH��f(ȃ��AD9��Y��Y��AX�Af(��Y��Y��X�t+��f(�~���~��h��*��AY��AX��BY��X뛃�H��I�I�I��D9��,����DY�D$LfD(��C�D*��%�2L�����0f(��A^�fD(��H��=��2H�����2L���x�D-��2�D��2I�fD(�E1�F���<E����fA(�1�1�f(��AX��0�*�f(��\��A^��\��AY��Y��X��BY�רH��f(ȃ��AD9��Y��Y��AX�Af(��Y��Y��X�t*��f(�~���~��X��*��AY��X��BY�ר뜃�H��I�I�I��D9��-����DY�fA(�D����AX�E���AX�����~<D����1�H��A�Hc��L�p�X�԰xH��$�<��H��H9�u�(�$<(�$ <D(�$0<D(�$@<D(�$P<D(�$`<D(�$p<D(�$�<H�Ę<[^_]A\A]A^A_�H�D$@H��H��$�9H���L��$ ;L�HP������D��8E��~1�H��$�<H��H��A9��D�d$dE�B�E1�L��$�<I��E��~DE��~4B����1��Hc��L�p�X�԰x�AX��A�H��L9�u�I��D9\$d�D9������H��$�<D��A��1�E)�Mc�J��I��A�Hc��L�p�X�԰x��H��L9�u�����ۋ�8���C�I��L�\�1Ʌ�~&Ic��L���1�I��M��L��H��9���A��9�}9Ic����L���)�Hc�L��1�H�I�L�H�H��L9�u�I��M9�u���9��M�A�Lc�H���O��)��L��1�Hc�L)�H�T�M�L�H��L9�u��	�fW����fD(ƉT$Lf(��>���ff.�H��X)t$0)|$@H��f(��AtU�A
Mc�u\�B��0B���<�B���Jc��4f(�L����\��\�I���^������Y��X�(t$0(|$@H��X�B��0B���<Jc��4L���J����f(�I��H�D$ ��
��(t$0(|$@H��X�fDUWVSH��X)t$0)|$@1�H��H��L��A
���A��qf�(t$0(|$@H��X[^_]�H�f(����0Hc��4��ÀL����\׋��<�\�I���^������Y��XǍF��H��;C}��C���D�t�딐�A���u����C���T�u*��F��H��9C�K����C���T�t�H�L���Hc��4���0���<H��ÀI��H�D$ ���f(��H��8�Af(�tAMc�L���Jc����B���B���J����f(�I��H�L$ H������H��8�fff.�AVAUATUWVSH�Ā)t$0)|$@D)D$PD)L$`D)T$pH��D�NjA��������t<��f(���(t$0(|$@D(D$PD(L$`D(T$pH��[^_]A\A]A^�@Ic�fD(�L�v2L�n<�����=�2L����B��B��D\��*��\��D^��\�f(��AY��$
�,��U���JcL�9�M�H�nD�*�H�����H��fD(��X��D^��^�fA(��	��JcL�H�����f(�H��f(��	��f(�A��fD(�H���P���fA(�A��H��f(��<���fA(�C�A\��A\��\��^��Y��X��#��������\��Y��X����Hc���L���J���f(��B�I��H�D$ �B
��f(��Ic�L����������Hc��dH����f(�H�D$ I���
���,���Ic�H����������Hc���f(�H��H����H�D$ �	�����f.�AVAUATUWVSH�Ā)t$0)|$@D)D$PD)L$`D)T$pH��D�ƋA��������t|��f(�t3(t$0(|$@D(D$PD(L$`D(T$pH��[^_]A\A]A^��Ic�H���������Hc��df(�H��H����H�D$ ����f�Ic�fD(�L�w2L�o<L�gDH���H����B�B���B�HcL��D\��\�H���D^�fA(��M�������=�2�*��\��Y���!
�,��W���HcL�9�B��M��*�H���H��fD(��X��D^��^�fA(�����HcL�L���B��f(�I��f(�����fA(�A��H��fD(����f(�A��H��fD(��p���fA(�A��H��f(��\���fA(�f(��B$��\��B��\��A\��\��^��Y��AX��Y��X��9���Ic�L���������Hc���H����f(�H�D$ I��� �����ff.�UWVSH��(D�QH��H��L��E��~(1�@�L�A��H���o����C��H��9F�H��([^_]�DH��8�AH��f(�tD�A
Mc��B��0B���<Jc��4u,L���J����f(�I��H�D$ ��H��8�fDL���J����f(�I��H�D$ �?��H��8�f.�UWVSH��8�A
H��H��L��un�A1���UH��8[^_]�H�L���Hc��4���0���<H��ÀI��H�D$ ��f(ЍF��H��9C~��C���T�t�뤋q��~�1�f���F��H��9C�y����C���T�t�H�L���Hc��4���0���<H��ÀI��H�D$ �D��f(��fffff.�WVSH��@H�|$ H��I��H��H������F
u-H��I��H���GI��H��H���}����H��@[^_�@H�
I.1I��H���N�H��I��H���\GH�
%.1I��H���ڞ��VSH��HH��H�T$ H��I���W����C
tA�D$ f.s�2v H��H�H��H�FH�� H�FH��H[^�f.��D$(f.�2w���fffff.�VSH��(�AH��H�Өt=��tXH�
q-1�|�H�V8I��H���FH�
V-1I��H��H��([^��DI�H�I�@H�BI�@H�BH��([^�H�Q8H��H��([^�>Ffffff.�AUATUWVSH����A�iH��H��M��L�d$ ��~-1���AL�A��H���n����C�A�H��;F|�H�F H�\$pM��H��H���P I��H��H�����I��H��H�������~1�D���X���H��9��H���[^_]A\A]�f�AWAVAUATUWVSH��
)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$
I��D��$(��$h
D��$x
�D�$�
H��$�
��$�
��H��$L��$���	L��$E‹�$h
L��$ A�GH��$0H��$8H��$@A�W����A�W��$x
A�_I���A�WH��$�
I�W(H��$�
I�W0��$�
A���H��$�
I�W H��$�
I�����L��$�
1�fDA��A����H��9��I��I��1�ALJ8=�=L��$�
�PADŽ�<�<9�~A��8H�T�I��ǐI��I����I��I���XH��9�~2A��8����<�A����I��I��ALJ8=D��$x
E��~^D��$x
L��$�
1�H��$�
�<A����=M�A���<I��I���0H��I��ǀI��I��ǨH��A9��E1���ALJ�ALJ�~(1�1�A���A����H��A��9��E���D��$x
E��ALJ,E���p��A�D��A�ዌ$x
1�A���H��D�9��D��$x
D��$x
ALJ\1�E�E��,E1�E��0D��DA���<A���4H��A��A9��E��\E�E1ۅ�E��`ALJ�~3D��1�f.�A���A���dH��A��9��E���E�A��/E����3#I���H��t�t
ILJ�I��H��t�X
ILJI��H��t�<
ILJIc���H���5
H��I�����H���
H��I����H���
H��I����A�G�DI�G(H�H��$0H�PH�@H��$8H��$@I�H����H�n'1M�O8H��L��$�H��$�H�X'1H��$�H�Q'1H��$�H��$0H��$�H��$8H��$�H��$@H��$�I���H��$�H��$�L��$�H�T$(H��$�H�T$ 1���E�GE������I���A���~AH�E1�L��C���1���~f.�I��H��9��I��Hc�D9�M���Ic�A���A��1�L��$�
E��H�<��fW�D��$x
�D��2�D
��2A���1�M�������fA(�M��E1�1�@1���f(�&�I@�A����A\�H��9��Y��X�~%��r��A�ǐ�A\�H��9��Y��X��f.�vfD.���f(�A�Ƀ�I���9�u�Mc�K��I��H��M�DPL��L������E��~ 1��ى�M��H�����A9�Hc�L���˃�D9�����I�����$x
A��0��~?H�D��$x
E1�L��C���<1���~I��H��9��I��Hc�E9�M��҅�A��`~7H�E1�H��C���1���~H��H��9��I��Hc�D9�H���I���E�����1�1�E��D��$x
~}I��M��H��I����I���H���~1�I��H��H��9��E��~1�fDI�L�PH�L�PH��A9��H��PL����I��H�ƨ�t���E���A9��A�GtI�����1Ʌ�~$1�1�A����9�L�H��9��Hc�H����
H��I�����E�_A���A���
A�G����$A�G��$H��?I��ALJ�ALJ����ALJ�L��H�D$ fW�M�����L�
t$H����A��L�|$PL�|$@H��$`L�L$HL�
h��H�D$8H�����MbP?�D$(�L�L$0H�D$ M��M�������
A����~+Ic�M���1�M��I��M��L��H��9��E�_D�ؾ�I�����MbP?�����-
D�؃�����I�����A���A��`~EHc�Hc�E1�L��H��C���1���~M��L��H��9��Hc�I��H��I�H�D9��A���@A�G��tH�
V�2�q
I���A����d���iL��$�I���L��$�
H��$@H��$�E1�L��H�D$xDŽ$�A��H�D$xL��L�DPL�����E�GH�|$xI��E��~T1�Ic���I���A����A�ߐ��H��I����H�D$ ���E�G�C�D�H��D9�|�Ic�I���I��A�WH�l$ H���7��A�W����	E�_1�E��~RIc��4M���I����A���<�A��0��I��H�D$ �C���G��H��A;G|�A�W����	E��~!H�L$xI��1ҐH��H�D�H��A9�$x
��~^��$x
E1�E1�fD�C�E���B\�~-L��I��1�L����Y��XD��D�H��A9��I��I��PD9��L�D$xM��H��I���A��H�D$xI���I�� ��$�H�L$xI��L���H�H�D$x��$�A9���APL������H��$�D��A�G����H��$X
fEW�H��$�
�Dٽ2�D
�2L��$��=�21�H��$�L�|$x��$�H�L$xDŽ$p�����~C��L�L$xL���H��H��H��H��I��1�H��L�M�H�H9�u�H�D�1�A��HDŽ$�
HDŽ$PH��$@H��H��$���BH��H����H�L$xH�@1�L��$�A�L��$P
�����$�H�L$xD��$�H���H�D$HH��$PH�D$XH�D$PH�D$@H��$�
I��H��H�D$8H��$pH�D$0H��$�H�D$(H��$@H�D$ ��h���$�I��A��E�n�L��H���A*��A^���$P
����L�H��?��$P
I�G�$��\��\�fA(��^��AfA(��_�$�
��	E���X��t����AXG�A��d�AG�g���H���X�D�$�H��$��D�$@
L��$�fA(��E\��D5�2���A\�fA.��A^��vfA(��^��%��H��L9�u���sH��H����L��$�H��������?1�H��E��H�D$(L��$��D$ d�SH��$hH��S(H��$�H��$h����~:L��$�1�Mc�dL�L$xI��M���L�L�M��H��9���
H��H�L$x�GH��$�H��;A�������$�I��1��$h
��I���E�����E1�1�E��H��$�D��$x
�M��M��L��I��L��I���H�����E��~+I���I���1�L�L�f�L�D�PL�D�PH��A9��L��I��L��H��PI���d�L��I��L��H��PI����I�G H��t\M���H��H��M�P I��H��L���!�I��H��L�����E��~(I���1�L�f��D�P�\��D�PH��A9���I�ŨA9�������A�G����L��$��\$xL��E1�L��D���Ic�H���k	
H��H��QE��~rE1�1�D�A*�Hc�d�*�M�������I�L��^��b�Hc��I�����f(�H���A�H��B0D���I��A9��A��H��H��E9g�T����\$xI���H��t	H����XD��$x
��1���=H��I������A�����H��$�
L��$�
H��$�H��$�
H�l$ H�\$XH�T$PH��$�
L�L$@L��$�
H�L$0H��H�T$HH��$�
L�L$(H�T$8��$�
E���M�����hA�w���FE�_E��~1�H���H����
A9w�M�O M����	E���E����	��$x
L��$�1�1�M���L��L��I�A�Q M��L��L����M��L��L���]���~)M���1�I��AD�P�AXD��AD�PH��9���H�èA9���/	M�O �Mc�K�D�H��H���
H��I������(�$���(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$
H��
[^_]A\A]A^A_�I�G8H��H��$���.I���H��H��$���.H��1I�G(H�H��1H�PH��1H�P�M�Hc�H��H��H����E�WE�������1�Ic��4M���I����A���<�A��0��I��H�D$ �A��G��H��A;G|��)���I���M��H��A������A�G����A��A��t��I��h㈵��>A�G�(��2I��ALJ�ALJ����L��ALJ��\$ M��H��$`�t��H�MH�
v��L�
_��A��L�|$PH�L$8H�D$HH��L�|$@L�L$0�t$(L�l$ M��M�������[A����~+Ic�M���1�M��I��M��L��H��9��A�G�ƒ����M��
��
�A�G����I���E�_���E�oA��8E����A�G�.�=��2H�333333�?I��ALJ�L��ALJ8ALJ����I�����MbP?ALJ�H�|$ H��$`M��f(����H��H�
��L�
��A��L�|$PH�L$8H�D$HH��L�|$@L�L$0�D$(�L�d$ M��M���!���A��8���C�M��M�l�1Ʌ�~3Ic��M���1�M��I��fDM��L��H��9���A��9�}8Mc����M���)�Hc�L��1�L�I��H�H��L9�u�I��M9��w���A��9�~J��Lc�)�A�J��I�L��1�Hc�L)�M���I��L�L�H��L9�u�A�G���RA�G�8I�333333�?I��ALJ�A��8ALJ����L��ALJ�L�t$ M��f(��a��H�:H�
c��L�
L��A��L�|$PH�D$HH�����MbP?H�L$8L�|$@L�L$0H���D$(�H�D$ M��M���_���A��8���C�M��I�t�1Ʌ�~1Ic��M���1�M��I��@M��L��H��9���A��9�}9Mc����M���)�Hc�L��1�L�I�L�H�H��L9�u�I��I9��x���A��9�~J��Lc�I���)�A�J��I�L��1�Hc�L)�H��L�L�H��L9�u�E�_E���pA�G��I��h㈵��>������A�G��I�333333�?I��ALJ�ALJ����ALJ�L��L�T$ M��f(����H�`H�
���L�
r��A��L�|$PH�L$8H�D$HH��L�|$@L�L$0�t$(L�l$ M��M����A����~+Ic�M���1�M��I��M��L��H��9��E�_� �A�Gf��I�����MbP?�
���L���7
���H�
�2��	�*���H��$`H�
ƪ2H�T$h�L$h��`���L���6
�����H�
L�2�	����L���6
f����H�
�2�	���L���6
f�����H�
<�2�g�	E�_�Q���fDA�G����	I���M���A9w��	A��Ic�8H��M��M��H�ºI�H��������?I�H�\���H�D$HH�D$@L�|$8H�D$0H�H�����z>�D$(�H�D$ 蔽���2	I��I�����L�Ic�8I����H��L���H���E�_��E��0ALJ\E1���I���L�
��M��1�H�����A�G�IE�OE���lH��$P
L��$�
L��H��H�sP���I���H��H�����I��H��L�����A�G
�
E�GE���tH��$�
H��$0H��$�
H��$8H��$�
H��$@I�H����H��
1H��$�H��$�M��E1�H��H�|$(H�t$ H��$�H��
1H��$�H��
1H��$�H��$0H��$�H��$8H��$�H��$@H��$�1���H��$�H��$�
L�CP�&H��$�
I�G(L�
���M��H�H�H�QH�PH�QH�PI���1�H�����L��$�
I�H��$0I�AH��$8I�AH��$@I�H����H��1H�|$(H��H�t$ L��$�L��$�H��$�H��1H��$�H��1H��$�H��$0H��$�H��$8H��$�H��$@H��$�1���A�O���
fW�fA.���
A�W�=��2����
A�G�ƒ�0��0����tLL��$�
�AAf(��AY�f.�v/A�GfD(��D^���t�DD$hH�T$hH�
ǩ2fA(��	fD.�����A�G1҉���P��P������H�Y@ILJILJ I��I��L��I�����A�G��tH�
w�2��	I���1�L�
:��M��H�����1��n��M�G(L��$�H�
1L����{I�G(H�
:�2L�HL�@H�H��$�L�L$hH�D$0H��$��\$hL�D$h�T$hH�T$hH�D$(H��$��L$hH�D$ �r�	���H��
1I�O8H��$�H��$�H��$�I��I��H��$�H�}
1H��H��$�H�n
1H��$�H��$0H��$�H��$8H��$�H��$@H��$�豬H��$0M���I��H��L��$�H��$�H��$8H��$�H��$@H��$�H��	1H��$�H��	1H��$�H��	1H��$��5����Ic�H��H��H����	H��I��������
�]�	��H�
	�2��	I����	�L��$�
H��L��H�sP���I���H��H�����I��H��L���x��A�G
tH�
	1I��H����H��$�L�CPH�
�1�yH��$�L��$�
H�
��2L��$�
H��$�
H�D$0H��$�L�L$h�\$hL�D$hH�D$(H��$��T$hH�T$h�L$hH�D$ �;�	H��$�
��H��$�
�H���9�H�
��2I��H����	���H�;1L��$�I��H��H��$�H�!1H��$�H�1H��$�H��$0H��$�H��$8H��$�H��$@H��$��]�H��$0L��$�I��H��H��$�H��$8H��$�H��$@H��$�H��1H��$�H�|1H��$�H�u1H��$������H�L1H��$�H��$�M���I��H��H��$�H�#1H��$�H�1H��$�H��$0H��$�H��$8H��$�H��$@H��$��_��T���H��$�L�CPH�
�1�rwH��$�L��$�
H�
��2L��$�
H��$�
H�D$0H��$�L�L$h�\$hL�D$hH�D$(H��$��T$hH�T$h�L$hH�D$ ��	����H�
:1I��H���?����H�
�2�	���H�1I��H�1I��H�1I�� �j���H��$`H�
�2H�T$h�L$h�KWH������H�
��2�O�	���H��$`H�
+�2H�T$h�L$h�SV���Ic�H��H��H����	H��I���������Hc�H��H��H����	H��I�����s��i�H�
+�2�VI��H��$�H���f(�H��H��H��$��A^���I���M��L�
B��1�H�����H��$�
fA(�H���XL��$�
I�G(I��I�H�I�QH�PI�QH�PI�H��H��$0I�AH��$8I�AL��$�H��$@H�c1H��$�H�\1H��$�H�U1H��$�H��$0H��$�H��$8H��$�H��$@H��$�蘦H��$0L��$�I��H�ڹH��$�H��$8H��$�H��$@H��$�H��1H��$�H��1H��$�H��1H��$��#�����H��$P
L��$�
L��H��H�sP����I���H��H�����I��H��L�����A�G
tH�
@1I��H���E|H�KPH��$�H��$@I���IH��$�
A�W��$�
H��$�H��$�
����$�H��$�~PH��$�
�w�21���H��9��_�f(��H��$@1�L��$�
�A��^���H��9��I��H��L�����I���H�sPH��H�����I��H��L�����A�G
tH�
N1I��H���S{H�KPH��$�I���_��$�
f.�v-H��$�
��$�f(�H��$�H��$�
H��$�H��$�
�@f.�vR�^�A�G���DY�tAH��$�����DD$hL�L$hH�
R�2�t$hL�D$hH��fA(�f(��N�	A�G�`����DD$hH�T$hH�
��2fA(��(�	�,����D��2fA(�����E�_E��tH�
�2���	A�GtL����'
��2I��ALJ�ALJ����L��ALJ�
�\$ M���W���H�0H�
Y���L�
B���I��h㈵��>A��L�|$PH�L$8H�D$HH��L�|$@L�L$0�D$(�L�T$ M��M���U���tH��$`H�
��2H�T$h�L$h�"QA����~+Ic�M���1�M��I��M��L��H��9��A�G����L���&
��E�gE��tH�
��2��	A�G��
��
t��I��h㈵��>A�GtL���t&
���2I��ALJ�ALJ����L��ALJ��\$ M�����H��H�
���L�
��A��L�|$PH�L$8H�D$HH��L�|$@L�L$0�t$(L�l$ M��M������tH��$`H�
��2H�T$h�L$h��OA����~+Ic�I���1�M��H��M��L��H��9��A�G�y�L���q%
�W��H�
%�2�X�	�;��ff.�SH�� D�Y��E��uH�� [�f.��q
1H�
ʜ2A���:�	��dt�Ǹ7H�H0H�� [�I�	��
�F�	��@�I��~1��H��H��9����fffff.�SH�� �PH�˹�A�	H��tWH����H�H��(H���H��0H����H��8H����H��@H���H��HH��H�� H�� [Ð������AWAVAUATUWVSH��x)�$�)�$�D)�$�D)�$D)�$D)�$ D)�$0D)�$@D)�$PD)�$`I��L�Ë��H��$����fW��E`�EX�D
0�2�=�2�D��2�D-v�2fA(�fA(��DY+�:�	fD(��EY�fA.���	fA(�fA(��AY��AY��X��DQ�fE.��A��$��D��2�E_օ�t+fA.���	��2fA(��D
�2�T$(�f��-�2fA(��D
�2�l$(�A�$�f.��AY�$��	f(��^�f(����	�AY�$��-Û2f)l$0fD(�f.��E^�$��DX-��2�K�A^�$��A�$��AY�$��h�	�E�$ �D_��D$(1�H�l$p�AY��A^��Xb�2�U�	�D=\�2�X\�2�
\�2�EY�$��EY�$��DY��A�$p���	�
4�2fD(�fA(����	�
%�2�D$(fA(����	�A�$�f(��EY��AY�$��DYL$(�^��D^�fA(�f(���	f(��A�$��A�$��AY��AY�fE(��AY�$�fDWt$0�X��A�$�AY��A^�$��]��A�$�\��DY��v�2�X.�2�D^��Y�2�AY��D_��
g�2f(��E\�fE(��D^��<�2�E^��E^��AY��AY�fE(��X��AY��DY51�2�X��
�2�AY��DY%�2��$��\��A\�f(��\��A\���$��A�$���$�f.�vA�\��A^�$��AX�$��TH��H��tU����A�$�f.�w��A�$�f.����\��A^�$��AX�$�TH��H��u��d$p�\$xf(�f(��D�$�f(��X��DR�2f(��AX�fD.�wifA(��^��\9�2�Y9�2�AY�f.�v)�
.�2�a�	�d$p�\$xf(��Y�2�X�f.���f.���f(�f(��AY�A��$����Y�f(��\��\�f(��^��^��D$p�L$x�I��$H��$�I��H��$�H��H��H�D$0�1I��$�I��H��H��H�D$(���$��X�$��AY��A^D$@f.��f(��]�f(��A�$�H�\$PL��$L��$0L��$��F�	f(�I��H��H��H��$P�KI��$�fD(οH�D$HI��$PH�D$@H�T$HI��L���hH�T$@I��L���X�D$X�A^D$@f.���f(��]�f(��A�$���	f(�M��L��L��fD(��KM��H��H���H�T$0H��$�I����H�T$(H��$�I����fA(�L��$�H��$�H��$p��JL��$pH��H����
���!����D$PH��$��A\�$��AY�$���D$X�A\�$��AY�$��@�D$`�A\�$��AY�$��@1�(�$�(�$�D(�$�D(�$D(�$D(�$ D(�$0D(�$@D(�$PD(�$`H��x[^_]A\A]A^A_��fA(����fD�E�$ ������\��2���2�
��2�Y��\��^��
��2��	�A^�$x�D���f.�I��$H�L$PI���;���fD�AH�A@f(�f(��Y��Y��X��DQ�fE.��h�3�	�D
�2fW��AY�f.��f.�2�1�
�2f.���D֓2fE.���\��2fE(��=v�21��Dc�2�E\��D5��2fE(�fD(�f(��^��2f(��4��^�f(ك��\�f(�fAT�f.��2�z���qf(�f(�fA(�fA(��\��Y%K�2�Y
;�2�X�f(��A\��^�f(�fA(�f.�w�˒2f.��-ǒ2��f(�f.��c����\�f(��\��AY��^��AX��H���@�=x�2�Dg�2�Dޒ2�DY�fA(��'�	fD(�fA(��EY��Dc��	fD(��EY��D[�)�����DX=?�2�E���f�f(��Ē2�^�f)T$0fW�f(���	fWD$0�AY�$������f(�f(��J���f(�����fA(��
�2�\#�2�-#�2�D
"�2�l$(�AY�fT��Y��A^��M�	�A*�$��Y
��2�AY��^
��2�Y�f.
�2v"f(�f(��^��A�$0�X��^�f(��D\�f(��\�fA(��^�f(�f(����f(�fT�fAU�fV����Df(��\��Z���f(��\��Y%А2�X�f(��AY�����Xΐ2������2�Y��X��2�����B�	fD(����f(��/�	�KfD(��C�{���ff.�AVAUATUWVSH��)�$)�$ D)�$0D)�$@D)�$PD)�$`D)�$pD)�$�D)�$�D)�$�H�t$PH�|$pI�����H����AH���Y��X���L$P�AH�Y��AY@I���X���X��H���L$X�D$`�	D���E����fEW�L��$��=U�2�D
Ԑ2H��P�T$XL��fA(�H��$�f(�1����f(�fT�fAU�fV��^S@��C�5a�2�D��2�D%��2�D~�2I��L��H���x�T5f.���H��H��u��\$p�T$xf(���$��X�f(��X�f.����^��-{�2�l$8f(��\ُ2�Yُ2�Y�fA.����
ʏ2��	�-ŏ2�\$p�Y��l$@�T$xf(��X�fD.���f.���fA(�f(��9@f(�H��H��L��$��^�f(��B�7H��L��fAW��BI��L��L���.L���6BfA(��\�	��3H�Y�fA.��%f(��\8�2�7f.������f(��Y�2f(�H���\�f(�H���^��X��AY�f(��\�f(�f(��\�f(��^��%ʎ2�X��^�f(�f(��\��\��]�f(���AI��H��H���g�*���f��-�2f(�fA(��l$8�-Q�2�l$@�YL$81�H��$��Y��Y�f(��Y��X��X�����T$x�D$pf.�v7�\��Y���X���D5H��H��tI�7���f.�w���f.�� �\��Y���X���D5H��H��u���$���$��D������D�`��h�Y��Y��DY��DY��Y���Y�x��$��DX��DX������p�Y��Y��Y���X��DX��DX��X�fA(��D\
C�2�AY�f(��Y��DY���X��Q�f.��s�DZ�2fE.�fA(��D_������^���Y����	fD(�fE.���fA(�����^���Y����	�D� �D_�fA(�f(���	�D=ي2�DY�fE.����1�2�AY��^,�2�Xd�2�W�	�%_�2�X_�2�
_�2�Y���Y���Y���p�d$ ��	�
8�2fD(�fA(����	�
)�2�D$HfA(����	�d$ ����DY��Y���DYl$H�D^�f(��^�f(�fA(���	�Y��f(��������AY��Y��^���X����\��Xg�2fDW��DY��D_�f(��Y��^��A]�fE(��X�fA(��^��L$@��	�DY��Y�fE(�f(��EY��Y��DX��EQ�fE(�fE.��5D���fA(�E��tfA.��%�Y
��2D����E]�AuE���AM��(�$1�(�$ D(�$0D(�$@D(�$PD(�$`D(�$pD(�$�D(�$�D(�$�H�İ[^_]A\A]A^����2fA(������%Չ2fD.��d$@�(���f(�fA(��k���fD�D� �R���f��Y�x�
ȉ2��	�
[�2�Y��XG�2�^��X
+�2�L5�q���fE.���AM�AE��	�
܇2�Y�fD.��}�Շ2f.����ˇ2f.����%��2fD.���f(��
��2f(��\��5��2fA(��\��^��\��Y��Y��2�X��\�f(��^�fD.�w�%.�2f.���T$8f.����Yd$8f(��\T$8�\��Y��X��X��Y��X��5L�2�Y�f(���	�AY��AEf(���	�AY��AE����L��$�H��PI��fEW�L����D$X�^C@fD.��K�=c�2f(�f(����f(�fT�fU�fV������	f(�I��L��H���W;����f�fAW��Y���^���	fD(�fEW������DX=�2�9���f�fA(��
3�2�\S�2�YD$8fT��YI�2�^I�2��	�*���Y
<�2�AY��^
7�2�Y�f.
3�2v f(�f(��^���0�X��^�f(�f(�fE.�v�A\��Y��AX��>���f(��\��h����X
P�2�v���fA(��=�2����f(��Y�����f(��Y��\��X�����fA(���	fD(������	f(�����fA(���	fD(����fDUWVSH��)t$p)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$��H����$`H��$���$hH��$���$����
څ2�_�f(�f(�fW��^�f.����5�2f.���
fD(�fD(��=�2�D
O�2fE(��D���D���D���S I��_y�2H�S8I�PH�S@I�P�[0�CP�c(H�SHH��$pH�SXH��$xH�S`�f.����`f.����Xf.����AX�^��Y��Ch�@�Y��Cp�YX�[x��$���$�H�ɉ���,�����^f.��T�D��2f.��fA(�f(������^A�AY@����A�^A�AY@���I�@ǃ����H����C0H��q�q�?�[`H����DCXH��q�q̿�Y�H���H�@�k8H����DchH��?fE(�H����^[(H��������?I��Mozӛ޿I�-d!Y��I��?I��?H���H��?H��?H��������?H�t�E]t�H�F]t�E�?H��q�q�?L���L���L���L��`H���H���H���H��hH�t$���~�?H��pH��xH�Dio��ĿH�2�%���DY��S@�Dkp�cH�DY��DY��Y[x�EX�fE(��DY��DY��DX�f(��EX�fD(��AX��D^��т2�Y��EY��D���EY��EY��D��fD(��D��fD(��E^��D���D���D��2�DY��AX��Dv�2�EY��A\����d�2�Dc�2�Y��DY��Y��Y��AX��DL�2�X��DY���2�X�����AX��D�2�DY���������Y�����DY��AX��A\��D؁2�DY�������2�Y��Y��Y��AX��D��2�X��
-�2�DY�fW��X��\��2�AX��D��������^z�2�-�	�^u�2f(�H�)\��(�?I�HP�s�?�k@�D��D�����D��\�f(��D��A^�f(�f(��AY�fD(��A^����E^��D���^���A^��A^��Y��DY��Y��Y��X��Y��DX��Y��X��X��\��D\��\��X��X��� �AY��D�(�\��EY����AY��\��Dx�2�\��
d�2��0�EY��AY���8�Y��D�@�D=D�2�D5C�2�D-B�2�AX�fD(����AY��EY���H�D%�2���Y����(�AX�fE(���0�EY���Pf(��� �AY��AX�fD(��EY��AX��D�2�AY���X�
�2�DY��A\��D�2�AY��X���`H���H����A2H����-:2H��P�Y�H���H��HP�x?�Y�H���H���H�t$ H��?L���H���H��H��Hǃ�Hǃ��X�f(��AY��X�f(��Y��AY���8f(��AY��AY��\��X�f(��AY��AY��X��X���H��@�L�H����H�� H��H��H�D$ H��(H�D$@H��0H�D$`�H��H��H��H�D$ H��H�D$@H��H�D$`�V�H�ݦ��?H��H��H�D$ H�wl�:��?�D|$0H�D$(H�����Vw��Dt$8H�D$X�Dl$@�Dd$HfD(��D\$P�DD$`��H��H����H��H����H���H�����KPH�{�G�z�?H�{�G�z�?I�{�G�z�?H��H�^K@H��PL��X�q}2��h�t�	�l}2�
\}2�\�f(��W�	�DV}2��pfA(��C0�AY��X��D^�fA(��$�	fD(�fA(�fA(��EY�fD(��EY��DYC0�	�D\��C0�
�{2�AY��EY��ڵ	fA(��Y��Y�f(��^�h�AX���xfA(�誵	�Y�|2�
�y2��������h�}�	�X�|2�D
t{2fA(������x�Y�P�J�	�D�z2�D�z2f(��AX��AY��^���x�Y�X�X����fA(���	f(��AX��AY��^���x�Y�`�X����fA(��ȴ	f(��AX�����AY��Y���^�����Y���X�����Y���X���x�Y���X�fA(��\}y2�Y������H�	f(��AX��AY��^�����\��X�����\��^���x�Y����fA(���	f(��AX��D�x�AY��DY��^�fA(��X����fA(�豳	�DY�xf(��
�z2�AX�fA(�荳	����EY��Y��Y���EY��Y��^��D^�f(���(�D���H�	�Y��1�(t$p(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$���H��[^_]�D���g�������%�D
�x2H��G�z�?f(�H��?H��?H���H���H����A^�fW��5�v2�=�w2���I�H�ChI�@H�CpI�@H�Cx�}�@���I�I��?�DJx2H���I�@H���I�@L���ǃ�H�������=gw2f.����D
�w2fD.����\�fD(��D�w2�D�w2�^��D\��DY��EY��EX��D�w2�EY��DY?w2�DX��DX�����=�v2I��z�G��?f(�I�ffffff�?I��������?L���L���L����^�fW��5au2�D
�v2���Dw2�Dw2fE(��51u2�=iv2�D
�v2�Y��A\�fD(��Dw2�^-�v2�D\��EY��DX��DX�� ��f(�H��������?H��������?H��������?H���H���H����^%�v2fW��5�t2�=�u2�D
v2���f(�I�=
ףp=�?I��������?I��������?L���L���L����^%�t2fW��54t2�=lu2�D
�u2�w��^�fD(��D�u2�D�u2�Dzu2�D\��DY��DY��EY��DY
�u2�EX��D�u2�DY��EX��EX��D
?u2���f�f(��AY��Y����fffff.�H��t��	fD��fffff.�SH��p�8���	H��H���AH�����H�{�G�zt?H��m۶m�?I��������?��u2H�H�i�H��(H��0L�D$ �H�CH���H�D$`H�D$XH�D$PH��H�CH����D$HH�D$8H�D$0H�CH��h㈵��>H�D$(H���H�
ףp=
ǿǃ�H��H�j�@ǃ�H��H��������?H��H��(\���?H��H�{�G�zt?H�� H���0H�D$@I���h�H��H��p[�Q�7H�
�q2L�H`A�'��V�	���>�	������UWVSH��)t$p)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$fEW�H��H���Eh�E`�D=u2fA(�fA(��EY8��	�=u2�Y�fD.���fA(�fA(��AY��AY��X��DQ�fE.��/��P�D
�t2�5~t2��ttf(��D
�t2�\=t2�Y�t2fAT��Y�t2�^�t2蛳	fA(��^
�t2�Y���s2f.����5t2f(��\��D\��D^��
�s2f.�s0��s2f.��2�%�s2��s2��s2�@f(��%Ts2fA(��Ws2f(�fE.��\�f(��^��"t2fD(��DY��X��\��Kp�Y�(�DY�f(��^��DY�f(��DX���fA(��p�	�D�H�
_s2�DY�fA(�fAT��_�f(��
�s2�Y��3�	�Y�s2�
�s2�Y��D^�fA(���	�D^�fD(�fA(�fA(��DY�s2fAT��vs2�
~s2fAT��DX�f.��DYSx�DY� ��fE(�f.�fE(���fA(�fA(��AY��AY��X��Q�f.����DY��D^�fE.�v�E^��EY��EY��DYs2f(��s21��
s2H�l$0�AY��AY��^�fA(��AX��X��D$Pf.��
�r2�D%jr2�AY��DY
�r2�D�r2�D5�q2�\��D-�r2fDW��E\��D
�r2f(���r2�AY��DY�r2�\��E\��D�r2�L$Xf(��D\$`�D�q2wI�A]�fA(��X��\�fA(��A\��^��M�	�Y��D5H��H��tN�D4Pf(�f.�v��X�fA(��A_��\��AX�f(��^�fA(���	�AY��D5H��H��u��L$01��|$8��q2��q2�Y��Y��l$@�����q2�\���q2�Y��Y��Y=�q2�\�f(��^���Y��X��\��^���q2�Y��Y
�q2�X���q2�Y��Y-�q2�\��\�f(��^���X��Y��X��\��^�f(��^���Y��X��\��%oq2�Y��^��Wq2�Y��\��%Wq2�Y��X��%Wq2�Y��Ycq2�\���Y����'q2�Y��Y3q2�X��%q2�Y��Y
+q2�X��X��X��\���Y���_�\���Y���G(t$p(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$H��[^_]�f.���f.=�n2fE(��E^��zf(�fE.���fA(��AY��X��Q�f.��T�Oo2�Y�fE(��AY��EY��AY��X7o2�AY��X��D^��EY����f.=�n2fE(��E^��7f(�fE.��PfA(��AY��X��Q�f.�����n2�Y�fE(��AY��EY��AY��X�n2�AY��X��D^��EY��=����
�m2f.�����m2f.��	�%pm2�pm2f(�������l2f(��5cm2�N���fD�D�m2fA(�fAW��h�	fAW�����X=~m2�l������=�m2�Gm2fE.�fT�fU�fV��m�����m2fW��\������=/m2�m2fE.�fT�fU�fV�������Pm2fW�����f(��%dl2�dl2�ll2����f(��%�l2��l2��l2���虪	fD(�����f(��\$ 耪	�\$ ����\$ �j�	�\$ f(��/����\$ �P�	�\$ f(�����UWVSH��)t$p)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$fEW�1�H��H��H�l$P����A�Ap�Y��Y��AYh�Em2�X���=m2�X���=Mk2����-m2�X���D�k2�Dsm2�Y�fE(��Y��Y��Y
m2�D
Ym2�X���l2�D%,l2�Y��D-wk2�\�f(��^���Y��X��\��Y���l2�Y��Y5�l2�X���l2�Y��Y-�l2�\��5�k2�X�f(��^���X��-�l2�Y��X��\��Y�f(��^���Y��Y��X��\��%_l2�Y��Y�k2�Y��?l2�Y��X��%?l2�Y��X��%7l2�Y��Y�k2�D$0fD.��X��-$l2�Y��Y
�k2�X��X��X��d$8�\$@wO�Y�fA(��̡	fD.���f(��X��AY��X��^��L5H��H��t_�D40fD.�v�fAW�fA(��Y��x�	fD.����
uj2f(��Y��X��\�f(��^��L5H��H��u��\$X�Dfk2�fk2�DY��D|$`�Dd$PfA(�fE(��D^�fE(��EX��DX�fA(�fA(��A\��^��A\�fD(��D
k2�DY��DX�fA(�fA(��AY��AY��X��DQ�fE.���fA(��\$ fA(��0�	�D5�h2�\$ �DY�fE.��]��g2fA.�sJ�%h2fA.�����g2�
�g2�%�g2�6�X��AY��D5�s���f�f(��tg2fA(��%wg2fA(��\�f(��^��
Fh2f(��Y��X��\��j2�AY��Y��Kp�Y�(�Y�fA(��AX��D%1h2�X��X��X��A\��Y��^�HfD.��1f(��d�	fD(���g2��i2�YSx�AY��=g2�
�i2�AX��D-gg2�Y� fAT��AY��D_��Y��A^�fE(�fET��A_�fD(�f(���	�
bg2f(�fA(��Y��̞	�Y5Tg2��P���Y��Y�tYfA(��A\��\Lf2�Y�f2fAT��Y�f2�^�f2誥	f(��^
�f2�Y���e2�]��Y��DX��DY�h2fD.�f2�D��H�GH�G(t$p1�(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$H��[^_]�Df(��\�f(��AY��D5���@�he2fA.����%ue2fA.����2e2�
2e2f(��j�����DY��AY��E^��A^��DW�w������e2f(�f)\$ fW��!�	f(\$ fD(�fDW�����DX5+e2���f(���d2�
�d2�%�d2���f(���d2�
�d2�%�d2�����\$ �	�\$ fD(������SH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$���H����$�H��$���$��D�f2u �
{d2���d2fT�f.��c�A�_�f2���S �K(�AP�S0�Ax�C@�{8�[H�kP�D�DSX�`�c`�DX��$��D[h��P�b��������5pc2H��G�z�?H�Kp�sxfD(�����Y�f(�fD(��^�f(��Y��DY��AY�fD(��X��D^��%�d2�Y��AY��D���AY��EY����f(�����A^��D�������d2�Y��X���d2�Y��\���d2�Y��Y�d2����%}d2�Y��Y
�d2�X��ud2�Y��Y=�d2�\��X�f(��X��������
�d2�d�	�SH�X�fA(��Y�f(�f(��X��^�b2�X�f(��^��"d2�D\�����^��D���AY��X��A\��Y�����^�����Y��AY��X��A\��Y�����^�����AY��X��A\��Y��
�c2�Y�����X��
�c2�Y��X��
�c2�Y��Yc2����rc2�Y��Y%�b2�X��
jc2�Y��Y�b2�X��X��K@�^K0�X���������c2����	��c2�
�c2�\�f(���	�D}c2���CH�D
oc2�AY�fA(��X��D^�fA(�誘	f(�fA(�fA(��AY�fD(��AY��Y{H胘	�D\��CH�
!c2�AY��EY��b�	�
c2�AY��Y�f(��^��X���fA(��/�	�Y�b2�
O`2���� ����	�X��D
b2fA(���(���Y���ӗ	�D�_2�=�`2f(�fA(��X��AY��^����Y���X���0苗	f(��X�fA(��AY��^����Y���X���8�T�	f(�1��X���0�AY�D(L$P�X�D(D$@�^�D(T$`�X�8(|$0D(\$pD(�$��X�(t$ ��@�Y
>a2�X��\z_2�Y���HH�Đ[�f�f(˲��^2�^�$�f.��|���1�fD.��ƒ��j���H��������?�D
�]2H�CpH��������?H�Cx�D���5/^2����f��D
�]2I��z�G��?I�ffffff�?L�SpL�[x�D���5�]2���D�D
o]2I�=
ףp=�?I��������?L�CpL�Kx�D���5�]2�]���DH��t�&�	fD��fffff.�H��(�X���	H��t0H�����H�H���H�PH�L�H�PH���H�PH��(��t7H�
�\2L�H`A�)��	����	���������������1��y�t��fD�y
v�H�Q�:Iu�zCu�zCu݀z_u׀zPuрzRuˀzOuŀzFu��zIu��z	Lu��z
Eu��z���ffff.�AWAVAUATUWVSH��(A����D��H��H��A��D��A��A��Ai��D9�����A�E���A�f����A����DF�H��E�ED)���-	�IH���.	�CH���.	�CH���.	�_H���-	�PH����-	�RH����-	�OH����-	�FH����-	�IH���-	�LH���-	�EH���-	1�H���-	D��H���-	D��H���}-	E��t&A��I��J�t-A�H��I���\-	I9�u�J�l-A���������H��([^_]A\A]A^A_�DA������Q	AVAUATUWVSH�� 	H��$ L��$ 	H�H��L��A�H�F��H��L9�u�L��pE1�M��taL��E1��8D�`
�@D9�H��tDH��� u8�SƄ ���T� H�H��t6H���m�����t�E��H�Ct��P
D9�t�E1�D��H�� 	[^_]A\A]A^�E1�E��t�1�H������$\�$H���PD9��<u��E1���t���貦	H��H��t�L������t@I�E�PD��� �T� ��t(��I�L�B1�f.��LA�H��L9�u�M�mM��u�H�uA���@��������Qh��~'H�Ap����\�t�P�\��P�X���Ãyh~
H�Ap�\�H��ff.��yh~.H�Apf(���@�X��^�f(��Y��\���H��f.�H��X)4$)|$D)D$ D)L$0D)T$@A�fW��Ad�IhA)�)�A9����-[\2Ic��D_\2H���DZ\21��=@\2fA(�fD(��A�*�f(��\��Y��\��Y��AY��Y��X��Y�A��H����A9��Y��X�t+���f(�~׃�~�D�H��A*��AY��Y��AX��(4$(|$D(D$ D(L$0D(T$@H��X�UWVSH��H)t$ )|$0fW�H��H�Ջ��f(���~QH���1�1��0H��H����S@H���H�0H��9���\A�Qf(��X��Y��Y��X�����H�����H���Y��Y��=[2�^��V����Y�(t$ �X�(|$0H��H[^_]�ff.�H��h)4$)|$D)D$ D)L$0D)T$@D)\$PA�fW��AdD�QhA)�A)�E9���Mc��-�Z2�D
�Z2I��1�1�L��5�Z2M��DpZ2�DWZ2fA(�fD(��^�*�fA(��A\��Y��\��Y��AY��Y��X�f(��X��Y�A�����Y��AX$�Y��X��A$H��E9�t8���f(�f(�~ƒ�~�D�Y��A*��AY��Y��AX�f(��X��(4$(|$D(D$ D(L$0D(T$@D(\$PH��h��ATUWVSH��@)t$ )|$0H��H��L��D�IhD+IdE��~1�@H��H��A9��fW���f(���H���1�E1��*L�FxH��H��VPH���D�NhD+NdL�*�A\B�AJE��f(��Y��Y��X�~.L�^x1���X��Y��AY��X���H��A9��AJ�A��H��D9���X��s������E���
�X2�Y��Y��^��Y�~"1�f����Y���H��A9�����I��H��H���c����X�(|$0(t$ H��@[^_]A\�f.�AWAVAUATUWVSH��)t$0)|$@D)D$PD)L$`D)T$pD)�$�D)�$��I��M�ŋyd�Ih��)��L$,)�9��(Hc��D
�W2H��fEW�A�L�4I�\��=�W2A)�fE(у�DA�?�A6�D*�fE(��DY�fA(��N�	�,���tfAW�fA(�fA.�f(��\��Y��f(�f(��\��X�f(�f(��X��Y�f(��\��^��Y��^��^��X؅��A^��A^�tfAW�D9��K2D��)�H��H�����1�f���Y��H��H9�u�A��I��H��A9�������u,�|$,���A]�AY\$H��?I�M�AX$f(�(t$0(|$@D(D$PD(L$`D(T$pD(�$�D(�$�H�Ĩ[^_]A\A]A^A_�f(�f(�f(��\��Y��\�fD(��\��DY��\��A^��A^��^�����w����^���fDAVAUATUWVSH�Ā)t$ )|$0D)D$@D)L$PD)T$`D)\$p�I��D�qhD�adD��D)�D)�9���Hc�fEW�H�4��DbU2A�l$��D|U2�9f.�f(��AY��\��AX��D^�fA(Ѓ�H��9��X��^�tS�D�6�*�fD(��DY�fA(���	�,��tfAW��D\�fA.�s��AY�fA(��D\��\��D^��E��uA��~C�AYU�AXUf(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pH��[^_]A\A]A^�f�u��fff.�HcQdL�Apf(�I�����ff.�VSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD�Qd�YhE��u��~H�Ap���\���^H�s�����L�IpHc���fEW��D�S2I�4��D�S2�-f(��AY��\��AX��D^�fA(�H�����X��^�tO�*��6fD(��DY�fA(��s�	�,��ufAW��D\�fA.�s��AY�fA(��D\��\��D^��f(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pH�Ĉ[^�WVSH�� �YhH��H��Hc�H����	H��t)��H�~H�Np1�f�L��L��H��9���H�� [^_�H�
R2�
��f�SH�� H��H�IpH��t芜	H��H�� [�}�	ffff.�AWAVAUATUWVSH��xH��$�D��$�A�pH�ˉQ`L��H����qhH�IpH��t�+�	�shLc��L���0�	H��I��H�Cp�h�L����	H��I���O�L���	H��H���6�L����	H��H�Cx�E����A�D$���Q2�
�Q2E1�H�D@H��f��BDI��I9�f(��_��]�f(�f(�u܋Cd���I��?H��?I�M�~H�����H���D���~ E1�fDI��������?N�4�I��D9��SdL�
����I��h㈵��>H���Hc�)�H����I��LCpL�L$8L�
@���H�D$PH�D$HH�\$@�D$('L�L$0L�L�\$ �N_����H�Kx荚	H��H�Cx�}�	L��H��x[^_]A\A]A^A_�e�	D�\���P2�A�AVf.����������T$hH�T$hH�
�O2f(��|��dP2�
dP2���H�58d7��H��O2H�H`E���S�	E��~:1�H�}L�m��H��O2H�H`A��H�|$hL�l$ I���\$h����	D9�u�H�
�O2��H�
&O2���H��(���蕙	H����H�����@hH�@pH�H���H�PH�)�H�PH�N�H�PH�c�H�P H�(���H�P(H����H�P0H���H�P8H�W���H�P@H�l�H�PHH��H�PPH�&�H�PXH��(�ffff.�H��(�7���H��t�@dH��(�fDWVSH�� H�Ή�����H��H��t8�XhHc˺蟘	H��H�Gpt*E1���~�J��J��I��D9��H��H�� [^_�H�
�M2�����������#w���r
�Á�'u1��@�?�f.���#vH��O2�H��O2��Hc�H��H�[O2�fDH�DO2��H�+O2��H��N2��H��N2��H��N2��H��N2��H��N2��H�{N2��H�cN2��H�KN2��H�6N2��H�N2��H�N2��H��M2��H��M2��H��M2��H��M2��H��M2��H�}M2��H�7M2��H�!M2��H��L2��H��M2��H��M2��H��M2��H��M2��H�vM2��H��L2��H��L2��H��L2��H��L2��H�kL2��H�UL2��H�?L2����#vH�TP2�H�]P2��Hc�H��H�%P2�fDH�P2��H��O2��H�uO2��H�RO2��H�0O2��H�O2��H��N2��H��N2��H��N2��H��N2��H�bN2��H�@N2��H� N2��H�N2��H��M2��H��M2��H�yM2��H�IM2��H�M2��H��L2��H��L2��H�QL2��H��N2��H�eN2��H�EN2��H�(N2��H�N2��H��J2��H�cL2��H�9L2��H�L2��H��K2��H��K2��H��K2��UWVSH��(H�=�N2�
H�˹H�������8�u��H��([^_]�f.�H�=AK2�
H���t�H�=fN2�H��@������8�t�H�=K2�
H���t�H�=AN2�H��@������8�t�H�=�J2�
H����r���H�=N2�H��@������8��P���H�=�J2�
H����9���H��M2H��@���	������H��J2H����	������H��M2H��@��ӑ	�����H��J2H��輑	������H�{J2H��@�袑	�������H�{J2H��@�舑	�������H�{J2H��@��n�	�������H��H2H��@��T�	���o���H�bJ2H��@��:�	���U���H�cJ2H��@�� �	���;���H�M2H���	�	���$���H�M2H����	���
���H�M2H���ې	�������H��L2H��@��	������H��L2H��誐	������H��L2H��蓐	�������H��I2H���|�	�������H��L2H���e�	�������H��I2H��@��K�	���f���H��I2H��@��1�	���L���H��L2H����	���5���H��L2H����	������H��L2H��@���	������H��I2H���ҏ	�����H��L2H��@�踏	������H�hI2H��衏	�������H�cL2H��@�臏	�������H�GI2H���p�	�������H�BI2H��@��V�	���q���H�8I2H��@��<�	���W���H�2I2H��@��"�	���=���H�,I2H��@���	���#���H�$I2H��@���	���	���H�I2H��@��Ԏ	�����H�I2H��@�躎	������H�I2H��@�蠎	�������H�I2H��@� 膎	�������H��H2H��@��l�	�������H��H2H��@�	�R�	���m���H��H2H��@�
�8�	���S���H��H2H��@���	���9���H��H2H��@�!��	������H��H2H��@���	������H��H2H��@�"�Ѝ	�����H��H2H��蹍	����#����@�������p����e����\���������t}���ts���ti���t_��
��if���?'�����������"Ã�������uŁ���"u���fD��[�u���@��P�tہ�PtӁ� P�tɁ�`� t���`�t���	`�t��� ��
t������t�������t�����Á�q	uF�� �}�� ��a����� ��S����� ��E����� �u�Ð��W$������@�!t��?'����u��t�#���f.�1��1�A���������fffff.���v��DH��H2��Hc�H��fWҺ��fWҺ���f�H��H2��t!~"��H��H2t��H��H2tH��H2�Ð���H�~H2u���f�WVH�=oH2�����H�ʹH���A����A8�teH�=QH2�H���A����1�A8�tFH�=7H2�H�ְ�A����A8�t'H�=H2H�ֹ�����(����������^_Ð��ff.��A�fff.��A�fff.��A`��H�AH�H�AH�BH�A H�B��H��t H���H�H���H�BH���H�BM��t H��pI�H��xI�@H���I�@��@E��x[D�I(�����E9�}RH�IHMc�J��J�L��@DuA��E9�t.H�H���@Dt�H�HPH�
H�HXH�JH�@`H�BA�@�D�������f�E��xXD�Q(�����E9�}OL�YHMc�O��I��@Dt)�HH��~"H�HPH�
H�HXH�JH�@`H�BA�@�fDA��I��E9�u��������fff.�D�Y(�����E9�~&H�AHMc�N��I��@DuA��I��E9�u������f.�E9�~�H��tH�HhH�
M��tH�PPI�H�PXI�PH�@`I�@A�A�fffff.�WVSH��0)t$ H��H��L�ËH�T$X�������
���1�E��~eI�2�+1��c�[�P2L�F`H���������Y��Y��X�����Y��X��X��f.�wH�� L9�u�(t$ H��H��0[^_�H��A9���I�4��f.��r �B(�AY0�AY@�X��B0�AY@�X��Xr8f.5SO2w`�QO2f.�vKH�VHI��H�������(t$ H��H��H��0[^_�A�L�T$X���D�J1�L�R E������C���1��<���H�R@D���H��t�H���!���fffff.�H����H�H���H�BH���H�BH���M����I�H���I�@H���I�@H���M��t+I�H���I�AH���I�Aǁ�H����H���ǁ�H���H���H���H���H����f�Hǁ�Hǁ�Hǁ��l���f.�H�Y@Hǁ�Hǁ�H����
���@H��h)4$)|$D)D$ D)L$0D)T$@D)\$PH��$��A9�AqL��$��Ai� �X�\��P�\��AJ`�EJh�\��EBp1�f(�fD(��D2M2�Y��EY��AX�fD(��EY��AX��D$M2fDT�fE.����DY�1��Y��DY��AX��AX��DM2�AXJxfAW��^��Y��Y��Y��X��X��5�L2�X�fD(�fD(�f(��D\I�D\A�\y �A���A���AY��AY��X��A���Y��X��AX��f.�wOH�� H��`u��A ��AX�AP�
(4$(|$D(D$ D(L$0D(T$@D(\$PH��h��1���fff.�WVSH��P)t$ )|$0D)D$@1��R`�A)�bhf(��AI�Y�f(��Y��Zp�Y��X��AI�Y��Y��X�f(��Y��XBx�X��X��^��Y��\��A(f(��Jh�AQ�Y��\��APf(��Zp�AI�Y��\��aK2�AHf(��\q�\i�\a �������Y��Y��X�����Y��X��X��f.�w*H�� H��`u��Y�(t$ (|$0D(D$@H��P[^_�@fW����J2E1��D�J21�f(�A����J�L� E�f(�H�L�T� 1��ALP�\LPH��H���Y��X�u�f(�0��\P�ALP�AH���\�H���\��Y��X�u��^�f(�f.�rfD.�smI����I���m���E1�J�L f(�1��A�\LPH��H���Y��X�u�f.�vH�APf(�I�H�AXI�@H�A`I�@I��I��u�����f(�0�H���TP�ALP�\��Y��X��A�\��H��H���Y��X�u�f.��F���H�$f(�I�H�D$I�@H�D$I�@�$���ffffff.�H��X)t$0)|$@��A(�A�r�\��J�\��A`�AP�AA�\��\��\��Aq�\�f(�f(��Y��Y��Y��Y��Y��Y��\��\��\��	�Y��Q�Y��A�Y��X��X��Q�f.�zw�
bH2�f.�wU�0��Q�I�^��^���^��Q�I��YR�Y��@H2�YJfW��\��\��A(t$0(|$@H��X�f(�H�T$ H�L$(�(q	H�L$(H�T$ �g���f�VSH��(H��H��tB1�H�L(H��t�9t!H��0H���u�H��H��([^�&�	fD�����f�H��([^�f�SH�� �H�˃�t��tH�� [�fDH�I@����H�KH����H��H�� [�	�UWVSH��(H��H���H��t���Hdž�H���H����H��pH��xH���WfDH9���cH��xH��H��xH��xH��xH��pH��p�1	H9�t,H��pH��H��H9�u�Hdž�H���	H9�u�f�Hdž�H���H��ttH�{XH�k`H���<H9����H�S`H��H�P`H�S`H�[`H�BXH�[X�~	H9�t*H�GXH��H��H9�u�Hdž�H���~	H9�u�Hdž�H����FTH��t)1�H�LH���R~	H��0u�H���D~	Hdž��N(�FX��~L�FH1�DI��H���bD�9��H��([^_]��H��pH������H�SXH�������ffff.�WVSH�� H��H�Ix�]���H����Q���H������G(��~1�1�H�GH��H�0H���}	;_(|�H�OHH��t�w}	�G8�G(H���H��t	H�����H��H�� [^_�E}	DAWAVAUATUWVSH��h)�$�)�$�D)�$�D)�$�D)�$D)�$D)�$ D)�$0D)�$@D)�$PI��H��L�ŋH��$�L��L��$D��$L��$ ������������E����I��D-�C21��D%�C2�D=�C2�D5D2�D�C2��DS`�ch�fA(��Wf(��Y��Cp�Y��O�X�f(��Y��X�f(�fAT�fD.����DM1��At$�DE�AX��m�AY��ET$�EX��DY��Ad$ �X��AX��Y��X��XsxfAW��^��Y��Y��Y��AX��AX�fE(��X���$���$���$��������Y��Y��X�����Y��X��X��fA.�w)�A_�H�� H��`fD(�u�E����A�A9��PH��A9��SI�����f.��R �J(�A)fD(��Aaf(��DY��B0�Y��AY�D-%B2�D%�A2�DX�f(��E�Y��EH�E@�DX��z8fET�fE.�v>f(�fD(��AY��EY��AX�fD(��EY��AX��D5�A2�X�fAW��A^�fE.���D�A2�D�$��E\�fD.����DX�$�fA.���fEW�1��D$�DY��DXdH��H���EY��EX�u��D�$�fE(�fE(�fD.�$��D]�$��D_�$�r/fA.�r(�D�$��E]�fE(��D�$��E_�fE(��D�$��D�$��E_��E]��D�$��D�$�fD.�rH�D�$�fD.�$�r2�D�$��E]�fE(��D�$��D_�$��D�$��D�$��D\%s@2�AY��AY��AY��AX��AX��AX��Y���$��Y���$��Y���$��X��X�fW��X�f.��(H�S@H�[H�BfA.���fD.z���@2E���X��AJf.�$�wfA.BH����$�L�\$p�D�$�L�T$`�L$HD�|$hI���D$0I��L����$���$��D|$XL��$�L��$��Dt$P�Dd$@�D\$8�D$(�L$ �L���L��$�L��$��CfA.����D�$�fD.c��E���\5?2!�ABf.�w��$�fA.BH����$�L�\$p�D�$�D�|$h�L$XL�T$`I���Dd$HI��H����$�L����$��D�$��Dl$P�D$@�L$8�Dd$0�D\$(�t$ �e����@(�$�(�$�D(�$�D(�$�D(�$D(�$D(�$ D(�$0D(�$@D(�$PH��h[^_]A\A]A^A_�@�ABf.���fA.rH�����ArHI�J0H��$�M�D$L��$�L��$��H�fW�L��$�1�L��$�f.���I�ZXA�BP1�fD.���A�BT���H�H��$�M�D$H�@H��L��qL��$�L��$��ܙL��$�fW�L��$�1�IcH�@H��f.���A�T Ic1�H�@H��fD.���A�T$A�Hcƒ�H�@H��I�\(A��������$��X�$��Y5�<2�Y��Y��Y��AX��AX��AX��Y��Y��Y��X��X��X�f.-3<2� H�S@�Bf.�$�������$f.B���E��&�ABf.�$�w��$�fA.JH������D�$L�\$p��$D�|$h��$�L�T$`�Dd$XI��I���D�$�L���D$P��$��L$H�Dd$@�D$8��$��D�$���$��L$0�Dd$(�D$ �������A�L��$��+���D�jL�r E���������H�SH�Bf.�$������$f.J����E��'�ABf.�$�w�D�$�fE.bH�������$L�\$p��$D�|$h�D�$�L�T$`�D$XI��I����$�L���L$P��$��Dd$H�D$@�L$8�D�$���$���$��Dd$0�D$(�L$ �d�������ArH��$�M�D$L��L��$�L��$��ԖfW�L��$�1�L��$�f.���I�Z(A�B 1�fD.���A�B$����H�SHH�[@����ffffff.�ATUWVSH��p��$�H��I��L��L�΅��j�A(9��@H����39���L���A��h9��|CH���M��pI9���A��h��~�H���L���ǃ�H����xH���H�T$`H����p�QD$`f.����92H���1�f(��\��YD$h�\��L$ �D$(�\��T$0fW��T$Pf(��T$Hf(�H�L H��H���AP�Y��X��aX�Y��YI`�D$@�X��X��\$H�T$P�'�L f(���H�IHHc�H��L�A�BDu��H��9������L�A�BDt�9������M��tI�BhI�$H��tI�BPH�EI�BXH�EI�B`H�EH����H���H�H�FH�FH����H��xH��pE1��
H��H��pL;R ��L;R(��L;R0��H9�u�E���P�A*���^���F�^��F�F�^��F�GH��p[^_]A\�M��tH�SH�L$@�)��A$H��tH�D$@H�EH�D$HH�EH�D$PH�EH��tH���H�P`H�H�PhH�VH�@pH�F������A���XB`��F�XBh�F�F�XBp�F����H���H��H���tXH���ǃ�H����x��f.�L��������������OH��H���t.�C(�����������H�
�+2����D$`� _	����H�
�+2���fffff.�AWAVAUATUWVSH��(L��$�L��$�E��D�AhH��H��E��H��$�H��$�E��uKH�A0H��tBH�P0H��H�Q0���H�@H�@H�@H�@ ��fD�C89C(|&�����C8�(�l	H��H�CH������m	H�����S(H�KHLc�J���P8��H���S(��i����^A���52�V�Y��Y��N�X�Y��P�H���\��H�N A���Y��H ���X��@ I�UD�xDH�@0�@(H�PPI�UH�PXI�UH�P`I�$H�PhI�T$H�PpI�T$H�PxH��$�H���H�UH���H�UH���H�UH���H�H���H�WH���H�WH���H��([^_]A\A]A^A_���X��X�#���f��\��H �4���f��H�KH�C8H�H���(l	H��H�CH�i����[8�*67H��)2H�H`A���Gk	���k	�	67H�:)2H�H`A��#k	���j	��57H�
v)2L�H`A�%���j	����j	�f�H��H)4$)|$D)D$ D)L$0�M���fW�1��ADP�A\DPH��H���Y��X�u���220�f.������a���Y�I ����22fD(�f(��E@P1��AiP�D\��AxX�\��AaX�\��Ap`�\��AY`�\��\�fA(��Y��Y��AY�fD(��Y��EY��DY��DY�f(��DY��Y��Y��AX��AX��Y��Y��X��X�f.���(4$(|$D(D$ D(L$0H��H�H��02Hc���H�12�D�H�K12�Y����EY��Y�����@D�I\�E��t61�L���L�L���L�DL���L�DH��H=�u�0���f.�ATUWVSL�������D�Y��������Hc�M�D-A9�M� |{�A�$���A�{�fDHc�M�ډÍDA9�|QA9�~%Hc�M��I�t�M��A��f.��v��Lc�O��M��A��f.�w���Lc�A9�O��}���M� �d���Ic�M�A��I��L� L�t
��Z���M�"L�1�f.�I�‰B8H��9��[^_]A\Å��[^_]A\�ffffff.�SH�� H��H�QH�I(����D�C(1�E��~L�KH1�I�ыID������H��A9��H�� [�fff.�SH�� H��H�QH�I(�|���D�C(1�E��~'L�KH1�I��ADtD�QH1�E�����H��A9��H�� [�@D�I1�E��uID�ZE��u>�T/21��
�/2�D�\DfT�f.�wH��H��u���1���D�BE��u��ÐH��)4$)|$D)D$ D)L$0D)T$@D)\$PD)d$`D)l$pD���E����D���E����D�A(E����L�IH�/2�/21�f�I���BDt�JPf(��]��_�f(�f(�H��A9�����ǁ����f(�fD(�����]�fD(��D\��D���D_��D������\�f(�f(�fE(�f(����_��D��\��D\�f(��A^���0���fD(�f(��AY��E\��X��AY����AX���fA(��\�fA(��A^��Y��AY��AX��X��� ��(f(�����\��\��^��Y��X�fA(���8����\��Y��X���@(4$(|$D(D$ D(L$0D(T$@D(\$PD(d$`D(l$pH�Ĉ��4-2�4-2�c����H��t H�H���H�BH���H�BH���M��t I�H���I�@H���I�@H����a����AUATUWVSH��(�H��$�H��$�H�ˋ��H��$�����H��t H���H�H���H�BH���H�BM��t H���I�H���I�@H���I�@M��t H���I�H���I�AH���I�AH��A��H��A��t�S(���u%H��([^_]A\A]�E��u�1�H��t�S(���t�H���n���E��t H��H�H��H�GH��H�GE��t H��H�H�� H�FH��(H�FH��t0H��0H�EH��8H�EH��@H�E1�H��([^_]A\A]�1��M����VSH��(H�ˉֹ���nc	H�����
+2@���[��S�Y��Y��K�X�Y��P�Hu/�\��H�K ���Y��H u#�\��H H��([^��X��X��D�X��@ H��([^��,7H�
� 2L�H`A�%��a	����a	�fDUWVSH��)�$�)�$�D)�$���H��uu1�HDŽ�HDŽ�HDŽ�H��H=�u�ǃH�C\(�$�(�$�D(�$�H�ĸ[^_]�f.���������H�L$`L��L�D$(�<�HcS�%�)2H�
�n0�l$p1�E1�E1�f(�L�D$(L��H���)2L)��{)2H��5x)2�!fDf.���f(�A��H��H��t>�����\�fT�f.�vf(��\�f(�f.�w�f.�v�H��f(�H��A��u�Mc��AHK�I�AP�Y�H���Y��������Y��X��Y��X�f.�wRMc�fW�K�RH��f.������������f.���������{���f.���m����g���fDI�H���I�PH���I�PH����<�����H���-���Hc�I���H�RH��H��PI�HH��XI�H��HH��`��D��HE���PH�l$`H�|$01�@H�vH��H���P�L�H�D$pH��H��H��u�I��I��H��E1�A��D��fDHc��A�L�0f.�vg�AL��P�D�0H�RH��H��PH��PL��PH��XL��XH��XL��XH��`L��`H��`L��`�����y���I��H��A���Z���HcsfW�H�
�k0�-�&2�x&21���&2E0�H��H��A����*f(�H)��%�&2H��f(�E1�f�C��BƉ�A����)R�)�Hc��\D�0fT�f.�vfD(��D\�fA(�I���X�I��u�f.�vf(�D��A��A��u�L�������*������)‰����R�)�Hc�H�RH��H��PI���H��XI���H��`I���I��M9�u�1�f�f.��z%u#f.��zuf.����H��H=�u�H�l$`H�|$01��H�vH��H������H�D$pH��H��H��u�LcK�]%2H�
&j01�E1�f(�J��I��M)�I��I)�IɍP��AD�Hc�M��B��A\�f.�wR�D�0�\�f.�w4�X�f.�wVH��H��u��C\�����f(�E��f(�A���n����X�����X��f.�fW�������C\�v���DWH��I��t
�B(�����B(~
_����H��A��uR@��ul@��uVD��1���A���H�t
�H��A��t	f�H��A��t�I�H�B0I�_���H�zA���@�A��H���f�A��H��념ATUWVSH��0H�2I�h I�@(H���RL�N(H��xL��pL�V L9���L9���H9�L��uf��%L��L�S(L��pL�[ L9�tGL9���H9�u�I��xH�I��pH�H��xL��pH�L��xH��0[^_]A\�f�L9�u�L9���H9���H��xI��xH��xH��xL��pH��pI�@8H;C8��H�PXH9���H;I����H�H`H�J`H�H`H�@`H�QXH�@XL��L�D$(�Z	H���Z	L�D$(L��H��0[^_]A\�Z	@L9��	����G���f�M��xM��pL�����f.�H��U���@H�M�H8���H�M�H8�\���L�"L��p���L9��i���M��H������L9��^�����fD�"$7H�
2L�H`A�1��'Y	���Y	�fDH��H)t$ )|$0���f(�f(��Y	H��tMf(�I�-DT�!	@�L�H�\�H�@ �@f(��X��Y%!2�@(t$ (|$0H��H�{#7H�
42L�H`A�%��X	���hX	�ffffff.�H��(�P��Y	H��t��Q6��P����Q6H��(�
#7H�
&2L�H`A�!��X	���W	���X	ff.�VSH��(Hc�H�։�H�� ��X	H��tD�)Q6��X�P���ۉQ6~E1�f�N��N�L� I��D9��H��([^�i"7H�
�2L�H`A�/��nW	������TW	�ff.��W	ff.�H��(����W	H��t��P6��P���xP6H��(��!7H�
^2L�H`A�.���V	����V	��ATUWVSH�� L��H��I��E1�N�L I��A�AD���I��A�ADu�H��pH9��}H9����H��xH��xH��xH��xH��pH��p�!���H��H�C(HcSTH�ŐH�F H�C0�VPH�F(H�C@H�F8H�t��D�(H���H�FHH�F@H��H���H��H���H��H���H�����H��H�C0HcSXI��H��H�G H�C �WPH�G(H�CHH�G8H�|��D�(H���L��H�GHH�G@H�CHH�C@H��H���H��H���H��H���H������I��L��H������I��L��H��H�� [^_]A\��HDž����H����t���@�U	ff.�H��(�h��U	H��t�>N6����3N6H��(��7H�
E2L�H`A�%��T	���T	���;U	ff.�WVSH��@)t$ )|$0��ֺD��f(��U	H��H����fW�f.�����2�]�f(��3t�C���V�C���RH��?�CdH�CpH���*���Gf(�H�����2H���*���GI�I@I���*����H���H���*����H���*����H���*���GL�SL��pH�CH�C H��xH���H����Q���f(�H�Cx�
	2�<���H���H���Hǃ�Hǃ��CPH���H�s�CT�CXǃ�H���H�]�ǃ�H���H�u��H��H�w��H���H�y��H���H�{��H���H�}��H���H����H���H�A�H��H���H��H����H��H���H�� H�	��H��(H�K]H��@H���H��HH��\H��0H�A��H��8H��\H��PH�\H��XH�GZH��`H��iH��hH��lH��pH�kH��xH�/fH���H��YH���H��Y(t$ H���H��V(|$0H���H�]KH���H�_FH���H��9H���H����H���H���H���H�G�H���H���H���H��7H���H�m7H���H�?4H���H��-H���H�S
H���H��H��@[^_�CH��������?�CdH�Cp����5_2�e����t7H�
=2L�H`A�%��yP	���aP	��VSH��HL�B0H�B(H��H�R H��H�K`M�HPL�@PH��P�3��L�C0H�C(H���H�S M���L���H� ���L�C0H�C(H���H�S M���L���H�ˆ����H�S0H�C(H���L���L���H�UI6���H�S H�C0H���L���L���H�,I6���H�S(H�C H��L���L���H�I6�^���>2H�KfW�H���SL�B f(�1��ADP�\DH��H���Y��X�u�f.�v�KH��H9�t	�S�f�L�NL�D$ H��H������
�2�\��XK�C�KH��H[^�f.�AWAVAUATUWVSH���)t$P)|$`D)D$pD)�$�D)�$�D)�$�D)�$�D)�$�A��bL��H�L$@H�T$HD�D$<��$@������D$21��D
)2�H�T�H��9��B�A]�fD(��B�A_�fD(��fEW�A������5
2E1��=�2D�|$4fE(�D�|$8fE(�E1�fE(�E1��Ic�Ic�A��H�D�A��H�D�8�P0�X8�`@�hH~A��E1�E1�1�1�E1ېN�D�1�E1�1�I�T �������Y��Y��X�����Y��X��X�f.����H��H��u����A��E���#����Aǀ I��D9��u���A9�A��EN�A)�E9�~?1��H�T�H��9Nj� ��$�fD(�E��fD(�A��fD(�\$4fD(�D�\$8D9�����A��A9����)�H�T$HHcL$8H��H��DH�D@H���DP �Dh(�D`0�DX8�L	H��H����HcL$4H���L	H��I���4����1�E1�1��L�D�A��$��t
Lcȃ�N�΃�tIc�A��M�D�H��9�̃��~D�D$<H�L$@H�S@�D$ I��A����A����~D�D$<H�L$@H�SHD�d$ M��A������H���0L	�(t$PL��(|$`D(D$pD(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_��K	�f.����A������E��t(��Aǀ ��DAǀ ������Aǀ ����H�A��H�C@����I�EH�CH�'���E������H����H�T$HH��DH�D@(t$P(|$`D(D$pD(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_�fEWҺ����A��D2�D

2�D$4����fE(�T$8fE(�E1�fE(��[�����7H�
%
2L�H`A�$���I	������I	H�
�	2��I	������I	��7H�
�	2L�H`A�$��I	������~I	�DUWVSH��8H���H��H��H��B6tKH�k`H�sX��H�5�B6H��H�vXH�SH�CH�K0L���L���H��B6���H9�u�H���1�1�H��t2L��xH��p��L9�u�H�Ѓ�I9�H��pu�Hc�H���H	H��H��tuE1�H��t;H��xH��pA�H�0I��H9�u�f�L��L��pA��I�PI��H9�u�H���D�T$ I��E1�H�����H���I	�GTH��8[^_]�57H��2H�H`A���RH	������(H	�ffffff.�SH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�H���EH�E@�D\I�A8�D\A �\yfA(�fA(��AY�fD(��AY��DY��X��DQ��DX�fE.����AQ�f.���fEW���2fE(�f.�wfA.�vVf(��^��H	fD(��3�DS�Dc(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H�Đ[�fA(��A^��FH	fE.�fD(�v�fE.�r��2�A\�fD(��q���@�2fDW��D\r2�R���fA(��8	f(�� ���f(��7	fD(����ffffff.�AWAVAUATUWVSH��)�$�)�$�D)�$�H��H��H���tT�&7H�
�2L�H`A�3��+F	�(�$�(�$�D(�$�H��[^_]A\A]A^A_ÐH�yPu��yX��u���tH��H��2H���P@H��H��UX��upH�EH�xu5�}����7H�
�2L�H`A�-��E	��b����b7H�
{2L�H`A�$��gE	��7���D�27L���H�H`H�"2I���HE	�����fD1��CL�n2H��U`��x%H�UH�H�=a2�H�R(H�4��u�C1��CL�=2H��U`���3H�UH�H�=,2�H�R(H�4����CI��������?�CdL�[p1�L��2H��U`1҉�L��2H��U`������1�L��2H��U`1҉�L��2H��U`������H��2H��2L��2L�d$`L����H��$�H��$�H��2H��21�H��$�H��2H��$�H��2H��$�H��$�H��2L���fD	1�M��H��U`��xYH�MH�vH�M�L=�L����H�2H�I(H��I�D=H�D$ ��C	��uH��H��H��t
L�����C\H�E�x���wD���E���1�L�2H��Uh����Lc�H�EH�@8F��E����1�L�82H��Uh���+Lc�H�EH�@8F��E����1�L�Q2H��Uh���RLc�H�EH�@8B�����Hc�H���_B	H��H�CH��N��D�d$X�{8�{(I��I��1�E1�M�̺���C	H���fH�SHL�@PH�2H�UD�h8D�h@A����@DH�RHH�2H��J�:H�	H�HPJ�2J�"H�	H�HXH�H��H�P`H�Ph����D9���S(D�d$XD�k@����1�E1�H�KH�5+
2�D�
2�=

2�_Hdž�Hdž�Hdž�Hdž�Hdž�Hdž�Hdž�A��H��D;k(�
H�9H��H�PhL�@P����H�KHH�49�Fhf.��v����Kp�d,	H�KHf(��AY�1�H�9����^Jh�DP�\D�Y����H��H��u�����JP�Y�����JX�Y��YB`�������:���D�s�����I��?�CdL�Sp������2���H�EHc�L��L��H��2Hc�H�@(H��H��H�D$ �@	��H�EL�� L��H�P(H��H��(H�T$ H��2�_@	��������������ǃ�������s���H�EHc�L���L���H�I2Hc�H�@(H��H���H�D$ �?	��H�EL���L���H�P(H��H���H�T$ H��2��?	��������������ǃ�����#
7H�
c2L�H`A���(?	������	7H�
�2L�H`A���>	�������	7H�
U2L�H`A����>	������	7H�
�2L�H`A���>	��w����w	7H�
G2L�H`A���|>	��L����L	7H�
e2L�H`A�&��Q>	��!���L�?2�H��Uh���ILc�H�EH���B�<�����7H�
92L�H`A����=	�������7H�
T�1L�H`A�%���=	������7H�
��1L�H`A�&��=	��m����m7H�
^2L�H`A�&��r=	��B����B7H�
�1L�H`A�&��G=	�����L��2�H��Uh����Hc�H�EH����<�tV��7H�
�2L�H`A����<	������7H�
�1L�H`A�)���<	����L�Q2�H��Uh����Hc�H�EH����<���I��H��H��E1��~H��xH��pH��xH��xH��xH��pH�UH���J��I��H�9Lc
H�1J�)LcH�SHHc	H��H�H J��H�H(J��H��H�P0H����E9�~,��H���H���m���H��xH��pH����H���H���[H��xL��pI��I��H�T$XH��E1�A�EA���L�s D��D�H�H�l� �E8A9F8�I���H���H�F L��xL��pL�V(H9�t6H�V0I9��;I9��L9���L��M��pH�F L�V(H9�u�M9�u�E1�H����H�{8�9Mc�J�|�8���L$@L�D$HL�L$PL�T$8���I����L$@L�D$HL�L$PL�T$8H����L�Z`H�PXL�X`L�Z`H�B`I�CXH�C8B�D�PH�x�H(J�D�8B�D�PH�p D�`,L�pH�hI��H��I�������H;|$X��L��M��p���H��A�����H�@`H�@XI����H9�����H��A����L9������L��A�������7H�
��1L�H`A����9	����7H�
X�1L�H`A�)��9	��l�l7H�
�1L�H`A�)��q9	��A�L��L��H����CP1��$�$7H�
-�1L�H`A�*��)9	���A��M��H��7��H�
��1L�H`A�*��8	Ic�J�l�8H�t�8��H���1H�H`H�l$(D�d$ I��E����8	���A��Mc��fff.�AWAVAUATUWVSH��8)�$�)�$D)�$D)�$ I��H���H��$��BH�yP�7D�yXE���*D�qhE��u�A\H��$�1��fA.�pv�A�p��A��f.�v
�A��H��H��u�L��$�H��$�L������$�1��
!2f.����AL$p��"	�=�2H��$���11��Y���$��^���A\L�Y����H��H��u���$��D
K2�Y���$���$��Y���$���$��Y���$�fA(��H"	f(���$��V*	fD(��	�1fA(�fDT��O�1�DY��5�1�AY4$�A_�fD(�f(�fD(��A^�fD(���$���!	E�l$`�D^�E����E�D$(E��~WM�L$HfW�L��$����11ɐI��f(�1��A�\LPH��H���Y��X�u�f.���H��A9��H��$�A�|$h�|$0L��H�D$@H��$�H�D$8H��$�E�A���E1�1�H�D$(H��$�A��1H�D$ ����(�$�(�$D(�$D(�$ H��8[^_]A\A]A^A_�A�l$h��t��HD���$�f.��1�FI��$�I�D$0��$��5��1H�D$P�H��1�f.C��f.K r��Hc�H�vH��H�|(H�����?u�fD.CrfD.K�H�vE1�L�l$`H��H��J�|(K�|I��I��0u�H�����H��H�vH�TvH��H��H�H�x(H�@0H�DH�@@H�@HH�@PI�E0H�D$X@I�uH�����Fp1��W�O f.��Fx��f.�r���g��_�Y��V�Y��f�Y��^���X��f��N �Y����X��^ H�1�H�,@H�f�Lc�I���I�D/L��L�t�M��������t7��uM��tA�FH��~��A�FH�FH�F(I�D/H�L$PL��H�t��������u�H�L$PH�����I��L;l$X����$���$������\��N �R����\��V�*����fD.CrfD.Ks/H���X��H��H�v��$�H����$�H�|(���H��$��|$0A��A�H��L��H�D$@H��$�1�H�D$8H��$�H�D$(H��$�H�D$ ���H��H�vL�t$PH��H��4H��t
�FH��~���FH�EH�E(H�l�(H��L�����H��H��t*H�t�(I��L��I���s����t݅�t�H��u�fD�H�L$PH���A��1��^���I�\$x�����6H�
S�1L�H`A���1	�������1	�@AWAVAUATUWVSH���)�$�1�H�΋A(��~J1�1��HcŃ���H��9^(H��~+H�VHH�:�ADA��A��� D�ADt��+2	��H��9^(�H�x�1�50�1L��$�H�|$`�n(D�n`�Fh1��F`�L��H���Y��XF��$��C��Y��XF��$��C��Y��XF ��$��M���H��H�/��H��H��H�� u�H��$�D�n`�Fh1��x��H�DH��H�� u�H�\$0H�k0���H���H�H����H�J`H�PXH�H`H�J`H�B`H�AXH��H9�u�H��$�H�D$hH�T$@L�d$0H�L$8L�D$pL�t$`L�l$xL�L$XH�l$HL�|$PI�D$M�t$H�AL�AL�BL�rL�uL�mI�GM�oM�AM�iH�C(L�C0L�s L�c8�CPI�\$A�D$(H�K@�CTH�Y�A(H��H�SH�CXH�Z�B(H��H�D$(�:��H���H�D$(H���4H��xH��pH��xH��xH��xH��pH��$�H��H�C0L�s H��L�k(H�k8�CPH�]�E(L�{@�CTI�_A�G(L�cH�CXI�\$ A�D$,���H���H����H��xH��pH��xH��xH��xH��pH��$�H�D$@H��L�d$XL�s L�t$pH��H�C8L�k0�CPL�s(H�X �@,L�c@�CTI�\$A�D$(H�kH�CXH�] �E,����H���H���H��xH��pH��xH��xH��xH��pH��$�H�D$hH��H�C H�D$PH��L�k(L�s0�CPH�C8H�X �@,H�D$8L�c@�CTI�\$ A�D$,H�CH�CXH�X �@,�<��H���H���!H��xH��pH��xH��xH��xH��p1�H�H���JDH�� u�N(H�VH�B���F(���=E1�E1��5)�1���V(A��I��D9���H�FHJ�,0�ED�ƒ���u�H�����HDŽ$��EDH���HL��xH��p1��I9�tmH��H��p�������Y���Y���X�����Y���X��X��f.�v�H��$�I��H���x��I9߸u�����L��$�M�����ED�V(A��I������D9�ED�	���D���L�FH1�E1�I���ADtD�I<A��H��9��D�N<1�E1�I���ADtD�I@A��H��9��(�$�D�N@H���[^_]A\A]A^A_����I��$p���M��$x�A�$�A�$I���Y��Y�����X��A�$�Y��X��AX�$f.��gM9�u�Wf.�H����H��p���Y��Y��X����Y��X��X�f.��I9�u�M�������I�l$0L��H��L�L$ �U��H��$�L�L$ H��t-H��xH��p�
H��H��pI�D$(H9C tH9�u�M9���M��M��p뗐H�T$(L�L$ �a��H���H�T$(L�L$ H����L�Q`H�HXL�P`L�Q`H�A`I�BXI�L$(I�D$@A�D$TL�`�@(H�CH�CXH�X �@,H�hH�H�c���H�@`H�@XH����Z���L���H�P8L�BL9���H��$�H������T���f.��ED����ED�_���H�@`H�@XH����L���H��xH��pH������H��xH��pH�������H��xH��pH����a���H��xH��pH�����L�B �K����F<E1��)������6H�
N�1L�H`A�E���(	������(	H��$�H���z���L��pL��xI��L��H9���f�H��xL9�LD�H��xH��xH��xH��pH���H��pH��tsH��xH��pH��xH��xH��xH��p1�L�D H��A�@D����H��A�@Du�I9�tEI��pL��H9�I���_���H���E1�H��u�H��xH��pH����f�L��$��~���AWAVAUATUWVSH��)�$�)�$D)�$D)�$ D)�$0D)�$@D)�$PD)�$`D)�$pD)�$�H���]���D�VdE��tt(�$�(�$D(�$D(�$ D(�$0D(�$@D(�$PD(�$`D(�$pD(�$�H�Ę[^_]A\A]A^A_��D�N(�=,�1�DI��?H�D$pH�D$xE��L��$��DY��J1�E1�H�VHfEW��D5��1�D-��1�A��H��D;f(�H�*�@Dt�H��$�L�@PH��L�t$ fE(�H��fE(�����$�H�T$pI��L����$��\NL��$�L��$�1���$���$��\N��$���$��\N ��$��H���$��D��1�XF��$���$��XF��$���$��XF ��$��*�1��A^��\��X�fD(��DY��*�HDŽ$���$��A^��\��X�f(���$��Y��AX�fA.�������u�����u�H�FH�NpH�(�Ch�	�E^�H�VHH�*�AY��
��1�X��1�A\�������f.�vH��������?f(�H������A��H��D;f(�Y��������Y��Y�����������H�������FlH���?����f.�fA(��AY�M��L��L���Y���$���$��M��$�M��1�H���X�$���$���$��X�$���$���$��X�$���$�����Np��	�AY��EX��DX��o���DAWAVAUATUWVSH��I��H��1���6H��$�H��$����6H���1$	H���H���Q�RH��H���1H���P@E1��H��Sp1�L�
��1L���1H��H�D$ ���1�L�
��1L���1H��H�D$ ���H���y"	1��D�I��H�D$ L���1H����D�vH�D$ E����1�L�
��1L���1H����D�nE����L�NL�FH�|$@H�F H�?�1H��L�L$8�\$8L�D$8�T$8H�D$ �"	1�H�D$ I��L��1H������������~\���	H�n�1H��H��$hL��$�L�T�1L��$ H��$`H�S�1L��$�H��$hH�C�1H��$pH�:�1H��$xH�0�1H��$�H�&�1H��$��f.�L�EH��H��1L����!	L���L���H�)�1H���L��H��L�L$8�\$8L�D$8�T$8H�D$ �!	1�H�D$ M��M��H����L9�u�H���1E1�E1�1�H��H�D$ ���1�A�L���1H����E1�1�L���1H����E1�1�L���1H����E1�1�L���1H����D�^(E��~`1�1��@��H��9~(~JH�FHH�(�@Dt�H�P`L�HPH��D�@@��H��H�T$(H�@X1�L�L$8�\$8H�D$ ���9~(�E1��H��SpA�A��H���D$ ���H��1E1�E1��H��H�D$ ���A�L���1�H����A�L���1�H����A�L���1�H����H���H���QH��xH��p�f�H��H��pH�F(�H��D�H@H�F D�@@H�F0�@@�D$ ���H9�u�L��H�����������6L���H�H`H�<�1M����	�H�Ĩ[^_]A\A]A^A_�1�L�
��1L���1H����D�nE���3���H�D$ L�
��1L���11�H��������H����1�뒐H���X���L���L���H�8�1H���H��L�L$8�\$8L�D$8�T$8H�D$ �	I��1�H��H�D$ L�^�1���L��L��H���1H��H��L�L$8�\$8L�D$8�T$8H�D$ �T	I��1�H��H�D$ L�'�1���L���L���H�~�1H���H��L�L$8�\$8L�D$8�T$8H�D$ �	I��1�H��H�D$ L���1���L�� L��H�!�1H��(H��L�L$8�\$8L�D$8�T$8H�D$ �	H�D$ I��L�~�11�H�������H���������f�AWAVAUATUWVSH���)�$�H��E��H���H��$8D��$HH��$PH��$X��H��$8E1�D�����H��H����1�H��L�d$0���U(��~`E1�E1�DH�EHJ�8�@Dt9H�PPH��H�T$0H�PXH�T$8H�@`H�D$@tM��L��H����M��1�H���A��I��D9m(�L���M��tfI��xM��pH��$���M��M��pI�U I��H�ًR@��$�I�U(�R@��$�I�U0�R@��$�1��PI9�u�H��1�M��H�D$0fW�H���hE�����$H��t^D�}\E��tUH�54'0�L���5<�1�H�H�|$01�f.�H�vH��I��f(�H��H����H�����H��u�H������tJ�4���H����6L��$8H�H`H�h�1I���	�(�$�H���[^_]A\A]A^A_�H����1���f��۩��H������H��2�6L��$8H�H`H���1H�t$ I���B	����������H��������?�58�1H�D$0H��������?H��H�D$8H��������?M��f(�H��H�D$@���H��f(�M��H�����{�����D�:���ff.�H��8H�D$(H�D$ ����H��8�ATUWVSH���)�$�)�$�I��H��H���f(���E��tE�D$\E���(1�H��A�L$(��~h1�1�H�|$0�f���H��A9\$(~FI�D$HH�0�@Dt�H�PPI��H���H��H�T$0H�PXH�T$8H�@`1�H�D$@��A9\$(�I��$�H��tfH��xH��pL��$���H��H��pH�C 1�M��H��@@��$�H�C(�@@��$�H�C0�@@��$���PH9�u�f(�1�H��`�(�$�1�(�$�H���[^_]A\�f�H�|$0H�5$0��=�11��H�H�t$0H�[H��I��f(�H��I����H�����H��u����D�L$(���D�L$(�_���f.�AWAVAUATUWVSH��)�$`)�$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�H��L��H���DŽ$\��D�MTE����fW�L��$ L��$1���A�\��\L�A�Y��AH��H���X�u����10�f.�vl(�$`(�$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H��[^_]A\A]A^A_��Q�f.���
�D-}�11��{�1�D^��%��1fW��AY��AY�f(��A�A4H��f(��Y�H���Y��X��X��Y��Y��X��X�u��D�$ ��$(�D�$fA(��D�$f(��AY���$0fD(��AY��D�$�DY��X�f(��AY��X�fA(��AY�fW��1�AX�fD(��DY��AX��^�fW��DY�f.��Y��Y��EX��AX��AX��EY��Y��Y��DX�f(��]��AX��X�f(��_�r
f.��=	H��$\H����|$X�l$PH�\$`M��H�D$p�t$HH�鋄$p�D$@�T$8�d$0�L$(�D$h�\$ �ޗ����$\1����������F�����s��Hc�A��H�IH��H�L��IL��$�L�AL��$�L�AL��$�L�AL��$�L�A L��$�L�A(L��$�D�DD9���D�P�Rf�Mc�O�[L�I��I�M�L�YM�YL�YM�YL�YM�YL�Y M�Y L�Y(M�Y(E��G�DD9�|eD9�~-Mc�K�IO�LIH��I��H��BT�Af.�vA��Ic�H�IH��H��Af.��h���Ic�E��H�IH��H�D9�}�L��$����IL�L��$�L�AL��$�L�AL��$�L�A L��$�L�A(�����Hc�L�+H�IH��Hك�H�9L�)L�kL�YL�QL�A�IL�I L�iL�kL��$�L�A(H��$�L��$�L�iL�kL��$�L��$�L��$�L�iL�k L�i L�k(L�i(t;E1�A��`���H��H��$�L��$����L��$�H��$�����E1�H�;1�A9�L�[L�SL�K L�C(�KH��}jA��L�r0A9�}8L�B(L9BXH�B`D��u �]f.�I��H��0L9@����9�u�Hc�A�0��H�@H��H���	A9�L��|�1�����$\�����D5��1D��$��DG�1DŽ$�fE(�DŽ$�E1�H��$����$ Ic��D�$(H�v�D�$0DŽ$�f(�H��fA(�H�$�fA(�D9�fAT�fAT�fAT���$���$���$��
H�B D��E1�E1�E1�E1��>���{A��A�߃�9�tGA9�t�B�\@(�AY�fAT�fA.���H��0��ɋHu����PA�ރ�A��9�u���D)ȃ�$�������E	�����$�E1��I�1��<�1���D�$�f.
%�1fT�fU���$�fV�DF��f(�f.�DG����fT�fU�fV�fD.�vA�L��$@�
��11�A9��A�t�X��A�H��H��u���$H��L�T@�D�$�E1���$���$PI���D�$@�Dx�1fD(�J�D(�-#�1B�D B�D$�``�Phf(��@pf(��Y��AY��X�f(��AY��X�f(�fAT�f.����]1�f(��AX��Y���$��Xe�Y��U �AX��X�fA(��Y��X����1�XXxfW��1�^��Y��Y��AY��X�$��AX��AX��������Y��Y��X�����Y��X��X��fA.�w2�_�H�� H��`f(�u�fW�1�f.���B�D 1�f.���B�D$I��0M9������D9��D�$�DŽ$���1�E1�E1�E1�E1҃�$�D���Y��������E��~E��D��D	���E����E��t}D��$�E����9���A������f��B$A!A$9�������t����������A����$��s������g���A����$��W������D)����E	�A	��w���E��D���H�H��$�H�@H��H‹�$�9B �W���Hc�$�A�0H�4@H��H�$�H���
	�v ��$�9߉�$�������$�1Ҩ��)����Hc�$�A�0L�,@I��L�$�L���V
	��$�A�E A�0A�E$H��$���H�L�,@H�DvI��L�$�H��H�L���
	A�E A�E$��$��q���E��D�����E�ۋ�$�E�$�����fD(��D]�fA(�fD(��D_�fA(�����B$A!F$����H��$�L��$���L��$�H��$��1�E1�E1����f(�L��$��{�L��$����fffff.�VSH��)�$0)�$@D)�$PD)�$`D)�$pD)�$�D)�$�D)�$�H��L��H���DŽ$,�R�CT���fW�L��$H��$�1�f(���A�\��\L�A�Y��H��H���X�u��C�10�f.��'H���:Ft�
Nf(�H��$�f(�H���:Ft�
��Db�1�D
��1H��$�1��A�$H��f(��AY�H���AY��X��X��Y��Y��X��X�u���$��$�D�$�f(��D�$�f(��AY���$ fD(��AY��D�$�DY��X�f(��AY��X��=~�1fW�f(��Y��AX�fD(��DY��AX��^��Y�fA.��Y��Y��AX��AX��AX��Y��Y��Y��X��X�f(��_��X�f(��]�rfD.�rf(��]�f(�f(��_�f(�H��$,H���I���.AI���.��l$XI��H�D$pH��$��L$P�d$HH���D$h�D$@H�D$`�\$8L�T$0�T$(L�\$ 請��H����H��$����s�k�1f.�$��|H��$�A��H��$A��uE��uH��$t�0�1f.�$��y��t#H��$�H�H��$�H�FH��$�H�FE��t+H��$�H��$�H�H��$�H�BH��$�H�B��tH��$�H��$�H�E��tH��$�H��$H�H��$tH��$�H��$H�H��$�tH��$�H��$H�f�(�$0(�$@D(�$PD(�$`D(�$pD(�$�D(�$�D(�$�H�ĸ[^Ä������H��$�v������@�t��x���@H��H��$�L��$����L��$�H��$�������E����w���H��$�L��$��{��L��$�H��$����fDAWAVAUATUWVSH��()�$�)�$�D)�$�D)�$�D)�$D)�$L��H���H��$pH��$xL��$�HDŽ$�HDŽ$�HDŽ$��8
H��$pfEW�D�zXE����L��$pI����S@�B9��]�SL�C�T$4�T$4�=��1D�l$4�-��1H�t$P�5D�1��H��$��CDLc�fD(�fD(�1�L�\$@A��H�l$8f�A��L�T$8��A���L�\$@E��H���A���A�Mc�M�O�4	M�I�M�N&�C�O��f.��C��1f.��6A��E1�G�fD(�E��A��E�A�Mc�O�<��C��0f(�f.�EF�EG�E�����E)�A��f(�fDT�fU�fAV�fD(�fDT�fU�f(�fAV��E���r�\؃�D��Lc݋l$4F����f(�D)�D�fT�D�M��D;L$4�Y�����H��H���HL�D������f(��A\��HE��f(�~_L�t�A��Mc�N�<�O�$�O�L>��A��Hf.�w$E����M�!A��I���A��Hf.�v��A��0�\�f.�vgf(�F����fT��Y��BL�P��D9��>���Mc�A9�N��}&N�d�A��O�$I��fA.��0�,���A9�|�fA(��+���f(�D��fT��Y����fDfA(��l���fD�\�D��f(�fT��Y���H��H�������H�l$8fE(�fE(�L��$��D��11��D��$��L$P1�E1��D��Jf.�vD�D�f(�A��H��H��u�f.��*fA.��%Mc�Mc�E��J�T�A�N�<�A��(;KDs�S@9�Cʃ���9�A��(�mA��B����tj�Q;SB������J�L�Hc�Mc�H���B��0�B\D�f(�fT��Y��BL�P����f(�E1�E1��A���f(�A��A���2����Q���B����x>J�L�Hc�Mc��BD�H���B\��Hf(�fT��Y��BL�P���fDH�3t�<{�B����J�T�P��������C@H��$xtH��$x�D�DJ�DZH��$�tL��$�I�(�$�(�$�D(�$�D(�$�D(�$D(�$H��([^_]A\A]A^A_�H��$pM��I��L��H�D$ L�T$(�X|��fD.�H�D$ L�T$(�^����D�$�L���D�$��D�$�fD(��3���D�SL�CE��D�T$4~�L$41�I��H��9�ǂ(��C@��o����H��b	L��$pH��H��I����QL��$p1�E1�I���H��t5H��xH��p@�A�H9�u�H��A��H9�H��pu�Ic�H��D�~�F@E1�H����H��J�D&��I��I��0u�fEW�H��0H�X0fA(��XH��H9�u�H���Y�0�;L��xL��pE1��-��1�%�1H���*���GI���*����H���*���GI���*����I���*���GI���*����f(�H��0f(�L��HH��8L��P1�L��@L��XH�L 1��DPf.�vf(��Y���0f.�v
�Y���HH��H��t ��0�DP��Hf.�v��H�DVJ�H�DVH��H��J�t��0��H�n���I��I9�tL��M��p���D��A�W�D�|$@�E1�I���D$4�T$8H�l$H�|$@M�G��D�d$4D�L$8Ic�E��E����f�A��Ic�I��C�D$A9�L�*���A��HD��A�j�,�Hc�I��H�
���Hf.�vUHc�I�؉ÍDD9�QD9�}�Hc�L�_)I��I�t�H�
�B��B�f.�v���Hc�I��H�
�B�f.�w���Hc�D9�I��~�E��L�*�H���Ic�I�A��I��L�(H�t9��D���M� A��I��A�����L��$pH�l$HA�BX�����l$4M�(Ic�M�G������Hc�I���D-A9�L�"���A��0A��A�y�/Hc�I��H�
���0f.�vVMc�K��A�ÍDD9�QD9�}�Hc�L�V&I��I�\�H�
�B��B�f.�v���Hc�I��H�
�B�f.�w���Ic�D9�I��~���L�"�H���Ic�I�A��I��L� H������>���������H�
S�1�>]��6H�
�1L�H`A�%����������f�E1�����ATUWVSH��)t$P)|$`D)D$pD)�$�D)�$�D)�$�H��I��L��H���L��H��$�&�CT����D��D\C�w�\{fEW��\s fA(��DD$0f(��|$8�AY��t$@�Y��AX��X�f(��Y��X��DQ�fE.����D��1fE.��Y�E^��A^��DD$0�A^��|$8�t$@H���L�D$0H���q��H�����H`�`hf(��k�C�Y��Y��Pp�Yd$8�X��C �Y��YT$@�X����1�XXxfW��D$0�Y��X��X����1fT�fD.���^�fD.���H��t4�Y��X���D$8�Y��XC�F�D$@�Y��XC �FM��t�E$H��t�](t$P(|$`D(D$pD(�$�D(�$�D(�$�H�İ[^_]A\��H��?H�D$@H�D$8H�D$0���f.�H���������������f(���fD(��6����\$(H�T$(H�
�1f(��HZ�L$(L�D$(H�
��1�\$(H�T$(f(�f(��ZH�
O�1�Z��H��HI��L�D$ H�T$0L�D$8����D$0�^D$8H��H�@H��HI��L�D$ H�T$0L�D$8�����D$8H��H�f.�ATUWVSH��p)t$@)|$PD)D$`H��H���H���RfW�L��xH��pH�|$ �D˿1f(�1�H�D8f(�H�H�HH�P1��LP�\LPH��H���Y��X�u��Q��f.����H��H��u��T$ �\$(f(��D$0�X��X��AY�f(��\�f(�f(��Y��\��\��Y��Y��Q�f.���H�F L9��HP�PX�YN`�YVh�X��P`�YVp�X��Y��X�tH��H��p������x�1fT��^d�1(t$@(|$PD(D$`H��p[^_]A\��l��H���H�������fW���f(��]����f(��O��M���f.�SH��0H��H���H��t_H���H��t@L��p�I9�L���tI�@ �@@�I�@(�@@�BI�@0�@@�B1�H��0[�H��H����I��u���H��H�T$(���H���H�T$(�f�SH�� H���H��tHǃ�H�� [��x����fDSH�� H���H��t�C@H�� [�D�K���C@H�� [�f�AUATUWVSH��)t$P)|$`D)D$pD)�$�I��H����fA.�$���I��$�fEW�H��fA(���L��xH��pH�t$0�D�1fA(�1�H�D8f(�H�L�@H�P1��ATP�\TPH��H���Y��X�u��Q��f.����H��H��u��\$0�d$8f(��D$@�X��X��AY�f(��\�f(�f(��Y��\��\��Y��Y��Q�f.��HL9���`�X�tH��H��p�-����E�T$@E1��A*�f(��Y��\�fA.�v}I��$�E1�H��tm�^�L��xH��pL9��D��1f(��Y�`�AX��D,�D��hu�.�H����`H��p�Y��AX��,�A�I9���hu�C��A�$�A��$�(t$P(|$`D(D$pD(�$�H�Ę[^_]A\A]�@����A��$����L$ �����L$ ����f(��L$ ����L$ �T���f(��L$ ���L$ ���fDAW��AVAUATUWVS��H)�)�$`)�$pD)�$�H���H��$�H��$�L��$�L��$��:L��$�I����1L��$�I����)H��$�L��$��BA�B�B��A�B��H��������?A�BdI�JpH��$�L��$�L�d$`L��$�5ۺ1�D��11�H�BAǂ�H��AǂHA�B`I���=��1H��$�I�BH�BI�BH�B I�B L��$�L��$�L��$�L��$��F(E1�H��$����n��H��$ I��H��$H��A����1I��H��H���X�D$ (M��I��H��L��A�������H�t�A�GI��9F(��H�FHJ���@Dt�H�PP��H��$H��$H�PXH�@`H��$H��$t:M���Q���H�FH��$ H�FH��$(H�F H��$ H��$0�9���H��$�H���@����H��$��D$ (L��$�I��H�������4���H��$��D$ (L��$`I��H�����������L$xf.��������$�f.������$xf.������A\�f.������AX�f.������H��$@L��$�H��$`H���Rf(�H��f(�H���\T$x�\�$��^��LSL��H��I����H��$�H���.����K���f�H��H��t
H��������5��1H�D$X�D�1�D$XL��$�L��$���LD�$�LD�$�I���L�T$@H����L��xH��$@�=��1L�T$PL��pL�T$8f.�L�VI��L�T$0I�G8H�PH�H�AD3BD��NL�T$@I���H���9H��xL��pL��$X1���0f.�H����0f.�H��H��H��u�I�G8I��L��H�PH�\$(H�@L�JPL��H��PH�D$ ��g��������$Xf.���f.���H��$�L��$ I��H��$L�T$HL���$L�D$H�d�1H��H����TH��$��D$ (L�L$`L�D$HH�����t�D$xfA.����H9�tL��M��p����I��L;|$0�����H9t$PtH�t$8L��pL�T$8�`���H�D$XH�|$X����H��$��@`1�(�$`(�$pD(�$�H�Ę[^_]A\A]A^A_�L�T$XJ����L��$ L�T$HH�PH��$ H�PH�@ H��$(H��$0����H��$�H���=�������H��$�H��?H�Pp�@d�.���H��������L����������L����������ff.�AUATUWVSH��(L��$�L��$�H��H��L��L��L��H�����u�H��([^_]A\A]�fDH��H����t�I��I��H��H��L��$�L��$�H��([^_]A\A]���AWAVAUATUWVSH��)�$�)�$�D)�$��5��1H��$�=,�1H��$L��$�D$\D�D$\H��$H��$E��HE�$HE�$D�O(H�D$HE��~d1�1�H�WH�Dӳ1H���fD��H��9w(~<H��@Dt�1�L�@PH���fD.���H�WH��H�H���HD9w(�H���H���JH��xL�d$`L�l$xH�D$PH��pH�D$@fDH�FI��H�D$8I�F8H�PH�H�AD3BD���H�D$HH���H����H��xL��p�1���0f.�Hwj��0f.�HwVH��H��u�I�F8M��H��H�PH�\$(H�@L�JPL��H��PH�D$ �pc����t�D$xf.�rf.�sJf.�H9�tL��M��p�l���I��L;t$8����H;t$Pt(H�t$@H��pH�D$@��H��$L������뮃D$\�|$\�����(�$�(�$�D(�$�H�ĸ[^_]A\A]A^A_�H�GHH��$H�H��P訯��H�WHH��`D�����WVSH�� H��H��L��L��H�������H����9H����;��Fǃ�ǃH�_�C�F������CH��������?�CdH�CpH�F���H�CH�FH�CH�F H�C 1���u:�C`I��H��H���u���D���E�����C`1҉�H�� [^_�f�H���H���H���H���H���H���H��H��uƉ��넋G���9����C���5���I��?�CdL�[p�0���H�������l����H���������H��������AWAVAUATUWVSH��X)t$@H��H��L��M��H�������H����<I����;�ED�E�E�A_E���F����FH��������?�FdH�FpE1�}(H�EL���L���H�|$ dž�džHH�FH�EA���F`1�G�d�H�FH�E �A*�H�F �\5�1�*�M��L��H�����^��bJH��H�����A9��H��M��H������F`1�(t$@��H��X[^_]A\A]A^A_�A�O�������V������H��?�FdH�Fp����H���g������L���Z������DAUATUWVSH���)t$`)|$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�H��H��H���f(��sH�H��C�F�C���FtI��������?�FdL�^pH�Cdž����džHH�FH�C��H�FH�C H�F ��1�H���H���H���H���H���H���H��H��u��D������D���D���D���D�����D�S(�F`E����1�1�L�l$@L�d$ �f���H��9{(��H�CHH�(�@Dt��@PM��fE(�L��f(��D$ �E\�H�PX���A\�H��H�T$(H�@`�D$@fA(�L���A^��A\�H�D$0�Y��AX��D$HfA(��\��Y��X��D$P�2�D$(M��L��L���Y��D$(�D$0�Y��D$0��L��H������9{(�0���D�K\E����fE(�L�d$@�E\�L�l$ H���E\�1��D\����H���M��L��L��f(��L$@�L$ fA(��A\�H�D$HH���H���A^�H�D$P�Y��AY��AX��X��L$(�D$0�Q�D$HM��L��L���Y��D$H�D$P�Y��D$P��H�D$@H��>�H�D$HH��>�H�D$PH��>�H��H����+����C\�F\(t$`1��F`(|$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]�fW��D%_�1fD(�fD(�fD(�fD(��i���H���n������f�VSH��x)t$ )|$0D)D$@D)L$PD)T$`H��H���Ap�A8f(��E@�N�fD(�f(��0�f(�fA(��Y���fD(�fA(���fA(�f(�fA(��Y�D(D$@�Y��Y�(|$0�XS(t$ D(L$PD(T$`��XC�F�XK �NH��x[^Ð����D�IdE��~(1�DL����L��L���@M��H��A9����ffff.�H�����1��yd	1��yh
����ffff.�AUATUWVSH��8D��(H��E���w�qh��~L1��H�ꌠ9Y>)FI�ꌠ9Y>)�H����L���0DŽ������DŽ������H��9��D��@���H��8A��H�L�d�L9���Mc�H��N�,����~yI��E1�I)�I���B��B���Z�f.�vL��L���B���H��?I��B����fB.��0vL��L���B��0H��?I��B����I��D9��L�I9��w���fW҅����~11�D���0�\���H��9��Y��X������Q�f.�zS���ǁ(�Qh��~-1��H��tL����L��M��tL���0M��H��9��H��8[^_]A\A]�f(�H�L$(L�D$ �F�L�D$ H�L$(�f.�SH�� D��(H��E��u
E1�1�������H�� [�@WVSH�� ��(H��H��L�Dž�tF�Ch��~41�H����t
HcЋ�����H��t
Hcɋ������HH��9Kh�H�� [^_�E1�1��f����@AWAVAUATUWVSH���id�ƀH��L��$PL��$Xt�A��@t�F�����1҃��@9�u�H�T$`��QH�T$PH�T$(���1҃��@9�u�����D$<���D�~hHc�Ic�H��H���S�H��H�D$X�����$L��$��M�I�EH��L��L��H��L9��H��u�HcD$<H�T$(H��$�M�eD�|$8H�{H��H��$@H�H�L$@H�D$0H�D$XH�T$HI��D�Vd1�H��$8E��~:�A�L��*��Y�Ɛ�X������@H���
H��A9��H��H��H�L$@�H��H9������H��u�E�J�D��$�L�\$(I��f�E��L��8��$�~O��D���1�9��&��A���H��;������lL9�Hc�M��u�M�1��
�����������������H��9��D�D$8E��~%H�D$0�L$8H�1��D��E��H��9��H�D$0H��$PD�L$<L�D$HH�T$(L�8��$X1�D���A�L���;�����A�L��A�D�H��9��D�~h���E��~E1�H�ꌠ9Y>)FH�ꌠ9Y>)�H����H���0DŽ������DŽ������H��A9��D��@H��8D����H�H�<�H9���Mc�L�\$XIc�N�$�H��I��1�E�����A��A��H��A9��M��1�I)�I���A�����Z�f.�vL��L������H��?I������f.��0vL��L�����0H��?I������H��A9��M�I�L9��Y���fW�E�����~-1����0�\���H��A9��Y��X������Q�f.��H�T$PH9T$(���dž(t
H�L$(�W�H�L$X�M�H���UjH���-��H��[^_]A\A]A^A_��E1��Z����I��9�����p����Fh9ՉD$8H�M�<��@���D�|$8������f.�H�H�����H��H�D$(�E���H�
��1�:�H�D$`�D$<H�D$PH�D$(�0���H�T$PH9T$(t
H�L$(�n�H�
�1��9f(��	�����@AWAVAUATUWVSH��8)�$)�$D)�$ 1�fW�H��I��H��$�D�ad�qhH��8E���fW�H��I��E1�1�fD(��f(��\��A^��H�T$ D�L$(f(�����,�E1�fA(�H�T$ D�L$(��xE�A�A9�~y�*�D��lD��Mc�I���\�L�H��I���Bt�0I��E9�~a�CD�D����A��f.�v	f(���A�@f.��K�����E����D��lA���A*�E��Mc�I���H��$�1�f���H��A9��E�\$�E1�E9�}Y�HcA��E9��L�0~7E��Mc�F����Ic��D�0f.�v�f(�B����D�A��E9�u�H��E9�|�Ic��ˠ1Hc������L�0�\�f(��Y��X�~+L��$�1����Z��Y��A�H��9��E��H����A��fDMc�Hc��l��Nc���E��H���B\L�0f(��Y��X�~1L��$�E1�@�B�Z��Y��CX��C�I��D9��A��A���tMc�Jc����L�0끐��$���Lc��Bd�0Nc��lf(��Y�N���X���L��$�1�D�A�Z��Y��AX��A�H��9��1��AD�P�A\��^��A�H��9��1��A����Y�Z��X�����f�fZ����Z�f.�w���0f.�vfɃ�fZ���H��9��E����@Hc���A�S���Hc�Hc����T�0Hc��l�\T�0H��~lL��$�1��A����Y�Z��X�����f�fZ����Z�f.�w���0f.�vfɃ�fZ���H��9��A��tIc��S���HcɅ�Hc��l�T�0H��~iL��$�1��A����Y�Z��X�����f�fZ����Z�f.�w���0f.�vfɃ�fZ���H��9��(�$��(�$D(�$ H��8[^_]A\A]A^A_�ffffff.�AWAVAUATUWVSH���)�$�)�$�I��D�qd�YhL��8H��$(H��$�L��$0�D$,E���L��L��E1�fW��q@f(��\��^��f(����D,�E1�f(�E��x$D�O�E9����A*�D��lE��Mc�I���\�M�H��H���Bt�0I��E9�~sH��$(�������B�f.�vf(��D$,��@f.��S����D$,�J���fDD��lD�W��A*�E��Mc�I���n���H��$�1�fD��H��A9��A�V�E1�A9�}Z�HcA��E9��L�0~7E��Mc�F����Ic��D�0f.�v�f(�B����D�A��E9�u�H��A9�|�Mc�L��$(I��?O��I��Mȅ�M�Lc�Jc����T�0�AP~1��A�Z��AD�PH��9��H��$0t@L��$01�Mȅ�~"f.��A�Z��AD�PH��9��I��?M�����K��H��$(E1�H��H�Ic��l���UM��L��t�B�H�Hc���H�D�0��H�E~$E1���C�Z��BD�PI��D9��H��$0tOH��E1��A�͐H��H�$0��~&�C��C\��Z��^��BD�PI��D9���Y����H�����tHc�M��Hc����T�0�(���D�D$,(�$�(�$�H���[^_]A\A]A^A_��AWAVAUATUWVSH���)�$�)�$�H��H��$�D�adH��$ D�ihH��8�D$,E����H��I��E1�fW��gf(��\��A^��f(��!��,�E1�f(Dž�xD�F�A9�~|�*�D��lD��Mc�I���\�L�H��I���Bt�0I��E9�~g�B󋷰�A��f.�vf(��D$,�A�@f.��_����D$,�V���D��lD�N��A*�E��Mc�I���z���H��$�1���H��A9��E�\$�1�D9�}Y�Hc��A9��L�0~7A��Mc�F����Ic��D�0f.�v�f(�B����D�A��E9�u�H��D9�|�Ic��,�1Hc���E���L�0�\�~1��D�Z��Y��D�PH��A9��E��~}A��fDIc�L��$ E��Hc���D���\L�0Ic��lH�l�~(E1��BD�Z��Y��BXD�P�BD�PI��E9��A��A���tHc�Hc����L�0�Hc�$�H��$ E���L�0Hc��lH�T�~&1���Z��Y��XD�P�D�PH��A9�ߋD$,(�$�(�$�H���[^_]A\A]A^A_��WVSH�� H���]H���y�H���Q�H��0H��t�p�D�_dE��~$H��1�f�H���H��t�O���H��9_d�H���H���H9�t�+�H�����H��H�� [^_����(������(uG���H��8��@H�L��1�L9�s�B�Hc�@H��I9�w鋁(����(��@UWVSH��(�ωֹ�@D����H��H�����F���	���E��sd��	������kht�C��@t�CH�����H���H���H������~:H�H�4�H���.�H��H����qH����H��H����%H���[H��Hǃ0��H��胯H�����1���H�
�������H�����H���H�
�
H��XH�S���H���H�
�
H���H��
H���H�
ٻH���H���H���H�
M�H���H�O�H��H�
��H���H���H��H�
U�H��H�w�H��0H�
I�H�� H����H��8H��(H��H��([^_]�H�
��1�+H�
>�1���+H�
�1���*H�
Ғ1��*H�
=�1��*�UWVSH��X�qdH�ˋIh���\1������H��9����Lcډ����@ǃD~3�F��L��1����D�����HH��L9�u�1�f.����D�щ��lH��9��L���E1��A��Hc�1�M���A��B��DA��H��9��I���D9��A���A��E��~$H���1�@A����@��H��A9��Hc�@H��I���e�H��H��0�`L�P��ǃ(L��8��L�D$ �N�I�@L��H���H��H9��H��u�A�A�B��v��A�B�1�1�1��-��O׃�E����H��A��A��A!�D	�9�A�R�~2A�j�E��D������A9��A����ANу�����A�B�1�fDA������;���A��|*A��H��9��ǃ,H��X[^_]��Hc�@9�M���*�����L�����ǃ���@ǃDA�A��H���H�
��1�)(��AVAUATUWVSH��0)4$)|$D)D$ H�͋�@������L��8�=�1�yd���\ǐ1�qh�̐1Hc�M�$�M9��^���-��1H�L�,�D�f(�f(�1ۅ������A����E�P�A����H��f(�f(��DD��H���������lE�4Mc��C�E��A)�D9�Z�D��H�fD(��_��D]�f(��A�fA(�Z�fD(��_��D]�f(�fA(�u��A�Z�fD(��\��D\�fA(��]��]�f(�H��9��+���M�M9��
���1�(4$f.���(|$D(D$ H��0[^_]A\A]A^�f(�f(��fffff.�VS��H�ˉ�AT��1��A���D�,�L�1�A�<�v��D��A��L�,D�YA��E;�r�KTH��9‰KT���C`�����C\1�A��H��9‰K`�M���CXt��~1�A��H��9��C`[^��A\�A`����AX��ATUWVSD�I��A�[�Hc�H�<�A�JX��A#J\E��A�JX~1���H��A9��A�jT��tJA��1�A��A1�1����1�E��~$A9L�,vE�ȃ�A�A��A��D	�H��A9�܃�A;jTr�E��~UE1�fDB��D�͉���1ȃ�A��v#��@��vD���A��A��A1���u�G;D�snF��I��E9��A�ZX1�����[^_]A\�f��ۉ�����I��I���Lc�C9L�,vE�̃�A�A��A��E	 ��I�����u׃�A;jT�
����E���A9��������AWAVAUATUWVSH�����$0�ƀH��L��$ M��t�A��@t�C��tN�Sh��~G1�I�ꌠ9Y>)FI�ꌠ9Y>)�L����L���0DŽ������DŽ������H��9��L��$��SdH��$�L���L�d$0L��$@M��H�����I�D$PH�D$(f�D�[dH��8E��~TI�L$H1�f�A�T�D���l�*�D��Mc�J�4��Y�Ð�X����AD�PH���H��A9���Sh��~1���Z��A�H��9��L�D$(L��H��$ A�օ���D�ChE����1��A�����fZ����Z�f.�v/����H��H+�8Lc�@H��H��H��?I������f.��0v/���0H��H+�8Lc�@H��H��H��?I������H��A9��f���L��H���{����������1���t{�ShfW҅����~41�����0�\���H��9��Y��X������Q�f.�z>���H��ǃ(�2QH���
�H���R���H���[^_]A\A]A^A_�f(�襰�H��8�D$ ����H��8�f.�H��8�D$ ����H��8�f�AWAVAUATUWVSH���)�$�)�$�H�ˉ�$8��L��$@L��$HH��$PH��$XH��$`L��$hL��$pt�A��$8@t�CD�kd�=w�1ǃ����E����M���HL�EH��I��E1�E1�f(��pN��H��L������B���@���\��D9��*щ��^������A�M��H��I��L�`����D���I��L����E�	D�`��A*�E9��Y�����~D���D���H���Q���H��Hǂ��Q���I��?f(�L��@�E���f(�1��*�f(��^�f(�腨�Sh�����~g1�fW��/�A�M����àt2�A��\�����H��9�~0M��u�M����àf(�u�f(��\�����H��9��H��E1�����$8 �sh�H��~D1�I�ꌠ9Y>)FI�ꌠ9Y>)�L����L���0DŽ������DŽ������H��9��H��$��SdH��$�L�t$0I��L��$@I��I������I�~P�5I�1D�SdH��8E��~II�NH1���D���l�*�D��Mc�J�l��Y�Ð�X����AD�PH���H��A9��H��$@I��L����$H�Kh����E1�D�C��B���fZ��BD��Z�f.�v1�B���H��H+�8Lc�@H��H��H��?I��B����fB.��0v1�B��0H��H+�8Lc�@H��H��H��?I��B����I��D9��^���M����D�[dE����A�E��$���9���L��E1�� DE�D���L�HA��D9�}uI��L���*����@��A9�Hc��X�H�l��Y�È�X����CD�P�L��I��H��$@��$H�Sh1���~�A�fZ��L�H��9��H��$�H������������M��L�����KdA�f(�A����A*��^�f(����A�I��H�D�H�D$(H�T$(H���H��H9�u�fW�L��8�{h�-؄1f(�M��M��1�@��D���lD�����DH��Mc�O����9�Hc�M�4�Ѕ�~uf(�E1��Y�E��f(�~&L���1�Ic�H��L�A9��A�Z��X���C��Y�Z��\�f�fZ��Z��Y�f�fZ��C�I��D9��1�D��D�D���A��D9‰��e��H��9��H�D$(A�I��L9�u�M��1������lH��9�Hc�M���E1�E���:fDE��1�f(��DA��r�Y�H��9�~.��A����t�D�t�A��D9�u�E��r�H��9�������N�4�L��E1�fDIc�C�Z�J��Y�I���Z��X�f�fZ���B���f.�v.I���B���Lc�@L)�H��H��H��?I��B����fB.��0v1�B��0IcLc�@I��L)�H��H��H��?I��B����I��D9��I���I��E9�����1�f.���D�D���A��D9‰�����H��9��L��辷��Hǃ�~,1����0�\���H��9��Y��X������Q�f.������ǃ(H����(�$�(�$�H���[^_]A\A]A^A_�9������d���f.�9����������Hc��Hc�H��H����H��I�������H�

�1�8�L������{hfW�����{hfW����H�
��1�f(��K��!���������AV�� AUATUWVS�<�H)�)�$p )�$� D)�$� D)�$� H��I��H�H��P�xd����fEW�1��=
�1L��$  fE(��+�*ȋ�����Hc�H���\�H��At�H��9�~RD�d�h�A*��\��AY4�f(����,�1�fA(Ʌ�x�A�T$�9�|�����A���A*�A��Hc�H��똍G�H�L$ H��?L��H�T$ A�M�l�L�a�ME�K�f(�H��E��L��O���\���H���Mc�A��L9��Y��BD� ��Y��H��u�H��E�L9�u����������fA(�H�L$ L��1�Hc��AH��L9��Y��X�u�(�$p (�$� D(�$� D(�$� H�İ [^_]A\A]A^�H��?fEW�H�D$ �l���fA(��ff.�UWVSH��8H����H�ϋJd��~%H��1�H���H��t�?�H���H��9Zd�]�H��P1�A����H��@A��1��H��0�H��8����(H�� E1�A��1҃��D$ �H���ƳH��H��8[^_]鶳fDAWAVAUATUWVSH��H��$���$�L��$�L��$�fW���A�A��E�i�D$>f(ă��D$?�D$8E1�1�D9�A��E�����|$?�xN�!�f(���D9���L��A�t���AT��Mc�A��L�pD�Hc��Y�A�t��D�Hc��X��AL���Y�A�t��D�Hc��X��AT���Y�p�X��AL��BY�E�\�E�9��X��u���H��E�E�D9�~RD9�~MIc�1�L��I�4�N!�f�D9�~(�ACMc�A���BY�D�TH��E�D9��X�Ӊ�+t$8�Y�|$>A��u�B����L��E��E+\��Hc�L�xMc�N�4��C�BY�E��E+\��Mc�N�4��X��CL�BY�E��E+\��Mc�N�4��X��CTD�p�BY�L���X��CLI�� A���Y�D��A+t�A9��X��_���H��D��A+4xGD9�~BIc�L��I�D��D9�~+Hc�A��L�4��CI���Y�D��+0H�����X�y�H��$�H��A���B I��9��\��Y��X�������Q�f.�z3�^�H��H[^_]A\A]A^A_øA��S���1�f(�E1�����f(��\$ �Q��\$ �f�AWAVAUATUWVSH��()�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$D)�$H�ӺXH��$p�IdfD(�f(���$�H��$p�����$���H��I���xH��$p��$�H���$���A�E�_��$�1����H��9���5p�1A���ADž�1�E1��A��f(�L��$0D��$�L��$p�E������*ʍJ�D9�A�T�hA���Y�~A���A����A����A��@�A�Ũ�A���\�f(��*��^��A��HH��A9��f(��D*�$��A���A^��U���$��A��ADž�~8��$����H��1��A����A���H��H9�u㋄$�E1�ADžM��E�ȃ�I�t�E���1��E����H��E�9�Hc�E����I��I9�t�E����$�1����H������9��H��$p�qd���'fEW�1�I��M����M����A����A�t�h�P�Hc΃��D*��D*�蘭H��I��I����`�����F�1��D*��_�f(��W��H,Љ��H*ȉ�fA.�v�I,Љ��H*ȃ��A��\��A��\��Y��X��A4�H��9�~J�*��A^��AY�fD.�w$fA.�v�fA(�fA(��ެ�H,Љ��H*��fA(�1�fA(��t����EH��A9Fd�����$�����
�D*�H��$�D*�$��D-�1��$�fA(�L��$pfEW�H��$�fAW�1��5�1H��$��D%�1�D$xE�\$`E���k�A*D�h�\�fA(�襖fE.�fD(��E^��Of(�1��,H��I�$@�H��A^�H�@I�4@H��$�I�I@I�Y@I�i@I�@H�$@L��$�L��$�I�4@L��$�L��$�I�I@L��$�L��$�I�Y@H��$I�i@I�\��(\@I�q=
ףp
@H��z�G�@L��$L��$L��$I�@L��$ L��$PI�333333@L��$XH��$`I��(\��@I�$@I�333333)@I�4@H�I@L��$hL��$pL��$xL��$�I�H�z�G@L��$�L��$�I�H�z�G	@H��$�I��G�z@I�q=
ףp@I�@I��Q���@H�
ףp=
@A��$�L��$��L��$�L��$�I�@L��$�L��$�I�$@DŽ$`DŽ$dI�4@DŽ$h
DŽ$lI���Q��?@L��$�H��$�I�-C��6?H��$��*�L��$�L��$�I�{�G�zd?I��������?I��������?L��$��H�H��������?H�{�G�zt?L��$�H��$(H�-C��6?L��$H��$8H�{�G�zd?L��$H��$@H�{�G�zt?H��$H��$HH��������?L��$H��$PH��������?L��$ H��$XH�{�G�zd?H��������?H��$�H�{�G�zt?I�-C��6?H��$�H����Q�~?I�{�G�zd?I�{�G�zt?I��������?H��������?H��$�I��������?H��������?I�-C��6?H��$`L��$pL��$xL��$�H��?L��$�H��$�I��?DŽ$pDŽ$tI��?DŽ$xDŽ$|I��?L��$�L��$�H��$�H��������?H��$�H��$�H��������?L��$�H��$�L��$�L��$�訑���H��$�NŃ�Hc�H�����`L�GJ���D��H�fD.��=D�q�Ic�L�f.�Ġ���ɸ&�f�HcЃ�L�D9��D�Ԡ~1�P�A��fA.�r�Lc�M��F�̠fD.�s/��D9�fE(��H��A�FH�OHc�H��D�ԠD��A�ƉT$8�̙f(�fA(��d$`踙f(�fA(��T$@褙fD(�fA(�蕙�T$@�T$8�d$`fA(��\��\�f(�f(��^��\�f(��8�A������\$x�AY��A\�H��9��[���H��$p��}1�A*���AYʸ�YAp��$���Hc�$����^�A��H�H��H��$��AE�7�H��I������$�����H��$���$�I��fW�HDŽ$�H�F�D�|1�D$x��H��$�D��$�E����H��$pH��$��A���A��H���f.���f.���M��E1�1��7f��BD��A��f.��z�A�I��I��f.��l�\�f(��A^�Hf(��!��,�1�f(Dž�xB���09�|�B��*�C�������\��I9�E�L$�B4��k���H��$�I��?A�M�N�I��L��fD�A	1�fA(��\��AD���Y�Hc��AD��AD��Y��AD�H��9��I���M9�u��D$xL�$�H��$����$�9T$x�k���(�$�L��IDž IDž0(�$�IDž8IDž@D(�$�IDžPD(�$�D(�$�D(�$�D(�$�D(�$�D(�$D(�$H��([^_]A\A]A^A_�f(�A�1�H��H��L��$�H��D���pH)��D�I�fD.��*E�x�H)�Ic�H�f.���)E���I���Hcȃ�L�E9��D��~0�H�A��fA.�r�Lc�M��B��f.�s*��E9�fD(��E�GD��Ic�E��H��H)����f(ljT$8�L$X�T$@�L$`�=�fD(�fA(��.��L$`��$�f(���f(�fA(��L$`���D\�$�f(��L$`�T$8�L$X�T$@�\�f(��D^��A\�fD(��\��fA(�A�fD(�1�H��Hc�Hc�Mc�Mc�H�GL��H��H)�I�H�cn1L�
L���K���B��Y�L)��Y�H�L��$��Y��AY��X�f(��\�fA(��Y��Y�H��w1H�Nx1�AY��Y��X��X�D�XH��H9�u��
Kx1�Y��Y��+x1�֊�Y���Hc�$��AY����AY��AY��AD��v����Q�fA(����A�H�f(�fE(����I��?A�M�F�y���Mc��C���D$0�T$xL�L$0�t$0L�D$0H�
nj1�L$ f(�f(����D�(���A�1��P����A�����A�1����H�
�i1�I��?ADž�ADž�M���ADž��ADž�4�H�
�i1�`�D*�$��n����AWAVAUATUWVSH���)�$@)�$PD)�$`D)�$pD)�$�D)�$�D)�$�D)�$�D)�$�H��H����L��0H��8L��@���H�D$PD�xd�l$d�i�l$`H�� ��(H���k1���~5��~L�D�1�I��H��9��H��9��1�I��H��9��fW�H�O�/H��/fD(��DXH��H9�u�E���DY!�/~1H��$A�O�H��$H���	DH��H9��H��u�1Ʌ��L��$�-du1E�w�f(�M�iI��1�E������u1�D5�u1f(��D
[u1fE(��C;T�h}_L��Øf(�M��t4Lc��CD��C��\��C\D��fT�fT��X��AY��^��Y�LcL�T��Y�O���AX�AD�T�hD�BE9���L��Ø��t1��t1M��tcLc��G��CD�fA(��A\��C\T�fT�fT�fD(��DX��EY�fE(��D^��D^�fA(��AX�f(��Y�fAW��AY�LcL�D��Y�O���AX�ALc���f(��Y�Nc��AY�O���AX�AD�BE9���L��ØM���Hc��Dt1�Ed��AD�fA(��D-�s1�A\��A\�fAT�fAT�fD(��DX��DY�s1fE(��D^�fA(�fE(�fD(��D^�f(��DY��AX�fAW��Y��AY�LcH�T��DY��Y��Y�N���EX�ED����Mc�E�Nc�Mc�Nc�N��J���AX�A�X
�
H��A9��4A���L��XɃ������������|�D�T�h����M���>E���kH��$A�W�L�d�H�������H��L9�u�E�W�E1�H���D$LE1�E1�1����t��uA�����t��uA������H��L9�uӉl$LD��1�1�D	��!A���#A����1��f.�������H��A9�~���������A9��c���Ic�H�������f�f(���q1fD(��i�����$��9Ch��$(1��N�(H��A���;ThA�|
L9�A�u�H��9�����D�t$`E��xH�D$PH�����D�l$dE���=�T$dHc�D��A�Lct$`E1�A���H��H�D$hH��H��H��H��H)�H�T$X�1�E1�D9މT$L��H�L$PL��F��+�Blh��H���B���Bd�P�T$L�X�D�D9�Hc�I���Y�L�L��f(��Y��X��X��X���Y��X�f(��Y��AX	�A	}8��f�Lcƒ�B����BL��Y�D)�D9�Hc�Hc�I���X	�	u�I��D9��3���HD$hI���L;|$X�����Q�f.�{	f(�赈�
�o1(�$@�_�(�$PD(�$`D(�$pD(�$�D(�$�D(�$�D(�$�D(�$���HH���[^_]A\A]A^A_�E����H��$A�O�H��$H��H9��H����H����H�����E1�A�,��H���T��~1����H��9��E��~1�Ic���H��A9��A�m�E1�1ɉl$X�n�D�L$X��l$L��H��H����1ɉ��:�H��I���v�T$L1���H���-H�� L��@H��PD��(L��0H��8���E���~
1҃��@D9�u�B�DxA��A��A�A�E�^Ic�D�\$@H���m�H��I��D�\$@�s���H�
5a1�D;T$L�����1�1�D��D����H��D�A9�������E9���Ic�A��A�����Hc�H���H��H�������H�
a1�#����X���A�G�LcT$`I����H�t$PL�t$pH��E1�H�D$X�Nd1�H��$��~%�*��Y��H�X�è�A�H��9��H�NxM��L�L$@L�T$8H��$�����CL�T$8�C�J�D��X�E��L�L$@�B��f(��Y��X��X��X��C��Y��X�X��~I��$��;Ch��$|3H��$1�L�ZH;D$X�tN�H��A���;LhA�}�I��D9������L���*����T$XD�D$LE1�H��T$ 1��D�D$LL��1���H�
�_1��D$XD�D$LH��E1�1҉D$ �n�H�
�_1�H�
�_1E����H�
:_1�u�D;T$L�������DAWAVAUATUWVSH��)t$p)�$�D)�$�D)�$�M��H��D��$@D�A(H��$L��$D��$ D��$(E9�H��$0�E��~fH�	1��,�H��$H�JD�B(1���L��$1�I�IE�A(�H��$1�H�HD�@(��H��$H�J D�B(1���1�D����L��$H��I�A ��	D��1��H��$H��H���	1�D����L��$H��I�A�m	D��1��H��$H��H�B�Z	1�D���L��$H��I�A�G	H��$D�p(��$HfW�A���$89�$8��Hc�$8L��$Lc�$HfW�I����$8D��$Hf(�I���
D�L�9��Y��X���Q�f.���f(�f.��TE��f(��?H��$A��D��$8�D$LA����$8�D$PDME1�H�@+}��$8D�t$@H�D$8Hc�$HD�L$(H��H�D$0Hc�$8H��H�D$XH��D�D$(E9����|$P��H�3�f(���E9���L��D�L���L��Mc�A��L�XA�Mc��CY�D�L��A�Mc��X��L���CY�D�L��A�Mc��X��L���CY�D�H�X��L���CY�D�D�A�E9��X��t���H���L�A9�~QE9�~LMc�1�N��N�L�L3�
�E9�~'�A@Hc�A���AY�A�LH���A9��X�ԅ�A�����|$L��u�{E����L��A��D+\��L�pMc�N���A�CY�A��D+\��Mc�N���X��AL�CY�A��D+\��Mc�N���X��ALMc�N���CY�D�X�X��AL	A��H�� D+L��CY�E9�A���X��]���H��A��D+LxRE9�~MIc�H��H�D��
�E9�~.Mc�A��N���AH���CY�A��D+H��E���X�y�L��$H�D$8�$H�A1D��$HHt$0DL$(�\�D��B�I��D9T$@�v���H��$H�T$XD�t$@L�D$0H�HL�1�L�
L��H��H�L�A9��H��$H�t$XE1�f(�H�z ��$8H�E��f(����M�A9�~?L��E1��D�L�L�H�A9�~I��L���C�Hc�A9��AY��X��A��~K��+MxD�A��f���+L�L�Hx"I��L��Hc�A9�L���C��AY��X���B�I���$HHt$0E9��:���H�T$8f(�1���H��A9��Y��X���Q�f.���^��D
�e1fD.��D��$PE����Hc�$8f(��D$LD�d$HH�l$@H�D$PH��H�D$XH�H�D$`A�D$�H��H�D$hE��fD(�~YH��$Lc�$H1�H�L$`L�H�RI��L���Af.�zt�^��A�H��L��YH��A9��DX�Ƀ|$L��fA(�E���^�f(���H��$Hc�$H1�L�
H�T$XL��L���Y��AX�H���L�A9��L��$H�l$PH��L�T$hf(�H�L$(1�1�I�A H��M�aH�+D��$8L�I��H�D$0H�T$8fDH�D$8�|$HL�8�A�YL=~VH�T$@��JE��A)�D�A9�~�AHc��AY��X�E��xMc�J����CY��X�H��H��L9�u�H�T$0D�$H�\��A�H���YL=H|$(A9��X��[���f.���fA(�E���^���L��$H�D$Pf(�M�AI�II��L�L$(1��
L��Y��AX��A��A����Y��\����Y�H��A9��X���Q�f.�zR�^�fD.�s[�D$LD��$PD9L$L�7fA(�����M���E����b1�N���f(��Q�f.�{�f(��6{�^�fD.�r�E��~9Hc�$8Hc�$HH��$H��L�BI��1�M��H��L�
H�A9��(t$p(�$�D(�$�D(�$�H�ĸ[^_]A\A]A^A_�E��f(�����Hc�$HH��$H�T$XL�1�L��L��M��H��L�L�A9���V����A�����1�f(�E1����������=la1���fA(�����f(��$z����H�
U1���H�
 U1��H�
)U1��H�
3U1��H�
<U1��f(���y�)���DAWAVAUATUWVSH��H)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$D)�$D)�$ D)�$0D��L��H��$�H��$���$�L��$�L��$�L��$�D�HdL��$�H��$�H��$��@hA��
�Q��
�:L��$�A��A���ƀE�tA�C��@tL��$�A�BA��L��$�A������H����E���A�S`H��$�I�S���~1�L��L��$�M�T�H��9��H��$�H��$�E���5�_1H�ApH��$���ǁ�Hǁ�ǁ�H�AxH��$H����qA����YH��$�I�H�E1�E1�H��$��PK��M��H������K�T�A9�H���8�����I��H��L�p����D���I��L���A�D�p��*�D9��Y�����~
���D���M���s���M��HDŽ���s���I��?A9���L���8�n���H��$��*�f(��^�f(���pH��$��Ah�����~~1��&M��H��L��Ѡt+L�D�L����H��9�~0M��u�H��HDŽѠu�I��?L����H��9��1�H��$�I��?L���@H��9��H��$����id������L��$�H��E1�1҅�~=��fA.��@v
�A��@�A���f.�v
�A���H��9��~T1��D�PfA.���v
�A����A�Ѡf.�v
�A�Ѡ�AX��@�A��@H��9��A��H���A9��Q���H��$��Ah��~0�*�1��
	]1���@�\��^����@H��9��1҅�H��$�~8D�������@�\���A���A*��^���ѐH��9�ȅ�~-H��$�1������\�Ѡ����H��9��H��$�������L��$��D8\1�=P\1E1�L��$�E��K�<�tyG�����Ic���H��K������E��~NL��$�1�O��I�H�1��-�AD	E���D~�\fAT�f.��yH��D��D�BE9�u�I��D9��h���H��$��ع��H��$�L��$�L��$�D�IdI�İI��dE���51�1�A��9�L�H��A9���D*��=][1�][1�AY�f.���H��$��ǁ�1�E1���H��$�H��H�����H���H��$�H��$��������H��$��hZ1�
�Z1I���id1Ʌ�~9f(�M�(1�E1��X��D,�E�zE�E9�EO�A��E�\A�.H��A9�|�L��$���I���Y�A�9�|��-H�
MN1���f�H�
N1D���W�H�
PN1�K�f(�1��x���1҅�����H��$�I�{�G�zt?L�T�H��9����������������L��$�H��E1�1҅�~=��fA.��@v
�A��@�A���f.�v
�A���H��9��~T1��D�PfA.���v
�A����A�Ѡf.�v
�A�Ѡ�AX��@�A��@H��9��A��H���A9��Q���������0���L��$�H��E1�1҅�~=��fA.��@v
�A��@�A���f.�v
�A���H��9��~T1��D�PfA.���v
�A����A�Ѡf.�v
�A�Ѡ�AX��@�A��@H��9��A��H���A9��Q����/���H�
�L1�i�H�
�L1�T$ E��D���S�fW�����id��~MHc�L��$�H�L�E����D9��LD�M�1�I���D�TH��E�D9��&L9�u�H��$�1��ۋIh��$��(�$�(�$�D(�$�D(�$�D(�$�D(�$�D(�$D(�$D(�$ D(�$0H��H[^_]A\A]A^A_�H�
�K1�b�fA(��r�=XW1H��$��\��^LW1�XW1�,�fA(�����pr�\�H��$��*���^��sH��$�f(������H��$������D�Id���H�
fK1���Hc�H��H��H��H)��s}H��$�H��H�����H��$�������6
��~xHc�H��H��H��H)�1�H�1҅�~L��L��H��9��D��$�E��~+1�L�D�PL�D�PI��?L��РH��9�$�׃�H�ƠH�9�u�H��$�L��$@1�L��L�D$x�����H�H��$��A��tD���E��tH�
�J1��|D��$�E����H��$�L��$tHDŽ$�fEW��D5gU1L��$�L���H��$�L��$�L��$���$�H��$�HDŽ$��EBL��$���$��DIE�*E����HDŽ$�1�DŽ$�L��$�L��$�H��$�fA(�fA(�I�D��$�J�D�\$ ����H��H��$��b��D��$�E���H��$�D���E����H��$�H��$�H��P1�H��@H��H��A9��H��$�H�D�HdH��$�H��$�D��$����L��@H�� D��(L��0L��$���H��$�L��$�H��H��E����HD�|$ L�d$0D�t$(E������D=�S1DŽ$�f(�DŽ$�DŽ$���$�����E�T$A����$�1�1�E��D��$�A�ދ�$�L�.D9�����$��fA(�u�D9���L��E�L���AD��Hc�D�RL�ZA�Mc��BY�E�L��A�Mc��X��AD���BY�E�L��A�Mc��X��AD���BY�A���X��AD��Y�A�L��E9��X��r���H��A��D9�}?E9�~:Mc�1�O��O���E9�~&�ASHc�A���Y�A�LH���D9��X�|�E��E������$���u�E����H��A��E+L��Mc�H�zMc�N���A�BY�A��E+L��Mc�N���X��AD�BY�A��E+L��Mc�N���X��ADD�Z�BY�N���Ad	H�� A���BY$�A��E+T��X�E9��X��]���H��A��E+xQE9�~LIc�H��I�T���E9�~.Mc�A��N���A$H���BY$�A��D+H��E���X�y�L��$��+����$�A���A)�\��A^�\��X��+H��D9��������$�D��$�D9�$��<���H��$�L��$�H��H����HL�d$0D�|$(D�l$ ����*�$�f(�fD(��^��^�f(���bL��$�fD(�A�y���'fE.���fA.�����$���$����fA(��kfD(�fA(��tkfD(�f(��fkfA(�DŽ$��D\��A\��Y
lO1�A^��,���~DŽ$���O�$���$�fA(�����H�
�D1��@�A��	����fA(�A�����fD.%�O1�&���L��$���$�H��$�D��$�E;��H��$��H����*�v�
A6H�H0�v���C��H��$@�D$HD�|$@�D$8I���L�d$0D�t$(�D$PD�|$ H�����e���L��I�PH��H��H�D$h�׿��H�D$h�I��I9���H������H��$�D���H��P�2���H��$�H�����xd��~+H��$pD�G�H��H��N���H��L9��H��u��~���D�g�L��$�L��$�H�4�H��$�E1�I��1����.����A*L�h�\��*��p�^��D�H��9��L��I�PH��H��H�D$h�߾��H�D$h���$p��A;Gh��$p���1��J�0H�����A;Th�����L9�DŽpu�I��I9��W������H��$�H��8I�ȋ����~AL��$�Mc�@L��$�M��PJ��I��1��A�H��fZ��L�9��H��$��1���H��$�H��$�D��$�D9�$��y���D��$hE��~kH��$@1��
�D��$hH��$X1���D��$hH��$P1����D��$hH��$H1����D��$hH��$`1���H��$��4����u������@�1���Hc�I��H��H��I)�H��H)�1�H�1���~L��L��H��9��$���~-M�1�L�T�PL�T�PM����L�� H��9�$�ك�H���H���9�u�����������Hc�I��H��I��H��L)�L��H�1�N��I��1҅�~L��L��H��9��$���~)N���1�L�T�PL��РL�T�PH��9�$��H�ƨH�9�u�����fDH��H��$D�L$ A�H�D$xH��$�H�D$pH��$�H�D$hH��$�H�D$`H��$�H�D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(��H�Ĉ�f�H��H��$D�L$ E1�H�D$xH��$�H�D$pH��$�H�D$hH��$�H�D$`H��$�H�D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(�M�H�Ĉ�DH��H��$�I��?D�L$ H�D$xA�H�D$pL�\$hH�D$`H��$�H�D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(��H�Ĉ��H��H��?H�D$hH��$�D�L$ H�D$xA�H�D$pH�D$`H��$�H�D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(���H�Ĉ��H��H��?H�D$hH��$�D�L$ H�D$xE1�H�D$pH�D$`H��$�H�D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(�C�H�Ĉ�ff.�H�I���ǁ�Hǁ�H��`H�v���H��hH�����H��pH�����H��xH�<���H����@SH��0D���H��H���H��t�CdE1�1҉D$ �t�Hǃ�H���H��t�nHǃ�H��0[Ð������L�	fW�E�AhE��~1��D�H�\D�8H��A9��Y��X��1�f.��w(A��0��t�B8fA.�Hw
H�B0���ff.�VSD���E1ۋqE��~EHc��Y11�H��Lc����B���M�L�\��B�f.�rA��H��A9��At1�D9���t[^�E�Ҹ~�Lc�����0��B����B���f(��X�f.�s��\�Hc�H��M�DfB.�s�A��H��N��I���Hf.�Lc���B����B���f(��X�f.�s'�\�O�DH��fB.�sL9�u��[^�D1�[^�ff.�L�	D��D�QfW�E�AhE��~"1��D�H�\D�8H��A9��Y��X��1�f.��wLE��0E��uKD�� Mc�Mc�K�D��B���E��t<���Y
eW1�X¸�X��J0��f��B8fA.�Hv���f.���r���1�f.�r���ffff.�D�� D���D�IE��u2Mc��B���f.�rMc���K�D�f.�������L�	fW�E�Ahf(�E��~.1�f.��D�H�\D�8�Y��8H��A9��X��E��0E��t�B81�fA.�HwP1�E��~3f����8�Y��XD�8�\D�HH��A9��Y��X��1�f.��w�J0��Ð��fffff.��
�U1���f.�v�J01�f.���ø�DD�IL�QE��E�Zh~a�
1���U1f(�fW��X�f.���E�A�1�I��� �DH��f(��X�f.���f(�L9�u�1�f.
hU1wvI��8�tgE��fW�Mc�~6�BD�PN��٨1��AI��X�\��Y�H��A9��X�~f(���Mc�K��I�AJ�D
�X��fA.�Hw��fD1��A��0����ffffff.�SL�YH�Y E�SdE��~:1�D�L����E��x)�A�ÐMc��CY��X���H��A9��[�f�A���u��AX�Ð��fffff.�H��)4$�L�H�I�5TT1�*�I�AX�A��Y��Y��b�\��T1fT�f.�w<�T10��Y��^��Y��\��Y��
�Y)�A�Y��\��Y��B(4$H���@UWVSH��(H��H���H���������~q1�1��H�49�~{�F���t H��L��H�H��I���B���u�H�����H�8H��HcH��H)���h9��H����Hc��H��H)��H��([^_]��gHcVH��H��HcH��H)����g�^���H��([^_]�ff.�SH��@)t$ )|$0L�	�YE�AhA�AdA9��0fW�E��f(�~*fW�1�f(��D�H�\D�8H��A9��Y��X��1�f.����E��0E����D���f(�E��~kLc�f(��5R11��=BR1I��Lc���O�L�B����B����B��X��\��\��Y�f.��X�r�X�H��A9���At"�*��1�f.�������f�E����Lc�����1��B����B���f(��X�f.���Lc��\�I��O�DfB.���A��H��N��M���F@Lc���B����B���f(��X�f.����\�O�DH��fB.�srL9�u��Y
�P1D��H�D9B�X��J0t:fD(t$ (|$0H��@[��B8fA.�H�Y���(t$ (|$0H��@[�H��H�J0�(t$ 1�(|$0H��@[�H�
�=1�����ff.�H��(�AdL��H��W�Ah��
]M��t0��HH��8�^aP1H�H��@I��AH��(�f�H�I�I�H��(�H�
�=1���(�H�
�=1�����f�SH��@)�$�)�$�D)�$�D)�$D)�$D)�$ D)�$0D�IhE��~CI�XXL�\$0L��$�1����A��\�f(��A��Y��X��A�H��A9���DL$8�DD$@�RfA(��JfA(��|$0�\��D�$��\��D�$��\:�Y��X��X��AY��X��AY��Y�$��X�f(��Y��Y���Y�p�X��DQ�fE.���fA(�fA(��AY��AY��X��Q�f.�����N1�EX��EX�f(��^�f(��A\�(�$��X�D(�$0�X�(�$��EY�D(�$�EY�D(�$ �EX�D(�$��AY�D(�$�Y��Y���X�H��@[�H�L$(�oSH�L$(fD(��,���H�L$(�VSH�L$(f(��:����AWAVAUATUWVSH���)�$0)�$@D)�$PD)�$`D)�$pD)�$�D)�$�D)�$�D)�$�D)�$�fW�H��M��L��H��$@M��I�΋yhI���O����/M1I��L��L��f(��5���fW�f.���f.�vt1�f.�vl(�$0(�$@D(�$PD(�$`D(�$pD(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_��D
�L1��D�L1fA(��DXL1�=�L1f(�I��L��L���n���E�VhfD(�E��~bL�[XH�T$@L��$�L��$�1�D�A$���f(��\��Y��AL��X���f(��X��Y��A�H��A9���AO�AG�D�$��Y��Y��DX�$��E�p�E���DY�$��X��EY��Q�f.��y�\$H�Dl$Pf(�fA(��Y��AY��X��Q�f.��Z�X�fA(��EX��^��EX��DY�$��Y�$�f(��DY�fA(�fET��AX�fD(��Y�fA.��D\��Y�fA(�fE(�f(��D^��Y�fA(��Y��Y��AX��Y��X��X��AY���AX��^��\�w	���C���f(�I��L��L�����fAT�1�f.��������J1f.��u���f.5NJ1�g�����~1L�[X1�fD�A����\��Y��X��D�H��9���A4$��"���1�f.���������f(��Of(��u����\$0�d$ �gO�d$ f(��\$0���f�UWVSH��)�$p)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�YhH��$`����I�iXI���H��$ L��$�L�T$@�0�h1��L����A��\��\�f(��A�f(��AL�P�Y��Y��X��X���f(��X��Y��A�f(��X��Y��Y��A� �A���H��9��{�����p�Dt$@��$��DY��Y��Y�$0�DD$H��$��L$0�DXD$P�AH�X�$���$8�D$8�Y��A@�X�$@�D���Y��X��DQ�fE.���D�$(�D�$0fA(�fA(��AY��AY��X��Q�f.���f(��EX���$��A\���$��
�G1fE(��EY��AY�fD(�fA(��^��AX��EX��Y��Y�$�fD(��DY��X���$�f(��AY��D���DY��X�f(��Y�fE(��%lG1�Y��^�fA(��AY��DY��DY��Y��AY��Y��DY��AX��AY��X��X��AY��AX��f(��AY��Y��Y��AY��X|$0�DX�f(��X��Y��Xt$8�EY��AY��EX��X��EX��X��EY��AY��DX��X��DJ�DJ�B(�$p(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$H��[^_]�f(�H�T$ H�L$(�|KH�L$(fD(�H�T$ ����H�T$ H�L$(�YKH�L$(f(�H�T$ ���fDWVSH���)�$@)�$PD)�$`D)�$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D�YhH��$ E��~xI�yXI���H��$�L�T$P�0�h1�f.������A��\��\�f(��A�f(��AT�P�Y��Y��X��X���H��A9����$��DL$P�A\�D�$���p�D�$��D�$fA(��T$XfA(��X��D�$��Dl$`�D�$��D���DY��DY��A@�DY��\��DY��AH�Y��\��Y��X��X��X��Q�f.��7fA(�fA(��AY��AY��X��Q�f.��?�%D1�EX�fA(��^��\��AX�f(�fE(��X��EY��Y��DY��Y�����AX��EY��AY��AX��AY��Y��AX��AY��Y��Y��AX��Y��Y��X��Y��
f(��AY��X��AY��AX��X��B(�$@(�$PD(�$`D(�$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H���[^_�H�T$ H�L$(�T$0�LH�T$0f(�H�L$(H�T$ ���H�T$ H�L$(�L$@�T$0�H�T$0f(��L$@H�L$(H�T$ ���f�AWAVAUATUWVSH���)�$�)�$�D)�$�D)�$�D)�$�fW�E1�L�l$pL�d$`L��H��$@�AhI��L��$0L��I��L�d$ H���t$`I��D$<�t$h�"���f.t$pH��?L�d$ I��I��L��H���t$`H�D$hA��1�f.t$x�����f.t$p��f.t$x�����aA���WI�io��T�?I�K�=�U�?L�t$@�DEA1L�T$`�=HA1L�\$h�5{A1��D5A1I��I��L��H��L�d$ �W���L�d$ I��I��L��H���1����D$@�d$H�L$Xf(��DL$Pf(��Y��AY��\�f(�fAT�f.�wzfA(��l$x�^��Y��Y�f(��\$p�Y��DY�fAT��\��d$`�A\�f.��Y��Y��\��L$h�\��d$`�L$hvfAT�f.�w	������L�d$ I��I��L��H���t����D$p1�fAT�f.����D$xfAT�f.����\$`�B@1f.���f(��d$h�\�?1f.�wxf.%�?1wnD�L$<E��~KH�NXH���1���������\��\��Y��Y��X��X��A�H��9D$<�H��$0��`�(�$�(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_ÐH��?L�d$ I��H�D$`I��H��?L��H��H�D$h�,���f.t$pwRf.t$xwEA��t	E���V�����t���I���1��Y���f��������A���������A���fff.�H��)t$0)|$@D)D$PD)L$`D)T$pD�IhA���?�����1�ZA���RfD(��:f(��E\@fEW��A\@�A\8fA(��EY��Y��Y��DX�t5A��1�N��f��D�A\DH��L9��Y��X�u�f(��Y��Y��X��DQ�fE.����AH�AX�Y��Y��X��Q�f.���fA(�fA(��\���p�Y��Y��X��D\��Y�x�A_��X��Y���X�(t$0(|$@D(D$PD(L$`D(T$pH�Ĉ�@E��fW�~�1�D���A\�H��A9��Y��X���f(�H�L$ �TBH�L$ �N���H�L$ L�D$(�;BL�D$(fD(�H�L$ �����H���)t$@)|$PD)D$`D)L$pD)�$�D)�$�D)�$�D)�$�D)�$�D�QhA���h�����Z�AHA���A@�A\I�A�A\AfEW��A\fA(��Y��Y��Y��X�t7A��1�N��f.��AD�A\DH��L9��Y��X�u��A���A��fD(�f(��D�x�\��D�p�=�;1�DY��Y��D\��DY����fD(�fA(�fA(��A��fD(�fT�f(�fEU�fDV��Ahh�X�f.�v0fD(��=,;1fD(��D^�f.��C�D\��EY��DX��AXahf.����Y��AX@`�DQ�fE.���AAh�AY��AXA`�DQ�fE.��dH�������f.����\��AY���AY���X��AX��AY�f(��AX��X��Q�f.����AX��D:1�AX��AX��
���f.��~�\��AYHx�AYIx�X��AX��AY��X��Q�f.���A\��A\��A\��D_�fA(��fEW�E��fA(�~1��A��A\�H��A9��Y��X��H���Q��Dr91t0f(�f.����AHP�DS91�X��AXIP�AX��
f(�f.��G�A\@P�A\AP�A\��D_�fA(�(t$@(|$PD(D$`D(L$pD(�$�D(�$�D(�$�D(�$�D(�$�H�����^�f.�v2�\��Y��X�����D�81�AX�����EY������Y�������AYHx�AYIx����AY���AY������H�T$0H�L$8L�D$(L�L$ ��=L�L$ f(�L�D$(H�L$8H�T$0���H�T$0H�L$8L�D$(L�L$ �=L�L$ fD(�L�D$(H�L$8H�T$0�e���f(�L�D$(L�L$ �=L�L$ L�D$(���f(��p=���f(�H�T$0L�D$(L�L$ �S=L�L$ L�D$(H�T$0�-���H�T$0H�L$8L�D$(L�L$ �&=L�L$ fD(�L�D$(H�L$8H�T$0����AWAVAUATUWVSH��)�$�H��I��H��$@H��rH��$�D�R�@h���D$,�#D�^�H��$�H��$�L�D$0O��H��I��I��H��PL�H��L9�I��u�Hc�fW�H��N��H��$@E1�H�Pf(�L�\$ M�,�N�1L��E����H���f(�L�BXA��N�01��D�P�A\D�P�AY�H��A9��X���A��I��D9�L���E��f(�~*H���J�01�@���AYD�PH��A9��X���B�7��\��BD5I��L;t$ �H���A��A��H���F���H��L����������L$,fW����Hc�fW�H��D�T$,L��$�1�H�Jf(�M�ԅ�f(�~<Hc��AD�PI��Ԩ1��@f(��	H��X�\��YD�H��9��X���AD�P�X��A�H��A9��1���H��$P~H�L�H��H��9��T$,f(ą�~*�T$,L��$�1��L�8�A\�H��9��Y��X���Q�f.���f.��r.(�$�1�H�Ĩ[^_]A\A]A^A_�A��f(�L�BX�;���H��L��$PL�������D$,��~&H���L$,L��$�1�M��L�L�PH��9�����LJ��r���LJ��c�����9f(��K���fff.�AWAVAUATUWVSH��)�$)�$ D)�$0D)�$@D)�$PD)�$`D)�$pD)�$�D)�$�D)�$�I��I��H�D����Xh�Aǁ��D$d1�E���_fW���f(����D�31��M��H�D$h�D$`fD(�H�|$p�DD31�=T31fE(����1�I��H��H��9��D�T$dI�E`H�T$hE��H���[fE(�1�fE(�E1�@M�EH���I�fD.���E���YfA(�1�f����\�H��9��Y��X���Q�f.���fD(�H���fA(�H��$�1�I�(f����\����Y�H��9��X���Q�f.��>fA(�E����A���\�f(�E�����fAT�fD(��D^��A]�fD(���fA(�I�(1����YT�hH��9��X��fD.�wrfA(�fA(��C1�X�D$`A��D;d$dH�������H�D$hI��;\$h��A������U����T$hH�
�1�E�@����D������f�E���E��udALJ�fA(��|����d$HL�L$HH�
e1�Dt$HL�D$HD���T$0f(��L$(fA(��D$ �~EM�E���D�\$HH�T$HH�
I1f(��UE�|���A����*D$`���^�t�t$HH�T$HH�
!1f(�� Ef(��A��(�$(�$ D(�$0D(�$@D(�$PD(�$`D(�$pD(�$�D(�$�D(�$�H�ĸ[^_]A\A]A^A_É��p�H�
#1H���DA�������H�T$XH�L$P�5M�Ef(�H�L$PH�T$X���f(�H�L$P�a5M�EH�L$P�+���AWAVAUATUWVSH��8�YhH��$�H��$�M��L��M�8�����
�/11��z/1�����DH�҉���t	����fT�f.�vf(ȉ�H��9�Ӄ����M���pH��$�Hc�E1�H���7/1L�E1�H�H�T$(�A9�E��t~Mc�N�,�1�O���DD9��
I��H��9�~9�u��B�H��9�fW��A�H��$��A�B�A���BY�H�T$(�Y
�\��BD�I��D9��m�����$�����H��$�H��8tnA��Lc�A��J��t1�fDI��H��A9�H�
�I��1�K�ϐH��H��9��H��?H�
H��$�H��HJ�D�H��8[^_]A\A]A^A_�I�	K�*���S�A��E1�1��a�I��I�$�t���H�
&1�٣��VSH��HM��H�ˉ�L�����F�.�-1z=u;M��tDH��@L���8�Y�-1f�fZ��N�ǃ,H��H[^��Z�H��H[^ÐD�KdL�D$ E��~31ɉ�������*��Y�ː�X����A�H��A9��H��@L���v�����@��H��8Hc�H�4��;���@UWVSH����YhH�͋�hH�օ�u"1���~I��H��H��9��H���[^_]�L��pM��td����H�|$ 1�DI��H��H��9��H��L��A���1���D�P�\��x��H��9��H���[^_]��1����z���fDI��H��H��9���_���H�T$ L��A����K����A���E���u$E���E��uH�I���L�Aƀ����f����~Q��E1�L��M��LQI�H��t$L�A�
�I��H��H�PL�@H��u�H�AI��I�M9�u����SH�� H�H��H��tHcH��H)H����?H�H�� [ÐVSH��(H��H��H��tH��H������H���tH���H������H���?H���XH��([^�WVSH�� H���H��H��tHH���H���H��H���tH���H���)���H��H���N���H���H��u�H�� [^_�f.�AUATUWVSH��(H��H���H������txD���E��~lH���E1�E1�@J�)H��u
�?DH��H���H��tH���H�����H��H�����H��u�H���A��I��D9����`>Hc��HLJ�LJ�H��H)��H��([^_]A\A]�fff.�H��(A�@���tD�D9�}H�H�H��H��(�1��H�
�1���K��f.�VSH��(D�\$hH�\$`E�HE��E�Xuc9���A�@A�H��t-A�����~"1�Mc���H��9��B��C�А�A��v7H�
�1D���ƞfDA��u�9�u�A�����u�A�@E0��H��1E��Nc�L��A������o���A�@A��\���f�H�i��I�@(A�HA�HI�@ H��BI�@0A��Aǀ���H���*���GI���I���*���GAǀ�M���H��([^ÐH������A�PA�PI�@ H��I�@(H��I�@0�f�H����A�HA�PI�@ H�&��I�@(H�{DI�@0�X���f�H�I��A�PA�PI�@ H���I�@(H��>I�@0�(���f�H�	��A�@A�PI�@ H����I�@(H�t+I�@0��H������>I�������DH��8��&1�f.��vUH�fW�D�@hE��~"1��L�H�\L�8H��A9��Y��X���Q�f.�z���1��X��f.���H��8�f(�H�T$ H�L$(��+H�L$(H�T$ ��fff.�H��)t$pfW��L��$���$�~@fW�1�f(����A��A�H���\�9��\��Y��X��1�f.���f.5&1���5�%1��f(�~YL�T$ 1�fD���A��\��Y��X��A�H��9��f(�1�D�A��A\�H��9��Y��X���Q�f.�zG��$�1��Y��X�$��X
%1f.���(t$pH�Ĉ�fD�^�f(��N���f(��*��ATUWVSH��0)�$�)�$�D)�$D)�$D)�$ H��$�L��$���$�H����M���ifW���f(�~=1��L��M��H��9��fW�1�f(�fD���\�H��9��Y��X���DQ�fE.��%M��t�E	���=R$1��H��$��D[$1�D$11�1���f(�f(������\�H��9��Y��X���Q�f.���fA.���fA(��^�f(�L��$�1�@�����\��Y��X��A�H��9��f(�1�fD�A��\�H��9��Y��X���_׃�H��P9�f(��>����Q�f.��JM��t�A$(�$�(�$�D(�$D(�$D(�$ H��0[^_]A\�fA(��4�����L�T$@~,I�B�Y�M��H���
f�H��H9�I�I��u��~>L��$�1�1���~#f��A��AX��A�H��9���I��P9�u̅�L������I�B�Y�M���*�H���H���AH9��^��AI��u�M��L�������fW���f(����������H�T$(�L$0L�L$8�'L�L$8fD(ȋL$0H�T$(���f(��m'���H�T$(�L$0�Z'�L$0f(�H�T$(���SH��)�$�fW���H��$�~Pf(�1�f(�fD�$����\�f(��Y��X��A�H���\�9��Y��X��1�f.����Q�f.���f.
z!1���4!1��f(�~PL�L$P1������\��Y��X��A�H��9��f(�1��A��A\�H��9��Y��X���Q�f.�z4��$�1��X
� 1f.���(�$�H�İ[��^��j���f(��
&�H�T$@�L$H�\$ L�D$8��%L�D$8f(��\$ �L$HH�T$@����D���~�����u����H�
l1韕ffffff.�SH��)t$0)|$@D)D$PD)L$`D)T$pD)�$�L�A8L�JHH�D�ShA�����������DQ@A���zP�QH�BX�A\��DJH�\�fEW��D\I8�Y�fA(��Y��EY��X�t0A��1�N���AD�A\DH��L9��Y��X�u��EY��Y��D���DX��AQ�f.��|fA(��DY�p�D�x�\����fD.��Y��\��DY�f(�f(��A�f(�fT�fAU�fV����f(��E�Y���X���DQ�fE.����AX��Y���AX��X��Q�f.��k�A\��\D1�D_�fA(�����:1f.�v1�f.�s��0�����B0�(t$0(|$@D(D$PD(L$`D(T$pD(�$�H�Đ[�fDfEW�E��fA(�~1��A��A\�H��A9��Y��X���Q�f.����\���\�1�D_�fA(��;���D�J81�f.�H�M����R���fDfA(��^��Q�f.�z0�m1f.�vf(��\��Y��X����f(��Y��x���H�T$ H�L$(�"���H�L$(f(�H�T$ �f(�H�T$ H�L$(�"H�L$(H�T$ �s���H�T$ H�L$(�e"H�L$(fD(�H�T$ �,���f(�H�T$ H�L$(�>"H�L$(H�T$ ���fA(�H�T$ H�L$(�"H�L$(H�T$ �a���fff.�AUATUWVSH��X)�$�)�$�D)�$�D)�$D)�$D)�$ D)�$0D)�$@A��H��H�Ӌqh�D��~-H��$�L�\$01�DH�D�I��H��9��F�E1�L�$�f���K��~UH��$�L�\$01�f�I�H��t�f.vI�H�LH��t�f.vH�TH��L9�u�I��E9������fEW�H��$��D-l1L�\$0E1�fA(�fA(�f.�J�L�K��E��f(�1����\�H��9��Y��X��f.�vf(�E��I��D9��Mc��
1J��ԀJ�T�01�@���X��Y���H��9���=1�Y��Q�f.��.f(�E1��D
[1�D�1f���K�,�fA(�~1���L��\�H��9��Y��X��f.���I��E9�ƒ�fE(��D%�1�7H��?H��?H����ư>H�CxH���I����ư>���DkXH����DkPH���L����Dk`H����DkpH����Dkh~������E��fA(�~LfW�1�fA(݅�f(�~!I��1�����\�H��9��Y��X��f.�v	�SXf(�H��A9���Q�f.����CP(�$�(�$�D(�$�D(�$D(�$D(�$ D(�$0D(�$@H��X[^_]A\A]�E��fA(��YfEW�D�f�fA(�1�I��fA(��SI���K��fD(�f(��;�D\B�\B�\:�EY��Y��Y��DX�f(��AX�t1N��1�f.��D�\DH��L9��Y��X�u�f(��X�f.�v�CXf(��Y��Y��X��DQ�fE.��X�J�R�Y��Y��X��Q�f.���D\��Y�pfA(��AY��X��D\��Y�xfA(��X��A��fDT�f.{`v�{`fD.Chv�DChH��A9�~
�[X�����CX�Q�f.����QCh�KPf.��e�Cp�K�C�Y��Y��X��y1f.�������Q�f.��������fA.���fD.������fA(��^��Q�f.�������
�1���f.����\��Y��X�����f������f(��i����Q�f.��Mf(��AX��X�f(��AY�f(��\��Y��
���1�fD���T��Y��Y��X��^���H��9������fA(��^��Q�f.�������1�Sxf.��;�\��Y��X����������~1�H��H��9��E���,�D-�11��D%	1fE(݅�~RI��1�f����X���H��9��~.�B�J�Y��Y��X�f(��A_��A]�fD(�fD(�H��A9�����
����A*�1��
.1�^�f����Y���H��9�������Y�������1�I��H��A9��B�J�Y��Y��X�f(��A_��A]�fD(�fD(������Y��������D-�1fEW�fA(������D-�1�D%�1fE(��0���f(�L�D$(D�L$ ��D�L$ L�D$(��������f(��)���f(�L�D$(D�L$ �D�L$ L�D$(����f(��)���f(��|�����Ch�m����cf(��j���f(�L�D$(D�L$ �GD�L$ L�D$(����L�D$(D�L$ �)L�D$(fD(�D�L$ I�����f(���C���SE1҅�x'E1�DD���A�G�I��D9�}�D���A�D҉���B�1�q0��[�f.�AWAVAUATUWVSH��(Hc�I�͋���H���p������1�E1�H�<���H��H9���H�1�D�KD�S������H�C D�0E����I�EH���1�E��x&E1������BD�(I��E9�}����D�L�Y8����1�D�q0��I��L�I9���M��t4I�@@H9�u�f�H��H��tH�P@H9�u�H�S@H�P@�i@H��E��E)�H��t2E����E��E��E�G�QF�<��&H�CMc�L)��H��`H��t7��XD9���A��BA���D�4��z&H�CMc�L)��H���d&I�EH����H��I�T�H�2H��I�L�H9��|����*&H��$I�UIcL�H��H)��IDŽ�pA�D�H��([^_]A\A]A^A_�f�E��G�<
D��AI�E�|E��G�JE�E�A����fDIc�E��Ic�H�L�4PA������fDH�C@H��i@���L���y����WVSH�� H�H��H��t<�Pd��x5H��1�f�H��pt��H���<���HdžpH���H��9Xd}�H�� [^_�f.�VSH��(H�Y(1�H��H��u���H�[ H����D�C(E���H���b����CH�N����~Hc�H��H�H9���H��t'H�BH9�u�H��H��tH�PH9�u�H�SH�PH9^ H�CtzH9^(H�S �~H��tH�BH�CH��tH�P H�CH�C H���>$H�H�����n��nH��([^�1�H��([^�H�SH�H9^ H�Cu�f�H9^(H�F H�S �����H�V(�y���H���Q���ffff.�WVSH��0H��5E1�H��tI���M��M���M��u�L9���L��1�H)�Hc
�5H��5H��H��H����H���H����D�VE��~H���H9��vH���/�����u�H���H��u�H�@5H��tmH��8H�D�HE��tZ���C��D�
"5��H���0L���0��H���0��A��HO���A/�L$(H�D$ H�h�0H�
��0LN��W"�H��0[^_�H��H�
L�0��fffff.�SH�� H��@H���!H��tH��H���l"H��5H�� [�H��H�����H�u5H�� [��WVSH�� H��H��H��H��H��H;F5wH��H���)"H��tH)-5H�� [^_�H���e�����H������H��H���!H��t���fDSH�� �hH�˹�y���H��H��Ht2H���hH�ǀP����ǀL����ǀH����H�� [�H�
��0�ς�fffff.�SH�� �H��Hc
d//�������H��H���tHc��H��H��H�� [�H�
n�0�q��WVSH��0E�E�PH��E�XH��D���D�DЉ���1�D�3H�C��H��H�<�H��u�&DH�@H��tD;u�D;Pu�D;Xu��NH�CH��tMH�PH�SH�H�@H�@A��A�P�PA�P�PH��HSH�
H�HH�1�H��0[^_ú�L�D$(���H��L�D$(tH��H�
n�0�y���AVAUATUWVSH��0D���D�qdH��D��D����H��D�ih�~H�FA����H��H��u�,H���H��t D;u�H��H��0[^_]A\A]A^�f�H�^H����H�����H�ߺH�F��@����@������1������H�t
�H����t	f�H����t�D��D�D����L�^D��@�~��I��E��E��H�Mc�H���H�H��8D�CN��~+G�vH��1�A�A���u	��D)C��H��D9�u�E���1�fD�A�Z��D�H��A9��H�SXL�CH�����fW�1����f.��D�X�\��H��A9��Y��X�����H��1�E1��D��\��^���5�,�1���x	D9�D��N‰���H������H��A�A9��D����,�����D�D$(���H��H��D�D$(tcH������H�SXL�CH��E1����Hǃ��f���H�������H�{f��������H������H�
�0�~�fDSH�� H��H;e5H��wH���PH��tH)L5H�� [�������H���8���H��� H��t���f�VSH��(H��H;5H��H��w$H��H����H��t$H)�5H��([^�fDH��������fDH������H��H���H��t���fDUWVSH��(H�H��H��D��H��tgD��XA�R�9�|6E��u
�x���Ic�H��H��HC�<Hc�H���=���H��t^�8H�HcӃ��,�Hc��������XH��([^_]�@����H��tAH���@�@�����h�@����H��H�
��0���}H�
}�0�}H�
I�0�}�AW�(aAVAUATUWVS�JH)ċYh��$xaH�κX�L��L���%���H��I������$xaH���X��ǀ������~1�D��A�T�H��9��H��L��HE�H��$�aI���H��$�aI�����Hc�$xaH��$�a���H��������fW�1�A�D�+D�H����9��*��X���Q�f.���f.61�KD�nh�����1҃��@9�u�Hc�PH������H��H�D$p��H�D��H��H��H��H��$����H��H�D$x�pH��H��E��H��$��D$X�6L��$�`A�M�I�D$L��H���H��H9������H��u�C�L��$�`H��$�`�D$XH�|$hH��H�D$`I�G��$�`A�VD�����҉�$�`�~D���D9�}rD�lj\$\D�$xa1�M�\$H�\$`�4@A�D���D��ALEȅɉ�H��D9��H9�u�Mc�L�$�a�\$\A��f�1�A���
f�E��A��A��E����A������H��A9��H�|$hI�n0D�L$XL�D$xH��H���[��D$X�NhH��M��8E1�H�l$(�D$8H�D$pH�D$0I��@H�D$ ���H�L$x�eH��$�H)��H�L$p�LH��$�H)��I���/L��H��(a[^_]A\A]A^A_Ë\$\����A9��e����8����I��H���E1�H�D$HL�T$P�`���L�T$PL�D$`H��A�����A�H�UH�D$HI���H��L9��H��u�HcT$XH�L$xD�L$XL��L��I��LD$p1�A��L��*��Y�ְ�X���A�H��9��M�1ҋL������L�~�D�H��9��D�L$X�D$X����A��I��PI��9��D�L$X����f����H��$�`D�C�H�BH��N���H��L9��H��u�H��$�L��$�@E1�I��M��@1�����*��Y�ư�X���A�H��9��M�$1���������~p��H��9��A��I�~0H��H�����ٸD�Vh��H��M��8�D$8I��@H�l$0H�|$(E1�D��H�D$ �>������f�A��I��PI��9��<����f.�E1�L��$�@H��$��k���H�
��0�wf(��c����H�
��0�w��WVSH��0A�@H�ˉ�L��H�D$(���tT;����H���H�H���A�A��H��H�T$(H�D$(����HcVH���H�L$(H��H��0[^_Ë��9��|=�P
�D
Hc҉��H�H��H��H���H�����H��H���tEH�T$(H���A��A��F������H���L�D$(Hc�L�ʉF���H��0[^_�H�
�0��uH�
 �0��u�f�AVAUATUWVSH��P�ALH�Ψ�������YD�I��D)�H����E����H�� 1҅ۉ�~*L��H�L�D�P1��A�A\@XI��X�A�H��9��H��A9��H��(��unL�L$HI�Љ�����uof�NLf�H�FH����y��~H���H9��v	����u�1�H��P[^_]A\A]A^�@�H��P[^_]A\A]A^�L��0�\$ �L���tf�NL�H��P[^_]A\A]A^�H��(���A���b�����~͍C�L��(1�fW�E1�H�,�f.�fA.zDuBA9�}9L��8L��0Mc�I��1�f.�I��L�,I��H��9�N�,	�A��H��H9�u�D9��J�����������A��Mc�Hc�E��D�L$8Mc�K�D%L�tEA��Mc�L���&���H��H��D�L$8��H�VJ��L��J��E��H�� H��(�M���A�Q�L��L��1��H�� H�H��L�L9�u�����F�$��E�,YM�D�L$8A�A�D$��D�A�A��Mc�L����H��H��D�L$8�LH�VLc�I��L����A��Hc�L��Ic�H��L��@I�L��HM�L��(M�L�L�� H��0L�E��H��8~6E�a�H��1�I��N����L�� I�H��L�L9�u�M��L��~eD�c�H��1�I��N��f�L��0I�H��L�L9�u�L��Lc�I��I��H�1�fDH��8H�H��L�L9�u�E��~1H��@1�H�}Ô%�I�TH�,�H��A9���X���H�� ���H��(H�� ���H�
A�0��q�AWAVAUATUWVSH���)�$�)�$�D)�$�D)�$�H��H��L�!A��$A�|$h��tt�R�K���$��~ H��$�1�DH�T�PH��H��9��Hc��D�PfA.�$H��A��$0�����D$dH��$�L�m8��D�jD�zE����E��~H��$�1�H�T�PH��H��A9��Hc��D�PfA.�$H�2H��$��D$dH�U8I��L������Q�f.���f.���W(�$�1�(�$�D(�$�D(�$�H���[^_]A\A]A^A_ÍG9�����4
���FL�m8L��$@H��$�H�CPL��M��M��H��H�D$ �T������u���L�C�KI��8E�Hh�S��fW�Mc���BD�PJ��˨1��
H��X�\��AY�H��9��X���f(����E��$0E��������D$dH��$����f.�H���h���������E��L��$0~.Ic�1�H��H�JH��f��D�8�\D�P�A�H��A9��H��(H�� M��L��0D�l$0D�|$(L�t$ �YL��H��订�����D$d�K�����H��$��]Ic�fW�H��H��$�1�H�BL��DE���f(��H��D�PH��è1��
H��X�\��AY�H��A9��X���f(���fDH��$�L�m8�D$dI��L���������S�������)Lc��A�$HJ�T�PL��$�1�E1�E1�H���	A��f.���A��H��H��XH��u�E����E����A����A��A���n���f�BL�PJ����f�f.�v�f.��h��H��X��u�Lc�$�Lc�$���Lc�$�f(�K��L�\$pM�CLc�$�K�D(
��K��L�\$hM�G�\�K�D)
��K��I�Bf(�J�D)
�\���K��I�C�\��^��\�L��$�J�D*
f(�fD(��D��D^��D\��A^�fD(��{N��N��H��H��1�f��AT�P�AD�Pf(��\��Y��X��D�P�A��L�P�\��AY��X��AD�Xf(��\��AY��X��A�ðH��9��H�U8L��$0H��$�L�\$ L��L�T$PH�T$xI��M��H��L�\$X�@������D$dL�T$PL�\$X��
L�L$p�A�$H��f(�K��I�AL�L$hH�D$@J�D(
K����K��I�IM�G�\�K�D(
�D�K��f(��D\�I�BfD(�J�D*
�A^���J�D)
�\�fD(���f(��\��\��D^��^��zL�l$@N��H��H��1�N���AT�P�AD�P�\�P�\��AY��X��A��D�Pf(��\��\��AY��Y��X��X��A�ð�AL�XH��9��L��$�L�L$xL�\$ M��L��L�T$PL���������D�|$dE���������AXT�P��H��9�����1�E��L��$@�����f�I��I��H��A9�����f.�H��L��$@H�������~H��1�H��H�L�PH��9��|$d���Dž��W���Dž��H���Hc�H��H�AJ�D
�X�fA.�HvE��0E�������D$d�V���f��D$d�G���Lc��A�$HJ�T�P1�E1�1�L��$����H��H��XH�����A��f.�w�A����1��E�����H��X��t%��t��
f.�v݋�$���$�H�����Lc�$�Lc�$���Lc�$�Lc�$�fD(�f(�f(�K��L�\$hM�CL��$�K�D(
��K��M�F�D\�K�D)
��K��I�Bf(�f(�J�D)
�\���K��I�G�\��D^��\�J�D*
���^��\��\��^��xN��N��H��H��1��AD�P�AT�Pf(��\��AY��X��T�P�A�f(��\��Y��X��AL�X�L�P�\��Y��X��A�ðH��9��L�m8H��$�L��$0L�\$ L��L�T$PM��H��������D$dL�T$P�����I�0HDŽ$H��$0HDŽ$@fA(�HDŽ$Pf(�HDŽ$X�Y�L�\$h�A\���$8f(��BX��@fD(��\��DY��\�f(��B��@f(��Y���$8�FX��@��$@�\��F��@�BX��@�B��@f(��\�f(��Y�f(�f(��Y��Y��BX��@�B��@�BX��@�B��@�BX��@�B��@�\�$X��$P��$H�X�$@��$H���fDf.��������A���-���L�m8L��$@H��$�H�CPL��M��M��H��H�D$ �١������Hc��A�$H��è���D�P�\��\��^���$@�K���H��$�1����è�D�P�\��Y��X���H��9���D$dL�m8����E�����������BD�P��f.���B��f.���D��$�A�E1�Ic�H��H�BJ�D(
��f(���f(�L��$��\��\��\��\��^��^�~zMc�Ic�Ic�O��1�O�HL��J�IL��N��J�JH��H����AD�P�T�Pf(��\��Y��X��A��L�P�\��Y��X��AD�XH��9��L�m8H��$�L��$0L�\$ L��D�T$PM��H��� ������D$dD�T$P�����$0HDŽ$H���0HDŽ$Pf(�HDŽ$@f(�Mc��Y�f(��\�Mc�Mc��\�f(��BX��@f(��\���$8�Y�f(��Y��B��@f(��BX��@�Y��B��@�BX��@�B��@�BX��@�B��@�\�$P��$H���D��$�D��$�D��$�Ic�Mc�H��Ic�H�AJ�D(
��K��I�@J�D(
��H��H�BJ�D(
������H�T$xM��L������Q�f.�L�T$P���D$d��t
f.�����$0HDŽ$HfA(�HDŽ$@HDŽ$PHDŽ$X���Y�L�\$p��0f(���$8f(��BX��@�\��\���$@�B��@f(���$8�A\�fD(�f(��DY�f(��A\��Y��FX��@�F��@L�\$h�BX��@�B��@f(��\�f(��Y�fA(�fD(��Y��DY��BX��@�B��@�BX��@�B��@L�\$p�FX��@�F��@�\�$X��$P��$H�X�$@��$H�����1�I�T�H��H��9��f(��t�����$���$�H�������H�T$xI��L�������Q�f.�L�T$PL�\$X���$0HDŽ$Hf(�HDŽ$@HDŽ$PHDŽ$X�Y�L�L$pH�D$h�5�0��$8f(��BX��@�\��\���$@�B��@f(���$8�\�f(�f(��Y�fA(��A\��Y��BX��@�B��@�X��@���@f(��A\�fD(��DY�fA(�fD(��Y��DY��FX��@�F��@�BX��@�B��@�FX��@�F��@�\�$X��$P��$H�X�$@��$H�|�f.��#����B��f.�� ���D��$�f(��B��E1�A�Ic�H��H�AJ�D(
���
����:�L�T$Pf(��B���H�
��0��^��f(��=�H�
��0�^H�
_�0�^��L�\$Xf(�L�T$P���f�AUATUWVSH��X)t$@H��H��H����Ph��~U�F8��hf.���f.��wx��1�H���$�D@��pf.�wXH��f.��wIH9�u׋� ��u)Hc����(f.�r��f.��HsH������tD(t$@1�H��X[^_]A\A]�D�c�{L�.A9�tH�
��0A��D����\��H�l$ ~+Ic�1�H��H�JH���D�8�\D�P�D�H��9��H�� L��(I��D���H��H���#������k���Hc�H�S �T�������
�A�ŐHc��YD� �X� ����D��$��(A9�������dž(
�@���H��H��0�Hc�(H�D��$H��H��D�CIc�H��H�A�@E���1�Ax1���T�(�T�H��A9�}�A��D��$��f.�v�C����Pf.��W����C����L�A�����������AX����H��0�U���H�Hc��H��H��H��0Hc�H����(�q��H��H��0tD��$������(H�
�0�[��(H�
:�0�[�@AVAUATUWVSH���H�D�jH��H�Ӌxh�hd��~i�A81���hf.��ff.���X�O�1�H���2fD�D@��pf.��,H��f.���H9�u�H������1������L�d$0~,Hc�1�H��H�JH�Ӑ�D�8�\D�P�A�H��9��H�� L��(M��D����L��H���b���A��1�E����L��$�M��H�ىD$(L���J���D���1ҋD$(E������~gD�M�H��M�U��$�1����0I���
B�0�E1��\�fT�f.�v�;�BD�C\I��fT�f.�w M9�u�1�H���[^_]A\A]A^����H���D9�u�9���~˅�~%Hc�H��1�H��H�M�D�L��H��9��~)Hc�H��1�H��H�L�D�8L�D�PH��9��D9�t1�A���d���dž��U����������AWAVAUATUWVSH��x)�$`H��H��H�D�xh�xdE��~b�A8��hf.��If.���;A�W�1�H���,�D@��pf.��H��f.���H9�uϋ��E1���~:��01�Hc�����֐���H�\�f.�rA��H��9��F������Hc�������Ɛ���(f(��X�f.��r�\�f.��H�_��H��H���EHc����֐���(f(��X�f.��%�\�H��f.��H�H9�u���D9�����=���H��������L�6D�cD�[L�k A�FdD��D)݃��D$`����E��~HIc�L��@1�L��1�J�BH���D�8�\D�PfA.�zt�A��H��A9�օ�u�CL� u;L��@H��HH��(H�� L��0D�d$0D�\$(H�D$ �2��CL�� f�CL�DH���H9��v�����tH�CH���D�QE���D�L$`1��L$`E��~FA�T���x5D����E��t(��ƐHc��\���A^�Ɛ���H��9����D���u
A����D�sD+sD9�T��H��`H��tM��XA9���D�PA�����D$XD�T$@�Z��D$XH�SHǃ`D�T$@H�H)���CL$?f�CLD���D9�Pt$?f�CL������@��H��`H�S H�T$`�D���E1�E��~bE1�Jc���H�T$`�D���xAE��~8H��hIc�H�H��H��8H��1������H��A9��A��I��E9��E9�D��XD��P�PE���H��pH��hL��xD�t$ �!�����f�KL�(�$`1�H��x[^_]A\A]A^A_�E��L�l$p~4Ic�1�H��H�JH����D�8�\D�P�AD�H��A9��H�� L��(M��D���k�L��H������A��fW��q���H��$�M��H��E1�H���؈�����f(�~Qf(�1��l�0E1�Hc�����֐���f(��\��\�f.��Y��X�rA��H��9���Q�f.��-�F�����D9�����A9�t{��~H��1�H�T�H��H��9��E��~H��1ҐH�L�8H�L�PH��A9��CA�����D���dž���H�a���dž��R���f.���w����?���H��pD���`�f�KL@H�CH����Q��~H���H9��v	�$����uՋ��1�E1���~CHc���A�T���x*Hc�L��HMc����A���A\��B��0H��9��D;�X��D9���E����L��$0D�D$(H��pH��hL��x�l$0L�t$ M���l�E��L�l$p����L��8L��H1�fW�I��f(�1��A��Y�H��9��X���AX��AL�H��A9���s���L��$01�I��H��9����CL����L��$0H��hL��p��M�����X���D��Ic�A��Hc�H�H�P���`���Hc��A�D��������H��8H�fW�H���	f.�{bH��H���E��L�l$p�\��^�~$1�L���A�Y��X��AL�H��A9��L��H��臄����A�����������u�D���H�
l�0E��D���yPH��hL��pL��$XD��������������f(�������H�
q�0�4PE9��C�D�T$@D�B�T$PE��A�A��Mc�L��L�D$H�O��H��H��`�T$PL�D$HD�T$@��A��H�KHc�L��Ic�L��Ic�H��L��pI�E��I��L��hH��x~@E�Z�I��I��J��H�L$h1��@L��hM�I�H��H;L$hu�L��L�E��~%A�N�L��1�L��xI�	H��H�L9�u�D��TD�������H�
��0�OE��Ic�D�T$@E��H�T$PMc�I�L�D$HL�BA��Mc�L��L�L$X�/��H��H��`H�T$PL�D$HL�L$XD�T$@t�H�KN��H��L��I�E��L�� H��(�[���A�N�L��1���L�� I�H��H�L9�u��.���@AWAVAUATUWVSH���)�$�)�$�H��L�)��$(Hc�$(I���A�UdM��HE�}hH���pH�L$PH�D$H�T$t�t	��$(�T$t���D$`H�D$PH�H��9T$`A�D�D$XI��8���D$X�D$<A��$T9D$<~e��~ I��$X�0�I�$Ic�$TH)��Hc\$<ADŽ$TH�����H��I��$X�T$<��I�$A��$TH���D$<���m�%��0D�t$<�k�0�|$Xf(�E1�f(�1�Mc��D9�E���iD�L$`A)��Ic�Mc�H�I��H��MDI��$XB�I��8tiE��f(�f(�x?f(�1�f(�IcT�,H��A9�H��H�JJ�T^�D�f(��_��]�f(�f(�}˅����A�Hf.�sf.�wL��I�$X���I��E9��0�����t1Hc��H���|��H�T$PH��H���p�\H��I���D$X�=��0A�WL�l$@L�l$Hf(�E1����D$8�T$dH�H�D$hDI��$XB�<0��D9t$XE����L$dH�|$h�t$`�L$\L�Hc�H�T$@H��H�H��H|��x3D�UH��$�L���1��HcL�,A��Dщ�H��9�}�HcD$8H��H��H�D$HH�D$PH��pH�H�����D$8H�I��D9t$<�8����M,�L$8H�T$P����(�$�(�$�H���[^_]A\A]A^A_�HcD$`�L$XH�H��AL�L$<��L��D�|$\��$(����D��$(1����fA.�H�0�������������1���f�x,H��$�E1�1ҐA��A��D�B�I��D9�}��������D$\1�A�u0I�E8��H��H��tRD��$�D�T$\�
�H�[@H��t99su�D9Su�x"1�D9K(t�ދT�,H��;���u͍P9�}�������D�D$(���H��H��D�D$(��H�T$@��PH�����H�S�ȃ��CH1�D9D$X����f�CL�E�C�#H��$�1ҋ��L�(H��9�}�T$\�D$8E1�H�{ �s�S�CH�ڐIc�E��D�L�,x)Ic�1�L��J�QH�L��L����L�T�PH��A9�}�E���A1�E��Ic�xbL��J�IH�L������hH��A9�|5�������hf.�w�f.��v����H��A9�}�H�{ A��H��XD9��D���E��x71����h�\����h����X����H��A9�}ˋD$t��~lD�D$t1�f�H����Hc���H���Hc�H�L��D�Hc����\�H�T����(�D��X����HH��A9���f�KLHǃ`Hǃ����A�U0A�E@�T$p�R��A�E@9�~7��.��~-9D$p�IH���.�L$p�@H��9��,����1҅�x&H��$�1�A��A��D��H��9�}�����1҉���D$\I�u8�t$p��H��H�H�S@H�E�]E����I�EH���H9���}L���>�����u�H�T$PH�L$HH��p���E���"���Ic�1�L��J�IH�L�DL����L���L���hH��A9�}�A��H��XD9��.������H�D$PH�L$HH��p�����L$8�D$\H�{ �s�K�C���I�M8A�E0�H�L$xHc��N��H��I�E8�+A�M0H�T$@Hc�H��H���D$p����L��$�D��$�1�D�d$pL�|$x��$�M��M��tuf�A�RE1�I�r@A�B��x/E1�f.�E��A��E�GD�(I��D9�}�E��A��E�D�A��A��D��1��I�E8H����H��H�I�B@L�tI���H��A9��u�����$�L��$�D��$�H�L$x��HcD$pH�L$@1�H��H)��A�E0���D$p���������D$8���H�
/�0�DH�
��0�DH�
_�0�DH�
��0���DH�
��0�uD�@AWAVAUATUWVSH��H�)E��H��$A��E��D�md�uhH���uH�H���H9���9f��G��~H�H���H9��vH��莽����u�D��D���Hc�H�WL�<�H��H��u��H�[H����D;cu�S,��H�C H��t1H�KH�HH�KH����H�A H�G H�X H�CH�_ H�C �C(��u�o���҉C(�6D��@�D��L��8��E��Mc�O�4�~S�G�L���H��E1�L��DKc��I��~1�f���Z�����H��9��I��H��XM9�u�H���*���GI���*����E��H�K8L�C@~9D��1ɉ�������*��Y�͐�X�������H��A9��H��8tDH��$L���M��D��H�虞���K8Hc�����f.�v�C8f.C@�n���*Hc�A�L���HH�s @1�E��D��~2����������s�X�Ő����H��A9��H��8t\H���L��H��L���D��Jc�M��H��$H�L�\$(�ԝ��L�\$(�A�K8f.�v�C8f.C@v�C@I��I��XH�� D9��I���L�D$01�f�H��H�PH����I��H��9��H�SHA��H��腮���C,H��H�ĸ[^_]A\A]A^A_�H�H���H9���;E���'H�_(H��u�f�H�[ H����D�S(E���H�����C����Hc�H�WH��H�H9���H��t'H�BH9�u�H��H��tH�PH9�u�H�SH�PH�H���H9���CH;_ H�C�jH;_(H�S �SH��tH�BH�CH��tH�P H�CH�C H����H�H�_(H�����o�oH������1�����W������1������G�������������H��H����H�H����H� H��vH�G(H�XH�C D�w�G�GH�_(C�v���G9�~4��.��~*A9���H���.�f�H��A9�|v����D��D��A��Hc�L�<�L1�I�H�CI�D�c�C,�C���H�SH��z���H�W(���H�G ���H���X����C@���H�G(�,����GHcȺL��
���H��H�G��D�OH�Ic�H��H��E��~LE1�O��M��u
�2DI��A�@I�H���A��H�GH��Hc�H��H�I�@L�u�I��E9��L�����H�Ic�D�wH��H)�����H�_ ����������L�D$0���H�
ֽ0��=H�
��0��=�@AWAVAUATUWVSH���)�$�I�Zb���tiM��I��L��H��$f(�HDŽ$�L�����
�� L��f�f.��vH�� H���H���H��(H��u�H��$�I���H��f.� rGL���M���{
E�D$I��A���u
�&DI��E1�H��H������E�D$I�D$A���u�H��(H��u�H��$�H���6
D�QL�IA�����qH��A��f�Ic��4��B9�tA��Mc�B���BH�����u�D�AA�}h��A�H�Hc�H��载��H��H����	L��$�A�@��Hc�H��I����~1�I�Zb���tiL��H��9��A�P�A������H��$�A��5-�0H��$�H�x0�
�I��H��I��HA�N�t���S���L�@HI��H��L��I���ވ���AI���I�T$(��$�H���]�f(�����L��$�H�EA�����u�A�H������A�A��I��H��fB.t��rIc�A��A��H�PA�L�����u�Ic�H��A�����H��E�P��H��$�I���hD�AD�	D���D��D9�~RA��D��E9�~D�����D9��A)�Hc�Ic�H��H��I)���R���H��H��$����H��$H��H����SH�����u�>f�H��L��$�L���M��HcI��H��$�H�ЋSH�C���u�(�$�H���[^_]A\A]A^A_�A�j�A�����tp���Hc�A��M���D-A9�A�0|OA�z��Mc�C��A�ÍDA9�|5A9�~Hc�M��A�A;T�}
��Hc�M��A�9�|Ɖ�Ic�A9�M��}˅�A�0u�Ic‹QA��I���0�t
E1۸댉q���H��$�A���QE�]hHDŽ$��KD�ID��A��A����)ȍH��D)ʉȉT$0��A��)�E�ۉT$4��H�t$`A�K�H�FH��H����H��H9������H��u�I���I���L��$L�~E���D$D����H�D$PH�T$XE��E��E�$�|$`����AD$��E���A9�����D��1�1��A�A��EDxH��E9�}A������D9�u�A9��rA9��iI��Hc�L��M���RH�T$PH�L$XM��L�L$ D�T$(聘��H��L�L$ D�T$(tD;P�D�P�CA�Q��)�9L$0�)�9T$4���SA�AE1��D$8��D$<D�t$@�����Lc����D�T$8O�D�t'���t9�}A��D9T$4��A���I�����u�D�T$8LcT$<���A��N�T�t-���t9��A��D9\$0�uA��D$<I�����u�A��D���o�������o����D$89D$4D�t$@|+D9\$0|$B�X=����T$8L��$�D�\$H�l$D�T$L1����D���������������H��A9��H��$�H���D�L$HHDŽ$�E���D�D$LE�����QD�CI���L��$���A�H��A���N�4���Lcփ��N����J���I��L��A���t	D9��TE1�A��H��L�������H��$�H��$�L�S�F�0���A��u�A���I��tKN�<��D�A���tE9�~gE1�H��L��谷��H��$���H��$�F�8I��A���u�Lc�A�����B�1N�4�A����&��������Lc�N���!���Lc�F��A�����B�1�������A9�����Lc�J��M)�I���I�����tEH��A9�u<E1�H��L�����H��$�����H��$�D�A���u�Hc�Lc����o���Lc��g���Lc�L��F�	I������A9����E�Mh����M��L��F������QH��$�H��PH��$���H��$�H�����H��$�I���I���H��H��I��蝔��H����H��$I��L�����H��$�H��H��I���i����P���u
���H��$�I��Hc�H��H�ыP���u����D�t$@����AH��$�I���H��$�HDŽ$��C�����7���H��$HcI��H���2���H��$�H��$�I���HDŽ$��Ց�����B�1������@����E1�9�Lct$<��Hc�N�4�I���F�DA�������I��D9�����C�T�D$<�����u�Hc�E�����H�
$�0�2H�
P�0�2�UH�
��0�2H�
ղ0�2�A��a����T$DI��L���q���H��$��P���@AW�hAVAUATUWVS誺H)�)�$�)�$�D)�$D)�$D)�$ D)�$0D)�$@D)�$PI��H��$L��$`E�Wh�IdI��HHDŽ$�HDŽ$�HDŽ$�D��$�E�����$�L��D��$�E���D��$�E���D��$�A��D��$�A����$��XN�
D�0��$f.��GN���0f.�$`�0N��$f.��Nf.�$h�N��$ f.���Mf.�$p��ME�WALJE���LS��$��E��E�����
j�4H�[�4I��H�e�4H�5F�4��I���1҉
<�4Hc�H��H��H���H���D�EE��~H���H9��vH���ԩ����u�H���H��u�A�O��tp��A���C�-��4A��L�%T�0H�G�0�5n�.H�=@�0A��A����LO�H�&�0HO����5H�i�0H�H0D�l$0L�d$(�l$ I��A�����Lc�$��L��L��$����H��H��$���L��$�M��H��tA��0���I��8��$����e��$�A�DŽ$�A��A�E�H��H��$���$���~3�C������$��I��A��A��A����9�u鋄$���~<L��$`
H��$�1�L�T$x��L�T$xZ��A���H��9�$��E��01�A�E��t%�C��A�HZ�f.����f.�E�A��A����L��$�I���E1ҋ�$�I��JcDE��L����A@��A�H�Z�f.�B�DCȅ�~IH��$�H��$`
1�f.��A���Z�f.�v��f.�v��H��9��I��M9��r���E������$�����L��$`
L��$�H��$��=�0L��$1�L�T$x�E�����A���A\��\��^�����,�1҅�x;�$���$�N�L�T$xA���A��A\��X��^����,�1҅�x;�$���$�N�A��H��9�$��i���H��$01�A���T�H��9�$��I���I��L��$�1�D��$��L�A����H��Hc�I�A9�H���A�8uA���tA�D��$�E1�H���t���1�D��$��A���T�H��A9�~�T���A;��T��9�$��g�����$�Ic�@D��$�D9�$�H������E��E����L��$�M)��H��$��d���$�ALJ~*E�oE��t!��.�q�5H�¬0H�H0A�����(�$�(�$�D(�$D(�$D(�$ D(�$0D(�$@D(�$PH��h[^_]A\A]A^A_�A�����A�GhA�OdE������L$pD��$�~LD�@�H��$hH��$O��O�HN���H��XH�Zb���tiI�Zb���t�L9�H�)L�� H��u�A��@E���I��8D��Mc�J�<�H9��'Hc�L��$L�,��P�I�rXL��N�$BI������L��I��M��I��J�,&�(1�f.� ��I��I��PI9�L����I��X�A�1�Z�f.�v���Z��A�H��9���H�
��0��)A�d��~+H��$��O�H��$�H���H��H9��H��u�A���I��8����D�g�1�I���C�.��0zquo��$�H��$���~6L��$�1��A*��AY�ǐ�AX�����H��9�$��I��@H��A��8�Y�0f�fZ��C���~P��$���A;����$�|6L��$�1�M�F�J�H�����A;���|
L9�A�uڃ�Ic�@A9��H������I��8ALJ,�0���@��Z��A�� H��9���5���L�H9��������f��2����H��$�H�H�S`H�L�hH�H��H9�u�L��$1�L��$�M��1�9�t�D�`�AX��AX�� �D�`H��9�؃�I��P9�uˍP��*�1��X��L�`�^��L�`�A��H��9�ރ��EL�����D��$�E��~9��$�H��$�H��$���H����H��H9��H��u�D��$�E����H��$���$�D��$�H��$�1�L�g��E�M�,�D�D�Ѓ����D��$�E��~?��$���9�$���$�%L�������H��9�$�L9��@�u��H��;�$�u���$���HcV�.�H����$,���H��H��$0��Hc�$,M���H��$`E1�HDŽ$ DŽ$(L��L�T$pHDŽ$8H��I���nH�L$pH��$�A��VH��$�A�L���H��$�L��A��H��$P��$�DŽ$�Ӥ$�I���H��$�
H��$�HDŽ$�DŽ$�H��$�
��$���H��H��$�H��I����M��L��$�E���E���A�UI��Hc�H�<�H��������H��D��$�E����I���H��$�E1�L��$ H��L��H��I��f�I���E��0�A��@(E��I��8t��Hc��D��Z�fA.�HwU�ډ��A�~I�F��L��M��u���M���M����A;u�A�EA9��tH�L$pE1�A��L���k���H��H9��^�����H�G�
H��������$�X�$0�Y�0�A��T�����$���~H��$01����T�H��9�$��E������I��1��\���Mc����҉��0xq9�$�~hM�A�t_E����@Mc��������0I�ك�M�D9��`�����A���A��H����0u�E���������0A�؅�Mc�y�A���ډ�A����D�A���I�����H��H��t;�����H��H��u��L��H�D$(H�D$ E1�I���إ��H������A�����I���H��H�H��H�I���H��I������L��A��L������A�U��������A�@f.�v�Q�f.����A�@ADž�H��$���L��$�����I���A�whH��t��A�@�Of(��Y�t�fW�H��$ H��fD(ljʉ���{H�C��H�,�H��u��f.�H���H����;Mu�1���fA(����L�X�A\��H��9��Y��X���Q�f.���f.
v�0�6�0v
�A�8�^�H��$�1�D�A���L�X�\��Y��X���H��9��fA(�1����A\L�0H��9��Y��X���_�f(�OH�G����i���H�����f(���f(����j�����f(��D�����$�����3I���fW�DŽ$�1�I��H����3D��$��M��$M���\A��$��P���w�D��$�E��u��t�I��$�H��t��zt���$�IDŽ$H��H��u�H��$`H��$ �;~��I��$HHDŽ$ DŽ$(H���3M��I�l$0L�T$xL�SL��$�L���A�JI�z������ʉ���{H�C��L�4�M��u�]M���M���MA;u�I�FX�A�$8A�OhH�T$xI��H�D$(I��$@H�D$ �J�����tH��$�E1�M��H��� }���OH�G����`H���j���M���HDŽ$ DŽ$(HDŽ$�M��L���A��$�����I��$�D�@H�xH��A�����L��$�H��$ M��$�D��D�����{H�C��L��M��u�2M���M��t&E;u�A�����u)D�EH����$��nD�GH�GA���t1H���E�H�L$pE1�Aǂ�L���-���D�GH�GA���u�I��$�L��$��E����H)�H���hM��$M�������M���L�ツ$���$��%���H��$���H��$�I��H��HdžH��H�~0H9�tj���uaH���H��tU�xtOH��@��8A�OhL�C0H��H�D$8H��8H�|$(H�D$0H��@H�D$ 覀����t
ǃ�H��H��u�I���H��H���V�����$��j����A���H��$�Hc��v���M���L��H�D$(H�D$ E1�萟��LcH��D��D����A���I�����H��H�H��H�
L��H�$�������I���H��I���L��I�����H��$���I���H����������I�|$0I����u�w���������i���L9�tbH��@�A�$8A�OhI��H��H�D$8H��8H�D$0H�F0H�D$(I��$@H�D$ �"����tI��$HH��HI��$HH��H���{����R���f����@���H��$�I�|$0I��D���E�������L9�tbH��@�A�$8A�OhI��H��H�D$8H��8H�D$0H�F0H�D$(I��$@H�D$ �w~����tI��$HH��HI��$HH��H���y�������H��HH�����I��$��N�����M�T$0I��H�{H��L�T$x�ʉ���{H�C��L�4�M��u�5�M���M��t!A;u�A�����t$�NH�F���tmH��밉�H�
��0�DI�FX�A�$8A�OhL�D$xH��H�D$(I��$@H�D$ �����t�H��A�M��H����w���NH�F���u�H�L$pL�CH���3�L��$ M���jA����LE�A��@I��8A��Hc�HcD��H��H��$�H�$�H��$��@���L��$��D&�0H�D$xL��$�L�T$x�kE1�H�{fA(�1�K�RM��H��$�I��LPC�L�H��$�E��Dɉ�B���������H��H��u�}f.�H���H��tg;u����J���`�_ǃ�I��I��f(�u�1���~K�D$xH��$�L��$�H�D$x��B9D�E��(���Ic�A��HDŽ�`�������u�L��$�H�L$pH��$`褕����u�H��$1�H��E��~L��`1�M�L�XL��H��A9��H��H��PH��u�M��A�OhH��$�L��$��D$8H�l$0L��$�L��$`
H��$�H�D$(H�D$ M��L��$��F|��H��$ H�����L��$�L��$�H��$���f.��\������N�;�$��?;�$��2;�$��%H�FXA�OhL��$�H��$���$�H�D$(H��$�H�D$ ��~�������A��@H�H��I�8E����H��$�1���Z���H��A9��H��I��L��H�D$`H��$�us��H�D$`1����A\����H��A9���OM���M�������1���$������ADŽ$����H��$�H��$L��I��H���s��L��$�L��$p
L��$�1�L���D$0H�|$(M��L�T$ �o��H��$�H��$@H��$�
1�L�I��A�E��f(�M�rP~FL�H��$L��$�E1��C�H��$��C\��BY�I��E9��X��H��$A���AI��A��M��u�E��f(�~$L�E1��C��BY�ŠI��E9��X���A�\��H��H���@����:J��������$@�a�0f(��X�f.�����$Hf(��X�f.���f.D�0��E����H��$P1��d�P�D���Š�\��\��Y��Y��X��X��X���H��A9��f(�1�f(����A\��f(��Y��Y�H��A9��X��X��f.�v�X��f.�v
dž�H���H�������L��$�L��$�H��$�5���I���H�����I��Hc�H��H��tbI���D�@H�hH���A���u�H��E1�H��H���~���D�EH�EA���u�H��H���]�I��Hc�H��H��u�H�
�0�L��$�M)��H��$�裱L���+r��1�L���r����$�ALJ�S�A�O���G��-�.��{5H�ݖ0H�H0A��贰�"�H��$8H��H�L9��D#H��$8HDŽ$ DŽ$(H��t-H���H��$8��L�T$pH��$8I�*H��u�H��$0�ͰHc�$,H��$�L��HDŽ$0DŽ$,H��I)���C�H��$�L���3�I���H�������Hǃ0I��IcH��$��I��H��tHǀ0I��0I���΋I��H��0Hc�H�<��+D��$���$�H��$0L��$�E҃�D��$�L��$�H��H��$�L�T$xL�VL��$�I�L��$�L���L�S01��5;�0L�T$pA���IdžM���	M����M��L�D$pH�T$xM�L$0L��M����]��f.��A�$ v���$�D��$�I��$(�]�E��f(��(H��H��$�H��$��H��H9������H��u�E�$D��1��"D9�$�~(A����H���9�$�~��A��A��EL�y�D9�$���D9�t~H��$�Hc��tm�ʉ��A���I�����H��H��u�fDH��H����;u�9��t$M�퉐�Hǀ��I��I��1��������H��9�$�~���������9�$�����M��L���q���H��tf(�I��H��L���X��H���4D��$�E����L��$H��$�I�D$L��H��H��H9������H��u�H��L��$���$�L��$�D�E1�E1��B�L�C��D�����C��x4A;��}+C������A҃�t���uA�A�QI��D9��E��u��$��U9���Ic�E�DA����D��D���A���I���A����H��u0H��u�>H��H��t2D;u�H�
��0�D;tBH��H��u�H�
ّ0D����
�L���L�l$(M��H���D��L��H�D$ 躐��H��Hǀ0��L��$�I��0HcH��$�A�L1�@A������A��~VA������H��9��H��$�H���IH���"����UI��H��0Hc�H�<���H������9��B���f��DŽ$���H���_���D��$�1�E��~�T���H��9�$��D��$��E����E1�E��E��A�A��Mc�B���0��C������B���0Ņ���9�$���H��$�Hc�D�A�������A���I���A����H���H��u�>H��H��t2;(u��
�����H�
ُ0�I��I���s���H��L����j�����H��$�L���I���H�L$(H���L��H�D$ �Ď��H��Hǀ0��L��$�I��0HcH��$�H��$��E��B���0t{��B���0C����)�A��D;�$���������H�����H�
�0�>;(�r���H��H��u�H�
�0���C������B���0���v�����B���0C�������~���H���?���H���z���H�
ь0��
H����fW�HDŽ$�I��$�H�����x��H��$`HDŽ$ DŽ$(�h��I��$��H�����fW�H��H��$ H��$�DŽ$�HDŽ$�D�S�ʉ��L�[A����M�4�M��u���M���M�����A;u�A�������A�>A��@I��8��Hc�HcD��H��H�D$xH�$�H��$��@���NL��$���$�L��$��D�01�DŽ$�L��$�M��L��$�H�vL��$�1�E1�E1�L��I��MAE�L�H��$�A��A�D��D��D���A����I��H��u�Y�H���H���AD;u�H���`���L��$`���/A��H��H��u�A����A����L��$�H�L$pH��$`�1���������$���u%L��$�H�SA�H���tf��DŽ$�H��$���H��$�A����H���H����@����@����D��1���A���H�t
�H��A��t	f�H��A��t�H��$�H��$�L��$���$���L���~1�H��H��9���E�0E1�K����������~/�A*�1�f(��^�f(��D�X�Y��X���H��9��Ɓ�I��I��u����xP~*f(�1����A\��H��9��Y��X���HPH��$`H��$���PXH��$h��P\H��$p��P`H��$�L�T$x�FH��B9D~oL��$�L�[A�:D�S�T���Mc�JDŽ�`�A���������?����A*�1�fA(��^�f(��D�X�Y��X���H��9���
���L��$�M��L��$�H��$�A�JH�����t
H��$�����H��$���L��$�fW�H��$PL��$�L��$`
L�T$xM��L��$�H��$��d��D��$�E��~-1�L��$��A��A\���D�H��9�$��L��$�L�L$xL��$��D$0H�l$(1�L��L�T$ �t_��L��$�L��$�I��L��$L��$�A�JX�ʉ���{H�C��L�4�M��u�M���M���~A;u�E���E����A�A��@I��8��Hc�HcD��H��H��$�H�$�D�PH��$�E���^L��$�H��$���$�H��$�L��$�1�M��H�L��$�M��H��H��IB�Hщ�$��Hщ�$�PH�L$p��$�H��$��ف������D�CL�kE1���0E1�C��E�ʉʉ��A����I�D�H��u�3f�H���H���d;u샸����J���`�_�A��I��I��f(�u�A��MPf.���A����A������$�9EX��L��$p
E1�L��~%J��`1�f.�L�L�XL��H��9��I��H��PI��u�H��$�A�OhH��$L��$��D$8L�l$0H�T$ H��$�I��H�D$(H�D$`��g��H��$�H�D$`A�Oh��$�H�l$(H�T$ H��$�I����j�����L��$�H��$@H��$�
E1�H��$H��$�L��$�H��$�L��A�N�	��f(�H�JP~1H��$�N�1�����\��AY�H��9��X��A���A
I��A��H��u���f(�~)H��$�1�J�	���AY�ŠH��9��X��L�T$xH��$�C
�\��B
I��I���<���H��$H��$��
7��������$@�4�0f(��X�f.�����$Hf(��X�f.���f.�0������H��$�1��Ad�P�AD��A��\��\��Y��Y��X��X��X���H��9��f(�1�f(���L��$��A\��f(��Y��AY�H��9��X��X��f.�v�XUPf.��H��$�L��$��GH��B9D~A���D��H�HD�`���L��$�H��$�H��$�L��$L9�$����L��$�M���M��L��$��;���Hc�$��H���r|��H���4
H��I��1�H��$���H��$�1��LcɃ�M��J��t2L��D���L���E��t�L��$�M��H��$�L���uΉ�D�A�����������Hc�L�ЍTA9�I�1|l�NP��A�h�Hc�L���׍TD9�MD9�}$Lc�N��N�\�M��ASP�ABPf.�v��Lc�N��M��ABPf.�w���Lc�D9�N��~���I�1�s���Ic�L�A��H��H�2L�
�7��e���D���E�����$�9U\�8�����$�9M`�(������f�H�
�0�L��L��$�L��$�Aǂ��*���Hc�H������1�E1��M��L��H��9�M����L��$�H���՜I)��H��$`H��$ �Y\��H�L$pL�CH����L��$ M��L��$���L��$�A������mE�
A��@I��8A��Hc�HcD��H��H��$�H�$�H��$��@���)L��$��D
s�0HDŽ$�L��$�L��$��kE1�H�{fE(�E1�K�RM��H��$�I��LPC�L�H��$�D��Dɉ�B���������H��H��u�H���H��ty;u����J���`�A_�A��I��I��fD(�u�1�A��~Y��$�H��$�L��$�H��$���B9D�-L��$�E�
����Hcƃ�HDŽ�`��A�����u�L��$�H�L$pH��$`��y����u�L��$p
1�L��$���~ L��`1�M�L�XL��H��9�$��H��H��PH��u�M��A�OhH��$�L��$��D$8L�t$0L��$�L��$�H��$�H�D$(I��L�T$ �`��H��$�����H��$��GPfA.�����������$�9GXu��$�9W\��H��$�A�OhI��H��$���$�H�|$(H�D$ �?c��������$�L��$��~$1����A\���A�H��9�$��L��$`
L��$�L�\$(1�L���D$0L�T$xL��$�L�L$xL�\$`L�T$ �T��H��$�
H��$�L�\$`L��$@1�H��$�H��$�A�L�L��$�f(�L�AP��~HH�DH��$�H��$�1���H��$��A\��Y�H��9�$��X��H��$�A���A
I��A��L��u�D��$�f(�E��~'H�L1����AY�ƠH��9�$��X��L�T$x�A�\��AH��H������H��$�L��L�\$`��.����L�\$`���$@�=�0f(��X�f.�����$Hf(��X�f.���f.��0����$�����H��$P1��A\�P�A��A�Ơ�\��\��Y��Y��X��X��X��D�H��9�$��f(�1�f(��D��A\��f(��Y��AY�H��9�$��X��X��f.�v�XPf.�v
LJ�H���H���������L��$�M���M��L��$��\���H��$����sL�[H��$����L�����uNE1�F�D	XD��D��������I��H��u�RH���H��tFD;u�D���E��tƀ�I��I��u�H��$�M��H��$�H���tL���}���H�
�z0D���I��$�H����D�@H�xI��$�H��A���taD��D�����{H�C��H��H��u�)@H���H��tD;u���D�H��D�GH�GA���tH���I��$������H�L$pH)�H��I��$��p�U��M��$M���*�H��$�thH��$�H����^�I����H��tDH��$��ҋ�$�9O`�6���H���H��������H�L$pE1�H���x���?���I���H���}I���H���H��$ �HL�HM�ȃ����D�[�ʉ��L�SA����I��H��u�'f�H���H��t;u����gA�I��A�II�A�����I���H�
�x0��1�HDŽ$����H���A��@���s�f�H��A��@���f��A��H���S������q��H��tI�����r�H�
x0�H�H���A�����I)�I��A��D�@�H��H��H�������I���H���!H��$ E��0HDŽ$�E���fHcEH��$���PL���A�NI������8�ʉ���H�G��H��H��u��H���H����;u싃������3A��@I��8����H�Lcl��I��M��L�$�E�JE����E1�K�dM�BI��I��D�@E����DƉ���H��D��Z�fA.�Hv:����H�G��H��H��u��H���H����;0u�H��$�A�T$I��B;T(��3I��8A��@�Z�������������ʉ��A����I��H�H��u�t���H���H���H���]���;u�H���H�
H��$8Hǀ�H��$8H����(���HcI��H�<���H��$�H��������M����ʉ��A�����I��H�H���@;
�.H��H��H��u�� A�NI�F����I������H�L$pH��$��Q��H��H���n���I���H���wH��$ L�SL��$�H���H���9�x�/��$,��~c��L��1�H��H�$0L��$8H�H��u	�"�I��L��L���L���M��u�H��$8H��H�L9�u�H���D�@HDŽ$ H�xDŽ$(A���u�H��H��L���p��H��$�I��E1�H���jO��D�GH�GA���u�L���E�KI�{A����:D�cH�kI��D��D���A����L�D�M��u��M���M����E;u�D��$�E��~SE�hM���E1�C��D�ʉ��A����H�D�H��u�H���H��t;u�A���I��D9�$��E�JI�BA�����I���T���H��$�H������D�FH��H���A�������H�L$pE1�H���rr��D�FH�FA��������H����H�
�t0�/�H��$��iH�L$pH����N��H��$�H��H����2dž�H��H�������I��pH��tH����XILJpALJhH��$�H��tD��$�E1�1�E��D�T$ A���W�H�L$pH��$��k�H�L$pH��$`�Y���$,��������1�L��H��H�$0L��$8H�H������L���L���M���j��I��L����D��HDŽ$�A���������H��E1�D�c�ʉ��L�[A����M��M��u�fDM���M��tA;	u�A�������A9�A���D��$�E�AE��~oM���E1�C��D��ʉ��A����I��H��u�9�H���H��t%;u�A�������A���~Aǁ�I��D9�$��H�L$pH��$�E1��p��A��MH�E���tH�����E�������A�������A�K����H�
4q0���H�
�p0��Hc�H�0H���8�HDŽ$��L�H��H�H���tH�L$pH����L��H��H��L��H�H���L���0���p�.���A��H��L��L�T$`�k��H�L$pH��$�ǀ�E1�A���*o��L�T$`�D���H��$��$�����HDŽ$ DŽ$(HDŽ$����H�
�n0蛋H�����A�hL��$�E�gd��~/H��$��O�E���H��$�H���H��H9�D�H��u�A�D��A��E����M��8E��@L��$1�1�E1�E��~2��sA������A���DA�H��A9��D��A��H�H����I�~1���Z��A�H��9��I��PD9�u�D��$,DŽ$�E����L��$01�L�L$xL�T$xI��H��tH�����$�H��u�H��A9��A�@�L��$p
H��$�@u0HDŽ$�H��H��$�A�E�I�l�H�D$xL��$�J�H���CE���~L��$@E1�C����������*��*��\��^��C�I��E9��I��?f(�L��$p
1���A�1�f(��\��fD�A��Y�D�Mc��B��p
�A��Y��A�H��9��H��A9�~
���$p
���$p
��~1����Y��D�H��9��A��~EM�JH�SP���A	~$1�D���Y��XD��D�H��9��I��H��PI9�u�H���H�������H��$�H��$�H9�$�������Gt0�A*����D�s0DŽ$��Y�fEW��Y��AX��D,�E��AO�1퉄$�E��H�D$x��H��$0L�T$xJ��H���d�A��@I��8fE(�fE(���Hc�Lcd��I��M�E�L$E���L��$ 1�fDH�vI�T$H��H���P����щʉ��A��I�E��H��H��u�@H���H����;
u�fA(�fA(�~>fA(�1�fA(�f��L��\L��Y��X��L�X�\L�XH��9��Y��X���Q�f.����Q�f.��
�DX�D��$,E�L$�DXȃ��FH��A9�~������H�&�������ǃ�H���H��������D$xH�D$x��D9��l�����$���$�9�$��>���1�A����蘺��H��I��p����$���Hc�H��H��H���:�H��H����1���~I���H��H�T�PH��9�狴$,I�$@A�L������cL��$0E1�K�D�H���=I��8E��@�A�ԅ�Hc�L�D�~-Ic�H��H��H��1��A�Z��D���H��9��D���E���C���fIc�H��H��H��1�L�D�XL�D�PH��9��I��?1�L���A�Iǀ�L�D�L�D�XH��9��Hc�H��H��L��H�Q�L��J��L��1��A��A���AY��AY��X��AD�P�A�H��9��H��I��?A��H��L��ӠH���H������I��D9����������L��$`
H��$�H��$PL��$1�L�T$xL�T$xI���*���GI���*����H���*���GH���*����L�,�M�4�H�T�I��H��9��H��1�1���~V����f.�v��fA.�v�A��D�P�L�f.�v�D�L�T$xfA.�v�A�H��9����H�¨D9�|�L�T$xI��pI�@1�L�\$(I��H�D$XH�D$PL�T$@L��$�H��L�d$HH�l$8L�T$0H�t$ ��hH��������
H��$�1�I���H��H��9��I��pH��H�����1��D�P�A\���A��xH��9���h
fA(Ʌ��A^�~1�H�D�XH��9��1�E����A�A�M�T$L��$0E1�H��H�@H�4�H��C�L
�����ʉ��A����I��H��u�RDH���H��tA;
u�1���~4f.��D��\D��Y��XD�X�XD�X�D�XH��9�փ�I��4I9��{������H����*�1���D�X�^��D�XH��9�������CL
�H���@�,���A�G��� ����5O�.��K5H��c0H�H0A���ր���f�E���������0A��Mc�I���&���L��$��D�l01��DC`�A\�G�A^�G��AX��,�A�H��H��uϋ�$�DŽ$�L��$��������D�l0DŽ$�H�{1���Hcʺ��d^��H��H�7�i��$H���BH�H��H��H��I��H��u��L$pDŽ$�L��$�Ӥ$�fEW틄$�L��$H��$0DŽ$�
L��$���H��H��$��B�L�K1�H�D�L��I����~>M�	1�I��H��H���*���GM�\PI�tXI�|`H�L9�u�H��H��u�H�D$pD�L$p1�1�D��$�9�$��L��$�D��$�A��D����H��H��uɋ�$���$���$�D��$�H�|$pD��$���$���$���$0��$4D��$���$��$���$���$L��$�H��$���$8��$1�E1�E1�D��$���A��A������A�A9�tIc�A������H��H��u�D��$�I��Mc�Mc�F����N��M����A�x���H��$�I�hL�d$xE���L�$�E1��D%j0�D%i0�I��M9���I����EE��0I��8B2A��@E��H�H��t�@�Z�fA.�Hw���H�PHc�$�Z�Z�Z���$��$��$����\��`Hc�$�����\��`Hc�$�f(��Y����f(��\��`�Y��X�f(��AY��Y�f(��\�fA(��_��DQ�f(�fE.����DQ�fE.���fE.�����fE.�����f(��$}�AY���|�,���$������)�9�H�T�M�H�H��H��H��fD.HPv/�DHP�D@XH��$H�H��$H�PH��$H�P�@`fA.��<���I���D@`M9��6���f��}�H�EtmH�����H�
�^0���5�.�MF5H�6^0H�H0A���j{A�G�c��������D*҉�$�D^�g0����fD��
���L�d$xH��$�1�A����;���A���!��A��H��H��u׋�$L�D$pH��L��$��Hc�J�t�I��H��I��L�D$pH��H��H���H������A��fA(�A�L�kH�s`�-�f0HDŽ$�%�f0HDŽ$�=f0HDŽ$1�D�T$p����I�|
E1�I���A��I���A9���fE.kXv�D$pD�A��A)�9�AM�H�H��H��L���AAXfA.�v��AI`L��$�1��Y��X��Y��^��A�\�Y��AH��H��u���$A��I���A9��X��X�$���$��$�X�$���$��$�X�$���$�"���H��H�����fA.�����$�����$��$���$��$�^��^���$�X�$`��$`�^���$�X�$h��$h��$�X�$p��$p�-����56d0L�k1����~N�4/1�1�I�6L�����$`fA(�J�&H�1��\�Bh��$h�\F�Bp��$p�\F�Bx��\H��H���Y��X�u�f.�����;�$H��H�����L���a�����$���L�D$pL�L$pL��$�C��A��A��DH���9�$�L�$�G����������f(��L$`��h�L$`fD(������L$`�h�L$`fD(����DŽ$�D�c0�� ���f(��h����Q�f.�z.��;�$����!���H��H��t��$�d���f(��;h��H��$�H��$P1��Oc0�
�b0H�� ��\���H��X�Y�fT��DH��H��u�H�1.��M��1�H�D$HH�D$@I��H�D$0H�����MbP?H�\$8�D$(�H�D$ ��85��t9H�
�Y0�PvH��$`I��H��$hI�� H��$pI��(H�S`H���-��D��$�E��tH�
�Y0�u1�H��H�3H���sv��$��H�H��H��H��I)��H��u����f�H��?f(�H��$p
�'���ff(��%����ǀ��{�1�H�L�H�L�XH��9���b�Ic�H��H��H��?H��ӠA�Iǀ�Hc���L��$`
H��$�H��$PL��$L�T$x��H�
IY0�����H�
Y0���I��pH��$�H��H�����D��$,ALJhE����1�1�H��$0H�0H��tYH�SXL�CL���3����Hǃ�~.fW�1��D�X�A\��H��9��Y��X�����H���H��u���H��;�$,|��q���@AWAVAUATUWVSH��(D���D��H��I�ՋihA��E������L����H��M��1��&�����u?����H��H��9�H�M�<�~=�AD��\��^���1t�,�D9�~�1�H��([^_]A\A]A^A_�DL��L)�H��H��H��`I�H��t�H�����֢���U���M��1���f.�AWAVAUATUWVSH��x)t$P)|$`H��I�Ջ�8;B�D��$�L�!}f��~"H��@�zsHc�8H�EH��H)��Dž8IcM�H���U��H��H��@�jIcU�H�E��8H��H��A��$P���3I��$�ADŽ$P�L�P(M��t\I�:tHE�\$dE��x>E1�K���pH��t%G����E��~1�f�H��H��A9��BH�I��E9�}�M�R M��u��A�U�=^0�5�]0�����1�D��$��A�UI�E���tsI��A��$@M��$8��Hc�I��D9s�s�E1���H��A������H��I����D�s�H��H��U ���H��@Hcփ�L�<�A�UI�E���u�H�D$8�E�������L��@����A��D�V�A�E����A��Ic�I��C�D6A9�L�:|u�AO0E��A�Z��Mc�K��A���DA9�|KA9�~#Lc�K��O�\�H�
�AS0�A0f.�v��Hc�I��H�
�A0f.�w���Ic�A9�I��}�E��L�:�g���Ic�I�A��I��L�8H�t_��_���I��$�I�W(H���;���p����������u0L�l$8A�U����D���(t$P(|$`H��x[^_]A\A]A^A_�M�9��H�D$@I��H�4�H�t$HI��@H�T$@A�OH�,�L$4f.�I�G(H��tH��L���Ѕ���Lcl$4J���p��B������~T��1�L�4�f.�J���pH�49~Hs#A��$0��u�FLuH��L��A�W0��u�~HH��L9�u�A�G;D$4tDA�W9�}9T$4t�l$4�Q�������D$4�B���A�����~�A�ufA.��r�I��@H�L$@H�I��$�H��(H���@:��H�D$@H�D$HH9D$@����L���t����T$4H���6���������[���L��@��Z0�
"Z01�I��H��9��B0f(��_��]�f(�f(���X�D��P1�f(��Y��0@;�Lt0�B0f.�v
f(��\��R0H��9�����I���JD9�u�H��H�J0��D�
�g4E��t��t+L�l$8����/�.H�
�T0������g4u�I��$�H�B(H��tD�@(E��~	H�@ H��u�H��zH���H����H85H��T0H�H0�D$(�|$ A��A���VmH�
�T0�B�f�A��$P�>���A�U�H�
T0�#��f�AUATUWVSH��HH����idH��H�_(�GH��t1�H���H���C(�C�C,H�[ �GH��u֋G��~$��H��1�f�H�WH�H��H9�u�H��H��tN���Hc�H��H9�s<H���fDH�;tH��H���,�����L��Hc�H��I�D�H9�r�H��tVH���/�����H��Hc�H��H9�s5H���H�;tH��H���,�����L��Hc�H��I��H9�r҃��
������H�
{e4H��e4H��t3L��L9�u��fDL9���L���H���H��u�>e4���ۉ3e4��Hc�1�H��H�
e4H��tf�H���H���H��u�D�^E��tiA���CH�-aF0D�-��.A��H�UF0H�=JF0A��A����HD�H�:F0HD���55H�xF0H�H0D�d$0H�l$(�\$ I��E����jdžH��H[^_]A\A]�L�
ed4H���I�����fffff.�H��(�Ad�����Ah���}���ǁ�� �Y�����p�Bf(���(�Y���x�B��0�Y��\�������uH��(ÐH��(����H�
�Q0�����H�
�Q0������f.�SH��@�AdH�˃����Ah��
��H��H��1��Y�U0H����H��8L��@��0������HuM��,��t=���H��8��~"Lc�@1�I��@���@��v��L�9�u�ǃ,H��@[�H������DH�T$8�\$ L�D$0��G��L�D$0�\$ H�T$8�D���H�
�P0�����H�
Q0������f�AWAVAUATUWVSH���yd�E1�E��H��$�H��A�^�D$4�������H�T$P1�DD��)���H��9��D�T$P~3D��E��ЅD$Tu*H�BA�N�L���I��H��A���A�Hu
L9�u�E���:L�JA�F�M��1��D��A�KA��A��A)�D9щ���H��9��D�\$PL�JA�F��D$4M���D$41���D����A��A��)�D��A9���H��9��Lcd$4�D$4D�u�L��E��E��H��H�E�BH��$�I��L����~]H�T$P1�@D��)���H��9��~=D�\$PD��ЅD$T�WH�BA�N�L���I��H��A���A�H�3L9�u�D$4���0H�D$PL�U�D$@E��H�PH�T$8D��H�L$8H��H�T$HH�T$8H�T$(A�V�L����~~Ic�D�|$P1�D�d�P�A�D�����H��9�~\A���r�A����E��~�A�E���A��E1��I����D9�}�Hc�D�\�PE���t�F�t�u�E�D�H��9��E���H��$�E1���\$DL���L���DB��E��Hc�C�T�,E��G�\�XA��C�����61Ʌ�L��$�~X����!�A;�}$A����A��H��9�~8B������!�A;�|�;���~�A��������H��9���I��E9��c���H�T$8�\$DH��E1�A�����H��Hl$H�@H���	A!�A	�H9�H��u�E��u�V�D9��KA���D�D$P~/1���D����A��A��)�D��D9���H��9�܃D$@I���T$49T$@����H�Ĩ[^_]A\A]A^A_�A�D������������(���H��$�L��$�1�A��A����A����A��A!�D�<�E�<�H��9��I��E9��P������A�S����t"f�D�BHcʃ�Mc�F�D�PA�����D�D�Pu�D9��;������2���D�D$PD��҅T$T���H�T$(�I��H��A���A�K����L9�u���A����@A�B����t'�D�XHcȃ�Mc�F�\�PA�����D�\�Pu�D9������D�\$P�����D��ЅD$T�����L���L9������I��H��A�
��A�Jt��u���A�D$����t&fDD�PHcȃ�Mc�F�T�PA�����D�T�Pu�D9�D�\$P����D��ЅD$T���L��L9�����I��H��A�
��A�Jt����L�JA�F�M��1��D��A�KA��A��A)�D9щ�|
H��9�����A�D$����t D�PHcȃ�Mc�F�T�PA�����D�T�Pu�D9��i���D�\$PD��ЅD$Tu�L���f�I��H��A�
��A�J�v���L9�u��2���H�
�J0�$��AWAVAUATUWVSH��8)�$ H��M�ċ���$�L��$�H��$��yd�qh���WH��HH����	��$�A���ǀ�ǀ�ǀ��P��$��PD�����H��$��P��1҃�$����ƒ��� ��A��Lc�M��L��L��$�tM��N����M�L�E�F����E�9E��tVD���D	��I���*����I���*���G��L��L��ǀ$Mc�A��B����D�����A��H�����tM��Lc��k����r���H��$�t��$��9�
ǀ��P���i9��{�@H�J���H�
��x�pH�P H�"i��H�H(H�P0H��t'��~1�H�L�H�L�8H��9��H��HHc�H�T�8��$���$�ǀ�ǀ����H��$�H���=H���*���GH���H���*���Gǀ�H���(�$ H��8[^_]A\A]A^A_Å������fW�H��$�1�f��������Y�H��9��X��f.ZK0������Q�ǀ�f.��e1������^����8H��9���~�����tN���wH�
�90��D���E���u���H���H�
Oe��H�@(�x�xH�P H�H0�z���9��K���D���E���;����@�I������>L����������H�
G0�7(5H�G0H����'5H���?DŽ$�@H��$��Ѕ���H��$�H=����H=@��H����@�H*��
�J0H���Y����H*��Y�J0�5�J0�X�f.��d�H,�H��W4H�
6G0�^H��L�=vW4trH���]�
<I0f.��L�
"J0�]�f(�H�CW4H����H*��Y�I������XRI0f.
J0wf.��e�L,�L�=W4�CL�����t��V4������xQH���UI��E1��I��I��I��H���5I���E��H��H��H�T�	�A�F9�}�D�KhL��$�L�t$@H��M��L��D�L$(��D�L$(E����1�������X�fA.�v�A��A�f.�v�A�H��A9����H01��A��A�f(��\��Y��X��\��A��A�H��A9������5�H0f(��X�f.��x�^�H�
�E0D�L$(�\H��D�L$(t)H����[f.:H0D�L$(v�
{H0f.�v�Y��,��*���Y���D,�A��DN�E��D������0����A��D9�u�Hc�A�����H�L$0ǃ�~0A�A��H��1�����A�Չ��H��H9�u�A�A�D�L$<ǃ	I��1�A�H�D�I��E���1��D���	A�H��D�A9�Hcɉ��	�I��M9���Eҋ�	�L�=`T4M���U�������H�
E0Hc�H����y.H�
dC0蟻1Ҹ�N���H�
�%��H����@H�H H�P(H�
oJ���V�H�H0�P���H�	�H�
��H�P H�W��H�H(H�P0�V��P�P���H�
��H����p�pH�H H�
B]��H�P(H�H0����A*�D�L$<1�f��A��A�������`�\�f(��^���ðH��A9��H�L$0���7��H��H����L�t$0H�L$0�I��L���7��H��H���GL��ǃ�HǃP��\7��H��I���H���HH��Hc�g.A�FH���-7��H��I�F��IcF�H��H��HcUg.A�F0H���6��H��I�F8��IcF0L���H��H������5�D0�����\��H,�H�$R4H��H1R4���f(����H���6���d���H�Ѓ�H��H	��H*��X��(���H��4�ׂ�C�
ew.H��I�Љ�H�
A0I���%�1Ҹ�����\�H���L,�I1����ǃ�ǃ�ǃ	H�D$0����D�5�v.�\"5���CH��D����H��0E��A��H��@0A���eW�+Q4�8���H�ƒ�H��H	��H*��X�����1�H���$���H����H��H	��H*��X�����H�
�?0��H�
|80�H�
�80��H�
LA0�߸H�
A0�ӸH�
�@0�Ǹf(�H�D$(�	HH�D$(���H�
`@0裸�f�AWAVAUATUWVSH��L��$hH��$H�QdH��$@L��$PD��$X��$���$��Qh����
����$X�D$p����H��$`L��E1�D��$�1�E���PH��H��H��9�$�~3L��$HA�4���t�H��?H��H��H��9�$��A��H�� H�� D;�$Xu�D��$�E����H��$PH�D$`H�D$h�D$pHDŽ$�H��PH��$��4H�T$`H��$`��H��I��H�D$`�D$`9�$��|H�T$`H��$H�\$`D��E��t�H�|$h��H��$@D�D$`H��HH���*����D��I���*���GH��L��ǀ$H��$��H��$@��(H��$�H�L$hA���e�H�D$h��f.���� ������H�D$h��$L��0���T$t��A�щ�A���E���A��Ic�E��H��L�H��H��$�H�PH��$�H�PH��$�H�PH��$�C�T	9���D�Y�3L�Mc�I��M�M�L�PM�PL�PM�PL�PM�PA�ЍT9�Q9�}(Lc�L��I��H��I��L��C�f.�v��Hc�H��L��f.�w�Ic�D��H��L�9�~�H��$�E���H�PH��$�H�PH��$�H�P��M�Hc�H��L��H��L�M�^L�PL�@H��$�H�PL�XM�^L��$�L��$�H��$�L�XM�^L�Xt{E1�������D$p�D$pH��[^_]A\A]A^A_�I�L�D$`L��$`K��Hc�L���� H��$�9D$pI�MD$pL��$�J�ʉD$p�����|$tM�F�AH�L$`L��$`M�VI�V�A�~�L��$`�T$tHcۋL$tI�F(M��H�D$XHDŽ$�1�M�ك�DŽ$���H��$�H��$�L��$���$���$�L��$���$�M�M ��xmI�}�H+�$�I�uM�M D�H�^�E��~DE�U(E1�A�J�H��E��~'B�T�A;U,��1��H��A9T��H9�u�I��E9��H�� H9�u�D�t$XD;t$t����$�+�$�M�E�HD$XM�]HH��H�$�H��$�H��$�I)�L�D$x��$�M�e��x]A�4$I�|$���~EA�M�C�E1ҍK�H����~'B�T�A;S��1��@H��A9TtuH9�u�I��D9��I�� L;d$xu�I�� L;�$�u�H��$�Hc�I�UH��L�H�ȍM9�$X~5I�U L��$�Hc�H��I��UL��͉��DHcōMH��L���$�H��$� M��H�D$XD;�$��8���H�‰�Hc�$�L��$�H���Y���Hc�D�t$X�MH��L��H�
r:0蝱��$�H�
/:0花H��$�H��$@�e��H��H��$�������D$p���D��$XL��$P1�H��$��D$@H�D$(D�D$8L�L$0I��L��$PH��$@H�D$ ���H�D$h�D���ff.�H��8H�D$`L�L$ A�H�D$(�2���H��8�ffff.�AWAVAUATUWVSH��)�$@)�$PD)�$`D)�$pA��H��M�̋ydL��$��Qh���s��
��D��A�� D��$�t
ǁA��A��D�D$X��E��1�A��D�T$`D�T$XI�FP�D$@L�t$0M��M��H�D$ D��H��D�T$8L��$�L�T$(��D�|$`H��E����D���E��uA���-D���E�������1�D��$�	�D��(�$@(�$PD(�$`D(�$pH�Ĉ[^_]A\A]A^A_�A��1�1�����M�VPE1�L�T$`�RH���(H��A��H���������f.����\��CY��X��B��I��D9�~uG��E��t�H����H��HH���*����H���*���GD��H��H��ǀ$H���Y���H�T$`H���y��H��H���@���A���A���D$`�H���<���H��$�Sh�Kd�D$(E��H�D$ L��H����D�|$`E���S����Sh�KdE���D$(H�D$ L��H���H���TH���(H��A��H�����D���E���#�������������A�����Sh�KdE���D$(H�D$ A��L��H�K��H�������H���(H��A��H���K�����fDA��E��A��D�T$`���D�T$X�D$@M��L�t$0M��D��H��D�T$8L��$�L�T$(L�T$`L�T$ ���H���e����Sh�KdE���D$(H�D$ I��PL��H�
��H���(L��$��D$XH�E8�D$0L���L���H�D$ H��L�T$(H�M���D�{hL�t$x���E����1�fW�L��$�H��$�M���f�ADŽ��H��A9�~E�A��\���AD����AD�Xf.�w�1�f.�����A����H��A9��H��1�H�l$pE1�H�݉�H�T$hH���,fD9ǹN�B����I��E9�H�H�4��*�CD��B^����TJ�,���C����y��뷋Sh�KdE���D$(H�D$ L��H�'��D���D��I�VP�ChH�T$xA��E���NE1�1�����H�l$XD�l$pL��I��H��$PA��H�\$x�!�A9�}D�$�D��A����H���A9�~=���A\���A^���I�,Ѕ҉�y�1���H���A9��L��H�l$XD�l$pLc�I��L��H��HM���`I�L�T$pH����H��H��tH���(H��A��H���7��������kE��y��������D�D$`E��t����H��� �^���40f.�v�L��$�H���D��H�ShE��L��D���D����H�D�T$h�KdA��D���D�T$X�������D$(H�D$ L��H�I
��H�T$xH���l��H��H��tH���(H��A��H���=��������������~A��uUD�T$h�H��L����H�D��HD�T$X���D���D������D��D����H����Sh�KdE���D$(H�D$ A��L��H�	��H��tH���(H��A��H�������������R������1�H��H�l$puH�H���IH���D
30L��$�fW��t$XH�D$hfE(�M��$��=�20H��t,A��H���
��D���E������D�{h���H��E����fA(�1�E1�f��AL�XA��f.�zt5A����A����*��Y�Ӱ�A\D��^�f.�vf(�E��H��A9��Mc�I��I�I4����B��X����D��$�1�E��xDA9�}?A�O�1�H���E�E��xIH��D9�~@D���H9�Mc�O��u�I�H��t#H��f.����D���E�������d���1��݋�$XI���$�fA(��H�ىD$P�t���D$P���������'���D��E��uSH��J�8H���4����O���fDI�VPH�����H��H����������H��H�D$hH������{hH��D����#����~+H��$��O�H��$�H���H��H9��H��u�����$��8fW�H���5;00H��$�E1�A�����f(�f(�H��$�L��$�E��K�<�����f(�~/f(�L��$P1�fDA��+�H��9��*��Y��X��f.��B��f(�E��~eL��$�1�fD��A��H��9��f(�E�ˋ�$���A9ĉ�$�)H�A1��D�A��D�H��E9����@�9��I��D9�$��'���A����!L��$�D��H��E1�H�D$(H�D$ M��L��$���'��I�ċH���L��$PM���������H��H��H�I��$L� ��H�D$(H�D$ �z'���H�D$XL���L�T$XH��$�D��$�H�݉ʉ�L��$���HDŽ$������I��M�B0H�M��I��L��G�L��$�A��$�IDŽ$I��L��$�H���fDM����L��H��$8M��L�N0H��M��$���f.��� v�H��$�HcH��(H��L��M���EIcL�D$PH���$��H��H���L�D$P�qIcH��H��A�P��x1�A�����JH��A9H}��@������$8���]�f(���H��$�H��$��H��H9������H��u�D�1�D���!�;��}:D����H��D�9����T�D����A��L��$�Dʅ�A��y�D9���1���DŽ������H��9�~�������������9��t���M���2H��$��r���������!���Hdž�����H��D��$�H��$�H��$��L��$�H�T$XH��f(��d���H�����L�T$pI�H���\�������A9��0���H��Hc�H�<������ʉ�����H�����L��M��u��M��M����A;u�L�T$XA�A9������M��A���Iǀ��L��$�L��$�M�����1����H��D��$�H��$�H��$����H�
m*0�H�
�)0����H�
#0�ޠH�
&*0�ҠH�
�)0�ƠL��$���H�D$(H�D$ E1�H���#��I�����������H���H��H�I��L����L��$�M������VSH��(H��H��H��t H�J��>HcCH��H)��H�CH��([^��H�I��ǁǁ�H���H�W��ǁ�HǁǁH���H�:��HǁHǁ�HǁHH���H���H���H���H���H���H����AVAUATUWVSH��@H��H�ydH��H���)H���H��t%H�E1�1�D�@hD�D$ A���Hdž�D��(E��~@H��0�=Hc�(H�H��H)��Hdž0dž(dž$D��8E��~6H��@�W=Hc�8H�H��H)��Hdž@dž8��T����H��X�=H�Hc�TH���H)�H���HdžXdžTH-hH��H�����<HǃHL���M����I�t$(H��u�2�H��H��H�n �!��H���<I�$H����H��u�I�L$�k<IcT$I�$I�L$8H��H)���M<I�$IcL$0H���H��H��HH)�L��H����#<Hǃ�H���~H���b�����H��Hc�H��H��H9�s5H���H�>tH��H������H�����Lc�H��N��L9�r�H���;Hc��HǃH��H)����~D��E����H��ǃH��H��tq���Hc�H��H9�s:H���DH�>tH��H���/������H��Lc�H��N��L9�r�H���
;Hc��HǃH��H)��D��E��tD��x"1�H���H��H��H��H�T���9�}�ǃ�ǃ�ǃH���%���1�H��H��@[^_]A\A]A^�}���H�
�34H��34H��t6L��L9�u�f�L9���L���H���H��u�5N34�����5C34�����1�Hc�H��H�&34H��tf�H���H���H��u�D�SE���i���A���CL�%s0D�5�X.A��H�[0H�-[0A��A����LE�H�A0HE��5H��0H�H0D�l$0L�d$(�t$ I��E����8���f�H�H����~���L�
r24f.�H���I��
����AVAUATUWVSH��)t$p)�$�D)�$�D)�$�D)�$�H��H�l$ �qhD�f�E��~%�F�L��1�fDH�H�LH��L9�u�D�n�1�I��I��N�D9�}Gf.���D9�},��fDHc�M�L�L� E�qE9p}M�
L�D� ��9�u�I��D9�|�E1�E��~0�F�H�L�1��I�I��BI9�u������Hc�L�,�H���J�(H����E��H�L$ ~&�F�H��1�H9Kt�lL�DH��L;Du\H9�u�SH�
�$0�7�(t$pH��(�$�D(�$�D(�$�D(�$�H��[^_]A\A]A^�f.�H�H��u��H��7H��H�������E��B�S���~)�F�L��1�f�H�LH�LH��L9�u�H�KH�CD�ID�@H�
�#0�6�F��������;H�SH�C��x��p�J(f(��P(f(��` �\��Z �\��DB�DH�Y��Y��X�f(��\��Y��X���hfD(��CXfA(��E\��\��DY��Y��AX�fE(��E\��DY��AX�fD(��D\��C`f(��\��EY��AY��AX�fD(��D\��DY��AX�fD(��Y��DY��Y��Chf(��Y��Y��Y��\��A\��\��AY��AY��Y��X��X��
j)0fW��CpL��I�EH�I�]H���H��tH��@H������H���H������H�
�!0��H�
"0�Ֆ�@ATUWVSH�� �ih��H�ω��a;���U������H���Hc�H��L�$�H��u�"f�H�H��t9su�H��H�� [^_]A\�D����	5H��H���	��@H��8��Hc�H������C���퉇�H�S�s~1���Z��D�H��9��H��H��tH�SH��I��Ћoh��fW�~*1��L��\��h�Y�ǸH��9��Y��X���Q�f.�zWL���ChI�$H�I�$H���H��tH���H������H���H������H�
� 0���G�f(��$�H�
� 0�0��ffffff.�H��(D�AhfW�E��~*1����\��h�Y���H��A9��Y��X���Q�f.�zH��(�f(��$��ff.�AWAVAUATUWVSH��8�id1���H��$�L�ǍN�L��$�A�I�P���@H��9�}=��9�}�A��A)�N��E1�L�J�N�E�bE9a}L�R�N�I��M9�t���Hc�E1��D$,H��rH��H�$��PI�Ņ���1ۅ��|DE1Ʌ�A������H�M�E1�D�S�l$(D�pIc�M�H��E�\�1���H����9�~U9�H�,�AD�Hc�A�L�XD�D)�9Mt�9֋l$(~4��9�}��D$,I��D�|$,E;}�_���1����l$(����I�EHc�E1�L�D�t�,Ic�H��D�\�H�1�H�@D�P��$���u
�D$(uA��tF��A��9�tC��D��E���A�D��A����D)�E��A��D�|$(A�����u��D$(t�A��u�9��0���L��$�A���1OL��$�I�MH�H�Mc�I��L�M�4�HcËRT�XB+T�H��$����L��$�I�A������H��8[^_]A\A]A^A_�ff.�AWAVAUATUWVSH��
)�$`
)�$p
D)�$�
D)�$�
D)�$�
L��D�adD�yhH��$E9��1	A���'	H��$H��$ H��H��$(L��H��H��$0H�� 1�H���6	H��H��$H���hH��A9��H��0H�
�01��/H��$H���hH�
�0H��H�T$8�L$8�x/A9�ع
�/1�H���Q	H��H��$H����H��A9��H�40H�
&01��,/H��$H��޸H�
0H��H�T$8�L$8�/A9�ع
��/H��$H��$H�ErA��H��H�T������<����L��@��8��H��E1�M��	L��Lc�B�L�,��u6Ic�H��A�H��L��H����D���A���H�t��A��HL9�u�H�
T0D��<E���5.��<H�
\0�#.��<����1�E1�H�
X0�.D��8E��x/1�Hc�H�
J0��H�� H�@�T��-9�8}ӹ
��-H�
0�-��8��x/1�Hc�H�
�0��H���H�@�T�-9�8}ӹ
A��H���-�
�-D9�<�>���H��H��A9��X�������-H��$H��H����H��$�ǁ���c
�m-H��$H��H�����H��$�ǁ�c
�c
�4-H��$H��H����H��$1�L��$
ǁ�c
��H��$��$
D���H�
\0�`,��$
H��$�<���A��H��$p	�A���*E�W�H��$\
L��$1��D�T$pL��$�H��$�H��$p	L�T$xH�
�0A����+L�T$xL��$�I�؉�L��L�T$ ��������
��$\
����H�
=0�+D��$\
E��~rL�d$x1�M��I�H�
@0���I��D�@�m+��$\
9�م�~=�5V01�I�$L��H�����f.�v
I�$f(�H�D���I��9�$\
�H�D�H�
�0��H���P�+;t$p�	���H��$H����H�
�0�*�T$p1��ŚD�L$pE1�1�H�D$`D�����T$p1�I����H��$H��H���H�����D$pL��$\
M��fW�I��L��$�L��$�I����H��L�T$xH��$�A�UH�
w0�H*I�EH�
�0L�H L�@�PH�@(L�L$8�\$8L�D$8�T$8H�D$ �*I�EH�
g0L�H L�@�PH�@(L�L$8�\$8L�D$8�T$8H�D$ ��)H�\$xL��$�M�E�T$pH��$H�\$ �������D��$\
DŽ$D
DŽ$@
E���_H�t$xH��$1�L�d$PH�H��H������D$8�WhH�l$8H�����f(�1��D��AYD�XH��9��X��I�EHc�E1��AXL�X�QH�
�0I��@�D$(I�Ef.�A�ă�E��@H�l$8�T$8�D$ ��(Ic�H�����@
H�H��Lcƒ����@
I�HL�H��9�$\
H����L��̰����D��$@
L�d$PD�D$tH��$D
L��$�D�L$t�D$XH�\$hH��$�L�T$PM��I��HcD$XA�i�1�1�H��L��M�9�}k@��D9�}W��H�\$H�Hc��AL�����f.�v'I�4H��԰�A����I�H��԰��D9�u�H�\$HH��9�|��D$XI���I�Ð�|$X��H�D$HH�|$HH�t$P�|$tu~H�
+0�M'��~<��1�H�<�@H�.L�+H�
0H���PL�D$8�T$8�:'H9�u�H�ÐH�ƐH�|$H��H�D$HH�|$H��$D
t�H�
�0��&�H�
�0E��D����&�(�$`
(�$p
D(�$�
D(�$�
D(�$�
H�ĸ
[^_]A\A]A^A_�H��$�H��$�I��H����H��$H��H��t+H��I��H����L��$I��H��I��A���
D01���H��$�X��Y����hH��A9���U���H��$I��?L����H��A9�����D�H��H�pD�A���_���E1���8�s���H�
0�r�f�f(�1����L�T$hE�
I��L�T$h�O���H��$�=�0HDŽ$���$�H�
F0�`%H��$����@
�ۉ\$h�H�
60��4%L��$�H�D$XI����L��$���	�D$XL�T$XH�
50�D$tH�D$PD��J��D�C��$1����hI���\D�H��A9���L��$��M�D
1�f��AD�I���\D�H��A9��
�H��L9�u�L�D$`L��$P
D��L��1��� ����L��$�H��$�H��D�l$tH��l$hL�t$Hf�A9݉�tZL�T$PH�
�0��M�4�E�F�$1��AD��\D��A�H��A9��L�D$`H�L$HM��D����#fA.<$�`H��9�u�H�
{0L��$�L�t$HH��H��$��{#�T$t9T$h�D�C�T$tH�
�0�#�whH�
�0�J#�N������F�L��$ 	L��1�I�TI�H��L9�u�Hc�E1�H��� 	�^�A��D9�~0D��Hc�I�	L��� 	E�PD9Q}M�H��� 	��9�u�I��A9�u�E1Ʌ�~,H��$(	�V�H��$ 	H���H��H�DHH9�H��u�D��D��H�
=0�������A��D���"H��Hc�L��H��L�T$HH���!��L��$ 	~3D�F�I��1�L9It��f�H�TH��H;� 	��L9�u�H��$�H�D$P�H��$������E���E���A�������M��@M�������M��L��D�D$pH�L$`1��]��\$pE1�1�L��A�؉\$ �E�A��1�H��踅H��$1�H���H��������SD���H�
0D����q!H��@H��u�1����H�	H�����h��!H��H�������C���������L��$ 	1�I��H�T�H��9��H�K H�CH�SfEW�D�ID�@H�
�0�RfE(��� E1�J�l�E��1�1�A9�tL�D�Hcʃ�L���	H��9��H��$�	H��L�L$@�����L�L$@����Hcʃ�H����Oh�������fA(�1�fA(��D��YD�XH��9��X��Hc��XL�Xf.��w���Hcʃ�H������I��D9��.���H�D$HH�H�H�H�H��H�C`H�����@H�
0�1����hI���\D�H��A9���L��$��M�D
1��AD�I���\D�H��A9��
�H��L9�u�H�
�0�2I�H�
�0L�HL�@H�L�L$8�\$8L�D$8�T$8H�T$8�L$8�I�FH�
�0L�HL�@H�L�L$8�\$8L�D$8�T$8H�T$8�L$8��I�FH�
E0L�HL�@H�L�L$8�\$8L�D$8�T$8H�T$8�L$8�H�
0�H�D$X�L$X9L$h�y���H�
X0�SH�
t0�/�H�
0L��$�L�t$HH��H��$��#9t$hu�H�
�0����@H�
I0�����D$t���H�
#
0��L��$�H��$p	H��$L��$\
�L�T$ I��L�T$x�����u���$\
�������H�
M
0�D��$\
E���SH�t$x1�H��H�EH�
K
0����H��D�@�x��$\
9�؅��fEW�H��$�D
O01�H�fE(�1��D�\�hH��H���Y��DX�u�H��$p	fA(�0��D�\DH��H���Y��X�u�fA(�0��D�\�hH��H���Y��X�u�f(��Y��Q�f.���f(��X��X��A\��^��4H�f(�f(�H�
W0�P�D$8L�D$8�wfA.�vH�fD(�H��$x	��H��9�$\
�����H��$x	H�
!0�P�5�D$p�,��D$pH��$p	��H�
�
0�������H�
n
0����	���H�
�
0�������f(��
���H��$ 	����fD���Hcʃ�H���������fA(�1�fA(��F���H�
Y0��/}H�
�
0��^L�T$P�D$tI����H�K H�CH�SD�ID�@H�
�0�R�&�!���H�
�
0��|A�UH�
Z0�|����A�UH�

0��{���ff.�H�Y�H���ÐVSH��(�yhH��~&�H�CrH��H��H�T����CH��9Fh�H���H��u�H��H�����H��u�H�����H���H��u�H��H��@�H��u�H����H��H��u��H��H�Y`�H��u�H��H��([^�mffff.�WVSH��0E1�H��H�ϺH������H��H����H���H��tL�F1�H���H���H��u�H��H�|$ H��u�;H��H�BH�r`I��H�ً@�D$ H�B�@�D$$H�B 1ҋ@�D$(��PH��u�fW�E1�1�H���hH�����H��0[^_��i���H�
�0I��H����z�������AWAVAUATUWVSH��8)�$)�$ I��A��H��pd�@h�D$8�A���D$<~-L��$�H��$�1�A�T�pA������H��9��H��$�fW�I�m H�Cf(�H�D$0H�T$0�F�L�4�M�����L���1�E1�H��$�� �;����DD�H��9�~(��E����D����Mc�J��u�H��A�9��E1�E����I�MH�l$ E��A�U1��X��.��$�A�T�p��9�0)у���u��$�H��9�~��t΋�A�T�p��9ʉ�~Ћ�$���� ���H��1���H���W���������9�u�f(�(�$(�$ H��8[^_]A\A]A^A_�D�T$8DT$<E��~'H�D$HE�B�H�L$@N���H��L9�H�H��u��DH��H�D$0�f.�H��L9������H��u�A�B�f(�H��$��0L��L��1��#�E����H��9�Mc�J����D��D�y�D;���~�9�}|1�f.�����������������H��9��E1�f.��N���L�L$@E��M���=���I�AA��L��N���H���	L9��^��	H��u�M������E��~%L�\$@1�@�A�X�AH��L9�u��X��Q���9������q���E1�I�MH�l$ E��A�U���X��8����2���fff.�AWAVAUATUWVSH��H��D$0H��I�Ջ���pd�Xh�T$4H�T$P���d$0�|$0H�T$ H���o��~IL��$ 1ҋL�p��A��H��9��H��$TD�F�H��$PN���H��L9��H��u�D�T$4E�����N�H��$�L���M�}D���H�T��	
0�D$,H�L$8H�T$@�T$0��H��H�T$H����H��$ L��$P1��A*��*��^��D�H��9��L�\$@I��?I��L��fD�A
Lc�f(�N��1��\�f.����Y��A����Y���H��9��I���M9�u��E��~ 1�D�A��Y��A�H��A9��|$0~HL�T$HE1�I��@���BLK�L
~1����Y��AX��A�H��9��I��M9�uȅ�~X��$P��;Wp��$P|BL�\$8L��$P1�M�rI���DN�2H��A�	��;LpA�	|
L9�A�u܃D$,�T$49T$,�r���H;D$ t	H���z�H�Ĉ[^_]A\A]A^A_�H��?f(�H����HcL$0H���aH���z���H�
�0�t�ff.�SH�� H��H����H��H��H9�t��H����H��H�� [��ff.�AWAVAUATUWVSH��)�$�)�$�D)�$H��H��D$XH��$h����@d�T$\H��$����d$X�D$4�|$XH�T$ H�����D$4��~mD�L$4L��$hL��$PH��$�1��T�p��A��A�T�p����H��A9��L$4H��$�H��$���H���H��H9��H��u�D�|$\H���E����H��$h�L$4����=�0�D$PH�����H���H�L$hH�T$`H��$hH�D$pH��H�T$8�T$X��H��H�T$xD�t$4E����H��$�E1�H�\$(H�t$@�|$TL��$PL��L�d$`L��$�fEW��\$4H�l$HH��L��$h�0��*�E����D��Mc�I���\�M����H��9�~U�,��A*t��*��Y��A*��^�f(����,�E1�fA(���x�9��E�����M��*�D��Mc�I���H�\$(H�t$@I��?H�l$H�|$TL��$L�D$p�L�+f.��A
Hc�f(�H��1��\�f.����Y������Y���H��9��I���M9�u��H�L$8��HcI��~1����Y���H��9��|$X~RL�T$xH�L$8E1�I��JcD	���BLKI��~$1�����Y��X���H��9��I��M9�u�D�d$4E��~U��$���9Up��$�?L�L$hL��$�1�M�UI���J�H�����;Dp�|L9�A�Du�Hc׃D$PH�4֋T$\9T$P�����H;\$ t	H�����(�$�(�$�D(�$H��[^_]A\A]A^A_�I��?L�d$`L�f(����HcL$XH���
H��H���5���H�
J0��o�@AWAVAUATUWVSH��)t$P)|$`D)D$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�I��H��$`H��$hD�D$,D�L$HL��$xH��$�H�D$@H��$pH�L$0H��$�L��$�H��$�H�D$8��A�|$h���ƀA�$t	A�D$��@t	A�D$1������|$,	A�D$`���|$H��E�t$d�D70ADŽ$��E�$�E�����M���:H�UI��E1�E1��X�K��H��I������J��D9�I���8�����
I��H��L�h����E��$�I��L��A����A�
D�h��*�D9��AY�$��A�$�~A��$�E��$�M���k���H��IDŽ���k���H��?D9�I���8���e����*�fA(��^�f(���E�l$d�A�$�E��~81��T��A��@�A\������*��^��A�ĐH��A9��E�t$hE��~m1�fW��1�A�H���A�Ġt4���\��A���H��A9�~4M��u�H���A�Ġf(�u�fA(��\��A���H��A9��A��$������D*�fA(�fD(��
80�E^�fA.���E1��D<0�D;0�|$L�D
60L�Ǻ���,H��H���H��D��H��H��PH��������T$,H�L$0E��H�D$8L�#�D��ǃ��S�T$HH�KH�C�S�fA(�1�1�A��9f��D�p�*�9��Y�}
���D���H��D��A9�~���A����A��9�}��t�p������Ic�D���*�fA(��^�f(����L$,E�D$d���D���D�L$HE�����~Z1�f��A����A��@��ð����\ȋT�p��f(��*��^����PH��A9��A��ǃ���A�E��L��1�������Tp����щ��H��L9�u�H���A�E�L��I��L�t��DLc�1�I��N�
M�D��E��E��D���E��H��9��I���M9�u�Hc��H��H����H��H�����E�����A*�A���5��/J�l�I��I���^��`�A*Ep�A\�f(�I����f(�fD(�fA(����A^��AL$�AY��D^�fA(��Y��^��AN I��I9�tA�D$`��u�����A\��H���BH��H���'���H������D*�1��5��/�=��/�AY�$���/�A^��Y��Y��1�1�H���&�f.�wEfA(��\�f.�w6�����t+��fD(�uͺH�����1�H��fD(����f.�v��A�$�fD.����EY��
)�/�AX��,�F�*�f.�r�,�E�l$dE�t$hH�����H�H�,�H���H��H���
H���H��H�������H�
L�/�'h�H�T$@H�������H��E��������f����fA(�A�1��Q���L��|$L��<��E��$�I��$8H���E��~IMc�$@Lc��E1�I��I��1���~@��fZ���H��9��A��L�L�E9�u�H�����(t$PL��(|$`D(D$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H��[^_]A\A]A^A_��>���*ƾ�D%^�/�����,�f(�fA(���f(��A*�$���fD(�fA(��f(�fA(��\��\��^
�/�X
�/�,��*��^�f(���E�l$dfD(�E�t$h���H�
�/�VfH�
,�/�JfH�
��/�>fH�
7�/�2f�T$,H�
��/A�
�f�T$HH�
��/A��ffA(�1��A�������������AWAVAUATUWVSH���)�$�I�΋YdH��$8�qh���	��
�D��\����H��8A���A��H�T$HH�T$H1���H��$�:�C�M��M��L��E1�E��H��A��H��$���H�D$0�f(��\��A^��H�L$ L�D$(f(����,�1�fW�H�L$ L�D$(��x�S�9��C��*�A��l��Hc�H���\�H��?HT$HJ�D�I��I��f(��Bt��Y��BD��Y��BD�I��L;d$0tJH��$8�A��A����B"f.�v	f(���A�@f.����������L�\$H��D��E��I��L��$A��~=A��M���H��$N��1�IcDH��$H�D�H�DQH��L9�u�~H��$81�H�D�PH��9��Mc�XM��PI��M�M9�����/H��$8��/�����f(�E�A9�t4��f(�~,f(�1��E��A�D��Lc؃���9�J���Y�̀u�Ic@�AHIcH��Z�L����Y�I��~*1����Z��Y��XD�P�D�PH��9��I��M9�sD���d���(�$���H���[^_]A\A]A^A_�D��������IcˉD$dH�H��D�\$xH���vH��H�D$p�.L�\$p�D$xI��8I����L�\$H�;L��$�D�^�L�l$HD�<[�D$0��I�@�d$0�D$|L�\$@�\$`J��H�D$XD��M��A��H�T$h�D$0E1҅���E���7��L��H�D$XH�L$h�H��H9�H�H��u�D���%�/��L�|$P�D$<E1�A��f.�E�����D$`����1�1�E1�E1�1��4��W�����2A���l�A�D��H��D9�t8A��s�A��rȋW���������A���l��H��)�A)�D9�u�E�����~]�*�C�Mc�1�)�Hc�N��H�H��H�����A���Z�Z�Z��\��Y��X��Y��AX��A�H��9�ÃD$<A��D;L$0�����L�|$P~21��*L$<�A��^�f�fZ��A�H��9��H�T$@M�|�A��D;T$0�K����D$|Ic�@I��D�\$xD9\$|H�<������\$`1����D$0�T$0~�����9�u�T$0I��P�x�A�E��A���A��E����fW�1��
�/E1����/E1�E����1�E1�D1���L�U�/f(����t$<���D��A����D�ރ�A������A�����9�J�AH�J�AY�uȋt$<f.�����A���E9�u�A��E9��r�����D9��Z���I��0D�\$0H��E��Xt��H�D$pH�T$H��D�\$dI��0I��8E��@~1��T$dA���DA���lH��9��E��~0I���I���1�D�D$d�E��@D��D��H��A9��Adž\�
����f�fZ�Ic�A��H��I�P�8D�X�@�h���E+��lA�����E��lA�����1����V����*�Hc�H��1���Z��Y��AX��A�H��9��D$<�$���(��a����G���A�G��G�A�G��P���1����A��H��9��H�D$@M�|��/���H�
{�/���]HcL$0H���V�H��I��P�j���H�
��/�z]H�
��/�n]H�
_�/���`]�ffffff.�H�Y���ǁXǁ\HǁPH����f�SH�� H��H��PH��t�ǃXǃ\H�� [Ð������������H�A`�ff.���f.�H�A`H+AP�����HQPrH;Q`sH�QX0���D1��ffff.�H��tH�APH�M��tH�A`H+API�1�ÐWVSH�� �ALH�q@H�ˋyH��uH��H��V��tH��V 1�H�� [^_�H�QPH��V��ffffff.��D�B��D�D�B��D�D�B��D��A�BD�B��D�D�B�R��D���Љ���   L��~W��5HCM������ BGR�T@�Z��7HCM���h��8HCM���� SCP�����RLCB�ts~|��RLCE�td����YARGtQ�����RLCF��������2baL��@����4  Ltf�����2  Lubf����f���RLC6��~E��RLC8�����RLC7u(��f��� YMCtX�2��RLCC���@1�Á�RLC3t5s��RLC2�u������8baLt����4baLu�f.���f.���   Y�D������� ZYXu���@��f.���RLC4�������RLC5�c�����f.���f.��� tpL�t����� vuL�(����c�����RLC9�	�������RLCA�
�����Á�rbCY�3����� yxY����"���f���KYMC��t�����RLCD�
������Á� SLH���� VSH��������f���8  L�4����� baL�����������fffff.��QP���t
���v������ÍB�@VSH��(H�QXH�qH��H��t
H��H���PH��H��H�AH��([^H��fD�QL���t
���v������ÍB�@VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�t����80iu�@H�XH�PH��jH�P H��gH�P(H��RH�P8H�'fH�P@H�L���H�P0H�� [�f��QL���t
����������v��D҃��w�B�DVSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�d����61iu�@H�XH�PH���H�P H��}H�P(H�RRH�P8H�|H�P@H�L���H�P0H�� [�f��QL���t
�����?�����v��D�����w�B�@VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�d����23iu�@H�XH�PH��wH�P H�=uH�P(H��QH�P8H��sH�P@H�L���H�P0H�� [�f��QL���t
����������v��D�����t�B�@VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�d����46iu�@H�XH�PH��oH�P H��lH�P(H�RQH�P8H�GkH�P@H�L���H�P0H�� [�f��QL���t
�����?�����v��D�����w�B�@VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�d����23fu�@H�XH�PH��H�P H�m�H�P(H��PH�P8H�ǍH�P@H�L���H�P0H�� [�f��QL���t
�����?�����v��D�����w�B�@VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�d����23fs�@H�XH�PH�h�H�P H�=�H�P(H�rPH�P8H���H�P@H�L���H�P0H�� [�f��D�B�
�0��D�D�B��D�D�B��D��*��Y���BD�B��D�D�B��D�D�B��D��*��Y��A�BD�B	��D�D�B
�R��D�����*�1��Y��A��QL���t
��UUU�����v��D�R�����w�BÐVSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�d���� ZYX�@H�XH�PH�(YH�P H��{H�P(H��uH�P8H�wWH�P@H�L���H�P0H�� [�f�������t
����������v��f�҃��w��B�DVSH��(H���H�qH��H��t
H��H���P�SP��u!�L�H��H�Sx��L�A�CpH�H��A�ЋCp���H��H�SxH���Pǃ�Hǃ�H��H��H�AH��([^H��fffff.�SH�� H��A���H��H���PH����H�����vruc�@H�X�@PH�PH���ǀ�����H�P H�h�H�P(H��PH�P8H�B�H�P@H����H�P0H���H���H�~�H���H�� [Ð�QP���t
���v������ÍB�@VSH��(H�QXH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�`�H��H���PH��tZH�t����atad�@H�X�@L����H�PH��'H�P H��#H�P(H���H�P8H�P�H�P@H�E���H�P0H�� [�ff.��QL���t
���v������ÍB�@VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�t����txet�@H�XH�PH��H�P H��H�P(H�B�H�P8H���H�P@H�L���H�P0H�� [�f�S�D�B��D��AHD�BD�JA��E�D�ALD�JD�RA��E�D�QPD�JD�ZA��E�D�YTD�J�Z	A��DˉYXD�J
�RA��D�D�������Q\A��L��E��u`=�v�AH�E�����AL�AP�����AP�yTv�AT�yX;v�AX;�y\;v�A\;1�[�DA��wE��tA��wA��w
��;w��;v�E������A��Lw	��t[��vf=k�[�����cvFE���AHl�]���A���Z����AP�AL���S������Q����AP�E���Dl�AH����E��t�A��w�A��w���;w���;�{����ALD�AHD�QTD�YP�Y\�QX�������f.�1��ffff.�H�AH��H��H�AH��ff.�fW�1��
�0I��1�9�t+fA.���	z-u+H��H��u��H�� I����u�1��f.��	{�@��f.�AVAUATUWVSH��p)t$@)|$PD)D$`���	���H�D$�s�I��I��H�4��H��H9�A�I��u�fW����	�-0H���	D�$Mc��%�0fD(���0I��f(�A��A������BL-f.�v&�I*�1��\��A*��^���H��9�w�f(�f.�v'�I*�1��\��A*��^��A�H��9�w�f(�A��I�CD9�D�$v�D�A��D�H��A9�r+H9��@�u�(t$@(|$PD(D$`H��p[^_]A\A]A^��	A���D�$H�l��3���D���	f(�E���&���fA(�1��XL�H��A9�w��������	H�l�����1��A�A`���	���	�Y��Y��AX���	�X����	�Y��Y��Y��	�X����	�Y��Y��	�X����	�Y��Y��	�X��
�X��X��B�R�fDVS�91tfmD���	D���	�dE��uo�41�E��D���	A���A�A������0@E��t,1�D��A��A9�w~E��A����E����A��tlE��uϺE1���DE��t�A�����1�D��A��A9�w'E��E���l���1�D��A��t
E�A�����D���	������^���1�A�����D���	E��A�Ä�uE��t!E1ҋ��	Aڅ�uAE1�C�[^��A�����1�D��A��A9������A9�v‹��	A�������t�E��u�A�����1�D����A9��YD���A9�v������[^�E����E����1Ҹ����A��A9�wE��E���rA�����D���	�����E��A�A��������7���u01�D��A��D9��ME��A����vE����A��tE��u�E1�A���u�D���	E��A�„��(E���A�����1�D��A��D��A9�wD��A�х������9�����������	����E����A�����1�D����D��A9�w
��A�х�t������9�������2[^�A�Ʌ��?���1�D���������D�	����E��E������1�D��A���)���G�� ���f��01�E��D���	A���������1�A����������1ҍ2�g���fD1������A�X4���1��o���1����A�p0�f.�AUATUWVSH��E��H��H��D���$�91tfm�2H���/H��V D���	H���/H��V D���	H���/H��V D���	H���/H��V D���	H���/H��V D���	H���/H��V L���	L���	H���/H���	H��L�L$8�\$8L�D$8�T$8H�D$ �V L���	L���	H���/H���	H��L�L$8�\$8L�D$8�T$8H�D$ �V L���	L���	H���/H���	H��L�L$8�\$8L�D$8H�D$ �T$8�V ����H�u�/H��V D���	E����1�A��H�`�/H��V D���	E��tM���	1��f.����	��H���	H����L��H�!�/L�D$8�T$8�V 9��	w�H��/H����V 9��	�{���H���/H��V D���	A���NE��D���	D���	t|E��E�ع@��A������'@��u#1�D��A��9���A�Ƀ��tA��t��u�1�A��u�H�T$@A��D��H�BJ���
f�H��H9��H��u�E����L�d$D1�H�w�/H��V ���	�x�9�v#@��H�[�/H��D�D�@���V 9��	w�H�C�/H��V D���	E��t;1�fDH���	��H�����L��H���/L�D$8�T$8�V 9��	w�H���/H��V ���	��tA�D$@���	��9��D$@w,��L��M���D����H��9�rL9��@�u�D9�����H���/H��V D���	E��tx1�H��A��H�
�/�V ���	��tC���	1�����	��H��
H����L��H���/L�D$8�T$8�V 9��	w�H���/H����V 9��	w�H�Ĉ[^_]A\A]ù�����!���H���/H��V ����A�H���/H��V �+����UWVSH��(H���	H�yH��H��t
H��H���PH���	H��t
H��H���PH��
H��t
H��H���P���	����1��@�EH��9��	vuH��H��H�H�X�@��t؋C ��~&�H��H�S(��L�A�C H�H��A�ЋC ���H��H�S(H���P�EH��9��	�C0H�C8w����	����1��f.��EH��9��	vuH��H��H�H�X�@��t؋C ��~&�H��H�S(��L�A�C H�H��A�ЋC ���H��H�S(H���P�EH��9��	�C0H�C8w�H��H��H�AH��([^_]H��SH�� H��A�
�H��H���PH����H����H��?I��?H�X�2tfmH�PH����@Hǀ�	Hǀ�	H�P H���Hǀ�	H���	Hǀ�	H�P(H����Hǀ�	Hǀ�	L���	H�P8H��H�P@H�t���H�P0H���H���	H���H��X	H���H��`	H��H��h	H���H��p	H���H��x	H���H���	H�'H��
H���H��
H��?H���	1��DHH��H��<u�0�DŽ�H��H��u�1ҐDŽ�DŽHH��@H���u�H�� [���$�f.�1��ffff.�H�AH��H��H�AH��ff.�SH�� H��A���H��H���PH��tSH������saem�@H�XH�PH���H�P H��mH�P(H��aH�P8H�g���H�P@H�l���H�P0H�� [�f�AUATUWVSH��HL�iE��H��H��D���^�9locn�H�e�/H��V D�GLH�b�/H��V D�GPH�g�/H��V D�GTH�j�/H��V L�GXH�q�/H��V L�GxH�v�/H��V ����D�_PE����E1��DA��D9gP��D��E��H�K�/Hi�H��H���V H�@�/H��L�E�V �?2lcn��D�WTE��t�H�~�/H��1�V D�OTE��tC��H�{�/H��L�D�@��L�D$8�T$8�V 9_Tv��t�H�O�/H��V ��fDH���/H��A���V D9gP�C���DH��H[^_]A\A]�I����@@= baLt_= ZYXtH���/H��V �B���fDL�M0L�E(H�o�/H�E8H��L�L$8�\$8L�D$8H�D$ �T$8�V �����L�M0L�E(H�M�/H�E8H��L�L$8�\$8L�D$8H�D$ �T$8�V ����H�M�/H��V ��DVSH��(H���H�qH��H��t
H��H���PH��H��H�AH��([^H��VSH��(H��A���H��H���PH��H��te�2lcn�@H�ZH�sH�CH���H�C H���H�C(H����H�C8H���H�C@H�H���H�C0H����H<�%���CTH��H��([^��ATUWVSH��@H�AA� baLH��H��D��H����x8kniltD�`@�����E=clrt�9=trlc�.D�ELH�,�/H��V �����]L����1��+DA�� ZYX��H���/H��V ��9}L����A��H���/H��H]PH��V H���/H��L�C�V �E=clrtt=trlcu�A�� baLu�L�K0L�C(H�2�/H�C8H���L�L$8�\$8L�D$8H�D$ �T$8�V 9}L�{���DH��@[^_]A\�DL�K0L�C(H���/H�C8H��L�L$8�\$8L�D$8H�D$ �T$8�V �!����H���/H��V ���fffff.�VSH��(H�QPH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�X�H��H���PH��tSH�D=�trlc�@H�XH�PH�H@H�P H�-IH�P(H����H�P8H���H�P@H�L���H�P0H�� [�f��A`E1�A��������w�P���w
D�@E��A�ыIt���tA�����1�D���D�҃�vɃ��vD9ʸ����wDJF���F��ÍQ���VSH��(H�QhH�qH��H��t
H��H���PH�SxH��tH��H�AH��([^H��H��([^�f�VSH��(H�qH�����H��H��H�AH��([^H���AVAUATUWVSH�� �AL�I�ͅ���1�A��������Hi��I]PH�K(�S@D����x���AG�E��uE1����t	��A��A��H��������XD9�AGԅ�u
1������‰���9�AG��A9uLw���H�� [^_]A\A]A^�@UWVSH��(�ALH�iH�υ�t41�����Hi��H_PH�K(���H����{���9wLw�H�WPH��t
H��H���PH��H��H�AH��([^_]H���SH�� H��A�X�H��H���PH��tSH������qesp�@H�XH�PH�X�H�P H�ݐH�P(H�r�H�P8H�GH�P@H����H�P0H�� [�f���f.�1��ffff.�H�AH��H��H�AH��ff.�SH�� H��A�P�H��H���PH��tSH������ gis�@H�XH�PH��yH�P H��wH�P(H�r�H�P8H�g���H�P@H�l���H�P0H�� [�f��QP���t
��UUU�����v��D�R�����w�BÐVSH��(H�QXH�qH��H��t
H��H���PH��H��H�AH��([^H��fDSH�� H��A�`�H��H���PH��tSH�d����nrcs�@H�XH�PH�H~H�P H���H�P(H�"TH�P8H��{H�P@H�L���H�P0H�� [�f��ATA��A���tE1�=���A�����v]�Q`���t
����������v4E1�D9�A�����w
F�E��A�ҋQp�����A�D9�AF��f�҃��wōB�@����w��P���w�D�XE��A���DVSH��(H�QXH�qH��H��t
H��H���PH�ShH��t
H��H���PH�SxH��t
H��H���PH��H��H�AH��([^H��f.�SH�� H��A���H��H���PH��tSH����� dfb�@H�XH�PH�x�H�P H���H�P(H�qH�P8H�GhH�P@H����H�P0H�� [�f�UWVSH��8E��H��H��D��~z�AH��t#����H�B H���/H��H��8[^_]H��H�/�/H���W D�FPH�3�/H���W D�FRH�3�/H���W D�FTH�3�/H���W ��u�H��8[^_]�f�~Pt�1�A��H��/H���W D�NRE��tP1��f���w��A9�~:�FTf��u�D��H�FXA�Mc�F�A��H���/H���W D�NR��A9���FP��9��H��8[^_]�H��H���/�W L�FXH��H���/L�D$(�T$(�W L�F`H��H���/L�D$(�T$(�W L�FhH��H���/L�D$(�T$(�W L�FpH��H���/L�D$(�T$(�W L�FxH��H���/L�D$(�T$(�W L���H��H���/L�D$(�T$(�W L���H��H���/L�D$(�T$(�W L���H��H���/L�D$(�T$(�W L���H�G H�}�/H��L�D$(�T$(H��8[^_]H��D��H�FXA�Mc�F�H����VSH��(�AHH�qH�˅�uH�QXH��t
H��H���PH��H��H�AH��([^H��ffffff.�SH�� H��A���H��H���PH��taH��4�tgcv�@H�XH�PH�^H�P H���H�P(H�BjH���H���H�P8H�y[H�P@H�.���H�P0H�� [�@�$�f.�1��ffff.�H�AH��H��H�AH��ff.�SH�� H��A���H��H���PH��tSH������weiv�@H�XH�PH�88H�P H�
[H�P(H��JH�P8H�g���H�P@H�l���H�P0H�� [�f��Q\��������w
D�BA���w�B1�A�����D�LhE�AA���A��A��EG�D�E9�AG�H��H��u��f�WVSH�� H�Q`H�yH��H��t
H��H���P1�H�TxH��tL��L��A�PH��H�� u�H��H��H�AH�� [^_H��SH�� H��A���H��H���PH��tSH�$����idrc�@H�XH�PH��H�P H��H�P(H��uH�P8H�7�H�P@H�,���H�P0H�� [�f����f.�H�A H��H��H�AH��ff.�H�� ��D��0�E��t1L��80�A9L��u
�QH�� 9t��D9�u��fD1���H��A�L1���trlct�H���-�H��9�t؋���u��1����ATUWVSH�� H���H��H��D��H��tH���PH��8H��tm��0��t]1��f�I�@��9�0v=��H��L�I�@H��t�D�HA��E��D�Hu�H���P0I��H��8L�8�H��U��(��tH�� H��tH���P8H��H��UE��uH�� [^_]A\�DH�E H��H�� [^_]A\H��fff.��`�/�
�Y��	�J�Y��I�YB�A��8�/�
�Y��	�J�Y��I�YB�A���/�Y��ffffff.����/�Y��ffffff.����/���/�Y����/�J�Y��\��I�YB�\��A�ffffff.����/��^t�/��x�/�J�X��^��I�XB�^��A�ffffff.��0�/�Y��ffffff.���^�/��ffffff.���/��/�Y���/�^�����/�J�Y��^��\��I�YB�^��\��A�ff.����/����/�Y��^��/��|�/�J�X��Y��^��I�XB�Y��^��A�ff.��H�/�Y�^D�/����0�/�Y�^�/������/���/�Y����/�J�Y��\��I�YB�\��A�ffffff.����/��^��/����/�J�X��^��I�XB�^��A�ffffff.��P�/�Y��ffffff.���^,�/��ffffff.���/�@�/�Y��/�� �/�J�Y��Y��\��I�YB�Y��\��A�ffffff.����/����/�^��/����/�J�X��Y��^��I�XB�Y��^��A�ffffff.�H��
��/H��B�\��A�B�\��A�DH��e�/H��J�X��I�XB�A�f�H�H��f�H�H�H�BH�AÐH�H�H�BH�AH�BH�A�f�H�H�H�BH�AH�BH�AH�BH�AÐH�H�H�BH�AH�BH�AH�BH�AH�B H�A �f�H�H�H�BH�AH�BH�AH�BH�AH�B H�A H�B(H�A(Ð1�L�D0L�D0H��H���u��f�1�L�D8L�D8H��H���u��f�1�L�D@L�D@H��H���u��f�1�L�DHL�DHH��H���u��f�1�L�DPL�DPH��H���u��f�1�L�DXL�DXH��H���u��f�1�L�D`L�D`H��H���u��f�1�L�DhL�DhH��H���u��f�1�L�DpL�DpH��H���u��f��A �A#Eg�A�����A�ܺ��AvT2�A�DAWAVAUATUWVSH��(�BD�2D�QD3QD#QD�BD3QD�Y��A��B��A��B��D�$�AF��x�j��BD$��A��DQA��B��A��B��D�D�A�D$E��V���A3AD�BD!�3AA��BA��E��A��B
��A��B	��D��D$E���p $�AD�ZD1�D!�3AA��BA��E��A��B��A��B
��D؉D$D�YD�b�Z �r(�z0E���ν�D��D�ZD1��j4D�j8D!�D�z<D1�A��BA��E��A��B��A��B��D�D�Z�D$E���|�D��D1�D!�D1�A��BA��E��A��B��A��B��D�D�Z�D$E��*ƇGD��D1�D!�D1�A��BA��E��A��B��A��B��D؉D$E��F0�D��D1�D!�D1�A��BA��E�E���A��B��A��B��A�D��D1�G��&�F�D!�D1�A��B#A��E����B"����B!E1�E!�E1���E��ؘ�iE�D�Z$A��C�2D�R'A��E�D�R&A��E�D�R%A��E�D�Z,D�T$G����D�E��E1�A!�E1�E�D�R+A��A�A��D�D�R*A��D�D�R)A��D�A��E1�E��0�[��E!�E1�E�D�R/A��E�A��E�D�Z.A��E�D�Z-A��E�E��A1�G����\�E!�A1�E�D�Z3A��E�A��D�D�Z2A��D�D�Z1A��D�E��E1ˍ�8"�kE!�E1�D�D�Z7��D�A��A��j6��A��j5��A�D��D1�G���q��!�D1�A��j;A��A���D�D�j:A��D�D�j9A��D�A��E1�E��(�Cy�E!�E1�E�D�j?A��E�A��E�D�j>�R=A����E�E��A�A1�E!�G��.!�IA1�E�A��C�D�t$A��b%�A��E1�E!�E1�D�D�t$���G��@�@�A��A1�E!�G��QZ^&A1�E�A��	A�E��A1�A!�A1�E�D�4$A��E�A���Ƕ�E��E1�A!�E1�D�D�t$��D�A��]/�A��E1�E!�F��SDE1�D��A��A1�E!�G�����A1�E�A��	A�E��A1�A!�A1�E�D�t$A��E�A�����E��E1�A!�E1�D�D�t$��D�A�����!A��E1�E!�F��
�7�E1�D��A��A1�E!�A1�E�D�t$A��	A�G���
��E��A1�A!֍��ZEA1�E�A��E�E��E1�A!�A����E1�D��D�A��E1�E!�E1�D�D�t$���G�����A��A1�E!�G���ogA1�E�A��	A�E��A1�A!֍��L*�A1�E�A��E�E��E1�E��A!�E1�F����q�D�D�t$��D�A��B9��A1�D�t$Alj�A��D1�G��"a�mA�D1�A�D��A��1Ѝ�8�E�D1�D�E���E1�D�A1�D�D�D$���G��8D꾤A��E1�G�����KA1�E�A��A��A1�A��`K��A�E1�E��E�A1֍�p���A��E�E1�E��D�E1�G��;�~�(��D�A1�D��D�4��D1�D1�A׋$A��E�F��
�'��D��1�D1�AыT$A��G�9���0��D��D1�D1�ЋT$��F��D$F��0�D��D1�F��:9���D1�A�D��A��D1�F�����E�D1�A�D��A��D1�G��
�|�C�71�A��A�E1��D$A��A�E1�F��0eV��G����*CE�E��A��A1�E�E1�B��
�#��E�A��C�D�4$A��D")�E��A��A��A��A	�E1�D�E���A���A	�A1�E�D�t$A��
A�E	�A1�D�D�D$��D�A��9���A�Ѝ��Y[eA��A��A	�A��E1�D�E��G��&�����A��D�t$�A	���A1�׍�.}��D�D�D$���A	�A1�A���]��E�A��A��
A��A�D	�1׍�O~�o���D�A	�A��E1�A��D�E��G��%��,���A���A	�A1�A��.C�D���A	�A1�E�A��A���NA��
A��D�\$A�E	�A1�D�A���A��D�A	�A��E1�A��D�D�D$���A���~S�E��G��"5�:�A��D�T$A	�A1�D�A��A��*���*��A���A	�A1�A���ӆ�E�A��
A�E	�A1�D�A��Q��A��D�A	�E1ȉQDIA��AA���iD�IA�D�A�iH��([^_]A\A]A^A_��VSH��(�qH�H��H��S��uH��([^�H�C H��H��([^H��H�A`�ff.��AX9�t�A\H;A`vH�A`1��D1��ffff.�WVSH�� H�APM��H��L��H��D��Pp��CXH;C`�CXvH�C`H��H�� [^_�D1�L�D$L�L$ �A\�fff.�1��ffff.�H��(H�AHH��H���P1�H��(���A\�fff.�ATUWVSH�� H�|$pH�t$xH��H��L��M��t���H��t��覼���EM��t
��A�$H��t
��脼���H��t���H�� [^_]A\�f.�AWAVAUATUWVSH��8L��$�L��$�H��H��M��L��$�H��$�H��$�H��$�t���M��t��L�L$(���L�L$(A�M��t	��A�M��t���һ��A�M��t�A�EM��t�CA�$H��t�C�EH��t���H��t�C�H��8[^_]A\A]A^A_�DH��tH�A8H�H�A@H�BH�AHH�BM��tH�API�H�AXI�@H�A`I�@�Qh1������ffff.�I�H�I�@H�BI�@H�B1���I�H�I�@H�BI�@H�B1���H�AH��H��H�AH��ff.�AUATUWVSH��(H��H��A��E��D��A���H���PH��H���/H�pH�������$�H��H�������H�� H����H��(H��H��0H���H��8H��.H��@H��.H��HH���H��PH�����H��XH���H��`H��BH���H�H���H��;H���H��AH���H��@H���H�nAH���H�p;H���H��H����5H�^B�H��hH�*H��pH�BH��xH����H���H��H���H��������9H����O<�������!�G@= baL��CRTkH��VPH��H������8vruc��H���H���H�S H���H���D��D����H�S(H�C0��$��C��$��C��$�����$�����$���H��H��([^_]A\A]�DH�9?�H��hH�%���H��pH��>H��xH��H���H����H�������= ZYX��@H���1�H��H��([^_]A\A]�D1��A�A`�������Y��Y��AX����X�����Y��Y��Y���X�����Y��Y���X����Y��Y���X��J�X��X��B��fDI�H�I�@H�BI�@H�B1���1��A�AX�����Y��Y��AP�X����Y��X��
�� ��(�Y��Y��X���0�Y��X��J�Y�8�Y�@�Y�H�X��X��B�fDI�H�I�@H�BI�@H�B1���H�AH��H��H�AH��ff.�D���H���E��u-L9�t���	��t1�M��L��H��9�w�1��f�L��`	H��I��WVSH�� H���H��H��L��H����I��H��H����h	��H��H������H�� [^_�f�UWVSH��H���H�|$ H��H��L��H�����I��H��H�� ��H��H����H�Ĩ[^_]�fff.�WVSH�� H���H��H��L��H���I��H��H�����	��H��H�����H�� [^_�f�AUATUWVSH��L���H�l$ H��H��H��(D���A��E��tI��H��L��A��$`	A	�H��H���I��H��L��A��$h	��I��H��D	�L�� 	�I��H��L��A��$�		�H��H��I��H��H���P	�H�Ĩ[^_]A\A]�ATUWVSH���AH��H�Ճ������A��a��H�|$ H��H����(I��A��H��H���0��I��H��D	�H���8	�I��H��H���@	ƋC��tP��tL��9�t$I��H��H���H��I��H��H���P	�	Ɖ�H�Ġ[^_]A\�f.��C��at���t���bu�뮃��A�����b�8�����9��&���D���E������H��H���@���M���DH�D$(H��t
L���L�M��tH�Q I�H�Q(I�PH�Q0I�PM��tH�Q8I�H�Q@I�QH�QHI�QH��tH�QPH�H�QXH�PH�Q`H�P��fDATUWVSH�� H���H�l$pH��I��L��L�ϋ��	��t"1�f�H��?H��H��H��9�w�H��H��A��$�H��H��A��$�I��$����	��t&1�f�����f.�v
����H��9�wދ��	��t#1�f�H��?H��H�\�H��9�w�H��H��A��$H��H��A��$I��$����	��t'1�����L�f.�v���D�H��9�w�H�� [^_]A\ÐH�AH��H��H�AH��ff.�AWAVAUATUWVSH��)�$p)�$�I��H��L��H���M�΋B8=rtrpt@=rtnmt9=knil�5��/t*f(�(�$p(�$�H�Ę[^_]A\A]A^A_�f��B<= baL���l=YARG�����=RLC2�o=RLC3�dE1��D$ A��H����H��I���SH��$l1�H�D$HH�D$@H�D$8L��$`H�D$(H��$hH�D$0L��$dL��H�D$ A��$(��$l�5��/�������$h��~0H�D$h��H�T$`H���f.�H��H9�H�H��u�I��$����	H���	D���	����E��A�A�����A���)@E��u%1�D��A��D9�rNE��A���tD����E��u�E1���= ZYXth= vuLt= BGR�����D�5�/�)���fW�M��t(��$h��~L�L$`1�DI��I�L�H��9��L��A��$���=rbCYt�= yxY�9����= SLHt�= VSH�%����E��D�|$\~�fW�L��$�1�f(�I��L��H����	L��L��A��$H��tM��L��L��Ջ��	f(ׅ�t0L�L$`1�f��A�fA.��X�v�A�H��9�w��_փ�9|$\H�4�f(�����E1��D$ A�c�H����H��I���5��/�z�������D$\�$����H��H�A\A��D$8�AL�QHD�YXD�QT��
IC�L��-M��D�APH�
��3�T$ H�z�/D�\$0D�T$(�§H�c�3H��H�fffff.�D�
٦3L��3�gfffIc�A��H��H��I�D���D����)�A)��D�
��3��I�EmbeddedH� ProfileA�@M�I�@L��D�H��A������A��D!ʁ ��t�A��A���€�AD�L�HID��H����uSI�, Use an�@ywhef�@reL��@L��ÐI�Not EmbeI�dded ProA�@fileM�M�PA�@�m���I�, Use wiI�th embedH�ded dataL�L�XH�P�@ onlf�@yL���fDWVSH�� H��3�gfff�ϋ
�3Hc���H��H��HÉ�����)�)�@���
��3��I�Transpar�Cency�CL�H��D�H��A������A��D! ��t��H�p���€�D�HE��H��@��uiH�, Glossy�FH�H���ȤH�@��twH�, Negatif�Fve�F
H�H��蠤Hƃ�upH�, ColorH�H��H�� [^_��H�, MatteH�뙐I�Reflectif�Cve�C
L��*���@H�, Positif�Fve�F
H���H�, BlackAH�H�ndWhiteH�FH��H�� [^_�f.�WVSH��0H�Y �€H��t}H�icmHeadeH�Length eH�xpected H���I�to be 12H�r_read: H���H����H���L���fǃ�8ǃ�H��0[^_��H����D�D$(H���H��H��D�D$(��H�� D��H���P���1H�� A��A�H��H���PH�����F$�V%D�F'����V&����A�A��psca����VH���D�F����V���H�}�/��A�A���D�G(���F�V����V����V��ЉG`�V�Ѓ������B�Gd�V	�у������Wl�Oh�L����ǃ@�F�V
H�Op����V����V��ЉG8�F�V����V����V��ЉG<�F�V����V����V���H�V�G@�ֵ�������F(�V)H�OP����V*����V+��Љ���F,�V-����V.����V/��ЉGX�F0�V1����V2����V3��ЉGH�F4�V5����V6����V7���H�V8�GL�F����F@�VAH�������VB����VC���H�VD�GD�$��������VP�NQ����NR����NS��ʉW\1��L���1�A�xd~�LT���H��H��u�L��H��D$(L��A�PH����D$(�zd��I�icmHeadeI�r_read: H�ICC V4 nH�ot suppoL���L���H���H����ǃ�rtedfǃ�!ǃ����DI�icmHeadeI�r_read: I�fseek() I�or freadH�() faileL���L���L���L���H���fǃ�dH��H��H���P�ǃ�H��0[^_�H�icmHeadeǃ�H���H�r_read: H���H�malloc()H���H� failedH�������H���H���/���f����ǃ@����I�icmHeadeI�r_read: H�read_DatH�eTimeNumH�ber corrL���L���H���H���H���ǃ�uptefǃ�dL��H��D$(L��A�P�D$(������������@����H�icmHeadeH�r_read: I�read_XYZI�Number eH���H���L���L���ǃ�rrorƃ��q���f�SH�� H���H�YH�������~iI�icc_lookI�up: CurvI�e->lookuH�p_bwd() ���L���L���L����H���ǃ�failfǃ�edƃ�H�� [�SH�� H���H�YH�������~iH�icc_lookI�up: CurvI�e->lookuI�p_fwd() ���H���L���L����L���ǃ�failfǃ�edƃ�H�� [��k���ff.�ATUWVSH�� H���H�qH��I��L��H���������~vI�icc_lookH�up: CurvH�e->lookuI�p_bwd() ���L���H���H����L���dž�failfdž�edƆ���H�� [^_]A\�H���I�T$L�EH�����	Ã��f���H���I�T$L�EH�����	Ã��B����f�����ff.�ATUWVSH�� H���H�qH��I��L��H���������~vH�icc_look���dž�failH���H�up: Curvfdž�edH���H�e->lookuƆ�H���H�p_fwd() �H�����H�� [^_]A\�H���I�T$L�EH�����	Ã��f���H���I�T$L�EH�����	Ã��B����f�����ff.�UWVSH��(D��0H��A9���L��8��H��I�2H�hH��tH��H��([^_]�E1�E�ۋX�11���trlcH���-u�f.�H��A9��D�
��A���u�E����H��A�`�H���PH��H���QH�
c���@L�@H�(���L�
A�H�K H�
�GH�{H�CH���H�K8H�
���H�C(H���H�K0H�C@H��H�8H��D�@D�,�PA�х���H��8H��H�\0H��H��([^_]�I�JH9HuI�JH��uTDA��I�� E9�����D9�t�A9Zu�@�ƅ������H�H�]�-H��H���TH��H��tQL�H �X���E9������H�HI�j�E�\����A��H���H�ϔ/1�蠙LJ��.���1��'���1��H��S0����H�icc_readH� found uH�nknown tH���H�_tag_ix:H���H���H���fLJ�agƇ�LJ����VSH��(D��01�H��E��t/1��D��9�0v%A���H���E���H��u��H��([^�1�H��([^��VSH��(1�D�ALD;AHH��H�qt]A�����
w^H�QPH��tH��H���PD�CLH��1�E��H�tA�����
���������H��H�CP���CL�CH1�H��([^�I�icmXYZArI�ray_alloI�c: size H�overflow�L���L���L���H���Ɔ�dž�H��([^�G�@B���m���H�icmXYZArdž�failfdž�edH���H�ray_alloƆ�H���H�c: mallodž�H���H�c() of iH���H�cmXYZArrH���H�ay data H������f.�AVAUATUWVSH�� H�Y��H�ω�E����H��A��L��H���H��H���BH�� D��H���P��u"H�� M��A�H��H���PI9��mH�icmXYZArH�ray_readI�: fseek(I�) or freI�ad() faiH���H���L���L���L���ǃ�ledH��H��H���Pǃ���H�� [^_]A\A]A^�f.�H�icmXYZArH�: Tag toH�o small H���I�to be leH�ray_readH���H����H���L���ǃ�galǃ��r���H�icmXYZArfǃ�dǃ�H���H�ray_read�H���H�: mallocH���H�() faileH���������A�����H����A��A��A��D�oL�W@����uc�E�U����U����U���9uUE��t;A��L�eK�DmE1�L�t�f.�L��HOPL��I��I������M9�u�H��H��H���P�t���H�icmXYZArH�ray_readI�: Wrong I�tag typeI� for icmI�XYZArrayH���H���L���L���L���L���ƃ����ffff.�ATUWVSH��0H�Y��#H��E����H����H��H���H��H���hH�� D��H���P��u"H�� I��A�H��H���PH9���H�icmViewiI�ngConditI�ions_reaI�d: fseekI�() or frH�ead() faH���L���L���L���L���H���ǃ�iledƃ�H��H��H���Pǃ��H��0[^_]A\�H�icmViewiH�d: Tag tH�oo smallH���H�ngConditI� to be lH���H�ions_reaH���H����H���L���ǃ�egalƃ�ǃ�H��0[^_]A\�H�ions_reaH�icmViewiI�ngConditH���H�d: malloH���H���H�c() failL���H����fǃ�edƃ�ǃ�H��0[^_]A\���V����V����V���9��H�ngConditI�icmViewiH�ConditioH���H�ions_reaL���H���H�d: WrongH��H���H� tag typfǃnsH���H�e for icƃ
H���H�mViewingH�������H�VH�OH菟����u[H�VH�O`�~�����uJ�V �N!L������N"����N#���L���Wx�D$(H��A�P�D$(���f.�L��I�icmViewiI�ngConditI�ions: reH�ad_XYZNuH�mber errL���L���H��L���H���L��H���fǃ�orƃ��D$(A�P�D$(����-����VSH��(1�D�ALD;AHH��H�qtNA�����?wNH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CP���CL�CH1�H��([^�f�I�icmUInt8I�Array_alI�loc: sizH�e overfl�L���L���L���H���fdž�owƆ�dž�H��([^�fDH�icmUInt8H�ata failfdžedH���H�Array_alH���H���H�loc: malƆH���H�loc() ofdž�H���H� icmUIntH���H�8Array dH�������DATUWVSH�� H�YH�Ή�V�����L����H��L��A�H��I�����A�D$A�D$A�D$A�D$��A�D$��A�$���A�T$���A�T$�FL����H�FPE1�D�I�D$A���w-@D�A��H��D9VL��H�NPE��F��A���v�H��H�icmUInt8I�Array_wrI�ite: wriI�te_UInt8I�umber() H���L���L��H��L���L���L���ǃ�failfǃ�edƃ��Pǃ��H�� [^_]A\�H�� ��H���P���
H�k() or fH�icmUInt8H�Array_wrH���H�write() H�ite fseeH���H��L��H���H���H���ǃ�failH��fǃ�edƃ��P�ǃ�H�� [^_]A\�H�icmUInt8I�Array_wrI�ite get_I�size ove�H���L���L���L���ǃ�rflofǃ�wǃ�H�� [^_]A\�H�� I��A�L��H���PH9�����H��L��H���P1����@H�icmUInt8H�oc() faiǃ�ledH���H�Array_wrH���H���H�ite mallǃ�H����H�� [^_]A\��AUATUWVSH��8H�Y��H�͉�E����H��A��L��H���H��H���UH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmUInt8ǃ�ailefǃ�dH���H�Array_reH��H���H�ad: fseeH���H�k() or fH���H�read() fH���H��H���Pǃ��H��8[^_]A\A]��I�icmUInt8I�Array_reI�ad: Tag H�too smalH�l to be �L���L���L���H���H���ǃ�legafǃ�lǃ�H��8[^_]A\A]�H�icmUInt8H�Array_reH�ad: mallH���I�oc() fai�H���H���L���ǃ�ledǃ�H��8[^_]A\A]�f���H��uL�U@��up��O����O����O���9Uum��tL�EP1��LA��H��9�w�H�UL��H���D$(H��A�P�D$(���f�L��H���D$(L��A�P�D$(�^���f�H��H��H�Array_reH�ad: WronH�g tag tyI�pe for iI�cmUInt8AH���PI�icmUInt8H���H���L���H����L���L���ǃ�rrayƃ�ǃ����DVSH��(1�D�ALD;AHH��H�qtJA�����wNH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CPty�CL�CH1�H��([^�fDH�icmUInt6dž�lowdž�H���H�4Array_aH���H�lloc: siH���H�ze overfH����H��([^�H�icmUInt6H�lloc: maH�lloc() oH���I�f icmUInH�4Array_aI�t64ArrayI� data faH���H���H����L���L���L���džiledƆdž���AUATUWVSH��(L�aI�͉�A�U�����M��$��H��L��A�H��H���A�E�E�E�E�E�ˆE���U����U����UA�EL��tjL�UE1ېI�EPE��A��N��A�@A�A�@A�BA�@��A�BA�@A�BA���A�ZA���A�ZA���A�ZA�A�BI��E9]Lw�I��$ ��H���P����H� failedI�icmUInt6H�4Array_wI��$�I��$H�rite fseH�ek() or I�fwrite()M��$�I��$�I��$�H��H��I��$�M��$��PADŽ$��H��([^_]A\A]�I��$ I��A�H��H���PH9��B���I��$H��H���P1��H�icmUInt6I�4Array_wI�rite getI�_size ov�I��$�M��$�M��$�M��$�ADŽ$�erflfADŽ$�owAƄ$�ADŽ$�H��([^_]A\A]�f.�H�icmUInt6H�loc() faADŽ$�iledI��$�H�4Array_wI��$�I��$�H�rite malAƄ$�I��$��ADŽ$�H��([^_]A\A]�DAUATUWVSH��8H�Y��H�ω�E����H��A��L��H���H��H���aH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmUInt6ǃ�failfǃ�edH���H�4Array_rƃ�H���H�ead: fseH���H�ek() or H���H�fread() H���H��H��H���Pǃ��H��8[^_]A\A]�I�icmUInt6I�4Array_rH�ead: TagH� too smaH�ll to be�L���L���H���H���H���ǃ� legfǃ�alƃ�ǃ�H��8[^_]A\A]�DH�icmUInt6H�4Array_rI�ead: malI�loc() fa�H���H���L���L���ǃ�iledƃ�ǃ�H��8[^_]A\A]Ã�H�����wL�W@��u`�U�M����M����M���9u[��t9��L�eL�,�1�@H��HOPL��H���D$(I���Ն��L9�D$(u�L��H��D$(L��A�P�D$(�a���I�icmUInt6H�4Array_rH�ead: WroI�ng tag tI�ype for H�icmUInt6L���H���H���L���L���H���ǃ�4Arrfǃ�ayƃ����f�VSH��(1�D�ALD;AHH��H�qtJA�����?wNH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CPty�CL�CH1�H��([^�fDH�icmUInt3dž�lowdž�H���H�2Array_aH���H�lloc: siH���H�ze overfH����H��([^�H�icmUInt3H�lloc: maH�lloc() oH���I�f icmUInH�2Array_aI�t32ArrayI� data faH���H���H����L���L���L���džiledƆdž���ATUWVSH�� L�aH�ˉ�S�����M��$��H��L��A�H��H������E�E�E�E�ˆE���U����U����U�CL��tHL�EE1��H�CPD��A��D��D��D��E�P����A�HD��A���A�HI��D9[Lw�I��$ ��H���P����H�fwrite()I�icmUInt3H�2Array_wI��$�H� failedH�rite fseI��$�I��$H�ek() or M��$�I��$�H��I��$�I��$�H���PADŽ$��H�� [^_]A\�DI��$ I��A�H��H���PH9��?���I��$H��H���P1���H�icmUInt3I�2Array_wI�rite getI�_size ov�I��$�M��$�M��$�M��$�ADŽ$�erflfADŽ$�owAƄ$�ADŽ$�H�� [^_]A\�H�icmUInt3H�loc() faADŽ$�iledI��$�H�2Array_wI��$�I��$�H�rite malAƄ$�I��$��ADŽ$�H�� [^_]A\�AUATUWVSH��8H�Y��H�ω�E����H��A��L��H���H��H���aH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmUInt3ǃ�failfǃ�edH���H�2Array_rƃ�H���H�ead: fseH���H�ek() or H���H�fread() H���H��H��H���Pǃ��H��8[^_]A\A]�I�icmUInt3I�2Array_rH�ead: TagH� too smaH�ll to be�L���L���H���H���H���ǃ� legfǃ�alƃ�ǃ�H��8[^_]A\A]�DH�icmUInt3H�2Array_rI�ead: malI�loc() fa�H���H���L���L���ǃ�iledƃ�ǃ�H��8[^_]A\A]Ã�H�����wL�W@��ui�U�M����M����M���9ui��tBL�WPH�U1�D�D�JA��E�D�JA��E�D�JH��A��E�E��H��9�w�L��H��D$(L��A�P�D$(�X���DI�icmUInt3H�2Array_rH�ead: WroI�ng tag tI�ype for H�icmUInt3L���H���H���L���L���H���ǃ�2Arrfǃ�ayƃ����ff.�VSH��(1�D�ALD;AHH��H�qtNA�����?wNH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CP���CL�CH1�H��([^�f�H�icmUInt1dž�flowƆ�H���H�6Array_adž�H���H�lloc:: sH���H�ize overH����H��([^�DH�icmUInt1H�lloc: maH�lloc() oH���I�f icmUInH�6Array_aI�t16ArrayI� data faH���H���H����L���L���L���džiledƆdž����@ATUWVSH�� H�YH�Ή�V����L����H��L��A�H��I�����A�D$A�D$A�D$A�D$��A�D$��A�$���A�T$���A�T$D�FLE����H�FPE1�I�L$D�A����w4f�D��D�AA�����H��D9VL��L�FPD��E��A����v�H�16umber(I�icmUInt1H�6Array_wH���H�) failedH�rite: wrH���H��H�ite_UIntL���H���L��H���H���H��ƃ��Pǃ��H�� [^_]A\��H�� ��H���P���H�icmUInt1H�fwrite()H� failedH���H�6Array_wH���H���H�rite fseH���H���H�ek() or L��H���H��H���P�ǃ�H�� [^_]A\�f�H�_size ovH�icmUInt1H�6Array_wI�rite getH����H���H���L���ǃ�erflfǃ�owƃ�ǃ�H�� [^_]A\��H�� I��A�L��H���PH9�����H��L��H���P1�����I�icmUInt1I�6Array_wI�rite malH�loc() fa�L���L���L���H���ǃ�iledƃ�ǃ�H�� [^_]A\ÐAUATUWVSH��8H�Y��H�͉�E����H��A��L��H���H��H���aH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmUInt1I�6Array_rI�ead: fseI�ek() or I�fread() H���L���L���L���L���ǃ�failfǃ�edƃ�H��H��H���Pǃ��H��8[^_]A\A]�H�6Array_rI�icmUInt1ǃ� legH���H�ead: TagL���H���H� too smafǃ�alH���H�ll to beƃ�H����ǃ�H��8[^_]A\A]�DH�icmUInt1H�6Array_rH�ead: malI�loc() fa�H���H���H���L���ǃ�iledƃ�ǃ�H��8[^_]A\A]Ã�H����uL�U@��uJ��O����O����O���9UuJ��t#L�MP1��LWD�DW	��D�A��H��9�w�L��H���D$(L��A�P�D$(�x���DH�icmUInt1H�icmUInt1ǃ�6ArrH���H�6Array_rH���H���H�ead: Wrofǃ�ayH���H�ng tag tƃ�H���H�ype for H�������ff.�WVSH�� �QH1�H�qH�˅����AR�QP�����CT1�f����f���{H�icmVideodž� sizfdž�eH���H�CardGammdž�H���H�a_alloc:H���H� unsuppoH���H�rted tabH���H�le entryH����H�� [^_Å��N��������CTf���K�����H�SXH��tL��L��A�PH��H��H���H��H�CX1�H��u�I�icmVideoI�CardGammI�a_alloc:I� malloc(H�) of tabH�le data L���L����L���L���H���H���dž�failfdž�edƆ�dž�����fD1����(��������wɉ�����DH�icmVideoH�a_alloc:H� size ovH���H�CardGammH���H���H����dž�erflfdž�owƆ�dž��{���fffff.�AUATUWVSH��8H�Y��H�͉�E����H��A��L��H���H��H���aH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmVideoH�fseek() H�or freadH���H�CardGammI�() faileH���H�a_read: H���H���H���L���fǃ�dH��H��H���Pǃ��H��8[^_]A\A]�H�icmVideofǃ�lǃ�H���H�CardGammH���H�a_read: H���H�Tag too H���H�small toH���H� be legaH����H��8[^_]A\A]�DI�icmVideoI�CardGammI�a_read: H�malloc()H� failed�L���L���L���H���H���ǃ�H��8[^_]A\A]���V����V����V���9E�K�F�V	����V
����V��Ѕ��EH�N�F�V
���f�EP���F�V���f�UR�F��D�F��D�f�ET�����i���aA��D��1�����u%��t!1Ҹ����A��9��;���A�ȃ�9��,���H��U@����EP�URL�EX�…��cH�VM��1��ETf���4f����H�icmVideoH�CardGammI�a_read: I�unsupporI�ted tablI�e entry H���H���H��L���L���L���L���ǃ�sizeƃ��U0�8���@������/@�J���f�EP�F�V
�T�/����V����V����*��Y��MX�F�V����V����V����*��Y��M`�F�V����V����V����*��Y��Mh�F�V����V����V����*��Y��Mp�F�V����V����V����*��Y��Mx�F �V!����V"����V#����*��Y�����F$�V%����V&����V'����*��Y�����F(�V)����V*����V+����*��Y�����F,�V-����V.����V/����*��Y����H��H��H���P1����H�g type fH�icmVideoH�CardGammH���H�or icmViI�a_read: I�Wrong taH���H�deoCardGH���H���L���L���H���ǃammaƃ�����E1�����D�RH����D�fA�I���EPD�UR��A��9����������H��A�I����H�icmVideoI�CardGammI�aTable_rI�ead: UnkI�nown gamH�ma formaH�t for icI�mVideoCaI�rdGammaH���L���L���L���L���H���H���L��L�����L��H��D$(L��A�P�D$(�������f.�VSH��(�AT;AHH��H�qtI=���wUH�QXH��tH��H���P�CTL����A�L��A�QH��H�CX��CT�CH�C`;CL��=���vaH�icmUcrBgƆ�dž�H���H�_allocatH���H�e: size H���H�overflowH����H��([^�H�ShH��tH��H���P�C`L����A�L��A�QH��H�Ch�u�C`�CLD�Cp1�D;CPt�H�SxH��tH��H���PD�CpH��D��A�H���PH��H�Cx���Cp�CP1�H��([^�@H�icmUcrBgH�c() of UH�CR curveH���H�_allocatI� data faH���H�e: malloH���H���H����L���dž�iledƆ�dž�����DH�icmUcrBgH�e: malloH�c() of sH���I�tring daH�_allocatI�ta faileH���H���H���L����L���fdž�ddž��H���H�c() of BI�icmUcrBgI�_allocatH���H�G curve H�e: malloH���H�data faiL���H���L����H���dž�leddž�����f�VSH��(1�D�ALD;AHH��H�qtNA�����wNH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CP���CL�CH1�H��([^�f�H�verflowI�icmU16FiI�xed16ArrI�ay_allocH�: size oH����L���L���L���H���dž�H��([^�DH�icmU16FiH�mU16FixeH�d16ArrayH���H�xed16ArrI� data faH���H�ay_allocH���H���H�: mallocH���H���H�() of icL��H���džiled�Ɔdž�����ATUWVSH�� H�YH��A��V����CL����H��L��A�H��H������G�G�G�G�ˆG�������W����W�NL���<H�FP�o�/�
W�/�g�/��Y��X�f.�sefW�1�L�Gf.�v�Sf.�wM�H,�����A�@��A����A�P���A�PI��9NL��L�VP���A��Y��X�f.�r�L��H�) failedI�icmU16FiI�xed16ArrI�ay_writeH�: write_H�U16FixedI�16umber(H���L���L���H��L���H���L��H���L���ƃA�Pǃ��H�� [^_]A\�H�� D��H���P���H�icmU16FiH�te() faiǃ�ledH���H�xed16ArrH���H���H�ay_writeH��H���H� fseek()H���H� or fwriH���H��H���P�ǃ�H�� [^_]A\�H� get_sizH�icmU16FiH�xed16ArrH���H�e overflI�ay_writeH����H���H���L���fǃ�owƃ�ǃ�H�� [^_]A\�H�� I��A�H��H���PH9�����H��H��H���P1����DI�icmU16FiI�xed16ArrI�ay_writeI� malloc(H�) failed�L���L���L���L���H���ƃ�ǃ�H�� [^_]A\�f.�AUATUWVSH��8H�Y��H�ω�E����H��A��L��H���H��H���sH�� D��H���P��u"H�� M��A�H��H���PI9���I�icmU16FiI�xed16ArrI�ay_read:H� fseek()H� or freaI�d() failL���L���L���H���H���L���fǃ�edƃ�H��H��H���Pǃ��H��8[^_]A\A]�f�H�icmU16FiH�ay_read:H� Tag tooH���H�xed16ArrI� small tH���I�o be leg�H���H���L���L���fǃ�alƃ�ǃ�H��8[^_]A\A]�H�xed16ArrI�icmU16Fiƃ�H���H�ay_read:L���H���H� malloc(ǃ�H���H�) failedH����H��8[^_]A\A]�fD��H�����wL�W@���|�U�M����M����M���9uw��tUL�WPH�U1��
@�/D�D�JA��E�D�JA��E�D�JH��A��E��I*��Y��A�H��9�w�L��H��D$(L��A�P�D$(�)���H�icmU16FiH�ag type H�for icmUH���H�xed16ArrI�16Fixed1H���H�ay_read:H���H���H� Wrong tH���H���L���ǃ6Arrfǃayƃ�t���f�VSH��(1�D�ALD;AHH��H�qtAH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CPt�CL�CH1�H��([^�H�of icmTeI�icmText_I�alloc: mH���H�xt data H�alloc() H����L���L���H���dž�failfdž�edƆ�dž�H��([^�f.�ATUWVSH�� H�qH�ω�W�����L��A��L��L��A�H��H������C���C�C�C�ȈK�������C����C�OH�ȈK���C����C	����C
H�� H���P���H�icmSignaH�rite() fdž�aileH���H�ture_wriH���H���H�te fseekfdž�dH���H�() or fwH��H���H��H���Pdž��H�� [^_]A\�H�icmSignaI�ture_wriI�te malloI�c() fail�H���L���L���L���fdž�edƆ�dž�H�� [^_]A\ÐH�� M��A�H��H���PI9�����H��H��H���P1��M����I�icmSignaH�ture_wriH�te get_sH�ize over�L���H���H���H���dž�flowƆ�dž�H�� [^_]A\ÐATUWVSH�� H�Y��H��E����H����H��H���H��H���FH�� D��H���P��u"H�� I��A�H��H���PH9���H�icmSignaH�ture_reaH�d: fseekI�() or frI�ead() faH���H���H���L���L���ǃ�iledƃ�H��H��H���Pǃ��H�� [^_]A\�H�d: Tag tH�icmSignaI�ture_reaH���H�oo smallH���H���H� to be lL���H����ǃ�egalƃ�ǃ�H�� [^_]A\�I�icmSignaI�ture_reaH�d: malloH�c() fail�L���L���H���H���fǃ�edƃ�ǃ�H�� [^_]A\�f���V����V����V���9trH�turSignaI�icmSignaƃ�H���H�tureng tL���H���H�ag type H���H�for icmSH���H�ignatureH����R����F�V	����V
����V���H��GHH��H���P1��8���VSH��(D�AP1�H�qD;AHH��tHA�����
wNH�QXH��tH��H���PD�CPH��K�@H��H���H��H�CXtz�CP�CH1�H��([^��H�icmScreeH� overflofdž�wH���H�ning_allH���H���H�oc: sizedž�H����H��([^�H�a failedH�icmScreeI�ning_allI�oc: mallI�oc() of I�icmScreeH�ning datH���H���L���L����L���L���H���Ɔdž����ff.�D�
�P3L��P3�gfffIc�A��H��H��I�D���D����)�A)��D�
|P3��H�Default A�@ScrefA�@enI�A�@L��D�H��A������A��D!ʁ ��t�A��A���€�AD�L�HID��I�, Lines H����L�uE�@Per f�@cm�@L���I�No DefauI�lt ScreefA�@nM�M�X�t���f�H�Per Inch�@H�PL���f.�ATUWVSH��0H�Y��H��E����H����H��H���H��H���FH�� D��H���P��u"H�� I��A�H��H���PH9���H�ning_reaI�icmScreeǃ�iledH���H�d: fseekL���H���H�() or frƃ�H���H�ead() faH���H��H��H���Pǃ��H��0[^_]A\�I�icmScreeI�ning_reaI�d: Tag tI�oo smallH� to be l�L���L���L���L���H���ǃ�egalƃ�ǃ�H��0[^_]A\�H�icmScreeH�d: malloH�c() failH���H�ning_reaH���H����H���fǃ�edƃ�ǃ�H��0[^_]A\�f���V����V����V���9t~I�icmScreeI�ning_reaI�d: WrongI� tag typH�e for icH�mScreeniL���L���L���L���H���H���fǃ�ngƃ��I����F�V	H������V
����V��ЉGL�F�V
����V����V��ЉGP�W@����WP���L�FH�L9��H��L)�H�����H�OXH�R�
�v/H�T��*f�I��L9���I��H��M)�I����E�E�PA��E�E�PA��E�E�PA��E��A*��Y��E�HE�PA��E�E�PA��E�E�PA��E��A*��Y��AE�HE�P	A��E�E�P
A��E�E�PA��E�I9�D�I�=���L��H��D$(L��A�P�D$(���H�icmScreeH�d ScreenH�ing DataH���H�ning_reaH���H���H�d: Data H���H���H�too shorƃH���H�t to reaH����B���fff.�VSH��(1�D�ALD;AHH��H�qtNA�����wNH�QPH��tH��H���PD�CLH��D��A�H���PH��H�CP���CL�CH1�H��([^�f�H�icmS15Fidž�H���H�xed16ArrH���H�ay_allocH���H�: size oH���H�verflowH����H��([^�DH�icmS15FiH�xed16ArrH�ay_allocI�: mallocI�() of icI�mS15FixeI�d16ArrayH� data faH���H���H����L���L���L���L���H��džiledƆdž�����AUATUWVSH��8H�Y��H�ω�E����H��A��L��H���H��H���sH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmS15FiH� fseek()H� or freaH���H�xed16ArrI�d() failH���H�ay_read:H���H���H���L���fǃ�edƃ�H��H��H���Pǃ��H��8[^_]A\A]�f�H� Tag tooH�icmS15FiI�xed16ArrH���H� small tI�ay_read:H���H�o be legH���H����L���L���fǃ�alƃ�ǃ�H��8[^_]A\A]�I�icmS15FiI�xed16ArrI�ay_read:H� malloc(H�) failed�L���L���L���H���H���ƃ�ǃ�H��8[^_]A\A]�fD��H�����wL�W@���|�U�M����M����M���9uw��tUL�WPH�U1��
q/D�D�JA��E�D�JA��E�D�JH��A��E��A*��Y��A�H��9�w�L��H��D$(L��A�P�D$(�)���H�ag type H�icmS15FiH�xed16ArrH���H�for icmSI�ay_read:I� Wrong tH���H�15Fixed1H���H���L���L���H���ǃ6Arrfǃayƃ�t���f�VSH��(�A`;AHH��H�qtBH�QhH��tH��H���P�C`L����A�L��A�QH��H�Ch���C`�CHD�Ct1�D;CLtNA�����wTH�SxH��tH��H���PD�CtH��D��A�H���PH��H�Cx�,�Ct�CL1�H��([^��H�icmTextDH�: size oH�verflowH���H�escriptiH���H���H�on_allocH���H����dž�H��([^�DH�icmTextDH�: mallocH�() of AsH���H�escriptiI�cii descH���I�ription H�on_allocH���H����H���L���L���džfailfdžedƆdž�����H�icode deI�icmTextDI�escriptiH���H�scriptioI�on_allocI�: mallocH�() of UnH���H�n failedL���L���H��L����L���H���Ɔdž��9����ATUWVSH��0H�qH��A��S�����L����H��L��A�H��H���H��H�D$(H�T$(�SX������H�� D��H���P����H�te() faiH�on_writeI�icmTextDH���H��I�escriptiH���H� fseek()I� or fwri�L���L���H��H���L���dž�ledH���P��dž�H��0[^_]A\�@H�� I��A�H��H���PH9��>���H��H��H���P��H��0[^_]A\ÐH�icmTextD�Ɔ�H���H�escriptidž�H���H�on_writeH���H� malloc(H���H�) failedH�����H��0[^_]A\���H�icmTextDH�escriptiI�on_writeI� get_sizI�e overfl��H���H���L���L���L���fdž�owƆ�dž�H��0[^_]A\�ffffff.�ATUWVSH��@H�Y��H��E���H����H��H���H��H���vH�D$8H�� D��H���P��u$H�� I��A�H�T$8H���PH9���H� or freaI�icmTextDH�escriptiH���H�d() failH�on_read:H���H��I� fseek()L���H���H��H���L���H��fǃ�edƃ��Pǃ��H��@[^_]A\�f�H�icmTextDI�escriptiI�on_read:I� Tag tooI� small tH�o be leg�H���L���L���L���L���H���fǃ�alƃ�ǃ�H��@[^_]A\�H�icmTextDH�) failedƃ�H���H�escriptiH���H���H�on_read:ǃ�H���H� malloc(H����H��@[^_]A\�f.�H�T$8L�.H���WPL��H��D$(L��A�P�D$(���AWAVAUATUWVSH��HL�iH�Ή�$��V�����M����H�D$(H��L��A�H��I����H�D$8���A�D$��A�$���A�T$���A�T$H�D$8�@�@�@�@�VLH�D$8�шP���H����H	����H
�VLH��H�D$8����H�|$81��A��Mi��L~PA�W�шP�������H����HA�W�шP���H����H����HA�W�PA�W�P	A�W���P
A�W�PA�W�PA�W�P
A�W���PA�W�PA�W �шP���H����H����HE���H��H�D$8I���E��uH�k</ALJ�I���I�O(H��A�����uoE���E��XI���I��`E��uH�</ALJXI��`I���H��A��P��u ��9^LI��`E��Xv8H�D$8���M��L��D$ L��A�P�D$ H��H[^_]A\A]A^A_�@I�� ��$�H���P���4H�ek() or H�icmProfiH�leSequenI���H�fwrite()I�ceDesc_wI���H� failedI�rite fseI���I��L��I���I���M���M���H���PADž���3����H�icmProfiH�leSequenH�ceDesc_wH�rite getI�_size ovI���I���I����I���M���ADž�erflfADž�owAƅ�ADž����f�I�� L�L$(A�L��H���PH9D$(�����I��L��H���P1��^���H�icmProfiI�leSequenI�ceDesc_wI�rite malI�loc() faI���M���M����M���M���ADž�iledAƅ�ADž�����AWAVAUATUWVSH��HH�Y��H��E���
H����H��H���H��H����H�D$8H�� D��H���P��u$H�� I��A�H�T$8H���PH9���I�icmProfiH�leSequenH�ceDesc_rI�ead: fseI�ek() or I�fread() L���H���H���L���L���L���ǃ�failfǃ�edƃ�H��H��H���Pǃ��H��H[^_]A\A]A^A_�H�icmProfiH�ceDesc_rH�ead: TagH���I� too smaH�leSequenI�ll to beH���H���H���L����L���ǃ� legfǃ�alƃ�ǃ��X���H�leSequenI�icmProfiǃ�iledH���H�ceDesc_rL���H���H�ead: malƃ�H���H�loc() faǃ�H��������f�H�D$8��H����H����H���9��H�icmProfiH�ead: WroH�ng tag tH���H�leSequenI�ype for H���I�icmProfiH�ceDesc_rI�leSequenH���H���H���L���L���L��ǃceDefǃscƃ����P�H	����H
����HH����H�D$8�H��VL�V@�����FL����L�</H�l$8L�fPI9�I�$rL��E1�L�l$8H)�H����H� too shoI�icmDescSI�truct_reI�ad: DataH���H�rt read H���L����L���L���ǂ�headfǂ�erƂ�H�l$8ǂ�L��H���D$(L��A�P�D$(����E�UI�L$����U����U���A�D$�E�U����U����U���H�UA�D$�?���E�UI�L$(M������U����UH����H�l$8�L��A�D$ A�T$x���G���I��$�M��L��A��$H���)���A��D9vLv8E��H�l$8Mi��LfPI9�I�$�|���L��H)�H���l�������H��H��H���P1����f�VSH��(1�D�APD;AHH��H�Yt}A���,dw~H���H��tH��H���PD�FPH��D��A��H���PH��H�����D�FPE��t"A�H�1�H��Hiɸ�H�H�¸H9�u�D�FH1�H��([^�H�e overflI�icmNamedI�Color_alH�loc: sizH����L���L���H���fǃ�owƃ�ǃ�H��([^�fDH�icmNamedH�dColor dH�ata failH���H�Color_alH���H���H�loc: malH���H���H�loc() offǃedH���H� icmNameƃH���ǃ�����DATUWVSH��0H�Y��#H��E����H����H��H���H��H���fH�� D��H���P��u"H�� I��A�H��H���PH9���H�icmMeasuH�ek() or H�fread() H���H�rement_rH���H���H�ead: fseH���H���ǃ�failfǃ�edƃ�H��H��H���Pǃ��H��0[^_]A\��H�ll to beH�icmMeasuH�rement_rH�ead: TagI� too smaH����H���H���H���L���ǃ� legfǃ�alƃ�ǃ�H��0[^_]A\��I�icmMeasuI�rement_rI�ead: malI�loc() fa�L���L���L���L���ǃ�iledƃ�ǃ�H��0[^_]A\Ð��V����V����V���9��H�ng tag tH�icmMeasuH�rement_rH���H�ype for I�ead: WroH���H�icmMeasuH���H���L���H���ǃ�remefǃ�ntƃ��$���D�F�V	H�OP����V
����V���H�V�GH�B�������V�NL������N����N��ʉWh�V�N����N����N����H*��YZ/�Gp�V �N!����N"����N#���L���Wx�D$(H��A�P�D$(�t���fDI�icmMeasuI�rement: I�read_XYZL���L��I�Number eL���L���H��L���ǃ�rrorƃ�L���D$(A�P�D$(�������UWVSH��(H�qH�ˋ��	�������D���	A���%D���	1�E����9����������,H���	H��t
H��H���PH����A�H���PH��H���	�����	1҉��D���	D���	A����vE��A�A�����@���3@��u31�D��A��A9��CE��A����RE���ƒ��.E��uȺE1���1Ҹ����A��9���I�icmLut_aI�lloc sizH�e overfl�L���L���H���fdž�owƆ�dž�H��([^_]�H�icmLut_adž�lowdž�H���H�lloc: siH���H�ze overfH����H��([^_]�H���H��,/E1��P1�dž�H��([^_]�D�����������9���*���D���	���1�A�����E����������1Ҹ����A��D9�����D��A����������9��t]���������H���	H��t
H��H���PH����A�H���PH��H���	�D���	���E�����ɋ��	������1Ҹ������D9��/���A������"���9�	tW������i���H��
H��t
H��H���PH����A�H���PH��H��
��D���	��	D���	A�@�E�P�A9�F�\�H� D���	�H�ƒ��L�HA��A9��L�Hw�ǃ�J�|�H���H��A�DE��t8A�S�D�VHH���H�L�D��@D�H��A�Ѓ�E�H9�F����u�H��E�H9�u�1�H��([^_]�1��K���H���H��*/A��/�dž�H��([^_]�H���H��*/A���.�dž�H��([^_]�1��|���H�icmLut_aH�lloc() oH�f Lut inH���I�putTableH�lloc: caI� data faH���H���H���L����L���dž�iledƆ�dž����H�icmLut_aH�lloc() oH�f Lut ouH���I�tputTablH�lloc: caI�e data fH���H���H���L����L���dž�ailefdž�ddž��-���1�E��ǃ����������f.�H�lloc() oH�icmLut_aH�lloc: caH���H�f Lut clH���H���H�utTable H���H���H�data faidž�ledH���dž�����1����DAVAUATUWVSH�� H�Y��H�͉�E����H��A��L��H���H��H���?H�� D��H���P��u"H�� M��A�H��H���PI9��iH�icmLut_rI�ead: fseI�ek() or I�fread() H���L���L���L���ǃ�failfǃ�edƃ�H��H��H���Pǃ���H�� [^_]A\A]A^�H�icmLut_rI�ead: TagI� too smaI�ll to beH���L���L���L����ǃ� legfǃ�alƃ�ǃ��}���f�H�loc() faI�icmLut_rH�ead: malH���L����H���ǃ�iledƃ�ǃ�������D�^��A��FA��A��FA��A�A��ϋ��D�]����A��1tfm�[��3�[�FD���E�퉅�	�F	���	�F
���	t��u
Dž�	�
�P/I��E1�E��1�D��A��H�D�D�`��D�D�`�@��D����*��Y��A��	H��H��u�A��I��A��$u�A��1tfm��F0�V1L�f4��Љ��	�F2�V3��Љ��	H����A�����t9��$I�icmLut_rI�ead: TagH� wrong sH�ize for I�contentsL���L���H���H���L���ƃ��W���f���/�����H�ead: TagI�icmLut_rǃ� legH���H� too smaL���H���H�ll to befǃ�alH������H�icmLut_rH�ype for ǃ�icmLH���H�ead: WroH���H���H�ng tag tfǃ�utH������H��U@�����wD���	D���	D�]E��A��1tfm�E��tHL���	�
�N/1�fDA�DA�LD����H*��^��A�H��A9�w�A��O�dLE��D���	D���	�tLE��A�����A���(�E��u1�D��A��9�rA�Ƀ��tA��t��u�1���������A��A��1tfm����tFL���	�
N/1�DA�DE�DD��D��H*��^��A�H��9�w؃�M�dLD���	E��t;L��
�
�M/1�f�A�DA�LD����H*��^��A�H��A9�w�H��H��H���P����Dž�	Dž�	L�f0��������L���	�
M/1�f.�A��H*��^��A�H��9�w�D���	��M�dE���s���H��
�
�L/1�f.�A��H*��^���H��A9�w��7���E���'���H���	�
�L/1�DA��H*��^���H��A9�w�A��O�d���D���	�e���f�ATUWVSH��0H�Y��H��E����H����H��H���H��H���fH�� D��H���P��u"H�� I��A�H��H���PH9���H�icmDateTH�fseek() H�or freadH���H�imeNumbeI�() faileH���H�r_read: H���H���H���L���fǃ�dH��H��H���Pǃ��H��0[^_]A\��H�r_read: H�icmDateTI�imeNumbeH���H�Tag too H���H���H�small toL���H���H� be legafǃ�lH����ǃ�H��0[^_]A\��I�icmDateTI�imeNumbeI�r_read: H�malloc()H� failed�L���L���L���H���H���ǃ�H��0[^_]A\Ð��V����V����V���9��H�g type fI�icmDateTH�imeNumbeH���H�or icmDaH�r_read: I�Wrong taH���H�teTimeNuL���H���H���L���H���ǃmberƃ����H�VH���a6����uL��H��D$(L��A�P�D$(�
���I�r_read: H�icmDateTH�imeNumbeL���L��I�CorrupteI�d DateTiH���H���L���L���H��fǃ�meƃ�L���D$(A�P�D$(������fDVSH��(1�D�APD;AHH��H�qtAH�QXH��tH��H���PD�CPH��D��A�H���PH��H�CXt�CP�CH1�H��([^�H�icmData_H�alloc() H�of icmDaH���H�alloc: mI�ta data H����H���H���L���dž�failfdž�edƆ�dž�H��([^�f.�VSH��(���H�qH�˃���	���}����D���1�D9CHt^A�����vnI�icmCurveI�_alloc: I�size oveL���L����L���dž�rflofdž�wdž�H��([^�ǁ�E1����H���H��tH��H���PD���H��D��A�H���PH��H���������CH1�H��([^�Dǁ�A�����H�icmCurveH�_alloc: H�flag notH���H����H���dž� setƆ�dž�����H�_alloc: H�icmCurveƆ�H���H�malloc()H���H���H� of icmCdž�H���H�urve datH���H�a failedH�������ffffff.�ATUWVSH��0H�yH�Ή�V����AL��A��L��L��A�H��H������C�C�C�C�ȈK�������C����C����ȈK���C����C	����C
�������������)H�� ��H���P���H��I�icmCurveI�_write fI�seek() oI�r fwriteH�() faileL���L���H��H��L���L���H���fLJ�d�PLJ��H��0[^_]A\�f.�������E�������wH����%jD/�zD/��D/�f(��Y��X�f.�rL�L$(L�D$(H���f(�H��/�H��H��H���P�LJ�H��0[^_]A\�fW�1�H�Cf.�w��H,ȃ�A�ȈHA��D�H��9�������H���A���B�f(��Y��X�f.��Y���f.�v��N���f.�H�icmCurveH�_write gI�et_size I�overflow�H���H���L���L���Ƈ�LJ�H��0[^_]A\�H�� M��A�H��H���PI9�����H��H��H���P1��=���f�H�icmCurveLJ�failfLJ�edH���H�_write mƇ�H���H�alloc() LJ�H����H��0[^_]A\�f������H����lB/��Y��XdB/f.lB/��fW�f.����H,��ˆC
���S����H�0 entry I�icmCurveH�_write: H�Must be I�exactly H���H�for LineL���H���H���L���H���fLJ�arƇ��{���D�L$(H���L�D$(f(�H�+/�O���H�icmCurveH�_write: H�Must be I�exactly I�1 entry I�for GammH���H���H���L���L���L���fLJ�a���H�Must be H�icmCurveI�_write: H���H�2 or morH���H���H�e entrieL���H���H�s for SpLJcurvH���H�ecified fLJeH����Q���ff.�AUATUWVSH��8H�Y��H�͉�E����H��A��L��H���H��H���AH�� D��H���P��u"H�� M��A�H��H���PI9��{H�icmCurveH�_read: fI�seek() oI�r fread(H�) failedH���H���L���L���H���ƃ�H��H��H���Pǃ��H��8[^_]A\A]�H�icmCurveH�ag too sH�mall to H���H�_read: TI�be legalH����H���H���L���ƃ�ǃ�H��8[^_]A\A]��H�icmCurveǃ�failfǃ�edH���H�_read: mƃ�H���H�alloc() ǃ�H����H��8[^_]A\A]����V����V����V���9E���F�V	����V
����V��Ѕ����tp�����Dž���9��wH��U@��u���I�H�V��������L��H��D$(L��A�P�D$(�I���f�Dž��@H�icmCurveI�_read: WI�rong tagI� type foI�r icmCurH���L���L���L���L���fǃ�veƃ����fDI9��1I)�M���%�VD�F
H�����D��H*��Y=/�����������
���I9�rjM��I)�I��~^��L���L�TN�
�</��L��I��H)�H��~.�
D�J��D�L9��H*��^��A�����H��I9�s�I�icmCurveI�_read: DH�ata too H�short foI�r curve L���L���H���H���L���ǃ�valufǃ�e�v���Dž����H�_read: DI�icmCurveǃ�gammH���H�ata too L���H���H�short fofǃ�aH���H�r curve H������H�icmCurveH�ize overǃ�flowH���H�_read: sH���H���ƃ����UWVSH��(�A\;AHH��H�ytBH�Q`H��tH��H���P�F\L����A�L��A�QH��H�F`���F\�FH1ۋD�h;D�L��tCH�T�xH��tH��H���P�D�hL����A�L��A�QH��H�D�xt�D�h�D�LH��H��u�1�H��([^_]ÐH���H�b/A����LJ�H��([^_]�f�I�icmCrdInI�fo_allocI�: mallocH�() of stH�ring datH�a failedL���L����L���H���H���H���Ƈ�LJ��E���ffffff.�VSH��(1�D�ALD;AHH��H�YtiA�����wnH�QPH��tH��H���PD�FLH��D��A�@H���PH��H�FPte�NL��tD�A�1�I��I��H�H��@L9�u�NH1�H��([^��H���H�J/A�@��ǃ�H��([^ÐH�icmColorH�able datH�a failedH���H�antTableH���H���H�_alloc: H��H���H�malloc()ƃH���H� of icmCǃ�H���H�olorantTH��������ffff.�VSH��(1�D�APD;AHH��H�qtAH�QXH��tH��H���PD�CPH��D��A�H���PH��H�CXt�CP�CH1�H��([^�H� data faI�icmUnknoI�wn_allocI�: mallocI�() of icH�mUnknownH����L���L���L���L���H���dž�iledƆ�dž�H��([^�f�ATUWVSH�� L�aH�ˉ�S����qM��$��H��L��A�H��H�����CL�E�E�E�E�ˆE���U����U����U�SP��t*L�UE1�fDL�[XD��A��A�A�
I��D9CPw�I��$ ��H���P����H�icmUnknoADŽ$�ledH��I��$�H�wn_writeI��$�H� fseek()I��$�H� or fwriI��$�H�te() faiI��$�I��$H���PADŽ$��H�� [^_]A\��I��$ I��A�H��H���PH9��B���I��$H��H���P1���I�icmUnknoH�wn_writeH� get_sizH�e overfl�M��$�I��$�I��$�I��$�fADŽ$�owAƄ$�ADŽ$�H�� [^_]A\��H�icmUnknoI�wn_writeI� malloc(I�) failed�I��$�M��$�M��$�M��$�AƄ$�ADŽ$�H�� [^_]A\�AUATUWVSH��8H�Y��H�Ή�E����H��A��L��H���H��H���RH�� D��H���P��u"H�� M��A�H��H���PI9���H� fseek()I�icmUnknoI�wn_read:H���H� or freaL���H���H�d() failL���H���H��H��fǃ�edƃ�H���Pǃ��H��8[^_]A\A]�f.�H�icmUnknoI�wn_read:I� Tag tooI� small tI�o be leg�H���L���L���L���L���fǃ�alƃ�ǃ�H��8[^_]A\A]�H�icmUnknoH�) failedƃ�H���H�wn_read:H���H���H� malloc(ǃ�H����H��8[^_]A\A]����H��~P�V@��up�U�M����M����M��ʅ��VLt 1��D�DH�NXD�H��9�w�H�VL��H���D$(H��A�P�D$(�}���@L��H��D$(L��A�P�D$(�[���f�SH�� �Yc2/H���XH2/��f.[2/�s.�
T2/f.�w �,��ˆC�������S��1����SH�� [�ATUWVSH��0H�iH�Ή�V�����L��A��L��L��A�H��H���"��C�C�C�C�ȈK�������C����C�NH�ȈK���C����C	����C
�FH�����FP�ˆC
���S�FR�ˆC���S�FT�ˆC���S�FP�VRL�FX�…��H�SM��1��FTf���ef����I�icmVideoI�CardGammH�a_write:H� unsuppoI�rted tabH�le entryL���L���H���H���L���H���Dž� sizfDž�e�f.�����H�icmVideoH�rite: UnH�known gaH���H�CardGammI�mma formH���I�at for iH�aTable_wI�cmVideoCI�ardGammaH���H���H���L���L���L��L��ƅH��H��H���PDž��H��0[^_]A\�A�I���H���FPD�VR��A��9��g����tf�A�I��A�ˆBA��D�H����DH�icmViewiH�ngConditI�ions_wriI�te get_sI�ize over�H���H���L���L���L���Dž�flowƅ�Dž�H��0[^_]A\�H�S�FX�r������zH�S�F`�\������dH�S�Fh�F������NH�S�Fp�0������8H�S�Fx�������"H�S ����������	H�S$����������H�S(�����������H�S,���������'H�� ��H���P����H�te fseekH�icmViewiH�ngConditH���H�() or fwI�ions_wriH���H�rite() fH���H���H��H��H���L���Dž�ailefDž�dH���PDž�����f.�H�icmVideoH�CardGammI�a_write:H� write_SH�15Fixed1I�6Number(I�) failedH���H���L���H���H���L���L���ƅL��H�ډD$(L��A�P�D$(���H��0[^_]A\��H�icmViewifDž�edƅ�H���H�ngConditDž�H���H�ions_wriH���H�te malloH���H�c() failH����H��0[^_]A\ÐH�� M��A�H��H���PI9�����H��H��H���P1��/���H���H�5!/�9H������f.�AWAVAUATUWVSH��(H�qI�̉T$xA�T$����WL��A��L��L��A�H��H����A�$�G�G�G�G�ˆG�������W����WA�D$L�ˆG���W����W	����W
A�D$P�ˆG���W����W
����WA�D$P���H�oE1�D��H��H�@I�D$XH����z�����A����L��I�icmScreeH�ning_wriH�te: writI�e_ScreenI�ingData(I�) failedL���H���H���L���H��L���L���L��Ɔ�A�PD���D��H��([^_]A\A]A^A_�fDH�U�C������A���H����CA���ˆE���U����U	����U
H��E9l$P��H�� �T$xH���P����H�ning_wriI�icmScreedž�aileH���H�te fseekL���H���H�() or fwfdž�dH���H�rite() fH��H���H��A�H���Pdž����I�icmScreeI�ning_wriH�te get_sH�ize overL���L���H���H���A�dž�flowƆ�dž����fDH�� M��A�H��H���PI9����H��H��E1�H���P�L���fDH�icmScreeH�ning_wriI�te malloI�c() failH���H���L���L���A�fdž�edƆ�dž������AWAVAUATWVSH��0L�iH��A��W����M��A��L��L��A�H��I�����A�D$A�D$A�D$A�D$��A�D$��A�$���A�T$���A�T$�wL����I�t$1����H��9_L��H�GP����H���	�����t�I�ay_writeH�icmS15FiH�xed16ArrM���M��I�: write_I�S15FixedI�16umber(H�) failedI���I���L��M���M���L��M���I���Aƅ�D$(A�P�D$(A���H��0[^_A\A]A^A_�fDI�� D��H���P���8H�ay_writeI�icmS15FiI�xed16ArrI���H� fseek()M���I���H� or fwriM���I���H�te() faiADž�ledI���I��L��H���P�ADž�H��0[^_A\A]A^A_��H�icmS15FifADž�owAƅ�I���H�xed16ArrADž�I���H�ay_writeI���H� get_sizI���H�e overflI����H��0[^_A\A]A^A_�f�I�� M��A�L��H���PI9������I��L��H���P1��a����H�) failedH�icmS15FiI�xed16ArrI�ay_writeI� malloc(I����I���M���M���M���Aƅ�ADž�H��0[^_A\A]A^A_�AWAVAUATUWVSH��8H�yH�Ή�$��V����vL����H�D$(H��L��A�H��H������C�C�C�C�ˆC�������S����S���	=���I�icmLut_wH�rite: wrH�ite_UIntI�8Number(I�) failedL���H���H���L���L���Ƈ�H��H�ڽH���PLJ���H��8[^_]A\A]A^A_���C���	=��V����C	D������	E��t=�==��+����C
�CI��E1�E��E1�D���C�%�	H�T�����I��A��I��u�A��I��A��$u��>1tfm�������	=�����	���ˆC1���S0���	=�����ˆC3H�K4���S2���	���	D�>A����A��1tfm�����YH���	�%H"/�
X"/�`"/�*f(��Y��X�f.����l$ L�D$ H���f(�H���.��U����C
����fDH�_size ovH�icmLut_wH�rite getH���H����H���LJ�erflfLJ�owƇ�LJ�����I�icmLut_wI�rite malI�loc() faL���L����L���LJ�iledƇ�LJ�����H�icmLut_wH�ut and OH�utput taH���H�rite: 16I�bles musH���I�t each bH� bit InpI�e less tI�han 4096H� entriesH���H���H���L���L���L��L��H��Ƈ����f.���H�icmLut_wH�ixed16NuH���H�rite: wrH�mber() fH���H�ite_S15FH���H���H��H��H���LJ�ailefLJ�dH���P����`������	�K���	�;���	H�K0�������H���	�%u/�
�/��/��Y��X�f.��OfW�f.��A�L,�H�Q��A�H�H9�D�	H��tAL���	�C�Y��X�f.��I��f.����L,�H��H9�D�	H��u�D���	D�>E��D���	D���	A��?E��A�����A���8f.�E��u.1�D��A��A9��
E��A����A����E��u�E1����H�les mustH�icmLut_wI�rite: 8 H���H� be 256 I�bit InpuI�t and OuI�tput tabH���H�entriesH���L���L���L���L���H���Y���H�icmLut_wH�rite: wrI�ite_UIntI�16NumberI�() faileH���H���L���L���L���fLJ�d��fW�f.��i������L�LC6�H,�A���AA��D�H��L9��S���H���	�,f(��Y��X�f.�����H��f.�v�����f�H�icmLut_wfLJ�edƇ�H���H�rite: inH���H�putTableH���H� write_DH���H�CS8NumbeH���H�r() failH�������DA�����E��A��1tfm��E����H���	�%y/�
�/��/�(f(��Y��X�f.�r+�l$ L�D$ H���f(�H��.����@fW�f.�w�H�AA��N�@A��H,�A�шQA��L9�D�	H����H���	�B,f(��Y��X�f.��x���I��f.��j���H���E���H���	�%w/�
�/��/��Y��X�f.���fW�f.���H�QA���N��L,�L9�D�H��tAL���	�A�Y��X�f.���H��f.����L,�H��L9�D�H��u�D���	D���	�>1tfm�fE���H��
�%�/�
�/��/�(f(��Y��X�f.����l$ L�D$ H���f(�H���.�����H�icmLut_wH�rite: clI�utTable I�write_DCI�S8NumberI�() faileH���H���L���L���L���L���fLJ�d�o���f�fW�f.��N���H�AA��N�@A��H,�A�шQA��L9�D�	H����H��
�B,f(��Y��X�f.������I��f.����H���D���	E��E����H��
�%H/�
�/�p/��Y��X�f.��fW�f.���H�QA���N��L,�L9�D�H��tAL��
�A�Y��X�f.���H��f.����L,�H��L9�D�H��u�H�� ��$�H���P���	H�ek() or I�icmLut_wI�rite fseH���H�fwrite()L���H���H� failedL���H���H��H�ڽH���PLJ����H�icmLut_wH�rite: ouI�tputTablI�e write_I�DCS8NumbI�er() faiH���H���L���L���L���L���LJ�led�.�D���	E������A��D�>���H�� L�L$(A�H��H���PH9D$(����H��H��H���P��f�AWAVAUATUWVSH��)t$@)|$PD)D$`D)L$pI��M��D���	L��
A�D$�E���H*������	����D��fEW�A��H��H��D��H�D$81�H�T$(H��1�H�T$0fE(��ef.�v	f(��f(��e��H,�D9����H*D$(�\�H�L$8L�L$0�C�AI��\��Y��X��AL�H��9�vK�A4��Y�fD.�v��E1ɿfA(�����	1���t1�f�M��M�L�H��9�w�1�(t$@��(|$PD(D$`D(L$pH�Ĉ[^_]A\A]A^A_ÐA�Ƀ��I*�H��I���\��B���@AWAVAUATUWVSH��8)�$�)�$D)�$D)�$ H��H��M��D���	D���	H���	�D$$A�D$�A��E���H*���fEW�D��1�L�t$0H�D$(fE(��Uf.�vf(��D$$f(�����H,�A9�sP�T�H�H*D$(�\�A��H���A4�H��H�A9����At��Y�fD.�v�1�fA(��D$$��A���I*��T�HH���\��E�АMc�F����A��E9��XE�O��D/D��Lc������	���BL�0�\�t"1�f.����Y���H��9�w�E��t^A�O����NcD�H��Lc���J�4��B\L�0t"E1��B��Y��BX��B�I��D9�w�����tLc����BL�0�Hc�$����L�0HcT�HH��t'1�f.����Y��X���H��9�w�D$$(�$�(�$D(�$D(�$ H��8[^_]A\A]A^A_�H��$�1����H��A9�w�A�������A�@Ic�E��E��Hc����L�0�s���A�B�H�����Hc��D�0f.�w(�N���f�A�@�H�����Lc��BD�0f.��/���Mc�A��B����u�����f�AWAVAUATUWVSH��	)�$�)�$�D)�$�D)�$�I��H�T$@I�ϋ��	H�AL��$`	H�T$8I�փ�H�D$0v@L���ٸ��1҅�M���L��A��H��I����H�D$@A���	H�D$8A���	M���	�V������H*���fEW���1��D$$H��$@H�L$(fE(��WfDf.�vf(��D$$f(��e��L,�D9���E�D�H�H*D$(�\�D��I���4�H��M�9�v8H��$`	f(��Y4�fD.�v�fA(�E1�M��D$$�4�H��9�wȍK�H��?A���/I�H�t�@�Mc�f(�O��1��\��A��Y��A��A��Y��A�H��A9��H��E�H9�u��AIc��E���	E��M�D�t"1���A��Y��A�H��A9�w�A���A��A��~^A��1�J�4��Ic��E���AL^I�L�t&E1�@�B��Y��CX��C�I��E9�w�H��H9�u�L;t$8tH�D$0L��L��L��A�P�D$$(�$�(�$�D(�$�D(�$�H��	[^_]A\A]A^A_�E���I*�E�D�HI���\��'���=���������g�����L����A��H��I���b���H�D$0H�icmLut_lI�ookup_clI�ut: mallI�oc() fai�D$$H���L���L���L���ǀ�ledǀ������
�/�D$$�A�:���ff.�AWAVAUATUWVSH��)t$@)|$PD)D$`D)L$pI��M��D���	L���	A�D$�E���H*������	����D��fEW�A��H��H��D��H�D$81�H�T$(H��1�H�T$0fE(��ef.�v	f(��f(����H,�D9����H*D$(�\�H�L$8L�L$0�C�AI��\��Y��X��AL�H��9�vK�A4��Y�fD.�v��E1ɿfA(�����	1���t1�f�M��M�L�H��9�w�1�(t$@��(|$PD(D$`D(L$pH�Ĉ[^_]A\A]A^A_ÐA�Ƀ��I*�H��I���\��B���@H��(�Y�
/�X�
/���Y�/H��(�f.�AWAVAUATUWVSH��)�$p)�$�D)�$�D)�$�1�fW�H��H��M��D���	D���	H���	A�D$�A��E���L*���D��E1�fD(�H�D$(�SfA.�v
fA(��f(��T��H,�A9�sOB�L�H�H*D$(�\�A��H���B|�0I��H�E9��c�C|��AY�f.�v�1�fA(����A���I*�B�L�HH���\��E��Mc�F���0A��E9��8E�G���/D���	D��f(�Hc��0E���L�0�\�f(��Y��X�t#L��$�1�����Y��A�H��A9�w�E��H��tyE�_�E��HcL�HE��Nc��0H���B\L�0f(��Y��X�t/L��$�E1�D�B��Y��CX��C�I��E9�w�A��A���tJc��0�L�0닋�$0Lc��Bl�0NcD�Hf(��Y�N��E1�E���X���L��$�1��A��Y��AX��A�H��A9�w�1�f.����A\��^��A�H��A9�w�E��1��$f.���I��?��L�$�H��A9�v)�A��Y��X�f.�v�H��H����A9�w�D��������D�H�E��Hc��0Nc��0�L�0HcT�H�B\L�0H��t�E��1�L��$��"f�f.�vJH��?��H�<�H��A9�v��A��Y��X�f.�v�H���������4���@���Hc�E��HcD�H�L�0H��t[1�L��$��&fDf.�v{I��?��L��H��A9�v)�A��Y��X�f.�v�H��H����A9�w�(�$p��(�$�D(�$�D(�$�H�ĸ[^_]A\A]A^A_����H��$01���H��A9�w�A������A�f�Ic�E��E��Hc��0�L�0�����A�A�H����0Hc��D�0f.�w'�o���f�A�@�H����0Hc��D�0f.��P���Ic�A�����0u��;���ff.�AWAVAUATUWVSH��	)�$@	)�$P	D)�$`	D)�$p	H��M��H�A���	H��$�	H�T$@��H�D$(H�T$8H��v=L���1���M��lL��A��H��H����H�D$@���	H�D$8���	L���	�F������L*���fW���E1�E1�H��$@H�D$0fD(��WfA.�vfA(�A�f(ljL$ ���L,ȋL$ D9�sKF�L�H�H*D$0�\�D��I���B<�I��M�D9�v9�C<��AY�f.�v�E1�fA(�A���E���I*�F�L�HI���\��D�A�H��?A���/H�EJ�t��Mc�f(�N�\�E1��\��BD��Y��C��BD��Y��BD�I��E9��H��E�H9�u�D���	E��t-L��$�A�s�L��$�I�4��I��I9�I�M��u�A�A��E���GE�F�f(�1�N�<��L}Lc�;�E��f(��Y�K�t��X�t*L��$�E1��B��Y��CX��C�I��E9�w�H��L9�u�E��t6L��$�E1�@H��$�	�B��C\��^��C�I��E9�w�E������+/1���Hc���E���L�I�L�tgE1�L��$��/f.�f.���I��?A��N�<�I��E9�v+�C��Y��BX�f.�v�J��I��A��E9�wՍNH��9��r���H;l$8tH�D$(H��L��L��A�P�(�$@	D��(�$P	D(�$`	D(�$p	H�Ĉ	[^_]A\A]A^A_�f.��B��Q���=���������������L����A��H��H������H�D$(H�icmLut_lI�ookup_clI�ut: mallI�oc() faiA�H���L���L���L���ǀ�ledǀ��#���f(�����I��?E1�L�ufW��K���SH��0H��1�8�3H�L$(H�D$(��3�P��l�SH�P���SL�P�SP�P�ST�P��SX�C\H��0[�fffff.�VSH��(H��A�`�H��H���PH��H��t[�mitd�@H���H�sH��H�CH�����H�C H�v@H�C(H��YH�C8H���H�C@H���H�C0����H��H��([^�f�ATUWVSH��0H�iH�ˉ�S����QL����H��L��A�H��I���E�A�D$M�T$A�D$A�D$A�D$��A�D$��A�$���A�T$���A�T$�CT��A�D$��A�T$���A�T$	���A�T$
�KT����fW�E1��
B/�%"/�B/f���D��H�CX����f(��Y��X�f.�rY�\$(L�D$(H���f(�H�$�.�_��H��L��H���PDž��H��0[^_]A\�fDf.�w��H,���A�BA����A��KTI��D9��U����C`��A�B��A����A�R���A�RD�[`I��E��tfW�E1��
H/�%(/�H/�A��D��H�Ch�r��f(��Y��X�f.������f.����H,���A�BA����A�D�[`I��E9�w�H�SxH����D�CpA��D�����:H��u�H���9����u�H�icmUcrBgDž�tedH���H�_write: H���H�text is H���H�not nullH���H� terminaH����W�������X��H,�=���r���H�icmUcrBgH�_write: I�write_UII�nt16umbeI�r() failH���H���L���L���L���fDž�edƅ��������X��H,�=��w����H�icmUcrBgH�et_size H�overflowH���H�_write gH���H����H���ƅ�Dž�H��0[^_]A\������L����H�� ��H���P���\H�() faileI�icmUcrBgH�_write fH���H��H�seek() oH�r fwriteL���H���H���H���L��H��fDž�d�P�Dž�H��0[^_]A\�H�icmUcrBgDž�failfDž�edH���H�_write mƅ�H���H�alloc() Dž�H����H��0[^_]A\Ã����I�icmUcrBgH�_write: H�text is H�shorter H�than lenL���H���H���H���H���Dž�gth����H�� I��A�L��H���PH9������H��L��H���P1�����AUATUWVSH��8H�Y��H��E����H����H��H���H��H���DH�� D��H���P��u"H�� I��A�H��H���PH9��~H�icmUcrBgH�) failedƃ�H���H�_read: fH���H���H�seek() oH���H�r fread(H���H��H��H���Pǃ��H��8[^_]A\A]�fDI�icmUcrBgI�_read: TH�ag too sH�mall to H�be legal�L���L���H���H���H���ƃ�ǃ�H��8[^_]A\A]��H�icmUcrBgI�_read: mI�alloc() �H���L���L���ǃ�failfǃ�edƃ�ǃ�H��8[^_]A\A]����V����V����V���9�:�F�V	H�L�f����V
����V��Ѕ��GT�	H�GXI9��hH��L)�H���XA�$A�T$M�l$���A�T$���A�T$��Ѕ��G`��H�GhD)��op������A�}L��u�DH���8����u�I�icmUcrBgI�_read: sI�tring isI� not nulH�l terminL���L���L���L���H���ǃ�atedƃ����H���W@����D�GTE�����L9�rlH��L)�H��~`A�@�L�WX�
�.L�LF1��H��H��L)�H��~7A�$A�L$���A���H*�t�^�I���AM9��x���L9�s�I�icmUcrBgI�_read: DI�ata too I�short toH� read UCL���L���L���L���H���ǃ�R Dafǃ�taƃ��~���H� type foH�icmUcrBgI�_read: WI�rong tagH���H�r icmUcrH���L���L���H���fǃ�Bgƃ�����fDH�icmData_H�read BlaH�ck Gen cH���H�read: DaH���H���H�ta too sH���H���H�hort to ǃ�ountH���ƃ����H�GxH��H��H���P1����L��H��D$(L��A�P�D$(�t���H���W@��u�D�G`E������L9�rqH��L)�H��~eA�@�L�Wh�
��.M�LD1��fDH��H��L)�H��~6A�UA�M���A���H*�t�^�I���AM9������L9�s�H�short toH�icmUcrBgI�_read: DI�ata too H���H� read BGH���L���L���H���ǃ� Datfǃ�a�[���L������H���Gp�W@������D�GpH�OxL��������fff.�ATUWVSH�� H�qH��A��W����L����H��L��A�H��H���R��C�C�C�C�ȈK�������C����CH�WPH����D�GLA��D�����:I��u�I��A�:����u�H�write: tI�icmText_fdž�edH���H�ext is nL���H���H�ot null Ɔ�H���H�terminatH��H���H��H���P�dž�H�� [^_]A\��k���H�K�o�H�� D��H���P����H�icmText_H�eek() orH� fwrite(H���H�write fsI�) failedH���H��H���H���H��L���Ɔ�H���Pdž��H�� [^_]A\�f�H�� I��A�H��H���PH9��O���H��H��H���P1��f.�H�icmText_H�write geH�t_size oI�verflow�H���H���H���L���dž�H�� [^_]A\�f�I�icmText_I�write maI�lloc() f�L���L���L���dž�ailefdž�ddž�H�� [^_]A\�AUATUWVSH��8H�Y��H�͉�E����H��A��L��H���H��H���2H�� D��H���P��u"H�� M��A�H��H���PI9��^I�icmText_I�read: fsI�eek() orH� fread()H� failedL���L���L���H���H���H��H��H���Pǃ��H��8[^_]A\A]�f.�H�icmText_ǃ�H���H�read: TaH���H�g too shH���H�ort to bH���H�e legalH����H��8[^_]A\A]�H�lloc() fI�icmText_I�read: maH����L���L���ǃ�ailefǃ�dǃ�H��8[^_]A\A]Ã��uL��W����W����W���9E��������L�g���L��u�~H���8tu�����ukH�read: teI�icmText_fǃ�dH���H�xt is noL���H���H�t null tH���H�erminateH����2����H��U@����D�ELH�MPL���
�H��H��H���P1�����H�icmText_H�ong tag H�type forH���I� icmTextH�read: WrH���H���H���L���ƃ����L��H���D$(L��A�P�D$(���fff.�ATUWVSH�� H�yH�Ή�V����qL��A��L��L��A�H��H������C1��C�C�C�ȈK�������C����C�FL�����C�C	�C
�SH�VXH���F�FLD�FP���.A��D����:I��u�@I��A�:���u�H�icmData_H�write: AI�SCII is I�not nullI� terminaH���H���L���L���L���LJ�ted�g���CH�icmData_LJ� valfLJ�ueH���H�write: UƇ�H���H�nknown DH���H�ata FlagH���H��H��H���PLJ��H�� [^_]A\�����DH�K��H�� ��H���P���H�) failedI�icmData_H�write fsH���H��H�eek() orI� fwrite(L���H���H���L���H��H��Ƈ��P�LJ�H�� [^_]A\�f.�����fDI�icmData_I�write geI�t_size oH�verflow�L���L���L���H���LJ�H�� [^_]A\�f�H�� M��A�H��H���PI9�����H��H��H���P1�����H�icmData_H�write maI�lloc() f�H���H���L���LJ�ailefLJ�dLJ�H�� [^_]A\�AUATUWVSH��8H�Y��H�͉�E����H��A��L��H���H��H���2H�� D��H���P��u"H�� M��A�H��H���PI9��^H�icmData_I�read: fsI�eek() orI� fread()I� failedH���L���L���L���L���H��H��H���Pǃ��H��8[^_]A\A]�f.�H�g too smI�icmData_I�read: TaH���H�all to bL���H���H�e legalL���H����ǃ�H��8[^_]A\A]�H�icmData_H�read: maH�lloc() f�H���H���H���ǃ�ailefǃ�dǃ�H��8[^_]A\A]Ã��uP��W����W����W���9E��G�W	D�G����W
����A���A��t
A���w�EL���3�ELL�g���
����L��u��f�H���8���������H�icmData_H�read: ACI�SII is nI�ot null H�terminatH���H���L���L���H���fǃ�edƃ������EL�@���H�icmData_H� icmDataƃ�H���H�read: WrH���H���H�ong tag H���H�type forH����h���H��U@��u'D�EPH�MXL���\�H��H��H���P1��V���L��H���D$(L��A�P�D$(�8���H���H���.�������AVAUATUWVSH�� L�qH��A��W�����M��A��L��L��A�H��H���P��EH�]�E�E�E�ˆE���U����U����U�G\�ˆE���U����U	����U
D�G\A���p1��D�hA��ˆC�������S����SD�O\H��E�����D�hH�T�x��A��~]�:I��u
�U�I��A�;tJA��u�I���H���.�u�I��H��H���PAdž��H�� [^_]A\A]A^�t�H��A����D�hH�H��H���>���I�� D��H���P����H�icmCrdInH� or fwriH�te() faiI���H�fo_writeI���I���H� fseek()I���I���I��H��Adž�ledH���P�Adž�H�� [^_]A\A]A^�DD��H�W`�c�:H��u�VfDH���9�C��u�I�icmCrdInI�fo_writeH�: PostscH�ript proH�duct namI�e is notI� terminaM���M���I���I���I���M���M���Adžted�J����H�icmCrdInH� get_sizH�e overflI���H�fo_writeI���I����I���fAdž�owAƆ�Adž�H�� [^_]A\A]A^�I�� M��A�H��H���PI9�����I��H��H���P1����f�H��耿�G\H��
���H�icmCrdInAƆ�Adž�I���H�fo_writeI���H� malloc(I���H�) failedI����H�� [^_]A\A]A^�f�AWAVAUATUWVSH��8H�Y��H��E����H����H��H���H��H���PH�� D��H���P��u"H�� I��A�H��H���PH9��zH�icmCrdInfǃ�edƃ�H���H�fo_read:H���H� fseek()H���H� or freaH���H�d() failH���H��H��H���Pǃ��H��8[^_]A\A]A^A_�DI�icmCrdInI�fo_read:I� Tag tooH� small tH�o be legL���L���L����H���H���fǃ�alƃ�ǃ��q����H�icmCrdInH�fo_read:H� malloc(I�) failedH���H���H���L����ƃ�ǃ��������V����V����V���9��H�FH�H9��
H��H)�H�����F�V	L�f����V
����V��Ѕ��G\��H��L)�H9��2�����~L��u�DH���9����u�I�icmCrdInI�fo_read:I� PostscrI�ipt prodH�uct nameH� is not I�terminatL���L���L���L���H���H���L���fǃedƃ���f�H�icmCrdInH�fo_read:H� Data toI�o short I�to read I�PostscriI�pt produH�ct nameH���H���H���L���L���L���L���H������H�icmCrdInI�fo_read:I� Wrong tI�ag type I�for icmCH���L���L���L���L���ǃ�rdInfǃ�foƃ����H���W@���GD�G\H�O`L��趺�G\I�I9���H��L)�H����E1�A�$A�T$E��M�|$���A�T$���A�T$��Ѕ�B�D�htVH��L)�H9�������A�|$L��u�H���9���u�H���H�L�.E��茹����M��I��E�Ft2I9�wH��I��L)�H���M���H���H���.�N�����H��H��H���P1����f�H���W@��uF�D�hJ�L�xL��茹F�d�hM��{���L��H��D$(L��A�P�D$(�S���H� short tI�icmCrdInI�fo_read:H���H�o read PI� Data toH���H�ostscripL���H���H�t producL���H���H�t stringL���H��ƃ���E1����H���H���.E���/��}���f�AWAVAUATUWVSH��8M��H��I��L��L��tM��u:H�SXH��H��H����H{XH;{`H�{XvH�{`H��H��8[^_]A\A]A^A_�I�����1�L��I��I9���H�KhH�kXH��H��H)�L9�s�L�kPK�T%H9�sjL)�L�{`H��L��H��L��LG�H�C@M��L�L$(H���PH��L�L$(teL)�M)�H�CPH�I�L�H�kXL�{`H�ChH)�L9��'���1�H��H��H��H������I��L��H��������f�M��M���<���@H�ChH�kX�fDVSH��8M��H��H��tM��u:L�SXL��I��H��tL��I��L�L$(�"�L�SXL�L$(I�L��L�SXH��8[^�I�����1�L��I��L��I9�v)L�SXH�C`L)�H9�s�1�I��I��L��I��H��u��L��I�����WVSH�� 1�D�ALD;AHH��H�Y�/A��#���*H�QPH��tH��H���PD�FLH��D��A��H���PH��I��H�FP�8�NLE1�1������@����@��f���D����A���H�t
�H��A��t	f�H��A��t�H�
R��H����B(csed�B<H�Z0A��H�J@H�
(p��@��H�JHH�
�m��H�JPH�
�YH�J`H�
#k��H�JhH�
���H�JXH�
��H�JxH�
H�����@����@����D����A���H�t
�H��A��t	f�H��A��t�H�
���A��ǂ�csedǂH��H��H�
\o��H��H�
�l��H�� H�
YH��0H�
Rj��H��8H�
���H��(H�
&�H��HH�
8H��P�NLD9���L�FPD��H�
7Hi��L�A��H�z(H�JH�@���"���H�z)�B(A��@������f�H��A��@������fD�A��H����H�icmProfiH�leSequenH�ceDesc_aI�llocate I�AllocatiI�on of DeI�scStructH� array fH���H���H����L���L���L���L���H��ǃailefǃdǃ�H�� [^_�H�icmProfiǃ�erflfǃ�owH���H�leSequenƃ�H���H�ceDesc_aǃ�H���H�llocate:H���H� size ovH����H�� [^_�D�A��H���l���f�A��H���P���Ƃ�H���A���0���D1��NHH�� [^_�WSH��(H���A��H��H���PH��H�����H��A���@���
@����E��1�A��A��D���H���A����A��uuH�n���csed�BH�ZH�BH�Rl��H�B H��i��H�B(H��UH�B8H�Qg��H�B@H����H�B0H�+�H�BPH�@H�BXH��H��([_�f������f�H��A���h������H��A���L�����D�A��H�������H�xA�����f�A��H�����fff.�UWVSH��(�yH��H�օ����A A�?��?A)���A���D$�H�L%wfH�k$1��H��H��H����@���8�%@���*@������1������H���������t��@A�7H�k$1�A)�茰�S �Ca�Cb�Cc�����S`H���C\���K]�������C_�K^H�����CH��1��L�
�L���J�L�J�LH���JH��H��u�H��([^_]�f�f�H�����b����@���f��H�������������H������C$H�{%�7����f���H������f�ATUWVSH�� �H�H��L�aH�ΉˆC�C���C�C����C���S����S�A`�ˆC���S����S	����S
�A`H�������H�Qh���:I��u���I��A�8����u�H�]I�icmTextDI�escriptiI�on_writeI�: ascii H�string iH�s not teH�rminated�M��$�M��$�M��$�M��$�I��$�I��$�I��$�AƄ$ADŽ$�H�� [^_]A\�fD���<H����H�Nh螬H�\��Fp�ˆC�������S����S�Ft�ˆC���S����S����SD�FtH��E���E��H�Vx��H��@�8u
�x��H��A��u�H�icmTextDH�]H� is not I��$�H�escriptiH�terminatI��$�H�on_writeI��$�I��$�H�: UnicodI��$�I��$�H�e stringfADŽ$edI��$��AƄ$ADŽ$�H�� [^_]A\�D��H�����C���H���f��u���CH������ˆC������=���C���H�K���Q��C�|H�����L���H���8��H��L9�u�H�on_writeH�MH�icmTextDI��$�H�: ScriptH�escriptiI��$�H�Code strI��$�I��$�H�ing is nI��$�I��$�H�ot termiADŽ$nateI��$��fADŽ$dADŽ$�H�� [^_]A\�f�H�icmTextDH�escriptiH�on_writeI�: write_I�UInt8NumI�ber() faH��I��$�I��$�I��$�M��$��M��$�M��$�ADŽ$�iledAƄ$�H�]ADŽ$�H�� [^_]A\�H�]H�icmTextDI�escriptiI�on_writeI�: ascii I�string iH�s shorteH�r than l�I��$�M��$�M��$�M��$�M��$�I��$�I��$�ADŽ$engtfADŽ$hADŽ$�H�� [^_]A\�fD��H�ϺC��@����@������1������H�t
�H����t	f�H����t�H��F1�H�]H�� [^_]A\��A�C蝩��A������H�escriptiH�]H� lengthI��$�H�on_writeH�icmTextDI��$�H�: UnicodI��$�I��$�H�e stringI��$I��$�H� is shorADŽ$�I��$�H�ter thanI��$������H�MH�ing too I�icmTextDH�escriptiH�on_writeH�: ScriptH�Code strI��$�M��$�I��$�I��$��I��$�I��$�ADŽ$�longAƄ$�ADŽ$��k����H�{�B�4������H���6���f���H������H��(�7��?�.f(��%C�.�Y��Y��
;�.�Y��\�.�Y��X%c�.�X���.�Y��Y��X��%�.�Y��X��
�.�Y��Y��X����.�Y��Y��Y��.�X��
��.�Y��X��X��^����.H��(�j�f.�AWAVAUATUWVSH��8L��$�L��$�H��$�H�YXH��H�IhH�D$(I��H�CdH9�v\H�nPL�f`H)�H=H��H��H�F@HG�H��I��H���PH���H)�I)�H�8H�I�H�FPH�^XL�f`H�Nh�d�fDH�^XH�NhHc�H�TH9����hHc�H�;H9�vXL�fPL�v`L)�H=H��L��H�F@LG�L��M��H���PH��tsL)�M)�J�8H�I�H�FPH�^XL�v`H�NhH��H)�H9�|5H��L�L$(M��H)�H��np3���V����H�NhH�^X�c����1�H��8[^_]A\A]A^A_�H�NhH�^X�H�NhH�^X����H���@�Hc�H�H;^`H�^Xv�H�^`�f�H�IPE1��Ԥ@WVSH��0�AX1�H�Y@H�ʋyH��uH��S��tH��S ��H��0[^_�H�IPH�T$(覤��H�T$(��փ���ffff.�H�IP�O��H��8L�D$PL�L$XL�D$PH�IPL�D$(�ϣH��8�f.�H��L��M��L�IPH��铣ff.�H��L��M��L�IPH����ff.�M��H��t1�H�����I��H9�rL����1��fff.��ۣff.�H���ȣ�H��L���գDH���Ȣ�WVSH�� E��H��H��D��~NH�r�.H��V D�GLH�n�.H��V ��t+�GL��t$1�H�GP��A��H���D��H�V�.�V ;_Lr�H�� [^_�DWVSH�� E��H��H��D��~NH�3�.H��V D�GLH���.H��V ��t+�GL��t$1�H�GP��A��H���D��H��.�V ;_Lr�H�� [^_�DWVSH�� E��H��H��D��~NH�ѡ.H��V D�GLH���.H��V ��t+�GL��t$1�H�GP��A��H���D��H�v�.�V ;_Lr�H�� [^_�DWVSH��0E��H��H��D��~XH�o�.H��V D�GLH��.H��V ��t5�OL��t.1�H�WP��A��H���H��H�>�.D�H��D$ �V ;_Lr�H��0[^_�ff.�WVSH��0E��H��H��D��~[H��.H��V D�GLH���.H��V ��t8D�GLE��t/1�H�GP��A��H���L��H��.L�L$(�\$(�V ;_Lr�H��0[^_��WVSH��0E��H��H��D��~[H���.H��V D�GLH��.H��V ��t8D�OLE��t/1�H�GP��A��H���L��H�f�.L�L$(�\$(�V ;_Lr�H��0[^_��AWAVAUATUWVSH��8�
��.���.E��I��H��D�B0L�J8�J�R��1��A�f.�v�Cf(��A�f.�v	�Cf(�H��A9�w�A���v4�\��p�.�C ����^��C�H��8[^_]A\A]A^A_�f�A�P�\���A������*‰S �^��Cw�I�$Hc�A�1�H���PH��H�C(�H��t��C0��9���H�C8��D�m�S�K��D���\��Y��H,��ЋC �\P��Y��H,�9�C�9�C�9�w���H�C(A��N��I�H����D�:D�rE9�w=E1�E��ulI�$L�L$ L�T$(H���PL�T$(L�L$ I�H�C(J��H������D�:D��A��H�����,
D�r9�v��C0D���9��!����1����A����������E�A�����?�����E��I���k���@I�Y��n���B L�R����I�$L�L$ A�L�T$(�H���PL�T$(H��L�L$ I��'���H�C(A��J����B�1���f.�WVSH��0E��H��H��D��~~H���.H��V ���������tkD���H��.H��V ��tED���E��t91�@H�����A��H���L��H�}�.L�L$(�\$(�V ;��r�H��0[^_�DH���H�2�.H��L�H�F L�D$(�T$(H��0[^_H��H�F H��.H��H��0[^_H���D�AH�E������A��L��D�ILE����A����D�IPE����A�����yT���yX;���y\;��E��D�BA��D�
D�ALA����w~E��D�BA��D�JD�APA����wbD��D�B���BD�AT�A����wCE��D�BA��D�JD�AXA����w'E��D�B	A��D�J�I\����w
�ȈJ���B
1���fff.�ATUWVSH�� H�qH�ω�W����5L��A��L��L��A�H��H�����H�S�C�C�C�C�ȈK�������C��H�����C�z���������H�� ��H���P���9H�fseek() H�icmDateTH�imeNumbeH���H�or fwritI�r_write H���H�e() failH���H���H��H��H���L����fdž�edƆ�H���Pdž���H�� [^_]A\��H�icmDateTI�umber() H� write_DH���H�imeNumbeH�ateTimeNH���H�r_write:H���H���H��H��H���L���dž�failfdž�edH��Ɔ��P�����H�� [^_]A\�H� failedI�icmDateTI�imeNumbeH����I�r_write H�malloc()��L���L���L���H���dž�H�� [^_]A\�H�r_write �H�icmDateTH���H�get_sizeI�imeNumbeH���H� overfloH���H�����L���fdž�wdž�H�� [^_]A\�f�H�� M��A�H��H���PI9������H��H��H���P�%���f����clrtuF�IL���t/1��fDD�@ A���w����&9�t���v�������9�u���f�1���trlct���@SH�� H��H�I(�Sh��t
H�� [��H��8H���H�� [H��f.��QH��u)�ATD�AR��u.�E1����IPu��u(��f�����0D���E��t�D��1��͐A�����1�D��A��A��D��D9�w�A�ȍQ���F��f��� SCP���� baL����8baL��A�A�I�C�.����H*��^��AA�AA�I����H*��^��A@A�AA�I��ȁ�4baL�H*��^��AP�P����8baL���.tv�� ZYX���~�.�Y��Y��Y��A�A@�AP��A��d�.�H*��^��AA�A�H*��^��A@A�A�H*��^��Y
$�.�A�Y��Y��
�.�\��\��A@�AP���2baLu��Y
�.�%�.���.�Y��Y��^��^��A�^��
Ǽ.�\��\��A@�AP�f.�H�1҃xd��2baL�\����H��P@�1���D�Y
`�.�`�.�A�/���fDAWAVAUATUWVSH��HH�YA� baLH�ω�E��H����x8kniltD�p@���H��A��L��H���H��H���dN�< H�� D��H���P��u"H�� M��A�H��H���PI9���H�r fread(I�icmColorI�antTableI�_read: fI�seek() oH���H�) failedL���L���L���L���H���ƃ�H��H��H���Pǃ���H��H[^_]A\A]A^A_�f.�H�icmColorH�antTableI�_read: TI�ag too sI�mall to I�be legalH���H����L���L���L���L���ƃ�ǃ��b���H�icmColorǃ�failfǃ�edH���H�antTableƃ�H���H�_read: mǃ�H���H�alloc() �H�������V����V����V���=clrt������=clrt��F�V	D�F
����D�D�F��A�D�GL�E���k����D9���H���W@������GLE1�L�V���m�?clrt�AE��I��LoPM9�M�M��L��L)�H��%��M�b L���
H��L9��S�8u�I�ML��A� L�L$8L�T$0D�\$(�E�A�� baLL�L$8L�T$0D�\$(��A�� ZYX��@H��H��H���P���D�FD�GL�����I�icmColorI�antTableH�Val_readH�: Data tI�oo shortI� to readM���M���I���I���M���M���AƁ�Aǁ��R���f�L��L)�H��%�����A�B A�R!A�B!A�R A�B"A�R#A�B#A�R"A�B$A�R%A�B%A�R$�t���DH�icmColorH�: Name sH�tring noI���H�antTableI�t terminI���H�Val_readI���I���I���M���Aǁ�atedAƁ�Aǁ��w����I���M�E(M��D��L�T$0D�\$(���D�\$(L�T$0A��I��&D9_L�����@H��H��H���P����H���H�}�.A��蝐���=trlc���H�icmColorI�antTableI�_read: WI�rong tagI� type foH�r icmColH�orantTabH���L���L���L���L���H���H���fǃleƃ���H�icmColorH�be legalƃ�H���H�antTableH���H���H�_read: TH���H�ag too sH���H�mall to H�������H��(�� SCP�P�� baLtx��4baL��~K��8baL�>�� ZYXuF�
~�.�A�AP�Y��Y��AYH�$�T$�L$���2baLt$��H��(�fDH��xd�s�
3�.�AP�5�.�X��A�AXH�%&�.�Y��Y��^�.�Y��^��$�^��T$�L$���.1��
�.�Y���.fW��X�f.��Y���f.��O����H,Љ�A�T��A�H��H�������Y��X�f.������D�
`�.1��AX�A�X��?�.�AXH�^)�.�^��$�^��\$fW��J�.�L$�
D�.�Y��X�f.������f.�������H,�A�H��H��t����0�H��(���
��.�AP�A�X����.�AXH�^��.�^��$�^��T$�L$���DH��P@���DAWAVAUATUWVSH��8L�iA� baLH�ˉ�$�I����x8kniltD�`@H��S����eM����H�D$(H��L��A�H��H������F�F�F�F�ˆF�������V����V�CL�ˆF���V����V	����V
D�{LE���H�n1�A��I��LSPI�RM�:M�r(H���
H��L9����8u�A� H��薌A�� baL��A�� ZYX��H�icmColorH�antTableI�Val_writI�e: UnknoI���I���M���M���ALJ�wn PfALJ�CSAƇ�ALJ�I��H��H���P�H��8[^_]A\A]A^A_�f�I���L�M M��D���������U��H��&9{L���I�� ��$�H���P���$H�icmColorH�() failefADž�dI���H�antTableI���I���H�_write fH��I���H�seek() oI���H�r fwriteI���I��H���PADž�������H�icmColorH�antTableH�Val_writI�e: Name I�string iH�s untermI���I���I���M���M���I���ALJ�inatfALJ�edAƇ�ALJ��e���H�icmColorI�antTableI�Val_writI�e: writeI� of PCS H�coord faI���M���M���M���M���I���ALJ�iledAƇ�ALJ�����H�icmColorH�_write gH�et_size I���I�overflowH�antTableI���I����I���M���Aƅ�ADž�����I�� L�L$(A�H��H���PH9D$(�����I��H��H���P1��B���H�icmColorADž�failfADž�edI���H�antTableAƅ�I���H�_write mADž�I���H�alloc() I��������ffffff.�L�T$(�� baL��A��1tfmt9��tjA��locn�2baLt0A��2tfmt'A��2lcntH�1҃xd��2baL�	��t1�8baLH���,E1��H��9�t#�A�����u�I��Á� ZYXu�E1�A��t*E��t%A��tA��u�Mc�H���,K�@H��I�1�ÐMc�H�v�,K�@H�D�I�1���VSH��8H�t$p�� baL��A��1tfmt'��t`A��2tfm�2baLtH�1҃xd��2baL�	��t9�8baLH�d�.1���H��8A9�t'D���A���u�H��8[^Á� ZYXu�1�D��Hc�L�L$(�Q���H��L�ҟ.H��H)�1�I�E�HE��L�L$(u8��~$M��t	I�L�I��H��t	I�L� H��H��9��1�H��8[^��H�
��.Hم�~�f�M��tM�PM��H��tL�L��H��9��1��ff.�UWVSH��8�9H��$������H��L��u	H����0H�KI�ы�L�D$ A��H����v���H�K��I��A��H��$�H���H��8[^_]�J���f.�UWVSH��8�9H��$������H��L��u	H����0H�KI�ы�L�D$ A��H������H�K��I��A��H��$�H���H��8[^_]����f.�ATUWVSH��0H��$�H��H��M��L��H�|$ �����;�t"H���H�KI��L�d$ D�H����h�����;�t/H���H�KI��H��$�D�H���H��0[^_]A\�+���H��0[^_]A\ËAL�������w;�A��au)A���	1���tf�M��L��H��9�w�1�Ã�t҃�bt͋�9�u�D���E��u�H��8H��ffffff.��AL�����t4��t0��9�t?A���	1���tf�M��L��H��9�w�1�ËA��atփ�tу�bu���f�H��HH��fD�AL�������w;�A��au)A���	1���tf�M��L��H��9�w�1�Ã�t҃�bt͋�9�u�D���E��u�H��hH��ffffff.�WVSH�� E��H��H��~3H���.H��S H�{ H������H���.I��H��I��H�� [^_I��H�� [^_�H��(H��.��tC~N��bH��.t5��cH�'�.t)��aH��.tA��H��.H�
��2�l�H���2H��(����H���.t�H���.ޅ�H�g�.t��fffff.�H��(��v'A��H���.H�
��2�	�H���2H��(�DH�ق.��Hc�H��H���.H��(�f�H���.H��(�@H�{�.H��(�@H�s�.H��(�@H�g�.H��(�@H�[�.H��(�@H�O�.H��(�@H�B�.H��(�@H�6�.H��(�@WVSH��@E��H��H����H��H�D�.�S L�NPL�FHH�G�.H�FXH�
#�2H�{ L�L$8�\$8L�D$8�T$8H�D$ �H��L���2H��.��L�NhL�F`H���.H�FpH�
҅2H�{ L�L$8�\$8L�D$8�T$8H�D$ 覀L���2H��.H��׋NxH�{ �_���H��.I��H��I��H��@[^_I��DH��@[^_��H��(��v'A��H��.H�
��2�9�H���2H��(�DH��.��Hc�H��H��.H��(�f�H�݁.H��(�@H���.H��(�@H���.H��(�@H���.H��(�@H���.H��(�@H�y�.H��(�@H�q�.H��(�@H��(H���.��t��H���.t��H�-�.u	H��(�@A��H��.H�
ς2�RH�Â2H��(�fffff.�H��(H�S�.��t��H�Q�.t��H��.u	H��(�@A��H��.H�
�2��~H��2H��(�fffff.�ATUWVSH�� �9locnH��tN�ITD�FP�L	&��u�T��H�� [^_]A\�f.�E��t߻����1҉��A9�w�A�ȃ��wˍYT��H�IX1�������}�P�����H�Nx�p}�nP���9ǻ����Cڅ�t���L����~TH��1�Hi��I�L4�.}A�؃�1�A�к����D9�w����������9�F�H�ƸH9�u‰�H�� [^_]A\�D�X����c���@ATUWVSH��0E��H��H��D����H��.H��S �OLH�k �(��H��.I��H���D�GPH��.H��S �����wP����1�DA��H��.H��S H�WX��H��H�@��L��H�,�H��.L�D$(�T$(�S H�GXH��.H��L�D(L�D$(�T$(�S H�GXL�c �L(�}���H�q.I��H��A��;wP�t���H��0[^_]A\�f�SH�� H���H��H�������r0��tXA��H���H�/.�j|ǃ��H�� [��@d�@h�@lH���,H��H1�H�� [�f��@d�@h�@l��f��@d�@h�@l�f�H�icc_set_fǁ�ngƁ�H���H�version:ǁ�H���H� Header H���H�is missiH�����%����VSH��(�H��H���o����tH��([^�H�S�F�ro����u�H�S�FH��([^�Zo��f.�AVAUATUWVSH�� H�y H��A��D������*L��A�źM��L��A�QH��H���g�N(�ȈK�������C����C�N`�ȈK���C����C����C�Nd��c���Fh������	���Fl������	���Ⱥgfff������)‰Ѝ����)������)�K�Fh��Fl=���H�icmHeadeH� Uint8NuH�mber minH���I�or/bug fH�r_write:H���H���H���L���fLJ�ixƇ��DI�icmHeadeH�r_write:H� versionI� numberL���H���H���L���H��H��A�H���PLJ�D��H�� [^_]A\A]A^�D�C	�F8H�Np�ˆC���S����S
����S�F<�ˆC���S����S����S�F@�ˆC���S����S����SH�S�����A���;�C$a�C%c�C&s�C'p����ˆC+���S(����S)�����S*��1�1�1�E1��S.D�C,�K-�C/�FH�ˆC3���S0����S1����S2�FL�ˆC7���S4����S5����S6�FW�C8�FV�C9�FT���C:�FT�C;�FS�C<�FR�C=�FP����C>�FP�C?���FDA������A�������KA�SBH���H�SDD�C@�CC�]�����A����F\�ˆCS���SP����SQ�����SRu&H����xd~1������TTH��H��u�H�� D��H���P���bH�or fwritI�fseek() I�icmHeadeH���H�e() failI�r_write H���H��H��L���L���A�L���fLJ�edƇ�H���PLJ�����H�icmHeadefLJ�wLJ�H���H�r_write A�H���H�get_sizeH���H� overfloH�������H�calloc()I�r_write I�icmHeadeH���H� failedL���L���H���A�LJ����DI�icmHeadeI�r_write:I� Uint8NuH�mber majH�or versiL���L���L���H���H���fLJ�on����FXA������A����������@H�icmHeadeH�r_write:I� DateTimI�eNumber I�creationH���H���L���L���L���Ƈ�H��H��H���PD�������1�1�1�E1�����f�H�� M��A�H��H���PI9��|���H��H��H���P�r���f�H�icmHeadeLJ�inanfLJ�tH���H�r_write:H���H� XYZNumbH���H�er illumH����0���@AVAUATUWVSH��0H�iI��A��A�V�����L��A��L��L��A�H��H���lA��G�G�G�G�ˆG�������W����WA�FL����H�w1����H��A9^L��A��H��O�@J��INP�?�����t�L��I�icmXYZArH�ray_writH�e: writeI�_XYZumbeI�r() failL���H���H��H���L���L��L���fDž�edƅ��D$(A�P�D$(���H��0[^_]A\A]A^��H�� D��H���P���H��I�e fseek(I�) or fwrI�ite() faH�icmXYZArH�ray_writH���H���H��H��L���L���L���Dž�iledƅ��P�Dž�H��0[^_]A\A]A^�@H�icmXYZArH�ray_writH�e get_siH���I�ze overf�H���H���L���Dž�lowDž�H��0[^_]A\A]A^�@H�� M��A�H��H���PI9�����H��H��H���P1�����H�icmXYZArfDž�dDž�H���H�ray_writH���H�e mallocH���H�() faileH����H��0[^_]A\A]A^�DAUATUWVSH��(H�yH��A��V�����L��A��L��L��A�H��H�����H�S�C�C�C�C�ȈK�������C��H�NH���C�V���������H�SH�N`�?����������Fx�ˆC#���S ����S!����S"H�� D��H���P����H��H�() or fwI�icmViewiI�ngConditI�ions_wriH���H�te fseekI�rite() f�H��L���L���L���H���H��L���LJ�ailefLJ�d�P��LJ�H��([^_]A\A]��H�ngConditI�icmViewiLJ�rorH���H�ions: wrL���H���H�ite_XYZNH��H���H�umber erH���H��H���P�����H��([^_]A\A]�H�icmViewi�H�ions_wriH���H�ngConditH�te malloH���I�c() fail��H���H���L���fLJ�edƇ�LJ�H��([^_]A\A]�f�H�� M��A�H��H���PI9�����H��H��H���P�.���f��I�icmViewiI�ngConditI�ions_wriH�te get_sH�ize over��L���L���L���H���H���LJ�flowƇ�LJ�H��([^_]A\A]�fff.�AUATUWVSH��(H�yH��A��V�����L��A��L��L��A�H��H���_��CH�S�C�C�C�ȈK�������C����C�NH�ȈK���C����C	��H�NP���C
�������q�Fh�ӓ.�ˆC���S����S����S�YFp�X��.f.��.��fW�f.����H,��ˆC���S����S����S�Fx�ˆC#���S ����S!����S"H�� D��H���P����H�icmMeasuI�fwrite()I� failedH���H�rement_wH�rite fseH���H��H�ek() or �H���H���L���L���H��H���P��LJ�H��([^_]A\A]�DH�lare: wrH�icmMeasuI�rementa_H���H�ite_U16FI�write, fH���H�ixed16NuH���H���H�mber() fL���H���H��H��L���LJaile�fLJdH���PLJ���H��([^_]A\A]��H�icmMeasu�LJ�iledH���H�rement_wƇ�H���H�rite malLJ�H���H�loc() faH�����H��([^_]A\A]�H��I�icmMeasuI�rement, H�backing:I� write_XI�YZNumberL���L���H��H��H���L���L���LJ� errfLJ�orƇ��P�良�H��([^_]A\A]�f�H�icmMeasu�H�rite getH���H�rement_wH�_size ovH�����H���H���LJ�erflfLJ�owƇ�LJ�H��([^_]A\A]�@H�� M��A�H��H���PI9������H��H��H���P�"���f�WVSH��@)t$ )|$0fW�f(�H��H��f(�A �\I�YIf.��w���*��]��6i�H,Ћ^0�K���H��9�v��H��H�V(L�M���QA�BL�F8��vM��L��1�A�LA�Ƀ��C��A�f.�r
f.���f.�r
f.���H��L9�u����AvPf(�1����.��\�f(�fT��f(��A\@fT�f.�vf(ȉ���I��9�u��H*��H*ø�\L�.�^��?(t$ (|$0H��@[^_�f.�f.��I*�zt)�\��\��H*��^��\�.�X��^��1���H*��X]�.�\ݍ.�^���H�V(1��Y0L�M�������L�F8����AWAVAUATUWVSH��(H���L�iH��I��M�Ƌ�H���D���	E����D���	E1�1�I���$f�A�GI��9��	��D���	A��H��L��I��L�
H��H�T�*������t�I�icc_Lut_I�inv_inpuI�t: MalloH�c failurH�e in invH�erse looI�kup initM���M���M���I���I���I���M���fADž.A����if.�L��L��1���D���	E��t9M��1��H���AUL��I��H��H�L���	ƍGH��;��	r�L��L����H��([^_]A\A]A^A_�fffff.�AWAVAUATUWVSH��(H���L�iH��I��M��D���E���D���	E����D���	E1�1�I���"�A�GI��9��	��D���	A��H��L��I��L��	H��H�T�j������t�H�icc_Lut_H�e in invH�erse looI���H�inv_inpuI�kup initI���H�t: MalloI���I���H�c failurI���I���M���fADž.A����if.�L��L��1�������	��t;M��1�H���AUL��I��H��H�L���	ƍGH��;��	r�L��L�����H��([^_]A\A]A^A_�fffff.�UWVSH��(���H�yH��L�Å�tT��t`D���E��tCD�IPH�iPE��uH��L���H��H�������ui�H��H��H��([^_]�B���f�H�H�1�H��([^_]�fW��Af.�s H����
��.�^�N1�����
0���I�icmCurveH�_lookup:H� Malloc H�failure H�in reverH�se lookuI�p init.L���H���H���H���H���H���L�������6���fffff.�SH��`)t$@)|$P��x �AP9�}fW�f.�w���.f.�vf(�(t$@(|$PH��`[�f��AH��t����f(���f.��ARf��t���f(C�E1��*��Y�f.�wP�]�T$0H�L$8�T$ f(��0b�H,�D�C��T$0H�L$8�T$ A��E9���D���H*��\�f(��ATf��t"f��f(����\��Y��X��&�����H�AX��.A�D��A���B��*��*��^��^��f.������q`�yh�IXf(��Lf(��\��Y��X�����I*�A���\�f(��N���f.���H�AX���.A�D��A���PB�@�*��*��^��^��%���f�f.�zu�qx����Ip�d�������������G���@SH��P)t$@�������������������C��AfW��H*��Y�f.����f.�wf(�0�f(ƉD$8H�T$(H�L$0�J`�L,�D�C��D$8H�T$(H�L$0E9����I*ȃ�I��H���\�H����B��\��Y��X��
(t$@H��P[�f�I�H�1�(t$@H��P[�fW��Af.�s>H����H�T$(�9JH�T$(1���ĻE1��f(��p���fD�
0���E��A���I*�J��I���\��9���ffffff.�AWAVAUATUWVSH��8E��H��H��D����H��a.H���W D�ETE����A����H�3b.H���W ��t8D�]TE��t/1�H�EX��A��H����L��H�"b.L�L$ �\$ �W ;]Tr�D�E`E����A����H�b.H���W ��t8D�U`E��t/1�H�Eh��A��H����L��H��a.L�L$ �\$ �W ;]`r�H��a.H���W D�EpH��a.H���W D�epE����A����L�-�)3��A��D$/1�A��H��a.H���W A9�v`��$���H��a.H�����W ��Hw5A9�v0H�Ux��D�<D��A�Յ�E��u˃�H��a.H�����W ��Hv�A9�w!H�G H��T.H��H��8[^_]A\A]A^A_H��A��H��T.H���W A���O����|$/�D���H�G H�a.�H��8[^_]A\A]A^A_�H�8`.H���W D�E`E���l���H�t`.H���W ���H�EXH�`.H��L�L�D$ �T$ �W �)���H�EhH�O`.H��L�L�D$ �T$ �W �f���DAWAVAUATUWVSH��8E��I��H��D���H�u`.H���W E�D$LH�j`.H���W A�l$L��������L�-(3��A��D$/1�A��H�@`.H���W 9�������H��_.H�����W ��Jw59�v1I�T$P��D�<D��A�Յ�E��u˃�H��_.H�����W ��Jv�9�v3A��H�@S.H���W A���r����|$/�g���H�G H�n_.�H�G H�
S.H��H��8[^_]A\A]A^A_H��H��8[^_]A\A]A^A_�f.�AWAVAUATUWVSH��8E��H��H��D�D$(��H�K_.H��S D�F`E����E�`�H�?_.H��S E�����|$(L�-�&3A��D$/1�A��H��^.H��S A9�v`�� ��H��^.H�ك��S ��Jw5A9�v0H�Vh��D�<D��A�Յ�E��u˃�H�y^.H�ك��S ��Jv�A9��@H��Q.H��S D�ftE���fE��D�FpH��^.H��A��S �|$(A��1�A��H�9^.H��S A9�v8��A9�v#H�Fx����H�ك�D�PH��^.�S ��Jv�A9��RH�cQ.H��S D���E����D���E��H�o^.H��A��S �|$(A��1�A��H��].H��S A9�v8��A9�v#����H�[^.D���H�ك��S ��Jv�A9���H�C H��P.H��H��8[^_]A\A]A^A_H��A��H��P.H��S A���0����|$/�%���H��\.H��S D�ftE�������H��].H��S D���E������H�C H��].�A��H�AP.H��S A���
���E������H�C H�q\.�L���A��H�
P.H��S A���F���E���=���H�A\.H��S ���H��\.H��S ���H��8[^_]A\A]A^A_�AWAVAUATUWVSH��HE��H��H��D�D$8��H�].H���W �EL��uKH�].H���W D�EPE��E�`�uwE1�H��V.H���W H�G H�OO.H��H��H[^_]A\A]A^A_H������t$D�EPH��V.H���W �H��H[^_]A\A]A^A_�H��\.H���W D�ePE��H�[V.H���W E��t��|$8L�5!#3�D$4�D$0L�t$(�D$?E1�1�f.�E���g�H�M\.H���W �\$4A9�w?��D�<D��A�օ�E������H��Z.H���W ����JwLA9�vGD�}L��H�UXE��t�E����D�<D���T$(��E����H��[.H���W ������Jv�A9�v
H��M.H���W �|$8���uLE����E1�A��A!�A9��m����D$0�|$0�����|$?����H�G H��Y.�M���H�Z.H�����W �1���H��M.H���W �h���f�D�H��H��Z.�W �H���f�E1��t����A��H��Y.H����W �\$4���H��Z.H���W D�ePE������f�AWAVAUATUWVSH��8E��H��H��D��$��/H��Z.H���W H��Z.H���W D�E\H��X.H���W D�e\E����H��L.H���W L�5� 3E1�E��H��Z.H���W F�D�hH��X.H���W F�d�hE����A������$��D$(�D$/1�A��H��X.H���W A9�v^����H�wX.H�����W ��Hw6A9�v1J�T�x��D�<D��A�օ�E��uʃ�H�DX.H�����W ��Hv�A9��H��K.H���W I��I���!���H��8[^_]A\A]A^A_�A�������$�L�-�3A��D$(1�A��H��W.H���W A9�������� ��H��W.H�����W ��Hw5A9�v0H�U`��D�<D��A�Յ�E��u˃�H�yW.H�����W ��Hv�A9��Z���A��H��J.H���W A���l����|$(�a���H�W.H���W �/���f�H��J.H���W �D$(�|$(�k����|$/�`���H��V.H���W ����fDAWAVAUATUWVSH��8A��H��H��D�D$,��E1�H�bX.H��1�A��W D�EPH�SX.H���W E���D$(L�-h3��f.�H�BX.H���W �EP�\$(�
9�r"�a�H�/X.H���W �����EP��;E9�sAE���H�UX��D�<D��A�Յ�E��u���H��I.H�����W ��;�EP~�DE����9�v
H�xI.H���W 9]P��A��vWE��tR�|$,tpE1�A��E���;���A��H��U.H���W �\$(�/���f�D�H��H��V.�W �6���f�A���f.�H��H.H��A��W �H�G H�+W.H��H��8[^_]A\A]A^A_H��H��8[^_]A\A]A^A_�H�G H��H.��fff.�AUATUWVSH��(�AH��I��D�Ņ����A �T��?�Q ua��?v>�E�L���A��L��H��I�|@@H��H��H��@����H9�u�I�E��?H��I�H�N$A��L��H��([^_]A\A]�Q�»@E��H�|$)�L��9�H��r�A��L��H��M��M�)���PH��H��褍���^���H��([^_]A\A]�f�AWAVAUATUWVSH��)t$@)|$PD)D$`D)L$pI�͉�$�L�yA�U�����M����H�D$8H��L��A�H��H���
A�E�E�E�E�E�ˆE���U����U����UA�EL�ˆE���U����U	����U
A�EP�ˆE���U����U
����UA�}locn��A�ETI�]x�ˆE���U����U����UI�UXH���f�H��H9����8u�H�MA� �OI���H���H��H9��N�8u�H�M4A� H���TOA�EP����E�eTfEW�L�uT�D"u.�=2u.�D$4�52u.�|$4I���D�H@Hi��I��H�WH�7H�_(H���DH��H9����8u�A� L��D�L$ ��ND�L$ A�� baL�yA�� ZYX�4H�icmNameddž� PCSƆ�H���H�ColorValdž�H���H�2_write:H���H� UnknownH���I��H��H���P�(t$@(|$PD(D$`D(L$pH�Ĉ[^_]A\A]A^A_�H�icmNamedI�ColorValI�2_write:I� Root stI�ring namH�es is unH�terminatH���L���L���L���L���H���H���fdžedƆdž��+���H���M�N I�غ ZYX�P������8E�����G@�AY��X�f.�skfD.�wdA��I�F&1�I��A��H,�A�ɈHA��L9�D��j�DHD��I�D&�AY��X�f.�sA��H��fD.�v�f�H�icmNamedH� coord fdž�aileH���H�ColorValH���H���H�2_write:fdž�dH���H� write odž�H���H�f deviceH�������H���M�N I�غ2baL����������H�f PCS coH�icmNamedI�ColorValI�2_write:I� write oH���H�ord failH���L���L���L���H���fdž�edƆ�dž��N���E�eT�D$4C�D$&IƋD$4A9EP�Z���I�� ��$�H���P���%I��I�icmNamedI�Color_wrI�ite fseeH�k() or fH�write() M���M���H��H��M���I���I���ALJ�failfALJ�edAƇ��PALJ�����H�icmNamedH�Color_wrH�ite: ColI�or prefiI�x is notI� null teI�rminatedI���I���I���M���M���M���M���AƇI��H��H���PALJ�����H�or sufixI�icmNamedI�Color_wrI���H� is not I�ite: ColI���H�null terM���I���H�minatedM���M���I����_���I�icmNamedI�Color_wrH�ite get_H�size oveM���M���I���I����ALJ�rflofALJ�wALJ�����I�� L�L$8A�H��H���PH9D$8�����I��H��H���P1�����I�uXI�]xH����H��H9������8u�H�}H��H����GH���_GM���H���
H��L9�������:u�H�tH��H���GH���)GE�EPE������E�MTM���H�|fEW�1��D$n.�=\n.�5Ln.@A��Mi��M�M�t$I�$I�T$(L���
H��H9��S�8u�L��H��L�D$(D�L$ �	GL���FD�L$ L�D$(E�����AD$@�AY��X�f.�sJfD.�wCH�LA��1��@H��fD.�w'�H,�L9Ȉ���AD�H�AY��X�f.�r�H�icmNamedH�ColorValI�_write: I�write ofI� device H�coord faH���H���L���L���L���H���ǃ�iledƃ�ǃ����M�����K�L�EE�MTH�|D��H�A9uP������Z���fDH�icmNamedH�s is untH�erminateH���H�ColorValH���H���H�_write: H���H���H�Root strfǃdH���H�ing nameǃ�H�����H�icmNamedH�Color_wrI�ite mallI�oc() faiI���I���M���M����ALJ�ledALJ����ffff.�AWAVAUATUWVSH��X)t$@��H�ω�E��H�Y��H��A��L��H���H��H���XH�� D��H���P��u"H�� M��A�H��H���PI9���H�icmNamedH�Color_reH�ad: fseeI�k() or fI�read() fH���H���H���L���L���ǃ�ailefǃ�dH��H��H���Pǃ��(t$@H��X[^_]A\A]A^A_�DH�icmNamedI�Color_reI�ad: Tag I�too smalI�l to be H���L���L����L���L���ǃ�legafǃ�lǃ��i���@I�icmNamedI�Color_reH�ad: mallH�oc() faiL���L���H���H����ǃ�ledǃ������D�n��A��FA��A��FA��A�A��2lcnD�/��A��locn����S���F�V	N�&����V
����V��ЉGL�F�V
����V����V���A��locn�GP���F�V����V����V��Ѓ��GT�(H�oXH�VA� L�T$(H����BH�GxL�T$(�
H��H9����}u�H�V4A� H��L�T$(H���BH���L�T$(�H��H9����}u�L�T$(H���W@��L�T$(��D�_PE���vH�nTH���L���D�oTI9�D�H@M�<$��L��H)�H��%��H��&D��E1�H��5h.H9���L�u H����H��L9����8u�I�L$A� H��D�L$0L�T$(D�\$8��AD�L$0L�T$(D�\$8A�� baL��A�� ZYX�`H��H��H���P����fDH�nI9��
L�к H)�H�� HOƒ��|�~H��u�tf�H���9�^��u�I�icmNamedI�Color_reI�ad: ColoH�r prefixH� is not I�null terI�minatedL���L���L���H���H���L���L�������f�H�icmNamedH�Color_reI�ad: Tag I�too smalI�l to be H���H���L���L���L���ǃ�legafǃ�l�Y���I���M�D$(M�� ZYXL�T$(D�\$8萧��D�\$8L�T$(1�E��t-�H�L&��I����H*��^��AD�@H��A9�w�A��D9_PD�oT��E��C�D-&Mi�L��H�H���I9�D�H@M�<$rL��H)�H��%~H��&D��H�H9��t���H�icmNamedH�ColorValH�2_read: I�Data tooI� short tI���I���I���M���M���ALJ�o refALJ�adAƇ�ALJ��b���f����G���H����H<�C�����GT�X���H���H�&D.A��;>����A��locn����H�Color_reI�icmNamedǃ�olorH���H�ad: WronL���H���H�g tag tyƃ�H���H�pe for iH���H�cmNamedCH����K���DH� not terH�icmNamedH�ColorValI�2_read: I�Root namI�e stringI���H�minatedI���I���M���M���M���I���ALJ��	�����H�icmNamedH� is not H�null terH���H�Color_reI�minatedH���H�ad: ColoH���H���H�r suffixH���H���L����:���I���M�D$(M��2baLL�T$(D�\$8�q���L�T$(D�\$8����H��H��H���P1����������L�gXH��L�T$(L���;L���Q;L�T$(H�lI9�rAL�к H)�H�� HOƒ�����}H��u�H���9����u�����I�icmNamedI�Color_reI�ad: DataI� too shoH�rt to reL���L���L����L���H���fǃ�adƃ�ǃ��%���L��H��D$8L��A�P�D$8����L�gxH��L�T$(L���:L���N:H��I��W@��L�T$(u��OP�������N�t%H���D�gTM9�L�}���54a.E1�E1�L�к L)�H�� HOƒ���A�>L��u�@H���:����u�H�ColorValI�icmNamedALJ�inatI���H�_read: RM���I���H�oot namefALJ�edI���H� string AƇ�I���H�not termALJ�I�������g���DL�]L��L�L$0L�T$(L��L�\$8�r9L�\$8L���8L�T$(I�LL�L$0I9��
L��D��H)�H9���1�E��t @��H*��^��D�@H��A9�w�H���A��L�T$(J�L
�8D9oPD�gTL�T$(�����E��M�tD��MiɸI�L�M9�L�}�T���H�icmNamedH�short toALJ� reaI���H�ColorValI���I���H�_read: DfALJ�dI���H�ata too ALJ�I�������H� read deH�icmNamedH�ColorValI�_read: DI�ata too I�short toI���H�vice cooI���I���M���M���M���I���ALJrdsALJ�����fffff.�H��(�(��8H��t6H�A���H�H�ד��H�PH����H�PH����H�PH���H�P H��(�ffff.�UWVSH��(1�H��H��H����A�h�H��VH��H����H�p@�hHH��;��1�A�H��H�H�W���H�CH����H�CH��H�CH�����H�C H�����H�C(H��;��H�C0H�%���H�C8��6��t(H�C`H�{P�CXH��H��([^_]�f�H���6H�E1�1�H�C`H���6����t�H��V �@���H��H��t@�����1���1�����f�WVSH��`H�\$ H��L��H���5I��E�I��A������A��D!�%����t��H�������D�I�QLD��H��I��fA�b��5H��1�H��tH���Z���H��t�@XH��`[^_�fDE1��h����WVSH�� L��H��H��A�p�H��SH��tnH�S:��H�pPH�pXH�H�X@H�H�J:��H�p`H�phH�PH��~��H�PH�\}��H�PH�����H�P H�6:��H�P(H�;:��H�P0H�P:��H�P8H�� [^_�@UWVH��0H��H������H��1�H��tI��H��H���6���H��t�@HH��0^_]�H�D$(H��V H�D$(��H��(���H��t�@LH��(�fDH��(���H��t�@LH��(�fDH��(���w%H��:.��Hc�H��A�A�Q���A�1�H��(��H����2baL�_���1���H����4baL�J���1���fDA�A�1��DA�A�Q���A�Q���A�Q���A�1�H��(�@L��L���E9��1��q���A�A�Q����H*�1��YQZ.�A�J����A�A�Q���A�Q���A�Q����H*�1��Y�Y.�A����DA�A�1����f�A������A��+����A�A�Q���A�Q���A�Q���A�@A�AA�Q���A�Q���A�Q���A�1����A�A�Q���A�Q���A�Q����*�1��Y�X.�A�F���A��H*�1��^�X.�A�&���A�A�Q����H*�1��^�X.�A���f�H���� SCP�_���1������H���� ZYX�?���1�����H����8baL����1�����H���� baL���1��{�������M��w%H�P8.��Hc�H��A�������}N��M��H���M�к2baL�%���DM��H���M�к4baL�	���f�A�����w�A�0��f.�A������w���A�P��A�1�ÐA���A�@��A����A�P��1���A�P�A�AA�A�AA�@A�A��A�@A�BA�@A���A�@A���A�@A���A�@A�A�@1���PW.�AY��XFW.f.NW.���fW�f.������H,���A�@1���A��fD�W.��AY�X�V.f.W.�����fW�f.�������H,�����A������n���������b�����A�P��A�1�ÐA���A�@��A����A�P��1���A�P�A�AA�A�AA�@A�A�������AL����#��f��V.��AY�X6V.f.&V.����fW�f.������H,�A�1����U.���f�M��H���M�к SCP�ٟ��f�M��H���M�к ZYX鹟��f�M��H���M�к8baL陟��f�M��H���M�к baL�y���f�AWAVAUATUWVSH��H1�H�=��2�΋
7(2@�t$3A��Hc���H��H�&(2H�,��Ⱥgfff�����)‰�����D$1A�ʼn�)���
�'2��A����D$2�L$0A����ׅ�tH��H��t"�L0��ׅ�u�H�	5.A��H���F.�)E��E��H��4.D�|$(D�t$ E��E��H���.H��H��H[^_]A\A]A^A_�ffffff.�H��(H��4.��lcmntQ~[��rncsH��4.t@��capsH��4.t1��rtrpH��4.t"���H��4.H�
02I���-H��/2H��(����knilH�X4.t�rtnmH�:4.tց�tsbaH�?4.u��ŐH��(H�5.��   Lt]~`��5HCM����� BGRH�O4.t:����rbCYH�04.t%���� ZYXH�4.t��   YH��4.uT�H��(Á�RLCBH�d4.t�����RLCEH�j4.t����� YMCH��3.t�����RLCCH�.4.t����H��3.H�
�.2I���z,H�{.2�f���2baLt����8baLt�D��4baLu�H�V3.H��(Á�RLC6�$~c��RLC8�&����RLC7�w���H�r3.�������YARGH�3.���������RLCFH��3.�7���������RLC3H�3.����z��RLC2H��2.�
������f���7HCMt�����8HCM���� SCPH�:3.�����~�����4  L�r���f�����2  L������Y���f���RLC4H��2.�=�����RLC5������H�n2.�$���@H�f2.����@H�f2.����@��KYMCH�2.�����RLCDH�h2.�-�������D��8  L������ baL�����W�����RLC9H�2.�������RLCAH��1.�������D�� vuYH�2.�m����� yxYH�o1.������U���D�� SLHH�c1.�=����� VSHH�L1.�}����%���D�� tpLH��1.�
����� vuLH�1.�M������DH��(H��1.��TFSMtQ~[��WNUSH��1.t@��TNGTH��1.t1�� IGSH��1.t"���H��0.H�
K,2I���{)H�<,2H��(����xin*H�Q1.t�LPPAH�1.u���H��(H�63.��imult_~k��3dspH��3.tN����gratH�O2.t9���weivH��4.t$����hcetH�]4.t��tgcvH��4.unH��(�f���tpkbH��2.t�����ddmdH�62.t��&��trpcH��1.t����tlacH��1.t���dahcH��1.t��k���H�_/.H�
=)2I���M(H�.)2�k���f���2erpH�~2.�O����g��0dspH��2.�6�������i2spH��2.������s2spH��2.�x���������1A2BH��0.�������CRTbH�10.��������2A2BH��0.�������straH��3.���������ZYXgH�71.������G��dnmdH��0.�v�����CRTgH�1.�����^�����1B2AH�O/.�K����3��0B2AH�/.������-�����ZYXrH�2.��������qespH�M1.������CRTrH��1.�\���������locnH��-.�������saemH��0.�������2lcnH��0.���������idrcH��/.�������csedH��0.����s������1dspH��0.�_�����2dspH��0.������G���D��tmagH��/.�/�����CRTkH��/.���������D��2B2AH�+..�������0A2BH�h..�Z������D��ZYXbH�..������ dfbH� 1.�*������D��0erpH��/.�������1erpH��/.��������D��drcsH��0.�o�����nrcsH��0.�����W���D��deuvH��0.�?�����tptwH�)/.������'���DWVSH��0D��0H��E��t4L��81�A9I�@ u�TfDH��I��H�� L)�9P�tC��D9�u���_���H���H��0.I���$LJ��H��0[^_�M��1�1�I�BH��t�H���ɉH��I�BA��D9�sP�ك�L��8H�ȉ�H��I��I��L�M�M�L�M�HL�HM�HL�HM�@L�@D��0A��D9�r�1���dahcD��0�a���LJ��R����T$(H���P0I��D��0L�8�T$(�W����SH�� D��0H��E��t-L��81�A9M��u�Xf�I�� A9t:��D9�u������H���H��/.I���J#�ǃ�H�� [É�1�A9M��u�1��ffff.�WVSH�� D��0H��E��t+H��81�9I��u�M�I�� A9tG��D9�u�����H���H�R/.I���"ǃ��H�� [^_�1�f�L��HA������D9�M�K��A�K���t7H��E1�E1�HƸ�~f�9�DD�A��Ic�A�L����u�E����H�icc_renaǃ�typeƃ�H���H�me_tag: ǃ�H���H�wrong siH���H�gnature H���H�for tag H����H�� [^_�I��E9��3���E�M��A���u�H��HƁ�dahcD�t%1�A��dahc����ǃ�H�� [^_�@ǃ���@SH�� D��0H��E��t!L��81�A9u�@I�� A9t7��D9�u������H���H��-.I���!1�ǃ�H�� [�A���H��H�� [�G����SH�� D��0H��E��t!L��81�A9u�@I�� A9t7��D9�u���T���H���H�F-.I��� 1�ǃ�H�� [�E1���H��H�� [�ʄ��f.�H��(H�5-.��ncsftM~P��ohprH��-.t<����xawtH�8-.t'�a��cdivH��-.t��mdivH��-.uSH��(Á�macdH��,.t�����atseH�-.t�����busdH�-.t�ohpeH��,.t���H��&.H�
� 2I���H�� 2댁�sgmiH��-.�y�������sffoH��-.�`�����vtjpH�-.u��L����� TRCH�-.�9���~W��DCPKH�3-.�$����� DMPH��,.�a���������xelfH�I-.�������nrpfH�r,.�6��������� DMAH��,.�����������ncsrH��+.�������klisH��,.������D��vargH��,.�}�����tejiH�p+.������e���DWVSH�� E��H��H��~3H��,.H��S �NHH�{ ����H��,.I��H��I��H�� [^_I��H�� [^_�ATUWVSH��0H�H�YH��H��L9���L��H)�H���r��H����H����H��ʉV`��H����H����H���9��H�PI9���L��H)�H�����P�H	H�xD�H
����D�D�H��A�E��D�N`��I9���L��D��H)�H9���E�����x�?H���DH���8�(A��u�H�}I�icmTextDI�escriptiI�on_read:H� ascii sH�tring isH� not terI�minatedL���L���L����H���H���H���L���ǃ��I�icmTextDH�escriptiH�on_read:I� Data toI�o short I�to type I�descriptL���H���H���L���L���L���L���fǃorƃH�E�ǃ�H��0[^_]A\�f�H�icmTextDI�escriptiI�on_read:I� Data toI�o short H�to read H�Ascii he�H�UH���L���L���L���L���H���H���ǃaderƃǃ�H��0[^_]A\�f.���H���H�u).I�����ǃ�H��0[^_]A\�E1�A��A��E�L�D$(H��V@��L�D$(���H�NhH��L�D$(�$�F`L�D$(H�A��uH���L�D$(�F`L9��GL��H)�H���7��WL�g����W����W��ЉFp�G�W����W����W��…҉Vt��M9��L����L)�I��I��?L�H�H9�������L��fD�8u
�x��H����u�H�is not tL�eI�icmTextDH�escriptiH�on_read:H� UnicodeI� string H���H�erminateH���L����H���H���H���L���fǃdǃ��\���H�}H�icmTextDH�o short H�to read H���H�escriptiI�Unicode H���H�on_read:H���H���H� Data toH���H���L����ǃstrifǃngƃǃ�����H�icmTextDH�}H�Ascii stH���H�escriptiH���H���H�on_read:ǃringH���H� Data toƃH���H�o short ǃ�H���H�to read H��������1���@���L�D$(H��V@��L�D$(���H�NxL��E1����D�PA��H����D�f�H���8uހxu؋Ftf��Iă�u
A�����FtM9���L��L)�H����A�$A�T$���f���A�D$������*��CI�T$�'I9��uA��I)�M9��fD�@�H��K�LfD�8tH��H9�u�B�D���H���M���?I��F1�L�e����H�icmTextDL�eH� Data toH���H�escriptiH�o short H���I�to read H�on_read:I�ScriptCoI�de headeH���H���H����L���L���L��fǃrǃ��3���L�e����H����C@����@����@������1������H�t
�H����t	f�H�������������H�UH�icmTextDH�escriptiH�on_read:I� Data toI�o short I�to read I�ScriptCoH�de strinH���H����H���L���L���L���L���H��fǃgǃ�����H� ScriptCH�UH�icmTextDH���H�ode striH�escriptiI�on_read:H���H�ng too lH���H����H���L���ǃ�ongǃ����E1����1����Ɔ�H����B�_������H���a���f���H���F���@AUATUWVSH��(E��H��H��E���H��".H��S D�ELH��".H��S A�����uL����A��1�f���A��H��".Hi��H�ك�HuP�S L�k �N��H��".I��H��A�ՋNL�k �x�H��".I��H��A�ՋNL�k ��l��H�~".I��H��A�ՋN L�k ���H�z".I��H��A��H�N(E��H��V`H���E��H���0H��
.H��S ;}L�:���H��([^_]A\A]�ffff.�ATUWVSH�� D��0H�Ή�E��t*H��81�D�I��E9�u�AI�� E9t7��D9�u�D����H���H��!.I���udž�1�����H��H�:H�y��L��HA����t19���I�A�f.�H��A9���D�I��A���u�D9��SA�K�1�H���f�H�� D�A9��4H9�u�H��E�CI��H���PH������0H�H��8�ʃ�H��H‹G��B�G�B�G�BH�GH�BH�G�@��dahc��0��H�� [^_]A\�A�A���t5D�aE1�1ɽ�A9�DDŃ���A�D����u�E������H�icc_linkH� signatufdž�reH���H�_tag: wrH���H���H�ong tag Ɔ�H���H�type fordž�H���1��A���D����H���H�e .I���1�dž�H�� [^_]A\�fDdž�H�� [^_]A\�1����D���\�H���H��.I���>dž�1����H�realloc(H�icc_linkH�_tag: TaI�g table H���H�) failedH���H���1�H���L���Ɔ�dž��N����UWVSH��(1�E��H�ω�D����H��H����t-9���H�A�f�H��9����H�����u�1�trlcH��(,u�{�H��9�tx������u�I�icc_add_I�tag: unsH�upportedH� tag typ1�L���L���H���H���fLJ�eLJ�H��([^_]�1�f.���0����H��8D�
A9��?D�Q�1�I���H�� D�A9��L9�u���DD�AA������3H���]H��I��H���PH���m��H��8��H��A�`�H���PH����H�v����@L�@H�xH�PH�s���H�P H���H�P(H�ݺ��H�P8H���H�P@H�G��H�P0��0�ʃ�H��H�8��dahc��0�r�B�BH�B��0�eH��([^_]�f�D���h��H���H�J.I���J
1�LJ�H��([^_]�H�icc_add_I�tag: sizI�e overfl1�H���L���L���fLJ�owƇ�LJ�H��([^_]�D�A���t(1�E1�A�9�ED����ЋD����u�E���F���H�icc_add_H�ng tag tH�ype for H���I�signaturH�tag: wroH���H���1�H���L���fLJ�eLJ�����Hc�H��%,H��H���T(H���_������LJ�H��([^_]�H��D��H��H������A�H��8�p���H�tag: TagH�icc_add_LJ�H���H� table rH���H���H�ealloc()H���H� failedH���1����f.�AVAUATUWVSH�� E��H��H��E���H�g.H��S H���H��tE��H��H���P0D��0E����L���1�A��A��H�(.H��S H��8��L�c H���0����H�.I��H��A��H��8L�c �L0���H��.I��H��A��H��8H��.H��D�D0�S H��8H��.H��D�D0�S H��8H�D0H���:E��H��H���P8H��.H�ك��S ;�0�4���H�� [^_]A\A]A^�A���H���n��H��tRH��8H�D0H��t�E��H��H���P89�0vFH��H�8H�BH��tf�H���ɉHtGH�B�k���M��D���H�!.H��S �H�1.A��L���	LJ��1���H���P0H��H�8맋
�&�H�'.I��L���\	LJ����D��AD�A������AD����ffffff.����ff.��� tpL��~B�� ZYX�F����rbCY��� yxY����   Yu|H��.H��Á� SLH�~b��   L���� baL�J�� VSHu>H��.H�H��.H�BH��.H�B�Á� vuL���� BGR�D1�Ð�� YMC����KYMCu�H��.H�H��.H�BH��.H�BH��.H�B��H��.H�H�).H�BH�$.H�B��DH��.H�H��.H�BH��.H�B��f.�H��.H�H��.H�BH��.H�B��f.�H��.H�H��.H�BH��.H�B��f.�H�A.H�H�>.H�BH�:.H�B��f.�H�.H���H��.H�H��.H�BH�|.H�B��f.�H��.H�H��.H�BH��.H�B��f.�H��.H�H��.H�BH��.H�B��f.�H�4.H�H�.H�BH��.H�B��f.�H��(��A��vH�
�.H��H��(�DH�.��Hc�H��A���uH�
�2H��.�H�
�2��D��H��(����@D��H��(�d_��@D��H��(�^��@D�
}�1H�
��1�gfffIc�A��H��H��H�D���D����)�A)�A��D�
?�1���Binaf�Ary�A�#���D��H��(���@D��H��(���@A��locnH�
!.�����A��csedH�
.�����A��idrcH�
V.�������A�� ZYXH�
S.�����A�� dfbH�
P.�����f.�D�����H�
Q2H��.I���H�
;2�Y���fDD��H��(�$��@D��H��(�t��@D��H��(���@D��H��(����@D��H��(鄁��@A��H�
�.��H�
�.���A��H�
�
.����A��H�
�.����H�
i�1H��.��H�
V�1����D��H��(�t���@D��H��(�$���@D��H��(鄁��@�Ascif�Ai�b���H��.Jc�H��H�
;.�F���H�
9.�:���H�
�.�.���H�
.�"���H�
.����A��23fuH�
I.�������A��23fsH�
�.����-A��qespH�
�.����A��nrcsH�
�.�4������A��1tfmH�
�.������A��mitdH�
i.�����A��saemH�
�.����k����A��23iuH�
�.�O���ZA��80iuH�
�.�9���A��61iuH�
�.������ ���A��vrucH�
�.����A��atadH�
�.�u�����A��tgcvH�
m.����A��weivH�
j.����A��46iuH�
,.�4������A�� gisH�
�.�����A��txetH�
�.�������A��2tfmH�
_.�q���A��2lcnH�
�.�����X���DSH�ˉD�A�A1�A��v-�A��D��D��D�Q��A9�w�K��������҉K�C~A�1�@��E��9�u�D�SM���Ct��~1�A��H��9��C[�f.��A��AUATUWVSD��q�YH��A�j���H��L������Hc�L���O��#OE�҉O~1����H��A9���t=����1�1�@����E1�E��~A���A��A��F	$�I��E9��9�u�E��~TE1��B��E�����1ȃ�A��v#��@��vD���A��A��A1���u�D9�v\F��I��E9��D�W1�E����[^_]A\A]Ð��x�E1�f�A���A��A��G	$I��M9�u�9��,����X���E9�����fff.�AWAVAUATUWVSH��)�$@)�$PD)�$`D)�$pD)�$���E�ƃ���$�H��$���L��$���$D��$vv�ɻ~,H�D��$�H�L.H�pH�����dž�(�$@��(�$PD(�$`D(�$pD(�$�H�Ę[^_]A\A]A^A_�H��$���$�H�L�k�mH��$�H�BH�HL9���D�D;�/D���	D;��	�����	;��	��D��$�D���	1�L��$�A��I���>L9���I�DH9H�ID9��D9��	�FH��9��	��D9��	t�H�icmSetMuH�ltiLutTaH�bles TabH�les haveI� differeI�nt clutPH���H����H���H���L���L���ǁ�ointfǁ�sǁ��`���H�bles TabI�icmSetMuI�ltiLutTaH���H�les haveL���H���H� differeL���H���H�nt outpuǁ�tChaH���fǁ�n�ǁ�����H�bles TabI�icmSetMuI�ltiLutTaI���H�les baseM���I���H� icc is M���I���H�differenfADž�tI���ADž���N���H�ltiLutTaI�icmSetMuH�bles TabH�les haveH� differeI�nt Tage I���M����I���I���I���M���ADž�TypeAƅ�ADž����H�icmSetMuH�bles TabI�les haveH���I� differeH�ltiLutTaI�nt inputH���H���L���L����L���ǁ�ChanƁ�ǁ��5���D�H��$I���E1ɉ�H�D$ H���r������H��$ A���H��H�D$ D��r�����JH��$(A���H��H�D$ D��kr������H��$0A�D��H��H�D$ D��Br������H��$8A�D��H��H�D$ D��r�����^	���	9��	C��	I��H��Hc�$�H����Hc�H��H��H��$���L��$�I�H��$ �x	�� baL��D���	E��t1H��$�H��$ 1�I��?H��L��H��A9�w�H��$8�fA�� baL�D���	E��t1H��$�H��$ 1�I��?H��L��H��A9�w�fW�E1��D� .DŽ$�1�H�\$XH��$�J��D���	E���5���	�=	.�D
8 .1��I*ʉ��H*����\��^�t1��A�H��9�w�L��L��$H��$tM��L��H��$���$L��L��$ ���	����1�L��$�H��$ f(��$f.�vfA.�f(�v��A�H��9�v<�A��A����\��\��^�f.�v�fD.�f(�w��A�H��9�w�D���	L���	��1�M��H��A��D�9�O��w��D9����I��D9�$������D��E1���$���H�\$X��H��$H��H��$P��I��Lc�$��1�H���PH��I��u�ufDH��9�$���I��D�����|$pH���PH��I��uɋ|$p�����t0��Hc�1�H��I�<�H�4����I��H�H��H���PH9�u�I��H��$�I�icmLut_sI�et_table�H���PI��L��I�s mallocH���PH� of cubeM���M���I���H� center M���I���H�array faADž�iledI���Aƅ�ADž��P���f.�H�icmLut_sH�s index H�to inputI���I� colorspH�et_tableI�ace funcI�tion looI�kup failI���I����I���M���M���M���M��fADžedAƅ
ADž����H�colorspaI�icmLut_sI�et_tableI���H�ce to taI�s input I���H�ble entrM���I���H�y functiM���M���I���H�on lookuI�p failedAƅI��M���ADž����H�icmLut_sH�ry functI���H�et_tableI���I���H�s outputI���H� colorspI���H�ace to tI���H�able entI���I�ion lookI�up failefADždM��M���ADž��)���I�icmLut_sI�et_tableI�s table H�entry toH� input cH�olorspacH�e functiM���M���M���I���I���I���I�������D���	������	?��D���	E������H��$�H��$ 1�I��?H��L��H��A9�w����H��$0�����H��$�H��$0��$0H��$ H��$8H����$0����;1tfmH�`�HDŽ$H��$H�`�H��$H�Y@H��$��lI���_@H���_@L��$�H��$�H��$H��$���$0H��$ H��$�H����$0������	?��D���	E�������H��$�H��$ 1�I��?H��L��H��A9�w��K���H�icmLut_sH� of cubeH� center I���H�et_tableI�array faI���H�s mallocI���I���I���M���ADž�iledAƅ�I��H��$��H���PADž��d�H�icmLut_rI�ead: malI�loc() faI���M����M���ADž�iledAƅ�ADž��	�H�icmLut_sH�et_tableH�s table H�entry toI� output I�colorspaI�ce functI���I���I���I���M���M���M����#���H��$�y���H��$�H��$��$ H��$ H��$ H����$ ���H��_@I��_@H��$�L��$�������	L��$�L��$H���M���I�B��L��M��H��H9�A�I���+H����A��D�t$X��D���	��$�D���	A�@���� A�@�A9����H�ƒ���� A��A9���� w�A���������E����1�D��A��9���
A�Ƀ�����9�$�����$����A����I���H���PH��H�D$p�n	L��$`���	D���	H��$�fW�M���.��苼$�H���=�.H�D$xD���	1�E����M�L$�L��$�H��$ �y.1�1�E�D�\H��E���A*�D�D���	�I*��\��^��AD�A@�A�\��Y��X��ADE�D���	H��I��A9�w��D$X��t,E���D$TtH��$ 1�A����H��T$TA9�w�L��L��L��$(M��L��H��$���$(HcD$TH�T$pE1�L��H��$�H��N�H��L�D$8L�T$@L�L$H��$0L�L$HL�D$8L�T$@A���	����1�L��$�H��$ ��.�%u.�%f.�vf.�f(�v���H��9�v9�A������\��\��^�f.�v�f.�f(�w���H��9�w�M���	1�L�ƍLH��9�M��w�D$X��tL��H��I�D�K����	I��L;D$xH�4����M���V���	����L��$H��$`A;�0L��$PA;�M�L$��E1�L��$�H��$ �+.�%�.�?f�L��$HA��A;���L��$PI��L�XA;���I��L��D���	�*�O����I*��X��\��^��A
�A\���D���\��Y��X��AA�9��	�v���fEW�L��L��L��$(M��L��H��$���$(�D
[.E1�H��$�H��J��H��L�D$8H�D$H��$0H�D$HL�D$8���	����1�L��$�H��$ �%C.�3.�%�fA.�vf.�fA(�v���H��9�vl�A������\��\��^�fD.�v�f.�fA(�w���H��$H���1�A���(���E1����q��������1���B���f.�K��1�L��D�LH��9�N��w닃�	I��D9�$�H�4�����H��$�L���9����q���M����$������	�D$T�5�.�d$Tf(ƅɉL$X�*l$T�^�f(�tH��$H1���A��H��9D$Xw�D�D$TfW��%�.E1�L��$�L��$�A��D��D��$�L��D9\$X��1�E1�A���T�HH��A�9D$Xw�Hc�$��=�.E1틬��D�H��$�J�ꋸ�	����L���	f(�H��$�E1�@�D$TD���Bޅ��kO��f(�1�����H��D��L9��AX�u��B��Y���A��\��B�fT�I��D9��_�f(�w���v��.f.�vf1�fD(��2�f(�H��f(�9����f(�fT�fAU�fV��v+�ƍT�Y�I���Xf.�v�f(�H��9��w�I��D9�$�����H��$P��$`E1ۋ	����$`�ʃ�9��g����1�H��$\H��$P�+DA�D�L�@��A��D9�A��)���H��L��L��$HA��D9\$XA��u�����H�icmLut_aH�lloc sizH�e overfl��I���I���I���fADž�owAƅ�t 1�I��I��H��H���P9�$��I��L��H���P���E������������H�D$p������	L��$�L��$P���/�D���	I�B��L��M��H��A��H9�E�I����H����;1tfmHDŽ$���H���_@I���_�H���_�H�Y@H��$H���_@L��$�H��$�H��$H��$H��$�H��$���$ H��$ H��$H����$ �?�H��$P�I�H��_�H��_@H��$�H��_�H��$H��$�H�Y@H��$H��_@H��$�^�����t 1�I��I��H��H���P9�$��I��L���H���PI��H��$�H���PH�icmLut_sH�s mallocH� of vertI���I�ex smootH�et_tableI�hing valI�ue arrayI� failedI���I���I���M���M���M���M��ADž����������\���@f(����L��$�L��$�1�I��I��H��H���P9�$��I��L��H���PH�|$p�xD���	I���D���H��D�\$H�PH��H�D$`H�D$hD�\$H�oA�C��D
�	.L��$�L��$�E��H��H�D$xL�T$hH��$�D�L$h�D$XN�,�D��$�E���I���	H�L$`I����A���	��t&I�F�N�L��H���@H��H9��H��u�1�9��9L��$ 1�1�E1�DA��E�D�HD��A��H��E��9�w�E���	��$��{	.D����H*�H�T$pH��A\��Y<�D�T$@�X�����D,�D�T$@E����H��$`H��$�E�Z�1�H�\$0@A��D��D��E�D9�H�)�E9�FӉу��ىT���H��9�w�A���	H�\$0��t M���	F�9D���ƒ�D9�I��u�fW�E��fD(���L�D$xH��$ 1�I��f���H��L9�u�fW�E��M��L�l$`A��fD(�fD(�1�E��fA(�t0fA(�1�1���A��D��A��T�HH���A*��A9��X�w��Q�f.���f.�r
E9��	��1�fD����;T����M����H��A9��M��E��A���	A���	��t_I���	D��,fA(�A��f(�A9����f(�fT�fAU�fV��t'D��H����A^�f.�v�f(�A��A9��uم���E���	��$`A��1҃�A9‰�$`�l���I�F�f�����H��A9��P������@�9�u��=���f(��\�f(��^��Q�f.���E���	E��t5M���	E�D��D)�D��ƒ�I��D9��CL��Y��X
�
u��DX����A9������E���	�&����l$X�e���H�D$hD�D$hD9�$��&���L��$�H�T$`L��$�I��H���PI��H�T$pH���PfW���$��D
�.1�H��$�H�,�D���	E���N���	�={.�D�.1��I*ɉ��H*����\��^�tI1��A�H��9�w�L��$�H��$ 1��A����\��AY��X��A�H��9�w�L��L��$8H��$@tM��L��H��$���$@L��L��$0���	1�f(υ�u1���f.�vfA.�f(�v��A�H��9�v%�A�f.�v�fD.�f(�w��A�H��9�w�D���	L��
��1�M��H��A��D�9�O��w��D9�����H��9�$������I����$�H��$�H���PD��$�E��t��$�A���1����D���	�ADž�1�����f(�H�L$HD�D$8D�T$@�Q�D�T$@D�D$8H�L$H����H�L$HD�D$8�.�D�D$8f(�H�L$H����I��H�T$pH�icmLut_sH�et_tableH�s mallocH� of gridI� copy faH���PI��H��$�H���PI���I����I���I���M���ADž�iledAƅ�ADž������H��H��$�H��$H��$�D�L$ M��A��H��H�L$pH��$H�L$hH��$H�L$`H��$H�L$XH��$�H�L$PH��$�H�L$HH��$�H�L$@H��$�H�L$8H��$�H�L$0��$��L$(����H�Ĩ�f�fW�1�f(��_�H��H��u�Ð�
H.�fW���BfW��A�BfW��A�ffffff.���AX��B�AX@�A�B�AX@�A�f���A\��B�A\@�A�B�A\@�A�f���A^��B�A^@�A�B�A^@�A�f���AY��B�AY@�A�B�AY@�A�f�WVSH��P)t$ )|$0D)D$@fW�1�f(�H���D#.H���f.�w5f(��<��H��H��u�(t$ (|$0D(D$@H��P[^_�DfAW�f(���fAW���fD��Y���B�Y��A�B�Y��A��SH��01��Qf.�z�H��H��u�H��0[��H�T$ H�L$(��H�L$(H�T$ ��f��
�.�fT���BfT��A�BfT��A�ffffff.�UWVSH��H�L��I��H��-�D$(�D$ H��L�����H���-I��H����L�L�
@�-H���-H��L�D$8�T$8��L�FL�
�-H���-H��L�D$8�T$8�h�L�FL�
O�-H���-H��H��L�D$8�T$8�?�H�ڹ
�*����f���H��H[^_]���	�I�I�I�I �I(�I0�I8�I@�1�H��?H�H�AH�AH�AH�Q H�A(H�A0H�A8H�Q@�H��������tcH���	H�
H���	H�JH���	H�JH���	H�JH���	H�J H���	H�J(H���	H�J0H���	H�J8H���	H�B@�H���T���@H�H�H�BH�AH�BH�AH�BH�AH�B H�A H�B(H�A(H�B0H�A0H�B8H�A8H�B@H�A@�f�1���AX��D�AXD�D�D�AXD�DH��H��Hu��ffff.�1���Y���D�Y��D�D�Y��DH��H��Hu��D�A�A`�J�B �Y��Y��AX�j8�X��B(�Y��Y��Yb�X��B0�Y��Y�X��j@�Y��YZ�X��I�X��X��A��@VSH��(H��H��L��H��tH�C8H�H�C@H�BH�CHH�BH��tH�CPH�H�CXH�FH�C`H�F�C��at5��t0��bt+H��tH���I������H��tH���I��H�����D�Ch1�E����H��([^�f�H��H���H������fffff.�H��H�QpH������1���AY���AY@�A�H���AY@�AH��H��u�ÐH��XfW�L�L$HI���"1��Z�R��L�Y��Y��X��X��L0�Y��X��AH��H��u�I��H��M9�u�H�$H�H�D$H�AH�D$H�AH�D$H�AH�D$ H�A H�D$(H�A(H�D$0H�A0H�D$8H�A8H�D$@H�A@H��X�fDH��XfW�L�T$HI���"1��Z�R�A�AL�Y��Y��X��X��AL0�Y��X��AH��H��u�I��H��M9�u�H�$H�H�D$H�AH�D$H�AH�D$H�AH�D$ H�A H�D$(H�A(H�D$0H�A0H�D$8H�A8H�D$@H�A@H��X�H��()4$)|$�Y �I8�if(��q(�a0f(��Q@�Y��Y��Y��Y��Y��\��Y�(|$�\�(4$�Y�\��YQ�YI�\��X�H��(�DVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�H��H��H���>����
F�-����-fT�f.�v?(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H�Ę[^�f.��v 1��N(�V8f(��D^@fD(��f�AY�fD(��DY��>�n�DN�A\��DV0fD(��EY��EY��f(��AY��A\��D��-fAW��[f(��Y��A\�fE(��DY��Y��[0f(��AY��DY��A\�fAW��[fA(��AY��DY��D\�fA(��A\��DY��Y��Y��Y��D[ fAW��S8f(��\��Y��Y��s@�\��A\��SfAW��K(��^���L�^��L�L�^��LH��H��Hu�0��W���fDSH�� H���H�ˋ@89����=rtrp��H�p�+H���H��(H���H�\�+H���H�V�+H���H�P�+H���H�J�+H��H�D�+H��H�>�+H��H�8�+H��H�2�+H�� �6���H����@8���H�� [�D���E���I���L�)�+L�*�+L�
+�+L�,�+�
��+H�5�+���+L������L���L�����L��H���+H�
��+��(H�� ��0H��h�rtrpH��H��L��8L��@L��HL��PH��XH��`����AUATUWVSH��H���H��$`H��A��M��L��H��$h�@8�����H�U9��H��$�H�UH��$�H�UH��$�H�H��$�H�WH��$�H�WH��$�tH�����A����H�H�|$pH�D$pH�CH�D$xH�CH��$�H�CH��$�H�C H��$�H�C(H��$�H�C0H��$�H�C8H��$�H�C@H��$�H���L��$��x8rtrp�mH���M��L��H���v���H��$�H��I���c���H��H�������$�H�T$ H��H�D$0H�D$(�^�$�H�D$HH�D$8H�D$XH�D$P�D$ ��$��^�$��D$@��$��^�$��D$`�]���H��(H���N���H��teH�D$pH�H�D$xH�CH��$�H�CH��$�H�CH��$�H�C H��$�H�C(H��$�H�C0H��$�H�C8H��$�H�C@M��tH��L�������H��[^_]A\A]�H�|$pH�����w���D���E�������H���L��M��H�����H��H���~����^���f���2H�
k�-L�H`A�1���H����@8�>���WVSH���H�q�tptwH��H��VPH��t�8 ZYX��H����x8knilt�C��a�9���0��b�'H��+Ɔ�dž�H�C8H�
�+H�C@H��+H�CH�tpkbH��VPH��t�8 ZYX�GH�@�1Ɔ�dž��ChH�CPH�%�1H�CXH�"�1H�C`H����@8=rtnm�I=rtrpu������H�m�+L���L�Cp1�H��H�D$PH�Y�+H�D$XH�U�+H�D$`H�C8H�D$0H�C@H�D$8H�CHH�D$@H�D$0H�D$(H�D$PH�D$ ���1�H���[^_�H�icc_lookI�up: ProfI�ile is mI�issing MI�edia WhiH�te Point�H���L���L���L���L���H���dž� TagƆ�dž�H���[^_ËxL������H�@PH�H�S8H�PH�S@H�@H�CH�O���f���������������������1�H�@H��H��H��L���H���L�
I�HM�HL�BL�AH�RH�Qu�H�spH���H�����H��$�L���+H�����H��$�H�C8H��$�H�C@H��$�H�CH1�����PL�������H�@PH�H�SPH�PH�SXH�@�ChH�C`���D���E������H�C8H�|$pH���H��H��$�H�C@H��$�H�CHH��$�����H��$�H��I���3�H��$�H�C8H��$�H�C@H��$�H�CH�f���f.�AVAUATUWVSH��P)�$@H�Ή�D��H��E��D��$�D��$�A���H���PH��H���-�H�pH����H�@��H��H��H����H�� H���H��(H���H��0H�����H��8H�W��H��PH���H��XH����H��`H��C��H��hH���H��pH�D��H��xH�cD��H���H��ZH���H�7��H��(H�y��H��0H����H��8H�
��H��@H��YH��HH�aXH��PH�'H��xH��a��H��pH��_��H��hH�	WH��`H���H��XH���H�S H���H���H�S(H�0��H�C0��$��C��$�H��@H�����D��D���C��$�D��H�������$���H�W��H���H��A��H��H��������H��VPH��H�����D�A��ϋ�������� ZYX�>ǃ�H���H���A���H�D$ H����=������H���H���E1�H��H�T$ ��D���=������H���H��A�H��H�T$ D��D��=�����qH���H��A�H��H�T$ D��D��h=�����BH���H��E1�H��H�T$ D��D��<=������H���H��A�H��H�T$ D��D��
=�����UH��$<H��$0H�D$(L��$4L��$8H��H�D$ �� ��$0= baL����= BGR�M�%= vuL��=6HCM�1��$4= baL�m�'=YARGt �j= YMCt=KYMC���A�����H���H��$�H�t$0I��H��H����X	��$8fW�1���f(������\����Y�H��9��X��f.����Q�f.��)f(��*��Q�f.����$<f(��Yօ���H�F��fW�H���
f�H���H9�H���^��X�u����-fT�f.
�-�QH���H��x	H�� H����H��
(�$@H��H��P[^_]A\A]A^�H�icc_get_H��fdž�eH���H�luobj: Udž�H���H�nknown cH���H�olorspacH�����1��|����H�icc_get_I�luobj: UI�nknown eI�ffectiveH� colorspH���L���L���L���H���dž�acedž�H���1�����=YARG�����= SLHt= VSH�~���H���H��p	H�� H�!�H��
���DH�����	��t#H���ǃ�D����f.�H���D�����= YMC�7���=KYMC������'���D=rbCY�h���= yxY�]���= ZYX�������f.�= BGR�����D^= vuLt'=6HCM����������5`�-�@���E1�����= SLHt2= VSH�����A����=rbCYt�= yxYt�= ZYX�i���A��r���f(�蓱���f(�腱��$8����f�ATUWVSH�� H��H��A��D��D��A���H���PH��H����H�pH����H��H�-	��H�� H��	��H��(H���H��0H�s�H��8H�%:��H��@H��:��H��HH�y�H��PH�+
��H��XH���H��`H��HH��PH�Q#��H��`H��
��H��hH��GH��pH�7OH��XH�iNH��xH�+��H���H��!��H�����$�����H� H�H��hH��#��H��pH��GH��xH��
��H���H��"��H���H��������CRTrH��VPH��H������8vruc�u�CRTgH��VPH��H����Z�8vruc�N�CRTbH��VPH��H����3�8vruc�'�ZYXrH��VPH��H�����8 ZYX��@L�����ZYXgH��VPH��H������8 ZYX��D�XLE�����ZYXbH��VPH��H������8 ZYX��D�PLE����H���H���H�@PH�IPH�RPL�����L���L�L���L�AH�IL���L�BH�RL���L�@H�@H���H���L���H��H����x`SMCK�H���H���	�����H���H��H���H�S H���H���D������H�S(H�C0��$��C��$��C�D$p���D$x����$�����P��ueH��H�� [^_]A\�fDH�IL�H��hH����H��pH��KH��xH����H���H��
��H����T���H���1�H��H�� [^_]A\�fDf(�1��
��-1�f.�v�����f.�v�����f.�v��H��H��Ht���f.�v������{����
7�-H�غ�^��������^��������^����H�����*�������H�icc_new_H�iccLuMatH�rix: MatI�rix wasnI�'t inverH���H���H��H���L���L���dž�tablfdž�edž���1��6���f.�AUATUWVSH��XH��H���E��D�Njq@�A8��AE�=lcmn����=rncs�=caps�=rtrp��H�icc_get_H�luobj: UH�nknown pI�rofile cH���H���H���L���1�ǃ�lassƃ�ǃ�H��X[^_]A\A]��=knil��=rtnmts=tsba�m���A��t
A��c�����D�A<�D$H�|$@�l$8�l$0�l$(�t$ A��0B2AH�����H�����$��PH��X[^_]A\A]Å�����c�*���r��|�������A�1B2AA�c��$���D�A<A���D$H�|$@�l$8D��l$0�t$ H��D�D$(�P�H���e���H���A��0B2AH��D�@<�D$HD�d$@�l$8�l$0�t$ D�D$(��H���#���H���A��A��H�ًP<�D$H�D$@�|$8�l$0�l$(�T$ ���H�����H���A��A��H�ًP<�D$H�D$@�|$8�l$0�l$(�T$ �L������A���S���H�luobj: II�icc_get_ǃileH���H�ntent isL���H���H� inapproǃ�H���H�priate fH���H�or AbstrH���H�act profH���1�����@���z��A��c�]A����	��	E�����A�0B2A@��$��rD�A<A���D$H�|$@�l$8D��l$0�t$ H��D�D$(�c�H���x����P���DA��c�AD��	�Ґ��D�A<�D$H�D$@�t$8�t$0D�D$(�����A����A��c��A����H�icc_get_H�ntent isH� inapproH���I�priate fH�luobj: II�or NamedI� Color pH���H���H���1�L���L���L���ǃrofifǃleƃǃ����H�luobj: NI�icc_get_ǃ�yetH���H�amed ColL���H���H�ors not ǃ�H���H�handled H���1��{�������I�icc_get_H�luobj: IH�naproptiH�ate funcI�tion req1�L���H���H���H���L���ǃ�uestfǃ�edƃ�ǃ�H��X[^_]A\A]Ã��o���D�I<�D$H�D$@�t$8�t$(D�L$0�t$ A��0A2BH�����%������0���D�I<�D$H�|$@�l$8�l$0�l$(�f������������A���d	@��E���0erp�OA���@f�H�icc_get_H�luobj: UI�nknown iH���H���1�L���ǃ�ntenfǃ�tǃ����f���c�������(��fD�����q���A�1A2BA�cD��$��D�I<A���D$H�|$@�l$8D��l$(�t$ H��D�L$0���H������H���A��0A2BH��D�H<�D$HD�d$@�l$8�l$(�t$ D�L$0��H�������H���A���H��D�@<�D$H�D$@�|$8�l$0�l$ D�D$(�o�H���T���H���A���H��D�@<�D$H�D$@�|$8�l$0�l$ D�D$(����
����A��t��E������c�D$H�|$@A�YARG�l$8�D$0YARGA��l$(�t$ �tmagH�������f.�1�A�0B2AA�c��1�A�0A2BA�c�j���1�A�0B2A���A��c�5A�����2E���A�0A2B@��$��FD�I<A���D$H�|$@�l$8D��l$(�t$ H��D�L$0���H�������m���DH�icc_get_H�luobj: UI�nable toI� locate I�usable cI�onversioH���H���L���L���L���L���fǃ�nǃ�����1erp�D$H�|$@A��l$8�l$0A��l$(�t$ H���3��C�����a����bf������q���A�1B2AA��s�����a�W��b�=���E���A�1A2BA�����@�Q<A���D$H�D$@�|$8A��l$0�l$(H�ىT$ �_���H�������H���A��A��H�ًP<�D$H�D$@�|$8�l$0�l$(�T$ ��H���s���H���A��D��H��D�@<�D$H�|$@�l$8�l$0�t$ D�D$(��H���4���H���D�@<�D$HD�d$@�l$8�l$0D�D$(���D�A<A���D$H�D$@�|$8��l$0�l$ H��D�D$(�z���H������H���A���H��D�@<�D$H�D$@�|$8�l$0�l$ D�D$(��H�������H���A��D��H��D�H<�D$H�|$@�l$8�l$(�t$ D�L$0�9�H���N���H���D�H<�D$HD�d$@�l$8D�L$0����f.�A��a|A��b����A��c����H���H���-A���Ȯǃ�1��Z�A��t��a���
���H�luobj: II�icc_get_ƃH���H�ntent isL���H���H� inapproǃ�H���H�priate fH���H�or previH���H�ew tableH���1���1�A�0A2B���A��a����A��btEA���W���A�1A2B���A��a�8���A��btA���2���A�1B2A�'���A�2B2A����A�2A2B���A�2A2BA�b���A�0A2BA�a���A�2B2AA�b���A�0B2AA�a���D9��!���H�icc_get_H�luobj: II�ntent isI� inapproI�priate fI�or Link H�profileH���H���L���L���1�L���L���H���ǃ��w�D�A<A���D$H�D$@�|$8��l$0�l$ H��D�D$(�j���H�����H���A���H��D�@<�D$H�D$@�|$8�l$0�l$ D�D$(��H���}�H���A��D��H��D�H<�D$H�|$@�l$8�l$(�t$ D�L$0�)��9�@�Q<A���D$H�D$@�|$8A��l$0�l$(H�ىT$ ���H����H���A��A��H�ًP<�D$H�D$@�|$8�l$0�l$(�T$ ���H�����H���A��D��H��D�@<�D$H�|$@�l$8�l$0�t$ D�D$(�o���f.��2erp���fDA�2A2BA�c�?���A�2B2AA�c��A��������(���A���u���D�9���ff.�AWAVAUATUWVSH��XE��H��D��H�� t
ǁ(H�����,H����A��H���P���t��H��X[^_]A\A]A^A_�@H�� ���H���P��u+H�� H�l$@A�A�H��H���PH����H�icc_readI�: fseek(I�) or freI�ad() faiI�led on tH�ag countH���L����L���L���L���H���ƃ�ǃ��&����D$@D�d$A��A��D$BA��A��D$CA��A�A��TUUD��0��H��������D�h(A��|������A9���E���"A�������H�icc_readH�: size oI�verflowH���H���L���ǃ��l���H�icc_readH�: No heaI�der defiH���H����L���ǃ�nedǃ�����H���H���-E��蜨ǃ����DH��D��A� H���PH��H��8����0E1���t=UUUA�����w�@D�4�H��L��H���H��H���TH�� ���H���P��u"H�� M��A�H��H���PL9��NH��I�icc_readI�: fseek(I�) or freH�ad() faiH�led on tI�ag tableL���L���H��L���H��8H���H���L���ƃ��PH��H��Hǃ8�H���Pǃ������straH��SPH��t�823fs��H����x\lgra���@8=rtnm��H�-��+H�=��+H�5��+L���+L���+L�
��+L���+H�
��+H���+H���H���H���L���L��L��L��H��H�� H��(H��0H��8L��@L��HL��PL��XH��`H��hǃp=rtrp���t
1�=rtnm�z����dahcH��1��SPH���d����823fs�X����xL	�N���H�@PH�H���H�PH���H�PH���H�PH���H�P H���H�P(H���H�P0H���H�P8H���H�@@ǃ�ǃ�H�������H���+H���H��(H���H���+H���H���+H���H���+H���H���+H��H���+H��H�}�+H��H�w�+H��H�q�+H�� �u��H����@8���H� buffer I�icc_readI�: Tag taH���H�malloc()I�ble readH���H� failedL���H���H��@�L���L���H��8H���PHǃ8ǃ�����xL����H�@PH��(H�H���H�PH���H�PH���H�PH���H�P H��H�P(H��H�P0H��H�P8H��H�@@H���H�� �L��H���ǃp�@8�h�����0������L��8H��H�@H�T��D�I��D�D�I��D�D�I��D�A��AD�I��D�D�I��D�D�I��D�A�@�AD�I	��D�D�I
��D�D�IH����D�A�@I�� H9��v���H��H��H���PD��0E�������H��8G�$dF����zI��A9��A9��D�rA����E��E)�E9���A��E���H���H�J E1�D�p(�BA��E9��	�yH��A9�w/A9�r*�A����D9���A��H�I A���E9�v�D�r�
�s��H���H�5�-I��D�l$0D�t$(E��|$ ��H��H��8�H���PHǃ8ǃ�����H�icc_readH�oc() faiǃ�ledH���H�: Tag taH���H���H�ble mallǃ�H�������A���5���E1��nf�H�� A�A�H��H���PH��um�D$@�UA��H�8����UH�G����U���D;�0�G�����L��8D��H�� H��A�T;H���P���q���H���H�53�-�3H������E1��z���E1��n���@E1�����WVSH��0H�yH��H��H������������������A1��A`�������Y��Y��AX����X�����Y��Y��Y���X�����Y��Y���X�����Y��Y���X��N�X��X��F�H��0[^_�1�L9�t񋒐	��t�1��I��H��H��9�w�1�H��0[^_�fDH���H�¨	L�D$(������L�D$(uǃ���H�icc_new_LJ�tablfLJ�eH���H�iccLuMatLJ�H���H�rix: MatH���H�rix wasnH���H�'t inverH��������@H��?1�H�H�QH�QH�A�@�%�-��Z�R��J�Y��Y��\��
��-fT�f.�wF�
b�-0��^��Y�����-fW��Y��Q�BfW��Y��A�Y
�I��f.�H��XH9�tKH�H�H�BH�AH�B0H�AH�BH�AH�B H�A H�B8H�A(H�BH�A0H�B(H�A8H�B@H�A@H��X�L�YL�I8L�AH�Q(�I�A0L�Y�IL�I(L�A0�AH�Q8H��X���I�Y�YJ�X��I�YJ�X��ff.�H��()4$)|$�b�J�Apf(��Ah�Af(���Y��Y��Y��Y��Y��Y��\�(|$�\�(4$�\���I�AH��(�fff.���Q�Y��Y��I�Y��X��X��ffff.�H��(�	�Q�Y��Y��A�Y��X��X��Q�f.�zH��(�f(�������Y���B�Y��A�YR�Q�ff.��A�Y��X��A@�Y��XB�A�AYX�XZ�Y�f.���-�
�\��A�Y��Y��X��	�J�AP�Y��Y��X��I�YB�AYX�X��A�f.����-1�fW�f(��f.�w3f(�f(����fT�fU�f(�fV��H��H��u��fDH���fDfW�E1��)�-1��Bf.�w$f.�v-I��?�N�I��I��u��J�����B���fW�1���-f(�f(��f.�w/f.�vI�\�I��?L��_�f(�H��H��u��@f(�H��\�f(��_�f(���f����f�H��H�
�Z�Y��Y��B�Y��X��X��Q�f.�zF�
��-�f.�w.�^�0��
�Y�f(��	�J�Y��I�YB�AH��H�f(�H�T$0H�L$8�T$ �a��T$ H�L$8H�T$0�ffffff.�fW�1���\H��H���Y��X�u��ffff.�H��(fW�1���\H��H���Y��X�u��Q�f.�zH��(�f(��҉���A��\��Y��X���AH�B�\��Y��X��A�AH�B�\��Y��X��A�fffff.�H��XfW�1���A\H��H���Y��X�u��Q�f.�zF�
�-�f.�w.�^�1��A��\��Y��X��H��H��u�0�H��X�f(�H�T$@H�L$H�\$ L�D$8�ۈL�D$8�\$ H�L$HH�T$@�@H��)t$`)|$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$���R�Y��Y��J�Y��X��X��Q�f.����A�AP�Y��Y��AH�Y��X��X��Q�f.����-f(�f.���f.����R�D2fD(��T$8�RfE(��D^�fD(��T$@�A�D^�fD(��T$HfA(�fA(��AP�D^�fD(��T$PfA(��AP�D^�fD(��T$XfA(��D^��D^��AY��AY��AY��AY��\�fA(��AY��\�fA(��AY�fD(��\�f(��DY��Y��AX�fD(��DY��AX��D=s�-fDT�fA.��7�D$8�DYt$H�YD$P�DX��D$@�YD$X�DX�fW�fA.�v�g�-fW��^�H�AH�AH�AH�A(H�A0H�A8�9�y �y@�YH��?I��?H�AH�A H��?L�H�AH�AH�A(H�A0H�A8H�A@(t$`(|$pD(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�D(�$�H����EY��EY��EY����-�^�f(��EX��EX�fD(��A\��^�f(��Y��Y��DY��AX��Y��)f(��Y�f(��AX��D\�f(��X��\��Y��Y��Y��q�if(��yf(�fA(��Y��Y��Y��Y��Y��Y��Y0�AX��AX��Y��Y��i f(��\��A@�X��Y��Y��i(�a8���H�T$(H�L$0L�D$ 蝄L�D$ f(�H�L$0H�T$(�N���H�T$(H�L$0L�D$ �q�L�D$ f(�H�L$0H�T$(�U���f�H��()4$)|$�A�Ap�R �B(�Y��Y��Ah�A`�J@�X��B0�Y��Y��zh�Y��X��B8�Y��X��BH�Y��Yr�X��BP�Y��X��BX�Y��X��B`�Y��Y�X��zp�Y��Yj�X�(4$�X��zx�Y��Yb�X��Q�I�X�(|$�X��A�H��(�fff.�H��1�H9�tBL�L��L�D L�D�L�D@L�D�L�D`L�D�H��H�� u�H�Ĉ�f.�H��L�L��L�D L�D�L�D@L�D�L�D`L�D�H��H�� u�L�RL�JL�B0�L�L�M�L�\M�L�\M�L�\H�� H=�u�H�Ĉ��fW�1��ڷ-f(�f(��f.�w/f.�vI�\�I��?L��_�f(�H��H�� u��@f(�H��\�f(��_�f(���f����f�H�H�H�BH�AH�BH�AH�BH�AH�B H�A H�B(H�A(H�B0H�A0H�B8H�A8H�B@H�A@H�BHH�AHH�BPH�APH�BXH�AXÐ�A�A`�J �B(�Y��Y��AX�jH�X��B0�Y��Y��Yb�X��B@�Y��Y�XJ8�X��jP�Y��YZ�X��X��X��XBX�XR�I�A��DATUWVSH��H��$1�L��H�t$pL��$�I����\D��A�\�AH��H��u�H�\$ H��H�����H��I��H�����M��L��E1�E1�1���:H��I��H��H��u�A��H��I�� I��H��(A��u�H�İ[^_]A\Ã�u�B�B\�AA��A9�tI��럐H��?H�*돐H��x)4$)|$D)D$ D)L$0D)T$@D)\$PD)d$`�H��$��A)�Aa�AY�2�DR�\��DB�A\��A�EH�A\��Axf(��D%s�-fD(��Y��EY��AX�fD(��DY��AX��D�-fDT�fE.�wU�Y�0��EY��AY��AX��X��X��
�-fW��^��Y��Y��Y��X��)�Xb�a�XB�A(4$(|$D(D$ D(L$0D(T$@D(\$PD(d$`H��x�H��8)4$)|$D)D$ ��EL�T$`�A(fA(��Ax�AY�\��Ap�\��AQ�\�f(�f(��Y��Y��X�f(��Y��X��@�-f.����AH���\��Y��Ab�\��Y��AZ�\��X��Y��X��^�tT�
t�-�DY��\��Y��AX��)�AP�AY�Y��Y��X��Q�AYH�AQ�Y��X��I1�H��t�(4$(|$D(D$ H��8ÐSH��)t$)|$ D)D$0D)L$@D)T$PD)\$`D)d$pD)�$�D)�$�D)�$�L��$�H��$�H��$�L��$��AC�E[�k�c�A\��P�\��H�Eb�ER�A\��E+�A\��3�D$fD(�f(��A\���Y�fD(��E2��DY��A\�f(��Y��D\�f(��DY��Y��D\�f(��Y�fE(��\�fA(��EY��AY��AX�fD(��DY��AX��D=D�-fD.��Z�E\�fD(��D\T$M���E\�fE(�fD(�fE(��EY��EY�fD(��EY��E\�fD(��EY��EY��E\�fD(��EY��EY��EX�fD(��EY��E\�fD(��EY��DY��DY��EX�fD(��EY��DY��D^��E\��EY�fD(��EY��DY��E\��E\��EY��DY��EX��EX��D^�t�E0M��t�E9H��t.�AY��AY��AY��AX3�1�AXk�i�AXc�a1�H��t.�AY��AY��AY��AX��AXR�R�AXJ�J(t$(|$ D(D$0D(L$@D(T$PD(\$`D(d$pD(�$�D(�$�D(�$�H�İ[�ff.�H��X)t$0)|$@��A �A�R�\��J�\��Ah�Ap�AY�\��\��\��AQ�\�f(�f(��Y��Y��Y��Y��Y��Y��\��\��\��	�Y��Q�Y��A�Y��X��X��Q�f.�zw�
ڰ-�f.�wU�0��Q�I�^��^���^��Q�I��YR�Y��`�-�YJfW��\��\��A(t$0(|$@H��X�f(�H�T$ H�L$(�hyH�L$(H�T$ �g���f���I�Y�YJ�X��I�YJ�X��XA�fDH��(�	�A�\
�\B�Y��Y��X
j�-�X��Q�f.�zH��(�f(���x��fff.���I�\�\J�Y��Y��X�-�X��f���I�Y�YJ�X��f���A	�\�AQ�A\�A\P�Y��J�\I�Y��X��ff.�H��H�
�B�Y��Y��X��Q�f.�z8�
�-�f.�w �^�0��
�Y�f(��	�YB�AH��H�f(�H�T$0H�L$8�T$ ��w�T$ H�L$8H�T$0�f.��
h�-H��BfW�H�A��H��H)t$0�A�A@�\
�50�-�\BfW���Y��I�Y��X��Q�f.�zO�0�-�f.�w2�0��Q�^��^���Q�Y�YRfW��\��A(t$0H��H�H�T$ H�L$(��vH�L$(f(�H�T$ �f.���I�Y�YJ�X��XA�@��J�Af(��AYH�Y��X��XB�Y��\���R�AH�Y��\��I�
߬-fT��f.��%8�-��AP�J��A�Y��Y��\����-fT�f.�w:�YR0��AYH�\��^��	�J�AP�AY�Y�\��^��I��DH��)4$��A1L�T$@�A f(��Ah�AI�\��\�f(�f(��Y��Y��X��h�-f.�wh�AH���\��Y��AZ�\��Y��X��^�t5�
��-�Y��\��Y��X��!�AYH�AQ�Y��X��I1�H��t�(4$H���f�H��)4$)|$D)D$ D)L$0D)T$@D)\$PD)d$`D)l$pD)�$��D"H��$��DZ�AHfA(��E�E	fA(��EA�A\��X�\��8�fA(�fA(�f(��\�fD(��\��D5E�-�DY��Y��A\��D-��-fDT�fE.�wH�AY�0��EY��AY��AY��A\��\��Y��Y��Y��Y��\��\��^��^���I(4$(|$D(D$ D(L$0D(T$@D(\$PD(d$`D(l$pD(�$�H��fff.�H��h)t$)|$ D)D$0D)L$@D)T$PH��I��H��$�L��$�LE��A8�A� �E�\��X��Ah�A\��AI�AsfD(��\��D�-�\�f(��Y��DY��A\��D
}�-fDT�fE.��!(t$(|$ D(D$0D(L$@D(T$PH��h��D\�H���\�fA(��AY�f(��Y��Y��Y��\��\��^��^��A"�Ajt"�Y��AX �!�AY
�AXH�I�A"�W�-�f.��c���f.%H�-�U����AJf.��E���1�f.
(�-���3������-�
�\��A�Y��Y��X��	�YB�AYX�X��A�fD��Y���YR�Q�f��A�Y��X��AYX�XZ�Y�fffff.�SH��@)t$ )|$0f(�H��f(��rf(�f(��ts�
�-�sfW�(|$0(t$ ��K�CH��@[�D�Y
0�-�^
0�-�fffff.�SH�� f(�H��藀f(�H��H�� [�^���fffff.��A�AP�B�Z�Y��Y��Y
�YR�X��X��A�	��H��(f.��-w%�Y��-�X��-�Y��-�\��-H��(��
��-�Pj��fffff.��X��-�^x�-f.��-w�\^�-�^N�-�D�
h�-�jSH��`)t$ )|$0D)D$@D)L$PH���A�Ap�^�Ax�D�-�^qfA.��^y���D
ަ-fA.��DY��DX
Ӧ-���Y5��-fA.��X5��-�����-�Y��X��-�
��-fA(�(|$0�Y��\�D(D$@�\�D(L$P�\
|�-�Y��-�Y5��-��S�s(t$ H��`[��
(�-��hfA.�fD(��V���f(��
�-��hfA.�f(��Q����
�-f(��h�O���ffff.�SH�ĀH�H�T$`H��H�D$`H�AI��H�D$hH�AH�
��+H�D$p�j���H�D$pL�L���-H�
�1�dH�D$@H�D$hL�L$X�\$XH�D$8H�D$`H�D$0H�CH�D$(H�CH�D$ ��tH���1H��[��WVSH��E��H��H����H�-�-H��S D�F(H�%�-H��S �N`H�{ �-N��H�'�-I��H��׋FlD�NhH�&�-D�FdH�ىD$ �S �N8H�{ �N��H� �-I��H��׋N<H�{ �{O��H��-I��H��׋N@H�{ �`O��H��-I��H���H�NpH�{ ���H�
�-I��H��׋��H�{ �R��H��-I��H��׋NXH�{ ���H���-I��H��׋NHH�{ �PM��H���-I��H��׋NLH�{ �5M��H��-I��H��׋NPH�{ ���H��-I��H��׋NDH�{ �?���H��-I��H���H���H�{ ����H�ܑ-I��H��׋N\H�{ ��L��H�֑-I��H���H�F H����xd�#1����uEH��H��u�H��-H��S H�C H��r-H��H�Đ[^_H��H�Đ[^_�D���D���H�j�-D���H�ى�$������$�����D$x����D$p����D$h����D$`����D$X����D$P����D$H����D$@����D$8����D$0����D$(����D$ �S ����fffff.�UWVSH��(E��H��H��D��~aH��-H��V D�GLH�=y-H��V ��t>�GL��t71ۉ�H�n H�@H��HOP����A��I��H���-H�����;_Lr�H��([^_]�WVSH��0E��H��H����H���-H��S �NHH�{ �1���H���-I��H���H�NPH�{ ���H���-I��H��׋NhH�{ �Z���H��I��H���-�����-H���-H���YFp�D$(f(�L�D$(�S �NxH�{ �&���H���-I��H��I��H��0[^_I��H��0[^_�@WVSH��@H�A �� baL�I(H��H��L��H�D$ H�A0�L$(H�D$0t�G1��^��H��@[^_�H�T$ H�I I���_����� baLu�1��^D$ �H��@[^_��L$(�SH��0)t$ H���Q �� baL�A0��I(�J�A0�Bt'�Y�1��Y��Y���K�s(t$ H��0[�H�� I��������K�C�f�VSH��(L9�H��H��tI�H�I�@H�BI�@H�B�F��at!��t��bt�� baLt&1�H��([^�f�H�VpI��H������� baLu�H�N I��H���6���1�H��([^�ffff.�WVSH�� H��H���>��I�؉�H��H���N���	�H�� [^_�@UWVSH��(H��H�����I��H��H��������I��H��	�H������	�H��([^_]�VSH��h)t$ )|$0D)D$@D)L$PH��H���֞-�Ap�AX�A@�^5՞-�^��-�^͞-fD(��X��=��-f.��D\���fD(�f.��D\k�-�D^Z�-���\5T�-fD.��^5?�-��fA(��\4�-�^$�-�Y3(|$0D(L$P�6(t$ �DYC�DFD(D$@�K�Y��NH��h[^��
�-f(��`f.�fD(��q���f(��
�-�|`fD.�f(��l����
ŝ-fA(��[`�j���fDVSH��HL9�H��H��tI�H�I�@H�BI�@H�B���C�� baL����a�FA������f(�D�tY�^K@�YK8��^C@�YCH�F��u\��btW�� baL�7�� ZYXu�� baLta1�H��H[^����bt��^K(�YK ��^C(�YC0�F뵁� baL�H���I��H���Ν���� baLu�H�K I��H���C���1�H��H[^�f.���at+��t&��bt!H�C H�D$ H�C(H�D$(H�C0H�D$0�@H�C8H�D$ H�C@H�D$(H�CHH�D$0H�T$ H�K I�������C�L$(�^D$ ������a��	ы��Y��YD$0�N�F���@�� ZYX����H�K I��H��������H�K I��H���������UWVSH��HH�t$ H��H��H�����I���H��H���e���	�H��H[^_]�f.�UWVSH��HH�|$ H��H��H�����I��H��H�ى��%�����H���I��	�H��H�kH�������~iH�icc_lookH�up: CurvI�e->lookuI�p_bwd() ���H���H���L����L���Dž�failfDž�edƅ�	�H��H[^_]�fffff.�VSH��(L9�H��H��tI�H�I�@H�BI�@H�B�F��at��u<�� baL��H�VpI��H���]����� baLt61�H��([^����bt���= baLt.= ZYXuց� baLu�H�N I��H����1�H��([^��� ZYXu�H�N I��H�������H�N I��H������`���fff.�WVSH�� H��H������I�؉�H��H�����	�H�� [^_�@UWVSH��(H��H���=��I��H��H���������I��H��	�H�����	�H��([^_]�VSH��(L9�H��H��tI�H�I�@H�BI�@H�B�� baLt=�F��at��t��bt1�H��([^�f�H���I��H�����1�H��([^�DH�N I��H������ffffff.�WVSH�� H��H���^���I�؉�H��H������	�H�� [^_�@UWVSH��(H��H���-���I��H��H��������I��H��	�H�����	�H��([^_]�VSH��(H���L9�H��H��t���	��t1�I��H��H��9�w�F��t4��t0��= baL�= ZYXu�� baLtK1�H��([^���= baL��= ZYXu;�N��auc��uqH���I��H��識���� baLu�H�N I��H���"�뤄�u�= ZYXt���� ZYXu�H�N I��H���E����t�����t���b�H���f��H�N I��H�������{���f.�VSH��(H���L9�H��H��t���	��t1�I��H��H��9�w�F������w[= baL��= ZYXu|�N��au4����H�VpI��H��轗���� baLt;�1�H��([^����tǃ�bt�fD= baLt9= ZYXuҁ� baLu�H�N I��H�����D��u�= ZYXt���� ZYXu�H�N I��H�������H�N I��H�������S���ffffff.�VSH��(H���L9�H��H��t���	��t1�I��H��H��9�w�F��t4��t0��= baL�= ZYXu�� baLtH1�H��([^���= baL��= ZYXu;�N��auc��uqH�VpI��H���p����� baLu�H�N I��H��������u�= ZYXt���� ZYXu�H�N I��H�������t�����t���b�H���f��H�N I��H�������{���f.�VSH��(H���L9�H��H��t���	��t1�I��H��H��9�w�F������w[= baL��= ZYXu|�N��au4����H���I��H���z����� baLt81�H��([^�D��tǃ�bt�fD= baLt9= ZYXuԁ� baLu�H�N I��H�����D��u�= ZYXt���� ZYXu�H�N I��H������H�N I��H������S���ffffff.�ATUWVSH��)�$ )�$0D)�$@D)�$PD)�$`D)�$pH��.��?H�H�4g�ϣ�H�pt5F�t�?M��H��;��|�߿I�ȃ)���?H�D$HH��?H�\$0H�D$`H�~���u�?H�\$ H�D$pH���P��;�?H�|$@H�D$xH�s)��,z�?H��$�H��$�H��r�5��@I��dtE�?H��$�H�I��������?H�t$8L��$�H��L��$�H�m��߭�H��$H��$�H�AI�7g��`1�?L�T$ L�\$(I���p����?I��*��[���H��$�H��H��$�H�AH��L��$�L��$�L��$�H�D$PH��$�H�D$X�'���H��M��H�������Dȑ-1��=ޑ-�5ޑ-�D��-�D
��-�D��-��^�fA.��y�AY��AX���Y��\��H��H��u�H�T$pI��H��蓒���(�$ (�$0D(�$@D(�$PD(�$`D(�$pH�Ā[^_]A\�fA(���S��ffffff.�UWVSH���)�$p)�$�D)�$�D)�$�D)�$�D)�$�H�H�4g�ϣ�H��������?H��dtE�?L��H��I�(��
DW�?H�D$0H��;��|�߿H�|$(H�D$8H�pt5F�t�?H���?G
�?H�D$@H��.��?H�"4��'�?H�D$HH��?H�T$xH�D$`H��?L��$�H�D$pH�5@���޿H��$�H��$�H�e�5n���?H��H��$�H��0�����I��?H��$�H���ZÀ!�?H��$0H��$�H�p�=�|��?H�t$ H��$�H�!9����?H��?H��$�H�I��?H��$�L��$H�T$ L��$I�II�l���I���8n�?H��$H�AH��$�H��$PL��$�L��$�L��$�H��$H�AH��H�D$PH�D$XHDŽ$�HDŽ$�H��$ ���H�T$pI��H��1�����D��-�=��-�5��-�D��-�D
��-�D��-��AX��^��f.��w�A\��A^���Y�H��H��u�H��$�I��H���]����(�$p(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]�fA(��P��ff.�SH��@)t$ )|$0H���5�-H��z�YrH�f(��}X�Y��Cf(��{W�Y�(t$ (|$0�CH��@[�f�VSH��8)t$ H��H���J�Bf(�f(��Y��Y��X��Q�f.�z?�e�
j�-�Y�fW�f.�v�X
\�-H��v(t$ H��NH��8[^�f(��U�Kf(��C�ffffff.�H��x)t$0)|$@D)D$PD)L$`�A�AX�
�-f(��=��-f(��Y��Y��Y��Y��^��D�-��-�a�AX��Ef(��Y��AYh�AX�f.0�-�X��%��-�DY��X��DY��^��D^��D^��^��v�Y�-�X�-�Y�-�E\��\�fE(�f(��\�-��Y@�-�DY��Y��DB�r(t$0(|$@D(D$PD(L$`H��x�f��
��-H�T$(�NNH�T$(��H��)t$0)|$@D)D$PD)L$`D)T$p�a�D
��-f(��A�N�-�AY��X���DH�-�i�X��Y
�-�AY��^�-�X�f(��YR�-�DQ�-�Ap�AY��Ax�^�f.�-�^��^��X��^��X��z�\��-�^��-�Y�fA(�fA(��Y��b�Y��^��Y��Y5�-�\��2�\��A^��R(t$0(|$@D(D$PD(L$`D(T$pH�Ĉ�DfA(�H�T$ H�L$(��LH�L$(H�T$ �a�n�������-��Jf(��X��XBf.�wf(��^��	�^��Qf(��A����-fW�f(��A�	�Q�fffff.��
��-�"�Zf(�f(��-��-�X��XBf.�wf(�f(��^��^���I�fD���-�J��Rf.�w4f(��A�[�-�^�f(��\��\��Y��Y��!�AÐH�AH�AH����P�-�J�f.�w9f(��Qf(��^��Y����-�\��\��Y��A�fDH�AH�AH������-�J�{�-�Y��YR��X��X����-f.�w+�Y��-�	���-�Y��^��^��Y�Q�fW����-���-�	�Y�Q�f.��
P�-�B��Zf.�wd�%�-�
�-�Y��Q�Y��Y/�-�Y��-�Y��X��^��\�-�Y���-�	�^�fW��A�DfW�f(��Af(��Q�	�D�
��-�B�f.�wi�%y�-�
y�-�Y��Q�Y��Y��-�Y�-�Y��X��^��\��-�Y��l�-�	�^�fW��A�f.�fW�f(��Af(��	�Q�D��-�Z�
��-�Y��YJ��X��X��
�-f.�w(�Y��-�
��-�Y��^��^���I�f��
��-���-�I��fD�h�-�J�+�-�Y��YR��X��X��f�-f.�w+�Y8�-�	�|�-�Y��^��^��Y�Q�fW��Q�-�1�-�	�Y�Q�f.��
�-�B��Zf.�wTf(��Q�
��-�X��Y��-�Y��Y��X��ӄ-�^��\��-�Y��	�^�fW��AÐfW�f(��Af(��Q�	�DSH��`)t$ )|$0D)D$@D)L$PH���Q�
%�-f(��D	�%�-�Y��Y�-+�-�Y��AX��X�f.����DY
�-�D2�-�DY��D^��D^��AX�A8�Y��AY`�X��X�f.����Y=��-�5�-�Y��^��^����-�
�-�Y��^���F�YÄ-f(��o�-�A\�(|$0D(L$P�\��-�Y��f(�(t$ �A\�D(D$@�Y��Y��K�CH��`[��DR�-�D
1�-fW��%����58�-�=�-fW��O����SH��)t$@)|$PD)D$`D)L$pD)�$�D)�$�H���q���-�D�Y��
O�-�Q�AX��Y��X����-f.����DYZ�-�=��-�Y��D^��^��E���-�EX�AX��EP�^w�-�E�Y�fA(��DY
�-H�T$ H���^�-�A^��D$ fA(��A^��AX��L$(�X��D$0����(t$@(|$PD(D$`D(L$pD(�$�D(�$�H�Ġ[��=ׂ-�D��-fW��8���DVSH��H)t$ )|$0H��L���I�M�-��-�Y��YQ�9�X��X��P�-f.����Y=�-�5f�-�Y��^��^���-�Y�^��
��-�UD�Y=�-�V�N��-�\��\�(|$0�\�-(t$ �Y���Y��Y��S�KH��H[^��5؁-�=��-fW��u����H��(�	�A�\
�\B�Y��Y��X
:-�X��I�\J�Y��X��Q�f.�zH��(�f(��I��f.���I�\�\J�Y��Y��X�~-�X��A�\B�Y��X���VSH��hH�D$ L��I��H��H���$��H�T$@I��H������D$ �T$(�\D$@�L$0�\T$H�\L$P�Y��Y��Y��X\~-�X��X�H��h[^�ffff.�UWVSH��hH�\$ H�t$@H��L��I��H�����I��H��H�����H��H�����H��h[^_]�ff.�VSH��hH�D$ L��I��H��H�����H�T$@I��H������D$ �T$(�\D$@�L$0�\T$H�\L$P�Y��Y��Y��X�}-�X��X�H��h[^�ffff.�UWVSH��hH�\$ H�t$@H��L��I��H���m�I��H��H���_�H��H������H��h[^_]�ff.�H��)t$0)|$@D)D$PD)L$`D)T$p�A�QfD(��1fD(��Y��Y��\2�D\R�D\J�X��Y��DQ�fE.����R�B�Y��Y��X��Q�f.���fA(��Y��Q�f.���fA(��EY�fA(��AY�D(D$P�\�fW���~-�-@|-�X��Y��Y�(|$@D(T$p�AX��X�D(L$`�\��Y��\��^��_��
�~-�Y��X�(t$0�X��Y��^��X�H�Ĉ�H�T$(�gFH�T$(fD(������SFf(��@���f(��AFf(������H��(�w����Q�f.�z	f(�H��(��Ff(���f�UWVSH��hH�\$ H�t$@H��L��I��H������I��H��H�����H��H�������Q�f.�z
f(�H��h[^_]��Ef(���f�VSH��)t$P)|$`D)D$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$�H��H���I�A�Y��Y��X��Q�f.���N�V�Y��Y��X��Q�f.���X��5�z-�
�|-�Y���>�
�|-�X��^�f(��Q�f.����=z-�DNf(��S�\��Y�f(��K�Y��X��Y��DY�f(��Y��X��DQ�fE.��1�VfA(��Y��AY��X��DQ�fE.���fEW��D5�{-fE(�fE.��4fA(�fE.����DfE.�fE(��D\�E\���fE.���fA(��AY��DQ�fE.��2fA(��d$@�D!{-�Y��AY���DfE.�fA(���AX�fE(��X�d$@�EX��Y��DY��Y���fE.���fA(��D\��X��%�y-fDT�fD.=Rz-v�%�z-f.����X��Y��n@fA(��AY��Q�f.�{f(��d$@�B�d$@��fE(�f(��X�EX��X��DY��Y��AY��D'z-fA(��X��D%�z-f(��L$ �\$0�A\��AY��DfD(�f(��X��AY��DfD(���y-�Y��X6z-�AY��dDfD(���y-�Y��\[z-�AY��AD�L$ �-�y-f(��\
?z-�\$0�Y��X��Q�f.���-�y-�\53z-�DY=z-�Y��DY5
z-�DY-z-�Y%tx-�^���y-�^5�y-�X��AY��AY��D^��X��D^�f(��A\�fD(�f(��EX��EX��D\��D-*x-fAW��AY��Y��X�f(��^��Ef(�fA(��
:y-�%;�
5y-�X��^��DQ�fE.��fA(��EY��EX��Y��X��AY��Bf(�fA(�(t$PfAW��AY�D(D$p�AY�D(�$��DX�f(�D(�$��Y��AY�D(�$�D(�$��DX��Y�D(�$�(|$`�DX�D(�$�fA(�D(�$�H��[^�fD(��E\�fD.[w-���Mx-fA.��K����DX�w-�=���@�FfA(��O�%yw-�Y�fD.�����X%jw-�����C�{O�D=Jw-�DY�fE.�������DX=9w-����D\+w-����f.��z����\��q���f(��d$@�?�d$@fD(����f(��L$ �d$@�g?�d$@�\$0�L$ �U����L$ �E?�L$ fD(�����L$ �*?�L$ fD(����f(��?�Q���f(��?f(������>fD(�����f(���>���ffff.�H��(�'����Q�f.�z	f(�H��(��>f(���f�UWVSH��hH�\$ H�t$@H��L��I��H���m��I��H��H���_��H��H�������Q�f.�z
f(�H��h[^_]��H>f(���f�VSH�������L�����A ���AP�A@�*�Z�J��$���$���$���$���$���$����^��H�D$@H�D$8H�D$XH�D$HH�D$hH�D$`�^��l$0�^��\$P�L$puCH�T$0H���Vw���H���[^�L��H�T$(L�D$ �t��L�D$ H�T$(����f.�H��Z+H���w��H�T$0H���w��D�
P1E��uH��Z+H�
P1��x����O1H�P1H����v���H���[^ÐH��$�H�aZ+I���u��H��$�H�JZ+I���u����$���$���$���$���$���$�����ATUWVSH��pH�H��$�H��H��L��M��H�D$ H�H�D$(I�H�D$0H�AH�D$8H�BH�D$@I�@H�D$HH�AH��H�D$PH�BH�T$ H�D$XI�@H�D$`��w��������A$0��Ad$��K�Y��Y��A\$�k �X��K�Y��Y��Yc8�X��K�Y��YC0�X��k(�Y��Y[@�X��X��X���Y����Y��[�]�Y��[�_�Y��[�^�Y��[ �]�Y��[(�YW�S0�YN�K8�YE�C@��H��p[^_]A\�fff.�H���yr-H��$��Q�	�Yf.��H�D$@H�D$8H�D$0�R�
�Zf.��NH�D$`H�D$XH�D$P�AP�A�AXf.���HDŽ$�H�D$xH�D$p�AI�A�AQf.��f(��Xf(��^��Y���Vo-�\��\��Y��@L��$�H�T$PH�L$0I��L�D$ L�D$p�Y���H�ĘÐf(��L$8�
o-�^�f(��\��\��Y��Y��l$0�L$@����Df(��L$x�
�n-�^�f(��\��\��Y��Y��l$p��$�����f�f(��L$X�
�n-�^�f(��\��\��Y��Y��l$P�L$`���DH�@H�@H����@AVAUATUWVSH��)t$p)�$�D)�$�D)�$�D)�$�fEW�1�L��H��H��M�HM�@H�
;_-H�L�t$PL�l$0L�L$(�\$(L�D$(�T$(H�T$(�L$(�5GL�KL�CH�
_-H�L�L$(�\$(L�D$(�T$(H�T$(�L$(�FH�C�3�=}n-�t$0H�D$8H�C�D
5p-H�D$@fE(�1�E1���f(�fT�fA.�vfD(�A���_����H��H��u��1��N�Y�YO�AX��X��N�YO�X��A.A9�t���Y��\��At-H��H��u�f(�Mc��^/�_���B���N�Y�YO�AX��X��NH���YO�X��AL-H��H��t�At-����L�L$`L�D$XH�
�]-H�T$PL�L$(�\$(L�D$(�T$(H�T$(�L$(�EL�L$@L�D$8H�
�]-H�T$0(t$pL�L$(�\$(L�D$(�T$(H�T$(�L$((�$�D(�$�D(�$�D(�$�H��[^_]A\A]A^�/Effffff.�VSH��H��H��ǁ�t*H�H��xH�BH���H�Bǁ�H���H����x8rtrptH�Ĉ[^ÐD���E��t�D���E��t�H��xH���H�T$@L�D$ �I��H�D$`H���H�D$hH���H�D$pH��T+H�D$@H��T+H�D$HH��T+H�D$PH�D$`H�D$ H�D$hH�D$(H�D$pH�D$0��L��xH�
T+H���N���ǃ��4���ffffff.�ATUWVSH��D��pH�ˉ�E����H����H8��rtnm��1���rtrpt��H�Đ[^_]A\Ë����t拃���t܋����uҺtptwH��SPH��H��t��8 ZYXu��@L��t��dahcH������t
�����A�23fs�dahcH��S`H��I�����@L	H���P@���;1���ǃ��K���I�D$PH���H�L$pI��H�H���H�PH���H�PH���H�PH���H�P H���H�P(H���H�P0H���H�P8H���H�P@H�EPH�H���H�PH��H�PH��H�H�T$pH�PH�T$xH�@H���H��$��k��H�T$pH�EPH�H�T$xH�PH��$�H�P�i�����tptw�SH���2���H����P89��tH���p���straH������t
�����A�23fs�straH��S`H��H�����@L	H���P@���H�������H���H�FPH�H���H�PH���H�PH���H�PH��H�P H��H�P(H��H�P0H��H�P8H�� H�P@�T���f����1����b���D���E���R����tptwH��SPH��H��t�8 ZYX�aH����H8����f�I�icc_writI�e: DeletH�ing exisH�ting 'arH�ts' tag L���L���H���H���H���ǃ�failfǃ�edƃ�ǃ�����H�icc_writǃ��H���H�e: AllocH���H�ating 'aH���H�rts' tagH���H� failedH����6���@H�icc_writH�e: AddinI�g 'arts'I� tag faiH���H���L���L���@�ǃ�ledǃ������hL�������D���E�����dahcH������t
����yA�23fs�dahcH��S`H��H�����@L	H���P@���B��ǃ��!���H�EPH���H�H���H�PH���H�PH���H�PH���H�P H���H�P(H���H�P0H���H�P8H���H�P@H�FPH�H���H�PH��H�PH��H��N+H�H��N+H�PH��N+H�P�r���H�ting 'chH�icc_writH�e: DeletI�ing exisH���H�ad' tag H���H���@�L���H���ǃ�failfǃ�edƃ�ǃ��$���H���H�5,V-�(@���q@���]��1����t�f����*���������H��M+H���E1�H��I��H�D$PH��M+H�D$XH��M+H�D$`H�FPH�H�T$0H�PH�T$8H�@1�H�D$@H�D$0H�D$(H�D$PH�D$ ���H�FPL�D$pH�
M+H�H�T$pH�PH�T$xH�@H��H��$�����ǃ��h���H�icc_writH�e: DeletI�ing exisI�ting 'chI�ad' tag H���H���L���L���L������H���H�5�T-�$@���������#���f��������'���fff.�UWVSH��(1�H���.���H���H����H�����0���t��UUU�����wD�IA��A����A��A��D9���Ѓ�����h�����L��8M�AM������1�H���@H�� M�DM����H9�A�@u�1����9�0����H��I�T�B��u�H��R���9�w~Ń��ww����L��8I�D�@�H�icc_get_LJ�lowLJ�H���H�size: si�H���H�ze overfH�����H��([^_]�D������f�H�icc_get_1�H�ternal eH���H�size: InH�rror - NH���I�ULL tag I�element��H���H���L���L���LJ�H��([^_]�1�I�icc_get_I�size: NoH� header H�defined��L���L���H���H���LJ�H��([^_]�A�P��fff.�AWAVAUATUWVSH��x)t$@)|$PD)D$`fW�1�L�l$ I���	�=a-�X��D�b-�XI�XI0�L$ �I�X��XA�XI �XA(�XI8�XA@�L$(�D$0Lc�fA(�O�<�1�1�L���f(�fT�f.�vf(���XR���H����u��AD�1�9�t�A\�AD���I����u�Hc�H��H�DmI���R��H���B��v���(t$@(|$PD(D$`H��x[^_]A\A]A^A_�fW���%(`-�f.��J�I�R�Qr�%_-f.��%�_-��f.����-�^-f.�v�)��_-f(�fT�fT����f(�fT�fU�fV�f.�v-f.�wx��_-�^��Y˸�Y��I�Q�f.h_-wɸ��f.��m����-M_-f.��[���f.��Q���1�f.��E�����H��S���f(��^��DH��()4$)|$fW����`-�f.��b�a�J�Ir%f.�rf.�rf.�rf.�r
1�f.����f.���f.��nf.��f.�wf.�w�f.����if.��56`-�Y��Y-2`-��f(�f.�vf(�f(��\��\��^��_�f.���f.�vf(��\��\��^��_�f(���\-�f(��\��Y��Y��Y��Y��X��X���a(4$(|$H��(�fDf(�H��St$���?H�A�^��Y��Y��f.��I������i�5R_-�Y��Y-N_-f(�f.�f(��\��\��^�f(����fT��#���f(��\��\��^��_�f(��$���(4$�H�H�A(|$H�AH��(�@H��
E\-H��B�\��A�B�\��A�DH��\-H��J�X��I�XB�A�f��
x^-��Z�%o^-�Y��Y��R�X��%^^-�Y��X��%^^-�Y��Yb^-�	�
>^-�Y��YB^-�X��%~[-�Y��Y:^-�X��X��X��I�A�ff.�fW��B�f(��R�-^-�Y��Y��X��X��-�]-�Y��Y��	�
�]-�Y��Y�]-�X��X��X��X��I�A�ffffff.��
�]-��Z�%�]-�Y��Y��R�X��%�]-�Y��X��%�]-�Y��Y�]-�	�
~]-�Y��YjZ-�X��%v]-�Y��Yz]-�X��X��X��I�A�ff.�fW��B�f(��R�-B]-�Y��Y��X��X��-:]-�Y��Y��	�
]-�Y��Y"]-�X��X��X��X��I�A�ffffff.��
8\-��Z�%/\-�Y��Y��R�X��%\-�Y��X��%�\-�Y��Y�\-�	�
�\-�Y��Y�\-�X��%�\-�Y��Y�\-�X��X��X��I�A�ff.�fW��B�f(��R�-r\-�Y��Y��X��X��-j\-�Y��Y��	�
N\-�Y��YR\-�X��X��X��X��I�A�ffffff.��
(\-��Z�%\-�Y��Y��Rf(��X��%
\-�Y��Y\-�X��%\-�Y��Y�[-�	�
�[-�Y��X��%X-�Y��Y��X��X��X��I�A�ff.�fW��B�f(��R�-�[-�Y��Y��X��X��-�[-�Y��Y��	�
�[-�Y��Y�[-�X��X��X��X��I�A�ffffff.�UWVSH��)t$@)|$PD)D$`D)L$pD)�$�1�H�l$ H��H���5)[-�D0[-�D
/[-�D.[-�=[-�f.����^��DH��H��u���Z-�
�Z-�YD$ �YL$(�X��
sZ-�YL$0�X��
�Z-f.����Y�Z-�NfW��\�f(�f.�����^�Z-�\�f.����^
�Z-(t$@(|$PD(D$`D(L$pD(�$���_�OH�Ę[^_]�f��AX�fA(��A^���D������
 Z-��YZ-�\�Y-�?�����^Z-�\�f.��Z����^
�Y-�U����WVSH��)t$`)|$pD)�$�D)�$�D)�$�fW�H���B�
f(�f.��L$ ���Y�Y-�\$(�Bf.��P�Y�Y-�D$0�X��L$H1��X��5Y-H�|$ �DY-�D
Y-�D$@f.��L$P�DY-�=�X-v�^��H��H��t/�D@f.�w��AX�fA(��A^���H��H��u��
6X-�D$(�YL$ �\��
.X-�YL$0�\��
�X-�^X-f.�vN�YVX-H�D$@�F(t$`H�H�D$P(|$pD(�$�H�FD(�$�D(�$�H�İ[^_��
0X-��YX-�\X-뛐�Y(X-�D$0����YX-�\$(�{���f.��X-�pS-�Y�lS-�X�T-�^����W-�J�Y��X��^��I�YB�X��^��A��S-�
�S-�Y���W-�\
�T-�^
�W-�	�J�Y��\��^��I�YB�\��^��A��HW-�
�LT-�Y���R-�X��^��	�J�Y��X��^��I�YB�X��^��A�ff.��XR-�
��S-�Y���V-�\��^��	�J�Y��\��^��I�YB�\��^��A�ff.��
8R-f.�w�
�V-�]�f(����f(���@H��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�fD(��AV-fA.����&V-fD.��fD(��+�5!V-f(��%V-�Y��Y��X5
V-�Y��Y��X��	V-�Y��Y��X���U-�Y��Y��X���U-�Y��Y��X���U-�Y��Y��X���U-�Y��Y��Y�U-�X��X�f(�����D%�U-f(��DX�fA(�����D{Q-�D�Q-�f(�fD(�f(�fA(�f(�f(�f(��A\�fD(��\��A\��^��Y��D\�fA(��e���f(�f(��A\�fAT�fA.�w�fA(�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H���
�T-fA.�w�A]��m���fD(��5P-�����5P-��fff.�VSH��(A���H��VH��H��t:H�0H�gf��H��H�ChH���H�CpH��x��H�CxH��p��H����7f��H��H��([^�ffff.�AVAUATUWVSH��L���1�H��H��M���I�A�����u#H��H��u�H�İ[^_]A\A]A^�DH���$���H��H���XH�� ��,H���P��tqH�icc_checH�eek() orH� fread()H���I� failedH�k_id: fsH���H����H���L���dž��Q����H�� L�d$ A��A�L��H���PH����d����D$O�D$NA���D$M�D$LL���D$c�D$bH���D$a�D$`Ƅ$�Ƅ$�Ƅ$�Ƅ$��D$�D$~�D$}�D$|�D${�D$z�D$y�D$x�D$w�D$v�D$u�D$t�Up����]DE��L��H��UpD)��C��A��A��wA��A��H�� M��A�L��H���PL9�t�H�icc_checdž�iledƆ�H���H�k_id: frdž�H���H�ead() faH��������H�icc_checH�k_id: NoI� header I�definedH���H���L���L����ǁ�����fDI�icc_checI�k_id: neI�w_icmMD5H� failedL���L���L���H����dž��!���H��$�H��H��UxH���H��t1���H��H��u�H���1��8��uH��H��u�0���������DVH��0�F�H��1�H��tH�����H��t
�@H��0^�H�D$(H��V H�D$(��VSH��(A�hH��H�κH��SH��tmH��l��H�pPH�XH�@X�@\H�H��l��H�PH��l��H�PH��l��H�PH�m��H�P H�+m��H�P(H�0m��H�P8H�Em��H�P@H��([^�f.�AWAVAUATUWVSH��XH�ֺI��D��$�D������������I�� �-I�����$�H��A��,���S<�s8E1�щT$4�)���[@�D$(�rncs�T$(�\$<H�E-�ډT$8D��I�݉��I��@��A�E�����9�u�A�}9|$(t;|$8t���}�A�E9D$4t= SCP�m���u�A�E9D$<t= SCP�����u�E�uA���tWE1��I��G�t�A���tCD��L��D��A�WH��t�8���t
;|$8��Hc�Hc�H��D-H��H�D�<���>���I����D$@�D$A�D$B�D$CH���A��0���t��UUU�����w�R��������¿������9����������y��9��������9�A�����r����wD�`A������I��I���H���PH��H����A��0�ˆF�������V����VE��0E����I��8H�QH����E�H�1�I���H�� H�TH����L9��Bu�H�^E1��E��I��J�,)L�ME�QE����E��t&1�L;IH��u�H�� L;J����D9�u�H�icc_writI�e: corruI�pted linI���M����M���fALJ�kALJ���H��X[^_]A\A]A^A_�f��|$4 baL������|$4 ZYX�|����0���ALJ(�����|$< baL�s����|$< ZYX�e������)��6����H��H��A�E�A�E�A�E�EA���ˆC�������S����SI��8B�D(�ˆC���S����S����SI��8B�D(�ˆC���S����S	����S
E��0E9���H��I��8�H����D�eL��A�Q�EL��I�8D��ҋE9�w<D���@D�`A��D9��"�E����H�E�@�����1��EH�EI�icc_writ��@H�e: size M���I���H�overflowAƇ�I���ALJ�����I�icc_writH�e: InterH�nal erroH�r - NULLI� tag eleM���I���I���I���M���ALJ�mentAƇ�I��H��H���PALJ�����H�icc_writALJ�lowALJ�I���H�e get_si�I���H�ze overfI����4���I����xdD�`(�I����H��H���TI��H���$���H��I����I�� 1�M�� A�H�D$(I���H���P������I�� ��H���P����I�� I��A�H��H���PH9���E��0E1�H�\$@E��u���A��E;�0��E��I��L��I�8H�B�H��tӋRH���P(���L��I�8D�JE���H�B�@�H�icc_writH�ader defALJ�inedI���H�e: No heI���I���AƇ��ALJ����1��#���I�� H���P(����L��A�T$@��A��A�����I���H��H����UxL��A�T$8H���A��0H�T$(��I�� t*��I��8H�P1�H��L�DH�� H9�A�@u�I���E1���$�H���P������I�� ��$�H����P��u"I�� I��A�H��H���PH9��-I�icc_writI�e: seek(I�) or wriI�te() faiM���M���M���M���ALJ�led���I�icc_writI�e callocH�() faileM���M����I���fALJ�dALJ��
�����I��H��H���P��D���G���H���=�I���H�O3-I��I����ALJ����H�icc_writH�cmMD5 faALJ�iledI���H�e: new_iI���I���AƇ�I��H��H���PALJ��H���H�icc_writAƇ�H��I���H�e: new_iI���H�cmFileMDI���H�5 failedI�������I�� H��A�H���PL��I�8�JH9������H�icc_writH�e: writeH�() faileI���I���I���fALJ�d����I��H��H���PE��0E����1�H�l$@�fD��A;�0����H��H��I�8H�B�H��tՋR�$�H���P(����H��I�8D�JE��u
H�B�@�I�� H��A�H���PH��I�8�JH9�t�H�icc_writfALJ�dALJ�I���H�e: write�I���H�() faileI����w���I����@8=rtnm��=rtrp��I�� H���P(���?���H�icc_writAƇ�ALJ�I���H�e flush(�I���H�) failedI������I���H��0-�0I��H��H���PA������I�icc_writI�e flush(I�) failedM���M���M���AƇ��������y����J���D��)‰U���������A����������A��������A����������tptwL��A�WPH��H�������8 ZYX�����D�XLE��������dahcL��A�����tA�����I���H�FPH�I��H�PI��H�P�a���A������R���E���E���B���E���E���2����tptwL��A�WPH��H��t�8 ZYX��I����@8���H�icc_writH�e: DeletH�ing tempI�orary 'cI�had' tagI� failedI���I���I���M���M���M���ALJ��P���D�`LE���n����dahcL��A�����tA����\���I���H�FPH�I��H�PI��H�P�$���fDE1��H��VSH��(A�P�H��VH��H���jǀ@H�)+H��J��H��A�H��H��HH�ǘ��H�H����H�CH��t��H�SH�Wj��H�CH�l���H�S H���H�C(H��	��H�S0H��J��H�C8H�`��H�S@H�5��H�C`H�JJ��H�SpH��H�CHH���H�SPH���H�CXH�.�H�ShH��{��H�CxH���H���H���H���H�i��H���H�~Y��H���H��K��H���H����H���H��D��H����H����VH����H�NI��H�HpH�X H�H�\o��H�PH����H�PH�����H�P0H�+I��H�PH����@8�����@<�����@@�����@D�����@H�@L�@P�@X�@T�@\lgra�@`lgra�@d�@h�@l�96��H���H�k#+H���H�e#+ǂ�TFSMH���H�U#+H���1���H���������Ƅ
�u�H�
�+-�kH��H�
�+-ǃ�������ǃp������<H��H�
�+-��������!���H�������ɉ����H�
!+H���H��(H���H�� +H���H�� +H���H�� +H���H�� +H��H�� +H��H�� +H��H�� +H��H�� +H�� ��>��H��H��([^�f�H�	!+H�5� +L�� +L�� +L�
� +L�� +H�
� +H�� +�� +H�� H��hH��H������L���L���L��L����(H��H��H��0L��8L��@L��HL��PH��XH��`H��([^�H��Hǃ�1�H��VH��H��([^�fDVH��0���H��1�H��tH���T���H��tǀH��0^�H�D$(H��V H�D$(��ffff.�fW��4<-f.�v�X�f.�w�f.�r
�\�f.�s��<-f.�wf�<-f.�w(�\�H�A�^���6-�\��	�A�f��\�H��^��q6-�\��I�A�f.��^�H�A�D6-�\��I��fffff.�ATUWVSH�� �81������Hc؉#1L�%41H��H��H��H)�L��H��N�1����KHÅ�t� H��H��D�H��(-H�ك��H���9�u�Hc�1H��H��H��H)�L�H��H�� [^_]A\�@L�%�1��1L���t����ATUWVSH��0�01������Hc؉1L�%$1H��H��H��H)�L��H��N�1����VHÅ�t� H��H��L�H��-H�ك�L�D$(�T$(��H����
9�u�Hc�1H��H��H��H)�L�H��H��0[^_]A\�f�L�%�1�o1L���d����ATUWVSH��0�1������Hc؉�1L�%1H��H��H��H)�L��H��N�1����^HÅ�t� H��H���H��-H�ك�Z��D$(L�D$(f(���
H����9�u�Hc�1H��H��H��H)�L�H��H��0[^_]A\ÐL�%i1�O1L���d����UWVSH��X�5� 1I�ȃ������5� 1Hc�H�-� 1H��H��H��H)�H�H�T$0H�
+1ۿ�ʍ����tCHc�� H��L�D�0H�:&-H��L�D$(�T$(�
H�����t@��Hƃ���u�L�D$0H�&-H��L�D$(�T$(��H������f.�Hc) 1H��H��H��H)�H�H��X[^_]�H�- 1��1H���4�����������|��tH��t
H���H�
��DAWAVAUATUWVSH��8H�H�QH��H�D$ �AH�҉D$,tH�L$ �QH�G(H��t@D�o E��~,1�1��H�0H��tH�L$ �QH�G(��H��9_ �H�L$ H��QD�gE���3E1��D$(M��LwI�N I�H��t6A�n��~%E1�1�J�9H��t
H��SI�N ��I��A;v|�H��H��SI�N(H��t6A�v��~%E1�1�J�9H��t
H��SI�N(��I��A;v|�H��H��SI�N`H��t7E�^E��~%E1�1�J�9H��t
H��SI�N`��I��A;v|�H��H��SI�N0H��t7E�VE��~%E1�1�J�9H��t
H��SI�N0��I��A;v|�H��H��SI�V8H��tH��SI�V@H��tqE�NE��~b1�E1�H�2H��tFE�FE��~0E1�1��J�)H��tH��SI�V@H�2��I��A;n|�H��H��SI�V@A��H��E;~|�H��SI�VHH��txA�N��~j1�E1�DH�2H��tIA�V��~41�E1�f.�H�)H��tH��SI�VHH�2A��H��E;n|�H��H��SI�VHA��H��E;~|�H��S�D$(I��x�D$(9G����H�WH��tH�L$ �QH�L$ H���Q�D$,��uH��8[^_]A\A]A^A_�H�T$ H�B H��H��8[^_]A\A]A^A_H��Hc�H��H��H)�HQ1�D�BD�J�ffffff.�1�H���	��t)H��A�H�&
���#wM��I��I��t���f�H�����u�1��f�SH�� �H��I�ɺ��t$I��fD<"��I�����TA���u�Hc�L��A�H��t`�"D���E��tBL�C��D�Hc�L��I����D�E�H�E��tA��"u�Hcу��"��Hcу�Hc��"�H�� [�@���"���Ҹtp1�E1�E1�D�B�A��	v��-t%��+t A��u6��.u1A��H�����tQI���̅�t�F�D	�A��Et�A��et�fDA��u
��Et��et���f�H��A�����u�1�E�������y��u��H��H�B�|�u��t�1��|�"������WVSH��0H�����L��L�D$hH��L�L$h���H��L�D$(���|��t���H���H����|�X��H��0[^_�fffff.�UWVSH��(H�)��ǁ�Ɓ���;Q��Hc�H��H��H)�HYD�CE����H�C0H��t;�S��~#1�1�H�8H��t
H��UH�C0��H��9s�H��H��UH�C0H�S8H��tH��U1�H�C8�C�CTH��([^_]�L�u1-�����H��([^_]���L��1-���UWVSH��(D�A H�1H��ǁ�Ɓ�H��H�Q(A��D�A Mc�H��I���VH��H�C(L��1-tXHcS H��H�l��H��H�P�H��H�Et.HcS H�C(H�L�H�����C ��H��([^_]�f.�L�Q1-�����H��H��([^_]���@SH�� H�����~�;"t	H�� [�HcȀ|�"u�1Ƀ�tR��H�ڱL�L1���:"D�Bt$Hcȃ�D�1�H��L9�t��u�D�B��A��"�u���Hc��H�� [�WVSH�� H��H��0-H��H���AH��H��tH��H����H��SH��H�� [^_�L��0-I�������H��H�� [^_��WVSH�� H��H��0-ǁ�Ɓ�H��H���@H��H��tH��H��SP��H��VH��H�� [^_�L�A0-I�������H��H�� [^_���f�S��ǁ�Ɓ���;Q��E��H�AxtHc�L��H��L)�H�D;B}YD�RE��~HMc�L�R81�J��E1�E�A����sQL�BHM�M�M�M�A��I��H��D;Z|�1�[�@L��/-�����[����L��/-�����[���A��vL��/-�����[���@L�BHM�M�M��L�BHM�M�E�E��|���fD�D$(��ǁ�Ɓ�x9;Q}4E��L�QuA��E	�uAHc�H��H��H)�L҉Bt1�D�BlD�Jp�L�/-A�Ѻ�����
���f.�L��/-��������ffffff.�WV1�H��H����H�=�/-�H�ְ�A����A8���H�=�/-�H�����H�=�/-�H�����H�=�/-�
H���t|H�=�/-�
H���tiH�=�/-�H���tVH�=t/-�	H���tCH�=j/-�H���t0H�=g/-�H���tH�=g/-�H�������fD^_�ffff.�WV1�H��H����H�=;/-�H�ְ�A����A8�tvH�=-/-�H���tcH�=,/-�H���tPH�=)/-�H���t=H�=%/-�H���t*H�=/-�	H���tH�=/-�H�������^_��ATUWVSH�� �y I��H��ǁ�Ɓ���~8H�i(1��H��9�~(H�L�H�����u��H�� [^_]A\�f.�L��.-I����L��H�� [^_]A\���ffffff.�ATUWVSH�� ��L��ǁ�Ɓ�xn;Q}iM��H�A�����tEA�8t?Hc�H��H��H)�H‹j��~#L�b01��	�H��9�~HI��H�������u�H�� [^_]A\�f�L�.-A�Ѻ����H�� [^_]A\��f��������H�� [^_]A\�fffff.�AUATUWVSH��(��M��ǁ�Ɓ�x|;Q}wM��L�i�����tYA�8tSHc�H��H��H)�I�A�}��~6I�m 1�H�L���H��tM�M(I�<�tL���	���t
H��9�վ������H��([^_]A\A]ÐL�Y--A�Ѻ����H��([^_]A\A]����WVSH�� H�=h--�H�˹
H�������8�uH�� [^_�H�=G--�H�ް�����8�t�H�=1--�H���u"�S1���Ct���Mt���Yt�1���K�����H�=--�H�����H�=�,-�H�����H��H�=�,-�H�������1�8��S���H�=�,-�H����<���H�=�,-�H����%���H�=�,-�H�������(�������Ѓ�����S1���C�����M���1���Y���������H�=A,-�H���u(�S1���R�������G�����1���B�������H�=,-�	H���u6H��	H�=�+-�H�������1�8��W����H�=�+-�-���H�=�+-�H���u(�S1���X�$�����Y����1���Z��������H�=�+-�H���u7�S1���X�����Y���H�KH�s+-�n�����Ѓ����H�]+-A�H���2���u>�S��L�������A�������B�������C�������HH�K�s���H�+-�H�+-A�H�����¸���F����S0���X�7�����Y�.�����Z�%�����L������A������B�
���H�K�f.�WVSH�� ��H��L��t^s ��H��H��tH�H�H��H�� [^_�1ۃ�w�L����H��H�P�H��H��t�H��H���1�H��H�� [^_�fD��H��t�H�ÉH��H�� [^_�1��fffff.�AWAVAUATUWVSH��8L�!��H��M��ǁ�Ɓ��.;Q�%Hc�H��H��H)�HY�S�����K�CX��9��K�`��dH�SHL��Lc��CXI��A�T$H��H�CH���K�SHc�Hc�H�|�H��L��A�$H��H��bD�[E��~`1�1�E1�H�C8�(����sPI�D=HcSL�D$ H�D$ H�CHL�|�1�I�L���W���H��I���A��H��H��D9s�1��D��vKL��)-�����H����H��8[^_]A\A]A^A_�fDL��(-�����H�������f.�HcKH�CHM�D=L�|�I��g���fDA�D=HcSL�D$,�D$,H�CHL�|��I��9����H�CH�����L�a(-������O��S���f.�L��(-�����H���,��0����L��(-�����H��������L�P(-�����H��������fffff.�AWAVAUATUWVSH��HH��$���L��$�L��$�H��L�!H�D$(ǁ�Ɓ��4;Q�+Hc�H��H��H)�HY�S�����K�CX��9��K�w��dH�SHL��Lc��CXI��A�T$H��H�CH���K�SHc�Hc�H�|�H��L��A�$H��H��x�{��~rL�t$<1�1�E1�H�C8�8����sXH�D$(L�D$0H�PH�H�T$(HcSH�D$0H�CHL�l�1�I�L������H��I�E��A��H��H��D9{�1����vFL�G'-�����H���r�H��H[^_]A\A]A^A_ÐL�Q'-�����H���L���f.�H�D$(LcCH�HH�L$(H�KHN�l��L�I��d���f.�H�D$(M��H�P�H�T$(HcS�D$<H�CHL�l��I��)���H�CH���fDL��&-��������H���f.�L�A&-�����H�����%����L�&-�����H���|�����L��%-�����H���c����fffff.�AUATUWVSH��(L�!��H��L��D��ǁ�Ɓ��3;Q�*Hc�L��&-�����H��H��H)�HqD�nE����H������������H�������u���D�9���F�VT��9ЉF~B�� L��Lc‰VTH�V0I��A�T$H��H�F0tlLcFTH�V8L��I��A�T$H��H�F8tO�FH�I��L�,����Ln0L���^���H��I�E���FH�V8Hcȃ��|��H��([^_]A\A]�L�Q&-�����@H��H��([^_]A\A]���L�M%-������޿�&���@L��%-I�����H��H��([^_]A\A]����L��%-���������L�'$-�ffff.�AWAVAUATUWVSH��8L��$�L��$���H�ˉ�E��L��H�)ǁ�Ɓ��y;Q�pM��L�yt*L���/���I��L��%-��H���%����Hc�H��H��H)�L�E��Fx`A9�}[H�V Ic�L�<�H��H��tH�D$(H��UH�D$(H�V(H��H��tH�D$(H��UH�D$(H�V`H��H��t(H��U� �D�`�FPD�fA9���A��Mc�I��H���hM��LN I���H��L�L$(�\���L�L$(H��I��{M���GL��H~(M��H���+���H��H��OM���0L~`M��H������H��I��&D��H��8[^_]A\A]A^A_�f�L�)$-A����H��H��8[^_]A\A]A^A_��f���H�V H��Lc��FPI���UH��H�F ��LcFPH�V(H��I���UH��H�F(��LcFPH�V`H��I���UH��H�F`��D�f���DL��#-I�������H��H��8[^_]A\A]A^A_��f�H�F M��J�8�����H�F(M��J�8����H�F`J�8����DL�A!-�����H��H��8[^_]A\A]A^A_��L��#-��H��8L�T$`��ǁ�Ɓ�x;Q|L��"-A�Ѻ����H��8�E�DHc�L��H��L)�HA�@L�L$ M��L�T$(A�����H��8�ffff.�WVSH�� H�1H��H�QH��ǁ�Ɓ�H��tH��VH����H��H�P�H��H�CtH��H���[�1�H�� [^_ÐL��"-�����H��H�� [^_��DATUWVSH�� H�1D��D�AH��ǁ�Ɓ�A��H�QA��D�AMc�H��J��I��I)��VH��H�C��Hc{A�xH��H��H��H)�H�@����@����@����D��1���A���H�ueA��uDA��u9�CLcȃ�I��J��I��I)�LKI�1E�aA�iH�� [^_]A\����f�H��A��t���f.��H��A��t���L��!-�����H��H�� [^_]A\�@�f�A��H���>����A��H���5����A�wH������fff.�AWAVAUATUWVSH��xǁ�Ɓ�H��H�	H��$��l'H��I����	H�y!-L�o!-L�
f!-L��E1�1�H�D$ L��A�T$H�D$P�D$\L�d$@H�L$@�Q(H��I����H����H=�����w�H�
�#-��Hc�H��H�=�-�L�������8�t�H�=�-�L�������8�t�H�=�!-�L������UA�M��H����������H�L$@��Q(H��I���G���H�D$@D��<E����	H�L$@�Q ����L�d$@L��A�T$�}�H��x[^_]A\A]A^A_��H�t$PH�=�-����H�L$P�]���uPL���Q��UL�D$PH����N����A�����UL�L$PH��H�D$(L�l$ ���q�������H�EH�T$P�H���P�P���H�T$@�z�A���H�=�-�L���A����E1�1�A8��p�MA9��{������H�=-�L�����H�=�-�
L����xH�=-�L�������8������H�MM���C�H��H�D$P�w�����EH�=�-H�UL��Lc�I��J��I��I)ɹ	�N�$
��T$\����A�\$h���IE�|$E����1�H�D$HE1�M��A�����M�g@E1������u��AD�I��D9�~*K��H�0�o����F��uу�F�I��D9�փ�A��I�G0L�40L�����P����…�����UE���L��I�G8H�T$H������1�E1��MI�G@I��H�8H�0�{�I�GHH�ML�D$`1��D$`L$8���H��I�$�A��H��E9w~b���)r���@w�I�GHI��H�M��L$8I�G@H�8L�0��H��I�$�/I�GHA��H�8H��H�0�f�E9w��D$HH��H�D$H��A9G������EA��1�����I�G0�L�40L������������������������E�t$E������H�}Dž�ƅ��EHc�H��H��H)�H֋F���[�Vh�����V�NX��9ʉV~I��dH�V@Lc��NXH��I���WH��H�F@��LcFXH�VHH��I���WH��H�FH���V�FHc�H�H��L�4����Lv@H���H��I��8HcFHcVH��L�4����LvHH���H��I���VhHcNH�F@Hc�L�4�M��Lt�H�����H��I����Fh��;F�Fh�����Fh����I�G@I��H�8H�0�$��D$lI�GHL�D$lH�M�L$8�]�H��I�$�����L�d$@L��-�����H����L��A�T$Dž�����������������r���L�d$@L��-��M��$t��A�\$;\$\�����H��$�L�d$@�Q8�L$\�\$(L�J-H�D$ �L$0E�$�����H�����L��A�T$������DL���0��D$\����L�P-�����H���K��������L�d$@L��A�T$������H�=-�L���A����A8��m���H�=-�L���A����A8��J���H�=�-�L���A����A8��'���H�=�-�L���A����A8�����H�=�-�L������} ����H�u(E1�H���H���!L��������A��H��A9��#H��:u�A��߄��F��������L�
-�����H���������9��������D��H��+�ۉ�H��$�L�d$@H�4�H��Q8L� -I�������H��H�t$0H�\$(L�t$ ���L��A�T$����&���L�d$@L�*-�����H�����L��A�T$������L�d$@L�.-Aƅ�M�����H���N��L��A�T$�������H��$��Q8L��-I�������H������������E��H������x������A������UH����B�����������D��t��������������f���M���C�����UH���������������(���Ic�H��H��H��H��H)�HE�PD�@���������D�uIc�A��H��H��H)�H���H]D�CE���1�1��f���H��9{��H�C(D��H��L�0H�C L�0H�C`H�0H�D$ �����y��{���L�-�����H������Z���I��L��tL�V-������4���L��-�����H���v���&���M��H��$�L�d$@A�v�Q8�t$0�\$(L�3-H�D$ E�$���L�d$@H��$��Q8H�D$ E�$L��-�����H�����L��A�T$�������K���l���1�1����H��9s�V���H�C0A�D��H��L�8�����y��v���L�J-�����H������U���H�UH��tH�EH���PL�����L�EH�PL��A�H��H�E��L��H��E1��������L�d$@H��$��Q8L��-H�D$ E�$����E�����������u���L���-�����j���L�������Z���L��H���J�����A����������4����M���%���L�d$@L��-����������AWAVAUATUWVSH��)�$�)�$�I��H��D�IH�9ǁ�Ɓ�E���*H�D$X�����D$TH�T$XH��xI��MwH�T$`A�F���TH�H��H���H��I���bE�FE��~5I�n01�f.�H�L����������A�D��CH��A9F�A�Np����A�Vl��tJ�D$T��u]L��H���WL��-�����L������(�$�(�$�H��[^_]A\A]A^A_�A�~wVA�VH�-Hc�H��H�D$XIGA�V;P����u
�HA9N�uH��-H��V(���sDA�F����1�E1�L�l$h��DI�F(L�,M����A�G0��tH����������L��H�����H��H����I�F`H�7-I��H��H�<H�#-HE�I�V L�H�D$ H�L-�V(����H��H���WI�F`L�M��tH�,-H��V(����A��H��E9f�I�F H�,H���2���1��H��H���s��H��H���+I��H��-H��V(���?H��H���WI�F(L�,����f�A�NpE1������L��-�T$TL��A�W`���'L��-�T$TL��A�W`����L��-�T$TL��A�W`����A�F����L�v-�T$TL��A�W`����L�i-�T$TL��A�W`���$L�Y-�T$TL��A�W`����L�F-�T$TL��A�W`���?���L�
�-L�%-H�D$ �T$TL��A���������L��H���W�A����#���@L�l$hH��H���WH��V8L�.-I�������L�����M��t�L��H���W�D�������L��
-�T$TL��A�W`����L��
-�T$TL��A�W`���WL��
-�T$TL��A�W`���Z���H�D$ L�
�-L�c
-����M�GM���N���H��-H��V(�������4���fDH��-H��V(�����������fDH��-H��V(���������fDH�g-H��V(���k�������fDH�=-H��V(���K������fDH�-H��V(���+������fDIcVI�G(L���/���L�l$hA�Ft�����l$TI�G���pL��H���WL�-�����L�������K���L�l$hL��H���WL�r-�����L������$���H�D$ L�
W-L��-�T$TL��A�������������H�D$ L�
"-L�b-�T$TL��A�����������}���H��-H��V(�������E�FE����1����CH��A9���A�G0��t�A�D���u�I�F0H��H���O��H��H������H��-H��I���V(��H��H���J�WE�F�1�H�\$p���1H��$�H��$��i�1HcHD�HH��*�@L��lH�7-H�ىD$ ��H�D$ I��L�g-�T$TL��A����������l���H�-H��V(�������H�-H��V(���q���E�fE��~41�1�fDI�F0H��-H��L��V(���A�����H��A9n�H��-H��V(������E�FH��-H��V(������H��-H��V(����A�^���J�=�-E1��D$hL�l$HL�|$XE�VE����1�1�L�|$p�zf�A���fA����A��A���>I�FHJ� H�(H���z��H��I���JI��H�-H��V(���hL��H���W�CH��H��A9F�eI�F8D�,�E���w���I�FHfW�J� H�(�0f.���f.���fW�A�f(�f.����
�-f.������,�=6�%H��-A�E��L���q�L���
H����������!�%����t�f(�����D�H�JHD��H��H��f� �t$8L��L�D$8�V(������L�l$HL�|$X�>���I�FHH�8-H��J� H�(D��V(��������f.�I�FHJ� H�(H��H�T$@�����H�T$@�N���H�D$HD��E��uH�������H�T$@�D���I��H��H�`-�V(���a����Z���f�H�D$ L�
�-L�W-�T$TL��A�����������=���H�D$ L�
�-L�-�T$TL��A��������������H�D$ L�
~-L�-�T$TL��A������|�������f.�H�D$ L�
B-L��-�T$TL��A������&������H�D$ L�
-L�n-�T$TL��A�����������k���fA�%gA�G���1�����v���H�e-A�A�L���,����H�N-L��������n��,�=6u�E�����H�-A����L������q���f(�A�fW�� ���L�4-�����L�������M��L�|$XL�l$HL��H���W����H��
-H��V(���o����D$hI���T$hA9V����L�l$HL�|$XH��
-H��V(�������M��t	L��H���W�D$T�L$TA9O����H�D$`H�D$X���L�l$HL�|$XH��L��WL�>
-�����L�������3�L�l$HL�|$X����L��H���WD�L$TL��
-�����L�������L�d$XI�A�FA;D$u_���������M�D$0I�^0H��1�H�D$HI�hH�kL�D$@����L�D$@uHI�V8I�D$8�(9*u7H��H;l$Hu��[���L��H���WD�L$TL�g-�����L������d�L��H���WD�L$TL��-�����L�������=�fffff.�SH�� A���H��SH���H����H�H�P`H����H�PhH���H�PPH���H�PpH�K��H�PxH����H���H�R�H�P8H����H�P@H���H�PHH���H���H����H���H����H���H�'��H���H����H���H�k��H���H�=�H���H���H���H����H���H����H�PXH�X��H���H�� [�ff.�VH��0�H��1�H��tH�����H��t
�@H��0^�H�D$(H��V H�D$(��H�Ax�ff.���f.�H�ApH��-H��HD��ffff.�H�ApH+A`�����HQ`rH;QpsH�Qh0���DH�QhH;Q`�����rH;Qps�H��H�Qh��fffff.�1��ffff.�H��tH�A`H�M��tH�ApH+A`I�1�ÐH�-��WVSH�� �A\H�qPH�ˋyX��uH��H��V��tH��V 1�H�� [^_�H�Q`H��V��ffffff.�WVSH�� H�QPH�Y0H�΋y8H��tH��SH�VhH��tH��SH��H��S��uH�� [^_�H�C H��H�� [^_H��ff.�1��DtH��H=u��At��L�\$(H��t���tI��H��I���LtA���u�M��u�H��I���LtA���u�M��u�@H��I���LtA���u�M��tA���tL��H��H���Lt���u���DVSH��8M��H��H��tM��u:L�ShL��I��H��tL��I��L�L$(��L�ShL�L$(I�L��L�ShH��8[^�I�����1�L��I��L��I9�v)L�ShH�CpL)�H9�s�1�I��I��L��I��H��u��L��I�����AVAUATUWVSH�� H�yPH��ǁ<Ɓt���A�ALE1�1�A��EB�T#t��u
�у���t(��uH�ShHcƃ�@�<�CL��t��u
B�D#tEE�@���1�1�E��u �C`H�KPD��Hc��<@��t
��@��C`Lc�B�D#tt
�CL��u+�kL9spt3�CL���m���9�u�B�T#t���s����[���9�u�9sp�CLu�H�C0D��6�H�ShD�CpMc�H���PH��H�Chu�H�parse.geH�t_token(I�), reallI�oc faile1�H��tH��|L���L���fǃ�d!ƃ�ǃ<����H�� [^_]A\A]A^Ã��CL~H�ChH�� [^_]A\A]A^��C1���1���ffff.�VSH��(H���A\�ALǁ<Ɓt�H�C@H���P��������CH���������
���CL��uvHc�Dttl��CH1�Hc�Dtt�CL�����sL�S\;SX��H�CPHcʃ�@�4�S\���s����C`�CL�H��([^�f���
u������փ�
댋C\�����CH1����D�����
�CH�=����CL�������+�����փ�
�C����CL��CH���D��$���@��
tk��
�G����CH���fD9������S\;SX�CL�	���DH�C0D���H�SPD�CXMc�H���PH��H�CPt#�S\����f��CH�T����1����H�oc faileI�parse.reI�ad_line(H�), reallH���L��tL��|H��������fǃ�d!ƃ�ǃ<��������ffffff.�UWVSH��(�Ah1�H�qPH�ˋiX��u5H�SpH��tH��VH��H��V��tH��V ��H��([^_]��H�I`������׃��ff.�H�I`���H��8L�D$PL�L$XL�D$PH�I`L�D$(�/�H��8�f.�H��L��M��L�I`H�����ff.�H�I`�O��H��L��M��L�I`H���[�ff.�H�I`E1��4�@H��L���]�D�;�ff.�H���(��H��L���5�DH���(��ATUWVSH�� H�y`L�ahH�ipH��H)�H��H��H��H��HG�H�API��H���PH��tI)�H)�H�C`I�H�H�L�chH�kpH�CxH�� [^_]A\�fff.�ATUWVSH��0L�D$pL�L$xI��H�YhL�IxH�D$pH��H�D$(H�SdL9���H�-@�1�L��H)�H9�|VL��M��L�L$(H)�H��Յ�xLH�^hL�NxHc�H�TI9�sY��Hc�H�;L9�v�H����L�NxH�^hL��H)�H9�}�1�H��0[^_]A\��L�NxH�^h�@���L�NxH�^h�g���H�����Hc�H�H;^pH�^hv�H�^pH��0[^_]A\��WVSH��0M��H��H��tM��u9L�ShL��L��I��H��uqI��LChL;CpL�ChvL�CpL��H��0[^_�fDH�����1�H��H��I��I9�vNH�KhH�CpH)�I��H9�s�H��HS`H;Sxw91�I��I��L��I��H��t�I��H��L�L$ �]�L�L$ �u���L��I���f�H��L�D$(L�L$ ���H�KhH�CpL�D$(L�L$ H)�H9��.���1�I��I���fDVSH��(A�H��H�ֺ@�SH����H�X0H�p@1�H�@P�@X�@\H�@h�@p�@`��@�@H�@Lǀ<ƀt�DtH��H��u�H������@tH�PH����H�P H���H�PH�����H�PH�"���H�P(H��([^��H��(�(���H��t6H�q���H�H�'���H�PH�L���H�PH�1���H�PH����H�P H��(�ffff.�UWVSH��1�H��H��H����A���H��VH��H����H�pP�hXH���H��H�H�����H�CH�a���H�CH�F���H�CH����H�C H���H�C(H����H�C0H�J�H�C@H�O�H�C8H�4���H�CH蓮H�T$ ����1���t)���T$8u!Hc�H�SxH�{`�ChH��H�Ę[^_]�H�Cx��fD��t�H��V ��@���H��H��t@����1���1�����f�WVSH��`H�\$ H��L��H���v�I��E�I��A������A��D!�%����t��H������D�I�QLD��H��I��1�fA�b�r�H��H��t;H���J���H��H��t+H�xPH���@h��H�PH���H��H�CpH�����H��H��`[^_�fff.�E1��8����WVH��8H�����H��1�H��tH��H�����H��t�@8H��8^_�H�D$(H��V H�D$(���WVSH�� L��H��H��A���H��SH����H��H�p`H�phH�H�XPH�H�v�H�ppH�pxH�PH�S�H�PH�x�H�PH���H�P H���H�P(H���H�P0H���H�P@H���H�P8H���H�PHH�� [^_�f.�UWVH��0H��H���n���H��1�H��t!I��H��H������H��t�@X�@\H��0^_]�H�D$(H��V H�D$(��f�UWVH��0H��H������H��1�H��tI��H��H�����H��t�@XH��0^_]�H�D$(H��V H�D$(��H��(���H��t�@\H��(Ð�����VSH��(�AH���A��uB1��	D��u�2����q��c�F~�uH�NH���,�sH�H�����H�N�~H��H��([^��WVSH�� H��H��tvH�	H��tD�C|E��tU�*�1�S��uH��H�� [^_�@H�K8H�=�1��H�54�1H�K��H�Kp��H�KH��H��H�� [^_�k�������@�1H��H�� [^_�H��(�
��0�qH�
��*L��,�����0�
��0��11�H��(�SH�� H��H��t#D�I|E��uH�	H��t��������1�C|H�� [�f.�UWVSH��HD�1�0E��tl��������1H��1�H���tHH�5��1H�l$<H�|$0D�D$0H�D$ I��A�H��H��օ�t�D�T$<E��t��D$0H��H[^_]�D��1H��H[^_]ÐVSH��H���0��t@H�D$0f�D$8�����1��1H���H��t1�H���߈1��t+��H��H[^�f����11ۅ�t������É�H��H[^�@�D$2�D$1H�T$0�D$0H�D$ L�L$<A�H����1��t��\$0�@AUATUWVSH���5��0����H�l$01��H���H��������P�1H���H��txL�-��1H�5�1H��$�M���)�H��օ�uOH�D$ I��A�dH��H��A�ԺH��օ�u�E1�I��H��H��H�D$ A�պH��օ�t�H�Ĩ[^_]A\A]ù2�T�1H�U�1�Ӆ�t�������u�H�Ĩ[^_]A\A]�ffff.�H��1i��H��H��(�y���t1�H��(�1������0��u$�y���t01����0H��(ù�m�o�0��u�1�H��(�@�*�1���ATUWVSH�� �AH�˅�t`�yP���H�qHtdH��H�-��1�ՋCxH�=�1��u$L�%��1H���H�Kp�����A��H��ՋCx��t�{P����Cxt!H��׋��H�� [^_]A\�H������뒐H�������fDVSH��(�AH�˅�tC�y���H�qtSH���1�C@H�K8���1�{���t H�A�1H��H��([^H��H��([^�fDH�������fDH���x����fDSH�� �AH�˅�u1�C|��u�����H����1�C|���H�� [�f��A�4����f�AVAUATUWVSH�� D�IH��E����{���H�qH�-�1H�=��1L�%2�1L�5ӄ1u�@H���H�K8�����A��H���D�C@E��t�{����C@tqH��׋K��uyH�������S�����u_�{P���L�kHtnL����CxH�KpA�ց{P���tGL��ׁ{���u�H���<����x����H���(���H��׋K��t�1�H�� [^_]A\A]A^�L������믐L������H����������ŐWVSH�� D��H��H��H��_�1H���1��H��т1���t
����Ѓ�H�� [^_�f�ATUWVSH��0H��H�׹��D���H��H�������p��H�`���H���H���1�1�I��H���H�����L����H���H�����H���H�j���H���H�����H���H�D$(�D$ ��1H��H�tH��H��0[^_]A\��H�HL�%E�1A��E1�E1�1�1�H�5��1�C@��H�KHH�C8A���CxE1�E1�1�1��H�Cp����H�
*�*L���,��	���1H�
�*L���,A�����
H�H��1�����J���WVSH�� ��H�
��*E��D��L���,�׺�
��~SH���0H��t	H�����H�
����E1�1҉5��0�=��0���0�+���H��H�y�0t?H�� [^_��H�
Y�*L���,��
H�Y�1�ډ�H�� [^_H��H�
)�*H���,H�� [^_�6fDH�
�,��@H���1H��fDAWAVAUATUWVSH���H�΄�t$�P����'�~:H���6</����H�H�-0�1L�d$ L�t$`E1�A�H��t�9t�/��H��H��u1�H�Ę[^_]A\A]A^A_��L��H��Ճ����T$ ���T$`�T$$f�T$d�T$&f�T$f�T$(f�T$h�T$*f�T$j�T$,f�T$l�T$0�T$pH�T$8�T$tH�T$@H�T$xH�T$HH��$�H�T$PH��$�u�/H�K�8���L��L��L���H�H��(�1��t۸�3���f.��P�������</����H�����H�N�F����H��XH�L$ �1�D$@H��X��WVSH�� H��H��H��t�z[��(��H��H����H��H�x�!H�CH�f�H�
�E1�H��H�C ���H��H�tyH��H�� [^_�L���,�H���yL�M��t#H��L���,H���H���VL�M��u�L���,�H���:�M���L���,�H���a
�H�K�H��1����o����AWAVAUATUWVSH��hH��I�ֹ1�賷H��I����L�l$0L�=~1I�],�	H�EH��uyL��L��艷����H�=A�,�
H���u�1�D�D$8�A��H��H��t�1�H���~1��I����L��,�L���MH���|1H�EH��t�H�}H��L�%�,H�D$ I�ٺL���H�H��襳��tbH��H��H�G�H��u�L��L���ζ���E���fDL��G|11�H��h[^_]A\A]A^A_ÐL���,�L����Z����D$8L���,I�ٺL��D$ �1�D�D$8���|1H��H��t+1�H���}1��tH���{1L���{1��n����|1�D$ L�L���,�L���"H���{1L���{1������1���������'���fff.�SH�� D�YH�H��E��ǀ�����u3f�H�SH�K������x
H�ǀ���xcD�SE��t�1��CH�� [�WVSH�� H��|1L��L���H�H`I��H���۱��H�H`H�� [^_�!�f�WVSH�� H�z|1L��L���H�H0I��H��蛱��H�H0H�� [^_��f�H��8H�U�*H�T$HL�D$PI��L�L$XL�L$HH�HH��L�L$(�P0�H��8�f�H��8H��*H�T$HL�D$PI��L�L$XL�L$HH�HH��L�L$(�P �H��8�f�H��8H��L�D$PL�L$XH�IL�L$PI��H��L�L$(�P0�H��8�f�WH��PH�
�,�3z1H���,H���+z1H��H��tcH�|$01��#�H��D$0H�L$0��҅�u;D�D$4D�L$8A��wKt9A���?��$DH���,H�
��*�D$ �ذH���*H��P_�A��v_f.���$D��$J�D$ t*H�s�,H�
|�*菰H�p�*H��P_��H�1�,H�
R�*�e��D��$Dt@A��tjA������$J��H���,H�
�*�'��J���f.���$J��H��,H�
��*�����f.���$J��H�
�,H�
��*�ǯ���f.�A����A��f�t	E�������D��$DH�O�,H�
n�*聯���@��$Jt`H���,H�
H�*�[��~���H���,H�
0�*�C��f���H�0�,H�
�*�+��N���H�H�,H�
�*���6���H�V�,H�
��*�����D��$DH���,H�
��*�ڮ���ffff.�H��(H�
��,��H��t��0�b�*
H��(�D���0�G�*
H��(�f.�SH�� H��H��t������~1�H�� [�H��0��v1H���;�1�H�� [�H��t�Q��fDH��t�Q��fDH��tH�Q��DVSH��HH��H��L�L$xtG9Q|B�Z�0H��0L�D$(H��t0�yv1L�D$(L�L$xH�KH��L�L$8�S H���v1�H��H[^��v1H��@v1���0L�D$(�ffffff.�WVSH��@H��H��L�L$xL��tL9Q|GD���0H��0H��E��t>��u1���0��tQL�L$xH�KI��H��L�L$8�S(H��6v1�H��@[^_�D�v1H���u1�g�0�Y�0��u�H���,H���>����i���L�
�,L�"�,H�$�,H�D$ H��������0�j����AUATUWVSH��HH��H��L��$�L��$�H����=��0H��0H����L�-�t1A��H��$�H�KI��H��I��H�|$8�S0H��L�%Du1A��H�C0H9C(tXD���0H��E�����u1H��A��D�e�0�W�0E����H�KI��I��H��H�|$8�S(H��A��H�C0H�S H9�tKH;S(tED�
�0H��E������t1H��A�����0H�KH�|$8I��I��H��S H��A�ԐH��H[^_]A\A]�fD�jt1H��L�-�s1A�����0���A��D���0E���E���H�$�,H���|������L�
Z�,L�`�,H�b�,H�D$ H���U����W�0����fDA���I����AUATUWVSH��HH��H�ˉ�L��$�L����A8H��0���L�-2s1L�%�s1H��$����0H�|$8H���]�ws1H��A�����0H�KI��I��H��H�|$8�S0H��A��H�C0H9C(tT���0H���!�+s1H��A�Ջ{�0�m�0���H�KI��I��H��H�|$8�S(H��A��H�C0H�S H9�tIH;S(tC�1�0H�����r1H��A����0H�KH�|$8I��I��H��S H��A�ԐH��H[^_]A\A]Ë�0H�����xr1H��L�-�q1A�����0�{8H��$�H�K<I���H�|$8I���t1H��L�%:r1A�����f.�A������A�Ջc�0����H���,H���@����k���L�
�,L�$�,H�&�,H�D$ H��������0���f.�A�����L�-)q1A���0����SH��0H��H�ȉ�t�H��0[����XD�D$(L�L$ �O�H��D�D$(L�L$ tcH�|$`H����H�L$hHET$`H�|$h��XD�@L�H�@8�@<H�P H�S���HD�H�|$pHET$pH�H(H�P0H��0[�H�
�*L�O�,��������f�H��HE1�E1�1�H�D$0H�D$(H�D$ ����H��H�ffffff.�ATUWVSH��0L�%��*H��I�L$�j��ǍoHc��U�H��H��H���*�RH��H��触����H���.�H��.exe�CH�
��*�d��o1H��H��H�-�o1u-�2A��H��H���Յ��}9���H���諦Hc��åH��H��u�H�
��*L�]�,A�ٺ���H�I�*�H��0[^_]A\�Hc�H�W�,H�L;��6q1���U���H��*�4���f��o1L�k�,�D$ I��H�
u�*��[���H���*�H��0[^_]A\�fDH�
��*H�����H�5��*��t&��H���*H�4H�����t	<\u��/��H���ݤ�ǃ�x7Hc�H�4;�>/���P�H�D;��@H��H�ƃ�H)�H���>/tk��y�H���*H�XH��茤�����H�H�T��:.�����L���E���L���X���D�<E������f.�H���0�H��� �H��H���H�\;H��H���t�H�-�*H�h��Z����L���,A��L��H��0[^_]A\�����e�i����+�����rm1L�
c�*�D$ L���,�W�����x�K������H��f�蓣H�
��*L�-�,I������H��*�����<e�������@H��t�A8�A<��fffff.�AWAVAUATUWVSH��H�D$0H��$P�H��$XL��$`H�D$(H�|$(1�D��$h�H�H�)�,H��$X��$pHE�$X��H��$X�T1�1�H��$`@��L�|$0H�-Po1��f�D�H���,L��D�f�a�H�I�D9�$p��A��tD��A�   I���u�fA�  A�GI��9�|dL��$`Lc�M�����fA�.I��I��9�7A���x�D��D��Յ�t�H�J�,L��E���I���ŢH�I�9�~�fA�
H��$PH�L$0蔣D9�$p~RL�|$0D��H��@������D��$hL��$XH���,L��A��b�H�I����A�������@H��[^_]A\A]A^A_�fff.�AWAVAUATUWVSH��H�D$0H��$P�H��$XL��$`H�D$(H�|$(1�D��$h�H�H�9�,H��$X��$pHE�$X��H��$X�d1�1�H��$`@��L�|$0H�-`m1��f�D�H���,L��D�f�q�H�I�D9�$p�A��tD��A�   I���u�fA�  A�GI��9�|dL��$`Lc�M�����fA�.I��I��9�7A���x�D��D��Յ�t�H�Z�,L��E���I���ՠH�I�9�~�fA�
H��$PL�L$0L�(�,1��3�D9�$p~YL�|$0D��H��@������D��$hL��$XH���,L��A��i�H�I������A�������@H��[^_]A\A]A^A_�fff.�SH��0H�d�*L�D$PL�L$XH��9H|oD�s�0H��0E��tb��h1H�2�*H�
\�,H�P��H��*L�L$PI��L�L$(H�HH��P H�
3�,���H�
�*H��0��h1�H��0[��h1H�
л*H��0�#h1��0�{���@SH��0L�L$XH��D�
ķ0H�
��*H�T$HL�D$PH��0E��tb��g1H�r�*H�
��,H�P��H�[�*L�L$HI��L�L$(H�HH��P0H�
s�,���H�
1�*H��0��g1�H��0[��g1H�
�*H��0�cg1�!�0�{���@SH��0D��0H��H�
ں*H�T$HL�D$PL�L$XH��0E������g1H�
��*H��0�g1���0H���*H�
��,H�P� �H�y�*L�L$HI��L�L$(H�HH��P0H�
��,��H�
O�*H��0�g1��0���f1�WVSH�� L�T$`H��H����M��tgM��tb1�H�����1�I��I9�wDL��I��H���t7M��tDH��t?1�H�����1�I��H9�wI��H���tH��菝H9�H��w$H��H�� [^_�1�M��u�1�H���k�H9�H��v�H��t�H�8I��1�I)��ݝH��H�� [^_�f�L��L��H�� [^_�&�fffff.�SH�� )ʉˍJHc�H����H��tHc�H��H)�H�� [�D�=�0E��t1�H�� [�H�
Y�,�����ffffff.�SH�� )ʉ˃�Hcʺ蟜H��tHc�H��H)�H�� [�f��޴0��t1�H�� [�H�
��,�����H��tHc�H���?���ffff.�AWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H����H��H����A9�A��A�MEM�Lc�I��A)�N�<�A��A��M)�D�L$(I�t$Hc�H���ϚH��J�D��D�L$(�|Hc�H��H)�K�D<�C9�,��H�Mc��M��I��H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�fD�=��0��u�H�
��,���f.��5��0��t1��H�
��,�f����DAWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H����H��H����A9�A��A�MEM�Lc�I��A)�N�<��A��A��M)�D�L$(I�t$Hc�薚H��J�D��D�L$(tHc�H��H)�K�D<�C9�,��H�Mc��M��I��H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�f�D�%}�0E��u�H�
��,�X�����-^�0��t1��H�
��,�6����DSH�� H��t&Hc�H�\�H�趙H��H�� [驙f�H�� [�f.�SD�\$0Lc�A9�Ic�J�D�DL�H��H)�J��D�RE9�IE9�D���AM�Mc�A�D)�N��J��D�H1�Mc�I��fDL��HL�H�H��L9�u�[�f�AWAVAUATUWVSH��89ʉω�M���)�E9�ELȍhE)�A��D9�t-D�=J�0E����1�H��H��8[^_]A\A]A^A_��D�`D�D$(Ic�H��軗H��H��D�D$(��A��I��Lc�N�<�D�D$(��M)���I�u��Hc�H���s�H��J�D��D�D$(��Mc�I��L)�K�D=�C9��[�����H���I�D�L��H��HL�H�H��L9�u��)���H�
��,�H����D�5M�0E������H�
	�,�$���@D�--�0E�����H�
�,�����AWAVAUATUWVSH��89ʉω�M���)�E9�ELȍhE)�A��D9�t-�ۯ0����1�H��H��8[^_]A\A]A^A_�f�D�`D�D$(Ic�H���K�H��H��D�D$(��A��Lc�I��N�<��D�D$(��M)���I�u��Hc��H��J�D��D�D$(��Mc�I��L)�K�D=�C9��\�����H���I�D�L���H��HL�H�H��L9�u��)���H�
��,����f.��ޮ0������H�
��,���fD���0�����H�
��,����DSH�� H��t&Hc�H�\�H���H��H�� [�	�f�H�� [�f.�UWVSD�\$H�\$PE9�jIc�E)�Mc�H��J�4�I��H�,H�<��D)�E1�L��A9�+J�J�T
1�L�L����H��L9�u�I��I9�u�[^_]�ffffff.�WVSD�\$H�\$@E��A�@E)�A��E��DM�A)ڍCA��DM�E9�|`Ic�E)�Hc�L�@N��H�<�E1�H��N���A9�|"H��J���Hcȃ�H��A9��A�}�I��I��M9�u�[^_��ATUWVSH�� D��I�̉�)�D�͍wHc�H��趓H��tqHc�H��H)�Hc�H��I)̃�L�$�~ED�T$p����Hc�L��1�H��A)�A��Mc�I��fDM��LD
�L�
H��L9�u�H�� [^_]A\��0��u�H�
��,�j����f�H��tHc�H������ffff.�SH�� )ʉˍJHc�H����H��tHc�H��H)�H�� [��
�0��t1�H�� [�H�
K�,����SH�� )ʉ˃�Hcʺ菓H��tHc�H��H)�H�� [�f�D�ͫ0E��t1�H�� [�H�
��,��ffffff.�H��tHc�H������ffff.�AWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H���H��H����A9�A��A�MEM�Lc�I��A)�N�<�A��A��M)�D�L$(I�t$Hc�H��译H��J�D��D�L$(�|Hc�H��H)�K�D<�C9�,��H�Mc��M��I��H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�fDD���0E��u�H�
��,�h��D�
m�0E��t1��H�
��,�D�AWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H���ːH��H����A9�A��A�MEM�Lc�I��A)�N�<��A��A��M)�D�L$(I�t$Hc��v�H��J�D��D�L$(tHc�H��H)�K�D<�C9�,��H�Mc��M��I��H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�f��^�0��u�H�
��,�:�f.�D�=�0E��t1��H�
��,��SH�� H��t&Hc�H�\�H�薐H��H�� [鉐f�H�� [�f.�SH�� )ʉˍJHc�H���x�H��tHc�H��H)�H�� [����0��t1�H�� [�H�
��,���SH�� )ʉ˃�Hcʺ��H��tHc�H��H)�H�� [�f��^�0��t1�H�� [�H�
��,�2��H��tHc�H��鿏��ffff.�AWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H��蛎H��H����A9�A��A�MEM�Lc�I��A)�N�<�A��A��M)�D�L$(I�t$Hc�H���O�H��J�D��D�L$(�|Hc�H��H)�K�D<�C9�,��H�Mc��M��I��H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�fD�.�0��u�H�
��,�
�f.���0��t1��H�
��,����DAWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H���k�H��H����A9�A��A�MEM�Lc�I��A)�N�<��A��A��M)�D�L$(I�t$Hc���H��J�D��D�L$(tHc�H��H)�K�D<�C9�,��H�Mc��M��I��H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�f����0��u�H�
o�,���f.��ޥ0��t1��H�
s�,���DSH�� H��t&Hc�H�\�H��6�H��H�� [�)�f�H�� [�f.�SH�� )ʉˍJHc�H���H��tHc�H�H)�H�� [�D�N�0��t1�H�� [�H�
�,�"���SH�� )ʉ˃�Hcʺ迌H��tHc�H�H)�H�� [��
��0��t1�H�� [�H�
��,�����H��tHc�H�Q�_���ffff.�AWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H���;�H��H����A9�A��A�MEM�Lc�I��A)�N�<�A��A��M)�D�L$(I�t$Hc�H���H��J�D��D�L$(�}Hc�H�H)�K�D<�C9�+��H�Mc��M��M�H�I�L�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�f�D�
ͣ0E��u�H�
��,���D���0E��t1��H�
��,���AWAVAUATUWVSH��89ʉ͉�M�D��E��A��A)�A�MHc�H����H��H����A9�A��A�MEM�Lc�I��A)�N�<��A��A��M)�D�L$(I�t$Hc�越H��J�D��D�L$(tHc�H�H)�K�D<�C9�-��H�Mc��M��M�H�I�L�f�L��II�PI��I9�u�H��H��8[^_]A\A]A^A_�f�D���0E��u�H�
u�,�x��D�}�0E��t1��H�
y�,�T��SH�� H��t&Hc�H�\�H��։H��H�� [�ɉf�H�� [�f.�SE��~<A��E1�J��E��~N�1�L���A�H��A9��C�I��I9�u�[�fff.�VS��~��A����u[^�f�N�T���I�p�N�H��1�M�M��AI��A�A	�AH��H9�u�I�����DAVAUATUWVSH��0��$�;�$��I��A��D��L��H��$�tH��0[^_]A\A]A^�f.�;�$��u�D;�$��u�H9���M9���E1�E������$�fW҃�L��D��$�E��~TJ��E1ې��J�~7J�T�f(�E1��N�4��B�I��D9��CY�X��B�I��M9�u�I��E9��1�L9��'���E1�E��~1��~$O�D�J��1�f�L��M��H��9��I��E9�σ�E�D$�E1ɉ|$ 1���1�����A�T$�D�O�1�E1��G�H�����ffffff.�AVAUATUWVSH��0��$�;�$��I��A��D��L��H��$�tH��0[^_]A\A]A^�f.�;�$��u�D;�$��u�H9���M9���E������$�A�D$�fW�L��1���L����$���~QH�E1����J�~.f(�E1�N�4��AN�4�I��D9��CY�X��B�I��M9�u�H��L9�u�1�L9�� ���E1�E��~*��~O�D�J��1�f�L��M��H��9��I��E9�փ�E�D$�E1ɉl$ 1��1�1�����A�T$�D�M�1�E1���H�����ffffff.�AVAUATUWVSH��0��$�;�$��I��A��D��M��tH��0[^_]A\A]A^�f�;�$��u�D;�$��u�H;�$���M9���1�E��fW�~pD��$�E��~ZH��E1���J��~6L��$�I�<�E1�f(�K�4��B��BY�I��D9��X��B��I��D9�$��H��A9��1�L9��;���E1�E��~.��~!K�T�J��E1�@N��N��I��D9��I��E9�҃�E�D$�E1ɉl$ 1���1����A�T$�D�M�1�E1��F�H������fffff.�UWVSH���H��$(��$0H�Ή�H9�H����;�$ �tH���[^_]�D9Ͱu��~XfW�E1�f���J��~3K��f(�E1�f��B��BY�I��D9��X��B��I��D9��1�H9�t�H�T$0H9�t�D�C�1҉D$(�H��D$(�h�����$��H�L$0�H���1�H��H��H��9���1����S�1�L�D$(D�L$ �R�L�D$(H��D�L$ ��UWVSH���H��$(��$0H�Ή�H9�H����D9˸tH���[^_]�;�$ �u��~N��fW�H��E1Ʌ�J�~'f(�1�M���C
�Y�H��9��X��B�I��I9�u�1�H9�t�H�T$0H9�t�D�C�1҉D$(�2��D$(�n���f���$��H�L$0�I���1�H��H��H��9���2����S�1�L�D$(D�L$ �3�L�D$(H��D�L$ ��@WVS1�D�T$@E��~6�E��~'H�4�H��1�M�����AX���H��A9��H��A9��[^_��WVS�|$@1�D�D$H��~9E��~,H��L��1�M���A��Y��AX���H��A9��H��9��[^_ÐS1�E��~6�E��~ L��L��1���A��A�H��A9��H��A9��[�E1�E��~1�E��~J��1�D��H��A9��I��E9������DS1�fW�E�����,~9E��~+L��L��1��A��A\�H��A9�fT��_�f(��H��A9��[Ðf.
8�,{1�E��~ ��H��A9����u�Mc�1�I���/���ffff.�E��~"�
�,1����fW���H��A9�����E��~#1�f����X���H��A9����fDE��~$1�f����AX���H��A9����DE��~#1�f����\���H��A9����fDE��~$1�f����A\���H��A9����DE��~"�
3�,1��f(��^���H��A9�����E��~#1�f����Y���H��A9����fDE��~$1�f����AY���H��A9����DE��~#1�f����^���H��A9����fDE��~$1�f����A^���H��A9����DE��~]1��!�,�A�,�����^���H��A9�~+�A�f(�fT�f.�s�I��?L��H��A9����fff.�E��~)1�f����A^��Y���H��A9����E��~K���,1����,f��A�f(�fT�f.�r���^��Y���H��A9����fffff.�D�T$(E��~%1�@���AY��A^���H��A9����ffffff.�E��~#1�f����_���H��A9����fDE��~$1�f����A_���H��A9����DE��~"1�f����Y���H��A9�����E��~"1�f����Y���H��A9�����D�L$(E��~;�>�,1��\�����A��Y��Y��X���H��A9����f�E��~'1�f����Y��X���H��A9����f�fW�E��~1�D���Y�H��A9��X�����H��(fW҅�~1�f���H��9��Y��X���Q�f.�zH��(�f(��Sl��fW���~1�fD��H��9��Y��X����f�H��(fW�E��~1�����\�H��A9��Y��X���Q�f.�zH��(�f(���k��ff.�fW���~1�fD�X�H��9���ÐfW���~1�fD�X�H��9���*��^���f�H��H�E��~kfW�1���H��A9��Y��X���Q�f.�zJ�d�,��
G�,f.�w�^�0�E1���B��Y��B�I��E9��H��H�f(�H�T$0H�L$8D�D$(��jD�D$(H�L$8H�T$0�f�fW���~#���,1���H��9�fT��_�f(�������,��~1�f���H��9��_�f(����f����,��~1�f���H��9��_�f(��E��~1�@�A�H��A9��_�f(������H�,��~1�f���H��9��]�f(����f�E��~"�
ӻ,1����fT���H��A9�����UWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�E��H��H��f(�D�����Dk�,1�fD(��D
k�,fE(�fW�fEW�fE(��'fDf.���f(��c�D�H��9�~?f.�zt�f.���v�f.���fA(���bfA(��^��L�H��9�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H�Ę[^_]�f�fAW�f(��bfAW��D��[���f�fAW�fA(��abfAW�fA(��^��L��1����D�L$(1�E��~IE1��H�ɸt�B�I��E9�~+�B�f.�w�f.�v$H�ɸt��B�I��E9����f�H��t��B���E��~9�f.z-u+A��1�I����DH��f.zuL9�u���1���ff.��f.�w
Ic��D���]�A��1�E��~f.r�If.�w��H��D9�|���ffffff.�A���Ic���1�f.�s;f.�s2f�A�A��A��D��Lc�fB.�DF�G�D��)ƒ����@D����ff.�VSH��H)t$ )|$0fW�H��D��f.���=ĸ,f(�f(���f(�fT�fU�fV��*��\��Y�f(���u�,�D�F�D9�DN��A*�Mc��\�f(�(|$0�\��BYt��BY��X�(t$ H��H[^�f(��=A�,�ffffff.�H��)4$E�H�E�����;�,1��9�,f�����f.�r�d�f.�wyf.�v�*�f(�f.�v�*�f(�H��A9��f.�w,�A*�f(�(4$�\��,�^�f(�H���f.��A*�f(�(4$�\{�,�^�f(�H����\��*��\�(4$�^��X��A*��\
I�,�^�H����h�,�q���WVSH��0)t$ f(�D��E��H��H��f(�����V�9�f(�(t$ N�H�H�P�����\��\��^��ֶ,�\��Y��Y��X�H��0[^_�fff.��f.�wIc�H��f.�v���f��[�����fD��t1�E��~#D��H��A9����f�Mc�1�I���Bt��AWAVAUATUWVSH��H��$���$�M��I��H��,H��L��$��|$(�D$ �rD��$�E����D�o�L�%Դ,H�-��,1��L��$�H�Ŵ,H���qr��~:E1�f�I��E9�I��H���,MO�H��N��I��L�D$8�T$8�8rD9��H��
H���r9�$��H��H[^_]A\A]A^A_�AWAVAUATUWVSH��H��$���$�M��I��H��,H��M��L��$��|$(�D$ ��q��$������o�1�fDH��,M��H���q��~YE1��DI��D9�~FI��L��H��N��L�D$8�T$8�aqD9�~�H�
��,I��A��I���.qD9��H�ڹ
H��� q9�$��s���H��H[^_]A\A]A^A_�f�AWAVAUATUWVSH��H��$���$�M��I��H��,H��L��$��|$(�D$ ��p��$�����D�o�L�%�,H�-��,1�f.�L��$�H�ղ,H���p��~CE1�f�I��E9�I��H���,MO�H���B�I��Z��D$8L�D$8f(��?pD9��H��
H���!p9�$��H��H[^_]A\A]A^A_��AWAVAUATUWVSH��8��$���$�M��I��H��,H��L��$��|$(�D$ ��oD��$�E��~vD�o�L�%�,H�-��,1�L��$�H��,H���o��~-E1�I��E9�I��H�ʱ,MO�H��F��I���aoD9��H��
H���Co9�$��H��8[^_]A\A]A^A_�f�AWAVAUATUWVSH��8��$���$�M��I��H�;�,H��L��$��|$(�D$ ��nD��$�E��~wD�o�L�%�,H�-ʮ,1�L��$�H��,H���n��~.E1�I��E9�I��H��,MO�H��F�xI���nD9��H��
H���bn9�$��H��8[^_]A\A]A^A_��AVAUATUWVSH��@��$�L��I��H���,H��L�É|$ �nH�\�,I��H���n��~JD�w�L�-1�,L�%�,1�DL�D�A9�M��H�&�,MO�H��H��L�D$8�T$8�m9��H��
H��@[^_]A\A]A^�m@AUATUWVSH��H��$�L��$�L��I��H�ʯ,H��L�É|$ �amH���,I��H���Om��~RD�o�1��H��9�~BL�D�L��H��L�D$8�T$8� mA9�~�H�
O�,I��A��H����l9��H��
H��H[^_]A\A]��l�AVAUATUWVSH��@��$�L��I��H��,H��L�É|$ �lH��,I��H���l��~RD�w�L�-��,L�%��,1�D�D�A9�M��H���,MO�H��Z�H���D$8L�D$8f(��Cl9��H��
H��@[^_]A\A]A^�lfff.�AVAUATUWVSH��0��$�L��I��H�P�,H��L�É|$ ��kH�,�,I��H����k��~?D�w�L�-�,L�%ë,1�DD�D�A9�M��H���,MO�H��H���k9��H��
H��0[^_]A\A]A^�okffffff.�AVAUATUWVSH��0��$�L��I��H���,H��L�É|$ �7kH�|�,I��H���%k��~@D�w�L�-Q�,L�%�,1�DD�D]A9�M��H�J�,MO�H��H����j9��H��
H��0[^_]A\A]A^�jfffff.�AWAVAUATUWVSH��X��$���$�M��I��H��,H��L�D$@��$��l$(�D$ �D$H�mjD�t$HE�����D$H1����D$L�E��D$8�C��D$<L�D$@H���,H���0j����E1�L�%"�,�
@I��D9�~gI��D;l$8L�
:�,H�H�,H��N��MM�L�D$0�T$0��iD��D����;T$<u�L�D$@H�E�,H��I���iD9���9t$LH���,L���,H��,H��LN�H���i9t$H�1���L�D$@H���,H��H��X[^_]A\A]A^A_�Qif�AWAVAUATUWVSH��H��$���$�L��I��H���,H��L�D$8�|$ �i���|D��D�s�E1��	I��D9�~fN�D�H��,L�
ߨ,E9�H�!�,H��LL�L�D$0�T$0�hD��D����D9�u�L�D$8H�#�,H��I���hD9��DL�D$8H��,H��H��H[^_]A\A]A^A_�dhfff.�AWAVAUATUWVSH��X��$���$�H�
�*M��M��M��L�a�,H�T$ �D$(1҉t$0�7�����$�����D�f�H�-0�,H�=�,1�@H�
Ʉ*L�&�,1�M�������~EE1��I�L�E9�H��HO�L��,N��H�
��*I��H�T$ 1�L�L$H�\$H贺��D9��H�
h�*L���,1�H��薺��9�$��y���H��X[^_]A\A]A^A_��AWAVAUATUWVSH��XD��$���$�H�
�*M��M��M��L�P�,H�T$ �|$01�D�t$(L��$�����E�����o�1�H�
ȃ*L�%�,1�M�������~X1��H��9�~LI��H�
��*1�M��L��L�L$H�\$H�ù��9�~�H�
x�*L�
Ĩ,L���,1�H��蟹��9��H�
T�*L���,1�H��肹��A9��j���H��X[^_]A\A]A^A_��AWAVAUATUWVSH��X��$���$�H�
��*M��M��M��L�A�,H�T$ �D$(1҉t$0������$�����D�f�H�-�,H�=ҥ,1�@H�
��*L��,1�M���ظ����~NE1��I�L�E9�H��HO�L��,�B�H�
m�*H�T$ I��1�Z��D$HL�L$Hf(�苸��D9��H�
?�*L�n�,1�H���m���9�$��p���H��X[^_]A\A]A^A_�ffffff.�AWAVAUATUWVSH��H��$���$�H�
ہ*M��M��M��L�!�,H�T$ �D$(1҉t$0�����$�����D�f�H�-�,H�=��,1�@H�
��*L��,1�M��踷����~:E1��I�L�E9�H��HO�L�Ǧ,F��H�
O�*I��H�T$ 1�����D9��H�
3�*L�b�,1�H���a���9�$��H��H[^_]A\A]A^A_��AWAVAUATUWVSH��H��$���$�H�
ۀ*M��M��M��L�!�,H�T$ �D$(1҉t$0�����$�����D�f�H�-�,H�=��,1�@H�
��*L��,1�M��踶����~;E1��I�L�E9�H��HO�L�ǥ,F�qH�
N�*I��H�T$ 1��~���D9��H�
2�*L�a�,1�H���`���9�$��H��H[^_]A\A]A^A_�fDAUATUWVSH��H��$�H�
�*L��L��M��L�H�,H�T$ 1҉t$(����H�
�*L��,1�I�������~UD�n�L�%�,H�-��,1�fDL��A9�H��H�
*IO�L�ܤ,1�H�D$ H��L�L$8�\$8虵��9��H�
N*L�}�,1�H��H[^_]A\A]�t���@ATUWVSH��@��$�H�
*L��L��M��L�z�,H�T$ 1҉t$(H��$��0���H�
�~*L�F�,1�I��������~YD�f�1��H��9�~IL��H�
�~*1�I��L�L$8�\$8���A9�~�H�
�~*L�
�,L���,1�H��迴��9��H�
t~*L���,1�H��@[^_]A\霴��fff.�AUATUWVSH��H��$�H�
6~*L��L��M��L���,H�T$ 1҉t$(�V���H�
~*L�l�,1�I���>�����~]D�n�L�%B�,H�-�,1�fD��A9�H��H�
�}*IO�L�+�,Z�1�H�D$ H���D$8L�L$8f(����9��H�
�}*L�Š,1�H��H[^_]A\A]鼳��fff.�AUATUWVSH��8��$�H�
V}*L��L��M��L���,H�T$ 1҉t$(�v���H�
/}*L���,1�I���^�����~JD�n�L�%b�,H�-$�,1�fDA9�D��H��H�
�|*IO�L�Q�,1�H�D$ H������9��H�
�|*L���,1�H��8[^_]A\A]���ffffff.�AUATUWVSH��8��$�H�
�|*L��L��M��L��,H�T$ 1҉t$(覲��H�
_|*L���,1�I��莲����~KD�n�L�%��,H�-T�,1�fDD�_A9�H��H�
|*IO�L���,1�H�D$ H���C���9��H�
�{*L�'�,1�H��8[^_]A\A]����fffff.�AWAVAUATUWVSH��X��$���$�H�
�{*M��L��M��L��,H�T$ �D$(1҉t$0�DZ����$�����Hc�D�f�H�-��,H��H�={�,E1�H�D$H�H�
I{*L���,1�M���x�����~@E1��N��E9�H��H�
{*HO�L�|�,H�T$ I��1�L�L$@�\$@�9���D9��H�
�z*L��,1�A������H\$HD;�$��x���H��X[^_]A\A]A^A_��fW���~p1�f(�f(���,�,@f.�vZ�\�I��?L���_�f(�H��9�~0�A�f.�v�f(�H��H���\�9�f(��_�f(����fD���f�VSH�������H������~vH�L$0fW�Hc�H��E1�f�f(�J��E1Ґ�C��CY�I��D9��X��B��I��I�D9��1�H��H��H��9��~D�C�1����H���[^ÍS�1�L�D$(L�L$ �!���L�D$(H��L�L$ �_���ffffff.�WVSH���H��$���ˉ������}H�D$0fW�Hc�H��E1�fD��J��~&f(�E1��C��BY�I��D9��X��B��I��I�D9��1�H��I��H��9��~D�G�1�H���
����H���[^_ÍW�1�L�D$(L�L$ �=���L�D$(L�L$ �Z���fffff.�UWVSH���H��$ ���Ή�������H�\$0�E�fW�Hc�H��H��1���H�~/M�f(�E1�@�AI��BY�I��D9��X���H��H9�u�1�DH��I��H��9��~D�E�1�H�������H���[^_]ÍU�1�L�D$(L�L$ �L���L�D$(H��L�L$ �G���f.�SI9�tM��~G�A�Lc�E1�I��H���O�1�f.��AM���H��9��I��L�I9�u�[Å�~�LcɃ�I��J��I�����M�Y�tۉ�K�L��1��
�A�AH���L�L9�u��I؃��u�[�ffff.�VSH��8)t$ 1�f(�fW�f.���f.�zu�H,�1�%��	�(t$ 	�H��8[^�f(ƾ������M�^�,�"Z�,���,9�M�F���*��D1��������Y����H,�(t$ %��	�	�H��8[^��
h�,��fW��Y���f.�SH��0)t$ �ȉˁ�����%�u0�H*��Yz�,�Yz�,��t�
�,fW�(t$ H��0[Á���*��H*��X�,�\
H�,�Y50�,��C�Y��ffff.�VSH��8)t$ 1�f(�fW�f.���f.�z[uY�	�,f.�s+�H,�H�������H!�(t$ H	�H��8[^�f.��\�H���H,�H1����f(ƾ����2L�^r�,�X�,��i�,9�M�F́��*���B���H���s����Y��X�,f.�sJ�H,�H��H�������H��4H!�H	�(t$ H	�H��8[^��
��,H��fW���@�\�H���H,�H1���SH��0)t$ H�������H��H��H!�H��4H��?%�u4�H*��Y��,�Y��,��t�
#�,fW�(t$ H��0[�@H��*�H	��g�,�H*��\
z�,�Y5b�,��A�Y���SH��0HcH�L$(H�D$(�x!1H��H��t
H��� V�D�H��H��0[�f.�SH��0H�H�L$(H�D$(�8!1H��H��t
H����U�D�H��H��0[�f.���fff.������Fˆ�ffffff.���fff.������9�Mº��NЈ����Q�����A������������F‰ˆA������������Fˆ���A�f���Q�����A�����A������D9�DM�A���AN��ˆA�����A������D9�DM�A���AN�����A�f.���AD�A������AD����ffffff.��Q�AD�������AD����ffffff.��ЈQ�������A����A�D�Ј���A������Q�A����A������A�I����Ð�A�����A����A���Ð�ЈQ�������A����A�D�Ј���A������Q�A����AD�AH��0H��8H��AL�H��(H��AH�� H��AH��H��AH��H��AH��H��fffff.��Q�AD�H��H��H��AL�H��H��AH�� H��AH��(H��AH��0H��AH��8H��fffff.�H�ЈQH��8�H��H��0�AH��H��(�AH��H�� �AH��H���AH��H���AH��H���A��H�ЈH���AH��H���AH��H���AH��H�� �AH��H��(�AH��H��8H��0�Q�A�f.�H��AH��8H��0H��AH��(H��AH�� H��AH��H��AH��H��AH��H��QH��fffff.��A�H��H��AH��H��AH��H��AH�� H��AH��(H��AH��0H�H�AH��8H��fffff.�H�ЈQH��8�H��H��0�AH��H��(�AH��H�� �AH��H���AH��H���AH��H���A��H�ЈH���AH��H���AH��H���AH��H�� �AH��H��(�AH��H��8H��0�Q�A�f.���AD�A������AD������f.��Q�AD�������AD������f.�SH�� f(�H������ˆC�������S����SH�� [�ffffff.�SH�� f(�H���_����ˆ���S������C�SH�� [Ð��AD�AH��0H��8H��AL�H��(H��AH�� H��AH��H��AH��H��AH��H����f��Q�AD�H��H��H��AL�H��H��AH�� H��AH��(H��AH��0H��AH��8H��9���f�SH�� f(�H������H�ˆCH��8�H��H��0�SH��H��(�SH��H�� �SH��H���SH��H���SH��H���SH�� [ÐSH�� f(�H���o���H�ˆH���SH��H���SH��H���SH��H�� �SH��H��(�SH��H��8H��0�C�SH�� [�@H��1H��fDH��(�.1��g0��u
��g01�H��(�)�H��(��SH��@)t$0fW�f.5bg0zt6H�L$ �1H�D$ H+Og0�H*��:g0�Y�(t$0H��@[�H�\$ H���1���Б,t��Α,�H*L$ H���^���f0��1H�D$ H��f0�@ATUWVSH�� H�T�,H������f0����	����f0H�L�%�f0H�@H��L��H��N�1����I@HÅ�t� H��H��D�H��,H�ك���MH����L9�u�HcNf0H�@H��L�H��H�� [^_]A\�L�%Ff0�$f0L���z���@AUATUWVSH��8H���,M��H����H�y�,H��HD��t0����	��Hc�L�-u0��t0Hi۰L�A�L��DN�1�E���LHÅ�t� H��H��L�H��H�ك�L�D$(�T$(��LH���LD9�u�Hc|t0Hi۰L�H��H��8[^_]A\A]�f�L�-yt0�Ot0L���p����I��1�����fDATUWVSH��0H���,H������0����	��Hc�L�%�0��0Hi۰L��H��N�1����[@HÅ�t� H��H���H�"�,H�ك�Z��D$(L�D$(f(���KH���K9�u�Hc��0Hi۰L�H��H��0[^_]A\�L�%��0�Z�0L���h���f�H��h)t$ )|$0D)D$@D)L$PH���,�f(��5Ǝ,�*Ѓ��
H�����X��^��X�u��D��,��,�DX�fAW��@�
&�,fD(�fA(��X��5�AY�D(D$@D(L$P�Y�(t$ �^�(|$0H��h����������AWAVAUATUWVSH��X)�$�)�$�D)�$�D)�$�D)�$�D)�$D)�$D)�$ D)�$0D)�$@A��
I��I��D����$�H��$�H��$��*E��L�d$`�`L��fEW�1���A��AY��AXD���H��9��H��H����D
x�,1�fD(�f��A��AY��AXD���H��9��H��H���fA.�fD(��RfA(��=�,fE(˅�~!1���A��Y��AXD���H��9��H��H���fD.�fD(��D-��,��fA(�f(�f(��A\��\��A\�fD(�fA(��DY��A\�fA(��Y��\�fA.�r�%��,fD.�wfD.���f(��X��Y�f(��DY��D\�f(��D^��A\�fD(�f(�fE(��A\��D\��\��AY�fA.�����~,E1���C��AY��CXD��B�I��D9���L$ H��H���fD.��L$ �XfA.��,�D5�,�DY��DX���~$E1��C��AY��CXD��B�I��D9��H��H���fD.��fE(�fD(�fE(�f(�fD(�fA(����D�D5��,fA(�f(��DY��A\��DX��A\��Y�fA.�����~&1�D�A��AY��AXD���H��9��H��H���fA.��7�D5
�,fE(�f(��EY�fD(�fA(��EX�����f.
؊,�%��,�/����"���fA(��\��Y�fA.������D5��,�DY��DX����fD(�fE(�f(�fA(�fD.�vfA(�fD(�f(�fE(��t$@fD(��D\$8fE(��D\$HfE(�A�d�DV�,fDf(�fA(�f(�fAT��X�f(��A\��Y�$��Y
�,�Y�,�X �,�\�f(�fAT��X�f(��\�f.���fA(�fAT�f.��]fA(�f(�fD(��\T$8fA(��\\$@�E\��A\��AY��Y��DY��Y��\�f(��A\��X��%��,f)d$Pf.T$H�CfW��%_�,fD(��Y�fET��AY�fAT�fD.���fA(��\��Y�f.���f(��\��Y�f.����^�f(��X�f(�f(��A\�f.�wf(��\�f.����\�f.L$H�"fE(�fD(�fA(�fAT�f.��r�fD(��EX݅�~$E1��C��AY��CXD��B�I��D9��H��H���fD.��K�Dt$8fD.�fE(��D|$@fD(�fD(���fD(�fA(�A������1���~)f��A��Y��AXD��AD�H��9��L9�tD�C�1�H���ݧ��fA(�(�$�(�$�D(�$�D(�$�D(�$�D(�$D(�$D(�$ D(�$0D(�$@H��X[^_]A\A]A^A_�f.���fE(��D\��D-��,�EY�fA(�fAT�f.������fD.l$H��fD(��DX����f.�fA(�fD.�f(����f(�fT�fAU�fV�fA(�fT�fAU�fD(�fDV�srfD.�zti�d$8f.�s�L$@f.�zu�D$8�D\$@�t����\$@fA.��c����]����D$8�D\$@�K���@fD(��D\��	�����Dt$8fD(��D|$@fE(�����f(�fA(��	���f�fD(��D\�����fW����fA(��=څ,fE(�fA(�fD(����fE(�fD(��+���fD(�fE(�f(�fA(��=����S�1�L�d$`����H������fD(�fD(�fA(�����f(�fE(�fWL$PfD(�����L��H��L���fEW�fD(��D
5�,����AWAVAUATUWVSH��)�$�)�$�D)�$D)�$D)�$ D)�$0D)�$@D)�$PD)�$`D)�$p1�M��L��$���
H��$��d��L��L���D�$��H��H����L��$�Hc��S�I�CL��H�4�1��H��M��H�H9�L�H��u�L��$�L��$@H��$�M��1�I��I��H��H��9��1�H�D�H��H��9��H��$t1�H��$��$H��H��$��$��$�fD(���fEW�L���D4�,M���=�,�D$|fE(��D$xI�ƅ��}E1�L�l$hH�t$pM��L��L��$M��A��H��$fE(��D$dfA(�fDJ��D��E1�f�J��H�K��I��E9��fA(�H�\$(L�d$ E��L��H����fA(��\�fT�f.�vf(�|$dI��E9�~fD(��D��L�l$hM��I��H�t$pfD(�fA(�fE.�fA(�fE(�fT�fT��E\��ڂ,�X��AY�fA(�fT��X
�,�Y��`f(��\$0�T$@�2fD(�fA(��2�T$@�D$hf(��u2f(�fA(��L$P�a2�D\l$h�L$P�\��D^��
��,fA(��))�Y1�,�T$@�\$0�X%�,�,Ѓ�c4;T$|~.H��$�T$|tH��$��$�T$@�\$0@�|$xt
f.����~:1�f��D��\��A��XD��AD�H�D�H��H��9��L��H��$��$fD.�vIfA(�fA(��AX��D\��\��D\��Y��DX��Y��EX��EY��EY��D\�fE.��fE(σD$x��$�9D$x�K���L��M��I�ǃ�
�JH��$t�dH��$��$H��$�t
H��$��D�D$x9�$�(�$�(�$���D(�$��D(�$D(�$ D(�$0D(�$@D(�$PD(�$`D(�$pH�Ĉ[^_]A\A]A^A_�fD(��d���fE(��D$dfA(��2���H��$fA(�A��L��H��H�D$(H��$H�D$ �p��fD(�����LcD$d1�I��I��I��H��9�J�����L��
M��fE(�I���������1�L��A��訟��A��1�L��蛟��A��1�H��莟���\$ E1�A��1�L������s����{�E1�1�A����賠����1�I��觞����1�H��蛞����1�I��菞��I�������D$x����L��$�L��$@H��$�L��$�����DAWAVAUATUWVSH��8)�$�)�$�D)�$�D)�$�D)�$�D)�$�D)�$�D)�$D)�$D)�$ ��
��M��H��$�L��$�L��$��L��$@H��$�L��$�H�\$PH��$�t1�H��$���$�L��$�H��L��$�f.�~,fD(�������fW�1��5~,����A�H��fT�9�fT��^��_�f(��f.~,�~,v�^���},1�f���fW����A����Y��A�H��9�Ճ�$�fE(ʽ��H��$�H��$�A����$�L�l$(L��fEW�H�D$ ���fD(��D$L�},�E\��5},�Y�$��DA},�=},fDT��D$@L��$�H��L��$�����fA(�1�fA(�D��f(��Y��X���H���X�9��Y��X��f(�fT�fD.���^�1�f(�f���f(�fW����A��Y��\��A���H��9��fA(�1�fD���A�H��fT�9�fT��^��_�f(���Q|,1��^�f(�����Y��A�H��9���;�$��HH��$�H��$�A��fE(�L�l$(��$�L��H�D$ fDT����fE.�fD(�fT��E\��DX�fDT��EX��DYt$@��H��$�tzfA(��=+fD(�fA(��.+�D$8fA(��+fD(�fA(��+�D\|$8fA(��\��D^��
J{,fA(���!�Y�z,�X�z,�D,�A��c~-��tfE.�sKfE(������fE(���f�D9D$L}�D��D�D$0H��$���$�D�D$0D�D$L�fE(̃�
~7��1�L��A���\���A��1�H���O���A��1�L���B���A��1�H���5���H��$�t�dH��$���$�H��$�t
H��$��D1�9�$�(�$�(�$���D(�$�D(�$�D(�$�D(�$�D(�$�D(�$D(�$D(�$ H��8[^_]A\A]A^A_��r���H��$�L��$�fD(��V����n�1ɉ�記����1�H��蜘����1�I��萘����1�H��脘��I������fff.�AWAVAUATUWVSH��)�$)�$ D)�$0D)�$@D)�$PD)�$`D)�$pD)�$�D)�$�D)�$�A��
I��H��D����$H��$ H��$0�L
E���z
L��$�L�l$pfEW�1����AY��AX��AD�H��9��L��H�����Dx,1�fD(�D���AY��AX��AD�H��9��L��H����fA.�fD(��c	fA(��=�w,fE(…�~!1Ґ���Y��AX��AD�H��9��L��H����fD.�fD(��D-�w,�o�fA(�f(�f(��A\��\��A\�fD(�fA(��DY��A\�fA(��Y��\�fA.�r�%-w,fD.�wfD.���f(��X��Y�f(��DY�f(��\��D\�f(��D^��A\�fD(��\�fD(��D\��AY�fA.�����~-E1�f��B��AY��CX��CD�I��D9���L$ L��H����fD.��L$ ��fA.��N�D5�v,�DY��DX���~$E1��B��AY��CX��CD�I��D9��L��H����fD.��fE(�fD(�fE(�f(�fD(�fA(����D�D5v,f(��DY��A\��DX��A\��Y�fA.�v��~!1����AY��AX��AD�H��9��L��H����fA.��g�D5�u,fE(�f(��EY�fD(�fA(��EX������f.
xu,�%`u,�?����2���fA(��\��Y�fA.������D5Lu,�DY��DX�����fD(�fE(�f(�fA(�fD.�vfA(�fD(�f(����<1����Y��AX��AD�H��9��fE(�L��M��H����$(1����AY�H��9��DX���DL$PfE(��DL$@fE(��D\$HA�d�t$`�t$8�DT$h�D%�t,f�f(�fA(�f(�fAT��X��-jt,�A\�f(��Y�$�Y
Pt,�Y��X\t,�\�f(�fAT��X�fD(��D\�fD.��rfA(�fAT�f.���T$H�X�fA.�z�N�T$8fA(��\��\l$H�AY��^��l$XfA.�zt�\$`fA(��\��\l$X�AY��^�fD(�1�fA(��DX�fD(��DX��A\��D\��AY�fA.�vfA(�1��Y�fD.���fA(�1��A\��D\��AY�fA.�vfA(�1��Y�fD.��‰�	��"��t��f(�u���O��f(�ufA(��DY-s,f(�fAT�fET�fA.���f(��X�fD(��E\�fA.��fD(��D\�fA.���fE(�fD(�f.���f�fD(����EX�~!1����AY��AX��AD�H��9��L��H����fD(�M��L��H����$(��fW�~%E1�f��B��CY�I��D9��X���D$@fA.����T$HfD.��l$P�D\$HfD(��T$X�l$h���T$8fD(��t$8�D$PfA(��T$`�D|$@A���$�����
�DL$@�.��~1����Y��AX��A�H��9��fA(�(�$(�$ D(�$0D(�$@D(�$PD(�$`D(�$pD(�$�D(�$�D(�$�H�ĸ[^_]A\A]A^A_�fE.���fE(��D\��D
�p,�EY�fA(�fAT�f.��9���fE.���fD(��DX���~!1����AY��AX��AD�H��9��L��H����f.D$@fD(��"�����
�DL$@�����{�1�L��A���V���A��1�L���I������@fA(�f(��l$P���fA.�f(�fT�fAU�fV�fA(�fT�fAU�fD(�fDV�sl�T$8f.�z���l$hfA.�s�T$`f.�zu�L$X�D|$h�Dt$`�����l$`f.l$8�����t����f(�����@�l$H�T$P�l$X�l$8�L$H�T$h�D|$P�l$`�Dt$8����D$@�T$8f(��t$8fA(��D$P�T$`�D|$@�o���fD(��D\��#���fD(��D\��K����T$H�l$P�T$X�T$8�L$H�l$h�D|$P�T$`�Dt$8�����\�fD.�f(�fAT�w9f(�fE(�fD(�fAT���fA(��=Yn,fE(�fA(�fD(����fW
�n,fE(�f(�fD(�fAT����fD(�fE(�f(�fA(�����D�s�1�D������D��1�I���r���I�����fD(�fD(�fA(�����L�l$pH��L��$�fEW�L����D�m,fD(�����M��L��H��fE(��$(���f(����������H���0A��,H��HD�1��*DVSH��(H���0H��H�ˉ�HD؅����s���tHD�CD�����i��6���i�A)�Ic�A�ȋD�A��]e����AHȉK�L��C��H��([^Å�t=A��1��E�D�DH��H=l,tE��y�E�A��]e�����D���{����CxV4�xV4�H�������s�S���ffffff.�H��(1�1��������H*��^m,H��(�ffffff.���1�����H��(1��������H*��^�l,H��(ÐH��H)t$ )|$0f(�f(��\�����Y�(|$0�X�(t$ H��H�f.�1�f(�f(��@H��H)t$ )|$0f(�f(��u���f(�(|$0�\��Y��Y��X�(t$ f(�H��H�fffff.�1�f(�f(��@VSH��(��D��)������*��Y��X
�k,f(���'�,��H��([^��A�Љ�1���SH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�H�
�0H��H��HD؋�x,�����D-lk,fEW�fE(��Dak,fE(�@fA(�H��fA(��n���fA(�H��f(��
2k,f(��Q���fD(��Y��AY��X�fA.�zt�fA.�s�f(��v�Y�j,�^��Q�f.�zt�DY�f(�ǃx,�Y��D��,(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�H�Ġ[�ǃx,���,���f(�끐1����f�WVSH��@)t$ )|$0E��H��D��f(�f(�~&1�f.�f(�f(������H��9��(t$ (|$0H��@[^_Ð���ATUWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�D)�$�D)�$�D)�$�I��H��L���D9L���DfE.��^fA(�H����fA(�H��fD(��(���D-�i,f(��Dhi,fEW��D
ji,fE(��1fA(�H���A\��AY��AX�f(��fD.�wl�EYփ�tVfA(��Y�fD.�wrf(�fA(�fAT�fAT�f.�w�fA(�H���A\��AY��AX�f(��f.�w&���EY�u�������3DfD(�fD(��@f(�fD(��{���f��E<$1��D](t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�D(�$�D(�$�D(�$�H��[^_]A\ø���������럐UWVSH���)t$0)|$@D)D$PD)L$`D)T$pD)�$�D)�$�D)�$�D)�$�D)�$�fEW�fD(�fD(�H��$(f(�H��$ H��H����fD(�H��fA(��fA(̸�����Y�fA.����D=�g,�dfD(��DY�fE(��5tg,�fE(�fA(�fDT�fT�fD.���fE.�����fE(�f(��E^��AY��D\%Lg,fD.��%�
Qg,fE(��AY��Y�fD(�fDT�fDT�fT��AY��DY��A\��]�f(�fA(��AX�f.���E^�fA(�fT��f.�wfA.���fD(��DX�H��fA(�փ���fE(�fD(�f(��%�f,�AY�fA.�vfA(�fE(�fE(��A\�fA(�f(�fD(�fT�fT�fA(�f.�vfE(�fA(�fD(�fD(�fE(�fE(�fE.���f(�fA(��f,fT��\��Yf,�Y�f(��AX�fT�f.��Vf(�fT�f.��E���fD(����f.��
�e,fW���fE(�fA(��E^��A^��E^��l$(fA(��A\��Dd$ �AY�fD(��E\��Y��
le,�A\��D\5^e,�AY��Dd$ �D\%Ie,�\��L$(�\
7e,�Yl$(�EY��DY�fD.�����fDW%e,����fD�����(t$0(|$@D(D$PD(L$`D(T$pD(�$�D(�$�D(�$�D(�$�D(�$�H���[^_]�fD�x���f.��}1�댐�������AE1�����Au��A���t�A���[D�	1�E��~MA��Mc�1�N��O��I��I�DE���D3D�A*�D�D�YA�BH��L9�u�1���f���fffff.���A��~$��H��1�fD�DH��H9�u���ffff.�H��t�&fD��fffff.�AWAVAUATUWVSH��(1�A��E�u�A��'�
���H����H����L�=d,D�(1�E1�H��pH�F���H��xH�x���H���E����1�fDDŽ�H� H���u�A��H��E9�u�D��H���A�H��A�L��1�@D���E��D���H��L9�u�E�H��A��u�H�>H���@H�P1��DH��H9�u�H��([^_]A\A]A^A_�H�{b,D�*1�D���t>���u��J�L�(L�L�1�I��M�E�(E��
�H���L9�u�����Ic��H������D�~<�@A��A)�E��A��sA��A)�Mc�O��N�L�,F��A��E1ʃ�A9�|�Hc˃�H�ǠH����H�L�,D��u�A��H��E9��\��������������H��H)t$0f(��+g,fT�fT�f.�wMfW�f.�zu(t$0H��H���^��Y��X5g,�Q�f.�zF�Y�(t$0H��H��f(��^��Y��X�f,�Q�f.�z)f(�(t$0�Y�H��H�f(��L$ ���L$ ���f(���fffff.�AWAVAUATUWVSH��X)�$�)�$�D)�$�D)�$�D)�$�D)�$D)�$D)�$ D)�$0D)�$@L��I��D�͋�$�H��$�D�C���dD�D$x��
fEW�H��$���H��$�I���D�$�fE(��>�U�HcD$xA�fE(�M��T$0D�D$01��D�e,L�l$PH���5�e,H�D$`Ic�A�H��D�D$XL��H�D$hA��H�t$p�l$@D9l$@H��$�E��H�w�H�D:�~YD9l$X|RD�\$0H�L$PHL$hfE(�L��H��L�����1�H�H��L9��<2f(��Y��DX�u�fD.�d,�QD9�fA(�I�j���AL<�A��I���l$0H��fAT�A9�I���X��A_�fD(��?����DY
�d,L�l$PH�t$p�l$@�L$x����HcD$x�T$xD�K�H�t$HD+L$x�Sd,fA(҃�L�d$@�l$PH�<�H��I��H�D$0I��N�>���1M�P�H��?I��I��I�:A��H��H�l$0���[9�~�H�D$@M���B8fA.���f(�I�l=E��1��^�N��L�f(��DI�H���^EL9��Y��:u�H�D$0N�d0I��f(�1�I��DH��L9��BY�X�u�1�I�H��L9��9J��Y��X�u�I��M9�u�H�T$HN��1�L�:K�:I�H�:H�H��L9�u�����D9l$@�E<+H��$��D:�fAT��
��������E���I�<D;t$x΋D$xI�H�T$`fE(�D)�H��H�L�����1��<H��L9�f(��Y��DX�u�fD.�r��AQ�f.���
fD.�w�
hb,fW�f(�H�D;t$@�A<�Y��\��A\�f(��9�9����D$0fA(�E1���H�4�H�D$PL�8K�f(�E��1�f(�H�����YA��H��D9��X���^�E��1��f.���Y�A���X�H��D9��I��I9���������AQ�f.���	fD.�w�
a,fW�f(�M�H��$�D9��Y��\�M�0�D:��A\�f(��A9��	�C�I�jJ��fA(�H��D)�H�H��H�D$Hf(�M��1�f(��
M��A3�AYH��H9��X�u��^�M��1��fDM��A3�Y�I�H��H9��AX�Au�H��H;T$H�����A�L�d$@H�t$H�l$PD�L$x�E�9�DM�E���Ic�D�C�A�IM�|�H��D)�I��E)�L�d$`�-G`,H�T$HfA(�I��D�D$0�D$@A��L�l$PH�t$XH��$�D9�I�R�I�7�B\�~)�D$0N�H��1�fDI�H��H9�u�fA.�����A9�}.�D$@H��L��1��
fDI�H��H�L9�u�H�<��X�A��A��I���D$0H�l$HI�҃D$@A�����?���L�d$`L�l$PH�t$X�D$x���eHcD$xH��$�M��D�D$xL��$��D_,�D=_,H��D�D$0H�H��$�L�H�T$@H�D$P�D$0H��$�M���D$HM���H���D$`H�T$hH�|$hD�L$0��H���AD<fAT�fD.����A>fAT�fD.�sA��H�G�A���u�D9L$0��Ic�L�,�K�,�0f(��AY��f(�fAT�fD.��%L��L����I��H�t$pL��\$|M��D�L$XL�t$8L��D��A��H��f�L�t$8f(�I��A>f(�����
�],E��f(��A�^�fW-�],f(�f(��Y��Y�~H1�f�H��H��J�:H�A9���!f(��Y�f(��Y��Y��Y��\��X������9\$0|5�At5H�F�Y��Y��AL5f(�fAT�fD.�sH��H���.���D�L$XL�t$8D��H�t$p�\$|I��M��D9L$0L�D$@�E(���l$H�GH�T$@L�D$PIc��E4�L�,��DZ��AH�fA(�fA(��A8D�L$(�AX��A\��Y�f(��X��\��Y��
�\,�X�f(��X��AY��^�f(��3���fD.�D�L$(�3�X�fE(�D9L$`�E\��EX��D^��EY�fA(��\��Y��DX��E^��K�,�T$`L�|$8fA(�I��H�D$XH�G��D)�fA(�H�<�H�H��H��H����EfA(��E,�AY��DY�fA(�fE(�f(��r��^��C,���^�fA(��DY��DY��DY��Y��E\�fE(��DX��DY��DY�~E1�I��H��J�*H�9���f(��Y�f(��Y��Y��Y��\��X��	��fA(�fA(����fA.��C.ztfA(�fA(�fA(��^��Y��Y�fD(��f(�fD(��EY��AY��EY��DY��DX��E\�AI��H��I9�������L��L�|$8L�D$XH�D$PH�T$@I��D �D2�����L�D$81�I��H��J�*H�9���f(��Y�f(��Y��Y��Y��\��X��	��q����fWHZ,���f(�H�<D9��^�f(�����D$0L�D$HL��M�l�D$@I����L��H�D$PN��D$@L��1�D9�f(�~f�M�4H��L9��A�AY�X�u��^�A9��Y�}/I��1��
M�4�A�Y�I�H��L9��AX�Au��H��L9�u�A9������D$@H��1��DI�4��Y�H��H9��u�����M�L�l$X�i���M��fE.�M����l$0H�l$@L�D$hH�l$P�|$0�L��$����M��1�L;�$�u*�8@�l$HL�D$@�E(�����L;�$��tD�D$x1�L����q���(�$���(�$�D(�$�D(�$�D(�$�D(�$D(�$D(�$ D(�$0D(�$@H��X[^_]A\A]A^A_�D��1���p��I��H�H��$�fEW�H��$��D��
X,��fDW��E(����1�H��$�H�H��9��fW������fA(���I��F���H��$�I�j�D:�fAT����fA(�L�T$ L�\$(��L�\$(L�T$ ��fffff.���~EfW�1�fD��H��9��_�f(���Y[W,1��f.�vH��H��9������DfW�E���1W,~UE1ۅ�~_1�f(�E1�E1��f.�uA��H��9�~#��A��f.�{�f.�v�H��f(�9�E���E9�
���Mc�I��J��ffffff.�AWAVAUATUWVSH����$L��$�H��I��D��$���d������H�D$`H�D$P�V�fW�A�K�E1�L�D$XL�<�A�S�f(��A�֍�I��I���T$Lf��Cf.�z�nE1�A��f(���1�L��A�AT�CYL�D�CYL�D�X��AD8�X��AL�CYL�D�X��AT�CYL�D �X��AL �CYL�D(�X��AT(�CYL�D0�X��AL0�CYL�D8H��@L9��CY�X��X��E���D�D$LE9�~G��H�D$(D)�Mc�I��H�,�1�K�<I�@I��H��H9��BY�X�u�H�D$(�^��BI��M9�������n�L�D$X1�����,�H��H��f.�1҃�I�8f(��
��Y�X��D�YD�X��L�YL�X��D�YD�X��L �YL �X��D(�YD(�X��L0�YL0�X��D8�YD8H��@H9��X��u���9�A��~+Mc�1�I��L�I����AY�H��E�D9��X���AD=H��I9�����H;D$PtD�F�1�H����l��1�H�Ĉ[^_]A\A]A^A_ÐJ����f(�E1��|����V�1�L�D$@L�L$8D�\$0��k��H�T$`L�D$@L�L$8D�\$0H�T$P���AVAUATUWVSH��A��H��I��E��E���iH��$�H�D$@H��$@H��$�H��$�H��$�H��$�H��$H��H��$�H��$H��$�H��$�H��$@H��$�H��$�H��$�H��$�H��$�D�t$ E��I��H��H���������E1�E��fW�~;�B�I��E9��_�f(���YHR,E1�fB.�vJ��I��E9��H��D�t$0D�d$(L�l$ M��I��H��1��b���H9�t&A��1�H��E���k��D�t$ E1�E��1�H���m����H��[^_]A\A]A^�H9��u���@A�v�1�H��$@���j��A���E1�1�H����j��H������AWAVAUATUWVSH��A��I��H��$HE��D���GH��$�H�D$PL��$PH��$�H��$�H��$�H��$�H��$�H��$L��H��$�H��$H��$�H��$�H��$PH��$�H��$�H��$�H��$�H��$��\$ E��I��H��L�������a1���~���H��9��D�s�L�_E1�D�t$L�I��E9�}WA��D9�~�D$LD)�H��H�D$@1�A�S�A�Lc�Lc��B�fB.�vA�K�A�H��H;D$@t����1ɉ�+�$`I�9�O˅�~1��Hc�H��9�H����~'1�fW��H��9�~f.�v�H��H��9��H��$HD�d$(I��\$0H��L��E1�H�D$ I�����L9�t/E��1�H���h��E��1�H���u��D�t$ E1�E��1�H���k��D��H��[^_]A\A]A^A_�L9�A�tރ�1�H��A���Qh���\$ E1�A��1�H���j��븍k�1�L��$P���wg����1�H���s��A���E1�1�H���)h��H�������E9�t���fDA��u:H��
N,��N,��fT�f.�r��f��
0��^��
ÐE������������AWAVAUATUWVSH��)�$�)�$���
H�ˉ�L��$L��$�����-H�T$@H�T$8H��fW�L��+N,E1��%0N,1�f(�E1��-'N,f(�HcЃ�N���A�9�fT��_�f(��fT�f.�s+f(�A��D9��^��B~RMc�f(�N��1��H�L$(H;L$8�tD�G�1��f���(�$���(�$�H�ĸ[^_]A\A]A^A_�L��$D�W�H��?1��=tM,H�L$(I��E1�I�A�D�T$4H��E1�9�A��~wL�D$(f(މ�E1�E1�O�4f�O�DE��K�,�M~1�H���A�H��A9��BY�\���MfT��CYf.�rf(�A����I��9�u�E9��.M�UIc�L��I�M�L��$I�E�AfW��AL�T$(O�M���BL��$f(�E�<�fT�f.������D9L$4��f(�D9��^�f(����D$4I��D)�L��1�I�TH��L�L9���Y��u�E����L�I��E1�A��H��M�E9��A
�A
tG@L�NE��O��A
~1�H���A�H��A9��BY�\��A��H���A
E9�u�H��A���H���I�E����D9�~:I��E���n���I��H��A�������W�1��c��H��H�D$@H�D$8���H�L$(H;L$8t.D�G�1�1��/d�����L��$H��?1�I��d���1��]����ATUWVS���~fW�E1ҿ����fDKc�K�у��E��I���H���A9�~9A�B�J��Lc�I��)�H�4�L�1�M���AYH��H9��\�u��C�I��D9���Ѓ�xnH��ֽ����H��9�H�{�L�d��AL�~1��M�M�L��1�@�A�AYH��L9��\�u��A^<�����AL�H��u�[^_]A\��f.�z�a����C�I��D��D9�����U���f�ATUWVSH��PH�|$ A��
H��I��D��H��?L�L$HI�؉�H�������t9H9��tD�F�1�H����n����H��P[^_]A\�@�V�1��6n��H��벐H��M��I�؉�1��>���H9�u����AUATUWVSH��H��$�A��
H��I��D����E����L�d$0L����H,E1�f.��C�N�D�E1�fW��C��BY�I��D9��X���B�I��D9��L��$���I��L�����1����\���H��9��L9�tD�C�1�H���ea���H�Ĉ[^_]A\A]ÍS�1�L�L$(L�d$0�`��L�L$(H���>���L��$�L�L$0��L�������H�Ĉ[^_]A\A]�ff.�AWAVAUATUWVSH��hD��A��
H��I�׍k��E1�1�A���L�l$0��`��1ɉ�H���
`����I��M��~.1�I��L��E1�I��H��K��J��I��D9��H��9��L�L$XM���H��������tK1�A��L���_`��E1�1҉l$ A��H�����b��M9�t
A��1�L���l����H��h[^_]A\A]A^A_É�M��M��H������M��A��H��H��L�d$(L�|$ ����1�A��L����_��E1�1҉l$ A��H��1��Sb��M9�u�똉�1�L�l$0�k��A��E1���1�I����_����1�H����^��I������AWAVAUATUWVSH��hL�d$0��
H�Ή�L���!L�L$XI����H�������t+L9�tD�C�1�H���k����H��h[^_]A\A]A^A_�D�k�1�E1�E��D���5_��1Ʌ�H�����H�T�H��E1�@N��N��I��D9��H��9�׍C�E1�L�4�f�N�>E1�f�K��I��D9��H��?I����K�9H��I�����M9�u�E1�1�D�l$ E��H��1���`��L9�����E��1�H����j���
����S�1��j��H�������VSH��8H�ˉ������u��H�ىD$(�p���D$(H��8[^�AWAVAUATUWVSH��x)t$P)|$`E1���I��1ɍk�A�����]��E1�1�A���I����]��E1�1�A���H����]��E1���I��~*K��K��1��L��L��H��9��I��D9�։�L��������A��fW��=wD,���\$@�\$8M��L�t$0�\$(A�؉\$ ��H���r��1���~efDA��I��I��E1��f(�I��D9��A\�A~0N��N��L�E9�N��u�f(�I��D9��A\�A�H��9���\$@�\$8M��H�t$0�\$(A�؉\$ ��L���o�����B���E1�A��1�L��l$ �^��E1�A��1�H��l$ ��^���l$ E1�A��1�L����^���(t$PD��(|$`H��x[^_]A\A]A^A_��AWAVAUATUWVSH��XD��D��E1��n��{�I��I��1�A���\��A��A��L��H��I���n��9���E1�1�A������[��L�l$0�\$@M��t$8�t$(A�؉\$ ��H��I���o����A�����|$ E1�A��1�L���
^���l$ E1�A��1�L���]��D��H��X[^_]A\A]A^A_�DE1�1�A����q[��M��t$@�\$8L�d$0�\$(A��t$ ��H��I���n����A��td�l$ E1�A��1�L���]���|���f���L���f�����A���J����t$@�\$8M��L�d$0�\$(A��\$ ��L���&n��A��������L���$�����A��u��t$@�t$8M��L�t$0�t$(A��\$ ��L����m��A���^���AWAVAUATUWVSH��X)t$@1�E����fW�E�x�I�����A�����1�D��E�nH��H��H�����D��L�*E���A1x*O�!L�21�M�@�A�AYH��H9��\�u�D9�t4L�)H�1�A^)�(��H��A9��H��I��E9�t%E���u���f.�s/H���Q�H)f.�z%���1�(t$@H��X[^_]A\A]A^A_ø��f(�H�D$8H�T$(H�L$0D�D$ �e�D�D$ H�L$0H�T$(H�D$8�ffffff.�AUATUWVS����H�)�AD�b�E1�1�1�I�����D�^L5D9��A1tV��I�rJ�l�CLx4L��N�\1�L)�O�f.��A�AYH��H9��\�u��I�����Hc�H�������L�������H)�N�M�fD�CN��AH�9�~,��L��1�I��B	�AYH��L9��\�u�I�B���I���B^�AH�I����y�[^_]A\A]Ð���������UWVSH��H��x�\R(H��H��L��E1Ƀ�
�Y����X�?,�,�)�A��R�0��tA��H���8�0L�L$0A�����H��H���D$0�D$8�\$<�\$4�D$ $���0�H��H[^_]��UWVSH��H��x�\RH��L��E1Ƀ�
A���Y���X.?,�,ڃ�
����0E1���H����0L�L$0A�����H��H��\$0�\$8�|$<�|$4�D$ %�"�0�H��H[^_]��WVSH��P)t$0)|$@f(‹�$���$��\�H��$�H��$�f(�L��$����5�>,D��$���$��\��D��$(D��$X�
-�0�+�0f.�H�=$�0�%D>,wf(��^%F>,�.>,f.�wf(��^,>,1�H���\����\�M���X���0H��$��X�H���0�
Ĥ0�̤0H�ݤ0�%��0���0�lH�
Ф01�I�H�H��H=�u�H��$�H�+�0H��$�H�$�0D�����D1ʉ�0)�0E�����^�0H��$�H���0H��$�H��0H��$�H��0H��$�H��0���1É�0)ۤ0H��$H�Ԥ0H��$H�ͤ0H��$H�Ƥ0H��$H���0H��$ H���0D���A1�D���0)��0H��$0H���0H��$8H���0H��$@H���0H��$HH���0H��$PH���0D���A1�D��0)y�0��=H�=�0����Ң0~
H�
Ѣ0���01�A�H�
��0�^�0�������tM�������0��u.H�=��0t$H�ѹ0�
H�=�0t�2�Ӌh�0��t��Z�01�(t$0��(|$@H��P[^_�@H�y�0H�j�0���0H�a�0H�R�0����D�t�i�����M�0�H�d�0H�ݢ0H�H��H9�u����E1�1�1�H�=�*H�D$(L�Z�D$ ��0H��H�ڮ0t1H�
��0H��uH�ݸ0�2��H�
��0H��t�T�0���������
���DUWVSH���H��:1ɺ�D$`�D$p�����H�D$h�D$tH�D$x�ֻ0�1�H��$����01�H��$��ɶ0H��$�H��*HDŽ$�H�L$`H��$����0f��u��H���[^_]��:,1�H�D$XH�D$PA���YN*H�D$HL�9,H�D$@�D$8�H�*�D$(��D$ ��X�9,�,��D$0���0H��H���n����H��H��$����0H�5�0H�-��0H�5��0H�=��0f.�E1�E1�1�H��օ�t�H���H��׃=Ο0cu�1�H�
�
*1���0H���0���ff.�VSH��x��$�L��$�L��$pL��H�H��L9�u�H��$�L��$�L��$���F��%�8,��8,E1�H��f(�f(���B	I�CI��f(��_��]�f(�f(��L�H��M��t�Cf(��_��]�f(�f(�L9�u�I��I9�u�f(�fW��\�f.�zu�-�7,�X��\�f(��\�f.�zu��7,�X��\�H�L$8�d$ H��?H�L$(DŽ$�1�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�DŽ$�HDŽ$�H�D$xH�D$pH�D$h�t$`H�D$XH�D$PL�\$HH�D$@�D$0���H��x[^���6,�
�6,f(�f(������ATUWVSH��pD��$�L��$�H��$�H��$���$�L��$pH��H�H��L9�u�E��H��$�L��$�L��$�1A�D$��%J6,�J6,E1�H�,�f(�f(���B	H�FI��f(��_��]�f(�f(��L�H��M��t�Cf(��_��]�f(�f(�L9�u�I��I9�u���~J1�M��t�A�f(��_��]�f(�f(�H��t��f(��_��]�f(�f(�H��9��f(�fW��\�f.�z�0f(��\�f.�zu�+5,�X��\�I��?�d$ H�L$8DŽ$�HDŽ$�1�HDŽ$�HDŽ$�HDŽ$�HDŽ$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$���$�HDŽ$�H�D$xH�\$pL�\$hD�d$`H�D$XH�D$PH�t$HH�D$@�D$0L�D$(�Q���H��p[^_]A\��-4,�X��\�����%4,�4,f(�f(��8����VSH��)�$p)�$�D)�$�D)�$�L��$�L��$p��$���$�D�$L����$��$fDH�H��L9�u�H��$�L��$�L��$�|�F��%]3,�]3,E1�H��f(�f(�f.��B	I�CI��fD(��_��D]�f(�fA(��f.�L�H��M��t�CfD(��_��D]�f(�fA(�L9�u�I��I9�u�fD(�fW��D\�fD.�zu�D
�2,�AX��A\�fD(��D\�fD.�zu�d2,�X��\�f(Nj�$�H�L$8DŽ$�1��A�HDŽ$�HDŽ$��D$0H��$ fT�fD(�fT�HDŽ$�fU�HDŽ$�fEU�HDŽ$�DŽ$�HDŽ$�f(�f(�fE(�HDŽ$����fD(�fAV�HDŽ$�f(�HDŽ$�fDT�HDŽ$�fU�DŽ$�fT�HDŽ$�fU�H�D$xfAV�H�D$pfV�H�D$hfV؉t$`�d$ H�D$XH�D$PL�\$HH�D$@H�D$(� �(�$p(�$�D(�$�D(�$�H�ĸ[^���0,�
�0,f(�f(��K����VSH��x��$�L��$�L��$p����1�)�L��f�H�H��L9�u�H��$���H��$�L��$�L��$H��$H��$�H��$H��$�H��$���%00,���-0,H��f(�E1�f(�f.��B	I�CI��f(��_��]�f(�f(��L�H��M��t�Cf(��_��]�f(�f(�L9�u�I��I9�u�f(�fW��\�f.�zu�-m/,�X��\�f(��\�f.�zu�M/,�X��\�I��?�d$ H�L$8DŽ$�HDŽ$�1�HDŽ$�HDŽ$�HDŽ$�HDŽ$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$���$�HDŽ$�H�D$xH�D$pH�D$h�t$`H�D$XH�D$PL�\$HH�D$@�D$0L�L$(�l�H��x[^��R.,�
R.,f(�f(�����DATUWVSH��pD��$�L��$�H��$�H��$���$�L��$pD����D1�)�H��@H�H��L9�u�H��$���H��$�L��$�L��$H��$H��$�H��$H��$�H��$�2�%�-,���}-,H�,�f(�E1�f(�f.��B	H�FI��f(��_��]�f(�f(��L�H��M��t�Cf(��_��]�f(�f(�L9�u�I��I9�u���~J1�M��t�A�f(��_��]�f(�f(�H��t��f(��_��]�f(�f(�H��9��f(�fW��\�f.�z�0f(��\�f.�zu�[,,�X��\�I��?�d$ H�L$8DŽ$�HDŽ$�1�HDŽ$�HDŽ$�HDŽ$�HDŽ$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$���$�HDŽ$�H�D$xH�\$pL�\$hD�d$`H�D$XH�D$PH�t$HH�D$@�D$0L�T$(��H��p[^_]A\��-;+,�X��\�����%N+,�N+,f(�f(��8����WVSH���H��$0��$8E���HA�@��%
+,�
+,E1�H�<�f(�f(���B1�f(��_��]�f(�f(�@L�M��t�Cf(��_��]�f(�f(�H��H=�u�I��I9�u���~I1�f�M��t�A�f(��_��]�f(�f(�H��t��f(��_��]�f(�f(�H��9����$HfW���t
f(����fT�f(��\�f.�z�0f(��\�f.�zu��),�X��\؋�$@I��?�d$ H�L$8DŽ$�1�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$���$�HDŽ$�H�D$xH�\$pL�L$hD�D$`H�D$XH�D$PH�T$HH�D$@�D$0L�\$(��H���[^_��-�(,�X��\�����%�(,��(,f(�f(��!���f�H���L�\$@L��$�L��f�H�H��L9�u�H��$�L�D$HL�L$PD��$(L��$0H�T$@L��H�D$XH��$�H�D$`H��$H�D$hH��$H�D$pH��$H�D$xH��$H��$�H��$ H��$���$P�D$8��$H�D$0��$@�D$(H��$8H�D$ ���H����f�H����$�D$x�D$pH�D$hH�D$`��$���$��D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(H��$�H�D$ �n���H�Ę�fDH����$DŽ$��D$x��$�D$pH��$H�D$hH��$H�D$`��$��D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(H��$�H�D$ ���H�Ę�ff.�H����$DŽ$��D$x�D$pH��$H�D$hH��$H�D$`��$��D$XH��$�H�D$PH��$�H�D$HH��$�H�D$@H��$�H�D$8H��$�H�D$0H��$�H�D$(H��$�H�D$ ���H�Ę�fffff.�H��xH��$�H��$pH��fDH�H��H9�u�H��$�H�L$H�DŽ$�HDŽ$�HDŽ$�HDŽ$�H��$�H��$�HDŽ$�HDŽ$�DŽ$�HDŽ$�H��$���$�HDŽ$�HDŽ$�HDŽ$�HDŽ$���$�H��$�H�D$XH�D$PH��$�H��$�H�D$xH��$�H�D$pH��$�H�D$h��$��D$`H��$�H�D$@H��$�H�D$8��$��\$ f(�f(�f(ȉD$0H��?H�D$(��H��x�H��xH��$�H��$pH��fDH�H��H9�u�H��$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�H��$�H��$�HDŽ$�H��$���$(��$�H��$ H��$�H��$H��$�H��$H��$�H��$H��$�H��$H��$���$���$�H��$�H��$�H��$�H�D$xH��$�H�D$pH��$�H�D$h��$��D$`H��$��\$ f(�H�L$Hf(�H�D$PH�D$XH��$��f(�H�D$@H��$�H�D$8��$��D$0H��?H�D$(�@�H��x��H��xH��$�H��$pH��fDH�H��H9�u�H��$�DŽ$�HDŽ$�HDŽ$�HDŽ$�HDŽ$�H��$�H��$�HDŽ$�H��$���$0��$�H��$(H��$�H��$ H��$�H��$H��$�H��$H��$�H��$H��$���$��$�H��$�H��$�H��$�H�D$xH��$�H�D$pH��$�H�D$h��$��D$`H��$��\$ f(�H�L$Hf(ѹH�D$XH��$�f(�H�D$PH��$�H�D$@H��$�H�D$8��$��D$0H��?H�D$(�|�H��x�@VSH��H)�$�)�$D)�$D)�$ D)�$0f(�L��$�fD(�fD(�L��$���$�H��$�M��L��$���$�H��$�H��$�D��$�t	M�����%�,��,f(�f(�H��t	H������$�fW�tfD(��D��fAT�fD(��D\�fD.�z��fD(��D\�fD.�z��f.��o�ifE.��O�If.�z
u�5<,H��$��t$(H��$��d$ D��$�H��$���$�1�H��$�H��$�L��$�L��$�H��$�L��$�DŽ$�H��$�H��$�HDŽ$�H�D$xH�D$pH�D$hH��$�H��$��D$`H�D$XH�D$PH�D$HH��$���$�H�D$@H�D$8�D$0�0��(�$�(�$D(�$D(�$ D(�$0H��H[^�fA(�fA(����f(�f(����M�������H�������������%�,1���,f(�f(��A,�fD(��_��D]�f(��A,�fA(�fD(��_��D]�f(��,�fA(�fD(��_��D]�f(��A,�fA(�H��fD(�9��_��D]�f(�fA(���k���E���p���1��,�fD(��_��D]�f(��,�fA(�H��fD(�A9��_��D]�f(�fA(���(���f.��D�,�AX��A\��<�����Dw,�AX��A\��3����W�`��H��uB@��uL@��uX��1������H�t
�H����t	f�H����t�_�DH����_@��t��f�H����@��t����H���ffffff.�VSH��X)t$ )|$0D)D$@H��f(�I(�S,f(�fD(�H��$�9�}xL�L�[L�SL�KH�C Hc�H���A4�L��$��A<��E�M��H�RH�������V�P�V�P(t$ ���K((|$0D(D$@H��X[^�fD�T
H��S,Hc�H����HcS,H�KH�H���v�HcS,H�KH�CH���a�HcS,H�KH�CH���L�H�CHcC,H�K H�@H���3�L�H�C M��tAL�[M��t8L�SM��t/L�KM��t&H��t!�K(�������@���@���#���H��,H�
�,A���
0���fff.�UWVSH��X)t$0)|$@H��f(�D�AX�Q\f(�H��$�H��$�A9���H�Q0L�Q8L�[HH�I@Ic�H���4�H�@H�,��A<�D��I�����
�N�J�N�JH��tCHkPH����D�CXH�EH�CPIc�H�<��(t$0A��D�CX(|$@H��X[^_]�f�H�SPH����f��T
�Q\H�I0Hc�H��D�L$(���HcS\H�K8H�C0H����HcS\H�K@H�C8H����H�C@HcC\H�KHH�@H����HcS\H�KPH�CHH���l�H�S0H�CPD�L$(H��tCL�S8M��t:H�K@H��t1L�[HM��t(H��t#D�CX��������B���B������H��,H�
,A���>.��H��,H�
,A���%.���@�E��xiD�Q(D�YXG�E�E9�}UE9�}-A��tLH�A�Mc�J��H�H�AJ��H�B1���A��H�A0G�PMc�J��H�H�A8J��H�B1���H�AA�Mc�J��H�H�AJ��H�B1��ff.��E��xiD�Q(D�YXG�E�E9�}UE9�}-A��tLL�
H�A�Mc�N��H�AH�RJ��1���A��L�
H�A0G�PMc�N��H�A8H�RJ��1���L�
H�AA�Mc�N��H�AH�RJ��1��ff.��A(��f.�H���AXf(�f(�f(Ӊ�$�H�AP��$�H��$�H�AHH��$�H�A@H�D$xH�A8H�D$pH�A0H�D$h�A(�D$`H�A H�D$XH�AH�D$PH�AH�D$HH�AH�D$@H�H�D$8��$��D$0��$��D$(H��$�H�D$ �����H�Ĩ�WVSH�� H��H�	��H�O��H�O��H�O��H�O �z�H�O0�q�H�O8�h�H�OH�_�H�O@�V��GX��~1�1�H�GP��H�0H���7�9_X�H�OP�)�@���`uC@��uL@��uX��1������H�t
�H����t	f�H����t�H�� [^_��H���_@��t�f�H����@��t����H���ff.�SH��P)t$ )|$0D)D$@f(��fW�f.���f(�����y��,��=,f(��D*�fA(����^��f(��5,tv�
.,f.�w8�
(,�5�,f.�w"f(��
�,��5
,fT�fU�fV�fA(�f(�肳�Y�(|$0(t$ D(D$@H��P[��f.�w��5�,f.�w��
�,f(����fT�fU�fV���u,fW�����fff.�ATUWVSH��)t$`)|$pD)�$�D)�$�f(�H��1�f(��\�fD(�H��L��$�����^1,��o���f(�f(��^���f(�fA(��Y��^��X�fD(�f(��DY��=����fW�E1�f.���H�t$PH�,H�\$0H�����D=,�DY��EX�fD.�v5�t$(L�D$(H��f(�H���z�f(�I��H��H��A���X�fD.�w�(t$`(|$pD(�$�D(�$�H�Ġ[^_]A\�f(����/��
,fW��D,��J���f�AWAVAUATUWVSH��)�$�)�$�D)�$A����I��H�ӹH�Ԏ01�H��$���L��H��$���0H��0H��$�L��H��$��Ћk<���H�����[�S L��H�T$ H�����H�����[0�S(H��H�D$ L�����������L���h�0H�A�0H��$�H��$��ҋ{8����
H�
��)H�C�L�-*�0H�-�0�5�,H��$�H��$�H��$�H��$�L���M����H��$��A�D�A1��	�A���A	���$�L��H��$�H���$����H�C@�c������(�A$�S(����.�\�E1��\��Y��Y��X��X��,��,��;DA�FI��9����H�C@�c������S(������B�D��x��
E1��\�A��
A)�L���Y��X��,��C��\��Y��X��,�A��D��x�W
L��A��
A)��C�d���D��xD�WE1�L��D��D�T$xA)�A��A��D��x�WL��A)�A����D��xD�T$xL��A)�D��A����A�FI��9������H��$���$�H��$�H��$�H��$�H9�$��
���H����%H����D��E���1�A�Җ���$�L��H��$�H���$�H����E1�E1�1�H�D$h�D$`��D$X�D$P�D$H�D$@�D$8�D$0�D$(�D$ ,��0H��H����L��H���$�H��$�D��E���*L�5�0H�
�0E1��5b,1��=�,E1�L��$�L��$�H��$�H���L����8H���M���\C�Y���X��,��8�\C(�Y���X��,���H��$�M�1��AZ��Y��X��,ЉH��H��u�L��$�D��$���$�1ɺA��A	���$���A	�E��D�L$x��$�L��I��H���$�H��D�L$xtD��L����0D��xE1ɍUL��A��
A)�$�D��x�UL��A��
A)�$�D��xD�]
E1�L��D��D�\$pA)�A����$�D��xD�\$pL��A)�D��A����$�H��H��tM��x��H�:��$���$�L��$��D$ %A�����L��)����$���$����0A��H��I��D9�����L��$�H��$���$�H���OH���AH�� �3H��(�%D��8E���1�A�������$�L��H��$�H���$���8����L�5L�0H�M�0E1�H��$��5�,�=,1�L��$�1�H��$�M��H���c���L��0�S(�B0H�����M���\��Y��X��D,��B0H�� �\��Y��X��D,��B0H��(�\��Y��X��D,��B0�\��Y��X��D,���H��$�I�1��AZ��Y��X��,ЉH��H��u�D�L$xD�\$pH��$���$���$�1�D��$���	�A���A	���$�L��H��H���$�D�\$pD�L$xD��xA�Q
L��E1Ƀ�I��H��A��
E)��$�D��xA�U
L��A��
E)�$�9�8�|���H��$�H��$���$�H��@�rH��H�d��h���VH��`��E1�E1�1�H�D$h�D$`��D$X�D$P�D$H�D$@�D$8�D$0�D$(�D$ ,���0H��H���	L��H���$�H��$���h����H���0W�L��$��5�,�Du	,HDŽ$�E1�H��$�H��XD��H����H�$��.����J.��x�J.��j�Z��AY��X��,��BZ��AY��XƉ�$��,�(��Z��AY���$��X��,�@��@��@������L��	�	���$�1�A����$�L��I��H���$�H��`t��L�����0H��@��xN���B�H��H�\C�Y���X��,��B��\C(�Y���o
�X��,���
)�H��PB�<���B��H�a,Hc�H��H�	�0�N��WL�\$pE1�D�fA�ȉ�$���$�L��H��$���D�WE��L��H�-��0D��D�T$x��D�T$xE1�D��$�L��D���$�E��$�L����L�\$pDH��`H��tJJ�H��tA����
�D$ %��$���$�L��$���$���$�A�����L���ڇ0A�FH��$�I��9�h�����L��$�H��$���$��(�$�(�$�D(�$H��[^_]A\A]A^A_�D�WD�f�L�\$pE1�L��D��D�T$xE����0�WE��L�����0D�F��L�����0D�T$xE��L��D��r�0L�\$p���D�WD�fL�\$pE1�L��D��D�T$xE��$���D�F�H�-6�0L���ՍWE��L����D�T$xE��L��D���L�\$p���D�V�L�\$pE1ɉ�L��E��D�T$x���0L�%�0�WA��L��A��D�F��L��A�ԍWA��L��A��D�T$x��L��E��A��L�\$p�(���D�f��WL�\$pE1�L����$�E����0D�WH�-{�0E��L��D��D�T$x��D�T$xD�NL��E��D�L$xD���D�L$x��$�L��E���E��$�L����L�\$p���L�&�0L�\$pE1ɍWA��L��L�T$xA�ҍWA��L��L�%��0A��E1�D�F���L��L�T$xA��D�F��L��A��L�\$p�H���������Ѓ�)�H�H�@H���)H���8�h�p���H�
����[ �SH��H�L$ L��������E1�1ɺ��$�L��H��$�H���$�H�����E1�E1�1�H�D$h�D$`��D$X�D$P�D$H�D$@�D$8�D$0�D$(�D$ ,��0H��H���HL��H���$�H��$�D���E���&L�5�0H��01�L��$��5�,�=j,E1�L��$�H��$�I��@L���M����H��$�M�1��AZ��Y��X��,ЉH��H��u�L��$���$���$�1ɺ��	���$���	�A��$�L��I��H���$�H��t��L����~0H�CH�S���H�S@�c(D��x�B�H�CX���E1��\�A��
L��J�4��Y��X��,��B�H�CP�\��Y��X��,��B��\��Y��X��,��B��\��Y��X�A)��,Ѓ�
��$�D��x�U
L��A��
A)���$��C��H���H��tJ��x��H�2��$���$�L��$��D$ %A�����L��)���$���$��L�0A�FI��I��9���$���L��$�H��$���$��c��D��xD�UE1�L��D��D�T$xA)�A����$�D��xD�]L��D��D�\$pA)�A����$�D��xD�\$pL��E1�A)�D��A����$�D��xD�T$xL��A)�D��A����$�������~0H�
�+L�H`A���Գ����~0H�
�+L�H`A��讳�f��~0H�
��+L�H`A��舳���ff.�WVSH�Ā��H��ttw���6H���€0H��[^_�f���t;��u�I�� w-H�$L��s1��f0H��[^_�f�H��w�01�H��[^_�H�t$ H��G�0H�T$pH��H��n�0D�L$xD�D$pH���
�e0�T$tA���\
�e0D�.g0E)�D�D$|�$g0D�
!g0A��
�A*�A��A)�H��e0D�g0A��
�^��
�e0�\
�e0��f0�A*��^���f0���H��H���01�H��[^_�1��e0c��01�H��[^_�����������������H���)H�
��)ÐH��f0H�
�f0ÐVSH��8H�s�)L�D$`L�D$`H��L�L$hH��H��L�D$(t��H�[f0H��tL�L$(I��H��1�АH��8[^�ffffff.�WVSH��0H��)L��L�D$hH��H��L�L$hH��L�D$(tH��H���H��e0H��tL�L$(I��H��H���АH��0[^_Ð�������H���)H�
��)ÐH��e0H�
�e0ÐVSH��8H���)L�D$`L�D$`H��L�L$hH��H��L�D$(t��H��e0H��tL�L$(I��H��1�АH��8[^�ffffff.�WVSH��0H�:�)L��L�D$hH��H��L�L$hH��L�D$(tH��H���H�&e0H��tL�L$(I��H��H���АH��0[^_Ð�������1��ffff.��ffffff.�UWVSH��(H��z0H��H��H��L��t��H��+H�H`I�����H�H`I��H������H�
��+L�H`A��H��([^_]鰯�UWVSH��(H�yz0H��H��H��L��t��H�Z�+H�H`I��膯��H�
M�+L�H`A�	��Y���H�H`I��H���`���H�
�+L�H`A��H��([^_]�#�ff.�H��(�&x0���H��(�fff.�H��8H�T$$�ax0�D$ H�D$ H��8�H��8E1�A��H�T$ A��v*L�D$$�T$ ��x0����D$ t"H�D$ H��8��H��+Mc�F����x0��1���HDD$ H��8�f�AWAVAUATUWVSH��H1�M��H��L��tXH��L�t$<L�-�x0A���L)�t<H�����E��H�D$ DF�M��H��E��H��A�Յ�t-�D$<A��L�L�A9�t�H��H��H[^_]A\A]A^A_��1���fff.�AWAVAUATUWVSH��H1�M��H��L��tXH��L�t$<L�-�w0A���L)�t<H�����E��H�D$ DF�M��H��E��H��A�Յ�t-�D$<A��L�L�A9�t�H��H��H[^_]A\A]A^A_��1���fff.�ATUWVSH��01�H��H��L������E1�1�H��I��H�D$(�D$ A��v0H��H��t6E1�E1��H��H�D$ ��v0H��H���u0H�?tL�e@���H��0[^_]A\�H�w0H��H��SH��PE�H�P�����H��L��L����E��t>A��uL�1���H����t*H���
H��A��utvD�HE��u�L�����H�����H�D$@H�"���L�
K���L�D$HLc�H�D$8H���H�D$0H����H�D$(H����H�D$ ��4H��t�XH��P[��L�����H������WVSH��@H��H���+H��H���44=��~=tu=tn1�H��H��@[^_Å��A���uh�L$(D�D$ E1�H�D$0A�H��dt0H���H��tkI��H�����H��H��tFH��H��@[^_�A������f����n����A����H����s0�DL���+H��+I��1�1��6����@H��t�f�fD1��ffff.�AUATUWVSH��HH��H��+H��H���2=�d~2=�'=�1�H��H��H[^_]A\A]�f.����A����	�L$(D�D$ E1�H�D$0A�H��$s0H���H���1�1�H�D$8H�D$0�D$(A�����H�D$ I��L�-8t0A�Յ�A����Hc����H��H����D�d$(I��H�D$8H�D$0H�D$ A�����I��1�1�A��I��H�������H��H��tZL����H��H��H[^_]A\A]�f�A���������E1�H�5�+밃������fDA����H���q0�DL��+H�'�+I��1�1��F�������L��+H��+1�1��*����c���D�;�ff.��K�ff.��˩ff.��#�ff.�WVH��H��M9�L�������(���^_Ð�ATUWVSH��@�AH��H��L���tX�H��GH�jH9�H��~
H;���H���L�M�+H�&�+�a���1�H�H��@[^_]A\�E1��H���H�u9���H;�H���L�L�a�+H��+�
���1�H��@[^_]A\���H;u�H�l$0H���A�H���H��u��C��*H�D$0H=������H��H�����A���Hc��,���H�H���A�H��H�����C���P����IfDH�jH9�H��~
H;����H���L��+H��+����1�H��@[^_]A\�H�l$>H���A�H���H��������C��/�D$>H��H���A��@��Hc��D���H�H�|$8H���A�H�����H�����C���H���F8��H�xL�d$>A�L���f����C��\�D$>�@��Hc�H�*H9�aH�HH9�|XH9�SH��~MH;��DH��tH�H��xH�|$8A�H��H�����C��g����D$8H������@H���L���+H�{�+��1����H�xL�d$0A�L������C���H�D$0H=����������Hc�H�*H9��H�HH9�|�H9��H���y���H;���l���H��tH�H��xA�H��H��,����C������H��D$(��6�D$(����L���6���H���L�L�?�+H���+���1����L���6�$���H���g6����f�H���6����H���L���+H�>�+�y�1��g�����������������DUWVSH��8L��E1�H�Ή��X;H��1�H��tpf�A����(��we����������������D�������VjH�Ef��H��8[^_]�D��R�4����B��f����E�!���C����D�SH���H�EH���H������$�����f��Z��������H�E������.����������������������1�f���H�U�Cf���������H�Ef���������H�Ef�H�EH���H�����f.��VpH�Ef���m������9�)���H�W H�
��+H���+��L���+HB�H���H�T$(H�D$ H���+L����1�������T������U���u����H�Ef����H�Ef�����@��-�����)�E������H�Ef����H�Ef���n��������z�������H�E�V`���=����VhH�Ef���(����VlH�Ef����������H�Ef������H�E�VT�������F@��H�EH���H��������H�Ef�����H�EH��H�����Vr)¸���|���H�EH��H�H�EH��H���V���@�VzH�Ef���=����VrH�Ef���(���H�E�Vt�������VfH�Ef������F@�H�EH���H������H�E�VH������H�E��������H�E�VX�����H���H�EH���H������H�EH��H���g����Fff���Y��f���6�f��=����FrH����f��v-����H��1�fD�LH��H9��_�f(�u�H�E�������FrH����f��v҃���H��1��LH��H9��]�f(�u��f���Jt$��M�?���H�EH��(H���v������H�Ef�H�EH���H���P�����
t��������D�VnH�Ef���������t��������H�E�V\�����H�E�VP��������t!�������VdH�Ef�����H�E�VL�����@��@t2��A�?������H�Ef����H�Ef���h���H�EH���H�H�EH���H�H�EH���H���4���f���������������VxH�Ef��������t"�������H�E���������H�E���������f����f���e���H�Ef�����H���f�8���������0���t���H��8H�9t H�V1���9���H��H��L�A9u�tff��H�EH�U�N��f�
H�H�VH������H�Ef������H�Ef�����H�Ef�������?Pt7�t�Gf���tf���tf���t�~~ZH�EH�VH�����H�O H�-�+����u�H�FH�U�f�
�PH�Ef���d����
�6���1��V���H�^tH���+H�
��+A�7�e��G����wω�H���+Hc�H��H�EH�H�������H�E����H�E�������H�Ef������H�E������f�VSH��8)t$ H��f(�H�	L��H��t�.�H����H��H�tH��t@�t�H��u�(t$ H��8[^��ATWVSH��8H��H�	H��M��L��H��t���H�H��tRI��M��H��uH�H��t>H��H��8[^_A\���1�L��H��L9�u�L��L�D$(�s�L�D$(H��H���fDH��8[^_A\�fDA�E���b���f�VSH��(H��H��H��褘L�@A�H��H��H��([^�1����A�E���"���f�A�E������f�A�E������f�A�E����f�AWAVAUATUWVSH��x)t$`1�H�ˉ�L��$�E1���/H��H����f�xA�}��)�������/�i���������	�h���IH��$��H�P�H��$�f�Cj�eDD��0H��8E��~9H�I��90��H�Q1���I��H��M�$A90����D9�u�A�A��0H�H�@H�����H���/Lc�0H��8I��Mk�I�I�<$I�D$A�D$�O�.��A����������H��$�H�PH��$��A�T$�����GH���L���+L�H���+1�D$8�G�D$0�G�D$(H�G H�D$ ���f�(t$`��H��x[^_]A\A]A^A_����T�7�^��C��f�����@�=����-���Cr���E1�L�s8A�)Ѓ�H��$�A��1�G�d$�
f.�H���KdM����H�H�hE��H��H��$�A��L������A9�w˽�Q������N���f�������H��$�H�P�H��$����W����-f���H����/H��H��+tH�P H���L�L���+H�T$(H� �+�|$ 1����y���f�����$@�*������d����-��� H��$�f�8H�PH��$��e�c������4@H��$���f���H�P�@H��$�f���@��H����.H��t�H�����f����	D�8�K����C@�ZH��$�D�CrH����H�PH��$�H��f����@H��$�1�H�P�H��$�f������f�Cr��a���������w��U�^f�H�W H�
��+H���+����L�L���+HG�H���H�T$(H�n�+H�D$ ���1�����fD����p��u�H��$��8H�PH��$��������C8�{t�������CH�{X�CT�������x������2���H��$��H�P�H��$��C`�O�����M������J���C ��H��$�H���A��H�PD�H��$�H�PfD���E���������C@��H��$�D�CrH����H�PH��$�H��}������H��$���f���H�P�@H��$�f����w����H��$��f�8H�PH��$�����f��f����=���H�T$^H���A�f�D$^�������H��$���H�PfZ�H��$�������H��$��C8�D� H�PH��$�A��t�Ch9��c���H����c߉�H���7����������fD�ch���H��$�D�Sr�H�PH��$�H�P����fE��L�
E��H��tgL9�s�8H��u�M�xtGH��H�HL9�u�E��E��H���D��L���+H��+D)�L�D�T$ �D$(1���������fA��H�Au���)����H��(A�A�������� ����H��$��H�P�H��$�f�Cx���H��$��Kd�H�U��H���A������H�UH���A������H�UH�EH���A���H��$�����?���H��$��8H�PH��$����1����{\�����H��$��8H�PH��$�f���.��(f���`f���L������H��$��H�P�H��$��CP���f�H��$�fW�H�P�0H��$�f.���f��fZ�����`���H��$��8H�PH��$�@��t$�C���I���H���H�L���+A�������{X�K�����H��$��H�P�H��$��CH���H��$��H�P�H��$�f�Cl�����f�Cf������H���(H��H���+tH�P H���L��t$ H�T$(L�r�+H���+1��N���9���H��$�D�CrH����H�P�H��$����6���H���L�L���+H���+1�������H��$�D�CrH����H�P�H��$��T����������������H��$��C��H�P�H��$�f�Cd�������f���kf���tf���gf�� �Bf��@t
f�€�d���H���H����Q����H��$��H�P�H��$��CL�-�����
t?������H��$�H�P�H��$����W�������f�Cp����H��$�H�P�H��$����W�������f�Cn������R����S�[���H��$�H�PH��$�����ЍO��������f�Sf�{d ����f���Q���f�{d@�F���H���H9���2���H�+�H�������H��$�D�fD;CrA��������H�P�=H���fD���A����|�������t:�������H��$�H��A�H�PH��$�H��Z��:���H��$��H�P�H��$�f����n�����tL������H��$�fW�H�P�0H��$�f.������f��fZ��������H��$��H�P�H��$�f�Cz�����At`��B�����H��$��8H�PH��$�@��t$�S�����H���H�L���+A���b���{T�K����H��$���f���H�P�@H��$�f����]�����tB��(�	���H��$�H�P�H��$����W����4�f��������H��$���H�PfZ�H��$�������E������K@����f������H�����1��Bf��vf������f�BH��9�w������������I�L$H������!�I�D$��H�L�H9������H�x��H����'�H�P�H�����H�M�H�����H�G H���L�'�+L�H�L�+1�H�D$(�G�D$ ������Wf���t
f����A�D$�Mc�L�
`�+Hc�M��H��1��1�H��I��I�D$�P�?P��u"�Gf���tf���tf���tA�|$�MH��$�E�D$L��H�PE��H��$�H�Mc������H���H�����tqf��tH���+H�
A�+A��.�H��$�H�PD�H��$�H�PI�L$E�D$A���y���f�������A�T$��H��$�H��H�PH��$�H�1�H���A��A���H�O H��+��������H��$�A�L��@��f�T$PH�P�@H��$�H�T$Pf�D$R����
��SrA�T$�~�tH���+H�
��+A�W�4��G�����]��H���+Hc�H��H���L�L���+H��+1�����o�H��$�M��L��H�P�H��$�H�T$T�D$T�`���k�H��$�H�P�H��$��D$^H�T$^M��L���1�����H��$�M��L��H�P�Z�D$XH��$�H�T$X�����H��$�M��L��H�PH�H��$�H�T$HH�D$H�������H��$�H�P�H��$�f�D$^�]���H��$�M��L��H�PH�H��$�H�T$@H�D$@�m���x�M��1�L���K��1��4�@WVSH�� ��H���/1�H��t,�Hf��At.�ʸf�������!D�8�N���H�� [^_�f���0��~�H��8H�98��H�A1ۃ�9�t�H��H��L�A98u�H�I�����0D�H�A9�~H��H��8)�Hc�H�[L�D@1�H��I��H�LH�H�L H�LH�L(H�LH��L9�u�D��0�G���1���WVSH��0L��E1�H�ˉ��IH��td��t�C@t�xt H���I����H��H��0[^_H���H�@ H���L�v�+L�H���+H�D$ ����1�H��0[^_�H�S�+H�D�+��H���L�L��+HB�H���+�t$(H�D$ ���1�H��0[^_��H��8L�D$PL�D$PL�L$XL�D$(����H��8�fffff.�WVSH�� L��E1�H�ˉ��IH��tD����w�@��f�����T�8��s#H���I����H��H�� [^_H��f.�1�H�� [^_�fDH��8L�D$PL�D$PL�L$XL�D$(�s���H��8�fffff.�WVSH�� 1�A�H��H�I8���H���H��t�T��Hǃ�H���H��t�8��Hǃ�H���H��t���Hǃ�H���H��t���Hǃ�H���H��t����Hǃ�H���H��t����Hǃ�H���H��t���Hǃ�H��(H��t���Hǃ(H��H��t�t��HǃH��H��t�X��HǃH��H��t�<��HǃH��H��t� ��HǃH���H��t���Hǃ�H���H��t����Hǃ�D��0�c<���1�1�H��8E��~%H�L8H��t���H��8��H��9�0�H��ǃ0tH�����Hǃ8H�� [^_�H��40H�
�40ÐVSH��(H���bH��H���WH�K81�A��V��H���H��f�Cnf�Cdf�ClH���H�'�f�Cpf�Cr�Ct����H���H�����CT�CX�C\ǃ�fǃ�f�Cf�CPfǃ�fǃ�fǃ�Hǃ�H���Hǃ�toH��1�1��f.�����H;�s/H�@H��D�HE��t�H�H���5����H;�H��r����HǃHǃH�q30H��tH���A��H������c�����H��([^ÐVSH��(H��H���_���H��H����1�H�CH�C Hǃhǃ\����ǃd����H��([^�fff.�SH�� H���H��H��H�� [�fDSH�� H�����1�H�CH�C Hǃhǃ\����ǃd����H�� [�fff.�WVSH��0�AH��uP��LH�D$(1�H��H�|$(u�*�f���t8��H�|$(tE1�H��H�������u݉�H��0[^_�H��PH�D$(�H���L�l�+H�=�+�����H��0[^_�fffff.�UWVSH��8�AH�Ή�u}��LH�D$(H��t;f���H�|$(u�-f��H�D$(t$H��tE1�H��H���q����u�1�H��8[^_]É��H�F f�F2f)�H��f��`�1mH��8[^_]��H��PH�D$(�f�H�Q f�A2�m�H�A�ff.�1�H�y ���DATUWVSH��PD�QH��A��E�����AtnH��PH�D$@H�D$8D��f��tfH�|$8H�l$@H�|$8u��f��tJH�|$8�oI��H��H���p����u�1�H��P[^_]A\Ë�LH�D$@H�D$8�H�|$8@E1�H��H���2����1���t�E1�H���H�T$@����F��NH�T$8�щT$LH9�tH���+H�
��+A�y�u�F��H�T$L�ZH���A����H���H���F��t@H��HH��t4�/���FHdžHHdžpHdžXHdž`%���H��F�p���H�����H�FH�F �Hdžhdž\����džd�������H���L���+H���+E�����1�H��P[^_]A\�@H���L���+H�k�+���1�H��P[^_]A\è�uXH���A�H�����H�����H���L���+H� �+�;��1��
���H��H�T$(�H�T$(���H���랐��AUATUWVSH��(H�͋I����H��H���E���H�M(H��u"�%f.�H�H�KH�����H�����H��H��u�H��H�EH��t	���A���H���H��t
H���urH��tMH��1�1������H;�s-H�@H���P��t�H�H�������H;�H��r����H��H��([^_]A\A]�����1�1�A��@����H;��sRL�$�fA�|$Au�I�D$ H�5��+L��H���u�H�������L�������H;��H���r�f.�H���h������H��xH���L����������H�����]����+���E���VSH��(H���H�������H��H��H��([^H�␐������1��ffff.��ffffff.�H��(D�A��rt2A��w�t A��af�tL���+I��1���������H��(�f�1��y+���H��(�AWAVAUATUWVSH��HE1�H��$�L��$�H��H���+H��H��M��M���r���������H���vH�����H��I���R1�H��A��'��I��H��I���v��fAdž`��Idžh��H��Adžd����A�FAdž\����M����QM���HM���?H��$��0H��$��!H��$�H��$�L��H��$�M���I���M���I���H�R���HE�$�H��$�I���I���H�;���HE�$�I����V���A�F��A������E1�����A��L�z�+H��A����8<5����Ic�L���f�I��HI���A�A���H����A��Hf=II��f=MMA�Fu�A�F��tI��J�)A��J�P�f����f��*�3I��PI���A�H��A���H���"A�F���A��Lf����A��Nf���A�FfAdžX
��IdžHIdžhA�FIdžPIdžXIdž`���a����r�����A��LI�V ����u(L���d����A�NIdžp�����L��H��H[^_]A\A]A^A_�A�F���A�F�BH�J��t6H���*���f��E1�A�F����A�NH�J�B��uʀ�����A�F����A�V�с����f%��fMM��fA��H�z��fAdžJ*AdžL�fAdžXE1�1�I���A���E��XI��HI���A���A��XH9��fA��HMM��L������bI�FI�F(fA�F0fA�F2���E������A�N����f�A�F���A�F���E�������A�N����E���y���A�f����l���f.�E���Y���A�N��L���f.�E���9���A�N�,���f.�E������A�f��������f.���fAdžJ+fAdžLfAdžNIdžP��fAdžX�m���f=MM�M���I���D��L���+D�L$ H��跿���A�FL��E1�����X����A�N��a���L���+H���+L��E1��g����"���f�I��J�����I��J�I��L��C���I���L���+H�������g���A�F��u]fAdžX����I���L���+H������5���L��+H�?�+I��L���̾�����L���?���w�������I��L�vA�F�I��PI�V ����I���D��L�v�+D�L$ H���q������I��L� H���H�<���I��xI���L�D$8A�����t9H�D$8I���A�F���I���D��L�6�+D�L$ H�������L���A�F��A�F�}���I���D��L�:�+D�L$ H���ͽ�������H��fff.�H�H��f��A�fff.��A�Q�f�H�����H���H���Ð�A�fff.��A�Q�f�1��A���fD��\�f���`����d�f�����f�1��A����fD1��A@���fD�A���f�1�f��HMM��ÐH�����H�����H�����H�����H�����H�����H���Ð��������A���Q��A���Q�A�Q�A�Q�D�A���Q�A�Q�A�Q�A�Q�A�Q�A�Q�A�Q�f�H��~ L�Q��A���QH��L9�u���f�H��~ L�RI�@�A���QH��L9�u���f�H��~7H����AD�H��D�A�D�A�AD�A�AH��H���u���f�H��~WH����AD�H��D�A�D�A�AD�A�AD�A�AD�A�AD�A�AD�A�AH��H���u���f��A���Q�A�Q�A�Q�DH��~7H����AD�H��D�A�D�A�AD�A�AH��H���u���f��A���Q�A�Q�A�Q�A�Q�A�Q�A�Q�A�Q�f�H��~WH����AD�H��D�A�D�A�AD�A�AD�A�AD�A�AD�A�AD�A�AH��H���u���f�H�Y�+H�R�+��HD��ff.�H����L�Z�L�+�+H��I��N�T�D�G�D�D�HG�D�HD�HG�D�HD�HG�D�HD�HG�D�HD�HG�D�HD�HG�D�HD�HG�D�HH��L9�u�J�L�I��J�T�H��~L���+H��A��H��H9�u��Ð������H�	L��A�9�t)��ËQ1���t�A�@)���fff.�f���A��u6��u1E���tKA��uAE��uLf���u6��1���w.H���+��ÐE��u�f��u:��1���w
H���+���1�����f.���1���w�H�?�+���f��~���1���w�H���+��ÐH�9�)��H�I�)��ATUWVSH��`L�I��H�t�+H��L���ViH�����H�-N�+H�=B�+1�1�H���H��H��H���xL�@ HD̀xL�D$PH�L$HL��HD�H�T$@�P�T$8�P�T$0�P�T$(D�@H���+D�D$ D�A�؃���h��H;��r�H��`[^_]A\�ff.�1���wH�b�+�ɋ���ff.�1�����w
H���+����f.�WVSH��p1�H��H�|$0�H���A���H�H�D$0H��H�D$ht9tZH���1�H��t<D�D$8H�����L���H�L$hD�L$0A�H�D$ �iH��tH�H���H��H��p[^_�DE��t�D9Cu���UWVSH��8H���H��H��D��Hǁ�D��H��tH���H����L�
��+A�H��谏H���H����1���u�T���H��09�t:�E1�H������H��u�H���H�����H��H��H��09�H���u�H���H���L�
����H��A��h��H��8[^_]�L�V�+A�L�D$ L�
H��H���|�H����G���H���L��+H�;�+����1��f�AVAUATUWVSH�� L���I��I��M����H�����1�1�A��f�����I;�$�sQI�,�f�}Au�H�E H�5��+L��H���u�H�����v���H���n�����I;�$�M��$�r�f.�L���H���IDŽ$�IDŽ$�I�UE�EL��������tH�� [^_]A\A]A^�I��$�L�#�+H�9�+H�� [^_]A\A]A^����@VSH��8E1�H�Ή��
���H��tH��8[^ÐH���L�
�+H�$�+A��H�D$(辳��H�D$(H��8[^�f�ATUWVSH�� H���H��H��H��t
H�K �Ce��t6H���H��tOH���L�$�L9�s4H�H��H�S �e��uH���H��H�� [^_]A\�H��I9�w�HDž�H���L���+H���+I��1��
���H��H�� [^_]A\�ffffff.���ffff.�H�A �ff.��A�fff.��A�ff.��A�ff.��A�ff.�WVSH�� �0��D���J���H��H����1�A�0H���^������;f�C��f�C���s�Cva�C�Cf�CA�C� �C���H��H�C �KL���+H�C(A��� H���\[H��H�� [^_ÐH���+Hc�H���C/�C/��C.�C.��C2�C2�m����C1�C1�Z���f.��C-�C-�=����C+�C+�*���f.��C)�C)�
����C0�C0���f.��C,�C,�����C*�C*����f.��C'�C'����C(�C(���f.�H��1�薹�������UWVSH��(H�Ή�D�����H��H��tH��H��([^_]����A��H�����A�H��H��H��������HE����AWAVAUATUWVSH��HH��I��H��E��H���kH��H�
�+L�@A�H�L$ L���B�I��H���zI��L�
�+A�0L�<IH�QL��I��I��D��L��L�|$8H��D�sD�s�g�H�T$8H�CI��H�\H���E����A�F�L�{0L�$@I��M��I��0���nf�k�F��f�C�~�C�{D�F������CD�F���w����C�Ff�C�F�C�F�CH�FH��M9�H�C(H�C L��u�I��H�L$8H�\E��H��L�������t61�H��H[^_]A\A]A^A_�L�
��+A���e�I�����I���L���+H���+����������I���L�J�+H���+�^��������느������AWAVAUATUWVSH��HM��H��H��L��L���H��H�{tH�EH�{�C���z�uSL�gI��~I9�|
L;����H���L�i�+H���+E1��ʭ��D��H��H[^_]A\A]A^A_�fDL�gI��~�I9�|�L;���H��H�xH�|$0A�H��苶���C��QH�D$0H=�`��f�D$>M��A�f���L�
��+M����A��H��L�T$ E1���H��H��L�T$ �K���D�D$>E��K�I9�� I9��H;���
L��H�xH��L�T$ ���H��L�T$ ���D$>A��J��C���H�QH��~H9�|
H;����D$8�����T$8H�U�T$>L�
��+��A�H����H��H�D$(��f�|$>��L�d$(H��E1��1E�����EI�D$�EH��A�D$I��A��fD9t$>���C���T�ME1�fA�$�M�fA�L$H�Mt�E���zD�m�EI���������M
D�]L����EI��H��������H��0I���I��8H��I	��EI!�H��������H��I	��EI!�H��������H�� I	��E	I!�H��(I	�M!�I	�H��������I!�M	�M�l$D�}�U
D�]L����I��H��������I��H��������I���M	�D�]I!�H��������I��M	�D�]I!�I�� M	�D�]I!��EI��(M	�D�]M!�I��0M	�H��8H��I!�I	�M�|$�~����E1�H���H�����H;C��C��H�|$>H���A�H�����H�����C��z�T$>A�A�f���L�
g�+��H��E1��ɃH��H���3���D�D$>H���H��E��A������T$>��A��H9���H���O����C��L�d$8H���A�L���H��t�D$8�C����D$8�T$>H�E����H���L�L��+H�'�+E1��O������f.�H��H�xH�|$>A�H���3����C��	�T$>M��A�f�������H���L��+H���+E1��������H���L���+H���+E1����H��虱�����@H�|$0H���A�H�����H��u3�C���H�D$0H=�t�����f�D$>A�A��>���H���L�L�#�+H��+E1��<����m����H���L��+H���+E1������D���H���+H�
��+A�t�eS����H���L�L�G�+H���+�ӧ��H��諰�����fDH���x��y���H��������H���X��C�M��fA�$�QH�M�;��CA��A�����f��+��/���fD�;��|���fDH������H�D$(D�d$>H��[���DH�������H��������H���A�H���H��tH�E�C�tH�����T$>�U���H�QH��~H9�|	H;��~\H�E��t���L���f�����H��E1��f������H�L$8�G����H��xA�H�H�L$8�h����C����H��xA�H�H���H����C�E1��C���ff.�VSA������,fDA�A��A��D��Hc�A��H�4�D9t!C�DB�A�B9�u�A�����[^��1�E��t-H�D�D�D��E9�uH�D���f�H�H��D9uA��u�1�A�[^�fDD����ff.���L��D�D$(E��u!��vMH���+H�
�+A�
��P��vH�Խ+H�
��+A�<
�Pf�L��+Ic�I�A��L��+Ic�I�A��H�	L�$�+���H�	L�ݿ+��H�	L���+����H�	L�~�+�Ѥ���H�	L�L�+����H�	L�#�+鱤���H�	L��+顤���H�	L��+�q����H�	L�F�+�a����H�	L��+�Q����H�	L���+�A����H�	L���+�1����H�	L�^�+�!����H�	L�&�+������B��fA�u��L�����fD�BA���u��L�������BA���u��L�����WVSH��0M��H��H��L�����GtAH�ڸH�sH��0[^_�H9�w�H;��w�H��H�xI��L��艬��1���DE1�H��L�L$(H������H��L�L$(�H9�u�H���I��L����H9������@�~���f�H���+H�
�+A��L�L$(�rNL�L$(�A����VSH��HD�QH��L��A��u;�RA���T$<uWI��A�H�������uD�S1�A��uH��H[^�H�BI�1�A��t�H��D$(�n��D$(H��H[^�H�L$<�6��T$<�VSH��HD�QH��L��A��u;�RA���T$<uWI��A�H���V�����uD�S1�A��uH��H[^�H�BI�1�A��t�H��D$(����D$(H��H[^�H�L$<���T$<�VSH��HD�QH��L��A��u;�RA���T$<uWI��A�H��������uD�S1�A��uH��H[^�H�BI�1�A��t�H��D$(�N��D$(H��H[^�H�L$<���T$<�VSH��8�AH��L�Ʃu_�R���T$,uL�L$ A�H���<�����u6�C��tCH�L$ ����D$ ��t4�H*��D$$�H*�1��^��H��8[^�H�R��H�T$ u��D$ ��u�H�H��8[^��H�L$,�f��T$,�n���ffff.�VSH��8�AH��L�Ʃu^�R���T$,uL�L$ A�H���|�����u5�C��tBH�L$ �����D$ ��t3�*��D$$�H*�1��^��H��8[^�H�R��H�T$ u��D$ ��u�H�H��8[^�f�H�L$,���T$,�n���ffff.�AUATUWVSH��HH���JH��M��E��������L�Vt5M��t0A�����D��D�����H�I9�v3��H��H[^_]A\A]�@H��$�1�H���H��H[^_]A\A]�1�D��A����I9�w�D��A��E�$D��E��tnL�
/�+Lc�H����xH��H��t��E�ugA�����V���T$<��I��E��H�����������H��$�1�H��?���f�H�9�+H�
��+A��JA�$�p���A��v8H�V��H�T$0u?I��E��H�������t�H�ىD$(�=����D$(������f�H�VE��H���Q����x���H�L$0�"�H�T$0�H�L$<����T$<�<���H�������ff.�SH��@f�zH��L��v�f�H��@[�f.�D�BH�
�+Nc�L���L�D$0H���N�����u�H�T$0H�������@�Bf�1�H��@[Ð�H�Bf�1���t�H�ىD$(� ��D$(�w����H�HL�D$8�2����T$8������M���1�f�H��@[�f��R����/���f��1�f��!�����HL�D$>�����T$>�f��y����H�HL�D$8����T$8����������f.�L�D$0H������������H�T$0H����v
����f�����AUATUWVSH��Hf�zH��H��L����H�J�H�����H�D$0L�D$<A�H��H�D$ �[��������H�L$0H����Cf��t]���f����L$<譢��H��I�����C��f����H�L$0薤��L�e����H��H[^_]A\A]ËD$<�����9xl��L�DH��H�PL9����xxNH��H�PL9�u��yD�L$<L�l$0E��L����L��G��I�EH=���H�L$0����L�������H��H[^_]A\A]�fDH�E�H���f������H�M�2���H�J�+��Hc�H��D�T$<L�l$0E��L��t7L��G���I�EH=��o����H��I����D)�;D$<r�H�L$0�\������D�\$<L�l$0E��L��t�L��G��HA�E=������H��I����D)�9D$<w�묋D$<L�l$0��L��t�L��G���A�Ef=������H��I����D)�9D$<w��f����D$<L�l$0��L���W���L��G���A�Ef=�������H��I����D)�9D$<w������\$<L�l$0��L���
���L��G���A�E=��F����H��I����D)�9D$<w�������H��I����D)�;D$<�����f�L����������L���������L���������L������(���L�������8���L������R���H�L$0�褡������ffffff.�AWAVAUATUWVSH��Hf�zH��H��M����H�J�H��Z��H�D$0L�D$<A�H��H�D$ ���������H�l$0H�����Cf����f��	t[�L$<�����H��H����f�{��H�\$0H���۠��I�,$�
D���H��H[^_]A\A]A^A_��D�L$<1�E��t�G�uD�EE��x%H����;\$<r�H�l$0릐H���h����fDH�L$0��a����I�$�D�G�I�,$�w����T$<H�������f�����SH���+Hc�H��D$<H�\$0���(���I��E1�A������G���H�L9���A�H��I��A��D;l$<r�����D$<H�\$0������I��E1�A�������G��vH�L9��:A�H��I��A��D;l$<r�����D$<H�\$0�������I��E1���G���f�����H��A��A�I��D;l$<r��F����T$<H�\$0���:����1҄�x$@���D��B;D$<����H�����y�H�پ���H���۞�������L$<H�\$0�����1���D��BH��9D$<w������D$<H�\$0�������I��E1���A��H��A�I��D;l$<������G�t�H���B����H�\$0�f���fDH���(�����H���H���>���H���8���}���H�L$0������D���ffffff.�AVAUATUWVSH��@f�zH��H��M����H�J�H��Zt{H�D$0L�D$<A�H��H�D$ �
���������H�l$0H�����Cf����f��tQ�L$<��f���H��H����f�{��H�L$0�U���I�,$����H��@[^_]A\A]A^�f��D$<1ۅ�t�G�u f�}x)H����;\$<r�H�l$0�DH��������fDH�L$0�����I�$�D�G�I�,$�x����T$<H������g�����SH���+Hc�H��D�T$<H�\$0E��tBI��E1���G���H�H=����fA�H��I��A��D;l$<r�H�\$0H�����D�\$<H�\$0E��t�I��E1�G��dH�H=���5fA�H��I��A��D;l$<r��D�l$<H�\$0E��t�I��E1���G���=����fA�H��I��A��D;l$<r��]����L$<H�\$0���Q������1҄�x f�H9�f�DU�5���H�����y�@H�پ�c���H���[�������D�D$<H�L$0E�����1Ґ�f�DUH��A9�w�����D�t$<H�\$0E������I��E1�G�uj�=��w!fA�H��I��A��D;l$<r����DH�\$0�f���fDH��������H���������H������-���H������H�L$0�臚���8���f�VSH��HL��L�D$8H���j�����uYL�\$8�KrE�f��fD�t2fE;KuHI�S����L�J��D�H��fE9�u"L9�u�L�ىD$(�����D$(H��H[^�fD���f�AVAUATUWVSH��@f�zH��H��M����H�J�H��Z��H�D$0L�D$<A�H��H�D$ �������H�l$0H�����Cf���sf��t]�L$<���Q���H��H����f�{	���SH���+Hc�H��fD���H��@[^_]A\A]A^�f.��D$<1ۅ�t�G�u H�}x)H����;\$<r�H�l$0I�,$붐H��������fDH�L$0�����I�$늋D$<H�\$0��t=I��E1�f��G����f����H��H��A��I�I��D;l$<r�H�\$0H���c����w����D$<H�\$0��t�I��E1��"f��A��H��I�I��D;l$<s��G�t�H������׋L$<H�\$0��t�1���H�D�H��9�w�낋D$<H�\$0���q���I��E1�fD�G��������H�H��A��I�I��D;l$<r��/����L$<H�\$0���#������1҄�x f�H��H9�H�D�����H�����y�H�پ�U���H���M��������D$<H�\$0������I��E1���A��H��I�I��D;l$<������G�t�H��������G�I�,$�����T$<H����������H�\$0�t���fDH��������H���������H�L$0�褖���t���ffffff.�ATUWVSH��@D��L�D$8H��H��M���������uz��H9{tRL�
�+H��A�H���*gH��H����H�CH9���H�T$8L��H���L���H�L$8�����H�t$8I�4$�H��@[^_]A\���H�����H��L�
c�+tL�H H���L�׸+�D$ ���X�1�H��@[^_]A\�H�T$8A��H��I���Ǖ��H�CA��1�A)���H��I��蜕���[����H�L$8�f���1��]���ffffff.�AWAVAUATUWVSH��Hf�zH��H��L���|H�J�H��zthH�D$0L�D$<A�H��H�D$ �[�����ueH�L$0H��t[f�{td�L$<H���ǒ��H��I��tof�{wy�SH�e�+Hc�H��@���H��H[^_]A\A]A^A_��H�E��fD�G�u
H�M��@�T$<���H�L$0��H�L$0��Q����H�\$0H���B���L�e둋L$<H�\$0��t�1���*��A�H��9�w���D�\$<H�\$0E��t�M��E1���A��H���H*��AI��D;l$<s��G�t�H�������D�t$<H�\$0E���r���M��E1��'@�A��H���*��AI��D;l$<�>����G�t�H���_����D�D$<H�\$0E��� ���M��E1��#f��H*A���AH��I��D;l$<���G�t�H���A����D�L$<H�\$0E������M��E1��(@H�A��H���k�AI��D;l$<������G�t�H��������G���T$<H�\$0���w���1���fZ��A�H��9�w��Y����T$<H�\$0���H���M�t$E1��A�F�A��I��D;l$<�����G��zD�;�CH����t��A*��H*��^��AF��D�T$<H�\$0E�����M��E1��$@�*A���AH��I��D;l$<������G�t�H��������D�l$<H�\$0E�������M��E1��(D�A��H���*��AI��D;l$<�^����G�t�H������͋L$<H�\$0���B���1�f.���*��A�H��9�w������L$<H�\$0���
���M�t$E1��A�F�A��I��D;l$<����G�u$D�;�CH����t��I*��H*��^��AF���H�������G�D�;t�H�K������H�������G�D�;�t���H�K����f����T$<H�L$0������AWAVAUATUWVSH��Hf�zH��H��L���|H�J�H��zthH�D$0L�D$<A�H��H�D$ ������ueH�L$0H��t[f�{td�L$<H���'���H��I��tof�{wy�SH�
�+Hc�H��@���H��H[^_]A\A]A^A_��H�E��fD�G�u
H�M��@�T$<���H�L$0��H�L$0�豏���H�\$0H��袏��L�e둋L$<H�\$0��t�1���*��A�H��9�w��ˋD$<H�\$0��t�M��E1���A��H���H*��AI��D;l$<s��G�t�H���#���ыT$<H�\$0���v���M��E1��+��A��H���*��AI��D;l$<�>����G�t�H������͋D$<H�\$0���"���M��E1��%@�H*A���AH��I��D;l$<���G�t�H������ϋD$<H�\$0������M��E1��*fDH�A��H���f�AI��D;l$<������G�t�H���N����G���T$<H�\$0���w���1���Z��A�H��9�w��Z���D�|$<H�\$0E���G���M�t$E1��I�F�A��I��D;l$<�����G��yD�;�CH����t��A*��H*��^��AF�뿋D$<H�\$0�����M��E1��%D�*A���AH��I��D;l$<������G�t�H���B���ЋD$<H�\$0�������M��E1��*��A��H���*��AI��D;l$<�^����G�t�H�������͋L$<H�\$0���B���1�f.���*��A�H��9�w������D$<H�\$0���
���M�t$E1��I�F�A��I��D;l$<����G�u$D�;�CH����t��I*��H*��^��AF���H���M���G�D�;t�H�K�;����H���1���G�D�;�u���H�K����g����T$<H�L$0�������AVAUATUWVSH��@f�zH��H��L����H�J�H�� t|H�D$0L�D$<A�H��H�D$ ��������H�L$0H��t~�Cf��t_f��tY�L$<���}���H��I�����CH�\$0f��tRf��
tLH���d���L�u����H��@[^_]A\A]A^���G�H�Mt݋T$<�����H�E�Ȑ�L$<��t�M��E1���A��H��I�EI��D;d$<s�G�t�H���������H�\$0�j���H�L$0��NJ���i���f�AWAVAUATUWVSH��H��D��H���D�H��H���L�L$l����D$l�����H���H��H�����C��3tO��
tk��2v5H���+H�
Ϝ+A����,�H�Ĉ[^_]A\A]A^A_�H�٢+Hc�H��H���+H�
z�+A�v�,�C��
u�H���+H�
��+A�w�f,�C�t���D�H���L��+H��+�Ѐ��1��r���f�H�I�+H�
��+A�u�,����f��{��L�D$HH��H�����������OL�D$H���1�A�8L��u�H���:t��9�r�9��S�����fDf�{tH���+H�
��+A���+�{��H���SfDL�K H���L��+�l$ �U��1��w���f�{tH�P�+H�
4�+A���+�{��H��u�f��]�WH��+Hc�H��f�f�{tH��+H�
֟+A���*�{��H���F���f����WH�ԡ+Hc�H���f�{tH���+H�
v�+A���`*�{��H�����L�D$~H��H��������������D�D$~H���;�����1����C����C���f.�f�{�tH��+H�
��+A����)�{tH��+H�
��+A���)H�����N���L�D$HH��H���������4���@�D�GL�L$HH��蛬��H�L$H��H��t�چ��1�����������f�{�S�{�1�CH�WH��H9���L�K H�����T$(L���+H���+�D$ �z~��1��<���f�{���{��H�CH9G����L�D$HH��H���<������b����L�D$HH���ҫ��H�L$H��H���3����3���f�{���{��H�CH9G�����L�D$HH��H���I�����������f�{��{��H�CH9G�m���L�D$HH��H���I����������X���f.�f�{�tH�"�+H�
�+A�r��'�{tH��+H�
ȝ+A�s��'f��&H�O�H��Z�H�D$HL�D$xH��A�H��H�D$ �^�������$���L�d$HM�����Gf����f�����L$x�賂��H��I���1�G��f���c��H���+Hc�H��f�{�tH�2�+H�
�+A���'�{tH��+H�
؜+A����&L�D$HH��H���������g�����L�L$HD�G�,���f�{tH���+H�
��+A���&�{��H������f����WH�/�+Hc�H��fDf�{tH�b�+H�
F�+A���0&�{�kH�������f�wo�WH��+Hc�H��f�{tH�
�+H�
�+A����%�{��H���a����Gf��
���gf������6���fDf�{�tH���+H�
C�+A�~�p%�{tH���+H�
H�+A��Q%H��������L�D$HH��H���N�������������f�{�tH�1�+H�
Қ+A���$�{t�H��+H�
ך+A����$�f�{�tH��+H�
��+A���$�{tH�ё+H�
��+A���$H�����,���L�D$HH��H�����������������f�{�tH��+H�
 �+A���M$�{tH�`�+H�
%�+A���.$H���������L�D$HH��H����������������l���f�{�tH��+H�
�+A�.��#�{tH��+H�
��+A�/�#L�D$HH��H�����������C�������f�{�tH���+H�
��+A�?�~#�{t�H���+H�
V�+A�@�_#�f�{�tH�o�+H�
P�+A�P�=#�{tH�P�+H�
�+A�Q�#f��s���H�O�H����[���H�D$HL�D$xH��A�H��H�D$ ��������q���L�d$HM�����Gf��tDf���Bf���8�L$x�}��H��I���z�G��f���9H�L$H�����D�GM��H��胥����L���������@f�{�tH�b�+H�
C�+A�a�0"�{tH�C�+H�
�+A�b�"L�D$HH��H���q�����������2���f�f�{�tH��+H�
��+A���!�{tH��+H�
��+A��!H�����>���L�D$HH��H���N������$������f�{�tH���+H�
2�+A��_!�{tH�r�+H�
7�+A��@!H��������L�D$HH��H���}����������~���f�{�tH� �+H�
��+A���� �{tH��+H�
Ɩ+A���� H�����\���L�D$HH��H����������B����
���f�{�tH���+H�
��+A���} �{tH���+H�
U�+A���^ f������H�O�H��Z�����H�D$HL�D$xH��A�H��H�D$ �����������L�d$HM���5�Gf���If���6�L$x���?{��H��I�����G��f������H��+Hc�H��f�{�tH���+H�
��+A����{tH���+H�
g�+A���pL�D$HH��H���������������f�{�tH�b�+H�
C�+A���0�{tH�C�+H�
�+A���L�D$HH��H������������2���f�f�{�tH��+H�
�+A�����{tH��+H�
��+A���L�D$HH��H��������7�����f�f�{�tH���+H�
��+A���p�{tH���+H�
H�+A���Qf������H�O�H��Z�����H�D$HL�D$xH��A�H��H�D$ �����������L�d$HM���(�Gf����f��	�D�L$x���2y��H��I�����G��f������H�/�+Hc�H��f�f�{�tH���+H�
��+A����{tH���+H�
X�+A���aL�D$HH��H���������������f�f�{tH�R�+H�
N�+A�� �{�kH�GH����
L�K H���L�6�+H���+�D$ �Vr��1���L�D$`H��H����������e�H�D$`������H9��P�A���D$p��~��G�F�f�D$~t
H�L$~�ش��D�D$~D�D$p��D�GD�D$p��L�D$`H��H������������L�D$`M����L�D$Pf��H���U�����1����]��]�L�D$PH��H������������L�D$P��L�D$`H��H����������$�����L�D$xH�NH���s��D�D$xE���uD�D$p�����NL�D$~H�����D�D$~fE���KE��D�D$p���D�GE���/E��D�D$p����L�D$pH�NH������D�D$p���L�D$xH�NH������D�D$xL�D$P����G�F�f�D$~t
H�L$~�m���D�D$~L�D$P����D�GL�D$P����NL�D$~H���N��D�D$~fE����M��L�D$P���D�GE���rM��L�D$P�t���L�D$xH�NH���C��D�D$xE���EMc�L�D$P�H���L�D$`H��H������������H*D$`�D$t�D$t�Z��D$0L�D$0f(�H���^�����1����f��f�L�D$`H��H���M����������H*D$`�D$XL�D$X�L�D$0�T$0�H�NL�D$xH������*D$x�D$t�n����NL�D$~H������D$~�*��D$t�J����G�*��D$t�7���L�D$XH��H�������������D$XfZ��D$t����H�NL�D$xH�������D$x�H*��D$t����G�F�f�D$~t
H�L$~�{����D$~�*��D$t����G�*��D$t���L�D$`H��H������������H�L$`�PN�D$t�t���L�D$XH��H����������=����V��F��G�D$t�D���H�L$t����5���L�D$XH��H��������������L�D$`H��H������������H�L$`�N�D$X�B���L�D$XH��H������…��(�������F��G�D$tt
H�L$t�r����ZD$t�D$X���L�D$XH��H��������H�NL�D$xH���|���*D$x�D$X�����NL�D$~H������D$~�*��D$X����G�*��D$X���L�D$XH��H���������G���H�NL�D$xH�������D$x�H*��D$X�R����G�F�f�D$~t
H�L$~華���D$~�*��D$X�%����G�*��D$X�����|$xL�l$HL��t;M��E1��F��N
I�EH=�����A�I��I��A��D;t$xr�H�T$HH���6t���L�L$xH�T$H��t�1�D�fE�DH��9�w��Ѓ|$xL�l$HL��t�L��E1�A���F��
I�UA�����J�:L9���	H�L$H��s��L���s�������|$xH�\$HH���e���M��1�����H��A�EI��;l$x�=����F�t�H���R����ԃ|$xH�T$H�"���1��A���HH��;L$xr������|$xH�\$HH����M��1��Hc��H��I�EI��;l$x�����F�t�H�����ԃ|$xH�\$HH�������M��1��H���H��I�EI��;l$x������F�t�H��虭���ӋL$xH�T$H���h���1�L�M��H��9�w��P����|$xH�\$HH���=���M��1�����H��I�EI��;l$x�����F�t�H���;����Ճ|$xH�\$HH�������M��1�����H��I�EI��;l$x�����F�t�H������ԋL$xH�T$H�������1�D�M��H��9�w�����L$xH�T$H�������1�fD�fE�DH��9�w��q����|$xL�l$HL���^���M��E1��F���
A�E=������fA�I��I��A��D;t$xr������|$xH�\$HH������M��1�����H��A�EI��;l$x����F�t�H������ԃ|$xL�l$HL������M��E1��F���	I�EH���H��������fA�I��I��A��D;t$xr�����|$xL�l$HL���s���M��E1��F���	I�EH=������fA�I��I��A��D;t$xr��2����|$xH�T$H�'���1��A���HH��;L$xr������|$xL�l$HL�������M��E1��F��	A�E��������>���fA�I��I��A��D;t$xr����@L�D$HH��H�������������L�D$HH��H������������H�D$H�H��D�HD��N���H�L$H���o��1����L��L�f��h��WH�Ŋ+Hc�H��L�D$`H��H����������z�L�D$`�I����f��E����L�D$`H��H���J������t��?�L�D$xH�NH���.��D�D$x�A�����믋NL�D$~H������D�D$~�fA�������D�GE���x������L�D$xH�NH�����D�D$x�A�������F����G�F�f�D$~t�H�L$~�C����D�G�!���H�~+H�
�+A������H��}+H�
�+A����5�H��}+H�
҄+A�
��w�H��}+H�
��+A���t�[�H��}+H�
��+A���V�K�H�j}+H�
x�+A�=�8�H�H�L}+H�
Z�+A���D�H�.}+H�
<�+A�#���H�}+H�
�+A�S���Q�H��|+H�
�+A����6�H��|+H�
�+A����w�H��|+H�
ă+A����)�H��|+H�
��+A�i�f��H���L�K L���+H��+�d��L�D$H��H�R|+H�
��+A�h� ���H�4|+H�
��+A�<���H�|+H�
b�+A�"����H��{+H�
D�+A�R���/�H���L�K L���+H�H�+�d��H�G�HH��H9��2H�L$H1�H������D$8��k���D$8���D$x�����A�<$�������I�LL��H�PH9�����x����H��H�PH9�u���D�T$xE�����E1�F���E�$E��x<I��A��D;l$xr�L�d$H�H��D�GM�����M����a��e�fDH�L$H�&k����L�D�D$xE���)�E1�F���I�<$x�I��A��D;l$xr��D�\$xE�����E1�F�ujfA�<$x�I��A��D;l$xr��Y���f��t
f�����L�D$`H��H���ƾ���������L�D$`���L���j�������L���}����g���L���@����L�D$xH�NH���]���D�D$xL�D$`���D�GE1�H���܏�����K��F��6��T$xL������%��F����T$xL��褥���
��F����T$xL���)�������I��H��A��D;t$x�����s�����H�L�+Hc�H��|$xL�l$HL���R���M��F��HI�EH���H��������A�I��I��D��D)�9D$xw������|$xL�l$HL�����M��F���I�EH���O���A�I��I��D��D)�;D$xr����|$xL�l$HL�����M��F���A�E���������A�I��I��D��D)�9D$xw��p�|$xL�l$HL���b�M��F��.A�E�����A�I��I��D��D)�;D$xr��'�|$xL�l$HL����M��F���A�E���f����b�A�I��I��D��D)�9D$xw����|$xL�l$HL�����M��F��4A�Ef����A�I��I��D��D)�9D$xw����e��H��H��f������D�GH�T$HH����g���G�H�L$HH��t�g��H�\$HI���h��H�L$H�|g������L���z����6���L���M�������L���@����f���L���#�����L���C������L���3����#���L���#�����L��������L������_���L�����:���L��H�D$8�ޡ��H�D$8���L��蜡������AWAVAUATUWVSH��hH�q H���D$X����H��H�q���Q2f�����f��H�A(�ZH���pH;0��D�B�H��E��N���fDH��H;1�sL9�u�D�BfD�C2fD9C0sEH�a�+A�E��H��H�T$ H���]6H���4D�C2fE���UC�f�K0H�C(A��H��H�t���f��`H�s L�K L�D$HH��H���w���f�������U�L�D$H��H�<RM�HA�L��H��M�9�"�H�у�L)�A�L	�f9�����H��L9�uݍE�f������c���H��豋��H���ɍ���H��A��Ɗ��H�T$H�
H�:H��f��u�MH��f�>�AH9�u�f��H�:H��u�@H��f�>�rH9�u�A��H���Y�������H�t$HL�l$XA�L�d>�f.�H��L9���D�fE��t�H���H���M��E���O����|$X����f��t��L$XH���H���Jf��t:f=Cwqf=Bsf=t{f��f-f��w�E1�H��H���2�����f��`���H���L��+H��+��Z��fD1�H��h[^_]A\A]A^A_�f=Rt��If=E������D��f����%�	T�8�����I�HH�RM�D�0H��D�
fD9I��H��L9�u��I�����fA��U�fA�����H�FH���i�SrH9��`
A��H���$���H��L�
�x+tL�H H���L�v�+�D$ D���v���fDH�L$H1�H�������D$0�b���D$0��H��E1�H��H��������t�H�T$Hf��
����H���L��~+H��+�fZ��L�D$H����f����H��H�FH���1�Kr�H9���H���L�
�~+L���+�D$ 譳���8����H���L�J~+H�{�+I���Y��1�����f�{h���C8����H�����C������CH�c�����CT�Ct�CX�CP�C\����CH�^}+H���L�
V}+L�M+H���+LE��}X�����ff�������E���L�D$^H��H������…������D�D$^�H���Ȇ�����@���f��e���H���L�
�~+L��~+H���+�X������f�������H�T$HD�H�:H��fA��u�DH��f�8�H9�u������f�C0�����D�H���L�K}+H���+D�L$ �bX���D�FH�����A�H��H���!�����utD�H���L�3}+H���+D�L$ �X��f����L�D$^H��H��� �����������H�F���f=�K���f=����f=�N�������D�H���M��H���诰���|$X��`���H�Mo+H�
�|+A��
��B���f���������C8���f�{ht{�CL�
G{+H�4{+LE�H���L��|+H��+�MV���X�����;�K������z���H��f�A2A���������DD�BfD�A2�����CL�
�z+u���L�
�z+�~���
�C8H�t$HL���E1�L�l$^L�L$8H�|>�NfA���H�fA�����fA���C���fE��tA�H��H�����H��H9��ED�fA��-tCv�fA��S����D���fA��D��fA��E�~fA��@u�f.�E��H�D$P�f�Kdf�����H�V��fA��-���@A�A��H9���A��H��D�T$0��H��L�
!s+D�T$0tL�H H�L$8L��+�D$ D����������fA��������fA���������L���D���H��H������������S����CrH�D$PH9F��A�A�����f.�H�~�����M��H��H��������s����D$^��f���a���H��+��D��E���J�����H���I����8���L����F���A��H��蜟��H��L�
�q+tL�H H���L�^z+H��~+�RT����A��H���a���H���SdL�
�q+tL�H H����T$ L�Kz+H��~+�T�����f�{h��Cjf�����Chf�����C;���l���f����f�����Cr9����H���L�
b{+L�Fy+H�_~+�R�����D�Cr��1�A������L�D$PH��H�������A���D�s�H��L�D$PD��
@�C���H�L$PA��D�s�#[��E��������E�����H9��A���E1�L�D$PH��H�������A���YL�D$PC�?�D��I�HM�@H�L$ H���x���H�L$P�Z���]���M��H��H���˳����A���VE��������D�D$^H���5����������f�>�DD����������f���u_���vVf�{huOH���H�H�@H9�t<H��t7H��t2H���L��z+H��|+�R��H�T$HA��H����C���$���H�L$HH��t��Y��H�D$H�C:u�Kdf����f�Cz�������vE��ǃ�H���H��1���H��H9�tL�DL9v�ǃ�H����f���u
����z�c���ǃ\����H��ǃd����ǃ�����ǃ�����Hǃ������?H��H��8���CH������9H��H����H������H���L�z+H�Q{+��O��1���M��H��H���'���A������H��H�x�����fA��H�:u�:H��f�:�+H9�u�������>H�¸H�����H���L��y+H��z+�PO��1��k�C;�.���f�{d�H���L�
�w+L��u+H��z+�O�������C8���_f�{j���@���Cj����f���vf����f�������A��H���?}����������f�H���L��x+H��y+�N��1���H���H�:��H���H�2H��tAf���}�{����f�{h����H���H��H�0��9�SLH��H9������H���L�(w+��������f�Cz����f�{h�{����S��%�=��f���H���f1�H�����f�{jH����L�!L�0����H���5H= H��wH������� 1�H������H��9{t�����I�D4�1�H�������H�H�H9����A��L�
w+A�L��H��A����&L�

w+L��A�H��H����&H��I��t1�H���!H��tH����U��M���~���L����U���q���H���L��t+H�;x+�M��A��H���C{�������C8���H���L��s+H��w+�iM��A��H���{�����~�C8�o���H�z�j�H���L�}r+H��w+fǃ��M���B�1�f�{r����f�Cj�	�������B���H���L��t+������@�I�������=���L9�IG�H�t�M�t�H��I�I)�A9�w�A���H��D���D����7z��H����{T��H����oT��H���L���ǃ�����D��F���H�F��H���L�Rs+H��v+�&L��A��H����y�����;��Cj�L���H���L��r+H�}v+f�Cj��K�����H���L�?s+H�Xv+��K��A�����H������H���H+H9�������^���D�����f.�AWAVAUATUWVSH��hH��L��H���r���L�D$PE1�H��H������f������H����y��H�N8A�1����ES��H�\$PH�,H��D�L�KH��M�)D���@H�ƒ�H)�A�T�f9�����H��L9�u�H�H�|$XL���L�l$@��f�H9���H��D�H���H���I��E��萣���|$X��9�f��t‹D$XL���D�ډ�M��fA�xt�A�H����@=���D$X��A�@f���t'f���t!f���D����E��L;s����f���K���f������A�H��H���)��H9��.���H�L$P�H��t��Q����H��h[^_]A\A]A^A_�f�I��A�H���Q���D�KD9��C�������H;��t	I��D9t��D$X��I�@ H���L�s+H��t+H�D$ �QI�����D�H���L�n+H��t+D�L$ �)I���D�CH��評��A�H��H�������u4D�H���L��m+H�[t+D�L$ ��H��f������D�H���I��H���趡���|$X��&���H�T`+H�
�m+A�j�"�����H���L�r+H��s+I��1��G�����f�H�{H�D$@�t[L�
�r+L��s+�D$ L���͡���m����H���L��l+H��r+�H��H�\$PD������f�{�u��F��H�SH�T$@���(�D$@fW���t����as+t�H*��D$D�H*��^���D$8L�D$8f(�H���3u��������H��蓒��H��H�SL�
�d+tL�H H�T$ H���L�4q+H�D�|$(�?G��f��z���DD�~r����fD��H���5���H��H�SL�
�d+tL�H H�T$ H���L�q+H�D�|$(��F��L�s������S���T$\u<M��A�H���	��������d����F������L���C�������H�L$\�t����T$\�D�K����@VSH��(H��H������H��I��H��H��([^����ff.��Ð���������ATUWVSH��@H�ˉ�L��L�����������C����tkH�����H��H���H���1�H9�H�0H9�|
H9�|H9�~H��H)�H9���H��H�xI��H����M��H��H��@[^_]A\�f�H���A��E1�H���J���H���J;���H���I��H���H9�t�H�D$(���L�gq+D��\H���H��$�H�t$0H������D$ �,D���g����H��p+H�
�p+A���w��C����1���������H�T$0L�.q+D��\H���H��$�H�t$8H������|$(�D$ �C�����f.�H���������@���D��\L�\p+H���H��$�H������|$(�D$ �YC�����@ATUWVSH��@H�ˉ�L��L���������n�C�����tkH�����H��H����H���1�H9�H�0H9�|
H9�|H9�~H��H)�H9���H��H�xI��H����K��H��H��@[^_]A\�f�H���A��E1�H���J���H���J;���H���I��H���H9�t�D��\H���L�p+H��$�H�t$(H�����H�D$ �6B���q����H��n+H�
�n+A�����C���1��*����H�T$(D��\L��o+H���H��$�H�t$0�|$ H�������A������@H�������@D��\H���L�;o+H��$��|$ H������A�����fffff.�H��(�yI��tC1�A�A���9�t%��H��o+I���L��o+I�LE��-A��1�H��(�fDH���I�L��o+�
A��1���fDVSH��(H�ˉ������t|H���trD�CA�� �����1҉�d��D��%����StA���C��\tDHǃhHǃp��1�L�����H����H��([^I��f�1�H��([^��H��H��H��hH���H��H��p�H������t��K D�C�N���f�UWVSH��H��1�H��L��L�������H�������tD���9�vO�CuyH�����L��M����I9�"H��q+I���H��H�D$ �e���H��H[^_]�H���LE���f�H����T$ L�Vn+H�wq+A��H�D$8�z?��H�D$8�H���L�Rn+H�Kq+H�D$8�Q?��H�D$8�H���L�tn+H�%q+�t$ H�D$8�'?��H�D$8�h���ffff.�UWVSH��H�ֺH��L��L�������H�������t;���9�vL�CuvH�����L��L9�r$H��p+I���H��H�D$ �[���H��H[^_]�f�H���LE���fDH����T$ L��m+H��p+A��H�D$8�j>��H�D$8�H���L�Bm+H�{p+H�D$8�A>��H�D$8�f.�WVSH�� �AH��H��L�ǩuYH��H����SH��t��u[HǃHHǃPH��tO�c����H��P�H��HH�� [^_�H�Vj+H�
gj+A�����C��zF����H���H�����H��H��PtK�AD���KH��H��HuTH���D��\L��l+H��o+�==��HǃP1��f���H���L��l+H�vo+�=��1��E�����;���UWVSH��8H�ˉ�������6H���H���&�C�����H�<�H�,�H�������Sn��������t*H��HH��t�cE���CHǃHHǃPH�����CH9��tH��H)�H9U�`H��PH��x
�HUHǃXH��`�CH��HH�������tQH���tG�C ���KTD�KH������A9��H���L��k+H�n+�;��f�1�H��8[^_]�DH;�P~'��ǃ������d1�I��H���G�����tËC��t1�ǃ�����I��H���"�����t�H��m+L��HI����H��H�D$ ����H9��u����Sn�CHǃXH��`������������H��HH���<��������ǃ������!����A�D	�1��A�����1҉�D�CXA��CLA�Љ�\D���9�����A�D�1�A��A�������1҉�A��C�щ������St}HǃhHǃp��1�L������H����H��8[^_]I��DH���L�j+H�Kl+A���:���N���H�������=����K ���@H��H��H��hH���H��H��p�r���f�H���L�ri+H��k+�t$ I���9������f.�AVAUATUWVSH��0L���H������ֺH��M��L��������to���9���H���uwH���M��t
L9�M��LN��H��H�����������t31҉�M���H��L��D������tL��M��L��H����H��H��0[^_]A\A]A^�f.�f�{hu�I9���C�y���H��j+M��M���H��H�D$ �;�L9�H��uY�Sn�C��u��uH��L���~��I��L��H�����x���@H���L��g+H�Kj+�D$ A���/8���N���H������B���fffff.�AUATUWVSH��8��$�D��$�I�պH��D��D���n�����tZE��A��A��D�d$ ��H���Q��t=A��A����H��D�d$ �I�����M���H��H��8[^_]A\A]�����H�����H��8[^_]A\A]�fff.�ATUWVSH��0H�ˉ������H���H����C�����H�<�L�$�H���������Sn��������t*H��HH��t�?���CHǃHHǃPH�����CH9��RL��H��H)�I9$�;H��PH��x
�I$HǃXH��`�CH��H��H��H��0[^_]A\�T���@H���L�zf+H�<h+�t$ I���/6��1�H��0[^_]A\�f�H;�P~'��ǃd������1�I��H��������tċC��t1�ǃd����I��H�������t�H��g+L��HI����H��H�D$ �^�H9��v����Sn�CHǃXH��`������������H��HH���{������H���H�|$(L��e+H���A��H+�H�T$ H�4g+�.5��ǃd������H���L��e+H�g+A���5������ffff.�AUATUWVSH��8H�������1�H��M��M���[�������9��5D�[LD�StH��E9�EF�1�C�D�A��1҉ʼn���A��A)�D��E9�AF���#H��H����I�����tf�{huL9�
�Cta�I9�|N��H���������1҉�I��H��L��D������~I��L��H����H��H��8[^_]A\A]Ä�IE��DH��e+��I��M��H��H�D$ ��H9�H��u/�Sn�C��u��uH��L���z��I��L��H��H������H�����H��H��8[^_]A\A]�fDH���L�:b+H�;e+�D$ A���_3���M���f.�AVAUATUWVSH��@I��1�H��D��D�������������CL9��7f�������1�st��9�dt��H�������tM��\9�ra9�t��H��)����t.��\��D��L��8L��H��������\����������H��@[^_]A\A]A^�H��X�!H���	���t�H���t�H��Py%�Cǃd������E1�1�H�����t�H���Lc�Hǃ`HǃXE1�H���N�,�L���I9��lH���L��PJ��H+�XH+�`I9�LG�C���H��HH���M���I9��m�SnH��`H�X�CH��HL��`��H��hu��u���}L���w��D��H���F���������\�S����Crf9�sw��1���st����<�����D$8L��8L��H�����D$8���N�����Q����H���H�L��a+�D$ A����0��������)���f�H���H���L��a+�D$ D���0�����f.�D��\H���L�^+H�b+�|$ �[0�����fDH���L�Za+H��a+A���30�����D��\H���L��]+H��a+L�l$(H�D$ �0���a���H��\+H�
8a+A���U��%���H�
!a+H�r\+A���7�H��H�^���ff.��ffffff.�VSH��(A��H��L��tH�'\+H�
�`+A�L���H��H��H��?H�H�H��([^�s��f�VSH��(L��I�VUUUUUUUH��H��I��H��H��?H)�H�RH9�tH��[+H�
�`+A�T�x�H��I�VUUUUUUUH��?I��H��H)�H��([^�Cs��VSH��(A��H��L��tH�g[+H�
H`+A�\�%�H�CH��H��H��HH�H��H��([^�%s��DVSH��(A��H��L��tH�[+H�
`+A�d���H�CH��H��H��HH�H��H��([^�t���������f.���f.���f.��ffffff.�H��(L�u`+H��H���H���-��1�H��(�fff.�H�����L�BH������a����ǁ�H���L���H�u���L��H���H���H���H��L���L��H���H���H�oL���L�AH���H���H����H�%���L��L�Wǁ�H��H��H��H��L�� H��(�f�H�9�/H��t&H�Bf9Hu�n�H�Bf9HtZH�H��u�1�H�=t')tFH�k')L�|')H��H��f;
_')u�'H��L�]')L�fC;L�t
L�K�<u�1������VSH��(H���ʉ��]���H������c����H��ǃ�ǃ�H���H���H���H����H���H�nH���H�PH���H�2H���H�����H���H�����H���H�����H���H��H���H��H���H�~H��H�`���H��H�b���H��H�D���H��H��H�� H�8H��(tH�@��H��H��([^H��H��([^ÐWVSH��0�qhH��H�׉�����H��H���H�|$ t'L�H�L��]+��*�������H��0[^_��H�L��]+A���*�������H��0[^_ÐH��]+��H��]+�t���@H��]+�d���@WVSH��0�qhH��H�׉��x���H��H���H�|$ t'L�H�L�j]+�5*�������H��0[^_��H�L�n]+A���*�������H��0[^_ÐH�]+��H�]+�t���@H��\+�d���@UWVSH��(��H��H��L����H�H)�0��H��H��tGH�@H�K(H��H�CH�K�?�H�CH��/f�hH�xH�H�ҏ/H��([^_]�f�L��\+H�
]+I��1��H)��1���@H���/H��tH9Hu�)H9Ht*H��H�H��u�L�	L��\+H�]+1��)��H�\�/H�H�
H����1��fffff.�AUATUWVSH��(H�-�/H���L1�E1�A��+�H�8H��A�A���1��H�H��t4H��I��H�oL��H���m1��H��H��u�L���M1��1�H��([^_]A\A]�Ic�H�[H��H�=#)H�=#)t}H���H��H�#)H��H)�H�|�tT�K����t�Ic�H��H�TmH����0��H��I��tlH�Dm�A�H��A��L��I�L���0���f.�Ic�H�[H��H���0��H��H��t&H�D[�A�1�H���0��H��H��([^_]A\A]�H���g0��1�H��([^_]A\A]ú�1�A������SH�� E��A��L��D��E��t&1�D��A��D9�tH���L�N[+H���&'��E1�D��H�� [�f.�SH�� M��I��L��L��M��t&1�L��I��L9�tH���L��Z+H����&��E1�L��H�� [�f.�WVSH��0M��H��L��H��L��t8M��t3M��L��L��H��?I��H9�uL���u/��H��tH��0[^_��H���L�L$pL��Z+H��\$(�t$ �M&��1�H��0[^_�H��8L�L$ M��I��1��j���H��8�DAVAUATUWVSH��`)t$ )|$0D)D$@D)L$P��H��L��H�i8�T�����ud��>��������@������M����������
�P@1�(t$ ��(|$0D(D$@D(L$PH��`[^_]A\A]A^�����$wW��P�����S�:�����Ru����H�f�H���H�GH���m�������o������A�)����;����V\H����+���f���������-�F��=�&��(������H�f������H�L���/���/�>���/<��>L����f.����H�f����H�Gf�����NtH���u������4���X���H��H���vH�H���:���������������NzH�f�����f���L����N���H�f�����������������NdH�f�����VnH�f�����H�A��f��NdH�GA��D����f��~���H�H�
�)H��l����NfH�f��]����NrH�f��N����NpH�f��?����N`H���2������H�f�� ����NfH���f������NPH������H�f���f�1�f���H���f������H��0H��	f����H��H�����VrD���H�H��кD)ȃ������H�GH��H�H�GH��H��h���fD���H�f��P����NxH�f��A����NlH�f��2���H���f�8�����=����NdHdžHdžHdžf��=v~H�H���L��U+�Y!��1�������(��1�H��H�������f�~j�N�Nd���@�@����*��@�@�@�)���A�I��O�,6L���'��H��H���]���I��f�~j�I*���D
VU+�D]U+�=]U+�\5EU+�H*�L�$fA(�L��H���^��3��AY��X����,�L9�fA�$u��VrD�����D)ȃ�~XL���	'��H��H��t~H��H��M���+)��L����&��H��H��tXH��M��H���)���VrD���H�������@C�@C�@C�@C�@C���H��H��t�~(��H��H��t�m(��H��H��t�\(��HdžHdžHdž���fDH��8L�D$PL�D$PL�L$XL�D$(����H��8�fffff.�H��H��H�� ��x�H*�H����H�$�,$��S+�\$�D$H���@H��H��H�� ��x�H*�H����H�$�,$�{S+�\$�D$H��Ð���SH�� �AH�˨@t"��t���A�����tH��H�� [�#�H�� [�@1�H�� [��SH��@�Q�H�˅�uH��@[�fD�����1���t�C% = t$�C �t�H���[�������@�{u�H��H�D$0H�D$8�`����L�D$0���DH����L����t�L�D$8�EH����L����t�H�D$0D���A��DH��H�D$ �x_���\���H�D$8D���A��EH��H�D$ �L_���0����c��������H���SL��������L�D$8�H���9L�������H�D$0D���A��H��H�D$ ��^�������H�D$8D���A��H��H�D$ �^��������`�������AUATUWVS�qP�YT�A��D�l$XD�YXD�Q\��DD̓����A�����A����DD�E��tt��tpE��tk�AH��1��9�s
�D�1��ŋALD��1���9�sA�D�1�A���D��1���9�r[f���taD��1�A��1���D��A��D�D��1��D��D�[^_]A\A]�D�YL�e�����YH�L����A�D2�1�A���@E��1�D��D��A��1�E�LD��A��D��E��f�H��8�AHD�T$`9�v/�ALD9����APD9�vKf����tlH��8��L�����A�щD$ H�L��O+L���
��1�H��8�fDL�����L��O+�D$ H�L������1�H��8�f��QrfD9�w���H���L��O+��E�ʉT$ H�H�����1��\����L�����E���D$ H�L�eO+L���m��1�H��8�fDVSH��(D�ITH�ˋIXD�S\A����������A�����1���tE��uf�����H��([^�E��t�CPD��1���9�sA�D�1�A��ƋCL��E1���9�s�D�1��A���CHD��1��9�sA�D�1�A��L�
O+��H���L�L�
�N+A���H���8�f����t���D�CrL�
�N+��H��H��([^��D�SP�6���D�KL�����D�KH�����VSH��(�AXH�˅���D�ATE��tc�QdL�
�N+��f�����H��H�������H�H��uH���L��N+H��N+����H��H��([^�f.�H���L�2N+H��N+1����H��H��([^�f.�H���L��M+H��N+1��t��H��H��([^�f.�D�CrfE��t%L�
�M+E��H��H���/��5���f.�H���L��M+H�+N+1�����;���ffffff.����ff.�WVSH��@D�AX1�H�ˉ�E��t4�IT��t-�S\��t&f���t$H���y���L�
�M+I����H����H��@[^_�f�{ju�f�{ru�C@u�L�D$0�H��M�H�#���D�L$0A�A�f����L$2�A�f����A�ȋCTE1�E��E��D���A��9�s
B�D�1�A��A����1����9�s
�D1�1���L�
4M+D��E��H�����D�CdL�
M+H��H��H������L�
M+D�CdH��H��t\��H��H�PL�
�L+A��H�������f���J����D$2H���L�dL+H��L+E�ɉD$ �p��1������T�H��H���fA�����fffff.��K���ff.��QX�8������fffff.�H��(H��fDD�E��~XE�E��~@��t	1Ƀ��v#�
A��t1҃��w�P���A�����H������A����렐�������H��8��1�qtf���tH��8�fD�QrfD9�vE��D���D�H��8�f�H�����E�ȉT$ L�wK+H�`L+�+��1���D�At�A���t�QLE��0�A��D9�rf���t��DA�D�1�A��f���u�D�ArL�
2K+���i�f�H��8H���A��J��H��u(H���L�K+�T$ H�L+E1����H�����H��8�fff.�H��(���H��(�f�H�� H��fDVSH��8f���H��tM�QHD�AdL�
�K+��H�pH��H��uH���L��J+H��K+���H��H��8[^��f�yjD�ArufA��t=�SHL�
cK+E��H����D�CdL�
KK+H��H����H�pH���fD�A@u�L�D$ �M�H�7��D$ �P�f�����T$"�J�f��wh��D�KH�ȉ��D�B1�A9�sA�D	�1���L�
�J+E��H��� �D�CdL�
�J+H��H���	��L$"H��1�H��H��H������f��t�H���L��I+H�tJ+1���������f���Y�����fff.�H��(��~��H��(Ð�[���H��H��� t�1Ҹ H��H��E����WVSH��@���H�ˉ�taf���t%H���
���L�
�I+I����H���9�H��@[^_Ðf�{ju�C@u�f�{rt,H���L��H+H�gI+���1��ŋqL�f�L�D$0�H��M�H��D�L$0D�T$2A�A�f���A�B�f����E�ЋCH1�E��E��D���A��9�sB�D�1�A��E��1�D���9�sA�D2�1�A���L�
�H+H��E��H���X�D�CdL�
�H+H��H��H���>��L�
�H+D�CdH��H��t]�#�H��H�PL�
tH+I��H���	�����fA���G���H���E��L��G+H�@H+D�T$ E������1�������H��H���fA����뷋At�QL9�G��0�����fffff.�����ff.��;���ff.�SH�� �QdD�AHL�
H+H���T�f���t+H��D�CrL�
�G+H���H������H�H�� [��D�CrL�
�G+H��H����H��H�������H�H��H�� [�ffff.��k��������������H�9ǁ�ǁ�H���H���H�����f.�WVSH��@H���IhH�t$ ��D�ChH�LG+H��H���H��I��tL�H���H�L�-G+�P��1�H��@[^_�fDH��(���T�H��1�H��tH�RH��tH�:���H9�����H��(Ð�����������AUATUWVSH��(��H��M��L�$�L��L��H��H�}tH��hH���A������rH���H��H��t
H�UH����H���A�1���H�EH����KH���� �KH��hL��H��H�(H�H��h��H�<tZH9�H���r\H9�rWI��L���H9���L��H��h�I4$H9�I�4$t�K H��([^_]A\A]�H���H9�s�L��F+H��I+�
��1�H��([^_]A\A]�H9�����E1�H������H���H;�uw�K�����IH������-���H���D��\L�sF+H�I+�O
��1�H��([^_]A\A]�H��E+H�
�E+A��L��蔸H���f����H���D��\L��E+H��H+����1�����UWVSH��(f���H��H��tH�qE+H�
�E+A�������H�����H�����H�Nj��H�����H���b��H��H��uJH��tH���=��H��tH���0��H���L��E+ǃ�H���0��1�H��([^_]�DH��t�H������1�H���A�H��������H���A�H��1���������K�H��([^_]�ffffff.�SH�� �AH�����A8��D�ALE�����Krf�����������H���0�����H���H�����H���H��H���1�H��t<H��t7D���1�I�����D���H���1�I������K8�H�� [�A:t�IL���X���H��������M���H���h���>����D�Cr��1�A����@���f�SH��0D�I��H��L��E��t:1�C��9�tM��H���H��C+L�D+LE��]
��1�H��0[�DH���L�&D+�=
��1�H��0[�DH��L�D$(�����C8H�T$(���f�{rt|�tUH������C��Hǃ�����H���J���H��H��81�H���j����K@��_���f.�H���L��C+�	��1��;���fD�u�fǃ��v���H���L�mC+�h	��1������H���8�H��H���1�H���a������H��H�T$(�����H�T$(�-����CH��B+H���L�
�B+L�gC+ǃ�LE�����1����f.�UWVSH��8�A@H�Ή�L��L��t7���9�vMI��I��H�������H�����HD�H��H��8[^_]�@L��D+�������u�H�������f�H���L��B+H�{D+�D$ A��H������H���fDUWVSH��(�A@H�ˉ�L��L����9��wFf�����;��r�Kt�SL1�A��A��D9������H��C+H�������t_�����d��te1҉�I����I��H���St��\�������H�����HD�H��H��([^_]�L�eC+1��������S���H������ՍD
�1���r���H���L�*B+H�+C+H������?���H���L��A+H�C+H�������������SH��0H��H��HH��t�C��HǃHI���tAH��tY�c�����KH��H�L��PHǃpH��hH��0[�fD�Ct_L���I���� LN�L��L�D$ �F
��H��H��L�D$ t;�K�H�T$(L�D$ �1���c����L�D$ H�T$(�I���H�����I���H���L�A+H�YB+���1��a���ffff.�ATUWVSH��0�A@H�ˉ�L��L���!���9���C���H��H��
�򉳌�CH���H��H��tH9�P��HǃhH��HD�KX�KLHǃpH��hD���9�s0B�D	�1�A���t 1҉��KHA��D�KTD�ȉ�\��9�r9H���L�$@+H�A+H��������H��H��0[^_]A\�f.�B�D	�1�A���t�1҉��CA�Ѩ ����:���H���CH���~H9�~H��f�{h�01҉�H����D��D�������I��H��H����E��I��H��H�������H���������Sn�C��u	���L��pM��~L��H��H��������toH��HHǃpH��hH��H��0[^_]A\��1�I�����H�������t+�C�	���L��?+������������H�����H��H��0[^_]A\�H������tދC�� ���H��I��H�����Sn�C��u��tvH���@���I��I���H���8��H�����HD�H��H��0[^_]A\�H��pH��H�ZI������DL��1�H��I������������S����;���H��H��� I���z���H���L�==+H��>+�D$ A��H�����������fffff.�AUATUWVSH��8D��$���$�D��D��I��A����H��A��D�d$ �����t5A��A����H��D�d$ ��I�����M���H��H��8[^_]A\A]����H�����H��8[^_]A\A]�f�ATUWVSH�� �A@H�ˉ�L��L����9��wFf�����H�d=+H���������Kt�SL1�A��A��D9�s�D
�1����C���H��H��D���A�É�dA��D�[E���K1҉�A���StA�� ��\�mH�����H��H�����c��f�{hH��HHǃpH��h�J1҉�H����D��D�������I��H��H����E��I��H��H��������H���������Sn�C��u	���-L��pM��~L��H��H���m��tiH��HHǃpH��hH��H�� [^_]A\�f�H9�P��Hǃh���L��;+1��r������)���f.�H�����H��H�� [^_]A\�1�I�����H��������t֋C�T���H������t��K �}����H��I��H�����Sn�C��u��tvH���8���I��I���H���x��H�����HD�H��H�� [^_]A\�H��pH��H�E�����DL��1�H��I������������������H��H���`E���z���H���L��9+H��:+H�����������H���L�w9+H�p:+H����������o���ffffff.�AUATUWVSH��8�AH��I��D��D�ͨ@�m��5H��H�'
9sL�C��E1�f������Crf9���1҉���st���E1�<;����D9�d��H���l���������������d9�w	E���f���1҉����St�C ��\��H��HL���HǃpH��h��I��H�8tH�HǃhH����������������K��\9�tD9�s"��1���H��H�StH��h��\��H��)Љ���������t;��\��L��8L��H����H��D��L��8L�����\����H��8[^_]A\A]�@f����7�FA��CL1҉�st��;�������H�8+H������������e����D�Ct�CL1�D���9�sB�D�1�A�����q����1�H��I������/�����������O����C���f.�L��7+1��r��������"����C�p���H����������������K ����H���L��6+H�I7+�������������H�����L��6+H�"7+�D$ D�������������H���L��6+H��6+�q������������SH�� L��p�H��M��~X�I��tM�Cn��u��t_��L��HtC���H������1���tH��HHǃpH��h�H�� [�f���d��H��HL���A��L��p�K�DH��hÐ�������AWAVAUATUWVSH��H�D��$�I��I��L��D��D��$�����1��Df9�r@��A9����H�@H�t��f9�u�H��6+H�
�6+A��蓥�f9�s�A�9�v7@�ƒ���H�R9�H�IH�T�H�L�L�L�L�AL�BH�IH�Jw�H�FA�O��$�f�>fD�n����H�F����D9�shI��pD���I���H�\=��HD�H9�rH9�s`L�!6+H�R<+�m���1�H��H[^_]A\A]A^A_�f.�H�4[H��H��c���H��$�H�NE���<��A��붐E1�H��A���H9�u`E����I���I��H��$�A���H9�u9��tH��A�GI��p�u?���|$<H�T$<urH�NA�����I���L�h5+H�y;+���1��"�����H�~�U���H�N�h<���G���1���#���H��4+H�
?5+A�!	�£�H���H��H�T$(�<��H�T$(�w���fDATUWVSH��p)t$P)|$`M��H��H��L����$���fW�E��f.���f.����H,Ɖ��H*�f.����O<+f.����E<+�D$@�����^��H,��D$D�F�H�l$@tH���];��H�M�T;��H�l$8�D$0E���D$(�D$ I��H��H������(t$P(|$`H��p[^_]A\��k����D$@�D$D댃���f��D$@�D$D�k���H�t3+H�
�3+A�&�b�����Y5u;+�D$D�����H,ƉD$@�/���ffffff.�VSH��x��$�M��H��tk�A�E��f�D$nH�t$nu,H�t$8�D$0H���D$(�D$ ����H��x[^�H��H�T$PL�D$HD�L$X�:��D�L$XL�D$HH�T$P���H��x[^ÐVSH��xM��H��tr�A���$�E��H�t$l�D$lu,H�t$8�D$0H���D$(�D$ �C���H��x[^�H��H�T$PL�D$HD�L$X�9��D�L$XL�D$HH�T$P�@��H��x[^ÐAUATUWVSH��H��$�H��$�H��H��M��E�́����wq�F�tI��t
��H���):����H�|$8�\$(�D$ E��M��D$0H��H�����H��H[^_]A\A]�H��1+H�
&2+A��u��F�H�i1+H�
�1+A��W��q���f�AUATUWVSH��H��$�H��$�H��H��M��E�́����?wQ�F�t
��H���19����H�|$8�\$(�D$ E��M��D$0H��H������H��H[^_]A\A]�fDH��0+H�
�1+A��跟�DATUWVSH��P��$�H��$�H��H��M�ą�xO�F�t��H��D�L$H�58��D�L$H�H�|$8�\$(�D$ E��M��D$0H��H���6���H��P[^_]A\�H�40+H�
1+A��D�L$H��D�L$H�fD�D$(L�T$0M��tE��L�T$0�D$(�@�������AUATUWVSH��H��$�H��$�H��H��M��E�́����?wQ�F�t
��H���7����H�|$8�\$(�D$ 
E��M��D$0H��H���c���H��H[^_]A\A]�fDH�Y/+H�
0+A���G��DAUATUWVSH��H��$�H��$�H��H��M��E�́����wq�F�tI��t
��H���Y7����H�|$8�\$(�D$ E��M��D$0H��H�����H��H[^_]A\A]�H��.+H�
V/+A��襝�F�H��.+H�
'/+A��臝�q���f�ATUWVSH��P��$�H��$�M��H��I��L������E��x]�G�u7�H�l$8�\$(�D$ I��L��D$0H������H��P[^_]A\�fD��H��D�L$H�5��D�L$H�f.�H��-+H�
�.+A��D�L$H�ҜD�L$H�{������H��P[^_]A\�ffff.�AUATUWVSH��H��$�H��$�M��H��I��L��tw�����?E��w@�G�uY��H�l$8�\$(�D$ 	E��I��D$0L��H���(���H��H[^_]A\A]�H�$-+H�
�-+A�����G�t���H���"5��뛃�H��H[^_]A\A]�ff.�AWAVAUATUWVSH��X��$�L��$�H��$�I��L�D$HE�΍6A��J�����H��H��L�D$H�G�����%�4+I��E1�W���4+f(��u9A�A�CI��I��D9�vU�CD�.����H,؉��H*�.�{�.����I��f(�A�����Z��^��H,�A�CI��D9�w�A�G�����H��$�L��H�l$8�t$(E�ΉD$0�D$ ��H���������H��X[^_]A\A]A^A_�f�A�A�C�)����A�C����Z��Y��H,�A��
���L��H��L�D$H�m3��L�D$H�]���I���L�,+H�2+1����v���f�AUATUWVSH��H��$�H��$�M��H��I��L��tw�����?E��w@�G�uY��H�l$8�\$(�D$ E��I��D$0L��H����H��H[^_]A\A]�H��*+H�
_++A��蒙�G�t���H���b3��뛃�H��H[^_]A\A]�ff.�AUATUWVSH��H��$�H��$�M��H��I��L��tw�����E��w@�G�uY��H�l$8�\$(�D$ E��I��D$0L��H�����H��H[^_]A\A]�H��)+H�
r*+A���Ҙ�G�t���H���"3��뛃�H��H[^_]A\A]�ff.�AVAUATUWVSH��@��$�H��$�I��I��L��E�͉�H�����H��H����A�Fff����f��t+f��tu1�H�������H��@[^_]A\A]A^�f.�fA�~d ����t1���fZ���H��9�w�t$ H�\$(E��I��L��L��������f�A�Fdf������t1����,҈H��9�w�H���0H�\$8�t$0�t$(�D$ E��I��L��L���g���-���A�Fdf��w:��t1��,��,ՈH��9�w�H����H�\$8�t$0�t$(�D$ �f����1���t���,Ӊ�H��9�w�t$ H�\$(E��I��L��L���L��������Df����1���t���H,Љ�H��9�w�H��tH�t$ H�\$(E��I��L��L���K������Q���@�t$ H�|$(E��I��L��L���������+���A�$�������t 1�f��$��,�f�CH��9�w�t$ H�\$(E��I��L��L�����������f���t!1�f.����,�f�CH��9�w�t$ H�\$(E��I��L��L����������f�I���L��'+H��-+1��4��d���ffffff.�VSH��x��$�M��H����=��E��v?�A��D$hH�t$h��H�t$8�D$0H���D$(�D$ �$�H��x[^�A�f�D$nH�t$nt&H��H�T$PL�D$HD�L$X�V-��D�L$XL�D$HH�T$PH�t$8�D$0H���D$(�D$ ���H��x[^�H��H�T$PL�D$HD�L$X�-��D�L$XL�D$HH�T$P�G�����H��x[^ÐAUATUWVSH��H��$�H��$�M��I��E����A����H�T$8L�D$0H����H��H��H�T$8L�D$0����t3L������I9�w`�E�E1�H���@I��N�VI9�wCI9�F�u�E��L��H�\$(�l$ ��H�ىD$8�I�D$8H��H[^_]A\A]��I��$�L��%+H�*,+�5�H���
�1�H��H[^_]A\A]�E��H��$���$�H��H[^_]A\A]�Z�f.���H��H[^_]A\A]�I��$�L� %+H��++��1��T���f�AUATUWVSH��H��$�M��H��I��E��t~�IrL�D$8H��M�H��H��L�D$8tw�^rE1�I��f��t�fA�;�^rA��I��fD9�w���H��H�l$(�\$ E��L�����H������H��H[^_]A\A]�fD����H��H[^_]A\A]�H���L�?$+H�++1�����ff.�AWAVAUATUWVSH���)�$�)�$�D)�$�D)�$�D)�$�H�ˉ�D��$@L��$H������$@�����C���U
H���H��p�C~�@�$��tKH��HH��t?�	��CHǃHHǃpHǃPHǃXHǃ`�௉C�D�*+�D$L1��=f*+��DŽ$����C8����`������ �{�@�������������*���V�Āf��������t��
�������@�������tDH����CH��$�A�H�D$(����D$ ��I��H��������5�C8�tDH����CH��$�A�H�D$(����D$ ��I��H���b��������C8������I�C<��k������������ �I����������tAH��H���H��$�H�L$(�D$ A�I��H���u�����C<������@tOH��L��(�� ��H��$�L�D$8�L$0�L$(�D$ A�MI��H��������r�C<���H�����1�E1�L��$�L��$�H���@f.����WH��+H�
J"+A��莎A��D��H;���MH���H�<��Wf��Av׉�f��%��D�8��sËG���	v����z��(u��tH�(+H�
z!+A����f��tH�+H�
y!+A����tH��+H�
}!+A���׍�L�L$`M��H�����H��H�T$`��$�D���H�T$8�D$0�D$(�D$ E��I��L��H���v�����H�����fD1�(�$���(�$�D(�$�D(�$�D(�$�H���[^_]A\A]A^A_Ë�0���31�W��D
Q&+�l$X�*H�+H�
� +A����f���;�0����H��8L�RN��I�E�b�zD�*w��RH�i!+Hc�H��H��M�r��CE����D��H�����H��I����E��t>M������I9��s	A�D$�1�H���fDH��M�VI9��O	H9�E�u�H��$�L�|$(D�d$ E��I��H���6�L��A���{�E���������;�0�����l$XH���8��$�H�@H���/�H��H�������=H�CH���c�SH��$HtH��$HH�H�C����$��M	�R���щT$L�H��pH9��_H9��V��tH��H��p�������f��`���H��M�r��A��������C�������B��H��$�L�t$8D�d$(�D$ �D$0E��I��H����������H���(��C���H��I�B�#H��$�H�D$(D�d$ E��I��H���r�����������DH��I�B��H��$�H�D$(D�d$ E��I��H���b����J������DI�BH��$�D�d$ E��I��H��H�D$(�������H��������t���f�I�BH��$�D�d$ E��I��H��H�D$(���������H��M�r�3C�$��H����H��I���sE����M�NA�D$��%�"+��"+M��I����"+D(�f(��Mf�.�z��.�f����A����fA(�Z��^��,�A�@I��I9�M��tUI���A�,�.��*�v�.�z�_.��&AW�A�@���M���Z��Y��,���A�I��I9�u��C��B��H��$�L�|$8D�d$(�D$ 
E�͉D$0I��H���l��a����I�BH��$�D�d$ E��I��H��H�D$(�����S����>���I�BH��$�D�d$ E��I��H��H�D$(�����!�������H��I�B�H��$�H�D$8D�d$0D�d$(�D$ ����H��I�B�NH��$�H�D$8D�d$0D�d$(�D$ ����f.�H��I�B�H��$�H�D$(D�d$ E��I��H�������z������DH��I�B��H��$�H�D$(D�d$ E��I��H��������:������DI�BH��$�D�d$ E��I��H��H�D$(������������H��I�BteH��$�H�D$8D�d$0D�d$(�D$ ����H��I�Bt7H��$�H�D$8D�d$0D�d$(�D$ ���A�A�@�d�����$�����A�@���Z��AY��,�A��5�����tH�C+H�
�+A���1�f��tH�#+H�
�+A��������L�D$`H���	��L�l$`L���ËH��D��/L�l$8�D$0�D$(�D$ �-���D�tH��+H�
�+A��衅f�tH��+H�
�+A��聅����M��H���*	��D���$�I��L��H�ىD$ ����������@����tH�3+H�
<+A���!�f�tH�+H�
6+A��������L��$�H�������$�D�I��L��H�ىD$ �����1������f.���$�����H��$�D�d$ L�t$(E��I��H���@�A���m������H�ىC��������H���L��+H��+1����������CtH��$�A�I��H�ىD$ ���������C8��a��x���H��$�A�I��H�ىD$ ���������C8�@�F��/�CzH��$�A�I��H�ىD$ ���������C8������CxH��$�A�I��H�ىD$ �O���g����C8������H�I+H�
�+A��7��C��$���H�"+H�
�+A����C������D��L���Z�����DH���L��+H��+�f��L���>�H���6��Q����W�A��f(��Z��^��,�A�@����H��L���������H��+H�
w+A���r����H�f+H�
Y+A���T��H���H�H+H�
;+A���6��:��������щT$LH�H��p����CHH��$�A�I��H��H���D$ �^�������CLA�I��H��H�ىD$ �;��������C8����CTH��$�A�BI��H��H���D$ ����������CXA�CI��H��H�ىD$ ������j����C8��O����H��$�A�I��H��Z�H���D$ ������*������A�I��H��H��Z��L$ �e����������C8�������H��$�A�I��H��Z�H���D$ �%������������A�I��H��H��Z��L$ �����������C8� ����C`H��$�A��I��H�ىD$ �������]����C8�@�Z��CdH��$�A�I��H�ىD$ �����)����C8���.��ChH��$�A�I��H�ىD$ ������������C8�����CjH��$�A�I��H�ىD$ �����������C8������ClH��$�A�I��H�ىD$ �c����������C8������CnH��$�A�
I��H�ىD$ �.�����V����C8�Ā����CpH��$�A�I��H�ىD$ ������!����C8��T��CrH��$�A�I��H�ىD$ ���������C8�#�H���H��$��D$ A�)I��H��H�D$(��������C8��m��$����H��$�A�(I��H�ىD$ �F�����n�C8������y���H����	�KdA�A��G�4$G�,&D��H����H��H����
H���M�H��M�����H���J�'M�����H���J�wM�����H��$�A�@I��H��H�|$(D�l$ ���H��A���-��E���6�C8������H���H��$�A�TI��H��H�D$(�Cr�D$ ������o�C<����@�6�CfH��$�A�SI��H�ىD$ �����5�C<��i��H���H��$�A�UI��H��H�D$(�Cr�D$ �[������C<��7��CPH��$�A��I��H�ىD$ �(�������C<����C\H��$�A��I��H�ىD$ ��������C<� ���f��&H���A�1���H��H��H�C��H���H��$��D$ A�AI��H��H�D$(������#�C<����H���H��$��D$ A�I��H��H�D$(���������C<���G����H��$�A�I��H�ىD$ ��������C<���U���H���"�Cr�KdA�f+��A��f���D��H��H��H�A�A�I��������E��D��H����H��H���;E��H��H��M�M�����fA��t1H��J�7M�����fA��uC�$H��M��H�G�t��H��$�A�-I��H��H�|$(D�|$ ���H��A�����E�����C<��@�����O�f������L�L$`L��$��RH��裯��H�D$`H��$�A�RI��H��H�D$(��$��D$ �$�����X��'�����f���.�H�����CH��pH�T$X����H���A��H��I�������H���f���
M��E1�A������ A����A��I��H��fA9���H���H�L9�v�H�x
+H�
+A�O�fyH��A�E��A�D�N�A�1�H������D�CH��H��H�CA�� �A���mA����$�H��$���E1�H���H������H���A�H�����H������x��f��f��x�=H����SH�C���H����������C�����$�����$��l����f��A�A������D��H�H��H��I��������E�A����E�A������A����A����$��^��LL��$�L��$�����A��E1�H���L���I9���H���A�L��H���o�C��;��$�E1�H����@�T����H���A�L���H�����C�����$��������X���H���L��+H�,+�����H�����H��$��D$ A�JI��H�L$(H������Dž��N����1��K f��HED$Xf��xH�����A��H�D$hH�|$h��E1�H���H������H���A�H�����H���6��x��f��f��x��H����S���A��H�D$h��H��PL�l$pL�d$xH���?E1�H���H�����H9���H���A�L���H�����C���H�D$pH=������E1�H�������H�L�tL��H���A�L���H�����C��H�|$xH���N���H�|$hE1�H���L��H���A�H�����H����H���L�8	+H��+����t�H���L��+H�-+�h���U�H���L��+H��+�F���3�H��$���H��L�l$(�D$ A�JI�����L������������$���H�i+H�
�+A�N�Wt����L���������L��������L���������L������f���H���L��+H��
+����~�H���L�&+H��
+�r���_�H���L�?+H�h
+1��Q���N�H�CH�|$hE1�H����H��P���H���A�H�����H�����S������$��!��S��߉S���H���L�*+H��+��������$�E1�H����@�T�H��$����H���A�H�����H�������r���H���L��+H�t
+�_���L�H���L��+H�U	+�@���=���H�t$Ptl�C>tfH���u\H��1����H��9�$�wH�t+H�
�+A�+�brf�}Ju�CH�S���<��H�D
H���D�d$LL�����H��H�����C��F��$�1Ҩ�f�tH���G
���C��$�����H�oL��$���E1��^�Ff�EH�FL�uA�L��L��$��D���C�u_H�MH�VA�H��A���#��D;�$��,�CH�����f�Ut�H���	���F�C�f�Et�H�M�	���{���L���	���H���	���8�����$��9�H���L�+H��+����~�H���t	��@�c���H�CH��$�E1�H������L���H���A�H�����H���-���H���H�L�o+�����H��$��������H�L$h�����S���H���L�q+H�+��������S��H�C �҉�$�tL�����A�L��H�����H�L$P�~��H���E1�H�S���H;CH�����L�x+H�{+�f��H���>���Y���$�����H�tH���1����$���H�o��E1��M�Ff�EL�uH�VA�L������C�uWH�VH�MA�H��H��A�����D;�$�s8��C�f�Et�H������F�C�f�Et�H�M�p���L������H�S A�H������C����H���p������M��H�����I9�t+H������H���L�+H�y+�D���1�H��������$@���%�H���{�c���H���H�������H���L�D+H��+��������<���H�DH������@�A��u	��E1�A������ffff.�VSH��(H���H��tM�C���tE1�E1��H�������H���A�1���H��H�������H��([^��{����f�D�AE��u�ÐI��E1�1��3��ATUWVSH��PH�AH��H�����A����LH�l$NL�d$D��H9�u]���D$NE1�H����@�T����H���A�L���H���t�C����D$D��H;s����E1�H���H��H9��H���A�H���H�����C��b���H�������U���DH��PH�l$(L�d$0H9��vE1�H���H��H9�H����H���A�H���H���w�C��MH�D$(H=���l��E1�H�������H�H�|H�����H���A�L���H���I�C���H�t$0H9s�J���E1�H���H��H�D$8���H�T$8H���A����H��uuH�CH���6���H��P[^_]A\�L������D$D��H;s�i����D$NE1�H����D$H�@�T����H�T$HH���A����H��t�H���L�(�*H��+�w���1�H��P[^_]A\�f.�H���H�����L���8����H���L���*H��+�&���1�H��P[^_]A\�f�H���L���*H�[+���1����E1�ǁLH�A�H������H��LH���A����H�������H���H�L��*莾��1�����E1�HǁPH�A�H������H��PH���A����H���6����f�H���L��*H�{+����1�����ffffff.�AWAVAUATUWVSH��xD��I��E�Ɖ�E1�D��M��f�D$lf�D$nH�D$HH�D$P����A�G�lI�WI���H����E1�A���I�_H��H9��A�G�TH�t$XI���A�H��A���H���nA�G���H�T$XH�k���f�T$jf��H�t$0u�cf9��eH�f�|$j�I���I��H��A���H9��{�A�G�f�D$lt�H�L$l����D$l��L���*H�'+譼��1�H��x[^_]A\A]A^A_�f9t$n�E1�I���H�T$PA���H;D$P��H���F��fDI���M�L�_�*H��+�C���1��I���L���*H��+�%���1��s���H�\$jI���A�H��A���H��uA�G���H���D$j����I���M�L��*H�;+���1�����f9|$l���D$21�f�D$nA�G���y��LH�D$4��H�D$HH�D$<�-H�D$PD��D���E�����g���5��L�
�*Lc�L��L������H��1�H�������D9��*��	�PA���FM��~FH��$�E1�H�HcЉH9�t%�@H��$�N��Ic�F��I9���I��M9�uۉ������A�G~������������Hc�1�I��H��H�EH�D$P�L;l$H��������1�A�I���A�����M���H�D$P�(��Lc�H��I���M��A�ԉ�I���
��Hc�I��I9��yH������A�G1�f�t$nf�t$2�����H�D$H�L�҉D$4�fH�D$P�D$8E1�I���H��A���H9��X���H�T$0I���I��A���H�¸H9����I���M�L�h�*H��*�t���1�����I���M�L���*H��*�P���1����f��D$4�҉D$d��H�D$H�D$8�D$d���H�L$n����A�G���l���I���M�L�v�*H�]�*D�d$ �޸��1��,������uA��t��
��A�����M������H��$�H��‰H9�uJ1���H��$�H���щ�H9�u/H��L9�u����H���$���@�j���H���C����
���H���#���I���L��*H���*�)���1��w���f����Hc�1�I��H�������H�EH�D$P��q���A�G�����A�������A��@�	�r���@�
A��AE��b��������Lc�H�L$PH��M����h�����H�D$4�JH�D$PH�D$<���H�t$dH���E����D$dA�G�H�D$H�D$8�D$d���H���!����D$d����H�L$H�.���A�G�H�D$<H�D$P�����H�L$P�������H�L$2����A�G������������Lc�H��$�H��M���h�����������f��������������������
A�G���H���y���I���L�0�*H���*����1�����H�L$4H�t$0�9���A�G�H�D$P�D$8�����H�N�����r���H�L$4H�t$0�(���A�G�H�D$PH�D$<�N���H�N�
����@���L��H���:���A�G�N���L��H�����A�G�:�����I������Lc�H��I���M��Ӊ�H�����Hc�H��I��H9�����芾������L��H���e��������f.����H��8H�hH)�p�f�UWVSH��(�M��H��H��L��^�H)�H����H)�H��hH9�tI��H���*���H��hH��H�pH�H�H;�PH��hH��p},H��~gH��pH��PH�H9��H��1��f�H���X�����u�1�H��([^_]�f�H�i�*H�
~�*A�7�_�N���f��H��([^_]�f�VSH��8H��L��H��H��pL9�|EH��hH9�t�T���H��hH��pH)�L�2H��p�L��hH��8[^�DD��\H���H�_�*L�D$(L��*H�D$ ���1�H��8[^�fff.�H�9���H���H�K���H���H���H���H�?���H���H���H��H����H���Ð�������f.�SH�� H���#�H��0H��tWH���H��t����H��0H���H��t���H��0H�����H��Hǃ0H�� [�'����H�i�*H�
y�*A�N�G^H��0�fffff.�ATUWVSH�� H��0H��hH��H;��������D������������t-D����	�B�T%A���j���A��D�|H��ǃ���D��D���U���A����A��D�8H����~�)���@�8H��H+�HH��p�H�� [^_]A\�f��U�A����A��D�@H��뷍j����PH���s���fDH+�HH��p�M���H��H�����AWAVAUATUWVSH��hH��0I��H��L��E��H����H�����Mc�1�I9�tH��h[^_]A\A]A^A_Ë��H�|$P����H����H)�A9�}&Dꉖ���H�A9���H��u��DHc�HT$PA)�L�L$P��H�T$PI��I)��H��D�@
H�J�H�L9�D�B�tH��u�dž�������E��M��h������L����D$LH����L$HL����GLcD$HH���L9���L�t$XL�t$P��A�$��	ˍM;L$H�9I����+l$HA��L)�H�����A��fD#L$LfA����fA��H�����H9�� H���?H9��L9�L�?�L9���E��A�GI��I�A�W��I9�f�G�WsA�S�W
H��L9�v6�D$H�����Nȸ��L$H��LcЉD$LI��I��L��fA����qE�KfE����E��E9��3Ic�L�H�D$PL��H�T$P�H��tH��D�@
H�J�H�L9�D�B�w�H����L�t$PE)�M��E����LcD$HH���L9������L�t$XI���E��dL���*H���*L�T$8膯���D$HL�T$8M��hf���E��D$L������L���H���L������������E��\I���Mc�L��*H�$�*L�l$ �,���1�����DH�� A��/1�H���	���H���H���H��L�������A�$��	ˍM��~vI���i�A��H��	H�����A��D��f��f��t�f����f����D��A�A��I��I��L���D$L��D$H	�y����A�L$��I��	ˍM�w���f�L�t$XL��*H��*I���E��dL�T$8����	�D$L�L�T$8�b���A�L$��I��	ˍM����E�A��I��M������L�t$XL���*H���*I���E��\觬��1��D���H��*H�
<�*A�w�W����f�H���*H�
'�*A�x��W���L�t$X�D$H���H��tBJ�A��I��M)�I���
f.�H��D�@
H�J�L9�D�B�H�tH��u��������L�t$PL�t$XL��L���H�H��t:�PD9��Ic�D���HT$P�L���H
A��L�B��J�H���H��u��D$HM������L�t$XL���*H�z�*I���E��\�y���1�����L�t$XI���E��\L��*H�?�*L�T$8L�\$@�B���L�\$@�D$HL�T$8M����������H��u��n���f.�L�t$XL��*I���E��\I����1����L�t$X�	�D$L��4���VSH��(H��0H��H���H�����H��H�8u�@tH�����fǃ���H����fǃ��H���H��pH���1�fǃ�	ǃ�A��/ǃ�ǃ�H��H�� ǃ��H���H�������H���H�B�H���Hc��H��H��H�H����H��([^�H��1�H����	�����H�)�*H�
L�*A��U����f�H���L���*H�s�*�V���H�?H��H���H���H������H�H������fffff.�AWAVAUATUWVSH��hH��0I��H��L��E��H����Mc�1�I9�tH��h[^_]A\A]A^A_�f����H�|$X����H����H)�A9�}MDꉓ�f���H�A9�|�J�A��I��M)�I����H��D�@
H�J�L9�D�B�H�u��t���Hc�HT$XA)�L�L$X��H�T$XI��I)��H��D�@
H�J�L9�D�B�H�u�ǃ����E��I��hD���D������L����D$LH���H�����L���Mc�M9���L�|$PL�|$Xf.��U��D�G��D	�E9��A��H���T$LD��D��M)�D)�L���D!�A��ҁ�������H���H9��L���?I9��L9�L�&��M9���Lc�E�L$I��I�A�L$A��I9�fD�N�NsA�H�N
H��H9�v,A���A��DOذD������D$LH�H��H������CA�Pf���8��D9�����A)�I�L��L����L��D�J
L�Q�D�I�H�H��u�M��E���zL���Mc�M9������L�|$PI���E��dL��*H�H�*H�D$8D�\$@�	���D�\$@H�D$8�T$LE��I��hH���fD����D���������L���H�������E��\I���Mc�L���*H���*L�l$ 譥��1����fDD�uD��H��D�GA��A	����DA�A��I�����L���f�I�� 1�A��/H���I���L���L���I��I������U����OD	�~wA��H��D��I��	A��	���y�L�����t���������Lc�A�A��I��I��L���D$L�A�	�4���f�D�uH��A��OA	��y���f�L�|$PL�D�*H�}�*I���E��dH�D$8�5���A�	�D$L�H�D$8����L�|$PL�i�*H�:�*I���E��\����1�����H���*H�
��*A�^�gO���L�|$P����L�|$XL�|$PL��L���@H��JD9��Mc�LL$XD���A��I�I�I��M)��DI��H��D�R
L9�E�Q�H�u�M��E1��^���L�|$PL���*H�z�*I���E��\�W���1��V���L�|$PL�L�*I���E��\I��.���1��-���L�|$PA�	�D$L���ffffff.�VSH��(H��0H��H����H����tH��([^Ð��?薩��H��H���A������B�T
H���B�TH�����J�I�����f�AH�u�H��A� 1��b������������H��H��0tLHǀ�Hǀ�H�����H��0H���-���H���*H�
��*A���kM����H���L�"�*H��*�ܡ��1����H���L��*H���*軡��1�����@WVSH��@H��H��H��L�� L��(L��0L��8DH��H)�DŽ8������DŽ0������DŽ������BDŽ������BDŽ������BDŽ������BDŽ�����������H��@H9�u������[^_�VSH��(H��0H��H����H�����H��PH���fǃ�	fǃ��fǃ�ǃ�H��H�Hǃ�ǃ�'ǃ�ǃ�ǃ�H�������ǃ���H��([^��H���Y���f�H���*H�
��*A�1�K�+���f�AWAVAUATUWVSH��hL��01�H��$�H��M��M���.I����A���A���M��A���E���A���E����D$LI����L$XA����T$\A���H�D$PE����L$<H��$�L��h��M�ɉ��2M��L�t$@I��DE�1A�CE��I��I���D$HH�D$@D��D����H�����D1�D�Hc�H���9��Y��x<A�)#�A)Ѕ�AE��)�D��)#��AH�Lc�J��D�A9��E��y�L9l$P���L$<�D$<D���D�`�D	׉�D����A��A�U��I��f�k��E���3���L$<L$L;l$X�������L$<�&�L$<�D�\$H����D$X��M�����L�t$@�L$LfA���E���D$<�T$\E���E���A����L$XA���A���fA���E����fA���H��$�L��hH��h[^_]A\A]A^A_ÐD�S��D�\$H�c���D�`�D����A�EI�������D$\9D$H|JA��'�|$H��D�\$\�^�L$L���������ZH�T$@;���ZH�T$@�����D�\$H���H��$�L+�HL��pL�L$ D�T$(D�\$0膡��H��$�D�\$0D�T$(L�L$ L��H����H�D$@H���L�L$ D�T$(����L$<�D$<H�T$@D���D�`�ǂ�����D����A��A�UL�L$ D�T$(�TD�`�D����A�EI���L$<��D$<	�D$X��E1ۉL$L���f�H���*H�
��*A��L�L$ D�T$(�mGD�T$(L�L$ ����D$H������|$LH�T$@;�������H���L�L$ D�T$(����H�L$@�D$<ǁ��L$<D�D�`���D�������A��A�UL�L$ D�T$(����I�������fA���������L$<�D$<D���D�`�����D����A��A�U^I���L$<D�I��L$LH��A������L$<I����D$<	�D$X�f�E1ۉL$L����D$H��������D�`�D����A�EI���H�2�*H�
�*A��L�L$ �FL�L$ ����VSH��(H��0H��H��tN�H�A���H��H����H��t
H��([^�fDH���L���*H��*�6���1�H��([^�H���*H�
��*A��E�f�SH�� ��H��tH�|�*H�
��*A�`�ZE�谠��H��H��0���SHǀ�H��Hǀ�Hǀ����H�,�H���H�����H���H���H���H���H���H���H���H����H���H�H���H���H�z�H���H����H���H���H��H���H��贽�H�� [�f�H���L��*H���*�֘��1�H�� [Ð�������������AWAVAUATUWVSH��8H��HH��hI��L��H�D$(H��PHD$(M����H��E1�E1�f�H��D�uH�E��D:u�t��D:puH���H��H�hu��H�FH9D$(wvA��t
A����L��I+�hL��I�p蜜��������I��hD)��H��~/D�R�1�I�J�A�T�H��H9�u�I��hJ�tI��A����s3���S�������D�v�ǀH��A��E���DA����A����H�����H��I+�hI�pI��h����I+�hL��I�p躛������A��I��h�\��������������D�v�ǀH��A������A�������~�������A�E<}�z�����E1�A�E<�F�A�ĈF��^�����tB�������D�v�ǀH���:���H�ſ�-��������H��8[^_]A\A]A^A_��D�vI��A�H������A�EE1�<A�ED�6A��H������D�vA�@(��H������D�vA�@(��H���w����D�v@(��H���`���1��l���DAUATUWVSH��(H��0M��I��H��L��H�(�~6E����H)�H�H��~5H9�H��E��HN�H��L��I�������yָ����H��([^_]A\A]�@�H��([^_]A\A]�fffff.�H��(H��0H��t����H��(ÐVSH��(H�ι轛��H��H��01�H��t�FH��u�>���H��H��([^��|��H��H��([^�ff.�AWAVAUATUWVSH��(H��hH��pA�I��I��L��H��~MH��~H�EH��L�}�����XHc�H9���H9�|QL��I��L��H)�I�H)��:���H��I�,�H��I��$hI��$p�BH��([^_]A\A]A^A_�fDI��$�L�A�*H���*赔��M��$hI��$pI��$�E��$\L�>�*H�X�*袓��1�뗃��tjE��A)�Ic�H9�|kA��H)��MK�TH��H��L��H��H9�u�O�t���E��I��$�L�y�*A)�H���*Hc�A��������L������I��$�L�A�*H���*A)����A��Hc��l����H�I���H���H���H���H����H���H�����H���H��H���H��H���H���Ð��������������H��(D�Id�fA��t H���L�-�*H�V�*E���M���1�H��(�fDAWAVAUATUWVSH��HI��L��L��H��?H��8H���M���H��hH��pL��D�aHH��E1�E1�M9���H����D�H��H��D�߁���@������u�D���D	�A��tD
UI��A��D�UA��H��Mc�M�M9�~9E��~4E�s�A��I��A��E��J�|=fDE�*I��I9�u�A��J�l=G�\s�A�����A��A��M9��J���M9�H��hH��p����\M9�H���L�L$(L�
%�*L�S�*H���*L�d$0�D$ H���*LL��Ӑ��1�H��H[^_]A\A]A^A_Á��t8��������E��A��D��I��������DUH�����fDD�������t+H�=;�*H�D�D��I����A�����DUH��A��A���M���H��*Mc�F�A��M9��2���D��I�������y���D����E����D�������t+H�=��*H�D�D��I����A�����}DUH��D�������t,H�=`�*H�D�A��M9�~D��I������tSDUH��A��A�������H�&�*Mc�F�A��M9��v�������e��H������D����E�}���f�D����E�DD����E����f�H��8I)�H�M��������/���H���L�*�*H�{�*���1�����ffffff.�H�I���H���H�{���H���H����Ð������H��(D�Id�fA��t H���L���*H�:�*E���m���1�H��(�fDAWAVAUATUWVSH��8M��I��I��~N�H����H��L9�u�I��8L��L��H��?I��hI��pH��H���3M��~jH��~eH��L�l$ H��H�D$(L��H)�I��D�H��L�aE��uSH9���L��I��L���̖��I�4H)�I�H����M����Ll$(��u�L�l$ I��hI��p��iA��@��H�T$ �BD�BHtD�BTE��M��1�1�L��DI�Ƀ�?I��D��B�<���A��D���A���f.���t;��t(E�H��H��~:H9�}5D9�s0�ƒ�����u�A;��E;��f�EH��I���A9���H9���H��tzA�$H��I���W���H��~b�QD�I�AD�A��D�Hc�H�SH9�~>��A����H�H�H9�|'H�QI�I���f���H�����I�LH)�H����L�l$ L���*H���*I���E��\����1�H��8[^_]A\A]A^A_�L�l$ L�n�*H���*I���E��\���1���L������I���L��*H�x�*躋��1��fDH�	���H���H�;���H���H���H����ø�f.�H��H�BI��H��t@D���H�B�*H���D�L$0E��L�<�*H�T$ D�\$(L���*����H��H�@D��dH��*�UWVSH��(H��0H�ω�L��H�����G��v7������tR��H��H�F(I���H��H��([^_]H��$r�%v?��Fu�H�E�V��H��([^_]�H��0H�EH�RXH��H��([^_]�H�E�V ��H��([^_]�DH�E�V��H��([^_]�f�H�E�V��H��([^_]�f��VH�Ef��H��([^_]��H��*H�
�*A���75����f�AWAVAUATUWVSL��H��H)ШtA�I��1�I9���L�-��*L�%��*���f�D�A�D9�wE9�v	E��A)�D�E������A�É���A��)�I�A9��A��tA��E�T�A��E 3I��D�����tuHc�H��w��wc��Ic\�L���A���FA�I����u�E1�A�_�M�t�L��f.��H��L9�u�A����O�\�v�A��E��t
��D���A D�RB�D9�wE9�v
E��A)�D�RE������A����A��)�I�A9��:��t��E�T
��AI��D�����tpHc�H��w��w^��Ic�L��A���FA��I����u�E1�A�_�M�t�L��f.������H��L9�u�A����O�\�v�A��E��t
��D���ABH��I9��*���D9���H���*H�
��*A��[^_]A\A]A^A_��2A�C�A�C�A�C�A�C�A�C�A�C�Hc�A��I��A�CA�CA�CA�CA�CA�CHc�A�I��u���DH�'�*F�A�E�O���f�H�
�*F���A�A��E �G���@[^_]A\A]A^A_�Lc�I��B��)����f.�Lc�I��B��)����f.�VSH��(H��0H��H��tkH�F(H�N`H���H�F0H��H���H�F8H���t����H���H��t����H��0���H��Hǃ0H��([^�6X��fDH�"�*H�
3�*A�c�W1�w���f�AUATUWVSH��(L��0D��H��A��A�|$LA�l$H9�sZH��p�3H��h1�@�8H���H��hH��pH����H��pv<)�D�����	�H9�P�H�����믃�vH�y�*H�
��*A�a�0H���*��)�D#,�A��A	��u5H��PH9�p}EH��h�D�(H��pH��H��hE1�E�l$HA�L$LH��([^_]A\A]�f�H���h����fDATUWVSH�� H��0H��Eue�E A��ue�E��H�������u�H��PH9�p}QH��h�UH�H��H��pH��h�EH�ELH�� [^_]A\�fD�Ex1�A�
��@�ǃ��H��赈���AWAVAUATUWVSH��HH��0L�-��*��?
H�ˉ�M��D�xHH�D$8�xLD����A��$jE��$l9���H��p�4H��h@�8H��H��hH��pH����H��pv0E1��)�D������D	�H9�P�H������f�1��E�|�)���E!�A��A	Dž�D��u;H��PH9�p�H��h�D�8H��pH��H��hE1�1�A��$n)Ձ�?
������?�9���J?��Hc�H�IM�4LA�N9�t!H���*H�
G�*A���D$0�	.�D$0E�A�vA9���H��p�?f.�H��h@�8H��H��hH��pH��A��H��pv@E1��A)���D����D	�H9�P�H��D�L$(踆��D�L$(롐H��訆�����1��G�|�D)ω�A!�A��A	Dž�D��u?H��PH9�p|H���j���H��h�D�8H��pH��H��hE1�1�A�V)�Hc�H�TmI�T�2�j9��5H��p�<�H��h@�8H��H��hH��pH����H��pvLE1��)������D	�H9�P�H�����뮃�vH�;�*H�
��*A���p,D�����1��A#l���)���	�u4H��PH9�p}@H��h�@�(H��pH��H��h1�H�D$8�hH�HLH��H[^_]A\A]A^A_�H���(����A�������H���*H�
�*A���D$0D�L$(��+D�L$(�D$0�P������R���H�e�*H�
��*A���D$0�+�D$0�,���ffff.�VSH��(H��0H�˃~Lt=H��PH9�p}:H��h�VH�H��H��pH��h�FH�FL�H��([^Ð�K����f�VSH��(H��0A��H�����A��H������~Lt=H��PH9�p}9H��h�VH�H��H��pH��h�FH�FL�H��([^�H��趃���@VSH��(H��0H��H����H����CL�CH�CxH��tL�C1��ˇ���C tUf������tc1�.�*�����ҍD�T�������ǃ�H��([^��ǃ�ǃ���f.��Y��*�fDH�b�*H�
��*A���)�+���f�H��H�BI��H��t@D���H���*H���D�L$0E��L���*H�T$ D�\$(L���~���H��H�@D��dH���*�SH��P�BD��$�I��H��tW���H���*H���E9�D�L$8H�u�*L�
|�*D�D$ L���*H�T$(D�T$@�\$0LB�L���7~���H��P[Ë�dH�8�*말AWAVAUATUWVSH��hL��0H��$�L��L��H��?H��$�L��$�I�E�wM�_@H����H��$�A�GPA�wHA�_LH��h�D$TI�GpI��L�pH��$�H���L��M��E��I�֋T$T���Y���������@��u(�������L9�s��H��A���	�@��t�@����u���@��t�����H��E1�E1�L9������6�H��L��c+��I���J)����
��	�������E���H��$�H�
��*E��H�D$8D�T$HL�\$@�F�H�D$8D�T$HL�\$@�D$TE��tD�UH��E9���E���H��$�H�
��*D�|$ E��H�D$8L�\$@���H�D$8L�\$@H9��*E9�|
� H9�sH��D+e�H�U�E9�|�E9���1�I��E��AI�I)�A����E��H�jA)�D�H��H�D$8L�\$@E��I��H��$�A�SXL�\$@H�D$8I�SH)�$�H�$�A���H��$�����H��$�M��H��h�D$TH��$�H)�A�_LA�wHA�GPH�p�H��h�f�����������������
�L9�s����A���K	�H�W��
I9�v)�W��H��A���	��H�׉��f�H��듀������D$T����-���E��H��M��E����H��H��$�E��I��A�WXH��$��D$TA�GLA�wHA�GPH��hH��hH)�H�p�����H��h[^_]A\A]A^A_����A���K	�H�W���I9���H���
����RA�A�����RL�MF�A�E9�D�E��E1҃�L9��~����
H��H�
��*��H���J)����
������
�1���^L�L$XE���H��$�H�
��*E��H�D$8D�T$HL�\$@��H�l$X�D$TH�D$8D�T$HL�\$@���fDH���L���D�:�BH���9���L�L$XL���D$T���H�׉�����H�����E���H��$�H�
�*E1�D�t$ H�D$8����H�D$8E��D�0~@H�h������L�L$XL���D$T���������W��H��A���	��w����@H�h�����RA�A��t������A���K	�H�W��AI9�wQH���c����RL�MA�A�E9�D�U�����E��uE��IE����H�����H�׉��*���L��E1������W��H��A���	�����E��M��E���H��$�H�
��*E��H�D$8D�T$H���D�T$HH�D$8E��tD�UH��E9��D$T����E���H��$�H�
��*D�t$ E��H�D$8���H�D$8H9���E9��H9�sH��D+e�H�U�E9�|�E9�~p1�I��E��AI�I)�A��t
�H��E��H�j�D$TA)�D��C���H���L�7�*H���*��u��������m���E��L�L$XM��L�����H���D$T�����D�2�BH�����H���_���f.�AWAVAUATUWVSH��L��0H��$�L��L��H��?H��$�L��$�I�E�oM�_@H����H��$�A�GPA�wHA�_LH��h�D$pI��L�pH��$�H���<L��I�GpM��I�׋L$p������������@��u(�������L9�s��H��A���	�@��t�@����u���@��t��K����������M�Ch�����A��-E����
I��H��E1�E1�L�\$H��I9������B�I��L�ݛ+A��O��A�I)���A�9��A�	L���*Mc�L�\$pL���*L\$pA���������������
�L9�s����A���K	�H�W��
I9��T�W��H��A���	��H�׉��A�IA�Aʃ�L9��O���F�H��H�[+��L��A�I)���A�	��	t���t���L�\$H�T$p��	@L�\$HE���H��$�H�
1�*E��H�D$`D�T$hL�\$X�~�H�D$`D�T$hL�\$X�D$pE��tD�UH��E9���E���H��$�H�
��*D�l$ E��H�D$`L�\$X���E9�H�D$`L�\$X}	H9���H��f�E9���1�I��E��AI�I)�A��t
�H��E��H�jA)�D�H��L�\$XE��I��H��$�A�SXL�\$X�EI�SpI�ChA���I�ShI�SH)�$�H�$�H��$�I�Cp���H��$�M��H��hH��$�D�\$pH)�A�_LA�wHE�_PH�p�H��h��@H9�����H��D+u�H�U�E9�|�E9�����H���*���D�*�BH������f�H���a����H��E1�E1���L9������ �H��L��X+��I���J)����
��	��~�����RL�MF�A�E9�D�E��E1҃�L9��������
H��H�
Q�*��H���J)����
������
�����hL�L$xE���H��$�H�
��*E��H�D$`D�T$hL�\$X���H�l$x�D$pH�D$`D�T$hL�\$X�M��E��H���hH��H��$�E��I��A�WXH��$�D�\$pA�GLA�wHH��hE�_PH��hH)�H�p�����H�Ĉ[^_]A\A]A^A_�I9�������1�����@�H��E��ك�A��D	��=���@�������D$ptDE���H��$�H�
p�*E��H�D$`D�T$hL�\$X��H�D$`D�T$hL�\$X�D$pE��tD�UH��E9�����E���H��$�H�
�*D�l$ E��H�D$`L�\$X��H�D$`L�\$XH9��TE9�|�JfDH9�sH��D+u�H�U�E9�|�E9��$���1�I��E��AI�I)�A��t
�H��E��H�jA)�D�
�&������A���K	�H�W����I9���W��H��A���	��������H��A���	�����RL�MA�A�E9�D�U�L���D$p�����RA�A����D��L�\$HD)�UH�����xI9�������	1ې�bH��$�D��L�\$HD)�UH���AE����!H��$�H�V�*D��dH��$�H���D�D$(L���*H�T$ H�_�*D�t$0H�D$`D�T$hL�\$XH�L$P�m���D$pH�D$`D�T$hL�\$X�"���H9�L��t9A9��aA9��XL�\$H�
�D9�QH��A9��L�\$HE�IG�1D9������H9��{���A��E)�E)�E�E�L�A�D�UH��+Q�E1��WH9�t-A9�|(A9�~#L�\$H�f�D9�APAI��A9��L�\$HE�I��D)�D�A�A�D�UH��AE1�I��E9�����E��L�\$Ht(C�A9�~����@����������D�UH���D$p����H��L�\$H�T$pH)����E�����L9��O�ې���
H��H�K�*��L��A�I)���A�	���\�Z�����
���N���A�IA�A��H9�A��t3A9���A9���L�\$H�E9�EHEI��E9��L�\$HD��D)�E��A�D�UA�H��I��E1�D�����H9�t0A9�~+A9�|&L�\$H�
DD9�APAI��A9��L�\$HA�щ�D)�A��A�A�PI������E���H��$�H�
��*E1�D�l$ H�D$`��H�D$`E��D�(~H�h�Z���H�׉��C����@H�h�@���D���H�1�*�����@������D$p�H���A�I�T$pL�ML�\$HL�L$p�T$xA�A�D�UE1҃�IL9��4�E���A��KD	�L�O����M9��pD�O��H��G�A��D	�H��H�OQ+��L��A�I)���A�	��	�������L�\$H�T$x��L�\$HH�l$p�:���A�IL�M�T$xL�L$pA�A�D�UE1҃�IL9����E���A��KD	�L�O����M9���D�O��H��G�A��D	�H��H���*��L��A�I)���A�	��t@�]�����
���Q���A�IA�A��j�����L�L$xL���D$p�����l����T$xL�\$HA�IA�A�D�UH��E1�H9��9���A9��	A9��L�\$H��A9�|APAI��A9��L�\$HE1����H�����E���H��$�H�
,�*E��H�D$`D�T$hL�\$X�y��L�\$XD�T$hH�D$`������H����A���	�������A���K	�H�W����I9��\�W��H��A���	������RA�A����H�������E���A��KD	�L�O����M9��*D�O��H��G�A��D	��z����E���A��KD	�L�O��DM9���D�O��H��G�A��D	��}�H�׉��)���E����E��IE����L�ω��T��������L�ω��������
���L������A���V���A�IA�A��p���H��E1��v���H���L���*H�s�*�Bf��������x���H�����L�ω��>���L�ω��s���L��E1����L���_���L����M��E���H��$�H�
�*E��H�D$`D�T$h��D�T$hH�D$`E��tD�UH��E9��D$p�����E���H��$�H�
Ľ*D�l$ E��H�D$`���H�D$`H9�v!E9��DH9�vH��H��D+r�E9�|�E9�~:1�H��E��AI�H)���t�EH��E��A)�D�EH���D$p�
����D$p���D�m�EH�����L�|$HE���H��$�H�
�*E��H�D$`D�T$h��D�T$hH�D$`E��tD�UH��E9��D$p���E���H��$�H�
��*D�l$ E��H�D$`��E9�H�D$`|����H��H��D+r�E9������H9�w����L�����E1�D����L�����I9�wx��t:��#���M���#���M���D$p���M��H�l$p����M��L����E���H��$�H�
�*E��H�D$`D�T$hM����H�D$`D�T$h������H����A���	����fff.�AWAVAUATUWVSH��xL��0H��$�L��L��H��?H��$�M��I�~M�V@A�~A�NL�T$`H���H��$�L��$�E�VPE�~HA�nLM�fpH��hD�T$lA�ʃ�A���L$hH�D$HH��I�pM��D�T$\H�D$P��L��M��I��f�L�y�*L��E1�1ۃ�H�D$PH9D$H�����:�L��H�EJ+%�H���H)�A�����	�������E���H��$�H�
��*A��D�\$8����D�\$8E��tD�H��9�tzE���H��$�H�
w�*�|$ A���N�L9��U9�|��KI9�sH��+^�H�V�9�|�9��@1�I�Ѕ�I�M)�A��t
�H��A��H�rA)�D�A��I��L��H��$�A�UXD�L$\E�������)�A��I�UA���H�$�I)�M�������H��$�M��H��h�D$lH��$�H+T$HA�nLE�~HL�T$HA�FPH�p�L��hH��x[^_]A\A]A^A_ÐD�D$hE���y������A��)��i����T$H����H�\$H��T������$���c����D$l�~���L�T$H��A�L�T$`A���MA	�H�D$HH�����H9D$P�DL�T$H��H�D$HA�BL�T$`A���A	�����PH�FF��9�D���E1ۃ�L�T$PL9T$H������
L����I���J)�A���
������
�����E���H��$�H�
2�*A��H�D$@D�\$8�S��H�D$@D�\$8H���q�����@�A����f�H������:�BH������DH���D����H�D$H������@���l���H���D$l�����H�D$H���fD�R�A����f�L�T$H��A�L�T$`A���MA	�H�T$HH����MH9T$Pw]H�T$H����RH�F�A�9�D�^�K���E��u*E��HE����f.�H�����H�T$H���}���H��E1�����L�T$H��H�D$HA�RL�T$`A���A	��K���M��E���H��$�H�
��*A��D�\$8�$�D�\$8E��tD�H��9�thE���H��$�H�
v�*�|$ A���M�L9���9�
�I9�sH��+^�H�V�9�|�9�~x1�I�Ѕ�I�M)�A��uy��H�r)ȉH��$�A��I��L��A�VXD�T$lH��$�A�FLE�~HE�VPL�T$HH��hH+D$HH�p�����L��h�J���H��}��:�BH����H���x���M��H������H���N���H��$�L�o�*H�}�*H����]����������f.�AWAVAUATUWVSH��xH��0H��$�L��I��H��?L��$�H�E@�}H�D$`L��H�}H����
L��hH��p�EPD�mHD�eLL�H��$��D$TH�T$XL����L�upH�UhI�����	H��L��1�1�A��L9|$X��E����	A�L��L��+��M��A�IA)�A��A�9�VE���H�
Z�*L��A��L�T$@L�\$H���L�T$@L�\$H��t�.H��9���E���H�
�*L�҉|$ A��L�T$@L�\$H����L9�L�T$@L�\$H�o9�|�f@L9�vH��+^�H�F�9�|�9��E1�H����I�L)��t
�H��A��H�pA)�D��\$T���2A��L����A��
L�T$@A��I��L��H��$�A��
�UXL�T$@�D$TD�eLD�mH�EPI��hM��hL)�I�p������H��x[^_]A\A]A^A_�f�A�	L���*Ic�L���E�H�L$`I��F�D��A��A��E	��L���H��9���1�H����I�L)��t
�H��A��H�pA)�D�E1�L9|$X��A��E�A�������DH�������\$TH���8�@������L��L�T$@L�\$HA��I��H��$�A�SXL�\$H�L�T$@I�CH)�$�H�$�I�SpA���H��$�M�shI�ShM�sp�3���I��hL�݋T$TD�eLL)�D�mH�UPI�p�M��h�����)؉H��A����L9|$X�cE����E1�����)؉H��A�BE�����A��dH��*I���L�x�*�T$(H�O�*�\$0H�D$ L�T$@L�\$H��X��L�T$@L�\$H���fDI9�H��t)9���9����9�
AH��9��E�IA�9��v���I9��m�����)�D)���H�Q��.H��+A�1��F�I9�u�f�9�
BH��9��E�I��)�D��ˉ.H��1�H��9���������2����+9��!���E���^A������A��A�������I9���t*9��9�~��9�
J
H��9���)؉�ʼn.�H��H��1���q���f�H��L)����A��L;|$X��E����A�
L��L��*��M��A�IA)�A��A�	���������
���
���A�I����I9�u�f�9�
BH��9��
���)؉�ŋBH������L;|$X�OE���A�L��L�a>+��M��A�IA)�A��A�	��	ufA�I��A����f�A�H�T$`D�����A�L$A	�I�G���,H9D$X�(A�GL�D$`I��A��A���A	������t����	���A�IL�FL�D$h�ˉ.1�A��WL;|$X��A�L�D$`E�D��A��A�L$E	�M�O����L9L$X��E�OA��I��G�A��E	�L��L�R�*��M��A�IA)�A��A�	������
����A�I���W���A��A���2A���D$T�X����A���H�"�*����A��I�����A�IL�FL�D$h�ˉ.1�A��WL;|$X��A�L�D$`E�D��A��A�L$E	�M�O����L9L$X�E�OA��I��G�A��E	�L��L�S<+��M��A�IA)�A��A�	��	��������t
H�t$h�S���A�I�ˉnH��1�L9��-���9�|9�fD�9�|
BH��9��1�����fDE���H�
d�*L��A��L�T$@L�\$H���L�\$HL�T$@���A�H�T$`D��I��A�����A	��p���A�L�D$`E�D��A��A�L$E	�M�O����L9L$X��E�OA��I��G�A��E	�����A�L�D$`E�D��A��A�L$E	�M�O��OL9L$X�yE�OA��I��G�A��E	��s���H�����I��E1����E����A�
�[���M��A���A���E���kA��;���M��A���|���A�I������L��1����H��������������L��A��D���H�
�*L��A��L�T$@D�\$H�k��D�\$HL�T$@E��tD�H��9�����D���H�
��*L�҉|$ A��L�T$@���9�L�T$@�����L9�w���@L9������H��+^�H�F�9�|����H���L�N�*H�Q�*�Q�����������M�����M��A���0���M��A���&���M���	���M�����M������H���]����8�@H���K���L9|$Xw"E��t?A������H�t$hL��A������A�H�T$`D��I��A�����A	��W�����L��H�
��*D���L��A��L�T$@�D$H�
��L�T$@D�\$H���fffff.�VSH��(H��0H��H��t[1�f�~n�CL�CH�CP������H�C@H�ChH��t�S�@��ǃ�H��([^��H�›*H�
L�*A����DAUATUWVSH��(f�ydH��0H�����Cuy��?��D�KHI��F L�f�D�Nu1�f�{h@��1�A���H�F`wA�y����tv�?����9�tiH���H�L�H�*��O��1�H��([^_]A\A]�@��7��D�KTI���f�H���L�ڜ*H�ا*�O��1�H��([^_]A\A]���Dž�t��?����9�u����~���A��L�
��*H��A�L���,)��H��H�F`1�H���i���N��1��H�F`��H�Fpt3H��H�Fhf�{h�|��u(H��0Hǀ������H�Fh��f�H��0L���U��H��H��H�������H���L�c�*H��*�N��1�������F �z���H���H���H���H����Y���DUWVSH��(H��0H��H��D��H���3�C@��t_f�{hI��A���.H�
 �*��F L��*�����h���H�"�*A��A��H����C@�ut�uP�uH�F8H��t0A��H��H��H��([^_]H��D�FH�T�*H���D�H�F8H��u�H��([^_]�f.�D�FH�	�*H�����C@��H�
��*A�I�����D�FfA���ryfA��uH�
��*A�I����D�FE��H���*H��E����C@����H�
˚*�|��F ����L���*H���*H���k��F ����H�
	�*A�I����9�D�F�f.�H���*H���)��F L�W�*�����H�]�*H�����F �h����H�e�*H�����F L��*�2���f�H�
��*A�I����D�F���H�N�*H�
_�*A������fffff.�UWVSH��(H��0H�ˉ�L��H���PH�0�e��G�)v;����������H��H�G0I���H��H��([^_]H��%����Ftx��$u�f�{h��D��H���V���1�H��t$�H�K�����f����	D�8���H��([^_]�H�UH��0H�PX���H��([^_]Ð�E�G���E�G���E��G��H��([^_]�f.�f�{h�U����E�G �J���f.��Ef�G�4���@H���*H�
Õ*A�������f�H���*H�
�*A�����}���f�SH�� H�4G(A�H��������n����P��H��H��0�vH����SH�H(H�
�����H���H���H�H0H�
��H���H���H�H8H�
I���H����@ ��L���H��H�@`��)x��H��0H�
���Hǀ�H�����H���H�
+��H���H�M���H���H���H���H���H�����H�
#��H���H���H���H�
�H���H�I��H���H���H��H�
m��H���H��H�� [�@�K����@H���L�z�*H���*�H��1�H�� [�H���L���*H��*�H��1��AVAUATUWVSH�� H��0E1�H��H��E��f.�E��D��E1�A��D)�Mc�I��D���t<A�L�/�*A��A)���A9���DO�A�A9�DO�D���D)�I����?~hA���5A�	��t��f�A�I����I��I�QA������u��O�
��t���R��uL�ʃ� A�� L�J����-A���t�KA�Q���>I�Ƀ�A��I�I���~�H�
M�*�9�N�A�L���*D��H��E����E9��AE��D��E1�A��D)�Mc�I��D���t<A�L��*A��A)���A9���DO�A�A9�DO�D���D)�I����?~jA���
A�	���t��@A�I�����I��I�QA������u߃���:�t����z�uL�ʃ� A�� L�J�����A����t�+A�Q����I�Ƀ�A��I�I��߅�~�H�
�*�9�N�A�L�ٕ*D��H��E�����E9�������E����}LtDH��PH9�p�@H��h�UH�H��H��pH��h�E�EH�EL�tEH��h�t:H��PH9�p���UH�H��H��pH��h�EH�EL�H�� [^_]A\A]A^�H�)�*���A�����f.�H�	�*���A����f.�H��*���A����f.�H�ɛ*���A����L�ʋ
������I������L�ʃ:��7���I���H���H���I��H��h����H���I�����I������I��D����L�����L���1���ff.�AWAVAUATUWVSH��(E1�L��D�H��H��E��A����D�E1�A�€�8E1�f.�E9�E���HD�����D���Ѓ���D���{D��D)�E1��Hc�Hڅ��D����t>D�L���*A��E��G�A��A)�A9�DO�E9�EO�Dك���D)�H����?~o����D�A���t �f�D�RA�����H��H�JA������uރ����9�t��y�uH�у� A�� H�Q����x�
���t��+�J����L�҃�A��L�R���~A�H�
��*�9�N�A�G�<E9��E)�A�@���sE9�E���JD����D��Ѓ���D����D��D)�E1���Hc�H��D���t>D�L�,�*A��A)�A��A9�E��DO�G�E9�EO�D�����D)�H����?~m����D�A���t�
D�BA�����
H��H�JA������uރ����9�t���y�uH�у� A�� H�Q������
���t�A
��J����3
L�ƒ�A��L�B���~A�H�
A�*�9�N�A�DE�A��H���*���C�,��tD����D��Ѓ�����L�p�*D��H��D)�E��迼��D��L���*H��D)�誼��E9��`D����D��Ѓ���D����D��D)���Hc�L��D��E1�A�ƒ�tAE�L�r�*A��E��G�
A��A)�A9�DO�E9�EO�DɃ���A��I��E)�A��?~qA����
E�A���t�mE�XA����^I��I�HA��A����u�A���o�9�t�mfD�y�uL��A�� A�� L�AA���A���2A����t�A�H�����M��A��A��M�XA���E���
A�L�v�*A�D9�AO�H�E1�AɅ�G�$)��DE�D��E1�D��D)���Hc�Hڅ��D����t>D�L��*A��E��G�A��A)�A9�DO�E9�EO�Dу���D)�H����?~n����D�A���t�	D�ZA�����	H��H�JA������uރ��I
�9�t�G
��y�uH�у� A�� H�Q�����
�
���t���J����L�ڃ�A��L�Z���~A�H�
1�*�9�N�A�E��-���D��D)���Hc�L��iD��E1�A�ƒ�tCE�L��*A��E��G�
A��A)�A9�DO�E9�EO�E�	A����A��I��E)�A��?~{A����E�8E��t�fDE�xE����M��M�XA��A��A��u�A����E�E��t��fDA�K��uM��A�� A�� M�CA���A����A���t�,A�H���M��A��A��M�XA���E���XA�L��*A�D9�AO�H�E1�AɅ�G�$)��DE�D��E1�D��D)���Hc�Hڅ��{���D����t>D�L���*A��E��G�A��A)�A9�DO�E9�EO�Dу��<���D)�H����?~q���"
D�E��t�D�ZE���H��H�JA������u߃���
D�E��t��
�D�IE��uH�у� A�� H�Q����Z�
��t�_�J���SL�ڃ�A��L�Z��������A�H�
��*�9�N�A�E����f�A��H��E���z���E9�������H��([^_]A\A]A^A_�D��D)�E1��Hc�Hڅ������D����t>D�L��*A��E��G�A��A)�A9�DO�E9�EO�Dك��R���D)�H����?~r���<	D�E��t�_D�RE���QH��H�JA������u߃���	���t�q	f.�D�yE��uH�у� A�� H�Q�����	�
��t���J����L�҃�A��L�R��������A�H�
-�*�9�N�A�G�<�|����Mc�H�Ə*H��K�@E��H�DB�PD��������DL�ُ*E��G�8E�G�$)H�E1���t>D�L���*A��E��G�A��A)�A9�DO�E9�EO�D�������D)�H����?~j���iD�A���t�t@D�RA����aH��H�JA������uރ����9�t���y�uH�у� A�� H�Q������
���t����J�����L�҃�A��L�R�������A�H�
ȏ*�9�N�A�����H�
��*E��B�A�G�$)H�D��E1���t>D�L���*A��E��G�A��A)�A9�DO�E9�EO�D�������D)�H����?~i���-D�E��t�a�D�RE���RH��H�JA������u߃��}���t�jD�yE��uH�у� A�� H�Q����-�
��t
�?�J��u7L�҃�A��L�R����Z���A�H�
��*�9�N�A��>���H���*���A��(����H�i�*���A�E��g��H�I�*���A�E��G��H�)�*���A��Z���f.�L�	�*��H�A�A�G�$)�\���f�L��*��H�A�A�G�$)D�������D��D)�E1���Hc�H������D���t>D�L���*A��A)�A��A9�E��DO�G�E9�EO�D����C���D)�H����?~s���%D�E��t�VD�BE���HH��H�JA������u߃��-D�E��t�(f�D�IE��uH�у� A�� H�Q����r�
��t���J����L�ƒ�A��L�B������A�H�
��*�9�N�A��l�E1�H�E1���G�$)�������f�E1�H�E1���G�$)��������fDL�9�*D��H��D)�E���(���D��L���*H��D)������d�H�'�*E��B�A�E��#�H�	�*E��B�A�E���DH��*E��B�A������H�Ɋ*E��B�A��h����H���*���A�G�<��fDH���*���A�G�<���fDH�i�*E��B�A�G�<��@H�I�*E��B�A�G�<��@H�)�*���A����f.�H�	�*���A����H��*E��B�A���H�ۊ*E��B�A���A��?D��H��~h����E��t��D�RE����H��H�JA��D��D)���u܃���D�	E��t���I��uH�у� A�� H�Q����|�
��t�R��J���EL�҃�A��L�R�����A�H�
�*�9�N�A���D��E1�A��?~m@����E��tf��D�BE���H��H�JA��D��D)��u܃���D�E��t���D�QE��uH�у� A�� H�Q������
��t�pf��J��ufL�ƒ�A��L�B���~A�H�
F�*�9�N�A�E����L���:�H������M����H���p�H������H������H���*���A��H��*���A����H�҇*E��B�A���H���*E��B�A��o���H����H����M���^�H�����H�����I����I����M���@�H���X���H���G���H�����H�����H���]���H���^���H������H���7�H�����H�����H���`�H��� �H����H���r�H�����H�����H���3���H���[���I���|���I�����H���=���H���l���H���[���H���.���I�����I���Y���I���Q�I���9�M����I�����I�����I����I�����M���_�f�AWAVAUATUWVSH��8L��0H��L��L��H��?H��M��I�~H��tZ�4�E�FH��H���q�����A���A�Fx��uuA���A�Fx��A���I�FH�I)�M����A�F�A�F tLA�vx��t�E�NM���H��H���J���tAA�������A���t�I���M�FH���^8���E�FH��H�������x���1�H��8[^_]A\A]A^A_�f�L��0A�U A�}LE�UH���������w�G���O�9�s^H��p�6f�H��h�D�H��E1�H��hH��pH����H��pvG)�H9�P�H��D�T$(�43��D�T$(뭃�v#H��y*H�
�}*A��D�T$(���D�T$()��A�U D�Ѓ��A�tA�UxE1�@�
��A��A��9���L��p�5�H��h@�8L��pH��H��hI����L��pv'E1ҿ)�D������D	�L9�P�H���o2���1����H�M�*)�D#<�A��A	Dž�u9H��PH9�p��H��h�D�8H��pH��H��hE1�E�}HA�ML����H��x*H�
�x*A���D$(���D$(�y���H��PH9�p}GH��h�D�H��H��pH��hA�U 1�E1����H���1���[�������H��D�T$(�{1��D�T$(�H���L��{*H�s�*�,��1����UWVSH��(H��0H��L��L��H��?H��L��H�{H��t<�^D�KL���H��H���:���t6H���L�CH���c5��H�CH�H)�H��ĸH��([^_]�fD1�H��([^_]�H���L�?{*H�W�*�,��1�H��([^_]�SH�� H�����¸��uH�� [�f�H��((A�H���u����tA��H��H�� [�?Z��H���L�{*H�){*�+��1�H�� [�ffff.�SH�� H���#���u1�H�� [��H�I)(A�H���u����tgH�@��A��H��H���H���H���H�f���H���H���H��H�Z���H���H�� [�yY��f�H���L�zz*H��z*��*��1�H�� [�fffff.�SH�� H���S���u1�H�� [��H����A��H��H���H���H���H�� [��X��fff.�SH�� H��������u1�H�� [��H����A��H��H���H���H���H�� [�X��������������SH�IM��~zK�@�
�*�
�*L�B�
�*fD�H����A�����H*�A��fD��X��Y��Y��D,��H*�fD�B�X��Y��Y��,�f�BH��I9�u�[�f.��ffffff.���f.�1�f�yjL�f�Adf�Af���Df�Ar�H��0��tH�@(H��f.��I����UWVSH��8H��0fE��H��H��L����H���:HcOH��H��H��?H���?��H;G��H�WE1�H��L��hH��p~?H���7L9�~2E�
E�ZH��A��A��E	�E�ZI��E	�F��I��H���I9�L��hH��pt5D��\H���L)�H�;�*L��*H�D$ �(��1�H��8[^_]ÐH��H���W �H��8[^_]�f�H�i�*H�
y�*A��7���f�H�������H���L�[�*H���*�'��1�H��8[^_]�H��*H�
+�*A�������ffff.�VSH��(H��0H��H���+f�{jM�tH��*H�
9�*A�i��f���uN��������ta���������AH���L�S�*H���*��&��1�H��([^�H���L��*H���*�&��1�H��([^��F�C��D�KXD�CTL��I��M����H��H��H��?I��I9���1�E1�H��H�N��L��L��H��?H��H����H���L��*H���*�)&��1�H��([^��SdD�Cf�Kr��D	��������DtfD�Z��A��A�f���f������������������C�F����D�KtD�CHL��I��M������H��L��H�N����M���&���H���0,��H��H�F�H������H��([^�@�F���@���7����F�x���H��}*H�
�}*A�h�s����E1�������@��}@A��������f.�A��AE������A���D‰�����u�A����f.�����w�DA����DVSH��8H��0H��H���f�{jL�tH��|*H�
~*A����Crf���������=�����������s�C�F��D�KtD�CHL��I��M����H��L�	H�N��M����H��*��H��H�F�H����H��8[^�H�����L�
�}*L��}*H�]�*�D$ �t#��1�H��8[^��F�C�h���D�KXD�CTL��I��M���h���H��H��H��?I��I9��R���1�E1�H��H�N�Q���L��L��H��?H��H���:���H���L��|*H�΄*��"��1�H��8[^��Sf�Kd����	ʁ�
h��	����	t��u����������,����H���L��|*H�[�*�v"��1�H��8[^��F������t8���D‰�fDH��z*H�
�z*A�������f����o���@VSH��8D�IjH��0H��fA��L�tDfA��M���H���H��|*H�b�*L�K|*E��H�D$ �!�����H��8[^��:������t�H�*H����������t�f�{jL�H��{*H���L�
�{*L�J|*H��*LD��R!��1҉�H��8[^����������v���f�{hu�tJH�H�������}���L������x���H��*H�F �4���H�eH�F �$���H�H������t'���������2���H��&H�F ���fDH�� H�F ����H��H�F ����VSH��8D�IjH���H��0H��H���fA��L�tEfA��M�t}H���H�{*H�(�*L��z*E��H�D$ �# ��1҉�H��8[^�����1҅�t�H�NH������tq�������H��8[^�f.��k���1҅�t�f�{hu�tRH�FH��������������u�H��'�H�F �a���f�H�Y�H�F �J���H�t���H������t;���}���]���H�N$�H�F ����H�I�H�F ���H��!�H�F ���fDH��&�H�F ����H���H�F ���fDH��#�H�F ���ff.�AVAUATUWVSH��0L��0fE��I��I��L���XM����IcMH��H��H��?H��A�}H����I;E��I�}L�D-H��1��C'��I��hI��p�E1�H����I9������xTH��H��t݄�t�M�H����L�f�D�H��A��fF	GH��M��t�I9�t�L9�~�I�����H��tM�VH��H����<~�w���M�H����L��DL9��Z���I��fB	GI9�M��u�H���I���I9�uV������,���L��L��A�U �I��hI��pH��0[^_]A\A]A^�H��u*H�
�u*A�������I���E��\L)�H��~*L��u*H�l$ ����1�I��hI��pH��0[^_]A\A]A^�I���L�uu*H��~*���1�H��0[^_]A\A]A^�L���E���H� u*H�
7u*A��������f�AVAUATUWVSH��0fE��I��I��L���^M��0M����IcNH��H��H��?H��A�>H����I;F��I�~L��H��1��%��I��hI��p�E1�H����I9������xRH��H��t݄�t�M�H����L��D�H��A��F	�H��M��t�I9�t�L9�~�I�����H��tL�VH��H����<~�y���M�H����L��DL9��\���I��B	�I9�M��u�H���L���I9�uV������/���L��L��A�V �I��hI��pH��0[^_]A\A]A^�H�zs*H�
�s*A�J�H����I���E��\L)�H��|*L��s*H�l$ ���1�I��hI��pH��0[^_]A\A]A^�I���L�6s*H��|*�q��1�H��0[^_]A\A]A^�L���E���H��r*H�
�r*A�L�����f.�VSH��(H��0��H��t��tUH�@0H��([^H��E�A��D�tt��A����A����H���H�L��t*����1�H��([^�E�A��D�H�v�H���L��t*H�{*���1�H��([^�fD�A��H���G��A��SH����G���CH�����tH���#��H���H�����H��8�H��([^Ð�A��A����G��A� �{���E�ɾA� �g�������AUATUWVSH��(H��H��L��E���#��H��1�H��tPH��H��H��?H��H��ugH�۸t4I��E��I���	�H�L�t,E��I��H��H�����t�1�H����H��([^_]A\A]øH��([^_]A\A]�f.�H��p*H�
�s*A�����{���f�AUATUWVSH��(H��H��L��E���c��H��1�H��tOH��H��H��?H��H��u\H�۸t3I��E��I���	�H�L�t+E��I��H��H�����u�1�H����H��([^_]A\A]øH��([^_]A\A]�H�p*H�
�r*A������VSH��(H��0H��H��tKH�F(H�NH���H�F0H��H���t� ��H�����H��Hǃ0H��([^�6�fDH��o*H�
|r*A�2�W��DAUATUWVSH��(H��H��L��E������H��1�H��tPH��H��H��?H��H��ugH�۸t4I��E��I���	�H�L�t,E��I��H��H�����t�1�H����H��([^_]A\A]øH��([^_]A\A]�f.�H��n*H�
�q*A����{���f�AUATUWVSH��(H��H��L��E������H��1�H��tOH��H��H��?H��H��u\H�۸t3I��E��I���	�H�L�t+E��I��H��H�����u�1�H����H��([^_]A\A]øH��([^_]A\A]�H�n*H�
�p*A�����AWAVAUATUWVSH��8H��0fE��I��H��L����H���rHcKH��H��H��?H���;H����H;CH�{gI��H��H��S I��PI+�pA�M��hE��H��|A��A���u�I��PM��hH)�I��p�H��8[^_]A\A]A^A_�I���L�Zm*H�<v*���1���H�m*H�
*m*A�����-���H���a���D��E1���D�t$$M��f�l$*H����D�L$*M��E��fF#oI�E�E���!��G!�D9�u��H�����tH9��H9�I���L��L)�H��H���qM9����l$,��H��H��A�)M�QuuM9���L��M��L)�H��HO�H�EH9�|�I��PM��hL��H)�I��p������VI��PI+�pM��hH��H��A�)M�Qt�L�e�N�\5L��M)�D�G�L$$A�E�DH��L9�u�O�t&I�H)�M9��V����l$,1���~!�C~�L$$H��A�B�o�A�BI��Hc�I�L9������D�t$$���H�Tk*H�
kk*A���"��p���I��PM��hL��H)�I��p�-����toI��PM��hI+�p�(���D�D$*I�FfF#wE���G!�D9��m���H��L9�u��L$$�~H��D(�M��D�A�A�E�BI������������P���AWAVAUATUWVSH��8H��0fE��I��H��L���+H����HcKH��H��H��?H���;H���#H;CH�{mI��H��H��S A�L��I��PM��hI+�pE��I��H��VA��A���u�I��PM��hH)¸I��pH��8[^_]A\A]A^A_�I���L��i*H��r*�/��1���D����D�|$(��E1�M��H����M��f�F��I�U�A!����!�D9�u��H�����tH9��H9�I���L��L)�H��H���zM9����\$,�H��H��A�M�QuuM9���L��M��L)�H��HO�H�SH9�|�I��PM��hL��H)�I��p�������WI��PI+�pM��hH��H��A�M�Qt�L�c�N�3L��M)��L$(D��A��E�DH��L9�u�O�t&I�H)�M9��X����\$,1҃�?I�L9������M��D�|$(�:���H�Dh*H�
Th*A�Y�����H������S~�L$(H��A�B����A�RI��Hc��I��PM��hL��H)�I��p������tfI��PM��hI+�p�)���F��I�VA!��!�A9��m���H��L9�u��L$(�~H��D(�M��D�A�A��E�BI��������������H�hg*H�
g*A�Z�6�����ATUWVSH�� H��0fE��H��I��L���<H���sHcMH��H��H��?H���}H���5H;EH�]��I��L��H��U H��PL��hI��L+�pH��u7�f��I����A����A�Q�H��A�AI��H��twI���H��PL��hH��L)�H��p�������L��PL��hL+�p�f�H���L�kf*H�io*�
��1�H�� [^_]A\�f�H��PL)�L��hH��p�H�� [^_]A\��H��e*H�
�e*A� 跸���f�L������������H�� [^_]A\�H��e*H�
�e*A�!�w��o���f�AUATUWVSH��h)t$ )|$0D)D$@D)L$PI�͋AH�Y���M����K�@H���5�n*L�dJ��D
�n*�D�n*�E�*��Y��,����	��F�*��Y��,�%�	�L9�+��A�EH��H���>�����Ft��*��o��*�A�E�Y��AY��X��A\��,����	���t��F�*��5��*��Y��AY��X��A\��,�%�	�L9�+�w���f�(t$ (|$0D(D$@D(L$PH��h[^_]A\A]�M��~�K�@L�B�B�Ji��iɚ����%���	��
H����	ȉH��L9�u��AUATUWVSH���)�$@)�$PD)�$`D)�$pD)�$�D)�$�D)�$�D)�$�D)�$�D)�$���$ D�yq.��$(E���\H�t$ H�T$H��fDH�@H�H��H9�u�H�-�k*��H�=Gq.�5�l*�D=�l*�D�l*�D
�l*�D�l*�D�l*�=�l*�D5�l*������������fD(��Dm�A��A���E\�EZ�A���A*�fA(��X��AY��AX��A\��_��AY��X��,��*�H��X��\��L� fAT�f.�v�U�D� D��E�y�fD��H�����t4�*��E�����X��AY��AX��7�����xϺ�?���D1�A�cA���Q��k*��A��H��A�������^�f.�v�������2t,F�D��A��D������)¸d��A)�Mc�fB.T� v�E�cdA�D���
A��A��2t0A��A�dE)�D��A��D�����)�A��A)�Mc�fB.T� v�D9���D�A�dA����A������)�H��p.A��)�Hcɋ��H��A���������n.��$(��$ �A\��A\�藺�AY�(�$@D(�$`�X�D(�$p(�$P�,�D(�$�D(�$�D(�$�D(�$�D(�$�H�D(�$���H���[^_]A\A]�DE)ĹdD��A��D����)�H��o.��A)�Mc�B����+����D
�i*H�=n.�D�i*�D�i*�=�i*���fff.�SH�� fW��ȉ�%�uH�� [�fD�*��XDi*�Y�i*�\�i*����t��
�i*fW�H�� [��UWVSH��X)t$ )|$0D)D$@M��H��L��H�y~i1�fW��={i*�Dzi*�
�DH��H9�tC�_�J���1�f.�s����f.�s��Q�f.�z6�AY��,��DH��H9�u��(t$ (|$0D(D$@H��X[^_]���f(��fff.�UWVSH��(H�qM��H��~+K�,1�fD����f�fZ��_H��H9�u�H��([^_]��H��8)t$ ��f.�h*r
(t$ H��8��
�h*f���f.�s�f.�h*v'��un�Y��Yyh*�Xyh*�YIh*�,���
kh*1�f.�v��
h*��fW�u{���Y6h*�X6h*�Yh*�,�
����h�����f(��B��h*�*��Y��X�g*�Y
Bg*�Y�g*�X��\g*�,�����D蛪f(�����g*�*��Y��X�g*�Y
�f*�Yrg*�X��\�f*�,�
�������ATUWVSH�� H�yM��H��H��~%O�$1ې�D]�VZ�����f�H��L9�u�H�� [^_]A\��H��h)t$0)|$@D)D$PfEW�1��1�Q�
g*�AZ�Z��Y��g*Z��Y��=g*�Y��X���f*�Y5g*�Y��X���f*�Y��Y�f*fD.��X���f*�Y��Y�f*�X��X��X�sf.
Gf*�����rp�1�fD.�sf.=-f*�����rv�B1�fD.�sf.5f*�����r�B(t$0(|$@D(D$PH��h��Q�f.�zQ�Y�e*�,�����Q�f.�z[�Y�e*�,��u���D�Q�f.�z&�Y�e*�,��o���f(�H�T$(臥H�T$(�f(�H�T$(�r�H�T$(��f(�H�T$(�]�H�T$(�fD��ufW����*��X�d*�Y�e*�\�e*�_�ffffff.�H��8)t$ ��f.�e*r
(t$ H��8��
�e*f1�f.�s��u+�ԧ�Y�d*(t$ �Xge*�Y�d*�,�H��8�詧f(�����d*�*��Y�(t$ �X+e*�Y
�c*�Y�d*�X��\�c*�,�H��8�fffff.�VSH��x)t$@)|$PD)D$`f(��5�c*f.���E����f(��D�d*�\�f(��AY��,�=�fH�5O]*Hc��4�Z�f.�wNE����f(��\�f(��AY��,��T�9�}'H�]*(t$@�T�(|$PD(D$`�H��x[^�f�f(�(t$@(|$PD(D$`H��x[^�A�����L$ D�D$8��L$ �Dd*D�D$8f(��\�f(��*��AY��Y�b*�X��\5�b*�,�����f.��L$ �e�f(��L$ �\�f(��*��AY��Ybb*�X��\56b*�,��
���ffff.�ATUWVSH��)t$ )|$0D)D$@D)L$PD)T$`D)\$pD)�$�M��H��H�q�8K�@H���5�a*L�$B�=%c*�D%c*�Dc*�D�a*�D
�a*�D�a*�KD�E����C�*��C�*��X��X��Y��Y��������	�H���H��L9����;f��~Kf����D�ME��tK���#��*�D�E�*��A\��AY��AY��X��\��,����o���@D�E1��`���D��E1���������D���f�fA(�E1�fA(�����Q���f�(t$ (|$0D(D$@D(L$PD(T$`D(\$pD(�$�H�Đ[^_]A\��WVSE1ɸ����A��A���?H�5AZ*��D��D)ȃ�~'C�D���Lc�B�\�)߃�~gA��D��D)ȃ��Mc�B�D�A)��A*��B���_*1��`*Z��X��Y��X��A*��	�X��Y��X�_*�[^_�tA���k���fDA��E1���ATUWVSH��@)t$0M��H�q��K�@H��H�l$(H�|$ �5k_*L�$B�6D�D$ �Y��,��D$(�Y��,�f�Sf�CH��H��I9�tTD�H��H��D��A��?��f%�f4f������y�I�l����?I�����P�?��<L�T$ L�\$(���(t$0H��@[^_]A\�ff.�VSH��H)t$0���H�Ӂ����f(�fW�f.���H�T$(H�L$ A��A��?���������D$ �L$(��_*��_*�Y��Y��Y�_*�Y
�_*�\���^*f(��X[_*�^��Y��Y��\�f(��^�f(��\��^�f(�f��Y�f�fZ��fZ��Y�f��KfZ��s(t$0H��H[^Ð(t$0�C�C�H��H[^���^*��^*�fffff.�UWVSH��8H�qM��~1K�,@H�|$ H��HՋH��H�����H��H��H������H9�u�H��8[^_]�DWVSH�� H�YM��~,I�x�H��f��H��H��H��H���:���H���u�H�� [^_�fff.�WVSH�� �AH�ˉ�Z��G���������K�[�����Z��+^*Z��Y�Z��Y!^*�X��X�fW�f.�sW�Y�]*A���Y
�]*�^��^��������yO�
y\*E1��f\*�y��������	�H�� [^_���
H\*A���5\*�H�������x����	�H�� [^_�UWVSH��(H�YM��H��~+I�x�H��D�UH��H��H�������H��H���u�H��([^_]��VSH��(���H���
�fW�f.���H��@�����H*��H*��%S[*�
S[*�X��X��%�\*�Y��Y��
�\*�Y��Y��Y�\*�Y�\*�\��
�[*f(��X%C\*�^��Y��Y�f(��\��^��\��^��Y�f�f��Y�fZ�f�fZ��#fZ��K�cH��([^�fD�C�C�H��([^�DUWVSH��8H�qM��~1K�,@H�|$ H��HՋH��H������H��H��H�����H9�u�H��8[^_]�DWVSH�� H�YM��~,I�x�H��f��H��H��H��H���j���H���u�H�� [^_�fff.�WVSH��P)t$ )|$0D)D$@�AH�ˉ�Z�������D�s�Ktd��E�Z�fW��)[*Z��Y�EZ��Y
[*�AX��X�f.���DY�Z*1��Y5�Z*�D^��^�fA.�s?�fW��5rY*�DaY*�����DY�Z*�A,��»���=�F�1�f.�s��uE�Y5�Z*�,΁���Cȉ�(t$ ��	�(|$0	�D(D$@H��P[^_�f.�諩�*��Y5OZ*�Y�X*�X��\5�X*�,��D�{��*��DYZ*�Y�X*�DX��D\XX*�A,��;����5�X*�DuX*�����UWVSH��(H�YM��H��~+I�x�H��D�UH��H��H�������H��H���u�H��([^_]��WVSH�� ��H�ˍ��x����vH�"N*H�
#Q*A����H���'A�H���+?������8�)���H��H��H��0�1�H��A�8�6���1���u���������FH����H�F H����H���H����H���H����H���H����H���H����H���H����H���H����H��H�n��H��H�@��H��H���H�F(H�g��H���H���H�F0H�>��H����H�� [^_�f.�H���L�P*H��U*�6�1�H�� [^_�H���L�L�#P*H�wU*��1�H�� [^_����ATUWVSH�� H��0H��H��L��E��H��t^H�{0twH�{t0I��H��H��S0H�CE��I��H��H��H�� [^_]A\H��fDH��W*H�
�W*A�h��DH�iW*H�
}W*A�f�מ�DH�IW*H�
hW*A�g跞�k���f�UWVSH��(H��0I�pM��H��L��L��H�YII�H��?H��H��H��H����H9���H�S�I��A�I)�H��H��H��J�D��H�="W*H�,�����I)�H��H��vV~L�1�D��E)�H��L9�u�H�)H���)H���)H���)H��I�M���H��([^_]�DHc�H����H�9V*H�
�V*A�$觝�5���f�UWVSH��(H��0H��L��L��H��?L��H�YH��?L�H�H�H��H����H9���H�S�I��H�I)�I��H�5RV*H��J�DG��H�l�H)�I��f.�H��v\~L�8H�D�
fD)
H��L9�u�H��f)H���f)H���f)H���f)H��M�M���H��([^_]�Hc�H��DH�)U*H�
�U*A�藜�/���f�UWVSH��(H��0H��L��L��H��?H�XL��H��H���H9���H��H)�H���H��H�L��YH�{�I��H�5_U*H�k�I��H�אH��vkI��H��I��I)�H��~f�E�LD(LH��u�H��B(H���B(H���B(H���B(H��L�H���H��([^_]�Hc�H��fDA���A���A���A��y���DH��S*H�
vT*A���G����f�D�D�OH��D�G�	E��E��E���JH��D��D(шJ�JD��D(ɈJ�JD��D(��JH��H���H��([^_]�@D�D�WH��D�OD�G��E��E��E��A���JH����D(وJ�JD��D(шJ�JD��D(ɈJ�JD��D(��JH��H���H��([^_]��AUATUWVSH��8H��0I��H��L��H����H�EHH����H��E��I��L���1҅�tVH�}H���|H��H��H��?H��H��uJH�}P��H�ۺ~"I��I��L�H��I��L��H��UPH�����H��8[^_]A\A]�@H�)R*H�

S*A��藙�DH�	R*H�
�R*A���w��f���f�H��Q*H�
�R*A��D�L$(�R�H�EHD�L$(����@H��Q*H�
�Q*A��D�L$(�"�D�L$(����H��Q*H�
�R*A�������f.�UWVSH��8H��0H��H��L��H��tsH�{8��H�{Pt2H��E��I��H��S81҅�tH��I��H��SP���H��8[^_]�H�Q*H�
�Q*A��D�L$(�q�D�L$(�f.�H��P*H�
�P*A��D�L$(�B�D�L$(�e����H��P*H�
�Q*A��D�L$(��D�L$(�@����UWVSH��(H��0I�pM��H��L��H�XII�L��H��?H��H��H��H����H9�}xL�[�I��H��H��H��H�=HQ*J�,�I)�H��H��vX~L�
1�D��E�H��L9�u�H�
H���
H���
H���
H��I�M���H��([^_]��Hc�H����H��O*H�
�O*A�j���E���f�UWVSH��(H��0H��L��L��H��?L��H�YH��?L�H�H�H��H����H9�}{H�I��H��I��H�|�H�5eP*H�i�I)�I��H��ve~L�*H��D�fDH��L9�u�H��f
H���f
H���f
H���f
H��M�M���H��([^_]�f.�Hc�H���H��N*H�
O*A�N���?���f�WVSH�� H��0H��L��L��H��?H�XL��H��H����H9���H����I��H��I)�H���\I��H�5vO*H�{�I��H��veH��~$L�9H��f�D�DH��L9�u�H��H���H���H���H��M�M���H�� [^_�@Hc�H�����f���f���f���z���fDH�YM*H�
�M*A��ǔ��f�H�F�D�D�G�OH���j���H�WE��E�����D�H��E�D�RD�
E�D�RD�BDшJH��H���H�� [^_�f.�H��D�D�O�WD�G�����H��H�OE��H��E����L�\7E��@�A��AD�A��AD�I��A�QA�D�AH��L9�u�H�� [^_��UWVSH��(H��0H�ˉ�L��H��tDH�~`t]��=tH�F`I��H��H��([^_]H���E��K@��KH��([^_]�f�H��K*H�
�K*A���W��DH��K*H�
*M*A���7��DUWVSH��(H��0H�Ή�L��H��tDH�{Xt]��=tH�CXI��H��H��([^_]H��H�E�f��H��([^_]��H�IK*H�
]K*A��跒�DH�)K*H�
�L*A��藒�DSH�� H��0D�A���|A��t1A���tH���L��L*H�uN*���1�H�� [�@D�IffA����f�������AH�CuW���H�CH������H�� [�D�IdfA��t�fA��t�fA�� t�H���L��K*H��M*E���S�1��r����G��H�C말H���L�L*H��M*E���"�1�H�� [�f.��Ar�Z����WVSH�� H��01�H��Vx��u
��H�� [^_�H�������t���tj���u�H�8H���H�F0H���H9�t�H�VH���H���H�F H��H���H��H�F(H�{H���y����Cdf����f�� ��f��uH��H�F0H���H�(�H9�t=H�VH���H���H�F H�H���H��H�F(H��H���C����H�F0H���H9�tWH���H9�����H��H�F0H�����H������f�H�Y�H�F0�J���H�9�H�F0�:���H�	H�F0H�����H����l���f�WVSH�� H��01�H��Vp��u
��H�� [^_�H��������t��������u�H�DH���H�FPH�r���H9�t=H�V8H���H���H�F@H���H���H���H�FHH���H����C���k���H���H����X����Cdf����f�� ��f��uH����H�FPH���H����H9�t=H�V8H���H���H�F@H�E�H���H���H�FHH�,�H����C������H�FPH�k���H9�tVH�_���H9������H�/H�FPH�$���H�������H�)���H�FP�K���H����H�FP�;���H�iH�FPH�޲��H����L���f�AWAVAUATUWVSH��(H��0D�adL��L��I��H�pfA��E����D��H��H��H��H��?I��H��H��H���@M���H��H��I��H��?L��H��L��H����H��~CE�D$�M��1�E��t(I�DE��M��E��A�A��L��I��A���B�u�H��I�H9�u�L����H9���H��H�n�I��H)�H�^�L��G*I�T�H��I��H��voI��H��H��I)�H��~f�E�DD(DH��u�H��(
H���(
H���(
H���(
H��L�H9�|�H��([^_]A\A]A^A_�Ic�L��빹뼹뿹�H��D*H�
G*A�H�=�����AWAVAUATUWVSH��(H��0�ydL��M��I��H�Xf�����\���H��L��H��H��?H��L��H��H���?H���XL9���I��L�{�L�5�F*M��L��I�ؐH����H��~%K�9M��f.�E�EI��I9�u�M�A�	AI��A�	AI��A�	AI��A�	AI��L�H9�|�L��L��M��H��?H��H��L��H�����1�H�ۍW�~8��t(L�\A��M��E��A��L��G�E�
I��A���u�H��I�H9�u�H��H��([^_]A\A]A^A_�<�Ic�L���I�����K�����M��������H�C*H�
PE*A��肊H�������H��([^_]A\A]A^A_��VSH��(L��H����H�CH��H��H��HH�H��H��([^�O#��ffffff.�VSH��8I�@M��H��L��H��H��HH�L�D$(H���#��L�D$(H��H��H��8[^���ffffff.�VSH��(L��H����H��H��H��?H�H�H��([^�c"��VSH��8L��H��H��H��?H��L�D$(J�H��9"��L�D$(H��H��H��8[^�c�AWAVAUATUWVSH��8H��0H��H��M��fD�L$.H���@H�0�SH�(�L���s�H��I����M��H��H���H�wH����L��L��H��?H��H��ujM��~,I��M��L��I��f�L�L��I��H��I��W0H���D�L$.H��M��L��W(L�������H��8[^_]A\A]A^A_�f.�H��@*H�
�C*A���W��x���f�H��@*H�
�A*A���7��F���f�H���L�:C*H�+D*M��1�����H��@*H�
C*A�{�����H�j@*H�
~@*A�y�؇���H�L@*H�
k@*A�z躇���DUWVSH��(�A@H��0H��H��D��u"H�GhH���|A��H��H��H��([^_]H��H�
�B*I��A�
��^�D�A��tmA��tGA��uH�
�B*A�I���/�D�H��B*E��H���*�H�GhH��u�H��([^_]�H�
�B*A�I����D�뽐H�
GB*A�I���ΌD�띐VSH��(H��0H��H����H���'A�H����$������H���H�FXH�H�H���H���H�F`H���H���H���H�FhH�����H���H���H�FpH�m���H���H���H�FxH���H�����H�F0H�FPH��([^�H���L��A*H��A*�a��1�H��([^��H�9>*H�
^A*A��觅���f�VSH��(H��0H��H��tKH�FXH���H�F`H���H�FhH���H�FpH���H�FxH����H��([^��H��=*H�
�@*A��'�뚐����SH�� H���x$;S|~H�� [�f�H�CH�� [H��@�����t�{|~	�S��������H�� [��H�ǀ��@(�ff.�SH��PL�H��A�B(����A;���I���Hc�H��H����H���L��D�L�@E��tA��%u�xstyA�BHE�J0H��E�B,�D$HA�BD�D$@A�B@�D$8A�B<�D$0A�B8�D$(A�B4�D$ 輊�H��P[�I���H��tAA���9�|6A;��-A��A)�Ic�H���]���M�B,H��H��P[�r�f.�A�B,I���H��8���ffff.�SH���H�H�\$ H��P�\T.H��+H�H`I���y��H���[��SH�� H�H��PH����3��(��ffffff.�H����H���A|ǁ�H�H�����A(ǁ�~Hǁ�H�QH�D���ǁ�ǁ�H�QH����H�QH���H�Q H���'H���Ð������WSH��(��PH��L��H�AtH��@,P�@(
H��P0H��H��ptH�H���@,p�@(H��x0H����L�L�CH�ߺp�@���$@���7��1������H�t
�H����t	f�H����t�L�L�CH���C �%AH��H�CH�C(Hǃ�Hǃ�Hǃ�Hǃ�Hǃ�Hǃ�Hǃ�HǃHǃ�HǃHǃ�HǃHǃp�n/H���Q�C$�H��([_��H�{��o@������f�H����@����������H�����fffff.��[1ff.��0ff.�SH��0�Q$H�ˍ�8�����
vH�H���@(�P,H��1�H��0[�H�
+Hc�H���H��8H��PH�C(H��P�C$�H��8H����u��S8�������,����C<�C@���CX�CY�C\�C`�Ca�SD�SHH��?H�SP�Cb�Cd�Ch�ClHǃ��Cp�Cq�Cr�C$��%����H��8H��H�H��0[H��H��0[À�`����h����i���,����H��B(t��i�J,L�������D$(H��A�P�D$(�C<�C@����C<�C@�����htT��i��tI����H��B(t��i�J,L�������D$(H��A�P�D$(�C<�C@���f��C<���C<�o���H�� �J`D�
�����uA��u��tу�GuA��Ru��Bt-L�A�P4E�H,�A�H0A�@(q�����C<�}����C<����ffffff.�VSH��8�A$H�ˉ֍�8�����vH��A,H��A(H��H���*�����tH��8[^�@��uH�ىD$(�-�D$(H��8[^�f�H�H���B(5�D$(��D$(���SH�� �A$H�ˍ�8�����
vH��B,H��B(�H��8�@!H�� [��SH�� �A$H�ˍ�6�����vH��B,H��B(�H��8�@ H�� [��SH�� �A$H�ˍ�3�����vj=�tF=�t�`f.�H����t7H��8�x!t�H�C(H��P0H���,�H�� [��A$���@1�H�� [���yXtH�H�ىB,H��B(���Ax9��rH��H��P�C$��u���H��@(E��ِ�������������H�A(�@H���ffffff.�SH�� H������H���@({�PH�C(H��
+H�@H��H�� [�DWVSH�� H�q(��H�ω�~+H�V9Ӊ�~f�)�H���VH�V9ډ�|�Hc�HH)�H�VH�� [^_�f��ffffff.�VSH��(H�Y(A��H��L�K8H�K@�ˁH��u/�{HuDH������H���@({�PH�C@��H�C@�@ٸH�S@H�C��CHH�H��([^�H�H���@(+��ff.�WVSH�� H�A(H��H��H��tZH�����H�p8H�@H�H�PH�5���H�PH����H�P H�o'H�P(H����H�P0H�� [^_��H�AA�P1�H��H�C(H�CA�1�H��H�G@H�C(�s���ffff.�WVSH�� D��H��H�ׅ�t\H��tWH�F(H��tfH���H�XH�8H�PH���H�PH����H�P H��&H�P(H�T���H�P0H�� [^_��H�H���@(+�H�F(H��u�H�FA�81�H��H�F(냐WSH��(��PH��L��H�AtH��@,P�@(
H��P0H��H��8tH�H���@,8�@(H��x0H����L�L�CH�ߺ8�]@���f@���w��1������H�t
�H����t	f�H����t�L�L�CH���C �8H��+H�CH�C(H�ChH�CpH���H��?ǃ�dH�Cxǃ�dHǃ�ǃ�dHǃ�ǃ�dHǃ�Hǃ�Hǃ�Hǃ�Hǃ�Hǃ�Hǃ�Hǃ�ǃ�ǃ�?Hǃ(H�C@�C$dH��([_�H�{��7@�������f�H����@�������D���H���w���fffff.��'ff.��'ff.�1�L�DpM��tA���H��H�� u�0�L���M��tA��L���M��tA��H��H�� u��fffff.�VSH��(�A$H�ˍP�������gtH��B,H��B(�H����x�}H����\��tT1��
��\��9�vCH�CH��t�p�PH��H���1�H��P��u�H�H�ك��@(���\9�w�H���H��PH����xt�H��H��PH�C(H��P H��H��([^�N&�A49�Ds�H��@(E��DATUWVSH��0H�ϋ�DL��E�̋G$��uT�H���wLH��E��H���P(H��E��H�h0t!H�^A��I��H���H��H���L9�u�H��0[^_]A\�H��A,H��A(�T$(H����T$(�ffff.�SH��0D��D�A$H��E��u�H���v'H��A,H��A(�T$(H��D�D$ �D�D$ �T$(H��H��H�@(H��0[H��@H��H�@0H��f�SH�� �A$H�˃�dtH��B,H��B(�H�H��P H�C(H��PH���cQH��H��P H�C(H��H�@ H�� [H���AUATUWVSH��(H�i(H��H�EH�M��(D��)D��*H����H�����H��H��D�!��H���H������H�����H���V4��H��D�D�H���V4��H�����H���V0�H��D�D�H���V0��L�iH�x�A�E��H����I����E��B�\#��F8H��P,�V0�P0�V4�P4�V8�@(f�P8��PH��@�x���V4��t�F0���>H�H���@(!��F8�@9�tH�H���@(��F8H�� H���w���E1��XfDI��A�E�H��I��H��A���CH��P,�S�P0�S�P4�SH��`�@(g�P8��PD9f8��H��D�c��A�EH�����I��A�E�ƒ���H���C�S�o���H��U����L�mH�}�X���@H��U1҄�tfH�MH�E���H���V4����H��U1҄�t?H�MH�E�V4D�D�H���V4����H��U1҄�tH�MH�E���D1҉�H��([^_]A\A]�H��U��t�L�mH�}A�EH�������H��U��t�L�mH�}�	���DH��U1҄�t�H�EH�MH����$���H��U1҄�t�H�EH�MH��D�!����H��U1҄��_���H�MH�E���H��U1҄��B���L�mH�E�S����F8���������H��@��@��L�mH�}H��([^_]A\A]�f�H��U1҄����H�MH�E�V0����H�H���@(<��<���H�L�N�L�@H��I��A�H��H�� �F8�^����VSH��8E�A��
H��H��v/�:J��H��@(OD�H,H��H��H�@H��8[^H��A��vԀ:JuπzFuɀ~XuÀ~Xu��~u��F<�v<�_<H��H�@([�V�P,H�D�H0��zF�t����zIu��zFu��zu�Ɓ`�R��a�F��b�F��c�F�N	���f��d�F
�N��Ȁ�f��ft7H�H���@(z��a�P,��bH��P0H���D�L$(�PD�L$(��aH�H�ىP,��b�P0��d�P4��f�P8��c�@(Y�P<�D�L$(�P�N
1�1�
ND�L$(uU����A���@D9�tH��@(Z�a���H��8[^��@(n�N���H��@(p�?���H��@(o�0���H�H���@(\�V�P,�V
H��P0H��D�L$(�P�F�V
D�L$(�k����ATUWVSH�� H�q(H��H�FH�H����I���9I��tsH�i@���}����H��I��H�ٍ|:�H��B,H��B(]��x0H��P��H�.L�f�~H�C(��H��P ��H�� [^_]A\��H��1�V��t�H�.L�f�y����H��1�V��t�H�H�F�I����ATUWVSH�� H�y(H��H�7H�_�'fD�H��H��<�tPH��@�@ H�7H�_H��u�H��W��t`H�7H�_��H��W��tMH�7H�_D�&H��H��A���uH��u���f.�E��H��@u!�@ H�7H�_��1�H�� [^_]A\ËP ��uD���H�7H�_��H�EH��P,�@(w�����H�ED�`0H�E�PH��@�@ �f�H��@Hǁ ǁ�ǁ�@�@�@ Hǀ��ffffff.�AWAVAUATUWVSH��XL�y(H��I�_M�H����H��E�0��I��A��E�0H����I��F�t0�A��D�t$(��L��$0M�eH��uH��A�W����M�I�_A�I��H��H��I�}E1��D$,H�E�T$,�@(R�P,H�E�L�D$ �PƄ$0L�D$ �'f.�A�H��I�����H��A�L9�t#H��u�H��A�W���OM�I�_��fD�D$(��$1H����D$(H�E�P,��$2�@(X�P0��$3�P4��$4�P8��$5�P<��$6�P@��$7�PD��$8�PHL�D$ ��P��$9H�EH���@(X�P,��$:�P0��$;�P4��$<�P8��$=�P<��$>�P@��$?�PD��$@�PH��PD9t$(L�D$ �dA���WE��tFA�F�H�|$0H�t1�f�A�H��I���H��H9�tH��u�H��A�W����M�I�_�̋T$(HcD$,D)�D$,�T$(H����t�l$,HcD$,H����|$,��H�H����I�UH�t$0H�I�UH�PA�U�PH��H�z@���"@���7@���H��1����H�t	����t�f�H���t���|$(�0����L$(���-M�I�_��	�1�H��X[^_]A\A]A^A_�f.�H�EH���@(	L�D$ �L�D$ ����H�E�T$,H���@(�P,H�EL�D$ �L�D$ ���fDA�W��1���t�I�_M�H��E�0�G���H��A�W��1����^���M�I�_�,����D$0H�zH��@���B���������H��f�H��@����������H���H�����H��L�D$ �UL�D$ H��D���H�EH���@(L�D$ �L�D$ ���f�AWAVAUATUWVSH��H��H�΅����+����H�H���@(>�X,H��džH��@�x��H�~(H�GH�H���=H����RH�����H�h�L�b������������L�'H�o����`�������Q������������1�����H�H��X,�@(FH���+����H��������tX��냁���
���������������u�E1�E1��H���D�������1�H��H[^_]A\A]A^A_�f����������T���������/���H�^(H�CH�H���NH��D�"�uH�j�UH�x�A���Ѓ�tH�H���@(�H��H����H��D�e�)H��S���?���H�+H�{��������������������	L�n(I�}I�UH����
H���� H���*��L�r��H���l(�����H����H��A��@I�FD� L�pH���H�����H��X,�@(QH�E��D�x0H��P������'D��A��Hc��D��+A8Ĉ�;�n���H�H���@(D�x,H�����X�������
M�uI�}����f.�����s���H��@H��P(�����������f.�H��W������H�GH�H��������H��W�������H�H�G���H��H��X,�@(^H��P�8���H��@�� ���H��Hc�T�0�������T���A�E1�1�H���}���������4���E1�E1����H��H,�@(7H��H��X0H���*���H�������������H��@L�n(�xI�mI�]��H����H��D�u��H�EH���(�iH��H�{��L�`H�H��E��A��@��A����@(i�P,H��T$<��P�T$<�DA9�������������)�sdž�H����A�$H�������I��A�$H�������I��A�$H��H��I���ƒ�����H��������P,����P0����P4���@(k�P8��PD�L$<H��@E���@t���M�eI�}�dž�b���H��H���@(W�Pdž��9���H���������������H��H���@(h�PH��@�x�1�Ƅ+Ƅ;ƄKH��H��u�H��@dž\�F<ƆjƆ`ƆaƆbƆcfdždfdžfƆhƆi�@�.���f.�L�~(I�I�H���H����@H��D�2��H����H�jF�l0�E���=H��uH��A�W������I�/I��]H�H��H���H���@(SA�܃��X,H�A��D�`0H��P���Hc�H��L�t�M���'A��E���D$0@D�l$<��A����L�-�*1��AH��tVH��D�UtlH���EA��H����H���IcD�H��9\$0fA�F��E��u�H��t`�MH��H����f�H��A�W������I�I�/H��D�Uu�D�T$(H��A�W��D�T$(���I�/I��r���f�H��A�W������I�/I�눃|$<?�'���1�fA�H��H=�u�D$<�D$0�D$0����-�
D�D$0E�����f�H��x|~hM����H�A�UH��P,A�U�P0A�U�P4A�U�P8A�U�P<A�U
�P@A�U�PDA�UI���@(_�PH��P��u�D�l$<D+l$0D��+D$0E��DE�E������E��tH�H���@(�I�/I����H�H��X,�@( H�����1�f�fA�H��H=�u�T$<��T$0�D$0����-��H���*Hc�H���t����������E1�A����H��A�U���1���I�EI�]����H��A��D�eH����H���H��A�H��@(TD�`,H��PD��\H�+H�{���H�H���@(?�����L�-;�*�7���L�-O�*�+���L�-��*����L�-��*����L�-k�*����L�-��*���f.�H��A�U���e���I�EI�}���@H�H���@(�X,H����Hc�D��K�Y����H��A�U������M�uI�}�F���A�A����H��A�U�����I�mI�]����H�H���@(@����H�H���@(��D$<������v�����H����H��H�D�H�D$0��fDH��A�$��I���F8H�� H��E�4$I��D����H��~1D;:tB��H�J`L�@I��I��f�H��H)�D;|�tH��`L9�u�H�H���@(D�x,H��D��H���E��A��H��CH�H��D�SD�x,�S�P0�S�@(j�P4��PH;l$0�����H���,���H��A�U�����I�}M�eH��A�$����H��A�U���{�M�eI�}���H��A�U���_�I�UI�}�Y���H��S���D�H�H�C��H��A�W���)�I�I�����H��S����H�+H�C�u�H��A�W�����I�I����H��A�U�����I�EI�]����H��A�U�����I�UI�}���D$<������H��S�����H�+H�{�+�H���	I��H�D�����H��A�U���c�M�eI�}�a���H�H���@(��'���H��A�U���3�M�eI�}���H��A�U����M�eI�}���fDVSH��(A��H��v�:At,H�EȺH���@(PD�@,H�H�@H��([^H���zdu΀zouȀzbu€zeu��BD�JD�B
�r��A��B	��A�H��J�RD�H0D�@4���@(N�@�։H,�P8H�ٺ�Pƃh@��iH��([^�ffff.�AVAUATUWVSH��0H�i(I��H�uH�}H����H��D�7�H��A��D�7H����H��F�t0�A��
~?A�1���H��H���D H��A9�vMH��u�L��U����H�}H�u��E��E���A��E1�=�u(f�H�T$ E��E��L������/A��E)�=�t�=�tI�UL��B,I�E�B(F�E��H�}H�u�~
I�E(D��L��P ��H��0[^_]A\A]A^�U1ۄ�t�H�uH�}H��D�7��L��1�U��t�H�}H�u����H�T$ E��E��L������1��ff.�AWAVAUATUWVSH��8L��@H�q(I��I���H�.H�^H��H�D$(�ZH�D$(A��A��LpD�`A9�w�h�H��u2D9�sVH��H�.H�^A��u�L���V���H�^H�.H��t�A9�v��E��H��A�I��H��t�D9�r�D9�r�f�I��pH��u�H��H�H��u�H�D$(H�H�D$(�xH�PD)�A��IDž�=�tt=�tTI�A�L���B,I��B(]�D�`0I��P��H�^H�.�~I�G(��L���P ��H��8[^_]A\A]A^A_�A��E��L���;����f�A��E��L�����1��H����H���}��H��@���}H����H���|8�����A��=���-�H�E����A9�I�GL��DG�D��L�B ��PH�D$(H�T$(H�A��I�։zD�bI�� �B1�L�rI���ADž���H�D$(I��p����V�����H�.H�^�#���L��1�V������H�.H�^����E1�1��S���E����C���@SH�� ��H�˅�tNH��@�R���9�tMH�C(H��P(1҄�tH��@�B�����B���H�� [�f.���1҄�t㋃�H�H�ىP,�@(d�H��Pǃ�fDATUWVSH�� ��H���H�ˉp,�@(|H��P0H�������P�G�������G������D���CH�H�ىr,H��B(c��@0H��PH���_����������~���0�����wn�W�����9�t^�G���9�tO9�t�A9�t�H��H�ىp,�@(cH��@0H��P�ǃH�� [^_]A\��H��H�ىp,�@(cH��@0H��P�H�� [^_]A\�1����SH�� H�A1�A�H��H���H�
l�H��@ǀ�H�H�HH����H�
f�H�P1�H�H(H�
U�H�LP0DŽ�H��H��@u�H�d���H�P0H���Hǃ ǃ�ǃ�@�@�@ Hǀ�H�� [�f.�H�AL��@�@\�� D9�AM���t4��
v��w��������L�Q���u&M�Q(A�������u-L��������t�D�� ���A��wQMc�O�T�0C����Á��L�N�u���f.�����u����D�� ���L����A��v�H��@(F�P,H�H�H��D���f�L��@���t1�� �����wH�M�D�0�H��@(F�P,H�H�H���M�A(Ð����������SH�� H�AH��H��t��PH�{ u�C$dH�� [�@�C$�HǃpH�� [��SH�� H�AH��H��t�PPH�C�C$H�� [��H��(H�AA��1�ƀ�H��(�f�H��(H�AA�1�ƀH��(Ð�AWAVAUATUWVSH��8�B�zH��H��E��D�r����9B�‹C NSD)�9�N‹SD)�9�O…�~~D��1�L�k0�<fD�S8�S�CE��9�~Z)�K9�NЋC �)�9�OЋC)�9�N…�~6A��H�Hc�D��E��E��H��L��L��D�|$ u��S0�S�CE��9��H��8[^_]A\A]A^A_�AWAVAUATUWVSH��8�z�BH��H��E��D�r������9B�‹C NSD)�9�N‹SD)�9�O…�~{D��1�L�k0�9�S8�S�CE��9�~Z)�K9�NЋC �)�9�OЋC)�9�N…�~6A��H�Hc�D��E��E��H��L��L��D�|$ u��S0�S�CE��9��H��8[^_]A\A]A^A_�AVAUATUWVSH�� L�aI���ɚ;I�Ή�L����H�؃�tH��H)Ã�vI�L���@(�h,I��Hc�M�L�`M���M�QL9�w�n@L�PL9�vgI��I�H��u�H�e�*H�{M��H�4��ɚ;H)�H9�HG�H�>L����)H��uzH��H��1w�I�L���@(8�@,I����L��H�PH�I)�L�PH�HH�DH�� [^_]A\A]A^�f�H��@(8�@,H�����DA�$�L��M��A��$�H�H�@L�PtI�E1��{���I�D�`1��o���H�d�*H�{E1�H�4��
���@UWVSH��8H�q��H��D��D��tH��P,�@(H��T$(��T$(A��H���.�����$�@�x$�@&H��h�P��$��PH���H�P(H���H��8[^_]�ffff.�UWVSH��8H�q��H��D��D��tH��P,�@(H��T$(��T$(A��H�������$�@�x$�@&H��h�P��$��PH���H�P(H���H��8[^_]�ffff.�ATUWVSH�� H�Y��H�ω���H��@(�P,H��Lc�I�D$H��H��H��u�/�H��L�BLBH��H�*I�pI���')��H��u�I��J��J��H��u�)�H��L�BLBH��H�*I�pI���3')��H��u�H�� [^_]A\��e���H���H��u�/f�H�v(H��t�~&t��F&H�V0H���V@H�v(H��u�H���Hǃ�H��u�'�H�v(H��t�~&t��F&H�V0H���V@H�v(H��u�Hǃ�����f.�SH�� �H�����1�H�����H�SH��A���R&H��H�CH�� [�&ffff.�AUATUWVSH��(D��$�D��H��H��E�$9D;bw
D;J��H�EH���@(��C9�rCA9�v9�{&��{%��;{��1�D��+SI‰CE1�H��H���6����s A9�vL9���E�����{$���C�k)�A)�H��D9�sH���I���H��1��GOA9�w�CE��t�C%)�H��HH��([^_]A\A]É{�p���@H�:�(��������E���|����{$D�c �x���E��t9�C�A�H��H���n����C%�
���DH�EH���@(G����H�EH���@(��C�]���H�EH���@(��fffff.�AUATUWVSH��(D��$�D��I��H��A�,9;jw
D;J��I�$L���@(��C9�rC9�v8�{&���{%��;{��1���+SI‰CE1�H��L������s 9�v>9�v~E�����{$t{�CD�c)�)�9�sH���M���H��1��M9�w�CE��t�C%)�H��HH��([^_]A\A]É{�f�H�:�7����"����E��t��{$�k u�E��tB�C��A�H��L������C%����fDI�$L���@(G���I�$L���@(��C�[���I�$L���@(��fffff.�UWVSH��8H�yI���ɚ;H�Ή�L��wuH�؃�tH��H)Ã�vH�H���@(�h,H��H�SH���"H��tY���Hc�H���T���H��H�XH�@H�H��H��H��8[^_]�H��@(8�@,H���p���H�H���B(8�B,H�H�D$(�H�D$(�ff.�AVAUATUWVSH�� H�q��ɚ;D��I��A��Hc�1�D��H��H�����9�A��D��M�L��I�����������I��tSH��1��9�vGA��D��L��A)�D9�AG�A��L�������tىى�A�Ѓ�K��H��u��9�w��L��H�� [^_]A\A]A^�I�$L���@(H��b���f�AVAUATUWVSH�� ��ɚ;H�qE��H��A��Ic�1�D��H�����9�A��D��M�H��I������>�����I��tJ1��9�v?A��D��H��A)�D9�AG�A��M�������tىى�A�Ѓ�K��L��u��9�w�L��H�� [^_]A\A]A^�H�EH���@(H��k���fDATUWVSH�� H�y1�1�H��H���H��u�-H�@(H��t$H�8u�P�H���PH�@(��H��u�@H���H��u
�2f�H�@(H��t'H�8u�P�H���PH�@(�����H��uڐ���D���A���H��A�ʚ;��9��H���H��u�x�H�[(H��tgH�;u�D�K�K1�A�A���A9��D�KD�C�H���!���H�����C�C �C%�CH�[(H��u�f.�H���H��u
�df�H�[(H��tYH�;u�D�K�K1�A�A���A9�|jD�KD�C�H������H�����C�C �C%�CH�[(H��u�H�� [^_]A\���A�������DO�����D�CH�S0A��E���KH��A����C&D�K�n���@D�CH�S0A��E���KH���e�C&D�K�����VSH��8H��H�A�J��H��D$(��H��H���-H�F�H�
�*�C\ʚ;H�ChH�CxH�H����H�C`H�CpHǃ�H�CH�h���Hǃ�ǃ��H�CH�h���H�CH���H�C H�R�H�C(H�����H�C0H�����H�C8H����H�C@H�F���H�CHH�����H�CP�D$(�CXH�^�FH��t>L�L$/L�D$(H�9�*H���D$/x��E��~�D$/<Mu�D$(i��i���CXH��8[^�<mt�D$(��H���H�H���@(8�@,H���������������H��8H��H��fffff.�SH�� H��8H�mH��H��@ �@!�@(H��P H��@H��Hǃ�H�� [�DAUATUWVSH��(���H�˃��@�P�������x�K0���a��|�K4������F������ǃ�����H��1�H���1�D�A�A$D�IA��D��D�A8A��D�I<�AD�A�y@A��A ��DE�1�A���D�AH��DE����
D�IL����~/D���D�O�A�8D��HcЃ�9ȉ���u�G�DD��������H��9��X�����~#I��1�M��$�I�}Ptg��I��;��|�H��HH��H��(H��H��(H��8H�RH�H��([^_]A\A]�f.�H�H���@(��9���A�E��Hc���H�����H�C�H��A���H����H�Ǻ�H����@���@����������H�t	�����tD�fD�H����t��I�EP���H�H�ىB,H��B(6��e���H����A�Q$D�A����A ����QD1�A���A8�A<�A@�AH��DE�D�ALǃ�ǃ��d���H��B,H��B(�@0H���D����H�xH�����������H���H��������H��f�H������f�ATUWVSH�� H��8�H�ˀ!tA��H�� [^_]A\�@�G(��������D���E���Q�G(DH��@H��P����t���u��W(�G!��t!H��@�xt�H�H���@(=��z������9���h�������]���� t�����t�H������@����H�H���@($��ׁ{4�	�{0�~H�H���@(*�@,�H������tH�H�ىB,H��B(��C8��
�6��ǃxǃ|H�� ~eE1�fD�E�P���w�U��~��~H�H���@(��E�U��x9�L���x��|9�L�A��H��`D;c8��||���(�i��)tD���E���P�����?�A�������Q������������H�9�*ǃǃ�H��f�D�K8������H�� E����E1�U$�U(A����x�K0�M��	�E��|�K4���M�	�E �K0�M��x�	�E,�K4�M��|�	�E4�E0H�EPH��`D;c8���z�����|�K4�X	����C89��|E��)u<H��8�@ ����H�'�*ǃǃ?�H����H��8�@ ����H�H�ىB,H��B(�@0
H���C8����G(�n���=���e��c����x����P�UH����H�ىP,�@(���H��P0H�����P4H����P8H�����=���=��F�=�u�H�.�*ǃ
ǃ?�
H�������#����0ta���[���H�+�*ǃǃ�H�����H��*ǃǃ�H�����H�s�*ǃǃ0�H���^���H�g�*ǃǃ#�H���2���H�;�*ǃ	ǃ?�	H������H��*ǃǃ?�H������H���*ǃǃ?�H�����H���*ǃ
ǃ?�
H�����H���*ǃǃ�H���V���H�?�*ǃǃ�H���*���=�tc=������H�!�*ǃǃ?�H�����H���*ǃǃ?�H�����H���*ǃǃ?�H�����@SH�� ���ADH�ˋIH��9��D�	D9���A�D9���D��D9��'A�D9���E�D9��JD��E��A)�D9���D9���A�D9��_E�D9��D��F�AD9��@D�	E�A��D9��lA�D9���A��A��E��E)�D9��A)�D9����C0����)���Ct�C4������)��ǃ��Cxǃ��3�K0�h���K4�Ct�Wǃ��Cxǃ��K8H�� ��~6��H�B`D���H�ID���H��H��H��`H9�D�J$D�B(H��u�H�� [�fD�K0����K4���Ct���ǃ��Cxǃ��w�����K0�I��K4���Ct�I�ǃ��Cxǃ��5����K0���j�K4���Ct���Vǃ��Cxǃ����f.��K0���%�K4���Ct���ǃ��Cxǃ�����C0�@����Ct�C4���@���ǃ��Cxǃ��t����K0����K4���Ct���ǃ�	�Cxǃ�	�9����C0��)��h�Ct�C4����)��Nǃ��Cxǃ����K0���'�K4���Ct���ǃ��Cxǃ�����C0������Ct�C4�������ǃ�
�Cxǃ�
�v����C0���H��Ct�C4�����H�ǃ��Cxǃ��5����C0�@���c�Ct�C4���@���Hǃ��Cxǃ�����C0�@����Ct�C4���@���ǃ�
�Cxǃ�
����K0�����K4���Ct����ǃ��Cxǃ��p����K0A�A����K4�Ct������ǃ��Cxǃ��)���f�SH�� H�A1�A�0H��H���H��8�@ �@!�@(H�H�3�H�PH�x�H�PH���H�PH�� [Ð��A��B�D����A���ffffff.�A��B�L��ʉ��A����)��f�ATUWVSH�� �D$p�t$x��~5Hc�McɃ�L�$�K�,�H�<�1�H�LI�I��H���B4H9�u�H�� [^_]A\�f.�H��E��H��I��H���4�����������SH�� H�A(H��L�A�H�PI��L�H��H��H�PtH�� [�P��u�H�H���@(H�H�� [H��VSH��(H�ˉֺ������H��H��([^�fffff.�����f�VSH��(��H��H�����Z���@��H��H��([^�H����VSH��8A����H��D��vH��@(�T$(��T$(H���_����VH��H��8[^두AUATUWVSH��(Hc�H�Ή�H�|�pH�������1ۅ�x)L���E1�A�f�Kc�f�<GAC�I��D9�}逿�t��H��([^_]A\A]Ð��H�������ۋ��uj��H�������H�����_��������xUE1�1��A��H����?���I��9��|3H�����Jc D�,Gt�D��H��������T�f���Ƈ�H��([^_]A\A]�H��P,�@(6H�����UWVSH��(E��H�ω�Hc�t+H������H������tH��([^_]�DH������fD��H��1����1��LH���H��u�UH�������H��1��G�����TH��H���/���H��u��t��0�H���TH��H������H9�u�ƆH��([^_]�H�H���X,�@(4H���5���fff.�WVSH�� ��1�H���
���H�|�pt
��H�����H��H��u䀾!uA0�H��ޠ��t
E1���H�����H���tA���H�����H��H��u���H��H�� [^_���WVSH�� H������V\H��TR����~T�����~P��|�VXH�������VTH������VPH���{����V\H������V\H�^h��~71��H��������SH���S����SH��H��`���9~\�H�� [^_�fDH�H���@(*�@,��H���f���f�ATUWVSH��@��!L��H����D��`1�H��E��~>���H��h��u������OD���E���$��H��9�`�A�D$89�0t3��H���6����H���i�����0H���[�����0A�D$8��H��������`H�ٍT�1�����`H�����D��`E��~_H��1�H��hH�ًU�p���D���1�E��uD���E��u�E�����1҅�t�U�H�ك��4���H��;�`|����H���������H���������H�����H��@[^_]A\����UA�H���
�������D�UE1�H�������H�l$0H�|$ 1���D�H��H��u틋`��~ID���D���0�E��H���huD���E��u
LcRB�D E��t	HcR�D0H��9��1�1�fD��TH����H��u��!�����H���d����T6H��1�����@�|5uBH��H������<7t��H��������3���3�H��������|5t��VH�������3H������f.�VSH��(H����H�������F8��8����@u	H��([^�f���H������H�������AH���)����dH�������oH�������bH�������eH������dH���x���1�H���n���1�H���d����C`���t1҃���H��H��([^���H�ٺ���H�ٺ�$���H�ٺJ���H�ٺF�z���H�ٺI�m���H�ٺF�`���1�H���V�����9H���G�����:H���8�����;H���)�����<H�������>H�����1�H������1�H��������f��H��H��([^����ffff.�����ff.�UWVSH��(�A\1�H�YhH�υ�~#1�fD�SH����H��`���ŋG\9�倿!u<��H���������H��������Hu2H��([^_]�fD��H����H�������Ht΃��t�H�����W���H������1�H����1�H��������H���҃�����1�H��H��([^_]����X�Q�������D�����H�Oh����H�Q`L�@�I��I��@1�L9�H��t<H��`�y�y�M����H�������&�����H�����������������u���������H���������H�1�H���@(M�P��!�������H�|�����f�SH�� H�AA�@�H��H�0���H���@8H�H���H�PH�-���H�PH����H�PH�����H�P H�<���H�P(H�����H�P0H�� [Ð������H���h(�H���8)�H���H(�H���)�D���fff.�H��@(3H�H��1��ffff.�Ð���������������%�-���%��-���%��-���%��-���%��-���%��-���%��-���%��-���%��-���%��-��H��(��t��t�H��(�f��[�H��(ÐVSH��(�=Cy't
�7y'��t��t?�H��([^ÐH��
.H�5�
.H9�t�H�H��t��H��H9�u�H��([^�����1�������������H�	�-H������H���fff.�H�������������SH��0H��H�
!�-����H���H�D$ tv��(H�
�-���H�
��-H�D$ ���H�T$ L�D$(H��H�D$(�s(H�L$ H�����H�L$(H���-�u����H���-�L(H��H��0[�H����-H��H��H��0[�fDH��(�G���H���H��(Ð�����������VSH��(�=��wA=��rj�1ҹ��'H���H���t	0۹�Љ�H��([^�=����wt=����=��t����H��([^�=�����=���=�u�1ҹ�a'H����H���t��0���s���=��tZ=��u�1ҹ�%'H����H����A����0���3���1������=�t�=���=���1ۉ�H��([^���1��&������Bf�������1��&������1��&���ffffff.�AUATUWVSH��(�_H��H�ŋ��-u��H��([^_]A\A]�f���u�H�
��*���-�
H���u�H�5��-�0L�%��-1�A��H���H�L�� �H��=��)��2H���-A��	�<ڋP�PI��H��D)�F�VH��H�� tH���2
H��u�H��u)��M���� I��H�
��-���-��.�������ff.�VSH��(H�H�ˋ����� ��CCG ��=��vG=���,��=��t]=����@H�i�-H��tGH��H��([^H���=��rI�1ҹ��$H����H��t���и����H��([^�fD�B�h�����@=�t���=�t�=��q���1ҹ�$H����H���R�������f�=��t�=���.����P���f�1ҹ�4$H����H����������C���D1�����f�=�t�=����������f�����#��������T@������#��������#���������������H��XH�e�-H��t*H�T$(H��$��T$0�L$ �\$8H�L$ H�T$@�АH��XÐH�
)�-�<#@ATUWVSH��@�9vaH�5`�*f.�L�a H�iH�yH�Y�!H�L�*H�H`L�d$0H�l$(H�|$ I��I��� 1�H��@[^_]A\�f��H�;�*Hc�H��H�5g�*�DH�5��*��H�5�*�t���@H�5�*�d���@H�5y�*�T���@H�5A�*�D�������1�������������VSH��8H�D$XH��H�T$XL�D$`L�L$hH�D$(�) H�
��*L�H`A��� H�t$(� H�H`H��I��� ��!�ffffff.�AVAUATUWVSH��`M��H��H��L��uH��`[^_]A\A]A^�DH�T$ A�0�'�-H�����D$D��uI��H��H��H��`[^_]A\A]A^�9���@t�L�d$\A�@H�T$8H�L$ H�-��-M��ՋD$DI��H��H��@A�Ń�A����E���]���E���T���D�D$\H�T$8M��H�L$ �ՐH��`[^_]A\A]A^�H�
��*I��0����ffffff.�ATUWVSH��0D���-E��tH��0[^_]A\�H�5ȴ*H���*���-H��H)�H��~�H��~jD�
��*E��uD���*E��tAH9�s�H�-a��H�|$,�KA�H��H�H���D$,�\���H9�r�H��0[^_]A\Ë
N�*��uH�G�*���u��C��u��S���gH��H9��;���H�=���H�l$ I������KD��S��I�H���M�tew$����H�
ӱ*��H�D$ �O����� ����@u�M)�L	L�L$ A�H�����H��H9�r����f.�D�L��H����A���uM)�M�L�L$ A�H���P����L)�Iу�L�L$ t�wl��u�A�H���)�����D�L��L	�A���u�M)�M�L�L$ A�H������X�����€t�H�����L)�L�H�T$ �@�� tȃ�@�*���f�����H�
|�*�?��������������������Ð������������H��(H��m'H�H��t��H��m'H�PH�@H��m'H��u�H��(�ff.�VSH��(H�s_�����t,��tH�5a_���ƃ�u�H�
����H��([^���@1�H�57_�D�ÍC��H�<�u�봋��-��t��@���-널���ATUWVSH��@H�m'H�2��-�+H�D$ H9�tH��H�mm'H��@[^_]A\�f�H�L$ �%�-L�d$ ���-����-���-H�L$0��=�-L��H3T$0H�������H1�H1�H1�H!�H��H9�H��tH��l'H��l'H��@[^_]A\�H��] �f��H�3��-�+��DUH��VSH��pH��H�
��-���-H���-E1�H�U�H����-H��I����H�E�H�D$8I��H�U�1�H�D$0H�E�H�D$(H���-H�D$ ���-H�~�-1�H�5��-�S�-	��M�-H�R�-H�l'H�E�H� l'H�E�n�-H�
�k'���-�{�-�	�H���]�-�H�EH�
�-H�EH���-�x��������UWVSH��(H�
��-�+�-H���-H��t3H�- �-H�=9�-����H��ׅ�uH��t	H�CH���H�[H��u�H�]�-H�
>�-H��([^_]H��UWVSH��(��-1���H�ׅ�u��H��([^_]ú��H��H��t=�(H�xH�
��-���-H��-H�
��-H���-H�C���-��H��([^_]þ����뚐SH�� ���-�˅�u1�H�� [��H�
��-�#�-H���-H��t�9�u
�ND�A9�t'H��H�BH��u�H�
T�-�f�-1�H�� [�fDH�HH�JH��� H�
)�-�;�-��H�BH�>�-H���ِH��(��tGr��t`�H��(�fD���-��uf���-��u�H�
��-���-�\�-��f����-��t'����-H��(�f��z�-��t����H�
��-���-������듐��������1�f�9MZt��DHcQ<Hс9PEu�1�f�y���DHcA<H�1�D�AD�IE��t6E��A��J�D	K��L�L�(f��HA��I9�wHH9�rH��(L9�u�1���WVSH�� 1�H���H��wgH�
���]�����tWHc>��H����H��P�H��t:�Ƀ�H�\H��H�|�(�fDH��(H9�t'A�H��H������u�H��H�� [^_��1�H��H�� [^_�SH�� H��H�
�������1҅�tPHc
���H�h��H��HD�@��t2E����J�TH��H�D�(�B' t	H��tH��H��(H9�u�1�H��H�� [�ffff.�H��(H�
���P���1҅�H����HE�H��H��(�f�VSH��(1�H��H�
���������u	��H��([^�H�
���H��H)��*���H��t�X$�����H��([^Ð���QPH=H�L$rH��H�	H-H=w�H)�H�	XYÐ��������������%�-���%��-��H���D$f(��D$H���|$�D$��f�$�,$��l$H��H���t�������L$�D$������%EfW�=t�\$f(��T$�\��f���H���f�VSH��)�$�)�$��L$8��$��D$8݄$������؉�������؉��5ɨ*��E��@����$�f(�f.�����E����������@�~���S݄$������؁�����fW����T$8H��$��\$@�D$8���f.��D$@z���\$@��5��*�!�T@����݄$��������H��$�fW�t&�T$8fW�H���\$@�D$8����f.��D$@z�u��T$8������D$8�\$@�H������f.Ǻ�D$@z����������������5h�*tR݄$������t!�������t5�5I�*�+���� ���������������f����f(�(�$�(�$�H�ĸ[^�t́�E���D���݄$���������5��*uB�\$@�N�!�D$@H���*��t$ �\$8��$��\$8���q����5]�*��T$81��\$@�D$8���f.��D$@zQuO��$��
n�*f.�r8f.h�*r.�\$8�D$8�,���$��"
f(����f��8�*H�\$p��$�H�t$`H��fT�H���L$P�D$P�|$`�\$@�dH��H���l$p�D$@���|$`��l$p�\$X�t$X݄$���������D$@�f����\$8������D$8��H��$����f.�z�I����m�*fW��8���@�������fW�� ����5,�*��������݄$����������$�t��*fW�f.���f.����������fW������땐��H��$�fW�t.�T$8fW�H���\$@�D$8���f.��D$@�g����a����T$8������D$8�\$@��
H�����f.Ǻ�D$@z����݄$��������t��������t��f(�����݄$��������t��������u���5�*����݄$��������t��������u���5ˣ*������������u!���5��*�����݄$��H���D��f(��x���݄$���������a����5e�*�T�����������5V�*�<���fW��3���f(��T������"�����������5$�*�
����̐���H��h)t$P�D$8�D$8�����E��th�����u^��@fW������5(�*���T$8�5�*�D$8f.����T$8��\$8�t$8f(�(t$PH��h�������5Т*u^�\$@��D$@fW��!H���*�t$ �\$8��T$8�6��@�����f.�f(�(t$PH��h�f��5`�*�fD�\������֐�����H���D$8�D$8����%E=��=t3�|$`H�L$pH�T$`� �l$p�\$X�D$X�\$8�D$8H�Ĉ�f��\$@��D$@fW��!H��*H���\$8H�D$ ��T$8�O��ѡ*���\$@���D$@fW��!H���*��T$ �\$8�T$8�
��D$@�]����H���D$8�D$8����%E=��=t3�|$`H�L$pH�T$`�p�l$p�\$X�D$X�\$8�D$8H�Ĉ�f��\$@�/�D$@fW��!H��*H���\$8H�D$ ��T$8�_���*���\$@��
�D$@fW��!H� *��T$ �\$8�T$8���D$@�]����H��)�$��D$8�D$8�����E��@�������ud���~�*t4���f�*t(�|$`H�L$pH�T$`�
�l$p�\$X�D$X�������(�$�H��f.��\$@��D$@fW��!�5�*�\$8H��*��t$ �T$8�0�f(�(�$�H���\$@��D$@fW��"�5��*�\$8H���*��t$ �T$8���f(��I������SH��p)t$`�D$8�D$8����%E=��=��=@�q�T$8�L$8f.
O�*�	�T$8�E�*�L$8f.�������H���|$�D$��f�$�,$����l$H����-|['��������������-x['����������������\$X�D$X�\$8(t$`�D$8H��p[�f������H��t1��\$@�Y�"�D$@�����\$8��H�e�*��fW���T$8��H�\$ ��H�\$8�D$8�|���f.��\$@�
�D$@fW��"H��*H���\$8H�D$ ��T$8�/���*�&���@����������\$@�
�D$@fW��!H���*��T$ �\$8�T$8����D$@������\$@fW��[
�D$@H�x�*��"f(��\$8�t$ �T$8���t$8�D$8��������H�D$�H���-� �H��8L�L$XL�L$XL�L$(�8	H��8��AUATUWVSH��hH��L��$@� H��D���H��H��M��H��u�f�H��E�I��H9�t
D�fE��u�L��$PH��A�M��I��u�#f�E�I��H��I9�t
D�fE��u�A���$P����$@��H�\$01�Ƅ$4A�H����-����H�I�*L�d$(�l$ M��I��H������-����1�A� L�Z�*H�����-��tw��umH��h[^_]A\A]�f���$@H�<unknownfDŽ$X>H��$P�P���fDŽ$@?�A����H�<unknownf�D$8>H�T$0�E����@��F��D�'H���*H�H`I���,��fffff.�UWVSH��8H��D�D$(H���H�L�H��H���H�L�D�ME1�H��D�D$(E��t(A�1��L��M��M�ZE��fD�CF�L�E��u�M�D�fB�E1�E��t*A�1��f�L��M��M�ZE��fD�FF�L�E��u�M�H��H��fB��]���H����H��H��8[^_]�������H��X�D$(�D$(�������uNfW�f.�{L�*��D$(�D$(�T$H�D$H����������u(�T$(�D$(f.�zt�\$(�D$(H��X�u����\$0��D$0�"�\$(�D$(H��XÐ���������ATUWVSH��P)t$0)|$@fW�f(��f.�z,u*���d�����\f(��S����;�����1�f.����ۉ޽�dH�T$,A��f(�A��D���D$,�P��փ�@����*f(��X��\��^��*��Y
��*�\
��*�X��*��Y��Y
��*f.
��*����*f(�f.�wa�|�*f.�v�����t��*��^�f(�E����*�	��D�t��Y�t���Y�u�����f(�t&f.�z
�5��*t�5Ø*fW���5��*f(�(t$0(|$@H��P[^_]A\Å����������*��Y
��*����f.��޽�������@�X�*�����fW��g���f.��s��*�"�E�������*�^�f(��V����5�*�I���f(����D�
ȗ*�^�f(����������������?��(\��?����*������r7������������Et���H��H�A�9�����H��H�A�9�z�����H��H�A�9Ð����*����E �t?�H���|$�D$��f�$�,$��l$H��������������H��H�A�9ét����H��H�A�9Ð��������*���uH��H�A�9���������u����H��H�A�9Ð��*���t��������u����H��H�A�9��?��(\��?���*��%�����������Et���H��H�A�9�����H��H�A�9Ð���������������%�-���%�-���%2�-���%��-���%��-���%R�-���%2�-���%"�-���%Z�-���%
�-���%��-���%j�-���%*�-���%�-���%*�-���%��-���%��-���%�-���%��-���%��-���%j�-���%��-���%��-���%��-���%��-���%��-���%B�-���%��-���%��-���%��-���%��-���%b�-���%��-���%B�-���%b�-���%*�-���%�-���%��-���%��-���%��-���%��-���%��-���%��-���%R�-���%��-���%r�-���%��-���%��-���%�-���%r�-���%:�-���%��-���%Z�-���%*�-���%R�-���%��-���%��-���%��-���%��-���%��-���%
�-���%��-���%z�-���%��-���%:�-���%�-���%"�-���%"�-���%��-���%��-���%��-���%��-���%�-���%�-���%��-���%�-���%��-���%�-���%:�-���%Z�-���%��-���%j�-���%r�-���%b�-���%z�-���%
�-���%z�-���%z�-���%*�-���%�-���%j�-���%��-���%��-���%��-���%��-���%��-���%�-���%�-���%z�-���%j�-���%��-���%��-���%��-���%��-���%Z�-���%��-���%
�-���%:�-���%j�-���%��-���%*�-���%r�-���%��-���%��-���%��-���%��-���%��-���%�-���%B�-���%r�-���%��-���%��-���%b�-���%��-���%"�-���%R�-���%R�-���%��-���%z�-���%��-���%b�-���%
�-���%��-���%B�-���%J�-���%��-���%�-���%z�-���%j�-���%��-���%J�-���%J�-���%��-���%��-���%��-���%"�-���%�-���%
�-��AW�8�AVAUATUWVS��H)�)�$��)�$��D)�$��D)�$��D)�$ЄD)�$�D)�$�D)�$�D)�$�D)�$ �H��$�lA��I���L��1��H�'�H�HDŽ$�lHDŽ$�pHDŽ$P�HDŽ$X�HDŽ$`�HDŽ$�tHDŽ$�xHDŽ$}�H��$�p��H��H��$�t��H��H��$�x��H��H��$}��H�I��H�JH��$p�DL��H��$�H��$p�
�D
�r'E1�H��H��$x������H�H��$�DŽ$H�����DŽ$P������D�$X�DŽ$������D�$`��D�$h��D�$p��D�$x��D�$���D�$���D�$���D�$���D�$���D�$���D�$���D�$���D�$���D�$Ȃ�D�$Ђ�D�$��D�$��D�$���D�$��D�$��D�$��D�$��D�$ ��D�$(��D�$0��D�$8��D�$@��D�$H��D�$P��D�$X��D�$`��B��H��$��E1�������-��A���x/I�G�8-�"fW�������D�p'DŽ$�DŽ$�DŽ$��DŽ$�DŽ$���$��$�DŽ$���$DŽ$�fE(�DŽ$�fD(�DŽ$�DŽ$�A�DŽ$��Dp'DŽ$���$�1ۉ�$�DŽ$��DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$���$�fD(�DŽ$�fD(�fD(��=to'�HH�pA����u-D�G1�A��E9�~I�T��:-tD�oIc�I�4�f.��@<?��<v�|<A�g<Mf���<D��<C��<Z��<q��<b��<n�U<u��<U�6<R�-<V�+<Kt<k@�%1�<k��H����$��� �<Z�S��<r���3<hf��<p��A�EA9��5!H�I�����A�E��$A9��!H�I������A�E��$A9��� H�I�ǀ9-�� ���A�EfD(�A9��� H�A�}I�����A9�fD(��� Hc�I�ǀ9-�� �k���DŽ$�fD(��f����A9��Hc�I�׀8-����A9���Hc�I���:-��H��$�tA��H������H��$(�Ƅ$�x�|L��$�xH��L�����L���H����������!�%����t������D�H�QHD��H���.ti3�A��$}u0L��$}H��L��L����1�H���H��I�D
��.icm�@��$���$�����$���$��f(��$���t��$���D��$�E��t+��$�����$�u��DŽ$��D��$�E��t��$�����$�pt��$�l����$����$�E�$���$��`"��I��H��d'H���P@H��d'L��A�V@L��L��A�VX���|'A�F����'I�VH�z��'����'1�L��d'L��A�V`����'Lc�I�FH�=e'�H�@(J��H�����H��d'H������xA���DD�$��E�$���$���$��8
1�L�7e'L��A�V`����&fD.���I�FH�=f'�H�@(N�,�L����5H�.h'L���w��tH�Td'L���d���m
H�=d'L���M��$���	��$�t��$�t��$��&H��$�����$����D�$�D��$�H��$�H��$����$�H��$}�D�$�H��$�H��$�M��$�H��$��DL$`A��H��$���$���$���$�L��$���$���$��L$x��$��D$h��$��T$X��$��L$P��$��D$@��$��T$8��$��L$0L��$��D$p�D$H�D$(�T$ D��$���$���$��f��L��A����(�$��1�(�$��D(�$��D(�$��D(�$ЄD(�$�D(�$�D(�$�D(�$�D(�$ �H��8�[^_]A\A]A^A_�H���SD��H��$���A9������H�
�_'�Q��H���H��$�D�������H���V$H��$(�D������H����&H��$0�D������H���=$L�Df'1������A��3v ��Hc��D����$D���J���D��Ic�L��@DŽ$8�DH���f.�DŽ$H���DŽ$H���DŽ$H���DŽ$@��DŽ$<��DŽ$D��DŽ$H��H���B#��B�<-vZH�
nU'������H���v	�<f����<mf�����	<hf���	<l��H�
#U'�����H�
�e'��Hc�H���A��tH�
s`'�~O����$���	DŽ$�DŽ$��M���H�����<i�<p�A	<o��
<c�<P�G<S�D��DŽ$������a����c�K��f��L"DŽ$�DŽ$��d�������1�L��`'L��A�V`��fE(������I�VH�H�R(H���y��
�e'�����fD(�������$`H��$`H�
�`'f(��^����1�L��`'L��A�V`��xiI�VH�H�R(H���:���~R�*��
je'f.�r@��$��~
�*�$�f.��k
;�$�}��$�H�
t`'A����M��1�L��`'L��A�V`��xiI�VH�H�R(H������~R�*���d'f.�r@��$��
�*�$�f.��
;�$�}��$�H�
?`'A���_M����$��l��d'�*�$�f.��Q���<
�^5^d'��$p���$����5?d'�*�$�f.��p�����^���$x�H�
ףp=
�?H�
ףp=
�?H�@H��$��H�@DŽ$��H��$����$�H��$��H��$��؃���$�����$��H��?HDŽ$��H��$��H��?HDŽ$��HDŽ$��H��$����$��.��$���������$�����$�����$���1Ҁ�$�pH��$�pH��$�l��$@�D�$��D�$�D��$�A��HE�1���$�lH��$��$�HE�H��$���$�H��$��$�H��$XH��$����$�H��$PH��$���$H��?��$�H��$H��$�H��$�H��$��$8H��$�H��$���$�H��$0H��$P�H��$(��$���$�H��$�M��$ H��$P�H��$�H��$�:H��$��$�H��$�H��$}��$���$���$�H��$�H��$p���$���$��DL$xH��$���$�D��$��L$X��$��D$p��$��T$`��$��L$@��$��D$P��$��T$H��$��L$(��$��D$8��$��T$0L��$�1�L��$��D$h�D$ �
����1�L��Z'L��A�Vh���DŽ$����DŽ$��?���H����H���3�f.�fD(���f.D`'��D�����<M�fD�<H�T<L�X���D��DŽ$���H��Y'L�����������$�����$��~��$��a��$��H��$�lE�$�1Ҁ�$�p��$@�D�$�DŽ$��D�$�D��$�HDŽ$��D�$�DŽ$�A�ى�$�H��$�pHE�1���$�lH��$��$�HE�H��$���$�H��$��$�H��$XH��$��H��$PH��$���$H��$H��$H��$�H��$�H��$�M��$8H��$�H��$���$�H��$0H��$P�H��$(��$���$ H��$P�H��$��$���$���$�H��$}��$���$��DL$xH��$���$�D��$��T$p��$��L$`��$��D$X��$��T$P��$��L$H��$��D$@��$��T$8��$��L$0��$�L��$�L��$��T$ ��$�HDŽ$��D$h�D$(�t
��y�DŽ$����DŽ$�DŽ$����D��DŽ$����D��DŽ$���D��DŽ$���D��DŽ$���D��DŽ$��z����xI��L��$p����<s��D��DŽ$��@�H�
�V'�E��DŽ$�DŽ$��|���(I��L��$x����DŽ$����<l�
<L��<a�*<I��<f��<i��<o��	<r�#<S����
��H����$���H����҃�0��	�}H�����u�H�����A��A�A���c�7��$��_��$�D��$�uD��$�D���"��/H����H����H�PH��$(��]���$�l�5�H�
qS'�LD���$���$�l���H�
S'�-D�����H�
T'�D���D���$�l��H�
�S'�C���
�H�
QS'������DŽ$�������$�����$��Q��$���$������$�D�$����$����$�D�$����$���D�$���<���H���~H���.�fD.�fD(��7f.FZ'�)D����D��DŽ$���D��DŽ$���<Nt'<U�D�D��DŽ$��x�<ut�<n�%�D��DŽ$�DŽ$������N�DŽ$��>�DŽ$�DŽ$��#�<P�T���<H�TH�
qI'���i��1�L��S'L��A�Vh������1�L��S'L��A�V`���p���(DŽ$�A�DŽ$��<�H���u�<Y��
��<L@����<Gf���	H�
�I'������H��?H��?I��?HDŽ$��HDŽ$��H��$��H��$��L��$���U���D��DŽ$���H�
�T'�1��w���H�
�T'� �����H���H��D���7���$���D��DŽ$�����$��H��?H��?I��?H��$��H��?H��$��HDŽ$��L��$��H��$����H����
H��D�������$��%�f.�W'�P�G‰�$����$���I��?I��?I��?H��?��$��L��$��HDŽ$��L��$��L��$��H��$������$�H�
\S'������$�H�
�R'������D��DŽ$��\�D��DŽ$��I�fW����D�V'DŽ$�DŽ$�DŽ$�A�DŽ$�DŽ$���$��$�DŽ$���$DŽ$�fE(�DŽ$�fD(�DŽ$�DŽ$�1�DŽ$��D�U'DŽ$���$����$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$�DŽ$���$�fD(�fD(�DŽ$�fD(����D��DŽ$���<xt+<z�����D��DŽ$���<R�#���<X�j���D��DŽ$��d��\H������H��H���?����>���H�����<4tH�
�E'�����D��DŽ$���H����H��E'H���\�����-H��E'H���E������H�tE'H���.������H�_E'H���������H�LE'H��������EH�8E'H����������H�'E'H����������H�E'H���������H�E'H��������sH��D'H��������H��D'H���v������D��DŽ$�
DŽ$�DŽ$����H����H�nD'H���-������H�\D'H��������-H�GD'H���������H�7D'H���������
H�)D'H����������H�D'H���������H�D'H��������zH��C'H���������D��A�
DŽ$���H�
�?'�g��<m����<g��5<l�h���D��DŽ$����H���NH��D'H��������	H��D'H��������XH��D'H���������#H�tD'H����������H�eD'H���������H�UD'H��������H�ED'H��������AD��DŽ$�
DŽ$���<s�X���<g��<pD��<t��<T���P����z<P�b<O�KH���6H��$}A�H��D������Ƅ$���H���n�<s�G<r�H������D�P'�DY�fA.���
fE.���
D���4�D��A�DŽ$���<s��<x�����D��DŽ$�����$�D�����H��$�lA�H���$��Ƅ$�p���D��DŽ$�DŽ$�DŽ$���D��DŽ$�DŽ$��}�<Stb<X����D��DŽ$�DŽ$��S�D��DŽ$�DŽ$��5�D��DŽ$�DŽ$���D��DŽ$���H����H��$�pA�H��D���5��Ƅ$�t���D��DŽ$����H�
�<'�!��H�
R<'���D��DŽ$���D��A�DŽ$��~�D��A�DŽ$��e�D��DŽ$��R�DŽ$�DŽ$��7�D��DŽ$�DŽ$�DŽ$���D��DŽ$�DŽ$�DŽ$����D��DŽ$�DŽ$�DŽ$���D��DŽ$�DŽ$���H�
�H'A�����DŽ$�DŽ$���D��DŽ$��^�H�
BH'L���z7��H�
c='讽�H��$��H��$�ME1�I��������u>��$��w%D��A�DŽ$���H�
5?'�`��H�
�?'H���7��H�
B?'H���B��D��DŽ$�DŽ$�DŽ$����D��DŽ$�DŽ$�DŽ$����H�
�<'���H�
5='�ؼ�H�
1?'�̼�H�
�@'�g軼�D��DŽ$�DŽ$�DŽ$��'��H�
='膼�Mc탼$�L�^9'K��H�
q@'�PH�>9'LE��U��H�
&@'���F��H�
�I'�5��H�
KI'��5��H�
�H'��5��H�
�H'��5��H�
�:'������D�$`H��$`H�
f;'fA(����H�
�<'�ػ�H�;'1��ʻ�H��$��H��$�:E1�I��������uk��$��wRD��DŽ$�DŽ$�DŽ$��
��D��DŽ$�DŽ$�DŽ$�����H�
�<'H���5��H�
�<'H���1��D��DŽ$�DŽ$�DŽ$����D��DŽ$�DŽ$�DŽ$��t��H�
�A'�Ӻ�H�
B'���ĺ�DŽ$��I��H��$�H��$P�<cHD�H�����~:�H9�H�D$(�D$ I��A����������A�=�������D������H��$H�������u1D��DŽ$����D��DŽ$�DŽ$����H��<'I��1����D��DŽ$�DŽ$��e��D��DŽ$�DŽ$��G��H�
S?'H��裹���@�=�����$�t�D�����D�A��St
A��s��D�FA��NtA��nu�D������A��AtA��au�D������A��MtA��mu�D�����A��DtA��du�D�����A��C���D�����H�
`>'�����A��Wt,A��wt&A��At
A��a��H�N����G D���C��L��$x�L��$p�H��$��H��H��>'M��M��H�D$ H��L��$pL��$h�����L��$pL��$huwH��$p�H�GH��$x�H�GH��$��H�GD�����A��c� ���Mc�H�
�='E��K���P���A��BtA��bubH�N�����^��G(D���q��H��='M��M��H��������uPH��$p�H�GH��$x�H�GH��H�GD���)��A��LtA��lu0H�N�_���G0D�����Mc�H�
�='I��K���P�X��A��FtA��fuH�N�#���^sG'�G8D������A��Gt,A��gt&A��Ht
A��h��H�N�����G`D�����L��$x�H��$p�H��L��$��H��<'H��M��H�D$ L��$h������L��$h��H��$��H�GHH��$x�H�GPH��$p�H�GXD�����A��M� L��$x�H��$��H��L��$p�H�b<'H��M��H�D$ L��$h�W����L��$h��H��$p�H�GpH��$x�H�GxH��$��H���D�����L��$��H�<'M��H���������H��$��H�GHH��$x�H�GPH��H�GXD���C��L��$p�H��;'M��H���������H��$p�H�GpH��$x�H�GxH��H���D������A��m����Mc�H�
<'E��K���P�5��L��$��H��;'H���6����uN��$���^@E'�G@D�����L��$p�H�K;'H�������u.H��$p�H�GhD���`��Mc�H�
);'I��K���P豴�Mc�H�
G;'I��K���P藴�H��tvH��$����I��迈�=���tMD��DŽ$����H���.H��$���I��艈�=����D��DŽ$����H�
d9'H�����H�
9'���H�
�A'��-��I���H�
='�-��������H�
j;'�-��H�
�>'�-��H�
j1'�ų�H�
2'蹳�H�
�1'��誳�H�
�1'螳���H�
]2'菳�H�
�<'�C-��H�
�<'�7-��H�
='�+-��H�
�2'H���\��H�
=2'�P��$����D��$���H�
V3'�)��D��A�DŽ$����D��A�DŽ$����D��A�DŽ$��s��D��A�DŽ$��Z��H�
V6'蹲�H�N���f.�w>fD(�D��fDW%�B'�)��H�N�k��f.�fD(�w D���
��H�
a5'�l��H�
�5'�`��H�
y5'�T��H����H��$�`H��A�H������,H��Ƅ$�l�=��H��H��trL�@��,L��L��$p���H��L��$pt�H����$�`tH��$P��~tL��$X�H��D���N���8�E��H��$`��8��H��$P�H��$X�H��$`�D�����H�
�5'�w��H�
@/'�k��A�V�H�
X.'A��U��H�
F?'�	+��H�
r?'�*��H�
6'H���.��H�
�5'�"��AWAVAUATUWVSH��)�$P)�$`D)�$pD)�$�D)�$�E1�1�I���=�w(�Y�q�D$<(�D(��pI���Hc�H�L�J�!H���`H���1�9ډ�|�1��LIc���M���M����A����A�����`I��L�D$ ������H��9��Ic�M���L��$�A�؉�1�L�L$ I��豷��vA�G
A���4�A��0A���<M������Hc�t M���L�D$ I��蕮�����I���L�D$ H��襉�����H��9��1�L�l$@�xHc����`�X����`1��LIc���I���M����A����A�����`H��L�D$ �����H��9��Ic�I���L��$�۽A��L�L$ ��I�E1�H��膶��yA�G
C���4�C��0C���<O�����B��Hc�t!I���L�L$ H���i���B���I���L�L$ H���x����B��I��D9��Lc�E�G1�1�O�L��#����\�԰H���^��A	H��PA9���B��`���A\��B��`9������H�l$@E1�EW��D
�t(��T�H��(��Y��Y��Y��X��A(�1�9���Ҷ��Mc�1�Mk�
fA.�w%�F�L�I���Hc�H���^�L�H���99ډ�|��M���Hc��L�I��H�99�|�A��H��PA9�|��D$<H�� I�Ĩ�D$<A9�������(�$P(�$`D(�$pD(�$�D(�$�H�Ĩ[^_]A\A]A^A_Ð�������AUATUWVSH��(�1�I�ԋQdI��Ic$L��RH����H��A�D��H�Hk�4�<H�KH��t-A��1�H9Lu	H�DA��H��A9�u�����I)����H��9�|�L��Hc�����H��I)��H��([^_]A\A]�VSH��(H��H��H���6����H�QH�S���H�.H�KH��u�H�K�q��HcH��H)H�C�H��([^�VSH��(E��H��H��t
�O�&���U�&�Hc����H��H�CuH�
��(�m%��HcH��HH�CH��([^�AWAVAUATUWVSH��h�Yd�D$HI��H��$��D�ƍ[�d$HHc|$HH���r���H��H�D$8uH�
Y�(�$��H�D$8H��I�$��0Hc�H�H��M�l1���D�P����H��9���D$L��1��d$LA���A�E�ٺ4��Hc�H����H��H�D$(uH�
�(�{$��Hk�4H�D$@1�I�$��Lc�1�Mk�4LL$(E����1�1�E�AA��-H�M��$�H��PIEA�DC+��A�D�AD�H��9։�}�E1���u3�����s�|�P}A��s
�tA��s	H��9���9�|UA��D9�|3Ic�H�� IEA�L1��Hc�E�|�D9|����9�}��H�L$(E1�A9���1�D�|$$���I��9|$4�
���H�D$@D�D$@D9D$L~A�EL�\$@E1�1��D$4I����L�T$8E1��W1��@D��A����L�P��u����u	A��A��x
��t��u��t	H��9���A9�|
H�D$(A�jI�BA��I��D;D$H|�H�T$P1��
���
��~�������H��9�|��9�����H�D$8H��$�H�H��h[^_]A\A]A^A_���	���D�|$$H��4A�����ATUWVSH��0H��IcH�׺M��跞��H��uH�
�(�F"��A�$H��Hc�H��HUH��H�H���H��H��u���������t��Hc�H�4��Hc�L���H��H�2L�uH�0�wD�L	A�ˍS�Y}#Mc�N��N�T��A��fA.��vA��Mc�N���A��f.��vMc�N��G�T	�A��E��E��E��A9�~�Mc�J�4��a���H�1��H��L�H��L���H�Ɓ�A9$�H���ڿ��Ic$H��H)E�=׸,tMH�
�(1��/���H��5����U����D$(D�L�L$((�H�
ě(����$���H���H��u�H��0[^_]A\Ð������������AUATUWVSH��(H��H���H��D��H��t������L�
,')H��A���H��H�����H����f�{h�H�������CI����uk�Hc�H��E1��ik�Hc�H�� ���N�U����u'D�NH���L��&)H��8)�~�����'A��L�N�Cu
I��MF��I��MF�L��H��f��u�L��H)�f���u	�Kr1�H��D���1�1��L�����I�H��D9�u�H�����H��H��H��H��HL9�vwI)�L�(�o�CH��t*���D���1�1��L�����I�H��D9�u��<�U���I���CL1�D���1���1҉�L���L�����M�H��D9�u�S8����S8��u�SL�StH��([^_]A\A]Ð�����������������Copyright 1995-2013 Graeme W. Gill@333333�?�?333333�?�?�������?�?�?�?�������?333333�?333333�?ffffff�?�?�?�?4@.@4@�������?@@�?�?�?�?�?333333�?����?333333�?�������$@.@�?����?@�?�������?�?�?�������?\��(\�?ffffff�?�G�z��?�������?ffffff�?�?Y@@>@�������?@�������?�������?@�?�?�?�?�������?�������?�������?�G�z�?�������?ffffff�?�?$@4@>@�������?@@�������?�������?ffffff�?@333333�?������������4@$@�?���?N@�?�������?d�?�?�?N@�?�������?d�������?�?�?N@�?�������?d�������?�?�?ףp=
�B@H�z��1@H�z�G4@q=
ףp�?+���?����Mb�?9��v�(@1|DL�$�&P6�
�?�?333333�?333333�?������P@P��n�B�{CrNB��?333333�?333333�?&�"�d�N@��
�;F��{,}��?�?333333�?|�ƻ�H@�g�_I@��I��?5�8EGdE@y<-?p�H@P�eo�B��?�E��D@�^����O@wJ��B@�?333333�?/�o��D@��D2N@t���dA@�?333333�?333333�?�E��D@�^����O@wJ��B@333333�?�������?333333�?�E(��GU@�s�^gN�f��@�16�333333�?333333�?�?5(���N@$
nkC�!��=@2��?333333�?333333�?
#### tnzznc.p, arnefzgu.p, pbclevtug 1995-2009 Tenrzr J. Tvyy, TCY3 Yvpraprq Irefvba ####
nt ####
 ,p.cnzzugzfenralcbp ,p.91 gutve 9002-59J rzrneT ,yyvT .pvY 3YCTrI qrpar## abvfe
##��hx��/** X3DOM Runtime, http://www.x3dom.org/ 1.6.3-dev -  -  */
if(!Array.forEach){Array.forEach=function(array,fun,thisp){var len=array.length;for(var i=0;i<len;i++){if(i in array){fun.call(thisp,array[i],i,array);}}};}
if(!Array.map){Array.map=function(array,fun,thisp){var len=array.length;var res=[];for(var i=0;i<len;i++){if(i in array){res[i]=fun.call(thisp,array[i],i,array);}}
return res;};}
if(!Array.filter){Array.filter=function(array,fun,thisp){var len=array.length;var res=[];for(var i=0;i<len;i++){if(i in array){var val=array[i];if(fun.call(thisp,val,i,array)){res.push(val);}}}
return res;};}
var x3dom={canvases:[],x3dNS:'http://www.web3d.org/specifications/x3d-namespace',x3dextNS:'http://philip.html5.org/x3d/ext',xsltNS:'http://www.w3.org/1999/XSL/x3dom.Transform',xhtmlNS:'http://www.w3.org/1999/xhtml'};x3dom.nodeTypes={};x3dom.nodeTypesLC={};x3dom.components={};x3dom.geoCache=[];x3dom.caps={PLATFORM:navigator.platform,AGENT:navigator.userAgent,RENDERMODE:"HARDWARE"};x3dom.registerNodeType=function(nodeTypeName,componentName,nodeDef){if(x3dom.components[componentName]===undefined){x3dom.components[componentName]={};}
nodeDef._typeName=nodeTypeName;nodeDef._compName=componentName;x3dom.components[componentName][nodeTypeName]=nodeDef;x3dom.nodeTypes[nodeTypeName]=nodeDef;x3dom.nodeTypesLC[nodeTypeName.toLowerCase()]=nodeDef;};x3dom.isX3DElement=function(node){var name=(node.nodeType===Node.ELEMENT_NODE&&node.localName)?node.localName.toLowerCase():null;return(name&&(x3dom.nodeTypes[node.localName]||x3dom.nodeTypesLC[name]||name=="x3d"||name=="websg"||name=="route"));};x3dom.extend=function(f){function G(){}
G.prototype=f.prototype||f;return new G();};x3dom.getStyle=function(oElm,strCssRule){var strValue="";var style=document.defaultView.getComputedStyle?document.defaultView.getComputedStyle(oElm,null):null;if(style){strValue=style.getPropertyValue(strCssRule);}
else if(oElm.currentStyle){strCssRule=strCssRule.replace(/\-(\w)/g,function(strMatch,p1){return p1.toUpperCase();});strValue=oElm.currentStyle[strCssRule];}
return strValue;};function defineClass(parent,ctor,methods){if(parent){function Inheritance(){}
Inheritance.prototype=parent.prototype;ctor.prototype=new Inheritance();ctor.prototype.constructor=ctor;ctor.superClass=parent;}
if(methods){for(var m in methods){ctor.prototype[m]=methods[m];}}
return ctor;}
x3dom.isa=function(object,clazz){return(object instanceof clazz);};x3dom.getGlobal=function(){return(function(){return this;}).call(null);};x3dom.loadJS=function(src,path_prefix,blocking){blocking=(blocking===false)?blocking:true;if(blocking){var url=(path_prefix)?path_prefix.trim()+src:src;var req=new XMLHttpRequest();if(req){req.open("GET",url,false);req.send(null);eval(req.responseText);}}else{var head=document.getElementsByTagName('HEAD').item(0);var script=document.createElement("script");var loadpath=(path_prefix)?path_prefix.trim()+src:src;if(head){x3dom.debug.logError("Trying to load external JS file: "+loadpath);script.type="text/javascript";script.src=loadpath;head.appendChild(script);}else{alert("No document object found. Can't load components!");}}};function array_to_object(a){var o={};for(var i=0;i<a.length;i++){o[a[i]]='';}
return o;}
window.requestAnimFrame=(function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(callback,element){window.setTimeout(callback,16);};})();x3dom.toggleFullScreen=function(){if(document.fullScreen||document.mozFullScreen||document.webkitIsFullScreen){if(document.cancelFullScreen){document.cancelFullScreen();}
else if(document.mozCancelFullScreen){document.mozCancelFullScreen();}
else if(document.webkitCancelFullScreen){document.webkitCancelFullScreen();}}
else{var docElem=document.documentElement;if(docElem.requestFullScreen){docElem.requestFullScreen();}
else if(docElem.mozRequestFullScreen){docElem.mozRequestFullScreen();}
else if(docElem.webkitRequestFullScreen){docElem.webkitRequestFullScreen();}}};x3dom.debug={INFO:"INFO",WARNING:"WARNING",ERROR:"ERROR",EXCEPTION:"EXCEPTION",isActive:false,isFirebugAvailable:false,isSetup:false,isAppend:false,numLinesLogged:0,maxLinesToLog:10000,logContainer:null,setup:function(){if(x3dom.debug.isSetup){return;}
try{if(window.console.firebug!==undefined){x3dom.debug.isFirebugAvailable=true;}}
catch(err){x3dom.debug.isFirebugAvailable=false;}
x3dom.debug.setupLogContainer();x3dom.debug.isSetup=true;},activate:function(visible){x3dom.debug.isActive=true;x3dom.debug.logContainer.style.display=(visible)?"block":"none";if(!x3dom.debug.isAppend){if(navigator.appName=="Microsoft Internet Explorer"){x3dom.debug.logContainer.style.marginLeft="8px";document.documentElement.appendChild(x3dom.debug.logContainer);}else{document.body.appendChild(x3dom.debug.logContainer);}
x3dom.debug.isAppend=true;}},setupLogContainer:function(){x3dom.debug.logContainer=document.createElement("div");x3dom.debug.logContainer.id="x3dom_logdiv";x3dom.debug.logContainer.setAttribute("class","x3dom-logContainer");x3dom.debug.logContainer.style.clear="both";},doLog:function(msg,logType){if(!x3dom.debug.isActive){return;}
if(x3dom.debug.numLinesLogged===x3dom.debug.maxLinesToLog){msg="Maximum number of log lines (="+x3dom.debug.maxLinesToLog+") reached. Deactivating logging...";}
if(x3dom.debug.numLinesLogged>x3dom.debug.maxLinesToLog){return;}
var node=document.createElement("p");node.style.margin=0;switch(logType){case x3dom.debug.INFO:node.style.color="#00ff00";break;case x3dom.debug.WARNING:node.style.color="#cd853f";break;case x3dom.debug.ERROR:node.style.color="#ff4500";break;case x3dom.debug.EXCEPTION:node.style.color="#ffff00";break;default:node.style.color="#00ff00";break;}
try{node.innerHTML=logType+": "+msg;x3dom.debug.logContainer.insertBefore(node,x3dom.debug.logContainer.firstChild);}catch(err){if(window.console.firebug!==undefined){window.console.warn(msg);}}
if(x3dom.debug.isFirebugAvailable){switch(logType){case x3dom.debug.INFO:window.console.info(msg);break;case x3dom.debug.WARNING:window.console.warn(msg);break;case x3dom.debug.ERROR:window.console.error(msg);break;case x3dom.debug.EXCEPTION:window.console.debug(msg);break;default:break;}}
x3dom.debug.numLinesLogged++;},logInfo:function(msg){x3dom.debug.doLog(msg,x3dom.debug.INFO);},logWarning:function(msg){x3dom.debug.doLog(msg,x3dom.debug.WARNING);},logError:function(msg){x3dom.debug.doLog(msg,x3dom.debug.ERROR);},logException:function(msg){x3dom.debug.doLog(msg,x3dom.debug.EXCEPTION);},assert:function(c,msg){if(!c){x3dom.debug.doLog("Assertion failed in "+
x3dom.debug.assert.caller.name+': '+
msg,x3dom.debug.ERROR);}},typeOf:function(obj){var type=typeof obj;return type==="object"&&!obj?"null":type;},exists:function(obj,name,type){type=type||"function";return(obj?this.typeOf(obj[name]):"null")===type;},dumpFields:function(node){var str="";for(var fName in node){str+=(fName+", ");}
str+='\n';x3dom.debug.logInfo(str);return str;}};x3dom.debug.setup();x3dom.arc={};x3dom.arc.instance=null;x3dom.arc.Limits=function(min,max,initial)
{this._min=min;this._max=max;this.getValue=function(value)
{value=this._min+(this._max-this._min)*value;return this._max>=value?(this._min<=value?value:this._min):this._max;};};x3dom.arc.ARF=function(name,min,max,dirFac,factorGetterFunc,factorSetterFunc,getterFunc,setterFunc)
{this._name=name;this._stateValue=[0.5,0.5];this._limits=new x3dom.arc.Limits(min,max);this._factorGetterFunc=factorGetterFunc;this._factorSetterFunc=factorSetterFunc;this._setterFunc=setterFunc;this._getterFunc=getterFunc;this._dirFac=dirFac;this.getFactor=function()
{return this._factorGetterFunc();};this.update=function(state,step)
{var stateVal=this._stateValue[state]+step*this._dirFac;this._stateValue[state]=0<=stateVal?(1>=stateVal?stateVal:1):0;this._setterFunc(this._limits.getValue(this._stateValue[state]));};this.reset=function()
{this._stateValue[0]=0.5;this._stateValue[1]=0.5;};};x3dom.arc.AdaptiveRenderControl=defineClass(null,function(scene)
{x3dom.arc.instance=this;this._scene=scene;this._targetFrameRate=[];this._targetFrameRate[0]=this._scene._vf.minFrameRate;this._targetFrameRate[1]=this._scene._vf.maxFrameRate;this._currentState=0;var that=this;var environment=that._scene.getEnvironment();this._arfs=[];this._arfs.push(new x3dom.arc.ARF("smallFeatureCulling",0,10,-1,function()
{return environment._vf.smallFeatureFactor;},function(value)
{environment._vf.smallFeatureFactor=value;},function()
{return environment._vf.smallFeatureThreshold;},function(value)
{environment._vf.smallFeatureThreshold=value;}));this._arfs.push(new x3dom.arc.ARF("lowPriorityCulling",0,100,1,function()
{return environment._vf.lowPriorityFactor;},function(value)
{environment._vf.lowPriorityFactor=value;},function()
{return environment._vf.lowPriorityThreshold*100;},function(value)
{environment._vf.lowPriorityThreshold=value/100;}));this._arfs.push(new x3dom.arc.ARF("tessellationDetailCulling",1,12,-1,function()
{return environment._vf.tessellationErrorFactor;},function(value)
{environment._vf.tessellationErrorFactor=value;},function()
{return environment.tessellationErrorThreshold;},function(value)
{environment.tessellationErrorThreshold=value;}));this._stepWidth=0.1;},{update:function(state,fps)
{this._currentState=state;var delta=fps-this._targetFrameRate[state];this._stepWidth=Math.abs(delta)>10?0.1:0.01;var factorSum=0;var normFactors=[];var i,n=this._arfs.length;for(i=0;i<n;++i)
{normFactors[i]=this._arfs[i].getFactor();if(normFactors[i]>0)
factorSum+=normFactors[i];}
var dirFac=delta<0?-1:1;for(i=0;i<n;++i)
{if(normFactors[i]>0)
{normFactors[i]/=factorSum;this._arfs[i].update(state,this._stepWidth*normFactors[i]*dirFac);}}},reset:function()
{for(var i=0,n=this._arfs.length;i<n;++i)
{this._arfs[i].reset();}}});var Request=function(url,onloadCallback,priority){this.url=url;this.priority=priority;this.xhr=new XMLHttpRequest();this.onloadCallbacks=[onloadCallback];var self=this;this.xhr.onload=function(){if(x3dom.DownloadManager.debugOutput){x3dom.debug.logInfo('Download manager received data for URL \''+self.url+'\'.');}
--x3dom.DownloadManager.activeDownloads;if((x3dom.DownloadManager.stallToKeepOrder===false)||(x3dom.DownloadManager.resultGetsStalled(self.priority)===false)){var i;for(i=0;i<self.onloadCallbacks.length;++i){self.onloadCallbacks[i](self.xhr.response);}
x3dom.DownloadManager.removeDownload(self);x3dom.DownloadManager.updateStalledResults();}
else if(x3dom.DownloadManager.debugOutput){x3dom.debug.logInfo('Download manager stalled downloaded result for URL \''+self.url+'\'.');}
x3dom.DownloadManager.tryNextDownload();};};Request.prototype.send=function(){this.xhr.open('GET',encodeURI(this.url),true);this.xhr.responseType='arraybuffer';this.xhr.send(null);if(x3dom.DownloadManager.debugOutput){x3dom.debug.logInfo('Download manager posted XHR for URL \''+this.url+'\'.');}};x3dom.DownloadManager={requests:[],maxDownloads:6,activeDownloads:0,debugOutput:false,stallToKeepOrder:false,toggleDebugOutput:function(flag){this.debugOutput=flag;},toggleStrictReturnOrder:function(flag){this.stallToKeepOrder=false;},removeDownload:function(req){var i,j;var done=false;for(i=0;i<this.requests.length&&!done;++i){if(this.requests[i]){for(j=0;j<this.requests[i].length;++j){if(this.requests[i][j]===req){this.requests[i].splice(j,1);done=true;break;}}}}},tryNextDownload:function(){var firstRequest;var i,j;if(this.activeDownloads<this.maxDownloads){for(i=0;i<this.requests.length&&!firstRequest;++i){if(this.requests[i]){for(j=0;j<this.requests[i].length;++j){if(this.requests[i][j].xhr.readyState===XMLHttpRequest.UNSENT){firstRequest=this.requests[i][j];break;}}}}
if(firstRequest){firstRequest.send();++this.activeDownloads;}}},resultGetsStalled:function(priority){var i;for(i=0;i<priority;++i){if(this.requests[i]&&this.requests[i].length){return true;}}
return false;},updateStalledResults:function(){if(x3dom.DownloadManager.stallToKeepOrder){var i,j,k;var req,pendingRequestFound=false;for(i=0;i<this.requests.length&&!pendingRequestFound;++i){if(this.requests[i]){for(j=0;j<this.requests[i].length;++j){req=this.requests[i][j];if(req.xhr.readyState===XMLHttpRequest.DONE){if(x3dom.DownloadManager.debugOutput){x3dom.debug.logInfo('Download manager releases stalled result for URL \''+req.url+'\'.');}
for(k=0;k<req.onloadCallbacks.length;++k){req.onloadCallbacks[k](req.xhr.response);}
this.requests[i].splice(j,1);}
else{pendingRequestFound=true;}}}}}},get:function(urls,onloadCallbacks,priorities){var i,j,k,r;var found=false;var url,onloadCallback,priority;if(urls.length!==onloadCallbacks.length||urls.length!==priorities.length)
{x3dom.debug.logError('DownloadManager: The number of given urls, onload callbacks and priorities is not equal. Ignoring requests.');return;}
for(k=0;k<urls.length;++k){if(!onloadCallbacks[k]===undefined||!priorities[k]===undefined){x3dom.debug.logError('DownloadManager: No onload callback and / or priority specified. Ignoring request for \"'+url+'\"');continue;}
else{url=urls[k];onloadCallback=onloadCallbacks[k];priority=priorities[k];for(i=0;i<this.requests.length&&!found;++i){if(this.requests[i]){for(j=0;j<this.requests[i].length;++j){if(this.requests[i][j].url===url){this.requests[i][j].onloadCallbacks.push(onloadCallback);if(x3dom.DownloadManager.debugOutput){x3dom.debug.logInfo('Download manager appended onload callback for URL \''+url+'\' to a registered request using the same URL.');}
found=true;break;}}}}
if(!found){r=new Request(url,onloadCallback,priority);if(this.requests[priority]){this.requests[priority].push(r);}
else{this.requests[priority]=[r];}}}}
for(i=0;i<urls.length&&this.activeDownloads<this.maxDownloads;++i){this.tryNextDownload();}}};x3dom.MultiMaterial=function(params)
{this._origAmbientIntensity=params.ambientIntensity;this._origDiffuseColor=params.diffuseColor;this._origEmissiveColor=params.emissiveColor;this._origShininess=params.shininess;this._origSpeclarColor=params.specularColor;this._origTransparency=params.transparency;this._origBackAmbientIntensity=params.backAmbientIntensity;this._origBackDiffuseColor=params.backDiffuseColor;this._origBackEmissiveColor=params.backEmissiveColor;this._origBackShininess=params.backShininess;this._origBackSpecularColor=params.backSpecularColor;this._origBackTransparency=params.backTransparency;this._ambientIntensity=params.ambientIntensity;this._diffuseColor=params.diffuseColor;this._emissiveColor=params.emissiveColor;this._shininess=params.shininess;this._specularColor=params.specularColor;this._transparency=params.transparency;this._backAmbientIntensity=params.backAmbientIntensity;this._backDiffuseColor=params.backDiffuseColor;this._backEmissiveColor=params.backEmissiveColor;this._backShininess=params.backShininess;this._backSpecularColor=params.backSpecularColor;this._backTransparency=params.backTransparency;this._highlighted=false;this.reset=function(){this._ambientIntensity=this._origAmbientIntensity;this._diffuseColor=this._origDiffuseColor;this._emissiveColor=this._origEmissiveColor;this._shininess=this._origShininess;this._specularColor=this._origSpeclarColor;this._transparency=this._origTransparency;this._backAmbientIntensity=this._origBackAmbientIntensity;this._backDiffuseColor=this._origBackDiffuseColor;this._backEmissiveColor=this._origBackEmissiveColor;this._backShininess=this._origBackShininess;this._backSpecularColor=this._origBackSpecularColor;this._backTransparency=this._origBackTransparency;};};x3dom.Parts=function(multiPart,ids,colorMap,emissiveMap,specularMap,visibilityMap)
{var parts=this;this.multiPart=multiPart;this.ids=ids;this.colorMap=colorMap;this.emissiveMap=emissiveMap;this.specularMap=specularMap;this.visibilityMap=visibilityMap;this.width=parts.colorMap.getWidth();this.widthTwo=this.width*this.width;this.setDiffuseColor=function(color,side)
{var i,partID,pixelIDFront,pixelIDBack;if(side==undefined&&side!="front"&&side!="back"&&side!="both"){side="both";}
color=x3dom.fields.SFColor.parse(color);if(ids.length&&ids.length>1)
{var pixels=parts.colorMap.getPixels();for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{this.multiPart._materials[partID]._diffuseColor=color;}
else if(side=="back")
{this.multiPart._materials[partID]._backDiffuseColor=color;}
else if(side=="both")
{this.multiPart._materials[partID]._diffuseColor=color;this.multiPart._materials[partID]._backDiffuseColor=color;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front"){pixels[pixelIDFront].r=color.r;pixels[pixelIDFront].g=color.g;pixels[pixelIDFront].b=color.b;}else if(side=="back"){pixels[pixelIDBack].r=color.r;pixels[pixelIDBack].g=color.g;pixels[pixelIDBack].b=color.b;}else if(side=="both"){pixels[pixelIDFront].r=color.r;pixels[pixelIDFront].g=color.g;pixels[pixelIDFront].b=color.b;pixels[pixelIDBack].r=color.r;pixels[pixelIDBack].g=color.g;pixels[pixelIDBack].b=color.b;}}}
parts.colorMap.setPixels(pixels);}
else
{var xFront,yFront,xBack,yBack,pixelFront,pixelBack;partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);pixelFront=parts.colorMap.getPixel(xFront,yFront);this.multiPart._materials[partID]._diffuseColor=color;}
else if(side=="back")
{xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelBack=parts.colorMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._backDiffuseColor=color;}
else if(side=="both")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelFront=parts.colorMap.getPixel(xFront,yFront);pixelBack=parts.colorMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._diffuseColor=color;this.multiPart._materials[partID]._backDiffuseColor=color;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front")
{pixelFront.r=color.r;pixelFront.g=color.g;pixelFront.b=color.b;parts.colorMap.setPixel(xFront,yFront,pixelFront);}
else if(side=="back")
{pixelBack.r=color.r;pixelBack.g=color.g;pixelBack.b=color.b;parts.colorMap.setPixel(xBack,yBack,pixelBack);}
else if(side=="both")
{pixelFront.r=color.r;pixelFront.g=color.g;pixelFront.b=color.b;pixelBack.r=color.r;pixelBack.g=color.g;pixelBack.b=color.b;parts.colorMap.setPixel(xFront,yFront,pixelFront);parts.colorMap.setPixel(xBack,yBack,pixelBack);}}}};this.getDiffuseColor=function(side)
{var i,partID;if(side==undefined&&side!="front"&&side!="back"){side="front";}
if(ids.length&&ids.length>1)
{var diffuseColors=[];for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];if(side=="front")
{diffuseColors.push(this.multiPart._materials[partID]._diffuseColor);}
else if(side=="back")
{diffuseColors.push(this.multiPart._materials[partID]._backDiffuseColor);}}
return diffuseColors;}
else
{partID=parts.ids[0];if(side=="front")
{return this.multiPart._materials[partID]._diffuseColor;}
else if(side=="back")
{return this.multiPart._materials[partID]._backDiffuseColor;}}};this.setEmissiveColor=function(color,side)
{var i,partID,pixelIDFront,pixelIDBack;if(side==undefined&&side!="front"&&side!="back"&&side!="both"){side="both";}
color=x3dom.fields.SFColor.parse(color);if(ids.length&&ids.length>1)
{var pixels=parts.emissiveMap.getPixels();for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{this.multiPart._materials[partID]._emissiveColor=color;}
else if(side=="back")
{this.multiPart._materials[partID]._backEmissiveColor=color;}
else if(side=="both")
{this.multiPart._materials[partID]._emissiveColor=color;this.multiPart._materials[partID]._backEmissiveColor=color;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front"){pixels[pixelIDFront].r=color.r;pixels[pixelIDFront].g=color.g;pixels[pixelIDFront].b=color.b;}else if(side=="back"){pixels[pixelIDBack].r=color.r;pixels[pixelIDBack].g=color.g;pixels[pixelIDBack].b=color.b;}else if(side=="both"){pixels[pixelIDFront].r=color.r;pixels[pixelIDFront].g=color.g;pixels[pixelIDFront].b=color.b;pixels[pixelIDBack].r=color.r;pixels[pixelIDBack].g=color.g;pixels[pixelIDBack].b=color.b;}}}
parts.emissiveMap.setPixels(pixels);}
else
{var xFront,yFront,xBack,yBack,pixelFront,pixelBack;partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);pixelFront=parts.emissiveMap.getPixel(xFront,yFront);this.multiPart._materials[partID]._emissiveColor=color;}
else if(side=="back")
{xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelBack=parts.emissiveMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._backEmissiveColor=color;}
else if(side=="both")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelFront=parts.emissiveMap.getPixel(xFront,yFront);pixelBack=parts.emissiveMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._emissiveColor=color;this.multiPart._materials[partID]._backEmissiveColor=color;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front")
{pixelFront.r=color.r;pixelFront.g=color.g;pixelFront.b=color.b;parts.emissiveMap.setPixel(xFront,yFront,pixelFront);}
else if(side=="back")
{pixelBack.r=color.r;pixelBack.g=color.g;pixelBack.b=color.b;parts.emissiveMap.setPixel(xBack,yBack,pixelBack);}
else if(side=="both")
{pixelFront.r=color.r;pixelFront.g=color.g;pixelFront.b=color.b;pixelBack.r=color.r;pixelBack.g=color.g;pixelBack.b=color.b;parts.emissiveMap.setPixel(xFront,yFront,pixelFront);parts.emissiveMap.setPixel(xback,yBack,pixelBack);}}}};this.getEmissiveColor=function(side)
{var i,partID;if(side==undefined&&side!="front"&&side!="back"){side="front";}
if(ids.length&&ids.length>1)
{var emissiveColors=[];for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];if(side=="front")
{emissiveColors.push(this.multiPart._materials[partID]._emissiveColor);}
else if(side=="back")
{emissiveColors.push(this.multiPart._materials[partID]._backEmissiveColor);}}
return emissiveColors;}
else
{partID=parts.ids[0];if(side=="front")
{return this.multiPart._materials[partID]._emissiveColor;}
else if(side=="back")
{return this.multiPart._materials[partID]._backEmissiveColor;}}};this.setSpecularColor=function(color,side)
{var i,partID,pixelIDFront,pixelIDBack;if(side==undefined&&side!="front"&&side!="back"&&side!="both"){side="both";}
color=x3dom.fields.SFColor.parse(color);if(ids.length&&ids.length>1)
{var pixels=parts.specularMap.getPixels();for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{this.multiPart._materials[partID]._specularColor=color;}
else if(side=="back")
{this.multiPart._materials[partID]._backSpecularColor=color;}
else if(side=="both")
{this.multiPart._materials[partID]._specularColor=color;this.multiPart._materials[partID]._backSpecularColor=color;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front"){pixels[pixelIDFront].r=color.r;pixels[pixelIDFront].g=color.g;pixels[pixelIDFront].b=color.b;}else if(side=="back"){pixels[pixelIDBack].r=color.r;pixels[pixelIDBack].g=color.g;pixels[pixelIDBack].b=color.b;}else if(side=="both"){pixels[pixelIDFront].r=color.r;pixels[pixelIDFront].g=color.g;pixels[pixelIDFront].b=color.b;pixels[pixelIDBack].r=color.r;pixels[pixelIDBack].g=color.g;pixels[pixelIDBack].b=color.b;}}}
parts.specularMap.setPixels(pixels);}
else
{var xFront,yFront,xBack,yBack,pixelFront,pixelBack;partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);pixelFront=parts.specularMap.getPixel(xFront,yFront);this.multiPart._materials[partID]._specularColor=color;}
else if(side=="back")
{xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelBack=parts.specularMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._backSpecularColor=color;}
else if(side=="both")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelFront=parts.specularMap.getPixel(xFront,yFront);pixelBack=parts.specularMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._specularColor=color;this.multiPart._materials[partID]._backSpecularColor=color;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front")
{pixelFront.r=color.r;pixelFront.g=color.g;pixelFront.b=color.b;parts.specularMap.setPixel(xFront,yFront,pixelFront);}
else if(side=="back")
{pixelBack.r=color.r;pixelBack.g=color.g;pixelBack.b=color.b;parts.specularMap.setPixel(xBack,yBack,pixelBack);}
else if(side=="both")
{pixelFront.r=color.r;pixelFront.g=color.g;pixelFront.b=color.b;pixelBack.r=color.r;pixelBack.g=color.g;pixelBack.b=color.b;parts.specularMap.setPixel(xFront,yFront,pixelFront);parts.specularMap.setPixel(xBack,yBack,pixelBack);}}}};this.getSpecularColor=function(side)
{var i,partID;if(side==undefined&&side!="front"&&side!="back"){side="front";}
if(ids.length&&ids.length>1)
{var specularColors=[];for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];if(side=="front")
{specularColors.push(this.multiPart._materials[partID]._specularColor);}
else if(side=="back")
{specularColors.push(this.multiPart._materials[partID]._backSpecularColor);}}
return specularColors;}
else
{partID=parts.ids[0];if(side=="front")
{return this.multiPart._materials[partID]._specularColor;}
else if(side=="back")
{return this.multiPart._materials[partID]._backSpecularColor;}}};this.setTransparency=function(transparency,side)
{var i,partID,pixelIDFront,pixelIDBack;if(side==undefined&&side!="front"&&side!="back"&&side!="both"){side="both";}
if(ids.length&&ids.length>1)
{var pixels=parts.colorMap.getPixels();for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{this.multiPart._materials[partID]._transparency=transparency;}
else if(side=="back")
{this.multiPart._materials[partID]._backTransparency=transparency;}
else if(side=="both")
{this.multiPart._materials[partID]._transparency=transparency;this.multiPart._materials[partID]._backTransparency=transparency;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front"){pixels[pixelIDFront].a=1.0-transparency;}else if(side=="back"){pixels[pixelIDBack].a=1.0-transparency;}else if(side=="both"){pixels[pixelIDFront].a=1.0-transparency;pixels[pixelIDBack].a=1.0-transparency;}}}
parts.colorMap.setPixels(pixels);}
else
{var xFront,yFront,xBack,yBack,pixelFront,pixelBack;partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);pixelFront=parts.colorMap.getPixel(xFront,yFront);this.multiPart._materials[partID]._transparency=transparency;}
else if(side=="back")
{xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelBack=parts.colorMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._backTransparency=transparency;}
else if(side=="both")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelFront=parts.colorMap.getPixel(xFront,yFront);pixelBack=parts.colorMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._transparency=transparency;this.multiPart._materials[partID]._backTransparency=transparency;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front")
{pixelFront.a=1.0-transparency;parts.colorMap.setPixel(xFront,yFront,pixelFront);}
else if(side=="back")
{pixelBack.a=1.0-transparency;parts.colorMap.setPixel(xBack,yBack,pixelBack);}
else if(side=="both")
{pixelFront.a=1.0-transparency;pixelBack.a=1.0-transparency;parts.colorMap.setPixel(xFront,yFront,pixelFront);parts.colorMap.setPixel(xBack,yBack,pixelBack);}}}};this.getTransparency=function(side)
{var i,partID;if(side==undefined&&side!="front"&&side!="back"){side="front";}
if(ids.length&&ids.length>1)
{var transparencies=[];for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];if(side=="front")
{transparencies.push(this.multiPart._materials[partID]._transparency);}
else if(side=="back")
{transparencies.push(this.multiPart._materials[partID]._backTransparency);}}
return transparencies;}
else
{partID=parts.ids[0];if(side=="front")
{return this.multiPart._materials[partID]._transparency;}
else if(side=="back")
{return this.multiPart._materials[partID]._backTransparency;}}};this.setShininess=function(shininess,side)
{var i,partID,pixelIDFront,pixelIDBack;if(side==undefined&&side!="front"&&side!="back"&&side!="both"){side="both";}
if(ids.length&&ids.length>1)
{var pixels=parts.specularMap.getPixels();for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{this.multiPart._materials[partID]._shininess=shininess;}
else if(side=="back")
{this.multiPart._materials[partID]._backShininess=shininess;}
else if(side=="both")
{this.multiPart._materials[partID]._shininess=shininess;this.multiPart._materials[partID]._backShininess=shininess;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front"){pixels[pixelIDFront].a=shininess;}else if(side=="back"){pixels[pixelIDBack].a=shininess;}else if(side=="both"){pixels[pixelIDFront].a=shininess;pixels[pixelIDBack].a=shininess;}}}
parts.specularMap.setPixels(pixels);}
else
{var xFront,yFront,xBack,yBack,pixelFront,pixelBack;partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);pixelFront=parts.specularMap.getPixel(xFront,yFront);this.multiPart._materials[partID]._shininess=shininess;}
else if(side=="back")
{xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelBack=parts.specularMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._backShininess=shininess;}
else if(side=="both")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelFront=parts.specularMap.getPixel(xFront,yFront);pixelBack=parts.specularMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._shininess=shininess;this.multiPart._materials[partID]._backShininess=shininess;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front")
{pixelFront.a=shininess;parts.specularMap.setPixel(xFront,yFront,pixelFront);}
else if(side=="back")
{pixelBack.a=shininess;parts.specularMap.setPixel(xBack,yBack,pixelBack);}
else if(side=="both")
{pixelFront.a=shininess;pixelBack.a=shininess;parts.specularMap.setPixel(xFront,yFront,pixelFront);parts.specularMap.setPixel(xBack,yBack,pixelBack);}}}};this.getShininess=function(side)
{var i,partID;if(side==undefined&&side!="front"&&side!="back"){side="front";}
if(ids.length&&ids.length>1)
{var shininesses=[];for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];if(side=="front")
{shininesses.push(this.multiPart._materials[partID]._shininess);}
else if(side=="back")
{shininesses.push(this.multiPart._materials[partID]._backShininess);}}
return shininesses;}
else
{partID=parts.ids[0];if(side=="front")
{return this.multiPart._materials[partID]._shininess;}
else if(side=="back")
{return this.multiPart._materials[partID]._backShininess;}}};this.setAmbientIntensity=function(ambientIntensity,side)
{var i,partID,pixelIDFront,pixelIDBack;if(side==undefined&&side!="front"&&side!="back"&&side!="both"){side="both";}
if(ids.length&&ids.length>1)
{var pixels=parts.emissiveMap.getPixels();for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{this.multiPart._materials[partID]._ambientIntensity=ambientIntensity;}
else if(side=="back")
{this.multiPart._materials[partID]._backAmbientIntensity=ambientIntensity;}
else if(side=="both")
{this.multiPart._materials[partID]._ambientIntensity=ambientIntensity;this.multiPart._materials[partID]._backAmbientIntensity=ambientIntensity;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front"){pixels[pixelIDFront].a=ambientIntensity;}else if(side=="back"){pixels[pixelIDBack].a=ambientIntensity;}else if(side=="both"){pixels[pixelIDFront].a=ambientIntensity;pixels[pixelIDBack].a=ambientIntensity;}}}
parts.emissiveMap.setPixels(pixels);}
else
{var xFront,yFront,xBack,yBack,pixelFront,pixelBack;partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(side=="front")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);pixelFront=parts.emissiveMap.getPixel(xFront,yFront);this.multiPart._materials[partID]._ambientIntensity=ambientIntensity;}
else if(side=="back")
{xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelBack=parts.emissiveMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._backAmbientIntensity=ambientIntensity;}
else if(side=="both")
{xFront=pixelIDFront%this.width;yFront=Math.floor(pixelIDFront/this.width);xBack=pixelIDBack%this.width;yBack=Math.floor(pixelIDBack/this.width);pixelFront=parts.emissiveMap.getPixel(xFront,yFront);pixelBack=parts.emissiveMap.getPixel(xBack,yBack);this.multiPart._materials[partID]._ambientIntensity=ambientIntensity;this.multiPart._materials[partID]._backAmbientIntensity=ambientIntensity;}
if(!this.multiPart._materials[partID]._highlighted)
{if(side=="front")
{pixelFront.a=ambientIntensity;parts.emissiveMap.setPixel(xFront,yFront,pixelFront);}
else if(side=="back")
{pixelBack.a=ambientIntensity;parts.emissiveMap.setPixel(xBack,yBack,pixelBack);}
else if(side=="both")
{pixelFront.a=ambientIntensity;pixelBack.a=ambientIntensity;parts.emissiveMap.setPixel(xFront,yFront,pixelFront);parts.emissiveMap.setPixel(xBack,yBack,pixelBack);}}}};this.getAmbientIntensity=function(side)
{var i,partID;if(side==undefined&&side!="front"&&side!="back"){side="front";}
if(ids.length&&ids.length>1)
{var ambientIntensities=[];for(i=0;i<parts.ids.length;i++)
{partID=parts.ids[i];if(side=="front")
{ambientIntensities.push(this.multiPart._materials[partID]._ambientIntensity);}
else if(side=="back")
{ambientIntensities.push(this.multiPart._materials[partID]._backAmbientIntensity);}}
return ambientIntensities;}
else
{partID=parts.ids[0];if(side=="front")
{return this.multiPart._materials[partID]._ambientIntensity;}
else if(side=="back")
{return this.multiPart._materials[partID]._backAmbientIntensity;}}};this.highlight=function(color)
{var i,partID,pixelIDFront,pixelIDBack,dtColor,eaColor,ssColor;color=x3dom.fields.SFColor.parse(color);if(ids.length&&ids.length>1)
{var dtPixels=parts.colorMap.getPixels();var eaPixels=parts.emissiveMap.getPixels();var ssPixels=parts.specularMap.getPixels();dtColor=new x3dom.fields.SFColorRGBA(0,0,0,1.0);eaColor=new x3dom.fields.SFColorRGBA(color.r,color.g,color.b,0);ssColor=new x3dom.fields.SFColorRGBA(0,0,0,0);for(i=0;i<parts.ids.length;i++){partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;if(!this.multiPart._materials[partID]._highlighted)
{this.multiPart._materials[partID]._highlighted=true;dtPixels[pixelIDFront]=dtColor;eaPixels[pixelIDFront]=eaColor;ssPixels[pixelIDFront]=ssColor;dtPixels[pixelIDBack]=dtColor;eaPixels[pixelIDBack]=eaColor;ssPixels[pixelIDBack]=ssColor;}}
this.colorMap.setPixels(dtPixels,false);this.emissiveMap.setPixels(eaPixels,false);this.specularMap.setPixels(ssPixels,true);}
else
{partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;var xFront=pixelIDFront%this.width;var yFront=Math.floor(pixelIDFront/this.width);var xBack=pixelIDBack%this.width;var yBack=Math.floor(pixelIDBack/this.width);if(!this.multiPart._materials[partID]._highlighted)
{this.multiPart._materials[partID]._highlighted=true;dtColor=new x3dom.fields.SFColorRGBA(0,0,0,1);eaColor=new x3dom.fields.SFColorRGBA(color.r,color.g,color.b,0);ssColor=new x3dom.fields.SFColorRGBA(0,0,0,0);this.colorMap.setPixel(xFront,yFront,dtColor,false);this.emissiveMap.setPixel(xFront,yFront,eaColor,false);this.specularMap.setPixel(xFront,yFront,ssColor,false);this.colorMap.setPixel(xBack,yBack,dtColor,false);this.emissiveMap.setPixel(xBack,yBack,eaColor,false);this.specularMap.setPixel(xBack,yBack,ssColor,true);}}};this.unhighlight=function(){var i,partID,pixelIDFront,pixelIDBack,material;var dtColorFront,eaColorFront,ssColorFront;var dtColorBack,eaColorBack,ssColorBack;if(ids.length&&ids.length>1)
{var dtPixels=parts.colorMap.getPixels();var eaPixels=parts.emissiveMap.getPixels();var ssPixels=parts.specularMap.getPixels();for(i=0;i<parts.ids.length;i++){partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;material=this.multiPart._materials[partID];if(material._highlighted)
{material._highlighted=false;dtPixels[pixelIDFront]=new x3dom.fields.SFColorRGBA(material._diffuseColor.r,material._diffuseColor.g,material._diffuseColor.b,1.0-material._transparency);eaPixels[pixelIDFront]=new x3dom.fields.SFColorRGBA(material._emissiveColor.r,material._emissiveColor.g,material._emissiveColor.b,material._ambientIntensity);ssPixels[pixelIDFront]=new x3dom.fields.SFColorRGBA(material._specularColor.r,material._specularColor.g,material._specularColor.b,material._shininess);dtPixels[pixelIDBack]=new x3dom.fields.SFColorRGBA(material._backDiffuseColor.r,material._backDiffuseColor.g,material._backDiffuseColor.b,1.0-material._backTransparency);eaPixels[pixelIDBack]=new x3dom.fields.SFColorRGBA(material._backEmissiveColor.r,material._backEmissiveColor.g,material._backEmissiveColor.b,material._backAmbientIntensity);ssPixels[pixelIDBack]=new x3dom.fields.SFColorRGBA(material._backSpecularColor.r,material._backSpecularColor.g,material._backSpecularColor.b,material._backShininess);}}
this.colorMap.setPixels(dtPixels,false);this.emissiveMap.setPixels(eaPixels,false);this.specularMap.setPixels(ssPixels,true);}
else
{partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;var xFront=pixelIDFront%this.width;var yFront=Math.floor(pixelIDFront/this.width);var xBack=pixelIDBack%this.width;var yBack=Math.floor(pixelIDBack/this.width);material=this.multiPart._materials[partID];if(material._highlighted)
{material._highlighted=false;dtColorFront=new x3dom.fields.SFColorRGBA(material._diffuseColor.r,material._diffuseColor.g,material._diffuseColor.b,1.0-material._transparency);eaColorFront=new x3dom.fields.SFColorRGBA(material._emissiveColor.r,material._emissiveColor.g,material._emissiveColor.b,material._ambientIntensity);ssColorFront=new x3dom.fields.SFColorRGBA(material._specularColor.r,material._specularColor.g,material._specularColor.b,material._shininess);dtColorBack=new x3dom.fields.SFColorRGBA(material._backDiffuseColor.r,material._backDiffuseColor.g,material._backDiffuseColor.b,1.0-material._backTransparency);eaColorBack=new x3dom.fields.SFColorRGBA(material._backEmissiveColor.r,material._backEmissiveColor.g,material._backEmissiveColor.b,material._backAmbientIntensity);ssColorBack=new x3dom.fields.SFColorRGBA(material._backSpecularColor.r,material._backSpecularColor.g,material._backSpecularColor.b,material._backShininess);this.colorMap.setPixel(xFront,yFront,dtColorFront,false);this.emissiveMap.setPixel(xFront,yFront,eaColorFront,false);this.specularMap.setPixel(xFront,yFront,ssColorFront,false);this.colorMap.setPixel(xBack,yBack,dtColorBack,false);this.emissiveMap.setPixel(xBack,yBack,eaColorBack,false);this.specularMap.setPixel(xBack,yBack,ssColorBack,true);}}};this.toggleHighlight=function(color){for(var i=0;i<parts.ids.length;i++){if(this.multiPart._materials[parts.ids[i]]._highlighted){this.unhighlight();}else{this.highlight(color);}}};this.setColor=function(color,side){this.setDiffuseColor(color,side);};this.getColorRGB=function(){var str=this.getColorRGBA();var values=str.split(" ");return values[0]+" "+values[1]+" "+values[2];};this.getColorRGBA=function(){var x,y;var colorRGBA=this.multiPart._originalColor[parts.ids[0]];if(this.multiPart._highlightedParts[parts.ids[0]]){colorRGBA=this.multiPart._highlightedParts[parts.ids[0]];}else{x=parts.ids[0]%parts.colorMap.getWidth();y=Math.floor(parts.ids[0]/parts.colorMap.getWidth());colorRGBA=parts.colorMap.getPixel(x,y);}
return colorRGBA.toString();};this.resetColor=function(){var i,partID,pixelIDFront,pixelIDBack,material;var dtColorFront,eaColorFront,ssColorFront;var dtColorBack,eaColorBack,ssColorBack;if(ids.length&&ids.length>1)
{var dtPixels=parts.colorMap.getPixels();var eaPixels=parts.emissiveMap.getPixels();var ssPixels=parts.specularMap.getPixels();for(i=0;i<parts.ids.length;i++){partID=parts.ids[i];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;material=this.multiPart._materials[partID];material.reset();if(!material._highlighted)
{dtPixels[pixelIDFront]=new x3dom.fields.SFColorRGBA(material._diffuseColor.r,material._diffuseColor.g,material._diffuseColor.b,1.0-material._transparency);eaPixels[pixelIDFront]=new x3dom.fields.SFColorRGBA(material._emissiveColor.r,material._emissiveColor.g,material._emissiveColor.b,material._ambientIntensity);ssPixels[pixelIDFront]=new x3dom.fields.SFColorRGBA(material._specularColor.r,material._specularColor.g,material._specularColor.b,material._shininess);dtPixels[pixelIDBack]=new x3dom.fields.SFColorRGBA(material._backDiffuseColor.r,material._backDiffuseColor.g,material._backDiffuseColor.b,1.0-material._backTransparency);eaPixels[pixelIDBack]=new x3dom.fields.SFColorRGBA(material._backEmissiveColor.r,material._backEmissiveColor.g,material._backEmissiveColor.b,material._backAmbientIntensity);ssPixels[pixelIDBack]=new x3dom.fields.SFColorRGBA(material._backSpecularColor.r,material._backSpecularColor.g,material._backSpecularColor.b,material._backShininess);}}
this.colorMap.setPixels(dtPixels,false);this.emissiveMap.setPixels(eaPixels,false);this.specularMap.setPixels(ssPixels,true);}
else
{partID=parts.ids[0];pixelIDFront=partID;pixelIDBack=partID+this.widthTwo;var xFront=pixelIDFront%this.width;var yFront=Math.floor(pixelIDFront/this.width);var xBack=pixelIDBack%this.width;var yBack=Math.floor(pixelIDBack/this.width);material=this.multiPart._materials[partID];material.reset();if(!material._highlighted)
{dtColorFront=new x3dom.fields.SFColorRGBA(material._diffuseColor.r,material._diffuseColor.g,material._diffuseColor.b,1.0-material._transparency);eaColorFront=new x3dom.fields.SFColorRGBA(material._emissiveColor.r,material._emissiveColor.g,material._emissiveColor.b,material._ambientIntensity);ssColorFront=new x3dom.fields.SFColorRGBA(material._specularColor.r,material._specularColor.g,material._specularColor.b,material._shininess);dtColorBack=new x3dom.fields.SFColorRGBA(material._backDiffuseColor.r,material._backDiffuseColor.g,material._backDiffuseColor.b,1.0-material._backTransparency);eaColorBack=new x3dom.fields.SFColorRGBA(material._backEmissiveColor.r,material._backEmissiveColor.g,material._backEmissiveColor.b,material._backAmbientIntensity);ssColorBack=new x3dom.fields.SFColorRGBA(material._backSpecularColor.r,material._backSpecularColor.g,material._backSpecularColor.b,material._backShininess);this.colorMap.setPixel(xFront,yFront,dtColorFront,false);this.emissiveMap.setPixel(xFront,yFront,eaColorFront,false);this.specularMap.setPixel(xFront,yFront,ssColorFront,false);this.colorMap.setPixel(xBack,yBack,dtColorBack,false);this.emissiveMap.setPixel(xBack,yBack,eaColorBack,false);this.specularMap.setPixel(xBack,yBack,ssColorBack,true);}}};this.setVisibility=function(visibility){var i,j,x,y,usage,visibleCount,visibilityAsInt;if(!(ids.length&&ids.length>1)){x=parts.ids[0]%parts.colorMap.getWidth();y=Math.floor(parts.ids[0]/parts.colorMap.getWidth());var pixel=parts.visibilityMap.getPixel(x,y);visibilityAsInt=(visibility)?1:0;if(pixel.r!=visibilityAsInt){pixel.r=visibilityAsInt;this.multiPart._partVisibility[parts.ids[0]]=visibility;usage=this.multiPart._idMap.mapping[parts.ids[0]].usage;for(j=0;j<usage.length;j++){visibleCount=this.multiPart._visiblePartsPerShape[usage[j]];if(visibility&&visibleCount.val<visibleCount.max){visibleCount.val++;}else if(!visibility&&visibleCount.val>0){visibleCount.val--;}
if(visibleCount.val){this.multiPart._inlineNamespace.defMap[usage[j]]._vf.render=true;}else{this.multiPart._inlineNamespace.defMap[usage[j]]._vf.render=false;}}}
parts.visibilityMap.setPixel(x,y,pixel);this.multiPart.invalidateVolume();}
else
{var pixels=parts.visibilityMap.getPixels();for(i=0;i<parts.ids.length;i++){visibilityAsInt=(visibility)?1:0;if(pixels[parts.ids[i]].r!=visibilityAsInt){pixels[parts.ids[i]].r=visibilityAsInt;this.multiPart._partVisibility[parts.ids[i]]=visibility;usage=this.multiPart._idMap.mapping[parts.ids[i]].usage;for(j=0;j<usage.length;j++){visibleCount=this.multiPart._visiblePartsPerShape[usage[j]];if(visibility&&visibleCount.val<visibleCount.max){visibleCount.val++;}else if(!visibility&&visibleCount.val>0){visibleCount.val--;}
if(visibleCount.val){this.multiPart._inlineNamespace.defMap[usage[j]]._vf.render=true;}else{this.multiPart._inlineNamespace.defMap[usage[j]]._vf.render=false;}}}}
parts.visibilityMap.setPixels(pixels);this.multiPart.invalidateVolume();}};this.getVolume=function(){var volume;var transmat=this.multiPart.getCurrentTransform();if(ids.length&&ids.length>1)
{volume=new x3dom.fields.BoxVolume();for(var i=0;i<parts.ids.length;i++){volume.extendBounds(this.multiPart._partVolume[parts.ids[i]].min,this.multiPart._partVolume[parts.ids[i]].max);}
volume.transform(transmat);return volume;}
else
{volume=x3dom.fields.BoxVolume.copy(this.multiPart._partVolume[parts.ids[0]]);volume.transform(transmat);return volume;}};this.fit=function(updateCenterOfRotation){var volume=this.getVolume();this.multiPart._nameSpace.doc._viewarea.fit(volume.min,volume.max,updateCenterOfRotation);};};x3dom.Properties=function(){this.properties={};};x3dom.Properties.prototype.setProperty=function(name,value){x3dom.debug.logInfo("Properties: Setting property '"+name+"' to value '"+value+"'");this.properties[name]=value;};x3dom.Properties.prototype.getProperty=function(name,def){if(this.properties[name]){return this.properties[name]}else{return def;}};x3dom.Properties.prototype.merge=function(other){for(var attrname in other.properties){this.properties[attrname]=other.properties[attrname];}};x3dom.Properties.prototype.toString=function(){var str="";for(var name in this.properties){str+="Name: "+name+" Value: "+this.properties[name]+"\n";}
return str;};x3dom.DoublyLinkedList=function(){this.length=0;this.first=null;this.last=null;};x3dom.DoublyLinkedList.ListNode=function(point,point_index,normals,colors,texCoords){this.point=point;this.point_index=point_index;this.normals=normals;this.colors=colors;this.texCoords=texCoords;this.next=null;this.prev=null;};x3dom.DoublyLinkedList.prototype.appendNode=function(node){if(this.first===null){node.prev=node;node.next=node;this.first=node;this.last=node;}else{node.prev=this.last;node.next=this.first;this.first.prev=node;this.last.next=node;this.last=node;}
this.length++;};x3dom.DoublyLinkedList.prototype.insertAfterNode=function(node,newNode){newNode.prev=node;newNode.next=node.next;node.next.prev=newNode;node.next=newNode;if(newNode.prev==this.last){this.last=newNode;}
this.length++;};x3dom.DoublyLinkedList.prototype.deleteNode=function(node){if(this.length>1){node.prev.next=node.next;node.next.prev=node.prev;if(node==this.first){this.first=node.next;}
if(node==this.last){this.last=node.prev;}}else{this.first=null;this.last=null;}
node.prev=null;node.next=null;this.length--;};x3dom.DoublyLinkedList.prototype.getNode=function(index){var node=null;if(index>this.length){return node;}
for(var i=0;i<this.length;i++){if(i==0){node=this.first;}else{node=node.next;}
if(i==index){return node;}}
return null;};x3dom.DoublyLinkedList.prototype.invert=function(){var tmp=null;var node=this.first;for(var i=0;i<this.length;i++){tmp=node.prev;node.prev=node.next;node.next=tmp;node=node.prev;}
tmp=this.first;this.first=this.last;this.last=tmp;};x3dom.EarClipping={reversePointDirection:function(linklist,plane){var l,k;var count=0;var z=0;var nodei,nodel,nodek;if(linklist.length<3){return false;}
for(var i=0;i<linklist.length;i++){l=(i+1)%linklist.length;k=(i+2)%linklist.length;nodei=linklist.getNode(i);nodel=linklist.getNode(l);nodek=linklist.getNode(k);if(plane=='YZ'){z=(nodel.point.y-nodei.point.y)*(nodek.point.z-nodel.point.z);z-=(nodel.point.z-nodei.point.z)*(nodek.point.y-nodel.point.y);}else if(plane=='XZ'){z=(nodel.point.z-nodei.point.z)*(nodek.point.x-nodel.point.x);z-=(nodel.point.x-nodei.point.x)*(nodek.point.z-nodel.point.z);}else{z=(nodel.point.x-nodei.point.x)*(nodek.point.y-nodel.point.y);z-=(nodel.point.y-nodei.point.y)*(nodek.point.x-nodel.point.x);}
if(z<0){count--;}else{count++;}}
if(count<0){linklist.invert();return true;}
return false;},getIndexes:function(linklist){var node=linklist.first.next;var plane=this.identifyPlane(node.prev.point,node.point,node.next.point);var invers=this.reversePointDirection(linklist,plane);var indexes=[];node=linklist.first.next;var next=null;var count=0;var isEar=true;while(linklist.length>=3&&count<15){next=node.next;for(var i=0;i<linklist.length;i++){if(this.isNotEar(linklist.getNode(i).point,node.prev.point,node.point,node.next.point,plane)){isEar=false;}}
if(isEar){if(this.isKonvex(node.prev.point,node.point,node.next.point,plane)){indexes.push(node.prev.point_index,node.point_index,node.next.point_index);linklist.deleteNode(node);}else{count++;}}
node=next;isEar=true;}
if(invers){return indexes.reverse();}else{return indexes;}},getMultiIndexes:function(linklist){var node=linklist.first.next;var plane=this.identifyPlane(node.prev.point,node.point,node.next.point);var invers=this.reversePointDirection(linklist,plane);var data={};data.indices=[];data.point=[];data.normals=[];data.colors=[];data.texCoords=[];node=linklist.first.next;var next=null;var count=0;var isEar=true;while(linklist.length>=3&&count<15){next=node.next;for(var i=0;i<linklist.length;i++){if(this.isNotEar(linklist.getNode(i).point,node.prev.point,node.point,node.next.point,plane)){isEar=false;}}
if(isEar){if(this.isKonvex(node.prev.point,node.point,node.next.point,plane)){data.indices.push(node.prev.point_index,node.point_index,node.next.point_index);data.point.push(node.prev.point,node.point,node.next.point);if(node.normals){data.normals.push(node.prev.normals,node.normals,node.next.normals);}
if(node.colors){data.colors.push(node.prev.colors,node.colors,node.next.colors);}
if(node.texCoords){data.texCoords.push(node.prev.texCoords,node.texCoords,node.next.texCoords);}
linklist.deleteNode(node);}else{count++;}}
node=next;isEar=true;}
if(invers){data.indices=data.indices.reverse();data.point=data.point.reverse();data.normals=data.normals.reverse();data.colors=data.colors.reverse();data.texCoords=data.texCoords.reverse();}
return data;},isNotEar:function(ap1,tp1,tp2,tp3,plane){var b0,b1,b2,b3;var ap1a,ap1b,tp1a,tp1b,tp2a,tp2b,tp3a,tp3b;if(plane=='YZ'){ap1a=ap1.y;ap1b=ap1.z;tp1a=tp1.y;tp1b=tp1.z;tp2a=tp2.y;tp2b=tp2.z;tp3a=tp3.y;tp3b=tp3.z;}else if(plane=='XZ'){ap1a=ap1.z;ap1b=ap1.x;tp1a=tp1.z;tp1b=tp1.x;tp2a=tp2.z;tp2b=tp2.x;tp3a=tp3.z;tp3b=tp3.x;}else{ap1a=ap1.x;ap1b=ap1.y;tp1a=tp1.x;tp1b=tp1.y;tp2a=tp2.x;tp2b=tp2.y;tp3a=tp3.x;tp3b=tp3.y;}
b0=((tp2a-tp1a)*(tp3b-tp1b)-(tp3a-tp1a)*(tp2b-tp1b));if(b0!=0){b1=(((tp2a-ap1a)*(tp3b-ap1b)-(tp3a-ap1a)*(tp2b-ap1b))/b0);b2=(((tp3a-ap1a)*(tp1b-ap1b)-(tp1a-ap1a)*(tp3b-ap1b))/b0);b3=1-b1-b2;return((b1>0)&&(b2>0)&&(b3>0));}
else{return false;}},isKonvex:function(p,p1,p2,plane){var pa,pb,p1a,p1b,p2a,p2b;if(plane=='YZ'){pa=p.y;pb=p.z;p1a=p1.y;p1b=p1.z;p2a=p2.y;p2b=p2.z;}else if(plane=='XZ'){pa=p.z;pb=p.x;p1a=p1.z;p1b=p1.x;p2a=p2.z;p2b=p2.x;}else{pa=p.x;pb=p.y;p1a=p1.x;p1b=p1.y;p2a=p2.x;p2b=p2.y;}
var l=((p1a-pa)*(p2b-pb)-(p1b-pb)*(p2a-pa));return(l>=0);},identifyPlane:function(p1,p2,p3){var v1x,v1y,v1z;var v2x,v2y,v2z;var v3x,v3y,v3z;v1x=p2.x-p1.x;v1y=p2.y-p1.y;v1z=p2.z-p1.z;v2x=p3.x-p1.x;v2y=p3.y-p1.y;v2z=p3.z-p1.z;v3x=Math.abs(v1y*v2z-v1z*v2y);v3y=Math.abs(v1z*v2x-v1x*v2z);v3z=Math.abs(v1x*v2y-v1y*v2x);var angle=Math.max(v3x,v3y,v3z);if(angle==v3x){return'YZ';}else if(angle==v3y){return'XZ';}else if(angle==v3z){return'XY';}else{return'XZ';}}};x3dom.Utils={};x3dom.Utils.maxIndexableCoords=65535;x3dom.Utils.needLineWidth=false;x3dom.Utils.measurements=[];window.performance=window.performance||{};performance.now=(function(){return performance.now||performance.mozNow||performance.msNow||performance.oNow||performance.webkitNow||function(){return new Date().getTime();};})();x3dom.Utils.startMeasure=function(name){var uname=name.toUpperCase();if(!x3dom.Utils.measurements[uname]){if(performance&&performance.now){x3dom.Utils.measurements[uname]=performance.now();}else{x3dom.Utils.measurements[uname]=new Date().getTime();}}};x3dom.Utils.stopMeasure=function(name){var uname=name.toUpperCase();if(x3dom.Utils.measurements[uname]){var startTime=x3dom.Utils.measurements[uname];delete x3dom.Utils.measurements[uname];if(performance&&performance.now){return performance.now()-startTime;}else{return new Date().getTime()-startTime;}}
return 0;};x3dom.Utils.isNumber=function(n){return!isNaN(parseFloat(n))&&isFinite(n);};x3dom.Utils.createTexture2D=function(gl,doc,src,bgnd,crossOrigin,scale,genMipMaps)
{var texture=gl.createTexture();var data=new Uint8Array([0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255]);gl.bindTexture(gl.TEXTURE_2D,texture);gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,2,2,0,gl.RGBA,gl.UNSIGNED_BYTE,data);if(genMipMaps){gl.generateMipmap(gl.TEXTURE_2D);}
gl.bindTexture(gl.TEXTURE_2D,null);texture.ready=false;if(src==null||src=='')
return texture;var image=new Image();switch(crossOrigin.toLowerCase()){case'anonymous':{image.crossOrigin='anonymous';}break;case'use-credentials':{image.crossOrigin='use-credentials'}break;case'none':{}break;default:{if(x3dom.Utils.forbiddenBySOP(src)){image.crossOrigin='anonymous';}}}
image.src=src;doc.downloadCount++;image.onload=function(){if(scale)
image=x3dom.Utils.scaleImage(image);if(bgnd==true){gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL,true);}
gl.bindTexture(gl.TEXTURE_2D,texture);gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,gl.RGBA,gl.UNSIGNED_BYTE,image);if(genMipMaps){gl.generateMipmap(gl.TEXTURE_2D);}
gl.bindTexture(gl.TEXTURE_2D,null);if(bgnd==true){gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL,false);}
texture.width=image.width;texture.height=image.height;texture.ready=true;doc.downloadCount--;doc.needRender=true;};image.onerror=function(){x3dom.debug.logError("[Utils|createTexture2D] Can't load Image: "+src);doc.downloadCount--;};return texture;};x3dom.Utils.createTextureCube=function(gl,doc,src,bgnd,crossOrigin,scale,genMipMaps)
{var texture=gl.createTexture();var faces;if(bgnd){faces=[gl.TEXTURE_CUBE_MAP_POSITIVE_Z,gl.TEXTURE_CUBE_MAP_NEGATIVE_Z,gl.TEXTURE_CUBE_MAP_POSITIVE_Y,gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,gl.TEXTURE_CUBE_MAP_POSITIVE_X,gl.TEXTURE_CUBE_MAP_NEGATIVE_X];}
else
{faces=[gl.TEXTURE_CUBE_MAP_NEGATIVE_Z,gl.TEXTURE_CUBE_MAP_POSITIVE_Z,gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,gl.TEXTURE_CUBE_MAP_POSITIVE_Y,gl.TEXTURE_CUBE_MAP_NEGATIVE_X,gl.TEXTURE_CUBE_MAP_POSITIVE_X];}
texture.ready=false;texture.pendingTextureLoads=-1;texture.textureCubeReady=false;var width=0,height=0;for(var i=0;i<faces.length;i++){var face=faces[i];var image=new Image();switch(crossOrigin.toLowerCase()){case'anonymous':{image.crossOrigin='anonymous';}break;case'use-credentials':{image.crossOrigin='use-credentials'}break;case'none':{}break;default:{if(x3dom.Utils.forbiddenBySOP(src[i])){image.crossOrigin='anonymous';}}}
texture.pendingTextureLoads++;doc.downloadCount++;image.onload=(function(texture,face,image,swap){return function(){if(width==0&&height==0){width=image.width;height=image.height;}
else if(scale&&(width!=image.width||height!=image.height)){x3dom.debug.logWarning("[Utils|createTextureCube] Rescaling CubeMap images, which are of different size!");image=x3dom.Utils.rescaleImage(image,width,height);}
gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL,swap);gl.bindTexture(gl.TEXTURE_CUBE_MAP,texture);gl.texImage2D(face,0,gl.RGBA,gl.RGBA,gl.UNSIGNED_BYTE,image);gl.bindTexture(gl.TEXTURE_CUBE_MAP,null);gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL,false);texture.pendingTextureLoads--;doc.downloadCount--;if(texture.pendingTextureLoads<0){texture.width=width;texture.height=height;texture.textureCubeReady=true;if(genMipMaps){gl.bindTexture(gl.TEXTURE_CUBE_MAP,texture);gl.generateMipmap(gl.TEXTURE_CUBE_MAP);gl.bindTexture(gl.TEXTURE_CUBE_MAP,null);}
x3dom.debug.logInfo("[Utils|createTextureCube] Loading CubeMap finished...");doc.needRender=true;}};})(texture,face,image,bgnd);image.onerror=function()
{doc.downloadCount--;x3dom.debug.logError("[Utils|createTextureCube] Can't load CubeMap!");};image.src=src[i];}
return texture;};x3dom.Utils.initFBO=function(gl,w,h,type,mipMap,needRenderBuf,numMrt){var tex=gl.createTexture();tex.width=w;tex.height=h;gl.bindTexture(gl.TEXTURE_2D,tex);gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,w,h,0,gl.RGBA,type,null);if(mipMap)
gl.generateMipmap(gl.TEXTURE_2D);gl.bindTexture(gl.TEXTURE_2D,null);var i,mrts=null;if(x3dom.caps.DRAW_BUFFERS&&numMrt!==undefined){mrts=[tex];for(i=1;i<numMrt;i++){mrts[i]=gl.createTexture();mrts[i].width=w;mrts[i].height=h;gl.bindTexture(gl.TEXTURE_2D,mrts[i]);gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,w,h,0,gl.RGBA,type,null);if(mipMap)
gl.generateMipmap(gl.TEXTURE_2D);gl.bindTexture(gl.TEXTURE_2D,null);}}
var fbo=gl.createFramebuffer();var rb=null;if(needRenderBuf){rb=gl.createRenderbuffer();gl.bindRenderbuffer(gl.RENDERBUFFER,rb);gl.renderbufferStorage(gl.RENDERBUFFER,gl.DEPTH_COMPONENT16,w,h);gl.bindRenderbuffer(gl.RENDERBUFFER,null);}
gl.bindFramebuffer(gl.FRAMEBUFFER,fbo);gl.framebufferTexture2D(gl.FRAMEBUFFER,gl.COLOR_ATTACHMENT0,gl.TEXTURE_2D,tex,0);if(x3dom.caps.DRAW_BUFFERS&&numMrt!==undefined){for(i=1;i<numMrt;i++){gl.framebufferTexture2D(gl.FRAMEBUFFER,gl.COLOR_ATTACHMENT0+i,gl.TEXTURE_2D,mrts[i],0);}}
gl.framebufferRenderbuffer(gl.FRAMEBUFFER,gl.DEPTH_ATTACHMENT,gl.RENDERBUFFER,rb);var status=gl.checkFramebufferStatus(gl.FRAMEBUFFER);if(status!=gl.FRAMEBUFFER_COMPLETE){x3dom.debug.logWarning("[Utils|InitFBO] FBO-Status: "+status);}
gl.bindFramebuffer(gl.FRAMEBUFFER,null);return{fbo:fbo,rbo:rb,tex:tex,texTargets:mrts,width:w,height:h,type:type,mipMap:mipMap};};x3dom.Utils.getFileName=function(url)
{var filename;if(url.lastIndexOf("/")>-1){filename=url.substr(url.lastIndexOf("/")+1);}
else if(url.lastIndexOf("\\")>-1){filename=url.substr(url.lastIndexOf("\\")+1);}
else{filename=url;}
return filename;};x3dom.Utils.findTextureByName=function(texture,name)
{for(var i=0;i<texture.length;++i)
{if(name==texture[i].samplerName)
return texture[i];}
return false;};x3dom.Utils.rescaleImage=function(image,width,height)
{var canvas=document.createElement("canvas");canvas.width=width;canvas.height=height;canvas.getContext("2d").drawImage(image,0,0,image.width,image.height,0,0,canvas.width,canvas.height);return canvas;};x3dom.Utils.scaleImage=function(image)
{if(!x3dom.Utils.isPowerOfTwo(image.width)||!x3dom.Utils.isPowerOfTwo(image.height)){var canvas=document.createElement("canvas");canvas.width=x3dom.Utils.nextHighestPowerOfTwo(image.width);canvas.height=x3dom.Utils.nextHighestPowerOfTwo(image.height);var ctx=canvas.getContext("2d");ctx.drawImage(image,0,0,image.width,image.height,0,0,canvas.width,canvas.height);image=canvas;}
return image;};x3dom.Utils.isPowerOfTwo=function(x)
{return((x&(x-1))===0);};x3dom.Utils.nextHighestPowerOfTwo=function(x)
{--x;for(var i=1;i<32;i<<=1){x=x|x>>i;}
return(x+1);};x3dom.Utils.nextBestPowerOfTwo=function(x)
{var log2x=Math.log(x)/0.693147180559945;return Math.pow(2,Math.round(log2x));};x3dom.Utils.getDataTypeSize=function(type)
{switch(type)
{case"Int8":case"Uint8":return 1;case"Int16":case"Uint16":return 2;case"Int32":case"Uint32":case"Float32":return 4;case"Float64":default:return 8;}};x3dom.Utils.getOffsetMultiplier=function(indexType,gl)
{switch(indexType)
{case gl.UNSIGNED_SHORT:return 1;case gl.UNSIGNED_INT:return 2;case gl.UNSIGNED_BYTE:return 0.5;default:return 1;}};x3dom.Utils.getByteAwareOffset=function(offset,indexType,gl)
{switch(indexType)
{case gl.UNSIGNED_SHORT:return 2*offset;case gl.UNSIGNED_INT:return 4*offset;case gl.UNSIGNED_BYTE:return offset;default:return 2*offset;}};x3dom.Utils.getVertexAttribType=function(type,gl)
{var dataType=gl.NONE;switch(type)
{case"Int8":dataType=gl.BYTE;break;case"Uint8":dataType=gl.UNSIGNED_BYTE;break;case"Int16":dataType=gl.SHORT;break;case"Uint16":dataType=gl.UNSIGNED_SHORT;break;case"Int32":dataType=gl.INT;break;case"Uint32":dataType=gl.UNSIGNED_INT;break;case"Float32":dataType=gl.FLOAT;break;case"Float64":default:x3dom.debug.logError("Can't find this.gl data type for "+type+", getting FLOAT...");dataType=gl.FLOAT;break;}
return dataType;};x3dom.Utils.getArrayBufferView=function(type,buffer)
{var array=null;switch(type)
{case"Int8":array=new Int8Array(buffer);break;case"Uint8":array=new Uint8Array(buffer);break;case"Int16":array=new Int16Array(buffer);break;case"Uint16":array=new Uint16Array(buffer);break;case"Int32":array=new Int32Array(buffer);break;case"Uint32":array=new Uint32Array(buffer);break;case"Float32":array=new Float32Array(buffer);break;case"Float64":array=new Float64Array(buffer);break;default:x3dom.debug.logError("Can't create typed array view of type "+type+", trying Float32...");array=new Float32Array(buffer);break;}
return array;};x3dom.Utils.isUnsignedType=function(str)
{return(str=="Uint8"||str=="Uint16"||str=="Uint16"||str=="Uint32");};x3dom.Utils.checkDirtyLighting=function(viewarea)
{return(viewarea.getLights().length+viewarea._scene.getNavigationInfo()._vf.headlight);};x3dom.Utils.checkDirtyEnvironment=function(viewarea,shaderProperties)
{var environment=viewarea._scene.getEnvironment();return(shaderProperties.GAMMACORRECTION!=environment._vf.gammaCorrectionDefault);};x3dom.Utils.minFilterDic=function(gl,minFilter)
{switch(minFilter.toUpperCase())
{case"NEAREST":return gl.NEAREST;case"LINEAR":return gl.LINEAR;case"NEAREST_MIPMAP_NEAREST":return gl.NEAREST_MIPMAP_NEAREST;case"NEAREST_MIPMAP_LINEAR":return gl.NEAREST_MIPMAP_LINEAR;case"LINEAR_MIPMAP_NEAREST":return gl.LINEAR_MIPMAP_NEAREST;case"LINEAR_MIPMAP_LINEAR":return gl.LINEAR_MIPMAP_LINEAR;case"AVG_PIXEL":return gl.LINEAR;case"AVG_PIXEL_AVG_MIPMAP":return gl.LINEAR_MIPMAP_LINEAR;case"AVG_PIXEL_NEAREST_MIPMAP":return gl.LINEAR_MIPMAP_NEAREST;case"DEFAULT":return gl.LINEAR_MIPMAP_LINEAR;case"FASTEST":return gl.NEAREST;case"NEAREST_PIXEL":return gl.NEAREST;case"NEAREST_PIXEL_AVG_MIPMAP":return gl.NEAREST_MIPMAP_LINEAR;case"NEAREST_PIXEL_NEAREST_MIPMAP":return gl.NEAREST_MIPMAP_NEAREST;case"NICEST":return gl.LINEAR_MIPMAP_LINEAR;default:return gl.LINEAR;}};x3dom.Utils.magFilterDic=function(gl,magFilter)
{switch(magFilter.toUpperCase())
{case"NEAREST":return gl.NEAREST;case"LINEAR":return gl.LINEAR;case"AVG_PIXEL":return gl.LINEAR;case"DEFAULT":return gl.LINEAR;case"FASTEST":return gl.NEAREST;case"NEAREST_PIXEL":return gl.NEAREST;case"NICEST":return gl.LINEAR;default:return gl.LINEAR;}};x3dom.Utils.boundaryModesDic=function(gl,mode)
{switch(mode.toUpperCase())
{case"CLAMP":return gl.CLAMP_TO_EDGE;case"CLAMP_TO_EDGE":return gl.CLAMP_TO_EDGE;case"CLAMP_TO_BOUNDARY":return gl.CLAMP_TO_EDGE;case"MIRRORED_REPEAT":return gl.MIRRORED_REPEAT;case"REPEAT":return gl.REPEAT;default:return gl.REPEAT;}};x3dom.Utils.primTypeDic=function(gl,type)
{switch(type.toUpperCase())
{case"POINTS":return gl.POINTS;case"LINES":return gl.LINES;case"LINELOOP":return gl.LINE_LOOP;case"LINESTRIP":return gl.LINE_STRIP;case"TRIANGLES":return gl.TRIANGLES;case"TRIANGLESTRIP":return gl.TRIANGLE_STRIP;case"TRIANGLEFAN":return gl.TRIANGLE_FAN;default:return gl.TRIANGLES;}};x3dom.Utils.depthFunc=function(gl,func)
{switch(func.toUpperCase())
{case"NEVER":return gl.NEVER;case"ALWAYS":return gl.ALWAYS;case"LESS":return gl.LESS;case"EQUAL":return gl.EQUAL;case"LEQUAL":return gl.LEQUAL;case"GREATER":return gl.GREATER;case"GEQUAL":return gl.GEQUAL;case"NOTEQUAL":return gl.NOTEQUAL;default:return gl.LEQUAL;}};x3dom.Utils.blendFunc=function(gl,func)
{switch(func.toLowerCase())
{case"zero":return gl.ZERO;case"one":return gl.ONE;case"dst_color":return gl.DST_COLOR;case"dst_alpha":return gl.DST_ALPHA;case"src_color":return gl.SRC_COLOR;case"src_alpha":return gl.SRC_ALPHA;case"one_minus_dst_color":return gl.ONE_MINUS_DST_COLOR;case"one_minus_dst_alpha":return gl.ONE_MINUS_DST_ALPHA;case"one_minus_src_color":return gl.ONE_MINUS_SRC_COLOR;case"one_minus_src_alpha":return gl.ONE_MINUS_SRC_ALPHA;case"src_alpha_saturate":return gl.SRC_ALPHA_SATURATE;case"constant_color":return gl.CONSTANT_COLOR;case"constant_alpha":return gl.CONSTANT_ALPHA;case"one_minus_constant_color":return gl.ONE_MINUS_CONSTANT_COLOR;case"one_minus_constant_alpha":return gl.ONE_MINUS_CONSTANT_ALPHA;default:return 0;}};x3dom.Utils.blendEquation=function(gl,func)
{switch(func.toLowerCase())
{case"func_add":return gl.FUNC_ADD;case"func_subtract":return gl.FUNC_SUBTRACT;case"func_reverse_subtract":return gl.FUNC_REVERSE_SUBTRACT;case"min":return 0;case"max":return 0;case"logic_op":return 0;default:return 0;}};x3dom.Utils.gunzip=function(arraybuffer)
{var byteArray=new Uint8Array(arraybuffer);try{arraybuffer=new Zlib.Gunzip(byteArray).decompress().buffer;}catch(e){}
return arraybuffer;};x3dom.Utils.generateProperties=function(viewarea,shape)
{var property={};var geometry=shape._cf.geometry.node;var appearance=shape._cf.appearance.node;var texture=appearance?appearance._cf.texture.node:null;var material=appearance?appearance._cf.material.node:null;var environment=viewarea._scene.getEnvironment();if(appearance&&appearance._shader&&x3dom.isa(appearance._shader,x3dom.nodeTypes.ComposedShader)){property.CSHADER=appearance._shader._id;}
else if(geometry){property.CSHADER=-1;property.SOLID=(shape.isSolid())?1:0;property.TEXT=(x3dom.isa(geometry,x3dom.nodeTypes.Text))?1:0;property.POPGEOMETRY=(x3dom.isa(geometry,x3dom.nodeTypes.PopGeometry))?1:0;property.IMAGEGEOMETRY=(x3dom.isa(geometry,x3dom.nodeTypes.ImageGeometry))?1:0;property.BINARYGEOMETRY=(x3dom.isa(geometry,x3dom.nodeTypes.BinaryGeometry))?1:0;property.IG_PRECISION=(property.IMAGEGEOMETRY)?geometry.numCoordinateTextures():0;property.IG_INDEXED=(property.IMAGEGEOMETRY&&geometry.getIndexTexture()!=null)?1:0;property.POINTLINE2D=!geometry.needLighting()?1:0;property.VERTEXID=(property.BINARYGEOMETRY&&geometry._vf.idsPerVertex)?1:0;property.IS_PARTICLE=(x3dom.isa(geometry,x3dom.nodeTypes.ParticleSet))?1:0;property.APPMAT=(appearance&&(material||property.CSSHADER))?1:0;property.TWOSIDEDMAT=(property.APPMAT&&x3dom.isa(material,x3dom.nodeTypes.TwoSidedMaterial))?1:0;property.SEPARATEBACKMAT=(property.TWOSIDEDMAT&&material._vf.separateBackColor)?1:0;property.SHADOW=(viewarea.getLightsShadow())?1:0;property.FOG=(viewarea._scene.getFog()._vf.visibilityRange>0)?1:0;property.CSSHADER=(appearance&&appearance._shader&&x3dom.isa(appearance._shader,x3dom.nodeTypes.CommonSurfaceShader))?1:0;property.LIGHTS=(!property.POINTLINE2D&&appearance&&shape.isLit()&&(material||property.CSSHADER))?viewarea.getLights().length+(viewarea._scene.getNavigationInfo()._vf.headlight):0;property.TEXTURED=(texture||property.TEXT)?1:0;property.PIXELTEX=(texture&&x3dom.isa(texture,x3dom.nodeTypes.PixelTexture))?1:0;property.TEXTRAFO=(appearance&&appearance._cf.textureTransform.node)?1:0;property.DIFFUSEMAP=(property.CSSHADER&&appearance._shader.getDiffuseMap())?1:0;property.NORMALMAP=(property.CSSHADER&&appearance._shader.getNormalMap())?1:0;property.SPECMAP=(property.CSSHADER&&appearance._shader.getSpecularMap())?1:0;property.SHINMAP=(property.CSSHADER&&appearance._shader.getShininessMap())?1:0;property.DISPLACEMENTMAP=(property.CSSHADER&&appearance._shader.getDisplacementMap())?1:0;property.DIFFPLACEMENTMAP=(property.CSSHADER&&appearance._shader.getDiffuseDisplacementMap())?1:0;property.MULTIDIFFALPMAP=(property.VERTEXID&&property.CSSHADER&&appearance._shader.getMultiDiffuseAlphaMap())?1:0;property.MULTIEMIAMBMAP=(property.VERTEXID&&property.CSSHADER&&appearance._shader.getMultiEmissiveAmbientMap())?1:0;property.MULTISPECSHINMAP=(property.VERTEXID&&property.CSSHADER&&appearance._shader.getMultiSpecularShininessMap())?1:0;property.MULTIVISMAP=(property.VERTEXID&&property.CSSHADER&&appearance._shader.getMultiVisibilityMap())?1:0;property.CUBEMAP=(texture&&x3dom.isa(texture,x3dom.nodeTypes.X3DEnvironmentTextureNode))?1:0;property.BLENDING=(property.TEXT||property.CUBEMAP||(texture&&texture._blending))?1:0;property.REQUIREBBOX=(geometry._vf.coordType!==undefined&&geometry._vf.coordType!="Float32")?1:0;property.REQUIREBBOXNOR=(geometry._vf.normalType!==undefined&&geometry._vf.normalType!="Float32")?1:0;property.REQUIREBBOXCOL=(geometry._vf.colorType!==undefined&&geometry._vf.colorType!="Float32")?1:0;property.REQUIREBBOXTEX=(geometry._vf.texCoordType!==undefined&&geometry._vf.texCoordType!="Float32")?1:0;property.COLCOMPONENTS=geometry._mesh._numColComponents;property.NORCOMPONENTS=geometry._mesh._numNormComponents;property.POSCOMPONENTS=geometry._mesh._numPosComponents;property.SPHEREMAPPING=(geometry._cf.texCoord!==undefined&&geometry._cf.texCoord.node!==null&&geometry._cf.texCoord.node._vf.mode&&geometry._cf.texCoord.node._vf.mode.toLowerCase()=="sphere")?1:0;property.VERTEXCOLOR=(geometry._mesh._colors[0].length>0||(property.IMAGEGEOMETRY&&geometry.getColorTexture())||(property.POPGEOMETRY&&geometry.hasColor())||(geometry._vf.color!==undefined&&geometry._vf.color.length>0))?1:0;property.CLIPPLANES=shape._clipPlanes.length;property.ALPHATHRESHOLD=(appearance)?appearance._vf.alphaClipThreshold.toFixed(2):0.1;property.GAMMACORRECTION=environment._vf.gammaCorrectionDefault;}
property.toIdentifier=function(){var id="";for(var p in this){if(this[p]!=this.toIdentifier&&this[p]!=this.toString){id+=this[p];}}
this.id=id;return id;};property.toString=function(){var str="";for(var p in this){if(this[p]!=this.toIdentifier&&this[p]!=this.toString){str+=p+": "+this[p]+", ";}}
return str;};property.toIdentifier();return property;};x3dom.Utils.wrapProgram=function(gl,program,shaderID)
{var shader={shaderID:shaderID,program:program};shader.bind=function(){gl.useProgram(program);};var loc=null;var obj=null;var i,glErr;var numUniforms=gl.getProgramParameter(program,gl.ACTIVE_UNIFORMS);for(i=0;i<numUniforms;++i){try{obj=gl.getActiveUniform(program,i);}
catch(eu){if(!obj)continue;}
glErr=gl.getError();if(glErr){x3dom.debug.logError("GL-Error (on searching uniforms): "+glErr);}
loc=gl.getUniformLocation(program,obj.name);switch(obj.type){case gl.SAMPLER_2D:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform1i(loc,val);};})(loc));break;case gl.SAMPLER_CUBE:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform1i(loc,val);};})(loc));break;case gl.BOOL:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform1i(loc,val);};})(loc));break;case gl.FLOAT:if(obj.name.indexOf("[0]")!=-1)
shader.__defineSetter__(obj.name.substring(0,obj.name.length-3),(function(loc){return function(val){gl.uniform1fv(loc,new Float32Array(val));};})(loc));else
shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform1f(loc,val);};})(loc));break;case gl.FLOAT_VEC2:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform2f(loc,val[0],val[1]);};})(loc));break;case gl.FLOAT_VEC3:if(obj.name.indexOf("[0]")!=-1)
shader.__defineSetter__(obj.name.substring(0,obj.name.length-3),(function(loc){return function(val){gl.uniform3fv(loc,new Float32Array(val));};})(loc));else
shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform3f(loc,val[0],val[1],val[2]);};})(loc));break;case gl.FLOAT_VEC4:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform4f(loc,val[0],val[1],val[2],val[3]);};})(loc));break;case gl.FLOAT_MAT2:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniformMatrix2fv(loc,false,new Float32Array(val));};})(loc));break;case gl.FLOAT_MAT3:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniformMatrix3fv(loc,false,new Float32Array(val));};})(loc));break;case gl.FLOAT_MAT4:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniformMatrix4fv(loc,false,new Float32Array(val));};})(loc));break;case gl.INT:shader.__defineSetter__(obj.name,(function(loc){return function(val){gl.uniform1i(loc,val);};})(loc));break;default:x3dom.debug.logWarning('GLSL program variable '+obj.name+' has unknown type '+obj.type);}}
var numAttribs=gl.getProgramParameter(program,gl.ACTIVE_ATTRIBUTES);for(i=0;i<numAttribs;++i){try{obj=gl.getActiveAttrib(program,i);}
catch(ea){if(!obj)continue;}
glErr=gl.getError();if(glErr){x3dom.debug.logError("GL-Error (on searching attributes): "+glErr);}
loc=gl.getAttribLocation(program,obj.name);shader[obj.name]=loc;}
return shader;};x3dom.Utils.forbiddenBySOP=function(uri_string){uri_string=uri_string.toLowerCase();var Scheme_AuthorityPQF=uri_string.split('//');var Scheme;var AuthorityPQF;var Authority;var UserInfo_HostPort;var HostPort;var Host_Port;var Port;var Host;var originPort=document.location.port===""?"80":document.location.port;if(Scheme_AuthorityPQF.length===2){Scheme=Scheme_AuthorityPQF[0];AuthorityPQF=Scheme_AuthorityPQF[1];Authority=AuthorityPQF.split('/')[0].split('?')[0].split('#')[0];UserInfo_HostPort=Authority.split('@');if(UserInfo_HostPort.length===1){HostPort=UserInfo_HostPort[0];}else{HostPort=UserInfo_HostPort[1];}
Host_Port=HostPort.split(':');Host=Host_Port[0];Port=Host_Port[1];}
Port=Port||"80";Host=Host||document.location.host;Scheme=Scheme||document.location.protocol;return!(Port===originPort&&Host===document.location.host&&Scheme===document.location.protocol);};x3dom.States=function(x3dElem){var that=this;this.active=false;this.viewer=document.createElement('div');this.viewer.id='x3dom-state-viewer';var title=document.createElement('div');title.className='x3dom-states-head';title.appendChild(document.createTextNode('x3dom'));var subTitle=document.createElement('span');subTitle.className='x3dom-states-head2';subTitle.appendChild(document.createTextNode('stats'));title.appendChild(subTitle);this.renderMode=document.createElement('div');this.renderMode.className='x3dom-states-rendermode-hardware';this.measureList=document.createElement('ul');this.measureList.className='x3dom-states-list';this.infoList=document.createElement('ul');this.infoList.className='x3dom-states-list';this.viewer.appendChild(this.renderMode);this.viewer.appendChild(this.measureList);this.viewer.appendChild(this.infoList);this.disableContextMenu=function(e){e.preventDefault();e.stopPropagation();e.returnValue=false;return false;};this.thousandSeperator=function(value){return value.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",");};this.toFixed=function(value){var fixed=(value<1)?2:(value<10)?2:2;return value.toFixed(fixed);};this.update=function(){if(!x3dElem.runtime&&this.updateMethodID!==undefined){clearInterval(this.updateMethodID);return;}
var infos=x3dElem.runtime.states.infos;var measurements=x3dElem.runtime.states.measurements;var renderMode=x3dom.caps.RENDERMODE;if(renderMode=="HARDWARE"){this.renderMode.innerHTML="Hardware-Rendering";this.renderMode.className='x3dom-states-rendermode-hardware';}else if(renderMode=="SOFTWARE"){this.renderMode.innerHTML="Software-Rendering";this.renderMode.className='x3dom-states-rendermode-software';}
this.measureList.innerHTML="";for(var m in measurements){infoItem=document.createElement('li');infoItem.className='x3dom-states-item';infoTitle=document.createElement('div');infoTitle.className='x3dom-states-item-title';infoTitle.appendChild(document.createTextNode(m));infoValue=document.createElement('div');infoValue.className='x3dom-states-item-value';infoValue.appendChild(document.createTextNode(this.toFixed(measurements[m])));infoItem.appendChild(infoTitle);infoItem.appendChild(infoValue);this.measureList.appendChild(infoItem);}
this.infoList.innerHTML="";for(var i in infos){var infoItem=document.createElement('li');infoItem.className='x3dom-states-item';var infoTitle=document.createElement('div');infoTitle.className='x3dom-states-item-title';infoTitle.appendChild(document.createTextNode(i));var infoValue=document.createElement('div');infoValue.className='x3dom-states-item-value';infoValue.appendChild(document.createTextNode(this.thousandSeperator(infos[i])));infoItem.appendChild(infoTitle);infoItem.appendChild(infoValue);this.infoList.appendChild(infoItem);}};this.updateMethodID=window.setInterval(function(){that.update();},1000);this.viewer.addEventListener("contextmenu",that.disableContextMenu);};x3dom.States.prototype.display=function(value){this.active=(value!==undefined)?value:!this.active;this.viewer.style.display=(this.active)?"block":"none";};x3dom.StateManager=function(ctx3d)
{this.gl=ctx3d;this.states=[];this.initStates();};x3dom.StateManager.prototype.initStates=function()
{this.states['shaderID']=null;this.states['colorMask']={red:null,green:null,blue:null,alpha:null};this.states['depthMask']=null;this.states['stencilMask']=null;this.states['cullFace']=null;this.states['frontFace']=null;this.states['lineWidth']=null;this.states['blendColor']={red:null,green:null,blue:null,alpha:null};this.states['blendEquation']=null;this.states['blendEquationSeparate']={modeRGB:null,modeAlpha:null};this.states['blendFunc']={sfactor:null,dfactor:null};this.states['blendFuncSeparate']={srcRGB:null,dstRGB:null,srcAlpha:null,dstAlpha:null};this.states['depthFunc']=null;this.states['viewport']={x:null,y:null,width:null,height:null};this.states['depthRange']={zNear:null,zFar:null};};x3dom.StateManager.prototype.useProgram=function(shader)
{if(this.states['shaderID']!=shader.shaderID)
{this.gl.useProgram(shader.program);this.states['shaderID']=shader.shaderID;return true;}
return false;};x3dom.StateManager.prototype.unsetProgram=function()
{this.states['shaderID']=null;};x3dom.StateManager.prototype.enable=function(cap)
{if(this.states[cap]!==true)
{this.gl.enable(cap);this.states[cap]=true;}};x3dom.StateManager.prototype.disable=function(cap)
{if(this.states[cap]!==false)
{this.gl.disable(cap);this.states[cap]=false;}};x3dom.StateManager.prototype.colorMask=function(red,green,blue,alpha)
{if(this.states['colorMask'].red!=red||this.states['colorMask'].green!=green||this.states['colorMask'].blue!=blue||this.states['colorMask'].alpha!=alpha)
{this.gl.colorMask(red,green,blue,alpha);this.states['colorMask'].red=red;this.states['colorMask'].green=green;this.states['colorMask'].blue=blue;this.states['colorMask'].alpha=alpha;}};x3dom.StateManager.prototype.depthMask=function(flag)
{if(this.states['depthMask']!=flag)
{this.gl.depthMask(flag);this.states['depthMask']=flag;}};x3dom.StateManager.prototype.stencilMask=function(mask)
{if(this.states['stencilMask']!=mask)
{this.gl.stencilMask(mask);this.states['stencilMask']=mask;}};x3dom.StateManager.prototype.cullFace=function(mode)
{if(this.states['cullFace']!=mode)
{this.gl.cullFace(mode);this.states['cullFace']=mode;}};x3dom.StateManager.prototype.frontFace=function(mode)
{if(this.states['frontFace']!=mode)
{this.gl.frontFace(mode);this.states['frontFace']=mode;}};x3dom.StateManager.prototype.lineWidth=function(width)
{width=(width<=1)?1:width;if(this.states['lineWidth']!=width)
{this.gl.lineWidth(width);this.states['lineWidth']=width;}};x3dom.StateManager.prototype.blendColor=function(red,green,blue,alpha)
{if(this.states['blendColor'].red!=red||this.states['blendColor'].green!=green||this.states['blendColor'].blue!=blue||this.states['blendColor'].alpha!=alpha)
{this.gl.blendColor(red,green,blue,alpha);this.states['blendColor'].red=red;this.states['blendColor'].green=green;this.states['blendColor'].blue=blue;this.states['blendColor'].alpha=alpha;}};x3dom.StateManager.prototype.blendEquation=function(mode)
{if(mode&&this.states['blendEquation']!=mode)
{this.gl.blendEquation(mode);this.states['blendEquation']=mode;}};x3dom.StateManager.prototype.blendEquationSeparate=function(modeRGB,modeAlpha)
{if(this.states['blendEquationSeparate'].modeRGB!=modeRGB||this.states['blendEquationSeparate'].modeAlpha!=modeAlpha)
{this.gl.blendEquationSeparate(modeRGB,modeAlpha);this.states['blendEquationSeparate'].modeRGB=modeRGB;this.states['blendEquationSeparate'].modeAlpha=modeAlpha;}};x3dom.StateManager.prototype.blendFunc=function(sfactor,dfactor)
{if(this.states['blendFunc'].sfactor!=sfactor||this.states['blendFunc'].dfactor!=dfactor)
{this.gl.blendFunc(sfactor,dfactor);this.states['blendFunc'].sfactor=sfactor;this.states['blendFunc'].dfactor=dfactor;}};x3dom.StateManager.prototype.blendFuncSeparate=function(srcRGB,dstRGB,srcAlpha,dstAlpha)
{if(this.states['blendFuncSeparate'].srcRGB!=srcRGB||this.states['blendFuncSeparate'].dstRGB!=dstRGB||this.states['blendFuncSeparate'].srcAlpha!=srcAlpha||this.states['blendFuncSeparate'].dstAlpha!=dstAlpha)
{this.gl.blendFuncSeparate(srcRGB,dstRGB,srcAlpha,dstAlpha);this.states['blendFuncSeparate'].srcRGB=srcRGB;this.states['blendFuncSeparate'].dstRGB=dstRGB;this.states['blendFuncSeparate'].srcAlpha=srcAlpha;this.states['blendFuncSeparate'].dstAlpha=dstAlpha;}};x3dom.StateManager.prototype.depthFunc=function(func)
{if(this.states['depthFunc']!=func)
{this.gl.depthFunc(func);this.states['depthFunc']=func;}};x3dom.StateManager.prototype.depthRange=function(zNear,zFar)
{if(zNear<0||zFar<0||zNear>zFar)
{return;}
zNear=(zNear>1)?1:zNear;zFar=(zFar>1)?1:zFar;if(this.states['depthRange'].zNear!=zNear||this.states['depthRange'].zFar!=zFar)
{this.gl.depthRange(zNear,zFar);this.states['depthRange'].zNear=zNear;this.states['depthRange'].zFar=zFar;}};x3dom.StateManager.prototype.viewport=function(x,y,width,height)
{if(this.states['viewport'].x!=x||this.states['viewport'].y!=y||this.states['viewport'].width!=width||this.states['viewport'].height!=height)
{this.gl.viewport(x,y,width,height);this.states['viewport'].x=x;this.states['viewport'].y=y;this.states['viewport'].width=width;this.states['viewport'].height=height;}};x3dom.StateManager.prototype.bindFramebuffer=function(target,framebuffer)
{this.gl.bindFramebuffer(target,framebuffer);this.initStates();};x3dom.BinaryContainerLoader={outOfMemory:false,checkError:function(gl){var glErr=gl.getError();if(glErr){if(glErr==gl.OUT_OF_MEMORY){this.outOfMemory=true;x3dom.debug.logError("GL-Error "+glErr+" on loading binary container (out of memory).");console.error("WebGL: OUT_OF_MEMORY");}
else{x3dom.debug.logError("GL-Error "+glErr+" on loading binary container.");}}}};x3dom.BinaryContainerLoader.setupBinGeo=function(shape,sp,gl,viewarea,currContext)
{if(this.outOfMemory){return;}
var t00=new Date().getTime();var that=this;var binGeo=shape._cf.geometry.node;shape._webgl.binaryGeometry=-1;shape._webgl.internalDownloadCount=((binGeo._vf.index.length>0)?1:0)+
((binGeo._hasStrideOffset&&binGeo._vf.coord.length>0)?1:0)+
((!binGeo._hasStrideOffset&&binGeo._vf.coord.length>0)?1:0)+
((!binGeo._hasStrideOffset&&binGeo._vf.normal.length>0)?1:0)+
((!binGeo._hasStrideOffset&&binGeo._vf.texCoord.length>0)?1:0)+
((!binGeo._hasStrideOffset&&binGeo._vf.color.length>0)?1:0);var createTriangleSoup=(binGeo._vf.normalPerVertex==false)||((binGeo._vf.index.length>0)&&(binGeo._vf.indexType=="Int32"||(binGeo._vf.indexType=="Uint32"&&!x3dom.caps.INDEX_UINT)));shape._webgl.makeSeparateTris={index:null,coord:null,normal:null,texCoord:null,color:null,pushBuffer:function(name,buf){this[name]=buf;if(--shape._webgl.internalDownloadCount==0){if(this.coord)
this.createMesh();shape._nameSpace.doc.needRender=true;}
if(--shape._nameSpace.doc.downloadCount==0)
shape._nameSpace.doc.needRender=true;},createMesh:function(){var geoNode=binGeo;if(geoNode._hasStrideOffset){x3dom.debug.logError(geoNode._vf.indexType+" index type and per-face normals not supported for interleaved arrays.");return;}
for(var k=0;k<shape._webgl.primType.length;k++){if(shape._webgl.primType[k]==gl.TRIANGLE_STRIP){x3dom.debug.logError("makeSeparateTris: triangle strips not yet supported for per-face normals.");return;}}
var attribTypeStr=geoNode._vf.coordType;shape._webgl.coordType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);var bgCenter,bgSize,bgPrecisionMax;if(shape._webgl.coordType!=gl.FLOAT)
{if(geoNode._mesh._numPosComponents==4&&x3dom.Utils.isUnsignedType(geoNode._vf.coordType))
bgCenter=x3dom.fields.SFVec3f.copy(geoNode.getMin());else
bgCenter=x3dom.fields.SFVec3f.copy(geoNode._vf.position);bgSize=x3dom.fields.SFVec3f.copy(geoNode._vf.size);bgPrecisionMax=geoNode.getPrecisionMax('coordType');}
else
{bgCenter=new x3dom.fields.SFVec3f(0,0,0);bgSize=new x3dom.fields.SFVec3f(1,1,1);bgPrecisionMax=1.0;}
var dataLen=shape._coordStrideOffset[0]/x3dom.Utils.getDataTypeSize(geoNode._vf.coordType);dataLen=(dataLen==0)?3:dataLen;x3dom.debug.logWarning("makeSeparateTris.createMesh called with coord length "+dataLen);if(this.color&&dataLen!=shape._colorStrideOffset[0]/x3dom.Utils.getDataTypeSize(geoNode._vf.colorType))
{this.color=null;x3dom.debug.logWarning("Color format not supported.");}
var texDataLen=this.texCoord?(shape._texCoordStrideOffset[0]/x3dom.Utils.getDataTypeSize(geoNode._vf.texCoordType)):0;geoNode._vf.normalType="Float32";shape._webgl.normalType=gl.FLOAT;geoNode._mesh._numNormComponents=3;shape._normalStrideOffset=[0,0];var posBuf=[],normBuf=[],texcBuf=[],colBuf=[];var i,j,l,n=this.index?(this.index.length-2):(this.coord.length/3-2);for(i=0;i<n;i+=3)
{j=dataLen*(this.index?this.index[i]:i);var p0=new x3dom.fields.SFVec3f(bgSize.x*this.coord[j]/bgPrecisionMax,bgSize.y*this.coord[j+1]/bgPrecisionMax,bgSize.z*this.coord[j+2]/bgPrecisionMax);posBuf.push(this.coord[j]);posBuf.push(this.coord[j+1]);posBuf.push(this.coord[j+2]);if(dataLen>3)posBuf.push(this.coord[j+3]);if(this.color){colBuf.push(this.color[j]);colBuf.push(this.color[j+1]);colBuf.push(this.color[j+2]);if(dataLen>3)colBuf.push(this.color[j+3]);}
if(this.texCoord){l=texDataLen*(this.index?this.index[i]:i);texcBuf.push(this.texCoord[l]);texcBuf.push(this.texCoord[l+1]);if(texDataLen>3){texcBuf.push(this.texCoord[l+2]);texcBuf.push(this.texCoord[l+3]);}}
j=dataLen*(this.index?this.index[i+1]:i+1);var p1=new x3dom.fields.SFVec3f(bgSize.x*this.coord[j]/bgPrecisionMax,bgSize.y*this.coord[j+1]/bgPrecisionMax,bgSize.z*this.coord[j+2]/bgPrecisionMax);posBuf.push(this.coord[j]);posBuf.push(this.coord[j+1]);posBuf.push(this.coord[j+2]);if(dataLen>3)posBuf.push(this.coord[j+3]);if(this.color){colBuf.push(this.color[j]);colBuf.push(this.color[j+1]);colBuf.push(this.color[j+2]);if(dataLen>3)colBuf.push(this.color[j+3]);}
if(this.texCoord){l=texDataLen*(this.index?this.index[i+1]:i+1);texcBuf.push(this.texCoord[l]);texcBuf.push(this.texCoord[l+1]);if(texDataLen>3){texcBuf.push(this.texCoord[l+2]);texcBuf.push(this.texCoord[l+3]);}}
j=dataLen*(this.index?this.index[i+2]:i+2);var p2=new x3dom.fields.SFVec3f(bgSize.x*this.coord[j]/bgPrecisionMax,bgSize.y*this.coord[j+1]/bgPrecisionMax,bgSize.z*this.coord[j+2]/bgPrecisionMax);posBuf.push(this.coord[j]);posBuf.push(this.coord[j+1]);posBuf.push(this.coord[j+2]);if(dataLen>3)posBuf.push(this.coord[j+3]);if(this.color){colBuf.push(this.color[j]);colBuf.push(this.color[j+1]);colBuf.push(this.color[j+2]);if(dataLen>3)colBuf.push(this.color[j+3]);}
if(this.texCoord){l=texDataLen*(this.index?this.index[i+2]:i+2);texcBuf.push(this.texCoord[l]);texcBuf.push(this.texCoord[l+1]);if(texDataLen>3){texcBuf.push(this.texCoord[l+2]);texcBuf.push(this.texCoord[l+3]);}}
var a=p0.subtract(p1);var b=p1.subtract(p2);var norm=a.cross(b).normalize();for(j=0;j<3;j++){normBuf.push(norm.x);normBuf.push(norm.y);normBuf.push(norm.z);}}
var buffer=gl.createBuffer();shape._webgl.buffers[1]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,x3dom.Utils.getArrayBufferView(geoNode._vf.coordType,posBuf),gl.STATIC_DRAW);gl.vertexAttribPointer(sp.position,geoNode._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);buffer=gl.createBuffer();shape._webgl.buffers[2]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array(normBuf),gl.STATIC_DRAW);gl.vertexAttribPointer(sp.normal,geoNode._mesh._numNormComponents,shape._webgl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);if(this.texCoord)
{buffer=gl.createBuffer();shape._webgl.buffers[3]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,x3dom.Utils.getArrayBufferView(geoNode._vf.texCoordType,texcBuf),gl.STATIC_DRAW);gl.vertexAttribPointer(sp.texcoord,geoNode._mesh._numTexComponents,shape._webgl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);}
if(this.color)
{buffer=gl.createBuffer();shape._webgl.buffers[4]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,x3dom.Utils.getArrayBufferView(geoNode._vf.colorType,colBuf),gl.STATIC_DRAW);gl.vertexAttribPointer(sp.color,geoNode._mesh._numColComponents,shape._webgl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);}
geoNode._vf.vertexCount=[];geoNode._vf.vertexCount[0]=posBuf.length/dataLen;geoNode._mesh._numCoords=geoNode._vf.vertexCount[0];geoNode._mesh._numFaces=geoNode._vf.vertexCount[0]/3;shape._webgl.primType=[];shape._webgl.primType[0]=gl.TRIANGLES;posBuf=null;normBuf=null;texcBuf=null;colBuf=null;this.index=null;this.coord=null;this.normal=null;this.texCoord=null;this.color=null;that.checkError(gl);delete shape._webgl.shader;shape._webgl.shader=currContext.cache.getDynamicShader(gl,viewarea,shape);}};if(binGeo._vf.index.length>0)
{var xmlhttp0=new XMLHttpRequest();xmlhttp0.open("GET",shape._nameSpace.getURL(binGeo._vf.index),true);xmlhttp0.responseType="arraybuffer";shape._nameSpace.doc.downloadCount+=1;xmlhttp0.send(null);xmlhttp0.onload=function()
{if(!shape._webgl)
return;var XHR_buffer=binGeo._vf.compressed==true?x3dom.Utils.gunzip(xmlhttp0.response):xmlhttp0.response;var geoNode=binGeo;var attribTypeStr=geoNode._vf.indexType;var indexArray=x3dom.Utils.getArrayBufferView(attribTypeStr,XHR_buffer);if(createTriangleSoup){shape._webgl.makeSeparateTris.pushBuffer("index",indexArray);return;}
var indicesBuffer=gl.createBuffer();shape._webgl.buffers[0]=indicesBuffer;if(x3dom.caps.INDEX_UINT&&attribTypeStr=="Uint32"){shape._webgl.indexType=gl.UNSIGNED_INT;}
else{shape._webgl.indexType=gl.UNSIGNED_SHORT;}
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,indicesBuffer);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,indexArray,gl.STATIC_DRAW);shape._webgl.binaryGeometry=1;if(geoNode._vf.vertexCount[0]==0)
geoNode._vf.vertexCount[0]=indexArray.length;geoNode._mesh._numFaces=0;for(var i=0;i<geoNode._vf.vertexCount.length;i++){if(shape._webgl.primType[i]==gl.TRIANGLE_STRIP)
geoNode._mesh._numFaces+=geoNode._vf.vertexCount[i]-2;else
geoNode._mesh._numFaces+=geoNode._vf.vertexCount[i]/3;}
indexArray=null;shape._nameSpace.doc.downloadCount-=1;shape._webgl.internalDownloadCount-=1;if(shape._webgl.internalDownloadCount==0)
shape._nameSpace.doc.needRender=true;that.checkError(gl);var t11=new Date().getTime()-t00;x3dom.debug.logInfo("XHR0/ index load time: "+t11+" ms");};}
if(binGeo._hasStrideOffset&&binGeo._vf.coord.length>0)
{var xmlhttp=new XMLHttpRequest();xmlhttp.open("GET",shape._nameSpace.getURL(binGeo._vf.coord),true);xmlhttp.responseType="arraybuffer";shape._nameSpace.doc.downloadCount+=1;xmlhttp.send(null);xmlhttp.onload=function()
{if(!shape._webgl)
return;var XHR_buffer=binGeo._vf.compressed==true?x3dom.Utils.gunzip(xmlhttp.response):xmlhttp.response;var geoNode=binGeo;var attribTypeStr=geoNode._vf.coordType;shape._webgl.coordType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);shape._webgl.normalType=shape._webgl.coordType;shape._webgl.texCoordType=shape._webgl.coordType;shape._webgl.colorType=shape._webgl.coordType;var attributes=x3dom.Utils.getArrayBufferView(attribTypeStr,XHR_buffer);var dataLen=shape._coordStrideOffset[0]/x3dom.Utils.getDataTypeSize(attribTypeStr);if(dataLen)
geoNode._mesh._numCoords=attributes.length/dataLen;if(geoNode._vf.index.length==0){for(var i=0;i<geoNode._vf.vertexCount.length;i++){if(shape._webgl.primType[i]==gl.TRIANGLE_STRIP)
geoNode._mesh._numFaces+=geoNode._vf.vertexCount[i]-2;else
geoNode._mesh._numFaces+=geoNode._vf.vertexCount[i]/3;}}
var buffer=gl.createBuffer();shape._webgl.buffers[1]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,attributes,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.position,geoNode._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);if(geoNode._vf.normal.length>0)
{shape._webgl.buffers[2]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,attributes,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.normal,geoNode._mesh._numNormComponents,shape._webgl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);}
if(geoNode._vf.texCoord.length>0)
{console.log("YUPPIE");shape._webgl.buffers[3]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,attributes,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.texcoord,geoNode._mesh._numTexComponents,shape._webgl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);}
if(geoNode._vf.color.length>0)
{shape._webgl.buffers[4]=buffer;gl.bindBuffer(gl.ARRAY_BUFFER,buffer);gl.bufferData(gl.ARRAY_BUFFER,attributes,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.color,geoNode._mesh._numColComponents,shape._webgl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);}
attributes=null;shape._nameSpace.doc.downloadCount-=1;shape._webgl.internalDownloadCount-=1;if(shape._webgl.internalDownloadCount==0)
shape._nameSpace.doc.needRender=true;that.checkError(gl);var t11=new Date().getTime()-t00;x3dom.debug.logInfo("XHR/ interleaved array load time: "+t11+" ms");};}
if(!binGeo._hasStrideOffset&&binGeo._vf.coord.length>0)
{var xmlhttp1=new XMLHttpRequest();xmlhttp1.open("GET",shape._nameSpace.getURL(binGeo._vf.coord),true);xmlhttp1.responseType="arraybuffer";shape._nameSpace.doc.downloadCount+=1;xmlhttp1.send(null);xmlhttp1.onload=function()
{if(!shape._webgl)
return;var XHR_buffer=binGeo._vf.compressed==true?x3dom.Utils.gunzip(xmlhttp1.response):xmlhttp1.response;var geoNode=binGeo;var i=0;var attribTypeStr=geoNode._vf.coordType;shape._webgl.coordType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);var vertices=x3dom.Utils.getArrayBufferView(attribTypeStr,XHR_buffer);if(createTriangleSoup){shape._webgl.makeSeparateTris.pushBuffer("coord",vertices);return;}
gl.bindAttribLocation(sp.program,0,"position");var positionBuffer=gl.createBuffer();shape._webgl.buffers[1]=positionBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.vertexAttribPointer(sp.position,geoNode._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);geoNode._mesh._numCoords=vertices.length/geoNode._mesh._numPosComponents;if(geoNode._vf.index.length==0){for(i=0;i<geoNode._vf.vertexCount.length;i++){if(shape._webgl.primType[i]==gl.TRIANGLE_STRIP)
geoNode._mesh._numFaces+=geoNode._vf.vertexCount[i]-2;else
geoNode._mesh._numFaces+=geoNode._vf.vertexCount[i]/3;}}
if((attribTypeStr=="Float32")&&(shape._vf.bboxSize.x<0||shape._vf.bboxSize.y<0||shape._vf.bboxSize.z<0))
{var min=new x3dom.fields.SFVec3f(vertices[0],vertices[1],vertices[2]);var max=new x3dom.fields.SFVec3f(vertices[0],vertices[1],vertices[2]);for(i=3;i<vertices.length;i+=3)
{if(min.x>vertices[i+0]){min.x=vertices[i+0];}
if(min.y>vertices[i+1]){min.y=vertices[i+1];}
if(min.z>vertices[i+2]){min.z=vertices[i+2];}
if(max.x<vertices[i+0]){max.x=vertices[i+0];}
if(max.y<vertices[i+1]){max.y=vertices[i+1];}
if(max.z<vertices[i+2]){max.z=vertices[i+2];}}
shape._vf.bboxCenter.setValues(min.add(max).multiply(0.5));shape._vf.bboxSize.setValues(max.subtract(min));}
vertices=null;shape._nameSpace.doc.downloadCount-=1;shape._webgl.internalDownloadCount-=1;if(shape._webgl.internalDownloadCount==0)
shape._nameSpace.doc.needRender=true;that.checkError(gl);var t11=new Date().getTime()-t00;x3dom.debug.logInfo("XHR1/ coord load time: "+t11+" ms");};}
if(!binGeo._hasStrideOffset&&binGeo._vf.normal.length>0)
{var xmlhttp2=new XMLHttpRequest();xmlhttp2.open("GET",shape._nameSpace.getURL(binGeo._vf.normal),true);xmlhttp2.responseType="arraybuffer";shape._nameSpace.doc.downloadCount+=1;xmlhttp2.send(null);xmlhttp2.onload=function()
{if(!shape._webgl)
return;var XHR_buffer=binGeo._vf.compressed==true?x3dom.Utils.gunzip(xmlhttp2.response):xmlhttp2.response;var attribTypeStr=binGeo._vf.normalType;shape._webgl.normalType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);var normals=x3dom.Utils.getArrayBufferView(attribTypeStr,XHR_buffer);if(createTriangleSoup){shape._webgl.makeSeparateTris.pushBuffer("normal",normals);return;}
var normalBuffer=gl.createBuffer();shape._webgl.buffers[2]=normalBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,normalBuffer);gl.bufferData(gl.ARRAY_BUFFER,normals,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.normal,binGeo._mesh._numNormComponents,shape._webgl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);normals=null;shape._nameSpace.doc.downloadCount-=1;shape._webgl.internalDownloadCount-=1;if(shape._webgl.internalDownloadCount==0)
shape._nameSpace.doc.needRender=true;that.checkError(gl);var t11=new Date().getTime()-t00;x3dom.debug.logInfo("XHR2/ normal load time: "+t11+" ms");};}
if(!binGeo._hasStrideOffset&&binGeo._vf.texCoord.length>0)
{var xmlhttp3=new XMLHttpRequest();xmlhttp3.open("GET",shape._nameSpace.getURL(binGeo._vf.texCoord),true);xmlhttp3.responseType="arraybuffer";shape._nameSpace.doc.downloadCount+=1;xmlhttp3.send(null);xmlhttp3.onload=function()
{var i,j;var tmp;if(!shape._webgl)
return;var XHR_buffer=binGeo._vf.compressed==true?x3dom.Utils.gunzip(xmlhttp3.response):xmlhttp3.response;var attribTypeStr=binGeo._vf.texCoordType;shape._webgl.texCoordType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);var texCoords=x3dom.Utils.getArrayBufferView(attribTypeStr,XHR_buffer);if(createTriangleSoup){shape._webgl.makeSeparateTris.pushBuffer("texCoord",texCoords);return;}
if(binGeo._vf["idsPerVertex"])
{var idBuffer=gl.createBuffer();shape._webgl.buffers[5]=idBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,idBuffer);var ids=x3dom.Utils.getArrayBufferView("Float32",texCoords.length/2);for(i=0,j=0;i<texCoords.length;i+=2,j++)
{ids[j]=texCoords[i+1]*65536+texCoords[i];}
gl.bufferData(gl.ARRAY_BUFFER,ids,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.id,1,gl.FLOAT,false,4,0);gl.enableVertexAttribArray(sp.id);}
else
{var texcBuffer=gl.createBuffer();shape._webgl.buffers[3]=texcBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,texcBuffer);gl.bufferData(gl.ARRAY_BUFFER,texCoords,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.texcoord,binGeo._mesh._numTexComponents,shape._webgl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);}
texCoords=null;shape._nameSpace.doc.downloadCount-=1;shape._webgl.internalDownloadCount-=1;if(shape._webgl.internalDownloadCount==0)
shape._nameSpace.doc.needRender=true;that.checkError(gl);var t11=new Date().getTime()-t00;x3dom.debug.logInfo("XHR3/ texCoord load time: "+t11+" ms");};}
if(!binGeo._hasStrideOffset&&binGeo._vf.color.length>0)
{var xmlhttp4=new XMLHttpRequest();xmlhttp4.open("GET",shape._nameSpace.getURL(binGeo._vf.color),true);xmlhttp4.responseType="arraybuffer";shape._nameSpace.doc.downloadCount+=1;xmlhttp4.send(null);xmlhttp4.onload=function()
{if(!shape._webgl)
return;var XHR_buffer=binGeo._vf.compressed==true?x3dom.Utils.gunzip(xmlhttp4.response):xmlhttp4.response;var attribTypeStr=binGeo._vf.colorType;shape._webgl.colorType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);var colors=x3dom.Utils.getArrayBufferView(attribTypeStr,XHR_buffer);if(createTriangleSoup){shape._webgl.makeSeparateTris.pushBuffer("color",colors);return;}
var colorBuffer=gl.createBuffer();shape._webgl.buffers[4]=colorBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,colorBuffer);gl.bufferData(gl.ARRAY_BUFFER,colors,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.color,binGeo._mesh._numColComponents,shape._webgl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);colors=null;shape._nameSpace.doc.downloadCount-=1;shape._webgl.internalDownloadCount-=1;if(shape._webgl.internalDownloadCount==0)
shape._nameSpace.doc.needRender=true;that.checkError(gl);var t11=new Date().getTime()-t00;x3dom.debug.logInfo("XHR4/ color load time: "+t11+" ms");};}};x3dom.BinaryContainerLoader.setupPopGeo=function(shape,sp,gl,viewarea,currContext)
{if(this.outOfMemory){return;}
var popGeo=shape._cf.geometry.node;if(popGeo.hasIndex()){shape._webgl.popGeometry=1;shape._webgl.buffers[0]=gl.createBuffer();gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,shape._webgl.buffers[0]);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,popGeo.getTotalNumberOfIndices()*2,gl.STATIC_DRAW);shape._webgl.buffers[5]=gl.createBuffer();var idBuffer=new Float32Array(popGeo._vf.vertexBufferSize);(function(){for(var i=0;i<idBuffer.length;++i)idBuffer[i]=i;})();gl.bindBuffer(gl.ARRAY_BUFFER,shape._webgl.buffers[5]);gl.bufferData(gl.ARRAY_BUFFER,idBuffer,gl.STATIC_DRAW);}
else{shape._webgl.popGeometry=-1;}
shape._webgl.buffers[1]=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,shape._webgl.buffers[1]);gl.bufferData(gl.ARRAY_BUFFER,(popGeo._vf.attributeStride*popGeo._vf.vertexBufferSize),gl.STATIC_DRAW);var attribTypeStr=popGeo._vf.coordType;shape._webgl.coordType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);shape._coordStrideOffset[0]=popGeo.getAttributeStride();shape._coordStrideOffset[1]=popGeo.getPositionOffset();gl.vertexAttribPointer(sp.position,shape._cf.geometry.node._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);if(popGeo.hasNormal()){attribTypeStr=popGeo._vf.normalType;shape._webgl.normalType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);shape._normalStrideOffset[0]=popGeo.getAttributeStride();shape._normalStrideOffset[1]=popGeo.getNormalOffset();shape._webgl.buffers[2]=shape._webgl.buffers[1];gl.vertexAttribPointer(sp.normal,shape._cf.geometry.node._mesh._numNormComponents,shape._webgl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);}
if(popGeo.hasTexCoord()){attribTypeStr=popGeo._vf.texCoordType;shape._webgl.texCoordType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);shape._webgl.buffers[3]=shape._webgl.buffers[1];shape._texCoordStrideOffset[0]=popGeo.getAttributeStride();shape._texCoordStrideOffset[1]=popGeo.getTexCoordOffset();gl.vertexAttribPointer(sp.texcoord,shape._cf.geometry.node._mesh._numTexComponents,shape._webgl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);}
if(popGeo.hasColor()){attribTypeStr=popGeo._vf.colorType;shape._webgl.colorType=x3dom.Utils.getVertexAttribType(attribTypeStr,gl);shape._webgl.buffers[4]=shape._webgl.buffers[1];shape._colorStrideOffset[0]=popGeo.getAttributeStride();shape._colorStrideOffset[1]=popGeo.getColorOffset();gl.vertexAttribPointer(sp.color,shape._cf.geometry.node._mesh._numColComponents,shape._webgl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);}
shape._webgl.currentNumIndices=0;shape._webgl.currentNumVertices=0;shape._webgl.numVerticesAtLevel=[];shape._webgl.levelsAvailable=0;this.checkError(gl);shape._webgl.levelLoaded=[];(function(){for(var i=0;i<popGeo.getNumLevels();++i)
shape._webgl.levelLoaded.push(false);})();var uploadDataToGPU=function(data,lvl){shape._webgl.levelLoaded[lvl]=true;shape._webgl.numVerticesAtLevel[lvl]=0;if(data){var indexDataLengthInBytes=0;var redrawNeeded=false;if(popGeo.hasIndex()){indexDataLengthInBytes=popGeo.getNumIndicesByLevel(lvl)*2;if(indexDataLengthInBytes>0){redrawNeeded=true;var indexDataView=new Uint8Array(data,0,indexDataLengthInBytes);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,shape._webgl.buffers[0]);(function(){var indexDataOffset=0;for(var i=0;i<lvl;++i){indexDataOffset+=popGeo.getNumIndicesByLevel(i);}
gl.bufferSubData(gl.ELEMENT_ARRAY_BUFFER,indexDataOffset*2,indexDataView);})();}}
var vertexDataLengthInBytes=data.byteLength-indexDataLengthInBytes;if(vertexDataLengthInBytes>0){redrawNeeded=true;var attributeDataView=new Uint8Array(data,indexDataLengthInBytes,vertexDataLengthInBytes);gl.bindBuffer(gl.ARRAY_BUFFER,shape._webgl.buffers[1]);if(!popGeo.hasIndex()){gl.bufferSubData(gl.ARRAY_BUFFER,shape._webgl.currentNumVertices*popGeo.getAttributeStride(),attributeDataView);}
else{gl.bufferSubData(gl.ARRAY_BUFFER,popGeo.getVertexDataBufferOffset(lvl)*popGeo.getAttributeStride(),attributeDataView);}
shape._webgl.numVerticesAtLevel[lvl]=vertexDataLengthInBytes/popGeo.getAttributeStride();shape._webgl.currentNumVertices+=shape._webgl.numVerticesAtLevel[lvl];}
(function(){var numValidIndices=0;for(var i=shape._webgl.levelsAvailable;i<popGeo.getNumLevels();++i){if(shape._webgl.levelLoaded[i]===false){break;}
else{numValidIndices+=popGeo.getNumIndicesByLevel(i);++shape._webgl.levelsAvailable;}}
shape._webgl.currentNumIndices=numValidIndices;})();popGeo._mesh._numCoords=shape._webgl.currentNumVertices;popGeo._mesh._numFaces=(popGeo.hasIndex()?shape._webgl.currentNumIndices:shape._webgl.currentNumVertices)/3;popGeo.adaptVertexCount(popGeo.hasIndex()?popGeo._mesh._numFaces*3:popGeo._mesh._numCoords);if(redrawNeeded){shape._nameSpace.doc.needRender=true;}}};var dataURLs=popGeo.getDataURLs();var downloadCallbacks=[];var priorities=[];shape._webgl.downloadStartTimer=new Date().getTime();for(var i=0;i<dataURLs.length;++i){shape._nameSpace.doc.downloadCount+=1;(function(idx){downloadCallbacks.push(function(data){shape._nameSpace.doc.downloadCount-=1;return uploadDataToGPU(data,idx);});})(i);priorities.push(i);}
x3dom.DownloadManager.get(dataURLs,downloadCallbacks,priorities);};x3dom.BinaryContainerLoader.setupImgGeo=function(shape,sp,gl,viewarea,currContext)
{if(this.outOfMemory){return;}
var imageGeometry=shape._cf.geometry.node;if(imageGeometry.getIndexTexture()){shape._webgl.imageGeometry=1;}else{shape._webgl.imageGeometry=-1;}
imageGeometry.unsetGeoDirty();if(currContext.IG_PositionBuffer==null){currContext.IG_PositionBuffer=gl.createBuffer();}
shape._webgl.buffers[1]=currContext.IG_PositionBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,currContext.IG_PositionBuffer);var vertices=new Float32Array(shape._webgl.positions[0]);gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,currContext.IG_PositionBuffer);gl.vertexAttribPointer(sp.position,imageGeometry._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);vertices=null;this.checkError(gl);};x3dom.DrawableCollection=function(drawableCollectionConfig){this.collection=[];this.viewMatrix=drawableCollectionConfig.viewMatrix;this.projMatrix=drawableCollectionConfig.projMatrix;this.sceneMatrix=drawableCollectionConfig.sceneMatrix;this.viewarea=drawableCollectionConfig.viewArea;var scene=this.viewarea._scene;var env=scene.getEnvironment();var viewpoint=scene.getViewpoint();this.near=viewpoint.getNear();this.pixelHeightAtDistOne=viewpoint.getImgPlaneHeightAtDistOne()/this.viewarea._height;this.context=drawableCollectionConfig.context;this.gl=drawableCollectionConfig.gl;this.viewFrustum=this.viewarea.getViewfrustum(this.sceneMatrix);this.worldVol=new x3dom.fields.BoxVolume();this.frustumCulling=drawableCollectionConfig.frustumCulling&&(this.viewFrustum!=null);this.smallFeatureThreshold=drawableCollectionConfig.smallFeatureThreshold;this.sortOpaque=(this.smallFeatureThreshold>0&&env._lowPriorityThreshold<1);this.sortTrans=drawableCollectionConfig.sortTrans;this.prioLevels=10;this.maxTreshold=100;this.sortBySortKey=false;this.sortByPriority=false;this.numberOfNodes=0;this.length=0;};x3dom.DrawableCollection.prototype.cull=function(transform,graphState,singlePath,planeMask){var node=graphState.boundedNode;if(!node||!node._vf.render){return 0;}
var volume=node.getVolume();var MASK_SET=63;if(this.frustumCulling&&graphState.needCulling){var wvol;if(singlePath&&!graphState.worldVolume.isValid()){graphState.worldVolume.transformFrom(transform,volume);wvol=graphState.worldVolume;}
else if(planeMask<MASK_SET){this.worldVol.transformFrom(transform,volume);wvol=this.worldVol;}
if(planeMask<MASK_SET)
planeMask=this.viewFrustum.intersect(wvol,planeMask);if(planeMask<=0){return-1;}}
else{planeMask=MASK_SET;}
graphState.coverage=-1;if(this.smallFeatureThreshold>0||node.forceUpdateCoverage()){var modelViewMat=this.viewMatrix.mult(transform);graphState.center=modelViewMat.multMatrixPnt(volume.getCenter());var rVec=modelViewMat.multMatrixVec(volume.getRadialVec());var r=rVec.length();var dist=Math.max(-graphState.center.z-r,this.near);var projPixelLength=dist*this.pixelHeightAtDistOne;graphState.coverage=(r*2.0)/projPixelLength;if(this.smallFeatureThreshold>0&&graphState.coverage<this.smallFeatureThreshold&&graphState.needCulling){return 0;}}
this.numberOfNodes++;return planeMask;};x3dom.DrawableCollection.prototype.addShape=function(shape,transform,graphState){var drawable={};drawable.shape=shape;drawable.transform=transform;drawable.localTransform=graphState.localMatrix;drawable.localVolume=graphState.volume;drawable.worldVolume=x3dom.fields.BoxVolume.copy(graphState.worldVolume);drawable.priority=Math.max(0,graphState.coverage);drawable.shaderID=shape.getShaderProperties(this.viewarea).id;var appearance=shape._cf.appearance.node;drawable.sortType=appearance?appearance._vf.sortType.toLowerCase():"opaque";drawable.sortKey=appearance?appearance._vf.sortKey:0;if(drawable.sortType=='transparent'){if(this.smallFeatureThreshold>0){drawable.zPos=graphState.center.z;}
else{var center=transform.multMatrixPnt(shape.getCenter());center=this.viewMatrix.multMatrixPnt(center);drawable.zPos=center.z;}}
if(!this.sortBySortKey&&drawable.sortKey!=0){this.sortBySortKey=true;}
if(this.collection[drawable.sortType]===undefined){this.collection[drawable.sortType]=[];}
this.collection[drawable.sortType].push(drawable);this.length++;if(this.context&&this.gl){this.context.setupShape(this.gl,drawable,this.viewarea);}};x3dom.DrawableCollection.prototype.addDrawable=function(drawable){drawable.shaderID=drawable.shape.getShaderProperties(this.viewarea).id;var appearance=drawable.shape._cf.appearance.node;drawable.sortType=appearance?appearance._vf.sortType.toLowerCase():"opaque";drawable.sortKey=appearance?appearance._vf.sortKey:0;if(drawable.sortType=='transparent'){var center=drawable.transform.multMatrixPnt(drawable.shape.getCenter());center=this.viewMatrix.multMatrixPnt(center);drawable.zPos=center.z;}
if(!this.sortBySortKey&&drawable.sortKey!=0){this.sortBySortKey=true;}
if(this.collection[drawable.sortType]===undefined){this.collection[drawable.sortType]=[];}
this.collection[drawable.sortType].push(drawable);this.length++;if(this.context&&this.gl){this.context.setupShape(this.gl,drawable,this.viewarea);}};x3dom.DrawableCollection.prototype.calculatePriority=function(graphState){var priority=Math.max(0,graphState.coverage);var pl=this.prioLevels-1;priority=Math.min(Math.round(priority/(this.maxTreshold/pl)),pl);return priority;};x3dom.DrawableCollection.prototype.concat=function(){var opaque=(this.collection['opaque']!==undefined)?this.collection['opaque']:[];var transparent=(this.collection['transparent']!==undefined)?this.collection['transparent']:[];this.collection=opaque.concat(transparent);};x3dom.DrawableCollection.prototype.get=function(idx){return this.collection[idx];};x3dom.DrawableCollection.prototype.sort=function(){var opaque=[];var transparent=[];var that=this;if(this.collection['opaque']!==undefined){if(this.sortOpaque){this.collection['opaque'].sort(function(a,b){if(a.sortKey==b.sortKey||!that.sortBySortKey){return b.priority-a.priority;}
return a.sortKey-b.sortKey;});}
opaque=this.collection['opaque'];}
if(this.collection['transparent']!==undefined){if(this.sortTrans){this.collection['transparent'].sort(function(a,b){if(a.sortKey==b.sortKey||!that.sortBySortKey){if(a.priority==b.priority||!that.sortByPriority){return a.zPos-b.zPos;}
return b.priority-a.priority;}
return a.sortKey-b.sortKey;});}
transparent=this.collection['transparent'];}
this.collection=opaque.concat(transparent);};x3dom.DrawableCollection.prototype.forEach=function(fnc,maxPriority){maxPriority=(maxPriority!==undefined)?Math.min(maxPriority,this.prioLevels):this.prioLevels;var sortKey,priority,shaderID,drawable;for(sortKey=0;sortKey<this.collection['opaque'].length;++sortKey)
{if(this.collection['opaque'][sortKey]!==undefined)
{for(priority=this.collection['opaque'][sortKey].length;priority>0;--priority)
{if(this.collection['opaque'][sortKey][priority]!==undefined)
{for(shaderID in this.collection['opaque'][sortKey][priority])
{for(drawable=0;drawable<this.collection['opaque'][sortKey][priority][shaderID].length;++drawable)
{fnc(this.collection['opaque'][sortKey][priority][shaderID][drawable]);}}}}}}
for(sortKey=0;sortKey<this.collection['transparent'].length;++sortKey)
{if(this.collection['transparent'][sortKey]!==undefined)
{for(priority=this.collection['transparent'][sortKey].length;priority>0;--priority)
{if(this.collection['transparent'][sortKey][priority]!==undefined)
{for(var shaderId in this.collection['transparent'][sortKey][priority])
{this.collection['transparent'][sortKey][priority][shaderId].sort(function(a,b){return a.zPos-b.zPos});for(drawable=0;drawable<this.collection['transparent'][sortKey][priority][shaderId].length;++drawable)
{fnc(this.collection['transparent'][sortKey][priority][shaderId][drawable]);}}}}}}};x3dom.Moveable=function(x3domElem,boundedObj,callback,gridSize,mode){this._x3domRoot=x3domElem;this._runtime=x3domElem.runtime;this._callback=callback;this._gridSize=gridSize?gridSize:0;this._moveable=boundedObj;this._drag=false;this._w=0;this._h=0;this._uPlane=null;this._vPlane=null;this._pPlane=null;this._isect=null;this._translationOffset=null;this._rotationOffset=null;this._scaleOffset=null;this._lastX=0;this._lastY=0;this._buttonState=0;this._mode=(mode&&mode.length)?mode.toLowerCase():"translation";this._firstRay=null;this._matrixTrafo=null;this._navType="examine";this.attachHandlers();};x3dom.Moveable.prototype.setGridSize=function(gridSize){this._gridSize=gridSize;};x3dom.Moveable.prototype.setMode=function(mode){this._mode=mode.toLowerCase();};x3dom.Moveable.prototype.attachHandlers=function(){this._moveable._iMove=this;if(!this._x3domRoot._iMove)
this._x3domRoot._iMove=[];this._x3domRoot._iMove.push(this);this._moveable.addEventListener('mousedown',this.start,false);this._moveable.addEventListener('mouseover',this.over,false);this._moveable.addEventListener('mouseout',this.out,false);if(this._x3domRoot._iMove.length==1){this._x3domRoot.addEventListener('mouseup',this.stop,false);this._x3domRoot.addEventListener('mouseout',this.stop,false);this._x3domRoot.addEventListener('mousemove',this.move,true);if(!this._runtime.canvas.disableTouch){this._x3domRoot.addEventListener('MozTouchDown',this.touchStartHandlerMoz,false);this._x3domRoot.addEventListener('MozTouchMove',this.touchMoveHandlerMoz,true);this._x3domRoot.addEventListener('MozTouchUp',this.touchEndHandlerMoz,false);this._x3domRoot.addEventListener('touchstart',this.touchStartHandler,false);this._x3domRoot.addEventListener('touchmove',this.touchMoveHandler,true);this._x3domRoot.addEventListener('touchend',this.touchEndHandler,false);}}};x3dom.Moveable.prototype.detachHandlers=function(){var iMove=this._x3domRoot._iMove;if(iMove){for(var i=0,n=iMove.length;i<n;i++){if(iMove[i]==this){iMove.splice(i,1);break;}}}
this._moveable.removeEventListener('mousedown',this.start,false);this._moveable.removeEventListener('mouseover',this.over,false);this._moveable.removeEventListener('mouseout',this.out,false);if(iMove.length==0){this._x3domRoot.removeEventListener('mouseup',this.stop,false);this._x3domRoot.removeEventListener('mouseout',this.stop,false);this._x3domRoot.removeEventListener('mousemove',this.move,true);if(!this._runtime.canvas.disableTouch){this._x3domRoot.removeEventListener('MozTouchDown',this.touchStartHandlerMoz,false);this._x3domRoot.removeEventListener('MozTouchMove',this.touchMoveHandlerMoz,true);this._x3domRoot.removeEventListener('MozTouchUp',this.touchEndHandlerMoz,false);this._x3domRoot.removeEventListener('touchstart',this.touchStartHandler,false);this._x3domRoot.removeEventListener('touchmove',this.touchMoveHandler,true);this._x3domRoot.removeEventListener('touchend',this.touchEndHandler,false);}}
if(this._moveable._iMove)
delete this._moveable._iMove;};x3dom.Moveable.prototype.calcViewPlane=function(origin){this._w=this._runtime.getWidth();this._h=this._runtime.getHeight();var ray=this._runtime.getViewingRay(0,this._h-1);var r=ray.pos.add(ray.dir);ray=this._runtime.getViewingRay(this._w-1,this._h-1);var s=ray.pos.add(ray.dir);ray=this._runtime.getViewingRay(0,0);var t=ray.pos.add(ray.dir);this._uPlane=s.subtract(r).normalize();this._vPlane=t.subtract(r).normalize();if(arguments.length===0)
this._pPlane=r;else
this._pPlane=x3dom.fields.SFVec3f.copy(origin);};x3dom.Moveable.prototype.det=function(mat){return mat[0][0]*mat[1][1]*mat[2][2]+mat[0][1]*mat[1][2]*mat[2][0]+
mat[0][2]*mat[2][1]*mat[1][0]-mat[2][0]*mat[1][1]*mat[0][2]-
mat[0][0]*mat[2][1]*mat[1][2]-mat[1][0]*mat[0][1]*mat[2][2];};x3dom.Moveable.prototype.translateXY=function(l){var track=null;var z=[],n=[];for(var i=0;i<3;i++){z[i]=[];n[i]=[];z[i][0]=this._uPlane.at(i);n[i][0]=z[i][0];z[i][1]=this._vPlane.at(i);n[i][1]=z[i][1];z[i][2]=(l.pos.subtract(this._pPlane)).at(i);n[i][2]=-l.dir.at(i);}
var s=this.det(n);if(s!==0){var t=this.det(z)/s;track=l.pos.addScaled(l.dir,t);}
if(track){if(this._isect){track=track.subtract(this._isect);}
track=track.add(this._translationOffset);}
return track;};x3dom.Moveable.prototype.translateZ=function(l,currY){var vol=this._runtime.getSceneBBox();var sign=(currY<this._lastY)?1:-1;var fact=sign*(vol.max.subtract(vol.min)).length()/100;this._translationOffset=this._translationOffset.addScaled(l.dir,fact);return this._translationOffset;};x3dom.Moveable.prototype.rotate=function(posX,posY){var twoPi=2*Math.PI;var alpha=((posY-this._lastY)*twoPi)/this._w;var beta=((posX-this._lastX)*twoPi)/this._h;var q=x3dom.fields.Quaternion.axisAngle(this._uPlane,alpha);var h=q.toMatrix();this._rotationOffset=h.mult(this._rotationOffset);q=x3dom.fields.Quaternion.axisAngle(this._vPlane,beta);h=q.toMatrix();this._rotationOffset=h.mult(this._rotationOffset);var mat=this._rotationOffset.mult(x3dom.fields.SFMatrix4f.scale(this._scaleOffset));var rot=new x3dom.fields.Quaternion(0,0,1,0);rot.setValue(mat);return rot;};x3dom.Moveable.prototype.over=function(event){var that=this._iMove;that._runtime.getCanvas().style.cursor="crosshair";};x3dom.Moveable.prototype.out=function(event){var that=this._iMove;if(!that._drag)
that._runtime.getCanvas().style.cursor="pointer";};x3dom.Moveable.prototype.start=function(event){var that=this._iMove;switch(that._mode){case"translation":that._buttonState=(event.button==4)?1:(event.button&3);break;case"rotation":that._buttonState=4;break;case"all":default:that._buttonState=event.button;break;}
if(!that._drag&&that._buttonState){that._lastX=event.layerX;that._lastY=event.layerY;that._drag=true;that._navType=that._runtime.navigationType();that._runtime.noNav();that._isect=new x3dom.fields.SFVec3f(event.worldX,event.worldY,event.worldZ);that.calcViewPlane(that._isect);that._firstRay=that._runtime.getViewingRay(event.layerX,event.layerY);var mTrans=that._moveable.getAttribute("translation");that._matrixTrafo=null;if(mTrans){that._translationOffset=x3dom.fields.SFVec3f.parse(mTrans);var mRot=that._moveable.getAttribute("rotation");mRot=mRot?x3dom.fields.Quaternion.parseAxisAngle(mRot):new x3dom.fields.Quaternion(0,0,1,0);that._rotationOffset=mRot.toMatrix();var mScal=that._moveable.getAttribute("scale");that._scaleOffset=mScal?x3dom.fields.SFVec3f.parse(mScal):new x3dom.fields.SFVec3f(1,1,1);}
else{mTrans=that._moveable.getAttribute("matrix");if(mTrans){that._matrixTrafo=x3dom.fields.SFMatrix4f.parse(mTrans).transpose();var translation=new x3dom.fields.SFVec3f(0,0,0),scaleFactor=new x3dom.fields.SFVec3f(1,1,1);var rotation=new x3dom.fields.Quaternion(0,0,1,0),scaleOrientation=new x3dom.fields.Quaternion(0,0,1,0);that._matrixTrafo.getTransform(translation,rotation,scaleFactor,scaleOrientation);that._translationOffset=translation;that._rotationOffset=rotation.toMatrix();that._scaleOffset=scaleFactor;}
else{that._translationOffset=new x3dom.fields.SFVec3f(0,0,0);that._rotationOffset=new x3dom.fields.SFMatrix4f();that._scaleOffset=new x3dom.fields.SFVec3f(1,1,1);}}
that._runtime.getCanvas().style.cursor="crosshair";}};x3dom.Moveable.prototype.move=function(event){for(var i=0,n=this._iMove.length;i<n;i++){var that=this._iMove[i];if(that._drag){var pos=that._runtime.mousePosition(event);var ray=that._runtime.getViewingRay(pos[0],pos[1]);var track=null;if(that._buttonState==2)
track=that.translateZ(that._firstRay,pos[1]);else if(that._buttonState==1)
track=that.translateXY(ray);else
track=that.rotate(pos[0],pos[1]);if(track){if(that._gridSize>0&&that._buttonState!=4){var x=that._gridSize*Math.round(track.x/that._gridSize);var y=that._gridSize*Math.round(track.y/that._gridSize);var z=that._gridSize*Math.round(track.z/that._gridSize);track=new x3dom.fields.SFVec3f(x,y,z);}
if(!that._matrixTrafo){if(that._buttonState==4){that._moveable.setAttribute("rotation",track.toAxisAngle().toString());}
else{that._moveable.setAttribute("translation",track.toString());}}
else{if(that._buttonState==4){that._matrixTrafo.setRotate(track);}
else{that._matrixTrafo.setTranslate(track);}
that._moveable.setAttribute("matrix",that._matrixTrafo.toGL().toString());}
if(that._callback){that._callback(that._moveable,track);}}
that._lastX=pos[0];that._lastY=pos[1];}}};x3dom.Moveable.prototype.stop=function(event){for(var i=0,n=this._iMove.length;i<n;i++){var that=this._iMove[i];if(that._drag){that._lastX=event.layerX;that._lastY=event.layerY;that._isect=null;that._drag=false;var navi=that._runtime.canvas.doc._scene.getNavigationInfo();navi.setType(that._navType);that._runtime.getCanvas().style.cursor="pointer";}}};x3dom.Moveable.prototype.touchStartHandler=function(evt){evt.preventDefault();};x3dom.Moveable.prototype.touchStartHandlerMoz=function(evt){evt.preventDefault();};x3dom.Moveable.prototype.touchMoveHandler=function(evt){evt.preventDefault();};x3dom.Moveable.prototype.touchMoveHandlerMoz=function(evt){evt.preventDefault();};x3dom.Moveable.prototype.touchEndHandler=function(evt){if(this._iMove.length){var that=this._iMove[0];that.stop.apply(that._x3domRoot,[evt]);}
evt.preventDefault();};x3dom.Moveable.prototype.touchEndHandlerMoz=function(evt){if(this._iMove.length){var that=this._iMove[0];that.stop.apply(that._x3domRoot,[evt]);}
evt.preventDefault();};(function(){'use strict';function q(b){throw b;}var t=void 0,u=!0,aa=this;function A(b,a){var c=b.split("."),d=aa;!(c[0]in d)&&d.execScript&&d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)!c.length&&a!==t?d[e]=a:d=d[e]?d[e]:d[e]={}};var B="undefined"!==typeof Uint8Array&&"undefined"!==typeof Uint16Array&&"undefined"!==typeof Uint32Array&&"undefined"!==typeof DataView;function F(b,a){this.index="number"===typeof a?a:0;this.m=0;this.buffer=b instanceof(B?Uint8Array:Array)?b:new(B?Uint8Array:Array)(32768);2*this.buffer.length<=this.index&&q(Error("invalid index"));this.buffer.length<=this.index&&this.f()}F.prototype.f=function(){var b=this.buffer,a,c=b.length,d=new(B?Uint8Array:Array)(c<<1);if(B)d.set(b);else for(a=0;a<c;++a)d[a]=b[a];return this.buffer=d};F.prototype.d=function(b,a,c){var d=this.buffer,e=this.index,f=this.m,g=d[e],k;c&&1<a&&(b=8<a?(H[b&255]<<24|H[b>>>8&255]<<16|H[b>>>16&255]<<8|H[b>>>24&255])>>32-a:H[b]>>8-a);if(8>a+f)g=g<<a|b,f+=a;else for(k=0;k<a;++k)g=g<<1|b>>a-k-1&1,8===++f&&(f=0,d[e++]=H[g],g=0,e===d.length&&(d=this.f()));d[e]=g;this.buffer=d;this.m=f;this.index=e};F.prototype.finish=function(){var b=this.buffer,a=this.index,c;0<this.m&&(b[a]<<=8-this.m,b[a]=H[b[a]],a++);B?c=b.subarray(0,a):(b.length=a,c=b);return c};var ba=new(B?Uint8Array:Array)(256),ca;for(ca=0;256>ca;++ca){for(var K=ca,da=K,ea=7,K=K>>>1;K;K>>>=1)da<<=1,da|=K&1,--ea;ba[ca]=(da<<ea&255)>>>0}var H=ba;function ja(b,a,c){var d,e="number"===typeof a?a:a=0,f="number"===typeof c?c:b.length;d=-1;for(e=f&7;e--;++a)d=d>>>8^O[(d^b[a])&255];for(e=f>>3;e--;a+=8)d=d>>>8^O[(d^b[a])&255],d=d>>>8^O[(d^b[a+1])&255],d=d>>>8^O[(d^b[a+2])&255],d=d>>>8^O[(d^b[a+3])&255],d=d>>>8^O[(d^b[a+4])&255],d=d>>>8^O[(d^b[a+5])&255],d=d>>>8^O[(d^b[a+6])&255],d=d>>>8^O[(d^b[a+7])&255];return(d^4294967295)>>>0}
var ka=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],O=B?new Uint32Array(ka):ka;function P(){}P.prototype.getName=function(){return this.name};P.prototype.getData=function(){return this.data};P.prototype.Y=function(){return this.Z};A("Zlib.GunzipMember",P);A("Zlib.GunzipMember.prototype.getName",P.prototype.getName);A("Zlib.GunzipMember.prototype.getData",P.prototype.getData);A("Zlib.GunzipMember.prototype.getMtime",P.prototype.Y);function la(b){this.buffer=new(B?Uint16Array:Array)(2*b);this.length=0}la.prototype.getParent=function(b){return 2*((b-2)/4|0)};la.prototype.push=function(b,a){var c,d,e=this.buffer,f;c=this.length;e[this.length++]=a;for(e[this.length++]=b;0<c;)if(d=this.getParent(c),e[c]>e[d])f=e[c],e[c]=e[d],e[d]=f,f=e[c+1],e[c+1]=e[d+1],e[d+1]=f,c=d;else break;return this.length};la.prototype.pop=function(){var b,a,c=this.buffer,d,e,f;a=c[0];b=c[1];this.length-=2;c[0]=c[this.length];c[1]=c[this.length+1];for(f=0;;){e=2*f+2;if(e>=this.length)break;e+2<this.length&&c[e+2]>c[e]&&(e+=2);if(c[e]>c[f])d=c[f],c[f]=c[e],c[e]=d,d=c[f+1],c[f+1]=c[e+1],c[e+1]=d;else break;f=e}return{index:b,value:a,length:this.length}};function ma(b){var a=b.length,c=0,d=Number.POSITIVE_INFINITY,e,f,g,k,h,l,s,p,m,n;for(p=0;p<a;++p)b[p]>c&&(c=b[p]),b[p]<d&&(d=b[p]);e=1<<c;f=new(B?Uint32Array:Array)(e);g=1;k=0;for(h=2;g<=c;){for(p=0;p<a;++p)if(b[p]===g){l=0;s=k;for(m=0;m<g;++m)l=l<<1|s&1,s>>=1;n=g<<16|p;for(m=l;m<e;m+=h)f[m]=n;++k}++g;k<<=1;h<<=1}return[f,c,d]};function na(b,a){this.k=qa;this.I=0;this.input=B&&b instanceof Array?new Uint8Array(b):b;this.b=0;a&&(a.lazy&&(this.I=a.lazy),"number"===typeof a.compressionType&&(this.k=a.compressionType),a.outputBuffer&&(this.a=B&&a.outputBuffer instanceof Array?new Uint8Array(a.outputBuffer):a.outputBuffer),"number"===typeof a.outputIndex&&(this.b=a.outputIndex));this.a||(this.a=new(B?Uint8Array:Array)(32768))}var qa=2,ra={NONE:0,v:1,o:qa,ba:3},sa=[],S;for(S=0;288>S;S++)switch(u){case 143>=S:sa.push([S+48,8]);break;case 255>=S:sa.push([S-144+400,9]);break;case 279>=S:sa.push([S-256+0,7]);break;case 287>=S:sa.push([S-280+192,8]);break;default:q("invalid literal: "+S)}
na.prototype.g=function(){var b,a,c,d,e=this.input;switch(this.k){case 0:c=0;for(d=e.length;c<d;){a=B?e.subarray(c,c+65535):e.slice(c,c+65535);c+=a.length;var f=a,g=c===d,k=t,h=t,l=t,s=t,p=t,m=this.a,n=this.b;if(B){for(m=new Uint8Array(this.a.buffer);m.length<=n+f.length+5;)m=new Uint8Array(m.length<<1);m.set(this.a)}k=g?1:0;m[n++]=k|0;h=f.length;l=~h+65536&65535;m[n++]=h&255;m[n++]=h>>>8&255;m[n++]=l&255;m[n++]=l>>>8&255;if(B)m.set(f,n),n+=f.length,m=m.subarray(0,n);else{s=0;for(p=f.length;s<p;++s)m[n++]=f[s];m.length=n}this.b=n;this.a=m}break;case 1:var r=new F(B?new Uint8Array(this.a.buffer):this.a,this.b);r.d(1,1,u);r.d(1,2,u);var v=ta(this,e),x,Q,y;x=0;for(Q=v.length;x<Q;x++)if(y=v[x],F.prototype.d.apply(r,sa[y]),256<y)r.d(v[++x],v[++x],u),r.d(v[++x],5),r.d(v[++x],v[++x],u);else if(256===y)break;this.a=r.finish();this.b=this.a.length;break;case qa:var E=new F(B?new Uint8Array(this.a.buffer):this.a,this.b),Ka,R,X,Y,Z,pb=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],fa,La,ga,Ma,oa,wa=Array(19),Na,$,pa,C,Oa;Ka=qa;E.d(1,1,u);E.d(Ka,2,u);R=ta(this,e);fa=ua(this.W,15);La=va(fa);ga=ua(this.V,7);Ma=va(ga);for(X=286;257<X&&0===fa[X-1];X--);for(Y=30;1<Y&&0===ga[Y-1];Y--);var Pa=X,Qa=Y,J=new(B?Uint32Array:Array)(Pa+Qa),w,L,z,ha,I=new(B?Uint32Array:Array)(316),G,D,M=new(B?Uint8Array:Array)(19);for(w=L=0;w<Pa;w++)J[L++]=fa[w];for(w=0;w<Qa;w++)J[L++]=ga[w];if(!B){w=0;for(ha=M.length;w<ha;++w)M[w]=0}w=G=0;for(ha=J.length;w<ha;w+=L){for(L=1;w+L<ha&&J[w+L]===J[w];++L);z=L;if(0===J[w])if(3>z)for(;0<z--;)I[G++]=0,M[0]++;else for(;0<z;)D=138>z?z:138,D>z-3&&D<z&&(D=z-3),10>=D?(I[G++]=17,I[G++]=D-3,M[17]++):(I[G++]=18,I[G++]=D-11,M[18]++),z-=D;else if(I[G++]=J[w],M[J[w]]++,z--,3>z)for(;0<z--;)I[G++]=J[w],M[J[w]]++;else for(;0<z;)D=6>z?z:6,D>z-3&&D<z&&(D=z-3),I[G++]=16,I[G++]=D-3,M[16]++,z-=D}b=B?I.subarray(0,G):I.slice(0,G);oa=ua(M,7);for(C=0;19>C;C++)wa[C]=oa[pb[C]];for(Z=19;4<Z&&0===wa[Z-1];Z--);Na=va(oa);E.d(X-257,5,u);E.d(Y-1,5,u);E.d(Z-4,4,u);for(C=0;C<Z;C++)E.d(wa[C],3,u);C=0;for(Oa=b.length;C<Oa;C++)if($=b[C],E.d(Na[$],oa[$],u),16<=$){C++;switch($){case 16:pa=2;break;case 17:pa=3;break;case 18:pa=7;break;default:q("invalid code: "+$)}E.d(b[C],pa,u)}var Ra=[La,fa],Sa=[Ma,ga],N,Ta,ia,za,Ua,Va,Wa,Xa;Ua=Ra[0];Va=Ra[1];Wa=Sa[0];Xa=Sa[1];N=0;for(Ta=R.length;N<Ta;++N)if(ia=R[N],E.d(Ua[ia],Va[ia],u),256<ia)E.d(R[++N],R[++N],u),za=R[++N],E.d(Wa[za],Xa[za],u),E.d(R[++N],R[++N],u);else if(256===ia)break;this.a=E.finish();this.b=this.a.length;break;default:q("invalid compression type")}return this.a};function xa(b,a){this.length=b;this.Q=a}
var ya=function(){function b(a){switch(u){case 3===a:return[257,a-3,0];case 4===a:return[258,a-4,0];case 5===a:return[259,a-5,0];case 6===a:return[260,a-6,0];case 7===a:return[261,a-7,0];case 8===a:return[262,a-8,0];case 9===a:return[263,a-9,0];case 10===a:return[264,a-10,0];case 12>=a:return[265,a-11,1];case 14>=a:return[266,a-13,1];case 16>=a:return[267,a-15,1];case 18>=a:return[268,a-17,1];case 22>=a:return[269,a-19,2];case 26>=a:return[270,a-23,2];case 30>=a:return[271,a-27,2];case 34>=a:return[272,a-31,2];case 42>=a:return[273,a-35,3];case 50>=a:return[274,a-43,3];case 58>=a:return[275,a-51,3];case 66>=a:return[276,a-59,3];case 82>=a:return[277,a-67,4];case 98>=a:return[278,a-83,4];case 114>=a:return[279,a-99,4];case 130>=a:return[280,a-115,4];case 162>=a:return[281,a-131,5];case 194>=a:return[282,a-163,5];case 226>=a:return[283,a-195,5];case 257>=a:return[284,a-227,5];case 258===a:return[285,a-258,0];default:q("invalid length: "+a)}}var a=[],c,d;for(c=3;258>=c;c++)d=b(c),a[c]=d[2]<<24|d[1]<<16|d[0];return a}(),Aa=B?new Uint32Array(ya):ya;function ta(b,a){function c(a,c){var b=a.Q,d=[],e=0,f;f=Aa[a.length];d[e++]=f&65535;d[e++]=f>>16&255;d[e++]=f>>24;var g;switch(u){case 1===b:g=[0,b-1,0];break;case 2===b:g=[1,b-2,0];break;case 3===b:g=[2,b-3,0];break;case 4===b:g=[3,b-4,0];break;case 6>=b:g=[4,b-5,1];break;case 8>=b:g=[5,b-7,1];break;case 12>=b:g=[6,b-9,2];break;case 16>=b:g=[7,b-13,2];break;case 24>=b:g=[8,b-17,3];break;case 32>=b:g=[9,b-25,3];break;case 48>=b:g=[10,b-33,4];break;case 64>=b:g=[11,b-49,4];break;case 96>=b:g=[12,b-
65,5];break;case 128>=b:g=[13,b-97,5];break;case 192>=b:g=[14,b-129,6];break;case 256>=b:g=[15,b-193,6];break;case 384>=b:g=[16,b-257,7];break;case 512>=b:g=[17,b-385,7];break;case 768>=b:g=[18,b-513,8];break;case 1024>=b:g=[19,b-769,8];break;case 1536>=b:g=[20,b-1025,9];break;case 2048>=b:g=[21,b-1537,9];break;case 3072>=b:g=[22,b-2049,10];break;case 4096>=b:g=[23,b-3073,10];break;case 6144>=b:g=[24,b-4097,11];break;case 8192>=b:g=[25,b-6145,11];break;case 12288>=b:g=[26,b-8193,12];break;case 16384>=b:g=[27,b-12289,12];break;case 24576>=b:g=[28,b-16385,13];break;case 32768>=b:g=[29,b-24577,13];break;default:q("invalid distance")}f=g;d[e++]=f[0];d[e++]=f[1];d[e++]=f[2];var h,k;h=0;for(k=d.length;h<k;++h)m[n++]=d[h];v[d[0]]++;x[d[3]]++;r=a.length+c-1;p=null}var d,e,f,g,k,h={},l,s,p,m=B?new Uint16Array(2*a.length):[],n=0,r=0,v=new(B?Uint32Array:Array)(286),x=new(B?Uint32Array:Array)(30),Q=b.I,y;if(!B){for(f=0;285>=f;)v[f++]=0;for(f=0;29>=f;)x[f++]=0}v[256]=1;d=0;for(e=a.length;d<e;++d){f=k=0;for(g=3;f<g&&d+f!==e;++f)k=k<<8|a[d+f];h[k]===t&&(h[k]=[]);l=h[k];if(!(0<r--)){for(;0<l.length&&32768<d-l[0];)l.shift();if(d+3>=e){p&&c(p,-1);f=0;for(g=e-d;f<g;++f)y=a[d+f],m[n++]=y,++v[y];break}0<l.length?(s=Ba(a,d,l),p?p.length<s.length?(y=a[d-1],m[n++]=y,++v[y],c(s,0)):c(p,-1):s.length<Q?p=s:c(s,0)):p?c(p,-1):(y=a[d],m[n++]=y,++v[y])}l.push(d)}m[n++]=256;v[256]++;b.W=v;b.V=x;return B?m.subarray(0,n):m}
function Ba(b,a,c){var d,e,f=0,g,k,h,l,s=b.length;k=0;l=c.length;a:for(;k<l;k++){d=c[l-k-1];g=3;if(3<f){for(h=f;3<h;h--)if(b[d+h-1]!==b[a+h-1])continue a;g=f}for(;258>g&&a+g<s&&b[d+g]===b[a+g];)++g;g>f&&(e=d,f=g);if(258===g)break}return new xa(f,a-e)}
function ua(b,a){var c=b.length,d=new la(572),e=new(B?Uint8Array:Array)(c),f,g,k,h,l;if(!B)for(h=0;h<c;h++)e[h]=0;for(h=0;h<c;++h)0<b[h]&&d.push(h,b[h]);f=Array(d.length/2);g=new(B?Uint32Array:Array)(d.length/2);if(1===f.length)return e[d.pop().index]=1,e;h=0;for(l=d.length/2;h<l;++h)f[h]=d.pop(),g[h]=f[h].value;k=Ca(g,g.length,a);h=0;for(l=f.length;h<l;++h)e[f[h].index]=k[h];return e}
function Ca(b,a,c){function d(b){var c=h[b][l[b]];c===a?(d(b+1),d(b+1)):--g[c];++l[b]}var e=new(B?Uint16Array:Array)(c),f=new(B?Uint8Array:Array)(c),g=new(B?Uint8Array:Array)(a),k=Array(c),h=Array(c),l=Array(c),s=(1<<c)-a,p=1<<c-1,m,n,r,v,x;e[c-1]=a;for(n=0;n<c;++n)s<p?f[n]=0:(f[n]=1,s-=p),s<<=1,e[c-2-n]=(e[c-1-n]/2|0)+a;e[0]=f[0];k[0]=Array(e[0]);h[0]=Array(e[0]);for(n=1;n<c;++n)e[n]>2*e[n-1]+f[n]&&(e[n]=2*e[n-1]+f[n]),k[n]=Array(e[n]),h[n]=Array(e[n]);for(m=0;m<a;++m)g[m]=c;for(r=0;r<e[c-1];++r)k[c-
1][r]=b[r],h[c-1][r]=r;for(m=0;m<c;++m)l[m]=0;1===f[c-1]&&(--g[0],++l[c-1]);for(n=c-2;0<=n;--n){v=m=0;x=l[n+1];for(r=0;r<e[n];r++)v=k[n+1][x]+k[n+1][x+1],v>b[m]?(k[n][r]=v,h[n][r]=a,x+=2):(k[n][r]=b[m],h[n][r]=m,++m);l[n]=0;1===f[n]&&d(n)}return g}
function va(b){var a=new(B?Uint16Array:Array)(b.length),c=[],d=[],e=0,f,g,k,h;f=0;for(g=b.length;f<g;f++)c[b[f]]=(c[b[f]]|0)+1;f=1;for(g=16;f<=g;f++)d[f]=e,e+=c[f]|0,e<<=1;f=0;for(g=b.length;f<g;f++){e=d[b[f]];d[b[f]]+=1;k=a[f]=0;for(h=b[f];k<h;k++)a[f]=a[f]<<1|e&1,e>>>=1}return a};function Da(b,a){this.input=b;this.b=this.c=0;this.i={};a&&(a.flags&&(this.i=a.flags),"string"===typeof a.filename&&(this.filename=a.filename),"string"===typeof a.comment&&(this.A=a.comment),a.deflateOptions&&(this.l=a.deflateOptions));this.l||(this.l={})}
Da.prototype.g=function(){var b,a,c,d,e,f,g,k,h=new(B?Uint8Array:Array)(32768),l=0,s=this.input,p=this.c,m=this.filename,n=this.A;h[l++]=31;h[l++]=139;h[l++]=8;b=0;this.i.fname&&(b|=Ea);this.i.fcomment&&(b|=Fa);this.i.fhcrc&&(b|=Ga);h[l++]=b;a=(Date.now?Date.now():+new Date)/1E3|0;h[l++]=a&255;h[l++]=a>>>8&255;h[l++]=a>>>16&255;h[l++]=a>>>24&255;h[l++]=0;h[l++]=Ha;if(this.i.fname!==t){g=0;for(k=m.length;g<k;++g)f=m.charCodeAt(g),255<f&&(h[l++]=f>>>8&255),h[l++]=f&255;h[l++]=0}if(this.i.comment){g=0;for(k=n.length;g<k;++g)f=n.charCodeAt(g),255<f&&(h[l++]=f>>>8&255),h[l++]=f&255;h[l++]=0}this.i.fhcrc&&(c=ja(h,0,l)&65535,h[l++]=c&255,h[l++]=c>>>8&255);this.l.outputBuffer=h;this.l.outputIndex=l;e=new na(s,this.l);h=e.g();l=e.b;B&&(l+8>h.buffer.byteLength?(this.a=new Uint8Array(l+8),this.a.set(new Uint8Array(h.buffer)),h=this.a):h=new Uint8Array(h.buffer));d=ja(s,t,t);h[l++]=d&255;h[l++]=d>>>8&255;h[l++]=d>>>16&255;h[l++]=d>>>24&255;k=s.length;h[l++]=k&255;h[l++]=k>>>8&255;h[l++]=k>>>16&255;h[l++]=k>>>24&255;this.c=p;B&&l<h.length&&(this.a=h=h.subarray(0,l));return h};var Ha=255,Ga=2,Ea=8,Fa=16;A("Zlib.Gzip",Da);A("Zlib.Gzip.prototype.compress",Da.prototype.g);function T(b,a){this.p=[];this.q=32768;this.e=this.j=this.c=this.u=0;this.input=B?new Uint8Array(b):b;this.w=!1;this.r=Ia;this.M=!1;if(a||!(a={}))a.index&&(this.c=a.index),a.bufferSize&&(this.q=a.bufferSize),a.bufferType&&(this.r=a.bufferType),a.resize&&(this.M=a.resize);switch(this.r){case Ja:this.b=32768;this.a=new(B?Uint8Array:Array)(32768+this.q+258);break;case Ia:this.b=0;this.a=new(B?Uint8Array:Array)(this.q);this.f=this.U;this.B=this.R;this.s=this.T;break;default:q(Error("invalid inflate mode"))}}
var Ja=0,Ia=1,Ya={O:Ja,N:Ia};T.prototype.h=function(){for(;!this.w;){var b=U(this,3);b&1&&(this.w=u);b>>>=1;switch(b){case 0:var a=this.input,c=this.c,d=this.a,e=this.b,f=a.length,g=t,k=t,h=d.length,l=t;this.e=this.j=0;c+1>=f&&q(Error("invalid uncompressed block header: LEN"));g=a[c++]|a[c++]<<8;c+1>=f&&q(Error("invalid uncompressed block header: NLEN"));k=a[c++]|a[c++]<<8;g===~k&&q(Error("invalid uncompressed block header: length verify"));c+g>a.length&&q(Error("input buffer is broken"));switch(this.r){case Ja:for(;e+g>d.length;){l=h-e;g-=l;if(B)d.set(a.subarray(c,c+l),e),e+=l,c+=l;else for(;l--;)d[e++]=a[c++];this.b=e;d=this.f();e=this.b}break;case Ia:for(;e+g>d.length;)d=this.f({F:2});break;default:q(Error("invalid inflate mode"))}if(B)d.set(a.subarray(c,c+g),e),e+=g,c+=g;else for(;g--;)d[e++]=a[c++];this.c=c;this.b=e;this.a=d;break;case 1:this.s(Za,$a);break;case 2:ab(this);break;default:q(Error("unknown BTYPE: "+b))}}return this.B()};var bb=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],cb=B?new Uint16Array(bb):bb,db=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,258,258],eb=B?new Uint16Array(db):db,fb=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],gb=B?new Uint8Array(fb):fb,hb=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],ib=B?new Uint16Array(hb):hb,jb=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],kb=B?new Uint8Array(jb):jb,lb=new(B?Uint8Array:Array)(288),V,mb;V=0;for(mb=lb.length;V<mb;++V)lb[V]=143>=V?8:255>=V?9:279>=V?7:8;var Za=ma(lb),nb=new(B?Uint8Array:Array)(30),ob,qb;ob=0;for(qb=nb.length;ob<qb;++ob)nb[ob]=5;var $a=ma(nb);function U(b,a){for(var c=b.j,d=b.e,e=b.input,f=b.c,g=e.length,k;d<a;)f>=g&&q(Error("input buffer is broken")),c|=e[f++]<<d,d+=8;k=c&(1<<a)-1;b.j=c>>>a;b.e=d-a;b.c=f;return k}
function rb(b,a){for(var c=b.j,d=b.e,e=b.input,f=b.c,g=e.length,k=a[0],h=a[1],l,s;d<h&&!(f>=g);)c|=e[f++]<<d,d+=8;l=k[c&(1<<h)-1];s=l>>>16;b.j=c>>s;b.e=d-s;b.c=f;return l&65535}
function ab(b){function a(a,b,c){var d,e=this.J,f,g;for(g=0;g<a;)switch(d=rb(this,b),d){case 16:for(f=3+U(this,2);f--;)c[g++]=e;break;case 17:for(f=3+U(this,3);f--;)c[g++]=0;e=0;break;case 18:for(f=11+U(this,7);f--;)c[g++]=0;e=0;break;default:e=c[g++]=d}this.J=e;return c}var c=U(b,5)+257,d=U(b,5)+1,e=U(b,4)+4,f=new(B?Uint8Array:Array)(cb.length),g,k,h,l;for(l=0;l<e;++l)f[cb[l]]=U(b,3);if(!B){l=e;for(e=f.length;l<e;++l)f[cb[l]]=0}g=ma(f);k=new(B?Uint8Array:Array)(c);h=new(B?Uint8Array:Array)(d);b.J=0;b.s(ma(a.call(b,c,g,k)),ma(a.call(b,d,g,h)))}T.prototype.s=function(b,a){var c=this.a,d=this.b;this.C=b;for(var e=c.length-258,f,g,k,h;256!==(f=rb(this,b));)if(256>f)d>=e&&(this.b=d,c=this.f(),d=this.b),c[d++]=f;else{g=f-257;h=eb[g];0<gb[g]&&(h+=U(this,gb[g]));f=rb(this,a);k=ib[f];0<kb[f]&&(k+=U(this,kb[f]));d>=e&&(this.b=d,c=this.f(),d=this.b);for(;h--;)c[d]=c[d++-k]}for(;8<=this.e;)this.e-=8,this.c--;this.b=d};T.prototype.T=function(b,a){var c=this.a,d=this.b;this.C=b;for(var e=c.length,f,g,k,h;256!==(f=rb(this,b));)if(256>f)d>=e&&(c=this.f(),e=c.length),c[d++]=f;else{g=f-257;h=eb[g];0<gb[g]&&(h+=U(this,gb[g]));f=rb(this,a);k=ib[f];0<kb[f]&&(k+=U(this,kb[f]));d+h>e&&(c=this.f(),e=c.length);for(;h--;)c[d]=c[d++-k]}for(;8<=this.e;)this.e-=8,this.c--;this.b=d};T.prototype.f=function(){var b=new(B?Uint8Array:Array)(this.b-32768),a=this.b-32768,c,d,e=this.a;if(B)b.set(e.subarray(32768,b.length));else{c=0;for(d=b.length;c<d;++c)b[c]=e[c+32768]}this.p.push(b);this.u+=b.length;if(B)e.set(e.subarray(a,a+32768));else for(c=0;32768>c;++c)e[c]=e[a+c];this.b=32768;return e};T.prototype.U=function(b){var a,c=this.input.length/this.c+1|0,d,e,f,g=this.input,k=this.a;b&&("number"===typeof b.F&&(c=b.F),"number"===typeof b.P&&(c+=b.P));2>c?(d=(g.length-this.c)/this.C[2],f=258*(d/2)|0,e=f<k.length?k.length+f:k.length<<1):e=k.length*c;B?(a=new Uint8Array(e),a.set(k)):a=k;return this.a=a};T.prototype.B=function(){var b=0,a=this.a,c=this.p,d,e=new(B?Uint8Array:Array)(this.u+(this.b-32768)),f,g,k,h;if(0===c.length)return B?this.a.subarray(32768,this.b):this.a.slice(32768,this.b);f=0;for(g=c.length;f<g;++f){d=c[f];k=0;for(h=d.length;k<h;++k)e[b++]=d[k]}f=32768;for(g=this.b;f<g;++f)e[b++]=a[f];this.p=[];return this.buffer=e};T.prototype.R=function(){var b,a=this.b;B?this.M?(b=new Uint8Array(a),b.set(this.a.subarray(0,a))):b=this.a.subarray(0,a):(this.a.length>a&&(this.a.length=a),b=this.a);return this.buffer=b};function sb(b){this.input=b;this.c=0;this.t=[];this.D=!1}sb.prototype.X=function(){this.D||this.h();return this.t.slice()};sb.prototype.h=function(){for(var b=this.input.length;this.c<b;){var a=new P,c=t,d=t,e=t,f=t,g=t,k=t,h=t,l=t,s=t,p=this.input,m=this.c;a.G=p[m++];a.H=p[m++];(31!==a.G||139!==a.H)&&q(Error("invalid file signature:"+a.G+","+a.H));a.z=p[m++];switch(a.z){case 8:break;default:q(Error("unknown compression method: "+a.z))}a.n=p[m++];l=p[m++]|p[m++]<<8|p[m++]<<16|p[m++]<<24;a.Z=new Date(1E3*l);a.fa=p[m++];a.ea=p[m++];0<(a.n&4)&&(a.aa=p[m++]|p[m++]<<8,m+=a.aa);if(0<(a.n&Ea)){h=[];for(k=0;0<(g=p[m++]);)h[k++]=String.fromCharCode(g);a.name=h.join("")}if(0<(a.n&Fa)){h=[];for(k=0;0<(g=p[m++]);)h[k++]=String.fromCharCode(g);a.A=h.join("")}0<(a.n&Ga)&&(a.S=ja(p,0,m)&65535,a.S!==(p[m++]|p[m++]<<8)&&q(Error("invalid header crc16")));c=p[p.length-4]|p[p.length-3]<<8|p[p.length-2]<<16|p[p.length-1]<<24;p.length-m-4-4<512*c&&(f=c);d=new T(p,{index:m,bufferSize:f});a.data=e=d.h();m=d.c;a.ca=s=(p[m++]|p[m++]<<8|p[m++]<<16|p[m++]<<24)>>>0;ja(e,t,t)!==s&&q(Error("invalid CRC-32 checksum: 0x"+ja(e,t,t).toString(16)+" / 0x"+s.toString(16)));a.da=c=(p[m++]|p[m++]<<8|p[m++]<<16|p[m++]<<24)>>>0;(e.length&4294967295)!==c&&q(Error("invalid input size: "+(e.length&4294967295)+" / "+c));this.t.push(a);this.c=m}this.D=u;var n=this.t,r,v,x=0,Q=0,y;r=0;for(v=n.length;r<v;++r)Q+=n[r].data.length;if(B){y=new Uint8Array(Q);for(r=0;r<v;++r)y.set(n[r].data,x),x+=n[r].data.length}else{y=[];for(r=0;r<v;++r)y[r]=n[r].data;y=Array.prototype.concat.apply([],y)}return y};A("Zlib.Gunzip",sb);A("Zlib.Gunzip.prototype.decompress",sb.prototype.h);A("Zlib.Gunzip.prototype.getMembers",sb.prototype.X);function tb(b){if("string"===typeof b){var a=b.split(""),c,d;c=0;for(d=a.length;c<d;c++)a[c]=(a[c].charCodeAt(0)&255)>>>0;b=a}for(var e=1,f=0,g=b.length,k,h=0;0<g;){k=1024<g?1024:g;g-=k;do e+=b[h++],f+=e;while(--k);e%=65521;f%=65521}return(f<<16|e)>>>0};function ub(b,a){var c,d;this.input=b;this.c=0;if(a||!(a={}))a.index&&(this.c=a.index),a.verify&&(this.$=a.verify);c=b[this.c++];d=b[this.c++];switch(c&15){case vb:this.method=vb;break;default:q(Error("unsupported compression method"))}0!==((c<<8)+d)%31&&q(Error("invalid fcheck flag:"+((c<<8)+d)%31));d&32&&q(Error("fdict flag is not supported"));this.L=new T(b,{index:this.c,bufferSize:a.bufferSize,bufferType:a.bufferType,resize:a.resize})}
ub.prototype.h=function(){var b=this.input,a,c;a=this.L.h();this.c=this.L.c;this.$&&(c=(b[this.c++]<<24|b[this.c++]<<16|b[this.c++]<<8|b[this.c++])>>>0,c!==tb(a)&&q(Error("invalid adler-32 checksum")));return a};var vb=8;function wb(b,a){this.input=b;this.a=new(B?Uint8Array:Array)(32768);this.k=W.o;var c={},d;if((a||!(a={}))&&"number"===typeof a.compressionType)this.k=a.compressionType;for(d in a)c[d]=a[d];c.outputBuffer=this.a;this.K=new na(this.input,c)}var W=ra;wb.prototype.g=function(){var b,a,c,d,e,f,g,k=0;g=this.a;b=vb;switch(b){case vb:a=Math.LOG2E*Math.log(32768)-8;break;default:q(Error("invalid compression method"))}c=a<<4|b;g[k++]=c;switch(b){case vb:switch(this.k){case W.NONE:e=0;break;case W.v:e=1;break;case W.o:e=2;break;default:q(Error("unsupported compression type"))}break;default:q(Error("invalid compression method"))}d=e<<6|0;g[k++]=d|31-(256*c+d)%31;f=tb(this.input);this.K.b=k;g=this.K.g();k=g.length;B&&(g=new Uint8Array(g.buffer),g.length<=k+4&&(this.a=new Uint8Array(g.length+4),this.a.set(g),g=this.a),g=g.subarray(0,k+4));g[k++]=f>>24&255;g[k++]=f>>16&255;g[k++]=f>>8&255;g[k++]=f&255;return g};function xb(b,a){var c,d,e,f;if(Object.keys)c=Object.keys(a);else for(d in c=[],e=0,a)c[e++]=d;e=0;for(f=c.length;e<f;++e)d=c[e],A(b+"."+d,a[d])};A("Zlib.Inflate",ub);A("Zlib.Inflate.prototype.decompress",ub.prototype.h);xb("Zlib.Inflate.BufferType",{ADAPTIVE:Ya.N,BLOCK:Ya.O});A("Zlib.Deflate",wb);A("Zlib.Deflate.compress",function(b,a){return(new wb(b,a)).g()});A("Zlib.Deflate.prototype.compress",wb.prototype.g);xb("Zlib.Deflate.CompressionType",{NONE:W.NONE,FIXED:W.v,DYNAMIC:W.o});}).call(this);x3dom.X3DCanvas=function(x3dElem,canvasIdx)
{var that=this;this._canvasIdx=canvasIdx;this.isFlashReady=false;this.x3dElem=x3dElem;this._current_dim=[0,0];this.fps_t0=new Date().getTime();this.lastTimeFPSWasTaken=0;this.framesSinceLastTime=0;this.doc=null;this.lastMousePos={x:0,y:0};x3dom.caps.DOMNodeInsertedEvent_perSubtree=!(navigator.userAgent.indexOf('MSIE')!=-1||navigator.userAgent.indexOf('Trident')!=-1);x3dElem.__setAttribute=x3dElem.setAttribute;x3dElem.setAttribute=function(attrName,newVal)
{this.__setAttribute(attrName,newVal);switch(attrName){case"width":that.canvas.setAttribute("width",newVal);if(that.doc&&that.doc._viewarea){that.doc._viewarea._width=parseInt(that.canvas.getAttribute("width"),0);that.doc.needRender=true;}
break;case"height":that.canvas.setAttribute("height",newVal);if(that.doc&&that.doc._viewarea){that.doc._viewarea._height=parseInt(that.canvas.getAttribute("height"),0);that.doc.needRender=true;}
break;default:break;}};x3dom.caps.MOBILE=(navigator.appVersion.indexOf("Mobile")>-1);this.backend=this.x3dElem.getAttribute('backend');if(this.backend)
this.backend=this.backend.toLowerCase();else
this.backend='none';if(this.backend=='flash'){this.backend='flash';this.canvas=this._createFlashObject(x3dElem);if(this.canvas!=null){this.canvas.parent=this;this.gl=this._initFlashContext(this.canvas,this.flash_renderType);}else{this._createInitFailedDiv(x3dElem);return;}}else{this.canvas=this._createHTMLCanvas(x3dElem);this.canvas.parent=this;this.gl=this._initContext(this.canvas,(this.backend.search("desktop")>=0),(this.backend.search("mobile")>=0),(this.backend.search("flashie")>=0),(this.backend.search("webgl2")>=0));this.backend='webgl';if(this.gl==null)
{x3dom.debug.logInfo("Fallback to Flash Renderer");this.backend='flash';this.canvas=this._createFlashObject(x3dElem);if(this.canvas!=null){this.canvas.parent=this;this.gl=this._initFlashContext(this.canvas,this.flash_renderType);}else{this._createInitFailedDiv(x3dElem);return;}}}
x3dom.caps.BACKEND=this.backend;var runtimeEnabled=x3dElem.getAttribute("runtimeEnabled");if(runtimeEnabled!==null){this.hasRuntime=(runtimeEnabled.toLowerCase()=="true");}else{this.hasRuntime=x3dElem.hasRuntime;}
if(this.gl===null){this.hasRuntime=false;}
if(this.backend!="flash"){this.showStat=x3dElem.getAttribute("showStat");this.stateViewer=new x3dom.States(x3dElem);if(this.showStat!==null&&this.showStat=="true"){this.stateViewer.display(true);}
this.x3dElem.appendChild(this.stateViewer.viewer);}
this.showProgress=x3dElem.getAttribute("showProgress");this.progressDiv=this._createProgressDiv();this.progressDiv.style.display=(this.showProgress!==null&&this.showProgress=="true")?"inline":"none";this.x3dElem.appendChild(this.progressDiv);this.showTouchpoints=x3dElem.getAttribute("showTouchpoints");this.showTouchpoints=this.showTouchpoints?!(this.showTouchpoints.toLowerCase()=="false"):true;this.disableTouch=x3dElem.getAttribute("disableTouch");this.disableTouch=this.disableTouch?(this.disableTouch.toLowerCase()=="true"):false;if(this.canvas!==null&&this.gl!==null&&this.hasRuntime&&this.backend!=="flash"){this.canvas.mouse_dragging=false;this.canvas.mouse_button=0;this.canvas.mouse_drag_x=0;this.canvas.mouse_drag_y=0;this.canvas.isMulti=false;this.canvas.oncontextmenu=function(evt){evt.preventDefault();evt.stopPropagation();return false;};this.canvas.addEventListener("webglcontextlost",function(event){x3dom.debug.logError("WebGL context lost");event.preventDefault();},false);this.canvas.addEventListener("webglcontextrestored",function(event){x3dom.debug.logError("recover WebGL state and resources on context lost NYI");event.preventDefault();},false);this.canvas.addEventListener('mousedown',function(evt){if(!this.isMulti){this.focus();this.classList.add('x3dom-canvas-mousedown');switch(evt.button){case 0:this.mouse_button=1;break;case 1:this.mouse_button=4;break;case 2:this.mouse_button=2;break;default:this.mouse_button=0;break;}
if(evt.shiftKey){this.mouse_button=1;}
if(evt.ctrlKey){this.mouse_button=4;}
if(evt.altKey){this.mouse_button=2;}
var pos=this.parent.mousePosition(evt);this.mouse_drag_x=pos.x;this.mouse_drag_y=pos.y;this.mouse_dragging=true;this.parent.doc.onMousePress(that.gl,this.mouse_drag_x,this.mouse_drag_y,this.mouse_button);this.parent.doc.needRender=true;}},false);this.canvas.addEventListener('mouseup',function(evt){if(!this.isMulti){var prev_mouse_button=this.mouse_button;this.classList.remove('x3dom-canvas-mousedown');this.mouse_button=0;this.mouse_dragging=false;this.parent.doc.onMouseRelease(that.gl,this.mouse_drag_x,this.mouse_drag_y,this.mouse_button,prev_mouse_button);this.parent.doc.needRender=true;}},false);this.canvas.addEventListener('mouseover',function(evt){if(!this.isMulti){this.mouse_button=0;this.mouse_dragging=false;this.parent.doc.onMouseOver(that.gl,this.mouse_drag_x,this.mouse_drag_y,this.mouse_button);this.parent.doc.needRender=true;}},false);this.canvas.addEventListener('mouseout',function(evt){if(!this.isMulti){this.mouse_button=0;this.mouse_dragging=false;this.classList.remove('x3dom-canvas-mousedown');this.parent.doc.onMouseOut(that.gl,this.mouse_drag_x,this.mouse_drag_y,this.mouse_button);this.parent.doc.needRender=true;}},false);this.canvas.addEventListener('dblclick',function(evt){if(!this.isMulti){this.mouse_button=0;var pos=this.parent.mousePosition(evt);this.mouse_drag_x=pos.x;this.mouse_drag_y=pos.y;this.mouse_dragging=false;this.parent.doc.onDoubleClick(that.gl,this.mouse_drag_x,this.mouse_drag_y);this.parent.doc.needRender=true;}},false);this.canvas.addEventListener('mousemove',function(evt){if(!this.isMulti){var pos=this.parent.mousePosition(evt);if(pos.x!=that.lastMousePos.x||pos.y!=that.lastMousePos.y){that.lastMousePos=pos;if(evt.shiftKey){this.mouse_button=1;}
if(evt.ctrlKey){this.mouse_button=4;}
if(evt.altKey){this.mouse_button=2;}
this.mouse_drag_x=pos.x;this.mouse_drag_y=pos.y;if(this.mouse_dragging){this.parent.doc.onDrag(that.gl,this.mouse_drag_x,this.mouse_drag_y,this.mouse_button);}
else{this.parent.doc.onMove(that.gl,this.mouse_drag_x,this.mouse_drag_y,this.mouse_button);}
this.parent.doc.needRender=true;evt.preventDefault();evt.stopPropagation();}}},false);this.canvas.addEventListener('DOMMouseScroll',function(evt){if(!this.isMulti){this.focus();var originalY=this.parent.mousePosition(evt).y;this.mouse_drag_y-=4*evt.detail;this.parent.doc.onWheel(that.gl,this.mouse_drag_x,this.mouse_drag_y,originalY);this.parent.doc.needRender=true;evt.preventDefault();evt.stopPropagation();}},false);this.canvas.addEventListener('mousewheel',function(evt){if(!this.isMulti){this.focus();var originalY=this.parent.mousePosition(evt).y;this.mouse_drag_y-=0.2*evt.wheelDelta;this.parent.doc.onWheel(that.gl,this.mouse_drag_x,this.mouse_drag_y,originalY);this.parent.doc.needRender=true;evt.preventDefault();evt.stopPropagation();}},false);this.canvas.addEventListener('keypress',function(evt){var keysEnabled=this.parent.x3dElem.getAttribute("keysEnabled");if(!keysEnabled||keysEnabled.toLowerCase()=="true"){this.parent.doc.onKeyPress(evt.charCode);}
this.parent.doc.needRender=true;},true);this.canvas.addEventListener('keyup',function(evt){var keysEnabled=this.parent.x3dElem.getAttribute("keysEnabled");if(!keysEnabled||keysEnabled.toLowerCase()=="true"){this.parent.doc.onKeyUp(evt.keyCode);}
this.parent.doc.needRender=true;},true);this.canvas.addEventListener('keydown',function(evt){var keysEnabled=this.parent.x3dElem.getAttribute("keysEnabled");if(!keysEnabled||keysEnabled.toLowerCase()=="true"){this.parent.doc.onKeyDown(evt.keyCode);}
this.parent.doc.needRender=true;},true);var touches={numTouches:0,firstTouchTime:new Date().getTime(),firstTouchPoint:new x3dom.fields.SFVec2f(0,0),lastPos:new x3dom.fields.SFVec2f(),lastDrag:new x3dom.fields.SFVec2f(),lastMiddle:new x3dom.fields.SFVec2f(),lastSquareDistance:0,lastAngle:0,lastLayer:[],examineNavType:1,calcAngle:function(vector)
{var rotation=vector.normalize().dot(new x3dom.fields.SFVec2f(1,0));rotation=Math.acos(rotation);if(vector.y<0)
rotation=Math.PI+(Math.PI-rotation);return rotation;},disableTouch:this.disableTouch,visMarker:this.showTouchpoints,visMarkerBag:[],visualizeTouches:function(evt)
{if(!this.visMarker)
return;var touchBag=[];var marker=null;for(var i=0;i<evt.touches.length;i++){var id=evt.touches[i].identifier||evt.touches[i].streamId;if(!id)id=0;var index=this.visMarkerBag.indexOf(id);if(index>=0){marker=document.getElementById("visMarker"+id);marker.style.left=(evt.touches[i].pageX)+"px";marker.style.top=(evt.touches[i].pageY)+"px";}
else{marker=document.createElement("div");marker.appendChild(document.createTextNode("#"+id));marker.id="visMarker"+id;marker.className="x3dom-touch-marker";document.body.appendChild(marker);index=this.visMarkerBag.length;this.visMarkerBag[index]=id;}
touchBag.push(id);}
for(var j=this.visMarkerBag.length-1;j>=0;j--){var oldId=this.visMarkerBag[j];if(touchBag.indexOf(oldId)<0){this.visMarkerBag.splice(j,1);marker=document.getElementById("visMarker"+oldId);document.body.removeChild(marker);}}}};var mozilla_ids=[];var mozilla_touches={touches:[],preventDefault:function(){}};var touchStartHandler=function(evt,doc)
{this.isMulti=true;evt.preventDefault();touches.visualizeTouches(evt);this.focus();if(doc==null)
doc=this.parent.doc;var navi=doc._scene.getNavigationInfo();switch(navi.getType()){case"examine":touches.examineNavType=1;break;case"turntable":touches.examineNavType=2;break;default:touches.examineNavType=0;break;}
touches.lastLayer=[];var i,pos;for(i=0;i<evt.touches.length;i++){pos=this.parent.mousePosition(evt.touches[i]);touches.lastLayer.push([evt.touches[i].identifier,new x3dom.fields.SFVec2f(pos.x,pos.y)]);}
if(touches.numTouches<1&&evt.touches.length==1){touches.numTouches=1;touches.lastDrag=new x3dom.fields.SFVec2f(evt.touches[0].screenX,evt.touches[0].screenY);}
else if(touches.numTouches<2&&evt.touches.length>=2){touches.numTouches=2;var touch0=new x3dom.fields.SFVec2f(evt.touches[0].screenX,evt.touches[0].screenY);var touch1=new x3dom.fields.SFVec2f(evt.touches[1].screenX,evt.touches[1].screenY);var distance=touch1.subtract(touch0);var middle=distance.multiply(0.5).add(touch0);var squareDistance=distance.dot(distance);touches.lastMiddle=middle;touches.lastSquareDistance=squareDistance;touches.lastAngle=touches.calcAngle(distance);touches.lastPos=this.parent.mousePosition(evt.touches[0]);}
doc._scene.updateVolume();if(touches.examineNavType==1){for(i=0;i<evt.touches.length;i++){pos=this.parent.mousePosition(evt.touches[i]);doc.onPick(that.gl,pos.x,pos.y);doc._viewarea.prepareEvents(pos.x,pos.y,1,"onmousedown");doc._viewarea._pickingInfo.lastClickObj=doc._viewarea._pickingInfo.pickObj;}}
else if(evt.touches.length){pos=this.parent.mousePosition(evt.touches[0]);doc.onMousePress(that.gl,pos.x,pos.y,1);}
doc.needRender=true;};var touchStartHandlerMoz=function(evt)
{this.isMulti=true;evt.preventDefault();var new_id=true;for(var i=0;i<mozilla_ids.length;++i)
if(mozilla_ids[i]==evt.streamId)
new_id=false;if(new_id==true){evt.identifier=evt.streamId;mozilla_ids.push(evt.streamId);mozilla_touches.touches.push(evt);}
touchStartHandler(mozilla_touches,this.parent.doc);};var touchMoveHandler=function(evt,doc)
{evt.preventDefault();touches.visualizeTouches(evt);if(doc==null)
doc=this.parent.doc;var pos=null;var rotMatrix=null;var touch0,touch1,distance,middle,squareDistance,deltaMiddle,deltaZoom,deltaMove;if(touches.examineNavType==1){if(evt.touches.length==1){var currentDrag=new x3dom.fields.SFVec2f(evt.touches[0].screenX,evt.touches[0].screenY);var deltaDrag=currentDrag.subtract(touches.lastDrag);touches.lastDrag=currentDrag;var mx=x3dom.fields.SFMatrix4f.rotationY(deltaDrag.x/100);var my=x3dom.fields.SFMatrix4f.rotationX(deltaDrag.y/100);rotMatrix=mx.mult(my);doc.onMoveView(that.gl,null,rotMatrix);}
else if(evt.touches.length>=2){touch0=new x3dom.fields.SFVec2f(evt.touches[0].screenX,evt.touches[0].screenY);touch1=new x3dom.fields.SFVec2f(evt.touches[1].screenX,evt.touches[1].screenY);distance=touch1.subtract(touch0);middle=distance.multiply(0.5).add(touch0);squareDistance=distance.dot(distance);deltaMiddle=middle.subtract(touches.lastMiddle);deltaZoom=squareDistance-touches.lastSquareDistance;deltaMove=new x3dom.fields.SFVec3f(deltaMiddle.x/screen.width,-deltaMiddle.y/screen.height,deltaZoom/(screen.width*screen.height*0.2));var rotation=touches.calcAngle(distance);var angleDelta=touches.lastAngle-rotation;touches.lastAngle=rotation;rotMatrix=x3dom.fields.SFMatrix4f.rotationZ(angleDelta);touches.lastMiddle=middle;touches.lastSquareDistance=squareDistance;doc.onMoveView(that.gl,deltaMove,rotMatrix);}}
else if(evt.touches.length){if(touches.examineNavType==2&&evt.touches.length>=2){touch0=new x3dom.fields.SFVec2f(evt.touches[0].screenX,evt.touches[0].screenY);touch1=new x3dom.fields.SFVec2f(evt.touches[1].screenX,evt.touches[1].screenY);distance=touch1.subtract(touch0);squareDistance=distance.dot(distance);deltaZoom=(squareDistance-touches.lastSquareDistance)/(0.1*(screen.width+screen.height));touches.lastPos.y+=deltaZoom;touches.lastSquareDistance=squareDistance;doc.onDrag(that.gl,touches.lastPos.x,touches.lastPos.y,2);}
else{pos=this.parent.mousePosition(evt.touches[0]);doc.onDrag(that.gl,pos.x,pos.y,1);}}
doc.needRender=true;};var touchMoveHandlerMoz=function(evt)
{evt.preventDefault();for(var i=0;i<mozilla_ids.length;++i)
if(mozilla_ids[i]==evt.streamId)
mozilla_touches.touches[i]=evt;touchMoveHandler(mozilla_touches,this.parent.doc);};var touchEndHandler=function(evt,doc)
{this.isMulti=false;evt.preventDefault();touches.visualizeTouches(evt);if(doc==null)
doc=this.parent.doc;doc._viewarea._isMoving=false;if(touches.numTouches==2&&evt.touches.length==1)
touches.lastDrag=new x3dom.fields.SFVec2f(evt.touches[0].screenX,evt.touches[0].screenY);var dblClick=false;if(evt.touches.length<2){if(touches.numTouches==1)
dblClick=true;touches.numTouches=evt.touches.length;}
if(touches.examineNavType==1){for(var i=0;i<touches.lastLayer.length;i++){var pos=touches.lastLayer[i][1];doc.onPick(that.gl,pos.x,pos.y);if(doc._scene._vf.pickMode.toLowerCase()!=="box"){doc._viewarea.prepareEvents(pos.x,pos.y,1,"onmouseup");doc._viewarea._pickingInfo.lastClickObj=doc._viewarea._pickingInfo.pickObj;if(doc._viewarea._pickingInfo.pickObj&&doc._viewarea._pickingInfo.pickObj===doc._viewarea._pickingInfo.lastClickObj){doc._viewarea.prepareEvents(pos.x,pos.y,1,"onclick");}}
else{var line=doc._viewarea.calcViewRay(pos.x,pos.y);var isect=doc._scene.doIntersect(line);var obj=line.hitObject;if(isect&&obj){doc._viewarea._pick.setValues(line.hitPoint);doc._viewarea.checkEvents(obj,pos.x,pos.y,1,"onclick");x3dom.debug.logInfo("Hit '"+obj._xmlNode.localName+"/ "+
obj._DEF+"' at pos "+doc._viewarea._pick);}}}
if(dblClick){var now=new Date().getTime();var dist=touches.firstTouchPoint.subtract(touches.lastDrag).length();if(dist<18&&now-touches.firstTouchTime<180)
doc.onDoubleClick(that.gl,0,0);touches.firstTouchTime=now;touches.firstTouchPoint=touches.lastDrag;}}
else if(touches.lastLayer.length){pos=touches.lastLayer[0][1];doc.onMouseRelease(that.gl,pos.x,pos.y,0,1);}
doc.needRender=true;};var touchEndHandlerMoz=function(evt)
{this.isMulti=false;evt.preventDefault();var remove_index=-1;for(var i=0;i<mozilla_ids.length;++i)
if(mozilla_ids[i]==evt.streamId)
remove_index=i;if(remove_index!=-1)
{mozilla_ids.splice(remove_index,1);mozilla_touches.touches.splice(remove_index,1);}
touchEndHandler(mozilla_touches,this.parent.doc);};if(!this.disableTouch)
{this.canvas.addEventListener('touchstart',touchStartHandler,true);this.canvas.addEventListener('touchmove',touchMoveHandler,true);this.canvas.addEventListener('touchend',touchEndHandler,true);}}};x3dom.X3DCanvas.prototype._initContext=function(canvas,forbidMobileShaders,forceMobileShaders,forceFlashForIE,tryWebGL2)
{x3dom.debug.logInfo("Initializing X3DCanvas for ["+canvas.id+"]");var gl=x3dom.gfx_webgl(canvas,forbidMobileShaders,forceMobileShaders,tryWebGL2,this.x3dElem);if(!gl)
{x3dom.debug.logError("No 3D context found...");this.x3dElem.removeChild(canvas);return null;}
else
{var webglVersion=parseFloat(x3dom.caps.VERSION.match(/\d+\.\d+/)[0]);if(webglVersion<1.0){console.log(forceFlashForIE);if(forceFlashForIE){x3dom.debug.logError("No valid 3D context found...");this.x3dElem.removeChild(canvas);return null;}else{x3dom.debug.logError("WebGL version "+x3dom.caps.VERSION+" lacks important WebGL/GLSL features needed for shadows, special vertex attribute types, etc.!");}}}
return gl;};x3dom.X3DCanvas.prototype._initFlashContext=function(canvas,renderType){x3dom.debug.logInfo("Initializing X3DObject for ["+canvas.id+"]");return x3dom.gfx_flash(canvas,renderType);};x3dom.X3DCanvas.prototype.appendParam=function(node,name,value){var param=document.createElement('param');param.setAttribute('name',name);param.setAttribute('value',value);node.appendChild(param);};x3dom.X3DCanvas.prototype._fileExists=function(url){var xhr=new XMLHttpRequest();try{xhr.open("HEAD",url,false);xhr.send(null);return(xhr.status!=404);}catch(e){return true;}};x3dom.X3DCanvas.prototype._detectFlash=function(required,max)
{var required_version=required;var max_version=max;var available_version=0;if(typeof(navigator.plugins["Shockwave Flash"])=="object")
{var description=navigator.plugins["Shockwave Flash"].description;available_version=description.substr(16,(description.indexOf(".",16)-16));}
else if(typeof(ActiveXObject)=="function"){for(var i=10;i<(max_version+1);i++){try{if(typeof(new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i))=="object"){available_version=i+1;}}
catch(error){}}}
return[available_version,required_version];};x3dom.X3DCanvas.prototype._createInitFailedDiv=function(x3dElem){var div=document.createElement('div');div.setAttribute("id","x3dom-create-init-failed");div.style.width=x3dElem.getAttribute("width");div.style.height=x3dElem.getAttribute("height");div.style.backgroundColor="#C00";div.style.color="#FFF";div.style.fontSize="20px";div.style.fontWidth="bold";div.style.padding="10px 10px 10px 10px";div.style.display="inline-block";div.style.fontFamily="Helvetica";div.style.textAlign="center";div.appendChild(document.createTextNode('Your Browser does not support X3DOM'));div.appendChild(document.createElement('br'));div.appendChild(document.createTextNode('Read more about Browser support on:'));div.appendChild(document.createElement('br'));var link=document.createElement('a');link.setAttribute('href','http://www.x3dom.org/?page_id=9');link.appendChild(document.createTextNode('X3DOM | Browser Support'));div.appendChild(link);var altImg=x3dElem.getAttribute("altImg")||null;if(altImg){var altImgObj=new Image();altImgObj.src=altImg;div.style.backgroundImage="url("+altImg+")";div.style.backgroundRepeat="no-repeat";div.style.backgroundPosition="50% 50%";}
x3dElem.appendChild(div);x3dom.debug.logError("Your Browser does not support X3DOM!");};x3dom.X3DCanvas.prototype._createFlashObject=function(x3dElem){var result=this._detectFlash(11,11);if(!result[0]||result[0]<result[1]){return null;}else{x3dom.debug.logInfo("Creating FlashObject for (X)3D element...");var id=this.x3dElem.getAttribute("id");if(id!==null){id="x3dom-"+id+"-object";}else{var index=new Date().getTime();id="x3dom-"+index+"-object";}
var swf_path=this.x3dElem.getAttribute("swfpath");if(swf_path===null){swf_path="x3dom.swf";}
if(!this._fileExists(swf_path)){var version;if(x3dom.versionInfo===undefined||x3dom.versionInfo.version.indexOf('dev')!=-1)
{version="dev";}
else
{version=x3dom.versionInfo.version;var modification=version.substr(version.length-1);if(modification==0){version=version.substr(0,3);}}
swf_path="http://www.x3dom.org/download/"+version+"/x3dom.swf";x3dom.debug.logWarning("Can't find local x3dom.swf ("+version+"). X3DOM now using the online version from x3dom.org."+"The online version needs a <a href='http://examples.x3dom.org/crossdomain.xml'>crossdomain.xml</a> "+"file in the root directory of your domain to access textures");}
var width=this.x3dElem.getAttribute("width");var idx=-1;if(width==null){width=550;}else{idx=width.indexOf("px");if(idx!=-1){width=width.substr(0,idx);}}
var height=this.x3dElem.getAttribute("height");if(height==null){height=400;}else{idx=height.indexOf("px");if(idx!=-1){height=height.substr(0,idx);}}
var renderType=this.x3dElem.getAttribute("flashrenderer");if(renderType==null){this.flash_renderType="forward";}else{this.flash_renderType="deferred";}
var obj=document.createElement('object');obj.setAttribute('width','100%');obj.setAttribute('height','100%');obj.setAttribute('id',id);if(!document.doctype||document.doctype&&document.doctype.publicId&&document.doctype.publicId.search(/DTD XHTML/i)!=-1){x3dom.debug.logWarning("Flash backend doesn't like XHTML, please use HTML5!");obj.setAttribute('style','width:'+width+'px; height:'+height+'px;');}else{if(x3dElem.getAttribute('style')==null){x3dElem.setAttribute('style','width:'+width+'px; height:'+height+'px;');}}
this.appendParam(obj,'menu','false');this.appendParam(obj,'quality','high');this.appendParam(obj,'wmode','direct');this.appendParam(obj,'allowScriptAccess','always');this.appendParam(obj,'flashvars','canvasIdx='+this._canvasIdx+'&renderType='+this.flash_renderType);this.appendParam(obj,'movie',swf_path);if(navigator.appName=="Microsoft Internet Explorer"){x3dElem.appendChild(obj);obj.setAttribute('classid','clsid:d27cdb6e-ae6d-11cf-96b8-444553540000');}else{obj.setAttribute('type','application/x-shockwave-flash');obj.setAttribute('data',swf_path);x3dElem.appendChild(obj);}
return obj;}};x3dom.X3DCanvas.prototype._createHTMLCanvas=function(x3dElem)
{x3dom.debug.logInfo("Creating canvas for (X)3D element...");var canvas=document.createElement('canvas');canvas.setAttribute("class","x3dom-canvas");var userStyle=x3dElem.getAttribute("style");if(userStyle){x3dom.debug.logInfo("Inline X3D styles detected");}
var evtArr=["onmousedown","onmousemove","onmouseout","onmouseover","onmouseup","onclick","ondblclick","onkeydown","onkeypress","onkeyup","ontouchstart","ontouchmove","ontouchend","ontouchcancel","ontouchleave","ontouchenter","ondragstart","ondrop","ondragover"];for(var i=0;i<evtArr.length;i++)
{var evtName=evtArr[i];var userEvt=x3dElem.getAttribute(evtName);if(userEvt){x3dom.debug.logInfo(evtName+", "+userEvt);canvas.setAttribute(evtName,userEvt);x3dElem.removeAttribute(evtName);}}
var userProp=x3dElem.getAttribute("draggable");if(userProp){x3dom.debug.logInfo("draggable="+userProp);canvas.setAttribute("draggable",userProp);}
if(!x3dElem.__addEventListener&&!x3dElem.__removeEventListener)
{x3dElem.__addEventListener=x3dElem.addEventListener;x3dElem.__removeEventListener=x3dElem.removeEventListener;x3dElem.addEventListener=function(type,func,phase){var j,found=false;for(j=0;j<evtArr.length&&!found;j++){if(evtArr[j]===type){found=true;}}
if(found){x3dom.debug.logInfo('addEventListener for div.on'+type);canvas.addEventListener(type,func,phase);}else{x3dom.debug.logInfo('addEventListener for X3D.on'+type);this.__addEventListener(type,func,phase);}};x3dElem.removeEventListener=function(type,func,phase){var j,found=false;for(j=0;j<evtArr.length&&!found;j++){if(evtArr[j]===type){found=true;}}
if(found){x3dom.debug.logInfo('removeEventListener for div.on'+type);canvas.removeEventListener(type,func,phase);}else{x3dom.debug.logInfo('removeEventListener for X3D.on'+type);this.__removeEventListener(type,func,phase);}};}
x3dElem.appendChild(canvas);var id=x3dElem.getAttribute("id");if(id!==null){canvas.id="x3dom-"+id+"-canvas";}else{var index=new Date().getTime();canvas.id="x3dom-"+index+"-canvas";}
var w,h;if((w=x3dElem.getAttribute("width"))!==null){if(w.indexOf("%")>=0){x3dom.debug.logWarning("The width attribute is to be specified in pixels not in percent.");}
canvas.style.width=w;canvas.setAttribute("width",w);}
if((h=x3dElem.getAttribute("height"))!==null){if(h.indexOf("%")>=0){x3dom.debug.logWarning("The height attribute is to be specified in pixels not in percent.");}
canvas.style.height=h;canvas.setAttribute("height",h);}
canvas.setAttribute("tabindex","0");return canvas;};x3dom.X3DCanvas.prototype._watchForResize=function(){var new_dim=[parseInt(x3dom.getStyle(this.canvas,"width")),parseInt(x3dom.getStyle(this.canvas,"height"))];if((this._current_dim[0]!=new_dim[0])||(this._current_dim[1]!=new_dim[1])){this._current_dim=new_dim;this.x3dElem.setAttribute("width",new_dim[0]+"px");this.x3dElem.setAttribute("height",new_dim[1]+"px");}};x3dom.X3DCanvas.prototype._createProgressDiv=function(){var progressDiv=document.createElement('div');progressDiv.setAttribute("class","x3dom-progress");var _text=document.createElement('strong');_text.appendChild(document.createTextNode('Loading...'));progressDiv.appendChild(_text);var _inner=document.createElement('span');_inner.setAttribute('style',"width: 25%;");_inner.appendChild(document.createTextNode(' '));progressDiv.appendChild(_inner);progressDiv.oncontextmenu=progressDiv.onmousedown=function(evt){evt.preventDefault();evt.stopPropagation();return false;};return progressDiv;};x3dom.X3DCanvas.prototype.mousePosition=function(evt)
{var x=0,y=0;if("getBoundingClientRect"in document.documentElement){var elem=evt.target.offsetParent;var box=elem.getBoundingClientRect();var scrollLeft=window.pageXOffset||document.documentElement.scrollLeft;var scrollTop=window.pageYOffset||document.documentElement.scrollTop;var compStyle=document.defaultView.getComputedStyle(elem,null);var paddingLeft=parseFloat(compStyle.getPropertyValue('padding-left'));var borderLeftWidth=parseFloat(compStyle.getPropertyValue('border-left-width'));var paddingTop=parseFloat(compStyle.getPropertyValue('padding-top'));var borderTopWidth=parseFloat(compStyle.getPropertyValue('border-top-width'));x=Math.round(evt.pageX-(box.left+paddingLeft+borderLeftWidth+scrollLeft));y=Math.round(evt.pageY-(box.top+paddingTop+borderTopWidth+scrollTop));}
else{x3dom.debug.logError('NO getBoundingClientRect');}
return new x3dom.fields.SFVec2f(x,y);};x3dom.X3DCanvas.prototype.tick=function()
{var runtime=this.x3dElem.runtime;var d=new Date().getTime();var diff=d-this.lastTimeFPSWasTaken;var fps=1000.0/(d-this.fps_t0);this.fps_t0=d;this.doc.advanceTime(d/1000.0);var animD=new Date().getTime()-d;if(this.doc.needRender){if(diff>=1000){runtime.fps=this.framesSinceLastTime/(diff/1000.0);runtime.addMeasurement('FPS',runtime.fps);this.framesSinceLastTime=0;this.lastTimeFPSWasTaken=d;}
this.framesSinceLastTime++;runtime.addMeasurement('ANIM',animD);if(runtime.isReady==false){runtime.ready();runtime.isReady=true;}
runtime.enterFrame();if(this.backend=='flash'){if(this.isFlashReady){this.canvas.setFPS({fps:fps});this.doc.needRender=false;this.doc.render(this.gl);}}
else{this.doc.needRender=false;this.doc.render(this.gl);if(!this.doc._scene._vf.doPickPass)
runtime.removeMeasurement('PICKING');}
runtime.exitFrame();}
if(this.progressDiv){if(this.doc.downloadCount>0){runtime.addInfo("#LOADS:",this.doc.downloadCount);}else{runtime.removeInfo("#LOADS:");}
if(this.doc.properties.getProperty("showProgress")!=='false'){if(this.progressDiv){this.progressDiv.childNodes[0].textContent='Loading: '+(+this.doc.downloadCount);if(this.doc.downloadCount>0){this.progressDiv.style.display='inline';}else{this.progressDiv.style.display='none';}}}else{this.progressDiv.style.display='none';}}};x3dom.X3DCanvas.prototype.load=function(uri,sceneElemPos,settings){this.doc=new x3dom.X3DDocument(this.canvas,this.gl,settings);var x3dCanvas=this;this.doc.onload=function(){if(x3dCanvas.hasRuntime){(function mainloop(){if(x3dCanvas.doc&&x3dCanvas.x3dElem.runtime){x3dCanvas._watchForResize();x3dCanvas.tick();window.requestAnimFrame(mainloop,x3dCanvas);}})();}else{x3dCanvas.tick();}};this.x3dElem.render=function(){if(x3dCanvas.hasRuntime){x3dCanvas.doc.needRender=true;}else{x3dCanvas.doc.render(x3dCanvas.gl);}};this.x3dElem.context=x3dCanvas.gl.ctx3d;this.doc.onerror=function(){alert('Failed to load X3D document');};this.doc.load(uri,sceneElemPos);};x3dom.runtime={};x3dom.Runtime=function(doc,canvas){this.doc=doc;this.canvas=canvas;this.config={};this.isReady=false;this.fps=0;this.states={measurements:[],infos:[]};};x3dom.Runtime.prototype.addMeasurement=function(title,value){this.states.measurements[title]=value;};x3dom.Runtime.prototype.removeMeasurement=function(title){if(this.states.measurements[title]){delete this.states.measurements[title];}};x3dom.Runtime.prototype.addInfo=function(title,value){this.states.infos[title]=value;};x3dom.Runtime.prototype.removeInfo=function(title){delete this.states.infos[title];};x3dom.Runtime.prototype.initialize=function(doc,canvas){this.doc=doc;this.canvas=canvas;this.config={};this.isReady=false;this.fps=0;};x3dom.Runtime.prototype.noBackendFound=function(){x3dom.debug.logInfo('No backend found. Unable to render.');};x3dom.Runtime.prototype.ready=function(){x3dom.debug.logInfo('System ready.');};x3dom.Runtime.prototype.enterFrame=function(){};x3dom.Runtime.prototype.exitFrame=function(){};x3dom.Runtime.prototype.triggerRedraw=function(){this.canvas.doc.needRender=true;};x3dom.Runtime.prototype.getActiveBindable=function(typeName){var stacks;var i,current,result;var type;stacks=this.canvas.doc._bindableBag._stacks;result=[];type=x3dom.nodeTypesLC[typeName.toLowerCase()];if(!type){x3dom.debug.logError('No node of type "'+typeName+'" found.');return null;}
for(i=0;i<stacks.length;i++){current=stacks[i].getActive();if(current._xmlNode!==undefined&&x3dom.isa(current,type)){result.push(current);}}
return result[0]?result[0]._xmlNode:null;};x3dom.Runtime.prototype.nextView=function(){var stack=this.canvas.doc._scene.getViewpoint()._stack;if(stack){stack.switchTo('next');}else{x3dom.debug.logError('No valid ViewBindable stack.');}};x3dom.Runtime.prototype.prevView=function(){var stack=this.canvas.doc._scene.getViewpoint()._stack;if(stack){stack.switchTo('prev');}else{x3dom.debug.logError('No valid ViewBindable stack.');}};x3dom.Runtime.prototype.viewpoint=function(){return this.canvas.doc._scene.getViewpoint();};x3dom.Runtime.prototype.viewMatrix=function(){return this.canvas.doc._viewarea.getViewMatrix();};x3dom.Runtime.prototype.projectionMatrix=function(){return this.canvas.doc._viewarea.getProjectionMatrix();};x3dom.Runtime.prototype.getWorldToCameraCoordinatesMatrix=function(){return this.canvas.doc._viewarea.getWCtoCCMatrix();};x3dom.Runtime.prototype.getCameraToWorldCoordinatesMatrix=function(){return this.canvas.doc._viewarea.getCCtoWCMatrix();};x3dom.Runtime.prototype.getViewingRay=function(x,y){return this.canvas.doc._viewarea.calcViewRay(x,y);};x3dom.Runtime.prototype.shootRay=function(x,y){var doc=this.canvas.doc;var info=doc._viewarea._pickingInfo;doc.onPick(this.canvas.gl,x,y);return{pickPosition:info.pickObj?info.pickPos:null,pickNormal:info.pickObj?info.pickNorm:null,pickObject:info.pickObj?info.pickObj._xmlNode:null};};x3dom.Runtime.prototype.getWidth=function(){return this.canvas.doc._viewarea._width;};x3dom.Runtime.prototype.getHeight=function(){return this.canvas.doc._viewarea._height;};x3dom.Runtime.prototype.mousePosition=function(event){var pos=this.canvas.mousePosition(event);return[pos.x,pos.y];};x3dom.Runtime.prototype.calcCanvasPos=function(wx,wy,wz){var pnt=new x3dom.fields.SFVec3f(wx,wy,wz);var mat=this.canvas.doc._viewarea.getWCtoCCMatrix();var pos=mat.multFullMatrixPnt(pnt);var w=this.canvas.doc._viewarea._width;var h=this.canvas.doc._viewarea._height;var x=Math.round((pos.x+1)*(w-1)/2);var y=Math.round((h-1)*(1-pos.y)/2);return[x,y];};x3dom.Runtime.prototype.calcPagePos=function(wx,wy,wz){var elem=this.canvas.canvas.offsetParent;if(!elem){x3dom.debug.logError("Can't calc page pos without offsetParent.");return[0,0];}
var canvasPos=elem.getBoundingClientRect();var mousePos=this.calcCanvasPos(wx,wy,wz);var scrollLeft=window.pageXOffset||document.body.scrollLeft;var scrollTop=window.pageYOffset||document.body.scrollTop;var compStyle=document.defaultView.getComputedStyle(elem,null);var paddingLeft=parseFloat(compStyle.getPropertyValue('padding-left'));var borderLeftWidth=parseFloat(compStyle.getPropertyValue('border-left-width'));var paddingTop=parseFloat(compStyle.getPropertyValue('padding-top'));var borderTopWidth=parseFloat(compStyle.getPropertyValue('border-top-width'));var x=canvasPos.left+paddingLeft+borderLeftWidth+scrollLeft+mousePos[0];var y=canvasPos.top+paddingTop+borderTopWidth+scrollTop+mousePos[1];return[x,y];};x3dom.Runtime.prototype.calcClientPos=function(wx,wy,wz){var elem=this.canvas.canvas.offsetParent;if(!elem){x3dom.debug.logError("Can't calc client pos without offsetParent.");return[0,0];}
var canvasPos=elem.getBoundingClientRect();var mousePos=this.calcCanvasPos(wx,wy,wz);var compStyle=document.defaultView.getComputedStyle(elem,null);var paddingLeft=parseFloat(compStyle.getPropertyValue('padding-left'));var borderLeftWidth=parseFloat(compStyle.getPropertyValue('border-left-width'));var paddingTop=parseFloat(compStyle.getPropertyValue('padding-top'));var borderTopWidth=parseFloat(compStyle.getPropertyValue('border-top-width'));var x=canvasPos.left+paddingLeft+borderLeftWidth+mousePos[0];var y=canvasPos.top+paddingTop+borderTopWidth+mousePos[1];return[x,y];};x3dom.Runtime.prototype.getScreenshot=function(){var url="";var backend=this.canvas.backend;var canvas=this.canvas.canvas;if(canvas){if(backend=="flash"){url=canvas.getScreenshot();}
else{var canvas2d=document.createElement("canvas");canvas2d.width=canvas.width;canvas2d.height=canvas.height;var ctx=canvas2d.getContext("2d");ctx.drawImage(canvas,0,0,canvas.width,canvas.height);ctx.scale(1,-1);ctx.translate(0,-canvas.height);url=canvas2d.toDataURL();}}
return url;};x3dom.Runtime.prototype.getCanvas=function(){return this.canvas.canvas;};x3dom.Runtime.prototype.lightMatrix=function(){this.canvas.doc._viewarea.getLightMatrix();};x3dom.Runtime.prototype.resetView=function(){this.canvas.doc._viewarea.resetView();};x3dom.Runtime.prototype.lightView=function(){if(this.canvas.doc._nodeBag.lights.length>0){this.canvas.doc._viewarea.animateTo(this.canvas.doc._viewarea.getLightMatrix()[0],this.canvas.doc._scene.getViewpoint());return true;}else{x3dom.debug.logInfo("No lights to navigate to.");return false;}};x3dom.Runtime.prototype.uprightView=function(){this.canvas.doc._viewarea.uprightView();};x3dom.Runtime.prototype.fitAll=function(updateCenterOfRotation)
{if(updateCenterOfRotation===undefined){updateCenterOfRotation=true;}
var scene=this.canvas.doc._scene;scene.updateVolume();this.canvas.doc._viewarea.fit(scene._lastMin,scene._lastMax,updateCenterOfRotation);};x3dom.Runtime.prototype.fitObject=function(obj,updateCenterOfRotation)
{if(obj&&obj._x3domNode)
{if(updateCenterOfRotation===undefined){updateCenterOfRotation=true;}
var min=x3dom.fields.SFVec3f.MAX();var max=x3dom.fields.SFVec3f.MIN();var vol=obj._x3domNode.getVolume();vol.getBounds(min,max);var mat=obj._x3domNode.getCurrentTransform();min=mat.multMatrixPnt(min);max=mat.multMatrixPnt(max);if(x3dom.isa(obj._x3domNode,x3dom.nodeTypes.X3DTransformNode))
{var invMat=obj._x3domNode._trafo.inverse();min=invMat.multMatrixPnt(min);max=invMat.multMatrixPnt(max);}
this.canvas.doc._viewarea.fit(min,max,updateCenterOfRotation);}};x3dom.Runtime.prototype.showAll=function(axis){this.canvas.doc._viewarea.showAll(axis);};x3dom.Runtime.prototype.showObject=function(obj)
{if(obj&&obj._x3domNode)
{var min=x3dom.fields.SFVec3f.MAX();var max=x3dom.fields.SFVec3f.MIN();var vol=obj._x3domNode.getVolume();vol.getBounds(min,max);var mat=obj._x3domNode.getCurrentTransform();min=mat.multMatrixPnt(min);max=mat.multMatrixPnt(max);var viewarea=this.canvas.doc._viewarea;var focalLen=(viewarea._width<viewarea._height)?viewarea._width:viewarea._height;var n0=new x3dom.fields.SFVec3f(0,0,1);var viewpoint=this.canvas.doc._scene.getViewpoint();var fov=viewpoint.getFieldOfView()/2.0;var ta=Math.tan(fov);if(Math.abs(ta)>x3dom.fields.Eps){focalLen/=ta;}
var w=viewarea._width-1;var h=viewarea._height-1;var frame=0.25;var minScreenPos=new x3dom.fields.SFVec2f(frame*w,frame*h);frame=0.75;var maxScreenPos=new x3dom.fields.SFVec2f(frame*w,frame*h);var dia2=max.subtract(min).multiply(0.5);var rw=dia2.length();var pc=min.add(dia2);var vc=maxScreenPos.subtract(minScreenPos).multiply(0.5);var rs=1.5*vc.length();vc=vc.add(minScreenPos);var dist=1.0;if(rs>x3dom.fields.Eps){dist=(rw/rs)*Math.sqrt(vc.x*vc.x+vc.y*vc.y+focalLen*focalLen);}
n0=mat.multMatrixVec(n0).normalize();n0=n0.multiply(dist);var p0=pc.add(n0);var qDir=x3dom.fields.Quaternion.rotateFromTo(new x3dom.fields.SFVec3f(0,0,1),n0);var R=qDir.toMatrix();var T=x3dom.fields.SFMatrix4f.translation(p0.negate());var M=x3dom.fields.SFMatrix4f.translation(p0);M=M.mult(R).mult(T).mult(M);var viewmat=M.inverse();viewarea.animateTo(viewmat,viewpoint);}};x3dom.Runtime.prototype.getCenter=function(domNode){if(domNode&&domNode._x3domNode&&(this.isA(domNode,"X3DShapeNode")||this.isA(domNode,"X3DGeometryNode")))
{return domNode._x3domNode.getCenter();}
return null;};x3dom.Runtime.prototype.getCurrentTransform=function(domNode){if(domNode&&domNode._x3domNode)
{return domNode._x3domNode.getCurrentTransform();}
return null;};x3dom.Runtime.prototype.getBBox=function(domNode){if(domNode&&domNode._x3domNode&&this.isA(domNode,"X3DBoundedObject"))
{var vol=domNode._x3domNode.getVolume();return{min:x3dom.fields.SFVec3f.copy(vol.min),max:x3dom.fields.SFVec3f.copy(vol.max)}}
return null;};x3dom.Runtime.prototype.getSceneBBox=function(){var scene=this.canvas.doc._scene;scene.updateVolume();return{min:x3dom.fields.SFVec3f.copy(scene._lastMin),max:x3dom.fields.SFVec3f.copy(scene._lastMax)}};x3dom.Runtime.prototype.debug=function(show){var doc=this.canvas.doc;if(doc._viewarea._visDbgBuf===undefined)
doc._viewarea._visDbgBuf=(doc._x3dElem.getAttribute("showLog")==='true');if(arguments.length>0){if(show===true){doc._viewarea._visDbgBuf=true;x3dom.debug.logContainer.style.display="block";}
else{doc._viewarea._visDbgBuf=false;x3dom.debug.logContainer.style.display="none";}}
else{doc._viewarea._visDbgBuf=!doc._viewarea._visDbgBuf;x3dom.debug.logContainer.style.display=(doc._viewarea._visDbgBuf==true)?"block":"none";}
doc.needRender=true;return doc._viewarea._visDbgBuf;};x3dom.Runtime.prototype.navigationType=function(){return this.canvas.doc._scene.getNavigationInfo().getType();};x3dom.Runtime.prototype.noNav=function(){this.canvas.doc._scene.getNavigationInfo().setType("none");};x3dom.Runtime.prototype.examine=function(){this.canvas.doc._scene.getNavigationInfo().setType("examine");};x3dom.Runtime.prototype.turnTable=function(){this.canvas.doc._scene.getNavigationInfo().setType("turntable");};x3dom.Runtime.prototype.fly=function(){this.canvas.doc._scene.getNavigationInfo().setType("fly");};x3dom.Runtime.prototype.freeFly=function(){this.canvas.doc._scene.getNavigationInfo().setType("freefly");};x3dom.Runtime.prototype.lookAt=function(){this.canvas.doc._scene.getNavigationInfo().setType("lookat");};x3dom.Runtime.prototype.lookAround=function(){this.canvas.doc._scene.getNavigationInfo().setType("lookaround");};x3dom.Runtime.prototype.walk=function(){this.canvas.doc._scene.getNavigationInfo().setType("walk");};x3dom.Runtime.prototype.game=function(){this.canvas.doc._scene.getNavigationInfo().setType("game");};x3dom.Runtime.prototype.helicopter=function(){this.canvas.doc._scene.getNavigationInfo().setType("helicopter");};x3dom.Runtime.prototype.resetExamin=function(){var viewarea=this.canvas.doc._viewarea;viewarea._rotMat=x3dom.fields.SFMatrix4f.identity();viewarea._transMat=x3dom.fields.SFMatrix4f.identity();viewarea._movement=new x3dom.fields.SFVec3f(0,0,0);viewarea._needNavigationMatrixUpdate=true;this.canvas.doc.needRender=true;};x3dom.Runtime.prototype.togglePoints=function(lines){var doc=this.canvas.doc;var mod=(lines===true)?3:2;doc._viewarea._points=++doc._viewarea._points%mod;doc.needRender=true;return doc._viewarea._points;};x3dom.Runtime.prototype.pickRect=function(x1,y1,x2,y2){return this.canvas.doc.onPickRect(this.canvas.gl,x1,y1,x2,y2);};x3dom.Runtime.prototype.pickMode=function(options){if(options&&options.internal===true){return this.canvas.doc._scene._vf.pickMode;}
return this.canvas.doc._scene._vf.pickMode.toLowerCase();};x3dom.Runtime.prototype.changePickMode=function(type){type=type.toLowerCase();switch(type){case'idbuf':type='idBuf';break;case'idbuf24':type='idBuf24';break;case'idbufid':type='idBufId';break;case'texcoord':type='texCoord';break;case'color':type='color';break;case'box':type='box';break;default:x3dom.debug.logWarning("Switch pickMode to "+type+' unknown intersect type');type=undefined;}
if(type!==undefined){this.canvas.doc._scene._vf.pickMode=type;x3dom.debug.logInfo("Switched pickMode to '"+type+"'.");return true;}
return false;};x3dom.Runtime.prototype.speed=function(newSpeed){var navi=this.canvas.doc._scene.getNavigationInfo();if(newSpeed){navi._vf.speed=newSpeed;x3dom.debug.logInfo("Changed navigation speed to "+navi._vf.speed);}
return navi._vf.speed;};x3dom.Runtime.prototype.statistics=function(mode){var states=this.canvas.stateViewer;if(states){this.canvas.doc.needRender=true;if(mode===true){states.display(mode);return true;}
else if(mode===false){states.display(mode);return false;}
else{states.display(!states.active);return states.active;}}
return false;};x3dom.Runtime.prototype.processIndicator=function(mode){var processDiv=this.canvas.progressDiv;if(processDiv){if(mode===true){processDiv.style.display='inline';return true;}
else if(mode===false){processDiv.style.display='none';return false;}
return processDiv.style.display!='none'}
return false;};x3dom.Runtime.prototype.properties=function(){return this.canvas.doc.properties;};x3dom.Runtime.prototype.backendName=function(){return this.canvas.backend;};x3dom.Runtime.prototype.getFPS=function(){return this.fps;};x3dom.Runtime.prototype.isA=function(domNode,nodeType){var inherits=false;if(nodeType&&domNode&&domNode._x3domNode){if(nodeType===""){nodeType="X3DNode";}
inherits=x3dom.isa(domNode._x3domNode,x3dom.nodeTypesLC[nodeType.toLowerCase()]);}
return inherits;};x3dom.detectActiveX=function(){var isInstalled=false;if(window.ActiveXObject){var control=null;try{control=new ActiveXObject('AVALONATX.InstantPluginATXCtrl.1');}catch(e){}
if(control){isInstalled=true;}}
return isInstalled;};x3dom.rerouteSetAttribute=function(node,browser){node._setAttribute=node.setAttribute;node.setAttribute=function(name,value){var id=node.getAttribute("_x3domNode");var anode=browser.findNode(id);if(anode)
return anode.parseField(name,value);else
return 0;};for(var i=0;i<node.childNodes.length;i++){var child=node.childNodes[i];x3dom.rerouteSetAttribute(child,browser);}};x3dom.insertActiveX=function(x3d){if(typeof x3dom.atxCtrlCounter=='undefined'){x3dom.atxCtrlCounter=0;}
var height=x3d.getAttribute("height");var width=x3d.getAttribute("width");var parent=x3d.parentNode;var divelem=document.createElement("div");divelem.setAttribute("id","x3dplaceholder");var inserted=parent.insertBefore(divelem,x3d);var hiddenx3d=document.createElement("div");hiddenx3d.style.display="none";parent.appendChild(hiddenx3d);parent.removeChild(x3d);hiddenx3d.appendChild(x3d);var atx=document.createElement("object");var containerName="Avalon"+x3dom.atxCtrlCounter;x3dom.atxCtrlCounter++;atx.setAttribute("id",containerName);atx.setAttribute("classid","CLSID:F3254BA0-99FF-4D14-BD81-EDA9873A471E");atx.setAttribute("width",width?width:"500");atx.setAttribute("height",height?height:"500");inserted.appendChild(atx);var atxctrl=document.getElementById(containerName);var browser=atxctrl.getBrowser();var scene=browser.importDocument(x3d);browser.replaceWorld(scene);x3d.getBrowser=function(){return atxctrl.getBrowser();};x3dom.rerouteSetAttribute(x3d,browser);};x3dom.userAgentFeature={supportsDOMAttrModified:false};(function loadX3DOM(){"use strict";var onload=function(){var i,j;var x3ds_unfiltered=document.getElementsByTagName('X3D');var x3ds=[];for(i=0;i<x3ds_unfiltered.length;i++){if(x3ds_unfiltered[i].hasRuntime===undefined)
x3ds.push(x3ds_unfiltered[i]);}
var params;var settings=new x3dom.Properties();var validParams=array_to_object(['showLog','showStat','showProgress','PrimitiveQuality','components','loadpath','disableDoubleClick','backend','altImg','flashrenderer','swfpath','runtimeEnabled','keysEnabled','showTouchpoints','disableTouch','maxActiveDownloads']);var components,prefix;var showLoggingConsole=false;for(i=0;i<x3ds.length;i++){settings.setProperty("showLog",x3ds[i].getAttribute("showLog")||'false');settings.setProperty("showStat",x3ds[i].getAttribute("showStat")||'false');settings.setProperty("showProgress",x3ds[i].getAttribute("showProgress")||'true');settings.setProperty("PrimitiveQuality",x3ds[i].getAttribute("PrimitiveQuality")||'High');params=x3ds[i].getElementsByTagName('PARAM');for(j=0;j<params.length;j++){if(params[j].getAttribute('name')in validParams){settings.setProperty(params[j].getAttribute('name'),params[j].getAttribute('value'));}else{}}
if(settings.getProperty('showLog')==='true'){showLoggingConsole=true;}
if(typeof X3DOM_SECURITY_OFF!='undefined'&&X3DOM_SECURITY_OFF===true){components=settings.getProperty('components',x3ds[i].getAttribute("components"));if(components){prefix=settings.getProperty('loadpath',x3ds[i].getAttribute("loadpath"));components=components.trim().split(',');for(j=0;j<components.length;j++){x3dom.loadJS(components[j]+".js",prefix);}}
if(x3ds[i].getAttribute("src")){var _scene=document.createElement("scene");var _inl=document.createElement("Inline");_inl.setAttribute("url",x3ds[i].getAttribute("src"));_scene.appendChild(_inl);x3ds[i].appendChild(_scene);}}}
if(showLoggingConsole==true){x3dom.debug.activate(true);}else{x3dom.debug.activate(false);}
x3ds=Array.map(x3ds,function(n){n.hasRuntime=true;return n;});var w3sg=document.getElementsByTagName('webSG');for(i=0;i<w3sg.length;i++){w3sg[i].hasRuntime=false;x3ds.push(w3sg[i]);}
if(x3dom.versionInfo!==undefined){x3dom.debug.logInfo("X3DOM version "+x3dom.versionInfo.version+", "+"Revison <a href='https://github.com/x3dom/x3dom/tree/"+x3dom.versionInfo.revision+"'>"
+x3dom.versionInfo.revision+"</a>, "+"Date "+x3dom.versionInfo.date);}
x3dom.debug.logInfo("Found "+(x3ds.length-w3sg.length)+" X3D and "+
w3sg.length+" (experimental) WebSG nodes...");var x3d_element;var x3dcanvas;var altDiv,altP,aLnk,altImg;var t0,t1;for(i=0;i<x3ds.length;i++)
{x3d_element=x3ds[i];if(x3dom.detectActiveX()){x3dom.insertActiveX(x3d_element);continue;}
x3dcanvas=new x3dom.X3DCanvas(x3d_element,x3dom.canvases.length);x3dom.canvases.push(x3dcanvas);if(x3dcanvas.gl===null){altDiv=document.createElement("div");altDiv.setAttribute("class","x3dom-nox3d");altDiv.setAttribute("id","x3dom-nox3d");altP=document.createElement("p");altP.appendChild(document.createTextNode("WebGL is not yet supported in your browser. "));aLnk=document.createElement("a");aLnk.setAttribute("href","http://www.x3dom.org/?page_id=9");aLnk.appendChild(document.createTextNode("Follow link for a list of supported browsers... "));altDiv.appendChild(altP);altDiv.appendChild(aLnk);x3dcanvas.x3dElem.appendChild(altDiv);if(x3dcanvas.stateViewer){x3d_element.removeChild(x3dcanvas.stateViewer.viewer);}
continue;}
t0=new Date().getTime();x3ds[i].runtime=new x3dom.Runtime(x3ds[i],x3dcanvas);x3ds[i].runtime.initialize(x3ds[i],x3dcanvas);if(x3dom.runtime.ready){x3ds[i].runtime.ready=x3dom.runtime.ready;}
if(x3dcanvas.backend==''){x3dom.runtime.noBackendFound();}
x3dcanvas.load(x3ds[i],i,settings);if(settings.getProperty('showStat')==='true'){x3ds[i].runtime.statistics(true);}else{x3ds[i].runtime.statistics(false);}
if(settings.getProperty('showProgress')==='true'){if(settings.getProperty('showProgress')==='bar'){x3dcanvas.progressDiv.setAttribute("class","x3dom-progress bar");}
x3ds[i].runtime.processIndicator(true);}else{x3ds[i].runtime.processIndicator(false);}
t1=new Date().getTime()-t0;x3dom.debug.logInfo("Time for setup and init of GL element no. "+i+": "+t1+" ms.");}
var ready=(function(eventType){var evt=null;if(document.createEvent){evt=document.createEvent("Events");evt.initEvent(eventType,true,true);document.dispatchEvent(evt);}else if(document.createEventObject){evt=document.createEventObject();document.body.fireEvent('on'+eventType,evt);}})('load');};var onunload=function(){if(x3dom.canvases){for(var i=0;i<x3dom.canvases.length;i++){x3dom.canvases[i].doc.shutdown(x3dom.canvases[i].gl);}
x3dom.canvases=[];}};x3dom.reload=function(){onload();};if(navigator.userAgent.indexOf("Chrome")!=-1){document.__getElementsByTagName=document.getElementsByTagName;document.getElementsByTagName=function(tag){var obj=[];var elems=this.__getElementsByTagName("*");if(tag=="*"){obj=elems;}else{tag=tag.toUpperCase();for(var i=0;i<elems.length;i++){var tagName=elems[i].tagName.toUpperCase();if(tagName===tag){obj.push(elems[i]);}}}
return obj;};document.__getElementById=document.getElementById;document.getElementById=function(id){var obj=this.__getElementById(id);if(!obj){var elems=this.__getElementsByTagName("*");for(var i=0;i<elems.length&&!obj;i++){if(elems[i].getAttribute("id")===id){obj=elems[i];}}}
return obj;};}else{document.__getElementById=document.getElementById;document.getElementById=function(id){var obj=this.__getElementById(id);if(!obj){var elems=this.getElementsByTagName("*");for(var i=0;i<elems.length&&!obj;i++){if(elems[i].getAttribute("id")===id){obj=elems[i];}}}
return obj;};}
if(window.addEventListener){window.addEventListener('load',onload,false);window.addEventListener('unload',onunload,false);window.addEventListener('reload',onunload,false);}else if(window.attachEvent){window.attachEvent('onload',onload);window.attachEvent('onunload',onunload);window.attachEvent('onreload',onunload);}
if(document.readyState==="complete"){window.setTimeout(function(){onload();},20);}})();x3dom.Cache=function(){this.textures=[];this.shaders=[];};x3dom.Cache.prototype.getTexture2D=function(gl,doc,url,bgnd,crossOrigin,scale,genMipMaps){var textureIdentifier=url;if(this.textures[textureIdentifier]===undefined){this.textures[textureIdentifier]=x3dom.Utils.createTexture2D(gl,doc,url,bgnd,crossOrigin,scale,genMipMaps);}
return this.textures[textureIdentifier];};x3dom.Cache.prototype.getTexture2DByDEF=function(gl,nameSpace,def){var textureIdentifier=nameSpace.name+"_"+def;if(this.textures[textureIdentifier]===undefined){this.textures[textureIdentifier]=gl.createTexture();}
return this.textures[textureIdentifier];};x3dom.Cache.prototype.getTextureCube=function(gl,doc,url,bgnd,crossOrigin,scale,genMipMaps){var textureIdentifier="";for(var i=0;i<url.length;++i){textureIdentifier+=url[i]+"|";}
if(this.textures[textureIdentifier]===undefined){this.textures[textureIdentifier]=x3dom.Utils.createTextureCube(gl,doc,url,bgnd,crossOrigin,scale,genMipMaps);}
return this.textures[textureIdentifier];};x3dom.Cache.prototype.getShader=function(gl,shaderIdentifier){var program=null;if(this.shaders[shaderIdentifier]===undefined){switch(shaderIdentifier){case x3dom.shader.PICKING:program=new x3dom.shader.PickingShader(gl);break;case x3dom.shader.PICKING_24:program=new x3dom.shader.Picking24Shader(gl);break;case x3dom.shader.PICKING_ID:program=new x3dom.shader.PickingIdShader(gl);break;case x3dom.shader.PICKING_COLOR:program=new x3dom.shader.PickingColorShader(gl);break;case x3dom.shader.PICKING_TEXCOORD:program=new x3dom.shader.PickingTexcoordShader(gl);break;case x3dom.shader.FRONTGROUND_TEXTURE:program=new x3dom.shader.FrontgroundTextureShader(gl);break;case x3dom.shader.BACKGROUND_TEXTURE:program=new x3dom.shader.BackgroundTextureShader(gl);break;case x3dom.shader.BACKGROUND_SKYTEXTURE:program=new x3dom.shader.BackgroundSkyTextureShader(gl);break;case x3dom.shader.BACKGROUND_CUBETEXTURE:program=new x3dom.shader.BackgroundCubeTextureShader(gl);break;case x3dom.shader.SHADOW:program=new x3dom.shader.ShadowShader(gl);break;case x3dom.shader.BLUR:program=new x3dom.shader.BlurShader(gl);break;case x3dom.shader.DEPTH:break;case x3dom.shader.NORMAL:program=new x3dom.shader.NormalShader(gl);break;case x3dom.shader.TEXTURE_REFINEMENT:program=new x3dom.shader.TextureRefinementShader(gl);break;default:break;}
if(program)
this.shaders[shaderIdentifier]=x3dom.Utils.wrapProgram(gl,program,shaderIdentifier);else
x3dom.debug.logError("Couldn't create shader: "+shaderIdentifier);}
return this.shaders[shaderIdentifier];};x3dom.Cache.prototype.getDynamicShader=function(gl,viewarea,shape){var properties=x3dom.Utils.generateProperties(viewarea,shape);var shaderID=properties.id;if(this.shaders[shaderID]===undefined){var program=null;if(properties.CSHADER!=-1){program=new x3dom.shader.ComposedShader(gl,shape);}else{program=(x3dom.caps.MOBILE&&!properties.CSSHADER)?new x3dom.shader.DynamicMobileShader(gl,properties):new x3dom.shader.DynamicShader(gl,properties);}
this.shaders[shaderID]=x3dom.Utils.wrapProgram(gl,program,shaderID);}
return this.shaders[shaderID];};x3dom.Cache.prototype.getShaderByProperties=function(gl,shape,properties,pickMode){var shaderID=properties.id;if(pickMode!==undefined&&pickMode!==null){shaderID+=pickMode;}
if(this.shaders[shaderID]===undefined)
{var program=null;if(pickMode!==undefined&&pickMode!==null){program=new x3dom.shader.DynamicShaderPicking(gl,properties,pickMode);}
else if(properties.CSHADER!=-1){program=new x3dom.shader.ComposedShader(gl,shape);}
else{program=(x3dom.caps.MOBILE&&!properties.CSSHADER)?new x3dom.shader.DynamicMobileShader(gl,properties):new x3dom.shader.DynamicShader(gl,properties);}
this.shaders[shaderID]=x3dom.Utils.wrapProgram(gl,program,shaderID);}
return this.shaders[shaderID];};x3dom.Cache.prototype.getShadowRenderingShader=function(gl,shadowedLights){var ID="shadow";for(var i=0;i<shadowedLights.length;i++){if(x3dom.isa(shadowedLights[i],x3dom.nodeTypes.SpotLight))
ID+="S";else if(x3dom.isa(shadowedLights[i],x3dom.nodeTypes.PointLight))
ID+="P";else
ID+="D";}
if(this.shaders[ID]===undefined){var program=new x3dom.shader.ShadowRenderingShader(gl,shadowedLights);this.shaders[ID]=x3dom.Utils.wrapProgram(gl,program,ID);}
return this.shaders[ID];};x3dom.Cache.prototype.Release=function(gl){for(var texture in this.textures){gl.deleteTexture(this.textures[texture]);}
this.textures=[];for(var shaderId in this.shaders){var shader=this.shaders[shaderId];var glShaders=gl.getAttachedShaders(shader.program);for(var i=0;i<glShaders.length;++i){gl.detachShader(shader.program,glShaders[i]);gl.deleteShader(glShaders[i]);}
gl.deleteProgram(shader.program)}
this.shaders=[];};function startDashVideo(recurl,texturediv){var vars=function(){var vars={};var parts=window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,function(m,key,value){vars[key]=value;});return vars;},url=recurl,video,context,player;if(vars&&vars.hasOwnProperty("url")){url=vars.url;}
video=document.querySelector(texturediv);context=new Dash.di.DashContext();player=new MediaPlayer(context);player.startup();player.attachView(video);player.setAutoPlay(false);player.attachSource(url);}
x3dom.Texture=function(gl,doc,cache,node){this.gl=gl;this.doc=doc;this.cache=cache;this.node=node;this.samplerName="diffuseMap";this.type=gl.TEXTURE_2D;this.format=gl.RGBA;this.magFilter=gl.LINEAR;this.minFilter=gl.LINEAR;this.wrapS=gl.REPEAT;this.wrapT=gl.REPEAT;this.genMipMaps=false;this.texture=null;this.ready=false;this.dashtexture=false;var tex=this.node;var suffix="mpd";this.node._x3domTexture=this;if(x3dom.isa(tex,x3dom.nodeTypes.MovieTexture)){if(tex._vf.url[0].indexOf(suffix,tex._vf.url[0].length-suffix.length)!==-1){this.dashtexture=true;var js=document.getElementById("AdditionalDashVideoScript");if(!js){js=document.createElement("script");js.setAttribute("type","text/javascript");js.setAttribute("src",x3dom.Texture.dashVideoScriptFile);js.setAttribute("id","AdditionalDashVideoScript");js.onload=function(){var texObj;while((texObj=x3dom.Texture.loadDashVideos.pop())){x3dom.Texture.textNum++;texObj.update();}
js.ready=true;};document.getElementsByTagName('head')[0].appendChild(js);}
if(js.ready===true){x3dom.Texture.textNum++;this.update();}
else{x3dom.Texture.loadDashVideos.push(this);}}}
if(!this.dashtexture){this.update();}};x3dom.Texture.dashVideoScriptFile="dash.all.js";x3dom.Texture.loadDashVideos=[];x3dom.Texture.textNum=0;x3dom.Texture.clampFontSize=false;x3dom.Texture.prototype.update=function()
{if(x3dom.isa(this.node,x3dom.nodeTypes.Text))
{this.updateText();}
else
{this.updateTexture();}};x3dom.Texture.prototype.setPixel=function(x,y,pixel,update)
{var gl=this.gl;var pixels=new Uint8Array(pixel);gl.bindTexture(this.type,this.texture);gl.pixelStorei(gl.UNPACK_ALIGNMENT,1);gl.texSubImage2D(this.type,0,x,y,1,1,this.format,gl.UNSIGNED_BYTE,pixels);gl.bindTexture(this.type,null);if(update){this.doc.needRender=true;}};x3dom.Texture.prototype.updateTexture=function()
{var gl=this.gl;var doc=this.doc;var tex=this.node;this.samplerName=tex._type;if(x3dom.isa(tex,x3dom.nodeTypes.X3DEnvironmentTextureNode)){this.type=gl.TEXTURE_CUBE_MAP;}else{this.type=gl.TEXTURE_2D;}
if(x3dom.isa(tex,x3dom.nodeTypes.PixelTexture)){switch(tex._vf.image.comp)
{case 1:this.format=gl.LUMINANCE;break;case 2:this.format=gl.LUMINANCE_ALPHA;break;case 3:this.format=gl.RGB;break;case 4:this.format=gl.RGBA;break;}}else{this.format=gl.RGBA;}
if(tex._cf.textureProperties.node!==null){var texProp=tex._cf.textureProperties.node;this.wrapS=x3dom.Utils.boundaryModesDic(gl,texProp._vf.boundaryModeS);this.wrapT=x3dom.Utils.boundaryModesDic(gl,texProp._vf.boundaryModeT);this.minFilter=x3dom.Utils.minFilterDic(gl,texProp._vf.minificationFilter);this.magFilter=x3dom.Utils.magFilterDic(gl,texProp._vf.magnificationFilter);if(texProp._vf.generateMipMaps===true){this.genMipMaps=true;if(this.minFilter==gl.NEAREST){this.minFilter=gl.NEAREST_MIPMAP_NEAREST;}else if(this.minFilter==gl.LINEAR){this.minFilter=gl.LINEAR_MIPMAP_LINEAR;}
if(this.texture&&(this.texture.ready||this.texture.textureCubeReady)){gl.bindTexture(this.type,this.texture);gl.generateMipmap(this.type);gl.bindTexture(this.type,null);}}else{this.genMipMaps=false;if((this.minFilter==gl.LINEAR_MIPMAP_LINEAR)||(this.minFilter==gl.LINEAR_MIPMAP_NEAREST)){this.minFilter=gl.LINEAR;}else if((this.minFilter==gl.NEAREST_MIPMAP_LINEAR)||(this.minFilter==gl.NEAREST_MIPMAP_NEAREST)){this.minFilter=gl.NEAREST;}}}else{if(tex._vf.repeatS==false){this.wrapS=gl.CLAMP_TO_EDGE;}
else
{this.wrapS=gl.REPEAT;}
if(tex._vf.repeatT==false){this.wrapT=gl.CLAMP_TO_EDGE;}
else
{this.wrapT=gl.REPEAT;}
if(this.samplerName=="displacementMap"||this.samplerName=="multiDiffuseAlphaMap"||this.samplerName=="multiVisibilityMap"||this.samplerName=="multiEmissiveAmbientMap"||this.samplerName=="multiSpecularShininessMap")
{this.wrapS=gl.CLAMP_TO_EDGE;this.wrapT=gl.CLAMP_TO_EDGE;this.minFilter=gl.NEAREST;this.magFilter=gl.NEAREST;}}
var childTex=(tex._video&&tex._needPerFrameUpdate===true);if(tex._isCanvas&&tex._canvas)
{if(this.texture==null){this.texture=gl.createTexture()}
this.texture.width=tex._canvas.width;this.texture.height=tex._canvas.height;this.texture.ready=true;gl.bindTexture(this.type,this.texture);gl.texImage2D(this.type,0,this.format,this.format,gl.UNSIGNED_BYTE,tex._canvas);if(this.genMipMaps){gl.generateMipmap(this.type);}
gl.bindTexture(this.type,null);}
else if(x3dom.isa(tex,x3dom.nodeTypes.RenderedTexture))
{if(tex._webgl&&tex._webgl.fbo){this.texture=tex._webgl.fbo.tex;}
else{this.texture=null;x3dom.debug.logError("Try updating RenderedTexture without FBO initialized!");}
if(this.texture){this.texture.ready=true;}}
else if(x3dom.isa(tex,x3dom.nodeTypes.PixelTexture))
{if(this.texture==null){if(this.node._DEF){this.texture=this.cache.getTexture2DByDEF(gl,this.node._nameSpace,this.node._DEF);}else{this.texture=gl.createTexture();}}
this.texture.width=tex._vf.image.width;this.texture.height=tex._vf.image.height;this.texture.ready=true;var pixelArr=tex._vf.image.array;var pixelArrfont_size=tex._vf.image.width*tex._vf.image.height*tex._vf.image.comp;if(pixelArr.length<pixelArrfont_size)
{pixelArr=tex._vf.image.toGL();while(pixelArr.length<pixelArrfont_size){pixelArr.push(0);}}
var pixels=new Uint8Array(pixelArr);gl.bindTexture(this.type,this.texture);gl.pixelStorei(gl.UNPACK_ALIGNMENT,1);gl.texImage2D(this.type,0,this.format,tex._vf.image.width,tex._vf.image.height,0,this.format,gl.UNSIGNED_BYTE,pixels);if(this.genMipMaps){gl.generateMipmap(this.type);}
gl.bindTexture(this.type,null);}
else if(x3dom.isa(tex,x3dom.nodeTypes.MovieTexture)||childTex)
{var that=this;var p=document.getElementsByTagName('body')[0];if(this.texture==null){this.texture=gl.createTexture();}
if(this.dashtexture){var element_vid=document.createElement('div');element_vid.setAttribute('class','dash-video-player'+x3dom.Texture.textNum);tex._video=document.createElement('video');tex._video.setAttribute('preload','auto');tex._video.setAttribute('muted','muted');var scriptToRun=document.createElement('script');scriptToRun.setAttribute('type','text/javascript');scriptToRun.innerHTML='startDashVideo("'+tex._vf.url[0]+'",".dash-video-player'+x3dom.Texture.textNum+' video")';element_vid.appendChild(scriptToRun);element_vid.appendChild(tex._video);p.appendChild(element_vid);tex._video.style.visibility="hidden";tex._video.style.display="none";}
else{if(!childTex){tex._video=document.createElement('video');tex._video.setAttribute('preload','auto');tex._video.setAttribute('muted','muted');p.appendChild(tex._video);tex._video.style.visibility="hidden";tex._video.style.display="none";}
for(var i=0;i<tex._vf.url.length;i++){var videoUrl=tex._nameSpace.getURL(tex._vf.url[i]);x3dom.debug.logInfo('Adding video file: '+videoUrl);var src=document.createElement('source');src.setAttribute('src',videoUrl);tex._video.appendChild(src);}}
var updateMovie=function()
{gl.bindTexture(that.type,that.texture);gl.texImage2D(that.type,0,that.format,that.format,gl.UNSIGNED_BYTE,tex._video);if(that.genMipMaps){gl.generateMipmap(that.type);}
gl.bindTexture(that.type,null);that.texture.ready=true;doc.needRender=true;};var startVideo=function()
{tex._video.play();tex._intervalID=setInterval(updateMovie,16);};var videoDone=function()
{clearInterval(tex._intervalID);if(tex._vf.loop===true)
{tex._video.play();tex._intervalID=setInterval(updateMovie,16);}};tex._video.addEventListener("canplaythrough",startVideo,true);tex._video.addEventListener("ended",videoDone,true);}
else if(x3dom.isa(tex,x3dom.nodeTypes.X3DEnvironmentTextureNode))
{this.texture=this.cache.getTextureCube(gl,doc,tex.getTexUrl(),false,tex._vf.crossOrigin,tex._vf.scale,this.genMipMaps);}
else
{this.texture=this.cache.getTexture2D(gl,doc,tex._nameSpace.getURL(tex._vf.url[0]),false,tex._vf.crossOrigin,tex._vf.scale,this.genMipMaps);}};x3dom.Texture.prototype.updateText=function()
{var gl=this.gl;this.wrapS=gl.CLAMP_TO_EDGE;this.wrapT=gl.CLAMP_TO_EDGE;var fontStyleNode=this.node._cf.fontStyle.node;var font_family='serif';var font_style='normal';var font_justify='left';var font_size=1.0;var font_spacing=1.0;var font_horizontal=true;var font_language="";if(fontStyleNode!==null)
{var fonts=fontStyleNode._vf.family.toString();fonts=fonts.trim().replace(/\'/g,'').replace(/\,/,' ');fonts=fonts.split(" ");font_family=Array.map(fonts,function(s){if(s=='SANS'){return'sans-serif';}
else if(s=='SERIF'){return'serif';}
else if(s=='TYPEWRITER'){return'monospace';}
else{return''+s+'';}}).join(",");font_style=fontStyleNode._vf.style.toString().replace(/\'/g,'');switch(font_style.toUpperCase()){case'PLAIN':font_style='normal';break;case'BOLD':font_style='bold';break;case'ITALIC':font_style='italic';break;case'BOLDITALIC':font_style='italic bold';break;default:font_style='normal';}
var leftToRight=fontStyleNode._vf.leftToRight?'ltr':'rtl';var topToBottom=fontStyleNode._vf.topToBottom;font_justify=fontStyleNode._vf.justify[0].toString().replace(/\'/g,'');switch(font_justify.toUpperCase()){case'BEGIN':font_justify='left';break;case'END':font_justify='right';break;case'FIRST':font_justify='left';break;case'MIDDLE':font_justify='center';break;default:font_justify='left';break;}
font_size=fontStyleNode._vf.size;font_spacing=fontStyleNode._vf.spacing;font_horizontal=fontStyleNode._vf.horizontal;font_language=fontStyleNode._vf.language;if(font_size<0.1)font_size=0.1;if(x3dom.Texture.clampFontSize&&font_size>2.3)
{font_size=2.3;}}
var textX,textY;var paragraph=this.node._vf.string;var text_canvas=document.createElement('canvas');text_canvas.dir=leftToRight;var textHeight=font_size*42;var textAlignment=font_justify;document.body.appendChild(text_canvas);var text_ctx=text_canvas.getContext('2d');text_ctx.font=font_style+" "+textHeight+"px "+font_family;var maxWidth=text_ctx.measureText(paragraph[0]).width;var i;for(i=1;i<paragraph.length;i++){if(text_ctx.measureText(paragraph[i]).width>maxWidth)
maxWidth=text_ctx.measureText(paragraph[i]).width;}
var canvas_scale=1.1;text_canvas.width=maxWidth*canvas_scale;text_canvas.height=textHeight*paragraph.length*canvas_scale;switch(textAlignment){case"left":textX=0;break;case"center":textX=text_canvas.width/2;break;case"right":textX=text_canvas.width;break;}
var txtW=text_canvas.width;var txtH=text_canvas.height;text_ctx.fillStyle='rgba(0,0,0,0)';text_ctx.fillRect(0,0,text_ctx.canvas.width,text_ctx.canvas.height);text_ctx.fillStyle='white';text_ctx.lineWidth=2.5;text_ctx.strokeStyle='grey';text_ctx.textBaseline='top';text_ctx.font=font_style+" "+textHeight+"px "+font_family;text_ctx.textAlign=textAlignment;for(i=0;i<paragraph.length;i++){textY=i*textHeight;text_ctx.fillText(paragraph[i],textX,textY);}
if(this.texture===null)
{this.texture=gl.createTexture();}
gl.bindTexture(this.type,this.texture);gl.texImage2D(this.type,0,this.format,this.format,gl.UNSIGNED_BYTE,text_canvas);gl.bindTexture(this.type,null);document.body.removeChild(text_canvas);var w=txtW/100.0;var h=txtH/100.0;this.node._mesh._positions[0]=[-w,-h+.4,0,w,-h+.4,0,w,h+.4,0,-w,h+.4,0];this.node.invalidateVolume();Array.forEach(this.node._parentNodes,function(node){node.setAllDirty();});};x3dom.X3DDocument=function(canvas,ctx,settings){this.canvas=canvas;this.ctx=ctx;this.properties=settings;this.needRender=true;this._x3dElem=null;this._scene=null;this._viewarea=null;this.downloadCount=0;this._nodeBag={timer:[],lights:[],clipPlanes:[],followers:[],trans:[],renderTextures:[],viewarea:[],affectedPointingSensors:[]};this.onload=function(){};this.onerror=function(){};};x3dom.X3DDocument.prototype.load=function(uri,sceneElemPos){var uri_docs={};var queued_uris=[uri];var doc=this;function next_step(){if(queued_uris.length===0){doc._setup(uri_docs[uri],uri_docs,sceneElemPos);doc.onload();return;}
var next_uri=queued_uris.shift();if(x3dom.isX3DElement(next_uri)&&(next_uri.localName.toLowerCase()==='x3d'||next_uri.localName.toLowerCase()==='websg'))
{uri_docs[next_uri]=next_uri;doc._x3dElem=next_uri;next_step();}}
next_step();};x3dom.findScene=function(x3dElem){var sceneElems=[];for(var i=0;i<x3dElem.childNodes.length;i++){var sceneElem=x3dElem.childNodes[i];if(sceneElem&&sceneElem.localName&&sceneElem.localName.toLowerCase()==="scene"){sceneElems.push(sceneElem);}}
if(sceneElems.length>1){x3dom.debug.logError("X3D element has more than one Scene child (has "+
x3dElem.childNodes.length+").");}
else{return sceneElems[0];}
return null;};x3dom.X3DDocument.prototype._setup=function(sceneDoc,uriDocs,sceneElemPos){var doc=this;function cleanNodeBag(bag,node){for(var i=0,n=bag.length;i<n;i++){if(bag[i]===node){bag.splice(i,1);break;}}}
function removeX3DOMBackendGraph(domNode){var children=domNode.childNodes;for(var i=0,n=children.length;i<n;i++){removeX3DOMBackendGraph(children[i]);}
if(domNode._x3domNode){var node=domNode._x3domNode;var nameSpace=node._nameSpace;if(x3dom.isa(node,x3dom.nodeTypes.X3DShapeNode)){if(node._cleanupGLObjects){node._cleanupGLObjects(true);}
if(x3dom.nodeTypes.Shape.idMap.nodeID[node._objectID]){delete x3dom.nodeTypes.Shape.idMap.nodeID[node._objectID];}}
else if(x3dom.isa(node,x3dom.nodeTypes.TimeSensor)){cleanNodeBag(doc._nodeBag.timer,node);}
else if(x3dom.isa(node,x3dom.nodeTypes.X3DLightNode)){cleanNodeBag(doc._nodeBag.lights,node);}
else if(x3dom.isa(node,x3dom.nodeTypes.X3DFollowerNode)){cleanNodeBag(doc._nodeBag.followers,node);}
else if(x3dom.isa(node,x3dom.nodeTypes.X3DTransformNode)){cleanNodeBag(doc._nodeBag.trans,node);}
else if(x3dom.isa(node,x3dom.nodeTypes.RenderedTexture)){cleanNodeBag(doc._nodeBag.renderTextures,node);if(node._cleanupGLObjects){node._cleanupGLObjects();}}
else if(x3dom.isa(node,x3dom.nodeTypes.X3DPointingDeviceSensorNode)){cleanNodeBag(doc._nodeBag.affectedPointingSensors,node);}
else if(x3dom.isa(node,x3dom.nodeTypes.Texture)){node.shutdown();}
else if(x3dom.isa(node,x3dom.nodeTypes.AudioClip)){node.shutdown();}
else if(x3dom.isa(node,x3dom.nodeTypes.X3DBindableNode)){var stack=node._stack;if(stack){node.bind(false);cleanNodeBag(stack._bindBag,node);}
if(node._cleanupGLObjects){node._cleanupGLObjects();}}
else if(x3dom.isa(node,x3dom.nodeTypes.Scene)){if(node._webgl){node._webgl=null;}}
if(nameSpace&&!domNode.getAttribute('use'))
{nameSpace.removeNode(node._DEF);}
node._xmlNode=null;delete domNode._x3domNode;}}
var domEventListener={onAttrModified:function(e){if('_x3domNode'in e.target){var attrToString={1:"MODIFICATION",2:"ADDITION",3:"REMOVAL"};e.target._x3domNode.updateField(e.attrName,e.newValue);doc.needRender=true;}},onNodeRemoved:function(e){var domNode=e.target;if(!domNode)
return;if('_x3domNode'in domNode.parentNode&&'_x3domNode'in domNode){var parent=domNode.parentNode._x3domNode;var child=domNode._x3domNode;if(parent&&child){parent.removeChild(child);parent.nodeChanged();removeX3DOMBackendGraph(domNode);if(doc._viewarea&&doc._viewarea._scene){doc._viewarea._scene.nodeChanged();doc._viewarea._scene.updateVolume();doc.needRender=true;}}}
else if(domNode.localName&&domNode.localName.toUpperCase()=="ROUTE"&&domNode._nodeNameSpace){var fromNode=domNode._nodeNameSpace.defMap[domNode.getAttribute('fromNode')];var toNode=domNode._nodeNameSpace.defMap[domNode.getAttribute('toNode')];if(fromNode&&toNode){fromNode.removeRoute(domNode.getAttribute('fromField'),toNode,domNode.getAttribute('toField'));}}
else if(domNode.localName&&domNode.localName.toUpperCase()=="X3D"){var runtime=domNode.runtime;if(runtime&&runtime.canvas&&runtime.canvas.doc&&runtime.canvas.doc._scene){var sceneNode=runtime.canvas.doc._scene._xmlNode;removeX3DOMBackendGraph(sceneNode);for(var i=0;i<x3dom.canvases.length;i++){if(x3dom.canvases[i]===runtime.canvas){x3dom.canvases[i].doc.shutdown(x3dom.canvases[i].gl);x3dom.canvases.splice(i,1);break;}}
runtime.canvas.doc._scene=null;runtime.canvas.doc._viewarea=null;runtime.canvas.doc=null;runtime.canvas=null;runtime=null;domNode.context=null;domNode.runtime=null;}}},onNodeInserted:function(e){var child=e.target;var parentNode=child.parentNode;if('_x3domNode'in parentNode){if(parentNode.tagName&&parentNode.tagName.toLowerCase()=='inline'||parentNode.tagName.toLowerCase()=='multipart'){}
else{var parent=parentNode._x3domNode;if(parent&&parent._nameSpace&&(child instanceof Element)){if(x3dom.caps.DOMNodeInsertedEvent_perSubtree)
{removeX3DOMBackendGraph(child);}
var newNode=parent._nameSpace.setupTree(child);parent.addChild(newNode,child.getAttribute("containerField"));parent.nodeChanged();var grandParentNode=parentNode.parentNode;if(grandParentNode&&grandParentNode._x3domNode)
grandParentNode._x3domNode.nodeChanged();if(doc._viewarea&&doc._viewarea._scene){doc._viewarea._scene.nodeChanged();doc._viewarea._scene.updateVolume();doc.needRender=true;}}
else{x3dom.debug.logWarning("No _nameSpace in onNodeInserted");}}}}};sceneDoc.addEventListener('DOMNodeRemoved',domEventListener.onNodeRemoved,true);sceneDoc.addEventListener('DOMNodeInserted',domEventListener.onNodeInserted,true);if((x3dom.userAgentFeature.supportsDOMAttrModified===true)){sceneDoc.addEventListener('DOMAttrModified',domEventListener.onAttrModified,true);}
var sceneElem=x3dom.findScene(sceneDoc);this._bindableBag=new x3dom.BindableBag(this);var nameSpace=new x3dom.NodeNameSpace("scene",doc);var scene=nameSpace.setupTree(sceneElem);this._scene=scene;this._bindableBag.setRefNode(scene);this._viewarea=new x3dom.Viewarea(this,scene);this._viewarea._width=this.canvas.width;this._viewarea._height=this.canvas.height;};x3dom.X3DDocument.prototype.advanceTime=function(t){var i=0;if(this._nodeBag.timer.length){for(i=0;i<this._nodeBag.timer.length;i++)
{this.needRender|=this._nodeBag.timer[i].tick(t);}}
if(this._nodeBag.followers.length){for(i=0;i<this._nodeBag.followers.length;i++)
{this.needRender|=this._nodeBag.followers[i].tick(t);}}
if(this._nodeBag.trans.length){for(i=0;i<this._nodeBag.trans.length;i++)
{this.needRender|=this._nodeBag.trans[i].tick(t);}}
if(this._nodeBag.viewarea.length){for(i=0;i<this._nodeBag.viewarea.length;i++)
{this.needRender|=this._nodeBag.viewarea[i].tick(t);}}};x3dom.X3DDocument.prototype.render=function(ctx){if(!ctx||!this._viewarea){return;}
ctx.renderScene(this._viewarea);};x3dom.X3DDocument.prototype.onPick=function(ctx,x,y){if(!ctx||!this._viewarea){return;}
ctx.pickValue(this._viewarea,x,y,1);};x3dom.X3DDocument.prototype.onPickRect=function(ctx,x1,y1,x2,y2){if(!ctx||!this._viewarea){return[];}
return ctx.pickRect(this._viewarea,x1,y1,x2,y2);};x3dom.X3DDocument.prototype.onMove=function(ctx,x,y,buttonState){if(!ctx||!this._viewarea){return;}
if(this._viewarea._scene._vf.doPickPass)
ctx.pickValue(this._viewarea,x,y,buttonState);this._viewarea.onMove(x,y,buttonState);};x3dom.X3DDocument.prototype.onMoveView=function(ctx,translation,rotation){if(!ctx||!this._viewarea){return;}
this._viewarea.onMoveView(translation,rotation);};x3dom.X3DDocument.prototype.onDrag=function(ctx,x,y,buttonState){if(!ctx||!this._viewarea){return;}
if(this._viewarea._scene._vf.doPickPass)
ctx.pickValue(this._viewarea,x,y,buttonState);this._viewarea.onDrag(x,y,buttonState);};x3dom.X3DDocument.prototype.onWheel=function(ctx,x,y,originalY){if(!ctx||!this._viewarea){return;}
if(this._viewarea._scene._vf.doPickPass)
ctx.pickValue(this._viewarea,x,originalY,0);this._viewarea.onDrag(x,y,2);};x3dom.X3DDocument.prototype.onMousePress=function(ctx,x,y,buttonState){if(!ctx||!this._viewarea){return;}
this._viewarea._scene.updateVolume();ctx.pickValue(this._viewarea,x,y,buttonState);this._viewarea.onMousePress(x,y,buttonState);};x3dom.X3DDocument.prototype.onMouseRelease=function(ctx,x,y,buttonState,prevButton){if(!ctx||!this._viewarea){return;}
var button=(prevButton<<8)|buttonState;ctx.pickValue(this._viewarea,x,y,button);this._viewarea.onMouseRelease(x,y,buttonState,prevButton);};x3dom.X3DDocument.prototype.onMouseOver=function(ctx,x,y,buttonState){if(!ctx||!this._viewarea){return;}
ctx.pickValue(this._viewarea,x,y,buttonState);this._viewarea.onMouseOver(x,y,buttonState);};x3dom.X3DDocument.prototype.onMouseOut=function(ctx,x,y,buttonState){if(!ctx||!this._viewarea){return;}
ctx.pickValue(this._viewarea,x,y,buttonState);this._viewarea.onMouseOut(x,y,buttonState);};x3dom.X3DDocument.prototype.onDoubleClick=function(ctx,x,y){if(!ctx||!this._viewarea){return;}
this._viewarea.onDoubleClick(x,y);};x3dom.X3DDocument.prototype.onKeyDown=function(keyCode)
{switch(keyCode){case 37:this._viewarea.strafeLeft();break;case 38:this._viewarea.moveFwd();break;case 39:this._viewarea.strafeRight();break;case 40:this._viewarea.moveBwd();break;default:}};x3dom.X3DDocument.prototype.onKeyUp=function(keyCode)
{var stack=null;switch(keyCode){case 13:x3dom.toggleFullScreen();break;case 27:window.history.back();break;case 33:stack=this._scene.getViewpoint()._stack;if(stack){stack.switchTo('next');}
else{x3dom.debug.logError('No valid ViewBindable stack.');}
break;case 34:stack=this._scene.getViewpoint()._stack;if(stack){stack.switchTo('prev');}
else{x3dom.debug.logError('No valid ViewBindable stack.');}
break;case 37:break;case 38:break;case 39:break;case 40:break;default:}};x3dom.X3DDocument.prototype.onKeyPress=function(charCode)
{var nav=this._scene.getNavigationInfo();var env=this._scene.getEnvironment();switch(charCode)
{case 32:var states=this.canvas.parent.stateViewer;if(states){states.display();}
x3dom.debug.logInfo("a: show all | d: show helper buffers | s: small feature culling | t: light view | "+"m: toggle render mode | c: frustum culling | p: intersect type | r: reset view | \n"+"e: examine mode | f: fly mode | y: freefly mode | w: walk mode | h: helicopter mode | "+"l: lookAt mode | o: lookaround | g: game mode | n: turntable | u: upright position | \n"+"v: print viewpoint info | pageUp: next view | pageDown: prev. view | "+"+: increase speed | -: decrease speed ");break;case 43:nav._vf.speed=2*nav._vf.speed;x3dom.debug.logInfo("Changed navigation speed to "+nav._vf.speed);break;case 45:nav._vf.speed=0.5*nav._vf.speed;x3dom.debug.logInfo("Changed navigation speed to "+nav._vf.speed);break;case 51:x3dom.nodeTypes.PopGeometry.ErrorToleranceFactor+=0.5;x3dom.debug.logInfo("Changed POP error tolerance to "+x3dom.nodeTypes.PopGeometry.ErrorToleranceFactor);break;case 52:x3dom.nodeTypes.PopGeometry.ErrorToleranceFactor-=0.5;x3dom.debug.logInfo("Changed POP error tolerance to "+x3dom.nodeTypes.PopGeometry.ErrorToleranceFactor);break;case 54:nav._vf.typeParams[1]+=1.0;nav._heliUpdated=false;x3dom.debug.logInfo("Changed helicopter height to "+nav._vf.typeParams[1]);break;case 55:nav._vf.typeParams[1]-=1.0;nav._heliUpdated=false;x3dom.debug.logInfo("Changed helicopter height to "+nav._vf.typeParams[1]);break;case 56:nav._vf.typeParams[0]-=0.02;nav._heliUpdated=false;x3dom.debug.logInfo("Changed helicopter angle to "+nav._vf.typeParams[0]);break;case 57:nav._vf.typeParams[0]+=0.02;nav._heliUpdated=false;x3dom.debug.logInfo("Changed helicopter angle to "+nav._vf.typeParams[0]);break;case 97:this._viewarea.showAll();break;case 99:env._vf.frustumCulling=!env._vf.frustumCulling;x3dom.debug.logInfo("Viewfrustum culling "+(env._vf.frustumCulling?"on":"off"));break;case 100:if(this._viewarea._visDbgBuf===undefined){this._viewarea._visDbgBuf=(this._x3dElem.getAttribute("showLog")==='true');}
this._viewarea._visDbgBuf=!this._viewarea._visDbgBuf;x3dom.debug.logContainer.style.display=(this._viewarea._visDbgBuf==true)?"block":"none";break;case 101:nav.setType("examine",this._viewarea);break;case 102:nav.setType("fly",this._viewarea);break;case 103:nav.setType("game",this._viewarea);break;case 104:nav.setType("helicopter",this._viewarea);break;case 105:this._viewarea.fit(this._scene._lastMin,this._scene._lastMax);break;case 108:nav.setType("lookat",this._viewarea);break;case 109:this._viewarea._points=++this._viewarea._points%3;break;case 110:nav.setType("turntable",this._viewarea);break;case 111:nav.setType("lookaround",this._viewarea);break;case 112:switch(this._scene._vf.pickMode.toLowerCase())
{case"idbuf":this._scene._vf.pickMode="color";break;case"color":this._scene._vf.pickMode="texCoord";break;case"texcoord":this._scene._vf.pickMode="box";break;default:this._scene._vf.pickMode="idBuf";break;}
x3dom.debug.logInfo("Switch pickMode to '"+this._scene._vf.pickMode+"'.");break;case 114:this._viewarea.resetView();break;case 115:env._vf.smallFeatureCulling=!env._vf.smallFeatureCulling;x3dom.debug.logInfo("Small feature culling "+(env._vf.smallFeatureCulling?"on":"off"));break;case 116:if(this._nodeBag.lights.length>0){this._viewarea.animateTo(this._viewarea.getLightMatrix()[0],this._scene.getViewpoint());}
break;case 117:this._viewarea.uprightView();break;case 118:var that=this;(function(){var viewpoint=that._viewarea._scene.getViewpoint();var mat_view=that._viewarea.getViewMatrix().inverse();var rotation=new x3dom.fields.Quaternion(0,0,1,0);rotation.setValue(mat_view);var rot=rotation.toAxisAngle();var translation=mat_view.e3();x3dom.debug.logInfo('\n&lt;Viewpoint position="'+translation.x.toFixed(5)+' '
+translation.y.toFixed(5)+' '+translation.z.toFixed(5)+'" '+'orientation="'+rot[0].x.toFixed(5)+' '+rot[0].y.toFixed(5)+' '
+rot[0].z.toFixed(5)+' '+rot[1].toFixed(5)+'" \n\t'+'zNear="'+viewpoint.getNear().toFixed(5)+'" '+'zFar="'+viewpoint.getFar().toFixed(5)+'" '+'description="'+viewpoint._vf.description+'"&gt;'+'&lt;/Viewpoint&gt;');})();break;case 119:nav.setType("walk",this._viewarea);break;case 121:nav.setType("freefly",this._viewarea);break;default:}};x3dom.X3DDocument.prototype.shutdown=function(ctx)
{if(!ctx){return;}
ctx.shutdown(this._viewarea);};x3dom.MatrixMixer=function(beginTime,endTime){if(arguments.length===0){this._beginTime=0;this._endTime=1;}
else{this._beginTime=beginTime;this._endTime=endTime;}
this._beginMat=x3dom.fields.SFMatrix4f.identity();this._beginInvMat=x3dom.fields.SFMatrix4f.identity();this._beginLogMat=x3dom.fields.SFMatrix4f.identity();this._endMat=x3dom.fields.SFMatrix4f.identity();this._endLogMat=x3dom.fields.SFMatrix4f.identity();};x3dom.MatrixMixer.prototype.calcFraction=function(time){var fraction=(time-this._beginTime)/(this._endTime-this._beginTime);return(Math.sin((fraction*Math.PI)-(Math.PI/2))+1)/2.0;};x3dom.MatrixMixer.prototype.setBeginMatrix=function(mat){this._beginMat.setValues(mat);this._beginInvMat=mat.inverse();this._beginLogMat=x3dom.fields.SFMatrix4f.zeroMatrix();};x3dom.MatrixMixer.prototype.setEndMatrix=function(mat){this._endMat.setValues(mat);this._endLogMat=mat.mult(this._beginInvMat).log();this._logDiffMat=this._endLogMat.addScaled(this._beginLogMat,-1);};x3dom.MatrixMixer.prototype.mix=function(time){var mat=null;if(time<=this._beginTime)
{mat=x3dom.fields.SFMatrix4f.copy(this._beginLogMat);}
else
{if(time>=this._endTime)
{mat=x3dom.fields.SFMatrix4f.copy(this._endLogMat);}
else
{var fraction=this.calcFraction(time);mat=this._logDiffMat.multiply(fraction).add(this._beginLogMat);}}
return mat.exp().mult(this._beginMat);};x3dom.InputTypes={NAVIGATION:1,INTERACTION:2};x3dom.Viewarea=function(document,scene){this._doc=document;this._scene=scene;document._nodeBag.viewarea.push(this);this._pickingInfo={pickPos:new x3dom.fields.SFVec3f(0,0,0),pickNorm:new x3dom.fields.SFVec3f(0,0,1),pickObj:null,firstObj:null,lastObj:null,lastClickObj:null,shadowObjectId:-1};this._currentInputType=x3dom.InputTypes.NAVIGATION;this._rotMat=x3dom.fields.SFMatrix4f.identity();this._transMat=x3dom.fields.SFMatrix4f.identity();this._movement=new x3dom.fields.SFVec3f(0,0,0);this._needNavigationMatrixUpdate=true;this._deltaT=0;this._flyMat=null;this._pitch=0;this._yaw=0;this._eyePos=new x3dom.fields.SFVec3f(0,0,0);this._width=400;this._height=300;this._dx=0;this._dy=0;this._lastX=-1;this._lastY=-1;this._pressX=-1;this._pressY=-1;this._lastButton=0;this._points=0;this._numRenderedNodes=0;this._pick=new x3dom.fields.SFVec3f(0,0,0);this._pickNorm=new x3dom.fields.SFVec3f(0,0,1);this._isAnimating=false;this._isMoving=false;this._lastTS=0;this._mixer=new x3dom.MatrixMixer();this.arc=null;};x3dom.Viewarea.prototype.tick=function(timeStamp)
{var needMixAnim=false;var env=this._scene.getEnvironment();if(env._vf.enableARC&&this.arc==null)
{this.arc=new x3dom.arc.AdaptiveRenderControl(this._scene);}
if(this._mixer._beginTime>0)
{needMixAnim=true;if(timeStamp>=this._mixer._beginTime)
{if(timeStamp<=this._mixer._endTime)
{var mat=this._mixer.mix(timeStamp);this._scene.getViewpoint().setView(mat);}
else{this._mixer._beginTime=0;this._mixer._endTime=0;this._scene.getViewpoint().setView(this._mixer._endMat);}}
else{this._mixer._beginTime=0;this._mixer._endTime=0;this._scene.getViewpoint().setView(this._mixer._beginMat);}}
var needNavAnim=this.navigateTo(timeStamp);var lastIsAnimating=this._isAnimating;this._lastTS=timeStamp;this._isAnimating=(needMixAnim||needNavAnim);if(this.arc!=null)
{this.arc.update(this.isMovingOrAnimating()?1:0,this._doc._x3dElem.runtime.getFPS());}
return(this._isAnimating||lastIsAnimating);};x3dom.Viewarea.prototype.isMoving=function()
{return this._isMoving;};x3dom.Viewarea.prototype.isAnimating=function()
{return this._isAnimating;};x3dom.Viewarea.prototype.isMovingOrAnimating=function()
{return(this._isMoving||this._isAnimating);};x3dom.Viewarea.prototype.navigateTo=function(timeStamp)
{var navi=this._scene.getNavigationInfo();var navType=navi.getType();var needNavAnim=(this._currentInputType==x3dom.InputTypes.NAVIGATION)&&(navType==="game"||(this._lastButton>0&&(navType.indexOf("fly")>=0||navType==="walk"||navType==="helicopter"||navType.substr(0,5)==="looka")));this._deltaT=timeStamp-this._lastTS;var removeZeroMargin=function(val,offset){if(val>0){if(val<=offset){return 0;}else{return val-offset;}}else if(val<=0){if(val>=-offset){return 0;}else{return val+offset;}}};var humanizeDiff=function(scale,diff){return((diff<0)?-1:1)*Math.pow(scale*Math.abs(diff),1.65);};if(needNavAnim)
{var avatarRadius=0.25;var avatarHeight=1.6;var avatarKnee=0.75;if(navi._vf.avatarSize.length>2){avatarRadius=navi._vf.avatarSize[0];avatarHeight=navi._vf.avatarSize[1];avatarKnee=navi._vf.avatarSize[2];}
var currViewMat=this.getViewMatrix();var dist=0;var screenSize=Math.min(this._width,this._height);var rdeltaX=removeZeroMargin((this._pressX-this._lastX)/screenSize,0.01);var rdeltaY=removeZeroMargin((this._pressY-this._lastY)/screenSize,0.01);var userXdiff=humanizeDiff(1,rdeltaX);var userYdiff=humanizeDiff(1,rdeltaY);var step=(this._lastButton&2)?-1:1;step*=(this._deltaT*navi._vf.speed);var userXstep=this._deltaT*navi._vf.speed*userXdiff;var userYstep=this._deltaT*navi._vf.speed*userYdiff;var phi=Math.PI*this._deltaT*userXdiff;var theta=Math.PI*this._deltaT*userYdiff;if(this._needNavigationMatrixUpdate===true)
{this._needNavigationMatrixUpdate=false;this._rotMat=x3dom.fields.SFMatrix4f.identity();this._transMat=x3dom.fields.SFMatrix4f.identity();this._movement=new x3dom.fields.SFVec3f(0,0,0);var angleX=0;var angleY=Math.asin(currViewMat._02);var C=Math.cos(angleY);if(Math.abs(C)>0.0001){angleX=Math.atan2(-currViewMat._12/C,currViewMat._22/C);}
this._flyMat=currViewMat.inverse();this._from=this._flyMat.e3();this._at=this._from.subtract(this._flyMat.e2());if(navType==="helicopter")
this._at.y=this._from.y;if(navType.substr(0,5)==="looka")
{this._up=this._flyMat.e1();}
else
{if(typeof this._up=='undefined')
{this._up=this._flyMat.e1();}}
this._pitch=angleX*180/Math.PI;this._yaw=angleY*180/Math.PI;this._eyePos=this._from.negate();}
var tmpAt=null,tmpUp=null,tmpMat=null;var q,temp,fin;var lv,sv,up;if(navType==="game")
{this._pitch+=this._dy;this._yaw+=this._dx;if(this._pitch>=89)this._pitch=89;if(this._pitch<=-89)this._pitch=-89;if(this._yaw>=360)this._yaw-=360;if(this._yaw<0)this._yaw=360+this._yaw;this._dx=0;this._dy=0;var xMat=x3dom.fields.SFMatrix4f.rotationX(this._pitch/180*Math.PI);var yMat=x3dom.fields.SFMatrix4f.rotationY(this._yaw/180*Math.PI);var fPos=x3dom.fields.SFMatrix4f.translation(this._eyePos);this._flyMat=xMat.mult(yMat).mult(fPos);var flyMat=this._flyMat.inverse();var tmpFrom=flyMat.e3();tmpUp=new x3dom.fields.SFVec3f(0,-1,0);tmpAt=tmpFrom.add(tmpUp);tmpUp=flyMat.e0().cross(tmpUp).normalize();tmpMat=x3dom.fields.SFMatrix4f.lookAt(tmpFrom,tmpAt,tmpUp);tmpMat=tmpMat.inverse();this._scene._nameSpace.doc.ctx.pickValue(this,this._width/2,this._height/2,this._lastButton,tmpMat,this.getProjectionMatrix().mult(tmpMat));if(this._pickingInfo.pickObj)
{dist=this._pickingInfo.pickPos.subtract(tmpFrom).length();tmpFrom.y+=(avatarHeight-dist);flyMat.setTranslate(tmpFrom);this._eyePos=flyMat.e3().negate();this._flyMat=flyMat.inverse();this._pickingInfo.pickObj=null;}
this._scene.getViewpoint().setView(this._flyMat);return needNavAnim;}
else if(navType==="helicopter"){var typeParams=navi.getTypeParams();if(this._lastButton&2)
{var stepUp=200*userYstep;typeParams[1]+=stepUp;navi.setTypeParams(typeParams);}
if(this._lastButton&1){step=300*userYstep;}
else{step=0;}
theta=typeParams[0];this._from.y=typeParams[1];this._at.y=this._from.y;q=x3dom.fields.Quaternion.axisAngle(this._up,phi);temp=q.toMatrix();fin=x3dom.fields.SFMatrix4f.translation(this._from);fin=fin.mult(temp);temp=x3dom.fields.SFMatrix4f.translation(this._from.negate());fin=fin.mult(temp);this._at=fin.multMatrixPnt(this._at);lv=this._at.subtract(this._from).normalize();sv=lv.cross(this._up).normalize();up=sv.cross(lv).normalize();lv=lv.multiply(step);this._from=this._from.add(lv);this._at=this._at.add(lv);q=x3dom.fields.Quaternion.axisAngle(sv,theta);temp=q.toMatrix();fin=x3dom.fields.SFMatrix4f.translation(this._from);fin=fin.mult(temp);temp=x3dom.fields.SFMatrix4f.translation(this._from.negate());fin=fin.mult(temp);var at=fin.multMatrixPnt(this._at);this._flyMat=x3dom.fields.SFMatrix4f.lookAt(this._from,at,up);this._scene.getViewpoint().setView(this._flyMat.inverse());return needNavAnim;}
q=x3dom.fields.Quaternion.axisAngle(this._up,phi);temp=q.toMatrix();fin=x3dom.fields.SFMatrix4f.translation(this._from);fin=fin.mult(temp);temp=x3dom.fields.SFMatrix4f.translation(this._from.negate());fin=fin.mult(temp);this._at=fin.multMatrixPnt(this._at);lv=this._at.subtract(this._from).normalize();sv=lv.cross(this._up).normalize();up=sv.cross(lv).normalize();q=x3dom.fields.Quaternion.axisAngle(sv,theta);temp=q.toMatrix();fin=x3dom.fields.SFMatrix4f.translation(this._from);fin=fin.mult(temp);temp=x3dom.fields.SFMatrix4f.translation(this._from.negate());fin=fin.mult(temp);this._at=fin.multMatrixPnt(this._at);if(navType.substr(0,5)!=="looka")
{var currProjMat=this.getProjectionMatrix();if(navType!=="freefly"){if(step<0){tmpMat=new x3dom.fields.SFMatrix4f();tmpMat.setValue(this._last_mat_view.e0(),this._last_mat_view.e1(),this._last_mat_view.e2().negate(),this._last_mat_view.e3());this._scene._nameSpace.doc.ctx.pickValue(this,this._width/2,this._height/2,this._lastButton,tmpMat,currProjMat.mult(tmpMat));}
else{this._scene._nameSpace.doc.ctx.pickValue(this,this._width/2,this._height/2,this._lastButton);}
if(this._pickingInfo.pickObj)
{dist=this._pickingInfo.pickPos.subtract(this._from).length();if(dist<=avatarRadius){step=0;}}}
lv=this._at.subtract(this._from).normalize().multiply(step);this._at=this._at.add(lv);this._from=this._from.add(lv);if(navType==="walk")
{tmpAt=this._from.addScaled(up,-1.0);tmpUp=sv.cross(up.negate()).normalize();tmpMat=x3dom.fields.SFMatrix4f.lookAt(this._from,tmpAt,tmpUp);tmpMat=tmpMat.inverse();this._scene._nameSpace.doc.ctx.pickValue(this,this._width/2,this._height/2,this._lastButton,tmpMat,currProjMat.mult(tmpMat));if(this._pickingInfo.pickObj)
{dist=this._pickingInfo.pickPos.subtract(this._from).length();this._at=this._at.add(up.multiply(avatarHeight-dist));this._from=this._from.add(up.multiply(avatarHeight-dist));}}
this._pickingInfo.pickObj=null;}
this._flyMat=x3dom.fields.SFMatrix4f.lookAt(this._from,this._at,up);this._scene.getViewpoint().setView(this._flyMat.inverse());}
return needNavAnim;};x3dom.Viewarea.prototype.moveFwd=function()
{var navi=this._scene.getNavigationInfo();if(navi.getType()==="game")
{var avatarRadius=0.25;var avatarHeight=1.6;if(navi._vf.avatarSize.length>2){avatarRadius=navi._vf.avatarSize[0];avatarHeight=navi._vf.avatarSize[1];}
var speed=5*this._deltaT*navi._vf.speed;var yRotRad=(this._yaw/180*Math.PI);var xRotRad=(this._pitch/180*Math.PI);var dist=0;var fMat=this._flyMat.inverse();this._scene._nameSpace.doc.ctx.pickValue(this,this._width/2,this._height/2,this._lastButton);if(this._pickingInfo.pickObj)
{dist=this._pickingInfo.pickPos.subtract(fMat.e3()).length();if(dist<=2*avatarRadius){}
else{this._eyePos.x-=Math.sin(yRotRad)*speed;this._eyePos.z+=Math.cos(yRotRad)*speed;this._eyePos.y+=Math.sin(xRotRad)*speed;}}}};x3dom.Viewarea.prototype.moveBwd=function()
{var navi=this._scene.getNavigationInfo();if(navi.getType()==="game")
{var speed=5*this._deltaT*navi._vf.speed;var yRotRad=(this._yaw/180*Math.PI);var xRotRad=(this._pitch/180*Math.PI);this._eyePos.x+=Math.sin(yRotRad)*speed;this._eyePos.z-=Math.cos(yRotRad)*speed;this._eyePos.y-=Math.sin(xRotRad)*speed;}};x3dom.Viewarea.prototype.strafeRight=function()
{var navi=this._scene.getNavigationInfo();if(navi.getType()==="game")
{var speed=5*this._deltaT*navi._vf.speed;var yRotRad=(this._yaw/180*Math.PI);this._eyePos.x-=Math.cos(yRotRad)*speed;this._eyePos.z-=Math.sin(yRotRad)*speed;}};x3dom.Viewarea.prototype.strafeLeft=function()
{var navi=this._scene.getNavigationInfo();if(navi.getType()==="game")
{var speed=5*this._deltaT*navi._vf.speed;var yRotRad=(this._yaw/180*Math.PI);this._eyePos.x+=Math.cos(yRotRad)*speed;this._eyePos.z+=Math.sin(yRotRad)*speed;}};x3dom.Viewarea.prototype.animateTo=function(target,prev,dur)
{var navi=this._scene.getNavigationInfo();if(x3dom.isa(target,x3dom.nodeTypes.X3DViewpointNode)){target=target.getViewMatrix().mult(target.getCurrentTransform().inverse());}
if(navi._vf.transitionType[0].toLowerCase()!=="teleport"&&navi.getType()!=="game")
{if(prev&&x3dom.isa(prev,x3dom.nodeTypes.X3DViewpointNode)){prev=prev.getViewMatrix().mult(prev.getCurrentTransform().inverse()).mult(this._transMat).mult(this._rotMat);this._mixer._beginTime=this._lastTS;if(arguments.length>=3){this._mixer._endTime=this._lastTS+dur;}
else{this._mixer._endTime=this._lastTS+navi._vf.transitionTime;}
this._mixer.setBeginMatrix(prev);this._mixer.setEndMatrix(target);this._scene.getViewpoint().setView(prev);}
else{this._scene.getViewpoint().setView(target);}}
else
{this._scene.getViewpoint().setView(target);}
this._rotMat=x3dom.fields.SFMatrix4f.identity();this._transMat=x3dom.fields.SFMatrix4f.identity();this._movement=new x3dom.fields.SFVec3f(0,0,0);this._needNavigationMatrixUpdate=true;};x3dom.Viewarea.prototype.getLights=function(){var enabledLights=[];for(var i=0;i<this._doc._nodeBag.lights.length;i++)
{if(this._doc._nodeBag.lights[i]._vf.on==true)
{enabledLights.push(this._doc._nodeBag.lights[i]);}}
return enabledLights;};x3dom.Viewarea.prototype.getLightsShadow=function(){var lights=this._doc._nodeBag.lights;for(var l=0;l<lights.length;l++){if(lights[l]._vf.shadowIntensity>0.0){return true;}}
return false;};x3dom.Viewarea.prototype.updateSpecialNavigation=function(viewpoint,mat_viewpoint){var navi=this._scene.getNavigationInfo();var navType=navi.getType();if(navType=="helicopter"&&!navi._heliUpdated)
{var typeParams=navi.getTypeParams();var theta=typeParams[0];var currViewMat=viewpoint.getViewMatrix().mult(mat_viewpoint.inverse()).inverse();this._from=currViewMat.e3();this._at=this._from.subtract(currViewMat.e2());this._up=new x3dom.fields.SFVec3f(0,1,0);this._from.y=typeParams[1];this._at.y=this._from.y;var sv=currViewMat.e0();var q=x3dom.fields.Quaternion.axisAngle(sv,theta);var temp=q.toMatrix();var fin=x3dom.fields.SFMatrix4f.translation(this._from);fin=fin.mult(temp);temp=x3dom.fields.SFMatrix4f.translation(this._from.negate());fin=fin.mult(temp);this._at=fin.multMatrixPnt(this._at);this._flyMat=x3dom.fields.SFMatrix4f.lookAt(this._from,this._at,this._up);this._scene.getViewpoint().setView(this._flyMat.inverse());navi._heliUpdated=true;}};x3dom.Viewarea.prototype.getViewpointMatrix=function()
{var viewpoint=this._scene.getViewpoint();var mat_viewpoint=viewpoint.getCurrentTransform();this.updateSpecialNavigation(viewpoint,mat_viewpoint);return viewpoint.getViewMatrix().mult(mat_viewpoint.inverse());};x3dom.Viewarea.prototype.getViewMatrix=function()
{return this.getViewpointMatrix().mult(this._transMat).mult(this._rotMat);};x3dom.Viewarea.prototype.getLightMatrix=function()
{var lights=this._doc._nodeBag.lights;var i,n=lights.length;if(n>0)
{var vol=this._scene.getVolume();if(vol.isValid())
{var min=x3dom.fields.SFVec3f.MAX();var max=x3dom.fields.SFVec3f.MIN();vol.getBounds(min,max);var l_arr=[];var viewpoint=this._scene.getViewpoint();var fov=viewpoint.getFieldOfView();var dia=max.subtract(min);var dist1=(dia.y/2.0)/Math.tan(fov/2.0)+(dia.z/2.0);var dist2=(dia.x/2.0)/Math.tan(fov/2.0)+(dia.z/2.0);dia=min.add(dia.multiply(0.5));for(i=0;i<n;i++)
{if(x3dom.isa(lights[i],x3dom.nodeTypes.PointLight)){var wcLoc=lights[i].getCurrentTransform().multMatrixPnt(lights[i]._vf.location);dia=dia.subtract(wcLoc).normalize();}
else{var dir=lights[i].getCurrentTransform().multMatrixVec(lights[i]._vf.direction);dir=dir.normalize().negate();dia=dia.add(dir.multiply(1.2*(dist1>dist2?dist1:dist2)));}
l_arr[i]=lights[i].getViewMatrix(dia);}
return l_arr;}}
return[this.getViewMatrix()];};x3dom.Viewarea.prototype.getWCtoLCMatrix=function(lMat)
{var proj=this.getProjectionMatrix();var view;if(arguments.length===0){view=this.getLightMatrix()[0];}
else{view=lMat;}
return proj.mult(view);};x3dom.Viewarea.prototype.getWCtoLCMatricesPointLight=function(view,lightNode,mat_proj)
{var zNear=lightNode._vf.zNear;var zFar=lightNode._vf.zFar;var proj=this.getLightProjectionMatrix(view,zNear,zFar,false,mat_proj);proj._00=1;proj._11=1;var matrices=[];matrices[0]=proj.mult(view);var rotationMatrix;for(var i=1;i<=3;i++){rotationMatrix=x3dom.fields.SFMatrix4f.rotationY(i*Math.PI/2);matrices[i]=proj.mult(rotationMatrix.mult(view));}
rotationMatrix=x3dom.fields.SFMatrix4f.rotationX(Math.PI/2);matrices[4]=proj.mult(rotationMatrix.mult(view));rotationMatrix=x3dom.fields.SFMatrix4f.rotationX(3*Math.PI/2);matrices[5]=proj.mult(rotationMatrix.mult(view));return matrices;};x3dom.Viewarea.prototype.getWCtoLCMatricesCascaded=function(view,lightNode,mat_proj)
{var numCascades=Math.max(1,Math.min(lightNode._vf.shadowCascades,6));var splitFactor=Math.max(0,Math.min(lightNode._vf.shadowSplitFactor,1));var splitOffset=Math.max(0,Math.min(lightNode._vf.shadowSplitOffset,1));var isSpotLight=x3dom.isa(lightNode,x3dom.nodeTypes.SpotLight);var zNear=lightNode._vf.zNear;var zFar=lightNode._vf.zFar;var proj=this.getLightProjectionMatrix(view,zNear,zFar,true,mat_proj);if(isSpotLight){proj._00=1;proj._11=1;}
var viewProj=proj.mult(view);var matrices=[];if(numCascades==1){matrices[0]=viewProj;return matrices;}
var cascadeSplits=this.getShadowSplitDepths(numCascades,splitFactor,splitOffset,true,mat_proj);for(var i=0;i<numCascades;i++){var fittingMat=this.getLightFittingMatrix(viewProj,cascadeSplits[i],cascadeSplits[i+1],mat_proj);matrices[i]=fittingMat.mult(viewProj);}
return matrices;};x3dom.Viewarea.prototype.getLightProjectionMatrix=function(lMat,zNear,zFar,highPrecision,mat_proj)
{var proj=x3dom.fields.SFMatrix4f.copy(mat_proj);if(!highPrecision||zNear>0||zFar>0){var lightPos=lMat.inverse().e3();var nearScale=0.8;var farScale=1.2;var min=x3dom.fields.SFVec3f.copy(this._scene._lastMin);var max=x3dom.fields.SFVec3f.copy(this._scene._lastMax);var dia=max.subtract(min);var sRad=dia.length()/2;var sCenter=min.add(dia.multiply(0.5));var vDist=(lightPos.subtract(sCenter)).length();var near,far;if(sRad){if(vDist>sRad)
near=(vDist-sRad)*nearScale;else
near=1;far=(vDist+sRad)*farScale;}
if(zNear>0)near=zNear;if(zFar>0)far=zFar;proj._22=-(far+near)/(far-near);proj._23=-2.0*far*near/(far-near);return proj;}
else{var cropMatrix=this.getLightCropMatrix(proj.mult(lMat));return cropMatrix.mult(proj);}};x3dom.Viewarea.prototype.getProjectionMatrix=function()
{var viewpoint=this._scene.getViewpoint();return viewpoint.getProjectionMatrix(this._width/this._height);};x3dom.Viewarea.prototype.getViewfrustum=function(clipMat)
{var env=this._scene.getEnvironment();if(env._vf.frustumCulling==true)
{if(arguments.length==0){var proj=this.getProjectionMatrix();var view=this.getViewMatrix();return new x3dom.fields.FrustumVolume(proj.mult(view));}
else{return new x3dom.fields.FrustumVolume(clipMat);}}
return null;};x3dom.Viewarea.prototype.getWCtoCCMatrix=function()
{var view=this.getViewMatrix();var proj=this.getProjectionMatrix();return proj.mult(view);};x3dom.Viewarea.prototype.getCCtoWCMatrix=function()
{var mat=this.getWCtoCCMatrix();return mat.inverse();};x3dom.Viewarea.prototype.calcViewRay=function(x,y,mat)
{var cctowc=mat?mat:this.getCCtoWCMatrix();var rx=x/(this._width-1.0)*2.0-1.0;var ry=(this._height-1.0-y)/(this._height-1.0)*2.0-1.0;var from=cctowc.multFullMatrixPnt(new x3dom.fields.SFVec3f(rx,ry,-1));var at=cctowc.multFullMatrixPnt(new x3dom.fields.SFVec3f(rx,ry,1));var dir=at.subtract(from);return new x3dom.fields.Ray(from,dir);};x3dom.Viewarea.prototype.showAll=function(axis)
{if(axis===undefined)
axis="negZ";var scene=this._scene;scene.updateVolume();var min=x3dom.fields.SFVec3f.copy(scene._lastMin);var max=x3dom.fields.SFVec3f.copy(scene._lastMax);var x="x",y="y",z="z";var sign=1;var to,from=new x3dom.fields.SFVec3f(0,0,-1);switch(axis){case"posX":sign=-1;case"negX":z="x";x="y";y="z";to=new x3dom.fields.SFVec3f(sign,0,0);break;case"posY":sign=-1;case"negY":z="y";x="z";y="x";to=new x3dom.fields.SFVec3f(0,sign,0);break;case"posZ":sign=-1;case"negZ":default:to=new x3dom.fields.SFVec3f(0,0,-sign);break;}
var viewpoint=scene.getViewpoint();var fov=viewpoint.getFieldOfView();var dia=max.subtract(min);var diaz2=dia[z]/2.0,tanfov2=Math.tan(fov/2.0);var dist1=(dia[y]/2.0)/tanfov2+diaz2;var dist2=(dia[x]/2.0)/tanfov2+diaz2;dia=min.add(dia.multiply(0.5));dia[z]+=sign*(dist1>dist2?dist1:dist2)*1.01;var quat=x3dom.fields.Quaternion.rotateFromTo(from,to);var viewmat=quat.toMatrix();viewmat=viewmat.mult(x3dom.fields.SFMatrix4f.translation(dia.negate()));this.animateTo(viewmat,viewpoint);};x3dom.Viewarea.prototype.fit=function(min,max,updateCenterOfRotation)
{if(updateCenterOfRotation===undefined){updateCenterOfRotation=true;}
var dia2=max.subtract(min).multiply(0.5);var center=min.add(dia2);var bsr=dia2.length();var viewpoint=this._scene.getViewpoint();var fov=viewpoint.getFieldOfView();var viewmat=x3dom.fields.SFMatrix4f.copy(this.getViewMatrix());var rightDir=new x3dom.fields.SFVec3f(viewmat._00,viewmat._01,viewmat._02);var upDir=new x3dom.fields.SFVec3f(viewmat._10,viewmat._11,viewmat._12);var viewDir=new x3dom.fields.SFVec3f(viewmat._20,viewmat._21,viewmat._22);var tanfov2=Math.tan(fov/2.0);var dist=bsr/tanfov2;var eyePos=center.add(viewDir.multiply(dist));viewmat._03=-rightDir.dot(eyePos);viewmat._13=-upDir.dot(eyePos);viewmat._23=-viewDir.dot(eyePos);if(updateCenterOfRotation){viewpoint.setCenterOfRotation(center);}
if(x3dom.isa(viewpoint,x3dom.nodeTypes.OrthoViewpoint))
{viewpoint._vf.fieldOfView[0]=-dist;viewpoint._vf.fieldOfView[1]=-dist;viewpoint._vf.fieldOfView[2]=dist;viewpoint._vf.fieldOfView[3]=dist;viewpoint._projMatrix=null;this.animateTo(viewmat,viewpoint,0);}
else
{this.animateTo(viewmat,viewpoint);}};x3dom.Viewarea.prototype.resetView=function()
{var navi=this._scene.getNavigationInfo();if(navi._vf.transitionType[0].toLowerCase()!=="teleport"&&navi.getType()!=="game")
{this._mixer._beginTime=this._lastTS;this._mixer._endTime=this._lastTS+navi._vf.transitionTime;this._mixer.setBeginMatrix(this.getViewMatrix());var target=this._scene.getViewpoint();target.resetView();target=target.getViewMatrix().mult(target.getCurrentTransform().inverse());this._mixer.setEndMatrix(target);}
else
{this._scene.getViewpoint().resetView();}
this.resetNavHelpers();navi._heliUpdated=false;};x3dom.Viewarea.prototype.resetNavHelpers=function()
{this._rotMat=x3dom.fields.SFMatrix4f.identity();this._transMat=x3dom.fields.SFMatrix4f.identity();this._movement=new x3dom.fields.SFVec3f(0,0,0);this._needNavigationMatrixUpdate=true;};x3dom.Viewarea.prototype.uprightView=function()
{var mat=this.getViewMatrix().inverse();var from=mat.e3();var at=from.subtract(mat.e2());var up=new x3dom.fields.SFVec3f(0,1,0);var s=mat.e2().cross(up).normalize();var v=s.cross(up).normalize();at=from.add(v);mat=x3dom.fields.SFMatrix4f.lookAt(from,at,up);mat=mat.inverse();this.animateTo(mat,this._scene.getViewpoint());};x3dom.Viewarea.prototype.callEvtHandler=function(node,eventType,event)
{if(!node||!node._xmlNode)
return null;try{var attrib=node._xmlNode[eventType];if(typeof(attrib)==="function"){attrib.call(node._xmlNode,event);}
else{var funcStr=node._xmlNode.getAttribute(eventType);var func=new Function('event',funcStr);func.call(node._xmlNode,event);}
var list=node._listeners[event.type];if(list){for(var it=0;it<list.length;it++){list[it].call(node._xmlNode,event);}}}
catch(e){x3dom.debug.logException(e);}
return event.cancelBubble;};x3dom.Viewarea.prototype.checkEvents=function(obj,x,y,buttonState,eventType)
{var that=this;var needRecurse=true;var childNode;var i,n;var target=(obj&&obj._xmlNode)?obj._xmlNode:{};var affectedPointingSensorsList=this._doc._nodeBag.affectedPointingSensors;var event={viewarea:that,target:target,type:eventType.substr(2,eventType.length-2),button:buttonState,layerX:x,layerY:y,worldX:that._pick.x,worldY:that._pick.y,worldZ:that._pick.z,normalX:that._pickNorm.x,normalY:that._pickNorm.y,normalZ:that._pickNorm.z,hitPnt:that._pick.toGL(),hitObject:target,shadowObjectId:that._pickingInfo.shadowObjectId,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};try{var anObj=obj;if(anObj&&anObj._xmlNode&&anObj._cf.geometry&&!anObj._xmlNode[eventType]&&!anObj._xmlNode.hasAttribute(eventType)&&!anObj._listeners[event.type]){anObj=anObj._cf.geometry.node;}
if(anObj&&that.callEvtHandler(anObj,eventType,event)===true){needRecurse=false;}}
catch(e){x3dom.debug.logException(e);}
var recurse=function(obj){Array.forEach(obj._parentNodes,function(node){if(node._xmlNode&&(node._xmlNode[eventType]||node._xmlNode.hasAttribute(eventType)||node._listeners[event.type]))
{if(that.callEvtHandler(node,eventType,event)===true){needRecurse=false;}}
if(buttonState==0&&affectedPointingSensorsList.length==0&&(eventType=='onmousemove'||eventType=='onmouseover'||eventType=='onmouseout'))
{n=node._childNodes.length;for(i=0;i<n;++i)
{childNode=node._childNodes[i];if(x3dom.isa(childNode,x3dom.nodeTypes.X3DPointingDeviceSensorNode)&&childNode._vf.enabled)
{affectedPointingSensorsList.push(childNode);}}}
if(x3dom.isa(node,x3dom.nodeTypes.Anchor)&&eventType==='onclick'){node.handleTouch();needRecurse=false;}
else if(needRecurse){recurse(node);}});};if(needRecurse&&obj){recurse(obj);}
return needRecurse;};x3dom.Viewarea.prototype._notifyAffectedPointingSensors=function(event)
{var funcDict={"mousedown":"pointerPressedOverSibling","mousemove":"pointerMoved","mouseover":"pointerMovedOver","mouseout":"pointerMovedOut"};var func=funcDict[event.type];var affectedPointingSensorsList=this._doc._nodeBag.affectedPointingSensors;var i,n=affectedPointingSensorsList.length;if(n>0&&func!==undefined)
{for(i=0;i<n;i++)
affectedPointingSensorsList[i][func](event);}};x3dom.Viewarea.prototype.initMouseState=function()
{this._deltaT=0;this._dx=0;this._dy=0;this._lastX=-1;this._lastY=-1;this._pressX=-1;this._pressY=-1;this._lastButton=0;this._isMoving=false;this._needNavigationMatrixUpdate=true;};x3dom.Viewarea.prototype.initTurnTable=function(navi,flyTo)
{flyTo=(flyTo==undefined)?true:flyTo;var currViewMat=this.getViewMatrix();var viewpoint=this._scene.getViewpoint();var center=x3dom.fields.SFVec3f.copy(viewpoint.getCenterOfRotation());this._flyMat=currViewMat.inverse();this._from=this._flyMat.e3();this._at=center;this._up=this._flyMat.e1();this._flyMat=x3dom.fields.SFMatrix4f.lookAt(this._from,this._at,this._up);this._flyMat=this.calcOrbit(0,0,navi);var dur=0.0;if(flyTo){dur=0.2/navi._vf.speed;}
this.animateTo(this._flyMat.inverse(),viewpoint,dur);this.resetNavHelpers();};x3dom.Viewarea.prototype.onMousePress=function(x,y,buttonState)
{this._needNavigationMatrixUpdate=true;this.prepareEvents(x,y,buttonState,"onmousedown");this._pickingInfo.lastClickObj=this._pickingInfo.pickObj;this._pickingInfo.firstObj=this._pickingInfo.pickObj;this._dx=0;this._dy=0;this._lastX=x;this._lastY=y;this._pressX=x;this._pressY=y;this._lastButton=buttonState;this._isMoving=false;if(this._currentInputType==x3dom.InputTypes.NAVIGATION)
{var navi=this._scene.getNavigationInfo();if(navi.getType()==="turntable"){this.initTurnTable(navi,false);}}};x3dom.Viewarea.prototype.onMouseRelease=function(x,y,buttonState,prevButton)
{var i;var affectedPointingSensorsList=this._doc._nodeBag.affectedPointingSensors;for(i=0;i<affectedPointingSensorsList.length;++i)
{affectedPointingSensorsList[i].pointerReleased();}
this._doc._nodeBag.affectedPointingSensors=[];var tDist=3.0;var dir;var navi=this._scene.getNavigationInfo();var navType=navi.getType();if(this._scene._vf.pickMode.toLowerCase()!=="box"){this.prepareEvents(x,y,prevButton,"onmouseup");if(this._pickingInfo.pickObj&&this._pickingInfo.pickObj===this._pickingInfo.lastClickObj)
{this.prepareEvents(x,y,prevButton,"onclick");}
else if(!this._pickingInfo.pickObj&&!this._pickingInfo.lastClickObj&&!this._pickingInfo.firstObj)
{var eventType="backgroundClicked";try{if(this._scene._xmlNode&&(this._scene._xmlNode["on"+eventType]||this._scene._xmlNode.hasAttribute("on"+eventType)||this._scene._listeners[eventType])){var event={target:this._scene._xmlNode,type:eventType,button:prevButton,layerX:x,layerY:y,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};this._scene.callEvtHandler(("on"+eventType),event);}}
catch(e){x3dom.debug.logException("backgroundClicked: "+e);}}}
else{var t0=new Date().getTime();var line=this.calcViewRay(x,y);var isect=this._scene.doIntersect(line);var obj=line.hitObject;if(isect&&obj)
{this._pick.setValues(line.hitPoint);this.checkEvents(obj,x,y,buttonState,"onclick");x3dom.debug.logInfo("Hit '"+obj._xmlNode.localName+"/ "+
obj._DEF+"' at dist="+line.dist.toFixed(4));x3dom.debug.logInfo("Ray hit at position "+this._pick);}
var t1=new Date().getTime()-t0;x3dom.debug.logInfo("Picking time (box): "+t1+"ms");if(!isect){dir=this.getViewMatrix().e2().negate();var u=dir.dot(line.pos.negate())/dir.dot(line.dir);this._pick=line.pos.add(line.dir.multiply(u));}}
this._pickingInfo.firstObj=null;if(this._currentInputType==x3dom.InputTypes.NAVIGATION&&(this._pickingInfo.pickObj||this._pickingInfo.shadowObjectId>=0)&&navType==="lookat"&&this._pressX===x&&this._pressY===y)
{var step=(this._lastButton&2)?-1:1;var dist=this._pickingInfo.pickPos.subtract(this._from).length()/tDist;var laMat=new x3dom.fields.SFMatrix4f();laMat.setValues(this.getViewMatrix());laMat=laMat.inverse();var from=laMat.e3();var at=from.subtract(laMat.e2());var up=laMat.e1();dir=this._pickingInfo.pickPos.subtract(from);var len=dir.length();dir=dir.normalize();var newAt=from.addScaled(dir,len);var s=dir.cross(up).normalize();dir=s.cross(up).normalize();if(step<0){dist=(0.5+len+dist)*2;}
var newFrom=newAt.addScaled(dir,dist);laMat=x3dom.fields.SFMatrix4f.lookAt(newFrom,newAt,up);laMat=laMat.inverse();dist=newFrom.subtract(from).length();var dur=Math.max(0.5,Math.log((1+dist)/navi._vf.speed));this.animateTo(laMat,this._scene.getViewpoint(),dur);}
this._dx=0;this._dy=0;this._lastX=x;this._lastY=y;this._lastButton=buttonState;this._isMoving=false;};x3dom.Viewarea.prototype.onMouseOver=function(x,y,buttonState)
{this._dx=0;this._dy=0;this._lastButton=0;this._isMoving=false;this._lastX=x;this._lastY=y;this._deltaT=0;};x3dom.Viewarea.prototype.onMouseOut=function(x,y,buttonState)
{this._dx=0;this._dy=0;this._lastButton=0;this._isMoving=false;this._lastX=x;this._lastY=y;this._deltaT=0;var i;var affectedPointingSensorsList=this._doc._nodeBag.affectedPointingSensors;for(i=0;i<affectedPointingSensorsList.length;++i)
{affectedPointingSensorsList[i].pointerReleased();}
this._doc._nodeBag.affectedPointingSensors=[];};x3dom.Viewarea.prototype.onDoubleClick=function(x,y)
{if(this._doc._x3dElem.hasAttribute('disableDoubleClick')&&this._doc._x3dElem.getAttribute('disableDoubleClick')==='true'){return;}
var navi=this._scene.getNavigationInfo();if(navi.getType()=="none"){return;}
var pickMode=this._scene._vf.pickMode.toLowerCase();if((pickMode=="color"||pickMode=="texcoord")){return;}
var viewpoint=this._scene.getViewpoint();viewpoint.setCenterOfRotation(this._pick);x3dom.debug.logInfo("New center of Rotation:  "+this._pick);var mat=this.getViewMatrix().inverse();var from=mat.e3();var at=this._pick;var up=mat.e1();var norm=mat.e0().cross(up).normalize();var dist=norm.dot(this._pick.subtract(from));from=at.addScaled(norm,-dist);mat=x3dom.fields.SFMatrix4f.lookAt(from,at,up);x3dom.debug.logInfo("New camera position:  "+from);this.animateTo(mat.inverse(),viewpoint);};x3dom.Viewarea.prototype.handleMoveEvt=function(x,y,buttonState)
{if(buttonState==0)
{this._doc._nodeBag.affectedPointingSensors=[];}
this.prepareEvents(x,y,buttonState,"onmousemove");if(this._pickingInfo.pickObj!==this._pickingInfo.lastObj)
{if(this._pickingInfo.lastObj){var obj=this._pickingInfo.pickObj;this._pickingInfo.pickObj=this._pickingInfo.lastObj;this.prepareEvents(x,y,buttonState,"onmouseout");this._pickingInfo.pickObj=obj;}
if(this._pickingInfo.pickObj){this.prepareEvents(x,y,buttonState,"onmouseover");}
this._pickingInfo.lastObj=this._pickingInfo.pickObj;}};x3dom.Viewarea.prototype.onMove=function(x,y,buttonState)
{this.handleMoveEvt(x,y,buttonState);if(this._lastX<0||this._lastY<0){this._lastX=x;this._lastY=y;}
this._dx=x-this._lastX;this._dy=y-this._lastY;this._lastX=x;this._lastY=y;};x3dom.Viewarea.prototype.mapToTrackBall=function(x,y,r){var lsq=x*x+y*y;var rsq2=0.5*r*r;var tx,ty,tz;if(lsq<=rsq2){tz=Math.sqrt(r*r-lsq);tx=x;ty=y;}else{tz=rsq2/Math.sqrt(lsq);var sc=Math.sqrt((r*r-tz*tz)/lsq);tx=x*sc;ty=y*sc;}
tx/=r;ty/=r;tz/=r;var len=Math.sqrt(tx*tx+ty*ty+tz*tz);return new x3dom.fields.SFVec3f(tx,-ty,tz);}
x3dom.Viewarea.prototype.onMoveView=function(translation,rotation)
{if(this._currentInputType==x3dom.InputTypes.NAVIGATION)
{var navi=this._scene.getNavigationInfo();var viewpoint=this._scene.getViewpoint();if(navi.getType()==="examine")
{if(translation)
{var distance=(this._scene._lastMax.subtract(this._scene._lastMin)).length();distance=((distance<x3dom.fields.Eps)?1:distance)*navi._vf.speed;translation=translation.multiply(distance);this._movement=this._movement.add(translation);this._transMat=viewpoint.getViewMatrix().inverse().mult(x3dom.fields.SFMatrix4f.translation(this._movement)).mult(viewpoint.getViewMatrix());}
if(rotation)
{var center=viewpoint.getCenterOfRotation();var mat=this.getViewMatrix();mat.setTranslate(new x3dom.fields.SFVec3f(0,0,0));this._rotMat=this._rotMat.mult(x3dom.fields.SFMatrix4f.translation(center)).mult(mat.inverse()).mult(rotation).mult(mat).mult(x3dom.fields.SFMatrix4f.translation(center.negate()));}
this._isMoving=true;}}};x3dom.Viewarea.prototype.onDrag=function(x,y,buttonState)
{this.handleMoveEvt(x,y,buttonState);if(this._currentInputType==x3dom.InputTypes.NAVIGATION)
{var navi=this._scene.getNavigationInfo();var navType=navi.getType();var navRestrict=navi.getExplorationMode();if(navType==="none"||navRestrict==0){return;}
var viewpoint=this._scene.getViewpoint();var dx=x-this._lastX;var dy=y-this._lastY;var d,vec,cor,mat=null;var alpha,beta;buttonState=(!navRestrict||(navRestrict!=7&&buttonState==1))?navRestrict:buttonState;if(navType==="examine")
{if(buttonState&1)
{var r=this._height;if(this._width<r)
r=this._width;r=0.70*0.5*r;var sx,sy;sx=this._lastX-0.5*this._width;sy=this._lastY-0.5*this._height;var oldV=this.mapToTrackBall(sx,sy,r);sx=x-0.5*this._width;sy=y-0.5*this._height;var newV=this.mapToTrackBall(sx,sy,r);var axis=oldV.cross(newV);axis=axis.normalize();var ang=Math.acos(oldV.dot(newV));var mr=x3dom.fields.SFMatrix4f.rotationR(ang,axis);mat=this.getViewMatrix();mat.setTranslate(new x3dom.fields.SFVec3f(0,0,0));var center=viewpoint.getCenterOfRotation();this._rotMat=this._rotMat.mult(x3dom.fields.SFMatrix4f.translation(center)).mult(mat.inverse()).mult(mr).mult(mat).mult(x3dom.fields.SFMatrix4f.translation(center.negate()));}
if(buttonState&4)
{d=(this._scene._lastMax.subtract(this._scene._lastMin)).length();d=((d<x3dom.fields.Eps)?1:d)*navi._vf.speed;vec=new x3dom.fields.SFVec3f(d*dx/this._width,d*(-dy)/this._height,0);this._movement=this._movement.add(vec);mat=this.getViewpointMatrix().mult(this._transMat);this._transMat=mat.inverse().mult(x3dom.fields.SFMatrix4f.translation(this._movement)).mult(mat);}
if(buttonState&2)
{d=(this._scene._lastMax.subtract(this._scene._lastMin)).length();d=((d<x3dom.fields.Eps)?1:d)*navi._vf.speed;vec=new x3dom.fields.SFVec3f(0,0,d*(dx+dy)/this._height);if(x3dom.isa(viewpoint,x3dom.nodeTypes.OrthoViewpoint))
{viewpoint._vf.fieldOfView[0]+=vec.z;viewpoint._vf.fieldOfView[1]+=vec.z;viewpoint._vf.fieldOfView[2]-=vec.z;viewpoint._vf.fieldOfView[3]-=vec.z;viewpoint._projMatrix=null;}
else
{this._movement=this._movement.add(vec);mat=this.getViewpointMatrix().mult(this._transMat);this._transMat=mat.inverse().mult(x3dom.fields.SFMatrix4f.translation(this._movement)).mult(mat);}}
this._isMoving=true;}
else if(navType==="turntable")
{if(!this._flyMat)
this.initTurnTable(navi,false);if(buttonState&1)
{alpha=(dy*2*Math.PI)/this._height;beta=(dx*2*Math.PI)/this._width;this._flyMat=this.calcOrbit(alpha,beta,navi);viewpoint.setView(this._flyMat.inverse());}
else if(buttonState&2)
{d=(this._scene._lastMax.subtract(this._scene._lastMin)).length();d=((d<x3dom.fields.Eps)?1:d)*navi._vf.speed;this._up=this._flyMat.e1();this._from=this._flyMat.e3();cor=viewpoint.getCenterOfRotation();var lastDir=cor.subtract(this._from);var lastDirL=lastDir.length();lastDir=lastDir.normalize();var zoomAmount=d*(dx+dy)/this._height;if(navi._vf.typeParams.length>=5&&navi._vf.typeParams[4]>0)
{var newDist=Math.min(zoomAmount,lastDirL-navi._vf.typeParams[4]);this._from=this._from.addScaled(lastDir,newDist);}
else
{var diff=zoomAmount-lastDirL+0.01;if(diff>=0){cor=cor.addScaled(lastDir,diff);viewpoint.setCenterOfRotation(cor);}
this._from=this._from.addScaled(lastDir,zoomAmount);}
this._from=this._from.addScaled(lastDir,zoomAmount);this._flyMat=x3dom.fields.SFMatrix4f.lookAt(this._from,cor,this._up);viewpoint.setView(this._flyMat.inverse());}
else if(buttonState&4)
{d=(this._scene._lastMax.subtract(this._scene._lastMin)).length();d=((d<x3dom.fields.Eps)?1:d)*navi._vf.speed*0.75;var tx=-d*dx/this._width;var ty=d*dy/this._height;this._up=this._flyMat.e1();this._from=this._flyMat.e3();var s=this._flyMat.e0();this._from=this._from.addScaled(this._up,ty);this._from=this._from.addScaled(s,tx);cor=viewpoint.getCenterOfRotation();cor=cor.addScaled(this._up,ty);cor=cor.addScaled(s,tx);viewpoint.setCenterOfRotation(cor);this._flyMat=x3dom.fields.SFMatrix4f.lookAt(this._from,cor,this._up);viewpoint.setView(this._flyMat.inverse());}
this._isMoving=true;}}
this._dx=dx;this._dy=dy;this._lastX=x;this._lastY=y;};x3dom.Viewarea.prototype.calcOrbit=function(alpha,beta,navi)
{this._up=this._flyMat.e1();this._from=this._flyMat.e3();var offset=this._from.subtract(this._at);var phi=Math.atan2(offset.x,offset.z);var theta=Math.atan2(Math.sqrt(offset.x*offset.x+offset.z*offset.z),offset.y);phi-=beta;theta-=alpha;var typeParams=navi.getTypeParams();theta=Math.max(typeParams[2],Math.min(typeParams[3],theta));var radius=offset.length();var rSinPhi=radius*Math.sin(theta);offset.x=rSinPhi*Math.sin(phi);offset.y=radius*Math.cos(theta);offset.z=rSinPhi*Math.cos(phi);offset=this._at.add(offset);theta-=Math.PI/2;var sinPhi=Math.sin(theta);var cosPhi=Math.cos(theta);var up=new x3dom.fields.SFVec3f(sinPhi*Math.sin(phi),cosPhi,sinPhi*Math.cos(phi));if(up.y<0)
up=up.negate();return x3dom.fields.SFMatrix4f.lookAt(offset,this._at,up);};x3dom.Viewarea.prototype.prepareEvents=function(x,y,buttonState,eventType)
{var affectedPointingSensorsList=this._doc._nodeBag.affectedPointingSensors;var pickMode=this._scene._vf.pickMode.toLowerCase();var avoidTraversal=(pickMode.indexOf("idbuf")==0||pickMode=="color"||pickMode=="texcoord");var obj=null;if(avoidTraversal){obj=this._pickingInfo.pickObj;if(obj){this._pick.setValues(this._pickingInfo.pickPos);this._pickNorm.setValues(this._pickingInfo.pickNorm);this.checkEvents(obj,x,y,buttonState,eventType);if(eventType==="onclick"){if(obj._xmlNode)
x3dom.debug.logInfo("Hit \""+obj._xmlNode.localName+"/ "+obj._DEF+"\"");x3dom.debug.logInfo("Ray hit at position "+this._pick);}}}
var event={viewarea:this,target:{},type:eventType.substr(2,eventType.length-2),button:buttonState,layerX:x,layerY:y,worldX:this._pick.x,worldY:this._pick.y,worldZ:this._pick.z,normalX:this._pickNorm.x,normalY:this._pickNorm.y,normalZ:this._pickNorm.z,hitPnt:this._pick.toGL(),hitObject:(obj&&obj._xmlNode)?obj._xmlNode:null,shadowObjectId:this._pickingInfo.shadowObjectId,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};this._notifyAffectedPointingSensors(event);if(affectedPointingSensorsList.length>0)
{this._currentInputType=x3dom.InputTypes.INTERACTION;}
else
{this._currentInputType=x3dom.InputTypes.NAVIGATION;}};x3dom.Viewarea.prototype.getRenderMode=function()
{return this._points;};x3dom.Viewarea.prototype.getShadowedLights=function()
{var shadowedLights=[];var shadowIndex=0;var slights=this.getLights();for(var i=0;i<slights.length;i++){if(slights[i]._vf.shadowIntensity>0.0){shadowedLights[shadowIndex]=slights[i];shadowIndex++;}}
return shadowedLights;};x3dom.Viewarea.prototype.getShadowSplitDepths=function(numCascades,splitFactor,splitOffset,postProject,mat_proj)
{var logSplit;var practSplit=[];var viewPoint=this._scene.getViewpoint();var zNear=viewPoint.getNear();var zFar=viewPoint.getFar();practSplit[0]=zNear;zNear=zNear+splitOffset*(zFar-zNear)/10;for(var i=1;i<numCascades;i++){logSplit=zNear*Math.pow((zFar/zNear),i/numCascades);practSplit[i]=splitFactor*logSplit+(1-splitFactor)*(zNear+i/(numCascades*(zNear-zFar)));}
practSplit[numCascades]=zFar;if(!postProject)
return practSplit;var postProj=[];for(var j=0;j<=numCascades;j++){postProj[j]=mat_proj.multFullMatrixPnt(new x3dom.fields.SFVec3f(0,0,-practSplit[j])).z;}
return postProj;};x3dom.Viewarea.prototype.getLightCropMatrix=function(WCToLCMatrix)
{var sceneMin=x3dom.fields.SFVec3f.copy(this._scene._lastMin);var sceneMax=x3dom.fields.SFVec3f.copy(this._scene._lastMax);var sceneCorners=[];sceneCorners[0]=new x3dom.fields.SFVec3f(sceneMin.x,sceneMin.y,sceneMin.z);sceneCorners[1]=new x3dom.fields.SFVec3f(sceneMin.x,sceneMin.y,sceneMax.z);sceneCorners[2]=new x3dom.fields.SFVec3f(sceneMin.x,sceneMax.y,sceneMin.z);sceneCorners[3]=new x3dom.fields.SFVec3f(sceneMin.x,sceneMax.y,sceneMax.z);sceneCorners[4]=new x3dom.fields.SFVec3f(sceneMax.x,sceneMin.y,sceneMin.z);sceneCorners[5]=new x3dom.fields.SFVec3f(sceneMax.x,sceneMin.y,sceneMax.z);sceneCorners[6]=new x3dom.fields.SFVec3f(sceneMax.x,sceneMax.y,sceneMin.z);sceneCorners[7]=new x3dom.fields.SFVec3f(sceneMax.x,sceneMax.y,sceneMax.z);var i;for(i=0;i<8;i++){sceneCorners[i]=WCToLCMatrix.multFullMatrixPnt(sceneCorners[i]);}
var minScene=x3dom.fields.SFVec3f.copy(sceneCorners[0]);var maxScene=x3dom.fields.SFVec3f.copy(sceneCorners[0]);for(i=1;i<8;i++){minScene.z=Math.min(sceneCorners[i].z,minScene.z);maxScene.z=Math.max(sceneCorners[i].z,maxScene.z);}
var scaleZ=2.0/(maxScene.z-minScene.z);var offsetZ=-(scaleZ*(maxScene.z+minScene.z))/2.0;var cropMatrix=x3dom.fields.SFMatrix4f.identity();cropMatrix._22=scaleZ;cropMatrix._23=offsetZ;return cropMatrix;};x3dom.Viewarea.prototype.getLightFittingMatrix=function(WCToLCMatrix,zNear,zFar,mat_proj)
{var mat_view=this.getViewMatrix();var mat_view_proj=mat_proj.mult(mat_view);var mat_view_proj_inverse=mat_view_proj.inverse();var frustumCorners=[];frustumCorners[0]=new x3dom.fields.SFVec3f(-1,-1,zFar);frustumCorners[1]=new x3dom.fields.SFVec3f(-1,-1,zNear);frustumCorners[2]=new x3dom.fields.SFVec3f(-1,1,zFar);frustumCorners[3]=new x3dom.fields.SFVec3f(-1,1,zNear);frustumCorners[4]=new x3dom.fields.SFVec3f(1,-1,zFar);frustumCorners[5]=new x3dom.fields.SFVec3f(1,-1,zNear);frustumCorners[6]=new x3dom.fields.SFVec3f(1,1,zFar);frustumCorners[7]=new x3dom.fields.SFVec3f(1,1,zNear);var i;for(i=0;i<8;i++){frustumCorners[i]=mat_view_proj_inverse.multFullMatrixPnt(frustumCorners[i]);frustumCorners[i]=WCToLCMatrix.multFullMatrixPnt(frustumCorners[i]);}
var minFrustum=x3dom.fields.SFVec3f.copy(frustumCorners[0]);var maxFrustum=x3dom.fields.SFVec3f.copy(frustumCorners[0]);for(i=1;i<8;i++){minFrustum.x=Math.min(frustumCorners[i].x,minFrustum.x);minFrustum.y=Math.min(frustumCorners[i].y,minFrustum.y);minFrustum.z=Math.min(frustumCorners[i].z,minFrustum.z);maxFrustum.x=Math.max(frustumCorners[i].x,maxFrustum.x);maxFrustum.y=Math.max(frustumCorners[i].y,maxFrustum.y);maxFrustum.z=Math.max(frustumCorners[i].z,maxFrustum.z);}
function clip(min,max)
{var xMin=min.x;var yMin=min.y;var zMin=min.z;var xMax=max.x;var yMax=max.y;var zMax=max.z;if(xMin>1.0||xMax<-1.0){xMin=-1.0;xMax=1.0;}else{xMin=Math.max(xMin,-1.0);xMax=Math.min(xMax,1.0);}
if(yMin>1.0||yMax<-1.0){yMin=-1.0;yMax=1.0;}else{yMin=Math.max(yMin,-1.0);yMax=Math.min(yMax,1.0);}
if(zMin>1.0||zMax<-1.0){zMin=-1.0;zMax=1.0;}else{zMin=Math.max(zMin,-1.0);zMax=Math.min(zMax,1.0);}
var minValues=new x3dom.fields.SFVec3f(xMin,yMin,zMin);var maxValues=new x3dom.fields.SFVec3f(xMax,yMax,zMax);return new x3dom.fields.BoxVolume(minValues,maxValues);}
var frustumBB=clip(minFrustum,maxFrustum);var scaleX=2.0/(frustumBB.max.x-frustumBB.min.x);var scaleY=2.0/(frustumBB.max.y-frustumBB.min.y);var offsetX=-(scaleX*(frustumBB.max.x+frustumBB.min.x))/2.0;var offsetY=-(scaleY*(frustumBB.max.y+frustumBB.min.y))/2.0;var fittingMatrix=x3dom.fields.SFMatrix4f.identity();fittingMatrix._00=scaleX;fittingMatrix._11=scaleY;fittingMatrix._03=offsetX;fittingMatrix._13=offsetY;return fittingMatrix;};x3dom.Mesh=function(parent)
{this._parent=parent;this._vol=new x3dom.fields.BoxVolume();this._invalidate=true;this._numFaces=0;this._numCoords=0;this._primType='TRIANGLES';this._positions=[];this._normals=[];this._texCoords=[];this._colors=[];this._indices=[];this._positions[0]=[];this._normals[0]=[];this._texCoords[0]=[];this._colors[0]=[];this._indices[0]=[];};x3dom.Mesh.prototype._dynamicFields={};x3dom.Mesh.prototype._numPosComponents=3;x3dom.Mesh.prototype._numTexComponents=2;x3dom.Mesh.prototype._numColComponents=3;x3dom.Mesh.prototype._numNormComponents=3;x3dom.Mesh.prototype._lit=true;x3dom.Mesh.prototype._vol=null;x3dom.Mesh.prototype._invalidate=true;x3dom.Mesh.prototype._numFaces=0;x3dom.Mesh.prototype._numCoords=0;x3dom.Mesh.prototype.setMeshData=function(positions,normals,texCoords,colors,indices)
{this._positions[0]=positions;this._normals[0]=normals;this._texCoords[0]=texCoords;this._colors[0]=colors;this._indices[0]=indices;this._invalidate=true;this._numFaces=this._indices[0].length/3;this._numCoords=this._positions[0].length/3;};x3dom.Mesh.prototype.getVolume=function()
{if(this._invalidate==true&&!this._vol.isValid())
{var coords=this._positions[0];var n=coords.length;if(n>3)
{var initVal=new x3dom.fields.SFVec3f(coords[0],coords[1],coords[2]);this._vol.setBounds(initVal,initVal);for(var i=3;i<n;i+=3)
{if(this._vol.min.x>coords[i]){this._vol.min.x=coords[i];}
if(this._vol.min.y>coords[i+1]){this._vol.min.y=coords[i+1];}
if(this._vol.min.z>coords[i+2]){this._vol.min.z=coords[i+2];}
if(this._vol.max.x<coords[i]){this._vol.max.x=coords[i];}
if(this._vol.max.y<coords[i+1]){this._vol.max.y=coords[i+1];}
if(this._vol.max.z<coords[i+2]){this._vol.max.z=coords[i+2];}}
this._invalidate=false;}}
return this._vol;};x3dom.Mesh.prototype.invalidate=function()
{this._invalidate=true;this._vol.invalidate();};x3dom.Mesh.prototype.isValid=function()
{return this._vol.isValid();};x3dom.Mesh.prototype.getCenter=function()
{return this.getVolume().getCenter();};x3dom.Mesh.prototype.getDiameter=function()
{return this.getVolume().getDiameter();};x3dom.Mesh.prototype.doIntersect=function(line)
{var vol=this.getVolume();var isect=line.intersect(vol.min,vol.max);if(isect&&line.enter<line.dist)
{line.dist=line.enter;line.hitObject=this._parent;line.hitPoint=line.pos.add(line.dir.multiply(line.enter));}
return isect;};x3dom.Mesh.prototype.calcNormals=function(creaseAngle,ccw)
{if(ccw===undefined)
ccw=true;var multInd=this._multiIndIndices&&this._multiIndIndices.length;var idxs=multInd?this._multiIndIndices:this._indices[0];var coords=this._positions[0];var vertNormals=[];var vertFaceNormals=[];var i,j,m=coords.length;var a,b,n=null;var num=(this._posSize!==undefined&&this._posSize>m)?this._posSize/3:m/3;num=3*((num-Math.floor(num)>0)?Math.floor(num+1):num);for(i=0;i<num;++i){vertFaceNormals[i]=[];}
num=idxs.length;for(i=0;i<num;i+=3){var ind_i0,ind_i1,ind_i2;var t;if(!multInd){ind_i0=idxs[i]*3;ind_i1=idxs[i+1]*3;ind_i2=idxs[i+2]*3;t=new x3dom.fields.SFVec3f(coords[ind_i1],coords[ind_i1+1],coords[ind_i1+2]);a=new x3dom.fields.SFVec3f(coords[ind_i0],coords[ind_i0+1],coords[ind_i0+2]).subtract(t);b=t.subtract(new x3dom.fields.SFVec3f(coords[ind_i2],coords[ind_i2+1],coords[ind_i2+2]));ind_i0=i*3;ind_i1=(i+1)*3;ind_i2=(i+2)*3;}
else{ind_i0=i*3;ind_i1=(i+1)*3;ind_i2=(i+2)*3;t=new x3dom.fields.SFVec3f(coords[ind_i1],coords[ind_i1+1],coords[ind_i1+2]);a=new x3dom.fields.SFVec3f(coords[ind_i0],coords[ind_i0+1],coords[ind_i0+2]).subtract(t);b=t.subtract(new x3dom.fields.SFVec3f(coords[ind_i2],coords[ind_i2+1],coords[ind_i2+2]));}
n=a.cross(b).normalize();if(!ccw)
n=n.negate();if(creaseAngle<=x3dom.fields.Eps){vertNormals[ind_i0]=vertNormals[ind_i1]=vertNormals[ind_i2]=n.x;vertNormals[ind_i0+1]=vertNormals[ind_i1+1]=vertNormals[ind_i2+1]=n.y;vertNormals[ind_i0+2]=vertNormals[ind_i1+2]=vertNormals[ind_i2+2]=n.z;}
else{vertFaceNormals[idxs[i]].push(n);vertFaceNormals[idxs[i+1]].push(n);vertFaceNormals[idxs[i+2]].push(n);}}
if(creaseAngle>x3dom.fields.Eps)
{for(i=0;i<m;i+=3){var iThird=i/3;var arr;if(!multInd){arr=vertFaceNormals[iThird];}
else{arr=vertFaceNormals[idxs[iThird]];}
num=arr.length;n=new x3dom.fields.SFVec3f(0,0,0);for(j=0;j<num;++j){n=n.add(arr[j]);}
n=n.normalize();vertNormals[i]=n.x;vertNormals[i+1]=n.y;vertNormals[i+2]=n.z;}}
this._normals[0]=vertNormals;};x3dom.Mesh.prototype.splitMesh=function(primStride,checkMultiIndIndices)
{var pStride;var isMultiInd;if(typeof primStride===undefined){pStride=3;}else{pStride=primStride;}
if(typeof checkMultiIndIndices===undefined){checkMultiIndIndices=false;}
var MAX=x3dom.Utils.maxIndexableCoords;MAX=Math.floor(MAX/pStride)*pStride;if(this._positions[0].length/3<=MAX&&!checkMultiIndIndices){return;}
if(checkMultiIndIndices){isMultiInd=this._multiIndIndices&&this._multiIndIndices.length;}else{isMultiInd=false;}
var positions=this._positions[0];var normals=this._normals[0];var texCoords=this._texCoords[0];var colors=this._colors[0];var indices=isMultiInd?this._multiIndIndices:this._indices[0];var i=0;do
{this._positions[i]=[];this._normals[i]=[];this._texCoords[i]=[];this._colors[i]=[];this._indices[i]=[];var k=(indices.length-((i+1)*MAX)>=0);if(k){this._indices[i]=indices.slice(i*MAX,(i+1)*MAX);}else{this._indices[i]=indices.slice(i*MAX);}
if(!isMultiInd){if(i){var m=i*MAX;for(var j=0,l=this._indices[i].length;j<l;j++){this._indices[i][j]-=m;}}}else{for(var j=0,l=this._indices[i].length;j<l;j++){this._indices[i][j]=j;}}
if(k){this._positions[i]=positions.slice(i*MAX*3,3*(i+1)*MAX);}else{this._positions[i]=positions.slice(i*MAX*3);}
if(normals.length){if(k){this._normals[i]=normals.slice(i*MAX*3,3*(i+1)*MAX);}else{this._normals[i]=normals.slice(i*MAX*3);}}
if(texCoords.length){if(k){this._texCoords[i]=texCoords.slice(i*MAX*this._numTexComponents,this._numTexComponents*(i+1)*MAX);}else{this._texCoords[i]=texCoords.slice(i*MAX*this._numTexComponents);}}
if(colors.length){if(k){this._colors[i]=colors.slice(i*MAX*this._numColComponents,this._numColComponents*(i+1)*MAX);}else{this._colors[i]=colors.slice(i*MAX*this._numColComponents);}}}
while(positions.length>++i*MAX*3);};x3dom.Mesh.prototype.calcTexCoords=function(mode)
{this._texCoords[0]=[];if(mode.toLowerCase()==="sphere-local")
{for(var i=0,j=0,n=this._normals[0].length;i<n;i+=3)
{this._texCoords[0][j++]=0.5+this._normals[0][i]/2.0;this._texCoords[0][j++]=0.5+this._normals[0][i+1]/2.0;}}
else
{var min=new x3dom.fields.SFVec3f(0,0,0),max=new x3dom.fields.SFVec3f(0,0,0);var vol=this.getVolume();vol.getBounds(min,max);var dia=max.subtract(min);var S=0,T=1;if(dia.x>=dia.y)
{if(dia.x>=dia.z)
{S=0;T=dia.y>=dia.z?1:2;}
else
{S=2;T=0;}}
else
{if(dia.y>=dia.z)
{S=1;T=dia.x>=dia.z?0:2;}
else
{S=2;T=1;}}
var sDenom=1,tDenom=1;var sMin=0,tMin=0;switch(S){case 0:sDenom=dia.x;sMin=min.x;break;case 1:sDenom=dia.y;sMin=min.y;break;case 2:sDenom=dia.z;sMin=min.z;break;}
switch(T){case 0:tDenom=dia.x;tMin=min.x;break;case 1:tDenom=dia.y;tMin=min.y;break;case 2:tDenom=dia.z;tMin=min.z;break;}
for(var k=0,l=0,m=this._positions[0].length;k<m;k+=3)
{this._texCoords[0][l++]=(this._positions[0][k+S]-sMin)/sDenom;this._texCoords[0][l++]=(this._positions[0][k+T]-tMin)/tDenom;}}};if(typeof x3dom==="undefined")
{x3dom={extend:function(f){function G(){}
G.prototype=f.prototype||f;return new G();},debug:{logInfo:function(msg){console.log(msg);},logWarning:function(msg){console.warn(msg);},logError:function(msg){console.error(msg);}}};if(!Array.map){Array.map=function(array,fun,thisp){var len=array.length;var res=[];for(var i=0;i<len;i++){if(i in array){res[i]=fun.call(thisp,array[i],i,array);}}
return res;};}
console.log("Using x3dom fields.js as standalone math and/or base types library.");}
x3dom.fields={};var VecMath=x3dom.fields;x3dom.fields.Eps=0.000001;x3dom.fields.SFMatrix4f=function(_00,_01,_02,_03,_10,_11,_12,_13,_20,_21,_22,_23,_30,_31,_32,_33)
{if(arguments.length===0){this._00=1;this._01=0;this._02=0;this._03=0;this._10=0;this._11=1;this._12=0;this._13=0;this._20=0;this._21=0;this._22=1;this._23=0;this._30=0;this._31=0;this._32=0;this._33=1;}
else{this._00=_00;this._01=_01;this._02=_02;this._03=_03;this._10=_10;this._11=_11;this._12=_12;this._13=_13;this._20=_20;this._21=_21;this._22=_22;this._23=_23;this._30=_30;this._31=_31;this._32=_32;this._33=_33;}};x3dom.fields.SFMatrix4f.prototype.e0=function(){var baseVec=new x3dom.fields.SFVec3f(this._00,this._10,this._20);return baseVec.normalize();};x3dom.fields.SFMatrix4f.prototype.e1=function(){var baseVec=new x3dom.fields.SFVec3f(this._01,this._11,this._21);return baseVec.normalize();};x3dom.fields.SFMatrix4f.prototype.e2=function(){var baseVec=new x3dom.fields.SFVec3f(this._02,this._12,this._22);return baseVec.normalize();};x3dom.fields.SFMatrix4f.prototype.e3=function(){return new x3dom.fields.SFVec3f(this._03,this._13,this._23);};x3dom.fields.SFMatrix4f.copy=function(that){return new x3dom.fields.SFMatrix4f(that._00,that._01,that._02,that._03,that._10,that._11,that._12,that._13,that._20,that._21,that._22,that._23,that._30,that._31,that._32,that._33);};x3dom.fields.SFMatrix4f.prototype.copy=function(){return x3dom.fields.SFMatrix4f.copy(this);};x3dom.fields.SFMatrix4f.identity=function(){return new x3dom.fields.SFMatrix4f(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);};x3dom.fields.SFMatrix4f.zeroMatrix=function(){return new x3dom.fields.SFMatrix4f(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);};x3dom.fields.SFMatrix4f.translation=function(vec){return new x3dom.fields.SFMatrix4f(1,0,0,vec.x,0,1,0,vec.y,0,0,1,vec.z,0,0,0,1);};x3dom.fields.SFMatrix4f.rotationX=function(a){var c=Math.cos(a);var s=Math.sin(a);return new x3dom.fields.SFMatrix4f(1,0,0,0,0,c,-s,0,0,s,c,0,0,0,0,1);};x3dom.fields.SFMatrix4f.rotationY=function(a){var c=Math.cos(a);var s=Math.sin(a);return new x3dom.fields.SFMatrix4f(c,0,s,0,0,1,0,0,-s,0,c,0,0,0,0,1);};x3dom.fields.SFMatrix4f.rotationZ=function(a){var c=Math.cos(a);var s=Math.sin(a);return new x3dom.fields.SFMatrix4f(c,-s,0,0,s,c,0,0,0,0,1,0,0,0,0,1);};x3dom.fields.SFMatrix4f.rotationR=function(a,r){var c=Math.cos(a);var cc=1-c;var s=Math.sqrt(1-c*c);return new x3dom.fields.SFMatrix4f(c+cc*r.x*r.x,cc*r.x*r.y-r.z*s,cc*r.x*r.z+r.y*s,0,cc*r.x*r.y+r.z*s,c+cc*r.y*r.y,cc*r.y*r.z-r.x*s,0,cc*r.x*r.z-r.y*s,cc*r.y*r.z+r.x*s,c+cc*r.z*r.z,0,0,0,0,1);};x3dom.fields.SFMatrix4f.scale=function(vec){return new x3dom.fields.SFMatrix4f(vec.x,0,0,0,0,vec.y,0,0,0,0,vec.z,0,0,0,0,1);};x3dom.fields.SFMatrix4f.lookAt=function(from,at,up)
{var view=from.subtract(at).normalize();var right=up.normalize().cross(view).normalize();if(right.dot(right)<x3dom.fields.Eps){x3dom.debug.logWarning("View matrix is linearly dependent.");return x3dom.fields.SFMatrix4f.translation(from);}
var newUp=view.cross(right).normalize();var tmp=x3dom.fields.SFMatrix4f.identity();tmp.setValue(right,newUp,view,from);return tmp;};x3dom.fields.SFMatrix4f.perspectiveFrustum=function(left,right,bottom,top,near,far)
{return new x3dom.fields.SFMatrix4f(2*near/(right-left),0,(right+left)/(right-left),0,0,2*near/(top-bottom),(top+bottom)/(top-bottom),0,0,0,-(far+near)/(far-near),-2*far*near/(far-near),0,0,-1,0);};x3dom.fields.SFMatrix4f.perspective=function(fov,aspect,near,far)
{var f=1/Math.tan(fov/2);return new x3dom.fields.SFMatrix4f(f/aspect,0,0,0,0,f,0,0,0,0,(near+far)/(near-far),2*near*far/(near-far),0,0,-1,0);};x3dom.fields.SFMatrix4f.ortho=function(left,right,bottom,top,near,far,aspect)
{var rl=(right-left)/2;var tb=(top-bottom)/2;var fn=far-near;if(aspect===undefined)
aspect=1.0;if(aspect<(rl/tb))
tb=rl/aspect;else
rl=tb*aspect;left=-rl;right=rl;bottom=-tb;top=tb;rl*=2;tb*=2;return new x3dom.fields.SFMatrix4f(2/rl,0,0,-(right+left)/rl,0,2/tb,0,-(top+bottom)/tb,0,0,-2/fn,-(far+near)/fn,0,0,0,1);};x3dom.fields.SFMatrix4f.prototype.setTranslate=function(vec){this._03=vec.x;this._13=vec.y;this._23=vec.z;};x3dom.fields.SFMatrix4f.prototype.setScale=function(vec){this._00=vec.x;this._11=vec.y;this._22=vec.z;};x3dom.fields.SFMatrix4f.prototype.setRotate=function(quat){var xx=quat.x*quat.x;var xy=quat.x*quat.y;var xz=quat.x*quat.z;var yy=quat.y*quat.y;var yz=quat.y*quat.z;var zz=quat.z*quat.z;var wx=quat.w*quat.x;var wy=quat.w*quat.y;var wz=quat.w*quat.z;this._00=1-2*(yy+zz);this._01=2*(xy-wz);this._02=2*(xz+wy);this._10=2*(xy+wz);this._11=1-2*(xx+zz);this._12=2*(yz-wx);this._20=2*(xz-wy);this._21=2*(yz+wx);this._22=1-2*(xx+yy);};x3dom.fields.SFMatrix4f.parseRotation=function(str){var m=/^([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)$/.exec(str);var x=+m[1],y=+m[2],z=+m[3],a=+m[4];var d=Math.sqrt(x*x+y*y+z*z);if(d===0){x=1;y=z=0;}else{x/=d;y/=d;z/=d;}
var c=Math.cos(a);var s=Math.sin(a);var t=1-c;return new x3dom.fields.SFMatrix4f(t*x*x+c,t*x*y+s*z,t*x*z-s*y,0,t*x*y-s*z,t*y*y+c,t*y*z+s*x,0,t*x*z+s*y,t*y*z-s*x,t*z*z+c,0,0,0,0,1).transpose();};x3dom.fields.SFMatrix4f.parse=function(str){var needTranspose=false;var val=/matrix.*\((.+)\)/;if(val.exec(str)){str=RegExp.$1;needTranspose=true;}
var arr=Array.map(str.split(/[,\s]+/),function(n){return+n;});if(arr.length>=16)
{if(!needTranspose){return new x3dom.fields.SFMatrix4f(arr[0],arr[1],arr[2],arr[3],arr[4],arr[5],arr[6],arr[7],arr[8],arr[9],arr[10],arr[11],arr[12],arr[13],arr[14],arr[15]);}
else{return new x3dom.fields.SFMatrix4f(arr[0],arr[4],arr[8],arr[12],arr[1],arr[5],arr[9],arr[13],arr[2],arr[6],arr[10],arr[14],arr[3],arr[7],arr[11],arr[15]);}}
else if(arr.length===6){return new x3dom.fields.SFMatrix4f(arr[0],arr[1],0,arr[4],arr[2],arr[3],0,arr[5],0,0,1,0,0,0,0,1);}
else{x3dom.debug.logWarning("SFMatrix4f - can't parse string: "+str);return x3dom.fields.SFMatrix4f.identity();}};x3dom.fields.SFMatrix4f.prototype.mult=function(that){return new x3dom.fields.SFMatrix4f(this._00*that._00+this._01*that._10+this._02*that._20+this._03*that._30,this._00*that._01+this._01*that._11+this._02*that._21+this._03*that._31,this._00*that._02+this._01*that._12+this._02*that._22+this._03*that._32,this._00*that._03+this._01*that._13+this._02*that._23+this._03*that._33,this._10*that._00+this._11*that._10+this._12*that._20+this._13*that._30,this._10*that._01+this._11*that._11+this._12*that._21+this._13*that._31,this._10*that._02+this._11*that._12+this._12*that._22+this._13*that._32,this._10*that._03+this._11*that._13+this._12*that._23+this._13*that._33,this._20*that._00+this._21*that._10+this._22*that._20+this._23*that._30,this._20*that._01+this._21*that._11+this._22*that._21+this._23*that._31,this._20*that._02+this._21*that._12+this._22*that._22+this._23*that._32,this._20*that._03+this._21*that._13+this._22*that._23+this._23*that._33,this._30*that._00+this._31*that._10+this._32*that._20+this._33*that._30,this._30*that._01+this._31*that._11+this._32*that._21+this._33*that._31,this._30*that._02+this._31*that._12+this._32*that._22+this._33*that._32,this._30*that._03+this._31*that._13+this._32*that._23+this._33*that._33);};x3dom.fields.SFMatrix4f.prototype.multMatrixPnt=function(vec){return new x3dom.fields.SFVec3f(this._00*vec.x+this._01*vec.y+this._02*vec.z+this._03,this._10*vec.x+this._11*vec.y+this._12*vec.z+this._13,this._20*vec.x+this._21*vec.y+this._22*vec.z+this._23);};x3dom.fields.SFMatrix4f.prototype.multMatrixVec=function(vec){return new x3dom.fields.SFVec3f(this._00*vec.x+this._01*vec.y+this._02*vec.z,this._10*vec.x+this._11*vec.y+this._12*vec.z,this._20*vec.x+this._21*vec.y+this._22*vec.z);};x3dom.fields.SFMatrix4f.prototype.multFullMatrixPnt=function(vec){var w=this._30*vec.x+this._31*vec.y+this._32*vec.z+this._33;if(w){w=1.0/w;}
return new x3dom.fields.SFVec3f((this._00*vec.x+this._01*vec.y+this._02*vec.z+this._03)*w,(this._10*vec.x+this._11*vec.y+this._12*vec.z+this._13)*w,(this._20*vec.x+this._21*vec.y+this._22*vec.z+this._23)*w);};x3dom.fields.SFMatrix4f.prototype.multMatrixPlane=function(plane){var normal=new x3dom.fields.SFVec3f(plane.x,plane.y,plane.z);var memberPnt=normal.multiply(-plane.w);memberPnt=this.multMatrixPnt(memberPnt);var invTranspose=this.inverse().transpose();normal=invTranspose.multMatrixVec(normal);var d=-normal.dot(memberPnt);return new x3dom.fields.SFVec4f(normal.x,normal.y,normal.z,d);};x3dom.fields.SFMatrix4f.prototype.transpose=function(){return new x3dom.fields.SFMatrix4f(this._00,this._10,this._20,this._30,this._01,this._11,this._21,this._31,this._02,this._12,this._22,this._32,this._03,this._13,this._23,this._33);};x3dom.fields.SFMatrix4f.prototype.negate=function(){return new x3dom.fields.SFMatrix4f(-this._00,-this._01,-this._02,-this._03,-this._10,-this._11,-this._12,-this._13,-this._20,-this._21,-this._22,-this._23,-this._30,-this._31,-this._32,-this._33);};x3dom.fields.SFMatrix4f.prototype.multiply=function(s){return new x3dom.fields.SFMatrix4f(s*this._00,s*this._01,s*this._02,s*this._03,s*this._10,s*this._11,s*this._12,s*this._13,s*this._20,s*this._21,s*this._22,s*this._23,s*this._30,s*this._31,s*this._32,s*this._33);};x3dom.fields.SFMatrix4f.prototype.add=function(that){return new x3dom.fields.SFMatrix4f(this._00+that._00,this._01+that._01,this._02+that._02,this._03+that._03,this._10+that._10,this._11+that._11,this._12+that._12,this._13+that._13,this._20+that._20,this._21+that._21,this._22+that._22,this._23+that._23,this._30+that._30,this._31+that._31,this._32+that._32,this._33+that._33);};x3dom.fields.SFMatrix4f.prototype.addScaled=function(that,s){return new x3dom.fields.SFMatrix4f(this._00+s*that._00,this._01+s*that._01,this._02+s*that._02,this._03+s*that._03,this._10+s*that._10,this._11+s*that._11,this._12+s*that._12,this._13+s*that._13,this._20+s*that._20,this._21+s*that._21,this._22+s*that._22,this._23+s*that._23,this._30+s*that._30,this._31+s*that._31,this._32+s*that._32,this._33+s*that._33);};x3dom.fields.SFMatrix4f.prototype.setValues=function(that){this._00=that._00;this._01=that._01;this._02=that._02;this._03=that._03;this._10=that._10;this._11=that._11;this._12=that._12;this._13=that._13;this._20=that._20;this._21=that._21;this._22=that._22;this._23=that._23;this._30=that._30;this._31=that._31;this._32=that._32;this._33=that._33;};x3dom.fields.SFMatrix4f.prototype.setValue=function(v1,v2,v3,v4){this._00=v1.x;this._01=v2.x;this._02=v3.x;this._10=v1.y;this._11=v2.y;this._12=v3.y;this._20=v1.z;this._21=v2.z;this._22=v3.z;this._30=0;this._31=0;this._32=0;if(arguments.length>3){this._03=v4.x;this._13=v4.y;this._23=v4.z;this._33=1;}};x3dom.fields.SFMatrix4f.prototype.setFromArray=function(a){this._00=a[0];this._01=a[4];this._02=a[8];this._03=a[12];this._10=a[1];this._11=a[5];this._12=a[9];this._13=a[13];this._20=a[2];this._21=a[6];this._22=a[10];this._23=a[14];this._30=a[3];this._31=a[7];this._32=a[11];this._33=a[15];};x3dom.fields.SFMatrix4f.prototype.toGL=function(){return[this._00,this._10,this._20,this._30,this._01,this._11,this._21,this._31,this._02,this._12,this._22,this._32,this._03,this._13,this._23,this._33];};x3dom.fields.SFMatrix4f.prototype.at=function(i,j){var field="_"+i+j;return this[field];};x3dom.fields.SFMatrix4f.prototype.sqrt=function(){var Y=x3dom.fields.SFMatrix4f.identity();var result=x3dom.fields.SFMatrix4f.copy(this);for(var i=0;i<6;i++)
{var iX=result.inverse();var iY=(i==0)?x3dom.fields.SFMatrix4f.identity():Y.inverse();var rd=result.det(),yd=Y.det();var g=Math.abs(Math.pow(rd*yd,-0.125));var ig=1.0/g;result=result.multiply(g);result=result.addScaled(iY,ig);result=result.multiply(0.5);Y=Y.multiply(g);Y=Y.addScaled(iX,ig);Y=Y.multiply(0.5);}
return result;};x3dom.fields.SFMatrix4f.prototype.normInfinity=function(){var t=0,m=0;if((t=Math.abs(this._00))>m){m=t;}
if((t=Math.abs(this._01))>m){m=t;}
if((t=Math.abs(this._02))>m){m=t;}
if((t=Math.abs(this._03))>m){m=t;}
if((t=Math.abs(this._10))>m){m=t;}
if((t=Math.abs(this._11))>m){m=t;}
if((t=Math.abs(this._12))>m){m=t;}
if((t=Math.abs(this._13))>m){m=t;}
if((t=Math.abs(this._20))>m){m=t;}
if((t=Math.abs(this._21))>m){m=t;}
if((t=Math.abs(this._22))>m){m=t;}
if((t=Math.abs(this._23))>m){m=t;}
if((t=Math.abs(this._30))>m){m=t;}
if((t=Math.abs(this._31))>m){m=t;}
if((t=Math.abs(this._32))>m){m=t;}
if((t=Math.abs(this._33))>m){m=t;}
return m;};x3dom.fields.SFMatrix4f.prototype.norm1_3x3=function(){var max=Math.abs(this._00)+
Math.abs(this._10)+
Math.abs(this._20);var t=0;if((t=Math.abs(this._01)+
Math.abs(this._11)+
Math.abs(this._21))>max){max=t;}
if((t=Math.abs(this._02)+
Math.abs(this._12)+
Math.abs(this._22))>max){max=t;}
return max;};x3dom.fields.SFMatrix4f.prototype.normInf_3x3=function(){var max=Math.abs(this._00)+
Math.abs(this._01)+
Math.abs(this._02);var t=0;if((t=Math.abs(this._10)+
Math.abs(this._11)+
Math.abs(this._12))>max){max=t;}
if((t=Math.abs(this._20)+
Math.abs(this._21)+
Math.abs(this._22))>max){max=t;}
return max;};x3dom.fields.SFMatrix4f.prototype.adjointT_3x3=function(){var result=x3dom.fields.SFMatrix4f.identity();result._00=this._11*this._22-this._12*this._21;result._01=this._12*this._20-this._10*this._22;result._02=this._10*this._21-this._11*this._20;result._10=this._21*this._02-this._22*this._01;result._11=this._22*this._00-this._20*this._02;result._12=this._20*this._01-this._21*this._00;result._20=this._01*this._12-this._02*this._11;result._21=this._02*this._10-this._00*this._12;result._22=this._00*this._11-this._01*this._10;return result;};x3dom.fields.SFMatrix4f.prototype.equals=function(that){var eps=0.000000000001;return Math.abs(this._00-that._00)<eps&&Math.abs(this._01-that._01)<eps&&Math.abs(this._02-that._02)<eps&&Math.abs(this._03-that._03)<eps&&Math.abs(this._10-that._10)<eps&&Math.abs(this._11-that._11)<eps&&Math.abs(this._12-that._12)<eps&&Math.abs(this._13-that._13)<eps&&Math.abs(this._20-that._20)<eps&&Math.abs(this._21-that._21)<eps&&Math.abs(this._22-that._22)<eps&&Math.abs(this._23-that._23)<eps&&Math.abs(this._30-that._30)<eps&&Math.abs(this._31-that._31)<eps&&Math.abs(this._32-that._32)<eps&&Math.abs(this._33-that._33)<eps;};x3dom.fields.SFMatrix4f.prototype.getTransform=function(translation,rotation,scaleFactor,scaleOrientation,center)
{var m=null;if(arguments.length>4){m=x3dom.fields.SFMatrix4f.translation(center.negate());m=m.mult(this);var c=x3dom.fields.SFMatrix4f.translation(center);m=m.mult(c);}
else{m=x3dom.fields.SFMatrix4f.copy(this);}
var flip=m.decompose(translation,rotation,scaleFactor,scaleOrientation);scaleFactor.setValues(scaleFactor.multiply(flip));};x3dom.fields.SFMatrix4f.prototype.decompose=function(t,r,s,so)
{var A=x3dom.fields.SFMatrix4f.copy(this);var Q=x3dom.fields.SFMatrix4f.identity(),S=x3dom.fields.SFMatrix4f.identity(),SO=x3dom.fields.SFMatrix4f.identity();t.x=A._03;t.y=A._13;t.z=A._23;A._03=0.0;A._13=0.0;A._23=0.0;A._30=0.0;A._31=0.0;A._32=0.0;var det=A.polarDecompose(Q,S);var f=1.0;if(det<0.0){Q=Q.negate();f=-1.0;}
r.setValue(Q);S.spectralDecompose(SO,s);so.setValue(SO);return f;};x3dom.fields.SFMatrix4f.prototype.polarDecompose=function(Q,S)
{var TOL=0.000000000001;var Mk=this.transpose();var Ek=x3dom.fields.SFMatrix4f.identity();var Mk_one=Mk.norm1_3x3();var Mk_inf=Mk.normInf_3x3();var MkAdjT;var MkAdjT_one,MkAdjT_inf;var Ek_one,Mk_det;do
{MkAdjT=Mk.adjointT_3x3();Mk_det=Mk._00*MkAdjT._00+
Mk._01*MkAdjT._01+
Mk._02*MkAdjT._02;if(Mk_det==0.0)
{x3dom.debug.logWarning("polarDecompose: Mk_det == 0.0");break;}
MkAdjT_one=MkAdjT.norm1_3x3();MkAdjT_inf=MkAdjT.normInf_3x3();var gamma=Math.sqrt(Math.sqrt((MkAdjT_one*MkAdjT_inf)/(Mk_one*Mk_inf))/Math.abs(Mk_det));var g1=0.5*gamma;var g2=0.5/(gamma*Mk_det);Ek.setValues(Mk);Mk=Mk.multiply(g1);Mk=Mk.addScaled(MkAdjT,g2);Ek=Ek.addScaled(Mk,-1.0);Ek_one=Ek.norm1_3x3();Mk_one=Mk.norm1_3x3();Mk_inf=Mk.normInf_3x3();}while(Ek_one>(Mk_one*TOL));Q.setValues(Mk.transpose());S.setValues(Mk.mult(this));for(var i=0;i<3;++i)
{for(var j=i;j<3;++j)
{S['_'+j+i]=0.5*(S['_'+j+i]+S['_'+i+j]);S['_'+i+j]=0.5*(S['_'+j+i]+S['_'+i+j]);}}
return Mk_det;};x3dom.fields.SFMatrix4f.prototype.spectralDecompose=function(SO,k)
{var next=[1,2,0];var maxIterations=20;var diag=[this._00,this._11,this._22];var offDiag=[this._12,this._20,this._01];for(var iter=0;iter<maxIterations;++iter)
{var sm=Math.abs(offDiag[0])+Math.abs(offDiag[1])+Math.abs(offDiag[2]);if(sm==0){break;}
for(var i=2;i>=0;--i)
{var p=next[i];var q=next[p];var absOffDiag=Math.abs(offDiag[i]);var g=100.0*absOffDiag;if(absOffDiag>0.0)
{var t=0,h=diag[q]-diag[p];var absh=Math.abs(h);if(absh+g==absh)
{t=offDiag[i]/h;}
else
{var theta=0.5*h/offDiag[i];t=1.0/(Math.abs(theta)+Math.sqrt(theta*theta+1.0));t=theta<0.0?-t:t;}
var c=1.0/Math.sqrt(t*t+1.0);var s=t*c;var tau=s/(c+1.0);var ta=t*offDiag[i];offDiag[i]=0.0;diag[p]-=ta;diag[q]+=ta;var offDiagq=offDiag[q];offDiag[q]-=s*(offDiag[p]+tau*offDiagq);offDiag[p]+=s*(offDiagq-tau*offDiag[p]);for(var j=2;j>=0;--j)
{var a=SO['_'+j+p];var b=SO['_'+j+q];SO['_'+j+p]-=s*(b+tau*a);SO['_'+j+q]+=s*(a-tau*b);}}}}
k.x=diag[0];k.y=diag[1];k.z=diag[2];};x3dom.fields.SFMatrix4f.prototype.log=function(){var maxiter=12;var eps=1e-12;var A=x3dom.fields.SFMatrix4f.copy(this),Z=x3dom.fields.SFMatrix4f.copy(this);Z._00-=1;Z._11-=1;Z._22-=1;Z._33-=1;var k=0;while(Z.normInfinity()>0.5)
{A=A.sqrt();Z.setValues(A);Z._00-=1;Z._11-=1;Z._22-=1;Z._33-=1;k++;}
A._00-=1;A._11-=1;A._22-=1;A._33-=1;A=A.negate();Z.setValues(A);var result=x3dom.fields.SFMatrix4f.copy(A);var i=1;while(Z.normInfinity()>eps&&i<maxiter)
{Z=Z.mult(A);i++;result=result.addScaled(Z,1.0/i);}
return result.multiply(-(1<<k));};x3dom.fields.SFMatrix4f.prototype.exp=function(){var q=6;var A=x3dom.fields.SFMatrix4f.copy(this),D=x3dom.fields.SFMatrix4f.identity(),N=x3dom.fields.SFMatrix4f.identity(),result=x3dom.fields.SFMatrix4f.identity();var k=0,c=1.0;var j=1.0+parseInt(Math.log(A.normInfinity()/0.693));if(j<0){j=0;}
A=A.multiply(1.0/(1<<j));for(k=1;k<=q;k++)
{c*=(q-k+1)/(k*(2*q-k+1));result=A.mult(result);N=N.addScaled(result,c);if(k%2){D=D.addScaled(result,-c);}
else{D=D.addScaled(result,c);}}
result=D.inverse().mult(N);for(k=0;k<j;k++)
{result=result.mult(result);}
return result;};x3dom.fields.SFMatrix4f.prototype.det3=function(a1,a2,a3,b1,b2,b3,c1,c2,c3){return((a1*b2*c3)+(a2*b3*c1)+(a3*b1*c2)-
(a1*b3*c2)-(a2*b1*c3)-(a3*b2*c1));};x3dom.fields.SFMatrix4f.prototype.det=function(){var a1=this._00;var b1=this._10;var c1=this._20;var d1=this._30;var a2=this._01;var b2=this._11;var c2=this._21;var d2=this._31;var a3=this._02;var b3=this._12;var c3=this._22;var d3=this._32;var a4=this._03;var b4=this._13;var c4=this._23;var d4=this._33;return(a1*this.det3(b2,b3,b4,c2,c3,c4,d2,d3,d4)-
b1*this.det3(a2,a3,a4,c2,c3,c4,d2,d3,d4)+
c1*this.det3(a2,a3,a4,b2,b3,b4,d2,d3,d4)-
d1*this.det3(a2,a3,a4,b2,b3,b4,c2,c3,c4));};x3dom.fields.SFMatrix4f.prototype.inverse=function(){var a1=this._00;var b1=this._10;var c1=this._20;var d1=this._30;var a2=this._01;var b2=this._11;var c2=this._21;var d2=this._31;var a3=this._02;var b3=this._12;var c3=this._22;var d3=this._32;var a4=this._03;var b4=this._13;var c4=this._23;var d4=this._33;var rDet=this.det();if(rDet==0)
{x3dom.debug.logWarning("Invert matrix: singular matrix, no inverse!");return x3dom.fields.SFMatrix4f.identity();}
rDet=1.0/rDet;return new x3dom.fields.SFMatrix4f(+this.det3(b2,b3,b4,c2,c3,c4,d2,d3,d4)*rDet,-this.det3(a2,a3,a4,c2,c3,c4,d2,d3,d4)*rDet,+this.det3(a2,a3,a4,b2,b3,b4,d2,d3,d4)*rDet,-this.det3(a2,a3,a4,b2,b3,b4,c2,c3,c4)*rDet,-this.det3(b1,b3,b4,c1,c3,c4,d1,d3,d4)*rDet,+this.det3(a1,a3,a4,c1,c3,c4,d1,d3,d4)*rDet,-this.det3(a1,a3,a4,b1,b3,b4,d1,d3,d4)*rDet,+this.det3(a1,a3,a4,b1,b3,b4,c1,c3,c4)*rDet,+this.det3(b1,b2,b4,c1,c2,c4,d1,d2,d4)*rDet,-this.det3(a1,a2,a4,c1,c2,c4,d1,d2,d4)*rDet,+this.det3(a1,a2,a4,b1,b2,b4,d1,d2,d4)*rDet,-this.det3(a1,a2,a4,b1,b2,b4,c1,c2,c4)*rDet,-this.det3(b1,b2,b3,c1,c2,c3,d1,d2,d3)*rDet,+this.det3(a1,a2,a3,c1,c2,c3,d1,d2,d3)*rDet,-this.det3(a1,a2,a3,b1,b2,b3,d1,d2,d3)*rDet,+this.det3(a1,a2,a3,b1,b2,b3,c1,c2,c3)*rDet);};x3dom.fields.SFMatrix4f.prototype.getEulerAngles=function(){var theta_1,theta_2,theta;var phi_1,phi_2,phi;var psi_1,psi_2,psi;var cos_theta_1,cos_theta_2;if(Math.abs((Math.abs(this._20)-1.0))>0.0001){theta_1=-Math.asin(this._20);theta_2=Math.PI-theta_1;cos_theta_1=Math.cos(theta_1);cos_theta_2=Math.cos(theta_2);psi_1=Math.atan2(this._21/cos_theta_1,this._22/cos_theta_1);psi_2=Math.atan2(this._21/cos_theta_2,this._22/cos_theta_2);phi_1=Math.atan2(this._10/cos_theta_1,this._00/cos_theta_1);phi_2=Math.atan2(this._10/cos_theta_2,this._00/cos_theta_2);return[psi_1,theta_1,phi_1,psi_2,theta_2,phi_2];}
else{phi=0;if(this._20==-1.0){theta=Math.PI/2.0;psi=phi+Math.atan2(this._01,this._02);}
else{theta=-(Math.PI/2.0);psi=-phi+Math.atan2(-this._01,-this._02);}
return[psi,theta,phi,psi,theta,phi];}};x3dom.fields.SFMatrix4f.prototype.toString=function(){return'\n'+
this._00.toFixed(6)+', '+this._01.toFixed(6)+', '+
this._02.toFixed(6)+', '+this._03.toFixed(6)+', \n'+
this._10.toFixed(6)+', '+this._11.toFixed(6)+', '+
this._12.toFixed(6)+', '+this._13.toFixed(6)+', \n'+
this._20.toFixed(6)+', '+this._21.toFixed(6)+', '+
this._22.toFixed(6)+', '+this._23.toFixed(6)+', \n'+
this._30.toFixed(6)+', '+this._31.toFixed(6)+', '+
this._32.toFixed(6)+', '+this._33.toFixed(6);};x3dom.fields.SFMatrix4f.prototype.setValueByStr=function(str){var needTranspose=false;var val=/matrix.*\((.+)\)/;if(val.exec(str)){str=RegExp.$1;needTranspose=true;}
var arr=Array.map(str.split(/[,\s]+/),function(n){return+n;});if(arr.length>=16)
{if(!needTranspose){this._00=arr[0];this._01=arr[1];this._02=arr[2];this._03=arr[3];this._10=arr[4];this._11=arr[5];this._12=arr[6];this._13=arr[7];this._20=arr[8];this._21=arr[9];this._22=arr[10];this._23=arr[11];this._30=arr[12];this._31=arr[13];this._32=arr[14];this._33=arr[15];}
else{this._00=arr[0];this._01=arr[4];this._02=arr[8];this._03=arr[12];this._10=arr[1];this._11=arr[5];this._12=arr[9];this._13=arr[13];this._20=arr[2];this._21=arr[6];this._22=arr[10];this._23=arr[14];this._30=arr[3];this._31=arr[7];this._32=arr[11];this._33=arr[15];}}
else if(arr.length===6){this._00=arr[0];this._01=arr[1];this._02=0;this._03=arr[4];this._10=arr[2];this._11=arr[3];this._12=0;this._13=arr[5];this._20=0;this._21=0;this._22=1;this._23=0;this._30=0;this._31=0;this._32=0;this._33=1;}
else{x3dom.debug.logWarning("SFMatrix4f - can't parse string: "+str);}
return this;};x3dom.fields.SFVec2f=function(x,y){if(arguments.length===0){this.x=0;this.y=0;}
else{this.x=x;this.y=y;}};x3dom.fields.SFVec2f.copy=function(v){return new x3dom.fields.SFVec2f(v.x,v.y);};x3dom.fields.SFVec2f.parse=function(str){var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);return new x3dom.fields.SFVec2f(+m[1],+m[2]);};x3dom.fields.SFVec2f.prototype.copy=function(){return x3dom.fields.SFVec2f.copy(this);};x3dom.fields.SFVec2f.prototype.setValues=function(that){this.x=that.x;this.y=that.y;};x3dom.fields.SFVec2f.prototype.at=function(i){switch(i){case 0:return this.x;case 1:return this.y;default:return this.x;}};x3dom.fields.SFVec2f.prototype.add=function(that){return new x3dom.fields.SFVec2f(this.x+that.x,this.y+that.y);};x3dom.fields.SFVec2f.prototype.subtract=function(that){return new x3dom.fields.SFVec2f(this.x-that.x,this.y-that.y);};x3dom.fields.SFVec2f.prototype.negate=function(){return new x3dom.fields.SFVec2f(-this.x,-this.y);};x3dom.fields.SFVec2f.prototype.dot=function(that){return this.x*that.x+this.y*that.y;};x3dom.fields.SFVec2f.prototype.reflect=function(n){var d2=this.dot(n)*2;return new x3dom.fields.SFVec2f(this.x-d2*n.x,this.y-d2*n.y);};x3dom.fields.SFVec2f.prototype.normalize=function(){var n=this.length();if(n){n=1.0/n;}
return new x3dom.fields.SFVec2f(this.x*n,this.y*n);};x3dom.fields.SFVec2f.prototype.multComponents=function(that){return new x3dom.fields.SFVec2f(this.x*that.x,this.y*that.y);};x3dom.fields.SFVec2f.prototype.multiply=function(n){return new x3dom.fields.SFVec2f(this.x*n,this.y*n);};x3dom.fields.SFVec2f.prototype.divide=function(n){var denom=n?(1.0/n):1.0;return new x3dom.fields.SFVec2f(this.x*denom,this.y*denom);};x3dom.fields.SFVec2f.prototype.equals=function(that,eps){return Math.abs(this.x-that.x)<eps&&Math.abs(this.y-that.y)<eps;};x3dom.fields.SFVec2f.prototype.length=function(){return Math.sqrt((this.x*this.x)+(this.y*this.y));};x3dom.fields.SFVec2f.prototype.toGL=function(){return[this.x,this.y];};x3dom.fields.SFVec2f.prototype.toString=function(){return this.x+" "+this.y;};x3dom.fields.SFVec2f.prototype.setValueByStr=function(str){var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);this.x=+m[1];this.y=+m[2];return this;};x3dom.fields.SFVec3f=function(x,y,z){if(arguments.length===0){this.x=0;this.y=0;this.z=0;}
else{this.x=x;this.y=y;this.z=z;}};x3dom.fields.SFVec3f.NullVector=new x3dom.fields.SFVec3f(0,0,0);x3dom.fields.SFVec3f.OneVector=new x3dom.fields.SFVec3f(1,1,1);x3dom.fields.SFVec3f.copy=function(v){return new x3dom.fields.SFVec3f(v.x,v.y,v.z);};x3dom.fields.SFVec3f.MIN=function(){return new x3dom.fields.SFVec3f(-Number.MAX_VALUE,-Number.MAX_VALUE,-Number.MAX_VALUE);};x3dom.fields.SFVec3f.MAX=function(){return new x3dom.fields.SFVec3f(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE);};x3dom.fields.SFVec3f.parse=function(str){try{var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);return new x3dom.fields.SFVec3f(+m[1],+m[2],+m[3]);}
catch(e){var c=x3dom.fields.SFColor.colorParse(str);return new x3dom.fields.SFVec3f(c.r,c.g,c.b);}};x3dom.fields.SFVec3f.prototype.copy=function(){return x3dom.fields.SFVec3f.copy(this);};x3dom.fields.SFVec3f.prototype.setValues=function(that){this.x=that.x;this.y=that.y;this.z=that.z;};x3dom.fields.SFVec3f.prototype.at=function(i){switch(i){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:return this.x;}};x3dom.fields.SFVec3f.prototype.add=function(that){return new x3dom.fields.SFVec3f(this.x+that.x,this.y+that.y,this.z+that.z);};x3dom.fields.SFVec3f.prototype.addScaled=function(that,s){return new x3dom.fields.SFVec3f(this.x+s*that.x,this.y+s*that.y,this.z+s*that.z);};x3dom.fields.SFVec3f.prototype.subtract=function(that){return new x3dom.fields.SFVec3f(this.x-that.x,this.y-that.y,this.z-that.z);};x3dom.fields.SFVec3f.prototype.negate=function(){return new x3dom.fields.SFVec3f(-this.x,-this.y,-this.z);};x3dom.fields.SFVec3f.prototype.dot=function(that){return(this.x*that.x+this.y*that.y+this.z*that.z);};x3dom.fields.SFVec3f.prototype.cross=function(that){return new x3dom.fields.SFVec3f(this.y*that.z-this.z*that.y,this.z*that.x-this.x*that.z,this.x*that.y-this.y*that.x);};x3dom.fields.SFVec3f.prototype.reflect=function(n){var d2=this.dot(n)*2;return new x3dom.fields.SFVec3f(this.x-d2*n.x,this.y-d2*n.y,this.z-d2*n.z);};x3dom.fields.SFVec3f.prototype.length=function(){return Math.sqrt((this.x*this.x)+(this.y*this.y)+(this.z*this.z));};x3dom.fields.SFVec3f.prototype.normalize=function(){var n=this.length();if(n){n=1.0/n;}
return new x3dom.fields.SFVec3f(this.x*n,this.y*n,this.z*n);};x3dom.fields.SFVec3f.prototype.multComponents=function(that){return new x3dom.fields.SFVec3f(this.x*that.x,this.y*that.y,this.z*that.z);};x3dom.fields.SFVec3f.prototype.multiply=function(n){return new x3dom.fields.SFVec3f(this.x*n,this.y*n,this.z*n);};x3dom.fields.SFVec3f.prototype.divide=function(n){var denom=n?(1.0/n):1.0;return new x3dom.fields.SFVec3f(this.x*denom,this.y*denom,this.z*denom);};x3dom.fields.SFVec3f.prototype.equals=function(that,eps){return Math.abs(this.x-that.x)<eps&&Math.abs(this.y-that.y)<eps&&Math.abs(this.z-that.z)<eps;};x3dom.fields.SFVec3f.prototype.toGL=function(){return[this.x,this.y,this.z];};x3dom.fields.SFVec3f.prototype.toString=function(){return this.x+" "+this.y+" "+this.z;};x3dom.fields.SFVec3f.prototype.setValueByStr=function(str){try{var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);this.x=+m[1];this.y=+m[2];this.z=+m[3];}
catch(e){var c=x3dom.fields.SFColor.colorParse(str);this.x=c.r;this.y=c.g;this.z=c.b;}
return this;};x3dom.fields.SFVec4f=function(x,y,z,w){if(arguments.length===0){this.x=0;this.y=0;this.z=0;this.w=0;}
else{this.x=x;this.y=y;this.z=z;this.w=w;}};x3dom.fields.SFVec4f.copy=function(v){return new x3dom.fields.SFVec4f(v.x,v.y,v.z,v.w);};x3dom.fields.SFVec4f.prototype.copy=function(){return x3dom.fields.SFVec4f(this);};x3dom.fields.SFVec4f.parse=function(str){var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);return new x3dom.fields.SFVec4f(+m[1],+m[2],+m[3],+m[4]);};x3dom.fields.SFVec4f.prototype.setValueByStr=function(str){var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);this.x=+m[1];this.y=+m[2];this.z=+m[3];this.w=+m[4];return this;};x3dom.fields.SFVec4f.prototype.toGL=function(){return[this.x,this.y,this.z,this.w];};x3dom.fields.SFVec4f.prototype.toString=function(){return this.x+" "+this.y+" "+this.z+" "+this.w;};x3dom.fields.Quaternion=function(x,y,z,w){if(arguments.length===0){this.x=0;this.y=0;this.z=0;this.w=1;}
else{this.x=x;this.y=y;this.z=z;this.w=w;}};x3dom.fields.Quaternion.copy=function(v){return new x3dom.fields.Quaternion(v.x,v.y,v.z,v.w);};x3dom.fields.Quaternion.prototype.multiply=function(that){return new x3dom.fields.Quaternion(this.w*that.x+this.x*that.w+this.y*that.z-this.z*that.y,this.w*that.y+this.y*that.w+this.z*that.x-this.x*that.z,this.w*that.z+this.z*that.w+this.x*that.y-this.y*that.x,this.w*that.w-this.x*that.x-this.y*that.y-this.z*that.z);};x3dom.fields.Quaternion.parseAxisAngle=function(str){var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);return x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(+m[1],+m[2],+m[3]),+m[4]);};x3dom.fields.Quaternion.axisAngle=function(axis,a){var t=axis.length();if(t>x3dom.fields.Eps)
{var s=Math.sin(a/2)/t;var c=Math.cos(a/2);return new x3dom.fields.Quaternion(axis.x*s,axis.y*s,axis.z*s,c);}
else
{return new x3dom.fields.Quaternion(0,0,0,1);}};x3dom.fields.Quaternion.prototype.copy=function(){return x3dom.fields.Quaternion(this);};x3dom.fields.Quaternion.prototype.toMatrix=function(){var xx=this.x*this.x;var xy=this.x*this.y;var xz=this.x*this.z;var yy=this.y*this.y;var yz=this.y*this.z;var zz=this.z*this.z;var wx=this.w*this.x;var wy=this.w*this.y;var wz=this.w*this.z;return new x3dom.fields.SFMatrix4f(1-2*(yy+zz),2*(xy-wz),2*(xz+wy),0,2*(xy+wz),1-2*(xx+zz),2*(yz-wx),0,2*(xz-wy),2*(yz+wx),1-2*(xx+yy),0,0,0,0,1);};x3dom.fields.Quaternion.prototype.toAxisAngle=function()
{var x=0,y=0,z=0;var s=0,a=0;var that=this;if(this.w>1)
{that=x3dom.fields.Quaternion.normalize(this);}
a=2*Math.acos(that.w);s=Math.sqrt(1-that.w*that.w);if(s==0)
{x=that.x;y=that.y;z=that.z;}
else
{x=that.x/s;y=that.y/s;z=that.z/s;}
return[new x3dom.fields.SFVec3f(x,y,z),a];};x3dom.fields.Quaternion.prototype.angle=function()
{return 2*Math.acos(this.w);};x3dom.fields.Quaternion.prototype.setValue=function(matrix)
{var tr,s=1;var qt=[0,0,0];var i=0,j=0,k=0;var nxt=[1,2,0];tr=matrix._00+matrix._11+matrix._22;if(tr>0.0)
{s=Math.sqrt(tr+1.0);this.w=s*0.5;s=0.5/s;this.x=(matrix._21-matrix._12)*s;this.y=(matrix._02-matrix._20)*s;this.z=(matrix._10-matrix._01)*s;}
else
{if(matrix._11>matrix._00){i=1;}
else{i=0;}
if(matrix._22>matrix.at(i,i)){i=2;}
j=nxt[i];k=nxt[j];s=Math.sqrt(matrix.at(i,i)-(matrix.at(j,j)+matrix.at(k,k))+1.0);qt[i]=s*0.5;s=0.5/s;this.w=(matrix.at(k,j)-matrix.at(j,k))*s;qt[j]=(matrix.at(j,i)+matrix.at(i,j))*s;qt[k]=(matrix.at(k,i)+matrix.at(i,k))*s;this.x=qt[0];this.y=qt[1];this.z=qt[2];}
if(this.w>1.0||this.w<-1.0)
{var errThreshold=1+(x3dom.fields.Eps*100);if(this.w>errThreshold||this.w<-errThreshold)
{x3dom.debug.logInfo("MatToQuat: BUG: |quat[4]| ("+this.w+") >> 1.0 !");}
if(this.w>1.0){this.w=1.0;}
else{this.w=-1.0;}}};x3dom.fields.Quaternion.prototype.setFromEuler=function(alpha,beta,gamma){var sx=Math.sin(alpha*0.5);var cx=Math.cos(alpha*0.5);var sy=Math.sin(beta*0.5);var cy=Math.cos(beta*0.5);var sz=Math.sin(gamma*0.5);var cz=Math.cos(gamma*0.5);this.x=(sx*cy*cz)-(cx*sy*sz);this.y=(cx*sy*cz)+(sx*cy*sz);this.z=(cx*cy*sz)-(sx*sy*cz);this.w=(cx*cy*cz)+(sx*sy*sz);};x3dom.fields.Quaternion.prototype.dot=function(that){return this.x*that.x+this.y*that.y+this.z*that.z+this.w*that.w;};x3dom.fields.Quaternion.prototype.add=function(that){return new x3dom.fields.Quaternion(this.x+that.x,this.y+that.y,this.z+that.z,this.w+that.w);};x3dom.fields.Quaternion.prototype.subtract=function(that){return new x3dom.fields.Quaternion(this.x-that.x,this.y-that.y,this.z-that.z,this.w-that.w);};x3dom.fields.Quaternion.prototype.setValues=function(that){this.x=that.x;this.y=that.y;this.z=that.z;this.w=that.w;};x3dom.fields.Quaternion.prototype.equals=function(that,eps){return(this.dot(that)>=1.0-eps);};x3dom.fields.Quaternion.prototype.multScalar=function(s){return new x3dom.fields.Quaternion(this.x*s,this.y*s,this.z*s,this.w*s);};x3dom.fields.Quaternion.prototype.normalize=function(that){var d2=this.dot(that);var id=1.0;if(d2){id=1.0/Math.sqrt(d2);}
return new x3dom.fields.Quaternion(this.x*id,this.y*id,this.z*id,this.w*id);};x3dom.fields.Quaternion.prototype.negate=function(){return new x3dom.fields.Quaternion(-this.x,-this.y,-this.z,-this.w);};x3dom.fields.Quaternion.prototype.inverse=function(){return new x3dom.fields.Quaternion(-this.x,-this.y,-this.z,this.w);};x3dom.fields.Quaternion.prototype.slerp=function(that,t){var cosom=this.dot(that);var rot1;if(cosom<0.0)
{cosom=-cosom;rot1=that.negate();}
else
{rot1=new x3dom.fields.Quaternion(that.x,that.y,that.z,that.w);}
var scalerot0,scalerot1;if((1.0-cosom)>0.00001)
{var omega=Math.acos(cosom);var sinom=Math.sin(omega);scalerot0=Math.sin((1.0-t)*omega)/sinom;scalerot1=Math.sin(t*omega)/sinom;}
else
{scalerot0=1.0-t;scalerot1=t;}
return this.multScalar(scalerot0).add(rot1.multScalar(scalerot1));};x3dom.fields.Quaternion.rotateFromTo=function(fromVec,toVec){var from=fromVec.normalize();var to=toVec.normalize();var cost=from.dot(to);if(cost>0.99999)
{return new x3dom.fields.Quaternion(0,0,0,1);}
else if(cost<-0.99999)
{var cAxis=new x3dom.fields.SFVec3f(1,0,0);var tmp=from.cross(cAxis);if(tmp.length()<0.00001)
{cAxis.x=0;cAxis.y=1;cAxis.z=0;tmp=from.cross(cAxis);}
tmp=tmp.normalize();return x3dom.fields.Quaternion.axisAngle(tmp,Math.PI);}
var axis=fromVec.cross(toVec);axis=axis.normalize();var s=Math.sqrt(0.5*(1.0-cost));axis=axis.multiply(s);s=Math.sqrt(0.5*(1.0+cost));return new x3dom.fields.Quaternion(axis.x,axis.y,axis.z,s);};x3dom.fields.Quaternion.prototype.toGL=function(){var val=this.toAxisAngle();return[val[0].x,val[0].y,val[0].z,val[1]];};x3dom.fields.Quaternion.prototype.toString=function(){return this.x+" "+this.y+" "+this.z+", "+this.w;};x3dom.fields.Quaternion.prototype.setValueByStr=function(str){var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);var quat=x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(+m[1],+m[2],+m[3]),+m[4]);this.x=quat.x;this.y=quat.y;this.z=quat.z;this.w=quat.w;return this;};x3dom.fields.SFColor=function(r,g,b){if(arguments.length===0){this.r=0;this.g=0;this.b=0;}
else{this.r=r;this.g=g;this.b=b;}};x3dom.fields.SFColor.parse=function(str){try{var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);return new x3dom.fields.SFColor(+m[1],+m[2],+m[3]);}
catch(e){return x3dom.fields.SFColor.colorParse(str);}};x3dom.fields.SFColor.copy=function(that){return new x3dom.fields.SFColor(that.r,that.g,that.b);};x3dom.fields.SFColor.prototype.copy=function(){return x3dom.fields.SFColor.copy(this);};x3dom.fields.SFColor.prototype.setHSV=function(h,s,v){x3dom.debug.logWarning("SFColor.setHSV() NYI");};x3dom.fields.SFColor.prototype.getHSV=function(){var h=0,s=0,v=0;x3dom.debug.logWarning("SFColor.getHSV() NYI");return[h,s,v];};x3dom.fields.SFColor.prototype.setValues=function(color){this.r=color.r;this.g=color.g;this.b=color.b;};x3dom.fields.SFColor.prototype.equals=function(that,eps){return Math.abs(this.r-that.r)<eps&&Math.abs(this.g-that.g)<eps&&Math.abs(this.b-that.b)<eps;};x3dom.fields.SFColor.prototype.add=function(that){return new x3dom.fields.SFColor(this.r+that.r,this.g+that.g,this.b+that.b);};x3dom.fields.SFColor.prototype.subtract=function(that){return new x3dom.fields.SFColor(this.r-that.r,this.g-that.g,this.b-that.b);};x3dom.fields.SFColor.prototype.multiply=function(n){return new x3dom.fields.SFColor(this.r*n,this.g*n,this.b*n);};x3dom.fields.SFColor.prototype.toGL=function(){return[this.r,this.g,this.b];};x3dom.fields.SFColor.prototype.toString=function(){return this.r+" "+this.g+" "+this.b;};x3dom.fields.SFColor.prototype.setValueByStr=function(str){try{var m=/^\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*$/.exec(str);this.r=+m[1];this.g=+m[2];this.b=+m[3];}
catch(e){var c=x3dom.fields.SFColor.colorParse(str);this.r=c.r;this.g=c.g;this.b=c.b;}
return this;};x3dom.fields.SFColor.colorParse=function(color){var red=0,green=0,blue=0;var color_names={aliceblue:'f0f8ff',antiquewhite:'faebd7',aqua:'00ffff',aquamarine:'7fffd4',azure:'f0ffff',beige:'f5f5dc',bisque:'ffe4c4',black:'000000',blanchedalmond:'ffebcd',blue:'0000ff',blueviolet:'8a2be2',brown:'a52a2a',burlywood:'deb887',cadetblue:'5f9ea0',chartreuse:'7fff00',chocolate:'d2691e',coral:'ff7f50',cornflowerblue:'6495ed',cornsilk:'fff8dc',crimson:'dc143c',cyan:'00ffff',darkblue:'00008b',darkcyan:'008b8b',darkgoldenrod:'b8860b',darkgray:'a9a9a9',darkgreen:'006400',darkkhaki:'bdb76b',darkmagenta:'8b008b',darkolivegreen:'556b2f',darkorange:'ff8c00',darkorchid:'9932cc',darkred:'8b0000',darksalmon:'e9967a',darkseagreen:'8fbc8f',darkslateblue:'483d8b',darkslategray:'2f4f4f',darkturquoise:'00ced1',darkviolet:'9400d3',deeppink:'ff1493',deepskyblue:'00bfff',dimgray:'696969',dodgerblue:'1e90ff',feldspar:'d19275',firebrick:'b22222',floralwhite:'fffaf0',forestgreen:'228b22',fuchsia:'ff00ff',gainsboro:'dcdcdc',ghostwhite:'f8f8ff',gold:'ffd700',goldenrod:'daa520',gray:'808080',green:'008000',greenyellow:'adff2f',honeydew:'f0fff0',hotpink:'ff69b4',indianred:'cd5c5c',indigo:'4b0082',ivory:'fffff0',khaki:'f0e68c',lavender:'e6e6fa',lavenderblush:'fff0f5',lawngreen:'7cfc00',lemonchiffon:'fffacd',lightblue:'add8e6',lightcoral:'f08080',lightcyan:'e0ffff',lightgoldenrodyellow:'fafad2',lightgrey:'d3d3d3',lightgreen:'90ee90',lightpink:'ffb6c1',lightsalmon:'ffa07a',lightseagreen:'20b2aa',lightskyblue:'87cefa',lightslateblue:'8470ff',lightslategray:'778899',lightsteelblue:'b0c4de',lightyellow:'ffffe0',lime:'00ff00',limegreen:'32cd32',linen:'faf0e6',magenta:'ff00ff',maroon:'800000',mediumaquamarine:'66cdaa',mediumblue:'0000cd',mediumorchid:'ba55d3',mediumpurple:'9370d8',mediumseagreen:'3cb371',mediumslateblue:'7b68ee',mediumspringgreen:'00fa9a',mediumturquoise:'48d1cc',mediumvioletred:'c71585',midnightblue:'191970',mintcream:'f5fffa',mistyrose:'ffe4e1',moccasin:'ffe4b5',navajowhite:'ffdead',navy:'000080',oldlace:'fdf5e6',olive:'808000',olivedrab:'6b8e23',orange:'ffa500',orangered:'ff4500',orchid:'da70d6',palegoldenrod:'eee8aa',palegreen:'98fb98',paleturquoise:'afeeee',palevioletred:'d87093',papayawhip:'ffefd5',peachpuff:'ffdab9',peru:'cd853f',pink:'ffc0cb',plum:'dda0dd',powderblue:'b0e0e6',purple:'800080',red:'ff0000',rosybrown:'bc8f8f',royalblue:'4169e1',saddlebrown:'8b4513',salmon:'fa8072',sandybrown:'f4a460',seagreen:'2e8b57',seashell:'fff5ee',sienna:'a0522d',silver:'c0c0c0',skyblue:'87ceeb',slateblue:'6a5acd',slategray:'708090',snow:'fffafa',springgreen:'00ff7f',steelblue:'4682b4',tan:'d2b48c',teal:'008080',thistle:'d8bfd8',tomato:'ff6347',turquoise:'40e0d0',violet:'ee82ee',violetred:'d02090',wheat:'f5deb3',white:'ffffff',whitesmoke:'f5f5f5',yellow:'ffff00',yellowgreen:'9acd32'};if(color_names[color]){color="#"+color_names[color];}
if(color.substr&&color.substr(0,1)==="#"){color=color.substr(1);var len=color.length;if(len===6){red=parseInt("0x"+color.substr(0,2),16)/255.0;green=parseInt("0x"+color.substr(2,2),16)/255.0;blue=parseInt("0x"+color.substr(4,2),16)/255.0;}
else if(len===3){red=parseInt("0x"+color.substr(0,1),16)/15.0;green=parseInt("0x"+color.substr(1,1),16)/15.0;blue=parseInt("0x"+color.substr(2,1),16)/15.0;}}
return new x3dom.fields.SFColor(red,green,blue);};x3dom.fields.SFColorRGBA=function(r,g,b,a){if(arguments.length===0){this.r=0;this.g=0;this.b=0;this.a=1;}
else{this.r=r;this.g=g;this.b=b;this.a=a;}};x3dom.fields.SFColorRGBA.parse=function(str){try{var m=/^([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)$/.exec(str);return new x3dom.fields.SFColorRGBA(+m[1],+m[2],+m[3],+m[4]);}
catch(e){return x3dom.fields.SFColorRGBA.colorParse(str);}};x3dom.fields.SFColorRGBA.copy=function(that){return new x3dom.fields.SFColorRGBA(that.r,that.g,that.b,that.a);};x3dom.fields.SFColorRGBA.prototype.copy=function(){return x3dom.fields.SFColorRGBA.copy(this);};x3dom.fields.SFColorRGBA.prototype.setValues=function(color){this.r=color.r;this.g=color.g;this.b=color.b;this.a=color.a;};x3dom.fields.SFColorRGBA.prototype.equals=function(that,eps){return Math.abs(this.r-that.r)<eps&&Math.abs(this.g-that.g)<eps&&Math.abs(this.b-that.b)<eps&&Math.abs(this.a-that.a)<eps;};x3dom.fields.SFColorRGBA.prototype.toGL=function(){return[this.r,this.g,this.b,this.a];};x3dom.fields.SFColorRGBA.prototype.toString=function(){return this.r+" "+this.g+" "+this.b+" "+this.a;};x3dom.fields.SFColorRGBA.prototype.setValueByStr=function(str){try{var m=/^([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)\s*,?\s*([+\-]?\d*\.*\d*[eE]?[+\-]?\d*?)$/.exec(str);this.r=+m[1];this.g=+m[2];this.b=+m[3];this.a=+m[4];}
catch(e){var c=x3dom.fields.SFColorRGBA.colorParse(str);this.r=c.r;this.g=c.g;this.b=c.b;this.a=c.a;}
return this;};x3dom.fields.SFColorRGBA.prototype.toUint=function(){return((Math.round(this.r*255)<<24)|(Math.round(this.g*255)<<16)|(Math.round(this.b*255)<<8)|Math.round(this.a*255))>>>0;};x3dom.fields.SFColorRGBA.colorParse=function(color){var red=0,green=0,blue=0,alpha=0;var color_names={aliceblue:'f0f8ff',antiquewhite:'faebd7',aqua:'00ffff',aquamarine:'7fffd4',azure:'f0ffff',beige:'f5f5dc',bisque:'ffe4c4',black:'000000',blanchedalmond:'ffebcd',blue:'0000ff',blueviolet:'8a2be2',brown:'a52a2a',burlywood:'deb887',cadetblue:'5f9ea0',chartreuse:'7fff00',chocolate:'d2691e',coral:'ff7f50',cornflowerblue:'6495ed',cornsilk:'fff8dc',crimson:'dc143c',cyan:'00ffff',darkblue:'00008b',darkcyan:'008b8b',darkgoldenrod:'b8860b',darkgray:'a9a9a9',darkgreen:'006400',darkkhaki:'bdb76b',darkmagenta:'8b008b',darkolivegreen:'556b2f',darkorange:'ff8c00',darkorchid:'9932cc',darkred:'8b0000',darksalmon:'e9967a',darkseagreen:'8fbc8f',darkslateblue:'483d8b',darkslategray:'2f4f4f',darkturquoise:'00ced1',darkviolet:'9400d3',deeppink:'ff1493',deepskyblue:'00bfff',dimgray:'696969',dodgerblue:'1e90ff',feldspar:'d19275',firebrick:'b22222',floralwhite:'fffaf0',forestgreen:'228b22',fuchsia:'ff00ff',gainsboro:'dcdcdc',ghostwhite:'f8f8ff',gold:'ffd700',goldenrod:'daa520',gray:'808080',green:'008000',greenyellow:'adff2f',honeydew:'f0fff0',hotpink:'ff69b4',indianred:'cd5c5c',indigo:'4b0082',ivory:'fffff0',khaki:'f0e68c',lavender:'e6e6fa',lavenderblush:'fff0f5',lawngreen:'7cfc00',lemonchiffon:'fffacd',lightblue:'add8e6',lightcoral:'f08080',lightcyan:'e0ffff',lightgoldenrodyellow:'fafad2',lightgrey:'d3d3d3',lightgreen:'90ee90',lightpink:'ffb6c1',lightsalmon:'ffa07a',lightseagreen:'20b2aa',lightskyblue:'87cefa',lightslateblue:'8470ff',lightslategray:'778899',lightsteelblue:'b0c4de',lightyellow:'ffffe0',lime:'00ff00',limegreen:'32cd32',linen:'faf0e6',magenta:'ff00ff',maroon:'800000',mediumaquamarine:'66cdaa',mediumblue:'0000cd',mediumorchid:'ba55d3',mediumpurple:'9370d8',mediumseagreen:'3cb371',mediumslateblue:'7b68ee',mediumspringgreen:'00fa9a',mediumturquoise:'48d1cc',mediumvioletred:'c71585',midnightblue:'191970',mintcream:'f5fffa',mistyrose:'ffe4e1',moccasin:'ffe4b5',navajowhite:'ffdead',navy:'000080',oldlace:'fdf5e6',olive:'808000',olivedrab:'6b8e23',orange:'ffa500',orangered:'ff4500',orchid:'da70d6',palegoldenrod:'eee8aa',palegreen:'98fb98',paleturquoise:'afeeee',palevioletred:'d87093',papayawhip:'ffefd5',peachpuff:'ffdab9',peru:'cd853f',pink:'ffc0cb',plum:'dda0dd',powderblue:'b0e0e6',purple:'800080',red:'ff0000',rosybrown:'bc8f8f',royalblue:'4169e1',saddlebrown:'8b4513',salmon:'fa8072',sandybrown:'f4a460',seagreen:'2e8b57',seashell:'fff5ee',sienna:'a0522d',silver:'c0c0c0',skyblue:'87ceeb',slateblue:'6a5acd',slategray:'708090',snow:'fffafa',springgreen:'00ff7f',steelblue:'4682b4',tan:'d2b48c',teal:'008080',thistle:'d8bfd8',tomato:'ff6347',turquoise:'40e0d0',violet:'ee82ee',violetred:'d02090',wheat:'f5deb3',white:'ffffff',whitesmoke:'f5f5f5',yellow:'ffff00',yellowgreen:'9acd32'};if(color_names[color]){color="#"+color_names[color]+"ff";}
if(color.substr&&color.substr(0,1)==="#"){color=color.substr(1);var len=color.length;if(len===8){red=parseInt("0x"+color.substr(0,2),16)/255.0;green=parseInt("0x"+color.substr(2,2),16)/255.0;blue=parseInt("0x"+color.substr(4,2),16)/255.0;alpha=parseInt("0x"+color.substr(6,2),16)/255.0;}
else if(len===6){red=parseInt("0x"+color.substr(0,2),16)/255.0;green=parseInt("0x"+color.substr(2,2),16)/255.0;blue=parseInt("0x"+color.substr(4,2),16)/255.0;alpha=1.0;}
else if(len===4){red=parseInt("0x"+color.substr(0,1),16)/15.0;green=parseInt("0x"+color.substr(1,1),16)/15.0;blue=parseInt("0x"+color.substr(2,1),16)/15.0;alpha=parseInt("0x"+color.substr(3,1),16)/15.0;}
else if(len===3){red=parseInt("0x"+color.substr(0,1),16)/15.0;green=parseInt("0x"+color.substr(1,1),16)/15.0;blue=parseInt("0x"+color.substr(2,1),16)/15.0;alpha=1.0;}}
return new x3dom.fields.SFColorRGBA(red,green,blue,alpha);};x3dom.fields.SFImage=function(w,h,c,arr){if(arguments.length===0||!(arr&&arr.map)){this.width=0;this.height=0;this.comp=0;this.array=[];}
else{this.width=w;this.height=h;this.comp=c;var that=this.array;arr.map(function(v){that.push(v);},this.array);}};x3dom.fields.SFImage.parse=function(str){var img=new x3dom.fields.SFImage();img.setValueByStr(str);return img;};x3dom.fields.SFImage.copy=function(that){var destination=new x3dom.fields.SFImage();destination.width=that.width;destination.height=that.height;destination.comp=that.comp;destination.setPixels(that.array);return destination;};x3dom.fields.SFImage.prototype.copy=function(){return x3dom.fields.SFImage.copy(this);};x3dom.fields.SFImage.prototype.setValueByStr=function(str){var mc=str.match(/(\w+)/g);var n=mc.length;var c2=0;var hex="0123456789ABCDEF";this.array=[];if(n>2){this.width=+mc[0];this.height=+mc[1];this.comp=+mc[2];c2=2*this.comp;}else{this.width=0;this.height=0;this.comp=0;return;}
var len,i;for(i=3;i<n;i++){var r,g,b,a;if(!mc[i].substr){continue;}
if(mc[i].substr(1,1).toLowerCase()!=="x"){var inp=parseInt(mc[i],10);if(this.comp===1){r=inp;this.array.push(r);}
else if(this.comp===2){r=inp>>8&255;g=inp&255;this.array.push(r,g);}
else if(this.comp===3){r=inp>>16&255;g=inp>>8&255;b=inp&255;this.array.push(r,g,b);}
else if(this.comp===4){r=inp>>24&255;g=inp>>16&255;b=inp>>8&255;a=inp&255;this.array.push(r,g,b,a);}}
else if(mc[i].substr(1,1).toLowerCase()==="x"){mc[i]=mc[i].substr(2);len=mc[i].length;if(len===c2){if(this.comp===1){r=parseInt("0x"+mc[i].substr(0,2),16);this.array.push(r);}
else if(this.comp===2){r=parseInt("0x"+mc[i].substr(0,2),16);g=parseInt("0x"+mc[i].substr(2,2),16);this.array.push(r,g);}
else if(this.comp===3){r=parseInt("0x"+mc[i].substr(0,2),16);g=parseInt("0x"+mc[i].substr(2,2),16);b=parseInt("0x"+mc[i].substr(4,2),16);this.array.push(r,g,b);}
else if(this.comp===4){r=parseInt("0x"+mc[i].substr(0,2),16);g=parseInt("0x"+mc[i].substr(2,2),16);b=parseInt("0x"+mc[i].substr(4,2),16);a=parseInt("0x"+mc[i].substr(6,2),16);this.array.push(r,g,b,a);}}}}};x3dom.fields.SFImage.prototype.setPixel=function(x,y,color){var startIdx=(y*this.width+x)*this.comp;if(this.comp===1&&startIdx<this.array.length){this.array[startIdx]=color.r*255;}
else if(this.comp===2&&(startIdx+1)<this.array.length){this.array[startIdx]=color.r*255;this.array[startIdx+1]=color.g*255;}
else if(this.comp===3&&(startIdx+2)<this.array.length){this.array[startIdx]=color.r*255;this.array[startIdx+1]=color.g*255;this.array[startIdx+2]=color.b*255;}
else if(this.comp===4&&(startIdx+3)<this.array.length){this.array[startIdx]=color.r*255;this.array[startIdx+1]=color.g*255;this.array[startIdx+2]=color.b*255;this.array[startIdx+3]=color.a*255;}};x3dom.fields.SFImage.prototype.getPixel=function(x,y){var startIdx=(y*this.width+x)*this.comp;if(this.comp===1&&startIdx<this.array.length){return new x3dom.fields.SFColorRGBA(this.array[startIdx]/255,0,0,1);}
else if(this.comp===2&&(startIdx+1)<this.array.length){return new x3dom.fields.SFColorRGBA(this.array[startIdx]/255,this.array[startIdx+1]/255,0,1);}
else if(this.comp===3&&(startIdx+2)<this.array.length){return new x3dom.fields.SFColorRGBA(this.array[startIdx]/255,this.array[startIdx+1]/255,this.array[startIdx+2]/255,1);}
else if(this.comp===4&&(startIdx+3)<this.array.length){return new x3dom.fields.SFColorRGBA(this.array[startIdx]/255,this.array[startIdx+1]/255,this.array[startIdx+2]/255,this.array[startIdx+3]/255);}};x3dom.fields.SFImage.prototype.setPixels=function(pixels){var i,idx=0;if(this.comp===1){for(i=0;i<pixels.length;i++){this.array[idx++]=pixels[i].r*255;}}
else if(this.comp===2){for(i=0;i<pixels.length;i++){this.array[idx++]=pixels[i].r*255;this.array[idx++]=pixels[i].g*255;}}
else if(this.comp===3){for(i=0;i<pixels.length;i++){this.array[idx++]=pixels[i].r*255;this.array[idx++]=pixels[i].g*255;this.array[idx++]=pixels[i].b*255;}}
else if(this.comp===4){for(i=0;i<pixels.length;i++){this.array[idx++]=pixels[i].r*255;this.array[idx++]=pixels[i].g*255;this.array[idx++]=pixels[i].b*255;this.array[idx++]=pixels[i].a*255;}}};x3dom.fields.SFImage.prototype.getPixels=function(){var i;var pixels=[];if(this.comp===1){for(i=0;i<this.array.length;i+=this.comp){pixels.push(new x3dom.fields.SFColorRGBA(this.array[i]/255,0,0,1));}}
else if(this.comp===2){for(i=0;i<this.array.length;i+=this.comp){pixels.push(new x3dom.fields.SFColorRGBA(this.array[i]/255,this.array[i+1]/255,0,1));}}
else if(this.comp===3){for(i=0;i<this.array.length;i+=this.comp){pixels.push(new x3dom.fields.SFColorRGBA(this.array[i]/255,this.array[i+1]/255,this.array[i+2]/255,1));}}
else if(this.comp===4){for(i=0;i<this.array.length;i+=this.comp){pixels.push(new x3dom.fields.SFColorRGBA(this.array[i]/255,this.array[i+1]/255,this.array[i+2]/255,this.array[i+3]/255));}}
return pixels;};x3dom.fields.SFImage.prototype.toGL=function(){var a=[];Array.map(this.array,function(c){a.push(c);});return a;};x3dom.fields.MFColor=function(colorArray){if(colorArray){var that=this;colorArray.map(function(c){that.push(c);},this);}};x3dom.fields.MFColor.copy=function(colorArray){var destination=new x3dom.fields.MFColor();colorArray.map(function(v){destination.push(v.copy());},this);return destination;};x3dom.fields.MFColor.prototype=x3dom.extend([]);x3dom.fields.MFColor.parse=function(str){var mc=str.match(/([+\-0-9eE\.]+)/g);var colors=[];for(var i=0,n=mc?mc.length:0;i<n;i+=3){colors.push(new x3dom.fields.SFColor(+mc[i+0],+mc[i+1],+mc[i+2]));}
return new x3dom.fields.MFColor(colors);};x3dom.fields.MFColor.prototype.copy=function(){return x3dom.fields.MFColor.copy(this);};x3dom.fields.MFColor.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-0-9eE\.]+)/g);for(var i=0,n=mc?mc.length:0;i<n;i+=3){this.push(new x3dom.fields.SFColor(+mc[i+0],+mc[i+1],+mc[i+2]));}};x3dom.fields.MFColor.prototype.toGL=function(){var a=[];Array.map(this,function(c){a.push(c.r);a.push(c.g);a.push(c.b);});return a;};x3dom.fields.MFColorRGBA=function(colorArray){if(colorArray){var that=this;colorArray.map(function(c){that.push(c);},this);}};x3dom.fields.MFColorRGBA.copy=function(colorArray){var destination=new x3dom.fields.MFColorRGBA();colorArray.map(function(v){destination.push(v.copy());},this);return destination;};x3dom.fields.MFColorRGBA.prototype=x3dom.extend([]);x3dom.fields.MFColorRGBA.parse=function(str){var mc=str.match(/([+\-0-9eE\.]+)/g);var colors=[];for(var i=0,n=mc?mc.length:0;i<n;i+=4){colors.push(new x3dom.fields.SFColorRGBA(+mc[i+0],+mc[i+1],+mc[i+2],+mc[i+3]));}
return new x3dom.fields.MFColorRGBA(colors);};x3dom.fields.MFColorRGBA.prototype.copy=function(){return x3dom.fields.MFColorRGBA.copy(this);};x3dom.fields.MFColorRGBA.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-0-9eE\.]+)/g);for(var i=0,n=mc?mc.length:0;i<n;i+=4){this.push(new x3dom.fields.SFColorRGBA(+mc[i+0],+mc[i+1],+mc[i+2],+mc[i+3]));}};x3dom.fields.MFColorRGBA.prototype.toGL=function(){var a=[];Array.map(this,function(c){a.push(c.r);a.push(c.g);a.push(c.b);a.push(c.a);});return a;};x3dom.fields.MFRotation=function(rotArray){if(rotArray){var that=this;rotArray.map(function(v){that.push(v);},this);}};x3dom.fields.MFRotation.prototype=x3dom.extend([]);x3dom.fields.MFRotation.copy=function(rotationArray){var destination=new x3dom.fields.MFRotation();rotationArray.map(function(v){destination.push(v.copy());},this);return destination;};x3dom.fields.MFRotation.prototype.copy=function(){return x3dom.fields.MFRotation.copy(this);};x3dom.fields.MFRotation.parse=function(str){var mc=str.match(/([+\-0-9eE\.]+)/g);var vecs=[];for(var i=0,n=mc?mc.length:0;i<n;i+=4){vecs.push(x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(+mc[i+0],+mc[i+1],+mc[i+2]),+mc[i+3]));}
return new x3dom.fields.MFRotation(vecs);};x3dom.fields.MFRotation.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-0-9eE\.]+)/g);for(var i=0,n=mc?mc.length:0;i<n;i+=4){this.push(x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(+mc[i+0],+mc[i+1],+mc[i+2]),+mc[i+3]));}};x3dom.fields.MFRotation.prototype.toGL=function(){var a=[];Array.map(this,function(c){var val=c.toAxisAngle();a.push(val[0].x);a.push(val[0].y);a.push(val[0].z);a.push(val[1]);});return a;};x3dom.fields.MFVec3f=function(vec3Array){if(vec3Array){var that=this;vec3Array.map(function(v){that.push(v);},this);}};x3dom.fields.MFVec3f.prototype=x3dom.extend([]);x3dom.fields.MFVec3f.copy=function(vec3Array){var destination=new x3dom.fields.MFVec3f();vec3Array.map(function(v){destination.push(v.copy());},this);return destination;};x3dom.fields.MFVec3f.parse=function(str){var mc=str.match(/([+\-0-9eE\.]+)/g);var vecs=[];for(var i=0,n=mc?mc.length:0;i<n;i+=3){vecs.push(new x3dom.fields.SFVec3f(+mc[i+0],+mc[i+1],+mc[i+2]));}
return new x3dom.fields.MFVec3f(vecs);};x3dom.fields.MFVec3f.prototype.copy=function()
{x3dom.fields.MFVec3f.copy(this);};x3dom.fields.MFVec3f.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-0-9eE\.]+)/g);for(var i=0,n=mc?mc.length:0;i<n;i+=3){this.push(new x3dom.fields.SFVec3f(+mc[i+0],+mc[i+1],+mc[i+2]));}};x3dom.fields.MFVec3f.prototype.toGL=function(){var a=[];Array.map(this,function(c){a.push(c.x);a.push(c.y);a.push(c.z);});return a;};x3dom.fields.MFVec2f=function(vec2Array){if(vec2Array){var that=this;vec2Array.map(function(v){that.push(v);},this);}};x3dom.fields.MFVec2f.prototype=x3dom.extend([]);x3dom.fields.MFVec2f.copy=function(vec2Array){var destination=new x3dom.fields.MFVec2f();vec2Array.map(function(v){destination.push(v.copy());},this);return destination;};x3dom.fields.MFVec2f.parse=function(str){var mc=str.match(/([+\-0-9eE\.]+)/g);var vecs=[];for(var i=0,n=mc?mc.length:0;i<n;i+=2){vecs.push(new x3dom.fields.SFVec2f(+mc[i+0],+mc[i+1]));}
return new x3dom.fields.MFVec2f(vecs);};x3dom.fields.MFVec2f.prototype.copy=function(){return x3dom.fields.MFVec2f.copy(this);};x3dom.fields.MFVec2f.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-0-9eE\.]+)/g);for(var i=0,n=mc?mc.length:0;i<n;i+=2){this.push(new x3dom.fields.SFVec2f(+mc[i+0],+mc[i+1]));}};x3dom.fields.MFVec2f.prototype.toGL=function(){var a=[];Array.map(this,function(v){a.push(v.x);a.push(v.y);});return a;};x3dom.fields.MFInt32=function(array){if(array){var that=this;array.map(function(v){that.push(v);},this);}};x3dom.fields.MFInt32.prototype=x3dom.extend([]);x3dom.fields.MFInt32.copy=function(intArray){var destination=new x3dom.fields.MFInt32();intArray.map(function(v){destination.push(v);},this);return destination;};x3dom.fields.MFInt32.parse=function(str){var mc=str.match(/([+\-]?\d+\s*){1},?\s*/g);var vals=[];for(var i=0,n=mc?mc.length:0;i<n;++i){vals.push(parseInt(mc[i],10));}
return new x3dom.fields.MFInt32(vals);};x3dom.fields.MFInt32.prototype.copy=function(){return x3dom.fields.MFInt32.copy(this);};x3dom.fields.MFInt32.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-]?\d+\s*){1},?\s*/g);for(var i=0,n=mc?mc.length:0;i<n;++i){this.push(parseInt(mc[i],10));}};x3dom.fields.MFInt32.prototype.toGL=function(){var a=[];Array.map(this,function(v){a.push(v);});return a;};x3dom.fields.MFFloat=function(array){if(array){var that=this;array.map(function(v){that.push(v);},this);}};x3dom.fields.MFFloat.prototype=x3dom.extend([]);x3dom.fields.MFFloat.copy=function(floatArray){var destination=new x3dom.fields.MFFloat();floatArray.map(function(v){destination.push(v);},this);return destination;};x3dom.fields.MFFloat.parse=function(str){var mc=str.match(/([+\-0-9eE\.]+)/g);var vals=[];for(var i=0,n=mc?mc.length:0;i<n;i++){vals.push(+mc[i]);}
return new x3dom.fields.MFFloat(vals);};x3dom.fields.MFFloat.prototype.copy=function(){return x3dom.fields.MFFloat.copy(this);};x3dom.fields.MFFloat.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/([+\-0-9eE\.]+)/g);for(var i=0,n=mc?mc.length:0;i<n;i++){this.push(+mc[i]);}};x3dom.fields.MFFloat.prototype.toGL=function(){var a=[];Array.map(this,function(v){a.push(v);});return a;};x3dom.fields.MFBoolean=function(array){if(array){var that=this;array.map(function(v){that.push(v);},this);}};x3dom.fields.MFBoolean.prototype=x3dom.extend([]);x3dom.fields.MFBoolean.copy=function(boolArray){var destination=new x3dom.fields.MFBoolean();boolArray.map(function(v){destination.push(v);},this);return destination;};x3dom.fields.MFBoolean.parse=function(str){var mc=str.match(/(true|false|1|0)/ig);var vals=[];for(var i=0,n=mc?mc.length:0;i<n;i++){vals.push((mc[i]=='1'||mc[i].toLowerCase()=='true'));}
return new x3dom.fields.MFBoolean(vals);};x3dom.fields.MFBoolean.prototype.copy=function(){return x3dom.fields.MFBoolean.copy(this);};x3dom.fields.MFBoolean.prototype.setValueByStr=function(str){this.length=0;var mc=str.match(/(true|false|1|0)/ig);for(var i=0,n=mc?mc.length:0;i<n;i++){this.push((mc[i]=='1'||mc[i].toLowerCase()=='true'));}};x3dom.fields.MFBoolean.prototype.toGL=function(){var a=[];Array.map(this,function(v){a.push(v?1:0);});return a;};x3dom.fields.MFString=function(strArray){if(strArray&&strArray.map){var that=this;strArray.map(function(v){that.push(v);},this);}};x3dom.fields.MFString.prototype=x3dom.extend([]);x3dom.fields.MFString.copy=function(stringArray){var destination=new x3dom.fields.MFString();stringArray.map(function(v){destination.push(v);},this);return destination;};x3dom.fields.MFString.parse=function(str){var arr=[];if(str.length&&str[0]=='"'){var m,re=/"((?:[^\\"]|\\\\|\\")*)"/g;while((m=re.exec(str))){var s=m[1].replace(/\\([\\"])/,"$1");if(s!==undefined){arr.push(s);}}}
else{arr.push(str);}
return new x3dom.fields.MFString(arr);};x3dom.fields.MFString.prototype.copy=function(){return x3dom.fields.MFString.copy(this);};x3dom.fields.MFString.prototype.setValueByStr=function(str){this.length=0;if(str.length&&str[0]=='"'){var m,re=/"((?:[^\\"]|\\\\|\\")*)"/g;while((m=re.exec(str))){var s=m[1].replace(/\\([\\"])/,"$1");if(s!==undefined){this.push(s);}}}
else{this.push(str);}
return this;};x3dom.fields.MFString.prototype.toString=function(){var str="";for(var i=0,n=this.length;i<n;i++){str=str+this[i]+" ";}
return str;};x3dom.fields.SFNode=function(type){this.type=type;this.node=null;};x3dom.fields.SFNode.prototype.hasLink=function(node){return(node?(this.node===node):this.node);};x3dom.fields.SFNode.prototype.addLink=function(node){this.node=node;return true;};x3dom.fields.SFNode.prototype.rmLink=function(node){if(this.node===node){this.node=null;return true;}
else{return false;}};x3dom.fields.MFNode=function(type){this.type=type;this.nodes=[];};x3dom.fields.MFNode.prototype.hasLink=function(node){if(node){for(var i=0,n=this.nodes.length;i<n;i++){if(this.nodes[i]===node){return true;}}}
else{return(this.length>0);}
return false;};x3dom.fields.MFNode.prototype.addLink=function(node){this.nodes.push(node);return true;};x3dom.fields.MFNode.prototype.rmLink=function(node){for(var i=0,n=this.nodes.length;i<n;i++){if(this.nodes[i]===node){this.nodes.splice(i,1);return true;}}
return false;};x3dom.fields.MFNode.prototype.length=function(){return this.nodes.length;};x3dom.fields.Line=function(pos,dir)
{if(arguments.length===0)
{this.pos=new x3dom.fields.SFVec3f(0,0,0);this.dir=new x3dom.fields.SFVec3f(0,0,1);}
this.pos=x3dom.fields.SFVec3f.copy(pos);this.dir=x3dom.fields.SFVec3f.copy(dir);};x3dom.fields.Line.prototype.closestPoint=function(p)
{var distVec=p.subtract(this.pos);var projDist=distVec.dot(this.dir);return this.pos.add(this.dir.multiply(projDist));};x3dom.fields.Line.prototype.shortestDistance=function(p)
{var distVec=p.subtract(this.pos);var projDist=distVec.dot(this.dir);return distVec.subtract(this.dir.multiply(projDist)).length();};x3dom.fields.Ray=function(pos,dir)
{if(arguments.length===0)
{this.pos=new x3dom.fields.SFVec3f(0,0,0);this.dir=new x3dom.fields.SFVec3f(0,0,1);}
else
{this.pos=new x3dom.fields.SFVec3f(pos.x,pos.y,pos.z);var n=dir.length();if(n){n=1.0/n;}
this.dir=new x3dom.fields.SFVec3f(dir.x*n,dir.y*n,dir.z*n);}
this.enter=0;this.exit=0;this.hitObject=null;this.hitPoint={};this.dist=Number.MAX_VALUE;};x3dom.fields.Ray.prototype.toString=function(){return'Ray: ['+this.pos.toString()+'; '+this.dir.toString()+']';};x3dom.fields.Ray.prototype.intersectPlane=function(p,n)
{var result=null;var alpha;var nDotDir=n.dot(this.dir);if(nDotDir<0.0)
{alpha=(p.dot(n)-this.pos.dot(n))/nDotDir;result=this.pos.addScaled(this.dir,alpha);}
return result;};x3dom.fields.Ray.prototype.intersect=function(low,high)
{var isect=0.0;var out=Number.MAX_VALUE;var r,te,tl;if(this.dir.x>x3dom.fields.Eps)
{r=1.0/this.dir.x;te=(low.x-this.pos.x)*r;tl=(high.x-this.pos.x)*r;if(tl<out){out=tl;}
if(te>isect){isect=te;}}
else if(this.dir.x<-x3dom.fields.Eps)
{r=1.0/this.dir.x;te=(high.x-this.pos.x)*r;tl=(low.x-this.pos.x)*r;if(tl<out){out=tl;}
if(te>isect){isect=te;}}
else if(this.pos.x<low.x||this.pos.x>high.x)
{return false;}
if(this.dir.y>x3dom.fields.Eps)
{r=1.0/this.dir.y;te=(low.y-this.pos.y)*r;tl=(high.y-this.pos.y)*r;if(tl<out){out=tl;}
if(te>isect){isect=te;}
if(isect-out>=x3dom.fields.Eps){return false;}}
else if(this.dir.y<-x3dom.fields.Eps)
{r=1.0/this.dir.y;te=(high.y-this.pos.y)*r;tl=(low.y-this.pos.y)*r;if(tl<out){out=tl;}
if(te>isect){isect=te;}
if(isect-out>=x3dom.fields.Eps){return false;}}
else if(this.pos.y<low.y||this.pos.y>high.y)
{return false;}
if(this.dir.z>x3dom.fields.Eps)
{r=1.0/this.dir.z;te=(low.z-this.pos.z)*r;tl=(high.z-this.pos.z)*r;if(tl<out){out=tl;}
if(te>isect){isect=te;}}
else if(this.dir.z<-x3dom.fields.Eps)
{r=1.0/this.dir.z;te=(high.z-this.pos.z)*r;tl=(low.z-this.pos.z)*r;if(tl<out){out=tl;}
if(te>isect){isect=te;}}
else if(this.pos.z<low.z||this.pos.z>high.z)
{return false;}
this.enter=isect;this.exit=out;return(isect-out<x3dom.fields.Eps);};x3dom.fields.BoxVolume=function(min,max)
{if(arguments.length<2){this.min=new x3dom.fields.SFVec3f(0,0,0);this.max=new x3dom.fields.SFVec3f(0,0,0);this.valid=false;}
else{this.min=x3dom.fields.SFVec3f.copy(min);this.max=x3dom.fields.SFVec3f.copy(max);this.valid=true;}
this.updateInternals();};x3dom.fields.BoxVolume.prototype.getScalarValue=function()
{var extent=this.max.subtract(this.min);return(extent.x*extent.y*extent.z);};x3dom.fields.BoxVolume.copy=function(other)
{return new x3dom.fields.BoxVolume(other.min,other.max);};x3dom.fields.BoxVolume.prototype.updateInternals=function()
{this.radialVec=this.max.subtract(this.min).multiply(0.5);this.center=this.min.add(this.radialVec);this.diameter=2*this.radialVec.length();};x3dom.fields.BoxVolume.prototype.setBounds=function(min,max)
{this.min.setValues(min);this.max.setValues(max);this.updateInternals();this.valid=true;};x3dom.fields.BoxVolume.prototype.setBoundsByCenterSize=function(center,size)
{var halfSize=size.multiply(0.5);this.min=center.subtract(halfSize);this.max=center.add(halfSize);this.updateInternals();this.valid=true;};x3dom.fields.BoxVolume.prototype.extendBounds=function(min,max)
{if(this.valid)
{if(this.min.x>min.x){this.min.x=min.x;}
if(this.min.y>min.y){this.min.y=min.y;}
if(this.min.z>min.z){this.min.z=min.z;}
if(this.max.x<max.x){this.max.x=max.x;}
if(this.max.y<max.y){this.max.y=max.y;}
if(this.max.z<max.z){this.max.z=max.z;}
this.updateInternals();}
else
{this.setBounds(min,max);}};x3dom.fields.BoxVolume.prototype.getBounds=function(min,max)
{min.setValues(this.min);max.setValues(this.max);};x3dom.fields.BoxVolume.prototype.getRadialVec=function()
{return this.radialVec;};x3dom.fields.BoxVolume.prototype.invalidate=function()
{this.valid=false;this.min=new x3dom.fields.SFVec3f(0,0,0);this.max=new x3dom.fields.SFVec3f(0,0,0);};x3dom.fields.BoxVolume.prototype.isValid=function()
{return this.valid;};x3dom.fields.BoxVolume.prototype.getCenter=function()
{return this.center;};x3dom.fields.BoxVolume.prototype.getDiameter=function()
{return this.diameter;};x3dom.fields.BoxVolume.prototype.transform=function(m)
{var xmin,ymin,zmin;var xmax,ymax,zmax;xmin=xmax=m._03;ymin=ymax=m._13;zmin=zmax=m._23;var a=this.max.x*m._00;var b=this.min.x*m._00;if(a>=b){xmax+=a;xmin+=b;}
else{xmax+=b;xmin+=a;}
a=this.max.y*m._01;b=this.min.y*m._01;if(a>=b){xmax+=a;xmin+=b;}
else{xmax+=b;xmin+=a;}
a=this.max.z*m._02;b=this.min.z*m._02;if(a>=b){xmax+=a;xmin+=b;}
else{xmax+=b;xmin+=a;}
a=this.max.x*m._10;b=this.min.x*m._10;if(a>=b){ymax+=a;ymin+=b;}
else{ymax+=b;ymin+=a;}
a=this.max.y*m._11;b=this.min.y*m._11;if(a>=b){ymax+=a;ymin+=b;}
else{ymax+=b;ymin+=a;}
a=this.max.z*m._12;b=this.min.z*m._12;if(a>=b){ymax+=a;ymin+=b;}
else{ymax+=b;ymin+=a;}
a=this.max.x*m._20;b=this.min.x*m._20;if(a>=b){zmax+=a;zmin+=b;}
else{zmax+=b;zmin+=a;}
a=this.max.y*m._21;b=this.min.y*m._21;if(a>=b){zmax+=a;zmin+=b;}
else{zmax+=b;zmin+=a;}
a=this.max.z*m._22;b=this.min.z*m._22;if(a>=b){zmax+=a;zmin+=b;}
else{zmax+=b;zmin+=a;}
this.min.x=xmin;this.min.y=ymin;this.min.z=zmin;this.max.x=xmax;this.max.y=ymax;this.max.z=zmax;this.updateInternals();};x3dom.fields.BoxVolume.prototype.transformFrom=function(m,other)
{var xmin,ymin,zmin;var xmax,ymax,zmax;xmin=xmax=m._03;ymin=ymax=m._13;zmin=zmax=m._23;var a=other.max.x*m._00;var b=other.min.x*m._00;if(a>=b){xmax+=a;xmin+=b;}
else{xmax+=b;xmin+=a;}
a=other.max.y*m._01;b=other.min.y*m._01;if(a>=b){xmax+=a;xmin+=b;}
else{xmax+=b;xmin+=a;}
a=other.max.z*m._02;b=other.min.z*m._02;if(a>=b){xmax+=a;xmin+=b;}
else{xmax+=b;xmin+=a;}
a=other.max.x*m._10;b=other.min.x*m._10;if(a>=b){ymax+=a;ymin+=b;}
else{ymax+=b;ymin+=a;}
a=other.max.y*m._11;b=other.min.y*m._11;if(a>=b){ymax+=a;ymin+=b;}
else{ymax+=b;ymin+=a;}
a=other.max.z*m._12;b=other.min.z*m._12;if(a>=b){ymax+=a;ymin+=b;}
else{ymax+=b;ymin+=a;}
a=other.max.x*m._20;b=other.min.x*m._20;if(a>=b){zmax+=a;zmin+=b;}
else{zmax+=b;zmin+=a;}
a=other.max.y*m._21;b=other.min.y*m._21;if(a>=b){zmax+=a;zmin+=b;}
else{zmax+=b;zmin+=a;}
a=other.max.z*m._22;b=other.min.z*m._22;if(a>=b){zmax+=a;zmin+=b;}
else{zmax+=b;zmin+=a;}
this.min.x=xmin;this.min.y=ymin;this.min.z=zmin;this.max.x=xmax;this.max.y=ymax;this.max.z=zmax;this.updateInternals();this.valid=true;};x3dom.fields.FrustumVolume=function(clipMat)
{this.planeNormals=[];this.planeDistances=[];this.directionIndex=[];if(arguments.length===0){return;}
var planeEquation=[];for(var i=0;i<6;i++){this.planeNormals[i]=new x3dom.fields.SFVec3f(0,0,0);this.planeDistances[i]=0;this.directionIndex[i]=0;planeEquation[i]=new x3dom.fields.SFVec4f(0,0,0,0);}
planeEquation[0].x=clipMat._30-clipMat._00;planeEquation[0].y=clipMat._31-clipMat._01;planeEquation[0].z=clipMat._32-clipMat._02;planeEquation[0].w=clipMat._33-clipMat._03;planeEquation[1].x=clipMat._30+clipMat._00;planeEquation[1].y=clipMat._31+clipMat._01;planeEquation[1].z=clipMat._32+clipMat._02;planeEquation[1].w=clipMat._33+clipMat._03;planeEquation[2].x=clipMat._30+clipMat._10;planeEquation[2].y=clipMat._31+clipMat._11;planeEquation[2].z=clipMat._32+clipMat._12;planeEquation[2].w=clipMat._33+clipMat._13;planeEquation[3].x=clipMat._30-clipMat._10;planeEquation[3].y=clipMat._31-clipMat._11;planeEquation[3].z=clipMat._32-clipMat._12;planeEquation[3].w=clipMat._33-clipMat._13;planeEquation[4].x=clipMat._30+clipMat._20;planeEquation[4].y=clipMat._31+clipMat._21;planeEquation[4].z=clipMat._32+clipMat._22;planeEquation[4].w=clipMat._33+clipMat._23;planeEquation[5].x=clipMat._30-clipMat._20;planeEquation[5].y=clipMat._31-clipMat._21;planeEquation[5].z=clipMat._32-clipMat._22;planeEquation[5].w=clipMat._33-clipMat._23;for(i=0;i<6;i++){var vectorLength=Math.sqrt(planeEquation[i].x*planeEquation[i].x+
planeEquation[i].y*planeEquation[i].y+
planeEquation[i].z*planeEquation[i].z);planeEquation[i].x/=vectorLength;planeEquation[i].y/=vectorLength;planeEquation[i].z/=vectorLength;planeEquation[i].w/=-vectorLength;}
var updateDirectionIndex=function(normalVec){var ind=0;if(normalVec.x>0)ind|=1;if(normalVec.y>0)ind|=2;if(normalVec.z>0)ind|=4;return ind;};this.planeNormals[3].setValues(planeEquation[0]);this.planeDistances[3]=planeEquation[0].w;this.directionIndex[3]=updateDirectionIndex(this.planeNormals[3]);this.planeNormals[2].setValues(planeEquation[1]);this.planeDistances[2]=planeEquation[1].w;this.directionIndex[2]=updateDirectionIndex(this.planeNormals[2]);this.planeNormals[5].setValues(planeEquation[2]);this.planeDistances[5]=planeEquation[2].w;this.directionIndex[5]=updateDirectionIndex(this.planeNormals[5]);this.planeNormals[4].setValues(planeEquation[3]);this.planeDistances[4]=planeEquation[3].w;this.directionIndex[4]=updateDirectionIndex(this.planeNormals[4]);this.planeNormals[0].setValues(planeEquation[4]);this.planeDistances[0]=planeEquation[4].w;this.directionIndex[0]=updateDirectionIndex(this.planeNormals[0]);this.planeNormals[1].setValues(planeEquation[5]);this.planeDistances[1]=planeEquation[5].w;this.directionIndex[1]=updateDirectionIndex(this.planeNormals[1]);};x3dom.fields.FrustumVolume.prototype.intersect=function(vol,planeMask)
{if(this.planeNormals.length<6){x3dom.debug.logWarning("FrustumVolume not initialized!");return false;}
var that=this;var min=vol.min,max=vol.max;var setDirectionIndexPoint=function(index){var pnt=new x3dom.fields.SFVec3f(0,0,0);if(index&1){pnt.x=min.x;}
else{pnt.x=max.x;}
if(index&2){pnt.y=min.y;}
else{pnt.y=max.y;}
if(index&4){pnt.z=min.z;}
else{pnt.z=max.z;}
return pnt;};var pntIsInHalfSpace=function(i,pnt){var s=that.planeNormals[i].dot(pnt)-that.planeDistances[i];return(s>=0);};var isInHalfSpace=function(i){var p=setDirectionIndexPoint(that.directionIndex[i]);return pntIsInHalfSpace(i,p);};var isOutHalfSpace=function(i){var p=setDirectionIndexPoint(that.directionIndex[i]^7);return!pntIsInHalfSpace(i,p);};var mask=1;if(planeMask<0)planeMask=0;for(var i=0;i<6;i++,mask<<=1){if((planeMask&mask)!=0)
continue;if(isOutHalfSpace(i))
return-1;if(isInHalfSpace(i))
planeMask|=mask;}
return planeMask;};x3dom.docs={};x3dom.docs.specURLMap={CADGeometry:"CADGeometry.html",Core:"core.html",DIS:"dis.html",CubeMapTexturing:"env_texture.html",EnvironmentalEffects:"enveffects.html",EnvironmentalSensor:"envsensor.html",Followers:"followers.html",Geospatial:"geodata.html",Geometry2D:"geometry2D.html",Geometry3D:"geometry3D.html",Grouping:"group.html","H-Anim":"hanim.html",Interpolation:"interp.html",KeyDeviceSensor:"keyboard.html",Layering:"layering.html",Layout:"layout.html",Lighting:"lighting.html",Navigation:"navigation.html",Networking:"networking.html",NURBS:"nurbs.html",ParticleSystems:"particle_systems.html",Picking:"picking.html",PointingDeviceSensor:"pointingsensor.html",Rendering:"rendering.html",RigidBodyPhysics:"rigid_physics.html",Scripting:"scripting.html",Shaders:"shaders.html",Shape:"shape.html",Sound:"sound.html",Text:"text.html",Texturing3D:"texture3D.html",Texturing:"texturing.html",Time:"time.html",EventUtilities:"utils.html",VolumeRendering:"volume.html"};x3dom.docs.specBaseURL="http://www.web3d.org/x3d/specifications/ISO-IEC-19775-1.2-X3D-AbstractSpecification/Part01/components/";x3dom.docs.getNodeTreeInfo=function(){var tn,t;var types="";var objInArray=function(array,obj){for(var i=0;i<array.length;i++){if(array[i]===obj){return true;}}
return false;};var dump=function(t,indent){for(var i=0;i<indent;i++){types+="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";}
types+="<a href='"+
x3dom.docs.specBaseURL+x3dom.docs.specURLMap[x3dom.nodeTypes[t]._compName]+"#"+t+"' style='color:black; text-decoration:none; font-weight:bold;'>"+
t+"</a> &nbsp; <a href='"+
x3dom.docs.specBaseURL+x3dom.docs.specURLMap[x3dom.nodeTypes[t]._compName]+"' style='color:black; text-decoration:none; font-style:italic;'>"+
x3dom.nodeTypes[t]._compName+"</a><br/>";for(var i in x3dom.nodeTypes[t].childTypes[t]){dump(x3dom.nodeTypes[t].childTypes[t][i],indent+1);}};for(tn in x3dom.nodeTypes){var t=x3dom.nodeTypes[tn];if(t.childTypes===undefined){t.childTypes={};}
while(t.superClass){if(t.superClass.childTypes[t.superClass._typeName]===undefined){t.superClass.childTypes[t.superClass._typeName]=[];}
if(!objInArray(t.superClass.childTypes[t.superClass._typeName],t._typeName)){t.superClass.childTypes[t.superClass._typeName].push(t._typeName);}
t=t.superClass;}}
dump("X3DNode",0);return"<div class='x3dom-doc-nodes-tree'>"+types+"</div>";};x3dom.docs.getComponentInfo=function(){var components=[];var component;var result="";var c,cn;for(c in x3dom.components){components.push(c);}
components.sort();for(cn in components){c=components[cn];component=x3dom.components[c];result+="<h2><a href='"+
x3dom.docs.specBaseURL+x3dom.docs.specURLMap[c]+"' style='color:black; text-decoration:none; font-style:italic;'>"+
c+"</a></h2>";result+="<ul style='list-style-type:circle;'>";for(var t in component){result+="<li><a href='"+
x3dom.docs.specBaseURL+x3dom.docs.specURLMap[c]+"#"+t+"' style='color:black; text-decoration:none; font-weight:bold;'>"+
t+"</a></li>";}
result+="</ul>";}
return result;};x3dom.shader={};x3dom.shader.PICKING="picking";x3dom.shader.PICKING_24="picking24";x3dom.shader.PICKING_ID="pickingId";x3dom.shader.PICKING_COLOR="pickingColor";x3dom.shader.PICKING_TEXCOORD="pickingTexCoord";x3dom.shader.FRONTGROUND_TEXTURE="frontgroundTexture";x3dom.shader.BACKGROUND_TEXTURE="backgroundTexture";x3dom.shader.BACKGROUND_SKYTEXTURE="backgroundSkyTexture";x3dom.shader.BACKGROUND_CUBETEXTURE="backgroundCubeTexture";x3dom.shader.SHADOW="shadow";x3dom.shader.BLUR="blur";x3dom.shader.DEPTH="depth";x3dom.shader.NORMAL="normal";x3dom.shader.TEXTURE_REFINEMENT="textureRefinement";x3dom.shader.SSAO="ssao";x3dom.shader.material=function(){var shaderPart="uniform vec3  diffuseColor;\n"+"uniform vec3  specularColor;\n"+"uniform vec3  emissiveColor;\n"+"uniform float shininess;\n"+"uniform float transparency;\n"+"uniform float ambientIntensity;\n";return shaderPart;};x3dom.shader.twoSidedMaterial=function(){var shaderPart="uniform vec3  backDiffuseColor;\n"+"uniform vec3  backSpecularColor;\n"+"uniform vec3  backEmissiveColor;\n"+"uniform float backShininess;\n"+"uniform float backTransparency;\n"+"uniform float backAmbientIntensity;\n";return shaderPart;};x3dom.shader.fog=function(){var shaderPart="uniform vec3  fogColor;\n"+"uniform float fogType;\n"+"uniform float fogRange;\n"+"varying vec3 fragEyePosition;\n"+"float calcFog(in vec3 eye) {\n"+"   float f0 = 0.0;\n"+"   if(fogType == 0.0) {\n"+"       if(length(eye) < fogRange){\n"+"           f0 = (fogRange-length(eye)) / fogRange;\n"+"       }\n"+"   }else{\n"+"       if(length(eye) < fogRange){\n"+"           f0 = exp(-length(eye) / (fogRange-length(eye) ) );\n"+"       }\n"+"   }\n"+"   f0 = clamp(f0, 0.0, 1.0);\n"+"   return f0;\n"+"}\n";return shaderPart;};x3dom.shader.clipPlanes=function(numClipPlanes){var shaderPart="",c;for(c=0;c<numClipPlanes;c++){shaderPart+="uniform vec4 clipPlane"+c+"_Plane;\n";shaderPart+="uniform float clipPlane"+c+"_CappingStrength;\n";shaderPart+="uniform vec3 clipPlane"+c+"_CappingColor;\n";}
shaderPart+="vec3 calculateClipPlanes() {\n";for(c=0;c<numClipPlanes;c++){shaderPart+="    vec4 clipPlane"+c+" = clipPlane"+c+"_Plane * viewMatrixInverse;\n";shaderPart+="    float dist"+c+" = dot(fragPosition, clipPlane"+c+");\n";}
shaderPart+="    if( ";for(c=0;c<numClipPlanes;c++){if(c!=0){shaderPart+=" || ";}
shaderPart+="dist"+c+" < 0.0";}
shaderPart+=" ) ";shaderPart+="{ discard; }\n";for(c=0;c<numClipPlanes;c++){shaderPart+="    if( abs(dist"+c+") < clipPlane"+c+"_CappingStrength ) ";shaderPart+="{ return clipPlane"+c+"_CappingColor; }\n";}
shaderPart+="    return vec3(-1.0, -1.0, -1.0);\n";shaderPart+="}\n";return shaderPart;};x3dom.shader.gammaCorrectionDecl=function(properties){var shaderPart="";if(properties.GAMMACORRECTION==="none"){}else if(properties.GAMMACORRECTION==="fastlinear"){shaderPart+="vec4 gammaEncode(vec4 color){\n"+"  vec4 tmp = sqrt(color);\n"+"  return vec4(tmp.rgb, color.a);\n"+"}\n";shaderPart+="vec4 gammaDecode(vec4 color){\n"+"  vec4 tmp = color * color;\n"+"  return vec4(tmp.rgb, color.a);\n"+"}\n";shaderPart+="vec3 gammaEncode(vec3 color){\n"+"  return sqrt(color);\n"+"}\n";shaderPart+="vec3 gammaDecode(vec3 color){\n"+"  return (color * color);\n"+"}\n";}else{shaderPart+="const vec4 gammaEncode4Vector = vec4(0.4545454545454545, 0.4545454545454545, 0.4545454545454545, 1.0);\n";shaderPart+="const vec4 gammaDecode4Vector = vec4(2.2, 2.2, 2.2, 1.0);\n";shaderPart+="vec4 gammaEncode(vec4 color){\n"+"    return pow(color, gammaEncode4Vector);\n"+"}\n";shaderPart+="vec4 gammaDecode(vec4 color){\n"+"    return pow(color, gammaDecode4Vector);\n"+"}\n";shaderPart+="const vec3 gammaEncode3Vector = vec3(0.4545454545454545, 0.4545454545454545, 0.4545454545454545);\n";shaderPart+="const vec3 gammaDecode3Vector = vec3(2.2, 2.2, 2.2);\n";shaderPart+="vec3 gammaEncode(vec3 color){\n"+"    return pow(color, gammaEncode3Vector);\n"+"}\n";shaderPart+="vec3 gammaDecode(vec3 color){\n"+"    return pow(color, gammaDecode3Vector);\n"+"}\n";}
return shaderPart;};x3dom.shader.encodeGamma=function(properties,expr){if(properties.GAMMACORRECTION==="none"){return expr;}else{return"gammaEncode ("+expr+")";}};x3dom.shader.decodeGamma=function(properties,expr){if(properties.GAMMACORRECTION==="none"){return expr;}else{return"gammaDecode ("+expr+")";}};x3dom.shader.rgbaPacking=function(){var shaderPart="";shaderPart+="vec4 packDepth(float depth){\n"+" depth = (depth + 1.0)*0.5;\n"+" vec4 outVal = vec4(1.0, 255.0, 65025.0, 160581375.0) * depth;\n"+" outVal = fract(outVal);\n"+"   outVal -= outVal.yzww * vec4(1.0/255.0, 1.0/255.0, 1.0/255.0, 0.0);\n"+"   return outVal;\n"+"}\n";shaderPart+="float unpackDepth(vec4 color){\n"+" float depth = dot(color, vec4(1.0, 1.0/255.0, 1.0/65025.0, 1.0/160581375.0));\n"+" return (2.0*depth - 1.0);\n"+"}\n";return shaderPart;};x3dom.shader.shadowRendering=function(){var shaderPart="";shaderPart+="float getLightInfluence(float lType, float lShadowIntensity, float lOn, vec3 lLocation, vec3 lDirection, "+"float lCutOffAngle, float lBeamWidth, vec3 lAttenuation, float lRadius, vec3 eyeCoords) {\n"+" if (lOn == 0.0 || lShadowIntensity == 0.0){ return 0.0;\n"+" } else if (lType == 0.0) {\n"+"  return 1.0;\n"+" } else {\n"+"    float attenuation = 0.0;\n"+"    vec3 lightVec = (lLocation - (eyeCoords));\n"+"    float distance = length(lightVec);\n"+"  lightVec = normalize(lightVec);\n"+"  eyeCoords = normalize(-eyeCoords);\n"+"    if(lRadius == 0.0 || distance <= lRadius) {\n"+"        attenuation = 1.0 / max(lAttenuation.x + lAttenuation.y * distance + lAttenuation.z * (distance * distance), 1.0);\n"+"  }\n"+"   if (lType == 1.0) return attenuation;\n"+"    float spotAngle = acos(max(0.0, dot(-lightVec, normalize(lDirection))));\n"+"    if(spotAngle >= lCutOffAngle) return 0.0;\n"+"    else if(spotAngle <= lBeamWidth) return attenuation;\n"+"    else return attenuation * (spotAngle - lCutOffAngle) / (lBeamWidth - lCutOffAngle);\n"+" }\n"+"}\n";shaderPart+="void getShadowValues(inout vec4 shadowMapValues, inout float viewSampleDepth, in mat4 lightMatrix, in vec4 worldCoords, in sampler2D shadowMap){\n"+" vec4 lightSpaceCoords = lightMatrix*worldCoords;\n"+" vec3 lightSpaceCoordsCart = lightSpaceCoords.xyz / lightSpaceCoords.w;\n"+" vec2 textureCoords = (lightSpaceCoordsCart.xy + 1.0)*0.5;\n"+" viewSampleDepth = lightSpaceCoordsCart.z;\n"+" shadowMapValues = texture2D(shadowMap, textureCoords);\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE)
shaderPart+=" shadowMapValues = vec4(1.0,1.0,unpackDepth(shadowMapValues),1.0);\n";shaderPart+="}\n";shaderPart+="void getShadowValuesPointLight(inout vec4 shadowMapValues, inout float viewSampleDepth, in vec3 lLocation, in vec4 worldCoords, in mat4 lightViewMatrix,"+"in mat4 lMatrix_0, in mat4 lMatrix_1, in mat4 lMatrix_2, in mat4 lMatrix_3, in mat4 lMatrix_4, in mat4 lMatrix_5,"+"in sampler2D shadowMap_0, in sampler2D shadowMap_1, in sampler2D shadowMap_2, in sampler2D shadowMap_3,"+"in sampler2D shadowMap_4, in sampler2D shadowMap_5){\n"+" vec4 transformed = lightViewMatrix * worldCoords;\n"+" vec3 lightVec = normalize(transformed.xyz/transformed.w);\n"+" vec3 lightVecAbs = abs(lightVec);\n"+" float maximum = max(max(lightVecAbs.x, lightVecAbs.y),lightVecAbs.z);\n"+" if (lightVecAbs.x == maximum) {\n"+"  if (lightVec.x < 0.0) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_3,worldCoords,shadowMap_3);\n"+"  else getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_1,worldCoords,shadowMap_1);\n"+" }\n"+" else if (lightVecAbs.y == maximum) {\n"+"  if (lightVec.y < 0.0) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_4,worldCoords,shadowMap_4);\n"+"  else getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_5,worldCoords,shadowMap_5);\n"+" }\n"+" else if (lightVec.z < 0.0) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_0,worldCoords,shadowMap_0);\n"+" else getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_2,worldCoords,shadowMap_2);\n"+"}\n";shaderPart+="void getShadowValuesCascaded(inout vec4 shadowMapValues, inout float viewSampleDepth, in vec4 worldCoords, in float eyeDepth, in mat4 lMatrix_0, in mat4 lMatrix_1, in mat4 lMatrix_2,"+"in mat4 lMatrix_3, in mat4 lMatrix_4, in mat4 lMatrix_5, in sampler2D shadowMap_0, in sampler2D shadowMap_1, in sampler2D shadowMap_2,"+"in sampler2D shadowMap_3, in sampler2D shadowMap_4, in sampler2D shadowMap_5, in float split_0, in float split_1, in float split_2, in float split_3, in float split_4){\n"+" if (eyeDepth < split_0) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_0, worldCoords, shadowMap_0);\n"+" else if (eyeDepth < split_1) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_1, worldCoords, shadowMap_1);\n"+" else if (eyeDepth < split_2) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_2, worldCoords, shadowMap_2);\n"+" else if (eyeDepth < split_3) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_3, worldCoords, shadowMap_3);\n"+" else if (eyeDepth < split_4) getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_4, worldCoords, shadowMap_4);\n"+" else getShadowValues(shadowMapValues, viewSampleDepth, lMatrix_5, worldCoords, shadowMap_5);\n"+"}\n";shaderPart+="float ESM(float shadowMapDepth, float viewSampleDepth, float offset){\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE)
shaderPart+=" return exp(-80.0*(1.0-offset)*(viewSampleDepth - shadowMapDepth));\n";else shaderPart+=" return shadowMapDepth * exp(-80.0*(1.0-offset)*viewSampleDepth);\n";shaderPart+="}\n";shaderPart+="float VSM(vec2 moments, float viewSampleDepth, float offset){\n"+" viewSampleDepth = (viewSampleDepth + 1.0) * 0.5;\n"+" if (viewSampleDepth <= moments.x) return 1.0;\n"+" float variance = moments.y - moments.x * moments.x;\n"+" variance = max(variance, 0.00002 + offset*0.01);\n"+" float d = viewSampleDepth - moments.x;\n"+" return variance/(variance + d*d);\n"+"}\n";return shaderPart;};x3dom.shader.light=function(numLights){var shaderPart="";for(var l=0;l<numLights;l++){shaderPart+="uniform float light"+l+"_On;\n"+"uniform float light"+l+"_Type;\n"+"uniform vec3  light"+l+"_Location;\n"+"uniform vec3  light"+l+"_Direction;\n"+"uniform vec3  light"+l+"_Color;\n"+"uniform vec3  light"+l+"_Attenuation;\n"+"uniform float light"+l+"_Radius;\n"+"uniform float light"+l+"_Intensity;\n"+"uniform float light"+l+"_AmbientIntensity;\n"+"uniform float light"+l+"_BeamWidth;\n"+"uniform float light"+l+"_CutOffAngle;\n"+"uniform float light"+l+"_ShadowIntensity;\n";}
shaderPart+="vec3 lighting(in float lType, in vec3 lLocation, in vec3 lDirection, in vec3 lColor, in vec3 lAttenuation, "+"in float lRadius, in float lIntensity, in float lAmbientIntensity, in float lBeamWidth, "+"in float lCutOffAngle, in vec3 N, in vec3 V, float shin, float ambIntensity)\n"+"{\n"+"   vec3 L;\n"+"   float spot = 1.0, attentuation = 0.0;\n"+"   if(lType == 0.0) {\n"+"       L = -normalize(lDirection);\n"+"  V = normalize(V);\n"+"  attentuation = 1.0;\n"+"   } else{\n"+"       L = (lLocation - (-V));\n"+"       float d = length(L);\n"+"  L = normalize(L);\n"+"  V = normalize(V);\n"+"       if(lRadius == 0.0 || d <= lRadius) {\n"+"        attentuation = 1.0 / max(lAttenuation.x + lAttenuation.y * d + lAttenuation.z * (d * d), 1.0);\n"+"  }\n"+"       if(lType == 2.0) {\n"+"           float spotAngle = acos(max(0.0, dot(-L, normalize(lDirection))));\n"+"           if(spotAngle >= lCutOffAngle) spot = 0.0;\n"+"           else if(spotAngle <= lBeamWidth) spot = 1.0;\n"+"           else spot = (spotAngle - lCutOffAngle ) / (lBeamWidth - lCutOffAngle);\n"+"       }\n"+"   }\n"+"   vec3  H = normalize( L + V );\n"+"   float NdotL = clamp(dot(L, N), 0.0, 1.0);\n"+"   float NdotH = clamp(dot(H, N), 0.0, 1.0);\n"+"   float ambientFactor  = lAmbientIntensity * ambIntensity;\n"+"   float diffuseFactor  = lIntensity * NdotL;\n"+"   float specularFactor = lIntensity * pow(NdotH, shin*128.0);\n"+"   return vec3(ambientFactor, diffuseFactor, specularFactor) * attentuation * spot;\n"+"}\n";return shaderPart;};x3dom.shader.TBNCalculation=function(){var shaderPart="";shaderPart+="mat3 cotangent_frame(vec3 N, vec3 p, vec2 uv)\n"+"{\n"+"    // get edge vectors of the pixel triangle\n"+"    vec3 dp1 = dFdx( p );\n"+"    vec3 dp2 = dFdy( p );\n"+"    vec2 duv1 = dFdx( uv );\n"+"    vec2 duv2 = dFdy( uv );\n"+"\n"+"    // solve the linear system\n"+"    vec3 dp2perp = cross( dp2, N );\n"+"    vec3 dp1perp = cross( N, dp1 );\n"+"    vec3 T = dp2perp * duv1.x + dp1perp * duv2.x;\n"+"    vec3 B = dp2perp * duv1.y + dp1perp * duv2.y;\n"+"\n"+"    // construct a scale-invariant frame\n"+"    float invmax = inversesqrt( max( dot(T,T), dot(B,B) ) );\n"+"    return mat3( T * invmax, B * invmax, N );\n"+"}\n\n";shaderPart+="vec3 perturb_normal( vec3 N, vec3 V, vec2 texcoord )\n"+"{\n"+"    // assume N, the interpolated vertex normal and\n"+"    // V, the view vector (vertex to eye)\n"+"    vec3 map = texture2D(normalMap, texcoord ).xyz;\n"+"    map = map * 255./127. - 128./127.;\n"+"    mat3 TBN = cotangent_frame(N, -V, texcoord);\n"+"    return normalize(TBN * map);\n"+"}\n\n";return shaderPart;};x3dom.shader.DynamicShader=function(gl,properties)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl,properties);var fragmentShader=this.generateFragmentShader(gl,properties);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.DynamicShader.prototype.generateVertexShader=function(gl,properties)
{var shader="";shader+="uniform mat4 modelViewMatrix;\n";shader+="uniform mat4 modelViewProjectionMatrix;\n";if(properties.POSCOMPONENTS==3){shader+="attribute vec3 position;\n";}else if(properties.POSCOMPONENTS==4){shader+="attribute vec4 position;\n";}
if(properties.IMAGEGEOMETRY){shader+="uniform vec3 IG_bboxMin;\n";shader+="uniform vec3 IG_bboxMax;\n";shader+="uniform float IG_coordTextureWidth;\n";shader+="uniform float IG_coordTextureHeight;\n";shader+="uniform vec2 IG_implicitMeshSize;\n";for(var i=0;i<properties.IG_PRECISION;i++){shader+="uniform sampler2D IG_coords"+i+"\n;";}
if(properties.IG_INDEXED){shader+="uniform sampler2D IG_index;\n";shader+="uniform float IG_indexTextureWidth;\n";shader+="uniform float IG_indexTextureHeight;\n";}}
if(properties.POPGEOMETRY){shader+="uniform float PG_precisionLevel;\n";shader+="uniform float PG_powPrecision;\n";shader+="uniform vec3 PG_maxBBSize;\n";shader+="uniform vec3 PG_bbMin;\n";shader+="uniform vec3 PG_bbMaxModF;\n";shader+="uniform vec3 PG_bboxShiftVec;\n";shader+="uniform float PG_numAnchorVertices;\n";shader+="attribute float PG_vertexID;\n";}
if(properties.LIGHTS){shader+="varying vec3 fragNormal;\n";shader+="uniform mat4 normalMatrix;\n";if(properties.IMAGEGEOMETRY){shader+="uniform sampler2D IG_normals;\n";}else{if(properties.NORCOMPONENTS==2){if(properties.POSCOMPONENTS!=4){shader+="attribute vec2 normal;\n";}}else if(properties.NORCOMPONENTS==3){shader+="attribute vec3 normal;\n";}}}
if(properties.VERTEXCOLOR){if(properties.IMAGEGEOMETRY){shader+="uniform sampler2D IG_colors;\n";if(properties.COLCOMPONENTS==3){shader+="varying vec3 fragColor;\n";}else if(properties.COLCOMPONENTS==4){shader+="varying vec4 fragColor;\n";}}else{if(properties.COLCOMPONENTS==3){shader+="attribute vec3 color;\n";shader+="varying vec3 fragColor;\n";}else if(properties.COLCOMPONENTS==4){shader+="attribute vec4 color;\n";shader+="varying vec4 fragColor;\n";}}}
if(properties.TEXTURED||properties.CSSHADER){shader+="varying vec2 fragTexcoord;\n";if(!properties.SPHEREMAPPING){if(properties.IMAGEGEOMETRY){shader+="uniform sampler2D IG_texCoords;\n";}else if(!properties.IS_PARTICLE){shader+="attribute vec2 texcoord;\n";}}
if(properties.TEXTRAFO){shader+="uniform mat4 texTrafoMatrix;\n";}
if(properties.NORMALMAP&&!x3dom.caps.STD_DERIVATIVES){x3dom.debug.logWarning("Your System doesn't support the 'OES_STANDARD_DERIVATIVES' Extension. "+"You must set tangents and binormals manually via the FloatVertexAttribute-Node "+"to use normal maps");shader+="attribute vec3 tangent;\n";shader+="attribute vec3 binormal;\n";shader+="varying vec3 fragTangent;\n";shader+="varying vec3 fragBinormal;\n";}
if(properties.CUBEMAP){shader+="varying vec3 fragViewDir;\n";shader+="uniform mat4 viewMatrix;\n";}
if(properties.DISPLACEMENTMAP){shader+="uniform sampler2D displacementMap;\n";shader+="uniform float displacementFactor;\n";shader+="uniform float displacementWidth;\n";shader+="uniform float displacementHeight;\n";shader+="uniform float displacementAxis;\n";}
if(properties.DIFFPLACEMENTMAP){shader+="uniform sampler2D diffuseDisplacementMap;\n";shader+="uniform float displacementFactor;\n";shader+="uniform float displacementWidth;\n";shader+="uniform float displacementHeight;\n";shader+="uniform float displacementAxis;\n";}
if(properties.MULTIDIFFALPMAP||properties.MULTIVISMAP){shader+="attribute float id;\n";shader+="varying float fragID;\n";}}
if(properties.IS_PARTICLE){shader+="attribute vec3 particleSize;\n";}
if(properties.LIGHTS||properties.FOG||properties.CLIPPLANES){shader+="uniform vec3 eyePosition;\n";shader+="varying vec4 fragPosition;\n";if(properties.FOG){shader+="varying vec3 fragEyePosition;\n";}}
if(properties.REQUIREBBOX){shader+="uniform vec3 bgCenter;\n";shader+="uniform vec3 bgSize;\n";shader+="uniform float bgPrecisionMax;\n";}
if(properties.REQUIREBBOXNOR){shader+="uniform float bgPrecisionNorMax;\n";}
if(properties.REQUIREBBOXCOL){shader+="uniform float bgPrecisionColMax;\n";}
if(properties.REQUIREBBOXTEX){shader+="uniform float bgPrecisionTexMax;\n";}
shader+="void main(void) {\n";if(properties.IMAGEGEOMETRY){if(properties.IG_INDEXED){shader+="vec2 halfPixel = vec2(0.5/IG_indexTextureWidth,0.5/IG_indexTextureHeight);\n";shader+="vec2 IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_indexTextureWidth), position.y*(IG_implicitMeshSize.y/IG_indexTextureHeight)) + halfPixel;\n";shader+="vec2 IG_indices = texture2D( IG_index, IG_texCoord ).rg;\n";shader+="halfPixel = vec2(0.5/IG_coordTextureWidth,0.5/IG_coordTextureHeight);\n";shader+="IG_texCoord = (IG_indices * 0.996108948) + halfPixel;\n";}else{shader+="vec2 halfPixel = vec2(0.5/IG_coordTextureWidth, 0.5/IG_coordTextureHeight);\n";shader+="vec2 IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_coordTextureWidth), position.y*(IG_implicitMeshSize.y/IG_coordTextureHeight)) + halfPixel;\n";}
shader+="vec3 temp = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 vertPosition = vec3(0.0, 0.0, 0.0);\n";for(var i=0;i<properties.IG_PRECISION;i++){shader+="temp = 255.0 * texture2D( IG_coords"+i+", IG_texCoord ).rgb;\n";shader+="vertPosition *= 256.0;\n";shader+="vertPosition += temp;\n";}
shader+="vertPosition /= (pow(2.0, 8.0 * "+properties.IG_PRECISION+".0) - 1.0);\n";shader+="vertPosition = vertPosition * (IG_bboxMax - IG_bboxMin) + IG_bboxMin;\n";if(properties.LIGHTS){shader+="vec3 vertNormal = texture2D( IG_normals, IG_texCoord ).rgb;\n";shader+="vertNormal = vertNormal * 2.0 - 1.0;\n";}
if(properties.VERTEXCOLOR){if(properties.COLCOMPONENTS==3){shader+="fragColor = texture2D( IG_colors, IG_texCoord ).rgb;\n";}else if(properties.COLCOMPONENTS==4){shader+="fragColor = texture2D( IG_colors, IG_texCoord ).rgba;\n";}}
if(properties.TEXTURED||properties.CSSHADER){shader+="vec4 IG_doubleTexCoords = texture2D( IG_texCoords, IG_texCoord );\n";shader+="vec2 vertTexCoord;";shader+="vertTexCoord.r = (IG_doubleTexCoords.r * 0.996108948) + (IG_doubleTexCoords.b * 0.003891051);\n";shader+="vertTexCoord.g = (IG_doubleTexCoords.g * 0.996108948) + (IG_doubleTexCoords.a * 0.003891051);\n";}}else{shader+="vec3 vertPosition = position.xyz;\n";if(properties.POPGEOMETRY){shader+="vec3 offsetVec = step(vertPosition / bgPrecisionMax, PG_bbMaxModF) * PG_bboxShiftVec;\n";shader+="if ((PG_precisionLevel <= 2.0) || PG_vertexID >= PG_numAnchorVertices) {\n";shader+="   vertPosition = floor(vertPosition / PG_powPrecision) * PG_powPrecision;\n";shader+="   vertPosition /= (65536.0 - PG_powPrecision);\n";shader+="}\n";shader+="else {\n";shader+="   vertPosition /= bgPrecisionMax;\n";shader+="}\n";shader+="vertPosition = (vertPosition + offsetVec + PG_bbMin) * PG_maxBBSize;\n";}
else if(properties.REQUIREBBOX){shader+="vertPosition = bgCenter + bgSize * vertPosition / bgPrecisionMax;\n";}
if(properties.LIGHTS){if(properties.NORCOMPONENTS==2){if(properties.POSCOMPONENTS==4){shader+="vec3 vertNormal = vec3(position.w / 256.0); \n";shader+="vertNormal.x = floor(vertNormal.x) / 255.0; \n";shader+="vertNormal.y = fract(vertNormal.y) * 1.00392156862745; \n";}
else if(properties.REQUIREBBOXNOR){shader+="vec3 vertNormal = vec3(normal.xy, 0.0) / bgPrecisionNorMax;\n";}
shader+="vec2 thetaPhi = 3.14159265358979 * vec2(vertNormal.x, vertNormal.y*2.0-1.0); \n";shader+="vec4 sinCosThetaPhi = sin( vec4(thetaPhi, thetaPhi + 1.5707963267949) ); \n";shader+="vertNormal.x = sinCosThetaPhi.x * sinCosThetaPhi.w; \n";shader+="vertNormal.y = sinCosThetaPhi.x * sinCosThetaPhi.y; \n";shader+="vertNormal.z = sinCosThetaPhi.z; \n";}else{shader+="vec3 vertNormal = normal;\n";if(properties.REQUIREBBOXNOR){shader+="vertNormal = vertNormal / bgPrecisionNorMax;\n";}
if(properties.POPGEOMETRY){shader+="vertNormal = 2.0*vertNormal - 1.0;\n";}}}
if(properties.VERTEXCOLOR){shader+="fragColor = color;\n";if(properties.REQUIREBBOXCOL){shader+="fragColor = fragColor / bgPrecisionColMax;\n";}}
if((properties.TEXTURED||properties.CSSHADER)&&!properties.SPHEREMAPPING){if(properties.IS_PARTICLE){shader+="vec2 vertTexCoord = vec2(0.0);\n";}
else{shader+="vec2 vertTexCoord = texcoord;\n";if(properties.REQUIREBBOXTEX){shader+="vertTexCoord = vertTexCoord / bgPrecisionTexMax;\n";}}}}
if(properties.LIGHTS){if(properties.DISPLACEMENTMAP||properties.DIFFPLACEMENTMAP&&!properties.NORMALMAP){shader+="float dx = 1.0 / displacementWidth;\n";shader+="float dy = 1.0 / displacementHeight;\n";if(properties.DISPLACEMENTMAP)
{shader+="float s1 = texture2D(displacementMap, vec2(vertTexCoord.x - dx, 1.0 - vertTexCoord.y)).r;\n";shader+="float s2 = texture2D(displacementMap, vec2(vertTexCoord.x, 1.0 - vertTexCoord.y - dy)).r;\n";shader+="float s3 = texture2D(displacementMap, vec2(vertTexCoord.x + dx, 1.0 - vertTexCoord.y)).r;\n";shader+="float s4 = texture2D(displacementMap, vec2(vertTexCoord.x, 1.0 - vertTexCoord.y + dy)).r;\n";}
else if(properties.DIFFPLACEMENTMAP)
{shader+="float s1 = texture2D(diffuseDisplacementMap, vec2(vertTexCoord.x - dx, 1.0 - vertTexCoord.y)).a;\n";shader+="float s2 = texture2D(diffuseDisplacementMap, vec2(vertTexCoord.x, 1.0 - vertTexCoord.y - dy)).a;\n";shader+="float s3 = texture2D(diffuseDisplacementMap, vec2(vertTexCoord.x + dx, 1.0 - vertTexCoord.y)).a;\n";shader+="float s4 = texture2D(diffuseDisplacementMap, vec2(vertTexCoord.x, 1.0 - vertTexCoord.y + dy)).a;\n";}
shader+="float coef = displacementFactor;\n";shader+="vec3 calcNormal;\n";shader+="if (displacementAxis == 0.0) {\n";shader+="calcNormal = vec3((s1 - s3) * coef, -5.0, (s2 - s4) * coef);\n";shader+="} else if(displacementAxis == 1.0) {\n";shader+="calcNormal = vec3((s1 - s3) * coef, -5.0, (s2 - s4) * coef);\n";shader+="} else {\n";shader+="calcNormal = vec3((s1 - s3) * coef, -(s2 - s4) * coef, 5.0);\n";shader+="}\n";shader+="calcNormal = normalize(calcNormal);\n";shader+="fragNormal = (normalMatrix * vec4(calcNormal, 0.0)).xyz;\n";}
else
{shader+="fragNormal = (normalMatrix * vec4(vertNormal, 0.0)).xyz;\n";}}
if(properties.TEXTURED||properties.CSSHADER){if(properties.CUBEMAP){shader+="fragViewDir = (viewMatrix[3].xyz);\n";}else if(properties.SPHEREMAPPING){shader+=" fragTexcoord = 0.5 + fragNormal.xy / 2.0;\n";}else if(properties.TEXTRAFO){shader+=" fragTexcoord = (texTrafoMatrix * vec4(vertTexCoord, 1.0, 1.0)).xy;\n";}else{shader+=" fragTexcoord = vertTexCoord;\n";if(properties.POPGEOMETRY&&x3dom.debug.usePrecisionLevelAsTexCoord===true)
shader+="fragTexcoord = vec2(0.03125 + 0.9375 * (PG_precisionLevel / 16.0), 1.0);";}
if(properties.NORMALMAP&&!x3dom.caps.STD_DERIVATIVES){shader+="fragTangent  = (normalMatrix * vec4(tangent, 0.0)).xyz;\n";shader+="fragBinormal = (normalMatrix * vec4(binormal, 0.0)).xyz;\n";}}
if(properties.LIGHTS||properties.FOG||properties.CLIPPLANES){shader+="fragPosition = (modelViewMatrix * vec4(vertPosition, 1.0));\n";if(properties.FOG){shader+="fragEyePosition = eyePosition - fragPosition.xyz;\n";}}
if(properties.MULTIDIFFALPMAP){shader+="fragID = id;\n";}
if(properties.DISPLACEMENTMAP){shader+="vertPosition += normalize(vertNormal) * texture2D(displacementMap, vec2(fragTexcoord.x, 1.0-fragTexcoord.y)).r * displacementFactor;\n";}
else if(properties.DIFFPLACEMENTMAP)
{shader+="vertPosition += normalize(vertNormal) * texture2D(diffuseDisplacementMap, vec2(fragTexcoord.x, 1.0-fragTexcoord.y)).a * displacementFactor;\n";}
shader+="gl_Position = modelViewProjectionMatrix * vec4(vertPosition, 1.0);\n";if(properties.IS_PARTICLE){shader+="float spriteDist = (gl_Position.w > 0.000001) ? gl_Position.w : 0.000001;\n";shader+="float pointSize = floor(length(particleSize) * 256.0 / spriteDist + 0.5);\n";shader+="gl_PointSize = clamp(pointSize, 2.0, 256.0);\n";}
else{shader+="gl_PointSize = 2.0;\n";}
shader+="}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logInfo("VERTEX:\n"+shader);x3dom.debug.logError("VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.DynamicShader.prototype.generateFragmentShader=function(gl,properties)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+=" precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform mat4 modelMatrix;\n";shader+="uniform mat4 modelViewMatrix;\n";shader+="uniform mat4 viewMatrixInverse;\n";shader+=x3dom.shader.material();if(properties.TWOSIDEDMAT){shader+=x3dom.shader.twoSidedMaterial();}
if(properties.VERTEXCOLOR){if(properties.COLCOMPONENTS==3){shader+="varying vec3 fragColor;  \n";}else if(properties.COLCOMPONENTS==4){shader+="varying vec4 fragColor;  \n";}}
if(properties.CUBEMAP||properties.CLIPPLANES)
{shader+="uniform mat4 modelViewMatrixInverse;\n";}
if(properties.TEXTURED||properties.CSSHADER){shader+="varying vec2 fragTexcoord;\n";if((properties.TEXTURED||properties.DIFFUSEMAP)&&!properties.CUBEMAP){shader+="uniform sampler2D diffuseMap;\n";}else if(properties.CUBEMAP){shader+="uniform samplerCube cubeMap;\n";shader+="varying vec3 fragViewDir;\n";}
if(properties.SPECMAP){shader+="uniform sampler2D specularMap;\n";}
if(properties.SHINMAP){shader+="uniform sampler2D shininessMap;\n";}
if(properties.DISPLACEMENTMAP){shader+="uniform sampler2D displacementMap;\n";shader+="uniform float displacementWidth;\n";shader+="uniform float displacementHeight;\n";}
if(properties.DIFFPLACEMENTMAP){shader+="uniform sampler2D diffuseDisplacementMap;\n";shader+="uniform float displacementWidth;\n";shader+="uniform float displacementHeight;\n";}
if(properties.MULTIDIFFALPMAP||properties.MULTIVISMAP){shader+="varying float fragID;\n";}
if(properties.MULTIDIFFALPMAP){shader+="uniform sampler2D multiDiffuseAlphaMap;\n";shader+="uniform float multiDiffuseAlphaWidth;\n";shader+="uniform float multiDiffuseAlphaHeight;\n";}
if(properties.MULTIEMIAMBMAP){shader+="uniform sampler2D multiEmissiveAmbientMap;\n";shader+="uniform float multiEmissiveAmbientWidth;\n";shader+="uniform float multiEmissiveAmbientHeight;\n";}
if(properties.MULTISPECSHINMAP){shader+="uniform sampler2D multiSpecularShininessMap;\n";shader+="uniform float multiSpecularShininessWidth;\n";shader+="uniform float multiSpecularShininessHeight;\n";}
if(properties.MULTIVISMAP){shader+="uniform sampler2D multiVisibilityMap;\n";shader+="uniform float multiVisibilityWidth;\n";shader+="uniform float multiVisibilityHeight;\n";}
if(properties.NORMALMAP){shader+="uniform sampler2D normalMap;\n";if(x3dom.caps.STD_DERIVATIVES){shader+="#extension GL_OES_standard_derivatives:enable\n";shader+=x3dom.shader.TBNCalculation();}else{shader+="varying vec3 fragTangent;\n";shader+="varying vec3 fragBinormal;\n";}}}
if(properties.FOG){shader+=x3dom.shader.fog();}
if(properties.LIGHTS||properties.CLIPPLANES)
{shader+="varying vec4 fragPosition;\n";}
if(properties.LIGHTS){shader+="varying vec3 fragNormal;\n";shader+=x3dom.shader.light(properties.LIGHTS);}
if(properties.CLIPPLANES){shader+=x3dom.shader.clipPlanes(properties.CLIPPLANES);}
shader+=x3dom.shader.gammaCorrectionDecl(properties);shader+="void main(void) {\n";if(properties.CLIPPLANES)
{shader+="vec3 cappingColor = calculateClipPlanes();\n";}
shader+="vec4 color;\n";shader+="color.rgb = "+x3dom.shader.decodeGamma(properties,"diffuseColor")+";\n";shader+="color.a = 1.0 - transparency;\n";shader+="vec3 _emissiveColor     = emissiveColor;\n";shader+="float _shininess        = shininess;\n";shader+="vec3 _specularColor     = specularColor;\n";shader+="float _ambientIntensity = ambientIntensity;\n";if(properties.MULTIVISMAP||properties.MULTIDIFFALPMAP||properties.MULTISPECSHINMAP||properties.MULTIEMIAMBMAP){shader+="vec2 idCoord;\n";shader+="float roundedIDVisibility = floor(fragID+0.5);\n";shader+="float roundedIDMaterial = floor(fragID+0.5);\n";shader+="if(!gl_FrontFacing) {\n";shader+="    roundedIDMaterial = floor(fragID + (multiDiffuseAlphaWidth*multiDiffuseAlphaWidth) + 0.5);\n";shader+="}\n";}
if(properties.MULTIVISMAP){shader+="idCoord.x = mod(roundedIDVisibility, multiVisibilityWidth) * (1.0 / multiVisibilityWidth) + (0.5 / multiVisibilityWidth);\n";shader+="idCoord.y = floor(roundedIDVisibility / multiVisibilityWidth) * (1.0 / multiVisibilityHeight) + (0.5 / multiVisibilityHeight);\n";shader+="vec4 visibility = texture2D( multiVisibilityMap, idCoord );\n";shader+="if (visibility.r < 1.0) discard; \n";}
if(properties.MULTIDIFFALPMAP){shader+="idCoord.x = mod(roundedIDMaterial, multiDiffuseAlphaWidth) * (1.0 / multiDiffuseAlphaWidth) + (0.5 / multiDiffuseAlphaWidth);\n";shader+="idCoord.y = floor(roundedIDMaterial / multiDiffuseAlphaWidth) * (1.0 / multiDiffuseAlphaHeight) + (0.5 / multiDiffuseAlphaHeight);\n";shader+="vec4 diffAlpha = texture2D( multiDiffuseAlphaMap, idCoord );\n";shader+="color.rgb = "+x3dom.shader.decodeGamma(properties,"diffAlpha.rgb")+";\n";shader+="color.a = diffAlpha.a;\n";}
if(properties.MULTIEMIAMBMAP){shader+="idCoord.x = mod(roundedIDMaterial, multiDiffuseAlphaWidth) * (1.0 / multiDiffuseAlphaWidth) + (0.5 / multiDiffuseAlphaWidth);\n";shader+="idCoord.y = floor(roundedIDMaterial / multiDiffuseAlphaWidth) * (1.0 / multiDiffuseAlphaHeight) + (0.5 / multiDiffuseAlphaHeight);\n";shader+="vec4 emiAmb = texture2D( multiEmissiveAmbientMap, idCoord );\n";shader+="_emissiveColor = emiAmb.rgb;\n";shader+="_ambientIntensity = emiAmb.a;\n";}
if(properties.VERTEXCOLOR){if(properties.COLCOMPONENTS===3){shader+="color.rgb = "+x3dom.shader.decodeGamma(properties,"fragColor")+";\n";}else if(properties.COLCOMPONENTS===4){shader+="color = "+x3dom.shader.decodeGamma(properties,"fragColor")+";\n";}}
if(properties.LIGHTS){shader+="vec3 ambient   = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 diffuse   = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 specular  = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 normal    = normalize(fragNormal);\n";shader+="vec3 eye    = -fragPosition.xyz;\n";if(properties.NORMALMAP){shader+="vec3 n = normalize( fragNormal );\n";if(x3dom.caps.STD_DERIVATIVES){shader+="normal = perturb_normal( n, fragPosition.xyz, vec2(fragTexcoord.x, 1.0-fragTexcoord.y) );\n";}else{shader+="vec3 t = normalize( fragTangent );\n";shader+="vec3 b = normalize( fragBinormal );\n";shader+="mat3 tangentToWorld = mat3(t, b, n);\n";shader+="normal = texture2D( normalMap, vec2(fragTexcoord.x, 1.0-fragTexcoord.y) ).rgb;\n";shader+="normal = 2.0 * normal - 1.0;\n";shader+="normal = normalize( normal * tangentToWorld );\n";shader+="normal.y = -normal.y;\n";shader+="normal.x = -normal.x;\n";}}
if(properties.SHINMAP){shader+="_shininess = texture2D( shininessMap, vec2(fragTexcoord.x, 1.0-fragTexcoord.y) ).r;\n";}
if(properties.SPECMAP){shader+="_specularColor = "+x3dom.shader.decodeGamma(properties,"texture2D(specularMap, vec2(fragTexcoord.x, 1.0-fragTexcoord.y)).rgb")+";\n";}
if(properties.MULTISPECSHINMAP){shader+="idCoord.x = mod(roundedIDMaterial, multiSpecularShininessWidth) * (1.0 / multiSpecularShininessWidth) + (0.5 / multiSpecularShininessWidth);\n";shader+="idCoord.y = floor(roundedIDMaterial / multiSpecularShininessWidth) * (1.0 / multiSpecularShininessHeight) + (0.5 / multiSpecularShininessHeight);\n";shader+="vec4 specShin = texture2D( multiSpecularShininessMap, idCoord );\n";shader+="_specularColor = specShin.rgb;\n";shader+="_shininess = specShin.a;\n";}
if(!properties.SOLID||properties.TWOSIDEDMAT){shader+="if (dot(normal, eye) < 0.0) {\n";shader+="  normal *= -1.0;\n";shader+="}\n";}
if(properties.SEPARATEBACKMAT){shader+="  if(!gl_FrontFacing) {\n";shader+="    color.rgb = "+x3dom.shader.decodeGamma(properties,"backDiffuseColor")+";\n";shader+="    color.a = 1.0 - backTransparency;\n";shader+="    _shininess = backShininess;\n";shader+="    _emissiveColor = backEmissiveColor;\n";shader+="    _specularColor = backSpecularColor;\n";shader+="    _ambientIntensity = backAmbientIntensity;\n";shader+="  }\n";}
if(properties.LIGHTS){shader+="vec3 ads;\n";for(var l=0;l<properties.LIGHTS;l++){var lightCol="light"+l+"_Color";shader+="ads = lighting(light"+l+"_Type, "+"light"+l+"_Location, "+"light"+l+"_Direction, "+
lightCol+", "+"light"+l+"_Attenuation, "+"light"+l+"_Radius, "+"light"+l+"_Intensity, "+"light"+l+"_AmbientIntensity, "+"light"+l+"_BeamWidth, "+"light"+l+"_CutOffAngle, "+"normal, eye, _shininess, _ambientIntensity);\n";shader+="   ambient  += "+lightCol+" * ads.r;\n"+"   diffuse  += "+lightCol+" * ads.g;\n"+"   specular += "+lightCol+" * ads.b;\n";}
shader+="ambient = max(ambient, 0.0);\n";shader+="diffuse = max(diffuse, 0.0);\n";shader+="specular = max(specular, 0.0);\n";}
if(properties.TEXTURED||properties.DIFFUSEMAP||properties.DIFFPLACEMENTMAP){if(properties.CUBEMAP){shader+="vec3 viewDir = normalize(fragViewDir);\n";shader+="vec3 reflected = reflect(viewDir, normal);\n";shader+="reflected = (modelViewMatrixInverse * vec4(reflected,0.0)).xyz;\n";shader+="vec4 texColor = "+x3dom.shader.decodeGamma(properties,"textureCube(cubeMap, reflected)")+";\n";shader+="color.a *= texColor.a;\n";}
else if(properties.DIFFPLACEMENTMAP)
{shader+="vec2 texCoord = vec2(fragTexcoord.x, 1.0-fragTexcoord.y);\n";shader+="vec4 texColor = texture2D(diffuseDisplacementMap, texCoord);\n";}
else
{if(properties.PIXELTEX){shader+="vec2 texCoord = fragTexcoord;\n";}else{shader+="vec2 texCoord = vec2(fragTexcoord.x, 1.0-fragTexcoord.y);\n";}
shader+="vec4 texColor = "+x3dom.shader.decodeGamma(properties,"texture2D(diffuseMap, texCoord)")+";\n";shader+="color.a *= texColor.a;\n";}
if(properties.BLENDING){shader+="color.rgb = (_emissiveColor + max(ambient + diffuse, 0.0) * color.rgb + specular*_specularColor);\n";if(properties.CUBEMAP){shader+="color.rgb = mix(color.rgb, texColor.rgb, vec3(0.75));\n";}else{shader+="color.rgb *= texColor.rgb;\n";}}else{shader+="color.rgb = (_emissiveColor + max(ambient + diffuse, 0.0) * texColor.rgb + specular*_specularColor);\n";}}else{shader+="color.rgb = (_emissiveColor + max(ambient + diffuse, 0.0) * color.rgb + specular*_specularColor);\n";}}else{if(properties.APPMAT&&!properties.VERTEXCOLOR){shader+="color = vec4(0.0, 0.0, 0.0, 1.0 - transparency);\n";}
if(properties.TEXTURED||properties.DIFFUSEMAP){if(properties.PIXELTEX){shader+="vec2 texCoord = fragTexcoord;\n";}else{shader+="vec2 texCoord = vec2(fragTexcoord.x, 1.0-fragTexcoord.y);\n";}
if(properties.IS_PARTICLE){shader+="texCoord = clamp(gl_PointCoord, 0.01, 0.99);\n";}
shader+="vec4 texColor = "+x3dom.shader.decodeGamma(properties,"texture2D(diffuseMap, texCoord)")+";\n";shader+="color.a = texColor.a;\n";if(properties.BLENDING||properties.IS_PARTICLE){shader+="color.rgb += _emissiveColor.rgb;\n";shader+="color.rgb *= texColor.rgb;\n";}else{shader+="color = texColor;\n";}}else if(!properties.VERTEXCOLOR&&!properties.POINTLINE2D){shader+="color.rgb += _emissiveColor;\n";}else if(!properties.VERTEXCOLOR&&properties.POINTLINE2D){shader+="color.rgb = _emissiveColor;\n";if(properties.IS_PARTICLE){shader+="float pAlpha = 1.0 - clamp(length((gl_PointCoord - 0.5) * 2.0), 0.0, 1.0);\n";shader+="color.rgb *= vec3(pAlpha);\n";shader+="color.a = pAlpha;\n";}}else if(properties.IS_PARTICLE){shader+="float pAlpha = 1.0 - clamp(length((gl_PointCoord - 0.5) * 2.0), 0.0, 1.0);\n";shader+="color.rgb *= vec3(pAlpha);\n";shader+="color.a = pAlpha;\n";}}
if(properties.CLIPPLANES)
{shader+="if (cappingColor.r != -1.0) {\n";shader+="    color.rgb = cappingColor;\n";shader+="}\n";}
if(properties.TEXT){shader+="if (color.a <= 0.5) discard;\n";}else{shader+="if (color.a <= "+properties.ALPHATHRESHOLD+") discard;\n";}
shader+="color = clamp(color, 0.0, 1.0);\n";shader+="color = "+x3dom.shader.encodeGamma(properties,"color")+";\n";if(properties.FOG){shader+="float f0 = calcFog(fragEyePosition);\n";shader+="color.rgb = fogColor * (1.0-f0) + f0 * (color.rgb);\n";}
shader+="gl_FragColor = color;\n";shader+="}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logInfo("FRAGMENT:\n"+shader);x3dom.debug.logError("FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.DynamicMobileShader=function(gl,properties)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl,properties);var fragmentShader=this.generateFragmentShader(gl,properties);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.DynamicMobileShader.prototype.generateVertexShader=function(gl,properties)
{var shader="";shader+=x3dom.shader.material();if(properties.TWOSIDEDMAT){shader+=x3dom.shader.twoSidedMaterial();}
shader+="uniform mat4 normalMatrix;\n";shader+="uniform mat4 modelViewMatrix;\n";shader+="uniform mat4 modelViewProjectionMatrix;\n";if(properties.POSCOMPONENTS==3){shader+="attribute vec3 position;\n";}else if(properties.POSCOMPONENTS==4){shader+="attribute vec4 position;\n";}
if(properties.IMAGEGEOMETRY){shader+="uniform vec3 IG_bboxMin;\n";shader+="uniform vec3 IG_bboxMax;\n";shader+="uniform float IG_coordTextureWidth;\n";shader+="uniform float IG_coordTextureHeight;\n";shader+="uniform vec2 IG_implicitMeshSize;\n";for(var i=0;i<properties.IG_PRECISION;i++){shader+="uniform sampler2D IG_coords"+i+"\n;";}
if(properties.IG_INDEXED){shader+="uniform sampler2D IG_index;\n";shader+="uniform float IG_indexTextureWidth;\n";shader+="uniform float IG_indexTextureHeight;\n";}}
if(properties.POPGEOMETRY){shader+="uniform float PG_precisionLevel;\n";shader+="uniform float PG_powPrecision;\n";shader+="uniform vec3 PG_maxBBSize;\n";shader+="uniform vec3 PG_bbMin;\n";shader+="uniform vec3 PG_bbMaxModF;\n";shader+="uniform vec3 PG_bboxShiftVec;\n";shader+="uniform float PG_numAnchorVertices;\n";shader+="attribute float PG_vertexID;\n";}
if(!properties.POINTLINE2D){if(properties.IMAGEGEOMETRY){shader+="uniform sampler2D IG_normals;\n";}else{if(properties.NORCOMPONENTS==2){if(properties.POSCOMPONENTS!=4){shader+="attribute vec2 normal;\n";}}else if(properties.NORCOMPONENTS==3){shader+="attribute vec3 normal;\n";}}}
shader+="varying vec4 fragColor;\n";if(properties.VERTEXCOLOR){if(properties.IMAGEGEOMETRY){shader+="uniform sampler2D IG_colors;";}else{if(properties.COLCOMPONENTS==3){shader+="attribute vec3 color;";}else if(properties.COLCOMPONENTS==4){shader+="attribute vec4 color;";}}}
if(properties.TEXTURED){shader+="varying vec2 fragTexcoord;\n";if(properties.IMAGEGEOMETRY){shader+="uniform sampler2D IG_texCoords;";}else{shader+="attribute vec2 texcoord;\n";}
if(properties.TEXTRAFO){shader+="uniform mat4 texTrafoMatrix;\n";}
if(!properties.BLENDING){shader+="varying vec3 fragAmbient;\n";shader+="varying vec3 fragDiffuse;\n";}
if(properties.CUBEMAP){shader+="varying vec3 fragViewDir;\n";shader+="varying vec3 fragNormal;\n";shader+="uniform mat4 viewMatrix;\n";}}
if(properties.FOG){shader+=x3dom.shader.fog();}
if(properties.LIGHTS){shader+=x3dom.shader.light(properties.LIGHTS);}
if(properties.REQUIREBBOX){shader+="uniform vec3 bgCenter;\n";shader+="uniform vec3 bgSize;\n";shader+="uniform float bgPrecisionMax;\n";}
if(properties.REQUIREBBOXNOR){shader+="uniform float bgPrecisionNorMax;\n";}
if(properties.REQUIREBBOXCOL){shader+="uniform float bgPrecisionColMax;\n";}
if(properties.REQUIREBBOXTEX){shader+="uniform float bgPrecisionTexMax;\n";}
shader+="void main(void) {\n";shader+="gl_PointSize = 2.0;\n";if(properties.IMAGEGEOMETRY){if(properties.IG_INDEXED){shader+="vec2 halfPixel = vec2(0.5/IG_indexTextureWidth,0.5/IG_indexTextureHeight);\n";shader+="vec2 IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_indexTextureWidth), position.y*(IG_implicitMeshSize.y/IG_indexTextureHeight)) + halfPixel;\n";shader+="vec2 IG_indices = texture2D( IG_index, IG_texCoord ).rg;\n";shader+="halfPixel = vec2(0.5/IG_coordTextureWidth,0.5/IG_coordTextureHeight);\n";shader+="IG_texCoord = (IG_indices * 0.996108948) + halfPixel;\n";}else{shader+="vec2 halfPixel = vec2(0.5/IG_coordTextureWidth, 0.5/IG_coordTextureHeight);\n";shader+="vec2 IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_coordTextureWidth), position.y*(IG_implicitMeshSize.y/IG_coordTextureHeight)) + halfPixel;\n";}
shader+="vec3 temp = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 vertPosition = vec3(0.0, 0.0, 0.0);\n";for(var i=0;i<properties.IG_PRECISION;i++){shader+="temp = 255.0 * texture2D( IG_coords"+i+", IG_texCoord ).rgb;\n";shader+="vertPosition *= 256.0;\n";shader+="vertPosition += temp;\n";}
shader+="vertPosition /= (pow(2.0, 8.0 * "+properties.IG_PRECISION+".0) - 1.0);\n";shader+="vertPosition = vertPosition * (IG_bboxMax - IG_bboxMin) + IG_bboxMin;\n";if(!properties.POINTLINE2D){shader+="vec3 vertNormal = texture2D( IG_normals, IG_texCoord ).rgb;\n";shader+="vertNormal = vertNormal * 2.0 - 1.0;\n";}
if(properties.VERTEXCOLOR){if(properties.COLCOMPONENTS==3){shader+="vec3 vertColor = texture2D( IG_colors, IG_texCoord ).rgb;";}else if(properties.COLCOMPONENTS==4){shader+="vec4 vertColor = texture2D( IG_colors, IG_texCoord ).rgba;";}}
if(properties.TEXTURED){shader+="vec4 IG_doubleTexCoords = texture2D( IG_texCoords, IG_texCoord );\n";shader+="vec2 vertTexCoord;";shader+="vertTexCoord.r = (IG_doubleTexCoords.r * 0.996108948) + (IG_doubleTexCoords.b * 0.003891051);\n";shader+="vertTexCoord.g = (IG_doubleTexCoords.g * 0.996108948) + (IG_doubleTexCoords.a * 0.003891051);\n";}}else{shader+="vec3 vertPosition = position.xyz;\n";if(properties.POPGEOMETRY){shader+="vec3 offsetVec = step(vertPosition / bgPrecisionMax, PG_bbMaxModF) * PG_bboxShiftVec;\n";shader+="if ((PG_precisionLevel <= 2.0) || PG_vertexID >= PG_numAnchorVertices) {\n";shader+="   vertPosition = floor(vertPosition / PG_powPrecision) * PG_powPrecision;\n";shader+="   vertPosition /= (65536.0 - PG_powPrecision);\n";shader+="}\n";shader+="else {\n";shader+="   vertPosition /= bgPrecisionMax;\n";shader+="}\n";shader+="vertPosition = (vertPosition + offsetVec + PG_bbMin) * PG_maxBBSize;\n";}
else if(properties.REQUIREBBOX){shader+="vertPosition = bgCenter + bgSize * vertPosition / bgPrecisionMax;\n";}
if(!properties.POINTLINE2D){if(properties.NORCOMPONENTS==2){if(properties.POSCOMPONENTS==4){shader+="vec3 vertNormal = vec3(position.w / 256.0); \n";shader+="vertNormal.x = floor(vertNormal.x) / 255.0; \n";shader+="vertNormal.y = fract(vertNormal.y) * 1.00392156862745; \n";}else if(properties.REQUIREBBOXNOR){shader+="vec3 vertNormal = vec3(normal.xy, 0.0) / bgPrecisionNorMax;\n";}else{shader+="vec3 vertNormal = vec3(normal.xy, 0.0);\n";}
shader+="vec2 thetaPhi = 3.14159265358979 * vec2(vertNormal.x, vertNormal.y*2.0-1.0); \n";shader+="vec4 sinCosThetaPhi = vec4(thetaPhi, thetaPhi + 1.5707963267949); \n";shader+="vec4 thetaPhiPow2 = sinCosThetaPhi * sinCosThetaPhi; \n";shader+="vec4 thetaPhiPow3 =  thetaPhiPow2  * sinCosThetaPhi; \n";shader+="vec4 thetaPhiPow5 =  thetaPhiPow3  * thetaPhiPow2; \n";shader+="vec4 thetaPhiPow7 =  thetaPhiPow5  * thetaPhiPow2; \n";shader+="vec4 thetaPhiPow9 =  thetaPhiPow7  * thetaPhiPow2; \n";shader+="sinCosThetaPhi +=  -0.16666666667   * thetaPhiPow3; \n";shader+="sinCosThetaPhi +=   0.00833333333   * thetaPhiPow5; \n";shader+="sinCosThetaPhi +=  -0.000198412698  * thetaPhiPow7; \n";shader+="sinCosThetaPhi +=   0.0000027557319 * thetaPhiPow9; \n";shader+="vertNormal.x = sinCosThetaPhi.x * sinCosThetaPhi.w; \n";shader+="vertNormal.y = sinCosThetaPhi.x * sinCosThetaPhi.y; \n";shader+="vertNormal.z = sinCosThetaPhi.z; \n";}else{shader+="vec3 vertNormal = normal;\n";if(properties.REQUIREBBOXNOR){shader+="vertNormal = vertNormal / bgPrecisionNorMax;\n";}
if(properties.POPGEOMETRY){shader+="vertNormal = 2.0*vertNormal - 1.0;\n";}}}
if(properties.VERTEXCOLOR){if(properties.COLCOMPONENTS==3){shader+="vec3 vertColor = color;";}else if(properties.COLCOMPONENTS==4){shader+="vec4 vertColor = color;";}
if(properties.REQUIREBBOXCOL){shader+="vertColor = vertColor / bgPrecisionColMax;\n";}}
if(properties.TEXTURED){shader+="vec2 vertTexCoord = texcoord;\n";if(properties.REQUIREBBOXTEX){shader+="vertTexCoord = vertTexCoord / bgPrecisionTexMax;\n";}}}
shader+="vec3 positionMV = (modelViewMatrix * vec4(vertPosition, 1.0)).xyz;\n";if(!properties.POINTLINE2D){shader+="vec3 normalMV = normalize( (normalMatrix * vec4(vertNormal, 0.0)).xyz );\n";}
shader+="vec3 eye = -positionMV;\n";if(properties.VERTEXCOLOR){shader+="vec3 rgb = vertColor.rgb;\n";if(properties.COLCOMPONENTS==4){shader+="float alpha = vertColor.a;\n";}else if(properties.COLCOMPONENTS==3){shader+="float alpha = 1.0 - transparency;\n";}}else{shader+="vec3 rgb = diffuseColor;\n";shader+="float alpha = 1.0 - transparency;\n";}
if(properties.TEXTURED){if(properties.CUBEMAP){shader+="fragViewDir = viewMatrix[3].xyz;\n";shader+="fragNormal = normalMV;\n";}else if(properties.SPHEREMAPPING){shader+=" fragTexcoord = 0.5 + normalMV.xy / 2.0;\n";}else if(properties.TEXTRAFO){shader+=" fragTexcoord = (texTrafoMatrix * vec4(vertTexCoord, 1.0, 1.0)).xy;\n";}else{shader+=" fragTexcoord = vertTexCoord;\n";if(properties.POPGEOMETRY&&x3dom.debug.usePrecisionLevelAsTexCoord===true)
shader+="fragTexcoord = vec2(0.03125 + 0.9375 * (PG_precisionLevel / 16.0), 1.0);";}}
if(properties.LIGHTS){shader+="vec3 ambient   = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 diffuse   = vec3(0.0, 0.0, 0.0);\n";shader+="vec3 specular  = vec3(0.0, 0.0, 0.0);\n";shader+="float _shininess     = shininess;\n";shader+="vec3 _specularColor  = specularColor;\n";shader+="vec3 _emissiveColor  = emissiveColor;\n";shader+="float _ambientIntensity = ambientIntensity;\n";if(!properties.SOLID||properties.TWOSIDEDMAT){shader+="if (dot(normalMV, eye) < 0.0) {\n";shader+="  normalMV *= -1.0;\n";if(properties.SEPARATEBACKMAT){shader+="    rgb = backDiffuseColor;\n";shader+="    alpha = 1.0 - backTransparency;\n";shader+="    _shininess = backShininess;\n";shader+="    _emissiveColor = backEmissiveColor;\n";shader+="    _specularColor = backSpecularColor;\n";shader+="    _ambientIntensity = backAmbientIntensity;\n";}
shader+="  }\n";}
if(properties.LIGHTS){shader+="vec3 ads;\n";for(var l=0;l<properties.LIGHTS;l++){var lightCol="light"+l+"_Color";shader+="ads = lighting(light"+l+"_Type, "+"light"+l+"_Location, "+"light"+l+"_Direction, "+
lightCol+", "+"light"+l+"_Attenuation, "+"light"+l+"_Radius, "+"light"+l+"_Intensity, "+"light"+l+"_AmbientIntensity, "+"light"+l+"_BeamWidth, "+"light"+l+"_CutOffAngle, "+"normalMV, eye, _shininess, _ambientIntensity);\n";shader+="   ambient  += "+lightCol+" * ads.r;\n"+"   diffuse  += "+lightCol+" * ads.g;\n"+"   specular += "+lightCol+" * ads.b;\n";}
shader+="ambient = max(ambient, 0.0);\n";shader+="diffuse = max(diffuse, 0.0);\n";shader+="specular = max(specular, 0.0);\n";}
if(properties.TEXTURED&&!properties.BLENDING){shader+="fragAmbient = ambient;\n";shader+="fragDiffuse = diffuse;\n";shader+="fragColor.rgb = (_emissiveColor + specular*_specularColor);\n";shader+="fragColor.a = alpha;\n";}else{shader+="fragColor.rgb = (_emissiveColor + max(ambient + diffuse, 0.0) * rgb + specular*_specularColor);\n";shader+="fragColor.a = alpha;\n";}}else{if(properties.APPMAT&&!properties.VERTEXCOLOR){shader+="rgb = vec3(0.0, 0.0, 0.0);\n";}
if(properties.TEXTURED&&!properties.BLENDING){shader+="fragAmbient = vec3(0.0);\n";shader+="fragDiffuse = vec3(1.0);\n";shader+="fragColor.rgb = vec3(0.0);\n";shader+="fragColor.a = alpha;\n";}else if(!properties.VERTEXCOLOR&&properties.POINTLINE2D){shader+="fragColor.rgb = emissiveColor;\n";shader+="fragColor.a = alpha;\n";}else{shader+="fragColor.rgb = rgb + emissiveColor;\n";shader+="fragColor.a = alpha;\n";}}
if(properties.FOG){shader+="float f0 = calcFog(-positionMV);\n";shader+="fragColor.rgb = fogColor * (1.0-f0) + f0 * (fragColor.rgb);\n";}
shader+="gl_Position = modelViewProjectionMatrix * vec4(vertPosition, 1.0);\n";shader+="}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[DynamicMobileShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.DynamicMobileShader.prototype.generateFragmentShader=function(gl,properties)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="varying vec4 fragColor;\n";if(properties.TEXTURED){if(properties.CUBEMAP){shader+="uniform samplerCube cubeMap;\n";shader+="varying vec3 fragViewDir;\n";shader+="varying vec3 fragNormal;\n";shader+="uniform mat4 modelViewMatrixInverse;\n";}else{shader+="uniform sampler2D diffuseMap;           \n";shader+="varying vec2 fragTexcoord;       \n";}
if(!properties.BLENDING){shader+="varying vec3 fragAmbient;\n";shader+="varying vec3 fragDiffuse;\n";}}
shader+="void main(void) {\n";shader+="vec4 color = fragColor;\n";if(properties.TEXTURED){if(properties.CUBEMAP){shader+="vec3 normal = normalize(fragNormal);\n";shader+="vec3 viewDir = normalize(fragViewDir);\n";shader+="vec3 reflected = reflect(viewDir, normal);\n";shader+="reflected = (modelViewMatrixInverse * vec4(reflected,0.0)).xyz;\n";shader+="vec4 texColor = textureCube(cubeMap, reflected);\n";}else{shader+="vec4 texColor = texture2D(diffuseMap, vec2(fragTexcoord.s, 1.0-fragTexcoord.t));\n";}
if(properties.BLENDING){if(properties.CUBEMAP){shader+="color.rgb = mix(color.rgb, texColor.rgb, vec3(0.75));\n";shader+="color.a = texColor.a;\n";}else{shader+="color.rgb *= texColor.rgb;\n";shader+="color.a *= texColor.a;\n";}}else{shader+="color.rgb += max(fragAmbient + fragDiffuse, 0.0) * texColor.rgb;\n";shader+="color.a *= texColor.a;\n";}}
if(properties.TEXT){shader+="if (color.a <= 0.5) discard;\n";}else{shader+="if (color.a <= 0.1) discard;\n";}
shader+="gl_FragColor = clamp(color, 0.0, 1.0);\n";shader+="}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[DynamicMobileShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.DynamicShaderPicking=function(gl,properties,pickMode)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl,properties,pickMode);var fragmentShader=this.generateFragmentShader(gl,properties,pickMode);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.DynamicShaderPicking.prototype.generateVertexShader=function(gl,properties,pickMode)
{var shader="";shader+="uniform mat4 modelMatrix;\n";shader+="uniform mat4 modelViewProjectionMatrix;\n";shader+="attribute vec3 position;\n";shader+="uniform vec3 from;\n";shader+="varying vec3 worldCoord;\n";if(pickMode==1){shader+="attribute vec3 color;\n";shader+="varying vec3 fragColor;\n";}else if(pickMode==2){shader+="attribute vec2 texcoord;\n";shader+="varying vec3 fragColor;\n";}
if(properties.REQUIREBBOX){shader+="uniform vec3 bgCenter;\n";shader+="uniform vec3 bgSize;\n";shader+="uniform float bgPrecisionMax;\n";}
if(properties.REQUIREBBOXCOL){shader+="uniform float bgPrecisionColMax;\n";}
if(properties.REQUIREBBOXTEX){shader+="uniform float bgPrecisionTexMax;\n";}
if(properties.VERTEXID){shader+="uniform float shadowIDs;\n";if(pickMode==3){shader+="varying vec3 idCoord;\n";}else{shader+="varying vec2 idCoord;\n";}
shader+="varying float fragID;\n";shader+="attribute float id;\n";}
if(properties.IMAGEGEOMETRY){shader+="uniform vec3 IG_bboxMin;\n";shader+="uniform vec3 IG_bboxMax;\n";shader+="uniform float IG_coordTextureWidth;\n";shader+="uniform float IG_coordTextureHeight;\n";shader+="uniform vec2 IG_implicitMeshSize;\n";for(var i=0;i<properties.IG_PRECISION;i++){shader+="uniform sampler2D IG_coords"+i+"\n;";}
if(properties.IG_INDEXED){shader+="uniform sampler2D IG_index;\n";shader+="uniform float IG_indexTextureWidth;\n";shader+="uniform float IG_indexTextureHeight;\n";}}
if(properties.POPGEOMETRY){shader+="uniform float PG_precisionLevel;\n";shader+="uniform float PG_powPrecision;\n";shader+="uniform vec3 PG_maxBBSize;\n";shader+="uniform vec3 PG_bbMin;\n";shader+="uniform vec3 PG_bbMaxModF;\n";shader+="uniform vec3 PG_bboxShiftVec;\n";shader+="uniform float PG_numAnchorVertices;\n";shader+="attribute float PG_vertexID;\n";}
if(properties.CLIPPLANES){shader+="uniform mat4 modelViewMatrix;\n";shader+="varying vec4 fragPosition;\n";}
shader+="void main(void) {\n";shader+="gl_PointSize = 2.0;\n";shader+="vec3 pos = position;\n";if(properties.VERTEXID){if(pickMode==0){shader+="idCoord = vec2((id + shadowIDs) / 256.0);\n";shader+="idCoord.x = floor(idCoord.x) / 255.0;\n";shader+="idCoord.y = fract(idCoord.y) * 1.00392156862745;\n";shader+="fragID = id;\n";}else if(pickMode==3){shader+="float ID = id + shadowIDs;\n";shader+="float h = floor(ID / 256.0);\n";shader+="idCoord.x = ID - (h * 256.0);\n";shader+="idCoord.z = floor(h / 256.0);\n";shader+="idCoord.y = h - (idCoord.z * 256.0);\n";shader+="idCoord = idCoord.zyx / 255.0;\n";shader+="fragID = id;\n";}else if(pickMode==4){shader+="idCoord = vec2((id + shadowIDs) / 256.0);\n";shader+="idCoord.x = floor(idCoord.x) / 255.0;\n";shader+="idCoord.y = fract(idCoord.y) * 1.00392156862745;\n";shader+="fragID = id;\n";}}
if(properties.IMAGEGEOMETRY){if(properties.IG_INDEXED){shader+="vec2 halfPixel = vec2(0.5/IG_indexTextureWidth,0.5/IG_indexTextureHeight);\n";shader+="vec2 IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_indexTextureWidth), position.y*(IG_implicitMeshSize.y/IG_indexTextureHeight)) + halfPixel;\n";shader+="vec2 IG_indices = texture2D( IG_index, IG_texCoord ).rg;\n";shader+="halfPixel = vec2(0.5/IG_coordTextureWidth,0.5/IG_coordTextureHeight);\n";shader+="IG_texCoord = (IG_indices * 0.996108948) + halfPixel;\n";}else{shader+="vec2 halfPixel = vec2(0.5/IG_coordTextureWidth, 0.5/IG_coordTextureHeight);\n";shader+="vec2 IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_coordTextureWidth), position.y*(IG_implicitMeshSize.y/IG_coordTextureHeight)) + halfPixel;\n";}
shader+="pos = texture2D( IG_coordinateTexture, IG_texCoord ).rgb;\n";shader+="pos = pos * (IG_bboxMax - IG_bboxMin) + IG_bboxMin;\n";}else if(properties.POPGEOMETRY){shader+="vec3 offsetVec = step(pos / bgPrecisionMax, PG_bbMaxModF) * PG_bboxShiftVec;\n";shader+="if (PG_precisionLevel <= 2.0) {\n";shader+="pos = floor(pos / PG_powPrecision) * PG_powPrecision;\n";shader+="pos /= (65536.0 - PG_powPrecision);\n";shader+="}\n";shader+="else {\n";shader+="pos /= bgPrecisionMax;\n";shader+="}\n";shader+="pos = (pos + offsetVec + PG_bbMin) * PG_maxBBSize;\n";}else{if(properties.REQUIREBBOX){shader+="pos = bgCenter + bgSize * pos / bgPrecisionMax;\n";}
if(pickMode==1&&!properties.REQUIREBBOXCOL){shader+="fragColor = color;\n";}else if(pickMode==1&&properties.REQUIREBBOXCOL){shader+="fragColor = color / bgPrecisionColMax;\n";}else if(pickMode==2&&!properties.REQUIREBBOXTEX){shader+="fragColor = vec3(abs(texcoord.x), abs(texcoord.y), 0.0);\n";}else if(pickMode==2&&properties.REQUIREBBOXTEX){shader+="vec2 texCoord = texcoord / bgPrecisionTexMax;\n";shader+="fragColor = vec3(abs(texCoord.x), abs(texCoord.y), 0.0);\n";}}
if(properties.CLIPPLANES){shader+="fragPosition = (modelViewMatrix * vec4(pos, 1.0));\n";}
shader+="worldCoord = (modelMatrix * vec4(pos, 1.0)).xyz - from;\n";shader+="gl_Position = modelViewProjectionMatrix * vec4(pos, 1.0);\n";shader+="}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logInfo("VERTEX:\n"+shader);x3dom.debug.logError("VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.DynamicShaderPicking.prototype.generateFragmentShader=function(gl,properties,pickMode)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+=" precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform float highBit;\n";shader+="uniform float lowBit;\n";shader+="uniform float sceneSize;\n";shader+="varying vec3 worldCoord;\n";if(pickMode==1||pickMode==2){shader+="varying vec3 fragColor;\n";}
if(properties.VERTEXID){if(pickMode==3){shader+="varying vec3 idCoord;\n";}else{shader+="varying vec2 idCoord;\n";}
shader+="varying float fragID;\n";}
if(properties.CLIPPLANES){shader+="uniform mat4 viewMatrixInverse;\n";shader+="varying vec4 fragPosition;\n";}
if(properties.MULTIVISMAP){shader+="uniform sampler2D multiVisibilityMap;\n";shader+="uniform float multiVisibilityWidth;\n";shader+="uniform float multiVisibilityHeight;\n";}
if(properties.CLIPPLANES){shader+=x3dom.shader.clipPlanes(properties.CLIPPLANES);}
shader+="void main(void) {\n";if(properties.CLIPPLANES)
{shader+="calculateClipPlanes();\n";}
if(pickMode==1||pickMode==2){shader+="vec4 color = vec4(fragColor, lowBit);\n";}else if(pickMode==4){shader+="vec4 color = vec4(highBit, lowBit, 0.0, 0.0);\n";}else{shader+="vec4 color = vec4(0.0, 0.0, highBit, lowBit);\n";}
if(properties.VERTEXID){if(pickMode==0||pickMode==4){shader+="color.ba = idCoord;\n";}else if(pickMode==3){shader+="color.gba = idCoord;\n";}
if(properties.MULTIVISMAP){shader+="vec2 idTexCoord;\n";shader+="float roundedID = floor(fragID+0.5);\n";shader+="idTexCoord.x = (mod(roundedID, multiVisibilityWidth)) * (1.0 / multiVisibilityWidth) + (0.5 / multiVisibilityWidth);\n";shader+="idTexCoord.y = (floor(roundedID / multiVisibilityHeight)) * (1.0 / multiVisibilityHeight) + (0.5 / multiVisibilityHeight);\n";shader+="vec4 visibility = texture2D( multiVisibilityMap, idTexCoord );\n";shader+="if (visibility.r < 1.0) discard; \n";}}
if(pickMode!=1&&pickMode!=2){shader+="float d = length(worldCoord) / sceneSize;\n";}
if(pickMode==0){shader+="vec2 comp = fract(d * vec2(256.0, 1.0));\n";shader+="color.rg = comp - (comp.rr * vec2(0.0, 1.0/256.0));\n";}else if(pickMode==3){shader+="color.r = d;\n";}
shader+="gl_FragColor = color;\n";shader+="}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logInfo("FRAGMENT:\n"+shader);x3dom.debug.logError("FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.ComposedShader=function(gl,shape)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl,shape);var fragmentShader=this.generateFragmentShader(gl,shape);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.ComposedShader.prototype.generateVertexShader=function(gl,shape)
{var shader=shape._cf.appearance.node._shader._vertex._vf.url[0];var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[ComposedShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.ComposedShader.prototype.generateFragmentShader=function(gl,shape)
{var shader=shape._cf.appearance.node._shader._fragment._vf.url[0];var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[ComposedShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.NormalShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.NormalShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"attribute vec3 normal;\n"+"uniform vec3 bgCenter;\n"+"uniform vec3 bgSize;\n"+"uniform float bgPrecisionMax;\n"+"uniform float bgPrecisionNorMax;\n"+"uniform mat4 normalMatrix;\n"+"uniform mat4 modelViewProjectionMatrix;\n"+"varying vec3 fragNormal;\n"+"void main(void) {\n"+"    vec3 pos = bgCenter + bgSize * position / bgPrecisionMax;\n"+"    fragNormal = (normalMatrix * vec4(normal / bgPrecisionNorMax, 0.0)).xyz;\n"+"    gl_Position = modelViewProjectionMatrix * vec4(pos, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[NormalShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.NormalShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="varying vec3 fragNormal;\n"+"void main(void) {\n"+"    gl_FragColor = vec4(normalize(fragNormal) / 2.0 + 0.5, 1.0);\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[NormalShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.FrontgroundTextureShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.FrontgroundTextureShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    vec2 texCoord = (position.xy + 1.0) * 0.5;\n"+"    fragTexCoord = texCoord;\n"+"    gl_Position = vec4(position.xy, 0.0, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[FrontgroundTextureShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.FrontgroundTextureShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform sampler2D tex;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    vec4 col = texture2D(tex, fragTexCoord);\n"+"    gl_FragColor = vec4(col.rgb, 1.0);\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[FrontgroundTextureShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.BackgroundTextureShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.BackgroundTextureShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    vec2 texCoord = (position.xy + 1.0) * 0.5;\n"+"    fragTexCoord = texCoord;\n"+"    gl_Position = vec4(position.xy, 0.0, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BackgroundTextureShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.BackgroundTextureShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform sampler2D tex;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    gl_FragColor = texture2D(tex, fragTexCoord);\n"+"}";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BackgroundTextureShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.BackgroundSkyTextureShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.BackgroundSkyTextureShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"attribute vec2 texcoord;\n"+"uniform mat4 modelViewProjectionMatrix;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    fragTexCoord = texcoord;\n"+"    gl_Position = modelViewProjectionMatrix * vec4(position, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BackgroundSkyTextureShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.BackgroundSkyTextureShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform sampler2D tex;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    gl_FragColor = texture2D(tex, fragTexCoord);\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BackgroundSkyTextureShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.BackgroundCubeTextureShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.BackgroundCubeTextureShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"uniform mat4 modelViewProjectionMatrix;\n"+"varying vec3 fragNormal;\n"+"\n"+"void main(void) {\n"+"    fragNormal = normalize(position);\n"+"    gl_Position = modelViewProjectionMatrix * vec4(position, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BackgroundCubeTextureShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.BackgroundCubeTextureShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform samplerCube tex;\n"+"varying vec3 fragNormal;\n"+"\n"+"float magn(float val) {\n"+"    return ((val >= 0.0) ? val : -1.0 * val);\n"+"}"+"\n"+"void main(void) {\n"+"    vec3 normal = -reflect(normalize(fragNormal), vec3(0.0,0.0,1.0));\n"+"    if (magn(normal.y) >= magn(normal.x) && magn(normal.y) >= magn(normal.z))\n"+"        normal.xz = -normal.xz;\n"+"    gl_FragColor = textureCube(tex, normal);\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BackgroundCubeTextureShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.ShadowShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.ShadowShader.prototype.generateVertexShader=function(gl)
{var shader="";if(!x3dom.caps.MOBILE){shader+="attribute vec3 position;\n"+"uniform mat4 modelViewProjectionMatrix;\n"+"varying vec4 projCoords;\n"+"uniform float imageGeometry;\n"+"uniform vec3 IG_bboxMin;\n"+"uniform vec3 IG_bboxMax;\n"+"uniform float IG_coordTextureWidth;\n"+"uniform float IG_coordTextureHeight;\n"+"uniform float IG_indexTextureWidth;\n"+"uniform float IG_indexTextureHeight;\n"+"uniform sampler2D IG_indexTexture;\n"+"uniform sampler2D IG_coordinateTexture;\n"+"uniform vec2 IG_implicitMeshSize;\n"+"uniform vec3 bgCenter;\n"+"uniform vec3 bgSize;\n"+"uniform float bgPrecisionMax;\n"+"uniform float popGeometry;\n"+"uniform float PG_precisionLevel;\n"+"uniform float PG_powPrecision;\n"+"uniform vec3 PG_maxBBSize;\n"+"uniform vec3 PG_bbMin;\n"+"uniform vec3 PG_bbMaxModF;\n"+"uniform vec3 PG_bboxShiftVec;\n"+"void main(void) {\n"+" vec3 pos;\n"+" if (imageGeometry != 0.0) {\n"+"  vec2 IG_texCoord;\n"+"  if(imageGeometry == 1.0) {\n"+"   vec2 halfPixel = vec2(0.5/IG_indexTextureWidth,0.5/IG_indexTextureHeight);\n"+"   IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_indexTextureWidth), position.y*(IG_implicitMeshSize.y/IG_indexTextureHeight)) + halfPixel;\n"+"   vec2 IG_index = texture2D( IG_indexTexture, IG_texCoord ).rg;\n"+"   IG_texCoord = IG_index * 0.996108948;\n"+"  } else {\n"+"   vec2 halfPixel = vec2(0.5/IG_coordTextureWidth, 0.5/IG_coordTextureHeight);\n"+"   IG_texCoord = vec2(position.x*(IG_implicitMeshSize.x/IG_coordTextureWidth), position.y*(IG_implicitMeshSize.y/IG_coordTextureHeight)) + halfPixel;\n"+"  }\n"+"  pos = texture2D( IG_coordinateTexture, IG_texCoord ).rgb;\n"+"   pos = pos * (IG_bboxMax - IG_bboxMin) + IG_bboxMin;\n"+" } else if (popGeometry != 0.0){\n"+"  pos = position;\n"+"  vec3 offsetVec = step(pos / bgPrecisionMax, PG_bbMaxModF) * PG_bboxShiftVec;\n"+"  if (PG_precisionLevel <= 2.0) {\n"+"     pos = floor(pos / PG_powPrecision) * PG_powPrecision;\n"+"     pos /= (65536.0 - PG_powPrecision);\n"+"  }\n"+"  else {\n"+"     pos /= bgPrecisionMax;\n"+"  }\n"+"  pos = (pos + offsetVec + PG_bbMin) * PG_maxBBSize;\n"+" } else {\n"+"  pos = bgCenter + bgSize * position / bgPrecisionMax;\n"+" }\n"+"   projCoords = modelViewProjectionMatrix * vec4(pos, 1.0);\n"+"   gl_Position = projCoords;\n"+"}\n";}else{shader="attribute vec3 position;\n"+"uniform vec3 bgCenter;\n"+"uniform vec3 bgSize;\n"+"uniform float bgPrecisionMax;\n"+"uniform mat4 modelViewProjectionMatrix;\n"+"varying vec4 projCoords;\n"+"void main(void) {\n"+" vec3 pos = bgCenter + bgSize * position / bgPrecisionMax;\n"+" projCoords = modelViewProjectionMatrix * vec4(pos, 1.0);\n"+" gl_Position = projCoords;\n"+"}\n";}
var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[ShadowShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.ShadowShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="varying vec4 projCoords;\n"+"uniform float offset;\n"+"uniform bool cameraView;\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE)
shader+=x3dom.shader.rgbaPacking();shader+="void main(void) {\n"+"    vec3 proj = (projCoords.xyz / projCoords.w);\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE){shader+="gl_FragColor = packDepth(proj.z);\n";}else{shader+=" if (!cameraView){\n"+"  proj.z = (proj.z + 1.0)*0.5;\n"+"  proj.y = proj.z * proj.z;\n"+" }\n";shader+=" gl_FragColor = vec4(proj, 1.0);\n";}
shader+="}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[ShadowShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.ShadowRenderingShader=function(gl,shadowedLights)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl,shadowedLights);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.ShadowRenderingShader.prototype.generateVertexShader=function(gl)
{var shader="";shader+="attribute vec2 position;\n";shader+="varying vec2 vPosition;\n";shader+="void main(void) {\n";shader+=" vPosition = position;\n";shader+=" gl_Position = vec4(position, -1.0, 1.0);\n";shader+="}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[ShadowRendering] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.ShadowRenderingShader.prototype.generateFragmentShader=function(gl,shadowedLights)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform mat4 inverseViewProj;\n";shader+="uniform mat4 inverseProj;\n";shader+="varying vec2 vPosition;\n";shader+="uniform sampler2D sceneMap;\n";for(var i=0;i<5;i++)
shader+="uniform float cascade"+i+"_Depth;\n";for(var l=0;l<shadowedLights.length;l++){shader+="uniform float light"+l+"_On;\n"+"uniform float light"+l+"_Type;\n"+"uniform vec3  light"+l+"_Location;\n"+"uniform vec3  light"+l+"_Direction;\n"+"uniform vec3  light"+l+"_Attenuation;\n"+"uniform float light"+l+"_Radius;\n"+"uniform float light"+l+"_BeamWidth;\n"+"uniform float light"+l+"_CutOffAngle;\n"+"uniform float light"+l+"_ShadowIntensity;\n"+"uniform float light"+l+"_ShadowOffset;\n"+"uniform mat4 light"+l+"_ViewMatrix;\n";for(var j=0;j<6;j++){shader+="uniform mat4 light"+l+"_"+j+"_Matrix;\n";shader+="uniform sampler2D light"+l+"_"+j+"_ShadowMap;\n";}
for(var j=0;j<5;j++)
shader+="uniform float light"+l+"_"+j+"_Split;\n";}
if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE)
shader+=x3dom.shader.rgbaPacking();shader+=x3dom.shader.shadowRendering();shader+=x3dom.shader.gammaCorrectionDecl({});shader+="void main(void) {\n"+" float shadowValue = 1.0;\n"+" vec2 texCoordsSceneMap = (vPosition + 1.0)*0.5;\n"+" vec4 projCoords = texture2D(sceneMap, texCoordsSceneMap);\n"+" if (projCoords != vec4(1.0,1.0,1.0,0.0)){\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE){shader+=" projCoords.z = unpackDepth(projCoords);\n"+" projCoords.w = 1.0;\n";}
shader+=" projCoords = projCoords / projCoords.w;\n"+" projCoords.xy = vPosition;\n"+" vec4 eyeCoords = inverseProj*projCoords;\n"+" vec4 worldCoords = inverseViewProj*projCoords;\n"+" float lightInfluence = 0.0;\n";for(var l=0;l<shadowedLights.length;l++){shader+=" lightInfluence = getLightInfluence(light"+l+"_Type, light"+l+"_ShadowIntensity, light"+l+"_On, light"+l+"_Location, light"+l+"_Direction, "+"light"+l+"_CutOffAngle, light"+l+"_BeamWidth, light"+l+"_Attenuation, light"+l+"_Radius, eyeCoords.xyz/eyeCoords.w);\n"+" if (lightInfluence != 0.0){\n"+"  vec4 shadowMapValues;\n"+"  float viewSampleDepth;\n";if(!x3dom.isa(shadowedLights[l],x3dom.nodeTypes.PointLight)){shader+="  getShadowValuesCascaded(shadowMapValues, viewSampleDepth, worldCoords, -eyeCoords.z/eyeCoords.w,"+"light"+l+"_0_Matrix,light"+l+"_1_Matrix,light"+l+"_2_Matrix,light"+l+"_3_Matrix,light"+l+"_4_Matrix,light"+l+"_5_Matrix,"+"light"+l+"_0_ShadowMap,light"+l+"_1_ShadowMap,light"+l+"_2_ShadowMap,light"+l+"_3_ShadowMap,"+"light"+l+"_4_ShadowMap,light"+l+"_5_ShadowMap, light"+l+"_0_Split, light"+l+"_1_Split, light"+l+"_2_Split, light"+l+"_3_Split, \n"+"light"+l+"_4_Split);\n";}else{shader+="  getShadowValuesPointLight(shadowMapValues, viewSampleDepth, light"+l+"_Location, worldCoords, light"+l+"_ViewMatrix, "+"light"+l+"_0_Matrix,light"+l+"_1_Matrix,light"+l+"_2_Matrix,light"+l+"_3_Matrix,light"+l+"_4_Matrix,light"+l+"_5_Matrix,"+"light"+l+"_0_ShadowMap,light"+l+"_1_ShadowMap,light"+l+"_2_ShadowMap,light"+l+"_3_ShadowMap,"+"light"+l+"_4_ShadowMap,light"+l+"_5_ShadowMap);\n";}
if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE)
shader+=" shadowValue *= clamp(ESM(shadowMapValues.z, viewSampleDepth, light"+l+"_ShadowOffset), "+"    1.0 - light"+l+"_ShadowIntensity*lightInfluence, 1.0);\n";else
shader+="  shadowValue *= clamp(VSM(shadowMapValues.zy, viewSampleDepth, light"+l+"_ShadowOffset), "+"    1.0 - light"+l+"_ShadowIntensity*lightInfluence, 1.0);\n";shader+=" }\n";}
shader+="}\n"+" gl_FragColor = "+x3dom.shader.encodeGamma({},"vec4(shadowValue, shadowValue, shadowValue, 1.0)")+";\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[ShadowRendering] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.TextureRefinementShader=function(gl){this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.TextureRefinementShader.prototype.generateVertexShader=function(gl){var shader="attribute vec2 position;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    fragTexCoord = (position.xy + 1.0) / 2.0;\n"+"    gl_Position = vec4(position, -1.0, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[TextureRefinementShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.TextureRefinementShader.prototype.generateFragmentShader=function(gl){var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n"+" precision highp float;\n"+"#else\n"+" precision mediump float;\n"+"#endif\n\n";shader+="uniform sampler2D stamp;\n"+"uniform sampler2D lastTex;\n"+"uniform sampler2D curTex;\n"+"uniform int mode;\n"+"uniform vec2 repeat;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void init(void);\n"+"void refine(void);\n"+"\n"+"void main(void) {\n"+"    if (mode == 0) { init(); }\n"+"    else { refine(); }\n"+"}\n"+"\n"+"void init(void) {\n"+"    gl_FragColor = texture2D(curTex, fragTexCoord);\n"+"}\n"+"\n"+"void refine(void) {\n"+"    vec3 red = texture2D(stamp, repeat * fragTexCoord).rgb;\n"+"    vec3 v1  = texture2D(lastTex, fragTexCoord).rgb;\n"+"    vec3 v2  = texture2D(curTex, fragTexCoord).rgb;\n"+"    if (red.r <= 0.5) {\n"+"        gl_FragColor = vec4(v1, 1.0);\n"+"    }\n"+"    else {\n"+"        gl_FragColor = vec4(v2, 1.0);\n"+"    }\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[TextureRefinementShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.BlurShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.BlurShader.prototype.generateVertexShader=function(gl)
{var shader="";shader+="attribute vec2 position;\n";shader+="varying vec2 vPosition;\n";shader+="void main(void) {\n";shader+=" vPosition = position;\n";shader+=" gl_Position = vec4(position, -1.0, 1.0);\n";shader+="}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BlurShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.BlurShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="varying vec2 vPosition;\n"+"uniform sampler2D texture;\n"+"uniform bool horizontal;\n"+"uniform float pixelSizeHor;\n"+"uniform float pixelSizeVert;\n"+"uniform int filterSize;\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE){shader+=x3dom.shader.rgbaPacking()+"void main(void) {\n"+" vec2 texCoords = (vPosition + 1.0)*0.5;\n"+" vec2 offset;\n"+" if (horizontal) offset = vec2(pixelSizeHor, 0.0);\n"+" else offset = vec2(0.0, pixelSizeVert);\n"+" float depth = unpackDepth(texture2D(texture, texCoords));\n"+" if (filterSize == 3){\n"+"  depth = depth * 0.3844;\n"+"  depth += 0.3078*unpackDepth(texture2D(texture, texCoords-offset));\n"+"  depth += 0.3078*unpackDepth(texture2D(texture, texCoords+offset));\n"+" } else if (filterSize == 5){\n"+"  depth = depth * 0.2921;\n"+"  depth += 0.2339*unpackDepth(texture2D(texture, texCoords-offset));\n"+"  depth += 0.2339*unpackDepth(texture2D(texture, texCoords+offset));\n"+"  depth += 0.1201*unpackDepth(texture2D(texture, texCoords-2.0*offset));\n"+"  depth += 0.1201*unpackDepth(texture2D(texture, texCoords+2.0*offset));\n"+" } else if (filterSize == 7){\n"+"  depth = depth * 0.2161;\n"+"  depth += 0.1907*unpackDepth(texture2D(texture, texCoords-offset));\n"+"  depth += 0.1907*unpackDepth(texture2D(texture, texCoords+offset));\n"+"  depth += 0.1311*unpackDepth(texture2D(texture, texCoords-2.0*offset));\n"+"  depth += 0.1311*unpackDepth(texture2D(texture, texCoords+2.0*offset));\n"+"  depth += 0.0702*unpackDepth(texture2D(texture, texCoords-3.0*offset));\n"+"  depth += 0.0702*unpackDepth(texture2D(texture, texCoords+3.0*offset));\n"+" }\n"+" gl_FragColor = packDepth(depth);\n"+"}\n";}else{shader+="void main(void) {\n"+" vec2 texCoords = (vPosition + 1.0)*0.5;\n"+" vec2 offset;\n"+" if (horizontal) offset = vec2(pixelSizeHor, 0.0);\n"+" else offset = vec2(0.0, pixelSizeVert);\n"+" vec4 color = texture2D(texture, texCoords);\n"+" if (filterSize == 3){\n"+"  color = color * 0.3844;\n"+"  color += 0.3078*texture2D(texture, texCoords-offset);\n"+"  color += 0.3078*texture2D(texture, texCoords+offset);\n"+" } else if (filterSize == 5){\n"+"  color = color * 0.2921;\n"+"  color += 0.2339*texture2D(texture, texCoords-offset);\n"+"  color += 0.2339*texture2D(texture, texCoords+offset);\n"+"  color += 0.1201*texture2D(texture, texCoords-2.0*offset);\n"+"  color += 0.1201*texture2D(texture, texCoords+2.0*offset);\n"+" } else if (filterSize == 7){\n"+"  color = color * 0.2161;\n"+"  color += 0.1907*texture2D(texture, texCoords-offset);\n"+"  color += 0.1907*texture2D(texture, texCoords+offset);\n"+"  color += 0.1311*texture2D(texture, texCoords-2.0*offset);\n"+"  color += 0.1311*texture2D(texture, texCoords+2.0*offset);\n"+"  color += 0.0702*texture2D(texture, texCoords-3.0*offset);\n"+"  color += 0.0702*texture2D(texture, texCoords+3.0*offset);\n"+" }\n"+" gl_FragColor = color;\n"+"}\n";}
var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[BlurShader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.SSAOShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.SSAOShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"varying vec2 depthTexCoord;\n"+"varying vec2 randomTexCoord;\n"+"uniform vec2 randomTextureTilingFactor;\n"+"\n"+"void main(void) {\n"+"    vec2 texCoord = (position.xy + 1.0) * 0.5;\n"+"    depthTexCoord = texCoord;\n"+"  randomTexCoord = randomTextureTilingFactor*texCoord;\n"+"    gl_Position = vec4(position.xy, 0.0, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[SSAOShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.SSAOShader.depthReconsructionFunctionCode=function()
{var code="uniform float depthReconstructionConstantA;\n"+"uniform float depthReconstructionConstantB;\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE)
code+=x3dom.shader.rgbaPacking();code+="float getDepth(vec2 depthTexCoord) {\n"+"    vec4 col = texture2D(depthTexture, depthTexCoord);\n"+"    float d;\n";if(!x3dom.caps.FP_TEXTURES||x3dom.caps.MOBILE){code+="    d = unpackDepth(col);\n";}else{code+="    d = col.b;\n"}
code+="    return depthReconstructionConstantB/(depthReconstructionConstantA+d);\n";code+="}\n";return code;}
x3dom.shader.SSAOShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform sampler2D depthTexture;\n"+"uniform sampler2D randomTexture;\n"+"uniform float nearPlane;\n"+"uniform float farPlane;\n"+"uniform float radius;\n"+"uniform float depthBufferEpsilon;\n"+"uniform vec3 samples[16];\n"+"varying vec2 depthTexCoord;\n"+"varying vec2 randomTexCoord;\n";shader+=x3dom.shader.SSAOShader.depthReconsructionFunctionCode();shader+="void main(void) {\n"+"    float referenceDepth = getDepth(depthTexCoord);\n"+"    if(referenceDepth == 1.0)\n"+"    {\n"+"        gl_FragColor = vec4(1.0,1.0,1.0, 1.0);\n"+"        return;\n"+"    }\n"+"    int numOcclusions = 0;\n"+"    for(int i = 0; i<16; ++i){\n"+"        float scale  = 1.0/referenceDepth;\n"+"        vec3 samplepos = reflect(samples[i],texture2D(randomTexture,randomTexCoord).xyz*2.0-vec3(1.0,1.0,1.0));\n"+"        float sampleDepth = getDepth(depthTexCoord+samplepos.xy*scale*radius);\n"+"        //if(abs(sampleDepth-referenceDepth)<=radius*(1.0/nearPlane))\n"+"        if( sampleDepth < referenceDepth-depthBufferEpsilon) {\n"+"            ++numOcclusions;\n"+"        }\n"+"    }\n"+"    float r = 1.0-float(numOcclusions)/16.0;\n"+"    r*=2.0;\n"+"    gl_FragColor = vec4(r,r,r, 1.0);\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[SSAOhader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.shader.SSAOBlurShader=function(gl)
{this.program=gl.createProgram();var vertexShader=this.generateVertexShader(gl);var fragmentShader=this.generateFragmentShader(gl);gl.attachShader(this.program,vertexShader);gl.attachShader(this.program,fragmentShader);gl.bindAttribLocation(this.program,0,"position");gl.linkProgram(this.program);return this.program;};x3dom.shader.SSAOBlurShader.prototype.generateVertexShader=function(gl)
{var shader="attribute vec3 position;\n"+"varying vec2 fragTexCoord;\n"+"\n"+"void main(void) {\n"+"    vec2 texCoord = (position.xy + 1.0) * 0.5;\n"+"    fragTexCoord = texCoord;\n"+"    gl_Position = vec4(position.xy, 0.0, 1.0);\n"+"}\n";var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,shader);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[SSAOShader] VertexShader "+gl.getShaderInfoLog(vertexShader));}
return vertexShader;};x3dom.shader.SSAOBlurShader.prototype.generateFragmentShader=function(gl)
{var shader="#ifdef GL_FRAGMENT_PRECISION_HIGH\n";shader+="precision highp float;\n";shader+="#else\n";shader+=" precision mediump float;\n";shader+="#endif\n\n";shader+="uniform sampler2D SSAOTexture;\n"+"uniform sampler2D depthTexture;\n"+"uniform float nearPlane;\n"+"uniform float farPlane;\n"+"uniform float amount;\n"+"uniform vec2 pixelSize;\n"+"uniform float depthThreshold;\n"+"varying vec2 fragTexCoord;\n";shader+=x3dom.shader.SSAOShader.depthReconsructionFunctionCode();shader+="void main(void) {\n"+"    float sum = 0.0;\n"+"    float numSamples = 0.0;\n"+"    float referenceDepth = getDepth(fragTexCoord);\n"+"    for(int i = -2; i<2;i++){\n"+"        for(int j = -2; j<2;j++){\n"+"            vec2 sampleTexCoord = fragTexCoord+vec2(pixelSize.x*float(i),pixelSize.y*float(j));\n"+"            if(abs(referenceDepth - getDepth(sampleTexCoord))<depthThreshold){\n"+"                sum+= texture2D(SSAOTexture,sampleTexCoord).r;\n"+"                numSamples++;\n"+"    }}}\n"+"    float intensity = mix(1.0,sum/numSamples,amount);\n"+"    gl_FragColor = vec4(intensity,intensity,intensity,1.0);\n"+"}\n";var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,shader);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){x3dom.debug.logError("[SSAOhader] FragmentShader "+gl.getShaderInfoLog(fragmentShader));}
return fragmentShader;};x3dom.SSAO={};x3dom.SSAO.isEnabled=function(scene){return scene.getEnvironment()._vf.SSAO};x3dom.SSAO.reinitializeShadersIfNecessary=function(gl){if(x3dom.SSAO.shaderProgram===undefined){x3dom.SSAO.shaderProgram=x3dom.Utils.wrapProgram(gl,new x3dom.shader.SSAOShader(gl),"ssao");}
if(x3dom.SSAO.blurShaderProgram===undefined){x3dom.SSAO.blurShaderProgram=x3dom.Utils.wrapProgram(gl,new x3dom.shader.SSAOBlurShader(gl),"ssao-blur");}};x3dom.SSAO.reinitializeRandomTextureIfNecessary=function(gl,scene){var sizeHasChanged=scene.getEnvironment()._vf.SSAOrandomTextureSize!=x3dom.SSAO.currentRandomTextureSize;if(x3dom.SSAO.randomTexture===undefined){x3dom.SSAO.randomTexture=gl.createTexture();}
if(x3dom.SSAO.randomTexture===undefined||sizeHasChanged){gl.bindTexture(gl.TEXTURE_2D,x3dom.SSAO.randomTexture);var rTexSize=x3dom.SSAO.currentRandomTextureSize=scene.getEnvironment()._vf.SSAOrandomTextureSize;var randomImageBuffer=new ArrayBuffer(rTexSize*rTexSize*4);var randomImageView=new Uint8Array(randomImageBuffer);for(var i=0;i<rTexSize*rTexSize;++i){var x=Math.random()*2.0-1.0;var y=Math.random()*2.0-1.0;var z=0;var length=Math.sqrt(x*x+y*y+z*z);x/=length;y/=length;randomImageView[4*i]=(x+1.0)*0.5*255.0;randomImageView[4*i+1]=(y+1.0)*0.5*255.0;randomImageView[4*i+2]=(z+1.0)*0.5*255.0;randomImageView[4*i+3]=255;}
gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,rTexSize,rTexSize,0,gl.RGBA,gl.UNSIGNED_BYTE,randomImageView);gl.bindTexture(gl.TEXTURE_2D,null);}};x3dom.SSAO.reinitializeFBOIfNecessary=function(gl,canvas){var dimensionsHaveChanged=x3dom.SSAO.currentFBOWidth!=canvas.width||x3dom.SSAO.currentFBOHeight!=canvas.height;if(x3dom.SSAO.fbo===undefined||dimensionsHaveChanged)
{x3dom.SSAO.currentFBOWidth=canvas.width;x3dom.SSAO.currentFBOHeight=canvas.height;var oldfbo=gl.getParameter(gl.FRAMEBUFFER_BINDING);if(x3dom.SSAO.fbo===undefined){x3dom.SSAO.fbo=gl.createFramebuffer();}
gl.bindFramebuffer(gl.FRAMEBUFFER,x3dom.SSAO.fbo);if(x3dom.SSAO.fbotex===undefined){x3dom.SSAO.fbotex=gl.createTexture();}
gl.bindTexture(gl.TEXTURE_2D,x3dom.SSAO.fbotex);gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,x3dom.SSAO.currentFBOWidth,x3dom.SSAO.currentFBOHeight,0,gl.RGBA,gl.UNSIGNED_BYTE,null);gl.bindTexture(gl.TEXTURE_2D,null);gl.framebufferTexture2D(gl.FRAMEBUFFER,gl.COLOR_ATTACHMENT0,gl.TEXTURE_2D,x3dom.SSAO.fbotex,0);gl.bindFramebuffer(gl.FRAMEBUFFER,oldfbo);}};x3dom.SSAO.render=function(stateManager,gl,scene,tex,canvas,fbo){var oldfbo=gl.getParameter(gl.FRAMEBUFFER_BINDING);if(fbo!=null){gl.bindFramebuffer(gl.FRAMEBUFFER,fbo);}
stateManager.frontFace(gl.CCW);stateManager.disable(gl.CULL_FACE);stateManager.disable(gl.DEPTH_TEST);var sp=x3dom.SSAO.shaderProgram;stateManager.useProgram(sp);sp.depthTexture=0;sp.randomTexture=1;sp.radius=scene.getEnvironment()._vf.SSAOradius;sp.randomTextureTilingFactor=[canvas.width/x3dom.SSAO.currentRandomTextureSize,canvas.height/x3dom.SSAO.currentRandomTextureSize];var viewpoint=scene.getViewpoint();var nearPlane=viewpoint.getNear();var farPlane=viewpoint.getFar();sp.nearPlane=nearPlane;sp.farPlane=farPlane;sp.depthReconstructionConstantA=(farPlane+nearPlane)/(nearPlane-farPlane);sp.depthReconstructionConstantB=(2.0*farPlane*nearPlane)/(nearPlane-farPlane);sp.depthBufferEpsilon=0.0001*(farPlane-nearPlane);sp.samples=[0.03800223814729654,0.10441029119843426,-0.04479934806797181,-0.03800223814729654,-0.10441029119843426,0.04479934806797181,-0.17023209847088397,0.1428416910414532,0.6154407640895228,0.17023209847088397,-0.1428416910414532,-0.6154407640895228,-0.288675134594813,-0.16666666666666646,-0.3774214123135722,0.288675134594813,0.16666666666666646,0.3774214123135722,0.07717696785196887,-0.43769233467209245,-0.5201284112706428,-0.07717696785196887,0.43769233467209245,0.5201284112706428,0.5471154183401156,-0.09647120981496134,-0.15886420745887797,-0.5471154183401156,0.09647120981496134,0.15886420745887797,0.3333333333333342,0.5773502691896253,-0.8012446019636266,-0.3333333333333342,-0.5773502691896253,0.8012446019636266,-0.49994591864508653,0.5958123446480936,-0.15385106176844343,0.49994591864508653,-0.5958123446480936,0.15385106176844343,-0.8352823295874743,-0.3040179051783715,0.7825440557226517,0.8352823295874743,0.3040179051783715,-0.7825440557226517];if(!sp.tex){sp.tex=0;}
gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,x3dom.SSAO.randomTexture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.REPEAT);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.REPEAT);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,scene._fgnd._webgl.buffers[0]);gl.bindBuffer(gl.ARRAY_BUFFER,scene._fgnd._webgl.buffers[1]);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);gl.drawElements(scene._fgnd._webgl.primType,scene._fgnd._webgl.indexes.length,gl.UNSIGNED_SHORT,0);gl.disableVertexAttribArray(sp.position);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,null);if(fbo!=null){gl.bindFramebuffer(gl.FRAMEBUFFER,oldfbo);}};x3dom.SSAO.blur=function(stateManager,gl,scene,ssaoTexture,depthTexture,canvas,fbo){var oldfbo=gl.getParameter(gl.FRAMEBUFFER_BINDING);if(fbo!=null){gl.bindFramebuffer(gl.FRAMEBUFFER,fbo);}
stateManager.frontFace(gl.CCW);stateManager.disable(gl.CULL_FACE);stateManager.disable(gl.DEPTH_TEST);var sp=x3dom.SSAO.blurShaderProgram;stateManager.useProgram(sp);sp.SSAOTexture=0;sp.depthTexture=1;sp.depthThreshold=scene.getEnvironment()._vf.SSAOblurDepthTreshold;var viewpoint=scene.getViewpoint();var nearPlane=viewpoint.getNear();var farPlane=viewpoint.getFar();sp.nearPlane=nearPlane;sp.farPlane=farPlane;sp.depthReconstructionConstantA=(farPlane+nearPlane)/(nearPlane-farPlane);sp.depthReconstructionConstantB=(2.0*farPlane*nearPlane)/(nearPlane-farPlane);sp.pixelSize=[1.0/canvas.width,1.0/canvas.height];sp.amount=scene.getEnvironment()._vf.SSAOamount;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,ssaoTexture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,depthTexture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,scene._fgnd._webgl.buffers[0]);gl.bindBuffer(gl.ARRAY_BUFFER,scene._fgnd._webgl.buffers[1]);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);gl.drawElements(scene._fgnd._webgl.primType,scene._fgnd._webgl.indexes.length,gl.UNSIGNED_SHORT,0);gl.disableVertexAttribArray(sp.position);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,null);if(fbo!=null){gl.bindFramebuffer(gl.FRAMEBUFFER,oldfbo);}};x3dom.SSAO.renderSSAO=function(stateManager,gl,scene,canvas){this.reinitializeShadersIfNecessary(gl);this.reinitializeRandomTextureIfNecessary(gl,scene);this.reinitializeFBOIfNecessary(gl,canvas);stateManager.viewport(0,0,canvas.width,canvas.height);this.render(stateManager,gl,scene,scene._webgl.fboScene.tex,canvas,x3dom.SSAO.fbo);gl.enable(gl.BLEND);gl.blendFunc(gl.DST_COLOR,gl.ONE_MINUS_SRC_ALPHA);this.blur(stateManager,gl,scene,x3dom.SSAO.fbotex,scene._webgl.fboScene.tex,canvas,null);gl.disable(gl.BLEND);};x3dom.gfx_webgl=(function(){"use strict";function Context(ctx3d,canvas,name,x3dElem){this.ctx3d=ctx3d;this.canvas=canvas;this.name=name;this.x3dElem=x3dElem;this.IG_PositionBuffer=null;this.cache=new x3dom.Cache();this.stateManager=new x3dom.StateManager(ctx3d);}
Context.prototype.getName=function(){return this.name;};function setupContext(canvas,forbidMobileShaders,forceMobileShaders,tryWebGL2,x3dElem){var validContextNames=['webgl','experimental-webgl','moz-webgl','webkit-3d'];if(tryWebGL2){validContextNames=['experimental-webgl2'].concat(validContextNames);}
var ctx=null;var envNodes=x3dElem.getElementsByTagName("Environment");var ssaoEnabled=(envNodes&&envNodes[0]&&envNodes[0].hasAttribute("SSAO")&&envNodes[0].getAttribute("SSAO").toLowerCase()==='true')?true:false;var ctxAttribs={alpha:true,depth:true,stencil:true,antialias:!ssaoEnabled,premultipliedAlpha:false,preserveDrawingBuffer:true,failIfMajorPerformanceCaveat:true};for(var i=0;i<validContextNames.length;i++){try{ctx=canvas.getContext(validContextNames[i],ctxAttribs);if(!ctx){x3dom.caps.RENDERMODE="SOFTWARE";ctxAttribs.failIfMajorPerformanceCaveat=false;ctx=canvas.getContext(validContextNames[i],ctxAttribs);}
if(ctx){var newCtx=new Context(ctx,canvas,'webgl',x3dElem);try{x3dom.caps.VENDOR=ctx.getParameter(ctx.VENDOR);x3dom.caps.VERSION=ctx.getParameter(ctx.VERSION);x3dom.caps.RENDERER=ctx.getParameter(ctx.RENDERER);x3dom.caps.SHADING_LANGUAGE_VERSION=ctx.getParameter(ctx.SHADING_LANGUAGE_VERSION);x3dom.caps.RED_BITS=ctx.getParameter(ctx.RED_BITS);x3dom.caps.GREEN_BITS=ctx.getParameter(ctx.GREEN_BITS);x3dom.caps.BLUE_BITS=ctx.getParameter(ctx.BLUE_BITS);x3dom.caps.ALPHA_BITS=ctx.getParameter(ctx.ALPHA_BITS);x3dom.caps.DEPTH_BITS=ctx.getParameter(ctx.DEPTH_BITS);x3dom.caps.MAX_VERTEX_ATTRIBS=ctx.getParameter(ctx.MAX_VERTEX_ATTRIBS);x3dom.caps.MAX_VERTEX_TEXTURE_IMAGE_UNITS=ctx.getParameter(ctx.MAX_VERTEX_TEXTURE_IMAGE_UNITS);x3dom.caps.MAX_VARYING_VECTORS=ctx.getParameter(ctx.MAX_VARYING_VECTORS);x3dom.caps.MAX_VERTEX_UNIFORM_VECTORS=ctx.getParameter(ctx.MAX_VERTEX_UNIFORM_VECTORS);x3dom.caps.MAX_COMBINED_TEXTURE_IMAGE_UNITS=ctx.getParameter(ctx.MAX_COMBINED_TEXTURE_IMAGE_UNITS);x3dom.caps.MAX_TEXTURE_SIZE=ctx.getParameter(ctx.MAX_TEXTURE_SIZE);x3dom.caps.MAX_TEXTURE_IMAGE_UNITS=ctx.getParameter(ctx.MAX_TEXTURE_IMAGE_UNITS);x3dom.caps.MAX_CUBE_MAP_TEXTURE_SIZE=ctx.getParameter(ctx.MAX_CUBE_MAP_TEXTURE_SIZE);x3dom.caps.COMPRESSED_TEXTURE_FORMATS=ctx.getParameter(ctx.COMPRESSED_TEXTURE_FORMATS);x3dom.caps.MAX_RENDERBUFFER_SIZE=ctx.getParameter(ctx.MAX_RENDERBUFFER_SIZE);x3dom.caps.MAX_VIEWPORT_DIMS=ctx.getParameter(ctx.MAX_VIEWPORT_DIMS);x3dom.caps.ALIASED_LINE_WIDTH_RANGE=ctx.getParameter(ctx.ALIASED_LINE_WIDTH_RANGE);x3dom.caps.ALIASED_POINT_SIZE_RANGE=ctx.getParameter(ctx.ALIASED_POINT_SIZE_RANGE);x3dom.caps.SAMPLES=ctx.getParameter(ctx.SAMPLES);x3dom.caps.INDEX_UINT=ctx.getExtension("OES_element_index_uint");x3dom.caps.FP_TEXTURES=ctx.getExtension("OES_texture_float");x3dom.caps.FPL_TEXTURES=ctx.getExtension("OES_texture_float_linear");x3dom.caps.STD_DERIVATIVES=ctx.getExtension("OES_standard_derivatives");x3dom.caps.DRAW_BUFFERS=ctx.getExtension("WEBGL_draw_buffers");x3dom.caps.DEBUGRENDERINFO=ctx.getExtension("WEBGL_debug_renderer_info");x3dom.caps.EXTENSIONS=ctx.getSupportedExtensions();if(x3dom.caps.DEBUGRENDERINFO){x3dom.caps.UNMASKED_RENDERER_WEBGL=ctx.getParameter(x3dom.caps.DEBUGRENDERINFO.UNMASKED_RENDERER_WEBGL);x3dom.caps.UNMASKED_VENDOR_WEBGL=ctx.getParameter(x3dom.caps.DEBUGRENDERINFO.UNMASKED_VENDOR_WEBGL);}else{x3dom.caps.UNMASKED_RENDERER_WEBGL="";x3dom.caps.UNMASKED_VENDOR_WEBGL="";}
var extString=x3dom.caps.EXTENSIONS.toString().replace(/,/g,", ");x3dom.debug.logInfo(validContextNames[i]+" context found\nVendor: "+x3dom.caps.VENDOR+" "+x3dom.caps.UNMASKED_VENDOR_WEBGL+", Renderer: "+x3dom.caps.RENDERER+" "+x3dom.caps.UNMASKED_RENDERER_WEBGL+", "+"Version: "+x3dom.caps.VERSION+", "+"ShadingLangV.: "+x3dom.caps.SHADING_LANGUAGE_VERSION
+", MSAA samples: "+x3dom.caps.SAMPLES+"\nExtensions: "+extString);if(x3dom.caps.INDEX_UINT){x3dom.Utils.maxIndexableCoords=4294967295;}
x3dom.caps.MOBILE=(function(a){return(/android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))})(navigator.userAgent||navigator.vendor||window.opera);if(x3dom.caps.RENDERER.indexOf("PowerVR")>=0||navigator.appVersion.indexOf("Mobile")>-1||x3dom.caps.MAX_VARYING_VECTORS<=8||x3dom.caps.MAX_VERTEX_TEXTURE_IMAGE_UNITS<2){x3dom.caps.MOBILE=true;}
if(x3dom.caps.MOBILE){if(forbidMobileShaders){x3dom.caps.MOBILE=false;x3dom.debug.logWarning("Detected mobile graphics card! "+"But being forced to desktop shaders which might not work!");}
else{x3dom.debug.logWarning("Detected mobile graphics card! "+"Using low quality shaders without ImageGeometry support!");}}
else{if(forceMobileShaders){x3dom.caps.MOBILE=true;x3dom.debug.logWarning("Detected desktop graphics card! "+"But being forced to mobile shaders with lower quality!");}}}
catch(ex){x3dom.debug.logWarning("Your browser probably supports an older WebGL version. "+"Please try the old mobile runtime instead:\n"+"http://www.x3dom.org/x3dom/src_mobile/x3dom.js");newCtx=null;}
return newCtx;}}
catch(e){x3dom.debug.logWarning(e);}}
return null;}
Context.prototype.setupShape=function(gl,drawable,viewarea){var q=0,q6;var textures,t;var vertices,positionBuffer;var texCoordBuffer,normalBuffer,colorBuffer;var indicesBuffer,indexArray;var shape=drawable.shape;var geoNode=shape._cf.geometry.node;if(shape._webgl!==undefined){var needFullReInit=false;if(shape._dirty.colors===true&&shape._webgl.shader.color===undefined&&geoNode._mesh._colors[0].length){needFullReInit=true;}
if(needFullReInit&&shape._cleanupGLObjects){shape._cleanupGLObjects(true,false);}
if(shape._dirty.texture===true){if(shape._webgl.texture.length!=shape.getTextures().length){for(t=0;t<shape._webgl.texture.length;++t){shape._webgl.texture.pop();}
textures=shape.getTextures();for(t=0;t<textures.length;++t){shape._webgl.texture.push(new x3dom.Texture(gl,shape._nameSpace.doc,this.cache,textures[t]));}
shape._dirty.shader=true;if(shape._webgl.shader.texcoord===undefined)
shape._dirty.texcoords=true;}
else{textures=shape.getTextures();for(t=0;t<textures.length;++t){if(textures[t]===shape._webgl.texture[t].node){shape._webgl.texture[t].update();}
else{shape._webgl.texture[t].texture=null;shape._webgl.texture[t].node=textures[t];shape._webgl.texture[t].update();}}}
shape._dirty.texture=false;}
shape._webgl.shader=this.cache.getShaderByProperties(gl,shape,shape.getShaderProperties(viewarea));if(!needFullReInit&&shape._webgl.binaryGeometry==0)
{for(q=0;q<shape._webgl.positions.length;q++)
{q6=6*q;if(shape._dirty.positions==true||shape._dirty.indexes==true){if(shape._webgl.shader.position!==undefined){shape._webgl.indexes[q]=geoNode._mesh._indices[q];gl.deleteBuffer(shape._webgl.buffers[q6]);indicesBuffer=gl.createBuffer();shape._webgl.buffers[q6]=indicesBuffer;if(x3dom.caps.INDEX_UINT&&(geoNode._mesh._positions[0].length/3>65535)){indexArray=new Uint32Array(shape._webgl.indexes[q]);shape._webgl.indexType=gl.UNSIGNED_INT;}
else{indexArray=new Uint16Array(shape._webgl.indexes[q]);shape._webgl.indexType=gl.UNSIGNED_SHORT;}
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,indicesBuffer);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,indexArray,gl.STATIC_DRAW);indexArray=null;shape._webgl.positions[q]=geoNode._mesh._positions[q];gl.deleteBuffer(shape._webgl.buffers[q6+1]);positionBuffer=gl.createBuffer();shape._webgl.buffers[q6+1]=positionBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,shape._webgl.buffers[q6]);vertices=new Float32Array(shape._webgl.positions[q]);gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.vertexAttribPointer(shape._webgl.shader.position,geoNode._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);vertices=null;}
shape._dirty.positions=false;shape._dirty.indexes=false;}
if(shape._dirty.colors==true){if(shape._webgl.shader.color!==undefined){shape._webgl.colors[q]=geoNode._mesh._colors[q];gl.deleteBuffer(shape._webgl.buffers[q6+4]);colorBuffer=gl.createBuffer();shape._webgl.buffers[q6+4]=colorBuffer;colors=new Float32Array(shape._webgl.colors[q]);gl.bindBuffer(gl.ARRAY_BUFFER,colorBuffer);gl.bufferData(gl.ARRAY_BUFFER,colors,gl.STATIC_DRAW);gl.vertexAttribPointer(shape._webgl.shader.color,geoNode._mesh._numColComponents,shape._webgl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);colors=null;}
shape._dirty.colors=false;}
if(shape._dirty.normals==true){if(shape._webgl.shader.normal!==undefined){shape._webgl.normals[q]=geoNode._mesh._normals[q];gl.deleteBuffer(shape._webgl.buffers[q6+2]);normalBuffer=gl.createBuffer();shape._webgl.buffers[q6+2]=normalBuffer;normals=new Float32Array(shape._webgl.normals[q]);gl.bindBuffer(gl.ARRAY_BUFFER,normalBuffer);gl.bufferData(gl.ARRAY_BUFFER,normals,gl.STATIC_DRAW);gl.vertexAttribPointer(shape._webgl.shader.normal,geoNode._mesh._numNormComponents,shape._webgl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);normals=null;}
shape._dirty.normals=false;}
if(shape._dirty.texcoords==true){if(shape._webgl.shader.texcoord!==undefined){shape._webgl.texcoords[q]=geoNode._mesh._texCoords[q];gl.deleteBuffer(shape._webgl.buffers[q6+3]);texCoordBuffer=gl.createBuffer();shape._webgl.buffers[q6+3]=texCoordBuffer;texCoords=new Float32Array(shape._webgl.texcoords[q]);gl.bindBuffer(gl.ARRAY_BUFFER,texCoordBuffer);gl.bufferData(gl.ARRAY_BUFFER,texCoords,gl.STATIC_DRAW);gl.vertexAttribPointer(shape._webgl.shader.texCoord,geoNode._mesh._numTexComponents,shape._webgl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);texCoords=null;}
shape._dirty.texcoords=false;}
if(shape._dirty.specialAttribs==true){if(shape._webgl.shader.particleSize!==undefined){var szArr=geoNode._vf.size.toGL();if(szArr.length){gl.deleteBuffer(shape._webgl.buffers[q6+5]);shape._webgl.buffers[q6+5]=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,shape._webgl.buffers[q6+5]);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array(szArr),gl.STATIC_DRAW);}
shape._dirty.specialAttribs=false;}}}}
else
{}
if(shape._webgl.imageGeometry!=0){for(t=0;t<shape._webgl.texture.length;++t){shape._webgl.texture[t].updateTexture();}
geoNode.unsetGeoDirty();shape.unsetGeoDirty();}
if(!needFullReInit){return;}}
else if(!(x3dom.isa(geoNode,x3dom.nodeTypes.Text)||x3dom.isa(geoNode,x3dom.nodeTypes.BinaryGeometry)||x3dom.isa(geoNode,x3dom.nodeTypes.PopGeometry)||x3dom.isa(geoNode,x3dom.nodeTypes.ExternalGeometry))&&(!geoNode||geoNode._mesh._positions[0].length<1))
{if(x3dom.caps.MAX_VERTEX_TEXTURE_IMAGE_UNITS<2&&x3dom.isa(geoNode,x3dom.nodeTypes.ImageGeometry)){x3dom.debug.logError("Can't render ImageGeometry nodes with only "+
x3dom.caps.MAX_VERTEX_TEXTURE_IMAGE_UNITS+" vertex texture units. Please upgrade your GPU!");}
else{x3dom.debug.logError("NO VALID MESH OR NO VERTEX POSITIONS SET!");}
return;}
shape.unsetDirty();if(!shape._cleanupGLObjects)
{shape._cleanupGLObjects=function(force,delGL)
{if(this._webgl&&((arguments.length>0&&force)||this._parentNodes.length==0))
{var sp=this._webgl.shader;for(var q=0;q<this._webgl.positions.length;q++){var q6=6*q;if(sp.position!==undefined){gl.deleteBuffer(this._webgl.buffers[q6+1]);gl.deleteBuffer(this._webgl.buffers[q6]);}
if(sp.normal!==undefined){gl.deleteBuffer(this._webgl.buffers[q6+2]);}
if(sp.texcoord!==undefined){gl.deleteBuffer(this._webgl.buffers[q6+3]);}
if(sp.color!==undefined){gl.deleteBuffer(this._webgl.buffers[q6+4]);}
if(sp.id!==undefined){gl.deleteBuffer(this._webgl.buffers[q6+5]);}}
for(var df=0;df<this._webgl.dynamicFields.length;df++){var attrib=this._webgl.dynamicFields[df];if(sp[attrib.name]!==undefined){gl.deleteBuffer(attrib.buf);}}
if(delGL===undefined)
delGL=true;if(delGL){delete this._webgl;x3dom.BinaryContainerLoader.outOfMemory=false;}}};}
shape._webgl={positions:geoNode._mesh._positions,normals:geoNode._mesh._normals,texcoords:geoNode._mesh._texCoords,colors:geoNode._mesh._colors,indexes:geoNode._mesh._indices,indexType:gl.UNSIGNED_SHORT,coordType:gl.FLOAT,normalType:gl.FLOAT,texCoordType:gl.FLOAT,colorType:gl.FLOAT,texture:[],dirtyLighting:x3dom.Utils.checkDirtyLighting(viewarea),imageGeometry:0,binaryGeometry:0,popGeometry:0,externalGeometry:0};textures=shape.getTextures();for(t=0;t<textures.length;++t){shape._webgl.texture.push(new x3dom.Texture(gl,shape._nameSpace.doc,this.cache,textures[t]));}
shape._webgl.shader=this.cache.getShaderByProperties(gl,shape,shape.getShaderProperties(viewarea));var sp=shape._webgl.shader;var currAttribs=0;shape._webgl.buffers=[];shape._webgl.dynamicFields=[];if(x3dom.isa(geoNode,x3dom.nodeTypes.X3DBinaryContainerGeometryNode))
{shape._webgl.primType=[];for(var primCnt=0;primCnt<geoNode._vf.primType.length;++primCnt)
{shape._webgl.primType.push(x3dom.Utils.primTypeDic(gl,geoNode._vf.primType[primCnt]));}}
else
{shape._webgl.primType=x3dom.Utils.primTypeDic(gl,geoNode._mesh._primType);}
if(x3dom.isa(geoNode,x3dom.nodeTypes.ExternalGeometry))
{geoNode.updateRenderData(shape,sp,gl,viewarea,this);}
else if(x3dom.isa(geoNode,x3dom.nodeTypes.BinaryGeometry))
{x3dom.BinaryContainerLoader.setupBinGeo(shape,sp,gl,viewarea,this);}
else if(x3dom.isa(geoNode,x3dom.nodeTypes.PopGeometry))
{x3dom.BinaryContainerLoader.setupPopGeo(shape,sp,gl,viewarea,this);}
else if(x3dom.isa(geoNode,x3dom.nodeTypes.ImageGeometry))
{x3dom.BinaryContainerLoader.setupImgGeo(shape,sp,gl,viewarea,this);}
else
{for(q=0;q<shape._webgl.positions.length;q++)
{q6=6*q;if(sp.position!==undefined){indicesBuffer=gl.createBuffer();shape._webgl.buffers[q6]=indicesBuffer;if(x3dom.caps.INDEX_UINT&&(shape._webgl.positions[0].length/3>65535)){indexArray=new Uint32Array(shape._webgl.indexes[q]);shape._webgl.indexType=gl.UNSIGNED_INT;}
else{indexArray=new Uint16Array(shape._webgl.indexes[q]);shape._webgl.indexType=gl.UNSIGNED_SHORT;}
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,indicesBuffer);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,indexArray,gl.STATIC_DRAW);indexArray=null;positionBuffer=gl.createBuffer();shape._webgl.buffers[q6+1]=positionBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);vertices=new Float32Array(shape._webgl.positions[q]);gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.vertexAttribPointer(sp.position,geoNode._mesh._numPosComponents,shape._webgl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);vertices=null;}
if(sp.normal!==undefined||shape._webgl.normals[q]){normalBuffer=gl.createBuffer();shape._webgl.buffers[q6+2]=normalBuffer;var normals=new Float32Array(shape._webgl.normals[q]);gl.bindBuffer(gl.ARRAY_BUFFER,normalBuffer);gl.bufferData(gl.ARRAY_BUFFER,normals,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.normal,geoNode._mesh._numNormComponents,shape._webgl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);normals=null;}
if(sp.texcoord!==undefined){var texcBuffer=gl.createBuffer();shape._webgl.buffers[q6+3]=texcBuffer;var texCoords=new Float32Array(shape._webgl.texcoords[q]);gl.bindBuffer(gl.ARRAY_BUFFER,texcBuffer);gl.bufferData(gl.ARRAY_BUFFER,texCoords,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.texcoord,geoNode._mesh._numTexComponents,shape._webgl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);texCoords=null;}
if(sp.color!==undefined){colorBuffer=gl.createBuffer();shape._webgl.buffers[q6+4]=colorBuffer;var colors=new Float32Array(shape._webgl.colors[q]);gl.bindBuffer(gl.ARRAY_BUFFER,colorBuffer);gl.bufferData(gl.ARRAY_BUFFER,colors,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.color,geoNode._mesh._numColComponents,shape._webgl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);colors=null;}
if(sp.particleSize!==undefined){var sizeArr=geoNode._vf.size.toGL();if(sizeArr.length){var sizeBuffer=gl.createBuffer();shape._webgl.buffers[q6+5]=sizeBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,sizeBuffer);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array(sizeArr),gl.STATIC_DRAW);}}}
for(var df in geoNode._mesh._dynamicFields)
{if(!geoNode._mesh._dynamicFields.hasOwnProperty(df))
continue;var attrib=geoNode._mesh._dynamicFields[df];shape._webgl.dynamicFields[currAttribs]={buf:{},name:df,numComponents:attrib.numComponents};if(sp[df]!==undefined){var attribBuffer=gl.createBuffer();shape._webgl.dynamicFields[currAttribs++].buf=attribBuffer;var attribs=new Float32Array(attrib.value);gl.bindBuffer(gl.ARRAY_BUFFER,attribBuffer);gl.bufferData(gl.ARRAY_BUFFER,attribs,gl.STATIC_DRAW);gl.vertexAttribPointer(sp[df],attrib.numComponents,gl.FLOAT,false,0,0);attribs=null;}}}};Context.prototype.setupScene=function(gl,bgnd){var sphere=null;var texture=null;var that=this;if(bgnd._webgl!==undefined){if(!bgnd._dirty){return;}
if(bgnd._webgl.texture!==undefined&&bgnd._webgl.texture){gl.deleteTexture(bgnd._webgl.texture);}
if(bgnd._cleanupGLObjects){bgnd._cleanupGLObjects();}
bgnd._webgl={};}
bgnd._dirty=false;var url=bgnd.getTexUrl();var i=0;var w=1,h=1;if(url.length>0&&url[0].length>0){if(url.length>=6&&url[1].length>0&&url[2].length>0&&url[3].length>0&&url[4].length>0&&url[5].length>0){sphere=new x3dom.nodeTypes.Sphere();bgnd._webgl={positions:sphere._mesh._positions[0],indexes:sphere._mesh._indices[0],buffers:[{},{}]};bgnd._webgl.primType=gl.TRIANGLES;bgnd._webgl.shader=this.cache.getShader(gl,x3dom.shader.BACKGROUND_CUBETEXTURE);bgnd._webgl.texture=x3dom.Utils.createTextureCube(gl,bgnd._nameSpace.doc,url,true,bgnd._vf.crossOrigin,true,false);}
else{bgnd._webgl={positions:[-w,-h,0,-w,h,0,w,-h,0,w,h,0],indexes:[0,1,2,3],buffers:[{},{}]};url=bgnd._nameSpace.getURL(url[0]);bgnd._webgl.texture=x3dom.Utils.createTexture2D(gl,bgnd._nameSpace.doc,url,true,bgnd._vf.crossOrigin,true,false);bgnd._webgl.primType=gl.TRIANGLE_STRIP;bgnd._webgl.shader=this.cache.getShader(gl,x3dom.shader.BACKGROUND_TEXTURE);}}
else{if(bgnd.getSkyColor().length>1||bgnd.getGroundColor().length){sphere=new x3dom.nodeTypes.Sphere();texture=gl.createTexture();bgnd._webgl={positions:sphere._mesh._positions[0],texcoords:sphere._mesh._texCoords[0],indexes:sphere._mesh._indices[0],buffers:[{},{},{}],texture:texture,primType:gl.TRIANGLES};var N=x3dom.Utils.nextHighestPowerOfTwo(bgnd.getSkyColor().length+bgnd.getGroundColor().length+2);N=(N<512)?512:N;var n=bgnd._vf.groundAngle.length;var tmp=[],arr=[];var colors=[],sky=[0];for(i=0;i<bgnd._vf.skyColor.length;i++){colors[i]=bgnd._vf.skyColor[i];}
for(i=0;i<bgnd._vf.skyAngle.length;i++){sky[i+1]=bgnd._vf.skyAngle[i];}
if(n>0||bgnd._vf.groundColor.length==1){if(sky[sky.length-1]<Math.PI/2){sky[sky.length]=Math.PI/2-x3dom.fields.Eps;colors[colors.length]=colors[colors.length-1];}
for(i=n-1;i>=0;i--){if((i==n-1)&&(Math.PI-bgnd._vf.groundAngle[i]<=Math.PI/2)){sky[sky.length]=Math.PI/2;colors[colors.length]=bgnd._vf.groundColor[bgnd._vf.groundColor.length-1];}
sky[sky.length]=Math.PI-bgnd._vf.groundAngle[i];colors[colors.length]=bgnd._vf.groundColor[i+1];}
if(n==0&&bgnd._vf.groundColor.length==1){sky[sky.length]=Math.PI/2;colors[colors.length]=bgnd._vf.groundColor[0];}
sky[sky.length]=Math.PI;colors[colors.length]=bgnd._vf.groundColor[0];}
else{if(sky[sky.length-1]<Math.PI){sky[sky.length]=Math.PI;colors[colors.length]=colors[colors.length-1];}}
for(i=0;i<sky.length;i++){sky[i]/=Math.PI;}
if(sky.length!=colors.length){x3dom.debug.logError("Number of background colors and corresponding angles are different!");var minArrayLength=(sky.length<colors.length)?sky.length:colors.length;sky.length=minArrayLength;colors.length=minArrayLength;}
var interp=new x3dom.nodeTypes.ColorInterpolator();interp._vf.key=new x3dom.fields.MFFloat(sky);interp._vf.keyValue=new x3dom.fields.MFColor(colors);for(i=0;i<N;i++){interp._vf.set_fraction=i/(N-1.0);interp.fieldChanged("set_fraction");tmp[i]=interp._vf.value_changed;}
tmp.reverse();var alpha=Math.floor((1.0-bgnd.getTransparency())*255);for(i=0;i<tmp.length;i++){arr.push(Math.floor(tmp[i].r*255),Math.floor(tmp[i].g*255),Math.floor(tmp[i].b*255),alpha);}
var pixels=new Uint8Array(arr);var format=gl.RGBA;N=pixels.length/4;gl.bindTexture(gl.TEXTURE_2D,texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.pixelStorei(gl.UNPACK_ALIGNMENT,1);gl.texImage2D(gl.TEXTURE_2D,0,format,1,N,0,format,gl.UNSIGNED_BYTE,pixels);gl.bindTexture(gl.TEXTURE_2D,null);bgnd._webgl.shader=this.cache.getShader(gl,x3dom.shader.BACKGROUND_SKYTEXTURE);}
else{bgnd._webgl={};}}
if(bgnd._webgl.shader){var sp=bgnd._webgl.shader;var positionBuffer=gl.createBuffer();bgnd._webgl.buffers[1]=positionBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);var vertices=new Float32Array(bgnd._webgl.positions);gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);var indicesBuffer=gl.createBuffer();bgnd._webgl.buffers[0]=indicesBuffer;var indexArray=new Uint16Array(bgnd._webgl.indexes);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,indicesBuffer);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,indexArray,gl.STATIC_DRAW);vertices=null;indexArray=null;if(sp.texcoord!==undefined){var texcBuffer=gl.createBuffer();bgnd._webgl.buffers[2]=texcBuffer;var texcoords=new Float32Array(bgnd._webgl.texcoords);gl.bindBuffer(gl.ARRAY_BUFFER,texcBuffer);gl.bufferData(gl.ARRAY_BUFFER,texcoords,gl.STATIC_DRAW);gl.vertexAttribPointer(sp.texcoord,2,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.texcoord);texcoords=null;}
bgnd._cleanupGLObjects=function(){var sp=this._webgl.shader;if(sp.position!==undefined){gl.deleteBuffer(this._webgl.buffers[0]);gl.deleteBuffer(this._webgl.buffers[1]);}
if(sp.texcoord!==undefined){gl.deleteBuffer(this._webgl.buffers[2]);}};}
bgnd._webgl.render=function(gl,mat_view,mat_proj)
{var sp=bgnd._webgl.shader;var alpha=1.0-bgnd.getTransparency();var mat_scene=null;var projMatrix_22=mat_proj._22,projMatrix_23=mat_proj._23;var camPos=mat_view.e3();if((sp!==undefined&&sp!==null)&&(sp.texcoord!==undefined&&sp.texcoord!==null)&&(bgnd._webgl.texture!==undefined&&bgnd._webgl.texture!==null)){gl.clearColor(0,0,0,alpha);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT|gl.STENCIL_BUFFER_BIT);that.stateManager.frontFace(gl.CCW);that.stateManager.disable(gl.CULL_FACE);that.stateManager.disable(gl.DEPTH_TEST);that.stateManager.disable(gl.BLEND);that.stateManager.useProgram(sp);if(!sp.tex){sp.tex=0;}
mat_proj._22=100001/99999;mat_proj._23=200000/99999;mat_view._03=0;mat_view._13=0;mat_view._23=0;mat_scene=mat_proj.mult(mat_view);sp.modelViewProjectionMatrix=mat_scene.toGL();mat_view._03=camPos.x;mat_view._13=camPos.y;mat_view._23=camPos.z;mat_proj._22=projMatrix_22;mat_proj._23=projMatrix_23;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,bgnd._webgl.texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,bgnd._webgl.buffers[0]);gl.bindBuffer(gl.ARRAY_BUFFER,bgnd._webgl.buffers[1]);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);gl.bindBuffer(gl.ARRAY_BUFFER,bgnd._webgl.buffers[2]);gl.vertexAttribPointer(sp.texcoord,2,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.texcoord);gl.drawElements(bgnd._webgl.primType,bgnd._webgl.indexes.length,gl.UNSIGNED_SHORT,0);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);gl.disableVertexAttribArray(sp.position);gl.disableVertexAttribArray(sp.texcoord);gl.clear(gl.DEPTH_BUFFER_BIT);}
else if(!sp||!bgnd._webgl.texture||(bgnd._webgl.texture.textureCubeReady!==undefined&&bgnd._webgl.texture.textureCubeReady!==true)){var bgCol=bgnd.getSkyColor().toGL();gl.clearColor(bgCol[0],bgCol[1],bgCol[2],alpha);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT|gl.STENCIL_BUFFER_BIT);}
else{gl.clearColor(0,0,0,alpha);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT|gl.STENCIL_BUFFER_BIT);that.stateManager.frontFace(gl.CCW);that.stateManager.disable(gl.CULL_FACE);that.stateManager.disable(gl.DEPTH_TEST);that.stateManager.disable(gl.BLEND);that.stateManager.useProgram(sp);if(!sp.tex){sp.tex=0;}
if(bgnd._webgl.texture.textureCubeReady){mat_proj._22=100001/99999;mat_proj._23=200000/99999;mat_view._03=0;mat_view._13=0;mat_view._23=0;mat_scene=mat_proj.mult(mat_view);sp.modelViewProjectionMatrix=mat_scene.toGL();mat_view._03=camPos.x;mat_view._13=camPos.y;mat_view._23=camPos.z;mat_proj._22=projMatrix_22;mat_proj._23=projMatrix_23;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_CUBE_MAP,bgnd._webgl.texture);gl.texParameteri(gl.TEXTURE_CUBE_MAP,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_CUBE_MAP,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_CUBE_MAP,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_CUBE_MAP,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);}
else{gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,bgnd._webgl.texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);}
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,bgnd._webgl.buffers[0]);gl.bindBuffer(gl.ARRAY_BUFFER,bgnd._webgl.buffers[1]);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);gl.drawElements(bgnd._webgl.primType,bgnd._webgl.indexes.length,gl.UNSIGNED_SHORT,0);gl.disableVertexAttribArray(sp.position);gl.activeTexture(gl.TEXTURE0);if(bgnd._webgl.texture.textureCubeReady){gl.bindTexture(gl.TEXTURE_CUBE_MAP,null);}
else{gl.bindTexture(gl.TEXTURE_2D,null);}
gl.clear(gl.DEPTH_BUFFER_BIT);}};};Context.prototype.setupFgnds=function(gl,scene){if(scene._fgnd!==undefined){return;}
var that=this;var w=1,h=1;scene._fgnd={};scene._fgnd._webgl={positions:[-w,-h,0,-w,h,0,w,-h,0,w,h,0],indexes:[0,1,2,3],buffers:[{},{}]};scene._fgnd._webgl.primType=gl.TRIANGLE_STRIP;scene._fgnd._webgl.shader=this.cache.getShader(gl,x3dom.shader.FRONTGROUND_TEXTURE);var sp=scene._fgnd._webgl.shader;var positionBuffer=gl.createBuffer();scene._fgnd._webgl.buffers[1]=positionBuffer;gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);var vertices=new Float32Array(scene._fgnd._webgl.positions);gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);var indicesBuffer=gl.createBuffer();scene._fgnd._webgl.buffers[0]=indicesBuffer;var indexArray=new Uint16Array(scene._fgnd._webgl.indexes);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,indicesBuffer);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,indexArray,gl.STATIC_DRAW);vertices=null;indexArray=null;scene._fgnd._webgl.render=function(gl,tex){scene._fgnd._webgl.texture=tex;that.stateManager.frontFace(gl.CCW);that.stateManager.disable(gl.CULL_FACE);that.stateManager.disable(gl.DEPTH_TEST);that.stateManager.useProgram(sp);if(!sp.tex){sp.tex=0;}
gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,scene._fgnd._webgl.texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,scene._fgnd._webgl.buffers[0]);gl.bindBuffer(gl.ARRAY_BUFFER,scene._fgnd._webgl.buffers[1]);gl.vertexAttribPointer(sp.position,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);gl.drawElements(scene._fgnd._webgl.primType,scene._fgnd._webgl.indexes.length,gl.UNSIGNED_SHORT,0);gl.disableVertexAttribArray(sp.position);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);};};Context.prototype.renderShadowPass=function(gl,viewarea,mat_scene,mat_view,targetFbo,camOffset,isCameraView)
{var scene=viewarea._scene;var sp=scene._webgl.shadowShader;this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,targetFbo.fbo);this.stateManager.viewport(0,0,targetFbo.width,targetFbo.height);this.stateManager.useProgram(sp);sp.cameraView=isCameraView;sp.offset=camOffset;{sp.PG_precisionLevel=1.0;sp.PG_powPrecision=1.0;sp.PG_maxBBSize=[0,0,0];sp.PG_bbMin=[0,0,0];sp.PG_bbMaxModF=[0,0,0];sp.PG_bboxShiftVec=[0,0,0];}
gl.clearColor(1.0,1.0,1.0,0.0);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);this.stateManager.depthFunc(gl.LEQUAL);this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.enable(gl.CULL_FACE);this.stateManager.disable(gl.BLEND);var bgCenter=x3dom.fields.SFVec3f.NullVector.toGL();var bgSize=x3dom.fields.SFVec3f.OneVector.toGL();var env=scene.getEnvironment();var excludeTrans=env._vf.shadowExcludeTransparentObjects;var i,n=scene.drawableCollection.length;for(i=0;i<n;i++)
{var drawable=scene.drawableCollection.get(i);var trafo=drawable.transform;var shape=drawable.shape;var s_gl=shape._webgl;if(!s_gl||(excludeTrans&&drawable.sortType=='transparent')){continue;}
var s_geo=shape._cf.geometry.node;var s_msh=s_geo._mesh;sp.modelViewProjectionMatrix=mat_scene.mult(trafo).toGL();sp.imageGeometry=s_gl.imageGeometry;sp.popGeometry=s_gl.popGeometry;if(s_gl.coordType!=gl.FLOAT){if(!s_gl.popGeometry&&(x3dom.Utils.isUnsignedType(s_geo._vf.coordType))){sp.bgCenter=s_geo.getMin().toGL();}
else{sp.bgCenter=s_geo._vf.position.toGL();}
sp.bgSize=s_geo._vf.size.toGL();sp.bgPrecisionMax=s_geo.getPrecisionMax('coordType');}
else{sp.bgCenter=bgCenter;sp.bgSize=bgSize;sp.bgPrecisionMax=1;}
if(s_gl.colorType!=gl.FLOAT){sp.bgPrecisionColMax=s_geo.getPrecisionMax('colorType');}
if(s_gl.texCoordType!=gl.FLOAT){sp.bgPrecisionTexMax=s_geo.getPrecisionMax('texCoordType');}
if(s_gl.imageGeometry!=0&&!x3dom.caps.MOBILE)
{sp.IG_bboxMin=s_geo.getMin().toGL();sp.IG_bboxMax=s_geo.getMax().toGL();sp.IG_implicitMeshSize=s_geo._vf.implicitMeshSize.toGL();var coordTex=x3dom.Utils.findTextureByName(s_gl.texture,"IG_coords0");if(coordTex){sp.IG_coordTextureWidth=coordTex.texture.width;sp.IG_coordTextureHeight=coordTex.texture.height;}
if(s_gl.imageGeometry==1){var indexTex=x3dom.Utils.findTextureByName(s_gl.texture,"IG_index");if(indexTex){sp.IG_indexTextureWidth=indexTex.texture.width;sp.IG_indexTextureHeight=indexTex.texture.height;}
gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,indexTex.texture);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,coordTex.texture);}
else{gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,coordTex.texture);}
gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);var texUnit=0;if(s_geo.getIndexTexture()){if(!sp.IG_indexTexture){sp.IG_indexTexture=texUnit++;}}
if(s_geo.getCoordinateTexture(0)){if(!sp.IG_coordinateTexture){sp.IG_coordinateTexture=texUnit++;}}}
if(shape.isSolid()){this.stateManager.enable(gl.CULL_FACE);if(shape.isCCW()){this.stateManager.frontFace(gl.CCW);}
else{this.stateManager.frontFace(gl.CW);}}
else{this.stateManager.disable(gl.CULL_FACE);}
if(s_gl.popGeometry){var model_view=mat_view.mult(trafo);this.updatePopState(drawable,s_geo,sp,s_gl,scene,model_view,viewarea,this.x3dElem.runtime.fps);}
var q_n;if(s_gl.externalGeometry!=0)
{q_n=s_gl.primType.length;}
else
{q_n=s_gl.positions.length;}
for(var q=0;q<q_n;q++){var q6=6*q;var v,v_n,offset;if(!(sp.position!==undefined&&s_gl.buffers[q6+1]&&(s_gl.indexes[q]||s_gl.externalGeometry!=0)))
continue;if(s_gl.buffers[q6]){gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,s_gl.buffers[q6]);}
gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+1]);gl.vertexAttribPointer(sp.position,s_msh._numPosComponents,s_gl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);if(s_gl.binaryGeometry>0||s_gl.popGeometry>0){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawElements(s_gl.primType[v],s_geo._vf.vertexCount[v],s_gl.indexType,x3dom.Utils.getByteAwareOffset(offset,s_gl.indexType,gl));offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.binaryGeometry<0||s_gl.popGeometry<0||s_gl.imageGeometry){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawArrays(s_gl.primType[v],offset,s_geo._vf.vertexCount[v]);offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.externalGeometry==1)
{gl.drawElements(s_gl.primType[q],s_gl.drawCount[q],s_gl.indexType,s_gl.indexOffset[q]);}
else if(s_gl.externalGeometry==-1)
{gl.drawArrays(s_gl.primType[q],0,s_gl.drawCount[q]);}
else if(s_geo.hasIndexOffset()){var indOff=shape.tessellationProperties();for(v=0,v_n=indOff.length;v<v_n;v++){gl.drawElements(s_gl.primType,indOff[v].count,s_gl.indexType,indOff[v].offset*x3dom.Utils.getOffsetMultiplier(s_gl.indexType,gl));}}
else if(s_gl.indexes[q].length==0){gl.drawArrays(s_gl.primType,0,s_gl.positions[q].length/3);}
else{gl.drawElements(s_gl.primType,s_gl.indexes[q].length,s_gl.indexType,0);}
gl.disableVertexAttribArray(sp.position);}
if(s_gl.imageGeometry!=0&&!x3dom.caps.MOBILE){gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);if(s_gl.imageGeometry==1){gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,null);}}}
gl.flush();this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,null);};Context.prototype.renderPickingPass=function(gl,scene,mat_view,mat_scene,from,sceneSize,pickMode,lastX,lastY,width,height)
{var ps=scene._webgl.pickScale;var bufHeight=scene._webgl.fboPick.height;var x=lastX*ps;var y=(bufHeight-1)-lastY*ps;this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,scene._webgl.fboPick.fbo);this.stateManager.viewport(0,0,scene._webgl.fboPick.width,bufHeight);gl.clearColor(0.0,0.0,0.0,0.0);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);var viewarea=scene.drawableCollection.viewarea;var env=scene.getEnvironment();var n=scene.drawableCollection.length;if(env._vf.smallFeatureCulling&&env._lowPriorityThreshold<1&&viewarea.isMovingOrAnimating()){n=Math.floor(n*env._lowPriorityThreshold);if(!n&&scene.drawableCollection.length)
n=1;}
var bgCenter=x3dom.fields.SFVec3f.NullVector.toGL();var bgSize=x3dom.fields.SFVec3f.OneVector.toGL();this.stateManager.depthFunc(gl.LEQUAL);this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.enable(gl.CULL_FACE);this.stateManager.disable(gl.BLEND);if(x3dom.Utils.needLineWidth){this.stateManager.lineWidth(2);}
for(var i=0;i<n;i++)
{var drawable=scene.drawableCollection.get(i);var trafo=drawable.transform;var shape=drawable.shape;var s_gl=shape._webgl;if(!s_gl||shape._objectID<1||!shape._vf.isPickable){continue;}
var s_geo=shape._cf.geometry.node;var s_app=shape._cf.appearance.node;var s_msh=s_geo._mesh;var properties=shape.getShaderProperties(viewarea);var sp=this.cache.getShaderByProperties(gl,shape,properties,pickMode);if(!sp){return;}
this.stateManager.useProgram(sp);sp.modelMatrix=trafo.toGL();sp.modelViewProjectionMatrix=mat_scene.mult(trafo).toGL();sp.lowBit=(shape._objectID&255)/255.0;sp.highBit=(shape._objectID>>>8)/255.0;sp.from=from.toGL();sp.sceneSize=sceneSize;if(s_gl.binaryGeometry!=0&&s_geo._vf.idsPerVertex){sp.shadowIDs=(shape._vf.idOffset+x3dom.nodeTypes.Shape.objectID+2);}
if(s_gl.coordType!=gl.FLOAT){if(!s_gl.popGeometry&&(x3dom.Utils.isUnsignedType(s_geo._vf.coordType))){sp.bgCenter=s_geo.getMin().toGL();}
else{sp.bgCenter=s_geo._vf.position.toGL();}
sp.bgSize=s_geo._vf.size.toGL();sp.bgPrecisionMax=s_geo.getPrecisionMax('coordType');}
if(pickMode==1&&s_gl.colorType!=gl.FLOAT){sp.bgPrecisionColMax=s_geo.getPrecisionMax('colorType');}
if(pickMode==2&&s_gl.texCoordType!=gl.FLOAT){sp.bgPrecisionTexMax=s_geo.getPrecisionMax('texCoordType');}
if(shape._clipPlanes){sp.modelViewMatrix=mat_view.mult(trafo).toGL();sp.viewMatrixInverse=mat_view.inverse().toGL();for(var cp=0;cp<shape._clipPlanes.length;cp++){var clip_plane=shape._clipPlanes[cp].plane;var clip_trafo=shape._clipPlanes[cp].trafo;sp['clipPlane'+cp+'_Plane']=clip_trafo.multMatrixPlane(clip_plane._vf.plane).toGL();sp['clipPlane'+cp+'_CappingStrength']=clip_plane._vf.cappingStrength;sp['clipPlane'+cp+'_CappingColor']=clip_plane._vf.cappingColor.toGL();}}
if(s_gl.imageGeometry!=0&&!x3dom.caps.MOBILE)
{sp.IG_bboxMin=s_geo.getMin().toGL();sp.IG_bboxMax=s_geo.getMax().toGL();sp.IG_implicitMeshSize=s_geo._vf.implicitMeshSize.toGL();var coordTex=x3dom.Utils.findTextureByName(s_gl.texture,"IG_coords0");if(coordTex){sp.IG_coordTextureWidth=coordTex.texture.width;sp.IG_coordTextureHeight=coordTex.texture.height;}
if(s_gl.imageGeometry==1){var indexTex=x3dom.Utils.findTextureByName(s_gl.texture,"IG_index");if(indexTex){sp.IG_indexTextureWidth=indexTex.texture.width;sp.IG_indexTextureHeight=indexTex.texture.height;}
gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,indexTex.texture);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,coordTex.texture);}
else{gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,coordTex.texture);}
gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);var texUnit=0;if(s_geo.getIndexTexture()){if(!sp.IG_indexTexture){sp.IG_indexTexture=texUnit++;}}
if(s_geo.getCoordinateTexture(0)){if(!sp.IG_coordinateTexture){sp.IG_coordinateTexture=texUnit++;}}}
else if(s_gl.binaryGeometry!=0&&s_geo._vf.idsPerVertex){var shader=s_app._shader;if(shader&&x3dom.isa(s_app._shader,x3dom.nodeTypes.CommonSurfaceShader)){if(shader.getMultiVisibilityMap()){sp.multiVisibilityMap=0;var visTex=x3dom.Utils.findTextureByName(s_gl.texture,"multiVisibilityMap");sp.multiVisibilityWidth=visTex.texture.width;sp.multiVisibilityHeight=visTex.texture.height;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,visTex.texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);}}}
if(shape.isSolid()){this.stateManager.enable(gl.CULL_FACE);if(shape.isCCW()){this.stateManager.frontFace(gl.CCW);}
else{this.stateManager.frontFace(gl.CW);}}
else{this.stateManager.disable(gl.CULL_FACE);}
var depthMode=s_app?s_app._cf.depthMode.node:null;if(depthMode)
{if(depthMode._vf.enableDepthTest)
{this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.depthMask(!depthMode._vf.readOnly);this.stateManager.depthFunc(x3dom.Utils.depthFunc(gl,depthMode._vf.depthFunc));this.stateManager.depthRange(depthMode._vf.zNearRange,depthMode._vf.zFarRange);}
else
{this.stateManager.disable(gl.DEPTH_TEST);}}
else
{this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.depthMask(true);this.stateManager.depthFunc(gl.LEQUAL);}
if(s_gl.popGeometry){var model_view=mat_view.mult(trafo);this.updatePopState(drawable,s_geo,sp,s_gl,scene,model_view,viewarea,this.x3dElem.runtime.fps);}
var q_n;if(s_gl.externalGeometry!=0)
{q_n=s_gl.primType.length;}
else
{q_n=s_gl.positions.length;}
for(var q=0;q<q_n;q++){var q6=6*q;var v,v_n,offset;if(!(sp.position!==undefined&&s_gl.buffers[q6+1]&&(s_gl.indexes[q]||s_gl.externalGeometry!=0)))
continue;if(s_gl.buffers[q6]){gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,s_gl.buffers[q6]);}
gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+1]);gl.vertexAttribPointer(sp.position,s_msh._numPosComponents,s_gl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);if(pickMode==1&&sp.color!==undefined&&s_gl.buffers[q6+4]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+4]);gl.vertexAttribPointer(sp.color,s_msh._numColComponents,s_gl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);}
if(pickMode==2&&sp.texcoord!==undefined&&s_gl.buffers[q6+3]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+3]);gl.vertexAttribPointer(sp.texcoord,s_msh._numTexComponents,s_gl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);}
if(sp.id!==undefined&&s_gl.buffers[q6+5]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+5]);if(s_gl.binaryGeometry!=0&&s_geo._vf["idsPerVertex"]==true)
{gl.vertexAttribPointer(sp.id,1,gl.FLOAT,false,4,0);gl.enableVertexAttribArray(sp.id);}
else
{}}
if(s_gl.binaryGeometry>0||s_gl.popGeometry>0){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawElements(s_gl.primType[v],s_geo._vf.vertexCount[v],s_gl.indexType,x3dom.Utils.getByteAwareOffset(offset,s_gl.indexType,gl));offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.binaryGeometry<0||s_gl.popGeometry<0||s_gl.imageGeometry){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawArrays(s_gl.primType[v],offset,s_geo._vf.vertexCount[v]);offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.externalGeometry==1)
{gl.drawElements(s_gl.primType[q],s_gl.drawCount[q],s_gl.indexType,s_gl.indexOffset[q]);}
else if(s_gl.externalGeometry==-1)
{gl.drawArrays(s_gl.primType[q],0,s_gl.drawCount[q]);}
else if(s_geo.hasIndexOffset()){var indOff=shape.tessellationProperties();for(v=0,v_n=indOff.length;v<v_n;v++){gl.drawElements(s_gl.primType,indOff[v].count,s_gl.indexType,indOff[v].offset*x3dom.Utils.getOffsetMultiplier(s_gl.indexType,gl));}}
else if(s_gl.indexes[q].length==0){gl.drawArrays(s_gl.primType,0,s_gl.positions[q].length/3);}
else{gl.drawElements(s_gl.primType,s_gl.indexes[q].length,s_gl.indexType,0);}
gl.disableVertexAttribArray(sp.position);if(sp.texcoord!==undefined&&s_gl.buffers[q6+3]){gl.disableVertexAttribArray(sp.texcoord);}
if(sp.color!==undefined&&s_gl.buffers[q6+4]){gl.disableVertexAttribArray(sp.color);}
if(sp.id!==undefined&&s_gl.buffers[q6+5]){gl.disableVertexAttribArray(sp.id);}}
if(s_gl.imageGeometry!=0&&!x3dom.caps.MOBILE){gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);if(s_gl.imageGeometry==1){gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,null);}}}
if(x3dom.Utils.needLineWidth){this.stateManager.lineWidth(1);}
if(depthMode){this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.depthMask(true);this.stateManager.depthFunc(gl.LEQUAL);this.stateManager.depthRange(0,1);}
gl.flush();try{var data=new Uint8Array(4*width*height);gl.readPixels(x,y,width,height,gl.RGBA,gl.UNSIGNED_BYTE,data);scene._webgl.fboPick.pixelData=data;}
catch(se){scene._webgl.fboPick.pixelData=[];x3dom.debug.logException(se+" (cannot pick)");}
this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,null);};Context.prototype.renderShape=function(drawable,viewarea,slights,numLights,mat_view,mat_scene,mat_light,mat_proj,gl)
{var shape=drawable.shape;var transform=drawable.transform;if(!shape||!shape._webgl||!transform){x3dom.debug.logError("[Context|RenderShape] No valid Shape!");return;}
var s_gl=shape._webgl;var sp=s_gl.shader;if(!sp){x3dom.debug.logError("[Context|RenderShape] No Shader is set!");return;}
var changed=this.stateManager.useProgram(sp);var s_app=shape._cf.appearance.node;var s_geo=shape._cf.geometry.node;var s_msh=s_geo._mesh;var scene=viewarea._scene;var tex=null;if(s_gl.coordType!=gl.FLOAT){if(!s_gl.popGeometry&&(x3dom.Utils.isUnsignedType(s_geo._vf.coordType))){sp.bgCenter=s_geo.getMin().toGL();}
else{sp.bgCenter=s_geo._vf.position.toGL();}
sp.bgSize=s_geo._vf.size.toGL();sp.bgPrecisionMax=s_geo.getPrecisionMax('coordType');}
else{sp.bgCenter=[0,0,0];sp.bgSize=[1,1,1];sp.bgPrecisionMax=1;}
if(s_gl.colorType!=gl.FLOAT){sp.bgPrecisionColMax=s_geo.getPrecisionMax('colorType');}
else{sp.bgPrecisionColMax=1;}
if(s_gl.texCoordType!=gl.FLOAT){sp.bgPrecisionTexMax=s_geo.getPrecisionMax('texCoordType');}
else{sp.bgPrecisionTexMax=1;}
if(s_gl.normalType!=gl.FLOAT){sp.bgPrecisionNorMax=s_geo.getPrecisionMax('normalType');}
else{sp.bgPrecisionNorMax=1;}
if(s_gl.imageGeometry!=0){sp.IG_bboxMin=s_geo.getMin().toGL();sp.IG_bboxMax=s_geo.getMax().toGL();sp.IG_implicitMeshSize=s_geo._vf.implicitMeshSize.toGL();tex=x3dom.Utils.findTextureByName(s_gl.texture,"IG_coords0");if(tex){sp.IG_coordTextureWidth=tex.texture.width;sp.IG_coordTextureHeight=tex.texture.height;}
if(s_gl.imageGeometry==1){tex=x3dom.Utils.findTextureByName(s_gl.texture,"IG_index");if(tex){sp.IG_indexTextureWidth=tex.texture.width;sp.IG_indexTextureHeight=tex.texture.height;}}
tex=null;}
var fog=scene.getFog();if(fog&&changed){sp.fogColor=fog._vf.color.toGL();sp.fogRange=fog._vf.visibilityRange;sp.fogType=(fog._vf.fogType=="LINEAR")?0.0:1.0;}
var mat=s_app?s_app._cf.material.node:null;var shader=s_app?s_app._shader:null;var twoSidedMat=false;var isUserDefinedShader=shader&&x3dom.isa(shader,x3dom.nodeTypes.ComposedShader);if(s_gl.csshader){sp.diffuseColor=shader._vf.diffuseFactor.toGL();sp.specularColor=shader._vf.specularFactor.toGL();sp.emissiveColor=shader._vf.emissiveFactor.toGL();sp.shininess=shader._vf.shininessFactor;sp.ambientIntensity=(shader._vf.ambientFactor.x+
shader._vf.ambientFactor.y+
shader._vf.ambientFactor.z)/3;sp.transparency=1.0-shader._vf.alphaFactor;if(shader.getDisplacementMap()){tex=x3dom.Utils.findTextureByName(s_gl.texture,"displacementMap");sp.displacementWidth=tex.texture.width;sp.displacementHeight=tex.texture.height;sp.displacementFactor=shader._vf.displacementFactor;sp.displacementAxis=(shader._vf.displacementAxis=="x")?0.0:(shader._vf.displacementAxis=="y")?1.0:2.0;}
else if(shader.getDiffuseDisplacementMap()){tex=x3dom.Utils.findTextureByName(s_gl.texture,"diffuseDisplacementMap");sp.displacementWidth=tex.texture.width;sp.displacementHeight=tex.texture.height;sp.displacementFactor=shader._vf.displacementFactor;sp.displacementAxis=(shader._vf.displacementAxis=="x")?0.0:(shader._vf.displacementAxis=="y")?1.0:2.0;}
if(shader.getMultiDiffuseAlphaMap()){tex=x3dom.Utils.findTextureByName(s_gl.texture,"multiDiffuseAlphaMap");sp.multiDiffuseAlphaWidth=tex.texture.width;sp.multiDiffuseAlphaHeight=tex.texture.height;}
if(shader.getMultiEmissiveAmbientMap()){tex=x3dom.Utils.findTextureByName(s_gl.texture,"multiEmissiveAmbientMap");sp.multiEmissiveAmbientWidth=tex.texture.width;sp.multiEmissiveAmbientHeight=tex.texture.height;}
if(shader.getMultiSpecularShininessMap()){tex=x3dom.Utils.findTextureByName(s_gl.texture,"multiSpecularShininessMap");sp.multiSpecularShininessWidth=tex.texture.width;sp.multiSpecularShininessHeight=tex.texture.height;}
if(shader.getMultiVisibilityMap()){tex=x3dom.Utils.findTextureByName(s_gl.texture,"multiVisibilityMap");sp.multiVisibilityWidth=tex.texture.width;sp.multiVisibilityHeight=tex.texture.height;}}
else if(mat){sp.diffuseColor=mat._vf.diffuseColor.toGL();sp.specularColor=mat._vf.specularColor.toGL();sp.emissiveColor=mat._vf.emissiveColor.toGL();sp.shininess=mat._vf.shininess;sp.ambientIntensity=mat._vf.ambientIntensity;sp.transparency=mat._vf.transparency;if(x3dom.isa(mat,x3dom.nodeTypes.TwoSidedMaterial)){twoSidedMat=true;sp.backDiffuseColor=mat._vf.backDiffuseColor.toGL();sp.backSpecularColor=mat._vf.backSpecularColor.toGL();sp.backEmissiveColor=mat._vf.backEmissiveColor.toGL();sp.backShininess=mat._vf.backShininess;sp.backAmbientIntensity=mat._vf.backAmbientIntensity;sp.backTransparency=mat._vf.backTransparency;}}
else{sp.diffuseColor=[1.0,1.0,1.0];sp.specularColor=[0.0,0.0,0.0];sp.emissiveColor=[0.0,0.0,0.0];sp.shininess=0.0;sp.ambientIntensity=1.0;sp.transparency=0.0;}
if(shader){if(isUserDefinedShader){for(var fName in shader._vf){if(shader._vf.hasOwnProperty(fName)&&fName!=='language'){var field=shader._vf[fName];if(field!==undefined&&field!==null){if(field.toGL){sp[fName]=field.toGL();}
else{sp[fName]=field;}}}}}
else if(x3dom.isa(shader,x3dom.nodeTypes.CommonSurfaceShader)){s_gl.csshader=shader;}}
for(var p=0;p<numLights&&changed;p++){var light_transform=mat_view.mult(slights[p].getCurrentTransform());if(x3dom.isa(slights[p],x3dom.nodeTypes.DirectionalLight)){sp['light'+p+'_Type']=0.0;sp['light'+p+'_On']=(slights[p]._vf.on)?1.0:0.0;sp['light'+p+'_Color']=slights[p]._vf.color.toGL();sp['light'+p+'_Intensity']=slights[p]._vf.intensity;sp['light'+p+'_AmbientIntensity']=slights[p]._vf.ambientIntensity;sp['light'+p+'_Direction']=light_transform.multMatrixVec(slights[p]._vf.direction).toGL();sp['light'+p+'_Attenuation']=[1.0,1.0,1.0];sp['light'+p+'_Location']=[1.0,1.0,1.0];sp['light'+p+'_Radius']=0.0;sp['light'+p+'_BeamWidth']=0.0;sp['light'+p+'_CutOffAngle']=0.0;sp['light'+p+'_ShadowIntensity']=slights[p]._vf.shadowIntensity;}
else if(x3dom.isa(slights[p],x3dom.nodeTypes.PointLight)){sp['light'+p+'_Type']=1.0;sp['light'+p+'_On']=(slights[p]._vf.on)?1.0:0.0;sp['light'+p+'_Color']=slights[p]._vf.color.toGL();sp['light'+p+'_Intensity']=slights[p]._vf.intensity;sp['light'+p+'_AmbientIntensity']=slights[p]._vf.ambientIntensity;sp['light'+p+'_Direction']=[1.0,1.0,1.0];sp['light'+p+'_Attenuation']=slights[p]._vf.attenuation.toGL();sp['light'+p+'_Location']=light_transform.multMatrixPnt(slights[p]._vf.location).toGL();sp['light'+p+'_Radius']=slights[p]._vf.radius;sp['light'+p+'_BeamWidth']=0.0;sp['light'+p+'_CutOffAngle']=0.0;sp['light'+p+'_ShadowIntensity']=slights[p]._vf.shadowIntensity;}
else if(x3dom.isa(slights[p],x3dom.nodeTypes.SpotLight)){sp['light'+p+'_Type']=2.0;sp['light'+p+'_On']=(slights[p]._vf.on)?1.0:0.0;sp['light'+p+'_Color']=slights[p]._vf.color.toGL();sp['light'+p+'_Intensity']=slights[p]._vf.intensity;sp['light'+p+'_AmbientIntensity']=slights[p]._vf.ambientIntensity;sp['light'+p+'_Direction']=light_transform.multMatrixVec(slights[p]._vf.direction).toGL();sp['light'+p+'_Attenuation']=slights[p]._vf.attenuation.toGL();sp['light'+p+'_Location']=light_transform.multMatrixPnt(slights[p]._vf.location).toGL();sp['light'+p+'_Radius']=slights[p]._vf.radius;sp['light'+p+'_BeamWidth']=slights[p]._vf.beamWidth;sp['light'+p+'_CutOffAngle']=slights[p]._vf.cutOffAngle;sp['light'+p+'_ShadowIntensity']=slights[p]._vf.shadowIntensity;}}
var nav=scene.getNavigationInfo();if(nav._vf.headlight&&changed){numLights=(numLights)?numLights:0;sp['light'+numLights+'_Type']=0.0;sp['light'+numLights+'_On']=1.0;sp['light'+numLights+'_Color']=[1.0,1.0,1.0];sp['light'+numLights+'_Intensity']=1.0;sp['light'+numLights+'_AmbientIntensity']=0.0;sp['light'+numLights+'_Direction']=[0.0,0.0,-1.0];sp['light'+numLights+'_Attenuation']=[1.0,1.0,1.0];sp['light'+numLights+'_Location']=[1.0,1.0,1.0];sp['light'+numLights+'_Radius']=0.0;sp['light'+numLights+'_BeamWidth']=0.0;sp['light'+numLights+'_CutOffAngle']=0.0;sp['light'+numLights+'_ShadowIntensity']=0.0;}
if(shape._clipPlanes){for(var cp=0;cp<shape._clipPlanes.length;cp++){var clip_plane=shape._clipPlanes[cp].plane;var clip_trafo=shape._clipPlanes[cp].trafo;sp['clipPlane'+cp+'_Plane']=clip_trafo.multMatrixPlane(clip_plane._vf.plane).toGL();sp['clipPlane'+cp+'_CappingStrength']=clip_plane._vf.cappingStrength;sp['clipPlane'+cp+'_CappingColor']=clip_plane._vf.cappingColor.toGL();}}
var depthMode=s_app?s_app._cf.depthMode.node:null;if(depthMode)
{if(depthMode._vf.enableDepthTest)
{this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.depthMask(!depthMode._vf.readOnly);this.stateManager.depthFunc(x3dom.Utils.depthFunc(gl,depthMode._vf.depthFunc));this.stateManager.depthRange(depthMode._vf.zNearRange,depthMode._vf.zFarRange);}
else
{this.stateManager.disable(gl.DEPTH_TEST);}}
else
{this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.depthMask(true);this.stateManager.depthFunc(gl.LEQUAL);}
var blendMode=s_app?s_app._cf.blendMode.node:null;if(blendMode)
{var srcFactor=x3dom.Utils.blendFunc(gl,blendMode._vf.srcFactor);var destFactor=x3dom.Utils.blendFunc(gl,blendMode._vf.destFactor);if(srcFactor&&destFactor)
{this.stateManager.enable(gl.BLEND);this.stateManager.blendFuncSeparate(srcFactor,destFactor,gl.ONE,gl.ONE);this.stateManager.blendColor(blendMode._vf.color.r,blendMode._vf.color.g,blendMode._vf.color.b,1.0-blendMode._vf.colorTransparency);this.stateManager.blendEquation(x3dom.Utils.blendEquation(gl,blendMode._vf.equation));}
else
{this.stateManager.disable(gl.BLEND);}}
else
{this.stateManager.enable(gl.BLEND);this.stateManager.blendFuncSeparate(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA,gl.ONE,gl.ONE);}
var colorMaskMode=s_app?s_app._cf.colorMaskMode.node:null;if(colorMaskMode)
{this.stateManager.colorMask(colorMaskMode._vf.maskR,colorMaskMode._vf.maskG,colorMaskMode._vf.maskB,colorMaskMode._vf.maskA);}
else
{this.stateManager.colorMask(true,true,true,true);}
var lineProperties=s_app?s_app._cf.lineProperties.node:null;if(lineProperties)
{this.stateManager.lineWidth(lineProperties._vf.linewidthScaleFactor);}
else if(x3dom.Utils.needLineWidth)
{this.stateManager.lineWidth(1);}
if(shape.isSolid()&&!twoSidedMat){this.stateManager.enable(gl.CULL_FACE);if(shape.isCCW()){this.stateManager.frontFace(gl.CCW);}
else{this.stateManager.frontFace(gl.CW);}}
else{this.stateManager.disable(gl.CULL_FACE);}
var model_view=mat_view.mult(transform);var model_view_inv=model_view.inverse();sp.modelViewMatrix=model_view.toGL();sp.viewMatrix=mat_view.toGL();sp.normalMatrix=model_view_inv.transpose().toGL();sp.modelViewMatrixInverse=model_view_inv.toGL();sp.modelViewProjectionMatrix=mat_scene.mult(transform).toGL();if(isUserDefinedShader||shape._clipPlanes&&shape._clipPlanes.length)
{sp.viewMatrixInverse=mat_view.inverse().toGL();}
if(isUserDefinedShader){sp.projectionMatrix=mat_proj.toGL();sp.worldMatrix=transform.toGL();sp.worldInverseTranspose=transform.inverse().transpose().toGL();}
if(s_gl.popGeometry){this.updatePopState(drawable,s_geo,sp,s_gl,scene,model_view,viewarea,this.x3dElem.runtime.fps);}
for(var cnt=0,cnt_n=s_gl.texture.length;cnt<cnt_n;cnt++){tex=s_gl.texture[cnt];gl.activeTexture(gl.TEXTURE0+cnt);gl.bindTexture(tex.type,tex.texture);gl.texParameteri(tex.type,gl.TEXTURE_WRAP_S,tex.wrapS);gl.texParameteri(tex.type,gl.TEXTURE_WRAP_T,tex.wrapT);gl.texParameteri(tex.type,gl.TEXTURE_MAG_FILTER,tex.magFilter);gl.texParameteri(tex.type,gl.TEXTURE_MIN_FILTER,tex.minFilter);if(!shader||!isUserDefinedShader){if(!sp[tex.samplerName])
sp[tex.samplerName]=cnt;}}
if(s_app&&s_app._cf.textureTransform.node){var texTrafo=s_app.texTransformMatrix();sp.texTrafoMatrix=texTrafo.toGL();}
var attrib=null;var df,df_n=s_gl.dynamicFields.length;for(df=0;df<df_n;df++){attrib=s_gl.dynamicFields[df];if(sp[attrib.name]!==undefined){gl.bindBuffer(gl.ARRAY_BUFFER,attrib.buf);gl.vertexAttribPointer(sp[attrib.name],attrib.numComponents,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp[attrib.name]);}}
var v,v_n,offset,q_n;var isParticleSet=false;if(x3dom.isa(s_geo,x3dom.nodeTypes.ParticleSet)){isParticleSet=true;}
if(s_gl.externalGeometry!=0)
{q_n=s_gl.primType.length;}
else
{q_n=s_gl.positions.length;}
for(var q=0;q<q_n;q++){var q6=6*q;if(!(sp.position!==undefined&&s_gl.buffers[q6+1]&&(s_gl.indexes[q]||s_gl.externalGeometry!=0)))
continue;if(s_gl.buffers[q6]){if(isParticleSet&&s_geo.drawOrder()!="any"){var indexArray,zPos=[];var pnts=s_geo._cf.coord.node.getPoints();var pn=(pnts.length==s_gl.indexes[q].length)?s_gl.indexes[q].length:0;for(var i=0;i<pn;i++){var center=model_view.multMatrixPnt(pnts[i]);zPos.push([i,center.z]);}
if(s_geo.drawOrder()=="backtofront")
zPos.sort(function(a,b){return a[1]-b[1];});else
zPos.sort(function(b,a){return a[1]-b[1];});for(i=0;i<pn;i++){shape._webgl.indexes[q][i]=zPos[i][0];}
if(x3dom.caps.INDEX_UINT&&(pn>65535)){indexArray=new Uint32Array(shape._webgl.indexes[q]);shape._webgl.indexType=gl.UNSIGNED_INT;}
else{indexArray=new Uint16Array(shape._webgl.indexes[q]);shape._webgl.indexType=gl.UNSIGNED_SHORT;}
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,s_gl.buffers[q6]);gl.bufferData(gl.ELEMENT_ARRAY_BUFFER,indexArray,gl.DYNAMIC_DRAW);indexArray=null;}
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,s_gl.buffers[q6]);}
gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+1]);gl.vertexAttribPointer(sp.position,s_msh._numPosComponents,s_gl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);if(sp.normal!==undefined&&s_gl.buffers[q6+2]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+2]);gl.vertexAttribPointer(sp.normal,s_msh._numNormComponents,s_gl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);}
if(sp.texcoord!==undefined&&s_gl.buffers[q6+3]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+3]);gl.vertexAttribPointer(sp.texcoord,s_msh._numTexComponents,s_gl.texCoordType,false,shape._texCoordStrideOffset[0],shape._texCoordStrideOffset[1]);gl.enableVertexAttribArray(sp.texcoord);}
if(sp.color!==undefined&&s_gl.buffers[q6+4]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+4]);gl.vertexAttribPointer(sp.color,s_msh._numColComponents,s_gl.colorType,false,shape._colorStrideOffset[0],shape._colorStrideOffset[1]);gl.enableVertexAttribArray(sp.color);}
if((sp.id!==undefined||sp.particleSize!==undefined)&&s_gl.buffers[q6+5]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+5]);if(s_gl.binaryGeometry!=0&&s_geo._vf.idsPerVertex==true)
{gl.vertexAttribPointer(sp.id,1,gl.FLOAT,false,4,0);gl.enableVertexAttribArray(sp.id);}
else if(isParticleSet)
{gl.vertexAttribPointer(sp.particleSize,3,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.particleSize);}}
if(s_gl.popGeometry!=0&&s_gl.buffers[q6+5]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+5]);gl.vertexAttribPointer(sp.PG_vertexID,1,gl.FLOAT,false,4,0);gl.enableVertexAttribArray(sp.PG_vertexID);}
var indOff,renderMode=viewarea.getRenderMode();if(renderMode>0){var polyMode=(renderMode==1)?gl.POINTS:gl.LINES;if(s_gl.binaryGeometry>0||s_gl.popGeometry>0){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawElements(polyMode,s_geo._vf.vertexCount[v],s_gl.indexType,x3dom.Utils.getByteAwareOffset(offset,s_gl.indexType,gl));offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.binaryGeometry<0||s_gl.popGeometry<0||s_gl.imageGeometry){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawArrays(polyMode,offset,s_geo._vf.vertexCount[v]);offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.externalGeometry==1)
{gl.drawElements(polyMode,s_gl.drawCount[q],s_gl.indexType,s_gl.indexOffset[q]);}
else if(s_gl.externalGeometry==-1)
{gl.drawArrays(polyMode,0,s_gl.drawCount[q]);}
else if(s_geo.hasIndexOffset()){indOff=shape.tessellationProperties();for(v=0,v_n=indOff.length;v<v_n;v++){gl.drawElements(polyMode,indOff[v].count,s_gl.indexType,indOff[v].offset*x3dom.Utils.getOffsetMultiplier(s_gl.indexType,gl));}}
else if(s_gl.indexes[q].length==0){gl.drawArrays(polyMode,0,s_gl.positions[q].length/3);}
else{gl.drawElements(polyMode,s_gl.indexes[q].length,s_gl.indexType,0);}}
else{if(s_gl.binaryGeometry>0||s_gl.popGeometry>0){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawElements(s_gl.primType[v],s_geo._vf.vertexCount[v],s_gl.indexType,x3dom.Utils.getByteAwareOffset(offset,s_gl.indexType,gl));offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.binaryGeometry<0||s_gl.popGeometry<0||s_gl.imageGeometry){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawArrays(s_gl.primType[v],offset,s_geo._vf.vertexCount[v]);offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.externalGeometry==1)
{gl.drawElements(s_gl.primType[q],s_gl.drawCount[q],s_gl.indexType,s_gl.indexOffset[q]);}
else if(s_gl.externalGeometry==-1)
{gl.drawArrays(s_gl.primType[q],0,s_gl.drawCount[q]);}
else if(s_geo.hasIndexOffset()){indOff=shape.tessellationProperties();for(v=0,v_n=indOff.length;v<v_n;v++){gl.drawElements(s_gl.primType,indOff[v].count,s_gl.indexType,indOff[v].offset*x3dom.Utils.getOffsetMultiplier(s_gl.indexType,gl));}}
else if(s_gl.indexes[q].length==0){gl.drawArrays(s_gl.primType,0,s_gl.positions[q].length/3);}
else{gl.drawElements(s_gl.primType,s_gl.indexes[q].length,s_gl.indexType,0);}}
gl.disableVertexAttribArray(sp.position);if(sp.normal!==undefined){gl.disableVertexAttribArray(sp.normal);}
if(sp.texcoord!==undefined){gl.disableVertexAttribArray(sp.texcoord);}
if(sp.color!==undefined){gl.disableVertexAttribArray(sp.color);}
if(s_gl.buffers[q6+5]){if(sp.id!==undefined)
gl.disableVertexAttribArray(sp.id);else if(sp.particleSize!==undefined)
gl.disableVertexAttribArray(sp.particleSize);}
if(s_gl.popGeometry!=0&&sp.PG_vertexID!==undefined){gl.disableVertexAttribArray(sp.PG_vertexID);}}
for(df=0;df<df_n;df++){attrib=s_gl.dynamicFields[df];if(sp[attrib.name]!==undefined){gl.disableVertexAttribArray(sp[attrib.name]);}}
if(s_gl.imageGeometry){v_n=s_geo._vf.vertexCount.length;this.numDrawCalls+=v_n;for(v=0;v<v_n;v++){if(s_gl.primType[v]==gl.TRIANGLE_STRIP)
this.numFaces+=(s_geo._vf.vertexCount[v]-2);else
this.numFaces+=(s_geo._vf.vertexCount[v]/3);this.numCoords+=s_geo._vf.vertexCount[v];}}
else{this.numCoords+=s_msh._numCoords;this.numFaces+=s_msh._numFaces;if(s_gl.binaryGeometry||s_gl.popGeometry){this.numDrawCalls+=s_geo._vf.vertexCount.length;}
else if(s_geo.hasIndexOffset()){this.numDrawCalls+=shape.tessellationProperties().length;}
else{this.numDrawCalls+=q_n;}}
if(depthMode){this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.depthMask(true);this.stateManager.depthFunc(gl.LEQUAL);this.stateManager.depthRange(0,1);}
if(blendMode){this.stateManager.enable(gl.BLEND);this.stateManager.blendFuncSeparate(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA,gl.ONE,gl.ONE);this.stateManager.blendColor(1,1,1,1);this.stateManager.blendEquation(gl.FUNC_ADD);}
if(colorMaskMode){this.stateManager.colorMask(true,true,true,true);}
if(lineProperties){this.stateManager.lineWidth(1);}
var s_gl_tex=s_gl.texture;cnt_n=s_gl_tex?s_gl_tex.length:0;for(cnt=0;cnt<cnt_n;cnt++){if(!s_gl_tex[cnt])
continue;if(s_app&&s_app._cf.texture.node){tex=s_app._cf.texture.node.getTexture(cnt);gl.activeTexture(gl.TEXTURE0+cnt);if(x3dom.isa(tex,x3dom.nodeTypes.X3DEnvironmentTextureNode)){gl.bindTexture(gl.TEXTURE_CUBE_MAP,null);}
else{gl.bindTexture(gl.TEXTURE_2D,null);}}}};Context.prototype.updatePopState=function(drawable,popGeo,sp,s_gl,scene,model_view,viewarea,currFps)
{var tol=x3dom.nodeTypes.PopGeometry.ErrorToleranceFactor*popGeo._vf.precisionFactor;if(currFps<=1||viewarea.isMovingOrAnimating()){tol*=x3dom.nodeTypes.PopGeometry.PrecisionFactorOnMove;}
var currentLOD=16;if(tol>0){var viewpoint=scene.getViewpoint();var imgPlaneHeightAtDistOne=viewpoint.getImgPlaneHeightAtDistOne();var near=viewpoint.getNear();var center=model_view.multMatrixPnt(popGeo._vf.position);var tightRad=model_view.multMatrixVec(popGeo._vf.size).length()*0.5;var largestRad=model_view.multMatrixVec(popGeo._vf.maxBBSize).length()*0.5;var dist=Math.max(-center.z-tightRad,near);var projPixelLength=dist*(imgPlaneHeightAtDistOne/viewarea._height);var arg=(2*largestRad)/(tol*projPixelLength);currentLOD=Math.ceil(Math.log(arg)/0.693147180559945);currentLOD=(currentLOD<1)?1:((currentLOD>16)?16:currentLOD);}
var minPrec=popGeo._vf.minPrecisionLevel,maxPrec=popGeo._vf.maxPrecisionLevel;currentLOD=(minPrec!=-1&&currentLOD<minPrec)?minPrec:currentLOD;currentLOD=(maxPrec!=-1&&currentLOD>maxPrec)?maxPrec:currentLOD;var currentLOD_min=(s_gl.levelsAvailable<currentLOD)?s_gl.levelsAvailable:currentLOD;currentLOD=currentLOD_min;if(tol<=1)
currentLOD=(currentLOD==popGeo.getNumLevels())?16:currentLOD;var hasIndex=popGeo._vf.indexedRendering;var p_msh=popGeo._mesh;p_msh._numCoords=0;p_msh._numFaces=0;for(var i=0;i<currentLOD_min;++i){var numVerticesAtLevel_i=s_gl.numVerticesAtLevel[i];p_msh._numCoords+=numVerticesAtLevel_i;p_msh._numFaces+=(hasIndex?popGeo.getNumIndicesByLevel(i):numVerticesAtLevel_i)/3;}
x3dom.nodeTypes.PopGeometry.numRenderedVerts+=p_msh._numCoords;x3dom.nodeTypes.PopGeometry.numRenderedTris+=p_msh._numFaces;p_msh.currentLOD=currentLOD;popGeo.adaptVertexCount(hasIndex?p_msh._numFaces*3:p_msh._numCoords);sp.PG_maxBBSize=popGeo._vf.maxBBSize.toGL();sp.PG_bbMin=popGeo._bbMinBySize;sp.PG_numAnchorVertices=popGeo._vf.numAnchorVertices;sp.PG_bbMaxModF=popGeo._vf.bbMaxModF.toGL();sp.PG_bboxShiftVec=popGeo._vf.bbShiftVec.toGL();sp.PG_precisionLevel=currentLOD;sp.PG_powPrecision=x3dom.nodeTypes.PopGeometry.powLUT[currentLOD-1];};Context.prototype.pickValue=function(viewarea,x,y,buttonState,viewMat,sceneMat)
{x3dom.Utils.startMeasure("picking");var scene=viewarea._scene;var gl=this.ctx3d;if(!gl||!scene||!scene._webgl||!scene.drawableCollection){return false;}
var pm=scene._vf.pickMode.toLowerCase();var pickMode=0;switch(pm){case"box":return false;case"idbuf":pickMode=0;break;case"idbuf24":pickMode=3;break;case"idbufid":pickMode=4;break;case"color":pickMode=1;break;case"texcoord":pickMode=2;break;}
var mat_view,mat_scene;if(arguments.length>4){mat_view=viewMat;mat_scene=sceneMat;}
else{mat_view=viewarea._last_mat_view;mat_scene=viewarea._last_mat_scene;}
var min=x3dom.fields.SFVec3f.copy(scene._lastMin);var max=x3dom.fields.SFVec3f.copy(scene._lastMax);var from=mat_view.inverse().e3();var _min=x3dom.fields.SFVec3f.copy(from);var _max=x3dom.fields.SFVec3f.copy(from);if(_min.x>min.x){_min.x=min.x;}
if(_min.y>min.y){_min.y=min.y;}
if(_min.z>min.z){_min.z=min.z;}
if(_max.x<max.x){_max.x=max.x;}
if(_max.y<max.y){_max.y=max.y;}
if(_max.z<max.z){_max.z=max.z;}
scene._lastMin.setValues(_min);scene._lastMax.setValues(_max);var sceneSize=scene._lastMax.subtract(scene._lastMin).length();var cctowc=viewarea.getCCtoWCMatrix();scene._lastMin.setValues(min);scene._lastMax.setValues(max);var baseID=x3dom.nodeTypes.Shape.objectID+2;this.renderPickingPass(gl,scene,mat_view,mat_scene,from,sceneSize,pickMode,x,y,2,2);var pixelData=scene._webgl.fboPick.pixelData;if(pixelData&&pixelData.length)
{var pickPos=new x3dom.fields.SFVec3f(0,0,0);var pickNorm=new x3dom.fields.SFVec3f(0,0,1);var index=0;var objId=pixelData[index+3],shapeId;var pixelOffset=1.0/scene._webgl.pickScale;var denom=1.0/256.0;var dist,line,lineoff,right,up;if(pickMode==0){objId+=256*pixelData[index+2];dist=(pixelData[index]/255.0)*denom+
(pixelData[index+1]/255.0);line=viewarea.calcViewRay(x,y,cctowc);pickPos=line.pos.add(line.dir.multiply(dist*sceneSize));index=4;dist=(pixelData[index]/255.0)*denom+
(pixelData[index+1]/255.0);lineoff=viewarea.calcViewRay(x+pixelOffset,y,cctowc);right=lineoff.pos.add(lineoff.dir.multiply(dist*sceneSize));right=right.subtract(pickPos).normalize();index=8;dist=(pixelData[index]/255.0)*denom+
(pixelData[index+1]/255.0);lineoff=viewarea.calcViewRay(x,y-pixelOffset,cctowc);up=lineoff.pos.add(lineoff.dir.multiply(dist*sceneSize));up=up.subtract(pickPos).normalize();pickNorm=right.cross(up).normalize();}
else if(pickMode==3){objId+=256*pixelData[index+2]+
65536*pixelData[index+1];dist=pixelData[index]/255.0;line=viewarea.calcViewRay(x,y,cctowc);pickPos=line.pos.add(line.dir.multiply(dist*sceneSize));index=4;dist=pixelData[index]/255.0;lineoff=viewarea.calcViewRay(x+pixelOffset,y,cctowc);right=lineoff.pos.add(lineoff.dir.multiply(dist*sceneSize));right=right.subtract(pickPos).normalize();index=8;dist=pixelData[index]/255.0;lineoff=viewarea.calcViewRay(x,y-pixelOffset,cctowc);up=lineoff.pos.add(lineoff.dir.multiply(dist*sceneSize));up=up.subtract(pickPos).normalize();pickNorm=right.cross(up).normalize();}
else if(pickMode==4){objId+=256*pixelData[index+2];shapeId=pixelData[index+1];shapeId+=256*pixelData[index];if(objId==0&&(shapeId>0&&shapeId<baseID)){objId=shapeId;}}
else{pickPos.x=pixelData[index];pickPos.y=pixelData[index+1];pickPos.z=pixelData[index+2];}
var eventType="shadowObjectIdChanged";var shadowObjectIdChanged,event;var button=Math.max(buttonState>>>8,buttonState&255);if(objId>=baseID){objId-=baseID;var hitObject;if(pickMode!=4){viewarea._pickingInfo.pickPos=pickPos;viewarea._pick.setValues(pickPos);viewarea._pickingInfo.pickNorm=pickNorm;viewarea._pickNorm.setValues(pickNorm);viewarea._pickingInfo.pickObj=null;viewarea._pickingInfo.lastClickObj=null;hitObject=scene._xmlNode;}
else{viewarea._pickingInfo.pickObj=x3dom.nodeTypes.Shape.idMap.nodeID[shapeId];hitObject=viewarea._pickingInfo.pickObj._xmlNode;}
if(scene._multiPartMap){var mp,multiPart;for(mp=0;mp<scene._multiPartMap.multiParts.length;mp++)
{multiPart=scene._multiPartMap.multiParts[mp];if(objId>=multiPart._minId&&objId<=multiPart._maxId)
{hitObject=multiPart._xmlNode;event={target:multiPart._xmlNode,button:button,mouseup:((buttonState>>>8)>0),layerX:x,layerY:y,pickedId:objId,worldX:pickPos.x,worldY:pickPos.y,worldZ:pickPos.z,normalX:pickNorm.x,normalY:pickNorm.y,normalZ:pickNorm.z,hitPnt:pickPos.toGL(),hitObject:hitObject,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};multiPart.handleEvents(event);}
else
{event={target:multiPart._xmlNode,button:button,mouseup:((buttonState>>>8)>0),layerX:x,layerY:y,pickedId:-1,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};multiPart.handleEvents(event);}}}
shadowObjectIdChanged=(viewarea._pickingInfo.shadowObjectId!=objId);viewarea._pickingInfo.lastShadowObjectId=viewarea._pickingInfo.shadowObjectId;viewarea._pickingInfo.shadowObjectId=objId;if((shadowObjectIdChanged||button)&&scene._xmlNode&&(scene._xmlNode["on"+eventType]||scene._xmlNode.hasAttribute("on"+eventType)||scene._listeners[eventType]))
{event={target:scene._xmlNode,type:eventType,button:button,mouseup:((buttonState>>>8)>0),layerX:x,layerY:y,shadowObjectId:objId,worldX:pickPos.x,worldY:pickPos.y,worldZ:pickPos.z,normalX:pickNorm.x,normalY:pickNorm.y,normalZ:pickNorm.z,hitPnt:pickPos.toGL(),hitObject:hitObject,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};scene.callEvtHandler(("on"+eventType),event);}
if(scene._shadowIdMap&&scene._shadowIdMap.mapping&&objId<scene._shadowIdMap.mapping.length){var shIds=scene._shadowIdMap.mapping[objId].usage;var n,c,shObj;if(!line){line=viewarea.calcViewRay(x,y,cctowc);}
for(c=0;c<shIds.length;c++){shObj=scene._nameSpace.defMap[shIds[c]];if(shObj&&shObj.doIntersect(line)){viewarea._pickingInfo.pickObj=shObj;break;}}
for(n=0;n<scene._nameSpace.childSpaces.length;n++)
{for(c=0;c<shIds.length;c++){shObj=scene._nameSpace.childSpaces[n].defMap[shIds[c]];if(shObj&&shObj.doIntersect(line)){viewarea._pickingInfo.pickObj=shObj;break;}}}}}
else{if(scene._multiPartMap){for(mp=0;mp<scene._multiPartMap.multiParts.length;mp++)
{multiPart=scene._multiPartMap.multiParts[mp];event={target:multiPart._xmlNode,button:button,mouseup:((buttonState>>>8)>0),layerX:x,layerY:y,pickedId:-1,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};multiPart.handleEvents(event);}}
shadowObjectIdChanged=(viewarea._pickingInfo.shadowObjectId!=-1);viewarea._pickingInfo.shadowObjectId=-1;if(shadowObjectIdChanged&&scene._xmlNode&&(scene._xmlNode["on"+eventType]||scene._xmlNode.hasAttribute("on"+eventType)||scene._listeners[eventType]))
{event={target:scene._xmlNode,type:eventType,button:button,mouseup:((buttonState>>>8)>0),layerX:x,layerY:y,shadowObjectId:viewarea._pickingInfo.shadowObjectId,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};scene.callEvtHandler(("on"+eventType),event);}
if(objId>0){viewarea._pickingInfo.pickPos=pickPos;viewarea._pickingInfo.pickNorm=pickNorm;viewarea._pickingInfo.pickObj=x3dom.nodeTypes.Shape.idMap.nodeID[objId];}
else{viewarea._pickingInfo.pickObj=null;viewarea._pickingInfo.lastClickObj=null;}}}
var pickTime=x3dom.Utils.stopMeasure("picking");this.x3dElem.runtime.addMeasurement('PICKING',pickTime);return true;};Context.prototype.pickRect=function(viewarea,x1,y1,x2,y2)
{var gl=this.ctx3d;var scene=viewarea?viewarea._scene:null;if(!gl||!scene||!scene._webgl||!scene.drawableCollection)
return false;var from=viewarea._last_mat_view.inverse().e3();var sceneSize=scene._lastMax.subtract(scene._lastMin).length();var x=(x1<=x2)?x1:x2;var y=(y1>=y2)?y1:y2;var width=(1+Math.abs(x2-x1))*scene._webgl.pickScale;var height=(1+Math.abs(y2-y1))*scene._webgl.pickScale;this.renderPickingPass(gl,scene,viewarea._last_mat_view,viewarea._last_mat_scene,from,sceneSize,0,x,y,(width<1)?1:width,(height<1)?1:height);var index;var pickedObjects=[];for(index=0;scene._webgl.fboPick.pixelData&&index<scene._webgl.fboPick.pixelData.length;index+=4){var objId=scene._webgl.fboPick.pixelData[index+3]+
scene._webgl.fboPick.pixelData[index+2]*256;if(objId>0)
pickedObjects.push(objId);}
pickedObjects.sort();var pickedObjectsTemp=(function(arr){var a=[],l=arr.length;for(var i=0;i<l;i++){for(var j=i+1;j<l;j++){if(arr[i]===arr[j])
j=++i;}
a.push(arr[i]);}
return a;})(pickedObjects);pickedObjects=pickedObjectsTemp;var pickedNode,pickedNodes=[];var hitObject;var baseID=x3dom.nodeTypes.Shape.objectID+2;for(index=0;index<pickedObjects.length;index++){objId=pickedObjects[index];if(objId>=baseID)
{objId-=baseID;if(scene._multiPartMap){var mp,multiPart,colorMap,emissiveMap,specularMap,visibilityMap,partID;for(mp=0;mp<scene._multiPartMap.multiParts.length;mp++){multiPart=scene._multiPartMap.multiParts[mp];colorMap=multiPart._inlineNamespace.defMap["MultiMaterial_ColorMap"];emissiveMap=multiPart._inlineNamespace.defMap["MultiMaterial_EmissiveMap"];specularMap=multiPart._inlineNamespace.defMap["MultiMaterial_SpecularMap"];visibilityMap=multiPart._inlineNamespace.defMap["MultiMaterial_VisibilityMap"];if(objId>=multiPart._minId&&objId<=multiPart._maxId){partID=multiPart._idMap.mapping[objId-multiPart._minId].name;hitObject=new x3dom.Parts(multiPart,[objId],colorMap,emissiveMap,specularMap,visibilityMap);pickedNode={"partID":partID,"part":hitObject};pickedNodes.push(pickedNode);}}}}
else
{hitObject=x3dom.nodeTypes.Shape.idMap.nodeID[objId];hitObject=(hitObject&&hitObject._xmlNode)?hitObject._xmlNode:null;if(hitObject)
pickedNodes.push(hitObject);}}
return pickedNodes;};Context.prototype.renderScene=function(viewarea)
{var gl=this.ctx3d;var scene=viewarea._scene;if(gl===null||scene===null){return;}
var rentex=viewarea._doc._nodeBag.renderTextures;var rt_tex,rtl_i,rtl_n=rentex.length;var texProp=null;var type=gl.UNSIGNED_BYTE;var shadowType=gl.UNSIGNED_BYTE;var nearestFilt=false;if(x3dom.caps.FP_TEXTURES&&!x3dom.caps.MOBILE){type=gl.FLOAT;shadowType=gl.FLOAT;if(!x3dom.caps.FPL_TEXTURES){nearestFilt=true;}}
var shadowedLights,numShadowMaps;var i,j,n,size,sizeAvailable;var texType,refinementPos;var vertices=[-1,-1,1,-1,-1,1,-1,1,1,-1,1,1];scene.updateVolume();if(!scene._webgl)
{scene._webgl={};this.setupFgnds(gl,scene);scene._webgl.pickScale=0.5;scene._webgl._currFboWidth=Math.round(this.canvas.width*scene._webgl.pickScale);scene._webgl._currFboHeight=Math.round(this.canvas.height*scene._webgl.pickScale);scene._webgl.fboPick=x3dom.Utils.initFBO(gl,scene._webgl._currFboWidth,scene._webgl._currFboHeight,gl.UNSIGNED_BYTE,false,true);scene._webgl.fboPick.pixelData=null;scene._webgl.normalShader=this.cache.getShader(gl,x3dom.shader.NORMAL);scene._webgl.fboShadow=[];shadowedLights=viewarea.getShadowedLights();n=shadowedLights.length;for(i=0;i<n;i++)
{size=shadowedLights[i]._vf.shadowMapSize;if(!x3dom.isa(shadowedLights[i],x3dom.nodeTypes.PointLight))
numShadowMaps=Math.max(1,Math.min(shadowedLights[i]._vf.shadowCascades,6));else
numShadowMaps=6;scene._webgl.fboShadow[i]=[];for(j=0;j<numShadowMaps;j++)
scene._webgl.fboShadow[i][j]=x3dom.Utils.initFBO(gl,size,size,shadowType,false,true);}
if(scene._webgl.fboShadow.length>0||x3dom.SSAO.isEnabled(scene))
scene._webgl.fboScene=x3dom.Utils.initFBO(gl,this.canvas.width,this.canvas.height,shadowType,false,true);scene._webgl.fboBlur=[];for(i=0;i<n;i++)
{size=scene._webgl.fboShadow[i][0].height;sizeAvailable=false;for(j=0;j<scene._webgl.fboBlur.length;j++){if(size==scene._webgl.fboBlur[j].height)
sizeAvailable=true;}
if(!sizeAvailable)
scene._webgl.fboBlur[scene._webgl.fboBlur.length]=x3dom.Utils.initFBO(gl,size,size,shadowType,false,true);}
scene._webgl.ppBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,scene._webgl.ppBuffer);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array(vertices),gl.STATIC_DRAW);scene._webgl.shadowShader=this.cache.getShader(gl,x3dom.shader.SHADOW);scene._webgl.refinement={stamps:new Array(2),positionBuffer:gl.createBuffer()};gl.bindBuffer(gl.ARRAY_BUFFER,scene._webgl.refinement.positionBuffer);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array(vertices),gl.STATIC_DRAW);for(rtl_i=0;rtl_i<rtl_n;rtl_i++){rt_tex=rentex[rtl_i];texProp=rt_tex._cf.textureProperties.node;texType=rt_tex.requirePingPong()?gl.UNSIGNED_BYTE:type;rt_tex._webgl={};rt_tex._webgl.fbo=x3dom.Utils.initFBO(gl,rt_tex._vf.dimensions[0],rt_tex._vf.dimensions[1],texType,(texProp&&texProp._vf.generateMipMaps),!rt_tex.requirePingPong());rt_tex._cleanupGLObjects=function(retainTex){if(!retainTex)
gl.deleteTexture(this._webgl.fbo.tex);if(this._webgl.fbo.rbo)
gl.deleteRenderbuffer(this._webgl.fbo.rbo);gl.bindFramebuffer(gl.FRAMEBUFFER,null);gl.deleteFramebuffer(this._webgl.fbo.fbo);this._webgl.fbo.rbo=null;this._webgl.fbo.fbo=null;};if(rt_tex.requirePingPong()){refinementPos=rt_tex._vf.dimensions[0]+"x"+rt_tex._vf.dimensions[1];if(scene._webgl.refinement[refinementPos]===undefined){scene._webgl.refinement[refinementPos]=x3dom.Utils.initFBO(gl,rt_tex._vf.dimensions[0],rt_tex._vf.dimensions[1],texType,false,false);}
rt_tex._webgl.texture=null;}}
viewarea._last_mat_view=x3dom.fields.SFMatrix4f.identity();viewarea._last_mat_proj=x3dom.fields.SFMatrix4f.identity();viewarea._last_mat_scene=x3dom.fields.SFMatrix4f.identity();this._calledViewpointChangedHandler=false;}
else
{var fboWidth=Math.round(this.canvas.width*scene._webgl.pickScale);var fboHeight=Math.round(this.canvas.height*scene._webgl.pickScale);if(scene._webgl._currFboWidth!==fboWidth||scene._webgl._currFboHeight!==fboHeight){scene._webgl._currFboWidth=fboWidth;scene._webgl._currFboHeight=fboHeight;scene._webgl.fboPick=x3dom.Utils.initFBO(gl,fboWidth,fboHeight,scene._webgl.fboPick.type,false,true);scene._webgl.fboPick.pixelData=null;x3dom.debug.logInfo("Refreshed picking FBO to size ("+fboWidth+", "+fboHeight+")");}
for(rtl_i=0;rtl_i<rtl_n;rtl_i++){rt_tex=rentex[rtl_i];if(rt_tex._webgl&&rt_tex._webgl.fbo&&rt_tex._webgl.fbo.width==rt_tex._vf.dimensions[0]&&rt_tex._webgl.fbo.height==rt_tex._vf.dimensions[1])
continue;rt_tex.invalidateGLObject();if(rt_tex._cleanupGLObjects)
rt_tex._cleanupGLObjects();else
rt_tex._cleanupGLObjects=function(retainTex){if(!retainTex)
gl.deleteTexture(this._webgl.fbo.tex);if(this._webgl.fbo.rbo)
gl.deleteRenderbuffer(this._webgl.fbo.rbo);gl.bindFramebuffer(gl.FRAMEBUFFER,null);gl.deleteFramebuffer(this._webgl.fbo.fbo);this._webgl.fbo.rbo=null;this._webgl.fbo.fbo=null;};texProp=rt_tex._cf.textureProperties.node;texType=rt_tex.requirePingPong()?gl.UNSIGNED_BYTE:type;rt_tex._webgl={};rt_tex._webgl.fbo=x3dom.Utils.initFBO(gl,rt_tex._vf.dimensions[0],rt_tex._vf.dimensions[1],texType,(texProp&&texProp._vf.generateMipMaps),!rt_tex.requirePingPong());if(rt_tex.requirePingPong()){refinementPos=rt_tex._vf.dimensions[0]+"x"+rt_tex._vf.dimensions[1];if(scene._webgl.refinement[refinementPos]===undefined){scene._webgl.refinement[refinementPos]=x3dom.Utils.initFBO(gl,rt_tex._vf.dimensions[0],rt_tex._vf.dimensions[1],texType,false,false);}
rt_tex._webgl.texture=null;}
x3dom.debug.logInfo("Init/resize RenderedTexture_"+rtl_i+" to size "+
rt_tex._vf.dimensions[0]+" x "+rt_tex._vf.dimensions[1]);}
shadowedLights=viewarea.getShadowedLights();n=shadowedLights.length;for(i=0;i<n;i++){size=shadowedLights[i]._vf.shadowMapSize;if(!x3dom.isa(shadowedLights[i],x3dom.nodeTypes.PointLight))
numShadowMaps=Math.max(1,Math.min(shadowedLights[i]._vf.shadowCascades,6));else
numShadowMaps=6;if(typeof scene._webgl.fboShadow[i]==="undefined"||scene._webgl.fboShadow[i].length!=numShadowMaps||scene._webgl.fboShadow[i][0].height!=size){scene._webgl.fboShadow[i]=[];for(j=0;j<numShadowMaps;j++){scene._webgl.fboShadow[i][j]=x3dom.Utils.initFBO(gl,size,size,shadowType,false,true);}}}
for(i=0;i<n;i++){size=scene._webgl.fboShadow[i][0].height;sizeAvailable=false;for(j=0;j<scene._webgl.fboBlur.length;j++){if(size==scene._webgl.fboBlur[j].height)
sizeAvailable=true;}
if(!sizeAvailable)
scene._webgl.fboBlur[scene._webgl.fboBlur.length]=x3dom.Utils.initFBO(gl,size,size,shadowType,false,true);}
if((x3dom.SSAO.isEnabled(scene)||scene._webgl.fboShadow.length>0)&&typeof scene._webgl.fboScene=="undefined"||scene._webgl.fboScene&&(this.canvas.width!=scene._webgl.fboScene.width||this.canvas.height!=scene._webgl.fboScene.height)){scene._webgl.fboScene=x3dom.Utils.initFBO(gl,this.canvas.width,this.canvas.height,shadowType,false,true);}}
var env=scene.getEnvironment();env.checkSanity();var bgnd=scene.getBackground();this.setupScene(gl,bgnd);this.numFaces=0;this.numCoords=0;this.numDrawCalls=0;var mat_proj=viewarea.getProjectionMatrix();var mat_view=viewarea.getViewMatrix();if(!this._calledViewpointChangedHandler||!viewarea._last_mat_view.equals(mat_view)){var e_viewpoint=scene.getViewpoint();var e_eventType="viewpointChanged";try{if(e_viewpoint._xmlNode&&(e_viewpoint._xmlNode["on"+e_eventType]||e_viewpoint._xmlNode.hasAttribute("on"+e_eventType)||e_viewpoint._listeners[e_eventType])){var e_viewtrafo=e_viewpoint.getCurrentTransform();e_viewtrafo=e_viewtrafo.inverse().mult(mat_view);var e_mat=e_viewtrafo.inverse();var e_rotation=new x3dom.fields.Quaternion(0,0,1,0);e_rotation.setValue(e_mat);var e_translation=e_mat.e3();var e_event={target:e_viewpoint._xmlNode,type:e_eventType,matrix:e_viewtrafo,position:e_translation,orientation:e_rotation.toAxisAngle(),cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.cancelBubble=true;}};e_viewpoint.callEvtHandler(("on"+e_eventType),e_event);this._calledViewpointChangedHandler=true;}}
catch(e_e){x3dom.debug.logException(e_e);}}
viewarea._last_mat_view=mat_view;viewarea._last_mat_proj=mat_proj;var mat_scene=mat_proj.mult(mat_view);viewarea._last_mat_scene=mat_scene;scene.drawableCollection=null;if(!scene.drawableCollection)
{var drawableCollectionConfig={viewArea:viewarea,sortTrans:env._vf.sortTrans,viewMatrix:mat_view,projMatrix:mat_proj,sceneMatrix:mat_scene,frustumCulling:true,smallFeatureThreshold:env._smallFeatureThreshold,context:this,gl:gl};scene.drawableCollection=new x3dom.DrawableCollection(drawableCollectionConfig);x3dom.Utils.startMeasure('traverse');scene.collectDrawableObjects(x3dom.fields.SFMatrix4f.identity(),scene.drawableCollection,true,false,0,[]);var traverseTime=x3dom.Utils.stopMeasure('traverse');this.x3dElem.runtime.addMeasurement('TRAVERSE',traverseTime);}
x3dom.Utils.startMeasure('sorting');scene.drawableCollection.sort();var sortTime=x3dom.Utils.stopMeasure('sorting');this.x3dElem.runtime.addMeasurement('SORT',sortTime);var slights=viewarea.getLights();var numLights=slights.length;var mat_light;var WCToLCMatrices=[];var lMatrices=[];var shadowCount=0;x3dom.Utils.startMeasure('shadow');for(var p=0;p<numLights;p++){if(slights[p]._vf.shadowIntensity>0.0){var lightMatrix=viewarea.getLightMatrix()[p];shadowMaps=scene._webgl.fboShadow[shadowCount];var offset=Math.max(0.0,Math.min(1.0,slights[p]._vf.shadowOffset));if(!x3dom.isa(slights[p],x3dom.nodeTypes.PointLight)){var numCascades=Math.max(1,Math.min(slights[p]._vf.shadowCascades,6));mat_light=viewarea.getWCtoLCMatricesCascaded(lightMatrix,slights[p],mat_proj);for(i=0;i<numCascades;i++){this.renderShadowPass(gl,viewarea,mat_light[i],mat_view,shadowMaps[i],offset,false);}}
else{mat_light=viewarea.getWCtoLCMatricesPointLight(lightMatrix,slights[p],mat_proj);for(i=0;i<6;i++){this.renderShadowPass(gl,viewarea,mat_light[i],mat_view,shadowMaps[i],offset,false);}}
shadowCount++;WCToLCMatrices[WCToLCMatrices.length]=mat_light;lMatrices[lMatrices.length]=lightMatrix;}}
if(shadowCount>0||x3dom.SSAO.isEnabled(scene)){this.renderShadowPass(gl,viewarea,mat_scene,mat_view,scene._webgl.fboScene,0.0,true);var shadowTime=x3dom.Utils.stopMeasure('shadow');this.x3dElem.runtime.addMeasurement('SHADOW',shadowTime);}
else{this.x3dElem.runtime.removeMeasurement('SHADOW');}
mat_light=viewarea.getWCtoLCMatrix(viewarea.getLightMatrix()[0]);for(rtl_i=0;rtl_i<rtl_n;rtl_i++){this.renderRTPass(gl,viewarea,rentex[rtl_i]);}
x3dom.Utils.startMeasure('render');this.stateManager.viewport(0,0,this.canvas.width,this.canvas.height);bgnd._webgl.render(gl,mat_view,mat_proj);x3dom.nodeTypes.PopGeometry.numRenderedVerts=0;x3dom.nodeTypes.PopGeometry.numRenderedTris=0;n=scene.drawableCollection.length;if(env._vf.smallFeatureCulling&&env._lowPriorityThreshold<1&&viewarea.isMovingOrAnimating()){n=Math.floor(n*env._lowPriorityThreshold);if(!n&&scene.drawableCollection.length)
n=1;}
this.stateManager.unsetProgram();for(i=0;i<n;i++){var drawable=scene.drawableCollection.get(i);this.renderShape(drawable,viewarea,slights,numLights,mat_view,mat_scene,mat_light,mat_proj,gl);}
if(shadowCount>0)
this.renderShadows(gl,viewarea,shadowedLights,WCToLCMatrices,lMatrices,mat_view,mat_proj,mat_scene);this.stateManager.disable(gl.BLEND);this.stateManager.disable(gl.DEPTH_TEST);viewarea._numRenderedNodes=n;if(x3dom.SSAO.isEnabled(scene))
x3dom.SSAO.renderSSAO(this.stateManager,gl,scene,this.canvas);if(viewarea._visDbgBuf!==undefined&&viewarea._visDbgBuf)
{var pm=scene._vf.pickMode.toLowerCase();if(pm.indexOf("idbuf")==0||pm=="color"||pm=="texcoord"){this.stateManager.viewport(0,3*this.canvas.height/4,this.canvas.width/4,this.canvas.height/4);scene._fgnd._webgl.render(gl,scene._webgl.fboPick.tex);}
if(shadowCount>0||x3dom.SSAO.isEnabled(scene)){this.stateManager.viewport(this.canvas.width/4,3*this.canvas.height/4,this.canvas.width/4,this.canvas.height/4);scene._fgnd._webgl.render(gl,scene._webgl.fboScene.tex);}
var row=3,col=2;for(i=0;i<shadowCount;i++){var shadowMaps=scene._webgl.fboShadow[i];for(j=0;j<shadowMaps.length;j++){this.stateManager.viewport(col*this.canvas.width/4,row*this.canvas.height/4,this.canvas.width/4,this.canvas.height/4);scene._fgnd._webgl.render(gl,shadowMaps[j].tex);if(col<2){col++;}else{col=0;row--;}}}
for(rtl_i=0;rtl_i<rtl_n;rtl_i++){rt_tex=rentex[rtl_i];if(!rt_tex._webgl.fbo.fbo)
continue;this.stateManager.viewport(rtl_i*this.canvas.width/8,5*this.canvas.height/8,this.canvas.width/8,this.canvas.height/8);scene._fgnd._webgl.render(gl,rt_tex._webgl.fbo.tex);}}
gl.finish();var renderTime=x3dom.Utils.stopMeasure('render');this.x3dElem.runtime.addMeasurement('RENDER',renderTime);this.x3dElem.runtime.addMeasurement('DRAW',(n?renderTime/n:0));this.x3dElem.runtime.addInfo('#NODES:',scene.drawableCollection.numberOfNodes);this.x3dElem.runtime.addInfo('#SHAPES:',viewarea._numRenderedNodes);this.x3dElem.runtime.addInfo("#DRAWS:",this.numDrawCalls);this.x3dElem.runtime.addInfo("#POINTS:",this.numCoords);this.x3dElem.runtime.addInfo("#TRIS:",this.numFaces);};Context.prototype.renderPingPongPass=function(gl,viewarea,rt){var scene=viewarea._scene;var refinementPos=rt._vf.dimensions[0]+"x"+rt._vf.dimensions[1];var refinementFbo=scene._webgl.refinement[refinementPos];if(rt._currLoadLevel==0&&(!scene._webgl.refinement.stamps[0]||!scene._webgl.refinement.stamps[1])){scene._webgl.refinement.stamps[0]=this.cache.getTexture2D(gl,rt._nameSpace.doc,rt._nameSpace.getURL(rt._vf.stamp0),false,false,false,false);scene._webgl.refinement.stamps[1]=this.cache.getTexture2D(gl,rt._nameSpace.doc,rt._nameSpace.getURL(rt._vf.stamp1),false,false,false,false);}
if(rt._currLoadLevel<rt._loadLevel){rt._currLoadLevel++;if(rt._webgl.texture)
gl.deleteTexture(rt._webgl.texture);var filename=rt._vf.url[0]+"/"+rt._currLoadLevel+"."+rt._vf.format;rt._webgl.texture=x3dom.Utils.createTexture2D(gl,rt._nameSpace.doc,rt._nameSpace.getURL(filename),false,false,false,false);if(rt._vf.iterations%2===0)
(rt._currLoadLevel%2!==0)?rt._repeat.x*=2.0:rt._repeat.y*=2.0;else
(rt._currLoadLevel%2===0)?rt._repeat.x*=2.0:rt._repeat.y*=2.0;}
if(!rt._webgl.texture.ready||!scene._webgl.refinement.stamps[0].ready||!scene._webgl.refinement.stamps[1].ready)
return;this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,refinementFbo.fbo);this.stateManager.viewport(0,0,refinementFbo.width,refinementFbo.height);this.stateManager.disable(gl.BLEND);this.stateManager.disable(gl.CULL_FACE);this.stateManager.disable(gl.DEPTH_TEST);gl.clearColor(0,0,0,1);gl.clearDepth(1);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);var sp=this.cache.getShader(gl,x3dom.shader.TEXTURE_REFINEMENT);this.stateManager.useProgram(sp);gl.bindBuffer(gl.ARRAY_BUFFER,scene._webgl.refinement.positionBuffer);gl.vertexAttribPointer(sp.position,2,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);sp.stamp=0;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,scene._webgl.refinement.stamps[(rt._currLoadLevel+1)%2]);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.REPEAT);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.REPEAT);if(rt._currLoadLevel>1){sp.lastTex=1;gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,rt._webgl.fbo.tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);}
sp.curTex=2;gl.activeTexture(gl.TEXTURE2);gl.bindTexture(gl.TEXTURE_2D,rt._webgl.texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);sp.mode=rt._currLoadLevel-1;sp.repeat=rt._repeat.toGL();gl.drawArrays(gl.TRIANGLES,0,6);this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,rt._webgl.fbo.fbo);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);sp.mode=0;sp.curTex=2;gl.activeTexture(gl.TEXTURE2);gl.bindTexture(gl.TEXTURE_2D,refinementFbo.tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.drawArrays(gl.TRIANGLES,0,6);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);gl.disableVertexAttribArray(sp.position);this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,null);this.stateManager.viewport(0,0,this.canvas.width,this.canvas.height);if(rt._vf.autoRefinement)
rt.nextLevel();if(rt._currLoadLevel==rt._vf.maxLevel)
rt._currLoadLevel++;if(rt._webgl.fbo.mipMap){gl.bindTexture(gl.TEXTURE_2D,rt._webgl.fbo.tex);gl.generateMipmap(gl.TEXTURE_2D);gl.bindTexture(gl.TEXTURE_2D,null);}
if(!rt.requirePingPong()){gl.deleteTexture(rt._webgl.texture);delete rt._webgl.texture;rt._cleanupGLObjects(true);}
rt._renderedImage++;};Context.prototype.renderRTPass=function(gl,viewarea,rt)
{if(x3dom.isa(rt,x3dom.nodeTypes.RefinementTexture)){if(rt.requirePingPong()){this.renderPingPongPass(gl,viewarea,rt);}
return;}
switch(rt._vf.update.toUpperCase()){case"NONE":return;case"NEXT_FRAME_ONLY":if(!rt._needRenderUpdate){return;}
rt._needRenderUpdate=false;break;case"ALWAYS":default:break;}
var scene=viewarea._scene;var bgnd=null;var mat_view=rt.getViewMatrix();var mat_proj=rt.getProjectionMatrix();var mat_scene=mat_proj.mult(mat_view);var lightMatrix=viewarea.getLightMatrix()[0];var mat_light=viewarea.getWCtoLCMatrix(lightMatrix);var i,n,m=rt._cf.excludeNodes.nodes.length;var arr=new Array(m);for(i=0;i<m;i++){var render=rt._cf.excludeNodes.nodes[i]._vf.render;if(render===undefined){arr[i]=-1;}
else{if(render===true){arr[i]=1;}else{arr[i]=0;}}
rt._cf.excludeNodes.nodes[i]._vf.render=false;}
this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,rt._webgl.fbo.fbo);this.stateManager.viewport(0,0,rt._webgl.fbo.width,rt._webgl.fbo.height);if(rt._cf.background.node===null){gl.clearColor(0,0,0,1);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT|gl.STENCIL_BUFFER_BIT);}
else if(rt._cf.background.node===scene.getBackground()){bgnd=scene.getBackground();bgnd._webgl.render(gl,mat_view,mat_proj);}
else{bgnd=rt._cf.background.node;this.setupScene(gl,bgnd);bgnd._webgl.render(gl,mat_view,mat_proj);}
this.stateManager.depthFunc(gl.LEQUAL);this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.enable(gl.CULL_FACE);this.stateManager.blendFuncSeparate(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA,gl.ONE,gl.ONE);this.stateManager.enable(gl.BLEND);var slights=viewarea.getLights();var numLights=slights.length;var transform,shape,drawable;var locScene=rt._cf.scene.node;if(!locScene||locScene===scene){n=scene.drawableCollection.length;if(rt._vf.showNormals){this.renderNormals(gl,scene,scene._webgl.normalShader,mat_view,mat_scene);}
else{this.stateManager.unsetProgram();for(i=0;i<n;i++){drawable=scene.drawableCollection.get(i);this.renderShape(drawable,viewarea,slights,numLights,mat_view,mat_scene,mat_light,mat_proj,gl);}}}
else{var env=scene.getEnvironment();var drawableCollectionConfig={viewArea:viewarea,sortTrans:env._vf.sortTrans,viewMatrix:mat_view,projMatrix:mat_proj,sceneMatrix:mat_scene,frustumCulling:false,smallFeatureThreshold:1,context:this,gl:gl};locScene.numberOfNodes=0;locScene.drawableCollection=new x3dom.DrawableCollection(drawableCollectionConfig);locScene.collectDrawableObjects(x3dom.fields.SFMatrix4f.identity(),locScene.drawableCollection,true,false,0,[]);locScene.drawableCollection.sort();n=locScene.drawableCollection.length;if(rt._vf.showNormals){this.renderNormals(gl,locScene,scene._webgl.normalShader,mat_view,mat_scene);}
else{this.stateManager.unsetProgram();for(i=0;i<n;i++){drawable=locScene.drawableCollection.get(i);if(!drawable.shape._vf.render){continue;}
this.renderShape(drawable,viewarea,slights,numLights,mat_view,mat_scene,mat_light,mat_proj,gl);}}}
this.stateManager.disable(gl.BLEND);this.stateManager.disable(gl.DEPTH_TEST);gl.flush();this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,null);if(rt._webgl.fbo.mipMap){gl.bindTexture(gl.TEXTURE_2D,rt._webgl.fbo.tex);gl.generateMipmap(gl.TEXTURE_2D);gl.bindTexture(gl.TEXTURE_2D,null);}
for(i=0;i<m;i++){if(arr[i]!==0){rt._cf.excludeNodes.nodes[i]._vf.render=true;}}};Context.prototype.renderNormals=function(gl,scene,sp,mat_view,mat_scene)
{if(!sp||!scene){return;}
this.stateManager.depthFunc(gl.LEQUAL);this.stateManager.enable(gl.DEPTH_TEST);this.stateManager.enable(gl.CULL_FACE);this.stateManager.disable(gl.BLEND);this.stateManager.useProgram(sp);var bgCenter=x3dom.fields.SFVec3f.NullVector.toGL();var bgSize=x3dom.fields.SFVec3f.OneVector.toGL();for(var i=0,n=scene.drawableCollection.length;i<n;i++)
{var drawable=scene.drawableCollection.get(i);var trafo=drawable.transform;var shape=drawable.shape;var s_gl=shape._webgl;if(!s_gl||!shape||!shape._vf.render){continue;}
var s_geo=shape._cf.geometry.node;var s_msh=s_geo._mesh;var model_view_inv=mat_view.mult(trafo).inverse();sp.normalMatrix=model_view_inv.transpose().toGL();sp.modelViewProjectionMatrix=mat_scene.mult(trafo).toGL();sp.imageGeometry=s_gl.imageGeometry;if(s_gl.coordType!=gl.FLOAT){if(s_gl.popGeometry!=0||(s_msh._numPosComponents==4&&x3dom.Utils.isUnsignedType(s_geo._vf.coordType)))
sp.bgCenter=s_geo.getMin().toGL();else
sp.bgCenter=s_geo._vf.position.toGL();sp.bgSize=s_geo._vf.size.toGL();sp.bgPrecisionMax=s_geo.getPrecisionMax('coordType');}
else{sp.bgCenter=bgCenter;sp.bgSize=bgSize;sp.bgPrecisionMax=1;}
if(s_gl.normalType!=gl.FLOAT){sp.bgPrecisionNorMax=s_geo.getPrecisionMax('normalType');}
else{sp.bgPrecisionNorMax=1;}
if(shape.isSolid()){this.stateManager.enable(gl.CULL_FACE);if(shape.isCCW()){this.stateManager.frontFace(gl.CCW);}
else{this.stateManager.frontFace(gl.CW);}}
else{this.stateManager.disable(gl.CULL_FACE);}
for(var q=0,q_n=s_gl.positions.length;q<q_n;q++){var q6=6*q;var v,v_n,offset;if(!(sp.position!==undefined&&s_gl.buffers[q6+1]&&s_gl.indexes[q]))
continue;if(s_gl.buffers[q6]){gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER,s_gl.buffers[q6]);}
gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+1]);gl.vertexAttribPointer(sp.position,s_msh._numPosComponents,s_gl.coordType,false,shape._coordStrideOffset[0],shape._coordStrideOffset[1]);gl.enableVertexAttribArray(sp.position);if(sp.normal!==undefined&&s_gl.buffers[q6+2]){gl.bindBuffer(gl.ARRAY_BUFFER,s_gl.buffers[q6+2]);gl.vertexAttribPointer(sp.normal,s_msh._numNormComponents,s_gl.normalType,false,shape._normalStrideOffset[0],shape._normalStrideOffset[1]);gl.enableVertexAttribArray(sp.normal);}
if(s_gl.binaryGeometry>0||s_gl.popGeometry>0){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawElements(s_gl.primType[v],s_geo._vf.vertexCount[v],s_gl.indexType,x3dom.Utils.getByteAwareOffset(offset,s_gl.indexType,gl));offset+=s_geo._vf.vertexCount[v];}}
else if(s_gl.binaryGeometry<0||s_gl.popGeometry<0||s_gl.imageGeometry){for(v=0,offset=0,v_n=s_geo._vf.vertexCount.length;v<v_n;v++){gl.drawArrays(s_gl.primType[v],offset,s_geo._vf.vertexCount[v]);offset+=s_geo._vf.vertexCount[v];}}
else if(s_geo.hasIndexOffset()){var indOff=shape.tessellationProperties();for(v=0,v_n=indOff.length;v<v_n;v++){gl.drawElements(s_gl.primType,indOff[v].count,s_gl.indexType,indOff[v].offset*x3dom.Utils.getOffsetMultiplier(s_gl.indexType,gl));}}
else if(s_gl.indexes[q].length==0){gl.drawArrays(s_gl.primType,0,s_gl.positions[q].length/3);}
else{gl.drawElements(s_gl.primType,s_gl.indexes[q].length,s_gl.indexType,0);}
gl.disableVertexAttribArray(sp.position);if(sp.normal!==undefined){gl.disableVertexAttribArray(sp.normal);}}}};Context.prototype.shutdown=function(viewarea){var gl=this.ctx3d;var scene=viewarea._scene;if(gl==null||!scene){return;}
var bgnd=scene.getBackground();if(bgnd._webgl.position!==undefined){gl.deleteBuffer(bgnd._webgl.buffers[1]);gl.deleteBuffer(bgnd._webgl.buffers[0]);}
var fgnd=scene._fgnd;if(fgnd._webgl.position!==undefined){gl.deleteBuffer(fgnd._webgl.buffers[1]);gl.deleteBuffer(fgnd._webgl.buffers[0]);}
var n=scene.drawableCollection?scene.drawableCollection.length:0;for(var i=0;i<n;i++){var shape=scene.drawableCollection.get(i).shape;if(shape._cleanupGLObjects)
shape._cleanupGLObjects(true);}
this.cache.Release(gl);};Context.prototype.renderShadows=function(gl,viewarea,shadowedLights,wctolc,lMatrices,mat_view,mat_proj,mat_scene)
{var scene=viewarea._scene;var texLimit=x3dom.caps.MAX_TEXTURE_IMAGE_UNITS;if(texLimit<7)
return;var texUnits=1;var renderSplit=[0];var shadowMaps,numShadowMaps;var i,j,k;for(i=0;i<shadowedLights.length;i++)
{var filterSize=shadowedLights[i]._vf.shadowFilterSize;shadowMaps=scene._webgl.fboShadow[i];numShadowMaps=shadowMaps.length;for(j=0;j<numShadowMaps;j++){this.blurTex(gl,scene,shadowMaps[j],filterSize);}
texUnits+=6;if(texUnits>texLimit){renderSplit[renderSplit.length]=i;texUnits=7;}}
renderSplit[renderSplit.length]=shadowedLights.length;var n=renderSplit.length-1;var mat_proj_inv=mat_proj.inverse();var mat_scene_inv=mat_scene.inverse();this.stateManager.enable(gl.BLEND);this.stateManager.blendFunc(gl.DST_COLOR,gl.ZERO);for(var s=0;s<n;s++)
{var startIndex=renderSplit[s];var endIndex=renderSplit[s+1];var currentLights=[];for(k=startIndex;k<endIndex;k++)
currentLights[currentLights.length]=shadowedLights[k];var sp=this.cache.getShadowRenderingShader(gl,currentLights);this.stateManager.useProgram(sp);gl.bindBuffer(gl.ARRAY_BUFFER,scene._webgl.ppBuffer);gl.vertexAttribPointer(sp.position,2,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);sp.sceneMap=0;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,scene._webgl.fboScene.tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);sp.inverseProj=mat_proj_inv.toGL();sp.inverseViewProj=mat_scene_inv.toGL();var mat_light;var lightMatrix;var shadowIndex=0;for(var p=0,pn=currentLights.length;p<pn;p++){lightMatrix=lMatrices[p+startIndex];mat_light=wctolc[p+startIndex];shadowMaps=scene._webgl.fboShadow[p+startIndex];numShadowMaps=mat_light.length;for(i=0;i<numShadowMaps;i++){gl.activeTexture(gl.TEXTURE1+shadowIndex);gl.bindTexture(gl.TEXTURE_2D,shadowMaps[i].tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);sp['light'+p+'_'+i+'_ShadowMap']=shadowIndex+1;sp['light'+p+'_'+i+'_Matrix']=mat_light[i].toGL();shadowIndex++;}
sp['light'+p+'_ViewMatrix']=lightMatrix.toGL();if(!x3dom.isa(currentLights[p],x3dom.nodeTypes.PointLight)){for(j=0;j<numShadowMaps;j++){var numCascades=Math.max(1,Math.min(currentLights[p]._vf.shadowCascades,6));var splitFactor=Math.max(0,Math.min(currentLights[p]._vf.shadowSplitFactor,1));var splitOffset=Math.max(0,Math.min(currentLights[p]._vf.shadowSplitOffset,1));var splitDepths=viewarea.getShadowSplitDepths(numCascades,splitFactor,splitOffset,false,mat_proj);sp['light'+p+'_'+j+'_Split']=splitDepths[j+1];}}
var light_transform=mat_view.mult(currentLights[p].getCurrentTransform());if(x3dom.isa(currentLights[p],x3dom.nodeTypes.DirectionalLight))
{sp['light'+p+'_Type']=0.0;sp['light'+p+'_On']=(currentLights[p]._vf.on)?1.0:0.0;sp['light'+p+'_Direction']=light_transform.multMatrixVec(currentLights[p]._vf.direction).toGL();sp['light'+p+'_Attenuation']=[1.0,1.0,1.0];sp['light'+p+'_Location']=[1.0,1.0,1.0];sp['light'+p+'_Radius']=0.0;sp['light'+p+'_BeamWidth']=0.0;sp['light'+p+'_CutOffAngle']=0.0;sp['light'+p+'_ShadowIntensity']=currentLights[p]._vf.shadowIntensity;sp['light'+p+'_ShadowCascades']=currentLights[p]._vf.shadowCascades;sp['light'+p+'_ShadowOffset']=Math.max(0.0,Math.min(1.0,currentLights[p]._vf.shadowOffset));}
else if(x3dom.isa(currentLights[p],x3dom.nodeTypes.PointLight))
{sp['light'+p+'_Type']=1.0;sp['light'+p+'_On']=(currentLights[p]._vf.on)?1.0:0.0;sp['light'+p+'_Direction']=[1.0,1.0,1.0];sp['light'+p+'_Attenuation']=currentLights[p]._vf.attenuation.toGL();sp['light'+p+'_Location']=light_transform.multMatrixPnt(currentLights[p]._vf.location).toGL();sp['light'+p+'_Radius']=currentLights[p]._vf.radius;sp['light'+p+'_BeamWidth']=0.0;sp['light'+p+'_CutOffAngle']=0.0;sp['light'+p+'_ShadowIntensity']=currentLights[p]._vf.shadowIntensity;sp['light'+p+'_ShadowOffset']=Math.max(0.0,Math.min(1.0,currentLights[p]._vf.shadowOffset));}
else if(x3dom.isa(currentLights[p],x3dom.nodeTypes.SpotLight))
{sp['light'+p+'_Type']=2.0;sp['light'+p+'_On']=(currentLights[p]._vf.on)?1.0:0.0;sp['light'+p+'_Direction']=light_transform.multMatrixVec(currentLights[p]._vf.direction).toGL();sp['light'+p+'_Attenuation']=currentLights[p]._vf.attenuation.toGL();sp['light'+p+'_Location']=light_transform.multMatrixPnt(currentLights[p]._vf.location).toGL();sp['light'+p+'_Radius']=currentLights[p]._vf.radius;sp['light'+p+'_BeamWidth']=currentLights[p]._vf.beamWidth;sp['light'+p+'_CutOffAngle']=currentLights[p]._vf.cutOffAngle;sp['light'+p+'_ShadowIntensity']=currentLights[p]._vf.shadowIntensity;sp['light'+p+'_ShadowCascades']=currentLights[p]._vf.shadowCascades;sp['light'+p+'_ShadowOffset']=Math.max(0.0,Math.min(1.0,currentLights[p]._vf.shadowOffset));}}
gl.drawArrays(gl.TRIANGLES,0,6);var nk=shadowIndex+1;for(k=0;k<nk;k++){gl.activeTexture(gl.TEXTURE0+k);gl.bindTexture(gl.TEXTURE_2D,null);}
gl.disableVertexAttribArray(sp.position);}
this.stateManager.blendFunc(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA);};Context.prototype.blurTex=function(gl,scene,targetFbo,filterSize)
{if(filterSize<=0)
return;else if(filterSize<5)
filterSize=3;else if(filterSize<7)
filterSize=5;else
filterSize=7;var width=targetFbo.width;var height=targetFbo.height;var fboBlur=null;for(var i=0,n=scene._webgl.fboBlur.length;i<n;i++)
if(height==scene._webgl.fboBlur[i].height){fboBlur=scene._webgl.fboBlur[i];break;}
this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,fboBlur.fbo);this.stateManager.viewport(0,0,width,height);this.stateManager.enable(gl.BLEND);this.stateManager.blendFunc(gl.ONE,gl.ZERO);this.stateManager.disable(gl.CULL_FACE);this.stateManager.disable(gl.DEPTH_TEST);gl.clearColor(1.0,1.0,1.0,0.0);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);var sp=this.cache.getShader(gl,x3dom.shader.BLUR);this.stateManager.useProgram(sp);gl.bindBuffer(gl.ARRAY_BUFFER,scene._webgl.ppBuffer);gl.vertexAttribPointer(sp.position,2,gl.FLOAT,false,0,0);gl.enableVertexAttribArray(sp.position);sp.pixelSizeHor=1.0/width;sp.pixelSizeVert=1.0/height;sp.filterSize=filterSize;sp.horizontal=true;sp.texture=0;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,targetFbo.tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.drawArrays(gl.TRIANGLES,0,6);this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,targetFbo.fbo);gl.clearColor(1.0,1.0,1.0,0.0);gl.clearDepth(1.0);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);sp.horizontal=false;gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,fboBlur.tex);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.drawArrays(gl.TRIANGLES,0,6);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,null);gl.disableVertexAttribArray(sp.position);gl.flush();this.stateManager.blendFunc(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA);this.stateManager.bindFramebuffer(gl.FRAMEBUFFER,null);this.stateManager.viewport(0,0,this.canvas.width,this.canvas.height);};return setupContext;})();x3dom.bridge={setFlashReady:function(driver,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.isFlashReady=true;x3dom.debug.logInfo('Flash is ready for rendering ('+driver+')');},onMouseDown:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onMousePress(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onMouseUp:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onMouseRelease(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onMouseOver:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onMouseOver(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onMouseOut:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onMouseOut(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onDoubleClick:function(x,y,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onDoubleClick(x3dCanvas.gl,x,y);x3dCanvas.doc.needRender=true;x3dom.debug.logInfo("dblClick");},onMouseDrag:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onDrag(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onMouseMove:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onMove(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onMouseWheel:function(x,y,button,canvas){var x3dCanvas=x3dom.canvases[canvas];x3dCanvas.doc.onDrag(x3dCanvas.gl,x,y,button);x3dCanvas.doc.needRender=true;},onKeyDown:function(charCode,canvas){var x3dCanvas=x3dom.canvases[canvas];var keysEnabled=x3dCanvas.x3dElem.getAttribute("keysEnabled");if(!keysEnabled||keysEnabled.toLowerCase()==="true"){x3dCanvas.doc.onKeyPress(charCode);}
x3dCanvas.doc.needRender=true;},setBBox:function(id,center,size){var shape=x3dom.nodeTypes.Shape.idMap.nodeID[id];},setShapeDirty:function(id){var shape=x3dom.nodeTypes.Shape.idMap.nodeID[id];shape.setAllDirty();}};x3dom.gfx_flash=(function(){function Context(object,name,renderType){this.object=object;this.name=name;this.isAlreadySet=false;this.renderType=renderType;}
function setupContext(object,renderType){x3dom.Utils.maxIndexableCoords=65535;return new Context(object,'flash',renderType);}
Context.prototype.getName=function(){return this.name;};Context.prototype.renderScene=function(viewarea){var scene=viewarea._scene;var min=x3dom.fields.SFVec3f.MAX();var max=x3dom.fields.SFVec3f.MIN();var vol=scene.getVolume();vol.getBounds(min,max);scene._lastMin=min;scene._lastMax=max;viewarea._last_mat_view=x3dom.fields.SFMatrix4f.identity();viewarea._last_mat_proj=x3dom.fields.SFMatrix4f.identity();viewarea._last_mat_scene=x3dom.fields.SFMatrix4f.identity();var viewpoint=scene.getViewpoint();if(viewpoint._vf.zNear==-1||viewpoint._vf.zFar==-1){viewpoint._vf.zFar=20000;viewpoint._vf.zNear=0.1;}
var mat_view=viewarea.getViewMatrix();var mat_proj=viewarea.getProjectionMatrix();var mat_scene=mat_proj.mult(mat_view);this.setupScene(scene,viewarea);var background=scene.getBackground();this.setupBackground(background);var fog=scene.getFog();this.setupFog(fog);scene.drawableCollection=null;var env=scene.getEnvironment();var drawableCollectionConfig={viewArea:viewarea,sortTrans:env._vf.sortTrans,viewMatrix:mat_view,projMatrix:mat_proj,sceneMatrix:mat_scene,frustumCulling:false,smallFeatureThreshold:false,context:null,gl:null};scene.drawableCollection=new x3dom.DrawableCollection(drawableCollectionConfig);scene.collectDrawableObjects(x3dom.fields.SFMatrix4f.identity(),scene.drawableCollection,true,false,0,[]);scene.drawableCollection.concat();var numDrawableObjects=scene.drawableCollection.length;if(numDrawableObjects>0){var RefList=[];for(var i=0;i<numDrawableObjects;i++){var drawable=scene.drawableCollection.get(i);var trafo=drawable.transform;var obj3d=drawable.shape;if(RefList[obj3d._objectID]!=undefined){RefList[obj3d._objectID]++;}else{RefList[obj3d._objectID]=0;}
this.setupShape(obj3d,trafo,RefList[obj3d._objectID]);}}
this.object.renderScene();};Context.prototype.setupScene=function(scene,viewarea){var mat_view=viewarea.getViewMatrix();if(!viewarea._last_mat_view.equals(mat_view)){var e_viewpoint=viewarea._scene.getViewpoint();var e_eventType="viewpointChanged";try{if(e_viewpoint._xmlNode&&(e_viewpoint._xmlNode["on"+e_eventType]||e_viewpoint._xmlNode.hasAttribute("on"+e_eventType)||e_viewpoint._listeners[e_eventType])){var e_viewtrafo=e_viewpoint.getCurrentTransform();e_viewtrafo=e_viewtrafo.inverse().mult(mat_view);var e_mat=e_viewtrafo.inverse();var e_rotation=new x3dom.fields.Quaternion(0,0,1,0);var e_translation=e_mat.e3();var e_event={target:e_viewpoint._xmlNode,type:e_eventType,matrix:e_viewtrafo,position:e_translation,orientation:e_rotation.toAxisAngle(),cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;}};e_viewpoint.callEvtHandler(e_eventType,e_event);}}
catch(e_e){x3dom.debug.logException(e_e);}}
viewarea._last_mat_view=mat_view;var viewpoint=scene.getViewpoint();var mat_proj=viewarea.getProjectionMatrix();this.object.setViewpoint({fov:viewpoint._vf.fov,zFar:viewpoint._vf.zFar,zNear:viewpoint._vf.zNear,viewMatrix:mat_view.toGL(),projectionMatrix:mat_proj.toGL()});var nav=scene.getNavigationInfo();if(nav._vf.headlight){this.object.setHeadLight({id:-1,on:1.0,color:[1.0,1.0,1.0],intensity:1.0,ambientIntensity:0.0,direction:[0.0,0.0,-1.0]});}
if(this.renderType=="deferred"){var lights=viewarea.getLights();for(var i=0;i<lights.length;i++){if(lights[i]._dirty){if(x3dom.isa(lights[i],x3dom.nodeTypes.DirectionalLight)){this.object.setDirectionalLight({id:lights[i]._lightID,on:lights[i]._vf.on,color:lights[i]._vf.color.toGL(),intensity:lights[i]._vf.intensity,ambientIntensity:lights[i]._vf.ambientIntensity,direction:lights[i]._vf.direction.toGL()});}
else if(x3dom.isa(lights[i],x3dom.nodeTypes.PointLight)){var light_transform=mat_view.mult(lights[i].getCurrentTransform());this.object.setPointLight({id:lights[i]._lightID,on:lights[i]._vf.on,color:lights[i]._vf.color.toGL(),intensity:lights[i]._vf.intensity,ambientIntensity:lights[i]._vf.ambientIntensity,attenuation:lights[i]._vf.attenuation.toGL(),location:lights[i]._vf.location.toGL(),radius:lights[i]._vf.radius});}
else if(x3dom.isa(lights[i],x3dom.nodeTypes.SpotLight)){}
lights[i]._dirty=false;}}}};Context.prototype.setupBackground=function(background){if(background._dirty){this.object.setBackground({texURLs:background.getTexUrl(),skyAngle:background._vf.skyAngle,skyColor:background.getSkyColor().toGL(),groundAngle:background._vf.groundAngle,groundColor:background.getGroundColor().toGL(),transparency:background.getTransparency()});background._dirty=false;}};Context.prototype.setupFog=function(fog){if(!fog||!fog._vf||fog._vf.visibilityRange<=0.0){this.object.setFog({color:null,visibilityRange:-1.0,fogType:-1.0});return;};this.object.setFog({color:fog._vf.color.toGL(),visibilityRange:fog._vf.visibilityRange,fogType:(fog._vf.fogType==="LINEAR")?0.0:1.0});};Context.prototype.setupShape=function(shape,trafo,refID){if(x3dom.isa(shape._cf.geometry.node,x3dom.nodeTypes.PointSet)){x3dom.debug.logError("Flash backend doesn't support PointSets yet");}else if(x3dom.isa(shape._cf.geometry.node,x3dom.nodeTypes.IndexedLineSet)){x3dom.debug.logError("Flash backend doesn't support LineSets yet");}else if(x3dom.isa(shape._cf.geometry.node,x3dom.nodeTypes.Text)){this.setupText(shape,trafo,refID);}else{this.setupIndexedFaceSet(shape,trafo,refID);}};Context.prototype.setupIndexedFaceSet=function(shape,trafo,refID){this.object.setMeshTransform({id:shape._objectID,refID:refID,transform:trafo.toGL()});if(refID==0){var isImageGeometry=x3dom.isa(shape._cf.geometry.node,x3dom.nodeTypes.ImageGeometry);var isBinaryGeometry=x3dom.isa(shape._cf.geometry.node,x3dom.nodeTypes.BinaryGeometry);var appearance=shape._cf.appearance.node;var sortType=(appearance)?shape._cf.appearance.node._vf.sortType:"auto";var sortKey=(appearance)?shape._cf.appearance.node._vf.sortKey:0
if(isImageGeometry){this.object.setMeshProperties({id:shape._objectID,type:"ImageGeometry",sortType:sortType,sortKey:sortKey,solid:shape.isSolid(),bboxMin:shape._cf.geometry.node.getMin().toGL(),bboxMax:shape._cf.geometry.node.getMax().toGL(),bboxCenter:shape._cf.geometry.node.getCenter().toGL(),primType:shape._cf.geometry.node._vf.primType,vertexCount:shape._cf.geometry.node._vf.vertexCount});}else if(isBinaryGeometry){this.object.setMeshProperties({id:shape._objectID,type:"BinaryGeometry",sortType:sortType,sortKey:sortKey,solid:shape.isSolid(),bgCenter:shape._cf.geometry.node._vf.position.toGL(),bgSize:shape._cf.geometry.node._vf.size.toGL(),bboxCenter:shape._cf.geometry.node.getCenter().toGL(),primType:shape._cf.geometry.node._vf.primType,vertexCount:shape._cf.geometry.node._vf.vertexCount});}else{this.object.setMeshProperties({id:shape._objectID,type:"Default",sortType:sortType,sortKey:sortKey,solid:shape.isSolid()});}
if(shape._dirty.indexes===true){if(isImageGeometry){}else if(isBinaryGeometry){this.object.setMeshIndices({id:shape._objectID,idx:0,indices:shape._nameSpace.getURL(shape._cf.geometry.node._vf.index)});}else{if(shape._cf.geometry.node._mesh._multiIndIndices&&shape._cf.geometry.node._mesh._multiIndIndices.length)
{shape._cf.geometry.node._mesh.splitMesh(3,true);}
for(var i=0;i<shape._cf.geometry.node._mesh._indices.length;i++){this.object.setMeshIndices({id:shape._objectID,idx:i,indices:shape._cf.geometry.node._mesh._indices[i]});}}
shape._dirty.indexes=false;}
if(shape._dirty.positions===true){if(isImageGeometry){this.object.setMeshVertices({id:shape._objectID,idx:0,coordinateTexture0:shape._cf.geometry.node.getCoordinateTextureURL(0),coordinateTexture1:shape._cf.geometry.node.getCoordinateTextureURL(1)});}else if(isBinaryGeometry){this.object.setMeshVertices({id:shape._objectID,idx:0,interleaved:shape._cf.geometry.node._hasStrideOffset,vertices:shape._nameSpace.getURL(shape._cf.geometry.node._vf.coord),normals:shape._nameSpace.getURL(shape._cf.geometry.node._vf.normal),texCoords:shape._nameSpace.getURL(shape._cf.geometry.node._vf.texCoord),colors:shape._nameSpace.getURL(shape._cf.geometry.node._vf.color),numColorComponents:shape._cf.geometry.node._mesh._numColComponents,numNormalComponents:shape._cf.geometry.node._mesh._numNormComponents,vertexType:shape._cf.geometry.node._vf.coordType,normalType:shape._cf.geometry.node._vf.normalType,texCoordType:shape._cf.geometry.node._vf.texCoordType,colorType:shape._cf.geometry.node._vf.colorType,vertexStrideOffset:shape._coordStrideOffset,normalStrideOffset:shape._normalStrideOffset,texCoordStrideOffset:shape._texCoordStrideOffset,colorStrideOffset:shape._colorStrideOffset});}else{for(var i=0;i<shape._cf.geometry.node._mesh._positions.length;i++){this.object.setMeshVertices({id:shape._objectID,idx:i,vertices:shape._cf.geometry.node._mesh._positions[i]});}}
shape._dirty.positions=false;}
if(shape._dirty.normals===true){if(isImageGeometry){this.object.setMeshNormals({id:shape._objectID,idx:0,normalTexture:shape._cf.geometry.node.getNormalTextureURL()});}else if(isBinaryGeometry){if(!shape._cf.geometry.node._hasStrideOffset){this.object.setMeshNormals({id:shape._objectID,idx:0,normals:shape._nameSpace.getURL(shape._cf.geometry.node._vf.normal)});}}else{if(shape._cf.geometry.node._mesh._normals[0].length){for(var i=0;i<shape._cf.geometry.node._mesh._normals.length;i++){this.object.setMeshNormals({id:shape._objectID,idx:i,normals:shape._cf.geometry.node._mesh._normals[i]});}}}
shape._dirty.normals=false;}
if(shape._dirty.colors===true){if(isImageGeometry){this.object.setMeshColors({id:shape._objectID,idx:0,colorTexture:shape._cf.geometry.node.getColorTextureURL(),components:shape._cf.geometry.node._mesh._numColComponents});}else if(isBinaryGeometry){if(!shape._cf.geometry.node._hasStrideOffset){this.object.setMeshColors({id:shape._objectID,idx:0,colors:shape._nameSpace.getURL(shape._cf.geometry.node._vf.color),components:shape._cf.geometry.node._mesh._numColComponents});}}else{if(shape._cf.geometry.node._mesh._colors[0].length){for(var i=0;i<shape._cf.geometry.node._mesh._colors.length;i++){this.object.setMeshColors({id:shape._objectID,idx:i,colors:shape._cf.geometry.node._mesh._colors[i],components:shape._cf.geometry.node._mesh._numColComponents});}}}
shape._dirty.colors=false;}
if(shape._dirty.texcoords===true){if(isImageGeometry){this.object.setMeshTexCoords({id:shape._objectID,idx:0,texCoordTexture:shape._cf.geometry.node.getTexCoordTextureURL()});}else if(isBinaryGeometry){if(!shape._cf.geometry.node._hasStrideOffset){this.object.setMeshTexCoords({id:shape._objectID,idx:0,texCoords:shape._nameSpace.getURL(shape._cf.geometry.node._vf.texCoord)});}}else{if(shape._cf.geometry.node._mesh._texCoords[0].length){for(var i=0;i<shape._cf.geometry.node._mesh._texCoords.length;i++){this.object.setMeshTexCoords({id:shape._objectID,idx:i,texCoords:shape._cf.geometry.node._mesh._texCoords[i]});}}}
shape._dirty.texcoords=false;}
if(shape._dirty.material===true){if(appearance){var material=shape._cf.appearance.node._cf.material.node;if(material){this.object.setMeshMaterial({id:shape._objectID,ambientIntensity:material._vf.ambientIntensity,diffuseColor:material._vf.diffuseColor.toGL(),emissiveColor:material._vf.emissiveColor.toGL(),shininess:material._vf.shininess,specularColor:material._vf.specularColor.toGL(),transparency:material._vf.transparency});}}
shape._dirty.material=false;}
if(shape._dirty.texture===true){if(appearance){var texTrafo=null;if(appearance._cf.textureTransform.node){texTrafo=appearance.texTransformMatrix().toGL();}
var texture=shape._cf.appearance.node._cf.texture.node;if(texture){if(x3dom.isa(texture,x3dom.nodeTypes.PixelTexture)){this.object.setPixelTexture({id:shape._objectID,width:texture._vf.image.width,height:texture._vf.image.height,comp:texture._vf.image.comp,pixels:texture._vf.image.toGL()});}else if(x3dom.isa(texture,x3dom.nodeTypes.ComposedCubeMapTexture)){this.object.setCubeTexture({id:shape._objectID,texURLs:texture.getTexUrl()});}else if(texture._isCanvas&&texture._canvas){this.object.setCanvasTexture({id:shape._objectID,width:texture._canvas.width,height:texture._canvas.height,dataURL:texture._canvas.toDataURL()});}else if(x3dom.isa(texture,x3dom.nodeTypes.MultiTexture)){x3dom.debug.logError("Flash backend doesn't support MultiTextures yet");}else if(x3dom.isa(texture,x3dom.nodeTypes.MovieTexture)){x3dom.debug.logError("Flash backend doesn't support MovieTextures yet");}else{this.object.setMeshTexture({id:shape._objectID,origChannelCount:texture._vf.origChannelCount,repeatS:texture._vf.repeatS,repeatT:texture._vf.repeatT,url:texture._vf.url[0],transform:texTrafo});}}else{this.object.removeTexture({id:shape._objectID});}}
shape._dirty.texture=false;}
if(shape._cf.geometry.node._cf.texCoord!==undefined&&shape._cf.geometry.node._cf.texCoord.node!==null&&!x3dom.isa(shape._cf.geometry.node._cf.texCoord.node,x3dom.nodeTypes.X3DTextureNode)&&shape._cf.geometry.node._cf.texCoord.node._vf.mode){var texMode=shape._cf.geometry.node._cf.texCoord.node._vf.mode;if(texMode.toLowerCase()=="sphere"){this.object.setSphereMapping({id:shape._objectID,sphereMapping:1});}
else{this.object.setSphereMapping({id:shape._objectID,sphereMapping:0});}}
else{this.object.setSphereMapping({id:shape._objectID,sphereMapping:0});}}};Context.prototype.setupText=function(shape,trafo,refID){this.object.setMeshTransform({id:shape._objectID,refID:refID,transform:trafo.toGL()});if(refID==0){var appearance=shape._cf.appearance.node;var sortType=(appearance)?shape._cf.appearance.node._vf.sortType:"auto";var sortKey=(appearance)?shape._cf.appearance.node._vf.sortKey:0
if(shape._dirty.text===true){var fontStyleNode=shape._cf.geometry.node._cf.fontStyle.node;if(fontStyleNode===null){this.object.setMeshProperties({id:shape._objectID,type:"Text",sortType:sortType,sortKey:sortKey,solid:shape.isSolid(),text:shape._cf.geometry.node._vf.string,fontFamily:['SERIF'],fontStyle:"PLAIN",fontAlign:"BEGIN",fontSize:32,fontSpacing:1.0,fontHorizontal:true,fontLanguage:"",fontLeftToRight:true,fontTopToBottom:true});}else{this.object.setMeshProperties({id:shape._objectID,type:"Text",sortType:sortType,sortKey:sortKey,solid:shape.isSolid(),text:shape._cf.geometry.node._vf.string,fontFamily:fontStyleNode._vf.family.toString(),fontStyle:fontStyleNode._vf.style.toString(),fontAlign:fontStyleNode._vf.justify.toString(),fontSize:fontStyleNode._vf.size,fontSpacing:fontStyleNode._vf.spacing,fontHorizontal:fontStyleNode._vf.horizontal,fontLanguage:fontStyleNode._vf.language,fontLeftToRight:fontStyleNode._vf.leftToRight,fontTopToBottom:fontStyleNode._vf.topToBottom});}
shape._dirty.text=false;}
if(shape._dirty.material===true){if(appearance){var material=shape._cf.appearance.node._cf.material.node;if(material){this.object.setMeshMaterial({id:shape._objectID,ambientIntensity:material._vf.ambientIntensity,diffuseColor:material._vf.diffuseColor.toGL(),emissiveColor:material._vf.emissiveColor.toGL(),shininess:material._vf.shininess,specularColor:material._vf.specularColor.toGL(),transparency:material._vf.transparency});}}
shape._dirty.material=false;}}};Context.prototype.pickValue=function(viewarea,x,y,viewMat,sceneMat){var scene=viewarea._scene;if(this.object===null||scene===null||scene.drawableCollection===undefined||!scene.drawableCollection||scene._vf.pickMode.toLowerCase()==="box"){return false;}
var pickMode=(scene._vf.pickMode.toLowerCase()==="color")?1:((scene._vf.pickMode.toLowerCase()==="texcoord")?2:0);var data=this.object.pickValue({pickMode:pickMode});if(data.objID>0){viewarea._pickingInfo.pickPos=new x3dom.fields.SFVec3f(data.pickPosX,data.pickPosY,data.pickPosZ);viewarea._pickingInfo.pickObj=x3dom.nodeTypes.Shape.idMap.nodeID[data.objID];}else{viewarea._pickingInfo.pickObj=null;viewarea._pickingInfo.lastClickObj=null;}
return true;};Context.prototype.shutdown=function(viewarea){};return setupContext;})();x3dom.NodeNameSpace=function(name,document){this.name=name;this.doc=document;this.baseURL="";this.defMap={};this.parent=null;this.childSpaces=[];};x3dom.NodeNameSpace.prototype.addNode=function(node,name){this.defMap[name]=node;node._nameSpace=this;};x3dom.NodeNameSpace.prototype.removeNode=function(name){var node=name?this.defMap[name]:null;if(node){delete this.defMap[name];node._nameSpace=null;}};x3dom.NodeNameSpace.prototype.getNamedNode=function(name){return this.defMap[name];};x3dom.NodeNameSpace.prototype.getNamedElement=function(name){var node=this.defMap[name];return(node?node._xmlNode:null);};x3dom.NodeNameSpace.prototype.addSpace=function(space){this.childSpaces.push(space);space.parent=this;};x3dom.NodeNameSpace.prototype.removeSpace=function(space){space.parent=null;for(var it=0;it<this.childSpaces.length;it++){if(this.childSpaces[it]==space){this.childSpaces.splice(it,1);}}};x3dom.NodeNameSpace.prototype.setBaseURL=function(url){var i=url.lastIndexOf("/");this.baseURL=(i>=0)?url.substr(0,i+1):"";x3dom.debug.logInfo("setBaseURL: "+this.baseURL);};x3dom.NodeNameSpace.prototype.getURL=function(url){if(url===undefined||!url.length){return"";}
else{return((url[0]==='/')||(url.indexOf(":")>=0))?url:(this.baseURL+url);}};x3dom.hasElementAttribute=function(attrName)
{var ok=this.__hasAttribute(attrName);if(!ok&&attrName){ok=this.__hasAttribute(attrName.toLowerCase());}
return ok;};x3dom.getElementAttribute=function(attrName)
{var attrib=this.__getAttribute(attrName);if(!attrib&&attrib!=""&&attrName){attrib=this.__getAttribute(attrName.toLowerCase());}
if(attrib||!this._x3domNode){return attrib;}
else{return this._x3domNode._vf[attrName];}};x3dom.setElementAttribute=function(attrName,newVal)
{this.__setAttribute(attrName,newVal);var x3dNode=this._x3domNode;if(x3dNode){x3dNode.updateField(attrName,newVal);x3dNode._nameSpace.doc.needRender=true;}};x3dom.getFieldValue=function(fieldName)
{var x3dNode=this._x3domNode;if(x3dNode&&x3dNode._vf[fieldName]){return x3dNode._vf[fieldName].copy();}
return null;};x3dom.setFieldValue=function(fieldName,fieldvalue){var x3dNode=this._x3domNode;if(x3dNode&&x3dNode._vf[fieldName]){if(fieldvalue instanceof Object&&'copy'in fieldvalue)
{x3dNode._vf[fieldName]=fieldvalue.copy();}
else
x3dNode._vf[fieldName]=fieldvalue;x3dNode.fieldChanged(fieldName);x3dNode._nameSpace.doc.needRender=true;}};x3dom.requestFieldRef=function(fieldName)
{var x3dNode=this._x3domNode;if(x3dNode&&x3dNode._vf[fieldName])
{return x3dNode._vf[fieldName];}
return null;};x3dom.releaseFieldRef=function(fieldName)
{var x3dNode=this._x3domNode;if(x3dNode&&x3dNode._vf[fieldName])
{x3dNode.fieldChanged(fieldName);x3dNode._nameSpace.doc.needRender=true;}};x3dom.NodeNameSpace.prototype.setupTree=function(domNode){var n=null;if(x3dom.isX3DElement(domNode)){if(domNode._x3domNode){x3dom.debug.logWarning('Tree is already initialized');return null;}
if((domNode.tagName!==undefined)&&(!domNode.__addEventListener)&&(!domNode.__removeEventListener))
{domNode.__addEventListener=domNode.addEventListener;domNode.addEventListener=function(type,func,phase){if(!this._x3domNode._listeners[type]){this._x3domNode._listeners[type]=[];}
this._x3domNode._listeners[type].push(func);this.__addEventListener(type,func,phase);};domNode.__removeEventListener=domNode.removeEventListener;domNode.removeEventListener=function(type,func,phase){var list=this._x3domNode._listeners[type];if(list){for(var it=0;it<list.length;it++){if(list[it]==func){list.splice(it,1);}}}
this.__removeEventListener(type,func,phase);};}
if(domNode.hasAttribute('USE')||domNode.hasAttribute('use'))
{if(!domNode.hasAttribute('USE')){domNode.setAttribute('USE',domNode.getAttribute('use'));}
n=this.defMap[domNode.getAttribute('USE')];if(!n){var nsName=domNode.getAttribute('USE').split('__');if(nsName.length>=2){var otherNS=this;while(otherNS){if(otherNS.name==nsName[0])
n=otherNS.defMap[nsName[1]];if(n)
otherNS=null;else
otherNS=otherNS.parent;}
if(!n){n=null;x3dom.debug.logWarning('Could not USE: '+domNode.getAttribute('USE'));}}}
if(n){domNode._x3domNode=n;}
return n;}
else{if(domNode.localName.toLowerCase()==='route'){var route=domNode;var fnAtt=route.getAttribute('fromNode')||route.getAttribute('fromnode');var tnAtt=route.getAttribute('toNode')||route.getAttribute('tonode');var fromNode=this.defMap[fnAtt];var toNode=this.defMap[tnAtt];if(!(fromNode&&toNode)){x3dom.debug.logWarning("Broken route - can't find all DEFs for "+fnAtt+" -> "+tnAtt);}
else{fnAtt=route.getAttribute('fromField')||route.getAttribute('fromfield');tnAtt=route.getAttribute('toField')||route.getAttribute('tofield');fromNode.setupRoute(fnAtt,toNode,tnAtt);route._nodeNameSpace=this;}
return null;}
domNode.requestFieldRef=x3dom.requestFieldRef;domNode.releaseFieldRef=x3dom.releaseFieldRef;domNode.getFieldValue=x3dom.getFieldValue;domNode.setFieldValue=x3dom.setFieldValue;var nodeType=x3dom.nodeTypesLC[domNode.localName.toLowerCase()];if(nodeType===undefined){x3dom.debug.logWarning("Unrecognised X3D element &lt;"+domNode.localName+"&gt;.");}
else{if((x3dom.userAgentFeature.supportsDOMAttrModified===false)&&(domNode instanceof Element)){if(domNode.setAttribute&&!domNode.__setAttribute){domNode.__setAttribute=domNode.setAttribute;domNode.setAttribute=x3dom.setElementAttribute;}
if(domNode.getAttribute&&!domNode.__getAttribute){domNode.__getAttribute=domNode.getAttribute;domNode.getAttribute=x3dom.getElementAttribute;}
if(domNode.hasAttribute&&!domNode.__hasAttribute){domNode.__hasAttribute=domNode.hasAttribute;domNode.hasAttribute=x3dom.hasElementAttribute;}}
var ctx={doc:this.doc,xmlNode:domNode,nameSpace:this};n=new nodeType(ctx);if(domNode.hasAttribute('DEF')){n._DEF=domNode.getAttribute('DEF');this.defMap[n._DEF]=n;}
else{if(domNode.hasAttribute('id')){n._DEF=domNode.getAttribute('id');this.defMap[n._DEF]=n;}}
if(domNode.highlight===undefined)
{domNode.highlight=function(enable,colorStr){var color=x3dom.fields.SFColor.parse(colorStr);this._x3domNode.highlight(enable,color);this._x3domNode._nameSpace.doc.needRender=true;};}
n._xmlNode=domNode;domNode._x3domNode=n;var that=this;Array.forEach(domNode.childNodes,function(childDomNode){var c=that.setupTree(childDomNode);if(c){n.addChild(c,childDomNode.getAttribute("containerField"));}});n.nodeChanged();return n;}}}
else if(domNode.localName){x3dom.debug.logWarning("Unrecognised X3D element &lt;"+domNode.localName+"&gt;.");n=null;}
return n;};x3dom.registerNodeType("X3DNode","Core",defineClass(null,function(ctx){this._xmlNode=null;this._DEF=null;this._nameSpace=(ctx&&ctx.nameSpace)?ctx.nameSpace:null;this._vf={};this._vfFieldTypes={};this._cf={};this._cfFieldTypes={};this._fieldWatchers={};this._routes={};this._listeners={};this._parentNodes=[];this._childNodes=[];this.addField_SFNode('metadata',x3dom.nodeTypes.X3DMetadataObject);},{type:function(){return this.constructor;},typeName:function(){return this.constructor._typeName;},addChild:function(node,containerFieldName){if(node){var field=null;if(containerFieldName){field=this._cf[containerFieldName];}
else{for(var fieldName in this._cf){if(this._cf.hasOwnProperty(fieldName)){var testField=this._cf[fieldName];if(x3dom.isa(node,testField.type)){field=testField;break;}}}}
if(field&&field.addLink(node)){node._parentNodes.push(this);this._childNodes.push(node);node.parentAdded(this);return true;}}
return false;},removeChild:function(node){if(node){for(var fieldName in this._cf){if(this._cf.hasOwnProperty(fieldName)){var field=this._cf[fieldName];if(field.rmLink(node)){for(var i=node._parentNodes.length-1;i>=0;i--){if(node._parentNodes[i]===this){node._parentNodes.splice(i,1);node.parentRemoved(this);}}
for(var j=this._childNodes.length-1;j>=0;j--){if(this._childNodes[j]===node){node.onRemove();this._childNodes.splice(j,1);return true;}}}}}}
return false;},onRemove:function(){},parentAdded:function(parent){},parentRemoved:function(parent){for(var i=0,n=this._childNodes.length;i<n;i++){if(this._childNodes[i]){this._childNodes[i].parentRemoved(this);}}},getCurrentTransform:function(){if(this._parentNodes.length>=1){return this.transformMatrix(this._parentNodes[0].getCurrentTransform());}
else{return x3dom.fields.SFMatrix4f.identity();}},transformMatrix:function(transform){return transform;},getVolume:function(){return null;},invalidateVolume:function(){},invalidateCache:function(){},volumeValid:function(){return false;},collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes){},highlight:function(enable,color)
{if(this._vf.hasOwnProperty("diffuseColor"))
{if(enable){if(this._actDiffuseColor===undefined){this._actDiffuseColor=new x3dom.fields.SFColor();this._highlightOn=false;}
if(!this._highlightOn){this._actDiffuseColor.setValues(this._vf.diffuseColor);this._highlightOn=true;}
this._vf.diffuseColor.setValues(color);}
else{if(this._actDiffuseColor!==undefined){this._vf.diffuseColor.setValues(this._actDiffuseColor);this._highlightOn=false;delete this._actDiffuseColor;}}}
for(var i=0,n=this._childNodes.length;i<n;i++)
{if(this._childNodes[i])
this._childNodes[i].highlight(enable,color);}},findX3DDoc:function(){return this._nameSpace.doc;},doIntersect:function(line){var isect=false;for(var i=0;i<this._childNodes.length;i++){if(this._childNodes[i]){isect=this._childNodes[i].doIntersect(line)||isect;}}
return isect;},postMessage:function(field,msg){this._vf[field]=msg;var listeners=this._fieldWatchers[field];var that=this;if(listeners){Array.forEach(listeners,function(l){l.call(that,msg);});}
var eventObject={target:that._xmlNode,type:"outputchange",fieldName:field,value:msg};this.callEvtHandler("onoutputchange",eventObject);},updateField:function(field,msg){var f=this._vf[field];if(f===undefined){for(var key in this._vf){if(key.toLowerCase()==field){field=key;f=this._vf[field];break;}}
var pre="set_";if(f===undefined&&field.indexOf(pre)==0){var fieldName=field.substr(pre.length,field.length-1);if(this._vf[fieldName]!==undefined){field=fieldName;f=this._vf[field];}}
if(f===undefined){f=null;this._vf[field]=f;}}
if(f!==null){try{this._vf[field].setValueByStr(msg);}
catch(exc1){try{switch((typeof(this._vf[field])).toString()){case"number":if(typeof(msg)=="number")
this._vf[field]=msg;else
this._vf[field]=+msg;break;case"boolean":if(typeof(msg)=="boolean")
this._vf[field]=msg;else
this._vf[field]=(msg.toLowerCase()=="true");break;case"string":this._vf[field]=msg;break;}}
catch(exc2){x3dom.debug.logError("updateField: setValueByStr() NYI for "+typeof(f));}}
this.fieldChanged(field);}},setupRoute:function(fromField,toNode,toField){var pos;var fieldName;var pre="set_",post="_changed";if(!this._vf[fromField]){pos=fromField.indexOf(pre);if(pos===0){fieldName=fromField.substr(pre.length,fromField.length-1);if(this._vf[fieldName]){fromField=fieldName;}}else{pos=fromField.indexOf(post);if(pos>0){fieldName=fromField.substr(0,fromField.length-post.length);if(this._vf[fieldName]){fromField=fieldName;}}}}
if(!toNode._vf[toField]){pos=toField.indexOf(pre);if(pos===0){fieldName=toField.substr(pre.length,toField.length-1);if(toNode._vf[fieldName]){toField=fieldName;}}
else{pos=toField.indexOf(post);if(pos>0){fieldName=toField.substr(0,toField.length-post.length);if(toNode._vf[fieldName]){toField=fieldName;}}}}
var where=this._DEF+"&"+fromField+"&"+toNode._DEF+"&"+toField;if(!this._routes[where]){if(!this._fieldWatchers[fromField]){this._fieldWatchers[fromField]=[];}
this._fieldWatchers[fromField].push(function(msg){toNode.postMessage(toField,msg);});if(!toNode._fieldWatchers[toField]){toNode._fieldWatchers[toField]=[];}
toNode._fieldWatchers[toField].push(function(msg){toNode._vf[toField]=msg;toNode.fieldChanged(toField);});this._routes[where]={from:this._fieldWatchers[fromField].length-1,to:toNode._fieldWatchers[toField].length-1};}},removeRoute:function(fromField,toNode,toField){var pos;var fieldName;var pre="set_",post="_changed";if(!this._vf[fromField]){pos=fromField.indexOf(pre);if(pos===0){fieldName=fromField.substr(pre.length,fromField.length-1);if(this._vf[fieldName]){fromField=fieldName;}}else{pos=fromField.indexOf(post);if(pos>0){fieldName=fromField.substr(0,fromField.length-post.length);if(this._vf[fieldName]){fromField=fieldName;}}}}
if(!toNode._vf[toField]){pos=toField.indexOf(pre);if(pos===0){fieldName=toField.substr(pre.length,toField.length-1);if(toNode._vf[fieldName]){toField=fieldName;}}
else{pos=toField.indexOf(post);if(pos>0){fieldName=toField.substr(0,toField.length-post.length);if(toNode._vf[fieldName]){toField=fieldName;}}}}
var where=this._DEF+"&"+fromField+"&"+toNode._DEF+"&"+toField;if(this._routes[where]){this._fieldWatchers[fromField].splice(this._routes[where].from,1);toNode._fieldWatchers[toField].splice(this._routes[where].to,1);delete this._routes[where];}},fieldChanged:function(fieldName){},nodeChanged:function(){},callEvtHandler:function(eventType,event){var node=this;if(!node._xmlNode){return event.cancelBubble;}
try{var attrib=node._xmlNode[eventType];event.target=node._xmlNode;if(typeof(attrib)==="function"){attrib.call(node._xmlNode,event);}
else{var funcStr=node._xmlNode.getAttribute(eventType);var func=new Function('event',funcStr);func.call(node._xmlNode,event);}
var list=node._listeners[event.type];if(list){for(var it=0;it<list.length;it++){list[it].call(node._xmlNode,event);}}}
catch(ex){x3dom.debug.logException(ex);}
return event.cancelBubble;},initSetter:function(xmlNode,name){if(!xmlNode||!name)
return;var nameLC=name.toLowerCase();if(xmlNode.__defineSetter__&&xmlNode.__defineGetter__){xmlNode.__defineSetter__(name,function(value){xmlNode.setAttribute(name,value);});xmlNode.__defineGetter__(name,function(){return xmlNode.getAttribute(name);});if(nameLC!=name){xmlNode.__defineSetter__(nameLC,function(value){xmlNode.setAttribute(name,value);});xmlNode.__defineGetter__(nameLC,function(){return xmlNode.getAttribute(name);});}}
else{Object.defineProperty(xmlNode,name,{set:function(value){xmlNode.setAttribute(name,value);},get:function(){return xmlNode.getAttribute(name);},configurable:true,enumerable:true});}
if(this._vf[name]&&!xmlNode.attributes[name]&&!xmlNode.attributes[name.toLowerCase()]){var str="";try{if(this._vf[name].toGL)
str=this._vf[name].toGL().toString();else
str=this._vf[name].toString();}
catch(e){str=this._vf[name].toString();}
if(!str){str="";}
xmlNode.setAttribute(name,str);}},addField_SFInt32:function(ctx,name,n){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?parseInt(ctx.xmlNode.getAttribute(name),10):n;if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFInt32";},addField_SFFloat:function(ctx,name,n){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?+ctx.xmlNode.getAttribute(name):n;if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFFloat";},addField_SFDouble:function(ctx,name,n){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?+ctx.xmlNode.getAttribute(name):n;if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFDouble";},addField_SFTime:function(ctx,name,n){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?+ctx.xmlNode.getAttribute(name):n;if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFTime";},addField_SFBool:function(ctx,name,n){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?ctx.xmlNode.getAttribute(name).toLowerCase()==="true":n;if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFBool";},addField_SFString:function(ctx,name,n){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?ctx.xmlNode.getAttribute(name):n;if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFString";},addField_SFColor:function(ctx,name,r,g,b){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFColor.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFColor(r,g,b);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFColor";},addField_SFColorRGBA:function(ctx,name,r,g,b,a){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFColorRGBA.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFColorRGBA(r,g,b,a);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFColorRGBA";},addField_SFVec2f:function(ctx,name,x,y){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFVec2f.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFVec2f(x,y);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFVec2f";},addField_SFVec3f:function(ctx,name,x,y,z){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFVec3f.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFVec3f(x,y,z);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFVec3f";},addField_SFVec4f:function(ctx,name,x,y,z,w){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFVec4f.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFVec4f(x,y,z,w);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFVec4f";},addField_SFVec3d:function(ctx,name,x,y,z){this.addField_SFVec3f(ctx,name,x,y,z);this._vfFieldTypes[name]="SFVec3d";},addField_SFRotation:function(ctx,name,x,y,z,a){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.Quaternion.parseAxisAngle(ctx.xmlNode.getAttribute(name)):x3dom.fields.Quaternion.axisAngle(new x3dom.fields.SFVec3f(x,y,z),a);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFRotation";},addField_SFMatrix4f:function(ctx,name,_00,_01,_02,_03,_10,_11,_12,_13,_20,_21,_22,_23,_30,_31,_32,_33){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFMatrix4f.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFMatrix4f(_00,_01,_02,_03,_10,_11,_12,_13,_20,_21,_22,_23,_30,_31,_32,_33);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFMatrix4f";},addField_SFImage:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.SFImage.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.SFImage(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="SFImage";},addField_MFString:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFString.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFString(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFString";},addField_MFBoolean:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFBoolean.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFBoolean(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFBoolean";},addField_MFInt32:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFInt32.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFInt32(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFInt32";},addField_MFFloat:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFFloat.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFFloat(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFFloat";},addField_MFDouble:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFFloat.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFFloat(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFDouble";},addField_MFColor:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFColor.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFColor(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFColor";},addField_MFColorRGBA:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFColorRGBA.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFColorRGBA(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFColorRGBA";},addField_MFVec2f:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFVec2f.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFVec2f(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFVec2f";},addField_MFVec3f:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFVec3f.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFVec3f(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFVec3f";},addField_MFVec3d:function(ctx,name,def){this.addField_MFVec3f(ctx,name,def);this._vfFieldTypes[name]="MFVec3d";},addField_MFRotation:function(ctx,name,def){this._vf[name]=ctx&&ctx.xmlNode&&ctx.xmlNode.hasAttribute(name)?x3dom.fields.MFRotation.parse(ctx.xmlNode.getAttribute(name)):new x3dom.fields.MFRotation(def);if(ctx&&ctx.xmlNode){this.initSetter(ctx.xmlNode,name);}
this._vfFieldTypes[name]="MFRotation";},addField_SFNode:function(name,type){this._cf[name]=new x3dom.fields.SFNode(type);this._cfFieldTypes[name]="SFNode";},addField_MFNode:function(name,type){this._cf[name]=new x3dom.fields.MFNode(type);this._cfFieldTypes[name]="MFNode";}}));x3dom.registerNodeType("X3DMetadataObject","Core",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DMetadataObject.superClass.call(this,ctx);this.addField_SFString(ctx,'name',"");this.addField_SFString(ctx,'reference',"");}));x3dom.registerNodeType("MetadataBoolean","Core",defineClass(x3dom.nodeTypes.X3DMetadataObject,function(ctx){x3dom.nodeTypes.MetadataBoolean.superClass.call(this,ctx);this.addField_MFBoolean(ctx,'value',[]);}));x3dom.registerNodeType("MetadataDouble","Core",defineClass(x3dom.nodeTypes.X3DMetadataObject,function(ctx){x3dom.nodeTypes.MetadataDouble.superClass.call(this,ctx);this.addField_MFDouble(ctx,'value',[]);}));x3dom.registerNodeType("MetadataFloat","Core",defineClass(x3dom.nodeTypes.X3DMetadataObject,function(ctx){x3dom.nodeTypes.MetadataFloat.superClass.call(this,ctx);this.addField_MFFloat(ctx,'value',[]);}));x3dom.registerNodeType("MetadataInteger","Core",defineClass(x3dom.nodeTypes.X3DMetadataObject,function(ctx){x3dom.nodeTypes.MetadataInteger.superClass.call(this,ctx);this.addField_MFInt32(ctx,'value',[]);}));x3dom.registerNodeType("MetadataSet","Core",defineClass(x3dom.nodeTypes.X3DMetadataObject,function(ctx){x3dom.nodeTypes.MetadataSet.superClass.call(this,ctx);this.addField_MFNode('value',x3dom.nodeTypes.X3DMetadataObject);}));x3dom.registerNodeType("MetadataString","Core",defineClass(x3dom.nodeTypes.X3DMetadataObject,function(ctx){x3dom.nodeTypes.MetadataString.superClass.call(this,ctx);this.addField_MFString(ctx,'value',[]);}));x3dom.registerNodeType("Field","Core",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.Field.superClass.call(this,ctx);this.addField_SFString(ctx,'name',"");this.addField_SFString(ctx,'type',"");this.addField_SFString(ctx,'value',"");},{fieldChanged:function(fieldName){var that=this;if(fieldName==='value'){Array.forEach(this._parentNodes,function(node){node.fieldChanged(that._vf.name);});}}}));x3dom.registerNodeType("X3DChildNode","Core",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DChildNode.superClass.call(this,ctx);}));x3dom.registerNodeType("X3DBindableNode","Core",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DBindableNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'bind',false);this.addField_SFString(ctx,'description',"");this.addField_SFBool(ctx,'isActive',false);this._autoGen=(ctx&&ctx.autoGen?true:false);if(this._autoGen)
this._vf.description="default"+this.constructor.superClass._typeName;this._stack=null;},{bind:function(value){if(this._stack){if(value){this._stack.push(this);}
else{this._stack.pop(this);}}
else{x3dom.debug.logError('No BindStack in '+this.typeName()+'Bindable');}},activate:function(prev){this.postMessage('isActive',true);x3dom.debug.logInfo('activate '+this.typeName()+'Bindable '+
this._DEF+'/'+this._vf.description);},deactivate:function(prev){this.postMessage('isActive',false);x3dom.debug.logInfo('deactivate '+this.typeName()+'Bindable '+
this._DEF+'/'+this._vf.description);},fieldChanged:function(fieldName){if(fieldName.indexOf("bind")>=0){this.bind(this._vf.bind);}},nodeChanged:function(){this._stack=this._nameSpace.doc._bindableBag.addBindable(this);}}));x3dom.registerNodeType("X3DInfoNode","Core",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DInfoNode.superClass.call(this,ctx);}));x3dom.registerNodeType("WorldInfo","Core",defineClass(x3dom.nodeTypes.X3DInfoNode,function(ctx){x3dom.nodeTypes.WorldInfo.superClass.call(this,ctx);this.addField_MFString(ctx,'info',[]);this.addField_SFString(ctx,'title',"");x3dom.debug.logInfo(this._vf.info);x3dom.debug.logInfo(this._vf.title);}));x3dom.registerNodeType("X3DSensorNode","Core",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DSensorNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'enabled',true);}));x3dom.registerNodeType("Param","Core",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.Param.superClass.call(this,ctx);x3dom.debug.logWarning('DEPRECATED: Param element needs to be child of X3D element '
+'[<a href="http://x3dom.org/docs/latest/configuration.html">DOCS</a>]');}));x3dom.registerNodeType("X3DBoundedObject","Grouping",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DBoundedObject.superClass.call(this,ctx);this.addField_SFBool(ctx,'render',true);this.addField_SFVec3f(ctx,'bboxCenter',0,0,0);this.addField_SFVec3f(ctx,'bboxSize',-1,-1,-1);this._graph={boundedNode:this,localMatrix:x3dom.fields.SFMatrix4f.identity(),globalMatrix:null,volume:new x3dom.fields.BoxVolume(),worldVolume:new x3dom.fields.BoxVolume(),center:new x3dom.fields.SFVec3f(0,0,0),coverage:-1,needCulling:true};},{fieldChanged:function(fieldName){if(this._vf.hasOwnProperty(fieldName)){this.invalidateVolume();}},nodeChanged:function(){this.invalidateVolume();},parentAdded:function(parent){this.invalidateVolume();},getVolume:function()
{var vol=this._graph.volume;if(!this.volumeValid()&&this._vf.render)
{for(var i=0,n=this._childNodes.length;i<n;i++)
{var child=this._childNodes[i];if(!child||child._vf.render!==true)
continue;var childVol=child.getVolume();if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}}
return vol;},invalidateVolume:function()
{var graph=this._graph;graph.volume.invalidate();graph.worldVolume.invalidate();graph.globalMatrix=null;for(var i=0,n=this._parentNodes.length;i<n;i++){var node=this._parentNodes[i];if(node&&node.volumeValid())
node.invalidateVolume();}},invalidateCache:function()
{var graph=this._graph;graph.worldVolume.invalidate();graph.globalMatrix=null;},cacheInvalid:function()
{return(this._graph.globalMatrix==null||!this._graph.worldVolume.isValid());},volumeValid:function()
{return this._graph.volume.isValid();},graphState:function()
{return this._graph;},forceUpdateCoverage:function()
{return false;}}));x3dom.registerNodeType("X3DGroupingNode","Grouping",defineClass(x3dom.nodeTypes.X3DBoundedObject,function(ctx){x3dom.nodeTypes.X3DGroupingNode.superClass.call(this,ctx);this.addField_MFNode('children',x3dom.nodeTypes.X3DChildNode);},{collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask);if(planeMask<=0){return;}
var cnode,childTransform;if(singlePath){if(!this._graph.globalMatrix){this._graph.globalMatrix=this.transformMatrix(transform);}
childTransform=this._graph.globalMatrix;}
else{childTransform=this.transformMatrix(transform);}
var n=this._childNodes.length;if(x3dom.nodeTypes.ClipPlane.count>0){var localClipPlanes=[];for(var j=0;j<n;j++){if((cnode=this._childNodes[j])){if(x3dom.isa(cnode,x3dom.nodeTypes.ClipPlane)&&cnode._vf.on&&cnode._vf.enabled){localClipPlanes.push({plane:cnode,trafo:childTransform});}}}
clipPlanes=localClipPlanes.concat(clipPlanes);}
for(var i=0;i<n;i++){if((cnode=this._childNodes[i])){cnode.collectDrawableObjects(childTransform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}}}}));x3dom.registerNodeType("Switch","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Switch.superClass.call(this,ctx);this.addField_SFInt32(ctx,'whichChoice',-1);},{fieldChanged:function(fieldName){if(fieldName=="whichChoice"){this.invalidateVolume();}},getVolume:function()
{var vol=this._graph.volume;if(!this.volumeValid()&&this._vf.render)
{if(this._vf.whichChoice>=0&&this._vf.whichChoice<this._childNodes.length)
{var child=this._childNodes[this._vf.whichChoice];var childVol=(child&&child._vf.render===true)?child.getVolume():null;if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}}
return vol;},collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();if(this._vf.whichChoice<0||this._vf.whichChoice>=this._childNodes.length||(planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask))<=0){return;}
var cnode,childTransform;if(singlePath){if(!this._graph.globalMatrix){this._graph.globalMatrix=this.transformMatrix(transform);}
childTransform=this._graph.globalMatrix;}
else{childTransform=this.transformMatrix(transform);}
if((cnode=this._childNodes[this._vf.whichChoice])){cnode.collectDrawableObjects(childTransform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}},doIntersect:function(line)
{if(this._vf.whichChoice<0||this._vf.whichChoice>=this._childNodes.length){return false;}
var child=this._childNodes[this._vf.whichChoice];if(child){return child.doIntersect(line);}
return false;}}));x3dom.registerNodeType("X3DTransformNode","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.X3DTransformNode.superClass.call(this,ctx);if(ctx)
ctx.doc._nodeBag.trans.push(this);else
x3dom.debug.logWarning("X3DTransformNode: No runtime context found!");this._trafo=null;this._needCssStyleUpdates=true;},{tick:function(t)
{var dom=this._xmlNode;if(dom&&(dom['ontransform']||dom.hasAttribute('ontransform')||this._listeners['transform'])){var transMatrix=this.getCurrentTransform();var event={target:dom,type:'transform',worldX:transMatrix._03,worldY:transMatrix._13,worldZ:transMatrix._23,cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;}};this.callEvtHandler("ontransform",event);}
if(this._needCssStyleUpdates&&dom){var trans=x3dom.getStyle(dom,"-webkit-transform")||x3dom.getStyle(dom,"-moz-transform")||x3dom.getStyle(dom,"-ms-transform")||x3dom.getStyle(dom,"transform");if(trans&&(trans!='none')){this._trafo.setValueByStr(trans);this.invalidateVolume();return true;}
this._needCssStyleUpdates=false;}
return false;},transformMatrix:function(transform){return transform.mult(this._trafo);},getVolume:function()
{var vol=this._graph.volume;if(!this.volumeValid()&&this._vf.render)
{this._graph.localMatrix=this._trafo;for(var i=0,n=this._childNodes.length;i<n;i++)
{var child=this._childNodes[i];if(!child||child._vf.render!==true)
continue;var childVol=child.getVolume();if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}
if(vol.isValid())
vol.transform(this._trafo);}
return vol;},doIntersect:function(line)
{var isect=false;var mat=this._trafo.inverse();var tmpPos=new x3dom.fields.SFVec3f(line.pos.x,line.pos.y,line.pos.z);var tmpDir=new x3dom.fields.SFVec3f(line.dir.x,line.dir.y,line.dir.z);line.pos=mat.multMatrixPnt(line.pos);line.dir=mat.multMatrixVec(line.dir);if(line.hitObject){line.dist*=line.dir.length();}
for(var i=0;i<this._childNodes.length;i++)
{if(this._childNodes[i]){isect=this._childNodes[i].doIntersect(line)||isect;}}
line.pos.setValues(tmpPos);line.dir.setValues(tmpDir);if(isect){line.hitPoint=this._trafo.multMatrixPnt(line.hitPoint);line.dist*=line.dir.length();}
return isect;},parentRemoved:function(parent)
{var i,n;if(this._parentNodes.length==0){var doc=this.findX3DDoc();for(i=0,n=doc._nodeBag.trans.length;i<n;i++){if(doc._nodeBag.trans[i]===this){doc._nodeBag.trans.splice(i,1);}}}
for(i=0,n=this._childNodes.length;i<n;i++){if(this._childNodes[i]){this._childNodes[i].parentRemoved(this);}}}}));x3dom.registerNodeType("Transform","Grouping",defineClass(x3dom.nodeTypes.X3DTransformNode,function(ctx){x3dom.nodeTypes.Transform.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'center',0,0,0);this.addField_SFVec3f(ctx,'translation',0,0,0);this.addField_SFRotation(ctx,'rotation',0,0,1,0);this.addField_SFVec3f(ctx,'scale',1,1,1);this.addField_SFRotation(ctx,'scaleOrientation',0,0,1,0);this._trafo=x3dom.fields.SFMatrix4f.translation(this._vf.translation.add(this._vf.center)).mult(this._vf.rotation.toMatrix()).mult(this._vf.scaleOrientation.toMatrix()).mult(x3dom.fields.SFMatrix4f.scale(this._vf.scale)).mult(this._vf.scaleOrientation.toMatrix().inverse()).mult(x3dom.fields.SFMatrix4f.translation(this._vf.center.negate()));},{fieldChanged:function(fieldName)
{if(fieldName=="center"||fieldName=="translation"||fieldName=="rotation"||fieldName=="scale"||fieldName=="scaleOrientation")
{this._trafo=x3dom.fields.SFMatrix4f.translation(this._vf.translation.add(this._vf.center)).mult(this._vf.rotation.toMatrix()).mult(this._vf.scaleOrientation.toMatrix()).mult(x3dom.fields.SFMatrix4f.scale(this._vf.scale)).mult(this._vf.scaleOrientation.toMatrix().inverse()).mult(x3dom.fields.SFMatrix4f.translation(this._vf.center.negate()));this.invalidateVolume();}
else if(fieldName=="render"){this.invalidateVolume();}}}));x3dom.registerNodeType("MatrixTransform","Grouping",defineClass(x3dom.nodeTypes.X3DTransformNode,function(ctx){x3dom.nodeTypes.MatrixTransform.superClass.call(this,ctx);this.addField_SFMatrix4f(ctx,'matrix',1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);this._trafo=this._vf.matrix.transpose();},{fieldChanged:function(fieldName){if(fieldName=="matrix"){this._trafo=this._vf.matrix.transpose();this.invalidateVolume();}
else if(fieldName=="render"){this.invalidateVolume();}}}));x3dom.registerNodeType("Group","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Group.superClass.call(this,ctx);}));x3dom.registerNodeType("Block","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Block.superClass.call(this,ctx);this.addField_MFString(ctx,'nameSpaceName',[]);}));x3dom.registerNodeType("StaticGroup","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.StaticGroup.superClass.call(this,ctx);x3dom.debug.logWarning("StaticGroup erroneously also bakes parent transforms, if happens use Group node!");this.addField_SFBool(ctx,'debug',false);this.addField_SFBool(ctx,'showDebugBoxVolumes',false);this.addField_SFString(ctx,'bvhType','jsBIH');this.addField_SFInt32(ctx,'maxObjectsPerNode',1);this.addField_SFInt32(ctx,'maxDepth',-1);this.addField_SFFloat(ctx,'minRelativeBBoxSize',0.01);this.needBvhRebuild=true;this.drawableCollection=null;this.bvh=null;},{getMaxDepth:function()
{if(this._vf.maxDepth==-1)
{return(this._vf.bvhType==('jsBIH'||'BIH'))?50:4;}
return this._vf.maxDepth;},collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask);if(planeMask<=0){return;}
var cnode,childTransform;if(singlePath){if(!this._graph.globalMatrix){this._graph.globalMatrix=this.transformMatrix(transform);}
childTransform=this._graph.globalMatrix;}
else{childTransform=this.transformMatrix(transform);}
if(this.needBvhRebuild)
{var drawableCollectionConfig={viewArea:drawableCollection.viewarea,sortTrans:drawableCollection.sortTrans,viewMatrix:drawableCollection.viewMatrix,projMatrix:drawableCollection.projMatrix,sceneMatrix:drawableCollection.sceneMatrix,frustumCulling:false,smallFeatureThreshold:0,context:drawableCollection.context};this.drawableCollection=new x3dom.DrawableCollection(drawableCollectionConfig);var i,n=this._childNodes.length;for(i=0;i<n;i++){if((cnode=this._childNodes[i])){cnode.collectDrawableObjects(childTransform,this.drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}}
this.drawableCollection.concat();var scene=this._nameSpace.doc._scene;var bvhSettings=new x3dom.bvh.Settings(this._vf.debug,this._vf.showDebugBoxVolumes,this._vf.bvhType,this._vf.maxObjectsPerNode,this.getMaxDepth(),this._vf.minRelativeBBoxSize);this.bvh=(this._vf.bvhType=='jsBIH')?new x3dom.bvh.BIH(scene,bvhSettings):new x3dom.bvh.Culler(this.drawableCollection,scene,bvhSettings);if(this._vf.debug||this._vf.showDebugBoxVolumes)
this.bvh=new x3dom.bvh.DebugDecorator(this.bvh,scene,bvhSettings);n=this.drawableCollection.length;for(i=0;i<n;i++)
{this.bvh.addDrawable(this.drawableCollection.get(i))}
this.bvh.compile();if(this._vf.debug)
this.bvh.showCompileStats();this.needBvhRebuild=false;}
x3dom.Utils.startMeasure('bvhTraverse');this.bvh.collectDrawables(drawableCollection);var dt=x3dom.Utils.stopMeasure('bvhTraverse');this._nameSpace.doc.ctx.x3dElem.runtime.addMeasurement('BVH',dt);this.bvh.showTraverseStats(this._nameSpace.doc.ctx.x3dElem.runtime);}}));x3dom.registerNodeType("RemoteSelectionGroup","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.RemoteSelectionGroup.superClass.call(this,ctx);this.addField_MFString(ctx,'url',["ws://localhost:35668/cstreams/0"]);this.addField_MFString(ctx,'label',[]);this.addField_SFInt32(ctx,'maxRenderedIds',-1);this.addField_SFBool(ctx,'reconnect',true);this.addField_SFFloat(ctx,'scaleRenderedIdsOnMove',1.0);this.addField_SFBool(ctx,'enableCulling',true);this.addField_MFString(ctx,'invisibleNodes',[]);this._idList=[];this._websocket=null;this._nameObjMap={};this._createTime=[];this._visibleList=[];if(ctx)
this.initializeSocket();else
x3dom.debug.logWarning("RemoteSelectionGroup: No runtime context found!");},{initializeSocket:function()
{var that=this;if("WebSocket"in window)
{var wsUrl="ws://localhost:35668/cstreams/0";if(this._vf.url.length&&this._vf.url[0].length)
wsUrl=this._vf.url[0];this._websocket=new WebSocket(wsUrl);this._websocket._lastMsg=null;this._websocket._lastData="";this._websocket.onopen=function(evt)
{x3dom.debug.logInfo("WS Connected");var view=that._nameSpace.doc._viewarea.getViewMatrix();this._lastMsg=view.toGL().toString();view=that._nameSpace.doc._viewarea.getProjectionMatrix();this._lastMsg+=(","+view.toGL().toString());this.send(this._lastMsg);x3dom.debug.logInfo("WS Sent: "+this._lastMsg);this._lastMsg="";this._lastData="";};this._websocket.onclose=function(evt)
{x3dom.debug.logInfo("WS Disconnected");if(that._vf.reconnect)
{window.setTimeout(function(){that.initializeSocket();},2000);}};this._websocket.onmessage=function(evt)
{if(that._vf.maxRenderedIds<0)
{that._idList=x3dom.fields.MFString.parse(evt.data);}
else if(that._vf.maxRenderedIds>0)
{that._idList=[];var arr=x3dom.fields.MFString.parse(evt.data);var n=Math.min(arr.length,Math.abs(that._vf.maxRenderedIds));for(var i=0;i<n;++i){that._idList[i]=arr[i];}}
if(that._vf.maxRenderedIds!=0&&this._lastData!=evt.data)
{this._lastData=evt.data;that._nameSpace.doc.needRender=true;that.invalidateVolume();}};this._websocket.onerror=function(evt)
{x3dom.debug.logError(evt.data);};this._websocket.updateCamera=function()
{var view=that._nameSpace.doc._viewarea.getViewMatrix();var message=view.toGL().toString();view=that._nameSpace.doc._viewarea.getProjectionMatrix();message+=(","+view.toGL().toString());if(this._lastMsg!=null&&this._lastMsg!=message)
{this._lastMsg=message;this.send(message);}};}
else
{x3dom.debug.logError("Browser has no WebSocket support!");}},nodeChanged:function()
{var n=this._vf.label.length;this._nameObjMap={};this._createTime=new Array(n);this._visibleList=new Array(n);for(var i=0;i<n;++i)
{var shape=this._childNodes[i];if(shape&&x3dom.isa(shape,x3dom.nodeTypes.X3DShapeNode))
{this._nameObjMap[this._vf.label[i]]={shape:shape,pos:i};this._visibleList[i]=true;}
else{this._visibleList[i]=false;x3dom.debug.logError("Invalid children: "+this._vf.label[i]);}
this._createTime[i]=0;}
this.invalidateVolume();x3dom.debug.logInfo("RemoteSelectionGroup has "+n+" entries.");},fieldChanged:function(fieldName)
{if(fieldName=="url")
{if(this._websocket){this._websocket.close();this._websocket=null;}
this.initializeSocket();}
else if(fieldName=="invisibleNodes")
{for(var i=0,n=this._vf.label.length;i<n;++i)
{var shape=this._childNodes[i];if(shape&&x3dom.isa(shape,x3dom.nodeTypes.X3DShapeNode))
{this._visibleList[i]=true;for(var j=0,numInvis=this._vf.invisibleNodes.length;j<numInvis;++j)
{var nodeName=this._vf.invisibleNodes[j];var starInd=nodeName.lastIndexOf('*');var matchNameBegin=false;if(starInd>0){nodeName=nodeName.substring(0,starInd);matchNameBegin=true;}
if(nodeName.length<=1)
continue;if((matchNameBegin&&this._vf.label[i].indexOf(nodeName)==0)||this._vf.label[i]==nodeName){this._visibleList[i]=false;break;}}}
else{this._visibleList[i]=false;}}
this.invalidateVolume();}
else if(fieldName=="render"){this.invalidateVolume();}},getNumRenderedObjects:function(len,isMoving)
{var n=len;if(this._vf.maxRenderedIds>0)
{var num=Math.max(this._vf.maxRenderedIds,16);var scale=1;if(isMoving)
scale=Math.min(this._vf.scaleRenderedIdsOnMove,1);num=Math.max(Math.round(scale*num),0);n=Math.min(n,num);}
return n;},collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask);if(planeMask<=0){return;}
var viewarea=this._nameSpace.doc._viewarea;var isMoving=viewarea.isMovingOrAnimating();var ts=new Date().getTime();var maxLiveTime=10000;var i,n,numChild=this._childNodes.length;if(!this._vf.enableCulling)
{n=this.getNumRenderedObjects(numChild,isMoving);var cnt=0;for(i=0;i<numChild;i++)
{var shape=this._childNodes[i];if(shape)
{var needCleanup=true;if(this._visibleList[i]&&cnt<n&&shape.collectDrawableObjects(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes))
{this._createTime[i]=ts;cnt++;needCleanup=false;}
if(needCleanup&&!isMoving&&this._createTime[i]>0&&ts-this._createTime[i]>maxLiveTime&&shape._cleanupGLObjects)
{shape._cleanupGLObjects(true);this._createTime[i]=0;}}}
return;}
if(this._websocket)
this._websocket.updateCamera();if(this._vf.label.length)
{n=this.getNumRenderedObjects(this._idList.length,isMoving);for(i=0;i<n;i++)
{var obj=this._nameObjMap[this._idList[i]];if(obj&&obj.shape){obj.shape.collectDrawableObjects(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);this._createTime[obj.pos]=ts;}
else
x3dom.debug.logError("Invalid label: "+this._idList[i]);}
for(i=0;i<this._childNodes.length;i++)
{if(this._childNodes[i]&&!isMoving&&this._createTime[i]>0&&ts-this._createTime[i]>maxLiveTime&&this._childNodes[i]._cleanupGLObjects)
{this._childNodes[i]._cleanupGLObjects(true);this._createTime[i]=0;}}}}}));x3dom.registerNodeType("Scene","Grouping",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Scene.superClass.call(this,ctx);this.addField_SFString(ctx,'pickMode',"idBuf");this.addField_SFBool(ctx,'doPickPass',true);this.addField_SFString(ctx,'shadowObjectIdMapping',"");this._lastMin=new x3dom.fields.SFVec3f(0,0,0);this._lastMax=new x3dom.fields.SFVec3f(1,1,1);this._shadowIdMap=null;this.loadMapping();this._multiPartMap=null;},{fieldChanged:function(fieldName)
{if(fieldName=="shadowObjectIdMapping")
{this.loadMapping();}},updateVolume:function()
{var vol=this.getVolume();if(vol.isValid())
{this._lastMin=x3dom.fields.SFVec3f.copy(vol.min);this._lastMax=x3dom.fields.SFVec3f.copy(vol.max);}},loadMapping:function()
{this._shadowIdMap=null;if(this._vf.shadowObjectIdMapping.length==0){return;}
var that=this;var xhr=new XMLHttpRequest();xhr.open("GET",this._nameSpace.getURL(this._vf.shadowObjectIdMapping),true);xhr.send();xhr.onload=function()
{that._shadowIdMap=eval("("+xhr.response+")");if(!that._shadowIdMap||!that._shadowIdMap.mapping){x3dom.debug.logWarning("Invalid ID map: "+that._vf.shadowObjectIdMapping);}
else{x3dom.debug.assert(that._shadowIdMap.maxID<=that._shadowIdMap.mapping.length,"Too few ID map entries in "+that._vf.shadowObjectIdMapping+", "+"length of mapping array is only "+that._shadowIdMap.mapping.length+" instead of "+that._shadowIdMap.ids.length+"!");}};}}));x3dom.BindableStack=function(doc,type,defaultType,getter){this._doc=doc;this._type=type;this._defaultType=defaultType;this._defaultRoot=null;this._getter=getter;this._bindBag=[];this._bindStack=[];};x3dom.BindableStack.prototype.top=function(){return((this._bindStack.length>0)?this._bindStack[this._bindStack.length-1]:null);};x3dom.BindableStack.prototype.push=function(bindable){var top=this.top();if(top===bindable){return;}
if(top){top.deactivate();}
this._bindStack.push(bindable);bindable.activate(top);};x3dom.BindableStack.prototype.replaceTop=function(bindable){var top=this.top();if(top===bindable){return;}
if(top){top.deactivate();this._bindStack[this._bindStack.length-1]=bindable;bindable.activate(top);}};x3dom.BindableStack.prototype.pop=function(bindable){var top;if(bindable){top=this.top();if(bindable!==top){return null;}}
top=this._bindStack.pop();if(top){top.deactivate();}
return top;};x3dom.BindableStack.prototype.switchTo=function(target){var last=this.getActive();var n=this._bindBag.length;var toBind=0;var i=0,lastIndex=-1;if(n<=1){return;}
switch(target)
{case'first':toBind=this._bindBag[0];break;case'last':toBind=this._bindBag[n-1];break;default:for(i=0;i<n;i++){if(this._bindBag[i]==last){lastIndex=i;break;}}
if(lastIndex>=0){i=lastIndex;while(!toBind){if(target=='next'){i=(i<(n-1))?(i+1):0;}else{i=(i>0)?(i-1):(n-1);}
if(i==lastIndex){break;}
if(this._bindBag[i]._vf.description.length>=0){toBind=this._bindBag[i];}}}
break;}
if(toBind){this.replaceTop(toBind);}else{x3dom.debug.logWarning('Cannot switch bindable; no other bindable with description found.');}};x3dom.BindableStack.prototype.getActive=function(){if(this._bindStack.length===0){if(this._bindBag.length===0){if(this._defaultRoot){x3dom.debug.logInfo('create new '+this._defaultType._typeName+' for '+this._type._typeName+'-stack');var obj=new this._defaultType({doc:this._doc,nameSpace:this._defaultRoot._nameSpace,autoGen:true});this._defaultRoot.addChild(obj);obj.nodeChanged();}
else{x3dom.debug.logError('stack without defaultRoot');}}
else{x3dom.debug.logInfo('activate first '+this._type._typeName+' for '+this._type._typeName+'-stack');}
this._bindStack.push(this._bindBag[0]);this._bindBag[0].activate();}
return this._bindStack[this._bindStack.length-1];};x3dom.BindableBag=function(doc){this._stacks=[];this.addType("X3DViewpointNode","Viewpoint","getViewpoint",doc);this.addType("X3DNavigationInfoNode","NavigationInfo","getNavigationInfo",doc);this.addType("X3DBackgroundNode","Background","getBackground",doc);this.addType("X3DFogNode","Fog","getFog",doc);this.addType("X3DEnvironmentNode","Environment","getEnvironment",doc);};x3dom.BindableBag.prototype.addType=function(typeName,defaultTypeName,getter,doc){var type=x3dom.nodeTypes[typeName];var defaultType=x3dom.nodeTypes[defaultTypeName];if(type&&defaultType){var stack=new x3dom.BindableStack(doc,type,defaultType,getter);this._stacks.push(stack);}
else{x3dom.debug.logWarning('Invalid Bindable type/defaultType: '+
typeName+'/'+defaultType);}};x3dom.BindableBag.prototype.setRefNode=function(node){Array.forEach(this._stacks,function(stack){stack._defaultRoot=node;node[stack._getter]=function(){return stack.getActive();};});};x3dom.BindableBag.prototype.addBindable=function(node){for(var i=0,n=this._stacks.length;i<n;i++){var stack=this._stacks[i];if(x3dom.isa(node,stack._type)){x3dom.debug.logInfo('register '+node.typeName()+'Bindable '+
node._DEF+'/'+node._vf.description);stack._bindBag.push(node);var top=stack.top();if(top&&top._autoGen){stack.replaceTop(node);for(var j=0,m=stack._bindBag.length;j<m;j++){if(stack._bindBag[j]===top){stack._bindBag.splice(j,1);break;}}
stack._defaultRoot.removeChild(top);}
return stack;}}
x3dom.debug.logError(node.typeName()+' is not a valid bindable');return null;};x3dom.registerNodeType("X3DGeometryNode","Rendering",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DGeometryNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'solid',true);this.addField_SFBool(ctx,'ccw',true);this.addField_SFBool(ctx,'useGeoCache',true);this.addField_SFBool(ctx,'lit',true);this._mesh=new x3dom.Mesh(this);},{getVolume:function(){return this._mesh.getVolume();},invalidateVolume:function(){this._mesh.invalidate();},getCenter:function(){return this._mesh.getCenter();},getDiameter:function(){return this._mesh.getDiameter();},doIntersect:function(line){return this._mesh.doIntersect(line);},forceUpdateCoverage:function(){return false;},hasIndexOffset:function(){return false;},getColorTexture:function(){return null;},getColorTextureURL:function(){return null;},parentAdded:function(parent){if(x3dom.isa(parent,x3dom.nodeTypes.X3DShapeNode)){if(parent._cleanupGLObjects){parent._cleanupGLObjects(true);}
parent.setAllDirty();parent.invalidateVolume();}},needLighting:function(){var hasTris=this._mesh._primType.indexOf("TRIANGLE")>=0;return(this._vf.lit&&hasTris);}}));x3dom.registerNodeType("Mesh","Rendering",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.Mesh.superClass.call(this,ctx);this.addField_SFString(ctx,'primType',"triangle");this.addField_MFInt32(ctx,'index',[]);this.addField_MFNode('vertexAttributes',x3dom.nodeTypes.X3DVertexAttributeNode);},{nodeChanged:function()
{var time0=new Date().getTime();var i,n=this._cf.vertexAttributes.nodes.length;for(i=0;i<n;i++)
{var name=this._cf.vertexAttributes.nodes[i]._vf.name;switch(name.toLowerCase())
{case"position":this._mesh._positions[0]=this._cf.vertexAttributes.nodes[i]._vf.value.toGL();break;case"normal":this._mesh._normals[0]=this._cf.vertexAttributes.nodes[i]._vf.value.toGL();break;case"texcoord":this._mesh._texCoords[0]=this._cf.vertexAttributes.nodes[i]._vf.value.toGL();break;case"color":this._mesh._colors[0]=this._cf.vertexAttributes.nodes[i]._vf.value.toGL();break;default:this._mesh._dynamicFields[name]={};this._mesh._dynamicFields[name].numComponents=this._cf.vertexAttributes.nodes[i]._vf.numComponents;this._mesh._dynamicFields[name].value=this._cf.vertexAttributes.nodes[i]._vf.value.toGL();break;}}
this._mesh._indices[0]=this._vf.index.toGL();this.invalidateVolume();this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;var time1=new Date().getTime()-time0;x3dom.debug.logWarning("Mesh load time: "+time1+" ms");}}));x3dom.registerNodeType("PointSet","Rendering",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.PointSet.superClass.call(this,ctx);this.addField_SFNode('coord',x3dom.nodeTypes.X3DCoordinateNode);this.addField_SFNode('color',x3dom.nodeTypes.X3DColorNode);this._mesh._primType='POINTS';},{nodeChanged:function()
{var time0=new Date().getTime();var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode,"PointSet without coord node!");var positions=coordNode.getPoints();var numColComponents=3;var colorNode=this._cf.color.node;var colors=new x3dom.fields.MFColor();if(colorNode){colors=colorNode._vf.color;x3dom.debug.assert(positions.length==colors.length,"Size of color and coord array differs!");if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
this._mesh._numColComponents=numColComponents;this._mesh._lit=false;this._mesh._indices[0]=[];this._mesh._positions[0]=positions.toGL();this._mesh._colors[0]=colors.toGL();this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this.invalidateVolume();this._mesh._numCoords=this._mesh._positions[0].length/3;var time1=new Date().getTime()-time0;},fieldChanged:function(fieldName)
{var pnts=null;if(fieldName=="coord")
{pnts=this._cf.coord.node.getPoints();this._mesh._positions[0]=pnts.toGL();this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;this._mesh._colors[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}}}));x3dom.registerNodeType("X3DComposedGeometryNode","Rendering",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.X3DComposedGeometryNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'colorPerVertex',true);this.addField_SFBool(ctx,'normalPerVertex',true);this.addField_SFString(ctx,'normalUpdateMode','fast');this.addField_MFNode('attrib',x3dom.nodeTypes.X3DVertexAttributeNode);this.addField_SFNode('coord',x3dom.nodeTypes.X3DCoordinateNode);this.addField_SFNode('normal',x3dom.nodeTypes.Normal);this.addField_SFNode('color',x3dom.nodeTypes.X3DColorNode);this.addField_SFNode('texCoord',x3dom.nodeTypes.X3DTextureCoordinateNode);},{handleAttribs:function()
{var i,n=this._cf.attrib.nodes.length;for(i=0;i<n;i++)
{var name=this._cf.attrib.nodes[i]._vf.name;switch(name.toLowerCase())
{case"position":this._mesh._positions[0]=this._cf.attrib.nodes[i]._vf.value.toGL();break;case"normal":this._mesh._normals[0]=this._cf.attrib.nodes[i]._vf.value.toGL();break;case"texcoord":this._mesh._texCoords[0]=this._cf.attrib.nodes[i]._vf.value.toGL();break;case"color":this._mesh._colors[0]=this._cf.attrib.nodes[i]._vf.value.toGL();break;default:this._mesh._dynamicFields[name]={};this._mesh._dynamicFields[name].numComponents=this._cf.attrib.nodes[i]._vf.numComponents;this._mesh._dynamicFields[name].value=this._cf.attrib.nodes[i]._vf.value.toGL();break;}}}}));x3dom.registerNodeType("LineSet","Rendering",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.LineSet.superClass.call(this,ctx);this.addField_MFInt32(ctx,'vertexCount',[]);this.addField_MFNode('attrib',x3dom.nodeTypes.X3DVertexAttributeNode);this.addField_SFNode('coord',x3dom.nodeTypes.X3DCoordinateNode);this.addField_SFNode('color',x3dom.nodeTypes.X3DColorNode);this._mesh._primType="LINES";x3dom.Utils.needLineWidth=true;},{nodeChanged:function(){var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);var positions=coordNode.getPoints();this._mesh._positions[0]=positions.toGL();var colorNode=this._cf.color.node;if(colorNode){var colors=colorNode._vf.color;this._mesh._colors[0]=colors.toGL();this._mesh._numColComponents=3;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){this._mesh._numColComponents=4;}}
var cnt=0;this._mesh._indices[0]=[];for(var i=0,n=this._vf.vertexCount.length;i<n;i++){var vc=this._vf.vertexCount[i];if(vc<2){x3dom.debug.logError("LineSet.vertexCount must not be smaller than 2!");break;}
for(var j=vc-2;j>=0;j--){this._mesh._indices[0].push(cnt++,cnt);if(j==0)cnt++;}}},fieldChanged:function(fieldName){if(fieldName=="coord"){var pnts=this._cf.coord.node.getPoints();this._mesh._positions[0]=pnts.toGL();this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="color"){var cols=this._cf.color.node._vf.color;this._mesh._colors[0]=cols.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}}}));x3dom.registerNodeType("IndexedLineSet","Rendering",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.IndexedLineSet.superClass.call(this,ctx);this.addField_SFBool(ctx,'colorPerVertex',true);this.addField_MFNode('attrib',x3dom.nodeTypes.X3DVertexAttributeNode);this.addField_SFNode('coord',x3dom.nodeTypes.X3DCoordinateNode);this.addField_SFNode('color',x3dom.nodeTypes.X3DColorNode);this.addField_MFInt32(ctx,'coordIndex',[]);this.addField_MFInt32(ctx,'colorIndex',[]);this._mesh._primType='LINES';x3dom.Utils.needLineWidth=true;},{nodeChanged:function()
{var time0=new Date().getTime();var indexes=this._vf.coordIndex;var colorInd=this._vf.colorIndex;var hasColor=false,hasColorInd=false;var colPerVert=this._vf.colorPerVertex;if(colorInd.length>0)
{hasColorInd=true;}
var positions,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode.getPoints();var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode)
{hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
this._mesh._indices[0]=[];this._mesh._positions[0]=[];this._mesh._colors[0]=[];var i,t,cnt,lineCnt;var p0,p1,c0,c1;if((hasColor&&hasColorInd)||positions.length>x3dom.Utils.maxIndexableCoords)
{t=0;cnt=0;lineCnt=0;for(i=0;i<indexes.length;++i)
{if(indexes[i]===-1){t=0;continue;}
if(hasColorInd){x3dom.debug.assert(colorInd[i]!=-1);}
switch(t)
{case 0:p0=+indexes[i];if(hasColorInd&&colPerVert){c0=+colorInd[i];}
else{c0=p0;}
t=1;break;case 1:p1=+indexes[i];if(hasColorInd&&colPerVert){c1=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c1=+colorInd[lineCnt];}
else{c1=p1;}
this._mesh._indices[0].push(cnt++,cnt++);this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);if(hasColor){if(!colPerVert){c0=c1;}
this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);}
t=2;lineCnt++;break;case 2:p0=p1;c0=c1;p1=+indexes[i];if(hasColorInd&&colPerVert){c1=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c1=+colorInd[lineCnt];}
else{c1=p1;}
this._mesh._indices[0].push(cnt++,cnt++);this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);if(hasColor){if(!colPerVert){c0=c1;}
this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);}
lineCnt++;break;default:}}
if(positions.length>x3dom.Utils.maxIndexableCoords)
this._mesh.splitMesh(2);}
else
{var n=indexes.length;t=0;for(i=0;i<n;++i)
{if(indexes[i]==-1){t=0;continue;}
switch(t){case 0:p0=+indexes[i];t=1;break;case 1:p1=+indexes[i];t=2;this._mesh._indices[0].push(p0,p1);break;case 2:p0=p1;p1=+indexes[i];this._mesh._indices[0].push(p0,p1);break;}}
this._mesh._positions[0]=positions.toGL();if(hasColor){this._mesh._colors[0]=colors.toGL();this._mesh._numColComponents=numColComponents;}}
this.invalidateVolume();this._mesh._numCoords=0;for(i=0;i<this._mesh._indices.length;i++){this._mesh._numCoords+=this._mesh._positions[i].length/3;}
var time1=new Date().getTime()-time0;},fieldChanged:function(fieldName)
{var pnts=null;if(fieldName=="coord")
{pnts=this._cf.coord.node._vf.point;this._mesh._positions[0]=pnts.toGL();this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;this._mesh._colors[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}
else if(fieldName=="coordIndex"){this._mesh._indices[0]=[];var indexes=this._vf.coordIndex;var p0,p1,t=0;for(var i=0,n=indexes.length;i<n;++i){if(indexes[i]==-1){t=0;}
else{switch(t){case 0:p0=+indexes[i];t=1;break;case 1:p1=+indexes[i];t=2;this._mesh._indices[0].push(p0,p1);break;case 2:p0=p1;p1=+indexes[i];this._mesh._indices[0].push(p0,p1);break;}}}
this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.indexes=true;node.invalidateVolume();});}}}));x3dom.registerNodeType("IndexedTriangleSet","Rendering",defineClass(x3dom.nodeTypes.X3DComposedGeometryNode,function(ctx){x3dom.nodeTypes.IndexedTriangleSet.superClass.call(this,ctx);this.addField_MFInt32(ctx,'index',[]);},{nodeChanged:function()
{var time0=new Date().getTime();this.handleAttribs();var colPerVert=this._vf.colorPerVertex;var normPerVert=this._vf.normalPerVertex;var indexes=this._vf.index;var hasNormal=false,hasTexCoord=false,hasColor=false;var positions,normals,texCoords,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode._vf.point;var normalNode=this._cf.normal.node;if(normalNode){hasNormal=true;normals=normalNode._vf.vector;}
else{hasNormal=false;}
var texMode="",numTexComponents=2;var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(texCoordNode){if(texCoordNode._vf.point){hasTexCoord=true;texCoords=texCoordNode._vf.point;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}}
else if(texCoordNode._vf.mode){texMode=texCoordNode._vf.mode;}}
else{hasTexCoord=false;}
var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode){hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
this._mesh._indices[0]=[];this._mesh._positions[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._colors[0]=[];var i,t,cnt,faceCnt,posMax;var p0,p1,p2,n0,n1,n2,t0,t1,t2,c0,c1,c2;while(positions.length%3>0){positions.push(positions.length-1);}
posMax=positions.length;if(!normPerVert||posMax>x3dom.Utils.maxIndexableCoords)
{t=0;cnt=0;faceCnt=0;this._mesh._multiIndIndices=[];this._mesh._posSize=positions.length;for(i=0;i<indexes.length;++i)
{if((i>0)&&(i%3===0)){t=0;faceCnt++;}
switch(t)
{case 0:p0=+indexes[i];if(normPerVert){n0=p0;}else if(!normPerVert){n0=faceCnt;}
t0=p0;if(colPerVert){c0=p0;}else if(!colPerVert){c0=faceCnt;}
t=1;break;case 1:p1=+indexes[i];if(normPerVert){n1=p1;}else if(!normPerVert){n1=faceCnt;}
t1=p1;if(colPerVert){c1=p1;}else if(!colPerVert){c1=faceCnt;}
t=2;break;case 2:p2=+indexes[i];if(normPerVert){n2=p2;}else if(!normPerVert){n2=faceCnt;}
t2=p2;if(colPerVert){c2=p2;}else if(!colPerVert){c2=faceCnt;}
t=3;this._mesh._indices[0].push(cnt++,cnt++,cnt++);this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);if(hasNormal){this._mesh._normals[0].push(normals[n0].x);this._mesh._normals[0].push(normals[n0].y);this._mesh._normals[0].push(normals[n0].z);this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);}
else{this._mesh._multiIndIndices.push(p0,p1,p2);}
if(hasColor){this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c0].a);}
this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t0].x);this._mesh._texCoords[0].push(texCoords[t0].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t0].z);}
this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}}
break;default:}}
if(!hasNormal){this._mesh.calcNormals(normPerVert?Math.PI:0);}
if(!hasTexCoord){this._mesh.calcTexCoords(texMode);}
this._mesh.splitMesh();}
else
{faceCnt=0;for(i=0;i<indexes.length;i++)
{if((i>0)&&(i%3===0)){faceCnt++;}
this._mesh._indices[0].push(indexes[i]);if(!normPerVert&&hasNormal){this._mesh._normals[0].push(normals[faceCnt].x);this._mesh._normals[0].push(normals[faceCnt].y);this._mesh._normals[0].push(normals[faceCnt].z);}
if(!colPerVert&&hasColor){this._mesh._colors[0].push(colors[faceCnt].r);this._mesh._colors[0].push(colors[faceCnt].g);this._mesh._colors[0].push(colors[faceCnt].b);if(numColComponents===4){this._mesh._colors[0].push(colors[faceCnt].a);}}}
this._mesh._positions[0]=positions.toGL();if(hasNormal){this._mesh._normals[0]=normals.toGL();}
else{this._mesh.calcNormals(normPerVert?Math.PI:0);}
if(hasTexCoord){this._mesh._texCoords[0]=texCoords.toGL();this._mesh._numTexComponents=numTexComponents;}
else{this._mesh.calcTexCoords(texMode);}
if(hasColor&&colPerVert){this._mesh._colors[0]=colors.toGL();this._mesh._numColComponents=numColComponents;}}
this.invalidateVolume();this._mesh._numFaces=0;this._mesh._numCoords=0;for(i=0;i<this._mesh._indices.length;i++){this._mesh._numFaces+=this._mesh._indices[i].length/3;this._mesh._numCoords+=this._mesh._positions[i].length/3;}
var time1=new Date().getTime()-time0;},fieldChanged:function(fieldName)
{var pnts=this._cf.coord.node._vf.point;if(pnts.length>x3dom.Utils.maxIndexableCoords)
{x3dom.debug.logWarning("IndexedTriangleSet: fieldChanged with "+"too many coordinates not yet implemented!");return;}
if(fieldName=="coord")
{this._mesh._positions[0]=pnts.toGL();this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;if(this._vf.colorPerVertex){this._mesh._colors[0]=pnts.toGL();}else if(!this._vf.colorPerVertex){var faceCnt=0;var numColComponents=3;if(x3dom.isa(this._cf.color.node,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}
this._mesh._colors[0]=[];var indexes=this._vf.index;for(var i=0;i<indexes.length;++i)
{if((i>0)&&(i%3===0)){faceCnt++;}
this._mesh._colors[0].push(pnts[faceCnt].r);this._mesh._colors[0].push(pnts[faceCnt].g);this._mesh._colors[0].push(pnts[faceCnt].b);if(numColComponents===4){this._mesh._colors[0].push(pnts[faceCnt].a);}}}
Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}
else if(fieldName=="normal")
{pnts=this._cf.normal.node._vf.vector;if(this._vf.normalPerVertex){this._mesh._normals[0]=pnts.toGL();}else if(!this._vf.normalPerVertex){var indexes=this._vf.index;this._mesh._normals[0]=[];var faceCnt=0;for(var i=0;i<indexes.length;++i)
{if((i>0)&&(i%3===0)){faceCnt++;}
this._mesh._normals[0].push(pnts[faceCnt].x);this._mesh._normals[0].push(pnts[faceCnt].y);this._mesh._normals[0].push(pnts[faceCnt].z);}}
Array.forEach(this._parentNodes,function(node){node._dirty.normals=true;});}
else if(fieldName=="texCoord")
{var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
pnts=texCoordNode._vf.point;this._mesh._texCoords[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.texcoords=true;});}}}));x3dom.registerNodeType("IndexedTriangleStripSet","Rendering",defineClass(x3dom.nodeTypes.X3DComposedGeometryNode,function(ctx){x3dom.nodeTypes.IndexedTriangleStripSet.superClass.call(this,ctx);this.addField_MFInt32(ctx,'index',[]);this._hasIndexOffset=false;this._indexOffset=null;},{hasIndexOffset:function(){return this._hasIndexOffset;},nodeChanged:function()
{this.handleAttribs();var hasNormal=false,hasTexCoord=false,hasColor=false;var colPerVert=this._vf.colorPerVertex;var normPerVert=this._vf.normalPerVertex;var indexes=this._vf.index;var positions,normals,texCoords,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode._vf.point;var normalNode=this._cf.normal.node;if(normalNode){hasNormal=true;normals=normalNode._vf.vector;}
else{hasNormal=false;}
var texMode="",numTexComponents=2;var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(texCoordNode){if(texCoordNode._vf.point){hasTexCoord=true;texCoords=texCoordNode._vf.point;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}}
else if(texCoordNode._vf.mode){texMode=texCoordNode._vf.mode;}}
else{hasTexCoord=false;}
this._mesh._numTexComponents=numTexComponents;var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode){hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
this._mesh._numColComponents=numColComponents;this._mesh._indices[0]=[];this._mesh._positions[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._colors[0]=[];this.invalidateVolume();this._mesh._numFaces=0;this._mesh._numCoords=0;var faceCnt=0,cnt=0;if(hasNormal&&positions.length<=x3dom.Utils.maxIndexableCoords)
{this._hasIndexOffset=true;this._indexOffset=[];this._mesh._primType='TRIANGLESTRIP';var indexOffset=[0];for(i=0;i<indexes.length;i++)
{if(indexes[i]==-1){faceCnt++;indexOffset.push(this._mesh._indices[0].length);}
else{this._mesh._indices[0].push(+indexes[i]);if(!normPerVert){this._mesh._normals[0].push(normals[faceCnt].x);this._mesh._normals[0].push(normals[faceCnt].y);this._mesh._normals[0].push(normals[faceCnt].z);}
if(!colPerVert){this._mesh._colors[0].push(colors[faceCnt].r);this._mesh._colors[0].push(colors[faceCnt].g);this._mesh._colors[0].push(colors[faceCnt].b);if(numColComponents===4){this._mesh._colors[0].push(colors[faceCnt].a);}}}}
this._mesh._positions[0]=positions.toGL();if(normPerVert){this._mesh._normals[0]=normals.toGL();}
if(hasTexCoord){this._mesh._texCoords[0]=texCoords.toGL();this._mesh._numTexComponents=numTexComponents;}
else{x3dom.debug.logWarning("IndexedTriangleStripSet: no texCoords given and won't calculate!");}
if(hasColor){if(colPerVert){this._mesh._colors[0]=colors.toGL();}
this._mesh._numColComponents=numColComponents;}
for(i=1;i<indexOffset.length;i++){var triCnt=indexOffset[i]-indexOffset[i-1];this._indexOffset.push({count:triCnt,offset:2*indexOffset[i-1]});this._mesh._numFaces+=(triCnt-2);}
this._mesh._numCoords=this._mesh._positions[0].length/3;}
else
{this._hasIndexOffset=false;var p1,p2,p3,n1,n2,n3,t1,t2,t3,c1,c2,c3;var swapOrder=false;for(var i=1;i<indexes.length-2;++i)
{if(indexes[i+1]==-1){i=i+2;faceCnt++;continue;}
if(swapOrder){p1=indexes[i];p2=indexes[i-1];p3=indexes[i+1];}
else{p1=indexes[i-1];p2=indexes[i];p3=indexes[i+1];}
swapOrder=!swapOrder;if(normPerVert){n1=p1;n2=p2;n3=p3;}else if(!normPerVert){n1=n2=n3=faceCnt;}
t1=p1;t2=p2;t3=p3;if(colPerVert){c1=p1;c2=p2;c3=p3;}else if(!colPerVert){c1=c2=c3=faceCnt;}
this._mesh._indices[0].push(cnt++,cnt++,cnt++);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);this._mesh._positions[0].push(positions[p3].x);this._mesh._positions[0].push(positions[p3].y);this._mesh._positions[0].push(positions[p3].z);if(hasNormal){this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);this._mesh._normals[0].push(normals[n3].x);this._mesh._normals[0].push(normals[n3].y);this._mesh._normals[0].push(normals[n3].z);}
if(hasColor){this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}
this._mesh._colors[0].push(colors[c3].r);this._mesh._colors[0].push(colors[c3].g);this._mesh._colors[0].push(colors[c3].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c3].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}
this._mesh._texCoords[0].push(texCoords[t3].x);this._mesh._texCoords[0].push(texCoords[t3].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t3].z);}}}
if(!hasNormal){this._mesh.calcNormals(Math.PI);}
if(!hasTexCoord){this._mesh.calcTexCoords(texMode);}
this._mesh.splitMesh();this.invalidateVolume();for(i=0;i<this._mesh._indices.length;i++){this._mesh._numFaces+=this._mesh._indices[i].length/3;this._mesh._numCoords+=this._mesh._positions[i].length/3;}}},fieldChanged:function(fieldName)
{if(fieldName!="coord"&&fieldName!="normal"&&fieldName!="texCoord"&&fieldName!="color")
{x3dom.debug.logWarning("IndexedTriangleStripSet: fieldChanged for "+
fieldName+" not yet implemented!");return;}
var pnts=this._cf.coord.node._vf.point;if((this._cf.normal.node===null)||(pnts.length>x3dom.Utils.maxIndexableCoords))
{if(fieldName=="coord"){this._mesh._positions[0]=[];this._mesh._indices[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];var hasNormal=false,hasTexCoord=false,hasColor=false;var colPerVert=this._vf.colorPerVertex;var normPerVert=this._vf.normalPerVertex;var indexes=this._vf.index;var positions,normals,texCoords,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode._vf.point;var normalNode=this._cf.normal.node;if(normalNode){hasNormal=true;normals=normalNode._vf.vector;}
else{hasNormal=false;}
var texMode="",numTexComponents=2;var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(texCoordNode){if(texCoordNode._vf.point){hasTexCoord=true;texCoords=texCoordNode._vf.point;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}}
else if(texCoordNode._vf.mode){texMode=texCoordNode._vf.mode;}}
else{hasTexCoord=false;}
this._mesh._numTexComponents=numTexComponents;var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode){hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
this._mesh._numColComponents=numColComponents;this._mesh._indices[0]=[];this._mesh._positions[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._colors[0]=[];var faceCnt=0,cnt=0;var p1,p2,p3,n1,n2,n3,t1,t2,t3,c1,c2,c3;var swapOrder=false;if(hasNormal||hasTexCoord||hasColor){for(var i=1;i<indexes.length-2;++i)
{if(indexes[i+1]==-1){i=i+2;faceCnt++;continue;}
if(swapOrder){p1=indexes[i];p2=indexes[i-1];p3=indexes[i+1];}
else{p1=indexes[i-1];p2=indexes[i];p3=indexes[i+1];}
swapOrder=!swapOrder;if(normPerVert){n1=p1;n2=p2;n3=p3;}else if(!normPerVert){n1=n2=n3=faceCnt;}
t1=p1;t2=p2;t3=p3;if(colPerVert){c1=p1;c2=p2;c3=p3;}else if(!colPerVert){c1=c2=c3=faceCnt;}
this._mesh._indices[0].push(cnt++,cnt++,cnt++);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);this._mesh._positions[0].push(positions[p3].x);this._mesh._positions[0].push(positions[p3].y);this._mesh._positions[0].push(positions[p3].z);if(hasNormal){this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);this._mesh._normals[0].push(normals[n3].x);this._mesh._normals[0].push(normals[n3].y);this._mesh._normals[0].push(normals[n3].z);}
if(hasColor){this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}
this._mesh._colors[0].push(colors[c3].r);this._mesh._colors[0].push(colors[c3].g);this._mesh._colors[0].push(colors[c3].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c3].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}
this._mesh._texCoords[0].push(texCoords[t3].x);this._mesh._texCoords[0].push(texCoords[t3].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t3].z);}}}
if(!hasNormal){this._mesh.calcNormals(Math.PI);}
if(!hasTexCoord){this._mesh.calcTexCoords(texMode);}
this._mesh.splitMesh();}else{var swapOrder=false;for(var i=1;i<indexes.length;++i)
{if(indexes[i+1]==-1){i=i+2;continue;}
if(swapOrder){this._mesh._indices[0].push(indexes[i]);this._mesh._indices[0].push(indexes[i-1]);this._mesh._indices[0].push(indexes[i+1]);}
else{this._mesh._indices[0].push(indexes[i-1]);this._mesh._indices[0].push(indexes[i]);this._mesh._indices[0].push(indexes[i+1]);}
swapOrder=!swapOrder;}
this._mesh._positions[0]=positions.toGL();if(hasNormal){this._mesh._normals[0]=normals.toGL();}
else{this._mesh.calcNormals(Math.PI);}
if(hasTexCoord){this._mesh._texCoords[0]=texCoords.toGL();this._mesh._numTexComponents=numTexComponents;}
else{this._mesh.calcTexCoords(texMode);}
if(hasColor){this._mesh._colors[0]=colors.toGL();this._mesh._numColComponents=numColComponents;}}
this.invalidateVolume();this._mesh._numFaces=0;this._mesh._numCoords=0;for(i=0;i<this._mesh._indices.length;i++){this._mesh._numFaces+=this._mesh._indices[i].length/3;this._mesh._numCoords+=this._mesh._positions[i].length/3;}
Array.forEach(this._parentNodes,function(node){node.setAllDirty();node.invalidateVolume();});}
else if(fieldName=="color"){var col=this._cf.color.node._vf.color;var faceCnt=0;var c1=c2=c3=0;var numColComponents=3;if(x3dom.isa(this._cf.color.node,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}
this._mesh._colors[0]=[];var indexes=this._vf.index;var swapOrder=false;for(i=1;i<indexes.length-2;++i)
{if(indexes[i+1]==-1){i=i+2;faceCnt++;continue;}
if(this._vf.colorPerVertex){if(swapOrder){c1=indexes[i];c2=indexes[i-1];c3=indexes[i+1];}
else{c1=indexes[i-1];c2=indexes[i];c3=indexes[i+1];}
swapOrder=!swapOrder;}else if(!this._vf.colorPerVertex){c1=c2=c3=faceCnt;}
this._mesh._colors[0].push(col[c1].r);this._mesh._colors[0].push(col[c1].g);this._mesh._colors[0].push(col[c1].b);if(numColComponents===4){this._mesh._colors[0].push(col[c1].a);}
this._mesh._colors[0].push(col[c2].r);this._mesh._colors[0].push(col[c2].g);this._mesh._colors[0].push(col[c2].b);if(numColComponents===4){this._mesh._colors[0].push(col[c2].a);}
this._mesh._colors[0].push(col[c3].r);this._mesh._colors[0].push(col[c3].g);this._mesh._colors[0].push(col[c3].b);if(numColComponents===4){this._mesh._colors[0].push(col[c3].a);}}
Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}
else if(fieldName=="normal"){var nor=this._cf.normal.node._vf.vector;var faceCnt=0;var n1=n2=n3=0;this._mesh._normals[0]=[];var indexes=this._vf.index;var swapOrder=false;for(i=1;i<indexes.length-2;++i)
{if(indexes[i+1]==-1){i=i+2;faceCnt++;continue;}
if(this._vf.normalPerVertex){if(swapOrder){n1=indexes[i];n2=indexes[i-1];n3=indexes[i+1];}
else{n1=indexes[i-1];n2=indexes[i];n3=indexes[i+1];}
swapOrder=!swapOrder;}else if(!this._vf.normalPerVertex){n1=n2=n3=faceCnt;}
this._mesh._normals[0].push(nor[n1].x);this._mesh._normals[0].push(nor[n1].y);this._mesh._normals[0].push(nor[n1].z);this._mesh._normals[0].push(nor[n2].x);this._mesh._normals[0].push(nor[n2].y);this._mesh._normals[0].push(nor[n2].z);this._mesh._normals[0].push(nor[n3].x);this._mesh._normals[0].push(nor[n3].y);this._mesh._normals[0].push(nor[n3].z);}
Array.forEach(this._parentNodes,function(node){node._dirty.normals=true;});}
else if(fieldName=="texCoord"){var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
var tex=texCoordNode._vf.point;var t1=t2=t3=0;var numTexComponents=2;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}
this._mesh._texCoords[0]=[];var indexes=this._vf.index;var swapOrder=false;for(i=1;i<indexes.length-2;++i)
{if(indexes[i+1]==-1){i=i+2;continue;}
if(swapOrder){t1=indexes[i];t2=indexes[i-1];t3=indexes[i+1];}
else{t1=indexes[i-1];t2=indexes[i];t3=indexes[i+1];}
swapOrder=!swapOrder;this._mesh._texCoords[0].push(tex[t1].x);this._mesh._texCoords[0].push(tex[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(tex[t1].z);}
this._mesh._texCoords[0].push(tex[t2].x);this._mesh._texCoords[0].push(tex[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].tex(col[t2].z);}
this._mesh._texCoords[0].push(tex[t3].x);this._mesh._texCoords[0].push(tex[t3].y);if(numTexComponents===3){this._mesh._texCoords[0].push(tex[t3].z);}}
Array.forEach(this._parentNodes,function(node){node._dirty.texcoords=true;});}}
else
{if(fieldName=="coord")
{this._mesh._positions[0]=pnts.toGL();this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;if(this._vf.colorPerVertex){this._mesh._colors[0]=pnts.toGL();}else if(!this._vf.colorPerVertex){var faceCnt=0;var numColComponents=3;if(x3dom.isa(this._cf.color.node,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}
this._mesh._colors[0]=[];var indexes=this._vf.index;for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){faceCnt++;continue;}
this._mesh._colors[0].push(pnts[faceCnt].r);this._mesh._colors[0].push(pnts[faceCnt].g);this._mesh._colors[0].push(pnts[faceCnt].b);if(numColComponents===4){this._mesh._colors[0].push(pnts[faceCnt].a);}}}
Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}
else if(fieldName=="normal")
{pnts=this._cf.normal.node._vf.vector;if(this._vf.normalPerVertex){this._mesh._normals[0]=pnts.toGL();}else if(!this._vf.normalPerVertex){var indexes=this._vf.index;this._mesh._normals[0]=[];var faceCnt=0;for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){faceCnt++;continue;}
this._mesh._normals[0].push(pnts[faceCnt].x);this._mesh._normals[0].push(pnts[faceCnt].y);this._mesh._normals[0].push(pnts[faceCnt].z);}}
Array.forEach(this._parentNodes,function(node){node._dirty.normals=true;});}
else if(fieldName=="texCoord")
{var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
pnts=texCoordNode._vf.point;this._mesh._texCoords[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.texcoords=true;});}}}}));x3dom.registerNodeType("TriangleSet","Rendering",defineClass(x3dom.nodeTypes.X3DComposedGeometryNode,function(ctx){x3dom.nodeTypes.TriangleSet.superClass.call(this,ctx);},{nodeChanged:function()
{var colPerVert=this._vf.colorPerVertex;var normPerVert=this._vf.normalPerVertex;var hasNormal=false,hasTexCoord=false,hasColor=false;var positions,normals,texCoords,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode._vf.point;var normalNode=this._cf.normal.node;if(normalNode){hasNormal=true;normals=normalNode._vf.vector;}
else{hasNormal=false;}
var texMode="",numTexComponents=2;var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(texCoordNode){if(texCoordNode._vf.point){hasTexCoord=true;texCoords=texCoordNode._vf.point;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}}
else if(texCoordNode._vf.mode){texMode=texCoordNode._vf.mode;}}
else{hasTexCoord=false;}
var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode){hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
while(positions.length%3>0){positions.pop();}
this._mesh._indices[0]=new Array(positions.length);this._mesh._positions[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._colors[0]=[];var posMax=positions.length/3;var faceCnt,i=0;for(faceCnt=0;faceCnt<posMax;faceCnt++)
{this._mesh._indices[0][i]=i++;this._mesh._indices[0][i]=i++;this._mesh._indices[0][i]=i++;if(!normPerVert&&hasNormal){this._mesh._normals[0].push(normals[faceCnt].x);this._mesh._normals[0].push(normals[faceCnt].y);this._mesh._normals[0].push(normals[faceCnt].z);}
if(!colPerVert&&hasColor){this._mesh._colors[0].push(colors[faceCnt].r);this._mesh._colors[0].push(colors[faceCnt].g);this._mesh._colors[0].push(colors[faceCnt].b);if(numColComponents===4){this._mesh._colors[0].push(colors[faceCnt].a);}}}
this._mesh._positions[0]=positions.toGL();if(hasNormal){this._mesh._normals[0]=normals.toGL();}
else{this._mesh.calcNormals(normPerVert?Math.PI:0);}
if(hasTexCoord){this._mesh._texCoords[0]=texCoords.toGL();this._mesh._numTexComponents=numTexComponents;}
else{this._mesh.calcTexCoords(texMode);}
if(hasColor&&colPerVert){this._mesh._colors[0]=colors.toGL();this._mesh._numColComponents=numColComponents;}
this._mesh._numFaces=posMax;this._mesh._numCoords=positions.length;this.invalidateVolume();},fieldChanged:function(fieldName)
{var pnts=this._cf.coord.node._vf.point;if(fieldName=="coord")
{this._mesh._positions[0]=pnts.toGL();this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;if(this._vf.colorPerVertex){this._mesh._colors[0]=pnts.toGL();}
Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}
else if(fieldName=="normal")
{pnts=this._cf.normal.node._vf.vector;if(this._vf.normalPerVertex){this._mesh._normals[0]=pnts.toGL();}
Array.forEach(this._parentNodes,function(node){node._dirty.normals=true;});}
else if(fieldName=="texCoord")
{var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
pnts=texCoordNode._vf.point;this._mesh._texCoords[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.texcoords=true;});}}}));x3dom.registerNodeType("X3DGeometricPropertyNode","Rendering",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DGeometricPropertyNode.superClass.call(this,ctx);}));x3dom.registerNodeType("X3DCoordinateNode","Rendering",defineClass(x3dom.nodeTypes.X3DGeometricPropertyNode,function(ctx){x3dom.nodeTypes.X3DCoordinateNode.superClass.call(this,ctx);},{fieldChanged:function(fieldName){if(fieldName==="coord"||fieldName==="point"){Array.forEach(this._parentNodes,function(node){node.fieldChanged("coord");});}},parentAdded:function(parent){if(parent._mesh&&parent._cf.coord.node!==this){parent.fieldChanged("coord");}}}));x3dom.registerNodeType("Coordinate","Rendering",defineClass(x3dom.nodeTypes.X3DCoordinateNode,function(ctx){x3dom.nodeTypes.Coordinate.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'point',[]);},{getPoints:function(){return this._vf.point;}}));x3dom.registerNodeType("Normal","Rendering",defineClass(x3dom.nodeTypes.X3DGeometricPropertyNode,function(ctx){x3dom.nodeTypes.Normal.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'vector',[]);},{fieldChanged:function(fieldName){if(fieldName==="normal"||fieldName==="vector"){Array.forEach(this._parentNodes,function(node){node.fieldChanged("normal");});}},parentAdded:function(parent){if(parent._mesh&&parent._cf.normal.node!==this){parent.fieldChanged("normal");}}}));x3dom.registerNodeType("X3DColorNode","Rendering",defineClass(x3dom.nodeTypes.X3DGeometricPropertyNode,function(ctx){x3dom.nodeTypes.X3DColorNode.superClass.call(this,ctx);},{fieldChanged:function(fieldName){if(fieldName==="color"){Array.forEach(this._parentNodes,function(node){node.fieldChanged("color");});}},parentAdded:function(parent){if(parent._mesh&&parent._cf.color.node!==this){parent.fieldChanged("color");}}}));x3dom.registerNodeType("Color","Rendering",defineClass(x3dom.nodeTypes.X3DColorNode,function(ctx){x3dom.nodeTypes.Color.superClass.call(this,ctx);this.addField_MFColor(ctx,'color',[]);}));x3dom.registerNodeType("ColorRGBA","Rendering",defineClass(x3dom.nodeTypes.X3DColorNode,function(ctx){x3dom.nodeTypes.ColorRGBA.superClass.call(this,ctx);this.addField_MFColorRGBA(ctx,'color',[]);}));x3dom.registerNodeType("ParticleSet","Rendering",defineClass(x3dom.nodeTypes.PointSet,function(ctx){x3dom.nodeTypes.ParticleSet.superClass.call(this,ctx);this.addField_SFString(ctx,'mode','ViewDirQuads');this.addField_SFString(ctx,'drawOrder','Any');this.addField_SFNode('normal',x3dom.nodeTypes.Normal);this.addField_MFVec3f(ctx,'size',[]);this.addField_MFInt32(ctx,'index',[]);this.addField_MFFloat(ctx,'textureZ',[]);this._mesh._primType='POINTS';},{drawOrder:function(){return this._vf.drawOrder.toLowerCase();},nodeChanged:function()
{var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode,"ParticleSet without coord node!");var positions=coordNode.getPoints();var numColComponents=3;var colorNode=this._cf.color.node;var colors=new x3dom.fields.MFColor();if(colorNode){colors=colorNode._vf.color;x3dom.debug.assert(positions.length==colors.length,"Size of color and coord array differs!");if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
var normalNode=this._cf.normal.node;var normals=new x3dom.fields.MFVec3f();if(normalNode){normals=normalNode._vf.vector;}
var indices=[];if(this.drawOrder()!="any"){indices=this._vf.index.toGL();if(indices.length==0){var i,n=positions.length;indices=new Array(n);for(i=0;i<n;i++){indices[i]=i;}}}
this._mesh._numColComponents=numColComponents;this._mesh._lit=false;this._mesh._indices[0]=indices;this._mesh._positions[0]=positions.toGL();this._mesh._colors[0]=colors.toGL();this._mesh._normals[0]=normals.toGL();this._mesh._texCoords[0]=[];this.invalidateVolume();this._mesh._numCoords=this._mesh._positions[0].length/3;},fieldChanged:function(fieldName)
{var pnts=null;if(fieldName=="index")
{this._mesh._indices[0]=this._vf.index.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.indexes=true;});}
else if(fieldName=="size")
{Array.forEach(this._parentNodes,function(node){node._dirty.specialAttribs=true;});}
else if(fieldName=="coord")
{pnts=this._cf.coord.node.getPoints();this._mesh._positions[0]=pnts.toGL();var indices=[];if(this.drawOrder()!="any"){indices=this._vf.index.toGL();if(indices.length==0){var i,n=pnts.length;indices=new Array(n);for(i=0;i<n;i++){indices[i]=i;}}}
this._mesh._indices[0]=indices;this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node._dirty.indexes=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;this._mesh._colors[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}}}));x3dom.registerNodeType("ClipPlane","Rendering",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.ClipPlane.superClass.call(this,ctx);this.addField_SFBool(ctx,'enabled',true);this.addField_SFVec4f(ctx,'plane',0,1,0,0);this.addField_SFFloat(ctx,'cappingStrength',0.0);this.addField_SFColor(ctx,'cappingColor',1.0,1.0,1.0);this.addField_SFBool(ctx,'on',true);},{fieldChanged:function(fieldName){if(fieldName=="enabled"||fieldName=="on"){}},nodeChanged:function(){x3dom.nodeTypes.ClipPlane.count++;},onRemove:function(){x3dom.nodeTypes.ClipPlane.count--;},parentAdded:function(parent){},parentRemoved:function(parent){}}));x3dom.nodeTypes.ClipPlane.count=0;x3dom.registerNodeType("X3DAppearanceNode","Shape",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DAppearanceNode.superClass.call(this,ctx);}));x3dom.registerNodeType("Appearance","Shape",defineClass(x3dom.nodeTypes.X3DAppearanceNode,function(ctx){x3dom.nodeTypes.Appearance.superClass.call(this,ctx);this.addField_SFNode('material',x3dom.nodeTypes.X3DMaterialNode);this.addField_SFNode('texture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('textureTransform',x3dom.nodeTypes.X3DTextureTransformNode);this.addField_SFNode('lineProperties',x3dom.nodeTypes.LineProperties);this.addField_SFNode('colorMaskMode',x3dom.nodeTypes.ColorMaskMode);this.addField_SFNode('blendMode',x3dom.nodeTypes.BlendMode);this.addField_SFNode('depthMode',x3dom.nodeTypes.DepthMode);this.addField_MFNode('shaders',x3dom.nodeTypes.X3DShaderNode);this.addField_SFString(ctx,'sortType','auto');this.addField_SFInt32(ctx,'sortKey',0);this.addField_SFFloat(ctx,'alphaClipThreshold',0.1);this._shader=null;},{fieldChanged:function(fieldName){if(fieldName=="alphaClipThreshold"){Array.forEach(this._parentNodes,function(shape){shape.setAppDirty();});}},nodeChanged:function(){if(!this._cf.material.node){}
if(this._cf.shaders.nodes.length){this._shader=this._cf.shaders.nodes[0];}
else if(this._shader)
this._shader=null;Array.forEach(this._parentNodes,function(shape){shape.setAppDirty();});this.checkSortType();},checkSortType:function(){if(this._vf.sortType=='auto'){if(this._cf.material.node&&(this._cf.material.node._vf.transparency>0||this._cf.material.node._vf.backTransparency&&this._cf.material.node._vf.backTransparency>0)){this._vf.sortType='transparent';}
else if(this._cf.texture.node&&this._cf.texture.node._vf.url.length){if(this._cf.texture.node._vf.url[0].toLowerCase().indexOf('.'+'png')>=0){this._vf.sortType='transparent';}
else{this._vf.sortType='opaque';}}
else{this._vf.sortType='opaque';}}},texTransformMatrix:function(){if(this._cf.textureTransform.node===null){return x3dom.fields.SFMatrix4f.identity();}
else{return this._cf.textureTransform.node.texTransformMatrix();}},parentAdded:function(parent){if(this!=x3dom.nodeTypes.Appearance._defaultNode){parent.setAppDirty();}}}));x3dom.nodeTypes.Appearance.defaultNode=function(){if(!x3dom.nodeTypes.Appearance._defaultNode){x3dom.nodeTypes.Appearance._defaultNode=new x3dom.nodeTypes.Appearance();x3dom.nodeTypes.Appearance._defaultNode.nodeChanged();}
return x3dom.nodeTypes.Appearance._defaultNode;};x3dom.registerNodeType("X3DAppearanceChildNode","Shape",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DAppearanceChildNode.superClass.call(this,ctx);}));x3dom.registerNodeType("BlendMode","Shape",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.BlendMode.superClass.call(this,ctx);this.addField_SFString(ctx,'srcFactor',"src_alpha");this.addField_SFString(ctx,'destFactor',"one_minus_src_alpha");this.addField_SFColor(ctx,'color',1,1,1);this.addField_SFFloat(ctx,'colorTransparency',0);this.addField_SFString(ctx,'alphaFunc',"none");this.addField_SFFloat(ctx,'alphaFuncValue',0);this.addField_SFString(ctx,'equation',"none");}));x3dom.registerNodeType("DepthMode","Shape",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.DepthMode.superClass.call(this,ctx);this.addField_SFBool(ctx,'enableDepthTest',true);this.addField_SFString(ctx,'depthFunc',"none");this.addField_SFBool(ctx,'readOnly',false);this.addField_SFFloat(ctx,'zNearRange',-1);this.addField_SFFloat(ctx,'zFarRange',-1);}));x3dom.registerNodeType("ColorMaskMode","Shape",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.ColorMaskMode.superClass.call(this,ctx);this.addField_SFBool(ctx,'maskR',true);this.addField_SFBool(ctx,'maskG',true);this.addField_SFBool(ctx,'maskB',true);this.addField_SFBool(ctx,'maskA',true);}));x3dom.registerNodeType("LineProperties","Shape",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.LineProperties.superClass.call(this,ctx);this.addField_SFBool(ctx,'applied',true);this.addField_SFInt32(ctx,'linetype',1);this.addField_SFFloat(ctx,'linewidthScaleFactor',0);}));x3dom.registerNodeType("X3DMaterialNode","Shape",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.X3DMaterialNode.superClass.call(this,ctx);}));x3dom.registerNodeType("Material","Shape",defineClass(x3dom.nodeTypes.X3DMaterialNode,function(ctx){x3dom.nodeTypes.Material.superClass.call(this,ctx);this.addField_SFFloat(ctx,'ambientIntensity',0.2);this.addField_SFColor(ctx,'diffuseColor',0.8,0.8,0.8);this.addField_SFColor(ctx,'emissiveColor',0,0,0);this.addField_SFFloat(ctx,'shininess',0.2);this.addField_SFColor(ctx,'specularColor',0,0,0);this.addField_SFFloat(ctx,'transparency',0);},{fieldChanged:function(fieldName){if(fieldName=="ambientIntensity"||fieldName=="diffuseColor"||fieldName=="emissiveColor"||fieldName=="shininess"||fieldName=="specularColor"||fieldName=="transparency")
{Array.forEach(this._parentNodes,function(app){Array.forEach(app._parentNodes,function(shape){shape._dirty.material=true;});app.checkSortType();});}}}));x3dom.nodeTypes.Material.defaultNode=function(){if(!x3dom.nodeTypes.Material._defaultNode){x3dom.nodeTypes.Material._defaultNode=new x3dom.nodeTypes.Material();x3dom.nodeTypes.Material._defaultNode.nodeChanged();}
return x3dom.nodeTypes.Material._defaultNode;};x3dom.registerNodeType("TwoSidedMaterial","Shape",defineClass(x3dom.nodeTypes.Material,function(ctx){x3dom.nodeTypes.TwoSidedMaterial.superClass.call(this,ctx);this.addField_SFFloat(ctx,'backAmbientIntensity',0.2);this.addField_SFColor(ctx,'backDiffuseColor',0.8,0.8,0.8);this.addField_SFColor(ctx,'backEmissiveColor',0,0,0);this.addField_SFFloat(ctx,'backShininess',0.2);this.addField_SFColor(ctx,'backSpecularColor',0,0,0);this.addField_SFFloat(ctx,'backTransparency',0);this.addField_SFBool(ctx,'separateBackColor',false);},{fieldChanged:function(fieldName){if(fieldName=="ambientIntensity"||fieldName=="diffuseColor"||fieldName=="emissiveColor"||fieldName=="shininess"||fieldName=="specularColor"||fieldName=="transparency"||fieldName=="backAmbientIntensity"||fieldName=="backDiffuseColor"||fieldName=="backEmissiveColor"||fieldName=="backShininess"||fieldName=="backSpecularColor"||fieldName=="backTransparency"||fieldName=="separateBackColor")
{Array.forEach(this._parentNodes,function(app){Array.forEach(app._parentNodes,function(shape){shape._dirty.material=true;});app.checkSortType();});}}}));x3dom.registerNodeType("X3DShapeNode","Shape",defineClass(x3dom.nodeTypes.X3DBoundedObject,function(ctx){x3dom.nodeTypes.X3DShapeNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'isPickable',true);this.addField_SFInt32(ctx,'idOffset',0);this.addField_SFNode('appearance',x3dom.nodeTypes.X3DAppearanceNode);this.addField_SFNode('geometry',x3dom.nodeTypes.X3DGeometryNode);this._objectID=0;this._shaderProperties=null;this._clipPlanes=[];this._cleanupGLObjects=null;this._dirty={positions:true,normals:true,texcoords:true,colors:true,specialAttribs:true,indexes:true,texture:true,material:true,text:true,shader:true};this._coordStrideOffset=[0,0];this._normalStrideOffset=[0,0];this._texCoordStrideOffset=[0,0];this._colorStrideOffset=[0,0];this._tessellationProperties=[];},{collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{var graphState=this.graphState();if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();if(!this._cf.geometry.node||drawableCollection.cull(transform,graphState,singlePath,planeMask)<=0){return false;}
if(singlePath&&!this._graph.globalMatrix)
this._graph.globalMatrix=transform;if(this._clipPlanes.length!=clipPlanes.length)
{this._dirty.shader=true;}
this._clipPlanes=clipPlanes;drawableCollection.addShape(this,transform,graphState);return true;},getVolume:function()
{var vol=this._graph.volume;if(!this.volumeValid()&&this._vf.render)
{var geo=this._cf.geometry.node;var childVol=geo?geo.getVolume():null;if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}
return vol;},getCenter:function(){var geo=this._cf.geometry.node;return(geo?geo.getCenter():new x3dom.fields.SFVec3f(0,0,0));},getDiameter:function(){var geo=this._cf.geometry.node;return(geo?geo.getDiameter():0);},doIntersect:function(line){return this._cf.geometry.node.doIntersect(line);},forceUpdateCoverage:function()
{var geo=this._cf.geometry.node;return(geo?geo.forceUpdateCoverage():false);},tessellationProperties:function()
{var geo=this._cf.geometry.node;if(geo&&geo._indexOffset)
return geo._indexOffset;else
return this._tessellationProperties;},isLit:function(){return this._cf.geometry.node._vf.lit;},isSolid:function(){var twoSidedMat=(this._cf.appearance.node&&this._cf.appearance.node._cf.material.node&&x3dom.isa(this._cf.appearance.node._cf.material.node,x3dom.nodeTypes.TwoSidedMaterial));return this._cf.geometry.node._vf.solid&&!twoSidedMat;},isCCW:function(){return this._cf.geometry.node._vf.ccw;},parentRemoved:function(parent){for(var i=0,n=this._childNodes.length;i<n;i++){var child=this._childNodes[i];if(child){child.parentRemoved(this);}}
if(parent)
parent.invalidateVolume();if(this._parentNodes.length>0)
this.invalidateVolume();if(this._cleanupGLObjects){this._cleanupGLObjects();}},unsetDirty:function(){this._dirty.positions=false;this._dirty.normals=false;this._dirty.texcoords=false;this._dirty.colors=false;this._dirty.specialAttribs=false;this._dirty.indexes=false;this._dirty.texture=false;this._dirty.material=false;this._dirty.text=false;this._dirty.shader=false;},unsetGeoDirty:function(){this._dirty.positions=false;this._dirty.normals=false;this._dirty.texcoords=false;this._dirty.colors=false;this._dirty.specialAttribs=false;this._dirty.indexes=false;},setAllDirty:function(){this._dirty.positions=true;this._dirty.normals=true;this._dirty.texcoords=true;this._dirty.colors=true;this._dirty.specialAttribs=true;this._dirty.indexes=true;this._dirty.texture=true;this._dirty.material=true;this._dirty.text=true;this._dirty.shader=true;this.invalidateVolume();},setAppDirty:function(){this._dirty.texture=true;this._dirty.material=true;this._dirty.shader=true;},setGeoDirty:function(){this._dirty.positions=true;this._dirty.normals=true;this._dirty.texcoords=true;this._dirty.colors=true;this._dirty.specialAttribs=true;this._dirty.indexes=true;this.invalidateVolume();},getShaderProperties:function(viewarea)
{if(this._shaderProperties==null||this._dirty.shader==true||(this._webgl!==undefined&&this._webgl.dirtyLighting!=x3dom.Utils.checkDirtyLighting(viewarea))||x3dom.Utils.checkDirtyEnvironment(viewarea,this._shaderProperties)==true)
{this._shaderProperties=x3dom.Utils.generateProperties(viewarea,this);this._dirty.shader=false;if(this._webgl!==undefined)
{this._webgl.dirtyLighting=x3dom.Utils.checkDirtyLighting(viewarea);}}
return this._shaderProperties;},getTextures:function(){var textures=[];var appearance=this._cf.appearance.node;if(appearance){var tex=appearance._cf.texture.node;if(tex){if(x3dom.isa(tex,x3dom.nodeTypes.MultiTexture)){textures=textures.concat(tex.getTextures());}
else{textures.push(tex);}}
var shader=appearance._cf.shaders.nodes[0];if(shader){if(x3dom.isa(shader,x3dom.nodeTypes.CommonSurfaceShader)){textures=textures.concat(shader.getTextures());}}}
var geometry=this._cf.geometry.node;if(geometry){if(x3dom.isa(geometry,x3dom.nodeTypes.ImageGeometry)){textures=textures.concat(geometry.getTextures());}
else if(x3dom.isa(geometry,x3dom.nodeTypes.Text)){textures=textures.concat(geometry);}}
return textures;}}));x3dom.registerNodeType("Shape","Shape",defineClass(x3dom.nodeTypes.X3DShapeNode,function(ctx){x3dom.nodeTypes.Shape.superClass.call(this,ctx);},{nodeChanged:function(){if(!this._cf.appearance.node){}
if(!this._cf.geometry.node){if(this._DEF)
x3dom.debug.logError("No geometry given in Shape/"+this._DEF);}
else if(!this._objectID){this._objectID=++x3dom.nodeTypes.Shape.objectID;x3dom.nodeTypes.Shape.idMap.nodeID[this._objectID]=this;}
this.invalidateVolume();}}));x3dom.nodeTypes.Shape.shaderPartID=0;x3dom.nodeTypes.Shape.objectID=0;x3dom.nodeTypes.Shape.idMap={nodeID:{},remove:function(obj){for(var prop in this.nodeID){if(this.nodeID.hasOwnProperty(prop)){var val=this.nodeID[prop];if(val._objectID&&obj._objectID&&val._objectID===obj._objectID)
{delete this.nodeID[prop];x3dom.debug.logInfo("Unreg "+val._objectID);}}}}};x3dom.registerNodeType("X3DLightNode","Lighting",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DLightNode.superClass.call(this,ctx);if(ctx)
ctx.doc._nodeBag.lights.push(this);else
x3dom.debug.logWarning("X3DLightNode: No runtime context found!");this._lightID=0;this._dirty=true;this.addField_SFFloat(ctx,'ambientIntensity',0);this.addField_SFColor(ctx,'color',1,1,1);this.addField_SFFloat(ctx,'intensity',1);this.addField_SFBool(ctx,'global',false);this.addField_SFBool(ctx,'on',true);this.addField_SFFloat(ctx,'shadowIntensity',0);this.addField_SFInt32(ctx,'shadowMapSize',1024);this.addField_SFInt32(ctx,'shadowFilterSize',0);this.addField_SFFloat(ctx,'shadowOffset',0);this.addField_SFFloat(ctx,'zNear',-1);this.addField_SFFloat(ctx,'zFar',-1);},{getViewMatrix:function(vec){return x3dom.fields.SFMatrix4f.identity;},nodeChanged:function(){if(!this._lightID){this._lightID=++x3dom.nodeTypes.X3DLightNode.lightID;}},fieldChanged:function(fieldName)
{if(this._vf.hasOwnProperty(fieldName)){this._dirty=true;}},parentRemoved:function(parent)
{if(this._parentNodes.length===1&&this._parentNodes[0]==parent){var doc=this.findX3DDoc();for(var i=0,n=doc._nodeBag.lights.length;i<n;i++){if(doc._nodeBag.lights[i]===this){doc._nodeBag.lights.splice(i,1);}}}},onRemove:function()
{console.log("remove");}}));x3dom.nodeTypes.X3DLightNode.lightID=0;x3dom.registerNodeType("DirectionalLight","Lighting",defineClass(x3dom.nodeTypes.X3DLightNode,function(ctx){x3dom.nodeTypes.DirectionalLight.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'direction',0,0,-1);this.addField_SFInt32(ctx,'shadowCascades',1);this.addField_SFFloat(ctx,'shadowSplitFactor',1);this.addField_SFFloat(ctx,'shadowSplitOffset',0.1);},{getViewMatrix:function(vec){var dir=this.getCurrentTransform().multMatrixVec(this._vf.direction).normalize();var orientation=x3dom.fields.Quaternion.rotateFromTo(new x3dom.fields.SFVec3f(0,0,-1),dir);return orientation.toMatrix().transpose().mult(x3dom.fields.SFMatrix4f.translation(vec.negate()));}}));x3dom.registerNodeType("PointLight","Lighting",defineClass(x3dom.nodeTypes.X3DLightNode,function(ctx){x3dom.nodeTypes.PointLight.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'attenuation',1,0,0);this.addField_SFVec3f(ctx,'location',0,0,0);this.addField_SFFloat(ctx,'radius',100);this._vf.global=true;},{getViewMatrix:function(vec){var pos=this.getCurrentTransform().multMatrixPnt(this._vf.location);var orientation=x3dom.fields.Quaternion.rotateFromTo(new x3dom.fields.SFVec3f(0,0,-1),vec);return orientation.toMatrix().transpose().mult(x3dom.fields.SFMatrix4f.translation(pos.negate()));}}));x3dom.registerNodeType("SpotLight","Lighting",defineClass(x3dom.nodeTypes.X3DLightNode,function(ctx){x3dom.nodeTypes.SpotLight.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'direction',0,0,-1);this.addField_SFVec3f(ctx,'attenuation',1,0,0);this.addField_SFVec3f(ctx,'location',0,0,0);this.addField_SFFloat(ctx,'radius',100);this.addField_SFFloat(ctx,'beamWidth',1.5707963);this.addField_SFFloat(ctx,'cutOffAngle',1.5707963);this.addField_SFInt32(ctx,'shadowCascades',1);this.addField_SFFloat(ctx,'shadowSplitFactor',1);this.addField_SFFloat(ctx,'shadowSplitOffset',0.1);this._vf.global=true;},{getViewMatrix:function(vec){var pos=this.getCurrentTransform().multMatrixPnt(this._vf.location);var dir=this.getCurrentTransform().multMatrixVec(this._vf.direction).normalize();var orientation=x3dom.fields.Quaternion.rotateFromTo(new x3dom.fields.SFVec3f(0,0,-1),dir);return orientation.toMatrix().transpose().mult(x3dom.fields.SFMatrix4f.translation(pos.negate()));}}));x3dom.registerNodeType("X3DFollowerNode","Followers",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DFollowerNode.superClass.call(this,ctx);if(ctx)
ctx.doc._nodeBag.followers.push(this);else
x3dom.debug.logWarning("X3DFollowerNode: No runtime context found!");this.addField_SFBool(ctx,'isActive',false);this._eps=x3dom.fields.Eps;},{parentRemoved:function(parent)
{if(this._parentNodes.length===0){var doc=this.findX3DDoc();for(var i=0,n=doc._nodeBag.followers.length;i<n;i++){if(doc._nodeBag.followers[i]===this){doc._nodeBag.followers.splice(i,1);}}}},tick:function(t){return false;},stepResponse:function(t)
{if(t<=0){return 0;}
if(t>=this._vf.duration){return 1;}
return this.stepResponseCore(t/this._vf.duration);},stepResponseCore:function(T)
{return 0.5-0.5*Math.cos(T*Math.PI);}}));x3dom.registerNodeType("X3DChaserNode","Followers",defineClass(x3dom.nodeTypes.X3DFollowerNode,function(ctx){x3dom.nodeTypes.X3DChaserNode.superClass.call(this,ctx);this.addField_SFTime(ctx,'duration',1);this._initDone=false;this._stepTime=0;this._currTime=0;this._bufferEndTime=0;this._numSupports=60;}));x3dom.registerNodeType("X3DDamperNode","Followers",defineClass(x3dom.nodeTypes.X3DFollowerNode,function(ctx){x3dom.nodeTypes.X3DDamperNode.superClass.call(this,ctx);this.addField_SFTime(ctx,'tau',0.3);this.addField_SFFloat(ctx,'tolerance',-1);this.addField_SFInt32(ctx,'order',3);this._eps=this._vf.tolerance<0?this._eps:this._vf.tolerance;this._lastTick=0;}));x3dom.registerNodeType("ColorChaser","Followers",defineClass(x3dom.nodeTypes.X3DChaserNode,function(ctx){x3dom.nodeTypes.ColorChaser.superClass.call(this,ctx);this.addField_SFColor(ctx,'initialDestination',0.8,0.8,0.8);this.addField_SFColor(ctx,'initialValue',0.8,0.8,0.8);this.addField_SFColor(ctx,'value',0,0,0);this.addField_SFColor(ctx,'destination',0,0,0);this._buffer=new x3dom.fields.MFColor();this._previousValue=new x3dom.fields.SFColor(0,0,0);this._value=new x3dom.fields.SFColor(0,0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName.indexOf("destination")>=0)
{this.initialize();this.updateBuffer(this._currTime);if(!this._vf.isActive){this.postMessage('isActive',true);}}
else if(fieldName.indexOf("value")>=0)
{this.initialize();this._previousValue.setValues(this._vf.value);for(var C=1;C<this._buffer.length;C++){this._buffer[C].setValues(this._vf.value);}
this.postMessage('value',this._vf.value);if(!this._vf.isActive){this.postMessage('isActive',true);}}},initialize:function()
{if(!this._initDone)
{this._initDone=true;this._vf.destination=this._vf.initialDestination;this._buffer.length=this._numSupports;this._buffer[0]=this._vf.initialDestination;for(var C=1;C<this._buffer.length;C++){this._buffer[C]=this._vf.initialValue;}
this._previousValue=this._vf.initialValue;this._stepTime=this._vf.duration/this._numSupports;var active=!this._buffer[0].equals(this._buffer[1],this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}}},tick:function(now)
{this.initialize();this._currTime=now;if(!this._bufferEndTime)
{this._bufferEndTime=now;this._value=this._vf.initialValue;this.postMessage('value',this._value);return true;}
var Frac=this.updateBuffer(now);var Output=this._previousValue;var DeltaIn=this._buffer[this._buffer.length-1].subtract(this._previousValue);var DeltaOut=DeltaIn.multiply(this.stepResponse((this._buffer.length-1+Frac)*this._stepTime));Output=Output.add(DeltaOut);for(var C=this._buffer.length-2;C>=0;C--)
{DeltaIn=this._buffer[C].subtract(this._buffer[C+1]);DeltaOut=DeltaIn.multiply(this.stepResponse((C+Frac)*this._stepTime));Output=Output.add(DeltaOut);}
if(!Output.equals(this._value,this._eps)){this._value.setValues(Output);this.postMessage('value',this._value);}
else{this.postMessage('isActive',false);}
return this._vf.isActive;},updateBuffer:function(now)
{var Frac=(now-this._bufferEndTime)/this._stepTime;var C;var NumToShift;var Alpha;if(Frac>=1)
{NumToShift=Math.floor(Frac);Frac-=NumToShift;if(NumToShift<this._buffer.length)
{this._previousValue=this._buffer[this._buffer.length-NumToShift];for(C=this._buffer.length-1;C>=NumToShift;C--){this._buffer[C]=this._buffer[C-NumToShift];}
for(C=0;C<NumToShift;C++)
{Alpha=C/NumToShift;this._buffer[C]=this._buffer[NumToShift].multiply(Alpha).add(this._vf.destination.multiply((1-Alpha)));}}
else
{this._previousValue=(NumToShift==this._buffer.length)?this._buffer[0]:this._vf.destination;for(C=0;C<this._buffer.length;C++){this._buffer[C]=this._vf.destination;}}
this._bufferEndTime+=NumToShift*this._stepTime;}
return Frac;}}));x3dom.registerNodeType("ColorDamper","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.ColorDamper.superClass.call(this,ctx);this.addField_SFColor(ctx,'initialDestination',0.8,0.8,0.8);this.addField_SFColor(ctx,'initialValue',0.8,0.8,0.8);this.addField_SFColor(ctx,'value',0,0,0);this.addField_SFColor(ctx,'destination',0,0,0);this._value0=new x3dom.fields.SFColor(0,0,0);this._value1=new x3dom.fields.SFColor(0,0,0);this._value2=new x3dom.fields.SFColor(0,0,0);this._value3=new x3dom.fields.SFColor(0,0,0);this._value4=new x3dom.fields.SFColor(0,0,0);this._value5=new x3dom.fields.SFColor(0,0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName==="tolerance")
{this._eps=this._vf.tolerance<0?0.001:this._vf.tolerance;}
else if(fieldName.indexOf("destination")>=0)
{if(!this._value0.equals(this._vf.destination,this._eps)){this._value0=this._vf.destination;if(!this._vf.isActive){this.postMessage('isActive',true);}}}
else if(fieldName.indexOf("value")>=0)
{this._value1.setValues(this._vf.value);this._value2.setValues(this._vf.value);this._value3.setValues(this._vf.value);this._value4.setValues(this._vf.value);this._value5.setValues(this._vf.value);this._lastTick=0;this.postMessage('value',this._value5);if(!this._vf.isActive){this._lastTick=0;this.postMessage('isActive',true);}}},initialize:function()
{this._value0.setValues(this._vf.initialDestination);this._value1.setValues(this._vf.initialValue);this._value2.setValues(this._vf.initialValue);this._value3.setValues(this._vf.initialValue);this._value4.setValues(this._vf.initialValue);this._value5.setValues(this._vf.initialValue);this._lastTick=0;var active=!this._value0.equals(this._value1,this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}},distance:function(a,b)
{var diff=a.subtract(b);return Math.sqrt(diff.r*diff.r+diff.g*diff.g+diff.b*diff.b);},tick:function(now)
{if(!this._lastTick)
{this._lastTick=now;return false;}
var delta=now-this._lastTick;var alpha=Math.exp(-delta/this._vf.tau);this._value1=this._vf.order>0&&this._vf.tau?this._value0.add(this._value1.subtract(this._value0).multiply(alpha)):new x3dom.fields.SFColor(this._value0.r,this._value0.g,this._value0.b);this._value2=this._vf.order>1&&this._vf.tau?this._value1.add(this._value2.subtract(this._value1).multiply(alpha)):new x3dom.fields.SFColor(this._value1.r,this._value1.g,this._value1.b);this._value3=this._vf.order>2&&this._vf.tau?this._value2.add(this._value3.subtract(this._value2).multiply(alpha)):new x3dom.fields.SFColor(this._value2.r,this._value2.g,this._value2.b);this._value4=this._vf.order>3&&this._vf.tau?this._value3.add(this._value4.subtract(this._value3).multiply(alpha)):new x3dom.fields.SFColor(this._value3.r,this._value3.g,this._value3.b);this._value5=this._vf.order>4&&this._vf.tau?this._value4.add(this._value5.subtract(this._value4).multiply(alpha)):new x3dom.fields.SFColor(this._value4.r,this._value4.g,this._value4.b);var dist=this.distance(this._value1,this._value0);if(this._vf.order>1)
{var dist2=this.distance(this._value2,this._value1);if(dist2>dist){dist=dist2;}}
if(this._vf.order>2)
{var dist3=this.distance(this._value3,this._value2);if(dist3>dist){dist=dist3;}}
if(this._vf.order>3)
{var dist4=this.distance(this._value4,this._value3);if(dist4>dist){dist=dist4;}}
if(this._vf.order>4)
{var dist5=this.distance(this._value5,this._value4);if(dist5>dist){dist=dist5;}}
if(dist<=this._eps)
{this._value1.setValues(this._value0);this._value2.setValues(this._value0);this._value3.setValues(this._value0);this._value4.setValues(this._value0);this._value5.setValues(this._value0);this.postMessage('value',this._value0);this.postMessage('isActive',false);this._lastTick=0;return false;}
this.postMessage('value',this._value5);this._lastTick=now;return true;}}));x3dom.registerNodeType("OrientationChaser","Followers",defineClass(x3dom.nodeTypes.X3DChaserNode,function(ctx){x3dom.nodeTypes.OrientationChaser.superClass.call(this,ctx);this.addField_SFRotation(ctx,'initialDestination',0,1,0,0);this.addField_SFRotation(ctx,'initialValue',0,1,0,0);this.addField_SFRotation(ctx,'value',0,1,0,0);this.addField_SFRotation(ctx,'destination',0,1,0,0);this._numSupports=30;this._buffer=new x3dom.fields.MFRotation();this._previousValue=new x3dom.fields.Quaternion(0,1,0,0);this._value=new x3dom.fields.Quaternion(0,1,0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName.indexOf("destination")>=0)
{this.initialize();this.updateBuffer(this._currTime);if(!this._vf.isActive){this.postMessage('isActive',true);}}
else if(fieldName.indexOf("value")>=0)
{this.initialize();this._previousValue.setValues(this._vf.value);for(var C=1;C<this._buffer.length;C++){this._buffer[C].setValues(this._vf.value);}
this.postMessage('value',this._vf.value);if(!this._vf.isActive){this.postMessage('isActive',true);}}},initialize:function()
{if(!this._initDone)
{this._initDone=true;this._vf.destination=x3dom.fields.Quaternion.copy(this._vf.initialDestination);this._buffer.length=this._numSupports;this._buffer[0]=x3dom.fields.Quaternion.copy(this._vf.initialDestination);for(var C=1;C<this._buffer.length;C++){this._buffer[C]=x3dom.fields.Quaternion.copy(this._vf.initialValue);}
this._previousValue=x3dom.fields.Quaternion.copy(this._vf.initialValue);this._stepTime=this._vf.duration/this._numSupports;var active=!this._buffer[0].equals(this._buffer[1],this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}}},tick:function(now)
{this.initialize();this._currTime=now;if(!this._bufferEndTime)
{this._bufferEndTime=now;this._value=x3dom.fields.Quaternion.copy(this._vf.initialValue);this.postMessage('value',this._value);return true;}
var Frac=this.updateBuffer(now);var Output=x3dom.fields.Quaternion.copy(this._previousValue);var DeltaIn=this._previousValue.inverse().multiply(this._buffer[this._buffer.length-1]);Output=Output.slerp(Output.multiply(DeltaIn),this.stepResponse((this._buffer.length-1+Frac)*this._stepTime));for(var C=this._buffer.length-2;C>=0;C--)
{DeltaIn=this._buffer[C+1].inverse().multiply(this._buffer[C]);Output=Output.slerp(Output.multiply(DeltaIn),this.stepResponse((C+Frac)*this._stepTime));}
if(!Output.equals(this._value,this._eps)){Output=Output.normalize(Output);this._value.setValues(Output);this.postMessage('value',this._value);}
else{this.postMessage('isActive',false);}
return this._vf.isActive;},updateBuffer:function(now)
{var Frac=(now-this._bufferEndTime)/this._stepTime;var C;var NumToShift;var Alpha;if(Frac>=1)
{NumToShift=Math.floor(Frac);Frac-=NumToShift;if(NumToShift<this._buffer.length)
{this._previousValue=x3dom.fields.Quaternion.copy(this._buffer[this._buffer.length-NumToShift]);for(C=this._buffer.length-1;C>=NumToShift;C--){this._buffer[C]=x3dom.fields.Quaternion.copy(this._buffer[C-NumToShift]);}
for(C=0;C<NumToShift;C++)
{Alpha=C/NumToShift;this._buffer[C]=this._vf.destination.slerp(this._buffer[NumToShift],Alpha);}}
else
{this._previousValue=x3dom.fields.Quaternion.copy((NumToShift==this._buffer.length)?this._buffer[0]:this._vf.destination);for(C=0;C<this._buffer.length;C++){this._buffer[C]=x3dom.fields.Quaternion.copy(this._vf.destination);}}
this._bufferEndTime+=NumToShift*this._stepTime;}
return Frac;}}));x3dom.registerNodeType("OrientationDamper","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.OrientationDamper.superClass.call(this,ctx);this.addField_SFRotation(ctx,'initialDestination',0,1,0,0);this.addField_SFRotation(ctx,'initialValue',0,1,0,0);this.addField_SFRotation(ctx,'value',0,1,0,0);this.addField_SFRotation(ctx,'destination',0,1,0,0);this._value0=new x3dom.fields.Quaternion(0,1,0,0);this._value1=new x3dom.fields.Quaternion(0,1,0,0);this._value2=new x3dom.fields.Quaternion(0,1,0,0);this._value3=new x3dom.fields.Quaternion(0,1,0,0);this._value4=new x3dom.fields.Quaternion(0,1,0,0);this._value5=new x3dom.fields.Quaternion(0,1,0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName==="tolerance")
{this._eps=this._vf.tolerance<0?0.001:this._vf.tolerance;}
else if(fieldName.indexOf("destination")>=0)
{if(!this._value0.equals(this._vf.destination,this._eps)){this._value0=this._vf.destination;if(!this._vf.isActive){this.postMessage('isActive',true);}}}
else if(fieldName.indexOf("value")>=0)
{this._value1.setValues(this._vf.value);this._value2.setValues(this._vf.value);this._value3.setValues(this._vf.value);this._value4.setValues(this._vf.value);this._value5.setValues(this._vf.value);this._lastTick=0;this.postMessage('value',this._value5);if(!this._vf.isActive){this._lastTick=0;this.postMessage('isActive',true);}}},initialize:function()
{this._value0.setValues(this._vf.initialDestination);this._value1.setValues(this._vf.initialValue);this._value2.setValues(this._vf.initialValue);this._value3.setValues(this._vf.initialValue);this._value4.setValues(this._vf.initialValue);this._value5.setValues(this._vf.initialValue);this._lastTick=0;var active=!this._value0.equals(this._value1,this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}},tick:function(now)
{if(!this._lastTick)
{this._lastTick=now;return false;}
var delta=now-this._lastTick;var alpha=Math.exp(-delta/this._vf.tau);this._value1=this._vf.order>0&&this._vf.tau?this._value0.slerp(this._value1,alpha):new x3dom.fields.Quaternion(this._value0.x,this._value0.y,this._value0.z,this._value0.w);this._value2=this._vf.order>1&&this._vf.tau?this._value1.slerp(this._value2,alpha):new x3dom.fields.Quaternion(this._value1.x,this._value1.y,this._value1.z,this._value1.w);this._value3=this._vf.order>2&&this._vf.tau?this._value2.slerp(this._value3,alpha):new x3dom.fields.Quaternion(this._value2.x,this._value2.y,this._value2.z,this._value2.w);this._value4=this._vf.order>3&&this._vf.tau?this._value3.slerp(this._value4,alpha):new x3dom.fields.Quaternion(this._value3.x,this._value3.y,this._value3.z,this._value3.w);this._value5=this._vf.order>4&&this._vf.tau?this._value4.slerp(this._value5,alpha):new x3dom.fields.Quaternion(this._value4.x,this._value4.y,this._value4.z,this._value4.w);var dist=Math.abs(this._value1.inverse().multiply(this._value0).angle());if(this._vf.order>1)
{var dist2=Math.abs(this._value2.inverse().multiply(this._value1).angle());if(dist2>dist){dist=dist2;}}
if(this._vf.order>2)
{var dist3=Math.abs(this._value3.inverse().multiply(this._value2).angle());if(dist3>dist){dist=dist3;}}
if(this._vf.order>3)
{var dist4=Math.abs(this._value4.inverse().multiply(this._value3).angle());if(dist4>dist){dist=dist4;}}
if(this._vf.order>4)
{var dist5=Math.abs(this._value5.inverse().multiply(this._value4).angle());if(dist5>dist){dist=dist5;}}
if(dist<=this._eps)
{this._value1.setValues(this._value0);this._value2.setValues(this._value0);this._value3.setValues(this._value0);this._value4.setValues(this._value0);this._value5.setValues(this._value0);this.postMessage('value',this._value0);this.postMessage('isActive',false);this._lastTick=0;return false;}
this.postMessage('value',this._value5);this._lastTick=now;return true;}}));x3dom.registerNodeType("PositionChaser","Followers",defineClass(x3dom.nodeTypes.X3DChaserNode,function(ctx){x3dom.nodeTypes.PositionChaser.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'initialDestination',0,0,0);this.addField_SFVec3f(ctx,'initialValue',0,0,0);this.addField_SFVec3f(ctx,'value',0,0,0);this.addField_SFVec3f(ctx,'destination',0,0,0);this._buffer=new x3dom.fields.MFVec3f();this._previousValue=new x3dom.fields.SFVec3f(0,0,0);this._value=new x3dom.fields.SFVec3f(0,0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName.indexOf("destination")>=0)
{this.initialize();this.updateBuffer(this._currTime);if(!this._vf.isActive){this.postMessage('isActive',true);}}
else if(fieldName.indexOf("value")>=0)
{this.initialize();this._previousValue.setValues(this._vf.value);for(var C=1;C<this._buffer.length;C++){this._buffer[C].setValues(this._vf.value);}
this.postMessage('value',this._vf.value);if(!this._vf.isActive){this.postMessage('isActive',true);}}},initialize:function()
{if(!this._initDone)
{this._initDone=true;this._vf.destination=x3dom.fields.SFVec3f.copy(this._vf.initialDestination);this._buffer.length=this._numSupports;this._buffer[0]=x3dom.fields.SFVec3f.copy(this._vf.initialDestination);for(var C=1;C<this._buffer.length;C++){this._buffer[C]=x3dom.fields.SFVec3f.copy(this._vf.initialValue);}
this._previousValue=x3dom.fields.SFVec3f.copy(this._vf.initialValue);this._stepTime=this._vf.duration/this._numSupports;var active=!this._buffer[0].equals(this._buffer[1],this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}}},tick:function(now)
{this.initialize();this._currTime=now;if(!this._bufferEndTime)
{this._bufferEndTime=now;this._value=x3dom.fields.SFVec3f.copy(this._vf.initialValue);this.postMessage('value',this._value);return true;}
var Frac=this.updateBuffer(now);var Output=x3dom.fields.SFVec3f.copy(this._previousValue);var DeltaIn=this._buffer[this._buffer.length-1].subtract(this._previousValue);var DeltaOut=DeltaIn.multiply(this.stepResponse((this._buffer.length-1+Frac)*this._stepTime));Output=Output.add(DeltaOut);for(var C=this._buffer.length-2;C>=0;C--)
{DeltaIn=this._buffer[C].subtract(this._buffer[C+1]);DeltaOut=DeltaIn.multiply(this.stepResponse((C+Frac)*this._stepTime));Output=Output.add(DeltaOut);}
if(!Output.equals(this._value,this._eps)){this._value.setValues(Output);this.postMessage('value',this._value);}
else{this.postMessage('isActive',false);}
return this._vf.isActive;},updateBuffer:function(now)
{var Frac=(now-this._bufferEndTime)/this._stepTime;var C;var NumToShift;var Alpha;if(Frac>=1)
{NumToShift=Math.floor(Frac);Frac-=NumToShift;if(NumToShift<this._buffer.length)
{this._previousValue=x3dom.fields.SFVec3f.copy(this._buffer[this._buffer.length-NumToShift]);for(C=this._buffer.length-1;C>=NumToShift;C--){this._buffer[C]=x3dom.fields.SFVec3f.copy(this._buffer[C-NumToShift]);}
for(C=0;C<NumToShift;C++)
{Alpha=C/NumToShift;this._buffer[C]=this._buffer[NumToShift].multiply(Alpha).add(this._vf.destination.multiply((1-Alpha)));}}
else
{this._previousValue=x3dom.fields.SFVec3f.copy((NumToShift==this._buffer.length)?this._buffer[0]:this._vf.destination);for(C=0;C<this._buffer.length;C++){this._buffer[C]=x3dom.fields.SFVec3f.copy(this._vf.destination);}}
this._bufferEndTime+=NumToShift*this._stepTime;}
return Frac;}}));x3dom.registerNodeType("PositionChaser2D","Followers",defineClass(x3dom.nodeTypes.X3DChaserNode,function(ctx){x3dom.nodeTypes.PositionChaser2D.superClass.call(this,ctx);this.addField_SFVec2f(ctx,'initialDestination',0,0);this.addField_SFVec2f(ctx,'initialValue',0,0);this.addField_SFVec2f(ctx,'value',0,0);this.addField_SFVec2f(ctx,'destination',0,0);this._buffer=new x3dom.fields.MFVec2f();this._previousValue=new x3dom.fields.SFVec2f(0,0);this._value=new x3dom.fields.SFVec2f(0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName.indexOf("destination")>=0)
{this.initialize();this.updateBuffer(this._currTime);if(!this._vf.isActive){this.postMessage('isActive',true);}}
else if(fieldName.indexOf("value")>=0)
{this.initialize();this._previousValue.setValues(this._vf.value);for(var C=1;C<this._buffer.length;C++){this._buffer[C].setValues(this._vf.value);}
this.postMessage('value',this._vf.value);if(!this._vf.isActive){this.postMessage('isActive',true);}}},initialize:function()
{if(!this._initDone)
{this._initDone=true;this._vf.destination=x3dom.fields.SFVec2f.copy(this._vf.initialDestination);this._buffer.length=this._numSupports;this._buffer[0]=x3dom.fields.SFVec2f.copy(this._vf.initialDestination);for(var C=1;C<this._buffer.length;C++){this._buffer[C]=x3dom.fields.SFVec2f.copy(this._vf.initialValue);}
this._previousValue=x3dom.fields.SFVec2f.copy(this._vf.initialValue);this._stepTime=this._vf.duration/this._numSupports;var active=!this._buffer[0].equals(this._buffer[1],this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}}},tick:function(now)
{this.initialize();this._currTime=now;if(!this._bufferEndTime)
{this._bufferEndTime=now;this._value=x3dom.fields.SFVec2f.copy(this._vf.initialValue);this.postMessage('value',this._value);return true;}
var Frac=this.updateBuffer(now);var Output=x3dom.fields.SFVec2f.copy(this._previousValue);var DeltaIn=this._buffer[this._buffer.length-1].subtract(this._previousValue);var DeltaOut=DeltaIn.multiply(this.stepResponse((this._buffer.length-1+Frac)*this._stepTime));Output=Output.add(DeltaOut);for(var C=this._buffer.length-2;C>=0;C--)
{DeltaIn=this._buffer[C].subtract(this._buffer[C+1]);DeltaOut=DeltaIn.multiply(this.stepResponse((C+Frac)*this._stepTime));Output=Output.add(DeltaOut);}
if(!Output.equals(this._value,this._eps)){this._value.setValues(Output);this.postMessage('value',this._value);}
else{this.postMessage('isActive',false);}
return this._vf.isActive;},updateBuffer:function(now)
{var Frac=(now-this._bufferEndTime)/this._stepTime;var C;var NumToShift;var Alpha;if(Frac>=1)
{NumToShift=Math.floor(Frac);Frac-=NumToShift;if(NumToShift<this._buffer.length)
{this._previousValue=x3dom.fields.SFVec2f.copy(this._buffer[this._buffer.length-NumToShift]);for(C=this._buffer.length-1;C>=NumToShift;C--){this._buffer[C]=x3dom.fields.SFVec2f.copy(this._buffer[C-NumToShift]);}
for(C=0;C<NumToShift;C++)
{Alpha=C/NumToShift;this._buffer[C]=this._buffer[NumToShift].multiply(Alpha).add(this._vf.destination.multiply((1-Alpha)));}}
else
{this._previousValue=x3dom.fields.SFVec2f.copy((NumToShift==this._buffer.length)?this._buffer[0]:this._vf.destination);for(C=0;C<this._buffer.length;C++){this._buffer[C]=x3dom.fields.SFVec2f.copy(this._vf.destination);}}
this._bufferEndTime+=NumToShift*this._stepTime;}
return Frac;}}));x3dom.registerNodeType("PositionDamper","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.PositionDamper.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'initialDestination',0,0,0);this.addField_SFVec3f(ctx,'initialValue',0,0,0);this.addField_SFVec3f(ctx,'value',0,0,0);this.addField_SFVec3f(ctx,'destination',0,0,0);this._value0=new x3dom.fields.SFVec3f(0,0,0);this._value1=new x3dom.fields.SFVec3f(0,0,0);this._value2=new x3dom.fields.SFVec3f(0,0,0);this._value3=new x3dom.fields.SFVec3f(0,0,0);this._value4=new x3dom.fields.SFVec3f(0,0,0);this._value5=new x3dom.fields.SFVec3f(0,0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName==="tolerance")
{this._eps=this._vf.tolerance<0?0.001:this._vf.tolerance;}
else if(fieldName.indexOf("destination")>=0)
{if(!this._value0.equals(this._vf.destination,this._eps)){this._value0=this._vf.destination;if(!this._vf.isActive){this.postMessage('isActive',true);}}}
else if(fieldName.indexOf("value")>=0)
{this._value1.setValues(this._vf.value);this._value2.setValues(this._vf.value);this._value3.setValues(this._vf.value);this._value4.setValues(this._vf.value);this._value5.setValues(this._vf.value);this._lastTick=0;this.postMessage('value',this._value5);if(!this._vf.isActive){this._lastTick=0;this.postMessage('isActive',true);}}},initialize:function()
{this._value0.setValues(this._vf.initialDestination);this._value1.setValues(this._vf.initialValue);this._value2.setValues(this._vf.initialValue);this._value3.setValues(this._vf.initialValue);this._value4.setValues(this._vf.initialValue);this._value5.setValues(this._vf.initialValue);this._lastTick=0;var active=!this._value0.equals(this._value1,this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}},tick:function(now)
{if(!this._lastTick)
{this._lastTick=now;return false;}
var delta=now-this._lastTick;var alpha=Math.exp(-delta/this._vf.tau);this._value1=this._vf.order>0&&this._vf.tau?this._value0.add(this._value1.subtract(this._value0).multiply(alpha)):new x3dom.fields.SFVec3f(this._value0.x,this._value0.y,this._value0.z);this._value2=this._vf.order>1&&this._vf.tau?this._value1.add(this._value2.subtract(this._value1).multiply(alpha)):new x3dom.fields.SFVec3f(this._value1.x,this._value1.y,this._value1.z);this._value3=this._vf.order>2&&this._vf.tau?this._value2.add(this._value3.subtract(this._value2).multiply(alpha)):new x3dom.fields.SFVec3f(this._value2.x,this._value2.y,this._value2.z);this._value4=this._vf.order>3&&this._vf.tau?this._value3.add(this._value4.subtract(this._value3).multiply(alpha)):new x3dom.fields.SFVec3f(this._value3.x,this._value3.y,this._value3.z);this._value5=this._vf.order>4&&this._vf.tau?this._value4.add(this._value5.subtract(this._value4).multiply(alpha)):new x3dom.fields.SFVec3f(this._value4.x,this._value4.y,this._value4.z);var dist=this._value1.subtract(this._value0).length();if(this._vf.order>1)
{var dist2=this._value2.subtract(this._value1).length();if(dist2>dist){dist=dist2;}}
if(this._vf.order>2)
{var dist3=this._value3.subtract(this._value2).length();if(dist3>dist){dist=dist3;}}
if(this._vf.order>3)
{var dist4=this._value4.subtract(this._value3).length();if(dist4>dist){dist=dist4;}}
if(this._vf.order>4)
{var dist5=this._value5.subtract(this._value4).length();if(dist5>dist){dist=dist5;}}
if(dist<=this._eps)
{this._value1.setValues(this._value0);this._value2.setValues(this._value0);this._value3.setValues(this._value0);this._value4.setValues(this._value0);this._value5.setValues(this._value0);this.postMessage('value',this._value0);this.postMessage('isActive',false);this._lastTick=0;return false;}
this.postMessage('value',this._value5);this._lastTick=now;return true;}}));x3dom.registerNodeType("PositionDamper2D","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.PositionDamper2D.superClass.call(this,ctx);this.addField_SFVec2f(ctx,'initialDestination',0,0);this.addField_SFVec2f(ctx,'initialValue',0,0);this.addField_SFVec2f(ctx,'value',0,0);this.addField_SFVec2f(ctx,'destination',0,0);this._value0=new x3dom.fields.SFVec2f(0,0);this._value1=new x3dom.fields.SFVec2f(0,0);this._value2=new x3dom.fields.SFVec2f(0,0);this._value3=new x3dom.fields.SFVec2f(0,0);this._value4=new x3dom.fields.SFVec2f(0,0);this._value5=new x3dom.fields.SFVec2f(0,0);this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName==="tolerance")
{this._eps=this._vf.tolerance<0?0.001:this._vf.tolerance;}
else if(fieldName.indexOf("destination")>=0)
{if(!this._value0.equals(this._vf.destination,this._eps)){this._value0=this._vf.destination;if(!this._vf.isActive){this.postMessage('isActive',true);}}}
else if(fieldName.indexOf("value")>=0)
{this._value1.setValues(this._vf.value);this._value2.setValues(this._vf.value);this._value3.setValues(this._vf.value);this._value4.setValues(this._vf.value);this._value5.setValues(this._vf.value);this._lastTick=0;this.postMessage('value',this._value5);if(!this._vf.isActive){this._lastTick=0;this.postMessage('isActive',true);}}},initialize:function()
{this._value0.setValues(this._vf.initialDestination);this._value1.setValues(this._vf.initialValue);this._value2.setValues(this._vf.initialValue);this._value3.setValues(this._vf.initialValue);this._value4.setValues(this._vf.initialValue);this._value5.setValues(this._vf.initialValue);this._lastTick=0;var active=!this._value0.equals(this._value1,this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}},tick:function(now)
{if(!this._lastTick)
{this._lastTick=now;return false;}
var delta=now-this._lastTick;var alpha=Math.exp(-delta/this._vf.tau);this._value1=this._vf.order>0&&this._vf.tau?this._value0.add(this._value1.subtract(this._value0).multiply(alpha)):new x3dom.fields.SFVec2f(this._value0.x,this._value0.y,this._value0.z);this._value2=this._vf.order>1&&this._vf.tau?this._value1.add(this._value2.subtract(this._value1).multiply(alpha)):new x3dom.fields.SFVec2f(this._value1.x,this._value1.y,this._value1.z);this._value3=this._vf.order>2&&this._vf.tau?this._value2.add(this._value3.subtract(this._value2).multiply(alpha)):new x3dom.fields.SFVec2f(this._value2.x,this._value2.y,this._value2.z);this._value4=this._vf.order>3&&this._vf.tau?this._value3.add(this._value4.subtract(this._value3).multiply(alpha)):new x3dom.fields.SFVec2f(this._value3.x,this._value3.y,this._value3.z);this._value5=this._vf.order>4&&this._vf.tau?this._value4.add(this._value5.subtract(this._value4).multiply(alpha)):new x3dom.fields.SFVec2f(this._value4.x,this._value4.y,this._value4.z);var dist=this._value1.subtract(this._value0).length();if(this._vf.order>1)
{var dist2=this._value2.subtract(this._value1).length();if(dist2>dist){dist=dist2;}}
if(this._vf.order>2)
{var dist3=this._value3.subtract(this._value2).length();if(dist3>dist){dist=dist3;}}
if(this._vf.order>3)
{var dist4=this._value4.subtract(this._value3).length();if(dist4>dist){dist=dist4;}}
if(this._vf.order>4)
{var dist5=this._value5.subtract(this._value4).length();if(dist5>dist){dist=dist5;}}
if(dist<=this._eps)
{this._value1.setValues(this._value0);this._value2.setValues(this._value0);this._value3.setValues(this._value0);this._value4.setValues(this._value0);this._value5.setValues(this._value0);this.postMessage('value',this._value0);this.postMessage('isActive',false);this._lastTick=0;return false;}
this.postMessage('value',this._value5);this._lastTick=now;return true;}}));x3dom.registerNodeType("ScalarChaser","Followers",defineClass(x3dom.nodeTypes.X3DChaserNode,function(ctx){x3dom.nodeTypes.ScalarChaser.superClass.call(this,ctx);this.addField_SFFloat(ctx,'initialDestination',0);this.addField_SFFloat(ctx,'initialValue',0);this.addField_SFFloat(ctx,'value',0);this.addField_SFFloat(ctx,'destination',0);this._buffer=[];this._previousValue=0;this._value=0;this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName.indexOf("destination")>=0)
{this.initialize();this.updateBuffer(this._currTime);if(!this._vf.isActive){this.postMessage('isActive',true);}}
else if(fieldName.indexOf("value")>=0)
{this.initialize();this._previousValue=this._vf.value;for(var C=1;C<this._buffer.length;C++){this._buffer[C]=this._vf.value;}
this.postMessage('value',this._vf.value);if(!this._vf.isActive){this.postMessage('isActive',true);}}},initialize:function()
{if(!this._initDone)
{this._initDone=true;this._vf.destination=this._vf.initialDestination;this._buffer.length=this._numSupports;this._buffer[0]=this._vf.initialDestination;for(var C=1;C<this._buffer.length;C++){this._buffer[C]=this._vf.initialValue;}
this._previousValue=this._vf.initialValue;this._stepTime=this._vf.duration/this._numSupports;var active=(Math.abs(this._buffer[0]-this._buffer[1])>this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}}},tick:function(now)
{this.initialize();this._currTime=now;if(!this._bufferEndTime)
{this._bufferEndTime=now;this._value=this._vf.initialValue;this.postMessage('value',this._value);return true;}
var Frac=this.updateBuffer(now);var Output=this._previousValue;var DeltaIn=this._buffer[this._buffer.length-1]-this._previousValue;var DeltaOut=DeltaIn*(this.stepResponse((this._buffer.length-1+Frac)*this._stepTime));Output=Output+DeltaOut;for(var C=this._buffer.length-2;C>=0;C--)
{DeltaIn=this._buffer[C]-this._buffer[C+1];DeltaOut=DeltaIn*(this.stepResponse((C+Frac)*this._stepTime));Output=Output+DeltaOut;}
if(Math.abs(Output-this._value)>this._eps){this._value=Output;this.postMessage('value',this._value);}
else{this.postMessage('isActive',false);}
return this._vf.isActive;},updateBuffer:function(now)
{var Frac=(now-this._bufferEndTime)/this._stepTime;var C;var NumToShift;var Alpha;if(Frac>=1)
{NumToShift=Math.floor(Frac);Frac-=NumToShift;if(NumToShift<this._buffer.length)
{this._previousValue=this._buffer[this._buffer.length-NumToShift];for(C=this._buffer.length-1;C>=NumToShift;C--){this._buffer[C]=this._buffer[C-NumToShift];}
for(C=0;C<NumToShift;C++)
{Alpha=C/NumToShift;this._buffer[C]=this._buffer[NumToShift]*Alpha+this._vf.destination*(1-Alpha);}}
else
{this._previousValue=(NumToShift==this._buffer.length)?this._buffer[0]:this._vf.destination;for(C=0;C<this._buffer.length;C++){this._buffer[C]=this._vf.destination;}}
this._bufferEndTime+=NumToShift*this._stepTime;}
return Frac;}}));x3dom.registerNodeType("ScalarDamper","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.ScalarDamper.superClass.call(this,ctx);this.addField_SFFloat(ctx,'initialDestination',0);this.addField_SFFloat(ctx,'initialValue',0);this.addField_SFFloat(ctx,'value',0);this.addField_SFFloat(ctx,'destination',0);this._value0=0;this._value1=0;this._value2=0;this._value3=0;this._value4=0;this._value5=0;this.initialize();},{fieldChanged:function(fieldName)
{if(fieldName==="tolerance")
{this._eps=this._vf.tolerance<0?0.001:this._vf.tolerance;}
else if(fieldName.indexOf("destination")>=0)
{if(Math.abs(this._value0-this._vf.destination)>this._eps){this._value0=this._vf.destination;if(!this._vf.isActive){this.postMessage('isActive',true);}}}
else if(fieldName.indexOf("value")>=0)
{this._value1=this._vf.value;this._value2=this._vf.value;this._value3=this._vf.value;this._value4=this._vf.value;this._value5=this._vf.value;this._lastTick=0;this.postMessage('value',this._value5);if(!this._vf.isActive){this._lastTick=0;this.postMessage('isActive',true);}}},initialize:function()
{this._value0=this._vf.initialDestination;this._value1=this._vf.initialValue;this._value2=this._vf.initialValue;this._value3=this._vf.initialValue;this._value4=this._vf.initialValue;this._value5=this._vf.initialValue;this._lastTick=0;var active=(Math.abs(this._value0-this._value1)>this._eps);if(this._vf.isActive!==active){this.postMessage('isActive',active);}},tick:function(now)
{if(!this._lastTick)
{this._lastTick=now;return false;}
var delta=now-this._lastTick;var alpha=Math.exp(-delta/this._vf.tau);this._value1=this._vf.order>0&&this._vf.tau?this._value0+alpha*(this._value1-this._value0):this._value0;this._value2=this._vf.order>1&&this._vf.tau?this._value1+alpha*(this._value2-this._value1):this._value1;this._value3=this._vf.order>2&&this._vf.tau?this._value2+alpha*(this._value3-this._value2):this._value2;this._value4=this._vf.order>3&&this._vf.tau?this._value3+alpha*(this._value4-this._value3):this._value3;this._value5=this._vf.order>4&&this._vf.tau?this._value4+alpha*(this._value5-this._value4):this._value4;var dist=Math.abs(this._value1-this._value0);if(this._vf.order>1)
{var dist2=Math.abs(this._value2-this._value1);if(dist2>dist){dist=dist2;}}
if(this._vf.order>2)
{var dist3=Math.abs(this._value3-this._value2);if(dist3>dist){dist=dist3;}}
if(this._vf.order>3)
{var dist4=Math.abs(this._value4-this._value3);if(dist4>dist){dist=dist4;}}
if(this._vf.order>4)
{var dist5=Math.abs(this._value5-this._value4);if(dist5>dist){dist=dist5;}}
if(dist<=this._eps)
{this._value1=this._value0;this._value2=this._value0;this._value3=this._value0;this._value4=this._value0;this._value5=this._value0;this.postMessage('value',this._value0);this.postMessage('isActive',false);this._lastTick=0;return false;}
this.postMessage('value',this._value5);this._lastTick=now;return true;}}));x3dom.registerNodeType("CoordinateDamper","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.CoordinateDamper.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'initialDestination',[]);this.addField_MFVec3f(ctx,'initialValue',[]);this.addField_MFVec3f(ctx,'value',[]);this.addField_MFVec3f(ctx,'destination',[]);x3dom.debug.logWarning("CoordinateDamper NYI");}));x3dom.registerNodeType("TexCoordDamper2D","Followers",defineClass(x3dom.nodeTypes.X3DDamperNode,function(ctx){x3dom.nodeTypes.TexCoordDamper2D.superClass.call(this,ctx);this.addField_MFVec2f(ctx,'initialDestination',[]);this.addField_MFVec2f(ctx,'initialValue',[]);this.addField_MFVec2f(ctx,'value',[]);this.addField_MFVec2f(ctx,'destination',[]);x3dom.debug.logWarning("TexCoordDamper2D NYI");}));x3dom.registerNodeType("X3DInterpolatorNode","Interpolation",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DInterpolatorNode.superClass.call(this,ctx);this.addField_MFFloat(ctx,'key',[]);this.addField_SFFloat(ctx,'set_fraction',0);},{linearInterp:function(time,interp){if(time<=this._vf.key[0])
return this._vf.keyValue[0];else if(time>=this._vf.key[this._vf.key.length-1])
return this._vf.keyValue[this._vf.key.length-1];for(var i=0;i<this._vf.key.length-1;++i){if((this._vf.key[i]<time)&&(time<=this._vf.key[i+1]))
return interp(this._vf.keyValue[i],this._vf.keyValue[i+1],(time-this._vf.key[i])/(this._vf.key[i+1]-this._vf.key[i]));}
return this._vf.keyValue[0];}}));x3dom.registerNodeType("OrientationInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.OrientationInterpolator.superClass.call(this,ctx);this.addField_MFRotation(ctx,'keyValue',[]);},{fieldChanged:function(fieldName)
{if(fieldName==="set_fraction")
{var value=this.linearInterp(this._vf.set_fraction,function(a,b,t){return a.slerp(b,t);});this.postMessage('value_changed',value);}}}));x3dom.registerNodeType("PositionInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.PositionInterpolator.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'keyValue',[]);},{fieldChanged:function(fieldName)
{if(fieldName==="set_fraction")
{var value=this.linearInterp(this._vf.set_fraction,function(a,b,t){return a.multiply(1.0-t).add(b.multiply(t));});this.postMessage('value_changed',value);}}}));x3dom.registerNodeType("NormalInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.NormalInterpolator.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'keyValue',[]);},{fieldChanged:function(fieldName)
{if(fieldName==="set_fraction")
{var value=this.linearInterp(this._vf.set_fraction,function(a,b,t){return a.multiply(1.0-t).add(b.multiply(t)).normalize();});this.postMessage('value_changed',value);}}}));x3dom.registerNodeType("ColorInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.ColorInterpolator.superClass.call(this,ctx);this.addField_MFColor(ctx,'keyValue',[]);},{fieldChanged:function(fieldName)
{if(fieldName==="set_fraction")
{var value=this.linearInterp(this._vf.set_fraction,function(a,b,t){return a.multiply(1.0-t).add(b.multiply(t));});this.postMessage('value_changed',value);}}}));x3dom.registerNodeType("ScalarInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.ScalarInterpolator.superClass.call(this,ctx);this.addField_MFFloat(ctx,'keyValue',[]);},{fieldChanged:function(fieldName)
{if(fieldName==="set_fraction")
{var value=this.linearInterp(this._vf.set_fraction,function(a,b,t){return(1.0-t)*a+t*b;});this.postMessage('value_changed',value);}}}));x3dom.registerNodeType("CoordinateInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.CoordinateInterpolator.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'keyValue',[]);if(ctx&&ctx.xmlNode.hasAttribute('keyValue')){this._vf.keyValue=[];var arr=x3dom.fields.MFVec3f.parse(ctx.xmlNode.getAttribute('keyValue'));var key=this._vf.key.length>0?this._vf.key.length:1;var len=arr.length/key;for(var i=0;i<key;i++){var val=new x3dom.fields.MFVec3f();for(var j=0;j<len;j++){val.push(arr[i*len+j]);}
this._vf.keyValue.push(val);}}},{fieldChanged:function(fieldName)
{if(fieldName==="set_fraction")
{var value=this.linearInterp(this._vf.set_fraction,function(a,b,t){var val=new x3dom.fields.MFVec3f();for(var i=0;i<a.length;i++)
val.push(a[i].multiply(1.0-t).add(b[i].multiply(t)));return val;});this.postMessage('value_changed',value);}}}));x3dom.registerNodeType("SplinePositionInterpolator","Interpolation",defineClass(x3dom.nodeTypes.X3DInterpolatorNode,function(ctx){x3dom.nodeTypes.SplinePositionInterpolator.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'keyValue',[]);this.addField_MFVec3f(ctx,'keyVelocity',[]);this.addField_SFBool(ctx,'closed',false);this.addField_SFBool(ctx,'normalizeVelocity',false);this.dtot=0.0;this.T0=[];this.T1=[];this.checkSanity=function(){var sane=(this._vf.key.length==this._vf.keyValue.length)&&((this._vf.key.length==this._vf.keyVelocity.length)||(this._vf.keyVelocity.length==2&&this._vf.key.length>=2)||(this._vf.keyVelocity.length==0));if(!sane)
x3dom.debug.logWarning("SplinePositionInterpolator Node: 'key' , 'keyValue' and/or 'keyVelocity' fields have inappropriate sizes");};this.calcDtot=function()
{this.dtot=0.0;for(var i=0;i<this._vf.key.length-1;i++)
{this.dtot+=Math.abs(this._vf.key[i]-this._vf.key[i+1]);}};this.calcAdjustedKeyVelocity=function()
{var i,Ti,F_plus_i,F_minus_i;var N=this._vf.key.length;if(this._vf.keyVelocity.length==N)
{for(i=0;i<N;i++)
{Ti=this._vf.keyVelocity[i];if(this._vf.normalizeVelocity)
Ti=Ti.multiply(this.dtot/Ti.length());F_plus_i=(i==0||i==N-1)?1.0:2.0*(this._vf.key[i]-this._vf.key[i-1])/(this._vf.key[i+1]-this._vf.key[i-1]);F_minus_i=(i==0||i==N-1)?1.0:2.0*(this._vf.key[i+1]-this._vf.key[i])/(this._vf.key[i+1]-this._vf.key[i-1]);this.T0[i]=Ti.multiply(F_plus_i);this.T1[i]=Ti.multiply(F_minus_i);}}
else if(this._vf.keyVelocity.length==2&&N>2)
{for(i=0;i<N;i++)
{if(i==0)
Ti=this._vf.keyVelocity[0];else if(i==N-1)
Ti=this._vf.keyVelocity[1];else
Ti=this._vf.keyValue[i+1].subtract(this._vf.keyValue[i-1]).multiply(0.5);if(this._vf.normalizeVelocity)
Ti=Ti.multiply(this.dtot/Ti.length());F_plus_i=(i==0||i==N-1)?1.0:2.0*(this._vf.key[i]-this._vf.key[i-1])/(this._vf.key[i+1]-this._vf.key[i-1]);F_minus_i=(i==0||i==N-1)?1.0:2.0*(this._vf.key[i+1]-this._vf.key[i])/(this._vf.key[i+1]-this._vf.key[i-1]);this.T0[i]=Ti.multiply(F_plus_i);this.T1[i]=Ti.multiply(F_minus_i);}}
else
{var closed=this._vf.closed&&this._vf.keyValue[0].equals(this._vf.keyValue[N-1],0.00001);for(i=0;i<N;i++)
{if((i==0||i==N-1)&&!closed)
{this.T0[i]=new x3dom.fields.SFVec3f(0,0,0);this.T1[i]=new x3dom.fields.SFVec3f(0,0,0);continue;}
else if((i==0||i==N-1)&&closed)
{Ti=this._vf.keyValue[1].subtract(this._vf.keyValue[N-2]).multiply(0.5);if(i==0){F_plus_i=2.0*(this._vf.key[0]-this._vf.key[N-2])/(this._vf.key[1]-this._vf.key[N-2]);F_minus_i=2.0*(this._vf.key[1]-this._vf.key[0])/(this._vf.key[1]-this._vf.key[N-2]);}
else{F_plus_i=2.0*(this._vf.key[N-1]-this._vf.key[N-2])/(this._vf.key[1]-this._vf.key[N-2]);F_minus_i=2.0*(this._vf.key[1]-this._vf.key[N-1])/(this._vf.key[1]-this._vf.key[N-2]);}
F_plus_i=2.0*(this._vf.key[N-1]-this._vf.key[N-2])/(this._vf.key[N-2]-this._vf.key[1]);F_minus_i=2.0*(this._vf.key[1]-this._vf.key[0])/(this._vf.key[N-2]-this._vf.key[1]);}
else
{Ti=this._vf.keyValue[i+1].subtract(this._vf.keyValue[i-1]).multiply(0.5);F_plus_i=2.0*(this._vf.key[i]-this._vf.key[i-1])/(this._vf.key[i+1]-this._vf.key[i-1]);F_minus_i=2.0*(this._vf.key[i+1]-this._vf.key[i])/(this._vf.key[i+1]-this._vf.key[i-1]);}
this.T0[i]=Ti.multiply(F_plus_i);this.T1[i]=Ti.multiply(F_minus_i);}}};this.checkSanity();this.calcDtot();this.calcAdjustedKeyVelocity();},{fieldChanged:function(fieldName)
{switch(fieldName)
{case'key':case'keyValue':case'keyVelocity':{this.checkSanity();this.calcDtot();this.calcAdjustedKeyVelocity();break;}
case'closed':case'normalizeVelocity':{this.calcAdjustedKeyVelocity();break;}
case'set_fraction':{var value;if(this._vf.key.length>0.0){if(this._vf.set_fraction<=this._vf.key[0])
value=x3dom.fields.SFVec3f.copy(this._vf.keyValue[0]);else if(this._vf.set_fraction>=this._vf.key[this._vf.key.length-1])
value=x3dom.fields.SFVec3f.copy(this._vf.keyValue[this._vf.key.length-1]);}
for(var i=0;i<this._vf.key.length-1;i++){if((this._vf.key[i]<this._vf.set_fraction)&&(this._vf.set_fraction<=this._vf.key[i+1])){var s=(this._vf.set_fraction-this._vf.key[i])/(this._vf.key[i+1]-this._vf.key[i]);var S_H=new x3dom.fields.SFVec4f(2.0*s*s*s-3.0*s*s+1.0,-2.0*s*s*s+3.0*s*s,s*s*s-2.0*s*s+s,s*s*s-s*s);value=new x3dom.fields.SFVec3f(S_H.x*this._vf.keyValue[i].x+S_H.y*this._vf.keyValue[i+1].x+S_H.z*this.T0[i].x+S_H.w*this.T1[i+1].x,S_H.x*this._vf.keyValue[i].y+S_H.y*this._vf.keyValue[i+1].y+S_H.z*this.T0[i].y+S_H.w*this.T1[i+1].y,S_H.x*this._vf.keyValue[i].z+S_H.y*this._vf.keyValue[i+1].z+S_H.z*this.T0[i].z+S_H.w*this.T1[i+1].z);break;}}
if(value!==undefined)
this.postMessage('value_changed',value);else
x3dom.debug.logWarning("SplinePositionInterpolator Node: value_changed is undefined!");}}}}));x3dom.registerNodeType("TimeSensor","Time",defineClass(x3dom.nodeTypes.X3DSensorNode,function(ctx){x3dom.nodeTypes.TimeSensor.superClass.call(this,ctx);if(ctx)
ctx.doc._nodeBag.timer.push(this);else
x3dom.debug.logWarning("TimeSensor: No runtime context found!");this.addField_SFTime(ctx,'cycleInterval',1);this.addField_SFBool(ctx,'loop',false);this.addField_SFTime(ctx,'startTime',0);this.addField_SFTime(ctx,'stopTime',0);this.addField_SFTime(ctx,'pauseTime',0);this.addField_SFTime(ctx,'resumeTime',0);this.addField_SFTime(ctx,'cycleTime',0);this.addField_SFTime(ctx,'elapsedTime',0);this.addField_SFFloat(ctx,'fraction_changed',0);this.addField_SFBool(ctx,'isActive',false);this.addField_SFBool(ctx,'isPaused',false);this.addField_SFTime(ctx,'time',0);this.addField_SFBool(ctx,'first',true);this.addField_SFFloat(ctx,'firstCycle',0.0);this._prevCycle=-1;this._lastTime=0;this._cycleStopTime=0;this._activatedTime=0;if(this._vf.startTime>0){this._updateCycleStopTime();}
this._backupStartTime=this._vf.startTime;this._backupStopTime=this._vf.stopTime;this._backupCycleInterval=this._vf.cycleInterval;},{tick:function(time)
{if(!this._vf.enabled){this._lastTime=time;return false;}
var isActive=(this._vf.cycleInterval>0&&time>=this._vf.startTime&&(time<this._vf.stopTime||this._vf.stopTime<=this._vf.startTime)&&(this._vf.loop==true||(this._vf.loop==false&&time<this._cycleStopTime)));if(isActive&&!this._vf.isActive){this.postMessage('isActive',true);this._activatedTime=time;}
if(isActive||this._vf.isActive){this.postMessage('elapsedTime',time-this._activatedTime);var isPaused=(time>=this._vf.pauseTime&&this._vf.pauseTime>this._vf.resumeTime);if(isPaused&&!this._vf.isPaused){this.postMessage('isPaused',true);this.postMessage('pauseTime',time);}else if(!isPaused&&this._vf.isPaused){this.postMessage('isPaused',false);this.postMessage('resumeTime',time);}
if(!isPaused){var cycleFrac=this._getCycleAt(time);var cycle=Math.floor(cycleFrac);var cycleTime=this._vf.startTime+cycle*this._vf.cycleInterval;var adjustTime=0;if(this._vf.stopTime>this._vf.startTime&&this._lastTime<this._vf.stopTime&&time>=this._vf.stopTime)
adjustTime=this._vf.stopTime;else if(this._lastTime<cycleTime&&time>=cycleTime)
adjustTime=cycleTime;if(adjustTime>0){time=adjustTime;cycleFrac=this._getCycleAt(time);cycle=Math.floor(cycleFrac);}
var fraction=cycleFrac-cycle;if(fraction<x3dom.fields.Eps){fraction=(this._lastTime<this._vf.startTime?0.0:1.0);this.postMessage('cycleTime',time);}
this.postMessage('fraction_changed',fraction);this.postMessage('time',time);}}
if(!isActive&&this._vf.isActive)
this.postMessage('isActive',false);this._lastTime=time;return true;},fieldChanged:function(fieldName)
{if(fieldName=="enabled"){if(!this._vf.enabled&&this._vf.isActive){this.postMessage('isActive',false);}}
else if(fieldName=="startTime"){if(this._vf.isActive){this._vf.startTime=this._backupStartTime;return;}
this._backupStartTime=this._vf.startTime;this._updateCycleStopTime();}
else if(fieldName=="stopTime"){if(this._vf.isActive&&this._vf.stopTime<=this._vf.startTime){this._vf.stopTime=this._backupStopTime;return;}
this._backupStopTime=this._vf.stopTime;}
else if(fieldName=="cycleInterval"){if(this._vf.isActive){this._vf.cycleInterval=this._backupCycleInterval;return;}
this._backupCycleInterval=this._vf.cycleInterval;}
else if(fieldName=="loop"){this._updateCycleStopTime();}},parentRemoved:function(parent)
{if(this._parentNodes.length===0){var doc=this.findX3DDoc();for(var i=0,n=doc._nodeBag.timer.length;i<n;i++){if(doc._nodeBag.timer[i]===this){doc._nodeBag.timer.splice(i,1);}}}},_getCycleAt:function(time)
{return Math.max(0.0,time-this._vf.startTime)/this._vf.cycleInterval;},_updateCycleStopTime:function()
{if(this._vf.loop==false){var now=new Date().getTime()/1000;var cycleToStop=Math.floor(this._getCycleAt(now))+1;this._cycleStopTime=this._vf.startTime+cycleToStop*this._vf.cycleInterval;}
else{this._cycleStopTime=0;}}}));x3dom.registerNodeType("X3DTimeDependentNode","Time",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DTimeDependentNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'loop',false);}));x3dom.registerNodeType("Anchor","Networking",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Anchor.superClass.call(this,ctx);this.addField_MFString(ctx,'url',[]);this.addField_MFString(ctx,'parameter',[]);this.addField_SFString(ctx,'description',"");},{doIntersect:function(line){var isect=false;for(var i=0;i<this._childNodes.length;i++){if(this._childNodes[i]){isect=this._childNodes[i].doIntersect(line)||isect;}}
return isect;},handleTouch:function(){var url=this._vf.url.length?this._vf.url[0]:"";var aPos=url.search("#");var anchor="";if(aPos>=0)
anchor=url.slice(aPos+1);var param=this._vf.parameter.length?this._vf.parameter[0]:"";var tPos=param.search("target=");var target="";if(tPos>=0)
target=param.slice(tPos+7);x3dom.debug.logInfo("Anchor url="+url+", target="+target+", #viewpoint="+anchor);if(target.length!=0||target!="_self"){window.open(this._nameSpace.getURL(url),target);}
else{window.location=this._nameSpace.getURL(url);}}}));x3dom.registerNodeType("Inline","Networking",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Inline.superClass.call(this,ctx);this.addField_MFString(ctx,'url',[]);this.addField_SFBool(ctx,'load',true);this.addField_MFString(ctx,'nameSpaceName',[]);this.addField_SFBool(ctx,'mapDEFToID',false);this.initDone=false;this.count=0;this.numRetries=x3dom.nodeTypes.Inline.MaximumRetries;},{fieldChanged:function(fieldName)
{if(fieldName=="url"){if(this._vf.nameSpaceName.length!=0){var node=this._xmlNode;if(node&&node.hasChildNodes())
{while(node.childNodes.length>=1)
{node.removeChild(node.firstChild);}}}
this.loadInline();}
else if(fieldName=="render"){this.invalidateVolume();}},nodeChanged:function()
{if(!this.initDone){this.initDone=true;this.loadInline();}},fireEvents:function(eventType)
{if(this._xmlNode&&(this._xmlNode['on'+eventType]||this._xmlNode.hasAttribute('on'+eventType)||this._listeners[eventType]))
{var event={target:this._xmlNode,type:eventType,error:(eventType=="error")?"XMLHttpRequest Error":"",cancelBubble:false,stopPropagation:function(){this.cancelBubble=true;}};try{var attrib=this._xmlNode["on"+eventType];if(typeof(attrib)==="function"){attrib.call(this._xmlNode,event);}
else{var funcStr=this._xmlNode.getAttribute("on"+eventType);var func=new Function('event',funcStr);func.call(this._xmlNode,event);}
var list=this._listeners[eventType];if(list){for(var i=0;i<list.length;i++){list[i].call(this._xmlNode,event);}}}
catch(ex){x3dom.debug.logException(ex);}}},loadInline:function()
{var that=this;var xhr=new window.XMLHttpRequest();if(xhr.overrideMimeType)
xhr.overrideMimeType('text/xml');xhr.onreadystatechange=function()
{if(xhr.readyState!=4){return xhr;}
if(xhr.status===x3dom.nodeTypes.Inline.AwaitTranscoding){if(that.count<that.numRetries)
{that.count++;var refreshTime=+xhr.getResponseHeader("Refresh")||5;x3dom.debug.logInfo('XHR status: '+xhr.status+' - Await Transcoding ('+that.count+'/'+that.numRetries+'): '+'Next request in '+refreshTime+' seconds');window.setTimeout(function(){that._nameSpace.doc.downloadCount-=1;that.loadInline();},refreshTime*1000);return xhr;}
else
{x3dom.debug.logError('XHR status: '+xhr.status+' - Await Transcoding ('+that.count+'/'+that.numRetries+'): '+'No Retries left');that._nameSpace.doc.downloadCount-=1;that.count=0;return xhr;}}
else if((xhr.status!==200)&&(xhr.status!==0)){that.fireEvents("error");x3dom.debug.logError('XHR status: '+xhr.status+' - XMLHttpRequest requires web server running!');that._nameSpace.doc.downloadCount-=1;that.count=0;return xhr;}
else if((xhr.status==200)||(xhr.status==0)){that.count=0;}
x3dom.debug.logInfo('Inline: downloading '+that._vf.url[0]+' done.');var inlScene=null,newScene=null,nameSpace=null,xml=null;if(navigator.appName!="Microsoft Internet Explorer")
xml=xhr.responseXML;else
xml=new DOMParser().parseFromString(xhr.responseText,"text/xml");if(xml!==undefined&&xml!==null)
{inlScene=xml.getElementsByTagName('Scene')[0]||xml.getElementsByTagName('scene')[0];}
else{that.fireEvents("error");}
if(inlScene)
{var nsName=(that._vf.nameSpaceName.length!=0)?that._vf.nameSpaceName.toString().replace(' ',''):"";nameSpace=new x3dom.NodeNameSpace(nsName,that._nameSpace.doc);var url=that._vf.url.length?that._vf.url[0]:"";if((url[0]==='/')||(url.indexOf(":")>=0))
nameSpace.setBaseURL(url);else
nameSpace.setBaseURL(that._nameSpace.baseURL+url);newScene=nameSpace.setupTree(inlScene);that._nameSpace.addSpace(nameSpace);if(that._vf.nameSpaceName.length!=0)
{Array.forEach(inlScene.childNodes,function(childDomNode)
{if(childDomNode instanceof Element)
{setNamespace(that._vf.nameSpaceName,childDomNode,that._vf.mapDEFToID);that._xmlNode.appendChild(childDomNode);}});}}
else{if(xml&&xml.localName)
x3dom.debug.logError('No Scene in '+xml.localName);else
x3dom.debug.logError('No Scene in resource');}
var global=x3dom.getGlobal();if(that._childNodes.length>0&&that._childNodes[0]&&that._childNodes[0]._nameSpace)
that._nameSpace.removeSpace(that._childNodes[0]._nameSpace);while(that._childNodes.length!==0)
global['_remover']=that.removeChild(that._childNodes[0]);delete global['_remover'];if(newScene)
{that.addChild(newScene);that.invalidateVolume();that._nameSpace.doc.downloadCount-=1;that._nameSpace.doc.needRender=true;x3dom.debug.logInfo('Inline: added '+that._vf.url[0]+' to scene.');var theScene=that._nameSpace.doc._scene;if(theScene){theScene.invalidateVolume();window.setTimeout(function(){that.invalidateVolume();theScene.updateVolume();that._nameSpace.doc.needRender=true;},1000);}
that.fireEvents("load");}
newScene=null;nameSpace=null;inlScene=null;xml=null;return xhr;};if(this._vf.url.length&&this._vf.url[0].length)
{var xhrURI=this._nameSpace.getURL(this._vf.url[0]);xhr.open('GET',xhrURI,true);this._nameSpace.doc.downloadCount+=1;try{xhr.send(null);}
catch(ex){this.fireEvents("error");x3dom.debug.logError(this._vf.url[0]+": "+ex);}}}}));x3dom.nodeTypes.Inline.AwaitTranscoding=202;x3dom.nodeTypes.Inline.MaximumRetries=15;function setNamespace(prefix,childDomNode,mapDEFToID)
{if(childDomNode instanceof Element&&childDomNode.__setAttribute!==undefined){if(childDomNode.hasAttribute('id')){childDomNode.__setAttribute('id',prefix.toString().replace(' ','')+'__'+childDomNode.getAttribute('id'));}else if(childDomNode.hasAttribute('DEF')&&mapDEFToID){childDomNode.__setAttribute('id',prefix.toString().replace(' ','')+'__'+childDomNode.getAttribute('DEF'));if(!childDomNode.id)
childDomNode.id=childDomNode.__getAttribute('id');}}
if(childDomNode.hasChildNodes()){Array.forEach(childDomNode.childNodes,function(children){setNamespace(prefix,children,mapDEFToID);});}}
x3dom.registerNodeType("MultiPart","Networking",defineClass(x3dom.nodeTypes.Inline,function(ctx){x3dom.nodeTypes.MultiPart.superClass.call(this,ctx);this.addField_MFString(ctx,'urlIDMap',[]);this.addField_SFBool(ctx,'isPickable',true);this.addField_SFString(ctx,'sortType','auto');this.addField_SFBool(ctx,'solid',false);this.addField_SFInt32(ctx,'sortKey',0);this.addField_SFString(ctx,'initialVisibility','auto');this._idMap=null;this._inlineNamespace=null;this._highlightedParts=[];this._minId=0;this._maxId=0;this._lastId=-1;this._lastClickedId=-1;this._lastButton=0;this._identifierToPartId=[];this._identifierToAppId=[];this._visiblePartsPerShape=[];this._partVolume=[];this._partVisibility=[];this._originalColor=[];this._materials=[];},{fieldChanged:function(fieldName)
{if(fieldName=="url"){if(this._vf.nameSpaceName.length!=0){var node=this._xmlNode;if(node&&node.hasChildNodes())
{while(node.childNodes.length>=1)
{node.removeChild(node.firstChild);}}}
this.loadInline();}
else if(fieldName=="render"){this.invalidateVolume();}},nodeChanged:function()
{if(!this.initDone){this.initDone=true;this.loadIDMap();}},getVolume:function()
{var vol=this._graph.volume;if(!this.volumeValid()&&this._vf.render)
{for(var i=0;i<this._partVisibility.length;i++)
{if(!this._partVisibility[i])
continue;var childVol=this._partVolume[i];if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}}
return vol;},handleEvents:function(e)
{if(this._inlineNamespace){var colorMap=this._inlineNamespace.defMap["MultiMaterial_ColorMap"];var emissiveMap=this._inlineNamespace.defMap["MultiMaterial_EmissiveMap"];var specularMap=this._inlineNamespace.defMap["MultiMaterial_SpecularMap"];var visibilityMap=this._inlineNamespace.defMap["MultiMaterial_VisibilityMap"];if(e.pickedId==-1&&e.button!=0){this._lastClickedId=-1;this._lastButton=e.button;}else if(e.pickedId==-1&&e.button==0){this._lastClickedId=-1;this._lastButton=0;}
if(e.pickedId!=-1){e.part=new x3dom.Parts(this,[e.pickedId-this._minId],colorMap,emissiveMap,specularMap,visibilityMap);e.partID=this._idMap.mapping[e.pickedId-this._minId].name;e.type="mousemove";this.callEvtHandler("onmousemove",e);e.type="mouseover";this.callEvtHandler("onmouseover",e);if(!e.mouseup&&e.button&&e.button!=this._lastButton){e.type="mousedown";this._lastButton=e.button;if(this._lastClickedId==-1){this._lastClickedId=e.pickedId;}
this.callEvtHandler("onmousedown",e);}
if(e.mouseup||(this._lastButton!=0&&e.button==0)){e.type="mouseup";this.callEvtHandler("onmouseup",e);this._lastButton=0;if(e.pickedId==this._lastClickedId){this._lastClickedId=-1;e.type="click";this.callEvtHandler("onclick",e);}
this._lastClickedId=-1;}
if(e.pickedId!=this._lastId){if(this._lastId!=-1){e.part=new x3dom.Parts(this,[this._lastId-this._minId],colorMap,emissiveMap,specularMap,visibilityMap);e.partID=this._idMap.mapping[this._lastId-this._minId].name;e.type="mouseleave";this.callEvtHandler("onmouseleave",e);}
e.part=new x3dom.Parts(this,[e.pickedId-this._minId],colorMap,emissiveMap,specularMap,visibilityMap);e.partID=this._idMap.mapping[e.pickedId-this._minId].name;e.type="mouseenter";this.callEvtHandler("onmouseenter",e);this._lastId=e.pickedId;}
this._lastId=e.pickedId;}
else if(this._lastId!=-1){e.part=new x3dom.Parts(this,[this._lastId-this._minId],colorMap,emissiveMap,specularMap,visibilityMap);e.partID=this._idMap.mapping[this._lastId-this._minId].name;e.type="mouseout";this.callEvtHandler("onmouseout",e);e.type="mouseleave";this.callEvtHandler("onmouseleave",e);this._lastId=-1;}}},loadIDMap:function()
{if(this._vf.urlIDMap.length&&this._vf.urlIDMap[0].length)
{var i;var that=this;var idMapURI=this._nameSpace.getURL(this._vf.urlIDMap[0]);var xhr=new XMLHttpRequest();xhr.open("GET",idMapURI,true);xhr.onload=function()
{that._idMap=JSON.parse(this.responseText);if(that._nameSpace.doc._scene._multiPartMap==null){that._nameSpace.doc._scene._multiPartMap={numberOfIds:0,multiParts:[]};}
that._minId=that._nameSpace.doc._scene._multiPartMap.numberOfIds;that._maxId=that._minId+that._idMap.numberOfIDs-1;that._nameSpace.doc._scene._multiPartMap.numberOfIds+=that._idMap.numberOfIDs;that._nameSpace.doc._scene._multiPartMap.multiParts.push(that);for(i=0;i<that._idMap.mapping.length;i++)
{if(!that._identifierToPartId[that._idMap.mapping[i].name]){that._identifierToPartId[that._idMap.mapping[i].name]=[];}
if(!that._identifierToPartId[that._idMap.mapping[i].appearance]){that._identifierToPartId[that._idMap.mapping[i].appearance]=[];}
that._identifierToPartId[that._idMap.mapping[i].name].push(i);that._identifierToPartId[that._idMap.mapping[i].appearance].push(i);if(!that._partVolume[i]){var min=x3dom.fields.SFVec3f.parse(that._idMap.mapping[i].min);var max=x3dom.fields.SFVec3f.parse(that._idMap.mapping[i].max);that._partVolume[i]=new x3dom.fields.BoxVolume(min,max);}}
for(i=0;i<that._idMap.appearance.length;i++)
{that._identifierToAppId[that._idMap.appearance[i].name]=i;}
that.loadInline();};xhr.send(null);}},createMaterialData:function()
{var diffuseColor,transparency,specularColor,shininess,emissiveColor,ambientIntensity;var backDiffuseColor,backTransparency,backSpecularColor,backShininess,backEmissiveColor,backAmbientIntensity;var rgba_DT="",rgba_SS="",rgba_EA="";var rgba_DT_B="",rgba_SS_B="",rgba_EA_B="";var size=Math.ceil(Math.sqrt(this._idMap.numberOfIDs));size=x3dom.Utils.nextHighestPowerOfTwo(size);var sizeTwo=size*2.0;var diffuseTransparencyData=size+" "+sizeTwo+" 4";var specularShininessData=size+" "+sizeTwo+" 4";var emissiveAmbientIntensityData=size+" "+sizeTwo+" 4";for(var i=0;i<size*size;i++)
{if(i<this._idMap.mapping.length)
{var appName=this._idMap.mapping[i].appearance;var appID=this._identifierToAppId[appName];if(this._idMap.appearance[appID].material.ambientIntensity){ambientIntensity=this._idMap.appearance[appID].material.ambientIntensity}else{ambientIntensity="0.2";}
if(this._idMap.appearance[appID].material.backAmbientIntensity){backAmbientIntensity=this._idMap.appearance[appID].material.backAmbientIntensity}else{backAmbientIntensity=ambientIntensity;}
if(this._idMap.appearance[appID].material.diffuseColor){diffuseColor=this._idMap.appearance[appID].material.diffuseColor}else{diffuseColor="0.8 0.8 0.8";}
if(this._idMap.appearance[appID].material.backDiffuseColor){backDiffuseColor=this._idMap.appearance[appID].material.backDiffuseColor}else{backDiffuseColor=diffuseColor;}
if(this._idMap.appearance[appID].material.emissiveColor){emissiveColor=this._idMap.appearance[appID].material.emissiveColor}else{emissiveColor="0.0 0.0 0.0";}
if(this._idMap.appearance[appID].material.backEmissiveColor){backEmissiveColor=this._idMap.appearance[appID].material.backEmissiveColor}else{backEmissiveColor=emissiveColor;}
if(this._idMap.appearance[appID].material.shininess){shininess=this._idMap.appearance[appID].material.shininess;}else{shininess="0.2";}
if(this._idMap.appearance[appID].material.backShininess){backShininess=this._idMap.appearance[appID].material.backShininess;}else{backShininess=shininess;}
if(this._idMap.appearance[appID].material.specularColor){specularColor=this._idMap.appearance[appID].material.specularColor;}else{specularColor="0 0 0";}
if(this._idMap.appearance[appID].material.backSpecularColor){backSpecularColor=this._idMap.appearance[appID].material.backSpecularColor;}else{backSpecularColor=specularColor;}
if(this._idMap.appearance[appID].material.transparency){transparency=this._idMap.appearance[appID].material.transparency;}else{transparency=0.0;}
if(this._idMap.appearance[appID].material.backTransparency){backTransparency=this._idMap.appearance[appID].material.backTransparency;}else{backTransparency=transparency;}
rgba_DT+=" "+x3dom.fields.SFColorRGBA.parse(diffuseColor+" "+(1.0-transparency)).toUint();rgba_SS+=" "+x3dom.fields.SFColorRGBA.parse(specularColor+" "+shininess).toUint();rgba_EA+=" "+x3dom.fields.SFColorRGBA.parse(emissiveColor+" "+ambientIntensity).toUint();rgba_DT_B+=" "+x3dom.fields.SFColorRGBA.parse(backDiffuseColor+" "+(1.0-backTransparency)).toUint();rgba_SS_B+=" "+x3dom.fields.SFColorRGBA.parse(backSpecularColor+" "+backShininess).toUint();rgba_EA_B+=" "+x3dom.fields.SFColorRGBA.parse(backEmissiveColor+" "+backAmbientIntensity).toUint();this._originalColor[i]=rgba_DT;this._materials[i]=new x3dom.MultiMaterial({"ambientIntensity":ambientIntensity,"diffuseColor":x3dom.fields.SFColor.parse(diffuseColor),"emissiveColor":x3dom.fields.SFColor.parse(emissiveColor),"shininess":shininess,"specularColor":x3dom.fields.SFColor.parse(specularColor),"transparency":transparency,"backAmbientIntensity":backAmbientIntensity,"backDiffuseColor":x3dom.fields.SFColor.parse(backDiffuseColor),"backEmissiveColor":x3dom.fields.SFColor.parse(backEmissiveColor),"backShininess":backShininess,"backSpecularColor":x3dom.fields.SFColor.parse(backSpecularColor),"backTransparency":backTransparency});}
else
{rgba_DT+=" 255";rgba_SS+=" 255";rgba_EA+=" 255";rgba_DT_B+=" 255";rgba_SS_B+=" 255";rgba_EA_B+=" 255";}}
diffuseTransparencyData+=rgba_DT+rgba_DT_B;specularShininessData+=rgba_SS+rgba_SS_B;emissiveAmbientIntensityData+=rgba_EA+rgba_EA_B;return{"diffuseTransparency":diffuseTransparencyData,"specularShininess":specularShininessData,"emissiveAmbientIntensity":emissiveAmbientIntensityData};},createVisibilityData:function()
{var i,j;var size=Math.ceil(Math.sqrt(this._idMap.numberOfIDs));size=x3dom.Utils.nextHighestPowerOfTwo(size);var visibilityData=size+" "+size+" 1";for(i=0;i<size*size;i++)
{if(i<this._idMap.mapping.length)
{if(this._vf.initialVisibility=='auto')
{visibilityData+=" 255";if(!this._partVisibility[i]){this._partVisibility[i]=true;}
for(j=0;j<this._idMap.mapping[i].usage.length;j++)
{if(!this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]]){this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]]={val:0,max:0};}
this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]].val++;this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]].max++;}}
else if(this._vf.initialVisibility=='visible')
{visibilityData+=" 255";if(!this._partVisibility[i]){this._partVisibility[i]=true;}
for(j=0;j<this._idMap.mapping[i].usage.length;j++)
{if(!this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]]){this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]]={val:0,max:0};}
this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]].val++;this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]].max++;}}
else if(this._vf.initialVisibility=='invisible')
{visibilityData+=" 0";if(!this._partVisibility[i]){this._partVisibility[i]=false;}
for(j=0;j<this._idMap.mapping[i].usage.length;j++)
{if(!this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]]){this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]]={val:0,max:0};}
this._visiblePartsPerShape[this._idMap.mapping[i].usage[j]].max++;}}}
else
{visibilityData+=" 0";}}
return visibilityData;},replaceMaterials:function(inlScene)
{var css,shapeDEF,materialData,visibilityData,appearance;var firstMat=true;if(inlScene&&inlScene.hasChildNodes())
{materialData=this.createMaterialData();visibilityData=this.createVisibilityData();var shapes=inlScene.getElementsByTagName("Shape");for(var s=0;s<shapes.length;s++)
{shapeDEF=shapes[s].getAttribute("DEF")||shapes[s].getAttribute("def");if(shapeDEF&&this._visiblePartsPerShape[shapeDEF]&&this._visiblePartsPerShape[shapeDEF].val==0)
{shapes[s].setAttribute("render","false");}
shapes[s].setAttribute("idOffset",this._minId);shapes[s].setAttribute("isPickable",this._vf.isPickable);var geometries=shapes[s].getElementsByTagName("BinaryGeometry");if(geometries&&geometries.length){for(var g=0;g<geometries.length;g++){geometries[g].setAttribute("solid",this._vf.solid);}}
var appearances=shapes[s].getElementsByTagName("Appearance");if(appearances.length)
{for(var a=0;a<appearances.length;a++)
{appearances[a].removeAttribute("DEF");appearances[a].removeAttribute("USE");appearances[a].setAttribute("sortType",this._vf.sortType);appearances[a].setAttribute("sortKey",this._vf.sortKey);var materials=appearances[a].getElementsByTagName("Material");if(materials.length)
{if(firstMat){firstMat=false;css=document.createElement("CommonSurfaceShader");css.setAttribute("DEF","MultiMaterial");var ptDA=document.createElement("PixelTexture");ptDA.setAttribute("containerField","multiDiffuseAlphaTexture");ptDA.setAttribute("id","MultiMaterial_ColorMap");ptDA.setAttribute("image",materialData.diffuseTransparency);var ptEA=document.createElement("PixelTexture");ptEA.setAttribute("containerField","multiEmissiveAmbientTexture");ptEA.setAttribute("id","MultiMaterial_EmissiveMap");ptEA.setAttribute("image",materialData.emissiveAmbientIntensity);var ptSS=document.createElement("PixelTexture");ptSS.setAttribute("containerField","multiSpecularShininessTexture");ptSS.setAttribute("id","MultiMaterial_SpecularMap");ptSS.setAttribute("image",materialData.specularShininess);var ptV=document.createElement("PixelTexture");ptV.setAttribute("containerField","multiVisibilityTexture");ptV.setAttribute("id","MultiMaterial_VisibilityMap");ptV.setAttribute("image",visibilityData);css.appendChild(ptDA);css.appendChild(ptEA);css.appendChild(ptSS);css.appendChild(ptV);}
else
{css=document.createElement("CommonSurfaceShader");css.setAttribute("USE","MultiMaterial");}
appearances[a].replaceChild(css,materials[0]);}
else
{if(firstMat){firstMat=false;css=document.createElement("CommonSurfaceShader");css.setAttribute("DEF","MultiMaterial");var ptDA=document.createElement("PixelTexture");ptDA.setAttribute("containerField","multiDiffuseAlphaTexture");ptDA.setAttribute("id","MultiMaterial_ColorMap");ptDA.setAttribute("image",materialData.diffuseTransparency);var ptEA=document.createElement("PixelTexture");ptEA.setAttribute("containerField","multiEmissiveAmbientTexture");ptEA.setAttribute("id","MultiMaterial_EmissiveMap");ptEA.setAttribute("image",materialData.emissiveAmbientIntensity);var ptSS=document.createElement("PixelTexture");ptSS.setAttribute("containerField","multiSpecularShininessTexture");ptSS.setAttribute("id","MultiMaterial_SpecularMap");ptSS.setAttribute("image",materialData.specularShininess);var ptV=document.createElement("PixelTexture");ptV.setAttribute("containerField","multiVisibilityTexture");ptV.setAttribute("id","MultiMaterial_VisibilityMap");ptV.setAttribute("image",visibilityData);css.appendChild(ptDA);css.appendChild(ptEA);css.appendChild(ptSS);css.appendChild(ptV);}
else
{css=document.createElement("CommonSurfaceShader");css.setAttribute("USE","MultiMaterial");}
appearances[a].appendChild(css);}}}
else
{appearance=document.createElement("Appearance");if(firstMat){firstMat=false;css=document.createElement("CommonSurfaceShader");css.setAttribute("DEF","MultiMaterial");var ptDA=document.createElement("PixelTexture");ptDA.setAttribute("containerField","multiDiffuseAlphaTexture");ptDA.setAttribute("id","MultiMaterial_ColorMap");ptDA.setAttribute("image",materialData.diffuseTransparency);var ptEA=document.createElement("PixelTexture");ptEA.setAttribute("containerField","multiEmissiveAmbientTexture");ptEA.setAttribute("id","MultiMaterial_EmissiveMap");ptEA.setAttribute("image",materialData.emissiveAmbientIntensity);var ptSS=document.createElement("PixelTexture");ptSS.setAttribute("containerField","multiSpecularShininessTexture");ptSS.setAttribute("id","MultiMaterial_SpecularMap");ptSS.setAttribute("image",materialData.specularShininess);var ptV=document.createElement("PixelTexture");ptV.setAttribute("containerField","multiVisibilityTexture");ptV.setAttribute("id","MultiMaterial_VisibilityMap");ptV.setAttribute("image",visibilityData);css.appendChild(ptDA);css.appendChild(ptEA);css.appendChild(ptSS);css.appendChild(ptV);}
else
{css=document.createElement("CommonSurfaceShader");css.setAttribute("USE","MultiMaterial");}
appearance.appendChild(css);geometries[g].appendChild(appearance);}}}},appendAPI:function()
{var multiPart=this;this._xmlNode.getIdList=function()
{var i,ids=[];for(i=0;i<multiPart._idMap.mapping.length;i++){ids.push(multiPart._idMap.mapping[i].name);}
return ids;};this._xmlNode.getAppearanceIdList=function()
{var i,ids=[];for(i=0;i<multiPart._idMap.appearance.length;i++){ids.push(multiPart._idMap.appearance[i].name);}
return ids;};this._xmlNode.getParts=function(selector)
{var i,m;var selection=[];if(selector==undefined){for(m=0;m<multiPart._idMap.mapping.length;m++){selection.push(m);}}else{for(i=0;i<selector.length;i++){if(multiPart._identifierToPartId[selector[i]]){selection=selection.concat(multiPart._identifierToPartId[selector[i]]);}}}
var colorMap=multiPart._inlineNamespace.defMap["MultiMaterial_ColorMap"];var emissiveMap=multiPart._inlineNamespace.defMap["MultiMaterial_EmissiveMap"];var specularMap=multiPart._inlineNamespace.defMap["MultiMaterial_SpecularMap"];var visibilityMap=multiPart._inlineNamespace.defMap["MultiMaterial_VisibilityMap"];if(selection.length==0){return null;}else{return new x3dom.Parts(multiPart,selection,colorMap,emissiveMap,specularMap,visibilityMap);}};},loadInline:function()
{var that=this;var xhr=new window.XMLHttpRequest();if(xhr.overrideMimeType)
xhr.overrideMimeType('text/xml');xhr.onreadystatechange=function()
{if(xhr.readyState!=4){return xhr;}
if(xhr.status===x3dom.nodeTypes.Inline.AwaitTranscoding){if(that.count<that.numRetries)
{that.count++;var refreshTime=+xhr.getResponseHeader("Refresh")||5;x3dom.debug.logInfo('XHR status: '+xhr.status+' - Await Transcoding ('+that.count+'/'+that.numRetries+'): '+'Next request in '+refreshTime+' seconds');window.setTimeout(function(){that._nameSpace.doc.downloadCount-=1;that.loadInline();},refreshTime*1000);return xhr;}
else
{x3dom.debug.logError('XHR status: '+xhr.status+' - Await Transcoding ('+that.count+'/'+that.numRetries+'): '+'No Retries left');that._nameSpace.doc.downloadCount-=1;that.count=0;return xhr;}}
else if((xhr.status!==200)&&(xhr.status!==0)){that.fireEvents("error");x3dom.debug.logError('XHR status: '+xhr.status+' - XMLHttpRequest requires web server running!');that._nameSpace.doc.downloadCount-=1;that.count=0;return xhr;}
else if((xhr.status==200)||(xhr.status==0)){that.count=0;}
x3dom.debug.logInfo('Inline: downloading '+that._vf.url[0]+' done.');var inlScene=null,newScene=null,nameSpace=null,xml=null;if(navigator.appName!="Microsoft Internet Explorer")
xml=xhr.responseXML;else
xml=new DOMParser().parseFromString(xhr.responseText,"text/xml");if(xml!==undefined&&xml!==null)
{inlScene=xml.getElementsByTagName('Scene')[0]||xml.getElementsByTagName('scene')[0];}
else{that.fireEvents("error");}
if(inlScene)
{var nsDefault="ns"+that._nameSpace.childSpaces.length;var nsName=(that._vf.nameSpaceName.length!=0)?that._vf.nameSpaceName.toString().replace(' ',''):nsDefault;that._inlineNamespace=new x3dom.NodeNameSpace(nsName,that._nameSpace.doc);var url=that._vf.url.length?that._vf.url[0]:"";if((url[0]==='/')||(url.indexOf(":")>=0))
{that._inlineNamespace.setBaseURL(url);}
else
{that._inlineNamespace.setBaseURL(that._nameSpace.baseURL+url);}
that.replaceMaterials(inlScene);newScene=that._inlineNamespace.setupTree(inlScene);that._nameSpace.addSpace(that._inlineNamespace);if(that._vf.nameSpaceName.length!=0)
{Array.forEach(inlScene.childNodes,function(childDomNode)
{if(childDomNode instanceof Element)
{setNamespace(that._vf.nameSpaceName,childDomNode,that._vf.mapDEFToID);that._xmlNode.appendChild(childDomNode);}});}}
else{if(xml&&xml.localName){x3dom.debug.logError('No Scene in '+xml.localName);}else{x3dom.debug.logError('No Scene in resource');}}
var global=x3dom.getGlobal();if(that._childNodes.length>0&&that._childNodes[0]&&that._childNodes[0]._nameSpace){that._nameSpace.removeSpace(that._childNodes[0]._nameSpace);}
while(that._childNodes.length!==0){global['_remover']=that.removeChild(that._childNodes[0]);}
delete global['_remover'];if(newScene)
{that.addChild(newScene);that.invalidateVolume();that._nameSpace.doc.downloadCount-=1;that._nameSpace.doc.needRender=true;x3dom.debug.logInfo('Inline: added '+that._vf.url[0]+' to scene.');var theScene=that._nameSpace.doc._scene;if(theScene){theScene.invalidateVolume();window.setTimeout(function(){that.invalidateVolume();theScene.updateVolume();that._nameSpace.doc.needRender=true;},1000);}
that.appendAPI();that.fireEvents("load");}
newScene=null;inlScene=null;xml=null;return xhr;};if(this._vf.url.length&&this._vf.url[0].length)
{var xhrURI=this._nameSpace.getURL(this._vf.url[0]);xhr.open('GET',xhrURI,true);this._nameSpace.doc.downloadCount+=1;try{xhr.send(null);}
catch(ex){this.fireEvents("error");x3dom.debug.logError(this._vf.url[0]+": "+ex);}}}}));x3dom.registerNodeType("X3DBackgroundNode","EnvironmentalEffects",defineClass(x3dom.nodeTypes.X3DBindableNode,function(ctx){x3dom.nodeTypes.X3DBackgroundNode.superClass.call(this,ctx);var trans=(ctx&&ctx.autoGen)?1:0;this.addField_SFString(ctx,'crossOrigin','');this.addField_MFColor(ctx,'groundColor',[]);this.addField_MFFloat(ctx,'groundAngle',[]);this.addField_MFColor(ctx,'skyColor',[new x3dom.fields.SFColor(0,0,0)]);this.addField_MFFloat(ctx,'skyAngle',[]);this.addField_SFFloat(ctx,'transparency',trans);this._dirty=true;},{getSkyColor:function(){return new x3dom.fields.SFColor(0,0,0);},getTransparency:function(){return 0;},getTexUrl:function(){return[];}}));x3dom.registerNodeType("X3DFogNode","EnvironmentalEffects",defineClass(x3dom.nodeTypes.X3DBindableNode,function(ctx){x3dom.nodeTypes.X3DFogNode.superClass.call(this,ctx);this.addField_SFColor(ctx,'color',1,1,1);this.addField_SFString(ctx,'fogType',"LINEAR");this.addField_SFFloat(ctx,'visibilityRange',0);},{}));x3dom.registerNodeType("Fog","EnvironmentalEffects",defineClass(x3dom.nodeTypes.X3DFogNode,function(ctx){x3dom.nodeTypes.Fog.superClass.call(this,ctx);},{}));x3dom.registerNodeType("Background","EnvironmentalEffects",defineClass(x3dom.nodeTypes.X3DBackgroundNode,function(ctx){x3dom.nodeTypes.Background.superClass.call(this,ctx);this.addField_MFString(ctx,'backUrl',[]);this.addField_MFString(ctx,'bottomUrl',[]);this.addField_MFString(ctx,'frontUrl',[]);this.addField_MFString(ctx,'leftUrl',[]);this.addField_MFString(ctx,'rightUrl',[]);this.addField_MFString(ctx,'topUrl',[]);},{fieldChanged:function(fieldName)
{if(fieldName.indexOf("Url")>0||fieldName=="transparency"||fieldName.search("sky")>=0||fieldName.search("ground")>=0){this._dirty=true;}
else if(fieldName.indexOf("bind")>=0){this.bind(this._vf.bind);}},getSkyColor:function(){return this._vf.skyColor;},getGroundColor:function(){return this._vf.groundColor;},getTransparency:function(){return this._vf.transparency;},getTexUrl:function(){return[this._nameSpace.getURL(this._vf.backUrl[0]),this._nameSpace.getURL(this._vf.frontUrl[0]),this._nameSpace.getURL(this._vf.bottomUrl[0]),this._nameSpace.getURL(this._vf.topUrl[0]),this._nameSpace.getURL(this._vf.leftUrl[0]),this._nameSpace.getURL(this._vf.rightUrl[0])];}}));x3dom.registerNodeType("X3DEnvironmentNode","EnvironmentalEffects",defineClass(x3dom.nodeTypes.X3DBindableNode,function(ctx){x3dom.nodeTypes.X3DEnvironmentNode.superClass.call(this,ctx);}));x3dom.registerNodeType("Environment","EnvironmentalEffects",defineClass(x3dom.nodeTypes.X3DEnvironmentNode,function(ctx){x3dom.nodeTypes.Environment.superClass.call(this,ctx);this.addField_SFBool(ctx,'sortTrans',true);this.addField_SFBool(ctx,'shadowExcludeTransparentObjects',false);this.addField_SFString(ctx,'gammaCorrectionDefault',"linear");this.addField_SFBool(ctx,'frustumCulling',true);this.addField_SFBool(ctx,'smallFeatureCulling',false);this.addField_SFFloat(ctx,'smallFeatureThreshold',1.0);this.addField_SFBool(ctx,'occlusionCulling',false);this.addField_SFFloat(ctx,'occlusionVisibilityThreshold',0.0);this.addField_SFBool(ctx,'lowPriorityCulling',false);this.addField_SFFloat(ctx,'lowPriorityThreshold',1.0);this.addField_SFBool(ctx,'tessellationDetailCulling',false);this.addField_SFFloat(ctx,'tessellationErrorThreshold',0.0);this.addField_SFBool(ctx,'enableARC',false);this.addField_SFFloat(ctx,'minFrameRate',1.0);this.addField_SFFloat(ctx,'maxFrameRate',62.5);this.addField_SFFloat(ctx,'userDataFactor',-1);this.addField_SFFloat(ctx,'smallFeatureFactor',-1);this.addField_SFFloat(ctx,'occlusionVisibilityFactor',-1);this.addField_SFFloat(ctx,'lowPriorityFactor',-1);this.addField_SFFloat(ctx,'tessellationErrorFactor',-1);this.addField_SFBool(ctx,'SSAO',false);this.addField_SFFloat(ctx,'SSAOradius',0.7);this.addField_SFFloat(ctx,'SSAOamount',0.3);this.addField_SFInt32(ctx,'SSAOrandomTextureSize',4);this.addField_SFInt32(ctx,'SSAOblurDepthTreshold',1);this._validGammaCorrectionTypes=["none","fastlinear","linear"];this.checkSanity();},{checkSanity:function()
{var checkParam=function(flag,value,defaultOn,defaultOff)
{if(flag&&(value==defaultOff))
return defaultOn;if(!flag&&(value!=defaultOff))
return defaultOff;return value;};this._smallFeatureThreshold=checkParam(this._vf.smallFeatureCulling,this._vf.smallFeatureThreshold,10,0);this._lowPriorityThreshold=checkParam(this._vf.lowPriorityCulling,this._vf.lowPriorityThreshold,0.5,1);this._occlusionVisibilityThreshold=checkParam(this._vf.occlusionCulling,this._vf.occlusionVisibilityThreshold,1,0);this._tessellationErrorThreshold=checkParam(this._vf.tessellationDetailCulling,this._vf.tessellationErrorThreshold,1,0);var checkGamma=function(field,that){field=field.toLowerCase();if(that._validGammaCorrectionTypes.indexOf(field)>-1){return field;}
else{x3dom.debug.logWarning(field+" gammaCorrectionDefault may only be linear (default), fastLinear, or none");return that._validGammaCorrectionTypes[0];}};this._vf.gammaCorrectionDefault=checkGamma(this._vf.gammaCorrectionDefault,this);}}));x3dom.registerNodeType("X3DViewpointNode","Navigation",defineClass(x3dom.nodeTypes.X3DBindableNode,function(ctx){x3dom.nodeTypes.X3DViewpointNode.superClass.call(this,ctx);if(ctx&&ctx.xmlNode){var domNode=ctx.xmlNode;if(!domNode.resetView&&!domNode.getFieldOfView&&!domNode.getNear&&!domNode.getFar)
{domNode.resetView=function(){var that=this._x3domNode;that.resetView();that._nameSpace.doc.needRender=true;};domNode.getFieldOfView=function(){return this._x3domNode.getFieldOfView();};domNode.getNear=function(){return this._x3domNode.getNear();};domNode.getFar=function(){return this._x3domNode.getFar();};}}},{activate:function(prev){var viewarea=this._nameSpace.doc._viewarea;if(prev){viewarea.animateTo(this,prev._autoGen?null:prev);}
viewarea._needNavigationMatrixUpdate=true;x3dom.nodeTypes.X3DBindableNode.prototype.activate.call(this,prev);},deactivate:function(prev){x3dom.nodeTypes.X3DBindableNode.prototype.deactivate.call(this,prev);},getTransformation:function(){return this.getCurrentTransform();},getCenterOfRotation:function(){return new x3dom.fields.SFVec3f(0,0,0);},setCenterOfRotation:function(cor){this._vf.centerOfRotation.setValues(cor);},getFieldOfView:function(){return 1.57079633;},setView:function(newView){var mat=this.getCurrentTransform();this._viewMatrix=newView.mult(mat);},setViewAbsolute:function(newView)
{this._viewMatrix=newView},setProjectionMatrix:function(matrix)
{},resetView:function(){},getNear:function(){return 0.1;},getFar:function(){return 10000;},getImgPlaneHeightAtDistOne:function(){return 2.0;},getViewMatrix:function(){return null;},getProjectionMatrix:function(aspect){return null;}}));x3dom.registerNodeType("Viewpoint","Navigation",defineClass(x3dom.nodeTypes.X3DViewpointNode,function(ctx){x3dom.nodeTypes.Viewpoint.superClass.call(this,ctx);this.addField_SFFloat(ctx,'fieldOfView',0.785398);this.addField_SFVec3f(ctx,'position',0,0,10);this.addField_SFRotation(ctx,'orientation',0,0,0,1);this.addField_SFVec3f(ctx,'centerOfRotation',0,0,0);this.addField_SFFloat(ctx,'zNear',-1);this.addField_SFFloat(ctx,'zFar',-1);this._viewMatrix=x3dom.fields.SFMatrix4f.translation(this._vf.position).mult(this._vf.orientation.toMatrix()).inverse();this._projMatrix=null;this._lastAspect=1.0;this._zRatio=10000;this._zNear=this._vf.zNear;this._zFar=this._vf.zFar;this._imgPlaneHeightAtDistOne=2.0*Math.tan(this._vf.fieldOfView/2.0);},{fieldChanged:function(fieldName){if(fieldName=="position"||fieldName=="orientation"){this.resetView();}
else if(fieldName=="fieldOfView"||fieldName=="zNear"||fieldName=="zFar"){this._projMatrix=null;this._zNear=this._vf.zNear;this._zFar=this._vf.zFar;this._imgPlaneHeightAtDistOne=2.0*Math.tan(this._vf.fieldOfView/2.0);}
else if(fieldName.indexOf("bind")>=0){this.bind(this._vf.bind);}},setProjectionMatrix:function(matrix)
{this._projMatrix=matrix;},getCenterOfRotation:function(){return this._vf.centerOfRotation;},getViewMatrix:function(){return this._viewMatrix;},getFieldOfView:function(){return this._vf.fieldOfView;},resetView:function(){this._viewMatrix=x3dom.fields.SFMatrix4f.translation(this._vf.position).mult(this._vf.orientation.toMatrix()).inverse();},getNear:function(){return this._zNear;},getFar:function(){return this._zFar;},getImgPlaneHeightAtDistOne:function(){return this._imgPlaneHeightAtDistOne;},getProjectionMatrix:function(aspect)
{var fovy=this._vf.fieldOfView;var zfar=this._vf.zFar;var znear=this._vf.zNear;if(znear<=0||zfar<=0)
{var nearScale=0.8,farScale=1.2;var viewarea=this._nameSpace.doc._viewarea;var scene=viewarea._scene;var min=x3dom.fields.SFVec3f.copy(scene._lastMin);var max=x3dom.fields.SFVec3f.copy(scene._lastMax);var dia=max.subtract(min);var sRad=dia.length()/2;var mat=viewarea.getViewMatrix().inverse();var vp=mat.e3();var translation=new x3dom.fields.SFVec3f(0,0,0),scaleFactor=new x3dom.fields.SFVec3f(1,1,1);var rotation=new x3dom.fields.Quaternion(0,0,1,0),scaleOrientation=new x3dom.fields.Quaternion(0,0,1,0);mat.getTransform(translation,rotation,scaleFactor,scaleOrientation);var minScal=scaleFactor.x,maxScal=scaleFactor.x;if(maxScal<scaleFactor.y)maxScal=scaleFactor.y;if(minScal>scaleFactor.y)minScal=scaleFactor.y;if(maxScal<scaleFactor.z)maxScal=scaleFactor.z;if(minScal>scaleFactor.z)minScal=scaleFactor.z;if(maxScal>1)
nearScale/=maxScal;else if(minScal>x3dom.fields.Eps&&minScal<1)
farScale/=minScal;var sCenter=min.add(dia.multiply(0.5));var vDist=(vp.subtract(sCenter)).length();if(sRad){if(vDist>sRad)
znear=(vDist-sRad)*nearScale;else
znear=0;zfar=(vDist+sRad)*farScale;}
else{znear=0.1;zfar=100000;}
var zNearLimit=zfar/this._zRatio;znear=Math.max(znear,Math.max(x3dom.fields.Eps,zNearLimit));if(zfar>this._vf.zNear&&this._vf.zNear>0)
znear=this._vf.zNear;if(this._vf.zFar>znear)
zfar=this._vf.zFar;if(zfar<=znear)
zfar=znear+1;}
if(this._projMatrix==null)
{this._projMatrix=x3dom.fields.SFMatrix4f.perspective(fovy,aspect,znear,zfar);}
else if(this._zNear!=znear||this._zFar!=zfar)
{var div=znear-zfar;this._projMatrix._22=(znear+zfar)/div;this._projMatrix._23=2*znear*zfar/div;}
else if(this._lastAspect!=aspect)
{this._projMatrix._00=(1/Math.tan(fovy/2))/aspect;this._lastAspect=aspect;}
this._zNear=znear;this._zFar=zfar;return this._projMatrix;}}));x3dom.registerNodeType("OrthoViewpoint","Navigation",defineClass(x3dom.nodeTypes.X3DViewpointNode,function(ctx){x3dom.nodeTypes.OrthoViewpoint.superClass.call(this,ctx);this.addField_MFFloat(ctx,'fieldOfView',[-1,-1,1,1]);this.addField_SFVec3f(ctx,'position',0,0,10);this.addField_SFRotation(ctx,'orientation',0,0,0,1);this.addField_SFVec3f(ctx,'centerOfRotation',0,0,0);this.addField_SFFloat(ctx,'zNear',0.1);this.addField_SFFloat(ctx,'zFar',10000);this._viewMatrix=null;this._projMatrix=null;this._lastAspect=1.0;this.resetView();},{fieldChanged:function(fieldName){if(fieldName=="position"||fieldName=="orientation"){this.resetView();}
else if(fieldName=="fieldOfView"||fieldName=="zNear"||fieldName=="zFar"){this._projMatrix=null;this.resetView();}
else if(fieldName.indexOf("bind")>=0){this.bind(this._vf.bind);}},getCenterOfRotation:function(){return this._vf.centerOfRotation;},getViewMatrix:function(){return this._viewMatrix;},resetView:function(){var offset=x3dom.fields.SFMatrix4f.translation(new x3dom.fields.SFVec3f((this._vf.fieldOfView[0]+this._vf.fieldOfView[2])/2,(this._vf.fieldOfView[1]+this._vf.fieldOfView[3])/2,0));this._viewMatrix=x3dom.fields.SFMatrix4f.translation(this._vf.position).mult(this._vf.orientation.toMatrix());this._viewMatrix=this._viewMatrix.mult(offset).inverse();},getNear:function(){return this._vf.zNear;},getFar:function(){return this._vf.zFar;},getProjectionMatrix:function(aspect)
{if(this._projMatrix==null||this._lastAspect!=aspect)
{var near=this.getNear();var far=this.getFar();var left=this._vf.fieldOfView[0];var bottom=this._vf.fieldOfView[1];var right=this._vf.fieldOfView[2];var top=this._vf.fieldOfView[3];this._projMatrix=x3dom.fields.SFMatrix4f.ortho(left,right,bottom,top,near,far,aspect);}
this._lastAspect=aspect;return this._projMatrix;}}));x3dom.registerNodeType("Viewfrustum","Navigation",defineClass(x3dom.nodeTypes.X3DViewpointNode,function(ctx){x3dom.nodeTypes.Viewfrustum.superClass.call(this,ctx);this.addField_SFMatrix4f(ctx,'modelview',1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);this.addField_SFMatrix4f(ctx,'projection',1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);this._viewMatrix=this._vf.modelview.transpose().inverse();this._projMatrix=this._vf.projection.transpose();this._centerOfRotation=new x3dom.fields.SFVec3f(0,0,0);},{fieldChanged:function(fieldName){if(fieldName=="modelview"){this.resetView();}
else if(fieldName=="projection"){this._projMatrix=this._vf.projection.transpose();}
else if(fieldName.indexOf("bind")>=0){this.bind(this._vf.bind);}},getCenterOfRotation:function(){return this._centerOfRotation;},setCenterOfRotation:function(cor){this._centerOfRotation.setValues(cor);},getViewMatrix:function(){return this._viewMatrix;},getFieldOfView:function(){return(2.0*Math.atan(1.0/this._projMatrix._11));},getImgPlaneHeightAtDistOne:function(){return 2.0/this._projMatrix._11;},resetView:function(){this._viewMatrix=this._vf.modelview.transpose().inverse();this._centerOfRotation=new x3dom.fields.SFVec3f(0,0,0);},getProjectionMatrix:function(aspect){return this._projMatrix;}}));x3dom.registerNodeType("X3DNavigationInfoNode","Navigation",defineClass(x3dom.nodeTypes.X3DBindableNode,function(ctx){x3dom.nodeTypes.X3DNavigationInfoNode.superClass.call(this,ctx);}));x3dom.registerNodeType("NavigationInfo","Navigation",defineClass(x3dom.nodeTypes.X3DNavigationInfoNode,function(ctx){x3dom.nodeTypes.NavigationInfo.superClass.call(this,ctx);this.addField_SFBool(ctx,'headlight',true);this.addField_MFString(ctx,'type',["EXAMINE","ANY"]);this.addField_MFFloat(ctx,'typeParams',[-0.4,60,0.05,2.8]);this.addField_SFString(ctx,'explorationMode','all');this.addField_MFFloat(ctx,'avatarSize',[0.25,1.6,0.75]);this.addField_SFFloat(ctx,'visibilityLimit',0.0);this.addField_SFFloat(ctx,'speed',1.0);this.addField_SFTime(ctx,'transitionTime',1.0);this.addField_MFString(ctx,'transitionType',["LINEAR"]);this._validTypes=["none","examine","turntable","fly","freefly","lookat","lookaround","walk","game","helicopter","any"];this._heliUpdated=false;var type=this.checkType(this.getType());x3dom.debug.logInfo("NavType: "+type);},{fieldChanged:function(fieldName){if(fieldName=="typeParams"){this._heliUpdated=false;}
else if(fieldName=="type"){var type=this.checkType(this.getType());switch(type){case'game':this._nameSpace.doc._viewarea.initMouseState();break;case'helicopter':this._heliUpdated=false;break;case"turntable":this._nameSpace.doc._viewarea.initMouseState();this._nameSpace.doc._viewarea.initTurnTable(this);break;default:break;}
this._vf.type[0]=type;x3dom.debug.logInfo("Switch to "+type+" mode.");}},setType:function(type,viewarea){var navType=this.checkType(type.toLowerCase());var oldType=this.checkType(this.getType());switch(navType){case'game':if(oldType!==navType){if(viewarea)
viewarea.initMouseState();else
this._nameSpace.doc._viewarea.initMouseState();}
break;case'helicopter':if(oldType!==navType){this._heliUpdated=false;}
break;case"turntable":if(oldType!==navType){if(viewarea){viewarea.initMouseState();viewarea.initTurnTable(this);}
else{this._nameSpace.doc._viewarea.initMouseState();this._nameSpace.doc._viewarea.initTurnTable(this);}}
break;default:break;}
this._vf.type[0]=navType;x3dom.debug.logInfo("Switch to "+navType+" mode.");},getType:function(){var type=this._vf.type[0].toLowerCase();if(type.length<=1)
type="none";else if(type=="any")
type="examine";return type;},getTypeParams:function(){var length=this._vf.typeParams.length;var theta=(length>=1)?this._vf.typeParams[0]:-0.4;var height=(length>=2)?this._vf.typeParams[1]:60.0;var minAngle=(length>=3)?this._vf.typeParams[2]:x3dom.fields.Eps;var maxAngle=(length>=4)?this._vf.typeParams[3]:Math.PI-x3dom.fields.Eps;var params=[theta,height,minAngle,maxAngle];if(length>=5)
{params.push(this._vf.typeParams[4]);}
return params;},setTypeParams:function(params){for(var i=0;i<params.length;i++){this._vf.typeParams[i]=params[i];}},checkType:function(type){if(this._validTypes.indexOf(type)>-1){return type;}
else{x3dom.debug.logWarning(type+" is no valid navigation type, use one of "+
this._validTypes.toString());return"examine";}},getExplorationMode:function(){switch(this._vf.explorationMode.toLowerCase()){case"all":return 7;case"rotate":return 1;case"zoom":return 2;case"pan":return 4;case"none":return 0;default:return 7;}}}));x3dom.registerNodeType("Billboard","Navigation",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Billboard.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'axisOfRotation',0,1,0);this._eye=new x3dom.fields.SFVec3f(0,0,0);this._eyeViewUp=new x3dom.fields.SFVec3f(0,0,0);this._eyeLook=new x3dom.fields.SFVec3f(0,0,0);},{collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask);if(planeMask<=0){return;}
singlePath=false;var vol=this.getVolume();var min=x3dom.fields.SFVec3f.MAX();var max=x3dom.fields.SFVec3f.MIN();vol.getBounds(min,max);var mat_view=drawableCollection.viewMatrix;var center=new x3dom.fields.SFVec3f(0,0,0);center=mat_view.inverse().multMatrixPnt(center);var mat_view_model=mat_view.mult(transform);this._eye=transform.inverse().multMatrixPnt(center);this._eyeViewUp=new x3dom.fields.SFVec3f(mat_view_model._10,mat_view_model._11,mat_view_model._12);this._eyeLook=new x3dom.fields.SFVec3f(mat_view_model._20,mat_view_model._21,mat_view_model._22);var rotMat=x3dom.fields.SFMatrix4f.identity();var mid=max.add(min).multiply(0.5);var billboard_to_viewer=this._eye.subtract(mid);if(this._vf.axisOfRotation.equals(new x3dom.fields.SFVec3f(0,0,0),x3dom.fields.Eps)){var rot1=x3dom.fields.Quaternion.rotateFromTo(billboard_to_viewer,new x3dom.fields.SFVec3f(0,0,1));rotMat=rot1.toMatrix().transpose();var yAxis=rotMat.multMatrixPnt(new x3dom.fields.SFVec3f(0,1,0)).normalize();var zAxis=rotMat.multMatrixPnt(new x3dom.fields.SFVec3f(0,0,1)).normalize();if(!this._eyeViewUp.equals(new x3dom.fields.SFVec3f(0,0,0),x3dom.fields.Eps)){var rot2=x3dom.fields.Quaternion.rotateFromTo(this._eyeLook,zAxis);var rotatedyAxis=rot2.toMatrix().transpose().multMatrixVec(yAxis);var rot3=x3dom.fields.Quaternion.rotateFromTo(this._eyeViewUp,rotatedyAxis);rotMat=rot2.toMatrix().transpose().mult(rotMat);rotMat=rot3.toMatrix().transpose().mult(rotMat);}}
else{var normalPlane=this._vf.axisOfRotation.cross(billboard_to_viewer).normalize();if(this._eye.z<0){normalPlane=normalPlane.multiply(-1);}
var degreesToRotate=Math.asin(normalPlane.dot(new x3dom.fields.SFVec3f(0,0,1)));if(this._eye.z<0){degreesToRotate+=Math.PI;}
rotMat=x3dom.fields.SFMatrix4f.parseRotation(this._vf.axisOfRotation.x+", "+this._vf.axisOfRotation.y+", "+
this._vf.axisOfRotation.z+", "+degreesToRotate*(-1));}
var childTransform=this.transformMatrix(transform.mult(rotMat));for(var i=0,i_n=this._childNodes.length;i<i_n;i++)
{var cnode=this._childNodes[i];if(cnode){cnode.collectDrawableObjects(childTransform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}}}}));x3dom.registerNodeType("Collision","Navigation",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.Collision.superClass.call(this,ctx);this.addField_SFBool(ctx,"enabled",true);this.addField_SFNode("proxy",x3dom.nodeTypes.X3DGroupingNode);this.addField_SFTime(ctx,"collideTime",0);this.addField_SFBool(ctx,"isActive",true);},{collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask);if(planeMask<=0){return;}
var cnode,childTransform;if(singlePath){if(!this._graph.globalMatrix){this._graph.globalMatrix=this.transformMatrix(transform);}
childTransform=this._graph.globalMatrix;}
else{childTransform=this.transformMatrix(transform);}
for(var i=0,n=this._childNodes.length;i<n;i++)
{if((cnode=this._childNodes[i])&&(cnode!==this._cf.proxy.node)){cnode.collectDrawableObjects(childTransform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}}}}));x3dom.registerNodeType("X3DLODNode","Navigation",defineClass(x3dom.nodeTypes.X3DGroupingNode,function(ctx){x3dom.nodeTypes.X3DLODNode.superClass.call(this,ctx);this.addField_SFBool(ctx,"forceTransitions",false);this.addField_SFVec3f(ctx,"center",0,0,0);this._eye=new x3dom.fields.SFVec3f(0,0,0);},{collectDrawableObjects:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{if(singlePath&&(this._parentNodes.length>1))
singlePath=false;if(singlePath&&(invalidateCache=invalidateCache||this.cacheInvalid()))
this.invalidateCache();planeMask=drawableCollection.cull(transform,this.graphState(),singlePath,planeMask);if(planeMask<=0){return;}
singlePath=false;this.visitChildren(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);},visitChildren:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes){}}));x3dom.registerNodeType("LOD","Navigation",defineClass(x3dom.nodeTypes.X3DLODNode,function(ctx){x3dom.nodeTypes.LOD.superClass.call(this,ctx);this.addField_MFFloat(ctx,"range",[]);this._lastRangePos=-1;},{visitChildren:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{var i=0,n=this._childNodes.length;var mat_view=drawableCollection.viewMatrix;var center=new x3dom.fields.SFVec3f(0,0,0);center=mat_view.inverse().multMatrixPnt(center);this._eye=transform.inverse().multMatrixPnt(center);var len=this._vf.center.subtract(this._eye).length();while(i<this._vf.range.length&&len>this._vf.range[i]){i++;}
if(i&&i>=n){i=n-1;}
this._lastRangePos=i;var cnode=this._childNodes[i];if(n&&cnode)
{var childTransform=this.transformMatrix(transform);cnode.collectDrawableObjects(childTransform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}},getVolume:function()
{var vol=this._graph.volume;if(!this.volumeValid()&&this._vf.render)
{var child,childVol;if(this._lastRangePos>=0){child=this._childNodes[this._lastRangePos];childVol=(child&&child._vf.render===true)?child.getVolume():null;if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}
else{for(var i=0,n=this._childNodes.length;i<n;i++)
{if(!(child=this._childNodes[i])||child._vf.render!==true)
continue;childVol=child.getVolume();if(childVol&&childVol.isValid())
vol.extendBounds(childVol.min,childVol.max);}}}
return vol;},nodeChanged:function(){this.invalidateVolume();},fieldChanged:function(fieldName){if(fieldName=="render"||fieldName=="center"||fieldName=="range"){this.invalidateVolume();}}}));x3dom.registerNodeType("DynamicLOD","Navigation",defineClass(x3dom.nodeTypes.X3DLODNode,function(ctx){x3dom.nodeTypes.DynamicLOD.superClass.call(this,ctx);this.addField_SFFloat(ctx,'subScale',0.5);this.addField_SFVec2f(ctx,'size',2,2);this.addField_SFVec2f(ctx,'subdivision',1,1);this.addField_SFNode('root',x3dom.nodeTypes.X3DShapeNode);this.addField_SFString(ctx,'urlHead',"http://r");this.addField_SFString(ctx,'urlCenter',".ortho.tiles.virtualearth.net/tiles/h");this.addField_SFString(ctx,'urlTail',".png?g=-1");this.rootGeometry=new x3dom.nodeTypes.Plane(ctx);this.level=0;this.quadrant=4;this.cell="";},{nodeChanged:function()
{var root=this._cf.root.node;if(root==null||root._cf.geometry.node!=null)
return;this.rootGeometry._vf.size.setValues(this._vf.size);this.rootGeometry._vf.subdivision.setValues(this._vf.subdivision);this.rootGeometry._vf.center.setValues(this._vf.center);this.rootGeometry.fieldChanged("subdivision");this._cf.root.node.addChild(this.rootGeometry);this.rootGeometry.nodeChanged();this._cf.root.node.nodeChanged();this._nameSpace.doc.needRender=true;},visitChildren:function(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes)
{var root=this._cf.root.node;if(root==null)
return;var mat_view=drawableCollection.viewMatrix;var center=new x3dom.fields.SFVec3f(0,0,0);center=mat_view.inverse().multMatrixPnt(center);this._eye=transform.inverse().multMatrixPnt(center);var l,len=this._vf.center.subtract(this._eye).length();if(len>x3dom.fields.Eps&&len*this._vf.subScale<=this._vf.size.length()){if(this._childNodes.length<=1){var offset=new Array(new x3dom.fields.SFVec3f(-0.25*this._vf.size.x,0.25*this._vf.size.y,0),new x3dom.fields.SFVec3f(0.25*this._vf.size.x,0.25*this._vf.size.y,0),new x3dom.fields.SFVec3f(-0.25*this._vf.size.x,-0.25*this._vf.size.y,0),new x3dom.fields.SFVec3f(0.25*this._vf.size.x,-0.25*this._vf.size.y,0));for(l=0;l<4;l++){var node=new x3dom.nodeTypes.DynamicLOD();node._nameSpace=this._nameSpace;node._eye.setValues(this._eye);node.level=this.level+1;node.quadrant=l;node.cell=this.cell+l;node._vf.urlHead=this._vf.urlHead;node._vf.urlCenter=this._vf.urlCenter;node._vf.urlTail=this._vf.urlTail;node._vf.center=this._vf.center.add(offset[l]);node._vf.size=this._vf.size.multiply(0.5);node._vf.subdivision.setValues(this._vf.subdivision);var app=new x3dom.nodeTypes.Appearance();var tex=new x3dom.nodeTypes.ImageTexture();tex._nameSpace=this._nameSpace;tex._vf.url[0]=this._vf.urlHead+node.quadrant+this._vf.urlCenter+node.cell+this._vf.urlTail;app.addChild(tex);tex.nodeChanged();var shape=new x3dom.nodeTypes.Shape();shape._nameSpace=this._nameSpace;shape.addChild(app);app.nodeChanged();node.addChild(shape,"root");shape.nodeChanged();this.addChild(node);node.nodeChanged();}}
else{for(l=1;l<this._childNodes.length;l++){this._childNodes[l].collectDrawableObjects(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}}}
else{root.collectDrawableObjects(transform,drawableCollection,singlePath,invalidateCache,planeMask,clipPlanes);}},getVolume:function(){var vol=this._graph.volume;if(!vol.isValid()){vol.min.setValues(this._vf.center);vol.min.x-=0.5*this._vf.size.x;vol.min.y-=0.5*this._vf.size.y;vol.min.z-=x3dom.fields.Eps;vol.max.setValues(this._vf.center);vol.max.x+=0.5*this._vf.size.x;vol.max.y+=0.5*this._vf.size.y;vol.max.z+=x3dom.fields.Eps;}
return vol;}}));x3dom.registerNodeType("X3DFontStyleNode","Text",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.X3DFontStyleNode.superClass.call(this,ctx);}));x3dom.registerNodeType("FontStyle","Text",defineClass(x3dom.nodeTypes.X3DFontStyleNode,function(ctx){x3dom.nodeTypes.FontStyle.superClass.call(this,ctx);this.addField_MFString(ctx,'family',['SERIF']);this.addField_SFBool(ctx,'horizontal',true);this.addField_MFString(ctx,'justify',['BEGIN']);this.addField_SFString(ctx,'language',"");this.addField_SFBool(ctx,'leftToRight',true);this.addField_SFFloat(ctx,'size',1.0);this.addField_SFFloat(ctx,'spacing',1.0);this.addField_SFString(ctx,'style',"PLAIN");this.addField_SFBool(ctx,'topToBottom',true);},{fieldChanged:function(fieldName){if(fieldName=='family'||fieldName=='horizontal'||fieldName=='justify'||fieldName=='language'||fieldName=='leftToRight'||fieldName=='size'||fieldName=='spacing'||fieldName=='style'||fieldName=='topToBottom'){Array.forEach(this._parentNodes,function(node){node.fieldChanged(fieldName);});}}}));x3dom.nodeTypes.FontStyle.defaultNode=function(){if(!x3dom.nodeTypes.FontStyle._defaultNode){x3dom.nodeTypes.FontStyle._defaultNode=new x3dom.nodeTypes.FontStyle();x3dom.nodeTypes.FontStyle._defaultNode.nodeChanged();}
return x3dom.nodeTypes.FontStyle._defaultNode;};x3dom.registerNodeType("Text","Text",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.Text.superClass.call(this,ctx);this.addField_MFString(ctx,'string',[]);this.addField_MFFloat(ctx,'length',[]);this.addField_SFFloat(ctx,'maxExtent',0.0);this.addField_SFNode('fontStyle',x3dom.nodeTypes.X3DFontStyleNode);this._mesh._positions[0]=[];this._mesh._normals[0]=[0,0,1,0,0,1,0,0,1,0,0,1];this._mesh._texCoords[0]=[0,0,1,0,1,1,0,1];this._mesh._colors[0]=[];this._mesh._indices[0]=[0,1,2,2,3,0];this._mesh._invalidate=true;this._mesh._numFaces=2;this._mesh._numCoords=4;},{nodeChanged:function(){if(!this._cf.fontStyle.node){this.addChild(x3dom.nodeTypes.FontStyle.defaultNode());}
this.invalidateVolume();},fieldChanged:function(fieldName){if(fieldName=='string'||fieldName=='length'||fieldName=='maxExtent'){this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node.setAllDirty();});}}}));x3dom.registerNodeType("X3DSoundNode","Sound",defineClass(x3dom.nodeTypes.X3DChildNode,function(ctx){x3dom.nodeTypes.X3DSoundNode.superClass.call(this,ctx);}));x3dom.registerNodeType("Sound","Sound",defineClass(x3dom.nodeTypes.X3DSoundNode,function(ctx){x3dom.nodeTypes.Sound.superClass.call(this,ctx);this.addField_SFNode('source',x3dom.nodeTypes.X3DSoundSourceNode);},{nodeChanged:function()
{if(this._cf.source.node||!this._xmlNode){return;}
x3dom.debug.logInfo("No AudioClip child node given, searching for &lt;audio&gt; elements...");try{Array.forEach(this._xmlNode.childNodes,function(childDomNode){if(childDomNode.nodeType===1)
{x3dom.debug.logInfo("### Found &lt;"+childDomNode.nodeName+"&gt; tag.");if(childDomNode.localName.toLowerCase()==="audio")
{var loop=childDomNode.getAttribute("loop");loop=loop?(loop.toLowerCase()==="loop"):false;var newNode=childDomNode.cloneNode(false);childDomNode.parentNode.removeChild(childDomNode);childDomNode=null;if(navigator.appName!="Microsoft Internet Explorer"){document.body.appendChild(newNode);}
var startAudio=function(){newNode.play();};var audioDone=function(){if(loop){newNode.play();}};newNode.addEventListener("canplaythrough",startAudio,true);newNode.addEventListener("ended",audioDone,true);}}});}
catch(e){x3dom.debug.logException(e);}}}));x3dom.registerNodeType("X3DSoundSourceNode","Sound",defineClass(x3dom.nodeTypes.X3DTimeDependentNode,function(ctx){x3dom.nodeTypes.X3DSoundSourceNode.superClass.call(this,ctx);}));x3dom.registerNodeType("AudioClip","Sound",defineClass(x3dom.nodeTypes.X3DSoundSourceNode,function(ctx){x3dom.nodeTypes.AudioClip.superClass.call(this,ctx);this.addField_MFString(ctx,'url',[]);this.addField_SFBool(ctx,'enabled',false);this.addField_SFBool(ctx,'loop',false);this._audio=document.createElement('audio');if(navigator.appName!="Microsoft Internet Explorer"){document.body.appendChild(this._audio);}
this._sources=[];},{nodeChanged:function()
{this._createSources=function()
{this._sources=[];for(var i=0;i<this._vf.url.length;i++)
{var audioUrl=this._nameSpace.getURL(this._vf.url[i]);x3dom.debug.logInfo('Adding sound file: '+audioUrl);var src=document.createElement('source');src.setAttribute('src',audioUrl);this._sources.push(src);this._audio.appendChild(src);}};var that=this;this._startAudio=function()
{that._audio.loop=that._vf.loop?"loop":"";if(that._vf.enabled===true)
{that._audio.play();}};this._stopAudio=function()
{that._audio.pause();};this._audioEnded=function()
{if(that._vf.enabled===true&&that._vf.loop===true)
{that._startAudio();}};var log=function(e)
{x3dom.debug.logWarning("MediaEvent error:"+e);};this._audio.addEventListener("canplaythrough",this._startAudio,true);this._audio.addEventListener("ended",this._audioEnded,true);this._audio.addEventListener("error",log,true);this._audio.addEventListener("pause",this._audioEnded,true);this._createSources();},fieldChanged:function(fieldName)
{if(fieldName==="enabled")
{if(this._vf.enabled===true)
{this._startAudio();}
else
{this._stopAudio();}}
else if(fieldName==="loop")
{}
else if(fieldName==="url")
{this._stopAudio();while(this._audio.hasChildNodes())
{this._audio.removeChild(this._audio.firstChild);}
for(var i=0;i<this._vf.url.length;i++)
{var audioUrl=this._nameSpace.getURL(this._vf.url[i]);x3dom.debug.logInfo('Adding sound file: '+audioUrl);var src=document.createElement('source');src.setAttribute('src',audioUrl);this._audio.appendChild(src);}}},shutdown:function(){if(this._audio){this._audio.pause();while(this._audio.hasChildNodes()){this._audio.removeChild(this._audio.firstChild);}
document.body.removeChild(this._audio);this._audio=null;}}}));x3dom.registerNodeType("X3DTextureTransformNode","Texturing",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.X3DTextureTransformNode.superClass.call(this,ctx);}));x3dom.registerNodeType("TextureTransform","Texturing",defineClass(x3dom.nodeTypes.X3DTextureTransformNode,function(ctx){x3dom.nodeTypes.TextureTransform.superClass.call(this,ctx);this.addField_SFVec2f(ctx,'center',0,0);this.addField_SFFloat(ctx,'rotation',0);this.addField_SFVec2f(ctx,'scale',1,1);this.addField_SFVec2f(ctx,'translation',0,0);var negCenter=new x3dom.fields.SFVec3f(-this._vf.center.x,-this._vf.center.y,1);var posCenter=new x3dom.fields.SFVec3f(this._vf.center.x,this._vf.center.y,0);var trans3=new x3dom.fields.SFVec3f(this._vf.translation.x,this._vf.translation.y,0);var scale3=new x3dom.fields.SFVec3f(this._vf.scale.x,this._vf.scale.y,0);this._trafo=x3dom.fields.SFMatrix4f.translation(negCenter).mult(x3dom.fields.SFMatrix4f.scale(scale3)).mult(x3dom.fields.SFMatrix4f.rotationZ(this._vf.rotation)).mult(x3dom.fields.SFMatrix4f.translation(posCenter.add(trans3)));},{fieldChanged:function(fieldName){if(fieldName=='center'||fieldName=='rotation'||fieldName=='scale'||fieldName=='translation'){var negCenter=new x3dom.fields.SFVec3f(-this._vf.center.x,-this._vf.center.y,1);var posCenter=new x3dom.fields.SFVec3f(this._vf.center.x,this._vf.center.y,0);var trans3=new x3dom.fields.SFVec3f(this._vf.translation.x,this._vf.translation.y,0);var scale3=new x3dom.fields.SFVec3f(this._vf.scale.x,this._vf.scale.y,0);this._trafo=x3dom.fields.SFMatrix4f.translation(negCenter).mult(x3dom.fields.SFMatrix4f.scale(scale3)).mult(x3dom.fields.SFMatrix4f.rotationZ(this._vf.rotation)).mult(x3dom.fields.SFMatrix4f.translation(posCenter.add(trans3)));}},texTransformMatrix:function(){return this._trafo;}}));x3dom.registerNodeType("TextureProperties","Texturing",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.TextureProperties.superClass.call(this,ctx);this.addField_SFFloat(ctx,'anisotropicDegree',1.0);this.addField_SFColorRGBA(ctx,'borderColor',0,0,0,0);this.addField_SFInt32(ctx,'borderWidth',0);this.addField_SFString(ctx,'boundaryModeS',"REPEAT");this.addField_SFString(ctx,'boundaryModeT',"REPEAT");this.addField_SFString(ctx,'boundaryModeR',"REPEAT");this.addField_SFString(ctx,'magnificationFilter',"FASTEST");this.addField_SFString(ctx,'minificationFilter',"FASTEST");this.addField_SFString(ctx,'textureCompression',"FASTEST");this.addField_SFFloat(ctx,'texturePriority',0);this.addField_SFBool(ctx,'generateMipMaps',false);},{fieldChanged:function(fieldName)
{if(this._vf.hasOwnProperty(fieldName)){Array.forEach(this._parentNodes,function(texture){Array.forEach(texture._parentNodes,function(app){Array.forEach(app._parentNodes,function(shape){shape._dirty.texture=true;});});});this._nameSpace.doc.needRender=true;}}}));x3dom.registerNodeType("X3DTextureNode","Texturing",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.X3DTextureNode.superClass.call(this,ctx);this.addField_SFInt32(ctx,'origChannelCount',0);this.addField_MFString(ctx,'url',[]);this.addField_SFBool(ctx,'repeatS',true);this.addField_SFBool(ctx,'repeatT',true);this.addField_SFBool(ctx,'scale',true);this.addField_SFString(ctx,'crossOrigin','');this.addField_SFNode('textureProperties',x3dom.nodeTypes.TextureProperties);this._needPerFrameUpdate=false;this._isCanvas=false;this._type="diffuseMap";this._blending=(this._vf.origChannelCount==1||this._vf.origChannelCount==2);},{invalidateGLObject:function()
{Array.forEach(this._parentNodes,function(app){Array.forEach(app._parentNodes,function(shape){if(x3dom.isa(shape,x3dom.nodeTypes.X3DShapeNode)){shape._dirty.texture=true;}
else{Array.forEach(shape._parentNodes,function(realShape){if(x3dom.isa(realShape,x3dom.nodeTypes.X3DShapeNode)){realShape._dirty.texture=true;}else{Array.forEach(realShape._parentNodes,function(realShape2){if(x3dom.isa(realShape2,x3dom.nodeTypes.X3DShapeNode)){realShape2._dirty.texture=true;}});}});}});});this._nameSpace.doc.needRender=true;},parentAdded:function(parent)
{Array.forEach(parent._parentNodes,function(shape){if(x3dom.isa(shape,x3dom.nodeTypes.Shape)){shape._dirty.texture=true;}
else{Array.forEach(shape._parentNodes,function(realShape){realShape._dirty.texture=true;});}});},parentRemoved:function(parent)
{Array.forEach(parent._parentNodes,function(shape){if(x3dom.isa(shape,x3dom.nodeTypes.Shape)){shape._dirty.texture=true;}
else{Array.forEach(shape._parentNodes,function(realShape){realShape._dirty.texture=true;});}});},fieldChanged:function(fieldName)
{if(fieldName=="url"||fieldName=="origChannelCount"||fieldName=="repeatS"||fieldName=="repeatT"||fieldName=="scale"||fieldName=="crossOrigin")
{var that=this;Array.forEach(this._parentNodes,function(app){if(x3dom.isa(app,x3dom.nodeTypes.X3DAppearanceNode)){app.nodeChanged();Array.forEach(app._parentNodes,function(shape){shape._dirty.texture=true;});}
else if(x3dom.isa(app,x3dom.nodeTypes.MultiTexture)){Array.forEach(app._parentNodes,function(realApp){realApp.nodeChanged();Array.forEach(realApp._parentNodes,function(shape){shape._dirty.texture=true;});});}
else if(x3dom.isa(app,x3dom.nodeTypes.ImageGeometry)){var cf=null;if(that._xmlNode&&that._xmlNode.hasAttribute('containerField')){cf=that._xmlNode.getAttribute('containerField');app._dirty[cf]=true;}}
else if(x3dom.nodeTypes.X3DVolumeDataNode!==undefined){if(x3dom.isa(app,x3dom.nodeTypes.X3DVolumeRenderStyleNode)){if(that._xmlNode&&that._xmlNode.hasAttribute('containerField')){if(app._volumeDataParent){app._volumeDataParent._dirty.texture=true;}else{var volumeDataParent=app._parentNodes[0];while(!x3dom.isa(volumeDataParent,x3dom.nodeTypes.X3DVolumeDataNode)&&x3dom.isa(volumeDataParent,x3dom.nodeTypes.X3DNode)){volumeDataParent=volumeDataParent._parentNodes[0];}
if(x3dom.isa(volumeDataParent,x3dom.nodeTypes.X3DNode)){volumeDataParent._dirty.texture=true;}}}}else if(x3dom.isa(app,x3dom.nodeTypes.X3DVolumeDataNode)){if(that._xmlNode&&that._xmlNode.hasAttribute('containerField')){app._dirty.texture=true;}}}});}},getTexture:function(pos){if(pos===0){return this;}
return null;},size:function(){return 1;}}));x3dom.registerNodeType("MultiTexture","Texturing",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.MultiTexture.superClass.call(this,ctx);this.addField_MFNode('texture',x3dom.nodeTypes.X3DTextureNode);},{getTexture:function(pos){if(pos>=0&&pos<this._cf.texture.nodes.length){return this._cf.texture.nodes[pos];}
return null;},getTextures:function(){return this._cf.texture.nodes;},size:function(){return this._cf.texture.nodes.length;}}));x3dom.registerNodeType("Texture","Texturing",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.Texture.superClass.call(this,ctx);this.addField_SFBool(ctx,'hideChildren',true);this._video=null;this._intervalID=0;this._canvas=null;},{nodeChanged:function()
{if(this._vf.url.length||!this._xmlNode){return;}
x3dom.debug.logInfo("No Texture URL given, searching for &lt;img&gt; elements...");var that=this;try{Array.forEach(this._xmlNode.childNodes,function(childDomNode){if(childDomNode.nodeType===1){var url=childDomNode.getAttribute("src");if(url){that._vf.url.push(url);x3dom.debug.logInfo(that._vf.url[that._vf.url.length-1]);if(childDomNode.localName.toLowerCase()==="video"){that._needPerFrameUpdate=true;that._video=document.createElement('video');that._video.setAttribute('preload','auto');that._video.setAttribute('muted','muted');var p=document.getElementsByTagName('body')[0];p.appendChild(that._video);that._video.style.display="none";that._video.style.visibility="hidden";}}
else if(childDomNode.localName.toLowerCase()==="canvas"){that._needPerFrameUpdate=true;that._isCanvas=true;that._canvas=childDomNode;}
if(childDomNode.style&&that._vf.hideChildren){childDomNode.style.display="none";childDomNode.style.visibility="hidden";}
x3dom.debug.logInfo("### Found &lt;"+childDomNode.nodeName+"&gt; tag.");}});}
catch(e){x3dom.debug.logException(e);}},shutdown:function(){if(this._video){this._video.pause();while(this._video.hasChildNodes()){this._video.removeChild(this._video.firstChild);}
document.body.removeChild(this._video);this._video=null;}}}));x3dom.registerNodeType("RenderedTexture","Texturing",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.RenderedTexture.superClass.call(this,ctx);if(ctx)
ctx.doc._nodeBag.renderTextures.push(this);else
x3dom.debug.logWarning("RenderedTexture: No runtime context found!");this.addField_SFNode('viewpoint',x3dom.nodeTypes.X3DViewpointNode);this.addField_SFNode('background',x3dom.nodeTypes.X3DBackgroundNode);this.addField_SFNode('fog',x3dom.nodeTypes.X3DFogNode);this.addField_SFNode('scene',x3dom.nodeTypes.X3DNode);this.addField_MFNode('excludeNodes',x3dom.nodeTypes.X3DNode);this.addField_MFInt32(ctx,'dimensions',[128,128,4]);this.addField_SFString(ctx,'update','NONE');this.addField_SFBool(ctx,'showNormals',false);this.addField_SFString(ctx,'stereoMode','NONE');this.addField_SFFloat(ctx,'interpupillaryDistance',0.064);this.addField_SFBool(ctx,'oculusRiftVersion',1);this.hScreenSize=(this._vf.oculusRiftVersion==1)?0.14976:0.12576;this.vScreenSize=(this._vf.oculusRiftVersion==1)?0.09356:0.07074;this.vScreenCenter=this.vScreenSize/2;this.eyeToScreenDistance=0.041;this.lensSeparationDistance=0.0635;this.distortionK=[1.0,0.22,0.24,0.0];this.lensCenter=0.151976495726;x3dom.debug.assert(this._vf.dimensions.length>=3,"RenderedTexture.dimensions requires at least 3 entries.");this._clearParents=true;this._needRenderUpdate=true;},{nodeChanged:function()
{this._clearParents=true;this._needRenderUpdate=true;},fieldChanged:function(fieldName)
{switch(fieldName)
{case"excludeNodes":this._clearParents=true;break;case"update":if(this._vf.update.toUpperCase()=="NEXT_FRAME_ONLY"||this._vf.update.toUpperCase()=="ALWAYS"){this._needRenderUpdate=true;}
break;default:break;}},getViewMatrix:function()
{if(this._clearParents&&this._cf.excludeNodes.nodes.length){var that=this;Array.forEach(this._cf.excludeNodes.nodes,function(node){for(var i=0,n=node._parentNodes.length;i<n;i++){if(node._parentNodes[i]===that){node._parentNodes.splice(i,1);node.parentRemoved(that);}}});this._clearParents=false;}
var locScene=this._cf.scene.node;var scene=this._nameSpace.doc._scene;var vbP=scene.getViewpoint();var view=this._cf.viewpoint.node;var ret_mat=null;if(view===null||view===vbP){ret_mat=this._nameSpace.doc._viewarea.getViewMatrix();}
else if(locScene&&locScene!==scene){ret_mat=view.getViewMatrix()}
else{var mat_viewpoint=view.getCurrentTransform();ret_mat=view.getViewMatrix().mult(mat_viewpoint.inverse());}
var stereoMode=this._vf.stereoMode.toUpperCase();if(stereoMode!="NONE"){var d=this._vf.interpupillaryDistance/2;if(stereoMode=="RIGHT_EYE"){d=-d;}
var modifier=new x3dom.fields.SFMatrix4f(1,0,0,d,0,1,0,0,0,0,1,0,0,0,0,1);ret_mat=modifier.mult(ret_mat);}
return ret_mat;},getProjectionMatrix:function()
{var doc=this._nameSpace.doc;var vbP=doc._scene.getViewpoint();var view=this._cf.viewpoint.node;var ret_mat=null;var f,w=this._vf.dimensions[0],h=this._vf.dimensions[1];var stereoMode=this._vf.stereoMode.toUpperCase();var stereo=(stereoMode!="NONE");if(view===null||view===vbP){ret_mat=x3dom.fields.SFMatrix4f.copy(doc._viewarea.getProjectionMatrix());if(stereo){f=2*Math.atan(this.vScreenSize/(2*this.eyeToScreenDistance));f=1/Math.tan(f/2);}
else{f=1/Math.tan(vbP._vf.fieldOfView/2);}
ret_mat._00=f/(w/h);ret_mat._11=f;}
else{ret_mat=view.getProjectionMatrix(w/h);}
if(stereo){var hp=this.lensCenter;if(stereoMode=="RIGHT_EYE"){hp=-hp;}
var modifier=new x3dom.fields.SFMatrix4f(1,0,0,hp,0,1,0,0,0,0,1,0,0,0,0,1);ret_mat=modifier.mult(ret_mat);}
return ret_mat;},getWCtoCCMatrix:function()
{var view=this.getViewMatrix();var proj=this.getProjectionMatrix();return proj.mult(view);},parentRemoved:function(parent)
{if(this._parentNodes.length===0){var doc=this.findX3DDoc();for(var i=0,n=doc._nodeBag.renderTextures.length;i<n;i++){if(doc._nodeBag.renderTextures[i]===this){doc._nodeBag.renderTextures.splice(i,1);}}}
if(this._cf.scene.node){this._cf.scene.node.parentRemoved(this);}},requirePingPong:function()
{return false;}}));x3dom.registerNodeType("RefinementTexture","Texturing",defineClass(x3dom.nodeTypes.RenderedTexture,function(ctx){x3dom.nodeTypes.RefinementTexture.superClass.call(this,ctx);this.addField_SFString(ctx,'stamp0',"gpuii/stamps/0.gif");this.addField_SFString(ctx,'stamp1',"gpuii/stamps/1.gif");this.addField_SFBool(ctx,'autoRefinement',true);this.addField_SFString(ctx,'format','jpg');this.addField_SFInt32(ctx,'iterations',7);this.addField_SFInt32(ctx,'maxLevel',this._vf.iterations);if(this._vf.iterations%2===0){var temp=this._vf.stamp0;this._vf.stamp0=this._vf.stamp1;this._vf.stamp1=temp;}
this._vf.iterations=(this._vf.iterations>11)?11:this._vf.iterations;this._vf.iterations=(this._vf.iterations<3)?3:this._vf.iterations;this._vf.maxLevel=(this._vf.maxLevel>11)?11:this._vf.maxLevel;this._vf.maxLevel=(this._vf.maxLevel<3)?3:this._vf.maxLevel;this._vf.maxLevel=(this._vf.maxLevel>this._vf.iterations)?this._vf.iterations:this._vf.maxLevel;var repeatConfig=[{x:4,y:8},{x:8,y:8},{x:8,y:16},{x:16,y:16},{x:16,y:32},{x:32,y:32},{x:32,y:64},{x:64,y:64},{x:64,y:128}];this._repeat=new x3dom.fields.SFVec2f(this._vf.dimensions[0]/repeatConfig[this._vf.iterations-3].x,this._vf.dimensions[1]/repeatConfig[this._vf.iterations-3].y);this._renderedImage=0;this._currLoadLevel=0;this._loadLevel=1;},{nextLevel:function(){if(this._loadLevel<this._vf.maxLevel){this._loadLevel++;this._nameSpace.doc.needRender=true;}},requirePingPong:function(){return(this._currLoadLevel<=this._vf.maxLevel&&this._renderedImage<this._loadLevel);}}));x3dom.registerNodeType("PixelTexture","Texturing",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.PixelTexture.superClass.call(this,ctx);this.addField_SFImage(ctx,'image',0,0,0);},{fieldChanged:function(fieldName)
{if(fieldName=="image"){this.invalidateGLObject();}},getWidth:function(){return this._vf.image.width;},getHeight:function(){return this._vf.image.height;},getComponents:function(){return this._vf.image.comp;},setPixel:function(x,y,color,update){update=(update==undefined)?true:update;if(this._x3domTexture){this._x3domTexture.setPixel(x,y,[color.r*255,color.g*255,color.b*255,color.a*255],update);this._vf.image.setPixel(x,y,color);}
else
{this._vf.image.setPixel(x,y,color);if(update){this.invalidateGLObject();}}},getPixel:function(x,y){return this._vf.image.getPixel(x,y);},setPixels:function(pixels,update){update=(update==undefined)?true:update;this._vf.image.setPixels(pixels);if(update){this.invalidateGLObject();}},getPixels:function(){return this._vf.image.getPixels();}}));x3dom.registerNodeType("ImageTexture","Texturing",defineClass(x3dom.nodeTypes.Texture,function(ctx){x3dom.nodeTypes.ImageTexture.superClass.call(this,ctx);}));x3dom.registerNodeType("MovieTexture","Texturing",defineClass(x3dom.nodeTypes.Texture,function(ctx){x3dom.nodeTypes.MovieTexture.superClass.call(this,ctx);this.addField_SFBool(ctx,'loop',false);this.addField_SFFloat(ctx,'speed',1.0);this.addField_SFTime(ctx,'pauseTime',0);this.addField_SFFloat(ctx,'pitch',1.0);this.addField_SFTime(ctx,'resumeTime',0);this.addField_SFTime(ctx,'startTime',0);this.addField_SFTime(ctx,'stopTime',0);}));x3dom.registerNodeType("X3DTextureCoordinateNode","Texturing",defineClass(x3dom.nodeTypes.X3DGeometricPropertyNode,function(ctx){x3dom.nodeTypes.X3DTextureCoordinateNode.superClass.call(this,ctx);},{fieldChanged:function(fieldName){if(fieldName==="texCoord"||fieldName==="point"||fieldName==="parameter"||fieldName==="mode")
{Array.forEach(this._parentNodes,function(node){node.fieldChanged("texCoord");});}},parentAdded:function(parent){if(parent._mesh&&parent._cf.texCoord.node!==this){parent.fieldChanged("texCoord");}}}));x3dom.registerNodeType("TextureCoordinate","Texturing",defineClass(x3dom.nodeTypes.X3DTextureCoordinateNode,function(ctx){x3dom.nodeTypes.TextureCoordinate.superClass.call(this,ctx);this.addField_MFVec2f(ctx,'point',[]);}));x3dom.registerNodeType("TextureCoordinateGenerator","Texturing",defineClass(x3dom.nodeTypes.X3DTextureCoordinateNode,function(ctx){x3dom.nodeTypes.TextureCoordinateGenerator.superClass.call(this,ctx);this.addField_SFString(ctx,'mode',"SPHERE");this.addField_MFFloat(ctx,'parameter',[]);}));x3dom.registerNodeType("MultiTextureCoordinate","Texturing",defineClass(x3dom.nodeTypes.X3DTextureCoordinateNode,function(ctx){x3dom.nodeTypes.MultiTextureCoordinate.superClass.call(this,ctx);this.addField_MFNode('texCoord',x3dom.nodeTypes.X3DTextureCoordinateNode);}));x3dom.registerNodeType("ImageTextureAtlas","Texturing",defineClass(x3dom.nodeTypes.Texture,function(ctx){x3dom.nodeTypes.ImageTextureAtlas.superClass.call(this,ctx);this.addField_SFInt32(ctx,'numberOfSlices',0);this.addField_SFInt32(ctx,'slicesOverX',0);this.addField_SFInt32(ctx,'slicesOverY',0);}));x3dom.registerNodeType("X3DEnvironmentTextureNode","CubeMapTexturing",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.X3DEnvironmentTextureNode.superClass.call(this,ctx);},{getTexUrl:function(){return[];},getTexSize:function(){return-1;}}));x3dom.registerNodeType("ComposedCubeMapTexture","CubeMapTexturing",defineClass(x3dom.nodeTypes.X3DEnvironmentTextureNode,function(ctx){x3dom.nodeTypes.ComposedCubeMapTexture.superClass.call(this,ctx);this.addField_SFNode('back',x3dom.nodeTypes.Texture);this.addField_SFNode('front',x3dom.nodeTypes.Texture);this.addField_SFNode('bottom',x3dom.nodeTypes.Texture);this.addField_SFNode('top',x3dom.nodeTypes.Texture);this.addField_SFNode('left',x3dom.nodeTypes.Texture);this.addField_SFNode('right',x3dom.nodeTypes.Texture);this._type="cubeMap";},{getTexUrl:function(){return[this._nameSpace.getURL(this._cf.back.node._vf.url[0]),this._nameSpace.getURL(this._cf.front.node._vf.url[0]),this._nameSpace.getURL(this._cf.bottom.node._vf.url[0]),this._nameSpace.getURL(this._cf.top.node._vf.url[0]),this._nameSpace.getURL(this._cf.left.node._vf.url[0]),this._nameSpace.getURL(this._cf.right.node._vf.url[0])];}}));x3dom.registerNodeType("GeneratedCubeMapTexture","CubeMapTexturing",defineClass(x3dom.nodeTypes.X3DEnvironmentTextureNode,function(ctx){x3dom.nodeTypes.GeneratedCubeMapTexture.superClass.call(this,ctx);this.addField_SFInt32(ctx,'size',128);this.addField_SFString(ctx,'update','NONE');this._type="cubeMap";x3dom.debug.logWarning("GeneratedCubeMapTexture NYI");},{getTexSize:function(){return this._vf.size;}}));x3dom.registerNodeType("Uniform","Shaders",defineClass(x3dom.nodeTypes.Field,function(ctx){x3dom.nodeTypes.Uniform.superClass.call(this,ctx);}));x3dom.registerNodeType("SurfaceShaderTexture","Shaders",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.SurfaceShaderTexture.superClass.call(this,ctx);this.addField_SFInt32(ctx,'textureCoordinatesId',0);this.addField_SFString(ctx,'channelMask',"DEFAULT");this.addField_SFBool(ctx,'isSRGB',false);this.addField_SFNode('texture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('textureTransform',x3dom.nodeTypes.X3DTextureTransformNode);}));x3dom.registerNodeType("X3DShaderNode","Shaders",defineClass(x3dom.nodeTypes.X3DAppearanceChildNode,function(ctx){x3dom.nodeTypes.X3DShaderNode.superClass.call(this,ctx);this.addField_SFString(ctx,'language',"");}));x3dom.registerNodeType("CommonSurfaceShader","Shaders",defineClass(x3dom.nodeTypes.X3DShaderNode,function(ctx){x3dom.nodeTypes.CommonSurfaceShader.superClass.call(this,ctx);this.addField_SFInt32(ctx,'tangentTextureCoordinatesId',-1);this.addField_SFInt32(ctx,'binormalTextureCoordinatesId',-1);this.addField_SFVec3f(ctx,'emissiveFactor',0,0,0);this.addField_SFInt32(ctx,'emissiveTextureId',-1);this.addField_SFInt32(ctx,'emissiveTextureCoordinatesId',0);this.addField_SFString(ctx,'emissiveTextureChannelMask','rgb');this.addField_SFVec3f(ctx,'ambientFactor',0.2,0.2,0.2);this.addField_SFInt32(ctx,'ambientTextureId',-1);this.addField_SFInt32(ctx,'ambientTextureCoordinatesId',0);this.addField_SFString(ctx,'ambientTextureChannelMask','rgb');this.addField_SFVec3f(ctx,'diffuseFactor',0.8,0.8,0.8);this.addField_SFInt32(ctx,'diffuseTextureId',-1);this.addField_SFInt32(ctx,'diffuseTextureCoordinatesId',0);this.addField_SFString(ctx,'diffuseTextureChannelMask','rgb');this.addField_SFVec3f(ctx,'specularFactor',0,0,0);this.addField_SFInt32(ctx,'specularTextureId',-1);this.addField_SFInt32(ctx,'specularTextureCoordinatesId',0);this.addField_SFString(ctx,'specularTextureChannelMask','rgb');this.addField_SFFloat(ctx,'shininessFactor',0.2);this.addField_SFInt32(ctx,'shininessTextureId',-1);this.addField_SFInt32(ctx,'shininessTextureCoordinatesId',0);this.addField_SFString(ctx,'shininessTextureChannelMask','a');this.addField_SFString(ctx,'normalFormat','UNORM');this.addField_SFString(ctx,'normalSpace','TANGENT');this.addField_SFInt32(ctx,'normalTextureId',-1);this.addField_SFInt32(ctx,'normalTextureCoordinatesId',0);this.addField_SFString(ctx,'normalTextureChannelMask','rgb');this.addField_SFVec3f(ctx,'reflectionFactor',0,0,0);this.addField_SFInt32(ctx,'reflectionTextureId',-1);this.addField_SFInt32(ctx,'reflectionTextureCoordinatesId',0);this.addField_SFString(ctx,'reflectionTextureChannelMask','rgb');this.addField_SFVec3f(ctx,'transmissionFactor',0,0,0);this.addField_SFInt32(ctx,'transmissionTextureId',-1);this.addField_SFInt32(ctx,'transmissionTextureCoordinatesId',0);this.addField_SFString(ctx,'transmissionTextureChannelMask','rgb');this.addField_SFVec3f(ctx,'environmentFactor',1,1,1);this.addField_SFInt32(ctx,'environmentTextureId',-1);this.addField_SFInt32(ctx,'environmentTextureCoordinatesId',0);this.addField_SFString(ctx,'environmentTextureChannelMask','rgb');this.addField_SFFloat(ctx,'relativeIndexOfRefraction',1);this.addField_SFFloat(ctx,'fresnelBlend',0);this.addField_SFString(ctx,'displacementAxis','y');this.addField_SFFloat(ctx,'displacementFactor',255.0);this.addField_SFInt32(ctx,'displacementTextureId',-1);this.addField_SFInt32(ctx,'displacementTextureCoordinatesId',0);this.addField_SFNode('emissiveTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('ambientTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('diffuseTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('specularTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('shininessTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('normalTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('reflectionTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('transmissionTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('environmentTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('displacementTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('diffuseDisplacementTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('multiDiffuseAlphaTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('multiSpecularShininessTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('multiEmissiveAmbientTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('multiVisibilityTexture',x3dom.nodeTypes.X3DTextureNode);this.addField_SFVec3f(ctx,'normalScale',2,2,2);this.addField_SFVec3f(ctx,'normalBias',-1,-1,-1);this.addField_SFFloat(ctx,'alphaFactor',1);this.addField_SFBool(ctx,'invertAlphaTexture',false);this.addField_SFInt32(ctx,'alphaTextureId',-1);this.addField_SFInt32(ctx,'alphaTextureCoordinatesId',0);this.addField_SFString(ctx,'alphaTextureChannelMask','a');this.addField_SFNode('alphaTexture',x3dom.nodeTypes.X3DTextureNode);this._dirty={};},{getDiffuseMap:function()
{if(this._cf.diffuseTexture.node){if(x3dom.isa(this._cf.diffuseTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.diffuseTexture.node._cf.texture.node._type="diffuseMap";return this._cf.diffuseTexture.node._cf.texture.node;}else{this._cf.diffuseTexture.node._type="diffuseMap";return this._cf.diffuseTexture.node;}}else{return null;}},getNormalMap:function()
{if(this._cf.normalTexture.node){if(x3dom.isa(this._cf.normalTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.normalTexture.node._cf.texture.node._type="normalMap";return this._cf.normalTexture.node._cf.texture.node;}else{this._cf.normalTexture.node._type="normalMap";return this._cf.normalTexture.node;}}else{return null;}},getAmbientMap:function()
{if(this._cf.ambientTexture.node){if(x3dom.isa(this._cf.ambientTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.ambientTexture.node._cf.texture.node._type="ambientMap";return this._cf.ambientTexture.node._cf.texture.node;}else{this._cf.ambientTexture.node._type="ambientMap";return this._cf.ambientTexture.node;}}else{return null;}},getSpecularMap:function()
{if(this._cf.specularTexture.node){if(x3dom.isa(this._cf.specularTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.specularTexture.node._cf.texture.node._type="specularMap";return this._cf.specularTexture.node._cf.texture.node;}else{this._cf.specularTexture.node._type="specularMap";return this._cf.specularTexture.node;}}else{return null;}},getShininessMap:function()
{if(this._cf.shininessTexture.node){if(x3dom.isa(this._cf.shininessTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.shininessTexture.node._cf.texture.node._type="shininessMap";return this._cf.shininessTexture.node._cf.texture.node;}else{this._cf.shininessTexture.node._type="shininessMap";return this._cf.shininessTexture.node;}}else{return null;}},getAlphaMap:function()
{if(this._cf.alphaTexture.node){if(x3dom.isa(this._cf.alphaTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.alphaTexture.node._cf.texture.node._type="alphaMap";return this._cf.alphaTexture.node._cf.texture.node;}else{this._cf.alphaTexture.node._type="alphaMap";return this._cf.alphaTexture.node;}}else{return null;}},getDisplacementMap:function()
{if(this._cf.displacementTexture.node){if(x3dom.isa(this._cf.displacementTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.displacementTexture.node._cf.texture.node._type="displacementMap";return this._cf.displacementTexture.node._cf.texture.node;}else{this._cf.displacementTexture.node._type="displacementMap";return this._cf.displacementTexture.node;}}else{return null;}},getDiffuseDisplacementMap:function()
{if(this._cf.diffuseDisplacementTexture.node){if(x3dom.isa(this._cf.diffuseDisplacementTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.diffuseDisplacementTexture.node._cf.texture.node._type="diffuseDisplacementMap";return this._cf.diffuseDisplacementTexture.node._cf.texture.node;}else{this._cf.diffuseDisplacementTexture.node._type="diffuseDisplacementMap";return this._cf.diffuseDisplacementTexture.node;}}else{return null;}},getMultiDiffuseAlphaMap:function()
{if(this._cf.multiDiffuseAlphaTexture.node){if(x3dom.isa(this._cf.multiDiffuseAlphaTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.multiDiffuseAlphaTexture.node._cf.texture.node._type="multiDiffuseAlphaMap";return this._cf.multiDiffuseAlphaTexture.node._cf.texture.node;}else{this._cf.multiDiffuseAlphaTexture.node._type="multiDiffuseAlphaMap";return this._cf.multiDiffuseAlphaTexture.node;}}else{return null;}},getMultiEmissiveAmbientMap:function()
{if(this._cf.multiEmissiveAmbientTexture.node){if(x3dom.isa(this._cf.multiEmissiveAmbientTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.multiEmissiveAmbientTexture.node._cf.texture.node._type="multiEmissiveAmbientMap";return this._cf.multiEmissiveAmbientTexture.node._cf.texture.node;}else{this._cf.multiEmissiveAmbientTexture.node._type="multiEmissiveAmbientMap";return this._cf.multiEmissiveAmbientTexture.node;}}else{return null;}},getMultiSpecularShininessMap:function()
{if(this._cf.multiSpecularShininessTexture.node){if(x3dom.isa(this._cf.multiSpecularShininessTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.multiSpecularShininessTexture.node._cf.texture.node._type="multiSpecularShininessMap";return this._cf.multiSpecularShininessTexture.node._cf.texture.node;}else{this._cf.multiSpecularShininessTexture.node._type="multiSpecularShininessMap";return this._cf.multiSpecularShininessTexture.node;}}else{return null;}},getMultiVisibilityMap:function()
{if(this._cf.multiVisibilityTexture.node){if(x3dom.isa(this._cf.multiVisibilityTexture.node,x3dom.nodeTypes.SurfaceShaderTexture)){this._cf.multiVisibilityTexture.node._cf.texture.node._type="multiVisibilityMap";return this._cf.multiVisibilityTexture.node._cf.texture.node;}else{this._cf.multiVisibilityTexture.node._type="multiVisibilityMap";return this._cf.multiVisibilityTexture.node;}}else{return null;}},getTextures:function()
{var textures=[];var diff=this.getDiffuseMap();if(diff)textures.push(diff);var norm=this.getNormalMap();if(norm)textures.push(norm);var spec=this.getSpecularMap();if(spec)textures.push(spec);var shin=this.getShininessMap();if(shin)textures.push(shin);var displacement=this.getDisplacementMap();if(displacement)textures.push(displacement);var diffuseDisplacement=this.getDiffuseDisplacementMap();if(diffuseDisplacement)textures.push(diffuseDisplacement);var multiDiffuseAlpha=this.getMultiDiffuseAlphaMap();if(multiDiffuseAlpha)textures.push(multiDiffuseAlpha);var multiEmissiveAmbient=this.getMultiEmissiveAmbientMap();if(multiEmissiveAmbient)textures.push(multiEmissiveAmbient);var multiSpecularShininess=this.getMultiSpecularShininessMap();if(multiSpecularShininess)textures.push(multiSpecularShininess);var multiVisibility=this.getMultiVisibilityMap();if(multiVisibility)textures.push(multiVisibility);return textures;}}));x3dom.registerNodeType("ComposedShader","Shaders",defineClass(x3dom.nodeTypes.X3DShaderNode,function(ctx){x3dom.nodeTypes.ComposedShader.superClass.call(this,ctx);this.addField_MFNode('fields',x3dom.nodeTypes.Field);this.addField_MFNode('parts',x3dom.nodeTypes.ShaderPart);this._vertex=null;this._fragment=null;this._id=null;if(!x3dom.nodeTypes.ComposedShader.ShaderInfoMsgShown){x3dom.debug.logInfo("Current ComposedShader node implementation limitations:\n"+"Vertex attributes (if given in the standard X3D fields 'coord', 'color', "+"'normal', 'texCoord'), matrices and texture are provided as follows...\n"+"(see also <a href='http://x3dom.org/x3dom/doc/help/composedShader.html'>"+"http://x3dom.org/x3dom/doc/help/composedShader.html</a>)\n"+"    attribute vec3 position;\n"+"    attribute vec3 normal;\n"+"    attribute vec2 texcoord;\n"+"    attribute vec3 color;\n"+"    uniform mat4 modelViewProjectionMatrix;\n"+"    uniform mat4 modelViewMatrix;\n"+"    uniform mat4 normalMatrix;\n"+"    uniform mat4 viewMatrix;\n"+"    uniform sampler2D tex;\n");x3dom.nodeTypes.ComposedShader.ShaderInfoMsgShown=true;}},{nodeChanged:function()
{var i,n=this._cf.parts.nodes.length;for(i=0;i<n;i++)
{if(this._cf.parts.nodes[i]._vf.type.toLowerCase()=='vertex'){this._vertex=this._cf.parts.nodes[i];this._id=this._cf.parts.nodes[i]._id;}
else if(this._cf.parts.nodes[i]._vf.type.toLowerCase()=='fragment'){this._fragment=this._cf.parts.nodes[i];this._id+=" - "+this._cf.parts.nodes[i]._id;}}
var ctx={};n=this._cf.fields.nodes.length;for(i=0;i<n;i++)
{var fieldName=this._cf.fields.nodes[i]._vf.name;ctx.xmlNode=this._cf.fields.nodes[i]._xmlNode;var needNode=false;if(ctx.xmlNode===undefined||ctx.xmlNode===null){ctx.xmlNode=document.createElement("field");needNode=true;}
ctx.xmlNode.setAttribute(fieldName,this._cf.fields.nodes[i]._vf.value);var funcName="this.addField_"+this._cf.fields.nodes[i]._vf.type+"(ctx, name);";var func=new Function('ctx','name',funcName);func.call(this,ctx,fieldName);if(needNode){ctx.xmlNode=null;}}
Array.forEach(this._parentNodes,function(app){Array.forEach(app._parentNodes,function(shape){if(shape._cleanupGLObjects)
shape._cleanupGLObjects();shape.setAllDirty();});});},fieldChanged:function(fieldName)
{var i,n=this._cf.fields.nodes.length;for(i=0;i<n;i++)
{var field=this._cf.fields.nodes[i]._vf.name;if(field===fieldName)
{var msg=this._cf.fields.nodes[i]._vf.value;try{this._vf[field].setValueByStr(msg);}
catch(exc1){try{switch((typeof(this._vf[field])).toString()){case"number":this._vf[field]=+msg;break;case"boolean":this._vf[field]=(msg.toLowerCase()==="true");break;case"string":this._vf[field]=msg;break;}}
catch(exc2){x3dom.debug.logError("setValueByStr() NYI for "+typeof(this._vf[field]));}}
break;}}
if(field==='url')
{Array.forEach(this._parentNodes,function(app){Array.forEach(app._parentNodes,function(shape){shape._dirty.shader=true;});});}},parentAdded:function(parent)
{parent.nodeChanged();}}));x3dom.nodeTypes.ComposedShader.ShaderInfoMsgShown=false;x3dom.registerNodeType("ShaderPart","Shaders",defineClass(x3dom.nodeTypes.X3DNode,function(ctx){x3dom.nodeTypes.ShaderPart.superClass.call(this,ctx);this.addField_MFString(ctx,'url',[]);this.addField_SFString(ctx,'type',"VERTEX");this._id=(ctx&&ctx.xmlNode&&ctx.xmlNode.id!="")?ctx.xmlNode.id:++x3dom.nodeTypes.Shape.shaderPartID;x3dom.debug.assert(this._vf.type.toLowerCase()=='vertex'||this._vf.type.toLowerCase()=='fragment',"Unknown shader part type!");},{nodeChanged:function()
{var ctx={};ctx.xmlNode=this._xmlNode;if(ctx.xmlNode!==undefined&&ctx.xmlNode!==null)
{var that=this;if(that._vf.url.length&&that._vf.url[0].indexOf('\n')==-1)
{var xhr=new XMLHttpRequest();xhr.open("GET",that._nameSpace.getURL(that._vf.url[0]),false);xhr.onload=function(){that._vf.url=new x3dom.fields.MFString([]);that._vf.url.push(xhr.response);};xhr.onerror=function(){x3dom.debug.logError("Could not load file '"+that._vf.url[0]+"'.");};xhr.send(null);}
else
{if(that._vf.url.length){that._vf.url=new x3dom.fields.MFString([]);}
try{that._vf.url.push(ctx.xmlNode.childNodes[1].nodeValue);ctx.xmlNode.removeChild(ctx.xmlNode.childNodes[1]);}
catch(e){Array.forEach(ctx.xmlNode.childNodes,function(childDomNode){if(childDomNode.nodeType===3){that._vf.url.push(childDomNode.nodeValue);}
else if(childDomNode.nodeType===4){that._vf.url.push(childDomNode.data);}
childDomNode.parentNode.removeChild(childDomNode);});}}}
Array.forEach(this._parentNodes,function(shader){shader.nodeChanged();});},fieldChanged:function(fieldName)
{if(fieldName==="url"){Array.forEach(this._parentNodes,function(shader){shader.fieldChanged("url");});}},parentAdded:function(parent)
{parent.nodeChanged();}}));x3dom.registerNodeType("X3DVertexAttributeNode","Shaders",defineClass(x3dom.nodeTypes.X3DGeometricPropertyNode,function(ctx){x3dom.nodeTypes.X3DVertexAttributeNode.superClass.call(this,ctx);this.addField_SFString(ctx,'name',"");}));x3dom.registerNodeType("FloatVertexAttribute","Shaders",defineClass(x3dom.nodeTypes.X3DVertexAttributeNode,function(ctx){x3dom.nodeTypes.FloatVertexAttribute.superClass.call(this,ctx);this.addField_SFInt32(ctx,'numComponents',4);this.addField_MFFloat(ctx,'value',[]);}));x3dom.registerNodeType("X3DSpatialGeometryNode","Geometry3D",defineClass(x3dom.nodeTypes.X3DGeometryNode,function(ctx){x3dom.nodeTypes.X3DSpatialGeometryNode.superClass.call(this,ctx);}));x3dom.registerNodeType("Plane","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.Plane.superClass.call(this,ctx);this.addField_SFVec2f(ctx,'size',2,2);this.addField_SFVec2f(ctx,'subdivision',1,1);this.addField_SFVec3f(ctx,'center',0,0,0);this.addField_MFString(ctx,'primType',['TRIANGLES']);if(this._vf.primType.length)
this._mesh._primType=this._vf.primType[0];var sx=this._vf.size.x,sy=this._vf.size.y;var subx=this._vf.subdivision.x,suby=this._vf.subdivision.y;var geoCacheID='Plane_'+sx+'-'+sy+'-'+subx+'-'+suby+'-'+
this._vf.center.x+'-'+this._vf.center.y+'-'+this._vf.center.z;if(ctx&&this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined){this._mesh=x3dom.geoCache[geoCacheID];}
else{var x=0,y=0;var xstep=sx/subx;var ystep=sy/suby;sx/=2;sy/=2;for(y=0;y<=suby;y++){for(x=0;x<=subx;x++){this._mesh._positions[0].push(this._vf.center.x+x*xstep-sx);this._mesh._positions[0].push(this._vf.center.y+y*ystep-sy);this._mesh._positions[0].push(this._vf.center.z);this._mesh._normals[0].push(0);this._mesh._normals[0].push(0);this._mesh._normals[0].push(1);this._mesh._texCoords[0].push(x/subx);this._mesh._texCoords[0].push(y/suby);}}
for(y=1;y<=suby;y++){for(x=0;x<subx;x++){this._mesh._indices[0].push((y-1)*(subx+1)+x);this._mesh._indices[0].push((y-1)*(subx+1)+x+1);this._mesh._indices[0].push(y*(subx+1)+x);this._mesh._indices[0].push(y*(subx+1)+x);this._mesh._indices[0].push((y-1)*(subx+1)+x+1);this._mesh._indices[0].push(y*(subx+1)+x+1);}}
this._mesh._invalidate=true;this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;x3dom.geoCache[geoCacheID]=this._mesh;}},{fieldChanged:function(fieldName){if(fieldName=="size"||fieldName=="center"){this._mesh._positions[0]=[];var sx=this._vf.size.x,sy=this._vf.size.y;var subx=this._vf.subdivision.x,suby=this._vf.subdivision.y;var x=0,y=0;var xstep=sx/subx;var ystep=sy/suby;sx/=2;sy/=2;for(y=0;y<=suby;y++){for(x=0;x<=subx;x++){this._mesh._positions[0].push(this._vf.center.x+x*xstep-sx);this._mesh._positions[0].push(this._vf.center.y+y*ystep-sy);this._mesh._positions[0].push(this._vf.center.z);}}
this.invalidateVolume();this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName=="subdivision"){this._mesh._positions[0]=[];this._mesh._indices[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];var sx=this._vf.size.x,sy=this._vf.size.y;var subx=this._vf.subdivision.x,suby=this._vf.subdivision.y;var x=0,y=0;var xstep=sx/subx;var ystep=sy/suby;sx/=2;sy/=2;for(y=0;y<=suby;y++){for(x=0;x<=subx;x++){this._mesh._positions[0].push(this._vf.center.x+x*xstep-sx);this._mesh._positions[0].push(this._vf.center.y+y*ystep-sy);this._mesh._positions[0].push(this._vf.center.z);this._mesh._normals[0].push(0);this._mesh._normals[0].push(0);this._mesh._normals[0].push(1);this._mesh._texCoords[0].push(x/subx);this._mesh._texCoords[0].push(y/suby);}}
for(y=1;y<=suby;y++){for(x=0;x<subx;x++){this._mesh._indices[0].push((y-1)*(subx+1)+x);this._mesh._indices[0].push((y-1)*(subx+1)+x+1);this._mesh._indices[0].push(y*(subx+1)+x);this._mesh._indices[0].push(y*(subx+1)+x);this._mesh._indices[0].push((y-1)*(subx+1)+x+1);this._mesh._indices[0].push(y*(subx+1)+x+1);}}
this.invalidateVolume();this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node.setAllDirty();node.invalidateVolume();});}}}));x3dom.registerNodeType("Box","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.Box.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'size',2,2,2);this.addField_SFBool(ctx,'hasHelperColors',false);var sx=this._vf.size.x,sy=this._vf.size.y,sz=this._vf.size.z;var geoCacheID='Box_'+sx+'-'+sy+'-'+sz;if(this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined)
{this._mesh=x3dom.geoCache[geoCacheID];}
else
{sx/=2;sy/=2;sz/=2;this._mesh._positions[0]=[-sx,-sy,-sz,-sx,sy,-sz,sx,sy,-sz,sx,-sy,-sz,-sx,-sy,sz,-sx,sy,sz,sx,sy,sz,sx,-sy,sz,-sx,-sy,-sz,-sx,-sy,sz,-sx,sy,sz,-sx,sy,-sz,sx,-sy,-sz,sx,-sy,sz,sx,sy,sz,sx,sy,-sz,-sx,sy,-sz,-sx,sy,sz,sx,sy,sz,sx,sy,-sz,-sx,-sy,-sz,-sx,-sy,sz,sx,-sy,sz,sx,-sy,-sz];this._mesh._normals[0]=[0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,0,1,0,0,1,0,0,1,0,0,1,-1,0,0,-1,0,0,-1,0,0,-1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0];this._mesh._texCoords[0]=[1,0,1,1,0,1,0,0,0,0,0,1,1,1,1,0,0,0,1,0,1,1,0,1,1,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,0,0,0,1,1,1,1,0];if(this._vf.hasHelperColors){this._mesh._colors[0]=[0,0,0,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,1,1,1,1,0,1,0,0,0,0,0,1,0,1,1,0,1,0,1,0,0,1,0,1,1,1,1,1,1,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,1,1,0,1,1,0,0];}
this._mesh._indices[0]=[0,1,2,2,3,0,4,7,5,5,7,6,8,9,10,10,11,8,12,14,13,14,12,15,16,17,18,18,19,16,20,22,21,22,20,23];this._mesh._invalidate=true;this._mesh._numFaces=12;this._mesh._numCoords=24;x3dom.geoCache[geoCacheID]=this._mesh;}},{fieldChanged:function(fieldName)
{if(fieldName==="size"){var sx=this._vf.size.x/2,sy=this._vf.size.y/2,sz=this._vf.size.z/2;this._mesh._positions[0]=[-sx,-sy,-sz,-sx,sy,-sz,sx,sy,-sz,sx,-sy,-sz,-sx,-sy,sz,-sx,sy,sz,sx,sy,sz,sx,-sy,sz,-sx,-sy,-sz,-sx,-sy,sz,-sx,sy,sz,-sx,sy,-sz,sx,-sy,-sz,sx,-sy,sz,sx,sy,sz,sx,sy,-sz,-sx,sy,-sz,-sx,sy,sz,sx,sy,sz,sx,sy,-sz,-sx,-sy,-sz,-sx,-sy,sz,sx,-sy,sz,sx,-sy,-sz];this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName==="hasHelperColors"){if(this._vf.hasHelperColors){this._mesh._colors[0]=[0,0,0,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,1,1,1,1,0,1,0,0,0,0,0,1,0,1,1,0,1,0,1,0,0,1,0,1,1,1,1,1,1,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,1,1,0,1,1,0,0];}
else{this._mesh._colors[0]=[];}
Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}}}));x3dom.registerNodeType("Sphere","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.Sphere.superClass.call(this,ctx);this.addField_SFFloat(ctx,'radius',ctx?1:10000);this.addField_SFVec2f(ctx,'subdivision',24,24);var qfactor=1.0;var r=this._vf.radius;var subx=this._vf.subdivision.x,suby=this._vf.subdivision.y;var geoCacheID='Sphere_'+r+'-'+subx+'-'+suby;if(this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined){this._mesh=x3dom.geoCache[geoCacheID];}
else{if(ctx){qfactor=ctx.doc.properties.getProperty("PrimitiveQuality","Medium");}
if(!x3dom.Utils.isNumber(qfactor)){switch(qfactor.toLowerCase()){case"low":qfactor=0.3;break;case"medium":qfactor=0.5;break;case"high":qfactor=1.0;break;}}else{qfactor=parseFloat(qfactor);}
this._quality=qfactor;var latNumber,longNumber;var latitudeBands=Math.floor(subx*qfactor);var longitudeBands=Math.floor(suby*qfactor);var theta,sinTheta,cosTheta;var phi,sinPhi,cosPhi;var x,y,z,u,v;for(latNumber=0;latNumber<=latitudeBands;latNumber++){theta=(latNumber*Math.PI)/latitudeBands;sinTheta=Math.sin(theta);cosTheta=Math.cos(theta);for(longNumber=0;longNumber<=longitudeBands;longNumber++){phi=(longNumber*2.0*Math.PI)/longitudeBands;sinPhi=Math.sin(phi);cosPhi=Math.cos(phi);x=-cosPhi*sinTheta;y=-cosTheta;z=-sinPhi*sinTheta;u=0.25-(longNumber/longitudeBands);v=latNumber/latitudeBands;this._mesh._positions[0].push(r*x);this._mesh._positions[0].push(r*y);this._mesh._positions[0].push(r*z);this._mesh._normals[0].push(x);this._mesh._normals[0].push(y);this._mesh._normals[0].push(z);this._mesh._texCoords[0].push(u);this._mesh._texCoords[0].push(v);}}
var first,second;for(latNumber=0;latNumber<latitudeBands;latNumber++){for(longNumber=0;longNumber<longitudeBands;longNumber++){first=(latNumber*(longitudeBands+1))+longNumber;second=first+longitudeBands+1;this._mesh._indices[0].push(first);this._mesh._indices[0].push(second);this._mesh._indices[0].push(first+1);this._mesh._indices[0].push(second);this._mesh._indices[0].push(second+1);this._mesh._indices[0].push(first+1);}}
this._mesh._invalidate=true;this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;x3dom.geoCache[geoCacheID]=this._mesh;}},{fieldChanged:function(fieldName){if(fieldName==="radius"){this._mesh._positions[0]=[];var r=this._vf.radius;var subx=this._vf.subdivision.x,suby=this._vf.subdivision.y;var qfactor=this._quality;var latNumber,longNumber;var latitudeBands=Math.floor(subx*qfactor);var longitudeBands=Math.floor(suby*qfactor);var theta,sinTheta,cosTheta;var phi,sinPhi,cosPhi;var x,y,z;for(latNumber=0;latNumber<=latitudeBands;latNumber++){theta=(latNumber*Math.PI)/latitudeBands;sinTheta=Math.sin(theta);cosTheta=Math.cos(theta);for(longNumber=0;longNumber<=longitudeBands;longNumber++){phi=(longNumber*2.0*Math.PI)/longitudeBands;sinPhi=Math.sin(phi);cosPhi=Math.cos(phi);x=-cosPhi*sinTheta;y=-cosTheta;z=-sinPhi*sinTheta;this._mesh._positions[0].push(r*x);this._mesh._positions[0].push(r*y);this._mesh._positions[0].push(r*z);}}
this.invalidateVolume();this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName==="subdivision"){this._mesh._positions[0]=[];this._mesh._indices[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];var r=this._vf.radius;var subx=this._vf.subdivision.x,suby=this._vf.subdivision.y;var qfactor=this._quality;var latNumber,longNumber;var latitudeBands=Math.floor(subx*qfactor);var longitudeBands=Math.floor(suby*qfactor);var theta,sinTheta,cosTheta;var phi,sinPhi,cosPhi;var x,y,z,u,v;for(latNumber=0;latNumber<=latitudeBands;latNumber++){theta=(latNumber*Math.PI)/latitudeBands;sinTheta=Math.sin(theta);cosTheta=Math.cos(theta);for(longNumber=0;longNumber<=longitudeBands;longNumber++){phi=(longNumber*2.0*Math.PI)/longitudeBands;sinPhi=Math.sin(phi);cosPhi=Math.cos(phi);x=-cosPhi*sinTheta;y=-cosTheta;z=-sinPhi*sinTheta;u=0.25-(longNumber/longitudeBands);v=latNumber/latitudeBands;this._mesh._positions[0].push(r*x);this._mesh._positions[0].push(r*y);this._mesh._positions[0].push(r*z);this._mesh._normals[0].push(x);this._mesh._normals[0].push(y);this._mesh._normals[0].push(z);this._mesh._texCoords[0].push(u);this._mesh._texCoords[0].push(v);}}
var first,second;for(latNumber=0;latNumber<latitudeBands;latNumber++){for(longNumber=0;longNumber<longitudeBands;longNumber++){first=(latNumber*(longitudeBands+1))+longNumber;second=first+longitudeBands+1;this._mesh._indices[0].push(first);this._mesh._indices[0].push(second);this._mesh._indices[0].push(first+1);this._mesh._indices[0].push(second);this._mesh._indices[0].push(second+1);this._mesh._indices[0].push(first+1);}}
this.invalidateVolume();this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node.setAllDirty();node.invalidateVolume();});}}}));x3dom.registerNodeType("Torus","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.Torus.superClass.call(this,ctx);var twoPi=2.0*Math.PI;this.addField_SFFloat(ctx,'innerRadius',0.5);this.addField_SFFloat(ctx,'outerRadius',1.0);this.addField_SFFloat(ctx,'angle',twoPi);this.addField_SFBool(ctx,'caps',true);this.addField_SFVec2f(ctx,'subdivision',24,24);this.addField_SFBool(ctx,'insideOutsideRadius',false);if(this._vf.angle<0)
this._vf.angle=0;else if(this._vf.angle>twoPi)
this._vf.angle=twoPi;this._origCCW=this._vf.ccw;var innerRadius=this._vf.innerRadius;var outerRadius=this._vf.outerRadius;if(this._vf.insideOutsideRadius==true)
{if(innerRadius>outerRadius){var tmp=innerRadius;innerRadius=outerRadius;outerRadius=tmp;}
var rad=(outerRadius-innerRadius)/2;outerRadius=innerRadius+rad;innerRadius=rad;this._vf.ccw=!this._origCCW;}
var rings=this._vf.subdivision.x,sides=this._vf.subdivision.y;rings=Math.max(3,Math.round((this._vf.angle/twoPi)*rings));var geoCacheID='Torus_'+innerRadius+'_'+outerRadius+'_'+this._vf.angle+'_'+
this._vf.subdivision+'-'+this._vf.caps;if(this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined)
{this._mesh=x3dom.geoCache[geoCacheID];}
else
{var ringDelta=this._vf.angle/rings;var sideDelta=twoPi/sides;var a,b,theta,phi;var cosTheta,sinTheta,cosPhi,sinPhi,dist;for(a=0,theta=0;a<=rings;a++,theta+=ringDelta)
{cosTheta=Math.cos(theta);sinTheta=Math.sin(theta);for(b=0,phi=0;b<=sides;b++,phi+=sideDelta)
{cosPhi=Math.cos(phi);sinPhi=Math.sin(phi);dist=outerRadius+innerRadius*cosPhi;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(cosTheta*dist,innerRadius*sinPhi,-sinTheta*dist);this._mesh._normals[0].push(cosTheta*cosPhi,sinPhi,-sinTheta*cosPhi);}
else{this._mesh._positions[0].push(cosTheta*dist,-sinTheta*dist,innerRadius*sinPhi);this._mesh._normals[0].push(cosTheta*cosPhi,-sinTheta*cosPhi,sinPhi);}
this._mesh._texCoords[0].push(-a/rings,b/sides);}}
for(a=0;a<sides;a++)
{for(b=0;b<rings;b++)
{this._mesh._indices[0].push(b*(sides+1)+a);this._mesh._indices[0].push(b*(sides+1)+a+1);this._mesh._indices[0].push((b+1)*(sides+1)+a);this._mesh._indices[0].push(b*(sides+1)+a+1);this._mesh._indices[0].push((b+1)*(sides+1)+a+1);this._mesh._indices[0].push((b+1)*(sides+1)+a);}}
if(this._vf.angle<twoPi&&this._vf.caps==true)
{var origPos=this._mesh._positions[0].length/3;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(outerRadius,0,0);this._mesh._normals[0].push(0,0,1);}
else{this._mesh._positions[0].push(outerRadius,0,0);this._mesh._normals[0].push(0,1,0);}
this._mesh._texCoords[0].push(0.5,0.5);for(b=0,phi=0;b<=sides;b++,phi+=sideDelta)
{cosPhi=Math.cos(phi);sinPhi=Math.sin(phi);dist=outerRadius+innerRadius*cosPhi;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(dist,sinPhi*innerRadius,0);this._mesh._normals[0].push(0,0,1);}
else{this._mesh._positions[0].push(dist,0,sinPhi*innerRadius);this._mesh._normals[0].push(0,1,0);}
this._mesh._texCoords[0].push((1+cosPhi)*0.5,(1-sinPhi)*0.5);if(b>0){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+b);this._mesh._indices[0].push(origPos+b-1);}
if(b==sides){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+1);this._mesh._indices[0].push(origPos+b);}}
cosTheta=Math.cos(this._vf.angle);sinTheta=Math.sin(this._vf.angle);origPos=this._mesh._positions[0].length/3;var nx=-sinTheta,ny=-cosTheta;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(cosTheta*outerRadius,0,-sinTheta*outerRadius);this._mesh._normals[0].push(nx,0,ny);}
else{this._mesh._positions[0].push(cosTheta*outerRadius,-sinTheta*outerRadius,0);this._mesh._normals[0].push(nx,ny,0);}
this._mesh._texCoords[0].push(0.5,0.5);for(b=0,phi=0;b<=sides;b++,phi+=sideDelta)
{cosPhi=Math.cos(phi);sinPhi=Math.sin(phi);dist=outerRadius+innerRadius*cosPhi;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(cosTheta*dist,sinPhi*innerRadius,-sinTheta*dist);this._mesh._normals[0].push(nx,0,ny);}
else{this._mesh._positions[0].push(cosTheta*dist,-sinTheta*dist,sinPhi*innerRadius);this._mesh._normals[0].push(nx,ny,0);}
this._mesh._texCoords[0].push(1-(1+cosPhi)*0.5,(1-sinPhi)*0.5);if(b>0){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+b-1);this._mesh._indices[0].push(origPos+b);}
if(b==sides){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+b);this._mesh._indices[0].push(origPos+1);}}}
this._mesh._invalidate=true;this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;x3dom.geoCache[geoCacheID]=this._mesh;}},{fieldChanged:function(fieldName)
{if(fieldName=="innerRadius"||fieldName=="outerRadius"||fieldName=="subdivision"||fieldName=="angle"||fieldName=="insideOutsideRadius"||fieldName=="caps")
{var twoPi=2.0*Math.PI;if(this._vf.angle<0)
this._vf.angle=0;else if(this._vf.angle>twoPi)
this._vf.angle=twoPi;var innerRadius=this._vf.innerRadius;var outerRadius=this._vf.outerRadius;if(this._vf.insideOutsideRadius==true)
{if(innerRadius>outerRadius){var tmp=innerRadius;innerRadius=outerRadius;outerRadius=tmp;}
var rad=(outerRadius-innerRadius)/2;outerRadius=innerRadius+rad;innerRadius=rad;this._vf.ccw=!this._origCCW;}
else
this._vf.ccw=this._origCCW;var rings=this._vf.subdivision.x,sides=this._vf.subdivision.y;rings=Math.max(3,Math.round((this._vf.angle/twoPi)*rings));var ringDelta=this._vf.angle/rings;var sideDelta=twoPi/sides;var a,b,theta,phi;var cosTheta,sinTheta,cosPhi,sinPhi,dist;this._mesh._positions[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._indices[0]=[];for(a=0,theta=0;a<=rings;a++,theta+=ringDelta)
{cosTheta=Math.cos(theta);sinTheta=Math.sin(theta);for(b=0,phi=0;b<=sides;b++,phi+=sideDelta)
{cosPhi=Math.cos(phi);sinPhi=Math.sin(phi);dist=outerRadius+innerRadius*cosPhi;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(cosTheta*dist,innerRadius*sinPhi,-sinTheta*dist);this._mesh._normals[0].push(cosTheta*cosPhi,sinPhi,-sinTheta*cosPhi);}
else{this._mesh._positions[0].push(cosTheta*dist,-sinTheta*dist,innerRadius*sinPhi);this._mesh._normals[0].push(cosTheta*cosPhi,-sinTheta*cosPhi,sinPhi);}
this._mesh._texCoords[0].push(-a/rings,b/sides);}}
for(a=0;a<sides;a++)
{for(b=0;b<rings;b++)
{this._mesh._indices[0].push(b*(sides+1)+a);this._mesh._indices[0].push(b*(sides+1)+a+1);this._mesh._indices[0].push((b+1)*(sides+1)+a);this._mesh._indices[0].push(b*(sides+1)+a+1);this._mesh._indices[0].push((b+1)*(sides+1)+a+1);this._mesh._indices[0].push((b+1)*(sides+1)+a);}}
if(this._vf.angle<twoPi&&this._vf.caps==true)
{var origPos=this._mesh._positions[0].length/3;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(outerRadius,0,0);this._mesh._normals[0].push(0,0,1);}
else{this._mesh._positions[0].push(outerRadius,0,0);this._mesh._normals[0].push(0,1,0);}
this._mesh._texCoords[0].push(0.5,0.5);for(b=0,phi=0;b<=sides;b++,phi+=sideDelta)
{cosPhi=Math.cos(phi);sinPhi=Math.sin(phi);dist=outerRadius+innerRadius*cosPhi;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(dist,sinPhi*innerRadius,0);this._mesh._normals[0].push(0,0,1);}
else{this._mesh._positions[0].push(dist,0,sinPhi*innerRadius);this._mesh._normals[0].push(0,1,0);}
this._mesh._texCoords[0].push((1+cosPhi)*0.5,(1-sinPhi)*0.5);if(b>0){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+b);this._mesh._indices[0].push(origPos+b-1);}
if(b==sides){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+1);this._mesh._indices[0].push(origPos+b);}}
cosTheta=Math.cos(this._vf.angle);sinTheta=Math.sin(this._vf.angle);origPos=this._mesh._positions[0].length/3;var nx=-sinTheta,ny=-cosTheta;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(cosTheta*outerRadius,0,-sinTheta*outerRadius);this._mesh._normals[0].push(nx,0,ny);}
else{this._mesh._positions[0].push(cosTheta*outerRadius,-sinTheta*outerRadius,0);this._mesh._normals[0].push(nx,ny,0);}
this._mesh._texCoords[0].push(0.5,0.5);for(b=0,phi=0;b<=sides;b++,phi+=sideDelta)
{cosPhi=Math.cos(phi);sinPhi=Math.sin(phi);dist=outerRadius+innerRadius*cosPhi;if(this._vf.insideOutsideRadius){this._mesh._positions[0].push(cosTheta*dist,sinPhi*innerRadius,-sinTheta*dist);this._mesh._normals[0].push(nx,0,ny);}
else{this._mesh._positions[0].push(cosTheta*dist,-sinTheta*dist,sinPhi*innerRadius);this._mesh._normals[0].push(nx,ny,0);}
this._mesh._texCoords[0].push(1-(1+cosPhi)*0.5,(1-sinPhi)*0.5);if(b>0){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+b-1);this._mesh._indices[0].push(origPos+b);}
if(b==sides){this._mesh._indices[0].push(origPos);this._mesh._indices[0].push(origPos+b);this._mesh._indices[0].push(origPos+1);}}}
this.invalidateVolume();this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node.setAllDirty();node.invalidateVolume();});}}}));x3dom.registerNodeType("Cone","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.Cone.superClass.call(this,ctx);this.addField_SFFloat(ctx,'bottomRadius',1.0);this.addField_SFFloat(ctx,'topRadius',0);this.addField_SFFloat(ctx,'height',2.0);this.addField_SFBool(ctx,'bottom',true);this.addField_SFBool(ctx,'side',true);this.addField_SFBool(ctx,'top',true);this.addField_SFFloat(ctx,'subdivision',32);var geoCacheID='Cone_'+this._vf.bottomRadius+'_'+this._vf.height+'_'+this._vf.top+'_'+
this._vf.bottom+'_'+this._vf.side+'_'+this._vf.topRadius+'_'+this._vf.subdivision;if(this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined){this._mesh=x3dom.geoCache[geoCacheID];}
else{var bottomRadius=this._vf.bottomRadius,height=this._vf.height;var topRadius=this._vf.topRadius,sides=this._vf.subdivision;var beta,x,z;var delta=2.0*Math.PI/sides;var incl=(bottomRadius-topRadius)/height;var nlen=1.0/Math.sqrt(1.0+incl*incl);var j=0,k=0;var h,base;if(this._vf.side&&height>0){var px=0,pz=0;for(j=0,k=0;j<=sides;j++){beta=j*delta;x=Math.sin(beta);z=-Math.cos(beta);if(topRadius>x3dom.fields.Eps){px=x*topRadius;pz=z*topRadius;}
this._mesh._positions[0].push(px,height/2,pz);this._mesh._normals[0].push(x/nlen,incl/nlen,z/nlen);this._mesh._texCoords[0].push(1.0-j/sides,1);this._mesh._positions[0].push(x*bottomRadius,-height/2,z*bottomRadius);this._mesh._normals[0].push(x/nlen,incl/nlen,z/nlen);this._mesh._texCoords[0].push(1.0-j/sides,0);if(j>0){this._mesh._indices[0].push(k);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+3);k+=2;}}}
if(this._vf.bottom&&bottomRadius>0){base=this._mesh._positions[0].length/3;for(j=sides-1;j>=0;j--){beta=j*delta;x=bottomRadius*Math.sin(beta);z=-bottomRadius*Math.cos(beta);this._mesh._positions[0].push(x,-height/2,z);this._mesh._normals[0].push(0,-1,0);this._mesh._texCoords[0].push(x/bottomRadius/2+0.5,z/bottomRadius/2+0.5);}
h=base+1;for(j=2;j<sides;j++){this._mesh._indices[0].push(h);this._mesh._indices[0].push(base);h=base+j;this._mesh._indices[0].push(h);}}
if(this._vf.top&&topRadius>x3dom.fields.Eps){base=this._mesh._positions[0].length/3;for(j=sides-1;j>=0;j--){beta=j*delta;x=topRadius*Math.sin(beta);z=-topRadius*Math.cos(beta);this._mesh._positions[0].push(x,height/2,z);this._mesh._normals[0].push(0,1,0);this._mesh._texCoords[0].push(x/topRadius/2+0.5,1.0-z/topRadius/2+0.5);}
h=base+1;for(j=2;j<sides;j++){this._mesh._indices[0].push(base);this._mesh._indices[0].push(h);h=base+j;this._mesh._indices[0].push(h);}}
this._mesh._invalidate=true;this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;x3dom.geoCache[geoCacheID]=this._mesh;}},{fieldChanged:function(fieldName)
{if(fieldName=="bottomRadius"||fieldName=="topRadius"||fieldName=="height"||fieldName=="subdivision"||fieldName=="bottom"||fieldName=="top"||fieldName=="side")
{this._mesh._positions[0]=[];this._mesh._indices[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];var bottomRadius=this._vf.bottomRadius,height=this._vf.height;var topRadius=this._vf.topRadius,sides=this._vf.subdivision;var beta,x,z;var delta=2.0*Math.PI/sides;var incl=(bottomRadius-topRadius)/height;var nlen=1.0/Math.sqrt(1.0+incl*incl);var j=0,k=0;var h,base;if(this._vf.side&&height>0)
{var px=0,pz=0;for(j=0,k=0;j<=sides;j++){beta=j*delta;x=Math.sin(beta);z=-Math.cos(beta);if(topRadius>x3dom.fields.Eps){px=x*topRadius;pz=z*topRadius;}
this._mesh._positions[0].push(px,height/2,pz);this._mesh._normals[0].push(x/nlen,incl/nlen,z/nlen);this._mesh._texCoords[0].push(1.0-j/sides,1);this._mesh._positions[0].push(x*bottomRadius,-height/2,z*bottomRadius);this._mesh._normals[0].push(x/nlen,incl/nlen,z/nlen);this._mesh._texCoords[0].push(1.0-j/sides,0);if(j>0){this._mesh._indices[0].push(k);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+3);k+=2;}}}
if(this._vf.bottom&&bottomRadius>0)
{base=this._mesh._positions[0].length/3;for(j=sides-1;j>=0;j--){beta=j*delta;x=bottomRadius*Math.sin(beta);z=-bottomRadius*Math.cos(beta);this._mesh._positions[0].push(x,-height/2,z);this._mesh._normals[0].push(0,-1,0);this._mesh._texCoords[0].push(x/bottomRadius/2+0.5,z/bottomRadius/2+0.5);}
h=base+1;for(j=2;j<sides;j++){this._mesh._indices[0].push(h);this._mesh._indices[0].push(base);h=base+j;this._mesh._indices[0].push(h);}}
if(this._vf.top&&topRadius>x3dom.fields.Eps)
{base=this._mesh._positions[0].length/3;for(j=sides-1;j>=0;j--){beta=j*delta;x=topRadius*Math.sin(beta);z=-topRadius*Math.cos(beta);this._mesh._positions[0].push(x,height/2,z);this._mesh._normals[0].push(0,1,0);this._mesh._texCoords[0].push(x/topRadius/2+0.5,1.0-z/topRadius/2+0.5);}
h=base+1;for(j=2;j<sides;j++){this._mesh._indices[0].push(base);this._mesh._indices[0].push(h);h=base+j;this._mesh._indices[0].push(h);}}
this.invalidateVolume();this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node.setAllDirty();node.invalidateVolume();});}}}));x3dom.registerNodeType("Cylinder","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.Cylinder.superClass.call(this,ctx);this.addField_SFFloat(ctx,'radius',1.0);this.addField_SFFloat(ctx,'height',2.0);this.addField_SFBool(ctx,'bottom',true);this.addField_SFBool(ctx,'top',true);this.addField_SFFloat(ctx,'subdivision',32);this.addField_SFBool(ctx,'side',true);var sides=this._vf.subdivision;var geoCacheID='Cylinder_'+this._vf.radius+'_'+this._vf.height+'_'+this._vf.bottom+'_'+this._vf.top+'_'+
this._vf.side+'_'+this._vf.subdivision;if(this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined)
{this._mesh=x3dom.geoCache[geoCacheID];}
else
{var radius=this._vf.radius;var height=this._vf.height/2;var beta,x,z;var delta=2.0*Math.PI/sides;var j,k;if(this._vf.side)
{for(j=0,k=0;j<=sides;j++)
{beta=j*delta;x=Math.sin(beta);z=-Math.cos(beta);this._mesh._positions[0].push(x*radius,-height,z*radius);this._mesh._normals[0].push(x,0,z);this._mesh._texCoords[0].push(1.0-j/sides,0);this._mesh._positions[0].push(x*radius,height,z*radius);this._mesh._normals[0].push(x,0,z);this._mesh._texCoords[0].push(1.0-j/sides,1);if(j>0)
{this._mesh._indices[0].push(k);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+3);k+=2;}}}
if(radius>0)
{var h,base=this._mesh._positions[0].length/3;if(this._vf.top)
{for(j=sides-1;j>=0;j--)
{beta=j*delta;x=radius*Math.sin(beta);z=-radius*Math.cos(beta);this._mesh._positions[0].push(x,height,z);this._mesh._normals[0].push(0,1,0);this._mesh._texCoords[0].push(x/radius/2+0.5,-z/radius/2+0.5);}
h=base+1;for(j=2;j<sides;j++)
{this._mesh._indices[0].push(base);this._mesh._indices[0].push(h);h=base+j;this._mesh._indices[0].push(h);}
base=this._mesh._positions[0].length/3;}
if(this._vf.bottom)
{for(j=sides-1;j>=0;j--)
{beta=j*delta;x=radius*Math.sin(beta);z=-radius*Math.cos(beta);this._mesh._positions[0].push(x,-height,z);this._mesh._normals[0].push(0,-1,0);this._mesh._texCoords[0].push(x/radius/2+0.5,z/radius/2+0.5);}
h=base+1;for(j=2;j<sides;j++)
{this._mesh._indices[0].push(h);this._mesh._indices[0].push(base);h=base+j;this._mesh._indices[0].push(h);}}}
this._mesh._invalidate=true;this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;x3dom.geoCache[geoCacheID]=this._mesh;}},{fieldChanged:function(fieldName){if(fieldName==="radius"||fieldName==="height")
{this._mesh._positions[0]=[];var radius=this._vf.radius,height=this._vf.height/2;var sides=this._vf.subdivision;var beta,x,z,j;var delta=2.0*Math.PI/sides;if(this._vf.side)
{for(j=0;j<=sides;j++)
{beta=j*delta;x=Math.sin(beta);z=-Math.cos(beta);this._mesh._positions[0].push(x*radius,-height,z*radius);this._mesh._positions[0].push(x*radius,height,z*radius);}}
if(radius>0)
{var h,base=this._mesh._positions[0].length/3;if(this._vf.top)
{for(j=sides-1;j>=0;j--)
{beta=j*delta;x=radius*Math.sin(beta);z=-radius*Math.cos(beta);this._mesh._positions[0].push(x,height,z);}}}
if(this._vf.bottom)
{for(j=sides-1;j>=0;j--)
{beta=j*delta;x=radius*Math.sin(beta);z=-radius*Math.cos(beta);this._mesh._positions[0].push(x,-height,z);}}
this.invalidateVolume();this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node.invalidateVolume();});}
else if(fieldName==="subdivision"||fieldName==="bottom"||fieldName==="top"||fieldName==="side")
{this._mesh._positions[0]=[];this._mesh._indices[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];var radius=this._vf.radius,height=this._vf.height/2;var sides=this._vf.subdivision;var beta,x,z,j;var delta=2.0*Math.PI/sides;var k=0;if(this._vf.side)
{for(j=0,k=0;j<=sides;j++)
{beta=j*delta;x=Math.sin(beta);z=-Math.cos(beta);this._mesh._positions[0].push(x*radius,-height,z*radius);this._mesh._normals[0].push(x,0,z);this._mesh._texCoords[0].push(1.0-j/sides,0);this._mesh._positions[0].push(x*radius,height,z*radius);this._mesh._normals[0].push(x,0,z);this._mesh._texCoords[0].push(1.0-j/sides,1);if(j>0)
{this._mesh._indices[0].push(k+0);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+2);this._mesh._indices[0].push(k+1);this._mesh._indices[0].push(k+3);k+=2;}}}
if(radius>0)
{var h,base=this._mesh._positions[0].length/3;if(this._vf.top)
{for(j=sides-1;j>=0;j--)
{beta=j*delta;x=radius*Math.sin(beta);z=-radius*Math.cos(beta);this._mesh._positions[0].push(x,height,z);this._mesh._normals[0].push(0,1,0);this._mesh._texCoords[0].push(x/radius/2+0.5,-z/radius/2+0.5);}
h=base+1;for(j=2;j<sides;j++)
{this._mesh._indices[0].push(base);this._mesh._indices[0].push(h);h=base+j;this._mesh._indices[0].push(h);}
base=this._mesh._positions[0].length/3;}
if(this._vf.bottom)
{for(j=sides-1;j>=0;j--)
{beta=j*delta;x=radius*Math.sin(beta);z=-radius*Math.cos(beta);this._mesh._positions[0].push(x,-height,z);this._mesh._normals[0].push(0,-1,0);this._mesh._texCoords[0].push(x/radius/2+0.5,z/radius/2+0.5);}
h=base+1;for(j=2;j<sides;j++)
{this._mesh._indices[0].push(h);this._mesh._indices[0].push(base);h=base+j;this._mesh._indices[0].push(h);}}}
this.invalidateVolume();this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;Array.forEach(this._parentNodes,function(node){node.setAllDirty();node.invalidateVolume();});}}}));x3dom.registerNodeType("ExternalGeometry","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.ExternalGeometry.superClass.call(this,ctx);this.addField_SFString(ctx,'url',"");this._mesh._invalidate=false;this._mesh._numCoords=0;this._mesh._numFaces=0;},{updateRenderData:function(shape,shaderProgram,gl,viewarea,context){var that=this;var xhr;if(this._vf['url']==""){return;}
if(x3dom.BinaryContainerLoader.outOfMemory){return;}
shape._webgl.internalDownloadCount=1;shape._nameSpace.doc.downloadCount=1;xhr=new XMLHttpRequest();xhr.open("GET",this._vf['url'],true);xhr.responseType="arraybuffer";xhr.send(null);xhr.onerror=function(){x3dom.debug.logError("Unable to load SRC data from URL \""+that._vf['url']+"\"");};xhr.onload=function(){shape._webgl.internalDownloadCount=0;shape._nameSpace.doc.downloadCount=0;var responseBeginUint32=new Uint32Array(xhr.response,0,12);var srcHeaderSize,srcBodySize,srcBodyOffset;var srcHeaderView,srcBodyView;var srcHeaderObj;if((xhr.status==200||xhr.status==0)&&responseBeginUint32.length>=3){srcHeaderSize=responseBeginUint32[2];srcBodyOffset=srcHeaderSize+12;srcBodySize=xhr.response.byteLength-srcBodyOffset;if(srcHeaderSize>0&&srcBodySize>=0)
{srcHeaderView=new Uint8Array(xhr.response,12,srcHeaderSize);srcBodyView=new Uint8Array(xhr.response,srcBodyOffset,srcBodySize);try
{srcHeaderObj=JSON.parse(String.fromCharCode.apply(null,srcHeaderView));}
catch(exc)
{x3dom.debug.logError("Unable to parse SRC header: "+exc);return;}
that._updateRenderDataFromSRC(shape,shaderProgram,gl,srcHeaderObj,srcBodyView);}
else
{x3dom.debug.logError("Invalid SRC data, loaded from URL \""+
that._vf['url']+"\"");return;}}
else
{x3dom.debug.logError("Unable to load SRC data from URL \""+that._vf['url']+"\"");}};},_updateRenderDataFromSRC:function(shape,shaderProgram,gl,srcHeaderObj,srcBodyView)
{var INDEX_BUFFER_IDX=0;var POSITION_BUFFER_IDX=1;var NORMAL_BUFFER_IDX=2;var TEXCOORD_BUFFER_IDX=3;var COLOR_BUFFER_IDX=4;var ID_BUFFER_IDX=5;var MAX_NUM_BUFFERS_PER_DRAW=6;var indexViews=srcHeaderObj["accessors"]["indexViews"];var indexViewID,indexView;var attributeViews=srcHeaderObj["accessors"]["attributeViews"];var attributes;var attributeID,attributeView;var x3domTypeID,x3domShortTypeID,numComponents;var meshes=srcHeaderObj["meshes"];var mesh,meshID;var meshIdx,bufferOffset;var viewIDsToGLBufferIDs={};var indexViewBufferIDs={};for(indexViewID in indexViews)
{indexView=indexViews[indexViewID];indexViewBufferIDs[indexView["bufferView"]]=true;}
this._createGLBuffersFromSRCChunks(gl,srcHeaderObj["bufferChunks"],srcHeaderObj["bufferViews"],srcBodyView,indexViewBufferIDs,viewIDsToGLBufferIDs);for(indexViewID in indexViews)
{indexView=indexViews[indexViewID];if(indexView["componentType"]!=gl.UNSIGNED_SHORT)
{x3dom.debug.logWarning("SRC index componentType "+indexView["componentType"]+" is not UNSIGNED_SHORT. "+"Ignoring given value and assuming UNSIGNED_SHORT indices.");}
shape._webgl.indexType=gl.UNSIGNED_SHORT;}
meshIdx=0;bufferOffset=0;shape._webgl.primType=[];shape._webgl.indexOffset=[];shape._webgl.drawCount=[];this._mesh._numCoords=0;this._mesh._numFaces=0;for(meshID in meshes)
{mesh=meshes[meshID];indexViewID=mesh["indices"];if(indexViewID!="")
{shape._webgl.externalGeometry=1;indexView=indexViews[indexViewID];shape._webgl.indexOffset[meshIdx]=indexView["byteOffset"];shape._webgl.drawCount[meshIdx]=indexView["count"];shape._webgl.buffers[INDEX_BUFFER_IDX+bufferOffset]=viewIDsToGLBufferIDs[indexView["bufferView"]];this._mesh._numFaces+=indexView["count"]/3;}
else
{shape._webgl.externalGeometry=-1;}
shape._webgl.primType[meshIdx]=mesh["primitive"];attributes=mesh["attributes"];for(attributeID in attributes)
{attributeView=attributeViews[attributes[attributeID]];switch(attributeID)
{case"position":x3domTypeID="coord";x3domShortTypeID="Pos";shape._webgl.buffers[POSITION_BUFFER_IDX+bufferOffset]=viewIDsToGLBufferIDs[attributeView["bufferView"]];if(mesh["indices"]=="")
{shape._webgl.drawCount[meshIdx]=attributeView["count"];this._mesh._numFaces+=attributeView["count"]/3;}
this._mesh._numCoords+=attributeView["count"];break;case"normal":x3domTypeID="normal";x3domShortTypeID="Norm";shape._webgl.buffers[NORMAL_BUFFER_IDX+bufferOffset]=viewIDsToGLBufferIDs[attributeView["bufferView"]];break;case"texcoord":x3domTypeID="texCoord";x3domShortTypeID="Tex";shape._webgl.buffers[TEXCOORD_BUFFER_IDX+bufferOffset]=viewIDsToGLBufferIDs[attributeView["bufferView"]];break;case"color":x3domTypeID="color";x3domShortTypeID="Col";shape._webgl.buffers[COLOR_BUFFER_IDX+bufferOffset]=viewIDsToGLBufferIDs[attributeView["bufferView"]];break;case"id":x3domTypeID="id";x3domShortTypeID="Id";shape._webgl.buffers[ID_BUFFER_IDX+bufferOffset]=viewIDsToGLBufferIDs[attributeView["bufferView"]];break;}
shape["_"+x3domTypeID+"StrideOffset"][0]=attributeView["byteStride"];shape["_"+x3domTypeID+"StrideOffset"][1]=attributeView["byteOffset"];shape._webgl[x3domTypeID+"Type"]=attributeView["componentType"];numComponents=x3dom.nodeTypes.ExternalGeometry._findNumComponentsForSRCAccessorType(attributeView["type"]);this._mesh["_num"+x3domShortTypeID+"Components"]=numComponents;}
++meshIdx;bufferOffset+=MAX_NUM_BUFFERS_PER_DRAW;}
shape._nameSpace.doc.needRender=true;x3dom.BinaryContainerLoader.checkError(gl);},_createGLBuffersFromSRCChunks:function(gl,bufferChunksObj,bufferViewsObj,srcBodyView,indexViewBufferIDs,viewIDsToGLBufferIDs)
{var i;var bufferView;var chunkIDList;var bufferType;var chunk;var newBuffer;var chunkDataView;var currentChunkDataOffset;for(var bufferViewID in bufferViewsObj)
{bufferType=(typeof indexViewBufferIDs[bufferViewID]!=='undefined')?gl.ELEMENT_ARRAY_BUFFER:gl.ARRAY_BUFFER;bufferView=bufferViewsObj[bufferViewID];chunkIDList=bufferView["chunks"];if(chunkIDList.length==1)
{chunk=bufferChunksObj[chunkIDList[0]];chunkDataView=new Uint8Array(srcBodyView.buffer,srcBodyView.byteOffset+chunk["byteOffset"],chunk["byteLength"]);newBuffer=gl.createBuffer();gl.bindBuffer(bufferType,newBuffer);gl.bufferData(bufferType,chunkDataView,gl.STATIC_DRAW);viewIDsToGLBufferIDs[bufferViewID]=newBuffer;}
else
{newBuffer=gl.createBuffer();gl.bindBuffer(bufferType,newBuffer);gl.bufferData(bufferType,bufferView["byteLength"],gl.STATIC_DRAW);currentChunkDataOffset=0;for(i=0;i<chunkIDList.length;++i)
{chunk=bufferChunksObj[chunkIDList[i]];chunkDataView=new Uint8Array(srcBodyView.buffer,srcBodyView.byteOffset+chunk["byteOffset"],chunk["byteLength"]);gl.bufferSubData(bufferType,currentChunkDataOffset,chunkDataView);currentChunkDataOffset+=chunk["byteLength"];}
viewIDsToGLBufferIDs[bufferViewID]=newBuffer;}}},getVolume:function()
{var vol=this._mesh._vol;var shapeNode;if(!vol.isValid())
{shapeNode=this._parentNodes[0];if(typeof shapeNode._vf["bboxCenter"]!='undefined'&&typeof shapeNode._vf["bboxSize"]!='undefined')
{vol.setBoundsByCenterSize(shapeNode._vf["bboxCenter"],shapeNode._vf["bboxSize"]);}
else
{}}
return vol;}}));x3dom.nodeTypes.ExternalGeometry._findNumComponentsForSRCAccessorType=function(type)
{switch(type)
{case"SCALAR":return 1;case"VEC2":return 2;case"VEC3":return 3;case"VEC4":return 4;default:return 0;}};x3dom.registerNodeType("X3DBinaryContainerGeometryNode","Geometry3D",defineClass(x3dom.nodeTypes.X3DSpatialGeometryNode,function(ctx){x3dom.nodeTypes.X3DBinaryContainerGeometryNode.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'position',0,0,0);this.addField_SFVec3f(ctx,'size',1,1,1);this.addField_MFInt32(ctx,'vertexCount',[0]);this.addField_MFString(ctx,'primType',['TRIANGLES']);this._mesh._invalidate=false;this._mesh._numCoords=0;this._mesh._numFaces=0;this._diameter=this._vf.size.length();},{getMin:function(){var vol=this._mesh._vol;if(!vol.isValid()){vol.setBoundsByCenterSize(this._vf.position,this._vf.size);}
return vol.min;},getMax:function(){var vol=this._mesh._vol;if(!vol.isValid()){vol.setBoundsByCenterSize(this._vf.position,this._vf.size);}
return vol.max;},getVolume:function(){var vol=this._mesh._vol;if(!vol.isValid()){vol.setBoundsByCenterSize(this._vf.position,this._vf.size);}
return vol;},invalidateVolume:function(){},getCenter:function(){return this._vf.position;},getDiameter:function(){return this._diameter;},needLighting:function(){var hasTris=(this._vf.primType.length&&this._vf.primType[0].indexOf("TRIANGLE")>=0);return(this._vf.lit&&hasTris);}}));x3dom.registerNodeType("BinaryGeometry","Geometry3D",defineClass(x3dom.nodeTypes.X3DBinaryContainerGeometryNode,function(ctx){x3dom.nodeTypes.BinaryGeometry.superClass.call(this,ctx);this.addField_SFString(ctx,'index',"");this.addField_SFString(ctx,'coord',"");this.addField_SFString(ctx,'normal',"");this.addField_SFString(ctx,'texCoord',"");this.addField_SFString(ctx,'color',"");this.addField_SFString(ctx,'tangent',"");this.addField_SFString(ctx,'binormal',"");this.addField_SFString(ctx,'indexType',"Uint16");this.addField_SFString(ctx,'coordType',"Float32");this.addField_SFString(ctx,'normalType',"Float32");this.addField_SFString(ctx,'texCoordType',"Float32");this.addField_SFString(ctx,'colorType',"Float32");this.addField_SFString(ctx,'tangentType',"Float32");this.addField_SFString(ctx,'binormalType',"Float32");this.addField_SFBool(ctx,'normalAsSphericalCoordinates',false);this.addField_SFBool(ctx,'rgbaColors',false);this.addField_SFInt32(ctx,'numTexCoordComponents',2);this.addField_SFBool(ctx,'normalPerVertex',true);this.addField_SFBool(ctx,'idsPerVertex',false);this.addField_SFBool(ctx,'compressed',false);this._hasStrideOffset=false;this._mesh._numPosComponents=this._vf.normalAsSphericalCoordinates?4:3;this._mesh._numTexComponents=this._vf.numTexCoordComponents;this._mesh._numColComponents=this._vf.rgbaColors?4:3;this._mesh._numNormComponents=this._vf.normalAsSphericalCoordinates?2:3;this._vertexCountSum=0;for(var i=0;i<this._vf.vertexCount.length;++i){this._vertexCountSum+=this._vf.vertexCount[i];}},{parentAdded:function(parent)
{var offsetInd,strideInd,offset,stride;offsetInd=this._vf.coord.lastIndexOf('#');strideInd=this._vf.coord.lastIndexOf('+');if(offsetInd>=0&&strideInd>=0){offset=+this._vf.coord.substring(++offsetInd,strideInd);stride=+this._vf.coord.substring(strideInd);parent._coordStrideOffset=[stride,offset];this._hasStrideOffset=true;if((offset/8)-Math.floor(offset/8)==0){this._mesh._numPosComponents=4;}}
else if(strideInd>=0){stride=+this._vf.coord.substring(strideInd);parent._coordStrideOffset=[stride,0];if((stride/8)-Math.floor(stride/8)==0){this._mesh._numPosComponents=4;}}
offsetInd=this._vf.normal.lastIndexOf('#');strideInd=this._vf.normal.lastIndexOf('+');if(offsetInd>=0&&strideInd>=0){offset=+this._vf.normal.substring(++offsetInd,strideInd);stride=+this._vf.normal.substring(strideInd);parent._normalStrideOffset=[stride,offset];}
else if(strideInd>=0){stride=+this._vf.normal.substring(strideInd);parent._normalStrideOffset=[stride,0];}
offsetInd=this._vf.texCoord.lastIndexOf('#');strideInd=this._vf.texCoord.lastIndexOf('+');if(offsetInd>=0&&strideInd>=0){offset=+this._vf.texCoord.substring(++offsetInd,strideInd);stride=+this._vf.texCoord.substring(strideInd);parent._texCoordStrideOffset=[stride,offset];}
else if(strideInd>=0){stride=+this._vf.texCoord.substring(strideInd);parent._texCoordStrideOffset=[stride,0];}
offsetInd=this._vf.color.lastIndexOf('#');strideInd=this._vf.color.lastIndexOf('+');if(offsetInd>=0&&strideInd>=0){offset=+this._vf.color.substring(++offsetInd,strideInd);stride=+this._vf.color.substring(strideInd);parent._colorStrideOffset=[stride,offset];}
else if(strideInd>=0){stride=+this._vf.color.substring(strideInd);parent._colorStrideOffset=[stride,0];}
if(this._vf.indexType!="Uint16"&&!x3dom.caps.INDEX_UINT)
x3dom.debug.logWarning("Index type "+this._vf.indexType+" problematic");},doIntersect:function(line)
{var min=this.getMin();var max=this.getMax();var isect=line.intersect(min,max);if(isect&&line.enter<line.dist){line.dist=line.enter;line.hitObject=this;line.hitPoint=line.pos.add(line.dir.multiply(line.enter));return true;}
else{return false;}},getPrecisionMax:function(type)
{switch(this._vf[type])
{case"Int8":return 127.0;case"Uint8":return 255.0;case"Int16":return 32767.0;case"Uint16":return 65535.0;case"Int32":return 2147483647.0;case"Uint32":return 4294967295.0;case"Float32":case"Float64":default:return 1.0;}}}));x3dom.registerNodeType("PopGeometryLevel","Geometry3D",defineClass(x3dom.nodeTypes.X3DGeometricPropertyNode,function(ctx){x3dom.nodeTypes.PopGeometryLevel.superClass.call(this,ctx);this.addField_SFString(ctx,'src',"");this.addField_SFInt32(ctx,'numIndices',0);this.addField_SFInt32(ctx,'vertexDataBufferOffset',0);},{getSrc:function(){return this._vf.src;},getNumIndices:function(){return this._vf.numIndices;},getVertexDataBufferOffset:function(){return this._vf.vertexDataBufferOffset;}}));x3dom.registerNodeType("PopGeometry","Geometry3D",defineClass(x3dom.nodeTypes.X3DBinaryContainerGeometryNode,function(ctx){x3dom.nodeTypes.PopGeometry.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'tightSize',1,1,1);this.addField_SFVec3f(ctx,'maxBBSize',1,1,1);this.addField_SFVec3f(ctx,'bbMinModF',0,0,0);this.addField_SFVec3f(ctx,'bbMaxModF',1,1,1);this.addField_SFVec3f(ctx,'bbMin',0,0,0);this.addField_SFVec3f(ctx,'bbShiftVec',0,0,0);if(this._vf.bbMinModF.x>this._vf.bbMaxModF.x)
this._vf.bbShiftVec.x=1.0;if(this._vf.bbMinModF.y>this._vf.bbMaxModF.y)
this._vf.bbShiftVec.y=1.0;if(this._vf.bbMinModF.z>this._vf.bbMaxModF.z)
this._vf.bbShiftVec.z=1.0;this.addField_MFNode('levels',x3dom.nodeTypes.PopGeometryLevel);this.addField_SFInt32(ctx,'attributeStride',0);this.addField_SFInt32(ctx,'positionOffset',0);this.addField_SFInt32(ctx,'normalOffset',0);this.addField_SFInt32(ctx,'texcoordOffset',0);this.addField_SFInt32(ctx,'colorOffset',0);this.addField_SFInt32(ctx,'numAnchorVertices',0);this.addField_SFInt32(ctx,'positionPrecision',2);this.addField_SFInt32(ctx,'normalPrecision',1);this.addField_SFInt32(ctx,'texcoordPrecision',2);this.addField_SFInt32(ctx,'colorPrecision',1);this.addField_SFInt32(ctx,'minPrecisionLevel',-1);this.addField_SFInt32(ctx,'maxPrecisionLevel',-1);this.addField_SFFloat(ctx,'precisionFactor',1.0);this.addField_SFString(ctx,'coordType',"Uint16");this.addField_SFString(ctx,'normalType',"Uint8");this.addField_SFString(ctx,'texCoordType',"Uint16");this.addField_SFString(ctx,'colorType',"Uint8");this.addField_SFInt32(ctx,'vertexBufferSize',0);this.addField_SFBool(ctx,'indexedRendering',true);this.addField_SFBool(ctx,'sphericalNormals',false);this.addField_MFInt32(ctx,'originalVertexCount',[0]);for(var i=0;i<this._vf.vertexCount.length;++i){this._vf.originalVertexCount[i]=this._vf.vertexCount[i];}
this._vf.maxBBSize=x3dom.fields.SFVec3f.copy(this._vf.size);this._vf.size=this._vf.tightSize;this._diameter=this._vf.size.length();this._bbMinBySize=[Math.floor(this._vf.bbMin.x/this._vf.maxBBSize.x),Math.floor(this._vf.bbMin.y/this._vf.maxBBSize.y),Math.floor(this._vf.bbMin.z/this._vf.maxBBSize.z)];this._volRadius=this._vf.size.length()/2;this._volLargestRadius=this._vf.maxBBSize.length()/2;this._mesh._numPosComponents=this._vf.sphericalNormals?4:3;this._mesh._numNormComponents=this._vf.sphericalNormals?2:3;this._mesh._numTexComponents=2;this._mesh._numColComponents=3;x3dom.nodeTypes.PopGeometry.numTotalVerts+=this.getVertexCount();x3dom.nodeTypes.PopGeometry.numTotalTris+=(this.hasIndex()?this.getTotalNumberOfIndices():this.getVertexCount())/3;},{forceUpdateCoverage:function(){return true;},getBBoxShiftVec:function(){return this._vf.bbShiftVec;},getBBoxSize:function(){return this._vf.size;},hasIndex:function(){return this._vf.indexedRendering;},getTotalNumberOfIndices:function(){if(this._vf.indexedRendering){var sum=0;for(var i=0;i<this._vf.originalVertexCount.length;++i){sum+=this._vf.originalVertexCount[i];}
return sum;}
else{return 0;}},getVertexCount:function(){var sum=0;for(var i=0;i<this._vf.originalVertexCount.length;++i){sum+=this._vf.originalVertexCount[i];}
return sum;},adaptVertexCount:function(numVerts){var verts=0;for(var i=0;i<this._vf.originalVertexCount.length;++i){if((this._vf.originalVertexCount[i]+verts)<=numVerts){this._vf.vertexCount[i]=this._vf.originalVertexCount[i];verts+=this._vf.originalVertexCount[i];}
else{this._vf.vertexCount[i]=numVerts-verts;break;}}},hasNormal:function(){return(this._vf.normalOffset!=0)&&!this._vf.sphericalNormals;},hasTexCoord:function(){return(this._vf.texcoordOffset!=0);},hasColor:function(){return(this._vf.colorOffset!=0);},getPositionPrecision:function(){return this._vf.positionPrecision;},getNormalPrecision:function(){return this._vf.normalPrecision;},getTexCoordPrecision:function(){return this._vf.texcoordPrecision;},getColorPrecision:function(){return this._vf.colorPrecision;},getAttributeStride:function(){return this._vf.attributeStride;},getPositionOffset:function(){return this._vf.positionOffset;},getNormalOffset:function(){return this._vf.normalOffset;},getTexCoordOffset:function(){return this._vf.texcoordOffset;},getColorOffset:function(){return this._vf.colorOffset;},getBufferTypeStringFromByteCount:function(bytes){switch(bytes)
{case 1:return"Uint8";case 2:return"Uint16";default:return 0;}},getDataURLs:function(){var urls=[];for(var i=0;i<this._cf.levels.nodes.length;++i){urls.push(this._cf.levels.nodes[i].getSrc());}
return urls;},getNumIndicesByLevel:function(lvl){return this._cf.levels.nodes[lvl].getNumIndices();},getNumLevels:function(lvl){return this._cf.levels.nodes.length;},getVertexDataBufferOffset:function(lvl){return this._cf.levels.nodes[lvl].getVertexDataBufferOffset();},getPrecisionMax:function(type){switch(this._vf[type])
{case"Uint8":return 255.0;case"Uint16":return 65535.0;default:return 1.0;}}}));x3dom.nodeTypes.PopGeometry.ErrorToleranceFactor=1;x3dom.nodeTypes.PopGeometry.PrecisionFactorOnMove=1;x3dom.nodeTypes.PopGeometry.numRenderedVerts=0;x3dom.nodeTypes.PopGeometry.numRenderedTris=0;x3dom.nodeTypes.PopGeometry.numTotalVerts=0;x3dom.nodeTypes.PopGeometry.numTotalTris=0;x3dom.nodeTypes.PopGeometry.powLUT=[32768,16384,8192,4096,2048,1024,512,256,128,64,32,16,8,4,2,1];x3dom.registerNodeType("ImageGeometry","Geometry3D",defineClass(x3dom.nodeTypes.X3DBinaryContainerGeometryNode,function(ctx){x3dom.nodeTypes.ImageGeometry.superClass.call(this,ctx);this.addField_SFVec2f(ctx,'implicitMeshSize',256,256);this.addField_SFInt32(ctx,'numColorComponents',3);this.addField_SFInt32(ctx,'numTexCoordComponents',2);this.addField_SFNode('index',x3dom.nodeTypes.X3DTextureNode);this.addField_MFNode('coord',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('normal',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('texCoord',x3dom.nodeTypes.X3DTextureNode);this.addField_SFNode('color',x3dom.nodeTypes.X3DTextureNode);this._mesh._numColComponents=this._vf.numColorComponents;this._mesh._numTexComponents=this._vf.numTexCoordComponents;if(this._vf.implicitMeshSize.y==0)
this._vf.implicitMeshSize.y=this._vf.implicitMeshSize.x;if(x3dom.caps.BACKEND=='webgl'&&x3dom.caps.MAX_VERTEX_TEXTURE_IMAGE_UNITS>0){var geoCacheID='ImageGeometry_'+this._vf.implicitMeshSize.x+'_'+this._vf.implicitMeshSize.y;if(this._vf.useGeoCache&&x3dom.geoCache[geoCacheID]!==undefined)
{this._mesh=x3dom.geoCache[geoCacheID];}
else
{for(var y=0;y<this._vf.implicitMeshSize.y;y++)
{for(var x=0;x<this._vf.implicitMeshSize.x;x++)
{this._mesh._positions[0].push(x/this._vf.implicitMeshSize.x,y/this._vf.implicitMeshSize.y,0);}}
this._mesh._numFaces=this._mesh._indices[0].length/3;this._mesh._numCoords=this._mesh._positions[0].length/3;x3dom.geoCache[geoCacheID]=this._mesh;}}
this._vol=new x3dom.fields.BoxVolume();this._dirty={coord:true,normal:true,texCoord:true,color:true,index:true};},{setGeoDirty:function(){this._dirty.coord=true;this._dirty.normal=true;this._dirty.texCoords=true;this._dirty.color=true;this._dirty.index=true;},unsetGeoDirty:function(){this._dirty.coord=false;this._dirty.normal=false;this._dirty.texCoords=false;this._dirty.color=false;this._dirty.index=false;},nodeChanged:function()
{Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;node._dirty.normals=true;node._dirty.texcoords=true;node._dirty.colors=true;});this._vol.invalidate();},fieldChanged:function(fieldName)
{if(fieldName=="index"||fieldName=="coord"||fieldName=="normal"||fieldName=="texCoord"||fieldName=="color"){this._dirty[fieldName]=true;this._vol.invalidate();}
else if(fieldName=="implicitMeshSize"){this._vol.invalidate();}},getMin:function(){var vol=this._vol;if(!vol.isValid()){vol.setBoundsByCenterSize(this._vf.position,this._vf.size);}
return vol.min;},getMax:function(){var vol=this._vol;if(!vol.isValid()){vol.setBoundsByCenterSize(this._vf.position,this._vf.size);}
return vol.max;},getVolume:function(){var vol=this._vol;if(!vol.isValid()){vol.setBoundsByCenterSize(this._vf.position,this._vf.size);}
return vol;},numCoordinateTextures:function()
{return this._cf.coord.nodes.length;},getIndexTexture:function()
{if(this._cf.index.node){this._cf.index.node._type="IG_index";return this._cf.index.node;}else{return null;}},getIndexTextureURL:function()
{if(this._cf.index.node){return this._cf.index.node._vf.url;}else{return null;}},getCoordinateTexture:function(pos)
{if(this._cf.coord.nodes[pos]){this._cf.coord.nodes[pos]._type="IG_coords"+pos;return this._cf.coord.nodes[pos];}else{return null;}},getCoordinateTextureURL:function(pos)
{if(this._cf.coord.nodes[pos]){return this._cf.coord.nodes[pos]._vf.url;}else{return null;}},getCoordinateTextureURLs:function()
{var urls=[];for(var i=0;i<this._cf.coord.nodes.length;i++)
{urls.push(this._cf.coord.nodes[i]._vf.url);}
return urls;},getNormalTexture:function()
{if(this._cf.normal.node){this._cf.normal.node._type="IG_normals";return this._cf.normal.node;}else{return null;}},getNormalTextureURL:function()
{if(this._cf.normal.node){return this._cf.normal.node._vf.url;}else{return null;}},getTexCoordTexture:function()
{if(this._cf.texCoord.node){this._cf.texCoord.node._type="IG_texCoords";return this._cf.texCoord.node;}else{return null;}},getTexCoordTextureURL:function()
{if(this._cf.texCoord.node){return this._cf.texCoord.node._vf.url;}else{return null;}},getColorTexture:function()
{if(this._cf.color.node){this._cf.color.node._type="IG_colors";return this._cf.color.node;}else{return null;}},getColorTextureURL:function()
{if(this._cf.color.node){return this._cf.color.node._vf.url;}else{return null;}},getTextures:function()
{var textures=[];var index=this.getIndexTexture();if(index)textures.push(index);for(i=0;i<this.numCoordinateTextures();i++){var coord=this.getCoordinateTexture(i);if(coord)textures.push(coord);}
var normal=this.getNormalTexture();if(normal)textures.push(normal);var texCoord=this.getTexCoordTexture();if(texCoord)textures.push(texCoord);var color=this.getColorTexture();if(color)textures.push(color);return textures;}}));x3dom.registerNodeType("IndexedFaceSet","Geometry3D",defineClass(x3dom.nodeTypes.X3DComposedGeometryNode,function(ctx){x3dom.nodeTypes.IndexedFaceSet.superClass.call(this,ctx);this.addField_SFFloat(ctx,'creaseAngle',0);this.addField_SFBool(ctx,'convex',true);this.addField_MFInt32(ctx,'coordIndex',[]);this.addField_MFInt32(ctx,'normalIndex',[]);this.addField_MFInt32(ctx,'colorIndex',[]);this.addField_MFInt32(ctx,'texCoordIndex',[]);},{nodeChanged:function()
{var time0=new Date().getTime();this.handleAttribs();var indexes=this._vf.coordIndex;if(indexes.length&&indexes[indexes.length-1]!=-1)
{indexes.push(-1);x3dom.debug.logWarning('Last index value should be -1.');}
var normalInd=this._vf.normalIndex;var texCoordInd=this._vf.texCoordIndex;var colorInd=this._vf.colorIndex;var hasNormal=false,hasNormalInd=false;var hasTexCoord=false,hasTexCoordInd=false;var hasColor=false,hasColorInd=false;var colPerVert=this._vf.colorPerVertex;var normPerVert=this._vf.normalPerVertex;if(normalInd.length>0)
{hasNormalInd=true;}
if(texCoordInd.length>0)
{hasTexCoordInd=true;}
if(colorInd.length>0)
{hasColorInd=true;}
var positions,normals,texCoords,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode.getPoints();var normalNode=this._cf.normal.node;if(normalNode)
{hasNormal=true;normals=normalNode._vf.vector;}
else{hasNormal=false;}
var texMode="",numTexComponents=2;var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(texCoordNode)
{if(texCoordNode._vf.point){hasTexCoord=true;texCoords=texCoordNode._vf.point;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}}
else if(texCoordNode._vf.mode){texMode=texCoordNode._vf.mode;}}
else{hasTexCoord=false;}
this._mesh._numTexComponents=numTexComponents;var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode)
{hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
this._mesh._numColComponents=numColComponents;this._mesh._indices[0]=[];this._mesh._positions[0]=[];this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._colors[0]=[];var i,j,t,cnt,faceCnt;var p0,p1,p2,n0,n1,n2,t0,t1,t2,c0,c1,c2;if((this._vf.creaseAngle<=x3dom.fields.Eps)||(positions.length>x3dom.Utils.maxIndexableCoords)||(hasNormal&&hasNormalInd)||(hasTexCoord&&hasTexCoordInd)||(hasColor&&hasColorInd))
{if(this._vf.creaseAngle<=x3dom.fields.Eps)
x3dom.debug.logWarning('Fallback to inefficient multi-index mode since creaseAngle=0.');if(this._vf.convex){t=0;cnt=0;faceCnt=0;this._mesh._multiIndIndices=[];this._mesh._posSize=positions.length;for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){t=0;faceCnt++;continue;}
if(hasNormalInd){x3dom.debug.assert(normalInd[i]!=-1);}
if(hasTexCoordInd){x3dom.debug.assert(texCoordInd[i]!=-1);}
if(hasColorInd){x3dom.debug.assert(colorInd[i]!=-1);}
switch(t)
{case 0:p0=+indexes[i];if(hasNormalInd&&normPerVert){n0=+normalInd[i];}
else if(hasNormalInd&&!normPerVert){n0=+normalInd[faceCnt];}
else if(normPerVert){n0=p0;}
else{n0=faceCnt;}
if(hasTexCoordInd){t0=+texCoordInd[i];}
else{t0=p0;}
if(hasColorInd&&colPerVert){c0=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c0=+colorInd[faceCnt];}
else if(colPerVert){c0=p0;}
else{c0=faceCnt;}
t=1;break;case 1:p1=+indexes[i];if(hasNormalInd&&normPerVert){n1=+normalInd[i];}
else if(hasNormalInd&&!normPerVert){n1=+normalInd[faceCnt];}
else if(normPerVert){n1=p1;}
else{n1=faceCnt;}
if(hasTexCoordInd){t1=+texCoordInd[i];}
else{t1=p1;}
if(hasColorInd&&colPerVert){c1=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c1=+colorInd[faceCnt];}
else if(colPerVert){c1=p1;}
else{c1=faceCnt;}
t=2;break;case 2:p2=+indexes[i];if(hasNormalInd&&normPerVert){n2=+normalInd[i];}
else if(hasNormalInd&&!normPerVert){n2=+normalInd[faceCnt];}
else if(normPerVert){n2=p2;}
else{n2=faceCnt;}
if(hasTexCoordInd){t2=+texCoordInd[i];}
else{t2=p2;}
if(hasColorInd&&colPerVert){c2=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c2=+colorInd[faceCnt];}
else if(colPerVert){c2=p2;}
else{c2=faceCnt;}
t=3;this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);if(hasNormal){this._mesh._normals[0].push(normals[n0].x);this._mesh._normals[0].push(normals[n0].y);this._mesh._normals[0].push(normals[n0].z);this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);}
this._mesh._multiIndIndices.push(p0,p1,p2);if(hasColor){this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c0].a);}
this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t0].x);this._mesh._texCoords[0].push(texCoords[t0].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t0].z);}
this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}}
break;case 3:p1=p2;t1=t2;if(normPerVert){n1=n2;}
if(colPerVert){c1=c2;}
p2=+indexes[i];if(hasNormalInd&&normPerVert){n2=+normalInd[i];}else if(hasNormalInd&&!normPerVert){}else if(normPerVert){n2=p2;}else{n2=faceCnt;}
if(hasTexCoordInd){t2=+texCoordInd[i];}else{t2=p2;}
if(hasColorInd&&colPerVert){c2=+colorInd[i];}else if(hasColorInd&&!colPerVert){}else if(colPerVert){c2=p2;}else{c2=faceCnt;}
this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);if(hasNormal){this._mesh._normals[0].push(normals[n0].x);this._mesh._normals[0].push(normals[n0].y);this._mesh._normals[0].push(normals[n0].z);this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);}
this._mesh._multiIndIndices.push(p0,p1,p2);if(hasColor){this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c0].a);}
this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t0].x);this._mesh._texCoords[0].push(texCoords[t0].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t0].z);}
this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}}
break;default:}}}
else{var linklist=new x3dom.DoublyLinkedList();var data={};cnt=0;faceCnt=0;for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){var multi_index_data=x3dom.EarClipping.getMultiIndexes(linklist);for(j=0;j<multi_index_data.indices.length;j++)
{this._mesh._indices[0].push(cnt);cnt++;this._mesh._positions[0].push(multi_index_data.point[j].x,multi_index_data.point[j].y,multi_index_data.point[j].z);if(hasNormal){this._mesh._normals[0].push(multi_index_data.normals[j].x,multi_index_data.normals[j].y,multi_index_data.normals[j].z);}
if(hasColor){this._mesh._colors[0].push(multi_index_data.colors[j].r,multi_index_data.colors[j].g,multi_index_data.colors[j].b);if(numColComponents===4){this._mesh._colors[0].push(multi_index_data.colors[j].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(multi_index_data.texCoords[j].x,multi_index_data.texCoords[j].y);if(numTexComponents===3){this._mesh._texCoords[0].push(multi_index_data.texCoords[j].z);}}}
linklist=new x3dom.DoublyLinkedList();faceCnt++;continue;}
if(hasNormal){if(hasNormalInd&&normPerVert){data.normals=normals[normalInd[i]];}else if(hasNormalInd&&!normPerVert){data.normals=normals[normalInd[faceCnt]];}else{data.normals=normals[indexes[i]];}}
if(hasColor){if(hasColorInd&&colPerVert){data.colors=colors[colorInd[i]];}else if(hasColorInd&&!colPerVert){data.colors=colors[colorInd[faceCnt]];}else if(colPerVert){data.colors=colors[indexes[i]];}else{data.colors=colors[faceCnt];}}
if(hasTexCoord){if(hasTexCoordInd){data.texCoords=texCoords[texCoordInd[i]];}else{data.texCoords=texCoords[indexes[i]];}}
linklist.appendNode(new x3dom.DoublyLinkedList.ListNode(positions[indexes[i]],indexes[i],data.normals,data.colors,data.texCoords));}
this._mesh.splitMesh();}
if(!hasNormal){this._mesh.calcNormals(this._vf.creaseAngle,this._vf.ccw);}
if(!hasTexCoord){this._mesh.calcTexCoords(texMode);}}
else
{t=0;if(this._vf.convex){for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){t=0;continue;}
switch(t){case 0:n0=+indexes[i];t=1;break;case 1:n1=+indexes[i];t=2;break;case 2:n2=+indexes[i];t=3;this._mesh._indices[0].push(n0,n1,n2);break;case 3:n1=n2;n2=+indexes[i];this._mesh._indices[0].push(n0,n1,n2);break;}}}
else{linklist=new x3dom.DoublyLinkedList();for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){var linklist_indices=x3dom.EarClipping.getIndexes(linklist);for(j=0;j<linklist_indices.length;j++){this._mesh._indices[0].push(linklist_indices[j]);}
linklist=new x3dom.DoublyLinkedList();continue;}
linklist.appendNode(new x3dom.DoublyLinkedList.ListNode(positions[indexes[i]],indexes[i]));}}
this._mesh._positions[0]=positions.toGL();if(hasNormal){this._mesh._normals[0]=normals.toGL();}
else{this._mesh.calcNormals(this._vf.creaseAngle,this._vf.ccw);}
if(hasTexCoord){this._mesh._texCoords[0]=texCoords.toGL();this._mesh._numTexComponents=numTexComponents;}
else{this._mesh.calcTexCoords(texMode);}
if(hasColor){this._mesh._colors[0]=colors.toGL();this._mesh._numColComponents=numColComponents;}}
this.invalidateVolume();this._mesh._numFaces=0;this._mesh._numCoords=0;for(i=0;i<this._mesh._positions.length;i++){var indexLength=this._mesh._indices[i].length;var numCoords=this._mesh._positions[i].length/3;this._mesh._numCoords+=numCoords;if(indexLength>0)
this._mesh._numFaces+=indexLength/3;else
this._mesh._numFaces+=numCoords/3;}},fieldChanged:function(fieldName)
{if(fieldName!="coord"&&fieldName!="normal"&&fieldName!="texCoord"&&fieldName!="color"&&fieldName!="coordIndex")
{x3dom.debug.logWarning("IndexedFaceSet: fieldChanged for "+
fieldName+" not yet implemented!");return;}
var pnts=this._cf.coord.node._vf.point;var n=pnts.length;var texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(((this._vf.creaseAngle<=x3dom.fields.Eps)||(n>x3dom.Utils.maxIndexableCoords)||(this._vf.normalIndex.length>0&&this._cf.normal.node)||(this._vf.texCoordIndex.length>0&&texCoordNode)||(this._vf.colorIndex.length>0&&this._cf.color.node))&&this._mesh._multiIndIndices)
{var needNormals=!this._cf.normal.node&&this._vf.normalUpdateMode.toLowerCase()!='none';n=this._mesh._multiIndIndices.length;this._mesh._positions[0]=[];this._mesh._indices[0]=[];if(fieldName=="coord"&&n)
{if(needNormals){this._mesh._normals[0]=[];}
for(i=0;i<n;i+=3){var ind0=this._mesh._multiIndIndices[i];var ind1=this._mesh._multiIndIndices[i+1];var ind2=this._mesh._multiIndIndices[i+2];var pos0=pnts[ind0];var pos1=pnts[ind1];var pos2=pnts[ind2];this._mesh._positions[0].push(pos0.x,pos0.y,pos0.z);this._mesh._positions[0].push(pos1.x,pos1.y,pos1.z);this._mesh._positions[0].push(pos2.x,pos2.y,pos2.z);if(needNormals){var a=pos0.subtract(pos1);var b=pos1.subtract(pos2);var norm=a.cross(b).normalize();if(!this._vf.ccw)
norm=norm.negate();this._mesh._normals[0].push(norm.x,norm.y,norm.z);this._mesh._normals[0].push(norm.x,norm.y,norm.z);this._mesh._normals[0].push(norm.x,norm.y,norm.z);}}
this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;if(needNormals)
node._dirty.normals=true;});return;}
this._mesh._normals[0]=[];this._mesh._texCoords[0]=[];this._mesh._colors[0]=[];var indexes=this._vf.coordIndex;var normalInd=this._vf.normalIndex;var texCoordInd=this._vf.texCoordIndex;var colorInd=this._vf.colorIndex;var hasNormal=false,hasNormalInd=false;var hasTexCoord=false,hasTexCoordInd=false;var hasColor=false,hasColorInd=false;var colPerVert=this._vf.colorPerVertex;var normPerVert=this._vf.normalPerVertex;if(normalInd.length>0)
{hasNormalInd=true;}
if(texCoordInd.length>0)
{hasTexCoordInd=true;}
if(colorInd.length>0)
{hasColorInd=true;}
var positions,normals,texCoords,colors;var coordNode=this._cf.coord.node;x3dom.debug.assert(coordNode);positions=coordNode.getPoints();var normalNode=this._cf.normal.node;if(normalNode)
{hasNormal=true;normals=normalNode._vf.vector;}
else{hasNormal=false;}
var texMode="",numTexComponents=2;texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
if(texCoordNode)
{if(texCoordNode._vf.point){hasTexCoord=true;texCoords=texCoordNode._vf.point;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.TextureCoordinate3D)){numTexComponents=3;}}
else if(texCoordNode._vf.mode){texMode=texCoordNode._vf.mode;}}
else{hasTexCoord=false;}
this._mesh._numTexComponents=numTexComponents;var numColComponents=3;var colorNode=this._cf.color.node;if(colorNode)
{hasColor=true;colors=colorNode._vf.color;if(x3dom.isa(colorNode,x3dom.nodeTypes.ColorRGBA)){numColComponents=4;}}
else{hasColor=false;}
this._mesh._numColComponents=numColComponents;var i,j,t,cnt,faceCnt;var p0,p1,p2,n0,n1,n2,t0,t1,t2,c0,c1,c2;if(this._vf.convex){t=0;cnt=0;faceCnt=0;this._mesh._multiIndIndices=[];this._mesh._posSize=positions.length;for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){t=0;faceCnt++;continue;}
if(hasNormalInd){x3dom.debug.assert(normalInd[i]!=-1);}
if(hasTexCoordInd){x3dom.debug.assert(texCoordInd[i]!=-1);}
if(hasColorInd){x3dom.debug.assert(colorInd[i]!=-1);}
switch(t)
{case 0:p0=+indexes[i];if(hasNormalInd&&normPerVert){n0=+normalInd[i];}
else if(hasNormalInd&&!normPerVert){n0=+normalInd[faceCnt];}
else if(normPerVert){n0=p0;}
else{n0=faceCnt;}
if(hasTexCoordInd){t0=+texCoordInd[i];}
else{t0=p0;}
if(hasColorInd&&colPerVert){c0=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c0=+colorInd[faceCnt];}
else if(colPerVert){c0=p0;}
else{c0=faceCnt;}
t=1;break;case 1:p1=+indexes[i];if(hasNormalInd&&normPerVert){n1=+normalInd[i];}
else if(hasNormalInd&&!normPerVert){n1=+normalInd[faceCnt];}
else if(normPerVert){n1=p1;}
else{n1=faceCnt;}
if(hasTexCoordInd){t1=+texCoordInd[i];}
else{t1=p1;}
if(hasColorInd&&colPerVert){c1=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c1=+colorInd[faceCnt];}
else if(colPerVert){c1=p1;}
else{c1=faceCnt;}
t=2;break;case 2:p2=+indexes[i];if(hasNormalInd&&normPerVert){n2=+normalInd[i];}
else if(hasNormalInd&&!normPerVert){n2=+normalInd[faceCnt];}
else if(normPerVert){n2=p2;}
else{n2=faceCnt;}
if(hasTexCoordInd){t2=+texCoordInd[i];}
else{t2=p2;}
if(hasColorInd&&colPerVert){c2=+colorInd[i];}
else if(hasColorInd&&!colPerVert){c2=+colorInd[faceCnt];}
else if(colPerVert){c2=p2;}
else{c2=faceCnt;}
t=3;this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);if(hasNormal){this._mesh._normals[0].push(normals[n0].x);this._mesh._normals[0].push(normals[n0].y);this._mesh._normals[0].push(normals[n0].z);this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);}
this._mesh._multiIndIndices.push(p0,p1,p2);if(hasColor){this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c0].a);}
this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t0].x);this._mesh._texCoords[0].push(texCoords[t0].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t0].z);}
this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}}
break;case 3:p1=p2;t1=t2;if(normPerVert){n1=n2;}
if(colPerVert){c1=c2;}
p2=+indexes[i];if(hasNormalInd&&normPerVert){n2=+normalInd[i];}else if(hasNormalInd&&!normPerVert){}else if(normPerVert){n2=p2;}else{n2=faceCnt;}
if(hasTexCoordInd){t2=+texCoordInd[i];}else{t2=p2;}
if(hasColorInd&&colPerVert){c2=+colorInd[i];}else if(hasColorInd&&!colPerVert){}else if(colPerVert){c2=p2;}else{c2=faceCnt;}
this._mesh._positions[0].push(positions[p0].x);this._mesh._positions[0].push(positions[p0].y);this._mesh._positions[0].push(positions[p0].z);this._mesh._positions[0].push(positions[p1].x);this._mesh._positions[0].push(positions[p1].y);this._mesh._positions[0].push(positions[p1].z);this._mesh._positions[0].push(positions[p2].x);this._mesh._positions[0].push(positions[p2].y);this._mesh._positions[0].push(positions[p2].z);if(hasNormal){this._mesh._normals[0].push(normals[n0].x);this._mesh._normals[0].push(normals[n0].y);this._mesh._normals[0].push(normals[n0].z);this._mesh._normals[0].push(normals[n1].x);this._mesh._normals[0].push(normals[n1].y);this._mesh._normals[0].push(normals[n1].z);this._mesh._normals[0].push(normals[n2].x);this._mesh._normals[0].push(normals[n2].y);this._mesh._normals[0].push(normals[n2].z);}
this._mesh._multiIndIndices.push(p0,p1,p2);if(hasColor){this._mesh._colors[0].push(colors[c0].r);this._mesh._colors[0].push(colors[c0].g);this._mesh._colors[0].push(colors[c0].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c0].a);}
this._mesh._colors[0].push(colors[c1].r);this._mesh._colors[0].push(colors[c1].g);this._mesh._colors[0].push(colors[c1].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c1].a);}
this._mesh._colors[0].push(colors[c2].r);this._mesh._colors[0].push(colors[c2].g);this._mesh._colors[0].push(colors[c2].b);if(numColComponents===4){this._mesh._colors[0].push(colors[c2].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(texCoords[t0].x);this._mesh._texCoords[0].push(texCoords[t0].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t0].z);}
this._mesh._texCoords[0].push(texCoords[t1].x);this._mesh._texCoords[0].push(texCoords[t1].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t1].z);}
this._mesh._texCoords[0].push(texCoords[t2].x);this._mesh._texCoords[0].push(texCoords[t2].y);if(numTexComponents===3){this._mesh._texCoords[0].push(texCoords[t2].z);}}
break;default:}}}
else{var linklist=new x3dom.DoublyLinkedList();var data={};cnt=0;faceCnt=0;for(i=0;i<indexes.length;++i)
{if(indexes[i]==-1){var multi_index_data=x3dom.EarClipping.getMultiIndexes(linklist);for(j=0;j<multi_index_data.indices.length;j++)
{this._mesh._indices[0].push(cnt);cnt++;this._mesh._positions[0].push(multi_index_data.point[j].x,multi_index_data.point[j].y,multi_index_data.point[j].z);if(hasNormal){this._mesh._normals[0].push(multi_index_data.normals[j].x,multi_index_data.normals[j].y,multi_index_data.normals[j].z);}
if(hasColor){this._mesh._colors[0].push(multi_index_data.colors[j].r,multi_index_data.colors[j].g,multi_index_data.colors[j].b);if(numColComponents===4){this._mesh._colors[0].push(multi_index_data.colors[j].a);}}
if(hasTexCoord){this._mesh._texCoords[0].push(multi_index_data.texCoords[j].x,multi_index_data.texCoords[j].y);if(numTexComponents===3){this._mesh._texCoords[0].push(multi_index_data.texCoords[j].z);}}}
linklist=new x3dom.DoublyLinkedList();faceCnt++;continue;}
if(hasNormal){if(hasNormalInd&&normPerVert){data.normals=normals[normalInd[i]];}else if(hasNormalInd&&!normPerVert){data.normals=normals[normalInd[faceCnt]];}else{data.normals=normals[indexes[i]];}}
if(hasColor){if(hasColorInd&&colPerVert){data.colors=colors[colorInd[i]];}else if(hasColorInd&&!colPerVert){data.colors=colors[colorInd[faceCnt]];}else{data.colors=colors[indexes[i]];}}
if(hasTexCoord){if(hasTexCoordInd){data.texCoords=texCoords[texCoordInd[i]];}else{data.texCoords=texCoords[indexes[i]];}}
linklist.appendNode(new x3dom.DoublyLinkedList.ListNode(positions[indexes[i]],indexes[i],data.normals,data.colors,data.texCoords));}
this._mesh.splitMesh();}
if(!hasNormal){this._mesh.calcNormals(this._vf.creaseAngle,this._vf.ccw);}
if(!hasTexCoord){this._mesh.calcTexCoords(texMode);}
this.invalidateVolume();this._mesh._numFaces=0;this._mesh._numCoords=0;for(i=0;i<this._mesh._positions.length;i++){var indexLength=this._mesh._indices[i].length;var numCoords=this._mesh._positions[i].length/3;this._mesh._numCoords+=numCoords;if(indexLength>0)
this._mesh._numFaces+=indexLength/3;else
this._mesh._numFaces+=numCoords/3;}
Array.forEach(this._parentNodes,function(node){node.setGeoDirty();});}
else{if(fieldName=="coord")
{var needNormals=!this._cf.normal.node&&this._vf.normalUpdateMode.toLowerCase()!='none';this._mesh._positions[0]=pnts.toGL();if(needNormals){this._mesh.calcNormals(this._vf.creaseAngle,this._vf.ccw);}
this.invalidateVolume();Array.forEach(this._parentNodes,function(node){node._dirty.positions=true;if(needNormals)
node._dirty.normals=true;node.invalidateVolume();});}
else if(fieldName=="color")
{pnts=this._cf.color.node._vf.color;this._mesh._colors[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.colors=true;});}
else if(fieldName=="normal")
{pnts=this._cf.normal.node._vf.vector;this._mesh._normals[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.normals=true;});}
else if(fieldName=="texCoord")
{texCoordNode=this._cf.texCoord.node;if(x3dom.isa(texCoordNode,x3dom.nodeTypes.MultiTextureCoordinate)){if(texCoordNode._cf.texCoord.nodes.length)
texCoordNode=texCoordNode._cf.texCoord.nodes[0];}
pnts=texCoordNode._vf.point;this._mesh._texCoords[0]=pnts.toGL();Array.forEach(this._parentNodes,function(node){node._dirty.texcoords=true;});}
else if(fieldName=="coordIndex")
{needNormals=!this._cf.normal.node&&this._vf.normalUpdateMode.toLowerCase()!='none';indexes=this._vf.coordIndex;t=0;n=indexes.length;this._mesh._indices[0]=[];for(i=0;i<n;++i){if(indexes[i]==-1){t=0;}
else{switch(t){case 0:p0=+indexes[i];t=1;break;case 1:p1=+indexes[i];t=2;break;case 2:p2=+indexes[i];t=3;this._mesh._indices[0].push(p0,p1,p2);break;case 3:p1=p2;p2=+indexes[i];this._mesh._indices[0].push(p0,p1,p2);break;}}}
if(needNormals){this._mesh.calcNormals(this._vf.creaseAngle,this._vf.ccw);}
Array.forEach(this._parentNodes,function(node){node._dirty.indexes=true;if(needNormals)
node._dirty.normals=true;});}}}}));x3dom.registerNodeType("X3DTexture3DNode","Texturing3D",defineClass(x3dom.nodeTypes.X3DTextureNode,function(ctx){x3dom.nodeTypes.X3DTexture3DNode.superClass.call(this,ctx);}));x3dom.registerNodeType("ComposedTexture3D","Texturing3D",defineClass(x3dom.nodeTypes.X3DTexture3DNode,function(ctx){x3dom.nodeTypes.ComposedTexture3D.superClass.call(this,ctx);this.addField_MFNode('texture',x3dom.nodeTypes.X3DTexture3DNode);}));x3dom.registerNodeType("ImageTexture3D","Texturing3D",defineClass(x3dom.nodeTypes.X3DTexture3DNode,function(ctx){x3dom.nodeTypes.ImageTexture3D.superClass.call(this,ctx);}));x3dom.registerNodeType("PixelTexture3D","Texturing3D",defineClass(x3dom.nodeTypes.X3DTexture3DNode,function(ctx){x3dom.nodeTypes.PixelTexture3D.superClass.call(this,ctx);}));x3dom.registerNodeType("TextureCoordinate3D","Texturing3D",defineClass(x3dom.nodeTypes.X3DTextureCoordinateNode,function(ctx){x3dom.nodeTypes.TextureCoordinate3D.superClass.call(this,ctx);this.addField_MFVec3f(ctx,'point',[]);}));x3dom.registerNodeType("TextureTransform3D","Texturing3D",defineClass(x3dom.nodeTypes.X3DTextureTransformNode,function(ctx){x3dom.nodeTypes.TextureTransform3D.superClass.call(this,ctx);this.addField_SFVec3f(ctx,'center',0,0,0);this.addField_SFRotation(ctx,'rotation',0,0,1,0);this.addField_SFVec3f(ctx,'scale',1,1,1);this.addField_SFVec3f(ctx,'translation',0,0,0);this.addField_SFRotation(ctx,'scaleOrientation',0,0,1,0);}));x3dom.registerNodeType("TextureTransformMatrix3D","Texturing3D",defineClass(x3dom.nodeTypes.X3DTextureTransformNode,function(ctx){x3dom.nodeTypes.TextureTransformMatrix3D.superClass.call(this,ctx);this.addField_SFMatrix4f(ctx,'matrix',1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}));x3dom.registerNodeType("X3DPointingDeviceSensorNode","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DSensorNode,function(ctx)
{x3dom.nodeTypes.X3DPointingDeviceSensorNode.superClass.call(this,ctx);},{pointerPressedOverSibling:function(event)
{if(this._vf.enabled)
{this._vf.isActive=true;this.postMessage('isActive',true);}},pointerMoved:function(event)
{},pointerMovedOver:function(event)
{if(this._vf.enabled)
{this.postMessage('isOver',true);}},pointerMovedOut:function(event)
{if(this._vf.enabled)
{this.postMessage('isOver',false);}},pointerReleased:function()
{if(this._vf.enabled)
{this._vf.isActive=false;this.postMessage('isActive',false);}}}));x3dom.registerNodeType("X3DDragSensorNode","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DPointingDeviceSensorNode,function(ctx)
{x3dom.nodeTypes.X3DDragSensorNode.superClass.call(this,ctx);this.addField_SFBool(ctx,'autoOffset',true);this._lastX=-1;this._lastY=-1;},{pointerPressedOverSibling:function(event)
{x3dom.nodeTypes.X3DPointingDeviceSensorNode.prototype.pointerPressedOverSibling.call(this,event);this._lastX=event.layerX;this._lastY=event.layerY;this._startDragging(event.viewarea,event.layerX,event.layerX,event.worldX,event.worldY,event.worldZ);},pointerMoved:function(event)
{x3dom.nodeTypes.X3DPointingDeviceSensorNode.prototype.pointerMoved.call(this,event);if(this._vf.isActive&&this._vf.enabled)
{this._process2DDrag(event.layerX,event.layerY,event.layerX-this._lastX,event.layerY-this._lastY);}},pointerReleased:function()
{x3dom.nodeTypes.X3DPointingDeviceSensorNode.prototype.pointerReleased.call(this);this._stopDragging();},_startDragging:function(viewarea,x,y,wx,wy,wz)
{},_process2DDrag:function(x,y,dx,dy)
{},_stopDragging:function()
{}}));x3dom.registerNodeType("X3DTouchSensorNode","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DPointingDeviceSensorNode,function(ctx)
{x3dom.nodeTypes.X3DTouchSensorNode.superClass.call(this,ctx);},{}));x3dom.registerNodeType("TouchSensor","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DTouchSensorNode,function(ctx)
{x3dom.nodeTypes.TouchSensor.superClass.call(this,ctx);},{}));x3dom.registerNodeType("PlaneSensor","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DDragSensorNode,function(ctx)
{x3dom.nodeTypes.PlaneSensor.superClass.call(this,ctx);this.addField_SFRotation(ctx,'axisRotation',0,0,1,0);this.addField_SFVec2f(ctx,'minPosition',0,0);this.addField_SFVec2f(ctx,'maxPosition',-1,-1);this.addField_SFVec3f(ctx,'offset',0,0,0);this._rotationMatrix=this._vf.axisRotation.toMatrix();this._worldToLocalMatrix=null;this._initialPlaneIntersection=null;this._planeNormal=null;this._viewArea=null;this._currentTranslation=new x3dom.fields.SFVec3f(0.0,0.0,0.0);},{getCurrentTransform:function()
{var parentTransform=x3dom.nodeTypes.X3DDragSensorNode.prototype.getCurrentTransform.call(this);return parentTransform.mult(this._rotationMatrix);},_startDragging:function(viewarea,x,y,wx,wy,wz)
{x3dom.nodeTypes.X3DDragSensorNode.prototype._startDragging.call(this,viewarea,x,y,wx,wy,wz);this._viewArea=viewarea;this._currentTranslation=new x3dom.fields.SFVec3f(0.0,0.0,0.0).add(this._vf.offset);this._worldToLocalMatrix=this.getCurrentTransform().inverse();this._initialPlaneIntersection=this._worldToLocalMatrix.multMatrixPnt(new x3dom.fields.SFVec3f(wx,wy,wz));this._planeNormal=new x3dom.fields.SFVec3f(0.0,0.0,1.0);},_process2DDrag:function(x,y,dx,dy)
{x3dom.nodeTypes.X3DDragSensorNode.prototype._process2DDrag.call(this,x,y,dx,dy);var intersectionPoint;var minPos,maxPos;if(this._initialPlaneIntersection)
{var viewRay=this._viewArea.calcViewRay(x,y);viewRay.pos=this._worldToLocalMatrix.multMatrixPnt(viewRay.pos);viewRay.dir=this._worldToLocalMatrix.multMatrixVec(viewRay.dir.normalize());intersectionPoint=viewRay.intersectPlane(this._initialPlaneIntersection,this._planeNormal);if(!intersectionPoint)
{intersectionPoint=viewRay.intersectPlane(this._initialPlaneIntersection,this._planeNormal.negate());}
if(intersectionPoint)
{this._currentTranslation=intersectionPoint.subtract(this._initialPlaneIntersection);this._currentTranslation=this._currentTranslation.add(this._vf.offset);minPos=this._vf.minPosition;maxPos=this._vf.maxPosition;if(minPos.x<=maxPos.x)
{this._currentTranslation.x=Math.min(this._currentTranslation.x,maxPos.x);this._currentTranslation.x=Math.max(this._currentTranslation.x,minPos.x);}
if(minPos.y<=maxPos.y)
{this._currentTranslation.y=Math.min(this._currentTranslation.y,maxPos.y);this._currentTranslation.y=Math.max(this._currentTranslation.y,minPos.y);}
this.postMessage('translation_changed',x3dom.fields.SFVec3f.copy(this._currentTranslation));}}},_stopDragging:function()
{x3dom.nodeTypes.X3DDragSensorNode.prototype._stopDragging.call(this);if(this._vf.autoOffset)
{this._vf.offset=x3dom.fields.SFVec3f.copy(this._currentTranslation);this.postMessage('offset_changed',this._vf.offset);}}}));x3dom.registerNodeType("SphereSensor","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DDragSensorNode,function(ctx)
{x3dom.nodeTypes.SphereSensor.superClass.call(this,ctx);this.addField_SFRotation(ctx,'offset',0,1,0,0);this._currentRotation=null;this._rotationMatrix=this._vf.offset.toMatrix();},{getCurrentTransform:function()
{var parentTransform=x3dom.nodeTypes.X3DDragSensorNode.prototype.getCurrentTransform.call(this);return parentTransform.mult(this._rotationMatrix);},_startDragging:function(viewarea,x,y,wx,wy,wz)
{x3dom.nodeTypes.X3DDragSensorNode.prototype._startDragging.call(this,viewarea,x,y,wx,wy,wz);this._currentRotation=new x3dom.fields.Quaternion();this._viewArea=viewarea;this._localOrigin=new x3dom.fields.SFVec3f(0.0,0.0,0.0);this._inverseToWorldMatrix=this.getCurrentTransform().inverse();var firstIntersection=this._inverseToWorldMatrix.multMatrixPnt(new x3dom.fields.SFVec3f(wx,wy,wz));this._initialSphereIntersectionVector=firstIntersection.subtract(this._localOrigin);this._sphereRadius=this._initialSphereIntersectionVector.length();this._initialSphereIntersectionVector=this._initialSphereIntersectionVector.normalize();},_process2DDrag:function(x,y,dx,dy)
{x3dom.nodeTypes.X3DDragSensorNode.prototype._process2DDrag.call(this,x,y,dx,dy);var viewRay=this._viewArea.calcViewRay(x,y);viewRay.pos=this._inverseToWorldMatrix.multMatrixPnt(viewRay.pos);viewRay.dir=this._inverseToWorldMatrix.multMatrixVec(viewRay.dir);var A=viewRay.dir.dot(viewRay.dir);var B=2.0*(viewRay.dir.dot(viewRay.pos.subtract(this._localOrigin)));var C=viewRay.pos.dot(viewRay.pos)-2.0*this._localOrigin.dot(viewRay.pos)+
this._localOrigin.dot(this._localOrigin)-this._sphereRadius*this._sphereRadius;var determinant=(B*B)-(4.0*A*C);var alpha_1;var alpha_2;if(determinant>=0.0){alpha_1=(-B+Math.sqrt(determinant))/(2.0*A);alpha_2=(-B-Math.sqrt(determinant))/(2.0*A);alpha_1=Math.min(alpha_1,alpha_2);if(alpha_1>=1.0){var hitPoint=viewRay.pos.add(viewRay.dir.multiply(alpha_1));var vecToHitPoint=hitPoint.subtract(this._localOrigin).normalize();this._currentRotation=x3dom.fields.Quaternion.rotateFromTo(this._initialSphereIntersectionVector,vecToHitPoint);this._currentRotation=this._currentRotation.multiply(this._vf.offset);this.postMessage('rotation_changed',this._currentRotation);}}
else{}},_stopDragging:function()
{x3dom.nodeTypes.X3DDragSensorNode.prototype._stopDragging.call(this);if(this._vf.autoOffset)
{this._vf.offset=this._currentRotation;this.postMessage('offset_changed',this._vf.offset);}
this._currentRotation=new x3dom.fields.Quaternion();}}));x3dom.registerNodeType("CylinderSensor","PointingDeviceSensor",defineClass(x3dom.nodeTypes.X3DDragSensorNode,function(ctx)
{x3dom.nodeTypes.CylinderSensor.superClass.call(this,ctx);this.addField_SFFloat(ctx,'offset',0);this.addField_SFRotation(ctx,'axisRotation',0,1,0,0);this.addField_SFFloat(ctx,'diskAngle',0.262);this.addField_SFFloat(ctx,'minAngle',0);this.addField_SFFloat(ctx,'maxAngle',-1);this._rotationMatrix=this._vf.axisRotation.toMatrix();this._inverseToWorldMatrix=null;this._initialCylinderIntersectionVector=null;this._viewArea=null;this._cylinderRadius=0.0;this._yAxisLine=null;this._cylinderMode=true;this._currentRotationAngle=0.0;},{getCurrentTransform:function()
{var parentTransform=x3dom.nodeTypes.X3DDragSensorNode.prototype.getCurrentTransform.call(this);return parentTransform.mult(this._rotationMatrix);},_startDragging:function(viewarea,x,y,wx,wy,wz)
{x3dom.nodeTypes.X3DDragSensorNode.prototype._startDragging.call(this,viewarea,x,y,wx,wy,wz);this._currentRotation=new x3dom.fields.Quaternion();this._viewArea=viewarea;this._yAxisLine=new x3dom.fields.Line(new x3dom.fields.SFVec3f(0.0,0.0,0.0),new x3dom.fields.SFVec3f(0.0,1.0,0.0));this._inverseToWorldMatrix=this.getCurrentTransform().inverse();var firstIntersection=this._inverseToWorldMatrix.multMatrixPnt(new x3dom.fields.SFVec3f(wx,wy,wz));var closestPointOnYAxis=this._yAxisLine.closestPoint(firstIntersection);this._initialCylinderIntersectionVector=firstIntersection.subtract(closestPointOnYAxis);this._cylinderRadius=this._initialCylinderIntersectionVector.length();this._initialCylinderIntersectionVector=this._initialCylinderIntersectionVector.normalize();},_process2DDrag:function(x,y,dx,dy)
{x3dom.nodeTypes.X3DDragSensorNode.prototype._process2DDrag.call(this,x,y,dx,dy);if(this._cylinderMode)
{var viewRay=this._viewArea.calcViewRay(x,y);viewRay.pos=this._inverseToWorldMatrix.multMatrixPnt(viewRay.pos);viewRay.dir=this._inverseToWorldMatrix.multMatrixVec(viewRay.dir);var A=viewRay.dir.subtract(this._yAxisLine.dir.multiply(viewRay.dir.dot(this._yAxisLine.dir)));var B=viewRay.pos.subtract(this._yAxisLine.pos).add(this._yAxisLine.dir.multiply(this._yAxisLine.dir.dot(this._yAxisLine.pos.subtract(viewRay.pos))));var p=2*A.dot(B)/A.dot(A);var q=(B.dot(B)-this._cylinderRadius*this._cylinderRadius)/A.dot(A);var sqrt_part=p*p*0.25-q;var alpha_1;var alpha_2;if(sqrt_part>=0)
{sqrt_part=Math.sqrt(sqrt_part);alpha_1=-p*0.5+sqrt_part;alpha_2=-p*0.5-sqrt_part;alpha_1=Math.min(alpha_1,alpha_2);if(alpha_1>0.0)
{var hitPoint=viewRay.pos.add(viewRay.dir.multiply(alpha_1));var closestPointOnYAxis=this._yAxisLine.closestPoint(hitPoint);var vecToHitPoint=hitPoint.subtract(closestPointOnYAxis).normalize();this._currentRotation=x3dom.fields.Quaternion.rotateFromTo(this._initialCylinderIntersectionVector,vecToHitPoint);var offsetQuat=x3dom.fields.Quaternion.axisAngle(this._yAxisLine.dir,this._vf.offset);this._currentRotation=this._currentRotation.multiply(offsetQuat);this.postMessage('rotation_changed',this._currentRotation);}}}
else
{}},_stopDragging:function()
{x3dom.nodeTypes.X3DDragSensorNode.prototype._stopDragging.call(this);if(this._vf.autoOffset)
{this._vf.offset=this._currentRotation.angle();this.postMessage('offset_changed',this._vf.offset);}}}));x3dom.versionInfo={version:'1.6.3-dev',revision:'',date:''};/*
 * X3DOM JavaScript Library
 * http://www.x3dom.org
 *
 * (C)2009 Fraunhofer IGD, Darmstadt, Germany
 * Dual licensed under the MIT and GPL
 *
 * Based on code originally provided by
 * Philip Taylor: http://philip.html5.org
 */

body {
  background-color: white;
  font-family: Helvetica, sans-serif;
  font-size: 12px;
}

X3D, x3d {
  position:relative;    /* in order to be able to position stat-div within X3D */
  float:left;           /* float the element so it has the same size like the canvas */
  cursor:pointer;
  margin: 0;
  padding: 0;
  border: 1px solid #000;
}

object {
	margin: 0;
	padding: 0;
	border: none;
	z-index: 0;
  width:100%;
  height:100%;
  float:left;
}

X3D:hover, 
x3d:hover, 
.x3dom-canvas:hover {
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

.x3dom-canvas {
  border:none;
  cursor:pointer;
  cursor:-webkit-grab;
  cursor:grab;
  width:100%;
  height:100%;
  float:left;
}

.x3dom-canvas-mousedown {
  cursor:-webkit-grabbing;
  cursor:grabbing;
}

.x3dom-canvas:focus {
    outline:none; 
}
.x3dom-progress {
    margin: 0;
    padding: 6px 8px 0px 26px;
    left: 0px;
    top: 0px;
    position: absolute;
    color: #0f0;
    font-family: Helvetica, sans-serif;
    line-height:10px;
    font-size: 10px;
    min-width: 45px;
    min-height: 20px;
    border: 0px;
    background-position: 4px 4px;
    background-repeat: no-repeat;
    background-color: #333;
    background-color: rgba(51, 51, 51, 0.9);
    z-index: 100;
    background-image: url('data:image/gif;base64,R0lGODlhEAAQAPQAADMzM////z4+Po+Pj0pKSsbGxpycnP///7e3t+Hh4XR0dGZmZu7u7oGBgfr6+tLS0qqqqgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAAFdyAgAgIJIeWoAkRCCMdBkKtIHIngyMKsErPBYbADpkSCwhDmQCBethRB6Vj4kFCkQPG4IlWDgrNRIwnO4UKBXDufzQvDMaoSDBgFb886MiQadgNABAokfCwzBA8LCg0Egl8jAggGAA1kBIA1BAYzlyILczULC2UhACH5BAkKAAAALAAAAAAQABAAAAV2ICACAmlAZTmOREEIyUEQjLKKxPHADhEvqxlgcGgkGI1DYSVAIAWMx+lwSKkICJ0QsHi9RgKBwnVTiRQQgwF4I4UFDQQEwi6/3YSGWRRmjhEETAJfIgMFCnAKM0KDV4EEEAQLiF18TAYNXDaSe3x6mjidN1s3IQAh+QQJCgAAACwAAAAAEAAQAAAFeCAgAgLZDGU5jgRECEUiCI+yioSDwDJyLKsXoHFQxBSHAoAAFBhqtMJg8DgQBgfrEsJAEAg4YhZIEiwgKtHiMBgtpg3wbUZXGO7kOb1MUKRFMysCChAoggJCIg0GC2aNe4gqQldfL4l/Ag1AXySJgn5LcoE3QXI3IQAh+QQJCgAAACwAAAAAEAAQAAAFdiAgAgLZNGU5joQhCEjxIssqEo8bC9BRjy9Ag7GILQ4QEoE0gBAEBcOpcBA0DoxSK/e8LRIHn+i1cK0IyKdg0VAoljYIg+GgnRrwVS/8IAkICyosBIQpBAMoKy9dImxPhS+GKkFrkX+TigtLlIyKXUF+NjagNiEAIfkECQoAAAAsAAAAABAAEAAABWwgIAICaRhlOY4EIgjH8R7LKhKHGwsMvb4AAy3WODBIBBKCsYA9TjuhDNDKEVSERezQEL0WrhXucRUQGuik7bFlngzqVW9LMl9XWvLdjFaJtDFqZ1cEZUB0dUgvL3dgP4WJZn4jkomWNpSTIyEAIfkECQoAAAAsAAAAABAAEAAABX4gIAICuSxlOY6CIgiD8RrEKgqGOwxwUrMlAoSwIzAGpJpgoSDAGifDY5kopBYDlEpAQBwevxfBtRIUGi8xwWkDNBCIwmC9Vq0aiQQDQuK+VgQPDXV9hCJjBwcFYU5pLwwHXQcMKSmNLQcIAExlbH8JBwttaX0ABAcNbWVbKyEAIfkECQoAAAAsAAAAABAAEAAABXkgIAICSRBlOY7CIghN8zbEKsKoIjdFzZaEgUBHKChMJtRwcWpAWoWnifm6ESAMhO8lQK0EEAV3rFopIBCEcGwDKAqPh4HUrY4ICHH1dSoTFgcHUiZjBhAJB2AHDykpKAwHAwdzf19KkASIPl9cDgcnDkdtNwiMJCshACH5BAkKAAAALAAAAAAQABAAAAV3ICACAkkQZTmOAiosiyAoxCq+KPxCNVsSMRgBsiClWrLTSWFoIQZHl6pleBh6suxKMIhlvzbAwkBWfFWrBQTxNLq2RG2yhSUkDs2b63AYDAoJXAcFRwADeAkJDX0AQCsEfAQMDAIPBz0rCgcxky0JRWE1AmwpKyEAIfkECQoAAAAsAAAAABAAEAAABXkgIAICKZzkqJ4nQZxLqZKv4NqNLKK2/Q4Ek4lFXChsg5ypJjs1II3gEDUSRInEGYAw6B6zM4JhrDAtEosVkLUtHA7RHaHAGJQEjsODcEg0FBAFVgkQJQ1pAwcDDw8KcFtSInwJAowCCA6RIwqZAgkPNgVpWndjdyohACH5BAkKAAAALAAAAAAQABAAAAV5ICACAimc5KieLEuUKvm2xAKLqDCfC2GaO9eL0LABWTiBYmA06W6kHgvCqEJiAIJiu3gcvgUsscHUERm+kaCxyxa+zRPk0SgJEgfIvbAdIAQLCAYlCj4DBw0IBQsMCjIqBAcPAooCBg9pKgsJLwUFOhCZKyQDA3YqIQAh+QQJCgAAACwAAAAAEAAQAAAFdSAgAgIpnOSonmxbqiThCrJKEHFbo8JxDDOZYFFb+A41E4H4OhkOipXwBElYITDAckFEOBgMQ3arkMkUBdxIUGZpEb7kaQBRlASPg0FQQHAbEEMGDSVEAA1QBhAED1E0NgwFAooCDWljaQIQCE5qMHcNhCkjIQAh+QQJCgAAACwAAAAAEAAQAAAFeSAgAgIpnOSoLgxxvqgKLEcCC65KEAByKK8cSpA4DAiHQ/DkKhGKh4ZCtCyZGo6F6iYYPAqFgYy02xkSaLEMV34tELyRYNEsCQyHlvWkGCzsPgMCEAY7Cg04Uk48LAsDhRA8MVQPEF0GAgqYYwSRlycNcWskCkApIyEAOwAAAAAAAAAAAA==');
}

.x3dom-progress.bar span {
  position: absolute;
  left: 0;
  top: 0;
  line-height: 20px;
  background-color: red;
}


.x3dom-statdiv {
    margin: 0;
    padding: 0;
    right: 10px;
    top: 10px;
    position: absolute;
    color: #0f0;
    font-family: Helvetica, sans-serif;
    line-height:10px;
    font-size: 10px;
    width: 75px;
    height: 70px;
    border: 0px;
}

#x3dom-state-canvas {
    margin: 2px;
    padding: 0;
    right: 0%;
    top: 0%;
    position: absolute;
}

#x3dom-state-viewer {
  position: absolute;
  margin: 2px;
  padding: 5px;
  width: 135px;
  top: 0%;
  right: 0%;
  opacity: 0.9;
  background-color: #323232;
  z-index: 1000;
  font-family: Arial, sans-serif;
  color: #C8C8C8;
  font-weight: bold;
  text-transform: uppercase;
  cursor: help;
}

.x3dom-states-head {
  display: block;
  font-size: 26px;
}

.x3dom-states-rendermode-software {
    font-size: 10px;
    margin: 0 0 2px 2px;
}

.x3dom-states-rendermode-hardware {
    font-size: 10px;
    margin: 0 0 2px 2px;
}

.x3dom-states-head2 {
  font-size: 10px;
}

.x3dom-states-list {
  float: left;
  width: 100%;
  border-top: 1px solid #C8C8C8;
  list-style: none;
  font-size: 9px;
  line-height: 16px;
  margin:0;
  padding: 0;
  padding-top: 2px;
}

.x3dom-states-item  {
  width: 100%;
  float: left;
}

.x3dom-states-item-title {
  float: left;
  margin-left: 2px;
}

.x3dom-states-item-value {
  float: right;
  margin-right: 2px;
}

.x3dom-touch-marker {
	display: inline;
    padding: 5px;
	border-radius: 10px;
    position: absolute;
    font-family: Helvetica, sans-serif;
    line-height:10px;
    font-size: 10px;
    color: darkorange;
    background: cornsilk;
    opacity: 0.6;
    border: 2px solid orange;
	z-index: 200;
}

.x3dom-logContainer {
    border: 2px solid olivedrab;
    height: 200px;
    padding: 4px;
    overflow: auto;
    white-space: pre-wrap;
    font-family: sans-serif;
    font-size: x-small;
    color: #00ff00;
    background-color: black;
    margin-right: 10px;
}

.x3dom-nox3d {
    font-family: Helvetica, sans-serif;
    font-size: 14px;
    background-color: #eb7a7a;
    padding: 1em;
    opacity: 0.75;
}

.x3dom-nox3d p { 
    color: #fff;
    font-size: 14px;
}

.x3dom-nox3d a { 
    color: #fff;
    font-size: 14px;
}


/* self-clearing floats */
.group:after {
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
}
�����f@�~j�t��?�g@�~j�t�?i@���Q��?�i@�&1��?@j@333333�?�j@R���Q�?�k@���Q��? l@333333�?�l@R���Q�?`m@���Q��?n@333333�?�n@
ףp=
�?@o@��Q���?�o@�?�o@�p=
ף�?@p@�������?�p@�Q����?�p@�?0q@���Q��?�q@)\��(�?�q@�p=
ף�? r@{�G�z�?pr@H�z�G�?�r@q=
ףp�?�r@333333�?�r@���Q��?s@���Q��?@s@9��v���?`s@���Q��?�s@�~j�t�x?�s@�~j�t�h?�s@a2U0*�c?�s@����Mb`?�s@-C��6Z?�s@a2U0*�S?t@����MbP? t@�N^�E?0t@��+ٱA?Pt@����Mb@?�t@K�8���<?�t@t^c���:?�t@V�F�?8?�t@��q�@H6?@u@��מY2?�u@iUMu/?�u@-C��6*?0v@�h㈵�$?�v@C�8
!?�v@K�8���? w@1]��a?pw@��Z�a/?�w@����?x@rQ-"��?`x@�&�|�?�x@?�̔��?y@iUMu�>�r@�@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?��v@�@�?�m倸!?Z��0�#?'P5SIx%?\Yh�#(?D�~L_+?&��k.?�Я;J1?�yO��43?��6�5?�F� >8?M@]��0;?b��oJk>?	���A?C�U��C?�A�́xE?�O��LH?P�?��K?�f�	�O?ʖT���Q?�N���+T?[���iV?j �
�X?��'Cl�Z?(m�']?�v�gY`?ܠ�[;Qb?}qu�d?�E!i:�g?t�YW
k?3�;�n?uʣaq?Y���s?ܪ���u?��1H"}x?�,�В�{?K�=�U?
�f=�?���|��?���Bd�?���H[�?����N�?�`u��?|]
8��?�F�Vb;�?�٠a�>�?s�`���??u(֚?P`fL�?3��X�?�'x���?IV�F�?<�K���?{��+�?E�G���?�}�෱?:@0G�߳?�l���B�?�!UҒ�?c,.��?#�mf��?�D�$]3�?��1d+�?S3��+�?~\v�8K�?
��l�?˹W�}�?7F���v�?7&z�7X�?���Ώ�?�R�Le�?�f��j+�?�[��?"�
�l��?��S�?i*z�֕�?�/�$�?d��f�?�C~G���?��
���?+]�&�?�tv28J�?��KB�_�?0���h�?�0�f�?��zܷZ�?��Bs�F�?DI��*�?��O)e�?R
_2��?7q����?��:M��?	�&rS�?�~��d�?40Ml���?�ؓe-��?�
O��e�?[᧻��?�}�e���?c5L#i�?����E�?�Pk�w��?��"�,�?�Ƭ͵�?6��5�?���ê�?n���?�c�C��?+"y��k�?��b���?��w��x�?�(yu��?
=��O��?q��Ɩ/�?pdy����?���~�?|a2U0�?��v:�?l�{��`�?�r���?T��eD��?$0��{�?��4hCY�?��M�?k�Y\�?I�7a��?�x�����?�������?�K�6��?n�g��?'vԳ��?28J^�c�?���S��?
��AO��?]5��.�?]^oQ��?%u��?�|�G�?�8~�P�?�A�� Q�?�x�2�y?n��t?��3PN�n?��p�� h?V�~�W�c?����Qb?a2U0*�c?�Q)�B�g?!Uw�mo?���62u?�� �=�|?Έ����?�b����?_��Fя?Y��=��?�8�����?\ A�c̝?��T�@ӡ?�М�
�?˗��~��?%�͕Z�?5c�tv2�?��2	�V�?7�\a,��?3'X�2��?�R X�u�?�?�߾�?�mJþ?��$\�?�@�9�?N��~��?�v��/�?6�S\��?��.Q�5�?R\�<��?>݊�O�?v��j_��?J��L��?� �{z�?��Y�?��?̟����?������?S�b�r�?���S�?F�(hI6�?'��c�?��&S�?�r����?����x��?lk�����?�����?=����?�M���?˿�W���?*�Z^��?rKPh���?�;-�b�?b������??�n�?'�fjm��?
����}�?�/�$�?�6"��?�u�`�?�e�$��?��08�+�?�g��s��?�\Gf?�?ʼ�/��?���R�?��>J��?�	�c�?��m���?&��6o�?�����?�pHYu�?�(\���?ܝ��.t�?ɨ��H��?<�I��i�?��B5���?�d�`TR�?�Ɋ���?x׌g+�?k>ST���?�b�r��?��{�P�?MDd���?�1��M��?��:%�?,�1�I�?$(~��k�?��q1��?o�����?�7L4H��?��R���?c�ZB>��?:�����?�n(!��?mv��A�?˫)��?��\m��?�ty��?n�j�b��??��2��?������?_)�Ǻ�?Ce
(��?��.t��?�;�\�?��L�q5�?{�/L�
�?('�UH��?�D�ͮV�?�z����?/��}�?��o_�?+��$Ί�?M���$�?���~�?;ǀ���?KAQ�W�?/6���?H1@�	�?!�i�?
��
��?]�Fx�?�U���X�?!�`D���?�bt��?h��N�=�?�i�q���?6A/7s��?��S<�?##��i��?{�1O���?z6�>W�?��,�"��?՗W
�?�<
�?y����?�7��d��?:T�؂�?��/J�_�?d��A�?G�)n�)�?,e�X�?���o��?��Tk�?I����?x�4s�?��/�$�?��3�8@�?��m>d�?�]9� �?o&	x��?<Nё\��?3X�c(��?��C��?�JA���?6id��`�?�!�uq�?���W��?���%���?vöE��?
sq
�?�sF���?��}�?�++MJA�?
�P��?Qm�̓�?V����_�?^�v��?���q��?(�0i�s�?�-a�S�?���H�?eO����?Բ�Ѭ?t��(�?�F])Ӂ�?�*��<�?e@���j�?\�|��?aBX�A~�?��'�� �?*��Dؠ?C8�8L�?�-+$��?֗�H$��?�e0F$
�?�z6�>�?ޚ	���?�l���? ���ͬ�?�h�e�?*��g\8�?����J�?�{X�S�?��iք�?���1׈?�$��xC�?J�5�ą?_f=T�Z�?������?x)�8Ɓ?�P��t��?���ǵ?���	}?����=%{?1�+[`y?>�=+��w?9���(v?���k�t?��"|�Rs?_��hi	r?����p?�5l^Lho?���Jm?�k�:�Pk?�D�3xi?p2�TT�g?K���m'f?��c(�d?�7RIc?$H8<��a?���v�`?��
�%O_?�^�|�/]?#��3[??�QVY?HA���W?BS-$��U?�z�AkT?>���R?�)_�ߢQ?�U�bbP?����nN?�?�1�BL?���,.=J?�e�\H?��c�̜F?�g���D?�׉{C?�7T4`B?�n���@?�Fk�O2??���#�<?��K�:?K���\9?]`|8�_7?�l_[�5?���L4?K�����2?��q��1?C$1�|0?���t�.?hM�(�,?�t�>��*?_�i�)?��#�V'?~�k��%?@4���Q$?��\���"?�[Ү!?���r�~ ?��s�?@x\p�?���+�?�M,�?_���JV?�aE�?���Q?ǁG���?k���?l��]?��t�?&}�}$�?
x�tj�
?C(�p	�?֩y��R?���^�?m��N?�4���?���RK�?l�s�$?��t�>�Bם��>�����>6����>Ꮯ��A�>,R�ǖ��>Z�j�[5�>u0Y����>F}�E��>�քU`�>D35����>|��|jw�>f9����>���>CP[��>	!�G��>���K�>�+���>��Q�l�>%2�bz>�>��ڵ�I�>����<�>pBS�>@ H2ʊ�>�?kc��>C�6��T�>�(�?��>g�I81��>D�4�H�>�@h��>�����>NJG{��>
c���>yq�AX�>�_�T��>C��)�>V8�
K��>�T��,d�>���?%�>T}���>��fMν>݆��cɻ>+�}$��>z�yY&�>�<�P���>5����>��v@�@�?����m�>9�iY�m�>���:��>Ѧ�4�>�2d
�>Š2��6�>�큤�b�>�C
|�b�>P��ܹ��>��a��(�>�=.���>"k�5�>�$ P�>=|OJ�>W�r
���>Ų����>w���>�ֶDg�>WM�H�?��f�v?����}r?V�4�t?1�aŘ?��(=?v1%�
?����?m�c�?�RM�+�?r��9�?��NP��?iUMu?T� �O�!?��_:�#?G�G�;O&?_v��F$)?�lt�Oq,?v4�3h.0?�2�ln2?����4?0����i7?vk���9?���s�l<?Ӕ7�??���=B�@?p�#M�B?�h㈵�D?�����G?�R]��K?!�̵�N?���f�Q?3�f��S?Ӳ%QV?�r�qpY?�p�/\?4&�?U�_?]�����a?0���d?�e3��f?w�"!��i?���e�l?����Mbp?ؐ��r?&��j�!u?I�Xoq�w?���q%�z?�<,Ԛ�}?t�Ԙ���?�d(�>�? )C��?_Ӥ�;ׅ?�����?��O���?䚆�Aы?�"5i*��?t/j֝�?�E�>�?�1&y�p�?v����?|f�U��?�QjN=�?Zd;�O��?�!����?>���9�?\���?��3.�?2�%䃞?�����?T!X4!֠?��ג���?��r-��?�~j�t�?dNa�f�?\�	��b�?$}ZEh�?����x�?�~j�t��?N��$���?��~��?�E;vi&�?5@��:k�?���Q��?0��Ů�?ba�
��?�Z�4k�?;Ey�:'�?z�,C�?��DR��?3���V��?��/k�?Pu#��T�?|�wJ�?�=�L�?\ךs[�?�x2Iv�?p��<S��?ޓ��ZӼ?��;���?�q�g�?��mb�?��9��?���Hh�?�b@����?[�F��B�?~�ȋ��?�{�����?=�U���?�RG"��?"<5��~�?մ�i�{�?��n���?U�t<f��?��纕��?�/ע�?¦)]UQ�?��/�v��?鷯��?��W��J�?o�?��
~��?4����?y�&1��?EtHa��?��,��?������?`vO��?�J�4�?��,1�=�?9 S��o�?�I�@��?���{��?j�t��?O�g��?�n�l�?`�5�!�?�`�sk��?����_v�?:5<b�#�?���4P��?�QvD�w�?�V�a�?���Q��?��mKM�?9x�z���?���
b�?f4
��?��e��a�?��qW
��?b���Q�?h�mz��?=A	/�?/�$���?��B��?�ƪ�Q�?�߸1��?�V�d��?*���sF�?Ϫ�H<��?o4�p���?h�x���?ON�8�O�?�I+��?�)k��?+5�Y���?9���? ���;�?��^�?��GX�}�?�4�
��?�x���?��"���?�ܔ����?j=2��?�.��k��?Q�����?�����?�?��ez��?m���M��?@i�QH��?�=���?ףp=
��?�ȯb��?�N����?�P����?����yr�?��{�P�?4"b��+�?�3Rs�?��@7���?���
��?X9��v�?
�2!A�?)Ojy/�?�����?�����?�D���J�?�g(I2�?)—ӯ��?qG�]t�?���+'�?ףp=
��?�S���?1}�!8.�?x�����?M�HNj{�?�1w-!�?�Ϗ���?{���`�?ٲ|]���?�BQ��?�MbX9�?2����?Ys�p�?�`�D
�?T1�ϣ�?[���<�?L�\���?�9s�Ol�?��z�?�c�h`��?��x�&1�?��
���?��M�^�?���c���?2��d��?���9#�?�2����?����P�?<�!D��?@\(O��?j�t��?�U�?�c�?e�����?���k���?:��ڎ�?[���<�?��v�?ILP÷��?�WuV��?���o'�?����Mb�?!��[��?&���A��?�����? �0�L�?%��C��?��2��?�n���?ċϮ�W�?�|^�ԣ�?�(\���?
[O
N�?ﴐۊX�?��p�?J��SL��?-�����?r:$
��?�_��Њ�?e�:
�w�?!���k�?ffffff�?1��c�g�?	JvKo�?L���}�?�&I|��?TR'����?#�w�?6/�	��?Z�qKPh�?���o޼?1�Zd�?߅R X��?���џ�?
^��S�?<Z�t�?��ZӼ�?ㆥ�-��?jնz���?Pk����?�B�@���?�Zd;�?؋�9	c�?=�����?�B�;��?�[_mX�?��0Ӧ?�r!fa�?�Q���?NH�~��?�
7����?����Mb�?�6����?�Sj��?�p��?��*M�?�����?y���R�?u���>��?.Q `k��?L��:��?�� �rh�?�ԺGI�?}>��b�?��{�H�?&��I�?(�XQ�i�?���k���?�k�7
�?���W3��?t��?�S�gЀ?D�!:?����}?�M�ݩ�z?a�&�$y?Y1\qw?�J�z��u?��xvt?��⣐'s?�~n��q?�1�=B�p?S~E��qo?��w��fm?n�Nzk?�^��i?^0��g??�.Knf?ZEu�r�d?Z]���c?�
���Sb?j��%!a?����`?��s���]?Q/�U�[?��5J�
Z?D���XPX?��B��V?��$u�'U?._��S�S?��0!eR?���o'Q?��0P?�o�?��M?LzG%o�K?��2~*�I?V�F�?H?�vcP՜F?�ݡ�yE?�g��C?k:V�LB?C�8
A?>�	��??Ɛ��~=?���j;?��Мy9?�7ʰ@�7?g�*�5?�(Ui4?ۅ��d�2?�b���1?�K���T0?�B'14Q.?�9C�#,?eh)R*?���)A(?����&?辠mC�$?�3zVz#?���� "?��&�� ?iUMu?fv���R?U�Y/�X?�x���?�	�)��?(A$��:?f��oq�? �7dž\?^�[��?d�ruG�?iUMu?t�h�Y
?����a?Kzߊ	?Ew�-��?(A$��:?�1�ʽ?(+rݩZ?�š�?�R�]��?iUMu�>h��
�Y�>-Q�-�a�>�*�&��>�#�N�>(A$��:�>��I�C��>u�?2fY�>||$L�
�>�8N��>F���o�>�� ]U�>�6�_�^�>|P��>��;�7��>(A$��:�>r�ʖp��>k����T�>eݺ=��>�������>Z=h�;P�>�p�5�0�>͆a|n6�>�牸�^�>V�p^A��>�'#�
�>�8��<��>���*�>?��5Y��>Ʀ�M���>������>�`�v��>̹?<@��>b�O^+�>��pm�v�>�
"65��>rpTe�>~08�V�>�n{.���>���k��>�:#о>��_���>@�?�Ǻ>r�BL��>K"��wF�>��V��>t�j�:�>��L(ܲ>F�*��>��ˡnd�>|�AԐ�>қ��>͚�Ԑ�>��%Ĩ>��r���>�M�c���>�I�э�>5eGd���>�Uc�q�>���B�>��d	R�>��v@�@�?*��U�C?�b��OF?f!��I?p�N.L?	Xv;^�O?o���Q?���<��S?�BR��}V?��T=JY?y�ij\?���_?��!�a?gS�B�c?k3ARaf?=�+7i?����l?"�X�SHp?#^�1u�r?ǡ<�� u?�q����w?T���Pkz?�� QJ}?��l���?��N
i�?�����G�?;]/�;��?�"]}���?�-c؛��?UԪ���?�ٜ9�'�?��d���?�4��7
�?��u��Ι?~�(�[��?�EG�T�?������?�ъ�R7�?;�WhR�?��Sՙ��?���?";�?Ƿ�E�^�?x>f��?��YwԴ?6���Ҷ?ݠ���9�?K�46�?��%@��?/ФH#�?�{�ԗ��?��bu�t�?_�L��?&�jk���?1�����?<A�H���?�6�x�+�?�N@a��?�3~+��?][*��?!�<�V��?pP� ���?��T���?���?<9��~�?���HP�?�8�j���?
}f���?�q�a���?�@���?�^��E!�?BM���.�?�f��j+�?I��?1$'��?�Uk�Ϭ�?C�hݫ[�?du���?���Q���?�Si���?�:]�[�?@W$���?ke�/��?�Ȇ$)�?c�{�`P�?�&I|�k�?!L���|�?��ݓ���?��̩	��?ǢD�ׁ�?�!��w�?��Ȟ�i�?
���Z�?c�%��J�?��]��9�?A�$�?Xy]
�?�A�f��?Ǹ�⨼�?<�Ȁ���?K��}�K�?'�XL�?0�'��?֊�
G\�?��f���?���N��?��N�?HP�s�?�gS��?�8F�G�?N⽴�<�?��O�vk�?�W�f,��?&u]S{��?4N�
T�?�O'�]8�?�|?q�?=�U���?�_8|w��?[��H�P�?�+���?����li�?/����?1����?����W�?�����?��a��?Gr���?�А�o��?�Fo��?�!�	���?�jd|�?�5�U���?*-m��'�?>kȉ���?}ޯ]5�?�X�zX��?�Pk�w��?`��hOn�?���R�?Ӽ�I�?B��P�?�� �rh�?�P	�u��?�4��nj�?e�
�?�u�#��?"lxz�,�?�2{���?�*��U�?gΟ���?Ɯ�yf��?���?�?|� 2��?2g�WL��?��/��?�]��=��?F��_��?_��E���?��/13��?{隇	�?�{_��v�?[��0�?���	ӽ�?�B&S䔱?]a,����?i�t���?��J��O�?j��Y��? ]�v��?��s�?�~_��?�f���?��WL:�?Y��k:�?�.�����?�����m�?�Ws�`��?�|`�?d��O�?�I�[�?+Kt�Y��?Dio�ɔ?�+a�*�?M-|�t��?�h�ێ>�?��7�ލ?S�!�uq�?��r�4�?�ݧp%�?i�A�?�����?:\���?��I�t�?vy)+<~?��q��{?�^��y?�4��O�w?**�H:�u?�m�t?N�jt�r?�
	)�6q?�q����o?�A8�f�m?�����k?Z�oH��i?�M���
h?y�x*�f?j���-e?b��g�c?��%�)�b?���a?�J�4a?N��'~�`?��N�W�_?�Le�^?28�n)^?��H�}]?7s�B�\?���x\?��\K	\?P�4nK�[?��U�[?��$caZ?������Y?�O��X?I�?��W?Ǻ���V?��=Cc�U?����T?���"�S?.��Px�R?/n��R?X�B߂Q?e
���1Q?�cn��P?;�&9�P?����MbP?B�����O?�bs��xN?Ē8L�M?H����K?-C��6J?��"(e�H?�d���G?į��yF?��W&E?a2U0*�C?������A?�z��@?�ѻ�̈<?�σ�!9?��q�@H6?����"4?�c��2?�zXe1?��`㹀0?iUMu/?�#O.?��+s�,?i.?�2�+?�hC�B�*?���W�(?�_ ڠ�&?5~~kif$?])Ӂ�!?�@`h�?-C��6?�WO�?�u�=R�?C�8
?{�Rv�
?�C&��6
?.W�'?)K�x�?I��A�?��>��?iUMu�>��^"��>�K�5�>�	n��>����x�>�h㈵��>z����>�f녧��>tR�#���>ʆe-r�>�h㈵��>�C�1�7�>�3��4��>H������>a_#�^�>��v@�@�?uz;��f�>���Kو>�aOC��>z�>�+�/٤>�}�xخ>�e����>��;[���>X�L���>r��}g�>o����>�=�h��>c��GO�>��(*x��>9�x�>�
z�p?�OC�)?s'���?�^q19�?O���Z�?L��7�$?��!�0,?��%H�2?����9?E���x�@?~Z�E?Z.��SL?@�t�_R?w��y��W?�F��^^?T��X�Xc?i�@&�h?whX���n?�hR�Ks?˪���w?Xy]�}?<q��9�?��{C�?8Ҿ^�?��4��O�?~>%B~��?�	�ʼU�?n��Ũ�?� �K�?�w��?��JY�8�?��=Զ�?���5>��?MK���?���\5�?&:�,B��?uu�b�T�?�L�n�?�9y�	��?Q��ڦx�?��I
m�?*�dq���?��Y,�?@��r���?��DJ�y�?��%:�,�?$������?P�,�cy�?�;��?�	��$>�?<�Bus��??tA}˜�?�! _B�?I,)w���??$D���?!;oc�#�?5�Ry;��?aO;�5Y�?C</O��?�]��k�?��;���?T�~O�S�?Eg�E(��?)YNB��?dT8�T�?�?
��?f�ᔹ�?g|_\���?�ky�z��?�Qd����?JӠh��?����۞�?�8K�r�?��l��<�?���{���?f�ᔹ�?�8��n�?���|\�?��ȑ��?;��]�?˻���?$}ZE�?@4���?!�lV}�?�a��4��?�]�pX�?S�{/��?p���$�?��j���?��[���?��Y��B�?��
x'�?�6ǹM��?���f�8�?�ڋh;��?�$A�
�?-z�m�?�������?&���#�?2�%��?NCT���?��kЗ޾?��Y�N�?�0��Z�?���!�?�\T��?e73��p�?�mnLO�?��*�샬?EeÚʢ�? ��c�?�"����?w��閝?~�<�r�?�W�\�?�q�d��?�]K�=�?�����?c�#�w~�?�ډ��H{?c��Ju?Q�\�mOp?�K⬈j?�|A	h?s���i?��rf�Bo?�L��~�t?��R�h|?��Z�?����?��Z���?N�f���?+��Η?Bx�q�Z�?!���?tA}˜.�?�}U.T��?Q.�_x%�?�wb֋��?Y�;ۣ7�?��N��D�? ��Udt�?��Q�¶?��l�)�?�ʢ����?	�"h�$�?ǠB]�?)�Ǻ��?9GW#�?`V(���?__�R#�?�a����?�k�,	P�?ZH����?�i�WV��?�/fKVE�?�M�a���?�����?Þv�k��?Z��mē�?�'��9x�?J���`�?�͍�	K�?���9�?9�d��)�?��N�?��ْU�?�/ע�?ND��~��?[y����?8fٓ���?["����?*T7��? ~�{���?���uo�?�AҧU��?\='�o|�?B�v���?
�=�N��?L��1%�?8I�Ǵ��?ު�PMI�?�Yg|_��?�m½2o�?����?uV�1��?_ѭ�� �?�·g	��?���C�?i����?���]g�?|�Y�H��?�����? �+�p�?�o_Ι�?��.��?IJzZ��?�vj.7�?�c����?B�/h!�?�UfJ�o�?0עh��?�>$D�?B[Υ���?֐����?��9�?��C�l�?W[����?7�A`���?ı.n��?|a2U0�?>�٬�\�?gDio��?&䃞ͪ�?�n����?/�>:u��?��s���??5^�I�?�HP��?6<�R�!�?���&�?���&�?��H.�!�?a��+e�?��镲�?$0���?鷯��?�~�:p��?�W�2ı�?� �rh��?w-!�l�?�}8gD�?�0�*�?c�ZB>��?NbX9��?�鲘�|�?��K7�A�?�c]�F�?ްmQf��?|,}��?#��Jvl�?}��b��?����EB�?IK����?
p�?�6U��f�?�N@a��?���4�?�b�=y�?�j���?�b(�?�鲘�|�?�ŧ��?���4�?͒5�l�?ʧǶ��?��̯��?���G�?��(yu��?K�8����?�f���?#��Jvl�?�y�]�z�?�-s�,&�?\w�T���?��1˞�?#��Jvl�?�$��C�?�Xni5$�?�(�[Z
�?W�}W��?�zNz��?_�2��?�!T���?�G�z�?g`�eM,�?z��3K�?�,C���?W!�'�>�?����y��?�QI��&�?���镲�?�$#gaO�?��72���?��Hh˹�?�C5%Y��?�I�O�c�?X�5�;N�?ٔ+��E�?.���=��?��Hh˹�?/��?�zM
J�?�UH�I��?�-]�6�?�
t�~ʹ?���w�?��I�4�?�9�!�?w�(�Ư?� �>��?ꕲq��?.��ϩ?1zn�+�?(��o�?U�de�?1`�U,~�?���(�?[#�qp�?7��}�?mT�YO�?JA��4F�?�?�0`�?+�m��?��,'��?��[�}k�?��%�2��?��쟧�?�vi�ai�?tϺFˁ�?4g}�1Y�?���jdW�?]¡�x�?A��ǘ��?��O���?��.��?��y7�?&�jk��?,�r��f?��K<�%}?����
{?��hfy?U�xF�Nw?9,<y�u?��G�{t?�c_Oǥr?�����Pq?+��p?<A�H��m?���8��k?������i?}M�\�g?P�Ȓ9f??F�>�d?#*�}�-c?xS>�8�a?��b]��`?������^?�C�I�\?��3�ތZ?O|]�X?1ce���V?_�0�ENU?����S?�>P�hR?f�
Q?���6	�O?��m9�M?��tu�K?\a4
͞I?W�J�G?��k�?.F?�R��|�D?���6C?܅ ��A?��t���@?K'm�??���e�<?t�!�c�:?�
9?�$�q[7??`����5?��` cI4?>)����2?뿔�1?����r0?#��b�.?;���,?�#
��*?*���(?ݑ5�K'?�U�q�%?-_��Q$?�gg���"?��Z>�!?l�D�� ?(����?m8n)��?ў�G
?�>G?��c�?dd���?pgx1�?��7��S?h�en?��@�?O���?m7�7M�
?	��n�?��iT��	?W\��K?>�#���?OIݛ�M?L�l�S�?,��0ͱ?K�:Eq�?���4k?�uU=��>۾��j�>T�i��>)�ύb�>6A	p�>�<��W�>L��7��>��B��>|o��w�>e��c�U�>�j��bF�>`��N[��>�bh����>	�3�y��>[��\�R�>\	Y����>�H΁Z�>��6���>Nh�t��>��.��>7��5q�>��\-�e�>�N�k���>�����>�eE��D�>	E�@��>�2a!!�>�E��׳�>Yh_]�>6�ֵM�>�	�B��>��ϓ��>=�u�.��>�#b ə�>�H��E��>Y��	�>C5.Zi�>��4����>����r�>�u���>&唖��>�3<C��>�w��6��>�{��w�>
p"��x�>��^���>�=�)M�>�#�=��>AT}��>��v@�@�?��uޠ�L>%�YK_�U>�9i"h`>2o�-u�h>�~�B\Dr>ݭ~��{>Q�m؍܃>Q��	��>*޺6��>���r�>�0�
�إ>�ڼ�T*�>V�Б��>a=���(�> X�����>��IӠh�>7
�>���U��>2ޫ���>�阬���>J�y�5�>��;�u�>�K���T?��w.�?ɪJS�?~�UpO�?�j|�Au?f��r�?5~~kif$?}���
*?�zz�X�0?��6��4?4^�&_:?��P	�u@?X
7��kD?��.�.I?^6�Y��N?l��8�R?�4BW�V?�h9�Cm[?��V�k`?�͋c?���)g?ZՒ�r0k?
�x#��o?�E�xxr?�\QJVu?k�C4��x?�~�x�{?�
���?t&m��?e��7i�?�w�'-\�?��=]ݱ�?����?�	�y��?���?���ho�?p��/ג?gd��S�?�����?�MG7��?�"0�70�?��릔ך?���Y��?�R)v4�?��1��?��O��۠?�]��-ɡ?��&PĢ?��G6Wͣ?)z�c��?����?�.�.�?�
�<�?���ne�?k����?���+ҫ?�b���?��Դ�i�?��y�ȯ?�Uס���?}��9�?5*p�
ܱ?(�.��|�?�`�$��?ρ�ȳ?��]��y�?�N��:7�?j�t��?qTn���?X�B�_˷?h"lxz��?%��1 {�?�XS�?w�ݗ3�?�5��x"�?��#bJ$�?hwH1@�?]¡�xx�?hA(��h�?
6u�?	n�l���?�*�C3O�?��5���?CX�%���?R���<�?Ԝ����?d�=	l��??�ܵ�?1��PN��?0�'��?�X�;ۣ�?Tȕz��?�I~įX�?׆�q�&�?��x#��?	3�z��?F��_��?��f�|�?�h[�:�?��捓��?�y7R�?�Z_$���?�J#f�y�?[|
���?�8'0��?a���)�?���H���?�g@�5�?����Z��?3��VC�?���,���?�/����?n�HJz�?�����M�?�L���$�?�<L��?&�5���?�
*�~��?|�o�^}�?$��(�[�?�z6�>�?��U+�?S"��?��̯��?&�lscz�?�je�/��?�`�p�?!�rh���?�lj�?Ԛ����?��ui�?^.�;1��?!Y�n�?���=���?HP�s�?��6T���?���6q�?^.�;1��?f�O7P`�?��ԕ��?)�A&9�?v28J^��?�x
��?
�'�X�?�m��?�sF���?Л�T[�?<k�]h��?�.���?0�[w�T�?�9z�ަ�?I.�!���?0*��D�?�6�ُ�?HP�s��?	����?�Bs�FZ�?�ׁsF��?Q�����?�L2r��?#���?"�*��<�?d�w�W�?�2ı.n�?�@H0��?�2d���?qr�CQ��?uYLl>��?X�����?B	3m���?E����?I�2���?UގpZ��?�h㈵��?������?�?=~oӟ��?؁sF���?��_�5��?��+��?�-����?y�&1��?o�ŏ�?�҇.�o�?닄��K�?O#-��#�?H�`��?�.�����?�����? ~�{�Z�?9	�/��?P�0{��?��J̳��?Ӽ�I�?��5>���?{��B��?�Xd�?A�v�?%=�N��?J&�v��?#�Ƥ?�?������?�\��X��?�i��k�?Ț�A�"�?��ƒf��?:�%Ȉ�?�wak6�?q�Ws���?�V	��?����}+�?=a����?��n�?fj�!
�?l�<��?��"F�?l{�%9��?�z��9y�?��%!�?�M��?���9?�?h?RD���?��+I�k�?_zo�?�k$	•�?�=ϟ6*�?u���a��?^��a�Q�?�O���?���w�?�
k*�?"rl=�?�r.�Ue�?G��1���?�S����?�N�j��?
R��?�
�F�?fh<�y�?���H���?���,���?��y0�?���t�?�vN�@��?��~��?tD�K�K�?�Ѫ�t��?(���?�F�ҿ$�?
��l�?�P�f��?K�3���?4H�Sȕ�?
1�Tm7�?E�*k���?
�a����?�l ]lZ�?s����(�?��s���?[����?n�(��?�x���?Q�Hm��?��o�?wg��?vq
�-�?�Q
�=��?�v�ӂ�?
j�֍�?��q�&�?�Un2��?x*��O�?�!Y��?@�իȴ?+�m��?�+�p�{�?��WWj�?�N>=�e�?�#�&ݮ? ��c�?��F�I�?u��OU��?�n�1�?-��;���?%̴�++�?<�d�!ף?`����?!:�>f�?�[$H�?7��t�?�Lc tu�?�Z�F���?v��x�Θ?�Vi�$�?%f��q��?�rf�B�?���>��?n'[nz�?��[1mI�?��Y�?_�D�C�?��(��P�?%����~�?���{ˆ?�y��C5�?���7���?t��k�Y�?�>�˓�?��T�4�?z���}?�ypw�n{?��}y?R���w?'Wgk3v?�jĂ�tt?4Ayčs?�3頦q?��zq=ep?Lj�v�tn?�W�?�Hl?P�5�Cj?��}P�ah?��
S�f?�"��Ee?��w:�c?�i�b?KC	
��`?X�4_?��4��\?ՠ?���Z?Xf[�X?QaS�'6W?ј��~�U?�U�DT?D�:�ךR?��&3�HQ?�K�OP?��yu+�M?e'0[�K?.�����I?�xZc�G?Xb��?F?t�K�D?;Oj7C?s_�϶�A?li꬚@?;(�
��>?U�lB�<?8�E�4�:??9|e��8?:�ʧ�7?gl��~5?���`�4?�C�j�2?3�yS1?hH3!0?���a�.?�9-�+?�j��E*?��mC(?�Q����&?_ԧ�u%?��
��#?��O_�J"?��8;�!?�TU��?�W�Hj�?��`
�?���)d�?.7/�&?v�ğ�y?9�+�?�d�ft�?]�[IyM?��m�?S*��?���8��
?J�\2��?`C�N�
?v
���_?���?����M?
�F�?�GH*�?�N�
n?��z@N?�ڴ
4��>�	�t���>*��X��>g�~���>��]�k�>+��>��T.��>4��@�:�>	7��>��
��>�~k��>��Z1��>;�>	�$U
�>��e~n�>|����>ޭ7h��>
�{,�>&������>ج�q��>�c���>���"YS�>�K+��i�>�g�r��>K�D���>�
1_�>Cw~���>�����>�.p8�>.*��V�>�S~,��>�oz��>H4�4���>H����>���F��>���D�>�M���>��D>�>>J���>t��pf��>w�\0i^�>oqJL;�>�i�*�>&�Ћb)�>�j���p�>�se⫼>�ǁ�a�>p�l@zr�>n�vi��>r�!;���>�r/	?L�>S���q�>?z�>`C:�xر>CDci԰>�"����>�&� ��>y��lB�>���穪>���(�>,bݼ�>N��
�e�>�]��!�>��v@�@�?3�����>��<"4�>��}�>�(��4��>�F���>�+�Z��>,�_���>�A�F
,�>���mj�>9�12��>Jb�i�>�ބY�?���t��?�.[�S�?���}?�Cm<T*#?�\�$$�*?��ҷ�L2?��
>r9?�bh�A?Y}�G?4,gkTO?
�a7�T?����[?M��ӀAb?����
�g?"dN�Ro?��iJWUt?�šo�=z?)o��GՀ?�c��w�?C,cC7�?mu9% &�?@�z��{�?=�+J	��?�q�d��?{���`�?8��?�;1��P�?�-�R�?�z�r��?̴�++M�?�Zd;�?W&�R?o�?���v��?A��h:;�?Ral!�A�?"�^F���?�d�`TR�?R�Q��?R(__��?�C�R��?�$#gaO�?���o_�?}�Жs)�?NE*�-�?<�.9��?���[��?@�����?��f��?ڐf�?�=�U��?J{�/L��?��?��?)�
�0��?��Q���?~8gDi�?���H�?���9#�?Z��ڊ��?^�/�
�?e�X��?�Y��ڊ�?io��T�?2U0*��?-����?�٬�\m�?Ǻ���?� �rh��?�:M�
�?�2�y�?ޓ��Z�?��q�@k�w��#@�-���1@Gr��7@K�46@=�U��-@�=�U@?5^�I@	��g��?ݵ�|г�?�B�i�q�?M�St$�?�s���?~8gDi�?�HP��?��ݓ���?/n���?!�lV}�?[��	�?c�=yX�?�����?�V�/�'�?+��ݓ��?pΈ���?�-���1�?����z�?Gr��?�Q���?�Hh˹�?†�W�2�?H�z�G�?c�=yX�?�� �rh�?]m��{�?D�;��)�?�žv�k�?5�Ry;��?s߉Y/�?h��|?��?u��&N�?N�w(
��?��҇.��?�{�Pk�?�?x�=�?�H��� �?��U+�?�f��j+�?��%P�?�b����?9�)9'��?�_��s�?W�}W�?8�q���?���Y�?O��C�?EH�ξ��?V�0�{��?�"����?�'���?��lXSY�?vQ���?�@ C�?������?��uoEb�?�+f���?�3���?l��7��?�}iƾ?���cꮼ?�l�IFκ?���_#�?�mr���?���/fK�?	R)v4�?=�u��?��-β?�ɨ2���?HG�ŧ�?nN%@�?�B���?�U���?�9τ&�?��=^H��?{�/L�
�?��O��?�'�_�?�s���?�.��ޠ?����.�?�[Y���?�+�p�{�?���|~�?X8I�Ǵ�?��H��?���=��?&�R?o*�?��9��ː?�����َ?t��)�?V���4�?�e3���?<1��PN�?�ͮ{+�?��e�O7�?�>tA}�|?�f��I}y?Q3���Uv?�`U��Ns?�!9��Up?+�m��j?��n�e?�B�l�`?�[X7�Y?��yT��Q?b���LLG?�<��S�:?{��(?�4�;�?�`x@�@�?���҅�n?��'��r?��,�Ov?��g��z?m��B�?�N<�`7�?�M�6�?E�M�W�?�쩋�<�?�qO19�?\N�ꨬ�?'_���?���")�?�W:�%�?�w�[�
�?Y��H�?X���?/S�iݯ?3Xi9m�?��rko�?(���?V�l���?,��LC�?v#���?�"���?<��;��?e�
�?������?[�y�%�?�;���?Z
�A��?C���B\�?q�L^���?ER����?��'���?�fed��?̊�Y|�?�u�=R�?'U6c��?��E�I+�? �JA��?S�Z�!�?�w?��?�{:h���?[���*H�?��(dB��?��R�`�?��h�eo�?l�3~��?E_��>�?�i�I�?�5���\�?Mu�T�?�@�8�?�WY��?V],����?\�#����?0�,��?�j�i~F�?b��5��?�ji�>��?�nض(3�?�J�S��?�����*�?����`��?�)/C-�?1*�B��?��{���?R�sk��?e�:
F�?<ל(���?㟾
�$�?�4$����?j)jz���?r��-�?��C�i�?+��$Ί�?��2jc��?=�9��?��lY�?eT�� �?)7����?&x�Ӈ��?��3�?NA~6r�?��s]��?rd/%�u�?6��Wt�?�JI��y�?st��%�?o����?����x�?;�P�#�?�E�B�=�?��/,�̪?r�*r��?:A8�?a�C=���?5��w�2�?������?����W�?�3WJ��?�њ�Ռ?T�W�!<�?���x�?8U��}?k8���v?
wT	r?�i�8�l?�ٹ�Чg?^g��R*d?Gsb?��b��a?�u5-<%c?H���g?9aZ���m?R/�t?a',Yd'{?o}���P�?�d�3`�?΋�B�?�p!M�t�?��_꥙?�.�Xi�?�M[
�Т?��n��?�05��}�?����?i��\�?Z��P�?�&�ȓb�?�`�=��?�6���?6�Մ�S�?V���ڽ?���<�?3#���?%	���?@�1d�?�"p���?[�NE�?	ȳ˷�?����U-�?��p���?�].�;1�?�ȑ���?f:�?b�qm��?�}��?v�,0��?0��s���?&��L*��?��Eި�?�>ե��?]^oQv�?Rm&��X�?_$Y,�8�?��*���?4�G_��?�f�[R��?C�ɞN��?5��Ҵ�?$G:#��?i��֦��?2>�^�]�?�Ԡ���?�_�o�?e�^Q��?X�-�G��?�Z�F��?nT�ˠ�?�8Vs�-�?�+�ǻ�?��ݍ�K�?A�y�;��?5�)$t�?���^�
�?�dq����?}�F�F�?��V����?��H.�?R���0�?~�3���?m�MQ�?�?jꆷ��?�i���T�?W�J��?���2T�?Ց#����?���Q�?T��w���?tZ\�zf�?}#:��?Ot	G�?<�����?������?:���`�?&�`6A�?�ip�?�'�$��?i�
���?���>��?;�I/�?u��OU!�?�k{�%9�?�0|DL�?_{fI�Z�?��\4d�?��O�i�?L����k�?H�9��j�?}ZEhf�?G
6u^�?;�?l�Q�?ޑ��?�?^���'�?���i	�?G仔���?e8�π��?�,	PS��?����W�?OqN �?]����?��C��?5���c�?1&���??�4��??^��l�?f}�sy�?�v�����?hRTG�A�?���!��?�
�R�?����e�?W�Yʻ�?�W���?�#
nkK�?������?�6dMv��?,�w����?�i�(�?�ُ�a�?*�i}۝�?�R\U���?iz?$2"�?u:���j�?xZ#'��?��ד
�?�ٺ�{b�?w/��Q��?kR�,�G�?(h�|�?�Ž���?Kk��?��c���?�����?����}�?�\W'�a�?w��o�I�?�<̨C8�?%֘��.�?M;�	/�?���o9�?0�b�!M�?
�C���?�Zk�'�?�F����?�>e��?
��f��?
��>.�?+�~��?�Y!��?����i�?]�	�G�?W�xK(3�?	�k�>-�?�^U�i�?C ��d��?��3KԺ?r�݂[-�?�yV�n��?����:#�?������?��4��k�?l|��,�?�wn���?��!��Ư?�v!�Ǯ�?$mx�P��?��$�۩?�mII�?_ސ�{�?o6ʸ��?���˞��??,��#�?P��4۠?%�J�BJ�?�H/��?k)�;�?��g���?W�*�?�,U���?%�e��?�j���?�>�aU�?�ֳs�!�?��A�K�?�
�?K����?�V��k'�?�G�Fv�?�ف��?��z�l�?�򖵑�?��>sǀ?Cs�FZ*?`]��g�|?��[o��z?�(	��x?i|�w?5�$��[u?�V:R��s?���Wr?�5��p?H\��Ѕo?�9Y�=m?{��#k?�n���2i?Z�IWgg?U}#,�e?�]��1d?j�պ��b?f��F�ia?�`D$,`?ղ'1^? v���[?��Q�_�Y?�M`5�!X?@�o�rV?)�gL��T?�ғZqoS?c$v�R?�Ծ(]�P?�\K�gQO?���"M?ҥp�K?�@��K2I?�z�S_mG?]o��=�E?���DD?!�<'j�B?uۆ�A?��c�c@?gd��>?O�dj�<?���ݳ�:?o���8?�d�$7?D�T8�5?P&��4?5��z��2?�w]��u1?�����I0?1�J=g.?Q���a,?Xy��6�*?�^��5�(?|Ҡ��'?@R�k�%?���-$?�ƅ�"?b�Y�G�!?ȷ��s ?�`/��?&�t�?�M�l��?�!�1 ?&Z��?��߸D?��ˆ�?�6h��B?����o?0fQ���?i�]i1�?���*w
?���?��_���	?ጐ�S4?
�Q:�?��ڃG?��z�?�����?�ݟ��?x#��r?v��®�>
¹�>�A�0K �>ge�: r�>F�phN�>��45�e�>��&��>;&�K���>F{ٕ)��>;{�rh\�>���RK�>�8Huԗ�>��W��>�����>�6�|Z�>�P����>>��ωf�>[���c�>;�P1��>g[�J���>�d���>�O�vyz�>
�����>��8���>;C���_�>�W����>h�#ե1�>�o����>���Yh�>kB��%�>[;��>N	��>��>�J����>����>��Jf���>���F
0�>E��9���>��&��>(��*��>(����B�>�D�i��>5���Q��>�\.r��>�+�ۘ�>�H{���>}���S�>��º��>�`x@�@�?�\�,;?�kJz@?Bz��u�C?*���H?�;�V�L?��:z\Q?��T��T?��;d�X?+��+]?𚦻*a?U��d?U�·]g?���k?B���o?8.PC5�q?�/�9]t?)��0w?ʜ�&�Mz?��΀�}?�݌�˫�?#�.v��?���5H��??���?�J �ʈ?|�
r0��?�~U
F�?��,DE��?���Q
�?��#�H�? �"��?=�N�”?�{@Ez��?N׏$�?┘�]Q�?�{�����?�V��z��?�o$3��?��r$�p�?���[��?��=m�4�?��HYT��?8����Ρ?hë����?�LV=G��?ƑA�c�?�_&�I�?�d��4�?�$g� �?��тa
�??����?����ũ?ܒ�g���?к�vM�?��|�m�?�&��U��?��g�?_�9�!�?K�w���?��E�x��?YcuP.2�?���y���?Z2C�
�?h�NooL�?��i�6��?l`���?U��ķ��?��$;	�?���:���?tش�@�?�[���?6��E̵?d�o�ȶ�?��>-���?I�Aθ?$����?��f*�#�?�+�ONY�?B2Ӭ"��?�OO��̾?�����?.
�l��?�(�t�;�?_?iM��?�-�\o�?l��	�?�-\���?��l�HE�?U������?��vY��?a��q6�?�/`��?0��E��?@)���F�?j�����?DJX����?�ߗDn�?8���(�?���V��?���:��?���3���?7��t�?�!�x�?� �qgK�?�$����?-|}�K��?R�Hڍ>�?H�Ė��?�!r�z��?v�ً��?�qm�g�?Kh��lK�?X/��:�?i���4�?\}+ȅ9�?�c�T9H�?wi�ai`�?�R�l��?�������?��W��?��s]	�?5u���?�y��H�?^������?�	�(��?�=�j�5�?���7*��?���.���?63D_�'�?Ѷ�.9��?�r��e�?H�Sȕ��?E5��l��?5��	�?ՠ����?���b��?}�}�m�?{S�����?a
aF�H�?QIBdz��?E@*j��?V�gKq�?+�!���?��d�?d��xkj�?�	+~��?�"�Y?�?�^�DX�?Sh��?�_q�9��?߸�(5E�?B	3m���?�oIi���?`x%�s��?�ɬ9�)�?���6M�?�S�3�g�?��3z�?5#(#ӆ�?�Y�o��?,=�w��?y�$��?�����?k�KD���?��p����?(�����?�I47���?aS�Q��?��o����?�`w���?%֘����?�i`����?cЮ���?6�.6���?#��0��?�>�6i��? �F+��?�Da����?Q����?!�<zh�?y��"�H�?�_v�$�?T8��?-D�y��?�y.���?���{h�?"wl_�(�?��8���?^q'Ǔ�?m��|�D�?IXӫ��?+͜��?��m�?�ɹ^�/�?��zO���?���Y��?q)���z�?Z�A�6�?�ĽC���?�K�R՟�?�y=�M�?{�{��?Y�����?R��8�D�?"]"���?�:���?�a�$�?�j�h}��?n�덵Z�?�,σ���?k�!��?}⹭#�?���1��?���4R�?;��.R��?�QX�-}�?s	,%p�?Y�3���?��p^�1�?8��?0]-�O�?�X�h4��?ǃ-v�l�?�(i���?Lk��^��?��R��?h?RD�U�?�"n��u�?J�����?y�����?���*��?��dC�?�r>D�?�2)Ojy�?V���̯�?�ZH���?J��c�?���\QJ�?�Ǡn�y�?@�>U��??_i���?=C8f��?�0�{�O�?hb���?�}1��?8��%�?�aX���?���*��?�XG��^�?�D9�!(�?q`(���?և��:��?$�
�P��?A��Y��?��9m��?�����?�Hr����?~����? �1��?�E����?�N��{ �?�52;��?E�N���?���nQ�?ID�^�n�\�?w����?6w�E��?��uofp�?��^�B�?�L���#�?b+
���?	\
?��?�jK��:�?^��jk�?��S�崪?}N+"�?!�
���?�Aɉ�?xo��g��?KN�}�r�?wI�#:�?�+#��?p���?k"�]E�?��}Y��?�P
�'�?J8_�o�?���2Ж?�'O�J�?#Z<uۓ?xc Sg��?�����@�?���=��?��p��?'B�'Ћ?e�F։?�D����?&��d�;�?�2V8՜�?^>s�`�?�+���?�&-Hrz�?=v����~?��H�|?��.=��z?��_9z�x?Ć g��v?;��^u?Áow�s?����.{r?�d�U�/q?��w�4�o?�S�>�m?�}AE��k?��s�"�i?b��5��g?�e̓!f?����d?+OP%+c?/)��ݣa?+y���X`?/�[�L^?�n��\?j%wOSZ?�Ϟ$X?=��eV?49��`�T?E���NS?f��E�Q?#DR;^�P?�ϑ��N?�ق�%�L?��;�J?�Z�A��H?J�xbWG?�QQ̬kE?�O�ޢ�C?���q�B?VY�Fr<A?��hXF
@?�q7��=?�
ju�;?�Rv��9?�h0�8?�VA{Zf6?J�m��4?]��<�a3?�!c��2?e!���0?��Fg�5/?�nJ��-?�&;�+?9��C)?F���$�'?1�Ȃ�%?��5�*�$?���‚##?&Ө��!?U�� ?G;/K{?���U�?���x��?����d2?�!'�?k��w��?)�K�?FCo�+?~˧P�?{�AD�?�%Lq�K?�c�?
?�v\
tU?ji�S�	?փI:�?q��F>R?�)��d�?:$ЖɈ?�Up��H?�B[��?�I��?�$2K���>�����>�K%U�>�>yZ'F��>�0��>]g�sN��>mn�'�>��uȨ��>�
�I��>«����>0�6�0�>�[9�A�>�h0q�>'<mb)��>UT��$�>�1g6��>B�_�t@�>|r�P���>?��>��6ӑ�>�W[��}�>|H����>$u�g�>�`+�H�>������>��`���>���vI��>��s��>�>s���>�������>�V�*��>���⧞�>r�5DG�>��Co�>�i3!���>���I�>
B��3��>��eS�
�>aU��L��>D?d�>����.�>��H.
�>?�)��>(�|l?�>��M�+%�>�d�h�>Ί��ƺ>�u�X�?�>�[Ra�Ϸ>�+�C>u�>p&��.�>2#~�R��>��aײ>���ű>��u°>����>'�ƫlӭ>�c|�$�>��#����>l%Z�W�>_�78��>�`x@�@�?}3{�?��>�{��?�J�3�V�?��~ek�?W�,n��?�n�"��?�q��8�?�'�)հ?2�4�L�?l�� ��?K�X�U�?�Q7S��?�0��Z�?T<�c���?�:ax�;�?�O��S�?�~n�p�?p�^}<��?(��x���?�<��e��?U���?I�ȵ��?��{�X��?��L����?�M<����?�!���?
 ��C��?�
9���?�q1���?n���?���AB��?ip[[��?�C�.l��? _B�W�?���?<K�P��?�����?�BW"P}�?�6�xM�?�XQ�i�?Rf`�?���Ј�?F~�,�?kg{��?0��L�^�?�s�?ǁW˝��?�D�[�9�?Χ�UJ�?�B</O�?�D�u���?`�o`r�?�ފ���?��	h"�?��B���?L���?��4��?��e�ik�?�MbX9�?�����?��죓�?
�n��?��*P���?�'-\V�?M�D�u>�?���Ɋ��?ܠ�[;�?W�[Ɏ�?4-�2�?q����? 
fL�Z�?c~nh��?���i�?��v��?�4�6�?������?�w}�l�?"����?���X�?�|гY��?Ϡ��?]7��VB�?��
x�?v3�
��?��[;Q��?�MKF��?��+�Q�?%�;
!��?E)ƞ��?ͪt��?d&��*�?-��(��?�2]>H��?\��J�?�)(���?QwT��?a��7��?�:� ��?q���i��?P+�l���?<��}P<�?h�t�4��?��[]�?_��-]�?┹�F��?�<���?���+��?oS���?��9z��?�#�A�?�H�$l�?M�k
��?�׶��?K�[�mJ�?%q��ڢ�?u3�'�?^=8��p�?�O@���?�wW��?�4\��;�?Ph@ �?����?����"�?�P�Cd�?��3¶?h���4�?��^b궳?o�z�I�?Z��}�?�d�`�Q�?�V{��?-�:���?B�����?��Ly���?n� �c�?�ؿ´5�?[�٥�?=�>
�2�?-1��(��?���=�?e��)���?�-��?|5�ۍ�?�
'/�?�}����?f�d��	�?Tj��sG�?�bL4'��?�H]T�?�zܷZ'�?ba�b*�?����Y�?
{��k��?H
v
D`~?��ؕ��{?����By?: 4{�v?K�l�t?���r?����q?}�d��o?��K,l?�r��i?�q
6�,g?�����e?��_xvc?���ѬKa?CDFNc_?�[�+|\?���F�Y?j���vW?��8�KU?����SS?N���ЊQ?w;�e��O?����L?G�Hx?J?��ڱ��G?(`.7ΥE?�\YJ �C?%גk��A?B~�Jm<@?/P��ۃ=?l�0[�:?�,��f8?�S26?��-��14?f�[��`2?c=�n7�0?����x.?%��K�+?�p�1K)?n�NN'?{^��%?]C�6-#?˙��!?�H�I�?���A,?�M�郦?ӾI)[?�Ƃ}�D?!5%
�]?H6�U�?�`1�f?�]u??/�mK<�?s+x/(>
?Aܕ��?Vɱ�D?�<
D?:u�;F�?��ۨ"?�偕�n�>��;��>Bژ�n��>���C{�>d����>�5�m��>�>�&�>o�X>��>y��I.M�>��6��>�.�s��>�F���>��Z����>+�|��>�`x@�@�?f�k�/h?�H�Nm?��C���q?���9xu?=#ߓ�y?��NPL?◀�"ׂ?�����?��1��?(<.�S-�?��a�>�?���,�͖?���.�?ɴ.���?��,-~�?��+���?�x5H��?�o�弬?cj��u�?h
:���?�n��0�?Rʹ�˷?���%���?e�VAt�?R���@�?^6�Y��?W�Z���?*��~I�?�&�jp�?|X����?7����?���B�?b.���?q�;<:d�?��Q�Vs�?A�[��5�?i��`��?�F����?!X3׎�?��~��N�?�L
���?%��C���?�O7-�?}�֟i��?y>��(�?h�����?~�|� �?���խ��?���08�?|�˅%y�?|���?�ap(���?{�Cs���?O�?���?�y��B��?�
4�G��?6$"���?�0�1'��?�ߡ(Ч�?� ��w�?�I5�j*�?}�4]��?��>�Z0�?�T�i'��?���)��?1iBI�?zn�+��?�Z�?
l){�r�?E�<���?��zŮH�?/�IOG��?C��"�?�
�V��?Z�?����?bZ�S8�?,b�aL��?�9n�?L�s���?�f�0�+�?�|�5_��?v�V����?P��-)-�?G�o��?Q�X���?��l�?Ĥ	%��?y׏e	�?��(�W�?����}ε?*��$:p�?p�	��<�?؇/�6_�?qw�R銪?��ѿ��?�
ra?�
�H0��?�O_*��?9J�V֑�?�10]N*�?m�3�?5��cR*�?�J躀?![�!?�x?j�8DjGr?́7|<l?T-.�g�h?1Sό�Qi?��G�m?�f�f�er?7oP��&w?t_���|?�7�,b��?�Bi��?�Ӆ��m�?���%��?���:�D�?��bc�?~;�Z��?��/b�?��C�$X�?Y��hR��?_�*6�Y�?�S�.EE�?5v.1;0�?,jj�L�?8����q�?�3�Q��? *����?YeK��E�?��8¾?Z���а�?�ӹ���?���b~�?\K�W��?�r:�|�?�qh64
�?�d��?�}��+9�?���PH��?JOƝw�?&#���?A�����?����?�
6��?v�g�0��?�m�u�?��/�t�?��H�,|�?�T����?Z�2��?��A�M��?O�4����?$_	�Į�?�k�ƭ�?EW����?�ԱJ��?�6j*0��?FaE<�?�ÖM��?��"�2�?���l���?�5u>�?X�����?o��3]�?���X��?�����?��^�?t�矅��?v�{;�?`A�j���?�ܤX$\�?��=���?<Nё\~�?��Þ�?�*b"��?��J>�?�eu���?l��E!n�?�'Y���?��r?��?���D$�?��X;��?4A/�?�U�7Ʃ�?Qn6��?$��~��?��L�z��?�I��{$�?�)��V�?���w���?jO�9���?�����?=HO�CD�?� >���?sg&ε�?�a����?���6
�?=|�(B*�?�G5�D�?�ip[[�?��u�+n�?U��C}�?X���T��?�K8���?�)�TP��?�Q���?;�Ԗ:��?7��}�??����o�?Ϣw*�^�?иp $K�?ke�/�3�?/���?z�S�4��?�|�.P��?�E(����?;�/K;u�?��*?�?�b)���?��5���?��Y�N��?�̯�A�?M������?O1m�_�?�gV[V��?"�;=(�?�|+m̆�?������?�5���?�?~/*NZ��?�C���?C1Ð�Y�?M�5��?���=^�?����T�?3�-&���?�n�;2��?�ǯĨ�?^�U"�J�?����U��?oV3!���?`~���?�;1��P�?��}*��?�;�^��?_���D�?��(Q@�?@B޼�?^w����?Ʉ�w��?�h�����?HV��~�?P�$�or�?��=S�h�?尠�n`�?����W�?��M��Q�?��΁�O�?��& �S�?:̗`�?qo�\u�?�A�(�?�-��wx�?�k1.��?
#s�R�?k�G:^��?t�Oqx�?���.%�?=hі���?���@��?3�<֌�?�'%��w�?��o�p�?�mO���?���\�?��Y|T�?i�QH2��?/���?��{p��?KG�
3�?��_�b޳?�2W���?[��V}l�?�=��rM�?M�Y}�?�*fJ~�?�P���?���Uר?L�s�H-�?CلI+��?F�v�%�?�Q�Ģ?�Pɵx�?�DM��?�?)��1�?AJ��#�?�`$͂��?M�;z.�?=�C�qY�?�E4p���?˾�WDE�?!��$V�?Yr�`$��?�r���?yc���?����6ߊ?�k(s���?*�8D?�?���X��?�3�ч�?������?�J��7b�?����(�?�Q#9~?���z��{?&�Dh*�y?
߽x?bgV�Av?��b�k�t?����s?/���ǵq?��Vip?�E�5ln?!>�c5l?,�b�c*j?O5�Hh?����d�f?gJ,�d?ʾW�sc?�8�Mib?rR�w��`?N6H
*_?H�r�,�\?!��@�Z?��"�X?`��8W?
;�9�U?����vT?v3x��R?��ԓ;dQ?���/P?J���N?��*�iL?���VJ?��X��?H?S4/�F?����D?>=��~C?ϕ�V#B?r#���@?�=M"w??y����U=?��:\;?`/k�9?���n�7?��;16?�Ԧϥ�4?�Z���G3?����1?Yʕ�M�0?�j�@/?Tt�lD(-?�VX6+?h�*��f)?s䉧,�'?�l�eB'&?���_��$?��VAU#?�UR�"?�|��� ?�{ԨΆ?�!��s?�	cѕ�?ɴ�Ƿ??)���?:^��}?�)�ʝ? ��?����!n?5��d>?�j�5 ?� ��<(?Xz�R3?L�E��`
?G��73�?e�o?�T��k�?zQ��P?�ù'
?.
����?�ʚʔ�?J���i�>>���s�>�&w��>n5�\�>�|��I�>M���>s��`�>��T�)�>g�D�8��>��}ڧ�>������>��k��>
�e%�.�>�X��be�>:�I!��>v��2@*�>A[c����>��S�V�>"u��>��_��>/��Q��>�$A��>��Qn�c�>��ć���>T�(�5��>�‹��>�C�\��>:��>��ݫ�>6c6�a�>��l^-�>�k��9�>�!H���>d�:#��>�6g��'�>@�ُk�>dtMʏ��>Af���@�>�3���>���vMq�>{�a(�'�>�Z�~���>���h��>��T��>NM���>3<�H���>'�!`U��>k����>
���~�>�`x@�@�?��o?��:? M��O@?�J!|�C?���	p&H?C�x�BM?'k�'�Q?c�œ=?U?�<�krY?i9B�U^?���v�a?�Z��&7e?1�v��h?��
�m?�{p#�p?P
.{ws?���@lv?�z��U�y?��O<q}?��W����?�oL! ��?�
k:mS�?qB[��χ?ӓ���j�?�-��&�?��Q$�?�S�]q��?��h)�?����ߔ?� ���?�����?�g�-a�?V�C�?a�2P|)�?����?9��	�?D��A�?�xg�)�?��yI�O�?v�����?6r@��æ?�cb�?�����`�?�La���?�[~���?���І�?�s|��?Ss^�5�?5�d�?Ѹ&�	��?�/�)h�?��+�j�?Kݝ�xϳ?��sm=}�?s�!�*�?N$=��۵?�H{����?0,�-X�?kR��$�?|��a���?C�-�ɹ?J��c��?�DZt�a�?���-�&�?�by���?5��lF��?p����?]��T��?�D�9�K�?��ym�?w��r#v�?u^�P�?���+Z��?��s�ف�?pJ�f�?�?�����?�4���?�#�R5��?U�xF�N�?� Q���?�[z4��?ʟR#��?�R�b^�?2���&�?\�
�c��?�����?œ8�[��?2'�L6y�?��Q;
b�?���*�?H�����?�����*�?/�4'/��?ݶ�Q=�?�VC���?g��gY�?�6�Ҁ��?��߼8q�?�IyR��?ϛ/����?5;H��?N!�0��?���n�?0�;6]*�?�r�}���?R��֎��?�ۈ�t��?[,�Y�?��FM&�?�k����?A��Y��?�X:zW��?!�:�u�?|N՘k,�?�n!�m��?rՆ��?�y#N���?7��Z
�?dr�%��?� |���?	�:)��?T2����?�R#�z�?�xIR���?�n��s�?�(�
���?� 8xp�?��L���?g��|u�?��*���?���t�?�*����?<�H��Z�?��d�V��?{]Ќ� �?U���y�?w�ޗ���?���o�?���ݝk�?.�����?Rμ���?�zC+A�?����K��?{-�1��?&�aY�?�L_eG�?��``��?�x@���?���<�? �MYh�?c��N3��?������?�4��$�?s��h�R�?��b�w�?*�dq���?��
|V��?�`���?#!���?$���ŭ�?`�$ȭ��?NbX9��?�ylp��?~�����?"�T��?Qߍ`>��?<�8b-��?�:����?�J�8���?7_ۑ���?��/����?�ij_��?�P���?!�����?��u��?��L�2��?H�e앃�?9�$-Kj�?��d\L�?>�*�?�!&���?�҈��?�@���?�_Н�x�?5n �?�?��e��?�K�'��?��f�f�?'���?!�wtm��?�d�YEd�?G�`��?��`�$��?���!>��?^;��K�?��jQ�?n] �c��?�V��?�	�s
3�?�L�V��?ĭ'_u��?W�c#/�?t��z���?���q�?�*����?��,|��?-���yE�?���;���?�d2�u�?`�4�[�?�0���?�f�6�?TĎk���?�x`a�?���l��?�f	׈�?	�c��?:vP���?�d̸;�?&c�%���?*��sX�?���A��?�o�v�?5;��t�?$����-�?�0�{�O�?�wxt�r�?!w�(��?�?�eʽ�?6�m���?y$^���?����H�?C��B��?�#��?V����?�;��7�?�RL�s�?BHq���?�fR����?)[$�F�?3<Qm�[�?�b�����?	�B���?R_�vj.�?��r��?Z� ����?���;i�?I��`Z/�?RvD�w�?ʁðh��?Ӽ���?1K�|��?f�jl
��?��9����?��S[E��?��2e��?�:I��?�Z�d3,�?�w�
�O�?{��ԏ�?���"R�?mD���?�-Qb|=�?�2Z?�ʸ?mS]<�h�?W}K���?MSմ?�����?<�~�܁�?y2(h�n�?L��l�i�?%m�_��?�����?&�YMS�?o�j^���?��5�� �?�>%!p��?�MQ�D�?./+�=��?�$����?J�`����?z��q�?EOgz�͞?\'H�՜?z ���?�|��:�?{�A��?BP�1�?Ξ�Em��?�pe3/�?~`\�?w��譐?.`<bx�?I˳X��?ِE���?,/3K��?��.�wD�?������?�����?̶k���?8�w�5�?wU��9�?�~z��}?�u���{?�sxfT�y?Q†�I�w?>��N�8v?�<�Ӭt?P�6;s?�\��q?��c��p?��ù#�n?��ZP�l?��Τ�j?�����h?��Bg?lo�8ue?)U��c?�h�b�xb?>�g� a?)94 Ӿ_?N�QsEk]?kr�FC[?��EoDY?Pi0WlW?��^��U?�����&T?��4�ǴR?�+_Q?��T��"P?����S�M?Jd,E<�K?��4E��I?�je�eH?�ǧw�QF?�*I��D?���EC?����7�A?	�k!��@?:���??�Ux��<?�ݽ+��:?�KNݼ9?�.��lE7? �1P�5?�tT'4?P�z}�2?�\��o1?����70?��V]�+.?	�\C,?�v$�%*?�tcv�^(?��5��&?u2�s�4%?PJ����#?׌�v"?Y:���7!?��b ?d��#<�?,ͳ7T�?�!q:�?�}@�I?�xk�
�?(�#�)?G!�%�?���m�u?��\�Q??�s�N?�V�P) ?d�h�'?N�\�LP
?�a+�#�?f�����?1��z?t��=�?�̉���?��ْ?�����r?:���!�>����O�>��o,��>G���=�>�|�4_��>R��0�>����֪�>����Y�>kPYR1!�>��g=%��>J�.���>�X�����>@��
�>\���Q�>�
���>vk9�'�>���+��>d�!`�>�.9�H�>\G�	��>��u���>�Q���>(����>h�o�$��>���%�>�o�!���>�ۜ�+�>ʶ�����>���<V�>,&p���>1?/�u��>dg�H��>�܄�;��>A���>l� �E#�>3���z�>�&����>GeWiq�>0�`�
�>%����>v����>ؐ�kX�>�'�E�A�>�s =�>k�t��>@�/e�ɼ>�,�1�>
|�����>}����>�Q��f��>�j�qk�>�F΄�3�>7T� �>E$����>�����>�m�L��>O-9�'�>OA�p�>�nn�Ԫ>�Z��P�>��ߵ�>�d�4̌�>G�ѣJ�>�`x@�@�?{:��?�)�q�\�?�j4yғ?��c^�?Ԑ#c��?��>
���?sXL2�$�?6�Dp�?�1X�Ƈ�?�6K��C�?u��&�ǵ?���#�?��!>��?ƖԿ��?�R;h$�?�I���?��|��?b ����?�9�Z���?��m�u��?@����?bȠ�??�=x��?�{�i�6�?�ӹ���?��|���?�F����?~�ƃ-6�?�'�A!g�?�܍O��?�E�1z��?sHj�d��?�o���?��G����?z�sѐ��?�%T��?�.�H��?'�Ҩ�?Ɔn�
�?K;5��?Ve����?$d �.�?�OZ���?Z���m�?���'�?$a�N�?��@��?8�*5{`�?B@��
@��zܷZ@�����@���U-�@l�6��@�����@�4~�@4f��@��p��@
�GĔ(@�pA�,@��S#@}�F�@�D�$]�@��K�@�0_^�=@�
���?s�ۄ{%�?t�v�4��?�ʿ�W�?t	�^�?f�YJ��?Ͻ�K�?�X���?�CV8�?��Q���?�o���?MeQ�EQ�?�O����?�����?q:��?j4��?��.���?
�i���?R���<�?�ǘ���?�w�'-�?r6�,�?���a���?;�-H���?�yq��?]��J��?cؼm
�?�^
P��?�!IZ;[�?�Jf���?��	o��?-�`u?��?��Ff��?���g*�?���W�?g�\S 3�?]v>�u�?�{�Ӗ��?px�j�?A�'��?3D_�'��?Jp4���?$$w}�s�?�B��XZ�?y��+��?�-�v���?,�KH���?^�Ž��?���5��?s���"�?�ۓ�u�?�ѺW��?C�J�S�?�ـ��ʽ?�=�l*�?�36�^ɸ?��vl���?�oڄbȴ?�E��	�?�Ⱦ��?�\�`3�?���Dҭ?���4Yi�?L��\*�?�����?�aN�&�?���`�?�g�����?EO�A'B�?HW#�ĝ?�
��<�?�Z_$��?�c�_��?�='ZE��?���?�d9�F�?�)�p��?Q���Ȍ?-:��xH�?qq��]��?r���?9�M�a��?:E���2�?˯ڍ"��?�:���$~?�`4�h{?��m���x?�E6/�v?��6u��t?%V2?��r?F�]l��p?d����n?YqLD/l?���՚vi?�s�mg?`>8#s�d?�l�p�c?	T½yDa?˷P��R_?ш���h\?��k��Y?���_W?E����4U?���>S?L�"wvQ?��{�O?�Ր���L?�=�J?2��:9�G?��k݁E?��ƛ��C?�ܿ��A?س�,-@?�,��	9=?�8�{�:?3F�L8?�3
S��5?�z_��3?��o�2?�q	�s0?��<��-?ܩ@;U6+?.�
�A�(?0�9�n�&?�K��^�$?h����"?�#!?��W��?;�VyjD?�W�r�?���ق?^�(t?�7l�?��)!)�?2O�PV?Ea��j�
?h"�M?�<4�?@��Q�?X_�?(�0��'?����??K6V?B��oW��>*K�$��>�D����>�{p&�>x
Y���>���*�D�>��F�G��>�Lr��M�>>�}���>s������>�x��x�>>��2{�>N�W.i��>���s��>H#w�s�>�|R���>|�B���>����"�>�,;����>E`x@І@�?s�]���t?3��(]�?�u�+.��?F��}ȫ?ys�V{ط?]��'��?Jy����?5
If��?�5�e�s�?����?����?��v��N�?�.PR`�?R
�=�N�?�L����?������?�pu�]�?��?QO�?��?�G�Ȱ��?�
��M+�?�^�?��Iطs?�+�S�?#��u��?5z5@i��?RD�U���?��7���?�G�C���?L��!�?Q�E��?	����?͒5�l�?,g~5�?%���G�?�o�����?��n���?Hm��~��?���h��?M�
O��?b���e�?>�ͨ��?����g%�?OqN��?NbX94�?i����Q�?��]/M��?��6�[�?��B���?��$"���?��Y5��?ϺFˁ�?�U-�(�?��HV�?��Đ�L�?1�~�٭�?��6�x�?I�L���?�x!�?���e�?aE|�?�**�Z�?�b����?;s	�{?�2�ys?���ฌk?���9]c?CY��Z�Z?��I���R?E`x@І@�?���%�>A�
��!?¾�D�1?O!W�Y@?r„ѬlO?�&�|�7��n��A��شR�b��[�O�R�Z���аX?8��@}?�"�ng_�?e���m�?Έ����?`:�۠��?O��唀�?�Դ�i��?�����?>%����?V�a���?|҉S��?2��4
�?Hm��~��?�ej�!�?�7�W�{�?:vP��?\W�o��?Ts��P�?�"k
���?�w��-�?�-���?�F��?�:8؛�?;�
��?��k&�l�?�����?�>�̔��?�.Ȗ��?>?�m�?�t���?��Z���?4��H��?vP����?E-ͭ��?������?��Đ�L�?a5��6�?���<HO�?�A�v��?���(��?2t��?��̓k
�?'k�C4��?���ʴ?���{��?rl=C8�?�ݑ���?���4��?�2�&c�?��	m9�?Ǟ=��I�?�-@�jv?N�=��jn?}zlˀ�d?ςP���\?�=ԶaT?�bc^GL?O�'�C?���2��;?E`x@І@�?���
��?,G�@�]�?ޮ��p�?$��;��?m�IF���?l�����?��4�R��?p����?�ң��L�?�S��Q�?���%�r�?��E��?�{�&�?���`C�?�OU���?�=�-��?;ŪA���?�
��S�?NbX9��?U��X6��?]T���?�qm���?������?��z�"0�?7���N��?��l ]�?B��8a�?��A�p�?���屮?_{fI���?du���?��v��N�?1�q�P�?=e5]Ot�?��B��?-wf��\�?Mh�XR�?�p�a�ƃ?�Y��Bsm?��`�>T�ӄ�'c|x��-�R\U��}��9��up�x���erjg�ڒ��X32�]������m���5@i�QH��%��1��M�n닿��|�R��i���>Ȃ��IbI��|���$�ptu�?W[���n��"�~�
f����_�nYk(�W������Q�f.py�I�B���DA�F�Swe7���+,�/�]�E�~%�m7�7M����Z�a/���!��
�fL�g��{����Z�w@ȉ@�?˿�!	f?�4}v�u?�lXSY�?���J�?���>r�?�r��+�?�������?�uT5A�?��Ù_�?���6��?�<,Ԛ��?
�8�*�?�r.�U�?�M�#E�?됛�|�?�IF�ž�?%��e��?TW>����?S"�^�?nLOX��?�<Y���?w��N#-�?�뉮?�?��Ũk�?F��^��s?79|҉c?�wE��?X�Q
��?uu�b�T�?��N^�?Z/�r�]�?�D�$�?zpw�n��?�v��/�?��(��?���{�?Xs�`��??���x��?�~j�t�?�(yu��?46<�R�?��&k�C�?��|?5^�?������?�z�G��?�ׁsF��?�\����?I��Q,��?=~oӟ��?�0����?��~��@�?��B���?P�}:3�?8�ܘ���?������?9��m4��?�pZ��?�c�ZB�?⬈���?:!t�%�?j�֍w�?;7m�i�?Lݕ]0��?�f+/��?�vhX���?S�S:�?'��y�'w?�<�dfp?��>c%g?ۗ}h0W`?9�N��V?B�N�E�O?���d��E?T,�,=>?�h`��5?��y�=�-?u��@��$?�� @��?�<��?*V��g
?��0j�?煵�v4�>a�镇��>�ȩc���>lX��G�>"��ģ|�>�U��d�>Ɵn��$�>nU��>"�[1�y�>Z�w@ȉ@�?-C��6*?ƪ{Ce�9?-C��6J?Mjü"SY?Ǻ���f?��+as?���_vO~?��<���?�Q���?�Z��8�?�#����?辜ٮ�?�k	��g�?�J�E��?g��j+��?������?���Q��?�<��S��?|�wJ�?l>�
�?���Hh�?�'I�L��?U�t<f��?��a��?y�&1��?�s���?j�t��?��K�u�?���Q��?S�!�uq�?/�$���?���H�?�I+��?겘�|\�?f��a���?q���h�?ףp=
��?R���Q�?X9��v�?��mnL�?ףp=
��?Xs�`��?�MbX9�?#��<�?��x�&1�?�|~!�?j�t��?�M�#E�?����Mb�?ްmQf��?�(\���?H�I�O��?ffffff�?�5v��?1�Zd�?|*�=%�?�Zd;�?ڨN��?����Mb�?�n�KS�?�� �rh�?D���XP�?�S�gЀ?�.����w?�1�=B�p?�e���g?j��%!a?2"�!�HX?���o'Q?.2��@H?C�8
A?T-Ћf�7?�K���T0?�*�Õ&?iUMu?�Ň�.?iUMu?�ktA?iUMu�>9��=�>P=y(o�>�-0�=2�>�c�� P�>Ra��>���ӳ�>���B���>����Ͼ>�׎���>�C���>{�d$T�>Z�w@ȉ@�?$EdX��?
�_�͘?���K7�?Bx�q�Z�?
�GĔH�?��ek}��?��4�Ry�?�Ry;�i�?�:M�
�?F%u��?(��y�?�/L�
F�?�j+���?,e�X�?_�L��?�C�l�?&䃞ͪ�?io���?������?�QI��&�?p���0�?������?��\����?������?�&p��?@x�=\�?io���?l�`q8�?�9]��?�M�ɬ?�)U��-�?�o(|��?ߋ/�ㅔ?�'eRC�?��DZt��?5���w?Y�%���p?��[�?�g?�z�l�b?�@�ѥ$`?'^��m�]?�p��OY?[�~g ;T?`�<�OR?�J�M?��;wP�F?e]���<?����4?�dz���0?q�<��$?T�#"�?�[��?�4{@�
?�IV��?�4X�Vj�>����>=�.���>x��I��>n4�4�}�>C�1��>
Umj�>�����>��p	�>}$�l��>�Udq��>h�ф6�>�h�Y�>�>�=���>N.G�چ>ͭAKb�>�ɽ��aw>!��'p>t�;�#,g>�(
BO`>/y�$W>�~�P>����vH>ק!J
^A>���9>d~ 2>�M��J*>��vf�">�}�<>�a�6�~>ŝ��>D9�(�$>�y���=�S�^���=IT�
���=("E�=��v@�@�?���ư>���ư>���ư>����>T�qs*�>�����>T�qs*�>�����>T�qs*�>�����>{���>����?�&�|�?��Z
H�?�k$	�?$Di�?��Z�a/$?*6�u�!+?$D��2?��d�<
8?
�x#��??���'�D?�m�2K?X��C�Q?zƾd�V?�=\r�)]?�xy:W�b?! _B�g?m7�7M�m? �‡r?i��Iw?,�,�}|?������?�ُ�a�?�|гY��?=�ЕT�?�DeÚʒ?L�{)<h�?$��:��?F\�K�?���uS�?�r.�U�?�4(���?ۢ��d�?
ܺ��:�?�1v�Kp�?�
NҴ?�x�Z�?
�8���?b��?¼?@�߾��?�)�n�E�?֍wG��?@l��TO�?�E�~��?�!��gx�?A�v�?�st��?-y<-?�?�����?^���?�Y�$�9�?.�5#���?�߆�y�?��^�?�[�O��?�[��AA�?�J?����?n1?74e�?�"N'���?2�m��f�?�ؗl<��?�V&�R?�?�Q��Z��?��k���?�{b�*�?�Ɍ��^�?l�u���?��ǘ���?��]ؚ�?�6�ُ�?�Pk�w�?�"�-�R�?�£�#�?���R��?/��ި�?"��I`�?S\U�]�?s�<G��?�h�^�?��L���?/�
Ҍ�?�	j��?��b���?��/�?Qi�?�Hm���?_�(�QG�?���O��?1�JZ�
�?-	PS���?�)�n��?��:�� �?�~����?,��A$�?��҈�?߿yq��?΍�	K<�?�PN����?�=z�}�?^H��0~�?����N�?�ާ��@�?�}W�[�?��i��?�.���?���x�?Y�E���?|�%j�?�?�Ŋ�??T1�ϓ?�H�}�?
��
�s?�AA)Z�W��{�|������X�j���������mFA���:�� ���!T�����St$�����>�栿�Ù_͡�B&9{���X�E�颿i���2��'M��y��V�6�㢢�d!:���|a2U0*���v���Hp#e����}гY�����)Wx�����P蓿2U0*�����|��������c{����`�HT��,��;�s?�d�u�?�UJ���?QMI���?�`7l[��?rS��ܥ?LK?�?�#d Ϯ?n½2oձ?pa�xwd�?Sy=��?�&��?�;�2Tż?�z�V���?{g�UId�?е/���?�bFx{�?aE|�?˽��P��?��kC�?-&�(��?^�����?׊6ǹM�?h\8��?o�1��?�_�(��?%�����?D5%Y���?Z_&���?��K�'�?)>>!;o�?u!V�a�?>���V�?��o�N�?�"��J�?�:��K�?W#��2R�?W�I�_�?$~�.r�?������?�L��S�?&��)��?ٱ��u�?��\QJ�?Ho��ܚ�?�w}�,�?2Ǟ��?	��cN�?�E�����?�/g�+t�?<O<g�?�h�
���?tA}˜.�?9b->��?ù�O�?�0a4+��?q�J[\c�?�k��F��?e6�$#g�?n2���?�ݗ3[�?[������?�+�z�A�?��X����?'P�"��?�K⬈�?.</��?���^�?��@���?W]�jJ2�?�ù���?r75��?H��
.�?T�� Z�?�>�D��?st����?ZKi���?�p�i��?�
���?�0�:9�?��.���?�Rz���?�9D��?��z�?:vP���?,�9$��?��k]j�?���(��?%��1��?��+�,��?rN�}��?D�7���?)\��h�?Xp?�A�?��3�c�?�r�Sr��?.;�?li�?9CqǛ��?�r߉�?�J��?S\U�]��?U���
�?��f���?�����?д��hd�?F�T�=��?�wg�6�?!���?ܽ�'G�?ܺ��:d�?øDk��?Hp#e�$�?B|`���?�;ۣ7��?�{L�4�?����Ɋ�?t^c����?-��0�?�[v��?X�f,���?&p�n�?霟�8p�?IH�m���?{�Fw;�?;�zj��?�����?f��t��?6sHj�d�?c('�UH�?G�(
5�?�=\r�)�?-�i��&�?�~�f+�?�LM�7�?�b��J�?g���d�?����
��?����[�?�_Z�'��?�[[%�?v�[����?���+�?���q���?��!p�?|a2U0*�?f�%���?�=@����?狽_��?V,~SX��?m���U�?J��{ds�?�M֨�?������?��r-Z�?�l�Զ?��'�bd�?=�Е�?Ӿ���?h+�m��?�J�^b�?^���?�D����?����X��?�Sr3ܨ?���H.�?�� ����?]4d<J%�?�Xl��Ƣ?Hlw�}�?v���/J�?5��:U�?��E}�;�?]���E�?o
l�`q�?w;S輖?��A^&�?��'+���?��;��J�?Mjh��?���H���?���-c�?f/�N�?9(a��_�?4�����?[x^*6�?��5��W�?j�q���?4GV~��?&���J�?�׻?~?�x
�|?w�x�z?&R���0x?�q��>sv?���'�t?�Ɵ�lXs?��|y�q?��D-ͭp?o��m�n?]���2�l?`�Eжj?w�E�h?i��Ig?6l��ge?!����c?�P�yb?a���)a?���_?m7�7M�]?�y�Cn�[?aU��N�Y?����W?�}���V?�f�v�T?ͮ{+S?�;P�<�Q?�bFx{P?F�̱��N?�"��L?�uoEb�J?ޏ�/��H?��	j�F?���V_]E?!����C?���B��B?�fh<A?a���@?$Di�=?_�Q�;?����9?{��8?H�Sȕz6?�h㈵�4?��A��3?����82?V��L�0?��+,�/?��H�}-?�y�Cn�+?��.��)?��v�'?[���i&?�h㈵�$?��A��#?����8"?C�8
!?��Z
H�?$Di�?rQ-"��?vk���?1]��a?�Nw�x�?�@fg�;?
�F�?��I���?���]/M?!>��@?��IӠh?�3�O?��!��
?T�qs*	?�9̗?���%?����}r?�Z�Qf?fL�g�?����?iUMu�>�_>Y1\�>�'eRC�>-C��6�>{���>�&�|��>���%�>
�F��>?�̔���>fL�g��>�����>iUMu�>�_>Y1\�>�'eRC�>T�qs*�>T�qs*�>�&�|��>�h㈵��>�h㈵��>?�̔���>?�̔���>�����>�����>�_>Y1\�>�_>Y1\�>T�qs*�>T�qs*�>T�qs*�>�h㈵��>�h㈵��>�h㈵��>�����>�����>�����>�����>T�qs*�>T�qs*�>T�qs*�>T�qs*�>T�qs*�>T�qs*�>����>����>����>����>����>����>����>����>���ư>��v@�@�?���������������ư����ư����ư������T�qs*ɾ����о�h㈵�Ծ�_>Y1\ݾ?�̔���T�qs*�fL�g��&�|�����IӠh������}r���!��
����]/M�6w�\����z���I���"��AA)Z�'��z��.�,am���2��AA)Z�7�m7�7M�=���מYB�#-��#�F��@��_�K�{�V���P��T�]T�n�HJzX��N��C]��iP4`a�/�r�]�d��*5{�h���h:;l���_#Ip�[�[!��r�y:W��u�ӄ�'c|x��b*���{����)��ť*m��d�
1^��j�@+0d��^�c@�z����辜����h�
�����$��܍��-��쏿�M��R~R�ӑ���r����8GW��C=}�𓿸��E�n��t	4ؔ��QcB�%���sE)!X��t�Oqx��&����}���&�f����̒5���;���ܔ��M�»\��"�� >���F�xxҒ����������9?�q��75�|΍��Y�b+h��v��=Ԇ��-c}������%�}��R{m�t�L4H�S�e�T�qs*�>_�vj.7h?i�
��ny?D�;��)�?���:8؋?ސFN��?��c?��?�'�XQ��?� %̴�?4-�2�?:vP��?u�b�T4�?AgҦ��?��jQ�?r�
��?���1ZG�?{���`IJ?��֥F�? ~�{�ڵ?7�����?�X�|^�?�S���\�?h+�m��?�˸���?�\�gA(�?/�u�;O�?w��׹i�?�&M��y�?��v�ӂ�?��)r��?�{c��?���>��?�5�l��?�ݳ���?�ݮ���?��mnL�?��wF[��?�j+����?=����?;S��.�?�"��)��?*��g\�?c�~�x��?��Z}u�?�@�)V
�?��Ӹ7��?3Mg'��?46<�R�?bJ$��(�?��`�>�?¢"N'��?��:��?��f���?v��2SZ�?}=_�\6�?CqǛ��?�+I���?oI����?,�j���?�o�>;`�?�%�<��?)x
�R�?��:��?���XG�?V�j-���?q8�9@�?]��u��?c'��>�?�z0)>��?"�[='=�?��-s��?���,5�?.rOWw��?���p<�?��A���?���I��?Ih˹W�?W�����?-?p�'�?Y"��g�?���ZӼ�?}	^�?"ߥ�%c�?~U.T���?�ZC���?8�{�5Z�?��2R��?�oa�x��?�c�ZB�?IH�m���?˄_����?2���
�?��fH�?B�!�}�?>�����?��8��?�]i���?��J�?�#~�.�?�X��C�?�&OYMW�?)�'�$i�?ё\�Cz�?�_�Nj�?�����?eS���?/��C��?TUh ���?l%t����?9ӄ�'��?��a�1��?^f�(��?�����?�Wy��?հ����?���q��?���V��?��-���?�^��W��?JD�Ac�?�%TpxA�?��*ø�?�(�'��?�蹅���?��[;Q��?�B�ʠZ�?0.s�?�)���?�����?HP�sW�?������?)��q��?8>[��?�噗C�?���^�?ɐc���?Ϡ���?��M�B�?ܽ�'G�?b�c��?Ot]��y�?	À%W1�?G�����?��-</��?+�ެA�?yu����?O�z1���?f��9�?�^}<���?��A�<��?��Z�!�?���?�X32�]�?��/��?
�n���?ILP÷0�?�\����?��7��d�?7���?`"ĕ�?�_=�[-�?��z��?N~�N�Z�?�]~��?���S���?d�3�%�?��Za�?��3�ތ�?(�r�w��?�"�-��?r�#D�?���1ZG�?��[z�?�X"���?/kb����?��x�&�?
q���h�?=�U����?�#�����?��+�F<�?B'����?��v1��?�6�4D�?E�<�\�?�Ov3��?|�ʄ_��?(-\Va3�?0H�����?7�h����?��)��F�?�y0H��?��E���?��ݓ���?��^�?_B�D�?׿�3�?M�(#.�?�E�n�1�?#��fF?�?#K�X�U�?�u7Ou�?�#��:�?ʌ��^��?y#���?�F<�͌�?|��8G�?�-:Yj��?�1��l�?�N�o+�?�n�e���?��<,Բ?�ƒf׽�?�ꫫ��?HP�s�?�H���?L��O�Ϋ?„Ѭl�?�7���?�鷯�?u/3l��?Z�c!:�?~6rݔ�?
������?w�$��?j��h�
�?�2�Pl�?jin���?����L�?Su�l���?���[��?ߋ/�ㅔ?�9�!�?R~R�ӑ?�&�5��?��n���?줾,�Ԍ?;��]؊?�����?N&n�@�?�����?�<�- �?+�����?�� �rh�?��#0�?%u�~?�~�x�{?���z?�$��,x?͓k
dvv?�L��~�t?�8d�bs?L5��r?e�fb�p?��^o?��9D�l?ɑ���j?�����h?�j��g?obHN&ne?��q��c?2: 	�vb?���V%a?31]��_?�� @��]?��	L�u[?�q4GV~Y?x���ĬW?�l���U?	��
LnT?#�=�R?�*�3�Q?����MbP?�OqN?�bc^GL?���GJ?(�XQ�iH?>+N�F?��$xCE?t|�8c�C?����8B?_����@?V�Dׅ??ʩ�ajK=?�'eRC;?�W�\9?�9̗7?�N^�5?�=Զa4?�d3?��+ٱ1?�_��s0?F�̱��.?�ص�ݒ,?��ฌ�*?àL���(?�&�|�'?]�E�~%?�u��
$?��I���"?��L�n!?!>��@ ?����%?�3�O?-C��6?�4�;�?�Nw�x�?]�E�~?
�F�?��I���?���]/M?!>��@?��IӠh?�3�O?��!��
?�4�;�?�&�|�?]�E�~?����}r??�̔��?fL�g�?����?iUMu�>�_>Y1\�>�'eRC�>T�qs*�>{���>���%�>�h㈵��>
�F��>?�̔���>�����>iUMu�>�_>Y1\�>�'eRC�>�'eRC�>T�qs*�>�&�|��>�h㈵��>�h㈵��>?�̔���>?�̔���>�����>�����>�_>Y1\�>�_>Y1\�>T�qs*�>T�qs*�>T�qs*�>�h㈵��>�h㈵��>�h㈵��>�����>�����>�����>�����>T�qs*�>T�qs*�>T�qs*�>T�qs*�>T�qs*�>����>����>����>����>����>����>����>����>����>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>���ư>��v@�@�?���ư>���ư>����>����>�����>�h㈵��>�����>�&�|��>fL�g��>T�qs*�>fL�g�?T�qs*	?fL�g�?���W�?��L�n!?{��(?��ӹ��0?��֦��6?�#�>?�h㈵�D?��k�6L?�}�֤�R?oӟ�HY?��ډ�`?�`"�e?>?�ml?���sr?oG8-x�w?�Ws�`�~?sI�v|�?��tp��?ŏ1w-!�??q���?�Qԙ{H�?�z����?Qi�?�K���?�!��3��?�YI+���?��v��?��հ߷?ŠS��Y�?�M�»�?�ʢ����?���W��?�-���?�8'0��?!˂�?��?1�t����?Q�v0b��?)�ahur�?w-!�l�?
��۟��?b���e�?�B����?5A�}��?�b�0��?���)r�?�{�?mT�?P�>�B�?��?Q�0�?N�M�g�?S�F;��?鷯���?��l��?�ei��r�?�K�1�=�?o��o��?�A�F��?]ݱ�&��?
e��k]�?{��&3�?\!���?�0���?=�u�'�?5'/2��?u�]�J�?�c�~�?�vۅ�:�?���%��?Ps�"�?%�pt�.�?S�'��Z�?����u�?���B��?R*�	�~�?UގpZp�?��;W�?hyܝ5�?�qS
�?�)�:�?�}9�]��?KO�\�?8���?=�- ��?F&��HR�?S!���?��V�t�?����W��?$H���x�?���m�?�H/j�k�?%�I(}�?+k��qQ�?R�‚��?��=�?�Z��x�?�z�<d��?W#��?^��a�Q�?35	ސ��?#N'���?��ip��?�ׂ��?�*�WY[�?��-���?\��AA)�?�}V���?�h���>�?�@gҦ��?cz���?�N[#�q�?���G�?�`�,�?��l#�?*��.��?��Z�?��ӹ���?u:�����?*��g\�?�{����?�O�Ȓ�?��N�?r4GV~�?�����?C;�Y���?� x|{��?ū�m���?B@��
�?��Y����?���]i�?��߽�?{h+�m�?ZK�)�?������?��yq��?�q�߅��?V�6���?����?�/�?�(����?�|�ݮ��?z6�>W[�?4`�_?�?��ّ�;�?�\��J�?�~�~�d�?�K���?�����?T�YO��?�8�~߿�?Ɖ�v�?衶
� �?�ɩ�aj�? 
fL��?f/�N[#�?/�
Ҍ�?�P�n��?-x�W�f�?gE�D��?�8�t�y�?H����p�?�����?z�}�֤�?�[v�ت?�Y�X�?E�<�\�?*�"��?���Σ�?�j���?�����I�?�\�	��?���/�Ƥ?`��s�?=c_��`�?m�)嵢?����?\����o�?�B���Π?�5�D.�?�m�(�?�ʄ_��?X���<��?Û5x_��?ND��~�?�`�p�?��w�Go�?���pz�?�ׁsF��?��.Q��?HR����?8�0��?��
0�?�E&��H�?�A%�c\�?�
�7k�?�Q�y9�?QO�?��?����?�\5��?�p�Qe�?���а�?�����?���j�?%u�~?���mz?���'*v?����b)r?�}�Az�l?NA~6r�d?L�'��Z?�pY��G?�'eRC+����2#R�O!W�Y`���v�ӂg�2�%�n�~p>u�r��l���u�p��-y��a��A|��g@�5����[��\:�<c_��8h�������6ㄿ˟o���ܚt["����O�s'��u?� ?�����6���x���N̊�)�[Z
���.Ȗ��2��73��pʌ�����O����|���m���"��6׆�q��c�:⮎������َ�צ���}?q�����d����n�(ߎ�*�Z^���������;�D��<����,G�@�����i�:���8�	�ʌ��'��Q����L�Nϋ�d���^D��5{���������>�Q�y���?��wԈ��{h+����ݯ|��T� �!dž�p(|���5&�\R��<�$���{Nz�ڃ�7l[�� ����g�ej��e�X���幾	����@��_��
��t��c�
1~�	�=b�|�_��W�{����z��UIddy�V�F�?x�1� O!w�����=v�u;�ʃ�t�=�u��s���F��r���m3�q�C�Y���p����p���7h�>n�����l��A�L��j�
��O�mi�%��ID�g���ٕf��BBe���l�%�c���C���b��n��\�a���ډ�`��4a��_��=\r�)]��W�\T[�܂����Y�����W�����eV�~�*O �T��͋S�s�m�B<R�ȗP��Q�P����O�m7�7M�M������K��I�%r�I���v�G�mU�YF�����D���֪]C�/n��B�����@��E�n�1?���N=�Oʤ�6;�f.py�9�X�|[�T7�&:�,B�5���Z�a/4�d?��H�2���L�n1�3��/0�����%.�M�n�+�vk���)�{��(�[���i&����'�$���b�D#�A�
��!���t�i� ��mO�����ص�ݒ����y��4�;���Nw�x���@fg�;�a2U0*����מY�C�8
�iUMu��_>Y1\
��'eRC�T�qs*	��9̗����%�����}r�?�̔������]/M�!>��@���IӠh���3�O��-C��6��{�����&�|����h㈵��
�F��fL�g������iUMuᄋ_>Y1\��'eRC�T�qs*龢&�|���h㈵���h㈵��?�̔��⾍���ྍ���ྷ_>Y1\ݾ�_>Y1\ݾT�qs*پT�qs*پT�qs*پ�h㈵�Ծ�h㈵�Ծ����о����о����о����оT�qs*ɾT�qs*ɾT�qs*ɾT�qs*ɾT�qs*ɾ�������������������������������������������ư����ư����ư����ư����ư����ư����ư����ư����ư����ư����ư����ư����ư����ư����ư����ư�����������������������������������������������=y@�@�?c�t�2��?�Ć��"�?��a�}�?��s�N��?�"�*��?X�if�=�?�@�Rj�?)��!i��?�夃��?bBԖ���?�-(;��?�⢤Q�?
4���?�dyp��?"�s	��?6d�
ߺ?����j�?���"j�?����7s��B���r!��(��&��Z������[�ݐ��?�	�N2�?.
l�%�?jk�L��?�F���F�?���"��?�o�>�_�?ޚ��E�?��R���?U�y�B�?s�̅�?xʴG�%�?PJz9�?34���?yD��P�?
ZA�x�?&B�J��?h���?^�[04�?��Uۨ��?��c�*�?��v��?�UQ���?`&�-[��?6�s����?�^��[��?,���f�?x�r��?��/,��?�.`4�/�?�s��Ao�?9��κ?�?��ގ�?b�E�Ϋ?&����?��ޚ?���443�?$Ѡ�9g�?l��%��?=y@�@�?I���H?���X�P?�9��R?u�M�ٷB�xh�VDY���:�t�	�z5��x��P�蝞t��x�,(>�cyb�q?P�.���?t��eW�?n��ɨ~�?�,�qb��?o��?	,��K��?���;�?���B��?�>ն�?�?uO��m
�?,�2{M��?I��/���?=3���?AN��#��?�#����?�Ϧ����?�Jm���?�#����?K�2^ʋ�?D�
>�?�=vYD��?��E��?"��S;�?X&����?����ܨ�??��8��?��^�
C�?����?fu>���?��X�Q��?(��1
�?s1a��
�?��0p���?����U��?������?B��&��?�����?%�FT,'�?���@�,�?Q%lm+�?yæc߻?|_�
�ܴ?�j[����?��Z��G�?��o��?�%Gb��?�+���*�?����?��M��?R?--Dv?AjG�m?=y@�@�?o�(
���?����P��?D��\��?c�n��?C���ι�?7�Ef���?b�fSd�?e�gc�?�	#6�?�i���?[z4Փ��?H���?�k�̨�?������?��O�?�yK��?����`�?�в���?��
����?�Fjv�?mx�l�7�?�}>%B�?|zIk��?��/���?���P�?#�����?��2�¶�?����G�?.�
2	�?NB+(�,�?t4����?*e�}\��?�c��X%�?pa���5�?��0�؇?^�>Ԗ/y?F�P�Q%D?ҏ"r��N5������%�9���\�C�r��Ni��w�����Ԃ���x��������^�ϒ�i+�A�6��[	чR��Be�艿�%(U
���f��C����
*�`�{��4349u�8i��I�o��Y��s`g�94H�`����sX�n�j_��Q�s�D\�H�����+A����7����0�M�w@��@�?��H�}=?����MbP?׆�q�&T?��_�LU?��_�LU?�kC�8S?��מYR?C�8
Q?~t��gyN?���3.L?t^c���J?t^c���J?�=\r�)M?�=\r�)M?
�x#��O?�=\r�)M?�=\r�)M?�=\r�)M?~t��gyN?C�8
Q?��מYR?�N^�U?(�XQ�iX?1�߄B\?�n��S]?겘�|\[?����W?HP�s�R?��מYR?�kC�8S?1�߄B\?V�F�?x?7�X�O�?�⪲?t�3�Ϋ?x(
�<�?�*����?�P�f��?�&†�W�?n�2d��?�|a2U�?��SW�?�#����?��e�I�?���%���?Q1�߄B�?��:��?����%�?���v��?b��h㈕?��d�`T�?O;�5Y��?xE��?£�#��?���m��?�*5{�x?�5�;N�q?����g?����Mb`?�N^�U?ŏ1w-!O?kH�c�CG?�R\U�]A?K�8���<?�M���P4?���W�(?iUMu?M�w@��@�?K�8���?���2��+?���|	5?D��<��??��g�ejB?1�0&��D?ޏ�/��H?Y�+���N?U���N@S?>+N�V?|��8G]?���Wb?\�b��g?:̗`m?�V�Sbr?�D���Jy?|���ׅ?]�z�Ε?��ฌ��?Dl�p��?�����?�]���?`[?�gͯ?#���R�?��V*��?�IbI���?�l��B�?f���i�?2�g�o�?�9τ&�?��P��C�?a�ri�«?1'h��'�?�� v�Й?!���'*�?%u�~?�:8؛r?���ce?�E'K��[?x� #��Q?D��<��??iUMu�>�&�|��>�����>T�qs*�>T�qs*�>M�w@��@�?���3.,?��6�4DE?U2Tq�V?Z�rL�o?��#0�?H�ξ� �?VҊo(|�?�G�?��?ӆ����?t	����?攀���?Ku/3l�?5�|�ݮ�?��ǚ��?��ۻ�?e��`�? (��{Գ?F�žv��?v��^
�?攀���?���q�?Ӿ���?�j�#�?ǟ�lXS�?��A{��?�4�($y?�#���Er?0��!�j?#��d?O!W�Y`?�E'K��[?'��b
W?�+���T?O!W�YP?��IӠhN?��ù�I?kׄ�ƠC?a���@?i;���.8?JΉ=��5?C�8
1?���W�(?K�8���?��מY? r@@z@�?333333�?�MbX9�?�v��/�?��P��d�?�K�K�1�?��Cl�p�?MLb���?o*Ral��?�z3j�J�?A	]��?���rf�?'�;�?�D@@�@�?�=p��?�>-q���?Y�����?tqD���?�H����?�`�8��?d;!l_��?�h#��?�g�^�}�?�_۲n�?To
l�`�?�
g�AS�?��j�F�?��S�;�?8�R�X0�?f�2�}&�?�q5��?ˉ��?2eu��?̦�)��?u`��x�?f��f��?�"S��?�Qa�=��?@d��&��?��?
��?Ӧ���?������?�ܦˤ��?
��Ur�?E�3�?�ay���?yzB��?���?��v��#�?�[]��,�?� �|7�?�Y�a*B�?�T�N�?nV��Z�?�>O�hh�?M����v�?7����?!N��ו�?
B`���?#���?�qd���?6�}����?��S�`��?R��H�?	u
��?B��s�?,�O�"�?KfHW�-�?�2�9�?���E�?��E�Q�?RȾ�G^�?UΈk�?:i+@%x�?��r�x��?�ѐ���?ᵍ7��?�]q���?� +?��?G�ז���?��][���?��<���?WE���?�L���?R�zձ�?l�}'�?��pz7�?ocN�G�?jZ9�X�?�!��h�?�0;rAy�?�
"��?�؎�,��?{�\@`��?�g�����?op�=��?�x����?
�G���?HJ����?t�ڃ��?��9�(�?9��?;�?�\�M�?"�EyI`�?1��r�?��*�˅�?�8;����?o�
���?��74��?!�aF��?+#�rr��?p>���? �e�?#�+� �?���߲3�?>�=zG�?uEV[�?�yeIFo�?���I��?�ot�_��?�z隇��?&���?q|���?=w'De��?[�2��?��ðG�?6��%�?埕�c:�?��O�?��U�c�?��4ox�?�@�5��?���K��?��|��?cD�����?N)У���?��1����?	�{N�
�?E�(��?��½�4�?,6��I�?O��S_�?icx.t�?
p��Z��?�F^R���?gT�8����?����>�?R/t���?�-���?+�
��?8�p\c3�?���H�?,l�*^�?l��zZs�?��WE���?8�+7��?�Za�^��?1(p>��?uE!��?B>Kh�?����?Y1;�?uC�/m3�?���H�?���6^�?��̉fs�?m�4����?L��y��?��H�L��?�Ol���?8&���?���
�?X���T�?�`e���?[\B�2�?ъ5}�G�?>?�]�?l�X�Dr�?Is;ff��?��շ���?�qȂ���?����?\�U���?Y�?���?���W��?��Vt��?Я1آ/�?�FS�D�?�3M�pY�?��;�Ln�?T�Eu!��?E�y�?	Uů���?���p��?F�v&�?ME���?X}&w��?V�*��?"t
ѥ(�?��6�/=�?��̰Q�?�wd�(f�?���z�?�
m���?�M�W��?�
$����?����?<6]�-�?��
a�?H��'��?3#�ڨ�?:��0�?�PD��D�?ź�S�X�?6]�;�l�?���&���?BV���?����R��?4�����?������?8��L��?1n�+��?�bA�
�?6���Q�?�S��1�?��5�HE�?c05��X�?���?l�?o�GM`�?)�g���?֑�dݥ�?r�$F	��?�}�(�?ʍ�N;�?yN�PA�?H�:�?{(��&�?��fv+�?�+��=�?儦x�P�?�h�Vc�?��~v�?�����?^�t�0��?��%���?ga
*��?����?]����?ו";��?�D�{	�?f�5��?;2���-�?*�Nx�?�?y��q�Q�?�D@@�@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�D@@�@�?�Q�d�j�?֕K���?�]��Om�?9�E;4�?���Lwl�??��I�?�m�E�i�?�ے�Y�?�{N�f�?������?O	e�?E�,���?ZhB�}e�?r�
��?HXЋEi�?׬mi��?�d�K\q�?�؍F��?J@�~�?|aGG�?�ze���?��^SR�?�\����?����9�?�������?y���B]�?��n���?�B���?�aB��?PJz��?�?]rU�?�pc���?��_Б�?uĥS�2�?��u(���?1/U�6��?�%h�PB�?�L����?I��67��?�t���>�?z�$��?7����?����Z�?c:���?��[�(�?��요�?��""��?��R�u�?�/�0!��? �u7pc�?N-Ϲ��?gWK�\�?!�'��?���J�a�?5��o���?!���q�?�?���?�󶩌�?Sc:[��?��ؑ��?<�9.�G�?F��vI��?WQ�2{�?��j�?*���o�?1�� ��?P�1;��?>��ڴF�?�;����?9�8����?���B�?q���О�?y�����?��q��a�?��8����?����3�?�	l����?q���?=[�iڇ�?�,�`��?���.{�?^��H��?y�;Òz�?�_C��?��9���?�*S��?� �����?��F,�?�-��%��?�^/��R�?�O�Z���?+�)4���?�iܛ�?'�Tw�{�?�K��T��?�W�,�?�Im�eM�?H�����?��:���?�� 3aE�?Q
��'��?{�ȱ��?AȢ~Qa�?S���?���	`1�?�D)ƞ�?/�Dx��?+iT��?�C��w��?���Dv�?He��9��?�4eDu�?�th&R��?��7�P��?�eq/
�?B�7yۖ�?��#E&�?����[��?ugXRM�?*�P�?���x~�?�{u�;�?D�yi�q�?�t�%Q��?w�%[���?
`�1JD�?��{N��?r�c��?�Eg�=�?�^�C��?�!C����?N�հ[�?K1��¸?T6ͷ-�?�!��,��?��V��?=p�����?�:��?�L�ĉu�?M��%;�?�@��v�?�a�<��?}�Aߊ��?Kv	�&
�?��w����?=޻8�*�?1
�㉽�?:�~J�R�?x��|��?�P�h��?�e"[L"�?�i�T��?�?Ʈ?���p�
�?�xv;�Y�?�+�M��?��f��?����W�?�24�$��?��,���?Y���y�?,�uh�?�����L�?�.��?��a�.�?�.�
֤�?�Ơ�3�?v]�BȚ�?���?�7�F��?���#�?�`�����?�B��@7�?F���Ţ?P��	�V�?�B�<�?��:{��??^@?�?�$mx��?_��%R�?I���?=h��(�?�㜞�q�?���7뾝?�\kR~�?��7f�?�����?J�E��?��ȳG�?���$��?�7�ǠM�?�Ew9��?��{�P*�?M�dcҝ�?�0�X��?{uDt���?�@�?�Rh�[��?ie��?Hx��?0�˾D�?���G��?��c�:�?^\�5v˒?_�
Ā_�?ѥ���? �5S)��?ߐ�̩*�?U"���Ȑ?&�%K�h�?�/=�$�?
Xݰ�_�?�_ ��?�A��??�\�T�?Bܬ,���?Gq�V�? P��m�?�!�&ӊ?��VG
<�?��.�v��?��8V�?lM%ɔ��?'���?���k�{�?��9���?ɀ䄦x�?�Uꂏ��?�^�b��?��u
�?�f�|��?A��#�?4b��k��?�. ��G�?�j���݂?5v�?�����?�A�g֭�?�U�4M�?8�&��?�Iu葒�?[D@y@�?�`����?qA����?�yI1z�?��>�q�?�Hni�?����a�?�~�Z�?�q��R�?s�j<dL�?;��FF�?f ���@�?<�H��;�?
��|,7�?Y��R3�?��[0�?���-�?��Hh�+�?��)^~*�?��o*�?�T�X*�?��
i+�?&���A-�?����/�?wn\3�?����7�?L�E��<�?�86��B�?����I�?�\IQ�?8:E�Y�?����Ic�?�Vڹ�m�?7���x�?�P�i��?�y~�ؑ�?��6���?����b��?��Q��?E(�a��?�x`|���?�JF���?l��P��?�-M|{�?ABh-�?��fcgB�?O��l�X�?��=ko�?k�X,��?�,�Wc��?J�n��?�'��?~�G���?~��j��?�Iz���?䃞ͪ�?1i�e	.�?���<�?��lz�K�?�*�Z�?��c��i�?�e��wy�?��`'��?6�y����?h�>����?&�P��?%�\MC��?y����?5����?�Q�@/��?2P!p�
�?I/(���?U�F�+�?�D��R;�?��hkK�?�tu�b[�?�p\�1k�?��q%�z�?s��7��?Ѝ]`^��?���O>��?ز��ζ�?I/���?o�b����?exR��?�W��R��?�ۙ���?ȗP���?��E_�?���K�?��@ڜ&�?�ik�L0�?[D@y@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?[D@y@�?gz��5�?��V��?���A)�?�3�s���?�G��:�?&`���?�5ˠI�?q�­/�?�Q�uV�?�8�B��?]��b�?w�K�#�?����o�?z���?���R�~�?�@N��?� >��?˒J���?*�t����?�?H��0�?>�fƑ��?N��K�?��l ��?C�@Z�k�?�W[��?��7��?���(&�?wMiy���?@��SU�?�18R��?�ű&���?���_(�?�����?��7���?�S/�R�?�_g�p_�?��N?��?�Sպ��?;@�Q�?�����?�L��? k#d�?����L��?���*.�?T��"���?n�F��?d�&��x�?^%H:=��?H<�\Dg�?o����?����c�?�t��k��?�i�]n�?��ٯ��?�'1BW��?�cfvH�?�Z��w��?�Z��B�?]�y�a��?E&C{�?P3榴�?1����~�?_� ��?��+*E�?���%x�?2�Щ��?���:�?u�w=��?D���?�/bD��?��歙�?�ʈ��?�k�w�?]�A�Պ�?H�c�?iv8��?%��m�@�?%����?��<�{�?��� �?
=9u���?t�+Z�u�?@�c��&�?���c��?Kk��?e7T�S�?l���?@W�\I��?x7��	��?���:�r�?��8\PD�?�D@@�@�?uTڇal�?%�� �^�?��t�Q�?
-�*
E�?�Oێ�8�?��`�,�?J��!�?J��D�?�R��
�?�E�'��?��V�/��?5*
�R��?����;��?��W���?[rÌ|��?�"����?�O= ��?�ޥB��?"v}QH��?��V5��?���
��?
#IR���?�t��?1wN/��?��X���?����?F��<��?�w�Ir��?�G����?a?����?�x�b�?�YJ�?�G���?��#@"�?���N.�?�j�pX;�?�s��.I�?�ϱ�W�?:�!1g�?�'\Uw�?�\h�6��?N1A�Й�?���t ��?��S!��?l������?W<y�'��?�~�%��?��A��?�Ie�?Ec��l�?eN~($+�?��$7�?ୠ'mC�?TvU�O�?�~��\�?���>�i�?�*�7w�?hO�˄�?��Y���?I"����?��/���?�7G�q��?�q��(��?�-</��?��_�5��?��'����?�%#�	�?�)Ms��?H�]��(�?�=]ݱ8�?{�o��H�?�th&RY�?�Wɦ�i�?��/�z�?)�4t��?�|��v��?��؝��?�
��?j��XT��?�
ơ���?�E�Վ��?x��Z�?$���D�?-$��K)�?��L%n;�?�7���M�?^P[�`�?��?Zsr�?>Xk���?"�u���?mQ��?K�����?�����?&�����?@v���?��	�?kJ;�?�5��v/�?����B�?'y�V�?!�C�i�?,���|�?6Dp���?-]��?�Z1T���?�Z�S��?��1���?������?����?W
�U�?u�^+.�?�ۯL	B�?��+Q�U�?��`��i�?EOgz�}�?��‘�?Q|�����?z_�S���?�>����?	%�5���?�b���?��y�	�?AF����?JUf�2�?R���F�?�/Z�?�攺Cn�?�Lh�X��?��'m��?�z���?C<����?.z����? ��c��?�)"��?���t��?�1��"�?*�V��6�?��8��J�?B�6
�^�?P�s�r�?�Se�͆�?ڍ����?%�����?��C-��?�0r?u�?e��Q�?!�(��?W�J��?=e��%�?	LJ4�9�?�΁iAM�?��u�`�?�7$�t�?[�;J��?�f��?xE�~��?GS���?&�)���?u�E��?�v5ԃ��?����?���5Q$�?���7�?Q��B�J�?�U[�>^�?먬�zq�?_�d���?�Z�ԗ�?�DmU�?E�4��?�6��?���
�?O+\����?P5u�	�?bE���?2�c\�/�?J��QXB�?VF��U�?�P|��g�?&���dz�?��J���?Ą���?8ޙ���?hD�z�?Q����?X��;�?x��	���?'���
�?M�F� �?>�;p)2�?�F�.ED�?4$�TV�?u?�Vh�?Wm�Kz�?�3��?v�k�
��?<��ۯ�?i���?���O�?M*���?��1���?#����?+���?�2�+�?`���f<�?��M�?XU�_�?��r:p�?��me��?(&�����?��dő��?g�����?&{\��?X,�k�?�[`�B�?�[��?�eW1��?��'t�?a�Q�*�?}C���:�?�ǟ&K�?"1�7�[�?N.l�?���W|�?ѵiK���?��iܜ�?�
8	��?�n'�'��?.`�7�?6|f�9�?f'�-�?��o$��?�i���?�� ��?�
k,�?l��<�?n䑪�K�?1��`B[�?�����j�?�t�4z�?��
���?�D@@�@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�D@@�@�?"�3UI�?��-7P�?��t�?@���^�?:a���?GZ�Rj�?b:�jX�?���5t�?�JP��?�(��}�?o�Tʄ�?�1�W܇�?P�wb�
�?�R�1��?���mn�?�q�{���?�$��,�?�^�Ƕ�?SL�sB�?@�����?�ք\�?�]_����?xN��r|�?�]ԓ��?О��R��?���+�7�?	@�Vz��?x��D�f�?c�{�'�?�ý*���?��s�:�?���Ȼ��?�>��z�?�rE�?��d/��?����8��?֮�Z��?7,mq�?������?2�N� �?Y)-�}�?<xR���?D ,��@�?|�?mT��?.O����?�`�h�}�?��"p=��?W;�_�?v�^0���?��J�TN�?��L���?�$a:H�?�dc��?���pJM�?�3���?��=$]�?*�wf���?�&<�fw�?Us�P�?�[󺰛�?b�3�z1�?_��ۢ��?8TBfd�?xR���?�JNy�?�?u=�Y��?�li���?�~�ņ�?9,<yb�?r`Ts��?.8��_�?��ބ)g�?�5`���?(b�(�?j�$Y��?�f�{^��?2�Ld�?�^���?����GH�?F�
1��?�M��I9�?p����?s(	��6�?�)��?���E)@�?���,��?����T�?��-���?�p
D�t�?�W���?��-vڞ�?
!5�7�?�����?��L��?�=J!�?�Bu1�e�?�"RӮ�?�P�*��?�k�M�?��nd���?�ˊvO��?xH��[�?��q����?q��)"�?bevL��?�KK���?ϲ��Sh�?�M����?b^
q(S�?�
 ���?�߷)K�?�"���?r㒺O�?$��<���?.m+I`�?�����?֊�
G|�?
�e�?%�ت,��?#և��:�?n���?/�Zq��?����\�?~�V�a�?�Ÿ���?�#�3*�?��2�	D�?���4��?���t��?�7RM�?B�1ks��?i�����?a��y�?7x��?jΰIU�?L��Oȵ??�k�>�?�� ���?�7�
�5�?�v"��?>L\�9�?&b[P)��?;c-x�I�?�e	!ֱ?��W;ie�?��[Ew��?֒
:��?�p��#�?g*W6{�?�-L2��?Tlq2�?�g8+�4�?�7D|�?dp9ȫ?)KB\�?e���m�?���n�ũ?�5��#�?c0w��?��	��?k���Q�?�R|��?��ds�.�?ne�?{��?��5���?1ݘ\��?�y�2L�?�%�;t��?>A����?�g��?�[��w)�?�B���?��~��F�?�l���٠?S�%�Ro�?#�h��?J$v�D�?W[wV�?$9h�۾�?���'�?��k�L�?4LL����?\�*���?Y���A�?;��:��?W,���?e5~]]�?�����×?�#T�!.�?��#��?���
�?�c�삕?�UL���?G�*?�w�?c��b���?�D�@/y�?�e�_���?
�]IU��?��E3��?�$��U��?�tf/�2�??�\�Ɛ?\�=�L]�??9��2�?�Vi�$�?���a�?�F>��?�|-�L�?�.H#4�?F���v��?���*׊?Sƅ$/�?�;��F��?uK5y�?�6��O�?M�����?X���k#�?��gݒ�?8�™��?f��Wf|�?fL�(P��?��s�?����?C���w�?�d�P��?�����?�f��?/,E��?)�!R6�?�)�Eˀ?�2�o�b�?�§�?�>l3?+��q~?��Z��}?��n#m�|?�{W��H|?�xS�{?�&��M�z?�4��~Gz?덜}̤y?[D@y@�?�*P�ό�?�su�Ӄ�? �h�{�?�	�j�r�?��u�ij�?����b�?4��F&[�?��+"T�?�Jx�M�?�q�C�G�?�_��A�?ĦB��<�?��q�8�?L�;u�4�?�c��1�?�'�5/�?�WB5-�?&Pii,�?I�X	�+�?�j�*,�?��r�-�?"��.�? ����1�?��,T'5�?�(P8y9�?6?�Ң>�?p���D�?f��_K�?�h>c6S�?z��N�[�?���>Be�?�v_ߘo�?X{�z�?l���?����?Y!�����?=�1�q��?!�����?�"K(u��?��|���?ž�p���?���1��?�­��?q��#/�?NE	~D�?Y�6�Z�?��R�q�?�8��?�79t��?1S��|��?Ԡ��2��?����?���?m��J��?V�nh� �?���/�?)�Ð�=�?�a��L�?:��[�?��Wg�j�?���fz�?m����?f��t��?�W�ީ�?⽓���?�vF!��?�#�Oa��?іs)���?pq;���?��HV�?�O&f��?_U�+�?�N�<�?���)L�?�J��\�?�,�k�?^
��{�?�9�1��?J��R��?�[��?h�ho��?��4<���?oc7\y��?������?�(xm���?~�E�g��?�J3k�?m����?�uH{��?	��'�?�g��0�?[D@y@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?[D@y@�?�<�J��?=%J�٢�?%P/��-�?�'���?�R��s?�?Ɖ�v�?bο�N�?�+k���?Z�<��Z�?�~>���?<�d�!g�?�%�:s�?)�t�?ƞ���?�D����?���
�?;Z0L��?c�q���?-�:����?�uȋ4�?���E}��?��8`�O�?V������?��)�o�?
W���?=�n7ڔ�?�'��)�?"p�w��?��ض�X�?�f�X���?J�PM��?�o���+�?�3��`��?�2+%��?m�Yg�?�P=�ae�?����?(Ql�?��N�V�?Z_�\��?�*��	�?;A0�:i�?-�΃?��?-��2�?�Bn+b��?�q�t�?7��*}�?�^�L{��?ۣ�^k�?n�]���?�e�w�g�?�G���?:� �q�?�7D��?�ތy���?sutq�?q�XD��?뎤(�E�?��-�'��?��?�}�?��iT;�?��>�?
-���?]#չ�#�?-�;�?|�?��Q����?��7`>�?���૧�?�J�aU�?Q�E��?�˽f�?1|#>���?�}�@��?�G�
��?-��?+�jNګ�?u+:UB�?��Xm��?��Z�}�?,]ɧ*!�?�$9&���?p���v�?����'�?#�2Y���?�قRr��?���
T�?�	����?6�a3]��?dÁ-��?�"�r�?��fD�?�D@@�@�?4��l�?��2J_�?�h{.R�?Et�9xE�?6��49�?�q&;p-�?�"�<7"�?׿���?C���
�?np\�?�?�FҨ���?R���?��ܕ���?�QoN��?=l����?�7��&��?lo�Z��?VN��n��?m�C�e��?���1B��?�����?Ìٱ��?���F��?��S���?lJh�,��?��Y�{��?u���?5�����?'X�N���?������?�7�h�?.��\�?Y���t�?�|�� �?tv�~�,�?D���9�?�� �uG�?%�GU�U�?-��2e�?	ĩ�3u�?�u�@��?lgJg��?bWI���?�ʙ�m��?简����?��(��?�	���?�(�<�?�l��G�?���Q��?���C)�?d׬�05�?�l�reA�?^���M�?�4�Z�?�����g�?�n$��t�?R��!`��?Pp����?<`G���?(!��I��?��W����?z��PX��?5�م0��?��J�<��?V���{��?��w��?<4�)��?aNCY%�?���mT5�?�L9W{E�?߱е�U�?S��LGf�?�x��v�?�Wd*���?�
���?�t`���?F�	���?�?�D��?{�艾��?A9]X��?�~�$�?�m���?���v�$�?L��6�?+�֊I�?�� Z[�?1^��m�?�֌-��?A�:����?;�t;^��?$Xf[��?P�8���?�V����?mQ���?a�&��?�����?tP�*�?E�E?=�?��P�P�?.)�c�?�b��Ew�?0�����?TK8��?xow�ñ�?��oZ��?�w����?9`W����?w��\�?Fa��?� 
�'�?)��-�;�?!�h��O�?4'�`c�?7*�Bw�?��*��?GX���?�4O	��?�/ ���?i7����?5
If���?��/���?L���?tqe��*�?ʜ��>�?	t�4S�?X�5
g�?+�x{�?������?�tHA"��?]��(��?x�X�,�?�>K�/�?%R�0�?}��;/�?��Y+�?�u�$/�?��tC�?����W�?���P�j�?�b��~�?����˒�?�񬬦�?
�͈��?X_U�_�?v��0�?��k���?�O��	�?�|���?91�?X��V�D�?0���X�?0�@�9l�?��]���?��7%j��?f����?�� {��?>RL��?�t��j�?����?1)08�?V9�U��?(SD�.�?����'B�?OT��dU�?AH�!�h�?a'��{�?�)��?0z4���?|c��?Gl���?(�d��?�ҏ~��?��ǵ��?�"��?��Vb&�?��A� 9�?�e�Q�K�?�L|^�?�V�q�?Ӥ�W���?krB2.��?��D#���?�$S
��?#V��t�?�Mq��?�s��?g��M�?��	}�?�ha�(�?O���:�?�2ԓ�L�?Ɏ�@�^�?��p�?��j뎂�?g��d��?Z�u�-��?M��"�?;Ȉ��?lE�8�? Õy��?�(�R��?ߝc���?O�W7!�?��H�2�?a�ܢ�C�?h��X(U�?��+_]f�?c����w�?P?�6���?,�繁�??�jѧ��?�țӗ��?�[��y�?��N�?+i�7�?&a��?#�_}v�? ��� �?���0�?7�[ A�?�Z��Q�?�����a�??�8Kr�?�!�8���?Q�3˒�?X���?�"�v��?=Ӯ� �?`��� �?�)9i�?�k[��?����?��>ȑ�?QJJ"�?$
�y�1�?�7�X�A�?U��Q�?	3��`�?���
p�?�ƶ�p�?�D@@�@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�D@@�@�?�%j�?����S�?j>|���?�ҕc�?�Nte�??�/o�?�&d��?�?o�y�?�=����?kt����?�FxZ	�?�jԦ��?Wl4��?F"4����?T��#�?9X�m��?���4�?��%��?ܐҮJ�?<6�r�?��o,�e�?+�ۖ���?Jí̅�?�Ӳ�!�?�:$��?s��eA�?f"�!g��?�N�q�?2�k�L�?/K�m;��?z�}��D�?H�y�!��?�n?K��?�\�^�'�?܌huQ��?2�n��?d��7�3�?���о��?xP`l���?_���]6�?���^��?%z���?YU�xFV�?����?exG!$&�?:�ۼ��?8Frc�?�-��u�?іs)���?�m��;c�?,������?���9�\�?�3����?b[P)�a�?l+r_9��?��sPWq�?vG�
��?*�AQ��?�9�?D��M��?��}�D�?��-���?w�J>w�?X7AH��?�fapIe�?��K�H��?��y����?��	�8�?��Bs���?����8��?�g���/�?)K!N/��?�S��`��?G6��EJ�?ts��ʯ�?ݨ�O��?�ͺ�f��?���$W��?{��h�?���V ��?:�^��X�?o�>���?Vȅ��U�?��χ_��?��[-$^�?���-���?Z㿂,r�?�y�gP�?��w��?r�c��$�?��ӂ��??|���R�?=�"���?9��U�?�-,n�U�?e��]��?,?6���?�)b8.�?0/]�?j���?T0t6.-�?��C<��?���+��?����O�?�CV��?2J�d$�?7= ����?����	�?�Z�9w}�?���91��?�$?$t�?�G+)=��?/�Ciw�?fl�X���?.�;a���?�O���?���q��?w!F��2�?�Ln� �?�v���]�?	��oy�?(�&�?� �b�?���ͣ�?o#��?��0@4�?�im�̂�?	W�v�պ?�kZ�.-�?�������?����?����NK�?rEs�r��?�s��P�?ʎl2Ӌ�?P�Z��?_��/js�?ð��S�?����h�?7����?,p���j�?�Iw�<�?��D�x�?,��z�?.��꒱?�v�$$�?��o1��?Y���N�?ω���ϯ?�C�@*�?�ΐ�C�?�hoS���?���ʬ?�����?~[�c�?Zd�,��?�Ww��?�R��`j�?��Aʨ?�e
��-�?S�o`Q��?�|���?\�ߒo�?���?"���%X�?HS��Ѥ? =MYN�?�~y�ZΣ?����Q�?�m��ע?2c�Va�?�h��8�?AU;yG|�?��� �?�����?�Ad
�9�?��)���?�c8�2�?͝O��?�9��B`�?8��c��?Tq��?>�c�@C�?�)ŗ�?�%���?W��mM�?_�u]��?.s�=�?<mK��{�?��
i�?' ��X�?:>Z�1̕?	�mWC�?@��Jཔ?��f��;�?6:��ż�?�[S�@�?W4�>Ȓ?����~R�?n�<ɩߑ?1�R5�o�?Y�l�t�?��-L�?dj�e0�?؉&�}��?���R�ώ?
�V:'�?�",2S�?�Π㛌?����?D�n�:�?�����?�.ک��?��&I�?�rJaZ��?�0��?�1Y�q{�?��1�?
�5k[Z�?5~�$υ?���\G�?>���„?��H�A�?��
s��Q
�.�H�?%ñт?��1\�?)�40�?����z�?s�f��?.p�佤�?��H)�=�?A��sѱ?!���x�~?/���-~?!��(s}?��O�|?ckϏ3|?9�� �]{?�s�۹�z?��n��z?[D@y@�?�,-]`�?�.�6O�?��"�I>�?p���-�?Nj;�W�?��KTo
�?z�g����?����?}�I���?�7}$���?��E$���?��T��?@�&1��?���v��?�],�ɗ�?��4F��?GkҎ���?x�vf�}�?#���v�?�SI��p�?��ϫk�?�Ϥ��g�?9�Kd�?n��b�?��N��`�?z����`�?epR�ha�?*�>W:c�?�ݕf�?(Z�z�i�?so�`�n�?���8�t�?'����{�?�R7��?U9Ī��?�]]>'��?��M��?@%��v��?B��R���?���Q���?�4�����?�K����?=���?s&�) �?_O��?S9qb�2�??��G�?�ԙ]�?���ׁs�?�" ���?�,�e���?��{p��?v�9����?�^����?E8���?�As���?��e� �?4ᰗ/�?hc���=�?����L�?�.�u�[�?H��'�j�?�V3�qz�?i�)���?�z����?8z%^ة�?c")��?x�dw���?u'+'��?D3
�W��?2����?�J-)�
�?n`�>��?S�A��*�?;~�`�:�?�y_K~J�?fs��Z�?����xi�?���P�x�?kV#���?6�X���?�<OU��?%���6��?4z=����?o�����?�?�Q��?�SK�e��?2�����?���3��?"pE�I�?J�AD�?[D@y@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?[D@y@�?�^���?�r��?3�$��?��pq���?}���?~�n�D��?v�A�k�?�rk��?xp�qr�?$1����?6�^�E�?uD��`��?<��"�?0�?۬��?	���?�0����?C̡�?�N݊�?̠�}��?:�&�H��?�rg&�?!H��b��?��
62�?>|��?/f2��L�?d@rBS��?����m�?��1�n�?�d*qۖ�?l#.�?C</O��?Tw��gb�?������?o�#6�<�?Ma���~�?��C;���?"��e��?��eo�\�?��P����?��/}��?KB\m^�?�10��?P�R��?YZ�\��?�侴��?��(i�Y�?b���?�>�$E?�?+9�|��?O��PN3�?HKi&���?�L.�5�?��'޻�?<1���E�?�Ru���?�H��b�?��O����?Hj�r[��?%N8C'�?���>��?[9 �Ad�?9E�G>�?C�aOZ�?�KP&��?��Ҩ�?�c*�_�?Ҋ�` ��?#�|��)�?�,[���?_��0��?����?��(��?�ȹ+}�?�� P&�?�!���?u2��a�?~~J[}��?�	��*J�?�Y��?�K/���?���.�?m�S��?ބ���?�jb��:�?�����?V����?/�T�Rl�?뽾��/�?�"#��?��d���?�sSV��?�D@@�@�?�܍p �?ޔ�>7��?_'�W���?�Q�+��?L��I��?l2���?�ja���?�_�-ڍ�?�:L�I~�?���Umo�?IEJPOa�?h%��S�?�"�tuG�?��i��;�?���1�?D��J'�?u�a&�?���m �?�*�1�?)\���?K]�c��?�Wò��?Y79׋��?�Ÿb��?��E5��?W�X���?
�!���?�^>@���?}p­P��?|����?�����?�a�Z=�?�n���?�i�,�?�
*X�"�?O	�+�?�����5�?��Z��@�?g���L�?d�:%Y�?Dl�p�f�?���t�?�s��̃�?P��|���?f�?��?z���V��?��HOO��?2t
����?�O
X��?
D��?�
��?��3@��?s�=� �?�s�+�?H��7�?��3oC�?.�9��O�?��?i\�?��H�h�?
�⸾u�?ұ���?��{��?�cfU:��?y��y6��?,���n��?�J	���?���?Z���r��?�����?G;n���?�(�a�?/z�J$�?_9�3�?�c�D�?��h�]T�?)M���d�?U�ru�?c2Ɇ=��?���3��?��Q��?>k闹�?�go��?������?
�*�O��?O
,.+�?���b)�?�` cI$�?��B�6�?����H�?�f��j[�?���n�?T�8(Ā�?o�ٛ��?:#���?�5�/���?��S5���?�2�j��?���`��?�
eM��?ޥ�zY�?�^��-�?�Į�A�?�8�HtU�?*��Pi�?D��A}�?��C��?���X��?�=M��?������?��_���?�e,U��?�7U�
�?ힸ�/�?EI�y�3�?=��SBH�?φx��\�?a
b�q�?��<��?*^]���?��_�Ư�?�����?���)z��?{
��a��?M>�_R�?���*K�?\c�K-�?v��SB�?�e��bW�??I�vxl�?=�d$���?P�����?��H4ܫ�?2�N���?�7��7�?.7{l�?�[��?���W��?Ǿ�+�?��L�^@�?�u��U�?�^.�j�?�y�-��?��Av��?ڍ����?�=���?v��R�?QQ���?7�\�?a.o/�?�6��w*�?��O��?�?�5U�?����Gj�?I7���?��	�Ȕ�?������?�O�?��?@y��v�?8&Ո��?�h›��? Ɣ��?Y�=/)�?�{�R>�?�A}hrS�?|��h�?9�Ţ}�?�mqK���?��cm���?�j4�ü�?�h���?��o^��?ձ)۰��?��n��?�)�n�%�?�$d:�?����<O�?:�^rd�?w���x�?��n���?���~V��?��8�	��?���?����W�?Z웠��?��ӄ	�?��`�?լ!�2�?�I��G�?�	L�u[�?�2�!�o�?[<�<7��?��ԉ��?A���Ҭ�?L����?ָ�1G�?�*jr�?�ܔv���?2T<��? 2��%�?��r�9�?�e ��M�?Q���a�?�터}u�?ɓbOT��?�[����?��4�?���E��?	�4�>�?�>+��?P]�o��?�+6���?s��q&�?r�?�9�?����DM�?*��`�?rŃ5�s�?�Y?&��?&��Y��?�Eig��?۪^]���?u��Ц�?�Ӂ���?-���?�C^��?q�$^�?��+2�?��^��D�?
bҥ�W�?5��~Gj�?=7�|�??��m��?��g�?狽_��?�͓���?���?iT�d�?�3���?)W���?=�M)�!�?u�4�?ň
F�?�D@@�@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�D@@�@�?��.n�?p5��G�?�xA#\q�?��3��?�0<q�?}ƍti�?'�(To�?P�,�)�?]�m�?��ihE�?��X�k�?K�C��?�����l�?���?�*4q�?�S���?����y�?:3��?�?�7o��?����\�?���ɚ�?���/�&�?:��`��?;�l`�C�?���8���?4w>Mg�?%Ů���?�U���?��B*�?F����?oB�H�_�?�����?��ps��?�q*��=�?�0��(��?����
�?f�Q��W�?9.R���?P�
)��?�]�T�T�?���?U��uM�?�P�Dp�?i�(���?��� >�?"�ʂ��?g!K0��?��ؙ��?�˃.�?iF�bx�?��3I���?�d�q�?t9�t���?��av�?�D?���?RA*&��?��bN
�?%
g����?��-ѓ1�?I	E���?�q�[�?5��Ѐ��?�>1>��?�,�}H+�?{N8�&��?��|p%��?��%u�?���E�j�?��V����?��`�?�|�f�?AvF���?i�4@� �?#�h����?1�Z{���?��.��T�?�r$�~��?v�bk�3�?(�pM��?��3���?Z���O��?M�v/�?��D1��?�5Qt��?�U�-���?��ͶG-�?�,(����?�r�	�H�?=�3Z��?�,sn�?
�w�f�?{�
i���?Ҏ�oN:�?`F�]���?!=�>��?�+�oZ6�?7���?��ˢ��?E7��?��W�u�?�*G���?��̹-�?��턏�?T)�
��?&#�4^�?]�����?N��(!;�?��hf���?e��Ѣ%�?��sɟ�?� B�?�s1���?��p�� �?���xN��?���>�0�?�cr�?Vb�oK�?zM�B��?��vpq�?��ߙ��?���d�?��<�?�a� ���?�4�����?M�3�:�?J�6dn��?����bҼ?�Ì[�$�?8����z�?^W��=պ?����3�?���v���?�*����?afe�? ;�@ҷ?!1���B�?t�6>?�/��N.�?���#�?��Z�&�?�z�w���?��Z�+�?Ԓ��x��?WL| ?<�?� H�Ȳ?�ҥ=-X�?�^��3�?���~�?M*���?D������?�TX�K�?�K���ԯ?f�q~�?�Ud�\�?��"y[��?5d�-S��?ϤꪂI�?镙oР�?qƓQ#��?�L|b[�?��rv��?�XG%�?���#���?�0P���?A��Eo�?�C#�+�?W��)a\�?�yY��ץ?�nl�kV�?@��ؤ?j_���\�?��+sg�?2P�7�n�?2�\�*��?�j�s,��?��N]��?2�wS��?�m���K�?�0�Q4�?f��%炠?���I�!�?G&\����?�x���͞?�Fu�?���Vi�?�E|'f��?�@���?Q�o��q�?�|G��њ?y�&q5�?����?�r
��?P@�Өv�?��6��?L��P&^�?��k�֖?iv�?�R�?�����ѕ?^4���S�?Ĵ-��ؔ?؞��`�?�ڗ��?�Ƕ�y�?�N�AW	�?�͌~4��?/!f�1�?�Bݓɑ?��)�c�?���k��?�nPڟ�?�>�<A�?5��ɏ?��:�?"��e�?�Y��鸍?%�B��?�z�f�l�?���ő?�:@I�/�?�
��?�:0��?Ԇ�o�?b�M�n�?$-S�QV�?�x s·?��&�I�?2�>Ȇ?{�iX�I�?g�S�ͅ?Ri�M
U�?R��B߄?����k�?�a�<3��?�.�
7��?M$��!�?�y�и�?��sFR�?c�:��?�dw�=��?e�,!�,�?��9π?[D@y@�?� `)b�?X.e*Q�?1e,@�?�|�i�/�?��O�?D�q�?	��u�?������?�Q>���?R�+���?s�:���?��$A��?�3iSu��?��ʡf��?�3]��?T��7���?��h���?�Q��,��?VR/Ay�?�7��<s�?A��$n�?,�@�i�??���f�?Y�hi�d�?�ΊE_c�?���(c�?��k�c�?t�0�e�?�A
��h�?k��(�l�?�E��yq�?�2	�rw�?��G�v~�?u����?�g�����?�Ge����?��ǘܤ�?�&$��?�*)�,��?���S��?�JAu��?��6N���?���Ś��?N�fk��?I9-�|!�?�ʱH5�?ws�F�I�?sh��|_�?m'B��u�?V����?&$g����?v]�P���?��
�"��?� �G��?��k�?����?�Th��!�?�p�0�?���ݵ>�?��ߋM�?���\�?�F�1�k�?*]�&\{�?B	3m���?��eȚ�?4D�6���?	Y۳��?{:O#���?򵈤���?{����?��)�A��?���d�?cYYpy�?"Z��x+�?oY�Z;�?���YK�?VU�v�Z�?8�u3j�?�q�|&y�?vT�$��?35	ސ��?��Aʤ�?�X�ԥ��?αQ��?%��`!��?#�-���?�w޾��?HH��D��?0�@�9��?
�ɔ�?҂�M�?[D@y@�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?[D@y@�?�E3!�?��=�$��?�+���?�.t_���?8U���?L_[���?G���.�?o�<���?�a+�?造�7��?5�����?��%‰�?,��	o�?��8�?��=�?�|��?o�2U�?~����?h�;J��?w�׽�?
I��"�?B�7ޫ�?��v�6�?wd�D���?�u'L�P�?��*�k��?�_���q�?"пU�?�e�����?�:��1�?�
['���?��U�e�?��]���?+��C�?]n0�a��?��%�)��?��=���?�W�u�b�?:��o��?Z_&
�?f��^�c�?0�ǃg��?��k�"�?{b��>��?W��l��?�4d^�?�v����?VPI�C�?l��<���?�~�	A7�?J���z��?�1H�59�?��d��?�y�H�?��.h���?�:� f�?$iP���?�b+&>��?[��*�?r�
���?�nb�f�?�X=X�	�?i��^�?��0�V��?�L��]�?�vۦ�c�?v�����?s�fp-�?�`�Q&��?�#ܿ
�?3�[���?R�\���?�����?�����?��a��?�����?}��\ݳ�?.��kL�?�k<}��?��[��?�~'w�0�?��|�'��?���T���?�ϵq<�?~f��?#q�^���?�V�0�m�?��O�1�?^Ř�j��?k�����?΢^�?��?���,@u@�@�?$�$�$�$�$�$��?Zd;�O�?9��v���?�~j�t�@?5^�I@���Q�@�S㥛�
@-���@%��C�@D�l�)@��v��@Zd;�O
@+���@�����L@��Q��@����@�~j��@@�~j��@m���@�S㥛@+��N@��C��@�Zd;_@�Zd�@�ʡE��@Zd;�O
@ˡE��
@�Q���@/�$�	@h��|?5@`��"�@y�&1�@���S@��ʡE��?L7�A`�?�t�V�?�?,@u@�@�?$�$��?=
ףp=�?�z�G�@ףp=
�@@ףp=
�@�z�G�@=
ףp=�?�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�,@u@�@�?�?D�l�@��Q�@�E��T@
ףp=
@��C�lg@D�l�@m���@�ʡE��@@�(\��@����@�~j�t@F���@���S@��C�lg@�l��@���K7@q=
ףp@㥛� �@�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�,@u@�@�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$��?��� �r�?�MbX9@�� �r�@@���K�@�(\��@d;�O��@@d;�O��
@�� �rh	@d;�O��@7�A`��@�� �rh@�v��/�?�?�?$�$�$�$�$�,@u@�@�?$�$�$�$�$�$�$�$�$�$�$�$�$��?@d;�O��
@}?5^��@�E��T@B`��"�@@-����@H�z�G@ˡE��}@��|?5^@o��ʡ@�v��/@�(\��@�$��C�?�?�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�,@u@�@�?�?�?7�A`���?@7�A`��@�� �rh	@�MbX9@�Q���@�� �rh@�&1�@-���@1�Z�@@��� ��@���K�@��n�@@�� �rh@��Q�@d;�O��
@�� �rh@o��ʡ�?�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�,@u@�@�?$�$�$�$�$�$��?Zd;�O�?9��v���?�~j�t�@?5^�I@���Q�@�S㥛�
@-���@%��C�@D�l�)@��v��@Zd;�O
@+���@�����L@��Q��@����@�~j��@@�~j��@m���@�S㥛@+��N@��C��@�Zd;_@�Zd�@�ʡE��@Zd;�O
@ˡE��
@�Q���@/�$�	@h��|?5@`��"�@y�&1�@���S@��ʡE��?L7�A`�?�t�V�?�?$y@p�@�?���K�I�V-�]H�j�t�G��"�~�E�7�A`�PD����K�B�V-��A�j�t�D@��E���=�o���!;�;�O��n8��Zd�5��x�&13��E��T0��$��C+�w��/�%�X9��v �T㥛� �-����L7�A`�%��C�@Zd;�O�@@�C�l�{@�"�~j@��/�$@333333@�� �rh@R���Q	@h��|?5@���Mb@��Q���?7�A`��?��K7�A�?��ʡE��?m����?$y@p�@�?�����Y4�fffff&2�fffff�/��+������'�33333�"�����������������������ffffff�?�~j�t�@T㥛� @@9��v��@�~j�t�@����M�@�Zd;�@T㥛� @�$��C�?`��"����A`��"��^�I+�����M���v����ˡE��=!�1�Z�$��n��
(���x�&q+�d;�O��.���"�1�V-�2�L7�A`�4�j�t�86������7���"��9�$y@p�@�?�C�l����MbXɿ7�A`��@-���F@@��S�@{�G�z@)\��(@�v��/@u�V�?��Q��?�(\����G�z��p=
�#�=
ףp��ףp=
W����Qx ���Q�E#�R���&���Q��(��Q���+����Qx.��(\��0�)\��2���(\o3��(\���4�\��(<6��(\��7�)\��9���(\o:��(\���;�\��(<=��(\��>��G�z@�H�z��@�{�G�jA�&y@�@�?�S㥋K�+��>J�5^�I�H�h��|?�G��� �rXF��S�E�+�پC�5^�IrB�h��|?%A�7�A`�?����K=�V-�}:�j�t��7��"�~J5�7�A`�2����K0��Zd�*��x�&1�%��E�� ��$�����|?5^����C�l߿�Zd;�@�"�~�@@j�t��@Zd;�O@5^�I@@!�rh��@�n���@��"�~@��x�&@X9��v��?�v��/�?w��/��?!�rh���?��K7�A�?&y@�@�?�O��n��E����d;�O���NbX9���MbX9�`��"��Zd;�O��?;�O��n�?-���@sh��|?	@;�O��n@J+�@/�$�@�rh��|@@{�G�@��ʡE@�E���@R���Q@�K7�A`	@���x�@��Q��?�p=
ף��H�z�G��=
ףp=�ףp=
�
����Q����Q���R���Q���(\!��(\��u#�\��(�%��(\�B(�)\���*���(\-��(\��u/��G�z�0��z�G!2�&y@�@�?�� �rhٿm���@�l�q@�I+�@�C�l�{@@R����@F���@�Zd;_@�l��
@�Q���@o��ʡ�?��ʡEֿ����Mb�ˡE����n��������K"�V-�&�j�t�+���"�~/���� ��1���S�%4�+�Y6�?5^�I�8�sh��|�:���� ��<���S�%?���C��@��/�$�A�9��v��B��MbX�C�m��E���C�,F��/�$FG�9��v�_H��MbXyI�m��J���C��K�$ w@��@�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$��?��� �r�?�MbX9@�� �r�@@���K�@�(\��@d;�O��@@d;�O��
@�� �rh	@d;�O��@7�A`��@�� �rh@�v��/�?�?�?$ w@��@�?$�$�$�$�$�$�$�$�$�$��?@d;�O��
@}?5^��@�E��T@B`��"�@@-����@H�z�G@ˡE��}@��|?5^@o��ʡ@�v��/@�(\��@�$��C�?�?�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$ w@��@�?�?��� �r@��� �r@�~j�t@�� �r�@�&1�@-���@@�t��@�/�$�@㥛� �@��Q�@�MbX9@�MbX9@�v��/�?�?$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�$�_�v@�@�?���Q��?�Q���?{�G�z�?R���Q�?)\��(�?���Q��?�?�p=
ף�?�p=
ף�?�?�?�?���Q��?���Q��?���Q��?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?)\��(�?)\��(�?)\��(�?)\��(�?�z�G��?�z�G��?�z�G��?)\��(�?)\��(�?)\��(�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?���Q��?�?�?�p=
ף�?H�z�G�?�Q����?333333�?{�G�z�?�(\���?�G�z��?�(\���?=
ףp=�?�z�G��?)\��(�?)\��(�?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?q=
ףp�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?�G�z�?q=
ףp�?q=
ףp�?_�v@�@�?�������?���Q��?���Q��?���Q��?�Q���?{�G�z�?
ףp=
�?�������?)\��(�?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?�p=
ף�?�p=
ף�?�p=
ף�?�p=
ף�?�Q���?�Q���?333333�?{�G�z�?�(\���?R���Q�?�z�G��?q=
ףp�?���Q��?�?�p=
ף�?�p=
ף�?H�z�G�?H�z�G�?H�z�G�?�Q����?�Q����?��(\��?333333�?ףp=
��?{�G�z�?��Q��?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?��Q��?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?_�v@�@�?���Q��?���Q��?���Q��?���Q��?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?{�G�z�?{�G�z�?{�G�z�?
ףp=
�?
ףp=
�?)\��(�?�p=
ף�?333333�?�(\���?�������?)\��(�?���Q��?�p=
ף�?�Q����?333333�?�(\���?�G�z��?�(\���?�������?�������?�(\���?R���Q�?�G�z��?ffffff�?��Q��?{�G�z�?333333�?��(\��?H�z�G�?�p=
ף�?�p=
ף�?�?�?���Q��?���Q��?q=
ףp�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?q=
ףp�?���Q��?�?H�z�G�?��(\��?ףp=
��?�(\���?�G�z��?�(\���?=
ףp=�?��Q���?�������?q=
ףp�?�G�z�?���Q��?\��(\�?\��(\�?�?�?�?R���Q�?R���Q�?�p=
ף�?�p=
ף�?�p=
ף�?�(\���?�(\���?H�z�G�?H�z�G�?H�z�G�?�������?�������?�Q����?_�v@�@�?���Q��?���Q��?���Q��?�Q���?�Q���?{�G�z�?
ףp=
�?)\��(�?���Q��?���Q��?���Q��?�p=
ף�?�p=
ף�?�p=
ף�?�Q���?�Q���?�Q���?333333�?{�G�z�?�(\���?R���Q�?�z�G��?q=
ףp�?�?�Q����?ףp=
��?��Q��?ffffff�?�G�z��?R���Q�?�(\���?�(\���?�������?�(\���?�(\���?R���Q�?�G�z��?ffffff�?�(\���?��Q��?ףp=
��?333333�?�Q����?�p=
ף�?�?q=
ףp�?�z�G��?�������?R���Q�?
ףp=
�?�(\���?{�G�z�?{�G�z�?{�G�z�?333333�?333333�?333333�?333333�?333333�?333333�?333333�?333333�?333333�?333333�?{�G�z�?{�G�z�?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?�(\���?{�G�z�?{�G�z�?�(\���?�(\���?�(\���?
ףp=
�?
ףp=
�?R���Q�?R���Q�?R���Q�?R���Q�?�������?�������?�������?�z�G��?)\��(�?q=
ףp�?q=
ףp�?���Q��?�?�p=
ף�?H�z�G�?_�v@�@�?�Q���?R���Q�?q=
ףp�?H�z�G�?333333�?ףp=
��?ףp=
��?ףp=
��?ףp=
��?{�G�z�?{�G�z�?{�G�z�?��Q��?��Q��?��Q��?�(\���?ffffff�?ffffff�?
ףp=
�?�G�z��?R���Q�?�(\���?�������?=
ףp=�?�z�G��?�z�G��?�z�G��?�z�G��?=
ףp=�?=
ףp=�?�������?�������?�(\���?R���Q�?�G�z��?
ףp=
�?ffffff�?�(\���?��Q��?{�G�z�?ףp=
��?333333�?�Q����?H�z�G�?�p=
ף�?�?q=
ףp�?)\��(�?�z�G��?�������?R���Q�?R���Q�?R���Q�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?R���Q�?R���Q�?R���Q�?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?�������?�z�G��?�z�G��?�z�G��?)\��(�?)\��(�?)\��(�?)\��(�?q=
ףp�?q=
ףp�?���Q��?���Q��?�?�p=
ף�?H�z�G�?H�z�G�?�Q����?_�v@�@�?{�G�z�?{�G�z�?
ףp=
�?)\��(�?333333�?�������?H�z�G�?�(\���?=
ףp=�?q=
ףp�?\��(\�?R���Q�?�p=
ף�?�p=
ף�?�(\���?H�z�G�?H�z�G�?�������?�Q����?�Q����?�������?�������?H�z�G�?�(\���?�p=
ף�?�?\��(\�?�G�z�?�������?��Q���?=
ףp=�?�������?R���Q�?
ףp=
�?�(\���?��Q��?ףp=
��?��(\��?�Q����?H�z�G�?�?���Q��?q=
ףp�?q=
ףp�?q=
ףp�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?)\��(�?q=
ףp�?q=
ףp�?���Q��?���Q��?�?�p=
ף�?�p=
ף�?H�z�G�?H�z�G�?�Q����?�Q����?�Q����?��(\��?��(\��?333333�?333333�?ףp=
��?��Q��?�(\���?ffffff�?
ףp=
�?R���Q�?�(\���?�������?=
ףp=�?��Q���?)\��(�?�������?q=
ףp�?�G�z�?���Q��?\��(\�?\��(\�?�?R���Q�?R���Q�?�p=
ף�?�p=
ף�?�(\���?�(\���?�(\���?H�z�G�?_�v@�@�?333333�?
ףp=
�?)\��(�?��(\��?R���Q�?q=
ףp�?�p=
ף�?�������?�������?�Q����?�Q����?�Q����?�Q����?�Q����?�Q����?�������?H�z�G�?H�z�G�?�p=
ף�?R���Q�?\��(\�?�G�z�?�������?��Q���?=
ףp=�?�(\���?
ףp=
�?�(\���?{�G�z�?ףp=
��?333333�?��(\��?�Q����?H�z�G�?H�z�G�?�p=
ף�?�p=
ף�?�p=
ף�?�p=
ף�?�p=
ף�?�p=
ף�?�p=
ף�?�p=
ף�?�?�?�p=
ף�?H�z�G�?�Q����?333333�?{�G�z�?�(\���?
ףp=
�?R���Q�?�(\���?�������?=
ףp=�?�z�G��?��Q���?)\��(�?�������?�������?q=
ףp�?q=
ףp�?�G�z�?�G�z�?�G�z�?�G�z�?���Q��?���Q��?\��(\�?�?�?R���Q�?�p=
ף�?�(\���?�(\���?H�z�G�?�������?�������?�Q����?=
ףp=�?=
ףp=�?��(\��?��(\��?��(\��?��(\��?�z�G��?�z�G��?�z�G��?�z�G��?�z�G��?�z�G��?�z�G��?�z�G��?�z�G��?_�v@�@�?{�G�z�?{�G�z�?{�G�z�?
ףp=
�?�������?�p=
ף�?�(\���?���Q��?{�G�z�?�z�G��?q=
ףp�?���Q��?\��(\�?\��(\�?���Q��?�G�z�?q=
ףp�?�������?)\��(�?��Q���?=
ףp=�?�������?R���Q�?�G�z��?ffffff�?�(\���?��Q��?ףp=
��?333333�?��(\��?�Q����?�Q����?H�z�G�?�p=
ף�?�p=
ף�?�?�?�?�?�p=
ף�?�p=
ף�?H�z�G�?H�z�G�?H�z�G�?�Q����?�Q����?333333�?{�G�z�?ffffff�?R���Q�?��Q���?���Q��?�(\���?=
ףp=�?333333�?)\��(�?�������?��Q��?�(\���?�G�z�?�G�z�?ffffff�?���Q��?���Q��?���Q��?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?\��(\�?_�v@�@�?D�l��?;�O��n�?㥛� ��?�Q���?L7�A`�?X9��v��?V-��?)\��(�?9��v���?9��v���?�&1��?�������?�������?J+��?�~j�t��?���Mb�?Zd;�O��?�I+��?/�$��?ˡE��?�~j�t�?�Q���?L7�A`�?X9��v��?���Q��?V-��?y�&1��?y�&1��?y�&1��?V-��?���Q��?���Q��?X9��v��?X9��v��?����Mb�?����Mb�?L7�A`�?�� �rh�?�Q���?�l��?ˡE��?�I+��?�~j�t��?9��v���?���Q��?�~j�t�?�&1��?�� �rh�?R���Q�?����Mb�?/�$��?��n���?)\��(�?d;�O���?P��n��?m����?�l���?�G�z��?��K7�A�?�p=
ף�?ˡE���?H�z�G�?/�$��?V-��?��S��??5^�I�?h��|?5�?��|?5^�?��"�~�?��(\��?d;�O���?-����?���Q��?��n���?��n���?bX9���?7�A`���?+���?+���?+���?+���?+���?+���?+���?+���?+���?+���?+���?+���?+���?7�A`���?bX9���?bX9���?��n���?��n���?_�v@�@�?{�G�z�?{�G�z�?�������?�������?�������?�������?���Q��?���Q��?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?�Q���?{�G�z�?{�G�z�?{�G�z�?
ףp=
�?�������?�������?)\��(�?�p=
ף�?�Q���?{�G�z�?R���Q�?)\��(�?�p=
ף�?ףp=
��?�G�z��?�z�G��?�G�z�?R���Q�?�������?��(\��?��Q���?)\��(�?�������?q=
ףp�?�(\���?�G�z�?�G�z�?ffffff�?ffffff�?ffffff�?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?���Q��?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?\��(\�?\��(\�?\��(\�?�G�z��?�G�z��?�G�z��?�?�?�?�?�?�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?R���Q�?_�v@�@�?�Q���?{�G�z�?
ףp=
�?�������?)\��(�?���Q��?�p=
ף�?�p=
ף�?�p=
ף�?���Q��?���Q��?)\��(�?)\��(�?)\��(�?�������?�������?)\��(�?)\��(�?)\��(�?���Q��?���Q��?�p=
ף�?333333�?�(\���?R���Q�?)\��(�?�?��(\��?��Q��?ffffff�?
ףp=
�?ffffff�?ffffff�?��Q��?ףp=
��?��(\��?H�z�G�?�?q=
ףp�?�z�G��?R���Q�?�(\���?333333�?�Q���?�p=
ף�?)\��(�?)\��(�?�������?�������?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?
ףp=
�?
ףp=
�?�������?)\��(�?�p=
ף�?�Q���?{�G�z�?
ףp=
�?�������?)\��(�?���Q��?�p=
ף�?H�z�G�?�Q����?��(\��?333333�?ףp=
��?ףp=
��?{�G�z�?{�G�z�?��Q��?��Q��?�(\���?�(\���?ffffff�?ffffff�?
ףp=
�?�G�z��?�G�z��?R���Q�?�(\���?�������?�������?_�v@�@�?R���Q�?
ףp=
�?{�G�z�?�Q���?���Q��?�������?
ףp=
�?{�G�z�?{�G�z�?�Q���?���Q��?�Q���?{�G�z�?
ףp=
�?���Q��?{�G�z�?�z�G��?�p=
ף�?333333�?��Q��?ffffff�?ffffff�?�(\���?��Q��?ףp=
��?�Q����?�p=
ף�?q=
ףp�?�������?
ףp=
�?333333�?�p=
ף�?)\��(�?
ףp=
�?{�G�z�?���Q��?�������?{�G�z�?{�G�z�?���Q��?���Q��?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?���Q��?���Q��?{�G�z�?{�G�z�?���Q��?�Q���?�������?�p=
ף�?�(\���?�z�G��?�p=
ף�?ףp=
��?ffffff�?�������?�������?\��(\�?�p=
ף�?�������?��(\��?333333�?ףp=
��?)\��(�?�������?��Q��?q=
ףp�?q=
ףp�?�(\���?�G�z�?�G�z�?�G�z�?ffffff�?ffffff�?ffffff�?_�v@�@�?�Q���?{�G�z�?{�G�z�?
ףp=
�?�������?�p=
ף�?{�G�z�?�z�G��?�p=
ף�?ףp=
��?�(\���?ffffff�?
ףp=
�?
ףp=
�?
ףp=
�?�G�z��?�G�z��?�G�z��?�G�z��?�G�z��?R���Q�?R���Q�?R���Q�?�(\���?�������?=
ףp=�?�z�G��?��Q���?)\��(�?�������?q=
ףp�?�G�z�?�G�z�?�G�z�?�G�z�?���Q��?���Q��?\��(\�?R���Q�?�(\���?�������?��(\��?ףp=
��?�������?�(\���?ffffff�?
ףp=
�?\��(\�?�G�z��?�G�z��?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�G�z��?�G�z��?�G�z��?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?_�v@�@�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?�������?�������?�������?�������?�������?�������?�������?���Q��?���Q��?���Q��?�Q���?{�G�z�?{�G�z�?
ףp=
�?�������?)\��(�?���Q��?�p=
ף�?�Q���?333333�?333333�?{�G�z�?333333�?333333�?�Q���?�p=
ף�?�p=
ף�?���Q��?)\��(�?)\��(�?�������?�������?�������?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?
ףp=
�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?
ףp=
�?
ףp=
�?
ףp=
�?�������?�������?)\��(�?���Q��?�Q���?333333�?�(\���?R���Q�?�z�G��?q=
ףp�?���Q��?�p=
ף�?�Q����?��(\��?ףp=
��?��Q��?�(\���?ffffff�?�G�z��?R���Q�?�(\���?�������?=
ףp=�?�z�G��?�z�G��?��Q���?��Q���?)\��(�?)\��(�?�������?�������?�������?_�v@�@�?�p=
ף�?�Q���?333333�?333333�?{�G�z�?{�G�z�?{�G�z�?�(\���?�(\���?
ףp=
�?
ףp=
�?R���Q�?�������?�z�G��?)\��(�?q=
ףp�?���Q��?���Q��?�?�?�p=
ף�?�p=
ף�?H�z�G�?�Q����?�Q����?��(\��?333333�?333333�?333333�?��(\��?�Q����?�Q����?H�z�G�?�Q����?�Q����?��(\��?��(\��?��(\��?��(\��?�Q����?��(\��?ףp=
��?ffffff�?�������?)\��(�?�G�z�?\��(\�?R���Q�?�p=
ף�?H�z�G�?H�z�G�?�������?�Q����?=
ףp=�?=
ףp=�?��(\��?��(\��?�z�G��?�z�G��?�z�G��?333333�?333333�?��Q���?��Q���?��Q���?��Q���?ףp=
��?ףp=
��?ףp=
��?ףp=
��?ףp=
��?��Q���?��Q���?��Q���?��Q���?��Q���?��Q���?��Q���?��Q���?��Q���?��Q���?M�w@��@�?��S㥫?�v��/�?T㥛� �?L7�A`�?333333�?+����?+����?�~j�t�?�l��?�Q���?L7�A`�?����Mb�?X9��v��?���Q��?h��|?5�?���Q��?V-��?���Q��?���Q��?X9��v��?V-��?T㥛� �?T㥛� �?��x�&�?�� �rh�?�Q���?;�O��n�?��ʡE��?�MbX9�?#�~j��?#�~j��?sh��|?�?sh��|?�?/�$��?/�$��?�I+��?+��η?J+��?9��v���?�"�~j�?`��"��?��K7�A�?�/�$�?�Q���?;�O��n�?�O��n�?���S�?��ʡE��?{�G�z�?ˡE���?�(\���?ffffff�?���x��?Zd;�O��?NbX9��?�C�l��?�$��C�?)\��(�?h��|?5�?+���?X9��v��?��� �r�?���K7�?�Q����?��"�~�?333333�?j�t��?� �rh��?��/�$�?��v���?��� �r�?B`��"��?333333�?j�t��?V-��?X9��v�?\��(\�?M�w@��@�?Zd;�O��?��C�l�?��x�&�?�S㥛�?+����?�������?=
ףp=�?��|?5^�?��"�~�?��n���?5^�I�?�$��C�?��S��?}?5^�I�?u�V�?�t�V�?�rh��|�?�~j�t��?F���x�?=
ףp=�?7�A`���?�~j�t�?��Q���?-�����?j�t��?y�&1��?�K7�A`�?�(\���?sh��|?�?�MbX9�?333333�?㥛� ��?��(\��?�z�G��?333333�?���S�?5^�I�?�z�G��?�~j�t�?ˡE���?\��(\�?�V-�?�������?�Zd;�?�p=
ף�?H�z�G�?�n����?�&1��?��|?5^�?9��v���?`��"��?�$��C�?��C�l�?�?��x�&1�?��� �r�?�(\���?��x�&�?�C�l��?�V-�?��n���?��v���?/�$���?�MbX9�?�~j�t��?��x�&�?��K7��?�G�z�?���M�?�t�V�?���Q��?
ףp=
�?\��(\�?�A`��"�?/�$���?Zd;�O��?-�����?M�w@��@�?�z�G�?��K7�A�?ˡE���?�$��C�?��MbX�?j�t��?Zd;�O�?j�t��?�G�z�?j�t��?��/�$�?��/�$�?h��|?5�?�ʡE���?� �rh��?Zd;�O�?!�rh���?#�~j��?�"�~j�?/�$���?��(\��?;�O��n�?�Q����?��K7��?�(\���?P��n��?�?���Q��?Zd;�O�?)\��(�?�A`��"�?��"�~�?�C�l��?��MbX�?NbX9��?��� �r�?V-����?^�I+�?��ʡE�?�(\���?�K7�A`�?#�~j��?�MbX9�?�S㥛�?+����?�~j�t�?333333�?��(\��?�V-�?��K7��?�/�$�?L7�A`�?T㥛� �?��K7�A�?`��"��?h��|?5�?q=
ףp�?q=
ףp�?y�&1��?)\��(�?)\��(�?��C�l�?��S㥻?��S㥻?�A`��"�?�z�G�?�z�G�?�A`��"�?�A`��"�?�z�G�?1�Zd�?�z�G�?�A`��"�?�z�G�?��S㥻?1�Zd�?)\��(�?M�w@��@�?�������?9��v���?9��v���?�������?9��v���?9��v���?9��v���?�A`��"�?�&1��?�A`��"�?�A`��"�?�A`��"�?)\��(�?V-��?h��|?5�?�Zd;�?���Q��?T㥛� �?T㥛� �?��x�&�?�p=
ף�?��x�&�?D�l��?;�O��n�?��ʡE��?�I+��?�z�G�?L7�A`�?'1�Z�?����K�?�(\���?F���x�?��� �r�?
ףp=
�?�K7�A`�?+����?;�O��n�?�/�$�?�S㥛�?�p=
ף�?P��n��?�rh��|�?h��|?5�?�v��/�?)\��(�?�&1��?B`��"۹?��|?5^�?9��v���?�z�G�?�z�G�?�A`��"�?�&1��?�&1��?B`��"۹?B`��"۹?B`��"۹?B`��"۹?1�Zd�?q=
ףp�?L7�A`�?�~j�t�?�G�z��?m����?�&1��?V-��?P��n��?7�A`���?�"�~j�?{�G�z�?�(\���?��ʡE�?�I+��?���Q��?����K�?�rh��|�?�Zd;��?M�w@��@�?B`��"۹?��K7�A�?�(\���?m����?ףp=
��?�Zd;��?�V-�?�A`��"�?��S��?+����?+����?�x�&1�?+����?��S��?1�Zd�?�O��n�?㥛� ��?��|?5^�?�Q����?H�z�G�?R���Q�?�Zd;��?����K�?���Q��?��S��?Zd;�O�?�MbX9�?�l���?J+��?\��(\�?u�V�?�A`��"�?��|?5^�?�C�l��?�C�l��?�&1��?J+��?R���Q�?R���Q�?�E����?�|?5^��?�z�G��?��S��?�������?�v��/�?V-��?X9��v�?���Q��?h��|?5�?h��|?5�?���Q��?X9��v��?NbX9��?��"�~�?�S㥛�?^�I+�??5^�I�?%��C��?�Zd;�?����Mb�?F���x�?F���x�?�(\���?j�t��??5^�I�?ffffff�?��"�~�?��n���?�z�G��?+���?�Zd;�?���S�?1�Zd�?\��(\�?��S��?��ʡE��?X9��v��?M�w@��@�?��S㥻?L7�A`�?/�$��?�$��C�?�p=
ף�?㥛� ��?��ʡE��?}?5^�I�?{�G�z�?ˡE���?/�$��?��S��?�I+��?
ףp=
�?X9��v��?NbX9��?�Q����?��ʡE��?�(\���?+����?L7�A`��?m����?;�O��n�?���x��?��n���?���x��?��n���?9��v���?��/�$�?��S��?q=
ףp�?u�V�?����Mb�?�rh��|�?h��|?5�?{�G�z�?�~j�t�?�|?5^��?R���Q�?���Q��?sh��|?�?-�����?�V-�?�S㥛��?V-���?m����?y�&1��?-�����?�A`��"�?��n���?��"�~�?=
ףp=�?�������?��MbX�?F���x�?���K7�?F���x�?�C�l��?�z�G��?��S��?��C�l��?!�rh���?V-��?h��|?5�?X9��v�?`��"��?`��"��?d;�O���?V-��?u�V�?Zd;�O�?q=
ףp�?�t�V�?X9��v��?����Mb�?���K7�?��K7��?M�w@��@�?9��v���?��S㥫?9��v���?�������?9��v���?9��v���?9��v���?�&1��?�������?�������?9��v���?�������?�&1��?�&1��?9��v���?�&1��?�&1��?�A`��"�?�A`��"�?��S㥫?)\��(�?y�&1��?)\��(�?V-��?�Zd;�?T㥛� �?�� �rh�?��ʡE��?j�t��?J+��?���Q��?��(\��?ffffff�?��|?5^�?h��|?5�?H�z�G�?���S�?m����?�?=
ףp=�?)\��(�?��S��?�Zd;�?}?5^�I�?�~j�t��?�/�$�?H�z�G�?o��ʡ�?m����?�C�l��?�V-�?ffffff�?d;�O���?㥛� ��?���Q��?�z�G��?�Zd;�?�O��n�?333333�?�O��n�?���S�?����K�?1�Zd�?��C�l�?�~j�t�?�G�z��?X9��v��?�Zd;��?��C�l��?+����?�?j�t��?)\��(�?���Mb�?R���Q�?��� �r�?{�G�z�?M�w@��@�?���Mb�?!�rh��??5^�I�?+����?�G�z�?�������?5^�I�?�MbX9�?}?5^�I�?Zd;�O�?��/�$�?���Q��?Zd;�O��?��x�&1�?����Mb�?T㥛� �?Zd;�O��?bX9���?�(\���?�S㥛�?�l���?���K7�?+���?)\��(�?���K7�?����K�?sh��|?�?���S�?D�l��?��K7�A�?���Q��?q=
ףp�?��S㥻?9��v���?B`��"۹?R���Q�?
ףp=
�?/�$��?ˡE��?#�~j��?#�~j��?#�~j��?#�~j��?sh��|?�?sh��|?�?{�G�z�?�MbX9�?{�G�z�?#�~j��?#�~j��?/�$��?bX9�ȶ?Zd;�O��?�~j�t��?��|?5^�?1�Zd�?y�&1��?�"�~j�?y�&1��?��C�l�?9��v���?�&1��?��MbX�?��MbX�?�������?�������?��|?5^�?�A`��"�?��C�l�?!�rh��?�Zd;�?��K7�A�?D�l��?/�$���?��/�$�?NbX9��?��Q���?M�w@��@�?�I+��?�&1��?`��"��?�� �rh�?���S�?/�$���?���S�?;�O��n�?�V-�??5^�I�?�n���?H�z�G�?�� �rh�?H�z�G�?�/�$�?L7�A`�?P��n��?�p=
ף�?P��n��?��K7�A�?`��"��?h��|?5�?��C�l�?�z�G�?�z�G�?9��v���?B`��"۹?�������?���Mb�?����K�?bX9�ȶ?Zd;�O��?R���Q�?�E��Ը?9��v���?��C�l�?�"�~j�?!�rh��?V-��?��x�&�?�K7�A`�?%��C��?9��v���?^�I+�?�$��C�?�t�V�?'1�Z�?�v��/�?o��ʡ�?�C�l��?�G�z�?=
ףp=�?ffffff�?��|?5^�?�I+��?X9��v�?�I+��?X9��v�?��(\��?d;�O���?�I+��?d;�O���?d;�O���?-����?d;�O���?d;�O���?��(\��?��n���?���Q��?㥛� ��?+���?bX9���?�z�G��?9��v���?+���?�l���?�z�G��?M�w@��@�?sh��|?�?�������?�?��ʡE��?��C�l�?��MbX�?��|?5^�?��"�~�?��"�~�?�|?5^��?�E����?Zd;�O��?ffffff�?w��/��?��ʡE��?�V-�?P��n��?���Q��?��C�l�?�&1��?R���Q�?
ףp=
�?#�~j��?��ʡE��?�Q���?��x�&�?�p=
ף�?T㥛� �?h��|?5�?V-��?y�&1��?�A`��"�?9��v���?9��v���?�&1��?�A`��"�?)\��(�?y�&1��?��S㥫?9��v���?�A`��"�?J+��?�&1��?)\��(�?V-��?T㥛� �?㥛� ��?��ʡE�?��|?5^�?���Q��?��K7��?�O��n�?�S㥛�?ffffff�?���Mb�?���K7�?9��v���?��C�l��?Zd;�O�?+���?�Zd;��?�S㥛��?�� �rh�?�V-�?㥛� ��?�~j�t�?+����?�������?u�V�?Zd;�O�?�ʡE���?��/�$�?ffffff�?ffffff�?`��"��?
ףp=
�?^�I+�?M�w@��@�?
ףp=
�?�~j�t��?�������?�������?��S㥫?�A`��"�?�A`��"�?)\��(�?�A`��"�?�v��/�?h��|?5�?h��|?5�?X9��v��?�p=
ף�?�Q���?333333�?#�~j��?Zd;�O��?�&1��?V-��?�� �rh�?�MbX9�?�G�z��?�������?��K7��?ˡE���?�(\���?%��C��?
ףp=
�?'1�Z�?!�rh���?���K7�?sh��|?�?��Q��?�E����?y�&1��?'1�Z�?�?`��"��?��S��?�������?ףp=
��?��|?5^�?H�z�G�?T㥛� �?�Zd;�?�I+��?��/�$�?V-��?� �rh��?� �rh��?�v��/�?w��/��?�S㥛�?y�&1��?{�G�z�?�������?!�rh���?�K7�A`�?�(\���?h��|?5�?���Q��?^�I+�?V-���?�Zd;��?���Mb�?�?��K7�A�?+����?\��(\�?�rh��|�?�?��K7�A�?�E����?�n����?��(\��?��Q���?M�w@��@�?J+��?9��v���?��S㥫?)\��(�?��S㥫?�v��/�?�v��/�?h��|?5�?�v��/�?�v��/�?h��|?5�?�v��/�?V-��?���Q��?�Zd;�?�Zd;�?X9��v��?��x�&�?;�O��n�?#�~j��?�I+��?J+��?�A`��"�?y�&1��?���Q��?�p=
ף�?���M�?w��/��?���Mb�?��C�l��?����Mb�?�~j�t�?X9��v�?��K7��?}?5^�I�?X9��v�?)\��(�?�/�$�?�� �rh�?�ʡE���?�I+��?sh��|?�?��v���?���S�?X9��v��?X9��v��?-�����?+����?�?)\��(�?NbX9��?R���Q�?�"�~j�?%��C��?�S㥛��?�������?�S㥛��?�������?D�l��?�/�$�?L7�A`��?J+��?u�V�?�v��/�?��x�&�?Zd;�O�?�K7�A`�?/�$��?F���x�?��MbX�?D�l��?V-��?m����?V-��?�ʡE���?�V-�?�G�z�?M�w@��@�?�� �rh�?/�$��?9��v���?��K7�A�?+����?bX9���?�E����?��n���?}?5^�I�?�ʡE���?�?L7�A`��?��|?5^�?��ʡE��?'1�Z�?y�&1��?}?5^�I�?1�Zd�?D�l��?R���Q�?�������?NbX9��?{�G�z�?�n���?�ʡE��?9��v���?��ʡE�?��ʡE��?L7�A`�?���Q��?y�&1��?�A`��"�?�������?���Mb�?
ףp=
�?/�$��?j�t��?{�G�z�?{�G�z�?�~j�t�?�~j�t�?�l��?;�O��n�?�l��?�~j�t�?;�O��n�?�l��?�l��?�l��?+����?+����?/�$��?{�G�z�?/�$��?�I+��?
ףp=
�?���Mb�?�~j�t��?�������?�~j�t��?Zd;�O��?�������?�~j�t��?�&1��?J+��?9��v���?��S㥫?�v��/�?���Q��?�p=
ף�?D�l��?�~j�t�?��ʡE�?�&1��?�rh��|�?7�A`���?��ʡE�?M�w@��@�?
ףp=
�?�~j�t��?��S㥫?��S㥫?�v��/�?h��|?5�?���Q��?���Q��?���Q��?X9��v��?��S㥫?����Mb�?D�l��?�Q���?333333�?�MbX9�?sh��|?�?
ףp=
�?��MbX�?��C�l�?���Q��?L7�A`�?;�O��n�?�MbX9�?ffffff�?J+��?� �rh��?�� �rh�?��S��?o��ʡ�?�I+��?+���?d;�O���?m����?y�&1��?��Q���?���M�?�(\���?�Zd;�?y�&1��?�C�l��?
ףp=
�?�S㥛�?;�O��n�?X9��v��?��S㥻?J+��?bX9�ȶ?/�$��?{�G�z�?�~j�t�?333333�?�V-�?�V-�?�Q���?��x�&�?��x�&�?��x�&�?�� �rh�?�Q���?�Q���?�l��?�~j�t�?�MbX9�?{�G�z�?ˡE��?j�t��?�(\�µ?sh��|?�?#�~j��?#�~j��?#�~j��?sh��|?�?j�t��?����K�?���Mb�?J+��?M�w@��@�?j�t��?
ףp=
�?Zd;�O��?
ףp=
�?���Mb�?Zd;�O��?�~j�t��?Zd;�O��?Zd;�O��?Zd;�O��?�~j�t��?�I+��?Zd;�O��?���Mb�?���Mb�?���Mb�?Zd;�O��?Zd;�O��?�I+��?�I+��?{�G�z�?/�$��?+����?{�G�z�?{�G�z�?+����?{�G�z�?{�G�z�?�~j�t�?�~j�t�?+����?�~j�t�?{�G�z�?{�G�z�?ˡE��?/�$��?�I+��?Zd;�O��?���Mb�?��S㥫?����Mb�?#�~j��?y�&1��?+����?��S��?�&1��?���x��?-�����?V-����?� �rh��?���Q��?��C�l�?+����?��K7�A�?�������?w��/��?w��/��?ˡE���?��x�&�?Zd;�O�?sh��|?�?F���x�?F���x�?D�l��?��K7��?V-��?�(\���??5^�I�?j�t��?�Q����?�&1��?h��|?5�?��ʡE�?��/�$�?�t�V�?�I+��?ffffff�?M�w@��@�?���Mb�?���Mb�?�~j�t��?���Mb�?�������?9��v���?9��v���?�&1��?�&1��?�A`��"�?�A`��"�?�A`��"�?�v��/�?y�&1��?V-��?���Q��?X9��v��?��x�&�?�~j�t�?
ףp=
�?��C�l�?�V-�?��C�l�?�v��/�?��K7��?�"�~j�?
ףp=
�?�Q����?'1�Z�?ffffff�?R���Q�?�� �rh�?��ʡE�?5^�I�?/�$���?)\��(�?y�&1��?ˡE���?�K7�A`�?D�l��?�&1��?��ʡE�?;�O��n�?X9��v�?���S�?;�O��n�?�I+��?9��v���?-����?7�A`���?�O��n�?���x��?�l���?`��"��?�Zd;�?���S�?\��(\�?����K�?��C�l��?��S��?/�$���?-�����?�G�z��?��x�&1�?X9��v��?+����?�x�&1�?j�t��?T㥛� �?�?R���Q�?����Mb�?�S㥛�?����Mb�?�S㥛��?�E����?!�rh���?M�w@��@�?�A`��"�?P��n��?/�$��?Zd;�O�?5^�I�?��/�$�?�rh��|�?+����?T㥛� �?�Zd;��?^�I+�?X9��v�?�(\���?y�&1��?/�$���?��n���?D�l��?�~j�t��?�?�ʡE���?)\��(�?��|?5^�?R���Q�?���x��?o��ʡ�?w��/��?�~j�t�?�Q���?T㥛� �?!�rh��?9��v���?J+��?J+��?�&1��?9��v���?��|?5^�?9��v���?��|?5^�?�A`��"�?h��|?5�?�Q���?�(\���?�A`��"�?��� �r�?�x�&1�?-����?�n����?sh��|?�?�x�&1�?F���x�?bX9���?/�$���?����Mb�?�(\���?D�l��?��S��?�V-�?=
ףp=�?+���?���Q��?
ףp=
�?�z�G��?+���?��S��?5^�I�?�Zd;�?����K�?�~j�t�?/�$���?��C�l�?-�����?X9��v��?V-����?��ʡE��?j�t��?T㥛� �?'1�Z�?M�w@��@�?�(\�µ?�&1��?�p=
ף�?w��/��?�|?5^��?�v��/�?V-���?��K7�A�?�S㥛��?�n����??5^�I�?333333�?�"�~j�?sh��|?�?��ʡE�?�Zd;�?��� �r�?D�l��?7�A`���?/�$���?�x�&1�?�MbX9�?�x�&1�?�~j�t�?��(\��?B`��"��?����Mb�?���x��?V-��?�MbX9�?;�O��n�?�S㥛��?h��|?5�?�z�G��?+����?#�~j��?�V-�?P��n��?V-��?�z�G�?��MbX�?Zd;�O��?�I+��?j�t��?#�~j��?��ʡE��?+����?�~j�t�?�~j�t�?�~j�t�?�~j�t�?�~j�t�?�~j�t�?��ʡE��?+����?��ʡE��?#�~j��?{�G�z�?#�~j��?�MbX9�?�MbX9�?�MbX9�?��ʡE��?�~j�t�?333333�?�l��?�l��?�~j�t�?��ʡE��?#�~j��?/�$��?
ףp=
�?J+��?�"�~j�?�p=
ף�?���S�?���x��?M�w@��@�?T㥛� �?o��ʡ�?�A`��"�?L7�A`��?'1�Z�?��C�l�?sh��|?�?�MbX9�?�Zd;�?-�����?����Mb�?�"�~j�?{�G�z�?�~j�t��?�p=
ף�?y�&1��?#�~j��?�������?w��/��?�������?NbX9��?!�rh���?�E����?�������?�������?#�~j��?NbX9��?�������?w��/��?w��/��?�E����?�������?�S㥛��?y�&1��?�~j�t��?�p=
ף�?#�~j��?�������?w��/��?!�rh���?�(\���?ˡE���?�/�$�?�(\���?L7�A`��?!�rh���?�(\���?�/�$�?#�~j��?NbX9��?y�&1��?#�~j��?�������?�������?�S㥛��?�E����?!�rh���?!�rh���?�(\���?w��/��?�S㥛��?�S㥛��?�������?�S㥛��?#�~j��?#�~j��?�S㥛��?#�~j��?#�~j��?�S㥛��?�E����?#�~j��?y�&1��?�p=
ף�?#�~j��?�S㥛��?#�~j��?M�w@��@�?/�$��?!�rh��??5^�I�?�I+��?5^�I�?!�rh���?}?5^�I�?T㥛� �?��/�$�?��"�~�?�z�G��?���x��?�l���?5^�I�?
ףp=
�?�O��n�?��v���?^�I+�?333333�?^�I+�?��v���?�$��C�?^�I+�?^�I+�?^�I+�?��v���?��v���?^�I+�?333333�?333333�?^�I+�?^�I+�?�A`��"�?�O��n�?5^�I�?
ףp=
�?��v���?^�I+�?333333�?�$��C�?�$��C�?����K�?���S�?�$��C�?�Zd;�?�$��C�?�$��C�?���S�?��v���?��v���?�O��n�?��v���?^�I+�?^�I+�?�A`��"�?^�I+�?�$��C�?�$��C�?�$��C�?333333�?�A`��"�?�A`��"�?^�I+�?�A`��"�?��v���?��v���?�A`��"�?��v���?��v���?�A`��"�?^�I+�?��v���?�O��n�?
ףp=
�?��v���?�A`��"�?��v���?M�w@��@�?�&1��?�� �rh�?�(\�µ?�A`��"�?����Mb�?��MbX�?J+��?��Q���?��S��?�t�V�?+���?+���?���x��?`��"��?
ףp=
�?
ףp=
�?��v���?^�I+�?�Zd;�?^�I+�?��v���?����K�?^�I+�?^�I+�?^�I+�?��v���?��v���?^�I+�?�Zd;�?�Zd;�?^�I+�?^�I+�?��v���?
ףp=
�?`��"��?
ףp=
�?��v���?^�I+�?�Zd;�?����K�?����K�?����K�?\��(\�?����K�?�Zd;�?����K�?����K�?\��(\�?��v���?��v���?
ףp=
�?��v���?^�I+�?^�I+�?��v���?^�I+�?����K�?����K�?����K�?�Zd;�?��v���?��v���?^�I+�?��v���?��v���?��v���?��v���?��v���?��v���?��v���?^�I+�?��v���?
ףp=
�?
ףp=
�?��v���?��v���?��v���?M�w@��@�?��e�c]�?Έ����?+��Χ?V-��?��B�iޱ?�=�U��?J{�/L��?���QI�?Ϊ��V��?
q���h�?]�C����?m��{��?����?J+��?��x�&�?ŏ1w-�?&S��:�?�D���J�?��MbX�?�D���J�?�J�4�?�� �rh�?����Q�?�D���J�?�D���J�?&S��:�?�J�4�?�D���J�?��MbX�?��MbX�?����Q�?�D���J�?�}8gD�?ŏ1w-�?J+��?��x�&�?&S��:�?�D���J�?��MbX�?�� �rh�?���ho�?�R�!�u�?�Q�|�?���ho�?��^�?�� �rh�?���ho�?�Q�|�?&S��:�?�J�4�?ŏ1w-�?&S��:�?�D���J�?�D���J�?�}8gD�?����Q�?�� �rh�?�� �rh�?���ho�?��MbX�?�}8gD�?�}8gD�?�D���J�?�}8gD�?&S��:�?&S��:�?�}8gD�?&S��:�?&S��:�?�}8gD�?����Q�?&S��:�?ŏ1w-�?��x�&�?&S��:�?�}8gD�?&S��:�?M�w@��@�? �o_Ή?X�5�;N�?�g��s��?F%u��?���H�?k�w��#�?�St$���?��N@a�?Ӽ�ɵ?��JY�8�?�lV}��?0�'��?RI��&¶?�e�c]ܶ?���x�?Ǻ���?�H.�!��?
ףp=
�?,e�X�?
ףp=
�?؁sF���?M�St$�?�^)��?
ףp=
�?
ףp=
�?�H.�!��?؁sF���?
ףp=
�?,e�X�?,e�X�?�^)��?
ףp=
�?�鷯�?Ǻ���?�e�c]ܶ?���x�?�H.�!��?
ףp=
�?,e�X�?M�St$�?^�I+�?o�ŏ1�?�H�}8�?^�I+�?=,Ԛ��?M�St$�?^�I+�?�H�}8�?�H.�!��?؁sF���?Ǻ���?�H.�!��?
ףp=
�?
ףp=
�?�鷯�?�^)��?M�St$�?M�St$�?^�I+�?,e�X�?�鷯�?�鷯�?
ףp=
�?�鷯�?�H.�!��?�H.�!��?�鷯�?�H.�!��?�H.�!��?�鷯�?�^)��?�H.�!��?Ǻ���?���x�?�H.�!��?�鷯�?�H.�!��?M�w@��@�?z�ަ?�q?9��� x?�X�O0~?n��4҂?�e��a��?��ek}�?�GĔH��?$���~��?ʉvR�??W[���?�r�]���?�ǵ�b��?Ɏ�@���?z�):�˟?u���ݟ?����?���"��?�8b->�?X�j�?�8b->�?qU�wE�?�9̗�?�q�Z|
�?�8b->�?�8b->�?���"��?qU�wE�?�8b->�?X�j�?X�j�?�q�Z|
�?�8b->�?7�X�O�?����?z�):�˟?u���ݟ?���"��?�8b->�?X�j�?�9̗�?�8����?T㥛� �?.�&�?�8����?2U0*��?�9̗�?�8����?.�&�?���"��?qU�wE�?����?���"��?�8b->�?�8b->�?7�X�O�?�q�Z|
�?�9̗�?�9̗�?�8����?X�j�?7�X�O�?7�X�O�?�8b->�?7�X�O�?���"��?���"��?7�X�O�?���"��?���"��?7�X�O�?�q�Z|
�?���"��?����?u���ݟ?���"��?7�X�O�?���"��?Copyright 1995-2013 Graeme W. Gill�v�v�v���Q��?
ףp=
�?���Q��?���Q��?
ףp=
�?���Q��?�v	�v	�vR���Q�?R���Q�?�������?R���Q�?R���Q�?�������?�v�v�vR���Q�?�Q����?)\��(�?R���Q�?�Q����?)\��(�?�v�v�v{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?{�G�z�?"�v$�v$�v�z�G��?=
ףp=�?���Q��?�z�G��?=
ףp=�?�������? +�v-�v-�vg���d�?���a�7�?����ɓ?�������?�z�G��?�������?@1�v3�v3�v���6��?�&��d��?+Kt�Y��?)\��(�?H�z�G�?�z�G��?�9�v;�v;�v�����?c�={�?͒5�l�?)\��(�?H�z�G�?�G�z�?@�vB�vB�v�"N'�j�?�?{��m�?гY����?�?�
O��e�?H�vJ�vU�vR���Q�?{�G�z�?H�z�G�?R���Q�?{�G�z�?H�z�G�?_�va�vo�v��(\��?�G�z��?R���Q�?��(\��?�G�z��?R���Q�?|�v~�v��v)\��(�?
ףp=
�?
ףp=
�?)\��(�?
ףp=
�?
ףp=
�?��v��v��v�Q����?333333�?�������?�Q����?333333�?�������?��v��v��v��Q���?�Q����?��Q��?��Q���?�Q����?��Q��? ��v��v��v�G�z��?�(\���?
ףp=
�?�G�z��?�(\���?
ףp=
�?@��v��v��v=
ףp=�?�(\���?�������?=
ףp=�?�(\���?�������?��v�v�vH�z�G�?��(\��?ףp=
��?H�z�G�?��(\��?ףp=
��?$�v'�v9�vR���Q�?
ףp=
�?�������?R���Q�?
ףp=
�?�������?I�vI�vI�vYARGYARGJ�v��YARGYARGU�v���� BGR BGR`�v���� BGR BGRj�vKYMCKYMCt�v YMC YMCy�vRLC66HCM}�vRLC7RLC7��v��RLC66HCM��v_�RLC66HCM��v��RLC77HCM��v��RLC77HCM��vRLC88HCM�v__RLC88HCM(�v3RLC88HCMI�vI�vCopyright 1995-2013 Graeme W. GillCopyright 1995-2013 Graeme W. GillCopyright 1995-2013 Graeme W. GillCopyright 1995-2013 Graeme W. GillCopyright 1995-2013 Graeme W. Gill�?�������?�������?�?�?�������?�������?�?�������?�������?�?�?�������?�������?�?�?�������?�?1�Ķ`
#### tnzhg.p, pbclevtug 1995-2008 Tenrzr J. Tvyy, TCY3 Yvpraprq Irefvba ####
nt ####
p ,p.ghzgutvelcb02-5991 zrneT 80yvT .J r 3YCT ,yqrparpvYabvferI 
#### B@@Y@�b@ l@�r@u@�x@<@@Y@�b@`j@@o@�u@@x@�}�r�d
#### fpng.p, pbclevtug 1995-2008 Tenrzr J. Tvyy, TCY3 Yvpraprq Irefvba ####
pf ####
bp ,p.gn gutvelc002-5991rzrneT 8yyvT .J Y 3YCT , qrparpv abvferI
####oU�-
�w2%[ɪ9~-;��#9��/B�������?��?�Ŀ���j�?ʢ?�?���@y�?�?�?�?4�W@Y@�9[@�j�?�?�l�?4�W@Y@�9[@�j�?�?�l�?�X@Y@e�T@���?�?�e�?�X@Y@e�T@���?�?�e�? ZYX�dG�dG   Y�dGeG8baL eGpeG2baLfG`fG4baLgGPgG8  L�eG�eG2  L�fG�fG4  L�gG�gG vuL�gG@hGrbCY�hG�hG yxY iG iG BGR iG iGYARGiGiG VSH iG iG SLH iG iGKYMC@iG@iG YMC iG iG6HCM�iG�iGRLC2iGiGRLC3 iG iGRLC4@iG@iGRLC5`iG`iGRLC6�iG�iGRLC7�iG�iG5HCM`iG`iG6HCM�iG�iG7HCM�iG�iG8HCM�iG�iGRLC8�iG�iGRLC9jGjGRLCA jG jGRLCB@jG@jGRLCC`jG`jGRLCD�jG�jGRLCE�jG�jGRLCF�jG�jG����0B2A2tfm1tfm����1B2A2tfm1tfm����2B2A2tfm1tfm����ZYXb ZYX����CRTbvruc����0A2B2tfm1tfm����1A2B2tfm1tfm����2A2B2tfm1tfm����tlacmitd����dahc23fs����grattxet����trlctrlcclrt����tolctrlcclrt����trpctxet����idrcidrc����dnmdcsed����ddmdcsed����tmag1tfm2tfm����CRTkvruc����ZYXg ZYX����CRTgvruc����imul ZYX����saemsaem����tpkb ZYX����tptw ZYX����locnlocn����2lcn2lcn����0erp1tfm2tfm����1erp1tfm2tfm����2erp1tfm2tfm����csedcsed����qespqesp����0dspatad����1dspatad����2dspatad����3dspatad����s2spatad����i2spatad����ZYXr ZYX����CRTrvruc����drcscsed����nrcsnrcs����hcet gis���� dfb dfb����tgcvtgcv����deuvcsed����weivweiv����stra23fs�������������Nw�NwOwOwOwOwOwOwOwOw Ow$Ow(Owtrlc WGclrt WGidrc@bGvrucp>Gatad�?Gmitd�PH2tfm�OG1tfm�OG BAm�OG ABm�OGsaem�QGculm�{Hlocn�TG2lcn�TGarapp>Gqesp�YG23fs�;Gnrcs�[G gis�ZGcsed�{Htxetp@G23fu�:G dfb]Gtgcv@`G61iu�7G23iu�8G46iu�9G80iu�6GweivaG ZYX =G����`gwhgwqgwwgw}gw�gw�gw�gw�gw�gw�gw�gw�gw�gw�gw�gw�gwCopyright 1995-2013 Graeme W. Gill Ju�ow`{J {J {J
�owUnknown'��
�?�6�3E��?-'��
�?0��w��?�:�\�?���<�?#����?I��X�?�:�����?`:��?BOv�\��?`����?��?�?nDm�i�?��G�_��?
��u@�?}�Ɠ��?4x<}t��?6btD��?PlotWin�?��Z
������VD�_�����p����Pddddddd�|K`}K�Ou8�ku�H�w�T�wc�wn�w����z�w����w��w	��w��w	ƈw

шw
����Aۈw����A�w����A��w����A��w�����w�w�w-�w����:�w����J�w����Y�wh�wt�w��w����A��w��w��w ������w!������w"̉w#����݉w(�w)��w,	�w-����3,�w1����A,�w2A5�w;����A>�w<����AE�w>AR�w?A]�w@����3s�wA%|�wB��wC��wD����wE����wJ����&1��w�NuLA��wM����.ȊwNAъwPAފwQ����A�wR������wS���� �wT����!�wU����"�wW����A/�wX	A8�wXA8�wY	AG�wAV�w'h�w(y�w)��w�����(A��w���w����� ��w�#��w�$ŋw�Aϋw�Aދw�����A�w�����A��w�
A
�w�A"�w�A6�w��AJ�w��A^�w������Ai�w������,As�wI�����(A��wi�A��w�Nus�����(A��w%�A��w\�A��w]�����A��w^�A͌w_�����Aٌw?�A�w�A�w�A�w�A
�w�����A �w�����A2�w�����AG�w�AU�w�����A_�w�Ar�w�����$A��w�����
$A��w�����
$A��w����� A��w�A��w\�Aˍw�A܍w �A�w!�����
$A��w"�����
$A�w#�����
$A�w$�����
$A+�w%�����
$A>�w&�����
$AO�w'�����$A`�w(�����$An�w)�A|�w*�
A��w+�A��w,�A��w-�A��w.�Aˎw/�����Aߎw0�A�w1�A��w2�A�w3�A�w4�����A*�w5�A9�wZ�AI�w[�A`�w]�Aw�w������A��w������A��w��A��w������ A��w������AƏw������
$A׏w������A�w������
$A�w�wZA"�w�A*�w�A>�w�AJ�w�AU�w�Ac�w�Ao�w�����
$Az�w�����A��w�A��w/���� A��w��A��w��A��w��Aw"�Aʐw$�����Aڐw'�����A�w(�����A��w�A�w�A'�w�A8�w�AJ�w�Ab�w�
Ay�w�A��w�
A��w�
A��w�A��w�Ȃw�Aܑw�A�w	�A��w
�A��w�����A�w|�����A�w������A�w������A)�w������A4�w������AG�w�A[�w�Ak�w�Av�w�A��w�

A��w�A��w�����A��w�A̒w�A�w�A��w�A�w�A!�w�A/�w�A=�w�AH�w�����A^�w�AR�w�Aa�w�An�w�A{�w�A��w�A��w�A��w�A��w	�Aȓw
�Aӓw�����Aݓw�A��w �!!A�w��>�E?�x�=��w��L��w��L��w���L��w)���L��w���L��w�kL��w�kLȳw�PMҳw�@QM޳w�OM�wPM��we��kL�w���kL�w�kL�w���kL!�wt��M(�wu��M1�wm��kL$I��w
��w3��wFB��wGC��wHD��w%I��w
��w
��w=B��wD�x`�x��x��x��xߥx�x�xH�x��x��x��xԦx�x(�xX�xx�x��xاx�x(�xH�xx�xŨx�x�x(�xP�xx�x��x��xũxةx�x�x*�x@�xa�xx�x��xЪx��x �xO�x`�x��x��x�x�x(�xX�x��x��xȬx�x �xK�xp�x��xȭx�x �xP�x��x��x�x�x!�x@�xx�x��xȯx�x�x,�x@�xu�x��xȰx�x@�xp�x��x��x�x��x�x)�x8�x`�x��xزx�x0�xW�xp�x��x��xسx�x%�x0�xp�x��xϴx޴x��x�x6�xO�xh�x��x�x(�x\�xp�x��x��xضx �x`�x��x��x�x�xH�xx�x`N���������hpN�{ �{���? ���_p���?2��-�+�] �f��msvcr80.dllmsvcr70.dllmsvcrt.dll_set_invalid_parameter_handler2.3.1dCreate ICC profile, Version %s
Author: Graeme W. Gill, licensed under the AGPL Version 3
  Diagnostic: usage: %s [-options] inoutfile
 -v              Verbose mode
 -A manufacturer Manufacturer description string
 -M model        Model description string
 -D description  Profile Description string (Default "inoutfile")
 -C copyright    Copyright string
 -Z tmnb         Attributes: Transparency, Matte, Negative, BlackAndWhite
 -Z prsa         Default intent: Perceptual, Rel. Colorimetric, Saturation, Abs. Colorimetric
 -q lmhu         Quality - Low, Medium (def), High, Ultra
 -b [lmhun]      Low quality B2A table - or specific B2A quality or none for input device
 -ni             Don't create input (Device) shaper curves
 -np             Don't create input (Device) grid position curves
 -no             Don't create output (PCS) shaper curves
 -nc             Don't put the input .ti3 data in the profile
 -k zhxr         Black Ink generation target: z = zero K,
                 h = 0.5 K, x = max K, r = ramp K (def.)
 -k p stle stpo enpo enle shape
                 stle: K level at White 0.0 - 1.0
                 stpo: start point of transition Wh 0.0 - Bk 1.0
                 enpo: End point of transition Wh 0.0 - Bk 1.0
                 enle: K level at Black 0.0 - 1.0
                 shape: 1.0 = straight, 0.0-1.0 concave, 1.0-2.0 convex
 -K parameters   Same as -k, but target is K locus rather than K value itself
 -l tlimit       override total ink limit, 0 - 400%% (default from .ti3)
 -L klimit       override black ink limit, 0 - 100%% (default from .ti3)
 -a lxXYgsmGS    Algorithm type override
                 l = Lab cLUT (def.), x = XYZ cLUT,
                 X = display XYZ cLUT + matrix, Y = display XYZ cLUT + debug matrix
                 g = gamma+matrix, s = shaper+matrix, m = matrix only,
                 G = single gamma+matrix, S = single shaper+matrix
 -u              If input profile, auto scale WP to allow extrapolation
 -ua             If input profile, force absolute intent
 -uc             If input profile, clip cLUT values above WP
 -U scale        If input profile, scale media white point by scale
 -R              Restrict white <= 1.0, black and primaries to be +ve
 -V demphasis    Degree of dark region cLUT grid emphasis 1.0-4.0 (default %.2f = none)
 -f [illum]      Use Fluorescent Whitening Agent compensation [opt. simulated inst. illum.:
                  M0, M1, M2, A, C, D50 (def.), D50M2, D65, F5, F8, F10 or file.sp]
 -i illum        Choose illuminant for computation of CIE XYZ from spectral data & FWA:
                  A, C, D50 (def.), D50M2, D65, F5, F8, F10 or file.sp
 -o observ       Choose CIE Observer for spectral data:
                  1931_2 (def), 1964_10, 2012_2, 2012_10, S&B 1955_2, shaw, J&V 1978_2, or file.cmf
 -r avgdev       Average deviation of device+instrument readings as a percentage (default %4.2f%%)
.icm -s src%s|cperc  Apply gamut mapping to output profile perceptual B2A table
                   for given source space, or compression percentage
 -S src%s|experc Apply gamut mapping to output profile perceptual and
                   and saturation B2A table, or expansion percentage
 -nP             Use colormetric source gamut to make output profile perceptual table
 -nS             Use colormetric source gamut to make output profile saturation table
 -g src.gam      Use source image gamut as well for output profile gamut mapping
 -p absprof,...  Incorporate abstract profile(s) into output tables
 -t intent       Override gamut mapping intent for output profile perceptual table:
 -T intent       Override gamut mapping intent for output profile saturation table:
              %s
 -c viewcond     set input viewing conditions for output profile %s gamut mapping,
                  either an enumerated choice, or a parameter
 -d viewcond     set output viewing conditions for output profile %s gamut mapping
                  Also sets out of gamut clipping CAM space.
                  either an enumerated choice, or a series of parameters:value changes
             %s
 -P              Create gamut gammap_p.wrl and gammap_s.wrl diagostics
 -O outputfile   Override the default output filename.
 inoutfile       Base name for input.ti3/output%s file
expansioncompressionToo few arguments, got %d expect at least %dUsage requestedExpect argument to manufacturer description flag -AExpect argument to model description flag -MExpect argument to profile description flag -DExpect argument to copyright flag -CExpect argument to attribute flag -ZUnknown argument '%c' to attribute flag -ZExpect argument to speed flag -qUnknown argument '%c' to quality flag -qUnknown argument '%c' to flag -nUnknown flag '%c' after -uExpected argument to input white point scale flag -UArgument '%s' to flag -U out of rangeExpected argument to dark emphasis flag -VDark weighting argument %f to '-V' is out of rangeExpect argument to inking flag -kToo few arguments to inking flag -kpUnknown inking rule (-k) argument '%c'Expected argument to total ink limit flag -lExpected argument to black ink limit flag -LExpect argument to algorithm flag -aUnknown argument '%c' to algorithm flag -aExpect argument to version flag -IUnknown argument '%c' to version flag -IAM0CD50M1D50M2M2D65F5F8F10Failed to read custom target illuminant spectrum in file '%s'Target illuminant '%s' is wrong measurement typeExpect argument to illuminant flag -iFailed to read custom illuminant spectrum in file '%s'CIE illuminant '%s' is wrong measurement typeExpect argument to observer flag -o1931_21964_102012_22012_101955_21978_2shawFailed to read custom observer CMF from -o file '%s'Expected argument to average deviation flag -rOptimised smoothing factor argument to '-rs' must be over 0.0Raw smoothing factor argument to '-rr' must be over 0.0Average Deviation argument must be between 0.0 and 100.0Unrecognised argument to source gamut flag -%cGamut -%c %s %d%% must be > 0 and < 100Unrecognised argument to source image gamut flag -gExpected abstract profile filename after -pExpect argument to perceptul intent override flag -tUnrecognised intent '%s' to perceptual override flag -tExpect argument to saturation intent override flag -TUnrecognised intent '%s' to saturation override flag -TViewing conditions flag (-%c) needs an argumentUrecognised Enumerated Viewing conditions '%s'Viewing condition (-%c) unrecognised surround '%c':%lf:%lf:%lf:%lf:%lfViewing condition (-%cw) unrecognised white point '%s':%lfViewing condition (-%cg) unrecognised flare '%s'Viewing condition (-%cm) unrecognised flare '%s'Viewing condition (-%c) unrecognised sub flag '%c'Output filename override (-O) needs an argumentUnknown flag '%c'Missing input .ti3 and output ICC basenameFWA compensation only works when viewer and/or illuminant selected-t perceptual intent override only works if -s srcprof or -S srcprof is used-T saturation intent override only works if -S srcprof is usedSaturation intent override was set, so adding saturation intent tableNo gamut mapping called for, so -P will produce nothing-g srcgam will do nothing without -s srcprof or -S srcprofCTI3CALCGATS file read error : %sInput file isn't a CTI3 format fileInput file doesn't contain at least one tableDEVICE_CLASSInput file doesn't contain keyword DEVICE_CLASSDISPLAYEMISINPUT-i illuminant ignored for emissive reference type-f FWA compensation ignored for emissive reference typeLAB_LXYZ_XSPECTRAL_BANDSNeither CIE nor spectral data found in file '%s'No CIE data found, switching to spectral with standard observer & D50Requested spectral interpretation when data not availableDARK_REGION_EMPHASISDark emphasis factor %f from targen
OUTPUTTOTAL_INK_LIMITInk limit greater than original chart! (%d%% > %d%%)BLACK_INK_LIMITBlack ink limit greater than original chart! (%d%% > %d%%)Total ink limit being used is %d%%
No total ink limit being usedBlack ink limit being used is %d%%
No black ink limit being usedOutput profile can only be a cLUT algorithmInput auto WP scale mode isn't applicable to an output deviceForce absolute colorimetric isn't applicable to an output deviceInput cLUT clipping above WP mode isn't applicable to an output deviceINPUTInput cLUT clipping above WP mode isn't applicable to a matrix profileFWA compensation isn't applicable to a display deviceInput file keyword DEVICE_CLASS has unknown value|��l��̙�̙�̙�̙�̙�̙�̙�̙�̙�̙�\��L��̙�<��̙�,�������̙�̙�̙�̙�̙�̙�̙�̙�̙�̙�̙�̙�|��l��̙�̙�̙�̙�̙�̙�̙�̙�̙�̙�\��L��̙�<��̙�,����������ϙ�ϙ�ϙ�������ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ����ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ�ϙ����ϙ����ϙ�ϙ�ϙ�������ϙ�ϙ�ϙ�ϙ�ϙ����ϙ�����?{�G�zt?�i@@�{�G�z�?Y@ffffff�?y@T@%d, %s%c%2d%%This is a Lut style RGB - XYZ Input ProfileCopyright, the creator of this profilewWrite: Can't open file '%s'Write: Creation of ICC object failedadd_tag failed: %d, %slink_tag failed: %d, %srbUnable to open input file '%s' for readingUnable to seek to end of file '%s'Failed to read file '%s'No sets of dataNo of test patches = %d
Malloc failed - tpat[]COLOR_REPInput file doesn't contain keyword COLOR_REPSLAB_RGBXYZ_RGBInput device input file has unhandled color representationRGB_RInput file doesn't contain field RGB_RField RGB_R is wrong type - expect floatRGB_GInput file doesn't contain field RGB_GField RGB_G is wrong type - expect floatRGB_BInput file doesn't contain field RGB_BField RGB_B is wrong type - expect floatLAB_LInput file doesn't contain field LAB_LField LAB_L is wrong type - expect floatLAB_AInput file doesn't contain field LAB_AField LAB_A is wrong type - expect floatLAB_BInput file doesn't contain field LAB_BField LAB_B is wrong type - expect floatXYZ_XInput file doesn't contain field XYZ_XField XYZ_X is wrong type - expect floatXYZ_YInput file doesn't contain field XYZ_YField XYZ_Y is wrong type - expect floatXYZ_ZInput file doesn't contain field XYZ_ZField XYZ_Z is wrong type - expect floatAt %d device values %f %f %f field exceeds 100.0!SPECTRAL_BANDSInput file doesn't contain keyword SPECTRAL_BANDSSPECTRAL_START_NMInput file doesn't contain keyword SPECTRAL_START_NMSPECTRAL_END_NMInput file doesn't contain keyword SPECTRAL_END_NMSPEC_%03dInput file doesn't contain field %sField %s is wrong type - expect floatCreation of spectral conversion object failedPatch %d device value field exceeds 100.0!Creation of xicc failedCreating extrapolation black and white points:Malloc failed - mpat[]Creating extrapolation matrix model failed - memory ?Added synthetic point @ %f %f %f, val %f %f %f, weight %f
Setting up B to A table lookupread_tag failed: %d, %sCreating B to A tables 0%%Setting 16 bit PCS->Device Lut failed: %d, %sDone B to A tableWrite file: %d, %srRead: %d, %s[%f] %f %f %f -> %f %f %f should be %f %f %f
Profile check complete, peak err = %f, avg err = %f
�?{�G�z�?@{�G�z�?��(\��?X�@��"@Y@�?8#]�T#�?UUUUUU�?��.���.AD�����c����MbP?333333�?D�����cL�?�������?%d, %s%c%2d%%DisplayOutputLabXYZRGBCMYKCMYCopyright, the creator of this profilesaturationcolorimetricperceptualthirdfirstsecondgammap_p.wrlgammap_s.wrlDEVICE_CLASSInput file doesn't contain keyword DEVICE_CLASSDISPLAY %*f %lf %*f NORMALIZED_TO_Y_100NO %lf %lf %lf Unable to parse 'ILLUMINANT_WHITE_POINT_XYZ' keyword
COLOR_REPInput file doesn't contain keyword COLOR_REPSCMYK_XYZCMYK_LABCMY_XYZCMY_LABRGB_XYZRGB_LABiRGB_XYZiRGB_LABOutput device input file has unhandled color representation '%s'CALExpect CAL type to be registerednew_xcal failed%sCalibrate colorspace %s doesn't match .ti3 %sCalibration class %s doesn't match .ti3 %swWrite: Can't open file '%s'Write: Creation of ICC object failedBumped ICC version to 2.4.0 to accomodate multiple Display intents
set_version failed: %d, %sThis is a Lut style %s - %s Output Profileadd_tag failed: %d, %sInterna: device colorspace and inkmask conflict!Internal: colorant name exceeds 31 charactersNot writing calibration to 'vcgt' because there is no VideoLUT access
link_tag failed: %d, %srbUnable to open input file '%s' for readingUnable to seek to end of file '%s'Failed to read file '%s'No sets of dataNo of test patches = %d
Malloc failed - tpat[]TOTAL_INK_LIMIT
!!!!!!! Additive space has ink limit of %.0f%% set !!!!!!!
>> You probably don't want to do this, as it will limit the white point <<RGB_RInput file doesn't contain field RGB_RField RGB_R is wrong type - corrupted file ?RGB_GInput file doesn't contain field RGB_GField RGB_G is wrong type - corrupted file ?RGB_BInput file doesn't contain field RGB_BField RGB_B is wrong type - corrupted file ?CMY_CInput file doesn't contain field CMY_CField CMY_C is wrong type - corrupted file ?CMY_MInput file doesn't contain field CMY_MField CMY_M is wrong type - corrupted file ?CMY_YInput file doesn't contain field CMY_YField CMY_Y is wrong type - corrupted file ?CMYK_CInput file doesn't contain field CMYK_CField CMYK_C is wrong type - corrupted file ?CMYK_MInput file doesn't contain field CMYK_MField CMYK_M is wrong type - corrupted file ?CMYK_YInput file doesn't contain field CMYK_YField CMYK_Y is wrong type - corrupted file ?CMYK_KInput file doesn't contain field CMYK_KField CMYK_K is wrong type - corrupted file ?LAB_LInput file doesn't contain field LAB_LField LAB_L is wrong type - corrupted file ?LAB_AInput file doesn't contain field LAB_AField LAB_A is wrong type - corrupted file ?LAB_BInput file doesn't contain field LAB_BField LAB_B is wrong type - corrupted file ?XYZ_XInput file doesn't contain field XYZ_XField XYZ_X is wrong type - corrupted file ?XYZ_YInput file doesn't contain field XYZ_YField XYZ_Y is wrong type - corrupted file ?XYZ_ZInput file doesn't contain field XYZ_ZField XYZ_Z is wrong type - corrupted file ?Device value field value exceeds 100.0 (%d:%d:%f) !SPECTRAL_BANDSInput file doesn't contain keyword SPECTRAL_BANDSSPECTRAL_START_NMInput file doesn't contain keyword SPECTRAL_START_NMSPECTRAL_END_NMInput file doesn't contain keyword SPECTRAL_END_NMSPEC_%03dInput file doesn't contain field %sField %s is wrong type - expect floaticx_ill_sp2XYZ returned errorCreation of spectral conversion object failedTARGET_INSTRUMENTCan't find target instrument needed for FWA compensationUnrecognised target instrument '%s'Instrument doesn't have an FWA illuminentCan't find a media white patch to init FWAsimulated inst. illum. not recognisedSet FWA on sp2cie failedFWA content = %f
Device value field value exceeds 100.0 !Internal - display values must be XYZ for normalisationOmitted %d zero measurements
Creation of xicc failedSetting up B to A table lookupCan't open file '%s'Creation of src_xicc failedrCan't open abstract profile file '%s'Creation of Abstract profile ICC object failedAbstract profile isn't an abstract profileCreation of abstract profile xicc failedApplying %s abstract profile '%s' to %s table
read_tag failed: %d, %sCreating Gamut MappingCan't handle percept and sat table intents with different CAM spaces Finding Source Colorspace Perceptual Gamut Finding Source Colorspace Saturation GamutImage gamut ignored for general gamut compression Loading Image Source Gamut '%s'
Reading source gamut '%s' failedImage gamut is wrong colorspace for gamut mapping (Lab != Jab) Finding Destination GamutCreating fake input gamut failed Creating fake source gamut with compression %d%%
Creating expanded input failed Creating Gamut matchFailed to make perceptual gamut map transform Creating fake source gamut with expansion %d%%
Creating compressed input failedFailed to make saturation gamut map transformmake_output_icc: XYZ scale powell failed to converge - set scale to 1.0Set Perceptual XYZ scale factor to %f
Set Saturation XYZ scale factor to %f
Creating B to A tables 0%%Setting 16 bit PCS->Device Lut failed: %d, %sDone B to A tablesCreating gamut boundary tableGet_gamut failed: %d, %sSetting 16 bit PCS->Device Gamut Lut failed: %d, %sDone gamut boundary tableWrite file: %d, %sRead: %d, %s[%f] %f %f %f %f -> %f %f %f should be %f %f %f
[%f] %f %f %f -> %f %f %f should be %f %f %f
Profile check complete, peak err = %f, avg err = %f, RMS = %f
ILLUMINANT_WHITE_POINT_XYZLUMINANCE_XYZ_CDM2�?@�?@�@Y@@@�4�4@D@�?{�G�z�?{�G�z�?��(\��?@X�@��"@8#]�T#�?UUUUUU�?��.���.A@ @$@(@,@"@.@���ư>�o@`k@0@p@��@?�ܵ�?ףp=
�)@333333@)\��(�?�z�G��?-C��6?y@������X@�������?3@gammap: Unexpected failure to find reverse solution for grey axis lookupgamut invdomap1 failed on %f %f %f
domap: got input %f %f %f
domap: after rotate %f %f %f
domap: after L map %f %f %f
domap: after 3D map %s

LAB_LGamut map resolution: %d
Image gamut suppliedgammap: calloc failed on gammap objectgamut map: Unable to read source colorspace white and black points
Warning: image gamut is bigger than src colorspace!gamut map: new_gamut failed
gamut map: Unable to read source gamut white and black points
gamut map: Unable to read destination white and black points
Using Src K only black pointUsing Dst K only black pointSrc colorspace white/black are %f %f %f, %f %f %f
Src gamut white/black are      %f %f %f, %f %f %f
Dst colorspace white/black are %f %f %f, %f %f %f
Target (blended) dst wp/bp   = %f %f %f, %f %f %f
gamut: vector_isect failed!Adapted target wp/bp         = %f %f %f, %f %f %f
Adapted & extended tgt wp/bp = %f %f %f, %f %f %f
Rotate matrix src wp/bp      = %f %f %f, %f %f %f
Rotate matrix dst wp/bp      = %f %f %f, %f %f %f
Bend target                                              bp = %f %f %f
Rotated source grey axis wp/bp %f %f %f, %f %f %f
Rotated gamut grey axis wp/bp  %f %f %f, %f %f %f
Destination axis target wp/bp  %f %f %f, %f %f %f
gamut: grey new_rspl failedWarning: Grey axis mapping is non-monotonic - may not be very smooth ?
Before tuning, L. map White/Black is %f %f, should be %f %f
After tuning,  L. map White/Black is %f %f, should be %f %f
gamut: igrey new_rspl failedMapped source grey axis wp/bp  %f %f %f, %f %f %f
gamut map: parttransgamut failed
gamut map: Malloc of mapping setup points failed
gammap: internal, not enough space for mapping points A (%d > %d)
gamut map: expand_weights() failed
Creating smoothed near points failed
Failed to create cgats objectTSlocus.ts!! Found diagnostic locus.ts file !!gammap: internal, unknown guide point flaggammap: internal, not enough space for mapping points B (%d > %d)
gammap: internal, not enough space for mapping points C (%d > %d)
gammap: internal, not enough space for mapping points D (%d > %d)
gammap: internal, not enough space for mapping points (%d > %d)
gammap internal: input bounds has changed! %f <> %f <> %fCreating rspl..Warning: Gamut mapping is non-monotonic - may not be very smooth !
Fine tuning white and black point mappingWhite is %f %f %f, should be %f %f %f
Black is %f %f %f, should be %f %f %f
After fine tuning:LAB_ALAB_BNo sets of data in diagnostic locusLocus file doesn't contain field %sField %s is wrong typeRing %d diagnostic plane normal failedRing %d diagnostic center point intersection failedFailed to locate centroid of sliceRing %d vect %d diagnostic vector intersect failedWarning: Won't create '%s' because there is no 3D gamut mapping
�?@�?@�D�����cLD�����c�-C��6?�G�z��?333333�?333333�?333333�?�?���ư>@�@����MbP?�������?�h㈵��>�J�M�!@3@i�i@debug: rv = %f from %f %f %f -> %f %f %f
gamut, comp_ce: unable to locate hue %f cusps
~1 sv = %f %f %f
~1 dv = %f %f %f
~1 aodv = %f %f %f
~1 drv = %f %f %f
~1 va = %f, vr = %f, vd = %f
debug:%d: rv = %f from %f %f %f
gamut, interp_xweights: unable to locate hue %f cusps
gamut, comp_lvc: unable to locate hue %f cusps
gamut map: Gamuts aren't compatible
gamut, init_ce: failed to compute plane equation between cusps
gamut, init_ce: failed to invert baricentric matrix
gamut map: Malloc of near smooth points failed
gamut map: new_gamut failed
Average number of direction guide neigbours = %f, min = %d
Optimizing source to destination mapping...multiple powells failed to get a result (1)
multiple powells failed to get a result (2)
new_gamut failed
multiple powells failed to get a result (3)
It %d: No clip %d/%d delta %f max by %f, avg by %f
No og %4.0f max %f avg %f, No ig %4.0f max %f avg %f, avg rext %f
Sub-surface smoothing changed by max %f, average %f
nearsmth ran out of space for pointsmultiple powells failed to get a result (4)
�?I@�v@�-���q=��������f@�������?:�0�yE�:�0�yE>@��������?@4@@@P@�h㈵��>�?H�����z>$@����MbP?��*���G_��Q��@�@Y@@-C��6?{�G�z�?�?��&�.>4�zo�?������?ffffff�?ffffff�?�������?333333�?�������?333333�?vrml make_last_vertex set %d out of rangevrml plot: tried to set last point with no points added!
vrml start_line_set set %d out of rangevrml add_quad set %d out of rangeVRML malloc failed at count %d
vrml add_col_triangle set %d out of rangevrml add_col_line set %d out of rangeVRML rotate axis still too small    # Cone
    Transform {
      rotation %f %f %f %f
      translation %f %f %f
      children [
		Shape { 
		 geometry Cone { bottomRadius %f height %f }
        appearance Appearance { material Material { diffuseColor %f %f %f } }
		} 
      ]
    }
    <!-- Cone -->
    <Transform rotation='%f %f %f %f'
               translation='%f %f %f'>
      <Shape>
        <Appearance>
          <Material diffuseColor='%f %f %f'></Material>
        </Appearance>
        <Cone bottomRadius='%f' height='%f'></Cone>
      </Shape>
    </Transform>
  ] # end of children for world
}
  </Scene>
    </x3d>
  </body>
</html>
</X3D>
VRML: failed to malloc x3dom filename
wbOpening '%s' for write failedWriting '%s'failedVRML: Error %d closing VRML file
    # Text
    Transform { translation %f %f %f
        Shape{
          geometry Text { string ["%s"]
            fontStyle FontStyle { family "SANS" style "BOLD" size %f }
                        }
          appearance Appearance { material Material { diffuseColor %f %f %f } }
        }
    <!-- Text -->
    <Transform translation='%f %f %f'>
        <Text string='"%s"'>
          <FontStyle family='"SANS"' style='BOLD' size='%f'></FontStyle>
        </Text>
    # Shere
          geometry Sphere { radius %f }
          appearance Appearance { material Material { 
              transparency %f, 
                  diffuseColor %f %f %f } }
    <!-- Shere -->
          <Material diffuseColor='%f %f %f'
                    transparency='%f'></Material>
        <Sphere radius='%f'></Sphere>
linepolygonvrml make_line_tri_quad set %d out of range    # Lines
      Shape { 
        geometry IndexedLineSet {
    # Triangles and Quads
        geometry IndexedFaceSet {
          ccw FALSE
          convex TRUE
          solid FALSE
          solid TRUE
          coord Coordinate { 
            point [			# Verticy coordinates
              %f %f %f,
            ]
          }
          coordIndex [ 		# Indexes of %s Verticies 
            %d, %d, -1
            %d, %d, %d, -1
            %d, %d, %d, %d, -1
          ]
          colorPerVertex FALSE
          color Color {
          color [			# RGB colors of each line/tri/quad
            %f %f %f,
            ] 
          colorPerVertex TRUE
          color [			# RGB colors of each vertex
        appearance Appearance { 
          material Material {
            shininess 0.95
            specularColor .6 .6 .6
            transparency %f
      }	# end Shape
    <!-- Lines -->
        <IndexedLineSet
    <!-- Triangles and Quads -->
        <IndexedFaceSet
          convex='true'
          ccw='false'
          solid='false'
          solid='true'
          colorPerVertex='false'
          colorPerVertex='true'
          coordIndex='
            %d -1
          '>
          <Coordinate point='
            %f %f %f
          '></Coordinate>
          <Color color='
          '></Color>
        </IndexedLineSet>
        </IndexedFaceSet>
          <Material shininess='0.95'
                    specularColor='.6 .6 .6'
                    ></Material>
          <DepthMode readOnly='true'></depthMode>
vrml make_points set %d out of range    # Points
    Shape {
      geometry PointSet { 
        coord Coordinate { 
          point [
    <!-- Points -->
    <Shape>
      <PointSet>
        <Coordinate point ='
          %f %f %f
        '></Coordinate>
        color Color {
        <Color color='
          ] 
        '></Color>
      }
    } # end shape
      </PointSet>
    </Shape>
vrml make_lines set %d out of range      geometry IndexedLineSet { 
        coordIndex [
                    %d,           -1,
        ]
        colorPerVertex TRUE
      <IndexedLineSet
        colorPerVertex='true'
        coordIndex='
          %d           -1
        '
        >	<!-- CoordIndex -->
        <Coordinate point='
      </IndexedLineSet>
ARGYLL_3D_DISP_FORMATVRMLWRLX3DX3DOM.x3d.html.x3d.wrlvrml add_col_vertex_l set %d out of rangeMalloc of vrml plot object failedMalloc of vrml name failed.vrml.x3dom.htmlwOpening of vrml plot file '%s' for write failed#VRML V2.0 utf8
# Created by the Argyll CMS
Transform {
  children [
    NavigationInfo {
      type "EXAMINE"		# It's an object we examine
      headlight FALSE
    } # We'll add our own light
    DirectionalLight {
      intensity 0.4
      ambientIntensity 0.05
      direction 1 1 -1
      direction 0 -0.7 -1
      direction -0.7 0 -1
      direction -1 -1 1
      direction 0 0.7 1
      direction 0.7 0 1
    Viewpoint {
      position 0 0 %f      # Position we view from
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv='Content-Type' content='text/html;charset=utf-8'></meta>
    <link rel='stylesheet' type='text/css' href='x3dom.css'></link> 
  </head>
  <body>
    <noscript><p>Please enable JavaScript</p></noscript>
    <script type='text/javascript' src='x3dom.js'> </script> 
    <x3d style='width: 100%%; height: 70%%;'
         x='0px' y='0px' width='100%%' height='70%%'
         id='someUniqueId' showStat='false' showLog='false'>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' profile='Immersive' version='3.0' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-3.0.xsd'>
  <Scene DEF='scene'>
    <Environment gammaCorrectionDefault='none'></Environment>
    <Background groundColor='0 0 0' skyColor='0 0 0'></Background>
    <Transform>
      <NavigationInfo type='"EXAMINE"' headlight='false'></NavigationInfo>
      <DirectionalLight
        intensity='0.4'
        ambientIntensity='0.05'
        direction='1 1 -1'
      ></DirectionalLight>
        intensity='0.3'
        direction='0 -0.7 -1'
        direction='-0.7 0 -1'
        direction='-1 -1 1'
        direction='0 0.7 1'
        direction='0.7 0 1'
      <Viewpoint position='0 0 %f'></Viewpoint>
L+a-b-a+bXYZRGB    # RGB axes as boxes:
      <!--RGB axes as boxes -->
    # XYZ axes as boxes:
    # Lab axes as boxes:
      <!--Lab axes as boxes -->
	Transform { translation %f %f %f
		children [
			Shape {
				geometry Box { size %f %f %f }
				appearance Appearance {
					material Material { diffuseColor %f %f %f }
				}
			}
		]
	}
      <Transform translation='%f %f %f'>
        <Shape>
          <Appearance>
            <Material diffuseColor='%f %f %f'></Material>
          </Appearance>
          <Box size='%f %f %f'></Box>
        </Shape>
      </Transform>
				geometry Text { string ["%s"]
					fontStyle FontStyle { family "SANS" style "BOLD" size %f }
					}
				appearance Appearance { material Material 	{ diffuseColor %f %f %f } }
          <Text string='"%s"'>
            <FontStyle family='"SANS"' style='BOLD' size='%f'></FontStyle>
          </Text>
@�?!�rh��	@)�
�0���EGr��߿�鷯�j�t��?��_�L�?�Pk�w�?�&1�ʿ���x��?]t�E�?ffffff�?�������?N@Y@D@ @0@]@@�D��^:�@�0��%@�{a���?@@a���{�?i@гY����?�
O��e�?�������?J�M�!	@�?�����|�=����������@@u@xlut: Unknown colorspace when black limit specifiedUnexpected failure to find reverse solution for input table1D lut inversion got %d reverse solutions
solution 0 = %f
solution 1 = %f
Unknown colorspace %s when setting auxliariesxlut.c: setup_clip_icxLuLut() icSigXYZData case not implemented!Enumeration = %d
Viewing Conditions:White adaptation color %f %f %f
Adapting Luminance La = %f
Illuminant color %f %f %f
Illuminant Luminance Li = %f
Background Luminance Lb = %f
Relative Background Yb = %f
Emissive Image White Lve = %f
Reflective Image White Lvr = %f
Device Image White Lv = %f
Relative Flare Yf = %f
Relative Glare Yg = %f
Glare color %f %f %f
Technology = %s
deviceClass = %s
Transparency = %d
xicc can only handle input channels of %d or lessxicc can only handle output channels of %d or lessicxLu_comp_bk_point: assert: getting Fwd Lookup failed!icxLu_comp_bk_point: assert: icc Lu output is not XYZ or Lab!, outs = 0x%x, icxLu_comp_bk_point: Black point powell failed%d, %sCreating matrix...Powell failed to converge, residual error = %fMatrix = %f %f %f
         %f %f %f
Creating matrix and single gamma curve...Gamma = %f
Creating matrix and single shaper curve...Creating matrix and gamma curves...Gamma = %f %f %f
Creating matrix and curves...Input offset  = %f
Output offset = %f
Input offset  = %f %f %f
Output offset = %f %f %f
gamma = %f
%d harmonics = %f
%d gamma = %f %f %f
%d harmonics = %f %f %f
%d: %f %f %f -> %f %f %f, target %f %f %f, w %f
xlut: Unexpected failure to find reverse solution for output tableFind white & black pointsset_icxLuMatrix: can't handle color space %sPicked white patch %d with dev = %s
       XYZ = %s, Lab = %s
Picked black patch %d with dev = %s
       XYZ = %s, Lab = %s
Initial white point = %f %f %f
Doing White point fine tune:Before fine tune, rel WP = XYZ %s, Lab %s
After fine tune, rel WP = XYZ %s, Lab %s
                 abs WP = XYZ %s, Lab %s
White manual point scale %f
Dev boundary white XYZ %s, scale WP by %f, total WP scale %f
WP Y would ve > 1.0. scale by %f to clip it
Black point XYZ = %s, Lab = %s
Black point clipped to XYZ = %s, Lab = %s
Scaling White Point by %f to make Y = 1.0
Display Luminance = %f
White point XYZ = %f %f %f
Black point XYZ = %f %f %f
Done gamma/shaper and matrix creationProfile done%c% 3d%%Assert: xlut K locus, unexpected native pcs of 0x%x
Unexpected failure to return 1 solution on clip for input to output tableCreating CAM rspl for camclip failedUnexpected failure to return 1 solution on CAM clip for input to output tableClip dst %f %f %f
Unexpected failure to find reverse solution for input to output table for value %f %f %f (ICC input %f %f %f)JabJChLChicxAppearanceicxAbsAppearanceicxPerceptualAppearanceicxAbsPerceptualAppearanceicxSaturationAppearanceicxAbsSaturationAppearanceEnum VC: Failed to read Media White pointd  d - Default Viewing Conditionpc pc - Critical print evaluation environment (ISO-3664 P1)pp pp - Practical Reflection Print (ISO-3664 P2)pe pe - Print evaluation environment (CIE 116-1995)pm pm - Print evaluation with partial Mid-tone adapationmb mb - Bright monitor in bright work environmentmt mt - Monitor in typical work environmentmd md - Monitor in darkened work environmentjm jm - Projector in dim environmentjd jd - Projector in dark environmenttv tv - Television/Film Studiopcdpcd - Photo CD - original scene outdoorsob ob - Original scene - Bright Outdoorscx cx - Cut Sheet Transparencies on a viewing boxEnum VC: Unrecognised enumeration %d~1 Internal optimised 4D separations not yet implemented!
Creation of clut table rspl failedޤ�������\�����RedBlueGreenEstimating white pointset_icxLuLut: can't handle color space %sApproximate White point XYZ = %s, Lab = %s
Creating optimised per channel curvesCreating fast inverse input lookupsWhite point XYZ = %s, Lab = %s
Find black pointNeutral black direction (Lab) =                     %f %f %f
set_icxLuLut: Black point powell failed
    *** %s primary value can't be encoded in L*a*b* PCS (%f %f %f)   *** Try switching to XYZ PCS ***
Setting 16 bit %s->%s Lut failed: %d, %sDone A to B table creationViewing Condition:  Surround to Image: Dark  Surround to Image: Dim  Surround to Image: Average  Transparency on Light box  Adapted white = %f %f %f
  Adapted luminance = %f cd/m^2
  Background to image ratio = %f
  Image luminance = %f cd/m^2
  Flare to image ratio = %f
  Glare to adapting/surround ratio = %f
  Flare color = %f %f %f
  HK scaling = %f
  Mid tone partial adapation factor = %f
  Mid tone adapted white = %f %f %f
Inking settings:No total limitTotal limit = %f%%
No black limitBlack limit = %f%%
K only black as locus LminNormal black as locus LminInking rule is a fixed K targetInking rule is a fixed locus targetInking rule is a 5 parameter locus function of LInking rule is a 5 parameter K function of LKsmth = %f
Kskew = %f
Kstle = %f
Kstpo = %f
Kenpo = %f
Kenle = %f
Kshap = %f
Inking rule is a 2x5 parameter locus function of L and K auxInking rule is a 2x5 parameter K function of L and K auxMin Ksmth = %f
Min Kskew = %f
Min Kstle = %f
Min Kstpo = %f
Min Kenpo = %f
Min Kenle = %f
Min Kshap = %f
Max Ksmth = %f
Max Kskew = %f
Max Kstle = %f
Max Kstpo = %f
Max Kenpo = %f
Max Kenle = %f
Max Kshap = %f
a a - Absolute Colorimetric (in Jab) [ICC Absolute Colorimetric]awaw - Absolute Colorimetric (in Jab) with scaling to fit white pointaaaa - Absolute Appearancer r - White Point Matched Appearance [ICC Relative Colorimetric]lala - Luminance axis matched Appearancep p - Perceptual (Preferred) (Default) [ICC Perceptual]papa - Perceptual Apperance lplp - Luminance Preserving Perceptualmsms - Saturations s - Enhanced Saturation [ICC Saturation]alal - Absolute Colorimetric (Lab)rlrl - White Point Matched Colorimetric (Lab) Gamut Mapping Specification:  Description = '%s'
  Closest ICC intent = '%s'
  Not using Color Apperance Space - using L*a*b*  Not using Color Apperance Space - using Absoute L*a*b*  Using Color Apperance Space  Using Absolute Color Apperance Space  Scaling source to avoid white point clipping  Not using Mapping  Using Mapping with parameters:  Grey axis alignment   factor %f
  Grey axis white compression factor %f
  Grey axis white expansion   factor %f
  Grey axis black compression factor %f
  Grey axis black expansion   factor %f
  Grey axis knee        factor %f
  Black point algorithm: Neutral axis no-adapt extend and clipNeutral axis fully adaptNeutral axis no-adapt extend and bendNeutral axis no-adapt  Gamut compression factor %f
  Gamut expansion   factor %f
  Gamut compression knee factor %f
  Gamut expansion   knee factor %f
  Gamut Perceptual mapping weighting factor %f
  Gamut Lightness Preserving Perceptual mapping weighting %f
  Gamut Saturation mapping weighting factor %f
  Saturation enhancement factor %f
  HK scale override %f
CTI3CAL'targ' tagicxGetLimits: assert: getting Fwd Lookup failed!icxUnderlyingLimit() failed for chan %d, ilimit %f
���������?���ư>��@�?@���u�<�7~Y@`�`@$@i@ _�B�������@D@{�G�z�?�������?�@�@��@4@@@@-C��6?	��m0_�?�v@D�����c����Mb@?-C��6
?�h㈵��>�+����=333333�?@{�G�z�?D�����cL����MbP?+����?@�������?ffffff�?�חA�ח�,@8#]�T#�?UUUUUU�UUUUUU�?�0��%@�{a���?]@0@���-���q=y�&1����~j�t��?y�&1��?�~j�t����~j�t���y�&1���CIECAM97s3CIECAM02Unknown CAMicxcam: malloc failed allocating object
icxcam: unknown CAM type
�������?�F��E��E�G�)G��F�BG�kH�xH��H��H��H��H��H�I�I�BF�uF��F�NoneCustomAD55D65D75EF5F8F10SpectrocamUnknownOD%dD%dOP%dP%d�I��J�zI��J��I��I��I��I��I��I��I��I��I��I�J�J��J�xJ�HJ�K��J��J�K�lK��K��K��K�L��J��J�?K�Custom observerNo observerCIE 1931 2 degree observerCIE 1964 10 degree observerCIE 2012 2 degree observerCIE 2012 10 degree observerStiles & Burch 1955 2 degree observer (aligned)Judd & Voss 1978 2 degree observerCIE 1964 10 degree observer (aligned)Shaw & Fairchild 1997 2 degree observerEBU Standard Camera 2012Unknown observer�J��J�K��J�K�,K�<K�LK�\K�lK��J��J�EmissionAmbientEmission FlashAmbient FlashReflectiveTransmissiveSensitivityFrequency@K�K�PK�`K�pK��K��K�"K�0K�M0 - DefaultM1 - D50 illuminantD65 IlluminantM2 - U.V. CutM3 - Polarized|K�LK��K��K�\K�lK�SENSITIVITYTRANSMISSIVEREFLECTIVEAMBIENT_FLASHEMISSION_FLASHAMBIENTEMISSIONCUSTOMPOLARIZEDUVCUTD50CMFSPECTArgyll Spectral power/reflectance informationDESCRIPTORArgyll CMSORIGINATORCREATED%dSPECTRAL_BANDS%fSPECTRAL_START_NMSPECTRAL_END_NMSPECTRAL_NORMSPEC_%03dMEAS_TYPEMEAS_CONDITIONSsK�NN�EN�<N�3N�N�KK��M��M��M��M��M��M��M�CCSS, wxspect spec = {
	%d, %f, %f, %f,
	{
		%g%s
		
	}
};,	%d, %f, %f
	%f
		%f%s %d, %f, %f%d: %f�q��s�Yt��s�t�_r�ISO Visual, Type 1, Type 2, VisualStatus A CMYVStatus M CMYVStatus T CMYVStatus E CMYV�t��t��t��t��t��t�icx_init_locus_poly: Matrix inversion failed*������*�����Ȁ����k�r@�@Y@�|�H���?�R��%
�?)�A&��?1_^�}�?Z� �?���(@�wJG@�w(
��@���%��@y;�i��@c�tv2�@j�q���@�c�C�@�����@EGr�I@��9#�!@e�X�#@��_��%@��q�+(@�A�f�*@�"�~j-@��S�%0@"��u�1@|�PkJ3@��Q��4@�o_��6@��6��8@�G�z�:@2�%�<@�o_��>@�\m��@@���A@r�����B@-!�l&D@�4�8EoE@�y�):�F@鷯H@�|гY�I@�ZӼ��J@�_�LmL@�JY�8�M@���KwO@��Mb�P@\��(PQ@��ZӼR@؁sF��R@�ܵ�|�S@46<�T@�S㥛|U@�7��dZV@�|?5^:W@U���NX@Y@h��|?�Y@�����Z@�Zd�[@�C�l�\@��Q��]@X9��n^@bX9�X_@L7�A`!`@����M�`@P��na@V-��a@�����a@�Q��gb@�n���b@L7�A`Mc@��S�c@��n�0d@7�A`�d@���Qe@�A`��~e@�K7�A�e@�S㥛Xf@�����f@}?5^�-g@�O��n�g@o���g@����ch@1�Z�h@sh��|+i@+��i@��x�&�i@H�z�Kj@j�t��j@�p=
�k@=
ףp]k@�MbX�k@d;�O�l@`l@��Q��l@H�z�m@+��Rm@�K7�A�m@�p=
��m@�����5n@!�rh�}n@�ʡE��n@y�&1o@J+�Jo@33333�o@5^�I�o@��K7�p@B`��"!p@�p=
�=p@��ʡYp@]t@`�@Y@{�G�z�?�������?�������?������?������@ffffff@@fffff�#@������)@3333331@ffffff5@�;@�@@�(\��C@33333�G@�(\�•K@fffff�O@�p=
��Q@fffff&T@R���aV@fffff�X@33333sZ@�����\@p]@`^@������^@_@fffff�^@fffff�^@33333�^@33333�^@�(\��_@������^@{�G�^@�����,^@�����9]@fffff\@��Q��Z@33333�Y@�p=
׳X@�����9X@R���1X@�X@\��(�X@fffff�Y@�����Y@�����LZ@{�G�jZ@33333SZ@ףp=
Z@33333�Y@�����	Y@33333sX@�Q���W@�����LW@�G�z�V@�����lV@��Q�5V@�����V@\��(V@fffffV@�p=
�V@V@ףp=
�U@33333�U@��(\�U@�����V@�����V@������U@�G�z�U@33333�U@33333SU@U@=
ףp�T@�����T@��(\�S@33333S@ףp=
�R@�����R@������Q@33333Q@33333�P@�����P@ffffffO@�N@�����N@������M@@M@�����M@M@�����M@@M@����̌M@k�r@�@Y@{�G�z�?{�G�z�?ffffff@�p=
ף@��Q�@��Q��&@�-@�����Y0@33333�1@{�G�z3@�(\�5@{�G�z6@q=
ף�7@33333s9@�(\��:@���Q�9@=
ףp}8@�G�z.;@��Q��=@�Q���C@H�z��H@�G�ztJ@�z�GAL@�(\�"M@�p=
�N@ףp=
wM@)\���L@�G�z�P@�G�z�R@�(\�BT@�U@�Q��;V@ףp=
�V@��(\�V@H�z��V@��(\OW@ףp=
�W@�(\�bW@=
ףp�V@�(\��uW@�G�z�W@{�G�
X@ףp=
'X@H�z�7X@���QHX@ףp=
�X@fffff�Y@�Q��[Y@0Y@�(\�bY@�G�z�Y@
ףp=JY@Y@H�z��X@��(\oX@��Q��X@{�G�X@=
ףp
X@`W@�(\���W@\��(lX@��Q��X@�z�G�X@
ףp=�X@�(\��X@���QXX@�G�z�W@�(\�RX@ףp=
�X@q=
ףPX@{�G��W@�Q��;X@\��(�X@fffff&Y@�Y@�G�zDY@���Q�X@q=
ףPW@���Q�U@��(\_V@fffff�V@W@)\��8W@H�z�7U@fffff6S@�Q��kT@q=
ף�U@33333cV@��Q�%W@�����YU@��Q��S@=
ףp�P@���Q�L@�p=
דQ@{�G�T@fffff&T@�z�G�S@
ףp=�S@33333�S@��Q�S@�����YR@
ףp=*Q@�(\��O@fffff�P@R���Q@ףp=
'R@\��(�R@k�r@�@Y@�R�!�u�?��k	���?B`��"[
@d�]Kȇ'@#�~j<4@0�'�<@+�نB@Gx$@C@�8EGr�C@�^)�7E@��镲tF@33333�F@��|гQG@Ǻ���H@l	��gJ@��	h"�I@��/�H@Gr��'J@4��7�RK@7�A`�,Q@�HP�T@�3���U@�v���V@��^W@k�w��[W@�S㥃V@䃞ͪ�U@�����W@��(\7Z@�C�l�[@��n�@]@
ףp=Z]@���s]@/�$�]@�v���\@+��\@P��n�\@sh��|\@�C�l�3[@h��|?E[@-���V[@�E��$[@��S�Z@m��Z@�(\�2Z@���K�Z@j�t��Z@^�I�Z@R���Z@fffffZ@m��Z@���x�Y@Y@X�2ı�X@��e�cX@Gr��X@�O��n�W@W�/�'W@Έ���+V@��9#VV@O��e�V@A�c�]sV@'†�WfV@��ݓ�)V@�m4���U@�St$�_U@
h"lx�T@�߾��T@?W[���T@�Zd;wT@�X�T@$(~��T@/n��
T@����OT@��yǑT@D�l�T@|a2U0�S@��<,�R@��y�)nQ@&S���Q@���~��Q@-���>R@u�V�R@�"�~�P@Zd;�O�N@䃞ͪoP@�U���xQ@�	�R@!�rh��R@��H�UQ@k+����O@��{�K@��ݓ�5G@��_vONL@�q���P@n��FP@Tt$���O@$�����O@�~j�tP@F��_�N@����׹M@�L�J�K@�n���I@����YK@O��e�L@�x�&1pM@(N@k�r@�@4@�Q���?������@\��(\@������@ffffff@)\���2@@q=
ףp@ffffff@R���Q@��Q�� @�z�GaD@��(\0@�p=
ף$@R����%@������&@)\���'@ףp=
W(@������(@�G�z)@)\��()@
ףp=
)@q=
ף�(@ffffff(@H�z��'@���Q8'@)\���&@333333&@�Q���%@q=
ף�%@R���Q&@�G�z'@=
ףp=(@H�z��;@{�G�1@q=
ף�,@ffffff.@
ףp=�/@�����0@
ףp=�2@�3@H�z��.@H�z�G-@q=
ףp+@�z�Ga)@�p=
�#'@fffff�$@33333�"@�G�z� @H�z�G@�p=
ף@��Q��@������@
ףp=
@�(\��
@
@�p=
ף@�Q���@��Q��@�z�G�?\��(\�?R���Q�?�G�z��?)\��(�?�G�z�?�������?���Q��?333333�?�(\���?
ףp=
�?�(\���?q=
ףp�?�������?��Q���?ףp=
��?�z�G��?ףp=
��?{�G�z�?�������?�G�z�?�������?k�r@�@>@\��(\�?�?�(\���?
ףp=
@\��(\	@)\��(*@�p=
ף@������@�z�G�@�G�z�@\��(\@�����A@ףp=
�(@���Q�@333333!@�Q���"@{�G�z$@�G�z�%@)\���&@�Q��k'@�(\��'@ףp=
W(@��(\�(@�p=
ף(@33333�(@�z�G�(@�����)@\��(\)@
ףp=�)@q=
ףp)@333333)@\��(�(@q=
ףp(@�(\��<@�(\��0@�G�z�'@��Q��'@
ףp=�'@�G�z�'@���Q8-@\��(0@�G�z�(@��(\)@q=
ףp)@ףp=
�)@=
ףp=*@�G�z�*@���Q8+@=
ףp�+@�p=
�#,@ffffff,@R���Q,@�(\�B,@�G�z�,@-@�Q���,@,@)\��()@{�G�%@�(\��#@q=
ףp"@=
ףp=!@�p=
�# @��(\�@ףp=
�@�p=
ף@��Q��@��Q�@ףp=
�@�G�z@H�z�G
@�z�G�
@���Q�@������@333333@�G�z@�(\��@333333@=
ףp=�?�(\��?��Q��?k�r@�@>@�(\���?�������?ףp=
��?=
ףp=�?�G�z��?R���Q(@�(\��@������@�Q���
@��(\�@@R���1A@���Q�-@������$@��Q��%@ףp=
W%@���Q8$@
ףp=�"@�G�z� @)\��(@�p=
ף@�p=
ף0@{�G�0@�z�G�$@�(\��@���Q�
@������@�G�z�?q=
ףp�?��Q���?������?ףp=
�@=
ףp}D@\��(lR@�G�z�@@{�G�z @
ףp=
@�(\��@��Q�@q=
ףp@fffff�&@�G�z�-@R���Q(@q=
ף�!@@��Q�� @��(\F@fffffFA@�G�z.(@�����L(@
ףp=
%@���Q�@333333�?��Q��@��Q��	@)\��(@R���Q@@R���Q�?�������?��Q���?�p=
ף�?ףp=
�?R���Q�?=
ףp=�?��(\�
@�(\��@ffffff@\��(\�?���Q��?�z�G��?�z�G��?���Q��?���Q��?�z�G��?�(\���?�z�G��?)\��(�?�(\���?���Q��?
ףp=
�?_Pt@؈@�?J��P�B�?'†�W��?@�ϝ`��?~�D�<�?t&m���?�đ��?Z_&
�?�Hg`���?�,�s���?�d��R�?7�A`��?S���Ƨ�?��>U���?��[�d��?^��_Q�?��a�?��bE
&�?�-y<-�?������?����?Q.�_x��?7S!�W�?�e�-��?'��rJ@�?�Hi6���?�Y��!�?{����?iQ���?e�u��?$(~����?��^��?�P�����?
��$>��?\t��z��?/R(__�?��yqH�?O���?*T7�?�o
+��?������?��Kb�?���7���?���=�?[��XI�?r„Ѭl�?�1����?,�)W�?@l��TO�?�s�f���?/��CX�?�ǁW��?
9��!��?K?*�?c�={�?��t��?�6�xͫ�?g
�W�B�?��<HO��?����M~�?�X��C�?���B��?�C4��X�?��0�Q�?-&�(j�?)�[Z
��?�#��t.�?ծ	i�A�?���88�?LU����?Ϣw*���?�K�����?$a�N"�?ȳ˷��?���"�?5���c�?o�KS��?؜�gB��?Tȕz�?T8�T���?���kт�?��^��?N�1��?�_Z�'9�?l�F=D#�?�Oqx5�?���W�?{�2Q���?�$\�#�?d"��<�?g{��?�4����?��3�ތ�?Ǜ��,�?��cZ���?�����?{�G�z�?)\��(@@������1@������=@�����9E@fffff�K@fffff&L@fffff�L@fffff�M@fffff�N@33333�N@�N@�����IP@333333Q@fffff�P@33333�O@fffff&P@33333sP@33333T@33333�W@33333�X@333333Z@fffffVZ@�����yZ@fffffVY@333333X@fffffVZ@�����y\@�]@ffffff_@33333c_@`_@������^@33333S^@33333S^@33333S^@�����Y]@`\@33333S\@fffffF\@�����[@33333�[@�����)[@�Z@������Z@333333[@33333�Z@33333SZ@fffff6Z@�����Z@����̌Y@Y@�X@X@33333�W@fffff�W@fffffW@fffffFV@33333sV@�V@������V@33333�V@fffffVV@�����V@����̌U@U@33333#U@fffffFU@�T@�����yT@�T@fffff�T@�T@�����9U@fffff�T@33333ST@fffff&S@������Q@fffffFR@33333�R@fffff�R@�����S@fffffvQ@fffff�O@�P@������Q@fffff�R@@S@fffff�Q@�����LP@�����9L@������G@33333M@fffff&Q@33333�P@@P@`P@�P@�O@�N@33333�L@fffff�J@�����L@33333sM@333333N@33333�N@{�G�z�?�G�z@@fffff�*@ffffff6@�����@@E@fffff�D@�����LD@����̌D@������D@fffff�C@C@�����D@333333E@�����9D@@C@`B@�A@������C@33333�E@�����lF@fffff&G@����̌F@33333�E@@D@����̌B@33333sB@�����YB@fffff&B@33333�A@ A@�����L@@@>@fffff�;@�����:@�����L8@3333336@�����4@fffff&2@3333330@ffffff-@ffffff*@������%@333333!@ffffff@ffffff@������@������@ffffff@ffffff�?ffffff�?������鿚�������ffffff�����������333333����������������333333!������"�#�ffffff$�������%�������%�ffffff%�33333�&�(�*�,�������+�333333+�������)�(������L)�������*�333333*�������)��'�333333%�333333&�333333'�������'�ffffff(�ffffff&�ffffff$�"�333333�#�ffffff&�������%�������$�%�333333%������L$�ffffff#�"������� �������!�������"������#�������#��?@@@@!@�����L @333333@@������@@333333@������@ffffff@333333@@������@333333�?�������?������񿚙������333333�ffffff�ffffff�333333�ffffff����������333333��������ffffff�������������������������������������������ffffff����ffffff����������333333󿚙�������࿚�����ٿ333333ӿ333333ÿ�������?�������?ffffff�?�?�������?������@333333@������	@333333
@ffffff@������@������@������@ffffff@������@������@@333333@������@333333!@ffffff"@������#@$@ffffff$@�"@������ @fffff�!@333333#@�����"@!@@@333333@ffffff@333333@ @ffffff@������@������@������@333333@������@ffffff@333333@������@@������@������@������@@333333@ffffff@333333@@{�G�z�?Ŀ@)\���0@������=@fffff�E@fffff�K@�L@fffff�L@������M@fffff�N@����̼N@�N@^P@333333Q@�P@33333�O@�����9O@33333sP@������S@33333�W@�����bY@333333Z@����̢Z@�����yZ@fffffY@333333X@33333Z@�����y\@�����4^@ffffff_@����̢_@`_@33333�^@33333S^@�����a^@33333S^@33333[]@`\@33333=\@fffffF\@fffff\@33333�[@33333[@�Z@fffff�Z@333333[@�Z@33333SZ@:Z@�����Z@33333�Y@Y@rX@X@33333�W@fffff�W@33333�V@fffffFV@\V@�V@����̦V@33333�V@33333gV@�����V@����̀U@U@fffffU@fffffFU@������T@�����yT@zT@fffff�T@33333U@�����9U@33333�T@33333ST@fffffS@������Q@fffffR@33333�R@fffffS@�����S@33333]Q@fffff�O@fffff�P@������Q@33333�R@@S@�����!R@�����LP@4K@������G@�L@fffff&Q@�����Q@@P@�����eP@�P@�����P@�N@fffff>L@fffff�J@33333�K@33333sM@�N@33333�N@{�G�z�?333333ÿ@�(\�)@ffffff6@�@@E@33333;E@�����LD@fffff�D@������D@33333�C@C@D@333333E@�����xD@@C@������A@�A@ffffffC@33333�E@33333�F@fffff&G@fffff�F@33333�E@0D@����̌B@33333CB@�����YB@�����=B@33333�A@33333?A@�����L@@�����D>@fffff�;@�����:@�����L8@86@�����4@333332@3333330@�����|-@ffffff*@����̼%@333333!@������@ffffff@����̌@������@ffffff@ffffff�?�?������鿚�������333333����������@�333333������9���������������333333!������"�#�������$�������%�����̜%�ffffff%������l&�(�fffff6*�,������,�333333+�33333c)�(�fffff&)�������*�fffff�*�������)�33333S'�333333%�fffff�%�333333'������,(�ffffff(�fffff�&�ffffff$�33333S!�333333�������"�ffffff&�&�������$�33333%�333333%��$�ffffff#�33333�!������� ������\!�������"�fffff�#�������#���?@�@@����̬@!@!@333333@�����,@������@fffff�@333333@�����9@ffffff@������@@ffffff@333333�?������������������������ffffff��333333󿚙���������������333333�������ffffff�����̌���������������������������������������333333����������333333�����������ؿ333333ӿ333333ÿ�������?�������?�������?�?�?������@����̌@������	@33333s
@ffffff@������@������@�����Y@ffffff@����̌@������@33333@333333@fffff�@333333!@33333�"@������#@33333c$@ffffff$@33333c"@������ @������!@333333#@33333s"@!@33333�@@������@ffffff@����̬@ @�@������@������@������@������@������@fffff�@333333@������@@33333@������@�@@�@ffffff@������@@���H�?�PS�'׿�3��7�п���{h�?���?+�WY��?��~�{����g��?��v���?�q�߅��?;��.R��?��J�.���@@�?��.A |@��&�.>����������ư>�@�Q@��@@9@Ё@
ףp=
@@;�O��n�?@�������?/�$���?��MbX�?333333@��@H�����z>oH�'��?��@j�@X�@ܓ)�|�FAףp=
�X@k��t=�?����=A��(\�n@��SW�?��(\��@�������?�
O��e�?��H�}�?=�U����?���&S��0L�
F�@9��v���?�[ Aq?��c�Z>@���Q��?�r@Y@�mnLOX�? ����m�o
l�`q�?�je�/u���R�Z�@�p>?��?R~R��q?����Mb>@U�t<f��?{�G�z�?�z�]ʢ>O��e�c�?FX�ѥlF�Y���tw�?��@�Z@�x@�z@>@|�@L�@�?��.��h㈵��>e��A:�0�yE>$@���(\��?�)���h?ףp=
�)@�������?�z�G��?)\��(�??�ܵ�?�����?y@�@�������?��@(�@sh��|?�?�c�]K��?|���@����L��@�G�zT��@@�@@�@=�ˉ,ѿ�)�dq��?��:�?�wJ�?��18�4��u��6�@�5�9K�?L�$z��?\�@pq������vFܑ�?�4|@<9���?��D��Ӓ�b���?��E �@`��Dp�?�}�p�@�EY~@N�nP@֣x�R��?@�@���S�?V-��?B`��"��?��_vOv?�S㥛�0@X9��v�%@�G�z@ffffff@�?��@�@��@�w@�������?2@�?H�z�G	@�f@ �@�k@�u@CALArgyll Device Calibration CurvesDESCRIPTORArgyllORIGINATORCREATEDINPUTDEVICE_CLASSOUTPUTDISPLAYUnknown device class '%s'COLOR_REPNOVIDEO_LUT_CALIBRATION_POSSIBLEYESTV_OUTPUT_ENCODINGMANUFACTURERMODELDESCRIPTIONCOPYRIGHT%s_I%s_%sInput file '%s' can't be a CAL format fileInput file '%s' isn't a CAL format fileCalibration file '%s'doesn't contain keyword DEVICE_CLASSCalibration file '%s' contain unknown DEVICE_CLASS '%s'Calibration file '%s'doesn't contain keyword COLOR_REP
    *** Calibration file '%s'doesn't contain keyword COLOR_REP, assuming RGB ***RGBCalibration file '%s' has unrecognized COLOR_REP '%s'yesCalibration file '%s' has too few entries %dCalibration file '%s' doesn't contain field '%s'malloc dpoints[%d] failed�u�<�7~�?�?�icxColorantLu: malloc failed allocating object
CCyanMMagentaYYellowKBlackOOrangeRRedGGreenBBlueWWhitecLight CyanLightCyanmLight MagentaLightMagentayLight YellowLightYellowkLight BlackLightBlack2cMedium CyanMediumCyan2mMedium MagentaMediumMagenta2yMedium YellowMediumYellow2kMedium BlackMediumBlack1kLight Light BlackLightLightBlackPrint greyVideo greyPrint RGBVideo RGBCMYKCMYCMYK + Light CMCMYK + Light CMKCMYK + Red + BlueCMYK + Orange + GreenCMYK + Red + Green + BlueCMYK + Orange + Green + BlueCMYK + Light CMK + Light Light KCMYK + Orange + Green + Light CMCMYK + Light CM + Medium CM�?#���?ףp=
�)@)\��(�?�z�G��?333333@������@rrbV	!4	!			setup_xfit: asert, %d exceeded MXPARMS %dxfit_fit: assert tot_cnt exceeds MXPARMSInitial White Point XYZ %f %f %f, Lab %f %f %f
About to optimise temporary matrixxfit_fit: Conjgrad failed to converge, residual error = %fAbout to optimise a common ord 0 input curve and matrixAbout to optimise a common input curve and matrixAbout to optimise input curves and matrixAbout to optimise output curves and matrixAbout to optimise input curves and matrix againAbout to optimise input, matrix and output togetherAbout to adjust a and b output curves for white pointxfit_fit: Powell failed to converge, residual error = %fAbout to create grid position input curvesCreate final clut from scattered dataDoing White point fine tune:Before fine tune, rel WP = XYZ %f %f %f, Lab %f %f %f
After fine tune, rel WP = XYZ %f %f %f, Lab %f %f %f
                 abs WP = XYZ %s, Lab %s
White manual point scale %f
Dev boundary white XYZ %s, scale WP by %f, total WP scale %f
WP Y would ve > 1.0. scale by %f to clip it
Clipping any cLUT grid points with Y > 1 to D50%c% 3d%%����Mb`?�?@4@N@-C��6?:�0�yE>Y@��.A����MbP?��?333333�?�������?�������?�X@{�G�z�?cam02: malloc failed allocating object
�?�?333333�?333333�?�<��cܥL@�v@@j@�t@I@^@T@�a@�������{�G�z�?9�R�Fߑ?{�G�z�?�V@-DT�!	@�f@�?�r@���ư>���Q���?@�N��N�@ffffff@r�q��?r�q��?�q�q�?�����?s�_鳒�?�U�nF�?0h��yR�?��G5���?�"?�?�و�%�@�������?�0�0@�z�G!;@y@��&�.>UUUUUU�?@@�������?�������?��<
ף�?�p=
ף�?ffffff�?333333�?�-���q=�z�G��?Y@�����|�=�������?�������?{�G�zt?@�z�G��?ffffff�?�G�z�?L7�A`�?HP�s�?t$���~�?Dio���?2�%��)\��(�?�HP�x?E@W@������@ݦ��?wl�:��??෡��?2�s:C�?w^�u��?hs�i'�?ʥ\ţ�������Vw?
R&�>�?��(\��?\��(\�?=
ףp=�?@333333�?�G�z��?��(\��?�@@cam97s3: malloc failed allocating object
�������?�������? �rh���p=
�#4@�� �rh�?��������ףp=
wQ@�������?433333�?�R@�V@ffffff�?�������?R���QR@�d@�?�C�l�տ�G�z�^@)\���m@333333�?{�G�z�?�C�D@�cܥL@�v@�?��������.DT�!	@�f@�r@@�=
ףp=�?ϡ�,�q�?�|гY��?ffffff@�N��N�@�����|�=�p@-d!Y�@�Mozӛ�?�����?s�_鳒�?�U�nF�?0h��yR�?��G5���?�"?�?�و�%�@�^�z��?@�C@�D@�Z��e+�?pO�Wî�?jF*��?�l�:�X���+�@B�l/�?i9���?��<s��?��fK�?��Դǘ�?����3��?��^�?�?�@�����?����u��?�J;q��? ��l���6�~Sy�?�A����?��ڊ�e�?M�
O���?o��T��?��n���46<�R�?F%u�k?�4�8EG�?�c]�F�?vq
�-�?����G�?�t����?a-����?�d�z��?"����?��~26�?\��(\�?�S@(@&@�q�q�?�������?�������?�A`��"�?Y@{�G�zt?�������?�?��(\��?��(\��?=
ףp=�?@@UUUUUU�?�������?333333�?mcb_get_params malloc failedMalloc failedMcv max - min %e too smallMcv fit conjgrad failed with %d points:
  %d: %f -> %f
Mcv fit conjgrad failed{�G�z�?�?�?ffffff�?��@{�G�z�?���*���DZ�*���G�-���q=DTP20DTP22DTP41DTP51DTP92DTP94SpectrolinoSpectroScanSpectroScanTSpectrocami1D1i1D2i1D3i1 Monitori1Proi1Pro2i1Pro3ColorMunkiHCFRSpyder1Spyder2Spyder3Spyder4Spyder5SpyderXHueySmilespecbos 1201specbosspectravalK-10EX1CubeColorHugColorHug2Unknownm�����������x��h��X��H��8��(�����������ر�ȱ�������������x��h��X��H��8��(�����������ذ�Ȱ�������������X-Rite DTP20X-Rite DTP22X-Rite DTP41X-Rite DTP51X-Rite DTP92X-Rite DTP94GretagMacbeth SpectrolinoGretagMacbeth SpectroScanGretagMacbeth SpectroScanTGretagMacbeth i1 Display 1GretagMacbeth i1 Display 2X-Rite i1 DisplayPro, ColorMunki DisplayGretagMacbeth i1 MonitorGretagMacbeth i1 ProX-Rite i1 Pro 2X-Rite i1 Pro 3X-Rite ColorMunkiColorimtre HCFRColorVision Spyder1ColorVision Spyder2Datacolor Spyder3Datacolor Spyder4Datacolor Spyder5Datacolor SpyderXGretagMacbeth HueyColorMunki SmileJETI specbos 1201JETI specbosJETI spectravalKlein K-10Image Engineering EX1SwatchMate CubeHughski ColorHugHughski ColorHug2Unknown Instrument���̱�������������|��l��\��L��<��,�����������ܰ�̰�������������|��l��\��L��<��,�����������ܯ�̯�������Xrite DTP20Xrite DTP22Xrite DTP41Xrite DTP51Xrite DTP92Xrite DTP94GretagMacbeth i1 DisplayXrite i1 DisplayX-Rite i1 DisplayXrite i1 DisplayProX-Rite i1 DisplayProColorMunki DisplayXrite i1 DisplayPro, ColorMunki DisplayXrite i1 ProX-Rite i1 ProXrite i1 Pro 2Xrite i1 Pro 3XRite ColorMunkii�����������������������i��i��i��i��i�����i��i��i��i��i��i�����������NATIVEXRDIGMDIXRGANonegamut::getssvert() vertex doesn't have a trianglegamut::getssvert() new_sobol() failedgamut: malloc failed on %d gvert pointer
gamut: realloc failed on %d gvert pointer
gamut: malloc failed on gvert object
gamut: calloc failed on gquad object
gamut: internal error - face match inconsistency
gamut: malloc failed - bspn node
gamut: malloc failed - bspl triangle tree node
gamut: malloc failed - gamut surface triangle
gamut: malloc failed - triangle edge
gamut: calloc failed on gamut object
gamut internal error: ran out of recursion depth in BSPgamut: malloc failed - pos sub-list
gamut: malloc failed - neg sub-list
gamut: malloc failed - top level triangle list (%d entries)
REDCan't add read into gamut after it is initialised!
GAMUTInput file '%s' error : %sInput file isn't a GAMUT format fileInput file doesn't contain exactly two tablesCOLOR_REPJABSURF_TYPERASTERCSPACE_WHITECSPACE_BLACK%lf %lf %lfGAMUT_WHITEGAMUT_BLACKYELLOWGREENCYANBLUEMAGENTACUSP_%sNo verticiesNo trianglesLAB_LInput file doesn't contain field LAB_LField LAB_L is wrong typeLAB_AInput file doesn't contain field LAB_AField LAB_A is wrong typeLAB_BInput file doesn't contain field LAB_BField LAB_B is wrong typegamut: malloc failed on gvert pointer
VERTEX_0Input file doesn't contain field VERTEX_0Field VERTEX_0 is wrong typeVERTEX_1Input file doesn't contain field VERTEX_1Field VERTEX_1 is wrong typeVERTEX_2Input file doesn't contain field VERTEX_2Field VERTEX_2 is wrong type.gam file triangle data is not consistent
tp1->e[%d] = 0x%p, tp2->e[%d]= 0x%p
Can't add points to gamut now!
gamut: internal error - failed to register a fake initial verticies!
Argyll Gamut surface poligon dataDESCRIPTORArgyll CMS gamut libraryORIGINATORCREATEDLAB%f %f %fGAMUT_CENTERFirst come the triangle verticy locationVERTEX_NOAnd then come the trianglesError writing to file '%s' : '%s'
Error creating %s output '%s%s'
Error closing output file '%s%s'
gamut: calloc failed - gnn structure
Failed to allocate sorted index arrayrspl.radial: failed to find radial triangle
radial_point: failed to intersect radial triangle, num %e, denom %e
gamut: radial internal error - failed to find triangle (rv %f)
�?<k�]h��?��?��!�� տ�迯�!�� տ��?@@�?�?�?�?�������?�?�?�?�������?�?�-���q��-���q=�����|�=Y@��������:�0�yE>��*���G�?��.����ư>�?H�����z>��&�.>@�@@����.A�f@�v@-DT�!	@.@$@�������?��*����-DT�!	��-C��6?*4�����X�����|۽4@)\��(�?@�������?@D@@@��x���h㈵��>��:Ft�
N��:Ft�
�3t�<{�3t�<{��������G������?8��?0�D�?rspl malloc failed - filter_rsplrspl malloc failed - filter_rspl arrayrspl: malloc failed - main structurerspl: can't handle input dimension %drspl: can't handle output dimension %drspl malloc failed - hi[]rspl malloc failed - fhi[]rspl malloc failed - grid pointsrspl: grid res must be >= 2!rspl malloc failed - center cell points�?@��x��@��x�D�������?�?rspl: malloc failed - mgtmpscat: malloc failed - ipos[]rspl: Data point %d outside grid %e <= %e <= %erspl malloc failed - xcolrspl internal: exceeded xcol boundsrspl malloc failed - ixcolMalloc of A[][] failed with [%d][%d]Malloc of b[] failedMalloc of x[] failedMalloc of n[] failedMalloc of z[] failedMalloc of xx[] failedMalloc of q[] failedMalloc of r[] failedrspl: fit can't handle di = %drspl: fit can't handle fdi = %drspl: grid res must be >= 2!rspl: malloc failed - ipos[]rspl: ipos[%d][%d] to ipos[%d][%d] is nearly zero!rspl: malloc failed - ires[][]rspl: internal error, final res %d != intended res %d
rspl malloc failed - data pointsAutomatic local smoothing flag ignored !!!�333333������������������������������ffffff�ffffff�������������������������ffffff�333333�ffffff
�333333��ffffff���������������������
���������������ffffff��������333333�����������������ffffff������������������333333��������������	�ffffff��������ffffff�333333�ffffff
����������������ffffff�ffffff����������������������ffffff���������������������
��������333333��ffffff����������333333���������������333333����������������������������������������ffffff�ffffff���������������333333��������333333����������������������ffffff�ffffff�ffffff��ffffff�333333��������333333�ffffff�ffffff�ffffff�ffffff�333333����������������������ffffff�ffffff
�333333��������333333�ffffff�333333�333333������������������������333333�333333���333333���������������ffffff�ffffff��������333333�ffffff�ffffff
�ffffff��ffffff��������333333��ffffff��������333333����������������������	�ffffff��������333333���������ffffff�������	�ffffff����333333��������	��333333�ffffff���333333�������
�ffffff
��ffffff�ffffff����������333333�333333�������	���������333333�333333�ffffff�333333��������ffffff�����������������ffffff���������333333����������������333333��������������	�ffffff����������������333333���ffffff���������ffffff��ffffff�������
���������ffffff�ffffff������"�`�	
#### eri.p, pbclevtug 1995-2008 Tenrzr J. Tvyy, TCY3 Yvpraprq Irefvba ####
re ####
cbp ,p.i1 gutvel8002-599 rzrneT ,yyvT .JvY 3YCT I qrparp# abvfer
###�?@$@-C��6?��"�`�	��������?���������?H�����z>�-���q=�?@�9��B.�?�9��B.�?s�>�;0�+����?rspl auxiliary reverse interp called with di <= fdi (%d %d)rspl: rev_get_limit can't handle di = %drspl: rev_get_limit can't handle fdi = %daorthog called with cent %s
 Axis %d
  aa %d: trad %f nrad %f, diff %f, len %f, ang %f
  dot is %f
 returning %f
rspl rev, internal, trying to cope with zero length clip line
getsharelist got list with sharelist index out of range (%d > %d)init_search: Unknown operation %d
��������L��|��rspl cell cache assert: refcount overdecremented!sareisrev_reduce_cache: run out of rev virtual memory! (want %d, got %d)%cThere %s %d rev cache instance%s with %lu Mbytes limit
rspl malloc failed - rev.sb structurerspl malloc failed - reverse bxcell surface cache indexrspl malloc failed - trirec cache indexrspl malloc failed - assdirrspl malloc failed - trilistrspl malloc failed - rev vtxrec sort arraysorted vertex list:%d: ix %d, dist %f
rspl malloc failed - rev trirec structsrspl malloc failed - rev vtxrec structsrspl malloc failed - rev.grid listRe-allocating shared fwd index listrspl realloc failed - rev.grid list size %drspl malloc failed - rev bxcell structsrspl malloc failed - rev bxcell vertex listadd2sharelist: realloc failedadd2sharelist got list with sharelist index out of rangerspl malloc failed - fxcell sub-simplex matriciesInk limit tri doesn't have one opposite signInk limit tetrahedron doesn't have one opposite signrev: lchw_nnearest_clip_solve sdi = %d
Internal error - auxil_locus got sdi != efdi (%d < %d)rev: malloc failed - Auxiliary intersect list size %drev: realloc failed - Auxiliary intersect list size %dError - auxil_solve got sdi < efdi (%d < %d) - don't know how to handle thisInternal error - auxil_solve got mismatching number of auxiliariesrspl rev, internal, trying allocate already allocated simplexes
rev: malloc failed - temp simplex filter list, count %drspl malloc failed - fxcell simplexes - list of pointersrspl malloc failed - fxcell simplexes - base simplex %d bytesrspl malloc failed - reverse simplex cache indexrspl malloc failed - reverse fxcellsrspl malloc failed - fxcell cache indexrev create_nnrev_list: found empty surface bxcell %dcreate_nnrev_list got NULL new list
rspl malloc failed - rev create_nnrev_list emin arrayrspl realloc failed - create_nnrev_list%cLooks like an XYZ space
%cInitializing nnrev arrays...
rspl malloc failed - rev.vflag points%cFast nnrev initialization done
rspl malloc failed - calc_ocent arrayscalc_ocent powell failedcalc_ocent failed to return in-gamut focal point!Surface list bxcell ix %d has no vertexesrspl malloc failed - vtxrec cache indexARGYLL_UNTWIST_GAMUT_SURFACEcalc_surflin: new_rspl failedcalc_surflin: malloc of %d rspl setup points failedFailed to find vertex %s in cacherspl malloc failed - rev tvxrec structsrspl malloc failed - rev tvxrec sort arrayrev - failed to locate vertex %d
Surface list bxcell ix %d has no fwd cellsSurcface cell nnrev[%d] is empty!
nncel[%d] in seed list is not empty
rspl rev get_surface_bxcell %d failedrspl rev get_surface_bxcell %d failed #2, vflag = %x%cnnrev initialization done
rev crossing test - failed to get vertexget_vtxrec() failed on surface vtxvflag[%d] = %x, but cell is in surface list hash
rev: malloc failed - candidate cell list, count %d%cWarning - Reverse Cell Cache exausted, processing in chunksDiagnostic: rev.sz = %lu, rev.max_sz = %lu, numlocked = %d, nunlk = %d
Not enough memory to process in chunksrspl: rev_set_lchw can't handle di = %drspl: rev_set_lchw can't handle fdi = %drspl: rev_set_limit can't handle di = %drspl: rev_set_limit can't handle fdi = %drspl malloc failed - fxcell sub-simplex info arrayKERNEL32GlobalMemoryStatusExUnable to link to GlobalMemoryStatusEx()%cWarning - Unable to get system memory size%cWarning - System RAM size seems very small (%d MBytes), assuming 256Mb insteadARGYLL_REV_CACHE_MULT%cRev cache RAM = %lu Mbytes
rspl rev, internal, init_ssimplex_info called on already init'd
ARGYLL_REV_ACC_GRID_RES_MULTrspl malloc failed - rev.grid pointsrspl malloc failed - rev.nngrid pointsrspl malloc failed - fxcell cache���T��!�������rspl: rev_locus_segs can't handle di = %drspl: rev_locus_segs can't handle fdi = %drspl: rev_interp can't handle di = %drspl: rev_interp can't handle fdi = %dfill_nncell: rev[] is emptyfill_nncell: search for rev[] cells failed����>{�G�z�?��*���G���?�������#B����;�?����@�?࿍��ư>�����I@�v�������>Zb���ti�?@��*����Ĭ��Ȏ�?�:<��v	@@-DT�!@�?�������?���Q��?ffffff�?�������?Y@333333�?�������?�C�C�E@4@����Mb`?rspl_gam: get_edge calloc failed~1 new edge %d with nodes = %d %d
rspl_gam: plane equation for out dimensions other than 2 or 3 not supported!~1 returning edge no %d
rspl_gam: get_vert got out of range gix %d
rspl_gam: get_vert calloc failedgam: gam_comp_gamut called for di = %d, fdi = %d
Gamut center is %s%f Gamut scale is Sub-simplex dim %d out of input %d
Number of subsimplex = %d
Cube Offset = %d Grid Offset = gam: allocating vertex hash array failedgam: allocating edge hash array failedgam: allocating tris hash array failedStarting point = gix %d/%d
rspl_gam: get_ssimplex_nodes fatal error - too many nodes?rspl_gam: get_ssimplex_nodes fatal error - retrurned no nodes?~1 get_ssimplex_nodes returned %d nodes
 ~1 %d: %d
~1 node %d angle = %f
~1 chosen node %d
Working up ssdim %d -> %d
~1 Created initial edge~1 expanding from edge no %d
~1 edge v1 = %d = %f %f %f
~1 edge v2 = %d = %f %f %f
~1 node gix %d has rad %f side %d to edge %d %d
~1 -ve nodes:~1 +ve nodes:~1 node %d, rad %f
~1 direction = %d
~1 Looking for biggest angle, inc = %d
~1 No points to search~1 Candidate %d: node %d
~1 lu_decomp failed~1 A = ~1    %f %f %f
lu_decomp failed~1 Test %d: node %d
~1 candidate isn't best~1 candidate IS the best~1Inconsistent candidate orderingInconsistent candidate ordering~1 there are only %d nodes, so don't search them
~1 Making triangle with %d: node %d
~1 make_tri called~1 make tri gix = %d, hash = %d
rspl_gam: make_tri calloc failedrspl_gam: make_tri run out of triangle space %d in edge###### Unable to locate +ve triangles for edge %d
###### Unable to locate -ve triangles for edge %d
~1 edge no %d, npt = %d, nnt = %d
~1 triangle nodes = %d %d %d
new_vrml failed for '%s%s'
���?�����|۽rspl malloc failed - interp_rspl_nlrspl, opt: tdi %d > MXDI %drspl, opt: adi %d > 2 * MXDI %drspl: grid res must be >= 2!rspl: malloc failed - omgtprspl omgtp malloc failed - hi[]rspl omgtp malloc failed - fhi[]rspl malloc failed - multi-grid points�?@333333�?����?�? @i@T@���A���ư>�������?$@rspl: spline can't handle di = %drspl: spline can't handle fdi = %drspl malloc failed - tangecy pointsrspl malloc failed - hermite magic matrix data�?�?��@�@�?��?�?�?@��@Lut8:
Lut16:
  Input Channels = %u
  Output Channels = %u
  CLUT resolution = %u
  Input Table entries = %u
  Output Table entries = %u
  XYZ matrix =  %.8f, %.8f, %.8f
                %.8f, %.8f, %.8f
  Input table:
    %3u:  %1.10f

  CLUT table:
  !!Can't dump > %d input channel CLUT table!!
    %2u:
  Output table:
NamedColor:
NamedColor2:
  Vendor Flag = 0x%x
  No. colors  = %u
  No. dev. coords = %u
  Name prefix = '%s'
  Name suffix = '%s'
    Color %lu:
      Name root = '%s'
      XYZ = %.8f, %.8f, %.8f
      Lab = %f, %f, %f
      Unexpected PCS
      Device Coords = , %.8fColorantTable:
  No. colorants  = %u
    Colorant %lu:
      Name = '%s'
VideoCardGammaTable:
  channels  = %d
  entries   = %d
  entrysize = %d
  channel #%d
    %d: %d
VideoCardGammaFormula:
  red gamma   = %.8f
  red min     = %.8f
  red max     = %.8f
  green gamma = %.8f
  green min   = %.8f
  green max   = %.8f
  blue gamma  = %.8f
  blue min    = %.8f
  blue max    = %.8f
  Unknown tag format
%d %s %4d, %d:%02d:%02dicmHeader_read: wrong magic number 0x%xicmHeader_read: file size %d too small to be legalicc_read_tag_ix: index %d is out of rangeicmLut_alloc: Can't handle %d input channels
icmLut_alloc: Can't handle > %d input channels
icmLut_alloc: Can't handle > %d output channels
icmCurve_write: write_UInt16umber(%.8f) failedicmCurve_write: write_U8Fixed8umber(%.8f) failedicmCrdInfo_alloc: malloc() of CRD%d name string failedicmColorantTable_alloc: count overflow (%d of %lu bytes)icmVideoCardGamma_write: write_S15Fixed16Number() failedicmLut_write: inputTable write_DCS16Number(%.8f) failedicmLut_write: clutTable write_DCS16Number(%.8f) failedicmLut_write: outputTable write_DCS16Number(%.8f) failedicmUcrBg_write: write_DCS16umber(%.8f) failedicmData_read: Unknown flag value 0x%xicmCrdInfo_write: CRD%d name is not terminatedicmCrdInfo_read: Data too short to read CRD%d nameicmCrdInfo_read: Data to short to read CRD%d stringicmCrdInfo_read: CRD%d name is not terminatedUInt8Array:
  No. elements = %lu
    %lu:  %u
UInt16Array:
UInt32Array:
UInt64Array:
    %lu:  h=%lu, l=%lu
U16Fixed16Array:
    %lu:  %.8f
S15Fixed16Array:
Curve:
  Curve is linear
  Curve is gamma of %.8f
    %3lu:  %.8f
icmColorantTable_read count overflow, count %x, len %dDateTimeNumber:
  Date = %s
PerceptualRelative ColorimetricSaturationAbsolute ColorimetricAbsolute PerceptualAbsolute SaturationDefault IntentUnrecognized - 0x%xUnknownD50D65D93F2D55AEqui-Power(E)F8P}�`}�p}��}��}��}��}�2}�@}�Viewing Conditions:
%.8f, %.8f, %.8f  XYZ value of illuminant in cd/m^2 = %s
  XYZ value of surround in cd/m^2   = %s
  Illuminant type = %s
Printer DefaultRoundDiamondEllipseLineSquareCross$~�4~�D~�T~�d~�t~�~�~�1931 Two Degrees1964 Ten Degrees0/45 or 45/00/d or d/0Screening:
  Flags = %s
  No. channels = %u
    %lu:
      Frequency:  %f
      Angle:      %f
      Spot shape: %s
icc_set_version: Unsupported version 0x%xUndercolor Removal Curve & Black Generation:
  UCR: Not specified
  UCR: %f%%
  UCR curve no. elements = %u
  %3lu:  %f
  BG: Not specified
  BG: %f%%
  BG curve no. elements = %u
  Description:
    No. chars = %lu
...
      0x%04lx: %c\%03oText:
  No. chars = %lu
    0x%04lx: TextDescription:
  ASCII data, length %lu chars:
  No ASCII data
  Unicode Data, Language code 0x%x, length %lu chars
%04x   No Unicode data
  ScriptCode Data, Code 0x%x, length %lu chars
%02x   No ScriptCode data
Data:
  ASCII data
  Binary data
  Undefined data
            %c PostScript Product name and CRD names:
  Product name:
  CRD%ld name:
Unknown:
  Payload size in bytes = %u
            %c      ...
icmNamedColor_read: Can't handle more than %d device channels���H�������������X��h��x����������8��h�����������h��}����,��L��p����������L��|�����������
����<��\��|��������0x%x'%c%c%c%c'InputDisplayOutputLinkAbstractColor SpaceNamed ColorUnrecognized - %sXYZLabLuvYCbCrYxyRGBGrayHSVHLSCMYKCMY2 Color3 Color4 Color5 Color6 Color7 Color8 Color9 Color10 Color11 Color12 Color13 Color14 Color15 ColorYu'v'YLLptPCSMacintoshMicrosoftSolarisSGITaligent*nixAToB0 Multidimentional TransformAToB1 Multidimentional TransformAToB2 Multidimentional TransformBlue ColorantBlue Tone Reproduction CurveBToA0 Multidimentional TransformBToA1 Multidimentional TransformBToA2 Multidimentional TransformCalibration Date & TimeChromatic AdaptationCharacterization TargetCopyrightCRD InfoDevice Manufacturer DescriptionDevice Model DescriptionGamutGray Tone Reproduction CurveGreen ColorantGreen Tone Reproduction CurveLuminanceMeasurementMedia Black PointMedia White PointNamed Color 2Preview0Preview1Preview2Profile DescriptionProfile SequencePS Level 2 CRD perceptualPS Level 2 CRD colorimetricPS Level 2 CRD saturationPS Level 2 CRD absolutePS Level 2 color space arrayPS Level 2 Rendering IntentRed ColorantRed Tone Reproduction CurveScreening DescriptionScreening AttributesDevice TechnologyUnder Color Removal & Black GenerationVideo Card Gamma CurveViewing Condition DescriptionViewing Condition ParamatersAbsolute to Media Relative Transformation Space matrixicc_delete_tag: Tag '%s' not foundicc_unread_tag: Tag '%s' not foundicc_rename_tag: Tag '%s' not foundicc_read_tag: Tag '%s' not foundDigital CameraFilm ScannerReflective ScannerInkJet PrinterThermal WaxPrinterElectrophotographic PrinterElectrostatic PrinterDyeSublimation PrinterPhotographic Paper PrinterFilm WriterVideo MonitorVideo CameraProjection TelevisionCathode Ray Tube DisplayPassive Matrix DisplayActive Matrix DisplayPhoto CDPhoto ImageSetterGravureOffset LithographySilkscreenFlexographySignature
  Technology = %s
icmTextDescription_read: Wrong tag type ('%s') for icmTextDescriptionProfileSequenceDesc:
  No. elements = %u
DescStruct %u:
  Dev. Mnfctr.    = %s
  Dev. Model      = %s
  Dev. Attrbts    = %s
  Dev. Technology = %s
icc_link_tag: Can't find existing tag '%s'icc_link_tag: Existing tag '%s' isn't loadedicc_link_tag: Already have tag '%s' in profileicc_add_tag: Already have tag '%s' in profileicc:
tag %d:
  sig      %s
  type     %s
  offset   %d
  size     %d
Unable to read: %d, %s
icc_unread_tag_ix: index %d is out of rangeicc_unread_tag: Tag '%s' not currently loadedCIE XCIE YCIE ZCIE L*CIE a*CIE b*CIE u*CIE v*ITU YITU CbITU CrCIE xCIE yRGB HueRGB SaturationRGB ValueRGB LightnessCyanMagentaYellowRedGreenBlueBlackptCurveDataDateTimeLut16Lut8Profile Sequence DescS15Fixed16 ArrayScreeningSignatureTextText DescriptionU16Fixed16 ArrayUInt16 ArrayUInt32 ArrayUInt64 ArrayUInt8 ArrayVideo Card GammaViewing ConditionsXYZ (Array?)BackwardMonoBwdenum2str got unknown typeMonoFwdLutMatrixBwdMatrixFwdForwardPreviewUnrecognized - %d$��4��D��T��������������������������������4��D��T�����a��U��I��=��m��icmSetMultiLutTables has illegal number of tables %d%s%s[%d][%d]
%s %f%sicc_chromAdaptMatrix called with no deviceClass!
icc_get_luobj: Unknown intent (0x%x)icc_read: tag count %d is too large to be legalicc_read: tag %d sig %s offset %d size %d is out of range of the nominated file size %dicc_read: fseek() or fread() failed on tag headers%.8f, %.8f, %.8f    [Lab %f, %f, %f]Header:
  size         = %d bytes
  CMM          = %s
  Version      = %d.%d.%d
  Device Class = %s
  Color Space  = %s
  Conn. Space  = %s
  Date, Time   = %s
  Platform     = %s
  Flags        = %s
  Dev. Mnfctr. = %s
  Dev. Model   = %s
  Dev. Attrbts = %s
  Rndrng Intnt = %s
  Illuminant   = %s
  Creator      = %s
  ID           = %02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X
  ID           = <Not set>
XYZArray:
    %lu:  %s
Measurement:
  Standard Observer = %s
  XYZ for Measurement Backing = %s
  Measurement Geometry = %s
  Measurement Flare = %5.1f%%
  Standard Illuminant = %s
In     = %.8f %.8f %.8f
Target = %.8f %.8f %.8f
Q Sum     = %.8f %.8f %.8f
Q cor Sum = %.8f %.8f %.8f
icc_write: Adding 'chad' tag failedicc_write: Allocating 'chad' tag failedicc_check_legal: deviceClass %s is missing required tag %sicc_write compute ID failed with code %dARGYLL_CREATE_WRONG_VON_KRIES_OUTPUT_CLASS_REL_WPARGYLL_CREATE_DISPLAY_PROFILE_WITH_CHADARGYLL_CREATE_OUTPUT_PROFILE_WITH_CHAD%d%f ZYX�?8baL`�`�Y@�_@�_@2baL`�`�Y@��_@��_@4baL`�`�Y@�_@�_@   Y�?8  LY@2  LY@4  LY@ vuL`�`�Y@��_@��_@rbCY���?�?�? yxY�? BGR�?YARG�? VSH�? SLH�?KYMC�? YMC�?6HCM�?RLC2�?RLC3�?RLC4�?RLC5�?RLC6�?RLC7�?RLC8�?5HCM�?6HCM�?7HCM�?8HCM�?RLC9�?RLCA�?RLCB�?RLCC�?RLCD�?RLCE�?RLCF�?�����?BadJanFebMarAprMayJunJulAugSepOctNovDecrncs�������� SCPcsedCRTktptwtrpc����rncs�������� ZYXcsedZYXrZYXgZYXbCRTrCRTgCRTbtptwtrpc����rncs�������� SCPcsed0B2Atptwtrpc����rtnm�������� SCPcsedCRTktptwtrpc����rtnm���� BGR ZYXcsedZYXrZYXgZYXbCRTrCRTgCRTbtptwtrpc����rtnm�������� SCPcsed0B2Atptwtrpc����rtrp�������� SCPcsedCRTktptwtrpc����rtrp�������� SCPcsed0B2A0A2Btmag1B2A1A2B2B2A2A2Btptwtrpc����rtrp�������� SCPcsed0B2A0A2Btmag1B2A1A2B2B2A2A2Btptwtrpc����rtrp�������� SCPcsed0B2A0A2Btmag1B2A1A2B2B2A2A2Btptwtrpc����rtrp�������� SCPcsed0B2A0A2Btmag1B2A1A2B2B2A2A2Btptwtrpc����rtrp�������� SCPcsed0A2B1A2B2A2Btptwtrpc����knil������������csed0B2Aqesptrpc����caps�������� SCPcsed0A2B0B2Atptwtrpc����tsba���� SCP SCPcsed0B2Atptwtrpc����lcmn8�����������csedlocntptwtrpc����lcmn������������csed2lcntptwtrpc�������������������������>�?��.���.A�?�?Y@�o@`@�XA��@ ��oA��@p?p@�?��@�A�A�e]	Ȋ�?�Q�1���?����u���K��w�?^lwk��P��c��x�6�}o�?��2Az2j��L
�WV?�3+Ú!?$@�u�<�7~�u�<�7������A��������_@`�{�G�zt��G�z�?�������?�:�0�yE>�������?@�-���q=�����|�=�����|۽8��?-DT�!	@�f@8#]�T#�?UUUUUU�?�0��%@�{a���?]@0@a���{�?@@@i@9�R�Fߑ?��cܥL@�v@.@@"@*@�?��&�.>
�5��P�?(������?4@(@^Cy
�5�?@9@1@
ףp=
�?���Q��?@�ļ�A�f�>@�O@I@�(\���?���Q��?{�G�z�?0q@e���St$���?гY����?�
O��e�?�A`��"�?bX9���?�v��/�?�$@#�ſ��_n3տ�?{F���ڿ�R��д�;�O��n�?j)o3Tֿ�8(W4��'1�Z�?���z6�?�,C���?]m��{�?�Ԍ��T�����٪ؿ�������?�#\�ݿ)��Ey��Q�|a2�?�$�=�ǿ�뿂��ݿTR'����?�vLݕſ�"0�70տi�k|&��?�fG���?�-W?6�ڿ���δ�����p�?~�5�	ֿ���d�濾Y�Mi^�?U0*���?V-��?�;Nё\�?etu�e���E�M׿��!mݿB�*������j+���?O�u�ſ��]Z�H�C��6�?�ZB>�ٴ?@r�q�@$(~��k�?��ǘ���?�:pΈ�?�������?Έ����?X�5�;N�?t$���~�?z�):���?`k@l@�@��U��f�@P�,�cy�?Ǟ=��?���W@�˚X��Q@��'��D@	�}!?�#@��
9B�?Y6sHj�%��ǿ��w��?��g�t��{�G�z�?-DT�!@es-8R�@es-8R�@cgats.clear_field(), table parameter out of rangecgats.clear_field(), attempt to clear fields in a non-empty tablecgats.add_other(), realloc failed!cgats.add_other(), malloc failed!wUnable to open file '%s' for writingrUnable to open file '%s' for readingcgats.get_setarr(), table parameter out of rangecgats.get_setarr(), set parameter out of rangecgats.get_setarr(), field has unknown data typecgats.set_table_flags(), table number '%d' is out of rangecgats.set_table_flags(), Can't suppress kwords or fields if ID is not suppressedORIGINATORDESCRIPTORCREATEDMANUFACTURERPROD_DATESERIALMATERIALINSTRUMENTATIONMEASUREMENT_SOURCEPRINT_CONDITIONSNUMBER_OF_FIELDSBEGIN_DATA_FORMATEND_DATA_FORMATNUMBER_OF_SETSBEGIN_DATAEND_DATAKEYWORDcgats.get_oi(), failed to find '%s'!cgats.find_field(), table number '%d' is out of rangecgats.find_kword(), table number '%d' is out of rangeSAMPLE_IDSTRINGCMYK_CMY_D_REDGREENBLUEVISRGB_SPECTRAL_NMPCTXYZ_XYY_CAPYLAB_DESTDEV_cgats.add_setarr(), table parameter out of rangecgats.add_setarr(), attempt to add set when no fields are definedcgats.add_set(), realloc failed!cgats.add_set(), malloc failed!cgats.alloc_copy_data_type() malloc failcgats.add_set(), field has unknown data typecgats.add_kword(), table parameter out of rangecgats.add_set(), attempt to add set when no fields are definedcgats.add_field(), table parameter out of rangecgats.add_field(), attempt to add field to non-empty tablecgats.add_kword(), field name '%s'is illegalcgats.add_field(): unexpected data type for standard field namecgats.add_field(), realloc failed!cgats.add_kword(), table number '%d' is out of rangecgats.add_kword(), keyword '%s'is illegalcgats.add_kword(), keyword '%s'is generated automaticallycgats.add_kword(), realloc failed!cgats.add_cgats_type(), malloc failed!cgats.add_table(), realloc failed!Unable to create file parser for file '%s'# 	"%sRead line got symbol '%s' that's too long
IT8.7/1IT8.7/2IT8.7/3IT8.7/4CGATS.5CGATS.Failed to malloc space for CGATS.X keywordError at line %d of file '%s': No CGATS file identifier foundDEVICE_NAMEError at line %d of file '%s': Read %d sets, expected %d setsError at line %d of file '%s': Data was not an integer multiple of fields (remainder %d out of %d)Error in file '%s': Field '%s' has unexpected type, should be '%s', is '%s'Error at line %d of file '%s': Found data without field definitionscgats.add_item(), attempt to add data when no fields are definedcgats.add_item(), realloc failed!cgats.add_item(), malloc failed!������$��D��y��
	cgats.write(), malloc failed!Not specified%s %d, %dIT8.7/1

IT8.7/2

IT8.7/3

IT8.7/4

CGATS.5

%-7s

cgats_write(), ID should not be suppressed on first tablecgats_write(), ID should not be suppressed when table %d type is not the same as previous table

quote_cs() malloc failed!KEYWORD %s
%s %s%s# %s
NUMBER_OF_FIELDS %d
BEGIN_DATA_FORMAT
%s 
END_DATA_FORMAT
cgats_write(), Fields should not be suppressed on first tablecgats_write(), Fields should not be suppressed when table %d different number than previous tablecgats_write(), Fields should not be suppressed when table %d types is not the same as previous table
NUMBER_OF_SETS %d
BEGIN_DATA
%%%d.%df%%f%%%d.%de%d cgats_write(), illegal data type foundEND_DATA
Write error to file '%s'������������|��O����JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecemberrealintegerchar stringnon-quoted char stringno type��?**Unknown****Mem**kkill_nprocess del failed to stop - killing thread
msec_beep activate
new_athread: calloc failed
new_athread: CreateThread failed with %d
msec_beep %d msec
msec_beep: Delayed beep failed to create thread
HOMEkkill_nprocess called with '%s'
kkill_nprocess: calloc failed
spotread.exekill_nprocess: Failed to kill '%s'
kill_nprocess: Killed '%s'
kill_nprocess: Checking process '%s' against list '%s'
kill_nprocess: killing process '%s' pid %d
kill_nprocess: kill process '%s' failed with %d
ntdll.dllRtlGetVersionWindows V%d.%d SP %dWindows Server 2016 V%d.%d SP %dWindows V8.1 SP %dWindows Server 2012 R2 SP %dWindows V8 SP %dWindows Server SP %dWindows V7 SP %dWindows Server 2008 R2 SP %dWindows Vista SP %dWindows Server 2008 SP %dWindows XP Pro64 SP %dWindows XP SP %dWindows Maj %d Min %d SP %dARGYLL_NOT_INTERACTIVE
#######################################################################
MSWin 64 bit2.3.1dArgyll 'V%s' Build '%s' System '%s'
new_a1log: malloc of a1log failed, calling exit(1)
set_exe_path: malloc %d bytes failed
.exeset_exe_path: GetModuleHandle '%s' failed with%d
set_exe_path: GetModuleFileName '%s' failed with%d
%s%04x: %02x%c%s%s: 
%s: Warning - %s: Error - Malloc failure in dvector()Malloc failure in dmatrix(), pointersMalloc failure in dmatrix(), arraydhmatrix() given unequal rows and columnsMalloc failure in dhmatrix(), pointersMalloc failure in dhmatrix(), arrayMalloc failure in convert_dmatrix()Malloc failure in fvector()Malloc failure in ivector()Malloc failure in imatrix(), pointersMalloc failure in imatrix(), arrayMalloc failure in svector()Malloc failure in smatrix(), pointersMalloc failure in smatrix(), array, %s%s[%d][%d]
%s %f%s%d%s%s%s[%d]
,%sdouble %s[%d][%d] = {
%s	{ 
%s	   }%s
%s};
%sdouble %s[%d] = { (null)%d%.8fargyll'��
@""p��=Aȩ��A%��s�d�.A�����%��75[�A��3�`D���J�!�@���/v�j#q�ޤ@��2��9+��"�>���������?���ư>��&�.>���������������*���DZ�*���G�9��B.�?�?�>8�_@@�C�<��@���.A'��
@(@A�p�w�?�P�4���?�������#B����;#B���׻#B����;#B���ǻ���w�?Y@�?������������|�=��ŋ�!r�?��<@�?}Ô%�I�T���A�?�?�����w�?��������?_��Q�P�<�?�@
%;/=7)Ca[mgs������������������q+	
	

	
			

		%!'?
	1!
!s)OwKIi;Aq=Y-k'��������?P��<�-���q=��*���G��������?�@2D Diagnostic Graph Plotplot\plot.cadd_vec_g malloc faile in %s line %dadd_sym_g malloc faile in %s line %d%%.%dfplot: CreateFont returned NULL
0�������������H�����?H�����z>���ư>$@@@��.���.A�?@@��?@@"@�o@%s: .
Warning, %s: Cannot open<unknown>%S: Cannot openCan't allocate space for filename conversion bufferTIFFOpenTIFFOpenWError fetching directory countError fetching directory linkSanity check on directory count failed%s: Error fetching directory count%s: Error fetching directory linkpseudo-%s: Invalid %stag "%s" (not supported by codec)_TIFFVGetFieldDotRangetiff\libtiff\tif_dir.ctv->count == 1,���Q�e�?�,�,�Q�e�?�?��e��������UnknownNonstandard tile width %d, convert fileNonstandard tile length %d, convert file%s: Sorry, cannot nest SubIFDs%s: Invalid InkNames value; expecting %d names, found %dTIFFSetField%s: Failed to allocate space for list of custom values%s: Bad field type %d for "%s"fip->field_writecount==TIFF_VARIABLE2%s: Null count for "%s" (type %d, writecount %d, passcount %d)custom tag binary object%s: Bad value %u for "%s" tag%s: Bad value %f for "%s" tag�)�t*�*�M)��)��)��)�*�M)��)��)��)�M)�t*�t*�>*�>*�>*�%s: Unknown %stag %u%s: Cannot modify tag "%s" while writingDirectory count exceeded 65535 limit, giving up on counting.Can not unlink directory in read-only fileDirectory %d does not exist(uint64)nextdir32==nextdirError writing directory link_TIFFVSetFieldTIFFNumberOfDirectoriesTIFFAdvanceDirectoryTIFFUnlinkDirectoryTag "%s": Bad modetiff\libtiff\tif_open.cn.a16==1%s: Out of memory (TIFF structure)One of the client procedures is NULL pointer.Cannot read TIFF headerError writing TIFF headerNot a TIFF file, bad magic number %d (0x%x)Not a TIFF file, bad version number %d (0x%x)Not a TIFF file, bad BigTIFF offsetsize %d (0x%x)Not a TIFF file, bad BigTIFF unused %d (0x%x)�9�R8�R8�R8�R8�R8�R8�R8�R8�R8��9��9�R8�R8�R8�R8�D8�R8�R8�R8�D8�:�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8�R8��9��9�R8�R8�R8�R8��8�R8�R8�R8�R8�0:�TIFFClientOpen�@� �`��P�0�p��H�(�h��X�8�x��D�$�d��T�4�t��L�,�l��\�<�|��B�"�b��R�2�r�
�J�*�j��Z�:�z��F�&�f��V�6�v��N�.�n��^�>�~��A�!�a��Q�1�q�	�I�)�i��Y�9�y��E�%�e��U�5�u�
�M�-�m��]�=�}��C�#�c��S�3�s��K�+�k��[�;�{��G�'�g��W�7�w��O�/�o��_�?��	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�����������������������������������������������������������������������������������������������������������������������������TRUEFALSE%s: 
field[%2d] %5lu, %2d, %2d, %d, %2d, %5s, %5s, %s
Failed to allocate fields arrayTag Setting up field info failed_TIFFSetupFieldsInternal error, unknown tag 0x%xTIFFFieldWithTagInternal error, unknown tag %sTIFFFieldWithNameTag %dD�{E�hE�KE�8E�E�E�{E��D��D�E�E��D��D�D�D��D��D��D�for fields array_TIFFMergeFieldsfor fields arrayTIFFMergeFieldInfo


	 $!$$%&"#&('*,0)(+-0012./2SubfileTypeOldSubfileTypeImageWidthImageLengthBitsPerSampleCompressionPhotometricInterpretationThreshholdingCellWidthCellLengthFillOrderDocumentNameImageDescriptionMakeModelStripOffsetsOrientationSamplesPerPixelRowsPerStripStripByteCountsMinSampleValueMaxSampleValueXResolutionYResolutionPlanarConfigurationPageNameXPositionYPositionFreeOffsetsFreeByteCountsGrayResponseUnitGrayResponseCurveResolutionUnitPageNumberColorResponseUnitTransferFunctionSoftwareDateTimeArtistHostComputerWhitePointPrimaryChromaticitiesColorMapHalftoneHintsTileWidthTileLengthTileOffsetsTileByteCountsSubIFDInkSetInkNamesNumberOfInksDotRangeTargetPrinterExtraSamplesSampleFormatSMinSampleValueSMaxSampleValueClipPathXClipPathUnitsYClipPathUnitsYCbCrCoefficientsYCbCrSubsamplingYCbCrPositioningReferenceBlackWhiteXMLPacketMatteingDataTypeImageDepthTileDepthImageFullWidthImageFullLengthTextureFormatTextureWrapModesFieldOfViewCotangentMatrixWorldToScreenMatrixWorldToCameraCFARepeatPatternDimCFAPatternCopyrightRichTIFFIPTCPhotoshopEXIFIFDOffsetICC ProfileGPSIFDOffsetFaxRecvParamsFaxSubAddressFaxRecvTimeFaxDcsStoNitsInteroperabilityIFDOffsetDNGVersionDNGBackwardVersionUniqueCameraModelLocalizedCameraModelCFAPlaneColorCFALayoutLinearizationTableBlackLevelRepeatDimBlackLevelBlackLevelDeltaHBlackLevelDeltaVWhiteLevelDefaultScaleBestQualityScaleDefaultCropOriginDefaultCropSizeColorMatrix1ColorMatrix2CameraCalibration1CameraCalibration2ReductionMatrix1ReductionMatrix2AnalogBalanceAsShotNeutralAsShotWhiteXYBaselineExposureBaselineNoiseBaselineSharpnessBayerGreenSplitLinearResponseLimitCameraSerialNumberLensInfoChromaBlurRadiusAntiAliasStrengthShadowScaleDNGPrivateDataMakerNoteSafetyCalibrationIlluminant1CalibrationIlluminant2RawDataUniqueIDOriginalRawFileNameOriginalRawFileDataActiveAreaMaskedAreasAsShotICCProfileAsShotPreProfileMatrixCurrentICCProfileCurrentPreProfileMatrixPerSampleIndexedGlobalParametersIFDProfileTypeFaxProfileCodingMethodsVersionYearModeNumberDecodeImageBaseColorT82OptionsStripRowCountsImageLayerExposureTimeFNumberExposureProgramSpectralSensitivityISOSpeedRatingsOptoelectricConversionFactorExifVersionDateTimeOriginalDateTimeDigitizedComponentsConfigurationCompressedBitsPerPixelShutterSpeedValueApertureValueBrightnessValueExposureBiasValueMaxApertureValueSubjectDistanceMeteringModeLightSourceFlashFocalLengthSubjectAreaMakerNoteUserCommentSubSecTimeSubSecTimeOriginalSubSecTimeDigitizedFlashpixVersionColorSpacePixelXDimensionPixelYDimensionRelatedSoundFileFlashEnergySpatialFrequencyResponseFocalPlaneXResolutionFocalPlaneYResolutionFocalPlaneResolutionUnitSubjectLocationExposureIndexSensingMethodFileSourceSceneTypeCustomRenderedExposureModeWhiteBalanceDigitalZoomRatioFocalLengthIn35mmFilmSceneCaptureTypeGainControlContrastSaturationSharpnessDeviceSettingDescriptionSubjectDistanceRangeImageUniqueIDtiff\libtiff\tif_dirread.cpdir%s: Seek error accessing TIFF directory%s: Can not read TIFF directory countSanity check on directory count failed, this is probably not a valid IFD offsetto read TIFF directory%.100s: Can not read TIFF directoryCan not read TIFF directory countSanity check on directory count failed, zero tag directories not supportedCan not read TIFF directoryfor "StripByteCounts" arrayCannot determine size of unknown tag type %dIncorrect count for "%s"Incompatible type for "%s"IO error during reading of "%s"Incorrect value for "%s"Cannot handle different values per sample for "%s"Sanity check on size of "%s" value failedOut of memory reading of "%s"0Incorrect count for "%s"; tag ignoredIncompatible type for "%s"; tag ignoredIO error during reading of "%s"; tag ignoredIncorrect value for "%s"; tag ignoredCannot handle different values per sample for "%s"; tag ignoredSanity check on size of "%s" value failed; tag ignoredOut of memory reading of "%s"; tag ignored�=��>��>��>�?��>��>��>��=�d>�T>�D>�4>�%>�>�t>�size>0(tmsize_t)datasize>0ReadDirEntryArray�D�DE��D�TE��E��D��E��D��E��E��D��D��D��D��D��D�$F�E��H��H��F��F��F�ZH�H��F��F��F��F��F��F��G�-G�HJ�ZL�HJ��L�HJ�HJ�L�HJ��K�HJ�HJ�HJ�HJ�HJ�HJ�HJ�bK�K��M��O��M��M��O��M�;O��M��M��N��M��M��M��M��M��M��N�LN�0R��R�0R�BR�XS�0R�S�0R��Q��R�unknown tagnamefor strip array	V�V�	V��V�CV��X��X�	V�hX�X��W�	V�|W�	V�	V�	V�)W��V�aZ�tZ�aZ��Z��Z�K]�]�aZ��\�r\�\��[�aZ�aZ�aZ�aZ��[�3[�No definition found for tag %dTIFFFetchNormalTagfip != NULLfip->set_field_type!=TIFF_SETGET_OTHERfip->set_field_type!=TIFF_SETGET_INTfip->field_passcount==0ASCII value for tag "%s" contains null byte in value; value incorrectly truncated during reading due to implementation limitationsASCII value for tag "%s" does not end in null bytefip->field_readcount==1fip->field_readcount==2incorrect count for field "%s", expected 2, got %dfip->field_readcount>=1incorrect count for field "%s", expected %d, got %dfip->field_readcount==TIFF_VARIABLEfip->field_passcount==1fip->field_readcount==TIFF_VARIABLE2]��]�0^��\�P_��\��^��\��^��\�!c��c��c��\��l��\�u`��\��`��\�3a��\��\��\�sa��\��\�@d��d��\��d��\�ce��\��_��\��h��g�Qh��e�2f�sf��g��a��b�@k�0l�3i�!j��j��j�dc��l�dc�cl��m�dc�wm�dc�Im� m�dc�dc�dc�dc�dc�dc�m�%l�c��m�c��m�fm�c��m�c��m�n�c�c�c�c�c�c��l�Ml��q��q��q�5t��q�
t��q��q��u��q��q��q��q��q��q� u��t��b�o��b��n��n��n��n��b�an�?n��o�zo�[o��b��b��b�,o��m�Hb��p�Hb��p�kp�Tp�Ap�Hb�p��o��o��o��o�Hb�Hb�Hb�qo��m�
s��p��r��r��p�Yr��p�r��q�wt��p��s��p��p�|q��p�6q��p��p��p��p��p��p��p�dp��p��a�Gv��a�,v��u��a��u��a��u��u��a��a��a��a��a��a�~u�Du�H|��{�qd�qd�qd��{�[{�qd�qd�qd�qd�qd�qd�{��z�tilesstripsTileOffsetsStripOffsetsCannot handle more than 65535 TIFF directoriesTIFFCheckDirOffsetfor IFD listFailed to read directory at offset %I64uInvalid TIFF directory; tags are not sorted in ascending orderCompressionUnknown field with tag %d (0x%x) encounteredRegistering anonymous field with tag %d (0x%x) failedfii != FAILED_FIIPlanarconfig tag value assumed incorrect, assuming data is contig instead of chunkyImageLengthTIFF directory is missing required "%s" fieldCannot handle zero number of %sIgnoring %s since BitsPerSample tag not foundIgnoring %s because BitsPerSample=%d>24Photometric tag is missing, assuming data is YCbCrPhotometric tag value assumed incorrect, assuming data is YCbCr instead of RGBBitsPerSample tag is missing, assuming 8 bits per sampleSamplesPerPixel tag is missing, assuming correct SamplesPerPixel value is 3SamplesPerPixel tag is missing, applying correct SamplesPerPixel value of 3ColormapStripByteCountsTIFF directory is missing required "StripByteCounts" field, calculating from imagelengthBogus "StripByteCounts" field, ignoring and calculating from imagelengthWrong "StripByteCounts" field, ignoring and calculating from imagelengthfor chopped "StripByteCounts" arrayfor chopped "StripOffsets" arrayCannot handle zero scanline sizeCannot handle zero tile sizeCannot handle zero strip sizeFailed to read custom directory at offset %I64uWrong data type %d for "%s"; tag ignoredincorrect count for field "%s" (%I64u, expecting %u); tag ignoredincorrect count for field "%s" (%I64u, expecting %u); tag trimmedSubjectDistanceTIFFReadDirectoryTIFFReadDirectoryCheckOrderMissingRequiredTIFFFetchDirectoryTIFFFetchStripThingTIFFFetchNormalTagEstimateStripByteCountsTIFFReadCustomDirectoryTIFFFetchSubjectDistance�tiff\libtiff\tif_read.c(tif->tif_flags&TIFF_NOREADRAW)==0Seek error at row %lu, col %lu, tile %luRead error at row %lu, col %lu; got %I64u bytes, expected %I64uRead error at row %lu, col %lu, tile %lu; got %I64u bytes, expected %I64uSeek error at scanline %lu, strip %luRead error at scanline %lu; got %I64u bytes, expected %I64uRead error at scanline %lu, strip %lu; got %I64u bytes, expected %I64uCan not read tiles from a stripped imageCan not read scanlines from a tiled imageFile not open for reading%lu: Strip out of range, max %luCompression scheme does not support access to raw uncompressed data%I64u: Invalid strip byte count, strip %lu%lu: Tile out of range, max %luInvalid buffer sizeNo space for data buffer at scanline %lu%I64u: Invalid tile byte count, tile %luData buffer too small to hold tile %luZero tilesInvalid strip byte count %I64u, strip %luRead error on strip %lu; got %I64u bytes, expected %I64uData buffer too small to hold strip %lu%lu: Row out of range, max %lu%lu: Sample out of range, max %luData buffer too small to hold part of strip %lu(tif->tif_flags&TIFF_BUFFERMMAP)==0(cc & 1) == 0(cc % 3) == 0(cc & 3) == 0(cc & 7) == 0TIFFFillStripPartialTIFFReadEncodedStripTIFFReadRawStripTIFFFillStripTIFFReadEncodedTileTIFFReadRawTileTIFFFillTileTIFFStartTileTIFFReadBufferSetupCompression algorithm does not support random access%s %s decoding is not implementedCompression scheme %u %s decoding is not implementedtilestripscanline%s %s encoding is not implementedCompression scheme %u %s encoding is not implementedNo space to register compression scheme %sTIFFRegisterCODECCannot remove compression scheme %s; not registeredTIFFUnRegisterCODECInteger overflow in %sFailed to allocate memory for %s (%ld elements of %ld bytes each)No space for "TransferFunction" tag������@�?��@�?�_%lu: Col out of range, max %lu%lu: Row out of range, max %lu%lu: Depth out of range, max %lu%lu: Sample out of range, max %luTIFFNumberOfTilesTile length is zeroTile width is zeroTIFFTileRowSizeSamples per pixel is zeroComputed tile row size is zeroInvalid YCbCr subsampling (%dx%d)TIFFTileRowSize64TIFFVTileSize64%lu: Sample out of range, max %luTIFFNumberOfStrips%I64u: Invalid strip byte count, strip %luInvalid YCbCr subsamplingComputed scanline size is zeroInvalid td_samplesperpixel valueInvalid YCbCr subsampling (%dx%d)TIFFComputeStripTIFFVStripSize64TIFFRawStripSize64TIFFScanlineSize64TIFFRasterScanlineSize64%d%s compression support is not configuredNoneLZWPackBitsThunderScanNeXTJPEGOld-style JPEGCCITT RLECCITT RLE/WCCITT Group 3CCITT Group 4ISO JBIGDeflateAdobeDeflatePixarLogSGILogSGILog24LZMAtiff\libtiff\tif_write.ctd->td_nstrips > 0Seek error at scanline %luMaximum TIFF file size exceededWrite error at scanline %lutd->td_planarconfig == PLANARCONFIG_CONTIGNo space to expand strip arraysCan not write tiles to a stripped imageCan not write scanlines to a tiled imagetilestripFile not open for writingMust set "ImageWidth" before writing dataMust set "PlanarConfiguration" before writing dataNo space for %s arraysTile %lu out of range, max %luCan not grow image by strips when using separate planesZero strips per imageNo space for output bufferZero tilesCan not change "ImageLength" when using separate planes%lu: Sample out of range, max %luTIFFWriteScanlineTIFFWriteEncodedStripTIFFAppendToStripTIFFWriteRawStripTIFFWriteEncodedTileTIFFWriteRawTileTIFFWriteBufferSetuptiff\libtiff\tif_dirwrite.cdir[m].tdir_tag!=tagMaximum TIFF file size exceededIO error writing tag datadatalength<0x80000000ULvalue>=0.0count<0x20000000tif->tif_flags&TIFF_BIGTIFFcount<0x40000000count<0x80000000Out of memoryAttempt to write value larger than 0xFFFFFFFF in Classic TIFF file.Error post-encoding before directory writeError flushing data before directory writepa != 0*pa <= 0xFFFFFFFFULo->field_type==TIFF_ASCIIo->field_readcount==TIFF_VARIABLEo->field_passcount==0o->field_type==TIFF_SHORTo->field_readcount==1o->field_type==TIFF_LONGo->field_type==TIFF_UNDEFINEDo->field_readcount==TIFF_VARIABLE2o->field_passcount==10Error writing SubIFD directory linkError writing TIFF headerError fetching directory countError fetching directory linkError writing directory linkSanity check on tag count failed, likely corrupt TIFFna<ndirIO error writing directoryA�����^��,��������q��@����������\�������A��A����������Error updating TIFF headerMemory mapped files not currently supported for this operation.Attempt to reset field on directory not already on disk.%s: Seek error accessing TIFF directory%s: Can not read TIFF directory count%s: Can not read TIFF directory entry.%s: Could not find tag %d.for field buffer.Value exceeds 32bit range of output type.%s: Can not write TIFF directory entry.TIFFWriteDirectorySecTIFFLinkDirectoryTIFFWriteDirectoryTagIfdIfd8ArrayTIFFWriteDirectoryTagCheckedSrationalArrayTIFFWriteDirectoryTagSubifdTIFFWriteDirectoryTagDataTIFFWriteDirectoryTagTransferfunctionTIFFWriteDirectoryTagCheckedRationalArrayTIFFWriteDirectoryTagSampleformatArrayTIFFWriteDirectoryTagColormapTIFFWriteDirectoryTagLongLong8ArrayTIFFWriteDirectoryTagShortPerSampleTIFFRewriteDirectoryTIFFResetField�?���A�?��������Atiff\libtiff\tif_dumpmode.cn > 0Not enough data for scanline %lu, expected a request for at most %I64d bytes, got a request for %I64d bytesDumpModeDecodetiff\libtiff\tif_lzw.ctif->tif_data != 0sp != NULLsp->dec_codetab != NULLLZWDecode: Strip %d not terminated with EOI codeLZWDecode: Corrupted LZW table at scanline %dCorrupted LZW table at scanline %dWrong length of decoded string: data probably corrupted at scanline %dBogus encoding, loop in the code table; scanline %dNot enough data at scanline %d (short %I64d bytes)Old-style LZW codes, convert fileNo space for LZW state blockNo space for LZW code tablesp->enc_hashtab != NULLnbits <= BITS_MAXNo space for LZW hash tablescheme == COMPRESSION_LZWTIFFInitLZWLZWSetupEncodeLZWDecodeLZWPreDecodeLZWDecodeCompatLZWSetupDecodeDiscarding %lu bytes to avoid buffer overrunTerminating PackBitsDecode due to lack of data.Not enough data for scanline %luPackBitsDecodeWrong bitspersample value (%d), Thunder decoder only supports 4bits per sample.Not enoughToo muchFractional scanlines cannot be read%s data at scanline %lu (%I64u != %I64u)ThunderDecodeRow����������������ThunderDecodeThunderSetupDecodeUnsupported BitsPerSample = %dFractional scanlines cannot be readInvalid data for scanline %ldNot enough data for scanline %ldNeXTDecodeNeXTPreDecodetilestripBad code word at line %u of %s %u (x %u)tiff\libtiff\tif_fax3.csp != 0x == lastx,��-��-�~-�y-�t-�o-�j-��,�>-�9-�4-�/-�*-�%-� -�length < 9te->runlen == 64*(span>>6)sp != NULLPremature EOF at line %u of %s %u (x %u)Premature EOLLine length mismatch%s at line %u of %s %u (got %u, expected %u)Fractional scanlines cannot be readUncompressed data (not supported) at line %u of %s %u (x %u)0@�UH�wG��G��F�WF��E�0@�0@�0@�0@�0@��E�W�\��[�<[��Z�LZ��Y�W�W�W�W�W��Y�Bits/sample must be 1 for Group 3/4 encoding/decodingRow pixels integer overflow (rowpixels %u)for Group 3/4 run arraysNo space for Group 3/4 reference line +  Group 4 Options:%suncompressed data  Group 3 Options:%s2-d encoding%sEOL padding (%lu = 0x%lx)
  Fax Data: clean receiver regenerated uncorrected errors (%u = 0x%x)
  Bad Fax Lines: %lu
  Consecutive Bad Fax Lines: %lu
sp->vsetparent != 0Merging common CCITT Fax codec-specific tags failedInitCCITTFax3No space for state blockFractional scanlines cannot be writtentparm < 9Merging CCITT Fax 3 codec-specific tags failedTIFFInitCCITTFax3Merging CCITT Fax 4 codec-specific tags failedTIFFInitCCITTFax4
7	

	


ghl7(����hij k!�"�#�$�%�&�'l(m)�*�+T,U-V.W/d0e1R2S3$47586'7(8X9Y:+;,<Z=f>g?
@����[3@4�5�
l
m@
J�
K�
L
M@
r�
s�
t
u@
v�
w�
R
S@
T�
U�
Z
[@
d�
e�@
��@��	@	�	�	
��	��
������5	

45*+'(+$ !"#$%&(')(*)+*,+-,-.
/0R1S2T3U4$5%6X7Y8Z9[:J;K<2=3>4?@��76@7�d�eh@g�	��	�	�@	��	��	�	�@	��	��	�	�@	��	��	�	�@�	��@
��@��	@	�	�	
��	��
�����������Group3OptionsFaxModeFaxFillFuncBadFaxLinesCleanFaxDataConsecutiveBadFaxLinesInitCCITTFax3?�Fax3EncodeFax3Decode1DFax3SetupStateFax3Decode2DGroup4OptionsFax4EncodeFax4DecodeFax3DecodeRLE\�"@Ctiff\libtiff\tif_luv.cs == 0sp != NULLTranslation buffer too shortNot enough data at row %lu (short %I64d pixels)td->td_photometric == PHOTOMETRIC_LOGLUVSGILog compression cannot handle non-contiguous dataNo support for converting user data format to LogLuvNo space for SGILog translation buffertd->td_photometric == PHOTOMETRIC_LOGLSamples/pixelSorry, can not handle LogL image with %s=%dNo support for converting user data format to LogLY, LXYZ, LuvInappropriate photometric interpretation %d for SGILog compression; %smust be either LogLUV or LogLSGILog compression supported only for %s, or raw dataUnknown data format %d for LogLuv compressionUnknown encoding %d for LogLuv compressioncc%rowlen == 0sp != 0scheme == COMPRESSION_SGILOG24 || scheme == COMPRESSION_SGILOGMerging SGILog codec-specific tags failed%s: No space for LogLuv state block_�}>4�y>|w>
>�s>	X�q>
��m>$�i>0p�g>>9�c>M)�a>^��[>p��Y>�?�W>�;�Q>���O>��L>��7H>�4F> #aoB>"Ch�>>$eh�>>$�f�:>&��L7>(�\�3>*�!0>,%!0>,Q��,>.}��,>.�4�'>1�s">4
s">4>s">4r��>7���>7��>:�>:N,>>�,>>�,>>��
>AB��
>A���
>A��V>E�V>EJ�;>I��;>I��;>I!P��=MjP��=M�P��=MP��=MQ�X�=R��X�=R��X�=RB	��=V�	��=V�	��=V@
��=V�
���=[�
���=[G���=[�l��=_�l��=_\l��=_�l��=_
ʴ=dy
ʴ=d�
ʴ=dAʴ=d����=i	���=ir���=i����=iD�P�=n��P�=n�P�=n��P�=n��ۋ=se�ۋ=s��ۋ=sK�ۋ=s��2�=w1�2�=w��2�=w�2�=w�x^j=|
x^j=|�x^j=|x^j=|���P=����P=�~��P=����P=����P=��7=���7=��7=���7=��-&=���-&=�$�-&=���-&=�84�=��4�=�P4�=��4�=�l /�=�� /�=��!/�=�"/�=��"��<�B#��<��#��<�n$Kx�<�%Kx�<��%Kx�<�8&Kx�<��&�Ɵ<�l'�Ɵ<�
(�Ɵ<��(A�<�F)A�<��)A�<��*A�<�)+�O<��+�O<�o,�O<�-K�#<��-K�#<�a.K�#<�	/ط<��/ط<�[0ط<�1���;��1���;�\2��;�	3��;��3��;�g4�;�5�;��5�Z;�x6Ő;�)7"��:��7z��:�w8�;:�9ڌ�:��9Ɏ�9�9:a��9��:���:{B;�ʢ:s�;���:m0<���:g�</�9:a=�ϝ9Ye=�U;R�=�U;L>غT;E\>:��;>�>Ee�;7�>t�</?@�+<(E?7�<m?��<�?SGILogDataFmtSGILogEncodeTIFFInitSGILogLogLuvVSetFieldLogLuvSetupEncodeLogL16EncodeLogLuvEncode32LogLuvEncode24LogLuvInitStateLogL16InitStateLogLuvSetupDecodeLogL16DecodeLogLuvDecode32LogLuvDecode24�?��?�c?�@��?�@ ?@�l? �X�?l����?����P�?7�y���/@I@��������?�9��B.f?�9��B.F@��?p@������C������õ������;��+eG�?P@������ﻅ�Q��@�"�~j���"�~ڿ'1�Z���S�?�I+��?�Zd;�?y�&1�̿�S㥛�?�9��B.�?s�;?�� @�C�l�{/@L%��/?(@���m�q@�@�??�������?�������?@0@"@@.@@�y@tiff\libtiff\tif_predict.csp != NULLsp->encodepfunc != NULLsp->encoderow != NULL(cc%(4*stride))==02��)�� ������(cc%(2*stride))==0!�����������(cc%stride)==0��L��<��,��\��sp->decodetile != NULLrowsize > 0(occ0%rowsize)==0sp->decodepfunc != NULLsp->decoderow != NULL����������������߯�ԯ�ɯ���,������<��sp->vsetparent != NULLsp->vgetparent != NULLHorizontal differencing "Predictor" not supported with %d-bit samplesFloating point "Predictor" not supported with %d data format"Predictor" value %d not supported(cc%(bps*stride))==0���ĸ�������˸�ȹ�e��[��Q��o��sp->encodetile != NULLOut of memory allocating %I64d byte temp buffer.(cc0%rowsize)==0  Predictor: none horizontal differencing floating point predictor %u (0x%x)
sp != 0Merging Predictor codec-specific tags failedTIFFPredictorInitPredictorPredictorEncodeTilePredictorSetup	

	
	
	
		


�8	@	
96		

	4	0@	
,$
�		

<	(@		




@		

	
	
�	
2"

�		



�	 �	
=*

		

	

	>�	
.&

		

	�		




@		

	
	
	
		


�

	@	
:

�		

	

�	1�	
-%
�		



	)�		




@		

	
	
	
3#
@		

;	!�	

+

�		

	7	?		
/'5		

	
	




@		

	
	
	
		


�8	@	
96		

	4	0@	
,$
�		

<	(@		




@		

	
	
�	
2"

�		



�	 �	
=*

@		

	

@	>�	
.&

@		

	�		




@		

	
	
	
		


�

@	@	
:

�		

	

�	1�	
-%
�		



@	)�		




@		

	
	
	
3#
@		

;	!�	

+

�		

	7	?		
/'5		

	
	




@			�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
@		�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
@		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
@			�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
�		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
�		�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
�		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
�			�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
@		�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
�		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
�			�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
		�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@
�		�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		�+		�	�	@
		�!	�1=/;)		�9	@
			�%	�	@
		�	@
			�	�(		@8	@
.6		$	�4
		@,		@	�	@
		�"	�2>0<*		@ :	@
		�&	�	�
		�	@
		�	�'	@7	@
-5		�#	�3?
		+			�	@
		�!	�1=/;)		9	@
			%	�	@
		�	@

		�	�(		�8	@
.6		$	�4
		�,		�	�	@
		�"	�2>0<*		� :	@
		�&	�	�
		�	@
%s
Bogus message code %dALIGN_TYPE is wrong, please fixMAX_ALLOC_CHUNK is wrong, please fixBogus buffer control modeInvalid component ID %d in SOSInvalid crop requestDCT coefficient out of rangeDCT scaled block size %dx%d not supportedComponent index %d: mismatching sampling ratio %d:%d, %d:%d, %cBogus Huffman table definitionBogus input colorspaceBogus JPEG colorspaceBogus marker lengthWrong JPEG library version: library is %d, caller expects %dSampling factors too large for interleaved scanInvalid memory pool code %dUnsupported JPEG data precision %dInvalid progressive parameters Ss=%d Se=%d Ah=%d Al=%dInvalid progressive parameters at scan script entry %dBogus sampling factorsInvalid scan script at entry %dImproper call to JPEG library in state %dJPEG parameter struct mismatch: library thinks size is %u, caller expects %uBogus virtual array accessBuffer passed to JPEG library is too smallSuspension not allowed hereCCIR601 sampling not implemented yetToo many color components: %d, max %dUnsupported color conversion requestBogus DAC index %dBogus DAC value 0x%xBogus DHT index %dBogus DQT index %dEmpty JPEG image (DNL not supported)Read from EMS failedWrite to EMS failedDidn't expect more than one scanInput file read errorOutput file write error --- out of disk space?Fractional sampling not implemented yetHuffman code size table overflowMissing Huffman code table entryMaximum supported image dimension is %u pixelsEmpty input filePremature end of input fileCannot transcode due to multiple use of quantization table %dScan script does not transmit all dataInvalid color quantization mode changeNot implemented yetRequested feature was omitted at compile timeArithmetic table 0x%02x was not definedBacking store not supportedHuffman table 0x%02x was not definedJPEG datastream contains no imageQuantization table 0x%02x was not definedNot a JPEG file: starts with 0x%02x 0x%02xInsufficient memory (case %d)Cannot quantize more than %d color componentsCannot quantize to fewer than %d colorsCannot quantize to more than %d colorsInvalid JPEG file structure: two SOF markersInvalid JPEG file structure: missing SOS markerUnsupported JPEG process: SOF type 0x%02xInvalid JPEG file structure: two SOI markersInvalid JPEG file structure: SOS before SOFFailed to create temporary file %sRead failed on temporary fileSeek failed on temporary fileWrite failed on temporary file --- out of disk space?Application transferred too few scanlinesUnsupported marker type 0x%02xVirtual array controller messed upImage too wide for this implementationRead from XMS failedWrite to XMS failedCopyright (C) 2012, Thomas G. Lane, Guido Vollbeding8d  15-Jan-2012Caution: quantization tables are too coarse for baseline JPEGAdobe APP14 marker: version %d, flags 0x%04x 0x%04x, transform %dUnknown APP0 marker (not JFIF), length %uUnknown APP14 marker (not Adobe), length %uDefine Arithmetic Table 0x%02x: 0x%02xDefine Huffman Table 0x%02xDefine Quantization Table %d  precision %dDefine Restart Interval %uFreed EMS handle %uObtained EMS handle %uEnd Of Image        %3d %3d %3d %3d %3d %3d %3d %3dJFIF APP0 marker: version %d.%02d, density %dx%d  %dWarning: thumbnail image size does not match data length %uJFIF extension marker: type 0x%02x, length %u    with %d x %d thumbnail imageMiscellaneous marker 0x%02x, length %uUnexpected marker 0x%02x        %4u %4u %4u %4u %4u %4u %4u %4uQuantizing to %d = %d*%d*%d colorsQuantizing to %d colorsSelected %d colors for quantizationAt marker 0x%02x, recovery action %dRST%dSmoothing not supported with nonstandard sampling ratiosStart Of Frame 0x%02x: width=%u, height=%u, components=%d    Component %d: %dhx%dv q=%dStart of ImageStart Of Scan: %d components    Component %d: dc=%d ac=%d  Ss=%d, Se=%d, Ah=%d, Al=%dClosed temporary file %sOpened temporary file %sJFIF extension marker: JPEG-compressed thumbnail image, length %uJFIF extension marker: palette thumbnail image, length %uJFIF extension marker: RGB thumbnail image, length %uUnrecognized component IDs %d %d %d, assuming YCbCrFreed XMS handle %uObtained XMS handle %uUnknown Adobe color transform code %dCorrupt JPEG data: bad arithmetic codeInconsistent progression sequence for component %d coefficient %dCorrupt JPEG data: %u extraneous bytes before marker 0x%02xCorrupt JPEG data: premature end of data segmentCorrupt JPEG data: bad Huffman codeWarning: unknown JFIF revision number %d.%02dPremature end of JPEG fileCorrupt JPEG data: found marker 0x%02x instead of RST%dInvalid SOS parameters for sequential JPEGApplication transferred too many scanlines��!���������������������������������������������������������������������������������������������������������������������������JPEGMEM%ld%c@�>�	????????????????	
????????????????	
????????????????	
 !"#$????????????????	
 !()"
#*+$%,-????????????????	
 !(0)"
#*12+$%,34-&.56????????????????	
 !(0)"
#*1892+$%,3:;4-&'.5<=6/7>?????????????????.pdataArgument domain error (DOMAIN)Argument singularity (SIGN)Overflow range error (OVERFLOW)Partial loss of significance (PLOSS)Total loss of significance (TLOSS)The result is too small to be represented (UNDERFLOW)Unknown error_matherr(): %s in %s(%g, %g)  (retval=%g)
[K��K��K��K�L�L��K�Mingw-w64 runtime failure:
  VirtualQuery failed for %d bytes at address %p  Unknown pseudo relocation protocol version %d.
  Unknown pseudo relocation bit size %d.
pow����?���������A�������sqrt�����?sin�cos�log���exp��9��B.�@Ҽz�+#��Assertion failed!

Program: %s
File: %s, Line %u

Expression: %s%s
MinGW Runtime Assertion�?����;f���?�?3OP@�?�9��B.�?�9��B.�@Ҽz�+#���9��B��@9X@9`�@9�@9/(@90OH@9P�h@9���@9� �@9  �!�@9�!�FA9�FGPA9 GHTA9 H�IdA9�I�IxA9�I�J�A9�J�P�A9�PER�A9PR���A9���0B9�p�4B9p�į@B9Я<�HB9@�ԱTB9��hB9���lB9��ٵ�B9���B9�6��B9@����B9����B9�y�C9����(C9���<C9,lC90R�C9`��C9�R
�C9`
��C9���C9���C9���C9���C9k�C9p�D9�%D9�%'LD9 '�'\D9�'�(hD9�(�(|D9)�{�D9�{�{�D9�{�|�D9�|8}�D9@}�~�D9ɁE9Ё-�,E90�k�4E9p���<E9����HE9����LE9��XE9�H�\E9P�X�hE9`�\�lE9`����E9��	��E9����E9��t��E9�����E9�����E9��U��E9`�e�F9p�x�F9����F9����F9���� F9����$F9��ï(F9Я"�@F90���\F9��r�tF9�����F9�����F9�`��F9`�h��F9p�u��F9��¼�F9м[��F9`�m��F9p����F9�����F9�����F9����G9����G9����G9����G9����G9�� G9��$G9 �.�(G90���,G9��H�@G9P�i�TG9p�~�lG9��J�pG9P�^��G9`�n��G9p����G9��&��G90����G9�����G9����G9 �.��G90����G9����G9��:��G9@�G��G9P����G9��	�H9���(H9��g�TH9p���`H9��6�tH9@�e�|H9p����H9��'��H90����H9�����H9��C��H9P���I9��� I9�0I9�DI9��XI9��dI9�f�I9p��I9���I9�6�I9@8�I9@j�I9p��I9�/�I90�)J9*	0,J90L1LJ9P1�2\J9�2}3lJ9�3�4|J9�4s5�J9�5�6�J97�I�J9�ISJ�J9`J�J�J9�J�J�J9KMKK9PK�KK9�K1L$K9@L�L0K9�L!M@K90M�MLK9�M=N`K9@NOlK9O[RxK9`R�R�K9�RS�K9 SvV�K9�VNW�K9PW]�K9]_ L9_v_,L9�_�_4L9`�a<L9�a�aXL9�a8b\L9@b�bhL9�bzctL9�c�c�L9�cWd�L9`d�d�L9�de�L9e���L9�N��L9P�ԅ�L9���L9 �ىM9�?� M9@�k�@M9p�H�HM9P���LM9����PM9����TM9���dM9 �T�tM9`����M9��v��M9�����M9�����M9����M9���M9 �+��M90���N9��2�N9@�6�8N9@��LN9�\N9 �pN9�E�N9P��N9��
�N9�
~�N9�O9 y<O9�@O9DO9 hO9 `�O9`��O9���O9��O9��O9��P9��(P9�g\P9p�pP9��xP9���P9� �P9� G"�P9P"�"�P9�"=#�P9@#:$�P9@$
%�P9%<%�P9@%�%�P9�%�%�P9�%�%�P9�%�%�P9�%&�P9 &F'�P9P'i'Q9p'�'Q9�'�'Q9�'�*Q9�*�+@Q9�+�+XQ9,�5dQ9�5u6�Q9�6�7�Q9�71:�Q9@:u:�Q9�:5>�Q9@>�BR9C>FPR9@FgGpR9pGuG�R9�G�S�R9�S�S�R9�S�U�R9�U}W�R9�WkX�R9pX[Y�R9`Y.[�R90[�\S9�\�^LS9�^+b\S90b�b�S9�bld�S9pd�e�S9f�f�S9�fxg�S9�g�g�S9hl�S9 lJl�S9Pl�l�S9�ljr�S9pr�rT9�rsT9s.sT90sNs$T9Pszs,T9�s�s4T9�st<T9t$tDT90t�uLT9�u�u`T9�u2vhT9@vevpT9pvLy|T9Pyf{�T9p{}{�T9�{�{�T9�{�{�T9�{�{�T9�{(|�T90|^|�T9`|5~�T9@~I~U9P~iU9p�(U9�&�8U90�;�\U9@���`U9���lU9��xU9 �υ|U9ЅO��U9P����U9�����U9����U9 ����U9��G�V9P�G�V9P�Џ$V9Џ(�4V90���hV9����lV9��H��V9P����V9�����V9��m�W9p���4W9����DW9��2��W9@����W9��س�W9�Z��W9`�n��W9p��X9�%�TX90���XX9����lX9��R��X9`���X9 ����X9����X9�����X9��2��X9@���Y9��J�Y9P�h�Y9p���Y9�	� Y9�6�TY9@�R�`Y9`���dY9��H�hY9P�G�tY9P����Y9�����Y9����Y9 �w��Y9�����Y9��8��Y9@����Y9�����Y9��E��Y9P����Y9�����Y9�����Y9�����Y9�����Y9��$��Y90����Y9��K��Y9P���Z9����Z9���Z9�� Z9��PZ9���Z9���Z9�4�Z9@�
�Z9�

�Z9
[
[9`
�
[9�
� [9�x0[9��<[9�H[9�GT[9P�>h[9�><?�[9@?b?�[9p?�?�[9�?EL�[9PL�W$\9�Wid\9i"i�\90i�j�\9�jt�\9 t�{�\9�{{�]9����@]9���D]9 ���L]9����P]9��h]9���l]9�����]9��Ն�]9���]9 � ��]9 ���]9�9��]9@����]9�����]9�T�0^9`�u�\^9����`^9����^9�3��^9@���^9 �Ӕ�^9����^9�i��^9p����^9����^9�8��^9@����^9�����^9��Ρ�^9С��^9����^9�����^9����_9��Ģ_9Тآ_9���_9�L�_9P���_9��$�_90���_9��2� _9@�\�0_9`�$�4_90��T_9�G�l_9P���|_9����_9�ӯ�_9�k��_9p����_9��R��_9`�'��_90���`9����,`9��0`9 �d�@`9p���H`9���P`9 �i�T`9p���|`9��8��`9@���`9 ���`9 ����`9�����`9�����`9�����`9���`9����`9�����`9���a9 ���a9��a9�h�a9p�u�$a9����(a9��6�<a9@�{�Ha9�����a9��q��a9��T��a9`���a9 �Mb9P�	 b9�	N`b9Pexb9p��b9�f�b9p�!�b9"�&�b9�&�1$c922Tc92�4Xc95,5�c905V5�c9`57�c9 7�7�c9�7�7�c9�78�c98�:�c9�:uA�c9�A
Bd9B�D$d9�D]FHd9`F�GTd9H�Kpd9�K�L�d9�L�L�d9MM�d9M#M�d90M&O�d90O\O�d9`O�O�d9�O\U�d9`UqZe9�Z^4e9 ^	aTe9a�ate9�a�a�e9b0d�e90d�f�e9�f�h�e9�hxi�e9�i�i�e9�i�j�e9�j�m�e9�m�m�e9�m�mf9nwf9 w5y(f9@y�yPf9z}`f9 }��xf9�����f9�����f9���g9���\g9��K�dg9P���lg9���tg9��U�|g9`����g9����g9 ����g9����g9����g9����g9����g9�����g9�����g9�b��g9p���g9����g9�e��g9p����g9���g9 ��h9��Th9 �g��h9p�T��h9`�9��h9@�X�i9`���8i9��
�Ti9�8��i9@���i9 �	��i9�G��i9P����i9�����i9��@��i9@����i9�����i9����j9����j9���j9���� j9���,j9 ���Tj9����dj9��T�hj9`�]�j9`��j9�8�j9@��j9��	�j9�	�j9 ik9p�k9�Bk9P� k9��
(k9�
Z4k9`�Hk9�*Pk90
\k9lk9.�k90M�k9P~0�k9�0�3�k9�3�5�k9�5�@�k9�@�Jl9�J,Q8l90Q�\Pl9�\��ll9���l9���l9�r��l9��6��l9@�G��l9P���m9��n�m9p��4m9 �C�Lm9P���Tm9����|m9�����m9��o��m9p�<��m9@�� n9�E�0n9P��8n9�ePn9p|n9�C�n9P*�n90��n9���n9���n9�,�n90)�n9 )�1<o9�1�1Xo9�1#2\o90252do9@2F2ho9P2Y2lo9`2{2po9�2�2to9�2�2xo9�2�2|o93M3�o9P36�o9 6<6�o9@6z6�o9�6�6�o9�6�6�o9�6^7�o9`7�7�o9�7�7�o9�7N8�o9P8|8�o9�8�8�o9�8>9�o9@9l9�o9p9�9�o9�9.:�o90:\:p9`:�:p9�:;p9 ;L;p9P;�;p9�;<(p9<�<0p9�<�<4p9�<=8p9 =�=Dp9�=�=Lp9�=b>Pp9p>?\p9 ?<?dp9@?z?hp9�?@tp9@,@|p90@j@�p9p@�@�p9�@�B�p9�B�B�p9�B�B�p9�B�B�p9CVC�p9`C	E�p9E�E�p9�E6I�p9@I�M�p9�M}O�p9�OIQ�p9PQVQq9`QcQq9pQ�Qq9�QRq9R[Tq9`T�T,q9�T8U8q9@U�VDq9�VWTq9 W�W`q9�WXhq9XWXlq9`X�Xxq9�XLY�q9PY�Y�q9�YNZ�q9PZVZ�q9`ZcZ�q9pZ�Z�q9�Z[�q9[?[�q9@[z[�q9�[�[�q9\�\�q9�\]�q9]�]�q9�]�_�q9�_1`r9@`�`r9�`�`r9�`�`r9�`a r9a�a$r9�a�a,r9�a@b0r9@b�b<r9�b�bDr9�b�bHr9�b�bLr9cycPr9�ctdTr9�d�ddr9�d�dhr9�d�dlr9eepr9 eaetr9pe�exr9�e�e|r9�e�e�r9fUf�r9`f�f�r9�f�f�r9�f�f�r9gAg�r9Pg�g�r9�g�g�r9�g�g�r9�g1h�r9@h�h�r9�h�h�r9�h�h�r9ii�r9ii�r9 i7i�r9@i_i�r9`i�i�r9�i�i�r9�i�i�r9�i�i�r9jj�r9 j7j�r9@jWj�r9`jwj�r9�j�j�r9�j�j�r9�j�j�r9�jk�r9kXu�r9`u�us9�u�us9�u�us9�u�u s9�uv$s9v$v0s90v3v4s9@vXv8s9`vdv@s9pv�vDs9�v�wTs9�wxls9 x9xps9@xYxts9`xuxxs9�x{{|s9�{|�s9 |9|�s9@|�|�s9�|�|�s9}}�s9 }m}�s9p}�}�s9�}~�s9 ~g~�s9p~0�s90[��s9`�ʀ�s9Ѐ���s9��t9 ���t9���0t9�J�8t9P�ֈ<t9��Ht9�}�Tt9��
�\t9��dt9 ��ht9��xt9 ��|t9���t9 ����t9�����t9����t9�����t9��i��t9p���t9���t9 �[��t9`�Цu9Ц��u9��׬,u9�P�@u9P���Lu9�5�\u9@���pu9���|u9�%��u90����u9�����u9�����u9��]��u9`����u9�w��u9��f��u9p���v9��}�v9����(v9���4v9���8v9��=�Hv9@���Tv9��8�hv9@���tv9�����v9�m��v9p����v9��[��v9`�i��v9p���v9���v9�:w9@&w901 w9@�,w9��<w9�QPw9`�`w9��lw9�=xw9@�!�w9�!@"�w9@"v(�w9�(,�w9 ,�/�w9�/�<�w9�<<>�w9@>GA x9PAEHx9E�Fpx9�F�F�x9�F�K�x9�KMP�x9PP�P�x9�P>Q�x9@Q�Vy9�Vt]y9�]p`(y9p`�c8y9�c`gLy9`g)k\y90k.opy90o�u�y9�u�v�y9�vyw�y9�w�{�y9�{}�y9 }�~�y9�~ ��y9 ���y9���z9����z9���z9 �)�(z90�V�,z9`�u�4z9����8z9��ĉ<z9ЉՉ@z9��Dz9���Hz9��Lz9�{�Pz9���\z9�[�hz9`�Ջtz9�X��z9`�،�z9�v��z9��h��z9p�t��z9�����z9����z9�&��z90����z9�����z9��)��z90����z9��q�{9��Y�{9`��� {9���,{9 ���<{9��@�L{9@���\{9��*�`{90���d{9����h{9���t{9��\�|{9`�X��{9`���{9 �r��{9��Ү�{9����{9���{9�8��{9@����{9��L��{9P�k��{9p�Ŀ|9п7�|9@��,|9���@|9����X|9����p|9�����|9�q��|9����|9�V��|9`�}��|9��7��|9@����|9����}9��~�,}9��c�@}9p���h}9����}9���}9 �'��}90����}9����}9�l��}9p����}9����}9����}9����}9�����}9�����}9��_	�}9`	�	~9�	p	~9p	�	~9�	
	~9
	�
	(~9�
	\	0~9`	�	<~9�	V
	D~9`
	[	L~9`	�	T~9�	�	`~9�	�	p~9�	�	�~9	F"	�~9P"	k$	�~9p$	�$	�~9�$	�$	�~9�$	f'	�~9p'	+,	�~90,	�,	�~9�,	�,	�~9�,	$.	�~90.	�P	�~9�P	�Q	9�Q	�Q	9�Q	R	 9R	>R	$9@R	nR	(9pR	�R	,9�R	�R	09�R	ZS	49`S	�S	L9�S	�S	P9�S	T	X9 T	�T	\9U	-U	l90U	`U	p9`U	�U	t9�U	'V	x90V	sV	|9�V	�V	�9�V	<W	�9@W	�W	�9�W	�W	�9X	X	�9X	OX	�9PX	
Y	�9Y	�Y	�9�Y	KZ	�9PZ	Z\	�9`\	
^	�9^	a	�9a	�d	�9�d	�l	�9�l	�r	0�9�r	��	@�9��	,�	T�90�	8�	l�9@�	��	p�9�	�	|�9 �	��	��9��	=�	��9@�	e�	��9p�	�	��9�	�	��9 �	`�	��9`�	��	��9��	Ƒ	��9Б	&�	��90�	��	��9��	�	��9�	g�	��9p�	�	Ā9 �	C�	̀9P�	��	Ѐ9��	�	؀9�	��	܀9��	�	�9�	�	�9�	؛	$�9�	W�	,�9`�	��	0�9��	K�	4�9P�	O�	8�9P�	��	L�9��	��	p�9��	��	��9��	�	��9�	:�	ȁ9@�	��	́9��	��	ԁ9��	ץ	؁9�	�	܁9 �	��	�9��	ͦ	�9Ц	��	�9��	��	��9��	�	��9�	��	�9��	W�	�9`�	��	�9��	@�	<�9@�	z�	X�9��	��	\�9��	¬	`�9Ь	+�	d�90�	B�	t�9P�	r�	x�9��	��	��9��	�	��9�	M�	��9P�	��	��9��	I�	��9P�	2�	��9@�	��	��9��	��	Ђ9��	�	܂9 �	��	�9��	#�	�90�	\�	�9`�	��	�9��	��	�9�	��	8�9�	6�	D�9@�	�	T�9�	�	d�9�	,�	p�90�	p�	|�9p�	�	��9�	,�	��90�	p�	��9p�	��	��9��	��	��9��	�	̃9�	�	؃9�	��	�9��	��	�9��	�	8�9 �	��	H�9��		�	X�9�	x�	p�9��	��	��9��	:�	��9@�	��	��9��	�	��9 �	��	��9��	K�	��9P�	��	��9��	j�	��9p�	��	��9�	��	��9��		�	��9�	k�	̄9p�	i�	�9p�	��	�9��		�	�9�	��	�9��	��	�9��	S�	,�9`�	��	8�9��	(�	H�90�	W�	d�9`�	��	l�9��	��	|�9��	��	��9��	�	��9 �	��	ȅ9�	t�	ԅ9��	��	�9��	!�	�90�	Q�	�9`�	�	$�9 �	��	8�9��	��	H�9��	�	l�9�	�	p�9�	�	��9 �	G�	��9P�	�	��9�	a�	��9p�	�	��9�	��	��9��	%�	��90�	��	��9��	E�	��9P�	��	��9�	��	��9��	v
̆9�
�
�9�
=
�9@
�
��9�
�
��9
,
�90
D
�9P
�
(�9�
K
4�9P
�
L�9�
&	
T�90	
�
`�9�
�
x�9�
z
|�9�
�
��9�
�
��9�
i
��9p
I
��9P
) 
��90 
:!
ć9@!
[!
ԇ9`!
p$
؇9p$
�$
�9�$
�$
�9�$
�%
��9�%
�&
�9�&
�&
�9'
�'
�9�'
�(
 �9�(
=)
0�9@)
�)
8�9�)
*
D�9*
+
P�9 +
�+
X�9�+
�,
\�9�,
X-
d�9`-
�-
l�9�-
�.
|�9�.
�/
��9�/
�2
��9�2
B3
��9P3
�5
��9�5
28
Ј9@8
:
�9:

=
��9=
�=
�9�=
>
�9>
�?
(�9�?
�L
8�9�L
�Z
P�9�Z
�[
p�9\
@\
x�9@\
E\
��9P\
V\
��9`\
s\
��9�\
�\
��9�\
�\
��9�\
�\
��9�\
�\
��9�\
]
��9]
]
��9 ]
a]
��9p]
�]
��9�]
�]
��9�]
{^
��9�^
_
ĉ9 _
�`
Љ9�`
Ac
�9Pc
�c
�9�c
�c
�9�c
�c
�9d
d
�9 d
)d
�90d
Ed
�9Pd
\d
�9`d
kd
�9pd
ud
 �9�d
�d
$�9�d
�d
(�9�d
�d
,�9�d
$e
0�90e
)f
@�90f
*g
P�90g
	h
\�9h
ch
h�9ph
�i
p�9�i
�i
��9�i
dj
��9pj
xj
��9�j
�j
��9�j
�k
��9�k
�k
��9�k
@l
��9@l
Zl
Ċ9`l
�l
̊9�l
]m
؊9`m
�m
�9�m
�m
�9�m
on
�9pn
o
�9 o
#p
�90p
@p
$�9@p
�p
(�9�p
Jq
0�9Pq
�q
@�9�q
r
L�9 r
_s
T�9`s
�s
h�9�s
 u
t�9 u
�u
��9�u
�u
��9v

v
��9v
�w
��9�w
�w
��9�w
�x
��9�x
�z
ċ9�z
 {
܋9 {
W{
�9`{
�{
�9�{
�{
��9�{
|
�9 |
N|
�9P|
�~
�9�~
6
 �9@
}
(�9�
�
0�9�
�
4�9�
�
8�9�
1�
<�9@�
�
H�9 �
�
T�9�
?�
h�9@�
�
|�9�
A�
��9P�
|�
��9��
��
��9��
��
��9��
��
��9��
L�
Ќ9P�
�
،9�
Џ
�9Џ
��
�9��
�
�9�
_�
��9`�
s�
�9��
��
�9��
ۓ
 �9�
�
8�9 �
��
@�9��

�
H�9�
{�
`�9��
��
x�9��
A�
��9P�
�
��9�
��
��9��
Ù
��9Й
�
��9 �
q�
��9��
��
��9��
͛
��9Л
��
؍9�
6�
�9@�
��
��9��
ߝ
�9�
�
�9�
+�
�90�
[�
$�9`�
��
<�9��
�
D�9�
?�
L�9@�
S�
T�9`�
��
X�9��
��
p�9��
��
��9�
D�
��9P�
��
��9��
A�
��9P�
ѧ
��9�
B�
Ȏ9P�
m�
܎9p�
��
�9��
٫
��9�
/�
�90�
p�
�9p�
��
�9��
��
 �9�
3�
(�9@�
i�
,�9p�
��
0�9��
˭
4�9Э
��
8�9�
+�
<�90�
Y�
@�9`�
��
D�9��
��
H�9��
�
L�9�
�
P�9 �
��
T�9��
��
X�9��
�
\�9 �
Q�
`�9`�
��
d�9��
��
h�9��
�
l�9�
�
p�9 �
g�
t�9p�
��
x�9��
ɱ
|�9б
�
��9�
7�
��9@�
��
��9��
��
��9��
ײ
��9�
��
��9��
��
��9��
�
��9�
9�
��9@�
g�
��9p�
��
��9��
�
��9�
}�
�9��
Ŷ
�9ж
�
�9 �
u�
�9��
1�
�9@�
=�
�9@�
��
�9��
�
$�9�
 �
(�9 �
�
,�9�
�
D�9�
	�
\�9�
�
t�9�
Ⱦ
��9о
|�
��9��
8�
��9@�
�
̐9�
��
�9��
R�
�9`�
��
�9��
��
 �9��
��
8�9��
��
P�9��
��
h�9�
��
��9�
��
��9�
��
��9��
��
đ9��
��
ԑ9��
Q�
�9`�
"�
��90�
I�
�9P�
��
(�9��
��
,�9��
��
8�9��
v�
H�9��
3�
X�9@�
�
`�9�
��
p�9��
��
|�9��
��
��9��
��
��9��
�
��9�
�
��9 �
1�
��9@�
D�
��9P�
h�
��9p�
}�
��9��
��
��9��
��
��9��
��
Ē9��
��
Ȓ9��
��
̒9��
�
В9 �
F�
Ԓ9P�
q�
ؒ9��
��
ܒ9��
��
�9��
��
�9��
�
�9�
/�
�90�
K�
�9P�
i�
�9p�
��
��9��
"�
��90�
y�
�9��
��
�9��
"�
�90�
��
�9��
��
�9��
&�
�90�
V�
�9`�
��
�9��
��
 �9��
��
(�9�
W�
0�9`�
��
4�9��
�
8�9 �
|�
@�9��
��
H�9��
��
L�9��
\�
T�9`�
,�
`�90�
�
p�9 �
*�
��90�
�
��9�
��
��9��
��
��9�
[�
�9`�
4�
0�9@�
�p�9����9����9����9��Ȕ9�̔9FԔ9P\�9`��9����9����9	�9�9��8�9��<�9��	P�9�	�
��9�
2ĕ9@sȕ9��̕9��Е9���9�� �9� � 4�9!�!8�9�!�$<�9�$�&T�9�&_)l�9`)�)��9�)Y-��9`-�.��9�.)/��90/U0Ȗ9`0�1ܖ9�1)3�903]3�9`3(5�905�68�9�68P�9 8F9l�9P9�9|�9�9x:��9�:�>��9�>U@��9`@�B��9�BoE̗9pE�H�9�H;K��9@K?N�9@N�P�9�P�Q,�9�QjR4�9pR%S<�90S�SD�9�S�UL�9�UHWT�9PWY\�9Y�\d�9�\q]��9�]_��9_�`��9�`�a��9�a%b��90b6bĘ9@b�bȘ9cdИ9d4eܘ9@e�f�9�f�y�9�y�z8�9{{D�9{{H�9 {/{L�90{�{P�9�{�{\�9�{�{h�9||l�9|a|p�9p|�||�9�|�|��9�|�|��9�|X}��9`}�}��9�}~��9~-~��90~�~��9�~4ș9@��9�m���9p�}��9��P��9P�\��9`�s� �9��k�$�9p�u�8�9����<�9����@�9����D�9��΄H�9Є;�P�9@��`�9 �x�p�9��
���9����9 �O���9P�^���9`�n���9p�~���9������9��L���9P�H�̚9P��ؚ9 �B��9P����9�����9���9���9����9����9��(�9 �d�0�9p��8�9���D�9����T�9��ŰX�9а۰\�9�}�`�9��M�p�9P�x���9������9������9�����9�Ƚ��9нԽ��9����9����9��ě9��ț9 �/�̛90�4�Л9@�G�ԛ9P�Z�؛9`�g�ܛ9p�x��9�����9�����9�����9�����9��Ǿ�9о߾��9����9����9���9���9 �(��90�8��9@�H��9P�]��9`�{��9���� �9���$�9��(�9 �^�,�9`���0�9���4�9��8�9 �W�<�9`���@�9���D�9���H�9����L�9���P�9����T�9����X�9��e�\�9p���l�9����p�9��M�t�9P�~���9������9������9������9������9����Ĝ9����Ȝ9����̜9����М9����Ԝ9���؜9��9��9@�9��9@�e��9p��$�9�_�,�9`�z�0�9����4�9����8�9����<�9��0�H�90���T�9��P�`�9P��l�9���x�9������9�����9 �����9��a���9p���̝9��w��9�����9����9 ����9��]�(�9`���@�9���T�9��0l�9�0�5��96%6��90666��9@6<8��9@8:О9 :�:�9�:n;�9p;s<�9�<V=�9`=�>�9�>B �9BrC0�9�C$DD�90D�FX�9�F6Hh�9@H�K|�9�K�K��9�K7L��9@L�L��9�L�L��9MKM��9PMVMğ9`MfMȟ9pMvM̟9�M�MП9�M�Mԟ9�M�Nܟ9�N8O�9@OP�9�P�P�9�P�P��9QQ�9QQ�9 Q�Q�9�Q�Q�9�Q�Q�9�Q�Q�9�QLR �9PR�R0�9�R/T4�90TvTH�9�T�TP�9�TMUX�9PUkUd�9pU:\l�9@\b\��9p\�\��9�\�\��9�\8]��9@]�^��9�^`��9 `*aȠ90aIbР9Pb�cܠ9�c�c�9�cBe�9PeUe��9`ehe��9pere�9�e�e�9�e�e�9fif�9pf�f�9�fg�9 g.g �90g:g(�9@g�h,�9�h	i8�9i�j@�9�j�jL�9�j�jP�9�j�jT�9kkX�9k�k\�9�k�kd�9�k�kh�9�kJll�9Pl�lx�9�l�n��9�n�o��9�o�p��9�p�r��9�rJs��9Psytġ9�t�uԡ9�u�xܡ9y�y�9�y�|�9�|)��90�ۀ$�9��,�9�Z�0�9`���H�9Є_�`�9`��l�9���x�9��K���9P����9����9 �����9��~�Ȣ9��S�ܢ9`���9 �ތ�9����9��U�,�9`�a�@�9p�o�T�9p�ד`�9���t�9��̸��9и���9�g���9p���ģ9����ȣ9���أ9���9�.��90����9 ����9����9 �&��90����9����$�9����4�9��R�L�9`���X�9����p�9����|�9��~���9������9�~���9������9������9��b�ؤ9p����9�����9�����9����9�J��9P���$�9����<�9��*�@�90���H�9���`�9��d�9 ���h�9����p�9�����9�����9�����9�}���9��s�ĥ9���ܥ9�|��9��n��9p���9�O��9P��
�9
�
(�9
�
@�9�
r*
X�9�*
+
p�9+
-
|�9-
�/
��9�/
>1
��9@1
3
��93
U7
��9`7
GK
̦9PK
�N
�9�N
�O
��9�O
P
�9P
�P
�9�P
4Q
�9@Q
�Q
$�9�Q
&R
,�90R
1R
4�9@R
FR
8�9PR
pR
<�9pR
�R
@�9�R
#T
D�90T
W
T�9 W
|Y
`�9�Y
[
l�9[
�\
x�9�\
_
��9 _
Va
��9`a
�b
��9�b
~c
��9�c
0d
̧90d
�d
�9�d
ne
�9pe
 f
�9 f
�i
�9�i
�l
,�9�l
�n
D�9�n
0p
T�90p
Dt
x�9Pt
�t
��9�t
du
��9pu
�u
ب9�u
w
�9w
Yw
�9`w

y
�9y
Ay
�9Py
z
�9z
�{
(�9�{
Y}
@�9`}
(~
p�90~

|�9
B�
��9P�
��
��9��
�
��9�
݁
��9�
(�
ȩ90�
;�
ة9@�
��
�9��
ԃ
�9�
��
�9��
؅
�9�
��
(�9��
N�
4�9P�
^�
D�9`�
n�
T�9p�
��
d�9��
�
t�9�
��
��9�
��
��9�
��
��9�
)�
��90�
˓
Ī9Г
k�
Ԫ9p�
��
�9��
>�
�9@�
�
��9�
Ț
�9К
��
�9��
ќ
4�9�
!�
@�90�
]�
L�9`�
��
X�9��
K�
d�9P�
?�
|�9@�
^�
��9`�
ۡ
��9�
8�
��9@�
U�
��9`�
c�
��9p�
��
��9��
ѣ
ī9�
i�
̫9p�
B�
Ы9P�
U�
ܫ9`�
e�
�9p�
�
�9�
��
�9��
ɩ
��9Щ
	�
�9�
�
�9�
��
�9�
�
�9�
K�
�9P�
��
 �9��
��
,�9��
5�
0�9@�
�
<�9�
��
H�9��
��
T�9��
��
`�9��
ů
d�9Я
"�
h�90�
+�
l�90�
ñ
x�9б
,�
��90�
>�
��9@�
��
��9��
��
��9��
��
��9�
ع
��9�
�
̬9�
1�
ܬ9@�
׿
�9�
Z�
��9`�
#�
�90�
��
�9��
\�
0�9`�
��
H�9�
I�
P�9P�
�
`�9 �
�
h�9�
U�
l�9`�
��
p�9��
��
x�9��
��
��9�
�
��9 �
��
��9�
��
��9��
l�
��9p�
��
ԭ9�
��
�9��
��
�9��
3�
�9@�
��
�9��
��
 �9��
e�
4�9p�
G�
D�9P�
�
X�9 �
X�
l�9`�
��
|�9��
�
��9�
[�
��9`�
��
��9��
\�
��9`�
��
��9��
��
��9�
�
Ȯ9 �
7�
̮9@�
��
Ю9��
��
�9��
�
�9�
2�
�9@�
G�
��9P�
x�
��9��
��
�9��
�
�9�
�
(�9�
��
8�9��
N�
D�9P�
&P�90�`�9��l�9�p�9�Y��9`h��9px��9����9����9����9����9����9����90_��9`���9����9����9��į9ȯ9�̯9��ԯ9�qܯ9�u	�9�	d��9p��9���9���9��$�9�
(�9 
!4�90rH�9��X�9��\�9�0d�90Lp�9Pt�9 ��9 ���9���9���9�G��9P{İ9��Ȱ9�m̰9p�ذ9��9 l�9�G�9P\��9`z�9�o �9p _!$�9`!�",�9�"�$8�9%%D�9 %�&L�9'�'`�9�'v(p�9�(�*x�9`1/dx@90dXh�[9`hi�m9i^i�m9^i�i�m9�i�l�m9�lCn�m9PnNp��9bB

0`pP�	B�,)�	)	B�,>I�	I10`pPqq�Rh�Q_�PV�OM�ND�M;�L2�K)xJ!hI�0`pP
��	��55�	,�#��xh
0`pP�20++�%���xh	0`qq��h��_��V��M��D��;��2��)x�!h��0`pP
��	��h	0`

h�0`pP2020`pPP�G�>�5�
,�#xh
#0`
p	P����>>�	5�,�&� ��xh
0`pqq��h�_�VȿM��D��;��2��)x�!h��0`pP
��	��.020		0`+0`pP��44�+�"�x
h	#0`		0`

0`p�0`qq�eh�d_�cV�bM�aD�`;�_2�^)x]!h\�0`pP
��	��x	h�--�$���x
h0h	0`pPLL�C�:�1�(�xh-0`pP��h	0`pP�0`pP))�	 ��xh&
&�xh
"0`pP�2
0	`pP���h
r0`pP�
h�
0	`pP���GG�;>�:5�9,�8#x7h6y0`
p	P����

*0`pr0`p2
0	`pP���20`pqq�Lh�K_�JV�IM�HD�G;�F2�E)xD!hC�0`pP
��	��bxh
 0`pP�B0`
��x
h�0!!���x
h�0BBR0`pR0`pR0`p88�/�&�xh
20`pP�	
0	`pP���B0`h
0`p"
"�
x	h	0`bxh0`
p	P����
h
0`pP��h
0`
p	P����
h�
0	`pP���B0`BBR0`pBii�g`�fW�eN�dE�c<�b3�a*�`!x_h^�
0	`pP���B�0`pP0`pP��

0`pP�	B
0	`pP���

0`pP�%0`pP20`p2020

0`p�0`pP��,,�&� ��xh
�0`pP��x	h�<<�	3�*�$���x
h0		0`

(0`pP�h
0	`pP���bh,[0`
p	P����B

0`p[[�
R�I�@�
7�	.�%��xh0`pP��

�0`pP��0`pP�0`pP��xh�0`20`pYY�HP�GG�F>�E5�D,�C#xBhA�0`
p	P����	
0	`pP���20202020`p2020h)0`
p	P����55�+,�*#x)h(Y0`
p	P����##xh)0`
p	P����h�0`ph�0`phR0`pB0`pPr0`p	xh
$0`pGG�>�5�,�
#xh#0`
p	P�����0`p20`pB0`pP20`pB0`pPB0`B0`pPB0`0`pP��20`pB0`	h
0`pP�20`p20`p88�/�)�#�xh0`
p	P�����0`pP��NN�E�<�3�*�!xh
(
0	`pP���		+0`2020h-]0`
p	P����B0`B0`B0`20`pB0`2020`p>>��5��,��#x�h�_0`
p	P����20x	h�0`pP���xh0`pP##x^h]�0`
p	P�����

20`pP�

�0`pP�
%0`
p	P����YY�rP�qG�p>�o5�n,�m#xlhk�0`
p	P����h	0`R0

hr020`pR0

20`pP�B0`##x)h(U0`
p	P����h

0`px
h�0h
20`p^^�U�L�C�
:�1�(�
x	h#0`pP��	h
&0`pP�__�V�M�D�
;�2�)�
 �	xh
"0`pBbb�Y�P�G�>�
5�,�#�
x	h
$0`p))�#���xh�0`p++�%���xh	0`x	h�x	h�66�-�'�!��xh0`pPxh�0`66�-�'�!��xh0`pPx	h�AA�	8�/�)�#��xh
0`pP�xh�0`00`pP��0`p
0`pP
��	��r0`pB20

20`pP�20B0``p--�'�!��xh0`pP	x
h�0`pPB0`bb�Y�
P�G�>�
5�	,�#�xh0`
p	P����`p`p--�'�!��xh0`pPGG�>�
5�	,�#�xh0`
p	P����\\�S�
J�A�8�
/�	&�xh0`
p	P����44�+�"�xh	10`0`pP��qq�Eh�D_�CV�BM�AD�@;�?2�>)x=!h<�0`pP
��	��`p`pGG�
>�	5�,�&� ��xh
0`pGG�
>�	5�,�&� ��xh
0`po	0`pP''�!���x
h�`pb0`pB!
!xh
0	`pP���20r0`pEE��<��3��*��!x�h�L
0	`pP���B�bb20��B�0`pP��b�B0`;;�	2�)�#�xh0`
p	P����  �xh�0`
p	P����bbb##x2h1f0
`	pP�b0`pP��

r0`pP�##�xh0`
p	P����		0ppYY�9P�8G�7>�65�5,�4#x3h2t0
`	pP�	h�0`pP���0`g
0`p
P	���0`

h�0x
h
0`pP�20h�0`pLL�C�:�
1�	(��xh0`pP��--�'�!��xh0`pP��xh�0`pPP�G�>�5�,�#�xh
<0`p88�/�&�xh
60`pP�OO�F�=�4�
+�"�x
h		#0`h�0`bb�Y�P�G�>�5�,�#xh30`
p	P�����,
,�?#x>h=�0
`	pP�qq�mh�l_�kV�jM�iD�h;�g2�f)xe!hd�0`pP
��	��DD��;��2��)x�!h�w0`pP
��	��UU�L�
C�	:�1�+�%��xh0`pP��

0`pP�xhhg
�0`pP�B0`##xh/0`
p	P����B0`pP
=0`
p	P����R0`p
'0`
p	P�����0BAA�	8�/�)�#��xh
0`pP�B0`20`p2
0	`pP���!!hM�0`pP
��	��2020

�0`pP�20x	h�bBGG�>�5�,�#xh50`
p	P����__��3V��3M��3D��3;��32��3)x�3!h�3�g0`pP
��	��x	h�	x
h�0`pPb**�$��xh�
0	`pP���**�$��xh�
0	`pP���B0`pPbb0`pPr0`p�0`B0`0`pP��bb��Y��P��G��>��5��,��#x�h��0`
p	P����2020>>�I5�H,�G#xFhE�0`
p	P����kk�&b�%Y�$P�#G�">�!5� ,�#xhO0`
p	P����ii�`�W�N�E�<�3�*�!xh6
0	`pP���``�W�N�E�
<�3�*�
!�	xh#0`pP�0``�W�N�E�
<�3�*�
!�	xh#0`pP``�W�N�E�
<�3�*�
!�	xh#0`pP33�*�$���x
h0B	B0`
p	P����	$
0	`pP������
xh�	x
h�0`pP%
%����
xh�
xh
r0`pP�AA�	8�/�)�#�xh0`
p	P����00�*�$��xh�
0	`pP���++�%���xh	0`20`p20	�0`
p	P����BB20`pB0`pP`phR0`p%
%����
xh�
�xh�0`px	h�B0`20B0`pP20`pkk�b�Y�P�G�>�5�,�#x
h-0`
p	P����

�0`pP�	B0`
p	P����	��
xh�0`pP�202044�.�(�"���xhB0`pP��B0`$$�
x	h0`pPp

R0`pP�x	h�BB0`B

20`pP�Bxhr0`p�0`PP�G�>�
5�	,�#�xh0`
p	P����b0`pP33�*�$���x
h0,,�#xh
!0`
p	P����55�,�#xh'0`
p	P����h0`
p	P����kk�b�Y�P�G�>�5�,�#xh30`
p	P����
50`
p	P����h
0`
p	P����bxh

0`pP�kk�b�Y�P�G�>�5�,�#xhA0`
p	P����OO�F�=�4�+�"�xh	70`GG�>�5�,�#x
h%0`
p	P����88�
/�	&��xh
0`pP����xh
�0`pP�R02020((��xh0`pP��22�x)xw!hv�0`pP
��	��B0`pP��,,�
#x	h0`
p	P����20`ph�0`
p	P����OO�
F�=�4�
+�	"�xh0`pP��"
"���xh�0`b0`pP��2020`p
0`
p	P����,,�#xh'0`
p	P����##xh0`
p	P����##xh0`
p	P����20`pB0`pP�0`pP�xhR
0	`pP���0`0`pP�
90`
p	P����bb##xh=0`
p	P����99�
0�	'xh0`
pP�	��b0`pP	�0`
p	P����kk�Ab�@Y�?P�>G�=>�<5�;,�:#x9h8�0`
p	P����bb�Y�P�G�>�5�,�#xh;0`
p	P����22�
)�	 xh0`
p	P����kk�#b�"Y�!P� G�>�5�,�#xhI0`
p	P����R00`0h"B0`pPx
hr0BEE�<�3�*�!�xh
(0kk�b�Y�P�G�>�5�,�#xh;0`
p	P����cc�0Z�/Q�.H�-?�,6�+-�*$�)x(h'c0`pPbb�Y�P�G�>�5�,�#�xh
<0`p>>�5�,�
#x	h0`
p	P����##���xhJJ�A�8�
/�	&���xhhI�0`
p	P����kk�b�Y�P�G�>�5�,�#xh70`
p	P����	b0`
p	P�����0`0`pP20B0`20`pB0`pP��BB0`bh88�/�&�xh
&0`pP�h
0--�$���x
h0UU�L�C�:�1�(�xh
+0`pP��0	B0`
p	P����20`pB0`R0`p2020`p2020R0`pR
0	`pP���20B0`B0`pP
%,0`pP
��	��R0`p�
0	`pP���55�=,�<#x;h:}0`
p	P����	h�0`pP��	
0	`pP���h/0`
p	P����##xh0`
p	P����
0`
p	P����h0`
p	P����__�%V�$M�#D�";�!2� )x!hM0`pP
��	��	B0`
p	P����
xh�0`
p	P�����0`pP��Br0
0`
p	P����h'0`
p	P����
0`
p	P����b55�7,�6#x5h4q0`
p	P����B0`r
0	`pP���B0`pP��B0`B0`	�0`
p	P����

R0`pP�99�0�
'�	xh
0	`pP���

20`pP�B	b0`
p	P����>>��5��,��#x�h�W0`
p	P����B0`R0`p##x"h!G0`
p	P����
10`
p	P����20,,� #xhC0`
p	P����bb�Y�
P�G�>�
5�	,�#�xh0`
p	P����h=0`
p	P����2020`pB0`B0`20B0`20B0`20B0`20B0`20B0`20B0`20B0`20B0`20B0`200�xh�
0	`pP���0`0`pP��B0`pP2020�0`pP��B0`B0`

r0`pP�B0`20B0`B0`2
0	`pP���B0`pP2020B0`20B0`20b0`pPB0`202020`p20

20`pP�	B0`
p	P����B0`20`pB

20`pP�	b0`
p	P����B0`pP��20`p0`pP20`p0`pP��

0`pP�

20`pP�##xh30`
p	P�����20`pR0`p2020

20`pP�

20`pP�B0`pPB0`B0`2
0	`pP���

R0`pP�B0`

20`pP�b0`pP��B0`B0`pP��b0`pP��B0`

20`pP�b0`pP��B0`

20`pP�b0`pP��20`pb0`pP��B0`B0`

20`pP�b0`pP��B0`

20`pP�

20`pP�B0`

R0`pP�B0`b0`pP��B0`

R0`pP�

r0`pP�	�0`
p	P����	�0`
p	P����B0`

R0`pP�B0`pP2
0	`pP���

R0`pP�B0`B0`

R0`pP�b0`pP��B0`pPB0`B0`

20`pP�b0`pP��20

R0`pP�	B0`
p	P����R0
`	p����	b0`
p	P����))�#�xh0`
p	P����55�,�#xh'0`
p	P����55��,��#x�h�!0`
p	P����))�#�xh0`
p	P����B55�,�#xh70`
p	P����55��,��#x�h�10`
p	P����R0B0`

R0`pP�b0`pP��

20`pP�b0`pP��

20`pP�b0`pP��2
0	`pP���	b0`
p	P����	b0`
p	P����b0`20`pB0pB0`pP

20`pP�B	b0`
p	P����R0`pb20`p20`p20`pR0`pR0`pR0`p	b0`
p	P����R0`p

20`pP�20	�0`
p	P����B	b0`
p	P����b0`b0`pPb0`pP

R0`pP�20`pBBr0`pBBB

20`pP�

R0`pP�20B0`2
0	`pP���R
0	`pP���B0`pP��B0`pP��xhr0`p	B0`
p	P����	B0`
p	P����B0`pPx
h�0

h�0	b0`
p	P����	b0`
p	P����	b0`
p	P����	�0`
p	P����	b0`
p	P����	b0`
p	P����B0`pP��))�#�xh0`
p	P����h�0`
p	P����BB0`pP�0`p20`pR`pPBBB	�0`
p	P����BBBBR0`p2020`p2020B20`p

R0`pP�B0`pP��

20`pP�B0`pP2
0	`pP���B00`pP��>>�X5�W,�V#xUhT�0`
p	P����
�xh�0`pR0�0`pPB0`��

xhB44�+�%���xh	0`20!0`pP��

0`ph*
0	`pP���

20`pP��0`pP��	�0`
p	P����R0`p�

xhBB�B�YY�P�G�
>�5�,�
#�	�xh!

xhB

0`pP�++�%����
xh��
xhbKK�
B�	9�0�*�$���x
h0x	h�B�		h�h"==�4�.�(�"���xh  ���x	h�x
hr020B
��x
h�0�0

0`pB0`pPR0`pr0`p

hR0B0`20`pB0`pP��xh�0`�0`�0`pP�0`pPB0`20`pB0`pPB0`20`pB0`pPB0`B0`B0`B0`AA�8�/�&�xh
00`pP�??�6�-�$�xh;0`pPx
hr0hb0`	��x	h�##���xh
��x
h�000�	'���x
h0xh�0`B�0`�0`pP�0`�0`pP##���xhB�0`pPXX�O�
F�=�4�
+�	"��xh	0`B�0`pP		0`

�0`pP�99�0�
'�	xh
0	`pP���		0`

0`pP�B0`pP  �xh�0`
p	P����

xhB**�!��xh0`pP//�
&�	�xh
0`p22�)�#���xhB0`	
0	`pP���R`B0`	�0`
p	P����B0`R`

20`pP�

R0`pP�

R0`pP��0`pP	b0`
p	P����20R0`pB0`pPB0`pP2020`p20`p0`p`p

20`pP�

20`pP�B0`pP��20`p20`p	b0`
p	P����	�0`
p	P����B0`pP��	b0`
p	P����b20`p

20`pP�	�0`
p	P����##xh!0`
p	P����20R`20`p20`pb0`2
0	`pP���B0`B0`pPb

20`pP�

R0`pP�R0`pB0`B0`pP�0`pb`p20`pR`pPR`pPBB0`20`pB20�0`pP�0`0`pP��B

20`pP�B0`202
0	`pP���20`p

R0`pP�20`p
0`
p	P�����20`p
-0`
p	P����2020`p20`pbbb*pB20�0`r0`p�0`pP���0`pP��R0�

R0`pP�
!0`
p	P����
!0`
p	P����R0R0R020`p2020	b0`
p	P����	b0`
p	P����200	b0`
p	P����	b0`
p	P����200`pP0`p

20`pP�2020	b0`
p	P����	b0`
p	P����202020	b0`
p	P����	b0`
p	P����202020	b0`
p	P����	b0`
p	P����2000`R
0	`pP���R
0	`pP���R
0	`pP���0`pP0`pP0`p0`p00BB�66�-�'�!��xh0`pPxh�0`h"hR0`p	�0`
p	P����	�0`
p	P����	�0`
p	P����	b0`
p	P����	b0`
p	P����r
0	`pP����0`pP��r
0	`pP���R
0	`pP���R
0	`pP���	�0`
p	P����	�0`
p	P����	�0`
p	P����	�0`
p	P����	�0`
p	P����	�0`
p	P����	�0`
p	P�����0`pP��

r0`pP��0`pP��b0`pP��b0`pP��	�0`
p	P����		0`

0`p0`pP0hb0`

hR0hb0`

hR0R0R020202020B

hr0

20`pP�b0`pP��

R0`pP�	��x	h�kk�b�Y�P�G�>�5�,�
#xh+0`
p	P����kk�Wb�VY�UP�TG�S>�R5�Q,�P#xOhN�0`
p	P����kk�"b�!Y� P�G�>�5�,�#xhG0`
p	P����kk�b�Y�P�G�>�5�,�#xh70`
p	P����B0`BBx	h�x	h�B0`<<�	3�*�$���x
h0xhr0`pSS�J�
A�	8�/�)�#��xh
0`pP�TT�K�B�
9�	0�'�!��xh0`pP	B0`
p	P����		h�kk�Db�CY�BP�AG�@>�?5�>,�=#x<h;�0`
p	P����
q0`
p	P����	X
0	`pP���
_0`
p	P����##x
h	0`
p	P����0`pP�

�0`pP�0`pP��	�0`
p	P����	�0`
p	P����b0`
xh�0`
p	P����	�0`
p	P����h�0`
p	P����0`pP���0`pP�0`pPxh�0`p0`pP		/0`

.0`pP�++�"�xh	70`		/0`

.0`pP�

0`p///44�+�"�xh	)0`p	�xh�0`	x
h�0`pP20`p�x
h�0))�	 �xh
0`pP�,,�#xh#0`
p	P�����0`pb0`R0`pb0`R0`pB0`pPB0`pPBbb	�0`
p	P����	�0`
p	P����

R0`pP��0r0`p�0`pP��`p

r0`pP�b0`pPhb0`		b0`p�B0`h�0`
p	P����20`pR0`pb20`pb20`pB0`B0`2020R0`pb0`pP

�0`pP�B0`pP��B0`B	�0`
p	P����

�0`pP��0`pb0`pP2
0	`pP���b0`

20`pP�20`pB0`pP	�0`
p	P����	�0`
p	P����0`R0`p�0`�0`�0`b0`b0`�0`pP��r0�0`pP��	�0`
p	P����r
0	`pP����0`r
0	`pP���

r0`pP�	�0`
p	P����	�0`
p	P����r
0	`pP���
0`
p	P����	�0`
p	P����	�0`
p	P����B0`B0`pP��

r0`pP�

r0`pP�BB0`�0`pP�0`pP20`pb0`pPR
0	`pP���b0`pP��

R0`pP�b0`pP��r
0	`pP���B0`B0`B0`B0`BB0`R0`pR0`pB0`pPB0`pP��2020R0`pb$$��xh�
0	`pP���b""20r00`pP��bB0`B0`r0`pbbBb0`Br0`p20r0`pBB0`pP��B0`pP20R0b0`pPB0`pPR0

R0`pP�b0`pP��

20`pP�b0`pP��20	�0`
p	P����
xh
�0`pP��0`�0`�0`pP���0`pP��

�0`pP��0`pP���0`pP��

�0`pP��0`pP��	�0`
p	P�����0`pP���0`pP��r
0	`pP����0`�0`pP���0`pP��>>�
5�,�#x
h	0`
p	P����B0`

�0`pP�	�0`
p	P����B0`pPb0`20

20`pP�	�0`
p	P����B0`	�0`
p	P����B0`0`pB0`	�0`
p	P����B0`20	b0`
p	P����B0`pP��BB0`	B0`
p	P����B	�0`
p	P����B	b0`
p	P�����B0`pP0`
p	P����B0`B0`pP��

20`pP�	�0`
p	P����B0`B0`B0`��0	�0`
p	P����
0`
p	P����	�0`
p	P����	�0`
p	P����B0`B0`pP��B0`pPB0`pP202
0	`pP���	B0`
p	P����	b0`
p	P����B0`pP202020200b0`pPB0`b0`b0`b0`R
0	`pP���R
0	`pP���B0`B0`pP��B0`pP��B0`B0`pP��B0`pP��	b0`
p	P����	b0`
p	P����

20`pP�""��xh�0`pP��gg�=^�<U�;L�:C�9:�81�7(�6x5h4}0`pP��20�x
h�0`pPB0`pP		hb

20`pP��x	h�		hb	�xh�0`88�/�)�#��xh
0`pP�0`ph
r0`pP�h�0`b0`pP20`p20`pB0`pPB0`b0`pP20`p
�xh�0`pB0`pP20`p

20`pP�B0`pPB0`pPB0`pPb0`pP��b0`pPB0`pPB0`pP20`pB0`pPB0`pP2020`p20`p	B0`
p	P����	B0`
p	P����B0`b0`B0`b0`	b0`
p	P����B0`pPB0`B0`20�0020B0pR0b0`2020202020`pB0`20`p20`pB0pB0`

R0`pP�R020B0`pP��b0`

20`pP�

20`pP�
+0`
p	P����	�0`
p	P����B0`R
0	`pP���	b0`
p	P����20

20`pP�202020BB	b0`
p	P����	b0`
p	P����2
0	`pP���b0`pPb0`pP

20`pP�20B0`pP��B0`pP��b0`pP2
0	`pP���2
0	`pP���

20`pP�b0`20B0`pP��

20`pP�2020

20`pP�20B0`B0`b0`B0`pP��B0`pP20`p20`p

r0`pP�B0`B0`pP20BB0`R0BB0`B0`pP��B0`�

r0`pP�b0`�
0	`pP���

R0`pP�BB0`

r0`pP�
�

�0`PB0`pPB0`pP20B20`p20BB0`"x
h		0`		h�h

h�0bm0`pP��b0`pP�
xh
�0`pP�x�;<��;��;�<�;h�;<��;��;X<�; �;�<h�;�;�;"�;2�;D�;N�;Z�;f�;p�;��;��;��;��;��;�;�;�;��;�;,�;D�;X�;n�;��;��;��;��;�;�;�;�;�;*�;:�;V�;n�;~�;��;��;��;�;�;�;�;�;2�;F�;R�;d�;��;��;��;��;��;�;�;��;�;$�;:�;F�;P�;Z�;r�;��;��;��;��;��;�;�;�;��;<<< <*<6<@<L<V<f<n<x<�<�<�<�<�<�<�<�<�<�<�<�<�<<<<<$<,<6<@<H<P<X<b<j<r<z<�<�<�<�<�<�<�<�<�<�<�<�<�<�<<<<<&<0<:<D<N<X<b<l<v<�<�<�<�<�<�<�<�<�<�<<<$<4<B<R<`<l<z<�<�<�<�<�<�;�;"�;2�;D�;N�;Z�;f�;p�;��;��;��;��;��;�;�;�;��;�;,�;D�;X�;n�;��;��;��;��;�;�;�;�;�;*�;:�;V�;n�;~�;��;��;��;�;�;�;�;�;2�;F�;R�;d�;��;��;��;��;��;�;�;��;�;$�;:�;F�;P�;Z�;r�;��;��;��;��;��;�;�;�;��;<<< <*<6<@<L<V<f<n<x<�<�<�<�<�<�<�<�<�<�<�<�<�<<<<<$<,<6<@<H<P<X<b<j<r<z<�<�<�<�<�<�<�<�<�<�<�<�<�<�<<<<<&<0<:<D<N<X<b<l<v<�<�<�<�<�<�<�<�<�<�<<<$<4<B<R<`<l<z<�<�<�<�<�<9CreateFontAGCreatePen�DeleteObject�GetStockObject�LineTo�MoveToExRestoreDCSaveDCSelectObject<SetTextColor9BeepUCloseHandle�CreateEventA�CreateFileA�CreateFileMappingA�CreateFileW�CreateThread�CreateToolhelp32Snapshot�DeleteCriticalSection�EnterCriticalSection�GetCurrentProcess�GetCurrentProcessId�GetCurrentThreadId�GetFileSizeGetLastError!GetModuleFileNameA#GetModuleHandleAUGetProcAddressrGetStartupInfoAtGetStdHandle�GetSystemInfo�GetSystemTimeAsFileTime�GetTickCount�InitializeCriticalSectionILeaveCriticalSectionLLoadLibraryAgMapViewOfFile�OpenProcess�Process32Next�QueryPerformanceCounter�QueryPerformanceFrequency�ReadFileRtlAddFunctionTableRtlCaptureContext	RtlLookupFunctionEntryRtlVirtualUnwindSSetEvent`SetFilePointer�SetUnhandledExceptionFilter�Sleep�TerminateProcess�TerminateThread�TlsGetValue�UnhandledExceptionFilter�UnmapViewOfFile�VirtualProtect�VirtualQuery�WaitForSingleObjectWideCharToMultiByte"WriteFile_filenoL_strdup7__C_specific_handlerN__dllonexitQ__getmainargsR__initenvS__iob_funcZ__lconv_init`__set_app_typeb__setusermatherrr_acmdlny_amsg_exit�_cexit�_ctime64�_errno�_exit�_fmode�_fstat64
_getch)_initterm�_kbhit�_localtime64�_lock-_mkdir6_onexitd_setjmp�_stat64�_stricmp�_time64�_unlink�_unlock�_vsnprintf�abort�acos�asctime�asin�atan2�atof�atoi�bsearch�calloc�ceil�exit�fclose�fflush�fgetc�floor�fopen�fprintf�fputc�fputs�fread�free�frexp�fseek�ftell�fwrite�getenv�isprint
log10longjmpmallocmemcpymemmovememsetprintfputchar puts#qsort%raise&rand(realloc2signal5sprintf9sscanf;strcat=strchr>strcmp@strcpyFstrlenIstrncmpJstrncpyNstrrchrivfprintfovsprintf
BeginPaintaCreateWindowExA�DefWindowProcA�DestroyWindow�DispatchMessageA�DrawTextA�EndPaintGetClientRect=GetMessageA�InvalidateRgn�LoadCursorA�LoadIconA�MessageBoxA
PostQuitMessageRegisterClassAaSetForegroundWindow�ShowWindow�TranslateMessage�UnregisterClassA�;�;�;�;�;�;�;�;�;�;GDI32.dll�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;KERNEL32.dll(�;(�;msvcrt.dll<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;<�;msvcrt.dllP�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;P�;USER32.dll@`@�N`N0NA |D |�{@|,@O, ,0N�,Y3�N
,!8�N,�=N�,�I�N�,apN,,bh�N,j�N�,}t�N,Tu�N�,�zPN�,� N',�PN,��pN2,��N�,��`N,��N�,�p N�,0�`!N=,���"NK,H��$N,��%N,>� %N�,;��'N�,���(Nu,E�+Nl,��p+Nh,1��+N>,�� ,N0,-�P,NQ�*GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/crtexe.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj@O@charsize_tr�long long unsigned intlong long intuintptr_t��wchar_t�short unsigned intintlong int�,unsigned intlong unsigned intunsigned char�_EXCEPTION_RECORD�	=ExceptionCode	�#ExceptionFlags	�#	�#ExceptionAddress	B#NumberParameters	�#ExceptionInformation	�
# E	_CONTEXT���P1Home�3#P2Home�3#P3Home�3#P4Home�3#P5Home�3# P6Home�3#(ContextFlags��#0MxCsr��#4SegCs��#8SegDs��#:SegEs��#<SegFs��#>SegGs��#@SegSs��#BEFlags��#DDr0�3#HDr1�3#PDr2�3#XDr3�3#`Dr6�3#hDr7�3#pRax�3#xRcx�3#�Rdx�3#�Rbx�3#�Rsp�3#�Rbp�3#�Rsi�3#�Rdi�3#�R8�3#�R9�3#�R10�3#�R11�3#�R12�3#�R13�3#�R14�3#�R15�3#�Rip�3#�
�
#�VectorRegister��
#�VectorControl�3#�	DebugControl�3#�	LastBranchToRip�3#�	LastBranchFromRip�3#�	LastExceptionToRip�3#�	LastExceptionFromRip�3#�	WINBOOLe,BYTEqpWORDrDWORDs[float�LPBYTEw��signed charshort intLONG_PTR1�ULONG_PTR2�DWORD64��PVOID�=CHAR��LONG�3OLPSTR�gHANDLE�=LONGLONG'�ULONGLONG(��
,doublelong double�_invalid_parameter_handler��    K�&_M128Ao[Lowp�#Highq�#M128Ar+	_XMM_SAVE_AREA32t�ControlWordu�#StatusWordv�#TagWordw�#Reserved1x�#ErrorOpcodey�#ErrorOffsetz�#ErrorSelector{�#Reserved2|�#DataOffset}�#DataSelector~�#Reserved3�#MxCsr��#MxCsr_Mask��#FloatRegisters��# XmmRegisters��#�Reserved4�		#�[��[		��	�_XMM_SAVE_AREA32�i��v
Header�v
#Legacy��# Xmm0�[#�Xmm1�[#�Xmm2�[#�Xmm3�[#�Xmm4�[#�Xmm5�[#�Xmm6�[#�Xmm7�[#�Xmm8�[#�Xmm9�[#�Xmm10�[#�Xmm11�[#�Xmm12�[#�Xmm13�[#�Xmm14�[#�Xmm15�[#�[�
���
FltSave�	FloatSave�	1	[�
�PCONTEXT�?"�
�EXCEPTION_RECORD 	�PEXCEPTION_RECORD"	�
_EXCEPTION_POINTERS7	h8	#ContextRecord9	�
#"��FiberData�BVersion��_NT_TIB8�@ExceptionList�a#StackBase�B#StackLimit�B#SubSystemTib�B#
n# ArbitraryUserPointer�B#(Self�g#0_EXCEPTION_REGISTRATION_RECORD@�NT_TIB��PNT_TIB��m_IMAGE_DOS_HEADER@
e_magic�#e_cblp
�#e_cp�#e_crlc�#e_cparhdr�#e_minalloc�#
e_maxalloc�#e_ss�#e_sp�#e_csum�#e_ip�#e_cs�#e_lfarlc�#e_ovno�#e_res
#e_oemid�#$e_oeminfo�#&e_res2#(e_lfanew[#<���-�	IMAGE_DOS_HEADER�PIMAGE_DOS_HEADER`�_IMAGE_FILE_HEADERzAMachine{�#NumberOfSections|�#TimeDateStamp}�#PointerToSymbolTable~�#NumberOfSymbols�#SizeOfOptionalHeader��#Characteristics��#IMAGE_FILE_HEADER�f_IMAGE_DATA_DIRECTORY��VirtualAddress��#Size��#IMAGE_DATA_DIRECTORY�[_IMAGE_OPTIONAL_HEADER���Magic��#���#��#���#���#R��#I��#a��#BaseOfData��#���#���# ���#$���#(P��#*���#,>��#.t��#0���#2 ��#4U��#8���#<L��#@j��#D���#F���#H���#L���#P��#Tz��#X���#\���#`���PIMAGE_OPTIONAL_HEADER32���_IMAGE_OPTIONAL_HEADER64���Magic��#���#��#���#���#R��#I��#a��#���#���# ���#$���#(P��#*���#,>��#.t��#0���#2 �#4U�#8��#<L�#@j�#D��#F��#H��#P��#X	�#`z
�#h��#l��#pIMAGE_OPTIONAL_HEADER64
�PIMAGE_OPTIONAL_HEADER64
�	_IMAGE_NT_HEADERS64$�Signature%�#FileHeader&A#OptionalHeader'�#PIMAGE_NT_HEADERS64(�"PIMAGE_NT_HEADERS7�PIMAGE_TLS_CALLBACK���B�B[hHINSTANCE__�6unused�,#HINSTANCE�GHMODULE�6PTOP_LEVEL_EXCEPTION_FILTER�LPTOP_LEVEL_EXCEPTION_FILTER\_STARTUPINFOAh�2cb��#lpReserved�m#lpDesktop�m#lpTitle�m#dwX��# dwY��#$dwXSize��#(dwYSize��#,dwXCountChars��#0dwYCountChars��#4dwFillAttribute��#8dwFlags��#<wShowWindow��#@cbReserved2��#BlpReserved2��#HhStdInput�z#PhStdOutput�z#XhStdError�z#`STARTUPINFOA��STARTUPINFO�2?VARENUM
�VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�_PVFV�_PIFV��)newmode�,#_startupinfo� +�}__uninitialized__initializing__initialized!+�=_exception(	\�type	],#name	^�#arg1	_�#arg2	`�#retval	a�# ��_TCHAR
��"__readgsqword83<#Offset8�$ret9=%check_managed_appB,�$pDOSHeaderDF$pPEHeaderE�$pNTHeader32F�$pNTHeader64G�_TEB&NtCurrentTeb���"_InterlockedCompareExchangePointer�=F#Destination�F#ExChange�B#Comperand�B$prev�BL'B"_InterlockedExchangePointer�=�#Target�F#Value�B(__mingw_prepare_except_for_msvcr80_and_higher��$fIPH��$hmsv�M����(duplicate_ppstrings�d#ac�,#av�d$avl�[$i�,$n�[)$l�,[*__mingw_invalidParameterHandler�@@w+expression� R+function� Q+file� X+line�KY+pReserved��� ,pre_cpp_init�@X@q-M@d(.R	�y.Q	�y.X	�y.w 	 �y/pre_c_initk,`@�@M>0<d@m�102\3oQ3�q�4��5�@�(�.R25�@�(.R	�6�@�(5�@�(*7R-
@�(.R1/__tmainCRTStartup�,�@@�Z#8lpszCommandLine�Z#�9StartupInfo�G��~8inDoubleQuoteϞ�:`H#8lock_free�=A8fiberid�=e8nested�,�;��@�@�X <�@�@�= F>�@�@4/�0��@�� =&�=e?1�48�;Q=@G@�� =�$?|@�}@ �!1P4�H4��A�@s
!.R	�uB�@(!.Q	(�uB�@C!.R	@B�@^!.R	�uB�@y!.R	�uC�@.R	�uDD@�@(b"=,=!J>D@�@47�4C�4M�Ee@�@D"4XF6n@9)5|@U)/".Rt-�@q).Xt-S@U).R
v $ &3$B�@w".R
�B_@�".R0.Q2.X06d@�)Bq@�"7R6}@�)6�@�)6�@�)6�@�)6@*5N@!*
#.RO5s@<*"#7R7Q5�@<*:#7R7Q6@[*C�@.R��~�FWinMainCRTStartup�,@/@k�#8ret�,�6#@q*6(@>FmainCRTStartup�,0@O@�$8ret�,;6C@q*6H@>GL,G�EG�m,G#n,G�vdGl{[G��t$'}G
��$�$HG�%-GC,EI_fmode/,�$JI__xi_a8�$I__xi_z9�$��$JI__xc_a:�$I__xc_z;�$G4>%�G;@,%�G2A,%G,C,GlE6G�FZ#G�G�9argcI,	�y9argvO[	�y9envpP[	�y9argretS,	$�y9mainretT,	�y9managedappU,	�y9has_cctorV,	�y9startinfoW)	 �yGuX�G�h,K]<,K�=,K�>,K
?,GL,G�EG�2,G#n,G�vdGl{[G��t$G
��$G�%-GC0EI_fmode/,I__xi_a8�$I__xi_z9�$I__xc_a:�$I__xc_z;�$G4>%G;@,%G2A,%G,C,LlE6	0�{L�FZ#	 �{L�G�	(�{GuX�Mmingw_pcinite	 |Mmingw_pcppinitf�	|G�h,K]<,K�=,K�>,K
?,N__getmainargs�,�(Edd,�()O__set_app_type��(,N_encode_pointer�=�(=P_setargv�,O__mingw_setusermatherr	f))#),3)3)�Qstrlen��U)�Qmalloc�=q)�Rmemcpy=�)=��S_pei386_runtime_relocatorZP__mingw_init_ehandler�,S_fpreset'S__mainJNmain�,*,[[S_cexit
7O_amsg_exit�<*,O_initterm4[*,%,%Texit3q*,S__security_init_cookie
i�_GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/_newmode.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�_newmode�	��{int��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/wildcard.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�_dowildcard �	��{int5�GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/tlssup.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj0N�N,charlong long unsigned intlong long intuintptr_t��short unsigned intintlong intunsigned intlong unsigned intunsigned charULONG0WINBOOLe
BOOLi
DWORDs0floatLPVOIDVsigned charshort intULONG_PTR2�PVOID�VHANDLE�VULONGLONG(�doublelong doublePIMAGE_TLS_CALLBACK;AW	�	�	�
_IMAGE_TLS_DIRECTORY64(%StartAddressOfRawData�#EndAddressOfRawData�#AddressOfIndex�#AddressOfCallBacks�#SizeOfZeroFill�# Characteristics�#$IMAGE_TLS_DIRECTORY64WIMAGE_TLS_DIRECTORY.%_PVFV__dyn_tls_init\t�
�\�
\�
�\�pfunc^�ps_�___dyn_tls_dtor�t0N_Ns3������ 	���Y	UN
l`N�N�	���
� ����l�N�N\��N�N�6�n����N
__tlregdtor�
�N�Nwfunc�_R�,X�/�0�__xl_a2__xd_aE_	X|__xd_zF_	`|_CRT_MTM
�,X	�{�/�	@ |0�	D |__xl_a2	8|__xl_z3	P|_tls_used5	 | C_CRT_MTM
__dyn_tls_init_callback�W	`~u __xl_c�	@|__xl_d�	H|mingw_initltsdrot_force�
	�{mingw_initltsdyn_force�
	�{mingw_initltssuo_force�
	�{!__mingw_TLScallback"e	�	�	��|GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/charmax.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�N�Nlcharlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charfloatsigned charshort intp�doublelong doubleVARENUM
"VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�_PIFVjmy_lconv_init��N�Nwh	�N
mingw_initcharmax�	�{
_charmax�	p~u
__mingw_pinit"	(|�	GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/mingw_helpers.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�NN�charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charfloatsigned charshort intdoublelong doubleVARENUM
VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�_decode_pointerK�N�NwbcodedptrKR_encode_pointerKNNw�ptrKRmingw_app_type	 �{��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/xtxtmode.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�_fmode�	0�{int��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/atonexit.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objN�N	charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charfloatsigned charshort int_onexit_t$~��doublelong double�VARENUM
>	VT_EMPTY	VT_NULL	VT_I2	VT_I4	VT_R4	VT_R8	VT_CY	VT_DATE	VT_BSTR	VT_DISPATCH		VT_ERROR
	VT_BOOL	VT_VARIANT	VT_UNKNOWN
	VT_DECIMAL	VT_I1	VT_UI1	VT_UI2	VT_UI4	VT_I8	VT_UI8	VT_INT	VT_UINT	VT_VOID	VT_HRESULT	VT_PTR	VT_SAFEARRAY	VT_CARRAY	VT_USERDEFINED	VT_LPSTR	VT_LPWSTR	VT_RECORD$	VT_INT_PTR%	VT_UINT_PTR&	VT_FILETIME�	VT_BLOB�	VT_STREAM�	VT_STORAGE�	VT_STREAMED_OBJECT�	VT_STORED_OBJECT�	VT_BLOB_OBJECT�	VT_CF�	VT_CLSID�	VT_VERSIONED_STREAM�	VT_BSTR_BLOB�	VT_VECTOR� 	VT_ARRAY��	VT_BYREF��	VT_RESERVED��	VT_ILLEGAL��	VT_ILLEGALMASKED�	VT_TYPEMASK�_PVFV�
mingw_onexit!mN�N�lfunc!mV
onexitbegin#l�
onexitend$lretval%m9
$N89N\�R8
EN8
VN8mNr*RsQ�`X�h
zN�
�N��N�[R8�NRs>atexitO��N�N��func8>��NKR�R%llm�m3��%l	@�{l	H�{3�_decode_pointer�F\F_lockr�__dllonexitm�m��l_encode_pointer�F�F_unlock�	GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/natstart.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�	charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charfloatsigned charshort intdoublelong doubleVARENUM
VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�A�G__uninitialized__initializing__initializedA�__native_startup_state
{	P�{G__native_startup_lock�	X�{	�
__native_dllmain_reason�	�~u__native_vcclrit_reason�	�~u��	GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/crt_handler.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�NdN!charsize_tr�long long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned char^jp_EXCEPTION_RECORD�	&ExceptionCode	�#ExceptionFlags	�#	�	j#ExceptionAddress	#NumberParameters	�#ExceptionInformation	�
# 
._CONTEXT���P1Home�#P2Home�#P3Home�#P4Home�#P5Home�# P6Home�#(ContextFlags��#0MxCsr��#4SegCs��#8SegDs��#:SegEs��#<SegFs��#>SegGs��#@SegSs��#BEFlags��#DDr0�#HDr1�#PDr2�#XDr3�#`Dr6�#hDr7�#pRax�#xRcx�#�Rdx�#�Rbx�#�Rsp�#�Rbp�#�Rsi�#�Rdi�#�R8�#�R9�#�R10�#�R11�#�R12�#�R13�#�R14�#�R15�#�Rip�#��	#�VectorRegister�
#�VectorControl�#�	DebugControl�#�	LastBranchToRip�#�	LastBranchFromRip�#�	LastExceptionToRip�#�	LastExceptionFromRip�#�	
ULONG2
BYTEqG
WORDr�
DWORDs2float
PBYTEv��
LPBYTEw�signed charshort int
ULONG_PTR2�
DWORD64��
PVOID�&
LONG�LONGLONG'�ULONGLONG(�doublelong double_M128Ao�LowpI#Highq8#M128Art_XMM_SAVE_AREA32t2ControlWordu�#StatusWordv�#TagWordw�#Reserved1x�#ErrorOpcodey�#ErrorOffsetz�#ErrorSelector{�#Reserved2|�#DataOffset}�#DataSelector~�#Reserved3�#MxCsr��#MxCsr_Mask��#FloatRegisters�2# XmmRegisters�B#�Reserved4�R#��B��R��b�_XMM_SAVE_AREA32�����	Header��	#Legacy�2# Xmm0��#�Xmm1��#�Xmm2��#�Xmm3��#�Xmm4��#�Xmm5��#�Xmm6��#�Xmm7��#�Xmm8��#�Xmm9��#�Xmm10��#�Xmm11��#�Xmm12��#�Xmm13��#�Xmm14��#�Xmm15��#���	��
FltSave�bFloatSave�bz�
�PCONTEXT�(_RUNTIME_FUNCTION��
BeginAddress��#EndAddress��#UnwindData��#RUNTIME_FUNCTION�"
��
�EXCEPTION_RECORD 	pPEXCEPTION_RECORD"	�
�
_EXCEPTION_POINTERS7	 	�8	�
#	o9	
#EXCEPTION_POINTERS:	�
�
�Q�v�PhysicalAddressw�VirtualSizex�_IMAGE_SECTION_HEADER(t�NameuA#MiscyQ#VirtualAddressz�#SizeOfRawData{�#PointerToRawData|�#PointerToRelocations}�#PointerToLinenumbers~�#NumberOfRelocations�# NumberOfLinenumbers��#"Characteristics��#$PIMAGE_SECTION_HEADER����,�;PTOP_LEVEL_EXCEPTION_FILTER�LPTOP_LEVEL_EXCEPTION_FILTER�VARENUM
�VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�
__p_sig_fn_t/X_UNWIND_INFO�VersionAndFlags�#PrologSize�#CountOfUnwindCodes�#FrameRegisterAndOffset�#AddressOfExceptionHandler�#
UNWIND_INFO�__mingw_SEH_error_handler\�NqNA�\j[EstablisherFrame]&o^(�DispatcherContext_&wactiona+cbX�YcN+r R8 Q0!$N� R8�N+� R; Q0!�N� R;�N+� R4 Q0!�N� R41N+� R8 Q1">NKVN+( R; Q1#lN+ R4 Q1__mingw_init_ehandler1�Nu	N}($was_here3	H�{e4��pSec5�-_ImageBase6�v"�NZ�Nt� R	@�x>	N�
 Rs%g	N R	`�{ Xv_gnu_exception_handler��	NdN��exception_data���c�Xpaction��Y��&�	N� R�R
N+� R8 Q0!
N� R8k
N+ R; Q0!�
N R;�
N+; R4 Q0!�
NN R4N+j R8 Q1",NKDN+� R; Q1#_N+ R4 Q1 �
��$emu_pdata-�	`�{���$emu_xdata.�	��{'}�

(}�

	@�{)signal;�K�*_fpresetY+_GetPEImageBase$�)_FindPESectionByName"����,�-_FindPESectionExec#����GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/cinitexe.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�
charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned char_PVFVCI6[�__xi_aK	|__xi_zK	0|__xc_aK	|__xc_z	K	|E7GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/merr.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objpN�N.charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charfloatsigned charshort intdoublelong doubleVARENUM
VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�_iobuf0X�_ptrY#_cntZ�#_base[#_flag\�#_file]�#_charbuf^�# _bufsiz_�#$_tmpfname`#(FILEb_exception(\type]�#name^#arg1_m#arg2`m#retvalam# #	�fUserMathErr<B
�RR�__mingw_raise_matherrdpN�N@�
typ��
name�
a1m'
a2mJrsltm� ex��@�NR�@__mingw_setusermatherrf�N�NwL
f<m�N�R�R_matherr���N�N��
pexcept%R�type'�NN*Q	H�xXtYsstUserMathErr(	��{__setusermatherrg<__iob_funcT$�fprintf��$��
GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/dllargv.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�N�N/charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charfloatsigned charshort intdoublelong double_setargv��N�Nwm
�
GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/pseudo-reloc.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�NrN�__gnuc_va_list�__builtin_va_list�charva_list�size_trlong long unsigned intlong long intptrdiff_t�&short unsigned intintlong int�unsigned intlong unsigned intunsigned charDWORDs�float�signed charshort intULONG_PTR2SIZE_T��PVOID��doublelong double	_MEMORY_BASIC_INFORMATION0B�
BaseAddressC#
AllocationBaseD#
AllocationProtectE�#
RegionSizeF�#
StateG�# 
ProtectH�#$
TypeI�#(MEMORY_BASIC_INFORMATIONJ._iobuf0�_ptrr#_cnt_#_baser#_flag_#_file_#_charbuf _# _bufsiz!_#$_tmpfname"r#(FILE$
:�addend;�#target<�#runtime_pseudo_reloc_item_v1=�
E5symF�#targetG�#flagsH�#runtime_pseudo_reloc_item_v2I�
K�magic1L�#magic2M�#versionN�#runtime_pseudo_reloc_v2OY__write_memory�addr��src��len��b��oldprot��do_pseudo_reloc��startɮendɮbaseɮaddr_imp�7reldata�7reloc_target�7v2_hdrͬrβo��newval��5�__report_errorR�N
N�xmsgRx,argp���X�N�	�N�	?R	��xQ1XK�N�	
N
jQsXt
NC
~�� 
N!Nb��J"�!#��#���P
N����$�D%��%� ���!�d&"a
N,RtQ��X0#�
NP
TR�RQ�QX�X$�
NvqX@Y|�
NP
�RtQuXs$�
Nv�Y|%!N�R	��xQ0Xt&_pei386_runtime_relocatorf0NrN�&w	'was_inith_	��{(QNl@!E@(!U�)!d<*!xD+!�g+)9).)!*�N�N�!��+�!��+%�N�QuX4aN��R	 �x�N�	QvX8�N�	QvX2�N�<	QvX1+N�Y	QvX4%rN�R	�x+�/�+�0�+�1�+�/�+�0�+�1�,__iob_funcT�	�-__builtin_fwritefwrite
.�...�/vfprintf
_C
.�	.x.�0abort	A1memcpy�.�.�.�~GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/CRT_fp10.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�N�N�_fpreset	�N�Nw��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/gccmain.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�NLNcharlong long unsigned intlong long intptrdiff_t��short unsigned intintlong intunsigned intlong unsigned intunsigned charfloatsigned charshort intdoublelong double�VARENUM
0VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�func_ptr�	__do_global_dtors�N�N�+�
p�	�~u0	__do_global_ctors �N0N0,�nptrs"1�,i#1-N�
R	�N__main50NLNw(LN�03�(
(
initialized2	�{�(
(atexitO�c�GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/gs_support.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objPNN�charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned chardoublefloatlong doublep_EXCEPTION_RECORD�	&ExceptionCode	�#ExceptionFlags	�#,	j#ExceptionAddress	#NumberParameters	�#ExceptionInformation	(# ._CONTEXT���P1Home��#P2Home��#P3Home��#P4Home��#P5Home��# P6Home��#(ContextFlags��#0MxCsr��#4SegCs��#8SegDs��#:SegEs��#<SegFs��#>SegGs��#@SegSs��#BEFlags��#DDr0��#HDr1��#PDr2��#XDr3��#`Dr6��#hDr7��#pRax��#xRcx��#�Rdx��#�Rbx��#�Rsp��#�Rbp��#�Rsi��#�Rdi��#�R8��#�R9��#�R10��#�R11��#�R12��#�R13��#�R14��#�R15��#�Rip��#�	E
#�VectorRegister�w
#�VectorControl��#�	DebugControl��#�	LastBranchToRip��#�	LastBranchFromRip��#�	LastExceptionToRip��#�	LastExceptionFromRip��#�	
BYTEq7
WORDr�
DWORDs"signed charshort int
UINT_PTR0�
ULONG_PTR2�
ULONG64��
DWORD64��
PVOID�&
LONG�LONGLONG'�ULONGLONG(�5oLowPart6�#7#9�LowPart:�#;#
_LARGE_INTEGER4�Cu<oQuadPart= LARGE_INTEGER>�_M128AoLowp1#Highq #M128Ar�_XMM_SAVE_AREA32t�ControlWordu�#StatusWordv�#TagWordw�#Reserved1x�#ErrorOpcodey�#ErrorOffsetz�#ErrorSelector{�#Reserved2|�#DataOffset}�#DataSelector~�#Reserved3�#MxCsr��#MxCsr_Mask��#FloatRegisters��# XmmRegisters��#�Reserved4��#��������_XMM_SAVE_AREA32�(��5
Header�5
#Legacy��# Xmm0�#�Xmm1�#�Xmm2�#�Xmm3�#�Xmm4�#�Xmm5�#�Xmm6�#�Xmm7�#�Xmm8�#�Xmm9�#�Xmm10�#�Xmm11�#�Xmm12�#�Xmm13�#�Xmm14�#�Xmm15�#�E
��w
FltSave��FloatSave����
�CONTEXT�.PCONTEXT�(_RUNTIME_FUNCTION�BeginAddress��#EndAddress��#UnwindData��#PRUNTIME_FUNCTION�"�
�8�EXCEPTION_RECORD 	pPEXCEPTION_RECORD"	k8_EXCEPTION_POINTERS7	�,8	Q#ContextRecord9	�
#EXCEPTION_POINTERS:	q_FILETIMEdwLowDateTime�#dwHighDateTime�#FILETIME�
NTSTATUSeft_scalar!�ft_struct"
FT#:__security_init_cookie2PNNc-
cookie4�/systime5e��perfctr6��@�N�R���NR�@__report_gsfailureg NN�/�StackCookieg1&0cookiei���controlPCk�\0imgBasek��0establisherFramek��PfctEntryl�0hndDatam�X:N�
R	 �{QN�
RsQ�HX0�N9R0Xsw 	 �{w(�Xw0�Pw80�NLR0�NgR	�~u�NQ����|NY����GS_ExceptionRecord%8	�{GS_ContextRecord&�
	 �{GS_ExceptionPointers(	�~u� ,� <-�!,�	�~u!<-�	�~u"abortA�uGNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/tlsmcrt.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objN_CRT_MT�	�~uint��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/tlsthrd.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj NGN�charsize_tr�long long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charWINBOOLeWORDr�DWORDs.floatLPVOIDTsigned charshort intULONG_PTR2�LONG�HANDLE�T_LIST_ENTRY�Flink�#Blink�#�LIST_ENTRY��doublelong double_RTL_CRITICAL_SECTION_DEBUG0PType�e#CreatorBackTraceIndex�e#CriticalSection��#ProcessLocksList�#EntryCount�q# ContentionCount�q#$Flags�q#(CreatorBackTraceIndexHigh�e#,SpareWORD�e#._RTL_CRITICAL_SECTION(��DebugInfo�#LockCount��#RecursionCount��#OwningThread��#LockSemaphore��#SpinCount��# PPRTL_CRITICAL_SECTION_DEBUG�$FRTL_CRITICAL_SECTION�PCRITICAL_SECTION�*__mingwthr_key_tw	__mingwthr_key�
key q#
dtor!�#
next"�#�T��
___mingwthr_run_key_dtorsbkeypd�valuel�� N�N1��2PNoNlE2kNRt5N�R	��{�NR	��{___w64_mingwthr_add_key_dtor)�NN{2`key)q�3dtor)��4new_key+`,5�N�-R1QH�NHR	��{�NR	��{____w64_mingwthr_remove_key_dtor@N�Nu59key@q96prev_keyB��6cur_keyC��6=N�R	��{rNR	��{�N��NR	��{__mingw_TLScallbackyV�NGN�7bhDllHandley�8reasonzq9reserved{�:��N�N���N�N�� N1N� N1N��N,R	��{/N>NTR	��{EN __mingwthr_csG	��{ __mingwthr_cs_init�	��{
 key_dtor_list&�	��{!calloc�T���"free�TyZGNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/pesect.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objPNlNGcharsize_tr�long long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned charWINBOOLe
BYTEqBWORDr�DWORDs-floatPBYTEv�bsigned charshort intLONG_PTR1�ULONG_PTR2�DWORD_PTR��LONG�ULONGLONG(�doublelong doubleb8�_IMAGE_DOS_HEADER@�	e_magicn#	e_cblp
n#	e_cpn#	e_crlcn#	e_cparhdrn#	e_minallocn#
	e_maxallocn#	e_ssn#	e_spn#	e_csumn#	e_ipn#	e_csn#	e_lfarlcn#	e_ovnon#	e_res�#	e_oemidn#$	e_oeminfon#&	e_res2�#(	e_lfanew�#<n��n��	IMAGE_DOS_HEADER8PIMAGE_DOS_HEADER8_IMAGE_FILE_HEADERz�	Machine{n#	NumberOfSections|n#	TimeDateStamp}z#	PointerToSymbolTable~z#	NumberOfSymbolsz#	SizeOfOptionalHeader�n#
Y�n#IMAGE_FILE_HEADER�_IMAGE_DATA_DIRECTORY�4
��z#	Size�z#IMAGE_DATA_DIRECTORY��4a�_IMAGE_OPTIONAL_HEADER64���	Magic�n#	MajorLinkerVersion�b#	MinorLinkerVersion�b#	SizeOfCode�z#	SizeOfInitializedData�z#	SizeOfUninitializedData�z#	AddressOfEntryPoint�z#	BaseOfCode�z#	ImageBase��#	SectionAlignment�z# 	FileAlignment�z#$	MajorOperatingSystemVersion�n#(	MinorOperatingSystemVersion�n#*	MajorImageVersion�n#,	MinorImageVersion�n#.	MajorSubsystemVersion�n#0	MinorSubsystemVersion�n#2	Win32VersionValuez#4	SizeOfImagez#8	SizeOfHeadersz#<	CheckSumz#@	Subsystemn#D	DllCharacteristicsn#F	SizeOfStackReserve�#H	SizeOfStackCommit�#P	SizeOfHeapReserve�#X	SizeOfHeapCommit	�#`	LoaderFlags
z#h	NumberOfRvaAndSizesz#l	DataDirectoryQ#pIMAGE_OPTIONAL_HEADER64
aPIMAGE_OPTIONAL_HEADER64
	aPIMAGE_OPTIONAL_HEADER�_IMAGE_NT_HEADERS64$�		Signature%z#	FileHeader&�#	OptionalHeader'�#IMAGE_NT_HEADERS64(1	PIMAGE_NT_HEADERS64(�	1	IMAGE_NT_HEADERS6�	PIMAGE_NT_HEADERS7�	v;

PhysicalAddresswz
VirtualSizexz_IMAGE_SECTION_HEADER(tL	Nameu(#	Miscy
#
�zz#	SizeOfRawData{z#	PointerToRawData|z#	PointerToRelocations}z#	PointerToLinenumbers~z#	NumberOfRelocationsn# 	NumberOfLinenumbers�n#"
Y�z#$PIMAGE_SECTION_HEADER�j;
_ValidateImageBaseS���pDOSHeader���	pOptHeader	pPN{NwN�;�|;��p`NzN��;`NzN��R�r�_FindPESection+L�N�Nw��+�<rva+�Q�-�	P<x.Ls<�/�<_FindPESectionByNameAL�NmN�<�
pNameA�
>�C��D�	{>xEL�>�F�>�N>`
 Rt�Npu
!R"JNZ Rs Qt X8�
#�_FindPESectionExec_LpN�N?.eNo_��?�a��b�	�?xcL�?�d,@"�Np!R_GetPEImageBase}��NNP@}��"Np!R_IsNonwritableInCurrentImage�S NlN�@$pTarget���A���rvaTarget��x�L�A7Np!R"VNN!R!Q$i�$i�%strlen��Z&�
'strncmpL
&�
&�
&�tGNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/crt/pseudo-reloc-list.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�__RUNTIME_PSEUDO_RELOC_LIST_END__�	�{char__RUNTIME_PSEUDO_RELOC_LIST__�	�{��GpN�N../../../../../build/gcc/src/libgcc/../gcc/config/i386/cygwin.asmc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\gcc\obj\x86_64-w64-mingw32\libgccGNU AS 2.21.51���GNU C 4.7.0 20110410 (experimental)../../../../../build/gcc/src/libgcc/../gcc/libgcc2.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\gcc\obj\x86_64-w64-mingw32\libgcc�charlong long unsigned intlong long intshort unsigned intintlong intunsigned intlong unsigned intunsigned chardoublefloatlong doubleyshort intix86_tune_indices�X86_TUNE_USE_LEAVEX86_TUNE_PUSH_MEMORYX86_TUNE_ZERO_EXTEND_WITH_ANDX86_TUNE_UNROLL_STRLENX86_TUNE_DEEP_BRANCH_PREDICTIONX86_TUNE_BRANCH_PREDICTION_HINTSX86_TUNE_DOUBLE_WITH_ADDX86_TUNE_USE_SAHFX86_TUNE_MOVXX86_TUNE_PARTIAL_REG_STALL	X86_TUNE_PARTIAL_FLAG_REG_STALL
X86_TUNE_USE_HIMODE_FIOPX86_TUNE_USE_SIMODE_FIOPX86_TUNE_USE_MOV0
X86_TUNE_USE_CLTDX86_TUNE_USE_XCHGBX86_TUNE_SPLIT_LONG_MOVESX86_TUNE_READ_MODIFY_WRITEX86_TUNE_READ_MODIFYX86_TUNE_PROMOTE_QIMODEX86_TUNE_FAST_PREFIXX86_TUNE_SINGLE_STRINGOPX86_TUNE_QIMODE_MATHX86_TUNE_HIMODE_MATHX86_TUNE_PROMOTE_QI_REGSX86_TUNE_PROMOTE_HI_REGSX86_TUNE_SINGLE_POPX86_TUNE_DOUBLE_POPX86_TUNE_SINGLE_PUSHX86_TUNE_DOUBLE_PUSHX86_TUNE_INTEGER_DFMODE_MOVESX86_TUNE_PARTIAL_REG_DEPENDENCYX86_TUNE_SSE_PARTIAL_REG_DEPENDENCY X86_TUNE_SSE_UNALIGNED_LOAD_OPTIMAL!X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL"X86_TUNE_SSE_PACKED_SINGLE_INSN_OPTIMAL#X86_TUNE_SSE_SPLIT_REGS$X86_TUNE_SSE_TYPELESS_STORES%X86_TUNE_SSE_LOAD0_BY_PXOR&X86_TUNE_MEMORY_MISMATCH_STALL'X86_TUNE_PROLOGUE_USING_MOVE(X86_TUNE_EPILOGUE_USING_MOVE)X86_TUNE_SHIFT1*X86_TUNE_USE_FFREEP+X86_TUNE_INTER_UNIT_MOVES,X86_TUNE_INTER_UNIT_CONVERSIONS-X86_TUNE_FOUR_JUMP_LIMIT.X86_TUNE_SCHEDULE/X86_TUNE_USE_BT0X86_TUNE_USE_INCDEC1X86_TUNE_PAD_RETURNS2X86_TUNE_PAD_SHORT_FUNCTION3X86_TUNE_EXT_80387_CONSTANTS4X86_TUNE_SHORTEN_X87_SSE5X86_TUNE_AVOID_VECTOR_DECODE6X86_TUNE_PROMOTE_HIMODE_IMUL7X86_TUNE_SLOW_IMUL_IMM32_MEM8X86_TUNE_SLOW_IMUL_IMM89X86_TUNE_MOVE_M1_VIA_OR:X86_TUNE_NOT_UNPAIRABLE;X86_TUNE_NOT_VECTORMODE<X86_TUNE_USE_VECTOR_FP_CONVERTS=X86_TUNE_USE_VECTOR_CONVERTS>X86_TUNE_FUSE_CMP_AND_BRANCH?X86_TUNE_OPT_AGU�X86_TUNE_VECTORIZE_DOUBLE�X86_TUNE_LAST�ix86_arch_indices�F	X86_ARCH_CMOVEX86_ARCH_CMPXCHGX86_ARCH_CMPXCHG8BX86_ARCH_XADDX86_ARCH_BSWAPX86_ARCH_LASTsigned charVARENUM
�VT_EMPTYVT_NULLVT_I2VT_I4VT_R4VT_R8VT_CYVT_DATEVT_BSTRVT_DISPATCH	VT_ERROR
VT_BOOLVT_VARIANTVT_UNKNOWN
VT_DECIMALVT_I1VT_UI1VT_UI2VT_UI4VT_I8VT_UI8VT_INTVT_UINTVT_VOIDVT_HRESULTVT_PTRVT_SAFEARRAYVT_CARRAYVT_USERDEFINEDVT_LPSTRVT_LPWSTRVT_RECORD$VT_INT_PTR%VT_UINT_PTR&VT_FILETIME�VT_BLOB�VT_STREAM�VT_STORAGE�VT_STREAMED_OBJECT�VT_STORED_OBJECT�VT_BLOB_OBJECT�VT_CF�VT_CLSID�VT_VERSIONED_STREAM�VT_BSTR_BLOB�VT_VECTOR� VT_ARRAY��VT_BYREF��VT_RESERVED��VT_ILLEGAL��VT_ILLEGALMASKED�VT_TYPEMASK�__int128__int128 unsignedcomplex floatcomplex double complex long double__float128 __unknown__func_ptr+s	`�
�__CTOR_LIST__�p	PpN__DTOR_LIST__�p	`pN�6GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/misc/mingw_matherr.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�_MINGW_INSTALL_DEBUG_MATHERR�	�{int�
bGNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/pow.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�N\N2charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charN�doublefloat__fpclassify6��x6Ssw7�__signbit}��x}Sstw~�internal_modfOS�NGN"Bg	valueOSnB
iptrOgQint_partQS�BfNNk
��BNN�.CSpowxSPN\NQC�		xqSD	yqSaDx_classs�Ry_classt�Qodd_yu*EdvS�ErsltvS9Ff|N�s,�����Ff�N0t\
�G`�dG��NN��
�H�NN�DH�|N�N��
�gH|N�N��H��N�N�
��H�N�N��H�NN�\
�INN�kI�#N���
��I���I��N�N|�
��I�N�N� J��N�N�
�VJ�N�N��J�0N7N�L
��J0N7N��J�Wa_x�SK�]NkN��
�AK]NkN��K��N�N����N�N��K�NN� 
��KNN�
L�BNIN��BNIN�P�$N2N��
�-L$N2N�yL�7N@N��
��L7N@N��L�QN_N�
�MQN_N�jM�dNmN�W
��MdNmN��M��N�N��
�N�N�N�GN��N�N��
�jN�N�N��N��N�N�
��N�N�N��N��N�N�W
�O�N�N�CO@N�pQ��YN�	�N��Qs�N�	�Q	��N��Qs�N�	�N�	�R1Q	P�xN�
	Q0^N6
�NV
8	RsQt�N�
V	RsQtN�	n	Q	�N��	Q���N��	QsN�	�	Q	�N�Qs_errnoldexp�S�	S� __mingw_raise_matherrd6
�HSSS__powinSV
S�!log2lq
q
q
long double"exp2l�q
q
O@GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/sqrt.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj`NzN]charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charO�doublefloat__fpclassify6��x6Tsw7�__signbit}��x}Tstw~�sqrtyT`NzNfO	x1T�O
res3T�Px_class4�QgsN�N4]
�DQsN�N��Q��N�N5�
�R�N�N��R��N�N7�
�S�N�N�@SN:NR1Q	��x_errno
__mingw_raise_matherrd�ITTT`GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/sin.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�No N� charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charN�doublefloat__fpclassify6��x6Ssw7�sinkS�No NvS�	x3S�S
x_class5�Pf�N�N5�#T
�N�N�nT�N�:R�`Q�P�N�! N�kR1Q	�x9 N�f N�R1Q	�x__sinl_internal0���long double_errno__mingw_raise_matherrd�HSSS�GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/cos.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objp N_!N�!charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charN�doublefloat__fpclassify6��x6Ssw7�coslSp N_!N�T�	x3S�T
x_class5�Pf� N� N5�>U
� N� N��U� N�:R�`Q�P� N�!N�kR1Q	�x)!N�V!N�R1Q	�x__cosl_internal0���long double_errno__mingw_raise_matherrd�HSSS��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/log.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj`!N�"N�"charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charN�doublefloat__fpclassify6��x6Ssw7�__signbit}��x}Sstw~�logvS`!N�"N�U		x3S7V
x_class5�Qfy!N�!N5L��V
y!N�!N�GW��!N�!N;��}W
�!N�!N��W�!N	�R�PQ�@	"N<@"NM�R1Q	�x]"N<�"NMR3Q	�x__logl_internal0---long double_errno__mingw_raise_matherrd�HSSS��GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/exp.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�"N�$N$charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charN�doublefloat__fpclassify6��x6Ssw7�__signbit}��x}Sstw~�__expl_internal4��	x4�
res6�long doubleexpuS�"N�$N:X$xkS�X
x_classm�Pf�"N�"Nm��qY�"N�"N�Z�#Nj#N���#Nj#N�AZ�#N$N�ruS�Z��#N�#Nu+��Z�#N�#N��Z��#N�#Nvk��Z�#N�#N�[�#NL�#N]Q	0�x	$NLA$N]�R3Q	0�xi$NL�$N]�R1Q	0�x�$NL�$N]R4Q	0�x
c00�	�~u
c11�	�~u_errno__mingw_raise_matherrd�HSSSxe s%�$N�$Nmingw_getsp.Sc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objGNU AS 2.21.51�vy GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/stdio/snprintf.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj%N%N�%__gnuc_va_list-�__builtin_va_list�charva_listk�size_tr
long long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned charsnprintf8K%N%N;[Cbuffer	^�[n	��[format	C�[	
retvalKP
argptr��h%NNR�RQ�QX�XY�I
�_vsnprintf*K^�C��=!GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/misc/wassert.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj %N�'N�&charsize_tr�long long unsigned intlong long intwchar_t�short unsigned intintlong int��unsigned intlong unsigned intunsigned charDWORDsKfloatsigned charshort intdoublelong double��_iobuf0`	_ptr/#	_cnt#	_base/#	_flag#	_file#	_charbuf # 	_bufsiz!#$	_tmpfname"/#(FILE$�
cpy_wstr�buf/src�max�_wassert2 %N�&N3\�
�2��]_File2��]_Line2;3^msgbuf4/�^fn5���ymsg5���{iFile5���}nCode6s�^l2%N 8|�$_�J_~�_lz%Np9���_�`~M`J%N�R
 �%N�R0QsX
&N0'RuQ	P�xXsY}w vw(|D&NVR0QuX	��xY �&NS�&N`zRF�&Nz�R3�&N��&N��Q	��xXu�&NS���_assert 'N�'N�`�
� ��a_File ��a_Line ;bm"5Tbf"5�bi#�b'N�xRv"'N-'N��Ru7'N�'N��RsQt�'N��Rs�'N����
�
malloc�q0�sprintf,S/�abortAraise<z _exit4�!__iob_funcT�`fprintf����strlen����"free�q#GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/ldexp.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�'Nv(N�(charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned chardoublefloat__fpclassify6��x6Jsw7�ldexp�J�'Nv(Ncqx	J�cexpn	��c	resJ�c
]�'N�'N#yad�'N�'N
��d
]"(N'(Ncy�d"(N'(N
�e](Nq_errno��#GNU C 4.7.0 20110410 (experimental)../../../build/mingw/mingw-w64-crt/math/powi.cc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\obj�(N�*N�)charlong long unsigned intlong long intshort unsigned intintlong int�unsigned intlong unsigned intunsigned chardoublefloatlong double__powi
I�(N�*N<eVx
Iffnn
�4gn��ge�0hsign��hasign�ilx��iwI�iyIjsI�jdone�)N)NVH	Q��
�*Nufrexp�IuI

_errno
r�$/++Nl+Nlog2l.Sc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objGNU AS 2.21.51�r�$�+p+N�+Nexp2l.Sc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objGNU AS 2.21.51�z�$�+�+N,Nsinl_internal.Sc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objGNU AS 2.21.51�z�$@, ,NP,Ncosl_internal.Sc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objGNU AS 2.21.51�z%�,P,N�,Ninternal_logl.Sc:\bb\vista64-mingw32\mingw-x86-x86_64\build\build\mingw\objGNU AS 2.21.51�%$>:;II:;
:;I8

:;I8
	:;

I8
:;I&
'I''I&II!I/:;:;
:;I
I:;<'I:;
:;I8
:;(
:; :;!:;I".?:;'I #:;I$4:;I%.:;'I &.?:;'I '5I(.:;' )*.:;'@
�B+:;I
,.:;'@�B-��1.��
�B
/.:;'I@�B01RUXY1U241341
4415��16��17��
84:;I94:;I
:U;1XY<1XY=1>?1@1RUXYA���B
B��C��D1XYEF.?:;'I@�BG4:;I?<H5I4:;I?<J!K4:;I?<L4:;I?
M4:;I?
N.?:;'I<O.?:;'<P.?:;'I<Q.?:;'I<R.?'I4<S.?:;'<T.?:;'<%4:;I?
$>%4:;I?
$>%$>:;I:;II''	I
:;
:;I8
.?:;'I 
:;I4:;I.:;'I@�B:;I��1.1@�B1411XY411.?:;'I@
�B:;I
4:;I?<4:;I?<4:;I
4:;I?
4:;I?
 &I!.?:;'I<%$>I'I:;(
:;I.:;'I@
�B	���B
4:;I?
%$>:;(
.?:;'I@
�B:;I
4:;I?
%4:;I?
$>%$>:;II'I':;	(

.?:;'I@�B:;I4:;I
��1��1��
�B
��.?:;'I@�B��14:;I?<'II4:;I?
.?:;'I<.?:;'<.?:;'<%$>:;(
:;:;I4:;I?
5I	I
5%$>:;II'I:;
:;I8
	
:;I8

:;
I8

:;II!I/:;:;
:;I
I:;'I:;(
:;
:;I8
.?:;'I@�B:;I:;I4:;I4:;I��1 ��
�B
!��"��1#��1$4:;I
%��&���B'4:;I?<(4:;I?
).?:;'I<*.?:;'<+.?:;'I<,&I-.?:;'I<%$>:;II'I!I/4:;I?
%$>I:;(
:;
:;I8
:;I	&I
'II.?:;'@�B
:;I:;I
4:;I
����
�B
.?:;'@
�B���B1.?:;'I@�B4:;I��1��1.?:;'<.?:;'I<.?:;'I<%$>.?:;'I@
�B%:;II$>:;II&	:;

:;I8
:;
:;I8

:;.:;' :;I4:;I4:;I.:;'@�B:;I4:;I
��1��1��
�B
&I.1@�B1411RUXYU 41
!41"��#���B1$���B
%��1&.?:;'@�B'4:;I
(1RUXY)1*+4:;I?<,.?:;'I<-.?:;�@'I<.I/.?:;'I<0.?:;'<1.?'I4<%.?:;'@
�B%$>:;II':;(
:;I	.?:;'@�B
4:;I
4:;I���B1
��
�B
.?:;'@
�B���B1I!4:;I?<.?:;'I<I%$>I:;
:;I8

:;I8
:;	
I8

:;I:;I:;
:;
I
:;II!I/:;:;:;
:;I.?:;'@�B4:;I4:;I
����
�B
��:;I��15I&I 4:;I?<!4:;I?
".?:;'<%4:;I?
$>%$>:;I:;I:;
:;I8
I	:;

:;I8
'I
5I.:;' 4:;I.1@�B41����
�B
�����B.?:;'I@�B:;I4:;I��1��11XY41 4:;I
!.?:;'I<".?:;'<%$>:;I:;III!I/:;	
:;I8


:;I8
:;:;

:;I.?:;'I :;I4:;I4:;I.1@
�B141411XY41
.?:;'I@
�B:;I:;I
4:;I.?:;'I@�B:;I��1 ��
�B
!��
"��1#&I$4:;I?<%.?:;'I<&I'.?:;'I<%4:;I?
$>%%$>I':;(
:;:;I	I
!I/4:;I?
%4:;I?
$>%$>I&I.?:;'I :;I4:;I.:;'I@�B	:;I
:;I
4:;I1XY
141.?:;'I@�B4:;I
1RUXY1
U1XYU141
��1��
�B
��1��1.?:;'I<.?:;'I<I .?:;'<!.?:;'I<".?:;'I<%$>I&I.?:;'I :;I4:;I.?:;'I@�B	:;I
4:;I4:;I
1XY
141��1��1��
�B
.?:;'I<.?:;'<I%$>I&I.?:;'I :;I4:;I.?:;'I@�B	:;I
4:;I
1XY1
41��1��
�B
��1��1.?:;'I<I.?:;'I<.?:;'<%$>I&I.?:;'I :;I4:;I.?:;'I@�B	:;I
4:;I
1XY1
41��1��
�B
��1��1.?:;'I<I.?:;'I<.?:;'<%$>I&I.?:;'I :;I4:;I.?:;'I@�B	:;I
4:;I
1XY1
41��1��
�B
��1��1.?:;'I<I.?:;'I<.?:;'<%$>I&I.?:;'I :;I4:;I.:;'I 	:;I
4:;I.?:;'I@�B:;I
4:;I
1XY14114:;I��1��1��
�B
��1.?:;'I<.?:;'<I%%:;II$>:;II.?:;'I@�B:;I	
4:;I
��1��
�B

&I.?:;'I<I%$>:;II:;I&I:;	
:;I8

.:;' :;I.?:;'@�B
:;I:;I4:;I4:;I
1RUXY1��1��
�B
����1I!I/���B14:;I?<.?:;'I<I.?:;'<.?:;'I< .?:;'<!.?:;'I<".?:;'<%$>I.?:;'I :;I4:;I.?:;'I@�B:;I	4:;I
1XY1
41��1.?:;'I<%$>I.?:;'I@�B:;I4:;I
:;��1	��
�B

��1.?:;'I<I
.?:;'I<%%%%%�&�
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include../../../build/mingw/mingw-w64-crt/includec:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_inccrtexe.cwinnt.h_mingw.hwindef.hbasetsd.hstdlib.hwinbase.hinternal.hmath.htchar.hctype.hintrin.hprocess.h_varenum.h	@��}�Kk�kh[��J-z������~.egK��dؖZ��l����`�y ��~<�uf�u.f�
f�u��	J�v�/[>:�	��vX��	t�v�W.�ܠ��	J�v���Y>�X�	��Y�~�Z��t�.>.�uJ�
JuI�Vusv�i�f#IuL��I=���t_�e=0rh���k.F�a]�
�"/b��՟��������~���~fJx�	YZ2	fJx�	YZ2NH�
../../../build/mingw/mingw-w64-crt/crt_newmode.cNH�
../../../build/mingw/mingw-w64-crt/crtwildcard.c<��
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includetlssup.c_mingw.hwindef.hbasetsd.hwinnt.h	0N�P�,Z��f��ZXx�u��*�s��:�
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_inc../../../build/mingw/mingw-w64-crt/includecharmax.c_varenum.hinternal.h	�Nu	��
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_incmingw_helpers.c_varenum.h	�N>�>NH�
../../../build/mingw/mingw-w64-crt/crtxtxtmode.c���
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include../../../build/mingw/mingw-w64-crt/includec:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_incatonexit.cstdlib.hinternal.h_varenum.h	N!XA�HZ0��sYZ�ZZV>YWuYWuZu���K�%�
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_inc../../../build/mingw/mingw-w64-crt/includenatstart.c_varenum.hinternal.h���
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includec:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_inccrt_handler.cwinnt.h_mingw.hwindef.hbasetsd.hwinbase.hsignal.h_varenum.h	�N�k/�]��@<�X2-t����X��#��CyX1Y-qtֻ�CyXiY-[t�� 4h��+Y�P��-��-���Z:>�aMs��W2�v4w<g��sZ=Y>KIdztf�Zn�X���lz<B_�.�>d��-t]��[�t�X��ڻ��q 以�T
�5��R��NH�
../../../build/mingw/mingw-w64-crt/crtcinitexe.c���
../../../build/mingw/mingw-w64-crt/crt../../../build/mingw/mingw-w64-crt/includec:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includec:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_incmerr.cinternal.hmath.hstdio.h_varenum.h	pNL�[�dMhWY=kv��X:^X ust��u�u�uaG�
../../../build/mingw/mingw-w64-crt/crtdllargv.c	�N4�
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includepseudo-reloc.cvadefs.h_mingw.hwindef.hbasetsd.hwinnt.hstdio.h<built-in>stdlib.h	�N�?fAX? Z��J�8�.q<����bY%�!Ks��$���~����~�nfgt>�=FNKyX�X�~�
�w��L��_Xb�A	<wf7<x<D�ǑfX �=���tL��=	�v�=?9[�ff?e�=�V.=Yt=��J
cH�
../../../build/mingw/mingw-w64-crt/crtCRT_fp10.c	�N	2���
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includec:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/include/psdk_incgccmain.c_mingw.h_varenum.hstdlib.h	�NM�/�Mq]�gwy�V]uev��.��e�
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includegs_support.cwinnt.hwindef.hbasetsd.hstdlib.h	PN2���Z �dȮ^��hV0b
�t�=@Ci�uu���C�u�;=iI!W�
tw.y�y�|��g�=jX�MG�
../../../build/mingw/mingw-w64-crt/crttlsmcrt.c��
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includetlsthrd.c_mingw.hwindef.hbasetsd.hwinnt.hwinbase.hstdlib.h	 N����uhY�xJXׁ�f�g*[Jr��;=1/L�wrsMht��\b2Ji��vZ.sJX�uք�u�*K�S� ��s�w��oX�St��
../../../build/mingw/mingw-w64-crt/crtc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includepesect.c_mingw.hwindef.hbasetsd.hwinnt.hintrin.hstring.h	PN-	tytu��l
ty.Wx�RxX��H`/4|x.C��Io�<oXH\N/�XC�-MIs�
<sX�hZzJHX/^M��my.B���YZ�	WQ�
../../../build/mingw/mingw-w64-crt/crtpseudo-reloc-list.c�X�
../../../../../build/gcc/src/libgcc/../gcc/config/i386cygwin.asm	pN�""gY0uKgg0=L""�
../../../../../build/gcc/src/libgcc/../gcc/config/i386c:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/x86_64-w64-mingw32/include/psdk_inc../../../../../build/gcc/src/libgcc/../gcci386.h_varenum.hlibgcc2.cgbl-ctors.hTN�
../../../build/mingw/mingw-w64-crt/miscmingw_matherr.c'��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includepow.def.hmath.herrno.h	�N�OaO%l<.K�f�~X�����.��~.���~f��f�~fz����~���+@����~�&�5�~t�/��.�~��X�~t:���.�~f���}����.�X����.�c�~��-�J�~t�z����~�������~t�.�5�~��X�~�X/I�f�~��X�~�X/��f�~��X�~�X/��f�~t_���~���~��X�~t�I���~tB��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includesqrt.def.hmath.herrno.h	`N1���Y�}����}X^gIhg�h�����}X�8
Xt�
��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includesin.def.hmath.herrno.h	�N3t��Y�}X�y�8Az�6	��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includecos.def.hmath.herrno.h	p N3t��Y�}X�y�8Az�6	/��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includelog.def.hmath.herrno.h	`!N3���Y�}����}X]g�0g�0*x�@Qs�@	]��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includeexp.def.hmath.herrno.h	�"N����Y�~X���y���W����}X���}�*|A�u�6�<B$�
mingw_getsp.S	�$N\
 u��
../../../build/mingw/mingw-w64-crt/stdioc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includesnprintf.cstdarg.h_mingw.hstdio.h	%N	J\�[��
../../../build/mingw/mingw-w64-crt/miscc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includewassert.c_mingw.hwindef.hstdio.hstdlib.hsignal.hintrin.h	 %N2�A~Wg]X#<@z<_tkIr&�X�D Jy<_t�uG�!J��s�huW"�v^[i ��g[�zX�x�u[<�?U?�;=�=���Iu���euY�=�5��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includeldexp.cmath.herrno.h	�'N	�J�}X�H�d���}XX#�u�R�Hh�q��
../../../build/mingw/mingw-w64-crt/mathc:/bb/vista64-mingw32/mingw-x86-x86_64/build/build/root/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/includepowi.cmath.herrno.h	�(N
AEk��j��	�z.�QyXfS�EyY��u(	քH
fh�W
�?m�-K+2F6��g�1��������h�-yցY&.Y�hS�rJ���W�
log2l.S	+Ng////!////g/=///=�/"//=�/"///=�/Z�
exp2l.S	p+N//=//=//KKY=K=/KK///////=�/"Y///=�/T&�
sinl_internal.S	�+N///Y/=�/!/////Y///=�/P&�
cosl_internal.S	 ,N///Y//////Y///=�/T&�
internal_logl.S	`,N///g//g/=///=�/"//=�/����x �@@HD@C$`@ D0�
CT�@�B�A�A �A(�A0�G��
0A(�A �A�A�B�F@D0Z0@D0Z����x �$0N/D0R
JND`NiA�A�D@f
A�A�Bo
A�A�A�N����x ���N
����x ���N�N����x �4(N�A�D@�
A�ASA�(�ND0O����x �T��N�A�A�D@D
A�A�Dj
A�A�D�
A�A�DT��N�B�B�A �A(�A0�A8�D`Y
8A0�A(�A �A�B�B�CD��	N�A�A�D@]
A�A�Kw
A�A�G����x ��pN?D`z��NL��N�B�A�A �A(�A0�DpV
0A(�A �A�A�B�J����x �H�N����x �$x�NaA�A�DP�x 
NB�B�B �A(�A0�A8�A@�D�R
@A8�A0�A(�A �B�B�B�Fp
@A8�A0�A(�A �B�B�B�Fq
@A�8A�0A�(A� B�B�B�Alx0NBB�A�A �A(�A0�D`P
0A(�A �A�A�B�A|
0A�(A� A�A�B�A����x ���N����x ��N5D0p4�N`A�A�D@o
A�A�I0N����x �l�PN�B�A�A �A(�A0�Dpm
0A(�A �A�A�B�Cn
0A�(A� A�A�B�A$� N�A�C
I������x �D8 NmA�A�A �A(�DP^(A �A�A�A�\8�NA�A�A �A(�DPW
(A �A�A�A�AO
(A� A�A�A�A48N�A�D0R
A�HH
A�G$8�N�D0U
GM
C����x �XPN+X�NPLX�N�A�A�A �D@~
 A�A�A�HI A�A�A�$XpNsA�D0lA�X�N'D0b<X NLA�A�D@[
A�A�AeA�A�����x �,x	pN2A�A�n�A�����x ��	�N�D �<�	PNA�A�G�F���
��A�A�A����x �,8
`NDpd�g
�Am
�C����x �$�
�N�G�V
C����x �$�
p N�G�V
C����x �,`!N=G�k�c
�KS
�A����x �,H�"NKA�D�d��
�A�J����x ��%ND@X����x �\� %N�B�B�A �A(�A0�A8�G�&
8A0�A(�A �A�B�B�CD�'N�A�A�A �A(�D`�(A �A�A�A�����x �$��'N�D`h
De����x �T��(NuB�A�A �A(�A0�D�N��
�
0��A(�A �A�A�B�A__imp__fmodemingw_initcharmax__globallocalestatus__dyn_tls_init_callbackCheckSumSizeOfImageBaseOfCode__mingw_winmain_hInstanceMinorSubsystemVersionDataDirectorySizeOfStackCommitImageBaseSizeOfHeapReservemingw_initltsdyn_forceSizeOfCodeMajorLinkerVersion__native_startup_lock_newmodemingw_app_type__onexitbeginAddressOfEntryPointmingw_initltsdrot_force__mingw_oldexcpt_handlerSizeOfInitializedData__mingw_winmain_nShowCmdSizeOfStackReserve__mingw_winmain_lpCmdLine_MINGW_INSTALL_DEBUG_MATHERRSizeOfHeapCommitMinorLinkerVersion__enative_startup_state__imp__commodeSizeOfUninitializedDataSubsystemMajorSubsystemVersion__native_startup_stateDllCharacteristics__imp___initenvSizeOfHeadersMajorOperatingSystemVersionFileAlignmentNumberOfRvaAndSizesExceptionRecordWin32VersionValue__onexitendMinorImageVersionMinorOperatingSystemVersion__imp__acmdlnLoaderFlags_dowildcardMajorImageVersion__image_base__mingw_initltssuo_forceSectionAlignmentlpreserved_tls_indexhDllHandle_tls_startdwReason_tls_end__onexitend__onexitbegin__imp__onexit__enative_startup_statereset_fpuold_handlerContextRecord__mingw_oldexcpt_handlerExceptionRecord__RUNTIME_PSEUDO_RELOC_LIST_END____RUNTIME_PSEUDO_RELOC_LIST____image_base____CTOR_LIST____DTOR_LIST__HighPart__security_cookieExceptionRecord__security_cookie_complementCharacteristics__image_base__pSectionpNTHeaderpImageBaseVirtualAddressiSection_Messagemingw_app_typewWw�WXw`dwd�w0�w�w0Cbq���w��w��w��w ��w(��w0�w�w0w(w ww w w���0���P�QP>Q*Q*�0���P��0���R��x1'��>R*R*�0���R��0���p��S*�S��S�0�eT*T*;0�;�T��T��0��0���P��0��0���P�	P*6P=G0�}�0���P��0���P��P��P��P��PD
�y��
�y�DR	�yR�Vae	�yeU�Uae0�VXPX\�\n{p�w.w0./w(��(/P04w4Nw0NOw4H��HOPww0 w .w0./w$R$/�R�$Q$/�Q�$X$/�X�01w12w26w6\w�\]w]^w^`w`�w���w��w��w��w�0SRS_�R�_sRs��R���R���R�0SQS_�Q�_sQs��Q���Q���Q�0SXS_�X�_sXs��X���X���X�s�S��sx�g{S}�Sww�w���w��w��w���w��wReSe��R���S���R�(P(��`S\P\��heiPi�S��P��w��w0��w��R���R�wwwJw�JKwKLwLPwPzw�z{w{|w|�w�:w�:;w;<w<@w@�w�"R"M�R�M�R���R���R��R�=R=��R�QM�Q�M�Q���Q���Q��Q�=Q=��Q�&X&M�X�M�X���X���X��X�=X=��X�&Y&M�Y�M�Y���Y���Y��Y�=Y=��Y�D1�DKSKMPMt1�t{S{}P}�1���0��1�0�41�4;S;=P=v1�v{0�{�1���0�'CP��P�P=PPeuP{�P0�DTM=0�=eTe�0���w��w��w��w ��w(��w0��w8��w���w8��w0��w(��w ��w��w��w��w���0��$0�CVSrwS$?P^rP��P��P��V��P��V��w��w��w�w�wwwGw�GHwHIwIPwP�w���R�SR�R�HSHJ�R�J�S(=P��P��P'>PUcPi~P�>0�J�0���	����0���	���d0�di	��i0��	����0�0�>TJ'0�'UTU�0�w>w�>?w2R29r9?�R�Q9�H9?�Q�9c9d@KRKL�R�PRwRSwSTwTUw UVw(VZw0Z�w���w0��w(��w ��w��w��w�,w�P�R���R��,R_f
6�x�f�T��
��x�
��x�
�x�,
ؿx�wwwaw�&R&aSprwrtwtvwvww wxw(xyw0yzw8z~w�~�w���w���w8��w0��w(��w ��w��w��w��w���w���w8��w0��w(��w ��w��w��w�Qw�QRw�RSw8STw0TUw(UWw WYwY[w[\w\qw�p�R��T���R���R��T��R���R��STS\�R�\qTp�Q��U���Q���Q��U��Q���Q��TUT\�Q�\qUp�X��S���X���S��X���X��RSR\�X�\qS��S��X���X��RSR\�X�\qS��Q��U��Q���Q��TU\qU��R��T��R���R��STS\�R�\qT8\����w��w��w��w ��w(��w0��w���w0��w(��w ��w��w��w�w�w0w( w  !w!#w#$w$�w���X��x��Y��x��
s� $ %u"�
Y
x
s� $ %u""(Y(?x?F
s� $ %u"IhYhsxsz
s� $ %u"��Y��x���@q��@�
ZS�@VeZm��@��P�s� $ %v"�s|� $ %v"�$>P��R��s� $ %u"���R�R"FRIzR��R5BSR�S�SS�$�Lw4w045w@AwABwBFwFuw�uvwvwww�w��w�|�P��STeSehs�hvSwwww w(
w0
7w�78w089w(9:w :;w;=w=@w@�w���w0��w(��w ��w��w��w��w�PU��UX\X`v $ %|'�`mv $ %u $ %'|'�m�v $ %u $ %'t $ %'|'���Q��w��w��v��R��T�	�{�S��HPBY��P��Ywwww w(fw�fgw(ghw hiwijwjmw/	��{/gS78P8TTpqwqrwrswstw txw(x�w���w(��w ��w��w��w��w���w(��w ��w��w��w��w�p�R��V���R���R��V���R���Vp�Q��U���Q���Q��U���Q���U��P��S��P��w��w�w0wwXw0XYwY`w`�w0�RYSYZ�R�Z�S10�1EQZhQ�0�$1	��{1<P<@Q@EPZoP�Q��w��w0��w��w0�w'w0��R���R���R���R���R���R��R�R�R �R� $R$'�R���Q���Q���Q���Q���Q���Q��Q�Q�Q �Q� $Q$'�Q���X���X���X���X���X���X��X�X�X �X� $X$'�X�	R	�R�R+�R�	R	�R�R+�R�R+�R�07R7��R�7YRCYr�0$0%r"#�w~P7^0���w��w��w��w �w�w wwww�w www��R�T	�R�	T�R���P��p�0$0%p"#���S	S��0� !w!%w%�w0��w��w /R/�SKhPThp�0$0%p"#���QKm0���w��w0��w��w��w��w��w���w��w��w�w�www��R��T���R��T�R�Pw�w ��w\a\�b8
�8<�"@B�"B\a\�bSXP��w��w��w��w���w��w��w��w���a�E�!Eb����b���~����~y�b����~����~3=��~l��~P���~�60�6yQy�0���Q��0���Q�d0�dPQP�0���������al����g�gA��Alg��P�Ry�R��R��R��a�E�!Eb���JP��Py�P��P��PluP��PPUP������P�c������P6c��~����~=^PRc����!���^cP��P�jyP��3=�!��P3=P���l���P!APl��w�P��bq�b���q}�!}����Pq�P��PPh�WhP���!���d�r~P���!���w����P��P���!�������P���!��������P��P���!����P���!�����P��P���P,P�:PPw�w���w��w��ww�hahx�!x�a���H���!��a��!a	�
����!��
���g��
��
�hahx�!x�a���H���!��a��!a-P(hahx�!x�a���H���!��a
�!a-�P��P
P���H�
�!��P�
Pw]w�]`w`�w�?a^h�!���!?a^h�!���!Pw]w�]`w`�w�?a^h�!���!?a^h�!���!Pw�w���w��w���w�=w�JaJn�!��!�������!���!JaJn�!��!�������!���!7P��P2JaJn�!��!�������!7nP�P��Pww�w���w��w�Kw�cac��!��b��!Vh�!���!��a��!cac��!��b��!Vh�!���!��a��!Ps�����!VS��!�PG��GPww�wR�R�Q�Q�X�X�wwww w(w0w85w�56w867w078w(89w 9;w;=w=@w@�w�R>S>sp�{�s��R�)Q)wTw��Q�)X)9V9>�X�>�V0:P:8U>�U$>P��P��P0>
�0DSDKs~�K�S>yS0>\>�Y>yYiw
�i7T>�Tiw]w�Z>yZ��w��w��w��w ��w(��w���w(��w ��w��w��w��R��V���R���Q��U���Q���X���X�P�S"1P1�T��R"30�_n0�wlw�lpwp�w���wVaV|�H|Q|��Q�@
�Bh�!mt
�t|�!VaV|�HGPmtPBh�!t|�!GhPt|Pwwww w(
w0
�w���w0��w(��w ��w��w��w�uw�mamKg��a��g��a�(g(8a8@gERaR[g�Q��S���Q��uS|ITImt1&���T��T(TR[T[ut1&��mQ��QQRuQ|0V8�V��V��	��(VRuVm�U��U�	��(URuU��������(��Ru��Img[ugI�a#(
��[papub��a��b��b�mb��a��bbRhbd��d���
 ��������������}���}������M\q���M\q���$����$������������������cj cj ��P�*-0ZeiZei�.file5��gcrtexe.cj � envpargvargc� argret$�` ��� �mainret� �.l_endw)�0 .l_start>.l_endI.textO_.data.bss(.xdatah
.pdataH.rdataG� �*�_,s7
0F�T
�`�k.file=��gcrtbegin.c.textP.data.bss0.fileU��gcolprof.cusageP main`! x.textPX�.data#.bss0.rdataPX%b.xdatah.pdataH�`!�2K�x@�T.fileh��gprofin.c��
 �� �  �� .text�
>)�.data@.bss0.rdata�%�	.xdata��.pdata`0.file��gprofout.c��6 � 7  8 �9 �9 &�: 3�@ APB .text�6�gy.data@.bss0.xdataP�.pdata�`.rdataP/�.file���ggammap.cQ�� a� op� zП �@� �� �� ��� domap� �� �@� .text���L
.data@X
.bss0.xdata0�.pdata��!.rdata�F�.file���gnearsmth.c��� aerrf�� ��� comp_ce�� optfunc1� �0� `� optfunc2� `� !� -� :� I�
 W dp r
 cvect� �  �� �� � .text���}.data�
�.bss0.xdata��.pdatat�?.rdata�S�.file���gvrml.c��k ��k clear�l XYZ2RGB@m ��q �0r �pr add_quad�s 
�s u (u add_linePv add_cone`v do_flush`} del_vrml�� cs2xyz� add_text�� 5�� F�� Q�� d`� op� }�� ��� ��� ��� ��� �П �0� ��� g_fmtTL��� get_ext�� �� `� &p� vrml_ext�� 5Ь new_vrml`� Dp� .text�k]�.data��=.bss0.xdata�0.pdatap�x.rdata@Y�.file���gxicc.cP�� c�� t�� ��� ��� ��� ��� �� ��  � 0� !�� 1P� Ip� ]�� qP� �`� �p� ��� �0� ��� ��� � � 0� � )�� :@� JP� U�� a� icxLimit�� kp� u�� �@� �p� ��� �0� ��� ��� �P� ��� �� � $�� ?�� S� ip x� �� �@ xicc_del@ �p �� �0 � �  �P! ��" 	�# 	�$ )	�% 3	' @	�9 L	`: ]	�: q	; �	P; �	�; �	@< �	�< �	0= �	�= �	@> 	
? 
`B 0
�B I
 C mxmfunc�F Z
PG d
M v
O �
�O �
P �
�Q �
�Q set_clut@R �
�R �
�S �S `T ;�T WU ou zPu ��u � w ��y �@� icx2strp� �P� ��� ��� 
��  � )`� >�� M�� `�� q�� ��� � � new_xicc0� ��� �@� �@� ��� � � ��� 
P� 
�� 
� $
�� .
  :
� M
 Z
 j
  x
` �
� �
� �
 �
� �
� �
�
 �
p �
� �  ,� <P L� a@ .text��zK(.data`L.bss0.xdata��	.pdataP��.rdata�x�.file���gxcam.cu@ settrace �@ �� �� �� �� �  .text@.data`L.bss@.xdata�,.pdata�
`.rdatap�p.fileW��gxspect.c�P �p �� � ,� A� O c�am�% ��& ��' �@* ��* �@. �3 �@6 �p7 �7  �C 4�C s0.30669@7s1.30670�:s2.30671>D�E s0.30684`As1.30685�Ds2.30686 HP�G `pH n`I 0K cct_func�L ��N il_D50@�il_A@�il_C@�il_D50M2@il_D65@�il_nonePil_F5@�il_F8@�il_F10@�@$�0R ��R �@&�pT ���@�c()4��C��Q@
`Fr�~�V ��V ��W �X � \ �P\ ��\ �pb �b c 0c .Pc =�c I�c Wd e0d t�e read_cmf�e ~@f �pf �Pi �pk ��k ��k ��k ��k �0l 	`l @n +Pn 7po Gp yp.31143�&yy.31144�9xx.31142'W0r e@r r�r �s � s ��u �Px ��x ��y � z ��z ���@�.J�Wf����t��@��P} �P~ �� denE�#denT��"denISO�"denM ]#denA`$#0� �� xyz2tden�K!�� .P� ;�� H�� Wp� e�� y@���y��� ��B!�����@m%��"0`5F��!\@�q���`� �������T�`�`G�:*�(= � Q��e��x�� �@� ��� �� ���#�`� �@�$�p� .textP��.data`L�c.bss@ f.xdataL.pdataX,.rdata���n.filet��gxcal.c�� �0� �� xcal_delе `� ( � 3� C�� M�� [@� j�� �P� new_xcalp� x�&.text���.data�&#.bss`f.xdataT�.pdata��'.rdata�PH.file���gxcolorants.c�� �@�&�� �@� �`� ��� P� @�&#P� 7�� E�� S � b�� o�� �@� ��� ��� �P� ��� ��� �� .text��N.data@�&�I.bss`f.xdata �.pdata �9.rdata�S�.file���gxutils.c%�� 0�� ?�VO0� x��&.text��/.data��&#.bss`f.xdata� .pdata$	.rdata�V�.file���gxfit.cxfit_del�� aP� r�� }� xfitfunc� �0T �� �� ��� �� �@� ��� �� �`� � � )�� 7 G� xfit_fitP xfitprog�. skm_weak@/ new_xfitp/ x �&.text��Q�.data�&C.bss`f.xdata��.pdata(B.rdata`WT0T(c�,s0.file���gcam02.c��/ �P< set_view�G cam_freeY �0Y x`�&.text�/�*%.data`�&#.bss`f.xdata��.pdata<<.rdatap\.file��gcam97s3.c��Z � d set_view�k cam_free�r ��r .text�ZR�.data��&.bss`f.xdata��.pdatax<.rdata�_�.file��giccjpeg.c� s ��s �u �u .text sl.data��&.bss`f.xdataL8.pdata�0.file4��gmoncurve.c��v �v �v  w . x ;�x K@z Y�{ g~ t` � ��� mcv_del� mcv_fit@� new_mcv � �� �� x��&.text�v�6.data��&#.bss`f.xdata�H.pdata��3.rdata c�.fileL��ginsttypes.c�p� ��� �� �@� ��� ��� �Б � x�&.textp�/
�.data�&#.bss`f.xdata�0.pdata�`.rdata d�_.file���ggamut.cgetsres�� getisjab�� �� ! getcent� getrange� +P� 6�� getvert0� B�� setwb@� V`� e0� u� �P� del_gbsp�� �� �� �p� ��� �`� �0� �`t��t��tgetcusps�� ��  � p� �� compgawb � &p� getwb�� 8@� setcusps � B � T� l�� ��� n.30607`f�� �� n.30617df��� new_gtri�� n.30628hf� � del_gtri� �� n.30636lf�p� ��� ��� v0.31002�flu_split@� init_lu�� ep.31476pfv0.31475�f��� read_gam�� �`� 	 � t$P� 0�� :P Kp V� dp { �� nearest" _radial" nradial% radial0% volume`% � ' ��' nverts�' nssverts( ��* ��1 �2 ��4 �`6 exp_cyl8  �; .text����.data �&�.bss`fX.xdata��.pdata��.rdata�j�.file���grspl.c �< get_res= ! = 7 0= E 0? S `? h �? t `E  �J �  N � Q � �Q new_rsplR � 0T is_mono�V � �X � �Y rpsh_inc�Y � �Z � �] � �] set_rspl^ .text�<Z*A.data�&.bss�f.xdata�$d.pdata�B.rdata�v�.file���gscat.c�  g !@i soln_errj ! m (!@{tweak�2!�~ E!�� Z!�� g!� u!�� �!P� �!� fit_rspl�� �!`� �!�� .text g�G�.data�&�.bss�f.xdata(&h.pdata��*.rdata@x�
.file_��grev.c�! � �!�� �!а �!�� �!� �!�� �!� 	"� "p� %"� 4"`X @"� N"p� a"� q" � �"� �" � �"p� lchw_sq`� �"@� �"`� aorthog�� �"� �"@� �" � �"� #P� *#�� A#�� L#@� Z#�� h#Y |#�� �#�� �#� �#�� �#�� �# � $�� $�� )$`� A$`� N$�� `$@� s$�� �$� �$ � �$p� alloc_sb� �$P� �$^Y �$�Y �$�\ %�� %�� "%` 5%� I%0 _% j% x%0	 �%P
 �%�  �%�# �%�% �%�0 �%�: �%0A �%�L �%� 
&� &�f#&� 8&�� E&@� X&P� p&� |&�f�&p� �& � �&P� �&�� init_rev�� free_rev�� .text �O5M.data��&<.bss�f0.xdata�'.pdataP��T`X�c�-Ts�<.rdata@��
.filev��ggam.cget_edgep� get_vert@� gvprad�� �&P� �&�� init_gamp free_gam� 'P .textp���.data�&.bss�f.rdata�x.xdata�-�.pdata(`.file���gopt.c'0 '� $'�
 /'�
 9'0 .text0�:.data�&.bss�f.xdata�.�.pdata�<.rdatap�p.file���gspline.cF'  hmagic��Y'�! e'�! .text 	.data�&.bss�f.rdata�`.xdata</(.pdata�$	.file���gicc.cq'0" �'@" �'P" �'`" �'�" �'�" �'�" �'# (P# ( & 3(@& E(�& \(�& q(�& �(`' �(�' �(�' �(P( �(�( �(�( )@) )p) 3)�) F)0* b)`* |)�* �) + �)P+ �)�+ �), �)�, *�, * - '*�- 9*�- I*p. V* / g*@/ v*�/ �*0 �*00 �*p0 �*�0 �*�2 �*�2 �*�2 +3 "+`3 1+5 F+�5 V+@9 b+�= p+�? {+PA �+`A �+pA �+�A �+B �+`D �+�D ,@E $,�F <, G Q,�G m,H �,`H �,�H �,PI �,�I �,PJ -`J *-pJ >-�J O-K e-@K y-�K �-L �-�L �-M �-�M �-�O �-@P �-�P .�P ;.�P W.Q p.�Q �.�Q �.@R �.�R �.�R �.�R �.S �. �&�.�S �.�Z /[ /`e /�e 1/�e A/�e Q/�e b/f t/0f �/@f �/`f �/pf �/�f �/�g �/ h �/@h 0`h 0�h #0�k 90 l S0@l i0�l �0m �0 m �0pm �0�m �0 n �0pn �00o �0`p 	1�p  1r 01 r <1�u R1��&buf.9438`r_1v si.8405�lbuf.8406my1Pw buf.8399`ksi.8398Pk�1�x �1�~ �1� �1� �1 � �1� 2 � &2� ?2 � O2�� a2� v2�� �2�� �2p� �2� �2 � �2`� �2Ж 3��  3� 83P� M3� a3@� y3�� �3� �30� �3�� �3�� �3и 4`� 4� 34�� D4p� W4�� i4�� 4�� si.8391�ibuf.8392�i�4� �4�� �4@� �4�� �4@� 5�� )5� F5p� b5�� y5`� �5p� �5�� �5�� �5@� �50� �5@� �5� 6� 6`
 .6� B6� S6@ c6� z6@ �6� �6  �6� �6�, �6@. �6P1 75  7�6 77�6 L7�; a7P@ w7�@ �7@A �7�F �7�M �7pP �7�S �7`W �70[ �70_ 8�e 8�f "8�g B8�k Y8 m d8�n �8 v �8�v �8�x �8�x �8 y �80y �8`y �8�y 
9�y 9�y 09�y A9�y U9z h9z {9�z �9�z �9`{ �9�{ �9`| �9�| :� :p� $:�� <:�� V:� m:0� �:�� �:�� �:0� �:�� �:�� �:��&;`� ;��&;�� :; � K;�� _;@� r;�� �;0� �;�� �;� buf.8602�p�;�� buf.8644Pq�;`� buf.9111�r�;`� buf.8623q< � buf.86360q <�� buf.8594�p;<� R<� d<� t<@�&�<@� �<�� �<P� �<p� �<Я �<@� =� =з (=�� <=� U=� i=�� w=� �=`� �=�� �=@� �=�� �=�� �=�� �=p� �=�� >� > � 1>0� G>�� [>�� l>p� {>�� �>�� �>� �>�� tag2str�� si.8293gbuf.8294 g�>�� buf.8571 p�>`� buf.8526�o�>�� buf.8583�p?p� buf.8419�n"?�� 1?� @?�� O?`� `?� m?`� buf.8470o�?`� �?�� �?�		 �?�
	 �?	 icc_dumpP	 str2tagp	 �?�	 �?�	 icm2strp	 buf.8658`isi.8412�gbuf.8413�gbuf.8497`obuf.86140ipsh_init0	 @�	 psh_inc�	 @0	 -@�@	 ?@�A	 icmInv3�A	 icmAdd3B	 icmSub3@B	 icmDiv3pB	 icmMul3�B	 icmPow3�B	 icmSqr3`C	 icmSqrt3�C	 icmAbs3�C	 I@ D	 T@E	 a@0E	 p@`E	 �@�E	 �@0F	 �@�F	 �@�F	 �@@G	 �@�G	 �@H	 �@H	 �@PH	 �@I	 	A�I	 APJ	 !A`L	 3AN	 HAQ	 XA�T	 iA�\	 yA�b	 �A�r	 icc_read0}	 �A@}	 �A	 �A 	 �A�	 icmDot3@�	 �Ap�	 �A�	 icmNorm3 �	 �A`�	 �A��	 �AЁ	 icmClip30�	 	B��	 B�	 "Bp�	 0B �	 <BP�	 FB��	 QB�	 `B��	 jB�	 vB�	 �B�	 �B`�	 �B��	 �BP�	 �BP�	 �B��	 �B��	 �B��	 �B�	 
C@�	 C��	 icmDot2��	 icmDot22�	  C �	 .C��	 9CЖ	 FC��	 TC��	 lC�	 �C��	 �C`�	 �C��	 �C@�	 �C��	 �C��	 �CМ	 �C0�	 �CP�	 D��	 icmY2L��	 icmL2Y�	 DP�	 D��	 buf.9115�q0DP�	 ?D@�	 PD��	 dD��	 uD �	 �D��	 �D0�	 �D`�	 �D��	 �D�	 �D�	 �D@�	 E�	 $E�	 =E0�	 QEp�	 dE�	 E0�	 �Ep�	 �E��	 �E��	 �Eа	 �E�	 �E��	 �E��	 F �	 F��	 F�	 !F��	 ,F�	 6F@�	 AF��	 MF �	 \F��	 kFP�	 ~F�	 �Fp�	 �F�	 �F��	 �F�	 �Fp�	 icmLabDEp�	 �F��	 �F�	 �F��	 G��	 G`�	 G��	 icmCIE940�	 (G`�	 4G��	 icmCIE2K��	 ?G��	 KG �	 _GpqlG�q|G�	 �G��	 �G��	 �G0�	 �G`�	 �G �	 �G��	 H��	 H��	 H��	 *H �	 7HP�	 NH��	 eHp�	 |H�	 �H��	 �H0�	 �H��	 �HP�	 �H��	 I��	 5I��	 MI��	 eI@�	 uI��	 �I�	 �I0�	 �IP�	 �I��	 �IP�	 �I��	 �I0�	 �I@��I�
 �I�
 new_icc�
 J�
 icmPiv�
 ix.13990�rJsicmPdvp
 ix.14001�wJ�wicmPfvP
 ix.14012p|"J�|icmPLab0
 ix.140220�,J@�.text0"
�>.data�&
s.bssg�.xdatad/p.pdata�DQ.rdata@��4N.file���gcgats.c6J@
 BJ`
 LJp
 [J�
 quote_cs�
 eJ�
 err�
 pJ
 }J�
 �J�
 �J@
 �J�
 �J
 �J 
 �J�
 �J�
 get_oi`
 �J�
 �J�
 K�
 K�"
 &KP#
 add_set�%
 1K@(
 ;K*
 HK-
 RK�-
 aK.
 kK�/
 vK��&�K�<
 �K �&�K�J
 �KL
 .text@
;�.data �&�.bss�.xdata�G�.pdata,7�`.rdata@��.file8��gpars.c�K@L
 �KPL
 �K`L
 �K�L
 	L�L
 L�L
 .L�L
 AL�L
 VLM
 iL M
 }LpM
 �L�M
 add_del�M
 �L�N
 �L O
 �L�P
 �LPS
 �L�S
 �L�S
 �LT
 M T
 M0T
 *MPT
 <M`T
 QMpT
 fM�T
 yM�T
 �M�T
 �M�T
 �M0U
 �M0V
 �M0W
 �MX
 
NpX
 #N�Y
 7N�Y
 ONpZ
 eN�Z
 oN�Z
 �N�[
 �N�[
 �N@\
 .text@L
.data��&.bss�.xdata�IL.pdata�8�~.rdata�.filed��gconv.c�N`\
 �N�\
 �N`]
 �N��N��N�O�]
 O�]
 %Op^
 3O _
 sleep0`
 CO@`
 NO�ZO�`
 lOPa
 zO�a
 �O b
 �O`c
 �O�c
 �O e
 �O��O�e
 �Of
 �Of
 P�g
 P�g
 #P�h
 1P�j
 x��&.text`\
�.data��&#.bss�.rdata0�.xdata�J.pdata�:E.file>��gnumsup.cCP k
 UP`k
 g_loge�k
 g_logv�k
 va_loge l
 fPPl
 sP��&�P�n
 �P@o
 �P�o
 �P�o
 �P�o
 a1logv�o
 �P(�a1logd@p
 �P,�a1logw q
 a1loge�r
 �P@u
 �Pv
 �PPv
 a1logue�y
 �P�y
 	Q�{
 verbose�}
 warningP~
 error
 recalloc�
 dvector��
 dvectorz�
 Q`�
 dmatrix��
 dmatrixz��
 "Q�
 /Q �
 dhmatrix��
 =Q�
 GQ��
 UQ��
 bQP�
 uQ�
 �Q��
 fvectorЉ
 fvectorz �
 �Q��
 fmatrix��
 fmatrixzЋ
 �Q�
 ivector@�
 ivectorz��
 �Q�
 imatrix�
 imatrixz0�
 �Q`�
 svector��
 svectorz�
 �Q@�
 smatrix`�
 smatrixz��
 �Q��
 �Q�
 �QP�
 R��
 RP�
 $R�
 6RP�
 GRp�
 ^R��
 iR�
 {R0�
 �Rp�
 �R��
 vect_set�
 vect_neg@�
 vect_addp�
 �R��
 vect_subН
 �R�
 �R0�
 vect_mul`�
 �R��
 vect_div��
 �R�
 �R �
 �R��
 �R��
 S �
 S`�
 S��
 +S��
 6S�
 BS �
 MSp�
 vect_dot��
 vect_magС
 [S�
 fS@�
 vect_sum��
 vect_avg��
 sS�
 �S��
 vect_max��
 �S�
 vect_min@�
 vect_absp�
 �S��
 �S�
 vect_cmp��
 �SЦ
 �S �
 �S��
 �S@�
 �S@�
 �S��
 �S�
 T �
 
T�
 T�
 +T�
 8T�
 ETЮ
 RT��
 cT@�
 pT�
 }T��
 �T`�
 �Tг
 �T��
 �Tе
 �T�
 �T�
 �T�
 �T�
 �Tк
 U��
 U��
 ,U`�
 :U0�
 JUP�
 YU�
 gU��
 uU��
 �U��
 �U@�
 �U�
 �U��
 �U��
 ctime_32��
 ctime_64��
 �U�
 �U �
 �U@�
 �UP�
 Vp�
 V��
 #V��
 2V��
 AV��
 OV��
 ]V��
 lV �
 {VP�
 �V��
 �V��
 �V��
 �V��
 �V�
 �V0�
 �VP�
 �Vp�
 �V��
 W0�
 W��
 )W��
 7W0�
 EW��
 TW��
 cW0�
 qW`�
 W��
 �W��
 �W�
 �W`�
 �W��
 �W �
 �W��
 �W��
 �W0��W��
 X8�X@�debPiv`�
 ix.27733H�X`�debPdvf0�
 ix.27745`�(X��debPdv �
 debPfv0�
 ix.27760`�2X��<X�
 GX��.text k
�g�.data�&.bss �@m.xdata�K�.pdata�;�:.rdata`��.fileQ��gpowell.clinmin��
 powell�
 conjgrad`�
 linmind@�
 .text��
� Z.data �&.bss`�.xdata�S.pdata�D0.rdata ��.fileo��grand.cSX��
 g_rand`�]X��
 ranno��
 rand32��
 ranno_th��
 gX�
 d_randP�
 qX`�
 d2_rand��
 |X��
 i_rand�
 �X�
 �X��
 �X��
 .text��
<.data �&�.bss`��,.xdata�T�.pdata�D�*.rdata��(.file���gzbrent.czbrac�
 zbrent�
 .text�
�.data��&.bss .xdataPUt.pdataxE.rdata�X.file���gsobol.c�X��
 �X@�
 �X��
 �X��
 vinit��X`�.text��
.data��&.bss .xdata�U$.pdata�E0.rdata`��.file���gsvd.cpythag� svdecomp� �X� �X �X� svdsolve� �X� 
Y` .text��,.data��&.bss .xdata�U�.pdata�E`.rdata�P.file���gludecomp.cY� !Y` solve_se� ,Y0 6Y`  HY�! RY0# cY`# vY0% �Y�& �Y ( .text��1.data��&.bss .xdata�V�.pdata F�!.rdataP�8.file���gplot.cytickP) xtick�) �Y�* pd  �Y�. do_plot`0 �Y�2 �Yp5 do_plot6�8 �Y@; �Y@> �Y�@ �Y�A �YpB Z0C Z�C Z�E *ZPG 7ZI init_g�L CZ�M MZO get_xy_g�P set_xy_g�Q WZ0R cZ@R clear_gS nicenumT mZ@U DoPlot�V yZ�i .textP)�A.data��&�.bss �.xdata|W�.pdata�FhZ.rdata��H.file	��gui.c�Zk .textk.data��&.bss�!.xdataDY.pdataH.file	��gtif_error.c�Zk �Z k �Z0k �Z�k .textk�.data��&.bss�!.xdataHY .pdataH0.file$	��gtif_warning.c�Z�k �Zl [l [pl .text�k�.data��&.bss�!.xdatahY .pdataHH0.fileJ	��gtif_win32.c[�l /[�l C[�l U[`m i[�m x[n �[0n �[T��[�n �[@o �[�o �[pp �[�p TIFFOpenPq �[\��[`r �[�r \e�\pt \�t )\�t 5\�t A\�t .text�l�3.data��&.bss�!.xdata�Y�.pdataxH�<.rdata��.filez	��gtif_dir.cM\�t b\P�o\@y ~\ � �\�� �\� �\ � �\P� �\`� �\p� �\�� ]�� ]�+]P� :]P� H] � U]P� c]�� p]� �]� �]�!�]� �]�� �]� �] � �]p� ^0�#^� 4^�� H^�� ]^Р o^� �^p�.text�t�.�.data��&.bss�!.rdatap�$.xdataPZ .pdatahIPT.file�	��gtif_close.c�^�� �^P� .text���.data��&.bss�!.rdata��.xdatap[ .pdata�J.file�	��gtif_open.c[�� /[�� �^�� �^� �^��^Э �^� �^� �^� _� _ � &_0� 2_@� >_P� J_`� Y_p� n_�� _�� �_�� �_�� �_�� �_Ю �_� �_� �_� `� ` � !`0� 4`@� .text���	&.data��&.bss�!.xdata�[�.pdata�JPT.rdata��g6.file�	��gtif_swab.cI`P� W``� d`�� r`�� �`� �` � �``� �`�� �`� �` � �``� a�� "a 4a Da� .textP�Y.data��&.bss�!.xdata\4.pdata L�'.rdata .file
��gtif_dirinfo.cTa�� _a� oaya��a��a@�a�� �a��&�a�� �a��&�a�� �ap� �a�b�� b@b�� )bP� :b�Gb�Tb�� eb�� vb� �b�� �b�� �b�� �bи �b� �b� �b� c� c@� 0c�=c�Jc�&Uc��&.text���
9.data��&�'�.bss�!.xdataL\�.pdata�L�?.rdata �.fileC
��gtif_dirread.c`c@� sc`'�cP^ �c�'�cp� �c� �c`� d�� 6d�� [d�� pd�� �d0� �d�� �dP� �d� 
e��  e�� >e � Xe�� rep� �e�� �e�� �e�� �e�'�e � f�� 'f`� Af�� Tf�'af�
 sf'�f '�f@'�fP'�f�  �f�'�f(�f& �f0& .text@��h�.data@�&.bss�!.rdata J.xdata]�.pdata�MPTTP^�	c�^sO.filem
��gtif_read.c�f@& g@( !g * /g�* >gp+ Og�-\g�, lg�-yg`- �g�-�g�. �g�-�g�-�g2 �g�-�g�3 �g04 �g�-
h�6 h`-,h@8 =h@-Jh�; \h�; oh@< �h�< �h= .text@&�.data@�&.bss�!.rdata0(�.xdata�^.pdataO�6.file�
��gtif_compress.c�hP= �h`= �hp= �h�= �h�= �h�= i�> i�!'i@? @i�@ Mi�@ _iA riA �i A �i�A �i�A �i�A �i�A �iPB �i�B .textP=�5.data@�&.bss�!.xdata�_�.pdata�O�9.rdata.�.file�
��gtif_aux.cj0D j�D $j�D 6jPE GjpE ^j"oj@�&�j@L �jpL �j�L .text0D�.data@�&.bss".rdata�/�.xdataH``.pdata�P`.file�
��gtif_flush.c�j�L �j@M .text�L�.dataP�&.bss".xdata�`.pdata0Q.file�
��gtif_tile.c�j�N �j P �j0Q kPR k�1%k�S 5k�S Ek�1RkPU `k`U okpU |k�U �k�U .text�N-.dataP�&.bss".xdata�`T.pdataHQ�!.rdata`0p.file�
��gtif_strip.c�kV �k�2�kpV �k�V �k3�k W l0W l@W /l 3<l�X RlY cl�2pl�Z �l�Z �l�Z �l[ �l[ �l@3�l�[ .textV�1.dataP�&.bss".rdata�1�.xdataa\.pdata�Q�*.file��gtif_codec.c�l�[ �l�[ mP\ .text�[�.data`�&�$.bss".xdataha.pdatatR$	.rdata`3�.file+��gtif_write.cm�\ 0mP7=m�^ Xm�_ hm�` wm�b h�7�mPc �mp7�m�d �m�7�m�e �m�7�mi �m�i n07n�l .n7;n0p Jn�p .text�\Xa.data@�&.bss".rdata@4�.xdata�a�.pdata�R�'.filea��gtif_dirwrite.c]n�p wnp>�n`s �n�t �n`u �n�u �n�v $oPw Ko�w ko x �o�x �o�y �o`z �o { !p�>.p�| Np�} op`~ �p ?�pp� �pp� �p�?�p� q�?$q�� Aq�=Nq�=[q >hq�=uqP>�qP?�q�>�qШ �q� �qp� �q�� �q�?r�� r@.text�pEl.data@�&.bss".rdata8H.xdata0b�.pdata4S,K.filev��gtif_dumpmode.c!r� /r� <r0� Kr � Zr�@gr�� .text�	.data@�&.bss".xdata�c(.pdata`T<.rdata`@�.file���gtif_lzw.cxr~C�r�C�r�C�r�C�r�� �roC�r�� �rcC.text ��f.data@�&.bss".xdatad�.pdata�T�$.rdataA�.file���gtif_packbits.c�r�� �r�� sp� s�� )s�� 8sADEs�� .text��1.data@�&.bss".xdata�d\.pdata,UH.rdata�C�.file���gtif_thunder.cVs� �k�EisP� zs�E�s`E�s@E�m E�s�� .text��.data@�&.bss".rdata`DC.xdatae$.pdatatU$	.file���gtif_next.c�s�� �sTF�s0� �sIF�s�� .text�� .data@�&.bss".rdata�E�.xdata@e$.pdata�U$	.file
��gtif_fax3.c�s� t � t�� "t�� 4t�PEt� Qt�� _msbmask Q]t�� putspan�� gt�� vt�� �t�� �tp� �t�� �tP� �t�S�t� �t�S�t
 �t�Su�
 u�Su�
 'u
 6u�SCu
 Pu�
 ^u@!
 lu��&vu	Q�u#
 zeroruns�Qoneruns�R�u`'
 vcodes`Q�uP;
 �uDQ�u�>
 �u�S�u�?
 �u@�&�u@
 v��&
v�@
 v@A
 .text��a-.data@�&p.bss".xdatade�.pdata�UhZ.rdata�F�
*.file5��gtif_luv.c0v0B
 ;v�]Hv`]Uvp]bv ]ov�]|v�]�v�]�v]�v2]�v?]�vN]�v0`
 �v "uv_row�W�v@"�vPd
 w�e
 
w`g
 wi
 "wPi
 .wj
 8w`m
 Bwo
 Pw�p
 `w0r
 nw�s
 ~w�u
 �w�\.text�A
�5H.data��&`.bss "�.xdata,g.pdata$W(�.rdata TX.file_��gtif_predict.c�w�w
 �wPx
 �w`y
 horDiff8pz
 �w�|
 �w~
 horAcc32
 horAcc16�
 horAcc8�
 �w0�
 �wЃ
 xp�
 �r$cx��
 2x@�
 fpDiff�
 fpAccЊ
 Gx��
 Ux�
 bx0�
 px`�
 }x��
 �xc�xP�
 �x@�
 �x �&�x`�
 .text�w
K�.data �&0.bss�#.rdata�_�(.xdata4jp.pdataLY H.filei��gtif_fax3sm.c.text�
.data`�&.bss�#.rdata@c�.file~��gjerror.c�x�
 �x@�
 y`�
 yp�
  y��
 +y�
 .text�
�.data`�&.bss�#.xdata�k,.pdatalZH.rdata@%c.file���gjdapimin.c:yp�
 PyP�
 hy`�
 ~yp�
 �y�
 �y��
 �yЙ
 �y�
 .textp�
r.data`�&.bss�#.xdata�k@.pdata�Z`.rdata�8,.file���gjdatasrc.c�y�
 �y�
 z�
 z�8%zP�
 5z��
 Az��
 Sz@�
 bz�
 .text�
�.data`�&.bss�#.xdatalD.pdata[`.rdata�8.file���gjcapimin.coz��
 �z��
 �z��
 �zП
 �z0�
 �z0�
 �zС
 �z0�
 {@�
 .text��

.data`�&.bss�#.xdataTlH.pdatat[l.file���gjdmarker.cget_sof��
 !{��
 .{�
 <{�
 H{�
 get_dht@�
 \{�
 i{`�
 w{0�
 �{��
 �{`�
 �{�
 �{P�
 �{ �
 �{�
 .text��
�$
.data`�&.bss�#.xdata�l�.pdata�[�-.rdata�8�..file���gjcomapi.c|`�
 |��
 |��
 2|�
 .text`�
�.data`�&.bss�#.xdatapm .pdata�\0.file
��gjmemmgr.cH| �
 U|�
 b|��
 n|�9~|�9�|p�
 �|�
 �|��
 �|��
 �|@�
 �|��
 �|��
 }p�
 
}P�
 } �
 .}`�
 .text �
�.data`�&.bss�#.xdata�m�.pdata�\�*.rdata�90.file$
��gjdinput.c?}��
 Q}�
 h}`�
 y}��
 �}`�
 �}��
 .text��

7.data`�&.bss�#.xdata�n@.pdatal]H.file7
��gjutils.c�}�
 �} �
 �}@�
 �}��
 .text�
�.data`�&.bss�#.xdata�n.pdata�]0.rdata�9`.fileR
��gjcmarker.c�}��
 ~�
 ~@�
 ~P�
 +~��
 emit_dqt��
 emit_dht��
 ?~��
 emit_sof��
 Q~P�
 c~0�
 u~��
 �~�
 �~��
 .text��
�.data`�&.bss�#.xdata�n�.pdata�]�*.file�
��gjmemnobs.c�~`�
 �~p�
 �~��
 �~��
 �~��
 �~��
 ��
 %��
 .text`�
q.data`�&.bss�#.xdata�o .pdata�^`.text��
.data`�&.bss�#.idata$7.idata$5�.idata$4�.idata$6N.text��
.data`�&.bss�#.idata$7�.idata$5�.idata$4�.idata$6D.text��
.data`�&.bss�#.idata$7�.idata$5�.idata$4�.idata$62.text��
.data`�&.bss�#.idata$7�.idata$5�.idata$4�.idata$6.text�
.data`�&.bss�#.idata$7.idata$5�.idata$4�.idata$6f.text�
.data`�&.bss�#.idata$7.idata$5.idata$4�.idata$6p.text�
.data`�&.bss�#.idata$7.idata$5�.idata$4�.idata$6Z.text�
.data`�&.bss�#.idata$7�.idata$5�.idata$4�.idata$6".text �
.data`�&.bss�#.idata$7�.idata$5�.idata$4x.idata$6.text(�
.data`�&.bss�#.idata$7.idata$5.idata$4�.idata$6�.file�
��gfakehnamexfthunk�.text0�
.data`�&.bss�#.idata$2.idata$4x.idata$5�.file�
��gfake.text0�
.data`�&.bss�#.idata$4�.idata$5.idata$7
.file�
��g_newmode.c.text0�
.data`�&.bss�#�*�_,T�
R.file�
��gwildcard.c.text0�
.data`�&.bss�#V+��,T�
R.file��gtlssup.c30�
 B`�
 __xd_aX__xd_z`Q�
 .text0�
�.data`�&.bss$.xdata�o.pdata�^$	.CRT$XLDH.CRT$XLC@.tls	(.CRT$XLZP.CRT$XLA8.tls$ZZZD	.tls$AAA@	.CRT$XDAX.CRT$XDZ` ,94��,s170
0T,
@`�>k�.file1��gcharmax.c]�
 .text�

.datap�&.bss$.xdata�o.pdata_.CRT$XIC(Y3�
|�7`
0Tl
>k�0.fileJ��gmingw_helpers.ck�
 {�
 .text�
.data��&.bss $.xdata�o.pdata_!8�		z7�
0T�

k�H.fileX��gxtxtmode.c.text�
.data��&.bss0$�<��,T�
R.fileu��gatonexit.c��
 atexit��
 .text�
�.data��&.bss@$.xdata�o.pdata4_�=�!�_,�c7�
0T	
�`(k(p.file���gnatstart.c.text�
.data��&.bss@$�D		uT�	
)`A.file���gcrt_handler.c��
 ���
 �H$�`$��%���
 .text�
�.data��&.bss@$�.xdata�o,.pdataL_$	.rdata@?�I�E�	Y,97�
0T!
�`YMk�.file���gcinitexe.c.textp�
.data��&.bss�&.CRT$XCZ.CRT$XCA.CRT$XIZ0.CRT$XIAY_��[T�

R.file���gmerr.c�p�
 ��&&���
 _matherr��
 .textp�
,.data��&.bss�&.xdatap.pdatap_$	.rdataP?@aI7�,@�7 
0T.
k��.file���gdllargv.c_setargv��
 .text��
.data��&.bss�&.xdata$p.pdata�_bh��
97P
0T/
ekH0.file��gpseudo-reloc.c=���
 L� �
 [�0�
 u��&.text��
�.data��&.bss�&.rdata�@�.xdata(p0.pdata�_$	jq
B�
�,�
7�
0F�0T�
`�OkxX.file1��gCRT_fp10.c_fpreset� fpreset� .text�.data��&.bss'.xdataXp.pdata�_}t�~,7�
0T�
gk�0.fileQ��ggccmain.c��� p.60430��&��� __main0 ��'.text��	.data��&.bss'.xdata\p.pdata�_$	Tu��,�+7�
0T
�`�k�.fileu��ggs_support.c��P ˀ�&��&�  � '*�,=���&.textP�.data��&.bss 'x.xdatatp .pdata�_�zg(��,c-�7
0T�
i`Hk��.file���gtlsmcrt.c.text .data��&.bss�,X��u,TN
Q.file���gtlsthrd.cR�  r��,���,��� ���,�� ށ� .text '#.data��&.bss�,P.xdata�p0.pdata`0��?��,1
7@
0T�
�k8 .file���gpesect.c�P �� �� )�p <�� L�  .textP.data��&.bss-.xdata�p0.pdata<`H�}GZ,;7p
0TG
�`YUkX .file���gi�.textp.data��&.bss-��t,T�
[.file���gfake����TG
�.textp2.data��&.bss-7�
0kx	H.file��glibgcc2.c.text�.data��&.bss-y����T�
.text�.data��&.bss-.idata$7�.idata$5�.idata$4p.idata$6P.text�.data��&.bss-.idata$7�.idata$5�.idata$4h.idata$6F.file��gfakehnamehfthunk�.text�.data��&.bss-.idata$2(.idata$4h.idata$5�.file��gfake.text�.data��&.bss-.idata$4x.idata$5�.idata$7.file*��gmingw_matherr.c.text�.data��&.bss-<��6,T�
X.fileI��gpow.c}�� powP .text��.data��&.bss -.xdata�p.pdata�`.rdataPAp��
�b�,"BD
7�
0F�pT2
+k�	x.filee��gsqrt.csqrt` .text`.data��&.bss -.rdata�A(.xdataq.pdata�`��S@ ,fO7
0T]
Fk8
H.file���gsin.csin� .text��.data��&.bss -.rdata�A.xdataq.pdata�`�`3,vS70
0T� 
k�
@.file���gcos.ccosp .textp�.data��&.bss -.rdataB.xdata$q.pdata�`��3,�T7`
0T�!
k�
@.file���glog.clog` .text`=.data��&.bss -.rdataB .xdata,q.pdata�`0���3,�U�7�
0T�"
3kH.file���gexp.cexp� c0��&c1�&.text�K.data��& .bss -.rdata0B .xdata8q.pdata�`���0�l,:X7�
0T$
akHH.file���gmingw_getsp.S��� longjmp� H�|e Ts%
F.text�.data�&.bss -7�
0.file��gsnprintf.csnprintf .text.data�&.bss -.xdataDq.pdata�`��zy �,;[�7 
0T�%
k�8.file%��gwassert.c_wassert  _assert .text �.data�&.bss -.rdataPB].xdataLq$.pdata�`>��7=!�,3\�7P
0F �T�&
�`�k��.file?��gldexp.cldexp� .text��.data�&.bss -.xdatapq.pdata�`;��#�,c17�
0T�(
9k�@.file[��gpowi.c__powi� .text�u.data�&.bss -.xdataxq.pdataa.rdata�Bh����#�,<e�7�
0T�)
uk�p.fileo��glog2l.Sonelimitlog2l E�v�$T/+
[.textl.data�&.bss -7�
0.file���gexp2l.Sexp2lp ��v�$T�+
^.textph.data�&.bss -7
0.file���gsinl_internal.S��� 1�~�$T�+
X.text�>.data�&.bss -7@
0.file���gcosl_internal.S��  ��~�$T@,
T.text 0.data�&.bss -7p
0.file���ginternal_logl.SonePlimitX��` -�~%T�,
X.textPQ.data�&.bss -7�
0.text�.data�&.bss -.idata$7D.idata$58.idata$4�.idata$6 .text�.data�&.bss -.idata$7,.idata$5.idata$4�.idata$6�.text�.data�&.bss -.idata$7.idata$5�.idata$4�.idata$6�.text�.data�&.bss -.idata$7.idata$5�.idata$4�.idata$6Z.text�.data�&.bss -.idata$7.idata$5�.idata$4�.idata$6�.text�.data�&.bss -.idata$7$.idata$5�.idata$4�.idata$6�.text�.data�&.bss -.idata$7�.idata$5�	.idata$4`.idata$6�.text�.data�&.bss -.idata$7�.idata$5�	.idata$4X.idata$6�.text�.data�&.bss -.idata$7@.idata$50
.idata$4�.idata$6v.text�.data�&.bss -.idata$74.idata$5.idata$4�.idata$6�.text�.data�&.bss -.idata$70.idata$5.idata$4�.idata$6�.text�.data�&.bss -.idata$7P.idata$5P.idata$4.idata$6@.text�.data�&.bss -.idata$7�.idata$5	.idata$4�.idata$6$.text.data�&.bss -.idata$7.idata$5�.idata$4�.idata$6�.text.data�&.bss -.idata$7�.idata$5x	.idata$40.idata$6�.text.data�&.bss -.idata$7�.idata$5@	.idata$4�.idata$6b.text.data�&.bss -.idata$7�.idata$58	.idata$4�.idata$6X.text .data�&.bss -.idata$7P.idata$5P
.idata$4.idata$6�.text(.data�&.bss -.idata$7.idata$5�	.idata$4�.idata$6.text0.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6�.text8.data�&.bss -.idata$7H.idata$5@
.idata$4�.idata$6�.text@.data�&.bss -.idata$7<.idata$5(
.idata$4�.idata$6l.textH.data�&.bss -.idata$78.idata$5 
.idata$4�.idata$6b.textP.data�&.bss -.idata$7.idata$5�	.idata$4x.idata$6�.textX.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6.text`.data�&.bss -.idata$7L.idata$5H
.idata$4.idata$6�.texth.data�&.bss -.idata$7,.idata$5
.idata$4�.idata$6D.textp.data�&.bss -.idata$74.idata$5
.idata$4�.idata$6X.textx.data�&.bss -.idata$7�.idata$5	.idata$4�.idata$66.text�.data�&.bss -.idata$7.idata$5�	.idata$4�.idata$6�.text�.data�&.bss -.idata$7�.idata$50	.idata$4�.idata$6P.text�.data�&.bss -.idata$7�.idata$5h	.idata$4 .idata$6�.text�.data�&.bss -.idata$7�.idata$5p	.idata$4(.idata$6�.text�.data�&.bss -.idata$7�.idata$5P	.idata$4.idata$6r.text�.data�&.bss -.idata$7�.idata$5	.idata$4�.idata$6,.text�.data�&.bss -.idata$7�.idata$5X	.idata$4.idata$6z.text�.data�&.bss -.idata$7(.idata$5
.idata$4�.idata$6:.text�.data�&.bss -.idata$7�.idata$5(	.idata$4�.idata$6H.text�.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6.text�.data�&.bss -.idata$7 .idata$5�	.idata$4�.idata$6&.text�.data�&.bss -.idata$7l.idata$5�.idata$4@.idata$6�.text�.data�&.bss -.idata$7p.idata$5�.idata$4H.idata$6�.text�.data�&.bss -.idata$7�.idata$5�.idata$4x.idata$6�.text�.data�&.bss -.idata$7�.idata$5�	.idata$48.idata$6�.text�.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6�.text.data�&.bss -.idata$7t.idata$5�.idata$4P.idata$6�.text.data�&.bss -.idata$7X.idata$5`.idata$4.idata$6V.text.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6�.text.data�&.bss -.idata$7�.idata$5�	.idata$4H.idata$6�.text .data�&.bss -.idata$7�.idata$5	.idata$4�.idata$6.text(.data�&.bss -.idata$70.idata$5
.idata$4�.idata$6N.text0.data�&.bss -.idata$7D.idata$58
.idata$4�.idata$6�.text8.data�&.bss -.idata$7.idata$5�	.idata$4h.idata$6�.text@.data�&.bss -.idata$7h.idata$5�.idata$48.idata$6�.textH.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6�.textP.data�&.bss -.idata$7�.idata$5�.idata$4h.idata$6�.textX.data�&.bss -.idata$7�.idata$5�	.idata$4@.idata$6�.text`.data�&.bss -.idata$7.idata$5�	.idata$4p.idata$6�.texth.data�&.bss -.idata$7T.idata$5X
.idata$4.idata$6�.textp.data�&.bss -.idata$7H.idata$5@.idata$4�.idata$6*.textx.data�&.bss -.idata$7�.idata$5 	.idata$4�.idata$6@.text�.data�&.bss -.idata$7L.idata$5H.idata$4.idata$66.text�.data�&.bss -.idata$7T.idata$5X.idata$4.idata$6L.text�.data�&.bss -.idata$7x.idata$5�.idata$4X.idata$6�.text�.data�&.bss -.idata$7`.idata$5p.idata$4(.idata$6n.text�.data�&.bss -.idata$78.idata$5 .idata$4�.idata$6.text�.data�&.bss -.idata$7�.idata$5H	.idata$4.idata$6j.text�.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6.text�.data�&.bss -.idata$7.idata$5�	.idata$4�.idata$6.text�.data�&.bss -.idata$7.idata$5�	.idata$4�.idata$6.text�.data�&.bss -.idata$7 .idata$5�.idata$4�.idata$6�.text�.data�&.bss -.idata$7d.idata$5x.idata$40.idata$6x.text�.data�&.bss -.idata$7\.idata$5h.idata$4 .idata$6f.text�.data�&.bss -.idata$7.idata$5�.idata$4�.idata$6r.text�.data�&.bss -.idata$7|.idata$5�.idata$4`.idata$6�.text�.data�&.bss -.idata$7$.idata$5�	.idata$4�.idata$60.text�.data�&.bss -.idata$7(.idata$5.idata$4�.idata$6�.text.data�&.bss -.idata$7�.idata$5�.idata$4p.idata$6�.text.data�&.bss -.idata$7<.idata$5(.idata$4�.idata$6.text.data�&.bss -.idata$7�.idata$5�	.idata$4P.idata$6�.text.data�&.bss -.idata$7.idata$5�	.idata$4�.idata$6.text.data�&.bss -.idata$7@.idata$50.idata$4�.idata$6.text .data�&.bss -.idata$7�.idata$5`	.idata$4.idata$6�.file��gfakehname�fthunk�.text0.data�&.bss -.idata$2<.idata$4�.idata$5�.file���gfake.text0.data�&.bss -.idata$4.idata$5`
.idata$7X.text0.data�&.bss -.idata$7x.idata$5�
.idata$4H.idata$6.text8.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6�.text@.data�&.bss -.idata$7�.idata$5�
.idata$4h.idata$6B.textH.data�&.bss -.idata$7�.idata$5�
.idata$4x.idata$6`.textP.data�&.bss -.idata$7�.idata$5�
.idata$4p.idata$6R.textX.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6�.text`.data�&.bss -.idata$7h.idata$5p
.idata$4(.idata$6�.texth.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6�.textp.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6�.textx.data�&.bss -.idata$7�.idata$5�
.idata$4`.idata$64.text�.data�&.bss -.idata$7t.idata$5�
.idata$4@.idata$6�.text�.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6�.text�.data�&.bss -.idata$7l.idata$5x
.idata$40.idata$6�.text�.data�&.bss -.idata$7p.idata$5�
.idata$48.idata$6�.text�.data�&.bss -.idata$7d.idata$5h
.idata$4 .idata$6�.text�.data�&.bss -.idata$7�.idata$5�
.idata$4X.idata$6$.text�.data�&.bss -.idata$7|.idata$5�
.idata$4P.idata$6.text�.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6z.text�.data�&.bss -.idata$7�.idata$5�
.idata$4�.idata$6l.file���gfakehname fthunkh
.text�.data�&.bss -.idata$2P.idata$4 .idata$5h
.file��gfake.text�.data�&.bss -.idata$4�.idata$5.idata$7�.text�.data�&.bss -.idata$7�.idata$5P.idata$4.idata$6�.text�.data�&.bss -.idata$7�.idata$5H.idata$4.idata$6d.text�.data�&.bss -.idata$7`.idata$5�.idata$4P.idata$6�.text�.data�&.bss -.idata$7d.idata$5�.idata$4X.idata$6�.text�.data�&.bss -.idata$7h.idata$5�.idata$4`.idata$6�.text�.data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6n
.text .data�&.bss -.idata$7D.idata$5`.idata$4.idata$6,.text .data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6V
.text .data�&.bss -.idata$7$.idata$5 .idata$4�.idata$6�.text .data�&.bss -.idata$7@.idata$5X.idata$4.idata$6.text  .data�&.bss -.idata$7�.idata$5�.idata$4H.idata$6.text( .data�&.bss -.idata$7 .idata$5.idata$4�.idata$6�.text0 .data�&.bss -.idata$7�.idata$5`.idata$4.idata$6�.text8 .data�&.bss -.idata$7l.idata$5�.idata$4h.idata$6�.text@ .data�&.bss -.idata$7�.idata$5.idata$4�.idata$6�
.textH .data�&.bss -.idata$7|.idata$5�.idata$4�.idata$6:
.textP .data�&.bss -.idata$7�.idata$58.idata$4�.idata$6F.textX .data�&.bss -.idata$78.idata$5H.idata$4.idata$6�.text` .data�&.bss -.idata$7(.idata$5(.idata$4�.idata$6�.texth .data�&.bss -.idata$7X.idata$5�.idata$4@.idata$6�.textp .data�&.bss -.idata$7p.idata$5�.idata$4p.idata$6
.textx .data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6�
.text� .data�&.bss -.idata$7�.idata$5X.idata$4.idata$6�.text� .data�&.bss -.idata$7<.idata$5P.idata$4.idata$6�.text� .data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6�
.text� .data�&.bss -.idata$7\.idata$5�.idata$4H.idata$6�.text� .data�&.bss -.idata$7x.idata$5�.idata$4�.idata$6*
.text� .data�&.bss -.idata$7�.idata$5.idata$4�.idata$6�
.text� .data�&.bss -.idata$7�.idata$5.idata$4�.idata$6�
.text� .data�&.bss -.idata$7T.idata$5�.idata$48.idata$6�.text� .data�&.bss -.idata$7�.idata$5@.idata$4�.idata$6R.text� .data�&.bss -.idata$7�.idata$5�.idata$4X.idata$6:.text� .data�&.bss -.idata$70.idata$58.idata$4�.idata$6�.text� .data�&.bss -.idata$7�.idata$5�.idata$4�.idata$6~
.text� .data�&.bss -.idata$7�.idata$5x.idata$40.idata$6�.text� .data�&.bss -.idata$7,.idata$50.idata$4�.idata$6�.text� .data�&.bss -.idata$74.idata$5@.idata$4�.idata$6�.text� .data�&.bss -.idata$7�.idata$5�.idata$4P.idata$6$.text!.data�&.bss -.idata$7�.idata$5.idata$4�.idata$6�
.text!.data�&.bss -.idata$7�.idata$5�.idata$4@.idata$6�.text!.data�&.bss -.idata$7�.idata$5�.idata$48.idata$6�.text!.data�&.bss -.idata$7t.idata$5�.idata$4x.idata$6
.text !.data�&.bss -.idata$7L.idata$5p.idata$4(.idata$6X.text(!.data�&.bss -.idata$7P.idata$5x.idata$40.idata$6n.text0!.data�&.bss -.idata$7�.idata$5 .idata$4�.idata$6.text8!.data�&.bss -.idata$7�.idata$5(.idata$4�.idata$6.text@!.data�&.bss -.idata$7�.idata$50.idata$4�.idata$62.textH!.data�&.bss -.idata$7�.idata$5p.idata$4(.idata$6�.textP!.data�&.bss -.idata$7H.idata$5h.idata$4 .idata$6D.textX!.data�&.bss -.idata$7�.idata$5h.idata$4 .idata$6�.file'��gfakehname�fthunk.text`!.data�&.bss -.idata$2.idata$4�.idata$5.file5��gfake.text`!.data�&.bss -.idata$4`.idata$5�.idata$7�
.file=��gcrtend.c.text`!.data�&.bss -__xc_zǂ<putchar� ۂ�strcpy@ asctime ��f�� C�� $��7��H��^��
r����������@��΃``݃8��&����hprintfP vsprintfh ��&�p3�0J�`�&[��w�P�&��`���f���
��H���	adjw�&̈́�  �P �@��_lock� _mkdir�SetEventP memmove8 �	�@��+�� __xl_a87��C�	N�@;b��o�h |��
��!��$SaveDC�
���ͅ���_cexit� ��getenv� ceil  ������3��floor� B�p
X� c�q� ��������8���
͆X__xl_dHbsearch� _tls_endD	����@	g_deb0� �!�qsort� 1�B�8R�(_�j�p	v�@	���memcpy� ���	psmoothP�� -���&‡@
puts( Ї@$_fstat64p�x��:malloc� � !*�0_CRT_MT��&4�@C�X!O�� `� 
m���������	��8Έ�	܈ C��8!��
&���>�H
L��_�X	j��lpsmoothHw��
�� ��(fflushx ��!É $Beep( ҉X���&����((�Hpweights`5��B�O��
ReadFile@ f��x3dom_js�{����abort ��� ���f͊X݊ __dll__�������"� N4� I�-f���&z�������`�&���	���̋(ߋ@������0!�0���-���&strrchr` E�H	Q��k�`	calloc� w�(
��	����
���	�����H!̌$ތatof0 ��	�� CLineTo��
fprintf �� /�8H��	strcat( V��h�$�����&���
��Sleep���Í�э>��&_ctime64�fseek� �P���
�@c!�x	.�P`<�XI�_stat64�\��
gam_hues��&v����������-__xi_z0���Ύ� ێ(	�<����&�'�!;��rand� I�`d� �
atan2� p�${�p�&signal� ���
��P-�� ��ʏ� ڏ@-�@#��p�X
cr_charx�&strncmp0 "��5�XL��a�P`p�
strncpy8 markers�
}��	���log10 realloc� �����fsweights`���Ȑ�ߐicmBlackgssmooth@����x-�h
>��&sscanfh I�0
V��
e��p�����
���	primes��&��(-�� icmD50��&_kbhit���`fread� ֑������� �@���strdup� 9��K��X� d���&s�� ��`�&���	��H ��	ǒ�
fopen� ܒH_getch�memset` ����P
ftell� ��
#��3�p A�8P��fclose� rings`d��
v�����Kexe_path��&��
��(�
����p__xl_zP__end__	ܓH���!isprintX�xstrcmpH #��2�``@�`J�@!__xi_a[�� o�� ~�P�� __xc_a��fgetcx sprintf� ����ϔX�0�&�������&�� _fmode0$��&EndPaint�7�@:asinH K�h]�@i�P!{�� ��8	������!��@3ɕ��
���fputc __xl_c@��f_unlink��H	)��	5�H-A��<U�� m����P�����$��	Ŗ�#і��`perturb��&��`�&
�p�x *�PB�� _newmode�#fwrite L�P_time64k��	w�������8
����ŗ��&З  �����
g_log�&���0  �p-���&?� �&K�X-a��
n�� _stricmp�z�м&��0-������	���  ʘ(!_onexit�plot_th8-ݘh��exit� � ����-�	:���R��`�@n����_errno ��$atoiX _charmaxp�&�� 	fileno� _setjmp@ Ǚ
ՙ���	_exit �� ��P	���
�x&�` 3�x
strlen� H�X raw_rse`LU��h�� strchrp {� �� fputs� ��8 �� Cacos� ؚ0	� �&���	���(.�X=�� _unlock� I�ha��
x�Xfrexp  ���9icmD65�&��X��h	›� vfprintf  Λ0��raise MoveToEx��
free� ��&��.debug_aranges.debug_info.debug_abbrev.debug_line.debug_frame.debug_str.debug_loc.debug_ranges__mingw_invalidParameterHandlerpre_cpp_initstartinfopre_c_initmanagedapp__tmainCRTStartuphas_cctorWinMainCRTStartup.l_startwmainCRTStartup.CRT$XCAA.CRT$XIAA.debug_info.debug_abbrev.debug_loc.debug_aranges.debug_ranges.debug_line.debug_str.debug_frame__copyright__.text.startup.xdata.startup.pdata.startupin_b2a_clutin_b2a_outputin_b2a_inputmake_input_iccgamut_outputxyzoptfuncPCSp_bdistout_b2a_outputdo_abstractout_b2a_clutout_b2a_inputmake_output_iccadjust1_wb_funcinv_grey_funcdel_gammapdopartialmap1parttransgamutadjust_wb_funcadjust_sat_funcinvdomap1invgmfuncnew_gammapcomp_iweightoptfunc1avintersect2.constprop.2wdesq.constprop.3near_wcopynear_wblendnear_wblend3expand_weightstweak_weightsnear_xwblendnear_xwblend3interp_xweightsdoshrink.constprop.4near_smooth_npfree_nearsmthnear_smoothmake_gamut_surfaceadd_cuspsmake_last_vertexstart_line_setadd_col_quadadd_col_triangleadd_triangleadd_col_lineadd_marker_transadd_markermake_line_tri_quadmake_quadsmake_quads_vcmake_trianglesmake_triangles_vcmake_lines_ccmake_lines_vcmake_pointsmake_linesmake_gamut_surface_2check_formatget_formatadd_col_vertex_l.constprop.3add_vertexadd_col_vertexnew_vrml_vdistvrml_formaticxLuMonoFwd_curveicxLuMonoFwd_mapicxLuMonoBwd_lookupicxLuMonoCuspMapicxLuMatrixFwd_curveicxLuMatrixFwd_matrixicxLuMatrixBwd_matrixicxLuMatrixBwd_curveicxLuMatrixCuspMapicxLuLut_matrixicxLuLut_inputicxLuLut_lookupicxLuLut_clut_aux_locusicxLuLut_inv_matrixicxLuLut_inv_lookupicxLuLut_get_infoicxLuLut_get_matrixicxLuLut_inout_funcicxLuLut_clut_camclip_funcset_linfuncicxLuLut_invinput_funclutbwdgam_funcicxLutSpacesicxLuSpacesicxLu_get_native_rangesicxLu_get_rangesxiccCalCallbackulimitfuncicxKcurveNFicxKcurveicxLimitDicxLimitFindicxLuLut_clut_auxicxLuLut_cluticxLuLut_inv_inputicxLuMonoGamutsetup_clip_icxLuLutxicc_get_viewcondalloc_icxLuMatrixalloc_icxLuLutnew_icxLuMonobpfindfuncicxLuLut_bwd_outpcs_relpcsicxLu_comp_bk_pointicxLuEfv_wh_bk_pointsicxLuMono_freeicxLuMatrix_freecuspmap_delicxLuLut_freeicxMM_delicxLuMatrixGamuticxLuLutGamuticxLuLutCuspMaplutfwdcuspmap_funclutfwdgam_funccuspmap_getCuspcuspmap_expandmxtransformbfindfunccreateMatrixxfit_to_de2icxLuMonoFwd_absicxLuMonoFwd_lookupicxLuMatrixFwd_absicxLuMatrixFwd_lookupicxLuMatrixBwd_absicxLuMatrixBwd_lookupicxLuLut_in_absicxLuLut_outputicxLuLut_out_absicxLuLut_inv_out_abssetup_ink_icxLuLuticxLuLut_inv_in_absicxLuLut_clut_merge_funcmxmfunc1.isra.11mxoptfuncicxMM_force_exactset_outputset_inputicxLuLut_inv_output.part.15icxLuLut_inv_outputicxMM_lookupicxLuLut_fwd_relpcs_outpcsicxLuMatrix_bwd_outpcs_relpcsicxLuMatrix_fwd_relpcs_outpcsicxLuMono_bwd_outpcs_relpcsicxLuMono_fwd_relpcs_outpcsset_icxLuMatrix.isra.23mxprogfuncsigfunc.constprop.27new_MatrixModelicxClipVectoricxLuLut_inv_clut_auxicxLuLut_inv_clutxiccIsIntentJabxicc_set_viewcondxicc_enum_viewcondnew_icxLuMatrixxicc_get_luobjset_icxLuLut.isra.25xicc_set_luobjxicc_dump_viewcondxicc_dump_inkingxicc_enum_gmapintentxicc_dump_gmixiccReadCalTagicxGuessBlackChanicxGetLimitsicxDefaultLimitsicxMaxUnderlyingLimiticxdXYZ2LabicxdLabDEsqxfit_to_dde2icxdCIE94sqicxdLabDEicxdCIE94icx_powlikeicx_powlike_neededicxTransFuncicxInvTransFuncicxSTransFuncicxInvSTransFuncicxdpTransFuncicxdpSTransFuncicxdiTransFuncicxdiSTransFuncicxdpdiTransFuncicxdpdiSTransFuncicxPlaneInterpicxdpdiPlaneInterpicxCubeInterpicxdpdiCubeInterpicxCubeSxInterpicxMulBy3x3ParmicxdpdiiMulBy3x3ParmicxdpdiMulBy3x3Parmicx_set_viewicx_cam_freeicx_XYZ_to_camicx_cam_to_XYZicxcam_defaulticxcam_descriptionnew_icxcamxsp2cie_set_mwxsp2cie_get_fwa_infoxsp2cie_set_int_stepsgetval_raw_xspec3_poly3getval_raw_xspec_lingetval_lxspecxsp2cie_set_fwa_impFWA1_stimxsp2cie_update_fwa_custillumxsp2cie_set_fwagetval_raw_xspec_poly3getval_raw_xspecxsp2cie_fwa_applyxsp2cie_fwa_extractTLCI_camdispcct2_funcxsp2cie_delxsp2cie_fwa_sconvertxsp2cie_fwa_convertdaylight_old_ildaylight_ilxsp2cie_extractxsp2cie_applyplanckian_old_ilplanckian_il_spstandardIlluminantil_Spectrocamxsp2cie_get_cie_ilstandardIlluminant_namebuf.30764standardObserverob_CIE_1964_10cob_Shaw_Fairchild_2ob_CIE_1931_2ob_EBU_2012ob_CIE_1964_10ob_CIE_2012_2ob_CIE_2012_10ob_Stiles_Burch_2ob_Judd_Voss_2standardObserverDescriptionmeas_type2strmeas_cond2strwrite_nxspect_1write_nxspect_2write_nxspectread_nxspect_1read_nxspect_2read_nxspectwrite_xspectwrite_xspect_1write_xspect_2read_xspectread_xspect_1read_xspect_2write_C_xspectwrite_cmfgetval_xspecxsp2cie_photo2radxsp2cie_sconvertxsp2cie_convertvalue_xspectvalue_xspect_linvalue_xspect_polyxspect_denormxspect_scalexspect2xspect_wloffxspect2xspectxspect_dumpxspect_dump_logxspect_plotNp_wxspect_plotNpxspect_plotNxspect_plot_wxspect_plotxsp_setUVnew_xsp2cieicx_sp2XYZicx_ill_sp2XYZicx_spectrum_locus_rangeicx_spectrum_locusicx_XYZ2ill_ct2illoc_Daylight_CIE_1964_10illoc_Plankian_CIE_1964_10illoc_ODaylight_CIE_1964_10illoc_OPlankian_CIE_1964_10illoc_Daylight_CIE_1931_2illoc_Plankian_CIE_1931_2illoc_ODaylight_CIE_1931_2illoc_OPlankian_CIE_1931_2icx_ill_ct2XYZicx_outside_spec_locusxsp_densityxsp_density_descicx_XYZ2Tdensicx_XYZ2densicx_XYZ2sRGBicx_sRGB2XYZicx_XYZ2RGB_dsicx_wl2RGB_dschrom_locus_poligonillo_P_CIE_2012_10_xyillo_P_CIE_2012_2_xyillo_P_CIE_1964_10_xyillo_P_CIE_1931_2_xyillo_P_CIE_2012_10_uvillo_P_CIE_1931_2_uvillo_P_CIE_2012_2_uvillo_P_CIE_1964_10_uvlock.31688illo_D_CIE_2012_10_xyillo_D_CIE_2012_10_uvillo_D_CIE_1931_2_xyillo_D_CIE_2012_2_xyillo_D_CIE_1964_10_xyillo_D_CIE_1964_10_uvillo_D_CIE_1931_2_uvillo_D_CIE_2012_2_uvsplo_CIE_1931_2_xysplo_CIE_1964_10_xysplo_CIE_2012_10_uvsplo_CIE_1931_2_uvsplo_CIE_2012_2_xysplo_CIE_2012_10_xysplo_CIE_1964_10_uvsplo_CIE_2012_2_uvaprox_CCTaprox_plankianicx_XYZ2ill_cticx_CIE1995_CRICIE1995_TCSicx_EBU2012_TLCITLCI_2012_TCSicx_ARPANSA_UV_expxcal_rsplsetxcal_interpxcal_inv_interpxcal_write_cgatsxcal_writexcal_read_cgatsxcal_readxcal_read_iccxcal_interp_chxcal_inv_interp_ch.part.1xcal_inv_interp_chicxColorantLu_to_XYZicx_ink_tableicxColorantLu_to_rLabicxColorantLu_delicx_noofinksicx_inkmask2charicx_char2inkmaskicx_colcomb_tableicx_ink2primary_inkicx_ink2indexicx_index2inkicx_ink2stringicx_ink2charicx_ink2psstringicx_enum_coloranticx_enum_colorant_combicx_colorant_comb_match_iccicx_icc_to_colorant_combicx_icc_cv_to_colorant_combicx_colorant_comb_to_iccnew_icxColorantLujpeg_errordim_to_clutreslut_resolutionsread_embedded_iccicxSTransFuncY2Lsymoptfuncsetup_xfitsetup_pivdxfitfuncxfit_invoutcurvexfit_invoutcurvesxfit_shpcurvexfit_invinpscurvexfit_inpscurvexfit_inpscurvesxfit_outcurvexfit_outcurvesconv_rspl_outclip_rspl_outxfit_abs_to_relskm_rspl_out.text.unlikely.xdata.unlikely.pdata.unlikelycam_to_XYZXYZ_to_camnew_cam02new_cam97s3marker_is_iccwrite_icc_profilesetup_read_icc_profileread_icc_profilemcv_force_0mcv_force_1mcv_force_scalemcv_shweight_pmcv_opt_funcmcv_dshweight_pmcv_dopt_funcmcv_dinterp_pmcv_interp_pmcv_interpmcv_inv_interpmcv_get_paramsnew_mcv_noosnew_mcv_pdev_categoryinst_snameinst_nameinst_enuminst_usb_matchinst_illuminantxcalstd2strstr2xcalstdgetisrastsetnofiltgetrawvertgetraw0vertradial_point_triangvect_intersectne_point_on_triplane_equationdel_gquaddel_triangdel_gamutvector_isect_recgetssvertnew_gvertsmreplaceCSWTCH.92CSWTCH.93CSWTCH.94sort_verticies.isra.4nrawvertsnraw0vertscompatibleset_cs_bp_kp_ovrdnew_gquaddec_gvert.isra.12add_to_hit_list.isra.16new_gquad2.constprop.22new_gbspndel_gbspnnew_gbspldel_gbspladd_tri_to_hit_listnew_gedgedel_gedgenew_gamutcomptriattrgamut_rect2radialexpand_gamuttriangulate_chfoffs.31150triangulatewrite_gamwrite_trans_vrmlwrite_vrmlwrite_to_vrmlcompute_vector_isectnscompute_vector_isectnearest_trigetnexttristartnexttriexpdstbysrcmdst.part.18expdstbysrcmdstintersect_impintersectnexpintersectgamut_radial2rectget_in_rangewithin_restrictedsizeget_out_rangeget_out_scaleget_out_range_pointsfilter_rspltune_valuepart_interp_rspl_sxinterp_rspl_sxfree_rsplget_next_touchalloc_gridrpsh_initrpsh_resetscan_set_rsplre_set_rsplscan_rsplmgtmp_interpfree_mgtmpnew_mgtmp.isra.3smf.27384setup_solve.isra.4cj_line.constprop.11fit_rspl_impfit_rspl_w_dffit_rspl_dffit_rspl_wwfit_rspl_winit_datafree_dataexact_setsortauxil_checklocus_setsortlocus_checkclipv_setsortclipn_checkwithin_simplexsimplex_to_abssolve_se_2x2free_sharelistfree_assdirauxil_setsortrev_get_limit_rspllchw_edge_Dp_sqlchw_edge_solvelchw_tri_DDp_sqlchw_tri_Dp_sqlchw_tri_solvenn_grpgrp_estclipv_computeinit_line_eq_impget_limitv.isra.1logcomp.isra.9add_vtxrec_list.isra.10clear_trirec.isra.12free_indexlist.isra.13del_bxcellfree_surflistfree_surfhashfree_trirec.isra.14getsharelist.isra.16adjust_search.isra.17clipv_checkshadow_group_group.isra.19comp_shadow_group.isra.20shadow_group_vertex.isra.21uncache_fxcell.isra.22clipn_setsortnn_grpinit.constprop.36simplex_hashfree_simplex_infofree_cell_contentsdecrease_revcacherev_reduce_cacherev_test_vramrev_calloc.isra.23create_surfhashcreate_trirec.isra.25init_assdirsort_vtxrec_list.isra.26check_trirec.isra.27new_vtxrecrev_malloc.isra.28rev_realloc.isra.30add2indexlist.isra.31new_bxcelladd2sharelistadd_lu_svdclipn_computelocus_computeexact_computeauxil_computealloc_simplexesget_fxcellcreate_nnrev_listinit_revaccellcalc_fwd_cell_listsearch_listwarned.64334invalidate_revaccellrev_set_lchwrev_set_limit_rsplrspl_init_ssimplex_infoinit_searchrepsr.67983rev_locus_segs_rsplrev_locus_rsplrev_interp_rsplrspl_free_ssimplex_infoget_ssimplex_nodes.constprop.2gam_comp_gamutrspl_gam_plotone_itterinit_fsolnfree_omgtpinit_solnopt_rspl_impspline_interp_rsplinit_splinefree_splineicmFileStd_get_sizeicmFileStd_get_buficmFileMem_get_sizeicmFileMem_seekicmFileMem_flushicmFileMem_get_buficmFileMem_deleteread_UInt64Numbernumber_ColorSpaceSignatureicmUnknown_get_sizeicmUnknown_deleteicmUInt8Array_get_sizeicmUInt8Array_deletenew_icmUInt8ArrayicmUInt16Array_get_sizeicmUInt16Array_deletenew_icmUInt16ArrayicmUInt32Array_get_sizeicmUInt32Array_deletenew_icmUInt32ArrayicmUInt64Array_get_sizeicmUInt64Array_deletenew_icmUInt64ArrayicmU16Fixed16Array_get_sizeicmU16Fixed16Array_deletenew_icmU16Fixed16ArrayicmS15Fixed16Array_get_sizeicmS15Fixed16Array_deletenew_icmS15Fixed16Arrayread_XYZNumbericmXYZArray_get_sizeicmXYZArray_deletenew_icmXYZArrayicmCurve_get_sizeicmCurve_deletenew_icmCurveicmData_get_sizeicmData_deletenew_icmDataicmText_get_sizeicmText_deletenew_icmTextread_DateTimeNumbericmDateTimeNumber_get_sizeicmDateTimeNumber_allocateicmDateTimeNumber_deleteicmLut_nu_matrixicmLut_min_maxicmLut_lookup_matrixicmLut_get_sizeicmLut_dumpicmLut_deletenew_icmLuticmMeasurement_get_sizeicmMeasurement_allocateicmMeasurement_deletenew_icmMeasurementicmNamedColor_dumpicmNamedColor_deletenew_icmNamedColoricmColorantTable_dumpicmColorantTable_deletenew_icmColorantTableicmTextDescription_get_sizeicmTextDescription_unallocateicmTextDescription_deleteicmProfileSequenceDesc_get_sizeicmProfileSequenceDesc_deletenew_icmProfileSequenceDescicmSignature_get_sizeicmSignature_allocateicmSignature_deletenew_icmSignatureicmScreening_get_sizeicmScreening_deletenew_icmScreeningicmUcrBg_get_sizeicmUcrBg_deletenew_icmUcrBgicmVideoCardGamma_dumpicmVideoCardGamma_deletenew_icmVideoCardGammaicmViewingConditions_get_sizeicmViewingConditions_allocateicmViewingConditions_deletenew_icmViewingConditionsicmCrdInfo_get_sizeicmCrdInfo_deletenew_icmCrdInfoicmHeader_get_sizeicmHeader_deleteicc_get_rfpicc_find_tagtypetableicc_deleteicmMD5_reseticmMD5_accumeicmMD5_delicmFileMD5_get_sizeicmFileMD5_seekicmFileMD5_readicmFileMD5_writeicmFileMD5_printficmFileMD5_flushicmFileMD5_deleteicmFileMD5_geterrcicmLutSpacesicmLuSpacesicmLuWh_bk_pointsicmLuMonoFwd_lookup_outicmLuMonoBwd_lookup_inicmLuMono_deletenew_icmLuMonoicmLuMatrixFwd_matrixicmLuMatrixFwd_lookup_outicmLuMatrixBwd_matrixicmLuMatrixBwd_lookup_inicmLuMatrix_deleteicmLuLut_matrixicmLuLut_inputicmLuLut_cluticmLuLut_outputicmLuLut_lookupicmLuLut_lookup_coreicmLuLut_get_infoicmLuLut_get_lutrangesicmLuLut_deleteicm_get_tacstring_DateTimeNumbermstring.9437string_ProfileHeaderFlagsstring_DeviceAttributesicmHeader_readicmLuMonoBwd_lookup_outicmLuMonoFwd_curveicmLuMonoFwd_lookup_inicmLuMatrixBwd_curveicmLuMatrixBwd_lookup_outicmLuMatrixFwd_curveicmLuMatrixFwd_lookup_inicc_read_tag_ixicc_read_all_tagsicmXYZArray_allocateicmXYZArray_readicmViewingConditions_readicmUInt8Array_allocateicmUInt8Array_writeicmUInt8Array_readicmUInt64Array_allocateicmUInt64Array_writeicmUInt64Array_readicmUInt32Array_allocateicmUInt32Array_writeicmUInt32Array_readicmUInt16Array_allocateicmUInt16Array_writeicmUInt16Array_readicmVideoCardGamma_allocateicmVideoCardGamma_readicmUcrBg_allocateicmU16Fixed16Array_allocateicmU16Fixed16Array_writeicmU16Fixed16Array_readicmText_allocateicmSignature_writeicmSignature_readicmScreening_allocatestring_ScreenEncodingsicmScreening_readicmS15Fixed16Array_allocateicmS15Fixed16Array_readicmTextDescription_allocateicmTextDescription_writeicmTextDescription_readicmProfileSequenceDesc_writeicmProfileSequenceDesc_readicmNamedColor_allocateicmMeasurement_readicmLut_allocateicmLut_readicmDateTimeNumber_readicmData_allocateicmCurve_allocateicmCurve_writeicmCurve_readicmCrdInfo_allocateicmColorantTable_allocateicmUnknown_allocateicmUnknown_writeicmUnknown_readwrite_S15Fixed16NumbericmVideoCardGamma_writeicmScreening_writeicmS15Fixed16Array_writeicmLut_writeicmLut_lookup_outputicmLut_lookup_clut_sxicmLut_lookup_clut_nlicmLut_lookup_inputround_S15Fixed16NumbericmLut_tune_value_sxicmLut_tune_value_nlsetcur_DateTimeNumbernew_icmDateTimeNumbericmUcrBg_writeicmUcrBg_readicmText_writeicmText_readicmData_writeicmData_readicmCrdInfo_writeicmCrdInfo_readicmFileMem_writeicmFileMem_readicmProfileSequenceDesc_allocatenew_icmTextDescriptionicmMD5_geticmTextDescription_core_writeicmDICOM_fwd_nlicmFileMem_printficmFileStd_seekicmFileStd_deleteicmFileStd_flushicmFileStd_printficmFileStd_writeicmFileStd_readicmAllocStd_callocicmAllocStd_deleteicmAllocStd_freeicmAllocStd_reallocicmAllocStd_mallocicmUInt8Array_dumpicmUInt16Array_dumpicmUInt32Array_dumpicmUInt64Array_dumpicmU16Fixed16Array_dumpicmS15Fixed16Array_dumpicmTable_setup_bwd.isra.8icmCurve_dumpwrite_DateTimeNumbericmDateTimeNumber_writeicmColorantTable_get_sizeicmDescStruct_allocateicmVideoCardGamma_get_sizeread_PCSNumber.isra.16icmColorantTable_readwrite_PCSNumber.isra.17icmColorantTable_writegetNormFunc.isra.18colnormtablegetRange.isra.19colorrangetableicmLu_get_lutrangesicmLu_get_rangesicmLuLut_get_rangesicmLuLut_lookup_inicmLuLut_lookup_outicmLuLut_lookup_inv_inicmDateTimeNumber_dumpstring_RenderingIntentstring_IlluminanticmViewingConditions_dumpstring_SpotShapestring_StandardObserverstring_MeasurementGeometryicmNamedColor_get_sizeicmScreening_dumpicc_set_versionsigtypetableV2write_XYZNumbericmHeader_writeicmXYZArray_writeicmViewingConditions_writeicmMeasurement_writeicmTable_lookup_bwd.isra.35icmLuLut_inv_outputicmLuLut_inv_inputicmCurve_lookup_bwdicmVideoCardGamma_lookupicmCurve_lookup_fwdicmUcrBg_dumpicmText_dumpicmTextDescription_dumpicmData_dumpicmCrdInfo_dumpicmUnknown_dumpicmMD5_addicmNamedColor_writeicmNamedColor_readnew_icmAllocStdnew_icmFileStd_fp_anew_icmFileStd_fpnew_icmFileStd_name_anew_icmFileStd_namenew_icmFileMem_anew_icmFileMemnew_icmFileMem_dnew_icmFileMem_adread_Primitivewrite_Primitivestring_ProfileClassSignaturestring_ColorSpaceSignaturestring_PlatformSignaturestring_TagSignatureicc_delete_tagicc_unread_tagicc_rename_tagicc_read_tag_anyicc_read_tagstring_TechnologySignatureicmSignature_dumpicmTextDescription_core_readicmProfileSequenceDesc_dumpicc_link_tagicc_add_tagicmCSSig2nchanicmCSSig2chanNamespsh_reseticmSetMultiLutTablesicmLut_set_tablesicmClamp3icmDump3x3icmSetVal3x3icmSetUnity3x3icmLuLut_get_matrixicmCpy3x3icmAdd3x3icmScale3x3icmMulBy3x3icmLuLu_wh_bk_pointsicmLuXYZ_Abs2RelicmLuXYZ_Rel2AbsicmTensMul3icmMul3x3icmMul3x3_2icmDet3x3icmInverse3x3icc_setup_wpchtmxicc_chromAdaptMatrixicmLuInit_Wh_bkicc_new_icmLuLutnew_icmLuMatrixicc_get_luobjicc_read_xicmLuLut_inv_matrixicmSetUnity2x2icmInverse2x2icmTranspose3x3icmCross3icmNorm3sqicmScale3icmScaleAdd3icmBlend3icmClip3sigicmClip3margicmNormalize3icmNorm33sqicmNorm33icmScale33icmNormalize33icmRotMaticmMulBy4x4icmTranspose4x4icmClip4margicmCpy3x4icmMul3By3x4icmVecRotMaticmVecPlaneIsecticmLinePointClosesticmLineLineClosesticmPlaneEqn3icmPlaneDist3icmNorm22icmNorm22sqicmNormalize2icmOrthog2icmPlaneEqn2icmPlaneDist2icmImpLinePointClosest2icmImpLineIntersect2icmLinePointClosest2icmLineIntersect2icmParmLineIntersect2icmBlend2icmScale2icmScaleAdd2icmRad2maticmDeg2maticmVec2maticmMulBy2x2icmXYZ2Labstring_XYZNumber_and_LabicmHeader_dumpicmXYZArray_dumpicmMeasurement_dumpicmLuMonoBwd_mapicmLuMonoFwd_mapicmLuMatrixFwd_absicmLuMatrixFwd_lookup_coreicmLuMatrixFwd_lookupicmLab2XYZicmLuMonoBwd_absicmLuMonoBwd_lookup_coreicmLuMonoBwd_lookupicmLuMonoFwd_absicmLuMonoFwd_lookup_coreicmLuMonoFwd_lookupicmLuMatrixBwd_absicmLuMatrixBwd_lookup_coreicmLuMatrixBwd_lookupicmLuLut_inv_out_absicmLuLut_inv_in_absicmLuLut_out_absicmLuLut_in_absicmXYZ2LpticmLpt2XYZicmLCh2LabicmLab2LChicmXYZ2LuvicmLuv2XYZicmXYZ2YxyicmXYZ2xyicmYxy2XYZicmY_xy2XYZicmXYZ21976UCSicm1976UCS2XYZicm1976UCSY_uv2XYZicmXYZ21976UCSuvicmXYZ21960UCSicm1960UCS2XYZicmXYZ21964WUVicm1964WUV2XYZicm1960UCS21964WUVicmLabDEsqicmXYZLabDEsqicmXYZLabDEicmXYZLptDEsqicmXYZLptDEicmCIE94sqicmXYZCIE94icmCIE2KsqicmXYZCIE2KicmChromAdaptMatrixinited.12858ibradford.12859icmRGBXYZprim2matrixicmRGBYxyprim2matrixicmQuantize3x3S15Fixed16icc_set_illumicc_add_auto_tagsicc_get_sizequantizeRGBprimsS15Fixed16icmClipLabicmClipXYZicmLut2YPbPricmYPbPr2LuticmRec601_RGBd_2_YPbPricmRec601_YPbPr_2_RGBdicmRec709_RGBd_2_YPbPricmRec709_YPbPr_2_RGBdicmRec709_50_RGBd_2_YPbPricmRec709_50_YPbPr_2_RGBdicmRec2020_NCL_RGBd_2_YPbPricmRec2020_NCL_YPbPr_2_RGBdicmRec2020_CL_RGBd_2_YPbPricmRec2020_CL_YPbPr_2_RGBdicmRecXXX_YPbPr_2_YCbCricmRecXXX_YCbCr_2_YPbPricmRGB_2_VidRGBicmVidRGB_2_RGBicmDICOM_fwdicmDICOM_bwdnew_icmMD5_aicc_check_idnew_icmMD5new_icmFileMD5_aicc_write_xtagchecktableicc_writenew_icc_aicmRad2RGBbuf.13989buf.14000buf.14011buf.14021cgats_errorcgats_delset_table_typecs_has_wsguess_typeclear_fieldsadd_otherunquote_cscgats_write_namecgats_read_nameget_setarrset_table_flagsstandard_kwordreserved_kwordfind_fieldfind_kwordstandard_fieldalloc_copy_data_typeadd_setarradd_fieldadd_kword_atadd_kwordset_cgats_typeadd_tablecgats_readdata_type_desccgats_writeamonths.5136new_cgats_alnew_cgatscgatsFileStd_get_sizecgatsFileStd_get_bufcgatsFileStd_fnamecgatsFileMem_get_sizecgatsFileMem_seekcgatsFileMem_getchcgatsFileMem_flushcgatsFileMem_get_bufcgatsFileMem_fnamecgatsFileMem_deletedel_parsereset_delcgatsFileMem_readget_tokenread_linecgatsFileStd_deletecgatsFileStd_flushcgatsFileStd_printfcgatsFileStd_writecgatsFileStd_getchcgatsFileStd_readcgatsFileStd_seekcgatsAllocStd_calloccgatsAllocStd_deletecgatsAllocStd_freecgatsAllocStd_realloccgatsAllocStd_malloccgatsFileMem_filemem_resize.part.0cgatsFileMem_printfcgatsFileMem_writenew_parse_alnew_cgatsAllocStdnew_cgatsFileStd_fp_anew_cgatsFileStd_fpnew_cgatsFileStd_name_anew_cgatsFileStd_namenew_parsenew_cgatsFileMem_anew_cgatsFileMem_dnew_cgatsFileMemnew_cgatsFileMem_adkkill_nprocess_delathread_deldelayed_beepbeep_delaybeep_msecbeep_freqathread_terminatenext_con_charpoll_con_charempty_con_charsamutex_chkilock.31266athread_wait_stopathread_startathread_waitthreadprocacond_timedwait_impnew_athread_reusablemsec_beepbeep_threadlogin_HOMEdelete_filecreate_parent_directoriessystem_processorskkill_nprocesskill_nprocessth_kkill_nprocessa1_default_de_loga1_default_v_logget_sys_infosysinfo.25998check_if_not_interactivedel_a1loga1log_debuga1log_verba1log_tagg_log_initg_deb_initnew_a1lognew_a1log_dset_exe_pathdump_bytesadump_bytesfree_dvectorfree_dmatrixdmatrix_resetdhmatrixzfree_dhmatrixcopy_dmatrixcopy_dmatrix_to3x3convert_dmatrixfree_convert_dmatrixfree_fvectorfree_fmatrixfree_ivectorfree_imatrixfree_svectorfree_smatrixmatrix_transsym_matrix_transmatrix_multmatrix_trans_multmatrix_mult_transmatrix_vect_multmatrix_trans_vect_multmatrix_addmatrix_scaled_addmatrix_cpymatrix_setmatrix_max_diffvect_add3vect_sub3vect_invertvect_mul3vect_div3vect_div3_safevect_muldivvect_muldiv_safevect_muldiv3vect_max_elemvect_max_elem3vect_scalevect_scale1vect_blendvect_scaleaddvect_magsqvect_diffmagvect_normalizevect_max_magvect_max2vect_spowvect_clipvect_lsearchvect_bsearchvect_lerpvect_rev_lerpvect_lerp2xvect_lerp2ivect_setdump_dmatrixdump_dmatrix_fmtdump_fmatrixdump_imatrixdump_smatrixdump_dvectordump_dvector_fmtdump_fvectordump_ivectordump_svectoracode_dmatrixacode_dvectoradump_dmatrixadump_dmatrix_fmtadump_fmatrixadump_imatrixadump_smatrixadump_dvectoradump_dvector_fmtadump_fvectoradump_ivectoradump_svectoradump_C_dmatrixvect_ClipNmargvect_MulByNxNvect_MulByMxNvect_MulByNxMmatrix_TransposeNxNdoubletoIEEE754IEEE754todoubledoubletoIEEE754_64IEEE754_64todoubleread_ORD8write_ORD8read_INR8write_INR8read_ORD16_beread_ORD16_lewrite_ORD16_bewrite_ORD16_leread_INR16_beread_INR16_lewrite_INR16_bewrite_INR16_leread_ORD32_beread_ORD32_lewrite_ORD32_bewrite_ORD32_leread_INR32_beread_INR32_lewrite_INR32_bewrite_INR32_leread_ORD64_beread_ORD64_lewrite_ORD64_bewrite_ORD64_leread_INR64_beread_INR64_lewrite_INR64_bewrite_INR64_leread_FLT32_beread_FLT32_lewrite_FLT32_bewrite_FLT32_leread_FLT64_beread_FLT64_lewrite_FLT64_bewrite_FLT64_lemsec_sleepmsec_timestartup.27721usec_timescale.27726startup.27727buf.27732buf.27744buf.27759gamma_funccvals.27769rand_initrand32_thd_rand_thd2_rand_thi_rand_thnorm_rand_thnorm_randvect_randnext_sobolreset_soboldel_sobolnew_sobolsobol_polysvdthreshsvdsetthreshsvdbacksubsvdsolve_sgen_solve_selu_decomplu_backsublu_polishpolished_solve_selu_invertlu_invert_normallu_polished_invertlu_psinvertllt_decompllt_backsubdo_plot_impplot_message_threaddo_plot_pdo_plot_xdo_plot6pdo_plotNpwzdo_plot10pwzdo_plot10do_plot10pwdo_plot10pdo_plot_vecdo_plot_vec2do_plot_vec3do_plot_genadd_vec_gadd_sym_gget_vxyix_gdo_plot_gloose_labelMainWndProcui_UsingGUITIFFSetErrorHandlerTIFFSetErrorHandlerExtTIFFErrorTIFFErrorExtTIFFSetWarningHandlerTIFFSetWarningHandlerExtTIFFWarningTIFFWarningExt_tiffDummyMapProc_tiffDummyUnmapProcWin32ErrorHandlerWin32WarningHandler_tiffCloseProc_tiffSizeProc_tiffSeekProcCSWTCH.27_tiffWriteProc_tiffReadProc_tiffMapProc_tiffUnmapProcTIFFFdOpenmodule.25944_TIFFmallocTIFFOpenWmodule.25960_TIFFfree_TIFFrealloc_TIFFmemset_TIFFmemcpy_TIFFmemcmpTIFFAdvanceDirectorymodule.26225_TIFFVGetFieldsetDoubleArrayOneValuesetByteArray_TIFFsetByteArray_TIFFsetString_TIFFsetShortArray_TIFFsetLongArray_TIFFsetFloatArray_TIFFsetDoubleArray_TIFFVSetFieldmodule.25946TIFFUnsetFieldTIFFVSetFieldTIFFSetFieldTIFFVGetFieldTIFFGetFieldTIFFFreeDirectoryTIFFSetTagExtender_TIFFextenderTIFFDefaultDirectoryTIFFCreateCustomDirectoryTIFFCreateEXIFDirectoryTIFFCreateDirectoryTIFFNumberOfDirectoriesmodule.26246TIFFSetDirectoryTIFFSetSubDirectoryTIFFCurrentDirOffsetTIFFLastDirectoryTIFFUnlinkDirectorymodule.26275TIFFCleanupTIFFClose_TIFFgetModeTIFFClientOpenmodule.25893TIFFFileNameTIFFSetFileNameTIFFFilenoTIFFSetFilenoTIFFClientdataTIFFSetClientdataTIFFGetModeTIFFSetModeTIFFIsTiledTIFFCurrentRowTIFFCurrentDirectoryTIFFCurrentStripTIFFCurrentTileTIFFIsByteSwappedTIFFIsUpSampledTIFFIsMSB2LSBTIFFIsBigEndianTIFFGetReadProcTIFFGetWriteProcTIFFGetSeekProcTIFFGetCloseProcTIFFGetSizeProcTIFFGetMapFileProcTIFFGetUnmapFileProcTIFFSwabShortTIFFSwabLongTIFFSwabLong8TIFFSwabArrayOfShortTIFFSwabArrayOfTriplesTIFFSwabArrayOfLongTIFFSwabArrayOfLong8TIFFSwabFloatTIFFSwabArrayOfFloatTIFFSwabDoubleTIFFSwabArrayOfDoubleTIFFGetBitRevTableTIFFNoBitRevTableTIFFBitRevTableTIFFReverseBitstagCompare_TIFFSetGetTypeCSWTCH.23CSWTCH.14CSWTCH.20CSWTCH.17_TIFFGetFieldstiffFieldArray_TIFFGetExifFieldsexifFieldArray_TIFFPrintFieldInfoTIFFDataWidthCSWTCH.32_TIFFDataSizeCSWTCH.36TIFFFindField_TIFFMergeFieldsreason.25915module.25914_TIFFSetupFieldsTIFFFieldWithTagTIFFFieldWithNameTIFFFieldTagTIFFFieldNameTIFFFieldDataTypeTIFFFieldPassCountTIFFFieldReadCountTIFFFieldWriteCount_TIFFCreateAnonField_TIFFFindOrRegisterFieldTIFFMergeFieldInforeason.26124module.26123tiffFieldsexifFieldsTIFFFetchDirectorymodule.27556EstimateStripByteCountsmodule.27505TIFFReadDirectoryFindFieldInfo.isra.3TIFFReadDirEntryOutputErr.isra.8TIFFReadDirEntryCheckedSshort.isra.10TIFFReadDirEntryCheckedLong.isra.11TIFFReadDirEntryCheckedSlong.isra.12TIFFReadDirEntryDataTIFFReadDirEntryCheckedLong8TIFFReadDirEntryCheckedSlong8TIFFReadDirEntryCheckedDoubleTIFFReadDirEntryCheckedRationalTIFFReadDirEntryCheckedSrationalTIFFReadDirEntryArrayTIFFReadDirEntryShort.part.15TIFFReadDirEntryByteArrayTIFFReadDirEntryLongArrayTIFFReadDirEntryShortArrayTIFFReadDirEntryPersampleShort.part.20TIFFReadDirEntryLong8ArrayTIFFFetchStripThingmodule.27689TIFFReadDirEntryFloatArrayTIFFReadDirEntryDoubleArrayTIFFReadDirEntryIfd8ArrayTIFFFetchNormalTagmodule.27578TIFFReadDirectorymodule.27356module.27442module.27533CSWTCH.355TIFFReadCustomDirectorymodule.27477module.27698TIFFReadEXIFDirectory_TIFFFillStrilesTIFFReadRawTile1TIFFReadRawStrip1TIFFCheckReadTIFFStartStripTIFFReadRawStripmodule.25948TIFFReadRawTilemodule.25995TIFFReadBufferSetupmodule.26012TIFFFillTilemodule.26022module.26003TIFFReadEncodedTilemodule.25974TIFFReadTileTIFFFillStripmodule.25956TIFFReadEncodedStripmodule.25922TIFFReadScanlinemodule.25894_TIFFNoPostDecode_TIFFSwab16BitData_TIFFSwab24BitData_TIFFSwab32BitData_TIFFSwab64BitData_TIFFNoFixupTags_TIFFNoPreCode_TIFFtrue_TIFFvoid_TIFFNoSeek_TIFFSetDefaultCompressionStateTIFFFindCODECregisteredCODECSTIFFSetCompressionSchemeTIFFNoDecode_TIFFNoTileDecode_TIFFNoStripDecode_TIFFNoRowDecodeTIFFNoEncode_TIFFNoTileEncode_TIFFNoStripEncode_TIFFNoRowEncodeTIFFRegisterCODECTIFFUnRegisterCODECTIFFGetConfiguredCODECs_TIFFMultiply32_TIFFMultiply64_TIFFCheckRealloc_TIFFCheckMallocTIFFVGetFieldDefaultedwhitepoint.26622ycbcrcoeffs.26618TIFFGetFieldDefaulted_TIFFUInt64ToFloat_TIFFUInt64ToDoubleTIFFFlushDataTIFFFlushTIFFComputeTileTIFFCheckTileTIFFNumberOfTilesTIFFTileRowSize64module.25895TIFFTileRowSizeTIFFVTileSize64module.25909TIFFVTileSizeTIFFTileSize64TIFFTileSizeTIFFDefaultTileSize_TIFFDefaultTileSizeTIFFComputeStripmodule.25866TIFFNumberOfStripsTIFFRawStripSize64module.25897TIFFRawStripSizeTIFFDefaultStripSizeTIFFScanlineSize64module.25931_TIFFDefaultStripSizeTIFFVStripSize64module.25878TIFFStripSize64TIFFStripSizeTIFFVStripSizeTIFFScanlineSizeTIFFRasterScanlineSize64module.25949TIFFRasterScanlineSizeNotConfigured_notConfiguredTIFFIsCODECConfiguredTIFFAppendToStripmodule.25952TIFFGrowStrips.constprop.1TIFFSetupStripsTIFFWriteCheckTIFFWriteRawTileTIFFWriteRawStripmodule.25896TIFFWriteBufferSetupmodule.25937TIFFWriteEncodedTilemodule.25912TIFFWriteTileTIFFWriteEncodedStripmodule.25887TIFFWriteScanlinemodule.25876TIFFFlushData1TIFFSetWriteOffsetTIFFWriteDirectoryTagDatamodule.26724TIFFWriteDirectoryTagRationalTIFFWriteDirectoryTagShortTIFFWriteDirectoryTagLongTIFFWriteDirectoryTagCheckedLong8ArrayTIFFWriteDirectoryTagCheckedLongArrayTIFFWriteDirectoryTagCheckedShortArrayTIFFWriteDirectoryTagShortArrayTIFFWriteDirectoryTagCheckedIfdArrayTIFFWriteDirectoryTagCheckedIfd8ArrayTIFFWriteDirectoryTagSshortArrayTIFFWriteDirectoryTagSlongArrayTIFFWriteDirectoryTagCheckedRationalArraymodule.26656TIFFWriteDirectoryTagFloatArrayTIFFWriteDirectoryTagDoubleArrayTIFFWriteDirectoryTagSampleformatArraymodule.26283TIFFWriteDirectoryTagShortLongTIFFWriteDirectoryTagLongLong8Arraymodule.26484TIFFWriteDirectoryTagShortPerSamplemodule.26367TIFFWriteDirectorySec.part.3module.26209module.26501module.26673module.26739module.26534module.26515module.26524TIFFWriteDirectoryTIFFCheckpointDirectoryTIFFWriteCustomDirectoryTIFFRewriteDirectorymodule.26189_TIFFRewriteFieldmodule.26762DumpFixupTagsDumpModeSeekDumpModeEncodeDumpModeDecodemodule.25880TIFFInitDumpModemodule.25966module.25954module.26008module.25945cl_hash.isra.0module.26044TIFFInitLZWmodule.26107PackBitsEncodePackBitsEncodeChunkPackBitsPostEncodePackBitsPreEncodePackBitsDecodemodule.25919TIFFInitPackBitsThunderSetupDecodeThunderDecodeRowmodule.25872threebitdeltastwobitdeltasTIFFInitThunderScanNeXTPreDecodemodule.25904NeXTDecodemodule.25867TIFFInitNeXTFax3FixupTagsFax3UnexpectedFax3VGetField_TIFFFax3fillruns_fillmasks.26145Fax3CleanupFax3PutBitsFax3CloseFax3PostEncodeFax4PostEncodeFax3PreEncodeFax3PrematureEOFFax3BadLengthFax3Decode1Dmodule.25955Fax3Decode2Dmodule.26015Fax3DecodeRLEmodule.26522Fax4Decodemodule.26409Fax3PreDecodeFax3SetupStatemodule.26188Fax3PrintDirFax3VSetFieldInitCCITTFax3faxFieldsmodule.26397Fax3Encode1DRowFax3Encode2DRowFax3Encodemodule.26326Fax4Encodemodule.26503TIFFInitCCITTFax3fax3FieldsTIFFInitCCITTFax4fax4FieldsTIFFInitCCITTRLETIFFInitCCITTRLEW_logLuvNopmodule.26566module.27056module.27026module.27092module.27071module.26538module.26582module.27127module.26630module.26686module.26670oog_encodeinitialized.26804oog_table.26803LogL16toYLogL16fromYXYZtoRGB24LogL10toYLogL10fromYuv_encodeuv_decodeLogLuv24toXYZLogLuv24fromXYZLogLuv32toXYZLogLuv32fromXYZTIFFInitSGILogmodule.27153PredictorEncodeRowhorDiff32horDiff16PredictorDecodeTilePredictorDecodeRowPredictorVSetFieldPredictorVGetFieldPredictorSetupPredictorSetupEncodePredictorSetupDecodeswabHorDiff32swabHorAcc32swabHorDiff16swabHorAcc16PredictorEncodeTilemodule.26253PredictorPrintDirTIFFPredictorInitpredictFieldsTIFFPredictorCleanupemit_messagereset_error_mgrformat_messageoutput_messageerror_exitjpeg_std_errorjpeg_CreateDecompressjpeg_destroy_decompressjpeg_abort_decompressjpeg_consume_inputjpeg_read_headerjpeg_input_completejpeg_has_multiple_scansjpeg_finish_decompressinit_sourceinit_mem_sourcefill_mem_input_buffermybuffer.4205skip_input_dataterm_sourcefill_input_bufferjpeg_stdio_srcjpeg_mem_srcjpeg_CreateCompressjpeg_destroy_compressjpeg_abort_compressjpeg_suppress_tablesjpeg_finish_compressjpeg_write_markerjpeg_write_m_headerjpeg_write_m_bytejpeg_write_tablesexamine_app0skip_variablenext_markerreset_marker_readerread_markersexamine_app14get_interesting_appnsave_markerread_restart_markerjpeg_resync_to_restartjinit_marker_readerjpeg_save_markersjpeg_set_marker_processorjpeg_abortjpeg_destroyjpeg_alloc_quant_tablejpeg_alloc_huff_tabledo_sarray_iodo_barray_ioalloc_smallextra_pool_slopfirst_pool_sloprequest_virt_barrayrequest_virt_sarrayfree_poolself_destructaccess_virt_barrayaccess_virt_sarrayalloc_largealloc_barrayalloc_sarrayrealize_virt_arraysjinit_memory_mgrfinish_input_passreset_input_controllerstart_input_passconsume_markersjpeg_core_output_dimensionsjinit_input_controllerjdiv_round_upjround_upjcopy_sample_rowsjcopy_block_rowemit_byteemit_markerwrite_file_traileremit_2byteswrite_marker_headerwrite_tables_onlywrite_scan_headerwrite_file_headerwrite_marker_bytewrite_frame_headerjinit_marker_writerjpeg_get_smalljpeg_free_smalljpeg_get_largejpeg_free_largejpeg_mem_availablejpeg_open_backing_storejpeg_mem_initjpeg_mem_term__dyn_tls_dtor__dyn_tls_init__tlregdtormy_lconv_init_decode_pointer_encode_pointermingw_onexit__mingw_SEH_error_handler__mingw_init_ehandlerwas_here.61198emu_pdataemu_xdata_gnu_exception_handler__mingw_raise_matherrstUserMathErr__mingw_setusermatherr__report_error__write_memory_pei386_runtime_relocatorwas_init.61221__do_global_dtors__do_global_ctorsinitialized__security_init_cookie.data$__security_cookie.data$__security_cookie_complement__report_gsfailureGS_ContextRecordGS_ExceptionRecordGS_ExceptionPointers__mingwthr_run_key_dtors.part.0__mingwthr_cskey_dtor_list___w64_mingwthr_add_key_dtor__mingwthr_cs_init___w64_mingwthr_remove_key_dtor__mingw_TLScallback_ValidateImageBase_FindPESection_FindPESectionByName_FindPESectionExec_GetPEImageBase_IsNonwritableInCurrentImagepseudo-reloc-list.cinternal_modfmingw_getsp__sinl_internal__cosl_internal__logl_internaljpeg_natural_order6__imp_RestoreDCdumpvtxsort___RUNTIME_PSEUDO_RELOC_LIST__MapViewOfFile__imp_GetStdHandle__imp__vsnprintf__imp_GetStartupInfoA__imp_DestroyWindowPostQuitMessage__imp_abort__lib64_libkernel32_a_iname__imp_SetFilePointer__data_start_____DTOR_LIST____imp__fmodeicmBradford__imp__stricmp__imp__lock__imp_GetStockObject__imp__mkdir__imp_RtlVirtualUnwindicmWrongVonKriesSetUnhandledExceptionFiltericmD50_ary3CreateWindowExAg_avail_ram__imp_PostQuitMessageLoadIconA__imp_longjmpCreateToolhelp32Snapshot_vsnprintf__imp_CreateFileW__imp_calloc___tls_start____ImageBaseGetFileSizeMessageBoxA__imp_ceiljpeg_natural_order5__imp_filenoGetLastError__imp_MessageBoxAGetSystemTimeAsFileTimemingw_initltssuo_force__imp_CreatePen__imp_Process32Next__imp_MoveToEx__imp___dllonexit__dll_characteristics____size_of_stack_commit__DefWindowProcA__imp_CreateWindowExA__iob_func__imp__acmdln__size_of_stack_reserve____major_subsystem_version_____crt_xl_start____imp_InvalidateRgn__imp_DeleteCriticalSection__imp_asctime__imp_fputc__imp__ctime64VirtualQuery___crt_xi_start____imp__amsg_exit___crt_xi_end____imp__errno__imp_Beep__imp_ftell_tls_start__imp_asin__imp_getenv__mingw_winmain_lpCmdLinexfitfunc_trace__imp_strncpy__mingw_oldexcpt_handler__imp_GetCurrentThreadIdjpeg_natural_order4GetCurrentProcessIdDrawTextA__imp__fstat64TlsGetValueTerminateProcess__imp_strcmp__lib64_libgdi32_a_iname__bss_start____imp___C_specific_handler__imp_randSetForegroundWindow__imp_putchar___RUNTIME_PSEUDO_RELOC_LIST_END__RtlLookupFunctionEntry__imp_LoadIconA__size_of_heap_commit____imp_strrchr__imp_GetLastError__imp_freeLoadLibraryA__imp_GetClientRectplot_signal__imp_RtlLookupFunctionEntryVirtualProtectmingw_app_type___crt_xp_start__plot_colors__imp_LeaveCriticalSection__imp_ReadFile__mingw_pinit__imp__getch__imp_LineTo_localtime64__imp_TranslateMessage__C_specific_handler__imp_SetTextColor__imp_GetTickCountCreateFileMappingAg_no_rev_cache_instances___crt_xp_end____imp_CloseHandle__minor_os_version____imp_GetSystemTimeAsFileTimeTIFFFaxWhiteCodesEnterCriticalSection_MINGW_INSTALL_DEBUG_MATHERR_TIFFwarningHandler__imp_GetFileSize__imp_strdupjpeg_std_message_table__imp_putsDispatchMessageA__imp_CreateEventA__image_base____imp_atoiRtlCaptureContext__imp__exit__section_alignment____native_dllmain_reason__imp_fputs__lib64_libuser32_a_iname__imp_frexp__imp_strcpy_tls_usedCreatePen__imp_memset__imp_bsearchUnhandledExceptionFiltermingw_initcharmax__IAT_end____imp_memcpy__RUNTIME_PSEUDO_RELOC_LIST__QueryPerformanceFrequency__imp_CreateFileMappingA__imp_memmove__imp_CreateFontAret_null_on_malloc_failplot_AppNameDeleteObject__imp_RtlAddFunctionTablemingw_pcppinitGetClientRectjpeg_natural_order__data_end__LoadCursorA__imp_LoadCursorATIFFFaxBlackTable__imp_fwrite__CTOR_LIST____imp__kbhit__imp_SelectObject__imp_SetForegroundWindow__imp___getmainargs_head_lib64_libkernel32_aGetModuleHandleA__bss_end____imp_SaveDCGetTickCount__imp_floor_head_lib64_libmsvcrt_a__native_vcclrit_reason___crt_xc_end__RtlAddFunctionTable__imp__setjmp__imp_EnterCriticalSectionCreateFontA_tls_indexicmD50_100__imp_ShowWindow__native_startup_stateplot_hwnd___crt_xc_start__UnmapViewOfFile__onexitbeginTIFFFaxMainTable__imp_GetCurrentProcessId__imp_vsprintf__imp___lconv_init__imp_TerminateProcess__imp_GetProcAddress___CTOR_LIST____imp_sscanf__imp_signal__imp_atan2_head_lib64_libgdi32_ag_rev_instancesBeginPaint__imp_GetModuleHandleA__imp_QueryPerformanceCounter__imp_WideCharToMultiByte__imp_UnmapViewOfFile__imp_BeginPainticmD65_100__imp_strlen__imp_EndPaint__imp_atof__imp_DeleteObjectRestoreDC__imp_malloc__mingw_winmain_nShowCmdmingw_pcinit__imp_TerminateThread__imp_MapViewOfFile__file_alignment__WriteFileTIFFFaxWhiteTable__imp_InitializeCriticalSection__imp_OpenProcess__lconv_initCloseHandleui_initialized__getmainargs_TIFFBuiltinCODECS__imp_reallocInitializeCriticalSection__imp_exit__imp_RegisterClassA__imp_CreateThread__major_os_version____imp_vfprintf__imp_DrawTextA__imp___initenvGetSystemInfo__imp_SetEvent__imp_GetSystemInfo__imp_GetMessageA__IAT_start__TIFFFaxBlackCodes__imp_strcatSetTextColor__imp__cexit__imp_UnhandledExceptionFilter__imp_SetUnhandledExceptionFilter_TIFFwarningHandlerExt__imp__onexitGetProcAddress__DTOR_LIST__lpweightsRtlVirtualUnwindWideCharToMultiByte__set_app_type__imp_SleepLeaveCriticalSection__imp___setusermatherr__size_of_heap_reserve_____crt_xt_start__icmD50_100_ary3__subsystem__icmD65_100_ary3_amsg_exit__security_cookie_complementjpeg_natural_order3__imp_TlsGetValueARPANSA_rseGetCurrentProcess__setusermatherr__imp_fprintf__imp_WriteFile_TIFFerrorHandlerExtx3dom_css__lib64_libmoldname_a_iname__imp_UnregisterClassA__imp_VirtualProtectg_test_ram___tls_end____imp_qsort__onexitendjpeg_natural_order7QueryPerformanceCounter__imp_VirtualQuery__imp__inittermUnregisterClassAmingw_initltsdyn_force__imp_fclose_dowildcard__imp___iob_func__imp__localtime64__dyn_tls_init_callbackTranslateMessageOpenProcess_head_lib64_libuser32_a_initterm__imp_CreateToolhelp32Snapshot__imp_raise__imp_WaitForSingleObjectDestroyWindow__imp_strncmp__major_image_version__plot_ratioWaitForSingleObject__loader_flags____imp_strchr__imp__time64TerminateThread___chkstk_ms_TIFFerrorHandlerdefault_log__native_startup_lockSelectObjectCreateFileWicmD65_ary3__mingw_winmain_hInstanceGetStartupInfoA__imp_log10Process32NextGetCurrentThreadIdShowWindow__imp_GetModuleFileNameAnot_interactive__minor_subsystem_version____imp_fflush__minor_image_version____imp__unlockInvalidateRgn__imp_QueryPerformanceFrequency__imp___set_app_typemingw_initltsdrot_force__imp_fgetc__imp_sprintf__imp__unlink__imp_printfSetFilePointer__imp_freadGetStockObjectGetMessageACreateEventA__imp_DefWindowProcACreateThread__imp_LoadLibraryAGetModuleFileNameADeleteCriticalSection__imp_RtlCaptureContextGetStdHandle__RUNTIME_PSEUDO_RELOC_LIST_END____imp_fopenNORM_RAND_ABS_SCALE__imp_isprint__imp__stat64_head_lib64_libmoldname_aRegisterClassA__dllonexit__imp_GetCurrentProcess__imp_DispatchMessageA___crt_xt_end__jpeg_natural_order2__lib64_libmsvcrt_a_iname__imp_fseekCreateFileA__imp_CreateFileA__imp_acos__security_cookie