wrapping in extended mode doesn't work well with default pager

Started by Pavel Stehuleover 11 years ago40 messages
#1Pavel Stehule
pavel.stehule@gmail.com
2 attachment(s)

Hello

I am checking feature
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6513633b94173fc1d9e2b213c43f9422ddbf5faa

It works perfect with pager "less", but it works badly with default "more"

see attached screenshots, pls

It is expected behave?

Regards

Pavel

Attachments:

Screenshot from 2014-05-06 08:04:02.pngimage/png; name="Screenshot from 2014-05-06 08:04:02.png"Download
�PNG


IHDR���sBIT|d�tEXtSoftwaregnome-screenshot��> IDATx���y|L�����L&�/���$b�%"��Z�E�}��RWC���ZTQ��r���RZ��C/-UZ%����Cd�����p3YfF���_����s�����<��w�2���n�Z-44ttff�EQ��B!���x ���l��������P����5���w������eK���[��
!�B������9~�8'N�8Y�F�W�z��{�/������3�3����}E�(�B!�R����]����/��oT�^�)>>>�5jT�q	!�B�����)iii.����dee
n��%��Tt\B!��)������'�EihiiY��!�B�J����9
`!g!�B!��4�\�B!�(BNN)))������C^^j��F������h4�g�
I"�B!�(
			$%%��������Gnn.���$$$`mm���-*���j�ti�B!D���KLL���(�������XXX`ddDnn.������Cbb"���899�V���6�L�B!�����CFF�����[��h4lll���������0233������AgVU�0j���\�B��ATT���111�����������q#���g���|����������ckk��_�PR]�s������U�V������������Z��Q�F����(J�?������Cnn.*��j��U�6�=*g"�������`�/**����s��-�j5���������Hn��������?C�a���%�U�1�w��������c��E<��se^�UY^^�����AT*���:��T*����|�2���i�����=�B�J.==���g�k�������� 77�F�J�b��M|��'l���f��Q�n��������<K�����I�����Lrrr������D� �>LMM���&##����b���lc��
x{{��uk�����;��]c��a�rO��@QQQ�7�&M�NJJ
�j�b��A����l�2��?ORR��k��f������o�I�v�X�|9���?������8��]��3g����u��<�j��8V���m�6"##2d���c���<x�������r�
.d����?��������"����g��
�>}������:t(
6,0���3������L������W���h;��_�p��S�r��]������;v���(����������->>>L�<����
��i���,��G���G�:uX�l�����;���X��m���'k��a��u�������r���!;;�g��;F���qvv�N������0�����s����bs�����������/^��"����z���z�jRSS������7nd��	���
�$Ra��w���=EQX�z5,��>�A�8880e�LMM���o��u+�w�^�;F@@999?~�
��ARRR�3g���>��w��c����5jT�	��011a��A,\���~���^z���������M@@VVV�;w�@2�_Wvv6s������6'''���f����e�puue��9��s���@�����+W����>�X�:�'��������?�{�����f��4i�++��HIIa���<��s������RSSQ�q��aee���<y2���XZZP ���_HLL�[�n������\Z�l���#999�;��x�eggcjjZ��pBCC��e��O������H>��#���K�����cbb�M�J��m#_nn.�}�/^��O?%88��������M������O�t�'N�`��)������ap�D
!����7F�R��{�1|�p:D�����?�Aff&��`oo��q��z�*=z��^�z;v���t._�LJJ
={�$##�S�Nq��mBBBx��W�h4�����~F�Q�}EQHJJ"66��;����O?�D�.]�;w.������j��������������,T��S��u�#G�d��Q���R�vm&N���={h���n�b������I������"))��u~4��������S���!77�O>���W��R�J��{��������N�>}033#::�Z�j���@���i��999��U���P�������[�nt��OOO&L����w����&�B<�T*�v?}����o���U�X�p!C������Y�fL�0��������
��o����\����-Z��%KX�b'N����L�HMM����v��q��A:t����/������j��H!�c����x����w�yyy,[��#G�����=����CVV}��a����:u�.��hh��-����%KX�dI��RRR
�
������\���>@�d1��C##�"��!����kk���;::Z;���S���}Q�:'''G[O�%+EQ���+1ooo������+�9s&���+0����Ffff�>/����
FFFDGG��hptt��'��J�V�R����*p����'((�%K����������/P>''�JU�}�E��(
���#""����cjj��9sx��wY�nc�����|�6�����C���sg~��g������� g"�*�^��W������C���};�{�f��Adggko�V���[S�Z5�=��s������]���+AAAt���@�FFF����Ybccqqq���S�b�|EQ���%<<�Z�j�V������?�w��%|||�|�2������p��Y��|������/��8���i��
={�����b��ul����u���/h_h���|+E��B����,m����dgg#��N�VcddDZZ����%&&2m�4�e����B�SZZ���1F�63f����4
��������n�y�6<�w�}��)S����a��|��g(�B�Z�$Ra����{7*���;w�R�����6���������y�P��^z�={��(
]�t���k�����l�����8j��Ibb"�������������^^^\�rkkk����HKK����s��p��m�������s�������E�xzz�}�v������a���h4���G������f�����������;wpww���Z�G��]�v��x���i��8z�(�|�
���8::r�����JEQptt<���eKE�������:u��x��Rm!�2�Z���			������H����Tu||<���%^.��&M�������������1>>>.7�����H��������4m���� .^�X���>m��>l�E��. �KOOg��]���s��M���O����;w.�����S���t�9���G177'55gggZ�hA^^������{{{����g�������w����?���?� %%��5k������	j���g�r��5:u������y�&�?���t��9����i��!������?~OOOf��MVVV�����9r$������o�>}�:u��p�B�W��������c����?����n��t����u(�N���9t�u���y����$�����i�^}��b��h4\�t����s��y���	�q��������Mll,/^���+h44h��pvv�S�N9|�x���������?�;//����Gb=����N\\NNN��FVV�������%++���h�����$%%�(
���xyy��eK�z��q��qT��������\!��->>�q����{w����F�!++���RSSQ�T8;;cee��(���affFzz������Brrr�~�z�w��������V����"%%E{����3������r��=��;��Y�033c��q���kkk�j5���'<<���0,--����3�u��]rss���������b���&11�������v����Y�&IIIDDD�Otqq!""����B�<���	NNN�$8++���x�g \\\������k?�(##�[�n=��"D%eddDjj*���������������s'''���V�6V�\� ��0a����������_f��q�������O>�EQpqq����s������;��C^^����B��Z�j�����������ddd���vvv�7��m�Z�J��B<�������H�^����[�l���C�<y333���O����O<!�>������������LLL�������FCNN���������I�5�����q�*�!I�� E=]\�bbb�V��G�&88�j�����Gff&			$$$Tt�B�J$��@KKK6lH\\			���������1fff���R�zurrrHKK{�����B����s��������w+:�����0m!�(���L���������^�����dgg���V�7���
9)�0HVV.\��0����?�������7I"�B!��$�B!��4nlQ�q!�B�
p�tfff�{%�]�4u�-�B!*!I"�B!��$�:tK����0�BQ���$r��#�����0�I3g.�^�13{/�,^���������=��
qsk�����������B�d����'&11��k���7'O^��I8:�1jT�����ic���������;;�ygRG.�B�Gt&���7�F��]��h��'�O%))��2={�e���80O�������G��M`��7prj��[k�M�����u�����]��j��Cs��f����w��o����bm�����3x�T������7�������?o��x{wd���\�|c�zDF�h��s'��7o����))i��V��89�`��$'�j���'���}��k��?��}v�]c����o�''{�vmG��~>����S+��kS��
���XYY`d���,B!*��(����%~����'N�g��/9uj��9����B��]��)S�s���\��3��{.W&'�r��A����}�\��h4|����������9��������7�U�����,_�.;w����[�����_�..�� ,�3g�@��^����i��27��}{?<<��Z�����p�*'N��������LH���%K�MRR
�o&:�8����������J�������h��I��K�������~��Rf����B�g��(|���|���|��'�&�'������*������mO�e^y�E������WWgrss��}/3g���6i�0�m��-7bD_��|06����L``wBC��Udd�c��I������C�n�
Z���Y�~����������k����y������KKs�~{"[���~j����D�\��J������m
����2e.u�z0v���_}'N���M�~�w���o�B��Q��>�����������+�L$
�'����C���(���S�v�r��q��������V��Q����O��s�]�M^^II)�l�S���������I;�������B�g������|������\�����o�����n�`��)�������HMJJ�����1���,
�Jxx�{wf���XZ��cU��[r�����
����<KKs,-�qw�����d�Z�w�P1�
!������cddD�.]���J�����4m����'����}GG�	$P(1pt�C�1���H�����_������u���4��j5���1��>YT���DDDS�N-��66V�S��wy������nl�����\�����^�_��+n���(++/����3�s'��_��5��6mL�UAo��!e��
����4#y:[!�x�7n���O��X�(�/g��?�q���Y���Bg��cddD�>/�h�j��S�w/��?��������AFF&-Z4A�V����������v��X�`%YY��:u�={~-�\���DG��@����l�����w1rd?�������{0e�<"#cP�7��u��i���{��Wo�(
ff��T*��TU��}��k�ZLMM���$;;���X-Z����IHHb����Z���=;Up�B!�(��Id``w�u��G;\]�X�p��eW��'�xy��E�W������	{{[>�|�{��M�@����[�W_-���p}�2e.}�t.�9������C�����[k����Z`cc����[73h���]���-[����	]��������aa7��u$66>4i�����0bD�D�*���d��s��E\\Zbf�ff���+��g:F�v��������0i�0y�F!�xJ�����+��ka_��L�<��3tO�#B��pc����{��at��_��	+�����C���iCBB�Ut(B!�(����033�^�~�wQ�,XP������\���k������Oh=z���C=�-�B!�V������H&M�Cjj�����!����w�V��s��uV�x��5�uxF�����C!�����B!��j���B!����$R!�BL�H!�Ba0I"�B!��$�B!��$R!�BL�H!�Ba0I"�B!��$�B!��$R!�BL�H!�Ba0I"�B!��$�B!��$R!�BL�H!�Ba0I"�B!��*U���w�6�TuHHH2x�(C�Nc����]���0||z����
v�adB!�x���KqqiI�NCHNN-�z+Uv�?�����?	�����u����[�vu�����?>�U���3S�����=��W/^S��������S�����f���dff�����/^��G;LLP����<y��������3��N������L�����:
���	M�"�)M���_�������Wvv�pv�c������Z.##��
_������I|U?>}�/i|��W/�8k�&���d����_����>>������>x�;w�p�n$�v��w��T�$RT
11�xy�*4=11��kp��o�\�O���O���o�������}��8��?��~���>������?���/���+���;G��i9���eVe�`��`��/j��\�����M;v ��(r~i�_W�����FFj���p��^N�8����Zn��O����;.����OW�%�oEQ��o
�!*�8?��5k�l)�������}|�w��g���<=������]]J"}}{3j���{��M{2x�T��R
,���Xf�������lO��8p���
z'����f��
d���m����be����&==�VS��K����{�wZ�[�g����;��Wo����#�s�~�������E��|�:��������u�NM=n���SR��G�Zmqrj��Q3
����O�o�	8:�bg��~��Yf�WVrrrP�U���Z5���[��dO���h�����C��;uj��wm�W����++���������/X��-�w����=����]�f��_���h4���hQ�������{Q��k��K�����5�������ss3�x����;w��2'O^`���L�2B��$�g#>]��4������_aL�>SS5���a}��y���W�������l�'Q�Z�"''G�vu1�L������KN��Evv�����2k�na������+W��L����������\�v�c�v�o���d5
_|�!qq�8{v7G���t��R�^A��_\����I�Z�DEg��w��s��L����`���pqq ,�aa�9�u�������M�~����q'��������VR����W9q��_����dBBh�/Y�o��R�}�0���Y���w�����Dh��"�D>,++�3g��E�&�/Y�'�8;���Km�1#���x����X������h�����k+�!..�L��*��Z�7�����+������G�u�?��}����{IJJ���H~��7^}�e�����������E�1zbqI|�#�����}��u����;>���to�'U����'++���~��I��A�`nn�J�b��@�m�Sh�W^y��m}���������\�o�����k�M�4�m�vk���??��5��:������X�������##c8t��gO���??�ukoP��G�~�v��_}��Q��X���MLLf��],[6GG;,-�y���l��w���*���r�*�
���V��~{	�88�1f����2e.u�z0v�9��� IDAT��_}'N���M�~�w���o����'&&�����=wn7o����_&�W������]k����>�U��������L��������p�tbc�����f��4n\��~�p�*������O,&����WR������
z�t�:���9w�2[��h�=������to�'U���N������nR&o�
N"���?��-QQ�(�R`�:uj*GNN.����i5j8����_��s��xyu����|�������������I;����1p`O��nq��_�8q���������2����[w0`

t�A��<##5))v�3�����4h*��M6�M�����!���;w��+���Qo��!'O^����U����9��50�AA��)�����0`���89�coo���C� RU����=��5�~}/&N���}
�\UU�/JY�������S�!4o�<))���<F||"#F�zX�vK���I|�v|���5�U*�}�9/^���C�����{accep,u|��;>���'Y�'��������Sl}\'����}GG;T����u*������{���G/""�5$b��t�6��#��7ob��a<��R��1��yE�W�|}�/.��8#"��?��rj���:��
���
;����ss�������<��K��q��>�\����XZ���.^<������
=��5����8;;��U3���R��������o�� ����7��_��VV��������U3.v?�������q��}�S�.4s���>�/?������7�vv�P��8���dT�:��������t����n����������=����t|}��|Q���CY�u��������t��33S��.��I������!11����,t&�8FFF���2��&99�{�"�������iiddd��E�j5��qE��pt�����_~���v���o��qvv�];?,XIVV6�N]d��_-W��3����>�2zt 7�d��]������������{0e�<"#cP�7�8��w�!�^���(����R���`y31�V��!!���0�v�������L�����E��|�:		I��w�U�6��g�B�|���E~�MI��T*����_�@BB�Wo�K��2���������_~��[w��Od����a����������W����L��LY�I������L��6|��6���INNe��]4n\��C��(��?��}����r
_���3�������]���p������m|��6��?��4������d�YY���T+4��+�rM�����W�M�������Z+�PNX�G�������,u\0����P]quuV��G(����W�����A�u�fJ����1c(]��+T���77���\�1#H����_R��n��t��J���T��i��[7��B����H���Q�Y�Y�?Z����y*u�z��IIg�7����]S��4W���T>��-��O?��xy�+VVJ�NJp�%;����W��!Cz+}4��������.0-=�����>��'�n��+NN�J�j�����2gN���Sx������}K��W�kJb�e��^������P]<��{�L����'&�Q��i���X)&&��
�(�}6���[�W�k��=_�����L�_��u����o�������bgg�����r���"�q���
���$>]���_�L�Q�I16�(��W���_O���4���~�]�K/�Q>�dN���N�R.]��\�rE�z��r��5�������7�[�n)�o�V�����w�*�������`E��X��^	��oo&O^��g��!xx�1o�T�����0:t���w&�^Y�w��i4m����q�U~���8~�,{�����rLJJ����6-'0�{��-�K�O{��%����W��K�%KNN�Q�.,_�n����O'aff�Z�F�R�]��������\���k������Oh=z���C=��,�0a*�
��2��������s��$���/�?�����W:_��/�o���4j����t������3����_�4i��iT�n���A��w�V��s��u.�����
��,��}�O��8��u��E!����g"
J"�B!D�"���B!�#I�B!�0�$�B!��`�D
!�B�I)�B!&I�B!�0�$�B!��`�D
!�B�I)�B!&I�B!�0�$�B!��`�D
!�B�I)�B!&I�B!�0�$�B!��`�D
!�B�IY
!!;vVE���
:�%K�>v��������k+6l�Qh����B�������t�4�����G�$���]��:ujq���j�����2C������O�>x�;w�p�n$�v�\��!ME �=11�xy�*v~�6��`4B����X���;��q��D���f���k�M��d���$%�X�g���������5�9p�(��	�NN-psk��i����-�n�V��+VV�qphNP�l��3�����{���P�����u���,����h��3M���Q�.,X�gg?����+�7�������0��������<�Z������Q�f���H��pt��������{7��MP%����V�
M���'��;R���u9[����R^�W��j������B��/g�8q��{����]dg���;K-�v��L���r������	���������k9vl��f��5�r��/�����S�=��#GBY�t����&�j�u����e�����������qt����0�����{����+��C���]p(����o��@�AAos��UN�����%11�����K�����n�>Lt�q�/SSC7A����Dh��"�D�������3�����������������'++[������$r��W077C�R1zt ���)��+��H���XYY���Lnn.���e�����&M��m���F�������\]�	�Nh�Y��������c��=	SS��|���}�rn��T���6
����gg""�t�w�~4��~�Y�&`bR�6m��?11���w�l�l���4���'�u����V���O����T*��_�����MPi���|qp�{�D�8��/)/��|�/����9s�/����`���1��H{���mKTT,���R�}y�N����EG��������vZ�NDDDi����?y����v�6yyy$%����O����?�WW'�4WW'����ndd�Fc�Fc��ijrrru�w�~45k�=������[��0`�m_���ad�&%%
KKsf�Off�M%<<���;�j�|,-��OU�`Ao�1���{�m�n�Ufu�3���������'���������/ff�z�/�(���x���8:�H m��0GG;4#�������(j�x����g���hF��GX�/��y�����(�c(���z""��?��rEQEg|������cb�����
�����ti�.�������9�M��,X�x&/���?z�5k6�cU���@�V�8�J���k�Iy)/��F����K;I �x
�D��?�q���Y��K����W9###��y�E�V�����{�|��W���
���222i��	j����86o��w\���k���+�������������u����@����_�� ���������5�`��yDF��(
7n�a��������W��DQ��LQ�T��X�cUabR�T�3}��������������U�|VV6&&�
MB<y'������m�puub���z�]���XX�����-^�S�V��<�4������{<m�2|���o������j)7o������)s���3j���XR|_��_~��-���)u����]���-[����	]��������aa7��u$66>4i�����0bD?���*P���������<<��v����G<<���I�B�m��c�>���'�������sss��&	!*�*88XY��
��������9�r$>#F������yS+:�*e��i4m����q�U~���8~�,{����[J�����}36mZN``�S�Ky)_u�''���Q�/W��`B�N�N����Z�J�*���i,�Z�Xs��.^������}�����M�0�J��G��OW<x��M�+�2����R����={)�u! ���wx���e�J�����_�4i��iT�n���A�V�aU9������#�[7��P�BQJ�{&����	
�Y^����=;��g������HB!��R���B!��!I�B!�0�$�B!��`�D
!�B�I)�B!&I�B!�0�$�B!��`�D
!�B�I)�B!&I�B!�0�$�B!��`�D
!�B�I)�B!&I�B!�0�$�B!��`�D
!�B�I)6t�4�,Y���/^��������a���CB2v��2[���������������wG����R�!!!���*:��n_�������ME �=k�n�N�Z�9��U��W_&++���*��a������^�2E������v�������)q��\��0�+3}��<��J�Uq��$R<q11�xy�z��m�4/�h��������U���������(O���m�0�r��ooF��A�v���iO�JRRJ�ez���Y1p`0����Q������Ao���7��L����Y����m����be����&==C��o����/���	�[�g���N�m;����t�<o��t�<���D�����}4h���M{��Q,X������h����<�Z������Q�f������H��pt��������{7��MP%����V�
M�5��o�	o��T��B���o��C�NC��nB@�@��c
�KW������7�������?o��x{wd���O,�����m�z�&��s����I��u����?�/_�����1�����@������z�_������k��s�-����������M�Y�u��V�{��z}�u��������4>����n���K�^A�����y/��f�����_��A���{��g�/I�Zm����g�/��=������wY��������|O������KN��Evv�����2k�na������+W��L���L�����\�v�c�v�o�a/^�-��h�����;����9r$��K��]��aoR��+QQ�Y��]v��_��/����������dee���OMM��?���h���a����o����$(�m.\���?p���$&&�@[~�����������>����`jjb�&���
=W�����W��];��1�,;t�4<=���e��|��a��u�/i|���AX������v��3_b�C���.��i��������a����o��������p�����}�o������k��?K����>}11'8}�Gj�r�+����^����>*���KI�S��-��)m�'���������_��o���wYC�/��_���$-8z�T��G���];?@��(i|���%�_}���`p9h�+����R�=:�m�
�W^y��m}���������\�o�����k�M�4�m�vk���??��5��:�����z���C��={��&�����[�Be����9FFF�m����az������I5��k��A��,pvv ""���d6o���e�qt�������������Z�">>�+Wn�R���{{[C7A����Kpp������E��U����������5�j�i����_������Q���UT�����_������_�]��W_�`���z�/IY��>�G��{����5k���7����Fc����0(������|��GE�u)��Ci�Oi����e��}���X���x��z���U��
i��������m[_�=
@�cx��%=z���@��}7~������D��W�o[��bQ�����u��.T.::���\��Q����(�����'���9���&//���Z��)TWQ�����������DZZ���66V����5NG�j�������������r��]������<������aii������b�����G��wgV�����y����,��7F��y/�m�����
-���*���������rw�Qh�������q�6�|��(i����3p`O�xc>g��ENN.�������^��R�������w�������n��T�?.}^����>*���Ki_J�}J��sqq�N�Q����+���z���IZ0g�r������������MTT,�������*n�������D��G<��}�
��w��9:���q���� EDDQ����NO��[�������_�y��'CQ
�PT���DDD?Tt���cH��RE{����M\���K��q��������VV,^<������
=��5����*pvv�U�f�?��������o���������;.]��j�Z�1S������033%;;G�bbr��%����,-�	���
;����ss3������������t��V����<�c�W�vM�]�]��w��z}(oO����>����-��)m�vi�lA�������_��?���K��Q]rrr���mt��''{��v~~>T�f\������?t)m�S'����w\�~���d�/�R�L����>}^f���$'�r�^$����w --���LZ�h�Z�&::���w��������`�J���9u�"{���w���okk���=�2e��1(���w��������=���7Q33ST*U�w�
�j�~����/gg���e����/��w,r�>����V���;>j�t&::���J���?�
�p�H(����G��)i����3zt 7�d��]��O�����?�������v8:���/����q��m7���DNN.��	|��^���������=�����}�gq�[��S��5#z�z��K�MZZ:.\���|%i�$%��%��R�h��9���G������������K;>�=����!�OI�����������mQQ�t������.�r�?�<y.^^��V���we�� �����?�G������������[~_����j)�F����������Og�j����h������2Z��Kll<��������I�������1���^���j���>SR��j�v�����O$//����`mm��������e�3�;��������Gm��#����c/_I����{1q�P|}{cd�������;��H�����c��)4j����k�Kjj�v���_�O@@ll�P���Y]����?������T*��Y��)s5�-&M����������c�j��Y���oann�?�1���K3�Kz}(oO������G��]\����)m��V�g��������wm�^�}]�}�/II����Z����i��	nn5?~��~H}�W�������������8T�����o����oo&O^l���1"7���Z��T)C�N�i�����{���f}���g���?.M<�������}36mZN``�rk������/�4����'�4��k�U���(�2�?%1$������GO����~B�=P��_���E�?%����I����V�Q�T�~5m��U�kO���}Z������}��=�$�7a�T*�����q��Q�6}��]&+kE������8|8T��2����?�bU������k���/
}���X�*��5��E2i�RS��^��>����������K���U��+��m(������K���R��]*:��n�$�Z������X�^����������sW;������>�h�W�����>���i������t9[!�BT-r9[!�B<1�D
!�B�I)�B!&I�B!�0�6�LMM�a��Y�f�v��	��������!�BQii?�����o������\�t�={~������]!�B��(�9���e�����?���D~������VTlB!��)U�����������su�������B!�S�P9e�<����'������B!�S����
v��N��EDD�[�~��� IDAT��-[6-P( ` 
z�f�O4X!�B�t���<�
�����e���4l�����8�����n����{�O<X!�B�t���|��z$$�.0s������P�����?2!�B���B!��$R!�BL�H!�Ba0I"�B!��$�:tK����0�x������Sn������=��[��
	Y�����X{�|�m;���7Ut����#��mP�����T�rUe\�Z��e=%�����Gpsk-�WQ���[e�~��_�W�	;�|�s�W_}�!Cz�K�}��^D!�����M����"g"��n�V��+VV�qphNP�l��3
,������?lm�R�fk�e��Wo����#�s�~�������E��n?>>��}'�����]3���q�n������c�5�#���=5j�s���2�?**�^������y�^�.p����Ys����I��SR��G�Zmqrj��Q3HNN�+����cl\�����w�D������p�����p�b
�L��/8���D��+n|?*--��]G1t�4rrr���m���,�s��x{w�s����q��:
���	���5h�+��+���)�������s��]��	����B�_W��?�o����bm�����3x���S����d������H��/y��4�OY�?]��k��g�-n�)O�D�'F����w��gws�H(K����?~�,�{�g��q�������U���u=;������@X���0s��z��d��IJJ����DGg��w055��~]��[�vS����_�r�g���,��'N|cc
GY�~	�~�G��AAos��UN�����%11���z�_��~~>l���v��w���nz�_����o����������o����KJJ�k�Qxy���WK����=.�:��k�Qn"�Qi�o�������0��(bj�b."y�t���Z?����-/���!���j�xY7Y���E�
���et�v�r������p>���|>�o������[��GO�������������������7����]�~5���~m���B���9~��I��_��7������2��?S�.���yy��q������F��_s||�B�L��o4Z�$�Ok-�K��������-�r6��G��H�����x$'_Vo���	??O�����&��j��J%(..��k70h����$�}K���8q���00������b���8~|'��t������8dg�	j_RR�;������MK����������������o��?�l��K��#x]y���_�����71e�����	�O��]\\�Q��ag��7�Y�]��zA__�����% ''�O_��m����nnC��9\������W��s�5E��3u��x�9[���T�����:~rsp��Yl�m8;�8~�k|��I�������t~�9����1L"��?�V��Fjj���PZZ��C��o��
W���l���o���AA���
o�������G=A�[��^��}Z;t������z���,-�����7o� �Huuu������Rc��?0��������EMM-23s��3V�������4�x\RR���jhkwo��������#GN���\XYY��-�������n�d��e99���z��De�����t��k��#��k������	tt�5.�
������yF�xx�+�����������i
��K�����-������.���O��>�J�Q�����yS�R=����RS3��G*�j���@��-FJ�!\�r���AL�A���^��������ZZZ�'�����������k�?�����_:v�;\�zW���k?���|�'�����C���������}/����+x]y��=��gg�������[��;��w��Ga����}�~H1���������{�

�������7��I�v�4E��7���y�9����5����jk��������4�-��b�������$�Z��a��={�����{�w�
NN��J���/���5��������BMM-
�`��D�:VV��/T�!^����~=*�
��:�H$y6���������X�.Fc�L���^�
�@e�]\�r���<�|�:��s�T�=KFF=8aa+��[�J�7na�nq���1��~�;v�������v�����7{��vee��_�D@�x��	9��|�����-���<��YX������=�����$$��^W_�������q�	9~����oaag�Y����q�b
<�X�kj}��O.7�\n��GO�]l|�y��?-�K�gk����{~{L"����qYY�'�����W���-���c���>|�Fg����w�����l
�DZ�-�:���9�pt����+V���R��q����p0���c�h7��h&BM�/$~!���s��F� >��/�������M[�N`�-Z4�����c1y���Q����0t�z����q�HO�-*�a��`hhCC���������'��f�����������'��������;7a�������0�t����Op���pr����Hxx8nt��k�����I�O���{�1���o@zz&�rG�����I�!�>L!�����2>�D���5_�=���>R��������;�k���z����sdk<�=��!�������o�����d����M��m�����������<uJK�aj�2��n#���7[w��h�9s|�N�=���S��?�`���-W�b��?u>\��[[k�\�@p�O�jn�/]*���.�R)$I����f��I��;v�??���Qg�\����
���P�Dg�j���\�pE}�rjj���������b�yw6���3V�.�����c�177��9����{��W��k�vt�z�?��[6m�@�.A����q�:VW����\���!***all���#DLRW]��t���f�y9��������DDDD�n�D�hL"����H4&�DDDD$Z�$���_9������vD\DDDD��i$���]���[X�h

�������$""""���9�11;���	_�q|Oe@��	�����:/�W"o�����m:*""""�"4��>}�����Q�Q��D�������BMM-
�`�����
�����-H""""�\4�Hg����w�����l
�DZ���n������v�����:��7xz����fef�n������������hL"����H4&�DDDD$�H""""�I$��X��ng7�{�A"��;wJ���3g.y����{�l���������wv..����]m������5������:��+v�������e���P�9eem5�I$��2	?����z��>S�x�IG�����k���:{|O��������-�/zr��>�W/��[�p�v.����
"��4������6��C��������s{����M��}{#?��#����H�4����n��_j�rFyy%��_	w��;!44R����{""�b��i���������p�z:��F $drr
`g7vv#�ET�7o����?��_��
� (�]��;������QUU�./..���;��ab�2\\|q�v����l��/�8�`f6�g/������??^x���X�f3,,�1mZ������_9���U��:��;:z#44o����'/@ii�����/��X��c�G���ai����3�v|��(1p���y���zB����.��Epp8jjj<����b��)�����"?�P��+**1p����To{���1a��P�TZ>��d��8�������������I��������H�4||�B�L��o4Z>{�R\�r���ii�QRR���5u�=������~;������0>��-��$l��1z�2�R��2	��-*�={������!7�@�=�s�|���
�����{q��I�[�._�����##�$���a������_S��L�/��EEq�rN�J��
[������x���HIQB�L�?�qyy����9��]���[X�h

������Qn�����_���.^����k�|�uYK�_/6v'��������v�'������?���"#�$���`�������!t�JK�1n\(������7@&��d�<x���W���]�~<n}}=���X�l=��������c��
�H$Z>��d��8�M�K�?-�OK��������P]}_p����DR�PRR�;���O�A.7A�zX�tv�N���}}=hii���))�V�c�����s�033���T�_[[���D,^�6��PX`�����{�T*Aqq	�]��D��`jj$j���/$�������
����#9���������ag��?����0Cvv���mNL�N��y��wd2-��&� j|M�,�4zz��H$�1�qq[�z'����#������������4��;>��_qq	F�
���6o��:Ax���������d�;���7�!-~s�����s���e�����s?������D����8���s�?B	9�������gO{|��^Qc ���H�n��
S?q���AKK���J���044P���M��r����M��ut��������V#!��4�x���|UU�
Z���lx{�����E������_�jU4RS3PWW���r:X]�����LK�����55����97o�������"FgYSS�G!/�*�J������O���(KKs��%%e�����v��!�w�������#n`���P�}rr�@���m��Jq���?��������<����Z���7=��=�%�����m���7������#*~��DR�������NT���:��}��W�����v�'���I�R��-R�J.7�L����\����<�_*�X�n1RR���CHN�bbv�J|w�����L����(��O`�����R�T�2�}�X!55��:]}�33�y����D�������=��fg�������B�o�X���&N������A���S?OEE��VPP,x����V���������m�����9���_��O�W�\���L �	�Hju��b��e����&��Mp��iQ}�D`����DnnT*n�������o�������ZZ���&M���-(+�@VV.������S]'1��_O�J����$��_�O_e�=��W''{H�R��a�����������}���Y���K@|�!��������I��������� -�JJ��q�W��@���V|M�?|��^���BYY���/0���C���'��}�!rs�b�&O�>fpww��m>*33		��}t�G���W_�������7��_.���9��{��oM�����������bI����[��<J"� &f
��W�G�Ax����e�����@l�N��u�����.��]k�^:�={�c��P������0gN0�am��U��o���������C�~����:F�|�����Je:���C����������*���!:z%������?�M[������_����y��_0����w�DEm�������[u��������g(lm=�P�c��E�������kj����^^3ac�SSc|��{�B�����v���
�����A��������G�������,����^���+�s�&����v���}���Ca�-_B���oH���������V}����d����M����8�	���@DD���P��������e|��F�������1o�4L���r�6�,�g������*��c�q����$��K�����T*�D"i�c���Y�W"�H�c������D_������X���k��
x���6�	������yf��l��g,z��wt����E�177��9��M���k����^��0Z]WY��u�[�Y����Pg9?V�^���vt�^�&"""z��r6�&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�h�t�3g.����c��102r����V���nz�v�D�w���Z��-88���vtDDD����$�q}��FL�:	w�\��_�Z�Je~�yO�u�9kk�V�'��`���3ao�|G�ADDD�aD%����
����pp����PZZ�Q��k&�,�������pXZ� )������������]�UU���[����/���� ��
����p��=��gdda��`��iWW?L��@�r���0r���i�a���_��wyy%��_	w��;!44ee��7��;�HK�����`g7S��Ip������;��+Vl���\As�z:��F $drr
`g7vv#�E]���>>�@.w����pq�������'"""C�+��������p��~��_���74��aa�p��q\����3���U 5�������Ob��u;�L�/��EEq�rN�J��
[�?u�B��(��w7��}��h�G���������H����F���Kq��u�?�O��GII""���w��Jell��Y
�2	�~�W��?�����R��m�>F�^fP*��T&a����u��������8���s��q9tt�[e�DDDD��DM���.$	f��G\��u&NwwG���>
���">>����6w�T��%�������y0�u�A�����x$'_�nnN�8�e��BGG�����9\�&''�O_��%�@[�;���h����a������e��M����.������)B�o+R���%�v�$	\\^���Q�������2�
LM�yl���B�T*H$�����4h��_���Z(�m������S�|��/X�*�����Cii9��������G�0WoS(�QY��rrNN>�����{��T���y�K]]���(/�D�zM�����Jd�[���FP�dff��{4>��/�b'"""C�+�����<��\n��@�L����\n�LYY�����K�I������9���B�<����7o*T��14�}?�����������D����X���F8v�;\�zW���k?�����$LH���:��F�sIIY�~�w����kt?R���9�*�n�b����+�������h1v""""�D'�_�ii�PRR������XA����0i�DEmAYY��r�~~����{�w�
NN��J���/����eaag�Y����q�b
<�Q����m�|�Nff�����z"0p��V"7�*�
7n����?�~W�������S��;wJ�gx�l��&8z�t�����@~~a�7�$&�����P�T����D"������������D�����g(lm=�P�c��E��n��g����_��prz#G�����\��^	o������i�b����b��}��3!�;",l&M
������Op���pr������5������u/���=�1n\(��o����-�����x����<y�
sl��D"AL����F����{i��s�������X�*Z]�T�c���04{��=�
!!���'"""C2�|��M�
�����y��a�������D���+W.��P�*���pp���Y
=�K�J����T
�D������Y������� %E	HM�@B�1�;������u��;�3������������X�:../utXO����K��aQ�D&'�k�8Z���Hxy���0�zBo�"""���Su9�������H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�$Zpp8�����0����z�"�IDAT�X��3�tX{""jL"��r��)X[�vX�'�����c0e��c����=~""zH������mH��'"��!��HGGo��F���
88xa��(--����5K�|������w8,-]��tPXxAA����	���_���ju��������&&/����o�
�~��_pq������\y��i�������Q������~�<y�����?�����nBB!'�vv#`g7QQ[���n��_�A03�������{��������Wb�����q���BC#QVV�j�on|��:��?>���F�����v��U����\��}�Q^^�b�����oi�����-P��u+2����)x���H8��������_��������ohP'6v'��������v�'�0g�(+�@j�1�=�����u1�v�����rdd�D~�9l��::���?w�2�����E�PPp�.���B��
5w�L��66
�������c��#��n��y�9[(�I���c��e�2	Je/~[�^&���/?BQ�E\���S���a�V��[���f�^�+W����"-�8JJ�����������!����2	o��`����������Q���o����U����b���?`@?8;�w��S�����akk-x���H8�IdP�D���B"�`���lPg��Qpww�C��@mm-���x���ms�NE\\��`������H$pqy	��F������������8�dZ��M0A��
5u�������X�l.tt���<���E�-��iJH����[7
���Gr�eQ14������a������e��M����.������U������Op�$u�WWW��;�#8xR��?c�?�m�W��}�^����Z�DD�I�{"MM�yl���B�T*H$�����4h��_���Zu�������S�������������?���������7o���e�C�v���S(��r���������OS���VE#55uuu(--������9-��������0��TWW--)��+��9-�������_������B\�r���`��a��`��}�/�������Zdf���gl��ODD�D���������&	$�dZ
���&�������=���y��|�K��@��-FJ�!\�r���AL��}5�?��c����C�v���Sdg���},���G*�B�j����{������}�TEz�	��7�A��������_6>v�;\�zW���k?����F���2>!������{��mv���~����<�g�=z�����|����E`���t/X""j��$���� -�JJ��q�W��������Ic�ee���Et�v��y��$&�����P�T����D"������f�
D\\�������w�gO��!Rj����0���3��������x1����������
n�����{����d�T���"�����>�j����gd������P�T�q�v���U�/d|B�������I��-{�$>�����?c�?��vv�����}+F""Ft��?�������Ba��k	n�y������~�����u��
"#g����t�7���ao?�G�!$D�/g����w�����l
�DZ�-Q�������}���gB.wDX�
L�4R��CT��3`@?��GGoX[�b��h.�GG����[ps���i1|���h��-�/6v-��{a�P��i�q�B��~�U�/d|B������[[�����]`k�{�����<����`nn
gg��
i����
s���

��"�6&�?�j��wUvt���y���3.881KT;��OHHlm��r���	��{���Q^}u*��G,_>��C!"�.]*���.�R)$I����f�~c
u.\AJ�������c��������ug�\�����+����kH4����K���fe�b��QQQ	ccC�^��+Vlj����)��	n�x�_s�k��?�^y�����M�>���E�
�������MDDDDO^�&"""�v�$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�S%�..����]-���X��3��CD����p�_��aQ�ut��������~G�ADDD����I�����������&�r���7BC#����0y����k�����%K>F`�|��;��.HJ:(,����wan�kkW���FUU�F��%c����?��%����C��c����������=z��F`��i������u�~O����"1�+\�����`��

����DX�4��q��������eeHM=��g�����X�.F��?�q?��'QTt�Q�����R��7�h2��GO�����������>�l�N����������������D"�����;���������00��Ba���Z��'b�������������!!>���7��&����/0���z������#RR�b�HDDDD-�D��?��yy�P�Tu�����]~~jjj�PX��YZ�#;;O�������������chh�~���w����������Dfff?�8r�	$�F�L�A;��2���r�����4���m�>666��vw�aQ�D~�����BII6n�
>>c������Ic�ee���Et�v��yj�����HK����
���_" `���������������E^^!����k	n�y��1o�
��7��w���8DF������	/�������1���G�����������������S���._N��������
�N"
�
�6Y~��M���&����&����M����fc�}���6[�����O���C""""���7�P����^��u QIdr�������7S���������H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�h�dy���1p�9��kf������9sID�5�c��������:����|�S�N���s-��1�����Qu�d����y��6Y��6��!"""�zD]�vt�Fhh$<<����&O^���r�:^^3�d�����}����IIg��w�.���`m���������h�������/��`e��q��������X������nF�����u�o������e`��e���)S��.��?;�06~����Y5*={�����'/�eo"""z&�~O����"1�+\�����`��

����DX�4��q��������eeHM=��g�����X�.F�������~��BA�y\�t66
uyK��������-���#����-[�S����)��$��(�Je�����r��P*������}�����Q /�6n|��;}DDDDO�IdP�D���B"�`���lPg��Qpww�C��@mm-���x���ms�NE\\��]L�N��y��wd2-��&���@`�������wwG��(��Q��8q�,�-�m8;����V��������D��?��yy�P�Tu�����]~~jjj�PX��YZ�#;;O��������M���

���u����{G����(��m�>&"""z��N"33�y����D��L����\n�LYY��m��y��|����c����F�+�}[��Ovv�#��o�:�SMt���{��v%%e���+����NKK�&�AT���U ++��������3kV ��55�(,��={�oKf��p��5�Q]}/�������o"""��Ft��?�������Ba��k	n�y������~�����u��
"#g����c��-���3�!4�ii��R�����@l�N��u�����.��}��3!�;",l&M
�����v"""z�����A�`���M�8�E�er�	v�����==�7y�JK�O�������6ZO�L���ll�����	������6DDDDO#��&��W�w{��f !���&""�g�3��5�+++s�~���Jb�������a�;�������=�D%�����*�.��k$��FvtN��TDDD����l""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�S�D���@��n�H�����������c;:"""�@���5)�I���A��n
Q�STT���t�����w�\.����r�F��*�$""""�T*~��W����w����������{�.~��(
2��������
����pp����PZZ�Q��k&�,�������pXZ� )������������]�UU���[����/���� ��
����p��=����_pq������\yY�����	����������1���R�:::�������.���~O����"1�+\�����`��

����DX�4��q��������eeHM=��g�����X�.F�N&���/?BQ�E\���S���a�Vu��s����-������t�llb�@DDDD�SRR���|<����J�N
MMMq��m���x�$2(h"��t!�H0c�?��6�3q�(��;��PX������X��m���s�"..A�.$�������
����#9���<&f'��<��;2��rL;""""����o�����xp��W�^�~�:��xO����#����W�J��>���i�.?�55�P(,��,-���������_�jU4RS3PWW���r:X]~��m���,6d""""jBII	�����J����~�X��23�y���D#��L�A;��2���r�����`ii�{�<=g`�t_(�G��~��M�J���>}�����l|��w�����3��.l���{p���$���� -�JJ��q�W��+����&M���-(+�@VV.������PYy��U���R���E��c�F�f"..���PSS���;��'Q��\n��G��;4"""�g���(�TW��W�D'������
[[(�X�v����7���z��o8��^���� 2r6�����W���-���c���>|�F{g����w�����l
�DZ�-�:�11k�=z�{�}$v�DDDD����4h6lX�d��_4Y&��`��O�,��)x��)����s8<=�7[g����4it�u������=U_{HDDDD���XC����E�^��+�SKT�������.D��TDDD����l""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"����H4&�DDDD$�H""""�I$��$�����DcIDDDD�1�$""""��D�hL"�����a�*�Jp]�D�I$�3�{�����\_GG�H"""�g���!����������9&�DDDD�4+++��������z�999����I$�3�������z�j��daa!���`ff�I$�3o��������K�P\\���._��w���022��/��n#��`�%IA�T��6������!�D�_|����y�&n�����jhkk������
����wfL"�MK	��D�����������E�T��H����k^�&""""��D�h��D9r
������V�����'�����������������H������_�a�������+/utHDDDD�N#�tt�Fhh$<<����&O^���ruya��ss'X[�"<|5��~MNqq	||��\���������s�����nBB!'�vv#`g7QQ[��32�0jT0z�����&O^��3�h��5K�|������w8,-]��tP^^���W�����N
�DYY�����x�
�]]���&�DDD�Ljpw�������=���A@@�/��O?�0g����Dj�1���c���066�����_�JK���q��w��s����
x�9[(�I8r��O_�2�A0S�.D�~���[q��U�1AA
/�������
���(+�@Y��Dw�����-��������M[���5���V�_KN�L���LTUU���FF(--��G���qHJ�NP?DDDD�U^^n������H$���,--5�6��4zz��H$�1�qq�����O���o��@
����������I%(..��k7 �H���LM���[�'�b���������`xzo���������XJJ��c�~|��2��&��CK����������v��lH��N�8wwG��s	�F�b�������	JK/3�$""���\.�T*�R�����q��ut��
����o
^�455~����
�R���_���Z(�rKKsdg����|UU�
Z���lx{�����=z��t}?
��z�Ba���{
��������7o���s]]���(/�D�z��7e�7&L�hlr�	����N�����qq	1���qu�/��2d2RRR0x�`L�0w��EUU���E6H"33�y����r�	d2-de��_��$~���>}�[���-��[�3&11;����T*�J�0��~�����������A��2�V�m66
��c�i�������}/�,���v���
S��	w�V�������2hkw������r&&�^q%"""��$	kkk8::���w���������_�ii�PRR������X���&M���-(+�@VV.������S�61��_O�J����$I�$������
nh��0���3��������x1<`#���������-�J�����{����2��.h������<���
������y={�@j�1���������*����(**BQQQ�u$������
[[(�X�v��l��?C__��
����9�DF�V�+��7n:
��~<F�vCH��F����9�pt����+V��V�m���������&�n�kv�����0t�z����q�HO�-(��={������7����??O=z/�����$"""��***�,���?_�i��|���y�0}�o�
�SHHlm��r�����H$�}wvKu����Z��K����UW���ol��5k:���_�p))J@jj�5y�6u�7�t���\���!***all���#����&"""�l4����}��k$��FvhmE"���!�������""""���a���"��IEND�B`�
Screenshot from 2014-05-06 08:04:19.pngimage/png; name="Screenshot from 2014-05-06 08:04:19.png"Download
�PNG


IHDR���sBIT|d�tEXtSoftwaregnome-screenshot��> IDATx���y|�w����w2��HL.q$F�[��	Y��Dc�!qDI�Jm�f)�v����.�T��AY����j���Z%J]�""�L�����kj�`��!�����L�����|K��=�k��M����&VWW?a0:-B!���B ���n�����O>�d-����/���t�=��G:v�h�L�B!�������������=���k���[o����O?<�������Q!�B��
Y�n����<��3�u�6�������B!�w1[[[***�����������G���B!�w��� ~�����`����h�|�B!�=����wj�A�B
!�B8�9�-�B����:���(//������zT*j�Q���e)"�B!~�`0PTTDII	����m�����z���)**���WWWE��b�ZY+�B����z�������`0��U+���qpp����^Oyy9������Q\\Luu5�T��&��B!�����z�������Y�ft���>j�\\\��� ==���jt:�Z��a�Tb����������vB��Ann.�F�"//�����������������;���;������o���+��9���+W�P�zs����|�������;Wqs������@�R�����-Z`0��_�f�pww'//�^��(4o������w��B�;lll�?����e����;w�J�<�V�%''�s���c�v����1c9r�u���9������[�la�����w���������SUUE]]�;wFQ�z�
�)����?'N����
;;;������H!�=����9s������Q��:u*��z�j5�����r�J��}~�a:v�h���[[[������z�"W��Quu5uuu�����E��(����������*jkk��w��1�����j������w�}����;v�E1@��BX(77���'@ff&eee�m�������X�|9G�����V�Z��woF����k��};�<�}�� %%���T^}�U���)((`��u���O8::��gOF�M���M~V]��y�frrr3f�'Of��5������"|}}9y�$�-"99������������\�����_����CTUU���Oll,]�t1i����(++������0���?_s���s��c��1s�L.^������
�_�~7��`0��G�c�t:���t������3�|���HLL.�Y������^�C�,_����|^|�E���	

�����k��~�z���n��!�
uuu������er�n��}�k�OOO��+g:������.PWWw���Z1��������'O=�T���J�x�5k�P^^N�����s'���>S�L1�gN�"Ra�+��VUU1g�k��a���,X����;��U+f�����-~�!�6m�U�VDGG�}�v���G������c���t�����;SVV�/�@~~>�������|��G����hA���J�-���a��E|����O����o�������{�����#GL��+s�����/p��E�����o��&s��a��������/p��������'O�����x�cck�RX_�3@EE!!!DFF��{��b�
prr�neee���;��w�c���Q^^��``���899����������������<�B|����G}�^��G�h4�����"!�b�������<'--��7�������INN���
;v��G1>�E����z���c\�����?�����y���HHHhp$�Vb����f����k����?s��f��A�������8��B����}{�v���(��7�q���{�n:u��_�����1���3y�dN�:�c�=�<��}����������AUU����$%%1d��j5������������7������O�~�(**��/�`�������TWWckkk<2WQQA�6m8~�8���
�:x� ���c��	������i��S�N���?������s�7���x���	�������k���E�!!!��9���:�z=+W����S(�r�<���=m��a���������h��-���t�����;SWWG��mIKK���������8p ~~~L�2��/���g,8��)�b�{z���g�y��_�E��{����?��)S())1___o2��1jkkY�z5yyy,^���K��b�
�N�J�f�nK���r�������v����#AAA���7� �D
!nR}}�����=YYY����|�r���CQQ���V]]555:�%K�p��A�;�Z�&44��@~~>K�.e���&����������� ++�|����K&����mll}+������3~�r7�N�3n���3��z_\k��RWWg���)+��@AA�u��j����K�^��Y�f�����!C1bUUU�0���M�Yff�I|lll��t��j4�1��+�J��(������(,,$>>��K�����n��Oaa�����:E��u���0�_����l������-/���?�<���g��I���7��O?����w��_�����RK�r$Ra���%<u�>>>�����[�ILL�����
={��y������#G���?���[��������������1����i���|���8x�����v���^�'33��m��R��mW��r����[�n�8q�6m���M>ll��Fkn,�_�w�������W�^DDD����_���7��cGz�!�?4���&o������#555��������"��N�RaccCEE���&m���$&&O37��***P��&?c����wo�x�	�j5UUU��j�����'\
s�1v����-[�1c!!!t��������?Z��"Ra��o��m����'��(
�����2??�c������`����'>��s4�{���i��
�6m������[S\\���-�E������}{���8y�$����������?TTT��j9r����'77���|������o0Wpp0~~~l�����z\\\���OP��6��-[��j���O�������.��M������8���k�?��x�<�����~�V�E��p�����J���F�.����Gm�����_�C�,Y��������T*(**����A��B2//���������i�k�����xE����Y3�u�fr��Vb������O��[7t:������s��q�������>l<88����j���|����������?�@�6mx��i��
:t����={��w�^���)//������`���������?������x�Q���z�
�����������)++�u��h�ZZ�h�J������>}����s��	222h��O>�$������O=z�.]�PXX����������c��9���4��{��L�0���|����p��!:t���E�h����T|qq1�����~�����;~�5����$N��]��{7:t��G.�{���W�^xyy����_3�Z��?����G9z�(���$$$��kW����j����s��qN�<�Z��s��������I������G��^�-��t�g$^�@���z�����������J


�����555��z�9�z=555�-F�>}��������@uu5�������x���1�������`�:u��;Wq+,,d���<�����V����!//���rE���'''���QYYi�n��M!uuu�9s��7�+������R��������x����'�����z���8r��g�������'3l�0���Q�T\�t���L���qtt���dgg� \=������&�������m,���Z���)**��������K���)))!;;�|}���������4�su-Z�����X���PXXHqq1p������:���J������8w��o�E�{���
����t:|}}�zv�^����xxx�S��c�^��r9e��N,����`����Nggg�m����+1xyy�����#G

b�������B��i��9���e�,�1UUU�������������M9����.�D
!n��������?���8��7�{�n~��G������={�4��,���������f�����M�-ppp�E���j������������j����oy1��bS�!E��"��]lmyyy4o���'���@������������"�������r��@GGG�t�BAAEEE���Q[[K�f���������-[RWWGEE�}C�)���F����#s��Ek�ct�A�W�-�����������qww7>��M6���TTT��/��r9)��HMM
���vB���r4��
v�RD
!�B�I)�B!,������y!�B+8t�;;;�������6���B!�� )"�B!�����	���D�.pu
$"b�������&�t�:k�!�B+����;������i\��y)�;���C|���NG!��7w������L:[;
!�B����
�$..�>}F���3)))3�1���_a�������Bj�^�����y�`|}{�������/�>u*����?��Kyh���j��x���_�~>8'���j���s���2�

AR�"������#,l�������b��������0!!��x���_���V��3g�?��c����~���(��?������������������qI��/B!��e�����������H��G���-����:��]����u�1cg�~���_���S��������w�o�G|���,Y��������;����W+��SIOOe�����_�V������ �oc��4�-[o2v������5�8����Z������t����q����t�II���mc���+IOO�m[��]@zz*������z�3'���
~�a+�;����������9���f��B!�����^{�W_}��+W^������������0qb4�7����!����>>���z�n���YO�M�6����Y�B���E���h�L���'���IK;l2v������!44�����m*�Baa1'O�EQBB������,Y���o���-�����s�899������\���B!�����?��c_~�%+V�h�����twoy�gWrs�L��C��t������	�����
���������i��+W���t�����s�fj�����O���=�����k c�>CYY�Y9Y��k�occ�Zm�Zm��m*���f�p/�����(P���9���!��*G������2h� 
���
�n�Wm�����W}��F�f|r�q��@W�h�P�m������
���x{{��S�T��-���_YYEx�D��[HL�T*�����}
}-NN,Y2�%Kfq�B6�g��
$&>q�����Z�_OSz-���Z;!�B\C��]���[�o��5��D������@qq)))o5��q666:����PZZNVV�V�����&�Z��D��7���UTUU�J�B�+`��O-�c����:���`���EQL�\^���B!�h
,."��G��}���`��g��z��pp����/������HN�7����?S����oO^~y�Ys����j�KDF>I�^���}���hm��4�n&,������B!�h
�����O��9((����1a����hzbc	�BR�dk�"�B�[t�P	vvv�������������B!��,��F����xyi���B!���"2-��;�����{3�B!�.9�-�B!,vW�II��4i���������nz��}?���\]���t3B!�o���&���PSSk�4�2o^
c�����Z;!�B��������k� ����L�Ok�4�Bq,:�I\\2}��"00���gRRRf�'"b�g����	�����;�������4����$1q�����n���-[>������b��������0!!�L�l�~�&|pNN]i����������,}4g�z����3M���]��Q��j�q��y������c���X;-!�B����<p�(�������R[[�����Y�n#3f����o8y�k:u�`��y���s��.��������%K��EE
$==�'��h��K��������E��OJ�\lm[��j5o��w

r��6��Ic������c��m[rs����<�|��d���[�q�J��Si����k�������j���Bq,."cb�`oo��(L�����7�3d����������'z���[�3k�S�m���e��m�'�R(,,����(�BH�C��������{�n4k���������� ''����1g�4lm[��{7������]!�B���k"��[^�����|���w����8����:=>>��m��dg��;9�I��k���Iff6��a���|����x��U�>}���zJJ�����1����q>**��jB!����Hdff�U�/�����j�M�q�j�
YY�\�������G��������%�8~������#�]����*��'2a�0��w�������b0\{%Nv�����|�Q�B!����E��oo���������o/���a��,^����r��rX��]�7;����9u*�����-�����@EEUU��R���
���S�XO�V�����WSSS�������o�nB!����tvt�`������g���,Z���cW�������_�7o����HN�7���� 3��������c���9|��u���L�6��GG���?~p����U/�$nn.8;;��o23/���e��%����k'�
C�R��.�B!.��������=w���>{��m�~�����~�����O������>e��Ls���m}�������������vq{���Z;!�B����0��?���tN�>��m�L���Q�B!����|c�������i/P^^A��.,X�DH�Cf�������%Gh�B������`X��ik�!�B!�������P�T(���kc�.\x��B!���]YD&%-�����]���<�V���,]�������]���5���I�13!�B�V��k"|55��������Ka���<��Tk�"�B��tW��z=rO�/�/##����Z;
!�B��NgE�L�>��`���������������0rd~~}��!5u/��E��<��G0��=IL\@uu�q���_����e��=M\XXLT�4� ��&$d/^~�b���|��w
�����c�=a����#HJZDX�8��~��������~������s�{�D��7����_S7jTZm?��9O|���~��k�%�B��`�5�e���8x�Sjk��;wY�>��md��q�=�
'O~M�N~L�:���rN����}��W��d�Z����������#��t����q����t�II���mz�f���
���{�>}��5?�������k8qb55��Y���-66?�6�ti,^���������������W���J��>�]����T��Uk�%�B��`q3{{;Ea��h6o��A�!C%44''||<���l���Y��2n�6m,�7o3?Y�Baa1'O�EQBB������ ��=�c�=�s�-`��C��lv��##pp������� ���/]���w?2{�Z�hN�^��<��F��]�	!�B�
,."��[^�����|�I��5��PW������������\�c''?����$&f&�����ee��#}?�p���Jrr�HM���K:rs�	
�jv'��f��TVV��H�����Mo��w��B!��X\Dfff_�������Q�m��h�P�m���1n���������NN,Y2�������/HK;������;RW���773x���p����������y3K����<
~�F2/����F����	!�B��,."�~{g�\���������h�8����k(--'++�U��e��p�a� IDAT�co���S�20����(�����(�����������c�X�x
�{Y��Fyz�"44�w��\.��m�e���t~B!��%�����������}||<X��Y���^�7����Kp������������#h����m��?�}�>6���g0h�\\�0���^�?����w055���c��x1��z��#�����;�'8x��R7�!�F��Q~B!��
��������0a��;�&+66���.$%M�v*B!��E��l!�B���+�X#�nQQ���X;
!�BX�EEdZ�'w*q1�f*!�B4]r:[!�BX��."��5�����'�t��k ��@fw���D�.]w�����'�B4�uy���Ka��������v:��B!��O������I@@gk�q���'�B��,*"��"����QF0z�LJJ�L�DDLb��W92?��x{�������"bb���#_��$&.����8������)h4A��=LH�0.^��5�ee$$�D���xx�Lii�I�/��!!�pu
�u��&�]���@��cpv�w���t�&co4��Q	h��8s�<��s�j�1f�_,���5�B!D�a�����}�[<�)��u����A�u�62c�8�����'��S'?�N�Gii9�O�b������oY�d�q���oPRR�������'%e.��-�����q��)�������R�����?Ld��<��d��p��g�m�cl��M���
:]�'����k������q%����m����HOO���_�t��d�	!�M��EdL����P�������}�y������vrr����^�����5�)��i���y��_�Q)s��YE!$�!��](..e��OY�|����<��T6m�e���><�a��V����1b�c\�����~d��)�h��^�!<��q�9�!�B��,~���{��>������`@Q���5��PW������������\����OR]]CL�L23���������h��s1b�1V}}=66*��*�}z�|���/]����/�������
����B!�e����W}��F�fR@��6
�i4n��6de�������\��=�}��X�dK�����l���HL|�xZz��L�\�]���>}���+c

�i�����B�����_!�B\f��������3(..%%�-��^bcc���X�x
���de��j��n��}�nN���`0`gg��(��8�������1c�K���a08{��6�r]���#��y[�~A]����"�l���g+BC�x��-��x��]����/�B!.�����Lxx�������E��5{��������?N�� 99�������Apq�F@�`��z1~�0c��u�����G�(��4(�����������GkX�x
�Z=B����9s����{����{�����.��&��h~!�Bq����`X��i�:E2}�8&Lv������M$0�II����B!n��C%����R�P�����-\�P6.�B!,g��5BDE
��Kc�4�BaE�ii���<�=�����B�t��l!�Ba�����j���M/�EE%�}�_\AD���>���o�Ot�2W���2���D�w�[�n_�B!n��*"��S���-�N����Ka��������v:�]S_�Bq?���HqYFF&�������'�B�,*"��"����QF0z�LJJ�L�DDLb��W92?��x{�������"bb���#_��$&.������ee$$�D���xx�Lii��}��M<�� ������#���������***4(���D������n�>jTZm?��9O|���~���������O!���X|$����l��~Jmms�.k�g�����1��g����������S�QZZ�������#���[�,Ykv����8v��g�|Cqq)II��j��7��;9|x{���l������1hP��mx��e&������Q���+IOO�m[��]@zz*�������n���'�B�O,."cb�`oo��(L�����7�3d����������'z���[�3k�S�m���e��mf�-..e��OY�|����<��T6m�e���Qt���f����x=����&������n����CQ��d}��~!�B����wwoy�gWrs�1&�X�����
������i����Avv�Yq�����#fc���cc����GG{���^~y�O�������2z��f2�w��Ht�`v�����9�n�i�~��w��B!���X|$233�����h�������j�
YY9�m���x{{��k��z}����m}���~��+~��+N�����8:�SYYEx�D&LFz�N22v3}�X�<���M�1d���=�^������!�B�,."�~{g�\��������~{���
C�`��5��������U�2|x�I?��
����;�3��������1c�K���a08{��6�/UTUU�J�B�+`��O�q�|�������W�&�3w�B!�������������}||<X��Y���^�7����Kp��������M�(����IL\��cW�������[���=zD����Aqdd\>������U/�$�zE3n�3������88��q�
�-[��_�R������~!�B�{����`X��i�:E2}�8&Lv��������%66���.$%M�v*B!��E��`gg�J�BQ�_��p�By��B!����wg5//���B!�YTD��}r���+4���.��l$�B��KNg!�B���EdR�"&M�m�4��n��N��Md��u7=~�����e���DDL���	!���rW��?>�1c"���;v�����-�q+������y�R;v(EE����7���B!n�]ycM�^�X;�������edd2}�Xk�!�B�[`�����H�����g���=���2�>��=�F�L���/��!��� ?����������'�����1������~�l�P��������F�����������O��@������r�RZm?��~,^����o���_����a����uO�i_s�7e�F%����������A����1�vZB!��	�<p�({�n����#f0w�2V�|����u���Dii9�����S�Q^^����(--c��	�l����O.��5���E�4��t����q���4o����ck�����������{�0�Y��S���k�����?Ld�����r"#�(,,&5�{��7U7�@��GJ��DD��rFB!��Y_3{{;Ea��h6o��A�!C%44''||<���l���Y��2n�6m,�7o3?Y�Baa1'O�EQBB�����vs5��9�������6�����#�8�B!����"����U�]����`0�����]�q:]uuz��������\�c''?����$&f&�����eef������q��E:th{Sc�B!�%����W}��F���(&}�j��47�j��~��1;;oo�c;99�d�,���c�� -�k�n0�@�R�������7G�v�9}��u��_!��ngq���[8s�������e��Klll:t��������V�z�������}�nN���`0`gg��(��8�����':]��
9����#��y[�~A]����"�l����B!���X\DFG&<<���������E��=v�����`��_����?��ol
A��}X�n#~����! `��===�A�&����������b��af�t������E�����_^ev�7��{�n|��/^C�V���k8g�\�m��B!�JBB�a����������0a��;�&+66���.$%M�v*B!��E��`gg�J�BQ�_��p�����5B!���vW��F��������vB!��"�����O�T�b��TB!�h��t�B!�����b����w�!�������;�����������'�B4
M��B!�w�EEdPP$qq���3���F��III�I���I���
#G&���o�RS���_DL��xx������TW��=�������h�6�`���)--�����~��,�.����C�����k�s5�&7��		f���[�_\��?!��i��?e��-���2b���]���/��Y�n#�OBC�(--���r�9u�<��+8}z��e8��-]x���f������<���l7�����.�c������c�&Lx�����/]�%%e�?�-��7c������0������d�	!�M����cb�`oo��(L�����7�3d����������'z���[�3k�S�m���e��mf�/..e��OY�|����<��T6mj8���U)s��YE!$�!��]n��B!����D������+���E1n���]�q:]uuz||<����=���m������]`���X������(+�������''?Iuu
113���&22��_�����m�_!��~aq���}��Kh4n&$�Zm�`�F��ZmCVV��m�������aR��o���]�>ht�*�
���6''�,���%��p!���v���-����'�B4
��~��-�9s���RRR�2��%666:����PZZNVV�V�����f�wuuf����1�%rr�0�={�M����_����t�&7�\�}�nN���`0`gg��(��8�������B!������������}||<X��Y���^�7����Kp����������n�"|}���#
g�
�##��I�N���:5���H|}{�����m��4�n&,����m����'�B4
JBB�a����������0a��;�&+66���.$%M�v*B!��E��`gg�J�BQ�_��p�By��B!����7�5//���B!�YTD��}r���so�B!D�%���B!���T����M�^(J��J�X���EL�4�j��-66��K�Y;
!�BXQ�*"��S���-�4��{���y�>�?>�1c"�H|!�B�{��Xsz�z��)!�BX�EG"��"��K�O�QF0z�LJJ�L�DDLb��W92?��x{�������"bb���#_��$&.��������������:x�8RVVq���X�~>8'���j���s��������~��,�.����C�����k���n���-[>����)+� !�%��
��#���d��6u���DEMA�	���aBB���k�B�{����8���oq������1w��}������8{�N���N���:u����>��}�>����e���tF�m�G}i����?!2�O8:��p�9�j5o��w

r��6��Ic���t�����T�y���Z���Jzz*�f=e5���T�xb���
����8v��g�|Cqq)IIoj�{���oPRR�������'%e.��-���B!n��EdL����P�������}�y��� �����D���u�vf�z��m���l���8.6v(|�?����q����0k���E���h�L���'���IK;l�.�)���l��)���A�q���������M���S�
�9y�,�������NK!�7��k"��[^�����|���w����8����:=>>��m��dg��=��<��rrs�9v���u����7��7?����8}�<��������G7����s�.��{���}U__������
����,9�I��k���Iff6��a�����b�B!DSc�������>_B�q3) �j��47�j��~�.;;oo����^����6�/���	#G>f������7@��7�^YYEx�D&LFz�N22v3}�X�<U*U�m��V��m}���~��+~��+N������M�����%�8~������#�]���i	!��&X\D������@qq)))o�������k(--'++�U��e��p�~��Cy���l���x*�����;w~g�������j��P�T�tl��i�<[��D����>������#c�������`0p��6m����s/��}7�Ne`0���EQ\\����B!n��Edt�`���h��>>,Z���cW������%8�q������&}�����xx���{7��+����IL\��cW�����O��Z���O��W4��=C��=����?S����oO^~y��-4t���a���|��g�o�����f�X�n��^����s����q���w�KO�`��	��t# `0aa�?~���B!�MP+V<mV���H�O��	���,66���.$%M�v*B!��E��`gg�J�BQ�_��p�����!�B���7��EE
��Kc�4�BaE�ii���<�=�����B�t��l!�Ba1)"��bcY�t���B!�I)~3;w~O��cpv@�~���!��H)~3���L�4�������B!n�EEdPP$qq���3���F��III�I���I���
#G&���o�RS���_DL��xx������TW����� )iaa��j�6���bc����x��A89u�U�G���Cee��������Gcqv�g���=�I�f�5�&7��		v�o�
��<���6�R!��.��D8p�������O���c��e
��[��3�q��7�<�5�:�0u�<JK�9}z��}�W_}��%kM������'vPSS��5��j5o��w

r��6��Ic���f�;����!7w?))���';L�-]�%%e�?�-:�~RR�bk���]$�B��Y\D�����EQ�81���?o�g��G	

���O�z=[�ng������M����L�����=666��q�x��m��(�w�F�fj||<��LZ�a������{�>�����m�w�Fxx_���R(,,����(�BH�C���Z���B!�<�6����������c0P���C�v
��t������4n��� ;;�������s�fj����|�/������S__OII=z��_�Z������0n������������������dff����������!�Bq���Hdff�U�/�����j�M�q�j�
YY�\c������G������"<|"&#=}'��>},C�����';[wU|�I''�,����_p����a��
f�'�Bq?���|��-�9s���RRR�2��%666:����PZZNVV�V�����f����������T*:]6|jv�������;���������������}7�Ne`0���EQ�#������SUUMmmUU�&7V	!���a����������������Y��Y���^�7�O��4o������o�XwwWV�z���'qss�����}{��y���������d4� �v����a�T�����L�6��GG���?~��������o	�3~og�;\\�(*:d���Bq3�����O��9((����1aB�(���O�}{_^zi��S����&������NE!��������P�T(���kc�.\x=l�����>}�<���jp��B!��1�Og����r�6���+h����	y��i�s������vB!��"�����O�T�����DD��v�<so�B!D�u_��B!����������������'�t��k �n[>Zm?�����t������k���D�.]g��B!��>)"��y�R;v(EE����7n�����|�������c��=o[������q��pr��F���/�vJB!��IRD��t�vw�Y��p��������/�������on�vZB!��	�AA���%���(#=z&%%e&}""&1{�+����__��CHM�@~~11O����oO���$4tII�����y\U����P8L"���c	����9��\���T�khN��������O�2sHS3��jY���9e8(2:������}�����a��<���z�>����^���g��@�������$ IDAT�6��s�!��w������5���U~r�m���+�{�e��9�����d���XXt�o_��;���

]������L�2���|u�����k�	^��k&N��d�^^���a����K�0v�LI}s�Z���	
�GZZ&���qu�����y�����}��
+������[�x�>T*�|���s���d�K/���I��e��Z)_ A�������?8|�K����q!K��������@�_?����h��3f�Onn>		'���}DE���O6j�?����+W����c�I����7���q\�p�3gbX�z���'MzggG22�������K�V-Q*cX�r>�~�o����E��_#6�O���KXX�:}���Q(�qvvd���(�l��O��W��m]P(����S��mP(�Q(�Y��-u�U�� ''����(����X��q�j)_iiJ������=k�|��}��s�v��_����@ T/zO"�����	2���S�����V�#�����yS�(**b���,X���������������M��bhh�������AA�xxt�Q##���FL�I���gr���,^<c�&xxt�x�xZ���~:���o��Ic����������������V����h�v�:�U~yH�_S���������d2<=_���Y����W�������	3�q�@ ��_6nm���������J�B&����i����Ry���"���lIM���gii�������r������GkIHH������<z���UVY�����h�>��hKAA���4%-Z<�����:���[���kqq1����`ff�U�_�����?:>b��9���2j� ���P���RZFnn>��%W�7m�U+e�@ �~��������4�r+�	$������\n���!�o?�/55[��eq�������cP(���t�Y�&�Ri�-���rRS�O���J�{��=���Y������8������|9��W���+i"$E���1����������q#����,�����6�����|��K������l��C�����^N�����������kt���V��@P��=����=$&�$;;���/%�^bhh�����r�rs��};��k�2v�PI�x��!��]100@����$�����_?������c��.q��I�t//7�l)y�NJJ�P�7kf���pBB�����J����������Ui�:���������gJ&�r����Tf9-Z��T�)�����Oq�Z*�
cd2�����D&�0��s3iiJ���*[��#(��V��@P��=������Spq����-+V��l�n�?h������qw�z1~�$[k�f�]��Q�����������S/�[��&))�������=�'M��7�q��������S����+pr��gO_,,�2d���nU��y��$)��:
f��9�����G&��qc8s�.�������Fz����1#7�Q89��������$����e7�v��A}
#Iu�r�|�w��m��+��>}S���Z��@ �Yhh�j����2���b��@&O���GM�������k)�����t�����7�Z�@ �*��o9���```�L&����c����������W?�������'4���@ HC����3�o�3s������%������R]��w����^^�2�@ �!zM"cb����Z��g>>�ZF�G��T�@ .��r�@ ��z�H���e�����!��ip���G���������c��Oh�n &&/���+Z���J/����t����u�8���
���+��=������@ ����A����Kdd8;�r�|<c��D.�b�����KY��s��,5��T�T�3���=���7������N���I�^ A���J��������ot����	s��������~��(�Zy���It�Y���������u���7s�.���G����

]������L�2���|�]K���?AA�HK����?���Y�r���+Wi�����j-7o�bd����I��H����o����Z3dH?��=8}:Fr:���)*�4!!A�SR���O�����q:uj��I����H �t�^��������$.���d�j�<��;			����\�z���[0c�������p�_�GT��2�,��^D|�5bc 1�$���������
E4[�|���
E4
E4�%)�}��xxtc���:�m����..N��_�>�&�=�������������6m����2�G/�+W�E�@ M��D�?SSd2S���{�!�<#F���d�>s��8:�QTT����Y��-���3'�{�AI������q��>[�\n���)��`�.m��2u�[��U��u�>�����_�!!Ki���7�����b�z<<������=���������7QPp����s�����X�@ x����Hk��O}nFF�T*2�L}�M��������h�>��`�q_[E�7n��Q=n\�����b

��+���T��h���������RXXDJJ��;��m�k(�����?���[���XV��*�����eO�e2{��e���8:�����	F��#E A��{������4�r+�	$P��@.��������i��%��88�j�*�����'��iS���*U��+J733��o(_����"��}055��S^���{�y�����>KT��XZ�KN������4��^��/������qs�B���;��:-$dnne/��@ �z/g��o���KD���w/144d���X�r���������[;v�$�f�,��NH�2��3Q�T\�~�]�����E;��;���^�]�S���m�~v�8���c�����T}�3aa+��:���7����<~\()= `4*U���������9*Unn]�x�
II)(�w��y7�7�&44�L-�@ ����H?�a:�~8:��b�<�������MMi��w��0���K���\���=={�ba��!C���tK#O����1#7�Q89����������;���XZ�����U/]����y�����^�qq�������������oJJ��������-z�%��G��O����@ �5���P��5�%evs��Y�e^�kH���$^y��%Kfj^������t����0�<�@ �&������	�d2���:��v��*g��q�t�xA�@ A�k��W��\����5�����n��_������Z�@ �:D�IdL�����L����U����/�S	�@ h���l�@ ���I�@o��jUd]��@P�<w���G������e<�,X�	��
���EZ�~Ek��3��U+o��;����9s>���Gu#V A��k�Fvv.���t�������;��J�$���C�;w����q���3����z��@ ��G�+�nn��2e>������}�0a99yy||�`��O���U+o<��>��;�?~6���89�f���W�6m�E��C07���M��s������o3p`]��{,&���7p�Z���	
�GZZ&���qu�����r%�F������.���T������"��yy��.���[[w�L�Onn�:=++_�������zO�1����Y��C��{bkk��!�������u���pu}���-i��s��>w��@ ���
��I\�?.d���Zy"#w���'�z����J�+ss�IH8����#*��������7���q\�p�3gbX�z�d��&����#���x�����m��uA��f��O���A��F��f������l<<��}�j�m�����������/">���?��x���\������V}ANN���Q*��c�&�vA�����������k�m�jU$�����y���}���H A���$r����� ���:����i�1b ^^n��7������"��=��o����9�������|���F�FF8:���7�������gr���,^<c�&xxtc�Po��6u�[��U��u�>����W���\v�8�g�-F.�����E�f�k������������d2<=_����^
!!Ki���7���8��[���������-{8r��u�P AE�}O��u��>7##�*�
�L�>���ZvJ�]
�pt|�o[RS3��<�}����d�������g�nZ���_����V}������Zy�������?����������4�w"�W�7J��7.D������W���)��O���G�?���TF����bff*YcC��w?���x������F���)ff��l9��~��U�"6���*��\��������4�r+�	$�51���022���'���f��P2���C�Ne��1(�IJ:��Y�P��5����Oj��)�J�|e���	���P��z[�����SS�<������'�s�r�/Gq��123c��Ds��|��.]:B|�bb.�q����4P�}�c����5����522Og�@����$������x���\""���{���!�G����������t������C((x��qw����J�]v�8 Y���
��y��G�w�C�Nj�k����N��L����m�����'��\�f�,��NH�2��3Q�T\�~�]����=|���%�R�011F&���H5$��Vu�"16n��y�����;�\��+W�w/�����_�
�u�Z AY�=������Spq����-+V��l�n�?h������qw�z����n����5j:}�����=���u�j��R���	Y����00��b����1#7�Q89�����j�������9�������^���\���=={�ba��!C���tK��P$1d�d,-����0
�CP��D�!���CV�����K������ELL^d��7�����N�J�~�������0s�$�`�@ �(���P��5�%evs��Y�e^�{	

����e���e����x�O������s���#aao���@ U���r011����L��Y������5���s�����d<���g��q�t��S��@ �'4�kn�Ng����/�ysK�/���%���z����D��y�-�t<�����^^�2�@ �!z-g�@ b9[ �@Pk��I��kZ���L��{�r�NTsY�*����.)��m8������}��L �_Y�x5��=0`"������^M"�h~�yO��k��G�����N5<�DF��Mgn��������,��v�bb�"�[����:������7��qr���9��2r]�>�d#..�h����
����j�_���=�������������?3`�D,,�bd���<Ui]�u�''�f��`��^����i���_������t����u��M�k�����(���S���XXt���'|�W�u}~�������)�������g�u+��I.W�j)hdff��������\"#��q���[������������JT���������������������n&"�K���7o�a����6o��>� ���/��99�?7�MM�y�
V��_fzU�_�]�S�����))g�����������k�[��s��,%���}��W�*��1cf��C22�q��7l��Sk�UD]�j��,��j��FF�j�����ru��$��mS���_�����&�!''O#���,\�)����j����'��g�s�������'�����\c��i�.:w��yllz������}�)�+���|[�K�w��L�0�7�X��kI���'(hii�������?+Wn���D5jGzz����7S12jGRR�����+ 4t��^���3e�|���YY�����\�����xz�)wg����������?���'����ooN��Q��W�h����-17o�����������'����a�`kk��[^x�E��������06n��������KL�0R���_�j����+���+���������^����+y���'*�4!!A�u	}��>]�+����4��S��yobl��N��2i�h�v����CM����_m�70�QXX(�\]�}%26�����<~\��%���DF�$$$���Or��1��o�\.���'!���������d������c��������9�����P=M��/O��I����HF�9""�c���j��m]P(����S��mP(�Q(�Y��-�d��nl����f���x{{����>VQ�/">���?��x���\������V}ANN���Q*��D��V����CL��2�D>��G����?qw��q|��Hlm������W�TzG������������)i��{������C��~�6��z��9�J���w�����2������������9�_^�5u����L����k)FF���K���*�_���r%QoPw���:?����-�..N�:u�G�W�����$r����� ���:����i�1b ^^n��7������"��=��o����9�������|���F�FF8:���7���U��&R���?==�S�~e���7�����/2�:��-[�����u��K��k���\v�8�g�-F.�����E�f�k���30����������dxz���rZM�h�*ll����b��q�
	YJ��.���������Hl�l��O�l���#�����������K���x�II)���U������	8��c��:o��@co����_����+V����,,-���Eo�ti�1�V�X��GWz����\����W�]���dO����^�����\�x��;�����������t�_m���Y����XXt���zO"���?��wP�Ty��yA�N��Kaa��O^���`Kjj����'a��@Z�~�~|���nl��T�e�/���h�>��g)����P�����$6�RR���������q�d�q�B��a:b��9��W2P�������?~��ug��w�i���a���7o�����W�}�c���������/j33SZ�t`������S�e�o�����@lm���n���:�4T�C�z����������\�P��Eu�e(..f�������������JVV6AAa@�C��;���N�{�����+�e2{�����k8:�b���3a�H,-���RW��������M������[����`ke�{������4�r+d2������.�[add���O��KM����d"v�������cP(���t�Y�&���)�7����L}��K�_��R������+����J��o(_���[��������F�����>�'�s�r�/Gq��123c133J��~��.]:B|�bb.�q�����vv6���2�q���w������DE}��ddd������;8�bn�T+���y���q�r�aC�_����%9�6qq�O�����Z��?��rS�����ed�6���";;��
11���\�.�R��cGW���{�~����������k����Y:?T��YW������k�c��.�'�_}�����dg�������044d���X�r���������[;v(x��!��]100@��[����
�����*������/;;��� <|�=&.��������J��rh�:��m���c�&O��^^�6kf���pBB�����J�������>��kI�T*LL���d��%X�4i����1��Vu�"16n��y������;�\��+W�w/�����_�
�Z~�/_[��o*�/�����!"�K�����{9l������V����?77�/���7n�����}�����1f����qq�����d���+��+������-��y7�=&77��;��K{F�R%�����XZ��R%���E�{����/%�/^�BRR
J�]6o�����	
�~��Y<?���YW����G���Ic���&44T�R%H���Gg����T���R5kf�����w�7�<���W�X1�L���s�q���ll���T��A���/�������� IDAT�C�6���_V
�O5m�8���������A��d�j��T5~��t)�+���U�RYX�������8q���7���o���*{{��E;����Jo����m[��7'��j����^h�233U�k�J���������T�[�T��7U98��BC�T�_���R�M�8J���*m?i�����}�����/����s�N�j�Po�����q�F�V�Z�>� TUX�]�������{��_�JPeg���0a����Lec�\5a�H��;���������]��O�����I������������
��J��:t�K-�������R��J����T}���,-�UVV�T#G��JL<Qfw��?
[�O���_W|��g*[U�FF�.]������=3��Y8?K�������}T�������8����UW�^U]�vM����JLLT%%%�n���JNNV����n���JMMU����BCCUz����6�Y�����<����������W'��+�,Y2S�x}i����t�����7+e�p���;w�������sr���~���#��V�����Y�_U���!��m���������`""��ZE{g����s�����d<���g��q�t��S��o�=�L��K�j������t����6��F���e�UE��B_��/��������i0}��3l�+��W\���<�����_@�����Lp��$���5�+WY�b����J�/��w�������r]K�@PE*{%R�I�@ ��a!���@ ���DV�������'�V�%��\���[��8:�*�����]A�,^�{��0������#�HA��6m��}��2������1q��:P&�U�/��7�p�V:�k9�0�k�����,Z�v.7�O���F �52�U��(�w�Z�@ @�+�nn��2e>������}�0a99yy||�`��O���U+o<��>��;�?~6���89�f���o���i�;���66=^���$�ON����XXt�w��L�0G�,���Qt�0���}��i0������ 0������]�~�&ba���}�Q*�hh��+ 4t��^���3e�|�e���l|}�F.w���e<=����MC��������=��k�7�R����O�{a_��
dJ�+j���cc����/��;����,Y�Z+Od�NBB�~�$W��}�V���>���$$���_�uZc{###6o���w��p� g���z�&��'MzggG22����k���_�/��E.���%
E4�}w���;�������V������[�p�"������'���%,,\��j������|��K06n�o�k���!&�b�W"}}�PD3m��J����^���o�����S���:U �.zO"�����	2���S�����V�#�����yS�(**b���,X������������.(��n4jd���~~���� �zz&�N����316n��G7����8��Ic\]_�C�6��7��������������y.|�&M��O
������q��>[�\n���)��`��'�30����������dxz���u3}����h�*ll������D�<������������,~��O,,�V�f�@?��'����S����q�J�L�dy�M��������h�>��`Kjj����'�������Lqq199y���M�WY�K�8:���9:�RP�d9���d�=##C�v{��������E�'�-[:����q�q�B�mQ\\���yy���2�t>|���sHIIe��A�_�!ff�Z�i����1{�dz�����0ad���_�^���o���[h��%��LL�%�5��W"SRR����\n�1���Y.��������������C�����:�����P')��fMB���P��R?�����+����J�������w�����Y������8������|9��W�����$��7��Op�����s��wH��P����W��������WW�	{a/��}|�5�'&��3�������Cb�M��s���Rk��044d���X�r���������[�{D<������w�����.;v������~�<_��G������C'%���ggg���[��J&��P�7kf���pBB�����J�������������Oq�Z*�
cd2����56�4i\����/_�u������^�7�G���Ic������{��7��C����GG[V��'�v�����)�[{���:�b��`�di|��e�5�>}�|o��zi��u5II)��n��,e��AH�bE����3��w���{J�C�>2rNN������EW��BR�-u�B���!����F���4�AA��>�5������Z�����������|�������k�aZ�v��Qc_�����^�����"��I��n�k�l7�Q������c��������k)
����t�����7+e�p���;w����*����������e�o���O{�)����o�����t�4����$��	���������tI@BB2��zB[P����Dd2..}�~�����t��b��\�^���k�x�j:uL����J���K�������9���h���y��	�[]�jp��{{{9�{�\�R�@ T��^���?11�kJ���3�u-��#���@ 4��l�@ A� &��	���U����tIA�n�qt�U�'��VH�[[j�������Z��N}mW���l���
�������u�u�AM��~��z�X#T�����i�����[w�2x�����}s�=����HI���<u���������PD���F��}*�W����_����5i/�ME�����D
j���,Z�v��}�>=�QM�S�����g���>u]��._ �I���m|�����6�/�����0a�rr�4����������J�V�88x}�;w�1~�llm�qr�����y����v��]t�<s�.��� 8x1��?��?9�6`a�����2a����^^�[��A����g��@���%����Qt�0���}��i0������ 00Lm��W@h�2�����ug�������������}��
+������[O��z^(,,��@�u\W|��{W��4o�R����_������J���(�w��������v-	W���#--W�����g��
�������k6lW��t������[W�We�\��H�F�HO�T��y3#�v$%�H*���G��MW�I9�V�����?���s��u�E�����t���~�u��E]��uQQ|Ji���OU�gd�a��`,-����H������F�Wt~�R~y��R�E8;{q�������/>|�{�V��1>t����OM��=���p��������B�,Y��'2r'!!�\�~��W���}+f�x���|N������:�������7���q\�p�3gbX�z�d��&����#���x����j�?����+W����c���U~~~������K�(�|��!22J�L�����HL<Ivv.aa�j�U�� ''����(����X��q}��^s�^11��YQ|��F��f��qe���U��(�1�\9�o��o�\�}E����
E4[�|���
E4
E4�Uk��n�O���*��}��xxtc�����m����..N������r~�u~�r�-]�;w��FMg��7������~���Q����]�P��[
uy��EE�)�}��?U�?c��4jdDj�Y�lY�w��l�O�e}�K����;g��i?{6N�3����(��c|@��+e�S�=�?~��&�d2�N�c�n�@1b ^^n��7������"��=��o����9�������|���F�FF8:���7�������gr���,^<c�&xxt+�E���>4mj���!^^n���K)����&M���:����)vv6��f�����������V����h�v�zR?YY�\�z�L���KX[7���-�����
�r���*��4%?�t����I�����C��K�������K����BE�_�g�T?�l���{��}L�2V�}ETG�H�]�W������;;v(c�������q������H�~����R����.���P�������"�����w��������1f����)����=�+�����g`��i,Z�
��g�o_w�f�_*�����OM��=����������;�T*d�'��m���e�T����H�����f��>y�>�h-		����G����|������������-���������i\��U~�~�FF����

(,,����=���Q�Eqq1����`ff����y�����!%%�Q��~�����j��!������c$�wd���Zy��WY��)h��I|�l����U�������K����BE�_�������?����������4�w�Ve�UG�H�]�W������*�@�&�_��T|��B]��uQ�����OU������\}��A���Q~Y���{�WD���|�A�IO�$:�,iiJ22��������Jy�+u�S�}%2%%���i��VZ'���C���022���'� ��f��PR���0t�T&O�Bq���S��5	�J[CY�K���*�����W���WT*�z�����\����Q\�z���X�07o�'�,���#��!&�"7����!`ggC�^/��W�L�_eQ��w�>�G$33K�.]�R����@R�T��R���LL�y��P�wvv�FzE�_����?��|��>�n������&���EU�Gj���?]��7���X��R^x�		�U�_�����P����_R�����j�TU�������[���[��A��������":ujKaa�7�f��W������������U)>����CU��T�'�_}�����dg��������!�G����������t�����C���<���+(�w����d]vv6���Ax�:=zL\�%:)����7kf���pBB�����J�������������Oq�Z*�
cd2��/���&M��
������
^^nl��(��=x�D�y�/_�u��.{�����J������R���:th��31@����'������3u����g��Z��Ve�U�}�������.�[!�[q����py�Mv�>���G(,,���{��sX/���]�5Mm��K)o�H�������SU�FF��9�������>�����SJE�}�����E�e2}��`��
����Kz���d����QJe��.���T��Q�^������S������}Y�b�d�u����YKi�����3v���J�f��]��Q�������o�����I��u�j�L��\�F�.�=z����Q~d�
�{�3z�����,�4��S(��9�}�����5��o(AA��>�5�����e_)�(�������FVV6���=z3.\(�o��o>c������5�P��Wv��k����+�"{����}kf���m�����D�,�Y+������{�q�B��i0/����}�����N���1~��u����J��4���&�Gj��:��J��dl�NH�R�Ly��3���w%������m��"�:�]LMM�������*�_��CMS��R�?R������������?d��88x�����
�(_��Aj�Q�����o_w~��7������������CJi_]�
U��:�����2�BCCUk������m�f�;��

����e�����E@�\�w�HX����_��S������_i,M�F|���am�2��G��7����)*�/���W_��+�x�O��IU�GW�����@��0~*B�}���g����/jI]	������P�������[&&& ����/�Xxxx������x��J		�<x���PH���'"��pq�[�m���g����Z[&�n�Z]����g�8}:F�S�����>��������_����W)����������tf������7�d��0<=_�kY
_��O�����#QQ_W�"���*#G�Z'eWu������^��r�J"k����um�,�OCf��5����Z3cF@-�)����~)��Y�_U��j��z-g�@ b9[ �@Pk�I�@o�j��+<xz���/��1�K����k��	[Q+{�
j���M��pu�O��}���p�^N��J\����RO1��+�=��So���"��~S�����E|�
E4?��Gg��_��G�����4�k�@ <������%<W�+��Zc��]t�<s�.��� 8x���������C�f�i���z����$\]�4���L\]���Z���T�����}��
+������9@�)�}|�`��O���U+o<��>[-�32�0rd0�����c$���5�?����t���}�����BC�������;S��'77_��+Wi�������7o�bd����I��{�\���c��h��%��f���d����_)(���!S�Kaa��������A�qu���A���_������J���(�w��{}����/�^�������q�}����ig�������'9�6`a�����2a������_E��{W��4o�R���U?���_���2~�?5��D
j
###6o���w��p� g���z�&u��s5j:���Iff,����zO��m]P(����S��mP(�Q(�Y��-���Z�99y$'�F�<GD����H��K)��;			����\�z���[U��3��Q##RS��e�*����d[���E��_#6�O���KXX�$�������������m�~��=pqq�T~}o���;����������{�w�y�~U������c��)�n���[W�_�/����������+Gy����������j��2��+�����m)W���&�K��:��CJ���s�����7�Kzz�F�Ki���g��wpvv$#��imkZ��_��(���rS��S����u�O�����S���lA������h���0bb.��m����c�2f��d�q��W[�2����z�:]��������2b�@��J�\57o��y��	�����?��'wbjjB���3f������s������#r���`��@���[.I���~��__�����u�-��������uK������g���%���YY�����[��q�����C���xy��_>��������e�*�4iL�>=������_m�/}�_yH��I�^�m[�
{E��R��?����:�+�6����	�4����WY�:~����_���g�����,�$RPk�<�}����d�������g�n��7n���iu0�t>|���sHIIe��A�_�!ff���u�/�M��[:J�]
�4^��� �<��q���� ��(..�������6(O����g����Iaa))i���\�����88�j|������G4i��Z�������7��G�p�V����R����\��Q##�rYZ�@�%�-[:PP���\���jKY�3�*��+~J'H��M4�K��//~J�3��O����V?�U��R��ST�����>��&�e!������:t*�'�A�8NR�)f���J�$�/� !!�B?6�`n��O>Y��KG��?BL�E6n�!����<�xu�������P}2HMUj�111���B���������B'Nl���(._����cdf�j����off���P��z[�����SS�u���_�������7��I������c��1b�@&L�CQQ�����_Y�N~��}r�[ff��zC�����_�}U���Oy���eQ?O�s��\[�k��EE���W�>�|��j]�S��[���	�$RP����Op�b�cx��!��]100@����4����?�wd��#q��=��9���E;��;������S\���J�����L����"�R�KA�������'5�2r�@V��������_�j��p�L���h��������		YFzz&*����o�k�~��M����m�����'����>�)_����������nf��a��I���/�����3���U����l��rc���W����q��	I������
���W���?�Q������_?������c��.q��V�X IDAT�J�����R?��
�������]_}Q��]��k|V��-���[e�HA�s��Mn��d���X�v�FM�O?�����F�n�����+7`c��.]���xS#O����1#7�Q89�����J��P$1d�d,-����0
�CP��D�<�R�KA���;,��~��<|�O�QO`J�7�M��n���`&L�C��n���+pr��gO_,,�2d���n���o_w,-���4�{����?���C��ygg/�������J�'%�Ki����;��z�&�+���j�}��g?�3����2e>��yH�������"}U�?}���TG�o������r7BB�2z� �L!������R?�L�������3�.�����4/�q���#2r'�~�#..�����9�:���������gU�o)��*��;[�7s���#aao���GNN��/�}{~~�*���Gk9{6����������x�O�,��;s=C��<{���=���pqqb��9�mD��-���;[ h�8q���_d���u-�L�������L[�Rj�g��#���8>^��rBB2���	�?uKM��x:[�7���5�~(�w�,lm��1#��T��#_e��W�ZF���5�+WY��}��A�}G�_�R����tf������7�d��0�_�T_�G����f�_,g�@ <���l�@ A�!&��	����������e�>�dm�w/��|aa+�����������������9�/�����/]�Fc������@�_}��_��.^�{��0Q�=��GL"��B��?������_c��Q5����389��������*�������!P��%�:������������8V�e!�<s�����%�����D���MU��Q##Z�j�Ry�	*B\�<3��{W��4o�R��yy��.���[[w�L���l��5�����k
$+�d��k��pu�OP�<��2qu���kV�����7n���M�v��p��=������;NN��;w9>R�gee���6r�VV/��9F���}�`��]t�<s�.��� 8x�z������C�At��C�N�	_�����a��W
�����C�f�i���^�=<����6�/�����0a�rr��������
.��PZ������������.)���5�7	?�Y�����WPp�!C�0�������?P�I�����J���(�w$�;?���_c����co����OC����t�WU�/E���/����t�/��@Faa��qA� &��g_��(�L�6�����E��_#6�O���KXX�F������7p��Q=z����m[�h�l�{{�h�h,xK/�{����>��������q�������OB�	~�uQQ�5��Z��rr�HN>�Ry���%7�K_y�022b����{7�r�L�WoR�����/{����tI�B�w�"#������s�.0j�t��{���X~��G���R����I\�?.d����4]�_Jd�NBB�~�$W��}�V�������o"9�4w����w�������99y2����{wU�?p�=�����,**E�r)MISs�0A�P���-/�i��uO�d?��R��F��L1��j�`�%�����/"������l3
��y=�g�w?�|<��5k�.Q�j�������v)���q��S�YX���7����������������k��R������i�:���o��~���j��u..�8p�����_�:	"�=!/��������f������9o�5�M����
�����Z�����r��2r��<��-Z�0d��J����DG�0c��XZZ�����Gu�&&*rr�8s�*��=������k_h�?��]h��G��!6��������Yc\]���#����e���f�}k�b��6l0��j4[����U�n����C17o�J�b��@��v����������))���+����o�KK��^":z�^ZM��!�/''���Cprj��e(������L~��f�|
3�������Y?��C|��,&2q�{l��	���}���}��_��������~���$~��O�7��W_m1j�xrO��'�?m����'+�8+**P�M(,,�Y3s��,�2��V�\t�4[e�I3����l����{�_������+�O%99_�|��?��������9s"��O������B�w�������X�����j�	ee�o���?����
u��;;�������B��������m���f�z�yy\�R��Y�Z�C��O?�B`�v����������IK��{�}�����0c����o������UW����~�����P�|��.]C������h���Q���3���j����F��~Yg��u�>����wq���\�t�� ������"U�4[LM����+�RS3���XZZ�h���vr��Nbcg���u����K�������j���x�I�FT�N���������I5����rr�M�ih4��T*���u����G�nZSS3�������A��!�o���l��	C��g�����_nw�\�N��7�q�t)��q_7y�l<=;������k.WW���7~������Sg4���w����=�T����2M��E��e��������9AA�2y�l��/���8w��6w���SK23��Z��Z���o ,������t"#���Qs��g��t4m��J��?���_qq	%%W������	����_�������s�FVy���qADEm':z'ee�de��ys�^�{}��^�������
�A�a����W�����-$$\������K�v|�����|�������nw��l�//w����
���4�o�gP����{�!V�Z��M���{9�k��/��j����Ri�U����vTD�:w���327S�T�X1����4k��7�\��yy
���7+Wn`��m����s�!J����qvnE���4o�������x������g����}qv���9��6�*,[���o������I�O��k��<+�.t�<�z:�N�gggMd�l|}_�W�@F�z�>}��C���
�������-[��`�rZ��F�N�$$\��s�����!x{����7�����?MI�m��U��������L�6^����p���a��!��:s6l��%K�������v�����{���������4���a���l��1���������w�DVV.P��eh���+3d�����c���r����2w�0ZHH]�v$<|\CwE�a�����=��u��^�����I�=zX�����������nE<�� ""�Q�����B�z�o�a�v����iE�����d���f�Z������<2�����C��F��D�V���F��~oQU����0!������s���s�4t7��������_��e�����n�~���s�����x���l!�B��\�B!�w�D����r���=�;���+>>/�Y\]���u/T�����Y�u-$$��9��Bq�y���[�����Gn��l��y��������7��g��C8;���6�B!n��� 11���i�n!�B4��Hww������v�a���������y��3?$(h
������{� ++����������'aas�r�T)���x���XZv�E�n�?����5����B��!4o���=1b����s�.����4o����
"33K����b�L�M�6^��{0f�t

���^���k_�?~��}y����/��,_�N����0��m�l"��}	
�FZ�%\]������+yrr���
��[�'��cX���"�B�p&���?��Y���q�jo���R��+70y�(�����3?����	�������}=��]��Mejj��_.$;�'On���X�,����G�|�6m��8FD�;l��[�\HH���&33���q���P�����Sg9~�[���W@x�<%}���h�{i���+��������it�o�C����e��i��Z�^��������g�����/$)� �����x�&M���}!�B��D���)*���c���Q)������r���G��������*�&NIT�v�\h�?��]h��G��!6��A���_������5�&M������w�LZZ&?��3g���Ycz������W������G��hli��������M�+�_C�__LLT���q��9T*=z<����k_!��_6nggs��5Y�t:T*���C����effSVV��cKe���=�������0gN$��ITTT��_H��]*�UU���qt�W�9:�S\|�rrZZ&NN7�o��AI?�����OV�RQQ�ZmBaa1���W�M��}�>��\)%8x*�������O�aP��B!�a����������hl�HS����k4����II�q�^jj�����K�������j���x�I�F��U�CU�_�'55���3+�gg�)�.]�Q���q`��u�>����wq���\�t�� ���7m���W���yy��i����U�cbbR�6�kge-�A\�NN��Il���X����!�B�� r���$$\ /����UOr�V������)(("%%��������%��\���3&&&dff�~�w��e������y�(-���q���_/����5k��B'99����)����	
z���g��~	�N��s�����m�J����G:p�P,�������k��Fc��=?U���SK23��|`&&�g�&���h��	*�
++K��/�Ba�����!x{����7�����?�����}���9������y��{�����.�GF����z�
d��7����Q}[�v	���h4�L��>~~01�1���#�����>e��W~���8;��{w�7����cHL�hP�����q$&^��G1b�T�z��R=*��+�6�f�:��������3aB���8;�d��H%M�Md���XYu�s�!����a�_!��F�������I�=��LBC�qqqf���
���JHH]�v$<|\CwE!��I��~��qqZ�����}���B!��n�t��,%%������+��
�G���[��A�j�i�n!��D��n��~�	�~���k�n��}�J!�����r�B!��3$�F		c���
�
q�
��7g��./���� R<Pv�>��s�+�����~ /��{�m�T���/������!D����[��Bqgu&�����/�~��]}1b*���zy||^f��	
�B�v}pp��������%8�u��=pv�IX�\�\)U��������;��O����J3��T?�?��=�am�'��r��.R�����B��!4o���=1b�Q�5k:~��M���/���HK���k_\]��`�r��_l���ci��-�1~�,._.1�|mj_aa1S���M/��=3f:Eu�~M������!�GG����/66�W�o'O����Qe<'N�aa�����������J�Q��IO����p!S��ILL6x	!�0���������U�8�W�����K*�Y�r�'������9�#nn��0�]

�������[��� ��P�-^�9���$%$3�o������;v_�W�6m�.��_�)sb��CM����o���#���x��i!kR����C.h�{Y��CZ�j�V��v/3f���755��/��}��'�s�P,K�|ap���6��������?�-		���+ <|^��_������!���B���K/
��v�������-[~P�}��V|}�Q����|m���������}�W�>���8���B�� 28x(��MQ�T�HT��Jy������)�,--ptlIyy9��1�����n���DEm��99y�9s�JE��cggmP�+Vl  ��a�cj�F��e��g���G�?���8p�(�fM�I3<=���xC����������F�LqtlI`�bcO����6��������>��FcK�f����6m�^C���m|���		�S����
6l����:���@���V>�]��1c��~!����'�����ek22���t�T*e}�m+�������\	��IM�P>O��
W��<���T|}����P�T�T?������	c�$��������������hOqqI�:�c��S����0gN$��ITTT��_H��]n�&�����ks�>Y�.UTT�V�PXXl�jR�����3b�s���Gdddq��Y�^-c������� ^�����������&�4B�zd����������hl�HSSu�r�-��jRRn���������?���,Z4�����:�����Y�b}�����m['��������;~����J����0��111A��\������2z�0��=$&`�����VW�6����e�}��q��.N����3?r��q��V�7d|�|n�}g�V����M�������l���[i�Y3s����-�]��� ����Zg�B��� r���$$\ /����U�O_�V��7��SPPDJJ:��k	�V������Dt:M�6A�Raeeip���"*j;��;)++'++���c���G�?-[��woO��[Fi�UN��c���F�m���������Jl�PRr������������Uj�����m|���	
z���g��~	�N��s����:i���������	�c��h6o���K���?vl _�����c��a��G!��1:����\\z��h����.�l�XX���}<<��_�'�>}����&2x�h�������Eh��<=��e�r,XN��������F�O������k�����F�������7�QC�7��L����/��=�3'�vi=2r6�����W �F�A�>�+�Q]yC�6��+��������i��3��!1�b��o���������p\\z�r�6n���Ko:w�W> ��?�8�������
R���?��VV�XYY��-BQ�TS�L�}���evw�e��Q�?�\HH]�v$<|�Q��=~BC�qqqf���������>����3#y���������B�~�5��M�bbb�J���oU����'3����/��".N@||���3�	����>�����'8x0V��B�;@f�F��D�V�:�7%%������+��
�G��x����-goo��	!u�c����w'���=�d�������S��!��-F]�B!����-�B!���*���c����|�����SY����0��\!�x����D>��@JK�6t7�B!X�d��W����B!���������3���_�kWF��J~~�^���9�C�����]z�w�a��r	~{{��{6�+WJ����i��q 66�8���<%-:z'��}��y����^^�	����pu������!�B��a�=����AL�*N����W�x��%���\����Gq��~���7�vL��.E������-��u�E�V�����|��$%$;;�7������B���K/
��{����������Mi�U�/_g��B!D-�"���bn��J����DE���g���xy�`ii��cK������a��W�u'�$*j�^��P��o���aa/�����`aa�Z����]y��B!��;F�vv67-[����N�����C�J�23�)++����K��IM�����`����WP��wM��,��F�L�|����B!��0F����7-�����R������+��hl15U�����KM�����y���
3���vS!�B�#�����7��p���""V��?��rj�?��,X����"RR���\K@��^����BB�

���?�d��!�vQ!�B�3�_�8o�1ddd1h�S��?�����}��I���}7nL@�`�O��' ���IM�`���X��M%��k8��i���QQQ����h��'On����B!D=2:�����%K��6}����M�hl��qi���o����7����M�}�\!��>�U�
!�B�{�=9c�hX���h�J���B!D2*����Z_��C�B!��K.g!�B�=�A�������@�������� �IDAT�r�����U��-�			c���
�
!�B4����w��`�H?�zkB���??����w�WB!�
+;;���D���)--�q��h4\]]�h���x ����d&MYmz�^��`o�B!�N���?� 33���[��U+�^�����9r����t��M����������3���_�kWF��J~~�^���9�C�����]z�w�a��r	~{{��{6����?��z���uW��z�]6�����p���3`�(\]�2`�(rr���^���k_�?~��}y���+���;qu�����U^�NJJ���7�L���1U.{!���GQQ]�t�������&&&4i���m�����/����1������ &f'N|���e����JyV������8wn?g����[;&Lx���"���q��v�:��E+�r�������M��K����m�i����V`���������_�)-�������
�����MGV���V���������?�v//�4�����m�8��q���w��u���O!������Gff&�<�&&���vvv\�x���L��������7E�R1vl QQ;*�:�?^^�XZZ������r��c�1�Ue���#���1e���f�������hl>�Y���`aa�Z������8��C�Rz�%8��Yi��O�.x{�����B!���qqq�1��k��[�j���g�["��lnZ�&##�N���C����effSVV��cKe���=������/��C�*�5�<��������)�/�8��]o���^Yw��B!��(//��3r��vF����� 299���44[���LM���i4����IIIW���f��p#k������*�5�|}��Njj�M�gV�]!���p�)lC��\;Agt�z�f.��W@D�*�g/Q����
d������Nd�Z��<����������������1��O-[��woO��[Fi�UN��c���w�m!�B�����*��)��+�F���C����Ko��?��e�-�s����������$���W�==��e�r,XN����������]^^�qq������q..���y���v���h��<�}���z��B!�����Dv����%oU��m����i4�l��������T��Jm�������_�2�V������MG~��_����p45�B!��?�i4#���)�i���$�o�'Oh!����@�Xs�RR��8�=������b��pz�x���u����U+9+�B<��
"cc��W?�	>>�������hp�>L%�B���\�B!�F���HW���n������
���VHH����B!�x��WA�V�������B!����WA�B!��3�
"��}3f:�{�@��>�1���B�<>>/3s��M�]�>88�`���de��:��8;�$,l.W��*e��b�=6K�N�h����gU�����C�������SO��*�B��>y����������z����^R)����<y������qsk��	�RPPD|�>����]Y�h�R����/�\Hv�	N����C�,Y���~��I|}_a��q\�t�_�F�6��2n!�Bq�"���bn��J����DE���g���xy�`ii��cK������a��W�u'�$*j�R.4�O�.4jd��cK�{RI_�b�6SS5�-��?{+�B!�����������lMFFV���;th[�\ff6ee�8:�T�98�����|���s�D�DEE���t��EI?�"={>al��B!D3�Ldrr�M�ih4�z$����R9��SS5))�������|�o���=�v���4i$:��:��u">>���5n����
c�&�B!dt�z�f.��W@D�*�g/Q����
d������Nd�Z�(..���
�111!33������c�� �������r��r��9F/�Fc�Fc��=?;4!�Ba �����!x{����7�����?�����}���9������y��{�����.�GF����z�
d��7����^yO�.l������E7:u�&!��^�J����K�f�x����Q!�B���{";urc����M����j�4[6n\Zm�k���k��Xc���}���Sc?���
�1�B!��u��q!�Ba4��D
��?�V�4
�
!�B4 ��������q1�a*!�B���r�B!�0��B!��hD
!�B�I)�B!�&A�B!�0��B!��hD
!�B�I)�B�S�T�t:���T*@�H!�B�Z���)--58�&M	"�B!hVVV�������{{{@�H!�B�������TTT��O�R�����?H)�B�@���������O�Hfee���D�-	"�B!x;v����_��������k��KJJHLL����'�xB)c�P����A�t��z��B!��R�x�����������?���R���h��O>�$-Z�P�����HC��q+j��B!����,���(��11�|�Z.g!�B���Z�^.\8�N��u�j-^<��?�_����������;����o�����v�Bqg����}y��a������zk�u�Vu����?�������a���F�_�����OI��$'�DD�;��5V���{�={�&?�$eegj������r��z��:O?��Gi��u�����o:]��Ob�\\������c�����������t����d�����R�~���!89����!���wK��:������/�E�R�ys$�O�co�A��!��c�\�7��`��Q88����e�{�?���S���K����������[������K�5�:u,�V}S�c����i��)?nn������������N��y���DG�d���x��^z��������W_}��� �B���QA��� ��������r����X�x&�v}�V��]�����JIo����K�#)� �X�j��J��������Kv�/>���3Z�������?\II�N�:����&8x������g������q�B
E����>��u����Rk]o���~�#Z��z��:M��1xpo~��?U���WPRrE��rE��
�1eJh�����������f��-���+�������p�cB!���� 2:z'��}���M�����'~~�����7��WG(i+V���G�[��h��VV�,^����2��7�M/4�N�CI��[�
nn���>���c��e��C,Z���6mm�?>���K�5y���03k������>[�/������G�����s��'O���G�I�[��B!FFF������9r���s��a���*�����7n�FQQ1���<����
���%��C	�Kff6����������(e+*t��X������t>|���\��MNN��?����K��7�S'7^x�s���|��t��#F����a��Q�^}4���������kbggCQQ1W��U�>eJ(�.W~��j�^zFF���a���Z���/���R��Q���T*lm�o} B!���4
&&&h�Z��=���gi��nnn����������(�W����i��u`��O��t���P^^A�f��h�g��5f������u�����������6l"������3II)�[�-��C��������{�����:�z����s���t�����ql�����7kf����:t\���[m��
07o�Z�����R��U�0������K*�Y�t5QQ����sjl���yy�����B��B!�*��'�xSSS�������>�,�/_���+z���D��^@��������{����fT�������0}�Z�v���0~|0}��Am������C���|���'��<��H��\VV����!^{�E~��/:^/��&.�,�����#.N[)���������o��/�HM�`��~5����������c���'QTT{�/�B���J��K�.8;;���Nqq1�����<V�33�����_��u����|6n��O>y��-��	�]�����g���<��*����K��tF�����
g4[��
d��@�.]cPY{{;f�x7��X[7g�/^{�E�m���111�I35�{7ib���5&,�%�3}uY�!

�����r���������*K����}+�75U���S���W�=���������o!�B�=T*���dgg���]e�JA�N�c������Y����o*in"1����@P���8yr��7n&��i9M~�IbbV�������������8yr;�vb�������#��S/����c1b�Ag��Y���=9p`��G���9DF�������8��?E�Vs�r��G���cIM�$&�@��o�O>Y���U��(<|�/���T%::���Q�}qq?�������]�����0����F�[!�w����j�TS�L�}���2w�m25Us������"��������Y�h�?#8c���i���	���7d����!�����k>M�6U�����Z7o�����A�����?����1
�||^�Q�Fw����7�����B!��%Ad9�"��-k�n(

�?�\���2�]!�B�YJ)�E}Q�:��B!�}F5e�]���B!����u������IEND�B`�
#2Emre Hasegeli
emre@hasegeli.com
In reply to: Pavel Stehule (#1)
1 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

Pavel Stehule <pavel.stehule@gmail.com>:

Hello

I am checking feature
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6513633b94173fc1d9e2b213c43f9422ddbf5faa

It works perfect with pager "less", but it works badly with default "more"

see attached screenshots, pls

It is expected behave?

I do not think so. It looks broken with or without any pager when
border != 2. Your less configuration might be hiding the problem from you.

I think it is because of miscalculation of the width used by
the separators. Increasing this variable for border = 0 and 1 fixed
the problem, but it might not be the right fix. The patch without
regression test changes attached.

While looking at it, I found another problem. It seems to me, a minus sign
is missing after -[RECORD ] when border = 1.

Attachments:

psql-wrapped-expanded-fix.patchapplication/octet-stream; name=psql-wrapped-expanded-fix.patchDownload
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 62850d8..474d64b 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -1259,25 +1259,37 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 	{
 		/*
 		 * Calculate the available width to wrap the columns to after
 		 * subtracting the maximum header width and separators. At a minimum
 		 * enough to print "[ RECORD N ]"
 		 */
 		unsigned int width,
 					swidth;
 
 		if (opt_border == 0)
-			swidth = 1;			/* "header data" */
+			/*
+			 * Minimum width used for seperators is 4: a space at the begging,
+			 * two spaces in the middle and one more at the end of the lines.
+			 */
+			swidth = 4;
 		else if (opt_border == 1)
-			swidth = 3;			/* "header | data" */
+			/*
+			 * For border = 1, one more for the pipe (|) in the middle
+			 * between the two spaces.
+			 */
+			swidth = 5;
 		else
-			swidth = 7;			/* "| header | data |" */
+			/*
+			 * For border = 2, two more for the pipes (|) at the begging and
+			 * at the end of the lines.
+			 */
+			swidth = 7;
 
 		/* Wrap to maximum width */
 		width = dwidth + swidth + hwidth;
 		if ((output_columns > 0) && (width > output_columns))
 		{
 			dwidth = output_columns - hwidth - swidth;
 			width = output_columns;
 		}
 
 		/* Wrap to minimum width */
#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Emre Hasegeli (#2)
Re: wrapping in extended mode doesn't work well with default pager

Emre Hasegeli <emre@hasegeli.com> writes:

Pavel Stehule <pavel.stehule@gmail.com>:

I am checking feature
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6513633b94173fc1d9e2b213c43f9422ddbf5faa

It works perfect with pager "less", but it works badly with default "more"

I do not think so. It looks broken with or without any pager when
border != 2. Your less configuration might be hiding the problem from you.

This seems broken in several ways. I tried this test case:

regression=# \x \pset format wrapped
Expanded display (expanded) is on.
Output format (format) is wrapped.
regression=# select * from pg_proc where prolang!=12;

In 9.3, the output looks like this:

-[ RECORD 1 ]---+---------------------------------------------------------------
--------------------------------------------------------------------------------
------------------------------------
proname | to_timestamp
pronamespace | 11
proowner | 10
prolang | 14
procost | 1
prorows | 0
provariadic | 0
protransform | -
...

In HEAD, I see:

-[ RECORD 1 ]---+---------------------------------------------------------------
proname | to_timestamp

pronamespace | 11

proowner | 10

prolang | 14

procost | 1

prorows | 0

provariadic | 0

protransform | -

After "\pset columns 77" it looks a little better:

-[ RECORD 1 ]---+------------------------------------------------------------
proname | to_timestamp
pronamespace | 11
proowner | 10
prolang | 14
procost | 1
prorows | 0
provariadic | 0
protransform | -
proisagg | f
proiswindow | f

but where did those leading spaces come from? The header line is
definitely not on board with that, and I think those spaces are
contributing to the lines being too long for the window. I think
possibly the code is also adding a space that shouldn't be there
at the end of the lines, because it prints lines that wrap around
if I \pset columns to either 79 or 80 in an 80-column window, so
the accounting is off by 2 someplace.

Also, this code looks quite broken:

width = dwidth + swidth + hwidth;
if ((output_columns > 0) && (width > output_columns))
{
dwidth = output_columns - hwidth - swidth;
width = output_columns;
}

What happens if output_columns is less than hwidth + swidth? The code
goes crazy is what happens, because all of these are unsigned ints and so
wraparound leads to setting dwidth to something approaching 4 billion.
Try the same example after "\pset columns 10". I don't necessarily expect
it to produce beautiful output, but I do expect it to not lock up.

regards, tom lane

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#4Greg Stark
stark@mit.edu
In reply to: Tom Lane (#3)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, May 12, 2014 at 2:00 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:

but where did those leading spaces come from? The header line is
definitely not on board with that, and I think those spaces are
contributing to the lines being too long for the window. I think
possibly the code is also adding a space that shouldn't be there
at the end of the lines, because it prints lines that wrap around
if I \pset columns to either 79 or 80 in an 80-column window, so
the accounting is off by 2 someplace.

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#5Greg Stark
stark@mit.edu
In reply to: Greg Stark (#4)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the periods in:

+-----------------+--------------------+
| a +| a +|
| +| b |
| b | |
+-----------------+--------------------+
| xx | yyyyyyyyyyyyyyyyyy |
| xxxx +| yyyyyyyyyyyyyyyy +|
| xxxxxx +| yyyyyyyyyyyyyy +|
| xxxxxxxx +| yyyyyyyyyyyy +|
| xxxxxxxxxx +| yyyyyyyyyy +|
| xxxxxxxxxxxx +| yyyyyyyy +|
| xxxxxxxxxxxxxx +| yyyyyy +|
| xxxxxxxxxxxxxxx.| yyyy +|
|.x +| yy +|
| xxxxxxxxxxxxxxx.| |
|.xxx +| |
| xxxxxxxxxxxxxxx.| |
|.xxxxx | |
+-----------------+--------------------+

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though. And
if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

The biggest difference it makes is that in the border=1 mode the lines
ended at the end of the data previously. Now it's expanded to fill the
rectangle because of the plus symbols. ie. It used to look like:

-[ RECORD 1 ]-----------
a | xx
|
b |
a | yyyyyyyyyyyyyyyyyy
b |
-[ RECORD 2 ]-----------
a | xxxx
| xxxxxx
b | xxxxxxxx
| xxxxxxxxxx
| xxxxxxxxxxxx
| xxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxx
| xxxxxxxxxxxxxxxxxxxx
a | yyyyyyyyyyyyyyyy
b | yyyyyyyyyyyyyy
| yyyyyyyyyyyy
| yyyyyyyyyy
| yyyyyyyy
| yyyyyy
| yyyy
| yy
|

and now looks like:

-[ RECORD 1 ]-----------
a+| xx
+|
b |
a+| yyyyyyyyyyyyyyyyyy
b |
-[ RECORD 2 ]-----------
a+| xxxx +
+| xxxxxx +
b | xxxxxxxx +
| xxxxxxxxxx +
| xxxxxxxxxxxx +
| xxxxxxxxxxxxxx +
| xxxxxxxxxxxxxxxx +
| xxxxxxxxxxxxxxxxxx +
| xxxxxxxxxxxxxxxxxxxx
a+| yyyyyyyyyyyyyyyy +
b | yyyyyyyyyyyyyy +
| yyyyyyyyyyyy +
| yyyyyyyyyy +
| yyyyyyyy +
| yyyyyy +
| yyyy +
| yy +
|

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Greg Stark (#5)
Re: wrapping in extended mode doesn't work well with default pager

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though. And
if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#7Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Tom Lane (#6)
Re: wrapping in extended mode doesn't work well with default pager

Hi.

I'll try to fix it tomorrow.

2014-05-12 18:42 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the

periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though. And
if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Best regards,
Sergey Muraviov

#8Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Sergey Muraviov (#7)
1 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

Please check this patch.

2014-05-12 22:56 GMT+04:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Hi.

I'll try to fix it tomorrow.

2014-05-12 18:42 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the

periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though. And
if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Best regards,
Sergey Muraviov

--
Best regards,
Sergey MuraviovH

Attachments:

psql-wrapped-expanded-fix-v2.patchtext/x-patch; charset=US-ASCII; name=psql-wrapped-expanded-fix-v2.patchDownload
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 62850d8..69f4efe 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -1258,45 +1258,67 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 	if (cont->opt->format == PRINT_WRAPPED)
 	{
 		/*
-		 * Calculate the available width to wrap the columns to after
-		 * subtracting the maximum header width and separators. At a minimum
-		 * enough to print "[ RECORD N ]"
+		 * Separators width
 		 */
 		unsigned int width,
+					min_width,
 					swidth;
 
 		if (opt_border == 0)
-			swidth = 1;			/* "header data" */
+			/*
+			 * For border = 0, one space in the middle.
+			 */
+			swidth = 1;
 		else if (opt_border == 1)
-			swidth = 3;			/* "header | data" */
-		else
-			swidth = 7;			/* "| header | data |" */
-
-		/* Wrap to maximum width */
-		width = dwidth + swidth + hwidth;
-		if ((output_columns > 0) && (width > output_columns))
 		{
-			dwidth = output_columns - hwidth - swidth;
-			width = output_columns;
+			/*
+			 * For border = 1, one for the pipe (|) in the middle
+			 * between the two spaces.
+			 */
+			swidth = 3;
 		}
+		else
+			/*
+			 * For border = 2, two more for the pipes (|) at the begging and
+			 * at the end of the lines.
+			 */
+			swidth = 7;
 
-		/* Wrap to minimum width */
+		min_width = hwidth + swidth + 3;
+
+		/* 
+		 * Record header width
+		 */
 		if (!opt_tuples_only)
 		{
-			int			delta = 1 + log10(cont->nrows) - width;
-
+			/* 
+			 * Record number
+			 */
+			unsigned int rwidth = 1 + log10(cont->nrows);
 			if (opt_border == 0)
-				delta += 6;		/* "* RECORD " */
+				rwidth += 9;	/* "* RECORD " */
 			else if (opt_border == 1)
-				delta += 10;	/* "-[ RECORD  ]" */
+				rwidth += 12;	/* "-[ RECORD  ]" */
 			else
-				delta += 15;	/* "+-[ RECORD  ]-+" */
+				rwidth += 15;	/* "+-[ RECORD  ]-+" */
 
-			if (delta > 0)
-				dwidth += delta;
+			if (rwidth > min_width)
+				min_width = rwidth;
 		}
-		else if (dwidth < 3)
-			dwidth = 3;
+
+		if ((hheight > 1) && (opt_border < 2))
+			hwidth++;  /* for wrapping indicator*/
+
+		/* Wrap to minimum width */
+		width = hwidth + swidth + dwidth;
+		if ((width < min_width) || (output_columns < min_width))
+			dwidth = min_width - hwidth - swidth;
+		else if ((output_columns > 0) &&
+				 (width > output_columns))
+			/*
+			 * Wrap to maximum width
+			 */
+			dwidth = output_columns - hwidth - swidth;
 	}
 
 	/* print records */
@@ -1357,12 +1379,17 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				int			swidth,
 							twidth = hwidth + 1;
 
-				fputs(hline ? format->header_nl_left : " ", fout);
+				if ((hheight > 1) || (opt_border == 2))
+					fputs(hline ? format->header_nl_left : " ", fout);
 				strlen_max_width(hlineptr[hline].ptr, &twidth,
 								 encoding);
 				fprintf(fout, "%-s", hlineptr[hline].ptr);
 
 				swidth = hwidth - twidth;
+				if ((hheight > 1) &&
+					(opt_border < 2) && 
+					(cont->opt->format == PRINT_WRAPPED))
+					swidth--;
 				if (swidth > 0) /* spacer */
 					fprintf(fout, "%*s", swidth, " ");
 
@@ -1382,7 +1409,11 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			else
 			{
 				/* Header exhausted but more data for column */
-				fprintf(fout, "%*s", hwidth + 2, "");
+				unsigned int ewidth = hwidth + 2;
+				if ((opt_border < 2) &&
+					(cont->opt->format == PRINT_WRAPPED))
+					ewidth--;
+				fprintf(fout, "%*s", ewidth, "");
 			}
 
 			/* Separator */
@@ -1401,13 +1432,24 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			/* Data */
 			if (!dcomplete)
 			{
-				int			target_width,
+				int			target_width = dwidth,
 							bytes_to_output,
 							swidth;
 
-				fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
+				if (dheight > 1)
+				{
+					fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
+					if (cont->opt->format == PRINT_WRAPPED)
+					{
+						if (opt_border < 2)
+							target_width--;
+						if (opt_border < 1)
+							target_width--;
+					}
+				}
+				else if (opt_border > 0)
+					fputs(" ", fout);
 
-				target_width = dwidth;
 				bytes_to_output = strlen_max_width(dlineptr[dline].ptr + offset,
 												   &target_width, encoding);
 				fputnbytes(fout, (char *) (dlineptr[dline].ptr + offset),
@@ -1418,6 +1460,13 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 
 				/* spacer */
 				swidth = dwidth - target_width;
+				if (cont->opt->format == PRINT_WRAPPED)
+				{
+					if (opt_border < 2)
+						swidth--;
+					if (opt_border < 1)
+						swidth--;
+				}
 				if (swidth > 0)
 					fprintf(fout, "%*s", swidth, "");
 
@@ -1437,7 +1486,8 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				else
 				{
 					/* reached the end of the cell */
-					fputs(" ", fout);
+					if ((dheight > 1) || (opt_border == 2))
+						fputs(" ", fout);
 					dcomplete = 1;
 				}
 
diff --git a/src/test/regress/expected/psql.out b/src/test/regress/expected/psql.out
index c7dbd54..dcc32b0 100644
--- a/src/test/regress/expected/psql.out
+++ b/src/test/regress/expected/psql.out
@@ -334,31 +334,34 @@ execute q;
 \pset format wrapped
 execute q;
 * Record 1         
- a+ xx                 
+ a+ xx              
   +
  b 
- a+ yyyyyyyyyyyyyyyyyy 
- b 
+ a+ yyyyyyyyyyyyyyy.
+ b .yyy             
 * Record 2         
- a+ xxxx              +
-  + xxxxxx            +
- b  xxxxxxxx          +
-    xxxxxxxxxx        +
-    xxxxxxxxxxxx      +
-    xxxxxxxxxxxxxx    +
-    xxxxxxxxxxxxxxxx  +
-    xxxxxxxxxxxxxxxxxx+
-    xxxxxxxxxxxxxxxxxx.
-   .xx                 
- a+ yyyyyyyyyyyyyyyy  +
- b  yyyyyyyyyyyyyy    +
-    yyyyyyyyyyyy      +
-    yyyyyyyyyy        +
-    yyyyyyyy          +
-    yyyyyy            +
-    yyyy              +
-    yy                +
-                       
+ a+ xxxx           +
+  + xxxxxx         +
+ b  xxxxxxxx       +
+    xxxxxxxxxx     +
+    xxxxxxxxxxxx   +
+    xxxxxxxxxxxxxx +
+    xxxxxxxxxxxxxxx.
+   .x              +
+    xxxxxxxxxxxxxxx.
+   .xxx            +
+    xxxxxxxxxxxxxxx.
+   .xxxxx           
+ a+ yyyyyyyyyyyyyyy.
+ b .y              +
+    yyyyyyyyyyyyyy +
+    yyyyyyyyyyyy   +
+    yyyyyyyyyy     +
+    yyyyyyyy       +
+    yyyyyy         +
+    yyyy           +
+    yy             +
+                    
 
 \pset border 1
 \pset format unaligned
@@ -421,32 +424,34 @@ execute q;
 \pset format wrapped
 execute q;
 -[ RECORD 1 ]-------
- a+| xx               
+ a+| xx             
   +|
  b |
- a+| yyyyyyyyyyyyyyyy.
- b |.yy               
+ a+| yyyyyyyyyyyyyy.
+ b |.yyyy           
 -[ RECORD 2 ]-------
- a+| xxxx            +
-  +| xxxxxx          +
- b | xxxxxxxx        +
-   | xxxxxxxxxx      +
-   | xxxxxxxxxxxx    +
-   | xxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxx+
-   | xxxxxxxxxxxxxxxx.
-   |.xx              +
-   | xxxxxxxxxxxxxxxx.
-   |.xxxx             
- a+| yyyyyyyyyyyyyyyy+
- b | yyyyyyyyyyyyyy  +
-   | yyyyyyyyyyyy    +
-   | yyyyyyyyyy      +
-   | yyyyyyyy        +
-   | yyyyyy          +
-   | yyyy            +
-   | yy              +
-   |                  
+ a+| xxxx          +
+  +| xxxxxx        +
+ b | xxxxxxxx      +
+   | xxxxxxxxxx    +
+   | xxxxxxxxxxxx  +
+   | xxxxxxxxxxxxxx+
+   | xxxxxxxxxxxxxx.
+   |.xx            +
+   | xxxxxxxxxxxxxx.
+   |.xxxx          +
+   | xxxxxxxxxxxxxx.
+   |.xxxxxx         
+ a+| yyyyyyyyyyyyyy.
+ b |.yy            +
+   | yyyyyyyyyyyyyy+
+   | yyyyyyyyyyyy  +
+   | yyyyyyyyyy    +
+   | yyyyyyyy      +
+   | yyyyyy        +
+   | yyyy          +
+   | yy            +
+   |                
 
 \pset border 2
 \pset format unaligned
@@ -803,31 +808,34 @@ execute q;
 \pset format wrapped
 execute q;
 * Record 1         
- a  xx                 
+ a  xx              
 +  
 +b 
- a  yyyyyyyyyyyyyyyyyy 
-+b 
+ a  yyyyyyyyyyyyyyy 
++b  yyy             
 * Record 2         
- a  xxxx               
-+   xxxxxx             
-+b  xxxxxxxx           
-    xxxxxxxxxx         
-    xxxxxxxxxxxx       
-    xxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxx 
-    xxxxxxxxxxxxxxxxxx 
-    xx                 
- a  yyyyyyyyyyyyyyyy   
-+b  yyyyyyyyyyyyyy     
-    yyyyyyyyyyyy       
-    yyyyyyyyyy         
-    yyyyyyyy           
-    yyyyyy             
-    yyyy               
-    yy                 
-                       
+ a  xxxx            
++   xxxxxx          
++b  xxxxxxxx        
+    xxxxxxxxxx      
+    xxxxxxxxxxxx    
+    xxxxxxxxxxxxxx  
+    xxxxxxxxxxxxxxx 
+    x               
+    xxxxxxxxxxxxxxx 
+    xxx             
+    xxxxxxxxxxxxxxx 
+    xxxxx           
+ a  yyyyyyyyyyyyyyy 
++b  y               
+    yyyyyyyyyyyyyy  
+    yyyyyyyyyyyy    
+    yyyyyyyyyy      
+    yyyyyyyy        
+    yyyyyy          
+    yyyy            
+    yy              
+                    
 
 \pset border 1
 \pset format unaligned
@@ -890,32 +898,34 @@ execute q;
 \pset format wrapped
 execute q;
 -[ RECORD 1 ]-------
- a | xx               
+ a | xx             
 +  ;
 +b ;
- a | yyyyyyyyyyyyyyyy 
-+b ; yy               
+ a | yyyyyyyyyyyyyy 
++b ; yyyy           
 -[ RECORD 2 ]-------
- a | xxxx             
-+  : xxxxxx           
-+b : xxxxxxxx         
-   : xxxxxxxxxx       
-   : xxxxxxxxxxxx     
-   : xxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxx 
-   : xxxxxxxxxxxxxxxx 
-   ; xx               
-   : xxxxxxxxxxxxxxxx 
-   ; xxxx             
- a | yyyyyyyyyyyyyyyy 
-+b : yyyyyyyyyyyyyy   
-   : yyyyyyyyyyyy     
-   : yyyyyyyyyy       
-   : yyyyyyyy         
-   : yyyyyy           
-   : yyyy             
-   : yy               
-   :                  
+ a | xxxx           
++  : xxxxxx         
++b : xxxxxxxx       
+   : xxxxxxxxxx     
+   : xxxxxxxxxxxx   
+   : xxxxxxxxxxxxxx 
+   : xxxxxxxxxxxxxx 
+   ; xx             
+   : xxxxxxxxxxxxxx 
+   ; xxxx           
+   : xxxxxxxxxxxxxx 
+   ; xxxxxx         
+ a | yyyyyyyyyyyyyy 
++b ; yy             
+   : yyyyyyyyyyyyyy 
+   : yyyyyyyyyyyy   
+   : yyyyyyyyyy     
+   : yyyyyyyy       
+   : yyyyyy         
+   : yyyy           
+   : yy             
+   :                
 
 \pset border 2
 \pset format unaligned
#9Pavel Stehule
pavel.stehule@gmail.com
In reply to: Sergey Muraviov (#8)
Re: wrapping in extended mode doesn't work well with default pager

Hello

With this patch it works perfect

Thank you

Regards

Pavel

2014-05-13 21:33 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Show quoted text

Please check this patch.

2014-05-12 22:56 GMT+04:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Hi.

I'll try to fix it tomorrow.

2014-05-12 18:42 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the

periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though. And
if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Best regards,
Sergey Muraviov

--
Best regards,
Sergey MuraviovH

#10Pavel Stehule
pavel.stehule@gmail.com
In reply to: Pavel Stehule (#9)
3 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

sorry

there is still small issue

I have a plpgsql function:

CREATE OR REPLACE FUNCTION public.foo_update_trg()
RETURNS trigger
LANGUAGE plpgsql
AS $function$
DECLARE t text;
BEGIN
EXECUTE format('SELECT $1.%I', TG_ARGV[0]) INTO t USING old;
RAISE NOTICE 'original value of "%" is "%"', TG_ARGV[0], t;
RETURN NULL;
END;
$function$

Default expanded view of select * from pg_proc where proname =
'foo_update_trg'; is little bit broken (screenshoot 1)

After wrap mode, it add useless new line into source code (screenshoot 2)

but border2 fixes it (screenshots 3)

Regards

Pavel

2014-05-14 8:32 GMT+02:00 Pavel Stehule <pavel.stehule@gmail.com>:

Show quoted text

Hello

With this patch it works perfect

Thank you

Regards

Pavel

2014-05-13 21:33 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Please check this patch.

2014-05-12 22:56 GMT+04:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Hi.

I'll try to fix it tomorrow.

2014-05-12 18:42 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the

periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though. And
if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Best regards,
Sergey Muraviov

--
Best regards,
Sergey MuraviovH

Attachments:

Screenshot from 2014-05-14 08:38:27.pngimage/png; name="Screenshot from 2014-05-14 08:38:27.png"Download
�PNG


IHDR)�d���sBIT|d�tEXtSoftwaregnome-screenshot��> IDATx���y|L�����$!{�lD���V)���JK���ZjK{U]�-�*WU�[U��j�U].z����ZKm��X"���2�?�25�2I��~>��������9��=�����=�����+<x�������Fc]�2""""""""�/wtt\]�N����`x��7�GGG��u����W�\#����S�8p����Z�jO��/�b����~���}�=�\S���QDDDDDDD qqq�Z��H��]�mz�����5��q���KDDDDDDD0���V���]ff����[c4�;.y��/��1�
]\\�;y@���4��u���������3W;@�z��������!���$''���Bvv6������`gg���3...���=�uh�BDDDDDD�0�������Hnn�i@nn.999ddd����������
���������E999��������h���������%''���bcc���!!!���������y`���"""""""e(77�������P��������l;;;*U�D�J����&<<������������~���u�������\IDDD�-��_��g�!&&��� ����\���X�v-k��a��5l�������s���������Ue�e�y��\����>Zf��������dRSS����q�����c4}T�Pbbb����`0P�b�����{��L
�����-���C����3w�\.\����
=�DEEq��v����;2d,�������]�f
_~�%,�Q�F�^�����q ==���l4h��` ''�b>��@�:u8u����8::��7��u���y`���1s�L���x��g�0a������`gg��`���>c��e�]��Gy�z���w�e������F���k6�"""R�������T������&����������dee���<�����	�M�6�u��'��=��a��UhN
�2s��u��C��M���$99
D`` �/����$&&���I�v�x��gX�r%��o���^�}��,Y����0�y������7X�j���+...�i����S�bE���y�7l�@TTC�a��1�X��]�v����O�f���L�6��s��e��N�Z`Yqqq|���9r���t������Ci���Y����Jrr2>>>t�����z��m�c=y�O�8��/���������o��t���bF����7�c����qww�Y�fL�4��s�r��A�L�@`` =z�`��9��[����������%$$���k�r�JV�^M�*UJ������&;;���,�V�jv������Y�&>>>�eyg6�zy���;�.]";;�������'##�>������������C�b�
RRR���3;w�d����?�l=k�
R������_	����9s&F��+V���o2o�<4h���'�'O����/���������I�����};����]�vdggs��4h@�
HNNf��Y���2|�p._��������e��Q~�����A�1�|���;{�1~�a~��G���h�����;v�l� ����,f������6l���|�����9��������Y��t�����~���>}www�,�ms����1���L�^����OY�t)M�6�����8���Y�f
�5�w����������hd��1�����I��]�6...����
��������w���������u��xyy���]��HDD�YYY888��������[���_~���x����W�-[�4�������������#ONN���9y�$���.�����d(Im���B�
�������o:t���'Dzzz��� ���H�U�M�4�`0����3|�pv��M�������LFFF�����3g���=����'--�S�N���L��=IOO����\�x��S����ObggGdd$;v�`��f��F����S�N�����w���[7f��MFF�3RSS�Q�'O�$###_Y�����9�Q�F���C��5�0a��m��G���>��c����A�.]���$11��m�� E���`^|�E������a��e�9s��PdO<�NNN��Q���{���Htt4������P�~}4h@vv6���<x���L������;��u�v���?���/S�vm�����HQ�����g���K������?��C�������#�0~�x�������cmYYY,_����,X��E�X�t)&L�B�
�RGJJ
����o��]�v��cGIII���R�9)DDD�\nn�����W�\!77����g����M��ggg���I���Y�p!���������h$66�E��h�"�������
���7W�\n��y��5������mmm����Q!���5k����
$::���v���zom����0����r�NQ5���q��8�3g��/g���8;;���O2`����M�222��,22���J�*akkKtt4vvvxyy��������@ff������8����E����h��c��%..�,vv6���y
��h4�z�j�^����sqpp`��Y���k�^����G�����:�|��7����.]�����ooo�������"""e�����9���/�w�f��M����A����e�`�h4��M*V����{9v�;v4�
������c����Y�����8<�266��U�p��a���t��HNN������ccccJ�++���~��f��p��)j��A�58z��)=��m.(�?���Riii�m���={�������W�n�:���G�-L����L�����>D������i�3++���,DDD�ecc���-��������%$$0e��e			������bggg�?��:��k�s�=���������1w�\N�:������c��]|���L�<���`6l����w�F#;v,�v�)DDD���?n�����W_}��`�W�^����XN�8ADDD���=���m�h4��[7��<�5j�`�����q����������]�v�����R�V-�������qss�]�v����%55����;����~�:���t������|e�j����k�i�&rss�T�_}�vvv������+�W_}Ejj*�k����K��Q�����m�c=5k����~fi��y�q����/���������t�p�l�����psV���[c4�Q�o��u��e���%��"""p�����3���8::�K�����)��qqq899y�Dau4m����L��999T�P�f���]�Q�:���7n��5#::����3v�XN�<ivY�5u��n�zv�V�
]ADDDnOZZ�|�
NNNDDD�o�>j�������Q�u��%--�={��w�^���HII����V�Z��������m�����c��~�����o��\�|���������d�W�N@@������p��Q��=K���9u�xzz2n�8������_9~�8
6$..����P�vmf��Ifff�����9r$����������#��[����S�re��*			����}�����N�z����{����];�z�4i�����[�.-[�n������m�R�jU�~��B�������~����?~777BCCi��	������'9}�4vvv4h����0|||���syv��������#������F#���$''�nq}�#--�7n���}[udff���cVfNN����VG������!11��HFFu���u���	������BCC�&L��qEDD�:qqq�3�'�x��s�bggGff&111���`0��������Hjj*������������1;;�s������7?���666dff���l�/���777rrr�r�
��c��8::2f�������666\�v���H���qqq�s��\�z�����e]�|�����������!--������HHH >>��m������S�zu�z�*ps~��U�r��U��sk���x{{�Y233���#!!���P��UM������n�������LG�����-)))DGG���gq^�y���K���������[��ou,_��� ����-,"""��7!V��]3fLy����[�ne��e�F�V�J���8v������������~
��Q�bEn����7�Z���2�����E�*U�R����H�s�����������			<��St���u���{�n~���_�>m��1�1CDDDJWff&T�P��W�boo���3���������MFF)))dddP�Z5���HOO��s��P�)DDD�HAw�(o111T�X�g�}���P*V�Hnn.���_�!�������fpqq�a����q���xbbb����B�
8::���N������&55���#���EDD�Txyyq��1�|�ry�c���ITTQQQ�����'##���L����������t����\���HMM-��r:�BDD��dffr����CDDD�2yg#�M8�:~�A
�+h�BDDDDDDD�
vM�8�w"""""""r���/�\yo}��e6����������A
�Kh�BDDDDDDD�
f�;�`�k��U�=�u��}�i�o����{s�t��.nnM��a�}��n������������I1u���N��N�0K����O�/��c��q��v���F�^���cO�G-"""""""��|���688�������y�'���)�@;;[��}y����4������������w�='��q�X���,�����[�����=G�j����X�l
��-M������{{{��gg>�p�����\IHH�h4�-�E��J���������O���`��~��1�����!_������?�w�y�������T���`�|���n7^�O��puu���j��y�1��y��7;�\o��_i��i�"�B�A���\��3��98���:��#�Q�b����9\�t�������n���W��;o�{T�P�i���4~�O���b��U8:62{�O����p���I��4j�����y�
�t	����u��u���G/"""""""�
�3)��+�V-?����g�����=��&11��~;�g�-��xEDDDDDD�>U�[����]{i����u��U��������]��R<��c8�%�?DDDDDDD��v�)DDDDDDDD
�A
�+8H���Y�j]�������
������=G�Yp�k����=�����>"""""""R|f���i���o0|�Tf�|�G�W��B_}	���&>��~��;+;v����M��<�tW��U�u[�>"""""""R|f� �5k)QQ1|���8s&���$%�����I��X����m�2)�����3;�b��_���5���<��C<�hS�3����s�.2v�L:1d��M�!!X��3��������D���S����p:���p�������Kpp_���S�z-Z��3tb����v-���Ntb�����6}G@@'*WnQ�����������k��)�����:>K�#"""""""��l�"8�9K�|�?�#7��o�u�����/+W�#<<��k�)V�;w���-+8uj��Yf��W�q���bbq������P�^-���X��-�V�$<<���0�O���O�n�����s
�{���IJJ���]���������WZ�����gv����/��kd���DE��q�6�/�+5K���{���@HH 'O���V�\G�~����q���0`@�R�7''�M��������:3q�0�/���^�dU|w�}DDDDDDDTfgR8::��[����e���<�+W�o�	�Za�J���*����nz}��e���/���DG� ;;__��j���z�������yP��P�fu
z����������������6�NHH*V05kV����E�ccc��6��������-W�DQ�N
�^�N�j��/��k)���K�����/�^���M����x�u��� ���|���b3f�@6l���M����Cll<_~��l���}�������b�mkkK��]Y�`II)\��{�}B�~��.���#"""""""�3;�"##�'�x���X5��_,����_���i��5kV�]�@RR�������W0k��}�/899��??k�N��u�0a(�������������7� 2���k��%�����{pss����,_�W&M�M�:�X�"��=��ic�����#"""""""�3����.}�l�?�������L9�uwS��������n��h����`0�������/^\���?D��wz�j��W� ��ge<=+��X�j��gcy���A
�+h�BDDDDDDD�
w|�b��=��������������A<F�OZ�����8:6����e���������IgRSff����e������<�h�������Ow���V�q�"""""""�&�A���^�5�����y���"�������x
zo�V���a��yddd������g<^^�T����}�|9
�3g"���/s�Z����+L�/^����47���i����_d��f��9�3�b��Pj��@�j���� 99���9�������Q�����bU|�:|������������A
�3��������/-%%��
��r�:����_�G��0���QDDDDDD�^����g��/qtt`�������,[6�	^'%%��gw���L�n#�\���6	�E��Abb2/�H��8p�(���W���0v�����/�/�a�^�N���_�9z�7:u��A�/�X�j[�|@HH II)$%�H;���b8t�k>�%�N}�>�g1>K~�� ={�&##���\������������7���2�4�O����d�G����Y���7�G���x�����Y�m��_~���`U�"""""""��|�{�$NN��}�?6l ''�M��3}����:���������a������K������[���nU QQ1�����3'��`OPP3�w�P��O>�'BBL�$$$�����x�L�������+�L`�z��������lY�c������?��
����C���������V
P�y���,_���*y7����3��o"'�b��w�R������;�����-���~=��Ht�
��s���1�W������M��MGFF&��Hd�Uz����������b y���z����z����o��uk�[v��e�l:� 77[[��Sqqq*2�!Cz��G�c���@vv{�b��w��a+�:[��?
nA��X��S�O>_z��O0}�[4jT���f�._DDDDDD�^��L�����<���W^^U��������p�z�:���>��������9y�;N������r�����P�y�\�}K���W��l�-���`�����������9}�?��2
��'�l���/��w�a�����DJJ*��?���s����T���7���0��2�%K>"==#_���s
jJll���)V�"""""""��|������;w���$�,��>}�`kkK��]Y�`II)\��{�}B�~�My�o���3�F0T��jV~��>DG�����������x���dffq��I�m���
qwwc��L�<����F#��_b��Y��!�8r���[7'2�'�����N"2�'��\8{v���+�%�=���5��z�z����;���GY��]f�Z��}G�U���������*� E��O���(j�j���7���lJ[���8;;Q�NZ�z���e�������|$�*5�i�'���-#F�5+�~�:L�0���^�����7�3�}���DDD���������66��%u�����U�u�>��5���Gq�����\�U���G���_~��~���s�O<��CV��Q�3��h�?����������a��������aK��F�����-��"""""""�"Chh�q����� �r�� IDAT�4i8#G�����1b*�j�1g���J�3�4i��i��1|����������H���/lll0���>������?��<���	N�����l����;|����?�^TDDDDDD
��Gy�r%��g���J����7o*��-�;�2��]+��kU�a���������)�����g������\c��qW]�!"""""""�{z�b����=���_�r��5�b0�%>>���/�������[�5��*��������^[\�q���������.���q0?���l��5����u�{���dff�z���aDF^�F���^vq�����~;���O�kw���e�y��!T��s[e�U����;�b��1���4=N��Qq����mI�N��F�Y��CF�����=}"N��R����;�b���.�~�?""""""���-���{����"))�4l���+���?�5z�x��@``/F��F�����yO~���d���W�������	��-;v&ii�����L�:�.]���.]��`J?��;���)��
$::�,���TBC�����w+F��FRR���-������D��-
<]?..�>}���H�*������L����������sT��QQ1��/]����CDDDZ]Gzz����k�v���j���t���-[���M����X��A/���
?�6L�2���LS���)kV��������1s�"�;��
[���>��m�i�C���}�G>�
YY������4;;;>��o��q��G��g�A�~{�Y=;w���-+8uj��Y�X��)m��)��]����,X0�/���Y��c_���3:�5���@BBS��iu~K,������a<����/Z���x�G���d��88���ST�YRT���_���f|�����������U���:N�8CFF&?�P�����A�?M�6���3��gX��P:��(&�NRR
g��b���|���,\��l���ODDDDD����X�l
��-M������7����3��o"'�b��w�R��,��AO�����`��g��a�6S��}
jF�
v������<x�,���=qvv������@N����h~��f���}E��mI��L�����oX�x&^^Upqq��W&�~�V��[R��66��8}�<����xxX�~�Xj�g����5�L�?�d3�F�+�6������D�
f��Xlxp����+F��7�����X�
�����M��>�y\]����a��al���l���ODDDDD�N����Q��1c�x�kGG�����`���h��AA����Q����\���h�`0���x���8{�"���$&&���y�*���W�`g:����h��k��Fj���.0`�d�/����������j1�%%�0m�82224�E"#���W�...N�u�j?K,����=y����������!2�}�t�:~��RS����������R��m����.�5��`M�)Lt�
��s���=�j���z���z������������L
WWg������v��95%66�e���+02��-����U��@ZZ:��?���}	�ID�n&M��OG`Q�j�����5�11q�����������=���=�O����C��8Y�_����������9y�;N������r��f��~y*V�@NN�Y>k�����������������''�bmC�F��������f�-������g�[�gg���aM�)��W��l�r��9,�^�n�.��A�A���\��3�y>�x3;v�����~������}������?����K$$$�d�G�_�SS�IO��U�����}��?���@}|<			d��/��_`�n�eJwwwc��L�<����F#��_b��Y����[c����9��h�����������/��W����s�Of��m�g�����_����0rd�b�7�(w�������~K�N����'z��dul������������`�
��R�r%�����~��;�v�2v��b��$����b��Uf����?~���9|��?qww����%K^��I>���������{�Q\�K�n��?�e������7�^��Q�J%��\���5������O��s����������}�Y��U�y����n����8|}}�&!������� 2�qq	����c���\8z��u���L��:��7pqq����a>PPX��1�\�&�'�f���0q�P����X������R��s&�i�H��?���#��_�1y�p��E����RS���q;?�������F�)���e��������+����L�6��q�?��/e0����.}�T
���I�o�z�s���c���1�W_�x�et�0�i�����C�Y�`/^a����w(""""""�f��h����`0�������/^��L
����{�<��5�JT��������R���1rd_����;�{�) �>��S���t��fw���������jU��ADDDDD��U��~U��=p���ng��;I�GDDDDD�����""""""""�A�����N�����.����N����W6���{sz�]����BB�b�g��������:u>�G�(�0DDDD8w|�b��=��������������A<F�O��z������/�����?��b���������0lXo�������(Q,"R�����6��z������v'�Z��""""eMgRSff����e������<�h����1y���j999�������I��
J;<�t�����HI�
R�b��i�o����d��ILL6����3h�x{����
S��###���@�>���
�J�G����Q�9A@@'F�x�k�b�D@@',Xa���������5�M�~�b��m{���o1p`(�kw�Z�`������Jh���C��n��Q�HJJ�*>k>|���k�����?�R�A
K�[��k�����%8�/����^��i���c��o�Bd�U�/_�k�-���
/�d����<J@@'������3	���!6[���_T����{4�B��=i��o��� ��ju|��k�oI�/���)l�[�����S��K�|D���^_�p��m����0]�'..��fM�,��mIY�oH��N�O�.�	��o�W�^��?��k<=[2v�L�����gI���Y:~-��5��(��h�����7�����?��;���)��
$::������5��%���?�K��$"""r��;�����l���CVV6����)m���IJJ���]���������W��-����\��#��X��U��W���a�Y�U�zFxx��?o�?l�K���r���,y�����Z�����s���>����
����p����s�~ !!��S��*>K~�� �����q0������9��}������i�UeX��R��X���Qz���/�!&�G�|���/`���������s���}�Z��;�p��U���[����0��}Y�r��a�]�N��
����gJJ*��m�����'�	c��m\�����u|X�o���nQ���v�Z�w��|���=L��A��_~����-.\�/QQ1f_����{|[�,�`�����e�N� 33�l��������q��a����=y����tK��4��4�=�n���[n����~��oI����B��5��>��������-j�Y��Y��W��������O���<~~m���FDDD���o�b��'qrr�`0������ap���M��3}����:���������a������K������[���nU QQ1�����3'��`OPP3�w�P��O>�'BBL�$$$�����x�L�������+�L`�z��������lY�c������?��
����C�����������Y7Y`Q�[Q���r�:���N���cgg��W�aU��8x�����W��
���c���H������oM��U�{����A����:�������������8��v�/��/��		d�����G��x��E��{�v�Z��6�i�����ge�x�#'O�����{|[�,�`���8;;akkKHH�i�F��CPP3*T����������������gI����[qt���&M�+�����}K����Z4?��3f����"m���w�Z�E)��k���oq��,����Z��Q����c���oy������F��o�������)�Z5o�/x���###�A�^$2�*�zu�������d1��r|}�M�|}�IMM��n��5�-�p�2L�`0������
�����8��!����S��yyU ;;�={�v�;l���N��-n��������bM�.���#���8��}����=�I@@�}UR�k����-vv������2��s������8��v����p��_����]+f�ZBjjQQ1������h�_�%0��i��c����t:|q�����(���T����B;�����>�x�=���Hnn.����n���^T�,��[��V�,����[R���k���^���k��fv�Z�E)��k���oi�?���;����H��7Hy���������`���
vv�\�E�:5��|�U��C���3Ng���\�t��]G�r��L���5�666���+���h���7=��C�)�������w���,�[�'�lf���
���W0d��IK� %%���#!!	{��l��'O~G�*��)�~k��X�99�����5�s���"c,l���Ow-Y������1c�;>��o��[���[����q=��s���
<�DG~��76n�FPP3S�,���n���FY�oQ������YV�z�A�������_���-�o4K�����:th]�2��R���}���6�NHH���������Ww &&''G���W��gi�_k�������$"""r'��������s�.�����%��O7���|�{we��$%�p�J���	��u7���}7g�D`4qtt�`0��T������&�����}� �|s9��Y>|�m�~�zC���8��'�!**������X�������o��^9�m��������
��W'�nn.�=��k��Y5@a�~k��������s��$���3f 6le������!66�/��nVNa��ngM�,
�%���������f��`0��mK,XA�������}��Z����]V���e�%55���Z�j���
��7���o�����o����Yj��8~4���=��O,p�������@���y����kl�������W��gi���}.��'�y��+��BDDDDn�o���'��}�j�������_6�-_�W����S��Z=M���2m�XSzxx�?>�J�����t���#���_�~&LJ``/��������>��m"""��
d����������j�|�����u����������lU|nn.���W�#or�/��N�~����'~�!�����},�7�,�\�&S�����	���������W�`�
<=[��Iw���dV~Q��ng��������_K�[bi����Ei����Y�j��=:q�r��|�X���2?�m��������C�^�h��?���T��J������5K�W������q����1x�����?�t1;w�L�V���. �Ok��+���4�oI��K��	`��o�pDDDDJ�!44��t���[�M�4��#�Z�vg�1�Z���3���E���Gq���v��o��6�s���511�G���%���DF'"""��}��qpp�����`�{��?.[�xq�3)��/��0����E�n�u[wH)��"r�*���]����y�R��NDDD�V�&�,OW�D1q�,RRR�\���M%8�Ey�%b������K������	C�T�"�������W�_�z�1�z���""""R��=DDDDDDDDJ����CDDDDDDD\����O�`�K�m�:u~Y��@{����������C��n�L����E�fX���k�u1�bg���!����dff����q�i��G�Z�����q������!��3c�[��7�����������9dg�XUDD�)���):���v�Mv���������;����7��_�d��E��WDDDDDD�^v�/����KRR��q�{|�����g~���S���v��8uj�)m���>|*S�<GT�~���/���5�?��k\�z�3g�����������~��?vl��o�O�n��5�;�X�mNN�=���IDDDDDDD�r�������"AA�x��������mpp�7=��+����Y�s�
`����T������?���T6o���_������c���|���b�ogg���//�0�a���o���mn���O�
���F�|�%K>*�0DDDDDD�Sng^���=�h���U�''������S������ ;;�
���5hP��g/�]RR�����r��Q��������?>o�VT��(�?���O6K_�l
��-M���������h���r��&'����`Z�����h$55���o���JB��zEDDDDDD�l��x��a�	$_|qn�W�v�;:�5����������T��Q��q���L�w�yO��l���/�\gg'���M����1899Z]������T���p��[�,���M����MC��}���.6���{���t�+]�JW����t�;�j\���3��'R�r.]���_U��]�M�j�8����&�F}�;�6M4���`���:�d�V�i���.}=_ZRR
�+�`����%����+V|��3;-�I������m�dd��W������?�z;��v'�{?Ov��b���}�nF��Nd�O���v$'����)�h���=7/�*fs��������e��h����`0�������/^\~sRf�~�w���k��M�srrIO�0{��=�V���O?�Bbb2��_��>����'����������<���~�����Uvv�.]e��5|���Mk�6����=++���222��.����	?����U����J�\M�5@!""""""wB�
R<�x{7���o.7-[�h����yz�����X�p%^^�<�h?"""M��V���������m��=:��+�U�&�i��+7nc����2������c#��ONN�����	�:����g��}�{/n���r���d���@�*����8���\��=x������'pvv������������H����v��������Ce�
l��^y� """"""R.��r�<����)DDDDDDD���A
�g��),Z�������+
v���9={�.�����S�3z���CDDDDD���A
)u����a�z�o��Gy�sG���?�6�l�""""""�I�R�"""i��Ay�!""""""��A���^�5�����y���"���fz���o1p`(�kw�Z�`�����A/���
?�6L�2���LS���L�:�.]���.]��`J_�z=?�8��M��l���3IKK`���i������q�n���r||�>|�)rr*��s������FM#))��[M
��3�t�����;���N�gS���a)�����X������K��o�����}��%:w��[S��Htt�Y�E��3g"���/s�Z����+L�K�?�)�>>/^����47���i����_��,"""""rW�w&��C����#����l^}��|�V�Z����9�N�����`���IJJ���]���������W�����'�lY��S;���2�Rigg����7s��V��9��o�6�����o�&��<8y2���06n����7�L��
'N�����9w���:���i)�h��e����������c��wL����5������C�N�v�DGd��i|������?���Exxk��E��������������ZS~����a�^�������d�k|���b�������HY�7H1h��899b0x���l��-_�'��!!���:���CNN�6mg���M�&N��
[���gg'lmm			���pS��}
jF�
v������<x��^��k�� IDAT��	�I�uquu�����W����������3��������2�������a�X�J���}�Z4?��3f����"m���{�fy-������Y�������9s"�5��}""""""����<<*������c1����uk�+(:���9�����UY�}��,@e#����l�b��"���(��������iY35���a����2}�td�45f�����i6�6)*�a�Dd#�����w+WKcU���_�^\��u�q�Vpv]�EPP�e,0����b����=-�
�Xn���m'/���#G�s��e��+����%���|�ig\\��w����Z�����O��z��e�������qcw{>���������k]��]Xh�y����E UU�?���������AA���� ��������8���'O\u\���k�@X�f4����L~~�e�����@�s����jbb�0j�Prs����)S�$c6��k6�i�2��[��?������C�6s��-P���~������+�.�X~/+��9�z����s��{��>]j9������t�����~^���������+(0Y��>��,R,[���GOPVVAV�[��������3C��%3s���/b��cW~UU5������&�V�|�����x��0��S����4f��c�N�z�?�N��\]��_�����v|��n��-�����~4%22����W06l�j������y&S	�NY��������% �)QQ]x���\�x��{����~V
����"E|�bbF��uAA�������.|w���Ix����� �����a���<x"������Gz��j�L�%Kf���]����H�����;��j�o�������<��x��Nq���1b=z����S�������-�"<|�����%f���}��L��DX�`������,������uY�b.yy'1��:������B,"""""7Cjj�y��'�+�h�2%�Q��:�-q���4BC�&=}��[�����6rd:�[������������bv�4���������������7��N
�5}����t�9��
[�������C$.������?�y�uc��~L���;vs�����/b��?q�\M�x��K�DDt��uEDDDDDn��=DDDDDDDD~-=�!"""""""��)�FRRs�,qt""""""r��"��0�����;���vm�>����V���<))�xzv�h��g�����������o�8Sn���
�,y�����/0l�d�F_F�fW|������5�|�	������i��1c���������H�fu'EX�`F�� *�BCc1b���V	����1�Ri��'��������,��O��Npp7��^������������"::���^DG�PZZf����j���?��h��&Lx����X�~w�Mhh,�����_^H@@RR�-���U��>O������3zt�,���2���h���~""�r�T�����������CD�P||Bi����cu�W����_���+��~��E��]��}�]q����o�GZ�X������=$'?���k��������H�g����=����-��}�K�j�9s�M��%��:5�c��q��f��o��I�QQq�#G��k�:6m�nsK��-��~�"���.^���E�Zb...,]�W�����}��������%~�\;w��h����\rss���?����	����������FYY��/[���y���J�����YY3qumd������/�1x�D�|r<�O����>�e� K���n%/^��������v�M�����C{��_��us�}wr��!��""""""R��,R$&���
����1�dgh�4hP"#���� ((���Z�������Y�&ON&;{�UnBB,�8;;��������qt���
\

 >~�w���[��Q������������A@@S

�)+�`����7��F_7v���'�z��wr2PZZ��C�0DDt������������6,��C�������������V2u��������`W���
/���_�1�7��Wc�x]q��l����kr����%��f�e�]�V6�L�3���`������<ooO�q�.V�Kl���_\��#��|�2���t���wvv����3..��;�DMM-�}w
����Zz�|�2��NTVV���;�p�"���8y�����y�������]������;E�n��|6�����V��S��/��'+,����?���s��\����7W[���������H�gs'���Wb4�Z-P����h��������x(((&0���F���&&f�F
%7wyy�2eJ2fs��f���X�������l�?����C�9}z��YOOf�����q��G���5���k�����Us�9~����V��S%'g�6�?������i�����x|�����{��v�EDDDDD���Y�X�l
G������������gW!ggg��Kf�"**���_��+6,�����j��/�'''L�3�\������"!a S�>OQ�i�f3���`��Z����S��l6�����`��C�z������������QSSKI�Y���hw�]z�,6m����/������t�����` )i0�����B��b��u�gW\DDDDDD�?�E�������u�(����5�I��-\���m��������A22&��������3x�D�w�'%��������K��"8�]��������G��w������Qx{w�c�DGwg���V5�7{������-"3sM�>@�1=z����������{��Y��������=4��8@ff���p��y��D&Na�z���""""""R�RSS���?\y��))�5���[��>��%%�z7����>YDDDDDD�Gv�4���������������7��N
G�y��H\\?�53:�
��X-R�������)����������������Hz�CDDDDDDDn
Z�IIi�����m�������mF�r�l��/z�~/�����y�sf�^L��Q4jtw���/�<`�M��m�����n���1m�_�p��%~�x>���������.�;�s��l�Q]}������O�����������f�H!7���+��%���q����.%+�-.|�'>��w�������
�a���GA�>��
�������wt����N�<���od��������\���_�����OPDDDDDD~SV�aa�=:���G
�e��i��WZ%���c��WHHH�M��F�������$&>��8���HK{�����T�e�H6o�������8p,���IO�Ett
!!���N����rnee�����e$�����AE�9���_'"�3#F�7-[]3���K�=�)x?��:��UsK�w�		iE�&��h�����?|E���[���������K���|���V����l����SG�6������{��g������}.]�a���6IK��b������C�i��
p�v���s9��]���i�vf�^l���x�������Z;v�%*����-[>g��E|��'\�x�E����&Lx��g�?8ztee���lw���)..���
M�k�AA�����3g���3g	���t����;,���~���)/�$?���>�~��%~�R
c�N����?������MDDDDDDn�E���A���a03&���m�
�Cdd��P[[����>�1�����dgo�3��_0p�X�~z;v|E���k'$�������3��a<�@YY+W���y�`4����;O?=���7�������*������5|�������x����{�={��������k������f�z���R��;��y7:th�������N�.y������DDDDDD���Y���kr����%��f�s��keS�d:CMM���������#��;����<EE����Aa������:Xr��=-�
�p�|5�}w
����r�]��uW4#FL�����J�������<<��:5?��|�4)�j�qcwZ�d���L��hy��������Qx�>*+���h��e���7���d�����!""""""7?��<Yp�q!F�/��:�������8��_D��-(((&0�������AMM-K�f3`�C��������.]:��a�:'��>[��k�y�I�Q��]`�?��6������l�����|��=�����p������8���\yL���B|}���a0���/�[-t����������N�e��p��	��*��z���~vrvvf���df.�����E,X��a�b���w���E���{����=������		�:�y��Nc6�9v��W����B~���/S]}�K�j�+��~��`0��KV�[�9s��g�Y��]���\��"3s�~{��g���i;������

�Io�.����KTT�c������=IIC0��X�����x{{b6�������H=a�H?�����nEP�?�f=iw��_�����m{�0�{?h��a]�=��x���8��NY�GQ�%Kf���]����H�����;ew��:�7�{��{���Z���! ��MO��}�-i��'w�����x������&>�tQQ����g2yr�����a���7���}�����u�/�y��W2W������������t��F���������
������nEDDDDDD���;M��������`������c������BDDDDDDD�l6����G�fFG�!""""""��E����sTr�w�T�I�{��������M�w]�	�E��1�q�l��yi�����3g��������H��������������l��{?��WG\\���O�>�;�����=�m��g/����Nb0���'<|�]q�����������1�g�����YDDDDDDnm�)7���+��%0lX��/����*X��e��;�/�<��a�1}=z�Z5����V�����������E�={���o6a2�!::�6mZ0fL�o0[��������DE=Bhh,#FL����*!6v3f�BBB*m��$00������%1�	���	�FZ�K\�p��f�|s5���O�4m�&<�����xd�p��g�BHH/��S(--�����O�$��:���0F����q3~�#?_DDgF��oZ��f����B��]�����(z������0��6�����G����a���v��f3o��iic	nF������0����}&/""""""����{��g������}.]�a���6IK��b������C�i��
�&=GE�9����]���i��-�uqqqa���r��^����g��f��7�����s��_���~����X��]K,9���lDq�de=�{�}b����u��%���o�x���o���M��/,4QZZF���?��}�}�����~�9��������e�H��8ww7c������M��A}��������jkkY�v#��?f�<9���
v73rd]�t�A����������IH����ggg"#�8x0����|��.�yf2������11=��!���S��w�f���XYY���&LH�f�����Uxy5f������s��[�EDDDDD��g�'��_���}(..�l6c0,�����)d2��������X`�?�v7�m�N^|qG�������W��k'�s��=-�
�X��:AA��xP�?UU���������_��OV���l_�|-���x������V�qcw**���s���7�\m�����'O\u\���k�@\�K��g���,c��[���ajk/[��?_ML�F�Jn���>e��d�f�&��u

LW]�t���A�z�����`���g��t��_���m����x�fF�4�f���8p�0��k���9�,R,[���GOPVVAV�[��������3C��%3s���/b��cu��������-�[�WUUS]}����899a2�a�����H@@S�������x�{������/����������K5TW_��85=}�6m�����������m��/�;a����7$%
��W�RXhb��C�X���#�n�,EDDDDD��b�H?�����nEP�?�f=iw��_�����m{�0�{?HF��s��LZ�K4n�����+p����g���t�OJ�������_��s��;�����f��h��l�(���?����=��=Nmm-nn����`1w���{�f����vnn�0h�x����?���f�T<33���{����<�P"'���GEDDDDD�Cjj�y��'�+� �2%�Q�������#�i�:������V����4BC�&=}|�'�����������&\]]qrr�`0X~^}���y����IQ�}����>�9��
[���z����Y~~�'��s��h����^J'"�����w��������m�������m�j�b�����
������n���w�T���z�CDDDDDDD�/-R����4��Y��6DDDDDD�6s�-R|��gwst��-[�E�������;m�UU�III���Fc�>;�g�EDDDDD��vKm�)������q	Cj�6���g�g��|��&L�3DG'��M����+.""""""�6�;)��3ztQQ����(/��J��������J�6=	� 'g%%gIL|�p������.\������!"b(>>�4o�������KK���{�1_������SE>�GHH/F�|�������"$����n�'&���#���-�lbf����~����7�s�{HN~������[���{��g��5���2|�Tf���k�����%KV�~��Gdd������1i�s�;W��#[����_�Q4i����N��/�1x�D�~{�GSZZFN��,u���3�
��+9~|;
6��/�����;�hMnn�|��F=Inn�o���/RXh�����3�2Z�����d��uv�EDDDDD��g�'Eb� ���0�Ov��6I��!22OO�����e���L���el��d��7X�/^��a1�g�F_�`W������2:��` "�3~~>7�C����
/���_�1�7��Wc�x]q����I�����c��K0���x�v�l
�Lg���%((�2�OAA�����;E�n�_�{�32&r��E�q�d�G����qcw{�+������s�����o�����[���'O\u\���k�@���lS�h�������"�XAA1�����[�j��#����=�����=��?�������k/^i=!''����W�Y3#M�x��!�������;�����������f�b��5=z���
���".��]����2�/�����8G~~�`���9��'�����k?��������Y�����?���<�f3nn���=��h�<�������~._�Lu�.]�����e�S��@R�`^}u)��&��?���92�����������l)��3����
�g��'�.�p�xx���mO���w����`�w���u������M�C��=aw~nn������; :�;#G���}��L��DX�`������~�"���o��������7�{�b�gffzw����Jd��V��+.""""""�6Cjj�y��'�+� �2%�Q����&����4BC�&=}��[�zh�N���899a0,?�>����y�l��q��{�����Y3�������"����9�����Y�����������=DDDDDDD���E
������9K���������f�H!7LU�yRR����������stK""""""R�h�L�a�O���=_��7�0���L�6-3&���������H=`u'EX�`F�� *�BCc1b���V	����1�Ri��'��������,��O��Npp7��^����7$�e�H6o��fYYo1p�XJK���{�1_��#�� IDAT����SE7����b6�y���HKKpp3:w�����Y�|��[�z��N�={��c���\>|*3g�����du��%�X���#22���sTT\Y��4�9�������TTT���(�4���g����=���c/}�t���c�^���0g���Wr��v6l�_����������
M�����C{��_F��A�w���X����������H=a�'Eb� ���0�Ov��6I��!22OO�����e���L���el��d��7�����0v��
������s���+z��2'��e:t��@DDg��|n��$u������1����������2.""""""R�E
?�&W�P\\��l�:�]�V6�L�3���`�������_���G8;w~EU�y��N�����B��%��u #c"}�t#1q>>�$'�Q$�N7v���99�����)/������������f�������1}1V���8�2}qqq&?��= 

�	��9����{�����ti6<������t����
W���={:~���{��,^���A~�f��4i�����,c��{�t`W""""""R��,R,[���GOPVVAV�[��������3C��%3s���/b��sC�
��?@f�"�������\D�a�7~���y��f��\1x{{�u}�uII�y�������+V�c��8G�&""""""���"E|�bbF��uAA�������.|w���Ix����� nX~��\�x������S��,�Q������(��;������3r�P��/�Nff���p��y��D&N���������������������t��F�������4BC�&=}��[�zh�N���899a0,?�>����y�l��qG7 7���~4kftt""""""r��Z����=G�!7{7K�������������n�E���Y�7�7�s��������3g������-�'������K��~}UUu��{�u�>����=6���%��m������H=qK.Rt��@��__M�>�={���o6a2�!::�6mZ0fL��[�z��q������AT�#���2b�4��+�bc�1c�+$$���MO#���@I�Y���?���n��������?���KE�9K��{��q��U���j���?��h��&Lx�����������&M:_�q���;v������#=z$`2�X��U�������������y����	����o�GZ�X������=$'?���k���������6{R������b����t���3��$-Y���SS8vl�m�}�6L���8rd+�v�c���������"$���}l���;�1x����;...,]�W�����}�������������Gnnc���d�����F�6-0�v�������O������>���O����=|���lt�so5��&JK����=��/c������;9p���[�z�f�"1q��n���';�C��A�����AA����v�F�O�26yr2��,yIICx��p��eV�z���!����qt���
\

 >~�w����������&>��Kf�x�F�����������/^��a1�g�F_���j�W��
������?f�����jl����~~M�:��������`���k�����t���Z���@

�-����<��<��K8p�0�.���oK|�������9����)/��k�N6������S�M4o�C�-ZRUU}�Z���w�����_�[}���0���y��x���"""""""u���������1}�(\\�m
����8��_d+((&0���{pp3�w�����;��GB�@K��������QC���B^��L����l����_������3e����K�5Z�j��#�vo��f��4i����?<�q��a���Nv%""""""���"��ek8z�eede�E\\?�
9;;3dH_23QQq���",X��a1V�%%
a����Y���Q���j��/�'''L�3�\�����������0�/_\Y���a������	dgo`���������,k�l�as�������K),4��!V�X���q�nMDDDDDD�	��=��3��������YO�]l���2���m���
2lX22&X�3lX�'���-�����G9��|X��y����7^^����+'O�}�����<YHii�/_��O>���1��m����o�c����[�1>>^DEu��>@�.�X�n�Sc�<���������233x��g����4j���{T��RSS���?\y��))�5��m�#%%�z7������������C;w�puu���	��`�y�������g�����������#�<�!��f���nCDDDDDDn3V��w���>�&b�f�"""""""7�����)�a��s��}��	%6v�����%%�1g�G�!""""""���}���O>#8���}������HN���_��o8�����������t�x�����X-R��
f����!44�#�Q^^i�;�3^!!!�6mzAN�JJ�������w#-�%.\����y���b��'),<MHH/BBz������o��������g�6}�	����jKnd�p��g�BHH/��S(--��KK���{�1_������SE��#�����G�3a�3�����G�`��������M�uW4����{o?^~y!]HII����DDDDDDDnA6wR������b����t���3��$-Y���SS8vl�m�}�6L���8rd+�v�c�������;�hMnn���B�fM���!77��������K���3g��o�>�l7s��i��e���_��o����/�h�����9oP^^����1�� +k&���,�U�^#77��-�X��%rssx��W-����=��;W���k1�8x0������)..��E"""""""��E���A���a03&���m�
�Cdd��P[[����>�1�����dgo��M]�>���qt���
\

 >~�w���MH����ggg"#�8x0���:(--���c"":���cWO?g~���u�`5jHHH+�����4����gF"""""""��E
?�&W�P\\��l�:�]�V6�L�3���Z� ��E�_�>��m;��N�m��h�:��^[n��������A��A22&��O7���Jr��������3���������3..��;�DMM�]=���_��0�1m�_���������#6�'O\u\�����`�:��?��f4����L~�{<�o}A''~��a�Z����&&f�F
%7wyy�2eJr����������9x�#�����f���v��;����S~�T�}��
��#��G��z���������H=b�H�l��=AYYYYo���B�������ETT�#?��V0lX��y��`2�XmXi���j��/�'''L�3�\�����q��>���l�����`u��O�w~"""""""���,R�� &f4�[G���YO�]l����p�m����?L����1������2iRaa�	���/.�����<�����=���?��gW�{�����Qx{w�c�DGwg���7t~"""""""��RSS���?\y��))�e��r�IJJ#4�n���;���v�4���������������7��N
Gpqtr����G�fFG�!""""""��E����sTr�w�T�I�{��������M�!����7n�#.-vHJJc��%�8��s��}��	%6v�
�LDDDDDDne������r��%G\Z~�=�Er��~z��[�z�!���?�����$/�$S�$;�
�g�����DE=Bhh,#FL����*!6v3f�BBB*m��$00������%1�	���	�FZ�K\�p���v�G����I���|��������1���������:Ud����j���?��h��&Lx����-������'	/��t�6�#�Y]����:�<�JHH/�=��	���G�����z�fO�={��q�[���>�.�0s�\��%KV1uj
��m�����o��I�����G�le��ul�����[���������������9oP^^����1�� +k&���,q�.�+g��e��
|��n��}�ON�#-[Q\�YY���{�X��+.���U����C��A,^���9�����nKDDDDDD�	�E���A���a03&���m�
�Cdd��P[[����>�1�����dgo��'��e:t��@DDg��|,��#����
�@|�v��@Q�i>�t�<3W�Ft����������"""""""�X6{R��5�������f3��2��]+�B&�jjj	

���SPPlw3�p�"���8y�����y������;�����p��q._�Lyy%]�v�\'(��R/(����j��"""""""�X6wR�<Yp�q!F�������M!��g���C�����@�s��������s��G8��w���+8����1�5���-��}��)���Wr��NA�����p\W\DDDDDDD�f�b��5=z���
���".��]����2�/�����8G~~�`�������S��l6�����`������j��/�'''L�3�\��%7 �)QQ]x���\�x��{��������������c�<�?�������_f�z��b���)�m��4l��a����1����������q��e>��3���o��}+rs��<�9L�34n�A||#G�<z�`��<__o����gWN�,��_�b.�Gg`4���C{���������������8��"E���;���&|��������o�]7�}���lf���LI�n�������n�e� 6o~���������������DDDDDD���n#���<���#���a��<�������������IQ���1y��8w��&M�y��t"":��+�������0���!55�<���CDDDDDDDn;w�puu���	��`�y�������wk=�!"""""""��C)��g1n�����o���*))�9s����]����w���'���q7�3��9dO��������m}�i�=�Er��~z��[�z�!���?P���O��;��)��nCDDDDDD���=��3ztQQ����(/��J��������J�6=	� 'g%%gIL|�p������.\���]�!!�h���5�(--#.�q��0|}�'"b(�N��e$�7n�������~d�p��g�BHH/��S(--���;A�������=0�J��j~��w�{��TBBzq��q&Lx���^<�����������6{R������b����t���3��$-Y���SS8vl�m�}�6L���8rd+�v�c��������������~�f��y���J�����YY3qum@������&g���DEu��>��-��~�"���.^���E�ZbIIi�i��i7����o����������n�������e� /~����y�UG�%""""""���"Eb� ���0�Ov��6I��!22OO�����e���L���el��d��7�������2:��` "�3~~>DF��c�W8������_��G���HH����ggg"#�8x0��B��%3f<N�F
���bbzZ������ODDDDDD�ve�H�����c��K0��V��k�����t���Z��,c�����LF�D���Fb�4||BIN�#��U��;v�������&'g��&��K�`�5��=-�
�p�|5pe��y��o�"������DDDDDDDnW6�'O\u\�����`�:�����������3��E����b��n�������s��G8��w���+���;���e��lx?������
6����}�g���G���������[�'""""""r��Y�X�l
G������������gW!ggg��Kf�"**���_��+6,��f6n�����0�����b0,w>�w���E���{����=����S����k�+46l�{~�u"""""""�:�E�������u�(����5�I��-\���m��������A22&X����i�:�%KV���}@��Qt�8������Qx{w�c�DGwg����x��\�x������S����{��~]�~{[�����!����
/��_]����������RSS���?\y��))�5��4��%%�z7������������C;w�puu���	��`�y�������g{'���������#�8�������Y3�������"����9�����Y�����������=DDDDDDD��pK/R���b��?;o��s��}��	%6v�o���-))�9s��������_��^����{.���!�=�|�����w���������/�E�k��;I��w9��zK���������V�aa�=:���G
�e��i��WZ%���c��WHHH�M��F�������$&>��8���HK{�.ZrKK���{�1_������SE�xee�����e$�����AE�9�����1�P�7�f�X��c'���Q��:��G&S�Un]�y$���^=z�	�!$��>��_���v����������as'��=����-��}�K�j�9s�M��%��:5�c��q��f��o��I�QQq�#G��k�:6m�����-ys��Ayy%��o�d�������6��'Lx��g�?8ztee���l���>���O����=|���ld�'%���ML��dff����������Z���9�l���/����;���K>���>?�5l)�����``��x��?�I4���axzz@mm-k�nd���,c�''������9(--���c"":���@YY+W���y�`4����;O?=����_�x���0th\\�1}>| ��&>��Kf�x�F����������S_DDDDDDD���~~M�:��������`���k�����t���Z��,c���[~�����IL���������������S>�r���/���Dee���n����D
M4o���[�������"""""""�86�'O\u\���k�@���lS�h�������"��m@AA1����s<==�={:�gO��������+IKkylc��w�r���Us�9~���9g�����+�O����`W}q��=�-[���'(+� +�-����U����!C�������s���`�
�
����q��>���l��������'>>^$$d���)*:��l����^�����'�����k?��������Y�����DF��|�����
[-�����Y���@L�hZ��"(��Y�������/���N��=	���$#c�%���G������D��������C-�%Kf���w�aU�i���k����b�$B�q|*�	��d�1��/�"a(�c����iM����������c���4s�l4�~Yi�ONZ)")������~��r��,KE��:n��>���n��<�M�������������GDtc�����������c(.>d���6m�������������_DDDDDDD�!##�:���'H����QC�&w���LBC����Tc�"""""""M��m���0���K�<����x'��������Hcpxq�H||��L�]�������43vM���5�U��F�}Y�����������=DDDDDDD��pK���������9y������������yo�����k��h�&���799��s�r���?�=��&EQQ�~���\�������1��'������]�
w��ODDDDDDn=��JJJ		�ec�q����������� IDATIGjj6�z=Ahh,��O����. 6v�'�Bbb;F��IA�g;v���	��������={��bjk����F``>>���fSSs�6�x�
x`��������M���3��UWw�RIN�����[��k�?�D���).>HZ���{����������������N�;�b�����s-��_`��yA���IO��[���C�t����/RSs���7�}�j6l��9s9]LZ������;���xUU5de��������k/s��Nv�Z��������!Ouu-����=,]:WW�[��k�/_���
4�h���
x��?;}}nww��DDDDDD��rhR$%
���%����X��}��A����g+�f_���Y�j=�&=c7n+W�s�����-[KN�L&o<<�y����X�C|JJ<�h�����������s�D}�&���/���pK��s�/""""""����x�]�������V���?��;����b9�������1��+�*���0lX�m���\\���������-��>=������@uu-��w����'_��0���r�p:����������������4wwR���_r|����n�K��������ee����J��}�������7������m��f�|���{?���xx�s��bbF3j���6QR�����j����^�X�4�/��O������������������94)�x���QUUCn�����w*����?�����9EYYyyK:4��<�����M�>�o��������>����X�V8������g��%<<����r�e��:��}�����?PQq��^�K����EDDDDDD���		��I%(�f��f=�t��H�V�t�Mx�������iv�-�If�<<����6��?��?�w���+�R))��H�vm���F\��������������j������7o1~�CC�f�������������222���O.~�s����5����9����(�����v%+���.EDDDDDD��m�,���a41����x,''��N
����u��������if����k��[�N������DEDDDDDDn$=�!"""""""��FiRde�b������Sn��n���L��������I�����M(��cn`e""""""r'k�&���?��O����7n% �����s���7u/�����9y���?����������H�(/������X�i�{}����R����e������Hcw'EXX���������>���Z����1L��
��t���$�p��I��&��N@@23gp��9[��U���m���'NT�;L�0��Ed��pj~����{���G�%8�7����={���_�>����#2rm����C�c��'{����{S\|���)���'�����&��N�;������eK7�
Kg��y��/�;'?9����DE�QSs�������c_���:���LMM-����m�����x��W#�����5��'���;��TW�r����uW>�|nnw;5�}A�q�VF�z����+n�J�_���?�E\����fqq�8q����O�{�;��� 8�7��/���+�����II�pwo��``��V�|�!h���DE����
�����zV�Z��I����������/�h���*��=��` 2�!��k����.W�3-Z���12WWL&o�
��u�/"""""""��������
����Z�v�t�|�C"��8.����������J����~��}{��4�6mB1�Yjk���w���w�w��s���+"""""""W���(--���&�7���WW�D&�7��.�������J��}�.���s�Lb�����
���E���0������r�;��{;��������"""""""���I���P\|���rs_'>��S�\\\<�1f�^HM�)��*��[���1N�~�G��W��j�eK7�[{:=���/�1�n�(O=�����X��.\���������[������������I��0���T��za6�0k�sN'[����j�N�N���?N�>����f���FPP/����������^�����0`�(Z��FH�@���IJ����t����������������Z�EDtc�����������c(.>t��i����'?A:~�HF�r�0��%'g������i��m������h�`0�~^z������;)DDDDDDDD�kc ���������if����k���8��T�I�{��������mAM
q�������?9~��/���1��	%6v�
�LDDDDDD�dM�I�q�Vz4�����/�2b�`N������6v9""""""�D4�&���JJJ		�ec�!""""""M�]�",,���lz�z���X��Huu�]@l�&O~���:v���?����8v�$II��	' ���38{������uddL#00
�pRS���9��}%�&%�9�9Jppo��{3{�B[�'����&S���"2r�W��n~��'�� 8�7��IK�Bppo�|���,i">A�c�W|��;�l���a�L�:����v���/��w����0jjNQSs��1v���:U���������Q�m��^�T|Z��TTe���h����#�%+k&���3��� ��
��q+�F=GQQ��f���+���<�1w����?���������_�n������������������HS���GR� ��[b0=:��+�w4�/QQaxz��l�����U��3i�3��q�F�r�:����jX�l-99S0����p�����b�c�7c4p�D{��`0�����!�EDDDDDD��q���]�������V���`���^�D�q.\��l������P^^�p������0�����jhh���Hmm���Lv���={���������W_��7$���������<M����K��`2y�5(\]]�L����PVVA�N�P^^��������4�y�������h�j����g+�����9�8t���Ka��edf��
�/"""""""7���o��������!7�u���;�������c��������������T|�6^$&����iTT�j�r��!V����y:�b��{!������}�J�Z��l���`�uk��_DDDDDDDn�&EB�@bbR	
������Y�9�l��?���;�:E�8}�<Bvv��������{�x��B0 ����v�t����c�	�# ��������J0`�[w#$d ���$%e�
�/"""""""7�!##�:���'H����QC�&w���LBC����Tc�"""""""M��m���0���K�<����x'��������Hcpxq�H||��L�]�������43vM���5�U��F�}Y�����������=DDDDDDD�������������9y������5�1c&7���-99��s��if�T�����O?}�g���q+=�z���?��O����EDDDDDD�����������.ADDDDDD�����",,���lz�z���X��Huu�]@l�&O~���:v���?����8v�$II��	' ���38{��v}�����������s�Z=@mm�5���x�
x`��������M���3��WBppoRR������&8�7�g/���Z����i����>�q-��uddL#00
�pRS���{'s��+""""""r5�{���������k9�S��s��_Nz�H������KG��}���S������W�a��������_|/�W��������<<���WWW^{�e����]�����y�p�}A�d�+���������&Mz�������?�9������g��}�����[���!+k�O���8����&ER� ��[b0=:��+�w4�/QQaxz��l�����U��3i�3��q�F�r�:[\r�`�~�=X�|-���������x""����+f�/		),�u}W�'���a�����L�d�������������]��+""""""r-��h���%�m��<��j�`0��;w��!��r��1�}mc��>��W�~>����9TVc��}�?��{���k��e�����A����{�nN���}w�a��m����#��u��n���}EDDDDDD���IQZZ~��L&o�����C"��WW��*�����+������G���b�?���������r9p�]-��o�?}�11����IR� �F#/��g�o����h4b�^��\���4�y��57W���������\���o��������!7�u���;�������c�������������cw^r�`�,Y�;���{��x�����M�>���;��3g	�h4b�g���uv����r���+����]i�6m�HL�-�����8��j���C�X����NSu�����������84)�JPP/�ff�z��d��V����)������������:4������O;""�]w��``���df����A~���������M#.�iz�L`��g����Pc�.�;6���8z0}z�m.*jAA���_������z2�����g�G���xy�0`@*%%���~w���}EDDDDDD�����a�?p�����d��!�\�4���LBC����Tc�"""""""M��m���0���K�<����x'��������Hcpxq�H||��L�]�������43vM���5�U��F�}Y�����������=DDDDDDD���&�8HN�d����.CDDDDDD�5)����;���Yxz>���/�4vI""""""�����r�L�4�;���_o�b9N�~#���F�Nh��DDDDDD�	���",,���lz�z���X��Huu�]@l�&O~���:v���?����8v�$II��	' ���38{��-6*jYY���o$�����o$'NT��/^����A�����)�>}���,�o�d��B��c(��Od�����'����&S���"2r�W��K��Y�V�|s
���I@�=���8K��j��DDDDDD��px�c���X��uv�\����:u�CP~�r��Gr������.]:0v�����b���l���
>f��Ev��6}���.��o7r��y.|�6����k�����;��k[�2o�b��1�Y�TV~Nn��Y��.n���R]]���c�|Nn�T����	�M~��'NT���]�?�
V��<�v�����������H���HJ��{K�G'�r��A��%**O�V�������j�z&Mz�66n�V�\g��K�V������=E����x""����+f�/		),����G����L�27�����FLL��f�N��b��"#�]�6?���������������?�//����������8���]�������V���`���^�D�q.\��l������P^^iw^�����-\����e�����A����{�nk]n���1�}lcf�uu?���~��g���4���r����������!�\���aM�)

.��x�
][q��������d��kP���8$2��quu����w<��W����p���>}�����5���M��|���#�Z������S^n�d}��9����3g{�|���PX�o-Z�T}ru~~&��m�W_��x�������_4bU""""""��84)�x���QUUCn�����w*����?�����9EYYyyK:4�����3�9s����F#�q�-[��F|}���W3g.�����������bw����o_	V���-�0vwv�Og0HN���~�#G,|��^�.]MJJ|c�&""""""M���		��I�����?��Y�9�l��?2~�Kt��]w������Ns*�]�6��M#.�i��[���AttwJK�8�����HM��d
���0xp?���0EE%��"�q<<Z��CJ���������3���}��������g���GEDDDDD�i��������� ?~$�F��qOI�"((�i�&6v)MJrr&��]��z��K�&h�6nnn�F�����?���q|��)����������u�6;|�CDDDDDDDnO�{4eee��N���m�����Ed�C�]V��??Sc�!""""""��]���pMc�qC���!6�Oc���9��T���z�CDDDDDDD��f�������1��;n��/���1��	%6v�
�'8�7�����3'OV����+99��s�m}i��u���z��\F������?��������O?}���l�����7l����4#Gf��� &S/����%������H�&�OPRRJH�/�����Is����|���������o��k+�,i"��aaq��f������2|�D��k�bc�0y�+$&f��c4���|��c'IJ���O8=�������l�QQ����E�~#	�M�~#9q��6�x�
x`��������M���3N��`}�&��B�C>|����O�'��
��G�X������##c��Q������MM�)��Od�������M!8�7O>�_N�5�������K�:t���F��WBppoRR������&8�7�g/��s�D����d
���WDF���
���\V��7�\Cf���C�#F<��%�n��""""""��9�I�c�W�_�:;w����L�:�!(?9��#9p`{�~H�.;�EjjN��f�o_��
3g�"��M�>��w���9w����]]]y���9~|'�v�c��B��[���#F<K`�������}�5k6��%'g���=X,��������O�������{;v�Gq���j���i�_��/hf����[����������%K^���=EE0i�3�s���+���<�1����N�������9b���*|����������~���{o��""""""��94)����������	�\��C��A}��
���f�/����Z��I�����7��+���&&����;...DE��gO�m.%%���n�h����KB�@
w9�~E�Q>�h;S�����n""�m�9r��'�|���������g������jX�l-99S0����p�����b�:������o����U��{��@d�C�k����][[������/>����<l�"""""""�����v��^r����cX�V�m�s�{Y,��p����6���Cyy��y�[{��[�p�{b��mL�����ihh�������9�u���_�l�����>��]����~���{�m��}w�a��m{mhh���Hmm�k�����,��Os��9��&RZZN\\?^}�ON��s}�FM�)

.��x��[�����������(--���&��]�����!������ee?�����s/���3���f��!m���#�����x����~��r�%�[����G�������m��f�|���{?���N�G���[�t�������j��uW��.���h��5��w���3�={>`��(,�7�-�f�7�����m[��W?<��{�>����d}i��o��������!7�u���;�������c��������������T|]���9KxxF���8���uz#�����+��3p��yv�����o����
c�����,-=��u�m�m�x���[���QQq�����X���?^�'���_vf��BN��vxg\l��L�l���e�������e_��~�G��W��j�eK7���+7��` 99�?��5����W{Y�t5))��d}i��		��I%(�f��f=�t��H�V�t�Mx�������iN��k����i��=M��	��,�����	�t�<JJJ1��HO����a4���7��a��O	��_1������E@������������a�?��S������3|�D}4�!��``��7!� IDAT�df����A~������t�������������lsEE%0����2�~�z��2���o����	
������uO?=���n��""""""��222���O.~�t����u��c{3��d��i��&%99����de=���������H�m�777�F#����������8�I��}��n��B��?��u����!"""""""�/��{4eee��N���m�����Ed�C�]V��??Sc�!""""""��]���pMc�qC���!6�Oc���9��T���z�CDDDDDDD�.5)�Arr&s��7v""""""��4�&���[	�������4i��E_Z��:u�5s�,rz������������s�����}���
���;�C�-���������
w��3�qUU���?��]�����:������������>��._tt��
�j�2d�8z�����\�����oF`�/""""""M���aaq��f������2|�D��k�bc�0y�+$&f��c4���|��c'IJ���O8=������������##c��Q������MM�)��+!8�7))�q��Q��{����:5�����h�**��j9t�W�_PRR����V������������c��^DGG����N���������b���kRR�PZz���.�������n���>F���eke�""""""r�9<��c�W�_�:;w����L�:�!(?9��#9p`{�~H�.;�EjjN��f�o_��
;���������{;v�Gq���j���	�}�QTT��%���������
�4����t�DDD7�~�=[o������������{�����/�&<<�'����I||��o{�u����g�*""""""��&ER� ��[b0=:��+�w4�/QQaxz��l�����U��3i�3��q�F�r�:����jX�l-99S0����p�����b�c�O5ztK�����t�j�G���[Q��$=�%��/�1c�{������~���$�X@�]�3o�b��N���������������I��]�K��PYy����`��w�|�C"��8.�c6�����}(/�t8�r��}w�a��mk544��b�������e%&�2a�������p����#����;�J����)~�������l��WW���_�d~����mc��w��c���0�!0�������M0i�������d��kP���������eet�t������8.z���@3�7�}����F��+N_u�����������������{K�s��g�k�~���)(��
�F����=���o��S�wXt����i�==}aa�\DDDDDDD���=�x���QUUCn��w\����?�����9EYYyyK:4���6m�HL�-�����8��j���C�X�O��:t��b9�����s����x��5,[��Q��8�_i�����ee�b���Y�67��9s�,��_pz`��O9p���������������8�����^[IFF�M���������M�����������Y��s:���U+w:u�&<�q��y���4����g�G���xy�0`@*%%������c�&G@@�O����G
�ukOZ���G�_9�p��;S_su��Y���+;w����;-[�-[��=����^}�-����0s��o��#�!7�u�~;��=�%�������a�?p�������w���f��u$S���o.�����LBC������O��m�,���a41����x,''��N�;�g�������!"""""""�����w�G���3��t��{��f*>�?~~��.CDDDDDD��&Ea����������w��;}��r�e�"""""""7R�{�CDDDDDDDnOjR����L���o�2DDDDDD�����7n% �Gc�!"""""""���kR�������H�d���#55�^�� 44���'R]]k;���_!11���������3�;IR�||�	�Af���=g�]�x<0O�i��a���p����<XF���xy����P����1����������<��#G	�Mppof�^������/��8j[���r\]AII�S����##c��Q������MM�)���U����)o�_9���+~��FDDDDDD�yq��b���X��uv�\����:u�CP~�r��Gr������.]:0v�����b���l���
>f��E�8WWW^{�e����]�����y�;���g	4SY�9��/�f�F[�}�QTT��%���������
�4��t�DDD7�~�=[�[o�!::��������<�w�c���(.�BUU
YY3m�s�����Z���srs���v�qhR$%
���%����X��}��A����g+�f_���Y�j=�&=c7n+W��������-\1�}IHHa�.��WT����3e�8���&"�11������X�d����KW��:���WU��l�Zrr�`2y�������e���g48q���{`0��|�v��\W�"""""""������k{�q*+�a�Z1�����uHd����z�f_����������l����y�������k����C����>���c3�}��;�p��$&�2a�������p����#����;�J������n�


������������9{�II)--'.����'<<���QDDDDDD��r��������#�L�v
WW�D&�7��.�������J��/6N�>CL�hF�BQ�&JJ>b��X��E].��y��-���8�g4/�����������,]����X��[��s������m��f�|���{?����&��g+�����=�{���E��]�����x��w(.>DUU
���;�ip%...��g/���ee��-e�����p��Y��C0�X,�Y�l�������W�f�\��s���s������|�X�]����G'��[kX�l-�F
q�������"1����O���(V���b�?m�����}%X�VZ�t�`0�����{i��		��I%(�f��f=�t��H�V�t�Mx�������i��G'����4={&0r��DGw��b�.�GII)&S��/1xp?�F�-t����c�	�# ������?�h8�[{���'=z��a���??~t���W�RRr�6_TT���h��!!���'))��qd������?��	���G^���QJJAAL�6���~������L�:�n����fIN�$4�+YYO5v)""""""�m�f���
����`������c999�wR����b7{���A���|�_�����|�q��W=DDDDDDD�q9|��vVVV��q���:��m��YDF>�t�#���o��?�E:t��v@3�??Sc�!""""""����""""""""?W�x�CDDDDDDD�\�U�"8�7�����3'OV_�����������e������H3s[5)��
���w~����q�Vz4j
"""""""w���I!"""""""��]�",,���lz�z���X��Huu�]@l�&O~���:v���?����8v�$II��	' ���38{��-v��<��<=�}��IK����gn�f����,�o�d��B��c(��Od�����WBppoRR������&8�7�g/��o�i��TT��u�P9���������[[[GF�4���	'55���S��'����&S���"2r�W���'""""""�������+����;�r���N���������8���{?�K����"55���3���f����3g�-�����^{���w�k�:�n-d���7l3���R�#F<K`�������}�5k6�b��/����,y?��PTT��I���K'""������b�zk
�����v}���g��}�����[���!+k�m~���R]]���c�|Nn�T����a�ODDDDDD�194)����������	�\��C��A}��
���f�/����Z��I�����7��+���RR����F�����$$��p�
����/WE�Q>�h;S�����n""�}]�����%�l�/]�����v�\��VU��l�Zrr�`2y�������e�����h���*��=��` 2�!��ks]5���������\<��]�K��PYy����`��w�|�C"��8.�c6�����}(/����e�6�O�c���444P]]K���n�f�������l�����>��9�8Jbb,&��/����)-=B||�s�t}���0�����uCC..Fjk���p';�i��=GR�DJK��������	w�k�]9�IQZZ~��L&o�����C"��WW��~xGByy%������bbF3j���6QR�����j��s�]-��o�l�W�w6�������r�%�[�3���	���NBB��j�.]Mbb,��-�����
4�y��|����f{�~���;lMO�V��3�={>`��(,�7�-�|1"""""""M�C���7����UU5����p'�����0x�c������S��U�����Cc��;��3g	�h4b�g���yL&oL&o6m����\i���W����^�"�9s���g��=�����:t��b9v�V���[o�a����5�a�J��M/Kz�4**�b�Z9p�+V���~�G��W��j�eK7�[{:�G���C�"!a 11���l�a����N�`�i���N��	�>}!;;
��hC^�4����g�F�|����9��$3s����������f��y���b2�������h��D]�tb��d�������yv��>N����n�I��rX�j�7?~t���W�RRr�6_TT���h��!!���'))��������a�?p��������QJJAAL�6���~������L�:�n��\���LBC����Tc�"""""""M��m���0���K�<����x'Es����������n������g�������!"""""""W��u������q����Su�m��3���|���G���3��t��{���T||��L�]�������43v�{���������\z�CDDDDDDD�45)�"+kc�Ln�2n���L���o�2DDDDDD��Q�BDDDDDDDnjR��������m��IGjj6�z=Ahh,��O����. 6v�'�Bbb;F��IA�g;v���	��������={��x�
x`��������M���3N�?x���}���
�G��>��8���n����Ghh,�����3�����Y�������C���$^^!<�h"�1��jk����F``>>���fSSs�6�D����d
���WDF��������������4CwR���������k9�S��s��_Nz�H������KG��}���S������W�a����������k�����;��k[�2o�b����,��f*+?'7����hw�T����dj��=E�����TVs����L:v�����������i�?-�yv�����Q\������f�����+���<�1����N����k�DDDDDDD��I��4w��F�N`����
�KTT���0�}���g���L���ml���\����ODD7Z�p�l�%!a �����_Qq��>���)�ps����n��D��p��w|/��eg<=[�������k�w���O>������w�E�������a�����L�d���������?��h4p�D{��`0������?�������Hs����v��^r����cX�V�m�s�{Y,��p����6���Cyy���-[�1}z��������Z�w����r���c6����f��~x\������\]puu��1#.�_��#G,t����=������a�
K�]���\\�������Nv���={���������W_���{wR���_r|����A��2��quu����w0��W����p��bbF3j���6QR�����ju,�r���S^n�$������Z��������W���=a;4�y��|����f{�~���;lMO�V��3�={>`��(,�7�-s�F����I���P\|���rs_'>��S�\\\<�1f�^HM�)��*��[���1����������`4�X��l�Z���mO�^����s���s����������=QQa,Y�p�A�n�f[|�6^$&����iTT�j�r��!V��������}%X�VZ�t�`0�����5�������4gM�����������Y��s:���U+w:u�&<�q��y���4���#yy���{��=9�Y���_W�K������)����<�F��_Q�Z}o����M�>��ra��?��?�w���+�R))9l�/**a��Q�n�����������!��G������a�?p�����d�������,���6mbc�rGIN�$4�+YYO5v)""""""�m�f���
����`������c999�wR����b7{���A������i���q;++�`��?p�Tm��f��,"#j���8�����35v""""""���5)
�4VN���Cll��.�����REDDDDDDn�&����������������������e������H3�&��������������]�",,���lz�z���X��Huu�]@l�&O~���:v���?����8v�$II��	' ���38{��-v��<��<=�}��IK����g���`}�&��B�C>|"c�L��FE
#+k���$8�7������*����
����
�����3s�|}#92�_[[GF�4���	'55���S��'����&S���"2r�W����������H3�p'��_�~��������/0u�<�����������-���!�?{�WU�?p�u�({��Tpa*��+���j.Dlh9�Is�?����LsU*��%���i�2�9Rr+.�������]�{E��|<�C����������g��U
�A����q���w��z�l��3*����Y�d:7n���#���� �X�������W� 6v,�}�U���m{��a����w��`�J���};�}����h��cI$%mg���z�:|����8t�{���IZZ��S���f}Izz&g��Bj�bc�`jjR�^B!�B!�n��W������R�x����Y��N���_�e��XYY���Lnn.��%2r�;������f�&�]�~���6�Bc������#���+W��k�~F����	��
l���G� ,,�Q���l��c����jUwLL*����k{bee����.]%--�U�62{�h���4���z�?�32Rq�f'O&�R�h��!���z�!�B!��yg���������W���hP�T�zO�t:JM�������9+�\]��t���z��}L�4�������Gzz&~~
t�*���~����unnNdei_.bcc��\�����$���V�06Vcl���:#������/���C�m����ZmDff��������������_"8��>KKs��!�B!�B�����_z���8:�i%(����06Vs��?�`�t�*���I���� "�+II�HI���!}�ht�*���~.]J}��T�zE1d��h4xx��c�JN����[8y�g�];�$!��,�1c$��m����<�_.\�w�B!�B!��L'I�lY<g��#--������v��#�ZMHH{�M[@F�m.^���y_��[ YY9����I����z�U�6�������L�2��w���������z�/����������C'p��54
���X���Nb�.N�JA��`ff�J��:�C!�B!�E����{�������t��2S���������!C�S�z+*V�H�n���/�7o���������V��8�����������cc���EHH;���{�ji��h�T�����_(������[xv IDAT��7�|])OJJa��q���������������!�B!��3Udd�f��a@�#H�	'"�||���/��U��0�������O���.�P�B!�B�C���bjj���*�J������n�����{<�~����������i��B��!�B!�B��G�r�����W<�#n���R%&O��i��e�3'4�..�e�B!�B���V������*��%(�mY�����f�B!�B!Di*W�{!�B!����L')�����[�n�����[[���*�x���P�JT*On�J/�~K[XX�f-*�0�B!�B<g��$��7.��}C�u�0		_�Z�II���������u7���KmL!�B!����$E!RR�S�~��C!�B!�x�h%)7����{��D�������� (�-F��I��T��
W��l�����o���0������������sWi�x�j^|1+�z88�����������g/��+aX[��y�n���������h�����y����^��;33���	xx����	�����q[)��3/�6�9s�F����>}��;��-_g�����������`�v��S)xy��_�\�|
/�6xy�a��J��7�
}G����5�i��\�pE���B!�B�������Ib�R~�}#���g���u-Z����$'������U���##�6�O�`���l��3f,T��d�tn���#G6�{�A>�x�����;7�^=@l�X��n�V���(�U�Bj�A�M���o�*0�C�=��C�s��N��2��������%)i;n,\8�����X����?�5�������g���@R�v���3r�;J�Y��$==��g!5���c055)���B!�B��������3��f�T*�x�;k�����s�Wh��1VV��9�����u�����n����Y�Ii��_(��
�P�77g�w����G�����k������cjj��o[)m._Ne���5�]LL*���KZ�ii�Z����G��h���9~8���7��_}�\��T��������T*�6m����_!�B!�x��������?�r��u4
*�JY����NG��7�?77ge����.]U^����I��q��Y���HO�����N_��_��������������-._N�r���R�U)������Pe.yyy��Fdffaii�3�����3�;w����{�?���v|��D�bB!�B!�v:gR�?���/��h���06V�t��h�������G��KWqu�O*dg��]IJ�FJ�.���F�Ta��s�R�����������v������;v����-�8���'���Cz}��'~33S�����NK����b�
���:���Q����*�1c$��m����<�_.\Ul�B!�B!Dy���X�,�3g����Al�RBC;���Z�&$�=��- #�6/^a�����-���rr���I}���HM���U����_�L��������c���N���-�|y�#>�����M;�r[[kz������r�����s�^����*�>��������u+]�����qt�c��=��S��3����!fb�.N�JA��`ff�J����J���B!�B���N��{����jU����:u������XX�S�z+�4y��m�3��td��	�E�����U+?������II9��cc�OHH;�����7��f��_i�$�O)��j�h�T��]�����>�II������?b����\�n����/��X��J���S�����e=>�`�Vy�Z�4(����qwo��I�����"��i@��i����u�+~!�B!��i�������3���!�DD�����ES��;&�W��<S������Ct��e�B!�B�rh��TLMM122B�R)�>������=[�L���o����$N�>��M;���!�B!�B��K��O���0x�G���E�J6L�M��
�:�gNhh\\�:!�B!���$�����Uz	
jKPP�������R�B!�B��T�.�B!�B!��K�BGXX�f-*�0�B!�B<g$I!�B!�B���$)�B!�B�T�JR4nL��1�����'����#==S�AP�[�5�="�V���M��}/����W�a895���9QQ��s������4BC����1vv�h��+.\����~�M�v��������e	B!�O@D�bc��uB!�q:� =t�O��������_��13w�GZu-�c��/h��1����Od4����8}z�t�A�J6�;�Y��$==��g�b�
8pSS�������#��of���7�����R�(B!�B!�x�t.����3��f�T*�x�;k�����s�Wh��1VV��9�����u�����n����Y�����T��������T*�6m����^�,\G�n�t����GG;^�S�l	!�B!�B�)�$��}�~�����h4�:��/�t��z���s������.]U^����W����{������p23�t�*����������B!�%���ppx	����K`�����]���uxB!�A:I���/=��e�P�TZu���:9:�al�����1q��U\]���VV��1�c�6s��f�/������^x�2�O��cZB!�����	���8|��ty�#�V^����uxB!�A:I�e��9s�ii��.%4��^��jBB�3m�22ns������n��:���8u*�F���)*�
+��}���Y��u�6s�~.���">>Q��B!�B������������)66V�k��e�B�g�N��{����jU����:u������XX�S�z+�4y��m�3@)OJJ!  �����v�Z��_W����m����6m/Q�^ g�����B!�x4={v������B���y�G�z�����l���e�e��v|���"��	g�������[���u�B!D�
�/��B<t��B!�B!�(:gR���C!�B!�sF+Iq��we�x��{�T!�B!��4��B!�B!�x*H�B,,,�Y��uB!�B!�1��ODJ�yT*OT*O�����U/6o��U�u��J���jU�;��]�#>>A������)�F�T������3��qdd�����k��Z�r�2��qM<<Z2|����gP|���u7���
jS����!�B!�xIR�'�����?�L$4�����u�Vyt��dgS������m�����h���������?����f��?��OO�������t�������?Y�v+W~������O!�B!D�H�B<Q��j<<�6,��}_c��/���j#LMM�����R6a�\�|�u��_���
/�x��>��H�.����/���:�j�����6  ��}���;��9u*/�6��7�������/�6L�����gff9��895��22np�vu��g��8������S�7�h4%�O!���Al���C!D9'� e���>k�l��nff�q��c�<�x��9���N6n\���K��e������z�:�w�W���<��j��JR�v�n�MD�����z�>���k:�=ff���':z
_|1s���G���h��!'N���w��o��R�����9>>�$$|i�vB!�B���3)D����"--�F���;w9/)Kxx4����*=�x�7��-^" ��#GNp��Y�:895�r�f���E'�QT|e---�U�62{�h���4���z�?I��uk0{�h�u����z�����<��WU�Tq-���B!��3)D������
�J������F���633���cc5���z����i����+P��'n��'3@��b�'x{�`���,[�������U����������U�g^^j���YXZ���{GF����w
|}<�X;v�,���B�{_|����g�g=�]���I��n������exB!�!IR�2�o�4iR_k�����.:u�j5>>������^ko�X���'!a���O��?W'Iao_�*U\�4)�������3mZL�������N)��7��c%��NE�:t���IJ���s���T�B�|��'�N��5��uk������hW��	!�(��r�D�����s��;w9�|�A+A���GN�������X��[��f���$'���/Vi�������h4���22ns�����''�8?����p��e�8U*����O����T���G�����^���+�+����5=ztb��	\�r
�FCr�9V��A���W���u7K��`��O���X��;lp|�'�c�����B�g���9��.���`nn�����Z��K!��$�x������=k�����h���V��Y�03��Z
t������1c�B��Y7RR�k�_�f�N����H�6Mqr�W��n����#��m.4�������)���O�jUg��07���9�&�+����-����~~�X[�' �?))������I"#'7[[k���"6v,�����F������i�Aq!�x����Y.�BQb���H��9��:Q���E��S�����:����gbo���+c���cY�#�B!�xJ������)FFF�T*�������g��B����o�u,�P�B!�� �q�0Xhh\\�:Q�ty�.]^-�0�B!��(IR���v(��B!�B<��r!�B!�B<$I!��Y��:!�B!��IR�'���*�'*�'NNM���}�]����n�[)/X�V�W�����<y�������������i?r�RR��Ry�_����
[[�'0s!�B!���$�x�V���{�N��o�t�*�������&;������V�,&f:�d��\�v�%K�s�V�R�q�"�����MS�{�?����4i�V��v�����;I!�B!��D���222��X����;���Cj���F���(��IEn�����.g��Q�n����9M����wz+m+T0���###�j5��&�����3��s�?��
!�������.-�0�B�s��e"'�?��6�����G�{�m�6+���".n#ii%�G!�B!D��$�x��yg..~��4���T���H�|���88��,���JR���|0?\\�����{|''{����d��R��B!�B��"I
�DM���'���	�������d������,�|2���]�q#
����d�t�\��FcX��|��W�������B���_�R�X��K`�����]���uxB!�!��@<_ll�pqq�����c�P�Z+��+oo/��,pww�i�������v�'4�������<R���������h.B!���O�`:uj@T�d�����o����]Y�&����$�x�����?����-����T+)���GN��6��&T�d��aDGO�����
�9~��V�{�����K^^���������X����������b�
�g�B!�s���KKs��M���*��!�B_r��x���y�
j�����[w������T�g�Z�����R`���	��=#��kDl�R/��$!:w~33o�o�Kl�R���3��B�

�����NV!�x������C!D9'gR�'&3��-��c�C��j5��c��a��'&����U��h�9���X��s�:�B!��_�!!�x��B!�B!�x*���`��pqq,�0�B!�B<c$I!���CB!�B���=�B!�B�T�$�0XXX�f-*�0�[���A�:����!(���������o6�uO�_~9��Eqe�xn�JG���J�DGO5�}�.pv����y��|0��cg�4LQyy��J��T����^l��������'�Ba8IR�r�u���T�ZK���w?q�4ff���}H������ys���b�X��G||�05���kSF��	���b�����_~���a!(�-����#g�=�>����o�n�:LB�����n�]��;v����3��������`g��#$d vv���i@�����s�R^��
��g��"�*��C��_���l������1��uc��J��m���m���cl\S�>$'�# �?�u��O�*�N@@�bIJ}�_^^�'��Z�V����^�@��'#�6��u�]������S����k�������p��=�����4i��j�������76l����_��5K�bVV6���XY����q�����_�������d��o�p�J��_��SR��Ry�_����
[[@��w��-�w�������Dd����5(F}�/�)��
�_J�}�t������_�/���B��$���Jt��L����Z�RP��'�G��w���oQ�`��9�||��m�a����Y�`�����z�-[~�+�������w�.�U�:3g�����_�����������vO���%���
##�r�]��M�V~�<�3��j���
�F�NI����?�����Gs�r�K�N����6mHF�m��������A�n�DF��A�>|
������/m��& ��5�j���q���t��
�a��z�^R�l����|�m_=����q�x��i�8?��OO���s��)����U�wo<>>����q��bii��	�;~p���;��P��3;w�G�R��}K�b9r��������z�v��R�Z�x�������%0��`��(���~����<�L���������yg,�.]�����y3��������c���R���$�J��+�B�g7n�������y��w�R�bE������A���I!���SSe11���}��@��Y������������n?a�\�|�u��_���
/�x��>z�U���������8��j��/N���xy�����0/�6�������o���0������������sW�����5j&=zDR�Z+\]��}�^6l�B�����	�n�L�2gg_���������������K0���N�J���
������kxy����
��-�?'����h��e��]0��GO1th8�����c���n��U�$����{���f��?h���:���/��Y��Jy��
���n�����*�
�J�����������9���6(��*n���q�O?]����h��KKs�4��;��6h���D�ty�V�|��O�)W����T�������@����W�j����O�Q�JL�I�v-177+6.�F�7�|GT��������7}�������@��/z�Fq���={1w��"���23�X�~3��
�����uk0th8_}����=�<*}�/%�>�������0����3�^~�����nk�����.},}!�(�4
G����#XZZR�V-������+V���>|X��$I!�!*�x�4&N���?c��T���7���Y���q��i���|tqqsIJ����N&)i;+V|��4�����>������e�/���P��E��:4�����<�3�j��w�v�������c��HJ����?r�j�����,Y2�7~���M��}��?^@�UIJ����3qqq )i;II�9����=��;wy���/Wx��t��}����
5kV#*j2[��Bff��m�G�$�M�����;����)��f����_��J���11����2����
������8p��w���m�G�#;;��I��/����I�W�^g��C��5�{���WIL���NL�Ep��z�v�r*7o�Q�^-��Y���?���59z�����G���9z�99wn[��{�������:�����������]�����j]RS}�/����/Em��x��{|/JXX��U!5� ������?Z���y����B����'����^�z���*_��T*LMM�R�
iii>|Xi#I
Q���������o�������9�������A�����h4*�i��*77�u�9���,pssf����Y�I�n�����ec�.@�����T���j�����gg.]�
@�~0�%[ IDAT���6�Bc������#1(���obaa���Q��~��WKk�J�b��U��Y�A��ao������;wI�^I�oY�?��FPP[��_��A�h����	��xzz����)S���� �'�'$�?��Xg[�����|�+��|0?\\�����ys�Y-Z�D@�?G������Zu"prjB��������
�{���vl�����<����N��V��
>[[[�a�O�����-�������7n��8NN��e��5�����l���TYgnn�F�!++�Tc|�_�S��)�����{a._Ne���5�]LL*���K�*���WU�Tq��_!��8iii\�v��5k>�R�J�*q��E�]�H�B�3��w������O�h���,�����d�����2����cc5����}Q�T��W���Uj�
���U��NJ��A��/�GAV��X����V)7���s���S�zk�V�g����n`ccEVV��,���Hl�XN�����;������V��n�G}�33Sf�����e��w�T���]�P{��N�.8y2��?����%�&"b�S�!�8�+�p�F�Gf���\�rM��$E��O�uk?*V�@���xx���M�b�':�=11Y�,^I�3~A����#$&��Y��89�����9�c���W��g�IO�T���>&66V��Gdd�}�yyyz�����G��E?�T*�.�))}���_�Q��)�����{a._N�_��/*�c�J>�|�^����UJb7..�1cf+�w��oP_B!�-/^������L�ggg���IR�r���wwe���U����-�Ma��	L�2_�������j||���co������R������{��ciiQj�������j.^�����.]���I�����h4dg��]IJ�FJ�.��������C������Zm�_%�����0`@O��-J�}��Q�^x�2}��#'J���F�^$!�K�
�`����^���6R��'s�,+y�������f�kkK��l�n��}��y�.LM�`jZ���$)��+Q��+�&E��������=����N���y�HL�Ip��D����J�l���.�����aOq8~�4��Jb��5jTWW'6n��w�5��V����3��'���X����w|)������/�(l��������`[>8O@�W�$�v�����O�`%���������������B<�����TI�3��j5����uIR�r%77���;Z�+����
�F����x��>��=��n�h��|����3IN>�_��?�4l���Eq\�~�s�.�r���5�%����j5!!��6m��x�
��}M�n��7�CVV99wh��>FFF���`���:�*Wv&5�z��@����U+?~�y��1��#;;����������������yy��o������0g�2���)��m�C�z�055�_�����w��	iag���r�������9X[��nee�|�~��}rr����Gnn.99w~D$�����V^�*�0lX��S���7��s8~�����y��p�Wrr���s��~Z��G8��N}�J���������|9U����_%!a������(
���O�p�r*�y���^O�~�z�Q`��=t����v�����~�X���}[YY��s[&N��K��r�X�~�aa!�X���(���;��d����������GG;�m�>�:;;��ec�/�D�����o��G����4W������X)�
�y�B�g��{��PA�/$4
99�g]J�B�+�f-���[k���<��,>��~M�������.�=@�NmX�x3f,���1��u#%��R7�+W�Q��?
�������5��0��aaaN���h��5��mFL��R�����y�&<�-�>�V��t���U�A��h�8w��L�4O�����X�l��1��s���w�����/+/��U����f�&���������GI��s���$$d #G�`��M|��\����~������w������gg_�~���i}��o]�p��u^|1���"*�M:w~33o�o�Kl�R���3�c���P����8�}��_�g�H��������ufP||"m�4����uk?\\Y�ns�m��[�S���{�����������P>��i1��xS�F[Z������
z�(@VV6k�&2x���(6d���|���ES������--Zt�S�6:O_*�>���w�.��R��S��/�w|W�T,\8����XZ����+e�|3�m�~�I������_�����J����g�"�B���h4�T*��|y�������3�q�&�1aaQ���!:���E�S�Z�"&f�#}�����s����=�:���gbo���+c���cY���IO��z�V�����kS��0�}�n�����XX�s���M�M[����?��J+d���_!��m��x�������Z
�L�������������BQ������=�<�[�&U���u�d�����x��eF�kkK�];T|�"�]��3""�bkk��������
!�xZH�B,4�..�e�(�����������c������t����J���s�,sr�g���'M����(����B!�M��`���:!�P�/�,
!�B<+���B!�B!�x*H�B,,,�Y��u�9=���Uf������*UZ�Ryr�Vz�����������N������V�
�2���#�~�n��RyR�J�����K�8;�����1D'�B<;$I!����SQ�<Q�<16���GK������7_�����ij�n��G@@���e��J��3�	��]#ll��y7v�����n�[�}���z���r����������m���(�o��E��C��x{�����������3���P������ LM�����Q�f������X����>}���}Q���������oy__�����o�n&!�K��zy�a��}|��W��T�''�# �?�u��O�2��!��������>����<&O�G�j�05�C�z���%4NQ�w}�x���&��^=��Efg�`f���
[t����xf��NTeee��U=3v�l�v�����g4gCl��[ B!�	rO
Q������7�q����XZ�3a�{J�?l�������=z��uk(e7."77����A�:L�:c�~�ty�V��8y�g�������{T�":�m&N|_y��s��u��'��Y��N�;�������:�37o����8:�3v���_@nn���@�Z��9s$�2����a����Y�`�����z�-[~)��=	-Z�T��E����g��������S>�M��}i��7���Q�T�(P��'9�G���)&f:�~���_��q�z?���C4�������6~p���;��P��3;w�G�R��}K�b9r��������z�v��R�Z�x��AsB!��I!��Z��IE|}���}h���'�����j�K||�VY�
����`dd�Z����cc5������S��C%lm����5�[��k|#LMM�����A�������u�gff�~�f�����3u��`��p��j�V����Osx��&L���o�Nx�k��X�������T��0����W�a895���9QQ��s��V����5j&=zDR�Z+\]��}�^�����W*UjX���g�^��W����O������=�z��o��u�����]8^^mh�.��7�����W���XY����%MvvN�l�#GN`n^�������?����dff���-[���+������[������,"#'���'�&���Oq���={F����3g�2`�h���������0FFF�T*T*��e���_j�������i�����cc����iW.\�R*c���_Iw|�q��~���3G������4iR�w��m�8;�C��?7~�z��V�
?��������k�ss�b��h4|��wDE����
z���k,_����=�S�R��jC�~#�|�^^m��j��i�����Al��'>�B�g�$)D�t��uv�>��_e]vv?�����_�C�B��-���
5kV#*j2[���|0,m�".n#iiZ�O�J���\j��T�������gu.iy��Y���q��iZ�����[=��A�2�A����q���w��z�l��3��[�(��C�IN����?S�V�Y'��HJ���o�^��}������W;�����U^\{�m���a���k+w����Poll��%��q�w���������zm����_/�X��'e����*����}|�>���S:�=g��$--���)z�/n����%)i;n,\8�����X��A1N�:�Z����ms�	W���9������/��=;cbR���?&$d II�^��f�����L���������������_Q�����G�{�m�6{�>9����}�~���]����]��8���S�y3�z�j1g�2����_����'��]���Q����,_>��������#�������\�F!��E��\	����	�+7�w�.�7T)��9�[�-^" ��#GNp��Y��U�T�����5�1h�8��2�s�.i��;w9/)Kxx�A�;9���%K�h���������TYgnn�F�!++��1
����F�����C��t~�[�Q�^-�u����[�����`ee���3��e��M:�;w~��-(u�s��5v������155��������G� ,,�Q���l��c����~�B��m@�
���9��{G<b�E	a���������6�D�OK�`�����=GG;,-����A�^��
c��-���;���������BY���Ab�R�L�f���L�<���v���b��bQ�K�����7�8y2�JE��
���5��'1��~?���l������������r�Hq�9����>��c���������8u*����z�V�����d������=X[[>�dwIxyU�J��C!�x(IR�re��O8t�{bb�lY�������n�G���]�7���pqq$6v,�Nm�����i��?F�N���8|�e���1�!22��>����<e��E���������J���t��8;;`l����[�W�+Lj�
����J8��:q��U����/�A?nnN��������s�
�Z�c��}�kN����Z���s��\�R�{wa��_�z�:;w������o�����/���C�]��k��w��P�����e��}����.]p�d2�>kkKMD��RI��#&f ����^�������}������a~%Q��7n�_>5z�`�,���+�t��S}��E������������f���d�Wlg;ed�f���|��x��3��O�;V���K��/�X�$���3f��z����:�B���$)D�bo_�*U\�4)
G�N���6;!a�7������u�p��AI����0`@O>�����wwe1��R�F����������u5jTE�V��_g�u'N������+<��V����f����W�+�����j.^���K������Hx�>�*������O-�����s|����$%m#%eC�����U��rs�
�����]h��%V���+��G�N��(����L�w�����K�<<���0'Nl���-�<�3������!��qh��E�d��v�:@j�u~�m#�k{2g��'���3f�����=��������J���a~%������������;;���{|/��}�76V��S6o���;	�}BTQ\\�T��?������{�����`dd�w��4���$��ty�#�V^�����B�/����J�b��a|��W\����?�!#�6.�JN�qrr���O�9p���_������C^^������Q�	0x�G>|����������o�qss������<���~�X����������2q�g\�t�c�������N�/Nq�?~�}�7�l ==���s|�����������jBB�3m�22ns������n��o�gg��}�2e>w���������;K�o���rr���I}���HM���Uu�9:���h��m{i����/_G||���/��k��d�������u�[[kz������������s�^��^q?��[�y��9X[��ceea��?K"1q�N���h033E�Ri��SOr~�'�+�^1%Q��
��E=�={~#;;���O��^�����������JB�6�m�U��Q��'�,���T���$_��~�B���@I������^�
[����4W������X)�K���B!����V@�?u��`�����'��MS��s[������u�6������y�}�^bc�bf���1+����KH�;���������O�s��E��yk-�"44@�,�E��boo��W[Z��N�Nm���Az�Y��:uj�����1c!���i��))���
3��aaaN���h��5��mFL����l�:U���hQ�~�@������Q)����II9��cc�OHH;����n�0�����7�����h������j��SO�R�p���&ciY�>�����u��?O��d�� +��G�x�������������k�]�h*��.���bm]������\�;�������kW�^��X��'���,�~�{�$%���M���H�v-���k�����5�qq	l���T��8�}��_�g�H��������u��>��{��}��������/���}L��L����75j��u�^���?Z��_�Vu
�q�`���3i��R�_={v������/����������3����HXX>>u��~��C�H��ES��;&�W��Q.��gbo���+c��]���$==���[aggK��L�:�����
����baa��#�7�}��_��B�'m��x�������Z
�����������1.����4���QLMM�������l�����uXB�;v������]�S�X[[r���Gn�v���
z��_��B��B��`��pqq,�0��r��������T�����i��aY�%D�����t����J���s�,sr�g���'M�y������Ba(IR���v(��������e��@���%�B!����8S!�B!�OIR���E1k�\�/�B!��tI�B��/��Ry�Rybl\��>��w�)uZ����)X�V� (�-���e������J�����+�}�����7�k�����T��W�'$l���G������ ?y��gd�cW.�B!�eM�I!���{������?�<KKs�GLFG�����+�U*��/ 77�.]P�Vuf�	���1���Ke�]�p�d25kV{�����B!�B�gr&�(W�j5&&��m@@�?�����r#LMM����"*+�������Km��=��;w�#�����B��1����e�B�rN��\�z�:�w����S5�������HZZ�#�[������9AAo���B!�B���$)D���S*WnF��]7n�V����qpxIY������NN��e��5��I��/��T��Zf�!�B!�_������p�����d��x23���������?(�'����_#�������"##��������sV���7���c�J>�|b��+�������/��3f��z���e���w�qQ����#�\D���=n���J����H��*�)��v�L��=�f����k���f���V���r�d�-���
xE�9t��p,e}=����������|�}h�(R�Q	
j�[o
���f�M�����]������������������`���Sa���j�h�{U������C��!Z�f�/����;���4rd�����i��}����_��r)�(=��T�����G���-��?��p�����t�����*+;�#G��b�u�����_��1Vo���/��Z�;�����p�V���~I�={���[���n-Z���1���%?��K/��jP�@�5`@����7z��%����������p����TRr\m���K�$EF����yU���l��S��m�3�rr�9����{����:k�n��_�ps>|�����:Ei�`�IDAT��3dddX�������Fd��LEG�����]�XE�i��+*5�>W��H���*����b��555m�E�Raa!OR���-;�A))����&���h|���ictu\���A��uu7)��jfs��#n@l�n�"���Q��??��17�h0��o#d0D������e0D*11�6~��M
���7"��e'�����>����\)������s�m�w�m����u�8T���c���z���%'?���_���B�
����������������E�������
7i��q=�=��K�;2p��q��p�k��h�(R��<�H�V�\����+�����v�����SII��G<�uD�
j���VppW�1fL�]HH������Ws��V��~*/���j�k�������^�������psIOO����>{{{9������Iz��Y��UYyZ��~2v�[���6a@�^z�-��9_�t��Y���=��I�rs�������h�(R�A���*,�M�c������h��M������W��u����U92Y���[���9[w��=��PI����h�F�"��R���/��yy5w��1V��MW�fM����-:r�X�W����=}��2���g/V��M5}��k�i��G-Z�H�||����w�FP�I�5~���;��1�(((���c�Du��_���^�W/U�~qcV�\�u��\�����d{�W�I
4���&�5�����CG�l���.�����Z�b����������$n([��Ptt��$�:
�*�$�����6m���Q�A����A��:��H��f6'�:��v�(R��������]p��H�E
�(R�@����-P�n�"p)�[�H�E
�(R����h|���ictu�
�"��������=�[h�"El�����W��5G���h�D���Q��??��17������UUu��1@r�"�=�tuu����{��$+=}����+::I#F<����v���k��4lX�������Xm��C�TVvJiiS�Maa=��9[.T����?O���_�ZuQj�d�<Yn����HQQ���U�Z�{��
UV���7FQQ��������rx'��=_k����w�]�X�Y�8L��^�)S�����t���j���$i���TYyF��[�s�j}��6����n����������m:q���9[�������z���u���s���R}��FUU]���+~����P�HK(o=�`�rr�;L8����b$I~~�2�Z�b�(7w��x�w��I�F+'g����c�j��V���*3�!��~tU��
K����<<<�����j>pOE���V�����LV��nLd�m;vB���L�mm��!*..�bw^^^��%�>��~���M=u��y����P�(,,������@�1�������PQQ�������(q����V����y�_~���P�x��U:x����+�p�k2��Z���C�����KUYyFEE%Z�x�RR�����j<xD��g����j�������F��'HSS�Sbb�JK������3g���-Y�'M�������f��)%e��O�`7&%%QII�U\\����U�?�{[_\�P�������������e������7�"E����`��uNX���:���@����:�w�X%Iu��m�;u��������;4�=\��I
�lNP�6FW��d���w���p#��,�k���-��E��;�W���_�JJ����5G���pA��a��L��������
�N���Z�����''�����UUu��S����E���5y��:����k���������������$���**N�MHJ�3^��aj���BCc�y�IRY�)��MUHH7���Tf�l]�Pe7����G��C�[n�i���J����*+k���������o�N�,�������:x�@&�TTTo���������[�Zu�u�GAA�����-;�g����Bh �����km�����]���5k��I��+5e�:���T����$M���*+�(?�v�\�O>��y�������O���h���u��}��Z���l�W�/I�6}���[��������Z�t��o��E�����p��-�����z��m�fs���6������e�����M*-�����������~%�"EZ�@��x�`0��S����a���}#I������Z�E�������M�4Z99�l��-[���D
2@��25t�����|I6,I��>���P\\�����&_DI�qm��S3gN��Wsu��Y���������AA�.;Pii��V������:v����-2�Z��BCCT\\j����?(22�� ���$?�y���:w�|�7w5.]�d
��]~�/�"Eaa�e�Ge4�`0�����pX�h������Jlm���

����n�E���qf��t�:���.������k��H����t����Wj���d6'8��������s�������J�x�r��$��<��0���Sn�G�������V�������u�`��w�s�-QU�E���_��� ��)RS�Sbb�""�e2�h��iN/�d������v�z�[������>}���{��Z�z���]������1Qqz��7T���^���^���xu�t����:|�PFc��LyZ��S�&_�<���c{-X�d���}��>�1Po����&&�����W��m�;v��~zj����6;5����M�����>����Pc�s���c����ol���_�u���4�')nfEE%�4��:s��Z�����Y�����X
�lNP�6<AhXvE����wU����GII}\���}Y*��=�[hTE�������{d0D���
W��a������]p�iTE�������U����FU�7.�"ELL����+>~����4b�c��8m7!)i�f�xA��e�m�^

����;$Iee���6U!!��S���u�B�m�+���;� ?��
��	f����v����(6v��u�-=�v�M��I�={���
�i��5�x�Z�f-p����RS����C����O��}[I���O�������h������m�7o�m����^}�y�8�W��������`�+��]��)9�M��������Z��p���o�f�ii���-���LUN�z�I�U\\�$���W&SkY,��n�O���6i�h�����;����;�iSO�L���z�v��g�_�l�RR5d�yzz�h����_��n���
AA�.;Pii��V���=2�6���;��j�L��������>���������_���UT�V��m����z�����ht��(,,������@��$yzz8,d4���CEE%����R���H���;���5n���m���[5y�hY�?�q�m�(?������5�$Y,5N�h,����JQyy�.|Mfs�Syxxh����;w�*+����D�/WJJ�$����:���u��&M����z��5vk<��0���Sn�G�������V��`7�h���M�>�����C�"5�>%&�+""^&S������bK��I��>j����u{@}�����'H�q�����(9��sO���y\�z�����{g�^�Ts�.UppWu�������1Z��9ef�V����?�K���wRt��^<Y���k_���h��o/����GG��GG�(1��{�;f��~<�_�c@���$�+8<I��	j�������]�b���]�n����p-�����-P�n�"p)�[�H�E
�(R�@����-P�n�"p)�[�tu������8�5�:'�}Q�h W*@8[��F�v�(R���E���+,�gC_�����m�vk���K�����
�')�RU�E}��u�z���b������#pC�+R��$+=}����+::I#F<��������SJK����n
������p����d���Ge4�(0�.���?�H����������c�������������;w�m~AA�����-;�g�������a8)i�f�xA��e�m�^

����;$I�O�UF�3
�SHH7��OWe���9k��o��}[y{{��/��H�5���{�|�;V���KC�N��Y�h�%I'>�3g�*?�*+O+!a�Z����0Y�4����8���mj���v��'/������&Byy��q�v�7Myy��������U~�����V�{�TZ��v����z������3�����2a��*)9�={>������y\YY����f_1��l��[II�u�B�jjj����Z�v�^}5G�7�pjP;��ii���-���LUN�zI��bQn�=������+���&M���u?-����'�u��!��vQPP�SAJJ�k����9s�����{��JL�U����*..F�lY��+��[k��?����-|�����;��{������c��������S_�o��z�����=(<����}(���
ju�y�JK�d�Zu��	UW[d2�����������y��Gt�B���Saa��������h�s� ��1�Blm&S���=�062�6�����A�4t�IRMM�<<�����j����|#G&���{���h�$UW[�}�������Y���c�x_�9OR_v~TFc����@yzz����w8�*4���������{B���o��H�w�C���e�&Md�:��Nq����?�8P����C[x�I��e�
}��'���Ot���:~|��HR_���W��;�z���Waa=��uw�9sV����)S�����M�:q�T�9�Yk������6p(R���*<xD���Z��5��	�$
�_s�.Ue��h���JII����a������Z������`���������Z���9���u�`��w�s�-QU�E���_�����R����)S�QI�qY�V:tD����S�F�L�W_�����#Z�����G�4k�d~��-[(?����������i���x�������$�R�HM�O���������9s����,��|}}��]/u������[��O����������Y�:��~�����C��o���&N���d������.��-_�@��h���)Ok��~j���_I������6�����-;i��t>��S�Z�l����Z�K/�\�j�RR�i�����q�}�L���u��I������h4J����e���t��17nH}����Y���3�<��(���)�5�W��1���<8p@����Z��X,�X,�����_���?(66Vo����������h��<IR~~����R�/|�������`8p@555u�;q��L&����%�������J�������0`�f��RllW�W�����|}}�o�>�:uJ�E���;��?����s���9v?A�{��
��g���()��K3\/C��#�`�:t� �����9rDUUUj��������G�~�C��wR�03�$����a/|��IEND�B`�
Screenshot from 2014-05-14 08:53:53.pngimage/png; name="Screenshot from 2014-05-14 08:53:53.png"Download
�PNG


IHDR)�d���sBIT|d�tEXtSoftwaregnome-screenshot��> IDATx���y\�������(;�l��&e.%()�X�h�K���X������[���kf�������Lm��S�eb��%L+������* �6�?�L�b�~><��{����;�����k��6m�T7**������L&SK�>""""""""��
�����E�oM�<9����/6NLL�"00����;��U�Z�TDDDDDDDno'N���~����?6j�h�_���K���~����~���c��sww��EDDDDDD����+�]��p����m����i�����M���KDDDDDDD�`������jx���$c^^����;c2�j;.�
��ic2��tvv��xDDDDDDD����
�.#���(DDDDDDD���}�CDDDDDD�&)(( ##���L


(**�������������?dZ��	L&������STTd�PTTDaa!��������������UG��MDDDDDDD����B�������d2������;NNN���RXXHff&���$%%���Fnn.^^^����a���"""""""5������$rrr�S��Z������>F��z��Q�^=������&77���D<<<,���]����������
w�����y�������S����""##��a���g���l�������3g��������Ue�d��_�t��������ideeaccC�6m����d2��S�N���IJJ�����@��uo�:����3)DDDnG�����X�p!�������;�����9w�;v�`���=�#FTXVM�\���_���?��%K�p�]wU{�"""p�����


�`0PXXh1��`�E��8q�����o�:@�������f��y�����#�0e����(,,�h4b0���x�����a��{/�Z����k���=��O�~�����"���HErss)((�^�z����/4i
{{{\]]���!??���=�Y�������?]�t1�����s��i��[�:@���1			L�4�v��KFF~~~�9���@�/_��#GHOO������Py���Y����y��g���+V� 22�W_}�-Z������k����pvv�K�.�5��u����^�x������3z�h&M�������k������r��I/^��Y�X�p!�}�3g�,��+W�����r��arrrh��c����;�,���O?������7�z���,��������G����Os��E���:t(aaa�0�L|���������D���h��=O=�.$**
�3fHxx8,�e��,_����d���Orr2!!!4o��5k��n�:4hP��FDDn7�����a�g8p��M����m�V|f��_�tss��������:�������o��O��8_�:���V�^Mff&={�d���l���'�|��~��Z��1�����0o�<L&�W�f��E���K�����i�������>b��Mxxx0|�p�o���

����~���������^ 99�q��q��E>��S����8qb�o�###���c���,^������x�����������|BCCqqq��_~)�XP\V~~>/��/^d���xyy��[o1o�<�/_���/��.\`����n���'O���f�
xYm.^��>f���,���4h���>�����������8222X�~=w�u�&55���LL&�&M������H�z�)�7o���3III%zv��IZZ�����O?������;���IAAA�N"�-���coo_�v�QQQl���g�}ooo���y���i��;v4���������������Xaa!���?8v�����>}z�3�RG��]�S����9~�8d��it������J��E
���Y3��m��`����g��q������[��?����\L&���L�4�S�N�w���������ddd0`�rrr8t����g���8��Hll,;v�`���%�7�L������LXX���|��W�������������������,�4i��c����-U��C�8w�&L`�����iS�L���m����{9w����#""���\z��E^^������������y���)((�����_�S�Na0*����8::��I������������@���	���???������#>>�~����O�7o��O>���i���yACDD�"�����3�y��x�
/^��1cx������{y��'IOO/�����D9�������U�HJJb��%,[���^{�)S�P�N�j�#33���@�u���]�������dff��o��5)DDDj\QQ�����#�.]��������g�RSS����������Y�t)������FBBB0�L$''�l�2�-[V�����R1$&&�����K��k�g^�|��bD���mmm1K�T(��i�����wILL4ok���������6�����\N�)�&�����
����g���Z����g������y������1�����-�g���%��W����$&&b4���4�'""b���
������W�\�BDD��-��7��}��DDDp����

0^���:L&���#..��boo�/��_��W��[���?n>[�F�(��_�{�nz���7�|��������i�L
�S��N�:����w���O>a��A�9���|��L&]�t�n������_~��=z�?���� ""�^�z����������U&''��aC:d~Q�n2�(,,$66???lll�i�e��p��q��o��'h��	M�4���6�����b�m|�,����M��]0`���X�n7n�U�V�s�=�f����r����/��?a���3����O~~>"""����������,���K����1c���0���J�?����h4���lm���<��c�Frrr0�,\��'N��j����k�.>��c�M�Fpp0w�y'���?0�L����R�-R������/��u�V��9��A��,���9z�(111��>��l��
��D�>}�g�{��4i��M�6���B���IKK������{cgg@TT��5�E��<yWWWBCC����MVV������/�?���������EEE��


�y��|��'Q�^=>��s�F#C��~������������E����p�M�41��)�����i�������,:t�0�}����G������'.\��ma2�����]��s���L&�4i��/�H��-Y�ti��_DD���wrr"55�R��IIIe�����+8::V�5���h��yyy�3&�S����/�u�������i��=���t������;V�k!��`��s��AAA�� """7&;;�/��GGGbbb��?M�4a���4i���-[�����={��o���dff���MPPEEEx{{�m�6������0�_TT���C�x�"{��e���ddd��qc���������������O��gON�8ALLL�<���l~��'�9��w���+W��w/?����7g��y����*�S�NL�0���d���s��aZ�l�����_����*iii8p�������C�V����_�m

-QO��m��{7-[��c����E�}����kW6l�C=TnF�����s���9���+��O�m�����Orr2�������F��������={�����������888`kkk>��d2QTTDFF�����dgg�������
����Gaaa�2�����:�u����7����L&rssi���;w6_���:~����O7M�2����\�r�I�&��.\��h$//���$2331x{{�����d"++������(��cAAg��)��C�����!//��������quu����K�.��/�0g��4iC����._�Lll,���8;;��gO������\_���),,,QwNNIIIdgg�[~~>iii���V����IHH�q�����\�>D��
���#==�T=��agg����y�%//�+W����\�D�a�����dgg�o������s�n�D�����-���$&&���k��p���.������S�����X�j��E�'�|�b�"""R9�����7�&M��ppuue��������L&6lH������_���������i����T��u����BJJ

64��,999�����A4hP��H�so����I!""r3�
�k���x�����7nd�������888��uk�t�b�c����T���<����S�qqq���������F����rss���$77�F����JNN���#n�:�H!""RC��;EmKJJ�n��<���L�>��u�RTTDnn.�������v�"""���k38;;s��w���Bjj*III���S�Npss�~������������EDD�Zxzz��/�������k;���<��������PDDD�prss������wwwlll�w�(**"??����*}��{�CgR�������<�=Z�a����-��l��N��_i�BDDDDDDDn	Z��[��m[���CDDDDDDDn��'booo�VE����v�M-�-"""""""h�BDDDDDDDnZ��[�)DDDDDDD���E
�%h�BDDDDDDDn	Z��[�)DDDDDDD���E
�%h�BDDDDDDDn	Z��[�)DDDDDDD���E
�%h�BDDDDDDDn	Z��[�)DDDDDDD���E
�%h�B*����������u`���k;)����y��9���������n�"��{���r���V��C���(��~��{Z�����88���q5]�����~c�&5�0_~��j��z��KDDDDD��JgRTR^^>G���c�������w�U�Z�����z���kj8��K�v���������fJ,Rb��Yt��:`���IO�0�''�2r����
���3f�Dnn�9���4�yO�@4�����\���S1���1~��\������a,Y������K��\]����0F�z����<��9/3b�t�7�N�F�DF� ##�������W'����L�����CGi��9�������s�<�[om!11��tK�o)���oM�[��#�������DD���?����lN�4?�������	�E�h����������4�]�nw����xxt$"b��9��>?�����R�W�x����,�o)>�<���-���g/���h\]�:���d��."""""r�(u&���G���m�����{�s��)�s�j&�O����O����X���3�-�'���?���?�b�s�����U3��#Y��e6� ::���Hf�~����g���!!�V��+����������i�8{�[N������1��GOq���8s�[���2s�"�������ps�@��8r�$nn���K�N}���QV���mkz���+�.w����R������d����������5k^"::�
^5�[������,���OOw��&::�-[���p����h����FJ�!~�y+{�D��+���}��A��w���}���['���(�b���tK�{��4o����(�,��G��Um�U�Z�9r ��}t8�7o����O>����O������7S��e����fc���4N�<��` 8�����
$>>���0o�T������=��u/s���'$$�KZ�U>���/���g���;w
�6Y��o~��G�2v�>@HH ������.l���~~>���Ld�Vv7���$�V�_�����������5���Q���h��;����7% �%..Nx{{����C���=u����f���DE�\-����o�a��c��e��w��� ���&�����tK�{�r"��#s�<��]]�v�X��#"""""r�2�v��{��������d"11���B�2�F���o f��Lnn#G>Mll����7���h1��r||���||����)�o��MKm;w�"?<
��@QQ��6ddd���Xa|�G"<<���<=PPP��=���U6o�JXX��v�Vp�=�s�]�Z�~�����������iM�f~+k�lmm0m1m������B��v?/������STTDzz�;����CC�x��dee�Dd�>._N$!!����V�oM|�oE������D7����4iT��#"""""r�*u&Ell�u�/�������g�F[.]��qq	4j������K������8z�+��~a��KVhc��T:��r���+?���`~{=??v����������9y������W�{�}��w�-�g��C��v�����Y�n���-��O���
;���Zf���;w
+V�MNNn�����R��������f~+k�*b2�����_�G�0a(��;����SO�-��m_�6�(((���6�������e�:��n�:��6�����tK�[��))i��IIW*�""""""���"�;�|��3HK���o3dH������f���\����K��\����3���}7�N�`2�pp��`0P��K��7�&11��+��=�����"//�C���m��V7����#��6m��I�L&�����M�~/���F����_����sbc�g���<��S��~���3�O�����4h`�WZ�=�@W�6m��u�J���������P~�W�5��*��r���%(�666$&����_���F�g0���#K��&<<���k�

���*���-����!!��_�1pm�c��]����Vj�b�����7�f�����������V����i��;AA���}��aN����o�	����v����WW��Z����[0e�����_\iN{��W�����3�i��3xp/ll��K������mH��CpumG�����hU|���4k�[�O��)?�x;���c������;���FY��y�e��i�*C����R�Zj?T��Uei~T���+W.`���t�:�q���{�����J�BC����'(���a\�_�zU������ni|�9;w�%(h��R���""""""�:����M���'��-�zj&����?~&����`���J�3�L�m��Y�&3n�C����R�,���_DDDDDn��'boo���
���������|���gR��<��c��>}��[w��w(0���Bll�w�(uw��t�R<S��@ff������f|Om�UcBC���:�����������"ET����d����Cm�����ei|5�"""""�GwK}�CDDDDDDD��������w����<^������'�������{n�_��7����U*c���<���j����~����"EJJ*��?������wd���n�i��{���R�AVw��?���c��z�/��g5EV=��}�v����3��`�������/�Y��}.^���:z�7�G���""""""R3J,R<��_��K���o��{#���������jLLL,���v5f����8q66e�(�{n�n������7�p]�v$,,����`~������~���O����6mZ1m�8�}���!!�z������a��p�T��a��,�/'����K��6�8��g���#t�0�Q��&==������G�����3�������G�����������+_�.�����y%�0�q��y�#���yw5
&2r�}�5���am��a��Ux{wb�������m���������DD�#;;������������;��m���|������O>�
�0������1\����!O��H��<��36��B����Km_��m��3�]^�A����K�YL��?�����8qW�f�����@���qumGh���j������Hu1/R�:CAA!-��-9}�<yy�j������_�2
zItt$�g?Qb����}��:���<��+Vjm����u��#���a������d��W��S�<�����>��>����c��5��Y�v#������o9y�Z�n@ff������� IDAT�;��E��-�HH��f�h4��[#%�?���={�x��u��>��GO�����w�q���]��=ENNn��f��>DGG��c���l�?IO�����HL��+�������CC����P�����[�N%����O1K�OE�s9z���3g�%-�*3g.2��3��������%��������""""""���3)�}���`oNttt�d2���]m�9GG�>:����U[�UQXX�'�lg��'pqq�����S��y��R�x?!!��}�5����.��M	h�������%0~�:ujO�:F||�>�?QQ?Wk;������H�:F�;_���~77L&))���[W��q��Y������fU���@��;@x�c����}�Tb�������t�����v�?��������ggG�����M�����D���G��y;��t���~��W��DDDDDD���N���������9��Bw���=v#!!����`��:nDbb
��7��y��`_�e��e�akk��h��h��m6���~��~^|q%�O�������:wn_���W����l
��X������(���R���5k2��y��4��q��7�X��������A���
�����O"2r�/'���L``������������s�.������akkCFF�/'�������I#��~}>�i�3)Z�j���-'N�1'?~��-��[�p�,���szZ�����`2�_all�u�/�������:��Q��
0m�t��k��%���W�}���[�d2���C�~�2a�P��w����[�-Um�]w�����'�V*��������yY��V]\\�X�t6��}���_�k�|hU�6mZQPP�[om��xy��e�6:ujo>~�����OE�OE�~~>��������_s��7$%����<�))i��IIW�j������Hu1/R��81p`O.�qq	;����.c�6���={�HMM���w�*�qco�����;�|��3HK���o3dH�j-�F���2xpo�,Y����\�����1lX�j)?++���\���accCbb
~�E����>'�w�\�E+�{j����V-q]o����:��d�����`�����];�d�j����v����@��[�??����2bD8��- >>	���������u'��=		d����k[��*3���DD���]""""""�Q��k�.���
��t�:���0���bN��I��\�M�>��t�o�Z�n��)c��o^|qe��������D�5�����?[��W��U����#-Zt'(�!z���Y�"��lww7V�\��A���u8��=C���K�W��6m<������~����f���L�:��1��<L�f�X�v#}�%��u�]���������@�z�i��?�zue���V�D^^>AA�����R��(���S��c)}�����6�s�!����o����\4����rv��KP����%��?��={��7""""""��0}�t�k����T8�����	�������Hf����3j��%�9��V�Om�r�Y:~t|�������b��D�������`0�_�����/_N�n!�_~�O��-�:��f�������v""""""R�Hq�rqq��jD���������������H����N��b����%"""""�w6�w�yZ�����I��-IMM��pj��?q���qs�����v8b����Y����Cj��r�������S�a��������E�;�����fW[������wQDE��=��i�FGG�w��5ZGu���ek��}�
����;����|��?���T�1cf�l��r����oM���?-�����HM��������#'���n��=�}��S�!�2�M[��������7��pC/vcbbi�.�����@������TE�E���AL�8�n��C���4������TF��^^A��va������3�_����!O��H��<���8u*�0����������?�%KV���?�����k;�t��QO�:�v����3�eF��N���i�(���}ddd1}���B��
b��Y\��iU|�:t�(�[7�����{��"���-�o�5�����Mp�P��:��q�"�5�c�+��%66�U�6���.����<c����<2�0��9OD�<���=��%��h�+���}�5���am��a��Ux{wb���V�g���f�V�����Xy�o��_�|�}��+V�Mx�c�����H���qr��^��q�J�9���Y�����������9s1�z���?�T������w����-���Gvv`���j�k����R�Y3+��������M5�mi����@���qumGh��K�_��Y��Y��������[��'�����a���9t���x��W�iS�<�����>��>����c��5��e��Izz��Gb��X���v�j����H����
=���$::����0�;���|HH��+�j�T�������i�8{�[N������1��GOq���8s�[���2s�"�������ps�@��8r�$nn���K�N}���QV�a�~K�[b)�?���A�y��I$%���/����K�9��=i����
=��c.�Y�����������5k^"::�
^-�_y�oi~fff��'xz�s�X4���l������Ru�������{��W����%��A��w���}���['����w�y�s��M||R�7����=��Q���s��|��jN��A^^~���F�z�o�������gO�����ni~VG�������O�n��[:~-��5�[U���13h��	��Q,Y2��>��y+?k�?�2~�y~.o�Z��T���������������J-R�9GG�>:�����N��������..N��x3u�X6o��ka6�\I������������@��������M����N����_�2�8�~BB����]���`��yxz6�����s��i�u�����xxt,�g������z������M�������Cz��DFZw�����&��X�������C�b4��������|kDE�������A0}�f���������be��5��Y3_������������8���A\\��u�w|Tf��H������HH ��]�����;w��&44�������U3<<�����*7�o���FM�/��prr������@s���B�N��S����7���'*�gszE�������V=zt�m����c������*o�/_N���d��'���K��K����"�5�Q����������oF�&��=n�b��npw��c7�1�L$&�PPP����9�Q#�o�f��Lnn#G>Mll����7���h1��r||���||����)�o��MKm;w�"?<
��@QQ��6ddd���Xa|�G"<<���<=PPP��=���U6o�JXX��v]������"��?w�"]��[��+#"����xy������cUUe��5�����������l(((���������)�xL���_��

��V���M||����|9���d���+>V������Wf~���m���_�z�\����1������y����>}���"��3����9���Y��[��V�,����[U������4n�k�M�4*q�Z��T���FY�����v��|DDD�f�Z�������e<=`0��l��h��K��h�����Q�__���8�t�l�.���q��=�5k>d��_��ncc��T:��r��i������������z������A���WQ|���)s��\f��?����Lvv.��Y�n�iiW�����m�r��W4h`������&~��u�PXXT��7m�����Wcy�S=��jXP��[3?�c�D��;>*3o����h�����i����B�zk3��������e�6:ujo���v~��������Hvv��=����9r 666<���8`��x��T��[z~���s���K�W��pp�'?���wZ��R�X:~SR�h�����+8::��_y���5�y~.k�V��������P�����1g�\ -�*+V���!}�k��
��%KVs�j&�.��r�{���w����:��d�����P�EP���$&&��`�����ub��U���s��1�m�������2bD8��- >>	����������W����8|��2:w�@l��L�<���{����quu���]\����
K�[?\{1�����;K^�����&�`���|��W�����o/QNy�s��f~V������_K�[bM�����v���%�	#<��E�BC��o������j�+���CNN.AA����!11�?������~K�o5�R�U����={�HMM/���!!��_�������u�9���W��gu��}~���'��^ZY��
�^�E�������D�5�����?kN[��prr�E��=D���1kV�9=::��}'P�^{���O�^]?~h��[�n��)c��o^|q�9���^!&&O�@�M���������.�k�.���!�;���}�N$&��U���:���o�?���������;�������z���������5k1c�K8;��/����;uj����f���xxt�m�~�9s�D��������U������R���������OPP;����x1���(,�f~�d~�������+W.`���t�:�q�����Ui�5�o5�R�U��}��I��\�M�>��t�h����/g���
��]@~� ���W��gu���<?W�����_�X��n�����^{�O��[�=��8&Lj!��1~�L�5�e���k;�J������w�Q���i�K�����������`���5�������O���������m�������M?�x�|5�����u���C�Hm���[Uu<?�������������\���3k��K�L����Y��_��^�Ip�=���U*�����Vn>//w�Ls��������������������T9�������������HU�_��?�J/R���c0��I������&b�C{����;�����C��n�L��{?f��9V��r"CK���w���3�,"//��O�����4k��D9[�l�C����I�F�����9-%%�������n��;2}�


��?&&��������G��W�+�';w��g������h��Ry���_kX�~�
��=��_����c23��e�J>��_��R�����9���c��'v��>��k���������#��|��O<�W��8u�v������`��7*U�/�l������A�&�c�����h����`��Y���)lmm���K�N���������t����?vvu�i��c�=��qQ����My���ddd���_��������M�VL�6�w���R��������?M`���������m���0j��%N~�&Lx�+���0DDDDDD���.������=����U�gdd��O�!,,���S�b((($ ��y[@@KN�>_�+%���S�v����V�'"""""""Us�)�����W����Q����J����z<<:����	@z�UL&��,7##{�6GGL&YY�V�=WW����+"""""""5��"��5_@���V{�6�����b�������ddd�H�8q������W����������2�urr ;;��-;;��������_�����s�`0�p{�������7����0�q��<��r���w�����t�+]�JW���.""r��O�nz��?Y�!55�������=��6�:����4j�?|F``[L&��7�=:�/4���(��;�{�����t�r/���|���W3�_��m{�^�Bx���z��:��b�11�4o�������_�4i.11�|���V���/w2x���T�b������g��
��Y���0c�K�i���{O�%�
"""""""R�����������`�}���n[�|y�]��`00���������D����"rrrK��?�O�]�������={�7��'����� ..�c������e����������x������g��au�������_@NN.��y���������oC|}��hO�z.���@!""""""7C�-R����6mZ�h�*��e����pW��b��a�[���K����}�
#&&���v�b������I���	c��)���m�~�uWo�l�����6��a�����pp��!C���������du�[�#��[��_�""""""��V��{��g��Ew4pc���,^�l
���3l�T:���#?��������������:��t�&� ��-+k;�ZQ�_�)�E
�%h�BDDDDDDDn	Z��R�����eko8��?q���qs����Wcd7����y��9���������)��=��
��Lj�a������M�c�|}��n��MZ��jK�v�����������X��������:t��QO���Q"���3g���1������Q0���HNNe��?����of�x���<s�����9s1�z���?�^��q�J�9}��M�}w_\\�������ydg���g_����M-Z��w'���i�����������+��gq�jf������G�����3�������G���ni~XJ�$$�aV��������1l�T���������s4���
Abbr��+���N�������r�r��a����d�js���Ok�������/q��cpumG�.�5�i}�EDDDDDn)���8x������C_��_�s��R*����6mg�~������us�Ly��W39}z|��_���kJ����{>�l5'N� //���J���[o����C���V�����W���33����<=�9v,���H�l�FB��7�s9z���3g�%-�*3g.����6n|���H��|X��%��#���Us���a��������13h��	��Q,Y2��>��y+���Z5#::���_�aC��#���d��'���2?�)�Xy��������CB��X�W>�|G��ODDDDD�&�Z�9r ��}t8�7o+�i���			���	o
��������y���c��yk��#F���[[[BB9v,��6~�:ujO�:F||�>�?QQ?���5����.��M	h�������%��v�?��������ggG�����M%���ai~X;����}�r"��#s�<��]]�v�H�~�K��4?+r3�gY�g||�w`��������S�R��m��npw��c7�1�L���-��*(11���B||���5�"..��~������c4�.����y����>}���"��3����9����Z�F[�F��n�����s�.������akkCFF�������K����SU�����h�����4iDV����"7s~�u|�����y���W����������RgR���]��2��
J,P���yz6�h����x����5�*�oY��s���Q&LJt�Nbbv��Sc1�,�5�L����k�?�5��������tP�K������������iiWK�S��.�'%��k�$%]1?�v~����9g�k~�W���:>���h�v�c�[A�E�w���3g.��v�+�f��>Vdkk����Y�d5W�fr�R<+W���a������CNN.AA����!11�?�������2bD8��- >>	��������-g�gi~Tu��d��(RS����By�������@�������u�.s>k�g���$&&s�b|���5?�+�oo�u���E�������cl��m���i�)��O�~i��>>^,^�����Z�?899��Ew���g���5+�����n�\��A�&���p��{���;[�`�����6�s�!����o����\�TRs,�����g��DL�E�����QOXj������/g���
��]@:������[�`��1���/����V����-y��W�����3�i��3xp/lO�{ IDATltb�u�O�nz��?�n���S��0ah-�%�i��t�p'3gN��P���wI����Y3_,x��C���������ccc��`0����o�-_����"r{��������>}��[w�"""""rK)uw�!C����gm�Q�����������)cnb4��f����x�N}���,����K/�$8��*�+"""""R]J|�CDDDDDDD���u�]�"��2f��-[[�a��������)������;����h��K���TzVV6����{���L�>����A�
�x@)�R�EL���8��q5-�0DZ�LM%cj���|4M+M�Y�dc��Y��K��'�"�����m�]�[��~�|���u]�����o��Wj��1�x����(.""""""��6��k�����_�C�>�|��M�h�!=}�]�)Sf�c�W|��L�S�����Q���������H�fu'EX�`�����~���8F��LEE�UB\��N}�����{I~�VJKO���(~~�u#3�y���`���NV�tbbR		�ELL*ee����E+����xzv�Y�{;�I��=������BC����~���<��#HM���WUU����ZE��Nzz6��g,���r���h���"#�r��I���s�}����Cd�P��Ci����cu�W��������+~~���M��l�R`W�l6���o��9����t�r'))��t�j��""""""R��<��c�n����;�����M�e��p�
&MJ�����������?�i*+�p���l���
�����i�'�];�o���.2���������S�v�k�:>���Y�Y�g�T�m�j�F_��-��0���]JJJ;�	������������W����%��W������-�L���;
W�Fv����>�l��������v�����U�%^W7�.���_���xq����r:vl��9KX��}���v���gW\DDDDDD�?�E���A���a05*���wm�
�CTT���S[[�����2�a���	)�����ML����ggg�������KK�'"�3
��OB�

vY�m���QCBBZs��������EE%��W�|�����$F������Y����;9(++g��C"#����m����o������qqq�h�a���v�w3�4���v[��I�+^UU
��Wc��}��?����e����������6{R��6������R�f3��2��]k�B&�)jjj	����QTTbu^�&���
\����y�=7��p��%**�����%���|�ig\\��w����Z���8��O��z��%�������qcw���q����&s�X����+�qcw��_W�~{�n����l�����������������Y����?���3��_��f�������""""""R���Iq�X����>V�U�x�>��8s��{<��gW#g��#6v#G��p����)��u���f�c~�&��?������}����/�����1��{�c���((����5{�k���j���w3x�������
����T]����4m����x|c����u��v�EDDDDD���Y�X�d����������gW!ggg��KN�|*+�p��I��]��a�v�WW�������w���	�����m�D���HL��I�p��w��f:�������~�G�������+�����O����z(���u�^�55����f���v�W�eeMg��-���B\]q��y.^��+n0HN�K/-�������X�l
ii�v�EDDDDD���Y�HH@ll:m�D������]l��g��p�m�����O�� ;{�]����������{�RS�L��]��	�p�t�����k<^^���?����[������$M�t�S���t'-m�U����=�EDtf�������Y�{��1�����_}v��yf�z��;���yW������N
z��8@NN6��wr�m����$��a�z���""""""R�222�s�<
\~�����9������>��%'g������>YDDDDDD�G�m3���������������=��N
G�y��H||?�77:�
��X-R���>n����g�f�"""""""�����)�Frr&3g.tt""""""r��"�\3�6}J�����	���z��h�&�F���������{,����&8�'��
����������#'�����s���=�3g�m�q��y:t���w�����������n�H!����+c�$���}��K/-&7�5��{��G?��7s������
�e���GQ�V�y�U�������wt��8��N;�1�w�g������/�\��g^����������������)�����Mt����1b�d**�����0u��$&f����H���PZz���G��'(����[�O���[��b��Ol��}��G5�����������T���-�VUU����ZE��Nzz6��g��_~���.��GZ�
�j���3c��p~~���u�u��x�� $�5M�6�e�@<==pv����W_}C||?���0}��7���������
�0iR��3I����I�c�n����;�����M�e��p�
&MJ���������������WV������}
6la�����������;m��u�N��#,�o��	k����o>��������%6v�����;�����)/�$+�����OII)G�Q\l�]�����Y�:u����3������_���k�������\OEE'N�����������/^�a��)����W\\����DDDDDD���Y�HJ�����Q���{�&i��>DE����A`�?����^��)S��M��B^�:�:�QQal�����'f�u���n�vbb�8;;������W�|�����$F������Y�r�]�������w����OW��W�r��1������{�����_���K,]������%6}�c�����IgZ��F���=z��W��������LJDDDDDD�)�E
_��W{SRR��l�:�]��6�L�S���Z}�������x��l����g9y�;���R\l���������&M<-�
�p��9���8��O��;b���F�����UU��+^��}yx�0iR*~~���z3~|��"@����l���;6����K�.�����{��TU}����)++'--���.d��?����������\~<p�X����>����Jo4������'i��%EE%���������e��<��/�����w���L��
����� |�����?9i=
p�����a�o����8[�,9r�;w�e���xx����Njj<c�L.?�t�X1>>�X�0���gk��DDDDDD��ds'��%�8x�(������F||?�
9;;3dH_rr�SYy�'N2w�2�
��+n0���^rr�3p`/�EN�|z������^$&d��g8y�;�f3�e����Y�ot��%��;���5��W�~��`0HL�#7�5N�:������&���.�Y��3�o�9���l���W^y�������i/�����TV�a������=��C0�X����7M�xb6�������H=a�H��0���t���&0��������y����N��=	�����`��a]�=��p�"���8��������.N'(�9]���������9|������������$>�jkkqs��6=�5�	Z� 8�'����-�y��i���&>�h;������q��0!����a��������]�����M4�.�y���2W���9s.��t��TF��������3	
�@V�C�nEDDDDDD��m�L��������`������c�g����BDDDDDDD�l6����G��FG�!""""""��E�������@��,UDDDDDD�Z��"""""""rC���!!�h��;C;N������_ 99��3:�
��\�E���|>�t����\G�6}J�����	��m�S��������v'm����,����a0���>��8@u�YRS�������SO����,""""""��6��k����1c6,���gm����,\�:����{6lF����h��g���:�g�$�Pg./����_���11)�d����a�""""""r�Y�I6���l�� 44�#&SQQe�7��S_$11����D�������$%=��_8AA���|���/����E+����xzv�Y�{;�I��=g�GE
'+k:11����"&&���rK��������W'�u���3f���`��������U����_y�o���??_����g��l)�`0�������o���_��6����l����"3s4AA����NRR�g����g�""""""���<��c�n����;�����M�e��p�
&MJ�����������?�i*+�p���l���
�X��_/�;�N�d��u|�q�f-�:g��OX�v>�|�.\d��7-���?��U %%����o�����������|�����w�j|������G�fM���(++�c������5k����og��}��DDDDDD���Y�HJ�����Q���{�&i��>DE����A`�?����^��)S��M��B^�:��IK�'"�3
��OB�

vY������;���DE��wo!'O~�Gm��''�����������E�\?�&���nk��1�6���J�|�_��t���������j�����q�'xy5�����������fO
_��W{SRR��l�`0X���kmS�d:EMM-������?��J�nf��m<��\8��K�����k��V�4i�i9n����8���	������>��X��|��>�`..�6��KW�����z����7v��������Y�h�e\DDDDDDn|6wR;Vt�q1F���p�/�F�..��8q�2VTTB@���y
6��������������C),����1qb
f�}��:EE�+�o����A����oe���g��t�W^y����������i��	�w��x��=���.������������f�b��U<x���Jrs_#>��]����2�/99���<��'�;w���Z�g4�`4��i�'V����8w�<���prr�d:���o�=�fDGG����p�";w���w7��/���K�8w�</�p��y��S����a��~{!��������M�r��Q���?�Sq��@r�`^zi1��&v����ekHK��������"EB�bc�i�&��@?�O��b��=���;m��$<�~z����c��1,X������qG����GK��}������{���g�����S�-�����0��4�������w���[ps����G������N��#���f����{i��+nnw��v'�=dU��W���������?���&4�Nn��7�����q#��Q�z����a�3�Q��+H'NLe����/v}���E�6A<��dG�R�$'g������>YDDDDDD�G�m3���������������=��N������X��q�����Po��'l��Q��8q�	���3�4m�����"2�����w��������m�������-�j����-G�qM���&.��������,UDDDDDD�Z�����K�b#99��3:�
���t�|�1AA���-i��O���A��:��r�M���,��Yxzv�h���f�����������n��3����]3&�a�b��x�&>e�v��������t�����[2jT�]q��Y�I6���l�� 44�#&SQQe�7��S_$11����D�������$%=��_8AA���|���/X��������w(-Zt�z������r���h���"#�r��I��?LHH/�����;BBz�����������#�H�V�61������Ef�h��������������������������N�;v�u�*��\>|�������bu���+X���Fe�*+//d��4g�Ts���TVV���H�6m�SOM���v1x�8^}6��PVVN~����u����*U9���
��g�pum�m����0�>���#��0�����W).6QVVN����3g	�Zr����l���""""""r����")i��nF�J /�]��A������������z�z�Ly�26aB
yy�,y�`��X�����3F����+���@YY9���`0�__�k����WUU
��Wc��}��?����e�����������l����mz��7%%���f�e�]��6�L�S����o����������[�{���=����8�II�9v����cx�����������������o�h�J�x]q����Iq�X����>V..�6��F\\�9q��e�����?���[����#Wm��|OOf�������g�{|����'�������i��H��M��{�el����u��v�EDDDDD��g�H�d�*<Jyy%������B��������TV���������a�b-�<�P"yy�X��=jjj)-=��U���_��#��?��l�����@�&�V}�h���Tj�PS��K�.q��y.^�������O
���y������{���!--�����������l)�N�6��1}�cv�7�Y<<�i��'��������k�GDtf�������Y�{��1�����_Xx���G��Ig:u@LLw���Z���}[��O&,l0AA�x������_������v'���P[[������GX�99�����m������7n���E��������������a�3�Q��+H'NLe���u���,99���de=��VDDDDDD�������+NNN��+�<6{�l�;)DDDDDDDD���"���h����6DDDDDD�c�HQP����������������\Kz�CDDDDDDDnZ���������m�������-F�r�TW�%55O���a<��lG�$""""""��6��kf�����_���11)�d��G�&""""""����aa�IO�&:�BC�1b2UV	qqc�:�E3�I@@$��[(-=MR����������9��5�o�*��?��@n�k8���r���h���"#�r���k�Q��1�����[df�&(�9]��IJ��,]����������H=as'�����unn�>�i�f����:g���]���
������2���3g�9p�C*+���o$M�6���&���=���u'}�t���u�N��#�9�U**�8rd
6���v�����}Z����M�����c{��YB�V��}��,[����������H=a�'ER� ���0��@^��6I��!**OO����e���L���el�����]����0�n���G��3���z��<'ee���w��@dd|}����$u������1k����������2.""""""R�E
_��W{SRR��l�:�]��6�L�S����o�������_���G8��}Au�YN�������())%,�#������II���%%����|�4n�@e���������TTTY�EDDDDDD�b�Hq�X����>�s\\�m
�>��8s��{@��gs����������e��<�??_���w���L��
��we��1��{�c���((�����!�o�����M��{�>���=��������������'6�K��������W�������*�����!}���Oe�N�8����6,����w��������{��3�=�,5������c6�qss�`0����]����`0��<��^ZLq������l�������������6�		��M�M�h��>�1�����,��m��������dg��f�=z�s��E��;1p`/�?i�����0����I��t�4������
�������dz'������Kb��z�������������a�3�Q��+H'NLe�H��;� IDAT}���%'g��������������C���puu���	��`�y����f��m{'���������#�8�������ys����[��"EA�[��Cn �n�*""""""r-�q�!���YY�3f��V�Z��Q%'g2s�BG�!""""""���rO�������m�����,?�k����k#~x�[����z��\�����z]���2e;v|��_o�d:ELL
��-5*���������H=`��GX�`�����~���8F��LEE�UB\��N}�����{I~�VJKO���(~~�u#3�y�����]����]TV�����s/wSUU
��E+����xzv�Y�{;�I��=g��W�~���^4m����c�U������� ^^���#���*������"#���J��n��&�f3������	
jN�.w��r?K��vtk""""""RO��I�c�n����;�����M�e��p�
&MJ�����������?�i*+�p���l���
�0c�:u������Y����o�����E�������x��9uj'�v�����5k������Gaa>�G��d�����IppKL�rr���?�m�_W��>�����x������|��;�jx�so6��&������=s�,a���������g��[�z�f�")i��nF�J /�]��A������������z�z�Ly�26aB
yy�,y��Cx��p��%V�x���!�xZZ<�i����@PP��������������:�5jH��������[�`���2th\\�1}>|�/�Q_}7��Wc��}��?����e\DDDDDD�.6{R��6������R�f3��2��]k�B&�)jjj��(**��>b�y�������g�~.^��o������x���8p�K�.QQQE���m�u�������h����[�����Uk]����[�{~Uo���w�TV�!?�M���5������������N�c���8.�h��Z�pqq�)d4������'-cEE%�Y~
jN����r��y���HLh�u��9bcG1r�P
7q��GL����l����_������S�����+�E�h�������77��iv�����={�s�]�;�+�Ol)�,Y���G)/�$7�5����U����!C���3���3�8q��s�1lX��y��CX�t5�V��z�������'<�NNN�L�X����8��U���QQa,]�
��@�n����=�H^�:V�~���ZJKO�j��k6���` 9y0/����b�w�c��5���;�5�'l�HH@ll:%%�����������y�2q�_i��'
6d���dg��:g��X&L��Z��������������	^^����+���}����;VLYY9�.]��>���1�v�������f��)�Y�>��^DGG�] "�3k���/�e���qww�Oew��]NN6?�����F�������""""""b7CFF�y��G��� �81��#�:�-q���LBC;�����[�zh�6���899a0,?�<������m�q��=D��������m�������-�j����-G�!7{7K��������������Hq��I�}��%.n�������3�9s����[�u_�����	
�v�/��<�t.))C8}��y�UG�#""""""rK��Wq��1:u���m��������R�)�����Mt����1b�d**�����0u��$&f����H���PZz���G��'(����s����?LHH/�����;BBz�����v�_�h%w��O��4kv/c�>����,�QQ����NLL*!!���I����/++'>���0||�!2r(�����x ���^<x��c�$$�>�'K���WW�k�n��;b
����������� 55�������������l����c7������os�b
����IZ�p�&�r��f���H�����4��g8p�C�o_��
[�1c������|�.}����QX�Oaa>S�<lw}/�;�N�d��u|�q�f-���������7�|���?�MKl��W������-�L���;
W�F���/SX�O�V�,X�<������K����������f�������[Haa>���������_����������f�")i��nF�J /�]��A������������z�z�Ly�26aB
yy�~qSW���ODDg4p!0�������ML����ggg���������:(++g��C"#����mWO�d~?��6A4j������qG;<==��oFQQ�/��DDDDDDDn66���M�8������luN�v�m
�L�����|!��U_��V`��m������}�i��//�y��IO�q�.V��dg��O�n$%M��;���?SUUmWO�d~?����3..���8���55�v�P���`0��`h���st;""""""R��,R;Vt�q1F�������`_�h�����'~�������?�:9��5W���9bcG1r�P
7q��GL��Rg�+yzz0c���}�={����+,XnW�����������>X��|����O9��Gl)�,Y���G)/�$7�5����U����!C���3���3�8q��s�1lX��y-Z�c2�ZmXi���s�;w���N899a2�b���Q���?b�����f��\1Vw^�{�'"""""""���"EB�bc�i�&��@?�O��b��=���;m��$<�~z����c��i��-��'6���n<��\�j��z3w�3<���HM�3={v��7������?�&M:���bb���6���ODDDDDDD~CFF�y��G��� �81��#���.7���LBC;�����[�zh�6���899a0,?�<������m��qG7 7���~4ontt""""""r��Z�((x�Q}�
���REDDDDDD�%=�!"""""""7�,RdeMg�������!99��3�������C��x{�7�v&""""""73��Iq��}�p��#.-���O���2�'���VDDDDDD�q�"E���:��r�>|��S���������3V�{��
&==���
�c���TTTY%���a��IL� 8�'���o���4II���NPP723���������#$�M�v���ee���?�����=DF�������E+����xzv�Y�{;�I��=g�9r�>}����D�n�1b��u���o��������#��$!!�x��?9�-�'l����c7������os�b
����IZ�p�&�r��f���H�����4��g8p�C�o_��
[�1c�%/>�����=������*U9���3rs�����wqqa���s��Nv�Z��0k�"K<%���jHI�g��>�[o}`U����6+V�Laa>�Z�`�����/9�-�'l)�������``������I4�QQaxzz�Omm-�W�g���-c&������f�����o�!��]�����������L�.���0���]�<�}��'����k#"":���[W\DDDDDDD�fO
_��W{SRR��l�`0X���kmS�d:EMM-������?��J�n&;{��_ )i2��1xp���77v`��m<��\8��K�����k�����Y��Q]}����������8�����]q\���c�@���lS�h�����'~�C�����?�s���3fLa������=

�b����={���Q�9���M>�'�`6_���:EE�+���q]qq,�E�%KVq��Q��+��}���~vrvvf���������'N�d��ekw3������1�����b0h�����s�;w���N899a2�b���-����������q��Ev�����n�;."""""""�e��GB�bc�)))�_�L�������{���J��=i��!���';{�%5�c��)++���K|���xy5f����Vf���1�N���		���
.?z2w�3<�&xy5�g��;Vl��l�,���1����=C�����dw\DDDDDDD�f��c������O&����?3}��?^����-+���S�81�'��<� �<��O�[�
d���-���e`�;.�Faa��[�z���������wo!a�����QW\DDDDDDD��N������L������i�&<�|��]���e���h�\w���������e���0����������m&\]]qrr�`0X~^y�����g�\�{�������H���E�����3����{�y�JN�d����:��/���/������������������!{R�_.\�Xo���{��\RR�������������#Y�����z]_~�����81��m������H=c��GX�`�����~���8F��LEE�UB\��N}�����{I~�VJKO���(~~�u#3�y���`�]��=BBz��i��>FQVVN|�#�a���Cd�P�?	@�VQl���MNn�k8���QQ����NLL*!!���I����?t�(�{?��W'z�H�d*�����������2	����G;�IBBz���rt[""""""RO��I�c�n����;�����M�e��p�
&MJ�����������?�i*+�p���l���
�0c�K^||?
�=z�U��9�U**�8rd&�g��N���=z��u�N���[waW}�M�>a���|��\�p��������3	n��T@NN6�����rn~��w�[��e
�i�*����0�7�x��m������H=a�H��4ww7�F%����M��A}��
�����@jkkY�z=S�<l�0!���u�7�d����}�a0������7QQal�����'f�u���n�5���p������0��-����'�|������QC�w���������w���U�,R��6������R�f��9����)d2������@�X@�EE%v7��=�>}���4o�PRR�LUU5p�N�m�����,'O~G~�V��M������k4i�i9n����g��)Z�����-�����ODDDDDD�Ve�Hq�X����>�s\\�m
�>��8s��I�XQQ	~v7�����S���=��y����X�`9w�u55�,^��������?��.�i������)��y��{T|�]�����������������l)�,Y���G)/�$7�5����U����!C���3���3�8q��s�1lX����_����l6�����`���`0���^rr�3p`/�EN�|z�������oFTTK��./��[����������,R$$ 66�6m�	�c����.6o��xx���mO����w�?��=���N�6�,\��������S��xa�a��I�&���i11�IKj�����	�����8~���~u������f��O	��o9�����������������4CFF�y��G��� �81��#���&7���LBC;�����[�zh�6���899a0,?�<������m��qG7 7���~4ontt""""""r��Z�((x�Q}�
���REDDDDDD�%=�!"""""""7��z�"+k:c�L��y��I�}��%.n�����-99��3���[���_��^����~:���!�>��������w�����������E��8|��:���6�-}~""""""�kX-R��
&==���
�c���TTTY%���a��IL� 8�'���o���4II���NPP723��������r���h���"#�r��IK������gh�*
?�p�����<cu������C���E�nV�%:t������=z$b2�Z��U��2	����G;�IBBz�������-G���������6wR������_c����x��i�f�$-\��I�R9th3��m�}�`�����38�!���a��-�����7s��TTTq��L�������k#K|��'��g?;v���7S^^IV���g��b��q<��C|�����Z�
����3	n��T@NN6����������/SX�O�V�,X�<������K��s�%�����f�")i��nF�J /�]��A������������z�z�Ly�26aB
yy�~������r��;��` 2������W�|�����$F������Y����V0lX,C����������P\l��O>g��Gh��!���KllOK�=�EDDDDDD�q\~<�����coJJJ1���x�v�m
�L����%0��2�GQQ�����q�?����;V���1����h���o�=����,��t���NTUU[������N���@�?\�e�����U_DDDDDDD�f�����+��1}�(\\�m
�>��8s��I��m	@QQ	~�s<==�1c
3fL���"��Mc���df��<����oZ�\�u�8p����sN�*�EW���ww7������������<��d�*<Jyy%������B��������TV���������a�b-��_����l6�����`�IO���HL��I�p��w��f:���?�+��C����c���������4�V����QQa,]�
����n���\{�����������,R$$ 66�6m�	�c����.6o��xx���mO����w�?��=�/,<L��#i��3�:
 &�;iiC-������]����D���>|������5����O�f���c,��_}6�6}Jx���}KI�Uu��1ddd���y��
��S9rhir3KN�$4�YY9����m3���������������=��N
G��8S$>������������b�)

�rTr�w�T�kI�{��������
��.R����e���8}������_�7������o�����zC�������u��>?�1]�E���|>�t����
���sII���_��;�:��k�f���������>���>|�N��pt���}~""""""���Z�Lzz6���������J�����/���AppO"���
@i�i����/���ndf>����n������gh�*
?�p�����<c�/Z�������gG�5���c����sW�U]}����IN����������d����0v��������d��s����'""""""�/�;)v�������s��\�X��i�l�.\��I�:��}�6��}0��?Me�������a�f�X`w3c�>��=����_<����J��^��]\\X����:��]����������NEE�����mK�-�����u�_]�+^��0�V�Y��y
�y�����|nt7��DDDDDD��e�H��4ww7�F%����M��A}��
�����@jkkY�z=S�<l�0!���uv5R^^���o3{���>4n��O�g���������L�.���0���]Vu�����'�-��7�Y�u��o���������������M�8������l�e�]��6�L�S����o������F���8��O�\���K8;;QUUM���l��������G�t�Ut���������t�����D�����$B��v�4����:�8��P$E�f�
��Mk�O��q���e��tt����h���I��Y�)")��<q���������,�������~��}������������������;8~�����������������4wWR�^u|����j��o��������%%e����r|��������������-����8x�CN�����;���':z�G��`EE��8q$V�}�f���b��~�1�����e��_DDDDDDD���x���),<FEE���7��D...�8s�.������2rr�3lX��y&�&�[�|l7���		�!5uee'�Z�9r�U�����<��_ <�+F���4+V�w�������)+;����g�������3 IDAT��94)���Bppo�f_��y��d��������)���'���Q23���c0X�d6�����x����e�\n����#/���BQ���@��kCN�bc��W�xF�z������ukwV�\��K����"?������������4����f]�pp��'�b����\�O�N������Nh��dd<���������H�s�777�F#��������eee9^I!"""""""���!7Sc�!""""""��]�"?]c������w�8�0Q�[I�{��������m�Q�s;vjc,������ZRR:������]�>����M�Pbb����DDDDDD�N�(M�'�x�����Iro������?*����V�����R6#G�������Kc�#""""""MD�<8�W�GcY����������8qdc�!""""""M���aa���d�������0b�d*+��bb�2u�+$$���c��}��SgIL���o8��=IO���m�k�|@HH��}���)��� .���La�������?^����CE���!9�yN�8IHHBB�0w�b���Q}����GD�P��	�C����"�]�N���i������(��M#$�O=��]�������4WR���%�|�6�Z�1|x*��/�����9��+y���&22������42�����Z�JUU5��m[o^|q"p��qq�����������*+�9z�#����~�7��N��{o0yl�������� ����V�7���O���[���9s�������w��+�@HH��_$&�o#W$""""""M��3)���
����1��^��C���������5f�uuu�Y��)S���M�0���78_����3<x��@D���k���yg5T�3�,Y��a�:WWL&���M�/"""""""��������
����Z�v�t�|�C"��4�/�����Kii���df>C�~=IL�L�6������N�;������7���9�����������94)��K�:>�����`�;����!������%%�=C�����_����l��yS���������/X�d���F����T4T�3������9��/"""""""��o��6������";�u��8�����!Cg���TU�PRRFN�r�
�v����s�PV��V��0x{{:=����)�n�*O?����X��._����������m}�;�C�">~��)��l�e����N�h�i���N����}%3s�m>2r8�����]������{��� �|AA����]���^$'uz�K�N��DXX,��=�93���oT_���X�v1s�.�}�Gx��h
����EDDDDDD�3CZZ�u��I��W�N�8����� L�dII����OF���]�������4A;wZpss�h4b0l��>��XVV���""""""""������O\���M�]�������43vM���u�U��F�}X�����������=DDDDDDD���&�8HJJg����k������iJL��[X����������\�b���l�����^�f��!�=����i�rDDDDDD��hrM
�����}�]�������41vM���XRR2���IBCc1b2���v11c�:����1�����>����$&N��7�����������N�WW���6���H|}�II�����C��	�Cr���8q���>���a�����g�T�[L�0||~ID�P�/�����r}O>�FHH
�2n�4BB���S���e������H��
������O��U+7�Oe�������;'7w%����DF�QUUCU��F���/QSS���[���f����m���/Nt*~��(+;��������F=GF�l���gq�����y�F�~���<�����*+�9z�#����~�7�����_�o��?���������������HS�p�Gb�`��[a03&����w<���axz��l�����5k62e����	F�z���+*�X�b=YY�0�|��p����j�c�57c4p�L�`0�0����%�EDDDDDD���p%E�vm�:nCy�)�V+��6���=�,��\�\���g������������8�����������Huu-�7�Lf�3\�p�������W_���$���������t����W��d��kP���8$2�|puu����N�������_�E�
2�u�[
�|�h4b�6<����y��0o��+����Y�d���~K���������O��v�7�x���cTTT���:qq�J�����!�3w�b��j())#'g9��E;���		�!5uee'�Z�9r�U���;�C?,�Sv������9t���J�Vn��=oY~��84)���Bppo�f_��y��d��������)���'���Q23�9��;��@z�����+�PTt���.]:1~|aa��d���\AA����]���^$'�e�EDDDDDD��cHKK�.\8	��
��G1z�����,))������x��K�&h�Nnnn�F���������r��BDDDDDDD�18<8S$.n����.CDDDDDD��&E~����Cn#�>,UDDDDDD�V��"""""""r[hRM���>�}w/���=[�����1��c�6���-))���s�if�T��� �����c�����9O<�8O=���/"""""""
��3���#�]�������H�cw%EXX,))����$��1�1���j�����L��
		it�E@@yy�p��Y'��N``O��gq��E��=���TU��r�������������X�t>8O��h�������s�8t����>$'?��'		�CHH��]l�_��BB�����
��q#������ ((_�pRR2��{'s�����=v����_g���\�t���8���$5uG�l������#���DUU
�oe���l����-�k��	���k�i��������5�7�w���+���2�O�a��
�����K���`

�X�����SP�GAAS�<k���@AA�����^�j�����}����]
�QQQEF�����q����&Eb�`��[a03&����w<���axz��l�����5k62e����	F�z�[\R��z�]���Y�r=IIC������8�w�F����~��"?��}"?PEE+V�'+k&�����xV�r����z����������8<��]��W����V���`����D�i._��l����RZZn�{�����/fQ^~�}�q��e�1��od���������G�������=�9�c|��q�O�}V��������mW\����&Eqq�U�'0�|���.�L&\]]())�S��(--' ��vN`�?�z=��U�����		���r&���ZPWWo7~��y�����;�����F^z�?����J
����z�O�:��~P���[�r������+""""""r#�{��������������T"�y��sSUUCII99�6,�����!,[�����hw+���&�&�[�|l7^[{���/�����r�+�;�����)�/sj_�w�����"!�7������$V��#G��j�{?h���Z����������84)���Bppo�f_��y��d��������)���'���Q23���3lX4_~y_�vt�����
K��&=}����\�5%'g�����W<�F=GTT��t����I������3sls���	�Mn�J������]9�>@n����#/���BQ�q�?�;���_��1���Y.�\y����=zh#�%�)))������x��K�&h�Nnnn�F���������r��BDDDDDDD�18<8S$.n����.CDDDDDD��&E~����Cn#�>,UDDDDDD�V��"""""""r[P�B$%�3~nc�!""""""���r����c��<=�d
����$iB��L�e�L����_��W��XN���H:v��1c��4i����%%%����$44�#&SYYm3��S_!!!���� /�N�:Kb�$|}�	�Iz�,.\�h���NF���EHH����3���KW�����|���a��i�;w����-�_�$������0F�����Sm�g�T�[L�0||~ID�P�/�Ee�f�Z����������������O�l���.MDDDDDD���=v����_g���\�t���8���$5uG�l������#���DUU
�oe���l����-�����c�yg1_���/�x�[�9WWW^{�eN�������#��:�����d���S��_d���vq������j����S�������|l�}'NX8s�������o�v�?y��_�o���.MDDDDDD��&Eb�`��[a03&����w<���axz��l�����5k62e����	F�z�����Z�v������0��/��%'���{7Z�p�l�#>~��{�Z���$���b��	����{�nDGG�o�h���
<��` "�a��k�>6����Z��<x��������a��gR�k����6����j�b0l��;����b9���u��~���_JK��������h�jw;��m;�93����R__Oee5=ztsX����]�l��������~�?3�.\�Hb�d��K�������	w�|rs����j���ru����������������(..���&��]�����!������%%�=������_�sr��y���0z�P

�PT���Gb�:������SZj�j}��9����7o
����}���K��p�>�>m�z�������o�!x��X�������4%M�7�x���cTTT���:qq�J�����!�3w�b��j())#'g9��E;_[{���/�����r�+�;�?��������q��%������o�;g���:T��j�U+7�������b���|�',|��A�/_Krr\c�&""""""M��������N���<��9�;�l��?2q���)�����a���9���v����3���g����������pz���������Cua������a

��0�%,��xx�&>>����N����;7�g�}�{��K��w���O���""""""�4CZZ�u��I��W�N�8��������3d����]J����Nh��dd<���������H�s�777�F#��������eee9����}��>��B>��
[��!"""""""�'��=����2&L�=55��m���YDD<��e59qq��75v""""""���5)���5V�DLL_bb�6vM��K�����=DDDDDDD��j�M���9�;���v������6mB��{��		���w��`������,��JJJg���F[_DDDDDD��f����^z)��#�p���������-(��_�z���l�������l�[����Fe���&S/����%������H�&�PTTL���5v��)S��{�|��&�������o��k��,i"��aa���d�������0b�d*+��bb�2u�+$$���c��}��SgIL���o8��=IO���m�������C���	�C���8s��6�t�*|p �����#�7�s��;����%�����WWz�����n�8r�}�>��WW{,���]���Z��f��o8))�TU����|2���>e��i����������##��x�[������6�F�������9q�$!!}	�����m��9SA\�o1�����%C9~����?��j�o[Gz������#G>��ek~��EDDDDD��s��b��/���u��Y��K��>}�CPn�JRSGq��6��.]:0~�KTU�p��Vv�Z��M1o���-[>��w�����x���?���������>���{7�cG>,uz��#�#(�Ly��dg���u���������n,�|������n~������w�Ka�6**����m�_����df��Y�����y�����LAA�����{

�((�c��gm����*+�9z�#,�O�����[�[����8a���
z����������}��EDDDDD��shR$&�����1c�Y��}�������gk�f?���X�f#S�<k�0a$�Wo��MH��ukw\\\��c���\rr��w�EW�f?����������N�}�.�M���[K�w�Ftt�-��	�S����-��W�G��+*�X�b=YY�0�|��p����j�������*F��3g*8x������i�����vuu-^^���?����������������������k{�q��Oa�Z1�����qHd�����:�f?�X@�/���v�y{{��[�p��b���������G�������=�9������c6����f_jk��?q�@���w����o�9�����������b���w�5����*���p��E'S\\Jll^}�ON��c}�FUU
yyW��Y�t�������������(..���&��]�����!������%%�=�����_�sr��y���0z�P

�PT���Gb�:������SZj�j}������=���3��� 3[�����8p`~������G���[�r������+*���uW���\�h46�����J�������o�����%+nX����o�m[o�����;��;���gY_DDDDDD�>�&�o�Ma�1**���~���N%rqqa����;w1UU5�������a������=������h�b9�������_{z�������x�{��������GF��l��W|�`�����6m�HH�
��3(+;��j���c�Z��������w_gv�����J�gf��f�����-7�N�~X,�| ����9t���J�Vn�+W~J����X��?_��	_~y���������/""""""M�C�">~��)��l�e����N�h�i���N����}%3s�S����!'g�����W<�F=GTT�w,_����bL�0RS���!�1��������-�"<|������]|n����#/���BQ��[V���?MQ�qx`#FL������,�Mz�,<<�w�{�n�K�N��DXX,��=�93�6WPP�������F��������C���V�;7�����{���_%��3#3&�g[_DDDDDD�6CZZ�u��I��W�N�8����lJ��2c���.�IIJJ'4�~22�n�RDDDDDD�	������F���`�}���������h�>�l��m!�e���vo������=����2&L�=55��m���YDD<��e59qq��75v""""""���5)���5V�DLL_bb�6vM��K�����=DDDDDDD��R�B$%�3~nc�!""""""�L�kRl������?x^~:S�����G�V�F�N�b��%N�c0tv�	b;���
��/	/�����������v&""""""?�;�����**����������g�6l&�))�n8�=8wn�]���D���je��	���{�-�������#	������J���XRR2���IBCc1b2���v11c�:����1�����>����$&N��7�����������N�WW���6���H|}�II�����C��	�Cr���8q���>���a���N��u!-Z������Z�+���;����'���"*����8�7QQ����|��
nn-m?_]���Er�P��O��W<���������e��!�X��Q�*""""""�����w�����g�z.]�����rsW��:�#G�q���t�����_��������k�Z6m�����������b��w),�FEE����`

�X�����SP�GAAS�<��|�.����o�����7�\GTTw�������{/^����"<����/$ IDAT����qqh���u�����]������������qwo��``��xV�~�!h��~DF���������:�����)���&L��������b���deM�d�����^��U��?��1�,[������kn������$����{�;6���+*�x��w7.�6������`�Rjk���_�r�?������ """"""?/�gR�k����6����j�b0l��;����b9���u��~���_JK��m(��o�0|x�m���z\\�TW����~3�jPBB�&���?�����(.>A\��s������;��~�2�}��������r�����!0��_���m�`0���9L����G	
23b��k�	&""""""M�C��������L>v
��,M&\]]())�S��(--' ��q�����l��V�1�2�X��������;������k���#!!w�Vv�\k�������w/���	�6�oo���x��7y�i�+,��?�?��������5|��������4=�{������������4��y��sSUUCII99�6,���6m�HH�
��3(+;��j���c�Z���y:�a��������h~��x�|s+V�g���������5gs���#������%��_����N�l��/�9f{`�����k����XN��k�y�����%������C�">~��)��l�e����N�h�i���N����}%3s�����s��G�8���2p`
EE��������'K``Of���������ooOz���C
���3�5W��_`����g�~��{��������1x��N���W���'o���{��g�x:tx����y��lz�z�g����������iii��'W^�9q���0�����#���"�>}��xs���$%�z?O��d��������F���`�}�����������}��>�(���"""""""���y'{��a|�u!�D�~7h�����oj�2DDDDDD���kR���k�:~����\w�N����}X�����������n������ ))���s�if��&���;���e��������M���"""""""�4�5)��bII��w�'	
�a���TVV����e��WHHH�c�("����S����8	_�p{��>�.�b�.]�����!���q��q��y��=ZB�~Ixyu�g�a�1��c�p�P!!}HN~�'N����>������.�E�_PVv����c�������b��_]]KZ���"��
'%%������3����)�_1����~�W#""""""��8\I�{��l��:{������L���!(7w%���8rd~H�.?�%��j8|x+�v�e����7o�-�����^{�����w�v��g���N�9�9�����Jv���[��s�����l�+����� ���<�Ly�.]:��{7�z�][��o�#*�;���N�������w�Ka�6**����m��?�/TVVs��GX,���=7��N|
"""""""���HL��{+c���z��A��#22O����~����f�F�Ly�66a�HV��`�KN��{�n�h����G|� ���:����$���b��	����{�nDGG��f���g��5���/_KJ�0��_QQ������������;/�0�U�����h���
<��` "�a��ksS5�������4W��h���U�m(/?��j�`0��;w��!��r����0��lc��������m'3g�p��Q�������G�n���m���6f6�R[{���kIH�a��?���_q�r��'��`w�����7�><��Y�����b���w23�����$&N�������������pw�F����J������O`2��5(\]]�L>���PR��3JK�	��T8w�<��c=z([(*����#�Z�j(��yJK-W��8�g4�	���N||4��Z�/_KBB�����������l��l���M<�!'O��5!<=[3o�����}�> ?��,Y�p1"""""""b��I��oSXx���*��_w���Z\\\2�q��]LUU
%%e��,g��hjk�s�����b4�XN�b�z���kO����={/^b������6��:t��b9u�V���o�c����=�a�Z�o��������:����X�V�9��U��b7n���CEX�VZ�r�`0�����EDDDDDD�3�&E|� ��S������9�;�l��?���;�:E�}�>Jf�8���993��}�^��5�9��z�T���/����)���?0dH�F�-t�������%0�'3g���?�X8���x{{���/����ss��O�qxyue�������
�8p4�����u���"9��""""""""�iii��'W^�9q���0�%'g���o*�����~��������*II����OF���]�������4A;wZpss�h4b0l��>��XVV������>����>|�
���>>�d}���Vi\o������1a������m[of�� "�a��}t_]���/�������������if�n������"""""""r����!!}���^�9{������HJJg����.CDDDDDD����IQP��������9l�������Z�����������jR�������H�e���%%%����$44�#&SYYm3��S_!!!���� /�N�:Kb�$|}�	�Iz�,.\�h�]�t>8O��h�������s�o�f�����-�_�$������0F�����S8t����>$'?��'		�CHH��]��_���/(+;i[���R\]AQQ�S�ouu-ii3
���7���L��jl�g�T�[L�0||~ID�P�/�e��������Hcr��b��/���u��Y��K��>}�CPn�JRSGq��6��.]:0~�KTU�p��Vv�Z��M1o�[���+���2�O�a��
�����Ko�f����G�|�� 3������"��m���{o0y,[�
���)(��� �)S��K�Nt�����z��������Npp�m�z���q/�o�!v�~���mTTT��1�6?�_��������X>%;{:nn-o��'""""""������qwo��``��xV�~�!h��~DF���������:�����)���&L���lq��qt���-\1����D~��[�g�7TY�I�o���ipskI������������g��5���/_KJ�0�s���VTT�b�z���a2�����/�g���>?����3<x��@D���k���j�]�~�]��W����V���`����D�i._��l����RZZn�{���������G�������=����8�������l��������:;JBB�&���?�����(.>A\��s���~��q�O�}���������������g�p�"���)..%6�?���'<<���QDDDDDD�v�p%Eqq�U�'0�|���.�L&\]]()��	���\������DG�a���l��h;'��j��s�]-���o��k�;��Z�[gi����-���sxx��_����������{+�s�������-����8x�CN��mkBxz�f��)�����}@~�,Y���bDDDDDDD��&�o�Ma�1**���~��J�kqqqa����;w1UU5�������a����=������h�b9�����L>�L>l��q��\k�����������3{�".^���=�y��m�u����r���3&�7�\���=z����>�6m�HH�
��3(+;��j���c�Z��-v���:T��j�U+7���N�QDDDDDD�v�����Dtt
���1�}�3�y��-Z�GZ�v�S�(����o�G��\��!'g�����W<�F=GTT���%Kf��>�����^vj�����|����1��HM�C���h����t����I������3s��{,ooO��=����k\�����C`�?=z������S(*:n�/((b���x{w�k�A�����d�F�������HSdHKK�.\8	�����G5x@s���App 3fL���_�z$��U��O�o*�oRR:������tc�"""""""M������0������?����x%Es��g���������a���~��'��������!"""""""���v������	~OMM-m�z3kV;�������B.|��np����������f��v�K�{�������H��&�udd�a����]��.))���s�if������"""""""r[�kR������I��O����������������F��QD���	�N�%1q����$=}.\��.]�����C�o���M����N�?z��~�����J���1b��v�w���}��'44����������Q��7����c���^^]y��,�Sv�UW���6���H|}�II�����6�Lqq��d
����DD������VDDDDDDD�!�+)v����_g���\�t���8���$5uG�l������#���DUU
�oe���l����-�������k/s��������,X����#G>GP����O��~�u�6������s�L�v��_@AA��?�S^~���������n,�|������.��q/�o�!v�~���mTTT��1�6?�_��������X>%;{:nn-o�-��������c�"1q0���0�����;
����0<=[c6�QWW��5�2�Y���	#Y�z�-.99�������+f��������T����l���i�&�������eH��wr���O������������8a���?c������]����]���*V�XOV�4L&<<�y����Z����Fg�Tp����]���BDDDDDDD�+���k����6����j�b0l��;����b9���u��~���_JK�mo����3s8|�(���TVV��G7�\
��6���k3�}����v�+�ru�������\�\w��N�����w�w�`���7�><��Y�����b���w23�����$&N�������������pw����������s���������L>v
���������%%�=�������+M�s��=����RP�����L�8����������rU~��y
�Z�7�����OW��O�<c;
2�u�[8��6q����<������l��yS���������/X�d�S5�������4wM�7�x���cTTT���:qq�J�����!�3w�b��j())#'g9��EP[{���/�����r�+�;]��_{z�������x�{������9�������eoW46l���i�EB�oHM�AY�I�V+G�c����[�q�v*�j�����ooO�ki�������N!8�7f�/s�<�t�E��H���t�Ex����(����+����� 6�z��g������qS�._����bL�0RS���!�1������������_������t�����C`�?=z������S(*:n�/((b���x{w�k�A�������7�G������f]�pp��'�b�����urr�����1��K��$%�z?O7v)""""""���i���
����`������cYYY�WR��>�l��p��Q6l����i���q;+))c���SSSK������AD���]�'.n����.CDDDDDD��&E~�����)11}�����e���}X�����������n��;��� ))���s�if������"""""""r[�kR������I��O����������������F��QD���	�N�%1q����$=}.\��.]�����C�o���M����N�?z��~�����J���1b2c�N��FF'#c���"$�������
����M�w_BCcx�����?����a����%-mAA�������IUU�m���
��~�����/�����e?��if�����K6n|�={�s��e�O_�������Q9���?�K����UU5>��]���i�G��������k�����{��w;v��`�R����AAf��?%;�E�����e�����b��z3/^b����^�����;�`2�c��

����y���S����b��w),�FEE�m�������j����S�����������������86)���
����1��^��C���������5f�uuu�Y��)S���M�0���7��������-Z�b6�?����N�/+;�����6mnn-�����Q�		1�n������a��_�������ly!!�p�}���l��_{JK����b���deM�d�����^��U���h4p�L�`0�0���q��i�\�?��]����P^~
����`��w�|�C"��4�/�a6���|)--���m�Nf���������SYYM��r5���<f��m�l�����vooO�q��v���h}\]]puu��1#�/���7�><��Y�����b���w23�����$&N�������������pw����������s���������L>v
����L&\]]()�����\i*�;w���1�=���-mg���X��E5���<�����[����Y���V+AAf�n}�6q��&���'w������7o
����}���K��p�F����I��oSXx���*��_'.n�S�\\\2�q��]LUU
%%e��,g��hjk�s�����b4�XN�b�z���kO����={/^b������6����m�x���RSgPVv����#�X��=�97n���"�V+�Z�a0����ks��#>~��)���b����3�y��-Z�G&N��:Eq�]w1l�@23�����}�Eq�m��EY:�A$(�P�B1P�Q!�X0A$K����hTbK,XP��
r��&�K�XQl��������������Kv���3��>;���,[6�ajj##xz���������W���Ek��4D``hi�{��:�����)S��=��?����H(OMM��QS����������?Qu&����/^<@�#HG�EX����z��(88�a��O5�;%$$���5T���[���L�d2hiiA"�������-Z�H�r������	O��r���I.�	DDDDDDD��Q���*�u�F�����V-c����m[h:�wNPP7X[[h:""""""�f��N���8D���?�N���'�f�DDDDDDD��V]�ADDDDDDD��w:I5C�LT����q��01q���������:u:@"q��G�j�W�BB"�pa��� """""�j��NRT���180��AB�wj�755	����:��]{��IDDDDDD��`����7��Y#M�ADDDDDDT�($)Z�@xx4<<�������?Evv�B?�!�8q���@�����i���c����_����l;������'O�
mW����M}`h�s�V6l��D���-|�A����}�����S��9����S�02j��������
}���!"b:��;���
������X(����7�^��a�&���|&:��?�������-F���D���������A��##���������sWu>�BP�'��h
S��h��n��#�""""""��N�L����Bb�Z���n<{��'��(66c��"-�0.]:��
�F�������r%'N�����b��UB;mmm�Y3���g����S������8p��mq��I��L��?Ph��u� 3������-?+�������������������By\���&����V�Bjj6n�Z��+�~}��&a����6GjjRS�0a������!;;�����������LG-�i�|� IDAT�R��_������D"�����m�(5���t��`h�[[+b��DL�0BX7j�@l��Gh7hP����F
m��Z�O��8u�����������4id2��5�����&##G����?��NMt��J�<++�7���E�`aa
=|��Hl��Gi�����u������,\���D��m[������ODDDDDD�:i�{��Y��~6����!��!�H�����)u��������JXgcc����
�>��3����k(**Bvv.���+�UZ�%���Z
�lm-��W|�EFF&�v����c#����M�G��RTT�T��y00�S������DG��'O�����q�6���og�����������S:�����/��S�hkK�:��0����n��G���wacS�T��/��������CHOO���!�+UZ�%�����R��J�d	���{(�looHN���������t� ��;-�C���uuex����:++G���5k
�JGKK��m�U2��?������S���U�����������m���X�.W�^GVVbb�"(�����R)�b����y�[��`�����/ /�O��M3hii!3�6o�-:P++sxx�a���x�����<~���By����~}�#>o����=�B�������1c����{���HK���[��P��F�8r����l�{f��S:t��qj��Bf��Ro��������!����+�D"��������������:�$E�>�����Zb����;[�������z�<����������(�td����� 4t<=�U
���Bz�
XX���1��ZZ/��a�":���	��SJ��������5���`d�>>�HO�)jl1��?��7��I7���)���R?��V�Fd�,�����)�7lX#G��u������������t������9�5��.]:`��^��'""""""��$����(~����{;>�;L����Cy���D���1���j:""""""z?�	�L---H$������E�)�IQ����9�?�
�r���IVx������Q���u�F}����P��1f��B��-4�;'(���-4U3
I�S�~�T���u��_'M���{�T"""""""uz�.� """"""�w��$$$�j:""""""�f�� """"""�*�I
"""""""���[ <<�pu�C���";;W����L��}�F�n]O���ER�1�������XXZ���]{DF���'O��f!(�XX���iK�m�7o��?����m�&&��]�=/K """R������Y��0����Sz������x�����Gc0y�WX��K�:��q��k%:vl������)Nd�9�����d����[�0��e�)SF.�����v�W��Y'O��L��TY��<y��a�"t���YHJ�M����������<��=���	==]H$|�ql���R��=?@���������Baa!v�H��	#�u�F
��m{^�%���Y�t)
�m��������`��8����^�|��-���)>���z�i�R�����K?��������
u�S�(3��?/
`cc����
��������_�Oab����!77O�������	GG{�""""���\����`n�
qq	�<y��:%����#"�jH)Iq����~����)$�Bmm�RG����������}�.ll,������?����s������b���J}��?��^m\�rM�������<����q����������
���]5UCJI�u��q��ude� &f-�����H*�"0�+��]�����u��-��{�
uSp�r:�r9tue�H$066���}�m���������G��O������^00����5�����'�����ZG����#"�jH)I��Ow����������3g����/�?����^=O�i�!:uj���aByjj:||�`l���uG�.0hP/����5���+0w�
������/�^�.�=�.8�'<<�4UsJO�pqi������		��Yfaa�-[��Y>zt(F�}e@��|}=�����:DDDD�M�@DD�|&�&(�IA�
������������$��S?j*�B��,�������H�x�U	LR����H,\��0��������a���"=�$GH$�02jO�~��7E���W�N����x'������d����i��e!!��xe99�!�5F�F]�gdd
cjk7��}G�7O�>S)��8pvv�Uj������������2�� ����_%"(�����#
�QQC��^X����P�k�~��F!2r0��9���g��mU������h�k�n����J���������}�2l��f�Z&:>""""""z��� �������c��a��1o�J�r�T2��������O_���?Bh��066���{���*������tC||�R�T*��NM��5�����St|�r�r:���1h�xdd����7���1w�
�����CD�t��w��e��G#'�1���<4n��V�	�?�d
z��\^������611k5Us|)�6nn��m�Quss����0e��
���_�_~9���caee��k�c��1���{�>�9�~�zVx��������$8paa���������}�;w�������+Ch�8DE�����������������k�����_����D"Q)>;��puuFB�w*o"""""������"++r�\X�d�z������(@vvq=s�Zo���:th�={W�\S���K�6�]����WJb���ee�`���X�h,,La`��/���[_$��4��E�&�w�Q5�Kl����&*�����:ul�>�(<��^���\B"����{c��O����2���9�����Q����O���;j���F�aoo���DDG�l��5���c��MX�.�}�1��
��O����&��������R�rs�``����;&LXg��psk^����7�'h""��V���I�(>�q��D���
`��o���������b��^����D�6������Z��T*���3�������<��g���p���O������ff�P��
f�����G1g���;7��������K'���}�
D��7������c�L��[3����%K�#"b�Z�#"�w�����9M�����,,L5US�������B\�~K����
�PXX���'
K�i��"6v6l����\��]����������r<x99�q��o((������o=N�<�72���H$�6m,�.�����vm+df����wTjW^{#���c�L��;� ����v[��,�����8p������[���/cp�����5k��_U������b`�;;k��YCOOccC����G���V..�pv�������+��KG���c����������W�����`a����Fz�
�����Qj��i��'���-,-���^^������{K����M������E�'F���0rdZ���]{�����F"�������5���`d�>>�HO/����.!"b:������;!&f
���p	������gO�Jq��/8�'/� ""��DDD�/��8�
		���kcDE
�t(��eg����%6m�A�>�5�����L&���$����?�{��E�x&���|������W��Q5�g����n����t�������Y�aQ5�$)	
������������DDDDDDDT%0IAJBB"�pa��� """""�j�I
RH$��Hai�|�{�
�^^�������C(/**��Y�P��'d��pq�E\\�P����~�������H��.�OH8�70s""""""R&)H�6n���]�������w1]�<*j(���������a��MX�v>��;�5k����l�|��X�����w[|�i8���c��q
������Ki�w�DDDDDD�Z0IAj���mm)������8}�/�r�T2������<x�K�������=�i�#F�����
�LZZZ�J���t��-U�?8�K���%""z����GL�ZM�ADD���Z<��}�A�����<yO�>C�N�*5�����YY9����������<&)H�F��kkw7����X��K��%K��������F��T07����y��v���;
E�oii?�NX�f��fDDDDDDDo
��V��}�3g��	h��)���($��{��������'j��<x��4i����;w�A.W-���0|���(**R������Q+Wn�8��K������))'4UC����-����������L��u=���ipvv����Z������t��rAA�`ddSS�
���e��Xb��C����n�����
����&M�c���������)&)H������y!��r�n]<tue
I���"<Qh#���V-c����9���@���p��B�g�����EEE(,,DA�hkk+�<""!,,5k�x=%""z���@��'���a�_&�)����j���P�F8:z���#���U022�.������Rb����!��#`j�11k�z�\!	���P��:#)�bb�BW��'UjAA>033y��%""z�������� "�j�gR�����������^Y.�J1m�XL�6���������`������R\�~����>>�����gRQ��3)HIPP7X[[h:""""""�f�� %AA�4UC�����������&)HIHH$.��t����q��01q���M�S!����a�.M�Q%���)���i:z
=��D��:u: *j���������
vv�K-���y�2eQe������7������e�[?*j���"#""R?&)�������Qaqp(�����W����#GN�O�����8s�|��Kl��\]� �5��M[L�������!����-��?�!J}�,&�=�S��`��@<zt		����u:p�H��J$'���W�����e%��^�����05m	c��h��7>.���}CB"Qf\�y��������g��Dhh&M�
�����=�B��C��S�02jm���,��v>>�h��'�.���:>>��bIJ1�����f-C��������qq	*����2Yc4j�Ea}FF�0��v��w��q����3�����9s\\|���/���3v����o��c�B��yy�
����,,Z��l���UX�~a������X�ln��S����W�����H��.�OH8W��������h��7��Y+DDL����*�(��R����@����l@=��WIMM�o����?""������*%*j(f��Lx-�H�9b��Q���)�����H�a����	#���\n{��k?BC��b�LtFf�������v�\����?�����a�zX�`@[������+=�F��r��"&f
��{CKK����Pxz������������!�+�������C���/�\�;w�a��y�|9m��@N�c�\OO�!C��wo_DD��J�7n6��7x{������wP��{w,
����h��1��/:�������a�����"�n��Rq��_*����Ipt�GZ�
�;wM��W(?v,������=L��i��t��)�p����m8|�$	�v�(*�	�����������|�.]�n�:���>��gjj__O�X�3fD�n���))'q�R4���^��1b
n��������lt��1,,�0e�h��|]�;�Tf��y�Q1�IAU�T��LGXttj
e�>�x�Z,Y�EEr|��H���O_���?Bh��066���{������QC[�SKKKamm����''o\�z
��M���7x�����G��o,,-����="#g����
}��
�����o�����M[$%��]���Q����I�n�={9���%�]�z+�6������[a��I��/\��''o4����
''o���Ba���'HLLA�����w������1cBan^&&F���^^�
�*�}�k�������*'N�	OOwH����6m�v�Z�m��@������UiN%��� �H �H ����g����d��KU�����~<�����`�Dxy���@m�4���U'>>���������D�r�T
��psk?�'�;��KC��[���G�+1�0�t�==�r�������GDF���5Z�p���b��*��v}���7�#f��a���e�-k����a����:ulm���I}����7?����s|���Q��W���U���gb��~_df�������a���5jhc����1����
����5�}����?��o���9����[���$���b��YHMM���_�#GNEN�c\���'vb��_1�*�~bc�0fL(������h���[����p��XX����T��&a��_p�n�����X�f<�g����#���W���; 55	��/���9RS�����	F(�}��e<y�M��}���!}����e���h��."#ga��_���W��XAo�����+bb�����(*���@L��y+����������I��B`�p����R_��������x��:ujW�>����/����������$E��w�����pwo.z����HLL^'&�  ����222��a\\b��u��s�6m�s�.�����5��s�QP�D���>���v#++G�v�/����B4j�(�k��W�\S���,b�/���KY�G�_������D�n�:��<��s��e������k��������&)�JY�d=��[	����@�&�a`�334i��A�����9���07����+���;v$b��04����F��m��(����t������`��prz�9��PVV��}�.`�� ��5G�����B�>�q��Y����!���^�<��r��KC�u��oF�u1r�T���D`�p\�~[�^e��&������_',_�#GNE���TN ������k1{v�9�Y��#0�~�y���.Oi��u+��W��?�|���am�.\fP��{��r���||<p��E\�rM���O,-��v�v���S��=~@@8pEEE�����|9~~�D�V������v����GaddP��&&����x����m�cii?�NX�f�J�rs�/[���	���t!�������+B���<em���U9��&##G����?��NMt��
�����urr@�:6��%""�&)�J	��3g~�����P�����KK3,X��-SY������-�����a_��T��By�WTf�<^($���RH0�����R�(��@[[*��,�j	7�;|�8�t	E�z^pp���%�U:���
���/������-3�/��+�(*�#<<Z�Ne�oE����+���e�L�8�j�W���7���?��?�.���og�����OBX��*�!�<�k[<�L�4
k����;���KR���Dxy��f�h�����JgSl��5N��	����n]��$3~I�����HLLA�v-`ii&*6=�7�LJ��o�����\a�*J�cbll�r[1""���7����Ht}��y�\ZT��D"u9Le�9~�9��Q�����W��{i222����e%"��7��og�����HS���*��Pvv��bff"�?�qbcgc����={��7�e��J�puuFr��R�����D"Aa��?<�={}��_�������w��}�.ll,���z��\�����~���^HM=����=P�l--�W����\R���;M�������On)Q��[������^m|�e�������[�l����0vlRRN"3�>~�}75r����*�k���==]���P|���������=GB�!�����1d���y��R����������������9��_[[�=���5�� IDATw���x�Oykk��e���zqyG��=U{�\�p���Bb@�Z�lK��}Ht��� �J���W�u/�Y�f
���w|)������/b��}*��{|/��/��P�$I��==>QU�$U)��E((x�������Gc��1�_������a���(>�>6v6l����\��]����i����q���_��M�~�Y�l��%�J�s��@N�c��u������}�o,B^^

��M�f���Bf�l��[�^��V���_�#

����������Q_������/�?�������������EEr�r�K�z*��P����!-�������pqi�L������s�7!-�L�����a�&)�{��`~~����e74��y��9

�������((x��#"`��e*]+/F�Z�;6QQsp�����/��WD�?x�(rr����PPp�o�z�<y7nd(��H$�6m,�.��������C8t�7���(/$$_�����K����4(Ht%:�=�Un�����������>z���3����wq�|*�.�!!�*�X���,b���_*�}*��{|��0���)R<�ZY��c��X����7nd(<��e����v|!""z����*e��X��:+,@�e���7��
�f����s��.�=�������b��U��h�v�z#=��P�w��C��h�����X�H�?�^5~e-_����C�z�h��Ct����������	�-��������BC����]�^���0rdZ���]{���L���1��n�v�cx��)G�����A066���s���}�m��T~��iQ��{T��'O���`��	��u�l��D(���W��:#(�BW�VVnJ���]W����z���������v��������=�BW�II������<�+���P����1�3��~������DL�Z�^=W��A�����n�p����;��-�c��R���x�I���={����u����7lm�J}����
WWg���	^^�0|x�?
yy���=�F���bU�P���g)������	��:�C�>���[��K�s|)Ky����/��>�y������V�Fd�,�����	e6,��C��M�@��G��C��Q��^��[������M�DDD�/��8�
		���kcDE
�t(��������a���]w��q��w�
�t(*�����YKl��>}�k:�*';;��y����z�`���*���{������p���M��]�k�na���SW�T����������3!������D"�����^�h�"�{~#�
���g�?z�:j������t��|���j���]cdd�{�N�_���������^011�p�T�������LR����n����t�34T������y���(�����3�����A]�M[\f���F�y��h��T���%""R��$(���C "L��K������8���������&)HIHH$.��tDDDDDDT�0IADDDDDDDU�DDDDDDDT%0IADDDD���������9&)��������J`����������&)�������+7�����[!..�'/^����txDDT
ik:""""�����7 2r�4����?XX�j24""���� ���~_4n��U�fi:"""�=���d066������""���I
RYZ�uj:"""R������4�tDDT�1IA*�q���C """5����tDDD�q&U
<���u������ """""�j�I
R�M�!Q5��=��������J`�����Db��XM�A�TT�2Qc������:u:@"q��G�j����/���q��01q���M�����������lH$��S�����������`g��5DGDDT}0IAUBFF&$GH$���n{��7n6�>}�P/'�1d��h���R>>�B%��	����W�#0p8LM[���9��������^^���;8���yz�
H$���
�%$��������G��g4������""����B������=������WW?�d�ac�'.P��^���X~�h�}YRS���o�j��m_��Sc0p` =:����Tj�����������8\X��v>>�h��'�.�^���x]�����u�~�9>a��e�[�2Yc���"..A�q�:�����U����..�
}��@W��v�W������p�b�*//��Q04t��EkL��H��O?����U��*8�U�'U)�������y�a`����?��9	���HK��s�.�I��B����(,,D���y���3g<��_���������.���G���\q�����1�3��D"Q)�����t)

�U*1b
n��������lt��1,,�0e�h��������s6��&�0����k�~��Fa����������W���M����F�S�����������q�1n�`xx����?||<P���Z�(������_E�9>EG���-	���Eh��.�����T�U�w���?�j�����2en���������D"A��E�6a�|�>�_\�������@��[�G�9Q�x&U)R�::5���>>8~�O����D��w������j���L�---H�R�d:������s�.c��P�������w���������L�#,::5U�?8�K��WZ�����;�b��1���B�&�1fL(��~�B�/�G�^5?�>}	������NN���O�u~�r��#��7��m`g�������S�:~~C0q�����u=ac�II�;v����7j�jQ�����������������?U�W^��?BT�t�
''ot����������iS�����
�����l��g/BO�	rr����<���"77O-�w��V��$��6m1z�%����CD�t��w��e��G+�S���opp���q��56	NN�0��W��---H$H$���]|�����Qy�����	,,Z���%�����7��el����2�;>=x�K�������=�i�#F�Wi�W����(o|���[������Wb�at��zz���%���a����;;k�h���?���;T�_E]��''o4����
''o���B�c���GL�Z��KDD�
&)�J�{�>�9
w���������at��>�u�(�������A��������>������YY9
�/_N����h��QX���#�\��tIKE�����?/���m��*��!}����e"#GNEN�c\���'vb��_1�*�z��q3&ii�q��A4lX|�IPP7��&a���Jw��q������'3?�x@����p��Q����}O�>S�P����5k����?p��9r
_}�Z�6)O�f����v��'����Gt����k�
���]���?�������AT�l�����qqK���{{[�Z5��I���k�b�3g<6��N��c��Pa��1o�J��!8�'ttjb���8�����^���?~���\\��+23O"&f2d2�*7��~?_��'����g���]��P����������)����t[FF&>���KC,^�;w�C��
p��%�����������������IHMM��	#�����+�CDD�2&)�J��	��e������c��1B������u��
>>8{�"�\�&�_�D���7�A��9r*��Z"0p8�_��Po���07o%,��Q*�oii?�NX�f������o�uue�:==]��r����4Fi��s ��an^���*;?��r��KC�u�����#&����>lm�0j�@l��G�}���c�� �-��;���r�&��L�7�����T9��}�����T��[���T�l�� ��5G�����B�>�q��Y��(KHH 6m�	@���qq��F���������h�$XX���@_|1[�*�����+�O��������:w� �wt�Gb�Z���#GNa������^��^,��:hiI��a.]J�D"A��-`ff�Rob~��~�n%I����������;�����D�#��^��b���������s�/�������J��FF��k<
##�����''��c��0���*�I
�R6n��O�����X�.^�����Dxy��f�h�����*�Mamm���)�|��\IFQ����
u��{��������'�<���0|���(**���[�������H$�N7.���9������+��c~���|���66��}��R]G��T���[[Ka��?�ell(�\�����8|�8�t	E�z^pp���%��.W��������������O��������72�?��|��4j��uA���B*��AK���:;�������4|��`��I��$�����������01q������!�*��2j��<xP|���I��f�<��sO��?es|/��1��$FO�<����k���f�b+9�)'�1��6��o�!;;WX_�$'o����P�������u\\&O^$�NI9��"%""*�T����B�:6�93���3�[��f'$���)��C&k��7����x���5�
��3������ZXT��Z�lK��}HXW���R)��������+pt�G��5*4��I�R��:#9��+��c~���0����n��F������QN$�|
�J��};���3��������~���^HM=����=P�V��*,,*��W���F���u�����G���C��_WW�g���_�����@���������t� ��;-���*��uh��)����aHI9��������h����{#1�c��	8~/����S���U�6����0��pvv���������������=�������������{����������X[[�V-c�����;�o��@t����%:�������g�?Tx���Z~DDDj�$UI��������###EN�c���

.�����[��'������<AQQ
QP�Dx�'��%��9������M,_�nn��-,,BA���"""a����������f���o�����X��{����S���M���-��a��s��v+W*~�R���M*�"0�+��]�����u��-��{���X++sxx�a���x�����<~���Z����<A�6���������y�R=SXX�����'$$���@||���W���9���S�G����abb��}{`�����vY�������gQq���[��y��02*>#��P_��VFbb
._N�\.����D����x���5kY�����Z��1vl���������_���n/������ v����HH8�C�~}?���BB���k��������~��A��D�Q�2��vm+df��
[+�������������Px���+��$UY>>h��>f�^���Dx{�U8=�������c/�g����uFR�1������3&O�J����S����+���`ll����*��pa,tu���
�Q:K!6v��L���	:�A��������,o~=zxc����?,,Z�]��HO��Z�W������z�W�m�|�N��!:z���;~���a��88x�Y��B�?|�����h�1c�!0����D�33,[6���C�������R=�D�U�f#2r\����D�z���_]����B�L��?��7��I7���)���B���9�����{�����'��7E�^���.�z�����h��;w�Cd�`��[��'55>>a06n�f���K�4��Z�~���_��������>`����!��#`j�11k�z�\QgN�9�����?��[7���������D�����puuF������������G+��6���#C��u���c��ej���{����������A!_�x����*$$$���5T���i��(88�a��O5
�[!;;ff-�iS�����N��sQ��'LMM������R���G��?�A__g�*�T�uo�_""�j���L&���#��Z�h�"hk:p""1~��d28;;���k��'�w�j:,��Fr�1��:���t�6FF�w�t��o��|f��^����%"�w��$(���-4��[��`��/��qj�2��YQh�����"zk��w����{1���i��,��4���!o0�y��_S����H��� %AA�4�?�N�����0�HE����R"""�I
"""""""zm<x�k������x��)j��	sss8::���\�.���7�$"""""�����8w����;;;XZZB"�����������'accWWW�
AJUBFF&$GH$���n{��7n6�>}&����/�)Y<~~C��J�	����lH$�8v������;����OO������B���C01y���*��//>�8yQ����I/^D^^\\\`bb������2�u��AVV��9#���T�;WWg��������#&���b�������s�
����a�zX�`@[[����2~J�I\���
�Vh~�mODDDDD�6�����{����
�\.|^��Z�j���x����L
�b�R)ttj���9||<p����*��L�#,::55jh�����ikK�6~p��,Y_��U�=��611k5�#n��{{{hi�:� ��aee���TLRPu��}9r���������C\�nde�T����W;������������������Z�j��+�J���	�I
�b||�`i��k�C����:u�B��%�an�JXBC������f����5k�U����W''��c�������������3��QCT]�\���LRP�q��8}�'DG��u����S(��3g~����,���N1��������0|���(**9�����O��7��og��_""z��\�YH���%`��E���������br�\�����r��T����B�:6�93���3�[�rCC}��Y�����~��t!�HPX�"1���s��4>�l�66����PfXz{�����B����3��*�vw�+"""ub���$�D�i��b������)�/,,BA��Emm)Z�pFll�����oc������EY���������Ji/6��"���K2�b�`��e�?U�c'"�w������������Px]rsj""�7�I
��||<��I}���\X�pa,tu��������{�[�-Z�����MRi�AA>���(Mi����m���9rZty�8	��'�����)8�'<<�4Us������c5U!!!�pum�������,;;ff-�iS�����p�������`A<<<<PXX��)�+,,DZZn���3)�����cpuuF����������H�����'(���-4�������Y�a��I
R�M�!Q5��=��������J`�����Db��XM�ADDDDDD���6^^�!�8*,����H��.�OH8W�r��FF����{��hdDDDDDD�LR���w�aQ���?#�"� 0(*{�mSqE%b�RW���F@�3�|���n�:�����:�&=��-���L�L������[^��"�
����?�49
��!3��u]s]����{�g�����7M*3�a]�t�����mv�;w�S~��F����-�����X���8U������n�&���G+yz�����mc7?jT��/��F��F���5{�D����{���H�8q��-{��1-M
4��S��v��������~�zj��C�!!�JH�|3�\�&��������>�����v�AAJH�W^���^:����ZV��n<<<Lw�����gtu�^���5o�#����y:��5k�RR���\w���������`������	@���oj��%����/������g�[����G���se<@D�M���[!!���������������������������5��I��$ed,���=�LfT IDATP�$�d�we4@E�M���^�/_���l��n��	�81Km���������������Oo�/Y�P�p�
�n�ZYYS�6<-L��^j��K����)__��g7��@�Z�$[���m�j��2L~�=z���������h��U2$�a�����y����@�6j�p�w\�;)�d������Y����F������|c������
���~\X`g��XWG�;)pk��c�""�Vrr����wR������M����_��W��������&X,q��h�8��M
8;6CK�d�:���I�M
�hR�@����-��n�&p4)�[�I�M
�hR�`tu��%N�;�\������%��-�=�[h�&ET��������\����5C"4d��-Y�����-�{<��P��\uu����Iq�}}\43�����JO�Rl�(ED$h��GUUu�� !a�����F���.](88Jyy{$I���6[AA}�����r��������gC��co������������>P;�n��GLL�23i���
�!C����[��3)�B[���������Z�`�CQv�Z��9^G�~������{I��iO����
wh������]z���v�o��E������v���sz��gmsK�

���C��������*}��6��\��Uo��_��&EZ�pyy���`��I)����P4|�`��DJ�||�e6wR]]�rs�j������O����v�&X�������VF�C��}�92A��^���PLL�.�A��=94):^s����
Y�V�5�������SgT[['���m,88H���v������++���\������uk�.]��t-p_M����k�O�d���`�[c4z8ld2��h�PII�m�����)�����;��m�6��7��&�k�m��#�UYY�e�^����FJJ���W����JJ��b�%'���{���:r����/��^Qj��M�M�-��'HSR�W||���+�K-Z4���V�|Z3f<��]�M�6JN���)vk�����0Y���:��z�����bbRU\|Rg�V���^���V��u������84)z����Ko�`����3���n��F���� I���k��Fk�����]n�=\��N
�b�S��&W��0vM����qU�g�
@S��p�e�b����g?*?�%$Lv���\����� ��a��-Y������|&�O,��qIz��i
�?��P��\m�T�zn�&��c��1c\�������g����LTzz�bcG)""A�G?����v		�5o��5r�,u�2@��Q���#I��8����

����hed,��+5v�|����!?��qG��������*3s������2d�������5K��u�H��L�����3��m����+<|�:v���q���
<V:�Ttt�F�~�c!4�gR8���n}U���Wk�`�R������9s���X���{�.��i��Pu�������������mu��Rb�T����N�>��?���P�m�F���}�'z��U���m����U�����]�\y

5k���*(������m�b�SAA�z(��?��q�)4����}Z��wz��m�������HK./�v2�4)E99[�����HI������N���Sn�V������������V�z�Z%'�k��a2=d2�+5�Ir�^�F�L����<<<�����QVvZ;w��������V���R|��&���C�" ��5�~*/���j�[���]�:uF��u2�;�����TZZn{��7'��[h�A���$__�u��F]�t��/�C|�9fs�m��kps94)��K��>)��_��n��������/��C%%e����r�����C��E
q��f��sJKO]���[��C����6���������e��b�sj#%%
����T]}A%%eZ�b����mk~x�rr6+7�}�������6l��t����S�bc���gW����<�-[>n��
4)RR�W||���be6i��9No�r�����R������4�^eeM�����K7������G=z�����N��X11�
�Uv�Z�[�Iaa����~���5Ku�X�L�H��������U+�?�	�������.}���M�^jt�d���u������} ���w�Zo���'g7��� ����
5����d{?aB���M��M�����g_�~-���H�7��>h&wR�d%%e�>�?t��Eu����3���������������������n!!a��:��9��T��=�[�����u����`��s��\��5vl��,�vu@sK5)

����\��T��������JO�Rl�(ED$h��GUUu�� !a�����F���.](88Jyy{$I���6[AA}�����r��V����u�=����C��}4e�|]�t�n�>�_EE���_���#�c�wR8���n}U���Wk�`�R������9s���X���{�.��i��Pu�������������muF�Q������9�C�6k���Z��e���}���8Us�<������7)4�|3�7p3M������j'���I�R�����h�������$��x�l����:��n������M�>N99�mu&X��_/�nm���I))�k��C�����*99^#F���!��_�����
�������Syy��V��m�[��6:u��jk�d6w������������g�Y���"����������e����������V���p'Eqq�5�'e2��5($�h�p��d�������2�Xii����$I�.]V|�$M�8B�u��N��1NV�w{�u�*,,�n�6mZK������z�V���x��
:r��*+��l���X������CIIC�x�*UW_PII�V�X���xI����u�����S�Z���Sg���������#���Y������N��a�V�5&��L&m�������rhR������t����l��Es��l��������]�o�5h�����"��GGV�xJ��Su�})?�1
����_�^��q�/^���>��#^G��[c0�z����X���{���}�_����8<��G��Z���F6mz��9��_��-ot��G���G�\7P|��������!JJr�5���p'�+8�IX,q��������I��;��7���RhJ�n�&p4)�[�I�M
�hR�@����-��n�&p4)�[�I�M
������Zg���$�/���F
g��8��M
���I�m�n��D7��6�����k�����z���8��������/��W�>���O��{{�:��&Edd����;J	=�QUU���WT�SZ�l�UHH�22���������X��)�_(*j�N�(�$���>P&�����>P���x�*[}QQ��z*::Y�G?�����NH��y�~��#g�K�
�R^�I���5k�S

�QPP_��g����S��u�������������~F��&���|�={6�];O�����K�|�H��M{B.\Ta�UW�W\�Du�����n�$i���TUu^EE���Mk��wH��m%I?�I�

��m�nM�8Gya��{L]�����{Y�}���(-��8Ev�Z�������Tu�UW���2e��*+;���v�<5~�c��|V/�����nd���JH��+WjT__/?�UU���M���+9��{��}@��{��
��W;M�����-����:��n����������N�>}�rr6�Y+����T~�QEE�V@��SA��Nk����?�<=��_�^�������+&&R�lY*+�������/��_��{����i�z������
���k��������s�k��h�_��:p�/

5���
�������Syy��V�N�:���:���l���A*--������+Wj������K��8D���}{��v�9�6f6����k�u��a��oNH�RSg�`0H�������J��_T��^��7fL�x``��L&IRmm�v�>�?����l���Q7�^�9wR�^s}R&���L&�*)�����
����������������_������������V�d�:�v���S���q�$���a,4�,I���
}����������N�>`k�\/��5u�=�|��sP!!�����.\������3�����s��:s�\�9h���
�������l���x��
:r��*+��l���X�$IJJ���W����JJ��b�%'��j�n������V������`������w��I�NU8<��S�@�������TM�U<xX[�|������F�|@3g>�����Z�:z������|c�$���75���?B���h��4-X0C����C��*,���'�*�����n�ZW�^uz������))�+>>]aa�2���h�����O���K]�P��j��{��5�6_PpL��M��o/��y���O&����{���6m�"#�g�Ya�[�f��+����3�TR��j����fg/RHHg��oQ�=5lX��;�T��+,,�������a�����}�'���s�y�$���:{��Sk���e2�$I�Y�fY���fK��O���1^'��^}��0!Saa!z��G]�G1��j-��k�|�A����!�����:�������v���'N(**J���������g_���IRaa�6o���/|�������@��������ug����lV``���{�RII�����G��M���������X���O*ooo:tH���S]]����|���������^�z�j�~�t��w�7��$$RB� �f�Y�n��@�1����e6�UTT�������Fm��U@@��������/{H��L
f�$�x6`9�m��IEND�B`�
Screenshot from 2014-05-14 08:54:45.pngimage/png; name="Screenshot from 2014-05-14 08:54:45.png"Download
�PNG


IHDR)�d���sBIT|d�tEXtSoftwaregnome-screenshot��> IDATx���y|LW����L��YE��V��$��V�Zk�%�&��T)my�RU��S�j��Uk�-U�Z����d��I���'��Yf"�(���5�L��������Y��E��l�����������}A��7j!�B!�BQ���(KK�5>>>�L�0!@���o��j������	�a����B!�B!n.\���c�8q�d�:u����k�T�~����������-�;F!�B!�B<B���Y�z�o��u4k��QX�V�F5o����B!�B!�#������,��G�&h��������;.!�B!�B<����8y��P�^�ojccS��!�B!������LX�QB!�B!��f�@N�B!�B!��NGFF����t:
Q��h4������A��<�u�$�B!�Bq��zRRRHKK���PYPXXHAA������`gg���*�����b�&B!�B!�0������������899������5fff���Ibb"			���������j����C��B!�B!�Paa!			���P�F
6l�����:�{{{���qqq!**���\�Z-NNNF��?,u��,s%!�B�������s����@�v��
���d����]���k��y�fv����+Wppp�������2���o���O<Qe�
!�U-##���,�j5��7����^_��F�8::���@AA*���5k>�u>|X��B!Ffff���"�����;�k���V�i��������q��5v������>|8C�)�������]�v-[�la���4k����B!���999�t:�4i�J�����h>�J���.\ ''KKK���a���B!�##;;��3g�s�=��I��������F�J���/���>`���<���4l�����2F5����B�I!��,����t:���177W.4i
������!??���������?�������+�<x���/3r��r�rM
!������3~�xZ�lILLxyy1t�P���X�d	g��%--
'''���y���X�j;w���W^�c��,]����H��}|||HJJb����>}��o��a��Y���{{��M�6����?~<+W�d������������Y�`��Mc���|��7DDD�XVrr2��9���999���0b��6mj�~��i222puu�k��<��3��������9�L����7qqqa������C���m�6v���V�����V�Z��K/1w�\�?���S����W�^��3�
�d��={6��������U�X�f
�k���Q#��a��������������G�R�^=\]]�eEG6�}z���7n�@�������:������G���/�89_�:5j���+����K�.�������3q�D��L�d�B!��2E����0s�L�z=+W�d�����7�&M����DXX|���l��'''
���;9z�(����t:�;F�&Mh��	���[$&&2j�(n����m�(,,d���%~���������C��`�~��G�z�){�1���@~~>������r����������y����y�&#G�����O>���3g�d����y����q��
�q��\�x�*�%��h��������o���[��e����eKlmm��###��k���Y3���GJJ
�����z�����-������Kx{{cccCBB��D��={HMM�g��l�����pvvF��U� B�P��������v���g��
�����������K��
i���r�Nsss��}Y���^G�������p��y���^�H�����Cj������o���ON�8AXX���#''��u�$�BQ����O�-P�T�����5�}����qc�������\�z=����?�K�.��W/5j���G������ddd��worrr8u���_'""�>}���h���a����=��~�^OZZ�����������?�H����={6���XXX(Gdee����������-V��S��v�c��a���P�^=&M���;x����v��F�"44���\�v�J^^iii�����E�2e
:����>��.]��J�*3���~+++<==������h�Z�������q��4i��N�����'//���8z��I������f�����yoooeBC!�(�J�R���>���W^a��,X��#F�n�:�q&N�HZZ�A���B�rL�#??����������Y�x1��-c��I��Q�R���������;�w�^:w������������B!D�+,,T������u����,Y�������*�������_�~,Z��S�Nq��94
AAA��zX�x1�/6�/##�XZ�n���9<�����EW�633C�)�Q���z��)�����j�e���J�wo���\�N��St��^�'))��8|}}�3g��/g���X[[��OLNN��+77�`�����ooo���Z��F����R�Ba�Z�F�R���g�����Lhh(�/���>�U�V������l�_���R����CIu��z��YCll,s��������z�7�x�5k�0n�8�h�{�������}����+?��3...����i��B!D�)�Z�.]����}���u�V������C���W.0���i��=5k������9s���;+�B���J��]
�533S>�������D���8u����(]��SPP@LL^^^��j%����#���OZ�j�����������]I/b��%������#;;�:��wo�����Y��
h��!m��Q>����+�*��~a���S����'??!��Tj�333������1HKMMe����i������gee��h��M�#88�^x�FCNN���s�r���b�V�k{��e��-���H��M����^��s���j�$�BQe�������Q�T|����T*����LX$&&r��9�����}�����cz�����+G<���xzz�q�F����[�.���XXX��[7���8~�8��������/bggGpp0���+YYY���r���_�N||<���t������be���������[),,����o���F���U����|���dee�����7���T>������S�^�b����,�[�.3������_������37n��m���qvv�\�<  �^���'o��6
4`��E�!��|����&%%KK�b�E			%��#99++�2O�(���-[����1YPP@�5h������#..�	&��U+�Z-�[�&44�����bJf����K]A!��&;;����+++���9r������=OOO4h@vv6����XYY������+��������;ptt$44T�����p��M:��C�����n�����bnn�Z��������t���.���&L ;;���Os��Y�6mJrr2����cx{{3s�L�������];��Cbb"���+���
4`����UK9U%55��G�r��rrrh��!={�,�������h��}����A��m��D9|�0:t����g�}��84
��'g���������N�-��t�����������x�"��&M����+]�t���#��!bnn�V����333�(�^Oaa!�-��~dgg�������=����GAA�A����UZ;v������4�z=�������\���:�;�*<<\?i�$�7�B!L�������y����;w.����<���D�R������-z����,,--���V�Qt�G�N��+W~y(�>���j����<222��%���bggGAA�n����3��1KKK�������C�Vs��mbbb�������.]����swY7o������������.1���|RSSIII)��w�O��uIKK#66�s}777bccIKK+V��q�������L�������Ljj*p�!777�:!�����Xsrr�v���(B!zfffdff��j���0z]�s���7pqq�����[�>lu,_���$����,�B��)� V�n�?~|u������o��>@��������7g������Y�fQXX��"�B��Q�fM���HJJ���M9��$999���Q�vmj��mp}����+V�5)�B���Ax�MMM��g��{��l���}��q��I,--i��1���W��!�B��������#5j� 66sss���177G��������%33���\������999&�x��I
!����tw�����@��5y���	�f�����KJJ
)))��B�P*�6���
M�6%))�������F�XZZ���@�Z���tdee=ru���B!*���3g��!55��7oVw8���<��������P�B�GNnn.yyy�������Z�V�xQXXH~~>YYY����\�I!�BT���<��;W�a!��St4B������$�B!�B!2I!�B!�B���E���C!�B!��#G�XXX(��(�{���/PWs�B!�B!��LR!�B!��!��d�������[}7n�}�O!�B!D�����w�������R`���?~�6m�������XZ6����*��l���*��/�Q�'��l��Og-ZU�!	!�B!�#E��(���|���H���q��)�x��I�4���g�������A��������v�W�/�����������B!�B<2&)���2v�4:v|���{3l���2�����}<<�3u�<rs�����T�������k?N`�n�����h|}C=�Un�N��7_�.\���~�O>9;���o?�a��;��w�q���.C������:u��<@FF��s��
�����c����iR|�:u��{cii��C'M���1c"�|��6��tc��X�e����o����h���j�a���HNNU���(���^�A�.���kIp���D�����X���X1�N�pqq�G��t�������k�!�B!��w���8q�,;w~��S����c�����I��$==����r��6v��opH�����������j��t�,,,�h��>QQ��]�.nnNDEE���/*�G�|//w����t�|����^�zaa��z�.^�����
}�s�.q��w\�����DD�7)>c��?��Ck:w���qph��
?0y�[��3��-���,]�i�������_V�M�����y����_�ORR
�����56>���#FL�����8N����k��X�+�<���9}���[�;�B!�B�{Sl�b��>XYY�R�x��Al������n����/bkk���+�'�d����V������WQ�T������@�����(3gN����v�Z��g�����I����XRS�����Y�d&���������'�q�i�}��W89�-��o�Q���HI��'�l����������r'-�w"#�4qs���Od��uGH����o,~S�_F�����'���L��[���6>����ok9x�$3fL���&:�5��������+,l6
�g��!��+�B!���h������]���OD����&��|��S����x��i�&������S����o���X1+�������,sww!++���
�+������J����335Y��X����}��+�����k��p��	���M��h�]��6m��|���b(m��T�2�7����N�����������jt|)��n��P��_�==�(�_���T~y���;�<y����@�1�PYB!�B!LW�H����������6*�
g��h4f����5bc�
����Z�h�t����s�~���3�Z��a�j5z}�@������U����P�G//w����?���������IH8�|�-+�/���c��(�q��)<<�������,7~���9l��nn$%��gi^}K�~JNNn�������Mi?���Mu��Cll<�j�cn^���Q���+Z/)��k\$$$+�Mm_i������!2�0�v}����=�#�B!����MR|���\�Ajj:K�~J���033�_�n,\����Ln�����`���J��;�q�R4z�KKT*U�/zu����&�`���;�c������s��yv�����88�1dH/�����^����l���u
��o������%>Zs�	�2k�K���������r��j�6���"O=��z���f��bi�mc���~(}������q��
��3y��O<�i���QWW'���X�vpg�f���J�������������_���999����*�|!�B!�e+6I1h����9���;������*i���kk+||:���,]�<��i�JzTT4=z����-[>M��=z�A���0i�����������PI�����������������������^�7�cg��=�}�����l�_���G��)�l����=��� �=����m�d���,^�1:]��������k��P��7���=��{^^A8:���w^S���c��[��=���������3H7�}�*''�����S������e3,-�����J)_!�B!�q���p��e/wn���K�3f��l���������9S�;�J���i��'��M`��g�o�!�B!����-��jT*�����_�d���GRT��'�q�|�/_g��������N�R�b�\�jUu�"�B!�B<����:�����o���E�Z���A``������_�a!�B!��I������8����{w���Suo!�B!��:=P�{!�B!���U��7nFu�P�|}C����J�����*��_�	�[������|���UZ�����^{��xcI��x���B!�B<*&)llZ�R5@�j���?���		��[������)oTT$�m��������y�a��������^��������{.��g�1|x�J���������XZ6���3����:�B!��QV�H����'?�"'O~Oll<��s�#.Q��K?a�������:�k;��g'V�\�et������J�����tV����k��|���������n��z�B!��QU�[�Z�F�1����>}�����JZbb
C�����?��:u��y�{����2dH8����S'����\�z�.]�cg����!h��y32����W..��;���L��7&99���'���G���8@�����h|}C=�Un�N��7_�.\	��W�Q�qq	Jy7n���4"::���Mi�199�����n��KL?>��M�Q�V
z���T%�������7���]�n�_�j�jS��e��)V��K�N��8��GG:uj������B!�B����S|NN.?��+m�4S�M��&���\����G��k��y_�zaa��z�.^�����1b*���h��Y�p_�_�|���s��%N���+W~!55����&�o�����������j��t�,,,�h��>QQ��]�.nnNDEE���/��������/�S�[��[:ujG��&�oj��r��%rs�x��F%�o�����w
���'))�W^���J��l��s�.���[�m��w��"y���%�����������������!�B!�(��$��/���-{�V��j����(((`���L��"������2y�H6m�^��>}�$(�@Y��m-�d�������C�����I�����W_}��%3qv������>��M+����U$'�r��UT*��mptt0)/���b�����_|���c���<�+Kbb2��V���)1}�����xbkk���/�u���?��l���$%��k�S���[X�l6���qC*5F!�B!�x�����;����S$%���{���8��V��NW`���Nbc����A�b�n��P��_�==������k7<8�J@aa!ffj22����*�|SL�6���<��BLL,}�ve���e�e������\N���������������i_Y��m������33�b�u��<O�o� IDATMM'77����L��"boo[�z�U��/��k�p��9v����x!�B!��7�&)��mqss����7�x	o�N\�p�����h��u+Obc�
�+�����h���T��� !!++K��������4V�)lm�Y�h:�M���X�u��U_1u��:j�����66V���?�FAAC��V�/R�f




���}ei��!ffj.\�J�f�����t����V-{��k��\���q�
���.���1���1����������J�DB!�B�G]��=
��
HLL����`ii���fff�����W�����[q|������\]�
�c��;��������{�t;��EX������\�z���[J���s�>.]�F��cii�J�*�E�n]W���R/�����X��[���{��P,���6����������j���5�:���KL���m\�r���L��~��{��W��r�3���/KD�v������������\��u��Bh���]!�B!	�&)��?j�hD������}�
;;�/���V��t���Y�ty�i�BM�l��%��s�~�;�����^�7�cg��=�}��M�KTT4=z����-[>M��=�p��qc&M��__<<������coo���-��?^��J��U��:u66-x��w*�}aa�����o}9p`Oz���W���x�����B�eee�y�N&OY�|AA��_�#�Wo����~���l���nJ��&''�����S������e3,-�����b�^�z�[�L�k�B!�B�;T����e�^��8�Q�zj$�;2k��j��S��L�Z%GT��Wr��-�/�Wu�"�B!��9�����Z�J�R�������,YR���l��b����]��Z�������������1pp���0�B!�BT��(�'���WX��M��\T[[�j�����9WwB!�B!��LR���C%_B!�B!�W���B!�B!��A&)�A|}C����J��������=z��M��������Uw8�DAA�Y����CT��e���X��q3�;!�B�G�}�������w��*0p�����3�i������C[��������W�s��{����K9�))���W(!D�1b*��.5�Q�����~��_!�B��&GR�S^^>g�^�m��8t�O<���Cz`�����owPPP������ntt-[6��������B!��"&)���2v�4:v|���{3l���2�����}<<�3u�<rs�����T�������k?N`�n�����h|}C=�Un�N��7_�.\���~�O>9;���o?�a��;��w�q���.C������:u��<@FF��s��
�����c����iR|�:u��{cii��C'�5Ia�~c�cJ��~����88��n���$�)�c�{��NLL,�����7���\�W^1�p�����7�+W�:_���?�u������7���I���n�����3�r\]�1jT����?L�)�"�/RZ�����?,�|��O�����k�n��� ���k�Q$'�*i�������T��
LD��v��oH���Y������m���:������Y��W5c����g��-��O7�={NV�7��W���K�����$8xZm�A�e��)���?S_���}}B!��_�Iq��Yv���S��'?_��Y�)i�&�Izz&�/����m����E�V)��LZZ���G�=������0�a��DEE�v����9ITT$�����9������?���o(����������p���4n�
@h���;w�'����_HMM'"b�I���qZ���0�����Ck6l�����"$d�Ie��X��������;�W_OB�	~����������g/r��	��u������p�F���7l����H���Y�jQQ��_�~��J�c�333�#G�������QDEE�y�����Q���S����_�������s���b�>E������l��g����k��`�����}���)�r���s�o�Y������7h�F���O�!)��������{k�tc��2�_��B���-7���~�l��*��G�����'Z�q.���_�� oY�g��gE��<����_S_�J��"����B!����$���}���D�R������ip����[w2}����Z������#��i�_��U$'�r��UT*��mptt0)�����;������0�]�V�����u��y�� ?%���t���{�,���smll�x��Il�hZ|}�NNmK|��w�� ?RR~��'��q�8q�;���IK���H�.XV���_S��Z���{2`@43��k3xp/��7���g�������)���1�#G~������������=07���o=�4i���5��N����\wi�Gy����_��H��q�������^}1��Fp���������a}��j����9>
(������U�}�����fff�)�=�?����F

����4������5>+�~c�o���s-Z4.Wc����[Q�����Z<��17�I�m������,�5~MQ��-����������g�J�[!�����k������D�z=Zm:]���Jz�:._��M�@nnC�N!&&��}��b�\ll��RT������������b�6hP���k�n0xp*�
���B���dddaccUf|����W��csv�
�NW��'X��}6m�NHH��v����M��,���v�&��?^���#4�9�N���8��[_��}UQ%��)������������t&�]��Q��{/��)�{�+��������R�����K 2�0�ok��O�����^��`aa�_��}���)�r����*�k��(����#����\�|���B��2h���5>+�~S^�����g��������m-u��U��g���X������)J�����w���G!�U��$ELL�]�o��\�J��sm43n���������N��>���Z�h�t-����t�6�U��b����YW�����)*'6VK�^���?�+A�����[���K���VV|_|��3�-1���~����Gvv.��Y4n�������d��_8�Gj�6~�HY��?@��5(((,w�������������)�g��V��(��M�����������R�������i�7o�NW�'�l���;s���l���v�Z)c�,��o����U�}����C����z�|���Z���7���Q������
����[�N�.�<�m��n_KK��u�������1��&%�R��		�XYY��_i���5~My}.i�V���B!��P�t��>���+7HMMg��O���;p�W�~���p�J��3�u+�?���{*yw����K���z,--P�T�>����V�X�����Nt�����������S�������`��!��C\\z���Wo�q�_�����}���J|�&&� &e�����9���
�/����#&MP�������yg����cxCS��?�M���u���t$&��e�N�rJ���)��2��Tt�+�S�oJ��F�R��C[.\I�^!��u��}��~&�7u|WU�"U�}����CNN.��-Q��h�I|���&�]��{}�j��_e��M�4��������x������ ?���s�����l��W�gj����YY��^_�+��	`��+�Z!B!�w+6I1h����9���;������*i���kk+||:���,]�<��i�JzTT4=z����-[>M��=z�A���0i�����������PI�����������������������^�7�cg��=�}�����l�_���G��-�l����=��� �=����m��}��w�,�Z5��S�ac���^{������b���,\�'���h��+Wn�_V�<�����P��Q��k�|c�����/Kp�?yy�����W�n��3��1�����U�}��������o�	t�0�Q�^)��i�)�oU�������������I���6lJ�he���uK�������w��.kj����Y��"������a�8B!��M�_��e��-�^zic�0���=:���=�3gJu�"D������m�{���}�I���������/�2h��U�B!G�h���@�V�R���w?���%K�?��:�<yN�������}�=�!A�� �W�������{��u�J?�N!��n�.�Y�n��c�������V-{��� 0�Mu�%�I���g/+5���#�&��_a
�����?��}�����3O��3OU8!�B����!�B!�BQQ��B!�B!�xtU�$EJJ*U<=;�����=�L(�����h_��!�B!������8th��0y�����T
P���4��+�W^�O^^��N����u���w4(g���n��������*iII)����������9�t&�������S������rm�={���p��Z��4*W�"�}���k�S^!�B!��A����q��23��y��|��w��gx����dg�W.�V���f�FE0u�����_����]I��7���������o�~��V���3gvp��N���N�������m���`��!,\8�<�D!�B!�x$�8I1f��,]����333��k��]+z����#�������\y���T�����^��Q�boo��o=&N@FF�����o����J��
	���o-W��^^����F�|�w������a��g&NF�9~�B��$��B�x$E���D8A@@+��������?		,1���ht��4i�,k���/_78��<��k��c�~7)>!�B!�B�������c..������=��o����Z���*�Q�"HKKG����T��r322���P�YYY������6��������z�^!�B!�BT�2I��G_)_�7l��Y��(���wT���S#�HN�2��Z��}N���i�&��g[���2H;v ���_�����puuB�1#11��r������Q�eg��R����4�����g`oo�J����V6c�SU��5~$]�%]�%]�%��I7���B�G�*<<\�l��ddd�������h��!/�0g���~(KJJ�j����xx�����Z��	���o��k�^���'��s�r��������O����}��Y���bi�������;>�k� �{�cV���K���?::o�N���O�)#���Ntt�v}nr;~�a����Nw�\������q��s���W��?B!�xt��!�xx9�����Z�J�R�������,Y���+ll�m`ee���m�&*�J�b���0`S��������Brrr
���0`���4�%��[��3O����O?�g�����Z��O����=����4����;v�I���
�q#�m�~b��o���U&�������|��u����R��7�m�!���'��B�]���x��>t���~�RL�i��!��/W�-^�K�f�"�z��f�B-Z���O<1���%}��8::������W��>�\��h��f���y��m[��a��~���e3���HAA���pu���\���#�B��� ��:�����e������0��Zie8p2�N�������^��!�B!��T�t��bggCB���.V����VwB!�B!D�x�nA*�B!�B�G�LR!�B!��� �B!�B!�x �8I1b�T/^}�c�����GO��i7Z����J�����X��q3�;!��A>
!�9�B<��|s)#G�#%�7~�������������!�B!DE�$�x�DG���e��C!�B!�}V��~~};v;>G���6l
ii���=�3�e��p��;Q�N ���HLLa���qq����=S��#77O�4���t�:
_��vErr���f�F{���-prjKh�L��s���]4i����{��yw��_��k;F��P�gdd>/� \\�;v������D�{._��\�Nh�L|}C>���tc��X�1AA�Y��K�����1p�d�c����t�2;��A�M4(���y�R4��!��*�o'����o�T�Wd|�R>��^�~�'���]K����aS�t!�B!D���#)N�8����r�������5��b��^����Q\��/�L���L��&���\����G��k�~-Ze�w���|��J.\�M^^���J�F�'��CR�)~�};����(���Y9�ggG���"**���w��dh���;w�'����_HMM'"b~eo"Q�
> **//wV��GTT$���������*k|�1ooO���,\8�����A���g������d��wqss"**���H�OQ�_��iJ�EJ�?G�|//w����t�|���ro?!�B!�(K�OR�++KT*�??�M�v[�O�'	
����wwW


��u'����,�<y$�6m7�;dHo���033#(������������]+j�������AOs���Jz��������M�4���WW'bc�IMM����g���8;������_��������al|�:~*���}����O2c�D��k��C[z��d����,���%��qq	��w��3'caaN�v���O!�B!*JS�::���������zT*���A�z��i�I�t���*���q!66�`={{[�y��py�_~9��o����),,$--���VJ�����������
�v�&��)�bf�&##��oQi��S�OE�6�o��P��_�{z�!+���Y��9>K�?������������}B!�BQQ�~$ELL�]�o��\�`�P&���\���[���e������Rl��dg������3���=DG����F��������r`��/���]���..^����2A�06>*:~,--���)����[���]TOR�_�HIHHV��:>�ju�c���gi�������}��Ze����B!��2T�$�g�m�������t�������|fff�����W�����[q|������YY9�������Z�V��W_}or�v����9��%����z�7��xfQ�������&Mp��qRR�J��Bi������ ?��������}�����Y��+Zm"7o�,���YZ����:��c;��_N^^>�N�g��_�U�B!�BS���=M��c�_�#��.,X���y�/���V��t���Y�ty�i�BM��������o�	t�0�Q�^�S��r��z�<<����]Kz�Kt��r�!����Q���������I���6l
��~��)k|�[��={����wi���:>7�a��������=o����V�����������������������Z�b,�B!��<���p��e/,1b*�[7%"b|�
����K/�b�������������mh�����`��)��B������A!UG�h���@�V�R���w?���%K�T��B���������\�|�����>�B!�����{���77���xH<��g��e����82i���M����u+����"33�Z���7/���6.W!�����B�����=�B!�B!����!�B!�B��')F�������w,�!!�G!��%��B@��T�{5}�"5zK�f��tf��U�J���f��lm[����o,)W�B!�B��U��3������^=��M}9y�N���6c�4)}��E�8q�?���V�D��#��������.�B!��zU��~~};v;>G���6l
ii���=�3�e��p��;Q�N ���HLLa���qq����=S��#77O�4���t�:
_��vErr���f�F{���-prjKh�L��s���]4i����{��yw��_��k;F��P�gdd>/� \\�;v���Jzrr*��O������'0p7o������+��O�8��������Gc����X1�N�pqq�G��t�����������Y��M IDAT[�N}7��i�����v�V���B!�BT�J?��������)�N}O~��Y��+��������p���4n�
��Io������{9zt�v�/vH��=����\�����|V��RI�h4|��;$%�����s��q�{o�������#[qvv���(��"��y��������s�8q�;�\����t""�+�/�����_��V{��Kgaaanr���w�����;�W_OB�	~������tc�=L���9}������;�����?�:��.�q�lSi%EL���2���������YSM���a���O�l�4���,����fc�L�J.�"���������'P�x������}���|�����\]�}�[�������v��2�2���������Z��g�E���8;;a05*����*�0�'��A������CEEk�l`����e&������mLL\\����'44������(:v�@�z�����]����-[���A}Zp�}mpss���1YY��b�'���<F�'�����1�U�~���@AA!�`0�0^^V����/^����{�FO��`U~w�I�^��{Z2fL�U���R��]Y��6o�wwWsyuq�{6'��W�+�=����d2a0��m����./�4�������|}������������^=��%�n����.���c\�t���:u�`������`�������Q^^��?�`��I�\/]����%%���:��4���/;�'�����������U��.��>I������Z�����������g������������,ii�w����*syuq�{6�Iq�D�����@�_<�FO�����YY���z[5��seDD�b��A��o!#�+&N��d����d2?V������l�?������9uj�������gO�������sv�����WX5k�k��)��2Gk��<��_IK�����X��.����F��o���o��������������=�/R,[��#G�SXXLJ��DE������=�"9y��g���a���aU���2����;;;��N�b�'V����NLL?&Mz���S�L&�=��U�4����+��d2�����`��E�j��&�'��!5u=k�|Nyy��gX�z������N��������%8:6���</�[7��E��K���c���,_����(��""""""R�l�H������l���7�f=ku��_��������8=z<JR�X��zyy�`��DF��K�h��#��u����,���:u����=}��$#��9���A�>#h�����%<�		�,�������c��]����E4n���Ep��q�������g������M�t�����`��'��$''�������e���?/Z]\DDDDDD��a��������(��K$0�~�N}�*������1bP���@w��Q��GDDD�^���������#vvv��+�[6o�<�����*�#*�7M�k;�C�������k,R���]�P2���}�����#"""w/�?����g���������D��qq������s�;���^��N
��l��-=z���=�VYg����lF��q��=��������/��U7����3S�����/����e�������w��td��i�=[Zi�����/<<m?I�*-R�-����1cbHNN�2��KIIy��_���������<����#���odem��O���������dF�z{{;N���}�6�{�>^z��J�����xz6��EDDDDD��l�H���I��=A``��BQQ�E����0}����L�U�n���������3��>��w0���IL|����_+��y(�7S)���w��o4��C�:u���	�Nx�p


�uKJJ�<�e�7��;��#�(.>ku�rcBBf������_��7�X�������cx{{��-���=z<J@@5jH�f~���`o��%���?�gg'�FOz�
��������q�6&MJ�9�����N�����a�����	/�3s��Ju�,Y��I�9zt+n�m�V������g9|�Kv�\�����={�����]��}��Jcm��������[�|��u����M\�p�E�>4�����������9����b�N������������Ydg����c��=���S9}��E�9s�����OG������4�����������23s�������{��/�3z�4���_������&""""""��|�"6v��NF��&5��Ju�Ihhnn.���PQQ��5�6�)s��	�����6���?���hf�����?��k�y������8cooOhh�PXX���0o������:3c�xV�ZoU�rs���i|��j~��322N��?�jQ�����{�?���7x���|����c�f=K~~
v�i���k�����\���������DDDDDD���)��]q�Ann>&���N�6-*���;Myy��~__o��r��w���?PZz���S��m';;���|�����4l�f>�W��s������2�������:t
��v��X�\�����rqq`���x{{������q����4k���!�;6����K�.���0y�!JJ~$'g'�$$L���Ng���W}��������|������+��1=1��V���h�������Z�n@VV.���V�|���+X�4��}�_����gt������U��/�A����}^��}������T����������c�2���������g��b��i����N�����w}m���u]""""""rs�|'��e�9r�8������KTTo�����3p`/��Q\|���,X���V�
]�<Br�"���N�~�IN^D��AV����NLL?&Mz���S�L&�=��U������v��%���s�b9p��@Yd0���'%�]N�>��3E,Z�!�{w.��"9y?�t�3g���qo���������F��ti*.\���,+W~B�vm����t��_j�����&�a-P��������/RDG�%"b$-[������Y�Z�v��Wpqq�u�n?N��Z����x���\�p���������'s,�GQ�%Kf����N��pwoO�>#��8iu{�1_|�
'���z���
����������;�f�|i�������M}x�����]_}����'�����q3�0!�|}��_�����n/����l��K&>���:��������Tf�<y�i��g,
��	���S������"�8q8#F�e�r����#"""w/�?���Yv�����;;;������-�7o��wR���������D�/����M�&���E��~DDD�z��ADD��5�k��7���jz������K�""7���""""""""5Q�"E\\"s�,��\���f��`0������NG��V�~DDD������l'Ezz�~������d��o��c���qp��R|����{oO���u���={�9��q��M����Z(-=���Sqsk���/���s�_U�N
�������11����T��d�_�����~?�O�h�d����h��s�X���-�!C�T��� �w��������������U3F���	�����N���HF�L",�	�3t���J,���?���_'&f2�Zu��7�������!6�������Lb�k�?����yg=�7�v4n�c�>��se�xh��N�Ex�p�>���Bs���Lz�����=�;f��)�3���X+$�a��=���U��?��['�����'�n�:�m�.��
����������0����d���?&1q4��Mx�������[S;��?��{�>6lx�={>���rf��[���%+�4i8G�n�����m�
���_���,����k��q�����888�t�_9}z{�����w1w�;u�l��u���O��p�"�}h�����������������M5<r�]�p������2�`��DE��q�FV����(((�]�������k�����e���7m""""""b�����pvv�`00jT4���U�3`@OBC�pss������
�����iO��&L�'5u��c'$D��c��s������������NLL\\����'44����9�W_����'�����;�����L�&��=��d���J���b>������%%�����n�l��
����r��l�N
/�FW{�����d�`0����iQ�]^�i��+���1���z���k��[����Wp��1.]�DQQ	�:u��������^=�� �����m���ySZZ��Z�{��|��~6mZ���}��{�����	�=����U�]]�(.>KZ���5����\.""""""7��wR�8�u�q6F���P�K��{23s�eYY���z[��_��,���+#"b#F"=}_1qb<&�uy�2NVV���]�������+ii����oNWz��x���;,�o��H�F
�����;��?��V���9l�H�l�j�9Naa1))����v�������E�%33��3xp�E=�����-[��(/--���<������#/�4+V|bu�>>�	��_���.�g�>�l�����]�t����\�X@Y�y��N�:�����'Kptl`Q�[�|�����/�����
qq����R������ ���%!!�������"Ett_""F��e~~������m.|gZ��Fp�����(IIc-�/�����������+p���^&2r]�D3|�������W�|�\22N`41i�K����O�\�_l���������'����\^��;�m��9@�&�prz'�0�I�>�z���U_�y�xrr��p�==x��X�����E6'E�vm�;w�U��~��UcF�'}�f�c�������~zO?=����m[e�����������7�o���0__c���m����t����c�������?5�;;;�����T;����������	\���������c�_��~�CDDDDDD��T��"*�7M��};23s�0�O�=[J�F
y�����<\�i�v���GDDDjN�""`�<y�i��g��)"""""""b�;�ptt�����`�{��o������=DDDDDDD��P�"E\\"s�,��\���GDDD���DD���J6m���u��]i��o��c���qp��R�����O���Fc/�0���""""""rk��O������#c��0xp�'�R)>m�lv����{#yy�	��U�f�mU\DDDDDDnm6�I���I��=A``��BQQ�E����0}����L�U�n���������3��>��w0���IL|���/X�����%$d�4m��b[`u�

��z�1O��2��'s8t(����$$<Kv�)�����E�<Er
!!3t��i���R�d2�����8�&<����?�{���*.""""""�>�����{�������!C&1s�\�|�Ou�,Y��u���� ���R\|y!c��9{�����������G��QC^xa"�}����q���<"#�)(($-�[s����3�m��J8vl�����������{�iIzz�6}������f�S#7 ;;���B��k����h���������Z�[���I;gg'�FE���Y�:�$4477��|���`��
L����l��xRS���-^����#4��������vv


9x�(����������)�����wwW�����������\^]\DDDDDDn}6�I�����crs�1�Lsy�6-*���;Myy~~>�2__o��r����$�;���q�i��4���/;�'����������s�&+���������}�;��2�W�[��wR�8�u�q6F������}�vF�'�df�����r���6n��)��r\k����0{�4����?g��Y�x�E?vvv�LVNVjM�&F5j��}�e������*.""""""�>�/R,[��#G�SXXLJ��DE������=�"9y��g���a���a����1���g���)/� ?��Wo����
_q�P&�	''G
�Y����yy��jJ��t�ee��x���������"y���dg��o�A�/_KBB�Uq���|�":�/#i�2??of�z�������3�[w#8�qz�x�����x��X�v���h���������V�OO��O�4l���������A9�m�����
����3������\�/�����DE=MEENN����ONN"0�����=��qC-~^������������'O6����Ea\\"���3u����YPP$'g��A�W�;VM��{��AD���cG������a0��<�m��y�l��BDDDDDDD�&��u����4ib��\���GDDD���DD��HQ�v}|C������������t� ""p^�)"""""""RU.R��%2g����E��~DDD�z��ADD@;)�RZz��������1�^�W�)������H-���"ua������#���F��NO�V�5*��S�Z`��AA���DX��g��)�X������NL�dZ����oii���?Cl�3x{�������8��M�7o����T�9%�]��
@AA!QQOc4���;BBq�d�-O�\��d���?&1q4��Mx�������[S��������H-��N�����}�j��2d3g���7�dQg����[��

���,���2����gK9|�K��K��{�5��&�p��]���}={v��k��=��u`���)**���m��_������c[�"�Bvv��k��������=t/������DDDDDD�������pvv�`00jT4���U�3`@OBC�pss������
�����iO��&L�'5u�M����}���7�3��}�t�|�d�(((����BB������H�PRR
���+��}�������j.�;��)��]q�Ann>&���N�6-*���;Myy~~>�2__o��r+��I��]����JK���s����dg����OPP;�����ggbc���H|��%����:P\|������y���s���������l�Hq�D������:�����88�����; ��r����T�&�|���+X�4��}�������3:v�@������2f�����������#����3 5����F��o�As����x��{�0+�M6_�X�l5G�������w���mU;{{{�Er�"���������<8�&�
]�<Br�"���N�~�IN^D��A�>6l��C�20�L899b0h����O�\7��@\\$o�����<��;���kIH����DDDDDD���|�":�/#i�2??of�z�������3�[w#8�qz�x����6k��k0.\$8�=��u�����(��3��g
v�}����w!!a�����INN"0�����=��qC���""""""w���G�vm�;w�U��~��UcF�'}��5����IIc��M��`2��O�8���_s|�y�������s�:�6�I!"""""""RU�����M�&���E��~DDD�z��ADD��5�k��7���jz������K�""z�CDDDDDDDnU.R��%2g������1u�,���~���U��������������w�����o��oW���x��X��s��SC����:-�%Z��B�.�������M����?��o$/�4����j��Q���:5�6}'EPP$#G&����:t
EE%u������3�V����BZ�v���������w&1�5����������A��������..QRR
�;������������a���9w�����������4j�p��cT�������c�����5���|�������KH� <<i���]���d2�������lG IDAT8�&<����?�{�����DDDDDD�������w�c��w���.^,g�����,Y��I��s��V�L���?�E���r���������1{�b�������]����>���������.�+�O�a���|��.��}�����z������C��[u���%��U3��v����G���}u���^"#����Or��n~��S�7������dg�QPPH�vm�?k�~�C�����:5�%6_��������Q��IM��R�z���~~>TTT�f��M{�\6aB<��������������K�\�	qq����(:v�@�z�����]��Z5�5��vv�|�=��?M�����""�Yy�.[�x%�G0hP�1=2��u�q��e7���+��}�������j.�;���I�����crs�1�Lsy�6-*���;Myy������7YY���C���^�Gnn>�����rz��j�o���W_]�����t�EE%t����XU�o�k����@�������/��eU�U��>I����Qn��_v��%-�C���5������������;)N����8���b�����R;��{23s�eYY���z�?��7�K�GX���|������3�u�\�1b��[������1�*�X������_�<}���������E��>|��s�4ib�Q���������������DDDDDD�6�|�b���9r���bRR�%*��U����8����(.>Kff,g���zqqy��5�^���Q���2����;;;��N�b�'6�Wu���4&44���[
\^�Y������'cHM]��5�S^^A~�V��`�9��qq����R������ ���%!!��S�Zb��=���1���|z����Y�Z�v��W�8�%Z��F���<�IIc-���	�ys?:v��Q//,x���qxz6����n�:q�D��������l


�t��6}���+{������������X��<<�	�hu�;v`��E��O)����N������v����SO��=���A��<��0���������]������e��W����W���|���������s�T{��a<���k��������f���o��)�6-�q������w
gg'���9���NEDDDDDD������*wRDE��Icm�"w]?"""r�t� ""p�E������JF�5�~DDD����=�!"""""""��*)���3gIm�r����_�/<<��L]�S�t������������m��b������\�i\��/�?�3g~�������������n�E��AF�	���������t�"((��#�{����:����:���a������L�V���
!-m;��g��}o�`��;�����_�������,����N@@w��Y��;������������a���9w���64tS��"<|8�	NAA�9^PPHT���Axz����A�<�c�?��d�s��1��}�����s�Z��.�u�6r�}����{���,���#��O��2�[��wR����
�e��O�x���3�V��d�J&M���[9xp3m��`��).>���_�s�Z6n��������������{���Ic���HOOc����������K����{��w=_���s��h�e�7�[���~���Y��Csl���)**���m��}GJ�L��+W�Izz����x�k�����o�����5��=[��k0�8p ���4����������GDDDDDD�Ve�E���8;;a05*����*�0�'��A������CEEk�l`����e&������s�����(:v�@�z�����]��Z�������3�����q�@�9fgg������b0	y//�r���]-��-�i��>-���6�����������>G"""""""��/Rxy5������|L&�E�6mZTj��w���
�r__�}����[w>����e�0�|��J�[4l�f>�W���q���q������)xx�GJJJ���z�w�����pp��������(/��*����W<C�6L����NGDDDDDDj��)N����8����`Q��/�W2=qp�'3��w<de����mQ������yTRU����1�#��������81�����������8p�s����]�~d��V��v~W��Z~�t;��i9&�aL�����P��������H-��"��e�9r�8������KTTo�����3p`/��Q\|���,X�����6�!//�����(--���<������#/�4+V|r]}l���e`2�prr�`0X���k�'""""""r���"Ett_""F��e~~������m.|gZ��Fp�����(IIc-��m�����
����3��������<X��e"#���K4����n�:]����3��g
v�}����w!!a�M�'""""""r�2L�<�4�3�qq�����O^WgAA�L�8�#���.w��^?"""r�������e��<����`0��^y���y���~'��������HM8TU��&M�����!t������������5)jb���o(�3�������DDn��3EDDDDDDDj��E���D��YR��Xm��Y�3��������g��q�������16�LDDDnU��������*���=�x/.\�X�i�M���)��d���u�����������r��K�G�:��22N0qb|]�!""""""�����
�d��$��� 0�?C�N�����N��c�>�ubb&��U7|}CHK�@~�bc���;��$&�����m�������4j�p��{�4Fc���#$d'O�����������[;7~��c����2s���Lz�����=�;f��)�T����	���#�;�y�3l��:-�%6q�������]�������9sn�:K��d���=���7��m+������>�%;w�e��m�����.*�7��i�=�����y�����F^�w�������9���������=����������������ys?rs�#%�>�x�E������\�&��i4o����������Q�i������H-��"El����0�Mj�g������ ��\�������5k60m�S��	�IM]o��vv


9x�(��������0�������9���Ctt_v��@N�)��j'�??G�t�����n����EDDDDDD�����^^��8� 77����`0��i��R������W���c.���&++������q��bc�p�D�������quu`�����>��K�(**�S��q�������ySZZfU\DDDDDDDn��wR�8�u�q6F������}�vF�'�df�����\|}�+��77f�����������#�����2""F1b� ������'�c2]n��8YYyW���quq�16_�X�l5G�������w���mU;{{{�Er�"���������<8���7l��C�20�L899b0h��
���2����;;;��N�b�'��>>�	��_���.�g�>�l��q�16�#:�/#����w�������m.|��_�u�n��_������4�
���r��%6m�wwW��������&Lx�������AB� ���'�Ld�8<=���J�n�8q"�����s92	�1�v��2p`8vvvV�EDDDDDD��l�H��][���q�����}�����G�y���m��9�����8q�U�O?=���v�x��~l����sB�T|}�V��6����:��p�������>|���������"""""""RsU�����M�&w����&L�g����QC^{m*!![�����GDDDjN�""`�<y�i��g�:�C������#vvv��+�[6o�<=�!"""""""��*)���3gIm�b��Sg1f��[�������F���;�������#�����03�U����""R;l������{q�������_L!>~ 3f���TDDDDDD����]�<r[�/���q����:
�e6}'EPP$#G&����:t
EE%u������3�V����BZ�v���������w&1�5���`n�f��t�Q���|��������1����!!�8y2���C����JmRR��_��V�:��Sg>����������?z�8=z���=]�����o��Z��&�;�OL& �;G�c���	���a���DDDDDD�������w�c��w���.^,g�����,Y��I��s��V�L���?�E���r���������1{�bs�������1z��*��3�m��J8vlyy���2G�t����{*���}aa��`��oX�n?���.�h���X\\"�Z5#/o��I|��?-�^k~��w�[��M���h�����_#==�>x����Zb�E���8;;a05*����*�0�'��A������CEEk�l`����e&���������r��Q!!���@hh���@�~��1c���@���V��g���	

���t��������>�i4�O�.��������*?����)��]q�Ann>&���N�6-*���;Myy~~>�2__o��r�;)i={v&6v
�������R��N�;~���99�HK�Nvv�����z��
�����9p�\py��i�_�o������*?����)N����8����`Q����R;��{23s�eYY���z[=����gO�������sv�����W����P^^���������^������c���w�����<O����N�������ODDDDDD�Vg�E�e�Vs��q
�IIy����V����g��^$'/���,��9,X����#�{���8t(�����#�����`0���#$'/�_��������Et�T�y���OcBC�x����������z~7;?�[��)���1��-����f��g�n�p�+��8��u7���G�GIJk����e�0�,Y�G}J��a�o��OO��O�4l���������A�x���\�p���������'s,��P]��y��yl��-����WN,_xY����ODDDDDD�Nf�<y�i��g,
��	���S������"�8q8#F�����jz������K�""w�;�ptt�����`�{��o����g��""""""""5�PUaTTo�41�v.r���#"""�K�""�X���]�>��d��P��GDDD�^��	/���*)���3gIm�r��:uc�L��v;w�������G ����	���n����������H��""�IqS��b
��9s�>����N����'"""""rw�"�M��q������4n[:""""""w'�.RE2rdaaO���C�PTTbQ��1L��:11�i����!��m ?��������g_������DE=������	���9�xII)�'�L���x{3rd��g-�����%$d�4m��b[������c�����5���|�������	���#�;�y�3l�n���%t�DDDDDD�n6�I�{�>6lx�={>���rf��[���%+�4i8G�n�����m�
���_���,����k��q�g/6��3�m��J8vlyy���2G�����3����w��#G�RXX���1���n/���x��'9uj7?��)�����qq��j����]$''��G������W�|���4�7�c���HOO������z������|�"6v��NF��&5��Ju�Ihhnn.���PQQ��5�6�)s��	�����5Y;�<x��@H��xyyPXX���0o������:3c�xV������+<8�A����`�����!������o�g���i��>]�<BDD7s[k���s�u�^^��8� 77����`0��i��R������W���c.���&++��9)i��_ 6v
'Nd�[o�WWg~��$C�L2�u��%���())5����wU����@�������/��eV�/"""""""5g�E�'��8��h��X�pp����h�������Z�n@VV.����:nn.��=����q�x�z%�x�
G�����-�\�E��>|���/mN�.�iSGN�*���	���EDDDDDD��l����e�9r�8������KTTo�����3p`/��Q\|���,X����:6|��C�L&��14l����;11��4�errNa2�8z�8�V��^�'��!5u=k�|Nyy��gX�z>>�	

���V�X��������EDDDDDD��l�H������l���7�f=ku��_��������8=z<JR�Xs<==�>}F��a���Kxx��K�����	�:E����>}F��q����k�."9y�?B�v9r���yl��-����WJ:Z�W]�"""""""Rs6��]����;���O?}��1����>z�����3q������\HIy����Z'"���1���ES6mZ~C����]3.���'"""""rw��N
���r'ETTo�41�v.r���#"""�K�""�X���]�>��d��P��GDDD�^���"""""""r��r�"..�9s��v.�
�N�f]0�p�L��������?�����������{��xK�{����>?��[��SDDj�m��"==�o�]]�i��_L!>~ g��p�_K�]������V�rYF�	�������i���������H�l�H���I��=A``��BQQ�E����0}����L�U�n���������3��>��w0���IL|���/X=~II)�'�L���x{3rd��g��w�Y�C�����?����s�\Y�}����O����%R^^Q+��.���	���#�;�y�3l��>?��;}~""""""rm6�I�{�>6lx�={>���rf��[���%+�4i8G�n�����m�
���_���,����k��q�g/�z��cg��!v��G�l�����S�b�;88�t�_9}z{�����w1w�;��)**�O���n�������`_+��.�r����������Fzz|�����Vw��ODDDDDD������pvv�`00jT4���U�3`@OBC�pss������
�����iO��&L�'5u�U��b�'���<F�'�����1�U�~m��E���W�??����k�^�~


��3��M}X��C���F�/""""""r�s�u�^^��8� 77��d�e�M���������??s���7YY�V����'2d�y�K�.aooGII)���l���W_]�����t�EE%t�����o������l��5'O�����E�f��F�/""""""r���N�'��8��h������'~a4z��`Off��,++__o�z�������Ey��~|�����?��6r��fN�����3���1�#��������81��2����X���0�'C�N����V�g��EDDDDDD�T6_�X�l5G�������w���mU;{{{�Er�"���������<8����������-�X�{x���I�^&'�&���G��j�?(--���<������#/�4+V|R)�_����DN�)^zi~��������������l�H������l���7�f=ku��_��������8=z<JR�X�:�����Bb�k�������j�-Y2�&t���{{��IF���@��<X��e"#���K4����n�:]5gV�������y��"7s~��_DDDDD���w�qU�y��_{���A��aK�Jc���	��d�1��/�"a(���
z1�j�Oc���x`���ce�w�9c6Z�?�I����RDRa{������v������x��k_�����Z{����ZK��2$''[/�\�0>>�=$5��u��I�3f�#s�m4��s�=DDD������e�....�F����������;~%�����������������55v.�L�sv_n IDAT���������5&)nDN���J�v����Qn������DDn��3EDDDDDDDnD����),\�����-5u��Mk�4��v��V���g��/y��'i������������n��Oiw�J���z�g���%}o����7��������t�����QC9{����_o�tDDDDDD����L��]�>�6u
�t��w���/`��QM��������42����"11��}��G�HF��BYYE�6����6�Ubc���1?�P��?������M��;������������k?&(�m�>R��g���&S0^^�$4t���U�P>AA�HHx�'N����~���������?���:�6mz��Co��F{�o��~:���~��e�����g�����F���{�|�g��O�V.��������_~_�MV�{|��Lyy%��?LdL��
��U>����
C������$���>GG$5ug���{���)+�����sO>�|..-�����@rs���e'c��Dnn�U��j�_/��?�GT�s��v:QQ8s����7x������@PP?22^&2��&�HDDDDDD���I7W�V���a�����2�?aa�����l������k71u�����G�f�F��6
�9S���G0��>B�vm���W}��c���><�a����������i��"""""""���')��k{�vJJNa�Zk�����:q�i._������7EE%v�������&.n
m��`��������^��o���?N��7+""""""��9|��������L^�Zm������L^8;;QX��3$��J����{lw��,X0�>f�������e�V�]`4���J��o�������G�����EDDDDDD�#�OR������������7��hW���C�>���K)/��������a���6m���|�V+�Z�`0��t���C,�S���(�>��5Y��c._���������F_DDDDDD�v��I����DD$����y�^�;v��?���+�:��O<�ii�m�aa#�KV�{��o'0�/��
�����3h�<=����`�CB�0���t���	�G������3���z�����u��2�R����]#��;���EDDDDDD�d���d����k���������>�������4i4c��~ci�n������DD��]�,���`41��+�^������""""""""7����������;i&t����HC��ADD��7"'g�M%#����?"""r�������-xp�����������w�">>���;i&n�����K|�I���Ad�8f&"""�+]����+)�l����;����+�d0j�P���_�����:i$w�$����������NCDDDDDD�C')���HLL�o����#��#�PVVQ�Md�8�M{���d:v��/����8u�,qq������7))s�p����U$'�"  o��(/����|������'N�$(�AA��?���3gJ��~�)/�_:����m�7��\��O'������?���~<��6uZ""""""�H�}������k>��}Z�ra��$f�\�_���Zm���������`��+)/�a"c��W���������W0p�������'�?~�t��O�g���j����/��:����9� ���l���1c^"77�N��NYYG����{Z����pqii�������{�/�##�e"#�h��DDDDDD�19�v���!����`00vlk�|T���!�	���5f�����]���S���M�8�5k6�_ZZ��UHO�������+��O`����Wc48s����`0
}�v��8��:���h����m()9��j�`0��;w��N��r����1�}le~~���i[_���`��$�X55589�����������=�����BAAQQx��?������EDDDDDD��>IQPPt��	L&�Z��Nu�L&/���(,,�S�{(**����N����l��n�1?2�X������f���,X0�c��x���-[EJ�o���������\��o�x�����;Fii9o=��8'''�}����R^^Iaa1��+><���6m<���
II�(.>��j���c�^��Z�:t��b9U���?��i;��c�Zi������������s�$EL�`""	������y/��d�i���N��		y�'�x����v�ge�����^�������A������K�NL�Opp����=;�V�����Ac���N�n�0�		����������\�!99��x��Z���)��� ���6����(&M��1���X��=DDD������e�....�F����������;~%������������������55v.�L����������5&)nDN���JF��=DDD�����[��L�Q�$E||
f5v.�\PP?���Cg��-�e����c��iM6~Sk�������:�~��VR��f���S}l�����l��SO��3Q�d|����gR�������NADDDDDD�������Q$&����������S(+���&2r���Jll2;���Jv�g�:u����x{�������9\�p�}�����!��+m}��{����������X�|5?<w���o�(�������:�OPP?^�����#(���/���]�1AA�h���zo�����*��g��w��i���9��������{���5�6�����t�23g.��&+�=��Fs��6��.]:0a�+��Wr��Vv�^���;X�`��=@P�}�[�O[?������_���z�x{8;;�����������;sX�h9��Hnn6+V���o{rs����f���m������������?����g����m�������7������WDDDDDD�7�OR��
������ccX���:m��OXX0���1�}���f��ML����l��Q�Y��?�w������{o��C������hz��N����>��&'g�������j���g`2y������X�����t��}EDDDDD��s�3)��k{�vJJNa�Z1������g�����j�f[���7EE%��#G�?^~9���S���K�.�����=���b��L>JMM
ee�����������1"�v�jjjpr2RQQuW�&���+""""""���')

���>���Uk�����N���������t�t/EE%��y����������^����!6�7�������TW��*?w�<c���K\��F#���_��]{%��h�jm�!�k��3[��['����~_i�~��[o�O^�1JK���x����v�9991t��������J
���\�������e�������Z��o2ya2y�����U^Uu���/�
����r�U�6���C,�S?^l�!�k�6m<���
II�(.>��j���c�^���Nu��WDDDDDD�?�OR��&""�������������K�����]��)����x���HK_����|��A�����g���-�KJ��������������YDE=G�>1��"�������K'&L�'88
�����i�A``_����o�;��}��m�]�de�����^�������A������5��}EDDDDD�y3$''[/�\�0>>�=$5��u��I�3f�#s�;���?"""r�����H��k��F#���y���������BDDDDDDD�F����������;i&t����HC��ADD��7"'g�M%#����?"""r�������-xp�����������w�">>���;i&t����HC��ADD@+)�6RUu���Sqw�����/�7uJ""""""���}&�HS�:u{�|�7�l�b9������^���i��DDDDDD�8t%Epp��i���4=zD2r���*j�����i��L����������N�%.n2��!���&%e.\����� 5u�&(�����R[����y��A��w�}�G?~����{��G��?�n��=��#�0n�4[��3�DG������/	
�����<�w-����o�'%�������#���QO�b���NMDDDDDD��o����k6mz��{7p��ef�\T�MV�{$%����m<�	]�t`��W(/�����������w�`��Z��~�/>�`)�}���/�t���:ggg�x���>��}�6�sg�-�{�Q�^$ �LI��dd����[j�-\�:ee=���s22f�����������)�k�.,^���������l��DDDDDD��8|�".n���0���5�i3dH���pwo���Cuu5k�nb���me'�b����bcc#i��'''���9p �V��M���i������������k����l���3&�����=�^+�h4p�L)�`0������c&PQQ���|�O>��_xx���EDDDDD��s�3)��k{�vJJNa�Z1������g�����j�f[���7EE%��yz���[�p�u;��m��=;����RSSCYY�zu�3V}��8���m+3�����������p�"qqS((("*j���'��\�?b��ayy%��?��Y�|���������]��+)

���>���Uk�����N��������?=����??�:m�s��y""�2f�0rs?%?;�&��j��������r���Zm��[�`�T����?&'�+�-[eW~rm��&��������c��C<��/�0+iL��x�����;Fii9o=��8'''�}����R^^Iaa1��+><�������?���n�F,���Z����}|���oO��]�������}��V�M��s�P>V��V�\0�Vv��3��G�_��'NX�����\������NMDDDDDD��o���LDD"%%�8�q��{���%K���I�S�p����DZ�x�b��kCf�,������7��{QPp���W�\Dbb&S0]�va���?�����3q�+X,�qskMLL		���_�m��4��e���	Z�����F���8|��k�.,Z4������W�3������r��;V����?L���������f~�? ��'��m���������}���L�4�����sum�_��X���������Hp��w�/��o{[���G��qk�7|���������Q�J���������j�
��8��TVV���'s���HS�u��[��q�~Crr�u����o)"""""""b�]�,���`41��+�^�����=DDDDDDD��P�$E||
f5v.w���y�7��q�w��>I�6=����|���q��}0:s�l���m(�?"""�P�~��3��+�d0j�P����k�m��rs������f�-[v����ac:RU�9F�N���+&S0/����)������H#�$E��/�[��:��������+��f3���_y��wx��5M��������4�NRG���F��O��G$#GN����V���qL��*���t���_(���p��Y��&����oRR�p��E[lX�RS�1`�h���1`�h��)��/_�����{W�����gp��y��?z��������F���9rJ��9�9�O<��G7<��T��+*�HN�E@@��!$&�Q^^i���d�����w���g��g��O�����������>|�]���C��#!�%N�8IPP?���1�R[�3gJ��~�)/�_:�������fY�V�~{=))�����G�F�z�+�6��""""""����b������M�����K��9sQ�6YY���4�#G�q��'t���	^��������{�:6o����j�~�������|��.^�T��vggg�x���>��}�6�sg�-�{�Q�^$ �LI��dd����[j��������X,9��������Z���Og��C���!yy�(--'5u������Bnn6f�-�Cnn6���_
��F� ����X�*������&77��S���Y��u��*8zt��dd�����C���',�9SJ��]X��-���'?���?�(�������H�s�$E\�\][a0;6�5k>��f�������������j���������&N��5k���F���+NNN��s�@��.!!��=����3f�11����g����'��}73fL���%={v'""�s������M{��-��O�Gk�����j���g`2y������X�zc������o����3�<x��@h�#�k��Q��������>�'�|�/<<�l�""""""��9;��v��^�����SX�V���s����Y,��|����V���MQQI�v�����-�k��m�.f���������PVVA�^���U��?�c6{���fo��~���	:�����������8#F$�����''#U���������VIK{�.7���"����k�+�������dg��:f����2�����������������L^�&(������L^8;;QX��3��J������>���'"b,c�#7�S���3i�(���m���q��,W�o�S��O��8y��m; �������������<�	'O���m{�o���K�.���������{ZP]]S�8F���c?�*Y�`*|����������n����k�m[O�����;��?�C��Q�����I���z���c������&����srrb��'�?)���������#����:���	���h�b9��U�����=}��d��%\�x��{��G�j����b���,(8���[m�m�x���fQ\|����#�X��?������������eu��?L��L^|�����C,�S�>s���:���j�U+C��+���` >>����78q���_d��u$$D7��""""""��>I3���D�b6{3o�Kv�.Y�GZ�v�S�pBB���'#-m�]����!3sQQ���O�G�Hxx���r�"��0��IJ�C��h����v:�~�oBB���[Lz��������/�zE����A���?���_z�Y�����C9r
�?\�����esII���[W~��?�����&���of�������3h�<=����`�CB�0��w�������?���'����x�����h�������H�2$''[/�\�0>>�=$5��u��I�3������R	�g��)M���F��{��AD�y������F���`��r��e����_Iq'�������>|����z����������:���#:z �������3q������m[O��I%4���N��s��?"""r�t� ""p��=DDDDDDDDn�n��;Z����),\����H3��GDDDJ�""�����-[v���������:u��EZ��:u�,��>?���s������6�|�K���xxt�����}F#�����������g�4���r������A|��~�����Eb�����w_��;P����8F���je������?��������_�"0����������4-����"11��}��G�HF��BYYE�6����6�Ubc���1?�P��?������M��;���������v�WTT��<���0��CHLL����C��	
�GB�K�8q���~�c���v��]-Z������\�+����������O����Dxx/���1hP_��{�cG�]�����������/�!!a'���\^z�Y\\Z��C�3j�PV���$�*""""""u9�v�={�f��7��w�.]f��Eu�de�GR�h��������KG&Lx���J�������yG�%���?~:��b�����Fii9��s���@rs�Y��U|}����Mnn6S�>oW}�.����;����-�w�YOxxO����k�'�]�x�/�����n7T���6��i���5�������UDDDDDD���qqCpum��``������N�!C���{k�f���Y�vS�>o+�8qk�l�+����U�6��>��y, IDAT77W�O����u�o���1�X���}��uun���7F~�IR����@���mp}ii9���!�������}y�� -ZNU�9���;�{��TVV��}��q�3)��k{�vJJNa�Z1������g�����j�f[���7EE%u������1"�6VMM
NNF**�pss����?���L��'���._������k����7F~���~�g��b?[��������+V�����_�����`0����L�����03r���wLDDDDDD���')

���>���Uk���K��gg'
����^��J���������3[��[o���F#V����V���+11�������&66W�V��\m����n������������xz�7�������g���x�� >��m����Y���������4>�����[���w���r22�����j���:�I��_Jyy%���df�d������� 6�7$%����$V��#G��z�?j������������������w��j���V��j�oo~w���yl���
�pqi����t�����~�o�9f{`�����;���XN��kx��5$''����8|�"&f0���l�f�����]����n�J�N���<�O<FZ�x��������K�^�xxtc��D����j��K'&L�'88
������������OOwz��e������V��_`���������h��?h��?2�Y����k���SO����}���w�:tx���7y����y�Q�ODDDDDD�����l]�xr����z�x���g�V���(&M]�
�������~���k��-�=7z������K�""���]\\\0�����?/KOOw�J�������cGN��z�����������������55v.����w���x�+t��s�����i(]?��\�v���=DDDDDDD��V�$E||
f5v.�L����������-x��n������n�4DDDDDDD�:�����C')���HLL�o����#��#�PVVQ�Md�8�M{���d:v��/����8u�,qq������7))s�p��-v���<�� ��������?�s������������G7z����S7n�������8q�$AA�
����K���<Z����'mc;V���/��/�k�+*�HN�E@@��!$&�Q^^i�?s����0�����%���8~����;��WR���5�6�����t�23g.��&+�=��Fs��6��.]:0a�+��Wr��Vv�^���;X�`�-����7��3�O�e��������E�����	0SR�9/�~�[���������������lrs��:�y�t�D���y��m1�������������Og��C���!yy�(--'5u��~���)+����X,���1��
�
DDDDDDD�D������k+c���f�Gu�����`��[c6�P]]�����:�y[����X�f�-.!!��=����3f�11����gW���'��}73fL���%={v'""�A�6vl+V��}_�r��������rV��@z�L&/��\�>}�W��F��3gJ9x�����Gh��M�r�S9;��v��^�����SX�V���s����Y,��|����V���MQQ����m��=;����RSSCYY�zu��W}������m+3����:_�����F2y�����o�|����DG���j�����1"�v,jjjpr2RQQ���+ii�q��E���PPPDT�^{�O����������������+)

���>���Uk�����N��������?=����?�&��;OD�X��Fn����og��QX�us����)*�\���N;��Xo�nn���D����c��u��F����V���@���[���o7����9x�N��c��pwo��S9p�c�������X�lU���������43��x�����;Fii9o�Yip5NNN�$��/������b23W2|xUU�9�!!�0�X,�Y�j��y����o�������/�w�>�h[�v:�`����+�����w��j���f���i�Al�oHJ�Eq�I�V+G�c���b7m���C�X�VZ�r�`0���n�>���������>I3���D�b6{3o�Kv�.Y�GZ�v�S�pBB���'#-m<��������z�>}b=�E��{5(��+��_��LR�:tFc�C��K'&L�'88
�����Y����C��t���������������/�zE����A���?n����g��1xzv�[�������!"""""""����I��k-�~���������L^��o�j�/<�/<s����@��O>y��=!!??S�v/����U���^?~���z�����������I��4i�U�i����v���9p �����q���������cGN��z����������w%Et�@|}��0��3q������m[O��I%4���{l8�}�����������R����[G�""`HNN�.^<����fb�....�F�����������]�{�����������I���.�j�\nZPP?���Cg��-kp�8��z����H������@3{pfnn6����7\��l����&�ADDDDDD�v��&)DDDDDDD����I���(����iz��d��)��U�j9�i�^%66�����%;�3N�:K\�d��C���MJ�.\�h�]�|5?<w���o�(���������������������G7z����S7n�������8q�$AA�
����K���<Z����'mc;V���/��/���VTT��<���0��CHLL����V�L)��/`2���KBC�q�x������������p�J�={�f��7��w�.]f��Eu�de�GR�h��������KG&Lx���J�������y,��9;;�����������;sX�h��r�����?j���))�����Y�~�-������f��W��mOnn6���L��<]�t�g��������w�YOxxO�me�:���Og��C���!yy�(--'5u��~���)+����X,���1��;~"""""""7���qqCpum��``������N�!C���{k�f���Y�vS�>o+�8qk�l��%$D��gwZ�p�l�!&f099�������q�I�o���qqiI�����o��c���b�Z���+���8�V�����rV��@z�L&/��\�>}�W�t��Fg��r�������]��(""""""r�8;��v��^�����SX�V���s����Y,��|����V���MQQ����m��=;����RSSCYY�zuwX���__�?�i6{���fo����%66������_~����� :z`�6W;���#�l����''#U������.\$.n
EDE
���������9��������*_IQPPt��	L&�Z��Nu�L&/���(,��	EE%����O��s�����1��������L�4
��v?�������z��Z���_-��,*�\���N;��Xo�nn���D����c��u��F����V����3[�����n��o7s��'�<��6	�����r������199_�l����id��x�����;Fii9o�Y	p5NNN�$��/������b23W2|xUU�9�!!�0�X,�Y�jC�~L&/L&/>��_��s�z{���������s�p��%��=�Gm���C,�SW}`���1���zV����1���_���i�Al�oHJ�Eq�I�V+G�c���b7m���C�X�VZ�r�`0���n�>��������J����LDD"��}1���7�%�c�,�#�[���S8!!O�����6������YDE=G�>1��"�����a0X�l.))sps���~�g�����ZV�\D~~&S0II`����q�.��0!���(��{3{vf������OOwz��e�1�u|������K�^�xxtc��D�����ss�4h�����m0�!!��D�������HS0$''[/�\�0>>�=$5��u��I��]p7JHH%0��Y��4(�����~���k��)��F��{��AD�y������F���`��r��e����_Iq7����8����G��qk�����g{��#��[=DDDDDDD��z��=__Sc�r�+,,f���SYYE������Jh�#v�?��p��.���_�C����t����HC��ADD�*�{���������(��!"""""""w�z')��SX�0��sivRS�1n���N������������-x�����������$���������:IEbb}�>M���9����Zm"#�1m����&��c8~~�dg��Sg�����w���II���m�������������e���;w����-��x<<����pF��b���6����#�����K�������������#�x��g�������b����[EE�����;���4��+m�g���&S0^^�$4t����O"""""""r�p�J�={�f��7��w�.]f��Eu�de�GR�h��������KG&Lx���J�������y,��9;;�����������;sX�h�����"fJJ>'#�e���R+����]��b2����\rs��������Sv��B���b��0~��?j�?~�t��?��=������rRS���.|���
�����93qqi���@DDDDDD����I���!����`00vlk�|T���!�	���5f�����]���S���M�8�5k6������;-Z8c6�3���}v�_\|���w3c�D\\Z��gw""�k�����=��t���5>>�)**�n~'NX����`��h����y�V�����Z�����L^���2}�V��i��Fg��r�������]���5DDDDDDD�����]��Wl����V���`+����:q�i._��l�����ySTTb��m�.f���������PVVA�^���U_�?�c6{���fo��~�]���	gg'��������������	:�T��~�����8#F$��EMM
NNF**�pss%-�9.\�H\�

����k��	77�:�#""""""��8|%EAA��'0��jMP�	�+�L^8;;QX��3��J���aR����DD�e��a��~J~�v&M��Z7�������"��[�����j�n~?~�>]j�?y��m; �������������<�	'O��MB���f���8�1��LN�W,[���EDDDDDD�t��x�����;Fii9o=��8'''�}����R^^Iaa1��+><�����?���n�F,���Z����||���oO��]�������}������������`V�x�a�f�����6m<���
II�(.>��j���c�^��s+6m���C�X�VZ�r�`0���nw�"""""""w2�OR��&""�������������K�����]��)����x���HK�p�Hf�,����O�F�~���^
�m��E��`2������h�!�V~o�����������������������K�^�xxtc��D�����ss�4h�����m0�!!aX��QDDDDDD�NeHNN�.^<�Va||
=z<Hj��
�,88�I�F3f����uBB*�����5��SiVn������DD��]�,���`41��+�^��������/�����>|����y���������4�z��=__Sc�r�3q������m[O��I%4���N��i�������:�~���""""""""7J�{����������I���.�j�\����#"""
���[�
R��I
�-8t�"88���4��}�="9r
ee��DF�c��W��M�c�p��B����S��7o���{��2�.�b�/_�����+��?���38w����=ZH���xxt�w���9�q���b��F��:�F��Fs�L�]���fx`=zD��C�;w	>>==:�_QQEr�,���!11���J[��3�DG������/	
����7������������b������M�����K��9sQ�6YY���4�#G�q��'t���	^��������{�:6o����lq�������9}z/��md��-Znw��F�H@�������x�����������K���-\�x��K��{���*v�Z����r������#JJN0~�t��?��=������rRS���.|���
�����93qqi���@DDDDDD����I���!����`00vlk�|T���!�	���5f�����]���S���M�8�5k6������;-Z8c6�3���}v�_\|���w3c�D\\Z��gw""�����F���+NNN��s�@�������=��t���5>>�)**����U�6��>��77W�O����?���h���R<��` 4���ks��������������k����6����j�b0l��;�W'�b9������>�2??o��Jl��m�����>|�����*���{������~�fo[���MUU��E<=�m�-Z8����z�;99����������|����?��I�cQSS������*��\IK{�.7���"����k�������������47_IQPPt��	L&�Z���+�L^8;;QX��3��J���aR����DD�e��a��~J~�v&M��Z7�������"��[�������sV���3[�����n��o7s��'�<��6	�����r������199_�l�*�s��9|�����'/����dd�It�@�����:�I��_Jyy%���df�d�����s��BB�a4�XN�j�����iO��=�;w	/^b��|��6��ov�6m<���
II�(.>��j���c�^�[�M��s�P>V��V�\0�Vv�������4g��#&f0����b����7�%�c�,�#�&��N�����{>|ii��n���ET�sxyy���Fxx/

N������HLL�d
�k�.:���yG���5��_N�W�hN�:����o;�V�������`�����511$$���;�!99��x��Z���)��� ���6����(&M��1w�?�		��3k���N�Y���GDDD�^�~i^v�������h�`0�>���yYzz��o���}��~��:>���[�}���������4�zo��������s��
��8��TVV���'s���HS���4��GDDDn]?��\�v���=DDDDDDD��V�$E||
f5v.����y�7��q�w��>I�6=����|���q��}0:s�l���u4�?"""�P�~�������\�~/����& l���-cE �b�D��D?{�A�F%����DT� 'kb�-�B�(6�������
mA��5���yg�a��)DD@1�T>��E`� <}z��?�����x��kL�y:+��jk��������m� EHI��-WvDDDDDDD��R�m����p8;����|���,�<��C1i�B���z�\`a���'�=E���`f�VV:/^���^����CO�9LL�`������]���w��G��o���0`��J�s$'�B�.���~�ii�����z������3�vGf�3!��?vvn�q�&��;;7����;w�+Vl��O_?������k)��s������vvn��s��y+�<O�����3�����Qk�o�w��U?QES��g�^@\�Z���n�z�S�|S(OTT4��
Dr�Q\�z���5
���p�zN��������r2�k����������8v���f���
kkK<xpS���R*�z��"-�����-{����
/^���?����HO�DX�!=::II������U������U9��h��II�X�~!��M�����xL�8R��h�������� -�4""�@.�TK�DDDDDDD���A���{C[[���B IDAT��~����+��w����s[���,-k#77;v�a�������a���B���}���5j�`iY}����3�E���C$&�����!�k���%<<\�2��i8~�7L��45k�S�6J������y7/�SS#��j���Fa�����/���+���O�����dH$�o�
���o�}""""""����]��q�7~7����P( �H����*����_�����������=��=�Y���������CFF��Z�������4�YZ������-RS�u���~��B���|��X�/yyy�J5��������U��(��#���K���9n��o�n�����b'""""""�hj�����{o��
SS#�
�������A&������p��XX�*dg����S�AR���$b��AP(
�PT������F�i��?N�=|�D�������	W���+q��a<|xV�I������x���0���Y���5krs��lGCC��u�_U�`�D\��/���3b�����NDDDDDD�6�}�b����q�����X_���I�R��t��y+���w����e?�����yrr^�]����@Z�cl��[t\�k����s�,���������o�Q�����b���W|�����{�tCC}���c������P(��|[���wSE���8v�����B���sLM�p���"��S�6���@���D\���B--9$	�D�ODDDDDDT��>H��oOxx�����f�;w������tt�Q�����]�t@x�p���,[6��#��S_�����J����7HI�
S��;v:||�AC��U�a�b9�+�����[J��GE����9��|������HI�#�m1�O�0))w��i�9>��m�z$	V��������m�/������Q}���m�ae��f-���R����h��'�u����������������IBBBK��SZ
�&�Rem�zc��@�'������
3f|^��T+e�~�������"�����4��rhhh@"�?�����/^��+)���~��K��������	Jo� """"""��S��=|}{����m�R����������g�Q��f�C���*;�j��n?DDDTqx�@DD@1�{�o� """"""�wZ���X�(�m�B��"""R�����W��)��������JP� E������?<1`�����R���9�&-D�~!�W�����S��?ff�`e�������K���'������mad������;�E�������������
��������	��X[�aQW�+H����8q"ZZr|��XL��
"#�V��]�V�s����|������Q�������~=��Y��#�j`��1�E�~@FFn��5k�����!�k����O�>o���a1������t�����U@DDDDDDDe���=���
mm-H$|�i_l���P���?B��mzz:������\����G
�F��m�����O�����dH$�o�
������U������>}�!�Iajj�O>���U@DDDDDDDe��A
c�Zo�n�A�P(�����P����x�:WP3���@���>����?���
������*�~���;���V�ODDDD���+7���
LL� ::S�,�OUvxDDT�}����{o��
SS#H$�<2��P9SS#�dR����3&��{3a^OOL��K�q��~�9�'V��\�����>����o��'""""R����8wn���/���0a�0���P��Q��A�u�bp��-��g""b-|}{�*'�J������@f�3��{���??!O\\"�]K�B�����z�c6��m��;����\<z�11q*������J���
++sXY�C[[=a^S�fe�GDDU��)���	�`��8���s�N]v������6��wA�v�K�.�'%���=-��EOt��	��]��cK��������I4o��7n��?""""R��o8;;VvDDT������7�7�|Ulzl�����a���b���	��1�%�_R�������z��;WvDD�P��DDDDDDDDeQ����=`nn��c�j�����DD�0HQg���\�P�P�������_<~ ""��{QQ� E@@(-�z��P5������T��""x%U))�!��B"���~�������Jy\]y
&�'�o���������=&MZ(����?��823�A.o����)-OMM������3�����/_�_i:+��*�Qg����������o��*��?����8������:tL)=,l��/	�_�v�:���0���������n����J���[[k��y/^+�~�D�=�����a���1{�2��Q�8HAU�L&���%����Ac���J�R��rMa���)����!C>A`��00��������*�/��pqqDLL\�t�T
M��ptl	wwg�<����Jr�Z
���0x���>������0o�
����z������3�vGf�3��g���Iw�Z-�������k
E��#""

������UqE����*ptl�m��������qS��)s{��9���(v��B��&X�v;�M��������w��{S�6HJ���C�4II�j/?|�W��!���ZZr�GX��\9::���}\]��C�V�r�:��;��~��D����:�����?����������+)�����Czz&
��,2r=LL�S`` ##?��I�2����:����3������o*�qw��Y;���x�(.��������wc���055���6��j�n�g�i�X�x2��Fc����u�R�����
���Pg�DDDDD����Teeff��@�DX��I�>�������M �I����2�WW'��Y�����11q.����[��7����n]���S��_e���;�O>+����<H���z]]m@��=1q�B��7��c�2����I=A�;o����<y����o���Y�v������UA��*���?��]�ezz:��2/�W*����		'����Un������=�����{�����)��k�n]������c���1o^x�������7.Q[���&$l���Y�����G�HJ����2X����e�@o���
���M`��O��F�UQ�������sq��=DF���
�� 7799/�����CT�l��YHN���+7+���S*�P(p��qdf>��;�"'�2rr.����8}�<n�N-�D"�����t��HMM�u��FZ�#��s_�r��74�G�~�0v����
�����u�!��?���C��v�l��_��'�������`��2�ODD����6���aeemm9��y��&"��)�Ji������}�>�����uVJ_�(
ZZ�JS�^���z�<,X�
��m���RRn+���mo�����ELL������X����ssS�����X�����i���\T|b4jT�F�m[oXYu��Y�J/$�|T�\XY������-�������@.\������^CC}4ib������w��-4b�������	*�MDD���o��ADD�����(�,��0  M6����w���WFF��[c��������!"�w������'� ������D"�|��/[�x1�� "�IH8{��yTv(DDDDD�*�����=`nn��c�j�������+���VvDD���%R��"""R�����3���������(r�"  �E��X����CDDD�������]���Hl!������>�]]��������������^=��M�����c�tw��B�'N\HI�
���B���#04tx='""""""��T�l��-^����~��{� $d�RzX�0dg_���:$��������v�<|xk�����B���Q���7�����`dg_��Y���OL<��W�+��DDDDDDT$RP�����L
++s��������.�j@.�&M������b���X�p\]�����v�Z`��B�5d��5����T
�\2�T�~ODF�����g��& "bme�ADDU)�J��y���V��E�?}�<^�|�.]:���#�#:z7��3�U���T��9��N00h�{����Rzd�z������0LLj��r>���`n����\�������������X��*e��/q�\,~�=m�4���P�A��`?�;�G���v
�Ns�������Gc�����!
�b		�w�����<�t����=�r�f�����XL��X�OL<U��Q$����d`�ssS���b��1�W���{{;�������������O�����uaddP�Z�n
3��}�\}!""z�
��^�������i�	����2C#"�*��T�������\��gb��hi��%rs����B��\��Z�0n\�������Z�����J�^�z���\���!7799/ ��
=<BB#((5k�����tu����
�����@��/���
�v�R�5j4���+:��^}}]!}��(hi�+Mf������?FF���W�!z�--{���@D�Zhi�c��o���������Y""����o8;;VvDDT��J
�2���,1=!aS��R���������L��+��g66VP(���B&����c%�GDDD���;WvDD���DDDDDDDT%y%��o�����X����CDDD���%R��"""R�����DDDDDDDTE9H�E���v,TMp��\�N��&M������C+;�2���
vUvU�/��ATTte�A���H$��[�����\��k8j�v��U�"���r>�N]\�0�dg���u;A"���������C'���������^IA����H$�J��M����\�--{;vV���hi����K��/�}�>88xB.o���4i!�N.N��]���[��O����.�&N\ �}1�M���A>x��bcP�|E:t�X�'PN���0�����bo���02j
�����G���K[����)6��lb>��<��/�����0L��
:t����	B��#��K����o����:$'���{0Z����K,2��{���+�$C���������P����&h�����*����ry4n�Miyjj���L����1~��|�J�SR��f-C��Jufg�@K��v,����`�"�����=��05m[�`��?���������_���ep����W���������Db�`!l�:��=~�}����N3�AH��~��R�b�/E)m�
��)������$))��������*_AJ�JX�0����0/�H��b������������H�������#��`_jy��� ��b�,x{wEZ�c<����v�\����n/��h��>.�����3,�}�RRnc��A*��*""� 8����zy
����^=�L����B������������$_���?����q�Z
��o���gB���C�����BB�O�~�?�����#�����
�(���;
������S�l�s�N{y�Y����eK,~�i1��m����p������'���HN�����i�J�'N�����q��#����3>/�}o���:u1����:uj�=�D���;��m��8{�O\�|ii���� ��W�~�Wt�������+6b��P��q�b�i\����
�)-���9��=��k���Iz������:u�JqV���/�Y?�z�_""���WRP�"�j@.�&M��B��_�,Y��������W_�]~��H�	?�����>�g�
W�2�N


�vd2���K��;;7��q��O������������������#BCg����Juxz��I��_��s��E{�����]��q788x�i��3g9j�vD``�Pv���h��zz�ab���OFvv������a��	HM};;7���a��J����@\\"�w�Pt��v��5��Z04�G���puuR�W��[Z�����IN��..N�J��7k�:����o��`mm�R�
hhh@"�@"�@����W�^�aA����{y���?~��K�c��Ipuu���6��k��#��NLL������11q���R)45k���%���q��Pj���7B�zuq��������[�����*5.�B�
����!��2G�V�4�c�_�C��@��y�Fi�|������\_l��>������s?�MK��h����
��?�����KY����g��c��/Ir�-�J�?����G���"(h""�VH�DDT}p���5j��z�<���f����-@���	��z�?��7��e�EGG"))���X�j6����q��B��Q������'����8x�,X��P=QQ�;6��Gq��a4j�����g�q�������$$%�c��}x� �`V&�a���x��w�?�����7��4h`���x�_���&HJ�GRR<&N���������K4kV��
C��C���Y�a�z
���AV�����2z�G����X��GO"/OQz,\8	������/��{CS�&&O�>>#����Ju��T�������W���C�������}G���������A�<��cg���Rt���]�(���%������RS���I:�7o�%K�a��h��!.^�*�w�h��1.^����*�-�������*��v-�_��qc[aY����~���-5��)+u�_�[?��~�����z��"-�����-{��ge���}��;8HA�Jd�z����7����M@WW���h����pq�322�P(`bR�R�/���\����GBOO���1z� l���P���?B��m@�66V���	;����-��tP��	��{<���-Q�������oO�9s^�8=z��\]���y#�e�G�nF���0j�4������uO)_y�oen�����g,_��FMC���U@(���5���b��0;v�g/��O7������.MQ�OE+8�+X�_~9��N07wn3(����W9t�����8�
�_�����=ff�P�N��i���n���:���<���\��O�.�b+8)�����]p��q�����d��P
��?U�li������k�lS�\VV�mKZZra���
�?�Vk�e!v�R���Oy�_U��EIMM����a�����Y�:����K�y��lP����z������T�����=����S����j��l`ff���T\���M �I��Q���=?A��*�Y��=������XX�	o�����:
n3����e�R���p��GO�[�@���
gDF�W�rc00������O,�dnn�����v��_O@^����Jy��~��}����N��-��4i$j�2@�>�J/(�����k8�^M�������.F�����	U�$�4u��?NL�<k�����=��811qpuuB��5���-��-]M�q��8{�g�����u1� ����N�>���Dt��
ff��b�����`���M�����������9&z*�#$$�}�#���D�����G��E�K$Q����������E���n����������8�)_�@DB�&|��LQ�X�r�0��)S����T�������jEOOVV��dll(����q���`���3gy�o��+/�J��`���E�����D���<_�z
]]��_��F����{�������f������B���xx|���>HJ:���D�3�����F����
 �j����U������1|������]�e�>�������Cp���\���u3����q����xii���o����-�,Y��� IDATW��+�������}}]�.���k���������@.o�;w��06���u-0kV(��M1w����������
���qqG����������V-\������T�-.p��u��Z���uSXX�a��#��4h`�T����!,�r%?��5k�����KqT�����S��W���`]��OB��Ax�����K3p��0����&���J�����;��j%7799/�& �[���pL�6
����AA~>�+Q��������`��]���Br�-�\�@�	H�V������GOq��=l���p�zy�//�T
���7o23�����X��'��y�^X���s�����������c�������Sii��}���\\�p��q�c=�k�;w	��9���;X�|��i�7/OQ(]��YOY�uX�d��o	�G�G��� �k�/���^�z
 �!�E]�����0|�d�eo�fg�@_?�[v==���W�^#'����������*�"f�^����b��e�q��6������\�|]t����#3����99���s�����q�vj���������?"55Mt���]{G��*�y�x��o� 55
.\�O?�������(p��q����r9U>�������?�����A��]0s�w�w�.]J���?" �G�K��G�����Ky�Oy�_��wSS#������k��&���-���E����J�7~SY�~uu���]mm9��yU^LDD�RP��hQ����& �6==����f�
������.�<�������a��U05m����r[H������Q��3Z�����5/V>,k���|��AGG����]����K��WK����X�l��G�S���B�5��Q����7��:b��e���;��mW9�/^��g$
���=�^=O)Oi�w������;+�|i�Gy�x�={���L��[����-�B���@K����!77ZZ��]��P=�����q��>}����#4k���; 4t�w�a���G|�	DD����=�L�F�~DG�{T3g~������#����X������2(&&nn��n�puu���)v��_dwwg4m�s�,�~������`iY���P�d��p88��A�.pu��#���Qx�<���a�h�_Q��������UJQQsall;�.���/z�r+����������wi������l�����D"��Us:���������
���_��������\x����������������
HBBBK��SZ
�&VIa�������K��/�7�����'��_�>���CQYFF��[c���������r22�P�������;����Ry?��������������8o�
��y�����B��������Q�r�d�r����7_y_����C����������U��|5m�u�ZVve��p�j����������gK�X���K�r (�
��\?����KDDoK����=`nn��c�j������j}������W�V/�����,u�>}I�iff�5*�-FSy�_��x�<~ ""��A
����CDU����J�DD���DD���DDDDDDDTE9H�E���v,TMp���6C�N������sC��� �������_�����?��Iw:��sh�����~��{�4�-�������*������ae���{7�����^IA�Djj$[H$������3�����/�����ry4n��P���B�����7n��g��Z���%:v����'�tW�����8��?%�6$[xx�bc����A���)���f06n���x�:��9�P���Ci��������ryXX���I���7U�A��w�����V�8II���������/��i4�O��Cl�*���sCB�I|�����!,ON�w�`�n�K���ryUT�����U�����S^^f�^�z�\ �7A�����U�����b�?����Y������"��s��e�]����_c�h��@������^s�����������UX�~�J}V��C���""zw��T��8{���ex{����6f��\H��'���HN�����i�B���Q���E����e�&�;wd��D������	W��L&����A�Pn?,lf��B��H$*���xW�&�a�z��F���{�����x�$={~
SScL�:;w�@nn����F��c��� ������u��aX�b���"-�1�E��{:ujS���|RRnc��Aj�s��9?~����6���h��F�m����m��,������c��X���b�m��/'���*�S��(��CI�{{w����q��}��Sp��)H$t��YTl'.�������HK{�n��^������*�����}�+)�Z�J����	G��pww���(�������+\\��V��r�&444 �J!�kB&�=z���a��@������>z�t��������\�)L��5U�������-��z��;�c��������M`��@���������8
�PR�`��H�	?�����>�g�
Tk�J���S��?ff�`e�������K�<��C1i�B���z�\`a���';v����j�jU���7o��G@_�:v����+�+�|��� ,l.�u����u��'�B���[���;������
�����������@[�)23�	�~��tt�!+��Z�����X�I��>}	��F�YY�2���af����J�������?vvn�q�&��;;7�E	5���wp+�7����k�}F�m?O�����3�����Qk�o�w��WK�@���<J�?=~�K���������]]m�k�#GP�����@��Jk�y�F�W�.��PW\�Qt����Z���P(�a�:VV�h���}���w�����v-vvn<xRS���
vvn�7o�[i�MAA����KDD�RP����#;vNN-�e��9���(�w�=z8y[##4lX���q��/������������������~����m�e�������ni)��������psk_��J3th?��Q�6�Q��!3��_O��S;q��/X�`U�|QQ�;6��Gq��a4j����o$%�c��O�lw���������1���!������#��k�
���!�|�J��^&�a���x��w�?�����7���NJ��Ec��}��;�6n����BWW�����������p����q�(��36Gt��>���H$%�����V�FRR<6n�V�����F���K��3&PX�p�$���NN����
M���<����@R�������g�������7AZ�iDDL�\�Y��W��gE:}�<^�|�.]:��U����� �}o����K�����-�u���ix�$��7��%��s�4k�/^���i��II�X�~!��M�����xL�8�P^+�����`���z� U+��A03k�:u:`�/L�6VH��?�[�N�������_���7E�+�Hp��f4lX�FM��qk�����[���EF���Ia
S)~33cxzv��5���ge�c��%�ikkA�P���l��(JFF&
LLj�����WW'4o�HiYnn.v�����#���K��=z�m�[�|���s�� �-�����x
�'��\�	G����pQ9�~�<���
�T�������$!m�`_8:�D�2XZ�F��=q��y��(N@�6m�@��������V�OO������x�d��AWW_}5
[��|����[}����������k'a���5���b��0;v�g/��O7���Zi[,��:hhH��I:�^M�D"A���`ll�Ro�E�}V��A�����_���������DJ#f�^��1�{{w��C���������k�R���ETl��������>}}�
�.;;��kQ�a�{��T�l��-�����#�n]��A`LL\]�P�f
4nlkkK���077ED�T\�v��' /O���p�<��~8wn�0}��������yyy�2��o���t;;;�D�����]�2��=-1�:�W����x�:Wi������=(������/����LX���b�	���!S�<�=�n�Q��+ll�����*�1`������p��)�z����V����;�O>�����q�n0�sH��N�T�|+�����k8�^M�������.F�����	j�#<|>��#�����4h��NR�B���Ns�����OM�<k�����=��8b�����~��������Z���XTlW;ef>C|�&|��tddd	�����M����j�s�����vtt,�LY,�'&�Rk[DDT=p���c�Z�[��f����s�~ �����#��?ry��Mp��}�)�dee����q��%��zz:��2&U�)��������w�5h`�T����!,�r�:lm�Q�f�2��MR��HH8Qb>u��(��F����{��{���{��	o>GC��z��K{������,;;�"(���� %%c�*t�U�Y���QK������Sl��7������:������������Y[[�?��r� �\9��W�����N�T�|+B������Bb�i��=�o��F���X�d�[�AOOL��K�q��~�9�'V������B�������Z�	���.��D��/�����e2)z�r����E\�Qx{~CTq��MQ��.\�����{6]�:hhh��Q�����m/���0a�0���PzDD��� UK�������?"55
�Gf�3���+rr.#'�2X�������T��99/������\���^�	�G�s�.!;;�}��o��cK�vss����Bi*�������?����z����3���{p�R�.�Q�r��������!*j6l����,$'�����'Q����I�R��t��y+���w����e?������"��mggG���/_����_��}G�R7<����h��444����7�.������F8r�x��	����;��������mq�����J��04�G�~�0v���}��@r�-l��GT�������������_������?�#..���@�P@KK�D�teNy��������g��G�Z7.aasq��o�������E�����?�m���+bc����_E?�����o|�������������<�Wt���������G%>��">_]]ma`[[[=a^�_&"����Tm��;�i��3g9bb����^��\WW'���b�������AK���'�ZZ��2�!��/��3��pr����V������EQ���W�������U
QQsall;�.���/z�r�W_�]gi����
�W����`j�:�!%�v���(���tt�Q�����]�t@x�p��;w�66������-���qF�=���~�))�aj�c�N��O7hhh�._ccC,[6��#��S_����S�|��V�Ah�l��6��_��?�����Waff�4@���'L���;h���~�V�lT�\XY������-�����;�c/���.}�����Gh��;w@h���[�����w� �D�=��['�G-m����W ::{�&��N�9�~��FD�Z�^=O��Sb������������?������|MtI�����=4�W��1b@�^?Z����Q}���m�ae��f-Sk�b������c��ODD��$$$D�d�8���pph���a�������`��0��Xa���+;�wBFF��[c����+n�}������]`dd�>}�1w���������_���6��/�P��^�U����Q�r�d�r����7_�^����CV���
��vr�&���p��M�������*;,�wFB�	88����t�5���x��l��o�^���7U����KDDUE����=`nn��c�j��UEw�����_�����U��g��}�V��;���+���?�A]�O_Rl���1F�
x��T��^�������DDs�QY��v>8����������")B�h������CDDD���|)U��i�Hl!��B&kk��?~^�|%�qu �)�ll���C�L'.����Hlq���B}?��VVE���r�-<<�����G`h� ���/-> ����?��6JK'"""""�h|�U+'N�����q��#���������a�9�a^"�v�\���\���p4jTN�d2de=SK����q�j26�W����<QU�+)�Z�J����	G��pww����+]r��0ij���!�ihh(����jk�����������'""�,AA���� "�*��T-=x������S�*��������e��������#<=�VZ�DDDDDT}q���w� ���C�:0`��M���&&m�)00���offO�.X�f[��/oyu���A����>U_��je��oq����u�b���\)=8�����o��"�^
���T����� $$�}�#���D����b�S���M����j�������+7_DG�b����|b������� RP�bl\u�Z`��P���b�������t`ee.L���������D"An�?�^�����J�@��Maaa�������E���4p������WWL�0L�wr��+""z�p���%�D����a�����&,���CN��I�L�V���G�����{����b�yQ\�BBc�����sE�_^��P�
��t�={,XU���������-|1��-����0_��j""�7q���-wwg4m�s�,�-Z--{�I���H�����9�U+O��Zc���*�_���]�UE)�����m�[��������N,��M(s�DD�~���
gg������8Ye@����P(�Z~��N����M����+��h
�`�������f�L&��[�D�66V��/)>��a16lX\�t�����+��iS���������;WvDD���D$ZB�	88������C!""""�j��+)|}{����m�B�������+���VvDDT
������)�������DD�v"""""""�"����EQo;�&����x�@DD���*��u$[���&�I�))�!����#X�{��J��-��[���?��O��~Q�p������a���$L�uH)=1�4�^M.������q���o�8tH�k>�������rq����Tr��0ij�TJ���Dd��b��dRX[[b�� �1��_Y�!�AA���� "�*���N1�?��w#==�����-p���B���:��shE�GDDDDDD��A
�R"#�����0�)���������Vj]��zHO��B�PZngg��u-�7���� zSp�&M�L�������}G��o��XWff� �H��'$lRO�DDDT��+7c��E������=�f}���{8;;VfxDDTq���==XY����u����0���GJ�w��h���:�#"""��^�������i�	����2C#"�*��T����!'���2�\�P����

G��5���~��[��a����a~�yU���g/C�5>\���]]m��j���00�+��""z���T�,Z--{��(���066,��ys��w�����s�
t���P���X�������������y{��WRP�Q��"ll��P\�e2)n�:Vlzq22�p��ul�Q�`���H%�����x%�WN���~~�
�K�WR���������������xyu��W��������*?��S� QYq�!"""U�������ADDDDDDDUD���X�(�m�B��"""R�����DDDDDDDTEp����������RQ��A
"""""""�8HADDDDDDDU)��������J� U	� """"""�*��DDDDDDDT%p����������RQ� +j��o.�JN�IDAT�����X����CD����GUY�{�l7*r����0������d\�x�pI�5��[RG�ij��N���:zL����I��u2/eb�����\�jH �EL��>�����������Z����<��������=����&p��~@kq��X��D�M�)S2��K��������W_�z�y��������"4�]����H�,���{������o�2@+t�&���l�@+���11�5s�R��?���5i�"UW_����8[������W�a
�Uv�aIRyy����PH� ��UF�J]�Zg��d�~���
�����x���������
��r���4-^�J�FMST�p�5�.���8�����g�:~�]��7h��5s6m�������t������%I�;����*?�����>8�^�h��?��[����

���RO>��-��<Fyy�z���f����������TWW�
���3�WQQ��>�L����{����{�*''G���s]��HO'/�n2�5+U�����7Rqq1�$__o����X,����e�~i�7o�23w��N����������22QV��V�7qb����d4��'�n�d@��V����������G������������K=zT'N���j����Ip���JK��(I���8�]�P�����P�XXX���K������mWU�8,	i����m�sg}���s�s���K]�|Y}�������F�$�`0���Sw�}����t��	[�������m���(��`7�����g2�������Xqq�]S��������kW�nQUU�������X�:5�zPQQ����$��&��on����TUU��k�Pr����F���Fk��
���UQQ��������y��_;t��9�����|]ii���-(**RDDD�
������P��]{��?A����f���\c���V�Z�t���������w�a����RR�j��9vsRR��8[���=�_�������KSa�y]�X���F�����w�Qn���
�&UUU���tj��hTI��U.oR���5k�j6�s����L�@m��r�����KR��?th[��}?���O�8�^}}�:w�������Z��r���"]�����V���)[���7�|�"9y�z�0��:�Q�~@kq��ZhR����wn�t7{��;����M4���2%C/����kqG���~�������������Wi����P���~����� ���{t�<�VS�&����6������o����hR4���B��?�����l�j�3���11�5s�R��?���5i�"UW_����8[������W�a
�Uv�aIRyy����PH� ��UF�J]�Zg����Ul�����]w
�{,�F�qqiZ�x�F������5j�.^���~x��������������k�������**j�4�����H#GNQ��}5th�&MZ�����g;����yC�������X��a��M[�`�4�9��N��P���$Is�>���Z����#;�����myG��j����d��*+;�'v*"�l��(_����Do��A���>���k����b[�����lED��q�J��e����-��<Fyy�z���&�}��'aVi�Q�]�k������G���&Ez�8yyu��`��Y�����0g�������$��z�l��bQV�-[�K���yS������q���$h�����0�d
TZ����T�$M��(oo/�F������<��wII�<����'O��<����d��	\��

�n�_����Z�vs"#�q��p�B

����������������q���$??_�v�����+N�Y��=��b�~���M��������d
��`����at�3���aTQQ�m���Taa����=������&��L����q��/\w��M���&��on����TUU��k�Pr����F���Fk��
���UQQ���������G����]��������+�}���o���`������W]]��?���?j�c���I����f�g�x��!Z�j������V��^��{�
zH#F���K��������z�T�>	:}�����*..M={�k��-��u�z��W�����7�����2�b�`��JJ�N�\�O@�������5k�j6�s����L�@m��r��OH��)o���6���}��&���e;��}f}�����>}���L-��k���.��g_����_�]���������c��O�VQQ�����jk/+ �O+W.Vl���.��q����� ����99��R1?t��#��8���hw7{��;����M4���2%C/����k����������������.������}�Hw��yy������]h������M�����9s���V����4i���/��IL����_������0���*;��$���R��O($d����*#c��^������6�{�X���Qp�@���������������� ������<6�����8v�s�����W��
Z�b���M��h��i:s�#�:����{I���}F55���?�#Gv����6��<<<����WE�q������h���l��Gs5~�cZ��Q����;av�)����M���q���&���Y�R����a��q##I�����*�����=Z�����y��*3s�-o��d
�O�;{�lUj������7n����M�0VF�L�JK{���nW�0((��m����j��`0��##�q��p�B

���������������w�[���566������g����:���>%�\�$Eaa�u��e2�5($�����g2�������Xqq���B$I�|sE		�4c�������5�TY�����{�R~~A��u��Y�d�4�������&��on����TUU��k�Pr����F���Fk��
���UQQ�������I���Wt��U
�W�:u��z��w��������KYY{��`Qyy��o�c7�d
�����?q�	�py�"5�%$�T���2�C�j��s����������0
��F��OK���tm���u�i���t����6�I
6�.��~��c�V��������'A�O���c0�q����X)�>���~�'
n���I��O���y������63��u����|�|r��OH���a-�IJ���Q-�m��OR��&��HN�=Lm]:��Z�?��7#'��[*��^?����@b�p4)�[�I�M
��lR���Dk������������@�I
�&hR�`kR���[
������e�V��������~���2"e0Dj��w�!�;3��C�8q���om�������p�B�����.]����jIRF�J����H�<�&I2���k���n�����q���v����b����,���9���By|�/��xI���<�������vB�a�������<�|��q
		j�Z�Ap����� 5��;6���@��Z�����=���I�M
�hR�@����-��n�&p4)�[�I�M
�hR�@����-��n�&p�]���`�tj����+�}��h#7j@8����b�p4)�[h�&��}+<|h[��bc'������]�k�r�x����������4p����������]�]�"&f�f�\�������&MZ���K�xyy����PH� ��UF�J]�Zg�_�X����e2�(0��������.�$���g5\��/���e������Z�z�-���H#GNQ��}5th�&MZ�������8[������W�a
�Uv�aI��K��p�s���SH� ���T55�N������Ptt/u���O?��&.��u�c�>����������h��5z���H���}F�����@55�4f������/Iz��WU]}I���Kg=�+O�����������o���1c������:�I��}��{�5��~���'+=�q9��M[����(..F55�����H�3�)�������U�n��6�I-^��^ye�
���C�r��8[W�����Q���U]}I;w����g*;�/N�4�a�Gz�8yyu��`��Y����-I�X,����e�~)__o����7o�23w}��N]�X�S���`0(6v�����*���L��O���gW
�O		���;n�H���H��������������(/=��\m��\}������6�;x����bTYyB#G��m��c��WfUW������

�n�_����Z��p�B

����xXX���Km/]���^�Sz�"k��Q����w��x���o�c6�����]�|�and�=c_}��$)-m��$���QFc']�tY>>^-�7y�x=���&k3�%I

}��1���Tf�.
{���qx��������2�e0d2���������P\\�����
���z��e:yr���b�rr�����?`�N�Z�v?��������<<�cfI����_~�/��@�N}���c�&IK�m��C��;������>T���U[{Y������i������UTT6Y'p�C���7����s������o(9y�$�h4*)i�V�����Z�h���JII����sP���YY�Vu��)�� ??_���uW�.\(wxaehh����������^������9}"���5q��Z��9����j����s���=���<y�N����o���*,�D�=��+����u�����:�o
tnIh�C�"5�%$�T���2�C�j�[l������K�{��Ai����t�[</�����!?�~����u��O�`������;w�bb�+<|�~��u����kt�l�L�-X����F�S'����i�*�����!����������g�v����}��gx��o_��}���$h��Ot��?v�}��.���OOH��	����i��	7Hk��/V���z��E�]�-1"e����~^|q����e�X�~���c�Eg��Qaa�����������y������u��/|���������D���F������++6v@{���]�"'����C���8B��#�����`�l�pkn�$EG��&�1�z'�s��n�&p4)�[�I�M
�hR�@����`��juz��`�D��X���U__��|OOOI4)���������N�mll��d�D����lVAA�[�g0TZZ���(I4)�����)88X�N�j�QQQQ!�����`I4)�m����D������Uee�,��k�;�\��������_�~���*t\�A?���lK?��;���:u��UAAA2d����l_��$�����&�m��"��.�N]�IEND�B`�
#11Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Pavel Stehule (#10)
3 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

Hi.
Please review the new patch.

PS
Issues which were described by Tom and Pavel were relevant to single-line
headers.
So I've added appropriate regression tests to the patch.

I've also attached complex regression tests for unicode linestyle and
multibyte symbols.

2014-05-14 10:55 GMT+04:00 Pavel Stehule <pavel.stehule@gmail.com>:

sorry

there is still small issue

I have a plpgsql function:

CREATE OR REPLACE FUNCTION public.foo_update_trg()
RETURNS trigger
LANGUAGE plpgsql
AS $function$
DECLARE t text;
BEGIN
EXECUTE format('SELECT $1.%I', TG_ARGV[0]) INTO t USING old;
RAISE NOTICE 'original value of "%" is "%"', TG_ARGV[0], t;
RETURN NULL;
END;
$function$

Default expanded view of select * from pg_proc where proname =
'foo_update_trg'; is little bit broken (screenshoot 1)

After wrap mode, it add useless new line into source code (screenshoot 2)

but border2 fixes it (screenshots 3)

Regards

Pavel

2014-05-14 8:32 GMT+02:00 Pavel Stehule <pavel.stehule@gmail.com>:

Hello

With this patch it works perfect

Thank you

Regards

Pavel

2014-05-13 21:33 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Please check this patch.

2014-05-12 22:56 GMT+04:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>
:

Hi.

I'll try to fix it tomorrow.

2014-05-12 18:42 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e. the

periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but in
expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though.

And

if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Best regards,
Sergey Muraviov

--
Best regards,
Sergey MuraviovH

--
Best regards,
Sergey Muraviov

Attachments:

psql-wrapped-expanded-fix-v3.patchtext/x-patch; charset=US-ASCII; name=psql-wrapped-expanded-fix-v3.patchDownload
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 62850d8..140b0e5 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -1258,45 +1258,74 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 	if (cont->opt->format == PRINT_WRAPPED)
 	{
 		/*
-		 * Calculate the available width to wrap the columns to after
-		 * subtracting the maximum header width and separators. At a minimum
-		 * enough to print "[ RECORD N ]"
+		 * Separators width
 		 */
 		unsigned int width,
+					min_width,
 					swidth;
 
 		if (opt_border == 0)
-			swidth = 1;			/* "header data" */
+		{
+			/*
+			 * For border = 0, one space in the middle.
+			 */
+			swidth = 1;
+			if ((hheight > 1) &&
+				(dheight > 1) &&
+				(format != &pg_asciiformat_old))
+				swidth++;
+		}
 		else if (opt_border == 1)
-			swidth = 3;			/* "header | data" */
-		else
-			swidth = 7;			/* "| header | data |" */
-
-		/* Wrap to maximum width */
-		width = dwidth + swidth + hwidth;
-		if ((output_columns > 0) && (width > output_columns))
 		{
-			dwidth = output_columns - hwidth - swidth;
-			width = output_columns;
+			/*
+			 * For border = 1, one for the pipe (|) in the middle
+			 * between the two spaces.
+			 */
+			swidth = 3;
 		}
+		else
+			/*
+			 * For border = 2, two more for the pipes (|) at the begging and
+			 * at the end of the lines.
+			 */
+			swidth = 7;
 
-		/* Wrap to minimum width */
+		min_width = hwidth + swidth + 3;
+
+		/* 
+		 * Record header width
+		 */
 		if (!opt_tuples_only)
 		{
-			int			delta = 1 + log10(cont->nrows) - width;
-
+			/* 
+			 * Record number
+			 */
+			unsigned int rwidth = 1 + log10(cont->nrows);
 			if (opt_border == 0)
-				delta += 6;		/* "* RECORD " */
+				rwidth += 9;	/* "* RECORD " */
 			else if (opt_border == 1)
-				delta += 10;	/* "-[ RECORD  ]" */
+				rwidth += 12;	/* "-[ RECORD  ]" */
 			else
-				delta += 15;	/* "+-[ RECORD  ]-+" */
+				rwidth += 15;	/* "+-[ RECORD  ]-+" */
 
-			if (delta > 0)
-				dwidth += delta;
+			if (rwidth > min_width)
+				min_width = rwidth;
 		}
-		else if (dwidth < 3)
-			dwidth = 3;
+
+		/* Wrap to minimum width */
+		width = hwidth + swidth + dwidth;
+		if ((width < min_width) || (output_columns < min_width))
+			dwidth = min_width - hwidth - swidth;
+		else if (output_columns > 0)
+			/*
+			 * Wrap to maximum width
+			 */
+			dwidth = output_columns - hwidth - swidth;
+
+		if ((dheight > 1) &&
+			(opt_border < 2) &&
+			(format != &pg_asciiformat_old))
+			dwidth--;  /* for wrapping indicator */
 	}
 
 	/* print records */
@@ -1356,33 +1385,71 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			{
 				int			swidth,
 							twidth = hwidth + 1;
+				/*
+				 * Left spacer or new line indicator
+				 */
+				if (((hheight > 1) && 
+					(format == &pg_asciiformat_old)) ||
+					(opt_border == 2))
+					fputs(hline ? format->header_nl_left : " ", fout);
 
-				fputs(hline ? format->header_nl_left : " ", fout);
+				/*
+				 * Header text
+				 */
 				strlen_max_width(hlineptr[hline].ptr, &twidth,
 								 encoding);
 				fprintf(fout, "%-s", hlineptr[hline].ptr);
 
+				/*
+				 * Spacer
+				 */
 				swidth = hwidth - twidth;
 				if (swidth > 0) /* spacer */
 					fprintf(fout, "%*s", swidth, " ");
 
+				/* 
+				 * New line indicator or separator's space
+				 */
 				if (hlineptr[hline + 1].ptr)
 				{
 					/* More lines after this one due to a newline */
-					fputs(format->header_nl_right, fout);
+					if ((opt_border > 0) ||
+						(format != &pg_asciiformat_old))
+						fputs(format->header_nl_right, fout);
 					hline++;
 				}
 				else
 				{
 					/* This was the last line of the header */
-					fputs(" ", fout);
+					if (opt_border > 0)
+						fputs(" ", fout);
+					else if ((format != &pg_asciiformat_old) &&
+							 (hheight > 1) &&
+							 (dheight > 1))
+						fputs(" ", fout);
 					hcomplete = 1;
 				}
 			}
 			else
 			{
-				/* Header exhausted but more data for column */
-				fprintf(fout, "%*s", hwidth + 2, "");
+				unsigned int ewidth = hwidth;
+				if (opt_border == 0)
+				{
+					if ((hheight > 1) &&
+						(dheight > 1))
+					ewidth++;
+				}
+				else if (opt_border == 1)
+				{
+					ewidth++;
+					if ((format == &pg_asciiformat_old) &&
+						(hheight > 1) &&
+						(dheight > 1))
+						ewidth++;
+				}
+				else
+					ewidth += 2;
+				fprintf(fout, "%*s", ewidth, " ");
 			}
 
 			/* Separator */
@@ -1397,17 +1464,25 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				else
 					fputs(format->midvrule_blank, fout);
 			}
+			else if (format == &pg_asciiformat_old)
+				fputs(format->midvrule_blank, fout);
 
 			/* Data */
 			if (!dcomplete)
 			{
-				int			target_width,
+				int			target_width = dwidth,
 							bytes_to_output,
 							swidth;
+				/*
+				 * Left spacer on new line indicator
+				 */
+				if ((dheight > 1) && (format != &pg_asciiformat_old))
+				{
+					fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
+				}
+				else if (opt_border > 0)
+					fputs(" ", fout);
 
-				fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
-
-				target_width = dwidth;
 				bytes_to_output = strlen_max_width(dlineptr[dline].ptr + offset,
 												   &target_width, encoding);
 				fputnbytes(fout, (char *) (dlineptr[dline].ptr + offset),
@@ -1419,17 +1494,21 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				/* spacer */
 				swidth = dwidth - target_width;
 				if (swidth > 0)
-					fprintf(fout, "%*s", swidth, "");
+					fprintf(fout, "%*s", swidth, " ");
 
 				if (chars_to_output)
 				{
 					/* continuing a wrapped column */
-					fputs(format->wrap_right, fout);
+					if ((format != &pg_asciiformat_old) ||
+						(opt_border == 2))
+						fputs(format->wrap_right, fout);
 				}
 				else if (dlineptr[dline + 1].ptr)
 				{
 					/* reached a newline in the column */
-					fputs(format->nl_right, fout);
+					if ((format != &pg_asciiformat_old) ||
+						(opt_border == 2))
+						fputs(format->nl_right, fout);
 					dline++;
 					offset = 0;
 					chars_to_output = dlineptr[dline].width;
@@ -1437,7 +1516,8 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				else
 				{
 					/* reached the end of the cell */
-					fputs(" ", fout);
+					if (opt_border == 2)
+						fputs(" ", fout);
 					dcomplete = 1;
 				}
 
diff --git a/src/test/regress/expected/psql.out b/src/test/regress/expected/psql.out
index c7dbd54..55cd215 100644
--- a/src/test/regress/expected/psql.out
+++ b/src/test/regress/expected/psql.out
@@ -306,59 +306,60 @@ yy
 \pset format aligned
 execute q;
 * Record 1           
- a+ xx                   
-  +
- b 
- a+ yyyyyyyyyyyyyyyyyy   
- b 
+a+ xx                  
+ +
+b 
+a+ yyyyyyyyyyyyyyyyyy  
+b 
 * Record 2           
- a+ xxxx                +
-  + xxxxxx              +
- b  xxxxxxxx            +
-    xxxxxxxxxx          +
-    xxxxxxxxxxxx        +
-    xxxxxxxxxxxxxx      +
-    xxxxxxxxxxxxxxxx    +
-    xxxxxxxxxxxxxxxxxx  +
-    xxxxxxxxxxxxxxxxxxxx 
- a+ yyyyyyyyyyyyyyyy    +
- b  yyyyyyyyyyyyyy      +
-    yyyyyyyyyyyy        +
-    yyyyyyyyyy          +
-    yyyyyyyy            +
-    yyyyyy              +
-    yyyy                +
-    yy                  +
-                         
+a+ xxxx                +
+ + xxxxxx              +
+b  xxxxxxxx            +
+   xxxxxxxxxx          +
+   xxxxxxxxxxxx        +
+   xxxxxxxxxxxxxx      +
+   xxxxxxxxxxxxxxxx    +
+   xxxxxxxxxxxxxxxxxx  +
+   xxxxxxxxxxxxxxxxxxxx
+a+ yyyyyyyyyyyyyyyy    +
+b  yyyyyyyyyyyyyy      +
+   yyyyyyyyyyyy        +
+   yyyyyyyyyy          +
+   yyyyyyyy            +
+   yyyyyy              +
+   yyyy                +
+   yy                  +
+                       
 
 \pset format wrapped
 execute q;
-* Record 1         
- a+ xx                 
-  +
- b 
- a+ yyyyyyyyyyyyyyyyyy 
- b 
-* Record 2         
- a+ xxxx              +
-  + xxxxxx            +
- b  xxxxxxxx          +
-    xxxxxxxxxx        +
-    xxxxxxxxxxxx      +
-    xxxxxxxxxxxxxx    +
-    xxxxxxxxxxxxxxxx  +
-    xxxxxxxxxxxxxxxxxx+
-    xxxxxxxxxxxxxxxxxx.
-   .xx                 
- a+ yyyyyyyyyyyyyyyy  +
- b  yyyyyyyyyyyyyy    +
-    yyyyyyyyyyyy      +
-    yyyyyyyyyy        +
-    yyyyyyyy          +
-    yyyyyy            +
-    yyyy              +
-    yy                +
-                       
+* Record 1       
+a+ xx              
+ +
+b 
+a+ yyyyyyyyyyyyyyyy.
+b .yy              
+* Record 2       
+a+ xxxx            +
+ + xxxxxx          +
+b  xxxxxxxx        +
+   xxxxxxxxxx      +
+   xxxxxxxxxxxx    +
+   xxxxxxxxxxxxxx  +
+   xxxxxxxxxxxxxxxx+
+   xxxxxxxxxxxxxxxx.
+  .xx              +
+   xxxxxxxxxxxxxxxx.
+  .xxxx            
+a+ yyyyyyyyyyyyyyyy+
+b  yyyyyyyyyyyyyy  +
+   yyyyyyyyyyyy    +
+   yyyyyyyyyy      +
+   yyyyyyyy        +
+   yyyyyy          +
+   yyyy            +
+   yy              +
+                   
 
 \pset border 1
 \pset format unaligned
@@ -393,60 +394,62 @@ yy
 \pset format aligned
 execute q;
 -[ RECORD 1 ]-----------
- a+| xx                   
-  +|
- b |
- a+| yyyyyyyyyyyyyyyyyy   
- b |
+a+| xx                  
+ +|
+b |
+a+| yyyyyyyyyyyyyyyyyy  
+b |
 -[ RECORD 2 ]-----------
- a+| xxxx                +
-  +| xxxxxx              +
- b | xxxxxxxx            +
-   | xxxxxxxxxx          +
-   | xxxxxxxxxxxx        +
-   | xxxxxxxxxxxxxx      +
-   | xxxxxxxxxxxxxxxx    +
-   | xxxxxxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxxxxxx 
- a+| yyyyyyyyyyyyyyyy    +
- b | yyyyyyyyyyyyyy      +
-   | yyyyyyyyyyyy        +
-   | yyyyyyyyyy          +
-   | yyyyyyyy            +
-   | yyyyyy              +
-   | yyyy                +
-   | yy                  +
-   |                      
+a+| xxxx                +
+ +| xxxxxx              +
+b | xxxxxxxx            +
+  | xxxxxxxxxx          +
+  | xxxxxxxxxxxx        +
+  | xxxxxxxxxxxxxx      +
+  | xxxxxxxxxxxxxxxx    +
+  | xxxxxxxxxxxxxxxxxx  +
+  | xxxxxxxxxxxxxxxxxxxx
+a+| yyyyyyyyyyyyyyyy    +
+b | yyyyyyyyyyyyyy      +
+  | yyyyyyyyyyyy        +
+  | yyyyyyyyyy          +
+  | yyyyyyyy            +
+  | yyyyyy              +
+  | yyyy                +
+  | yy                  +
+  |                     
 
 \pset format wrapped
 execute q;
--[ RECORD 1 ]-------
- a+| xx               
-  +|
- b |
- a+| yyyyyyyyyyyyyyyy.
- b |.yy               
--[ RECORD 2 ]-------
- a+| xxxx            +
-  +| xxxxxx          +
- b | xxxxxxxx        +
-   | xxxxxxxxxx      +
-   | xxxxxxxxxxxx    +
-   | xxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxx+
-   | xxxxxxxxxxxxxxxx.
-   |.xx              +
-   | xxxxxxxxxxxxxxxx.
-   |.xxxx             
- a+| yyyyyyyyyyyyyyyy+
- b | yyyyyyyyyyyyyy  +
-   | yyyyyyyyyyyy    +
-   | yyyyyyyyyy      +
-   | yyyyyyyy        +
-   | yyyyyy          +
-   | yyyy            +
-   | yy              +
-   |                  
+-[ RECORD 1 ]------
+a+| xx             
+ +|
+b |
+a+| yyyyyyyyyyyyyyy.
+b |.yyy            
+-[ RECORD 2 ]------
+a+| xxxx           +
+ +| xxxxxx         +
+b | xxxxxxxx       +
+  | xxxxxxxxxx     +
+  | xxxxxxxxxxxx   +
+  | xxxxxxxxxxxxxx +
+  | xxxxxxxxxxxxxxx.
+  |.x              +
+  | xxxxxxxxxxxxxxx.
+  |.xxx            +
+  | xxxxxxxxxxxxxxx.
+  |.xxxxx          
+a+| yyyyyyyyyyyyyyy.
+b |.y              +
+  | yyyyyyyyyyyyyy +
+  | yyyyyyyyyyyy   +
+  | yyyyyyyyyy     +
+  | yyyyyyyy       +
+  | yyyyyy         +
+  | yyyy           +
+  | yy             +
+  |                
 
 \pset border 2
 \pset format unaligned
@@ -775,59 +778,59 @@ yy
 \pset format aligned
 execute q;
 * Record 1           
- a  xx                   
+ a xx                  
 +  
 +b 
- a  yyyyyyyyyyyyyyyyyy   
+ a yyyyyyyyyyyyyyyyyy  
 +b 
 * Record 2           
- a  xxxx                 
-+   xxxxxx               
-+b  xxxxxxxx             
-    xxxxxxxxxx           
-    xxxxxxxxxxxx         
-    xxxxxxxxxxxxxx       
-    xxxxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxxxx 
- a  yyyyyyyyyyyyyyyy     
-+b  yyyyyyyyyyyyyy       
-    yyyyyyyyyyyy         
-    yyyyyyyyyy           
-    yyyyyyyy             
-    yyyyyy               
-    yyyy                 
-    yy                   
-                         
+ a xxxx                
++  xxxxxx              
++b xxxxxxxx            
+   xxxxxxxxxx          
+   xxxxxxxxxxxx        
+   xxxxxxxxxxxxxx      
+   xxxxxxxxxxxxxxxx    
+   xxxxxxxxxxxxxxxxxx  
+   xxxxxxxxxxxxxxxxxxxx
+ a yyyyyyyyyyyyyyyy    
++b yyyyyyyyyyyyyy      
+   yyyyyyyyyyyy        
+   yyyyyyyyyy          
+   yyyyyyyy            
+   yyyyyy              
+   yyyy                
+   yy                  
+                       
 
 \pset format wrapped
 execute q;
 * Record 1         
- a  xx                 
+ a xx                
 +  
 +b 
- a  yyyyyyyyyyyyyyyyyy 
+ a yyyyyyyyyyyyyyyyyy
 +b 
 * Record 2         
- a  xxxx               
-+   xxxxxx             
-+b  xxxxxxxx           
-    xxxxxxxxxx         
-    xxxxxxxxxxxx       
-    xxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxx 
-    xxxxxxxxxxxxxxxxxx 
-    xx                 
- a  yyyyyyyyyyyyyyyy   
-+b  yyyyyyyyyyyyyy     
-    yyyyyyyyyyyy       
-    yyyyyyyyyy         
-    yyyyyyyy           
-    yyyyyy             
-    yyyy               
-    yy                 
-                       
+ a xxxx              
++  xxxxxx            
++b xxxxxxxx          
+   xxxxxxxxxx        
+   xxxxxxxxxxxx      
+   xxxxxxxxxxxxxx    
+   xxxxxxxxxxxxxxxx  
+   xxxxxxxxxxxxxxxxxx
+   xxxxxxxxxxxxxxxxxx
+   xx                
+ a yyyyyyyyyyyyyyyy  
++b yyyyyyyyyyyyyy    
+   yyyyyyyyyyyy      
+   yyyyyyyyyy        
+   yyyyyyyy          
+   yyyyyy            
+   yyyy              
+   yy                
+                     
 
 \pset border 1
 \pset format unaligned
@@ -862,60 +865,60 @@ yy
 \pset format aligned
 execute q;
 -[ RECORD 1 ]-----------
- a | xx                   
+ a | xx                  
 +  ;
 +b ;
- a | yyyyyyyyyyyyyyyyyy   
+ a | yyyyyyyyyyyyyyyyyy  
 +b ;
 -[ RECORD 2 ]-----------
- a | xxxx                 
-+  : xxxxxx               
-+b : xxxxxxxx             
-   : xxxxxxxxxx           
-   : xxxxxxxxxxxx         
-   : xxxxxxxxxxxxxx       
-   : xxxxxxxxxxxxxxxx     
-   : xxxxxxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxxxxxx 
- a | yyyyyyyyyyyyyyyy     
-+b : yyyyyyyyyyyyyy       
-   : yyyyyyyyyyyy         
-   : yyyyyyyyyy           
-   : yyyyyyyy             
-   : yyyyyy               
-   : yyyy                 
-   : yy                   
-   :                      
+ a | xxxx                
++  : xxxxxx              
++b : xxxxxxxx            
+   : xxxxxxxxxx          
+   : xxxxxxxxxxxx        
+   : xxxxxxxxxxxxxx      
+   : xxxxxxxxxxxxxxxx    
+   : xxxxxxxxxxxxxxxxxx  
+   : xxxxxxxxxxxxxxxxxxxx
+ a | yyyyyyyyyyyyyyyy    
++b : yyyyyyyyyyyyyy      
+   : yyyyyyyyyyyy        
+   : yyyyyyyyyy          
+   : yyyyyyyy            
+   : yyyyyy              
+   : yyyy                
+   : yy                  
+   :                     
 
 \pset format wrapped
 execute q;
 -[ RECORD 1 ]-------
- a | xx               
+ a | xx              
 +  ;
 +b ;
- a | yyyyyyyyyyyyyyyy 
-+b ; yy               
+ a | yyyyyyyyyyyyyyyy
++b ; yy              
 -[ RECORD 2 ]-------
- a | xxxx             
-+  : xxxxxx           
-+b : xxxxxxxx         
-   : xxxxxxxxxx       
-   : xxxxxxxxxxxx     
-   : xxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxx 
-   : xxxxxxxxxxxxxxxx 
-   ; xx               
-   : xxxxxxxxxxxxxxxx 
-   ; xxxx             
- a | yyyyyyyyyyyyyyyy 
-+b : yyyyyyyyyyyyyy   
-   : yyyyyyyyyyyy     
-   : yyyyyyyyyy       
-   : yyyyyyyy         
-   : yyyyyy           
-   : yyyy             
-   : yy               
-   :                  
+ a | xxxx            
++  : xxxxxx          
++b : xxxxxxxx        
+   : xxxxxxxxxx      
+   : xxxxxxxxxxxx    
+   : xxxxxxxxxxxxxx  
+   : xxxxxxxxxxxxxxxx
+   : xxxxxxxxxxxxxxxx
+   ; xx              
+   : xxxxxxxxxxxxxxxx
+   ; xxxx            
+ a | yyyyyyyyyyyyyyyy
++b : yyyyyyyyyyyyyy  
+   : yyyyyyyyyyyy    
+   : yyyyyyyyyy      
+   : yyyyyyyy        
+   : yyyyyy          
+   : yyyy            
+   : yy              
+   :                 
 
 \pset border 2
 \pset format unaligned
@@ -1012,3 +1015,812 @@ execute q;
 +---+--------------+
 
 deallocate q;
+-- test single-line headers, wrapping, and newline indicators
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "abcde",
+array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a" 
+from generate_series(1,10) as n(n) group by n>1;
+\pset linestyle ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+(2 rows)
+\pset format aligned
+execute q;
+       abcde                 a          
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                +yyyyyyyyyyyyyyyy  +
+xxxxxx              +yyyyyyyyyyyyyy    +
+xxxxxxxx            +yyyyyyyyyyyy      +
+xxxxxxxxxx          +yyyyyyyyyy        +
+xxxxxxxxxxxx        +yyyyyyyy          +
+xxxxxxxxxxxxxx      +yyyyyy            +
+xxxxxxxxxxxxxxxx    +yyyy              +
+xxxxxxxxxxxxxxxxxx  +yy                +
+xxxxxxxxxxxxxxxxxxxx 
+(2 rows)
+
+\pset format wrapped
+execute q;
+       abcde                 a          
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                +yyyyyyyyyyyyyyyy  +
+xxxxxx              +yyyyyyyyyyyyyy    +
+xxxxxxxx            +yyyyyyyyyyyy      +
+xxxxxxxxxx          +yyyyyyyyyy        +
+xxxxxxxxxxxx        +yyyyyyyy          +
+xxxxxxxxxxxxxx      +yyyyyy            +
+xxxxxxxxxxxxxxxx    +yyyy              +
+xxxxxxxxxxxxxxxxxx  +yy                +
+xxxxxxxxxxxxxxxxxxxx 
+(2 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+(2 rows)
+\pset format aligned
+execute q;
+        abcde         |         a          
+----------------------+--------------------
+ xx                   | yyyyyyyyyyyyyyyyyy
+ xxxx                +| yyyyyyyyyyyyyyyy  +
+ xxxxxx              +| yyyyyyyyyyyyyy    +
+ xxxxxxxx            +| yyyyyyyyyyyy      +
+ xxxxxxxxxx          +| yyyyyyyyyy        +
+ xxxxxxxxxxxx        +| yyyyyyyy          +
+ xxxxxxxxxxxxxx      +| yyyyyy            +
+ xxxxxxxxxxxxxxxx    +| yyyy              +
+ xxxxxxxxxxxxxxxxxx  +| yy                +
+ xxxxxxxxxxxxxxxxxxxx | 
+(2 rows)
+
+\pset format wrapped
+execute q;
+       abcde       |         a          
+-------------------+--------------------
+ xx                | yyyyyyyyyyyyyyyyyy
+ xxxx             +| yyyyyyyyyyyyyyyy  +
+ xxxxxx           +| yyyyyyyyyyyyyy    +
+ xxxxxxxx         +| yyyyyyyyyyyy      +
+ xxxxxxxxxx       +| yyyyyyyyyy        +
+ xxxxxxxxxxxx     +| yyyyyyyy          +
+ xxxxxxxxxxxxxx   +| yyyyyy            +
+ xxxxxxxxxxxxxxxx +| yyyy              +
+ xxxxxxxxxxxxxxxxx.| yy                +
+.x                +| 
+ xxxxxxxxxxxxxxxxx.| 
+.xxx               | 
+(2 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+(2 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+|        abcde         |         a          |
++----------------------+--------------------+
+| xx                   | yyyyyyyyyyyyyyyyyy |
+| xxxx                +| yyyyyyyyyyyyyyyy  +|
+| xxxxxx              +| yyyyyyyyyyyyyy    +|
+| xxxxxxxx            +| yyyyyyyyyyyy      +|
+| xxxxxxxxxx          +| yyyyyyyyyy        +|
+| xxxxxxxxxxxx        +| yyyyyyyy          +|
+| xxxxxxxxxxxxxx      +| yyyyyy            +|
+| xxxxxxxxxxxxxxxx    +| yyyy              +|
+| xxxxxxxxxxxxxxxxxx  +| yy                +|
+| xxxxxxxxxxxxxxxxxxxx |                    |
++----------------------+--------------------+
+(2 rows)
+
+\pset format wrapped
+execute q;
++-----------------+--------------------+
+|      abcde      |         a          |
++-----------------+--------------------+
+| xx              | yyyyyyyyyyyyyyyyyy |
+| xxxx           +| yyyyyyyyyyyyyyyy  +|
+| xxxxxx         +| yyyyyyyyyyyyyy    +|
+| xxxxxxxx       +| yyyyyyyyyyyy      +|
+| xxxxxxxxxx     +| yyyyyyyyyy        +|
+| xxxxxxxxxxxx   +| yyyyyyyy          +|
+| xxxxxxxxxxxxxx +| yyyyyy            +|
+| xxxxxxxxxxxxxxx.| yyyy              +|
+|.x              +| yy                +|
+| xxxxxxxxxxxxxxx.|                    |
+|.xxx            +|                    |
+| xxxxxxxxxxxxxxx.|                    |
+|.xxxxx           |                    |
++-----------------+--------------------+
+(2 rows)
+
+\pset expanded on
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx
+a|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+\pset format aligned
+execute q;
+* Record 1               
+abcde xx                  
+a     yyyyyyyyyyyyyyyyyy  
+* Record 2               
+abcde xxxx                +
+      xxxxxx              +
+      xxxxxxxx            +
+      xxxxxxxxxx          +
+      xxxxxxxxxxxx        +
+      xxxxxxxxxxxxxx      +
+      xxxxxxxxxxxxxxxx    +
+      xxxxxxxxxxxxxxxxxx  +
+      xxxxxxxxxxxxxxxxxxxx
+a     yyyyyyyyyyyyyyyy    +
+      yyyyyyyyyyyyyy      +
+      yyyyyyyyyyyy        +
+      yyyyyyyyyy          +
+      yyyyyyyy            +
+      yyyyyy              +
+      yyyy                +
+      yy                  +
+                          
+
+\pset format wrapped
+execute q;
+* Record 1                            
+abcde xx                               
+a     yyyyyyyyyyyyyyyyyy               
+* Record 2                            
+abcde xxxx                             +
+      xxxxxx                           +
+      xxxxxxxx                         +
+      xxxxxxxxxx                       +
+      xxxxxxxxxxxx                     +
+      xxxxxxxxxxxxxx                   +
+      xxxxxxxxxxxxxxxx                 +
+      xxxxxxxxxxxxxxxxxx               +
+      xxxxxxxxxxxxxxxxxxxx             
+a     yyyyyyyyyyyyyyyy                 +
+      yyyyyyyyyyyyyy                   +
+      yyyyyyyyyyyy                     +
+      yyyyyyyyyy                       +
+      yyyyyyyy                         +
+      yyyyyy                           +
+      yyyy                             +
+      yy                               +
+                                       
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx
+a|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+\pset format aligned
+execute q;
+-[ RECORD 1 ]---------------
+abcde | xx                  
+a     | yyyyyyyyyyyyyyyyyy  
+-[ RECORD 2 ]---------------
+abcde | xxxx                +
+      | xxxxxx              +
+      | xxxxxxxx            +
+      | xxxxxxxxxx          +
+      | xxxxxxxxxxxx        +
+      | xxxxxxxxxxxxxx      +
+      | xxxxxxxxxxxxxxxx    +
+      | xxxxxxxxxxxxxxxxxx  +
+      | xxxxxxxxxxxxxxxxxxxx
+a     | yyyyyyyyyyyyyyyy    +
+      | yyyyyyyyyyyyyy      +
+      | yyyyyyyyyyyy        +
+      | yyyyyyyyyy          +
+      | yyyyyyyy            +
+      | yyyyyy              +
+      | yyyy                +
+      | yy                  +
+      |                     
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]--------------------------
+abcde | xx                             
+a     | yyyyyyyyyyyyyyyyyy             
+-[ RECORD 2 ]--------------------------
+abcde | xxxx                           +
+      | xxxxxx                         +
+      | xxxxxxxx                       +
+      | xxxxxxxxxx                     +
+      | xxxxxxxxxxxx                   +
+      | xxxxxxxxxxxxxx                 +
+      | xxxxxxxxxxxxxxxx               +
+      | xxxxxxxxxxxxxxxxxx             +
+      | xxxxxxxxxxxxxxxxxxxx           
+a     | yyyyyyyyyyyyyyyy               +
+      | yyyyyyyyyyyyyy                 +
+      | yyyyyyyyyyyy                   +
+      | yyyyyyyyyy                     +
+      | yyyyyyyy                       +
+      | yyyyyy                         +
+      | yyyy                           +
+      | yy                             +
+      |                                
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx
+a|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----------------+
+| abcde | xx                   |
+| a     | yyyyyyyyyyyyyyyyyy   |
++-[ RECORD 2 ]-----------------+
+| abcde | xxxx                +|
+|       | xxxxxx              +|
+|       | xxxxxxxx            +|
+|       | xxxxxxxxxx          +|
+|       | xxxxxxxxxxxx        +|
+|       | xxxxxxxxxxxxxx      +|
+|       | xxxxxxxxxxxxxxxx    +|
+|       | xxxxxxxxxxxxxxxxxx  +|
+|       | xxxxxxxxxxxxxxxxxxxx |
+| a     | yyyyyyyyyyyyyyyy    +|
+|       | yyyyyyyyyyyyyy      +|
+|       | yyyyyyyyyyyy        +|
+|       | yyyyyyyyyy          +|
+|       | yyyyyyyy            +|
+|       | yyyyyy              +|
+|       | yyyy                +|
+|       | yy                  +|
+|       |                      |
++-------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-------------------------+
+| abcde | xx                           |
+| a     | yyyyyyyyyyyyyyyyyy           |
++-[ RECORD 2 ]-------------------------+
+| abcde | xxxx                        +|
+|       | xxxxxx                      +|
+|       | xxxxxxxx                    +|
+|       | xxxxxxxxxx                  +|
+|       | xxxxxxxxxxxx                +|
+|       | xxxxxxxxxxxxxx              +|
+|       | xxxxxxxxxxxxxxxx            +|
+|       | xxxxxxxxxxxxxxxxxx          +|
+|       | xxxxxxxxxxxxxxxxxxxx         |
+| a     | yyyyyyyyyyyyyyyy            +|
+|       | yyyyyyyyyyyyyy              +|
+|       | yyyyyyyyyyyy                +|
+|       | yyyyyyyyyy                  +|
+|       | yyyyyyyy                    +|
+|       | yyyyyy                      +|
+|       | yyyy                        +|
+|       | yy                          +|
+|       |                              |
++-------+------------------------------+
+
+\pset linestyle old-ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+(2 rows)
+\pset format aligned
+execute q;
+       abcde                 a         
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy   
+xxxxxx               yyyyyyyyyyyyyy     
+xxxxxxxx             yyyyyyyyyyyy       
+xxxxxxxxxx           yyyyyyyyyy         
+xxxxxxxxxxxx         yyyyyyyy           
+xxxxxxxxxxxxxx       yyyyyy             
+xxxxxxxxxxxxxxxx     yyyy               
+xxxxxxxxxxxxxxxxxx   yy                 
+xxxxxxxxxxxxxxxxxxxx 
+(2 rows)
+
+\pset format wrapped
+execute q;
+       abcde                 a         
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy   
+xxxxxx               yyyyyyyyyyyyyy     
+xxxxxxxx             yyyyyyyyyyyy       
+xxxxxxxxxx           yyyyyyyyyy         
+xxxxxxxxxxxx         yyyyyyyy           
+xxxxxxxxxxxxxx       yyyyyy             
+xxxxxxxxxxxxxxxx     yyyy               
+xxxxxxxxxxxxxxxxxx   yy                 
+xxxxxxxxxxxxxxxxxxxx 
+(2 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+(2 rows)
+\pset format aligned
+execute q;
+        abcde         |         a          
+----------------------+--------------------
+ xx                   | yyyyyyyyyyyyyyyyyy
+ xxxx                 | yyyyyyyyyyyyyyyy   
+ xxxxxx               : yyyyyyyyyyyyyy     
+ xxxxxxxx             : yyyyyyyyyyyy       
+ xxxxxxxxxx           : yyyyyyyyyy         
+ xxxxxxxxxxxx         : yyyyyyyy           
+ xxxxxxxxxxxxxx       : yyyyyy             
+ xxxxxxxxxxxxxxxx     : yyyy               
+ xxxxxxxxxxxxxxxxxx   : yy                 
+ xxxxxxxxxxxxxxxxxxxx : 
+(2 rows)
+
+\pset format wrapped
+execute q;
+       abcde       |         a          
+-------------------+--------------------
+ xx                | yyyyyyyyyyyyyyyyyy
+ xxxx              | yyyyyyyyyyyyyyyy   
+ xxxxxx            : yyyyyyyyyyyyyy     
+ xxxxxxxx          : yyyyyyyyyyyy       
+ xxxxxxxxxx        : yyyyyyyyyy         
+ xxxxxxxxxxxx      : yyyyyyyy           
+ xxxxxxxxxxxxxx    : yyyyyy             
+ xxxxxxxxxxxxxxxx  : yyyy               
+ xxxxxxxxxxxxxxxxx : yy                 
+ x                 : 
+ xxxxxxxxxxxxxxxxx   
+ xxx                 
+(2 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+(2 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+|        abcde         |         a          |
++----------------------+--------------------+
+| xx                   | yyyyyyyyyyyyyyyyyy |
+| xxxx                 | yyyyyyyyyyyyyyyy   |
+| xxxxxx               : yyyyyyyyyyyyyy     |
+| xxxxxxxx             : yyyyyyyyyyyy       |
+| xxxxxxxxxx           : yyyyyyyyyy         |
+| xxxxxxxxxxxx         : yyyyyyyy           |
+| xxxxxxxxxxxxxx       : yyyyyy             |
+| xxxxxxxxxxxxxxxx     : yyyy               |
+| xxxxxxxxxxxxxxxxxx   : yy                 |
+| xxxxxxxxxxxxxxxxxxxx :                    |
++----------------------+--------------------+
+(2 rows)
+
+\pset format wrapped
+execute q;
++-----------------+--------------------+
+|      abcde      |         a          |
++-----------------+--------------------+
+| xx              | yyyyyyyyyyyyyyyyyy |
+| xxxx            | yyyyyyyyyyyyyyyy   |
+| xxxxxx          : yyyyyyyyyyyyyy     |
+| xxxxxxxx        : yyyyyyyyyyyy       |
+| xxxxxxxxxx      : yyyyyyyyyy         |
+| xxxxxxxxxxxx    : yyyyyyyy           |
+| xxxxxxxxxxxxxx  : yyyyyy             |
+| xxxxxxxxxxxxxxx : yyyy               |
+| x               : yy                 |
+| xxxxxxxxxxxxxxx :                    |
+| xxx                                  |
+| xxxxxxxxxxxxxxx                      |
+| xxxxx                                |
++-----------------+--------------------+
+(2 rows)
+
+\pset expanded on
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx
+a|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+\pset format aligned
+execute q;
+* Record 1               
+abcde xx                  
+a     yyyyyyyyyyyyyyyyyy  
+* Record 2               
+abcde xxxx                
+      xxxxxx              
+      xxxxxxxx            
+      xxxxxxxxxx          
+      xxxxxxxxxxxx        
+      xxxxxxxxxxxxxx      
+      xxxxxxxxxxxxxxxx    
+      xxxxxxxxxxxxxxxxxx  
+      xxxxxxxxxxxxxxxxxxxx
+a     yyyyyyyyyyyyyyyy    
+      yyyyyyyyyyyyyy      
+      yyyyyyyyyyyy        
+      yyyyyyyyyy          
+      yyyyyyyy            
+      yyyyyy              
+      yyyy                
+      yy                  
+                          
+
+\pset format wrapped
+execute q;
+* Record 1                             
+abcde xx                                
+a     yyyyyyyyyyyyyyyyyy                
+* Record 2                             
+abcde xxxx                              
+      xxxxxx                            
+      xxxxxxxx                          
+      xxxxxxxxxx                        
+      xxxxxxxxxxxx                      
+      xxxxxxxxxxxxxx                    
+      xxxxxxxxxxxxxxxx                  
+      xxxxxxxxxxxxxxxxxx                
+      xxxxxxxxxxxxxxxxxxxx              
+a     yyyyyyyyyyyyyyyy                  
+      yyyyyyyyyyyyyy                    
+      yyyyyyyyyyyy                      
+      yyyyyyyyyy                        
+      yyyyyyyy                          
+      yyyyyy                            
+      yyyy                              
+      yy                                
+                                        
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx
+a|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+\pset format aligned
+execute q;
+-[ RECORD 1 ]---------------
+abcde | xx                  
+a     | yyyyyyyyyyyyyyyyyy  
+-[ RECORD 2 ]---------------
+abcde | xxxx                
+      : xxxxxx              
+      : xxxxxxxx            
+      : xxxxxxxxxx          
+      : xxxxxxxxxxxx        
+      : xxxxxxxxxxxxxx      
+      : xxxxxxxxxxxxxxxx    
+      : xxxxxxxxxxxxxxxxxx  
+      : xxxxxxxxxxxxxxxxxxxx
+a     | yyyyyyyyyyyyyyyy    
+      : yyyyyyyyyyyyyy      
+      : yyyyyyyyyyyy        
+      : yyyyyyyyyy          
+      : yyyyyyyy            
+      : yyyyyy              
+      : yyyy                
+      : yy                  
+      :                     
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]---------------------------
+abcde | xx                              
+a     | yyyyyyyyyyyyyyyyyy              
+-[ RECORD 2 ]---------------------------
+abcde | xxxx                            
+      : xxxxxx                          
+      : xxxxxxxx                        
+      : xxxxxxxxxx                      
+      : xxxxxxxxxxxx                    
+      : xxxxxxxxxxxxxx                  
+      : xxxxxxxxxxxxxxxx                
+      : xxxxxxxxxxxxxxxxxx              
+      : xxxxxxxxxxxxxxxxxxxx            
+a     | yyyyyyyyyyyyyyyy                
+      : yyyyyyyyyyyyyy                  
+      : yyyyyyyyyyyy                    
+      : yyyyyyyyyy                      
+      : yyyyyyyy                        
+      : yyyyyy                          
+      : yyyy                            
+      : yy                              
+      :                                 
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+xxxxxx
+xxxxxxxx
+xxxxxxxxxx
+xxxxxxxxxxxx
+xxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxx
+xxxxxxxxxxxxxxxxxxxx
+a|yyyyyyyyyyyyyyyy
+yyyyyyyyyyyyyy
+yyyyyyyyyyyy
+yyyyyyyyyy
+yyyyyyyy
+yyyyyy
+yyyy
+yy
+
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----------------+
+| abcde | xx                   |
+| a     | yyyyyyyyyyyyyyyyyy   |
++-[ RECORD 2 ]-----------------+
+| abcde | xxxx                 |
+|       : xxxxxx               |
+|       : xxxxxxxx             |
+|       : xxxxxxxxxx           |
+|       : xxxxxxxxxxxx         |
+|       : xxxxxxxxxxxxxx       |
+|       : xxxxxxxxxxxxxxxx     |
+|       : xxxxxxxxxxxxxxxxxx   |
+|       : xxxxxxxxxxxxxxxxxxxx |
+| a     | yyyyyyyyyyyyyyyy     |
+|       : yyyyyyyyyyyyyy       |
+|       : yyyyyyyyyyyy         |
+|       : yyyyyyyyyy           |
+|       : yyyyyyyy             |
+|       : yyyyyy               |
+|       : yyyy                 |
+|       : yy                   |
+|       :                      |
++-------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-------------------------+
+| abcde | xx                           |
+| a     | yyyyyyyyyyyyyyyyyy           |
++-[ RECORD 2 ]-------------------------+
+| abcde | xxxx                         |
+|       : xxxxxx                       |
+|       : xxxxxxxx                     |
+|       : xxxxxxxxxx                   |
+|       : xxxxxxxxxxxx                 |
+|       : xxxxxxxxxxxxxx               |
+|       : xxxxxxxxxxxxxxxx             |
+|       : xxxxxxxxxxxxxxxxxx           |
+|       : xxxxxxxxxxxxxxxxxxxx         |
+| a     | yyyyyyyyyyyyyyyy             |
+|       : yyyyyyyyyyyyyy               |
+|       : yyyyyyyyyyyy                 |
+|       : yyyyyyyyyy                   |
+|       : yyyyyyyy                     |
+|       : yyyyyy                       |
+|       : yyyy                         |
+|       : yy                           |
+|       :                              |
++-------+------------------------------+
+
+deallocate q;
diff --git a/src/test/regress/sql/psql.sql b/src/test/regress/sql/psql.sql
index a7d5eeb..2cd6c55 100644
--- a/src/test/regress/sql/psql.sql
+++ b/src/test/regress/sql/psql.sql
@@ -160,3 +160,120 @@ execute q;
 execute q;
 
 deallocate q;
+
+-- test single-line headers, wrapping, and newline indicators
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "abcde",
+array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a" 
+from generate_series(1,10) as n(n) group by n>1;
+
+\pset linestyle ascii
+
+\pset expanded off
+\pset columns 40
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset expanded on
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset linestyle old-ascii
+
+\pset expanded off
+\pset columns 40
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset expanded on
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+deallocate q;
psql-complex.outapplication/octet-stream; name=psql-complex.outDownload
psql-complex.sqlapplication/sql; name=psql-complex.sqlDownload
#12Pavel Stehule
pavel.stehule@gmail.com
In reply to: Sergey Muraviov (#11)
Re: wrapping in extended mode doesn't work well with default pager

Hello

2014-05-15 15:04 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Hi.
Please review the new patch.

This version works perfect

Regards

Pavel

Show quoted text

PS
Issues which were described by Tom and Pavel were relevant to single-line
headers.
So I've added appropriate regression tests to the patch.

I've also attached complex regression tests for unicode linestyle and
multibyte symbols.

2014-05-14 10:55 GMT+04:00 Pavel Stehule <pavel.stehule@gmail.com>:

sorry

there is still small issue

I have a plpgsql function:

CREATE OR REPLACE FUNCTION public.foo_update_trg()
RETURNS trigger
LANGUAGE plpgsql
AS $function$
DECLARE t text;
BEGIN
EXECUTE format('SELECT $1.%I', TG_ARGV[0]) INTO t USING old;
RAISE NOTICE 'original value of "%" is "%"', TG_ARGV[0], t;
RETURN NULL;
END;
$function$

Default expanded view of select * from pg_proc where proname =
'foo_update_trg'; is little bit broken (screenshoot 1)

After wrap mode, it add useless new line into source code (screenshoot 2)

but border2 fixes it (screenshots 3)

Regards

Pavel

2014-05-14 8:32 GMT+02:00 Pavel Stehule <pavel.stehule@gmail.com>:

Hello

With this patch it works perfect

Thank you

Regards

Pavel

2014-05-13 21:33 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>
:

Please check this patch.

2014-05-12 22:56 GMT+04:00 Sergey Muraviov <sergey.k.muraviov@gmail.com

:

Hi.

I'll try to fix it tomorrow.

2014-05-12 18:42 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Greg Stark <stark@mit.edu> writes:

On Mon, May 12, 2014 at 2:12 PM, Greg Stark <stark@mit.edu> wrote:

Hm, there was an off by one error earlier in some cases, maybe we
fixed it by breaking other case. Will investigate.

Those spaces are coming from the ascii wrapping indicators. i.e.

the periods in:

Ah. I wonder whether anyone will complain that the format changed?

Apparently we used to print those with border=1 in normal mode but

in

expanded mode we left out the space for those on the outermost edges
since there was no need for them. If we put them in for wrapped mode
then we'll be inconsistent if we don't for nonwrapped mode though.

And

if we don't put them in for wrapped mode then there's no way to
indicate wrapping versus newlines.

Barring anyone complaining that the format changed, I'd say the issue
is not that you added them but that the accounting for line length
fails to include them.

regards, tom lane

--
Best regards,
Sergey Muraviov

--
Best regards,
Sergey MuraviovH

--
Best regards,
Sergey Muraviov

#13Greg Stark
stark@mit.edu
In reply to: Pavel Stehule (#12)
Re: wrapping in extended mode doesn't work well with default pager

I'm trying to review all the combinations of the options exhaustively
but in the process I noticed a few pre-existing psql oddities. Both of
these are present in 9.3:

Can anyone explain this? It's linestyle=old-style, border=1,
expanded=off, format=aligned. It looks like it's using new-style ascii
indicators in the header but old-style in the data cells:

          a           |         a
+                     |+        b
+         b           |+
----------------------+--------------------
 xx                   | yyyyyyyyyyyyyyyyyy
 xxxx                 | yyyyyyyyyyyyyyyy
 xxxxxx               : yyyyyyyyyyyyyy
 xxxxxxxx             : yyyyyyyyyyyy
 xxxxxxxxxx           : yyyyyyyyyy
 xxxxxxxxxxxx         : yyyyyyyy
 xxxxxxxxxxxxxx       : yyyyyy
 xxxxxxxxxxxxxxxx     : yyyy
 xxxxxxxxxxxxxxxxxx   : yy
 xxxxxxxxxxxxxxxxxxxx :
(2 rows)

Also the line-ending white-space is very odd here. It's
linestyle=old-ascii, border=0, expanded=off, format=aligned. There's
an extra space on the header and the first line of the data, but not
on the subsequent lines of the data:

a a
+ b
b +
-------------------- ------------------
xx yyyyyyyyyyyyyyyyyy
xxxx yyyyyyyyyyyyyyyy
xxxxxx yyyyyyyyyyyyyy
xxxxxxxx yyyyyyyyyyyy
xxxxxxxxxx yyyyyyyyyy
xxxxxxxxxxxx yyyyyyyy
xxxxxxxxxxxxxx yyyyyy
xxxxxxxxxxxxxxxx yyyy
xxxxxxxxxxxxxxxxxx yy
xxxxxxxxxxxxxxxxxxxx
(2 rows)

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#14Greg Stark
stark@mit.edu
In reply to: Pavel Stehule (#12)
Re: wrapping in extended mode doesn't work well with default pager

Sorry, a couple things still look to not be quite right.

1) The width of the table when linestyle=old-ascii and border=0 or
border=1 (and expanded=on and format=wrapped) seems to off by one.

2) The hyphens following the RECORD NN are short by one

I'm surprised the last patch was so big since it sounded like a simple
off-by-one bug. It looks like you've removed the leading space on the
border=0 expanded case. I guess that makes sense but we should
probably stop making significant changes now and just focus on fixing
the off by one bugs.

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#15Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Greg Stark (#14)
1 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

I found some new bugs and fix them.
And I had to make many changes.

2014-05-17 21:31 GMT+04:00 Greg Stark <stark@mit.edu>:

Sorry, a couple things still look to not be quite right.

1) The width of the table when linestyle=old-ascii and border=0 or
border=1 (and expanded=on and format=wrapped) seems to off by one.

2) The hyphens following the RECORD NN are short by one

I'm surprised the last patch was so big since it sounded like a simple
off-by-one bug. It looks like you've removed the leading space on the
border=0 expanded case. I guess that makes sense but we should
probably stop making significant changes now and just focus on fixing
the off by one bugs.

--
Best regards,
Sergey Muraviov

Attachments:

psql-wrapped-expanded-fix-v4.patchtext/x-patch; charset=UTF-8; name=psql-wrapped-expanded-fix-v4.patchDownload
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 62850d8..8eae899 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -1160,7 +1160,9 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				dformatsize = 0;
 	struct lineptr *hlineptr,
 			   *dlineptr;
-	bool		is_pager = false;
+	bool		is_pager = false,
+				hmultiline = false,
+				dmultiline = false;
 	int			output_columns = 0;		/* Width of interactive console */
 
 	if (cancel_pressed)
@@ -1196,7 +1198,10 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 		if (width > hwidth)
 			hwidth = width;
 		if (height > hheight)
+		{
 			hheight = height;
+			hmultiline = true;
+		}
 		if (fs > hformatsize)
 			hformatsize = fs;
 	}
@@ -1213,7 +1218,10 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 		if (width > dwidth)
 			dwidth = width;
 		if (height > dheight)
+		{
 			dheight = height;
+			dmultiline = true;
+		}
 		if (fs > dformatsize)
 			dformatsize = fs;
 	}
@@ -1258,45 +1266,84 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 	if (cont->opt->format == PRINT_WRAPPED)
 	{
 		/*
-		 * Calculate the available width to wrap the columns to after
-		 * subtracting the maximum header width and separators. At a minimum
-		 * enough to print "[ RECORD N ]"
+		 * Separators width
 		 */
 		unsigned int width,
-					swidth;
+					min_width,
+					swidth,
+					iwidth = 0;
 
 		if (opt_border == 0)
-			swidth = 1;			/* "header data" */
-		else if (opt_border == 1)
-			swidth = 3;			/* "header | data" */
-		else
-			swidth = 7;			/* "| header | data |" */
+		{
+			/*
+			 * For border = 0, one space in the middle.
+			 */
+			swidth = 1;
 
-		/* Wrap to maximum width */
-		width = dwidth + swidth + hwidth;
-		if ((output_columns > 0) && (width > output_columns))
+			if ((hmultiline) && 
+				(format == &pg_asciiformat_old))
+				iwidth++; /* for newline indicators */
+		}
+		else if (opt_border == 1)
 		{
-			dwidth = output_columns - hwidth - swidth;
-			width = output_columns;
+			/*
+			 * For border = 1, one space at the begging and at the end
+			 * of the lines. Оne for the pipe (|) in the middle
+			 * between the two spaces.
+			 */
+			swidth = 5;
 		}
+		else
+			/*
+			 * For border = 2, two more for the pipes (|) at the begging and
+			 * at the end of the lines.
+			 */
+			swidth = 7;
 
-		/* Wrap to minimum width */
+		min_width = hwidth + iwidth + swidth + 3;
+
+		/* 
+		 * Record header width
+		 */
 		if (!opt_tuples_only)
 		{
-			int			delta = 1 + log10(cont->nrows) - width;
-
+			/* 
+			 * Record number
+			 */
+			unsigned int rwidth = 1 + log10(cont->nrows);
 			if (opt_border == 0)
-				delta += 6;		/* "* RECORD " */
+				rwidth += 9;	/* "* RECORD " */
 			else if (opt_border == 1)
-				delta += 10;	/* "-[ RECORD  ]" */
+				rwidth += 12;	/* "-[ RECORD  ]" */
 			else
-				delta += 15;	/* "+-[ RECORD  ]-+" */
+				rwidth += 15;	/* "+-[ RECORD  ]-+" */
+
+			if (rwidth > min_width)
+				min_width = rwidth;
+		}
+
+		/* Wrap to minimum width */
+		width = hwidth + iwidth + swidth + dwidth;
+		if ((width < min_width) || (output_columns < min_width))
+			width = min_width - hwidth - iwidth - swidth;
+		else if (output_columns > 0)
+			/*
+			 * Wrap to maximum width
+			 */
+			width = output_columns - hwidth - iwidth - swidth;
 
-			if (delta > 0)
-				dwidth += delta;
+		if ((width < dwidth) || (dheight > 1))
+		{
+			dmultiline = true;
+			if ((opt_border == 0) && 
+				(format != &pg_asciiformat_old))
+			{
+				width--; /* for wrap indicators */
+				if (hmultiline)
+					width--;
+			}
 		}
-		else if (dwidth < 3)
-			dwidth = 3;
+		dwidth = width;
 	}
 
 	/* print records */
@@ -1321,11 +1368,18 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 		/* Print record header (e.g. "[ RECORD N ]") above each record */
 		if (i % cont->ncolumns == 0)
 		{
+			unsigned int lhwidth = hwidth,
+						 ldwidth = dwidth;
+			if (opt_border == 1)
+			{
+				lhwidth++;
+				ldwidth++;
+			}
 			if (!opt_tuples_only)
-				print_aligned_vertical_line(cont, record++, hwidth, dwidth,
-											pos, fout);
+				print_aligned_vertical_line(cont, record++, lhwidth,
+											ldwidth, pos, fout);
 			else if (i != 0 || !cont->opt->start_table || opt_border == 2)
-				print_aligned_vertical_line(cont, 0, hwidth, dwidth,
+				print_aligned_vertical_line(cont, 0, lhwidth, ldwidth,
 											pos, fout);
 		}
 
@@ -1354,35 +1408,56 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			/* Header (never wrapped so just need to deal with newlines) */
 			if (!hcomplete)
 			{
-				int			swidth,
-							twidth = hwidth + 1;
-
-				fputs(hline ? format->header_nl_left : " ", fout);
-				strlen_max_width(hlineptr[hline].ptr, &twidth,
+				int			swidth = hwidth,
+							target_width = hwidth;
+				/*
+				 * Left spacer or new line indicator
+				 */
+				if ((opt_border > 0) ||
+					(hmultiline && (format == &pg_asciiformat_old)))
+					fputs(hline ? format->header_nl_left : " ", fout);
+				/*
+				 * Header text
+				 */
+				strlen_max_width(hlineptr[hline].ptr, &target_width,
 								 encoding);
 				fprintf(fout, "%-s", hlineptr[hline].ptr);
 
-				swidth = hwidth - twidth;
-				if (swidth > 0) /* spacer */
+				/*
+				 * Spacer
+				 */
+				swidth -= target_width;
+				if (swidth > 0)
 					fprintf(fout, "%*s", swidth, " ");
 
+				/* 
+				 * New line indicator or separator's space
+				 */
 				if (hlineptr[hline + 1].ptr)
 				{
 					/* More lines after this one due to a newline */
-					fputs(format->header_nl_right, fout);
+					if ((opt_border > 0) ||
+						(hmultiline && (format != &pg_asciiformat_old)))
+						fputs(format->header_nl_right, fout);
 					hline++;
 				}
 				else
 				{
 					/* This was the last line of the header */
-					fputs(" ", fout);
+					if ((opt_border > 0) ||
+						(hmultiline && (format != &pg_asciiformat_old)))
+						fputs(" ", fout);
 					hcomplete = 1;
 				}
 			}
 			else
 			{
-				/* Header exhausted but more data for column */
-				fprintf(fout, "%*s", hwidth + 2, "");
+				unsigned int swidth = hwidth;
+				if (opt_border > 0)
+					swidth += 2;
+				else if (hmultiline)
+					swidth++;
+				fprintf(fout, "%*s", swidth, " ");
 			}
 
 			/* Separator */
@@ -1401,13 +1476,18 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			/* Data */
 			if (!dcomplete)
 			{
-				int			target_width,
+				int			target_width = dwidth,
 							bytes_to_output,
-							swidth;
+							swidth = dwidth;
 
+				/*
+				 * Left spacer on wrap indicator
+				 */
 				fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
 
-				target_width = dwidth;
+				/*
+				 * Data text
+				 */
 				bytes_to_output = strlen_max_width(dlineptr[dline].ptr + offset,
 												   &target_width, encoding);
 				fputnbytes(fout, (char *) (dlineptr[dline].ptr + offset),
@@ -1416,20 +1496,24 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				chars_to_output -= target_width;
 				offset += bytes_to_output;
 
-				/* spacer */
-				swidth = dwidth - target_width;
+				/* Spacer */
+				swidth -= target_width;
 				if (swidth > 0)
-					fprintf(fout, "%*s", swidth, "");
+					fprintf(fout, "%*s", swidth, " ");
 
 				if (chars_to_output)
 				{
 					/* continuing a wrapped column */
-					fputs(format->wrap_right, fout);
+					if ((opt_border > 0) ||
+						(dmultiline && (format != &pg_asciiformat_old)))
+						fputs(format->wrap_right, fout);
 				}
 				else if (dlineptr[dline + 1].ptr)
 				{
 					/* reached a newline in the column */
-					fputs(format->nl_right, fout);
+					if ((opt_border > 0) ||
+						(dmultiline && (format != &pg_asciiformat_old)))
+						fputs(format->nl_right, fout);
 					dline++;
 					offset = 0;
 					chars_to_output = dlineptr[dline].width;
@@ -1437,10 +1521,13 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				else
 				{
 					/* reached the end of the cell */
-					fputs(" ", fout);
+					if ((opt_border > 0) ||
+						(dmultiline && (format != &pg_asciiformat_old)))
+						fputs(" ", fout);
 					dcomplete = 1;
 				}
 
+				/* Right border */
 				if (opt_border == 2)
 					fputs(dformat->rightvrule, fout);
 
diff --git a/src/test/regress/expected/psql.out b/src/test/regress/expected/psql.out
index c7dbd54..59e9e9b 100644
--- a/src/test/regress/expected/psql.out
+++ b/src/test/regress/expected/psql.out
@@ -69,20 +69,20 @@ Table attributes (tableattr) unset.
 Title (title) unset.
 Tuples only (tuples_only) is off.
 -- test multi-line headers, wrapping, and newline indicators
-prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "a
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "ab
 
-b", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
-b" from generate_series(1,10) as n(n) group by n>1 ;
+c", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
+bc" from generate_series(1,10) as n(n) group by n>1 ;
 \pset linestyle ascii
 \pset expanded off
 \pset columns 40
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -104,9 +104,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-         a          +        a         +
-                    +        b          
-         b                              
+         ab         +        a         +
+                    +        bc         
+         c                              
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                +yyyyyyyyyyyyyyyy  +
@@ -122,9 +122,9 @@ xxxxxxxxxxxxxxxxxxxx
 
 \pset format wrapped
 execute q;
-         a          +        a         +
-                    +        b          
-         b                              
+         ab         +        a         +
+                    +        bc         
+         c                              
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                +yyyyyyyyyyyyyyyy  +
@@ -141,10 +141,10 @@ xxxxxxxxxxxxxxxxxxxx
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -166,9 +166,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-          a          +|         a         +
-                     +|         b          
-          b           |                    
+          ab         +|         a         +
+                     +|         bc         
+          c           |                    
 ----------------------+--------------------
  xx                   | yyyyyyyyyyyyyyyyyy
  xxxx                +| yyyyyyyyyyyyyyyy  +
@@ -184,9 +184,9 @@ execute q;
 
 \pset format wrapped
 execute q;
-         a        +|         a         +
-                  +|         b          
-         b         |                    
+        ab        +|         a         +
+                  +|         bc         
+         c         |                    
 -------------------+--------------------
  xx                | yyyyyyyyyyyyyyyyyy
  xxxx             +| yyyyyyyyyyyyyyyy  +
@@ -205,10 +205,10 @@ execute q;
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -231,9 +231,9 @@ yy
 \pset format aligned
 execute q;
 +----------------------+--------------------+
-|          a          +|         a         +|
-|                     +|         b          |
-|          b           |                    |
+|          ab         +|         a         +|
+|                     +|         bc         |
+|          c           |                    |
 +----------------------+--------------------+
 | xx                   | yyyyyyyyyyyyyyyyyy |
 | xxxx                +| yyyyyyyyyyyyyyyy  +|
@@ -251,9 +251,9 @@ execute q;
 \pset format wrapped
 execute q;
 +-----------------+--------------------+
-|        a       +|         a         +|
-|                +|         b          |
-|        b        |                    |
+|       ab       +|         a         +|
+|                +|         bc         |
+|        c        |                    |
 +-----------------+--------------------+
 | xx              | yyyyyyyyyyyyyyyyyy |
 | xxxx           +| yyyyyyyyyyyyyyyy  +|
@@ -276,15 +276,15 @@ execute q;
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -294,7 +294,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -305,24 +305,24 @@ yy
 
 \pset format aligned
 execute q;
-* Record 1           
- a+ xx                   
+* Record 1            
+ab+ xx                   
   +
- b 
- a+ yyyyyyyyyyyyyyyyyy   
- b 
-* Record 2           
- a+ xxxx                +
+c  
+a + yyyyyyyyyyyyyyyyyy   
+bc 
+* Record 2            
+ab+ xxxx                +
   + xxxxxx              +
- b  xxxxxxxx            +
+c   xxxxxxxx            +
     xxxxxxxxxx          +
     xxxxxxxxxxxx        +
     xxxxxxxxxxxxxx      +
     xxxxxxxxxxxxxxxx    +
     xxxxxxxxxxxxxxxxxx  +
     xxxxxxxxxxxxxxxxxxxx 
- a+ yyyyyyyyyyyyyyyy    +
- b  yyyyyyyyyyyyyy      +
+a + yyyyyyyyyyyyyyyy    +
+bc  yyyyyyyyyyyyyy      +
     yyyyyyyyyyyy        +
     yyyyyyyyyy          +
     yyyyyyyy            +
@@ -333,45 +333,48 @@ execute q;
 
 \pset format wrapped
 execute q;
-* Record 1         
- a+ xx                 
+* Record 1       
+ab+ xx              
   +
- b 
- a+ yyyyyyyyyyyyyyyyyy 
- b 
-* Record 2         
- a+ xxxx              +
-  + xxxxxx            +
- b  xxxxxxxx          +
-    xxxxxxxxxx        +
-    xxxxxxxxxxxx      +
-    xxxxxxxxxxxxxx    +
-    xxxxxxxxxxxxxxxx  +
-    xxxxxxxxxxxxxxxxxx+
-    xxxxxxxxxxxxxxxxxx.
-   .xx                 
- a+ yyyyyyyyyyyyyyyy  +
- b  yyyyyyyyyyyyyy    +
-    yyyyyyyyyyyy      +
-    yyyyyyyyyy        +
-    yyyyyyyy          +
-    yyyyyy            +
-    yyyy              +
-    yy                +
-                       
+c  
+a + yyyyyyyyyyyyyyy.
+bc .yyy             
+* Record 2       
+ab+ xxxx           +
+  + xxxxxx         +
+c   xxxxxxxx       +
+    xxxxxxxxxx     +
+    xxxxxxxxxxxx   +
+    xxxxxxxxxxxxxx +
+    xxxxxxxxxxxxxxx.
+   .x              +
+    xxxxxxxxxxxxxxx.
+   .xxx            +
+    xxxxxxxxxxxxxxx.
+   .xxxxx           
+a + yyyyyyyyyyyyyyy.
+bc .y              +
+    yyyyyyyyyyyyyy +
+    yyyyyyyyyyyy   +
+    yyyyyyyyyy     +
+    yyyyyyyy       +
+    yyyyyy         +
+    yyyy           +
+    yy             +
+                    
 
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -381,7 +384,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -392,74 +395,78 @@ yy
 
 \pset format aligned
 execute q;
--[ RECORD 1 ]-----------
- a+| xx                   
-  +|
- b |
- a+| yyyyyyyyyyyyyyyyyy   
- b |
--[ RECORD 2 ]-----------
- a+| xxxx                +
-  +| xxxxxx              +
- b | xxxxxxxx            +
-   | xxxxxxxxxx          +
-   | xxxxxxxxxxxx        +
-   | xxxxxxxxxxxxxx      +
-   | xxxxxxxxxxxxxxxx    +
-   | xxxxxxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxxxxxx 
- a+| yyyyyyyyyyyyyyyy    +
- b | yyyyyyyyyyyyyy      +
-   | yyyyyyyyyyyy        +
-   | yyyyyyyyyy          +
-   | yyyyyyyy            +
-   | yyyyyy              +
-   | yyyy                +
-   | yy                  +
-   |                      
+-[ RECORD 1 ]--------------
+ ab+| xx                   
+   +|
+ c  |
+ a +| yyyyyyyyyyyyyyyyyy   
+ bc |
+-[ RECORD 2 ]--------------
+ ab+| xxxx                +
+   +| xxxxxx              +
+ c  | xxxxxxxx            +
+    | xxxxxxxxxx          +
+    | xxxxxxxxxxxx        +
+    | xxxxxxxxxxxxxx      +
+    | xxxxxxxxxxxxxxxx    +
+    | xxxxxxxxxxxxxxxxxx  +
+    | xxxxxxxxxxxxxxxxxxxx 
+ a +| yyyyyyyyyyyyyyyy    +
+ bc | yyyyyyyyyyyyyy      +
+    | yyyyyyyyyyyy        +
+    | yyyyyyyyyy          +
+    | yyyyyyyy            +
+    | yyyyyy              +
+    | yyyy                +
+    | yy                  +
+    |                      
 
 \pset format wrapped
 execute q;
 -[ RECORD 1 ]-------
- a+| xx               
-  +|
- b |
- a+| yyyyyyyyyyyyyyyy.
- b |.yy               
+ ab+| xx            
+   +|
+ c  |
+ a +| yyyyyyyyyyyyy.
+ bc |.yyyyy         
 -[ RECORD 2 ]-------
- a+| xxxx            +
-  +| xxxxxx          +
- b | xxxxxxxx        +
-   | xxxxxxxxxx      +
-   | xxxxxxxxxxxx    +
-   | xxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxx+
-   | xxxxxxxxxxxxxxxx.
-   |.xx              +
-   | xxxxxxxxxxxxxxxx.
-   |.xxxx             
- a+| yyyyyyyyyyyyyyyy+
- b | yyyyyyyyyyyyyy  +
-   | yyyyyyyyyyyy    +
-   | yyyyyyyyyy      +
-   | yyyyyyyy        +
-   | yyyyyy          +
-   | yyyy            +
-   | yy              +
-   |                  
+ ab+| xxxx         +
+   +| xxxxxx       +
+ c  | xxxxxxxx     +
+    | xxxxxxxxxx   +
+    | xxxxxxxxxxxx +
+    | xxxxxxxxxxxxx.
+    |.x            +
+    | xxxxxxxxxxxxx.
+    |.xxx          +
+    | xxxxxxxxxxxxx.
+    |.xxxxx        +
+    | xxxxxxxxxxxxx.
+    |.xxxxxxx       
+ a +| yyyyyyyyyyyyy.
+ bc |.yyy          +
+    | yyyyyyyyyyyyy.
+    |.y            +
+    | yyyyyyyyyyyy +
+    | yyyyyyyyyy   +
+    | yyyyyyyy     +
+    | yyyyyy       +
+    | yyyy         +
+    | yy           +
+    |               
 
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -469,7 +476,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -480,67 +487,69 @@ yy
 
 \pset format aligned
 execute q;
-+-[ RECORD 1 ]-------------+
-| a+| xx                   |
-|  +|                      |
-| b |                      |
-| a+| yyyyyyyyyyyyyyyyyy   |
-| b |                      |
-+-[ RECORD 2 ]-------------+
-| a+| xxxx                +|
-|  +| xxxxxx              +|
-| b | xxxxxxxx            +|
-|   | xxxxxxxxxx          +|
-|   | xxxxxxxxxxxx        +|
-|   | xxxxxxxxxxxxxx      +|
-|   | xxxxxxxxxxxxxxxx    +|
-|   | xxxxxxxxxxxxxxxxxx  +|
-|   | xxxxxxxxxxxxxxxxxxxx |
-| a+| yyyyyyyyyyyyyyyy    +|
-| b | yyyyyyyyyyyyyy      +|
-|   | yyyyyyyyyyyy        +|
-|   | yyyyyyyyyy          +|
-|   | yyyyyyyy            +|
-|   | yyyyyy              +|
-|   | yyyy                +|
-|   | yy                  +|
-|   |                      |
-+---+----------------------+
++-[ RECORD 1 ]--------------+
+| ab+| xx                   |
+|   +|                      |
+| c  |                      |
+| a +| yyyyyyyyyyyyyyyyyy   |
+| bc |                      |
++-[ RECORD 2 ]--------------+
+| ab+| xxxx                +|
+|   +| xxxxxx              +|
+| c  | xxxxxxxx            +|
+|    | xxxxxxxxxx          +|
+|    | xxxxxxxxxxxx        +|
+|    | xxxxxxxxxxxxxx      +|
+|    | xxxxxxxxxxxxxxxx    +|
+|    | xxxxxxxxxxxxxxxxxx  +|
+|    | xxxxxxxxxxxxxxxxxxxx |
+| a +| yyyyyyyyyyyyyyyy    +|
+| bc | yyyyyyyyyyyyyy      +|
+|    | yyyyyyyyyyyy        +|
+|    | yyyyyyyyyy          +|
+|    | yyyyyyyy            +|
+|    | yyyyyy              +|
+|    | yyyy                +|
+|    | yy                  +|
+|    |                      |
++----+----------------------+
 
 \pset format wrapped
 execute q;
 +-[ RECORD 1 ]-----+
-| a+| xx           |
-|  +|              |
-| b |              |
-| a+| yyyyyyyyyyyy.|
-| b |.yyyyyy       |
+| ab+| xx          |
+|   +|             |
+| c  |             |
+| a +| yyyyyyyyyyy.|
+| bc |.yyyyyyy     |
 +-[ RECORD 2 ]-----+
-| a+| xxxx        +|
-|  +| xxxxxx      +|
-| b | xxxxxxxx    +|
-|   | xxxxxxxxxx  +|
-|   | xxxxxxxxxxxx+|
-|   | xxxxxxxxxxxx.|
-|   |.xx          +|
-|   | xxxxxxxxxxxx.|
-|   |.xxxx        +|
-|   | xxxxxxxxxxxx.|
-|   |.xxxxxx      +|
-|   | xxxxxxxxxxxx.|
-|   |.xxxxxxxx     |
-| a+| yyyyyyyyyyyy.|
-| b |.yyyy        +|
-|   | yyyyyyyyyyyy.|
-|   |.yy          +|
-|   | yyyyyyyyyyyy+|
-|   | yyyyyyyyyy  +|
-|   | yyyyyyyy    +|
-|   | yyyyyy      +|
-|   | yyyy        +|
-|   | yy          +|
-|   |              |
-+---+--------------+
+| ab+| xxxx       +|
+|   +| xxxxxx     +|
+| c  | xxxxxxxx   +|
+|    | xxxxxxxxxx +|
+|    | xxxxxxxxxxx.|
+|    |.x          +|
+|    | xxxxxxxxxxx.|
+|    |.xxx        +|
+|    | xxxxxxxxxxx.|
+|    |.xxxxx      +|
+|    | xxxxxxxxxxx.|
+|    |.xxxxxxx    +|
+|    | xxxxxxxxxxx.|
+|    |.xxxxxxxxx   |
+| a +| yyyyyyyyyyy.|
+| bc |.yyyyy      +|
+|    | yyyyyyyyyyy.|
+|    |.yyy        +|
+|    | yyyyyyyyyyy.|
+|    |.y          +|
+|    | yyyyyyyyyy +|
+|    | yyyyyyyy   +|
+|    | yyyyyy     +|
+|    | yyyy       +|
+|    | yy         +|
+|    |             |
++----+-------------+
 
 \pset linestyle old-ascii
 \pset expanded off
@@ -548,10 +557,10 @@ execute q;
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -573,9 +582,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-         a                   a         
-                    +        b         
-         b          +                  
+         ab                  a         
+                    +        bc        
+         c          +                  
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                 yyyyyyyyyyyyyyyy   
@@ -591,9 +600,9 @@ xxxxxxxxxxxxxxxxxxxx
 
 \pset format wrapped
 execute q;
-         a                   a         
-                    +        b         
-         b          +                  
+         ab                  a         
+                    +        bc        
+         c          +                  
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                 yyyyyyyyyyyyyyyy   
@@ -610,10 +619,10 @@ xxxxxxxxxxxxxxxxxxxx
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -635,9 +644,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-          a           |         a          
-+                     |+        b          
-+         b           |+                   
+          ab          |         a          
++                     |+        bc         
++         c           |+                   
 ----------------------+--------------------
  xx                   | yyyyyyyyyyyyyyyyyy
  xxxx                 | yyyyyyyyyyyyyyyy   
@@ -653,9 +662,9 @@ execute q;
 
 \pset format wrapped
 execute q;
-         a         |         a          
-+                  |+        b          
-+        b         |+                   
+        ab         |         a          
++                  |+        bc         
++        c         |+                   
 -------------------+--------------------
  xx                | yyyyyyyyyyyyyyyyyy
  xxxx              | yyyyyyyyyyyyyyyy   
@@ -674,10 +683,10 @@ execute q;
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -700,9 +709,9 @@ yy
 \pset format aligned
 execute q;
 +----------------------+--------------------+
-|          a           |         a          |
-|+                     |+        b          |
-|+         b           |+                   |
+|          ab          |         a          |
+|+                     |+        bc         |
+|+         c           |+                   |
 +----------------------+--------------------+
 | xx                   | yyyyyyyyyyyyyyyyyy |
 | xxxx                 | yyyyyyyyyyyyyyyy   |
@@ -720,9 +729,9 @@ execute q;
 \pset format wrapped
 execute q;
 +-----------------+--------------------+
-|        a        |         a          |
-|+                |+        b          |
-|+       b        |+                   |
+|       ab        |         a          |
+|+                |+        bc         |
+|+       c        |+                   |
 +-----------------+--------------------+
 | xx              | yyyyyyyyyyyyyyyyyy |
 | xxxx            | yyyyyyyyyyyyyyyy   |
@@ -745,15 +754,15 @@ execute q;
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -763,7 +772,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -774,73 +783,74 @@ yy
 
 \pset format aligned
 execute q;
-* Record 1           
- a  xx                   
+* Record 1            
+ ab xx                  
 +  
-+b 
- a  yyyyyyyyyyyyyyyyyy   
-+b 
-* Record 2           
- a  xxxx                 
-+   xxxxxx               
-+b  xxxxxxxx             
-    xxxxxxxxxx           
-    xxxxxxxxxxxx         
-    xxxxxxxxxxxxxx       
-    xxxxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxxxx 
- a  yyyyyyyyyyyyyyyy     
-+b  yyyyyyyyyyyyyy       
-    yyyyyyyyyyyy         
-    yyyyyyyyyy           
-    yyyyyyyy             
-    yyyyyy               
-    yyyy                 
-    yy                   
-                         
++c 
+ a  yyyyyyyyyyyyyyyyyy  
++bc
+* Record 2            
+ ab xxxx                
++   xxxxxx              
++c  xxxxxxxx            
+    xxxxxxxxxx          
+    xxxxxxxxxxxx        
+    xxxxxxxxxxxxxx      
+    xxxxxxxxxxxxxxxx    
+    xxxxxxxxxxxxxxxxxx  
+    xxxxxxxxxxxxxxxxxxxx
+ a  yyyyyyyyyyyyyyyy    
++bc yyyyyyyyyyyyyy      
+    yyyyyyyyyyyy        
+    yyyyyyyyyy          
+    yyyyyyyy            
+    yyyyyy              
+    yyyy                
+    yy                  
+                        
 
 \pset format wrapped
 execute q;
-* Record 1         
- a  xx                 
+* Record 1        
+ ab xx              
 +  
-+b 
- a  yyyyyyyyyyyyyyyyyy 
-+b 
-* Record 2         
- a  xxxx               
-+   xxxxxx             
-+b  xxxxxxxx           
-    xxxxxxxxxx         
-    xxxxxxxxxxxx       
-    xxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxx 
-    xxxxxxxxxxxxxxxxxx 
-    xx                 
- a  yyyyyyyyyyyyyyyy   
-+b  yyyyyyyyyyyyyy     
-    yyyyyyyyyyyy       
-    yyyyyyyyyy         
-    yyyyyyyy           
-    yyyyyy             
-    yyyy               
-    yy                 
-                       
++c 
+ a  yyyyyyyyyyyyyyyy
++bc yy              
+* Record 2        
+ ab xxxx            
++   xxxxxx          
++c  xxxxxxxx        
+    xxxxxxxxxx      
+    xxxxxxxxxxxx    
+    xxxxxxxxxxxxxx  
+    xxxxxxxxxxxxxxxx
+    xxxxxxxxxxxxxxxx
+    xx              
+    xxxxxxxxxxxxxxxx
+    xxxx            
+ a  yyyyyyyyyyyyyyyy
++bc yyyyyyyyyyyyyy  
+    yyyyyyyyyyyy    
+    yyyyyyyyyy      
+    yyyyyyyy        
+    yyyyyy          
+    yyyy            
+    yy              
+                    
 
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -850,7 +860,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -861,74 +871,78 @@ yy
 
 \pset format aligned
 execute q;
--[ RECORD 1 ]-----------
- a | xx                   
-+  ;
-+b ;
- a | yyyyyyyyyyyyyyyyyy   
-+b ;
--[ RECORD 2 ]-----------
- a | xxxx                 
-+  : xxxxxx               
-+b : xxxxxxxx             
-   : xxxxxxxxxx           
-   : xxxxxxxxxxxx         
-   : xxxxxxxxxxxxxx       
-   : xxxxxxxxxxxxxxxx     
-   : xxxxxxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxxxxxx 
- a | yyyyyyyyyyyyyyyy     
-+b : yyyyyyyyyyyyyy       
-   : yyyyyyyyyyyy         
-   : yyyyyyyyyy           
-   : yyyyyyyy             
-   : yyyyyy               
-   : yyyy                 
-   : yy                   
-   :                      
+-[ RECORD 1 ]--------------
+ ab | xx                   
++   ;
++c  ;
+ a  | yyyyyyyyyyyyyyyyyy   
++bc ;
+-[ RECORD 2 ]--------------
+ ab | xxxx                 
++   : xxxxxx               
++c  : xxxxxxxx             
+    : xxxxxxxxxx           
+    : xxxxxxxxxxxx         
+    : xxxxxxxxxxxxxx       
+    : xxxxxxxxxxxxxxxx     
+    : xxxxxxxxxxxxxxxxxx   
+    : xxxxxxxxxxxxxxxxxxxx 
+ a  | yyyyyyyyyyyyyyyy     
++bc : yyyyyyyyyyyyyy       
+    : yyyyyyyyyyyy         
+    : yyyyyyyyyy           
+    : yyyyyyyy             
+    : yyyyyy               
+    : yyyy                 
+    : yy                   
+    :                      
 
 \pset format wrapped
 execute q;
 -[ RECORD 1 ]-------
- a | xx               
-+  ;
-+b ;
- a | yyyyyyyyyyyyyyyy 
-+b ; yy               
+ ab | xx            
++   ;
++c  ;
+ a  | yyyyyyyyyyyyy 
++bc ; yyyyy         
 -[ RECORD 2 ]-------
- a | xxxx             
-+  : xxxxxx           
-+b : xxxxxxxx         
-   : xxxxxxxxxx       
-   : xxxxxxxxxxxx     
-   : xxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxx 
-   : xxxxxxxxxxxxxxxx 
-   ; xx               
-   : xxxxxxxxxxxxxxxx 
-   ; xxxx             
- a | yyyyyyyyyyyyyyyy 
-+b : yyyyyyyyyyyyyy   
-   : yyyyyyyyyyyy     
-   : yyyyyyyyyy       
-   : yyyyyyyy         
-   : yyyyyy           
-   : yyyy             
-   : yy               
-   :                  
+ ab | xxxx          
++   : xxxxxx        
++c  : xxxxxxxx      
+    : xxxxxxxxxx    
+    : xxxxxxxxxxxx  
+    : xxxxxxxxxxxxx 
+    ; x             
+    : xxxxxxxxxxxxx 
+    ; xxx           
+    : xxxxxxxxxxxxx 
+    ; xxxxx         
+    : xxxxxxxxxxxxx 
+    ; xxxxxxx       
+ a  | yyyyyyyyyyyyy 
++bc ; yyy           
+    : yyyyyyyyyyyyy 
+    ; y             
+    : yyyyyyyyyyyy  
+    : yyyyyyyyyy    
+    : yyyyyyyy      
+    : yyyyyy        
+    : yyyy          
+    : yy            
+    :               
 
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -938,7 +952,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -949,66 +963,1031 @@ yy
 
 \pset format aligned
 execute q;
-+-[ RECORD 1 ]-------------+
-| a | xx                   |
-|+  ;                      |
-|+b ;                      |
-| a | yyyyyyyyyyyyyyyyyy   |
-|+b ;                      |
-+-[ RECORD 2 ]-------------+
-| a | xxxx                 |
-|+  : xxxxxx               |
-|+b : xxxxxxxx             |
-|   : xxxxxxxxxx           |
-|   : xxxxxxxxxxxx         |
-|   : xxxxxxxxxxxxxx       |
-|   : xxxxxxxxxxxxxxxx     |
-|   : xxxxxxxxxxxxxxxxxx   |
-|   : xxxxxxxxxxxxxxxxxxxx |
-| a | yyyyyyyyyyyyyyyy     |
-|+b : yyyyyyyyyyyyyy       |
-|   : yyyyyyyyyyyy         |
-|   : yyyyyyyyyy           |
-|   : yyyyyyyy             |
-|   : yyyyyy               |
-|   : yyyy                 |
-|   : yy                   |
-|   :                      |
-+---+----------------------+
++-[ RECORD 1 ]--------------+
+| ab | xx                   |
+|+   ;                      |
+|+c  ;                      |
+| a  | yyyyyyyyyyyyyyyyyy   |
+|+bc ;                      |
++-[ RECORD 2 ]--------------+
+| ab | xxxx                 |
+|+   : xxxxxx               |
+|+c  : xxxxxxxx             |
+|    : xxxxxxxxxx           |
+|    : xxxxxxxxxxxx         |
+|    : xxxxxxxxxxxxxx       |
+|    : xxxxxxxxxxxxxxxx     |
+|    : xxxxxxxxxxxxxxxxxx   |
+|    : xxxxxxxxxxxxxxxxxxxx |
+| a  | yyyyyyyyyyyyyyyy     |
+|+bc : yyyyyyyyyyyyyy       |
+|    : yyyyyyyyyyyy         |
+|    : yyyyyyyyyy           |
+|    : yyyyyyyy             |
+|    : yyyyyy               |
+|    : yyyy                 |
+|    : yy                   |
+|    :                      |
++----+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-----+
+| ab | xx          |
+|+   ;             |
+|+c  ;             |
+| a  | yyyyyyyyyyy |
+|+bc ; yyyyyyy     |
++-[ RECORD 2 ]-----+
+| ab | xxxx        |
+|+   : xxxxxx      |
+|+c  : xxxxxxxx    |
+|    : xxxxxxxxxx  |
+|    : xxxxxxxxxxx |
+|    ; x           |
+|    : xxxxxxxxxxx |
+|    ; xxx         |
+|    : xxxxxxxxxxx |
+|    ; xxxxx       |
+|    : xxxxxxxxxxx |
+|    ; xxxxxxx     |
+|    : xxxxxxxxxxx |
+|    ; xxxxxxxxx   |
+| a  | yyyyyyyyyyy |
+|+bc ; yyyyy       |
+|    : yyyyyyyyyyy |
+|    ; yyy         |
+|    : yyyyyyyyyyy |
+|    ; y           |
+|    : yyyyyyyyyy  |
+|    : yyyyyyyy    |
+|    : yyyyyy      |
+|    : yyyy        |
+|    : yy          |
+|    :             |
++----+-------------+
+
+deallocate q;
+-- test single-line header and data
+prepare q as select repeat('x',2*n) as "abcde", repeat('y',20-2*n) as "a" from generate_series(1,10) as n;
+\pset linestyle ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+       abcde                 a          
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset format wrapped
+execute q;
+       abcde                 a          
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+        abcde         |         a          
+----------------------+--------------------
+ xx                   | yyyyyyyyyyyyyyyyyy
+ xxxx                 | yyyyyyyyyyyyyyyy
+ xxxxxx               | yyyyyyyyyyyyyy
+ xxxxxxxx             | yyyyyyyyyyyy
+ xxxxxxxxxx           | yyyyyyyyyy
+ xxxxxxxxxxxx         | yyyyyyyy
+ xxxxxxxxxxxxxx       | yyyyyy
+ xxxxxxxxxxxxxxxx     | yyyy
+ xxxxxxxxxxxxxxxxxx   | yy
+ xxxxxxxxxxxxxxxxxxxx | 
+(10 rows)
+
+\pset format wrapped
+execute q;
+        abcde        |        a         
+---------------------+------------------
+ xx                  | yyyyyyyyyyyyyyyy.
+                     |.yy
+ xxxx                | yyyyyyyyyyyyyyyy
+ xxxxxx              | yyyyyyyyyyyyyy
+ xxxxxxxx            | yyyyyyyyyyyy
+ xxxxxxxxxx          | yyyyyyyyyy
+ xxxxxxxxxxxx        | yyyyyyyy
+ xxxxxxxxxxxxxx      | yyyyyy
+ xxxxxxxxxxxxxxxx    | yyyy
+ xxxxxxxxxxxxxxxxxx  | yy
+ xxxxxxxxxxxxxxxxxxx.| 
+.x                   | 
+(10 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+|        abcde         |         a          |
++----------------------+--------------------+
+| xx                   | yyyyyyyyyyyyyyyyyy |
+| xxxx                 | yyyyyyyyyyyyyyyy   |
+| xxxxxx               | yyyyyyyyyyyyyy     |
+| xxxxxxxx             | yyyyyyyyyyyy       |
+| xxxxxxxxxx           | yyyyyyyyyy         |
+| xxxxxxxxxxxx         | yyyyyyyy           |
+| xxxxxxxxxxxxxx       | yyyyyy             |
+| xxxxxxxxxxxxxxxx     | yyyy               |
+| xxxxxxxxxxxxxxxxxx   | yy                 |
+| xxxxxxxxxxxxxxxxxxxx |                    |
++----------------------+--------------------+
+(10 rows)
+
+\pset format wrapped
+execute q;
++--------------------+-----------------+
+|       abcde        |        a        |
++--------------------+-----------------+
+| xx                 | yyyyyyyyyyyyyyy.|
+|                    |.yyy             |
+| xxxx               | yyyyyyyyyyyyyyy.|
+|                    |.y               |
+| xxxxxx             | yyyyyyyyyyyyyy  |
+| xxxxxxxx           | yyyyyyyyyyyy    |
+| xxxxxxxxxx         | yyyyyyyyyy      |
+| xxxxxxxxxxxx       | yyyyyyyy        |
+| xxxxxxxxxxxxxx     | yyyyyy          |
+| xxxxxxxxxxxxxxxx   | yyyy            |
+| xxxxxxxxxxxxxxxxxx | yy              |
+| xxxxxxxxxxxxxxxxxx.|                 |
+|.xx                 |                 |
++--------------------+-----------------+
+(10 rows)
+
+\pset expanded on
+\pset columns 20
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+a|yyyyyyyyyyyyyyyy
+
+abcde|xxxxxx
+a|yyyyyyyyyyyyyy
+
+abcde|xxxxxxxx
+a|yyyyyyyyyyyy
+
+abcde|xxxxxxxxxx
+a|yyyyyyyyyy
+
+abcde|xxxxxxxxxxxx
+a|yyyyyyyy
+
+abcde|xxxxxxxxxxxxxx
+a|yyyyyy
+
+abcde|xxxxxxxxxxxxxxxx
+a|yyyy
+
+abcde|xxxxxxxxxxxxxxxxxx
+a|yy
+
+abcde|xxxxxxxxxxxxxxxxxxxx
+a|
+\pset format aligned
+execute q;
+* Record 1               
+abcde xx                  
+a     yyyyyyyyyyyyyyyyyy  
+* Record 2               
+abcde xxxx                
+a     yyyyyyyyyyyyyyyy    
+* Record 3               
+abcde xxxxxx              
+a     yyyyyyyyyyyyyy      
+* Record 4               
+abcde xxxxxxxx            
+a     yyyyyyyyyyyy        
+* Record 5               
+abcde xxxxxxxxxx          
+a     yyyyyyyyyy          
+* Record 6               
+abcde xxxxxxxxxxxx        
+a     yyyyyyyy            
+* Record 7               
+abcde xxxxxxxxxxxxxx      
+a     yyyyyy              
+* Record 8               
+abcde xxxxxxxxxxxxxxxx    
+a     yyyy                
+* Record 9               
+abcde xxxxxxxxxxxxxxxxxx  
+a     yy                  
+* Record 10              
+abcde xxxxxxxxxxxxxxxxxxxx
+a                         
+
+\pset format wrapped
+execute q;
+* Record 1        
+abcde xx            
+a     yyyyyyyyyyyyy.
+     .yyyyy         
+* Record 2        
+abcde xxxx          
+a     yyyyyyyyyyyyy.
+     .yyy           
+* Record 3        
+abcde xxxxxx        
+a     yyyyyyyyyyyyy.
+     .y             
+* Record 4        
+abcde xxxxxxxx      
+a     yyyyyyyyyyyy  
+* Record 5        
+abcde xxxxxxxxxx    
+a     yyyyyyyyyy    
+* Record 6        
+abcde xxxxxxxxxxxx  
+a     yyyyyyyy      
+* Record 7        
+abcde xxxxxxxxxxxxx.
+     .x             
+a     yyyyyy        
+* Record 8        
+abcde xxxxxxxxxxxxx.
+     .xxx           
+a     yyyy          
+* Record 9        
+abcde xxxxxxxxxxxxx.
+     .xxxxx         
+a     yy            
+* Record 10       
+abcde xxxxxxxxxxxxx.
+     .xxxxxxx       
+a                   
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+a|yyyyyyyyyyyyyyyy
+
+abcde|xxxxxx
+a|yyyyyyyyyyyyyy
+
+abcde|xxxxxxxx
+a|yyyyyyyyyyyy
+
+abcde|xxxxxxxxxx
+a|yyyyyyyyyy
+
+abcde|xxxxxxxxxxxx
+a|yyyyyyyy
+
+abcde|xxxxxxxxxxxxxx
+a|yyyyyy
+
+abcde|xxxxxxxxxxxxxxxx
+a|yyyy
+
+abcde|xxxxxxxxxxxxxxxxxx
+a|yy
+
+abcde|xxxxxxxxxxxxxxxxxxxx
+a|
+\pset format aligned
+execute q;
+-[ RECORD 1 ]-----------------
+ abcde | xx                   
+ a     | yyyyyyyyyyyyyyyyyy   
+-[ RECORD 2 ]-----------------
+ abcde | xxxx                 
+ a     | yyyyyyyyyyyyyyyy     
+-[ RECORD 3 ]-----------------
+ abcde | xxxxxx               
+ a     | yyyyyyyyyyyyyy       
+-[ RECORD 4 ]-----------------
+ abcde | xxxxxxxx             
+ a     | yyyyyyyyyyyy         
+-[ RECORD 5 ]-----------------
+ abcde | xxxxxxxxxx           
+ a     | yyyyyyyyyy           
+-[ RECORD 6 ]-----------------
+ abcde | xxxxxxxxxxxx         
+ a     | yyyyyyyy             
+-[ RECORD 7 ]-----------------
+ abcde | xxxxxxxxxxxxxx       
+ a     | yyyyyy               
+-[ RECORD 8 ]-----------------
+ abcde | xxxxxxxxxxxxxxxx     
+ a     | yyyy                 
+-[ RECORD 9 ]-----------------
+ abcde | xxxxxxxxxxxxxxxxxx   
+ a     | yy                   
+-[ RECORD 10 ]----------------
+ abcde | xxxxxxxxxxxxxxxxxxxx 
+ a     |                      
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]-------
+ abcde | xx         
+ a     | yyyyyyyyyy.
+       |.yyyyyyyy   
+-[ RECORD 2 ]-------
+ abcde | xxxx       
+ a     | yyyyyyyyyy.
+       |.yyyyyy     
+-[ RECORD 3 ]-------
+ abcde | xxxxxx     
+ a     | yyyyyyyyyy.
+       |.yyyy       
+-[ RECORD 4 ]-------
+ abcde | xxxxxxxx   
+ a     | yyyyyyyyyy.
+       |.yy         
+-[ RECORD 5 ]-------
+ abcde | xxxxxxxxxx 
+ a     | yyyyyyyyyy 
+-[ RECORD 6 ]-------
+ abcde | xxxxxxxxxx.
+       |.xx         
+ a     | yyyyyyyy   
+-[ RECORD 7 ]-------
+ abcde | xxxxxxxxxx.
+       |.xxxx       
+ a     | yyyyyy     
+-[ RECORD 8 ]-------
+ abcde | xxxxxxxxxx.
+       |.xxxxxx     
+ a     | yyyy       
+-[ RECORD 9 ]-------
+ abcde | xxxxxxxxxx.
+       |.xxxxxxxx   
+ a     | yy         
+-[ RECORD 10 ]------
+ abcde | xxxxxxxxxx.
+       |.xxxxxxxxxx 
+ a     |            
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+a|yyyyyyyyyyyyyyyy
+
+abcde|xxxxxx
+a|yyyyyyyyyyyyyy
+
+abcde|xxxxxxxx
+a|yyyyyyyyyyyy
+
+abcde|xxxxxxxxxx
+a|yyyyyyyyyy
+
+abcde|xxxxxxxxxxxx
+a|yyyyyyyy
+
+abcde|xxxxxxxxxxxxxx
+a|yyyyyy
+
+abcde|xxxxxxxxxxxxxxxx
+a|yyyy
+
+abcde|xxxxxxxxxxxxxxxxxx
+a|yy
+
+abcde|xxxxxxxxxxxxxxxxxxxx
+a|
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----------------+
+| abcde | xx                   |
+| a     | yyyyyyyyyyyyyyyyyy   |
++-[ RECORD 2 ]-----------------+
+| abcde | xxxx                 |
+| a     | yyyyyyyyyyyyyyyy     |
++-[ RECORD 3 ]-----------------+
+| abcde | xxxxxx               |
+| a     | yyyyyyyyyyyyyy       |
++-[ RECORD 4 ]-----------------+
+| abcde | xxxxxxxx             |
+| a     | yyyyyyyyyyyy         |
++-[ RECORD 5 ]-----------------+
+| abcde | xxxxxxxxxx           |
+| a     | yyyyyyyyyy           |
++-[ RECORD 6 ]-----------------+
+| abcde | xxxxxxxxxxxx         |
+| a     | yyyyyyyy             |
++-[ RECORD 7 ]-----------------+
+| abcde | xxxxxxxxxxxxxx       |
+| a     | yyyyyy               |
++-[ RECORD 8 ]-----------------+
+| abcde | xxxxxxxxxxxxxxxx     |
+| a     | yyyy                 |
++-[ RECORD 9 ]-----------------+
+| abcde | xxxxxxxxxxxxxxxxxx   |
+| a     | yy                   |
++-[ RECORD 10 ]----------------+
+| abcde | xxxxxxxxxxxxxxxxxxxx |
+| a     |                      |
++-------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-----+
+| abcde | xx       |
+| a     | yyyyyyyy.|
+|       |.yyyyyyyy.|
+|       |.yy       |
++-[ RECORD 2 ]-----+
+| abcde | xxxx     |
+| a     | yyyyyyyy.|
+|       |.yyyyyyyy |
++-[ RECORD 3 ]-----+
+| abcde | xxxxxx   |
+| a     | yyyyyyyy.|
+|       |.yyyyyy   |
++-[ RECORD 4 ]-----+
+| abcde | xxxxxxxx |
+| a     | yyyyyyyy.|
+|       |.yyyy     |
++-[ RECORD 5 ]-----+
+| abcde | xxxxxxxx.|
+|       |.xx       |
+| a     | yyyyyyyy.|
+|       |.yy       |
++-[ RECORD 6 ]-----+
+| abcde | xxxxxxxx.|
+|       |.xxxx     |
+| a     | yyyyyyyy |
++-[ RECORD 7 ]-----+
+| abcde | xxxxxxxx.|
+|       |.xxxxxx   |
+| a     | yyyyyy   |
++-[ RECORD 8 ]-----+
+| abcde | xxxxxxxx.|
+|       |.xxxxxxxx |
+| a     | yyyy     |
++-[ RECORD 9 ]-----+
+| abcde | xxxxxxxx.|
+|       |.xxxxxxxx.|
+|       |.xx       |
+| a     | yy       |
++-[ RECORD 10 ]----+
+| abcde | xxxxxxxx.|
+|       |.xxxxxxxx.|
+|       |.xxxx     |
+| a     |          |
++-------+----------+
+
+\pset linestyle old-ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+       abcde                 a         
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset format wrapped
+execute q;
+       abcde                 a         
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+        abcde         |         a          
+----------------------+--------------------
+ xx                   | yyyyyyyyyyyyyyyyyy
+ xxxx                 | yyyyyyyyyyyyyyyy
+ xxxxxx               | yyyyyyyyyyyyyy
+ xxxxxxxx             | yyyyyyyyyyyy
+ xxxxxxxxxx           | yyyyyyyyyy
+ xxxxxxxxxxxx         | yyyyyyyy
+ xxxxxxxxxxxxxx       | yyyyyy
+ xxxxxxxxxxxxxxxx     | yyyy
+ xxxxxxxxxxxxxxxxxx   | yy
+ xxxxxxxxxxxxxxxxxxxx | 
+(10 rows)
+
+\pset format wrapped
+execute q;
+        abcde        |        a         
+---------------------+------------------
+ xx                  | yyyyyyyyyyyyyyyy 
+                     ; yy
+ xxxx                | yyyyyyyyyyyyyyyy
+ xxxxxx              | yyyyyyyyyyyyyy
+ xxxxxxxx            | yyyyyyyyyyyy
+ xxxxxxxxxx          | yyyyyyyyyy
+ xxxxxxxxxxxx        | yyyyyyyy
+ xxxxxxxxxxxxxx      | yyyyyy
+ xxxxxxxxxxxxxxxx    | yyyy
+ xxxxxxxxxxxxxxxxxx  | yy
+ xxxxxxxxxxxxxxxxxxx | 
+ x                     
+(10 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|a
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+|        abcde         |         a          |
++----------------------+--------------------+
+| xx                   | yyyyyyyyyyyyyyyyyy |
+| xxxx                 | yyyyyyyyyyyyyyyy   |
+| xxxxxx               | yyyyyyyyyyyyyy     |
+| xxxxxxxx             | yyyyyyyyyyyy       |
+| xxxxxxxxxx           | yyyyyyyyyy         |
+| xxxxxxxxxxxx         | yyyyyyyy           |
+| xxxxxxxxxxxxxx       | yyyyyy             |
+| xxxxxxxxxxxxxxxx     | yyyy               |
+| xxxxxxxxxxxxxxxxxx   | yy                 |
+| xxxxxxxxxxxxxxxxxxxx |                    |
++----------------------+--------------------+
+(10 rows)
+
+\pset format wrapped
+execute q;
++--------------------+-----------------+
+|       abcde        |        a        |
++--------------------+-----------------+
+| xx                 | yyyyyyyyyyyyyyy |
+|                    ; yyy             |
+| xxxx               | yyyyyyyyyyyyyyy |
+|                    ; y               |
+| xxxxxx             | yyyyyyyyyyyyyy  |
+| xxxxxxxx           | yyyyyyyyyyyy    |
+| xxxxxxxxxx         | yyyyyyyyyy      |
+| xxxxxxxxxxxx       | yyyyyyyy        |
+| xxxxxxxxxxxxxx     | yyyyyy          |
+| xxxxxxxxxxxxxxxx   | yyyy            |
+| xxxxxxxxxxxxxxxxxx | yy              |
+| xxxxxxxxxxxxxxxxxx |                 |
+| xx                                   |
++--------------------+-----------------+
+(10 rows)
+
+\pset expanded on
+\pset columns 20
+\pset border 0
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+a|yyyyyyyyyyyyyyyy
+
+abcde|xxxxxx
+a|yyyyyyyyyyyyyy
+
+abcde|xxxxxxxx
+a|yyyyyyyyyyyy
+
+abcde|xxxxxxxxxx
+a|yyyyyyyyyy
+
+abcde|xxxxxxxxxxxx
+a|yyyyyyyy
+
+abcde|xxxxxxxxxxxxxx
+a|yyyyyy
+
+abcde|xxxxxxxxxxxxxxxx
+a|yyyy
+
+abcde|xxxxxxxxxxxxxxxxxx
+a|yy
+
+abcde|xxxxxxxxxxxxxxxxxxxx
+a|
+\pset format aligned
+execute q;
+* Record 1               
+abcde xx                  
+a     yyyyyyyyyyyyyyyyyy  
+* Record 2               
+abcde xxxx                
+a     yyyyyyyyyyyyyyyy    
+* Record 3               
+abcde xxxxxx              
+a     yyyyyyyyyyyyyy      
+* Record 4               
+abcde xxxxxxxx            
+a     yyyyyyyyyyyy        
+* Record 5               
+abcde xxxxxxxxxx          
+a     yyyyyyyyyy          
+* Record 6               
+abcde xxxxxxxxxxxx        
+a     yyyyyyyy            
+* Record 7               
+abcde xxxxxxxxxxxxxx      
+a     yyyyyy              
+* Record 8               
+abcde xxxxxxxxxxxxxxxx    
+a     yyyy                
+* Record 9               
+abcde xxxxxxxxxxxxxxxxxx  
+a     yy                  
+* Record 10              
+abcde xxxxxxxxxxxxxxxxxxxx
+a                         
+
+\pset format wrapped
+execute q;
+* Record 1         
+abcde xx            
+a     yyyyyyyyyyyyyy
+      yyyy          
+* Record 2         
+abcde xxxx          
+a     yyyyyyyyyyyyyy
+      yy            
+* Record 3         
+abcde xxxxxx        
+a     yyyyyyyyyyyyyy
+* Record 4         
+abcde xxxxxxxx      
+a     yyyyyyyyyyyy  
+* Record 5         
+abcde xxxxxxxxxx    
+a     yyyyyyyyyy    
+* Record 6         
+abcde xxxxxxxxxxxx  
+a     yyyyyyyy      
+* Record 7         
+abcde xxxxxxxxxxxxxx
+a     yyyyyy        
+* Record 8         
+abcde xxxxxxxxxxxxxx
+      xx            
+a     yyyy          
+* Record 9         
+abcde xxxxxxxxxxxxxx
+      xxxx          
+a     yy            
+* Record 10        
+abcde xxxxxxxxxxxxxx
+      xxxxxx        
+a                   
+
+\pset border 1
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+a|yyyyyyyyyyyyyyyy
+
+abcde|xxxxxx
+a|yyyyyyyyyyyyyy
+
+abcde|xxxxxxxx
+a|yyyyyyyyyyyy
+
+abcde|xxxxxxxxxx
+a|yyyyyyyyyy
+
+abcde|xxxxxxxxxxxx
+a|yyyyyyyy
+
+abcde|xxxxxxxxxxxxxx
+a|yyyyyy
+
+abcde|xxxxxxxxxxxxxxxx
+a|yyyy
+
+abcde|xxxxxxxxxxxxxxxxxx
+a|yy
+
+abcde|xxxxxxxxxxxxxxxxxxxx
+a|
+\pset format aligned
+execute q;
+-[ RECORD 1 ]-----------------
+ abcde | xx                   
+ a     | yyyyyyyyyyyyyyyyyy   
+-[ RECORD 2 ]-----------------
+ abcde | xxxx                 
+ a     | yyyyyyyyyyyyyyyy     
+-[ RECORD 3 ]-----------------
+ abcde | xxxxxx               
+ a     | yyyyyyyyyyyyyy       
+-[ RECORD 4 ]-----------------
+ abcde | xxxxxxxx             
+ a     | yyyyyyyyyyyy         
+-[ RECORD 5 ]-----------------
+ abcde | xxxxxxxxxx           
+ a     | yyyyyyyyyy           
+-[ RECORD 6 ]-----------------
+ abcde | xxxxxxxxxxxx         
+ a     | yyyyyyyy             
+-[ RECORD 7 ]-----------------
+ abcde | xxxxxxxxxxxxxx       
+ a     | yyyyyy               
+-[ RECORD 8 ]-----------------
+ abcde | xxxxxxxxxxxxxxxx     
+ a     | yyyy                 
+-[ RECORD 9 ]-----------------
+ abcde | xxxxxxxxxxxxxxxxxx   
+ a     | yy                   
+-[ RECORD 10 ]----------------
+ abcde | xxxxxxxxxxxxxxxxxxxx 
+ a     |                      
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]-------
+ abcde | xx         
+ a     | yyyyyyyyyy 
+       ; yyyyyyyy   
+-[ RECORD 2 ]-------
+ abcde | xxxx       
+ a     | yyyyyyyyyy 
+       ; yyyyyy     
+-[ RECORD 3 ]-------
+ abcde | xxxxxx     
+ a     | yyyyyyyyyy 
+       ; yyyy       
+-[ RECORD 4 ]-------
+ abcde | xxxxxxxx   
+ a     | yyyyyyyyyy 
+       ; yy         
+-[ RECORD 5 ]-------
+ abcde | xxxxxxxxxx 
+ a     | yyyyyyyyyy 
+-[ RECORD 6 ]-------
+ abcde | xxxxxxxxxx 
+       ; xx         
+ a     | yyyyyyyy   
+-[ RECORD 7 ]-------
+ abcde | xxxxxxxxxx 
+       ; xxxx       
+ a     | yyyyyy     
+-[ RECORD 8 ]-------
+ abcde | xxxxxxxxxx 
+       ; xxxxxx     
+ a     | yyyy       
+-[ RECORD 9 ]-------
+ abcde | xxxxxxxxxx 
+       ; xxxxxxxx   
+ a     | yy         
+-[ RECORD 10 ]------
+ abcde | xxxxxxxxxx 
+       ; xxxxxxxxxx 
+ a     |            
+
+\pset border 2
+\pset format unaligned
+execute q;
+abcde|xx
+a|yyyyyyyyyyyyyyyyyy
+
+abcde|xxxx
+a|yyyyyyyyyyyyyyyy
+
+abcde|xxxxxx
+a|yyyyyyyyyyyyyy
+
+abcde|xxxxxxxx
+a|yyyyyyyyyyyy
+
+abcde|xxxxxxxxxx
+a|yyyyyyyyyy
+
+abcde|xxxxxxxxxxxx
+a|yyyyyyyy
+
+abcde|xxxxxxxxxxxxxx
+a|yyyyyy
+
+abcde|xxxxxxxxxxxxxxxx
+a|yyyy
+
+abcde|xxxxxxxxxxxxxxxxxx
+a|yy
+
+abcde|xxxxxxxxxxxxxxxxxxxx
+a|
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----------------+
+| abcde | xx                   |
+| a     | yyyyyyyyyyyyyyyyyy   |
++-[ RECORD 2 ]-----------------+
+| abcde | xxxx                 |
+| a     | yyyyyyyyyyyyyyyy     |
++-[ RECORD 3 ]-----------------+
+| abcde | xxxxxx               |
+| a     | yyyyyyyyyyyyyy       |
++-[ RECORD 4 ]-----------------+
+| abcde | xxxxxxxx             |
+| a     | yyyyyyyyyyyy         |
++-[ RECORD 5 ]-----------------+
+| abcde | xxxxxxxxxx           |
+| a     | yyyyyyyyyy           |
++-[ RECORD 6 ]-----------------+
+| abcde | xxxxxxxxxxxx         |
+| a     | yyyyyyyy             |
++-[ RECORD 7 ]-----------------+
+| abcde | xxxxxxxxxxxxxx       |
+| a     | yyyyyy               |
++-[ RECORD 8 ]-----------------+
+| abcde | xxxxxxxxxxxxxxxx     |
+| a     | yyyy                 |
++-[ RECORD 9 ]-----------------+
+| abcde | xxxxxxxxxxxxxxxxxx   |
+| a     | yy                   |
++-[ RECORD 10 ]----------------+
+| abcde | xxxxxxxxxxxxxxxxxxxx |
+| a     |                      |
++-------+----------------------+
 
 \pset format wrapped
 execute q;
 +-[ RECORD 1 ]-----+
-| a | xx           |
-|+  ;              |
-|+b ;              |
-| a | yyyyyyyyyyyy |
-|+b ; yyyyyy       |
+| abcde | xx       |
+| a     | yyyyyyyy |
+|       ; yyyyyyyy |
+|       ; yy       |
 +-[ RECORD 2 ]-----+
-| a | xxxx         |
-|+  : xxxxxx       |
-|+b : xxxxxxxx     |
-|   : xxxxxxxxxx   |
-|   : xxxxxxxxxxxx |
-|   : xxxxxxxxxxxx |
-|   ; xx           |
-|   : xxxxxxxxxxxx |
-|   ; xxxx         |
-|   : xxxxxxxxxxxx |
-|   ; xxxxxx       |
-|   : xxxxxxxxxxxx |
-|   ; xxxxxxxx     |
-| a | yyyyyyyyyyyy |
-|+b ; yyyy         |
-|   : yyyyyyyyyyyy |
-|   ; yy           |
-|   : yyyyyyyyyyyy |
-|   : yyyyyyyyyy   |
-|   : yyyyyyyy     |
-|   : yyyyyy       |
-|   : yyyy         |
-|   : yy           |
-|   :              |
-+---+--------------+
+| abcde | xxxx     |
+| a     | yyyyyyyy |
+|       ; yyyyyyyy |
++-[ RECORD 3 ]-----+
+| abcde | xxxxxx   |
+| a     | yyyyyyyy |
+|       ; yyyyyy   |
++-[ RECORD 4 ]-----+
+| abcde | xxxxxxxx |
+| a     | yyyyyyyy |
+|       ; yyyy     |
++-[ RECORD 5 ]-----+
+| abcde | xxxxxxxx |
+|       ; xx       |
+| a     | yyyyyyyy |
+|       ; yy       |
++-[ RECORD 6 ]-----+
+| abcde | xxxxxxxx |
+|       ; xxxx     |
+| a     | yyyyyyyy |
++-[ RECORD 7 ]-----+
+| abcde | xxxxxxxx |
+|       ; xxxxxx   |
+| a     | yyyyyy   |
++-[ RECORD 8 ]-----+
+| abcde | xxxxxxxx |
+|       ; xxxxxxxx |
+| a     | yyyy     |
++-[ RECORD 9 ]-----+
+| abcde | xxxxxxxx |
+|       ; xxxxxxxx |
+|       ; xx       |
+| a     | yy       |
++-[ RECORD 10 ]----+
+| abcde | xxxxxxxx |
+|       ; xxxxxxxx |
+|       ; xxxx     |
+| a     |          |
++-------+----------+
 
 deallocate q;
diff --git a/src/test/regress/sql/psql.sql b/src/test/regress/sql/psql.sql
index a7d5eeb..5ccc68f 100644
--- a/src/test/regress/sql/psql.sql
+++ b/src/test/regress/sql/psql.sql
@@ -42,10 +42,10 @@ select 10 as test01, 20 as test02 from generate_series(1,0) \gset
 \pset
 
 -- test multi-line headers, wrapping, and newline indicators
-prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "a
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "ab
 
-b", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
-b" from generate_series(1,10) as n(n) group by n>1 ;
+c", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
+bc" from generate_series(1,10) as n(n) group by n>1 ;
 
 \pset linestyle ascii
 
@@ -160,3 +160,119 @@ execute q;
 execute q;
 
 deallocate q;
+
+-- test single-line header and data
+prepare q as select repeat('x',2*n) as "0123456789abcdef", repeat('y',20-2*n) as "0123456789" from generate_series(1,10) as n;
+
+\pset linestyle ascii
+
+\pset expanded off
+\pset columns 40
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset expanded on
+\pset columns 20
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset linestyle old-ascii
+
+\pset expanded off
+\pset columns 40
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset expanded on
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+deallocate q;
#16Alvaro Herrera
alvherre@2ndquadrant.com
In reply to: Sergey Muraviov (#15)
Re: wrapping in extended mode doesn't work well with default pager

Sergey Muraviov wrote:

I found some new bugs and fix them.
And I had to make many changes.

This version fixes some bugs I had noticed in expanded mode too. For instance,
the original looked like this (five lines plus header):

-[ RECORD 49 ]-----+-------------------------------------------------------------------------
pg_identify_object | (rule,,,"""_RETURN"" on pg_catalog.pg_available_extension_versions")

pg_identify_object | (view,pg_catalog,pg_available_extension_versions,pg_catalog.pg_availabl
e.
|._extension_versions)

whereas it's correctly only three lines plus header with this patch
applied. I can't tell whether this patch is minimal enough.

Having a more comprehensive test case is good, of course, though I
didn't check the expected file. Note that some things cannot be tested
correctly in this way, namely column count that actually match the
terminal -- to wit: I had to add line breaks manually to the above paste
so that it would look like what it does in my terminal. If I just paste
it, it looks correct, but then my email terminal is wider than the one I
ran psql in. I would presume that failure to account for this is what
caused (some of?) the bugs being fixed now ...

--
�lvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#17Pavel Stehule
pavel.stehule@gmail.com
In reply to: Sergey Muraviov (#15)
Re: wrapping in extended mode doesn't work well with default pager

Hello

where we are with this feature?

Is there some barriers to commit bugfix?

Regards

Pavel

2014-05-18 19:46 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Show quoted text

I found some new bugs and fix them.
And I had to make many changes.

2014-05-17 21:31 GMT+04:00 Greg Stark <stark@mit.edu>:

Sorry, a couple things still look to not be quite right.

1) The width of the table when linestyle=old-ascii and border=0 or
border=1 (and expanded=on and format=wrapped) seems to off by one.

2) The hyphens following the RECORD NN are short by one

I'm surprised the last patch was so big since it sounded like a simple
off-by-one bug. It looks like you've removed the leading space on the
border=0 expanded case. I guess that makes sense but we should
probably stop making significant changes now and just focus on fixing
the off by one bugs.

--
Best regards,
Sergey Muraviov

#18Noah Misch
noah@leadboat.com
In reply to: Alvaro Herrera (#16)
2 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

On Fri, May 23, 2014 at 10:10:23AM -0400, Alvaro Herrera wrote:

Sergey Muraviov wrote:

I found some new bugs and fix them.
And I had to make many changes.

This version fixes some bugs I had noticed in expanded mode too. For instance,
the original looked like this (five lines plus header):

-[ RECORD 49 ]-----+-------------------------------------------------------------------------
pg_identify_object | (rule,,,"""_RETURN"" on pg_catalog.pg_available_extension_versions")

pg_identify_object | (view,pg_catalog,pg_available_extension_versions,pg_catalog.pg_availabl
e.
|._extension_versions)

whereas it's correctly only three lines plus header with this patch
applied.

I had noticed a similar-looking behavior change with aligned format and
expanded display, so I gave psql-wrapped-expanded-fix-v4.patch a spin with
this test case:

\pset expanded on
\pset format aligned
select repeat('a', 2) union all select repeat('a', 500);

The patch did not restore 9.3 behavior for that one. Starting with commit
6513633, the first line of letters is space-padded on the right to the width
of the second line of letters. To illustrate, I have attached raw psql output
from both commit 6513633 and its predecessor. Also note that
psql-wrapped-expanded-fix-v4.patch expands each [ RECORD x ] header from 509
bytes to 511 bytes; 509 is the longstanding width.

Thanks,
nm

--
Noah Misch
EnterpriseDB http://www.enterprisedb.com

Attachments:

out-6513633text/plain; charset=us-asciiDownload
out-6513633~1text/plain; charset=us-asciiDownload
#19Peter Eisentraut
peter_e@gmx.net
In reply to: Noah Misch (#18)
Re: wrapping in extended mode doesn't work well with default pager

On 6/8/14, 11:29 PM, Noah Misch wrote:

The patch did not restore 9.3 behavior for that one. Starting with commit
6513633, the first line of letters is space-padded on the right to the width
of the second line of letters. To illustrate, I have attached raw psql output
from both commit 6513633 and its predecessor. Also note that
psql-wrapped-expanded-fix-v4.patch expands each [ RECORD x ] header from 509
bytes to 511 bytes; 509 is the longstanding width.

I noticed that (or perhaps a related) problem today. Here is a simple demo:

psql -X -q -t -x -c 'select * from (values (1),(2)) as _ (col)'

9.3:

col | 1
----+--
col | 2

9.4:

col | 1
----+--
col | 2

This breaks check_postgres. (Why check_postgres doesn't use unaligned
output is beyond me.)

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#20Greg Stark
stark@mit.edu
In reply to: Peter Eisentraut (#19)
Re: wrapping in extended mode doesn't work well with default pager

On Wed, Jun 11, 2014 at 7:52 PM, Peter Eisentraut <peter_e@gmx.net> wrote:

On 6/8/14, 11:29 PM, Noah Misch wrote:

The patch did not restore 9.3 behavior for that one. Starting with commit
6513633, the first line of letters is space-padded on the right to the width
of the second line of letters. To illustrate, I have attached raw psql output
from both commit 6513633 and its predecessor. Also note that
psql-wrapped-expanded-fix-v4.patch expands each [ RECORD x ] header from 509
bytes to 511 bytes; 509 is the longstanding width.

I noticed that (or perhaps a related) problem today. Here is a simple demo:

I don't think these two issues are related.

The leading space that you (ie Peter) are complaining about in:

col | 1
----+--
col | 2

Is there because if the cell wrapped it would get an ellipsis (ie
'...' but it's a single unicode character) in that column to indicate
that it's wrapped. However we don't wrap headers so the only reason to
change it is for the "old-ascii" linestyle:

stark=***# select * from (values (1),(2)) as _ ("col
col");
stark"***#
col | 1
+col ;
-----+-----
col | 2
+col ;

Noah's complaint is about the space padding on the *right*. Ie

stark=***# select * from (values ('foo'),('foo bar baz')) as _ ("col");
col | foo
<- This is the end of the line
-----+--------------------------------------------------------------------------<-
This is the end of the line
col | foo bar baz
<- This is the end of the line

We didn't used to do that in expanded and I kind of agree it would be
nice to avoid. But then there are lots of cases where it would still
be necessary:

stark=***# select * from (values ('foo'),('foo bar
 baz')) as _ ("col");
stark'***#
 col | foo
         <- This is the end of the line
-----+--------------------------------------------------------------------------<-
This is the end of the line
 col | foo bar
        +<- This is the end of the line
     |  baz
        <- This is the end of the line

Obviously we would need to space padd to insert the "+" there.

I think this whole exercise has mostly just convinced me we should
implement an HTTP interface and reimplement psql as a browser app.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#21Greg Stark
stark@mit.edu
In reply to: Greg Stark (#20)
Re: wrapping in extended mode doesn't work well with default pager

And Gmail has thoroughly mangled that email. Let me see if I can
resend it from Emacs more clearly.

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#22Noah Misch
noah@leadboat.com
In reply to: Greg Stark (#20)
Re: wrapping in extended mode doesn't work well with default pager

On Wed, Jun 11, 2014 at 08:59:34PM +0100, Greg Stark wrote:

The leading space that you (ie Peter) are complaining about in:

col | 1
----+--
col | 2

Is there because if the cell wrapped it would get an ellipsis (ie
'...' but it's a single unicode character) in that column to indicate
that it's wrapped. However we don't wrap headers so the only reason to
change it is for the "old-ascii" linestyle:

stark=***# select * from (values (1),(2)) as _ ("col
col");
stark"***#
col | 1
+col ;
-----+-----
col | 2
+col ;

Noah's complaint is about the space padding on the *right*. Ie

stark=***# select * from (values ('foo'),('foo bar baz')) as _ ("col");
col | foo
<- This is the end of the line
-----+--------------------------------------------------------------------------<-
This is the end of the line
col | foo bar baz
<- This is the end of the line

We didn't used to do that in expanded and I kind of agree it would be
nice to avoid.

Based on the commit message and procedural history, I thought commit 6513633
was changing behavior solely for the combination of "\pset expanded" and
"\pset format wrapped". Peter's and my test cases show that it also changed
behavior for "\pset expanded" alone. That's a bug, unless someone sees to
argue that the new "\pset expanded" behavior is a desirable improvement in
spite of its origin as an accident. Altering an entrenched psql output format
is a big deal.

--
Noah Misch
EnterpriseDB http://www.enterprisedb.com

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#23Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noah Misch (#22)
Re: wrapping in extended mode doesn't work well with default pager

Noah Misch <noah@leadboat.com> writes:

Based on the commit message and procedural history, I thought commit 6513633
was changing behavior solely for the combination of "\pset expanded" and
"\pset format wrapped". Peter's and my test cases show that it also changed
behavior for "\pset expanded" alone. That's a bug, unless someone sees to
argue that the new "\pset expanded" behavior is a desirable improvement in
spite of its origin as an accident. Altering an entrenched psql output format
is a big deal.

TBH I'm wondering if we shouldn't just revert that patch (and the
subsequent fix attempts). It was not a major feature and I'm thinking
we have better things to do right now than try to fix the multiple
logic holes it evidently has. The author's certainly welcome to try
again with a more carefully thought-through patch for 9.5.

regards, tom lane

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#24Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Tom Lane (#23)
1 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

Hi.

I tried to take into account all of yours comments.

PS
This patch prints newline indicators in aligned mode, but this
functionality can be easily disabled.

PPS
I'm on vacations now and don't read mail everyday.

2014-06-12 6:16 GMT+04:00 Tom Lane <tgl@sss.pgh.pa.us>:

Noah Misch <noah@leadboat.com> writes:

Based on the commit message and procedural history, I thought commit

6513633

was changing behavior solely for the combination of "\pset expanded" and
"\pset format wrapped". Peter's and my test cases show that it also

changed

behavior for "\pset expanded" alone. That's a bug, unless someone sees

to

argue that the new "\pset expanded" behavior is a desirable improvement

in

spite of its origin as an accident. Altering an entrenched psql output

format

is a big deal.

TBH I'm wondering if we shouldn't just revert that patch (and the
subsequent fix attempts). It was not a major feature and I'm thinking
we have better things to do right now than try to fix the multiple
logic holes it evidently has. The author's certainly welcome to try
again with a more carefully thought-through patch for 9.5.

regards, tom lane

--
Best regards,
Sergey Muraviov

Attachments:

psql-wrapped-expanded-fix-v5.patchtext/x-patch; charset=US-ASCII; name=psql-wrapped-expanded-fix-v5.patchDownload
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 62850d8..5e63169 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -1160,7 +1160,9 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				dformatsize = 0;
 	struct lineptr *hlineptr,
 			   *dlineptr;
-	bool		is_pager = false;
+	bool		is_pager = false,
+				hmultiline = false,
+				dmultiline = false;
 	int			output_columns = 0;		/* Width of interactive console */
 
 	if (cancel_pressed)
@@ -1196,7 +1198,10 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 		if (width > hwidth)
 			hwidth = width;
 		if (height > hheight)
+		{
 			hheight = height;
+			hmultiline = true;
+		}
 		if (fs > hformatsize)
 			hformatsize = fs;
 	}
@@ -1213,7 +1218,10 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 		if (width > dwidth)
 			dwidth = width;
 		if (height > dheight)
+		{
 			dheight = height;
+			dmultiline = true;
+		}
 		if (fs > dformatsize)
 			dformatsize = fs;
 	}
@@ -1258,45 +1266,82 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 	if (cont->opt->format == PRINT_WRAPPED)
 	{
 		/*
-		 * Calculate the available width to wrap the columns to after
-		 * subtracting the maximum header width and separators. At a minimum
-		 * enough to print "[ RECORD N ]"
+		 * Separators width
 		 */
 		unsigned int width,
-					swidth;
+					min_width,
+					swidth,
+					iwidth = 0;
 
 		if (opt_border == 0)
-			swidth = 1;			/* "header data" */
+		{
+			/*
+			 * For border = 0, one space in the middle.
+			 */
+			swidth = 1;
+		}
 		else if (opt_border == 1)
-			swidth = 3;			/* "header | data" */
-		else
-			swidth = 7;			/* "| header | data |" */
-
-		/* Wrap to maximum width */
-		width = dwidth + swidth + hwidth;
-		if ((output_columns > 0) && (width > output_columns))
 		{
-			dwidth = output_columns - hwidth - swidth;
-			width = output_columns;
+			/*
+			 * For border = 1, one for the pipe (|) in the middle
+			 * between the two spaces.
+			 */
+			swidth = 3;
 		}
+		else
+			/*
+			 * For border = 2, two more for the pipes (|) at the begging and
+			 * at the end of the lines.
+			 */
+			swidth = 7;
 
-		/* Wrap to minimum width */
+		if ((opt_border < 2) &&
+			((hmultiline && 
+			(format == &pg_asciiformat_old)) ||
+			(dmultiline && 
+			(format != &pg_asciiformat_old))))
+			iwidth++; /* for newline indicators */
+
+		min_width = hwidth + iwidth + swidth + 3;
+
+		/* 
+		 * Record header width
+		 */
 		if (!opt_tuples_only)
 		{
-			int			delta = 1 + log10(cont->nrows) - width;
-
+			/* 
+			 * Record number
+			 */
+			unsigned int rwidth = 1 + log10(cont->nrows);
 			if (opt_border == 0)
-				delta += 6;		/* "* RECORD " */
+				rwidth += 9;	/* "* RECORD " */
 			else if (opt_border == 1)
-				delta += 10;	/* "-[ RECORD  ]" */
+				rwidth += 12;	/* "-[ RECORD  ]" */
 			else
-				delta += 15;	/* "+-[ RECORD  ]-+" */
+				rwidth += 15;	/* "+-[ RECORD  ]-+" */
 
-			if (delta > 0)
-				dwidth += delta;
+			if (rwidth > min_width)
+				min_width = rwidth;
 		}
-		else if (dwidth < 3)
-			dwidth = 3;
+
+		/* Wrap to minimum width */
+		width = hwidth + iwidth + swidth + dwidth;
+		if ((width < min_width) || (output_columns < min_width))
+			width = min_width - hwidth - iwidth - swidth;
+		else if (output_columns > 0)
+			/*
+			 * Wrap to maximum width
+			 */
+			width = output_columns - hwidth - iwidth - swidth;
+
+		if ((width < dwidth) || (dheight > 1))
+		{
+			dmultiline = true;
+			if ((opt_border == 0) && 
+				(format != &pg_asciiformat_old))
+				width--; /* for wrap indicators */
+		}
+		dwidth = width;
 	}
 
 	/* print records */
@@ -1321,11 +1366,17 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 		/* Print record header (e.g. "[ RECORD N ]") above each record */
 		if (i % cont->ncolumns == 0)
 		{
+			unsigned int lhwidth = hwidth;
+			if ((opt_border < 2) &&
+				(hmultiline) && 
+				(format == &pg_asciiformat_old))
+				lhwidth++; /* for newline indicators */
+
 			if (!opt_tuples_only)
-				print_aligned_vertical_line(cont, record++, hwidth, dwidth,
-											pos, fout);
+				print_aligned_vertical_line(cont, record++, lhwidth,
+											dwidth, pos, fout);
 			else if (i != 0 || !cont->opt->start_table || opt_border == 2)
-				print_aligned_vertical_line(cont, 0, hwidth, dwidth,
+				print_aligned_vertical_line(cont, 0, lhwidth, dwidth,
 											pos, fout);
 		}
 
@@ -1354,35 +1405,62 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			/* Header (never wrapped so just need to deal with newlines) */
 			if (!hcomplete)
 			{
-				int			swidth,
-							twidth = hwidth + 1;
-
-				fputs(hline ? format->header_nl_left : " ", fout);
-				strlen_max_width(hlineptr[hline].ptr, &twidth,
+				int			swidth = hwidth,
+							target_width = hwidth;
+				/*
+				 * Left spacer or new line indicator
+				 */
+				if ((opt_border == 2) ||
+					(hmultiline && (format == &pg_asciiformat_old)))
+					fputs(hline ? format->header_nl_left : " ", fout);
+				/*
+				 * Header text
+				 */
+				strlen_max_width(hlineptr[hline].ptr, &target_width,
 								 encoding);
 				fprintf(fout, "%-s", hlineptr[hline].ptr);
 
-				swidth = hwidth - twidth;
-				if (swidth > 0) /* spacer */
+				/*
+				 * Spacer
+				 */
+				swidth -= target_width;
+				if (swidth > 0)
 					fprintf(fout, "%*s", swidth, " ");
 
+				/* 
+				 * New line indicator or separator's space
+				 */
 				if (hlineptr[hline + 1].ptr)
 				{
 					/* More lines after this one due to a newline */
-					fputs(format->header_nl_right, fout);
+					if ((opt_border > 0) ||
+						(hmultiline && (format != &pg_asciiformat_old)))
+						fputs(format->header_nl_right, fout);
 					hline++;
 				}
 				else
 				{
 					/* This was the last line of the header */
-					fputs(" ", fout);
+					if ((opt_border > 0) ||
+						(hmultiline && (format != &pg_asciiformat_old)))
+						fputs(" ", fout);
 					hcomplete = 1;
 				}
 			}
 			else
 			{
-				/* Header exhausted but more data for column */
-				fprintf(fout, "%*s", hwidth + 2, "");
+				unsigned int swidth = hwidth + opt_border;
+				if ((opt_border < 2) &&
+					(hmultiline) &&
+					(format == &pg_asciiformat_old))
+					swidth++;
+
+				if ((opt_border == 0) && 
+					(format != &pg_asciiformat_old) &&
+					(hmultiline))
+					swidth++;
+
+				fprintf(fout, "%*s", swidth, " ");
 			}
 
 			/* Separator */
@@ -1401,13 +1479,18 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 			/* Data */
 			if (!dcomplete)
 			{
-				int			target_width,
+				int			target_width = dwidth,
 							bytes_to_output,
-							swidth;
+							swidth = dwidth;
 
+				/*
+				 * Left spacer on wrap indicator
+				 */
 				fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
 
-				target_width = dwidth;
+				/*
+				 * Data text
+				 */
 				bytes_to_output = strlen_max_width(dlineptr[dline].ptr + offset,
 												   &target_width, encoding);
 				fputnbytes(fout, (char *) (dlineptr[dline].ptr + offset),
@@ -1416,20 +1499,30 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				chars_to_output -= target_width;
 				offset += bytes_to_output;
 
-				/* spacer */
-				swidth = dwidth - target_width;
-				if (swidth > 0)
-					fprintf(fout, "%*s", swidth, "");
+				/* Spacer */
+				swidth -= target_width;
 
 				if (chars_to_output)
 				{
 					/* continuing a wrapped column */
-					fputs(format->wrap_right, fout);
+					if ((opt_border > 1) ||
+						(dmultiline && (format != &pg_asciiformat_old)))
+					{
+						if (swidth > 0)
+							fprintf(fout, "%*s", swidth, " ");
+						fputs(format->wrap_right, fout);
+					}
 				}
 				else if (dlineptr[dline + 1].ptr)
 				{
 					/* reached a newline in the column */
-					fputs(format->nl_right, fout);
+					if ((opt_border > 1) ||
+						(dmultiline && (format != &pg_asciiformat_old)))
+					{
+						if (swidth > 0)
+							fprintf(fout, "%*s", swidth, " ");
+						fputs(format->nl_right, fout);
+					}
 					dline++;
 					offset = 0;
 					chars_to_output = dlineptr[dline].width;
@@ -1437,10 +1530,16 @@ print_aligned_vertical(const printTableContent *cont, FILE *fout)
 				else
 				{
 					/* reached the end of the cell */
-					fputs(" ", fout);
+					if (opt_border > 1)
+					{
+						if (swidth > 0)
+							fprintf(fout, "%*s", swidth, " ");
+						fputs(" ", fout);
+					}
 					dcomplete = 1;
 				}
 
+				/* Right border */
 				if (opt_border == 2)
 					fputs(dformat->rightvrule, fout);
 
diff --git a/src/test/regress/expected/psql.out b/src/test/regress/expected/psql.out
index c7dbd54..199036d 100644
--- a/src/test/regress/expected/psql.out
+++ b/src/test/regress/expected/psql.out
@@ -69,20 +69,20 @@ Table attributes (tableattr) unset.
 Title (title) unset.
 Tuples only (tuples_only) is off.
 -- test multi-line headers, wrapping, and newline indicators
-prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "a
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "ab
 
-b", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
-b" from generate_series(1,10) as n(n) group by n>1 ;
+c", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
+bc" from generate_series(1,10) as n(n) group by n>1 ;
 \pset linestyle ascii
 \pset expanded off
 \pset columns 40
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -104,9 +104,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-         a          +        a         +
-                    +        b          
-         b                              
+         ab         +        a         +
+                    +        bc         
+         c                              
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                +yyyyyyyyyyyyyyyy  +
@@ -122,9 +122,9 @@ xxxxxxxxxxxxxxxxxxxx
 
 \pset format wrapped
 execute q;
-         a          +        a         +
-                    +        b          
-         b                              
+         ab         +        a         +
+                    +        bc         
+         c                              
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                +yyyyyyyyyyyyyyyy  +
@@ -141,10 +141,10 @@ xxxxxxxxxxxxxxxxxxxx
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -166,9 +166,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-          a          +|         a         +
-                     +|         b          
-          b           |                    
+          ab         +|         a         +
+                     +|         bc         
+          c           |                    
 ----------------------+--------------------
  xx                   | yyyyyyyyyyyyyyyyyy
  xxxx                +| yyyyyyyyyyyyyyyy  +
@@ -184,9 +184,9 @@ execute q;
 
 \pset format wrapped
 execute q;
-         a        +|         a         +
-                  +|         b          
-         b         |                    
+        ab        +|         a         +
+                  +|         bc         
+         c         |                    
 -------------------+--------------------
  xx                | yyyyyyyyyyyyyyyyyy
  xxxx             +| yyyyyyyyyyyyyyyy  +
@@ -205,10 +205,10 @@ execute q;
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -231,9 +231,9 @@ yy
 \pset format aligned
 execute q;
 +----------------------+--------------------+
-|          a          +|         a         +|
-|                     +|         b          |
-|          b           |                    |
+|          ab         +|         a         +|
+|                     +|         bc         |
+|          c           |                    |
 +----------------------+--------------------+
 | xx                   | yyyyyyyyyyyyyyyyyy |
 | xxxx                +| yyyyyyyyyyyyyyyy  +|
@@ -251,9 +251,9 @@ execute q;
 \pset format wrapped
 execute q;
 +-----------------+--------------------+
-|        a       +|         a         +|
-|                +|         b          |
-|        b        |                    |
+|       ab       +|         a         +|
+|                +|         bc         |
+|        c        |                    |
 +-----------------+--------------------+
 | xx              | yyyyyyyyyyyyyyyyyy |
 | xxxx           +| yyyyyyyyyyyyyyyy  +|
@@ -276,15 +276,15 @@ execute q;
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -294,7 +294,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -305,73 +305,76 @@ yy
 
 \pset format aligned
 execute q;
-* Record 1           
- a+ xx                   
+* Record 1            
+ab+ xx
   +
- b 
- a+ yyyyyyyyyyyyyyyyyy   
- b 
-* Record 2           
- a+ xxxx                +
+c  
+a + yyyyyyyyyyyyyyyyyy
+bc 
+* Record 2            
+ab+ xxxx                +
   + xxxxxx              +
- b  xxxxxxxx            +
+c   xxxxxxxx            +
     xxxxxxxxxx          +
     xxxxxxxxxxxx        +
     xxxxxxxxxxxxxx      +
     xxxxxxxxxxxxxxxx    +
     xxxxxxxxxxxxxxxxxx  +
-    xxxxxxxxxxxxxxxxxxxx 
- a+ yyyyyyyyyyyyyyyy    +
- b  yyyyyyyyyyyyyy      +
+    xxxxxxxxxxxxxxxxxxxx
+a + yyyyyyyyyyyyyyyy    +
+bc  yyyyyyyyyyyyyy      +
     yyyyyyyyyyyy        +
     yyyyyyyyyy          +
     yyyyyyyy            +
     yyyyyy              +
     yyyy                +
     yy                  +
-                         
+    
 
 \pset format wrapped
 execute q;
-* Record 1         
- a+ xx                 
+* Record 1       
+ab+ xx
   +
- b 
- a+ yyyyyyyyyyyyyyyyyy 
- b 
-* Record 2         
- a+ xxxx              +
-  + xxxxxx            +
- b  xxxxxxxx          +
-    xxxxxxxxxx        +
-    xxxxxxxxxxxx      +
-    xxxxxxxxxxxxxx    +
-    xxxxxxxxxxxxxxxx  +
-    xxxxxxxxxxxxxxxxxx+
-    xxxxxxxxxxxxxxxxxx.
-   .xx                 
- a+ yyyyyyyyyyyyyyyy  +
- b  yyyyyyyyyyyyyy    +
-    yyyyyyyyyyyy      +
-    yyyyyyyyyy        +
-    yyyyyyyy          +
-    yyyyyy            +
-    yyyy              +
-    yy                +
-                       
+c  
+a + yyyyyyyyyyyyyyy.
+bc .yyy
+* Record 2       
+ab+ xxxx           +
+  + xxxxxx         +
+c   xxxxxxxx       +
+    xxxxxxxxxx     +
+    xxxxxxxxxxxx   +
+    xxxxxxxxxxxxxx +
+    xxxxxxxxxxxxxxx.
+   .x              +
+    xxxxxxxxxxxxxxx.
+   .xxx            +
+    xxxxxxxxxxxxxxx.
+   .xxxxx
+a + yyyyyyyyyyyyyyy.
+bc .y              +
+    yyyyyyyyyyyyyy +
+    yyyyyyyyyyyy   +
+    yyyyyyyyyy     +
+    yyyyyyyy       +
+    yyyyyy         +
+    yyyy           +
+    yy             +
+    
 
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -381,7 +384,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -392,74 +395,76 @@ yy
 
 \pset format aligned
 execute q;
--[ RECORD 1 ]-----------
- a+| xx                   
+-[ RECORD 1 ]------------
+ab+| xx
   +|
- b |
- a+| yyyyyyyyyyyyyyyyyy   
- b |
--[ RECORD 2 ]-----------
- a+| xxxx                +
+c  |
+a +| yyyyyyyyyyyyyyyyyy
+bc |
+-[ RECORD 2 ]------------
+ab+| xxxx                +
   +| xxxxxx              +
- b | xxxxxxxx            +
+c  | xxxxxxxx            +
    | xxxxxxxxxx          +
    | xxxxxxxxxxxx        +
    | xxxxxxxxxxxxxx      +
    | xxxxxxxxxxxxxxxx    +
    | xxxxxxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxxxxxx 
- a+| yyyyyyyyyyyyyyyy    +
- b | yyyyyyyyyyyyyy      +
+   | xxxxxxxxxxxxxxxxxxxx
+a +| yyyyyyyyyyyyyyyy    +
+bc | yyyyyyyyyyyyyy      +
    | yyyyyyyyyyyy        +
    | yyyyyyyyyy          +
    | yyyyyyyy            +
    | yyyyyy              +
    | yyyy                +
    | yy                  +
-   |                      
+   | 
 
 \pset format wrapped
 execute q;
--[ RECORD 1 ]-------
- a+| xx               
+-[ RECORD 1 ]------
+ab+| xx
   +|
- b |
- a+| yyyyyyyyyyyyyyyy.
- b |.yy               
--[ RECORD 2 ]-------
- a+| xxxx            +
-  +| xxxxxx          +
- b | xxxxxxxx        +
-   | xxxxxxxxxx      +
-   | xxxxxxxxxxxx    +
-   | xxxxxxxxxxxxxx  +
-   | xxxxxxxxxxxxxxxx+
-   | xxxxxxxxxxxxxxxx.
-   |.xx              +
-   | xxxxxxxxxxxxxxxx.
-   |.xxxx             
- a+| yyyyyyyyyyyyyyyy+
- b | yyyyyyyyyyyyyy  +
-   | yyyyyyyyyyyy    +
-   | yyyyyyyyyy      +
-   | yyyyyyyy        +
-   | yyyyyy          +
-   | yyyy            +
-   | yy              +
-   |                  
+c  |
+a +| yyyyyyyyyyyyyy.
+bc |.yyyy
+-[ RECORD 2 ]------
+ab+| xxxx          +
+  +| xxxxxx        +
+c  | xxxxxxxx      +
+   | xxxxxxxxxx    +
+   | xxxxxxxxxxxx  +
+   | xxxxxxxxxxxxxx+
+   | xxxxxxxxxxxxxx.
+   |.xx            +
+   | xxxxxxxxxxxxxx.
+   |.xxxx          +
+   | xxxxxxxxxxxxxx.
+   |.xxxxxx
+a +| yyyyyyyyyyyyyy.
+bc |.yy            +
+   | yyyyyyyyyyyyyy+
+   | yyyyyyyyyyyy  +
+   | yyyyyyyyyy    +
+   | yyyyyyyy      +
+   | yyyyyy        +
+   | yyyy          +
+   | yy            +
+   | 
 
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -469,7 +474,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -480,67 +485,69 @@ yy
 
 \pset format aligned
 execute q;
-+-[ RECORD 1 ]-------------+
-| a+| xx                   |
-|  +|                      |
-| b |                      |
-| a+| yyyyyyyyyyyyyyyyyy   |
-| b |                      |
-+-[ RECORD 2 ]-------------+
-| a+| xxxx                +|
-|  +| xxxxxx              +|
-| b | xxxxxxxx            +|
-|   | xxxxxxxxxx          +|
-|   | xxxxxxxxxxxx        +|
-|   | xxxxxxxxxxxxxx      +|
-|   | xxxxxxxxxxxxxxxx    +|
-|   | xxxxxxxxxxxxxxxxxx  +|
-|   | xxxxxxxxxxxxxxxxxxxx |
-| a+| yyyyyyyyyyyyyyyy    +|
-| b | yyyyyyyyyyyyyy      +|
-|   | yyyyyyyyyyyy        +|
-|   | yyyyyyyyyy          +|
-|   | yyyyyyyy            +|
-|   | yyyyyy              +|
-|   | yyyy                +|
-|   | yy                  +|
-|   |                      |
-+---+----------------------+
++-[ RECORD 1 ]--------------+
+| ab+| xx                   |
+|   +|                      |
+| c  |                      |
+| a +| yyyyyyyyyyyyyyyyyy   |
+| bc |                      |
++-[ RECORD 2 ]--------------+
+| ab+| xxxx                +|
+|   +| xxxxxx              +|
+| c  | xxxxxxxx            +|
+|    | xxxxxxxxxx          +|
+|    | xxxxxxxxxxxx        +|
+|    | xxxxxxxxxxxxxx      +|
+|    | xxxxxxxxxxxxxxxx    +|
+|    | xxxxxxxxxxxxxxxxxx  +|
+|    | xxxxxxxxxxxxxxxxxxxx |
+| a +| yyyyyyyyyyyyyyyy    +|
+| bc | yyyyyyyyyyyyyy      +|
+|    | yyyyyyyyyyyy        +|
+|    | yyyyyyyyyy          +|
+|    | yyyyyyyy            +|
+|    | yyyyyy              +|
+|    | yyyy                +|
+|    | yy                  +|
+|    |                      |
++----+----------------------+
 
 \pset format wrapped
 execute q;
 +-[ RECORD 1 ]-----+
-| a+| xx           |
-|  +|              |
-| b |              |
-| a+| yyyyyyyyyyyy.|
-| b |.yyyyyy       |
+| ab+| xx          |
+|   +|             |
+| c  |             |
+| a +| yyyyyyyyyyy.|
+| bc |.yyyyyyy     |
 +-[ RECORD 2 ]-----+
-| a+| xxxx        +|
-|  +| xxxxxx      +|
-| b | xxxxxxxx    +|
-|   | xxxxxxxxxx  +|
-|   | xxxxxxxxxxxx+|
-|   | xxxxxxxxxxxx.|
-|   |.xx          +|
-|   | xxxxxxxxxxxx.|
-|   |.xxxx        +|
-|   | xxxxxxxxxxxx.|
-|   |.xxxxxx      +|
-|   | xxxxxxxxxxxx.|
-|   |.xxxxxxxx     |
-| a+| yyyyyyyyyyyy.|
-| b |.yyyy        +|
-|   | yyyyyyyyyyyy.|
-|   |.yy          +|
-|   | yyyyyyyyyyyy+|
-|   | yyyyyyyyyy  +|
-|   | yyyyyyyy    +|
-|   | yyyyyy      +|
-|   | yyyy        +|
-|   | yy          +|
-|   |              |
-+---+--------------+
+| ab+| xxxx       +|
+|   +| xxxxxx     +|
+| c  | xxxxxxxx   +|
+|    | xxxxxxxxxx +|
+|    | xxxxxxxxxxx.|
+|    |.x          +|
+|    | xxxxxxxxxxx.|
+|    |.xxx        +|
+|    | xxxxxxxxxxx.|
+|    |.xxxxx      +|
+|    | xxxxxxxxxxx.|
+|    |.xxxxxxx    +|
+|    | xxxxxxxxxxx.|
+|    |.xxxxxxxxx   |
+| a +| yyyyyyyyyyy.|
+| bc |.yyyyy      +|
+|    | yyyyyyyyyyy.|
+|    |.yyy        +|
+|    | yyyyyyyyyyy.|
+|    |.y          +|
+|    | yyyyyyyyyy +|
+|    | yyyyyyyy   +|
+|    | yyyyyy     +|
+|    | yyyy       +|
+|    | yy         +|
+|    |             |
++----+-------------+
 
 \pset linestyle old-ascii
 \pset expanded off
@@ -548,10 +555,10 @@ execute q;
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -573,9 +580,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-         a                   a         
-                    +        b         
-         b          +                  
+         ab                  a         
+                    +        bc        
+         c          +                  
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                 yyyyyyyyyyyyyyyy   
@@ -591,9 +598,9 @@ xxxxxxxxxxxxxxxxxxxx
 
 \pset format wrapped
 execute q;
-         a                   a         
-                    +        b         
-         b          +                  
+         ab                  a         
+                    +        bc        
+         c          +                  
 -------------------- ------------------
 xx                   yyyyyyyyyyyyyyyyyy
 xxxx                 yyyyyyyyyyyyyyyy   
@@ -610,10 +617,10 @@ xxxxxxxxxxxxxxxxxxxx
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -635,9 +642,9 @@ yy
 (2 rows)
 \pset format aligned
 execute q;
-          a           |         a          
-+                     |+        b          
-+         b           |+                   
+          ab          |         a          
++                     |+        bc         
++         c           |+                   
 ----------------------+--------------------
  xx                   | yyyyyyyyyyyyyyyyyy
  xxxx                 | yyyyyyyyyyyyyyyy   
@@ -653,9 +660,9 @@ execute q;
 
 \pset format wrapped
 execute q;
-         a         |         a          
-+                  |+        b          
-+        b         |+                   
+        ab         |         a          
++                  |+        bc         
++        c         |+                   
 -------------------+--------------------
  xx                | yyyyyyyyyyyyyyyyyy
  xxxx              | yyyyyyyyyyyyyyyy   
@@ -674,10 +681,10 @@ execute q;
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|a
-b
+c|a
+bc
 xx|yyyyyyyyyyyyyyyyyy
 xxxx
 xxxxxx
@@ -700,9 +707,9 @@ yy
 \pset format aligned
 execute q;
 +----------------------+--------------------+
-|          a           |         a          |
-|+                     |+        b          |
-|+         b           |+                   |
+|          ab          |         a          |
+|+                     |+        bc         |
+|+         c           |+                   |
 +----------------------+--------------------+
 | xx                   | yyyyyyyyyyyyyyyyyy |
 | xxxx                 | yyyyyyyyyyyyyyyy   |
@@ -720,9 +727,9 @@ execute q;
 \pset format wrapped
 execute q;
 +-----------------+--------------------+
-|        a        |         a          |
-|+                |+        b          |
-|+       b        |+                   |
+|       ab        |         a          |
+|+                |+        bc         |
+|+       c        |+                   |
 +-----------------+--------------------+
 | xx              | yyyyyyyyyyyyyyyyyy |
 | xxxx            | yyyyyyyyyyyyyyyy   |
@@ -745,15 +752,15 @@ execute q;
 \pset border 0
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -763,7 +770,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -774,73 +781,74 @@ yy
 
 \pset format aligned
 execute q;
-* Record 1           
- a  xx                   
+* Record 1             
+ ab xx
 +  
-+b 
- a  yyyyyyyyyyyyyyyyyy   
-+b 
-* Record 2           
- a  xxxx                 
-+   xxxxxx               
-+b  xxxxxxxx             
-    xxxxxxxxxx           
-    xxxxxxxxxxxx         
-    xxxxxxxxxxxxxx       
-    xxxxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxxxx 
- a  yyyyyyyyyyyyyyyy     
-+b  yyyyyyyyyyyyyy       
-    yyyyyyyyyyyy         
-    yyyyyyyyyy           
-    yyyyyyyy             
-    yyyyyy               
-    yyyy                 
-    yy                   
-                         
++c 
+ a  yyyyyyyyyyyyyyyyyy
++bc
+* Record 2             
+ ab xxxx
++   xxxxxx
++c  xxxxxxxx
+    xxxxxxxxxx
+    xxxxxxxxxxxx
+    xxxxxxxxxxxxxx
+    xxxxxxxxxxxxxxxx
+    xxxxxxxxxxxxxxxxxx
+    xxxxxxxxxxxxxxxxxxxx
+ a  yyyyyyyyyyyyyyyy
++bc yyyyyyyyyyyyyy
+    yyyyyyyyyyyy
+    yyyyyyyyyy
+    yyyyyyyy
+    yyyyyy
+    yyyy
+    yy
+    
 
 \pset format wrapped
 execute q;
 * Record 1         
- a  xx                 
+ ab xx
 +  
-+b 
- a  yyyyyyyyyyyyyyyyyy 
-+b 
++c 
+ a  yyyyyyyyyyyyyyyy
++bc yy
 * Record 2         
- a  xxxx               
-+   xxxxxx             
-+b  xxxxxxxx           
-    xxxxxxxxxx         
-    xxxxxxxxxxxx       
-    xxxxxxxxxxxxxx     
-    xxxxxxxxxxxxxxxx   
-    xxxxxxxxxxxxxxxxxx 
-    xxxxxxxxxxxxxxxxxx 
-    xx                 
- a  yyyyyyyyyyyyyyyy   
-+b  yyyyyyyyyyyyyy     
-    yyyyyyyyyyyy       
-    yyyyyyyyyy         
-    yyyyyyyy           
-    yyyyyy             
-    yyyy               
-    yy                 
-                       
+ ab xxxx
++   xxxxxx
++c  xxxxxxxx
+    xxxxxxxxxx
+    xxxxxxxxxxxx
+    xxxxxxxxxxxxxx
+    xxxxxxxxxxxxxxxx
+    xxxxxxxxxxxxxxxx
+    xx
+    xxxxxxxxxxxxxxxx
+    xxxx
+ a  yyyyyyyyyyyyyyyy
++bc yyyyyyyyyyyyyy
+    yyyyyyyyyyyy
+    yyyyyyyyyy
+    yyyyyyyy
+    yyyyyy
+    yyyy
+    yy
+    
 
 \pset border 1
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -850,7 +858,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -861,74 +869,76 @@ yy
 
 \pset format aligned
 execute q;
--[ RECORD 1 ]-----------
- a | xx                   
-+  ;
-+b ;
- a | yyyyyyyyyyyyyyyyyy   
-+b ;
--[ RECORD 2 ]-----------
- a | xxxx                 
-+  : xxxxxx               
-+b : xxxxxxxx             
-   : xxxxxxxxxx           
-   : xxxxxxxxxxxx         
-   : xxxxxxxxxxxxxx       
-   : xxxxxxxxxxxxxxxx     
-   : xxxxxxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxxxxxx 
- a | yyyyyyyyyyyyyyyy     
-+b : yyyyyyyyyyyyyy       
-   : yyyyyyyyyyyy         
-   : yyyyyyyyyy           
-   : yyyyyyyy             
-   : yyyyyy               
-   : yyyy                 
-   : yy                   
-   :                      
+-[ RECORD 1 ]-------------
+ ab | xx
++   ;
++c  ;
+ a  | yyyyyyyyyyyyyyyyyy
++bc ;
+-[ RECORD 2 ]-------------
+ ab | xxxx
++   : xxxxxx
++c  : xxxxxxxx
+    : xxxxxxxxxx
+    : xxxxxxxxxxxx
+    : xxxxxxxxxxxxxx
+    : xxxxxxxxxxxxxxxx
+    : xxxxxxxxxxxxxxxxxx
+    : xxxxxxxxxxxxxxxxxxxx
+ a  | yyyyyyyyyyyyyyyy
++bc : yyyyyyyyyyyyyy
+    : yyyyyyyyyyyy
+    : yyyyyyyyyy
+    : yyyyyyyy
+    : yyyyyy
+    : yyyy
+    : yy
+    : 
 
 \pset format wrapped
 execute q;
 -[ RECORD 1 ]-------
- a | xx               
-+  ;
-+b ;
- a | yyyyyyyyyyyyyyyy 
-+b ; yy               
+ ab | xx
++   ;
++c  ;
+ a  | yyyyyyyyyyyyyy
++bc ; yyyy
 -[ RECORD 2 ]-------
- a | xxxx             
-+  : xxxxxx           
-+b : xxxxxxxx         
-   : xxxxxxxxxx       
-   : xxxxxxxxxxxx     
-   : xxxxxxxxxxxxxx   
-   : xxxxxxxxxxxxxxxx 
-   : xxxxxxxxxxxxxxxx 
-   ; xx               
-   : xxxxxxxxxxxxxxxx 
-   ; xxxx             
- a | yyyyyyyyyyyyyyyy 
-+b : yyyyyyyyyyyyyy   
-   : yyyyyyyyyyyy     
-   : yyyyyyyyyy       
-   : yyyyyyyy         
-   : yyyyyy           
-   : yyyy             
-   : yy               
-   :                  
+ ab | xxxx
++   : xxxxxx
++c  : xxxxxxxx
+    : xxxxxxxxxx
+    : xxxxxxxxxxxx
+    : xxxxxxxxxxxxxx
+    : xxxxxxxxxxxxxx
+    ; xx
+    : xxxxxxxxxxxxxx
+    ; xxxx
+    : xxxxxxxxxxxxxx
+    ; xxxxxx
+ a  | yyyyyyyyyyyyyy
++bc ; yy
+    : yyyyyyyyyyyyyy
+    : yyyyyyyyyyyy
+    : yyyyyyyyyy
+    : yyyyyyyy
+    : yyyyyy
+    : yyyy
+    : yy
+    : 
 
 \pset border 2
 \pset format unaligned
 execute q;
-a
+ab
 
-b|xx
+c|xx
 a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
 
-a
+ab
 
-b|xxxx
+c|xxxx
 xxxxxx
 xxxxxxxx
 xxxxxxxxxx
@@ -938,7 +948,7 @@ xxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxx
 xxxxxxxxxxxxxxxxxxxx
 a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
 yyyyyyyyyyyyyy
 yyyyyyyyyyyy
 yyyyyyyyyy
@@ -949,66 +959,1164 @@ yy
 
 \pset format aligned
 execute q;
-+-[ RECORD 1 ]-------------+
-| a | xx                   |
-|+  ;                      |
-|+b ;                      |
-| a | yyyyyyyyyyyyyyyyyy   |
-|+b ;                      |
-+-[ RECORD 2 ]-------------+
-| a | xxxx                 |
-|+  : xxxxxx               |
-|+b : xxxxxxxx             |
-|   : xxxxxxxxxx           |
-|   : xxxxxxxxxxxx         |
-|   : xxxxxxxxxxxxxx       |
-|   : xxxxxxxxxxxxxxxx     |
-|   : xxxxxxxxxxxxxxxxxx   |
-|   : xxxxxxxxxxxxxxxxxxxx |
-| a | yyyyyyyyyyyyyyyy     |
-|+b : yyyyyyyyyyyyyy       |
-|   : yyyyyyyyyyyy         |
-|   : yyyyyyyyyy           |
-|   : yyyyyyyy             |
-|   : yyyyyy               |
-|   : yyyy                 |
-|   : yy                   |
-|   :                      |
-+---+----------------------+
++-[ RECORD 1 ]--------------+
+| ab | xx                   |
+|+   ;                      |
+|+c  ;                      |
+| a  | yyyyyyyyyyyyyyyyyy   |
+|+bc ;                      |
++-[ RECORD 2 ]--------------+
+| ab | xxxx                 |
+|+   : xxxxxx               |
+|+c  : xxxxxxxx             |
+|    : xxxxxxxxxx           |
+|    : xxxxxxxxxxxx         |
+|    : xxxxxxxxxxxxxx       |
+|    : xxxxxxxxxxxxxxxx     |
+|    : xxxxxxxxxxxxxxxxxx   |
+|    : xxxxxxxxxxxxxxxxxxxx |
+| a  | yyyyyyyyyyyyyyyy     |
+|+bc : yyyyyyyyyyyyyy       |
+|    : yyyyyyyyyyyy         |
+|    : yyyyyyyyyy           |
+|    : yyyyyyyy             |
+|    : yyyyyy               |
+|    : yyyy                 |
+|    : yy                   |
+|    :                      |
++----+----------------------+
 
 \pset format wrapped
 execute q;
 +-[ RECORD 1 ]-----+
-| a | xx           |
-|+  ;              |
-|+b ;              |
-| a | yyyyyyyyyyyy |
-|+b ; yyyyyy       |
+| ab | xx          |
+|+   ;             |
+|+c  ;             |
+| a  | yyyyyyyyyyy |
+|+bc ; yyyyyyy     |
 +-[ RECORD 2 ]-----+
-| a | xxxx         |
-|+  : xxxxxx       |
-|+b : xxxxxxxx     |
-|   : xxxxxxxxxx   |
-|   : xxxxxxxxxxxx |
-|   : xxxxxxxxxxxx |
-|   ; xx           |
-|   : xxxxxxxxxxxx |
-|   ; xxxx         |
-|   : xxxxxxxxxxxx |
-|   ; xxxxxx       |
-|   : xxxxxxxxxxxx |
-|   ; xxxxxxxx     |
-| a | yyyyyyyyyyyy |
-|+b ; yyyy         |
-|   : yyyyyyyyyyyy |
-|   ; yy           |
-|   : yyyyyyyyyyyy |
-|   : yyyyyyyyyy   |
-|   : yyyyyyyy     |
-|   : yyyyyy       |
-|   : yyyy         |
-|   : yy           |
-|   :              |
-+---+--------------+
+| ab | xxxx        |
+|+   : xxxxxx      |
+|+c  : xxxxxxxx    |
+|    : xxxxxxxxxx  |
+|    : xxxxxxxxxxx |
+|    ; x           |
+|    : xxxxxxxxxxx |
+|    ; xxx         |
+|    : xxxxxxxxxxx |
+|    ; xxxxx       |
+|    : xxxxxxxxxxx |
+|    ; xxxxxxx     |
+|    : xxxxxxxxxxx |
+|    ; xxxxxxxxx   |
+| a  | yyyyyyyyyyy |
+|+bc ; yyyyy       |
+|    : yyyyyyyyyyy |
+|    ; yyy         |
+|    : yyyyyyyyyyy |
+|    ; y           |
+|    : yyyyyyyyyy  |
+|    : yyyyyyyy    |
+|    : yyyyyy      |
+|    : yyyy        |
+|    : yy          |
+|    :             |
++----+-------------+
+
+deallocate q;
+-- test single-line header and data
+prepare q as select repeat('x',2*n) as "0123456789abcdef", repeat('y',20-2*n) as "0123456789" from generate_series(1,10) as n;
+\pset linestyle ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+  0123456789abcdef       0123456789     
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset format wrapped
+execute q;
+  0123456789abcdef       0123456789     
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+   0123456789abcdef   |     0123456789     
+----------------------+--------------------
+ xx                   | yyyyyyyyyyyyyyyyyy
+ xxxx                 | yyyyyyyyyyyyyyyy
+ xxxxxx               | yyyyyyyyyyyyyy
+ xxxxxxxx             | yyyyyyyyyyyy
+ xxxxxxxxxx           | yyyyyyyyyy
+ xxxxxxxxxxxx         | yyyyyyyy
+ xxxxxxxxxxxxxx       | yyyyyy
+ xxxxxxxxxxxxxxxx     | yyyy
+ xxxxxxxxxxxxxxxxxx   | yy
+ xxxxxxxxxxxxxxxxxxxx | 
+(10 rows)
+
+\pset format wrapped
+execute q;
+  0123456789abcdef   |    0123456789    
+---------------------+------------------
+ xx                  | yyyyyyyyyyyyyyyy.
+                     |.yy
+ xxxx                | yyyyyyyyyyyyyyyy
+ xxxxxx              | yyyyyyyyyyyyyy
+ xxxxxxxx            | yyyyyyyyyyyy
+ xxxxxxxxxx          | yyyyyyyyyy
+ xxxxxxxxxxxx        | yyyyyyyy
+ xxxxxxxxxxxxxx      | yyyyyy
+ xxxxxxxxxxxxxxxx    | yyyy
+ xxxxxxxxxxxxxxxxxx  | yy
+ xxxxxxxxxxxxxxxxxxx.| 
+.x                   | 
+(10 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+|   0123456789abcdef   |     0123456789     |
++----------------------+--------------------+
+| xx                   | yyyyyyyyyyyyyyyyyy |
+| xxxx                 | yyyyyyyyyyyyyyyy   |
+| xxxxxx               | yyyyyyyyyyyyyy     |
+| xxxxxxxx             | yyyyyyyyyyyy       |
+| xxxxxxxxxx           | yyyyyyyyyy         |
+| xxxxxxxxxxxx         | yyyyyyyy           |
+| xxxxxxxxxxxxxx       | yyyyyy             |
+| xxxxxxxxxxxxxxxx     | yyyy               |
+| xxxxxxxxxxxxxxxxxx   | yy                 |
+| xxxxxxxxxxxxxxxxxxxx |                    |
++----------------------+--------------------+
+(10 rows)
+
+\pset format wrapped
+execute q;
++--------------------+-----------------+
+|  0123456789abcdef  |   0123456789    |
++--------------------+-----------------+
+| xx                 | yyyyyyyyyyyyyyy.|
+|                    |.yyy             |
+| xxxx               | yyyyyyyyyyyyyyy.|
+|                    |.y               |
+| xxxxxx             | yyyyyyyyyyyyyy  |
+| xxxxxxxx           | yyyyyyyyyyyy    |
+| xxxxxxxxxx         | yyyyyyyyyy      |
+| xxxxxxxxxxxx       | yyyyyyyy        |
+| xxxxxxxxxxxxxx     | yyyyyy          |
+| xxxxxxxxxxxxxxxx   | yyyy            |
+| xxxxxxxxxxxxxxxxxx | yy              |
+| xxxxxxxxxxxxxxxxxx.|                 |
+|.xx                 |                 |
++--------------------+-----------------+
+(10 rows)
+
+\pset expanded on
+\pset columns 20
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+* Record 1                          
+0123456789abcdef xx
+0123456789       yyyyyyyyyyyyyyyyyy
+* Record 2                          
+0123456789abcdef xxxx
+0123456789       yyyyyyyyyyyyyyyy
+* Record 3                          
+0123456789abcdef xxxxxx
+0123456789       yyyyyyyyyyyyyy
+* Record 4                          
+0123456789abcdef xxxxxxxx
+0123456789       yyyyyyyyyyyy
+* Record 5                          
+0123456789abcdef xxxxxxxxxx
+0123456789       yyyyyyyyyy
+* Record 6                          
+0123456789abcdef xxxxxxxxxxxx
+0123456789       yyyyyyyy
+* Record 7                          
+0123456789abcdef xxxxxxxxxxxxxx
+0123456789       yyyyyy
+* Record 8                          
+0123456789abcdef xxxxxxxxxxxxxxxx
+0123456789       yyyy
+* Record 9                          
+0123456789abcdef xxxxxxxxxxxxxxxxxx
+0123456789       yy
+* Record 10                         
+0123456789abcdef xxxxxxxxxxxxxxxxxxxx
+0123456789       
+
+\pset format wrapped
+execute q;
+* Record 1        
+0123456789abcdef xx
+0123456789       yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy
+* Record 2        
+0123456789abcdef xx.
+                .xx
+0123456789       yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy
+* Record 3        
+0123456789abcdef xx.
+                .xx.
+                .xx
+0123456789       yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy
+* Record 4        
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy
+* Record 5        
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       yy.
+                .yy.
+                .yy.
+                .yy.
+                .yy
+* Record 6        
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       yy.
+                .yy.
+                .yy.
+                .yy
+* Record 7        
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       yy.
+                .yy.
+                .yy
+* Record 8        
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       yy.
+                .yy
+* Record 9        
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       yy
+* Record 10       
+0123456789abcdef xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx.
+                .xx
+0123456789       
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+-[ RECORD 1 ]----+---------------------
+0123456789abcdef | xx
+0123456789       | yyyyyyyyyyyyyyyyyy
+-[ RECORD 2 ]----+---------------------
+0123456789abcdef | xxxx
+0123456789       | yyyyyyyyyyyyyyyy
+-[ RECORD 3 ]----+---------------------
+0123456789abcdef | xxxxxx
+0123456789       | yyyyyyyyyyyyyy
+-[ RECORD 4 ]----+---------------------
+0123456789abcdef | xxxxxxxx
+0123456789       | yyyyyyyyyyyy
+-[ RECORD 5 ]----+---------------------
+0123456789abcdef | xxxxxxxxxx
+0123456789       | yyyyyyyyyy
+-[ RECORD 6 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxx
+0123456789       | yyyyyyyy
+-[ RECORD 7 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxx
+0123456789       | yyyyyy
+-[ RECORD 8 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxx
+0123456789       | yyyy
+-[ RECORD 9 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxx
+0123456789       | yy
+-[ RECORD 10 ]---+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxxxx
+0123456789       | 
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]----+----
+0123456789abcdef | xx
+0123456789       | yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy
+-[ RECORD 2 ]----+----
+0123456789abcdef | xxx.
+                 |.x
+0123456789       | yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.y
+-[ RECORD 3 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx
+0123456789       | yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yy
+-[ RECORD 4 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xx
+0123456789       | yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.yyy
+-[ RECORD 5 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.x
+0123456789       | yyy.
+                 |.yyy.
+                 |.yyy.
+                 |.y
+-[ RECORD 6 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx
+0123456789       | yyy.
+                 |.yyy.
+                 |.yy
+-[ RECORD 7 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xx
+0123456789       | yyy.
+                 |.yyy
+-[ RECORD 8 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.x
+0123456789       | yyy.
+                 |.y
+-[ RECORD 9 ]----+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx
+0123456789       | yy
+-[ RECORD 10 ]---+----
+0123456789abcdef | xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xxx.
+                 |.xx
+0123456789       | 
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----+----------------------+
+| 0123456789abcdef | xx                   |
+| 0123456789       | yyyyyyyyyyyyyyyyyy   |
++-[ RECORD 2 ]-----+----------------------+
+| 0123456789abcdef | xxxx                 |
+| 0123456789       | yyyyyyyyyyyyyyyy     |
++-[ RECORD 3 ]-----+----------------------+
+| 0123456789abcdef | xxxxxx               |
+| 0123456789       | yyyyyyyyyyyyyy       |
++-[ RECORD 4 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxx             |
+| 0123456789       | yyyyyyyyyyyy         |
++-[ RECORD 5 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxx           |
+| 0123456789       | yyyyyyyyyy           |
++-[ RECORD 6 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxx         |
+| 0123456789       | yyyyyyyy             |
++-[ RECORD 7 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxx       |
+| 0123456789       | yyyyyy               |
++-[ RECORD 8 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxx     |
+| 0123456789       | yyyy                 |
++-[ RECORD 9 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxx   |
+| 0123456789       | yy                   |
++-[ RECORD 10 ]----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxxxx |
+| 0123456789       |                      |
++------------------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-----+-----+
+| 0123456789abcdef | xx  |
+| 0123456789       | yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy |
++-[ RECORD 2 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.x   |
+| 0123456789       | yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.y   |
++-[ RECORD 3 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx |
+| 0123456789       | yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yy  |
++-[ RECORD 4 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xx  |
+| 0123456789       | yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.yyy |
++-[ RECORD 5 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.x   |
+| 0123456789       | yyy.|
+|                  |.yyy.|
+|                  |.yyy.|
+|                  |.y   |
++-[ RECORD 6 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx |
+| 0123456789       | yyy.|
+|                  |.yyy.|
+|                  |.yy  |
++-[ RECORD 7 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xx  |
+| 0123456789       | yyy.|
+|                  |.yyy |
++-[ RECORD 8 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.x   |
+| 0123456789       | yyy.|
+|                  |.y   |
++-[ RECORD 9 ]-----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx |
+| 0123456789       | yy  |
++-[ RECORD 10 ]----+-----+
+| 0123456789abcdef | xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xxx.|
+|                  |.xx  |
+| 0123456789       |     |
++------------------+-----+
+
+\pset linestyle old-ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+  0123456789abcdef       0123456789    
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset format wrapped
+execute q;
+  0123456789abcdef       0123456789    
+-------------------- ------------------
+xx                   yyyyyyyyyyyyyyyyyy
+xxxx                 yyyyyyyyyyyyyyyy
+xxxxxx               yyyyyyyyyyyyyy
+xxxxxxxx             yyyyyyyyyyyy
+xxxxxxxxxx           yyyyyyyyyy
+xxxxxxxxxxxx         yyyyyyyy
+xxxxxxxxxxxxxx       yyyyyy
+xxxxxxxxxxxxxxxx     yyyy
+xxxxxxxxxxxxxxxxxx   yy
+xxxxxxxxxxxxxxxxxxxx 
+(10 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+   0123456789abcdef   |     0123456789     
+----------------------+--------------------
+ xx                   | yyyyyyyyyyyyyyyyyy
+ xxxx                 | yyyyyyyyyyyyyyyy
+ xxxxxx               | yyyyyyyyyyyyyy
+ xxxxxxxx             | yyyyyyyyyyyy
+ xxxxxxxxxx           | yyyyyyyyyy
+ xxxxxxxxxxxx         | yyyyyyyy
+ xxxxxxxxxxxxxx       | yyyyyy
+ xxxxxxxxxxxxxxxx     | yyyy
+ xxxxxxxxxxxxxxxxxx   | yy
+ xxxxxxxxxxxxxxxxxxxx | 
+(10 rows)
+
+\pset format wrapped
+execute q;
+  0123456789abcdef   |    0123456789    
+---------------------+------------------
+ xx                  | yyyyyyyyyyyyyyyy 
+                     ; yy
+ xxxx                | yyyyyyyyyyyyyyyy
+ xxxxxx              | yyyyyyyyyyyyyy
+ xxxxxxxx            | yyyyyyyyyyyy
+ xxxxxxxxxx          | yyyyyyyyyy
+ xxxxxxxxxxxx        | yyyyyyyy
+ xxxxxxxxxxxxxx      | yyyyyy
+ xxxxxxxxxxxxxxxx    | yyyy
+ xxxxxxxxxxxxxxxxxx  | yy
+ xxxxxxxxxxxxxxxxxxx | 
+ x                     
+(10 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+|   0123456789abcdef   |     0123456789     |
++----------------------+--------------------+
+| xx                   | yyyyyyyyyyyyyyyyyy |
+| xxxx                 | yyyyyyyyyyyyyyyy   |
+| xxxxxx               | yyyyyyyyyyyyyy     |
+| xxxxxxxx             | yyyyyyyyyyyy       |
+| xxxxxxxxxx           | yyyyyyyyyy         |
+| xxxxxxxxxxxx         | yyyyyyyy           |
+| xxxxxxxxxxxxxx       | yyyyyy             |
+| xxxxxxxxxxxxxxxx     | yyyy               |
+| xxxxxxxxxxxxxxxxxx   | yy                 |
+| xxxxxxxxxxxxxxxxxxxx |                    |
++----------------------+--------------------+
+(10 rows)
+
+\pset format wrapped
+execute q;
++--------------------+-----------------+
+|  0123456789abcdef  |   0123456789    |
++--------------------+-----------------+
+| xx                 | yyyyyyyyyyyyyyy |
+|                    ; yyy             |
+| xxxx               | yyyyyyyyyyyyyyy |
+|                    ; y               |
+| xxxxxx             | yyyyyyyyyyyyyy  |
+| xxxxxxxx           | yyyyyyyyyyyy    |
+| xxxxxxxxxx         | yyyyyyyyyy      |
+| xxxxxxxxxxxx       | yyyyyyyy        |
+| xxxxxxxxxxxxxx     | yyyyyy          |
+| xxxxxxxxxxxxxxxx   | yyyy            |
+| xxxxxxxxxxxxxxxxxx | yy              |
+| xxxxxxxxxxxxxxxxxx |                 |
+| xx                                   |
++--------------------+-----------------+
+(10 rows)
+
+\pset expanded on
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+* Record 1                          
+0123456789abcdef xx
+0123456789       yyyyyyyyyyyyyyyyyy
+* Record 2                          
+0123456789abcdef xxxx
+0123456789       yyyyyyyyyyyyyyyy
+* Record 3                          
+0123456789abcdef xxxxxx
+0123456789       yyyyyyyyyyyyyy
+* Record 4                          
+0123456789abcdef xxxxxxxx
+0123456789       yyyyyyyyyyyy
+* Record 5                          
+0123456789abcdef xxxxxxxxxx
+0123456789       yyyyyyyyyy
+* Record 6                          
+0123456789abcdef xxxxxxxxxxxx
+0123456789       yyyyyyyy
+* Record 7                          
+0123456789abcdef xxxxxxxxxxxxxx
+0123456789       yyyyyy
+* Record 8                          
+0123456789abcdef xxxxxxxxxxxxxxxx
+0123456789       yyyy
+* Record 9                          
+0123456789abcdef xxxxxxxxxxxxxxxxxx
+0123456789       yy
+* Record 10                         
+0123456789abcdef xxxxxxxxxxxxxxxxxxxx
+0123456789       
+
+\pset format wrapped
+execute q;
+* Record 1                             
+0123456789abcdef xx
+0123456789       yyyyyyyyyyyyyyyyyy
+* Record 2                             
+0123456789abcdef xxxx
+0123456789       yyyyyyyyyyyyyyyy
+* Record 3                             
+0123456789abcdef xxxxxx
+0123456789       yyyyyyyyyyyyyy
+* Record 4                             
+0123456789abcdef xxxxxxxx
+0123456789       yyyyyyyyyyyy
+* Record 5                             
+0123456789abcdef xxxxxxxxxx
+0123456789       yyyyyyyyyy
+* Record 6                             
+0123456789abcdef xxxxxxxxxxxx
+0123456789       yyyyyyyy
+* Record 7                             
+0123456789abcdef xxxxxxxxxxxxxx
+0123456789       yyyyyy
+* Record 8                             
+0123456789abcdef xxxxxxxxxxxxxxxx
+0123456789       yyyy
+* Record 9                             
+0123456789abcdef xxxxxxxxxxxxxxxxxx
+0123456789       yy
+* Record 10                            
+0123456789abcdef xxxxxxxxxxxxxxxxxxxx
+0123456789       
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+-[ RECORD 1 ]----+---------------------
+0123456789abcdef | xx
+0123456789       | yyyyyyyyyyyyyyyyyy
+-[ RECORD 2 ]----+---------------------
+0123456789abcdef | xxxx
+0123456789       | yyyyyyyyyyyyyyyy
+-[ RECORD 3 ]----+---------------------
+0123456789abcdef | xxxxxx
+0123456789       | yyyyyyyyyyyyyy
+-[ RECORD 4 ]----+---------------------
+0123456789abcdef | xxxxxxxx
+0123456789       | yyyyyyyyyyyy
+-[ RECORD 5 ]----+---------------------
+0123456789abcdef | xxxxxxxxxx
+0123456789       | yyyyyyyyyy
+-[ RECORD 6 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxx
+0123456789       | yyyyyyyy
+-[ RECORD 7 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxx
+0123456789       | yyyyyy
+-[ RECORD 8 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxx
+0123456789       | yyyy
+-[ RECORD 9 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxx
+0123456789       | yy
+-[ RECORD 10 ]---+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxxxx
+0123456789       | 
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]----+----------------------
+0123456789abcdef | xx
+0123456789       | yyyyyyyyyyyyyyyyyy
+-[ RECORD 2 ]----+----------------------
+0123456789abcdef | xxxx
+0123456789       | yyyyyyyyyyyyyyyy
+-[ RECORD 3 ]----+----------------------
+0123456789abcdef | xxxxxx
+0123456789       | yyyyyyyyyyyyyy
+-[ RECORD 4 ]----+----------------------
+0123456789abcdef | xxxxxxxx
+0123456789       | yyyyyyyyyyyy
+-[ RECORD 5 ]----+----------------------
+0123456789abcdef | xxxxxxxxxx
+0123456789       | yyyyyyyyyy
+-[ RECORD 6 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxx
+0123456789       | yyyyyyyy
+-[ RECORD 7 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxxxx
+0123456789       | yyyyyy
+-[ RECORD 8 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxxxxxx
+0123456789       | yyyy
+-[ RECORD 9 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxx
+0123456789       | yy
+-[ RECORD 10 ]---+----------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxxxx
+0123456789       | 
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----+----------------------+
+| 0123456789abcdef | xx                   |
+| 0123456789       | yyyyyyyyyyyyyyyyyy   |
++-[ RECORD 2 ]-----+----------------------+
+| 0123456789abcdef | xxxx                 |
+| 0123456789       | yyyyyyyyyyyyyyyy     |
++-[ RECORD 3 ]-----+----------------------+
+| 0123456789abcdef | xxxxxx               |
+| 0123456789       | yyyyyyyyyyyyyy       |
++-[ RECORD 4 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxx             |
+| 0123456789       | yyyyyyyyyyyy         |
++-[ RECORD 5 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxx           |
+| 0123456789       | yyyyyyyyyy           |
++-[ RECORD 6 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxx         |
+| 0123456789       | yyyyyyyy             |
++-[ RECORD 7 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxx       |
+| 0123456789       | yyyyyy               |
++-[ RECORD 8 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxx     |
+| 0123456789       | yyyy                 |
++-[ RECORD 9 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxx   |
+| 0123456789       | yy                   |
++-[ RECORD 10 ]----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxxxx |
+| 0123456789       |                      |
++------------------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-----+-------------------+
+| 0123456789abcdef | xx                |
+| 0123456789       | yyyyyyyyyyyyyyyyy |
+|                  ; y                 |
++-[ RECORD 2 ]-----+-------------------+
+| 0123456789abcdef | xxxx              |
+| 0123456789       | yyyyyyyyyyyyyyyy  |
++-[ RECORD 3 ]-----+-------------------+
+| 0123456789abcdef | xxxxxx            |
+| 0123456789       | yyyyyyyyyyyyyy    |
++-[ RECORD 4 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxx          |
+| 0123456789       | yyyyyyyyyyyy      |
++-[ RECORD 5 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxx        |
+| 0123456789       | yyyyyyyyyy        |
++-[ RECORD 6 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxx      |
+| 0123456789       | yyyyyyyy          |
++-[ RECORD 7 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxx    |
+| 0123456789       | yyyyyy            |
++-[ RECORD 8 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxx  |
+| 0123456789       | yyyy              |
++-[ RECORD 9 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxx |
+|                  ; x                 |
+| 0123456789       | yy                |
++-[ RECORD 10 ]----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxx |
+|                  ; xxx               |
+| 0123456789       |                   |
++------------------+-------------------+
 
 deallocate q;
diff --git a/src/test/regress/sql/psql.sql b/src/test/regress/sql/psql.sql
index a7d5eeb..5ccc68f 100644
--- a/src/test/regress/sql/psql.sql
+++ b/src/test/regress/sql/psql.sql
@@ -42,10 +42,10 @@ select 10 as test01, 20 as test02 from generate_series(1,0) \gset
 \pset
 
 -- test multi-line headers, wrapping, and newline indicators
-prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "a
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "ab
 
-b", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
-b" from generate_series(1,10) as n(n) group by n>1 ;
+c", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
+bc" from generate_series(1,10) as n(n) group by n>1 ;
 
 \pset linestyle ascii
 
@@ -160,3 +160,119 @@ execute q;
 execute q;
 
 deallocate q;
+
+-- test single-line header and data
+prepare q as select repeat('x',2*n) as "0123456789abcdef", repeat('y',20-2*n) as "0123456789" from generate_series(1,10) as n;
+
+\pset linestyle ascii
+
+\pset expanded off
+\pset columns 40
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset expanded on
+\pset columns 20
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset linestyle old-ascii
+
+\pset expanded off
+\pset columns 40
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset expanded on
+
+\pset border 0
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 1
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+\pset border 2
+\pset format unaligned
+execute q;
+\pset format aligned
+execute q;
+\pset format wrapped
+execute q;
+
+deallocate q;
#25Robert Haas
robertmhaas@gmail.com
In reply to: Tom Lane (#23)
Re: wrapping in extended mode doesn't work well with default pager

On Wed, Jun 11, 2014 at 10:16 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:

Noah Misch <noah@leadboat.com> writes:

Based on the commit message and procedural history, I thought commit 6513633
was changing behavior solely for the combination of "\pset expanded" and
"\pset format wrapped". Peter's and my test cases show that it also changed
behavior for "\pset expanded" alone. That's a bug, unless someone sees to
argue that the new "\pset expanded" behavior is a desirable improvement in
spite of its origin as an accident. Altering an entrenched psql output format
is a big deal.

TBH I'm wondering if we shouldn't just revert that patch (and the
subsequent fix attempts). It was not a major feature and I'm thinking
we have better things to do right now than try to fix the multiple
logic holes it evidently has. The author's certainly welcome to try
again with a more carefully thought-through patch for 9.5.

So, it seems like we need to do something about this one way or
another. Who's working on that?

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#26Greg Stark
stark@mit.edu
In reply to: Robert Haas (#25)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, Jun 16, 2014 at 9:05 PM, Robert Haas <robertmhaas@gmail.com> wrote:

So, it seems like we need to do something about this one way or
another. Who's working on that?

So I'm fine finishing what I started. I've just been a bit busy this past week.

My inclination is to try to push forward and commit this patch,
document the changes and make sure we check for any consequences of
them.

The alternate plan is to revert it for 9.4 and commit the changes to
9.5 and that gives us more time to be sure we're ok with them.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#27Jeff Janes
jeff.janes@gmail.com
In reply to: Greg Stark (#20)
Re: wrapping in extended mode doesn't work well with default pager

On Wed, Jun 11, 2014 at 12:59 PM, Greg Stark <stark@mit.edu> wrote:

I think this whole exercise has mostly just convinced me we should
implement an HTTP interface and reimplement psql as a browser app.

I certainly hope not. I've seen lots of browser apps that were nice
enough to use for casual use by a casual user. I've never seen one
that was an effective power tool for power users, the way psql is.
Now maybe they are out there and I just don't know about them, but I
have my doubts.

As an additional tool, to each his own. But a browser-based
replacement for psql, -1 from me.

And as far browser-based things apply to this patch, I must say I've
tried micromanaging the way large amounts of data wrap in a HTML table
when I found the default to be inadequate, and I have not found that
to be noticeably easy, either.

The original version of this patch was only a few lines long and did
one very simple and useful thing: avoiding the printing of whole
screens full of hyphens when in 'expanded mode'. If we end up
reverting the other parts of this patch, hopefully we don't lose that
part.

Cheers,

Jeff

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#28Pavel Stehule
pavel.stehule@gmail.com
In reply to: Jeff Janes (#27)
Re: wrapping in extended mode doesn't work well with default pager

2014-06-16 23:28 GMT+02:00 Jeff Janes <jeff.janes@gmail.com>:

On Wed, Jun 11, 2014 at 12:59 PM, Greg Stark <stark@mit.edu> wrote:

I think this whole exercise has mostly just convinced me we should
implement an HTTP interface and reimplement psql as a browser app.

I certainly hope not. I've seen lots of browser apps that were nice
enough to use for casual use by a casual user. I've never seen one
that was an effective power tool for power users, the way psql is.
Now maybe they are out there and I just don't know about them, but I
have my doubts.

As an additional tool, to each his own. But a browser-based
replacement for psql, -1 from me.

We can integrate a text console browsers like links, elinks or lynx instead

and we can call a BROWSER instead PAGER when \pset is html

pavel@localhost postgresql92]$ PAGER="elinks -force-html" psql postgres
psql (9.4beta1)
Type "help" for help.

postgres=# \pset format html
Output format (format) is html.
postgres=# SELECT * FROM pg_proc;

works perfect

[pavel@localhost postgresql92]$ PAGER="lynx -stdin" psql postgres
psql (9.4beta1)
Type "help" for help.

postgres=# \pset format html
Output format (format) is html.
postgres=# SELECT * FROM pg_proc;

Writing html browsing into psql is useless now and I don't think so it is
good idea. On second hand better integration mentioned browsers can be very
useful.

Regards

Pavel

Show quoted text

And as far browser-based things apply to this patch, I must say I've
tried micromanaging the way large amounts of data wrap in a HTML table
when I found the default to be inadequate, and I have not found that
to be noticeably easy, either.

The original version of this patch was only a few lines long and did
one very simple and useful thing: avoiding the printing of whole
screens full of hyphens when in 'expanded mode'. If we end up
reverting the other parts of this patch, hopefully we don't lose that
part.

Cheers,

Jeff

#29Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Greg Stark (#26)
Re: wrapping in extended mode doesn't work well with default pager

Hi.

Is there any problem with the patch?

2014-06-17 0:21 GMT+04:00 Greg Stark <stark@mit.edu>:

On Mon, Jun 16, 2014 at 9:05 PM, Robert Haas <robertmhaas@gmail.com>
wrote:

So, it seems like we need to do something about this one way or
another. Who's working on that?

So I'm fine finishing what I started. I've just been a bit busy this past
week.

My inclination is to try to push forward and commit this patch,
document the changes and make sure we check for any consequences of
them.

The alternate plan is to revert it for 9.4 and commit the changes to
9.5 and that gives us more time to be sure we're ok with them.

--
greg

--
Best regards,
Sergey Muraviov

#30Pavel Stehule
pavel.stehule@gmail.com
In reply to: Sergey Muraviov (#29)
Re: wrapping in extended mode doesn't work well with default pager

2014-06-24 19:45 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Hi.

Is there any problem with the patch?

I tested it and I had not any issue with last version

So, please, commit it

Regards

Pavel

Show quoted text

2014-06-17 0:21 GMT+04:00 Greg Stark <stark@mit.edu>:

On Mon, Jun 16, 2014 at 9:05 PM, Robert Haas <robertmhaas@gmail.com>

wrote:

So, it seems like we need to do something about this one way or
another. Who's working on that?

So I'm fine finishing what I started. I've just been a bit busy this past
week.

My inclination is to try to push forward and commit this patch,
document the changes and make sure we check for any consequences of
them.

The alternate plan is to revert it for 9.4 and commit the changes to
9.5 and that gives us more time to be sure we're ok with them.

--
greg

--
Best regards,
Sergey Muraviov

#31Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Pavel Stehule (#30)
Re: wrapping in extended mode doesn't work well with default pager

Hi.

Is there anyone who can commit the patch?

2014-06-25 20:17 GMT+04:00 Pavel Stehule <pavel.stehule@gmail.com>:

2014-06-24 19:45 GMT+02:00 Sergey Muraviov <sergey.k.muraviov@gmail.com>:

Hi.

Is there any problem with the patch?

I tested it and I had not any issue with last version

So, please, commit it

Regards

Pavel

2014-06-17 0:21 GMT+04:00 Greg Stark <stark@mit.edu>:

On Mon, Jun 16, 2014 at 9:05 PM, Robert Haas <robertmhaas@gmail.com>

wrote:

So, it seems like we need to do something about this one way or
another. Who's working on that?

So I'm fine finishing what I started. I've just been a bit busy this
past week.

My inclination is to try to push forward and commit this patch,
document the changes and make sure we check for any consequences of
them.

The alternate plan is to revert it for 9.4 and commit the changes to
9.5 and that gives us more time to be sure we're ok with them.

--
greg

--
Best regards,
Sergey Muraviov

--
Best regards,
Sergey Muraviov

#32Greg Stark
stark@mit.edu
In reply to: Sergey Muraviov (#31)
Re: wrapping in extended mode doesn't work well with default pager

On Sun, Jul 6, 2014 at 8:40 AM, Sergey Muraviov
<sergey.k.muraviov@gmail.com> wrote:

Is there anyone who can commit the patch?

So what I'm inclined to do here (sigh) is commit it into 9.5 and
revert it in 9.4. I think it's an improvement but I there's enough
confusion and surprise about the changes from people who weren't
expecting them and enough surprising side effects from things like
check_postgres that letting it simmer for a full release so people can
get used to it might be worthwhile.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#33Sergey Muraviov
sergey.k.muraviov@gmail.com
In reply to: Greg Stark (#32)
Re: wrapping in extended mode doesn't work well with default pager

So what's wrong with the patch?
And what should I change in it for 9.5?

2014-07-07 3:12 GMT+04:00 Greg Stark <stark@mit.edu>:

On Sun, Jul 6, 2014 at 8:40 AM, Sergey Muraviov
<sergey.k.muraviov@gmail.com> wrote:

Is there anyone who can commit the patch?

So what I'm inclined to do here (sigh) is commit it into 9.5 and
revert it in 9.4. I think it's an improvement but I there's enough
confusion and surprise about the changes from people who weren't
expecting them and enough surprising side effects from things like
check_postgres that letting it simmer for a full release so people can
get used to it might be worthwhile.

--
greg

--
Best regards,
Sergey Muraviov

#34Greg Stark
stark@mit.edu
In reply to: Sergey Muraviov (#33)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, Jul 7, 2014 at 8:35 AM, Sergey Muraviov
<sergey.k.muraviov@gmail.com> wrote:

So what's wrong with the patch?
And what should I change in it for 9.5?

Possibly nothing. The concern was tha it's modifying the output in
cases where the output is not \expanded and/or not wrapped. Now I've
mostly convinced myself that those cases should change to be
consistent with the wrapped output but there was at least one tool
depending on that format (check_postgres) so perhaps it's not
worthwhile and having it be inconsistent would be safer.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#35Noah Misch
noah@leadboat.com
In reply to: Greg Stark (#34)
Re: wrapping in extended mode doesn't work well with default pager

This remains open for 9.4. Your proposal to revert the feature in 9.4 and fix
it in 9.5 sounds reasonable.

On Thu, Jul 10, 2014 at 04:15:35PM +0100, Greg Stark wrote:

On Mon, Jul 7, 2014 at 8:35 AM, Sergey Muraviov
<sergey.k.muraviov@gmail.com> wrote:

So what's wrong with the patch?
And what should I change in it for 9.5?

Possibly nothing. The concern was tha it's modifying the output in
cases where the output is not \expanded and/or not wrapped. Now I've
mostly convinced myself that those cases should change to be
consistent with the wrapped output but there was at least one tool
depending on that format (check_postgres) so perhaps it's not
worthwhile and having it be inconsistent would be safer.

I did try psql-wrapped-expanded-fix-v5.patch with the tests Peter and I posted
upthread, and those tests now behave as they do in released versions. What
cases did you find that still change vs. 9.3?

Thanks,
nm

--
Noah Misch
EnterpriseDB http://www.enterprisedb.com

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#36Greg Stark
stark@mit.edu
In reply to: Noah Misch (#35)
Re: wrapping in extended mode doesn't work well with default pager

On Tue, Aug 5, 2014 at 3:41 AM, Noah Misch <noah@leadboat.com> wrote:

This remains open for 9.4. Your proposal to revert the feature in 9.4 and fix
it in 9.5 sounds reasonable.

Ok, I've gone ahead and done this. I'm sorry for the delays and confusion.

On Thu, Jul 10, 2014 at 04:15:35PM +0100, Greg Stark wrote:

On Mon, Jul 7, 2014 at 8:35 AM, Sergey Muraviov
<sergey.k.muraviov@gmail.com> wrote:

So what's wrong with the patch?
And what should I change in it for 9.5?

Possibly nothing. The concern was tha it's modifying the output in
cases where the output is not \expanded and/or not wrapped. Now I've
mostly convinced myself that those cases should change to be
consistent with the wrapped output but there was at least one tool
depending on that format (check_postgres) so perhaps it's not
worthwhile and having it be inconsistent would be safer.

I did try psql-wrapped-expanded-fix-v5.patch with the tests Peter and I posted
upthread, and those tests now behave as they do in released versions. What
cases did you find that still change vs. 9.3?

I was trying to build a spreadsheet of every combination of these
options. It turns out that 4-dimensional spreadsheets are kind of
awkward.

I think the fundamental dilemma was the same that was discussed
upthread. If wrapped expanded mode should have an extra space padding
column for the wrap indicators then all expanded modes should have
that column to be consistent since wrapping shouldn't change the
amount of padding. But that means unrelated queries changes format in
ways people weren't expecting. They were depending on the basically
inconsistent formatting where expanded didn't have the same padding
that non-expanded formats had which was only the case because nobody
had anticiapted expanded format needing space for wrapping indicators.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#37Michael Paquier
michael.paquier@gmail.com
In reply to: Greg Stark (#36)
1 attachment(s)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, Aug 18, 2014 at 8:30 PM, Greg Stark <stark@mit.edu> wrote:

On Tue, Aug 5, 2014 at 3:41 AM, Noah Misch <noah@leadboat.com> wrote:

This remains open for 9.4. Your proposal to revert the feature in 9.4 and fix
it in 9.5 sounds reasonable.

Ok, I've gone ahead and done this. I'm sorry for the delays and confusion.

I imagine that you also need to fix the release notes accordingly.
Patch attached for master and REL9_4_STABLE.
Regards,
--
Michael

Attachments:

20140818_psql_fix_notes94.patchtext/x-patch; charset=US-ASCII; name=20140818_psql_fix_notes94.patchDownload
diff --git a/doc/src/sgml/release-9.4.sgml b/doc/src/sgml/release-9.4.sgml
index 5330c42..1782be4 100644
--- a/doc/src/sgml/release-9.4.sgml
+++ b/doc/src/sgml/release-9.4.sgml
@@ -1813,14 +1813,6 @@
 
       <listitem>
        <para>
-        Add ability to wrap long lines in <application>psql</>'s
-        <literal>expanded</> mode by using <command>\pset format wrapped</>
-        (Sergey Muraviov)
-       </para>
-      </listitem>
-
-      <listitem>
-       <para>
         Suppress <quote>No rows</quote> output in <application>psql</> <link
         linkend="APP-PSQL-meta-commands"><option>expanded</></link>
         mode when the footer is disabled (Bruce Momjian)
#38Greg Stark
stark@mit.edu
In reply to: Michael Paquier (#37)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, Aug 18, 2014 at 12:55 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:

I imagine that you also need to fix the release notes accordingly.
Patch attached for master and REL9_4_STABLE.

Thanks.

Done for 9.4 but the patch is still in master. In fact it's the most
recent version and I'm still pretty convinced it's a good patch.

--
greg

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#39Michael Paquier
michael.paquier@gmail.com
In reply to: Greg Stark (#38)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, Aug 18, 2014 at 10:02 PM, Greg Stark <stark@mit.edu> wrote:

On Mon, Aug 18, 2014 at 12:55 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
Done for 9.4 but the patch is still in master. In fact it's the most
recent version and I'm still pretty convinced it's a good patch.

If this feature is not going to be part of 9.4 anymore, the related
release notes should be updated in consequence on REL9_4_STABLE and
master, no? Am I missing something?
--
Michael

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#40Noah Misch
noah@leadboat.com
In reply to: Greg Stark (#36)
Re: wrapping in extended mode doesn't work well with default pager

On Mon, Aug 18, 2014 at 12:30:40PM +0100, Greg Stark wrote:

On Tue, Aug 5, 2014 at 3:41 AM, Noah Misch <noah@leadboat.com> wrote:

This remains open for 9.4. Your proposal to revert the feature in 9.4 and fix
it in 9.5 sounds reasonable.

Ok, I've gone ahead and done this. I'm sorry for the delays and confusion.

Thanks.

I did try psql-wrapped-expanded-fix-v5.patch with the tests Peter and I posted
upthread, and those tests now behave as they do in released versions. What
cases did you find that still change vs. 9.3?

I was trying to build a spreadsheet of every combination of these
options. It turns out that 4-dimensional spreadsheets are kind of
awkward.

What's one query that still behaves differently in 9.5 vs. 9.3 (under
formatting options that exist in both versions)?

I think the fundamental dilemma was the same that was discussed
upthread. If wrapped expanded mode should have an extra space padding
column for the wrap indicators then all expanded modes should have
that column to be consistent since wrapping shouldn't change the
amount of padding.

I might agree for a greenfield design, but -1 for changing expanded mode now
to improve consistency in this way. I predict the complaints from users of
expanded mode in automation would overpower any applause for the consistency.

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers