From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 16:18:03 2016 Received: (at submit) by debbugs.gnu.org; 26 Aug 2016 20:18:03 +0000 Received: from localhost ([127.0.0.1]:41723 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bdNZh-0004tu-W5 for submit@debbugs.gnu.org; Fri, 26 Aug 2016 16:18:02 -0400 Received: from eggs.gnu.org ([208.118.235.92]:52761) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bdNZf-0004tP-QQ for submit@debbugs.gnu.org; Fri, 26 Aug 2016 16:18:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bdNZX-0006QQ-FD for submit@debbugs.gnu.org; Fri, 26 Aug 2016 16:17:54 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:51843) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bdNZX-0006QL-B1 for submit@debbugs.gnu.org; Fri, 26 Aug 2016 16:17:51 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43656) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bdNZT-0003M2-DC for bug-gnu-emacs@gnu.org; Fri, 26 Aug 2016 16:17:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bdNZP-0006Ld-2y for bug-gnu-emacs@gnu.org; Fri, 26 Aug 2016 16:17:46 -0400 Received: from hermes.netfonds.no ([80.91.224.195]:57656) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bdNZO-0006Ix-Gw for bug-gnu-emacs@gnu.org; Fri, 26 Aug 2016 16:17:43 -0400 Received: from luna.netfonds.no ([80.91.225.79] helo=luna) by hermes.netfonds.no with esmtp (Exim 4.84_2) (envelope-from ) id 1bdNZC-0007eg-Kv for bug-gnu-emacs@gnu.org; Fri, 26 Aug 2016 22:17:32 +0200 Received: by luna (Postfix, from userid 547) id 9A6884E00E3; Fri, 26 Aug 2016 22:17:30 +0200 (CEST) From: peder@klingenberg.no (Peder O. Klingenberg) To: bug-gnu-emacs@gnu.org Subject: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" Date: Fri, 26 Aug 2016 22:17:30 +0200 Message-ID: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) --=-=-= Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable I recently started using gnus-icalendar to handle meeting invitations. Someone sent me an invitation that included a rather long email thread in typical outlook style, and gnus errored out when trying to display the article. The backtrace showed that the error comes from the call (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) in icalendar--read-element (nil nil). I reduced and anonymized the contents of the message, the problematic section is attached to this bug report. The problem is reproducible for me from emacs -Q by the following recipe: C-x C-f calendar-event-problem.txt M-: (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) Result: Debugger entered--Lisp error: (error "Variable binding depth exceeds max-sp= ecpdl-size") re-search-forward("\\(.*\\)\\(?\n[ ].*\\)*" nil t) eval((re-search-forward "\\(.*\\)\\(?\n[ ].*\\)*" nil t) nil) eval-expression((re-search-forward "\\(.*\\)\\(?\n[ ].*\\)*" nil t) nil) funcall-interactively(eval-expression (re-search-forward "\\(.*\\)\\(?\n[= ].*\\)*" nil t) nil) call-interactively(eval-expression nil nil) command-execute(eval-expression) Reducing the text size by about 1/3, or just moving the cursor a ways down the buffer before evaling, eliminates the error. >From the same emacs -Q session: max-specpdl-size is a variable defined in =91C source code=92. Its value is 2930 Original value was 1300 Increasing max-specpdl-size to 20000 does not help, the problem still occurs. Strangely, the same recipe does not reproduce the error on os x, with a build from master from 2016-08-12, but on my GNU/Linux machine, which is where I run gnus and need this to work, it is 100% reproducible. I am on Kubuntu 14.04.5, emacs is compiled with gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4. Is this reproducible for anyone else, or do I need to dig deeper into my environment? Any ideas on where to start digging? In GNU Emacs 25.1.50.2 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll b= ars) of 2016-08-11 built on luna Repository revision: 36a57c55f2b855bca704c26bf7d787b7b471fe16 Windowing system distributor 'The X.Org Foundation', version 11.0.11604000 System Description: Ubuntu 14.04.5 LTS Recent messages: scroll-down-command: Beginning of buffer [3 times] (Shell command succeeded with no output) [91 times] Back to top level When done with this frame, type C-x 5 0 Undo! [3 times] calendar-event-problem.txt changed on disk; really edit the buffer? (y, n, = r or C-h) r ask-user-about-supersession-threat: File reverted: /home/pok/tmp/calendar-e= vent-problem.txt previous-line: Beginning of buffer [3 times] Entering debugger... Back to top level Configured using: 'configure --prefix=3D/usr/local/emacs-git --enable-locallisppath=3D/etc/emacs24:/etc/emacs:/usr/local/share/emacs/si= te-lisp/:/usr/share/emacs/site-lisp --with-x=3Dyes --with-x-toolkit=3Dlucid --with-toolkit-scroll-bars --with-pop=3Dyes' Configured features: XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11 Important settings: value of $LC_MONETARY: en_US.UTF-8 value of $LC_NUMERIC: en_US.UTF-8 value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Text Minor modes in effect: csv-field-index-mode: t magit-auto-revert-mode: t global-git-commit-mode: t async-bytecomp-package-mode: t shell-dirtrack-mode: t diff-auto-refine-mode: t show-paren-mode: t yas-global-mode: t yas-minor-mode: t ido-everywhere: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t auto-fill-function: do-auto-fill transient-mark-mode: t Load-path shadows: /home/pok/.emacs.d/elpa/org-20160822/org-macs hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-macs /home/pok/.emacs.d/elpa/org-20160822/ob-dot hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-dot /home/pok/.emacs.d/elpa/org-20160822/ob-mscgen hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-mscgen /home/pok/.emacs.d/elpa/org-20160822/ob-clojure hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/ob-clojure /home/pok/.emacs.d/elpa/org-20160822/org-install hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-install /home/pok/.emacs.d/elpa/org-20160822/org-faces hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-faces /home/pok/.emacs.d/elpa/org-20160822/ob-scheme hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-scheme /home/pok/.emacs.d/elpa/org-20160822/ob-haskell hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/ob-haskell /home/pok/.emacs.d/elpa/org-20160822/ob-sqlite hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-sqlite /home/pok/.emacs.d/elpa/org-20160822/ox-texinfo hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/ox-texinfo /home/pok/.emacs.d/elpa/org-20160822/ob-perl hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-perl /home/pok/.emacs.d/elpa/org-20160822/ob-makefile hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/ob-makefile /home/pok/.emacs.d/elpa/org-20160822/ob-io hides /usr/local/emacs-git/share= /emacs/25.1.50/lisp/org/ob-io /home/pok/.emacs.d/elpa/org-20160822/org-docview hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-docview /home/pok/.emacs.d/elpa/org-20160822/org-irc hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/org-irc /home/pok/.emacs.d/elpa/org-20160822/ob-C hides /usr/local/emacs-git/share/= emacs/25.1.50/lisp/org/ob-C /home/pok/.emacs.d/elpa/org-20160822/ox-man hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ox-man /home/pok/.emacs.d/elpa/org-20160822/org-capture hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-capture /home/pok/.emacs.d/elpa/org-20160822/ob-table hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ob-table /home/pok/.emacs.d/elpa/org-20160822/ob-sql hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-sql /home/pok/.emacs.d/elpa/org-20160822/org-list hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-list /home/pok/.emacs.d/elpa/org-20160822/org-crypt hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-crypt /home/pok/.emacs.d/elpa/org-20160822/org-attach hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-attach /home/pok/.emacs.d/elpa/org-20160822/org-colview hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-colview /home/pok/.emacs.d/elpa/org-20160822/org-id hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/org-id /home/pok/.emacs.d/elpa/org-20160822/ob-plantuml hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/ob-plantuml /home/pok/.emacs.d/elpa/org-20160822/ox-publish hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/ox-publish /home/pok/.emacs.d/elpa/org-20160822/ob-tangle hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-tangle /home/pok/.emacs.d/elpa/org-20160822/org hides /usr/local/emacs-git/share/e= macs/25.1.50/lisp/org/org /home/pok/.emacs.d/elpa/org-20160822/org-indent hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-indent /home/pok/.emacs.d/elpa/org-20160822/ox-ascii hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ox-ascii /home/pok/.emacs.d/elpa/org-20160822/ob-matlab hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-matlab /home/pok/.emacs.d/elpa/org-20160822/org-gnus hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-gnus /home/pok/.emacs.d/elpa/org-20160822/org-feed hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-feed /home/pok/.emacs.d/elpa/org-20160822/org-clock hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-clock /home/pok/.emacs.d/elpa/org-20160822/org-element hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-element /home/pok/.emacs.d/elpa/org-20160822/ob-screen hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-screen /home/pok/.emacs.d/elpa/org-20160822/ob hides /usr/local/emacs-git/share/em= acs/25.1.50/lisp/org/ob /home/pok/.emacs.d/elpa/org-20160822/org-mobile hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-mobile /home/pok/.emacs.d/elpa/org-20160822/ox-latex hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ox-latex /home/pok/.emacs.d/elpa/org-20160822/ob-lisp hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-lisp /home/pok/.emacs.d/elpa/org-20160822/ob-calc hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-calc /home/pok/.emacs.d/elpa/org-20160822/org-bibtex hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-bibtex /home/pok/.emacs.d/elpa/org-20160822/org-macro hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-macro /home/pok/.emacs.d/elpa/org-20160822/org-agenda hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-agenda /home/pok/.emacs.d/elpa/org-20160822/org-entities hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/org-entities /home/pok/.emacs.d/elpa/org-20160822/ob-css hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-css /home/pok/.emacs.d/elpa/org-20160822/ob-R hides /usr/local/emacs-git/share/= emacs/25.1.50/lisp/org/ob-R /home/pok/.emacs.d/elpa/org-20160822/org-mouse hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-mouse /home/pok/.emacs.d/elpa/org-20160822/org-timer hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-timer /home/pok/.emacs.d/elpa/org-20160822/ob-java hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-java /home/pok/.emacs.d/elpa/org-20160822/ob-gnuplot hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/ob-gnuplot /home/pok/.emacs.d/elpa/org-20160822/ob-keys hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-keys /home/pok/.emacs.d/elpa/org-20160822/ob-python hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-python /home/pok/.emacs.d/elpa/org-20160822/org-compat hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-compat /home/pok/.emacs.d/elpa/org-20160822/ob-fortran hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/ob-fortran /home/pok/.emacs.d/elpa/org-20160822/ob-exp hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-exp /home/pok/.emacs.d/elpa/org-20160822/ox-html hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ox-html /home/pok/.emacs.d/elpa/org-20160822/ob-comint hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-comint /home/pok/.emacs.d/elpa/org-20160822/org-src hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/org-src /home/pok/.emacs.d/elpa/org-20160822/ob-scala hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ob-scala /home/pok/.emacs.d/elpa/org-20160822/org-version hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-version /home/pok/.emacs.d/elpa/org-20160822/org-loaddefs hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/org-loaddefs /home/pok/.emacs.d/elpa/org-20160822/ob-emacs-lisp hides /usr/local/emacs-g= it/share/emacs/25.1.50/lisp/org/ob-emacs-lisp /home/pok/.emacs.d/elpa/org-20160822/org-datetree hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/org-datetree /home/pok/.emacs.d/elpa/org-20160822/ob-asymptote hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/ob-asymptote /home/pok/.emacs.d/elpa/org-20160822/ox-org hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ox-org /home/pok/.emacs.d/elpa/org-20160822/org-habit hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-habit /home/pok/.emacs.d/elpa/org-20160822/ox hides /usr/local/emacs-git/share/em= acs/25.1.50/lisp/org/ox /home/pok/.emacs.d/elpa/org-20160822/org-w3m hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/org-w3m /home/pok/.emacs.d/elpa/org-20160822/ob-lob hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-lob /home/pok/.emacs.d/elpa/org-20160822/org-protocol hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/org-protocol /home/pok/.emacs.d/elpa/org-20160822/ob-shen hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-shen /home/pok/.emacs.d/elpa/org-20160822/ob-maxima hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-maxima /home/pok/.emacs.d/elpa/org-20160822/ob-ref hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-ref /home/pok/.emacs.d/elpa/org-20160822/ob-org hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-org /home/pok/.emacs.d/elpa/org-20160822/ob-latex hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ob-latex /home/pok/.emacs.d/elpa/org-20160822/ox-md hides /usr/local/emacs-git/share= /emacs/25.1.50/lisp/org/ox-md /home/pok/.emacs.d/elpa/org-20160822/org-mhe hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/org-mhe /home/pok/.emacs.d/elpa/org-20160822/ob-ledger hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-ledger /home/pok/.emacs.d/elpa/org-20160822/org-archive hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/org-archive /home/pok/.emacs.d/elpa/org-20160822/org-ctags hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-ctags /home/pok/.emacs.d/elpa/org-20160822/org-info hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-info /home/pok/.emacs.d/elpa/org-20160822/ob-octave hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ob-octave /home/pok/.emacs.d/elpa/org-20160822/org-pcomplete hides /usr/local/emacs-g= it/share/emacs/25.1.50/lisp/org/org-pcomplete /home/pok/.emacs.d/elpa/org-20160822/ob-ditaa hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ob-ditaa /home/pok/.emacs.d/elpa/org-20160822/org-plot hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-plot /home/pok/.emacs.d/elpa/org-20160822/ob-eval hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-eval /home/pok/.emacs.d/elpa/org-20160822/org-table hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-table /home/pok/.emacs.d/elpa/org-20160822/ox-beamer hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/ox-beamer /home/pok/.emacs.d/elpa/org-20160822/ox-odt hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ox-odt /home/pok/.emacs.d/elpa/org-20160822/ob-core hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-core /home/pok/.emacs.d/elpa/org-20160822/org-inlinetask hides /usr/local/emacs-= git/share/emacs/25.1.50/lisp/org/org-inlinetask /home/pok/.emacs.d/elpa/org-20160822/org-rmail hides /usr/local/emacs-git/s= hare/emacs/25.1.50/lisp/org/org-rmail /home/pok/.emacs.d/elpa/org-20160822/ox-icalendar hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/ox-icalendar /home/pok/.emacs.d/elpa/org-20160822/ob-lilypond hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/ob-lilypond /home/pok/.emacs.d/elpa/org-20160822/ob-picolisp hides /usr/local/emacs-git= /share/emacs/25.1.50/lisp/org/ob-picolisp /home/pok/.emacs.d/elpa/org-20160822/ob-sass hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-sass /home/pok/.emacs.d/elpa/org-20160822/org-eshell hides /usr/local/emacs-git/= share/emacs/25.1.50/lisp/org/org-eshell /home/pok/.emacs.d/elpa/org-20160822/ob-awk hides /usr/local/emacs-git/shar= e/emacs/25.1.50/lisp/org/ob-awk /home/pok/.emacs.d/elpa/org-20160822/ob-ruby hides /usr/local/emacs-git/sha= re/emacs/25.1.50/lisp/org/ob-ruby /home/pok/.emacs.d/elpa/org-20160822/ob-ocaml hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/ob-ocaml /home/pok/.emacs.d/elpa/org-20160822/ob-js hides /usr/local/emacs-git/share= /emacs/25.1.50/lisp/org/ob-js /home/pok/.emacs.d/elpa/org-20160822/org-footnote hides /usr/local/emacs-gi= t/share/emacs/25.1.50/lisp/org/org-footnote /home/pok/.emacs.d/elpa/org-20160822/org-bbdb hides /usr/local/emacs-git/sh= are/emacs/25.1.50/lisp/org/org-bbdb /usr/share/emacs24/site-lisp/latex-cjk-thai/thai-word hides /usr/local/emac= s-git/share/emacs/25.1.50/lisp/language/thai-word Features: (shadow emacsbug gnus-dup gnus-draft nndoc cus-edit ess-omg-l ess-toolbar ess-mouse mouseme ess-menu ess-swv ess-noweb essd-els ess-sas-d ess-sas-l ess-sas-a ess-sta-d ess-sta-l make-regexp ess-sp6-d ess-dde ess-sp3-d ess-julia julia-mode ess-r-d ess-r-syntax ess-r-completion ess-roxy essddr hideshow ess-help reporter ess-r-package ess-s-l ess-site ess ess-inf ess-tracebug ess-mode ess-noweb-mode ess-custom executable ess-generics ess-utils ess-bugs-l ess-compat ess-lsp-l map esh-var esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg esh-groups eshell esh-module esh-mode esh-util dired-x autoload tar-mode ffap php-mode flymake cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs hippie-exp vc vc-dispatcher url-queue grep pulse vc-cvs slime-indentation slime-cl-indent cl-indent slime-fancy slime-trace-dialog slime-fontifying-fu slime-package-fu slime-references slime-compiler-notes-tree slime-scratch slime-presentations bridge slime-macrostep macrostep slime-mdot-fu slime-enclosing-context slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc slime-repl elp slime-parse slime lisp-mnt gud apropos etags xref project arc-mode archive-mode hyperspec csv-mode magit-blame magit-stash magit-bisect magit-remote magit-commit magit-sequence magit magit-apply magit-wip magit-log magit-diff smerge-mode magit-core magit-autorevert autorevert filenotify magit-process magit-popup magit-mode magit-git magit-section magit-utils git-commit log-edit pcvs-util with-editor async-bytecomp async tramp-sh tramp tramp-compat tramp-loaddefs trampver ucs-normalize shell dash eieio-opt speedbar sb-image ezimage dframe cal-china lunar solar cal-dst cal-bahai cal-islam cal-hebrew holidays hol-loaddefs cal-iso bookmark pp tabify org-rmail org-mhe org-irc org-info org-gnus org-docview doc-view jka-compr image-mode org-bbdb org-w3m org-table org-archive org-clock org-indent ob-ditaa ob-plantuml org-bibtex org-element avl-tree bibtex org-colview org-crypt org-habit org-agenda help-fns radix-tree misearch multi-isearch thingatpt debbugs-gnu add-log debbugs soap-client warnings rng-xsd rng-dt rng-util xsd-regexp debug cus-start cus-load mailalias bbdb-message footnote ecomplete flow-fill vc-git diff-mode sort gnus-cite shr-color color shr svg dom browse-url mail-extr gnus-async gnus-bcklg qp gnus-ml disp-table gnus-topic mm-archive url-http url-gw url-cache url-auth pop3 nnrss xml mm-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util nndraft nnmh nnml utf-7 bbdb-gnus epa-file network-stream nsm starttls gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp gnus-cache pok-gnus gnus-icalendar org-capture gnus-art mm-uu mml2015 mm-view mml-smime smime dig mailcap icalendar diary-lib diary-loaddefs nnir gnus-sum gnus-group gnus-undo bbdb-mua bbdb-com crm bbdb bbdb-site timezone gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message sendmail puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader gnus-win gnus nnheader subr-x gnus-util rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums mail-utils wid-edit linum paren paredit pok-init bugz-mode yasnippet org advice org-macro org-footnote org-pcomplete pcomplete org-list org-faces org-entities time-date noutline outline org-version ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs gedcom slime-autoloads reftex reftex-loaddefs reftex-vars edmacro kmacro ido server filladapt dmacro mm-util mail-prsvr cl compile comint ansi-color ring finder-inf tex-site info package epg-config url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache url-vars seq byte-opt gv bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib emacs-goodies-el emacs-goodies-custom emacs-goodies-loaddefs easy-mmode mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese charscript case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify dynamic-setting system-font-setting font-render-setting x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 2485829 182861) (symbols 48 72236 91) (miscs 40 3269 4672) (strings 32 298119 63000) (string-bytes 1 12887713) (vectors 16 103720) (vector-slots 8 2448384 49706) (floats 8 4985 2034) (intervals 56 225770 627) (buffers 976 190) (heap 1024 299121 -1842968)) --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=calendar-event-problem.txt Content-Transfer-Encoding: base64 REVTQ1JJUFRJT047TEFOR1VBR0U9ZW4tVVM6Tm4gTm5ubm5cLFxuXG5Obm5ubm5ubm4gbm5uIG5u biBubm5ubm4gbm4gbm5ubm5uDQogbm5ubm5ubiBubm5uIG5ubm5ubm5ubi4gTiBubm5uIG5ubm5u bm5ubiBubiBubm4gbm5ubm5ubm4gbm5ubm5ubiBubm4gbm4gbm4NCiBubiBubi1ubm5ubm5uIG5u IE5ubm5ubm4gbm4gOTkuOTkgTk5OTlxuXG5Obm5uIG5ubm5ubm5cLFxuXG5Obm5ubiBObm5ubm5u bg0KICB8IE5ubm5ubm5ubm4gTm5ubm5ubm4gTm5ubm4gTm5ubm5uXG5cbk5OTiBObm5ubm4gTm5u bm5ublxuTm5ubiBObm5ubiBObm5uDQogblwsXG45OSBObm5ubm5ubm5uIE5ubm5ublwsXG5Obm5u bm5cLCBOTjlOIDlOTlxuKzk5OTk5OTk5OTk5OSB8IE5ubm46IG5ubm4NCiBubm5ubkBubm4ubm5u XG5ubm5ubm5ubm5Abm5uLm5ubiB8IG5ubi5ubm4ubm5uXG5cblxuXG5cbl9fX19fX19fX19fX19f X19fXw0KIF9fX19fX19fX19fX19fX19fX19fX19fX19fX1xuTm5ubjogTm5ubm4gTi4gTm5ubm5u bm5ubm4gW25ubm5ubjpubm5Abm5ubm5uDQogbm4ubm5dXG5Obm5uOiA5OSBObm5ubm4gOTk5OSA5 Ojk5IE5OXG5ObjogTk5OIE5ubm5ubiA8Tk5OTm5ubm5uQG5ubi5ubm4+XG4NCiBObjogTm5ubiBO bm5ubiA8bm5ubm5uQG5ubi5ubm4+XDsgTm5ubiBObm5ubm5ubiA8bm5ubm5ubm5uQG5ubi5ubm4+ XDsgK05OTg0KIE4gPE5OTk5Abm5uLm5ubj5cOyArTk4gTm5ubm5uIDxObm5ubm5ubkBubm4ubm5u PlxuTm5ubm5ubjogTm46IFtOTk5dIE5uOiBODQogbm5ubm5uIG5ubm5ubm4gbm4gTk5OXG5cblxu Tm5ubm5cLCBOIG5ubm4nbiBubm4gbm5uIG5ubm4gbm5ubm4gbm5uLiAgOTk6OTkNCiAgTk5OIG5u biBubm5ubm5cLCBubm4gOTk6OTkgTk5OIG5uIG5ubm5ubiBubiBubiBuIG5ubm5ublwsIG5ubiBO J24gbm5ubm4gbg0KIG5ubm5ubm5uLiA6KVxuXG4tLVxuTm5uL05ubm5ubm5cbk5ubm5uIE4uIE5u bm5ubm5ubm5uXG5Obm5ubm5ubiBObm5uIE5OXG5cDQogbk5uIE5ublwsIE5ubiA5OSA5OTk5IG5u IDk5Ojk5XCwgTk5OIE5ubm5ubiBubm5ubjpcblxuPiBObiBObm5ublwsXG4+XG4+IE4NCiBubm4g bm5uJ25uIG5ubm5ubiBuIG5ubm4gbm5ubi5cbj5cbj4gTm5ubm4gbm4gbm4gbm5ubm5ubm4gbm4g bm5ubiBObm5ubm5ubg0KIG5ubm5uIG5ubm4gbm5ubiBubiBubm5uIG5uIDkuOTlubiBOTk4gbm5u bm4/XG4+XG4+IE5ubm4gbm5ubm5ublwsXG4+XG4+IE5uDQogbm5uIE5ubm5ubm5uIHwgTm5ubm5u bm5ubiBObm5ubm5ubiBObm5ubiBObm5ubm5cbj5cbj4gTk5OIE5ubm5ubiBObm5ubm5uXG4NCiA+ IE5ubm4gTm5ubm4gTm5ubm5cLFxuPiA5OSBObm5ubm5ubm5uIE5ubm5ublwsXG4+IE5ubm5ublws IE5OOU4gOU5OXG4+ICs5OQ0KIDk5OTk5OTk5OTkgfCBObm5uOiBubm5ubm5ubm5Abm5uLm5ublxu PiBubm5ubm5ubm5Abm5uLm5ubiB8IG5ubi5ubm4ubm5uXG4+DQogXG4+IC0tLS0tTm5ubm5ubm4g Tm5ubm5ubi0tLS0tXG4+IE5ubm46IE5OTiBObm5ubm5cbj4gTm5ubjogOTkgTm5ubm5uIDk5OTkN CiAgOTo5OSBOTlxuPiBObjogJ05ubm5uIE4uIE5ubm5ubm5ubm5uJyA8bm5uQG5ubm5ubm5uLm5u Plw7IE5OTiBObm5ubm5cbj4gPA0KIE5OTk5ubm5ubkBubm4ubm5uPlxuPiBObjogTm5ubiBObm5u biA8bm5ubm5uQG5ubi5ubm4+XDsgTm5ubiBObm5ubm5ubiA8bm5uDQogbm5ubm5uQG5ubi5ubm4+ XDtcbj4gK05OTk4gPE5OTk5Abm5uLm5ubj5cOyArTk4gTm5ubm5uIDxObm5ubm5ubkBubm4ubm5u PlwNCiBuPiBObm5ubm5uOiBOTjogW05OTl0gTm46IE5ubm5ubm4gbm5ubm5ubiBubiBOTk5cbj5c bj4gTk4gTm5ubm5cLFxuPlxuPiBObg0KIG5ubm5ubm4gbm5ubm4gbm5uIG5uLiBObm5ubm4gOW5u IE5OTiBubm5ubiBubiBubm5ubi4gTiBubm5uIG5ubm4gbm5uLlxuPlxuDQogPiBO4oCZbm4gbm5u bm5ubiBubm4gbiBubm5ubm5uIG5ubm5ubiBubm4gbm5ubiBubm5ubm5ubiBubm5ubm5uLlxuPlxu PiBObm4NCiBuIG5ubm5ubm5cLFxuPlxuPiBObm5ubiBObm5ubm5ubiB8IE5ubm5ubm5ubm4gTm5u bm5ubm4gTm5ubm4gTm5ubm5uXG4+XG4+IA0KIE5OTiBObm5ubm4gTm5ubm5ublxuPiBObm5uIE5u bm5uIE5ubm5uXCxcbj4gOTkgTm5ubm5ubm5ubiBObm5ubm5cLFxuPiBObm5uDQogbm5cLCBOTjlO IDlOTlxuPiArOTk5OTk5OTk5OTk5IHwgTm5ubjogbm5ubm5ubm5uQG5ubi5ubm5cbj4gbm5ubm5u bm5uQG5ubi4NCiBubm4gfCBubm4ubm5uLm5ublxuPlxuPiAtLS0tLU5ubm5ubm5uIE5ubm5ubm4t LS0tLVxuPiBObm5uOiBObm5ubiBOLiBObm5ubg0KIG5ubm5ubiBbbm5ubm5uOm5ubkBubm5ubm5u bi5ubl1cbj4gTm5ubjogOTkgTm5ubm5uIDk5OTkgOTo5OSBOTlxuPiBObjogTk5ODQogIE5ubm5u biA8Tk5OTm5ubm5uQG5ubi5ubm4+XG4+IE5uOiBObm5uIE5ubm5uIDxubm5ubm5Abm5uLm5ubj5c OyBObm5uIE5ubm4NCiBubm5uIDxubm5ubm5ubm5Abm5uLm5ubj5cO1xuPiArTk5OTiA8Tk5OTkBu bm4ubm5uPlw7ICtOTiBObm5ubm4gPE5ubm5ubm5uQA0KIG5ubi5ubm4+XG4+IE5ubm5ubm46IE5u OiBbTk5OXSBObjogTm5ubm5ubiBubm5ubm5uIG5uIE5OTlxuPlxuPiBOblwsIE5ubm5uDQogLlxu PlxuPiBObm5ubm4gbm5ubm5ubiBObm5ubm5ubm4gbm5ubiBubm5uIG5uIG5ubm4gbm5uIG5uXCwg bm5ubm5ubm5uIG5uIG4NCiBubm5cbj4gbm5ubiBubiBubm5uIG5ubm5uIG5ubiBubm5uIG5ubm5u LiAgTm4gbm4gbm5ubiBubiBubm5uIG5ubm5uIE5OIG5ubg0KIG5uXCxcbj4gbm4gbm5uIG5uIG5u IG5ubiBubm5ubiBubm4gbm5ubj8gIE5ubm5ubm4gbm5ubm4gOTkgTk5OIG5ubm5uIG5ubiBuDQog bi5cbj5cbj4gTm5ubm5uIE4gbm5ubiBubm4gbm4gbm5ubiBubm4gbm5ubiBubj8gIE5uIG5ubm5u biBubm5uIG5uICs5OSA5OTkNCiA5IDk5OTkuXG4+XG4+IC0tXG4+IE5ubi9Obm5ubm5uXG4+IE5u bm5uIE4uIE5ubm5ubm5ubm5uXG4+IE5ubm5ubm5uIE5ubm4gTg0KIE5cbj5cbj4gTm4gTm5uXCwg Tm5uIDk5IDk5OTkgbm4gOTk6OTlcLCBOTk4gTm5ubm5uIG5ubm5uOlxuPlxuPj4gTm4gTm5ubm5c DQogLFxuPj5cbj4+IE5ubm5uXCwgbm5ubiBubm5ubm5uIG5ubiBubm5uIG5ubm5ubm5ubm5ubiBu biBubm4gbm5ubi4gTm5ubiBubiANCiBubm4gbm5ubm5ubiBubm5uIG5ubm5ubiBubiBubm5uIG5u IG5ubm5ubiBubm5ubm5ubm4gbm5uIE5OTiBubm5ubm5ubm4uXG4+Pg0KIFxuPj4gTm4gbm5ubm4g bm4gbm5ubiBubiBubm5uIG5ubm4gbm5ubm5ubm5uIG5ubm4gbm5uIG5ubm5ubm5ubm5ubm4gbm5u bm5uDQogXG4+PiBubm5ubiBOIG5ubm4gbm5ubm5ubm4uIE4gbm5ubm4gbm5ubm5uIG5uIG5ubm5u IG5ubiBubm5ubm5ubiBubm5ublwsXG4NCiA+PiBubm5uIG5ubm4gLyBubm5ubm5ubm5uIG5ubm5u bm5ubiBubm4gbm5ubiBubm5ubm4gbm5ubm5ubm5uIG5ubiBubm5cbj4+IA0KIG5ubm5ubiAvIG5u bm5ubm4gLyBubm5ubm4gbm5ubm5ubm5ubm5ublwsIG5ubm5ubm5uIG5ubm5uIG5ubm5ubiA5OVxu Pj4gbm5uDQogbm5ubiBubm5uIG4gbm5ubm4gbm5ubi4gTm5ubiBubiBubm5uIG5ubm5uIG5ubm5u biBubm4gbm4gbm5uIG5ubm5uXG4+PiBubm4NCiBubm5uIG5ubm4gbm5ubm5ubm5ubi5cbj4+XG4+ PiBObm5ubm4gbm5uIG5uIG5ubm4gbm5ubiBubm5ubm5ubm5uIG5ubm4gLyBubg0KIG5ubiBubm4g bm5uLlxuPj5cbj4+IE5ubm4gbm5ubm5ublwsXG4+PlxuPj4gTm5ubm4gTm5ubm5ubm4gfCBObm5u bm5ubm5uIE5uDQogbm5ubm5uIE5ubm5uIE5ubm5ublxuPj5cbj4+IE5OTiBObm5ubm4gTm5ubm5u blxuPj4gTm5ubiBObm5ubiBObm5ublwsXG4+PiANCiA5OSBObm5ubm5ubm5uIE5ubm5ublwsXG4+ PiBObm5ubm5cLCBOTjlOIDlOTlxuPj4gKzk5OTk5OTk5OTk5OSB8IE5ubm46IG5ubg0KIG5ubm5u bkBubm4ubm5uXG4+PiBubm5ubm5ubm5Abm5uLm5ubiB8IG5ubi5ubm4ubm5uXG4+PlxuPj4gLS0t LS1Obm5ubm5ubiBODQogbm5ubm5uLS0tLS1cbj4+IE5ubm46IE5ubm5uIE4uIE5ubm5ubm5ubm5u IFtubm5ubm46bm5uQG5ubm5ubm5uLm5uXVxuPj4gTm4NCiBubjogOTkgTm5ubm5uIDk5OTkgOTo5 OSBOTlxuPj4gTm46IE5OTiBObm5ubm4gPE5OTk5ubm5ubkBubm4ubm5uPlxuPj4gTm46IA0KIE5u bm4gTm5ubm4gPG5ubm5ubkBubm4ubm5uPlw7IE5ubm4gTm5ubm5ubm4gPG5ubm5ubm5ubkBubm4u bm5uPlw7XG4+PiArTk5ODQogTiA8Tk5OTkBubm4ubm5uPlw7ICtOTiBObm5ubm4gPE5ubm5ubm5u QG5ubi5ubm4+XG4+PiBObm5ubm5uOiBObjogW05OTl0gTm4NCiA6IE5ubm5ubm4gbm5ubm5ubiBu biBOTk5cbj4+XG4+PiBObm5ubiBubm5ubi5cbj4+XG4+PiBOIG5ubm4gbm5uIG5ubm5ubiBubg0K IG5uIG5ubm5cLCBubm4gTiduIG5ubm5ubiBubm5ubiBubm5uIG5ubm5ubiBubiBublxuPj4gbm5u LiAgTiBubm5ubiBubiBubm4gDQogbm5ubm4gbm5ubm4gbm4gbm5uIG5ubm5uIG5ubm5ubm5ubiBu bm5uLW5ubi1ubm5uXG4+PiBubm4gbm5ubi1ubi1ubm5uIG5ubm4NCiBubi4gIE5ubiBubiBubm5u bm5uIG5uIG5ubiBubm5ubiBubm5ubiBubm5ubj9cbj4+IE5ubiBubm5uLW5ubi1ubm5uXCwgbm5u IA0KIG5ubm5ubm5uIG5ubm5ubiBubm5ubm5uIG5uIG4gbm5ubm5uXCwgbm5ubm4gTlxuPj4gbm5u IG5ubm5ubm5ubiBuIG5ubm5ubi4gDQogIE5uIG5ubm4gbm5ubm5ubiBubiBubm4gbm5uIG5ubm5u bm5ubm4gbm5uXG4+PiBubm5uIG5ubm4gbm4gbm5ubm5cLCBubiBubm4NCiBubm5uIG5ubm4gbm4g bm5uIG5ubm4gbm5ubm5uIG5ubm5uP1xuPj5cbj4+IE5ubm5ubiBubm4gbm4gbm5ubiBubiBublws IG5uIA0KIG5ubm4gbm5ubm5ubm4gbm5uIG5ubm4gbm5ubm4gbm5ubm4gbm5cbj4+IG5ubm5ubiBu biBubm5ubm5ubm5uIG5ubiBubm4gbm5uDQogbm5ubm5ubiBubm5ubm4gbm5ubiBubiBubm4gbm5u bm5cbj4+IG5ubm5cLCBubm4gbm4gbm5ubm4gbm4gbm5ubiBubiBubm5uIG4NCiBubiBubm5ubm5u IG5ubiBubm5ubm5ubm5uLlxuPj5cbj4+IE4gbm5ubiBubm5ubm5ubm5ubm4gbm5ubm5uIG5ubm5u biBubm5ubg0KIG5cLCBubm5ubiBubm5ubm5cLCBubm5ubm5ubm5cbj4+IG5ubm5uIG5ubm5ubm4g bm5uIG5ubm5ubiBubm5ubm5uXCwgTk5OIG5uDQogbm5ublwsIG5ubm5ubm5ubiBubm5ubm5ublxu Pj4gbm5ubm5ubm5ublwsIG5ubiBubm5ubiBubm5ubm5ubm5ubm5uLlxuPj5cbj4NCiA+IE5ubiBu biBubiBubm5ubm5uIG5uIG5ubm5ubm5ubm4/ICBObiBubiBubm5uIG5uIG5ubm4gbm5ubiBubm5u bm4gbm5ubiBubg0KIG5ubm5ubm4gbm4gbm5uP1xuPj5cbj4+IC0tXG4+PiBObm4vTm5ubm5ublxu Pj4gTm5ubm4gTi4gTm5ubm5ubm5ubm5cbj4+IE5uDQogbm5ubm5uIE5ubm4gTk5cbj4+XG4+PiBO biBObm5cLCBObm4gOTkgOTk5OSBubiA5OTo5OVwsIE5OTiBObm5ubm4gbm5ubm46XG4NCiA+Plxu Pj4+IE5uIE5ubm5uXCxcbj4+PlxuPj4+IE5ubm5uIC0gTiBubm5uIG5ubm4gbm5ubiBubm5ubiBu bm5ubm5ubm5uIG5uIA0KIG5ubiBubm4gbm5ubm5uIG5uIG5ubiBubm4gbm5ubm5ubm5ubm4uXG4+ Pj5cbj4+PiBObm5ubm4gbm5ubm5ubm4gbm5ubm5ubi5cDQogbj4+PlxuPj4+IE5ubm4gbm5ubm5u blwsXG4+Pj5cbj4+PiBObm5ubiBObm5ubm5ubiB8IE5ubm5ubm5ubm4gTm5ubm5ubm4gTm4NCiBu bm4gTm5ubm5uXG4+Pj5cbj4+PiBOTk4gTm5ubm5uIE5ubm5ubm5cbj4+PiBObm5uIE5ubm5uIE5u bm5uXCxcbj4+PiA5OSBObg0KIG5ubm5ubm5uIE5ubm5ublwsXG4+Pj4gTm5ubm5uXCwgTk45TiA5 Tk5cbj4+PiArOTk5OTk5OTk5OTk5IHwgTm5ubjogbm5ubm5uDQogbm5uQG5ubi5ubm5cbj4+PiBu bm5ubm5ubm5Abm5uLm5ubiB8IG5ubi5ubm4ubm5uXG4+Pj5cbj4+PiAtLS0tLU5ubm5ubm5uIE4N CiBubm5ubm4tLS0tLVxuPj4+IE5ubm46IE5ubm5uIE4uIE5ubm5ubm5ubm5uIFtubm5ubm46bm5u QG5ubm5ubm5uLm5uXVxuPj4+IA0KIE5ubm46IDk5IE5ubm4gOTk5OSA5Ojk5IE5OXG4+Pj4gTm46 IE5OTiBObm5ubm4gPE5OTk5ubm5ubkBubm4ubm5uPlxuPj4+IE5uDQogOiBObm5uIE5ubm5uIDxu bm5ubm5Abm5uLm5ubj5cOyBObm5uIE5ubm5ubm5uIDxubm5ubm5ubm5Abm5uLm5ubj5cO1xuPj4+ ICsNCiBOTk5OIDxOTk5OQG5ubi5ubm4+XDsgK05OIE5ubm5ubiA8Tm5ubm5ubm5Abm5uLm5ubj5c bj4+PiBObm5ubm5uOiBObjogW05OTg0KIF0gTm46IE5ubm5ubm4gbm5ubm5ubiBubiBOTk5cbj4+ PlxuPj4+IE5uXCwgTm5ubm5cbj4+PlxuPj4+IE5uIG5ubm4gbm5ubm5uDQogbm5uIG5ubm4gbm5u biBOTiBubm5uLiAgTm5ubm4gbm5uIG5ubm4gbiBubm4gbm5ubm5cbj4+PiBubm5uIG5ubm5uIG5u bm5ubm4NCiBuIE5OIG5ubm4gbm5ubm5ubiBubm4gbm4gbm5ublwsIG5uIG5uIG5ubm5uIG5uIG5u bm5cbj4+PiBubiBubm5uIG5ubm4gbm5ubg0KIG5uIG5ubm5cLCBubm4gbm4nbiBubm4gbiBubm5u bm5ubi5cbj4+PlxuPj4+IE4gbm5uJ24gbm5ubm5ubm4gbm5ubiBubiBubm4gDQogbm5ubiBubm5u bm5uIG5ubiBubm4gbm4gbm5ublwsIG5ubiBubm5ubm5ubm5uIG5uIG5ubiBubm5ubiBubm4gbm5u biBOTk4gbm4NCiBubm5ubm5ubm5ubiBubiBubiBubm4gbm5ubm4gbm5uLlxuPj4+XG4+Pj4gLS1c bj4+PiBObm4vTm5ubm5ublxuPj4+IE5ubm5uIA0KIE4uIE5ubm5ubm5ubm5uXG4+Pj4gTm5ubm5u bm4gTm5ubiBOTlxuPj4+XG4+Pj4gTm4gTm5uXCwgTm5uIDk5IDk5OTkgbm4gOTk6DQogOTlcLCBO Tk4gTm5ubm5uIG5ubm5uOlxuPj4+XG4+Pj4+IE5uIE5ubm5uXCxcbj4+Pj5cbj4+Pj4gTm5ubiBu bm4nbm4gbm5uIG4NCiAgbm5ubiBubm5ubm5uLlxuPj4+PlxuPj4+PiBObiBubiBubiBubm5ubm5u IG5ubm5ubm5ublwsIG5ubm5uIE4gbm5uIG5ubm5ubg0KIG4gbm4gbm5ubiBubm5ubm5cbj4+Pj4g bm5ubm5ubi4gTm5uIE4gbm5ubm5ubiBubm5ubm5uIG5ubiBubm5uIG5uIG5ubm5ubm4gDQogTk4g bm5uIE5OIG5ubm5cLFxuPj4+PiBubiBubm4gbm4gbm5uIG5ubm5uP1xuPj4+PlxuPj4+PiBObm5u biBubiBubm5uIG5ubm4NCiBublwsIE4gbm5ubiBubiBubm5ubiBubm4gbm5ubiBubm5ubiBubm5u IG5ubm5ubm5ubiBubiBubm5uIG5ubiBubm5ubm5ubiBOTg0KIE4gbm5ubm5ubm5uIG5ubiBubiBu bm4gbm4gbm5ubiBubm5ubi5cbj4+Pj5cbj4+Pj4gTm5ubiBubm5ubm5uXCxcbj4+Pj5cbj4+DQog Pj4gTm5ubm4gTm5ubm5ubm4gfCBObm5ubm5ubm5uIE5ubm5ubm5uIE5ubm5uIE5ubm5ublxuPj4+ PlxuPj4+PiBOTk4gTm5ubm4NCiBuIE5ubm5ubm5cbj4+Pj4gTm5ubiBObm5ubiBObm5ublwsXG4+ Pj4+IDk5IE5ubm5ubm5ubm4gTm5ubm5uXCxcbj4+Pj4gTm5ubg0KIG5uXCwgTk45TiA5Tk5cbj4+ Pj4gKzk5OTk5OTk5OTk5OSB8IE5ubm46IG5ubm5ubm5ubkBubm4ubm5uXG4+Pj4+IG5ubm5ubm5u DQogbkBubm4ubm5uIHwgbm5uLm5ubi5ubm5cbj4+Pj5cbj4+Pj4gLS0tLS1Obm5ubm5ubiBObm5u bm5uLS0tLS1cbj4+Pj4gTm5ubjoNCiAgTm5ubm4gTi4gTm5ubm5ubm5ubm4gW25ubm5ubjpubm5A bm5ubm5ubm4ubm5dXG4+Pj4+IE5ubm46IDk5IE5ubm4gOTk5OSA5Og0KIDk5IE5OXG4+Pj4+IE5u OiBOTk4gTm5ubm5uIDxOTk5Obm5ubm5Abm5uLm5ubj5cbj4+Pj4gTm46IE5ubm4gTm5ubm4gPG5u bm5uDQogbkBubm4ubm5uPlw7IE5ubm4gTm5ubm5ubm4gPG5ubm5ubm5ubkBubm4ubm5uPlw7XG4+ Pj4+ICtOTk5OIDxOTk5OQG5ubi5ubm4NCiA+XDsgK05OIE5ubm5ubiA8Tm5ubm5ubm5Abm5uLm5u bj5cbj4+Pj4gTm5ubm5ubjogTm46IFtOTk5dIE5uOiBObm5ubm5uIG5ubg0KIG5ubm4gbm4gTk5O XG4+Pj4+XG4+Pj4+IE5uXCwgTm5ubm4uXG4+Pj4+XG4+Pj4+IE5ubm4gbm5ubiBubm5ubm5ubm4g Oilcbj4+DQogPj5cbj4+Pj4gTm4gbm5uIG5ubm5ubiBubm5ubm5ubm4tbm4tbm5ubm5uIG5ubi9u biBubm5uLW5ubi1ubm5uIG5ubm5ubj8gIE4NCiBcbj4+Pj4gbm5ubm4gbm5ubiBubiBubm5uXCwg bm5uIG5ubiBuIG5ubm5ubiBubm5ubm5ubiBubm5ubiBubm4gbm5ubm5ubm5uIA0KIC1cbj4+Pj4g bm5ubiBubm5uIG5ubm5ubm5uIG5ubm5ubm4gbm5uIG5ubm5uIG5ubm4gbm5uIG5ubm5ubm5ubm5u blwsIG5uXG4+DQogPj4+IG5ubm5ubm4gbm5ubiBubm5ubiBubm4gbm4gbm5ubm5uP1xuPj4+Plxu Pj4+PiAtLVxuPj4+PiBObm4vTm5ubm5ublxuPj4NCiA+PiBObm5ubiBOLiBObm5ubm5ubm5ublxu Pj4+PiBObm5ubm5ubiBObm5uIE5OXG4+Pj4+XG4+Pj4+IE5uIE5ublwsIE5ubiA5OQ0KICA5OTk5 IG5uIDk5Ojk5XCwgTk5OIE5ubm5ubiBubm5ubjpcbj4+Pj5cbj4+Pj4+IE5uIE5ubm5uXCxcbj4+ Pj4+XG4+Pj4+PiBODQogbm5ubm4gbm5uIG5ubm4gbm5ubm4uIE4gbm5ubm5uIG5ubm4gbm4gbm5u bm5uIG5uIG5ubm5ubm5uIG5uIG5ubiBubm5uIG5ubm4NCiBubm5ubm5uIG5uIG5ubiBubm5ubm4g bm4uXG4+Pj4+PlxuPj4+Pj4gTm5uIG5uIG5ubm5uIG5ubm4gTm5uXCwgbm5uIG5uIG5ubg0KICBu bm5ubiBubiBubiBObm5ubm4uXG4+Pj4+PlxuPj4+Pj4gTm5ubiBuIG5ubm5uIG5ubm5ubm4uXG4+ Pj4+PlxuPj4+Pj4gTm5uDQogbm4gTm5ubm5ubm4gfCBObm5ubm5ubm5uIE5ubm5ubm5uIE5ubm5u IE5ubm5ublxuPj4+Pj5cbj4+Pj4+IE5OTiBObm5ubm4gTm4NCiBubm5ublxuPj4+Pj4gTm5ubiBO bm5ubiBObm5ublwsXG4+Pj4+PiA5OSBObm5ubm5ubm5uIE5ubm5ublwsXG4+Pj4+PiBObm5ubg0K IG5cLCBOTjlOIDlOTlxuPj4+Pj4gKzk5OTk5OTk5OTk5OSB8IE5ubm46IG5ubm5ubm5ubkBubm4u bm5uXG4+Pj4+PiBubm5ubm5uDQogbm5Abm5uLm5ubiB8IG5ubi5ubm4ubm5uXG4+Pj4+PlxuPj4+ Pj4gTm5ubm5cbj4+Pj4+XG4+Pj4+PiAtLS0tLU5ubm5ubm5uIE4NCiBubm5ubm4tLS0tLVxuPj4+ Pj4gTm5ubjogTm5ubm4gTi4gTm5ubm5ubm5ubm4gW25ubm5ubjpubm5Abm5ubm5ubm4ubm5dXG4+ Pg0KID4+PiBObm5uOiA5OSBObm5uIDk5OTkgOTo5OSBOTlxuPj4+Pj4gTm46IE5OTiBObm5ubm4g PE5OTk5ubm5ubkBubm4ubm5uPlxuDQogPj4+Pj4gTm46IE5ubm4gTm5ubm4gPG5ubm5ubkBubm4u bm5uPlw7IE5ubm4gTm5ubm5ubm5cbj4+Pj4+IDxubm5ubm5ubm5Abm4NCiBuLm5ubj5cO1xuPj4+ Pj4gK05OTk4gPE5OTk5Abm5uLm5ubj5cOyArTk4gTm5ubm5uIDxObm5ubm5ubkBubm4ubm5uPlxu Pj4+Pg0KID4gTm5ubm5ubjogTm46IFtOTk5dIE5uOiBObm5ubm5uIG5ubm5ubm4gbm4gTk5OXG4+ Pj4+PlxuPj4+Pj4gTm5cLCBObm5ubi5cDQogbj4+Pj4+XG4+Pj4+PiBObiBubm5ubm4gbm5ubm4g bm5uIG5ubiBubm4gbm4gOTk5OSBOTi4gIE4gbm5ubm5ubm4gbm5uIG5ublwNCiBuPj4+Pj4gbm5u bm5ubm4gbm5ubm5ubiBubm5ublwsIG5ubiBubm4gbm5ubm5uIG5uIG5ubiBubm5ubm5ubm4gbm5u bm5uXG4+Pg0KID4+PiBubm5ubm5uLiAgTm4gbm5uXG4+Pj4+PiBObm5Obm4oOTkpIG5ubiBubiA5 LiAgTm5ubm4gbm5ubiBubiBubm5ubiBubm4gDQogbm5ubiBubm5ubiBubm5uIG5ublxuPj4+Pj4g bm5ubm5ubiBubm5ubm5ubiBubm5ublwsIE4gbm5ubm4gbm5ubm5uIE5ubk5ubiANCiBubiBubm5u bm4gbm4gOTk5OVwsXG4+Pj4+PiBubiBubiBubm4gbm4gbm5uIG5ubm5ubm5uIG5ubm5ubm4uXG4+ Pj4+PlxuPj4+Pg0KID4gTm4gbm5ubiBubiBubm5ubm5ubiBubiBubm4gbm5ubm5ubiBubm5ubm5u bm5ublwsIG5uIG5ubm4gbm5ubiBubm5ubm5ubm4gDQogbm4gbm5uIG5ubm4gbm4gbm5ubm5ubm5u bj9cbj4+Pj4+XG4+Pj4+PiAoTm5ubiBuIG5ubm4gbm5ubm5ublwsIE4nbiBubm5ubm4NCiBuIG5u biBubm5cLCBubm5uIG5ubm5ubm5uIG5ubm4gbm5cbj4+Pj4+IG5ubm5ubi4pXG4+Pj4+PiAtLVxu Pj4+Pj4gTm5uL05ubg0KIG5ubm5cbj4+Pj4+IE5ubm5uIE4uIE5ubm5ubm5ubm5uXG4+Pj4+PiBO bm5ubm5ubiBObm5uIE5OXG4+Pj4+PlxuPj4+Pj4gTm4gDQogTm5uXCwgTm5uIDk5IDk5OTkgbm4g OTk6OTlcLCBOTk4gTm5ubm5uIG5ubm5uOlxuPj4+Pj5cbj4+Pj4+PiBObiBObm5ublwsXG4NCiA+ Pj4+Pj5cbj4+Pj4+PiBOIG5ubiBubm4gbm5ubm4gbm5ubm5ubm4uIE4gbm5ubiBubm5ubm5ubm4g bm5ubiBubm4gbm5ubm5ubg0KIG5ubm4gbm5ubiBubm5uIG5uIG5ubm4gbm5uIG5ubm5ubm5ubiBu bm5ubm5ubm4gbm5ubm5ubm5ubiBubiBubm5ubiBubm4gbm5uDQogbm5ubm5uIG5ubm5ubm46XG4+ Pj4+Pj5cbj4+Pj4+PiA5IG5uIDk5ID09PSBubm5ubm5ublxuPj4+Pj4+IDk5OSBubiA5OTkgPT0N CiA9IG5ubm4gbm5ubm5ubm5cbj4+Pj4+PiA5OTkgbm4gOTk5OSA9PT0gbm5ubm5ubiBubm5ubm5u IDk5OSBubm4gbm5ubiBubm5ubg0KIG5uXG4+Pj4+Pj4gOTk5OSBubiA5OTk5ID09PSBubm5ubm5u IG5ubm5ubm4gOTk5IG5ubiBubm5ubm4gbm5ubm5ublxuPj4+Pj4+DQogIDk5OTkgbm4gOTk5OSA9 PT0gbm5ubm5ubiBubm5ubm5uIDk5OVwsIDk5OSBcLCA5OTkgXCwgOTk5IG5ubiBubm5uXG4+Pj4+ Pj4NCiAgbm5ubm5ublxuPj4+Pj4+IDk5OTkgbm4gOTk5OSA9PT0gbm5ubm5ubiBubm5ubm5uIDk5 OVwsIDk5OVwsIDk5OVwsIDk5OSBubg0KIG4gbm5ubm5uXG4+Pj4+Pj4gbm5ubm5ubiBObm5uIDk5 OTkgPT09IG5ubm5uIG5ubm5uLlxuPj4+Pj4+XG4+Pj4+Pj4gTm4gbm5uDQogIG5ubm5uIG5ubm4g bm4gbm5ubm5uIG5ubiBubm5ubm5ubiBubiBubm5ubiBubm4gbm5ubm5ubm5ubiBubm5ubiBubm4g bm5ubm4NCiBuIG5ubiBubm4gbm5ubm5ubm5uIG5ubm5ubm5ubiBubiBubm5ubm5ubm4uXG4+Pj4+ Pj5cbj4+Pj4+PiBObm5uIG5ubm5ubm5cLA0KIFxuPj4+Pj4+XG4+Pj4+Pj4gTm5ubm4gTm5ubm5u bm4gfCBObm5ubm5ubm5uIE5ubm5ubm5uIE5ubm5uIE5ubm5ublxuPj4+Pj4+DQogXG4+Pj4+Pj4g Tk5OIE5ubm5ubiBObm5ubm5uXG4+Pj4+Pj4gTm5ubiBObm5ubiBObm5ublwsXG4+Pj4+Pj4gOTkg Tm5ubm5ubm4NCiBubiBObm5ubm5cLFxuPj4+Pj4+IE5ubm5ublwsIE5OOU4gOU5OXG4+Pj4+Pj4g Kzk5OTk5OTk5OTk5OSB8IE5ubm46IG5ubm5ubg0KIG5ubkBubm4ubm5uXG4+Pj4+Pj4gbm5ubm5u bm5uQG5ubi5ubm4gfCBubm4ubm5uLm5ublxuPj4+Pj4+XG4+Pj4+Pj4gLS0tLS1ODQogbm5ubm5u biBObm5ubm5uLS0tLS1cbj4+Pj4+PiBObm5uOiBObm5ubiBOLiBObm5ubm5ubm5ubiBbbm5ubm5u Om5ubkBubm5ubm4NCiBubi5ubl1cbj4+Pj4+PiBObm5uOiA5OSBObm5uIDk5OTkgOTo5OSBOTlxu Pj4+Pj4+IE5uOiBOTk4gTm5ubm5uIDxOTk5Obm5ubg0KIG5Abm5uLm5ubj5cbj4+Pj4+PiBObjog Tm5ubiBObm5ubiA8bm5ubm5uQG5ubi5ubm4+XDsgTm5ubiBObm5ubm5ublxuPj4+Pj4+DQogIDxu bm5ubm5ubm5Abm5uLm5ubj5cO1xuPj4+Pj4+ICtOTk5OIDxOTk5OQG5ubi5ubm4+XDsgK05OIE5u bm5ubiA8Tm5ubm5ubm4NCiBAbm5uLm5ubj5cbj4+Pj4+PiBObm5ubm5uOiBObjogW05OTl0gTm46 IE5ubm5ubm4gbm5ubm5ubiBubiBOTk5cbj4+Pj4+PlxuPg0KID4+Pj4+IE5ubm5uIG5ubm5uXCwg Tm5ubm4uXG4+Pj4+Pj5cbj4+Pj4+PiBOIG5ubm4gbm5ubm4gbm5ubm5ubm4gbiBubm5uIG5uDQog bm5uIG5ubiBubm4gbm4gOTkgTm5ubiBObm5uLiAgTm5uXG4+Pj4+Pj4gbm5ubm4gbm5uIG5ubm5u bm5uIG5ubm4gbm5uIG5ubm4NCiAgIk5ubm5uTm5ubm5uIE5ubm5ubiA6IE5OTk5OTlxuPj4+Pj4+ IE5OTk4gbm5uIG5ubm5ubiBubiBubm48Ii4gIE5ubiBubiBubg0KIG5uP1xuPj4+Pj4+XG4+Pj4+ Pj4gLS1cbj4+Pj4+PiBObm4vTm5ubm5ublxuPj4+Pj4+IE5ubm5uIE4uIE5ubm5ubm5ubm5uXG4+ DQogPj4+Pj4gTm5ubm5ubm4gTm5ubiBOTlxuPj4+Pj4+XG4+Pj4+Pj4gTm4gTm5uXCwgTm5uIDk5 IDk5OTkgbm4gOTk6OTlcLCBOTk4NCiAgTm5ubm5uIG5ubm5uOlxuPj4+Pj4+XG4+Pj4+Pj4+IE5u IE5ubm5uXCxcbj4+Pj4+Pj5cbj4+Pj4+Pj4gTm5ubiBubm4gbm5uIA0KIG4gbm5ubiBubm5uIG5u bi4gTm5ubiBubiBubm5uIG5uIG5uIG5ubiBubm5ubm5uIG5ubm5ubm4gbm5ubm5uTm5uTk4uXG4+ Pj4+DQogPj4+XG4+Pj4+Pj4+IE5ubm5ubiBubm4gbm4gbm5ubiBubiBOIG5ubiBubm5ubm4gbm5u bm5uIG5ubm5ubm4uXG4+Pj4+Pj4+XG4NCiA+Pj4+Pj4+IE5ubm4gbm5ubm5ublwsXG4+Pj4+Pj4+ XG4+Pj4+Pj4+IE5ubm5uIE5ubm5ubm5uIHwgTm5ubm5ubm5ubiBObm5ubg0KIG5ubiBObm5ubiBO bm5ubm5cbj4+Pj4+Pj5cbj4+Pj4+Pj4gTk5OIE5ubm5ubiBObm5ubm5uXG4+Pj4+Pj4+IE5ubm4g Tm5ubm4gDQogTm5ubm5cLFxuPj4+Pj4+PiA5OSBObm5ubm5ubm5uIE5ubm5ublwsXG4+Pj4+Pj4+ IE5ubm5ublwsIE5OOU4gOU5OXG4+Pj4+Pj4NCiA+ICs5OTk5OTk5OTk5OTkgfCBObm5uOiBubm5u bm5ubm5Abm5uLm5ublxuPj4+Pj4+PiBubm5ubm5ubm5Abm5uLm5ubiB8IG5ubg0KIC5ubm4ubm5u XG4+Pj4+Pj4+XG4+Pj4+Pj4+IC0tLS0tTm5ubm5ubm4gTm5ubm5ubi0tLS0tXG4+Pj4+Pj4+IE5u bm46IE5ubm5uDQogIE4uIE5ubm5ubm5ubm5uIFtubm5ubm46bm5uQG5ubm5ubm5uLm5uXVxuPj4+ Pj4+PiBObm5uOiA5OSBObm5uIDk5OTkgOTo5OSANCiBOTlxuPj4+Pj4+PiBObjogTk5OIE5ubm5u biA8Tk5OTm5ubm5uQG5ubi5ubm4+XG4+Pj4+Pj4+IE5uOiBObm5uIE5ubm5uIDxubg0KIG5ubm5A bm5uLm5ubj5cOyBObm5uIE5ubm5ubm5uXG4+Pj4+Pj4+IDxubm5ubm5ubm5Abm5uLm5ubj5cO1xu Pj4+Pj4+PiArTk5ODQogTiA8Tk5OTkBubm4ubm5uPlw7ICtOTiBObm5ubm4gPE5ubm5ubm5uQG5u bi5ubm4+XG4+Pj4+Pj4+IE5ubm5ubm46IE5uOiBbTk4NCiBOXSBObjogTm5ubm5ubiBubm5ubm5u IG5uIE5OTlxuPj4+Pj4+PlxuPj4+Pj4+PiBObi5cbj4+Pj4+Pj5cbj4+Pj4+Pj4gTidubg0KICBu bm5uIG5uIG5ubm5ubm4gbm5uIG4gbm5ubm5uIG5uIG5ubm5uLlxuPj4+Pj4+PlxuPj4+Pj4+PiBO J24gbm5ubm5ubm5uIG5uDQogbm5ubm5ubm5ubiBubm5ubm4gbm4gbm4gbm5uIE5OTiBubm5ubm4u ICBObm4gbm5ubm4gbm5uXCwgbm4gTiBubm5ubm5ubm5cLCANCiBubiBubm4gbm5ubiBubm4gbm5u bm5uTm5uTk4gbm4gbm5ubm4uXG4+Pj4+Pj4+XG4+Pj4+Pj4+IE4gbm5ubiBubm5ubiBubm5ubg0K IG5uIG5ubm5ubiBubm5ubm5uLlxuPj4+Pj4+PlxuPj4+Pj4+PiAtLVxuPj4+Pj4+PiBObm4vTm5u bm5ublxuPj4+Pj4+PiBObm5uDQogbiBOLiBObm5ubm5ubm5ublxuPj4+Pj4+PiBObm5ubm5ubiBO bm5uIE5OXG4+Pj4+Pj4+XG4+Pj4+Pj4+IE5uIE5ublwsIE5ubiANCiA5OSA5OTk5IG5uIDk5Ojk5 XCwgTk5OIE5ubm5ubiBubm5ubjpcbj4+Pj4+Pj5cbj4+Pj4+Pj4+IE5uIE5ubm5uXCxcbj4+Pj4+ Pg0KID4+XG4+Pj4+Pj4+PiBObm5ubiBubm4gbm5ubm5ubiBubiBubm5ubiBubm5ubiBubm4gbm4g bm5ubm5uLlxuPj4+Pj4+Pj5cbj4+DQogPj4+Pj4+IE5ubm4gbm5ubm5ublwsXG4+Pj4+Pj4+Plxu Pj4+Pj4+Pj4gTm5ubm4gTm5ubm5ubm4gfCBObm5ubm5ubm5uIE5ubm4NCiBubm5uIE5ubm5uIE5u bm5ublxuPj4+Pj4+Pj5cbj4+Pj4+Pj4+IE5OTiBObm5ubm4gTm5ubm5ublxuPj4+Pj4+Pj4gTm5u biBObg0KIG5ubiBObm5ublwsXG4+Pj4+Pj4+PiA5OSBObm5ubm5ubm5uIE5ubm5ublwsXG4+Pj4+ Pj4+PiBObm5ubm5cLCBOTjlOIDlOTlxuDQogPj4+Pj4+Pj4gKzk5OTk5OTk5OTk5OSB8IE5ubm46 IG5ubm5ubm5ubkBubm4ubm5uXG4+Pj4+Pj4+PiBubm5ubm5ubm5Abm5uLm4NCiBubiB8IG5ubi5u bm4ubm5uXG4+Pj4+Pj4+PlxuPj4+Pj4+Pj4gLS0tLS1Obm5ubm5ubiBObm5ubm5uLS0tLS1cbj4+ Pj4+Pj4+IA0KIE5ubm46IE5ubm5uIE4uIE5ubm5ubm5ubm5uIFtubm5ubm46bm5uQG5ubm5ubm5u Lm5uXVxuPj4+Pj4+Pj4gTm5ubjogOTkgTm5uDQogbiA5OTk5IDk6OTkgTk5cbj4+Pj4+Pj4+IE5u OiBOTk4gTm5ubm5uIDxOTk5Obm5ubm5Abm5uLm5ubj5cbj4+Pj4+Pj4+IE5uOiANCiBObm5uIE5u bm5uIDxubm5ubm5Abm5uLm5ubj5cOyBObm5uIE5ubm5ubm5uXG4+Pj4+Pj4+PiA8bm5ubm5ubm5u QG5ubi5ubm4+XA0KIDtcbj4+Pj4+Pj4+ICtOTk5OIDxOTk5OQG5ubi5ubm4+XDsgK05OIE5ubm5u biA8Tm5ubm5ubm5Abm5uLm5ubj5cbj4+Pj4+Pj4+DQogIE5ubm5ubm46IE5uOiBbTk5OXSBObjog Tm5ubm5ubiBubm5ubm5uIG5uIE5OTlxuPj4+Pj4+Pj5cbj4+Pj4+Pj4+IE5uIG5ubm4NCiBuLlxu Pj4+Pj4+Pj5cbj4+Pj4+Pj4+IE4gbm5ubiBubm5ubm5ubm5ubm5cLCBubm4gbm4gbm5ubm5ubm5u IG5ubm5uIG5ubm4gbg0KIG5uIG5ubm5ubi5cbj4+Pj4+Pj4+IE5uIG5ubm5ubm4gbm4gbm4gbm5u biBubiBubiBubm4gbm5ubm5uIG5ubiBubm5ubm5ubm5uDQogIG5ubm5ubm5uXG4+Pj4+Pj4+PiBu biBubm5ubm5ubm4gbm4gbm5ubm4gbm5ubm5ubi4gIE5uIG5ubm4gbm5ubiBubm5uIG5uIG4NCiBu bm5ubm5ubm5cbj4+Pj4+Pj4+IG5uIG5uIG5ubj9cbj4+Pj4+Pj4+XG4+Pj4+Pj4+PiBOIG5ubm5u biBubiBubiA5OTkuOTk5Lg0KIDk5Ljk5OTo5OTk5IG5uIG5ubm5ubm5ubm5ubm4gOTk6OTkgTk5O XCxcbj4+Pj4+Pj4+IG5ubm4gbm5ubk5ubiBOTk5OL05OTiBuDQogbm4gbm5ubm5uTm5uTm4gTk5O Ti4gIE5uIG5ubm5ubm4gbm5uXG4+Pj4+Pj4+PiBubm5ubm5Obm5ObiBubm5uIG5uIG5uIG5ubm4N CiAgbm4gbm5uIG5ubm5uIG5ubm5ubm5uIG5ubm5ubm5uP1xuPj4+Pj4+Pj5cbj4+Pj4+Pj4+IC0t XG4+Pj4+Pj4+PiBObm4vTm5ubg0KIG5ublxuPj4+Pj4+Pj4gTm5ubm4gTi4gTm5ubm5ubm5ubm5c bj4+Pj4+Pj4+IE5ubm5ubm5uIE5ubm4gTk5cbj4+Pj4+Pj4+XG4+DQogPj4+Pj4+PiBObiBObm5c LCBObm4gOTkgOTk5OSBubiA5OTo5OVwsIE5ubm5uIE4uIE5ubm5ubm5ubm5uIG5ubm5uOlxuPj4+ Pj4NCiA+Pj5cbj4+Pj4+Pj4+PiBOblwsIE5ubm5uLlxuPj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4gTm5u bm4gbm5uXCwgTidubiBubm4gbm4gbg0KIG4gbm5uIG5ubiBubm5ubiBubm5ubm5uXCwgbm5ubm5u IG5ubm5ubm5uLlxuPj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4gLS1cbj4+Pj4+DQogPj4+PiBObm4vTm5u bm5ublxuPj4+Pj4+Pj4+IE5ubm5uIE4uIE5ubm5ubm5ubm5uXG4+Pj4+Pj4+Pj4gTm5ubm5ubm4g Tm5ubiANCiBOTlxuPj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4gTm4gTm5uXCwgTm5uIDk5IDk5OTkgbm4g OTk6OTlcLCBOTk4gTm5ubm5uIG5ubm5uOg0KIFxuPj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+IE5uIE5u bm5uXCxcbj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4gTidubiBubm5uIG5ubm5uDQogbm4gbm5uIE5O IG5ubiBubm5ubm4gbm5uIG5ubm5ubm4uIE5ubm5ublxuPj4+Pj4+Pj4+PiBubm5ubm4gOTk5Ljk5 OS45OS45OTkNCiAuIChObm5uIDk5OTkpXG4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+IE5ubm4gbm5u bm5ublwsXG4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pg0KID4+IE5ubm5uIE5ubm5ubm5uIHwgTm5ubm5u bm5ubiBObm5ubm5ubiBObm5ubiBObm5ubm5cbj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+DQogPj4gTk5O IE5ubm5ubiBObm5ubm5uXG4+Pj4+Pj4+Pj4+IE5ubm4gTm5ubm4gTm5ubm5cLFxuPj4+Pj4+Pj4+ PiA5OSBObm5ubm4NCiBubm5uIE5ubm5ublwsXG4+Pj4+Pj4+Pj4+IE5ubm5ublwsIE5OOU4gOU5O XG4+Pj4+Pj4+Pj4+ICs5OTk5OTk5OTk5OTkgfCBObg0KIG5uOiBubm5ubm5ubm5Abm5uLm5ublxu Pj4+Pj4+Pj4+PiBubm5ubm5ubm5Abm5uLm5ubiB8IG5ubi5ubm4ubm5uXG4+Pj4+Pj4+DQogPj4+ XG4+Pj4+Pj4+Pj4+IC0tLS0tTm5ubm5ubm4gTm5ubm5ubi0tLS0tXG4+Pj4+Pj4+Pj4+IE5ubm46 IE5ubm5uIE4uIE5ubm4NCiBubm5ubm5uIFtubm5ubm46bm5uQG5ubm5ubm5uLm5uXVxuPj4+Pj4+ Pj4+PiBObm5uOiA5OSBObm5uIDk5OTkgOTk6OTkgTk5cbg0KID4+Pj4+Pj4+Pj4gTm46IE5ubm4g Tm5ubm4gPG5ubm5ubkBubm4ubm5uPlxuPj4+Pj4+Pj4+PiBObjogTk5OIE5ubm5ubiA8Tk5ODQog Tm5ubm5uQG5ubi5ubm4+XDsgTm5ubiBObm5ubm5ublxuPj4+Pj4+Pj4+PiA8bm5ubm5ubm5uQG5u bi5ubm4+XDsgK05OTk4gPE4NCiBOTk5Abm5uLm5ubj5cOyArTk4gTm5ubm5uXG4+Pj4+Pj4+Pj4+ IDxObm5ubm5ubkBubm4ubm5uPlxuPj4+Pj4+Pj4+PiBObm5ubg0KIG5uOiBObjogW05OTl0gTm46 IE5ubm5ubm4gbm5ubm5ubiBubiBOTk5cbj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4gTm5ubm5ubm5u DQogblwsIG5ubm4gbm4gbm5ubm5ubiBubm5uIG5uIG5ubm5uIG5ubm4gbm5uLiAgTm5ubm5uIVxu Pj4+Pj4+Pj4+PiAtLVxuPj4+Pj4NCiA+Pj4+PiBObm4vTm5ubm5ublxuPj4+Pj4+Pj4+PiBObm5u biBOLiBObm5ubm5ubm5ublxuPj4+Pj4+Pj4+PiBObm5ubm5ubiBObg0KIG5uIE5OXG4+Pj4+Pj4+ Pj4+XG4+Pj4+Pj4+Pj4+IE5uIE5ublwsIE5ubiA5OSA5OTk5IG5uIDk5Ojk5XCwgTm5ubiBObm5u biBuDQogbm5ubjpcbj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+IE5ublwsIG4gbm5ubm5ubm5uIG5u bm5ubiBubm5uIG5ubm5ubiBubiBubm4NCiAgbm5ubm5ubm5ubm5uIG5uIG5ubiBubm5ubiBubm5u bm5ubm5uIG5uIG5ubiBubm5ubm4gbm5ubi4gTm4gbm5ubiBubm4gbm5uJw0KIG4gbm5ubm5uIG5u IG5uIG5ubm5ubj9cbj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+PiBObm5ubm5uXCxcbj4+Pj4+Pj4+ Pj4+XG4+DQogPj4+Pj4+Pj4+PiBObm5uIE5ubm5uXG4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4g TjogKzk5ICg5KTk5IDk5OTkgOTk5OSB8IE4NCiA6ICs5OSAoOSk5OSA5OTk5IDk5OTlcbj4+Pj4+ Pj4+Pj4+XG4+Pj4+Pj4+Pj4+PiAtLS0tLU5ubm5ubm5uIE5ubm5ubm4tLS0tLQ0KIFxuPj4+Pj4+ Pj4+Pj4gTm5ubjogTm5ubm4gTi4gTm5ubm5ubm5ubm4gW25ubm5ubjpubm5Abm5ubm5ubm4ubm5d XG4+Pj4+Pj4+DQogPj4+PiBObm5uOiBObm5ubm5ublwsIE5ubm4gOVwsIDk5OTkgOTk6OTkgTk5c bj4+Pj4+Pj4+Pj4+IE5uOiBObm5uIE5ubm5uXG4NCiA+Pj4+Pj4+Pj4+PiBObjogTk5OIE5ubm5u blw7IE5ubm4gTm5ubm5ubm5cOyArTk5OTlw7ICtOTiBObm5ubm5cbj4+Pj4+Pj4+Pg0KID4+IE5u bm5ubm46IE5uOiBbTk5OXSBObjogTm5ubm5ubiBubm5ubm5uIG5uIE5OTlxuPj4+Pj4+Pj4+Pj5c bj4+Pj4+Pj4+Pj4+DQogIE5uXCwgTm5ubi5cbj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+PiBObm5u bm5ubm5ubm4gbm5ubm5uIG5ubm5ubiBubiBubm5uIG4NCiBuIG5ubm5ubkBubm5ubm5ubi5ublws IG5ubm5uIG5uIG4gbm5ubm5ubm5ubm5uIG5ubm4gbm5uIG5ubm5uIG5ubm4gbm5uLlxuPg0KID4+ Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+IE5ubm4gbm5uIG5ubm4gbm5ubm5uIE5OTiBubm5ubm4gbm5u biBubm5ubm5ubiBubm5uDQogbm5ubm4gbm5ubiBuIG5ubm5ubm5ubiBubm5ubm4/XG4+Pj4+Pj4+ Pj4+PlxuPj4+Pj4+Pj4+Pj4gLS1cbj4+Pj4+Pj4+Pj4+IE4NCiBubi9Obm5ubm5uXG4+Pj4+Pj4+ Pj4+PiBObm5ubiBOLiBObm5ubm5ubm5ublxuPj4+Pj4+Pj4+Pj4gTm5ubm5ubm4gTm5ubiBOTg0K IFxuPj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+IE5uIE5ublwsIE5ubiA5OSA5OTk5IG5uIDk5Ojk5 XCwgTm5ubiBObm5ubiBubm5uDQogbjpcbj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4gTm4gTm5u bm5cLFxuPj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4gTm4gTk4NCiBOIG5ubm5ublwsIE4gbm5u IG5ubm5ubm4gbm5ubiBubiBubm5uIG5ubm5ubiBubm5uIG5ubm5cbj4+Pj4+Pj4+Pj4+PiBubm5u bg0KICBubiBuIG5ubm5ubm5ubiBubm5ubm4uIE5ubiBubm5ubm5ubm5ubm4gbm5ubiBublxuPj4+ Pj4+Pj4+Pj4+IG5ubm5ubm5ubm5uDQogIG5uIG5uIG5ubm5uIG5ubm5ubm5ubm5ublwsIG5ubm5u biBubm4gbm4gbm5ublxuPj4+Pj4+Pj4+Pj4+IG5ubiBubm5ubm4gbm4NCiAgbm5uIG5ubm5ubm5u bm4gbm4gbm5ubiBubm5ubi5cbj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+IE5ubiBubm5ubm5u IG5ubg0KIG5ubm5uIG5uIE5OTi9OTk4gbm5ubm5uIG5uIG5ubiBubm5uIG5ubm4gbm5ubiBubiBu bm5ubi5cbj4+Pj4+Pj4+Pj4+PlxuPj4+DQogPj4+Pj4+Pj4+IE5ubm5ubm5cLFxuPj4+Pj4+Pj4+ Pj4+XG4+Pj4+Pj4+Pj4+Pj4gTm5ubiBObm5ublxuPj4+Pj4+Pj4+Pj4+XG4NCiA+Pj4+Pj4+Pj4+ Pj4gTjogKzk5ICg5KTk5IDk5OTkgOTk5OSB8IE46ICs5OSAoOSk5OSA5OTk5IDk5OTlcbj4+Pj4+ Pj4+Pj4+Pg0KIFxuPj4+Pj4+Pj4+Pj4+IC0tLS0tTm5ubm5ubm4gTm5ubm5ubi0tLS0tXG4+Pj4+ Pj4+Pj4+Pj4gTm5ubjogTm5ubm4gTi4gTm5uDQogbm5ubm5ubm4gW25ubm5ubjpubm5Abm5ubm5u bm4ubm5dXG4+Pj4+Pj4+Pj4+Pj4gTm5ubjogTm5ubm5ubm5cLCBObm5uIDlcLCANCiA5OTk5IDk5 Ojk5IE5OXG4+Pj4+Pj4+Pj4+Pj4gTm46IE5OTiBObm5ubm5cbj4+Pj4+Pj4+Pj4+PiBObjogTm5u biBObm5ubm5ubg0KIFw7ICtOTk5OXDsgK05OIE5ubm5ublxuPj4+Pj4+Pj4+Pj4+IE5ubm5ubm46 IE5uOiBbTk5OXSBObjogTm5ubm5ubiBubm5ubm5uDQogIG5uIE5OTlxuPj4+Pj4+Pj4+Pj4+XG4+ Pj4+Pj4+Pj4+Pj4gTm5cLCBObm5ubi5cbj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4NCiA+IE5u IG5ubm5ubm5ubm5uIG5ubm4gbm5ubm5ubm5uIG5ubm4gbm5ubi5ubm5ubm5ubi5ublwsIDk5Ljk5 Ljk5OS45OS5cbj4+Pg0KID4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+IC0tXG4+Pj4+Pj4+Pj4+Pj4g Tm5uL05ubm5ubm5cbj4+Pj4+Pj4+Pj4+PiBObm5ubiBODQogLiBObm5ubm5ubm5ublxuPj4+Pj4+ Pj4+Pj4+IE5ubm5ubm5uIE5ubm4gTk5cbj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+IE4NCiBu IE5ublwsIE5ubiA5OSA5OTk5IG5uIDk5Ojk5XCwgTk5OIE5ubm5ubiBubm5ubjpcbj4+Pj4+Pj4+ Pj4+PlxuPj4+Pj4+Pj4+Pg0KID4+PiBObiBObm5ublwsXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+ Pj4+Pj4+IE4gbm5ubiBubm5ubm5ubiBubm4gbm5ubm5ubiBuDQogbm5uIG5uIG5ubm4gbm5ubm5u IG5ubiBubiBubm5uIG5ubm5ubm5ubiBubm5ubiBOIG5ubm4gbm5ubm5ubm5ubm4gbm4gbm5uOlwN CiBuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+PiBObiBubm5ubiBuIG5ubm5ubm4gbm5ubm5u biBubm4gTk5OL05OTiBubm5ubg0KIG4gbm4gbm5ubiBubm5ubm4/ICBObm4gbm4gbm5ubiBubm5u bm4gbm5ubm5ubm5ubm5ubiBubm5ubm5ubm4gbm4gbm5ubiBubiBuDQogbm5ubm5ubm4gbm5ubm5u bj9cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm5ubm5uIG5ubm4gbm4gbm5ubm5ubiBu bm4NCiBubjpcbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm4gbm5ubm4gbm5ubm5uIG5u biBubiBubm5ubm4gTk4gOTk5Ljk5Lg0KIDk5OS45OSBubm5uIG5ublxuPj4+Pj4+Pj4+Pj4+PiBu bm5ubm5ubiBubm4gbm5ubiBOTk4gbm5ubm5ubi4gTm5ubm4gbm5uIG5uDQogbm5ubiBubm5ubm4g bm5ubiBOTiBubm4gbm5ubiBubiBubm5ubm5ubm5uIG5ubm4gbm4gbm4gbm5uIG5ubm5ubm5ubm4g bm5uIG4NCiBuIG5ubiBubm5ubm5ubj9cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm5u IG5ubm4gTk5OIG5ubm5ubm4gbm4gbm5ubg0KIG5uIDkuOS4gTm5uOTkgbm4gbm5uIG5ubm5ubm5u blxuPj4+Pj4+Pj4+Pj4+PiBubm4gbm4gbm5ubm5ubm5uIG5uIG5ubm4gbm4gDQogbm4gbm5ubm5u bm4uIE5ubjk5OTkgbm4gbm5ubm5ubm5uIG5ubiBubm4gbm5ubm5ubm5ublwsIG5ubm5ubm5cLCBu biBubm4gbm4NCiBubm5ubiBubiBubm5uIG5ubm5ubiA5OTk5PU5OTi5cbj4+Pj4+Pj4+Pj4+Pj5c bj4+Pj4+Pj4+Pj4+Pj4gTm4gbm4gbm5ubm5ubg0KIG4gbm4gbm5ubm5ubm4gbm5ubm5ubm5ubiBu bm4gTk5OIG5uIE5ubiBubiBubm4gbm4gbm5uIG5ubm5ubm4gbm4gbm5uIG5ubm5uDQogLlxuPj4+ Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+PiBObm5ubiBubm45IG5ubiBubm5ubm5ubm5uIG5ubm4g bm4gbm5ubiBubiANCiBubm4gbm5uIG5ubm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+ PiBObm5uIG5ubm5ubm5cLFxuPj4+Pj4+Pj4+Pj4+Pg0KIFxuPj4+Pj4+Pj4+Pj4+PiBObm5ubiBO bm5ubm5ubiB8IE5ubm5ubm5ubm4gTm5ubm5ubm4gTm5ubm4gTm5ubm5uXG4+Pj4+Pj4+DQogPj4+ Pj4+XG4+Pj4+Pj4+Pj4+Pj4+IE5OTiBObm5ubm4gTm5ubm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+ Pj4+Pj4+Pj4+PiBObm4NCiBuIE5ubm5uIE5ubm5uXCxcbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+ Pj4+Pj4gOTkgTm5ubm5ubm5ubiBObm5ubm5cLFxuPj4+Pg0KID4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+ Pj4+PiBObm5ubm5cLCBOTjlOIDlOTlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+PiArDQog OTk5OTk5OTk5OTk5IHwgTm5ubjogbm5ubm5ubm5uQG5ubi5ubm5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+ Pj4+Pj4+Pj4+Pj4gbm5ubm4NCiBubm5uQG5ubi5ubm4gfCBubm4ubm5uLm5ublxuPj4+Pj4+Pj4+ Pj4+PlxuPj4+Pj4+Pj4+Pj4+PiAtLS0tLU5ubm5ubm5uIE5ubg0KIG5ubm4tLS0tLVxuPj4+Pj4+ Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+PiBObm5uOiBObm5ubiBOLiBObm5ubm5ubm5ubiBbbm5ubm5u DQogOm5ubkBubm5ubm5ubi5ubl1cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm5ubjog OTkgTm5ubiA5OTk5IDk6OTkgTk4NCiBcbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm46 IE5ubm5uIE5ubm5ubm5uIDxubm5ubm5ubm5Abm5uLm5ubj5cbj4+Pg0KID4+Pj4+Pj4+Pj5cbj4+ Pj4+Pj4+Pj4+Pj4gTm46IE5OTiBObm5ubm4gPE5OTk5ubm5ubkBubm4ubm5uPlw7IE5ubm4gTm5u bm5uDQogbm5cbj4+Pj4+Pj4+Pj4+Pj4gPG5ubm5ubm5ubkBubm4ubm5uPlw7XG4+Pj4+Pj4+Pj4+ Pj4+ICtOTk5OIDxOTk5OQG5ubi5ubm4NCiA+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+ IE5ubm5ubm46IFtOTk5dIE5uOiBObm5ubm5uIG5ubm5ubm4gbm4gTk5OXA0KIG4+Pj4+Pj4+Pj4+ Pj4+XG4+Pj4+Pj4+Pj4+Pj4+IE5uIG5ubm5uLlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+ PiBObm5uDQogIG4gbm5ubm5ubm5uIG5ubm5uIG5uIG5ubm4gbm5ubiBubm5ubiBubm5ubm5ubm5u bm5ubm5cLCBOIG5ubm5uLlxuPj4+Pj4+Pj4NCiA+Pj4+PiBObiBubiBubm5uIG5uIG5ubm5ubm4g OTk9Tk5OTlw7OTk5OT1OTk5cLCBubiBubiBubm4gbm5ubm5ubiBubiBuIE5ubg0KIG5ubk5ubk5O IG5ubiBObm5ubm5ubiBubm5ubiBubiBuIE5OTiBubm5ubj8gIE5ubiBubm4gbm5ubiBOTk4gbm5u bm5ubiBubiBuDQogbm5ubiA5LjlcLCBubm5ubm5uP1xuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+ Pj4+PiBObiBubm5ubm5uIG5ubiBubm4gbm5ubm4NCiBuIG5uIG5ubiA5OSBubm4gbm5ubm5ubm5u XCwgbm4gbm5ubiBubm5ubm4gbm4gbm4uXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pg0KID4+Pj4+ IE5uIG5ubiduIG5ubm5ubm5ubiBubm5ubm5uIG4gTm5ubk5uTm5ubm5cLCBubm4gbm4gbm5ubm5u bm4gbm4gbiBubm4gDQogbm5ubm4uICBObm5uIG5uIG5ubm5uIG5ubm5ubm4gbm4gbm5uIG5ubm5u biBubiBubm4gbm5uIG5ubm5ubj9cbj4+Pj4+Pj4+Pj4NCiA+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm4g bm5uIG5uIG5ubm5ubm5ubm4gbm4gbm5ubm5ubm4gbm4gbm5ubm5ubiBubm5uIG5ubm5uXA0KICxc bj4+Pj4+Pj4+Pj4+Pj4gbm5uIG5ubm5ubiBubm4gbm5ubm5uIG5uIG5uIG5ubm5uIE5OTiBubm4v bm4gTk5OIG5ubm5ublwsDQogXG4+Pj4+Pj4+Pj4+Pj4+IG5uIE4gbm5ubm5ubiBubiBubm4gbm5u bm5ubm5uIG5ubm5ubm5ubiBOTk4gbm4gbm5ubm5ubiBubm4NCiAgbm5ubm5uIG5ubm4gbm5uXCwg bm5uIG5ubm5ubiBubiBubm5uIG5ubm5ubm5uIG5uIG5ubm5ubm5ubiBubm5ubm4uICBObiBubg0K IG5ubiBuIG5ubm5ubm4gbm5ubm5ubiBubm4gTk5OL05OTiBubm5ubm4gbm4gbm5ubiBubm5ubm4/ ICBObm4gbm4gbm5ubiBubm5uDQogbm4gbm5ubm5ubm5ubm5ubiBubm5ubm5ubm4gbm4gbm5ubiBu biBubm5ubm5ubm4gbm5ubm5ubj9cbj4+Pj4+Pj4+Pj4+Pj5cbj4NCiA+Pj4+Pj4+Pj4+Pj4gTm4g bm5ubiBubm4gbm5uIE5ubm5ubm4oOSkgbm5uIG5ubiBubm5ubiBubiBubm5ubm5uIG5ubiBubm5u bg0KIG5ubm5uIG5ubm5ubm4uICBObm5uIG5ubm4gbm5ubm5ubm4gbm4gbm5ubiBubiBubm4gbm5u IG5ubm5ubj9cbj4+Pj4+Pj4+Pj4+DQogPj5cbj4+Pj4+Pj4+Pj4+Pj4gLS1cbj4+Pj4+Pj4+Pj4+ Pj5cbj4+Pj4+Pj4+Pj4+Pj4gTm5uL05ubm5ubm5cbj4+Pj4+Pj4+Pj4NCiA+Pj5cbj4+Pj4+Pj4+ Pj4+Pj4gTm5ubm4gTi4gTm5ubm5ubm5ubm5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4g Tm5ubg0KIG5ubm4gTm5ubiBOTlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+PiBObiBObm5c LCBObm4gOTkgOTk5OSBubiA5OTo5OVwsDQogIE5ubm5uIE4uIE5ubm5ubm5ubm5uIG5ubm5uOlxu Pj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4gTm4uXG4+Pj4+Pj4+Pj4NCiA+Pj4+XG4+Pj4+ Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4gTm5ubm4gbm5ubm4gbm5u IG5ubm5uXA0KICwgTiBubm4gbm5uIG5uIG5ubiBubm5ubm4gbm5uIG5ubm5cbj4+Pj4+Pj4+Pj4+ Pj4+IG5uIG5ubm4gbm5ublwsXG4+Pj4+Pj4+DQogPj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+PiBubm4g bm5ubm4gbm5ubiBubiBubm5ubm5ubm4gbm5ubm5ubm4gbm4gbm4gbm5ubm4gbm4NCiBubm5ubm4u XG4+Pj4+Pj4+Pj4+Pj4+PiBOIG5uIG5ubm5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+ IG5ubm5ubm5ubg0KICBubm4gbm5ubm5ubm5ubm5ubiBubm4gbm5ubiBublwsIG5ubiBubm5uIG5u blxuPj4+Pj4+Pj4+Pj4+Pj4gbm5ubiBubiBubm4gDQogbm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+ Pj4+Pj4+Pj4+Pj4gbm5uIG5ubm5ubm5ubi5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4NCiA+Pj4+ Pj4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+PiBOIG5ubm4gbm5uIG5ubm5ubm5ubiBu bm5ubm5ublwsIG5ubg0KIG5ubm5ubiBubm4gTk5OIG5ubm5ubm5cbj4+Pj4+Pj4+Pj4+Pj4+IG5u biBubm5uIG5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+DQogPj4+Pj4+Pj4gbm46IG5ubm5uIE5O XCwgbm5uIG5ubiBubm4gbm5ubm5ubm5uIG5ubm5ubm5ubm5uIG5ubiBOTk5cbj4+Pj4+Pj4NCiA+ Pj4+Pj4+IG5uIG5ubm4gbm5uXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+PiBObm5ubm5u bj9cbj4+Pj4+Pj4+Pj4+Pg0KID5cbj4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+ Pj4+Pj4+Pj4+PiAtLVxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+DQogPj4+Pj4+Pj4gTm5uL05ubm5u bm5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+IE5ubm5uIE4uIE5ubm5ubm5ubm5uXG4N CiA+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+PiBObm5ubm5ubiBObm5uIE5OXG4+Pj4+Pj4+ Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pg0KID4+PlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4g Tm4gTm5uXCwgTm5uIDk5IDk5OTkgbm4gOTk6OTlcLCBObm5ubiBODQogbm5ubm5ubiBubm5ubjpc bj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+ Pj4NCiA+Pj4gTm4gTm5ubm5cLFxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+ Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pg0KID4+Pj4gTm5ubm5uIG5ubiBubiBubm5uIG5uIG5ubm5u bm5uIG5ubm5uIG5uIG5ubm5ubm5cLCBubm4gTiBubm5uIG5uIG5ubm5uDQogIG5uIG5ubm5ubi4g Tm4gbm5uIG5ubm5uIG5ubm5ubiBubiBubm5ubm5uIG5ubm4gbm5uIG5ubm5uIG5ubm5ubiBubm5u IG5ubm4NCiAuXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj5c bj4+Pj4+Pj4+Pj4+Pj4+PiBObm5uIG5ubg0KIG5ubm5cLFxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+ Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gTm5uDQogbm4gTm5ubm5u bm4gfCBObm5ubm5ubm5uIE5ubm5ubm5uIE5ubm5uIE5ubm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+ Pj4+Pj4+Pj4NCiA+Pj4+IFtObm5ubm5ubm5ubjogTm5ubm5ubm5ubm46XG4+Pj4+Pj4+Pj4+Pj4+ Pj4gbm5uOm5ubm5uOTk5Lm5ubkA5OU5OOTk5OQ0KIC45OTk5OU45OV1cbj4+Pj4+Pj4+Pj4+Pj5c bj4+Pj4+Pj4+Pj4+Pj4+PiBOTk4gTm5ubm5uIE5ubm5ubm5cbj4+Pj4+Pj4+Pj4+DQogPj5cbj4+ Pj4+Pj4+Pj4+Pj4+PiBObm5uIE5ubm5uIE5ubm5uXCxcbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+ Pj4+Pj4+PiA5OSANCiBObm5ubm5ubm5uIE5ubm5ublwsXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+ Pj4+Pj4+Pj4gTm5ubm5uXCwgTk45TiA5Tk5cbj4+Pg0KID4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+ Pj4+PiArOTk5OTk5OTk5OTk5IHwgTm5ubjpcbj4+Pj4+Pj4+Pj4+Pj4+PiArbm5ubm5uDQogbm5u QG5ubi5ubm48bm5ubm5uOm5ubm5ubm5ubkBubm4ubm5uPlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+ Pj4+Pj4+Pj4+IG5ubm4NCiBubm5ubkBubm4ubm5uPG5ubm5ubjpubm5ubm5ubm5Abm5uLm5ubj4g fFxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+IA0KIG5ubi5ubm4ubm5uPG5ubm46Ly9u bm4ubm5uLm5ubi8+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+DQog Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBObm5uOiBObm5ubiBObm5ubm5ublxuPj4+Pj4+Pj4+Pj4+ PlxuPj4+Pj4+Pj4+Pj4+Pj4NCiA+IE5ubm46IDk5IE5ubiA5OTk5IDk5Ojk5IE5OXG4+Pj4+Pj4+ Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gTm46ICdubm5Abm5ubg0KIG5ubm4ubm4nIDxubm5Abm5u bm5ubm4ubm4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gTm46ICtOTk4gTm5ubm5u DQogIDxOTk5Obm5ubm5Abm5uLm5ubj5cOyBObm5uIE5ubm5ubm5uXG4+Pj4+Pj4+Pj4+Pj4+XG4+ Pj4+Pj4+Pj4+Pj4+Pj4gPG5ubm4NCiBubm5ubkBubm4ubm5uPlw7ICtOTk5OIDxOTk5OQG5ubi5u bm4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gTm5ubg0KIG5ubjogTm5ubm5ubiBu bm5ubm5uIG5uIE5OTlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+ Pj4+DQogXG4+Pj4+Pj4+Pj4+Pj4+Pj4gTm4gTm5ubm5cLFxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+ Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4NCiA+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gTiBubm5uIG5ubm4g bm5ubm4gbm5ubiBubm5ubm5uIG5ubm5ubm5ubm5uIG5uIG5ubm5ubm4gbg0KIG4gbm5ubm5ubiBu bm5ubm5uIG5ubm5ubm4gbm5ubm5ubiBubm5ubm5ubm5uIG5ubiBOTk4uXG4+Pj4+Pj4+Pj4+Pj4+ XG4+Pj4+DQogPj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBOIG5u bm5ubm5ubm4gbm5ubiBubm4gbm5uIG5ubm4NCiBubm4gbm4gbm5ubm5uIG4gbm5ubm5ubm5uXG4+ Pj4+Pj4+Pj4+Pj4+Pj4gTk5OIE5OTlwsIG5ublxuPj4+Pj4+Pj4+Pj4+PlxuPg0KID4+Pj4+Pj4+ Pj4+Pj4+IG5uIG5ubm4gbm5ubiBubiBubm5uIG5ubiBubm5ubm5uIG5ubiBubm5uIG5ubiBubm5u bi4gTlxuPj4+DQogPj4+Pj4+Pj4+Pj4+IG5ubm5ubm5ubm4gbm5uXG4+Pj4+Pj4+Pj4+Pj4+XG4+ Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubiBubiBubm5ubm4NCiBuIE5OTiBubm5ubm4gbm5ubi4gTiBubm5u IG5ubm5ubm5uIG5ublxuPj4+Pj4+Pj4+Pj4+Pj4+IG5ubm5ubm4gTk5OXG4+Pj4+Pg0KID4+Pj4+ Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubm5ubm5ubm5ublwsIG5ubm5uIG5ubiBubm4gbm5ubiBu bm5ubm4gLSBObm4gDQogTk5OXG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubm5uIG5ubm4gbm5uXG4+Pj4+ Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubiANCiBubm5ubm5ubm4gbm4gbiBOTk4gbm5u bm5ubm4gbm5ubm5cLCBubiBubm5uIG5uIG5ublxuPj4+Pj4+Pj4+Pj4+Pj4+IE5OTiBOTg0KIE4g bm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+IG5uIG5ubiBubm4gTk5OIG5ubm5u biBubiBubiBubm5ubm5uDQogLlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+ Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gTiBubm4gbm4NCiAgbm5ubm5ubm5uIG5ubm4gbiBO Tk4gbm5ubm5ubiBubm4gbm4gbm5uIG5ubiBubiBubm5ubi4gTm4gbm5uIG5ubm4gbm5ubiBubg0K IG5uIG5ubm5ubm5cLCBubiBubm5ubiBuIG5ubiBOTk4gbm5ubm5ubiBubm4gbm5uXCwgbm4gbm5u IG5ubm5ubi5cbj4+Pj4+Pj4+DQogPj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+ PlxuPj4+Pj4+Pj4+Pj4+Pj4+IG5ubm5ubk5ubm5OTj1OTk5OXG4NCiA+Pj4+Pj4+Pj4+Pj4+XG4+ Pj4+Pj4+Pj4+Pj4+Pj4gTm5ubm5uTm5ubk5OPU5OTlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+ Pg0KID4+Pj4+IE5ubm49OTk5OVxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+ Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+DQogPj4+Pj4gTiBubm5uIG5ubm5ubm4gbm4gbm5ubm5ubiBu bm5uIG5ubi5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PlwNCiBuPj4+Pj4+Pj4+Pj4+ PlxuPj4+Pj4+Pj4+Pj4+Pj4+IE5ubm4gbm5ubm5ublwsXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+ Pj4+Pg0KID4+Pj5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBObm5ubiBObm5ubm5u biB8IE5ubm5ubm5ubm4gTm5ubm5ubm4gDQogTm5ubm4gTm5ubm5uXG4+Pj4+Pj4+Pj4+Pj4+XG4+ Pj4+Pj4+Pj4+Pj4+Pj4gW05ubm5ubm5ubm5uOiBObm5ubm5ubm5ubjpcbj4NCiA+Pj4+Pj4+Pj4+ Pj4+PiBubm46bm5ubm45OTkubm5uQDk5Tk45OTk5Ljk5OTk5Tjk5XVxuPj4+Pj4+Pj4+Pj4+Plxu Pj4+Pj4+Pg0KID4+Pj4+Pj4+IE5OTiBObm5ubm4gTm5ubm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+ Pj4+Pj4+Pj4+Pj4+IE5ubm4gTm5ubm4gTm5uDQogbm5cLFxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+ Pj4+Pj4+Pj4+IDk5IE5ubm5ubm5ubm4gTm5ubm5uXCxcbj4+Pj4+Pj4+Pj4+Pj4NCiBcbj4+Pj4+ Pj4+Pj4+Pj4+PiBObm5ubm5cLCBOTjlOIDlOTlxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+ Pj4+ICs5OTk5OQ0KIDk5OTk5OTkgfCBObm5uOlxuPj4+Pj4+Pj4+Pj4+Pj4+ICtubm5ubm5ubm5A bm5uLm5ubjxubm5ubm46bm5ubm5ubm5uQG5ubi5uDQogbm4+XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+ Pj4+Pj4+Pj4+Pj4gbm5ubm5ubm5uQG5ubi5ubm48bm5ubm5uOm5ubm5ubm5ubkBubm4NCiAubm5u PiB8XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5uLm5ubi5ubm48bm5ubjovL25u bi5ubm4ubm5uLz5cbg0KID4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+ Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+IE5ubm4gbi1ubm5uDQogIG5ubiBubm4gbm5ubm5ubm5ubm4g bm5uIG5ubm5ubm5uIG5ubm4gbm5uXG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5uIG5ubm5ubm5ubm4NCiBc bj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBubiBubm5ubm4gbm4gbm5ubiBubiBubiBu bm5ubm5ubm4gbm5uIG5ubg0KICBubm5ubm5uXG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubm5ubm5ubm4g bm5ubiBublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+DQogPj4+IG5ubm5ubm5ubm5ublws IG5ubm5ubm5ubm5cLCBubm5ubm4gbm5ubm5ubm5ubm5cLCBubiBubm5ubm5uXG4+Pj4+Pj4+Pj4N CiA+Pj4+Pj4gbm4gbm5ubm5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBubm5ubm5u bm5ubm4gbm4gbm5uIG5uIG5ubg0KIG5ubm5ubm4uIE5ubiBubm5ubm5ubm5ubm4gbm5uXCxcbj4+ Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBubm5ubm5ubm5uDQogbm5uIG5uIG5ubm5ubm4g bm4gbm5ubiBubm5ubm5ubm5ubm4gbm4gbm5uXG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubm5ubm5ubm4g bm4NCiBcbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBubiBubiBubm5ubm5ubm5uIG5u biBubm4gbm4gbm5ubm5ubm4uIE5uIA0KIG5ubiBubm5uXG4+Pj4+Pj4+Pj4+Pj4+Pj4gbm5ubm5u bm4gbm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+IG5uDQogbm5ubm5ubm5ubiBu biBubm5ublwsIG5ubm5ubiBubm5ubm4gbm5uIG5ubm5ublxuPj4+Pj4+Pj4+Pj4+Pj4+IG5ubm5u bm5ubm4NCiBuIG5uIG5ubm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+IG4tbm5u blwsIG5ubiBubm5ubm5ubm5ubiBubm5ubg0KIG4gbm4gbm5ubm5ubiBubm5uIG4tbm5ublwsXG4+ Pj4+Pj4+Pj4+Pj4+Pj4gbm5uXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+DQogPj4+Pj4gbm5u bm5ubm5ubm5cLCBubm4gbm5uIG5ubm5ubiAobm5ubm5ubiBubiBubm5ubikuIE5ubm5ublxuPj4+ Pj4+Pj4+Pj4NCiA+Pj4+IG5ubm5ubm5ublxuPj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+Pj4+ IG5ubm5ubiBubiBubm5uIG4tbm5ublwsIG5ubg0KIG5ubm4gbm4gbm5ubiBubm5ubm5uIG5ubm5u biBublxuPj4+Pj4+Pj4+Pj4+Pj4+IG5ubm5ubm5ubiBublxuPj4+Pj4+Pj4+Pj4+DQogPlxuPj4+ Pj4+Pj4+Pj4+Pj4+IG4gbm5ubm5ubiBubiBubm5ubm5ubm5uIG5ubm5ubm5ubi4gTm5uIG5ubm5u bm5ubm5cbj4+Pj4NCiA+Pj4+Pj4+Pj4+PiBubm5ubm5ubm5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+ Pj4+Pj4+Pj4+PiBubm5ubm5ubm5ubiBubm4gbm5ubg0KIG5ubm5ubm4gbm5ubm5ubm5uIE5OTidu IG5ubm5ubm5uIG5ublxuPj4+Pj4+Pj4+Pj4+Pj4+IG5ubm5ubm5uXCxcbj4+Pj4+Pj4+DQogPj4+ Pj5cbj4+Pj4+Pj4+Pj4+Pj4+PiBubm5ubm4gbm5ubm4gbm4gbm5uIG5ubm5ubm5ublxuPj4+Pj4+ Pj4+Pj4+PlxuPj4+Pj4NCiA+Pj4+Pj4+Pj4+IG5ubm46XG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+ Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pg0KID4+Pj4+PiBubm5uOi8vbm5uLm5u bi5ubm4vbm5ubm4vbm5ubm5uLW5ubm5ubm5ubm5uXG4+Pj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+DQog Pj4+Pj4+IE5ubm4gbi1ubm5uIG5ubiBubm4gbm5ubm5ubm5ubm4gbm5uIG5ubm5ubm5uIG5ubm4g bm5uIG5ublxuPj4+Pj4+Pj4NCiA+Pj4+PiBubm5ubm5ubm5uIG5uIG5ubm5ubiBubiBubm5uIG5u IG5uIG5ubm5ubm5ubiBubm4gbm5uXG4+Pj4+Pj4+Pj4+Pj4+IA0KIG5ubm5ubm4gbm5ubm5ubm5u bm4gbm5ubiBubiBubm5ubm5ubm5ubm5cLCBubm5ubm5ubm5uXCxcbj4+Pj4+Pj4+Pj4+Pj4gbm5u DQogbm5uIG5ubm5ubm5ubm5uXCwgbm4gbm5ubm5ubiBubiBubm5ubiBubm5ubm5ubm5ubm4gbm5c bj4+Pj4+Pj4+Pj4+Pj4gbm5uIG4NCiBuIG5ubm5ubm5ubm4uIE5ubiBubm5ubm5ubm5ubm4gbm5u XCwgbm5ubm5ubm5ubm5ubiBubiBubm5ubm5uIG5uIG5ubm4gbm5ubg0KIG5ubm5ubm5uIG5uIG5u biBubm5ubm5ubm5ubiBubiBubiBubiBubm5ubm5ubm5uIG5ubiBubm4gbm4gbm5ubm5ubm4uIE5u IG5uDQogbiBubm5uIG5ubm5ubm5uIG5ubm4gbm5ubm5ubm5ubm5uIG5uIG5ubm5uXCwgbm5ubm5u IG5ubm5ubiBubm4gbm5ubm5uIG5ubm4NCiBubm5ubm5uIG5uIG5ubm5ubiBuLW5ubm5cLCBubm4g bm5ubm5ubm5ubm4gbm5ubm5uIG5uIG5ubm5ubm4gbm5ubiBuLW5ubm5cLA0KICBubm4gbm5ubm5u bm5ubm5cLCBubm4gbm5uIG5ubm5ubiAobm5ubm5ubiBubiBubm5ubikuIE5ubm5ubiBubm5ubm5u bm4gbm5uDQogbm5uIG5uIG5ubm4gbi1ubm5uXCwgbm5ubm5ubiBubiBubm5uIG5ubm5ubm4gbm5u bm5uIG5uIG5ubm5ubm5ubiBubiBuIG5ubm4NCiBubm4gbm4gbm5ubm5ubm5ubiBubm5ubm5ubm4u IE5ubiBubm5ubm5ubm5uIG5ubm5ubm5ubiBubm5ubm5ubm5ubiBubm4gbm5ubg0KIG5ubm5ubm4g bm5ubm5ubm5uIE5OTuKAmW4gbm5ubm5ubm4gbm5uIG5ubm5ubm5uXCwgbm5ubm5uIG5ubm5uIG5u IG5ubiBubm5uDQogbm5ubm4gbm5ubjpcbj4+Pj4+Pj4+Pj4+Pj5cbj4+Pj4+Pj4+Pj4+Pj4gbm5u bjovL25ubi5ubm4ubm5uL25ubm5uL25ubm5ubi0NCiBubm5ubm5ubm5ublxuPj4+Pj4+Pj4+Pj4+ IE5ubm4gbi1ubm5uIG5ubiBubm4gbm5ubm5ubm5ubm4gbm5uIG5ubm5ubm5uIG5ubg0KIG4gbm5u IG5ubiBubm5ubm5ubm5uIG5uIG5ubm5ubiBubiBubm5uIG5uIG5uIG5ubm5ubm5ubiBubm4gbm5u IG5ubm5ubm4gbm5uDQogbm5ubm5ubm4gbm5ubiBubiBubm5ubm5ubm5ubm5cLCBubm5ubm5ubm5u XCwgbm5ubm5uIG5ubm5ubm5ubm5uXCwgbm4gbm5ubm4NCiBubiBubiBubm5ubiBubm5ubm5ubm5u bm4gbm4gbm5uIG5uIG5ubm5ubm5ubm4uIE5ubiBubm5ubm5ubm5ubm4gbm5uXCwgbm5ubg0KIG5u bm5ubm5ubiBubiBubm5ubm5uIG5uIG5ubm4gbm5ubm5ubm5ubm5uIG5uIG5ubiBubm5ubm5ubm5u biBubiBubiBubiBubm5uDQogbm5ubm5uIG5ubiBubm4gbm4gbm5ubm5ubm4uIE5uIG5ubiBubm5u IG5ubm5ubm5uIG5ubm4gbm5ubm5ubm5ubm5uIG5uIG5ubm4NCiBuXCwgbm5ubm5uIG5ubm5ubiBu bm4gbm5ubm5uIG5ubm5ubm5ubm5uIG5uIG5ubm5ubiBuLW5ubm5cLCBubm4gbm5ubm5ubm5ubg0K IG4gbm5ubm5uIG5uIG5ubm5ubm4gbm5ubiBuLW5ubm5cLCBubm4gbm5ubm5ubm5ubm5cLCBubm4g bm5uIG5ubm5ubiAobm5ubm5uDQogbiBubiBubm5ubikuIE5ubm5ubiBubm5ubm5ubm4gbm5ubm5u IG5uIG5ubm4gbi1ubm5uXCwgbm5ubm5ubiBubiBubm5uIG5ubm4NCiBubm4gbm5ubm5uIG5uIG5u bm5ubm5ubiBubiBuIG5ubm5ubm4gbm4gbm5ubm5ubm5ubiBubm5ubm5ubm4uIE5ubiBubm5ubm5u bg0KIG5uIG5ubm5ubm5ubiBubm5ubm5ubm5ubiBubm4gbm5ubm5ubm5ubm4gbm5ubm5ubm5uIE5O TuKAmW4gbm5ubm5ubm4gbm5uIG5uDQogbm5ubm5uXCwgbm5ubm5uIG5ubm5uIG5uIG5ubiBubm5u bm5ubm4gbm5ubjpcbj4+Pj4+Pj4+Pj4+PlxuPj4+Pj4+Pj4+Pj4+IG4NCiBubm46Ly9ubm4ubm5u Lm5ubi9ubm5ubi9ubm5ubm4tbm5ubm5ubm5ubm5cbj4+Pj4+Pj4+Pj4+IE5ubm4gbi1ubm5uIG5u biBubg0KIG4gbm5ubm5ubm5ubm4gbm5uIG5ubm5ubm5uIG5ubm4gbm5uIG5ubiBubm5ubm5ubm5u IG5uIG5ubm5ubiBubiBubm5uIG5uIG5uDQogIG5ubm5ubm5ubiBubm4gbm5uIG5ubm5ubm4gbm5u bm5ubm5ubm4gbm5ubiBubiBubm5ubm5ubm5ubm5cLCBubm5ubm5ubm5uXCwNCiAgbm5ubm5uIG5u bm5ubm5ubm5uXCwgbm4gbm5ubm5ubiBubiBubm5ubiBubm5ubm5ubm5ubm4gbm4gbm5uIG5uIG5u bm5ubm5ubg0KIG4uIE5ubiBubm5ubm5ubm5ubm4gbm5uXCwgbm5ubm5ubm5ubm5ubiBubiBubm5u bm5uIG5uIG5ubm4gbm5ubm5ubm5ubm5uIG5uDQogIG5ubiBubm5ubm5ubm5ubiBubiBubiBubiBu bm5ubm5ubm5uIG5ubiBubm4gbm4gbm5ubm5ubm4uIE5uIG5ubiBubm5uIG5ubm4NCiBubm5uIG5u bm4gbm5ubm5ubm5ubm5uIG5uIG5ubm5uXCwgbm5ubm5uIG5ubm5ubiBubm4gbm5ubm5uIG5ubm5u bm5ubm5uIG5uIA0KIG5ubm5ubiBuLW5ubm5cLCBubm4gbm5ubm5ubm5ubm4gbm5ubm5uIG5uIG5u bm5ubm4gbm5ubiBuLW5ubm5cLCBubm4gbm5ubm5uDQogbm5ubm5cLCBubm4gbm5uIG5ubm5ubiAo bm5ubm5ubiBubiBubm5ubikuIE5ubm5ubiBubm5ubm5ubm4gbm5ubm5uIG5uIG5ubm4NCiAgbi1u bm5uXCwgbm5ubm5ubiBubiBubm5uIG5ubm5ubm4gbm5ubm5uIG5uIG5ubm5ubm5ubiBubiBuIG5u bm5ubm4gbm4gbm5ubg0KIG5ubm5ubiBubm5ubm5ubm4uIE5ubiBubm5ubm5ubm5uIG5ubm5ubm5u biBubm5ubm5ubm5ubiBubm4gbm5ubm5ubm5ubm4gbm5uDQogbm5ubm5uIE5OTuKAmW4gbm5ubm5u bm4gbm5uIG5ubm5ubm5uXCwgbm5ubm5uIG5ubm5uIG5uIG5ubiBubm5ubm5ubm4gbm5ubjoNCiBc bj4+Pj4+Pj4+Pj4+XG4+Pj4+Pj4+Pj4+PiBubm5uOi8vbm5uLm5ubi5ubm4vbm5ubm4vbm5ubm5u LW5ubm5ubm5ubm5uXG4+Pg0KID4+Pj4+Pj4+IE5ubm4gbi1ubm5uIG5ubiBubm4gbm5ubm5ubm5u bm4gbm5uIG5ubm5ubm5uIG5ubm4gbm5uIG5ubiBubm5ubm5uDQogbm5uIG5uIG5ubm5ubiBubiBu bm5uIG5uIG5uIG5ubm5ubm5ubiBubm4gbm5uIG5ubm5ubm4gbm5ubm5ubm5ubm4gbm5ubiBubiAN CiBubm5ubm5ubm5ubm5cLCBubm5ubm5ubm5uXCwgbm5ubm5uIG5ubm5ubm5ubm5uXCwgbm4gbm5u bm5ubiBubiBubm5ubiBubm5ubg0KIG5ubm5ubm4gbm4gbm5uIG5uIG5ubm5ubm5ubm4uIE5ubiBu bm5ubm5ubm5ubm4gbm5uXCwgbm5ubm5ubm5ubm5ubiBubiBubm5uDQogbm5uIG5uIG5ubm4gbm5u bm5ubm5ubm5uIG5uIG5ubiBubm5ubm5ubm5ubiBubiBubiBubiBubm5ubm5ubm5uIG5ubiBubm4g bm4NCiAgbm5ubm5ubm4uIE5uIG5ubiBubm5uIG5ubm5ubm5uIG5ubm4gbm5ubm5ubm5ubm5uIG5u IG5ubm5uXCwgbm5ubm5uIG5ubm5ubg0KICBubm4gbm5ubm5uIG5ubm5ubm5ubm5uIG5uIG5ubm5u biBuLW5ubm5cLCBubm4gbm5ubm5ubm5ubm4gbm5ubm5uIG5uIG5ubm5uDQogbm4gbm5ubiBuLW5u bm5cLCBubm4gbm5ubm5ubm5ubm5cLCBubm4gbm5uIG5ubm5ubiAobm5ubm5ubiBubiBubm5ubiku IE5ubm4NCiBubiBubm5ubm5ubm4gbm5ubm5uIG5uIG5ubm4gbi1ubm5uXCwgbm5ubm5ubiBubiBu bm5uIG5ubm5ubm4gbm5ubm5uIG5uIG5ubg0KIG5ubm5ubiBubiBuIG5ubm5ubm4gbm4gbm5ubm5u bm5ubiBubm5ubm5ubm4uIE5ubiBubm5ubm5ubm5uIG5ubm5ubm5ubiBubm5uDQogbm5ubm5ubiBu bm4gbm5ubm5ubm5ubm4gbm5ubm5ubm5uIE5OTuKAmW4gbm5ubm5ubm4gbm5uIG5ubm5ubm5uXCwg bm5ubm5uIG4NCiBubm5uIG5uIG5ubiBubm5ubm5ubm4gbm5ubjpcbj4+Pj4+Pj4+Pj5cbj4+Pj4+ Pj4+Pj4gbm5ubjovL25ubi5ubm4ubm5uL25ubg0KIG5uL25ubm5ubi1ubm5ubm5ubm5ublxuPj4+ Pj4+Pj4gTm5ubiBuLW5ubm4gbm5uIG5ubiBubm5ubm5ubm5ubiBubm4gbm5ubm5uDQogbm4gbm5u biBubm4gbm5uIG5ubm5ubm5ubm4gbm4gbm5ubm5uIG5uIG5ubm4gbm4gbm4gbm5ubm5ubm5uIG5u biBubm4gbm5ubm4NCiBubiBubm5ubm5ubm5ubiBubm5uIG5uIG5ubm5ubm5ubm5ublwsIG5ubm5u bm5ubm5cLCBubm5ubm4gbm5ubm5ubm5ubm5cLCBubg0KICBubm5ubm5uIG5uIG5ubm5uIG5ubm5u bm5ubm5ubiBubiBubm4gbm4gbm5ubm5ubm5ubi4gTm5uIG5ubm5ubm5ubm5ubiBubm5cDQogLCBu bm5ubm5ubm5ubm5uIG5uIG5ubm5ubm4gbm4gbm5ubiBubm5ubm5ubm5ubm4gbm4gbm5uIG5ubm5u bm5ubm5uIG5uIG5uIG4NCiBuIG5ubm5ubm5ubm4gbm5uIG5ubiBubiBubm5ubm5ubi4gTm4gbm5u IG5ubm4gbm5ubm5ubm4gbm5ubiBubm5ubm5ubm5ubm4gbg0KIG4gbm5ubm5cLCBubm5ubm4gbm5u bm5uIG5ubiBubm5ubm4gbm5ubm5ubm5ubm4gbm4gbm5ubm5uIG4tbm5ublwsIG5ubiBubm5uDQog bm5ubm5ubiBubm5ubm4gbm4gbm5ubm5ubiBubm5uIG4tbm5ublwsIG5ubiBubm5ubm5ubm5ublws IG5ubiBubm4gbm5ubm5uICgNCiBubm5ubm5uIG5uIG5ubm5uKS4gTm5ubm5uIG5ubm5ubm5ubiBu bm5ubm4gbm4gbm5ubiBuLW5ubm5cLCBubm5ubm5uIG5uIG5ubg0KIG4gbm5ubm5ubiBubm5ubm4g bm4gbm5ubm5ubm5uIG5uIG4gbm5ubm5ubiBubiBubm5ubm5ubm5uIG5ubm5ubm5ubi4gTm5uIG5u DQogbm5ubm5ubm4gbm5ubm5ubm5uIG5ubm5ubm5ubm5uIG5ubiBubm5ubm5ubm5ubiBubm5ubm5u bm4gTk5O4oCZbiBubm5ubm5ubiANCiBubm4gbm5ubm5ubm5cLCBubm5ubm4gbm5ubm4gbm4gbm5u IG5ubm5ubm5ubiBubm5uOlxuPj4+Pj4+Pj5cbj4+Pj4+Pj4+IG5ubg0KIG46Ly9ubm4ubm5uLm5u bi9ubm5ubi9ubm5ubm4tbm5ubm5ubm5ubm5cbj4+Pj4+Pj4gTm5ubiBuLW5ubm4gbm5uIG5ubiBu bm5uDQogbm5ubm5ubiBubm4gbm5ubm5ubm4gbm5ubiBubm4gbm5uIG5ubm5ubm5ubm4gbm4gbm5u bm5uIG5uIG5ubm4gbm4gbm4gbm5ubm4NCiBubm5uIG5ubiBubm4gbm5ubm5ubiBubm5ubm5ubm5u biBubm5uIG5uIG5ubm5ubm5ubm5ublwsIG5ubm5ubm5ubm5cLCBubm5ubg0KIG4gbm5ubm5ubm5u bm5cLCBubiBubm5ubm5uIG5uIG5ubm5uIG5ubm5ubm5ubm5ubiBubiBubm4gbm4gbm5ubm5ubm5u bi4gTm5uDQogIG5ubm5ubm5ubm5ubiBubm5cLCBubm5ubm5ubm5ubm5uIG5uIG5ubm5ubm4gbm4g bm5ubiBubm5ubm5ubm5ubm4gbm4gbm5uIG4NCiBubm5ubm5ubm5uIG5uIG5uIG5uIG5ubm5ubm5u bm4gbm5uIG5ubiBubiBubm5ubm5ubi4gTm4gbm5uIG5ubm4gbm5ubm5ubm4gbg0KIG5ubiBubm5u bm5ubm5ubm4gbm4gbm5ubm5cLCBubm5ubm4gbm5ubm5uIG5ubiBubm5ubm4gbm5ubm5ubm5ubm4g bm4gbm5ubm5uDQogIG4tbm5ublwsIG5ubiBubm5ubm5ubm5ubiBubm5ubm4gbm4gbm5ubm5ubiBu bm5uIG4tbm5ublwsIG5ubiBubm5ubm5ubm5ublwNCiAsIG5ubiBubm4gbm5ubm5uIChubm5ubm5u IG5uIG5ubm5uKS4gTm5ubm5uIG5ubm5ubm5ubiBubm5ubm4gbm4gbm5ubiBuLW5ubg0KIG5cLCBu bm5ubm5uIG5uIG5ubm4gbm5ubm5ubiBubm5ubm4gbm4gbm5ubm5ubm5uIG5uIG4gbm5ubm5ubiBu biBubm5ubm5ubm5uDQogIG5ubm5ubm5ubi4gTm5uIG5ubm5ubm5ubm4gbm5ubm5ubm5uIG5ubm5u bm5ubm5uIG5ubiBubm5ubm5ubm5ubiBubm5ubm5ubm4NCiAgTk5O4oCZbiBubm5ubm5ubiBubm4g bm5ubm5ubm5cLCBubm5ubm4gbm5ubm4gbm4gbm5uIG5ubm5ubm5ubiBubm5uOlxuPj4+Pg0KID4+ PlxuPj4+Pj4+PiBubm5uOi8vbm5uLm5ubi5ubm4vbm5ubm4vbm5ubm5uLW5ubm5ubm5ubm5uXG4+ Pj4+Pj5cbj4+Pj4+PiBODQogbm5uIG4tbm5ubiBubm4gbm5uIG5ubm5ubm5ubm5uIG5ubiBubm5u bm5ubiBubm5uIG5ubiBubm4gbm5ubm5ubm5ubiBubiBubm4NCiBubm4gbm4gbm5ubiBubiBubiBu bm5ubm5ubm4gbm5uIG5ubiBubm5ubm5uIG5ubm5ubm5ubm5uIG5ubm4gbm4gbm5ubm5ubm5ubg0K IG5uXCwgbm5ubm5ubm5ublwsIG5ubm5ubiBubm5ubm5ubm5ublwsIG5uIG5ubm5ubm4gbm4gbm5u bm4gbm5ubm5ubm5ubm5uIG5uDQogIG5ubiBubiBubm5ubm5ubm5uLiBObm4gbm5ubm5ubm5ubm5u IG5ublwsIG5ubm5ubm5ubm5ubm4gbm4gbm5ubm5ubiBubiBubm4NCiBuIG5ubm5ubm5ubm5ubiBu biBubm4gbm5ubm5ubm5ubm4gbm4gbm4gbm4gbm5ubm5ubm5ubiBubm4gbm5uIG5uIG5ubm5ubm5u Lg0KICBObiBubm4gbm5ubiBubm5ubm5ubiBubm5uIG5ubm5ubm5ubm5ubiBubiBubm5ublwsIG5u bm5ubiBubm5ubm4gbm5uIG5ubm5uDQogbiBubm5ubm5ubm5ubiBubiBubm5ubm4gbi1ubm5uXCwg bm5uIG5ubm5ubm5ubm5uIG5ubm5ubiBubiBubm5ubm5uIG5ubm4gbi0NCiBubm5uXCwgbm5uIG5u bm5ubm5ubm5uXCwgbm5uIG5ubiBubm5ubm4gKG5ubm5ubm4gbm4gbm5ubm4pLiBObm5ubm4gbm5u bm5ubg0KIG5uIG5ubm5ubiBubiBubm5uIG4tbm5ublwsIG5ubm5ubm4gbm4gbm5ubiBubm5ubm5u IG5ubm5ubiBubiBubm5ubm5ubm4gbm4gDQogbiBubm5ubm5uIG5uIG5ubm5ubm5ubm4gbm5ubm5u bm5uLiBObm4gbm5ubm5ubm5ubiBubm5ubm5ubm4gbm5ubm5ubm5ubm4gbm4NCiBuIG5ubm5ubm5u bm5uIG5ubm5ubm5ubiBOTk7igJluIG5ubm5ubm5uIG5ubiBubm5ubm5ublwsIG5ubm5ubiBubm5u biBubiBubg0KIG4gbm5ubm5ubm5uIG5ubm46XG4+Pj4+Pj5cbj4+Pj4+PiBubm5uOi8vbm5uLm5u bi5ubm4vbm5ubm4vbm5ubm5uLW5ubm5ubm5uDQogbm5uXG4+Pj4+PiBObm5uIG4tbm5ubiBubm4g bm5uIG5ubm5ubm5ubm5uIG5ubiBubm5ubm5ubiBubm5uIG5ubiBubm4gbm5ubm4NCiBubm5ubiBu biBubm5ubm4gbm4gbm5ubiBubiBubiBubm5ubm5ubm4gbm5uIG5ubiBubm5ubm5uIG5ubm5ubm5u bm5uIG5ubm4gbg0KIG4gbm5ubm5ubm5ubm5uXCwgbm5ubm5ubm5ublwsIG5ubm5ubiBubm5ubm5u bm5ublwsIG5uIG5ubm5ubm4gbm4gbm5ubm4gbm5uDQogbm5ubm5ubm5uIG5uIG5ubiBubiBubm5u bm5ubm5uLiBObm4gbm5ubm5ubm5ubm5uIG5ublwsIG5ubm5ubm5ubm5ubm4gbm4gbm4NCiBubm5u biBubiBubm5uIG5ubm5ubm5ubm5ubiBubiBubm4gbm5ubm5ubm5ubm4gbm4gbm4gbm4gbm5ubm5u bm5ubiBubm4gbm5uIA0KIG5uIG5ubm5ubm5uLiBObiBubm4gbm5ubiBubm5ubm5ubiBubm5uIG5u bm5ubm5ubm5ubiBubiBubm5ublwsIG5ubm5ubiBubm5uDQogbm4gbm5uIG5ubm5ubiBubm5ubm5u bm5ubiBubiBubm5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm5ubm5uIG5ubm5ubiBubiBubm4NCiBu bm5uIG5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm5ubm5uXCwgbm5uIG5ubiBubm5ubm4gKG5ubm5u bm4gbm4gbm5ubm4pLiBObg0KIG5ubm4gbm5ubm5ubm5uIG5ubm5ubiBubiBubm5uIG4tbm5ublws IG5ubm5ubm4gbm4gbm5ubiBubm5ubm5uIG5ubm5ubiBubiBuDQogbm5ubm5ubm4gbm4gbiBubm5u bm5uIG5uIG5ubm5ubm5ubm4gbm5ubm5ubm5uLiBObm4gbm5ubm5ubm5ubiBubm5ubm5ubm4gbm4N CiBubm5ubm5ubm4gbm5uIG5ubm5ubm5ubm5uIG5ubm5ubm5ubiBOTk7igJluIG5ubm5ubm5uIG5u biBubm5ubm5ublwsIG5ubm5ubg0KICBubm5ubiBubiBubm4gbm5ubm5ubm5uIG5ubm46XG4+Pj4+ PlxuPj4+Pj4gbm5ubjovL25ubi5ubm4ubm5uL25ubm5uL25ubm5uDQogbi1ubm5ubm5ubm5ublxu Pj4+PiBObm5uIG4tbm5ubiBubm4gbm5uIG5ubm5ubm5ubm5uIG5ubiBubm5ubm5ubiBubm5uIG5u biANCiBubm4gbm5ubm5ubm5ubiBubiBubm5ubm4gbm4gbm5ubiBubiBubiBubm5ubm5ubm4gbm5u IG5ubiBubm5ubm5uIG5ubm5ubm5ubg0KIG5uIG5ubm4gbm4gbm5ubm5ubm5ubm5uXCwgbm5ubm5u bm5ublwsIG5ubm5ubiBubm5ubm5ubm5ublwsIG5uIG5ubm5ubm4gbm4gDQogbm5ubm4gbm5ubm5u bm5ubm5uIG5uIG5ubiBubiBubm5ubm5ubm5uLiBObm4gbm5ubm5ubm5ubm5uIG5ublwsIG5ubm5u bm5ubm4NCiBubm4gbm4gbm5ubm5ubiBubiBubm5uIG5ubm5ubm5ubm5ubiBubiBubm4gbm5ubm5u bm5ubm4gbm4gbm4gbm4gbm5ubm5ubm5ubg0KICBubm4gbm5uIG5uIG5ubm5ubm5uLiBObiBubm4g bm5ubiBubm5ubm5ubiBubm5uIG5ubm5ubm5ubm5ubiBubiBubm5ublwsIG5uDQogbm5ubiBubm5u bm4gbm5uIG5ubm5ubiBubm5ubm5ubm5ubiBubiBubm5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm5u bm5uIG5ubm4NCiBubiBubiBubm5ubm5uIG5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm5ubm5uXCwg bm5uIG5ubiBubm5ubm4gKG5ubm5ubm4gbm4gbg0KIG5ubm4pLiBObm5ubm4gbm5ubm5ubm5uIG5u bm5ubiBubiBubm5uIG4tbm5ublwsIG5ubm5ubm4gbm4gbm5ubiBubm5ubm5uIG5uDQogbm5ubiBu biBubm5ubm5ubm4gbm4gbiBubm5ubm5uIG5uIG5ubm5ubm5ubm4gbm5ubm5ubm5uLiBObm4gbm5u bm5ubm5ubiBubm4NCiBubm5ubm4gbm5ubm5ubm5ubm4gbm5uIG5ubm5ubm5ubm5uIG5ubm5ubm5u biBOTk7igJluIG5ubm5ubm5uIG5ubiBubm5ubm5ubg0KIFwsIG5ubm5ubiBubm5ubiBubiBubm4g bm5ubm5ubm5uIG5ubm46XG4+Pj4+XG4+Pj4+IG5ubm46Ly9ubm4ubm5uLm5ubi9ubm5uDQogbi9u bm5ubm4tbm5ubm5ubm5ubm5cbj4+PiBObm5uIG4tbm5ubiBubm4gbm5uIG5ubm5ubm5ubm5uIG5u biBubm5ubm5ubiBubm4NCiBuIG5ubiBubm4gbm5ubm5ubm5ubiBubiBubm5ubm4gbm4gbm5ubiBu biBubiBubm5ubm5ubm4gbm5uIG5ubiBubm5ubm5uIG5ubg0KIG5ubm5ubm5uIG5ubm4gbm4gbm5u bm5ubm5ubm5uXCwgbm5ubm5ubm5ublwsIG5ubm5ubiBubm5ubm5ubm5ublwsIG5uIG5ubm5uDQog bm4gbm4gbm5ubm4gbm5ubm5ubm5ubm5uIG5uIG5ubiBubiBubm5ubm5ubm5uLiBObm4gbm5ubm5u bm5ubm5uIG5ublwsIG5ubm4NCiBubm5ubm5ubm4gbm4gbm5ubm5ubiBubiBubm5uIG5ubm5ubm5u bm5ubiBubiBubm4gbm5ubm5ubm5ubm4gbm4gbm4gbm4gbm5ubg0KIG5ubm5ubiBubm4gbm5uIG5u IG5ubm5ubm5uLiBObiBubm4gbm5ubiBubm5ubm5ubiBubm5uIG5ubm5ubm5ubm5ubiBubiBubm5u DQogblwsIG5ubm5ubiBubm5ubm4gbm5uIG5ubm5ubiBubm5ubm5ubm5ubiBubiBubm5ubm4gbi1u bm5uXCwgbm5uIG5ubm5ubm5ubm4NCiBuIG5ubm5ubiBubiBubm5ubm5uIG5ubm4gbi1ubm5uXCwg bm5uIG5ubm5ubm5ubm5uXCwgbm5uIG5ubiBubm5ubm4gKG5ubm5ubg0KIG4gbm4gbm5ubm4pLiBO bm5ubm4gbm5ubm5ubm5uIG5ubm5ubiBubiBubm5uIG4tbm5ublwsIG5ubm5ubm4gbm4gbm5ubiBu bm5uDQogbm5uIG5ubm5ubiBubiBubm5ubm5ubm4gbm4gbiBubm5ubm5uIG5uIG5ubm5ubm5ubm4g bm5ubm5ubm5uLiBObm4gbm5ubm5ubm4NCiBubiBubm5ubm5ubm4gbm5ubm5ubm5ubm4gbm5uIG5u bm5ubm5ubm5uIG5ubm5ubm5ubiBOTk7igJluIG5ubm5ubm5uIG5ubiBubg0KIG5ubm5ublwsIG5u bm5ubiBubm5ubiBubiBubm4gbm5ubm5ubm5uIG5ubm46XG4+Pj5cbj4+PiBubm5uOi8vbm5uLm5u bi5ubm4vDQogbm5ubm4vbm5ubm5uLW5ubm5ubm5ubm5uXG4+PiBObm5uIG4tbm5ubiBubm4gbm5u IG5ubm5ubm5ubm5uIG5ubiBubm5ubm5ubiANCiBubm5uIG5ubiBubm4gbm5ubm5ubm5ubiBubiBu bm5ubm4gbm4gbm5ubiBubiBubiBubm5ubm5ubm4gbm5uIG5ubiBubm5ubm5uIA0KIG5ubm5ubm5u bm5uIG5ubm4gbm4gbm5ubm5ubm5ubm5uXCwgbm5ubm5ubm5ublwsIG5ubm5ubiBubm5ubm5ubm5u blwsIG5uIG5uDQogbm5ubm4gbm4gbm5ubm4gbm5ubm5ubm5ubm5uIG5uIG5ubiBubiBubm5ubm5u bm5uLiBObm4gbm5ubm5ubm5ubm5uIG5ublwsIG4NCiBubm5ubm5ubm5ubm4gbm4gbm5ubm5ubiBu biBubm5uIG5ubm5ubm5ubm5ubiBubiBubm4gbm5ubm5ubm5ubm4gbm4gbm4gbm4gbg0KIG5ubm5u bm5ubiBubm4gbm5uIG5uIG5ubm5ubm5uLiBObiBubm4gbm5ubiBubm5ubm5ubiBubm5uIG5ubm5u bm5ubm5ubiBubiBuDQogbm5ublwsIG5ubm5ubiBubm5ubm4gbm5uIG5ubm5ubiBubm5ubm5ubm5u biBubiBubm5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm4NCiBubm5uIG5ubm5ubiBubiBubm5ubm5u IG5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm5ubm5uXCwgbm5uIG5ubiBubm5ubm4gKG5ubg0KIG5u bm4gbm4gbm5ubm4pLiBObm5ubm4gbm5ubm5ubm5uIG5ubm5ubiBubiBubm5uIG4tbm5ublwsIG5u bm5ubm4gbm4gbm5ubiBuDQogbm5ubm5uIG5ubm5ubiBubiBubm5ubm5ubm4gbm4gbiBubm5ubm5u IG5uIG5ubm5ubm5ubm4gbm5ubm5ubm5uLiBObm4gbm5ubm4NCiBubm5ubiBubm5ubm5ubm4gbm5u bm5ubm5ubm4gbm5uIG5ubm5ubm5ubm5uIG5ubm5ubm5ubiBOTk7igJluIG5ubm5ubm5uIG5ubg0K ICBubm5ubm5ublwsIG5ubm5ubiBubm5ubiBubiBubm4gbm5ubm5ubm5uIG5ubm46XG4+PlxuPj4g bm5ubjovL25ubi5ubm4ubm5uDQogL25ubm5uL25ubm5ubi1ubm5ubm5ubm5ublxuPj5cbj4+XG4+ IE5ubm4gbi1ubm5uIG5ubiBubm4gbm5ubm5ubm5ubm4gbm5uIG4NCiBubm5ubm5uIG5ubm4gbm5u IG5ubiBubm5ubm5ubm5uIG5uIG5ubm5ubiBubiBubm5uIG5uIG5uIG5ubm5ubm5ubiBubm4gbm5u IA0KIG5ubm5ubm4gbm5ubm5ubm5ubm4gbm5ubiBubiBubm5ubm5ubm5ubm5cLCBubm5ubm5ubm5u XCwgbm5ubm5uIG5ubm5ubm5ubm5uDQogXCwgbm4gbm5ubm5ubiBubiBubm5ubiBubm5ubm5ubm5u bm4gbm4gbm5uIG5uIG5ubm5ubm5ubm4uIE5ubiBubm5ubm5ubm5ubm4NCiAgbm5uXCwgbm5ubm5u bm5ubm5ubiBubiBubm5ubm5uIG5uIG5ubm4gbm5ubm5ubm5ubm5uIG5uIG5ubiBubm5ubm5ubm5u biBubg0KICBubiBubiBubm5ubm5ubm5uIG5ubiBubm4gbm4gbm5ubm5ubm4uIE5uIG5ubiBubm5u IG5ubm5ubm5uIG5ubm4gbm5ubm5ubm5uDQogbm5uIG5uIG5ubm5uXCwgbm5ubm5uIG5ubm5ubiBu bm4gbm5ubm5uIG5ubm5ubm5ubm5uIG5uIG5ubm5ubiBuLW5ubm5cLCBubm4NCiAgbm5ubm5ubm5u bm4gbm5ubm5uIG5uIG5ubm5ubm4gbm5ubiBuLW5ubm5cLCBubm4gbm5ubm5ubm5ubm5cLCBubm4g bm5uIG5ubg0KIG5ubiAobm5ubm5ubiBubiBubm5ubikuIE5ubm5ubiBubm5ubm5ubm4gbm5ubm5u IG5uIG5ubm4gbi1ubm5uXCwgbm5ubm5ubiBuDQogbiBubm5uIG5ubm5ubm4gbm5ubm5uIG5uIG5u bm5ubm5ubiBubiBuIG5ubm5ubm4gbm4gbm5ubm5ubm5ubiBubm5ubm5ubm4uIE4NCiBubiBubm5u bm5ubm5uIG5ubm5ubm5ubiBubm5ubm5ubm5ubiBubm4gbm5ubm5ubm5ubm4gbm5ubm5ubm5uIE5O TuKAmW4gbm5ubg0KIG5ubm4gbm5uIG5ubm5ubm5uXCwgbm5ubm5uIG5ubm5uIG5uIG5ubiBubm5u bm5ubm4gbm5ubjpcbj5cbj4gbm5ubjovL25ubi5uDQogbm4ubm5uL25ubm5uL25ubm5ubi1ubm5u bm5ubm5ublxuXG5Obm5uIG4tbm5ubiBubm4gbm5uIG5ubm5ubm5ubm5uIG5ubiBubm4NCiBubm5u biBubm5uIG5ubiBubm4gbm5ubm5ubm5ubiBubiBubm5ubm4gbm4gbm5ubiBubiBubiBubm5ubm5u bm4gbm5uIG5ubiBubg0KIG5ubm5uIG5ubm5ubm5ubm5uIG5ubm4gbm4gbm5ubm5ubm5ubm5uXCwg bm5ubm5ubm5ublwsIG5ubm5ubiBubm5ubm5ubm5ublwsDQogIG5uIG5ubm5ubm4gbm4gbm5ubm4g bm5ubm5ubm5ubm5uIG5uIG5ubiBubiBubm5ubm5ubm5uLiBObm4gbm5ubm5ubm5ubm5uIG4NCiBu blwsIG5ubm5ubm5ubm5ubm4gbm4gbm5ubm5ubiBubiBubm5uIG5ubm5ubm5ubm5ubiBubiBubm4g bm5ubm5ubm5ubm4gbm4gbg0KIG4gbm4gbm5ubm5ubm5ubiBubm4gbm5uIG5uIG5ubm5ubm5uLiBO biBubm4gbm5ubiBubm5ubm5ubiBubm5uIG5ubm5ubm5ubm5uDQogbiBubiBubm5ublwsIG5ubm5u biBubm5ubm4gbm5uIG5ubm5ubiBubm5ubm5ubm5ubiBubiBubm5ubm4gbi1ubm5uXCwgbm5uIG4N CiBubm5ubm5ubm5uIG5ubm5ubiBubiBubm5ubm5uIG5ubm4gbi1ubm5uXCwgbm5uIG5ubm5ubm5u bm5uXCwgbm5uIG5ubiBubm5ubg0KIG4gKG5ubm5ubm4gbm4gbm5ubm4pLiBObm5ubm4gbm5ubm5u bm5uIG5ubm5ubiBubiBubm5uIG4tbm5ublwsIG5ubm5ubm4gbm4gDQogbm5ubiBubm5ubm5uIG5u bm5ubiBubiBubm5ubm5ubm4gbm4gbiBubm5ubm5uIG5uIG5ubm5ubm5ubm4gbm5ubm5ubm5uLiBO bm4NCiAgbm5ubm5ubm5ubiBubm5ubm5ubm4gbm5ubm5ubm5ubm4gbm5uIG5ubm5ubm5ubm5uIG5u bm5ubm5ubiBOTk7igJluIG5ubm5ubg0KIG5uIG5ubiBubm5ubm5ublwsIG5ubm5ubiBubm5ubiBu biBubm4gbm5ubm5ubm5uIG5ubm46XG5cbm5ubm46Ly9ubm4ubm5uLm5uDQogbi9ubm5ubi9ubm5u bm4tbm5ubm5ubm5ubm5cbg0K --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 26 23:35:43 2016 Received: (at 24315) by debbugs.gnu.org; 27 Aug 2016 03:35:43 +0000 Received: from localhost ([127.0.0.1]:41795 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bdUPG-0000A2-3e for submit@debbugs.gnu.org; Fri, 26 Aug 2016 23:35:42 -0400 Received: from mail-it0-f54.google.com ([209.85.214.54]:36687) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bdUPE-00009o-25 for 24315@debbugs.gnu.org; Fri, 26 Aug 2016 23:35:41 -0400 Received: by mail-it0-f54.google.com with SMTP id e63so23637806ith.1 for <24315@debbugs.gnu.org>; Fri, 26 Aug 2016 20:35:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=upwYguA72OEZ26zRRxjmp09kSEzhM77SAy8fiuCZ0E8=; b=ClU3kQCjKLobzFWt8OvfD3PSNRgnOMGKU8dom1CJpnAoV3kKNV4RY9H/pUdNVcdyeY 97grzMpO4iN4Jzn7voZ5TYiIaLVMo6FFcsfydWzMIZkVQ4WLDb23zQJpzm8oMJdeXp8i S1DvPqXyXd6p/RutzBf4p4IQW+zygoEukldsW3ZwLawJcNr+POCDA79txXEe0l8VcGRb f3qbgQzCzYkkDpCLvtVFtLX/U7cNGW/HCw2UMnbhVq1XBhiYziyhynBbl4FGA3ggNbQm QZgMxjf/UTX29OEWH+FvOQLjzqr2Ng4wxrPPPUlUDEjHG/JeX0tBCHRAHjZyUq5haWY5 5ldw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=upwYguA72OEZ26zRRxjmp09kSEzhM77SAy8fiuCZ0E8=; b=Hx63GG/dlzSiIEeEj1A76lg8LUtjSV0PVafIftjc/Z867FGryCf8+8AlXtJtptBkMo DOYZvBD6kxXSaz9aX4NTRP1tTnv586nziNnG6hID8WN7nDwM53XaYZ+mv02aUSbmJ2TM nq8wctcrmPCo+BOiEPd8ZUKzSglLdBCIR/vjodL7Zg1QtmAHi4iUgOFSLHYozmO7e2T6 ckZja7blOZbjekFt5lGm9Wik7zg2fTBA0OJhTlpmtzM4sQI0Q/gjZ3LCf6cXTmObjVW7 ezHaykTqYch00qq2cmE5m3WTGU9LxvJm9zhf0h5ZhHsdSzFTDr2mPG51ahimE6yhONM2 0iOw== X-Gm-Message-State: AE9vXwOqa2JYfIn52btzHsPgp+VG4wsep5rOiS40OQLM2aFKHdkWSiD95TKbYnhPTlsUGQ== X-Received: by 10.36.14.68 with SMTP id 65mr2407836ite.99.1472268933912; Fri, 26 Aug 2016 20:35:33 -0700 (PDT) Received: from zony ([45.2.7.130]) by smtp.googlemail.com with ESMTPSA id 97sm8947066ioi.12.2016.08.26.20.35.32 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 26 Aug 2016 20:35:33 -0700 (PDT) From: npostavs@users.sourceforge.net To: peder@klingenberg.no (Peder O. Klingenberg) Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" References: Date: Fri, 26 Aug 2016 23:35:51 -0400 In-Reply-To: (Peder O. Klingenberg's message of "Fri, 26 Aug 2016 22:17:30 +0200") Message-ID: <87twe6sx2g.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 24315 Cc: 24315@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) peder@klingenberg.no (Peder O. Klingenberg) writes: > I recently started using gnus-icalendar to handle meeting invitations. > Someone sent me an invitation that included a rather long email thread > in typical outlook style, and gnus errored out when trying to display > the article. > > The backtrace showed that the error comes from the call > (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) > in icalendar--read-element (nil nil). This looks like it would be an inefficient regexp, since it has nested stars. I suspect searching for "^[ \t]" multiple times would be more efficient than trying to match multiple lines in a single regexp. > > Strangely, the same recipe does not reproduce the error on os x, with a > build from master from 2016-08-12, but on my GNU/Linux machine, which is > where I run gnus and need this to work, it is 100% reproducible. I am > on Kubuntu 14.04.5, emacs is compiled with gcc (Ubuntu > 4.8.4-2ubuntu1~14.04.3) 4.8.4. > > Is this reproducible for anyone else, or do I need to dig deeper into my > environment? Any ideas on where to start digging? (I'm also on GNU/Linux, Arch) I get the same max-specpdl-size error with 25.1.50, with 24.5 (and below) I get (error "Stack overflow in regexp matcher") and with 25.1-rc1 I get an assertion failure: character.h:703: Emacs fatal error: assertion failed: CHAR_VALID_P (ch) Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:354 354 signal (sig, SIG_DFL); (gdb) bt #0 terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:354 #1 0x00000000005fa92d in die (msg=0x722518 "CHAR_VALID_P (ch)", file=0x72250c "character.h", line=703) at alloc.c:7223 #2 0x000000000056b841 in char_table_translate (obj=20656133, ch=4194341) at character.h:703 #3 0x00000000005e9d33 in re_match_2_internal (bufp=0xd68260 , string1=0x1a9a970 " \202\245\001", size1=0, string2=0x1a9a970 " \202\245\001", size2=40918, pos=0, regs=0xd69e70 , stop=40918) at regex.c:5430 #4 0x00000000005e782c in re_search_2 (bufp=0xd68260 , str1=0x1a9a970 " \202\245\001", size1=0, str2=0x1a9a970 " \202\245\001", size2=40918, startpos=0, range=40918, regs=0xd69e70 , stop=40918) at regex.c:4446 #5 0x00000000005d6447 in search_buffer (string=14974596, pos=1, pos_byte=1, lim=40891, lim_byte=40919, n=1, RE=1, trt=20656133, inverse_trt=20532565, posix=false) at search.c:1265 #6 0x00000000005d5be2 in search_command (string=14974596, bound=0, noerror=44448, count=0, direction=1, RE=1, posix=false) at search.c:1058 #7 0x00000000005d99a7 in Fre_search_forward (regexp=14974596, bound=0, noerror=44448, count=0) at search.c:2264 #8 0x000000000061cac3 in eval_sub (form=26022259) at eval.c:2176 #9 0x000000000061c124 in Feval (form=26022259, lexical=0) at eval.c:1988 #10 0x000000000061e052 in Ffuncall (nargs=3, args=0x7fffffffd678) at eval.c:2696 #11 0x0000000000668285 in exec_byte_code (bytestr=10946844, vector=10946877, maxdepth=30, args_template=2054, nargs=2, args=0x7fffffffdc90) at bytecode.c:880 #12 0x000000000061e958 in funcall_lambda (fun=10946789, nargs=2, arg_vector=0x7fffffffdc80) at eval.c:2855 #13 0x000000000061e2a1 in Ffuncall (nargs=3, args=0x7fffffffdc78) at eval.c:2742 #14 0x000000000061488d in Ffuncall_interactively (nargs=3, args=0x7fffffffdc78) at callint.c:252 #15 0x000000000061dee7 in Ffuncall (nargs=4, args=0x7fffffffdc70) at eval.c:2673 #16 0x000000000061d338 in Fapply (nargs=3, args=0x7fffffffdd50) at eval.c:2321 #17 0x0000000000614d93 in Fcall_interactively (function=4198576, record_flag=0, keys=14640533) at callint.c:389 #18 0x000000000061e08d in Ffuncall (nargs=4, args=0x7fffffffdfd8) at eval.c:2700 #19 0x0000000000668285 in exec_byte_code (bytestr=10951116, vector=10951149, maxdepth=54, args_template=4102, nargs=1, args=0x7fffffffe530) at bytecode.c:880 #20 0x000000000061e958 in funcall_lambda (fun=10951069, nargs=1, arg_vector=0x7fffffffe528) at eval.c:2855 #21 0x000000000061e2a1 in Ffuncall (nargs=2, args=0x7fffffffe520) at eval.c:2742 #22 0x000000000061d9e5 in call1 (fn=14784, arg1=4198576) at eval.c:2552 #23 0x00000000005734ce in command_loop_1 () at keyboard.c:1479 #24 0x000000000061a7c1 in internal_condition_case (bfun=0x572cb4 , handlers=19056, hfun=0x572346 ) at eval.c:1309 #25 0x00000000005728f6 in command_loop_2 (ignore=0) at keyboard.c:1107 #26 0x0000000000619d90 in internal_catch (tag=45840, func=0x5728cd , arg=0) at eval.c:1074 #27 0x0000000000572898 in command_loop () at keyboard.c:1086 #28 0x0000000000571e36 in recursive_edit_1 () at keyboard.c:692 #29 0x0000000000572036 in Frecursive_edit () at keyboard.c:763 #30 0x000000000056fde3 in main (argc=3, argv=0x7fffffffe9d8) at emacs.c:1626 Lisp Backtrace: "re-search-forward" (0xffffd470) "eval" (0xffffd680) "eval-expression" (0xffffdc80) "funcall-interactively" (0xffffdc78) "call-interactively" (0xffffdfe0) "command-execute" (0xffffe528) > > > > In GNU Emacs 25.1.50.2 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll bars) > of 2016-08-11 built on luna > Repository revision: 36a57c55f2b855bca704c26bf7d787b7b471fe16 > Windowing system distributor 'The X.Org Foundation', version 11.0.11604000 > System Description: Ubuntu 14.04.5 LTS > > Recent messages: > scroll-down-command: Beginning of buffer [3 times] > (Shell command succeeded with no output) [91 times] > Back to top level > When done with this frame, type C-x 5 0 > Undo! [3 times] > calendar-event-problem.txt changed on disk; really edit the buffer? (y, n, r or C-h) r > ask-user-about-supersession-threat: File reverted: /home/pok/tmp/calendar-event-problem.txt > previous-line: Beginning of buffer [3 times] > Entering debugger... > Back to top level > > Configured using: > 'configure --prefix=/usr/local/emacs-git > --enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/site-lisp/:/usr/share/emacs/site-lisp > --with-x=yes --with-x-toolkit=lucid --with-toolkit-scroll-bars > --with-pop=yes' > > Configured features: > XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF > GSETTINGS NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT > ZLIB TOOLKIT_SCROLL_BARS LUCID X11 > > Important settings: > value of $LC_MONETARY: en_US.UTF-8 > value of $LC_NUMERIC: en_US.UTF-8 > value of $LANG: en_US.UTF-8 > locale-coding-system: utf-8-unix > > Major mode: Text > > Minor modes in effect: > csv-field-index-mode: t > magit-auto-revert-mode: t > global-git-commit-mode: t > async-bytecomp-package-mode: t > shell-dirtrack-mode: t > diff-auto-refine-mode: t > show-paren-mode: t > yas-global-mode: t > yas-minor-mode: t > ido-everywhere: t > global-eldoc-mode: t > electric-indent-mode: t > mouse-wheel-mode: t > menu-bar-mode: t > file-name-shadow-mode: t > global-font-lock-mode: t > font-lock-mode: t > auto-composition-mode: t > auto-encryption-mode: t > auto-compression-mode: t > line-number-mode: t > auto-fill-function: do-auto-fill > transient-mark-mode: t > > Load-path shadows: > /home/pok/.emacs.d/elpa/org-20160822/org-macs hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-macs > /home/pok/.emacs.d/elpa/org-20160822/ob-dot hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-dot > /home/pok/.emacs.d/elpa/org-20160822/ob-mscgen hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-mscgen > /home/pok/.emacs.d/elpa/org-20160822/ob-clojure hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-clojure > /home/pok/.emacs.d/elpa/org-20160822/org-install hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-install > /home/pok/.emacs.d/elpa/org-20160822/org-faces hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-faces > /home/pok/.emacs.d/elpa/org-20160822/ob-scheme hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-scheme > /home/pok/.emacs.d/elpa/org-20160822/ob-haskell hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-haskell > /home/pok/.emacs.d/elpa/org-20160822/ob-sqlite hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-sqlite > /home/pok/.emacs.d/elpa/org-20160822/ox-texinfo hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-texinfo > /home/pok/.emacs.d/elpa/org-20160822/ob-perl hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-perl > /home/pok/.emacs.d/elpa/org-20160822/ob-makefile hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-makefile > /home/pok/.emacs.d/elpa/org-20160822/ob-io hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-io > /home/pok/.emacs.d/elpa/org-20160822/org-docview hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-docview > /home/pok/.emacs.d/elpa/org-20160822/org-irc hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-irc > /home/pok/.emacs.d/elpa/org-20160822/ob-C hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-C > /home/pok/.emacs.d/elpa/org-20160822/ox-man hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-man > /home/pok/.emacs.d/elpa/org-20160822/org-capture hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-capture > /home/pok/.emacs.d/elpa/org-20160822/ob-table hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-table > /home/pok/.emacs.d/elpa/org-20160822/ob-sql hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-sql > /home/pok/.emacs.d/elpa/org-20160822/org-list hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-list > /home/pok/.emacs.d/elpa/org-20160822/org-crypt hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-crypt > /home/pok/.emacs.d/elpa/org-20160822/org-attach hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-attach > /home/pok/.emacs.d/elpa/org-20160822/org-colview hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-colview > /home/pok/.emacs.d/elpa/org-20160822/org-id hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-id > /home/pok/.emacs.d/elpa/org-20160822/ob-plantuml hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-plantuml > /home/pok/.emacs.d/elpa/org-20160822/ox-publish hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-publish > /home/pok/.emacs.d/elpa/org-20160822/ob-tangle hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-tangle > /home/pok/.emacs.d/elpa/org-20160822/org hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org > /home/pok/.emacs.d/elpa/org-20160822/org-indent hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-indent > /home/pok/.emacs.d/elpa/org-20160822/ox-ascii hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-ascii > /home/pok/.emacs.d/elpa/org-20160822/ob-matlab hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-matlab > /home/pok/.emacs.d/elpa/org-20160822/org-gnus hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-gnus > /home/pok/.emacs.d/elpa/org-20160822/org-feed hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-feed > /home/pok/.emacs.d/elpa/org-20160822/org-clock hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-clock > /home/pok/.emacs.d/elpa/org-20160822/org-element hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-element > /home/pok/.emacs.d/elpa/org-20160822/ob-screen hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-screen > /home/pok/.emacs.d/elpa/org-20160822/ob hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob > /home/pok/.emacs.d/elpa/org-20160822/org-mobile hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-mobile > /home/pok/.emacs.d/elpa/org-20160822/ox-latex hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-latex > /home/pok/.emacs.d/elpa/org-20160822/ob-lisp hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-lisp > /home/pok/.emacs.d/elpa/org-20160822/ob-calc hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-calc > /home/pok/.emacs.d/elpa/org-20160822/org-bibtex hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-bibtex > /home/pok/.emacs.d/elpa/org-20160822/org-macro hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-macro > /home/pok/.emacs.d/elpa/org-20160822/org-agenda hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-agenda > /home/pok/.emacs.d/elpa/org-20160822/org-entities hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-entities > /home/pok/.emacs.d/elpa/org-20160822/ob-css hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-css > /home/pok/.emacs.d/elpa/org-20160822/ob-R hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-R > /home/pok/.emacs.d/elpa/org-20160822/org-mouse hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-mouse > /home/pok/.emacs.d/elpa/org-20160822/org-timer hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-timer > /home/pok/.emacs.d/elpa/org-20160822/ob-java hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-java > /home/pok/.emacs.d/elpa/org-20160822/ob-gnuplot hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-gnuplot > /home/pok/.emacs.d/elpa/org-20160822/ob-keys hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-keys > /home/pok/.emacs.d/elpa/org-20160822/ob-python hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-python > /home/pok/.emacs.d/elpa/org-20160822/org-compat hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-compat > /home/pok/.emacs.d/elpa/org-20160822/ob-fortran hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-fortran > /home/pok/.emacs.d/elpa/org-20160822/ob-exp hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-exp > /home/pok/.emacs.d/elpa/org-20160822/ox-html hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-html > /home/pok/.emacs.d/elpa/org-20160822/ob-comint hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-comint > /home/pok/.emacs.d/elpa/org-20160822/org-src hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-src > /home/pok/.emacs.d/elpa/org-20160822/ob-scala hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-scala > /home/pok/.emacs.d/elpa/org-20160822/org-version hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-version > /home/pok/.emacs.d/elpa/org-20160822/org-loaddefs hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-loaddefs > /home/pok/.emacs.d/elpa/org-20160822/ob-emacs-lisp hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-emacs-lisp > /home/pok/.emacs.d/elpa/org-20160822/org-datetree hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-datetree > /home/pok/.emacs.d/elpa/org-20160822/ob-asymptote hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-asymptote > /home/pok/.emacs.d/elpa/org-20160822/ox-org hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-org > /home/pok/.emacs.d/elpa/org-20160822/org-habit hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-habit > /home/pok/.emacs.d/elpa/org-20160822/ox hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox > /home/pok/.emacs.d/elpa/org-20160822/org-w3m hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-w3m > /home/pok/.emacs.d/elpa/org-20160822/ob-lob hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-lob > /home/pok/.emacs.d/elpa/org-20160822/org-protocol hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-protocol > /home/pok/.emacs.d/elpa/org-20160822/ob-shen hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-shen > /home/pok/.emacs.d/elpa/org-20160822/ob-maxima hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-maxima > /home/pok/.emacs.d/elpa/org-20160822/ob-ref hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-ref > /home/pok/.emacs.d/elpa/org-20160822/ob-org hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-org > /home/pok/.emacs.d/elpa/org-20160822/ob-latex hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-latex > /home/pok/.emacs.d/elpa/org-20160822/ox-md hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-md > /home/pok/.emacs.d/elpa/org-20160822/org-mhe hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-mhe > /home/pok/.emacs.d/elpa/org-20160822/ob-ledger hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-ledger > /home/pok/.emacs.d/elpa/org-20160822/org-archive hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-archive > /home/pok/.emacs.d/elpa/org-20160822/org-ctags hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-ctags > /home/pok/.emacs.d/elpa/org-20160822/org-info hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-info > /home/pok/.emacs.d/elpa/org-20160822/ob-octave hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-octave > /home/pok/.emacs.d/elpa/org-20160822/org-pcomplete hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-pcomplete > /home/pok/.emacs.d/elpa/org-20160822/ob-ditaa hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-ditaa > /home/pok/.emacs.d/elpa/org-20160822/org-plot hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-plot > /home/pok/.emacs.d/elpa/org-20160822/ob-eval hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-eval > /home/pok/.emacs.d/elpa/org-20160822/org-table hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-table > /home/pok/.emacs.d/elpa/org-20160822/ox-beamer hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-beamer > /home/pok/.emacs.d/elpa/org-20160822/ox-odt hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-odt > /home/pok/.emacs.d/elpa/org-20160822/ob-core hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-core > /home/pok/.emacs.d/elpa/org-20160822/org-inlinetask hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-inlinetask > /home/pok/.emacs.d/elpa/org-20160822/org-rmail hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-rmail > /home/pok/.emacs.d/elpa/org-20160822/ox-icalendar hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ox-icalendar > /home/pok/.emacs.d/elpa/org-20160822/ob-lilypond hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-lilypond > /home/pok/.emacs.d/elpa/org-20160822/ob-picolisp hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-picolisp > /home/pok/.emacs.d/elpa/org-20160822/ob-sass hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-sass > /home/pok/.emacs.d/elpa/org-20160822/org-eshell hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-eshell > /home/pok/.emacs.d/elpa/org-20160822/ob-awk hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-awk > /home/pok/.emacs.d/elpa/org-20160822/ob-ruby hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-ruby > /home/pok/.emacs.d/elpa/org-20160822/ob-ocaml hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-ocaml > /home/pok/.emacs.d/elpa/org-20160822/ob-js hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/ob-js > /home/pok/.emacs.d/elpa/org-20160822/org-footnote hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-footnote > /home/pok/.emacs.d/elpa/org-20160822/org-bbdb hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/org/org-bbdb > /usr/share/emacs24/site-lisp/latex-cjk-thai/thai-word hides /usr/local/emacs-git/share/emacs/25.1.50/lisp/language/thai-word > > Features: > (shadow emacsbug gnus-dup gnus-draft nndoc cus-edit ess-omg-l > ess-toolbar ess-mouse mouseme ess-menu ess-swv ess-noweb essd-els > ess-sas-d ess-sas-l ess-sas-a ess-sta-d ess-sta-l make-regexp ess-sp6-d > ess-dde ess-sp3-d ess-julia julia-mode ess-r-d ess-r-syntax > ess-r-completion ess-roxy essddr hideshow ess-help reporter > ess-r-package ess-s-l ess-site ess ess-inf ess-tracebug ess-mode > ess-noweb-mode ess-custom executable ess-generics ess-utils ess-bugs-l > ess-compat ess-lsp-l map esh-var esh-io esh-cmd esh-opt esh-ext esh-proc > esh-arg esh-groups eshell esh-module esh-mode esh-util dired-x autoload > tar-mode ffap php-mode flymake cc-mode cc-fonts cc-guess cc-menus > cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs hippie-exp vc > vc-dispatcher url-queue grep pulse vc-cvs slime-indentation > slime-cl-indent cl-indent slime-fancy slime-trace-dialog > slime-fontifying-fu slime-package-fu slime-references > slime-compiler-notes-tree slime-scratch slime-presentations bridge > slime-macrostep macrostep slime-mdot-fu slime-enclosing-context > slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c > slime-editing-commands slime-autodoc slime-repl elp slime-parse slime > lisp-mnt gud apropos etags xref project arc-mode archive-mode hyperspec > csv-mode magit-blame magit-stash magit-bisect magit-remote magit-commit > magit-sequence magit magit-apply magit-wip magit-log magit-diff > smerge-mode magit-core magit-autorevert autorevert filenotify > magit-process magit-popup magit-mode magit-git magit-section magit-utils > git-commit log-edit pcvs-util with-editor async-bytecomp async tramp-sh > tramp tramp-compat tramp-loaddefs trampver ucs-normalize shell dash > eieio-opt speedbar sb-image ezimage dframe cal-china lunar solar cal-dst > cal-bahai cal-islam cal-hebrew holidays hol-loaddefs cal-iso bookmark pp > tabify org-rmail org-mhe org-irc org-info org-gnus org-docview doc-view > jka-compr image-mode org-bbdb org-w3m org-table org-archive org-clock > org-indent ob-ditaa ob-plantuml org-bibtex org-element avl-tree bibtex > org-colview org-crypt org-habit org-agenda help-fns radix-tree misearch > multi-isearch thingatpt debbugs-gnu add-log debbugs soap-client warnings > rng-xsd rng-dt rng-util xsd-regexp debug cus-start cus-load mailalias > bbdb-message footnote ecomplete flow-fill vc-git diff-mode sort > gnus-cite shr-color color shr svg dom browse-url mail-extr gnus-async > gnus-bcklg qp gnus-ml disp-table gnus-topic mm-archive url-http url-gw > url-cache url-auth pop3 nnrss xml mm-url url url-proxy url-privacy > url-expand url-methods url-history url-cookie url-domsuf url-util > nndraft nnmh nnml utf-7 bbdb-gnus epa-file network-stream nsm starttls > gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp > gnus-cache pok-gnus gnus-icalendar org-capture gnus-art mm-uu mml2015 > mm-view mml-smime smime dig mailcap icalendar diary-lib diary-loaddefs > nnir gnus-sum gnus-group gnus-undo bbdb-mua bbdb-com crm bbdb bbdb-site > timezone gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls utf7 > netrc nnoo parse-time gnus-spec gnus-int gnus-range message sendmail > puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg mm-decode > mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader > gnus-win gnus nnheader subr-x gnus-util rmail rmail-loaddefs rfc2047 > rfc2045 ietf-drums mail-utils wid-edit linum paren paredit pok-init > bugz-mode yasnippet org advice org-macro org-footnote org-pcomplete > pcomplete org-list org-faces org-entities time-date noutline outline > org-version ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp > org-src ob-keys ob-comint ob-core ob-eval org-compat org-macs > org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs gedcom > slime-autoloads reftex reftex-loaddefs reftex-vars edmacro kmacro ido > server filladapt dmacro mm-util mail-prsvr cl compile comint ansi-color > ring finder-inf tex-site info package epg-config url-handlers url-parse > auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs > password-cache url-vars seq byte-opt gv bytecomp byte-compile cl-extra > help-mode easymenu cconv cl-loaddefs pcase cl-lib emacs-goodies-el > emacs-goodies-custom emacs-goodies-loaddefs easy-mmode mule-util tooltip > eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel > term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image > regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode > prog-mode register page menu-bar rfn-eshadow timer select scroll-bar > mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame > cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai > tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian > slovak czech european ethiopic indian cyrillic chinese charscript > case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer > cl-preloaded nadvice loaddefs button faces cus-face macroexp files > text-properties overlay sha1 md5 base64 format env code-pages mule > custom widget hashtable-print-readable backquote dbusbind inotify > dynamic-setting system-font-setting font-render-setting x-toolkit x > multi-tty make-network-process emacs) > > Memory information: > ((conses 16 2485829 182861) > (symbols 48 72236 91) > (miscs 40 3269 4672) > (strings 32 298119 63000) > (string-bytes 1 12887713) > (vectors 16 103720) > (vector-slots 8 2448384 49706) > (floats 8 4985 2034) > (intervals 56 225770 627) > (buffers 976 190) > (heap 1024 299121 -1842968)) From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 30 09:09:53 2016 Received: (at 24315) by debbugs.gnu.org; 30 Aug 2016 13:09:54 +0000 Received: from localhost ([127.0.0.1]:44172 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1beinV-0006Kr-L2 for submit@debbugs.gnu.org; Tue, 30 Aug 2016 09:09:53 -0400 Received: from hermes.netfonds.no ([80.91.224.195]:34492) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1beinP-0006Kc-Fa for 24315@debbugs.gnu.org; Tue, 30 Aug 2016 09:09:47 -0400 Received: from luna.netfonds.no ([80.91.225.79] helo=luna) by hermes.netfonds.no with esmtp (Exim 4.84_2) (envelope-from ) id 1beinG-00022v-NX; Tue, 30 Aug 2016 15:09:40 +0200 Received: by luna (Postfix, from userid 547) id AD5404E00E3; Tue, 30 Aug 2016 15:09:34 +0200 (CEST) From: pok@netfonds.no (Peder O. Klingenberg) To: npostavs@users.sourceforge.net Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" References: <87twe6sx2g.fsf@users.sourceforge.net> Date: Tue, 30 Aug 2016 15:09:34 +0200 In-Reply-To: <87twe6sx2g.fsf@users.sourceforge.net> (npostavs's message of "Fri, 26 Aug 2016 23:35:51 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -1.5 (-) X-Debbugs-Envelope-To: 24315 Cc: 24315@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.5 (-) --=-=-= Content-Type: text/plain On Fri, Aug 26 2016 at 23:35, npostavs@users.sourceforge.net wrote: > This looks like it would be an inefficient regexp, since it has nested > stars. I suspect searching for "^[ \t]" multiple times would be more > efficient than trying to match multiple lines in a single regexp. Tried that. It sort of worked, in that it worked when I directly called `icalendar--read-event' in a buffer containing the event as manually extracted from the gnus message. However, parsing the problematic message in gnus still failed. It turns out `gnus-icalendar-event-from-buffer' calls `icalendar--get-unfolded-buffer' before `icalendar--read-event'. `icalendar--get-unfolded-buffer' takes care of all those pesky line continuations, and returns a buffer with each element occupying exactly one line. So essentially `icalendar--read-event' was using a regexp to extract the rest of the line, and that failed with a line nearly 40k characters long. The only other in-tree caller of `icalendar--read-event' (excluding itself) also calls `icalendar--get-unfolded-buffer' first, and indeed, `icalendar-read-event' already relies on this to take care of line continuations in element parameters (as opposed to values). Attached is a patch that uses buffer-substring to accomplish the same thing as the offending regexp, and documents the dependency on `icalendar--get-unfolded-buffer'. This fixes the problem for me. --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=bug24315.patch >From c3ae84dc48a993bb1906d5c9b6b663184e2a9d9d Mon Sep 17 00:00:00 2001 From: "Peder O. Klingenberg" Date: Tue, 30 Aug 2016 14:44:16 +0200 Subject: [PATCH] Avoid crash in icalendar--read-element * lisp/calendar/icalendar.el (icalendar--read-element): Stop crashing when parsing overly long event descriptions. (Bug#24315) --- lisp/calendar/icalendar.el | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el index 386c554..19930d5 100644 --- a/lisp/calendar/icalendar.el +++ b/lisp/calendar/icalendar.el @@ -361,7 +361,8 @@ icalendar--read-element INVALUE gives the current iCalendar element we are reading. INPARAMS gives the current parameters..... This function calls itself recursively for each nested calendar element -it finds." +it finds. The current buffer should be an unfolded buffer as returned +from `icalendar--get-unfolded-buffer'." (let (element children line name params param param-name param-value value (continue t)) @@ -391,8 +392,8 @@ icalendar--read-element (unless (looking-at ":") (error "Oops")) (forward-char 1) - (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) - (setq value (icalendar--rris "\r?\n[ \t]" "" (match-string 0))) + (setq value (buffer-substring (point) (line-end-position))) + (end-of-line) (setq line (list name params value)) (cond ((eq name 'BEGIN) (setq children -- 2.9.3 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 30 09:10:45 2016 Received: (at control) by debbugs.gnu.org; 30 Aug 2016 13:10:45 +0000 Received: from localhost ([127.0.0.1]:44176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1beioK-0006MW-0N for submit@debbugs.gnu.org; Tue, 30 Aug 2016 09:10:45 -0400 Received: from hermes.netfonds.no ([80.91.224.195]:34513) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1beioC-0006MD-9J for control@debbugs.gnu.org; Tue, 30 Aug 2016 09:10:38 -0400 Received: from luna.netfonds.no ([80.91.225.79] helo=luna) by hermes.netfonds.no with esmtp (Exim 4.84_2) (envelope-from ) id 1beio1-00023h-U0 for control@debbugs.gnu.org; Tue, 30 Aug 2016 15:10:31 +0200 Received: by luna (Postfix, from userid 547) id E06B54E00E3; Tue, 30 Aug 2016 15:10:21 +0200 (CEST) To: control@debbugs.gnu.org From: pok@netfonds.no (Peder O. Klingenberg) Subject: control message for bug #24315 Message-Id: <20160830131021.E06B54E00E3@luna> Date: Tue, 30 Aug 2016 15:10:21 +0200 (CEST) X-Spam-Score: -1.5 (-) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.5 (-) tags 24315 patch From debbugs-submit-bounces@debbugs.gnu.org Thu Sep 01 21:58:26 2016 Received: (at 24315) by debbugs.gnu.org; 2 Sep 2016 01:58:26 +0000 Received: from localhost ([127.0.0.1]:46761 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bfdkQ-0005yS-Cl for submit@debbugs.gnu.org; Thu, 01 Sep 2016 21:58:26 -0400 Received: from mail-it0-f53.google.com ([209.85.214.53]:35794) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bfdkN-0005y9-7J for 24315@debbugs.gnu.org; Thu, 01 Sep 2016 21:58:24 -0400 Received: by mail-it0-f53.google.com with SMTP id e124so13584873ith.0 for <24315@debbugs.gnu.org>; Thu, 01 Sep 2016 18:58:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=XY3yekgIz8I82wIysdDUsw+ZM8pM8DYWfSrlQdh+Gw8=; b=bpaDxqKuWhfuF9KKSHDrq8+xKLpMFRmJwm/j6C/4T6XSecYpUIZnXy5hy1ZVBOwdPY fMaj/nGZY0B53i3phw1iBy7ok7hisZFavPSWuFOvDd+WjsXVY7aDMyc9TTI3sdXiEhe0 gHyECC0iwUimzTeLPTS1T76351ae+dF1PcYFqj1gBnfh1xbbPKmkF96VGkZLEwjWIUzQ Ev7s8DjGL/HXn1uYAb5rRo/lU0ZkA0q9TO6WPAkA1O8cmgpGqU0Uj0vem4SbXTbk5vP4 kYJ2jYQjEWKio1taaRO4YLSKAziApPJ/7njnfCod6KeXT8T/P4Zp04e/uLLeq+phfyxa m4gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=XY3yekgIz8I82wIysdDUsw+ZM8pM8DYWfSrlQdh+Gw8=; b=R9An+ZiyXXfS3bQPcCgUGXE0h2kFmcZTxL1d2lmNcwBpxqpu9kshQDXP4ntDMi4Nts K2po/HkluVa0IaK78fxRHHZt9tyf/01lCc0Dw1tnoC7tzJ4Mhq9jDrnylJhJtrvZOW/Z +wR6IeeWuRecCe0hDiYU21pocGDDXGmvx0c27p8YVSMYWAH/SKGHzEzptV6clxhhCoir rDWaq6vSaEvcdWc9qmvPOUMC+mLnqxCd6xnh10BSV52EDAhTxl63B4rGQW5ajpBskvaw DHvWGVCaGboiUc3BgNKp/BfYUlHyotmK5gClB4crEBTmY8v9Y0e1ciU0K9s6IpjhYBCZ qKNw== X-Gm-Message-State: AE9vXwOv1nGmvnb8+XgDBPVUbpJO/x2Jdzpq9B/mlnM2W/IN4jLvqAakP5Zvw8MtcsvVpA== X-Received: by 10.36.25.144 with SMTP id b138mr1240464itb.29.1472781497222; Thu, 01 Sep 2016 18:58:17 -0700 (PDT) Received: from zony ([45.2.7.130]) by smtp.googlemail.com with ESMTPSA id j76sm3840099itb.2.2016.09.01.18.58.15 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 01 Sep 2016 18:58:16 -0700 (PDT) From: npostavs@users.sourceforge.net To: pok@netfonds.no (Peder O. Klingenberg) Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" References: <87twe6sx2g.fsf@users.sourceforge.net> Date: Thu, 01 Sep 2016 21:58:36 -0400 In-Reply-To: (Peder O. Klingenberg's message of "Tue, 30 Aug 2016 15:09:34 +0200") Message-ID: <87poonoyer.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: 24315 Cc: 24315@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.3 (/) pok@netfonds.no (Peder O. Klingenberg) writes: > `icalendar--get-unfolded-buffer' takes care of all those pesky line > continuations, and returns a buffer with each element occupying exactly > one line. So essentially `icalendar--read-event' was using a regexp to > extract the rest of the line, and that failed with a line nearly 40k > characters long. > > The only other in-tree caller of `icalendar--read-event' (excluding > itself) also calls `icalendar--get-unfolded-buffer' first, and indeed, > `icalendar-read-event' already relies on this to take care of line > continuations in element parameters (as opposed to values). > > Attached is a patch that uses buffer-substring to accomplish the same > thing as the offending regexp, and documents the dependency on > `icalendar--get-unfolded-buffer'. This fixes the problem for me. If it works without the regexp, that's even better. > -it finds." > +it finds. The current buffer should be an unfolded buffer as returned ^ Sentences should be double spaced. > +from `icalendar--get-unfolded-buffer'." > (let (element children line name params param param-name param-value > value > (continue t)) > @@ -391,8 +392,8 @@ icalendar--read-element > (unless (looking-at ":") > (error "Oops")) > (forward-char 1) > - (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) > - (setq value (icalendar--rris "\r?\n[ \t]" "" (match-string 0))) > + (setq value (buffer-substring (point) (line-end-position))) > + (end-of-line) Might be better to avoid finding the end of line twice (since apparently 40k lines do happen, I guess it's worth thinking a bit about optimizing): (let ((start (prog1 (point) (end-of-line)))) (setq value (buffer-substring start (point)))) From debbugs-submit-bounces@debbugs.gnu.org Fri Sep 02 09:50:40 2016 Received: (at submit) by debbugs.gnu.org; 2 Sep 2016 13:50:41 +0000 Received: from localhost ([127.0.0.1]:47119 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bforg-00009D-Mt for submit@debbugs.gnu.org; Fri, 02 Sep 2016 09:50:40 -0400 Received: from eggs.gnu.org ([208.118.235.92]:51726) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bforf-000090-7z for submit@debbugs.gnu.org; Fri, 02 Sep 2016 09:50:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bforS-0006OS-HK for submit@debbugs.gnu.org; Fri, 02 Sep 2016 09:50:30 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:41693) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bforS-0006OM-Ei for submit@debbugs.gnu.org; Fri, 02 Sep 2016 09:50:26 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42691) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bforP-0006jt-UG for bug-gnu-emacs@gnu.org; Fri, 02 Sep 2016 09:50:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bforK-0006NV-Bz for bug-gnu-emacs@gnu.org; Fri, 02 Sep 2016 09:50:22 -0400 Received: from [195.159.176.226] (port=50240 helo=blaine.gmane.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bforK-0006NC-47 for bug-gnu-emacs@gnu.org; Fri, 02 Sep 2016 09:50:18 -0400 Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1bfor7-000507-8Q for bug-gnu-emacs@gnu.org; Fri, 02 Sep 2016 15:50:05 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: bug-gnu-emacs@gnu.org From: peder@klingenberg.no (Peder O. Klingenberg) Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" Date: Fri, 02 Sep 2016 15:45:34 +0200 Organization: Persons in a Position to Know, inc. Lines: 70 Message-ID: References: <87twe6sx2g.fsf@users.sourceforge.net> <87poonoyer.fsf@users.sourceforge.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Complaints-To: usenet@blaine.gmane.org User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) Cancel-Lock: sha1:fAmmJTa0o7aHD208gAYcMPcRrJM= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) --=-=-= Content-Type: text/plain On Thu, Sep 01 2016 at 21:58, npostavs@users.sourceforge.net wrote: >> -it finds." >> +it finds. The current buffer should be an unfolded buffer as returned > ^ > Sentences should be double spaced. Gah! And I'm usually chided for using old-fashioned double spaces in prose. :) > Might be better to avoid finding the end of line twice (since apparently > 40k lines do happen, I guess it's worth thinking a bit about > optimizing): Even finding the the end of the line twice was faster than the regexp method, subjectively. On my problematic 40k line, it did not take noticable time, whereas the regexp caused a bit of a delay even on shorter events. But I agree, let's not make emacs do more work than necessary. Updated patch attached. --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=bug24315.patch >From b51d09286492ae9be32b3718407174236db54059 Mon Sep 17 00:00:00 2001 From: "Peder O. Klingenberg" Date: Tue, 30 Aug 2016 14:44:16 +0200 Subject: [PATCH] Avoid crash in icalendar--read-element * lisp/calendar/icalendar.el (icalendar--read-element): Stop crashing when parsing overly long event descriptions. (Bug#24315) --- lisp/calendar/icalendar.el | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el index 386c554..c88f4ab 100644 --- a/lisp/calendar/icalendar.el +++ b/lisp/calendar/icalendar.el @@ -361,7 +361,8 @@ icalendar--read-element INVALUE gives the current iCalendar element we are reading. INPARAMS gives the current parameters..... This function calls itself recursively for each nested calendar element -it finds." +it finds. The current buffer should be an unfolded buffer as returned +from `icalendar--get-unfolded-buffer'." (let (element children line name params param param-name param-value value (continue t)) @@ -391,8 +392,9 @@ icalendar--read-element (unless (looking-at ":") (error "Oops")) (forward-char 1) - (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) - (setq value (icalendar--rris "\r?\n[ \t]" "" (match-string 0))) + (let ((start (point))) + (end-of-line) + (setq value (buffer-substring start (point)))) (setq line (list name params value)) (cond ((eq name 'BEGIN) (setq children -- 2.9.3 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sat Sep 03 10:21:03 2016 Received: (at 24315) by debbugs.gnu.org; 3 Sep 2016 14:21:04 +0000 Received: from localhost ([127.0.0.1]:48825 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bgBod-0004gA-OE for submit@debbugs.gnu.org; Sat, 03 Sep 2016 10:21:03 -0400 Received: from mail-it0-f44.google.com ([209.85.214.44]:38509) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bgBob-0004fI-Mr; Sat, 03 Sep 2016 10:21:02 -0400 Received: by mail-it0-f44.google.com with SMTP id c198so86233588ith.1; Sat, 03 Sep 2016 07:21:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=8OkiKIMpGxWmrqKDoLd6ISK1wIMYdaNGYbifMNiEK5Y=; b=H59/jHttiW2YDSyIIXK/WhR4ZhrAvGecEQPpK1PieoGy7twhO4jKQjrrkyqXJdOzkA rEe4uEa0pk5wqBOKSocnR7I1YW4hzYZn3L7FGNYgUMP6jB3HVSTaC907f15bf1mnKe1T M+FBBsB1694JeZKcN7Qp4bQe2+WvJPJMIMjjz76pgv6frBC2hOIPIEYdGFXDmN8GQX2a /urj3wxsrig1tfZ0b7uP78pQr9rqtGLVkTKEsA6yj6Vud/0mj8063zAMpNhfgS69iI3F 8JEOi+9zX9UKV/GbycTKGM8rUisKR0+N+O7LtIzwm9OyelqBA42OiV9bm1NLdjK1N74i qwng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=8OkiKIMpGxWmrqKDoLd6ISK1wIMYdaNGYbifMNiEK5Y=; b=Y5nYJMywzuNB7Odrfq3rY/DzMAT7CST7hk510kFaj/VXpDqNZzsa1pW/IhnicxpPTq i/1ISVm1ekOLOkxajrqgfg3jlmbYglaJ/KSsqnAH36XQ90A4gP6RoaWb/Qy6r+jwqwnP eJ1Z9kNbQSkxKlE95y5u/BEy7MHsNVMSvs/qptdZ3cCskffBACH504LsqLZy+O9xTJIG JU1ctYUhJ4Rf2Dx+YKG5RuLC/bDMKiQH48OhzSUbvGzD0HKPOXCyCCPnLnhzRuSJ4DZb PEsToQOFFs8hXlKeOASpbs43bSsRW5d9nv1mYREiisTstwSjaFwER/h2uSsYqF0H2O/5 uQ3g== X-Gm-Message-State: AE9vXwNaJCtfdWI///PI5P2V5SdyWnjxewGuZ6tHoTeRQNhvmkf5GB35gWSL7RzNF8pvpQ== X-Received: by 10.36.28.203 with SMTP id c194mr11534117itc.95.1472912455989; Sat, 03 Sep 2016 07:20:55 -0700 (PDT) Received: from zony ([45.2.7.130]) by smtp.googlemail.com with ESMTPSA id z125sm1473303itc.0.2016.09.03.07.20.55 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 03 Sep 2016 07:20:55 -0700 (PDT) From: npostavs@users.sourceforge.net To: peder@klingenberg.no (Peder O. Klingenberg) Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" References: <87twe6sx2g.fsf@users.sourceforge.net> <87poonoyer.fsf@users.sourceforge.net> Date: Sat, 03 Sep 2016 10:21:16 -0400 In-Reply-To: (Peder O. Klingenberg's message of "Fri, 02 Sep 2016 15:45:34 +0200") Message-ID: <87inudnjxf.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 24315 Cc: 24315@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) # the new bug will be about the specdl error clone 24315 -1 # this bug is about the bad regex in icalendar retitle 24315 icalendar--read-element uses inefficient regexp quit peder@klingenberg.no (Peder O. Klingenberg) writes: > Updated patch attached. > [...] > Subject: [PATCH] Avoid crash in icalendar--read-element > > * lisp/calendar/icalendar.el (icalendar--read-element): Stop crashing > when parsing overly long event descriptions. (Bug#24315) Patch looks good, though I think the description shouldn't say "crash", since the problem is a regex stack overflow, which is just a normal Emacs error (I've figured out the reason why it's triggering max-specpdl-size instead of regex stack overflow in master, and will address it in a separate bug). From debbugs-submit-bounces@debbugs.gnu.org Tue Sep 06 04:18:23 2016 Received: (at 24315) by debbugs.gnu.org; 6 Sep 2016 08:18:23 +0000 Received: from localhost ([127.0.0.1]:50863 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bhBaI-0005NE-Ok for submit@debbugs.gnu.org; Tue, 06 Sep 2016 04:18:23 -0400 Received: from hermes.netfonds.no ([80.91.224.195]:51628) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bhBaG-0005N4-TR for 24315@debbugs.gnu.org; Tue, 06 Sep 2016 04:18:21 -0400 Received: from luna.netfonds.no ([80.91.225.79] helo=luna) by hermes.netfonds.no with esmtp (Exim 4.84_2) (envelope-from ) id 1bhBa9-0007pp-Vs; Tue, 06 Sep 2016 10:18:16 +0200 Received: by luna (Postfix, from userid 547) id EB9724E00E5; Tue, 6 Sep 2016 10:18:13 +0200 (CEST) From: peder@klingenberg.no (Peder O. Klingenberg) To: npostavs@users.sourceforge.net Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" References: <87twe6sx2g.fsf@users.sourceforge.net> <87poonoyer.fsf@users.sourceforge.net> <87inudnjxf.fsf@users.sourceforge.net> Date: Tue, 06 Sep 2016 10:18:13 +0200 In-Reply-To: <87inudnjxf.fsf@users.sourceforge.net> (npostavs's message of "Sat, 03 Sep 2016 10:21:16 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -1.7 (-) X-Debbugs-Envelope-To: 24315 Cc: 24315@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain On Sat, Sep 03 2016 at 10:21, npostavs@users.sourceforge.net wrote: > Patch looks good, though I think the description shouldn't say "crash", > since the problem is a regex stack overflow, which is just a normal > Emacs error I agree, that was a poor choice of words. How about this? --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=bug24315.patch >From bd28797ce52c070e59d26483bdf842fd31651de6 Mon Sep 17 00:00:00 2001 From: "Peder O. Klingenberg" Date: Tue, 30 Aug 2016 14:44:16 +0200 Subject: [PATCH] Avoid error in icalendar--read-element * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex stack overflow by not using regex to extract values from calendar events. (Bug#24315) --- lisp/calendar/icalendar.el | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el index 386c554..c88f4ab 100644 --- a/lisp/calendar/icalendar.el +++ b/lisp/calendar/icalendar.el @@ -361,7 +361,8 @@ icalendar--read-element INVALUE gives the current iCalendar element we are reading. INPARAMS gives the current parameters..... This function calls itself recursively for each nested calendar element -it finds." +it finds. The current buffer should be an unfolded buffer as returned +from `icalendar--get-unfolded-buffer'." (let (element children line name params param param-name param-value value (continue t)) @@ -391,8 +392,9 @@ icalendar--read-element (unless (looking-at ":") (error "Oops")) (forward-char 1) - (re-search-forward "\\(.*\\)\\(\r?\n[ \t].*\\)*" nil t) - (setq value (icalendar--rris "\r?\n[ \t]" "" (match-string 0))) + (let ((start (point))) + (end-of-line) + (setq value (buffer-substring start (point)))) (setq line (list name params value)) (cond ((eq name 'BEGIN) (setq children -- 2.9.3 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Sep 07 19:27:45 2016 Received: (at 24315) by debbugs.gnu.org; 7 Sep 2016 23:27:45 +0000 Received: from localhost ([127.0.0.1]:52961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bhmFt-0008Os-LR for submit@debbugs.gnu.org; Wed, 07 Sep 2016 19:27:45 -0400 Received: from mail-it0-f45.google.com ([209.85.214.45]:37366) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bhmFq-0008OK-4s; Wed, 07 Sep 2016 19:27:42 -0400 Received: by mail-it0-f45.google.com with SMTP id e124so50291632ith.0; Wed, 07 Sep 2016 16:27:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=dhJggR1nU01gl94SlGT8s7Z8M/08gcQ/pvQzNFm882Q=; b=uIHRko1qkl8mrBmYFkwFg3elywavUL2zIYH8R7khvx34j3abcs0433u4jDtBzoDgV5 mxk3K8LHYK4cjU9H1MGcTagPXia7DwKr3H2w4paioPITBkq60Z17nt7ic+IVhAfGnPo+ gkBK6cFJa+6/57fAblNa6+kKVK97psBsMpSl8XgUV2/3YNdS0oNWKX6gn8O2BZH2Nx23 J8WQi5gbqVWndPghXG8ceMxQJ08mck4IrxCldp/SXbno2S4NNEedUL8sTdKaOI3YRb52 DSZvLnssnW3/0BL1MnJw70mNrpLMgt3MyWzPHUibPL4Pa0PWOpCVuyrBctLh457r13zT cjWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=dhJggR1nU01gl94SlGT8s7Z8M/08gcQ/pvQzNFm882Q=; b=ejfuFahYpZbho+gFqPKZHCqc1Aeb9vewai8rekLCzRHNGNtb2EM7Jc+ATEVMMjS8FN 8co8mRPgAArmZ9Lnquy6h+lzOMXyzXQacR9hdaTEHeNyuk56nR0xwNwB6C52a+WGPHRq lK+1/V1J7PD4iEUHM0qSQHPd15hA/HEuVhTxqe6A8AAPQdnU88jCXpZ2YqoTlo5jmMRy nCDMR8rezCYf7I2vzdE7bL86pn0pl8yf/dbQq8mLRv+z1XnGiyTw/RUg/sPJ1vbGJ13A pGaPdYTGYuiujBDnGr4/rz+OiXRevCSfaMoY3gXCdD8pu4J4BPRdRSkgiSK3WDlrwC70 fjVQ== X-Gm-Message-State: AE9vXwNrCwJsUqNNRYTwwz044rYqfOPIAYbqv06fCp2+HjOIDP2lPkjDL2BXRsj6SujBmg== X-Received: by 10.36.61.67 with SMTP id n64mr10453585itn.74.1473290856654; Wed, 07 Sep 2016 16:27:36 -0700 (PDT) Received: from zony ([45.2.7.130]) by smtp.googlemail.com with ESMTPSA id q1sm4643384itb.2.2016.09.07.16.27.35 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 07 Sep 2016 16:27:36 -0700 (PDT) From: npostavs@users.sourceforge.net To: peder@klingenberg.no (Peder O. Klingenberg) Subject: Re: bug#24315: 25.1.50; re-search-forward errors with "Variable binding depth exceeds max-specpdl-size" References: <87twe6sx2g.fsf@users.sourceforge.net> <87poonoyer.fsf@users.sourceforge.net> <87inudnjxf.fsf@users.sourceforge.net> Date: Wed, 07 Sep 2016 19:27:56 -0400 In-Reply-To: (Peder O. Klingenberg's message of "Tue, 06 Sep 2016 10:18:13 +0200") Message-ID: <871t0v2sub.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 1.7 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: tags 24315 fixed close 24315 25.2 quit peder@klingenberg.no (Peder O. Klingenberg) writes: > On Sat, Sep 03 2016 at 10:21, npostavs@users.sourceforge.net wrote: > > I agree, that was a poor choice of words. How about this? [...] Content analysis details: (1.7 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (npostavs[at]gmail.com) 2.4 RCVD_IN_SORBS_SPAM RBL: SORBS: sender is a spam source [209.85.214.45 listed in dnsbl.sorbs.net] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [209.85.214.45 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [209.85.214.45 listed in wl.mailspike.net] 0.0 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and EnvelopeFrom freemail headers are different -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid X-Debbugs-Envelope-To: 24315 Cc: 24315@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.7 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: tags 24315 fixed close 24315 25.2 quit peder@klingenberg.no (Peder O. Klingenberg) writes: > On Sat, Sep 03 2016 at 10:21, npostavs@users.sourceforge.net wrote: > > I agree, that was a poor choice of words. How about this? [...] Content analysis details: (1.7 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [209.85.214.45 listed in list.dnswl.org] 2.4 RCVD_IN_SORBS_SPAM RBL: SORBS: sender is a spam source [209.85.214.45 listed in dnsbl.sorbs.net] -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [209.85.214.45 listed in wl.mailspike.net] 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (npostavs[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and EnvelopeFrom freemail headers are different -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid tags 24315 fixed close 24315 25.2 quit peder@klingenberg.no (Peder O. Klingenberg) writes: > On Sat, Sep 03 2016 at 10:21, npostavs@users.sourceforge.net wrote: > > I agree, that was a poor choice of words. How about this? Thanks, pushed as 55dde6c1 From unknown Fri Aug 15 20:47:11 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 06 Oct 2016 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator