From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Yixuan Chen Newsgroups: gmane.emacs.bugs Subject: bug#73752: 29.4; Ligatures are randomly rendered with extra spaces Date: Mon, 28 Oct 2024 10:44:23 -0400 Message-ID: <1e871a38-a150-4198-a53a-831b9576df8b@xlk.me> References: <86zfn9ycis.fsf@gnu.org> <86o735als7.fsf@gnu.org> <87o73534dn.fsf@gmail.com> <86h68x8nuz.fsf@gnu.org> <86ed418niu.fsf@gnu.org> <6566317e-03bb-4856-9cc8-5e90c2875e44@xlk.me> <86cyjl8mqs.fsf@gnu.org> <86bjz58ik7.fsf@gnu.org> <04c3e9c5-0e18-4c35-8e5d-893c17690e5f@xlk.me> <86y12971jq.fsf@gnu.org> <86jzds719m.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------9EcTOciomE28qHrmIRQ6xXi1" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5119"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla Thunderbird Cc: luangruo@yahoo.com, 73752@debbugs.gnu.org, visuweshm@gmail.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Oct 28 15:57:42 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1t5RBd-00019Z-EE for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 28 Oct 2024 15:57:41 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1t5RBP-0003IG-I1; Mon, 28 Oct 2024 10:57:27 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t5RBO-0003Hz-Ex for bug-gnu-emacs@gnu.org; Mon, 28 Oct 2024 10:57:26 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1t5RBO-0006fP-6T for bug-gnu-emacs@gnu.org; Mon, 28 Oct 2024 10:57:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=In-Reply-To:From:References:MIME-Version:Date:To:Subject; bh=nduthexKManxxfn/QVR/KUbqHwfI+Z1VrAoRQxebBl0=; b=EHsV+gmbgYkNNwnkWlm5Cc3NK9T7/tH6CbMelkVF7K4iSKoBTczLEJzXbnlbYVZ9BCeLTjyw5++epJb0zLKa7iH0MpTU1yDUnTzBObx/bpa3WOH4bxw6K16xeg/2GL5q25l/cVKtW51ZCgRkoza0hvsqARKO4hGN/NRFMBSXZ+Jbwx9/HdHdFYHGSyEMSLB7Y70XO0uVzePmQNL5ivn1zHBj9Ppp80u7IJ0MLQkifrgvDF28nGxB3ylsGL5JUdL9D4R5j5YbufkBz+1eZmyFh5evbIRTXEnPHTUNt5JUiJaMRiUZxNc5h/Fv1x8sPIIzRteOSUGSUB9JPbPMpAMV+g==; Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1t5RBy-0004Zx-AS for bug-gnu-emacs@gnu.org; Mon, 28 Oct 2024 10:58:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Yixuan Chen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Oct 2024 14:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 73752 X-GNU-PR-Package: emacs Original-Received: via spool by 73752-submit@debbugs.gnu.org id=B73752.173012746717564 (code B ref 73752); Mon, 28 Oct 2024 14:58:02 +0000 Original-Received: (at 73752) by debbugs.gnu.org; 28 Oct 2024 14:57:47 +0000 Original-Received: from localhost ([127.0.0.1]:54347 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t5RBi-0004ZC-FA for submit@debbugs.gnu.org; Mon, 28 Oct 2024 10:57:47 -0400 Original-Received: from qs51p00im-qukt01072302.me.com ([17.57.155.13]:8137) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t5QzT-0003wu-P2 for 73752@debbugs.gnu.org; Mon, 28 Oct 2024 10:45:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xlk.me; s=sig1; t=1730126665; bh=nduthexKManxxfn/QVR/KUbqHwfI+Z1VrAoRQxebBl0=; h=Content-Type:Message-ID:Date:MIME-Version:Subject:To:From; b=DWe+w5hvCmESfh0sBE5uhcqxdjFeNNPXlGU8ps/sJaybufaQkf6GOaHRC7U4FIokc +UfMmTKKVzYOdIamQYCvhPIMtG5aFy5LlyrRvpmU7k3WbVZW/iHasutyeawoCfdGV2 EaVWJh5HhioGHXqa+iLSBgI5KeQnohXs1OdjvXwAcGvZ3g1OmtcGa2cY4Mxe2ty5Qc 2ENI2iWKc+q6bERNLpwAaPhjS3Yq+vs4+KYvPFEttgO7gWvKiQCEJ+DNTBfn8GIAmc hgFv9OHQleEMGAX1SocyhzqnzgmZs3eInh7iHsx0I36BAbzwCevc1i0uqgUVo5l2Yc VAHhhFN00TEtg== Original-Received: from [192.168.1.14] (qs51p00im-dlb-asmtp-mailmevip.me.com [17.57.155.28]) by qs51p00im-qukt01072302.me.com (Postfix) with ESMTPSA id 11B85630055F; Mon, 28 Oct 2024 14:44:24 +0000 (UTC) Content-Language: en-US In-Reply-To: <86jzds719m.fsf@gnu.org> X-Proofpoint-GUID: 5g3-n2DIkO0-UJXD17zcjWqCTHvlEW3B X-Proofpoint-ORIG-GUID: 5g3-n2DIkO0-UJXD17zcjWqCTHvlEW3B X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1051,Hydra:6.0.680,FMLib:17.12.62.30 definitions=2024-10-28_04,2024-10-28_02,2024-09-30_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 adultscore=0 mlxscore=0 mlxlogscore=398 phishscore=0 spamscore=0 clxscore=1030 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2308100000 definitions=main-2410280118 X-Mailman-Approved-At: Mon, 28 Oct 2024 10:57:45 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:294430 Archived-At: This is a multi-part message in MIME format. --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 10/28/24 10:25, Eli Zaretskii wrote: >> Date: Sun, 27 Oct 2024 16:32:34 -0400 >> Cc: visuweshm@gmail.com, luangruo@yahoo.com, 73752@debbugs.gnu.org >> From: Yixuan Chen >> >> On 10/27/24 16:07, Eli Zaretskii wrote: >>> To convince me that this is really happening (although I'm unable to >>> understand how it could, given how Emacs faces work), you will need to >>> show some code which generates such a situation in a reproducible >>> manner, and then show me by using "M-x describe-text-properties" and >>> "C-u C-x =" that indeed the same characters in the same face are shown >>> on different lines with different metrics. >> >> OK, here you go. > > Not exactly what I asked for, or understood how the problem manifests > itself... > >> "screenshot1.png" shows the bugged display. Here's the result of >> "describe-text-properties", >>> There are text properties here: >>> face (face12 font-lock-string-face) >>> fontified t > > But this is a completely different issue. There's no indentation > here, right? You are saying that in the "bad" display there's some > extra space between the ligature and the following quote, right? Maybe my use of words were terrible. The problem I want to report was never about indentation. It was always about the "extra space between the ligature and the following character" (and sometimes also some extra space between the ligature and the character, although not in this instance). > Is > that extra space a real SPC glyph or is it just that the ligature is > considered "wider"? What happens if you put the cursor on the ▷ > ligature in the "bad" display -- does the block cursor then take up > all the space up to the next quote? It's not a real SPC glyph. It's a single character ▷ (or ligature/glyph I should call it? the underlying text is "|||>"). I attached five screenshots, where the block cursor is at ", |, |, |, >, " respectively. Noticeably, the block cursor for the first | character (1_bar.png) is extra wide, and the block cursors for the following characters looks offset from where they are. --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: image/png; name="0_quote.png" Content-Disposition: attachment; filename="0_quote.png" Content-Transfer-Encoding: base64 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 --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: image/png; name="1_bar.png" Content-Disposition: attachment; filename="1_bar.png" Content-Transfer-Encoding: base64 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 --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: image/png; name="2_bar.png" Content-Disposition: attachment; filename="2_bar.png" Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAGwAAAAnCAIAAABlmzo1AAAGBElEQVRoge2a7U9bVRzHz+/c e0tpgRZKWxgPpbRQbMUOC2Eog8VNNtyyuWSarNFZTXznC9+pL8z+ABNjNJnJolESxblooji3 ITo35ngS2AMPHaPQ8VQYrDyVQh/v9UW7AmUpbFzaS+ST++ae/M4533zv7/zuPacFhmHQVsIw jHfJ7ZyaXbTP+RbdDEPzhPGiTJlAIgICb+nUm8Tv9dFeX3grACYJTBIAsNy21Sb+H+B0LmwX yFgLWKa2tra2tnaDK+PkyZNGoxFjTiQBh0y0WCyXL18mSZIkI6miadrj8RgMhihKWweWnyTt 989YbZaGtqm+oQhhSzOO4eaukZZu1+zCynaNRlNTU7MQkY6OjhMnTrAre5OwbKLf4xtu7m78 5LvBKx0RwuZGJzu+udBZc3HeNsWugJjAfk1hEBMgYhDD0OvFbB84UZi3O+ElfKJrwPxro1Sb oz1awTCMue76cHNXXlVpzt7dVHxc1GS5Hc5J831MkrJncqI5bxgPugfNdY2SvGztsb0I4O6F f4ZvdKn2FysriygBPxQWbuLSzLzt5r1QxIzVNtLSI9flMn46mup9Ls/9xlt3zv2ZosowmA5n v1AYlyiAqH/QLM06bLf6MUkyDAJAs0MTw63dqQXZ9Go3wk0EAMAAGIDAyE8DxggQYECAog+m yCnz/fqPzqRqFKoDJYqywpTcXdEUABgAAIhHnmBAELhWha0xEePgBYACPdGjnlFHlCXLKdcj hPouNjV9dq7rXENmiZbOTfY4l6IjIJhSQS8xAgwIBW5Xhj0mEzERDAIACHiIw7tFBzKOJ9Mq 1QdKDG8fsTS03fq+3lx33bYwPTjdqynQuBxOvlCACbx1DxgwxgQBOOAGwhC0FUU2EWEAAge6 IQDAgGPk4EriEgXa45XKfc+PtvXeuNDQdGm8/avfappmVC8Vq/cXpxWqBRLRVsy7MqUQAMI4 mJSrwx6biUSohAOBgSQCPbdC5cYBAEFKUv6hPd6MhIvjtxdbB93zi3d+aOivb5FqFJrqMnVV qTBVzPKswZTCgSKICYxJYm0mhr/vAGOCR4ZO+jBJknEUJoiY1MTHgkmCoEjDO0dMlz4tefco AB5p7Wn4+GxN9fvNn593Ppyj2fuQwBgTPAqTITcIgkdhglinJibnpBedeiX0SJUVRcmKdEle FiYJtpSxRdIuaeUHp/TGgwN//Tt4tXOyZ7Dpi/P9Da173nstr6qUlaUjVqQVvVkdn5IUWJo5 5btFmXKJOhNTq3wLN1EoFQuly4tCWqCQFig2r2brEGfJi944lKxIb/nyZ1tnn2NieuHBNAp8 120agUSkePG50G2qJjtVk702jENHYU8KwzB+j3eqb6j967r+P9r8bi/Bo6QaRUpuRpSLz3Y1 cXpw7E5tvfXqzZG2Xr/bK8qWp+vV6pdLFeX6uIT4KIvZfiZ6l9zeRZeltedKuwP5aYk6S/tq Re4+gyhLtnI/G022h4kMw9A+/9zoZO8v1/7+8beB7o40oTg1P9vw1uH8Q2U8YWy8C8F1E2m/ 3zFun+gasF67OXTjtmdhkZfET5AnF79+xHj6NMWP2QHPSjhtomvW0f3Tlc5vf394bxgQKMr1 +dVls5S3/cw8pkiCR8VaYBBOmzg/NjV1dyiwUdEbD0oLcjCBzWYzQXFLNrfULAPAFyVklBSk PatS7S+RqDO5k3dr4aiJfFGC9liF9nhlvDiRg5ulMDhqIkGRQllyrFVslJ0fqliAfRMBwdqz 3zVBEKuD3q2A5eVMxcfpjVV6Y1XksLRC1fGzH65tp2na5XI5HI4IfZ1Op9fr3bRSNuFWTezr 6zOZTCaTad1InU4XFUUbgkP/T7RYLBaLZYPBKpVKrVZzpCBwyMTty87bmQV2TGSBHRNZgHzQ NWAfGCP5PJlWKZAkTfZaZ6zjSZlSuS6XL0p40uF8Lo/dMmIfGCN5lEynFEhEwQEzpHJdLl/8 xAMihHxuj2PcPjcyuTTrQAjxRUJxljxxl5SMe5rdtM/tsVtG7ZZRgkfJtEphqniy1zpjtSVl SGU6Zbw48SkG/A+yDx8dpOL4HQAAAABJRU5ErkJggg== --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: image/png; name="3_bar.png" Content-Disposition: attachment; filename="3_bar.png" Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAG0AAAAlCAIAAADHkfAAAAAFD0lEQVRoge2aa0xbVRzA/+ec e2kpj1Es3YDwGIzySHi4EHBs1CmjEpkQPmy6mbkovhKXLFmi0w9To8FN/bBEt+hMNMs0hkUK I2GBTIXKZGQ4Xg7GAAcdASrCeBXp8/b4oaMyKJSM3tt24fftNP+b8++v//M/955eRCkF/qGU Gqb0et2EaXbeZrECRoFh0tC4CMwyAsy+HizzJoClihDGRMQihP7/RBiPjzzY0wk8Inj7slqd oqIijuPWGFxdXc0wfH1f317XLMtSSsVi8ephHMcZjUaTyeTn58dXKpQHrCaz9mrHrerG1cMm B0a6KzVTWt1DT8QwTElJicuwqqoqADCZTA89kUt46Y/mf40t31z6+cS51cOGmrvqjp8ZvtHD Rw4Cw9c+QymlNlcdg1KbjYIvNxYHG/u1e3DusfPHK+rSMqvJDAAWg0ldWqb55Lxhalbg5GZH x7srNfOTQs+7hJsXf1GXlpnnDHYbl944Vf/Rd/P3ZhbHOPc4OTAyqGkDQAAAlA5q2kbb+zmz VaDEFzBOzzWfqfj6iVd/O3VBPzphs671Fse9TGp1g5q2hTZFBxs7Rtt7ObNlcYzz+ylMMAAQ lgAAIgQAEEYII6fBfMMGiDt+qOtWN8TnZ8XnZUakKySyTUImYLeBWQwAmBBAAAgBesCGc4+I EEAIYQwAmMEAgJZdKRjROakpxcqe6qtdFfV9tc2yhKht+VkpxcoAuVSYBDDBDhv3q2ph6GDF erT/CACA7dfjpVcKhig4IEGVnaDK1usmmk6X919pGW3vu/5V5eOHCuz3bnwngAjBBNu7HMYI OVudztWgRR4BIUwwQgh5qB4dBIXLnvn0rRfVJ3OO7g9LjGk9f5nabDPD/ww0tBqn5/ib115V 9788QsiZjZXrcdGjKPZjEMae6o+LQQiFxkfuOLIvdf+e8R7tsbzy8R5t7dtfhsZFJj6bk1SU KwkNdv+kBCN7WwQAAMIyy1fnCh4ZhohYx5AVizBLPLWunRIolwbKpQih8AxFUn5uV0W9rqOv +WxF5st70w6oxMEBiLgtW8IwzCIbjFiEGWZJVTn3GLd7e1CEzDF8+sQr/tJgRszbQ/46CJRL 8z4ozX6z5PblJm1jx/VzVe3f1+YcfSHt+Tx3bYyxygyJLAQzxD7c/d5hUZCElTxwOOLcY1hy bFhyrGOYXKx0S0L8Ebg5dPvhQllCdP3H307eGRnrvkNpnrv6uUwRLVNEO4ZJz+1aHuPb54/2 B3nObJ2+O/r76fKBhlag8Ni2qLinMgXeFX3Yo43jAGCib6jq9ZN3mzqDI+WJhTsVquyY3AzW XyRwMr7qUdfed/OnX6nNNj00po+69+S7L0XnpEljw4U3aMeXPFJKOZNlpK332hcXR27cJgyh lG5VZhxSf+bxPdA3PHJmy0T/8MgfPb211/7+869AuTSlWJmgynqnUM2I/Dwu0Tc8Tmt1dcfP 6jr7Z4bGQmLCdx07ELMzTRobzkrEnnrkX44PeBxuuUVYJiRmS8HnR5L25tpPobwNr/aIMN4U FbYlNU5RsCNWmeEX4O/pjFbEqz2GRG/e8+FrQREyRuT5Drg6Xu2RlYilWyM8ncWa8KKjB5+G L48IreGcDSGMscePNd0CL+vaXxq078L7LsPSD6rSD6rWOZfVatXr9avHGAyGdc7iEp9/v8dq Xeu/mLy+3+PV+4xLampq1l4H/L1s5vP16D1s7NfuYcOje/gPYDnDavwdWtwAAAAASUVORK5C YII= --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: image/png; name="4_gt.png" Content-Disposition: attachment; filename="4_gt.png" Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAGcAAAAnCAIAAACde8HCAAAFdUlEQVRoge2aa0xTZxjH38s5 Pac3SrGUi6MgCAiJeBmBiYI6tCPT2ZjFbZpsZsNFk5ks2T64fXBbtmhc9sFk0Wwu2WJ0MZqB g6iDuQ07HRCZFBhyKxMKs60XbqVATy+nZx+OVuwMdHh6U36f+jZP3uc5/zyXc95zIMdxIGhw HOcYtdutQ87xKa/bAxCUxSvj0pMRSQTPqSC4p5wA+CsDEcIUCSGEQVXtSQWFO4CoJNIr5fHR 6XQejydA46qqKpIkZzV78iuUoiiWZWmantmMZVmGYRiGoShq9k054fA4XaYrrZ3Vl2c2G+kz d5zVj5qsArqeAZFIpNPpZjWrrq4GADAME8ieQvY11yTT9E3VL/uPzWw22Hi9dt+Rm9e6BHQd YgSeBhzHcd7ZSp7jvF4ORHNnmJ+hc+Eh1dpOXawsP+BxugAAboezsvyA/uBxx+h4iGMat9zt OKufGgm1Xz/az/xaWX7ANeHg1ajafaju0++mhm3+qo30mfv1BgAgAABwXL/eYGnpZV2Bjm2h YMYmGo9UfP3crt8PnbBbhrweNsQB8IyYrP16w/2Gw/VfbrW09LAut//9GsIIAIBJDACAGAMA IIIQwbAETUrp1u9rOyovZWwsyCjNT16WJVEpQhkArwYiEQAAYQwgABACCP1VgxgDCCFCAABE IAAAvG8XejRFS3N1JV3VV65X1BlrGlWZKYs3FuTqSqRqZWgCQBj51LiXQ/eX/rnGCwwAQLw1 umcXeqgYaaa2MFNbaLcO1R8+3XuxydJivPrV2RWvl+Xv2kKKaUTgoAYAMUYY8f0KIQinVZ5f rj1QDUCIMIIQwjDlmg95kuqFz98p2L21p6ZhsL69+fiFlpO12ZtXZ6x/NnlFNh0rC5JfPofu XTyEcJoa/8k14sE/SERAhMLV16YDIYzLWLhq77alr2y422XqPl/fXX3F+FNDXPrC7BeLlmwp lsTFCO8UI8i3MwAAAJgkfJX3sGoEgakHz64kTSESh6tCH4lMrZSplYvWrrC/v73pWNX1ijpr q7HxaEX+m5vztmvpGCnEgkWLCYKYpgZBU4ggHlGh6etWypNVvuXz+98SK2MIWiRUHAIiT1xQ +nF54Z6t3RfqTZdbrx77seVkTdG7r+W9WirU+EorWS5Rxfq657oPd1JyCSmh/VWLz0mLz0nz LXN0JYK4Dx6yhLiVOzepMjV1n307csN8u+MGx5UK1YdVWRpVlsa3XPLSGt/vqD1f4zjWzY4N WP44fLrvUjPgwILFKenr80Mzu6JPNS/LjvZZzNe6jD9fHahvi1mozt60OktbmFq8nBQHcDQm BFGmmrXF2P7Db+bmbts/dxSahLUfvKEpylOmJYVML54oUI3jONbpNht6Gr48Y77WjQksS4zT HtyTVbYqXJMqolVjXe6h3pvmP7t6ahpu/fW3TK3M1ZVkagsySvOn31eGnshVbcxkrd131NrW axu8HZuatOa97amr85RpSfzsDy+Rq9rNpk5MErGpiWVf7F2yuZg/iYkQIlE1iJAiJT5xaXpW 2aq0kuUiqTjcEfkTiarFahI2fPK2PFlFUJH4WBKhqpESWrkoOdxRzEQEPZlHEQKrBmEAJ0sQ IoTCfmz3OAhZoWKlfNuJj2Y1W7ZDu2yHVkC/s+LxeOx2+8w2Docj8A2fiu88XC5XgMYBfucR idNAWM6dO+f1egM0DuSDoqci14LB/AydC/OqzYV51eYCfjm3mLFNKp5RTw3bes7X3+nop+QS WjGXl4yMbaJP32wxGJmxCUWK2jFs6+Y3lEnm/NbSOT55p9Nkbeu91X5jbMDKjE1Qcun0V0f/ L8Lxyb5LBouhxzFqV6QkOIbH+QhFUrE4Vh74Rv8C/gHrV6DwafkAAAAASUVORK5CYII= --------------9EcTOciomE28qHrmIRQ6xXi1 Content-Type: image/png; name="5_quote.png" Content-Disposition: attachment; filename="5_quote.png" Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAG0AAAAlCAIAAADHkfAAAAAFG0lEQVRoge2aa0xcRRTHz8zc y96F5bF0eYeFQoGWhFclILTQVtqVWAT6oSpNtFFq2sQmJvqh+qFqNG1q/NDEtFFMNE1rTJvy jhWsShEEAlIeAuVlgSK7ay1CYesu+xw/bNmydFkwubt7qfw+7UzOZM7975xz5p5cRCkFl0Ep 1c1qNOpp/bzWYjQBRpIgaWBMOGYZ123KC0atHmC5MghjImIRQo/bI5fq+P8Be9qBJwShx5eb KS4uNhqNazSuqqry8vKy/t6Iazs4jjOZTBzHOTczm80LCwtarVYsFj+covxh0hsmmntu1TQ5 N5sZUw5UNs5OqHncmi9EIlFhYeGqZrW1tQCg1WptM3zmR8M/Cx1fVP9wssy52WRbf/2Jc1Od gzxu7XF4rjOUUmpZLVFQarFQeLLyyUa95gc7HXu/uV5ResqkNwCAUaevKD3VePqCbnbezT7N q+4NVDZqZ9y97zL6rvxYUXrK8EBnVaP66JmGD7/S/j3n0NhOx5kx5XhjFwACAKB0vLFL1T1q Npjc5PgiC/cftJ0r//zpIz+fuahRTVtMZjc7YGVmQj3e2LWYpuh4U4+qe9hscHwrsrs/YoIB gLAEABAhAIAwQtjBa5AbYH24nq/rBypuxO7LiM1LD0+J95b5u9MBqxqYxQCACQEEgBA4eilc riMiBBBCGAMAZjAAoJVXuhp5dlJiUe5gTXN/ecNIXZssLnLLvozEolyfYKl7HMAE29R4eKoW h4+z/Dxa/wQAwNb1eMWVrkbk5xOnyIxTZGrU0y1nL49e71B1j7R/Vpn2cn76kUJWzGGGuNQB RAgm2JrlMEbIaXQuO4+PdASEMMEIIYftDXfiGyZ79uM3Mo4eGK5rnWzpu3nhWvel+oSCHbF7 ngpPS+ACJC7a13qqHj48QsipGo+dR+bRDPZiEMaeyo9LQQgFxkZkHT+Y9MLee4MTQ9+2DNU0 j3zXGhgTkfBc9tbCHO9AP/43JRhZ0yIAABCWcRKd9joyDBGxtiHLiTBLPBXXDpEESyXB0s27 0jRvl3SUVfeXN6h7RtrOl6e/WpBcouD8fBDhzVvCMMwSNRhOhBlmTXEds3u7b7jMNnzm5Gti qR/DefHlGY/4hm7Ke78089iBoWstE0097WVV3Zfqst98KfnFPL4KY3RuqrcswJaFd797WOTr zXo7bmHY6Ri0LTpoW7RtuK0olxeHXIckJHD74f2yOHnDR1/O3FbeHbhNaR5f+VwWL5fFy23D rc/vdGK8bvuPlJqN5vt3VL+cvTx24yZQ2LQlMmZPuqeq4vrT0WI2z46plJ2DI9+332np9YsI Tti/I16RGZWTyopFnvJqnemo7h7pu/qT8ubQ3B9/+ctDdr3zijw7WRod5kEFrawDHSmlZr1R 2TXc+ukVZecQYYgkNFBx+lh8fpZwaqCgdTQbjNOjU8pfB4frWv/87XdJsDSxKDdOkRGbl770 nisEhOXNUu5PqOtPnFf3js5N3g2ICtv5VknUjmRpdNhKNw/PIlwdpzpuEZYJiArN/+T41oIc axdKsAhRR4Sxf2RQaFJMfH5WdG6ql494DYs8jBB1DJCH7P3gdd9wGSMSShlZFSHqyHpz0s3h nvbivyGgHsS6hmcdEVpDnw0hjLHH25r8wmdci6W+By++t6pZyiFFyiEFj/vyi8lk0mg0zm10 Ot2ymY3ve+zgOE6v16/ReOn3PUKsMx6ktrbWYrGs0dj2sdnGeeSNjXrNDxs68sO/c467ABl9 HvQAAAAASUVORK5CYII= --------------9EcTOciomE28qHrmIRQ6xXi1--