Remove post-increment in function quote_identifier of pg_upgrade
Hi,
The function quote_identifier has extra post-increment operation as
highlighted below,
char *
quote_identifier(const char *s)
{
char *result = pg_malloc(strlen(s) * 2 + 3);
char *r = result;
*r++ = '"';
while (*s)
{
if (*s == '"')
*r++ = *s;
*r++ = *s;
s++;
}
*r++ = '"';
**r++ = '\0';*
return result;
}
I think *r = '\0' is enough here. Per precedence table the precedence of
postfix increment operator is higher. The above statement increments 'r'
pointer address but returns the original un-incremented pointer address,
which is then dereferenced. Correct me if I am wrong here.
If my understanding is correct then '++' is not needed in the
above highlighted statement which is leading to overhead.
Find an attached patch which does the same. This can be backported till v96.
Thanks & Regards,
Vaibhav Dalvi
[image: image.png]
Attachments:
remove_extra_postincrement_in_quote_identifier_pg_upgrade.patchtext/x-patch; charset=US-ASCII; name=remove_extra_postincrement_in_quote_identifier_pg_upgrade.patchDownload
diff --git a/src/bin/pg_upgrade/util.c b/src/bin/pg_upgrade/util.c
index fc20472..dc000d0 100644
--- a/src/bin/pg_upgrade/util.c
+++ b/src/bin/pg_upgrade/util.c
@@ -198,7 +198,7 @@ quote_identifier(const char *s)
s++;
}
*r++ = '"';
- *r++ = '\0';
+ *r = '\0';
return result;
}
image.pngimage/png; name=image.pngDownload
�PNG
IHDR @ ���� IDATx�� �$E������t��uz�
"r�\�]U��U�5���.������������,��-�x�
����x!r*(""��=�0��������z�����|�y�������7~�e����T��@����y���ST���U��:BV��Ju��T���#2�>%��3�~���IU}G���_��u��OO{�>�>o��Y�����5r�:JR�����eO�G�@S!@ � @ � @ � �# ��%2���eb��_���R*��RQWKU�^j��RU7IM�+U�����RS"�S��*��������
�~Pj��Vyt�tuY�e��e����R�{U��g� @ � @ � @��dW��K&�����������&Uu�T��RS����HMm���v��������L&��CM=��S�n�:�'u�T�)2���5��r�z��������}o0
@ � @ � @ �@7Y��d���������T�%RS�k���fAg5��8������u����kJ#���T*�\V?���_d���n��@ � @ � @ ��/����B$U�A��oKE����j����=�7�6L����������6���-���G2�����P�C|i\N
@ � @ � @ �Y��U�V�JM��������^p'�M5�^n7c7���U��V����c���"q���� @ � @ � H@F�GdD].U�'��Vwl�Z�v� .��#�-��IE�#UuK�e�#�S�B��J��A � @ � @ � �% ����`�RQ��������$����
Q����:mWUWKE}UV���>�E�*��C � @ � @ � vB@���dD�D��J��;Z��^A�I�G����U�i��KF�U2�.�5��;� �� @ � @ � ���<K�.�W����T��RS���6w���,�6���c��
�--MT���>'�#�����*��A � @ � @ �@l ��z��/JE�T��FVx����[�i3��
��n��:W��/�
5��D�! @ � @ � @ dX7���^���O��������
��
��zB����K�G�W��rJ@ � @ � @ �' +��eD}]����U����M�c2��g�i�?�N��o���=r�zv�;� @ � @ � �`��v�a����V5����aP�����;fH�]27KE�R����~�@ � @ � @ �! ��,W�$u������&��$��L�s�n��uXU�'V��KvU��t@*@ � @ � @ ���UE��7�������J^d>����m�hC�]���^��R���Wp6@ � @ � @ 0������5�]RU�������=�������>������������!�C`d���� @ � @ � �p�Z+#���;=0�b0�t�6C�/OL��Y��[�Q��[�$ @ � @ � ��������n��z\&��0)�OY������JM�-#����� @ � @ � �N�����~���g�c|�=���
VZ�������V������"�� @ � @ � ���au�T�uRS;0=�|Yv4�3o�I�V�M�� � @ � @ � �sr�z�T�RU��BsL��0K�7K:FHU=!z��
�:9F=u����@ � @ � @ �@�dH}H��B��-/��>�K2.h�W3dD]%C�S�w`.@ � @ � @ �dX�[����-ls��V|,Rm#D�4}���u�6~� @ � @ � _ �jLF��HU��Z����������0��B50�2S�����_;5'� @ � @ � w-�����V{`|��_hr���M;������G*��q�?�� @ � @ ����@u�T��RS;0>�����%�����c��Z/L?WT��i'�d� @ � @ � �F@F�9RU�~���
�W^m�u��T���$�@ � @ � @`�dw�Fj�,��GY���7+"�WD���5VM=.Uu���v��B � @ � @ �:9H���:[jjc���$�I����k@����2��/�5V��4�� @ � @ � �I@����-��� ���<m��5����JE}w����! @ � @ � D���@�*���RS��V|`~t'�I���D
���m{L*��C=3ZQ��@ � @ � @ ����VGKU�.5�����^pA
����MF�����@ � @ � @�|�J�Mj�z^n�����(���l� �^��gY�>`~�� @ � @ � �����T��RS�X�������i���]U]*�����~� @ � @ � ` QO�a�%���0>b��fu���+L��6B��:��hF�! @ � @ � � �� ��;Z/871YK�I��4�~Q�}2���x @ � @ � @�(RU�HUmg��>��
L���m���U��F8
@ � @ � ���������Z���$7�A��z��5*��BU�eoU�W���� @ � @ �@� �*�N�������D-��t@�i�m��-����<
@ � @ � D����-Uu���6��b�#04�(
tV�U��r�zY�#(5� @ � @ � BI@��'����%�$���fU��*Le�6B�auJ(���@D �r��Lf���T��0B�
�o#�Z�J��Mb1�W��d��6���n���s����L����/bL��@��[���{����&3��%�k���+3z�`j���%�T����~x�����>~>�Oek����G?<���I�c�j>����������c|`|��5�^
����N��PHf��#[���+�r%�/��4`���S����2�,�P�\����so��<L\".O�����*�XE���W�`�k�e����}N6��n�P�x�����5vd�Z[]����*��.P�|� ��5~�+��7ml1�
uh�r��v,w�k�r��l��"[h|/S����x27���5ZQj�r$:���H��?�+9�sE�q_�J��L�q�Q�d�2Wr���z%g[:7�N�g�����%_t6O{���%_r��l�~L��+�('���RS����o����^����h��AF���:U�T{D!�R��@�h�,_>Dr���J_0@Fj�)�rS2E�����t�b�|��l�^���k��u�%#��}D��v�Un����_������}U����)4�����2�^���d������j��!`�d��2�d&����������C�*9�ZE�V�� Sh����OL�=>������hz���I�8�����3��W:���l��Ur��q������;����l��R��s�6���Z��������L& �)RQ�j%�;�����6�Ox���4�^���&�R��0H�����a����?\r=���Ei���l�qv���|�b�����s6�&n.���X)����V��S6��c:��y���B�^1_=s<�F�*���@�s�!N��<3��8�N��[rE�����-6nJ�����=:zf2l}���n��7�+:�9~����S�5#���-��r��:b����|�|����a�Y�����`��>�@_5�6_���:M�QK��!0���M/��yP��>h�4
�@*o;4�fI��_�s6�imIy����<a�X:�Vr����'.K��c 1t�`����C�
����_c�W�vp��)1��l��
���E�k���.\��~��tJ�/��t���Y��#S4�#W����]S����m&S�-W�o�b�l�z^;��y�\��q�����RUb|���k��U�������RUW�r�r��*��@hX����v�!O�&��� ����)��#@���a�<��Vk�R�y���>S�/�[�$3k���9����Y%g=1�{G��:~�km��4���UI�qN*3���t�]$S�9��C{����K���1�mH�������t����]���G}L�~�������X�������=�=!Wr�M��)��}��*p�wN�NK�1@fj��e�z{k����%�is��
�W�<&�c,e�@� �dM��"[t?P�&k@����_��83���lMn���6Er%g�~��U�7Y��L�>)����.������8�S���j���������Nbw���J��j�d������/]���i���v���.Y��UKV�r��%�_�tp��z�����j�����.Y����~V�s��W�����;�vY��� ���}V�9��b���foY��Y��|v���B��-S����[r%��l���=V���e3�4�oRQHUmg�+?X��B���t�R� �r)6�B@�4��P�= `�4`������/�e� �����������L��Eik��dz�;�M�(D ��1vj��h�\/���s%{K��\�����HT^��N����%�������r�.{����5���1LoIY(�;b�����l�����?Wrt����g����W�h���+}�Tn�_�rN�1���R/������w���&�P�����io��Q���Z��P�����������<qt�o
��;��+Cp�X��[t�oq}�48�BDo�Qr��{����ik��9v���$3c�c�i���8��X!Rt6d����\��Eu�~x��=V����c���l�~k��$��41���c�����h���J�\��������|��'M]�����l�f������wV���s��4`��[b�� ?���� q�2B��0@�0p��]��'����KkpyW:=2��u��I���l]��8�u�O�u�G������2����D�����\?�0@�����~�uge���*�?L���f���V^ k���yN|0S^6o���N��g������3�([�����^9R�OL�F��j��m���������BN@*##�<V}��66��J��VZ�����z9P�i����h��`��18������-R��iqb�H�y���&i��� NK ����"8����"����}m�����2�J{i�XE�s����/;�:s �o|xsd{23:�a�?�^��W����O���z
��X��is�:�����RGJMm������@��@{5�#2���v��<�!�� o�^�,*f��}���@������a���S��G�.]�.<O��D �D3cb���������k|i 9t�����2{j�_�j���$u����� )7%��/�Y����csE���~�zv^��.{��d�������^)��;;=�����C@@*�kRS[0?H|G*�m�
���m����:3!�"@ t0@�<��l��X,�����7��M�mW��sw&��4�o�((�0@���)O��7�������L#d"*zi�d
��tmWUjJ� �e��V��w���\���O�������Z+J~�9�*:wM=�Ul\��;�
! �3��h
�Bm�Zy�ZaH���� �(
<��T=c������g�51�����Yo��-��&����b��1���{rE���B������G"x,�^ V�~��]DmNt��mL%��N��.�����?u������;�ZE{���Uj<��;�CN@V��HU�����H|��"��&p�l��F�'�a��A 0 &�(#���j �,T;|.��y�e���%��Dz�'{x�B�� !��?�E��t��*9���g-M�v�
�,��H��.���D3�?���ZO�UWL�F"=z�~�GW�(������;�R��v������X���1?0?0?�@,5�M���,#�S!�
�� �� ������T����l�-lC��rk��m:Q���O�!�G $D��g���s�y�u�y ���l\����� ������d���N1���V�y���j���9���*9�u��/8w���]��;�*�����2�~�2>����n��u��N��?h!���j��g� ��� a <u���Q�z������z~rU�6C~�,1���=`p�P� !��G`���w9�������2@�T(o
{Sw�t �
�i�������X�6X�����\�u���Ouc��;� 9V��������S��Be�{,g��@�'�W�����;��)
�%�� ���?���bY7�M���Z/�-�e
�����C�}��ja%�BL�kLO��+�2y���� �����<���M�����-4��^���}S2������Y{m��lu�Ko�e����9F�z���&���r�*�����
��
��i4�6A����}!
��� a �~���Q��������5��m�V�P�:�}w`\(�0@�!��!0��Y����s��e���P� eml��r7_vV�&tM~jmC���qik���vmSv��������5S�m����:��=d�z?���&���}�g������h� [eX�rO���(B `�0��~��G�x`�D�=����b4��~%[������G.�G ��C|����:�_t.]�\3�������3@�)Vq�
�rSRy��S+�+�[�����G^������v�=-�����'����u\�T�f�/�z,?����OKMmc���� ���IE�����e!� �d�y���K�fZ���Z� ��h��i���t{�Ul��LV��������G��xFni����h*;���/������16vb�XE������Dz���~{���-S���H�~z*�L�������'RV��S���� �n��2����>���d&��3�9z2]�]IUu�<O�p��r��$'���e}S���[o���i�?�����.8����������I��������� ?d�������[�V!���T�C�B���{�K�'���U���5���'��������#m�v���0��_3��
�4�
�-�F�Ur��'��� 8r�������)��6�Xz�����L�~Q�!\0p �Vp���s
4uB�w���s>]�+$��`��lw?hs"[h�sj��%F�!W���6A��+��fr���65��-��z�s�`����V�����8���. r��IM���W�Hz�>s����
x���{A���Gd a�K@�/0@��?jz� A�Q�4��M�#��8}iz��������N ��[���q[��*t6$�k��=(p��Tv������[�����7MW�l���� ���&�s����lK++�xs�RnJ�j\9�5���d�:D*���f��4���&���F���0��!�7 1\1P���E� ���������~��5~B�N��o0@f�� �C�g������|��+$��Z��U�L +��J*���T�������&��)�}^�.�o�dz���3h~�^V��JMm���0��,z�f������Q�+�s^�� ����XD�H���~J���Vr��l��}2;2�����-� �� N{��T����� ��ye����_M}!�6���� IDAT'������e��L5Lz���k����9�=3�c�����7������'2����z���Y�h
���>�>��8m�`�x;@�}���0��0@�_?�����_{�M�|���=�pe/ `����K1\��/"��}^"�k��x���2@2��e� �bs����*�M�
�ZJ����>����kMg�X���;��������IM=��@�33�Y�@;���k`�T��<��}%��@��p�5�����o����b�?%��������/� q#��k�Y���p��l��b:d�*Y���S?3�]�
$G�6�9�3@�E���>��<" u���f|c~�4����V����~�tN��� ap6e��b���1@�w��N]��{S�,d�`�`���������L �8�o����|u"�*:�.[���� ��zj�����V���LUHW����u}f������>��]f:�t�UrnJ�V�`����E����T�v��'=?s���0DQ��~9zU]��p��!
�&�����)��6���:w_�o(d(��`����p}b�b5��L��~Ir�}����x�gH�qe�vV;�������_�-���~N�CSR����jZ[��L��l��1�[��>b�����.`�+��/4�B�� D�QK�}��vQ'���A�g f
`���0���������|���#QV�R�0@�;������k����������N/��*:�62��/9��C6o_�Z�����J��Dv���}�*���d�2B�����%�5�g��HE�����gTf�SVc�o4PU������������ a0��@�h�� �V{�?i�pi��K��s0U}}��"S=�p�!b��`
���-�?O����=@=u`��\��W�������!�/:�-[���\��L.�+Wrn�z�\���Jd�~4��_�-4�w}]��5~8�k���-S�k��G�%��q.���y������Y�h
�P�� ��t��9�� a����W�Rp8��#H8���B�DI�-�K[�S}��b"���G]��h�9wA� ���,[����Co]:��-������)����(�����U��z�%�V��
c���#�^w����*��g���5'�g���2[h
��pj�m��*���;A D0@<2x��0@�w��M������E�7������1��L!�B�S��,������B��)]�!`��K0?00�� 0@���;���PZ(�����7�W �m�
mE
��d�'�
�X�$��~G����O$����3�P*�B��$<��������/
L� �����CE �A#��(k }GY��-��n��w����C���>Te����A�x�.���� �p xG@j�7��� a�?@j`b;,��� �� a����K8GXu��6��M�m����}����%�B��C��g[�|��8}! �����x���I�~�8���v@��@��M�Q���f�E!0 ��9H�K�c����h�z�R�����N��G����C}$�B�e�(�.������C���7���a����� ���&�-��:��;g��?0@py2�b��U0 ������rS��
���'�y����!������RH�����������'.p,% �V~D ��l�����Mh�~i`b%H�7.�y� ���������41U��&��������t���y>�p��0@���I�
\O����<��' u1����� ���&�e����-8�'�����o�~P $]�qh LhJ�X�����8W a������Z��78x����������~����g�f�s]V;��pj��.���� � ~
<8/��0h �A��Nj _^'V��p�,|� �Z�_�"��gx68O@F�9����Gh U"U�ky��u�w� �`�0����/��� �w��h��j@� %���Kv�{��Ls!��>��� W��G��!����~.��c �Q�#5���g�����|��v Z���~����C`0@�3"��� A�q�=u6B��� ���#G-����,� �����!��!��l��q����A`�dX} ���
���j��N_���3@� �GY �;���n���)��}�@b�Ho�j8�l0@���
�p�m�����l���{O@��KM=��W1M|=�����
�S#�s��a8#�O �A�|Qo�f0@��Iz����kY����?�}���b��| `�gbgb����W�<<�y�|��C`���*)5�8��3�� �����:f�7>�`�0f e
`���(���EG�:V��&��o������� q#:q���k[���$Sh�d'a�_C�[�R�B�j#�G�������*�
�C;d�z��w���� a�4�����tk�n)s<u�g)7e0��-�{����� !��3�����S��O����������Y�h
��'5�~)��r�b9�Bo�|n�0@1��0@�w��M���o����#���w-��LK ����A���M�����L�%�" Uu+�I�'������L{�����m���������{���|`�0h��� Nfr� 1���o�[�5���~{"� 2�������E���8[�k?0�x�q�Q�����@h
���j���r9Pe�u��`x@ �� ��(k }GY��-������H"1r��:��E ����A������s�o]!��B�2��������9�v�]� ���&�����p�� ��YK%��������vq�@S��}�@r���?�p�l0@������-����;�$f��s& C�x��b�7@h`�U"��{s��p < ��@0��h�$��K��}#�=[�h��41���GN��� �x�a��p_�E���dr�������Vo��zl�I�~�6���rGh
�OU�]��rzr7�$s!�2� ��$I�5�B"��L�@S��sM6{ [����n�c0@L�����X
���Tjue�p��!03�W������f}c��4�����K�7�*����6��� Y� ��3
�Z��;�Cy1�9���]�YW�
}���:���?��}���k�$
XE5����t�~v����������T���$=���d&~�f��&�I�4�~����89&`�0�����zim� ���<��
L����B�'�������5�o�s5��MnW��Ey! u>���@h`�h� W�>*g�-�bJ $�����~{�_�$��}4.}�z�_��|�;���0�d�����,�h�������(�!dD}���������q�uY����m�T���)��0@�EqPG�����+���0@�K�a40�v$�c�51���� ����O�i���~��}E�e0���R�&5^zN�
�4����1�)�a0@3���&3c�eXHj$��$����ou�[�5I�kG���]f�+�}h�������1��D@��IM����~�H��t��6A���VY��b����D �APg���hA��l?���?gP(�**HT�H=��~i�)��}O"���<�aV ~i��������5~���� � HU]������w4���o�[a��-����;/�&�2�`E'����y�0�b��0 ����������&%�M���~.���0@v���/,N���;c����u-��G=�Q?HE�����oIOf��c�=�Dw��@����.N�. ��.��l���]V�Y���@�q_&W?�������Tj<b����cp1��\�y��Ur6ZE��\����PY����������o[C��~��d
����Rl��~b����~>���O�������+F?9���]��A0iJ�h��d`������dX}Xjj�o4�� D�Q��q����� q.�� ��Mi;� ��� q�%���b��Qm���+�N&SOYk��L������HfFOJX�gg
�g�ss%�����+:���������~.����������[����y��>�-e�}4.���zf
���l��H�}M2������ �~��o��*�����7����O���)��N�����CsOYc��C\� �\�%5���$=Iz2#?�3�i��?x\��
�URDC`��&�D���4��@d ��$�����:�_�lcT�%Kv�g��^�,1��)k�_�E�3V���*:�O�H����������=[���M�����d�e0@z���Df�����/Y���t|�T��-4>�)������Egs;���|=����b��N�g�����A@�VO���=���@h p
���z�����'��
$���Z�� �+.��kak���'����U??[l\�+97�d[[�$��H<������Q���� q��vyk"3����y��U;4e��o�W�J�br�v=3����m�����H@*���^��e��n��4���m�T�Q��R�� `�� �+�+B�� �+.a��
����Y��~0Sh|![�/o �K��D���J������0�� ���b���%��C:�8)Wt�<�n���4"N�s�g�v�������������`h
��Ph��������N �=x� �����0@\q $���/����|�V�-3�]�j/�SnJ2=��P�&��� ��.+@B���+�[��7.���x^���M���s���s~3���]j�>��H|�qV:eb�Z[d�zI�n�T�c ������tX����
���d�v\*���U������ldW�y���N�eK�=~����� ��� ��:���l�>/Wr��{t=���L�q��R��^������@h 4h�d����^��8_|`�� �Q>5
3W\� �TU���*[��+9s%gG�E������g�vz&s��P���� ��H������������p+1�G�s��zd����</��sL@F���$=C��d�}��������9��[,E�3�@��r��h� q�%#zE�j�����������q�#F��p�1����k�x.$H��0@��_�Kf�>�^��.�x��=<�y�_��y
C�.5���7@h
�V�����R�� q�1@B(Q�C ���bT����������+B�QI�T��l�
F�'��b���k��� H{A\f���j���+V���|������=)�v�!$ �W���ne�I��&=������
m��[a=��(E2� �{��b�d)b`������OYc#�|��\�yM�4�j�rS����O� ��"�OZ��i�����w��0�[��w��$��������H@������h
���k����}�eriC `��� ���bG� �bW\� 1^��D�����w��&/L�K��c�-���/"+����m�a�x��0�*���Ura5H��w���r�|B�DTYd�z����}�/��\���h
�]�V�u��:� ��`�DC���t ���b������5~d�����i�����b�������]
�0@z�
H��C*U��\��� ��{W����)��so��@�vF@��V` a �4�� [a������%��y���1@� ��@�0@\q $`����T����s��;B\��y1MRnq|t<�g���f\�GO fHw��Le��+&H�������!�`�|�L2�~��A����'���>;���� 4��
�z3����0@��~h�kB`*W\� �*�����jGf����� ��sE�UrM�kGEF<���+���"�d�G������~��(�[?�Y������& ��������� Ah
�C5�����|#���"��c��J�T6�0@\q $�:��`�|��V�y�m�\��z%�~!z��V����W�f�y0@zt�
S�<�r�����+�`T�U��e��������KM������&=�a�{������
���������)x`0@�a����� 0W\� �A)�������+9��MV����kJ*;����fa5� q�WV�,LD�*�W`6���'M!������7��)�\ HE����
�4`�� RQ�������K �=� �oO��a"���K a���eIdFOh�U�K��L�yg��{������`���+H���}���>������<ml-7�r���9c��*�z�����
��d���y4��@pV
������ �{ �:�R�X� q�%�����
�h_E?p����jJ�?%v�rU�GWl���G���7>O|���sS�B��8� �u�������� Ch
DF��������X�����0@� ���!������w�L��e��<�c����A�b�����5/
_�S"W|eH0��U��� ���/�f�-�w���(�WdX}UFI�E&�����f���h ���������%����?H�N�L$���K &J��2'�k�i�;��>��� �e6o�v��-����e���V�D����2@���b���WRY����z��?@h
DRz%�j����9:.0@�� q�=�7�����n�P�����Z/�e%�w+A�M ��By W|eH(5D�V��
�m� S��9��h��RUW��I�H&=���������RU��^��}��r��� q?�c��\�/&0@\q $&�������$�\}c1+A����/f��#0@z4�
���|N5J��?&�N�M��{����" C�m���h
��Xh`X}���4�
� ���$�q
�F ��0@f�K�������+9�I���������T�5��R
�G; q��M�F��J����c�w��BS=��O���T�����.5u?��X$>��i�uX�������.+��h����B `��� �����0@\q �KiE�\�T�����0&���,$yX^'V�qq$D1�J`���d����:�O,u������������u��##�[$�1?� @h 6ho�ue�o�T�� H�C�Ul�GzT�/ ,W\� V|�\-�}�NR����@v�!���>�-������G_ �(���dJ���Qw�� ��f�(��! ����6�&��������mh4����VR����El `�t?�c���+P�� q�%�)3\EI$*GZE�.�w��2?�C4;�h��] =z� Wh�4����<s��H��bRUW����1�� @���^RS����>A�o�F� `�t?�c��_��0�HF��H���&���Z Rb%�B������l�v�"����b���k�0� 1J��v�������������
���d��g���Kz;����Fh
�U�����|;��!!�������b�� �+.a���7�^��L����s/������V�4%�o�3;�h����hH{A��ep����s���/0@$�0~H�P{JU���f}c��4�b�������{5e
� H��_� V}\
�� q�%��E�o�$2�N���.�}(��3V�5�?`���++@"���U+Wt.� �����'�GKE}&� /fd�uF6�B�h
���*�sC|��h� �<��� ���@`F ���2�V��$�d���\�y�D����q%��9�|���4��?�}�$�r�S���<���� s� IMm� a�7@h
���6�ju� �o����������83�N ��0@�.�T���o����� �>4G�*�[� !�m`��A�3�1�����/0@f��9�a�=%�G�
�4��@K�U �3�NNI� ��y���1@�����| `��$(�� IDAT��|�������J��{9��_������$�c�F]@ =:� ���g�_:3�c�N�h �L�>6�V�B�Qjj#I?�~h
�4�\����a�S.� `�t��w�� 0;W\� �]0�C ��=Wrv�� p���!��oJ�h_�3b�� ��!H�4>���2�?��[�Z�{�z4e�y�X�Y?_�"RU������W���s-�k�� ��*���5D�l�0��$`�q9LK ��0@�����@�`�����Ks1u���D������{H�&0@���'%� q� OD����J�
f�b~�4�� ���j��O��>�u�K d�C����W� H���br%�:�vq��YL{�E��E �G1@z��z��[@m�';��e���/q����kY�������;+���m� JzHM�!��g�v3���%��y���YZ�R�X� q�%�Xi���.\}�Ut�����>5� �+9��n�0��G ah��-4~���Mmc��A�����R�&5��Y� h
�4�f��~�����o���8 �~��8S�H� q�%�Hj<�J���%���S� :����[�l� ����� �ke������~�z��!l&�4y��U*����!���b��Lv4��� xt��*�&�����M�S+�`����i�
ey���7H�����&Hk����G ��Z�*[�/g��D�(7%Sh�}�� R`�/�@h
��9k`���S=� sc`��� ���F� �+.a�DZ�AUn���v�
��0A\}kF��8���1�� �: =� R�!���%��c�7`����~����Y3Q����3o�kn��[���p4�� ���=����}�g������ q�1@��ljb2W\� 1Y��*{2S{�Uj<��9�/��m�����=*�+����G�2�4K��|�Ut#�M i�~��m�2�V`~�7�F"�h
��4��RQ���D+��c���P�� q�%�*��"�r�_����N������������m��K���� �K%�H�};1q�Oh�=��l,?*�����w�y��t$Ui34��������1;���~�2�^8A ��K AH.V�h���MVz�������$��WFM ���
���{��������:��D<���yC��# k�g���
�4���5�WP�����N���$���$H�q-�� �+.a��L&�~��%��C��ld�W?��)7�*���@���HO��$�j��`V����t�Dk��-�S�
������Lz1�����}�4`��[H����:�n��(�0@:��;Hh�J�bE ��0@b���*kg��\�l:D?���j������� A�/���������>�W6.a3Q����:Z���$�`�� @h`�h�9u�{-����C���-uSS ��u�%Se�r[E{3�]}mZ����F����G1@z�d�����������A?{����G��#]���Y����� @��@{H�f�E�!h��� �|�� Y���<&���K ���u���'���k� MI�?�0��w��6� ���P�l����?$���^ J>4Y�>,U����"�^��^��i��
��(i@��Q�}?�z�� q?��$X�q5LO ��0@� ���@�h_K���zL��d�����A{{<'� �io��2�"$R�������PtH�*� �-��HM����`h
�4���*��z`�d>b��?�A���&���K Vz������S���`%����� ���D���o-oJ���� �H����J�5��~�E�b���;�n=f�Q
���*u����^%��4���0#
�4�
l�!�R�?\a��> �:U3� �+.a��\3�j�_�t��) Q�2��If�no�1@z��W&����w=�9��)����L�qC�>*�����?0?0�� @h�c
��r����Qyf��0@� �nu��C ��0@�#�]u``�e�������~�e��gFGE =��q������l�q[���IYu������z��Tk������8����������
���h@� ����z����� q 0@|'��<`����<���%�)6.eF���u ����P�a�HO;c��M�>�'�o|�m�z�@k�/�sj�HE����04�� �I�w����}���� �{�.uR��� q�%��v�@�=����*9a����M�rSR�z$����� �F��],��i�����}�������W��O��T�= >%������%m����4�U�okN7g2� �{�b�x)ld `���Hdu��Yy�wl��{n���t�qe��l!�� �ic������Xe���q=��\y�X�T��4~��������� @h�g
�U u~��4�_c�@ $����&� q�%$�2&����{��7� ���-Qhh��6� ���g�������*�W`~�h����������!
���$�|Nz-n�03���� ��6�A��a��S�`�� �)�3A`�H�������'�M�*9"I��]&��a0Yy����� =��2�zY���<#Wp~�sE��[����V�q�����z��syL@���2J�
�4��@ ����e�o����0@��>���C�E�D�+.a��+$���}����H�)������ =��`� �RV��u���H���=�/7%�o�*�v�z�$ Uu�_��$�������-� X�6��v��!'��a��\�/&0@\q $&�G5������ �>�1At��h�8-��R`���-����O&����0?z��m�����1�W��V�^LV������@h
��.�a�/���#0@��p��R�� �+.a���;^�L�q.��v�Rk���7��� �i[�5�������[%�/���w�z����@�����B@*�lV��b��bgM�y4�����HU]?�m�?D �=8� 1H�5�0@\q $�Jg�2���I�����#:6%�#�����V*���� ��tBT"]Yg�kr%g1�G�S��v<�'��a�\@�]��e�/@h
���h�Y�����H���� `�DI���\ ���b��
.�U�o#����&��Mk�M7�� �iW���\}�^��/9����G�=�G�IS��20��j��?���a�o���/ /�g.3��6Dh
,^zHE�������=P� ����i� `���H����%����]���0��)4N3��1@z��`Ag���,��1����������W���(�T��l���o4�� ���������=0� ����� H���� ��\�,[sT�l?49S���������C&78H��1@�@j�H2;��l����J��NX����Y
��<�H�}�AM�������Hz�5���������z�����~�3M����nZ(��Vb�7��I$z5� q0@��pjd"W\� 1Q��(�U��b;W_l>-���c�LmS������} [h\������Bl����������l����f�w���g����Nl)��Jd?%��y�y�Y��Z�Dv����&���[�D�[[���&��L�@E��(��}}%��+��:��D��D��D�U":������o���<�a��:��\�f�
0� �+.a��e�������2a�c�����V��H"];���� �n�\I c����Q*�����Z2������?�s�c���C�h��d��GI��!�������GDI;����@�KM��2D�:��M���Hr��xEZ�=/9��D~p�����\|���O~]vQ�w�/����|�x��z����E^2�@UJD��&L�4���&�6J��u��3����1����:}�cj�����67:�60�Z�,����������}/�������/��<�__8t<�d��?���W�[�#oy���D��=&�����VV�,�~��#���
a��Q� 7�y���X�/���u����1A�V��0@�����������V��D����I����)���?W� �i�m�B�+���p���x=cerk�df�����1�pJf��M���K���er�����\��]�h?�Ww��0<|0v�b�����.��32���#D�?����v�%�fG����\s����EyXd��"������c7?&��#"�ly�!�
D�t��/����"'@������P���y��"��N��20a����>J�� ��3��* �x&��ow����15��m`h�Q�z�6;���H����K�����/9��"�}\����\U���~��t?�1`�f�O�-l����>,��D���D�~��a{�����
P���m���*�!��n���/0@z��s%g��������}s2S{y_BH.���K !Qe<��-�w3����RnJ:������ ���%G��}�/���=k:�����\��������I����;��L�_�)�T�� !0@t24�D^^��gD.����{��������D��"r�"W^(r�Y"?���w�)��ENxW�,y�p;��������3��ar�k%I��C���n�@���+��!��A��J��zC������iT���E>����h����wD.;W��_��u����~����s�&�+.9��"�xQ{����qh���Q 5u���V��a$�� �0��aF��N�� ;R��w#r�T%W� ��f8��\���GWl� i���K��V������y~�-gnK�u����
RSO���S�Oo1����(���"��\���D��>��e�����7="���"��-r��"�E��[D.�P��/�|��"�)���fG'�;_���}t�X�&���s�PkB�r��m�
�rC�z5���n��hX���q��{9�E�����?��O"������)��z��6�l���;��>t��uW�����U�O���@� +��<��s�>� a�4�` >�����������K�pu�;���1�H$��������_�eR������M��+�v�+�����F����M�[�*��b��}J���S�|�?D��t� J���I��~/r�9"}O����|�S"�9A�/m��g�y��V����u�_oS���"���W>���ON���"�_'r��M��s/��{E��Q�����2pH uq�J"VY�`���P
�r�/G,��ZW� �U/��%Kv�?W�og,W�l'��.Y��U����� =m���}
��I&?~���3{F@��z�
=�\ou�Q"�e�Ol�{B2�G>x���W�}���I��l�� ���^�1�D~�K��n�9�_#��R���7���''���J�I���~���>'
� ��&��\����,]�����C/���H���5�l�q�~�1�_��HW�i�B0@&�M�"h��
������bUfY��'U��Dk@���J��5c"W^4��G=�:�~���?<Cd����O0r��3���~�g?���m�&��M��y������-VPqc������$B�� a�������m������Y����+��z� f������%Gt�J���/y�����<�#HZ��R��(��Y��No�v�{�3����x!�i'�l|�t�\���"�U":9Dq��r���8�x��[���x���s��EU"�?}�M�m�~��� ��� �8����^���c��1@\q $t��[������������>��v?����3L���Z�BO��f~i���`b��e������U �u�$������c>�c��+�/�6������J��n������N���.�����K�����h��������|P1�� �Ij�����y��I�yi���!`�����/KM��_�C���b������y
�H$�������=! C�����:)�l%��w�<� ����v�#V���� �8�?�]� �������l�,����<���|] ��K3�N����I%�������U�y��|1W\� ����&�)�� q�K����qdJ;{/���Aj`G�P���F�����e����N�*%����<�(���8�]"��Vq6 �^��J��'����(�����"{���u~���*�k�~��i�1@3��
�h[hX� qid�2�s���_�_��e+�ko�q`�� �����s`5������+��D`��-���z���� >%�����+���!�}+���8��"�����HVrNs��z{�O�g�
������I������x�`L����|�_0@"8�av]�����H\u����#�uH�� �y^��������d�1@z�1��8���}<�z7�
�MF$
�& k�IUm&I�C�N�E%r�Y$E�"��_��}h+���'iMc��9��^)��\~����w�����Wo�UQ�9�, ���g�0@O �D f�T#\�|���qh�U����&� Il��}i����x2;��bS��+U�#V��P��^��?��P/ ����'gM-�����}�K�r�+.�����6XUuS�^�<a#4�����w�h9Wr6r���_�HX����� ]m�Q��s���t������X�W�j7���0@|0@�J�;_�$A�$��J
�m�|��^��si��T�Y��SD u��j�~�1�� ��0x�-f� �aw�5���K^��}�Jf�O7��1@��p��.�H\����[oS���/2-&����\51?|0?t"��7�l�L�k ^�*����o���X�!����;���� `�0f�o�0@MH,����;j��������[��������L�q�i��b�=�>�{�B�]^'V����c��L�I�/�T�� '�V"�=J����O*��
~%�Y�_Dyb��i����x��L8o{����1 �E'h:X�s�Ip`��U/ �Q�]�Tn�+����PnJ6g���V� q�a\�+�{>�_�?�����!�]�\���UJ����I�=&�Q��C)�����H���1@��~����M"/U������;��RP{�@c� Fh $� 3n�1(�@��i��r�/��)��6��1@�m��y4\��(9w-M��M�E�W�kTC��1�� ����J����M"��� ~%�1@��.7_/�����Gq�/-�r�Q%2���C�0@��5)�zc������N1@���������o���I�v���k���U�&5?H���N_6]:�$+�0)QVQgb~x���_���/"[�?��+`�`����� &����"��>O��zgU��uk��!&�b�����d ���; E��e��ks%�vV�t���}(�S�UF�z� ���c���-��|�Z���`���8�"[G���y��G����"r���$�|�#���D^7*������L8o� y �*�`�Fh dA #�v��+@"v�5�:��}#H'����L
��I���i?���g���+�Sk�oR���S�>�eRS�y2��$��e�/�=��f'%M)=�_�� �E�k.��U ����V�+�QSn��B �~(w�� !��P�����c�t�\�~�I:� �j��
���w�wxu�z��}s:=����CY�! ���X�����a%-��\�0�W� � � 1?l�"r�[D���~�g\��W��Ls��W!#��@8fFBx�3'0@f�cj��^nV������d���b�L>7XE��e��W��
�����Fi������5/5)�P����:����~��^���g����� IDAT�4� $��Jl�$�(p��"u%����M�p��6X���v��CD ���Q���&�KH\�$DwL����W`�L>7���di��)���2�~<���
�^x~�I����B@j�!N$��(�W�����`�q��b��� �F�'�����<��~i����
�{e��Yn����0@��3��u[a�`���n��!�T:_�:���{�6@R�O��
���C��0IV��K�{�I����@ �����^����6i��a�`����� >�\y�H��x��.L8������}� �L���� !�cP��H[�c�{��� ������@�h�(�<�������a�nz���(���
>i�+b�`����� �Odi��a���k�
��N3��$�� a�����-Hs 1�#Q��H���&�O�pm�$���
{����
���C��0R�] ��Tf��}��D@*�j�����J��n��$�|U��I��Y��D�~S������6�����G�X�������%�1@�������$����V:���M������~v�H:�8)��5]�0@x���F@���-��?]?�w!& �=��n� � ��%r�y�I��� ~%�1@�Yn�������X������� �� (���x�$^�=�������G�t��d���ZM����-����6AQf# �wKM=�E�%��Q"u%r�M�I��� �� ����"�=0����)�R�<�s ���+\���4����W����3^�'+@&c8�$���@��@S�E�rnT��a�5�/K5%��r�D>}�����JD�P��_q� �� ����>��uon����<���� ��p]��� H,�QT:|0@&c7�$���@}�@Y��oL��)|w
J�E@����� ���9���%�|e��E��^$��j�����>�~��{@n����C�`��q���.����h�,0@��j!|����
�=��(�2���6@��`�.x�d����E�4��R�L�}�I1)ve������aO Q>���_�����'���W?gH���}EW+ ��G�'��Q�{�1�� �"5��n�$�m;���b��4>�� q=7��Yh�bR�c���/���=�}�h>-dS��o��Rl�*Cjw��� ��tz�����Sw�?( A��`���5"�<��~�����U k��b�`cXE1@c������aw������M����� ����}�zG� ��n�=�=�������z;���5J���61��& `�`����f�d?�����A�}=��~������rF,j�$a#4���
��w�h�u��[����3��1@\���
����5�Z �8&H���T��������^�����Gz�kj ~%�1@�c.�@��A��K&�����B��Aq&`�0� 1B qM�`�p��=$�dW{��>D�
�ySr��$2� �m$����Z��Arm%�����(����b����F����E���H ��,��Q�h�
?��VI|�t�]s� Fh $� �p�DcX:�=���a���k|����>�6�+A������cx�
W��`u�����|���IC?9a<����%?�o�0�W����@�&��yQA��9s�K�+������>����c_�L ��,��o���}q�q�er�
�S��0@�4���= �OR��b�p�W_-��������L��^��}~��3�NG(
J�wB��L�9���^DE����(�EL �EL��(�"�"FT$ K%.i�� ���������zfN���<��2�}���������U�X�Zn���?[�+l�e�����;}_58��p@��.z�V&9H��o(/_o����� r��L��j�����n�x�n}~\�u3p�
�_�~t&��c��o��1 D:`c� $���j9��W �Q�/��� �[|5�Y�>@� �1��� ���
�Dnm�L�
��r�H�*��(w��&