From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Bogdan Sirb Newsgroups: gmane.emacs.bugs Subject: bug#24143: 25.1; Windows performace of process-send-string Date: Wed, 3 Aug 2016 12:28:51 +0000 (UTC) Message-ID: <601571075.10415562.1470227331338.JavaMail.yahoo@mail.yahoo.com> References: <601571075.10415562.1470227331338.JavaMail.yahoo.ref@mail.yahoo.com> Reply-To: Bogdan Sirb NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_10415561_1746317929.1470227331335" X-Trace: blaine.gmane.org 1470240213 1753 195.159.176.226 (3 Aug 2016 16:03:33 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 3 Aug 2016 16:03:33 +0000 (UTC) To: 24143@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Aug 03 18:03:25 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bUycG-0005ip-DZ for geb-bug-gnu-emacs@m.gmane.org; Wed, 03 Aug 2016 18:01:56 +0200 Original-Received: from localhost ([::1]:35422 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUycD-0005r3-3Q for geb-bug-gnu-emacs@m.gmane.org; Wed, 03 Aug 2016 12:01:53 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45863) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUy0g-0001GQ-CP for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 11:23:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUy0c-0007wf-0P for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 11:23:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:57569) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUy0b-0007wb-RE for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 11:23:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bUy0b-0004bL-Ne for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 11:23:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Bogdan Sirb Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 03 Aug 2016 15:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 24143 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: "bug-gnu-emacs@gnu.org" Original-Received: via spool by submit@debbugs.gnu.org id=B.147023773017598 (code B ref -1); Wed, 03 Aug 2016 15:23:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 3 Aug 2016 15:22:10 +0000 Original-Received: from localhost ([127.0.0.1]:54864 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bUxzh-0004Zi-JG for submit@debbugs.gnu.org; Wed, 03 Aug 2016 11:22:10 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:42557) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bUvKw-0000HK-8j for submit@debbugs.gnu.org; Wed, 03 Aug 2016 08:31:50 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUvKo-0007ZI-SJ for submit@debbugs.gnu.org; Wed, 03 Aug 2016 08:31:44 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:33679) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUvKo-0007Z4-P4 for submit@debbugs.gnu.org; Wed, 03 Aug 2016 08:31:42 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:33503) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUvKl-000784-90 for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 08:31:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUvKh-0007Xu-V3 for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 08:31:39 -0400 Original-Received: from nm31-vm6.bullet.mail.gq1.yahoo.com ([98.136.216.213]:39936) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUvKh-0007Xj-Hl for bug-gnu-emacs@gnu.org; Wed, 03 Aug 2016 08:31:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1470227493; bh=ExpWpFSme/W1d9kY2zP4uPqACu6debB+tdHqj8ka4Eo=; h=Date:From:Reply-To:To:Subject:References:From:Subject; b=kK9cu3SwhBTeUASu6hke2K1Go0HwwllTjIr6TMKfSymfdpvoTOXRGkpnpF0sc9/5QcyW45nabDFjkV1X0qx6xMkSNEg8LQbrYAGm6+rqJonyryeiMWjmw+p8adCP/tx0ikUXWIIwZ9j3yG3EOOyfAmNV7nsv9shUvgQPMt1VVptAvKBrh+Xtgi2VDu4eGuFQzVJ5Jzg/scdfIlIpfqAsV7FsmtLuF55C9YP9AXzMAlj/fQpWVb5lQ4xLac1s0AKOoDsd6s6Oe7OtAYQms3Kg7Z6vz5DfYB8YYY7lUikfZEcLjE2JoATUf1Pb2FQjIyICzhMuR+Li9cHFNq5rqV+FBA== Original-Received: from [127.0.0.1] by nm31.bullet.mail.gq1.yahoo.com with NNFMP; 03 Aug 2016 12:31:33 -0000 Original-Received: from [98.137.12.188] by nm31.bullet.mail.gq1.yahoo.com with NNFMP; 03 Aug 2016 12:28:52 -0000 Original-Received: from [98.139.215.141] by tm9.bullet.mail.gq1.yahoo.com with NNFMP; 03 Aug 2016 12:28:52 -0000 Original-Received: from [98.139.212.238] by tm12.bullet.mail.bf1.yahoo.com with NNFMP; 03 Aug 2016 12:28:52 -0000 Original-Received: from [127.0.0.1] by omp1047.mail.bf1.yahoo.com with NNFMP; 03 Aug 2016 12:28:52 -0000 X-Yahoo-Newman-Property: ymail-4 X-Yahoo-Newman-Id: 70340.18889.bm@omp1047.mail.bf1.yahoo.com X-YMail-OSG: i4_ARykVM1n5.BzTOXmgjPIUl7xwMW2l6tBqv.s0k92MJHT4UsjqUo1zlTqX0XE Yrl02dmAn3ct1dIL27yeAbzCJ6.3SySnznV.yzJv8.UChyY9tS.zfP2DP9QWi8COiXJ.kO.GjAGY BiL6Yy5wSvZIQrlMRGSpwYt9ozvrne.KXKjpXBThH3cmHm0ND_4YpsDBFWAK1padvc6I3XwAylfx CF_Jd0CZfHPE5ej6rXxv9SOVQ65OSmjnxNF4.8Pyh67Q9PS_qhctP_tpjgBdE8p2DNrU.II4VthK SNXvswIdR42BKkkkGkEel7xj3gT9ME70XsWEdY.4BbU8CluSoFKBoQzO00GKAeXdl6ZA11cwEvl9 n_4xs7g_6eR32ii9YAzTRMFHnXG9TiZSawlFBHiWVHVQ7Xuuewzp8bM3MzCI.nr9_QqEuNcjY8B8 JPL7aCWX7U5hXVkcFoWqGA1Ch7Er7ehcV6bg8sPBel2kPD8tyzmCL0ZxuRdIN0b4ckERLb48zZc1 1aB0O2Bv2md5CdKL2UM8.Lb3JCes1EE99eB0nzNVfAsqUGtfbUHU- Original-Received: from jws106121.mail.bf1.yahoo.com by sendmailws108.mail.bf1.yahoo.com; Wed, 03 Aug 2016 12:28:51 +0000; 1470227331.706 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Mailman-Approved-At: Wed, 03 Aug 2016 11:22:04 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:121801 Archived-At: ------=_Part_10415561_1746317929.1470227331335 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, I noticed a performace issue with emacs 25.1 (built with MinGW on windows 10, but I used the one at https://sourceforge.net/projects/emacsbinw64/). I created a small c++ program to read from stdin: std::cin >> fileSizeStr; std::streamsize length =3D std::stoi(fileSizeStr); char *content =3D (char *)malloc(length); std::cin.read(content, length); and sent data to it with the follogiwn emacs code : ;; added this in the middle of a 162 kb file and eval'd it: (setq proc (start-process "Test" nil "./test.exe")) (process-send-string =C2=A0 proc =C2=A0 (format "%d\n%s\n" (point-max) =C2=A0 (buffer-substring (point-min) (point-max)))) I used elp-instrument-function for process-send-string and I got this results (emacs 25.1 built by me vs emacs 24.5 found in msys2+mingw64 repo, compiled with the same flags): * emacs 25.1: 0.510064 seconds/call * emacs 24.5: 0.037496 seconds/call And for a simple C program with fread(..., stdin) instead of std::cin * emacs 25.1: 0.547136 seconds/call * emacs 24.5: 0.031285 seconds/call In GNU Emacs 25.1.1 (x86_64-w64-mingw32) =C2=A0of 2016-08-01 built on CSIRB-DEV Windowing system distributor 'Microsoft Corp.', version 10.0.10586 Configured using: =C2=A0'configure --build=3Dx86_64-w64-mingw32 --with-wide-int=3Dyes =C2=A0--with-sound=3Dyes --with-file-notification=3Dyes --without-gpm =C2=A0--without-gconf --without-gsettings --without-selinux --with-modules =C2=A0'CFLAGS=3D-march=3Dnative -mtune=3Dnative -pipe -O3 -fomit-frame-poin= ter =C2=A0-funroll-loops' 'CPPFLAGS=3D-mtune=3Dnative -march=3Dnative -DNDEBUG = -isystem =C2=A0/mingw64/include' 'LDFLAGS=3D-s -Wl,-s'' Configured features: XPM JPEG TIFF GIF PNG RSVG SOUND DBUS NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS MODULES Important settings: =C2=A0 value of $LANG: en_US.UTF-8 =C2=A0 locale-coding-system: utf-8 Major mode: C/l Minor modes in effect: =C2=A0 irony-mode: t =C2=A0 delete-selection-mode: t =C2=A0 global-auto-revert-mode: t =C2=A0 recentf-mode: t =C2=A0 savehist-mode: t =C2=A0 save-place-mode: t =C2=A0 show-paren-mode: t =C2=A0 override-global-mode: t =C2=A0 tooltip-mode: t =C2=A0 global-eldoc-mode: t =C2=A0 electric-indent-mode: t =C2=A0 mouse-wheel-mode: t =C2=A0 file-name-shadow-mode: t =C2=A0 global-font-lock-mode: t =C2=A0 font-lock-mode: t =C2=A0 auto-composition-mode: t =C2=A0 auto-encryption-mode: t =C2=A0 auto-compression-mode: t =C2=A0 size-indication-mode: t =C2=A0 column-number-mode: t =C2=A0 line-number-mode: t =C2=A0 transient-mark-mode: t Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Mark saved where search started # nil Quit # nil Mark set Quit Reusing Dired buffers is now ON Load-path shadows: d:/tools/prog/home/csirb/.emacs.d/elpa/seq-2.16/seq hides d:/emacs/share/em= acs/25.1/lisp/emacs-lisp/seq Features: (shadow sort mail-extr emacsbug message rfc822 mml mml-sec epg mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mail-utils add-log dired+ image-dired image-file dired-x dired-aux dired elp colir color misearch multi-isearch company-irony flycheck-irony irony-diagnostics flycheck-tip error-tip notifications dbus xml popup flycheck rx subr-x irony-cdb-libclang irony-cdb-json pp irony-cdb-clang-complete irony-cdb irony-completion irony-snippet irony cc-mode cc-fonts cc-guess cc-menus cc-cmds which-func imenu company-oddmuse company-keywords company-etags company-gtags company-dabbrev-code company-dabbrev company-files company-capf company-cmake company-xcode company-clang company-semantic company-eclim company-template company-css company-nxml company-bbdb company init init-keys init-prog init-python anaconda-mode pythonic f s python tramp-sh json map url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap tramp tramp-compat tramp-loaddefs trampver ucs-normalize shell init-lisp init-c cc-styles cc-align cc-engine cc-vars cc-defs git-gutter init-project projectile ibuf-ext ibuffer init-ido counsel jka-compr esh-util swiper ivy ffap url-parse auth-source gnus-util mm-util mail-prsvr password-cache url-vars smex ido init-dired init-editor mouse-copy undo-tree diff wrap-region dash etags xref cl-seq project eieio eieio-core cl-macs volatile-highlights tiny org org-macro org-footnote org-pcomplete pcomplete org-list org-faces org-entities 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 help-fns which-key init-search iedit iedit-lib anzu thingatpt grep compile comint ansi-color ring init-completion dabbrev init-utils init-buffers edmacro kmacro init-advices advice init-sensible delsel autorevert filenotify recentf tree-widget wid-edit savehist saveplace init-appearance zenburn-theme paren use-package diminish bind-key easy-mmode finder-inf info package epg-config seq byte-opt gv bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp disp-table w32-win w32-vars term/common-win 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 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 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 w32notify dbusbind w32 multi-tty make-network-process emacs) Memory information: ((conses 16 492637 123968) =C2=A0(symbols 56 45068 0) =C2=A0(miscs 48 157 220) =C2=A0(strings 32 107471 159315) =C2=A0(string-bytes 1 3362962) =C2=A0(vectors 16 64216) =C2=A0(vector-slots 8 990553 6398) =C2=A0(floats 8 572 95) =C2=A0(intervals 56 2108 72) =C2=A0(buffers 976 19) ------=_Part_10415561_1746317929.1470227331335 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit
Hello,

I noticed a performace issue with emacs 25.1 (built with MinGW on
windows 10, but I used the one at
https://sourceforge.net/projects/emacsbinw64/).

I created a small c++ program to read from stdin:

std::cin >> fileSizeStr;
std::streamsize length = std::stoi(fileSizeStr);
char *content = (char *)malloc(length);
std::cin.read(content, length);

and sent data to it with the follogiwn emacs code :

;; added this in the middle of a 162 kb file and eval'd it:
(setq proc (start-process "Test" nil "./test.exe"))
(process-send-string
  proc
  (format "%d\n%s\n" (point-max)
  (buffer-substring (point-min) (point-max))))

I used elp-instrument-function for process-send-string and I got this
results (emacs 25.1 built by me vs emacs 24.5 found in msys2+mingw64
repo, compiled with the same flags):

* emacs 25.1: 0.510064 seconds/call
* emacs 24.5: 0.037496 seconds/call

And for a simple C program with fread(..., stdin) instead of std::cin

* emacs 25.1: 0.547136 seconds/call
* emacs 24.5: 0.031285 seconds/call


In GNU Emacs 25.1.1 (x86_64-w64-mingw32)
 of 2016-08-01 built on CSIRB-DEV
Windowing system distributor 'Microsoft Corp.', version 10.0.10586
Configured using:
 'configure --build=x86_64-w64-mingw32 --with-wide-int=yes
 --with-sound=yes --with-file-notification=yes --without-gpm
 --without-gconf --without-gsettings --without-selinux --with-modules
 'CFLAGS=-march=native -mtune=native -pipe -O3 -fomit-frame-pointer
 -funroll-loops' 'CPPFLAGS=-mtune=native -march=native -DNDEBUG -isystem
 /mingw64/include' 'LDFLAGS=-s -Wl,-s''

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND DBUS NOTIFY ACL GNUTLS LIBXML2 ZLIB
TOOLKIT_SCROLL_BARS MODULES

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8

Major mode: C/l

Minor modes in effect:
  irony-mode: t
  delete-selection-mode: t
  global-auto-revert-mode: t
  recentf-mode: t
  savehist-mode: t
  save-place-mode: t
  show-paren-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-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
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Mark saved where search started
#<process Test>
nil
Quit
#<process Test>
nil
Mark set
Quit
Reusing Dired buffers is now ON

Load-path shadows:
d:/tools/prog/home/csirb/.emacs.d/elpa/seq-2.16/seq hides d:/emacs/share/emacs/25.1/lisp/emacs-lisp/seq

Features:
(shadow sort mail-extr emacsbug message rfc822 mml mml-sec epg mm-decode
mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader
sendmail rfc2047 rfc2045 ietf-drums mail-utils add-log dired+
image-dired image-file dired-x dired-aux dired elp colir color misearch
multi-isearch company-irony flycheck-irony irony-diagnostics
flycheck-tip error-tip notifications dbus xml popup flycheck rx subr-x
irony-cdb-libclang irony-cdb-json pp irony-cdb-clang-complete irony-cdb
irony-completion irony-snippet irony cc-mode cc-fonts cc-guess cc-menus
cc-cmds which-func imenu company-oddmuse company-keywords company-etags
company-gtags company-dabbrev-code company-dabbrev company-files
company-capf company-cmake company-xcode company-clang company-semantic
company-eclim company-template company-css company-nxml company-bbdb
company init init-keys init-prog init-python anaconda-mode pythonic f s
python tramp-sh json map url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util mailcap tramp
tramp-compat tramp-loaddefs trampver ucs-normalize shell init-lisp
init-c cc-styles cc-align cc-engine cc-vars cc-defs git-gutter
init-project projectile ibuf-ext ibuffer init-ido counsel jka-compr
esh-util swiper ivy ffap url-parse auth-source gnus-util mm-util
mail-prsvr password-cache url-vars smex ido init-dired init-editor
mouse-copy undo-tree diff wrap-region dash etags xref cl-seq project
eieio eieio-core cl-macs volatile-highlights tiny org org-macro
org-footnote org-pcomplete pcomplete org-list org-faces org-entities
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 help-fns which-key init-search iedit iedit-lib anzu
thingatpt grep compile comint ansi-color ring init-completion dabbrev
init-utils init-buffers edmacro kmacro init-advices advice init-sensible
delsel autorevert filenotify recentf tree-widget wid-edit savehist
saveplace init-appearance zenburn-theme paren use-package diminish
bind-key easy-mmode finder-inf info package epg-config seq byte-opt gv
bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs
pcase cl-lib time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp disp-table
w32-win w32-vars term/common-win 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 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 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 w32notify dbusbind w32 multi-tty
make-network-process emacs)

Memory information:
((conses 16 492637 123968)
 (symbols 56 45068 0)
 (miscs 48 157 220)
 (strings 32 107471 159315)
 (string-bytes 1 3362962)
 (vectors 16 64216)
 (vector-slots 8 990553 6398)
 (floats 8 572 95)
 (intervals 56 2108 72)
 (buffers 976 19)
------=_Part_10415561_1746317929.1470227331335--