From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eduardo Ochs Newsgroups: gmane.emacs.bugs Subject: bug#13691: 24.3.50; Problem with glyphs in unibyte buffers Date: Mon, 11 Feb 2013 23:37:11 -0200 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=f46d0444e7d789e3b404d57d1018 X-Trace: ger.gmane.org 1360633307 8492 80.91.229.3 (12 Feb 2013 01:41:47 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 12 Feb 2013 01:41:47 +0000 (UTC) To: 13691@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Feb 12 02:42:05 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1U54sm-0004xm-VU for geb-bug-gnu-emacs@m.gmane.org; Tue, 12 Feb 2013 02:42:05 +0100 Original-Received: from localhost ([::1]:46610 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U54sT-00056m-PD for geb-bug-gnu-emacs@m.gmane.org; Mon, 11 Feb 2013 20:41:45 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:57605) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U54sQ-00056a-E2 for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:41:43 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U54sO-0000xG-6k for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:41:42 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:45805) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U54sN-0000x3-Vp for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:41:40 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1U54sk-000300-Lx for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:42:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eduardo Ochs Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 12 Feb 2013 01:42:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 13691 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.136063330611502 (code B ref -1); Tue, 12 Feb 2013 01:42:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 12 Feb 2013 01:41:46 +0000 Original-Received: from localhost ([127.0.0.1]:51269 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1U54sS-0002zR-QT for submit@debbugs.gnu.org; Mon, 11 Feb 2013 20:41:45 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:45361) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1U54of-0002tQ-Dc for submit@debbugs.gnu.org; Mon, 11 Feb 2013 20:37:52 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U54oG-0007f6-LZ for submit@debbugs.gnu.org; Mon, 11 Feb 2013 20:37:26 -0500 Original-Received: from lists.gnu.org ([208.118.235.17]:55968) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U54oG-0007ey-Ht for submit@debbugs.gnu.org; Mon, 11 Feb 2013 20:37:24 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:56699) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U54oD-000454-LO for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:37:24 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U54o7-0007aH-9g for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:37:17 -0500 Original-Received: from mail-wg0-f52.google.com ([74.125.82.52]:39662) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U54o6-0007Zv-QP for bug-gnu-emacs@gnu.org; Mon, 11 Feb 2013 20:37:15 -0500 Original-Received: by mail-wg0-f52.google.com with SMTP id 12so5279590wgh.7 for ; Mon, 11 Feb 2013 17:37:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:date:message-id:subject:from:to :content-type; bh=Vsssrz7hl4T/bp8QPr9PB8Py7hd/lgOAqWX06MaD+OY=; b=slSKRqj2np3eWqB1uAkEKnrFNKdQvYXxoDQ9Hs2s0Fo6geP+W3at8SZ2nWiT761bUX 06dADUEE9JlQWLOA2QpLvHn4/dzIbascC8lCBH3/MPPmAMhwXxmiV0zLx4Rgq5AhWuaE pnHZqIM+M0VxmqPfuHb5xLNypA4RfX9QMgN3Bt0EXMsloBZrN7mjvSjtiestalI6MgQH CC1MsyNi4P/S5rjg8Aw5jzy9OMeWCdRc0KOsUKXMpHZuIc2UQCaJt/aHFTDrsR9ZiWJF ZhDCs6KDYqcVOCicP6ZAGve++k1UchhLb4GHhTfu3FExO7ekHbV8mycjEedh9o62mDoU D+nw== X-Received: by 10.180.102.7 with SMTP id fk7mr19587571wib.27.1360633031942; Mon, 11 Feb 2013 17:37:11 -0800 (PST) Original-Received: by 10.194.22.97 with HTTP; Mon, 11 Feb 2013 17:37:11 -0800 (PST) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Mailman-Approved-At: Mon, 11 Feb 2013 20:41:43 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 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.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:71075 Archived-At: --f46d0444e7d789e3b404d57d1018 Content-Type: text/plain; charset=ISO-8859-1 In Emacs24 if I run the code below to define glyphs for the characters 171 and 187 the effect is different on unibyte (i.e., "coding: raw-text-unix") and non-unibyte buffers, as shown in the attached screenshot. My guess is that for some range of characteres that includes 171 and 187 - but not 15, see the screenshot - the glyph lookup is either disabled in unibyte buffers or it is done using some range translation that I wasn't able to figure out what is. Here is the test code: --snip--snip-- cat > /tmp/g <<'%%%' (progn (menu-bar-mode 0) (tool-bar-mode 0) (scroll-bar-mode -1) (defun eepitch-set-glyph (pos &optional char face) (aset standard-display-table pos (if char (vector (make-glyph-code char face))))) (if (not standard-display-table) (setq standard-display-table (make-display-table))) (defface eepitch-star-face '((t (:foreground "red"))) "Face used for the red star glyph (char 15).") (defface eev-glyph-face-green '((t (:foreground "green"))) "Face used for the green glyphs (`<<' and `>>', chars 171 and 187).") (eepitch-set-glyph ?\^O ?* 'eepitch-star-face) (eepitch-set-glyph 171 171 'eev-glyph-face-green) (eepitch-set-glyph 187 187 'eev-glyph-face-green) (insert "\n;; " 15 171 187) ) ;; Local Variables: ;; coding: raw-text-unix ;; End: %%% emacs23 -fg bisque -bg black -fn 6x13 -Q /tmp/g emacs24-from-git -fg bisque -bg black -fn 6x13 -Q /tmp/g --snip--snip-- Cheers, thanks in advance =), Eduardo Ochs eduardoochs@gmail.com http://angg.twu.net/ http://angg.twu.net/#eev P.S.: I use glyphs a lot in my personal files (see ), and a few glyphs - 3, actually - in a package that I would like to include in Emacs in a few more months or years: ... I tried to keep this first bug report quite concise, but I may have tests ready for several other related cases where the behaviors of Emacs24 were a bit unexpected to me... P.P.S.: the Emacs23 used for comparison was the standard one in Debian Squeeze, GNU Emacs 23.2.1 (i486-pc-linux-gnu, GTK+ Version 2.20.1) of 2013-01-08 on murphy, modified by Debian and the extra info for my Emacs24 from the git repository (I ran it with "-Q") follows below. In GNU Emacs 24.3.50.2 (i686-pc-linux-gnu, GTK+ Version 2.20.1) of 2013-02-11 on varda Windowing system distributor `The X.Org Foundation', version 11.0.10707000 System Description: Debian GNU/Linux 6.0.6 (squeeze) Important settings: value of $LANG: C locale-coding-system: nil default enable-multibyte-characters: t Minor modes in effect: tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: None found. Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) --f46d0444e7d789e3b404d57d1018 Content-Type: image/png; name="glyph-bug-screenshot.png" Content-Disposition: attachment; filename="glyph-bug-screenshot.png" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hd2drhvm0 iVBORw0KGgoAAAANSUhEUgAAAfIAAAGTCAIAAABcWwd4AAAACXBIWXMAAABIAAAASABGyWs+AAAA CXZwQWcAAAHyAAABkwCwUb1BAAAVpUlEQVR42u3dzZHbOLsGUOmWk3CXQ/HG+4nDCXwBuBzAZOO9 N05i9i5NGLoLljlsgATAP5F6dU65XGqKAEGI/QgC2dT17e3tMuF2u10AOJ9CdP/f0W0DYEtiHSAU sQ4QilgHCEWsA4Qi1gFCEesAoYh1gFDEOkAoYh0gFLEOEIpYBwhFrAOE0hTr99+/jm4nm/FqQmz1 WL///nX99Pnodv7XmMsgmHZNqGRb5dX6x8N/K0u17F2yTlLJaM3XT58lOwT2YUGZnYL+VO8f7W1O lrTsQlJqWGTWO1ae6X1V3ePRmoHYKqP10ag9T/i2Dzzz1dbH3LL3oUKp/qmWmmdtPVnZgB0Cm33K dHSiIF9YXpKXGq0n12VTIc6m2nPJ5j0utWSvbquQzoWaW7J4q3WAFzQ71vM06T/v91nZ/VhYkpfq M3RuWuUDz6Tmy1hAVyN7sXzrswqu2XS30e5fMv3iPQBex5K59UQSGcOkHk71TpVanzjdFssVPmYq 6dj0zOfWD2wMcJQNYj2XTxCLmLL9Uli+w6upTMIsm0wolF1wgUeLajvz+e7qPP4Cz3IeUtZDYLNH 68Pp8tEVRie1kyXlgjslzubzMMn53tEJ/ZZSW63T2M9AbNe3t7ep5263W/fg2Qd3efuffY+27Q3g 6RSiuynWATiVQnS71RdAKGIdIBSxDhCKWAcIRawDhCLWAUIR6wChiHWAUMQ6QChiHSAUsQ4QilgH CEWsA4Qi1gFCqcT6s3zdDwCd7b/0DoADmYQBCKUe6wbsAE/EaB0gFLEOEIpYBwhFrAOEUo/1++9f 10+fj24nAE2M1gFCqf+VqaE6wBOp/5Xp0S0EYAaTMAChiHWAUMQ6QChiHSAUsQ4QilgHCEWsA4Qi 1gFCEesAoYh1gFDEOkAoYh0gFLEOEMqHB2zjfr8nS67X69E7DhCT0TpAKHuN1u+XSz8gv16v+YD9 0i/pRu7JCtfr+JJ8mL+gHoC4to/1YaAPH79faRDQ/eMkcIc/5u8KU/XkpVrqAYii6Suqq0uGrpdL l519pt/v91WT6cPcb8/lfGg/OtgHiKX+XaaX9zmeL0mL/EnzPt9HTMXr/Z4GdzmL22NapgOvoem7 TIffaJovSYuMPZ4csI/OovTJ3j0YBv3UgD1J7fzHixkY4CXU59bzBG/53uo8wrtkf3fudBi+o6Gf z79fxs6dVkfio/UARHTcBY5bJaw5dICBplOmyUx6vqTRf1Mxo1mcrT1ZUT8V05Lg5l6AV9J0geOy eZiKZMZ8OGmeX/dSyO6knpHWt9UDEEIl1u+/fyUJni+Z5Z5fS97LF1avgVlfD0AsTVfClJcAcB6P uNWXG3sBPIxbfQGEsn2sd9fJ9P8utZsNPK/99qu95g2vUwJi2D7Wr58+93+JWp6IX3iV5KGZtWDr u6Z/18n9JvIlwKvZ/lZf7ZadfT32nO05zxg7sw30tr/VV6GqpJ7R2YNyzWtKlW5PNrGDc9s8q55Z bc5rntXtST0maiCwypUw3cf55FZfCy5d74v0D5KJgmGdhfoXl6qus6DNLTXn3bVVm4dvG3078yV5 PfkDIJK9bvU1t0ifmNUZ+QWllo1M94u8TUbKje+4+bb6FWQ6hPSI69YbLRtCVkslI9bH7Evlm0Ye mKeyG17NQ2/1Vd5K92DWVRyzSrVUu3K/umaUp01Wbm5xC6tT+Wt2HDiPw2711U8E59PW1emUWaWG EzVT4dWyTr71y/v3lUJfDee7Z+1pXmrW296yXgWe2vXt7W3qudvttvmtvmJrPB16Qs/VWqAQ3ZVY P7rlz6dldAywUiG6T3TKNAZpDhzLrb4AQhHrAKGIdYBQxDpAKGIdIBSxDhCKWAcIRawDhCLWAUIR 6wChiHWAUMQ6QChiHSAUsQ4QyvaxvuHXp1W/XW/47LZf2zZa2x7f9gewrVOP1ne9d/mCgHYvdeD8 mr6iurrkGT0yo2P0GPAUKt+ONPWlzHO/+jL/KriWJcsk9XRNHX5JdL/OcEPL2tO+X74sFHiQt2nd CnNH6+X1+4ybtX51c1NT4Zf3E+ItNZdbWH7csibAeoXorn+XaT7G3HbUmY9zV8rr6TfRMu5es63h x4LhtozTgYc5y1dU5/M8j6xn8dan3vNMuQBHaTplmiTdttf55ZXPKt4NkPMM3WT0PbfgcGLdJAxw iKbR+tx5mGGKddMRyYnEwpLhUwtONo7WM9XCvubC1i/TJz9b9mvZXgAsdu1PjeZut1seRuJpAZ0G bKsQ3ZVYP7rlAIwoRPep/8oUgLnEOkAox8e6q0QANnR8rA+J+Ad48KWfu1YF5M51q69ll4uIiefi oiDYVSXWp251Ur0tTPInS+1L8g1VS1XbE0BLb8y6482sekZLjdZcLTX68pXbDMyz662+Wt4VCo/z v0uqlopqKnbL/dPndaH4aE9W78iW11x+Sy5XdXmNFxE2dNitvlZ+3G4s/iIf6vMblk3dt7Ll1mZJ kXxb5T+h2vClqW4LmOUst/pirq1ujnZ5mfdFeBH73upr20/W3bButD2P6KqzWnl7stElw+8embu5 ue0pbAtYYPtbfc26sddQyy2x8vHpy95IK789WT+bUe3D4ZdD5a9Oci+z/G5oje0Zlbxeo9sC1nim W30l0w6jjwFeQZxbfW31facAT60Q3U92ylSaA5Sd6+YBAKy0/Wg9/9bm6vrG4ABb2WUSRkwDHOVc t/py8TLASrvc6muqEjftAthbJdb7PxUpLMmNRvb10+f+D1X6H+fWDEDZLrf6Wnx3MJkOsJILHAFC 2fdWX3OZWAdYaftbfV3ep/Pomotv9QVA2blu9SXTAVrEudUXAJdirDtlChCKWAcIRawDhCLWAUIR 6wChiHWAUMQ6QChiHSAUsQ4QilgHCEWsA4Qi1gFCEesAoYh1gFDEOkAoYh0gFLEOEIpYBwhFrAOE ItYBQhHrAKGIdYBQxDpAKGIdIBSxDhCKWAcIRawDhCLWAUIR6wChiHWAUMQ6QChiHSAUsQ4QilgH CEWsA4Qi1gFCEesAoYh1gFDEOkAo18vlcrvdjm4GABt4e3u73m63f/755+iW8Cq+fPny8+fPo1th jwjrx48fH1ZWkR/TjvJtffnypX+8pmNHX6nhj/2z+72Cw5qntr5mjx6ga/Zwuz9//nTMcyrL59aH v5bd43wJ63V58fPnzy4+plZb0OE/B4b1lDe07a7lDThQy16fpKlQMC/Wk5Fjn+Z99CRLeAr965W/ lHtsJZ6HvRFCixmxngzJC2m+/ij/8t7RvXQ6Sc/0/b+gr86TtlOf/5L9yo+KvDdGPz6We6xxW3B+ M+bWkznEZHpxdMmy+dN++jKfx3xZw65IZqj7+Zll09OX45K9PzwKW08+SYzOzudnBfo1R0sl3Vjo wwecb4DNzTtlmh/Z5SV+E7aSB/qG1e5R86ytr1ynZTSdr7NVzXA2a6+E2UM3bjJUp0Xh6pqhlVfa yHeeyPJTpvvpA12mL9D+Go0OYPeblmk/47LsMNuw8mSdahFTNJzKjNH6w+Zhh6P1y8sP2Idn//Iz 0sNTHdXPN8mFTIV6Dunz4S5MJWn+1FSp/NLyfHmhAVM1u9aL85v3V6aPOZqT04OXl0/2SOIFYrw9 4qn9+PHjerlc/ve//x3dktTff//dPz5h8wDO6e+//76+vb1NPe0WYADnVIhuN+YFCEWsA4Qi1gFC EesAoYh1gFDEOkAoYh0gFLEOEIpYBwhFrAOEItYBQhHrAKGIdYBQmmL9/vvX0e1kM15NiK0e6/ff v66fPh/dzv8acxkE064JlWyrvFr/ePhvZamWvUvWSSoZrfn66bNkh8CWfEX1TkF/qveP9jYnS1p2 ISk1LDLrHSvP9L6q7vFozUBsldH6aNSeJ3zbB575autjbtn7UKFU/1RLzbO2nqxswA6BzT5lOjpR kC8sL8lLjdaT67KpEGdT7blk8x6XWrJXt1VI50LNLVm81TrAC5od63ma9J/3+6zsfiwsyUv1GTo3 rfKBZ1LzZSygq5G9WL71WQXXbLrbaPcvmX7xHgCvY8nceiKJjGFSD6d6p0qtT5xui+UKHzOVdGx6 5nPrBzYGOMoGsZ7LJ4hFTNl+KSzf4dVUJmGWTSYUyi64wKNFtZ35fHd1Hn+BZzkPKeshsNmj9eF0 +egKo5PayZJywZ0SZ/N5mOR87+iEfkuprdZp7Gcgtuvb29vUc7fbrXvw7IO7vP3Pvkfb9gbwdArR 3RTrAJxKIbrd6gsgFLEOEIpYBwhFrAOEItYBQhHrAKGIdYBQxDpAKGIdIBSxDhCKWAcIRawDhCLW AUIR6wChiHWAUPaK9fvROwbwmraP9fvEYwAeoB7rc79m+vonze+Xy/VdsYn/AdhOJdb7L6QuLEmL /Enz6zC3739+Hj53lewAG6vEevddxsNvNM6XpEXyx0mm989JdoCt1Sdh8gRv+d76a3UNAHbwkAsc Rwfmo0N4ANZpOmWazKTnS+qSZJfpAPtoGq0vm4fJapn4H4Dt1K+ESRI8XwLAeTRdCVNeAsB5fDi6 AYR1v6fXrl6v5t1gd2KdHQ1zPE95YA873BPm96/hv0vtZgPs1z/tNW9zvRNwAtvH+vXT5/4vUcsT 8ctSI0bWLNiLXdO/e7H6TeRLgGex/a2+2i07+xrjnO0598IZcghg+1t9FapK6hn91F+ueU2p0u3J /uxU3sLhAPZSm5qY6qi5+z6rnln7ntc86+Wb1RvAMd6mdSssG61PpdhUrLTHzbJS5XVGAyspNRVq U2cRpkq1PB59Nn8naNmvas3JLkwtadyvd1t/f47UKVPYUCG661fCbPLBvFqkn8atzsgvKNWS+E33 L3u/TmM795vH2GSk3PVhcpPO0T9Dm9ovEzVwKie6wLFLh7l/xVotNXzq6WYMKt9Y8sA8ld3wLB51 q6+GrXQPZl19MavUIzN95ba63Zl6r9rkJPbiFrZPkQGHaBqt73GBRD9F218NOczoDUsNJ2raQ6ex Pcu2lezF5f37U6HP+8rn9lheao/eyPcLeLxrf2o0d7vd3OrrEEniP1GHv2v5/Z78lambB8BWCtFd ifWjW/66FnxWOBv3hIH9FKL7RKdMGXreNP9vF4Q4HOEhX3oHwKOIdYBQxDpAKGIdIBSxDhCKWAcI RawDhCLWAUIR6wChiHWAUMQ6QChiHSAUsQ4QilgHCEWsA4Qi1gFCEesAoYh1gFDEOkAoYh0gFLEO EIpYBwhFrAOEItYBQhHrAKGIdYBQxDpAKGIdIBSxDhCKWAcIRawDhCLWAUIR6wChiHWAUMQ6QChi HSAUsQ4QilgHCEWsA4Qi1gFCEesAoYh1gFDEOkAoYh0gFLEOEIpYBwhFrAOEItYBQhHrAKGIdYBQ xDpAKGIdIBSxDhCKWAcIRawDhCLWAUIR6wChiHWAUMQ6QChiHSAUsQ4QilgHCEWsA4Qi1gFCEesA oYh1gFDEOkAoYh0gFLEOEIpYBwhFrAOEItYBQhHrAKGIdYBQxDpAKGIdIBSxDhCKWAcIRawDhCLW AUIR6wChiHWAUMQ6QChiHSAUsQ4QilgHCEWsA4Qi1gFCEesAoYh1gFDEOkAoYh0gFLEOEIpYBwhF rAOEItYBQhHrAKGIdYBQxDpAKGIdIBSxDhCKWAcIRawDhCLWAUIR6wChiHWAUMQ6QChiHSAUsQ4Q ilgHCEWsA4Qi1gFCEesAoYh1gFDEOkAoYh0glA9//fXX0W0AYDMfLpfLv//+e3QzeBXfvn37/v37 0a2wR4T18ePHtZMw3759qy5hvaRXv337Vl1SrqEv0nvMXvQJuH7rhxxpeWu/f//umOdUlsf68FDu HudL2ESXhsMuzYeHywaM3wcev1/Hbj3XctCepKlQMC/Wk2Tp07w71vMlrJd375MKfFQ8+0tDMDNi PRmSF9J8/VH+4MmBV3aeTp76/Je0MD8wkiX94/I6Sc2N24Lz+zC6NJ89vPwJ637ANRx59SskS0br qepK9TUEHuUdru/bQzq5PzwKm05amMzOJ8WTgUXy/9Qudw+S1aZqhvMbj/WpI7hlSjcPd1baabR4 +KvT0oCWdVr6J19nq5rhbD6sr4K95eNTeqPj99yC97DGmuFslp8y5dk9+NVsP+Oy6/WOC4b21SKm aDiVGaP1h13l0v3+t0y8vqz8tWh5dZILmYY5e4ZO7ttTeAPIn5oqlUwGtuzpsKqpml3rxfldv379 2v5Xpo5mVop3CMXbI57ax48fr1+/fj26GQBs5vr29jb13O12O7p5AIwoRPdT3pj3/vvX0U1gR17f /azvW6/O+VVOmfYv4fXT5+7H7sGB8jYMlyTH3HD5Hi3P+yfZ+lR7HtMzc3ekULy6woa6fjv8SBvu +LBt/fJhC5MjYW791Z5P1hntn2qnVds8uiT53d/q1dn7iDrPIXSAt2nDA7p7fIY36qQN99+/plrV Ly+sU91QoeDc/pnVhgUdvvjVGXZUobZHvvpbbataz7IeTo6ocr81VlhtXvV4nrWz5aN3uGTq2fV2 PaLOEFa7KkR36yTMVm/OtZUG/09UUh2zJE+d5E37JM0oG7bw2NbmH3TW79FKux5R7RVObb0l0+c2 ux+YJ2W3enX2c/Lm7W3JX5kmn55GJ2pG16kcWPfL5frn/zYth+my38BknJLMsfSfRlv6p77jDVtP JppG2zO6ZJmWD8hbbWtx86r7nh+EyZE57OepabR86ytnulb22FSm7xS1a359LnOOzPwI71+X5A21 +nrt1xtPo3ESpjP89Df1IX1qnUov18bphUpapgvWT8IU9mX003GycG4Dyp+LG1du3NBoC8t9uMdH 8sLmqi1padvUq7OsMaOTgXPb3HJstLw6y+YA85obj4TLPq/OaKnk/5YX7jwzxrsqRPfs0froiZqp dc7zoX6u0dH61Jqj+5vvePuYfXTr+WfhraYpls0qPOOvzU4H4ehnqZbGzDrJWZh+Wfby5aPjwpnS ZR4/W/UUs517W3urr8JVKPP00y9zJmGqTVrenIlZxT22tWzrm/X8ikY+fqN7K3yoP7ppTc3eqamn 7YGp1+vkzd5b6ynT9VcU1KNnmOxTq2w3Zbbs8pikhvxSy8a9XjYtM7r7LT1/4CUHy6bIWoax3b+t fm/7Gdvhv/06bUPD1hbavOB3Zzi2SCZJZn3unLvRBfs+7IGW3oitNFofvpZTHZSc2ZiqqumU6eXP OL15tJ5MtJWvEMjXKTcmOTJGeyM5d5evU+jDWVvPp2JGe37ZtqY6Lf9AkDSjWnm1nkv7sTHWP8Mf p16dcs356f3Gzrm8fydo/02Zta28VMsxv6zmqRbOnaZrrHnqiEqS5GWjeY3H3Txg24HV+is9Djxc Hrn1wz+Hjn6mKS+ZNePMLM/+u0OvEN3uCcPzkSxQiO7/B+wqya2ts/9dAAAAE3RFWHRjb21tZW50 AGVtYWNzQHZhcmRhcVXZBwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxMy0wMi0xMVQyMjoxNTowMi0w MjowMFMh8XEAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTMtMDItMTFUMjI6MTU6MDItMDI6MDAifEnN AAAAAElFTkSuQmCC --f46d0444e7d789e3b404d57d1018--