From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 02 Mar 2016 18:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 22884 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 22884@debbugs.gnu.org X-Debbugs-Original-To: GNU Emacs bugs Received: via spool by submit@debbugs.gnu.org id=B.145694217713208 (code B ref -1); Wed, 02 Mar 2016 18:10:01 +0000 Received: (at submit) by debbugs.gnu.org; 2 Mar 2016 18:09:37 +0000 Received: from localhost ([127.0.0.1]:58064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abBDH-0003Qq-Ib for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:37 -0500 Received: from eggs.gnu.org ([208.118.235.92]:32940) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abBDE-0003QW-6X for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1abBD2-0003mX-Kb for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:22 -0500 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]:49717) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBD2-0003mJ-AZ for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:16 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51981) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBCv-0006yc-Bj for bug-gnu-emacs@gnu.org; Wed, 02 Mar 2016 13:09:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1abBCo-0003go-M7 for bug-gnu-emacs@gnu.org; Wed, 02 Mar 2016 13:09:09 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:58550) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBCo-0003ex-4U for bug-gnu-emacs@gnu.org; Wed, 02 Mar 2016 13:09:02 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id EAA00160E46 for ; Wed, 2 Mar 2016 10:08:58 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id ZMYlXgjpPEHg for ; Wed, 2 Mar 2016 10:08:54 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 0875B160FF5 for ; Wed, 2 Mar 2016 10:08:54 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id WnkL_rLdZPkZ for ; Wed, 2 Mar 2016 10:08:53 -0800 (PST) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id C8819160FF2 for ; Wed, 2 Mar 2016 10:08:53 -0800 (PST) From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56D72C35.4090708@cs.ucla.edu> Date: Wed, 2 Mar 2016 10:08:53 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------030501020309050709010409" 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-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) 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.0 (+) This is a multi-part message in MIME format. --------------030501020309050709010409 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable I've been noticing this problem for a bit and figured it'd get fixed but=20 it hasn't so here is a bug report. With the Emacs 25 pretests, it takes waaaaayyy too long to edit some C=20 code. To reproduce the problem use the attached file (taken from the=20 Emacs source code) and run: emacs -Q config.h M-x goto-line RET 1661 RET / / On my six-year-old desktop the second '/' takes about 10 seconds to=20 echo. This sort of thing makes Emacs effectively unusable for editing=20 config.h. In GNU Emacs 25.0.92.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.18.7) of 2016-03-02 built on penguin.cs.ucla.edu Repository revision: 100346aa226e4eacc56f390c099bb9aab585b5f4 Windowing system distributor 'Fedora Project', version 11.0.11800000 Configured using: 'configure --enable-gcc-warnings' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=3Dibus locale-coding-system: utf-8-unix Major mode: C/l Minor modes in effect: tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t abbrev-mode: t Recent messages: config.h has auto save data; consider M-x recover-this-file Mark set You can run the command =E2=80=98goto-line=E2=80=99 with M-g g Mark set Undo! Mark set Undo! Mark set Mark saved where search started Auto-saving...done Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message dired format-spec rfc822 mml mml-sec epg epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util help-fns mail-prsvr mail-utils character-fold misearch multi-isearch cl-extra help-mode cc-mode cc-fonts easymenu cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs cl-loaddefs pcase cl-lib time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel 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 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 dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 123955 4665) (symbols 48 21742 0) (miscs 40 57 290) (strings 32 28264 16097) (string-bytes 1 748499) (vectors 16 14562) (vector-slots 8 502379 4556) (floats 8 166 20) (intervals 56 4059 0) (buffers 976 12) (heap 1024 29227 2318)) --------------030501020309050709010409 Content-Type: text/plain; charset=UTF-8; name="config.h" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.h" Lyogc3JjL2NvbmZpZy5oLiAgR2VuZXJhdGVkIGZyb20gY29uZmlnLmluIGJ5IGNvbmZpZ3Vy ZS4gICovCi8qIHNyYy9jb25maWcuaW4uICBHZW5lcmF0ZWQgZnJvbSBjb25maWd1cmUuYWMg YnkgYXV0b2hlYWRlci4gICovCgovKiBHTlUgRW1hY3Mgc2l0ZSBjb25maWd1cmF0aW9uIHRl bXBsYXRlIGZpbGUuCgpDb3B5cmlnaHQgKEMpIDE5ODgsIDE5OTMtMTk5NCwgMTk5OS0yMDAy LCAyMDA0LTIwMTYKICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KClRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KCkdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cml0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CnRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yCihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCgpHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk ZXRhaWxzLgoKWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UKYWxvbmcgd2l0aCBHTlUgRW1hY3MuICBJZiBub3QsIHNl ZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLwoKCi8qIE5vIGNvZGUgaW4g RW1hY3MgI2luY2x1ZGVzIGNvbmZpZy5oIHR3aWNlLCBidXQgc29tZSBiaXRzIG9mIGNvZGUK ICAgaW50ZW5kZWQgdG8gd29yayB3aXRoIG90aGVyIHBhY2thZ2VzIGFzIHdlbGwgKGxpa2Ug Z21hbGxvYy5jKQogICB0aGluayB0aGV5IGNhbiBpbmNsdWRlIGl0IGFzIG1hbnkgdGltZXMg YXMgdGhleSBsaWtlLiAgKi8KI2lmbmRlZiBFTUFDU19DT05GSUdfSAojZGVmaW5lIEVNQUNT X0NPTkZJR19ICgoKLyogRGVmaW5lIGlmIGJ1aWxkaW5nIHVuaXZlcnNhbCAoaW50ZXJuYWwg aGVscGVyIG1hY3JvKSAqLwovKiAjdW5kZWYgQUNfQVBQTEVfVU5JVkVSU0FMX0JVSUxEICov CgovKiBEZWZpbmUgdG8gdXNlIHRoZSBjb252ZW50aW9uIHRoYXQgJiBpbiB0aGUgZnVsbCBu YW1lIHN0YW5kcyBmb3IgdGhlIGxvZ2luCiAgIGlkLiAqLwojZGVmaW5lIEFNUEVSU0FORF9G VUxMX05BTUUgMQoKLyogRGVmaW5lIHRvIHRoZSBudW1iZXIgb2YgYml0cyBpbiB0eXBlICdw dHJkaWZmX3QnLiAqLwovKiAjdW5kZWYgQklUU0laRU9GX1BUUkRJRkZfVCAqLwoKLyogRGVm aW5lIHRvIHRoZSBudW1iZXIgb2YgYml0cyBpbiB0eXBlICdzaWdfYXRvbWljX3QnLiAqLwov KiAjdW5kZWYgQklUU0laRU9GX1NJR19BVE9NSUNfVCAqLwoKLyogRGVmaW5lIHRvIHRoZSBu dW1iZXIgb2YgYml0cyBpbiB0eXBlICdzaXplX3QnLiAqLwovKiAjdW5kZWYgQklUU0laRU9G X1NJWkVfVCAqLwoKLyogRGVmaW5lIHRvIHRoZSBudW1iZXIgb2YgYml0cyBpbiB0eXBlICd3 Y2hhcl90Jy4gKi8KLyogI3VuZGVmIEJJVFNJWkVPRl9XQ0hBUl9UICovCgovKiBEZWZpbmUg dG8gdGhlIG51bWJlciBvZiBiaXRzIGluIHR5cGUgJ3dpbnRfdCcuICovCi8qICN1bmRlZiBC SVRTSVpFT0ZfV0lOVF9UICovCgovKiBEZWZpbmUgaWYgZ2V0X2N1cnJlbnRfZGlyX25hbWUg c2hvdWxkIG5vdCBiZSB1c2VkLiAqLwovKiAjdW5kZWYgQlJPS0VOX0dFVF9DVVJSRU5UX0RJ Ul9OQU1FICovCgovKiBEZWZpbmUgb24gRnJlZUJTRCB0byB3b3JrIGFyb3VuZCBhbiBpc3N1 ZSB3aGVuIHJlYWRpbmcgZnJvbSBhIFBUWS4gKi8KLyogI3VuZGVmIEJST0tFTl9QVFlfUkVB RF9BRlRFUl9FQUdBSU4gKi8KCi8qIERlZmluZSBpZiBFbWFjcyBjYW5ub3QgYmUgZHVtcGVk IG9uIHlvdXIgc3lzdGVtLiAqLwovKiAjdW5kZWYgQ0FOTk9UX0RVTVAgKi8KCi8qIERlZmlu ZSB0aGlzIHRvIGVuYWJsZSBjb21waWxlIHRpbWUgY2hlY2tzIGZvciB0aGUgTGlzcF9PYmpl Y3QgZGF0YSB0eXBlLiAqLwovKiAjdW5kZWYgQ0hFQ0tfTElTUF9PQkpFQ1RfVFlQRSAqLwoK LyogU2hvcnQgY29weXJpZ2h0IHN0cmluZyBmb3IgdGhpcyB2ZXJzaW9uIG9mIEVtYWNzLiAq LwojZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLiIKCi8qIERlZmluZSB0byBvbmUgb2YgYF9nZXRiNjcnLCBgR0VU QjY3JywgYGdldGI2NycgZm9yIENyYXktMiBhbmQgQ3JheS1ZTVAKICAgc3lzdGVtcy4gVGhp cyBmdW5jdGlvbiBpcyByZXF1aXJlZCBmb3IgYGFsbG9jYS5jJyBzdXBwb3J0IG9uIHRob3Nl IHN5c3RlbXMuCiAgICovCi8qICN1bmRlZiBDUkFZX1NUQUNLU0VHX0VORCAqLwoKLyogRGVm aW5lIGlmIHRoZSBzeXN0ZW0gaXMgQ3lnd2luLiAqLwovKiAjdW5kZWYgQ1lHV0lOICovCgov KiBEZWZpbmUgdG8gMSBpZiB1c2luZyBgYWxsb2NhLmMnLiAqLwovKiAjdW5kZWYgQ19BTExP Q0EgKi8KCi8qIERlZmluZSBpZiB0aGUgc3lzdGVtIGlzIERhcndpbi4gKi8KLyogI3VuZGVm IERBUldJTl9PUyAqLwoKLyogTmFtZSBvZiB0aGUgZGVmYXVsdCBzb3VuZCBkZXZpY2UuICov CiNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgoKLyogRGVmaW5lIHRv IDEgZm9yIERHVVggd2l0aCA8c3lzL2RnX3N5c19pbmZvLmg+LiAqLwovKiAjdW5kZWYgREdV WCAqLwoKLyogQ2hhcmFjdGVyIHRoYXQgc2VwYXJhdGVzIGRpcmVjdG9yaWVzIGluIGEgZmls ZSBuYW1lLiAqLwojZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCgovKiB0aGUgbmFtZSBvZiB0 aGUgZmlsZSBkZXNjcmlwdG9yIG1lbWJlciBvZiBESVIgKi8KLyogI3VuZGVmIERJUl9GRF9N RU1CRVJfTkFNRSAqLwoKI2lmZGVmIERJUl9GRF9NRU1CRVJfTkFNRQojIGRlZmluZSBESVJf VE9fRkQoRGlyX3ApICgoRGlyX3ApLT5ESVJfRkRfTUVNQkVSX05BTUUpCiNlbHNlCiMgZGVm aW5lIERJUl9UT19GRChEaXJfcCkgLTEKI2VuZGlmCgoKLyogRGVmaW5lIGlmIHByb2Nlc3Mu YyBkb2VzIG5vdCBuZWVkIHRvIGNsb3NlIGEgcHR5IHRvIG1ha2UgaXQgYSBjb250cm9sbGlu ZwogICB0ZXJtaW5hbCAoaXQgaXMgYWxyZWFkeSBhIGNvbnRyb2xsaW5nIHRlcm1pbmFsIG9m IHRoZSBzdWJwcm9jZXNzLCBiZWNhdXNlCiAgIHdlIGRpZCBpb2N0bCBUSU9DU0NUVFkpLiAq LwovKiAjdW5kZWYgRE9OVF9SRU9QRU5fUFRZICovCgovKiBEZWZpbmUgaWYgdGhlIHN5c3Rl bSBpcyBNUyBET1Mgb3IgTVMgV2luZG93cy4gKi8KLyogI3VuZGVmIERPU19OVCAqLwoKLyog RGVmaW5lIHRvIDEgaWYgdGhlIHN5c3RlbSBtZW1vcnkgYWxsb2NhdG9yIGlzIERvdWcgTGVh IHN0eWxlLCB3aXRoIG1hbGxvYwogICBob29rcyBhbmQgbWFsbG9jX3NldF9zdGF0ZS4gKi8K I2RlZmluZSBET1VHX0xFQV9NQUxMT0MgMQoKLyogRGVmaW5lIHRvIDEgdG8gZW5hYmxlIHcz MiBkZWJ1ZyBmYWNpbGl0aWVzLiAqLwovKiAjdW5kZWYgRU1BQ1NERUJVRyAqLwoKLyogRGVm aW5lIHRvIHRoZSBjYW5vbmljYWwgRW1hY3MgY29uZmlndXJhdGlvbiBuYW1lLiAqLwojZGVm aW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKCi8q IFN1bW1hcnkgb2Ygc29tZSBvZiB0aGUgbWFpbiBmZWF0dXJlcyBlbmFibGVkIGJ5IGNvbmZp Z3VyZS4gKi8KI2RlZmluZSBFTUFDU19DT05GSUdfRkVBVFVSRVMgIlhQTSBKUEVHIFRJRkYg R0lGIFBORyBSU1ZHIElNQUdFTUFHSUNLIFNPVU5EIEdQTSBEQlVTIEdDT05GIEdTRVRUSU5H UyBOT1RJRlkgQUNMIExJQlNFTElOVVggR05VVExTIExJQlhNTDIgRlJFRVRZUEUgTTE3Tl9G TFQgTElCT1RGIFhGVCBaTElCIFRPT0xLSVRfU0NST0xMX0JBUlMgR1RLMyBYMTEiCgovKiBE ZWZpbmUgdG8gdGhlIG9wdGlvbnMgcGFzc2VkIHRvIGNvbmZpZ3VyZS4gKi8KI2RlZmluZSBF TUFDU19DT05GSUdfT1BUSU9OUyAiLS1lbmFibGUtZ2NjLXdhcm5pbmdzIgoKLyogRGVmaW5l IHRvIDEgaWYgZXhwZW5zaXZlIHJ1bi10aW1lIGRhdGEgdHlwZSBhbmQgY29uc2lzdGVuY3kg Y2hlY2tzIGFyZQogICBlbmFibGVkLiAqLwovKiAjdW5kZWYgRU5BQkxFX0NIRUNLSU5HICov CgovKiBEZWZpbmUgdGhpcyB0byAxIGlmIEZfRFVQRkQgYmVoYXZpb3IgZG9lcyBub3QgbWF0 Y2ggUE9TSVggKi8KLyogI3VuZGVmIEZDTlRMX0RVUEZEX0JVR0dZICovCgovKiBMZXR0ZXIg dG8gdXNlIGluIGZpbmRpbmcgZGV2aWNlIG5hbWUgb2YgZmlyc3QgUFRZLCBpZiBQVFlzIGFy ZSBzdXBwb3J0ZWQuCiAgICovCi8qICN1bmRlZiBGSVJTVF9QVFlfTEVUVEVSICovCgovKiBX aXRob3V0IHRoZSBmb2xsb3dpbmcgd29ya2Fyb3VuZCwgRW1hY3MgcnVucyBzbG93bHkgb24g T1MgWCAxMC44LgogICBUaGUgd29ya2Fyb3VuZCBkaXNhYmxlcyBzb21lIHVzZWZ1bCBydW4t dGltZSBjaGVja2luZywgc28gaXQKICAgc2hvdWxkIGJlIGNvbmRpdGlvbmFsIHRvIHRoZSBw bGF0Zm9ybXMgd2l0aCB0aGUgcGVyZm9ybWFuY2UgYnVnLgogICBQZXJoYXBzIEFwcGxlIHdp bGwgZml4IHRoaXMgc29tZSBkYXk7IGFsc28gc2VlIG00L2V4dGVybi1pbmxpbmUubTQuICAq LwojaWYgZGVmaW5lZCBfX0FQUExFX18gJiYgZGVmaW5lZCBfX0dOVUNfXwojIGlmbmRlZiBf RE9OVF9VU0VfQ1RZUEVfSU5MSU5FXwojICBkZWZpbmUgX0RPTlRfVVNFX0NUWVBFX0lOTElO RV8KIyBlbmRpZgojIGlmbmRlZiBfRk9SVElGWV9TT1VSQ0UKIyAgZGVmaW5lIF9GT1JUSUZZ X1NPVVJDRSAwCiMgZW5kaWYKI2VuZGlmCgoKLyogRGVmaW5lIHRvIDEgaWYgZnV0aW1lc2F0 IG1pc2hhbmRsZXMgYSBOVUxMIGZpbGUgbmFtZS4gKi8KLyogI3VuZGVmIEZVVElNRVNBVF9O VUxMX0JVRyAqLwoKLyogRGVmaW5lIHRoaXMgdG8gY2hlY2sgZm9yIGVycm9ycyBpbiBjb25z IGxpc3QuICovCi8qICN1bmRlZiBHQ19DSEVDS19DT05TX0xJU1QgKi8KCi8qIERlZmluZSB0 aGlzIHRlbXBvcmFyaWx5IHRvIGh1bnQgYSBidWcuIElmIGRlZmluZWQsIHRoZSBzaXplIG9m IHN0cmluZ3MgaXMKICAgcmVkdW5kYW50bHkgcmVjb3JkZWQgaW4gc2RhdGEgc3RydWN0dXJl cyBzbyB0aGF0IGl0IGNhbiBiZSBjb21wYXJlZCB0byB0aGUKICAgc2l6ZXMgcmVjb3JkZWQg aW4gTGlzcCBzdHJpbmdzLiAqLwovKiAjdW5kZWYgR0NfQ0hFQ0tfU1RSSU5HX0JZVEVTICov CgovKiBEZWZpbmUgdGhpcyB0byBjaGVjayB0aGUgc3RyaW5nIGZyZWUgbGlzdC4gKi8KLyog I3VuZGVmIEdDX0NIRUNLX1NUUklOR19GUkVFX0xJU1QgKi8KCi8qIERlZmluZSB0aGlzIHRv IGNoZWNrIGZvciBzaG9ydCBzdHJpbmcgb3ZlcnJ1bi4gKi8KLyogI3VuZGVmIEdDX0NIRUNL X1NUUklOR19PVkVSUlVOICovCgovKiBNYXJrIGEgc2Vjb25kYXJ5IHN0YWNrLCBsaWtlIHRo ZSByZWdpc3RlciBzdGFjayBvbiB0aGUgaWE2NC4gKi8KLyogI3VuZGVmIEdDX01BUktfU0VD T05EQVJZX1NUQUNLICovCgovKiBEZWZpbmUgaWYgc2V0am1wIGlzIGtub3duIHRvIHNhdmUg YWxsIHJlZ2lzdGVycyByZWxldmFudCBmb3IgY29uc2VydmF0aXZlCiAgIGdhcmJhZ2UgY29s bGVjdGlvbiBpbiB0aGUgam1wX2J1Zi4gKi8KI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQoK LyogRGVmaW5lIHRvIDEgdG8gZGlzYWJsZSBHVEsrL0dESyBkZXByZWNhdGlvbiB3YXJuaW5n cy4gKi8KI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCgovKiBE ZWZpbmUgdG8gdGhlIHR5cGUgb2YgZWxlbWVudHMgaW4gdGhlIGFycmF5IHNldCBieSBgZ2V0 Z3JvdXBzJy4gVXN1YWxseQogICB0aGlzIGlzIGVpdGhlciBgaW50JyBvciBgZ2lkX3QnLiAq LwojZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CgovKiBEZWZpbmUgdGhpcyB0byAxIGlmIGdl dGdyb3VwcygwLE5VTEwpIGRvZXMgbm90IHJldHVybiB0aGUgbnVtYmVyIG9mIGdyb3Vwcy4K ICAgKi8KLyogI3VuZGVmIEdFVEdST1VQU19aRVJPX0JVRyAqLwoKLyogRGVmaW5lIGlmIGdl dHRpbWVvZmRheSBjbG9iYmVycyB0aGUgbG9jYWx0aW1lIGJ1ZmZlci4gKi8KLyogI3VuZGVm IEdFVFRJTUVPRkRBWV9DTE9CQkVSU19MT0NBTFRJTUUgKi8KCi8qIERlZmluZSB0aGlzIHRv ICd2b2lkJyBvciAnc3RydWN0IHRpbWV6b25lJyB0byBtYXRjaCB0aGUgc3lzdGVtJ3MKICAg ZGVjbGFyYXRpb24gb2YgdGhlIHNlY29uZCBhcmd1bWVudCB0byBnZXR0aW1lb2ZkYXkuICov CiNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHN0cnVjdCB0aW1lem9uZQoKLyogRGVm aW5lIHRvIDEgdG8gZGlzYWJsZSBHbGliIGRlcHJlY2F0aW9uIHdhcm5pbmdzLiAqLwojZGVm aW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCgovKiBEZWZpbmUgdGhp cyB0byBlbmFibGUgZ2x5cGhzIGRlYnVnZ2luZyBjb2RlLiAqLwovKiAjdW5kZWYgR0xZUEhf REVCVUcgKi8KCi8qIERlZmluZSB0byBhIEMgcHJlcHJvY2Vzc29yIGV4cHJlc3Npb24gdGhh dCBldmFsdWF0ZXMgdG8gMSBvciAwLCBkZXBlbmRpbmcKICAgd2hldGhlciB0aGUgZ251bGli IG1vZHVsZSBjbG9zZS1zdHJlYW0gc2hhbGwgYmUgY29uc2lkZXJlZCBwcmVzZW50LiAqLwoj ZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQoKLyogRGVmaW5lIHRvIGEgQyBwcmVwcm9j ZXNzb3IgZXhwcmVzc2lvbiB0aGF0IGV2YWx1YXRlcyB0byAxIG9yIDAsIGRlcGVuZGluZwog ICB3aGV0aGVyIHRoZSBnbnVsaWIgbW9kdWxlIGZhY2Nlc3NhdCBzaGFsbCBiZSBjb25zaWRl cmVkIHByZXNlbnQuICovCiNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCgovKiBEZWZpbmUg dG8gYSBDIHByZXByb2Nlc3NvciBleHByZXNzaW9uIHRoYXQgZXZhbHVhdGVzIHRvIDEgb3Ig MCwgZGVwZW5kaW5nCiAgIHdoZXRoZXIgdGhlIGdudWxpYiBtb2R1bGUgZmRvcGVuZGlyIHNo YWxsIGJlIGNvbnNpZGVyZWQgcHJlc2VudC4gKi8KI2RlZmluZSBHTlVMSUJfRkRPUEVORElS IDEKCi8qIERlZmluZSB0byBhIEMgcHJlcHJvY2Vzc29yIGV4cHJlc3Npb24gdGhhdCBldmFs dWF0ZXMgdG8gMSBvciAwLCBkZXBlbmRpbmcKICAgd2hldGhlciB0aGUgZ251bGliIG1vZHVs ZSBmc2NhbmYgc2hhbGwgYmUgY29uc2lkZXJlZCBwcmVzZW50LiAqLwojZGVmaW5lIEdOVUxJ Ql9GU0NBTkYgMQoKLyogRGVmaW5lIHRvIGEgQyBwcmVwcm9jZXNzb3IgZXhwcmVzc2lvbiB0 aGF0IGV2YWx1YXRlcyB0byAxIG9yIDAsIGRlcGVuZGluZwogICB3aGV0aGVyIHRoZSBnbnVs aWIgbW9kdWxlIG1rb3N0ZW1wIHNoYWxsIGJlIGNvbnNpZGVyZWQgcHJlc2VudC4gKi8KI2Rl ZmluZSBHTlVMSUJfTUtPU1RFTVAgMQoKLyogZW5hYmxlIHNvbWUgZ251bGliIHBvcnRhYmls aXR5IGNoZWNrcyAqLwojZGVmaW5lIEdOVUxJQl9QT1JUQ0hFQ0sgMQoKLyogRW5hYmxlIGNv bXBpbGUtdGltZSBhbmQgcnVuLXRpbWUgYm91bmRzLWNoZWNraW5nLCBhbmQgc29tZSB3YXJu aW5ncywKICAgICAgd2l0aG91dCB1cHNldHRpbmcgZ2xpYmMgMi4xNSsuICovCiAgICNpZiAo ZGVmaW5lZCBHTlVMSUJfUE9SVENIRUNLICYmICFkZWZpbmVkIF9GT1JUSUZZX1NPVVJDRSBc CiAgICAgICAgJiYgZGVmaW5lZCBfX09QVElNSVpFX18gJiYgX19PUFRJTUlaRV9fKQogICAj IGRlZmluZSBfRk9SVElGWV9TT1VSQ0UgMgogICAjZW5kaWYKICAKCi8qIERlZmluZSB0byAx IGlmIHByaW50ZiBhbmQgZnJpZW5kcyBzaG91bGQgYmUgbGFiZWxlZCB3aXRoIGF0dHJpYnV0 ZQogICAiX19nbnVfcHJpbnRmX18iIGluc3RlYWQgb2YgIl9fcHJpbnRmX18iICovCi8qICN1 bmRlZiBHTlVMSUJfUFJJTlRGX0FUVFJJQlVURV9GTEFWT1JfR05VICovCgovKiBEZWZpbmUg dG8gYSBDIHByZXByb2Nlc3NvciBleHByZXNzaW9uIHRoYXQgZXZhbHVhdGVzIHRvIDEgb3Ig MCwgZGVwZW5kaW5nCiAgIHdoZXRoZXIgdGhlIGdudWxpYiBtb2R1bGUgc2NhbmYgc2hhbGwg YmUgY29uc2lkZXJlZCBwcmVzZW50LiAqLwojZGVmaW5lIEdOVUxJQl9TQ0FORiAxCgovKiBE ZWZpbmUgaWYgdGhzIHN5c3RlbSBpcyBjb21wYXRpYmxlIHdpdGggR05VL0xpbnV4LiAqLwoj ZGVmaW5lIEdOVV9MSU5VWCAvKiovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1 c2UgdGhlIEdOVSBtZW1vcnkgYWxsb2NhdG9yLiAqLwojZGVmaW5lIEdOVV9NQUxMT0MgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBhY2NlcHQ0JyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0FDQ0VQVDQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IGBhY2Nlc3MnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9BQ0NFU1MgKi8KCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsc29ydCcgZnVuY3Rpb24uICovCi8qICN1 bmRlZiBIQVZFX0FDTFNPUlQgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8 YWNsdi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfQUNMVl9IICovCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbHhfZ2V0JyBmdW5jdGlvbi4gKi8KLyog I3VuZGVmIEhBVkVfQUNMWF9HRVQgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgYWNsX2NvcHlfZXh0X25hdGl2ZScgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0FD TF9DT1BZX0VYVF9OQVRJVkUgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBg YWNsX2NyZWF0ZV9lbnRyeV9ucCcgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0FDTF9D UkVBVEVfRU5UUllfTlAgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNs X2RlbGV0ZV9kZWZfZmlsZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9BQ0xfREVMRVRF X0RFRl9GSUxFIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsX2RlbGV0 ZV9mZF9ucCcgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0FDTF9ERUxFVEVfRkRfTlAg Ki8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsX2RlbGV0ZV9maWxlX25w JyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfQUNMX0RFTEVURV9GSUxFX05QICovCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9lbnRyaWVzJyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgYWNsX2V4dGVuZGVkX2ZpbGUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVf QUNMX0VYVEVOREVEX0ZJTEUgMQoKLyogRGVmaW5lIHRvIDEgaWYgdGhlIGNvbnN0YW50IEFD TF9GSVJTVF9FTlRSWSBleGlzdHMuICovCiNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkg MQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBhY2xfZnJlZScgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYGFjbF9mcmVlX3RleHQnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9BQ0xf RlJFRV9URVhUICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9mcm9t X21vZGUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9mcm9tX3RleHQnIGZ1bmN0aW9uLiAq LwojZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgYGFjbF9nZXRfZmQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfQUNMX0dF VF9GRCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9nZXRfZmlsZScg ZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIDxhY2wvbGliYWNsLmg+IGhlYWRlciBmaWxlLiAqLwojZGVm aW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgYWNsX3NldF9mZCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsX3NldF9maWxlJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYGFjbF90b19zaG9ydF90ZXh0JyBmdW5jdGlvbi4gKi8KLyogI3VuZGVm IEhBVkVfQUNMX1RPX1NIT1JUX1RFWFQgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgYWNsX3RyaXZpYWwnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9BQ0xfVFJJ VklBTCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgdGhlIEFDTCB0eXBlIEFDTF9UWVBFX0VYVEVO REVEIGV4aXN0cy4gKi8KLyogI3VuZGVmIEhBVkVfQUNMX1RZUEVfRVhURU5ERUQgKi8KCi8q IERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWxpZ25lZF9hbGxvYycgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlICdhbGxvY2EnIGFmdGVyIGluY2x1ZGluZyA8YWxsb2NhLmg+LCBhIGhlYWRlciB0 aGF0CiAgIG1heSBiZSBzdXBwbGllZCBieSB0aGlzIGRpc3RyaWJ1dGlvbi4gKi8KI2RlZmlu ZSBIQVZFX0FMTE9DQSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSA8YWxsb2NhLmg+ IGFuZCBpdCBzaG91bGQgYmUgdXNlZCAobm90IG9uIFVsdHJpeCkuCiAgICovCiNkZWZpbmUg SEFWRV9BTExPQ0FfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiBBTFNBIGlzIGF2YWlsYWJsZS4g Ki8KI2RlZmluZSBIQVZFX0FMU0EgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IDxieXRlc3dhcC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX0JZVEVTV0FQX0gg MQoKLyogRGVmaW5lIHRvIDEgaWYgc3RydG9sZCBjb25mb3JtcyB0byBDOTkuICovCiNkZWZp bmUgSEFWRV9DOTlfU1RSVE9MRCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGNmbWFrZXJhdycgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjZnNldHNwZWVkJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGBjbG9ja19nZXR0aW1lJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0NMT0NLX0dF VFRJTUUgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjbG9ja19zZXR0aW1l JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIDxjb2ZmLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5k ZWYgSEFWRV9DT0ZGX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8Y29t X2Vyci5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfQ09NX0VSUl9IICovCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGNvcHlzaWduJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKCi8qIERlZmluZSB0byAxIGlmIEMgc3VwcG9ydHMg dmFyaWFibGUtbGVuZ3RoIGFycmF5cy4gKi8KI2RlZmluZSBIQVZFX0NfVkFSQVJSQVlTIDEK Ci8qIERlZmluZSB0byAxIGlmIGRhdGFfc3RhcnQgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIHN0 YXJ0IG9mIHRoZSBtYWluIGRhdGEKICAgc2VnbWVudC4gKi8KI2RlZmluZSBIQVZFX0RBVEFf U1RBUlQgMQoKLyogRGVmaW5lIHRvIDEgaWYgdXNpbmcgRC1CdXMuICovCiNkZWZpbmUgSEFW RV9EQlVTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGJ1c190eXBlX2lz X3ZhbGlkJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAx CgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGRidXNfdmFsaWRhdGVfYnVzX25h bWUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAx CgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGRidXNfdmFsaWRhdGVfaW50ZXJm YWNlJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNF IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGJ1c192YWxpZGF0ZV9tZW1i ZXInIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBkYnVzX3ZhbGlkYXRlX3BhdGgnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGJ1c193YXRjaF9nZXRfdW5peF9mZCcgZnVuY3Rp b24uICovCiNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgYWxhcm0nLCBhbmQgdG8g MCBpZiB5b3UgZG9uJ3QuCiAgICovCiNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgZGlyZmQnLCBhbmQg dG8gMCBpZiB5b3UgZG9uJ3QuCiAgICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfRElSRkQgKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgZmRhdGFz eW5jJywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9G REFUQVNZTkMgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9u IG9mIGBmZG9wZW5kaXInLCBhbmQgdG8gMCBpZiB5b3UKICAgZG9uJ3QuICovCiNkZWZpbmUg SEFWRV9ERUNMX0ZET1BFTkRJUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg ZGVjbGFyYXRpb24gb2YgYGdldGR0YWJsZXNpemUnLCBhbmQgdG8gMCBpZiB5b3UKICAgZG9u J3QuICovCiNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9uIG9mIGBnZXRlbnYnLCBhbmQgdG8gMCBp ZiB5b3UgZG9uJ3QuCiAgICovCiNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2YgYGxvY2FsdGltZV9yJywg YW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9MT0NBTFRJ TUVfUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2Yg YG1lbXJjaHInLCBhbmQgdG8gMCBpZiB5b3UKICAgZG9uJ3QuICovCiNkZWZpbmUgSEFWRV9E RUNMX01FTVJDSFIgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0 aW9uIG9mIGBzdHJtb2RlJywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5l IEhBVkVfREVDTF9TVFJNT0RFIDAKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBk ZWNsYXJhdGlvbiBvZiBgc3RydG9pbWF4JywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAq LwojZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIGRlY2xhcmF0aW9uIG9mIGBzdHJ0b2xsJywgYW5kIHRvIDAgaWYgeW91CiAg IGRvbid0LiAqLwovKiAjdW5kZWYgSEFWRV9ERUNMX1NUUlRPTEwgKi8KCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgc3RydG91bGwnLCBhbmQgdG8g MCBpZiB5b3UKICAgZG9uJ3QuICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfU1RSVE9VTEwgKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgc3RydG91 bWF4JywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9T VFJUT1VNQVggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9u IG9mIGBzeXNfc2lnbGlzdCcsIGFuZCB0byAwIGlmIHlvdQogICBkb24ndC4gKi8KI2RlZmlu ZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGRlY2xhcmF0aW9uIG9mIGB0em5hbWUnLCBhbmQgdG8gMCBpZiB5b3UgZG9uJ3QuCiAg ICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfVFpOQU1FICovCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2YgYF9wdXRlbnYnLCBhbmQgdG8gMCBpZiB5b3UK ICAgZG9uJ3QuICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfX1BVVEVOViAqLwoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9uIG9mIGBfX2ZwZW5kaW5nJywgYW5k IHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5H IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgX19z eXNfc2lnbGlzdCcsIGFuZCB0byAwIGlmIHlvdQogICBkb24ndC4gKi8KLyogI3VuZGVmIEhB VkVfREVDTF9fX1NZU19TSUdMSVNUICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgPGRpcmVudC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGlyZmQnIGZ1bmN0aW9uLiAqLwov KiAjdW5kZWYgSEFWRV9ESVJGRCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IGBkbGFkZHInIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9ETEFERFIgKi8KCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGxmdW5jJyBmdW5jdGlvbi4gKi8KLyogI3Vu ZGVmIEhBVkVfRExGVU5DICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgJ2R1 cDInIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRFVQMiAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYGVhY2Nlc3MnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9F QUNDRVNTICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGVuZGdyZW50JyBm dW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgZW5kcHdlbnQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRU5E UFdFTlQgMQoKLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBlbnZp cm9uLiAqLwojZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgZXVpZGFjY2VzcycgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZF X0VVSURBQ0NFU1MgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8ZXhlY2lu Zm8uaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZmFjY2Vzc2F0JyBmdW5jdGlvbi4gKi8KI2Rl ZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGZhY2wnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9GQUNMICovCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZjaGRpcicgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFW RV9GQ0hESVIgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmY2htb2QnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRkNITU9EIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSBgZmNudGwnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRkNOVEwgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmZGF0YXN5bmMnIGZ1bmN0aW9uLiAq LwovKiAjdW5kZWYgSEFWRV9GREFUQVNZTkMgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgZmRvcGVuZGlyJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZvcmsnIGZ1bmN0aW9uLiAq LwojZGVmaW5lIEhBVkVfRk9SSyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGZyZWVpZmFkZHJzJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEK Ci8qIERlZmluZSB0byAxIGlmIHVzaW5nIHRoZSBmcmVldHlwZSBhbmQgZm9udGNvbmZpZyBs aWJyYXJpZXMuICovCiNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCgovKiBEZWZpbmUgdG8gMSBp ZiBmc2Vla28gKGFuZCBwcmVzdW1hYmx5IGZ0ZWxsbykgZXhpc3RzIGFuZCBpcyBkZWNsYXJl ZC4gKi8KI2RlZmluZSBIQVZFX0ZTRUVLTyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYGZzdGF0YXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRlNUQVRBVCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZzeW5jJyBmdW5jdGlvbi4gKi8KI2Rl ZmluZSBIQVZFX0ZTWU5DIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnV0 aW1lbnMnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVzJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBI QVZFX0ZVVElNRVMgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVz YXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2FpX3N0cmVycm9yJyBmdW5jdGlvbi4gKi8KI2RlZmlu ZSBIQVZFX0dBSV9TVFJFUlJPUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB1c2luZyBHQ29uZi4g Ki8KI2RlZmluZSBIQVZFX0dDT05GIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgZ2V0YWNsJyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfR0VUQUNMICovCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldGFkZHJpbmZvJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgZ2V0ZHRhYmxlc2l6ZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9HRVREVEFC TEVTSVpFIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0Z3JlbnQnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQoKLyogRGVmaW5lIHRvIDEgaWYg eW91ciBzeXN0ZW0gaGFzIGEgd29ya2luZyBgZ2V0Z3JvdXBzJyBmdW5jdGlvbi4gKi8KLyog I3VuZGVmIEhBVkVfR0VUR1JPVVBTICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgYGdldGhvc3RuYW1lJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1F IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0aWZhZGRycycgZnVuY3Rp b24uICovCiNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSA8Z2V0b3B0Lmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRvcHRfbG9uZ19v bmx5JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRwYWdlc2l6ZScgZnVuY3Rpb24uICov CiNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYGdldHBlZXJuYW1lJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dFVFBFRVJO QU1FIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0cHQnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfR0VUUFQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGBnZXRwd2VudCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldHJsaW1pdCcgZnVuY3Rpb24uICov CiNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGBnZXRydXNhZ2UnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0c29ja25hbWUnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIGBnZXR0aW1lb2ZkYXknIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0X2N1cnJl bnRfZGlyX25hbWUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElS X05BTUUgMQoKLyogRGVmaW5lIHRvIDEgaWYgdXNpbmcgR0ZpbGUuICovCi8qICN1bmRlZiBI QVZFX0dGSUxFTk9USUZZICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBhIGdpZiAo b3IgdW5naWYpIGxpYnJhcnkuICovCiNkZWZpbmUgSEFWRV9HSUYgMQoKLyogRGVmaW5lIHRv IDEgaWYgR0xpYiBpcyBsaW5rZWQgaW4uICovCiNkZWZpbmUgSEFWRV9HTElCIDEKCi8qIERl ZmluZSBpZiB1c2luZyBHbnVUTFMuICovCiNkZWZpbmUgSEFWRV9HTlVUTFMgMQoKLyogRGVm aW5lIGlmIHVzaW5nIEdudVRMUyB2My4gKi8KI2RlZmluZSBIQVZFX0dOVVRMUzMgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGdwbSBsaWJyYXJ5ICgtbGdwbSkuICovCiNk ZWZpbmUgSEFWRV9HUE0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBncmFu dHB0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dSQU5UUFQgMQoKLyogRGVmaW5lIHRv IDEgaWYgdXNpbmcgR1NldHRpbmdzLiAqLwojZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKCi8q IERlZmluZSB0byAxIGlmIHVzaW5nIEdUSyAzIG9yIGxhdGVyLiAqLwojZGVmaW5lIEhBVkVf R1RLMyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGd0a19hZGp1c3RtZW50 X2dldF9wYWdlX3NpemUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR1RLX0FESlVTVE1F TlRfR0VUX1BBR0VfU0laRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGd0 a19kaWFsb2dfZ2V0X2FjdGlvbl9hcmVhJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dU S19ESUFMT0dfR0VUX0FDVElPTl9BUkVBIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgZ3RrX2ZpbGVfc2VsZWN0aW9uX25ldycgZnVuY3Rpb24uICovCi8qICN1bmRlZiBI QVZFX0dUS19GSUxFX1NFTEVDVElPTl9ORVcgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgZ3RrX2hhbmRsZV9ib3hfbmV3JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZF X0dUS19IQU5ETEVfQk9YX05FVyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGd0a19vcmllbnRhYmxlX3NldF9vcmllbnRhdGlvbicgZnVuY3Rpb24uICovCiNkZWZpbmUg SEFWRV9HVEtfT1JJRU5UQUJMRV9TRVRfT1JJRU5UQVRJT04gMQoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGBndGtfdGVhcm9mZl9tZW51X2l0ZW1fbmV3JyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX0dUS19URUFST0ZGX01FTlVfSVRFTV9ORVcgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBndGtfd2lkZ2V0X2dldF9tYXBwZWQnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfR1RLX1dJREdFVF9HRVRfTUFQUEVEIDEKCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBgZ3RrX3dpZGdldF9nZXRfc2Vuc2l0aXZlJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX0dUS19XSURHRVRfR0VUX1NFTlNJVElWRSAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGd0a193aWRnZXRfZ2V0X3dpbmRvdycgZnVuY3Rp b24uICovCiNkZWZpbmUgSEFWRV9HVEtfV0lER0VUX0dFVF9XSU5ET1cgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBndGtfd2lkZ2V0X3NldF9oYXNfd2luZG93JyBmdW5j dGlvbi4gKi8KI2RlZmluZSBIQVZFX0dUS19XSURHRVRfU0VUX0hBU19XSU5ET1cgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBndGtfd2luZG93X3NldF9oYXNfcmVzaXpl X2dyaXAnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR1RLX1dJTkRPV19TRVRfSEFTX1JF U0laRV9HUklQIDEKCi8qIERlZmluZSB0byAxIGlmIG5ldGRiLmggZGVjbGFyZXMgaF9lcnJu by4gKi8KI2RlZmluZSBIQVZFX0hfRVJSTk8gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIDxpZmFkZHJzLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfSUZBRERS U19IIDEKCi8qIERlZmluZSB0byAxIGlmIHVzaW5nIGltYWdlbWFnaWNrLiAqLwojZGVmaW5l IEhBVkVfSU1BR0VNQUdJQ0sgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgaW5ldCBz b2NrZXRzLiAqLwojZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKCi8qIERlZmluZSB0byAx IHRvIHVzZSBpbm90aWZ5LiAqLwojZGVmaW5lIEhBVkVfSU5PVElGWSAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGludHR5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwojZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGlzc2V0dWdpZCcgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0lTU0VUVUdJRCAqLwoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGpwZWcgbGlicmFyeSAodHlwaWNhbGx5 IC1sanBlZykuICovCiNkZWZpbmUgSEFWRV9KUEVHIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSA8a2VyYmVyb3NJVi9rcmIuaD4gaGVhZGVyIGZpbGUuICovCi8qICN1bmRl ZiBIQVZFX0tFUkJFUk9TSVZfS1JCX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSA8a2VyYmVyb3Mva3JiLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9L RVJCRVJPU19LUkJfSCAqLwoKLyogRGVmaW5lIHRvIDEgdG8gdXNlIGtxdWV1ZS4gKi8KLyog I3VuZGVmIEhBVkVfS1FVRVVFICovCgovKiBEZWZpbmUgdG8gMSBpZiBgZV90ZXh0JyBpcyBh IG1lbWJlciBvZiBga3JiNV9lcnJvcicuICovCi8qICN1bmRlZiBIQVZFX0tSQjVfRVJST1Jf RV9URVhUICovCgovKiBEZWZpbmUgdG8gMSBpZiBgdGV4dCcgaXMgYSBtZW1iZXIgb2YgYGty YjVfZXJyb3InLiAqLwovKiAjdW5kZWYgSEFWRV9LUkI1X0VSUk9SX1RFWFQgKi8KCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8a3JiNS5oPiBoZWFkZXIgZmlsZS4gKi8KLyog I3VuZGVmIEhBVkVfS1JCNV9IICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg PGtyYi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfS1JCX0ggKi8KCi8qIERl ZmluZSBpZiB5b3UgaGF2ZSA8bGFuZ2luZm8uaD4gYW5kIG5sX2xhbmdpbmZvKENPREVTRVQp LiAqLwojZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYGRnYycgbGlicmFyeSAoLWxkZ2MpLiAqLwovKiAjdW5kZWYgSEFW RV9MSUJER0MgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bGliZ2VuLmg+ IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9MSUJHRU5fSCAqLwoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBrc3RhdCcgbGlicmFyeSAoLWxrc3RhdCkuICovCi8q ICN1bmRlZiBIQVZFX0xJQktTVEFUICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgJ2xvY2tmaWxlJyBsaWJyYXJ5ICgtbGxvY2tmaWxlKS4gKi8KI2RlZmluZSBIQVZFX0xJ QkxPQ0tGSUxFIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSAnbWFpbCcgbGli cmFyeSAoLWxtYWlsKS4gKi8KLyogI3VuZGVmIEhBVkVfTElCTUFJTCAqLwoKLyogRGVmaW5l IHRvIDEgaWYgdXNpbmcgbGlib3RmLiAqLwojZGVmaW5lIEhBVkVfTElCT1RGIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcGVyZnN0YXQnIGxpYnJhcnkgKC1scGVyZnN0 YXQpLiAqLwovKiAjdW5kZWYgSEFWRV9MSUJQRVJGU1RBVCAqLwoKLyogRGVmaW5lIHRvIDEg aWYgdXNpbmcgU0VMaW51eC4gKi8KI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGxpYnhtbCBsaWJyYXJ5ICgtbHhtbDIpLiAqLwoj ZGVmaW5lIEhBVkVfTElCWE1MMiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBMaW51 eCBzeXNpbmZvIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxvY2FsdGltZV9yJyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgbG9nMicgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9MT0cyIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBzdXBwb3J0IGZpbGUgbmFtZXMgbG9uZ2VyIHRoYW4gMTQgY2hh cmFjdGVycy4gKi8KI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1FUyAxCgovKiBEZWZpbmUg dG8gMSBpZiB0aGUgc3lzdGVtIGhhcyB0aGUgdHlwZSAnbG9uZyBsb25nIGludCcuICovCiNk ZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgbHJhbmQ0OCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKCi8q IERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbHN0YXQnIGZ1bmN0aW9uLiAqLwojZGVm aW5lIEhBVkVfTFNUQVQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBsdXRp bWVzJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0xVVElNRVMgMQoKLyogRGVmaW5lIHRv IDEgaWYgdXNpbmcgbGlibTE3bi1mbHQuICovCiNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1hY2hpbmUvc291bmRjYXJkLmg+IGhl YWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9NQUNISU5FX1NPVU5EQ0FSRF9IICovCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1hY2gvbWFjaC5oPiBoZWFkZXIgZmls ZS4gKi8KLyogI3VuZGVmIEhBVkVfTUFDSF9NQUNIX0ggKi8KCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgTWFnaWNrRXhwb3J0SW1hZ2VQaXhlbHMnIGZ1bmN0aW9uLiAqLwoj ZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGBNYWdpY2tNZXJnZUltYWdlTGF5ZXJzJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIDxtYWlsbG9jay5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBI QVZFX01BSUxMT0NLX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxtYWxs b2MvbWFsbG9jLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9NQUxMT0NfTUFM TE9DX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIDx3Y2hhci5oPiBkZWNsYXJlcyBtYnN0YXRl X3QuICovCiNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIDxtZW1vcnkuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG1lbXJjaHInIGZ1bmN0 aW9uLiAqLwojZGVmaW5lIEhBVkVfTUVNUkNIUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgYG1rb3N0ZW1wJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX01LT1NURU1Q IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIGEgd29ya2luZyBgbW1hcCcgc3lzdGVt IGNhbGwuICovCiNkZWZpbmUgSEFWRV9NTUFQIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSA8bW1zeXN0ZW0uaD4gaGVhZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX01N U1lTVEVNX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIGR5bmFtaWMgbW9kdWxlcyBhcmUgZW5h YmxlZCAqLwovKiAjdW5kZWYgSEFWRV9NT0RVTEVTICovCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYG5hbm90aW1lJyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfTkFO T1RJTUUgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bmV0L2lmX2RsLmg+ IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9ORVRfSUZfRExfSCAqLwoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxuZXQvaWYuaD4gaGVhZGVyIGZpbGUuICovCiNk ZWZpbmUgSEFWRV9ORVRfSUZfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YG5ld2xvY2FsZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxubGlzdC5oPiBoZWFkZXIgZmlsZS4gKi8K LyogI3VuZGVmIEhBVkVfTkxJU1RfSCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGFyZSB1 c2luZyB0aGUgTmVYVHN0ZXAgQVBJLCBlaXRoZXIgR05Vc3RlcCBvciBDb2NvYSBvbgogICBN YWMgT1MgWC4gKi8KLyogI3VuZGVmIEhBVkVfTlMgKi8KCi8qIERlZmluZSB0byB1c2UgbmF0 aXZlIE1TIFdpbmRvd3MgR1VJLiAqLwovKiAjdW5kZWYgSEFWRV9OVEdVSSAqLwoKLyogRGVm aW5lIHRvIDEgaWYgbGlib3RmIGhhcyBPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHMuICovCiNk ZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQoKLyogRGVmaW5lIHRvIDEg aWYgcGVyc29uYWxpdHkgTElOVVgzMiBjYW4gYmUgc2V0LiAqLwojZGVmaW5lIEhBVkVfUEVS U09OQUxJVFlfTElOVVgzMiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBp cGUyJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1BJUEUyIDEKCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBwbmcgbGlicmFyeS4gKi8KI2RlZmluZSBIQVZFX1BORyAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X21lbWFsaWduJyBmdW5jdGlv bi4gKi8KLyogI3VuZGVmIEhBVkVfUE9TSVhfTUVNQUxJR04gKi8KCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBgcG9zaXhfb3BlbnB0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBI QVZFX1BPU0lYX09QRU5QVCAxCgovKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIC9wcm9jIGZp bGVzeXN0ZW0uICovCiNkZWZpbmUgSEFWRV9QUk9DRlMgMQoKLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlIGBwc2VsZWN0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1BTRUxF Q1QgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwc3RhdF9nZXRkeW5hbWlj JyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfUFNUQVRfR0VURFlOQU1JQyAqLwoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgUE9TSVggdGhyZWFkcy4gKi8KI2RlZmluZSBIQVZF X1BUSFJFQUQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxwdGhyZWFkLmg+ IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKCi8qIERlZmluZSB0 byAxIGlmIHRoZSBwdGhyZWFkX3NpZ21hc2sgZnVuY3Rpb24gY2FuIGJlIHVzZWQgKGRlc3Bp dGUgYnVncykuICovCiNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQoKLyogRGVmaW5l IGlmIHRoZSBzeXN0ZW0gc3VwcG9ydHMgcHR5IGRldmljZXMuICovCiNkZWZpbmUgSEFWRV9Q VFlTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8cHR5Lmg+IGhlYWRlciBm aWxlLiAqLwojZGVmaW5lIEhBVkVfUFRZX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIGBwdXRlbnYnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfUFVURU5WIDEKCi8q IERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8cHdkLmg+IGhlYWRlciBmaWxlLiAqLwoj ZGVmaW5lIEhBVkVfUFdEX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBy YW5kb20nIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfUkFORE9NIDEKCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBgcmVhZGxpbmsnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhB VkVfUkVBRExJTksgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGByZWFkbGlu a2F0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGByZWN2ZnJvbScgZnVuY3Rpb24uICovCiNkZWZpbmUg SEFWRV9SRUNWRlJPTSAxCgovKiBEZWZpbmUgdG8gMSBpZiByZXNfaW5pdCBpcyBhdmFpbGFi bGUuICovCiNkZWZpbmUgSEFWRV9SRVNfSU5JVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgYHJpbnQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfUklOVCAxCgovKiBE ZWZpbmUgdG8gMSBpZiB1c2luZyBsaWJyc3ZnLiAqLwojZGVmaW5lIEhBVkVfUlNWRyAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNlY3VyZV9nZXRlbnYnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYHNlbGVjdCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZW5kdG8nIGZ1bmN0aW9uLiAq LwojZGVmaW5lIEhBVkVfU0VORFRPIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgc2V0ZHRhYmxlc2l6ZScgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX1NFVERUQUJM RVNJWkUgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2V0aXRpbWVyJyBm dW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYHNldGxvY2FsZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9T RVRMT0NBTEUgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZXRybGltaXQn IGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBgc2h1dGRvd24nIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVf U0hVVERPV04gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzaWcyc3RyJyBm dW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfU0lHMlNUUiAqLwoKLyogRGVmaW5lIHRvIDEg aWYgJ3NpZ19hdG9taWNfdCcgaXMgYSBzaWduZWQgaW50ZWdlciB0eXBlLiAqLwovKiAjdW5k ZWYgSEFWRV9TSUdORURfU0lHX0FUT01JQ19UICovCgovKiBEZWZpbmUgdG8gMSBpZiAnd2No YXJfdCcgaXMgYSBzaWduZWQgaW50ZWdlciB0eXBlLiAqLwovKiAjdW5kZWYgSEFWRV9TSUdO RURfV0NIQVJfVCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgJ3dpbnRfdCcgaXMgYSBzaWduZWQg aW50ZWdlciB0eXBlLiAqLwovKiAjdW5kZWYgSEFWRV9TSUdORURfV0lOVF9UICovCgovKiBE ZWZpbmUgdG8gMSBpZiBzaWdzZXRqbXAgYW5kIHNpZ2xvbmdqbXAgd29yay4gKi8KI2RlZmlu ZSBIQVZFX1NJR1NFVEpNUCAxCgovKiBEZWZpbmUgdG8gMSBpZiB0aGUgc3lzdGVtIGhhcyB0 aGUgdHlwZSBgc2lnc2V0X3QnLiAqLwojZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzbnByaW50ZicgZnVuY3Rpb24uICovCiNkZWZp bmUgSEFWRV9TTlBSSU5URiAxCgovKiBEZWZpbmUgaWYgdGhlIHN5c3RlbSBzdXBwb3J0cyA0 LjItY29tcGF0aWJsZSBzb2NrZXRzLiAqLwojZGVmaW5lIEhBVkVfU09DS0VUUyAxCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBzb3VuZCBzdXBwb3J0LiAqLwojZGVmaW5lIEhBVkVf U09VTkQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzb3VuZGNhcmQuaD4g aGVhZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1NPVU5EQ0FSRF9IICovCgovKiBEZWZp bmUgdG8gMSBpZiBDIHN0YWNrIG92ZXJmbG93IGNhbiBiZSBoYW5kbGVkIGluIHNvbWUgY2Fz ZXMuICovCiNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0YXRhY2wnIGZ1bmN0aW9uLiAqLwovKiAjdW5k ZWYgSEFWRV9TVEFUQUNMICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN0 ZGludC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX1NURElOVF9IIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3RkaW9fZXh0Lmg+IGhlYWRlciBmaWxlLiAq LwojZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIDxzdGRsaWIuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0cGNweScgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9TVFBDUFkgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIDxzdHJpbmdzLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3RyaW5nLmg+IGhlYWRlciBm aWxlLiAqLwojZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIGBzdHJzaWduYWwnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfU1RSU0lH TkFMIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3RydG9pbWF4JyBmdW5j dGlvbi4gKi8KI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYHN0cnRvbGwnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9TVFJU T0xMICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0cnRvdWxsJyBmdW5j dGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVE9VTEwgKi8KCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgc3RydG91bWF4JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1NU UlRPVU1BWCAxCgovKiBEZWZpbmUgdG8gMSBpZiAnc3RydWN0IF9fYXR0cmlidXRlX18gKChh bGlnbmVkIChOKSkpJyBhbGlnbnMgdGhlIHN0cnVjdHVyZQogICB0byBhbiBOLWJ5dGUgYm91 bmRhcnkuICovCiNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQoKLyog RGVmaW5lIHRvIDEgaWYgYGlmcl9hZGRyJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IGlmcmVx Jy4gKi8KI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCgovKiBEZWZpbmUg dG8gMSBpZiBgaWZyX2FkZHIuc2FfbGVuJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IGlmcmVx Jy4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSX1NBX0xFTiAqLwoK LyogRGVmaW5lIHRvIDEgaWYgYGlmcl9icm9hZGFkZHInIGlzIGEgbWVtYmVyIG9mIGBzdHJ1 Y3QgaWZyZXEnLiAqLwojZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIg MQoKLyogRGVmaW5lIHRvIDEgaWYgYGlmcl9mbGFncycgaXMgYSBtZW1iZXIgb2YgYHN0cnVj dCBpZnJlcScuICovCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKCi8q IERlZmluZSB0byAxIGlmIGBpZnJfaHdhZGRyJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IGlm cmVxJy4gKi8KI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKCi8qIERl ZmluZSB0byAxIGlmIGBpZnJfbmV0bWFzaycgaXMgYSBtZW1iZXIgb2YgYHN0cnVjdCBpZnJl cScuICovCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQoKLyogRGVm aW5lIHRvIDEgaWYgYG5fdW4ubl9uYW1lJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IG5saXN0 Jy4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVUNUX05MSVNUX05fVU5fTl9OQU1FICovCgovKiBE ZWZpbmUgdG8gMSBpZiBgc3RfYXRpbWVuc2VjJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IHN0 YXQnLiAqLwovKiAjdW5kZWYgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNRU5TRUMgKi8KCi8q IERlZmluZSB0byAxIGlmIGBzdF9hdGltZXNwZWMudHZfbnNlYycgaXMgYSBtZW1iZXIgb2Yg YHN0cnVjdCBzdGF0Jy4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVUNUX1NUQVRfU1RfQVRJTUVT UEVDX1RWX05TRUMgKi8KCi8qIERlZmluZSB0byAxIGlmIGBzdF9hdGltLnN0X190aW0udHZf bnNlYycgaXMgYSBtZW1iZXIgb2YgYHN0cnVjdCBzdGF0Jy4gKi8KLyogI3VuZGVmIEhBVkVf U1RSVUNUX1NUQVRfU1RfQVRJTV9TVF9fVElNX1RWX05TRUMgKi8KCi8qIERlZmluZSB0byAx IGlmIGBzdF9hdGltLnR2X25zZWMnIGlzIGEgbWVtYmVyIG9mIGBzdHJ1Y3Qgc3RhdCcuICov CiNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQoKLyogRGVmaW5l IHRvIDEgaWYgYHN0X2JpcnRodGltZW5zZWMnIGlzIGEgbWVtYmVyIG9mIGBzdHJ1Y3Qgc3Rh dCcuICovCi8qICN1bmRlZiBIQVZFX1NUUlVDVF9TVEFUX1NUX0JJUlRIVElNRU5TRUMgKi8K Ci8qIERlZmluZSB0byAxIGlmIGBzdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMnIGlzIGEgbWVt YmVyIG9mIGBzdHJ1Y3Qgc3RhdCcuICovCi8qICN1bmRlZiBIQVZFX1NUUlVDVF9TVEFUX1NU X0JJUlRIVElNRVNQRUNfVFZfTlNFQyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgYHN0X2JpcnRo dGltLnR2X25zZWMnIGlzIGEgbWVtYmVyIG9mIGBzdHJ1Y3Qgc3RhdCcuICovCi8qICN1bmRl ZiBIQVZFX1NUUlVDVF9TVEFUX1NUX0JJUlRIVElNX1RWX05TRUMgKi8KCi8qIERlZmluZSB0 byAxIGlmIGB0bV96b25lJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IHRtJy4gKi8KI2RlZmlu ZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKCi8qIERlZmluZSB0byAxIGlmIGB1bmljb2Rl JyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IHVuaXBhaXInLiAqLwojZGVmaW5lIEhBVkVfU1RS VUNUX1VOSVBBSVJfVU5JQ09ERSAxCgovKiBEZWZpbmUgaWYgc3RydWN0IHV0aW1idWYgaXMg ZGVjbGFyZWQgLS0gdXN1YWxseSBpbiA8dXRpbWUuaD4uIFNvbWUgc3lzdGVtcwogICBoYXZl IHV0aW1lLmggYnV0IGRvbid0IGRlY2xhcmUgdGhlIHN0cnVjdCBhbnl3aGVyZS4gKi8KI2Rl ZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKCi8qIERlZmluZSBpZiBzdHJ1Y3Qgc3RhdCBo YXMgYW4gc3RfZG1fbW9kZSBtZW1iZXIuICovCi8qICN1bmRlZiBIQVZFX1NUX0RNX01PREUg Ki8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3ltbGluaycgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgc3luYycgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9TWU5DIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2FjbC5oPiBoZWFkZXIgZmlsZS4gKi8KI2Rl ZmluZSBIQVZFX1NZU19BQ0xfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg PHN5cy9iaXR5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9TWVNfQklU WVBFU19IICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9pbnR0eXBl cy5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfU1lTX0lOVFRZUEVTX0ggKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2xvYWRhdmcuaD4gaGVhZGVy IGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1NZU19MT0FEQVZHX0ggKi8KCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3BhcmFtLmg+IGhlYWRlciBmaWxlLiAqLwojZGVm aW5lIEhBVkVfU1lTX1BBUkFNX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IDxzeXMvcmVzb3VyY2UuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfUkVT T1VSQ0VfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9zZWxlY3Qu aD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzeXMvc29ja2V0Lmg+IGhlYWRlciBmaWxlLiAq LwojZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSA8c3lzL3NvdW5kY2FyZC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZF X1NZU19TT1VORENBUkRfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5 cy9zdGF0Lmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9zeXNpbmZvLmg+IGhlYWRlciBm aWxlLiAqLwojZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgPHN5cy9zeXN0ZW1pbmZvLmg+IGhlYWRlciBmaWxlLiAqLwovKiAj dW5kZWYgSEFWRV9TWVNfU1lTVEVNSU5GT19IICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgPHN5cy90aW1lYi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVf U1lTX1RJTUVCX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3Rp bWUuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3R5cGVzLmg+IGhlYWRlciBmaWxlLiAq LwojZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIDxzeXMvdW4uaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfVU5f SCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy91dHNuYW1lLmg+IGhl YWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy92bGltaXQuaD4gaGVhZGVyIGZpbGUuICovCiNk ZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg PHN5cy93YWl0Lmg+IHRoYXQgaXMgUE9TSVguMSBjb21wYXRpYmxlLiAqLwojZGVmaW5lIEhB VkVfU1lTX1dBSVRfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHRlcm0u aD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9URVJNX0ggMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIHRpZmYgbGlicmFyeSAoLWx0aWZmKS4gKi8KI2RlZmluZSBI QVZFX1RJRkYgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGB0aW1lZ20nIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfVElNRUdNIDEKCi8qIERlZmluZSB0byAxIGlmIHRp bWVyZmQgZnVuY3Rpb25zIGFyZSBzdXBwb3J0ZWQgYXMgaW4gR05VL0xpbnV4LiAqLwojZGVm aW5lIEhBVkVfVElNRVJGRCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHRp bWVyX3NldHRpbWUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfVElNRVJfU0VUVElNRSAx CgovKiBEZWZpbmUgdG8gMSBpZiB0aGUgc3lzdGVtIGhhcyB0aGUgdHlwZSBgdGltZXpvbmVf dCcuICovCi8qICN1bmRlZiBIQVZFX1RJTUVaT05FX1QgKi8KCi8qIERlZmluZSBpZiBzdHJ1 Y3QgdG0gaGFzIHRoZSB0bV9nbXRvZmYgbWVtYmVyLiAqLwojZGVmaW5lIEhBVkVfVE1fR01U T0ZGIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdXIgYHN0cnVjdCB0bScgaGFzIGB0bV96b25l Jy4gRGVwcmVjYXRlZCwgdXNlCiAgIGBIQVZFX1NUUlVDVF9UTV9UTV9aT05FJyBpbnN0ZWFk LiAqLwojZGVmaW5lIEhBVkVfVE1fWk9ORSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYHRvdWNobG9jaycgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX1RPVUNITE9D SyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGRvbid0IGhhdmUgYHRtX3pvbmUnIGJ1dCBk byBoYXZlIHRoZSBleHRlcm5hbCBhcnJheQogICBgdHpuYW1lJy4gKi8KLyogI3VuZGVmIEhB VkVfVFpOQU1FICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHR6c2V0JyBm dW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1RaU0VUIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSA8dW5pc3RkLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfVU5J U1REX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgdGhlIHN5c3RlbSBoYXMgdGhlIHR5cGUgJ3Vu c2lnbmVkIGxvbmcgbG9uZyBpbnQnLiAqLwojZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M T05HX0lOVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHV0aWwuaD4gaGVh ZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1VUSUxfSCAqLwoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGB1dGltZW5zYXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVf VVRJTUVOU0FUIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8dXRpbWUuaD4g aGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9VVElNRV9IIDEKCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSA8dXRtcC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZF X1VUTVBfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHZhbGdyaW5kL3Zh bGdyaW5kLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJ TkRfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHZmb3JrJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX1ZGT1JLIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSA8dmZvcmsuaD4gaGVhZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1ZGT1JLX0gg Ki8KCi8qIERlZmluZSB0byAxIHRvIHVzZSB3MzJub3RpZnkuICovCi8qICN1bmRlZiBIQVZF X1czMk5PVElGWSAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx3Y2hhci5o PiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX1dDSEFSX0ggMQoKLyogRGVmaW5lIGlm IHlvdSBoYXZlIHRoZSAnd2NoYXJfdCcgdHlwZS4gKi8KI2RlZmluZSBIQVZFX1dDSEFSX1Qg MQoKLyogRGVmaW5lIGlmIHlvdSBoYXZlIGEgd2luZG93IHN5c3RlbS4gKi8KI2RlZmluZSBI QVZFX1dJTkRPV19TWVNURU0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx3 aW5zb2NrMi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfV0lOU09DSzJfSCAq LwoKLyogRGVmaW5lIHRvIDEgaWYgYGZvcmsnIHdvcmtzLiAqLwojZGVmaW5lIEhBVkVfV09S S0lOR19GT1JLIDEKCi8qIERlZmluZSB0byAxIGlmIGZzdGF0YXQgKC4uLiwgMCkgd29ya3Mu IEZvciBleGFtcGxlLCBpdCBkb2VzIG5vdCB3b3JrIGluIEFJWAogICA3LjEuICovCi8qICN1 bmRlZiBIQVZFX1dPUktJTkdfRlNUQVRBVF9aRVJPX0ZMQUcgKi8KCi8qIERlZmluZSBpZiB1 dGltZXMgd29ya3MgcHJvcGVybHkuICovCiNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAx CgovKiBEZWZpbmUgdG8gMSBpZiBgdmZvcmsnIHdvcmtzLiAqLwojZGVmaW5lIEhBVkVfV09S S0lOR19WRk9SSyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHdzMnRjcGlw Lmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9XUzJUQ1BJUF9IICovCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1c2UgdmVyc2lvbiAxMSBvZiBYIHdpbmRvd3Mu ICovCiNkZWZpbmUgSEFWRV9YMTEgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IFgxMVI2IG9yIG5ld2VyIHZlcnNpb24gb2YgWGxpYi4gKi8KI2RlZmluZSBIQVZFX1gxMVI2 IDEKCi8qIERlZmluZSBpZiB5b3UgaGF2ZSB1c2FibGUgWDExUjYtc3R5bGUgWElNIHN1cHBv cnQuICovCiNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIFgxMVI2IG9yIG5ld2VyIHZlcnNpb24gb2YgWHQuICovCi8qICN1bmRlZiBI QVZFX1gxMVhUUjYgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYYXczZCBs aWJyYXJ5ICgtbFhhdzNkKS4gKi8KLyogI3VuZGVmIEhBVkVfWEFXM0QgKi8KCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYZml4ZXMgZXh0ZW5zaW9uLiAqLwojZGVmaW5lIEhB VkVfWEZJWEVTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYZnQgbGlicmFy eS4gKi8KI2RlZmluZSBIQVZFX1hGVCAxCgovKiBEZWZpbmUgdG8gMSBpZiBYSU0gaXMgYXZh aWxhYmxlICovCiNkZWZpbmUgSEFWRV9YSU0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIFhpbmVyYW1hIGV4dGVuc2lvbi4gKi8KI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYa2IgZXh0ZW5zaW9uLiAqLwojZGVm aW5lIEhBVkVfWEtCIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYcG0gbGli cmFyeSAoLWxYcG0pLiAqLwojZGVmaW5lIEhBVkVfWFBNIDEKCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBYUmFuZHIgZXh0ZW5zaW9uLiAqLwojZGVmaW5lIEhBVkVfWFJBTkRS IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgWHJtU2V0RGF0YWJhc2UnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIGBYUlJHZXRPdXRwdXRQcmltYXJ5JyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX1hSUkdFVE9VVFBVVFBSSU1BUlkgMQoKLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlIGBYUlJHZXRTY3JlZW5SZXNvdXJjZXNDdXJyZW50JyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX1hSUkdFVFNDUkVFTlJFU09VUkNFU0NVUlJFTlQgMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBYU2NyZWVuTnVtYmVyT2ZTY3JlZW4nIGZ1bmN0 aW9uLiAqLwojZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgWFNjcmVlblJlc291cmNlU3RyaW5nJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB4d2lkZ2V0cyBzdXBwb3J0LiAqLwovKiAjdW5kZWYgSEFWRV9Y V0lER0VUUyAqLwoKLyogRGVmaW5lIGlmIHlvdSBoYXZlIHVzYWJsZSBpMThuIHN1cHBvcnQu ICovCiNkZWZpbmUgSEFWRV9YX0kxOE4gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIFNNIGxpYnJhcnkgKC1sU00pLiAqLwojZGVmaW5lIEhBVkVfWF9TTSAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1c2UgdGhlIFggd2luZG93IHN5c3RlbS4gKi8KI2Rl ZmluZSBIQVZFX1hfV0lORE9XUyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg emxpYiBsaWJyYXJ5ICgtbHopLiAqLwojZGVmaW5lIEhBVkVfWkxJQiAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgYF9mdGltZScgZnVuY3Rpb24uICovCi8qICN1bmRlZiBI QVZFX19GVElNRSAqLwoKLyogRGVmaW5lIHRvIDEgaWYgX3NldGptcCBhbmQgX2xvbmdqbXAg d29yay4gKi8KI2RlZmluZSBIQVZFX19TRVRKTVAgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlICdfX2J1aWx0aW5fdW53aW5kX2luaXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5l IEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgX19leGVjdXRhYmxlX3N0YXJ0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZF X19fRVhFQ1VUQUJMRV9TVEFSVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YF9fc2VjdXJlX2dldGVudicgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX19fU0VDVVJF X0dFVEVOViAqLwoKLyogRGVmaW5lIHRvIHN1cHBvcnQgdXNpbmcgYSBIZXNpb2QgZGF0YWJh c2UgdG8gZmluZCB0aGUgUE9QIHNlcnZlci4gKi8KLyogI3VuZGVmIEhFU0lPRCAqLwoKLyog RGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgSFBVWC4gKi8KLyogI3VuZGVmIEhQVVggKi8KCi8q IERlZmluZSB0byB1c2UgZ21hbGxvYyBiZWZvcmUgZHVtcGluZyBhbmQgdGhlIHN5c3RlbSBt YWxsb2MgYWZ0ZXIuICovCi8qICN1bmRlZiBIWUJSSURfTUFMTE9DICovCgovKiBUaGlzIGlz IHN1YnN0aXR1dGVkIHdoZW4gJFRFUk0gaXMgImludGVybmFsIi4gKi8KLyogI3VuZGVmIElO VEVSTkFMX1RFUk1JTkFMICovCgovKiBEZWZpbmUgdG8gcmVhZCBpbnB1dCB1c2luZyBTSUdJ Ty4gKi8KI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQoKLyogRGVmaW5lIGlmIHRoZSBzeXN0 ZW0gaXMgSVJJWC4gKi8KLyogI3VuZGVmIElSSVg2XzUgKi8KCi8qIFJldHVybnMgdHJ1ZSBp ZiBjaGFyYWN0ZXIgaXMgYW55IGZvcm0gb2Ygc2VwYXJhdG9yLiAqLwojZGVmaW5lIElTX0FO WV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKCi8qIFJldHVybnMgdHJ1ZSBp ZiBjaGFyYWN0ZXIgaXMgYSBkZXZpY2Ugc2VwYXJhdG9yLiAqLwojZGVmaW5lIElTX0RFVklD RV9TRVAoX2NfKSAwCgovKiBSZXR1cm5zIHRydWUgaWYgY2hhcmFjdGVyIGlzIGEgZGlyZWN0 b3J5IHNlcGFyYXRvci4gKi8KI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18p ID09IERJUkVDVE9SWV9TRVApCgovKiBEZWZpbmUgdG8gc3VwcG9ydCBLZXJiZXJvcy1hdXRo ZW50aWNhdGVkIFBPUCBtYWlsIHJldHJpZXZhbC4gKi8KLyogI3VuZGVmIEtFUkJFUk9TICov CgovKiBEZWZpbmUgdG8gdXNlIEtlcmJlcm9zIDUgaW5zdGVhZCBvZiBLZXJiZXJvcyA0LiAq LwovKiAjdW5kZWYgS0VSQkVST1M1ICovCgovKiBEZWZpbmUgdG8gMSBpZiBMaW51eCBzeXNp bmZvIHNpemVzIGFyZSBpbiBtdWx0aXBsZXMgb2YgbWVtX3VuaXQgYnl0ZXMuICovCiNkZWZp bmUgTElOVVhfU1lTSU5GT19VTklUIDEKCi8qIERlZmluZSB0byAxIGlmICdsc3RhdCcgZGVy ZWZlcmVuY2VzIGEgc3ltbGluayBzcGVjaWZpZWQgd2l0aCBhIHRyYWlsaW5nCiAgIHNsYXNo LiAqLwojZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKCi8qIFN0cmlu ZyBnaXZpbmcgZmFsbGJhY2sgUE9QIG1haWwgaG9zdC4gKi8KLyogI3VuZGVmIE1BSUxIT1NU ICovCgovKiBEZWZpbmUgdG8gdW5saW5rLCByYXRoZXIgdGhhbiBlbXB0eSwgbWFpbCBzcG9v bCBhZnRlciByZWFkaW5nLiAqLwovKiAjdW5kZWYgTUFJTF9VTkxJTktfU1BPT0wgKi8KCi8q IERlZmluZSBpZiB0aGUgbWFpbGVyIHVzZXMgZmxvY2sgdG8gaW50ZXJsb2NrIHRoZSBtYWls IHNwb29sLiAqLwovKiAjdW5kZWYgTUFJTF9VU0VfRkxPQ0sgKi8KCi8qIERlZmluZSBpZiB0 aGUgbWFpbGVyIHVzZXMgbG9ja2YgdG8gaW50ZXJsb2NrIHRoZSBtYWlsIHNwb29sLiAqLwov KiAjdW5kZWYgTUFJTF9VU0VfTE9DS0YgKi8KCi8qIERlZmluZSB0byBzdXBwb3J0IFBPUCBt YWlsIHJldHJpZXZhbC4gKi8KI2RlZmluZSBNQUlMX1VTRV9QT1AgMQoKLyogU3lzdGVtIGV4 dGVuc2lvbiBmb3IgZHluYW1pYyBsaWJyYXJpZXMgKi8KLyogI3VuZGVmIE1PRFVMRVNfU1VG RklYICovCgovKiBEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBNUyBET1MuICovCi8qICN1bmRl ZiBNU0RPUyAqLwoKLyogRGVmaW5lIGlmIHN5c3RlbSdzIGltYWtlIGNvbmZpZ3VyYXRpb24g ZmlsZSBkZWZpbmVzICdOZWVkV2lkZVByb3RvdHlwZXMnIGFzCiAgICdOTycuICovCiNkZWZp bmUgTkFSUk9XUFJPVE8gMQoKLyogRGVmaW5lIGlmIFhFZGl0UmVzIHNob3VsZCBub3QgYmUg dXNlZC4gKi8KLyogI3VuZGVmIE5PX0VESVRSRVMgKi8KCi8qIE1pbmltdW0gdmFsdWUgb2Yg TlNJRy4gKi8KLyogI3VuZGVmIE5TSUdfTUlOSU1VTSAqLwoKLyogRGVmaW5lIHRvIDEgaWYg eW91IGFyZSB1c2luZyBOUyB3aW5kb3dpbmcgdW5kZXIgTWFjT1MgWC4gKi8KLyogI3VuZGVm IE5TX0lNUExfQ09DT0EgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBhcmUgdXNpbmcgTlMg d2luZG93aW5nIHVuZGVyIEdOVXN0ZXAuICovCi8qICN1bmRlZiBOU19JTVBMX0dOVVNURVAg Ki8KCi8qIE5hbWUgb2YgdGhlIGZpbGUgdG8gb3BlbiB0byBnZXQgYSBudWxsIGZpbGUsIG9y IGEgZGF0YSBzaW5rLiAqLwojZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCgovKiBE ZWZpbmUgdG8gMSBpZiB0aGUgbmxpc3Qgbl9uYW1lIG1lbWJlciBpcyBhIHBvaW50ZXIgKi8K LyogI3VuZGVmIE5fTkFNRV9QT0lOVEVSICovCgovKiBOYW1lIG9mIHBhY2thZ2UgKi8KI2Rl ZmluZSBQQUNLQUdFICJlbWFjcyIKCi8qIERlZmluZSB0byB0aGUgYWRkcmVzcyB3aGVyZSBi dWcgcmVwb3J0cyBmb3IgdGhpcyBwYWNrYWdlIHNob3VsZCBiZSBzZW50LiAqLwojZGVmaW5l IFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCgovKiBEZWZpbmUg dG8gdGhlIGZ1bGwgbmFtZSBvZiB0aGlzIHBhY2thZ2UuICovCiNkZWZpbmUgUEFDS0FHRV9O QU1FICJHTlUgRW1hY3MiCgovKiBEZWZpbmUgdG8gdGhlIGZ1bGwgbmFtZSBhbmQgdmVyc2lv biBvZiB0aGlzIHBhY2thZ2UuICovCiNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFj cyAyNS4wLjkyIgoKLyogRGVmaW5lIHRvIHRoZSBvbmUgc3ltYm9sIHNob3J0IG5hbWUgb2Yg dGhpcyBwYWNrYWdlLiAqLwojZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCgovKiBE ZWZpbmUgdG8gdGhlIGhvbWUgcGFnZSBmb3IgdGhpcyBwYWNrYWdlLiAqLwojZGVmaW5lIFBB Q0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgoKLyogRGVm aW5lIHRvIHRoZSB2ZXJzaW9uIG9mIHRoaXMgcGFja2FnZS4gKi8KI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjI1LjAuOTIiCgovKiB0aGUgbnVtYmVyIG9mIHBlbmRpbmcgb3V0cHV0IGJ5 dGVzIG9uIHN0cmVhbSAnZnAnICovCi8qICN1bmRlZiBQRU5ESU5HX09VVFBVVF9OX0JZVEVT ICovCgovKiBEZWZpbmUgdG8gZW1wdHkgdG8gc3VwcHJlc3MgZGVwcmVjYXRpb24gd2Fybmlu Z3Mgd2hlbiBidWlsZGluZyB3aXRoCiAgIC0tZW5hYmxlLWdjYy13YXJuaW5ncyBhbmQgd2l0 aCBsaWJwbmcgdmVyc2lvbnMgYmVmb3JlIDEuNSwgd2hpY2ggbGFjawogICBwbmdfbG9uZ2pt cC4gKi8KLyogI3VuZGVmIFBOR19ERVBTVFJVQ1QgKi8KCi8qIERlZmluZSBpZiB5b3UgcG9s bCBwZXJpb2RpY2FsbHkgdG8gZGV0ZWN0IEMtZy4gKi8KI2RlZmluZSBQT0xMX0ZPUl9JTlBV VCAxCgovKiBEZWZpbmUgaWYgcHJvY2Vzc19zZW5kX3NpZ25hbCBzaG91bGQgdXNlIFZTVVNQ IGluc3RlYWQgb2YgVlNXVENILiAqLwovKiAjdW5kZWYgUFJFRkVSX1ZTVVNQICovCgovKiBE ZWZpbmUgdG8gMSBpZiBwdGhyZWFkX3NpZ21hc2soKSwgd2hlbiBpdCBmYWlscywgcmV0dXJu cyAtMSBhbmQgc2V0cyBlcnJuby4KICAgKi8KLyogI3VuZGVmIFBUSFJFQURfU0lHTUFTS19G QUlMU19XSVRIX0VSUk5PICovCgovKiBEZWZpbmUgdG8gMSBpZiBwdGhyZWFkX3NpZ21hc2sg bWF5IHJldHVybiAwIGFuZCBoYXZlIG5vIGVmZmVjdC4gKi8KLyogI3VuZGVmIFBUSFJFQURf U0lHTUFTS19JTkVGRkVDVElWRSAqLwoKLyogRGVmaW5lIHRvIDEgaWYgcHRocmVhZF9zaWdt YXNrKCkgdW5ibG9ja3Mgc2lnbmFscyBpbmNvcnJlY3RseS4gKi8KLyogI3VuZGVmIFBUSFJF QURfU0lHTUFTS19VTkJMT0NLX0JVRyAqLwoKLyogRGVmaW5lIHRvIGwsIGxsLCB1LCB1bCwg dWxsLCBldGMuLCBhcyBzdWl0YWJsZSBmb3IgY29uc3RhbnRzIG9mIHR5cGUKICAgJ3B0cmRp ZmZfdCcuICovCi8qICN1bmRlZiBQVFJESUZGX1RfU1VGRklYICovCgovKiBIb3cgdG8gaXRl cmF0ZSBvdmVyIFBUWXMuICovCiNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChp ID0gMDsgaSA8IDE7IGkrKykKCi8qIEhvdyB0byBnZXQgdGhlIGRldmljZSBuYW1lIG9mIHRo ZSBjb250cm9sIGVuZCBvZiBhIFBUWSwgaWYgbm9uLXN0YW5kYXJkLiAqLwojZGVmaW5lIFBU WV9OQU1FX1NQUklOVEYgLyoqLwoKLyogSG93IHRvIG9wZW4gYSBQVFksIGlmIG5vbi1zdGFu ZGFyZC4gKi8KI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JE V1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlO VkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChm YWxzZSkKCi8qIEhvdyB0byBnZXQgZGV2aWNlIG5hbWUgb2YgdGhlIHR0eSBlbmQgb2YgYSBQ VFksIGlmIG5vbi1zdGFuZGFyZC4gKi8KI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7 IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJs b2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1 bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2ln bWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNz X2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1F X1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CgovKiBEZWZpbmUgdG8gMSBpZiByZWFkbGluayBm YWlscyB0byByZWNvZ25pemUgYSB0cmFpbGluZyBzbGFzaC4gKi8KLyogI3VuZGVmIFJFQURM SU5LX1RSQUlMSU5HX1NMQVNIX0JVRyAqLwoKLyogRGVmaW5lIFJFTF9BTExPQyBpZiB5b3Ug d2FudCB0byB1c2UgdGhlIHJlbG9jYXRpbmcgYWxsb2NhdG9yIGZvciBidWZmZXIKICAgc3Bh Y2UuICovCi8qICN1bmRlZiBSRUxfQUxMT0MgKi8KCi8qIERlZmluZSB0byAxIGlmIGdudWxp YidzIGRpcmZkKCkgcmVwbGFjZW1lbnQgaXMgdXNlZC4gKi8KLyogI3VuZGVmIFJFUExBQ0Vf RElSRkQgKi8KCi8qIERlZmluZSB0byAxIGlmIHN0YXQgbmVlZHMgaGVscCB3aGVuIHBhc3Nl ZCBhIGRpcmVjdG9yeSBuYW1lIHdpdGggYSB0cmFpbGluZwogICBzbGFzaCAqLwovKiAjdW5k ZWYgUkVQTEFDRV9GVU5DX1NUQVRfRElSICovCgovKiBEZWZpbmUgdG8gMSBpZiBzdGF0IG5l ZWRzIGhlbHAgd2hlbiBwYXNzZWQgYSBmaWxlIG5hbWUgd2l0aCBhIHRyYWlsaW5nCiAgIHNs YXNoICovCi8qICN1bmRlZiBSRVBMQUNFX0ZVTkNfU1RBVF9GSUxFICovCgovKiBEZWZpbmUg aWYgZW1hY3MuYyBuZWVkcyB0byBjYWxsIHJ1bl90aW1lX3JlbWFwOyBmb3IgSFBVWC4gKi8K LyogI3VuZGVmIFJVTl9USU1FX1JFTUFQICovCgovKiBDaGFyYWN0ZXIgdGhhdCBzZXBhcmF0 ZXMgUEFUSCBlbGVtZW50cy4gKi8KI2RlZmluZSBTRVBDSEFSICc6JwoKLyogSG93IHRvIHNl dCB1cCBhIHNsYXZlIFBUWSwgaWYgbmVlZGVkLiAqLwovKiAjdW5kZWYgU0VUVVBfU0xBVkVf UFRZICovCgovKiBNYWtlIHByb2Nlc3Nfc2VuZF9zaWduYWwgd29yayBieSAidHlwaW5nIiBh IHNpZ25hbCBjaGFyYWN0ZXIgb24gdGhlIHB0eS4gKi8KI2RlZmluZSBTSUdOQUxTX1ZJQV9D SEFSQUNURVJTIDEKCi8qIERlZmluZSB0byBsLCBsbCwgdSwgdWwsIHVsbCwgZXRjLiwgYXMg c3VpdGFibGUgZm9yIGNvbnN0YW50cyBvZiB0eXBlCiAgICdzaWdfYXRvbWljX3QnLiAqLwov KiAjdW5kZWYgU0lHX0FUT01JQ19UX1NVRkZJWCAqLwoKLyogRGVmaW5lIHRvIGwsIGxsLCB1 LCB1bCwgdWxsLCBldGMuLCBhcyBzdWl0YWJsZSBmb3IgY29uc3RhbnRzIG9mIHR5cGUKICAg J3NpemVfdCcuICovCi8qICN1bmRlZiBTSVpFX1RfU1VGRklYICovCgovKiBEZWZpbmUgaWYg dGhlIHN5c3RlbSBpcyBTb2xhcmlzLiAqLwovKiAjdW5kZWYgU09MQVJJUzIgKi8KCi8qIElm IHVzaW5nIHRoZSBDIGltcGxlbWVudGF0aW9uIG9mIGFsbG9jYSwgZGVmaW5lIGlmIHlvdSBr bm93IHRoZQogICBkaXJlY3Rpb24gb2Ygc3RhY2sgZ3Jvd3RoIGZvciB5b3VyIHN5c3RlbTsg b3RoZXJ3aXNlIGl0IHdpbGwgYmUKICAgYXV0b21hdGljYWxseSBkZWR1Y2VkIGF0IHJ1bnRp bWUuCglTVEFDS19ESVJFQ1RJT04gPiAwID0+IGdyb3dzIHRvd2FyZCBoaWdoZXIgYWRkcmVz c2VzCglTVEFDS19ESVJFQ1RJT04gPCAwID0+IGdyb3dzIHRvd2FyZCBsb3dlciBhZGRyZXNz ZXMKCVNUQUNLX0RJUkVDVElPTiA9IDAgPT4gZGlyZWN0aW9uIG9mIGdyb3d0aCB1bmtub3du ICovCi8qICN1bmRlZiBTVEFDS19ESVJFQ1RJT04gKi8KCi8qIERlZmluZSB0byAxIGlmIHRo ZSBgU19JUyonIG1hY3JvcyBpbiA8c3lzL3N0YXQuaD4gZG8gbm90IHdvcmsgcHJvcGVybHku ICovCi8qICN1bmRlZiBTVEFUX01BQ1JPU19CUk9LRU4gKi8KCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBBTlNJIEMgaGVhZGVyIGZpbGVzLiAqLwojZGVmaW5lIFNURENfSEVB REVSUyAxCgovKiBEZWZpbmUgdG8gMSBvbiBTeXN0ZW0gViBSZWxlYXNlIDQuICovCi8qICN1 bmRlZiBTVlI0ICovCgovKiBEZWZpbmUgdG8gMSB0byB1c2UgdGhlIHN5c3RlbSBtZW1vcnkg YWxsb2NhdG9yLCBldmVuIGlmIGl0IGlzIG5vdCBEb3VnIExlYQogICBzdHlsZS4gKi8KLyog I3VuZGVmIFNZU1RFTV9NQUxMT0MgKi8KCi8qIFRoZSB0eXBlIG9mIHN5c3RlbSB5b3UgYXJl IGNvbXBpbGluZyBmb3I7IHNldHMgJ3N5c3RlbS10eXBlJy4gKi8KI2RlZmluZSBTWVNURU1f VFlQRSAiZ251L2xpbnV4IgoKLyogVW5kb2N1bWVudGVkLiAqLwovKiAjdW5kZWYgVEFCMyAq LwoKLyogVW5kb2N1bWVudGVkLiAqLwovKiAjdW5kZWYgVEFCRExZICovCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgdXNlIHRlcm1pbmZvIGluc3RlYWQgb2YgdGVybWNhcC4gKi8KI2RlZmlu ZSBURVJNSU5GTyAxCgovKiBEZWZpbmUgdG8gdGhlIGhlYWRlciBmb3IgdGhlIGJ1aWx0LWlu IHdpbmRvdyBzeXN0ZW0uICovCiNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKCi8q IERlZmluZSB0byAxIGlmIHlvdSBjYW4gc2FmZWx5IGluY2x1ZGUgYm90aCA8c3lzL3RpbWUu aD4gYW5kIDx0aW1lLmg+LiAqLwojZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCgovKiBT b21lIHBsYXRmb3JtcyByZWRlZmluZSB0aGlzLiAqLwovKiAjdW5kZWYgVElPQ1NJR1NFTkQg Ki8KCi8qIERlZmluZSB0byAxIGlmIHlvdXIgPHN5cy90aW1lLmg+IGRlY2xhcmVzIGBzdHJ1 Y3QgdG0nLiAqLwovKiAjdW5kZWYgVE1fSU5fU1lTX1RJTUUgKi8KCi8qIERlZmluZSB0byAx IGlmIHRoZSB0eXBlIG9mIHRoZSBzdF9hdGltIG1lbWJlciBvZiBhIHN0cnVjdCBzdGF0IGlz IHN0cnVjdAogICB0aW1lc3BlYy4gKi8KI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1Rf QVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQoKLyogRGVmaW5lIHRvIDEgZm9yIEVuY29yZSBV TUFYLiAqLwovKiAjdW5kZWYgVU1BWCAqLwoKLyogRGVmaW5lIHRvIDEgZm9yIEVuY29yZSBV TUFYIDQuMyB0aGF0IGhhcyA8aW5xX3N0YXR1cy9jcHVzdGF0cy5oPiBpbnN0ZWFkIG9mCiAg IDxzeXMvY3B1c3RhdHMuaD4uICovCi8qICN1bmRlZiBVTUFYNF8zICovCgovKiBEZWZpbmUg aWYgdGhlIHN5c3RlbSBoYXMgVW5peDk4IFBUWXMuICovCiNkZWZpbmUgVU5JWDk4X1BUWVMg MQoKLyogRGVmaW5lIHRvIDEgaWYgRklPTlJFQUQgaXMgdXNhYmxlLiAqLwojZGVmaW5lIFVT QUJMRV9GSU9OUkVBRCAxCgovKiBEZWZpbmUgdG8gMSBpZiBTSUdJTyBpcyB1c2FibGUuICov CiNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKCi8qIEhvdyB0byBnZXQgYSB1c2VyJ3MgZnVsbCBu YW1lLiAqLwojZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwoKLyogRGVmaW5l IHRvIG5vbnplcm8gaWYgeW91IHdhbnQgYWNjZXNzIGNvbnRyb2wgbGlzdCBzdXBwb3J0LiAq LwojZGVmaW5lIFVTRV9BQ0wgMQoKLyogRGVmaW5lIHRvIDEgaWYgdXNpbmcgY2Fpcm8uICov Ci8qICN1bmRlZiBVU0VfQ0FJUk8gKi8KCi8qIERlZmluZSB0byAxIGlmIHVzaW5nIGZpbGUg bm90aWZpY2F0aW9ucy4gKi8KI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQoKLyogRGVmaW5l IHRvIDEgaWYgdXNpbmcgR1RLLiAqLwojZGVmaW5lIFVTRV9HVEsgMQoKLyogRGVmaW5lIHRv IDEgaWYgdXNpbmcgdGhlIEx1Y2lkIFggdG9vbGtpdC4gKi8KLyogI3VuZGVmIFVTRV9MVUNJ RCAqLwoKLyogRGVmaW5lIHRvIHVzZSBtbWFwIHRvIGFsbG9jYXRlIGJ1ZmZlciB0ZXh0LiAq LwovKiAjdW5kZWYgVVNFX01NQVBfRk9SX0JVRkZFUlMgKi8KCi8qIERlZmluZSB0byAxIGlm IHVzaW5nIHRoZSBNb3RpZiBYIHRvb2xraXQuICovCi8qICN1bmRlZiBVU0VfTU9USUYgKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSB1c2UgbmN1cnNlcy4gKi8KLyogI3VuZGVmIFVTRV9O Q1VSU0VTICovCgovKiBFbmFibGUgZXh0ZW5zaW9ucyBvbiBBSVggMywgSW50ZXJpeC4gICov CiNpZm5kZWYgX0FMTF9TT1VSQ0UKIyBkZWZpbmUgX0FMTF9TT1VSQ0UgMQojZW5kaWYKLyog RW5hYmxlIGdlbmVyYWwgZXh0ZW5zaW9ucyBvbiBPUyBYLiAgKi8KI2lmbmRlZiBfREFSV0lO X0NfU09VUkNFCiMgZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQojZW5kaWYKLyogRW5hYmxl IEdOVSBleHRlbnNpb25zIG9uIHN5c3RlbXMgdGhhdCBoYXZlIHRoZW0uICAqLwojaWZuZGVm IF9HTlVfU09VUkNFCiMgZGVmaW5lIF9HTlVfU09VUkNFIDEKI2VuZGlmCi8qIFVzZSBHTlUg c3R5bGUgcHJpbnRmIGFuZCBzY2FuZi4gICovCiNpZm5kZWYgX19VU0VfTUlOR1dfQU5TSV9T VERJTwojIGRlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKI2VuZGlmCi8qIEVuYWJs ZSB0aHJlYWRpbmcgZXh0ZW5zaW9ucyBvbiBTb2xhcmlzLiAgKi8KI2lmbmRlZiBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MKIyBkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK I2VuZGlmCi8qIEVuYWJsZSBleHRlbnNpb25zIG9uIEhQIE5vblN0b3AuICAqLwojaWZuZGVm IF9UQU5ERU1fU09VUkNFCiMgZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKI2VuZGlmCi8qIEVu YWJsZSBYL09wZW4gZXh0ZW5zaW9ucyBpZiBuZWNlc3NhcnkuICBIUC1VWCAxMS4xMSBkZWZp bmVzCiAgIG1ic3RhdGVfdCBvbmx5IGlmIF9YT1BFTl9TT1VSQ0UgaXMgZGVmaW5lZCB0byA1 MDAsIHJlZ2FyZGxlc3Mgb2YKICAgd2hldGhlciBjb21waWxpbmcgd2l0aCAtQWUgb3IgLURf SFBVWF9TT1VSQ0U9MS4gICovCiNpZm5kZWYgX1hPUEVOX1NPVVJDRQovKiAjIHVuZGVmIF9Y T1BFTl9TT1VSQ0UgKi8KI2VuZGlmCi8qIEVuYWJsZSBnZW5lcmFsIGV4dGVuc2lvbnMgb24g U29sYXJpcy4gICovCiNpZm5kZWYgX19FWFRFTlNJT05TX18KIyBkZWZpbmUgX19FWFRFTlNJ T05TX18gMQojZW5kaWYKCgovKiBEZWZpbmUgdG8gMSBpZiB3ZSBzaG91bGQgdXNlIHRvb2xr aXQgc2Nyb2xsIGJhcnMuICovCiNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhDQiBsaWJyYXJ5IGFuZCBYMTEtWENC IGxpYnJhcnkgZm9yIG1peGVkCiAgIFgxMS9YQ0IgcHJvZ3JhbW1pbmcuICovCiNkZWZpbmUg VVNFX1hDQiAxCgovKiBEZWZpbmUgdG8gMSBpZiB3ZSBzaG91bGQgdXNlIFhJTSwgaWYgaXQg aXMgYXZhaWxhYmxlLiAqLwojZGVmaW5lIFVTRV9YSU0gMQoKLyogRGVmaW5lIHRvIDEgaWYg dXNpbmcgYW4gWCB0b29sa2l0LiAqLwovKiAjdW5kZWYgVVNFX1hfVE9PTEtJVCAqLwoKLyog RGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgY29tcGF0aWJsZSB3aXRoIFN5c3RlbSBJSUkuICov CiNkZWZpbmUgVVNHIC8qKi8KCi8qIERlZmluZSBpZiB0aGUgc3lzdGVtIGlzIGNvbXBhdGli bGUgd2l0aCBTeXN0ZW0gViBSZWxlYXNlIDQuICovCi8qICN1bmRlZiBVU0c1XzQgKi8KCi8q IERlZmluZSBmb3IgVVNHIHN5c3RlbXMgd2hlcmUgaXQgd29ya3MgdG8gb3BlbiBhIHB0eSdz IHR0eSBpbiB0aGUgcGFyZW50CiAgIHByb2Nlc3MsIHRoZW4gY2xvc2UgYW5kIHJlb3BlbiBp dCBpbiB0aGUgY2hpbGQuICovCi8qICN1bmRlZiBVU0dfU1VCVFRZX1dPUktTICovCgovKiBW ZXJzaW9uIG51bWJlciBvZiBwYWNrYWdlICovCiNkZWZpbmUgVkVSU0lPTiAiMjUuMC45MiIK Ci8qIERlZmluZSB0byBsLCBsbCwgdSwgdWwsIHVsbCwgZXRjLiwgYXMgc3VpdGFibGUgZm9y IGNvbnN0YW50cyBvZiB0eXBlCiAgICd3Y2hhcl90Jy4gKi8KLyogI3VuZGVmIFdDSEFSX1Rf U1VGRklYICovCgovKiBVc2UgbG9uZyBsb25nIGZvciBFTUFDU19JTlQgaWYgYXZhaWxhYmxl LiAqLwovKiAjdW5kZWYgV0lERV9FTUFDU19JTlQgKi8KCi8qIERlZmluZSBpZiBjb21waWxp bmcgZm9yIG5hdGl2ZSBNUyBXaW5kb3dzLiAqLwovKiAjdW5kZWYgV0lORE9XU05UICovCgov KiBEZWZpbmUgdG8gbCwgbGwsIHUsIHVsLCB1bGwsIGV0Yy4sIGFzIHN1aXRhYmxlIGZvciBj b25zdGFudHMgb2YgdHlwZQogICAnd2ludF90Jy4gKi8KLyogI3VuZGVmIFdJTlRfVF9TVUZG SVggKi8KCi8qIERlZmluZSBXT1JEU19CSUdFTkRJQU4gdG8gMSBpZiB5b3VyIHByb2Nlc3Nv ciBzdG9yZXMgd29yZHMgd2l0aCB0aGUgbW9zdAogICBzaWduaWZpY2FudCBieXRlIGZpcnN0 IChsaWtlIE1vdG9yb2xhIGFuZCBTUEFSQywgdW5saWtlIEludGVsKS4gKi8KI2lmIGRlZmlu ZWQgQUNfQVBQTEVfVU5JVkVSU0FMX0JVSUxECiMgaWYgZGVmaW5lZCBfX0JJR19FTkRJQU5f XwojICBkZWZpbmUgV09SRFNfQklHRU5ESUFOIDEKIyBlbmRpZgojZWxzZQojIGlmbmRlZiBX T1JEU19CSUdFTkRJQU4KLyogIyAgdW5kZWYgV09SRFNfQklHRU5ESUFOICovCiMgZW5kaWYK I2VuZGlmCgovKiBEZWZpbmUgdGhpcyB0byBjaGVjayBmb3IgbWFsbG9jIGJ1ZmZlciBvdmVy cnVuLiAqLwovKiAjdW5kZWYgWE1BTExPQ19PVkVSUlVOX0NIRUNLICovCgovKiBDb21wZW5z YXRlIGZvciBhIGJ1ZyBpbiBYb3MuaCBvbiBzb21lIHN5c3RlbXMsIHdoZXJlIGl0IHJlcXVp cmVzIHRpbWUuaC4gKi8KLyogI3VuZGVmIFhPU19ORUVEU19USU1FX0ggKi8KCi8qIERlZmlu ZSB0byB0aGUgdHlwZSBvZiB0aGUgNnRoIGFyZyBvZiBYUmVnaXN0ZXJJTUluc3RhbnRpYXRl Q2FsbGJhY2ssIGVpdGhlcgogICBYUG9pbnRlciBvciBYUG9pbnRlciouICovCiNkZWZpbmUg WFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKCi8qIERlZmlu ZSBpZiB0aGUgc3lzdGVtIGlzIEFJWC4gKi8KLyogI3VuZGVmIF9BSVggKi8KCi8qIEVuYWJs ZSBsYXJnZSBpbm9kZSBudW1iZXJzIG9uIE1hYyBPUyBYIDEwLjUuICovCiNkZWZpbmUgX0RB UldJTl9VU0VfNjRfQklUX0lOT0RFIDEKCi8qIE51bWJlciBvZiBiaXRzIGluIGEgZmlsZSBv ZmZzZXQsIG9uIGhvc3RzIHdoZXJlIHRoaXMgaXMgc2V0dGFibGUuICovCi8qICN1bmRlZiBf RklMRV9PRkZTRVRfQklUUyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgR251bGliIG92ZXJyaWRl cyAnc3RydWN0IHN0YXQnIG9uIFdpbmRvd3Mgc28gdGhhdCBzdHJ1Y3QKICAgc3RhdC5zdF9z aXplIGJlY29tZXMgNjQtYml0LiAqLwovKiAjdW5kZWYgX0dMX1dJTkRPV1NfNjRfQklUX1NU X1NJWkUgKi8KCi8qIERlZmluZSB0byAxIHRvIG1ha2UgZnNlZWtvIHZpc2libGUgb24gc29t ZSBob3N0cyAoZS5nLiBnbGliYyAyLjIpLiAqLwovKiAjdW5kZWYgX0xBUkdFRklMRV9TT1VS Q0UgKi8KCi8qIERlZmluZSBmb3IgbGFyZ2UgZmlsZXMsIG9uIEFJWC1zdHlsZSBob3N0cy4g Ki8KLyogI3VuZGVmIF9MQVJHRV9GSUxFUyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgb24gTUlO SVguICovCi8qICN1bmRlZiBfTUlOSVggKi8KCi8qIERlZmluZSBpZiBHTlVzdGVwIHVzZXMg T2JqQyBleGNlcHRpb25zLiAqLwovKiAjdW5kZWYgX05BVElWRV9PQkpDX0VYQ0VQVElPTlMg Ki8KCi8qIERlZmluZSB0byAxIHRvIG1ha2UgTmV0QlNEIGZlYXR1cmVzIGF2YWlsYWJsZS4g TUlOSVggMyBuZWVkcyB0aGlzLiAqLwovKiAjdW5kZWYgX05FVEJTRF9TT1VSQ0UgKi8KCi8q IFRoZSBfTm9yZXR1cm4ga2V5d29yZCBvZiBDMTEuICAqLwojaWYgISAoZGVmaW5lZCBfTm9y ZXR1cm4gXAogICAgICAgfHwgKGRlZmluZWQgX19TVERDX1ZFUlNJT05fXyAmJiAyMDExMTIg PD0gX19TVERDX1ZFUlNJT05fXykpCiMgaWYgKDMgPD0gX19HTlVDX18gfHwgKF9fR05VQ19f ID09IDIgJiYgOCA8PSBfX0dOVUNfTUlOT1JfXykgXAogICAgICB8fCAweDUxMTAgPD0gX19T VU5QUk9fQykKIyAgZGVmaW5lIF9Ob3JldHVybiBfX2F0dHJpYnV0ZV9fICgoX19ub3JldHVy bl9fKSkKIyBlbGlmIGRlZmluZWQgX01TQ19WRVIgJiYgMTIwMCA8PSBfTVNDX1ZFUgojICBk ZWZpbmUgX05vcmV0dXJuIF9fZGVjbHNwZWMgKG5vcmV0dXJuKQojIGVsc2UKIyAgZGVmaW5l IF9Ob3JldHVybgojIGVuZGlmCiNlbmRpZgoKCi8qIERlZmluZSB0byAyIGlmIHRoZSBzeXN0 ZW0gZG9lcyBub3QgcHJvdmlkZSBQT1NJWC4xIGZlYXR1cmVzIGV4Y2VwdCB3aXRoCiAgIHRo aXMgZGVmaW5lZC4gKi8KLyogI3VuZGVmIF9QT1NJWF8xX1NPVVJDRSAqLwoKLyogRGVmaW5l IHRvIDEgaWYgeW91IG5lZWQgdG8gaW4gb3JkZXIgZm9yICdzdGF0JyBhbmQgb3RoZXIgdGhp bmdzIHRvIHdvcmsuICovCi8qICN1bmRlZiBfUE9TSVhfU09VUkNFICovCgovKiBEZWZpbmUg dG8gMSBpZiB5b3VyIHN5c3RlbSByZXF1aXJlcyB0aGlzIGluIG11bHRpdGhyZWFkZWQgY29k ZS4gKi8KLyogI3VuZGVmIF9SRUVOVFJBTlQgKi8KCi8qIE5lZWRlZCBmb3Igc3lzdGVtX3By b2Nlc3NfYXR0cmlidXRlcyBvbiBTb2xhcmlzLiAqLwovKiAjdW5kZWYgX1NUUlVDVFVSRURf UFJPQyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91ciBzeXN0ZW0gcmVxdWlyZXMgdGhpcyBp biBtdWx0aXRocmVhZGVkIGNvZGUuICovCi8qICN1bmRlZiBfVEhSRUFEX1NBRkUgKi8KCi8q IERlZmluZSB0byBycGxfIGlmIHRoZSBnZXRvcHQgcmVwbGFjZW1lbnQgZnVuY3Rpb25zIGFu ZCB2YXJpYWJsZXMgc2hvdWxkIGJlCiAgIHVzZWQuICovCi8qICN1bmRlZiBfX0dFVE9QVF9Q UkVGSVggKi8KCi8qIERlZmluZSB0byAxIGlmIEMgZG9lcyBub3Qgc3VwcG9ydCB2YXJpYWJs ZS1sZW5ndGggYXJyYXlzLCBhbmQgaWYgdGhlCiAgIGNvbXBpbGVyIGRvZXMgbm90IGFscmVh ZHkgZGVmaW5lIHRoaXMuICovCi8qICN1bmRlZiBfX1NURENfTk9fVkxBX18gKi8KCi8qIFNv bWUgcGxhdGZvcm1zIHRoYXQgZG8gbm90IHVzZSBjb25maWd1cmUgZGVmaW5lIHRoaXMgdG8g aW5jbHVkZSBleHRyYQogICBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uLiAqLwovKiAjdW5k ZWYgY29uZmlnX29wc3lzZmlsZSAqLwoKLyogUGxlYXNlIHNlZSB0aGUgR251bGliIG1hbnVh bCBmb3IgaG93IHRvIHVzZSB0aGVzZSBtYWNyb3MuCgogICBTdXBwcmVzcyBleHRlcm4gaW5s aW5lIHdpdGggSFAtVVggY2MsIGFzIGl0IGFwcGVhcnMgdG8gYmUgYnJva2VuOyBzZWUKICAg PGh0dHA6Ly9saXN0cy5nbnUub3JnL2FyY2hpdmUvaHRtbC9idWctdGV4aW5mby8yMDEzLTAy L21zZzAwMDMwLmh0bWw+LgoKICAgU3VwcHJlc3MgZXh0ZXJuIGlubGluZSB3aXRoIFN1biBD IGluIHN0YW5kYXJkcy1jb25mb3JtYW5jZSBtb2RlLCBhcyBpdAogICBtaXNoYW5kbGVzIGlu bGluZSBmdW5jdGlvbnMgdGhhdCBjYWxsIGVhY2ggb3RoZXIuICBFLmcuLCBmb3IgJ2lubGlu ZSB2b2lkIGYKICAgKHZvaWQpIHsgfSBpbmxpbmUgdm9pZCBnICh2b2lkKSB7IGYgKCk7IH0n LCBjOTkgaW5jb3JyZWN0bHkgY29tcGxhaW5zCiAgICdyZWZlcmVuY2UgdG8gc3RhdGljIGlk ZW50aWZpZXIgImYiIGluIGV4dGVybiBpbmxpbmUgZnVuY3Rpb24nLgogICBUaGlzIGJ1ZyB3 YXMgb2JzZXJ2ZWQgd2l0aCBTdW4gQyA1LjEyIFN1bk9TX2kzODYgMjAxMS8xMS8xNi4KCiAg IFN1cHByZXNzIGV4dGVybiBpbmxpbmUgKHdpdGggb3Igd2l0aG91dCBfX2F0dHJpYnV0ZV9f ICgoX19nbnVfaW5saW5lX18pKSkKICAgb24gY29uZmlndXJhdGlvbnMgdGhhdCBtaXN0YWtl bmx5IHVzZSAnc3RhdGljIGlubGluZScgdG8gaW1wbGVtZW50CiAgIGZ1bmN0aW9ucyBvciBt YWNyb3MgaW4gc3RhbmRhcmQgQyBoZWFkZXJzIGxpa2UgPGN0eXBlLmg+LiAgRm9yIGV4YW1w bGUsCiAgIGlmIGlzZGlnaXQgaXMgbWlzdGFrZW5seSBpbXBsZW1lbnRlZCB2aWEgYSBzdGF0 aWMgaW5saW5lIGZ1bmN0aW9uLAogICBhIHByb2dyYW0gY29udGFpbmluZyBhbiBleHRlcm4g aW5saW5lIGZ1bmN0aW9uIHRoYXQgY2FsbHMgaXNkaWdpdAogICBtYXkgbm90IHdvcmsgc2lu Y2UgdGhlIEMgc3RhbmRhcmQgcHJvaGliaXRzIGV4dGVybiBpbmxpbmUgZnVuY3Rpb25zCiAg IGZyb20gY2FsbGluZyBzdGF0aWMgZnVuY3Rpb25zLiAgVGhpcyBidWcgaXMga25vd24gdG8g b2NjdXIgb246CgogICAgIE9TIFggMTAuOCBhbmQgZWFybGllcjsgc2VlOgogICAgIGh0dHA6 Ly9saXN0cy5nbnUub3JnL2FyY2hpdmUvaHRtbC9idWctZ251bGliLzIwMTItMTIvbXNnMDAw MjMuaHRtbAoKICAgICBEcmFnb25GbHk7IHNlZQogICAgIGh0dHA6Ly9tdXNjbGVzLmRyYWdv bmZseWJzZC5vcmcvYnVsay9ibGVlZGluZy1lZGdlLXBvdGVudGlhbC9sYXRlc3QtcGVyLXBr Zy9haC10dHktMC4zLjEyLmxvZwoKICAgICBGcmVlQlNEOyBzZWU6CiAgICAgaHR0cDovL2xp c3RzLmdudS5vcmcvYXJjaGl2ZS9odG1sL2J1Zy1nbnVsaWIvMjAxNC0wNy9tc2cwMDEwNC5o dG1sCgogICBPUyBYIDEwLjkgaGFzIGEgbWFjcm8gX19oZWFkZXJfaW5saW5lIGluZGljYXRp bmcgdGhlIGJ1ZyBpcyBmaXhlZCBmb3IgQyBhbmQKICAgZm9yIGNsYW5nIGJ1dCByZW1haW5z IGZvciBnKys7IHNlZSA8aHR0cDovL3RyYWMubWFjcG9ydHMub3JnL3RpY2tldC80MTAzMz4u CiAgIEFzc3VtZSBEcmFnb25GbHkgYW5kIEZyZWVCU0Qgd2lsbCBiZSBzaW1pbGFyLiAgKi8K I2lmICgoKGRlZmluZWQgX19BUFBMRV9fICYmIGRlZmluZWQgX19NQUNIX18pIFwKICAgICAg fHwgZGVmaW5lZCBfX0RyYWdvbkZseV9fIHx8IGRlZmluZWQgX19GcmVlQlNEX18pIFwKICAg ICAmJiAoZGVmaW5lZCBfX2hlYWRlcl9pbmxpbmUgXAogICAgICAgICA/IChkZWZpbmVkIF9f Y3BsdXNwbHVzICYmIGRlZmluZWQgX19HTlVDX1NURENfSU5MSU5FX18gXAogICAgICAgICAg ICAmJiAhIGRlZmluZWQgX19jbGFuZ19fKSBcCiAgICAgICAgIDogKCghIGRlZmluZWQgX0RP TlRfVVNFX0NUWVBFX0lOTElORV8gXAogICAgICAgICAgICAgJiYgKGRlZmluZWQgX19HTlVD X18gfHwgZGVmaW5lZCBfX2NwbHVzcGx1cykpIFwKICAgICAgICAgICAgfHwgKGRlZmluZWQg X0ZPUlRJRllfU09VUkNFICYmIDAgPCBfRk9SVElGWV9TT1VSQ0UgXAogICAgICAgICAgICAg ICAgJiYgZGVmaW5lZCBfX0dOVUNfXyAmJiAhIGRlZmluZWQgX19jcGx1c3BsdXMpKSkpCiMg ZGVmaW5lIF9HTF9FWFRFUk5fSU5MSU5FX1NUREhFQURFUl9CVUcKI2VuZGlmCiNpZiAoKF9f R05VQ19fIFwKICAgICAgPyBkZWZpbmVkIF9fR05VQ19TVERDX0lOTElORV9fICYmIF9fR05V Q19TVERDX0lOTElORV9fIFwKICAgICAgOiAoMTk5OTAxTCA8PSBfX1NURENfVkVSU0lPTl9f IFwKICAgICAgICAgJiYgIWRlZmluZWQgX19IUF9jYyBcCiAgICAgICAgICYmICEoZGVmaW5l ZCBfX1NVTlBST19DICYmIF9fU1REQ19fKSkpIFwKICAgICAmJiAhZGVmaW5lZCBfR0xfRVhU RVJOX0lOTElORV9TVERIRUFERVJfQlVHKQojIGRlZmluZSBfR0xfSU5MSU5FIGlubGluZQoj IGRlZmluZSBfR0xfRVhURVJOX0lOTElORSBleHRlcm4gaW5saW5lCiMgZGVmaW5lIF9HTF9F WFRFUk5fSU5MSU5FX0lOX1VTRQojZWxpZiAoMiA8IF9fR05VQ19fICsgKDcgPD0gX19HTlVD X01JTk9SX18pICYmICFkZWZpbmVkIF9fU1RSSUNUX0FOU0lfXyBcCiAgICAgICAmJiAhZGVm aW5lZCBfR0xfRVhURVJOX0lOTElORV9TVERIRUFERVJfQlVHKQojIGlmIGRlZmluZWQgX19H TlVDX0dOVV9JTkxJTkVfXyAmJiBfX0dOVUNfR05VX0lOTElORV9fCiAgIC8qIF9fZ251X2lu bGluZV9fIHN1cHByZXNzZXMgYSBHQ0MgNC4yIGRpYWdub3N0aWMuICAqLwojICBkZWZpbmUg X0dMX0lOTElORSBleHRlcm4gaW5saW5lIF9fYXR0cmlidXRlX18gKChfX2dudV9pbmxpbmVf XykpCiMgZWxzZQojICBkZWZpbmUgX0dMX0lOTElORSBleHRlcm4gaW5saW5lCiMgZW5kaWYK IyBkZWZpbmUgX0dMX0VYVEVSTl9JTkxJTkUgZXh0ZXJuCiMgZGVmaW5lIF9HTF9FWFRFUk5f SU5MSU5FX0lOX1VTRQojZWxzZQojIGRlZmluZSBfR0xfSU5MSU5FIHN0YXRpYyBfR0xfVU5V U0VECiMgZGVmaW5lIF9HTF9FWFRFUk5fSU5MSU5FIHN0YXRpYyBfR0xfVU5VU0VECiNlbmRp ZgoKLyogSW4gR0NDIDQuNiAoaW5jbHVzaXZlKSB0byA1LjEgKGV4Y2x1c2l2ZSksCiAgIHN1 cHByZXNzIGJvZ3VzICJubyBwcmV2aW91cyBwcm90b3R5cGUgZm9yICdGT08nIgogICBhbmQg Im5vIHByZXZpb3VzIGRlY2xhcmF0aW9uIGZvciAnRk9PJyIgZGlhZ25vc3RpY3MsCiAgIHdo ZW4gRk9PIGlzIGFuIGlubGluZSBmdW5jdGlvbiBpbiB0aGUgaGVhZGVyOyBzZWUKICAgPGh0 dHBzOi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTU0MTEzPiBhbmQK ICAgPGh0dHBzOi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTYzODc3 Pi4gICovCiNpZiBfX0dOVUNfXyA9PSA0ICYmIDYgPD0gX19HTlVDX01JTk9SX18KIyBpZiBk ZWZpbmVkIF9fR05VQ19TVERDX0lOTElORV9fICYmIF9fR05VQ19TVERDX0lOTElORV9fCiMg IGRlZmluZSBfR0xfSU5MSU5FX0hFQURFUl9DT05TVF9QUkFHTUEKIyBlbHNlCiMgIGRlZmlu ZSBfR0xfSU5MSU5FX0hFQURFUl9DT05TVF9QUkFHTUEgXAogICAgIF9QcmFnbWEgKCJHQ0Mg ZGlhZ25vc3RpYyBpZ25vcmVkIFwiLVdzdWdnZXN0LWF0dHJpYnV0ZT1jb25zdFwiIikKIyBl bmRpZgojIGRlZmluZSBfR0xfSU5MSU5FX0hFQURFUl9CRUdJTiBcCiAgICBfUHJhZ21hICgi R0NDIGRpYWdub3N0aWMgcHVzaCIpIFwKICAgIF9QcmFnbWEgKCJHQ0MgZGlhZ25vc3RpYyBp Z25vcmVkIFwiLVdtaXNzaW5nLXByb3RvdHlwZXNcIiIpIFwKICAgIF9QcmFnbWEgKCJHQ0Mg ZGlhZ25vc3RpYyBpZ25vcmVkIFwiLVdtaXNzaW5nLWRlY2xhcmF0aW9uc1wiIikgXAogICAg X0dMX0lOTElORV9IRUFERVJfQ09OU1RfUFJBR01BCiMgZGVmaW5lIF9HTF9JTkxJTkVfSEVB REVSX0VORCBcCiAgICBfUHJhZ21hICgiR0NDIGRpYWdub3N0aWMgcG9wIikKI2Vsc2UKIyBk ZWZpbmUgX0dMX0lOTElORV9IRUFERVJfQkVHSU4KIyBkZWZpbmUgX0dMX0lOTElORV9IRUFE RVJfRU5ECiNlbmRpZgoKLyogV29yayBhcm91bmQgYSBidWcgaW4gQXBwbGUgR0NDIDQuMC4x IGJ1aWxkIDU0NjU6IEluIEM5OSBtb2RlLCBpdCBzdXBwb3J0cwogICB0aGUgSVNPIEMgOTkg c2VtYW50aWNzIG9mICdleHRlcm4gaW5saW5lJyAodW5saWtlIHRoZSBHTlUgQyBzZW1hbnRp Y3Mgb2YKICAgZWFybGllciB2ZXJzaW9ucyksIGJ1dCBkb2VzIG5vdCBkaXNwbGF5IGl0IGJ5 IHNldHRpbmcgX19HTlVDX1NURENfSU5MSU5FX18uCiAgIF9fQVBQTEVfXyAmJiBfX01BQ0hf XyB0ZXN0IGZvciBNYWMgT1MgWC4KICAgX19BUFBMRV9DQ19fIHRlc3RzIGZvciB0aGUgQXBw bGUgY29tcGlsZXIgYW5kIGl0cyB2ZXJzaW9uLgogICBfX1NURENfVkVSU0lPTl9fIHRlc3Rz IGZvciB0aGUgQzk5IG1vZGUuICAqLwojaWYgZGVmaW5lZCBfX0FQUExFX18gJiYgZGVmaW5l ZCBfX01BQ0hfXyAmJiBfX0FQUExFX0NDX18gPj0gNTQ2NSAmJiAhZGVmaW5lZCBfX2NwbHVz cGx1cyAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwgJiYgIWRlZmluZWQgX19HTlVD X1NURENfSU5MSU5FX18KIyBkZWZpbmUgX19HTlVDX1NURENfSU5MSU5FX18gMQojZW5kaWYK Ci8qIERlZmluZSB0byAxIGlmIHRoZSBjb21waWxlciBpcyBjaGVja2luZyBmb3IgbGludC4g Ki8KI2RlZmluZSBsaW50IDEKCi8qIERlZmluZSB0byBhIHR5cGUgaWYgPHdjaGFyLmg+IGRv ZXMgbm90IGRlZmluZS4gKi8KLyogI3VuZGVmIG1ic3RhdGVfdCAqLwoKLyogRGVmaW5lIHRv IHRoZSByZWFsIG5hbWUgb2YgdGhlIG1rdGltZV9pbnRlcm5hbCBmdW5jdGlvbi4gKi8KLyog I3VuZGVmIG1rdGltZV9pbnRlcm5hbCAqLwoKLyogRGVmaW5lIHRvIGBpbnQnIGlmIDxzeXMv dHlwZXMuaD4gZG9lcyBub3QgZGVmaW5lLiAqLwovKiAjdW5kZWYgbW9kZV90ICovCgovKiBE ZWZpbmUgdG8gdGhlIG5hbWUgb2YgdGhlIHN0cmZ0aW1lIHJlcGxhY2VtZW50IGZ1bmN0aW9u LiAqLwojZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJmdGltZQoKLyogRGVmaW5lIHRvIHRoZSB0 eXBlIG9mIHN0X25saW5rIGluIHN0cnVjdCBzdGF0LCBvciBhIHN1cGVydHlwZS4gKi8KLyog I3VuZGVmIG5saW5rX3QgKi8KCi8qIERlZmluZSB0byBgaW50JyBpZiA8c3lzL3R5cGVzLmg+ IGRvZXMgbm90IGRlZmluZS4gKi8KLyogI3VuZGVmIHBpZF90ICovCgovKiBEZWZpbmUgdG8g dGhlIGVxdWl2YWxlbnQgb2YgdGhlIEM5OSAncmVzdHJpY3QnIGtleXdvcmQsIG9yIHRvCiAg IG5vdGhpbmcgaWYgdGhpcyBpcyBub3Qgc3VwcG9ydGVkLiAgRG8gbm90IGRlZmluZSBpZiBy ZXN0cmljdCBpcwogICBzdXBwb3J0ZWQgZGlyZWN0bHkuICAqLwojZGVmaW5lIHJlc3RyaWN0 IF9fcmVzdHJpY3QKLyogV29yayBhcm91bmQgYSBidWcgaW4gU3VuIEMrKzogaXQgZG9lcyBu b3Qgc3VwcG9ydCBfUmVzdHJpY3Qgb3IKICAgX19yZXN0cmljdF9fLCBldmVuIHRob3VnaCB0 aGUgY29ycmVzcG9uZGluZyBTdW4gQyBjb21waWxlciBlbmRzIHVwIHdpdGgKICAgIiNkZWZp bmUgcmVzdHJpY3QgX1Jlc3RyaWN0IiBvciAiI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0 X18iIGluIHRoZQogICBwcmV2aW91cyBsaW5lLiAgUGVyaGFwcyBzb21lIGZ1dHVyZSB2ZXJz aW9uIG9mIFN1biBDKysgd2lsbCB3b3JrIHdpdGgKICAgcmVzdHJpY3Q7IGlmIHNvLCBob3Bl ZnVsbHkgaXQgZGVmaW5lcyBfX1JFU1RSSUNUIGxpa2UgU3VuIEMgZG9lcy4gICovCiNpZiBk ZWZpbmVkIF9fU1VOUFJPX0NDICYmICFkZWZpbmVkIF9fUkVTVFJJQ1QKIyBkZWZpbmUgX1Jl c3RyaWN0CiMgZGVmaW5lIF9fcmVzdHJpY3RfXwojZW5kaWYKCi8qIHR5cGUgdG8gdXNlIGlu IHBsYWNlIG9mIHNvY2tsZW5fdCBpZiBub3QgZGVmaW5lZCAqLwovKiAjdW5kZWYgc29ja2xl bl90ICovCgovKiBEZWZpbmUgYXMgYSBzaWduZWQgdHlwZSBvZiB0aGUgc2FtZSBzaXplIGFz IHNpemVfdC4gKi8KLyogI3VuZGVmIHNzaXplX3QgKi8KCi8qIERlZmluZSB0byBlbmFibGUg YXN5bmNocm9ub3VzIHN1YnByb2Nlc3Nlcy4gKi8KI2RlZmluZSBzdWJwcm9jZXNzZXMgMQoK LyogRGVmaW5lIGFzIGEgbWFya2VyIHRoYXQgY2FuIGJlIGF0dGFjaGVkIHRvIGRlY2xhcmF0 aW9ucyB0aGF0IG1pZ2h0IG5vdAogICAgYmUgdXNlZC4gIFRoaXMgaGVscHMgdG8gcmVkdWNl IHdhcm5pbmdzLCBzdWNoIGFzIGZyb20KICAgIEdDQyAtV3VudXNlZC1wYXJhbWV0ZXIuICAq LwojaWYgX19HTlVDX18gPj0gMyB8fCAoX19HTlVDX18gPT0gMiAmJiBfX0dOVUNfTUlOT1Jf XyA+PSA3KQojIGRlZmluZSBfR0xfVU5VU0VEIF9fYXR0cmlidXRlX18gKChfX3VudXNlZF9f KSkKI2Vsc2UKIyBkZWZpbmUgX0dMX1VOVVNFRAojZW5kaWYKLyogVGhlIG5hbWUgX1VOVVNF RF9QQVJBTUVURVJfIGlzIGFuIGVhcmxpZXIgc3BlbGxpbmcsIGFsdGhvdWdoIHRoZSBuYW1l CiAgIGlzIGEgbWlzbm9tZXIgb3V0c2lkZSBvZiBwYXJhbWV0ZXIgbGlzdHMuICAqLwojZGVm aW5lIF9VTlVTRURfUEFSQU1FVEVSXyBfR0xfVU5VU0VECgovKiBnY2Mgc3VwcG9ydHMgdGhl ICJ1bnVzZWQiIGF0dHJpYnV0ZSBvbiBwb3NzaWJseSB1bnVzZWQgbGFiZWxzLCBhbmQKICAg ZysrIGhhcyBzaW5jZSB2ZXJzaW9uIDQuNS4gIE5vdGUgdG8gc3VwcG9ydCBDKysgYXMgd2Vs bCBhcyBDLAogICBfR0xfVU5VU0VEX0xBQkVMIHNob3VsZCBiZSB1c2VkIHdpdGggYSB0cmFp bGluZyA7ICAqLwojaWYgIWRlZmluZWQgX19jcGx1c3BsdXMgfHwgX19HTlVDX18gPiA0IFwK ICAgIHx8IChfX0dOVUNfXyA9PSA0ICYmIF9fR05VQ19NSU5PUl9fID49IDUpCiMgZGVmaW5l IF9HTF9VTlVTRURfTEFCRUwgX0dMX1VOVVNFRAojZWxzZQojIGRlZmluZSBfR0xfVU5VU0VE X0xBQkVMCiNlbmRpZgoKLyogVGhlIF9fcHVyZV9fIGF0dHJpYnV0ZSB3YXMgYWRkZWQgaW4g Z2NjIDIuOTYuICAqLwojaWYgX19HTlVDX18gPiAyIHx8IChfX0dOVUNfXyA9PSAyICYmIF9f R05VQ19NSU5PUl9fID49IDk2KQojIGRlZmluZSBfR0xfQVRUUklCVVRFX1BVUkUgX19hdHRy aWJ1dGVfXyAoKF9fcHVyZV9fKSkKI2Vsc2UKIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9QVVJF IC8qIGVtcHR5ICovCiNlbmRpZgoKLyogVGhlIF9fY29uc3RfXyBhdHRyaWJ1dGUgd2FzIGFk ZGVkIGluIGdjYyAyLjk1LiAgKi8KI2lmIF9fR05VQ19fID4gMiB8fCAoX19HTlVDX18gPT0g MiAmJiBfX0dOVUNfTUlOT1JfXyA+PSA5NSkKIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9DT05T VCBfX2F0dHJpYnV0ZV9fICgoX19jb25zdF9fKSkKI2Vsc2UKIyBkZWZpbmUgX0dMX0FUVFJJ QlVURV9DT05TVCAvKiBlbXB0eSAqLwojZW5kaWYKCgovKiBEZWZpbmUgYXMgYGZvcmsnIGlm IGB2Zm9yaycgZG9lcyBub3Qgd29yay4gKi8KLyogI3VuZGVmIHZmb3JrICovCgojaW5jbHVk ZSA8Y29uZl9wb3N0Lmg+CgojZW5kaWYgLyogRU1BQ1NfQ09ORklHX0ggKi8KCi8qCkxvY2Fs IFZhcmlhYmxlczoKbW9kZTogYwpFbmQ6CiovCgo= --------------030501020309050709010409-- From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 02 13:34:12 2016 Received: (at control) by debbugs.gnu.org; 2 Mar 2016 18:34:12 +0000 Received: from localhost ([127.0.0.1]:58087 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abBbA-00049V-B5 for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:34:12 -0500 Received: from eggs.gnu.org ([208.118.235.92]:40467) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abBb9-00049H-B1 for control@debbugs.gnu.org; Wed, 02 Mar 2016 13:34:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1abBb3-000258-P0 for control@debbugs.gnu.org; Wed, 02 Mar 2016 13:34:06 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:36854) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBb3-000254-Li for control@debbugs.gnu.org; Wed, 02 Mar 2016 13:34:05 -0500 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1abBb3-0008OK-8i for control@debbugs.gnu.org; Wed, 02 Mar 2016 13:34:05 -0500 Subject: control message for bug 19759 To: X-Mailer: mail (GNU Mailutils 2.99.98) Message-Id: From: Glenn Morris Date: Wed, 02 Mar 2016 13:34:05 -0500 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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: -5.0 (-----) block 19759 by 22884 From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 12:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145700920324626 (code B ref 22884); Thu, 03 Mar 2016 12:47:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 12:46:43 +0000 Received: from localhost ([127.0.0.1]:58694 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abSeR-0006P8-B3 for submit@debbugs.gnu.org; Thu, 03 Mar 2016 07:46:43 -0500 Received: from mail.muc.de ([193.149.48.3]:33543) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abSeP-0006Ox-70 for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 07:46:41 -0500 Received: (qmail 57002 invoked by uid 3782); 3 Mar 2016 12:46:39 -0000 Received: from acm.muc.de (p579E89EE.dip0.t-ipconnect.de [87.158.137.238]) by colin.muc.de (tmda-ofmipd) with ESMTP; Thu, 03 Mar 2016 13:46:38 +0100 Received: (qmail 2946 invoked by uid 1000); 3 Mar 2016 12:49:10 -0000 Date: Thu, 3 Mar 2016 12:49:10 +0000 Message-ID: <20160303124910.GA2852@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56D72C35.4090708@cs.ucla.edu> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. On Wed, Mar 02, 2016 at 10:08:53AM -0800, Paul Eggert wrote: > I've been noticing this problem for a bit and figured it'd get fixed but > it hasn't so here is a bug report. > With the Emacs 25 pretests, it takes waaaaayyy too long to edit some C > code. To reproduce the problem use the attached file (taken from the > Emacs source code) and run: > emacs -Q config.h > M-x goto-line RET 1661 RET / / > On my six-year-old desktop the second '/' takes about 10 seconds to > echo. This sort of thing makes Emacs effectively unusable for editing > config.h. The problem is in config.h. At line 14, inside a comment, appears the following string: "(at your option) any later version." . The open paren is at column zero, so the fancy code in syntax.c then fails to recognise the comment as a comment. CC Mode is then effectively communicating across the continent between L1661 and L14 by carrier pigeon in the belief that there is non-syntactic-ws code at L14. (Syntactic whitespace includes comments and preprocessor constructs.) Inserting a backslash at the beginning of L14 solves the problem, as does setting open-paren-in-column-0-is-defun-start to nil. The next problem is that there are around 324 occurrences of "(" at column zero in the src directory, and quite a few in lib and lib-src. Most of them are in comments, some of them are parameter lists, and some of them (e.g. in lisp.h) are wierd constructs of some sort. These contravene GNU coding standards and really need sorting out. > In GNU Emacs 25.0.92.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.18.7) > of 2016-03-02 built on penguin.cs.ucla.edu > Repository revision: 100346aa226e4eacc56f390c099bb9aab585b5f4 > Windowing system distributor 'Fedora Project', version 11.0.11800000 > Configured using: > 'configure --enable-gcc-warnings' -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 17:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145702771222221 (code B ref 22884); Thu, 03 Mar 2016 17:56:02 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 17:55:12 +0000 Received: from localhost ([127.0.0.1]:60427 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abXSw-0005mI-8G for submit@debbugs.gnu.org; Thu, 03 Mar 2016 12:55:12 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:52905) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abXSs-0005lg-0h for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 12:55:08 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 139E6160724; Thu, 3 Mar 2016 09:55:00 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id BAEkPi5Oxxw4; Thu, 3 Mar 2016 09:54:54 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id B1EC9160FF5; Thu, 3 Mar 2016 09:54:54 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ibQZLNo0VRGa; Thu, 3 Mar 2016 09:54:54 -0800 (PST) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 86A2B160724; Thu, 3 Mar 2016 09:54:54 -0800 (PST) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56D87A6E.8090202@cs.ucla.edu> Date: Thu, 3 Mar 2016 09:54:54 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160303124910.GA2852@acm.fritz.box> Content-Type: multipart/mixed; boundary="------------070905070406070408070902" X-Spam-Score: -0.0 (/) 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.0 (/) This is a multi-part message in MIME format. --------------070905070406070408070902 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 03/03/2016 04:49 AM, Alan Mackenzie wrote: > Inserting a backslash at the beginning of L14 solves the problem, as > does setting open-paren-in-column-0-is-defun-start to nil. I presume the latter is not really on the table. We can't put a backslash there, as it's license text and shouldn't be fiddled with in that way. We could fold it differently (as in the attached proposed patch, which does this only for config.h and friends). > The next problem is that there are around 324 occurrences of "(" at > column zero in the src directory, and quite a few in lib and lib-src. > Most of them are in comments, some of them are parameter lists, and > some of them (e.g. in lisp.h) are wierd constructs of some sort. These > contravene GNU coding standards and really need sorting out. The lisp.h constructs are weird, but they don't violate the GNU coding standards as the parens at the start of a line do indeed mark the start of a function definition. Do these parens break cc-mode somehow? If so, what's the breakage? and how would you suggest reformatting lisp.h (and/or fixing cc-mode)? The attached proposed patch fixes all the problems I found, except (1) it leaves license wording alone for the most part (config.h excepted, since the performance disaster is there), and (2) it leaves the weird lisp.h constructs alone as per the above paragraph. Is this the sort of thing you had in mind (except I guess we need to fix (1) too?). --------------070905070406070408070902 Content-Type: text/x-patch; name="emacs.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="emacs.diff" diff --git a/configure.ac b/configure.ac index d42b42e..370cb54 100644 --- a/configure.ac +++ b/configure.ac @@ -5194,8 +5194,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/etags.c b/lib-src/etags.c index 182cb4c..a15c950 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -680,8 +680,8 @@ static const char *Objc_suffixes [] = static const char Objc_help [] = "In Objective C code, tags include Objective C definitions for classes,\n\ class categories, methods and protocols. Tags for variables and\n\ -functions in classes are named 'CLASS::VARIABLE' and 'CLASS::FUNCTION'.\n\ -(Use --help --lang=c --lang=objc --lang=java for full help.)"; +functions in classes are named 'CLASS::VARIABLE' and 'CLASS::FUNCTION'.\ +\n(Use --help --lang=c --lang=objc --lang=java for full help.)"; static const char *Pascal_suffixes [] = { "p", "pas", NULL }; diff --git a/lib-src/hexl.c b/lib-src/hexl.c index 833ea50..d727726 100644 --- a/lib-src/hexl.c +++ b/lib-src/hexl.c @@ -1,8 +1,7 @@ /* Convert files for Emacs Hexl mode. Copyright (C) 1989, 2001-2016 Free Software Foundation, Inc. -Author: Keith Gabryelski -(according to authors.el) +Author: Keith Gabryelski (according to authors.el) This file is not considered part of GNU Emacs. diff --git a/nt/preprep.c b/nt/preprep.c index 303e2ef..a74c31c 100644 --- a/nt/preprep.c +++ b/nt/preprep.c @@ -34,11 +34,10 @@ along with GNU Emacs. If not, see . /* Include relevant definitions from IMAGEHLP.H, which can be found in \\win32sdk\mstools\samples\image\include\imagehlp.h. */ -PIMAGE_NT_HEADERS -(__stdcall * pfnCheckSumMappedFile) (LPVOID BaseAddress, - DWORD_PTR FileLength, - PDWORD_PTR HeaderSum, - PDWORD_PTR CheckSum); +PIMAGE_NT_HEADERS (__stdcall * pfnCheckSumMappedFile) (LPVOID BaseAddress, + DWORD_PTR FileLength, + PDWORD_PTR HeaderSum, + PDWORD_PTR CheckSum); #undef min #undef max diff --git a/src/buffer.c b/src/buffer.c index 653e3fe..dba5b3d 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -1044,7 +1044,7 @@ DEFUN ("generate-new-buffer-name", Fgenerate_new_buffer_name, doc: /* Return a string that is the name of no existing buffer based on NAME. If there is no live buffer named NAME, then return NAME. Otherwise modify name by appending `', incrementing NUMBER -(starting at 2) until an unused name is found, and then return that name. +\(starting at 2) until an unused name is found, and then return that name. Optional second argument IGNORE specifies a name that is okay to use (if it is in the sequence to be tried) even if a buffer with that name exists. @@ -3793,10 +3793,10 @@ If omitted, BUFFER defaults to the current buffer. BEG and END may be integers or markers. The fourth arg FRONT-ADVANCE, if non-nil, makes the marker for the front of the overlay advance when text is inserted there -(which means the text *is not* included in the overlay). +\(which means the text *is not* included in the overlay). The fifth arg REAR-ADVANCE, if non-nil, makes the marker for the rear of the overlay advance when text is inserted there -(which means the text *is* included in the overlay). */) +\(which means the text *is* included in the overlay). */) (Lisp_Object beg, Lisp_Object end, Lisp_Object buffer, Lisp_Object front_advance, Lisp_Object rear_advance) { @@ -6028,7 +6028,7 @@ between 0.0 and 1.0, inclusive. */); doc: /* List of functions to call before each text change. Two arguments are passed to each function: the positions of the beginning and end of the range of old text to be changed. -(For an insertion, the beginning and end are at the same place.) +\(For an insertion, the beginning and end are at the same place.) No information is given about the length of the text after the change. Buffer changes made while executing the `before-change-functions' @@ -6045,7 +6045,7 @@ from happening repeatedly and making Emacs nonfunctional. */); Three arguments are passed to each function: the positions of the beginning and end of the range of changed text, and the length in chars of the pre-change text replaced by that range. -(For an insertion, the pre-change length is zero; +\(For an insertion, the pre-change length is zero; for a deletion, that length is the number of chars deleted, and the post-change beginning and end are at the same place.) @@ -6090,7 +6090,7 @@ was modified between BEG and END. PROPERTY is the property name, and VALUE is the old value. An entry (apply FUN-NAME . ARGS) means undo the change with -(apply FUN-NAME ARGS). +\(apply FUN-NAME ARGS). An entry (apply DELTA BEG END FUN-NAME . ARGS) supports selective undo in the active region. BEG and END is the range affected by this entry @@ -6250,7 +6250,7 @@ to the default frame line height. A value of nil means add no extra space. */) doc: /* Non-nil means show a cursor in non-selected windows. If nil, only shows a cursor in the selected window. If t, displays a cursor related to the usual cursor type -(a solid box becomes hollow, a bar becomes a narrower bar). +\(a solid box becomes hollow, a bar becomes a narrower bar). You can also specify the cursor type as in the `cursor-type' variable. Use Custom to set this variable and update the display. */); diff --git a/src/buffer.h b/src/buffer.h index 5783bfb..daeff24 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -352,9 +352,9 @@ extern void enlarge_buffer_text (struct buffer *, ptrdiff_t); /* Convert PTR, the address of a byte in the buffer, into a byte position. */ #define PTR_BYTE_POS(ptr) \ -((ptr) - (current_buffer)->text->beg \ - - (ptr - (current_buffer)->text->beg <= GPT_BYTE - BEG_BYTE ? 0 : GAP_SIZE) \ - + BEG_BYTE) + ((ptr) - (current_buffer)->text->beg \ + - (ptr - (current_buffer)->text->beg <= GPT_BYTE - BEG_BYTE ? 0 : GAP_SIZE) \ + + BEG_BYTE) /* Return character at byte position POS. See the caveat WARNING for FETCH_MULTIBYTE_CHAR below. */ @@ -386,24 +386,24 @@ extern void enlarge_buffer_text (struct buffer *, ptrdiff_t); Note that both arguments can be computed more than once. */ #define BUF_BYTE_ADDRESS(buf, pos) \ -((buf)->text->beg + (pos) - BEG_BYTE \ - + ((pos) >= (buf)->text->gpt_byte ? (buf)->text->gap_size : 0)) + ((buf)->text->beg + (pos) - BEG_BYTE \ + + ((pos) >= (buf)->text->gpt_byte ? (buf)->text->gap_size : 0)) /* Return the address of character at char position POS in buffer BUF. Note that both arguments can be computed more than once. */ #define BUF_CHAR_ADDRESS(buf, pos) \ -((buf)->text->beg + buf_charpos_to_bytepos ((buf), (pos)) - BEG_BYTE \ - + ((pos) >= (buf)->text->gpt ? (buf)->text->gap_size : 0)) + ((buf)->text->beg + buf_charpos_to_bytepos ((buf), (pos)) - BEG_BYTE \ + + ((pos) >= (buf)->text->gpt ? (buf)->text->gap_size : 0)) /* Convert PTR, the address of a char in buffer BUF, into a character position. */ #define BUF_PTR_BYTE_POS(buf, ptr) \ -((ptr) - (buf)->text->beg \ - - (ptr - (buf)->text->beg <= BUF_GPT_BYTE (buf) - BEG_BYTE \ - ? 0 : BUF_GAP_SIZE ((buf))) \ - + BEG_BYTE) + ((ptr) - (buf)->text->beg \ + - (ptr - (buf)->text->beg <= BUF_GPT_BYTE (buf) - BEG_BYTE \ + ? 0 : BUF_GAP_SIZE ((buf))) \ + + BEG_BYTE) /* Return the character at byte position POS in buffer BUF. */ diff --git a/src/bytecode.c b/src/bytecode.c index 0befe65..b111ac1 100644 --- a/src/bytecode.c +++ b/src/bytecode.c @@ -1996,9 +1996,9 @@ syms_of_bytecode (void) DEFVAR_LISP ("byte-code-meter", Vbyte_code_meter, doc: /* A vector of vectors which holds a histogram of byte-code usage. -(aref (aref byte-code-meter 0) CODE) indicates how many times the byte +\(aref (aref byte-code-meter 0) CODE) indicates how many times the byte opcode CODE has been executed. -(aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0, +\(aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0, indicates how many times the byte opcodes CODE1 and CODE2 have been executed in succession. */); diff --git a/src/callproc.c b/src/callproc.c index 9ad7ef2..34ec3c7 100644 --- a/src/callproc.c +++ b/src/callproc.c @@ -1457,7 +1457,7 @@ This function searches `process-environment' for VARIABLE. If optional parameter ENV is a list, then search this list instead of `process-environment', and return t when encountering a negative entry -(an entry for a variable with no value). */) +\(an entry for a variable with no value). */) (Lisp_Object variable, Lisp_Object env) { char *value; @@ -1668,7 +1668,7 @@ Each element is a string (directory name) or nil (try default directory). By default the last element of this list is `exec-directory'. The last element is not always used, for example in shell completion -(`shell-dynamic-complete-command'). */); +\(`shell-dynamic-complete-command'). */); DEFVAR_LISP ("exec-suffixes", Vexec_suffixes, doc: /* List of suffixes to try to find executable file names. diff --git a/src/category.c b/src/category.c index 61502f8..39e4f93 100644 --- a/src/category.c +++ b/src/category.c @@ -462,7 +462,7 @@ Emacs treats a sequence of word constituent characters as a single word (i.e. finds no word boundary between them) only if they belong to the same script. But, exceptions are allowed in the following cases. -(1) The case that characters are in different scripts is controlled +\(1) The case that characters are in different scripts is controlled by the variable `word-combining-categories'. Emacs finds no word boundary between characters of different scripts @@ -476,7 +476,7 @@ For instance, to tell that Han characters followed by Hiragana characters can form a single word, the element `(?C . ?H)' should be in this list. -(2) The case that character are in the same script is controlled by +\(2) The case that character are in the same script is controlled by the variable `word-separating-categories'. Emacs finds a word boundary between characters of the same script diff --git a/src/chartab.c b/src/chartab.c index ec618f3..e6926a9 100644 --- a/src/chartab.c +++ b/src/chartab.c @@ -533,7 +533,7 @@ DEFUN ("char-table-parent", Fchar_table_parent, Schar_table_parent, The value is either nil or another char-table. If CHAR-TABLE holds nil for a given character, then the actual applicable value is inherited from the parent char-table -(or from its parents, if necessary). */) +\(or from its parents, if necessary). */) (Lisp_Object char_table) { CHECK_CHAR_TABLE (char_table); diff --git a/src/cmds.c b/src/cmds.c index 3450003..70f8e5b 100644 --- a/src/cmds.c +++ b/src/cmds.c @@ -106,7 +106,7 @@ right or to the left on the screen. This is in contrast with DEFUN ("forward-line", Fforward_line, Sforward_line, 0, 1, "^p", doc: /* Move N lines forward (backward if N is negative). Precisely, if point is on line I, move to the start of line I + N -("start of line" in the logical order). +\("start of line" in the logical order). If there isn't room, go as far as possible (no error). Returns the count of lines left to move. If moving forward, diff --git a/src/coding.c b/src/coding.c index e591bed..7c8be8e 100644 --- a/src/coding.c +++ b/src/coding.c @@ -9800,7 +9800,7 @@ DEFUN ("find-operation-coding-system", Ffind_operation_coding_system, doc: /* Choose a coding system for an operation based on the target name. The value names a pair of coding systems: (DECODING-SYSTEM . ENCODING-SYSTEM). DECODING-SYSTEM is the coding system to use for decoding -(in case OPERATION does decoding), and ENCODING-SYSTEM is the coding system +\(in case OPERATION does decoding), and ENCODING-SYSTEM is the coding system for encoding (in case OPERATION does encoding). The first argument OPERATION specifies an I/O primitive: @@ -11175,7 +11175,7 @@ the cdr part is used for encoding a text to be sent to a process. */); Table of extra Latin codes in the range 128..159 (inclusive). This is a vector of length 256. If Nth element is non-nil, the existence of code N in a file -(or output of subprocess) doesn't prevent it to be detected as +\(or output of subprocess) doesn't prevent it to be detected as a coding system of ISO 2022 variant which has a flag `accept-latin-extra-code' t (e.g. iso-latin-1) on reading a file or reading output of a subprocess. diff --git a/src/data.c b/src/data.c index 07f8724..333effd 100644 --- a/src/data.c +++ b/src/data.c @@ -1673,7 +1673,7 @@ DEFUN ("make-local-variable", Fmake_local_variable, Smake_local_variable, 1, 1, "vMake Local Variable: ", doc: /* Make VARIABLE have a separate value in the current buffer. Other buffers will continue to share a common default value. -(The buffer-local value of VARIABLE starts out as the same value +\(The buffer-local value of VARIABLE starts out as the same value VARIABLE previously had. If VARIABLE was void, it remains void.) Return VARIABLE. diff --git a/src/dispnew.c b/src/dispnew.c index f834f35..4f33569 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -5671,7 +5671,7 @@ DEFUN ("sleep-for", Fsleep_for, Ssleep_for, 1, 2, 0, SECONDS may be a floating-point value, meaning that you can wait for a fraction of a second. Optional second arg MILLISECONDS specifies an additional wait period, in milliseconds; this is for backwards compatibility. -(Not all operating systems support waiting for a fraction of a second.) */) +\(Not all operating systems support waiting for a fraction of a second.) */) (Lisp_Object seconds, Lisp_Object milliseconds) { double duration = extract_float (seconds); diff --git a/src/doc.c b/src/doc.c index a9273f0..a5ce326 100644 --- a/src/doc.c +++ b/src/doc.c @@ -716,7 +716,7 @@ is not on any keys. Each substring of the form \\=\\{MAPVAR} is replaced by a summary of the value of MAPVAR as a keymap. This summary is similar to the one produced by `describe-bindings'. The summary ends in two newlines -(used by the helper function `help-make-xrefs' to find the end of the +\(used by the helper function `help-make-xrefs' to find the end of the summary). Each substring of the form \\=\\ specifies the use of MAPVAR diff --git a/src/editfns.c b/src/editfns.c index bd70f0a..7c26d24 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -1895,7 +1895,7 @@ DEFUN ("float-time", Ffloat_time, Sfloat_time, 0, 1, 0, doc: /* Return the current time, as a float number of seconds since the epoch. If SPECIFIED-TIME is given, it is the time to convert to float instead of the current time. The argument should have the form -(HIGH LOW) or (HIGH LOW USEC) or (HIGH LOW USEC PSEC). Thus, +\(HIGH LOW) or (HIGH LOW USEC) or (HIGH LOW USEC PSEC). Thus, you can use times from `current-time' and from `file-attributes'. SPECIFIED-TIME can also have the form (HIGH . LOW), but this is considered obsolete. @@ -2284,7 +2284,7 @@ OFFSET is an integer number of seconds ahead of UTC (east of Greenwich). NAME is a string giving the name of the time zone. If SPECIFIED-TIME is given, the time zone offset is determined from it instead of using the current time. The argument should have the form -(HIGH LOW . IGNORED). Thus, you can use times obtained from +\(HIGH LOW . IGNORED). Thus, you can use times obtained from `current-time' and from `file-attributes'. SPECIFIED-TIME can also have the form (HIGH . LOW), but this is considered obsolete. Optional second arg ZONE is omitted or nil for the local time zone, or @@ -3627,7 +3627,7 @@ save_restriction_restore (Lisp_Object data) DEFUN ("save-restriction", Fsave_restriction, Ssave_restriction, 0, UNEVALLED, 0, doc: /* Execute BODY, saving and restoring current buffer's restrictions. The buffer's restrictions make parts of the beginning and end invisible. -(They are set up with `narrow-to-region' and eliminated with `widen'.) +\(They are set up with `narrow-to-region' and eliminated with `widen'.) This special form, `save-restriction', saves the current buffer's restrictions when it is entered, and restores them when it is exited. So any `narrow-to-region' within BODY lasts only until the end of the form. diff --git a/src/eval.c b/src/eval.c index 26104a5..ba1ce74 100644 --- a/src/eval.c +++ b/src/eval.c @@ -1191,7 +1191,7 @@ suppresses the debugger). When a handler handles an error, control returns to the `condition-case' and it executes the handler's BODY... with VAR bound to (ERROR-SYMBOL . SIGNAL-DATA) from the error. -(If VAR is nil, the handler can't access that information.) +\(If VAR is nil, the handler can't access that information.) Then the value of the last BODY form is returned from the `condition-case' expression. @@ -2409,7 +2409,7 @@ may be nil, a function, or a list of functions. Call each function in order with arguments ARGS, stopping at the first one that returns nil, and return nil. Otherwise (if all functions return non-nil, or if there are no functions to call), return non-nil -(do not rely on the precise return value in this case). +\(do not rely on the precise return value in this case). Do not use `make-local-variable' to make a hook variable buffer-local. Instead, use `add-hook' and specify t for the LOCAL argument. diff --git a/src/fileio.c b/src/fileio.c index 0372f46..c18524c 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -450,7 +450,7 @@ DEFUN ("unhandled-file-name-directory", Funhandled_file_name_directory, A `directly usable' directory name is one that may be used without the intervention of any file handler. If FILENAME is a directly usable file itself, return -(file-name-as-directory FILENAME). +\(file-name-as-directory FILENAME). If FILENAME refers to a file which is not accessible from a local process, then this should return nil. The `call-process' and `start-process' functions use this function to @@ -741,7 +741,7 @@ DEFUN ("make-temp-name", Fmake_temp_name, Smake_temp_name, 1, 1, 0, doc: /* Generate temporary file name (string) starting with PREFIX (a string). The Emacs process number forms part of the result, so there is no danger of generating a name being used by another Emacs process -(so long as only a single host can access the containing directory...). +\(so long as only a single host can access the containing directory...). This function tries to choose a name that has no existing file. For this to work, PREFIX should be an absolute file name. @@ -757,7 +757,7 @@ normally use `make-temp-file' instead. */) DEFUN ("expand-file-name", Fexpand_file_name, Sexpand_file_name, 1, 2, 0, doc: /* Convert filename NAME to absolute, and canonicalize it. Second arg DEFAULT-DIRECTORY is directory to start with if NAME is relative -(does not start with slash or tilde); both the directory name and +\(does not start with slash or tilde); both the directory name and a directory's file name are accepted. If DEFAULT-DIRECTORY is nil or missing, the current buffer's value of `default-directory' is used. NAME should be a string that is a valid file name for the underlying @@ -775,8 +775,8 @@ See also the function `substitute-in-file-name'. For technical reasons, this function can return correct but non-intuitive results for the root directory; for instance, -(expand-file-name ".." "/") returns "/..". For this reason, use -(directory-file-name (file-name-directory dirname)) to traverse a +\(expand-file-name ".." "/") returns "/..". For this reason, use +\(directory-file-name (file-name-directory dirname)) to traverse a filesystem tree, not (expand-file-name ".." dirname). */) (Lisp_Object name, Lisp_Object default_directory) { @@ -1459,7 +1459,7 @@ filesystem tree, not (expand-file-name ".." dirname). */) DEAFUN ("expand-file-name", Fexpand_file_name, Sexpand_file_name, 1, 2, 0, "Convert FILENAME to absolute, and canonicalize it.\n\ Second arg DEFAULT is directory to start with if FILENAME is relative\n\ -(does not start with slash); if DEFAULT is nil or missing,\n\ +\(does not start with slash); if DEFAULT is nil or missing,\n\ the current buffer's value of default-directory is used.\n\ Filenames containing `.' or `..' as components are simplified;\n\ initial `~/' expands to your home directory.\n\ @@ -2468,7 +2468,7 @@ Use `file-symlink-p' to test for such links. */) DEFUN ("file-executable-p", Ffile_executable_p, Sfile_executable_p, 1, 1, 0, doc: /* Return t if FILENAME can be executed by you. For a directory, this means you can access files in that directory. -(It is generally better to use `file-accessible-directory-p' for that +\(It is generally better to use `file-accessible-directory-p' for that purpose, though.) */) (Lisp_Object filename) { @@ -5329,8 +5329,8 @@ DEFUN ("set-visited-file-modtime", Fset_visited_file_modtime, Useful if the buffer was not read from the file normally or if the file itself has been changed for some known benign reason. An argument specifies the modification time value to use -(instead of that of the visited file), in the form of a list -(HIGH LOW USEC PSEC) or an integer flag as returned by +\(instead of that of the visited file), in the form of a list +\(HIGH LOW USEC PSEC) or an integer flag as returned by `visited-file-modtime'. */) (Lisp_Object time_flag) { diff --git a/src/floatfns.c b/src/floatfns.c index cf485b6..cf1dee3 100644 --- a/src/floatfns.c +++ b/src/floatfns.c @@ -170,7 +170,7 @@ Cause an error if X1 or X2 is not a float. */) DEFUN ("frexp", Ffrexp, Sfrexp, 1, 1, 0, doc: /* Get significand and exponent of a floating point number. Breaks the floating point number X into its binary significand SGNFCAND -(a floating point value between 0.5 (included) and 1.0 (excluded)) +\(a floating point value between 0.5 (included) and 1.0 (excluded)) and an integral exponent EXP for 2, such that: X = SGNFCAND * 2^EXP @@ -491,7 +491,7 @@ fmod_float (Lisp_Object x, Lisp_Object y) DEFUN ("fceiling", Ffceiling, Sfceiling, 1, 1, 0, doc: /* Return the smallest integer no less than ARG, as a float. -(Round toward +inf.) */) +\(Round toward +inf.) */) (Lisp_Object arg) { double d = extract_float (arg); @@ -501,7 +501,7 @@ DEFUN ("fceiling", Ffceiling, Sfceiling, 1, 1, 0, DEFUN ("ffloor", Fffloor, Sffloor, 1, 1, 0, doc: /* Return the largest integer no greater than ARG, as a float. -(Round towards -inf.) */) +\(Round towards -inf.) */) (Lisp_Object arg) { double d = extract_float (arg); diff --git a/src/fns.c b/src/fns.c index 86ad333..571bfbe 100644 --- a/src/fns.c +++ b/src/fns.c @@ -216,7 +216,7 @@ DEFUN ("compare-strings", Fcompare_strings, Scompare_strings, 6, 7, 0, The arguments START1, END1, START2, and END2, if non-nil, are positions specifying which parts of STR1 or STR2 to compare. In string STR1, compare the part between START1 (inclusive) and END1 -(exclusive). If START1 is nil, it defaults to 0, the beginning of +\(exclusive). If START1 is nil, it defaults to 0, the beginning of the string; if END1 is nil, it defaults to the length of the string. Likewise, in string STR2, compare the part between START2 and END2. Like in `substring', negative values are counted from the end. @@ -339,7 +339,7 @@ This function obeys the conventions for collation order in your locale settings. For example, punctuation and whitespace characters might be considered less significant for sorting: -(sort \\='("11" "12" "1 1" "1 2" "1.1" "1.2") \\='string-collate-lessp) +\(sort \\='("11" "12" "1 1" "1 2" "1.1" "1.2") \\='string-collate-lessp) => ("11" "1 1" "1.1" "12" "1 2" "1.2") The optional argument LOCALE, a string, overrides the setting of your @@ -385,7 +385,7 @@ settings. For example, characters with different coding points but the same meaning might be considered as equal, like different grave accent Unicode characters: -(string-collate-equalp (string ?\\uFF40) (string ?\\u1FEF)) +\(string-collate-equalp (string ?\\uFF40) (string ?\\u1FEF)) => t The optional argument LOCALE, a string, overrides the setting of your @@ -1018,7 +1018,7 @@ to a multibyte character. In this case, the returned string is a newly created string with no text properties. If STRING is multibyte or entirely ASCII, it is returned unchanged. In particular, when STRING is unibyte and entirely ASCII, the returned string is unibyte. -(When the characters are all ASCII, Emacs primitives will treat the +\(When the characters are all ASCII, Emacs primitives will treat the string the same way whether it is unibyte or multibyte.) */) (Lisp_Object string) { @@ -1217,14 +1217,14 @@ validate_subarray (Lisp_Object array, Lisp_Object from, Lisp_Object to, DEFUN ("substring", Fsubstring, Ssubstring, 1, 3, 0, doc: /* Return a new string whose contents are a substring of STRING. The returned string consists of the characters between index FROM -(inclusive) and index TO (exclusive) of STRING. FROM and TO are +\(inclusive) and index TO (exclusive) of STRING. FROM and TO are zero-indexed: 0 means the first character of STRING. Negative values are counted from the end of STRING. If TO is nil, the substring runs to the end of STRING. The STRING argument may also be a vector. In that case, the return value is a new vector that contains the elements between index FROM -(inclusive) and index TO (exclusive) of that vector argument. +\(inclusive) and index TO (exclusive) of that vector argument. With one argument, just copy STRING (with properties, if any). */) (Lisp_Object string, Lisp_Object from, Lisp_Object to) @@ -2044,7 +2044,7 @@ merge (Lisp_Object org_l1, Lisp_Object org_l2, Lisp_Object pred) DEFUN ("plist-get", Fplist_get, Splist_get, 2, 2, 0, doc: /* Extract a value from a property list. PLIST is a property list, which is a list of the form -(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value +\(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value corresponding to the given PROP, or nil if PROP is not one of the properties on the list. This function never signals an error. */) (Lisp_Object plist, Lisp_Object prop) @@ -2079,7 +2079,7 @@ This is the last value stored with `(put SYMBOL PROPNAME VALUE)'. */) DEFUN ("plist-put", Fplist_put, Splist_put, 3, 3, 0, doc: /* Change value in PLIST of PROP to VAL. PLIST is a property list, which is a list of the form -(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object. +\(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object. If PROP is already a property on the list, its value is set to VAL, otherwise the new PROP VAL pair is added. The new plist is returned; use `(setq x (plist-put x prop val))' to be sure to use the new value. @@ -2123,7 +2123,7 @@ It can be retrieved with `(get SYMBOL PROPNAME)'. */) DEFUN ("lax-plist-get", Flax_plist_get, Slax_plist_get, 2, 2, 0, doc: /* Extract a value from a property list, comparing with `equal'. PLIST is a property list, which is a list of the form -(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value +\(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value corresponding to the given PROP, or nil if PROP is not one of the properties on the list. */) (Lisp_Object plist, Lisp_Object prop) @@ -2148,7 +2148,7 @@ one of the properties on the list. */) DEFUN ("lax-plist-put", Flax_plist_put, Slax_plist_put, 3, 3, 0, doc: /* Change value in PLIST of PROP to VAL, comparing with `equal'. PLIST is a property list, which is a list of the form -(PROP1 VALUE1 PROP2 VALUE2 ...). PROP and VAL are any objects. +\(PROP1 VALUE1 PROP2 VALUE2 ...). PROP and VAL are any objects. If PROP is already a property on the list, its value is set to VAL, otherwise the new PROP VAL pair is added. The new plist is returned; use `(setq x (lax-plist-put x prop val))' to be sure to use the new value. @@ -2861,7 +2861,7 @@ The normal messages at start and end of loading FILENAME are suppressed. */) DEFUN ("plist-member", Fplist_member, Splist_member, 2, 2, 0, doc: /* Return non-nil if PLIST has the property PROP. PLIST is a property list, which is a list of the form -(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol. +\(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol. Unlike `plist-get', this allows you to distinguish between a missing property and a property with the value nil. The value is actually the tail of PLIST whose car is PROP. */) diff --git a/src/font.c b/src/font.c index 039493b..55f0a03 100644 --- a/src/font.c +++ b/src/font.c @@ -4086,7 +4086,7 @@ DEFUN ("font-face-attributes", Ffont_face_attributes, Sfont_face_attributes, 1, FONT is a font name, a font-spec, a font-entity, or a font-object. The return value is a list of the form -(:family FAMILY :height HEIGHT :weight WEIGHT :slant SLANT :width WIDTH) +\(:family FAMILY :height HEIGHT :weight WEIGHT :slant SLANT :width WIDTH) where FAMILY, HEIGHT, WEIGHT, SLANT, and WIDTH are face attribute values compatible with `set-face-attribute'. Some of these key-attribute pairs @@ -5378,7 +5378,7 @@ where ENCODING is a charset or a char-table, and REPERTORY is a charset, a char-table, or nil. If ENCODING and REPERTORY are the same, the element can have the form -(REGEXP . ENCODING). +\(REGEXP . ENCODING). ENCODING is for converting a character to a glyph code of the font. If ENCODING is a charset, encoding a character by the charset gives diff --git a/src/frame.c b/src/frame.c index 4f61332..e013314 100644 --- a/src/frame.c +++ b/src/frame.c @@ -5228,7 +5228,7 @@ keep it unchanged if this option is either t or a list containing `vertical-scroll-bars'. The default value is \\='(tool-bar-lines) on Lucid, Motif and Windows -(which means that adding/removing a tool bar does not change the frame +\(which means that adding/removing a tool bar does not change the frame height), nil on all other window systems including GTK+ (which means that changing any of the parameters listed above may change the size of the frame), and t otherwise (which means the frame size never changes diff --git a/src/fringe.c b/src/fringe.c index 597c666..25cc142 100644 --- a/src/fringe.c +++ b/src/fringe.c @@ -1701,7 +1701,7 @@ syms_of_fringe (void) DEFVAR_LISP ("overflow-newline-into-fringe", Voverflow_newline_into_fringe, doc: /* Non-nil means that newline may flow into the right fringe. This means that display lines which are exactly as wide as the window -(not counting the final newline) will only occupy one screen line, by +\(not counting the final newline) will only occupy one screen line, by showing (or hiding) the final newline in the right fringe; when point is at the final newline, the cursor is shown in the right fringe. If nil, also continue lines which are exactly as wide as the window. */); diff --git a/src/inotify.c b/src/inotify.c index e0619e5..34d2aeb 100644 --- a/src/inotify.c +++ b/src/inotify.c @@ -272,7 +272,7 @@ onlydir Watching a directory is not recursive. CALLBACK is passed a single argument EVENT which contains an event structure of the format -(WATCH-DESCRIPTOR ASPECTS NAME COOKIE) +\(WATCH-DESCRIPTOR ASPECTS NAME COOKIE) WATCH-DESCRIPTOR is the same object that was returned by this function. It can be tested for equality using `equal'. ASPECTS describes the event. It is a diff --git a/src/keyboard.c b/src/keyboard.c index 298ab64..2d225c8 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -11381,7 +11381,7 @@ See Info node `(elisp)Multiple Terminals'. */); DEFVAR_BOOL ("cannot-suspend", cannot_suspend, doc: /* Non-nil means to always spawn a subshell instead of suspending. -(Even if the operating system has support for stopping a process.) */); +\(Even if the operating system has support for stopping a process.) */); cannot_suspend = false; DEFVAR_BOOL ("menu-prompting", menu_prompting, @@ -11595,7 +11595,7 @@ immediately after running `post-command-hook'. */); DEFVAR_LISP ("input-method-function", Vinput_method_function, doc: /* If non-nil, the function that implements the current input method. It's called with one argument, a printing character that was just read. -(That means a character with code 040...0176.) +\(That means a character with code 040...0176.) Typically this function uses `read-event' to read additional events. When it does so, it should first bind `input-method-function' to nil so it will not be called recursively. diff --git a/src/keymap.c b/src/keymap.c index 7928e62..3044cfa 100644 --- a/src/keymap.c +++ b/src/keymap.c @@ -1687,7 +1687,7 @@ DEFUN ("global-key-binding", Fglobal_key_binding, Sglobal_key_binding, 1, 2, 0, KEYS is a string or vector, a sequence of keystrokes. The binding is probably a symbol with a function definition. This function's return values are the same as those of `lookup-key' -(which see). +\(which see). If optional argument ACCEPT-DEFAULT is non-nil, recognize default bindings; see the description of `lookup-key' for more details about this. */) @@ -2493,7 +2493,7 @@ If FIRSTONLY is the symbol `non-ascii', return the first binding found, no matter what it is. If FIRSTONLY has another non-nil value, prefer bindings that use the modifier key specified in `where-is-preferred-modifier' -(or their meta variants) and entirely reject menu bindings. +\(or their meta variants) and entirely reject menu bindings. If optional 4th arg NOINDIRECT is non-nil, don't extract the commands inside menu-items. This makes it possible to search for a menu-item itself. @@ -2724,7 +2724,7 @@ looked up in BUFFER. The optional argument PREFIX, if non-nil, should be a key sequence; then we display only bindings that start with that prefix. The optional argument MENUS, if non-nil, says to mention menu bindings. -(Ordinarily these are omitted from the output.) */) +\(Ordinarily these are omitted from the output.) */) (Lisp_Object buffer, Lisp_Object prefix, Lisp_Object menus) { Lisp_Object outbuf, shadow; diff --git a/src/kqueue.c b/src/kqueue.c index a69d06d..5131aa0 100644 --- a/src/kqueue.c +++ b/src/kqueue.c @@ -67,9 +67,8 @@ kqueue_directory_listing (Lisp_Object directory_files) /* Generate a file notification event. */ static void -kqueue_generate_event -(Lisp_Object watch_object, Lisp_Object actions, - Lisp_Object file, Lisp_Object file1) +kqueue_generate_event (Lisp_Object watch_object, Lisp_Object actions, + Lisp_Object file, Lisp_Object file1) { Lisp_Object flags, action, entry; struct input_event event; @@ -109,8 +108,7 @@ kqueue_generate_event replaced by the new directory listing at the end of this function. */ static void -kqueue_compare_dir_list -(Lisp_Object watch_object) +kqueue_compare_dir_list (Lisp_Object watch_object) { Lisp_Object dir, pending_dl, deleted_dl; Lisp_Object old_directory_files, old_dl, new_directory_files, new_dl, dl; diff --git a/src/lread.c b/src/lread.c index 25e3ff0..5a36537 100644 --- a/src/lread.c +++ b/src/lread.c @@ -2059,7 +2059,7 @@ Returns a cons: (OBJECT-READ . FINAL-STRING-INDEX). FINAL-STRING-INDEX is an integer giving the position of the next remaining character in STRING. START and END optionally delimit a substring of STRING from which to read; they default to 0 and -(length STRING) respectively. Negative values are counted from +\(length STRING) respectively. Negative values are counted from the end of STRING. */) (Lisp_Object string, Lisp_Object start, Lisp_Object end) { diff --git a/src/menu.c b/src/menu.c index cbddef3..8e5bf4d 100644 --- a/src/menu.c +++ b/src/menu.c @@ -1130,7 +1130,7 @@ If POSITION is t, it means to use the current mouse position. MENU is a specifier for a menu. For the simplest case, MENU is a keymap. The menu items come from key bindings that have a menu string as well as a definition; actually, the "definition" in such a key binding looks like -(STRING . REAL-DEFINITION). To give the menu a title, put a string into +\(STRING . REAL-DEFINITION). To give the menu a title, put a string into the keymap as a top-level element. If REAL-DEFINITION is nil, that puts a nonselectable string in the menu. @@ -1495,7 +1495,7 @@ The return value is VALUE from the chosen item. An ITEM may also be just a string--that makes a nonselectable item. An ITEM may also be nil--that means to put all preceding items on the left of the dialog box and all following items on the right. -(By default, approximately half appear on each side.) +\(By default, approximately half appear on each side.) If HEADER is non-nil, the frame title for the box is "Information", otherwise it is "Question". diff --git a/src/minibuf.c b/src/minibuf.c index 180668f..06e5f82 100644 --- a/src/minibuf.c +++ b/src/minibuf.c @@ -986,7 +986,7 @@ DEFUN ("read-no-blanks-input", Fread_no_blanks_input, Sread_no_blanks_input, 1, Prompt with PROMPT. Whitespace terminates the input. If INITIAL is non-nil, it should be a string, which is used as initial input, with point positioned at the end, so that SPACE will accept the input. -(Actually, INITIAL can also be a cons of a string and an integer. +\(Actually, INITIAL can also be a cons of a string and an integer. Such values are treated as in `read-from-minibuffer', but are normally not useful in this function.) Third arg INHERIT-INPUT-METHOD, if non-nil, means the minibuffer inherits diff --git a/src/nsfns.m b/src/nsfns.m index eda94c4..b98b510 100644 --- a/src/nsfns.m +++ b/src/nsfns.m @@ -1684,7 +1684,7 @@ DEFUN ("x-server-max-request-size", Fx_server_max_request_size, DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, doc: /* Return the "vendor ID" string of Nextstep display server TERMINAL. -(Labeling every distributor as a "vendor" embodies the false assumption +\(Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) The optional argument TERMINAL specifies which display to ask about. TERMINAL should be a terminal object, a frame or a display name (a string). @@ -1730,7 +1730,7 @@ If omitted or nil, that stands for the selected frame's display. Note: "screen" here is not in Nextstep terminology but in X11's. For the number of physical monitors, use `(length -(display-monitor-attributes-list TERMINAL))' instead. */) +\(display-monitor-attributes-list TERMINAL))' instead. */) (Lisp_Object terminal) { check_ns_display_info (terminal); @@ -1861,7 +1861,7 @@ DISPLAY is the name of the display to connect to. Optional second arg XRM-STRING is a string of resources in xrdb format. If the optional third arg MUST-SUCCEED is non-nil, terminate Emacs if we can't open the connection. -(In the Nextstep version, the last two arguments are currently ignored.) */) +\(In the Nextstep version, the last two arguments are currently ignored.) */) (Lisp_Object display, Lisp_Object resource_string, Lisp_Object must_succeed) { struct ns_display_info *dpyinfo; @@ -2301,7 +2301,7 @@ x_get_focus_frame (struct frame *frame) DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, doc: /* Internal function called by `color-defined-p', which see. -(Note that the Nextstep version of this function ignores FRAME.) */) +\(Note that the Nextstep version of this function ignores FRAME.) */) (Lisp_Object color, Lisp_Object frame) { NSColor * col; diff --git a/src/nsselect.m b/src/nsselect.m index 463f02b..b7629d5 100644 --- a/src/nsselect.m +++ b/src/nsselect.m @@ -316,7 +316,7 @@ DEFUN ("ns-own-selection-internal", Fns_own_selection_internal, Sns_own_selection_internal, 2, 2, 0, doc: /* Assert an X selection of type SELECTION and value VALUE. SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. -(Those are literal upper-case symbol names, since that's what X expects.) +\(Those are literal upper-case symbol names, since that's what X expects.) VALUE is typically a string, or a cons of two markers, but may be anything that the functions on `selection-converter-alist' know about. */) (Lisp_Object selection, Lisp_Object value) @@ -414,7 +414,7 @@ DEFUN ("ns-selection-owner-p", Fns_selection_owner_p, Sns_selection_owner_p, doc: /* Whether the current Emacs process owns the given X Selection. The arg should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. -(Those are literal upper-case symbol names, since that's what X expects.) +\(Those are literal upper-case symbol names, since that's what X expects.) For convenience, the symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. */) (Lisp_Object selection) @@ -433,7 +433,7 @@ DEFUN ("ns-get-selection", Fns_get_selection, Sns_get_selection, 2, 2, 0, doc: /* Return text selected from some X window. SELECTION-SYMBOL is typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. -(Those are literal upper-case symbol names, since that's what X expects.) +\(Those are literal upper-case symbol names, since that's what X expects.) TARGET-TYPE is the type of data desired, typically `STRING'. */) (Lisp_Object selection_name, Lisp_Object target_type) { diff --git a/src/nsterm.h b/src/nsterm.h index fa5399c..8292c07 100644 --- a/src/nsterm.h +++ b/src/nsterm.h @@ -1044,10 +1044,10 @@ struct x_output /* Difference btwn char-column-calculated and actual SB widths. This is only a concern for rendering when SB on left. */ -#define NS_SCROLL_BAR_ADJUST(w, f) \ -(WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w) ? \ - (FRAME_SCROLL_BAR_COLS (f) * FRAME_COLUMN_WIDTH (f) \ - - NS_SCROLL_BAR_WIDTH (f)) : 0) +#define NS_SCROLL_BAR_ADJUST(w, f) \ + (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w) ? \ + (FRAME_SCROLL_BAR_COLS (f) * FRAME_COLUMN_WIDTH (f) \ + - NS_SCROLL_BAR_WIDTH (f)) : 0) /* Difference btwn char-line-calculated and actual SB heights. This is only a concern for rendering when SB on top. */ diff --git a/src/print.c b/src/print.c index 2ecc0f5..478842c 100644 --- a/src/print.c +++ b/src/print.c @@ -2224,7 +2224,7 @@ Also print formfeeds as `\\f'. */); DEFVAR_BOOL ("print-escape-nonascii", print_escape_nonascii, doc: /* Non-nil means print unibyte non-ASCII chars in strings as \\OOO. -(OOO is the octal representation of the character code.) +\(OOO is the octal representation of the character code.) Only single-byte characters are affected, and only in `prin1'. When the output goes in a multibyte buffer, this feature is enabled regardless of the value of the variable. */); @@ -2232,7 +2232,7 @@ enabled regardless of the value of the variable. */); DEFVAR_BOOL ("print-escape-multibyte", print_escape_multibyte, doc: /* Non-nil means print multibyte characters in strings as \\xXXXX. -(XXXX is the hex representation of the character code.) +\(XXXX is the hex representation of the character code.) This affects only `prin1'. */); print_escape_multibyte = 0; diff --git a/src/process.c b/src/process.c index 1eac5e1..f9a99d4 100644 --- a/src/process.c +++ b/src/process.c @@ -953,7 +953,7 @@ DEFUN ("process-command", Fprocess_command, Sprocess_command, 1, 1, 0, This is a list of strings, the first string being the program executed and the rest of the strings being the arguments given to it. For a network or serial process, this is nil (process is running) or t -(process is stopped). */) +\(process is stopped). */) (register Lisp_Object process) { CHECK_PROCESS (process); @@ -2670,7 +2670,7 @@ is not given or nil, 1 stopbit is used. :flowcontrol FLOWCONTROL -- FLOWCONTROL determines the type of flowcontrol to be used, which is either nil (don't use flowcontrol), the symbol `hw' (use RTS/CTS hardware flowcontrol), or the symbol `sw' -(use XON/XOFF software flowcontrol). If FLOWCONTROL is not given, no +\(use XON/XOFF software flowcontrol). If FLOWCONTROL is not given, no flowcontrol is used. `serial-process-configure' is called by `make-serial-process' for the @@ -2678,12 +2678,12 @@ initial configuration of the serial port. Examples: -(serial-process-configure :process "/dev/ttyS0" :speed 1200) +\(serial-process-configure :process "/dev/ttyS0" :speed 1200) -(serial-process-configure +\(serial-process-configure :buffer "COM1" :stopbits 1 :parity \\='odd :flowcontrol \\='hw) -(serial-process-configure :port "\\\\.\\COM13" :bytesize 7) +\(serial-process-configure :port "\\\\.\\COM13" :bytesize 7) usage: (serial-process-configure &rest ARGS) */) (ptrdiff_t nargs, Lisp_Object *args) @@ -2777,13 +2777,13 @@ is available via the function `process-contact'. Examples: -(make-serial-process :port "/dev/ttyS0" :speed 9600) +\(make-serial-process :port "/dev/ttyS0" :speed 9600) -(make-serial-process :port "COM1" :speed 115200 :stopbits 2) +\(make-serial-process :port "COM1" :speed 115200 :stopbits 2) -(make-serial-process :port "\\\\.\\COM13" :speed 1200 :bytesize 7 :parity \\='odd) +\(make-serial-process :port "\\\\.\\COM13" :speed 1200 :bytesize 7 :parity \\='odd) -(make-serial-process :port "/dev/tty.BlueConsole-SPP-1" :speed nil) +\(make-serial-process :port "/dev/tty.BlueConsole-SPP-1" :speed nil) usage: (make-serial-process &rest ARGS) */) (ptrdiff_t nargs, Lisp_Object *args) diff --git a/src/textprop.c b/src/textprop.c index 70091b9..104d89b 100644 --- a/src/textprop.c +++ b/src/textprop.c @@ -1493,7 +1493,7 @@ DEFUN ("remove-text-properties", Fremove_text_properties, doc: /* Remove some properties from text from START to END. The third argument PROPERTIES is a property list whose property names specify the properties to remove. -(The values stored in PROPERTIES are ignored.) +\(The values stored in PROPERTIES are ignored.) If the optional fourth argument OBJECT is a buffer (or nil, which means the current buffer), START and END are buffer positions (integers or markers). If OBJECT is a string, START and END are 0-based indices into it. diff --git a/src/unexw32.c b/src/unexw32.c index 460a39e..0a7292a 100644 --- a/src/unexw32.c +++ b/src/unexw32.c @@ -34,11 +34,10 @@ along with GNU Emacs. If not, see . */ /* Include relevant definitions from IMAGEHLP.H, which can be found in \\win32sdk\mstools\samples\image\include\imagehlp.h. */ -PIMAGE_NT_HEADERS -(__stdcall * pfnCheckSumMappedFile) (LPVOID BaseAddress, - DWORD FileLength, - LPDWORD HeaderSum, - LPDWORD CheckSum); +PIMAGE_NT_HEADERS (__stdcall * pfnCheckSumMappedFile) (LPVOID BaseAddress, + DWORD FileLength, + LPDWORD HeaderSum, + LPDWORD CheckSum); extern BOOL ctrl_c_handler (unsigned long type); diff --git a/src/w16select.c b/src/w16select.c index 48bb813..0cd1b23 100644 --- a/src/w16select.c +++ b/src/w16select.c @@ -686,7 +686,7 @@ For MS-Windows and MS-DOS: When sending or receiving text via selection and clipboard, the text is encoded or decoded by this coding system. The default value is the current system default encoding on 9x/Me, `utf-16le-dos' -(Unicode) on NT/W2K/XP, and `iso-latin-1-dos' on MS-DOS. +\(Unicode) on NT/W2K/XP, and `iso-latin-1-dos' on MS-DOS. For X Windows: When sending text via selection and clipboard, if the target diff --git a/src/w32fns.c b/src/w32fns.c index a5018ae..f4526e4 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -5207,7 +5207,7 @@ x_get_focus_frame (struct frame *frame) DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, doc: /* Internal function called by `color-defined-p', which see. -(Note that the Nextstep version of this function ignores FRAME.) */) +\(Note that the Nextstep version of this function ignores FRAME.) */) (Lisp_Object color, Lisp_Object frame) { XColor foo; @@ -5349,7 +5349,7 @@ If omitted or nil, that stands for the selected frame's display. */) DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, doc: /* Return the "vendor ID" string of the GUI software on TERMINAL. -(Labeling every distributor as a "vendor" embodies the false assumption +\(Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) For GNU and Unix systems, this queries the X server software; for @@ -5751,7 +5751,7 @@ DISPLAY is the name of the display to connect to. Optional second arg XRM-STRING is a string of resources in xrdb format. If the optional third arg MUST-SUCCEED is non-nil, terminate Emacs if we can't open the connection. -(In the Nextstep version, the last two arguments are currently ignored.) */) +\(In the Nextstep version, the last two arguments are currently ignored.) */) (Lisp_Object display, Lisp_Object xrm_string, Lisp_Object must_succeed) { char *xrm_option; @@ -8090,7 +8090,7 @@ DEFUN ("w32-set-mouse-absolute-pixel-position", Fw32_set_mouse_absolute_pixel_po Sw32_set_mouse_absolute_pixel_position, 2, 2, 0, doc: /* Move mouse pointer to absolute pixel position (X, Y). The coordinates X and Y are interpreted in pixels relative to a position -(0, 0) of the selected frame's display. */) +\(0, 0) of the selected frame's display. */) (Lisp_Object x, Lisp_Object y) { UINT trail_num = 0; diff --git a/src/w32heap.c b/src/w32heap.c index b908169..df2fe0a 100644 --- a/src/w32heap.c +++ b/src/w32heap.c @@ -73,12 +73,11 @@ typedef PVOID (WINAPI * RtlCreateHeap_Proc) ( typedef LONG NTSTATUS; -typedef NTSTATUS -(NTAPI * PRTL_HEAP_COMMIT_ROUTINE)( - IN PVOID Base, - IN OUT PVOID *CommitAddress, - IN OUT PSIZE_T CommitSize - ); +typedef NTSTATUS (NTAPI *PRTL_HEAP_COMMIT_ROUTINE) ( + IN PVOID Base, + IN OUT PVOID *CommitAddress, + IN OUT PSIZE_T CommitSize + ); typedef struct _RTL_HEAP_PARAMETERS { ULONG Length; diff --git a/src/window.c b/src/window.c index 8953d3c..a15eb2f 100644 --- a/src/window.c +++ b/src/window.c @@ -670,7 +670,7 @@ DEFUN ("set-window-combination-limit", Fset_window_combination_limit, Sset_windo WINDOW must be a valid window used in horizontal or vertical combination. If LIMIT is nil, child windows of WINDOW can be recombined with WINDOW's siblings. LIMIT t means that child windows of WINDOW are never -(re-)combined with WINDOW's siblings. Other values are reserved for +\(re-)combined with WINDOW's siblings. Other values are reserved for future use. */) (Lisp_Object window, Lisp_Object limit) { @@ -1324,7 +1324,7 @@ DEFUN ("coordinates-in-window-p", Fcoordinates_in_window_p, WINDOW must be a live window and defaults to the selected one. COORDINATES is a cons of the form (X . Y), X and Y being distances measured in characters from the upper-left corner of the frame. -(0 . 0) denotes the character in the upper left corner of the +\(0 . 0) denotes the character in the upper left corner of the frame. If COORDINATES are in the text portion of WINDOW, the coordinates relative to the window are returned. @@ -1710,7 +1710,7 @@ of the window. The remaining elements are omitted if the character after POS is fully visible; otherwise, RTOP and RBOT are the number of pixels off-window at the top and bottom of the screen line ("row") containing POS, ROWH is the visible height of that row, and VPOS is the row number -(zero-based). */) +\(zero-based). */) (Lisp_Object pos, Lisp_Object window, Lisp_Object partially) { struct window *w; diff --git a/src/xdisp.c b/src/xdisp.c index dec9947..217203b 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -31425,7 +31425,7 @@ This variable is not guaranteed to be accurate except while processing DEFVAR_LISP ("frame-title-format", Vframe_title_format, doc: /* Template for displaying the title bar of visible frames. -(Assuming the window manager supports this feature.) +\(Assuming the window manager supports this feature.) This variable has the same structure as `mode-line-format', except that the %c and %l constructs are ignored. It is used only on frames for @@ -31433,10 +31433,10 @@ which no explicit name has been set (see `modify-frame-parameters'). */); DEFVAR_LISP ("icon-title-format", Vicon_title_format, doc: /* Template for displaying the title bar of an iconified frame. -(Assuming the window manager supports this feature.) +\(Assuming the window manager supports this feature.) This variable has the same structure as `mode-line-format' (which see), and is used only on frames for which no explicit name has been set -(see `modify-frame-parameters'). */); +\(see `modify-frame-parameters'). */); Vicon_title_format = Vframe_title_format = listn (CONSTYPE_PURE, 3, diff --git a/src/xfaces.c b/src/xfaces.c index 7762e0f..0104857 100644 --- a/src/xfaces.c +++ b/src/xfaces.c @@ -701,10 +701,10 @@ Optional THOROUGHLY non-nil means try to free unused fonts, too. */) DEFUN ("bitmap-spec-p", Fbitmap_spec_p, Sbitmap_spec_p, 1, 1, 0, doc: /* Value is non-nil if OBJECT is a valid bitmap specification. A bitmap specification is either a string, a file name, or a list -(WIDTH HEIGHT DATA) where WIDTH is the pixel width of the bitmap, +\(WIDTH HEIGHT DATA) where WIDTH is the pixel width of the bitmap, HEIGHT is its height, and DATA is a string containing the bits of the pixmap. Bits are stored row by row, each row occupies -(WIDTH + 7)/8 bytes. */) +\(WIDTH + 7)/8 bytes. */) (Lisp_Object object) { bool pixmap_p = false; @@ -6536,7 +6536,7 @@ changing this variable for it to take effect. */); Each element is a cons (FONT-PATTERN . RESCALE-RATIO), where FONT-PATTERN is a font-spec or a regular expression matching a font name, and RESCALE-RATIO is a floating point number to specify how much larger -(or smaller) font we should use. For instance, if a face requests +\(or smaller) font we should use. For instance, if a face requests a font of 10 point, we actually use a font of 10 * RESCALE-RATIO point. */); Vface_font_rescale_alist = Qnil; diff --git a/src/xfns.c b/src/xfns.c index 20ac627..dced887 100644 --- a/src/xfns.c +++ b/src/xfns.c @@ -3670,7 +3670,7 @@ x_focus_frame (struct frame *f) DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, doc: /* Internal function called by `color-defined-p', which see. -(Note that the Nextstep version of this function ignores FRAME.) */) +\(Note that the Nextstep version of this function ignores FRAME.) */) (Lisp_Object color, Lisp_Object frame) { XColor foo; @@ -3837,7 +3837,7 @@ If omitted or nil, that stands for the selected frame's display. */) DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, doc: /* Return the "vendor ID" string of the GUI software on TERMINAL. -(Labeling every distributor as a "vendor" embodies the false assumption +\(Labeling every distributor as a "vendor" embodies the false assumption that operating systems cannot be developed and distributed noncommercially.) The optional argument TERMINAL specifies which display to ask about. @@ -4759,7 +4759,7 @@ DEFUN ("x-set-mouse-absolute-pixel-position", Fx_set_mouse_absolute_pixel_positi Sx_set_mouse_absolute_pixel_position, 2, 2, 0, doc: /* Move mouse pointer to absolute pixel position (X, Y). The coordinates X and Y are interpreted in pixels relative to a position -(0, 0) of the selected frame's display. */) +\(0, 0) of the selected frame's display. */) (Lisp_Object x, Lisp_Object y) { struct frame *f = SELECTED_FRAME (); @@ -4935,7 +4935,7 @@ DISPLAY is the name of the display to connect to. Optional second arg XRM-STRING is a string of resources in xrdb format. If the optional third arg MUST-SUCCEED is non-nil, terminate Emacs if we can't open the connection. -(In the Nextstep version, the last two arguments are currently ignored.) */) +\(In the Nextstep version, the last two arguments are currently ignored.) */) (Lisp_Object display, Lisp_Object xrm_string, Lisp_Object must_succeed) { char *xrm_option; diff --git a/src/xselect.c b/src/xselect.c index 23b735e..cbc44a1 100644 --- a/src/xselect.c +++ b/src/xselect.c @@ -1911,7 +1911,7 @@ DEFUN ("x-own-selection-internal", Fx_own_selection_internal, Sx_own_selection_internal, 2, 3, 0, doc: /* Assert an X selection of type SELECTION and value VALUE. SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. -(Those are literal upper-case symbol names, since that's what X expects.) +\(Those are literal upper-case symbol names, since that's what X expects.) VALUE is typically a string, or a cons of two markers, but may be anything that the functions on `selection-converter-alist' know about. @@ -1940,7 +1940,7 @@ DEFUN ("x-get-selection-internal", Fx_get_selection_internal, Sx_get_selection_internal, 2, 4, 0, doc: /* Return text selected from some X window. SELECTION-SYMBOL is typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. -(Those are literal upper-case symbol names, since that's what X expects.) +\(Those are literal upper-case symbol names, since that's what X expects.) TARGET-TYPE is the type of data desired, typically `STRING'. TIME-STAMP is the time to use in the XConvertSelection call for foreign @@ -2044,7 +2044,7 @@ DEFUN ("x-selection-owner-p", Fx_selection_owner_p, Sx_selection_owner_p, doc: /* Whether the current Emacs process owns the given X Selection. The arg should be the name of the selection in question, typically one of the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. -(Those are literal upper-case symbol names, since that's what X expects.) +\(Those are literal upper-case symbol names, since that's what X expects.) For convenience, the symbol nil is the same as `PRIMARY', and t is the same as `SECONDARY'. @@ -2620,7 +2620,7 @@ and the local selection value (whatever was given to `x-own-selection-internal'). The function should return the value to send to the X server -(typically a string). A return value of nil +\(typically a string). A return value of nil means that the conversion could not be done. A return value which is the symbol `NULL' means that a side-effect was executed, @@ -2629,10 +2629,10 @@ and there is no meaningful selection value. */); DEFVAR_LISP ("x-lost-selection-functions", Vx_lost_selection_functions, doc: /* A list of functions to be called when Emacs loses an X selection. -(This happens when some other X client makes its own selection +\(This happens when some other X client makes its own selection or when a Lisp program explicitly clears the selection.) The functions are called with one argument, the selection type -(a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'). */); +\(a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'). */); Vx_lost_selection_functions = Qnil; DEFVAR_LISP ("x-sent-selection-functions", Vx_sent_selection_functions, diff --git a/src/xwidget.c b/src/xwidget.c index f436e95..e8f3f29 100644 --- a/src/xwidget.c +++ b/src/xwidget.c @@ -387,9 +387,12 @@ webkit_download_cb (WebKitWebView *webkitwebview, } static gboolean -webkit_mime_type_policy_typedecision_requested_cb -(WebKitWebView *webView, WebKitWebFrame *frame, WebKitNetworkRequest *request, - gchar *mimetype, WebKitWebPolicyDecision *policy_decision, gpointer user_data) +webkit_mime_type_policy_typedecision_requested_cb (WebKitWebView *webView, + WebKitWebFrame *frame, + WebKitNetworkRequest *request, + gchar *mimetype, + WebKitWebPolicyDecision *policy_decision, + gpointer user_data) { /* This function makes webkit send a download signal for all unknown mime types. TODO: Defer the decision to Lisp, so that it's @@ -404,10 +407,12 @@ webkit_mime_type_policy_typedecision_requested_cb } static gboolean -webkit_new_window_policy_decision_requested_cb -(WebKitWebView *webView, WebKitWebFrame *frame, WebKitNetworkRequest *request, - WebKitWebNavigationAction *navigation_action, - WebKitWebPolicyDecision *policy_decision, gpointer user_data) +webkit_new_window_policy_decision_requested_cb (WebKitWebView *webView, + WebKitWebFrame *frame, + WebKitNetworkRequest *request, + WebKitWebNavigationAction *navigation_action, + WebKitWebPolicyDecision *policy_decision, + gpointer user_data) { struct xwidget *xw = g_object_get_data (G_OBJECT (webView), XG_XWIDGET); webkit_web_navigation_action_get_original_uri (navigation_action); @@ -419,10 +424,12 @@ webkit_new_window_policy_decision_requested_cb } static gboolean -webkit_navigation_policy_decision_requested_cb -(WebKitWebView *webView, WebKitWebFrame *frame, WebKitNetworkRequest *request, - WebKitWebNavigationAction *navigation_action, - WebKitWebPolicyDecision *policy_decision, gpointer user_data) +webkit_navigation_policy_decision_requested_cb (WebKitWebView *webView, + WebKitWebFrame *frame, + WebKitNetworkRequest *request, + WebKitWebNavigationAction *navigation_action, + WebKitWebPolicyDecision *policy_decision, + gpointer user_data) { struct xwidget *xw = g_object_get_data (G_OBJECT (webView), XG_XWIDGET); store_xwidget_event_string (xw, "navigation-policy-decision-requested", --------------070905070406070408070902-- From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 19:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145703286230665 (code B ref 22884); Thu, 03 Mar 2016 19:22:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 19:21:02 +0000 Received: from localhost ([127.0.0.1]:60467 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abYo2-0007yT-Df for submit@debbugs.gnu.org; Thu, 03 Mar 2016 14:21:02 -0500 Received: from mail.muc.de ([193.149.48.3]:15443) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abYo0-0007xm-7F for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 14:21:00 -0500 Received: (qmail 80679 invoked by uid 3782); 3 Mar 2016 19:20:59 -0000 Received: from acm.muc.de (p579E89EE.dip0.t-ipconnect.de [87.158.137.238]) by colin.muc.de (tmda-ofmipd) with ESMTP; Thu, 03 Mar 2016 20:20:57 +0100 Received: (qmail 486 invoked by uid 1000); 3 Mar 2016 19:23:30 -0000 Date: Thu, 3 Mar 2016 19:23:30 +0000 Message-ID: <20160303192330.GA3822@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56D87A6E.8090202@cs.ucla.edu> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. First of all, congratulations on getting such a long patch prepared by 10 o'clock in the morning. :-) On Thu, Mar 03, 2016 at 09:54:54AM -0800, Paul Eggert wrote: > On 03/03/2016 04:49 AM, Alan Mackenzie wrote: > > Inserting a backslash at the beginning of L14 solves the problem, as > > does setting open-paren-in-column-0-is-defun-start to nil. > I presume the latter is not really on the table. No, indeed not. > We can't put a backslash there, as it's license text and shouldn't be > fiddled with in that way. We could fold it differently (as in the > attached proposed patch, which does this only for config.h and > friends). Why only for the one file? The performance hit comes from the amount of contiguous syntactic whitespace following the "failed" comment. Have you checked this is the only file with so much SWS? The effect of of these "failed" comments on CC Mode is as follows: c-beginning-of-statement-1 uses c-backward-syntactic-ws. The latter goes back to just before the ostensible "//" comment marker in the GNU URL, that is, just after "http:". c-beginning-of-statement-1 then moves back over the "label", then moves back one sexp at a time, looking for statement boundaries, keywords, etc. It recognises "for" in "for more details" as a C keyword, assumes that "more" is the parenthetical expression and that "details" is the beginning of the substatement. Although this (probably) won't hit the performance in most files, it is going to throw out the syntactic analysis sometimes. Is there any chance you could put in the refolding of the copyright message into all the files, to avoid this? By the way, I've tried out your patch. It applies fine to the emacs-25 branch, it builds OK, and the new Emacs seems to start and run OK. > > The next problem is that there are around 324 occurrences of "(" at > > column zero in the src directory, and quite a few in lib and lib-src. > > Most of them are in comments, some of them are parameter lists, and > > some of them (e.g. in lisp.h) are wierd constructs of some sort. These > > contravene GNU coding standards and really need sorting out. > The lisp.h constructs are weird, but they don't violate the GNU coding > standards as the parens at the start of a line do indeed mark the start > of a function definition. OK. Could you give me a clue as to what they mean, please? For example, in INLINE EMACS_INT (XLI) (Lisp_Object o) { return lisp_h_XLI (o); } , what does "(XLI)" do? It looks like a cast, but it's in the wrong place to be a cast. It can't be an expansion of the CPP macro "XLI", surely, lacking, as it does, an argument. What is this thing? > Do these parens break cc-mode somehow? If so, what's the breakage? and > how would you suggest reformatting lisp.h (and/or fixing cc-mode)? No, they don't cause breakage. > The attached proposed patch fixes all the problems I found, except (1) > it leaves license wording alone for the most part (config.h excepted, > since the performance disaster is there), and (2) it leaves the weird > lisp.h constructs alone as per the above paragraph. Is this the sort of > thing you had in mind (except I guess we need to fix (1) too?). Yes. I was half way through constructing such a patch myself, but you beat me to it. :-) As I said above, I'd be happier if you could fix the license text in all the files. It cannot be too much work (a short sed script, or something similar). [ .... ] -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 20:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14570375316236 (code B ref 22884); Thu, 03 Mar 2016 20:39:02 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 20:38:51 +0000 Received: from localhost ([127.0.0.1]:60515 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aba1K-0001cW-N1 for submit@debbugs.gnu.org; Thu, 03 Mar 2016 15:38:50 -0500 Received: from eggs.gnu.org ([208.118.235.92]:52029) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aba1J-0001cJ-Ga for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 15:38:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aba1B-0005gO-69 for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 15:38:44 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60074) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aba1B-0005gH-30; Thu, 03 Mar 2016 15:38:41 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1476 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1aba1A-0005ED-AJ; Thu, 03 Mar 2016 15:38:40 -0500 Date: Thu, 03 Mar 2016 22:38:36 +0200 Message-Id: <83twknz48j.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <20160303192330.GA3822@acm.fritz.box> (message from Alan Mackenzie on Thu, 3 Mar 2016 19:23:30 +0000) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <20160303192330.GA3822@acm.fritz.box> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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 (-----) > Date: Thu, 3 Mar 2016 19:23:30 +0000 > From: Alan Mackenzie > Cc: 22884@debbugs.gnu.org > > OK. Could you give me a clue as to what they mean, please? For > example, in > > INLINE EMACS_INT > (XLI) (Lisp_Object o) > { > return lisp_h_XLI (o); > } > > , what does "(XLI)" do? It's an age-old method of calling a function without risking it being shadowed by a macro, AFAIK. > It can't be an expansion of the CPP macro "XLI", surely, lacking, as > it does, an argument. Exactly. And that's why it ensures a function will be called instead of the macro. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 20:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14570376566443 (code B ref 22884); Thu, 03 Mar 2016 20:41:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 20:40:56 +0000 Received: from localhost ([127.0.0.1]:60519 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aba3M-0001fr-4W for submit@debbugs.gnu.org; Thu, 03 Mar 2016 15:40:56 -0500 Received: from eggs.gnu.org ([208.118.235.92]:52627) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aba3L-0001fe-1a for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 15:40:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aba3C-0006B2-St for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 15:40:50 -0500 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,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60111) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aba3C-0006Ay-M0; Thu, 03 Mar 2016 15:40:46 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1480 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1aba3C-0008Sg-0J; Thu, 03 Mar 2016 15:40:46 -0500 Date: Thu, 03 Mar 2016 22:40:42 +0200 Message-Id: <83si07z451.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <20160303124910.GA2852@acm.fritz.box> (message from Alan Mackenzie on Thu, 3 Mar 2016 12:49:10 +0000) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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 (-----) > Date: Thu, 3 Mar 2016 12:49:10 +0000 > From: Alan Mackenzie > Cc: 22884@debbugs.gnu.org > > > emacs -Q config.h > > M-x goto-line RET 1661 RET / / > > > On my six-year-old desktop the second '/' takes about 10 seconds to > > echo. This sort of thing makes Emacs effectively unusable for editing > > config.h. > > The problem is in config.h. At line 14, inside a comment, appears the > following string: > "(at your option) any later version." > . The open paren is at column zero, so the fancy code in syntax.c then > fails to recognise the comment as a comment. I think we should change syntax.c to fix this. (Alternatively, CC mode could stop depending on it, but I doubt this is a viable alternative.) We cannot really tell people we don't support such files, as they are valid C code. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 20:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: acm@muc.de, 22884@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14570383177432 (code B ref 22884); Thu, 03 Mar 2016 20:52:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 20:51:57 +0000 Received: from localhost ([127.0.0.1]:60523 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abaE1-0001vn-7J for submit@debbugs.gnu.org; Thu, 03 Mar 2016 15:51:57 -0500 Received: from eggs.gnu.org ([208.118.235.92]:55488) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abaDz-0001vZ-EW for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 15:51:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1abaDr-0000c9-3l for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 15:51:50 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_05,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60286) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abaDr-0000c2-06; Thu, 03 Mar 2016 15:51:47 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1509 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1abaDq-00016c-AW; Thu, 03 Mar 2016 15:51:46 -0500 Date: Thu, 03 Mar 2016 22:51:42 +0200 Message-Id: <83povbz3mp.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <56D87A6E.8090202@cs.ucla.edu> (message from Paul Eggert on Thu, 3 Mar 2016 09:54:54 -0800) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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 (-----) > From: Paul Eggert > Date: Thu, 3 Mar 2016 09:54:54 -0800 > Cc: 22884@debbugs.gnu.org > > The attached proposed patch fixes all the problems I found, except (1) > it leaves license wording alone for the most part (config.h excepted, > since the performance disaster is there), and (2) it leaves the weird > lisp.h constructs alone as per the above paragraph. Is this the sort of > thing you had in mind (except I guess we need to fix (1) too?). Thanks. However, I'd rather we fixed CC Mode instead of "fixing" the sources it chokes on. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 21:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145704224313707 (code B ref 22884); Thu, 03 Mar 2016 21:58:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 21:57:23 +0000 Received: from localhost ([127.0.0.1]:60564 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abbFK-0003Z0-Pr for submit@debbugs.gnu.org; Thu, 03 Mar 2016 16:57:22 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:39102) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abbFI-0003Ym-4s for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 16:57:20 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id E485E1601A7; Thu, 3 Mar 2016 13:57:12 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id PDE65pRp9jgF; Thu, 3 Mar 2016 13:57:12 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 3E082160779; Thu, 3 Mar 2016 13:57:12 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id JM0LiyRKnqWZ; Thu, 3 Mar 2016 13:57:12 -0800 (PST) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 25B831601A7; Thu, 3 Mar 2016 13:57:12 -0800 (PST) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <20160303192330.GA3822@acm.fritz.box> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56D8B337.7000302@cs.ucla.edu> Date: Thu, 3 Mar 2016 13:57:11 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160303192330.GA3822@acm.fritz.box> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) 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.0 (/) On 03/03/2016 11:23 AM, Alan Mackenzie wrote: > Why only for the one file? Because I didn't have time to fix all the source files (I was about to rush off and teach a class....). It could easily be added, at least for files we maintain. Though, as Eli says, it'd be nicer if cc-mode didn't think lines beginning with '(' were relevant for function-start in C. > The performance hit comes from the amount of contiguous syntactic > whitespace following the "failed" comment. Have you checked this is > the only file with so much SWS? No. It's easier for me to simply fix all instances of code that have '(' at line start. I can propose a more-complete patch along those lines. > > OK. Could you give me a clue as to what they mean, please? For > example, in > > INLINE EMACS_INT > (XLI) (Lisp_Object o) > { > return lisp_h_XLI (o); > } > > , what does "(XLI)" do? It defines a function named 'XLI' even though there's also a function-like macro named 'XLI', without expanding the macro. > No, they don't cause breakage. Good, in that case we can leave them alone. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 22:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Eli Zaretskii Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145704392116576 (code B ref 22884); Thu, 03 Mar 2016 22:26:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 22:25:21 +0000 Received: from localhost ([127.0.0.1]:60574 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abbgP-0004JI-EH for submit@debbugs.gnu.org; Thu, 03 Mar 2016 17:25:21 -0500 Received: from mail.muc.de ([193.149.48.3]:30945) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abbgN-0004J6-Cp for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 17:25:20 -0500 Received: (qmail 24455 invoked by uid 3782); 3 Mar 2016 22:25:18 -0000 Received: from acm.muc.de (p579E89EE.dip0.t-ipconnect.de [87.158.137.238]) by colin.muc.de (tmda-ofmipd) with ESMTP; Thu, 03 Mar 2016 23:25:17 +0100 Received: (qmail 1171 invoked by uid 1000); 3 Mar 2016 22:27:49 -0000 Date: Thu, 3 Mar 2016 22:27:49 +0000 Message-ID: <20160303222749.GB3822@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <83si07z451.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <83si07z451.fsf@gnu.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Eli. On Thu, Mar 03, 2016 at 10:40:42PM +0200, Eli Zaretskii wrote: > > Date: Thu, 3 Mar 2016 12:49:10 +0000 > > From: Alan Mackenzie > > Cc: 22884@debbugs.gnu.org > > > emacs -Q config.h > > > M-x goto-line RET 1661 RET / / > > > On my six-year-old desktop the second '/' takes about 10 seconds to > > > echo. This sort of thing makes Emacs effectively unusable for editing > > > config.h. > > The problem is in config.h. At line 14, inside a comment, appears the > > following string: > > "(at your option) any later version." > > . The open paren is at column zero, so the fancy code in syntax.c then > > fails to recognise the comment as a comment. > I think we should change syntax.c to fix this. In particular, get syntax.c to recognise open parens in column zero as defun starts _ONLY_ when they're not in strings or comments. This will clearly impact performance to some (unknown) degree. > (Alternatively, CC mode could stop depending on it, but I doubt this is > a viable alternative.) This was tried for some time, by internally binding open-paren-in-column-0-is-defun-start to nil. It cost too much in performance on large files (ask Martin!). > We cannot really tell people we don't support such files, as they are > valid C code. I agree. -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 22:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145704584019398 (code B ref 22884); Thu, 03 Mar 2016 22:58:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 22:57:20 +0000 Received: from localhost ([127.0.0.1]:60580 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abcBM-00052o-3E for submit@debbugs.gnu.org; Thu, 03 Mar 2016 17:57:20 -0500 Received: from mail.muc.de ([193.149.48.3]:11349) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abcBK-00052g-HF for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 17:57:18 -0500 Received: (qmail 32289 invoked by uid 3782); 3 Mar 2016 22:57:17 -0000 Received: from acm.muc.de (p579E89EE.dip0.t-ipconnect.de [87.158.137.238]) by colin.muc.de (tmda-ofmipd) with ESMTP; Thu, 03 Mar 2016 23:57:16 +0100 Received: (qmail 1245 invoked by uid 1000); 3 Mar 2016 22:59:49 -0000 Date: Thu, 3 Mar 2016 22:59:49 +0000 Message-ID: <20160303225949.GC3822@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <20160303192330.GA3822@acm.fritz.box> <56D8B337.7000302@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56D8B337.7000302@cs.ucla.edu> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. On Thu, Mar 03, 2016 at 01:57:11PM -0800, Paul Eggert wrote: > On 03/03/2016 11:23 AM, Alan Mackenzie wrote: > > Why only for the one file? > Because I didn't have time to fix all the source files .... It could > easily be added, at least for files we maintain. Though, as Eli says, > it'd be nicer if cc-mode didn't think lines beginning with '(' were > relevant for function-start in C. This is an Emacs thing rather than a CC Mode one. It's all about how syntax.c goes backwards over a comment. You've just gone back over a comment ender, so you start searching for the comment starter, but when do you stop and give up? Currently the answer is at a paren in column zero (unless open-paren-in-column-0-is-defun-start is nil). It's a difficult problem. In previous versions of CC Mode, open-paren-..-start was bound to nil internally, "solving" the problem, but at an unacceptable cost in performance, particularly when editing later portions of a large file. > > The performance hit comes from the amount of contiguous syntactic > > whitespace following the "failed" comment. Have you checked this is > > the only file with so much SWS? > No. It's easier for me to simply fix all instances of code that have '(' > at line start. I can propose a more-complete patch along those lines. OK. > > OK. Could you give me a clue as to what they mean, please? For > > example, in > > INLINE EMACS_INT > > (XLI) (Lisp_Object o) > > { > > return lisp_h_XLI (o); > > } > > , what does "(XLI)" do? > It defines a function named 'XLI' even though there's also a > function-like macro named 'XLI', without expanding the macro. Ah, thank you! Now you've explained it, it's obvious. -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 23:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Eli Zaretskii Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145704695524302 (code B ref 22884); Thu, 03 Mar 2016 23:16:01 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 23:15:55 +0000 Received: from localhost ([127.0.0.1]:60591 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abcTK-0006Jc-SJ for submit@debbugs.gnu.org; Thu, 03 Mar 2016 18:15:55 -0500 Received: from mail.muc.de ([193.149.48.3]:11049) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abcTJ-0006Hj-6I for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 18:15:53 -0500 Received: (qmail 6638 invoked by uid 3782); 3 Mar 2016 23:15:52 -0000 Received: from acm.muc.de (p579E89EE.dip0.t-ipconnect.de [87.158.137.238]) by colin.muc.de (tmda-ofmipd) with ESMTP; Fri, 04 Mar 2016 00:15:50 +0100 Received: (qmail 1311 invoked by uid 1000); 3 Mar 2016 23:18:23 -0000 Date: Thu, 3 Mar 2016 23:18:23 +0000 Message-ID: <20160303231823.GD3822@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <83si07z451.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <83si07z451.fsf@gnu.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Eli. On Thu, Mar 03, 2016 at 10:40:42PM +0200, Eli Zaretskii wrote: > > Date: Thu, 3 Mar 2016 12:49:10 +0000 > > From: Alan Mackenzie > > Cc: 22884@debbugs.gnu.org > > > emacs -Q config.h > > > M-x goto-line RET 1661 RET / / > > > On my six-year-old desktop the second '/' takes about 10 seconds to > > > echo. This sort of thing makes Emacs effectively unusable for editing > > > config.h. > > The problem is in config.h. At line 14, inside a comment, appears the > > following string: > > "(at your option) any later version." > > . The open paren is at column zero, so the fancy code in syntax.c then > > fails to recognise the comment as a comment. > I think we should change syntax.c to fix this. (Alternatively, CC > mode could stop depending on it, but I doubt this is a viable > alternative.) We cannot really tell people we don't support such > files, as they are valid C code. Would it be practicable to mark comments with text properties? Say, a property called `comment-depth' which would be either nil (meaning currently unknown), 0 (definitely not in a comment), 1 (definitely in a comment), 2 (in a nested comment), 3, ...... ? That way we could always scan comments in the forwards direction (which is easy) - if we need to go backwards over a comment without the property, we can just go back to a known point and scan forward. Or would this just overwhelm the text property mechanism? -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 03 Mar 2016 23:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Eli Zaretskii Cc: acm@muc.de, 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145704866830618 (code B ref 22884); Thu, 03 Mar 2016 23:45:02 +0000 Received: (at 22884) by debbugs.gnu.org; 3 Mar 2016 23:44:28 +0000 Received: from localhost ([127.0.0.1]:60618 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abcuy-0007xm-4c for submit@debbugs.gnu.org; Thu, 03 Mar 2016 18:44:28 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:44987) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abcuw-0007xY-Fg for 22884@debbugs.gnu.org; Thu, 03 Mar 2016 18:44:27 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 92237160779; Thu, 3 Mar 2016 15:44:20 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id n1K-JLcdZMa5; Thu, 3 Mar 2016 15:44:06 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 7E755160FF5; Thu, 3 Mar 2016 15:44:06 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 7thBaW1__Sbu; Thu, 3 Mar 2016 15:44:06 -0800 (PST) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 300B4160779; Thu, 3 Mar 2016 15:44:06 -0800 (PST) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56D8CC45.2090102@cs.ucla.edu> Date: Thu, 3 Mar 2016 15:44:05 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <83povbz3mp.fsf@gnu.org> Content-Type: multipart/mixed; boundary="------------060606010004080908000709" 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" This is a multi-part message in MIME format. --------------060606010004080908000709 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 03/03/2016 12:51 PM, Eli Zaretskii wrote: > I'd rather we fixed CC Mode instead of "fixing" the > sources it chokes on. Me too, but I don't see a straightforward cc-mode fix for this. Even if we come up with a fix, for some time we'll have the problem of people using old versions of Emacs to look at the new Emacs source code. And until there's a fix Emacs is reeeaally sluggish when editing config.h at least. So I'd rather fix at least config.h, and (since I've already done the work) I'm also mildly inclined to fix the other files to be consistent, as in the attached patch (which also covers licenses in the other .c and .h files). --------------060606010004080908000709 Content-Type: text/plain; charset=UTF-8; name="0001-Rework-C-source-files-to-avoid.fix" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Rework-C-source-files-to-avoid.fix" RnJvbSBjN2M1ZmE3ZTAxNDkyOTYzYWFiMTQyZDkxYjAwY2I4NzJjYjQ5Njg2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUaHUsIDMgTWFyIDIwMTYgMTU6NDI6MjggLTA4MDAKU3ViamVjdDogW1BBVENI XSBSZXdvcmsgQyBzb3VyY2UgZmlsZXMgdG8gYXZvaWQgXigKTUlNRS1WZXJzaW9uOiAxLjAK Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CkNvbnRlbnQtVHJhbnNm ZXItRW5jb2Rpbmc6IDhiaXQKCldvcmsgYXJvdW5kIEJ1ZyMyMjg4NCBieSByZXdvcmRpbmcg Y29tbWVudHMgYW5kIHN0cmluZ3MgdG8gYXZvaWQg4oCYKOKAmQphdCB0aGUgc3RhcnQgb2Yg YSBsaW5lIHVubGVzcyBpdCBzdGFydHMgYSBmdW5jdGlvbi4gIEFsdGhvdWdoIHRoaXMKY2hh bmdlIGlzIGEgaGFjayBhbmQgd2Ugc2hvdWxkIGZpeCBjYy1tb2Rl4oCZcyBwZXJmb3JtYW5j ZSBmb3IgQyBmaWxlcwp0aGF0IGhhdmUg4oCYKOKAmSBhdCB0aGUgc3RhcnQgb2YgYSBsaW5l IGluIGEgY29tbWVudCBvciBzdHJpbmcsIHRoZQpjaGFuZ2UgZG9lcyBmaXggdGhlIGltbWVk aWF0ZSBwcm9ibGVtLgotLS0KIGFkbWluL2FsbG9jLWNvbG9ycy5jICAgICAgICAgICAgICAg ICAgfCAgNCArKy0tCiBjb25maWd1cmUuYWMgICAgICAgICAgICAgICAgICAgICAgICAgIHwg IDQgKystLQogbGliLXNyYy9lYnJvd3NlLmMgICAgICAgICAgICAgICAgICAgICB8ICA0ICsr LS0KIGxpYi1zcmMvZW1hY3NjbGllbnQuYyAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBs aWItc3JjL2V0YWdzLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDggKysrKy0tLS0KIGxp Yi1zcmMvaGV4bC5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgNyArKystLS0tCiBsaWIt c3JjL21ha2UtZG9jZmlsZS5jICAgICAgICAgICAgICAgIHwgIDQgKystLQogbGliLXNyYy9t b3ZlbWFpbC5jICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIGxpYi1zcmMvbnRsaWIu YyAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBsaWItc3JjL250bGliLmggICAg ICAgICAgICAgICAgICAgICAgIHwgIDUgKystLS0KIGxpYi1zcmMvcG9wLmMgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKy0tCiBsaWItc3JjL3BvcC5oICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDQgKystLQogbGliLXNyYy9wcm9maWxlLmMgICAgICAgICAgICAgICAg ICAgICB8ICA0ICsrLS0KIGxpYi1zcmMvdXBkYXRlLWdhbWUtc2NvcmUuYyAgICAgICAgICAg fCAgNCArKy0tCiBtb2R1bGVzL21vZC10ZXN0L21vZC10ZXN0LmMgICAgICAgICAgIHwgIDQg KystLQogbXNkb3MvaW50dHlwZXMuaCAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0K IG50L2FkZHBtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBudC9j bWRwcm94eS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogbnQvZGRlY2xp ZW50LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsrLS0tCiBudC9pbmMvZ3JwLmgg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKystLS0KIG50L2luYy9pbnR0eXBlcy5o ICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBudC9pbmMvbGFuZ2luZm8uaCAgICAg ICAgICAgICAgICAgICAgIHwgIDUgKystLS0KIG50L2luYy9tcy13MzIuaCAgICAgICAgICAg ICAgICAgICAgICAgfCAgNCArKy0tCiBudC9pbmMvbmxfdHlwZXMuaCAgICAgICAgICAgICAg ICAgICAgIHwgIDQgKystLQogbnQvaW5jL3N0ZGludC5oICAgICAgICAgICAgICAgICAgICAg ICB8ICA0ICsrLS0KIG50L2luYy9zeXMvc29ja2V0LmggICAgICAgICAgICAgICAgICAgfCAg NCArKy0tCiBudC9pbmMvc3lzL3N0YXQuaCAgICAgICAgICAgICAgICAgICAgIHwgIDQgKyst LQogbnQvaW5jL3N5cy93YWl0LmggICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIG50 L3ByZXByZXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysrKystLS0tLS0t CiBudC9ydW5lbWFjcy5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogb2xk WE1lbnUvQWN0aXZhdGUuYyAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIG9sZFhNZW51 L0NyZWF0ZS5jICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBvbGRYTWVudS9GaW5k U2VsLmMgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogb2xkWE1lbnUvSW50ZXJuYWwu YyAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIG9sZFhNZW51L2luc3F1ZS5jICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvYWxsb2MuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDQgKystLQogc3JjL2F0aW1lci5jICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA0ICsrLS0KIHNyYy9hdGltZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNCArKy0tCiBzcmMvYmlkaS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KystLQogc3JjL2Jsb2NraW5wdXQuaCAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0K IHNyYy9idWZmZXIuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxOCArKysrKysrKyst LS0tLS0tLS0KIHNyYy9idWZmZXIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAyNiAr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogc3JjL2J5dGVjb2RlLmMgICAgICAgICAgICAg ICAgICAgICAgICB8ICA4ICsrKystLS0tCiBzcmMvY2FsbGludC5jICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDQgKystLQogc3JjL2NhbGxwcm9jLmMgICAgICAgICAgICAgICAgICAg ICAgICB8ICA4ICsrKystLS0tCiBzcmMvY2FzZWZpZGRsZS5jICAgICAgICAgICAgICAgICAg ICAgIHwgIDQgKystLQogc3JjL2Nhc2V0YWIuYyAgICAgICAgICAgICAgICAgICAgICAgICB8 ICA0ICsrLS0KIHNyYy9jYXRlZ29yeS5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgOCAr KysrLS0tLQogc3JjL2NhdGVnb3J5LmggICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsr LS0KIHNyYy9jY2wuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBz cmMvY2NsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2No YXJhY3Rlci5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9jaGFyYWN0 ZXIuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvY2hhcnNldC5jICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2NoYXJzZXQuaCAgICAgICAg ICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9jaGFydGFiLmMgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgNiArKystLS0KIHNyYy9jbS5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgNCArKy0tCiBzcmMvY20uaCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgIDQgKystLQogc3JjL2NtZHMuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICA2ICsrKy0tLQogc3JjL2NvZGluZy5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA4 ICsrKystLS0tCiBzcmMvY29kaW5nLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KystLQogc3JjL2NvbW1hbmRzLmggICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0K IHNyYy9jb21wb3NpdGUuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMv Y29tcG9zaXRlLmggICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2NvbmZf cG9zdC5oICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9jeWd3MzIuYyAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvY3lndzMyLmggICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2RhdGEuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICA2ICsrKy0tLQogc3JjL2RidXNiaW5kLmMgICAgICAgICAgICAg ICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9kZWNvbXByZXNzLmMgICAgICAgICAgICAgICAg ICAgICAgfCAgNCArKy0tCiBzcmMvZGlyZWQuYyAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogc3JjL2Rpc3BleHRlcm4uaCAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICsrLS0KIHNyYy9kaXNwbmV3LmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNiArKyst LS0KIHNyYy9kaXNwdGFiLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBz cmMvZG9jLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKysrLS0tCiBzcmMv ZG9wcm50LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2Rvc2Zu cy5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9kb3NmbnMuaCAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgNSArKy0tLQogc3JjL2R5bmxpYi5jICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9keW5saWIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvZWRpdGZucy5jICAgICAgICAgICAgICAg ICAgICAgICAgIHwgMTAgKysrKystLS0tLQogc3JjL2VtYWNzLWljb24uaCAgICAgICAgICAg ICAgICAgICAgICB8ICA1ICsrLS0tCiBzcmMvZW1hY3MtbW9kdWxlLmMgICAgICAgICAgICAg ICAgICAgIHwgIDQgKystLQogc3JjL2VtYWNzLW1vZHVsZS5oICAgICAgICAgICAgICAgICAg ICB8ICA0ICsrLS0KIHNyYy9lbWFjcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg NCArKy0tCiBzcmMvZW1hY3NndGtmaXhlZC5jICAgICAgICAgICAgICAgICAgIHwgIDQgKyst LQogc3JjL2VtYWNzZ3RrZml4ZWQuaCAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNy Yy9ldmFsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgOCArKysrLS0tLQogc3Jj L2ZpbGVpby5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIyICsrKysrKysrKysrLS0t LS0tLS0tLS0KIHNyYy9maWxlbG9jay5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCAr Ky0tCiBzcmMvZmlyc3RmaWxlLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQog c3JjL2Zsb2F0Zm5zLmMgICAgICAgICAgICAgICAgICAgICAgICB8IDE0ICsrKysrKystLS0t LS0tCiBzcmMvZm5zLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMjYgKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0KIHNyYy9mb250LmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgOCArKysrLS0tLQogc3JjL2ZvbnQuaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA0ICsrLS0KIHNyYy9mb250c2V0LmMgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNCArKy0tCiBzcmMvZm9udHNldC5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KystLQogc3JjL2ZyYW1lLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2ICsrKy0t LQogc3JjL2ZyYW1lLmggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNy Yy9mcmluZ2UuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNiArKystLS0KIHNyYy9m dGNyZm9udC5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvZnRmb250 LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2Z0Zm9udC5oICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsrLS0tCiBzcmMvZnR4Zm9udC5jICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2dldHBhZ2VzaXplLmggICAgICAg ICAgICAgICAgICAgICB8ICA1ICsrLS0tCiBzcmMvZ2ZpbGVub3RpZnkuYyAgICAgICAgICAg ICAgICAgICAgIHwgIDQgKystLQogc3JjL2dudXRscy5jICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA0ICsrLS0KIHNyYy9nbnV0bHMuaCAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNCArKy0tCiBzcmMvZ3RrdXRpbC5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KystLQogc3JjL2d0a3V0aWwuaCAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0K IHNyYy9pbWFnZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMv aW5kZW50LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2luZGVu dC5oICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9pbm90aWZ5LmMg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgNiArKystLS0KIHNyYy9pbnNkZWwuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvaW50ZXJ2YWxzLmMgICAgICAg ICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL2ludGVydmFscy5oICAgICAgICAgICAg ICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9rZXlib2FyZC5jICAgICAgICAgICAgICAgICAg ICAgICAgfCAgOCArKysrLS0tLQogc3JjL2tleWJvYXJkLmggICAgICAgICAgICAgICAgICAg ICAgICB8ICA0ICsrLS0KIHNyYy9rZXltYXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAg fCAxMCArKysrKy0tLS0tCiBzcmMva2V5bWFwLmggICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogc3JjL2txdWV1ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEy ICsrKysrLS0tLS0tLQogc3JjL2xhc3RmaWxlLmMgICAgICAgICAgICAgICAgICAgICAgICB8 ICA0ICsrLS0KIHNyYy9saXNwLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCAr Ky0tCiBzcmMvbHJlYWQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKysrLS0t CiBzcmMvbWFjZm9udC5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKystLS0KIHNy Yy9tYWNmb250Lm0gICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvbWFj cm9zLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL21hY3Jvcy5o ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9tYXJrZXIuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvbWVudS5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDggKysrKy0tLS0KIHNyYy9tZW51LmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvbWluaWJ1Zi5jICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDYgKysrLS0tCiBzcmMvbXNkb3MuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDQgKystLQogc3JjL21zZG9zLmggICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICA1ICsrLS0tCiBzcmMvbnNmbnMubSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg MTIgKysrKysrLS0tLS0tCiBzcmMvbnNmb250Lm0gICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogc3JjL25zZ3VpLmggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICsrLS0KIHNyYy9uc2ltYWdlLm0gICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0t CiBzcmMvbnNtZW51Lm0gICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3Jj L25zc2VsZWN0Lm0gICAgICAgICAgICAgICAgICAgICAgICB8IDEwICsrKysrLS0tLS0KIHNy Yy9uc3Rlcm0uaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMiArKysrKystLS0tLS0K IHNyYy9uc3Rlcm0ubSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMv cHJpbnQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDggKysrKy0tLS0KIHNyYy9w cm9jZXNzLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAyMiArKysrKysrKysrKy0tLS0t LS0tLS0tCiBzcmMvcHJvY2Vzcy5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKyst LQogc3JjL3Byb2ZpbGVyLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNy Yy9wdXJlc2l6ZS5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvcmFs bG9jLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3JlZ2lvbi1j YWNoZS5jICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9yZWdpb24tY2FjaGUu aCAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvc2Nyb2xsLmMgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3NlYXJjaC5jICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9zaGVhcC5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgNCArKy0tCiBzcmMvc291bmQuYyAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogc3JjL3N5bnRheC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICsrLS0KIHNyYy9zeW50YXguaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0t CiBzcmMvc3lzZGVwLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3Jj L3N5c3NlbGVjdC5oICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9zeXNz aWduYWwuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvc3lzc3RkaW8u aCAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3N5c3RpbWUuaCAgICAg ICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy9zeXN0dHkuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvc3lzd2FpdC5oICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDQgKystLQogc3JjL3Rlcm0uYyAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA0ICsrLS0KIHNyYy90ZXJtY2hhci5oICAgICAgICAgICAgICAgICAgICAgICAg fCAgNCArKy0tCiBzcmMvdGVybWhvb2tzLmggICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KystLQogc3JjL3Rlcm1pbmFsLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0K IHNyYy90ZXJtaW5mby5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMv dGVybW9wdHMuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3RleHRw cm9wLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA2ICsrKy0tLQogc3JjL3RwYXJhbS5o ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy91bmRvLmMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvdW5leGFpeC5jICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3VuZXhjb2ZmLmMgICAgICAgICAgICAg ICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy91bmV4Y3cuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgNCArKy0tCiBzcmMvdW5leGVsZi5jICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogc3JjL3VuZXhtYWNvc3guYyAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICsrLS0KIHNyYy91bmV4dzMyLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysr KystLS0tLS0tCiBzcmMvdm0tbGltaXQuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KystLQogc3JjL3cxNnNlbGVjdC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA2ICsrKy0t LQogc3JjL3czMi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNy Yy93MzIuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvdzMy Y29tbW9uLmggICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKysrLS0tCiBzcmMvdzMyY29u c29sZS5jICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3czMmZucy5jICAg ICAgICAgICAgICAgICAgICAgICAgICB8IDEyICsrKysrKy0tLS0tLQogc3JjL3czMmZvbnQu YyAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy93MzJmb250LmggICAg ICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvdzMyZ3VpLmggICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3czMmhlYXAuYyAgICAgICAgICAgICAg ICAgICAgICAgICB8IDExICsrKysrLS0tLS0tCiBzcmMvdzMyaGVhcC5oICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3czMmluZXZ0LmMgICAgICAgICAgICAgICAg ICAgICAgICB8ICA0ICsrLS0KIHNyYy93MzJpbmV2dC5oICAgICAgICAgICAgICAgICAgICAg ICAgfCAgNCArKy0tCiBzcmMvdzMybWVudS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwg IDQgKystLQogc3JjL3czMm5vdGlmeS5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsr LS0KIHNyYy93MzJwcm9jLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBz cmMvdzMycmVnLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3cz MnNlbGVjdC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy93MzJzZWxl Y3QuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvdzMydGVybS5jICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3czMnRlcm0uaCAgICAgICAg ICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy93MzJ1bmlzY3JpYmUuYyAgICAgICAg ICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMvdzMyeGZucy5jICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDQgKystLQogc3JjL3dpZGdldC5jICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICA0ICsrLS0KIHNyYy93aWRnZXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg NCArKy0tCiBzcmMvd2lkZ2V0cHJ2LmggICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKyst LQogc3JjL3dpbmRvdy5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEwICsrKysrLS0t LS0KIHNyYy93aW5kb3cuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBz cmMveGRpc3AuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTAgKysrKystLS0tLQog c3JjL3hmYWNlcy5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEwICsrKysrLS0tLS0K IHNyYy94Zm5zLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMiArKysrKystLS0t LS0KIHNyYy94Zm9udC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBz cmMveGZ0Zm9udC5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3hn c2VsZWN0LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy94Z3NlbGVj dC5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMveG1lbnUuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogc3JjL3htbC5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy94cmRiLmMgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgNCArKy0tCiBzcmMveHNlbGVjdC5jICAgICAgICAgICAgICAgICAg ICAgICAgIHwgMTYgKysrKysrKystLS0tLS0tLQogc3JjL3hzZXR0aW5ncy5jICAgICAgICAg ICAgICAgICAgICAgICB8ICA0ICsrLS0KIHNyYy94c2V0dGluZ3MuaCAgICAgICAgICAgICAg ICAgICAgICAgfCAgNCArKy0tCiBzcmMveHNtZm5zLmMgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgIDQgKystLQogc3JjL3h0ZXJtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICA0ICsrLS0KIHNyYy94dGVybS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCAr Ky0tCiBzcmMveHdpZGdldC5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzMgKysrKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCiBzcmMveHdpZGdldC5oICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDQgKystLQogdGVzdC9ldGFncy9jLXNyYy9lbWFjcy9zcmMva2V5 Ym9hcmQuYyB8ICA0ICsrLS0KIHRlc3QvZXRhZ3MvYy1zcmMvZW1hY3Mvc3JjL2xpc3AuaCAg ICAgfCAgNCArKy0tCiB0ZXN0L2V0YWdzL2Mtc3JjL2V0YWdzLmMgICAgICAgICAgICAgIHwg IDggKysrKy0tLS0KIDIyOSBmaWxlcyBjaGFuZ2VkLCA2MTggaW5zZXJ0aW9ucygrKSwgNjI3 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FkbWluL2FsbG9jLWNvbG9ycy5jIGIvYWRt aW4vYWxsb2MtY29sb3JzLmMKaW5kZXggOWY2MTYxZS4uMzE1OGNmNCAxMDA2NDQKLS0tIGEv YWRtaW4vYWxsb2MtY29sb3JzLmMKKysrIGIvYWRtaW4vYWxsb2MtY29sb3JzLmMKQEAgLTYs OCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNz IGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2Rp ZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh dCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91 dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9jb25maWd1cmUu YWMgYi9jb25maWd1cmUuYWMKaW5kZXggZDQyYjQyZS4uMzcwY2I1NCAxMDA2NDQKLS0tIGEv Y29uZmlndXJlLmFjCisrKyBiL2NvbmZpZ3VyZS5hYwpAQCAtNTE5NCw4ICs1MTk0LDggQEAg VGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBz b2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL2xpYi1zcmMvZWJyb3dzZS5jIGIv bGliLXNyYy9lYnJvd3NlLmMKaW5kZXggY2IwOWFiOC4uYzU5MTgxZiAxMDA2NDQKLS0tIGEv bGliLXNyYy9lYnJvd3NlLmMKKysrIGIvbGliLXNyYy9lYnJvd3NlLmMKQEAgLTYsOCArNiw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9saWItc3JjL2VtYWNzY2xp ZW50LmMgYi9saWItc3JjL2VtYWNzY2xpZW50LmMKaW5kZXggYzdjZWY4YS4uZGQ2NmQzNCAx MDA2NDQKLS0tIGEvbGliLXNyYy9lbWFjc2NsaWVudC5jCisrKyBiL2xpYi1zcmMvZW1hY3Nj bGllbnQuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNz LgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdp dCBhL2xpYi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCAxODJjYjRjLi4w Njc2MGJhIDEwMDY0NAotLS0gYS9saWItc3JjL2V0YWdzLmMKKysrIGIvbGliLXNyYy9ldGFn cy5jCkBAIC0zNSw4ICszNSw4IEBAIFRoaXMgZmlsZSBpcyBub3QgY29uc2lkZXJlZCBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBUaGlzIHByb2dy YW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCkBAIC02ODAsOCArNjgwLDggQEAgc3RhdGljIGNvbnN0IGNoYXIgKk9iamNf c3VmZml4ZXMgW10gPQogc3RhdGljIGNvbnN0IGNoYXIgT2JqY19oZWxwIFtdID0KICJJbiBP YmplY3RpdmUgQyBjb2RlLCB0YWdzIGluY2x1ZGUgT2JqZWN0aXZlIEMgZGVmaW5pdGlvbnMg Zm9yIGNsYXNzZXMsXG5cCiBjbGFzcyBjYXRlZ29yaWVzLCBtZXRob2RzIGFuZCBwcm90b2Nv bHMuICBUYWdzIGZvciB2YXJpYWJsZXMgYW5kXG5cCi1mdW5jdGlvbnMgaW4gY2xhc3NlcyBh cmUgbmFtZWQgJ0NMQVNTOjpWQVJJQUJMRScgYW5kICdDTEFTUzo6RlVOQ1RJT04nLlxuXAot KFVzZSAtLWhlbHAgLS1sYW5nPWMgLS1sYW5nPW9iamMgLS1sYW5nPWphdmEgZm9yIGZ1bGwg aGVscC4pIjsKK2Z1bmN0aW9ucyBpbiBjbGFzc2VzIGFyZSBuYW1lZCAnQ0xBU1M6OlZBUklB QkxFJyBhbmQgJ0NMQVNTOjpGVU5DVElPTicuXAorXG4oVXNlIC0taGVscCAtLWxhbmc9YyAt LWxhbmc9b2JqYyAtLWxhbmc9amF2YSBmb3IgZnVsbCBoZWxwLikiOwogCiBzdGF0aWMgY29u c3QgY2hhciAqUGFzY2FsX3N1ZmZpeGVzIFtdID0KICAgeyAicCIsICJwYXMiLCBOVUxMIH07 CmRpZmYgLS1naXQgYS9saWItc3JjL2hleGwuYyBiL2xpYi1zcmMvaGV4bC5jCmluZGV4IDgz M2VhNTAuLjlhNWNhN2UgMTAwNjQ0Ci0tLSBhL2xpYi1zcmMvaGV4bC5jCisrKyBiL2xpYi1z cmMvaGV4bC5jCkBAIC0xLDE1ICsxLDE0IEBACiAvKiBDb252ZXJ0IGZpbGVzIGZvciBFbWFj cyBIZXhsIG1vZGUuCiAgICBDb3B5cmlnaHQgKEMpIDE5ODksIDIwMDEtMjAxNiBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIAotQXV0aG9yOiBLZWl0aCBHYWJyeWVsc2tpCi0o YWNjb3JkaW5nIHRvIGF1dGhvcnMuZWwpCitBdXRob3I6IEtlaXRoIEdhYnJ5ZWxza2kgKGFj Y29yZGluZyB0byBhdXRob3JzLmVsKQogCiBUaGlzIGZpbGUgaXMgbm90IGNvbnNpZGVyZWQg cGFydCBvZiBHTlUgRW1hY3MuCiAKIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQot dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogVGhpcyBw cm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm dWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvbGliLXNyYy9tYWtlLWRvY2ZpbGUuYyBiL2xp Yi1zcmMvbWFrZS1kb2NmaWxlLmMKaW5kZXggZTI2NjIwNy4uMzJlMzgxNyAxMDA2NDQKLS0t IGEvbGliLXNyYy9tYWtlLWRvY2ZpbGUuYworKysgYi9saWItc3JjL21ha2UtZG9jZmlsZS5j CkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvbGli LXNyYy9tb3ZlbWFpbC5jIGIvbGliLXNyYy9tb3ZlbWFpbC5jCmluZGV4IGViMTk2MmEuLjdm MjBlMjUgMTAwNjQ0Ci0tLSBhL2xpYi1zcmMvbW92ZW1haWwuYworKysgYi9saWItc3JjL21v dmVtYWlsLmMKQEAgLTgsOCArOCw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFj cy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBX QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1n aXQgYS9saWItc3JjL250bGliLmMgYi9saWItc3JjL250bGliLmMKaW5kZXggOTMxYTNhYi4u NGIyNTc5NiAxMDA2NDQKLS0tIGEvbGliLXNyYy9udGxpYi5jCisrKyBiL2xpYi1zcmMvbnRs aWIuYwpAQCAtOSw4ICs5LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L2xpYi1zcmMvbnRsaWIuaCBiL2xpYi1zcmMvbnRsaWIuaAppbmRleCBhMGMwZDQzLi5iNDlk YTc5IDEwMDY0NAotLS0gYS9saWItc3JjL250bGliLmgKKysrIGIvbGliLXNyYy9udGxpYi5o CkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMTAyLDQgKzEwMiwz IEBAIGludCBta29zdGVtcCAoY2hhciAqIHRlbXBsYXRlLCBpbnQgZmxhZ3MpOwogI3VuZGVm IF9XSU5TT0NLX0gKIAogLyogZW5kIG9mIG50bGliLmggKi8KLQpkaWZmIC0tZ2l0IGEvbGli LXNyYy9wb3AuYyBiL2xpYi1zcmMvcG9wLmMKaW5kZXggODEyYmQ0Yy4uNmUzYjZhOSAxMDA2 NDQKLS0tIGEvbGliLXNyYy9wb3AuYworKysgYi9saWItc3JjL3BvcC5jCkBAIC05LDggKzks OCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBm cmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBp dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz IHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg d2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvbGliLXNyYy9wb3AuaCBi L2xpYi1zcmMvcG9wLmgKaW5kZXggNGM2N2JkYy4uYjhjMjFmYyAxMDA2NDQKLS0tIGEvbGli LXNyYy9wb3AuaAorKysgYi9saWItc3JjL3BvcC5oCkBAIC03LDggKzcsOCBAQCBUaGlzIGZp bGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJl OiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi eQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0 aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05V IEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm dWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvbGliLXNyYy9wcm9maWxlLmMgYi9saWItc3Jj L3Byb2ZpbGUuYwppbmRleCBkYTYyMzJhLi4wZTYwMzc3IDEwMDY0NAotLS0gYS9saWItc3Jj L3Byb2ZpbGUuYworKysgYi9saWItc3JjL3Byb2ZpbGUuYwpAQCAtOCw4ICs4LDggQEAgVGhp cyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0 d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNo ZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0 aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAK IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL2xpYi1zcmMvdXBkYXRlLWdhbWUtc2Nv cmUuYyBiL2xpYi1zcmMvdXBkYXRlLWdhbWUtc2NvcmUuYwppbmRleCAzODAzYTMxLi43Njc1 ZTliIDEwMDY0NAotLS0gYS9saWItc3JjL3VwZGF0ZS1nYW1lLXNjb3JlLmMKKysrIGIvbGli LXNyYy91cGRhdGUtZ2FtZS1zY29yZS5jCkBAIC04LDggKzgsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpkaWZmIC0tZ2l0IGEvbW9kdWxlcy9tb2QtdGVzdC9tb2QtdGVzdC5jIGIvbW9k dWxlcy9tb2QtdGVzdC9tb2QtdGVzdC5jCmluZGV4IGJiOWM4YTUuLjNjOGFiMGYgMTAwNjQ0 Ci0tLSBhL21vZHVsZXMvbW9kLXRlc3QvbW9kLXRlc3QuYworKysgYi9tb2R1bGVzL21vZC10 ZXN0L21vZC10ZXN0LmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRp ZmYgLS1naXQgYS9tc2Rvcy9pbnR0eXBlcy5oIGIvbXNkb3MvaW50dHlwZXMuaAppbmRleCBk YTYxYjExLi41NTBlZjM2IDEwMDY0NAotLS0gYS9tc2Rvcy9pbnR0eXBlcy5oCisrKyBiL21z ZG9zL2ludHR5cGVzLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRp ZmYgLS1naXQgYS9udC9hZGRwbS5jIGIvbnQvYWRkcG0uYwppbmRleCBlZDUwMTRmLi4yMTYx ZWE3IDEwMDY0NAotLS0gYS9udC9hZGRwbS5jCisrKyBiL250L2FkZHBtLmMKQEAgLTUsOCAr NSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlz IGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkK IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp dCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9udC9jbWRwcm94eS5j IGIvbnQvY21kcHJveHkuYwppbmRleCA0Y2E1MzNiLi40MTFhNDA5IDEwMDY0NAotLS0gYS9u dC9jbWRwcm94eS5jCisrKyBiL250L2NtZHByb3h5LmMKQEAgLTE2LDggKzE2LDggQEAgVGhp cyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0 d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNo ZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0 aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAK IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL250L2RkZWNsaWVudC5jIGIvbnQvZGRl Y2xpZW50LmMKaW5kZXggZjE1YzE4OC4uN2JiYmRiMCAxMDA2NDQKLS0tIGEvbnQvZGRlY2xp ZW50LmMKKysrIGIvbnQvZGRlY2xpZW50LmMKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCkBAIC03MCw0ICs3MCwzIEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2 W10pCiAKICAgcmV0dXJuICgwKTsKIH0KLQpkaWZmIC0tZ2l0IGEvbnQvaW5jL2dycC5oIGIv bnQvaW5jL2dycC5oCmluZGV4IGM0NDEzOTYuLjkwM2ZkYTkgMTAwNjQ0Ci0tLSBhL250L2lu Yy9ncnAuaAorKysgYi9udC9pbmMvZ3JwLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCkBAIC0zNCw0ICszNCwzIEBAIGV4dGVybiB1bnNpZ25lZCBnZXRlZ2lkICh2 b2lkKTsKIGV4dGVybiBzdHJ1Y3QgZ3JvdXAgKmdldGdyZ2lkKGdpZF90KTsKIAogI2VuZGlm IC8qIF9HUlBfSCAqLwotCmRpZmYgLS1naXQgYS9udC9pbmMvaW50dHlwZXMuaCBiL250L2lu Yy9pbnR0eXBlcy5oCmluZGV4IDlhYmQ1NWQuLjM0ZDAyNmMgMTAwNjQ0Ci0tLSBhL250L2lu Yy9pbnR0eXBlcy5oCisrKyBiL250L2luYy9pbnR0eXBlcy5oCkBAIC02LDggKzYsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvbnQvaW5jL2xhbmdpbmZvLmggYi9u dC9pbmMvbGFuZ2luZm8uaAppbmRleCA2NDZjOGNhLi4xNTMyZWFhIDEwMDY0NAotLS0gYS9u dC9pbmMvbGFuZ2luZm8uaAorKysgYi9udC9pbmMvbGFuZ2luZm8uaApAQCAtNiw4ICs2LDgg QEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTU4LDQgKzU4LDMgQEAgZW51bSB7CiBleHRl cm4gY2hhciAqbmxfbGFuZ2luZm8gKG5sX2l0ZW0pOwogCiAjZW5kaWYgLyogX0xBTkdJTkZP X0ggKi8KLQpkaWZmIC0tZ2l0IGEvbnQvaW5jL21zLXczMi5oIGIvbnQvaW5jL21zLXczMi5o CmluZGV4IGEzNzUxMGUuLmQxNTM0MzMgMTAwNjQ0Ci0tLSBhL250L2luYy9tcy13MzIuaAor KysgYi9udC9pbmMvbXMtdzMyLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y IChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCmRpZmYgLS1naXQgYS9udC9pbmMvbmxfdHlwZXMuaCBiL250L2luYy9ubF90eXBlcy5o CmluZGV4IDZiMjJlNzYuLmU0ZDMxNGMgMTAwNjQ0Ci0tLSBhL250L2luYy9ubF90eXBlcy5o CisrKyBiL250L2luYy9ubF90eXBlcy5oCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpkaWZmIC0tZ2l0IGEvbnQvaW5jL3N0ZGludC5oIGIvbnQvaW5jL3N0ZGludC5o CmluZGV4IGFkYzZhMWUuLmJiMDY3ZjQgMTAwNjQ0Ci0tLSBhL250L2luYy9zdGRpbnQuaAor KysgYi9udC9pbmMvc3RkaW50LmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y IChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCmRpZmYgLS1naXQgYS9udC9pbmMvc3lzL3NvY2tldC5oIGIvbnQvaW5jL3N5cy9zb2Nr ZXQuaAppbmRleCBkN2VkOTJkLi5hZDQwZmM5IDEwMDY0NAotLS0gYS9udC9pbmMvc3lzL3Nv Y2tldC5oCisrKyBiL250L2luYy9zeXMvc29ja2V0LmgKQEAgLTQsOCArNCw4IEBAIFRoaXMg ZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdh cmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRo ZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVk IGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K K3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhl IExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBH TlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz ZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs aWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9udC9pbmMvc3lzL3N0YXQuaCBiL250L2lu Yy9zeXMvc3RhdC5oCmluZGV4IGYyMTA4NmMuLjQ1YmMyZWEgMTAwNjQ0Ci0tLSBhL250L2lu Yy9zeXMvc3RhdC5oCisrKyBiL250L2luYy9zeXMvc3RhdC5oCkBAIC03LDggKzcsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvbnQvaW5jL3N5cy93YWl0LmggYi9u dC9pbmMvc3lzL3dhaXQuaAppbmRleCA4YTc3ZTk4Li40NmRhZTQ5IDEwMDY0NAotLS0gYS9u dC9pbmMvc3lzL3dhaXQuaAorKysgYi9udC9pbmMvc3lzL3dhaXQuaApAQCAtNiw4ICs2LDgg QEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL250L3ByZXByZXAuYyBiL250 L3ByZXByZXAuYwppbmRleCAzMDNlMmVmLi40OTFhOTNiIDEwMDY0NAotLS0gYS9udC9wcmVw cmVwLmMKKysrIGIvbnQvcHJlcHJlcC5jCkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpAQCAtMzQsMTEgKzM0LDEwIEBAIGFsb25nIHdpdGggR05VIEVtYWNzLiAgSWYg bm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgogLyogSW5jbHVkZSBy ZWxldmFudCBkZWZpbml0aW9ucyBmcm9tIElNQUdFSExQLkgsIHdoaWNoIGNhbiBiZSBmb3Vu ZAogICAgaW4gXFx3aW4zMnNka1xtc3Rvb2xzXHNhbXBsZXNcaW1hZ2VcaW5jbHVkZVxpbWFn ZWhscC5oLiAqLwogCi1QSU1BR0VfTlRfSEVBREVSUwotKF9fc3RkY2FsbCAqIHBmbkNoZWNr U3VtTWFwcGVkRmlsZSkgKExQVk9JRCBCYXNlQWRkcmVzcywKLQkJCQkgICAgIERXT1JEX1BU UiBGaWxlTGVuZ3RoLAotCQkJCSAgICAgUERXT1JEX1BUUiBIZWFkZXJTdW0sCi0JCQkJICAg ICBQRFdPUkRfUFRSIENoZWNrU3VtKTsKK1BJTUFHRV9OVF9IRUFERVJTIChfX3N0ZGNhbGwg KiBwZm5DaGVja1N1bU1hcHBlZEZpbGUpIChMUFZPSUQgQmFzZUFkZHJlc3MsCisJCQkJCQkg ICAgICAgRFdPUkRfUFRSIEZpbGVMZW5ndGgsCisJCQkJCQkgICAgICAgUERXT1JEX1BUUiBI ZWFkZXJTdW0sCisJCQkJCQkgICAgICAgUERXT1JEX1BUUiBDaGVja1N1bSk7CiAKICN1bmRl ZiBtaW4KICN1bmRlZiBtYXgKZGlmZiAtLWdpdCBhL250L3J1bmVtYWNzLmMgYi9udC9ydW5l bWFjcy5jCmluZGV4IDI2ODViMjUuLmI1ZTE2YzAgMTAwNjQ0Ci0tLSBhL250L3J1bmVtYWNz LmMKKysrIGIvbnQvcnVuZW1hY3MuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKZGlmZiAtLWdpdCBhL29sZFhNZW51L0FjdGl2YXRlLmMgYi9vbGRYTWVudS9BY3Rp dmF0ZS5jCmluZGV4IDFlMmIxOTguLjBiODEyYzUgMTAwNjQ0Ci0tLSBhL29sZFhNZW51L0Fj dGl2YXRlLmMKKysrIGIvb2xkWE1lbnUvQWN0aXZhdGUuYwpAQCAtNyw4ICs3LDggQEAgQ29w eXJpZ2h0IChDKSAyMDAxLTIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAK IFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp dCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVk IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0t Z2l0IGEvb2xkWE1lbnUvQ3JlYXRlLmMgYi9vbGRYTWVudS9DcmVhdGUuYwppbmRleCBkMGNm OGYwLi4yZmQ4NmIyIDEwMDY0NAotLS0gYS9vbGRYTWVudS9DcmVhdGUuYworKysgYi9vbGRY TWVudS9DcmVhdGUuYwpAQCAtNyw4ICs3LDggQEAgQ29weXJpZ2h0IChDKSAxOTkzLTE5OTQs IDIwMDEtMjAxNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIAogVGhpcyBwcm9n cmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgogCiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9vbGRY TWVudS9GaW5kU2VsLmMgYi9vbGRYTWVudS9GaW5kU2VsLmMKaW5kZXggODRjODY1MS4uOTkx ZTFjYSAxMDA2NDQKLS0tIGEvb2xkWE1lbnUvRmluZFNlbC5jCisrKyBiL29sZFhNZW51L0Zp bmRTZWwuYwpAQCAtNyw4ICs3LDggQEAgQ29weXJpZ2h0IChDKSAyMDAxLTIwMTYgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAKIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u Cit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAog VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvb2xkWE1lbnUvSW50ZXJuYWwuYyBi L29sZFhNZW51L0ludGVybmFsLmMKaW5kZXggZjI1Yzk2My4uNDVjZGY0ZCAxMDA2NDQKLS0t IGEvb2xkWE1lbnUvSW50ZXJuYWwuYworKysgYi9vbGRYTWVudS9JbnRlcm5hbC5jCkBAIC03 LDggKzcsOCBAQCBDb3B5cmlnaHQgKEMpIDE5OTMsIDE5OTYsIDIwMDEtMjAxNiBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIAogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdh cmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRo ZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVk IGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K K3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhl IExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBU aGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9vbGRYTWVudS9pbnNxdWUuYyBiL29s ZFhNZW51L2luc3F1ZS5jCmluZGV4IDI0OGVlYWZjLi5jMDQ0ZmYwIDEwMDY0NAotLS0gYS9v bGRYTWVudS9pbnNxdWUuYworKysgYi9vbGRYTWVudS9pbnNxdWUuYwpAQCAtMyw4ICszLDgg QEAgQ29weXJpZ2h0IChDKSAxOTkzLTE5OTgsIDIwMDEtMjAxNiBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIEluYy4KIAogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBUaGlzIHByb2dy YW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvYWxsb2MuYyBiL3NyYy9hbGxvYy5jCmluZGV4 IDZiYzFiOGEuLmI1YmUwZjYgMTAwNjQ0Ci0tLSBhL3NyYy9hbGxvYy5jCisrKyBiL3NyYy9h bGxvYy5jCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3Mu CiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp dCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGlu IHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FS UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0 IGEvc3JjL2F0aW1lci5jIGIvc3JjL2F0aW1lci5jCmluZGV4IDgwMTk1NjAuLjcwZDliZjUg MTAwNjQ0Ci0tLSBhL3NyYy9hdGltZXIuYworKysgYi9zcmMvYXRpbWVyLmMKQEAgLTUsOCAr NSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlz IGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkK IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp dCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvYXRpbWVyLmgg Yi9zcmMvYXRpbWVyLmgKaW5kZXggYmViZDE1Ni4uMTcxODNjOCAxMDA2NDQKLS0tIGEvc3Jj L2F0aW1lci5oCisrKyBiL3NyYy9hdGltZXIuaApAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxl IGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTog eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRl cm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkK LXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhl IExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBF bWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs LAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg d2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9iaWRpLmMgYi9zcmMvYmlkaS5jCmluZGV4 IGU3Nzg3MDUuLmVmOGNkZDIgMTAwNjQ0Ci0tLSBhL3NyYy9iaWRpLmMKKysrIGIvc3JjL2Jp ZGkuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L3NyYy9ibG9ja2lucHV0LmggYi9zcmMvYmxvY2tpbnB1dC5oCmluZGV4IDViOGJmNjQuLmJm NTEzNzUgMTAwNjQ0Ci0tLSBhL3NyYy9ibG9ja2lucHV0LmgKKysrIGIvc3JjL2Jsb2NraW5w dXQuaApAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L3NyYy9idWZmZXIuYyBiL3NyYy9idWZmZXIuYwppbmRleCA2NTNlM2ZlLi5mMDZkN2UwIDEw MDY0NAotLS0gYS9zcmMvYnVmZmVyLmMKKysrIGIvc3JjL2J1ZmZlci5jCkBAIC03LDggKzcs OCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBm cmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBp dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz IHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg d2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMTA0NCw3ICsxMDQ0LDcgQEAgREVGVU4g KCJnZW5lcmF0ZS1uZXctYnVmZmVyLW5hbWUiLCBGZ2VuZXJhdGVfbmV3X2J1ZmZlcl9uYW1l LAogICAgICAgIGRvYzogLyogUmV0dXJuIGEgc3RyaW5nIHRoYXQgaXMgdGhlIG5hbWUgb2Yg bm8gZXhpc3RpbmcgYnVmZmVyIGJhc2VkIG9uIE5BTUUuCiBJZiB0aGVyZSBpcyBubyBsaXZl IGJ1ZmZlciBuYW1lZCBOQU1FLCB0aGVuIHJldHVybiBOQU1FLgogT3RoZXJ3aXNlIG1vZGlm eSBuYW1lIGJ5IGFwcGVuZGluZyBgPE5VTUJFUj4nLCBpbmNyZW1lbnRpbmcgTlVNQkVSCi0o c3RhcnRpbmcgYXQgMikgdW50aWwgYW4gdW51c2VkIG5hbWUgaXMgZm91bmQsIGFuZCB0aGVu IHJldHVybiB0aGF0IG5hbWUuCitcKHN0YXJ0aW5nIGF0IDIpIHVudGlsIGFuIHVudXNlZCBu YW1lIGlzIGZvdW5kLCBhbmQgdGhlbiByZXR1cm4gdGhhdCBuYW1lLgogT3B0aW9uYWwgc2Vj b25kIGFyZ3VtZW50IElHTk9SRSBzcGVjaWZpZXMgYSBuYW1lIHRoYXQgaXMgb2theSB0byB1 c2UgKGlmCiBpdCBpcyBpbiB0aGUgc2VxdWVuY2UgdG8gYmUgdHJpZWQpIGV2ZW4gaWYgYSBi dWZmZXIgd2l0aCB0aGF0IG5hbWUgZXhpc3RzLgogCkBAIC0zNzkzLDEwICszNzkzLDEwIEBA IElmIG9taXR0ZWQsIEJVRkZFUiBkZWZhdWx0cyB0byB0aGUgY3VycmVudCBidWZmZXIuCiBC RUcgYW5kIEVORCBtYXkgYmUgaW50ZWdlcnMgb3IgbWFya2Vycy4KIFRoZSBmb3VydGggYXJn IEZST05ULUFEVkFOQ0UsIGlmIG5vbi1uaWwsIG1ha2VzIHRoZSBtYXJrZXIKIGZvciB0aGUg ZnJvbnQgb2YgdGhlIG92ZXJsYXkgYWR2YW5jZSB3aGVuIHRleHQgaXMgaW5zZXJ0ZWQgdGhl cmUKLSh3aGljaCBtZWFucyB0aGUgdGV4dCAqaXMgbm90KiBpbmNsdWRlZCBpbiB0aGUgb3Zl cmxheSkuCitcKHdoaWNoIG1lYW5zIHRoZSB0ZXh0ICppcyBub3QqIGluY2x1ZGVkIGluIHRo ZSBvdmVybGF5KS4KIFRoZSBmaWZ0aCBhcmcgUkVBUi1BRFZBTkNFLCBpZiBub24tbmlsLCBt YWtlcyB0aGUgbWFya2VyCiBmb3IgdGhlIHJlYXIgb2YgdGhlIG92ZXJsYXkgYWR2YW5jZSB3 aGVuIHRleHQgaXMgaW5zZXJ0ZWQgdGhlcmUKLSh3aGljaCBtZWFucyB0aGUgdGV4dCAqaXMq IGluY2x1ZGVkIGluIHRoZSBvdmVybGF5KS4gICovKQorXCh3aGljaCBtZWFucyB0aGUgdGV4 dCAqaXMqIGluY2x1ZGVkIGluIHRoZSBvdmVybGF5KS4gICovKQogICAoTGlzcF9PYmplY3Qg YmVnLCBMaXNwX09iamVjdCBlbmQsIExpc3BfT2JqZWN0IGJ1ZmZlciwKICAgIExpc3BfT2Jq ZWN0IGZyb250X2FkdmFuY2UsIExpc3BfT2JqZWN0IHJlYXJfYWR2YW5jZSkKIHsKQEAgLTYw MjgsNyArNjAyOCw3IEBAIGJldHdlZW4gMC4wIGFuZCAxLjAsIGluY2x1c2l2ZS4gICovKTsK IAkgICAgICAgZG9jOiAvKiBMaXN0IG9mIGZ1bmN0aW9ucyB0byBjYWxsIGJlZm9yZSBlYWNo IHRleHQgY2hhbmdlLgogVHdvIGFyZ3VtZW50cyBhcmUgcGFzc2VkIHRvIGVhY2ggZnVuY3Rp b246IHRoZSBwb3NpdGlvbnMgb2YKIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiB0aGUgcmFu Z2Ugb2Ygb2xkIHRleHQgdG8gYmUgY2hhbmdlZC4KLShGb3IgYW4gaW5zZXJ0aW9uLCB0aGUg YmVnaW5uaW5nIGFuZCBlbmQgYXJlIGF0IHRoZSBzYW1lIHBsYWNlLikKK1woRm9yIGFuIGlu c2VydGlvbiwgdGhlIGJlZ2lubmluZyBhbmQgZW5kIGFyZSBhdCB0aGUgc2FtZSBwbGFjZS4p CiBObyBpbmZvcm1hdGlvbiBpcyBnaXZlbiBhYm91dCB0aGUgbGVuZ3RoIG9mIHRoZSB0ZXh0 IGFmdGVyIHRoZSBjaGFuZ2UuCiAKIEJ1ZmZlciBjaGFuZ2VzIG1hZGUgd2hpbGUgZXhlY3V0 aW5nIHRoZSBgYmVmb3JlLWNoYW5nZS1mdW5jdGlvbnMnCkBAIC02MDQ1LDcgKzYwNDUsNyBA QCBmcm9tIGhhcHBlbmluZyByZXBlYXRlZGx5IGFuZCBtYWtpbmcgRW1hY3Mgbm9uZnVuY3Rp b25hbC4gICovKTsKIFRocmVlIGFyZ3VtZW50cyBhcmUgcGFzc2VkIHRvIGVhY2ggZnVuY3Rp b246IHRoZSBwb3NpdGlvbnMgb2YKIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCBvZiB0aGUgcmFu Z2Ugb2YgY2hhbmdlZCB0ZXh0LAogYW5kIHRoZSBsZW5ndGggaW4gY2hhcnMgb2YgdGhlIHBy ZS1jaGFuZ2UgdGV4dCByZXBsYWNlZCBieSB0aGF0IHJhbmdlLgotKEZvciBhbiBpbnNlcnRp b24sIHRoZSBwcmUtY2hhbmdlIGxlbmd0aCBpcyB6ZXJvOworXChGb3IgYW4gaW5zZXJ0aW9u LCB0aGUgcHJlLWNoYW5nZSBsZW5ndGggaXMgemVybzsKIGZvciBhIGRlbGV0aW9uLCB0aGF0 IGxlbmd0aCBpcyB0aGUgbnVtYmVyIG9mIGNoYXJzIGRlbGV0ZWQsCiBhbmQgdGhlIHBvc3Qt Y2hhbmdlIGJlZ2lubmluZyBhbmQgZW5kIGFyZSBhdCB0aGUgc2FtZSBwbGFjZS4pCiAKQEAg LTYwOTAsNyArNjA5MCw3IEBAIHdhcyBtb2RpZmllZCBiZXR3ZWVuIEJFRyBhbmQgRU5ELiAg UFJPUEVSVFkgaXMgdGhlIHByb3BlcnR5IG5hbWUsCiBhbmQgVkFMVUUgaXMgdGhlIG9sZCB2 YWx1ZS4KIAogQW4gZW50cnkgKGFwcGx5IEZVTi1OQU1FIC4gQVJHUykgbWVhbnMgdW5kbyB0 aGUgY2hhbmdlIHdpdGgKLShhcHBseSBGVU4tTkFNRSBBUkdTKS4KK1woYXBwbHkgRlVOLU5B TUUgQVJHUykuCiAKIEFuIGVudHJ5IChhcHBseSBERUxUQSBCRUcgRU5EIEZVTi1OQU1FIC4g QVJHUykgc3VwcG9ydHMgc2VsZWN0aXZlIHVuZG8KIGluIHRoZSBhY3RpdmUgcmVnaW9uLiAg QkVHIGFuZCBFTkQgaXMgdGhlIHJhbmdlIGFmZmVjdGVkIGJ5IHRoaXMgZW50cnkKQEAgLTYy NTAsNyArNjI1MCw3IEBAIHRvIHRoZSBkZWZhdWx0IGZyYW1lIGxpbmUgaGVpZ2h0LiAgQSB2 YWx1ZSBvZiBuaWwgbWVhbnMgYWRkIG5vIGV4dHJhIHNwYWNlLiAgKi8pCiAJCSAgICAgZG9j OiAvKiBOb24tbmlsIG1lYW5zIHNob3cgYSBjdXJzb3IgaW4gbm9uLXNlbGVjdGVkIHdpbmRv d3MuCiBJZiBuaWwsIG9ubHkgc2hvd3MgYSBjdXJzb3IgaW4gdGhlIHNlbGVjdGVkIHdpbmRv dy4KIElmIHQsIGRpc3BsYXlzIGEgY3Vyc29yIHJlbGF0ZWQgdG8gdGhlIHVzdWFsIGN1cnNv ciB0eXBlCi0oYSBzb2xpZCBib3ggYmVjb21lcyBob2xsb3csIGEgYmFyIGJlY29tZXMgYSBu YXJyb3dlciBiYXIpLgorXChhIHNvbGlkIGJveCBiZWNvbWVzIGhvbGxvdywgYSBiYXIgYmVj b21lcyBhIG5hcnJvd2VyIGJhcikuCiBZb3UgY2FuIGFsc28gc3BlY2lmeSB0aGUgY3Vyc29y IHR5cGUgYXMgaW4gdGhlIGBjdXJzb3ItdHlwZScgdmFyaWFibGUuCiBVc2UgQ3VzdG9tIHRv IHNldCB0aGlzIHZhcmlhYmxlIGFuZCB1cGRhdGUgdGhlIGRpc3BsYXkuICAqLyk7CiAKZGlm ZiAtLWdpdCBhL3NyYy9idWZmZXIuaCBiL3NyYy9idWZmZXIuaAppbmRleCA1NzgzYmZiLi44 N2I3Y2VlIDEwMDY0NAotLS0gYS9zcmMvYnVmZmVyLmgKKysrIGIvc3JjL2J1ZmZlci5oCkBA IC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBF bWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3Ig bW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMzUyLDkgKzM1Miw5IEBA IGV4dGVybiB2b2lkIGVubGFyZ2VfYnVmZmVyX3RleHQgKHN0cnVjdCBidWZmZXIgKiwgcHRy ZGlmZl90KTsKIC8qIENvbnZlcnQgUFRSLCB0aGUgYWRkcmVzcyBvZiBhIGJ5dGUgaW4gdGhl IGJ1ZmZlciwgaW50byBhIGJ5dGUgcG9zaXRpb24uICAqLwogCiAjZGVmaW5lIFBUUl9CWVRF X1BPUyhwdHIpIFwKLSgocHRyKSAtIChjdXJyZW50X2J1ZmZlciktPnRleHQtPmJlZwkJCQkJ ICAgIFwKLSAtIChwdHIgLSAoY3VycmVudF9idWZmZXIpLT50ZXh0LT5iZWcgPD0gR1BUX0JZ VEUgLSBCRUdfQllURSA/IDAgOiBHQVBfU0laRSkgXAotICsgQkVHX0JZVEUpCisgICgocHRy KSAtIChjdXJyZW50X2J1ZmZlciktPnRleHQtPmJlZwkJCQkJICAgIFwKKyAgIC0gKHB0ciAt IChjdXJyZW50X2J1ZmZlciktPnRleHQtPmJlZyA8PSBHUFRfQllURSAtIEJFR19CWVRFID8g MCA6IEdBUF9TSVpFKSBcCisgICArIEJFR19CWVRFKQogCiAvKiBSZXR1cm4gY2hhcmFjdGVy IGF0IGJ5dGUgcG9zaXRpb24gUE9TLiAgU2VlIHRoZSBjYXZlYXQgV0FSTklORyBmb3IKICAg IEZFVENIX01VTFRJQllURV9DSEFSIGJlbG93LiAgKi8KQEAgLTM4NiwyNCArMzg2LDI0IEBA IGV4dGVybiB2b2lkIGVubGFyZ2VfYnVmZmVyX3RleHQgKHN0cnVjdCBidWZmZXIgKiwgcHRy ZGlmZl90KTsKICAgIE5vdGUgdGhhdCBib3RoIGFyZ3VtZW50cyBjYW4gYmUgY29tcHV0ZWQg bW9yZSB0aGFuIG9uY2UuICAqLwogCiAjZGVmaW5lIEJVRl9CWVRFX0FERFJFU1MoYnVmLCBw b3MpIFwKLSgoYnVmKS0+dGV4dC0+YmVnICsgKHBvcykgLSBCRUdfQllURQkJXAotICsgKChw b3MpID49IChidWYpLT50ZXh0LT5ncHRfYnl0ZSA/IChidWYpLT50ZXh0LT5nYXBfc2l6ZSA6 IDApKQorICAoKGJ1ZiktPnRleHQtPmJlZyArIChwb3MpIC0gQkVHX0JZVEUgXAorICAgKyAo KHBvcykgPj0gKGJ1ZiktPnRleHQtPmdwdF9ieXRlID8gKGJ1ZiktPnRleHQtPmdhcF9zaXpl IDogMCkpCiAKIC8qIFJldHVybiB0aGUgYWRkcmVzcyBvZiBjaGFyYWN0ZXIgYXQgY2hhciBw b3NpdGlvbiBQT1MgaW4gYnVmZmVyIEJVRi4KICAgIE5vdGUgdGhhdCBib3RoIGFyZ3VtZW50 cyBjYW4gYmUgY29tcHV0ZWQgbW9yZSB0aGFuIG9uY2UuICAqLwogCiAjZGVmaW5lIEJVRl9D SEFSX0FERFJFU1MoYnVmLCBwb3MpIFwKLSgoYnVmKS0+dGV4dC0+YmVnICsgYnVmX2NoYXJw b3NfdG9fYnl0ZXBvcyAoKGJ1ZiksIChwb3MpKSAtIEJFR19CWVRFCVwKLSArICgocG9zKSA+ PSAoYnVmKS0+dGV4dC0+Z3B0ID8gKGJ1ZiktPnRleHQtPmdhcF9zaXplIDogMCkpCisgICgo YnVmKS0+dGV4dC0+YmVnICsgYnVmX2NoYXJwb3NfdG9fYnl0ZXBvcyAoKGJ1ZiksIChwb3Mp KSAtIEJFR19CWVRFCVwKKyAgICsgKChwb3MpID49IChidWYpLT50ZXh0LT5ncHQgPyAoYnVm KS0+dGV4dC0+Z2FwX3NpemUgOiAwKSkKIAogLyogQ29udmVydCBQVFIsIHRoZSBhZGRyZXNz IG9mIGEgY2hhciBpbiBidWZmZXIgQlVGLAogICAgaW50byBhIGNoYXJhY3RlciBwb3NpdGlv bi4gICovCiAKICNkZWZpbmUgQlVGX1BUUl9CWVRFX1BPUyhidWYsIHB0cikJCQkJXAotKChw dHIpIC0gKGJ1ZiktPnRleHQtPmJlZwkJCQkJXAotIC0gKHB0ciAtIChidWYpLT50ZXh0LT5i ZWcgPD0gQlVGX0dQVF9CWVRFIChidWYpIC0gQkVHX0JZVEUJXAotICAgID8gMCA6IEJVRl9H QVBfU0laRSAoKGJ1ZikpKQkJCQkJXAotICsgQkVHX0JZVEUpCisgICgocHRyKSAtIChidWYp LT50ZXh0LT5iZWcJCQkJCVwKKyAgIC0gKHB0ciAtIChidWYpLT50ZXh0LT5iZWcgPD0gQlVG X0dQVF9CWVRFIChidWYpIC0gQkVHX0JZVEUJXAorICAgICAgPyAwIDogQlVGX0dBUF9TSVpF ICgoYnVmKSkpCQkJCVwKKyAgICsgQkVHX0JZVEUpCiAKIC8qIFJldHVybiB0aGUgY2hhcmFj dGVyIGF0IGJ5dGUgcG9zaXRpb24gUE9TIGluIGJ1ZmZlciBCVUYuICAgKi8KIApkaWZmIC0t Z2l0IGEvc3JjL2J5dGVjb2RlLmMgYi9zcmMvYnl0ZWNvZGUuYwppbmRleCAwYmVmZTY1Li45 YWUyZTgyIDEwMDY0NAotLS0gYS9zcmMvYnl0ZWNvZGUuYworKysgYi9zcmMvYnl0ZWNvZGUu YwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBH TlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTE5OTYsOSArMTk5 Niw5IEBAIHN5bXNfb2ZfYnl0ZWNvZGUgKHZvaWQpCiAKICAgREVGVkFSX0xJU1AgKCJieXRl LWNvZGUtbWV0ZXIiLCBWYnl0ZV9jb2RlX21ldGVyLAogCSAgICAgICBkb2M6IC8qIEEgdmVj dG9yIG9mIHZlY3RvcnMgd2hpY2ggaG9sZHMgYSBoaXN0b2dyYW0gb2YgYnl0ZS1jb2RlIHVz YWdlLgotKGFyZWYgKGFyZWYgYnl0ZS1jb2RlLW1ldGVyIDApIENPREUpIGluZGljYXRlcyBo b3cgbWFueSB0aW1lcyB0aGUgYnl0ZQorXChhcmVmIChhcmVmIGJ5dGUtY29kZS1tZXRlciAw KSBDT0RFKSBpbmRpY2F0ZXMgaG93IG1hbnkgdGltZXMgdGhlIGJ5dGUKIG9wY29kZSBDT0RF IGhhcyBiZWVuIGV4ZWN1dGVkLgotKGFyZWYgKGFyZWYgYnl0ZS1jb2RlLW1ldGVyIENPREUx KSBDT0RFMiksIHdoZXJlIENPREUxIGlzIG5vdCAwLAorXChhcmVmIChhcmVmIGJ5dGUtY29k ZS1tZXRlciBDT0RFMSkgQ09ERTIpLCB3aGVyZSBDT0RFMSBpcyBub3QgMCwKIGluZGljYXRl cyBob3cgbWFueSB0aW1lcyB0aGUgYnl0ZSBvcGNvZGVzIENPREUxIGFuZCBDT0RFMiBoYXZl IGJlZW4KIGV4ZWN1dGVkIGluIHN1Y2Nlc3Npb24uICAqLyk7CiAKZGlmZiAtLWdpdCBhL3Ny Yy9jYWxsaW50LmMgYi9zcmMvY2FsbGludC5jCmluZGV4IDNiMjNmMjIuLjNiY2YyYzggMTAw NjQ0Ci0tLSBhL3NyYy9jYWxsaW50LmMKKysrIGIvc3JjL2NhbGxpbnQuYwpAQCAtNiw4ICs2 LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9jYWxscHJvYy5j IGIvc3JjL2NhbGxwcm9jLmMKaW5kZXggOWFkN2VmMi4uZGI2MDJmNSAxMDA2NDQKLS0tIGEv c3JjL2NhbGxwcm9jLmMKKysrIGIvc3JjL2NhbGxwcm9jLmMKQEAgLTcsOCArNyw4IEBAIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29m dHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgog CiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCkBAIC0xNDU3LDcgKzE0NTcsNyBAQCBUaGlzIGZ1bmN0aW9u IHNlYXJjaGVzIGBwcm9jZXNzLWVudmlyb25tZW50JyBmb3IgVkFSSUFCTEUuCiAKIElmIG9w dGlvbmFsIHBhcmFtZXRlciBFTlYgaXMgYSBsaXN0LCB0aGVuIHNlYXJjaCB0aGlzIGxpc3Qg aW5zdGVhZCBvZgogYHByb2Nlc3MtZW52aXJvbm1lbnQnLCBhbmQgcmV0dXJuIHQgd2hlbiBl bmNvdW50ZXJpbmcgYSBuZWdhdGl2ZSBlbnRyeQotKGFuIGVudHJ5IGZvciBhIHZhcmlhYmxl IHdpdGggbm8gdmFsdWUpLiAgKi8pCitcKGFuIGVudHJ5IGZvciBhIHZhcmlhYmxlIHdpdGgg bm8gdmFsdWUpLiAgKi8pCiAgIChMaXNwX09iamVjdCB2YXJpYWJsZSwgTGlzcF9PYmplY3Qg ZW52KQogewogICBjaGFyICp2YWx1ZTsKQEAgLTE2NjgsNyArMTY2OCw3IEBAIEVhY2ggZWxl bWVudCBpcyBhIHN0cmluZyAoZGlyZWN0b3J5IG5hbWUpIG9yIG5pbCAodHJ5IGRlZmF1bHQg ZGlyZWN0b3J5KS4KIAogQnkgZGVmYXVsdCB0aGUgbGFzdCBlbGVtZW50IG9mIHRoaXMgbGlz dCBpcyBgZXhlYy1kaXJlY3RvcnknLiBUaGUKIGxhc3QgZWxlbWVudCBpcyBub3QgYWx3YXlz IHVzZWQsIGZvciBleGFtcGxlIGluIHNoZWxsIGNvbXBsZXRpb24KLShgc2hlbGwtZHluYW1p Yy1jb21wbGV0ZS1jb21tYW5kJykuICAqLyk7CitcKGBzaGVsbC1keW5hbWljLWNvbXBsZXRl LWNvbW1hbmQnKS4gICovKTsKIAogICBERUZWQVJfTElTUCAoImV4ZWMtc3VmZml4ZXMiLCBW ZXhlY19zdWZmaXhlcywKIAkgICAgICAgZG9jOiAvKiBMaXN0IG9mIHN1ZmZpeGVzIHRvIHRy eSB0byBmaW5kIGV4ZWN1dGFibGUgZmlsZSBuYW1lcy4KZGlmZiAtLWdpdCBhL3NyYy9jYXNl ZmlkZGxlLmMgYi9zcmMvY2FzZWZpZGRsZS5jCmluZGV4IDM0ODIxNWUuLmM1YmZhMzYgMTAw NjQ0Ci0tLSBhL3NyYy9jYXNlZmlkZGxlLmMKKysrIGIvc3JjL2Nhc2VmaWRkbGUuYwpAQCAt Nyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1h Y3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9jYXNl dGFiLmMgYi9zcmMvY2FzZXRhYi5jCmluZGV4IDgzMjdmYmQuLjI0NjE2NDcgMTAwNjQ0Ci0t LSBhL3NyYy9jYXNldGFiLmMKKysrIGIvc3JjL2Nhc2V0YWIuYwpAQCAtNyw4ICs3LDggQEAg VGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBz b2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9jYXRlZ29yeS5jIGIvc3Jj L2NhdGVnb3J5LmMKaW5kZXggNjE1MDJmOC4uNDM5N2Y2NiAxMDA2NDQKLS0tIGEvc3JjL2Nh dGVnb3J5LmMKKysrIGIvc3JjL2NhdGVnb3J5LmMKQEAgLTEzLDggKzEzLDggQEAgVGhpcyBm aWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2Fy ZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg YnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdO VSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl ZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp ZWQgd2FycmFudHkgb2YKQEAgLTQ2Miw3ICs0NjIsNyBAQCBFbWFjcyB0cmVhdHMgYSBzZXF1 ZW5jZSBvZiB3b3JkIGNvbnN0aXR1ZW50IGNoYXJhY3RlcnMgYXMgYSBzaW5nbGUKIHdvcmQg KGkuZS4gZmluZHMgbm8gd29yZCBib3VuZGFyeSBiZXR3ZWVuIHRoZW0pIG9ubHkgaWYgdGhl eSBiZWxvbmcgdG8KIHRoZSBzYW1lIHNjcmlwdC4gIEJ1dCwgZXhjZXB0aW9ucyBhcmUgYWxs b3dlZCBpbiB0aGUgZm9sbG93aW5nIGNhc2VzLgogCi0oMSkgVGhlIGNhc2UgdGhhdCBjaGFy YWN0ZXJzIGFyZSBpbiBkaWZmZXJlbnQgc2NyaXB0cyBpcyBjb250cm9sbGVkCitcKDEpIFRo ZSBjYXNlIHRoYXQgY2hhcmFjdGVycyBhcmUgaW4gZGlmZmVyZW50IHNjcmlwdHMgaXMgY29u dHJvbGxlZAogYnkgdGhlIHZhcmlhYmxlIGB3b3JkLWNvbWJpbmluZy1jYXRlZ29yaWVzJy4K IAogRW1hY3MgZmluZHMgbm8gd29yZCBib3VuZGFyeSBiZXR3ZWVuIGNoYXJhY3RlcnMgb2Yg ZGlmZmVyZW50IHNjcmlwdHMKQEAgLTQ3Niw3ICs0NzYsNyBAQCBGb3IgaW5zdGFuY2UsIHRv IHRlbGwgdGhhdCBIYW4gY2hhcmFjdGVycyBmb2xsb3dlZCBieSBIaXJhZ2FuYQogY2hhcmFj dGVycyBjYW4gZm9ybSBhIHNpbmdsZSB3b3JkLCB0aGUgZWxlbWVudCBgKD9DIC4gP0gpJyBz aG91bGQgYmUKIGluIHRoaXMgbGlzdC4KIAotKDIpIFRoZSBjYXNlIHRoYXQgY2hhcmFjdGVy IGFyZSBpbiB0aGUgc2FtZSBzY3JpcHQgaXMgY29udHJvbGxlZCBieQorXCgyKSBUaGUgY2Fz ZSB0aGF0IGNoYXJhY3RlciBhcmUgaW4gdGhlIHNhbWUgc2NyaXB0IGlzIGNvbnRyb2xsZWQg YnkKIHRoZSB2YXJpYWJsZSBgd29yZC1zZXBhcmF0aW5nLWNhdGVnb3JpZXMnLgogCiBFbWFj cyBmaW5kcyBhIHdvcmQgYm91bmRhcnkgYmV0d2VlbiBjaGFyYWN0ZXJzIG9mIHRoZSBzYW1l IHNjcmlwdApkaWZmIC0tZ2l0IGEvc3JjL2NhdGVnb3J5LmggYi9zcmMvY2F0ZWdvcnkuaApp bmRleCAwMmY5YTE5Li4yNDdmOTA5IDEwMDY0NAotLS0gYS9zcmMvY2F0ZWdvcnkuaAorKysg Yi9zcmMvY2F0ZWdvcnkuaApAQCAtMTEsOCArMTEsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBv ZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAo YXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv ZgpkaWZmIC0tZ2l0IGEvc3JjL2NjbC5jIGIvc3JjL2NjbC5jCmluZGV4IDhjZmQ5YjUuLmQ5 NjIwMzQgMTAwNjQ0Ci0tLSBhL3NyYy9jY2wuYworKysgYi9zcmMvY2NsLmMKQEAgLTEyLDgg KzEyLDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3Mg aXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlm eQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9jY2wuaCBi L3NyYy9jY2wuaAppbmRleCBmZGNlNDM3Li4xMDg2MGY1IDEwMDY0NAotLS0gYS9zcmMvY2Ns LmgKKysrIGIvc3JjL2NjbC5oCkBAIC0xMSw4ICsxMSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y IChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCmRpZmYgLS1naXQgYS9zcmMvY2hhcmFjdGVyLmMgYi9zcmMvY2hhcmFjdGVyLmMKaW5k ZXggNDgxODc0OC4uOWY2MGFhNyAxMDA2NDQKLS0tIGEvc3JjL2NoYXJhY3Rlci5jCisrKyBi L3NyYy9jaGFyYWN0ZXIuYwpAQCAtMTEsOCArMTEsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBv ZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAo YXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv ZgpkaWZmIC0tZ2l0IGEvc3JjL2NoYXJhY3Rlci5oIGIvc3JjL2NoYXJhY3Rlci5oCmluZGV4 IDQ0MGU3ODEuLmJjM2UxNTUgMTAwNjQ0Ci0tLSBhL3NyYy9jaGFyYWN0ZXIuaAorKysgYi9z cmMvY2hhcmFjdGVyLmgKQEAgLTksOCArOSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRp ZmYgLS1naXQgYS9zcmMvY2hhcnNldC5jIGIvc3JjL2NoYXJzZXQuYwppbmRleCA0OGU0NzY4 Li44ZmY0NjllIDEwMDY0NAotLS0gYS9zcmMvY2hhcnNldC5jCisrKyBiL3NyYy9jaGFyc2V0 LmMKQEAgLTE1LDggKzE1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L3NyYy9jaGFyc2V0LmggYi9zcmMvY2hhcnNldC5oCmluZGV4IGE1YzQ1MzIuLjhlNzc1Njcg MTAwNjQ0Ci0tLSBhL3NyYy9jaGFyc2V0LmgKKysrIGIvc3JjL2NoYXJzZXQuaApAQCAtMTMs OCArMTMsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFj cyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9k aWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo YXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2NoYXJ0 YWIuYyBiL3NyYy9jaGFydGFiLmMKaW5kZXggZWM2MThmMy4uNmNmOGZlYSAxMDA2NDQKLS0t IGEvc3JjL2NoYXJ0YWIuYworKysgYi9zcmMvY2hhcnRhYi5jCkBAIC03LDggKzcsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpAQCAtNTMzLDcgKzUzMyw3IEBAIERFRlVOICgiY2hhci10 YWJsZS1wYXJlbnQiLCBGY2hhcl90YWJsZV9wYXJlbnQsIFNjaGFyX3RhYmxlX3BhcmVudCwK IFRoZSB2YWx1ZSBpcyBlaXRoZXIgbmlsIG9yIGFub3RoZXIgY2hhci10YWJsZS4KIElmIENI QVItVEFCTEUgaG9sZHMgbmlsIGZvciBhIGdpdmVuIGNoYXJhY3RlciwKIHRoZW4gdGhlIGFj dHVhbCBhcHBsaWNhYmxlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSBwYXJlbnQgY2hh ci10YWJsZQotKG9yIGZyb20gaXRzIHBhcmVudHMsIGlmIG5lY2Vzc2FyeSkuICAqLykKK1wo b3IgZnJvbSBpdHMgcGFyZW50cywgaWYgbmVjZXNzYXJ5KS4gICovKQogICAoTGlzcF9PYmpl Y3QgY2hhcl90YWJsZSkKIHsKICAgQ0hFQ0tfQ0hBUl9UQUJMRSAoY2hhcl90YWJsZSk7CmRp ZmYgLS1naXQgYS9zcmMvY20uYyBiL3NyYy9jbS5jCmluZGV4IGVjMTU0NWQuLjRmOTRjMDcg MTAwNjQ0Ci0tLSBhL3NyYy9jbS5jCisrKyBiL3NyYy9jbS5jCkBAIC02LDggKzYsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2NtLmggYi9zcmMvY20uaApp bmRleCBjMTA5YzQ3Li4xMjY5NjlkIDEwMDY0NAotLS0gYS9zcmMvY20uaAorKysgYi9zcmMv Y20uaApAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L3NyYy9jbWRzLmMgYi9zcmMvY21kcy5jCmluZGV4IDM0NTAwMDMuLjFlNDRkZGQgMTAwNjQ0 Ci0tLSBhL3NyYy9jbWRzLmMKKysrIGIvc3JjL2NtZHMuYwpAQCAtNiw4ICs2LDggQEAgVGhp cyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0 d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNo ZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0 aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAK IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YKQEAgLTEwNiw3ICsxMDYsNyBAQCByaWdodCBvciB0byB0aGUg bGVmdCBvbiB0aGUgc2NyZWVuLiAgVGhpcyBpcyBpbiBjb250cmFzdCB3aXRoCiBERUZVTiAo ImZvcndhcmQtbGluZSIsIEZmb3J3YXJkX2xpbmUsIFNmb3J3YXJkX2xpbmUsIDAsIDEsICJe cCIsCiAgICAgICAgZG9jOiAvKiBNb3ZlIE4gbGluZXMgZm9yd2FyZCAoYmFja3dhcmQgaWYg TiBpcyBuZWdhdGl2ZSkuCiBQcmVjaXNlbHksIGlmIHBvaW50IGlzIG9uIGxpbmUgSSwgbW92 ZSB0byB0aGUgc3RhcnQgb2YgbGluZSBJICsgTgotKCJzdGFydCBvZiBsaW5lIiBpbiB0aGUg bG9naWNhbCBvcmRlcikuCitcKCJzdGFydCBvZiBsaW5lIiBpbiB0aGUgbG9naWNhbCBvcmRl cikuCiBJZiB0aGVyZSBpc24ndCByb29tLCBnbyBhcyBmYXIgYXMgcG9zc2libGUgKG5vIGVy cm9yKS4KIAogUmV0dXJucyB0aGUgY291bnQgb2YgbGluZXMgbGVmdCB0byBtb3ZlLiAgSWYg bW92aW5nIGZvcndhcmQsCmRpZmYgLS1naXQgYS9zcmMvY29kaW5nLmMgYi9zcmMvY29kaW5n LmMKaW5kZXggZTU5MWJlZC4uOWY3MDliZSAxMDA2NDQKLS0tIGEvc3JjL2NvZGluZy5jCisr KyBiL3NyYy9jb2RpbmcuYwpAQCAtMTIsOCArMTIsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBv ZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAo YXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv ZgpAQCAtOTgwMCw3ICs5ODAwLDcgQEAgREVGVU4gKCJmaW5kLW9wZXJhdGlvbi1jb2Rpbmct c3lzdGVtIiwgRmZpbmRfb3BlcmF0aW9uX2NvZGluZ19zeXN0ZW0sCiAgICAgICAgZG9jOiAv KiBDaG9vc2UgYSBjb2Rpbmcgc3lzdGVtIGZvciBhbiBvcGVyYXRpb24gYmFzZWQgb24gdGhl IHRhcmdldCBuYW1lLgogVGhlIHZhbHVlIG5hbWVzIGEgcGFpciBvZiBjb2Rpbmcgc3lzdGVt czogKERFQ09ESU5HLVNZU1RFTSAuIEVOQ09ESU5HLVNZU1RFTSkuCiBERUNPRElORy1TWVNU RU0gaXMgdGhlIGNvZGluZyBzeXN0ZW0gdG8gdXNlIGZvciBkZWNvZGluZwotKGluIGNhc2Ug T1BFUkFUSU9OIGRvZXMgZGVjb2RpbmcpLCBhbmQgRU5DT0RJTkctU1lTVEVNIGlzIHRoZSBj b2Rpbmcgc3lzdGVtCitcKGluIGNhc2UgT1BFUkFUSU9OIGRvZXMgZGVjb2RpbmcpLCBhbmQg RU5DT0RJTkctU1lTVEVNIGlzIHRoZSBjb2Rpbmcgc3lzdGVtCiBmb3IgZW5jb2RpbmcgKGlu IGNhc2UgT1BFUkFUSU9OIGRvZXMgZW5jb2RpbmcpLgogCiBUaGUgZmlyc3QgYXJndW1lbnQg T1BFUkFUSU9OIHNwZWNpZmllcyBhbiBJL08gcHJpbWl0aXZlOgpAQCAtMTExNzUsNyArMTEx NzUsNyBAQCB0aGUgY2RyIHBhcnQgaXMgdXNlZCBmb3IgZW5jb2RpbmcgYSB0ZXh0IHRvIGJl IHNlbnQgdG8gYSBwcm9jZXNzLiAgKi8pOwogVGFibGUgb2YgZXh0cmEgTGF0aW4gY29kZXMg aW4gdGhlIHJhbmdlIDEyOC4uMTU5IChpbmNsdXNpdmUpLgogVGhpcyBpcyBhIHZlY3RvciBv ZiBsZW5ndGggMjU2LgogSWYgTnRoIGVsZW1lbnQgaXMgbm9uLW5pbCwgdGhlIGV4aXN0ZW5j ZSBvZiBjb2RlIE4gaW4gYSBmaWxlCi0ob3Igb3V0cHV0IG9mIHN1YnByb2Nlc3MpIGRvZXNu J3QgcHJldmVudCBpdCB0byBiZSBkZXRlY3RlZCBhcworXChvciBvdXRwdXQgb2Ygc3VicHJv Y2VzcykgZG9lc24ndCBwcmV2ZW50IGl0IHRvIGJlIGRldGVjdGVkIGFzCiBhIGNvZGluZyBz eXN0ZW0gb2YgSVNPIDIwMjIgdmFyaWFudCB3aGljaCBoYXMgYSBmbGFnCiBgYWNjZXB0LWxh dGluLWV4dHJhLWNvZGUnIHQgKGUuZy4gaXNvLWxhdGluLTEpIG9uIHJlYWRpbmcgYSBmaWxl CiBvciByZWFkaW5nIG91dHB1dCBvZiBhIHN1YnByb2Nlc3MuCmRpZmYgLS1naXQgYS9zcmMv Y29kaW5nLmggYi9zcmMvY29kaW5nLmgKaW5kZXggZWEwY2RkNS4uOTNkZGZmMCAxMDA2NDQK LS0tIGEvc3JjL2NvZGluZy5oCisrKyBiL3NyYy9jb2RpbmcuaApAQCAtMTIsOCArMTIsOCBA QCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVl IHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2NvbW1hbmRzLmggYi9z cmMvY29tbWFuZHMuaAppbmRleCAzNmFjMDBmLi40ZTY5Y2RhIDEwMDY0NAotLS0gYS9zcmMv Y29tbWFuZHMuaAorKysgYi9zcmMvY29tbWFuZHMuaApAQCAtNSw4ICs1LDggQEAgVGhpcyBm aWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2Fy ZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg YnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdO VSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl ZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp ZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9jb21wb3NpdGUuYyBiL3NyYy9jb21w b3NpdGUuYwppbmRleCA0M2M5MDlmLi40OWIwMDAzIDEwMDY0NAotLS0gYS9zcmMvY29tcG9z aXRlLmMKKysrIGIvc3JjL2NvbXBvc2l0ZS5jCkBAIC0xMSw4ICsxMSw4IEBAIFRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6 IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5 Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3Ro ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUg RW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk IHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvY29tcG9zaXRlLmggYi9zcmMvY29tcG9z aXRlLmgKaW5kZXggMTQyM2ZlYi4uODBlMTc0MCAxMDA2NDQKLS0tIGEvc3JjL2NvbXBvc2l0 ZS5oCisrKyBiL3NyYy9jb21wb3NpdGUuaApAQCAtMTEsOCArMTEsOCBAQCBUaGlzIGZpbGUg aXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQot dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVt YWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws CiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2NvbmZfcG9zdC5oIGIvc3JjL2NvbmZfcG9z dC5oCmluZGV4IDVjMzMyYTAuLmQwZjA0YjYgMTAwNjQ0Ci0tLSBhL3NyYy9jb25mX3Bvc3Qu aAorKysgYi9zcmMvY29uZl9wb3N0LmgKQEAgLTcsOCArNyw4IEBAIFRoaXMgZmlsZSBpcyBw YXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3Mg aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvY3lndzMyLmMgYi9zcmMvY3lndzMyLmMKaW5kZXgg NDIyYjA0ZC4uNjgyMjMyMCAxMDA2NDQKLS0tIGEvc3JjL2N5Z3czMi5jCisrKyBiL3NyYy9j eWd3MzIuYwpAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNz LgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdp dCBhL3NyYy9jeWd3MzIuaCBiL3NyYy9jeWd3MzIuaAppbmRleCA1OGQ4Y2Q0Li4wZjY5ODgx IDEwMDY0NAotLS0gYS9zcmMvY3lndzMyLmgKKysrIGIvc3JjL2N5Z3czMi5oCkBAIC01LDgg KzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBp cyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5 CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQg aXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2RhdGEuYyBi L3NyYy9kYXRhLmMKaW5kZXggMDdmODcyNC4uMjU3NGNiYiAxMDA2NDQKLS0tIGEvc3JjL2Rh dGEuYworKysgYi9zcmMvZGF0YS5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgpAQCAtMTY3Myw3ICsxNjczLDcgQEAgREVGVU4gKCJtYWtlLWxvY2FsLXZhcmlhYmxl IiwgRm1ha2VfbG9jYWxfdmFyaWFibGUsIFNtYWtlX2xvY2FsX3ZhcmlhYmxlLAogICAgICAg IDEsIDEsICJ2TWFrZSBMb2NhbCBWYXJpYWJsZTogIiwKICAgICAgICBkb2M6IC8qIE1ha2Ug VkFSSUFCTEUgaGF2ZSBhIHNlcGFyYXRlIHZhbHVlIGluIHRoZSBjdXJyZW50IGJ1ZmZlci4K IE90aGVyIGJ1ZmZlcnMgd2lsbCBjb250aW51ZSB0byBzaGFyZSBhIGNvbW1vbiBkZWZhdWx0 IHZhbHVlLgotKFRoZSBidWZmZXItbG9jYWwgdmFsdWUgb2YgVkFSSUFCTEUgc3RhcnRzIG91 dCBhcyB0aGUgc2FtZSB2YWx1ZQorXChUaGUgYnVmZmVyLWxvY2FsIHZhbHVlIG9mIFZBUklB QkxFIHN0YXJ0cyBvdXQgYXMgdGhlIHNhbWUgdmFsdWUKIFZBUklBQkxFIHByZXZpb3VzbHkg aGFkLiAgSWYgVkFSSUFCTEUgd2FzIHZvaWQsIGl0IHJlbWFpbnMgdm9pZC4pCiBSZXR1cm4g VkFSSUFCTEUuCiAKZGlmZiAtLWdpdCBhL3NyYy9kYnVzYmluZC5jIGIvc3JjL2RidXNiaW5k LmMKaW5kZXggNTE0OGMzMi4uZDNhMzJjMCAxMDA2NDQKLS0tIGEvc3JjL2RidXNiaW5kLmMK KysrIGIvc3JjL2RidXNiaW5kLmMKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y IChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCmRpZmYgLS1naXQgYS9zcmMvZGVjb21wcmVzcy5jIGIvc3JjL2RlY29tcHJlc3MuYwpp bmRleCA4ZmI3MWIwLi4xMjEzZjQ4IDEwMDY0NAotLS0gYS9zcmMvZGVjb21wcmVzcy5jCisr KyBiL3NyYy9kZWNvbXByZXNzLmMKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y IChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCmRpZmYgLS1naXQgYS9zcmMvZGlyZWQuYyBiL3NyYy9kaXJlZC5jCmluZGV4IDk3ZmVm YWUuLmUyMWIyMjcgMTAwNjQ0Ci0tLSBhL3NyYy9kaXJlZC5jCisrKyBiL3NyYy9kaXJlZC5j CkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3Jj L2Rpc3BleHRlcm4uaCBiL3NyYy9kaXNwZXh0ZXJuLmgKaW5kZXggMDA2NjdjNS4uNzAzNTg3 MiAxMDA2NDQKLS0tIGEvc3JjL2Rpc3BleHRlcm4uaAorKysgYi9zcmMvZGlzcGV4dGVybi5o CkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3Jj L2Rpc3BuZXcuYyBiL3NyYy9kaXNwbmV3LmMKaW5kZXggZjgzNGYzNS4uM2EwNTMyYSAxMDA2 NDQKLS0tIGEvc3JjL2Rpc3BuZXcuYworKysgYi9zcmMvZGlzcG5ldy5jCkBAIC03LDggKzcs OCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBm cmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBp dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz IHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg d2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtNTY3MSw3ICs1NjcxLDcgQEAgREVGVU4g KCJzbGVlcC1mb3IiLCBGc2xlZXBfZm9yLCBTc2xlZXBfZm9yLCAxLCAyLCAwLAogU0VDT05E UyBtYXkgYmUgYSBmbG9hdGluZy1wb2ludCB2YWx1ZSwgbWVhbmluZyB0aGF0IHlvdSBjYW4g d2FpdCBmb3IgYQogZnJhY3Rpb24gb2YgYSBzZWNvbmQuICBPcHRpb25hbCBzZWNvbmQgYXJn IE1JTExJU0VDT05EUyBzcGVjaWZpZXMgYW4KIGFkZGl0aW9uYWwgd2FpdCBwZXJpb2QsIGlu IG1pbGxpc2Vjb25kczsgdGhpcyBpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuCi0o Tm90IGFsbCBvcGVyYXRpbmcgc3lzdGVtcyBzdXBwb3J0IHdhaXRpbmcgZm9yIGEgZnJhY3Rp b24gb2YgYSBzZWNvbmQuKSAgKi8pCitcKE5vdCBhbGwgb3BlcmF0aW5nIHN5c3RlbXMgc3Vw cG9ydCB3YWl0aW5nIGZvciBhIGZyYWN0aW9uIG9mIGEgc2Vjb25kLikgICovKQogICAoTGlz cF9PYmplY3Qgc2Vjb25kcywgTGlzcF9PYmplY3QgbWlsbGlzZWNvbmRzKQogewogICBkb3Vi bGUgZHVyYXRpb24gPSBleHRyYWN0X2Zsb2F0IChzZWNvbmRzKTsKZGlmZiAtLWdpdCBhL3Ny Yy9kaXNwdGFiLmggYi9zcmMvZGlzcHRhYi5oCmluZGV4IDIxMWI2NDkuLjk2NDE2MmYgMTAw NjQ0Ci0tLSBhL3NyYy9kaXNwdGFiLmgKKysrIGIvc3JjL2Rpc3B0YWIuaApAQCAtNSw4ICs1 LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9kb2MuYyBiL3Ny Yy9kb2MuYwppbmRleCBhOTI3M2YwLi4wZDk0ZDEwIDEwMDY0NAotLS0gYS9zcmMvZG9jLmMK KysrIGIvc3JjL2RvYy5jCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBH TlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IK LShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQK K3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3Ry aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9V VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpA QCAtNzE2LDcgKzcxNiw3IEBAIGlzIG5vdCBvbiBhbnkga2V5cy4KIEVhY2ggc3Vic3RyaW5n IG9mIHRoZSBmb3JtIFxcPVxce01BUFZBUn0gaXMgcmVwbGFjZWQgYnkgYSBzdW1tYXJ5IG9m CiB0aGUgdmFsdWUgb2YgTUFQVkFSIGFzIGEga2V5bWFwLiAgVGhpcyBzdW1tYXJ5IGlzIHNp bWlsYXIgdG8gdGhlIG9uZQogcHJvZHVjZWQgYnkgYGRlc2NyaWJlLWJpbmRpbmdzJy4gIFRo ZSBzdW1tYXJ5IGVuZHMgaW4gdHdvIG5ld2xpbmVzCi0odXNlZCBieSB0aGUgaGVscGVyIGZ1 bmN0aW9uIGBoZWxwLW1ha2UteHJlZnMnIHRvIGZpbmQgdGhlIGVuZCBvZiB0aGUKK1wodXNl ZCBieSB0aGUgaGVscGVyIGZ1bmN0aW9uIGBoZWxwLW1ha2UteHJlZnMnIHRvIGZpbmQgdGhl IGVuZCBvZiB0aGUKIHN1bW1hcnkpLgogCiBFYWNoIHN1YnN0cmluZyBvZiB0aGUgZm9ybSBc XD1cXDxNQVBWQVI+IHNwZWNpZmllcyB0aGUgdXNlIG9mIE1BUFZBUgpkaWZmIC0tZ2l0IGEv c3JjL2RvcHJudC5jIGIvc3JjL2RvcHJudC5jCmluZGV4IGIwYjkyYmYuLjUwNmJiYzMgMTAw NjQ0Ci0tLSBhL3NyYy9kb3BybnQuYworKysgYi9zcmMvZG9wcm50LmMKQEAgLTcsOCArNyw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZG9zZm5zLmMgYi9z cmMvZG9zZm5zLmMKaW5kZXggZjUwN2Y0MS4uODgwZmVlOSAxMDA2NDQKLS0tIGEvc3JjL2Rv c2Zucy5jCisrKyBiL3NyYy9kb3NmbnMuYwpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlz IHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91 IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1z IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFj cyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAog YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9kb3NmbnMuaCBiL3NyYy9kb3NmbnMuaAppbmRl eCBmYTQ1ZDcxLi45ZmJmN2VkIDEwMDY0NAotLS0gYS9zcmMvZG9zZm5zLmgKKysrIGIvc3Jj L2Rvc2Zucy5oCkBAIC05LDggKzksOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1h Y3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0 ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVk IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMjks NCArMjksMyBAQCBleHRlcm4gaW50ICAgICAgICAgbXNkb3Nfc3RkY29sb3JfaWR4ICAoY29u c3QgY2hhciAqKTsKIGV4dGVybiBMaXNwX09iamVjdCBtc2Rvc19zdGRjb2xvcl9uYW1lIChp bnQpOwogZXh0ZXJuIHZvaWQgICAgICAgIHhfc2V0X3RpdGxlIChzdHJ1Y3QgZnJhbWUgKiwg TGlzcF9PYmplY3QpOwogI2VuZGlmCi0KZGlmZiAtLWdpdCBhL3NyYy9keW5saWIuYyBiL3Ny Yy9keW5saWIuYwppbmRleCBjNDY0N2U2Li42NGY2ODhjIDEwMDY0NAotLS0gYS9zcmMvZHlu bGliLmMKKysrIGIvc3JjL2R5bmxpYi5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2R5bmxpYi5oIGIvc3JjL2R5bmxpYi5oCmluZGV4 IDMzYjZkNjAuLmE5ZGE5ODUgMTAwNjQ0Ci0tLSBhL3NyYy9keW5saWIuaAorKysgYi9zcmMv ZHlubGliLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFj cy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBX QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1n aXQgYS9zcmMvZWRpdGZucy5jIGIvc3JjL2VkaXRmbnMuYwppbmRleCBiZDcwZjBhLi5kZjk4 MjIzIDEwMDY0NAotLS0gYS9zcmMvZWRpdGZucy5jCisrKyBiL3NyYy9lZGl0Zm5zLmMKQEAg LTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVt YWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC0xODk1LDcgKzE4OTUsNyBA QCBERUZVTiAoImZsb2F0LXRpbWUiLCBGZmxvYXRfdGltZSwgU2Zsb2F0X3RpbWUsIDAsIDEs IDAsCiAgICAgICAgZG9jOiAvKiBSZXR1cm4gdGhlIGN1cnJlbnQgdGltZSwgYXMgYSBmbG9h dCBudW1iZXIgb2Ygc2Vjb25kcyBzaW5jZSB0aGUgZXBvY2guCiBJZiBTUEVDSUZJRUQtVElN RSBpcyBnaXZlbiwgaXQgaXMgdGhlIHRpbWUgdG8gY29udmVydCB0byBmbG9hdAogaW5zdGVh ZCBvZiB0aGUgY3VycmVudCB0aW1lLiAgVGhlIGFyZ3VtZW50IHNob3VsZCBoYXZlIHRoZSBm b3JtCi0oSElHSCBMT1cpIG9yIChISUdIIExPVyBVU0VDKSBvciAoSElHSCBMT1cgVVNFQyBQ U0VDKS4gIFRodXMsCitcKEhJR0ggTE9XKSBvciAoSElHSCBMT1cgVVNFQykgb3IgKEhJR0gg TE9XIFVTRUMgUFNFQykuICBUaHVzLAogeW91IGNhbiB1c2UgdGltZXMgZnJvbSBgY3VycmVu dC10aW1lJyBhbmQgZnJvbSBgZmlsZS1hdHRyaWJ1dGVzJy4KIFNQRUNJRklFRC1USU1FIGNh biBhbHNvIGhhdmUgdGhlIGZvcm0gKEhJR0ggLiBMT1cpLCBidXQgdGhpcyBpcwogY29uc2lk ZXJlZCBvYnNvbGV0ZS4KQEAgLTIyODQsNyArMjI4NCw3IEBAIE9GRlNFVCBpcyBhbiBpbnRl Z2VyIG51bWJlciBvZiBzZWNvbmRzIGFoZWFkIG9mIFVUQyAoZWFzdCBvZiBHcmVlbndpY2gp LgogTkFNRSBpcyBhIHN0cmluZyBnaXZpbmcgdGhlIG5hbWUgb2YgdGhlIHRpbWUgem9uZS4K IElmIFNQRUNJRklFRC1USU1FIGlzIGdpdmVuLCB0aGUgdGltZSB6b25lIG9mZnNldCBpcyBk ZXRlcm1pbmVkIGZyb20gaXQKIGluc3RlYWQgb2YgdXNpbmcgdGhlIGN1cnJlbnQgdGltZS4g IFRoZSBhcmd1bWVudCBzaG91bGQgaGF2ZSB0aGUgZm9ybQotKEhJR0ggTE9XIC4gSUdOT1JF RCkuICBUaHVzLCB5b3UgY2FuIHVzZSB0aW1lcyBvYnRhaW5lZCBmcm9tCitcKEhJR0ggTE9X IC4gSUdOT1JFRCkuICBUaHVzLCB5b3UgY2FuIHVzZSB0aW1lcyBvYnRhaW5lZCBmcm9tCiBg Y3VycmVudC10aW1lJyBhbmQgZnJvbSBgZmlsZS1hdHRyaWJ1dGVzJy4gIFNQRUNJRklFRC1U SU1FIGNhbiBhbHNvCiBoYXZlIHRoZSBmb3JtIChISUdIIC4gTE9XKSwgYnV0IHRoaXMgaXMg Y29uc2lkZXJlZCBvYnNvbGV0ZS4KIE9wdGlvbmFsIHNlY29uZCBhcmcgWk9ORSBpcyBvbWl0 dGVkIG9yIG5pbCBmb3IgdGhlIGxvY2FsIHRpbWUgem9uZSwgb3IKQEAgLTM2MjcsNyArMzYy Nyw3IEBAIHNhdmVfcmVzdHJpY3Rpb25fcmVzdG9yZSAoTGlzcF9PYmplY3QgZGF0YSkKIERF RlVOICgic2F2ZS1yZXN0cmljdGlvbiIsIEZzYXZlX3Jlc3RyaWN0aW9uLCBTc2F2ZV9yZXN0 cmljdGlvbiwgMCwgVU5FVkFMTEVELCAwLAogICAgICAgIGRvYzogLyogRXhlY3V0ZSBCT0RZ LCBzYXZpbmcgYW5kIHJlc3RvcmluZyBjdXJyZW50IGJ1ZmZlcidzIHJlc3RyaWN0aW9ucy4K IFRoZSBidWZmZXIncyByZXN0cmljdGlvbnMgbWFrZSBwYXJ0cyBvZiB0aGUgYmVnaW5uaW5n IGFuZCBlbmQgaW52aXNpYmxlLgotKFRoZXkgYXJlIHNldCB1cCB3aXRoIGBuYXJyb3ctdG8t cmVnaW9uJyBhbmQgZWxpbWluYXRlZCB3aXRoIGB3aWRlbicuKQorXChUaGV5IGFyZSBzZXQg dXAgd2l0aCBgbmFycm93LXRvLXJlZ2lvbicgYW5kIGVsaW1pbmF0ZWQgd2l0aCBgd2lkZW4n LikKIFRoaXMgc3BlY2lhbCBmb3JtLCBgc2F2ZS1yZXN0cmljdGlvbicsIHNhdmVzIHRoZSBj dXJyZW50IGJ1ZmZlcidzIHJlc3RyaWN0aW9ucwogd2hlbiBpdCBpcyBlbnRlcmVkLCBhbmQg cmVzdG9yZXMgdGhlbSB3aGVuIGl0IGlzIGV4aXRlZC4KIFNvIGFueSBgbmFycm93LXRvLXJl Z2lvbicgd2l0aGluIEJPRFkgbGFzdHMgb25seSB1bnRpbCB0aGUgZW5kIG9mIHRoZSBmb3Jt LgpkaWZmIC0tZ2l0IGEvc3JjL2VtYWNzLWljb24uaCBiL3NyYy9lbWFjcy1pY29uLmgKaW5k ZXggMmYwODA2Yy4uOTcwMTM1ZiAxMDA2NDQKLS0tIGEvc3JjL2VtYWNzLWljb24uaAorKysg Yi9zcmMvZW1hY3MtaWNvbi5oCkBAIC05LDggKzksOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBv ZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAo YXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBv ZgpAQCAtMzUwLDQgKzM1MCwzIEBAIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGdudV94Ym1fYml0 c1tdID0gewogICAgMHhmOCwgMHgwZiwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg MHhhMCwgMHgwMiwgMHgwMCwgMHgwMCwgMHgwMCwKICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4 MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAg ICAweDAwLCAweDAwfTsKLQpkaWZmIC0tZ2l0IGEvc3JjL2VtYWNzLW1vZHVsZS5jIGIvc3Jj L2VtYWNzLW1vZHVsZS5jCmluZGV4IDc5YTA3N2IuLmVjYTVhZjcgMTAwNjQ0Ci0tLSBhL3Ny Yy9lbWFjcy1tb2R1bGUuYworKysgYi9zcmMvZW1hY3MtbW9kdWxlLmMKQEAgLTYsOCArNiw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZW1hY3MtbW9kdWxl LmggYi9zcmMvZW1hY3MtbW9kdWxlLmgKaW5kZXggNTc1OTY2ZS4uYjRhZTVlYSAxMDA2NDQK LS0tIGEvc3JjL2VtYWNzLW1vZHVsZS5oCisrKyBiL3NyYy9lbWFjcy1tb2R1bGUuaApAQCAt Niw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1h Y3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9lbWFj cy5jIGIvc3JjL2VtYWNzLmMKaW5kZXggOWJmOTk2YS4uZDFkNjQ5ZCAxMDA2NDQKLS0tIGEv c3JjL2VtYWNzLmMKKysrIGIvc3JjL2VtYWNzLmMKQEAgLTcsOCArNyw4IEBAIFRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6 IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5 Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3Ro ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUg RW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk IHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZW1hY3NndGtmaXhlZC5jIGIvc3JjL2Vt YWNzZ3RrZml4ZWQuYwppbmRleCA2Nzk1MTU1Li5jZWJkN2I2IDEwMDY0NAotLS0gYS9zcmMv ZW1hY3NndGtmaXhlZC5jCisrKyBiL3NyYy9lbWFjc2d0a2ZpeGVkLmMKQEAgLTcsOCArNyw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZW1hY3NndGtmaXhl ZC5oIGIvc3JjL2VtYWNzZ3RrZml4ZWQuaAppbmRleCA3MjY1MmM1Li4zZDZhNzZhIDEwMDY0 NAotLS0gYS9zcmMvZW1hY3NndGtmaXhlZC5oCisrKyBiL3NyYy9lbWFjc2d0a2ZpeGVkLmgK QEAgLTcsOCArNyw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05V IEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v ciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMv ZXZhbC5jIGIvc3JjL2V2YWwuYwppbmRleCAyNjEwNGE1Li5mZTY0NjBkIDEwMDY0NAotLS0g YS9zcmMvZXZhbC5jCisrKyBiL3NyYy9ldmFsLmMKQEAgLTcsOCArNyw4IEBAIFRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6 IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5 Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3Ro ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUg RW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk IHdhcnJhbnR5IG9mCkBAIC0xMTkxLDcgKzExOTEsNyBAQCBzdXBwcmVzc2VzIHRoZSBkZWJ1 Z2dlcikuCiBXaGVuIGEgaGFuZGxlciBoYW5kbGVzIGFuIGVycm9yLCBjb250cm9sIHJldHVy bnMgdG8gdGhlIGBjb25kaXRpb24tY2FzZScKIGFuZCBpdCBleGVjdXRlcyB0aGUgaGFuZGxl cidzIEJPRFkuLi4KIHdpdGggVkFSIGJvdW5kIHRvIChFUlJPUi1TWU1CT0wgLiBTSUdOQUwt REFUQSkgZnJvbSB0aGUgZXJyb3IuCi0oSWYgVkFSIGlzIG5pbCwgdGhlIGhhbmRsZXIgY2Fu J3QgYWNjZXNzIHRoYXQgaW5mb3JtYXRpb24uKQorXChJZiBWQVIgaXMgbmlsLCB0aGUgaGFu ZGxlciBjYW4ndCBhY2Nlc3MgdGhhdCBpbmZvcm1hdGlvbi4pCiBUaGVuIHRoZSB2YWx1ZSBv ZiB0aGUgbGFzdCBCT0RZIGZvcm0gaXMgcmV0dXJuZWQgZnJvbSB0aGUgYGNvbmRpdGlvbi1j YXNlJwogZXhwcmVzc2lvbi4KIApAQCAtMjQwOSw3ICsyNDA5LDcgQEAgbWF5IGJlIG5pbCwg YSBmdW5jdGlvbiwgb3IgYSBsaXN0IG9mIGZ1bmN0aW9ucy4gIENhbGwgZWFjaAogZnVuY3Rp b24gaW4gb3JkZXIgd2l0aCBhcmd1bWVudHMgQVJHUywgc3RvcHBpbmcgYXQgdGhlIGZpcnN0 CiBvbmUgdGhhdCByZXR1cm5zIG5pbCwgYW5kIHJldHVybiBuaWwuICBPdGhlcndpc2UgKGlm IGFsbCBmdW5jdGlvbnMKIHJldHVybiBub24tbmlsLCBvciBpZiB0aGVyZSBhcmUgbm8gZnVu Y3Rpb25zIHRvIGNhbGwpLCByZXR1cm4gbm9uLW5pbAotKGRvIG5vdCByZWx5IG9uIHRoZSBw cmVjaXNlIHJldHVybiB2YWx1ZSBpbiB0aGlzIGNhc2UpLgorXChkbyBub3QgcmVseSBvbiB0 aGUgcHJlY2lzZSByZXR1cm4gdmFsdWUgaW4gdGhpcyBjYXNlKS4KIAogRG8gbm90IHVzZSBg bWFrZS1sb2NhbC12YXJpYWJsZScgdG8gbWFrZSBhIGhvb2sgdmFyaWFibGUgYnVmZmVyLWxv Y2FsLgogSW5zdGVhZCwgdXNlIGBhZGQtaG9vaycgYW5kIHNwZWNpZnkgdCBmb3IgdGhlIExP Q0FMIGFyZ3VtZW50LgpkaWZmIC0tZ2l0IGEvc3JjL2ZpbGVpby5jIGIvc3JjL2ZpbGVpby5j CmluZGV4IDAzNzJmNDYuLmRmYWIzZGUgMTAwNjQ0Ci0tLSBhL3NyYy9maWxlaW8uYworKysg Yi9zcmMvZmlsZWlvLmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBA IC00NTAsNyArNDUwLDcgQEAgREVGVU4gKCJ1bmhhbmRsZWQtZmlsZS1uYW1lLWRpcmVjdG9y eSIsIEZ1bmhhbmRsZWRfZmlsZV9uYW1lX2RpcmVjdG9yeSwKIEEgYGRpcmVjdGx5IHVzYWJs ZScgZGlyZWN0b3J5IG5hbWUgaXMgb25lIHRoYXQgbWF5IGJlIHVzZWQgd2l0aG91dCB0aGUK IGludGVydmVudGlvbiBvZiBhbnkgZmlsZSBoYW5kbGVyLgogSWYgRklMRU5BTUUgaXMgYSBk aXJlY3RseSB1c2FibGUgZmlsZSBpdHNlbGYsIHJldHVybgotKGZpbGUtbmFtZS1hcy1kaXJl Y3RvcnkgRklMRU5BTUUpLgorXChmaWxlLW5hbWUtYXMtZGlyZWN0b3J5IEZJTEVOQU1FKS4K IElmIEZJTEVOQU1FIHJlZmVycyB0byBhIGZpbGUgd2hpY2ggaXMgbm90IGFjY2Vzc2libGUg ZnJvbSBhIGxvY2FsIHByb2Nlc3MsCiB0aGVuIHRoaXMgc2hvdWxkIHJldHVybiBuaWwuCiBU aGUgYGNhbGwtcHJvY2VzcycgYW5kIGBzdGFydC1wcm9jZXNzJyBmdW5jdGlvbnMgdXNlIHRo aXMgZnVuY3Rpb24gdG8KQEAgLTc0MSw3ICs3NDEsNyBAQCBERUZVTiAoIm1ha2UtdGVtcC1u YW1lIiwgRm1ha2VfdGVtcF9uYW1lLCBTbWFrZV90ZW1wX25hbWUsIDEsIDEsIDAsCiAgICAg ICAgZG9jOiAvKiBHZW5lcmF0ZSB0ZW1wb3JhcnkgZmlsZSBuYW1lIChzdHJpbmcpIHN0YXJ0 aW5nIHdpdGggUFJFRklYIChhIHN0cmluZykuCiBUaGUgRW1hY3MgcHJvY2VzcyBudW1iZXIg Zm9ybXMgcGFydCBvZiB0aGUgcmVzdWx0LCBzbyB0aGVyZSBpcyBubwogZGFuZ2VyIG9mIGdl bmVyYXRpbmcgYSBuYW1lIGJlaW5nIHVzZWQgYnkgYW5vdGhlciBFbWFjcyBwcm9jZXNzCi0o c28gbG9uZyBhcyBvbmx5IGEgc2luZ2xlIGhvc3QgY2FuIGFjY2VzcyB0aGUgY29udGFpbmlu ZyBkaXJlY3RvcnkuLi4pLgorXChzbyBsb25nIGFzIG9ubHkgYSBzaW5nbGUgaG9zdCBjYW4g YWNjZXNzIHRoZSBjb250YWluaW5nIGRpcmVjdG9yeS4uLikuCiAKIFRoaXMgZnVuY3Rpb24g dHJpZXMgdG8gY2hvb3NlIGEgbmFtZSB0aGF0IGhhcyBubyBleGlzdGluZyBmaWxlLgogRm9y IHRoaXMgdG8gd29yaywgUFJFRklYIHNob3VsZCBiZSBhbiBhYnNvbHV0ZSBmaWxlIG5hbWUu CkBAIC03NTcsNyArNzU3LDcgQEAgbm9ybWFsbHkgdXNlIGBtYWtlLXRlbXAtZmlsZScgaW5z dGVhZC4gICovKQogREVGVU4gKCJleHBhbmQtZmlsZS1uYW1lIiwgRmV4cGFuZF9maWxlX25h bWUsIFNleHBhbmRfZmlsZV9uYW1lLCAxLCAyLCAwLAogICAgICAgIGRvYzogLyogQ29udmVy dCBmaWxlbmFtZSBOQU1FIHRvIGFic29sdXRlLCBhbmQgY2Fub25pY2FsaXplIGl0LgogU2Vj b25kIGFyZyBERUZBVUxULURJUkVDVE9SWSBpcyBkaXJlY3RvcnkgdG8gc3RhcnQgd2l0aCBp ZiBOQU1FIGlzIHJlbGF0aXZlCi0oZG9lcyBub3Qgc3RhcnQgd2l0aCBzbGFzaCBvciB0aWxk ZSk7IGJvdGggdGhlIGRpcmVjdG9yeSBuYW1lIGFuZAorXChkb2VzIG5vdCBzdGFydCB3aXRo IHNsYXNoIG9yIHRpbGRlKTsgYm90aCB0aGUgZGlyZWN0b3J5IG5hbWUgYW5kCiBhIGRpcmVj dG9yeSdzIGZpbGUgbmFtZSBhcmUgYWNjZXB0ZWQuICBJZiBERUZBVUxULURJUkVDVE9SWSBp cyBuaWwgb3IKIG1pc3NpbmcsIHRoZSBjdXJyZW50IGJ1ZmZlcidzIHZhbHVlIG9mIGBkZWZh dWx0LWRpcmVjdG9yeScgaXMgdXNlZC4KIE5BTUUgc2hvdWxkIGJlIGEgc3RyaW5nIHRoYXQg aXMgYSB2YWxpZCBmaWxlIG5hbWUgZm9yIHRoZSB1bmRlcmx5aW5nCkBAIC03NzUsOCArNzc1 LDggQEAgU2VlIGFsc28gdGhlIGZ1bmN0aW9uIGBzdWJzdGl0dXRlLWluLWZpbGUtbmFtZScu CiAKIEZvciB0ZWNobmljYWwgcmVhc29ucywgdGhpcyBmdW5jdGlvbiBjYW4gcmV0dXJuIGNv cnJlY3QgYnV0CiBub24taW50dWl0aXZlIHJlc3VsdHMgZm9yIHRoZSByb290IGRpcmVjdG9y eTsgZm9yIGluc3RhbmNlLAotKGV4cGFuZC1maWxlLW5hbWUgIi4uIiAiLyIpIHJldHVybnMg Ii8uLiIuICBGb3IgdGhpcyByZWFzb24sIHVzZQotKGRpcmVjdG9yeS1maWxlLW5hbWUgKGZp bGUtbmFtZS1kaXJlY3RvcnkgZGlybmFtZSkpIHRvIHRyYXZlcnNlIGEKK1woZXhwYW5kLWZp bGUtbmFtZSAiLi4iICIvIikgcmV0dXJucyAiLy4uIi4gIEZvciB0aGlzIHJlYXNvbiwgdXNl CitcKGRpcmVjdG9yeS1maWxlLW5hbWUgKGZpbGUtbmFtZS1kaXJlY3RvcnkgZGlybmFtZSkp IHRvIHRyYXZlcnNlIGEKIGZpbGVzeXN0ZW0gdHJlZSwgbm90IChleHBhbmQtZmlsZS1uYW1l ICIuLiIgIGRpcm5hbWUpLiAgKi8pCiAgIChMaXNwX09iamVjdCBuYW1lLCBMaXNwX09iamVj dCBkZWZhdWx0X2RpcmVjdG9yeSkKIHsKQEAgLTE0NTksNyArMTQ1OSw3IEBAIGZpbGVzeXN0 ZW0gdHJlZSwgbm90IChleHBhbmQtZmlsZS1uYW1lICIuLiIgIGRpcm5hbWUpLiAgKi8pCiBE RUFGVU4gKCJleHBhbmQtZmlsZS1uYW1lIiwgRmV4cGFuZF9maWxlX25hbWUsIFNleHBhbmRf ZmlsZV9uYW1lLCAxLCAyLCAwLAogICAiQ29udmVydCBGSUxFTkFNRSB0byBhYnNvbHV0ZSwg YW5kIGNhbm9uaWNhbGl6ZSBpdC5cblwKIFNlY29uZCBhcmcgREVGQVVMVCBpcyBkaXJlY3Rv cnkgdG8gc3RhcnQgd2l0aCBpZiBGSUxFTkFNRSBpcyByZWxhdGl2ZVxuXAotKGRvZXMgbm90 IHN0YXJ0IHdpdGggc2xhc2gpOyBpZiBERUZBVUxUIGlzIG5pbCBvciBtaXNzaW5nLFxuXAor XChkb2VzIG5vdCBzdGFydCB3aXRoIHNsYXNoKTsgaWYgREVGQVVMVCBpcyBuaWwgb3IgbWlz c2luZyxcblwKIHRoZSBjdXJyZW50IGJ1ZmZlcidzIHZhbHVlIG9mIGRlZmF1bHQtZGlyZWN0 b3J5IGlzIHVzZWQuXG5cCiBGaWxlbmFtZXMgY29udGFpbmluZyBgLicgb3IgYC4uJyBhcyBj b21wb25lbnRzIGFyZSBzaW1wbGlmaWVkO1xuXAogaW5pdGlhbCBgfi8nIGV4cGFuZHMgdG8g eW91ciBob21lIGRpcmVjdG9yeS5cblwKQEAgLTI0NjgsNyArMjQ2OCw3IEBAIFVzZSBgZmls ZS1zeW1saW5rLXAnIHRvIHRlc3QgZm9yIHN1Y2ggbGlua3MuICAqLykKIERFRlVOICgiZmls ZS1leGVjdXRhYmxlLXAiLCBGZmlsZV9leGVjdXRhYmxlX3AsIFNmaWxlX2V4ZWN1dGFibGVf cCwgMSwgMSwgMCwKICAgICAgICBkb2M6IC8qIFJldHVybiB0IGlmIEZJTEVOQU1FIGNhbiBi ZSBleGVjdXRlZCBieSB5b3UuCiBGb3IgYSBkaXJlY3RvcnksIHRoaXMgbWVhbnMgeW91IGNh biBhY2Nlc3MgZmlsZXMgaW4gdGhhdCBkaXJlY3RvcnkuCi0oSXQgaXMgZ2VuZXJhbGx5IGJl dHRlciB0byB1c2UgYGZpbGUtYWNjZXNzaWJsZS1kaXJlY3RvcnktcCcgZm9yIHRoYXQKK1wo SXQgaXMgZ2VuZXJhbGx5IGJldHRlciB0byB1c2UgYGZpbGUtYWNjZXNzaWJsZS1kaXJlY3Rv cnktcCcgZm9yIHRoYXQKIHB1cnBvc2UsIHRob3VnaC4pICAqLykKICAgKExpc3BfT2JqZWN0 IGZpbGVuYW1lKQogewpAQCAtNTMyOSw4ICs1MzI5LDggQEAgREVGVU4gKCJzZXQtdmlzaXRl ZC1maWxlLW1vZHRpbWUiLCBGc2V0X3Zpc2l0ZWRfZmlsZV9tb2R0aW1lLAogVXNlZnVsIGlm IHRoZSBidWZmZXIgd2FzIG5vdCByZWFkIGZyb20gdGhlIGZpbGUgbm9ybWFsbHkKIG9yIGlm IHRoZSBmaWxlIGl0c2VsZiBoYXMgYmVlbiBjaGFuZ2VkIGZvciBzb21lIGtub3duIGJlbmln biByZWFzb24uCiBBbiBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIG1vZGlmaWNhdGlvbiB0aW1l IHZhbHVlIHRvIHVzZQotKGluc3RlYWQgb2YgdGhhdCBvZiB0aGUgdmlzaXRlZCBmaWxlKSwg aW4gdGhlIGZvcm0gb2YgYSBsaXN0Ci0oSElHSCBMT1cgVVNFQyBQU0VDKSBvciBhbiBpbnRl Z2VyIGZsYWcgYXMgcmV0dXJuZWQgYnkKK1woaW5zdGVhZCBvZiB0aGF0IG9mIHRoZSB2aXNp dGVkIGZpbGUpLCBpbiB0aGUgZm9ybSBvZiBhIGxpc3QKK1woSElHSCBMT1cgVVNFQyBQU0VD KSBvciBhbiBpbnRlZ2VyIGZsYWcgYXMgcmV0dXJuZWQgYnkKIGB2aXNpdGVkLWZpbGUtbW9k dGltZScuICAqLykKICAgKExpc3BfT2JqZWN0IHRpbWVfZmxhZykKIHsKZGlmZiAtLWdpdCBh L3NyYy9maWxlbG9jay5jIGIvc3JjL2ZpbGVsb2NrLmMKaW5kZXggMWIzMmI5My4uYmMzYTYy MCAxMDA2NDQKLS0tIGEvc3JjL2ZpbGVsb2NrLmMKKysrIGIvc3JjL2ZpbGVsb2NrLmMKQEAg LTEwLDggKzEwLDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUg RW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y IG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMg TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24p IGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3 aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9m aXJzdGZpbGUuYyBiL3NyYy9maXJzdGZpbGUuYwppbmRleCA2OGVmZmViLi4xODhkNGY4IDEw MDY0NAotLS0gYS9zcmMvZmlyc3RmaWxlLmMKKysrIGIvc3JjL2ZpcnN0ZmlsZS5jCkBAIC01 LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFj cyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9k aWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo YXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2Zsb2F0 Zm5zLmMgYi9zcmMvZmxvYXRmbnMuYwppbmRleCBjZjQ4NWI2Li5iOWFmMDNiIDEwMDY0NAot LS0gYS9zcmMvZmxvYXRmbnMuYworKysgYi9zcmMvZmxvYXRmbnMuYwpAQCAtMywxNSArMywx NSBAQAogQ29weXJpZ2h0IChDKSAxOTg4LCAxOTkzLTE5OTQsIDE5OTksIDIwMDEtMjAxNiBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCiBJbmMuCiAKLUF1dGhvcjogV29sZmdhbmcgUnVw cHJlY2h0Ci0oYWNjb3JkaW5nIHRvIGFjay50ZXhpKQorQXV0aG9yOiBXb2xmZ2FuZyBSdXBw cmVjaHQgKGFjCitvcmRpbmcgdG8gYWNrLnRleGkpCiAKIFRoaXMgZmlsZSBpcyBwYXJ0IG9m IEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv cgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChh dAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m CkBAIC0xNzAsNyArMTcwLDcgQEAgQ2F1c2UgYW4gZXJyb3IgaWYgWDEgb3IgWDIgaXMgbm90 IGEgZmxvYXQuICAqLykKIERFRlVOICgiZnJleHAiLCBGZnJleHAsIFNmcmV4cCwgMSwgMSwg MCwKICAgICAgICBkb2M6IC8qIEdldCBzaWduaWZpY2FuZCBhbmQgZXhwb25lbnQgb2YgYSBm bG9hdGluZyBwb2ludCBudW1iZXIuCiBCcmVha3MgdGhlIGZsb2F0aW5nIHBvaW50IG51bWJl ciBYIGludG8gaXRzIGJpbmFyeSBzaWduaWZpY2FuZCBTR05GQ0FORAotKGEgZmxvYXRpbmcg cG9pbnQgdmFsdWUgYmV0d2VlbiAwLjUgKGluY2x1ZGVkKSBhbmQgMS4wIChleGNsdWRlZCkp CitcKGEgZmxvYXRpbmcgcG9pbnQgdmFsdWUgYmV0d2VlbiAwLjUgKGluY2x1ZGVkKSBhbmQg MS4wIChleGNsdWRlZCkpCiBhbmQgYW4gaW50ZWdyYWwgZXhwb25lbnQgRVhQIGZvciAyLCBz dWNoIHRoYXQ6CiAKICAgWCA9IFNHTkZDQU5EICogMl5FWFAKQEAgLTQ5MSw3ICs0OTEsNyBA QCBmbW9kX2Zsb2F0IChMaXNwX09iamVjdCB4LCBMaXNwX09iamVjdCB5KQogDAogREVGVU4g KCJmY2VpbGluZyIsIEZmY2VpbGluZywgU2ZjZWlsaW5nLCAxLCAxLCAwLAogICAgICAgIGRv YzogLyogUmV0dXJuIHRoZSBzbWFsbGVzdCBpbnRlZ2VyIG5vIGxlc3MgdGhhbiBBUkcsIGFz IGEgZmxvYXQuCi0oUm91bmQgdG93YXJkICtpbmYuKSAgKi8pCitcKFJvdW5kIHRvd2FyZCAr aW5mLikgICovKQogICAoTGlzcF9PYmplY3QgYXJnKQogewogICBkb3VibGUgZCA9IGV4dHJh Y3RfZmxvYXQgKGFyZyk7CkBAIC01MDEsNyArNTAxLDcgQEAgREVGVU4gKCJmY2VpbGluZyIs IEZmY2VpbGluZywgU2ZjZWlsaW5nLCAxLCAxLCAwLAogCiBERUZVTiAoImZmbG9vciIsIEZm Zmxvb3IsIFNmZmxvb3IsIDEsIDEsIDAsCiAgICAgICAgZG9jOiAvKiBSZXR1cm4gdGhlIGxh cmdlc3QgaW50ZWdlciBubyBncmVhdGVyIHRoYW4gQVJHLCBhcyBhIGZsb2F0LgotKFJvdW5k IHRvd2FyZHMgLWluZi4pICAqLykKK1woUm91bmQgdG93YXJkcyAtaW5mLikgICovKQogICAo TGlzcF9PYmplY3QgYXJnKQogewogICBkb3VibGUgZCA9IGV4dHJhY3RfZmxvYXQgKGFyZyk7 CmRpZmYgLS1naXQgYS9zcmMvZm5zLmMgYi9zcmMvZm5zLmMKaW5kZXggODZhZDMzMy4uNDdl ZDJkOCAxMDA2NDQKLS0tIGEvc3JjL2Zucy5jCisrKyBiL3NyYy9mbnMuYwpAQCAtNyw4ICs3 LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTIxNiw3ICsyMTYsNyBAQCBERUZVTiAo ImNvbXBhcmUtc3RyaW5ncyIsIEZjb21wYXJlX3N0cmluZ3MsIFNjb21wYXJlX3N0cmluZ3Ms IDYsIDcsIDAsCiBUaGUgYXJndW1lbnRzIFNUQVJUMSwgRU5EMSwgU1RBUlQyLCBhbmQgRU5E MiwgaWYgbm9uLW5pbCwgYXJlCiBwb3NpdGlvbnMgc3BlY2lmeWluZyB3aGljaCBwYXJ0cyBv ZiBTVFIxIG9yIFNUUjIgdG8gY29tcGFyZS4gIEluCiBzdHJpbmcgU1RSMSwgY29tcGFyZSB0 aGUgcGFydCBiZXR3ZWVuIFNUQVJUMSAoaW5jbHVzaXZlKSBhbmQgRU5EMQotKGV4Y2x1c2l2 ZSkuICBJZiBTVEFSVDEgaXMgbmlsLCBpdCBkZWZhdWx0cyB0byAwLCB0aGUgYmVnaW5uaW5n IG9mCitcKGV4Y2x1c2l2ZSkuICBJZiBTVEFSVDEgaXMgbmlsLCBpdCBkZWZhdWx0cyB0byAw LCB0aGUgYmVnaW5uaW5nIG9mCiB0aGUgc3RyaW5nOyBpZiBFTkQxIGlzIG5pbCwgaXQgZGVm YXVsdHMgdG8gdGhlIGxlbmd0aCBvZiB0aGUgc3RyaW5nLgogTGlrZXdpc2UsIGluIHN0cmlu ZyBTVFIyLCBjb21wYXJlIHRoZSBwYXJ0IGJldHdlZW4gU1RBUlQyIGFuZCBFTkQyLgogTGlr ZSBpbiBgc3Vic3RyaW5nJywgbmVnYXRpdmUgdmFsdWVzIGFyZSBjb3VudGVkIGZyb20gdGhl IGVuZC4KQEAgLTMzOSw3ICszMzksNyBAQCBUaGlzIGZ1bmN0aW9uIG9iZXlzIHRoZSBjb252 ZW50aW9ucyBmb3IgY29sbGF0aW9uIG9yZGVyIGluIHlvdXIKIGxvY2FsZSBzZXR0aW5ncy4g IEZvciBleGFtcGxlLCBwdW5jdHVhdGlvbiBhbmQgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzCiBt aWdodCBiZSBjb25zaWRlcmVkIGxlc3Mgc2lnbmlmaWNhbnQgZm9yIHNvcnRpbmc6CiAKLShz b3J0IFxcPScoIjExIiAiMTIiICIxIDEiICIxIDIiICIxLjEiICIxLjIiKSBcXD0nc3RyaW5n LWNvbGxhdGUtbGVzc3ApCitcKHNvcnQgXFw9JygiMTEiICIxMiIgIjEgMSIgIjEgMiIgIjEu MSIgIjEuMiIpIFxcPSdzdHJpbmctY29sbGF0ZS1sZXNzcCkKICAgPT4gKCIxMSIgIjEgMSIg IjEuMSIgIjEyIiAiMSAyIiAiMS4yIikKIAogVGhlIG9wdGlvbmFsIGFyZ3VtZW50IExPQ0FM RSwgYSBzdHJpbmcsIG92ZXJyaWRlcyB0aGUgc2V0dGluZyBvZiB5b3VyCkBAIC0zODUsNyAr Mzg1LDcgQEAgc2V0dGluZ3MuICBGb3IgZXhhbXBsZSwgY2hhcmFjdGVycyB3aXRoIGRpZmZl cmVudCBjb2RpbmcgcG9pbnRzIGJ1dAogdGhlIHNhbWUgbWVhbmluZyBtaWdodCBiZSBjb25z aWRlcmVkIGFzIGVxdWFsLCBsaWtlIGRpZmZlcmVudCBncmF2ZQogYWNjZW50IFVuaWNvZGUg Y2hhcmFjdGVyczoKIAotKHN0cmluZy1jb2xsYXRlLWVxdWFscCAoc3RyaW5nID9cXHVGRjQw KSAoc3RyaW5nID9cXHUxRkVGKSkKK1woc3RyaW5nLWNvbGxhdGUtZXF1YWxwIChzdHJpbmcg P1xcdUZGNDApIChzdHJpbmcgP1xcdTFGRUYpKQogICA9PiB0CiAKIFRoZSBvcHRpb25hbCBh cmd1bWVudCBMT0NBTEUsIGEgc3RyaW5nLCBvdmVycmlkZXMgdGhlIHNldHRpbmcgb2YgeW91 cgpAQCAtMTAxOCw3ICsxMDE4LDcgQEAgdG8gYSBtdWx0aWJ5dGUgY2hhcmFjdGVyLiAgSW4g dGhpcyBjYXNlLCB0aGUgcmV0dXJuZWQgc3RyaW5nIGlzIGEKIG5ld2x5IGNyZWF0ZWQgc3Ry aW5nIHdpdGggbm8gdGV4dCBwcm9wZXJ0aWVzLiAgSWYgU1RSSU5HIGlzIG11bHRpYnl0ZQog b3IgZW50aXJlbHkgQVNDSUksIGl0IGlzIHJldHVybmVkIHVuY2hhbmdlZC4gIEluIHBhcnRp Y3VsYXIsIHdoZW4KIFNUUklORyBpcyB1bmlieXRlIGFuZCBlbnRpcmVseSBBU0NJSSwgdGhl IHJldHVybmVkIHN0cmluZyBpcyB1bmlieXRlLgotKFdoZW4gdGhlIGNoYXJhY3RlcnMgYXJl IGFsbCBBU0NJSSwgRW1hY3MgcHJpbWl0aXZlcyB3aWxsIHRyZWF0IHRoZQorXChXaGVuIHRo ZSBjaGFyYWN0ZXJzIGFyZSBhbGwgQVNDSUksIEVtYWNzIHByaW1pdGl2ZXMgd2lsbCB0cmVh dCB0aGUKIHN0cmluZyB0aGUgc2FtZSB3YXkgd2hldGhlciBpdCBpcyB1bmlieXRlIG9yIG11 bHRpYnl0ZS4pICAqLykKICAgKExpc3BfT2JqZWN0IHN0cmluZykKIHsKQEAgLTEyMTcsMTQg KzEyMTcsMTQgQEAgdmFsaWRhdGVfc3ViYXJyYXkgKExpc3BfT2JqZWN0IGFycmF5LCBMaXNw X09iamVjdCBmcm9tLCBMaXNwX09iamVjdCB0bywKIERFRlVOICgic3Vic3RyaW5nIiwgRnN1 YnN0cmluZywgU3N1YnN0cmluZywgMSwgMywgMCwKICAgICAgICBkb2M6IC8qIFJldHVybiBh IG5ldyBzdHJpbmcgd2hvc2UgY29udGVudHMgYXJlIGEgc3Vic3RyaW5nIG9mIFNUUklORy4K IFRoZSByZXR1cm5lZCBzdHJpbmcgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgYmV0d2Vl biBpbmRleCBGUk9NCi0oaW5jbHVzaXZlKSBhbmQgaW5kZXggVE8gKGV4Y2x1c2l2ZSkgb2Yg U1RSSU5HLiAgRlJPTSBhbmQgVE8gYXJlCitcKGluY2x1c2l2ZSkgYW5kIGluZGV4IFRPIChl eGNsdXNpdmUpIG9mIFNUUklORy4gIEZST00gYW5kIFRPIGFyZQogemVyby1pbmRleGVkOiAw IG1lYW5zIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgU1RSSU5HLiAgTmVnYXRpdmUgdmFsdWVz CiBhcmUgY291bnRlZCBmcm9tIHRoZSBlbmQgb2YgU1RSSU5HLiAgSWYgVE8gaXMgbmlsLCB0 aGUgc3Vic3RyaW5nIHJ1bnMKIHRvIHRoZSBlbmQgb2YgU1RSSU5HLgogCiBUaGUgU1RSSU5H IGFyZ3VtZW50IG1heSBhbHNvIGJlIGEgdmVjdG9yLiAgSW4gdGhhdCBjYXNlLCB0aGUgcmV0 dXJuCiB2YWx1ZSBpcyBhIG5ldyB2ZWN0b3IgdGhhdCBjb250YWlucyB0aGUgZWxlbWVudHMg YmV0d2VlbiBpbmRleCBGUk9NCi0oaW5jbHVzaXZlKSBhbmQgaW5kZXggVE8gKGV4Y2x1c2l2 ZSkgb2YgdGhhdCB2ZWN0b3IgYXJndW1lbnQuCitcKGluY2x1c2l2ZSkgYW5kIGluZGV4IFRP IChleGNsdXNpdmUpIG9mIHRoYXQgdmVjdG9yIGFyZ3VtZW50LgogCiBXaXRoIG9uZSBhcmd1 bWVudCwganVzdCBjb3B5IFNUUklORyAod2l0aCBwcm9wZXJ0aWVzLCBpZiBhbnkpLiAgKi8p CiAgIChMaXNwX09iamVjdCBzdHJpbmcsIExpc3BfT2JqZWN0IGZyb20sIExpc3BfT2JqZWN0 IHRvKQpAQCAtMjA0NCw3ICsyMDQ0LDcgQEAgbWVyZ2UgKExpc3BfT2JqZWN0IG9yZ19sMSwg TGlzcF9PYmplY3Qgb3JnX2wyLCBMaXNwX09iamVjdCBwcmVkKQogREVGVU4gKCJwbGlzdC1n ZXQiLCBGcGxpc3RfZ2V0LCBTcGxpc3RfZ2V0LCAyLCAyLCAwLAogICAgICAgIGRvYzogLyog RXh0cmFjdCBhIHZhbHVlIGZyb20gYSBwcm9wZXJ0eSBsaXN0LgogUExJU1QgaXMgYSBwcm9w ZXJ0eSBsaXN0LCB3aGljaCBpcyBhIGxpc3Qgb2YgdGhlIGZvcm0KLShQUk9QMSBWQUxVRTEg UFJPUDIgVkFMVUUyLi4uKS4gIFRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFsdWUKK1wo UFJPUDEgVkFMVUUxIFBST1AyIFZBTFVFMi4uLikuICBUaGlzIGZ1bmN0aW9uIHJldHVybnMg dGhlIHZhbHVlCiBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBQUk9QLCBvciBuaWwgaWYg UFJPUCBpcyBub3Qgb25lIG9mIHRoZQogcHJvcGVydGllcyBvbiB0aGUgbGlzdC4gIFRoaXMg ZnVuY3Rpb24gbmV2ZXIgc2lnbmFscyBhbiBlcnJvci4gICovKQogICAoTGlzcF9PYmplY3Qg cGxpc3QsIExpc3BfT2JqZWN0IHByb3ApCkBAIC0yMDc5LDcgKzIwNzksNyBAQCBUaGlzIGlz IHRoZSBsYXN0IHZhbHVlIHN0b3JlZCB3aXRoIGAocHV0IFNZTUJPTCBQUk9QTkFNRSBWQUxV RSknLiAgKi8pCiBERUZVTiAoInBsaXN0LXB1dCIsIEZwbGlzdF9wdXQsIFNwbGlzdF9wdXQs IDMsIDMsIDAsCiAgICAgICAgZG9jOiAvKiBDaGFuZ2UgdmFsdWUgaW4gUExJU1Qgb2YgUFJP UCB0byBWQUwuCiBQTElTVCBpcyBhIHByb3BlcnR5IGxpc3QsIHdoaWNoIGlzIGEgbGlzdCBv ZiB0aGUgZm9ybQotKFBST1AxIFZBTFVFMSBQUk9QMiBWQUxVRTIgLi4uKS4gIFBST1AgaXMg YSBzeW1ib2wgYW5kIFZBTCBpcyBhbnkgb2JqZWN0LgorXChQUk9QMSBWQUxVRTEgUFJPUDIg VkFMVUUyIC4uLikuICBQUk9QIGlzIGEgc3ltYm9sIGFuZCBWQUwgaXMgYW55IG9iamVjdC4K IElmIFBST1AgaXMgYWxyZWFkeSBhIHByb3BlcnR5IG9uIHRoZSBsaXN0LCBpdHMgdmFsdWUg aXMgc2V0IHRvIFZBTCwKIG90aGVyd2lzZSB0aGUgbmV3IFBST1AgVkFMIHBhaXIgaXMgYWRk ZWQuICBUaGUgbmV3IHBsaXN0IGlzIHJldHVybmVkOwogdXNlIGAoc2V0cSB4IChwbGlzdC1w dXQgeCBwcm9wIHZhbCkpJyB0byBiZSBzdXJlIHRvIHVzZSB0aGUgbmV3IHZhbHVlLgpAQCAt MjEyMyw3ICsyMTIzLDcgQEAgSXQgY2FuIGJlIHJldHJpZXZlZCB3aXRoIGAoZ2V0IFNZTUJP TCBQUk9QTkFNRSknLiAgKi8pCiBERUZVTiAoImxheC1wbGlzdC1nZXQiLCBGbGF4X3BsaXN0 X2dldCwgU2xheF9wbGlzdF9nZXQsIDIsIDIsIDAsCiAgICAgICAgZG9jOiAvKiBFeHRyYWN0 IGEgdmFsdWUgZnJvbSBhIHByb3BlcnR5IGxpc3QsIGNvbXBhcmluZyB3aXRoIGBlcXVhbCcu CiBQTElTVCBpcyBhIHByb3BlcnR5IGxpc3QsIHdoaWNoIGlzIGEgbGlzdCBvZiB0aGUgZm9y bQotKFBST1AxIFZBTFVFMSBQUk9QMiBWQUxVRTIuLi4pLiAgVGhpcyBmdW5jdGlvbiByZXR1 cm5zIHRoZSB2YWx1ZQorXChQUk9QMSBWQUxVRTEgUFJPUDIgVkFMVUUyLi4uKS4gIFRoaXMg ZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFsdWUKIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdpdmVu IFBST1AsIG9yIG5pbCBpZiBQUk9QIGlzIG5vdAogb25lIG9mIHRoZSBwcm9wZXJ0aWVzIG9u IHRoZSBsaXN0LiAgKi8pCiAgIChMaXNwX09iamVjdCBwbGlzdCwgTGlzcF9PYmplY3QgcHJv cCkKQEAgLTIxNDgsNyArMjE0OCw3IEBAIG9uZSBvZiB0aGUgcHJvcGVydGllcyBvbiB0aGUg bGlzdC4gICovKQogREVGVU4gKCJsYXgtcGxpc3QtcHV0IiwgRmxheF9wbGlzdF9wdXQsIFNs YXhfcGxpc3RfcHV0LCAzLCAzLCAwLAogICAgICAgIGRvYzogLyogQ2hhbmdlIHZhbHVlIGlu IFBMSVNUIG9mIFBST1AgdG8gVkFMLCBjb21wYXJpbmcgd2l0aCBgZXF1YWwnLgogUExJU1Qg aXMgYSBwcm9wZXJ0eSBsaXN0LCB3aGljaCBpcyBhIGxpc3Qgb2YgdGhlIGZvcm0KLShQUk9Q MSBWQUxVRTEgUFJPUDIgVkFMVUUyIC4uLikuICBQUk9QIGFuZCBWQUwgYXJlIGFueSBvYmpl Y3RzLgorXChQUk9QMSBWQUxVRTEgUFJPUDIgVkFMVUUyIC4uLikuICBQUk9QIGFuZCBWQUwg YXJlIGFueSBvYmplY3RzLgogSWYgUFJPUCBpcyBhbHJlYWR5IGEgcHJvcGVydHkgb24gdGhl IGxpc3QsIGl0cyB2YWx1ZSBpcyBzZXQgdG8gVkFMLAogb3RoZXJ3aXNlIHRoZSBuZXcgUFJP UCBWQUwgcGFpciBpcyBhZGRlZC4gIFRoZSBuZXcgcGxpc3QgaXMgcmV0dXJuZWQ7CiB1c2Ug YChzZXRxIHggKGxheC1wbGlzdC1wdXQgeCBwcm9wIHZhbCkpJyB0byBiZSBzdXJlIHRvIHVz ZSB0aGUgbmV3IHZhbHVlLgpAQCAtMjg2MSw3ICsyODYxLDcgQEAgVGhlIG5vcm1hbCBtZXNz YWdlcyBhdCBzdGFydCBhbmQgZW5kIG9mIGxvYWRpbmcgRklMRU5BTUUgYXJlIHN1cHByZXNz ZWQuICAqLykKIERFRlVOICgicGxpc3QtbWVtYmVyIiwgRnBsaXN0X21lbWJlciwgU3BsaXN0 X21lbWJlciwgMiwgMiwgMCwKICAgICAgICBkb2M6IC8qIFJldHVybiBub24tbmlsIGlmIFBM SVNUIGhhcyB0aGUgcHJvcGVydHkgUFJPUC4KIFBMSVNUIGlzIGEgcHJvcGVydHkgbGlzdCwg d2hpY2ggaXMgYSBsaXN0IG9mIHRoZSBmb3JtCi0oUFJPUDEgVkFMVUUxIFBST1AyIFZBTFVF MiAuLi4pLiAgUFJPUCBpcyBhIHN5bWJvbC4KK1woUFJPUDEgVkFMVUUxIFBST1AyIFZBTFVF MiAuLi4pLiAgUFJPUCBpcyBhIHN5bWJvbC4KIFVubGlrZSBgcGxpc3QtZ2V0JywgdGhpcyBh bGxvd3MgeW91IHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gYSBtaXNzaW5nCiBwcm9wZXJ0eSBh bmQgYSBwcm9wZXJ0eSB3aXRoIHRoZSB2YWx1ZSBuaWwuCiBUaGUgdmFsdWUgaXMgYWN0dWFs bHkgdGhlIHRhaWwgb2YgUExJU1Qgd2hvc2UgY2FyIGlzIFBST1AuICAqLykKZGlmZiAtLWdp dCBhL3NyYy9mb250LmMgYi9zcmMvZm9udC5jCmluZGV4IDAzOTQ5M2IuLjVhYjNiM2UgMTAw NjQ0Ci0tLSBhL3NyYy9mb250LmMKKysrIGIvc3JjL2ZvbnQuYwpAQCAtOSw4ICs5LDggQEAg VGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBz b2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTQwODYsNyArNDA4Niw3IEBAIERFRlVOICgiZm9u dC1mYWNlLWF0dHJpYnV0ZXMiLCBGZm9udF9mYWNlX2F0dHJpYnV0ZXMsIFNmb250X2ZhY2Vf YXR0cmlidXRlcywgMSwKIEZPTlQgaXMgYSBmb250IG5hbWUsIGEgZm9udC1zcGVjLCBhIGZv bnQtZW50aXR5LCBvciBhIGZvbnQtb2JqZWN0LgogVGhlIHJldHVybiB2YWx1ZSBpcyBhIGxp c3Qgb2YgdGhlIGZvcm0KIAotKDpmYW1pbHkgRkFNSUxZIDpoZWlnaHQgSEVJR0hUIDp3ZWln aHQgV0VJR0hUIDpzbGFudCBTTEFOVCA6d2lkdGggV0lEVEgpCitcKDpmYW1pbHkgRkFNSUxZ IDpoZWlnaHQgSEVJR0hUIDp3ZWlnaHQgV0VJR0hUIDpzbGFudCBTTEFOVCA6d2lkdGggV0lE VEgpCiAKIHdoZXJlIEZBTUlMWSwgSEVJR0hULCBXRUlHSFQsIFNMQU5ULCBhbmQgV0lEVEgg YXJlIGZhY2UgYXR0cmlidXRlIHZhbHVlcwogY29tcGF0aWJsZSB3aXRoIGBzZXQtZmFjZS1h dHRyaWJ1dGUnLiAgU29tZSBvZiB0aGVzZSBrZXktYXR0cmlidXRlIHBhaXJzCkBAIC01Mzc4 LDcgKzUzNzgsNyBAQCB3aGVyZSBFTkNPRElORyBpcyBhIGNoYXJzZXQgb3IgYSBjaGFyLXRh YmxlLAogYW5kIFJFUEVSVE9SWSBpcyBhIGNoYXJzZXQsIGEgY2hhci10YWJsZSwgb3Igbmls LgogCiBJZiBFTkNPRElORyBhbmQgUkVQRVJUT1JZIGFyZSB0aGUgc2FtZSwgdGhlIGVsZW1l bnQgY2FuIGhhdmUgdGhlIGZvcm0KLShSRUdFWFAgLiBFTkNPRElORykuCitcKFJFR0VYUCAu IEVOQ09ESU5HKS4KIAogRU5DT0RJTkcgaXMgZm9yIGNvbnZlcnRpbmcgYSBjaGFyYWN0ZXIg dG8gYSBnbHlwaCBjb2RlIG9mIHRoZSBmb250LgogSWYgRU5DT0RJTkcgaXMgYSBjaGFyc2V0 LCBlbmNvZGluZyBhIGNoYXJhY3RlciBieSB0aGUgY2hhcnNldCBnaXZlcwpkaWZmIC0tZ2l0 IGEvc3JjL2ZvbnQuaCBiL3NyYy9mb250LmgKaW5kZXggMzZmZTUxYS4uY2Y0NzcyOSAxMDA2 NDQKLS0tIGEvc3JjL2ZvbnQuaAorKysgYi9zcmMvZm9udC5oCkBAIC04LDggKzgsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2ZvbnRzZXQuYyBiL3NyYy9m b250c2V0LmMKaW5kZXggMDg0YTliMy4uZGMwMzdhOCAxMDA2NDQKLS0tIGEvc3JjL2ZvbnRz ZXQuYworKysgYi9zcmMvZm9udHNldC5jCkBAIC0xMyw4ICsxMyw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZm9udHNldC5oIGIvc3JjL2ZvbnRzZXQuaApp bmRleCAwNDhhN2Q0Li45MWQ2OTBhIDEwMDY0NAotLS0gYS9zcmMvZm9udHNldC5oCisrKyBi L3NyYy9mb250c2V0LmgKQEAgLTEyLDggKzEyLDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2Yg R05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y Ci0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0 Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0 cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhP VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK ZGlmZiAtLWdpdCBhL3NyYy9mcmFtZS5jIGIvc3JjL2ZyYW1lLmMKaW5kZXggNGY2MTMzMi4u NzUxMWQ1MyAxMDA2NDQKLS0tIGEvc3JjL2ZyYW1lLmMKKysrIGIvc3JjL2ZyYW1lLmMKQEAg LTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVt YWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC01MjI4LDcgKzUyMjgsNyBA QCBrZWVwIGl0IHVuY2hhbmdlZCBpZiB0aGlzIG9wdGlvbiBpcyBlaXRoZXIgdCBvciBhIGxp c3QgY29udGFpbmluZwogYHZlcnRpY2FsLXNjcm9sbC1iYXJzJy4KIAogVGhlIGRlZmF1bHQg dmFsdWUgaXMgXFw9Jyh0b29sLWJhci1saW5lcykgb24gTHVjaWQsIE1vdGlmIGFuZCBXaW5k b3dzCi0od2hpY2ggbWVhbnMgdGhhdCBhZGRpbmcvcmVtb3ZpbmcgYSB0b29sIGJhciBkb2Vz IG5vdCBjaGFuZ2UgdGhlIGZyYW1lCitcKHdoaWNoIG1lYW5zIHRoYXQgYWRkaW5nL3JlbW92 aW5nIGEgdG9vbCBiYXIgZG9lcyBub3QgY2hhbmdlIHRoZSBmcmFtZQogaGVpZ2h0KSwgbmls IG9uIGFsbCBvdGhlciB3aW5kb3cgc3lzdGVtcyBpbmNsdWRpbmcgR1RLKyAod2hpY2ggbWVh bnMKIHRoYXQgY2hhbmdpbmcgYW55IG9mIHRoZSBwYXJhbWV0ZXJzIGxpc3RlZCBhYm92ZSBt YXkgY2hhbmdlIHRoZSBzaXplIG9mCiB0aGUgZnJhbWUpLCBhbmQgdCBvdGhlcndpc2UgKHdo aWNoIG1lYW5zIHRoZSBmcmFtZSBzaXplIG5ldmVyIGNoYW5nZXMKZGlmZiAtLWdpdCBhL3Ny Yy9mcmFtZS5oIGIvc3JjL2ZyYW1lLmgKaW5kZXggNzFkYWI0Yi4uZjBjZGNkNCAxMDA2NDQK LS0tIGEvc3JjL2ZyYW1lLmgKKysrIGIvc3JjL2ZyYW1lLmgKQEAgLTUsOCArNSw4IEBAIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29m dHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgog CiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZnJpbmdlLmMgYi9zcmMvZnJp bmdlLmMKaW5kZXggNTk3YzY2Ni4uMDYxZjc4NiAxMDA2NDQKLS0tIGEvc3JjL2ZyaW5nZS5j CisrKyBiL3NyYy9mcmluZ2UuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQg b2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiBy ZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3Ig KGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBk aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJ VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkg b2YKQEAgLTE3MDEsNyArMTcwMSw3IEBAIHN5bXNfb2ZfZnJpbmdlICh2b2lkKQogICBERUZW QVJfTElTUCAoIm92ZXJmbG93LW5ld2xpbmUtaW50by1mcmluZ2UiLCBWb3ZlcmZsb3dfbmV3 bGluZV9pbnRvX2ZyaW5nZSwKICAgICBkb2M6IC8qIE5vbi1uaWwgbWVhbnMgdGhhdCBuZXds aW5lIG1heSBmbG93IGludG8gdGhlIHJpZ2h0IGZyaW5nZS4KIFRoaXMgbWVhbnMgdGhhdCBk aXNwbGF5IGxpbmVzIHdoaWNoIGFyZSBleGFjdGx5IGFzIHdpZGUgYXMgdGhlIHdpbmRvdwot KG5vdCBjb3VudGluZyB0aGUgZmluYWwgbmV3bGluZSkgd2lsbCBvbmx5IG9jY3VweSBvbmUg c2NyZWVuIGxpbmUsIGJ5CitcKG5vdCBjb3VudGluZyB0aGUgZmluYWwgbmV3bGluZSkgd2ls bCBvbmx5IG9jY3VweSBvbmUgc2NyZWVuIGxpbmUsIGJ5CiBzaG93aW5nIChvciBoaWRpbmcp IHRoZSBmaW5hbCBuZXdsaW5lIGluIHRoZSByaWdodCBmcmluZ2U7IHdoZW4gcG9pbnQKIGlz IGF0IHRoZSBmaW5hbCBuZXdsaW5lLCB0aGUgY3Vyc29yIGlzIHNob3duIGluIHRoZSByaWdo dCBmcmluZ2UuCiBJZiBuaWwsIGFsc28gY29udGludWUgbGluZXMgd2hpY2ggYXJlIGV4YWN0 bHkgYXMgd2lkZSBhcyB0aGUgd2luZG93LiAgKi8pOwpkaWZmIC0tZ2l0IGEvc3JjL2Z0Y3Jm b250LmMgYi9zcmMvZnRjcmZvbnQuYwppbmRleCBmN2IxZTdkLi4yNjc2NTAyIDEwMDY0NAot LS0gYS9zcmMvZnRjcmZvbnQuYworKysgYi9zcmMvZnRjcmZvbnQuYwpAQCAtNSw4ICs1LDgg QEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9mdGZvbnQuYyBiL3Ny Yy9mdGZvbnQuYwppbmRleCA1MDVkNTA4Li5hNDAyMjQ1IDEwMDY0NAotLS0gYS9zcmMvZnRm b250LmMKKysrIGIvc3JjL2Z0Zm9udC5jCkBAIC04LDggKzgsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2Z0Zm9udC5oIGIvc3JjL2Z0Zm9udC5oCmluZGV4 IDBjZmEwYWUuLjkwYWJiNDUgMTAwNjQ0Ci0tLSBhL3NyYy9mdGZvbnQuaAorKysgYi9zcmMv ZnRmb250LmgKQEAgLTcsOCArNyw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFj cy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBX QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC00NCw0 ICs0NCwzIEBAIGV4dGVybiBMaXNwX09iamVjdCBmdGZvbnRfb3BlbjIgKHN0cnVjdCBmcmFt ZSAqZiwKIGV4dGVybiBzaXplX3QgZnRmb250X2luZm9fc2l6ZTsKIAogI2VuZGlmCS8qIEVN QUNTX0ZURk9OVF9IICovCi0KZGlmZiAtLWdpdCBhL3NyYy9mdHhmb250LmMgYi9zcmMvZnR4 Zm9udC5jCmluZGV4IGFkZjBkMjkuLmY0OWQ0NGYgMTAwNjQ0Ci0tLSBhL3NyYy9mdHhmb250 LmMKKysrIGIvc3JjL2Z0eGZvbnQuYwpAQCAtOCw4ICs4LDggQEAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9nZXRwYWdlc2l6ZS5oIGIvc3JjL2dldHBhZ2VzaXpl LmgKaW5kZXggZTQ2NDE1My4uZmU4M2FlOCAxMDA2NDQKLS0tIGEvc3JjL2dldHBhZ2VzaXpl LmgKKysrIGIvc3JjL2dldHBhZ2VzaXplLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCkBAIC00Niw0ICs0NiwzIEBAIGFsb25nIHdpdGggR05VIEVtYWNzLiAgSWYg bm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8KICMgZW5kaWYg Lyogbm8gX1NDX1BBR0VTSVpFICovCiAKICNlbmRpZiAvKiBubyBIQVZFX0dFVFBBR0VTSVpF ICovCi0KZGlmZiAtLWdpdCBhL3NyYy9nZmlsZW5vdGlmeS5jIGIvc3JjL2dmaWxlbm90aWZ5 LmMKaW5kZXggNjJiNGVmYi4uM2IxZjJmYyAxMDA2NDQKLS0tIGEvc3JjL2dmaWxlbm90aWZ5 LmMKKysrIGIvc3JjL2dmaWxlbm90aWZ5LmMKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvZ251dGxzLmMgYi9zcmMvZ251dGxzLmMKaW5k ZXggMDFhNTk4My4uZjAzNTRkNyAxMDA2NDQKLS0tIGEvc3JjL2dudXRscy5jCisrKyBiL3Ny Yy9nbnV0bHMuYwpAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVt YWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1 dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQg eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5Z IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAt LWdpdCBhL3NyYy9nbnV0bHMuaCBiL3NyYy9nbnV0bHMuaAppbmRleCA4ZTg3OWMxLi5lOTM0 OGU3IDEwMDY0NAotLS0gYS9zcmMvZ251dGxzLmgKKysrIGIvc3JjL2dudXRscy5oCkBAIC01 LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFj cyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9k aWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo YXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2d0a3V0 aWwuYyBiL3NyYy9ndGt1dGlsLmMKaW5kZXggMTRiNzZjZS4uN2RjYTU4NSAxMDA2NDQKLS0t IGEvc3JjL2d0a3V0aWwuYworKysgYi9zcmMvZ3RrdXRpbC5jCkBAIC02LDggKzYsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2d0a3V0aWwuaCBiL3NyYy9n dGt1dGlsLmgKaW5kZXggZmYyMmUzYy4uODg0MGZlNyAxMDA2NDQKLS0tIGEvc3JjL2d0a3V0 aWwuaAorKysgYi9zcmMvZ3RrdXRpbC5oCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2ltYWdlLmMgYi9zcmMvaW1hZ2UuYwppbmRleCAx NDRmZTMwLi5hNDRiOTBiIDEwMDY0NAotLS0gYS9zcmMvaW1hZ2UuYworKysgYi9zcmMvaW1h Z2UuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L3NyYy9pbmRlbnQuYyBiL3NyYy9pbmRlbnQuYwppbmRleCBlZTJlOWM2Li5kNTE2MmUzIDEw MDY0NAotLS0gYS9zcmMvaW5kZW50LmMKKysrIGIvc3JjL2luZGVudC5jCkBAIC02LDggKzYs OCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBm cmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBp dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz IHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg d2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2luZGVudC5oIGIv c3JjL2luZGVudC5oCmluZGV4IDgwNGM0N2QuLmYyYTRjOTAgMTAwNjQ0Ci0tLSBhL3NyYy9p bmRlbnQuaAorKysgYi9zcmMvaW5kZW50LmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvaW5vdGlmeS5jIGIvc3JjL2lub3RpZnkuYwpp bmRleCBlMDYxOWU1Li4zOGM4ZGY1IDEwMDY0NAotLS0gYS9zcmMvaW5vdGlmeS5jCisrKyBi L3NyYy9pbm90aWZ5LmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBA IC0yNzIsNyArMjcyLDcgQEAgb25seWRpcgogV2F0Y2hpbmcgYSBkaXJlY3RvcnkgaXMgbm90 IHJlY3Vyc2l2ZS4gIENBTExCQUNLIGlzIHBhc3NlZCBhIHNpbmdsZSBhcmd1bWVudAogRVZF TlQgd2hpY2ggY29udGFpbnMgYW4gZXZlbnQgc3RydWN0dXJlIG9mIHRoZSBmb3JtYXQKIAot KFdBVENILURFU0NSSVBUT1IgQVNQRUNUUyBOQU1FIENPT0tJRSkKK1woV0FUQ0gtREVTQ1JJ UFRPUiBBU1BFQ1RTIE5BTUUgQ09PS0lFKQogCiBXQVRDSC1ERVNDUklQVE9SIGlzIHRoZSBz YW1lIG9iamVjdCB0aGF0IHdhcyByZXR1cm5lZCBieSB0aGlzIGZ1bmN0aW9uLiAgSXQgY2Fu CiBiZSB0ZXN0ZWQgZm9yIGVxdWFsaXR5IHVzaW5nIGBlcXVhbCcuICBBU1BFQ1RTIGRlc2Ny aWJlcyB0aGUgZXZlbnQuICBJdCBpcyBhCmRpZmYgLS1naXQgYS9zcmMvaW5zZGVsLmMgYi9z cmMvaW5zZGVsLmMKaW5kZXggMDVmMzdkNi4uNGFkMTA3NCAxMDA2NDQKLS0tIGEvc3JjL2lu c2RlbC5jCisrKyBiL3NyYy9pbnNkZWwuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlz IHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91 IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1z IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFj cyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAog YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9pbnRlcnZhbHMuYyBiL3NyYy9pbnRlcnZhbHMu YwppbmRleCAyOWNjNDAzLi44NDUxMDY5IDEwMDY0NAotLS0gYS9zcmMvaW50ZXJ2YWxzLmMK KysrIGIvc3JjL2ludGVydmFscy5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2ludGVydmFscy5oIGIvc3JjL2ludGVydmFscy5oCmlu ZGV4IDJiNjhkNGUuLmI4Y2RjZmQgMTAwNjQ0Ci0tLSBhL3NyYy9pbnRlcnZhbHMuaAorKysg Yi9zcmMvaW50ZXJ2YWxzLmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9m IEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv cgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChh dAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m CmRpZmYgLS1naXQgYS9zcmMva2V5Ym9hcmQuYyBiL3NyYy9rZXlib2FyZC5jCmluZGV4IDI5 OGFiNjQuLjI5ZDZkNjcgMTAwNjQ0Ci0tLSBhL3NyYy9rZXlib2FyZC5jCisrKyBiL3NyYy9r ZXlib2FyZC5jCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1h Y3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0 ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVk IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMTEz ODEsNyArMTEzODEsNyBAQCBTZWUgSW5mbyBub2RlIGAoZWxpc3ApTXVsdGlwbGUgVGVybWlu YWxzJy4gICovKTsKIAogICBERUZWQVJfQk9PTCAoImNhbm5vdC1zdXNwZW5kIiwgY2Fubm90 X3N1c3BlbmQsCiAJICAgICAgIGRvYzogLyogTm9uLW5pbCBtZWFucyB0byBhbHdheXMgc3Bh d24gYSBzdWJzaGVsbCBpbnN0ZWFkIG9mIHN1c3BlbmRpbmcuCi0oRXZlbiBpZiB0aGUgb3Bl cmF0aW5nIHN5c3RlbSBoYXMgc3VwcG9ydCBmb3Igc3RvcHBpbmcgYSBwcm9jZXNzLikgICov KTsKK1woRXZlbiBpZiB0aGUgb3BlcmF0aW5nIHN5c3RlbSBoYXMgc3VwcG9ydCBmb3Igc3Rv cHBpbmcgYSBwcm9jZXNzLikgICovKTsKICAgY2Fubm90X3N1c3BlbmQgPSBmYWxzZTsKIAog ICBERUZWQVJfQk9PTCAoIm1lbnUtcHJvbXB0aW5nIiwgbWVudV9wcm9tcHRpbmcsCkBAIC0x MTU5NSw3ICsxMTU5NSw3IEBAIGltbWVkaWF0ZWx5IGFmdGVyIHJ1bm5pbmcgYHBvc3QtY29t bWFuZC1ob29rJy4gICovKTsKICAgREVGVkFSX0xJU1AgKCJpbnB1dC1tZXRob2QtZnVuY3Rp b24iLCBWaW5wdXRfbWV0aG9kX2Z1bmN0aW9uLAogCSAgICAgICBkb2M6IC8qIElmIG5vbi1u aWwsIHRoZSBmdW5jdGlvbiB0aGF0IGltcGxlbWVudHMgdGhlIGN1cnJlbnQgaW5wdXQgbWV0 aG9kLgogSXQncyBjYWxsZWQgd2l0aCBvbmUgYXJndW1lbnQsIGEgcHJpbnRpbmcgY2hhcmFj dGVyIHRoYXQgd2FzIGp1c3QgcmVhZC4KLShUaGF0IG1lYW5zIGEgY2hhcmFjdGVyIHdpdGgg Y29kZSAwNDAuLi4wMTc2LikKK1woVGhhdCBtZWFucyBhIGNoYXJhY3RlciB3aXRoIGNvZGUg MDQwLi4uMDE3Ni4pCiBUeXBpY2FsbHkgdGhpcyBmdW5jdGlvbiB1c2VzIGByZWFkLWV2ZW50 JyB0byByZWFkIGFkZGl0aW9uYWwgZXZlbnRzLgogV2hlbiBpdCBkb2VzIHNvLCBpdCBzaG91 bGQgZmlyc3QgYmluZCBgaW5wdXQtbWV0aG9kLWZ1bmN0aW9uJyB0byBuaWwKIHNvIGl0IHdp bGwgbm90IGJlIGNhbGxlZCByZWN1cnNpdmVseS4KZGlmZiAtLWdpdCBhL3NyYy9rZXlib2Fy ZC5oIGIvc3JjL2tleWJvYXJkLmgKaW5kZXggN2Y5NWYxMS4uMzg3Mzc4NyAxMDA2NDQKLS0t IGEvc3JjL2tleWJvYXJkLmgKKysrIGIvc3JjL2tleWJvYXJkLmgKQEAgLTYsOCArNiw4IEBA IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUg c29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMva2V5bWFwLmMgYi9zcmMv a2V5bWFwLmMKaW5kZXggNzkyOGU2Mi4uOGFiNGM2YyAxMDA2NDQKLS0tIGEvc3JjL2tleW1h cC5jCisrKyBiL3NyYy9rZXltYXAuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKQEAgLTE2ODcsNyArMTY4Nyw3IEBAIERFRlVOICgiZ2xvYmFsLWtleS1iaW5kaW5n IiwgRmdsb2JhbF9rZXlfYmluZGluZywgU2dsb2JhbF9rZXlfYmluZGluZywgMSwgMiwgMCwK IEtFWVMgaXMgYSBzdHJpbmcgb3IgdmVjdG9yLCBhIHNlcXVlbmNlIG9mIGtleXN0cm9rZXMu CiBUaGUgYmluZGluZyBpcyBwcm9iYWJseSBhIHN5bWJvbCB3aXRoIGEgZnVuY3Rpb24gZGVm aW5pdGlvbi4KIFRoaXMgZnVuY3Rpb24ncyByZXR1cm4gdmFsdWVzIGFyZSB0aGUgc2FtZSBh cyB0aG9zZSBvZiBgbG9va3VwLWtleScKLSh3aGljaCBzZWUpLgorXCh3aGljaCBzZWUpLgog CiBJZiBvcHRpb25hbCBhcmd1bWVudCBBQ0NFUFQtREVGQVVMVCBpcyBub24tbmlsLCByZWNv Z25pemUgZGVmYXVsdAogYmluZGluZ3M7IHNlZSB0aGUgZGVzY3JpcHRpb24gb2YgYGxvb2t1 cC1rZXknIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgdGhpcy4gICovKQpAQCAtMjQ5Myw3ICsy NDkzLDcgQEAgSWYgRklSU1RPTkxZIGlzIHRoZSBzeW1ib2wgYG5vbi1hc2NpaScsIHJldHVy biB0aGUgZmlyc3QgYmluZGluZyBmb3VuZCwKIG5vIG1hdHRlciB3aGF0IGl0IGlzLgogSWYg RklSU1RPTkxZIGhhcyBhbm90aGVyIG5vbi1uaWwgdmFsdWUsIHByZWZlciBiaW5kaW5ncwog dGhhdCB1c2UgdGhlIG1vZGlmaWVyIGtleSBzcGVjaWZpZWQgaW4gYHdoZXJlLWlzLXByZWZl cnJlZC1tb2RpZmllcicKLShvciB0aGVpciBtZXRhIHZhcmlhbnRzKSBhbmQgZW50aXJlbHkg cmVqZWN0IG1lbnUgYmluZGluZ3MuCitcKG9yIHRoZWlyIG1ldGEgdmFyaWFudHMpIGFuZCBl bnRpcmVseSByZWplY3QgbWVudSBiaW5kaW5ncy4KIAogSWYgb3B0aW9uYWwgNHRoIGFyZyBO T0lORElSRUNUIGlzIG5vbi1uaWwsIGRvbid0IGV4dHJhY3QgdGhlIGNvbW1hbmRzIGluc2lk ZQogbWVudS1pdGVtcy4gIFRoaXMgbWFrZXMgaXQgcG9zc2libGUgdG8gc2VhcmNoIGZvciBh IG1lbnUtaXRlbSBpdHNlbGYuCkBAIC0yNzI0LDcgKzI3MjQsNyBAQCBsb29rZWQgdXAgaW4g QlVGRkVSLgogVGhlIG9wdGlvbmFsIGFyZ3VtZW50IFBSRUZJWCwgaWYgbm9uLW5pbCwgc2hv dWxkIGJlIGEga2V5IHNlcXVlbmNlOwogdGhlbiB3ZSBkaXNwbGF5IG9ubHkgYmluZGluZ3Mg dGhhdCBzdGFydCB3aXRoIHRoYXQgcHJlZml4LgogVGhlIG9wdGlvbmFsIGFyZ3VtZW50IE1F TlVTLCBpZiBub24tbmlsLCBzYXlzIHRvIG1lbnRpb24gbWVudSBiaW5kaW5ncy4KLShPcmRp bmFyaWx5IHRoZXNlIGFyZSBvbWl0dGVkIGZyb20gdGhlIG91dHB1dC4pICAqLykKK1woT3Jk aW5hcmlseSB0aGVzZSBhcmUgb21pdHRlZCBmcm9tIHRoZSBvdXRwdXQuKSAgKi8pCiAgIChM aXNwX09iamVjdCBidWZmZXIsIExpc3BfT2JqZWN0IHByZWZpeCwgTGlzcF9PYmplY3QgbWVu dXMpCiB7CiAgIExpc3BfT2JqZWN0IG91dGJ1Ziwgc2hhZG93OwpkaWZmIC0tZ2l0IGEvc3Jj L2tleW1hcC5oIGIvc3JjL2tleW1hcC5oCmluZGV4IDAwOWFhMDEuLjM3Zjg2NmMgMTAwNjQ0 Ci0tLSBhL3NyYy9rZXltYXAuaAorKysgYi9zcmMva2V5bWFwLmgKQEAgLTUsOCArNSw4IEBA IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUg c29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMva3F1ZXVlLmMgYi9zcmMv a3F1ZXVlLmMKaW5kZXggYTY5ZDA2ZC4uYzg0OGI3ZiAxMDA2NDQKLS0tIGEvc3JjL2txdWV1 ZS5jCisrKyBiL3NyYy9rcXVldWUuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKQEAgLTY3LDkgKzY3LDggQEAga3F1ZXVlX2RpcmVjdG9yeV9saXN0aW5nIChMaXNw X09iamVjdCBkaXJlY3RvcnlfZmlsZXMpCiAKIC8qIEdlbmVyYXRlIGEgZmlsZSBub3RpZmlj YXRpb24gZXZlbnQuICAqLwogc3RhdGljIHZvaWQKLWtxdWV1ZV9nZW5lcmF0ZV9ldmVudAot KExpc3BfT2JqZWN0IHdhdGNoX29iamVjdCwgTGlzcF9PYmplY3QgYWN0aW9ucywKLSBMaXNw X09iamVjdCBmaWxlLCBMaXNwX09iamVjdCBmaWxlMSkKK2txdWV1ZV9nZW5lcmF0ZV9ldmVu dCAoTGlzcF9PYmplY3Qgd2F0Y2hfb2JqZWN0LCBMaXNwX09iamVjdCBhY3Rpb25zLAorCQkg ICAgICAgTGlzcF9PYmplY3QgZmlsZSwgTGlzcF9PYmplY3QgZmlsZTEpCiB7CiAgIExpc3Bf T2JqZWN0IGZsYWdzLCBhY3Rpb24sIGVudHJ5OwogICBzdHJ1Y3QgaW5wdXRfZXZlbnQgZXZl bnQ7CkBAIC0xMDksOCArMTA4LDcgQEAga3F1ZXVlX2dlbmVyYXRlX2V2ZW50CiAgICByZXBs YWNlZCBieSB0aGUgbmV3IGRpcmVjdG9yeSBsaXN0aW5nIGF0IHRoZSBlbmQgb2YgdGhpcwog ICAgZnVuY3Rpb24uICAqLwogc3RhdGljIHZvaWQKLWtxdWV1ZV9jb21wYXJlX2Rpcl9saXN0 Ci0oTGlzcF9PYmplY3Qgd2F0Y2hfb2JqZWN0KQora3F1ZXVlX2NvbXBhcmVfZGlyX2xpc3Qg KExpc3BfT2JqZWN0IHdhdGNoX29iamVjdCkKIHsKICAgTGlzcF9PYmplY3QgZGlyLCBwZW5k aW5nX2RsLCBkZWxldGVkX2RsOwogICBMaXNwX09iamVjdCBvbGRfZGlyZWN0b3J5X2ZpbGVz LCBvbGRfZGwsIG5ld19kaXJlY3RvcnlfZmlsZXMsIG5ld19kbCwgZGw7CmRpZmYgLS1naXQg YS9zcmMvbGFzdGZpbGUuYyBiL3NyYy9sYXN0ZmlsZS5jCmluZGV4IDJkMGJjYzcuLmQ1MTYw OTMgMTAwNjQ0Ci0tLSBhL3NyYy9sYXN0ZmlsZS5jCisrKyBiL3NyYy9sYXN0ZmlsZS5jCkBA IC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBF bWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3Ig bW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2xp c3AuaCBiL3NyYy9saXNwLmgKaW5kZXggOGVhYjM4Yi4uMjc1ODg4NCAxMDA2NDQKLS0tIGEv c3JjL2xpc3AuaAorKysgYi9zcmMvbGlzcC5oCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUg aXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQot dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVt YWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws CiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL2xyZWFkLmMgYi9zcmMvbHJlYWQuYwppbmRl eCAyNWUzZmYwLi42ZmNiNmY1IDEwMDY0NAotLS0gYS9zcmMvbHJlYWQuYworKysgYi9zcmMv bHJlYWQuYwpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNz LgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTIwNTks NyArMjA1OSw3IEBAIFJldHVybnMgYSBjb25zOiAoT0JKRUNULVJFQUQgLiBGSU5BTC1TVFJJ TkctSU5ERVgpLgogRklOQUwtU1RSSU5HLUlOREVYIGlzIGFuIGludGVnZXIgZ2l2aW5nIHRo ZSBwb3NpdGlvbiBvZiB0aGUgbmV4dAogcmVtYWluaW5nIGNoYXJhY3RlciBpbiBTVFJJTkcu ICBTVEFSVCBhbmQgRU5EIG9wdGlvbmFsbHkgZGVsaW1pdAogYSBzdWJzdHJpbmcgb2YgU1RS SU5HIGZyb20gd2hpY2ggdG8gcmVhZDsgIHRoZXkgZGVmYXVsdCB0byAwIGFuZAotKGxlbmd0 aCBTVFJJTkcpIHJlc3BlY3RpdmVseS4gIE5lZ2F0aXZlIHZhbHVlcyBhcmUgY291bnRlZCBm cm9tCitcKGxlbmd0aCBTVFJJTkcpIHJlc3BlY3RpdmVseS4gIE5lZ2F0aXZlIHZhbHVlcyBh cmUgY291bnRlZCBmcm9tCiB0aGUgZW5kIG9mIFNUUklORy4gICovKQogICAoTGlzcF9PYmpl Y3Qgc3RyaW5nLCBMaXNwX09iamVjdCBzdGFydCwgTGlzcF9PYmplY3QgZW5kKQogewpkaWZm IC0tZ2l0IGEvc3JjL21hY2ZvbnQuaCBiL3NyYy9tYWNmb250LmgKaW5kZXggNTg3ZjEwYS4u NjYzMGZiNSAxMDA2NDQKLS0tIGEvc3JjL21hY2ZvbnQuaAorKysgYi9zcmMvbWFjZm9udC5o CkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtODIsNCArODIsMyBA QCB0eXBlZGVmIGNvbnN0IHN0cnVjdCBfRW1hY3NTY3JlZW5Gb250ICpTY3JlZW5Gb250UmVm OyAvKiBvcGFxdWUgKi8KIGV4dGVybiB2b2lkIG1hY19yZWdpc3Rlcl9mb250X2RyaXZlciAo c3RydWN0IGZyYW1lICpmKTsKIGV4dGVybiB2b2lkICptYWNmb250X2dldF9uc2N0Zm9udCAo c3RydWN0IGZvbnQgKmZvbnQpOwogZXh0ZXJuIHZvaWQgbWFjZm9udF91cGRhdGVfYW50aWFs aWFzX3RocmVzaG9sZCAodm9pZCk7Ci0KZGlmZiAtLWdpdCBhL3NyYy9tYWNmb250Lm0gYi9z cmMvbWFjZm9udC5tCmluZGV4IDQ1ODMwZTAuLmM5MDgyYTUgMTAwNjQ0Ci0tLSBhL3NyYy9t YWNmb250Lm0KKysrIGIvc3JjL21hY2ZvbnQubQpAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxl IGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTog eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRl cm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkK LXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhl IExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBF bWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs LAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg d2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9tYWNyb3MuYyBiL3NyYy9tYWNyb3MuYwpp bmRleCAyODlmMjJiLi4wYzcwM2JhIDEwMDY0NAotLS0gYS9zcmMvbWFjcm9zLmMKKysrIGIv c3JjL21hY3Jvcy5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUg RW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJp YnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShh dCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1 dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBB TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZm IC0tZ2l0IGEvc3JjL21hY3Jvcy5oIGIvc3JjL21hY3Jvcy5oCmluZGV4IDNhMGM1N2UuLjZj NjZjNGEgMTAwNjQ0Ci0tLSBhL3NyYy9tYWNyb3MuaAorKysgYi9zcmMvbWFjcm9zLmgKQEAg LTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVt YWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvbWFy a2VyLmMgYi9zcmMvbWFya2VyLmMKaW5kZXggOWY1M2U5YS4uMDMwMDgzMCAxMDA2NDQKLS0t IGEvc3JjL21hcmtlci5jCisrKyBiL3NyYy9tYXJrZXIuYwpAQCAtNiw4ICs2LDggQEAgVGhp cyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0 d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNo ZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0 aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAK IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9tZW51LmMgYi9zcmMvbWVudS5j CmluZGV4IGNiZGRlZjMuLjk1MDRjZWUgMTAwNjQ0Ci0tLSBhL3NyYy9tZW51LmMKKysrIGIv c3JjL21lbnUuYwpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVt YWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1 dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQg eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5Z IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTEx MzAsNyArMTEzMCw3IEBAIElmIFBPU0lUSU9OIGlzIHQsIGl0IG1lYW5zIHRvIHVzZSB0aGUg Y3VycmVudCBtb3VzZSBwb3NpdGlvbi4KIE1FTlUgaXMgYSBzcGVjaWZpZXIgZm9yIGEgbWVu dS4gIEZvciB0aGUgc2ltcGxlc3QgY2FzZSwgTUVOVSBpcyBhIGtleW1hcC4KIFRoZSBtZW51 IGl0ZW1zIGNvbWUgZnJvbSBrZXkgYmluZGluZ3MgdGhhdCBoYXZlIGEgbWVudSBzdHJpbmcg YXMgd2VsbCBhcwogYSBkZWZpbml0aW9uOyBhY3R1YWxseSwgdGhlICJkZWZpbml0aW9uIiBp biBzdWNoIGEga2V5IGJpbmRpbmcgbG9va3MgbGlrZQotKFNUUklORyAuIFJFQUwtREVGSU5J VElPTikuICBUbyBnaXZlIHRoZSBtZW51IGEgdGl0bGUsIHB1dCBhIHN0cmluZyBpbnRvCitc KFNUUklORyAuIFJFQUwtREVGSU5JVElPTikuICBUbyBnaXZlIHRoZSBtZW51IGEgdGl0bGUs IHB1dCBhIHN0cmluZyBpbnRvCiB0aGUga2V5bWFwIGFzIGEgdG9wLWxldmVsIGVsZW1lbnQu CiAKIElmIFJFQUwtREVGSU5JVElPTiBpcyBuaWwsIHRoYXQgcHV0cyBhIG5vbnNlbGVjdGFi bGUgc3RyaW5nIGluIHRoZSBtZW51LgpAQCAtMTQ5NSw3ICsxNDk1LDcgQEAgVGhlIHJldHVy biB2YWx1ZSBpcyBWQUxVRSBmcm9tIHRoZSBjaG9zZW4gaXRlbS4KIEFuIElURU0gbWF5IGFs c28gYmUganVzdCBhIHN0cmluZy0tdGhhdCBtYWtlcyBhIG5vbnNlbGVjdGFibGUgaXRlbS4K IEFuIElURU0gbWF5IGFsc28gYmUgbmlsLS10aGF0IG1lYW5zIHRvIHB1dCBhbGwgcHJlY2Vk aW5nIGl0ZW1zCiBvbiB0aGUgbGVmdCBvZiB0aGUgZGlhbG9nIGJveCBhbmQgYWxsIGZvbGxv d2luZyBpdGVtcyBvbiB0aGUgcmlnaHQuCi0oQnkgZGVmYXVsdCwgYXBwcm94aW1hdGVseSBo YWxmIGFwcGVhciBvbiBlYWNoIHNpZGUuKQorXChCeSBkZWZhdWx0LCBhcHByb3hpbWF0ZWx5 IGhhbGYgYXBwZWFyIG9uIGVhY2ggc2lkZS4pCiAKIElmIEhFQURFUiBpcyBub24tbmlsLCB0 aGUgZnJhbWUgdGl0bGUgZm9yIHRoZSBib3ggaXMgIkluZm9ybWF0aW9uIiwKIG90aGVyd2lz ZSBpdCBpcyAiUXVlc3Rpb24iLgpkaWZmIC0tZ2l0IGEvc3JjL21lbnUuaCBiL3NyYy9tZW51 LmgKaW5kZXggOTVkMmZlNS4uNGM1MGVmYiAxMDA2NDQKLS0tIGEvc3JjL21lbnUuaAorKysg Yi9zcmMvbWVudS5oCkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUg RW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJp YnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShh dCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1 dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBB TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZm IC0tZ2l0IGEvc3JjL21pbmlidWYuYyBiL3NyYy9taW5pYnVmLmMKaW5kZXggMTgwNjY4Zi4u MjM4YTA0YSAxMDA2NDQKLS0tIGEvc3JjL21pbmlidWYuYworKysgYi9zcmMvbWluaWJ1Zi5j CkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtOTg2LDcgKzk4Niw3 IEBAIERFRlVOICgicmVhZC1uby1ibGFua3MtaW5wdXQiLCBGcmVhZF9ub19ibGFua3NfaW5w dXQsIFNyZWFkX25vX2JsYW5rc19pbnB1dCwgMSwKIFByb21wdCB3aXRoIFBST01QVC4gIFdo aXRlc3BhY2UgdGVybWluYXRlcyB0aGUgaW5wdXQuICBJZiBJTklUSUFMIGlzCiBub24tbmls LCBpdCBzaG91bGQgYmUgYSBzdHJpbmcsIHdoaWNoIGlzIHVzZWQgYXMgaW5pdGlhbCBpbnB1 dCwgd2l0aAogcG9pbnQgcG9zaXRpb25lZCBhdCB0aGUgZW5kLCBzbyB0aGF0IFNQQUNFIHdp bGwgYWNjZXB0IHRoZSBpbnB1dC4KLShBY3R1YWxseSwgSU5JVElBTCBjYW4gYWxzbyBiZSBh IGNvbnMgb2YgYSBzdHJpbmcgYW5kIGFuIGludGVnZXIuCitcKEFjdHVhbGx5LCBJTklUSUFM IGNhbiBhbHNvIGJlIGEgY29ucyBvZiBhIHN0cmluZyBhbmQgYW4gaW50ZWdlci4KIFN1Y2gg dmFsdWVzIGFyZSB0cmVhdGVkIGFzIGluIGByZWFkLWZyb20tbWluaWJ1ZmZlcicsIGJ1dCBh cmUgbm9ybWFsbHkKIG5vdCB1c2VmdWwgaW4gdGhpcyBmdW5jdGlvbi4pCiBUaGlyZCBhcmcg SU5IRVJJVC1JTlBVVC1NRVRIT0QsIGlmIG5vbi1uaWwsIG1lYW5zIHRoZSBtaW5pYnVmZmVy IGluaGVyaXRzCmRpZmYgLS1naXQgYS9zcmMvbXNkb3MuYyBiL3NyYy9tc2Rvcy5jCmluZGV4 IGIzNzhjYzIuLjg0ZThjMzkgMTAwNjQ0Ci0tLSBhL3NyYy9tc2Rvcy5jCisrKyBiL3NyYy9t c2Rvcy5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3Mu CiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp dCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGlu IHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FS UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0 IGEvc3JjL21zZG9zLmggYi9zcmMvbXNkb3MuaAppbmRleCA2OTE4MjJmLi44NjNjYTQ4IDEw MDY0NAotLS0gYS9zcmMvbXNkb3MuaAorKysgYi9zcmMvbXNkb3MuaApAQCAtNSw4ICs1LDgg QEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTEyOSw0ICsxMjksMyBAQCB2b2lkIFhNZW51 RGVzdHJveSAoRGlzcGxheSAqLCBYTWVudSAqKTsKICNlbmRpZiAvKiBub3QgSEFWRV9YX1dJ TkRPV1MgKi8KIAogI2VuZGlmIC8qIG5vdCBFTUFDU19NU0RPU19IICovCi0KZGlmZiAtLWdp dCBhL3NyYy9uc2Zucy5tIGIvc3JjL25zZm5zLm0KaW5kZXggZWRhOTRjNC4uZWEwOTkwOCAx MDA2NDQKLS0tIGEvc3JjL25zZm5zLm0KKysrIGIvc3JjL25zZm5zLm0KQEAgLTcsOCArNyw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC0xNjg0LDcgKzE2ODQsNyBAQCBERUZVTiAo Ingtc2VydmVyLW1heC1yZXF1ZXN0LXNpemUiLCBGeF9zZXJ2ZXJfbWF4X3JlcXVlc3Rfc2l6 ZSwKIAogREVGVU4gKCJ4LXNlcnZlci12ZW5kb3IiLCBGeF9zZXJ2ZXJfdmVuZG9yLCBTeF9z ZXJ2ZXJfdmVuZG9yLCAwLCAxLCAwLAogICAgICAgIGRvYzogLyogUmV0dXJuIHRoZSAidmVu ZG9yIElEIiBzdHJpbmcgb2YgTmV4dHN0ZXAgZGlzcGxheSBzZXJ2ZXIgVEVSTUlOQUwuCi0o TGFiZWxpbmcgZXZlcnkgZGlzdHJpYnV0b3IgYXMgYSAidmVuZG9yIiBlbWJvZGllcyB0aGUg ZmFsc2UgYXNzdW1wdGlvbgorXChMYWJlbGluZyBldmVyeSBkaXN0cmlidXRvciBhcyBhICJ2 ZW5kb3IiIGVtYm9kaWVzIHRoZSBmYWxzZSBhc3N1bXB0aW9uCiB0aGF0IG9wZXJhdGluZyBz eXN0ZW1zIGNhbm5vdCBiZSBkZXZlbG9wZWQgYW5kIGRpc3RyaWJ1dGVkIG5vbmNvbW1lcmNp YWxseS4pCiBUaGUgb3B0aW9uYWwgYXJndW1lbnQgVEVSTUlOQUwgc3BlY2lmaWVzIHdoaWNo IGRpc3BsYXkgdG8gYXNrIGFib3V0LgogVEVSTUlOQUwgc2hvdWxkIGJlIGEgdGVybWluYWwg b2JqZWN0LCBhIGZyYW1lIG9yIGEgZGlzcGxheSBuYW1lIChhIHN0cmluZykuCkBAIC0xNzMw LDcgKzE3MzAsNyBAQCBJZiBvbWl0dGVkIG9yIG5pbCwgdGhhdCBzdGFuZHMgZm9yIHRoZSBz ZWxlY3RlZCBmcmFtZSdzIGRpc3BsYXkuCiAKIE5vdGU6ICJzY3JlZW4iIGhlcmUgaXMgbm90 IGluIE5leHRzdGVwIHRlcm1pbm9sb2d5IGJ1dCBpbiBYMTEncy4gIEZvcgogdGhlIG51bWJl ciBvZiBwaHlzaWNhbCBtb25pdG9ycywgdXNlIGAobGVuZ3RoCi0oZGlzcGxheS1tb25pdG9y LWF0dHJpYnV0ZXMtbGlzdCBURVJNSU5BTCkpJyBpbnN0ZWFkLiAgKi8pCitcKGRpc3BsYXkt bW9uaXRvci1hdHRyaWJ1dGVzLWxpc3QgVEVSTUlOQUwpKScgaW5zdGVhZC4gICovKQogICAo TGlzcF9PYmplY3QgdGVybWluYWwpCiB7CiAgIGNoZWNrX25zX2Rpc3BsYXlfaW5mbyAodGVy bWluYWwpOwpAQCAtMTg2MSw3ICsxODYxLDcgQEAgRElTUExBWSBpcyB0aGUgbmFtZSBvZiB0 aGUgZGlzcGxheSB0byBjb25uZWN0IHRvLgogT3B0aW9uYWwgc2Vjb25kIGFyZyBYUk0tU1RS SU5HIGlzIGEgc3RyaW5nIG9mIHJlc291cmNlcyBpbiB4cmRiIGZvcm1hdC4KIElmIHRoZSBv cHRpb25hbCB0aGlyZCBhcmcgTVVTVC1TVUNDRUVEIGlzIG5vbi1uaWwsCiB0ZXJtaW5hdGUg RW1hY3MgaWYgd2UgY2FuJ3Qgb3BlbiB0aGUgY29ubmVjdGlvbi4KLShJbiB0aGUgTmV4dHN0 ZXAgdmVyc2lvbiwgdGhlIGxhc3QgdHdvIGFyZ3VtZW50cyBhcmUgY3VycmVudGx5IGlnbm9y ZWQuKSAgKi8pCitcKEluIHRoZSBOZXh0c3RlcCB2ZXJzaW9uLCB0aGUgbGFzdCB0d28gYXJn dW1lbnRzIGFyZSBjdXJyZW50bHkgaWdub3JlZC4pICAqLykKICAgICAgKExpc3BfT2JqZWN0 IGRpc3BsYXksIExpc3BfT2JqZWN0IHJlc291cmNlX3N0cmluZywgTGlzcF9PYmplY3QgbXVz dF9zdWNjZWVkKQogewogICBzdHJ1Y3QgbnNfZGlzcGxheV9pbmZvICpkcHlpbmZvOwpAQCAt MjMwMSw3ICsyMzAxLDcgQEAgeF9nZXRfZm9jdXNfZnJhbWUgKHN0cnVjdCBmcmFtZSAqZnJh bWUpCiAKIERFRlVOICgieHctY29sb3ItZGVmaW5lZC1wIiwgRnh3X2NvbG9yX2RlZmluZWRf cCwgU3h3X2NvbG9yX2RlZmluZWRfcCwgMSwgMiwgMCwKICAgICAgICBkb2M6IC8qIEludGVy bmFsIGZ1bmN0aW9uIGNhbGxlZCBieSBgY29sb3ItZGVmaW5lZC1wJywgd2hpY2ggc2VlLgot KE5vdGUgdGhhdCB0aGUgTmV4dHN0ZXAgdmVyc2lvbiBvZiB0aGlzIGZ1bmN0aW9uIGlnbm9y ZXMgRlJBTUUuKSAgKi8pCitcKE5vdGUgdGhhdCB0aGUgTmV4dHN0ZXAgdmVyc2lvbiBvZiB0 aGlzIGZ1bmN0aW9uIGlnbm9yZXMgRlJBTUUuKSAgKi8pCiAgICAgIChMaXNwX09iamVjdCBj b2xvciwgTGlzcF9PYmplY3QgZnJhbWUpCiB7CiAgIE5TQ29sb3IgKiBjb2w7CmRpZmYgLS1n aXQgYS9zcmMvbnNmb250Lm0gYi9zcmMvbnNmb250Lm0KaW5kZXggYjQ2NjgwYi4uOTJlN2Qx MSAxMDA2NDQKLS0tIGEvc3JjL25zZm9udC5tCisrKyBiL3NyYy9uc2ZvbnQubQpAQCAtNiw4 ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3Mg aXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlm eQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9uc2d1aS5o IGIvc3JjL25zZ3VpLmgKaW5kZXggY2MyZTQ1ZS4uOGRhYzFiZCAxMDA2NDQKLS0tIGEvc3Jj L25zZ3VpLmgKKysrIGIvc3JjL25zZ3VpLmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvbnNpbWFnZS5tIGIvc3JjL25zaW1hZ2UubQpp bmRleCBiODcxNDQ4Li41YjI1MzRiIDEwMDY0NAotLS0gYS9zcmMvbnNpbWFnZS5tCisrKyBi L3NyYy9uc2ltYWdlLm0KQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRp ZmYgLS1naXQgYS9zcmMvbnNtZW51Lm0gYi9zcmMvbnNtZW51Lm0KaW5kZXggYzZkNjgzNS4u N2QzNDBlOCAxMDA2NDQKLS0tIGEvc3JjL25zbWVudS5tCisrKyBiL3NyYy9uc21lbnUubQpA QCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUg RW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y IG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMg TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24p IGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3 aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9u c3NlbGVjdC5tIGIvc3JjL25zc2VsZWN0Lm0KaW5kZXggNDYzZjAyYi4uZWJhMjM5MyAxMDA2 NDQKLS0tIGEvc3JjL25zc2VsZWN0Lm0KKysrIGIvc3JjL25zc2VsZWN0Lm0KQEAgLTYsOCAr Niw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlz IGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkK IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp dCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC0zMTYsNyArMzE2LDcgQEAgREVGVU4g KCJucy1vd24tc2VsZWN0aW9uLWludGVybmFsIiwgRm5zX293bl9zZWxlY3Rpb25faW50ZXJu YWwsCiAgICAgICAgU25zX293bl9zZWxlY3Rpb25faW50ZXJuYWwsIDIsIDIsIDAsCiAgICAg ICAgZG9jOiAvKiBBc3NlcnQgYW4gWCBzZWxlY3Rpb24gb2YgdHlwZSBTRUxFQ1RJT04gYW5k IHZhbHVlIFZBTFVFLgogU0VMRUNUSU9OIGlzIGEgc3ltYm9sLCB0eXBpY2FsbHkgYFBSSU1B UlknLCBgU0VDT05EQVJZJywgb3IgYENMSVBCT0FSRCcuCi0oVGhvc2UgYXJlIGxpdGVyYWwg dXBwZXItY2FzZSBzeW1ib2wgbmFtZXMsIHNpbmNlIHRoYXQncyB3aGF0IFggZXhwZWN0cy4p CitcKFRob3NlIGFyZSBsaXRlcmFsIHVwcGVyLWNhc2Ugc3ltYm9sIG5hbWVzLCBzaW5jZSB0 aGF0J3Mgd2hhdCBYIGV4cGVjdHMuKQogVkFMVUUgaXMgdHlwaWNhbGx5IGEgc3RyaW5nLCBv ciBhIGNvbnMgb2YgdHdvIG1hcmtlcnMsIGJ1dCBtYXkgYmUKIGFueXRoaW5nIHRoYXQgdGhl IGZ1bmN0aW9ucyBvbiBgc2VsZWN0aW9uLWNvbnZlcnRlci1hbGlzdCcga25vdyBhYm91dC4g ICovKQogICAgICAoTGlzcF9PYmplY3Qgc2VsZWN0aW9uLCBMaXNwX09iamVjdCB2YWx1ZSkK QEAgLTQxNCw3ICs0MTQsNyBAQCBERUZVTiAoIm5zLXNlbGVjdGlvbi1vd25lci1wIiwgRm5z X3NlbGVjdGlvbl9vd25lcl9wLCBTbnNfc2VsZWN0aW9uX293bmVyX3AsCiAgICAgICAgZG9j OiAvKiBXaGV0aGVyIHRoZSBjdXJyZW50IEVtYWNzIHByb2Nlc3Mgb3ducyB0aGUgZ2l2ZW4g WCBTZWxlY3Rpb24uCiBUaGUgYXJnIHNob3VsZCBiZSB0aGUgbmFtZSBvZiB0aGUgc2VsZWN0 aW9uIGluIHF1ZXN0aW9uLCB0eXBpY2FsbHkgb25lIG9mCiB0aGUgc3ltYm9scyBgUFJJTUFS WScsIGBTRUNPTkRBUlknLCBvciBgQ0xJUEJPQVJEJy4KLShUaG9zZSBhcmUgbGl0ZXJhbCB1 cHBlci1jYXNlIHN5bWJvbCBuYW1lcywgc2luY2UgdGhhdCdzIHdoYXQgWCBleHBlY3RzLikK K1woVGhvc2UgYXJlIGxpdGVyYWwgdXBwZXItY2FzZSBzeW1ib2wgbmFtZXMsIHNpbmNlIHRo YXQncyB3aGF0IFggZXhwZWN0cy4pCiBGb3IgY29udmVuaWVuY2UsIHRoZSBzeW1ib2wgbmls IGlzIHRoZSBzYW1lIGFzIGBQUklNQVJZJywKIGFuZCB0IGlzIHRoZSBzYW1lIGFzIGBTRUNP TkRBUlknLiAgKi8pCiAgICAgIChMaXNwX09iamVjdCBzZWxlY3Rpb24pCkBAIC00MzMsNyAr NDMzLDcgQEAgREVGVU4gKCJucy1nZXQtc2VsZWN0aW9uIiwgRm5zX2dldF9zZWxlY3Rpb24s CiAgICAgICAgU25zX2dldF9zZWxlY3Rpb24sIDIsIDIsIDAsCiAgICAgICAgZG9jOiAvKiBS ZXR1cm4gdGV4dCBzZWxlY3RlZCBmcm9tIHNvbWUgWCB3aW5kb3cuCiBTRUxFQ1RJT04tU1lN Qk9MIGlzIHR5cGljYWxseSBgUFJJTUFSWScsIGBTRUNPTkRBUlknLCBvciBgQ0xJUEJPQVJE Jy4KLShUaG9zZSBhcmUgbGl0ZXJhbCB1cHBlci1jYXNlIHN5bWJvbCBuYW1lcywgc2luY2Ug dGhhdCdzIHdoYXQgWCBleHBlY3RzLikKK1woVGhvc2UgYXJlIGxpdGVyYWwgdXBwZXItY2Fz ZSBzeW1ib2wgbmFtZXMsIHNpbmNlIHRoYXQncyB3aGF0IFggZXhwZWN0cy4pCiBUQVJHRVQt VFlQRSBpcyB0aGUgdHlwZSBvZiBkYXRhIGRlc2lyZWQsIHR5cGljYWxseSBgU1RSSU5HJy4g ICovKQogICAgICAoTGlzcF9PYmplY3Qgc2VsZWN0aW9uX25hbWUsIExpc3BfT2JqZWN0IHRh cmdldF90eXBlKQogewpkaWZmIC0tZ2l0IGEvc3JjL25zdGVybS5oIGIvc3JjL25zdGVybS5o CmluZGV4IGZhNTM5OWMuLjBhZWE5Y2MgMTAwNjQ0Ci0tLSBhL3NyYy9uc3Rlcm0uaAorKysg Yi9zcmMvbnN0ZXJtLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgot KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBA IC0xMDQ0LDEwICsxMDQ0LDEwIEBAIHN0cnVjdCB4X291dHB1dAogCiAvKiBEaWZmZXJlbmNl IGJ0d24gY2hhci1jb2x1bW4tY2FsY3VsYXRlZCBhbmQgYWN0dWFsIFNCIHdpZHRocy4KICAg IFRoaXMgaXMgb25seSBhIGNvbmNlcm4gZm9yIHJlbmRlcmluZyB3aGVuIFNCIG9uIGxlZnQu ICovCi0jZGVmaW5lIE5TX1NDUk9MTF9CQVJfQURKVVNUKHcsIGYpCQlcCi0oV0lORE9XX0hB U19WRVJUSUNBTF9TQ1JPTExfQkFSX09OX0xFRlQgKHcpID8JXAotICAgIChGUkFNRV9TQ1JP TExfQkFSX0NPTFMgKGYpICogRlJBTUVfQ09MVU1OX1dJRFRIIChmKQlcCi0gICAgICAgIC0g TlNfU0NST0xMX0JBUl9XSURUSCAoZikpIDogMCkKKyNkZWZpbmUgTlNfU0NST0xMX0JBUl9B REpVU1QodywgZikJCQkJXAorICAoV0lORE9XX0hBU19WRVJUSUNBTF9TQ1JPTExfQkFSX09O X0xFRlQgKHcpID8JCQlcCisgICAoRlJBTUVfU0NST0xMX0JBUl9DT0xTIChmKSAqIEZSQU1F X0NPTFVNTl9XSURUSCAoZikJCVwKKyAgICAtIE5TX1NDUk9MTF9CQVJfV0lEVEggKGYpKSA6 IDApCiAKIC8qIERpZmZlcmVuY2UgYnR3biBjaGFyLWxpbmUtY2FsY3VsYXRlZCBhbmQgYWN0 dWFsIFNCIGhlaWdodHMuCiAgICBUaGlzIGlzIG9ubHkgYSBjb25jZXJuIGZvciByZW5kZXJp bmcgd2hlbiBTQiBvbiB0b3AuICovCmRpZmYgLS1naXQgYS9zcmMvbnN0ZXJtLm0gYi9zcmMv bnN0ZXJtLm0KaW5kZXggMTg1NzUzZC4uMzhhYTRhMyAxMDA2NDQKLS0tIGEvc3JjL25zdGVy bS5tCisrKyBiL3NyYy9uc3Rlcm0ubQpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9wcmludC5jIGIvc3JjL3ByaW50LmMKaW5kZXggMmVj YzBmNS4uMmI1M2Q3NSAxMDA2NDQKLS0tIGEvc3JjL3ByaW50LmMKKysrIGIvc3JjL3ByaW50 LmMKQEAgLTcsOCArNyw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAog R05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu ZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVi bGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24p IGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhl IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC0yMjI0LDcgKzIy MjQsNyBAQCBBbHNvIHByaW50IGZvcm1mZWVkcyBhcyBgXFxmJy4gICovKTsKIAogICBERUZW QVJfQk9PTCAoInByaW50LWVzY2FwZS1ub25hc2NpaSIsIHByaW50X2VzY2FwZV9ub25hc2Np aSwKIAkgICAgICAgZG9jOiAvKiBOb24tbmlsIG1lYW5zIHByaW50IHVuaWJ5dGUgbm9uLUFT Q0lJIGNoYXJzIGluIHN0cmluZ3MgYXMgXFxPT08uCi0oT09PIGlzIHRoZSBvY3RhbCByZXBy ZXNlbnRhdGlvbiBvZiB0aGUgY2hhcmFjdGVyIGNvZGUuKQorXChPT08gaXMgdGhlIG9jdGFs IHJlcHJlc2VudGF0aW9uIG9mIHRoZSBjaGFyYWN0ZXIgY29kZS4pCiBPbmx5IHNpbmdsZS1i eXRlIGNoYXJhY3RlcnMgYXJlIGFmZmVjdGVkLCBhbmQgb25seSBpbiBgcHJpbjEnLgogV2hl biB0aGUgb3V0cHV0IGdvZXMgaW4gYSBtdWx0aWJ5dGUgYnVmZmVyLCB0aGlzIGZlYXR1cmUg aXMKIGVuYWJsZWQgcmVnYXJkbGVzcyBvZiB0aGUgdmFsdWUgb2YgdGhlIHZhcmlhYmxlLiAg Ki8pOwpAQCAtMjIzMiw3ICsyMjMyLDcgQEAgZW5hYmxlZCByZWdhcmRsZXNzIG9mIHRoZSB2 YWx1ZSBvZiB0aGUgdmFyaWFibGUuICAqLyk7CiAKICAgREVGVkFSX0JPT0wgKCJwcmludC1l c2NhcGUtbXVsdGlieXRlIiwgcHJpbnRfZXNjYXBlX211bHRpYnl0ZSwKIAkgICAgICAgZG9j OiAvKiBOb24tbmlsIG1lYW5zIHByaW50IG11bHRpYnl0ZSBjaGFyYWN0ZXJzIGluIHN0cmlu Z3MgYXMgXFx4WFhYWC4KLShYWFhYIGlzIHRoZSBoZXggcmVwcmVzZW50YXRpb24gb2YgdGhl IGNoYXJhY3RlciBjb2RlLikKK1woWFhYWCBpcyB0aGUgaGV4IHJlcHJlc2VudGF0aW9uIG9m IHRoZSBjaGFyYWN0ZXIgY29kZS4pCiBUaGlzIGFmZmVjdHMgb25seSBgcHJpbjEnLiAgKi8p OwogICBwcmludF9lc2NhcGVfbXVsdGlieXRlID0gMDsKIApkaWZmIC0tZ2l0IGEvc3JjL3By b2Nlc3MuYyBiL3NyYy9wcm9jZXNzLmMKaW5kZXggMWVhYzVlMS4uZGQ1MDg4MyAxMDA2NDQK LS0tIGEvc3JjL3Byb2Nlc3MuYworKysgYi9zcmMvcHJvY2Vzcy5jCkBAIC03LDggKzcsOCBA QCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVl IHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtOTUzLDcgKzk1Myw3IEBAIERFRlVOICgicHJv Y2Vzcy1jb21tYW5kIiwgRnByb2Nlc3NfY29tbWFuZCwgU3Byb2Nlc3NfY29tbWFuZCwgMSwg MSwgMCwKIFRoaXMgaXMgYSBsaXN0IG9mIHN0cmluZ3MsIHRoZSBmaXJzdCBzdHJpbmcgYmVp bmcgdGhlIHByb2dyYW0gZXhlY3V0ZWQKIGFuZCB0aGUgcmVzdCBvZiB0aGUgc3RyaW5ncyBi ZWluZyB0aGUgYXJndW1lbnRzIGdpdmVuIHRvIGl0LgogRm9yIGEgbmV0d29yayBvciBzZXJp YWwgcHJvY2VzcywgdGhpcyBpcyBuaWwgKHByb2Nlc3MgaXMgcnVubmluZykgb3IgdAotKHBy b2Nlc3MgaXMgc3RvcHBlZCkuICAqLykKK1wocHJvY2VzcyBpcyBzdG9wcGVkKS4gICovKQog ICAocmVnaXN0ZXIgTGlzcF9PYmplY3QgcHJvY2VzcykKIHsKICAgQ0hFQ0tfUFJPQ0VTUyAo cHJvY2Vzcyk7CkBAIC0yNjcwLDcgKzI2NzAsNyBAQCBpcyBub3QgZ2l2ZW4gb3IgbmlsLCAx IHN0b3BiaXQgaXMgdXNlZC4KIDpmbG93Y29udHJvbCBGTE9XQ09OVFJPTCAtLSBGTE9XQ09O VFJPTCBkZXRlcm1pbmVzIHRoZSB0eXBlIG9mCiBmbG93Y29udHJvbCB0byBiZSB1c2VkLCB3 aGljaCBpcyBlaXRoZXIgbmlsIChkb24ndCB1c2UgZmxvd2NvbnRyb2wpLAogdGhlIHN5bWJv bCBgaHcnICh1c2UgUlRTL0NUUyBoYXJkd2FyZSBmbG93Y29udHJvbCksIG9yIHRoZSBzeW1i b2wgYHN3JwotKHVzZSBYT04vWE9GRiBzb2Z0d2FyZSBmbG93Y29udHJvbCkuICBJZiBGTE9X Q09OVFJPTCBpcyBub3QgZ2l2ZW4sIG5vCitcKHVzZSBYT04vWE9GRiBzb2Z0d2FyZSBmbG93 Y29udHJvbCkuICBJZiBGTE9XQ09OVFJPTCBpcyBub3QgZ2l2ZW4sIG5vCiBmbG93Y29udHJv bCBpcyB1c2VkLgogCiBgc2VyaWFsLXByb2Nlc3MtY29uZmlndXJlJyBpcyBjYWxsZWQgYnkg YG1ha2Utc2VyaWFsLXByb2Nlc3MnIGZvciB0aGUKQEAgLTI2NzgsMTIgKzI2NzgsMTIgQEAg aW5pdGlhbCBjb25maWd1cmF0aW9uIG9mIHRoZSBzZXJpYWwgcG9ydC4KIAogRXhhbXBsZXM6 CiAKLShzZXJpYWwtcHJvY2Vzcy1jb25maWd1cmUgOnByb2Nlc3MgIi9kZXYvdHR5UzAiIDpz cGVlZCAxMjAwKQorXChzZXJpYWwtcHJvY2Vzcy1jb25maWd1cmUgOnByb2Nlc3MgIi9kZXYv dHR5UzAiIDpzcGVlZCAxMjAwKQogCi0oc2VyaWFsLXByb2Nlc3MtY29uZmlndXJlCitcKHNl cmlhbC1wcm9jZXNzLWNvbmZpZ3VyZQogICAgIDpidWZmZXIgIkNPTTEiIDpzdG9wYml0cyAx IDpwYXJpdHkgXFw9J29kZCA6Zmxvd2NvbnRyb2wgXFw9J2h3KQogCi0oc2VyaWFsLXByb2Nl c3MtY29uZmlndXJlIDpwb3J0ICJcXFxcLlxcQ09NMTMiIDpieXRlc2l6ZSA3KQorXChzZXJp YWwtcHJvY2Vzcy1jb25maWd1cmUgOnBvcnQgIlxcXFwuXFxDT00xMyIgOmJ5dGVzaXplIDcp CiAKIHVzYWdlOiAoc2VyaWFsLXByb2Nlc3MtY29uZmlndXJlICZyZXN0IEFSR1MpICAqLykK ICAgKHB0cmRpZmZfdCBuYXJncywgTGlzcF9PYmplY3QgKmFyZ3MpCkBAIC0yNzc3LDEzICsy Nzc3LDEzIEBAIGlzIGF2YWlsYWJsZSB2aWEgdGhlIGZ1bmN0aW9uIGBwcm9jZXNzLWNvbnRh Y3QnLgogCiBFeGFtcGxlczoKIAotKG1ha2Utc2VyaWFsLXByb2Nlc3MgOnBvcnQgIi9kZXYv dHR5UzAiIDpzcGVlZCA5NjAwKQorXChtYWtlLXNlcmlhbC1wcm9jZXNzIDpwb3J0ICIvZGV2 L3R0eVMwIiA6c3BlZWQgOTYwMCkKIAotKG1ha2Utc2VyaWFsLXByb2Nlc3MgOnBvcnQgIkNP TTEiIDpzcGVlZCAxMTUyMDAgOnN0b3BiaXRzIDIpCitcKG1ha2Utc2VyaWFsLXByb2Nlc3Mg OnBvcnQgIkNPTTEiIDpzcGVlZCAxMTUyMDAgOnN0b3BiaXRzIDIpCiAKLShtYWtlLXNlcmlh bC1wcm9jZXNzIDpwb3J0ICJcXFxcLlxcQ09NMTMiIDpzcGVlZCAxMjAwIDpieXRlc2l6ZSA3 IDpwYXJpdHkgXFw9J29kZCkKK1wobWFrZS1zZXJpYWwtcHJvY2VzcyA6cG9ydCAiXFxcXC5c XENPTTEzIiA6c3BlZWQgMTIwMCA6Ynl0ZXNpemUgNyA6cGFyaXR5IFxcPSdvZGQpCiAKLSht YWtlLXNlcmlhbC1wcm9jZXNzIDpwb3J0ICIvZGV2L3R0eS5CbHVlQ29uc29sZS1TUFAtMSIg OnNwZWVkIG5pbCkKK1wobWFrZS1zZXJpYWwtcHJvY2VzcyA6cG9ydCAiL2Rldi90dHkuQmx1 ZUNvbnNvbGUtU1BQLTEiIDpzcGVlZCBuaWwpCiAKIHVzYWdlOiAgKG1ha2Utc2VyaWFsLXBy b2Nlc3MgJnJlc3QgQVJHUykgICovKQogICAocHRyZGlmZl90IG5hcmdzLCBMaXNwX09iamVj dCAqYXJncykKZGlmZiAtLWdpdCBhL3NyYy9wcm9jZXNzLmggYi9zcmMvcHJvY2Vzcy5oCmlu ZGV4IDhkOWY4ZjQuLjJlNzQzYTMgMTAwNjQ0Ci0tLSBhL3NyYy9wcm9jZXNzLmgKKysrIGIv c3JjL3Byb2Nlc3MuaApAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05V IEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0o YXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmli dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQg QU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlm ZiAtLWdpdCBhL3NyYy9wcm9maWxlci5jIGIvc3JjL3Byb2ZpbGVyLmMKaW5kZXggOTVmODRm ZC4uMzFiZDc3ZiAxMDA2NDQKLS0tIGEvc3JjL3Byb2ZpbGVyLmMKKysrIGIvc3JjL3Byb2Zp bGVyLmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4K IAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQg YS9zcmMvcHVyZXNpemUuaCBiL3NyYy9wdXJlc2l6ZS5oCmluZGV4IGJjYjVhOWMuLmZiOWQ5 MzQgMTAwNjQ0Ci0tLSBhL3NyYy9wdXJlc2l6ZS5oCisrKyBiL3NyYy9wdXJlc2l6ZS5oCkBA IC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBF bWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3Ig bW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3Jh bGxvYy5jIGIvc3JjL3JhbGxvYy5jCmluZGV4IDEyZDJmYTkuLmE5NGY4MWIgMTAwNjQ0Ci0t LSBhL3NyYy9yYWxsb2MuYworKysgYi9zcmMvcmFsbG9jLmMKQEAgLTUsOCArNSw4IEBAIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29m dHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgog CiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvcmVnaW9uLWNhY2hlLmMgYi9z cmMvcmVnaW9uLWNhY2hlLmMKaW5kZXggNGNlN2RlOC4uNDU4NDk1NiAxMDA2NDQKLS0tIGEv c3JjL3JlZ2lvbi1jYWNoZS5jCisrKyBiL3NyYy9yZWdpb24tY2FjaGUuYwpAQCAtNyw4ICs3 LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9yZWdpb24tY2Fj aGUuaCBiL3NyYy9yZWdpb24tY2FjaGUuaAppbmRleCAwYzg4NjFmLi4yNzA1MzFlIDEwMDY0 NAotLS0gYS9zcmMvcmVnaW9uLWNhY2hlLmgKKysrIGIvc3JjL3JlZ2lvbi1jYWNoZS5oCkBA IC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBF bWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3Ig bW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3Nj cm9sbC5jIGIvc3JjL3Njcm9sbC5jCmluZGV4IDUxN2NjNjguLmI4ODYxMDggMTAwNjQ0Ci0t LSBhL3NyYy9zY3JvbGwuYworKysgYi9zcmMvc2Nyb2xsLmMKQEAgLTcsOCArNyw4IEBAIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29m dHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgog CiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvc2VhcmNoLmMgYi9zcmMvc2Vh cmNoLmMKaW5kZXggNjhiMDEyMS4uZjM5ZGY2NyAxMDA2NDQKLS0tIGEvc3JjL3NlYXJjaC5j CisrKyBiL3NyYy9zZWFyY2guYwpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQg b2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiBy ZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3Ig KGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBk aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJ VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkg b2YKZGlmZiAtLWdpdCBhL3NyYy9zaGVhcC5jIGIvc3JjL3NoZWFwLmMKaW5kZXggMTQ1MWVj YS4uZmM1M2M1OCAxMDA2NDQKLS0tIGEvc3JjL3NoZWFwLmMKKysrIGIvc3JjL3NoZWFwLmMK QEAgLTcsOCArNyw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05V IEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v ciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMv c291bmQuYyBiL3NyYy9zb3VuZC5jCmluZGV4IDQyZjFmY2EuLmI5YTc5NGIgMTAwNjQ0Ci0t LSBhL3NyYy9zb3VuZC5jCisrKyBiL3NyYy9zb3VuZC5jCkBAIC02LDggKzYsOCBAQCBUaGlz IGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u Cit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAog R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3N5bnRheC5jIGIvc3JjL3N5bnRh eC5jCmluZGV4IDdlOTg4NTQuLjhlMTRiZjMgMTAwNjQ0Ci0tLSBhL3NyYy9zeW50YXguYwor KysgYi9zcmMvc3ludGF4LmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9m IEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv cgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChh dAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m CmRpZmYgLS1naXQgYS9zcmMvc3ludGF4LmggYi9zcmMvc3ludGF4LmgKaW5kZXggYzM1NzVk NC4uOTZlOTM4YSAxMDA2NDQKLS0tIGEvc3JjL3N5bnRheC5oCisrKyBiL3NyYy9zeW50YXgu aApAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBH TlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3Ny Yy9zeXNkZXAuYyBiL3NyYy9zeXNkZXAuYwppbmRleCAzYzNkYTBkLi40NjAxNjZkIDEwMDY0 NAotLS0gYS9zcmMvc3lzZGVwLmMKKysrIGIvc3JjL3N5c2RlcC5jCkBAIC02LDggKzYsOCBA QCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVl IHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3N5c3NlbGVjdC5oIGIv c3JjL3N5c3NlbGVjdC5oCmluZGV4IGI2MjVhNjUuLjBiZjliNDAgMTAwNjQ0Ci0tLSBhL3Ny Yy9zeXNzZWxlY3QuaAorKysgYi9zcmMvc3lzc2VsZWN0LmgKQEAgLTUsOCArNSw4IEBAIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29m dHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgog CiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvc3lzc2lnbmFsLmggYi9zcmMv c3lzc2lnbmFsLmgKaW5kZXggZGY0YjE0MC4uM2RlODNjNyAxMDA2NDQKLS0tIGEvc3JjL3N5 c3NpZ25hbC5oCisrKyBiL3NyYy9zeXNzaWduYWwuaApAQCAtNiw4ICs2LDggQEAgVGhpcyBm aWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2Fy ZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg YnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdO VSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl ZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp ZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9zeXNzdGRpby5oIGIvc3JjL3N5c3N0 ZGlvLmgKaW5kZXggZTE0MTZiNi4uZjFmOTIzZSAxMDA2NDQKLS0tIGEvc3JjL3N5c3N0ZGlv LmgKKysrIGIvc3JjL3N5c3N0ZGlvLmgKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBw YXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3Mg aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvc3lzdGltZS5oIGIvc3JjL3N5c3RpbWUuaAppbmRl eCAwNGM4M2ZmLi4zNTVhM2MyIDEwMDY0NAotLS0gYS9zcmMvc3lzdGltZS5oCisrKyBiL3Ny Yy9zeXN0aW1lLmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBF bWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmli dXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0 IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0 ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYg LS1naXQgYS9zcmMvc3lzdHR5LmggYi9zcmMvc3lzdHR5LmgKaW5kZXggMTE2YWY5Ny4uZmJk YzZiMSAxMDA2NDQKLS0tIGEvc3JjL3N5c3R0eS5oCisrKyBiL3NyYy9zeXN0dHkuaApAQCAt NSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1h Y3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy9zeXN3 YWl0LmggYi9zcmMvc3lzd2FpdC5oCmluZGV4IGNhNjcyZDEuLjgwMGQ1NzIgMTAwNjQ0Ci0t LSBhL3NyYy9zeXN3YWl0LmgKKysrIGIvc3JjL3N5c3dhaXQuaApAQCAtNSw4ICs1LDggQEAg VGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBz b2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy90ZXJtLmMgYi9zcmMvdGVy bS5jCmluZGV4IDk5MzkyOGUuLjE3ZjM2NzkgMTAwNjQ0Ci0tLSBhL3NyYy90ZXJtLmMKKysr IGIvc3JjL3Rlcm0uYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05V IEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0o YXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmli dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQg QU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlm ZiAtLWdpdCBhL3NyYy90ZXJtY2hhci5oIGIvc3JjL3Rlcm1jaGFyLmgKaW5kZXggZDgxNmRh Mi4uMzViMzBmYiAxMDA2NDQKLS0tIGEvc3JjL3Rlcm1jaGFyLmgKKysrIGIvc3JjL3Rlcm1j aGFyLmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4K IAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQg YS9zcmMvdGVybWhvb2tzLmggYi9zcmMvdGVybWhvb2tzLmgKaW5kZXggYzE4MzUyOC4uZDIx ZDZjZSAxMDA2NDQKLS0tIGEvc3JjL3Rlcm1ob29rcy5oCisrKyBiL3NyYy90ZXJtaG9va3Mu aApAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBH TlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3Ny Yy90ZXJtaW5hbC5jIGIvc3JjL3Rlcm1pbmFsLmMKaW5kZXggYTU1Nzk2Ny4uNWRkOTk3NSAx MDA2NDQKLS0tIGEvc3JjL3Rlcm1pbmFsLmMKKysrIGIvc3JjL3Rlcm1pbmFsLmMKQEAgLTUs OCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNz IGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2Rp ZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh dCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91 dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvdGVybWlu Zm8uYyBiL3NyYy90ZXJtaW5mby5jCmluZGV4IGI4YjVmOTcuLjA0ZGEzMGIgMTAwNjQ0Ci0t LSBhL3NyYy90ZXJtaW5mby5jCisrKyBiL3NyYy90ZXJtaW5mby5jCkBAIC01LDggKzUsOCBA QCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVl IHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3Rlcm1vcHRzLmggYi9z cmMvdGVybW9wdHMuaAppbmRleCA3Y2ZmYTE2Li5jNjRiZDFiIDEwMDY0NAotLS0gYS9zcmMv dGVybW9wdHMuaAorKysgYi9zcmMvdGVybW9wdHMuaApAQCAtNiw4ICs2LDggQEAgVGhpcyBm aWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2Fy ZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg YnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdO VSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl ZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp ZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy90ZXh0cHJvcC5jIGIvc3JjL3RleHRw cm9wLmMKaW5kZXggNzAwOTFiOS4uYzRlNDlkOSAxMDA2NDQKLS0tIGEvc3JjL3RleHRwcm9w LmMKKysrIGIvc3JjL3RleHRwcm9wLmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBw YXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3Mg aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCkBAIC0xNDkzLDcgKzE0OTMsNyBAQCBERUZVTiAoInJlbW92ZS10ZXh0LXByb3Bl cnRpZXMiLCBGcmVtb3ZlX3RleHRfcHJvcGVydGllcywKICAgICAgICBkb2M6IC8qIFJlbW92 ZSBzb21lIHByb3BlcnRpZXMgZnJvbSB0ZXh0IGZyb20gU1RBUlQgdG8gRU5ELgogVGhlIHRo aXJkIGFyZ3VtZW50IFBST1BFUlRJRVMgaXMgYSBwcm9wZXJ0eSBsaXN0CiB3aG9zZSBwcm9w ZXJ0eSBuYW1lcyBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHRvIHJlbW92ZS4KLShUaGUgdmFs dWVzIHN0b3JlZCBpbiBQUk9QRVJUSUVTIGFyZSBpZ25vcmVkLikKK1woVGhlIHZhbHVlcyBz dG9yZWQgaW4gUFJPUEVSVElFUyBhcmUgaWdub3JlZC4pCiBJZiB0aGUgb3B0aW9uYWwgZm91 cnRoIGFyZ3VtZW50IE9CSkVDVCBpcyBhIGJ1ZmZlciAob3IgbmlsLCB3aGljaCBtZWFucwog dGhlIGN1cnJlbnQgYnVmZmVyKSwgU1RBUlQgYW5kIEVORCBhcmUgYnVmZmVyIHBvc2l0aW9u cyAoaW50ZWdlcnMgb3IKIG1hcmtlcnMpLiAgSWYgT0JKRUNUIGlzIGEgc3RyaW5nLCBTVEFS VCBhbmQgRU5EIGFyZSAwLWJhc2VkIGluZGljZXMgaW50byBpdC4KZGlmZiAtLWdpdCBhL3Ny Yy90cGFyYW0uaCBiL3NyYy90cGFyYW0uaAppbmRleCBhYjgyZTViLi5jYzUzYmI5IDEwMDY0 NAotLS0gYS9zcmMvdHBhcmFtLmgKKysrIGIvc3JjL3RwYXJhbS5oCkBAIC02LDggKzYsOCBA QCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVl IHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3VuZG8uYyBiL3NyYy91 bmRvLmMKaW5kZXggMWNjOWM5OC4uYmU1YjI3MCAxMDA2NDQKLS0tIGEvc3JjL3VuZG8uYwor KysgYi9zcmMvdW5kby5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBH TlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IK LShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQK K3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3Ry aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9V VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpk aWZmIC0tZ2l0IGEvc3JjL3VuZXhhaXguYyBiL3NyYy91bmV4YWl4LmMKaW5kZXggZWI1MWQy OC4uYzIwMTJmNyAxMDA2NDQKLS0tIGEvc3JjL3VuZXhhaXguYworKysgYi9zcmMvdW5leGFp eC5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAK IEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh bmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEv c3JjL3VuZXhjb2ZmLmMgYi9zcmMvdW5leGNvZmYuYwppbmRleCBjYzBkZjMwLi42YTA4Mzgw IDEwMDY0NAotLS0gYS9zcmMvdW5leGNvZmYuYworKysgYi9zcmMvdW5leGNvZmYuYwpAQCAt NSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1h Y3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy91bmV4 Y3cuYyBiL3NyYy91bmV4Y3cuYwppbmRleCBmZWJlOTM5Li5hZmQ1NDEzIDEwMDY0NAotLS0g YS9zcmMvdW5leGN3LmMKKysrIGIvc3JjL3VuZXhjdy5jCkBAIC03LDggKzcsOCBAQCBUaGlz IGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u Cit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAog R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3VuZXhlbGYuYyBiL3NyYy91bmV4 ZWxmLmMKaW5kZXggZTkwMTk5NC4uMDY4ZDI2OCAxMDA2NDQKLS0tIGEvc3JjL3VuZXhlbGYu YworKysgYi9zcmMvdW5leGVsZi5jCkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3VuZXhtYWNvc3guYyBiL3NyYy91bmV4bWFjb3N4LmMK aW5kZXggYmZiOGJkNC4uODI3ZWRhNSAxMDA2NDQKLS0tIGEvc3JjL3VuZXhtYWNvc3guYwor KysgYi9zcmMvdW5leG1hY29zeC5jCkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3VuZXh3MzIuYyBiL3NyYy91bmV4dzMyLmMKaW5kZXgg NDYwYTM5ZS4uMTVhYTcyNiAxMDA2NDQKLS0tIGEvc3JjL3VuZXh3MzIuYworKysgYi9zcmMv dW5leHczMi5jCkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1h Y3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0 ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVk IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMzQs MTEgKzM0LDEwIEBAIGFsb25nIHdpdGggR05VIEVtYWNzLiAgSWYgbm90LCBzZWUgPGh0dHA6 Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8KIC8qIEluY2x1ZGUgcmVsZXZhbnQgZGVm aW5pdGlvbnMgZnJvbSBJTUFHRUhMUC5ILCB3aGljaCBjYW4gYmUgZm91bmQKICAgIGluIFxc d2luMzJzZGtcbXN0b29sc1xzYW1wbGVzXGltYWdlXGluY2x1ZGVcaW1hZ2VobHAuaC4gKi8K IAotUElNQUdFX05UX0hFQURFUlMKLShfX3N0ZGNhbGwgKiBwZm5DaGVja1N1bU1hcHBlZEZp bGUpIChMUFZPSUQgQmFzZUFkZHJlc3MsCi0JCQkJICAgIERXT1JEIEZpbGVMZW5ndGgsCi0J CQkJICAgIExQRFdPUkQgSGVhZGVyU3VtLAotCQkJCSAgICBMUERXT1JEIENoZWNrU3VtKTsK K1BJTUFHRV9OVF9IRUFERVJTIChfX3N0ZGNhbGwgKiBwZm5DaGVja1N1bU1hcHBlZEZpbGUp IChMUFZPSUQgQmFzZUFkZHJlc3MsCisJCQkJCQkgICAgICAgRFdPUkQgRmlsZUxlbmd0aCwK KwkJCQkJCSAgICAgICBMUERXT1JEIEhlYWRlclN1bSwKKwkJCQkJCSAgICAgICBMUERXT1JE IENoZWNrU3VtKTsKIAogZXh0ZXJuIEJPT0wgY3RybF9jX2hhbmRsZXIgKHVuc2lnbmVkIGxv bmcgdHlwZSk7CiAKZGlmZiAtLWdpdCBhL3NyYy92bS1saW1pdC5jIGIvc3JjL3ZtLWxpbWl0 LmMKaW5kZXggMGM2ZGJkZC4uZDMyMDUwZiAxMDA2NDQKLS0tIGEvc3JjL3ZtLWxpbWl0LmMK KysrIGIvc3JjL3ZtLWxpbWl0LmMKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0 IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y IChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCmRpZmYgLS1naXQgYS9zcmMvdzE2c2VsZWN0LmMgYi9zcmMvdzE2c2VsZWN0LmMKaW5k ZXggNDhiYjgxMy4uNDM0YTU5OCAxMDA2NDQKLS0tIGEvc3JjL3cxNnNlbGVjdC5jCisrKyBi L3NyYy93MTZzZWxlY3QuYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2Yg R05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y Ci0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0 Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0 cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhP VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK QEAgLTY4Niw3ICs2ODYsNyBAQCBGb3IgTVMtV2luZG93cyBhbmQgTVMtRE9TOgogV2hlbiBz ZW5kaW5nIG9yIHJlY2VpdmluZyB0ZXh0IHZpYSBzZWxlY3Rpb24gYW5kIGNsaXBib2FyZCwg dGhlIHRleHQKIGlzIGVuY29kZWQgb3IgZGVjb2RlZCBieSB0aGlzIGNvZGluZyBzeXN0ZW0u ICBUaGUgZGVmYXVsdCB2YWx1ZSBpcwogdGhlIGN1cnJlbnQgc3lzdGVtIGRlZmF1bHQgZW5j b2Rpbmcgb24gOXgvTWUsIGB1dGYtMTZsZS1kb3MnCi0oVW5pY29kZSkgb24gTlQvVzJLL1hQ LCBhbmQgYGlzby1sYXRpbi0xLWRvcycgb24gTVMtRE9TLgorXChVbmljb2RlKSBvbiBOVC9X MksvWFAsIGFuZCBgaXNvLWxhdGluLTEtZG9zJyBvbiBNUy1ET1MuCiAKIEZvciBYIFdpbmRv d3M6CiBXaGVuIHNlbmRpbmcgdGV4dCB2aWEgc2VsZWN0aW9uIGFuZCBjbGlwYm9hcmQsIGlm IHRoZSB0YXJnZXQKZGlmZiAtLWdpdCBhL3NyYy93MzIuYyBiL3NyYy93MzIuYwppbmRleCBm YmNmYjk3Li5jMjZmMTQ1IDEwMDY0NAotLS0gYS9zcmMvdzMyLmMKKysrIGIvc3JjL3czMi5j CkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdO VSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBl aXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3Jj L3czMi5oIGIvc3JjL3czMi5oCmluZGV4IGZkZTM4MDMuLjQyYTFjNDIgMTAwNjQ0Ci0tLSBh L3NyYy93MzIuaAorKysgYi9zcmMvdzMyLmgKQEAgLTgsOCArOCw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvdzMyY29tbW9uLmggYi9zcmMvdzMyY29tbW9u LmgKaW5kZXggNGZiZWFiNS4uZjMwYzBjZSAxMDA2NDQKLS0tIGEvc3JjL3czMmNvbW1vbi5o CisrKyBiL3NyYy93MzJjb21tb24uaApAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKQEAgLTE1LDcgKzE1LDcgQEAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y IG1vcmUgZGV0YWlscy4KIAogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIGFsb25nIHdpdGggR05VIEVtYWNzLiAg SWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotICAgCisKICov CiAKICNpZm5kZWYgVzMyQ09NTU9OX0gKZGlmZiAtLWdpdCBhL3NyYy93MzJjb25zb2xlLmMg Yi9zcmMvdzMyY29uc29sZS5jCmluZGV4IDYyNzdmMTMuLjUxMmQyMGQgMTAwNjQ0Ci0tLSBh L3NyYy93MzJjb25zb2xlLmMKKysrIGIvc3JjL3czMmNvbnNvbGUuYwpAQCAtNSw4ICs1LDgg QEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy93MzJmbnMuYyBiL3Ny Yy93MzJmbnMuYwppbmRleCBhNTAxOGFlLi5iOTAwMmJhIDEwMDY0NAotLS0gYS9zcmMvdzMy Zm5zLmMKKysrIGIvc3JjL3czMmZucy5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpAQCAtNTIwNyw3ICs1MjA3LDcgQEAgeF9nZXRfZm9jdXNfZnJhbWUgKHN0cnVj dCBmcmFtZSAqZnJhbWUpCiAKIERFRlVOICgieHctY29sb3ItZGVmaW5lZC1wIiwgRnh3X2Nv bG9yX2RlZmluZWRfcCwgU3h3X2NvbG9yX2RlZmluZWRfcCwgMSwgMiwgMCwKICAgICAgICBk b2M6IC8qIEludGVybmFsIGZ1bmN0aW9uIGNhbGxlZCBieSBgY29sb3ItZGVmaW5lZC1wJywg d2hpY2ggc2VlLgotKE5vdGUgdGhhdCB0aGUgTmV4dHN0ZXAgdmVyc2lvbiBvZiB0aGlzIGZ1 bmN0aW9uIGlnbm9yZXMgRlJBTUUuKSAgKi8pCitcKE5vdGUgdGhhdCB0aGUgTmV4dHN0ZXAg dmVyc2lvbiBvZiB0aGlzIGZ1bmN0aW9uIGlnbm9yZXMgRlJBTUUuKSAgKi8pCiAgIChMaXNw X09iamVjdCBjb2xvciwgTGlzcF9PYmplY3QgZnJhbWUpCiB7CiAgIFhDb2xvciBmb287CkBA IC01MzQ5LDcgKzUzNDksNyBAQCBJZiBvbWl0dGVkIG9yIG5pbCwgdGhhdCBzdGFuZHMgZm9y IHRoZSBzZWxlY3RlZCBmcmFtZSdzIGRpc3BsYXkuICAqLykKIERFRlVOICgieC1zZXJ2ZXIt dmVuZG9yIiwgRnhfc2VydmVyX3ZlbmRvciwgU3hfc2VydmVyX3ZlbmRvciwgMCwgMSwgMCwK ICAgICAgICBkb2M6IC8qIFJldHVybiB0aGUgInZlbmRvciBJRCIgc3RyaW5nIG9mIHRoZSBH VUkgc29mdHdhcmUgb24gVEVSTUlOQUwuCiAKLShMYWJlbGluZyBldmVyeSBkaXN0cmlidXRv ciBhcyBhICJ2ZW5kb3IiIGVtYm9kaWVzIHRoZSBmYWxzZSBhc3N1bXB0aW9uCitcKExhYmVs aW5nIGV2ZXJ5IGRpc3RyaWJ1dG9yIGFzIGEgInZlbmRvciIgZW1ib2RpZXMgdGhlIGZhbHNl IGFzc3VtcHRpb24KIHRoYXQgb3BlcmF0aW5nIHN5c3RlbXMgY2Fubm90IGJlIGRldmVsb3Bl ZCBhbmQgZGlzdHJpYnV0ZWQgbm9uY29tbWVyY2lhbGx5LikKIAogRm9yIEdOVSBhbmQgVW5p eCBzeXN0ZW1zLCB0aGlzIHF1ZXJpZXMgdGhlIFggc2VydmVyIHNvZnR3YXJlOyBmb3IKQEAg LTU3NTEsNyArNTc1MSw3IEBAIERJU1BMQVkgaXMgdGhlIG5hbWUgb2YgdGhlIGRpc3BsYXkg dG8gY29ubmVjdCB0by4KIE9wdGlvbmFsIHNlY29uZCBhcmcgWFJNLVNUUklORyBpcyBhIHN0 cmluZyBvZiByZXNvdXJjZXMgaW4geHJkYiBmb3JtYXQuCiBJZiB0aGUgb3B0aW9uYWwgdGhp cmQgYXJnIE1VU1QtU1VDQ0VFRCBpcyBub24tbmlsLAogdGVybWluYXRlIEVtYWNzIGlmIHdl IGNhbid0IG9wZW4gdGhlIGNvbm5lY3Rpb24uCi0oSW4gdGhlIE5leHRzdGVwIHZlcnNpb24s IHRoZSBsYXN0IHR3byBhcmd1bWVudHMgYXJlIGN1cnJlbnRseSBpZ25vcmVkLikgICovKQor XChJbiB0aGUgTmV4dHN0ZXAgdmVyc2lvbiwgdGhlIGxhc3QgdHdvIGFyZ3VtZW50cyBhcmUg Y3VycmVudGx5IGlnbm9yZWQuKSAgKi8pCiAgIChMaXNwX09iamVjdCBkaXNwbGF5LCBMaXNw X09iamVjdCB4cm1fc3RyaW5nLCBMaXNwX09iamVjdCBtdXN0X3N1Y2NlZWQpCiB7CiAgIGNo YXIgKnhybV9vcHRpb247CkBAIC04MDkwLDcgKzgwOTAsNyBAQCBERUZVTiAoInczMi1zZXQt bW91c2UtYWJzb2x1dGUtcGl4ZWwtcG9zaXRpb24iLCBGdzMyX3NldF9tb3VzZV9hYnNvbHV0 ZV9waXhlbF9wbwogICAgICAgIFN3MzJfc2V0X21vdXNlX2Fic29sdXRlX3BpeGVsX3Bvc2l0 aW9uLCAyLCAyLCAwLAogICAgICAgIGRvYzogLyogTW92ZSBtb3VzZSBwb2ludGVyIHRvIGFi c29sdXRlIHBpeGVsIHBvc2l0aW9uIChYLCBZKS4KIFRoZSBjb29yZGluYXRlcyBYIGFuZCBZ IGFyZSBpbnRlcnByZXRlZCBpbiBwaXhlbHMgcmVsYXRpdmUgdG8gYSBwb3NpdGlvbgotKDAs IDApIG9mIHRoZSBzZWxlY3RlZCBmcmFtZSdzIGRpc3BsYXkuICAqLykKK1woMCwgMCkgb2Yg dGhlIHNlbGVjdGVkIGZyYW1lJ3MgZGlzcGxheS4gICovKQogICAoTGlzcF9PYmplY3QgeCwg TGlzcF9PYmplY3QgeSkKIHsKICAgVUlOVCB0cmFpbF9udW0gPSAwOwpkaWZmIC0tZ2l0IGEv c3JjL3czMmZvbnQuYyBiL3NyYy93MzJmb250LmMKaW5kZXggMGMzZWZlMi4uYTE4NzhhZCAx MDA2NDQKLS0tIGEvc3JjL3czMmZvbnQuYworKysgYi9zcmMvdzMyZm9udC5jCkBAIC01LDgg KzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBp cyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5 CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQg aXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3czMmZvbnQu aCBiL3NyYy93MzJmb250LmgKaW5kZXggYTNmZDM1Ny4uNzI4YWQ4YiAxMDA2NDQKLS0tIGEv c3JjL3czMmZvbnQuaAorKysgYi9zcmMvdzMyZm9udC5oCkBAIC01LDggKzUsOCBAQCBUaGlz IGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u Cit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAog R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3czMmd1aS5oIGIvc3JjL3czMmd1 aS5oCmluZGV4IGZmN2FmODcuLjhlOTk1Y2YgMTAwNjQ0Ci0tLSBhL3NyYy93MzJndWkuaAor KysgYi9zcmMvdzMyZ3VpLmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9m IEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv cgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChh dAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m CmRpZmYgLS1naXQgYS9zcmMvdzMyaGVhcC5jIGIvc3JjL3czMmhlYXAuYwppbmRleCBiOTA4 MTY5Li5kZjJmZTBhIDEwMDY0NAotLS0gYS9zcmMvdzMyaGVhcC5jCisrKyBiL3NyYy93MzJo ZWFwLmMKQEAgLTczLDEyICs3MywxMSBAQCB0eXBlZGVmIFBWT0lEIChXSU5BUEkgKiBSdGxD cmVhdGVIZWFwX1Byb2MpICgKIAogdHlwZWRlZiBMT05HIE5UU1RBVFVTOwogCi10eXBlZGVm IE5UU1RBVFVTCi0oTlRBUEkgKiBQUlRMX0hFQVBfQ09NTUlUX1JPVVRJTkUpKAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTiBQVk9JRCBCYXNlLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBJTiBPVVQgUFZPSUQgKkNvbW1pdEFkZHJlc3Ms Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOIE9VVCBQU0laRV9UIENv bW1pdFNpemUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsKK3R5cGVk ZWYgTlRTVEFUVVMgKE5UQVBJICpQUlRMX0hFQVBfQ09NTUlUX1JPVVRJTkUpICgKKwkJCQkJ CSAgICBJTiBQVk9JRCBCYXNlLAorCQkJCQkJICAgIElOIE9VVCBQVk9JRCAqQ29tbWl0QWRk cmVzcywKKwkJCQkJCSAgICBJTiBPVVQgUFNJWkVfVCBDb21taXRTaXplCisJCQkJCQkgICAg KTsKIAogdHlwZWRlZiBzdHJ1Y3QgX1JUTF9IRUFQX1BBUkFNRVRFUlMgewogICBVTE9ORyBM ZW5ndGg7CmRpZmYgLS1naXQgYS9zcmMvdzMyaGVhcC5oIGIvc3JjL3czMmhlYXAuaAppbmRl eCBjNTY5MDMzLi41MjNiY2ViIDEwMDY0NAotLS0gYS9zcmMvdzMyaGVhcC5oCisrKyBiL3Ny Yy93MzJoZWFwLmgKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBF bWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmli dXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0 IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0 ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYg LS1naXQgYS9zcmMvdzMyaW5ldnQuYyBiL3NyYy93MzJpbmV2dC5jCmluZGV4IGU3MTRlMjcu Ljg2NzQyNWYgMTAwNjQ0Ci0tLSBhL3NyYy93MzJpbmV2dC5jCisrKyBiL3NyYy93MzJpbmV2 dC5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAK IEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh bmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEv c3JjL3czMmluZXZ0LmggYi9zcmMvdzMyaW5ldnQuaAppbmRleCBiMjNjNzg3Li5jMzE3MTk2 IDEwMDY0NAotLS0gYS9zcmMvdzMyaW5ldnQuaAorKysgYi9zcmMvdzMyaW5ldnQuaApAQCAt NSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1h Y3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy93MzJt ZW51LmMgYi9zcmMvdzMybWVudS5jCmluZGV4IGQ4YzNkYzEuLmQ5YWI4ZjUgMTAwNjQ0Ci0t LSBhL3NyYy93MzJtZW51LmMKKysrIGIvc3JjL3czMm1lbnUuYwpAQCAtNiw4ICs2LDggQEAg VGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBz b2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy93MzJub3RpZnkuYyBiL3Ny Yy93MzJub3RpZnkuYwppbmRleCA3MTc4N2M0Li41ODZjMjA2IDEwMDY0NAotLS0gYS9zcmMv dzMybm90aWZ5LmMKKysrIGIvc3JjL3czMm5vdGlmeS5jCkBAIC01LDggKzUsOCBAQCBUaGlz IGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u Cit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAog R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3czMnByb2MuYyBiL3NyYy93MzJw cm9jLmMKaW5kZXggODVkZGJmZC4uNGE2Zjc4NiAxMDA2NDQKLS0tIGEvc3JjL3czMnByb2Mu YworKysgYi9zcmMvdzMycHJvYy5jCkBAIC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3czMnJlZy5jIGIvc3JjL3czMnJlZy5jCmluZGV4IDdk MWNjZjguLmE4NzM4MTggMTAwNjQ0Ci0tLSBhL3NyYy93MzJyZWcuYworKysgYi9zcmMvdzMy cmVnLmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4K IAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQg YS9zcmMvdzMyc2VsZWN0LmMgYi9zcmMvdzMyc2VsZWN0LmMKaW5kZXggY2U0ZWQ2OS4uMTM4 ZmU4NSAxMDA2NDQKLS0tIGEvc3JjL3czMnNlbGVjdC5jCisrKyBiL3NyYy93MzJzZWxlY3Qu YwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBH TlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3Ny Yy93MzJzZWxlY3QuaCBiL3NyYy93MzJzZWxlY3QuaAppbmRleCA4MjE2MzgwLi41NDAyMmY3 IDEwMDY0NAotLS0gYS9zcmMvdzMyc2VsZWN0LmgKKysrIGIvc3JjL3czMnNlbGVjdC5oCkBA IC02LDggKzYsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBF bWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3Ig bW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3cz MnRlcm0uYyBiL3NyYy93MzJ0ZXJtLmMKaW5kZXggMzZhNTAyMS4uNjJhZDRlYiAxMDA2NDQK LS0tIGEvc3JjL3czMnRlcm0uYworKysgYi9zcmMvdzMydGVybS5jCkBAIC02LDggKzYsOCBA QCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVl IHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3czMnRlcm0uaCBiL3Ny Yy93MzJ0ZXJtLmgKaW5kZXggNTA5MDYyNC4uMmZlZDU2ZSAxMDA2NDQKLS0tIGEvc3JjL3cz MnRlcm0uaAorKysgYi9zcmMvdzMydGVybS5oCkBAIC01LDggKzUsOCBAQCBUaGlzIGZpbGUg aXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQot dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVt YWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws CiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3czMnVuaXNjcmliZS5jIGIvc3JjL3czMnVu aXNjcmliZS5jCmluZGV4IGM1YmE4N2IuLmRkY2E1ZjUgMTAwNjQ0Ci0tLSBhL3NyYy93MzJ1 bmlzY3JpYmUuYworKysgYi9zcmMvdzMydW5pc2NyaWJlLmMKQEAgLTUsOCArNSw4IEBAIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29m dHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAz IG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgog CiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl IHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvdzMyeGZucy5jIGIvc3JjL3cz MnhmbnMuYwppbmRleCAyOTYzNmQxLi4wNGJmNWNlIDEwMDY0NAotLS0gYS9zcmMvdzMyeGZu cy5jCisrKyBiL3NyYy93MzJ4Zm5zLmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBpcyBw YXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3Mg aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvd2lkZ2V0LmMgYi9zcmMvd2lkZ2V0LmMKaW5kZXgg YTcxZGU5MC4uMjhiYjQ3NSAxMDA2NDQKLS0tIGEvc3JjL3dpZGdldC5jCisrKyBiL3NyYy93 aWRnZXQuYwpAQCAtNSw4ICs1LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNz LgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdp dCBhL3NyYy93aWRnZXQuaCBiL3NyYy93aWRnZXQuaAppbmRleCAxM2ViOWU3Li5jZWVlYzM4 IDEwMDY0NAotLS0gYS9zcmMvd2lkZ2V0LmgKKysrIGIvc3JjL3dpZGdldC5oCkBAIC01LDgg KzUsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBp cyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5 CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQg aXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3dpZGdldHBy di5oIGIvc3JjL3dpZGdldHBydi5oCmluZGV4IDI0ZTgzNzguLjlkOWFhMjEgMTAwNjQ0Ci0t LSBhL3NyYy93aWRnZXRwcnYuaAorKysgYi9zcmMvd2lkZ2V0cHJ2LmgKQEAgLTUsOCArNSw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMvd2luZG93LmMgYi9z cmMvd2luZG93LmMKaW5kZXggODk1M2QzYy4uNzMzY2Y3NSAxMDA2NDQKLS0tIGEvc3JjL3dp bmRvdy5jCisrKyBiL3NyYy93aW5kb3cuYwpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlz IHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91 IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1z IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFj cyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAog YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKQEAgLTY3MCw3ICs2NzAsNyBAQCBERUZVTiAoInNldC13aW5kb3ctY29tYmlu YXRpb24tbGltaXQiLCBGc2V0X3dpbmRvd19jb21iaW5hdGlvbl9saW1pdCwgU3NldF93aW5k bwogV0lORE9XIG11c3QgYmUgYSB2YWxpZCB3aW5kb3cgdXNlZCBpbiBob3Jpem9udGFsIG9y IHZlcnRpY2FsIGNvbWJpbmF0aW9uLgogSWYgTElNSVQgaXMgbmlsLCBjaGlsZCB3aW5kb3dz IG9mIFdJTkRPVyBjYW4gYmUgcmVjb21iaW5lZCB3aXRoIFdJTkRPVydzCiBzaWJsaW5ncy4g IExJTUlUIHQgbWVhbnMgdGhhdCBjaGlsZCB3aW5kb3dzIG9mIFdJTkRPVyBhcmUgbmV2ZXIK LShyZS0pY29tYmluZWQgd2l0aCBXSU5ET1cncyBzaWJsaW5ncy4gIE90aGVyIHZhbHVlcyBh cmUgcmVzZXJ2ZWQgZm9yCitcKHJlLSljb21iaW5lZCB3aXRoIFdJTkRPVydzIHNpYmxpbmdz LiAgT3RoZXIgdmFsdWVzIGFyZSByZXNlcnZlZCBmb3IKIGZ1dHVyZSB1c2UuICAqLykKICAg KExpc3BfT2JqZWN0IHdpbmRvdywgTGlzcF9PYmplY3QgbGltaXQpCiB7CkBAIC0xMzI0LDcg KzEzMjQsNyBAQCBERUZVTiAoImNvb3JkaW5hdGVzLWluLXdpbmRvdy1wIiwgRmNvb3JkaW5h dGVzX2luX3dpbmRvd19wLAogV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQgZGVm YXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4KIENPT1JESU5BVEVTIGlzIGEgY29ucyBvZiB0 aGUgZm9ybSAoWCAuIFkpLCBYIGFuZCBZIGJlaW5nIGRpc3RhbmNlcwogbWVhc3VyZWQgaW4g Y2hhcmFjdGVycyBmcm9tIHRoZSB1cHBlci1sZWZ0IGNvcm5lciBvZiB0aGUgZnJhbWUuCi0o MCAuIDApIGRlbm90ZXMgdGhlIGNoYXJhY3RlciBpbiB0aGUgdXBwZXIgbGVmdCBjb3JuZXIg b2YgdGhlCitcKDAgLiAwKSBkZW5vdGVzIHRoZSBjaGFyYWN0ZXIgaW4gdGhlIHVwcGVyIGxl ZnQgY29ybmVyIG9mIHRoZQogZnJhbWUuCiBJZiBDT09SRElOQVRFUyBhcmUgaW4gdGhlIHRl eHQgcG9ydGlvbiBvZiBXSU5ET1csCiAgICB0aGUgY29vcmRpbmF0ZXMgcmVsYXRpdmUgdG8g dGhlIHdpbmRvdyBhcmUgcmV0dXJuZWQuCkBAIC0xNzEwLDcgKzE3MTAsNyBAQCBvZiB0aGUg d2luZG93LiAgVGhlIHJlbWFpbmluZyBlbGVtZW50cyBhcmUgb21pdHRlZCBpZiB0aGUgY2hh cmFjdGVyIGFmdGVyCiBQT1MgaXMgZnVsbHkgdmlzaWJsZTsgb3RoZXJ3aXNlLCBSVE9QIGFu ZCBSQk9UIGFyZSB0aGUgbnVtYmVyIG9mIHBpeGVscwogb2ZmLXdpbmRvdyBhdCB0aGUgdG9w IGFuZCBib3R0b20gb2YgdGhlIHNjcmVlbiBsaW5lICgicm93IikgY29udGFpbmluZwogUE9T LCBST1dIIGlzIHRoZSB2aXNpYmxlIGhlaWdodCBvZiB0aGF0IHJvdywgYW5kIFZQT1MgaXMg dGhlIHJvdyBudW1iZXIKLSh6ZXJvLWJhc2VkKS4gICovKQorXCh6ZXJvLWJhc2VkKS4gICov KQogICAoTGlzcF9PYmplY3QgcG9zLCBMaXNwX09iamVjdCB3aW5kb3csIExpc3BfT2JqZWN0 IHBhcnRpYWxseSkKIHsKICAgc3RydWN0IHdpbmRvdyAqdzsKZGlmZiAtLWdpdCBhL3NyYy93 aW5kb3cuaCBiL3NyYy93aW5kb3cuaAppbmRleCBjMjkyMDdkLi4wY2ZmZjg4IDEwMDY0NAot LS0gYS9zcmMvd2luZG93LmgKKysrIGIvc3JjL3dpbmRvdy5oCkBAIC02LDggKzYsOCBAQCBU aGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNv ZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K IAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3hkaXNwLmMgYi9zcmMveGRp c3AuYwppbmRleCBkZWM5OTQ3Li5lNWFjNjUwIDEwMDY0NAotLS0gYS9zcmMveGRpc3AuYwor KysgYi9zcmMveGRpc3AuYwpAQCAtNyw4ICs3LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2Yg R05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y Ci0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0 Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0 cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhP VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK QEAgLTMxNDI1LDcgKzMxNDI1LDcgQEAgVGhpcyB2YXJpYWJsZSBpcyBub3QgZ3VhcmFudGVl ZCB0byBiZSBhY2N1cmF0ZSBleGNlcHQgd2hpbGUgcHJvY2Vzc2luZwogCiAgIERFRlZBUl9M SVNQICgiZnJhbWUtdGl0bGUtZm9ybWF0IiwgVmZyYW1lX3RpdGxlX2Zvcm1hdCwKICAgICBk b2M6IC8qIFRlbXBsYXRlIGZvciBkaXNwbGF5aW5nIHRoZSB0aXRsZSBiYXIgb2YgdmlzaWJs ZSBmcmFtZXMuCi0oQXNzdW1pbmcgdGhlIHdpbmRvdyBtYW5hZ2VyIHN1cHBvcnRzIHRoaXMg ZmVhdHVyZS4pCitcKEFzc3VtaW5nIHRoZSB3aW5kb3cgbWFuYWdlciBzdXBwb3J0cyB0aGlz IGZlYXR1cmUuKQogCiBUaGlzIHZhcmlhYmxlIGhhcyB0aGUgc2FtZSBzdHJ1Y3R1cmUgYXMg YG1vZGUtbGluZS1mb3JtYXQnLCBleGNlcHQgdGhhdAogdGhlICVjIGFuZCAlbCBjb25zdHJ1 Y3RzIGFyZSBpZ25vcmVkLiAgSXQgaXMgdXNlZCBvbmx5IG9uIGZyYW1lcyBmb3IKQEAgLTMx NDMzLDEwICszMTQzMywxMCBAQCB3aGljaCBubyBleHBsaWNpdCBuYW1lIGhhcyBiZWVuIHNl dCAoc2VlIGBtb2RpZnktZnJhbWUtcGFyYW1ldGVycycpLiAgKi8pOwogCiAgIERFRlZBUl9M SVNQICgiaWNvbi10aXRsZS1mb3JtYXQiLCBWaWNvbl90aXRsZV9mb3JtYXQsCiAgICAgZG9j OiAvKiBUZW1wbGF0ZSBmb3IgZGlzcGxheWluZyB0aGUgdGl0bGUgYmFyIG9mIGFuIGljb25p ZmllZCBmcmFtZS4KLShBc3N1bWluZyB0aGUgd2luZG93IG1hbmFnZXIgc3VwcG9ydHMgdGhp cyBmZWF0dXJlLikKK1woQXNzdW1pbmcgdGhlIHdpbmRvdyBtYW5hZ2VyIHN1cHBvcnRzIHRo aXMgZmVhdHVyZS4pCiBUaGlzIHZhcmlhYmxlIGhhcyB0aGUgc2FtZSBzdHJ1Y3R1cmUgYXMg YG1vZGUtbGluZS1mb3JtYXQnICh3aGljaCBzZWUpLAogYW5kIGlzIHVzZWQgb25seSBvbiBm cmFtZXMgZm9yIHdoaWNoIG5vIGV4cGxpY2l0IG5hbWUgaGFzIGJlZW4gc2V0Ci0oc2VlIGBt b2RpZnktZnJhbWUtcGFyYW1ldGVycycpLiAgKi8pOworXChzZWUgYG1vZGlmeS1mcmFtZS1w YXJhbWV0ZXJzJykuICAqLyk7CiAgIFZpY29uX3RpdGxlX2Zvcm1hdAogICAgID0gVmZyYW1l X3RpdGxlX2Zvcm1hdAogICAgID0gbGlzdG4gKENPTlNUWVBFX1BVUkUsIDMsCmRpZmYgLS1n aXQgYS9zcmMveGZhY2VzLmMgYi9zcmMveGZhY2VzLmMKaW5kZXggNzc2MmUwZi4uYWMxMzcw MCAxMDA2NDQKLS0tIGEvc3JjL3hmYWNlcy5jCisrKyBiL3NyYy94ZmFjZXMuYwpAQCAtNiw4 ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3Mg aXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlm eQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhl ciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTcwMSwxMCArNzAxLDEwIEBAIE9w dGlvbmFsIFRIT1JPVUdITFkgbm9uLW5pbCBtZWFucyB0cnkgdG8gZnJlZSB1bnVzZWQgZm9u dHMsIHRvby4gICovKQogREVGVU4gKCJiaXRtYXAtc3BlYy1wIiwgRmJpdG1hcF9zcGVjX3As IFNiaXRtYXBfc3BlY19wLCAxLCAxLCAwLAogICAgICAgIGRvYzogLyogVmFsdWUgaXMgbm9u LW5pbCBpZiBPQkpFQ1QgaXMgYSB2YWxpZCBiaXRtYXAgc3BlY2lmaWNhdGlvbi4KIEEgYml0 bWFwIHNwZWNpZmljYXRpb24gaXMgZWl0aGVyIGEgc3RyaW5nLCBhIGZpbGUgbmFtZSwgb3Ig YSBsaXN0Ci0oV0lEVEggSEVJR0hUIERBVEEpIHdoZXJlIFdJRFRIIGlzIHRoZSBwaXhlbCB3 aWR0aCBvZiB0aGUgYml0bWFwLAorXChXSURUSCBIRUlHSFQgREFUQSkgd2hlcmUgV0lEVEgg aXMgdGhlIHBpeGVsIHdpZHRoIG9mIHRoZSBiaXRtYXAsCiBIRUlHSFQgaXMgaXRzIGhlaWdo dCwgYW5kIERBVEEgaXMgYSBzdHJpbmcgY29udGFpbmluZyB0aGUgYml0cyBvZgogdGhlIHBp eG1hcC4gIEJpdHMgYXJlIHN0b3JlZCByb3cgYnkgcm93LCBlYWNoIHJvdyBvY2N1cGllcwot KFdJRFRIICsgNykvOCBieXRlcy4gICovKQorXChXSURUSCArIDcpLzggYnl0ZXMuICAqLykK ICAgKExpc3BfT2JqZWN0IG9iamVjdCkKIHsKICAgYm9vbCBwaXhtYXBfcCA9IGZhbHNlOwpA QCAtNjUzNiw3ICs2NTM2LDcgQEAgY2hhbmdpbmcgdGhpcyB2YXJpYWJsZSBmb3IgaXQgdG8g dGFrZSBlZmZlY3QuICAqLyk7CiBFYWNoIGVsZW1lbnQgaXMgYSBjb25zIChGT05ULVBBVFRF Uk4gLiBSRVNDQUxFLVJBVElPKSwgd2hlcmUKIEZPTlQtUEFUVEVSTiBpcyBhIGZvbnQtc3Bl YyBvciBhIHJlZ3VsYXIgZXhwcmVzc2lvbiBtYXRjaGluZyBhIGZvbnQgbmFtZSwgYW5kCiBS RVNDQUxFLVJBVElPIGlzIGEgZmxvYXRpbmcgcG9pbnQgbnVtYmVyIHRvIHNwZWNpZnkgaG93 IG11Y2ggbGFyZ2VyCi0ob3Igc21hbGxlcikgZm9udCB3ZSBzaG91bGQgdXNlLiAgRm9yIGlu c3RhbmNlLCBpZiBhIGZhY2UgcmVxdWVzdHMKK1wob3Igc21hbGxlcikgZm9udCB3ZSBzaG91 bGQgdXNlLiAgRm9yIGluc3RhbmNlLCBpZiBhIGZhY2UgcmVxdWVzdHMKIGEgZm9udCBvZiAx MCBwb2ludCwgd2UgYWN0dWFsbHkgdXNlIGEgZm9udCBvZiAxMCAqIFJFU0NBTEUtUkFUSU8g cG9pbnQuICAqLyk7CiAgIFZmYWNlX2ZvbnRfcmVzY2FsZV9hbGlzdCA9IFFuaWw7CiAKZGlm ZiAtLWdpdCBhL3NyYy94Zm5zLmMgYi9zcmMveGZucy5jCmluZGV4IDIwYWM2MjcuLjllZjdj YjkgMTAwNjQ0Ci0tLSBhL3NyYy94Zm5zLmMKKysrIGIvc3JjL3hmbnMuYwpAQCAtNiw4ICs2 LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTM2NzAsNyArMzY3MCw3IEBAIHhfZm9j dXNfZnJhbWUgKHN0cnVjdCBmcmFtZSAqZikKIAwKIERFRlVOICgieHctY29sb3ItZGVmaW5l ZC1wIiwgRnh3X2NvbG9yX2RlZmluZWRfcCwgU3h3X2NvbG9yX2RlZmluZWRfcCwgMSwgMiwg MCwKICAgICAgICBkb2M6IC8qIEludGVybmFsIGZ1bmN0aW9uIGNhbGxlZCBieSBgY29sb3It ZGVmaW5lZC1wJywgd2hpY2ggc2VlLgotKE5vdGUgdGhhdCB0aGUgTmV4dHN0ZXAgdmVyc2lv biBvZiB0aGlzIGZ1bmN0aW9uIGlnbm9yZXMgRlJBTUUuKSAgKi8pCitcKE5vdGUgdGhhdCB0 aGUgTmV4dHN0ZXAgdmVyc2lvbiBvZiB0aGlzIGZ1bmN0aW9uIGlnbm9yZXMgRlJBTUUuKSAg Ki8pCiAgIChMaXNwX09iamVjdCBjb2xvciwgTGlzcF9PYmplY3QgZnJhbWUpCiB7CiAgIFhD b2xvciBmb287CkBAIC0zODM3LDcgKzM4MzcsNyBAQCBJZiBvbWl0dGVkIG9yIG5pbCwgdGhh dCBzdGFuZHMgZm9yIHRoZSBzZWxlY3RlZCBmcmFtZSdzIGRpc3BsYXkuICAqLykKIERFRlVO ICgieC1zZXJ2ZXItdmVuZG9yIiwgRnhfc2VydmVyX3ZlbmRvciwgU3hfc2VydmVyX3ZlbmRv ciwgMCwgMSwgMCwKICAgICAgICBkb2M6IC8qIFJldHVybiB0aGUgInZlbmRvciBJRCIgc3Ry aW5nIG9mIHRoZSBHVUkgc29mdHdhcmUgb24gVEVSTUlOQUwuCiAKLShMYWJlbGluZyBldmVy eSBkaXN0cmlidXRvciBhcyBhICJ2ZW5kb3IiIGVtYm9kaWVzIHRoZSBmYWxzZSBhc3N1bXB0 aW9uCitcKExhYmVsaW5nIGV2ZXJ5IGRpc3RyaWJ1dG9yIGFzIGEgInZlbmRvciIgZW1ib2Rp ZXMgdGhlIGZhbHNlIGFzc3VtcHRpb24KIHRoYXQgb3BlcmF0aW5nIHN5c3RlbXMgY2Fubm90 IGJlIGRldmVsb3BlZCBhbmQgZGlzdHJpYnV0ZWQgbm9uY29tbWVyY2lhbGx5LikKIFRoZSBv cHRpb25hbCBhcmd1bWVudCBURVJNSU5BTCBzcGVjaWZpZXMgd2hpY2ggZGlzcGxheSB0byBh c2sgYWJvdXQuCiAKQEAgLTQ3NTksNyArNDc1OSw3IEBAIERFRlVOICgieC1zZXQtbW91c2Ut YWJzb2x1dGUtcGl4ZWwtcG9zaXRpb24iLCBGeF9zZXRfbW91c2VfYWJzb2x1dGVfcGl4ZWxf cG9zaXRpCiAgICAgICAgU3hfc2V0X21vdXNlX2Fic29sdXRlX3BpeGVsX3Bvc2l0aW9uLCAy LCAyLCAwLAogICAgICAgIGRvYzogLyogTW92ZSBtb3VzZSBwb2ludGVyIHRvIGFic29sdXRl IHBpeGVsIHBvc2l0aW9uIChYLCBZKS4KIFRoZSBjb29yZGluYXRlcyBYIGFuZCBZIGFyZSBp bnRlcnByZXRlZCBpbiBwaXhlbHMgcmVsYXRpdmUgdG8gYSBwb3NpdGlvbgotKDAsIDApIG9m IHRoZSBzZWxlY3RlZCBmcmFtZSdzIGRpc3BsYXkuICAqLykKK1woMCwgMCkgb2YgdGhlIHNl bGVjdGVkIGZyYW1lJ3MgZGlzcGxheS4gICovKQogICAoTGlzcF9PYmplY3QgeCwgTGlzcF9P YmplY3QgeSkKICAgewogICBzdHJ1Y3QgZnJhbWUgKmYgPSBTRUxFQ1RFRF9GUkFNRSAoKTsK QEAgLTQ5MzUsNyArNDkzNSw3IEBAIERJU1BMQVkgaXMgdGhlIG5hbWUgb2YgdGhlIGRpc3Bs YXkgdG8gY29ubmVjdCB0by4KIE9wdGlvbmFsIHNlY29uZCBhcmcgWFJNLVNUUklORyBpcyBh IHN0cmluZyBvZiByZXNvdXJjZXMgaW4geHJkYiBmb3JtYXQuCiBJZiB0aGUgb3B0aW9uYWwg dGhpcmQgYXJnIE1VU1QtU1VDQ0VFRCBpcyBub24tbmlsLAogdGVybWluYXRlIEVtYWNzIGlm IHdlIGNhbid0IG9wZW4gdGhlIGNvbm5lY3Rpb24uCi0oSW4gdGhlIE5leHRzdGVwIHZlcnNp b24sIHRoZSBsYXN0IHR3byBhcmd1bWVudHMgYXJlIGN1cnJlbnRseSBpZ25vcmVkLikgICov KQorXChJbiB0aGUgTmV4dHN0ZXAgdmVyc2lvbiwgdGhlIGxhc3QgdHdvIGFyZ3VtZW50cyBh cmUgY3VycmVudGx5IGlnbm9yZWQuKSAgKi8pCiAgIChMaXNwX09iamVjdCBkaXNwbGF5LCBM aXNwX09iamVjdCB4cm1fc3RyaW5nLCBMaXNwX09iamVjdCBtdXN0X3N1Y2NlZWQpCiB7CiAg IGNoYXIgKnhybV9vcHRpb247CmRpZmYgLS1naXQgYS9zcmMveGZvbnQuYyBiL3NyYy94Zm9u dC5jCmluZGV4IDE1YTRiNzQuLjBlZjY0YmUgMTAwNjQ0Ci0tLSBhL3NyYy94Zm9udC5jCisr KyBiL3NyYy94Zm9udC5jCkBAIC04LDggKzgsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBH TlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IK LShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQK K3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3Ry aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9V VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpk aWZmIC0tZ2l0IGEvc3JjL3hmdGZvbnQuYyBiL3NyYy94ZnRmb250LmMKaW5kZXggZDk0OTU1 Zi4uNzkyNjMyNSAxMDA2NDQKLS0tIGEvc3JjL3hmdGZvbnQuYworKysgYi9zcmMveGZ0Zm9u dC5jCkBAIC04LDggKzgsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAK IEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh bmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEv c3JjL3hnc2VsZWN0LmMgYi9zcmMveGdzZWxlY3QuYwppbmRleCBhNjFkNDZiLi5hYzg4YWZk IDEwMDY0NAotLS0gYS9zcmMveGdzZWxlY3QuYworKysgYi9zcmMveGdzZWxlY3QuYwpAQCAt Niw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1h Y3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVp dGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy94Z3Nl bGVjdC5oIGIvc3JjL3hnc2VsZWN0LmgKaW5kZXggZmM5NzZjYS4uNGM1NjYzMyAxMDA2NDQK LS0tIGEvc3JjL3hnc2VsZWN0LmgKKysrIGIvc3JjL3hnc2VsZWN0LmgKQEAgLTYsOCArNiw4 IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVy c2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMveG1lbnUuYyBiL3Ny Yy94bWVudS5jCmluZGV4IDEwNDdiMTkuLjllMWE4MTcgMTAwNjQ0Ci0tLSBhL3NyYy94bWVu dS5jCisrKyBiL3NyYy94bWVudS5jCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBv ciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3htbC5jIGIvc3JjL3htbC5jCmluZGV4IDZjNDdhOWQu LmIxMTc1ZDEgMTAwNjQ0Ci0tLSBhL3NyYy94bWwuYworKysgYi9zcmMveG1sLmMKQEAgLTUs OCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNz IGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2Rp ZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh dCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91 dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMveHJkYi5j IGIvc3JjL3hyZGIuYwppbmRleCA4NjVhY2M5Li5iNGJjMTE4IDEwMDY0NAotLS0gYS9zcmMv eHJkYi5jCisrKyBiL3NyYy94cmRiLmMKQEAgLTksOCArOSw4IEBAIFRoaXMgZmlsZSBpcyBw YXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3Mg aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCmRpZmYgLS1naXQgYS9zcmMveHNlbGVjdC5jIGIvc3JjL3hzZWxlY3QuYwppbmRl eCAyM2I3MzVlLi4xMjNlNDYzIDEwMDY0NAotLS0gYS9zcmMveHNlbGVjdC5jCisrKyBiL3Ny Yy94c2VsZWN0LmMKQEAgLTUsOCArNSw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBF bWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmli dXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0 IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0 ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCkBAIC0x OTExLDcgKzE5MTEsNyBAQCBERUZVTiAoIngtb3duLXNlbGVjdGlvbi1pbnRlcm5hbCIsIEZ4 X293bl9zZWxlY3Rpb25faW50ZXJuYWwsCiAgICAgICAgU3hfb3duX3NlbGVjdGlvbl9pbnRl cm5hbCwgMiwgMywgMCwKICAgICAgICBkb2M6IC8qIEFzc2VydCBhbiBYIHNlbGVjdGlvbiBv ZiB0eXBlIFNFTEVDVElPTiBhbmQgdmFsdWUgVkFMVUUuCiBTRUxFQ1RJT04gaXMgYSBzeW1i b2wsIHR5cGljYWxseSBgUFJJTUFSWScsIGBTRUNPTkRBUlknLCBvciBgQ0xJUEJPQVJEJy4K LShUaG9zZSBhcmUgbGl0ZXJhbCB1cHBlci1jYXNlIHN5bWJvbCBuYW1lcywgc2luY2UgdGhh dCdzIHdoYXQgWCBleHBlY3RzLikKK1woVGhvc2UgYXJlIGxpdGVyYWwgdXBwZXItY2FzZSBz eW1ib2wgbmFtZXMsIHNpbmNlIHRoYXQncyB3aGF0IFggZXhwZWN0cy4pCiBWQUxVRSBpcyB0 eXBpY2FsbHkgYSBzdHJpbmcsIG9yIGEgY29ucyBvZiB0d28gbWFya2VycywgYnV0IG1heSBi ZQogYW55dGhpbmcgdGhhdCB0aGUgZnVuY3Rpb25zIG9uIGBzZWxlY3Rpb24tY29udmVydGVy LWFsaXN0JyBrbm93IGFib3V0LgogCkBAIC0xOTQwLDcgKzE5NDAsNyBAQCBERUZVTiAoIngt Z2V0LXNlbGVjdGlvbi1pbnRlcm5hbCIsIEZ4X2dldF9zZWxlY3Rpb25faW50ZXJuYWwsCiAg ICAgICAgU3hfZ2V0X3NlbGVjdGlvbl9pbnRlcm5hbCwgMiwgNCwgMCwKICAgICAgICBkb2M6 IC8qIFJldHVybiB0ZXh0IHNlbGVjdGVkIGZyb20gc29tZSBYIHdpbmRvdy4KIFNFTEVDVElP Ti1TWU1CT0wgaXMgdHlwaWNhbGx5IGBQUklNQVJZJywgYFNFQ09OREFSWScsIG9yIGBDTElQ Qk9BUkQnLgotKFRob3NlIGFyZSBsaXRlcmFsIHVwcGVyLWNhc2Ugc3ltYm9sIG5hbWVzLCBz aW5jZSB0aGF0J3Mgd2hhdCBYIGV4cGVjdHMuKQorXChUaG9zZSBhcmUgbGl0ZXJhbCB1cHBl ci1jYXNlIHN5bWJvbCBuYW1lcywgc2luY2UgdGhhdCdzIHdoYXQgWCBleHBlY3RzLikKIFRB UkdFVC1UWVBFIGlzIHRoZSB0eXBlIG9mIGRhdGEgZGVzaXJlZCwgdHlwaWNhbGx5IGBTVFJJ TkcnLgogCiBUSU1FLVNUQU1QIGlzIHRoZSB0aW1lIHRvIHVzZSBpbiB0aGUgWENvbnZlcnRT ZWxlY3Rpb24gY2FsbCBmb3IgZm9yZWlnbgpAQCAtMjA0NCw3ICsyMDQ0LDcgQEAgREVGVU4g KCJ4LXNlbGVjdGlvbi1vd25lci1wIiwgRnhfc2VsZWN0aW9uX293bmVyX3AsIFN4X3NlbGVj dGlvbl9vd25lcl9wLAogICAgICAgIGRvYzogLyogV2hldGhlciB0aGUgY3VycmVudCBFbWFj cyBwcm9jZXNzIG93bnMgdGhlIGdpdmVuIFggU2VsZWN0aW9uLgogVGhlIGFyZyBzaG91bGQg YmUgdGhlIG5hbWUgb2YgdGhlIHNlbGVjdGlvbiBpbiBxdWVzdGlvbiwgdHlwaWNhbGx5IG9u ZSBvZgogdGhlIHN5bWJvbHMgYFBSSU1BUlknLCBgU0VDT05EQVJZJywgb3IgYENMSVBCT0FS RCcuCi0oVGhvc2UgYXJlIGxpdGVyYWwgdXBwZXItY2FzZSBzeW1ib2wgbmFtZXMsIHNpbmNl IHRoYXQncyB3aGF0IFggZXhwZWN0cy4pCitcKFRob3NlIGFyZSBsaXRlcmFsIHVwcGVyLWNh c2Ugc3ltYm9sIG5hbWVzLCBzaW5jZSB0aGF0J3Mgd2hhdCBYIGV4cGVjdHMuKQogRm9yIGNv bnZlbmllbmNlLCB0aGUgc3ltYm9sIG5pbCBpcyB0aGUgc2FtZSBhcyBgUFJJTUFSWScsCiBh bmQgdCBpcyB0aGUgc2FtZSBhcyBgU0VDT05EQVJZJy4KIApAQCAtMjYyMCw3ICsyNjIwLDcg QEAgYW5kIHRoZSBsb2NhbCBzZWxlY3Rpb24gdmFsdWUgKHdoYXRldmVyIHdhcyBnaXZlbiB0 bwogYHgtb3duLXNlbGVjdGlvbi1pbnRlcm5hbCcpLgogCiBUaGUgZnVuY3Rpb24gc2hvdWxk IHJldHVybiB0aGUgdmFsdWUgdG8gc2VuZCB0byB0aGUgWCBzZXJ2ZXIKLSh0eXBpY2FsbHkg YSBzdHJpbmcpLiAgQSByZXR1cm4gdmFsdWUgb2YgbmlsCitcKHR5cGljYWxseSBhIHN0cmlu ZykuICBBIHJldHVybiB2YWx1ZSBvZiBuaWwKIG1lYW5zIHRoYXQgdGhlIGNvbnZlcnNpb24g Y291bGQgbm90IGJlIGRvbmUuCiBBIHJldHVybiB2YWx1ZSB3aGljaCBpcyB0aGUgc3ltYm9s IGBOVUxMJwogbWVhbnMgdGhhdCBhIHNpZGUtZWZmZWN0IHdhcyBleGVjdXRlZCwKQEAgLTI2 MjksMTAgKzI2MjksMTAgQEAgYW5kIHRoZXJlIGlzIG5vIG1lYW5pbmdmdWwgc2VsZWN0aW9u IHZhbHVlLiAgKi8pOwogCiAgIERFRlZBUl9MSVNQICgieC1sb3N0LXNlbGVjdGlvbi1mdW5j dGlvbnMiLCBWeF9sb3N0X3NlbGVjdGlvbl9mdW5jdGlvbnMsCiAJICAgICAgIGRvYzogLyog QSBsaXN0IG9mIGZ1bmN0aW9ucyB0byBiZSBjYWxsZWQgd2hlbiBFbWFjcyBsb3NlcyBhbiBY IHNlbGVjdGlvbi4KLShUaGlzIGhhcHBlbnMgd2hlbiBzb21lIG90aGVyIFggY2xpZW50IG1h a2VzIGl0cyBvd24gc2VsZWN0aW9uCitcKFRoaXMgaGFwcGVucyB3aGVuIHNvbWUgb3RoZXIg WCBjbGllbnQgbWFrZXMgaXRzIG93biBzZWxlY3Rpb24KIG9yIHdoZW4gYSBMaXNwIHByb2dy YW0gZXhwbGljaXRseSBjbGVhcnMgdGhlIHNlbGVjdGlvbi4pCiBUaGUgZnVuY3Rpb25zIGFy ZSBjYWxsZWQgd2l0aCBvbmUgYXJndW1lbnQsIHRoZSBzZWxlY3Rpb24gdHlwZQotKGEgc3lt Ym9sLCB0eXBpY2FsbHkgYFBSSU1BUlknLCBgU0VDT05EQVJZJywgb3IgYENMSVBCT0FSRCcp LiAgKi8pOworXChhIHN5bWJvbCwgdHlwaWNhbGx5IGBQUklNQVJZJywgYFNFQ09OREFSWScs IG9yIGBDTElQQk9BUkQnKS4gICovKTsKICAgVnhfbG9zdF9zZWxlY3Rpb25fZnVuY3Rpb25z ID0gUW5pbDsKIAogICBERUZWQVJfTElTUCAoIngtc2VudC1zZWxlY3Rpb24tZnVuY3Rpb25z IiwgVnhfc2VudF9zZWxlY3Rpb25fZnVuY3Rpb25zLApkaWZmIC0tZ2l0IGEvc3JjL3hzZXR0 aW5ncy5jIGIvc3JjL3hzZXR0aW5ncy5jCmluZGV4IDI4MDc1YjUuLmQ3YWY2OGYgMTAwNjQ0 Ci0tLSBhL3NyYy94c2V0dGluZ3MuYworKysgYi9zcmMveHNldHRpbmdzLmMKQEAgLTYsOCAr Niw4IEBAIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlz IGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkK IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp dCB3aWxsIGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMveHNldHRpbmdz LmggYi9zcmMveHNldHRpbmdzLmgKaW5kZXggNzRlMjhiNC4uZmEyYjVjNSAxMDA2NDQKLS0t IGEvc3JjL3hzZXR0aW5ncy5oCisrKyBiL3NyYy94c2V0dGluZ3MuaApAQCAtNiw4ICs2LDgg QEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3NyYy94c21mbnMuYyBiL3Ny Yy94c21mbnMuYwppbmRleCA3NjQxNDQ5Li4wODE5ZTg3IDEwMDY0NAotLS0gYS9zcmMveHNt Zm5zLmMKKysrIGIvc3JjL3hzbWZucy5jCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMg cGFydCBvZiBHTlUgRW1hY3MuCiAKIEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKLShhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvciAoYXQKK3lvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgpkaWZmIC0tZ2l0IGEvc3JjL3h0ZXJtLmMgYi9zcmMveHRlcm0uYwppbmRleCAx ZjcxYWZkLi5iYTliZjUwIDEwMDY0NAotLS0gYS9zcmMveHRlcm0uYworKysgYi9zcmMveHRl cm0uYwpAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgog CiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k YXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlv bikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBh L3NyYy94dGVybS5oIGIvc3JjL3h0ZXJtLmgKaW5kZXggM2E3ODI5Mi4uMDZjZDJlNyAxMDA2 NDQKLS0tIGEvc3JjL3h0ZXJtLmgKKysrIGIvc3JjL3h0ZXJtLmgKQEAgLTYsOCArNiw4IEBA IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUg c29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5Ci10aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgogCiBHTlUgRW1hY3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwKIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCmRpZmYgLS1naXQgYS9zcmMveHdpZGdldC5jIGIvc3Jj L3h3aWRnZXQuYwppbmRleCBmNDM2ZTk1Li5kNDM4ZDg3IDEwMDY0NAotLS0gYS9zcmMveHdp ZGdldC5jCisrKyBiL3NyYy94d2lkZ2V0LmMKQEAgLTYsOCArNiw4IEBAIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEdOVSBFbWFjcy4KIAogR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci10 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgotKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KK3RoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vu c2UsIG9yIChhdAoreW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiBHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCkBAIC0zODcsOSArMzg3LDEyIEBAIHdlYmtpdF9kb3dubG9hZF9jYiAoV2Vi S2l0V2ViVmlldyAqd2Via2l0d2VidmlldywKIH0KIAogc3RhdGljIGdib29sZWFuCi13ZWJr aXRfbWltZV90eXBlX3BvbGljeV90eXBlZGVjaXNpb25fcmVxdWVzdGVkX2NiCi0oV2ViS2l0 V2ViVmlldyAqd2ViVmlldywgV2ViS2l0V2ViRnJhbWUgKmZyYW1lLCBXZWJLaXROZXR3b3Jr UmVxdWVzdCAqcmVxdWVzdCwKLSBnY2hhciAqbWltZXR5cGUsIFdlYktpdFdlYlBvbGljeURl Y2lzaW9uICpwb2xpY3lfZGVjaXNpb24sIGdwb2ludGVyIHVzZXJfZGF0YSkKK3dlYmtpdF9t aW1lX3R5cGVfcG9saWN5X3R5cGVkZWNpc2lvbl9yZXF1ZXN0ZWRfY2IgKFdlYktpdFdlYlZp ZXcgKndlYlZpZXcsCisJCQkJCQkgICBXZWJLaXRXZWJGcmFtZSAqZnJhbWUsCisJCQkJCQkg ICBXZWJLaXROZXR3b3JrUmVxdWVzdCAqcmVxdWVzdCwKKwkJCQkJCSAgIGdjaGFyICptaW1l dHlwZSwKKwkJCQkJCSAgIFdlYktpdFdlYlBvbGljeURlY2lzaW9uICpwb2xpY3lfZGVjaXNp b24sCisJCQkJCQkgICBncG9pbnRlciB1c2VyX2RhdGEpCiB7CiAgIC8qIFRoaXMgZnVuY3Rp b24gbWFrZXMgd2Via2l0IHNlbmQgYSBkb3dubG9hZCBzaWduYWwgZm9yIGFsbCB1bmtub3du CiAgICAgIG1pbWUgdHlwZXMuICBUT0RPOiBEZWZlciB0aGUgZGVjaXNpb24gdG8gTGlzcCwg c28gdGhhdCBpdCdzCkBAIC00MDQsMTAgKzQwNywxMiBAQCB3ZWJraXRfbWltZV90eXBlX3Bv bGljeV90eXBlZGVjaXNpb25fcmVxdWVzdGVkX2NiCiB9CiAKIHN0YXRpYyBnYm9vbGVhbgot d2Via2l0X25ld193aW5kb3dfcG9saWN5X2RlY2lzaW9uX3JlcXVlc3RlZF9jYgotKFdlYktp dFdlYlZpZXcgKndlYlZpZXcsIFdlYktpdFdlYkZyYW1lICpmcmFtZSwgV2ViS2l0TmV0d29y a1JlcXVlc3QgKnJlcXVlc3QsCi0gV2ViS2l0V2ViTmF2aWdhdGlvbkFjdGlvbiAqbmF2aWdh dGlvbl9hY3Rpb24sCi0gV2ViS2l0V2ViUG9saWN5RGVjaXNpb24gKnBvbGljeV9kZWNpc2lv biwgZ3BvaW50ZXIgdXNlcl9kYXRhKQord2Via2l0X25ld193aW5kb3dfcG9saWN5X2RlY2lz aW9uX3JlcXVlc3RlZF9jYiAoV2ViS2l0V2ViVmlldyAqd2ViVmlldywKKwkJCQkJCVdlYktp dFdlYkZyYW1lICpmcmFtZSwKKwkJCQkJCVdlYktpdE5ldHdvcmtSZXF1ZXN0ICpyZXF1ZXN0 LAorCQkJCQkJV2ViS2l0V2ViTmF2aWdhdGlvbkFjdGlvbiAqbmF2aWdhdGlvbl9hY3Rpb24s CisJCQkJCQlXZWJLaXRXZWJQb2xpY3lEZWNpc2lvbiAqcG9saWN5X2RlY2lzaW9uLAorCQkJ CQkJZ3BvaW50ZXIgdXNlcl9kYXRhKQogewogICBzdHJ1Y3QgeHdpZGdldCAqeHcgPSBnX29i amVjdF9nZXRfZGF0YSAoR19PQkpFQ1QgKHdlYlZpZXcpLCBYR19YV0lER0VUKTsKICAgd2Vi a2l0X3dlYl9uYXZpZ2F0aW9uX2FjdGlvbl9nZXRfb3JpZ2luYWxfdXJpIChuYXZpZ2F0aW9u X2FjdGlvbik7CkBAIC00MTksMTAgKzQyNCwxMiBAQCB3ZWJraXRfbmV3X3dpbmRvd19wb2xp Y3lfZGVjaXNpb25fcmVxdWVzdGVkX2NiCiB9CiAKIHN0YXRpYyBnYm9vbGVhbgotd2Via2l0 X25hdmlnYXRpb25fcG9saWN5X2RlY2lzaW9uX3JlcXVlc3RlZF9jYgotKFdlYktpdFdlYlZp ZXcgKndlYlZpZXcsIFdlYktpdFdlYkZyYW1lICpmcmFtZSwgV2ViS2l0TmV0d29ya1JlcXVl c3QgKnJlcXVlc3QsCi0gV2ViS2l0V2ViTmF2aWdhdGlvbkFjdGlvbiAqbmF2aWdhdGlvbl9h Y3Rpb24sCi0gV2ViS2l0V2ViUG9saWN5RGVjaXNpb24gKnBvbGljeV9kZWNpc2lvbiwgZ3Bv aW50ZXIgdXNlcl9kYXRhKQord2Via2l0X25hdmlnYXRpb25fcG9saWN5X2RlY2lzaW9uX3Jl cXVlc3RlZF9jYiAoV2ViS2l0V2ViVmlldyAqd2ViVmlldywKKwkJCQkJCVdlYktpdFdlYkZy YW1lICpmcmFtZSwKKwkJCQkJCVdlYktpdE5ldHdvcmtSZXF1ZXN0ICpyZXF1ZXN0LAorCQkJ CQkJV2ViS2l0V2ViTmF2aWdhdGlvbkFjdGlvbiAqbmF2aWdhdGlvbl9hY3Rpb24sCisJCQkJ CQlXZWJLaXRXZWJQb2xpY3lEZWNpc2lvbiAqcG9saWN5X2RlY2lzaW9uLAorCQkJCQkJZ3Bv aW50ZXIgdXNlcl9kYXRhKQogewogICBzdHJ1Y3QgeHdpZGdldCAqeHcgPSBnX29iamVjdF9n ZXRfZGF0YSAoR19PQkpFQ1QgKHdlYlZpZXcpLCBYR19YV0lER0VUKTsKICAgc3RvcmVfeHdp ZGdldF9ldmVudF9zdHJpbmcgKHh3LCAibmF2aWdhdGlvbi1wb2xpY3ktZGVjaXNpb24tcmVx dWVzdGVkIiwKZGlmZiAtLWdpdCBhL3NyYy94d2lkZ2V0LmggYi9zcmMveHdpZGdldC5oCmlu ZGV4IDFlMTFmMTEuLjhmYzM4MjEgMTAwNjQ0Ci0tLSBhL3NyYy94d2lkZ2V0LmgKKysrIGIv c3JjL3h3aWRnZXQuaApAQCAtNiw4ICs2LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05V IEVtYWNzLgogCiBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0o YXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmli dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQg QU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlm ZiAtLWdpdCBhL3Rlc3QvZXRhZ3MvYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMgYi90ZXN0 L2V0YWdzL2Mtc3JjL2VtYWNzL3NyYy9rZXlib2FyZC5jCmluZGV4IDA3N2IxNDcuLjY4NTg0 ZWUgMTAwNjQ0Ci0tLSBhL3Rlc3QvZXRhZ3MvYy1zcmMvZW1hY3Mvc3JjL2tleWJvYXJkLmMK KysrIGIvdGVzdC9ldGFncy9jLXNyYy9lbWFjcy9zcmMva2V5Ym9hcmQuYwpAQCAtNyw4ICs3 LDggQEAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgogCiBHTlUgRW1hY3MgaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQog aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCiAKIEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3Rlc3QvZXRhZ3MvYy1z cmMvZW1hY3Mvc3JjL2xpc3AuaCBiL3Rlc3QvZXRhZ3MvYy1zcmMvZW1hY3Mvc3JjL2xpc3Au aAppbmRleCA5NmM1MmMwLi5kYjg3MjI5IDEwMDY0NAotLS0gYS90ZXN0L2V0YWdzL2Mtc3Jj L2VtYWNzL3NyYy9saXNwLmgKKysrIGIvdGVzdC9ldGFncy9jLXNyYy9lbWFjcy9zcmMvbGlz cC5oCkBAIC03LDggKzcsOCBAQCBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCiAK IEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh bmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLShhdCB5b3VyIG9w dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCit0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQKK3lvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KIAogR05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFO VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpkaWZmIC0tZ2l0IGEv dGVzdC9ldGFncy9jLXNyYy9ldGFncy5jIGIvdGVzdC9ldGFncy9jLXNyYy9ldGFncy5jCmlu ZGV4IDQ0NjViODMuLjQ1MzQxOTggMTAwNjQ0Ci0tLSBhL3Rlc3QvZXRhZ3MvYy1zcmMvZXRh Z3MuYworKysgYi90ZXN0L2V0YWdzL2Mtc3JjL2V0YWdzLmMKQEAgLTM1LDggKzM1LDggQEAg VGhpcyBmaWxlIGlzIG5vdCBjb25zaWRlcmVkIHBhcnQgb2YgR05VIEVtYWNzLgogCiBUaGlz IHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLXRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0oYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgordGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cit5b3VyIG9wdGlvbikg YW55IGxhdGVyIHZlcnNpb24uCiAKIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKQEAgLTYxMyw4ICs2 MTMsOCBAQCBzdGF0aWMgY29uc3QgY2hhciAqT2JqY19zdWZmaXhlcyBbXSA9CiBzdGF0aWMg Y29uc3QgY2hhciBPYmpjX2hlbHAgW10gPQogIkluIE9iamVjdGl2ZSBDIGNvZGUsIHRhZ3Mg aW5jbHVkZSBPYmplY3RpdmUgQyBkZWZpbml0aW9ucyBmb3IgY2xhc3NlcyxcblwKIGNsYXNz IGNhdGVnb3JpZXMsIG1ldGhvZHMgYW5kIHByb3RvY29scy4gIFRhZ3MgZm9yIHZhcmlhYmxl cyBhbmRcblwKLWZ1bmN0aW9ucyBpbiBjbGFzc2VzIGFyZSBuYW1lZCBgQ0xBU1M6OlZBUklB QkxFJyBhbmQgYENMQVNTOjpGVU5DVElPTicuXG5cCi0oVXNlIC0taGVscCAtLWxhbmc9YyAt LWxhbmc9b2JqYyAtLWxhbmc9amF2YSBmb3IgZnVsbCBoZWxwLikiOworZnVuY3Rpb25zIGlu IGNsYXNzZXMgYXJlIG5hbWVkIGBDTEFTUzo6VkFSSUFCTEUnIGFuZCBgQ0xBU1M6OkZVTkNU SU9OJy5cCitcbihVc2UgLS1oZWxwIC0tbGFuZz1jIC0tbGFuZz1vYmpjIC0tbGFuZz1qYXZh IGZvciBmdWxsIGhlbHAuKSI7CiAKIHN0YXRpYyBjb25zdCBjaGFyICpQYXNjYWxfc3VmZml4 ZXMgW10gPQogICB7ICJwIiwgInBhcyIsIE5VTEwgfTsKLS0gCjIuNS4wCgo= --------------060606010004080908000709-- From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 04 Mar 2016 08:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145708039013880 (code B ref 22884); Fri, 04 Mar 2016 08:34:02 +0000 Received: (at 22884) by debbugs.gnu.org; 4 Mar 2016 08:33:10 +0000 Received: from localhost ([127.0.0.1]:60786 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1ablAc-0003bo-GJ for submit@debbugs.gnu.org; Fri, 04 Mar 2016 03:33:10 -0500 Received: from eggs.gnu.org ([208.118.235.92]:59610) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1ablAa-0003ba-KH for 22884@debbugs.gnu.org; Fri, 04 Mar 2016 03:33:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ablAR-0003KK-LR for 22884@debbugs.gnu.org; Fri, 04 Mar 2016 03:33:03 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:41780) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ablAR-0003K6-Iw; Fri, 04 Mar 2016 03:32:59 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2283 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ablAQ-0005Fr-OA; Fri, 04 Mar 2016 03:32:59 -0500 Date: Fri, 04 Mar 2016 10:32:56 +0200 Message-Id: <83fuw6zlqf.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <20160303231823.GD3822@acm.fritz.box> (message from Alan Mackenzie on Thu, 3 Mar 2016 23:18:23 +0000) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <83si07z451.fsf@gnu.org> <20160303231823.GD3822@acm.fritz.box> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) 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 (-----) > Date: Thu, 3 Mar 2016 23:18:23 +0000 > Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org > From: Alan Mackenzie > > Would it be practicable to mark comments with text properties? Say, a > property called `comment-depth' which would be either nil (meaning > currently unknown), 0 (definitely not in a comment), 1 (definitely in a > comment), 2 (in a nested comment), 3, ...... ? That way we could always > scan comments in the forwards direction (which is easy) - if we need to > go backwards over a comment without the property, we can just go back to > a known point and scan forward. I don't see any immediate problems with this. But doesn't creating these properties require to solve the same problem with the specific cases we are discussing now? > Or would this just overwhelm the text property mechanism? No, I don't think it should. Text properties scale reasonably well. And we already have the same with faces (since comments have a specific face), don't we? From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 04 Mar 2016 09:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Eli Zaretskii Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145708407919176 (code B ref 22884); Fri, 04 Mar 2016 09:35:02 +0000 Received: (at 22884) by debbugs.gnu.org; 4 Mar 2016 09:34:39 +0000 Received: from localhost ([127.0.0.1]:60814 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abm86-0004zE-WB for submit@debbugs.gnu.org; Fri, 04 Mar 2016 04:34:39 -0500 Received: from mail.muc.de ([193.149.48.3]:29271) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abm85-0004z5-EA for 22884@debbugs.gnu.org; Fri, 04 Mar 2016 04:34:37 -0500 Received: (qmail 73073 invoked by uid 3782); 4 Mar 2016 09:34:36 -0000 Received: from acm.muc.de (p579E8D6B.dip0.t-ipconnect.de [87.158.141.107]) by colin.muc.de (tmda-ofmipd) with ESMTP; Fri, 04 Mar 2016 10:34:35 +0100 Received: (qmail 2176 invoked by uid 1000); 4 Mar 2016 09:37:07 -0000 Date: Fri, 4 Mar 2016 09:37:07 +0000 Message-ID: <20160304093707.GA2117@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <83si07z451.fsf@gnu.org> <20160303231823.GD3822@acm.fritz.box> <83fuw6zlqf.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <83fuw6zlqf.fsf@gnu.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Eli. On Fri, Mar 04, 2016 at 10:32:56AM +0200, Eli Zaretskii wrote: > > Date: Thu, 3 Mar 2016 23:18:23 +0000 > > Cc: eggert@cs.ucla.edu, 22884@debbugs.gnu.org > > From: Alan Mackenzie > > Would it be practicable to mark comments with text properties? Say, a > > property called `comment-depth' which would be either nil (meaning > > currently unknown), 0 (definitely not in a comment), 1 (definitely in a > > comment), 2 (in a nested comment), 3, ...... ? That way we could always > > scan comments in the forwards direction (which is easy) - if we need to > > go backwards over a comment without the property, we can just go back to > > a known point and scan forward. > I don't see any immediate problems with this. But doesn't creating > these properties require to solve the same problem with the specific > cases we are discussing now? No, it doesn't. The difficulties with scanning comments only happen when scanning backwards. For example, on scanning backwards for a putative line comment, we're only guessing that there's going to be a "//" earlier in the line. And that token might easily be inside a string, so we've got to keep track of string delimiters, too. Etc. open-paren-in-column-0-is-defun-start is only tested twice in syntax.c, the "most important" time being in `back-comment', where we break off the scanning when it is non-nil and we've found an open paren at column zero. By contrast, scanning comments going forward is trivial. We see the opening comment delimiter, and scan forward for the closing one, ignoring strings, possibly nested openers (/*.../*..*/), and so on. So a (forward-comment -1) would just involve going back over the closing delimiter and searching back for the `comment-depth' property being zero. If the property was unset at that point, we go back to the last place it is set and scan comments forward till we get back to our starting place. Additionally, we'd need to zap the property between point and EOB on each buffer change. Not difficult. > > Or would this just overwhelm the text property mechanism? > No, I don't think it should. Text properties scale reasonably well. > And we already have the same with faces (since comments have a > specific face), don't we? Then we have a project! -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 04 Mar 2016 14:46:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: Eli Zaretskii , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145710273127879 (code B ref 22884); Fri, 04 Mar 2016 14:46:01 +0000 Received: (at 22884) by debbugs.gnu.org; 4 Mar 2016 14:45:31 +0000 Received: from localhost ([127.0.0.1]:60951 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abqyx-0007Fa-IN for submit@debbugs.gnu.org; Fri, 04 Mar 2016 09:45:31 -0500 Received: from mail.muc.de ([193.149.48.3]:59580) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abqyv-0007FQ-Jg for 22884@debbugs.gnu.org; Fri, 04 Mar 2016 09:45:30 -0500 Received: (qmail 51788 invoked by uid 3782); 4 Mar 2016 14:45:28 -0000 Received: from acm.muc.de (p579E8D6B.dip0.t-ipconnect.de [87.158.141.107]) by colin.muc.de (tmda-ofmipd) with ESMTP; Fri, 04 Mar 2016 15:45:26 +0100 Received: (qmail 12135 invoked by uid 1000); 4 Mar 2016 14:47:59 -0000 Date: Fri, 4 Mar 2016 14:47:59 +0000 Message-ID: <20160304144759.GB2117@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <56D8CC45.2090102@cs.ucla.edu> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. On Thu, Mar 03, 2016 at 03:44:05PM -0800, Paul Eggert wrote: > On 03/03/2016 12:51 PM, Eli Zaretskii wrote: > > I'd rather we fixed CC Mode instead of "fixing" the > > sources it chokes on. > Me too, but I don't see a straightforward cc-mode fix for this. > Even if we come up with a fix, for some time we'll have the problem of > people using old versions of Emacs to look at the new Emacs source code. > And until there's a fix Emacs is reeeaally sluggish when editing > config.h at least. So I'd rather fix at least config.h, and (since I've > already done the work) I'm also mildly inclined to fix the other files > to be consistent, as in the attached patch (which also covers licenses > in the other .c and .h files). Thanks for the (new) patch. I've tried it out, and it appears to build and run just fine. I have had an idea for fixing Emacs so that we don't have this problem with parens in column 0. That is only to scan comments in the forward direction, and to mark them with text properties. `back_comment' will then be little more than checking these text properties are up to date, and then doing a backward text property search. > From c7c5fa7e01492963aab142d91b00cb872cb49686 Mon Sep 17 00:00:00 2001 > From: Paul Eggert > Date: Thu, 3 Mar 2016 15:42:28 -0800 > Subject: [PATCH] Rework C source files to avoid ^( > MIME-Version: 1.0 > Content-Type: text/plain; charset=UTF-8 > Content-Transfer-Encoding: 8bit > Work around Bug#22884 by rewording comments and strings to avoid ‘(’ > at the start of a line unless it starts a function. Although this > change is a hack and we should fix cc-mode’s performance for C files > that have ‘(’ at the start of a line in a comment or string, the > change does fix the immediate problem. > --- -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 04 Mar 2016 20:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: Eli Zaretskii , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14571235375394 (code B ref 22884); Fri, 04 Mar 2016 20:33:01 +0000 Received: (at 22884) by debbugs.gnu.org; 4 Mar 2016 20:32:17 +0000 Received: from localhost ([127.0.0.1]:34118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abwOX-0001Ov-96 for submit@debbugs.gnu.org; Fri, 04 Mar 2016 15:32:17 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:55668) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abwOU-0001Of-D7 for 22884@debbugs.gnu.org; Fri, 04 Mar 2016 15:32:14 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id A795B160255; Fri, 4 Mar 2016 12:32:07 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id bDOpOtREgIyB; Fri, 4 Mar 2016 12:32:07 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id EFFF5161009; Fri, 4 Mar 2016 12:32:06 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id tkBTKeMaJj6w; Fri, 4 Mar 2016 12:32:06 -0800 (PST) Received: from [192.168.1.9] (pool-100-32-155-148.lsanca.fios.verizon.net [100.32.155.148]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id CCE28160255; Fri, 4 Mar 2016 12:32:06 -0800 (PST) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56D9F0C6.4090800@cs.ucla.edu> Date: Fri, 4 Mar 2016 12:32:06 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <20160304144759.GB2117@acm.fritz.box> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) 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.0 (/) Alan Mackenzie wrote: > I have had an idea for fixing Emacs so that we don't have this problem > with parens in column 0. That is only to scan comments in the forward > direction, and to mark them with text properties. `back_comment' will > then be little more than checking these text properties are up to date, > and then doing a backward text property search. Would this mean we no longer need to put \( into Elisp doc strings too? It has always been annoying that we have to do that. If it's practical to fold your idea into the emacs-25 branch it sounds like it'll solve the problem. If it's safer to put such a change into the master branch, I can install the patch I already wrote into the emacs-25 branch, as a stopgap. What do you think? From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 04 Mar 2016 21:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: Eli Zaretskii , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14571255508339 (code B ref 22884); Fri, 04 Mar 2016 21:06:02 +0000 Received: (at 22884) by debbugs.gnu.org; 4 Mar 2016 21:05:50 +0000 Received: from localhost ([127.0.0.1]:34134 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abwv0-0002AP-Mw for submit@debbugs.gnu.org; Fri, 04 Mar 2016 16:05:50 -0500 Received: from mail.muc.de ([193.149.48.3]:32639) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abwuy-0002AG-Dk for 22884@debbugs.gnu.org; Fri, 04 Mar 2016 16:05:48 -0500 Received: (qmail 65982 invoked by uid 3782); 4 Mar 2016 21:05:46 -0000 Received: from acm.muc.de (p579E8D6B.dip0.t-ipconnect.de [87.158.141.107]) by colin.muc.de (tmda-ofmipd) with ESMTP; Fri, 04 Mar 2016 22:05:44 +0100 Received: (qmail 13617 invoked by uid 1000); 4 Mar 2016 21:08:18 -0000 Date: Fri, 4 Mar 2016 21:08:18 +0000 Message-ID: <20160304210818.GC2117@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56D9F0C6.4090800@cs.ucla.edu> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. On Fri, Mar 04, 2016 at 12:32:06PM -0800, Paul Eggert wrote: > Alan Mackenzie wrote: > > I have had an idea for fixing Emacs so that we don't have this problem > > with parens in column 0. That is only to scan comments in the forward > > direction, and to mark them with text properties. `back_comment' will > > then be little more than checking these text properties are up to date, > > and then doing a backward text property search. > Would this mean we no longer need to put \( into Elisp doc strings too? It has > always been annoying that we have to do that. It would mean this, yes. open-paren-in-column-0-is-defun-start would become obsolete. > If it's practical to fold your idea into the emacs-25 branch it sounds like > it'll solve the problem. If it's safer to put such a change into the master > branch, I can install the patch I already wrote into the emacs-25 branch, as a > stopgap. What do you think? Definitely the master branch. The change is far too involved to slip into emacs-25 at this late stage. So I think you should install your patch. The new scheme would come with some restrictions: the use of category properties to effect instantaeous global changes to syntax-table text properties throughout a buffer would have to be deprecated (i.e. forbidden). CC Mode currently does this. Setting `inhibit-modification-hooks' non-nil and making substantive buffer changes would likewise be taboo. There may be other minor restrictions. Because of this, it might be an idea to make the new comment handling optional (default on). -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Tue, 08 Mar 2016 14:00:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: Eli Zaretskii , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145744557421974 (code B ref 22884); Tue, 08 Mar 2016 14:00:02 +0000 Received: (at 22884) by debbugs.gnu.org; 8 Mar 2016 13:59:34 +0000 Received: from localhost ([127.0.0.1]:38742 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adIAg-0005iM-5w for submit@debbugs.gnu.org; Tue, 08 Mar 2016 08:59:34 -0500 Received: from mail.muc.de ([193.149.48.3]:61572) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adIAe-0005iD-5g for 22884@debbugs.gnu.org; Tue, 08 Mar 2016 08:59:32 -0500 Received: (qmail 83828 invoked by uid 3782); 8 Mar 2016 13:59:30 -0000 Received: from acm.muc.de (p548A5689.dip0.t-ipconnect.de [84.138.86.137]) by colin.muc.de (tmda-ofmipd) with ESMTP; Tue, 08 Mar 2016 14:59:29 +0100 Received: (qmail 6387 invoked by uid 1000); 8 Mar 2016 14:02:05 -0000 Date: Tue, 8 Mar 2016 14:02:05 +0000 Message-ID: <20160308140205.GA6269@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56D9F0C6.4090800@cs.ucla.edu> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. On Fri, Mar 04, 2016 at 12:32:06PM -0800, Paul Eggert wrote: > Alan Mackenzie wrote: > > I have had an idea for fixing Emacs so that we don't have this problem > > with parens in column 0. That is only to scan comments in the forward > > direction, and to mark them with text properties. `back_comment' will > > then be little more than checking these text properties are up to date, > > and then doing a backward text property search. > Would this mean we no longer need to put \( into Elisp doc strings too? It has > always been annoying that we have to do that. > If it's practical to fold your idea into the emacs-25 branch it sounds like > it'll solve the problem. If it's safer to put such a change into the master > branch, I can install the patch I already wrote into the emacs-25 branch, as a > stopgap. What do you think? OK, I've hacked this out and committed it to the new branch "comment-cache", branched off of master. To use it, (setq comment-cacheing-flag t), and enjoy! The old `back_comment' is still in syntax.c, renamed to `old_back_comment', and it is used when that flag is left at nil. There should no longer be any restrictions about open parentheses in column 0, neither in comments nor in strings. open-paren-in-column-0-is-defun-start should now be a relic (although it still appears in some lisp files). At the moment, the code only uses the cached information (on the `comment-depth' text property) for moving backwards over comments. It could be enhanced also to use this information for moving back over strings, or moving forward over comments and strings, but this is more of an optimisation than new functionality, and I'm not convinced the saving would be all that much. (At the end of any such move, the variables `from' and `from_byte' are out of synch, and a CHAR_TO_BYTE invocation is necessary. I don't know how slow or fast this is.) As I've said already, the new scheme comes with one or two minor restrictions: any Lisp code which chnages the syntax table in a way which affects how literals are handled needs also to call `trim-comment-cache' to invalidate the cache. The same applies to anybody tweaking the `syntax-table' property of a symbol which is the value of a `category' text property. CC Mode does the latter extensively, and I'll need to prepare a version which doesn't do this. At the moment, the code hasn't yet been tested with nestable comments, or `category' text properties. Can you recommend me a major mode with nestable comments? I haven't really tested it for narrowing, either, or anything like indirect buffers. I'm not convinced by the names I've chosen for all the new functions and variables, and I think I ought to rename "comment-cache" to "literal-cache", and likewise for all the rest. Some amendment of the Elisp manual will be needed to document the new minor restrictions. I look forward to your comments! -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 08:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: Eli Zaretskii , John Wiegley , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145751192819231 (code B ref 22884); Wed, 09 Mar 2016 08:26:01 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 08:25:28 +0000 Received: from localhost ([127.0.0.1]:40470 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adZQt-000507-PV for submit@debbugs.gnu.org; Wed, 09 Mar 2016 03:25:27 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:58592) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adZQs-0004zu-F7 for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 03:25:26 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id AEC64160E8A; Wed, 9 Mar 2016 00:25:20 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id qH9Pd2YHQWiS; Wed, 9 Mar 2016 00:25:20 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 12627160E8D; Wed, 9 Mar 2016 00:25:20 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id tyg6uqYMNYYQ; Wed, 9 Mar 2016 00:25:19 -0800 (PST) Received: from [192.168.1.9] (pool-100-32-155-148.lsanca.fios.verizon.net [100.32.155.148]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id DDDA3160E8A; Wed, 9 Mar 2016 00:25:19 -0800 (PST) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56DFDDEF.9090800@cs.ucla.edu> Date: Wed, 9 Mar 2016 00:25:19 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160308140205.GA6269@acm.fritz.box> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) 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.0 (/) Alan Mackenzie wrote: > Can you recommend me a major mode with > nestable comments? How about Coq? I think John Wiegley is a Coq user and can advise. I'm afraid I know little about major modes and wouldn't be of much help as a reviewer for your patch (though it sounds good). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: John Wiegley Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 09:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: Alan Mackenzie , Eli Zaretskii , 22884@debbugs.gnu.org Reply-To: John Wiegley Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145751575125274 (code B ref 22884); Wed, 09 Mar 2016 09:30:02 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 09:29:11 +0000 Received: from localhost ([127.0.0.1]:40495 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adaQY-0006Za-P7 for submit@debbugs.gnu.org; Wed, 09 Mar 2016 04:29:10 -0500 Received: from mail-pa0-f52.google.com ([209.85.220.52]:35414) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adaQX-0006ZN-F7 for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 04:29:09 -0500 Received: by mail-pa0-f52.google.com with SMTP id td3so8430734pab.2 for <22884@debbugs.gnu.org>; Wed, 09 Mar 2016 01:29:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:in-reply-to:date:message-id:references :user-agent:reply-to:mime-version; bh=Ie7nE2WicbzFmsTSUiFETw8Eu0nN9hl2Ng8G1jbtpeQ=; b=TuHW8/LzE2NiPQp4fK6jc1MQdcfahaOBMtCxVPC1pTRnwqZMEzR0G8lfCQh9k6/RW2 quW7mwnctVR8iSeHYnxtfYKV4sZZAJBNKglxhtkYM7z/FTdAjlpGEPlvY3NxNqivKN4O uSoRMgLLN4NUNnGhzn1Lo7o/IakGN8SoofeGmJQRmV2yYU9SZwvyoCPWgLUXMkEIybUu RQBMG+Fps+QZBuVWuIfq/uL9xJFquP2iLa7z9mDyCKZ43Uab58eUA9BPMD1znUFM0UU0 f7N+iE4LE/lcYErvNmXnhz8koi3YlFKT85h54zxjCUeSGzRbVHq2fzn0Za8T7ucAsL1X zajA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:in-reply-to:date:message-id :references:user-agent:reply-to:mime-version; bh=Ie7nE2WicbzFmsTSUiFETw8Eu0nN9hl2Ng8G1jbtpeQ=; b=RtxKPiVfUxUpSb8zqGmg/gX3DEGuI7L05GFS4enXrbCGGcz43oQ58VorcO4iaTHjYf T5NBrBpuG/sNGWT7SUJsEI31RcJUBqrOjSgVwJX6Ax8jU+lMdPoUb92xPJN5+f2rg1nS E6tl8xP3TGVdp+7DdDGx8g9i+Vui2hE2HPBFR8obr2saJbSVCO9qnwIfha+aI+AF4XC5 wJIIqKMFzFhzEkvfYHOiUJ9KO2XpMtacrJnvhiV2GDUdeRom5IiiKWMN5gR9YWDIcyKo 0BaAW/mHx/TaVgnemqcyIEf4eV6U/Cee5p6eah+CInzj1srpz/rTYN0mfnAljy8o9GVJ Rx5w== X-Gm-Message-State: AD7BkJIwcRsKbfJn3S7OavOPGynvOvjZyDBZT96ayLKc7Vs0vqNhxHdY3Wy0Mtdc7Jxceg== X-Received: by 10.66.244.15 with SMTP id xc15mr48324761pac.97.1457515743687; Wed, 09 Mar 2016 01:29:03 -0800 (PST) Received: from Vulcan.local (76-234-68-79.lightspeed.frokca.sbcglobal.net. [76.234.68.79]) by smtp.gmail.com with ESMTPSA id kw10sm10857935pab.0.2016.03.09.01.29.01 (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 09 Mar 2016 01:29:01 -0800 (PST) From: John Wiegley X-Google-Original-From: John Wiegley Received: by Vulcan.local (Postfix, from userid 501) id EE66A135F7454; Wed, 9 Mar 2016 01:29:00 -0800 (PST) In-Reply-To: <56DFDDEF.9090800@cs.ucla.edu> (Paul Eggert's message of "Wed, 9 Mar 2016 00:25:19 -0800") Date: Wed, 09 Mar 2016 01:28:58 -0800 Message-ID: References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> User-Agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/25.0.92 (darwin) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) 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 (/) >>>>> Paul Eggert writes: > Alan Mackenzie wrote: >> Can you recommend me a major mode with nestable comments? > How about Coq? I think John Wiegley is a Coq user and can advise. Coq supports (* foo (* bar *) *), in the same way that C does with /* */. Was there something more you wanted to know? -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 09:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: John Wiegley Cc: Alan Mackenzie , Eli Zaretskii , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145751627526143 (code B ref 22884); Wed, 09 Mar 2016 09:38:01 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 09:37:55 +0000 Received: from localhost ([127.0.0.1]:40503 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adaZ1-0006nb-0q for submit@debbugs.gnu.org; Wed, 09 Mar 2016 04:37:55 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:60067) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adaYy-0006nO-RV for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 04:37:53 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 013B8160E8A; Wed, 9 Mar 2016 01:37:47 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id frGE6gJKTeuS; Wed, 9 Mar 2016 01:37:46 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 4C103160E8D; Wed, 9 Mar 2016 01:37:46 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id J3xxUI45451y; Wed, 9 Mar 2016 01:37:46 -0800 (PST) Received: from [192.168.1.9] (pool-100-32-155-148.lsanca.fios.verizon.net [100.32.155.148]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 285E2160E8A; Wed, 9 Mar 2016 01:37:46 -0800 (PST) References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <56DFEEE9.2030603@cs.ucla.edu> Date: Wed, 9 Mar 2016 01:37:45 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) 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.0 (/) John Wiegley wrote: > Coq supports (* foo (* bar *) *), in the same way that C does with /* */. It's not the same way as C, since C comments do not nest. > Was there something more you wanted to know? It's up to Alan, but I suppose Alan may want simple directions to try out nested comments in Coq, for someone who does not know Coq at all. E.g., what should the file name and contents be, and what emacs -Q keystrokes should one type to illustrate how nested comments work. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 10:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: John Wiegley Cc: Eli Zaretskii , Paul Eggert , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.1457520815701 (code B ref 22884); Wed, 09 Mar 2016 10:54:01 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 10:53:35 +0000 Received: from localhost ([127.0.0.1]:40534 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adbkF-0000BF-CI for submit@debbugs.gnu.org; Wed, 09 Mar 2016 05:53:35 -0500 Received: from mail.muc.de ([193.149.48.3]:63847) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adbkD-0000B7-P0 for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 05:53:34 -0500 Received: (qmail 88472 invoked by uid 3782); 9 Mar 2016 10:53:32 -0000 Received: from acm.muc.de (p548A46A1.dip0.t-ipconnect.de [84.138.70.161]) by colin.muc.de (tmda-ofmipd) with ESMTP; Wed, 09 Mar 2016 11:53:31 +0100 Received: (qmail 8900 invoked by uid 1000); 9 Mar 2016 10:56:08 -0000 Date: Wed, 9 Mar 2016 10:56:08 +0000 Message-ID: <20160309105608.GB3948@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, John. On Wed, Mar 09, 2016 at 01:28:58AM -0800, John Wiegley wrote: > >>>>> Paul Eggert writes: > > Alan Mackenzie wrote: > >> Can you recommend me a major mode with nestable comments? > > How about Coq? I think John Wiegley is a Coq user and can advise. > Coq supports (* foo (* bar *) *), in the same way that C does with /* */. Was > there something more you wanted to know? Well, C doesn't do nested comments, but it looks like Coq does. I need a mode and some code to test nested comments with. Can you give me a URL for coq-mode.el, and possibly a sample Coq file (doesn't need to be anything fancy or long). Thanks! > -- > John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F > http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 14:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie , John Wiegley Cc: Paul Eggert , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145753468828093 (code B ref 22884); Wed, 09 Mar 2016 14:45:02 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 14:44:48 +0000 Received: from localhost ([127.0.0.1]:40649 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adfM0-0007J3-BV for submit@debbugs.gnu.org; Wed, 09 Mar 2016 09:44:48 -0500 Received: from aserp1040.oracle.com ([141.146.126.69]:20424) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adfLy-0007Ir-QM for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 09:44:47 -0500 Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u29EiXsg032445 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 9 Mar 2016 14:44:33 GMT Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0021.oracle.com (8.13.8/8.13.8) with ESMTP id u29EiWpm007078 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Wed, 9 Mar 2016 14:44:32 GMT Received: from abhmp0019.oracle.com (abhmp0019.oracle.com [141.146.116.25]) by userv0121.oracle.com (8.13.8/8.13.8) with ESMTP id u29EiVNS020152; Wed, 9 Mar 2016 14:44:31 GMT MIME-Version: 1.0 Message-ID: <99c8385a-f05b-4f7f-923c-15db1d41ca81@default> Date: Wed, 9 Mar 2016 06:44:31 -0800 (PST) From: Drew Adams References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> <20160309105608.GB3948@acm.fritz.box> In-Reply-To: <20160309105608.GB3948@acm.fritz.box> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6691.5000 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0021.oracle.com [141.146.126.233] X-Spam-Score: -2.3 (--) 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: -2.3 (--) I'm not following this thread, but Common Lisp has nested block comments, and they are very well specified in the spec/standard. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 17:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Drew Adams Cc: 22884@debbugs.gnu.org, John Wiegley , Paul Eggert Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145754292915697 (code B ref 22884); Wed, 09 Mar 2016 17:03:01 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 17:02:09 +0000 Received: from localhost ([127.0.0.1]:41764 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adhUv-000452-1a for submit@debbugs.gnu.org; Wed, 09 Mar 2016 12:02:09 -0500 Received: from mail.muc.de ([193.149.48.3]:52173) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adhUt-00043Q-A6 for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 12:02:07 -0500 Received: (qmail 75913 invoked by uid 3782); 9 Mar 2016 17:02:06 -0000 Received: from acm.muc.de (p548A46A1.dip0.t-ipconnect.de [84.138.70.161]) by colin.muc.de (tmda-ofmipd) with ESMTP; Wed, 09 Mar 2016 18:02:04 +0100 Received: (qmail 11596 invoked by uid 1000); 9 Mar 2016 17:04:42 -0000 Date: Wed, 9 Mar 2016 17:04:42 +0000 Message-ID: <20160309170442.GD3948@acm.fritz.box> References: <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> <20160309105608.GB3948@acm.fritz.box> <99c8385a-f05b-4f7f-923c-15db1d41ca81@default> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <99c8385a-f05b-4f7f-923c-15db1d41ca81@default> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Drew. On Wed, Mar 09, 2016 at 06:44:31AM -0800, Drew Adams wrote: > I'm not following this thread, but Common Lisp has nested > block comments, and they are very well specified in the > spec/standard. Thank you, thank you! Those nested comments in Lisp were just what I needed. And yes, I found a problem in my code. So, if you're still listening, John, I don't need the Coq URL and files any more. -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 17:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Alan Mackenzie Cc: 22884@debbugs.gnu.org, John Wiegley , Paul Eggert Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145754370917075 (code B ref 22884); Wed, 09 Mar 2016 17:16:01 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 17:15:09 +0000 Received: from localhost ([127.0.0.1]:41769 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adhhV-0004RL-7d for submit@debbugs.gnu.org; Wed, 09 Mar 2016 12:15:09 -0500 Received: from aserp1040.oracle.com ([141.146.126.69]:41407) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adhhT-0004Qs-31 for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 12:15:07 -0500 Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u29HF01b020730 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 9 Mar 2016 17:15:00 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserv0022.oracle.com (8.13.8/8.13.8) with ESMTP id u29HExnY014820 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Wed, 9 Mar 2016 17:14:59 GMT Received: from abhmp0005.oracle.com (abhmp0005.oracle.com [141.146.116.11]) by aserv0122.oracle.com (8.13.8/8.13.8) with ESMTP id u29HEsdc011799; Wed, 9 Mar 2016 17:14:57 GMT MIME-Version: 1.0 Message-ID: <144074d0-264b-461d-b40b-45e92ae79847@default> Date: Wed, 9 Mar 2016 09:14:53 -0800 (PST) From: Drew Adams References: <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> <20160309105608.GB3948@acm.fritz.box> <99c8385a-f05b-4f7f-923c-15db1d41ca81@default> <20160309170442.GD3948@acm.fritz.box> In-Reply-To: <20160309170442.GD3948@acm.fritz.box> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6691.5000 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0022.oracle.com [141.146.126.234] X-Spam-Score: -2.3 (--) 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: -2.3 (--) > Hello, Drew. >=20 > > I'm not following this thread, but Common Lisp has nested > > block comments, and they are very well specified in the > > spec/standard. >=20 > Thank you, thank you! Those nested comments in Lisp were > just what I needed. And yes, I found a problem in my code. Glad it helped. In general, I think it would be good if more Emacs Dev hackers were a bit more familiar with Common Lisp. "Common Lisp The Language" is very readable, and it explicitly presents the _reasons_ for many of the design decisions etc. You can read it from front to back. It is truly a pleasure to dig into, and Guy Steele is a good writer. Consider curling up with it on one of these cold or rainy nights. You won't regret it. https://www.cs.cmu.edu/Groups/AI/html/cltl/cltl2.html I still have and use the first edition. The 2nd is longer and includes `loop', CLOS, etc. but the meat is essentially the same. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: John Wiegley Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 09 Mar 2016 21:31:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: Alan Mackenzie , Eli Zaretskii , 22884@debbugs.gnu.org Reply-To: John Wiegley Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14575590507972 (code B ref 22884); Wed, 09 Mar 2016 21:31:01 +0000 Received: (at 22884) by debbugs.gnu.org; 9 Mar 2016 21:30:50 +0000 Received: from localhost ([127.0.0.1]:41905 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adlgw-00024V-Fz for submit@debbugs.gnu.org; Wed, 09 Mar 2016 16:30:50 -0500 Received: from mail-pa0-f44.google.com ([209.85.220.44]:33317) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1adlgu-00024H-Dc for 22884@debbugs.gnu.org; Wed, 09 Mar 2016 16:30:48 -0500 Received: by mail-pa0-f44.google.com with SMTP id fl4so49301290pad.0 for <22884@debbugs.gnu.org>; Wed, 09 Mar 2016 13:30:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:in-reply-to:date:message-id:references :user-agent:reply-to:mime-version; bh=M+r95UuoJauzaRZXk9Ao+6+9kJuoLIL1N19FkIeZ1vQ=; b=hdZ9TbavhBujiF5iYK93V4mstEOIJ/VaH5Mbi5zDa7M1rvCeDxm+BaLt6eA1vrXFpu SI6zusrZuAEiORKao6cgO4SJ83ZJgn96CrKZ3LgtQrEjlizTRbnujecZmHjIX2AlGxOz 1ytthbyW54ZLGTtuoJFXWPE0iveuPkcki5u6tMCV8wpcpA3iSRqW7/6whDfbKTsHYX9d wLAj8Xf7lpKsWqDZhBaCY8SvxzNC7OS+IxEZz0LpU5PLR2FeVFQS5vSPO9gWx8tV4ZHa 5UDmUNk5sx6QYWXBvoPCmd4XRnBjXElBaLPCXYlbLeU2wrjExF50bh/eRSYf0zBSqz9E BMvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:in-reply-to:date:message-id :references:user-agent:reply-to:mime-version; bh=M+r95UuoJauzaRZXk9Ao+6+9kJuoLIL1N19FkIeZ1vQ=; b=Vu+6vpNrJbqlhmDKbAaf1piyd+K8D8iCgVoUgGEtYyKkBO6ymAuzvU2BvtYHwTLMtx xyfpU4+sF6xHlvTv6OsCk4ACCVOqOtwudu7QBFbUl/1NZkmrwRh9twUQITE9fnv77T36 wiNCptoSl/wqIOz4QC0tq2E30qmokCOB7NvR5Atji9rg1qCnh1nBXVW6WDAOo1sG8R9X LyFZwiLtbFt+pUAlo48RlccLjdzs6BAo2Z+rXkspb7UPX0Cc5HbhCsSTWWKKXdD8kUnB 82odhsPXWftHD0ccQ4mGdLecEsCeEecx0FPCqTBsysn2KU8o1KVw45b5XHsjULeR4wvq N6yg== X-Gm-Message-State: AD7BkJIK9DV4/AtHXEMKbvqnMX+tcGkxuAjMlrYqKW7KjM0ebFk9Crh8SZkTQcEg94zC/Q== X-Received: by 10.66.55.102 with SMTP id r6mr566242pap.67.1457559042673; Wed, 09 Mar 2016 13:30:42 -0800 (PST) Received: from Vulcan.local (76-234-68-79.lightspeed.frokca.sbcglobal.net. [76.234.68.79]) by smtp.gmail.com with ESMTPSA id 82sm346518pfi.78.2016.03.09.13.30.41 (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 09 Mar 2016 13:30:41 -0800 (PST) From: John Wiegley X-Google-Original-From: John Wiegley Received: by Vulcan.local (Postfix, from userid 501) id 28E3113621216; Wed, 9 Mar 2016 13:30:41 -0800 (PST) In-Reply-To: <56DFEEE9.2030603@cs.ucla.edu> (Paul Eggert's message of "Wed, 9 Mar 2016 01:37:45 -0800") Date: Wed, 09 Mar 2016 13:30:38 -0800 Message-ID: References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160308140205.GA6269@acm.fritz.box> <56DFDDEF.9090800@cs.ucla.edu> <56DFEEE9.2030603@cs.ucla.edu> User-Agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/25.0.92 (darwin) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) 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 (/) >>>>> Paul Eggert writes: > John Wiegley wrote: >> Coq supports (* foo (* bar *) *), in the same way that C does with /* */. > It's not the same way as C, since C comments do not nest. Ah, there are some C compilers (Borland I think?) that allowed nested comments in C as an extension. But you're right, standard C does not. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Sun, 13 Mar 2016 10:02:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: Eli Zaretskii , 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.145786327719949 (code B ref 22884); Sun, 13 Mar 2016 10:02:01 +0000 Received: (at 22884) by debbugs.gnu.org; 13 Mar 2016 10:01:17 +0000 Received: from localhost ([127.0.0.1]:46633 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1af2pp-0005Bg-LL for submit@debbugs.gnu.org; Sun, 13 Mar 2016 06:01:17 -0400 Received: from mail.muc.de ([193.149.48.3]:35941) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1af2po-0005BW-Dy for 22884@debbugs.gnu.org; Sun, 13 Mar 2016 06:01:17 -0400 Received: (qmail 13273 invoked by uid 3782); 13 Mar 2016 10:01:14 -0000 Received: from acm.muc.de (p5B146B5E.dip0.t-ipconnect.de [91.20.107.94]) by colin.muc.de (tmda-ofmipd) with ESMTP; Sun, 13 Mar 2016 11:01:13 +0100 Received: (qmail 1931 invoked by uid 1000); 13 Mar 2016 10:03:54 -0000 Date: Sun, 13 Mar 2016 10:03:54 +0000 Message-ID: <20160313100354.GA1871@acm.fritz.box> References: <56D72C35.4090708@cs.ucla.edu> <20160303124910.GA2852@acm.fritz.box> <56D87A6E.8090202@cs.ucla.edu> <83povbz3mp.fsf@gnu.org> <56D8CC45.2090102@cs.ucla.edu> <20160304144759.GB2117@acm.fritz.box> <56D9F0C6.4090800@cs.ucla.edu> <20160304210818.GC2117@acm.fritz.box> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160304210818.GC2117@acm.fritz.box> User-Agent: Mutt/1.5.24 (2015-08-30) X-Delivery-Agent: TMDA/1.1.12 (Macallan) From: Alan Mackenzie X-Primary-Address: acm@muc.de X-Spam-Score: -0.0 (/) 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.0 (/) Hello, Paul. On Fri, Mar 04, 2016 at 09:08:18PM +0000, Alan Mackenzie wrote: > On Fri, Mar 04, 2016 at 12:32:06PM -0800, Paul Eggert wrote: > > Alan Mackenzie wrote: > > > I have had an idea for fixing Emacs so that we don't have this problem > > > with parens in column 0. That is only to scan comments in the forward > > > direction, and to mark them with text properties. `back_comment' will > > > then be little more than checking these text properties are up to date, > > > and then doing a backward text property search. > > Would this mean we no longer need to put \( into Elisp doc strings too? It has > > always been annoying that we have to do that. > It would mean this, yes. open-paren-in-column-0-is-defun-start would > become obsolete. Apologies, but I was mistaken on this point. Being able to put "(" at column 0 in Elisp strings would entail some further work, though that work would not be difficult or disruptive. -- Alan Mackenzie (Nuremberg, Germany). From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Tue, 15 Mar 2016 03:09:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14580112873387 (code B ref 22884); Tue, 15 Mar 2016 03:09:01 +0000 Received: (at 22884) by debbugs.gnu.org; 15 Mar 2016 03:08:07 +0000 Received: from localhost ([127.0.0.1]:48350 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1affL5-0000sZ-Hu for submit@debbugs.gnu.org; Mon, 14 Mar 2016 23:08:07 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181]:58285) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1affL2-0000s4-TV for 22884@debbugs.gnu.org; Mon, 14 Mar 2016 23:08:06 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0A7FgA731xV/wr0d0tcDoMChAKFVcA+gk0EAgKBPDwRAQEBAQEBAYEKQQWDXQEBAwFWIwULCzQSFBgNJIg3CM8jAQEBAQEBBAEBAQEeizqFBQeELQWzP4FFI4FmJByBFFoigngBAQE X-IPAS-Result: A0A7FgA731xV/wr0d0tcDoMChAKFVcA+gk0EAgKBPDwRAQEBAQEBAYEKQQWDXQEBAwFWIwULCzQSFBgNJIg3CM8jAQEBAQEBBAEBAQEeizqFBQeELQWzP4FFI4FmJByBFFoigngBAQE X-IronPort-AV: E=Sophos;i="5.13,465,1427774400"; d="scan'208";a="196231104" Received: from 75-119-244-10.dsl.teksavvy.com (HELO ceviche.home) ([75.119.244.10]) by ironport2-out.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 14 Mar 2016 23:07:59 -0400 Received: by ceviche.home (Postfix, from userid 20848) id DE1A5661AA; Mon, 14 Mar 2016 23:07:58 -0400 (EDT) From: Stefan Monnier Message-ID: References: <56D72C35.4090708@cs.ucla.edu> Date: Mon, 14 Mar 2016 23:07:58 -0400 In-Reply-To: <56D72C35.4090708@cs.ucla.edu> (Paul Eggert's message of "Wed, 2 Mar 2016 10:08:53 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.3 (/) 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 (/) [ Just to clarify and keep it in the corresponding bug, rather than in some side-thread in emacs-devel. ] > emacs -Q config.h > M-x goto-line RET 1661 RET / / The patch below seems to fix this pathological case, making the "/ /" instantaneous again. Stefan diff --git a/src/syntax.c b/src/syntax.c index 8e14bf3..b712e45 100644 --- a/src/syntax.c +++ b/src/syntax.c @@ -597,6 +597,26 @@ find_defun_start (ptrdiff_t pos, ptrdiff_t pos_byte) && MODIFF == find_start_modiff) return find_start_value; + if (!NILP (Vcomment_use_syntax_ppss)) + { + EMACS_INT modiffs = CHARS_MODIFF; + Lisp_Object ppss = call1 (Qsyntax_ppss, make_number (pos)); + if (modiffs != CHARS_MODIFF) + error ("syntax-ppss modified the buffer!"); + TEMP_SET_PT_BOTH (opoint, opoint_byte); + Lisp_Object boc = Fnth (make_number (8), ppss); + if (NUMBERP (boc)) + { + find_start_value = XINT (boc); + find_start_value_byte = CHAR_TO_BYTE (find_start_value); + } + else + { + find_start_value = pos; + find_start_value_byte = pos_byte; + } + goto found; + } if (!open_paren_in_column_0_is_defun_start) { find_start_value = BEGV; @@ -864,6 +884,7 @@ back_comment (ptrdiff_t from, ptrdiff_t from_byte, ptrdiff_t stop, case Sopen: /* Assume a defun-start point is outside of strings. */ if (open_paren_in_column_0_is_defun_start + && NILP (Vcomment_use_syntax_ppss) && (from == stop || (temp_byte = dec_bytepos (from_byte), FETCH_CHAR (temp_byte) == '\n'))) @@ -3647,6 +3668,11 @@ void syms_of_syntax (void) { DEFSYM (Qsyntax_table_p, "syntax-table-p"); + DEFSYM (Qsyntax_ppss, "syntax-ppss"); + DEFVAR_LISP ("comment-use-syntax-ppss", + Vcomment_use_syntax_ppss, + doc: /* Non-nil means `forward-comment' can use `syntax-ppss' internally. */); + Vcomment_use_syntax_ppss = Qt; staticpro (&Vsyntax_code_object); From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Sun, 08 May 2016 23:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.146274901411178 (code B ref 22884); Sun, 08 May 2016 23:11:01 +0000 Received: (at 22884) by debbugs.gnu.org; 8 May 2016 23:10:14 +0000 Received: from localhost ([127.0.0.1]:43573 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azXq2-0002uE-CF for submit@debbugs.gnu.org; Sun, 08 May 2016 19:10:14 -0400 Received: from mail-wm0-f49.google.com ([74.125.82.49]:35732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azXq0-0002ty-1D for 22884@debbugs.gnu.org; Sun, 08 May 2016 19:10:12 -0400 Received: by mail-wm0-f49.google.com with SMTP id e201so116384276wme.0 for <22884@debbugs.gnu.org>; Sun, 08 May 2016 16:10:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=EFcxwEfGJZsJA6ysLewt0ri275+iXIGCCWNaeFZ/Hso=; b=zimHIROdeXn8eziLaqr7xyU5fFo4/6r9Gwbnf8SrqPBP8Vq+O+rqJluqcOL9es/6WB +Ldlj9pFN+kgTIeEuluo558NAjYB8nxl1dtJIWDrWuk9ET+KNU+3zm0q8kguM7rYZd/7 k/TDrcW5T2eZdkghbywQ/Tbh9jOySZmGkvUiv9ZxeQEVVbSSXvTKI5jWWfXDQv+0r1Ex MVG7tN0SmkV23wwefD2Aq1qgWKAozEI/Xkn5RDLSdVi9WH9hqaNFVMjmatOfi+4NG/Wf /dJZH7sGARsv8qGB97yr9RPszZqUQ/xXrp4MloX55RaH6TrsPJTQosDDG6o7R522SR8B oX1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:references:cc:from:message-id :date:user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=EFcxwEfGJZsJA6ysLewt0ri275+iXIGCCWNaeFZ/Hso=; b=IpzPIOgONK+TewxxBa+qZqPkdK+sUZ7OCfe4t/4p05LoyoxIk9cXsy9zTThNV+x0Cp PlO1SVJnbiCjRrS0jRSax15z0xROyIBZJNdymVAUxwMLMdM5+CXb+h1+ArKTwZbo4IhG i5ttudxaz+y5o0dTk5N/NFdo/bEc/oqTRsSEO+SjLXds9j12EcV/q75LeLKjybwNedFm 1rKKv7VhUANLaqR+ore2r56hhBG+qO1AZxiopdokBE8mVKU/ZY3C1zl/dhlpSaDeK9Vr f6iO+qf5pT7nHmhytsw8AnwM0chNb+51Dl9xAqVpeHC7NfmjQUkikN87Ls9TVo2i6a31 tpLA== X-Gm-Message-State: AOPr4FX4sV7I/6bFKNAwHklw49jnTrJ9QWS6Od0hLNKoBGW0x+uUI96j7KIGPlnW2DnG0g== X-Received: by 10.194.133.135 with SMTP id pc7mr30558419wjb.49.1462749006451; Sun, 08 May 2016 16:10:06 -0700 (PDT) Received: from [192.168.1.2] ([185.105.175.24]) by smtp.googlemail.com with ESMTPSA id q77sm21161272wmd.12.2016.05.08.16.10.05 for <22884@debbugs.gnu.org> (version=TLSv1/SSLv3 cipher=OTHER); Sun, 08 May 2016 16:10:05 -0700 (PDT) References: <56D72C35.4090708@cs.ucla.edu> From: Dmitry Gutov Message-ID: Date: Mon, 9 May 2016 02:10:04 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 1.8 (+) 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: I think this bug should be made a non-blocker for 25.1: we have a workaround in the Emacs sources, and both proposed solutions are better suited for master. [...] Content analysis details: (1.8 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 1.2 MISSING_HEADERS Missing To: header -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [74.125.82.49 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (raaahh[at]gmail.com) -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [74.125.82.49 listed in wl.mailspike.net] 0.2 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and EnvelopeFrom freemail headers are different -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders 1.1 MALFORMED_FREEMAIL Bad headers on message from free email service 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid 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.8 (+) 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: I think this bug should be made a non-blocker for 25.1: we have a workaround in the Emacs sources, and both proposed solutions are better suited for master. [...] Content analysis details: (1.8 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [74.125.82.49 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [74.125.82.49 listed in wl.mailspike.net] 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 1.2 MISSING_HEADERS Missing To: header -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (dgutov[at]yandex.ru) 0.2 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and EnvelopeFrom freemail headers are different -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders 1.1 MALFORMED_FREEMAIL Bad headers on message from free email service 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid I think this bug should be made a non-blocker for 25.1: we have a workaround in the Emacs sources, and both proposed solutions are better suited for master. From debbugs-submit-bounces@debbugs.gnu.org Fri May 13 15:30:02 2016 Received: (at control) by debbugs.gnu.org; 13 May 2016 19:30:02 +0000 Received: from localhost ([127.0.0.1]:50241 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Imf-0005EB-Os for submit@debbugs.gnu.org; Fri, 13 May 2016 15:30:02 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:34917) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Imd-0005Da-Vt for control@debbugs.gnu.org; Fri, 13 May 2016 15:30:00 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id AA1B51612D6 for ; Fri, 13 May 2016 12:29:54 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id W5iBp0qW76cl for ; Fri, 13 May 2016 12:29:54 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 163731612D3 for ; Fri, 13 May 2016 12:29:54 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id nbSJJVUDu_fH for ; Fri, 13 May 2016 12:29:54 -0700 (PDT) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id F35EB1612CE for ; Fri, 13 May 2016 12:29:53 -0700 (PDT) To: control@debbugs.gnu.org From: Paul Eggert Subject: 22884 is no longer a blocker Organization: UCLA Computer Science Department Message-ID: Date: Fri, 13 May 2016 12:29:53 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.4 (-) 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.4 (-) unblock 19759 by 22884 From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long References: <56D72C35.4090708@cs.ucla.edu> In-Reply-To: <56D72C35.4090708@cs.ucla.edu> Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 13 May 2016 19:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.146316810827167 (code B ref 22884); Fri, 13 May 2016 19:36:01 +0000 Received: (at 22884) by debbugs.gnu.org; 13 May 2016 19:35:08 +0000 Received: from localhost ([127.0.0.1]:50246 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Irc-000747-H2 for submit@debbugs.gnu.org; Fri, 13 May 2016 15:35:08 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:35271) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Ira-00073k-NT for 22884@debbugs.gnu.org; Fri, 13 May 2016 15:35:06 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 3F2081612D6 for <22884@debbugs.gnu.org>; Fri, 13 May 2016 12:35:01 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id G0nVsNjYisUg for <22884@debbugs.gnu.org>; Fri, 13 May 2016 12:35:00 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 9ACD41612D7 for <22884@debbugs.gnu.org>; Fri, 13 May 2016 12:35:00 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id T7qrqvRn1ibV for <22884@debbugs.gnu.org>; Fri, 13 May 2016 12:35:00 -0700 (PDT) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 85A191612D6 for <22884@debbugs.gnu.org>; Fri, 13 May 2016 12:35:00 -0700 (PDT) From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: Date: Fri, 13 May 2016 12:35:00 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.4 (-) 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.4 (-) Yes, the workaround already installed in the emacs-25 branch (namely, mutate the sources so they don't run afoul of the problem) is good enough to solve the immediate problem, so I changed the status of Bug#22884 so that it is no longer a blocker for emacs-25. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long In-Reply-To: <56D72C35.4090708@cs.ucla.edu> Resent-From: Glenn Morris Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 13 May 2016 20:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.14631718926763 (code B ref 22884); Fri, 13 May 2016 20:39:01 +0000 Received: (at 22884) by debbugs.gnu.org; 13 May 2016 20:38:12 +0000 Received: from localhost ([127.0.0.1]:50263 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Jqe-0001l0-DG for submit@debbugs.gnu.org; Fri, 13 May 2016 16:38:12 -0400 Received: from eggs.gnu.org ([208.118.235.92]:32983) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Jqc-0001kj-5N for 22884@debbugs.gnu.org; Fri, 13 May 2016 16:38:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b1JqW-0005zF-2p for 22884@debbugs.gnu.org; Fri, 13 May 2016 16:38:04 -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.6 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43754) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b1JqT-0005yg-Qf; Fri, 13 May 2016 16:38:01 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1b1JqR-0002Z9-3q; Fri, 13 May 2016 16:37:59 -0400 From: Glenn Morris References: <56D72C35.4090708@cs.ucla.edu> X-Spook: Small Pox Cloud UFO Shell spies BLU-114/B bootleg passwd X-Ran: P$9(|W<:rKpQnw(J=E3@,ILoT)~Fk{w;vsXXx${&$-X>e0VuTd+Fp"R@gVLU(gC1e X-Hue: green X-Attribution: GM Date: Fri, 13 May 2016 16:37:58 -0400 Message-ID: <7zvb2hu21l.fsf@fencepost.gnu.org> User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) 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: -6.4 (------) Paul Eggert wrote: > Yes, the workaround already installed in the emacs-25 branch (namely, > mutate the sources so they don't run afoul of the problem) is good > enough to solve the immediate problem, so I changed the status of > Bug#22884 so that it is no longer a blocker for emacs-25. What about other C code, besides the Emacs sources? What if anyone ever wants to edit an older version of the Emacs sources? Your initial report said: "This sort of thing makes Emacs effectively unusable for editing [some C code]", which is, y'know, a pretty bad state. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 13 May 2016 21:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Glenn Morris Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.146317377610096 (code B ref 22884); Fri, 13 May 2016 21:10:01 +0000 Received: (at 22884) by debbugs.gnu.org; 13 May 2016 21:09:36 +0000 Received: from localhost ([127.0.0.1]:50285 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1KL2-0002cm-Kk for submit@debbugs.gnu.org; Fri, 13 May 2016 17:09:36 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:42974) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1KL1-0002cY-7D for 22884@debbugs.gnu.org; Fri, 13 May 2016 17:09:35 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id B55871612D0; Fri, 13 May 2016 14:09:28 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id SmkyvzWTWdV9; Fri, 13 May 2016 14:09:28 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 055C01612D1; Fri, 13 May 2016 14:09:28 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id jLlTT2vMuGsH; Fri, 13 May 2016 14:09:27 -0700 (PDT) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id E08DF1612D0; Fri, 13 May 2016 14:09:27 -0700 (PDT) References: <56D72C35.4090708@cs.ucla.edu> <7zvb2hu21l.fsf@fencepost.gnu.org> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: Date: Fri, 13 May 2016 14:09:27 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 In-Reply-To: <7zvb2hu21l.fsf@fencepost.gnu.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Score: -1.4 (-) 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.4 (-) On 05/13/2016 01:37 PM, Glenn Morris wrote: > What about other C code, besides the Emacs sources? > What if anyone ever wants to edit an older version of the Emacs sources= ? Older versions of Emacs have smaller config.h files, which makes the=20 problem significantly smaller. I just now visited a config.h file for=20 Emacs 23.4, and the same =E2=80=9Ctype =E2=80=98/ /=E2=80=99=E2=80=9D ben= chmark took about two seconds=20 on my six-year-old desktop (Fedora 23 x86-64, AMD Phenom II X4 910e).=20 Although two seconds is pretty annoying, it's considerably better than=20 the ten seconds I was seeing with emacs-25 before we worked around the=20 problem there. Although Non-Emacs sources may have the problem, I imagine it's=20 reasonably rare. > Your initial report said: "This sort of thing makes Emacs effectively > unusable for editing [some C code]", which is, y'know, a pretty bad sta= te. Yes, it is indeed a bad state. However, the problematic situations are=20 rare and cause slowdowns rather than crashes, so the case for making it=20 a blocker is not as strong as it could be. From unknown Thu Aug 21 14:53:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Thu, 28 Apr 2022 11:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22884 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Paul Eggert Cc: 22884@debbugs.gnu.org Received: via spool by 22884-submit@debbugs.gnu.org id=B22884.165114494728778 (code B ref 22884); Thu, 28 Apr 2022 11:23:02 +0000 Received: (at 22884) by debbugs.gnu.org; 28 Apr 2022 11:22:27 +0000 Received: from localhost ([127.0.0.1]:45583 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nk2E6-0007U6-SZ for submit@debbugs.gnu.org; Thu, 28 Apr 2022 07:22:27 -0400 Received: from quimby.gnus.org ([95.216.78.240]:53518) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nk2E4-0007Tp-73 for 22884@debbugs.gnu.org; Thu, 28 Apr 2022 07:22:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=vpXiNN5tGzs98Sw4/hNLBpCUmfFhijQzk3TxlDO5tEc=; b=VuwS8sfriG/htRiIX0wqja0xDW 6tUSZRjOQaOqFNA8hwc0Mm9zkctCgiA+ef5j9QKHTIV7KdW7gcnfsE6v5fHzWMCurSakV0mQxuySI HoVxWc6SiHtWmLLwkta5c0DuoyuhJXJtZxs5saxhkXydsWIDYna1YqAcYeg8ej7VczXM=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nk2Dv-00007e-2R; Thu, 28 Apr 2022 13:22:17 +0200 From: Lars Ingebrigtsen References: <56D72C35.4090708@cs.ucla.edu> X-Now-Playing: Lionrock's _This Is Fascism (1)_: "This Is Fascism (Destroy All Nazi's Mix)" Date: Thu, 28 Apr 2022 13:22:14 +0200 In-Reply-To: (Paul Eggert's message of "Fri, 13 May 2016 12:35:00 -0700") Message-ID: <87czh1mp09.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.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 @@CONTACT_ADDRESS@@ for details. Content preview: Paul Eggert writes: > Yes, the workaround already installed in the emacs-25 branch (namely, > mutate the sources so they don't run afoul of the problem) is good > enough to solve the immediate problem, so I changed the s [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) 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: -3.3 (---) Paul Eggert writes: > Yes, the workaround already installed in the emacs-25 branch (namely, > mutate the sources so they don't run afoul of the problem) is good > enough to solve the immediate problem, so I changed the status of > Bug#22884 so that it is no longer a blocker for emacs-25. (I'm going through old bug reports that unfortunately weren't resolved at the time.) Skimming this bug report, it's not quite clear to me what the remaining problems were. I can confirm that the test case (going to config.h when there's "(something in a parenthesis in a comment earlier)" and editing) is still fast on the trunk, so is there anything more to do in this bug report? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Thu Apr 28 07:22:30 2022 Received: (at control) by debbugs.gnu.org; 28 Apr 2022 11:22:30 +0000 Received: from localhost ([127.0.0.1]:45586 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nk2EA-0007UL-3g for submit@debbugs.gnu.org; Thu, 28 Apr 2022 07:22:30 -0400 Received: from quimby.gnus.org ([95.216.78.240]:53532) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nk2E7-0007Tt-KU for control@debbugs.gnu.org; Thu, 28 Apr 2022 07:22:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Subject:From:To:Message-Id:Date:Sender:Reply-To:Cc: MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=ymJHfOoHxNHxoMCIYvTqyqv7jDsY85A/dnBIAaBxars=; b=u33BTLN8eLH1iVwYESLlAcFmO1 zwA+Otv5JooCUrtfd8v4f/XbpQrgNNGRniSoROSoIVBHFiG63UvPN+g8inTUrR//JOYrN/vPChtz4 u2xJTYl/Wjz3+iZGYiVUB7tnBiixWAxhkJ9Pkn3deiitWVbScFIxg4QnOjYDD/3agxLE=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nk2E0-00007l-2o for control@debbugs.gnu.org; Thu, 28 Apr 2022 13:22:21 +0200 Date: Thu, 28 Apr 2022 13:22:19 +0200 Message-Id: <87bkwlmp04.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #22884 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.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 @@CONTACT_ADDRESS@@ for details. Content preview: tags 22884 + moreinfo quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) 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: -3.3 (---) tags 22884 + moreinfo quit From unknown Thu Aug 21 14:53:22 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Paul Eggert Subject: bug#22884: closed (Re: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long) Message-ID: References: <11256c68-b634-5fda-9927-b17d37a8b3ca@cs.ucla.edu> <56D72C35.4090708@cs.ucla.edu> X-Gnu-PR-Message: they-closed 22884 X-Gnu-PR-Package: emacs,cc-mode X-Gnu-PR-Keywords: moreinfo Reply-To: 22884@debbugs.gnu.org Date: Thu, 28 Apr 2022 19:36:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1651174562-19478-1" This is a multi-part message in MIME format... ------------=_1651174562-19478-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #22884: 25.0.92; C/l mode editing takes waaaayy too long which was filed against the emacs,cc-mode package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 22884@debbugs.gnu.org. --=20 22884: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D22884 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1651174562-19478-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 22884-done) by debbugs.gnu.org; 28 Apr 2022 19:35:19 +0000 Received: from localhost ([127.0.0.1]:50001 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nk9v5-00052q-Aw for submit@debbugs.gnu.org; Thu, 28 Apr 2022 15:35:19 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:35802) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nk9v3-00052Z-5i for 22884-done@debbugs.gnu.org; Thu, 28 Apr 2022 15:35:18 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id D0C6F1600F4; Thu, 28 Apr 2022 12:35:10 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id VNn84BP4QoEe; Thu, 28 Apr 2022 12:35:10 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 37E79160100; Thu, 28 Apr 2022 12:35:10 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 2Mtbw_5s7zzZ; Thu, 28 Apr 2022 12:35:10 -0700 (PDT) Received: from [131.179.64.200] (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id F25031600F4; Thu, 28 Apr 2022 12:35:09 -0700 (PDT) Message-ID: <11256c68-b634-5fda-9927-b17d37a8b3ca@cs.ucla.edu> Date: Thu, 28 Apr 2022 12:35:09 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 Subject: Re: bug#22884: 25.0.92; C/l mode editing takes waaaayy too long Content-Language: en-US To: Lars Ingebrigtsen References: <56D72C35.4090708@cs.ucla.edu> <87czh1mp09.fsf@gnus.org> From: Paul Eggert Organization: UCLA Computer Science Department In-Reply-To: <87czh1mp09.fsf@gnus.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 22884-done Cc: 22884-done@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: -3.3 (---) On 4/28/22 04:22, Lars Ingebrigtsen wrote: > I can confirm that the test case (going to config.h when > there's "(something in a parenthesis in a comment earlier)" and editing) > is still fast on the trunk, so is there anything more to do in this bug > report? No, I think this was fixed in CC mode a while ago. Thanks for checking. I'll close the bug report. ------------=_1651174562-19478-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 2 Mar 2016 18:09:37 +0000 Received: from localhost ([127.0.0.1]:58064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abBDH-0003Qq-Ib for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:37 -0500 Received: from eggs.gnu.org ([208.118.235.92]:32940) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1abBDE-0003QW-6X for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1abBD2-0003mX-Kb for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:22 -0500 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]:49717) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBD2-0003mJ-AZ for submit@debbugs.gnu.org; Wed, 02 Mar 2016 13:09:16 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51981) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBCv-0006yc-Bj for bug-gnu-emacs@gnu.org; Wed, 02 Mar 2016 13:09:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1abBCo-0003go-M7 for bug-gnu-emacs@gnu.org; Wed, 02 Mar 2016 13:09:09 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:58550) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1abBCo-0003ex-4U for bug-gnu-emacs@gnu.org; Wed, 02 Mar 2016 13:09:02 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id EAA00160E46 for ; Wed, 2 Mar 2016 10:08:58 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id ZMYlXgjpPEHg for ; Wed, 2 Mar 2016 10:08:54 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 0875B160FF5 for ; Wed, 2 Mar 2016 10:08:54 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id WnkL_rLdZPkZ for ; Wed, 2 Mar 2016 10:08:53 -0800 (PST) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id C8819160FF2 for ; Wed, 2 Mar 2016 10:08:53 -0800 (PST) To: GNU Emacs bugs From: Paul Eggert Subject: 25.0.92; C/l mode editing takes waaaayy too long Organization: UCLA Computer Science Department Message-ID: <56D72C35.4090708@cs.ucla.edu> Date: Wed, 2 Mar 2016 10:08:53 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------030501020309050709010409" 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-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.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: 1.0 (+) This is a multi-part message in MIME format. --------------030501020309050709010409 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable I've been noticing this problem for a bit and figured it'd get fixed but=20 it hasn't so here is a bug report. With the Emacs 25 pretests, it takes waaaaayyy too long to edit some C=20 code. To reproduce the problem use the attached file (taken from the=20 Emacs source code) and run: emacs -Q config.h M-x goto-line RET 1661 RET / / On my six-year-old desktop the second '/' takes about 10 seconds to=20 echo. This sort of thing makes Emacs effectively unusable for editing=20 config.h. In GNU Emacs 25.0.92.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.18.7) of 2016-03-02 built on penguin.cs.ucla.edu Repository revision: 100346aa226e4eacc56f390c099bb9aab585b5f4 Windowing system distributor 'Fedora Project', version 11.0.11800000 Configured using: 'configure --enable-gcc-warnings' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=3Dibus locale-coding-system: utf-8-unix Major mode: C/l Minor modes in effect: tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t abbrev-mode: t Recent messages: config.h has auto save data; consider M-x recover-this-file Mark set You can run the command =E2=80=98goto-line=E2=80=99 with M-g g Mark set Undo! Mark set Undo! Mark set Mark saved where search started Auto-saving...done Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message dired format-spec rfc822 mml mml-sec epg epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util help-fns mail-prsvr mail-utils character-fold misearch multi-isearch cl-extra help-mode cc-mode cc-fonts easymenu cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs cl-loaddefs pcase cl-lib time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel 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 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 dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 123955 4665) (symbols 48 21742 0) (miscs 40 57 290) (strings 32 28264 16097) (string-bytes 1 748499) (vectors 16 14562) (vector-slots 8 502379 4556) (floats 8 166 20) (intervals 56 4059 0) (buffers 976 12) (heap 1024 29227 2318)) --------------030501020309050709010409 Content-Type: text/plain; charset=UTF-8; name="config.h" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.h" Lyogc3JjL2NvbmZpZy5oLiAgR2VuZXJhdGVkIGZyb20gY29uZmlnLmluIGJ5IGNvbmZpZ3Vy ZS4gICovCi8qIHNyYy9jb25maWcuaW4uICBHZW5lcmF0ZWQgZnJvbSBjb25maWd1cmUuYWMg YnkgYXV0b2hlYWRlci4gICovCgovKiBHTlUgRW1hY3Mgc2l0ZSBjb25maWd1cmF0aW9uIHRl bXBsYXRlIGZpbGUuCgpDb3B5cmlnaHQgKEMpIDE5ODgsIDE5OTMtMTk5NCwgMTk5OS0yMDAy LCAyMDA0LTIwMTYKICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KClRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KCkdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cml0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CnRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yCihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCgpHTlUgRW1h Y3MgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk ZXRhaWxzLgoKWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UKYWxvbmcgd2l0aCBHTlUgRW1hY3MuICBJZiBub3QsIHNl ZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLwoKCi8qIE5vIGNvZGUgaW4g RW1hY3MgI2luY2x1ZGVzIGNvbmZpZy5oIHR3aWNlLCBidXQgc29tZSBiaXRzIG9mIGNvZGUK ICAgaW50ZW5kZWQgdG8gd29yayB3aXRoIG90aGVyIHBhY2thZ2VzIGFzIHdlbGwgKGxpa2Ug Z21hbGxvYy5jKQogICB0aGluayB0aGV5IGNhbiBpbmNsdWRlIGl0IGFzIG1hbnkgdGltZXMg YXMgdGhleSBsaWtlLiAgKi8KI2lmbmRlZiBFTUFDU19DT05GSUdfSAojZGVmaW5lIEVNQUNT X0NPTkZJR19ICgoKLyogRGVmaW5lIGlmIGJ1aWxkaW5nIHVuaXZlcnNhbCAoaW50ZXJuYWwg aGVscGVyIG1hY3JvKSAqLwovKiAjdW5kZWYgQUNfQVBQTEVfVU5JVkVSU0FMX0JVSUxEICov CgovKiBEZWZpbmUgdG8gdXNlIHRoZSBjb252ZW50aW9uIHRoYXQgJiBpbiB0aGUgZnVsbCBu YW1lIHN0YW5kcyBmb3IgdGhlIGxvZ2luCiAgIGlkLiAqLwojZGVmaW5lIEFNUEVSU0FORF9G VUxMX05BTUUgMQoKLyogRGVmaW5lIHRvIHRoZSBudW1iZXIgb2YgYml0cyBpbiB0eXBlICdw dHJkaWZmX3QnLiAqLwovKiAjdW5kZWYgQklUU0laRU9GX1BUUkRJRkZfVCAqLwoKLyogRGVm aW5lIHRvIHRoZSBudW1iZXIgb2YgYml0cyBpbiB0eXBlICdzaWdfYXRvbWljX3QnLiAqLwov KiAjdW5kZWYgQklUU0laRU9GX1NJR19BVE9NSUNfVCAqLwoKLyogRGVmaW5lIHRvIHRoZSBu dW1iZXIgb2YgYml0cyBpbiB0eXBlICdzaXplX3QnLiAqLwovKiAjdW5kZWYgQklUU0laRU9G X1NJWkVfVCAqLwoKLyogRGVmaW5lIHRvIHRoZSBudW1iZXIgb2YgYml0cyBpbiB0eXBlICd3 Y2hhcl90Jy4gKi8KLyogI3VuZGVmIEJJVFNJWkVPRl9XQ0hBUl9UICovCgovKiBEZWZpbmUg dG8gdGhlIG51bWJlciBvZiBiaXRzIGluIHR5cGUgJ3dpbnRfdCcuICovCi8qICN1bmRlZiBC SVRTSVpFT0ZfV0lOVF9UICovCgovKiBEZWZpbmUgaWYgZ2V0X2N1cnJlbnRfZGlyX25hbWUg c2hvdWxkIG5vdCBiZSB1c2VkLiAqLwovKiAjdW5kZWYgQlJPS0VOX0dFVF9DVVJSRU5UX0RJ Ul9OQU1FICovCgovKiBEZWZpbmUgb24gRnJlZUJTRCB0byB3b3JrIGFyb3VuZCBhbiBpc3N1 ZSB3aGVuIHJlYWRpbmcgZnJvbSBhIFBUWS4gKi8KLyogI3VuZGVmIEJST0tFTl9QVFlfUkVB RF9BRlRFUl9FQUdBSU4gKi8KCi8qIERlZmluZSBpZiBFbWFjcyBjYW5ub3QgYmUgZHVtcGVk IG9uIHlvdXIgc3lzdGVtLiAqLwovKiAjdW5kZWYgQ0FOTk9UX0RVTVAgKi8KCi8qIERlZmlu ZSB0aGlzIHRvIGVuYWJsZSBjb21waWxlIHRpbWUgY2hlY2tzIGZvciB0aGUgTGlzcF9PYmpl Y3QgZGF0YSB0eXBlLiAqLwovKiAjdW5kZWYgQ0hFQ0tfTElTUF9PQkpFQ1RfVFlQRSAqLwoK LyogU2hvcnQgY29weXJpZ2h0IHN0cmluZyBmb3IgdGhpcyB2ZXJzaW9uIG9mIEVtYWNzLiAq LwojZGVmaW5lIENPUFlSSUdIVCAiQ29weXJpZ2h0IChDKSAyMDE2IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLiIKCi8qIERlZmluZSB0byBvbmUgb2YgYF9nZXRiNjcnLCBgR0VU QjY3JywgYGdldGI2NycgZm9yIENyYXktMiBhbmQgQ3JheS1ZTVAKICAgc3lzdGVtcy4gVGhp cyBmdW5jdGlvbiBpcyByZXF1aXJlZCBmb3IgYGFsbG9jYS5jJyBzdXBwb3J0IG9uIHRob3Nl IHN5c3RlbXMuCiAgICovCi8qICN1bmRlZiBDUkFZX1NUQUNLU0VHX0VORCAqLwoKLyogRGVm aW5lIGlmIHRoZSBzeXN0ZW0gaXMgQ3lnd2luLiAqLwovKiAjdW5kZWYgQ1lHV0lOICovCgov KiBEZWZpbmUgdG8gMSBpZiB1c2luZyBgYWxsb2NhLmMnLiAqLwovKiAjdW5kZWYgQ19BTExP Q0EgKi8KCi8qIERlZmluZSBpZiB0aGUgc3lzdGVtIGlzIERhcndpbi4gKi8KLyogI3VuZGVm IERBUldJTl9PUyAqLwoKLyogTmFtZSBvZiB0aGUgZGVmYXVsdCBzb3VuZCBkZXZpY2UuICov CiNkZWZpbmUgREVGQVVMVF9TT1VORF9ERVZJQ0UgIi9kZXYvZHNwIgoKLyogRGVmaW5lIHRv IDEgZm9yIERHVVggd2l0aCA8c3lzL2RnX3N5c19pbmZvLmg+LiAqLwovKiAjdW5kZWYgREdV WCAqLwoKLyogQ2hhcmFjdGVyIHRoYXQgc2VwYXJhdGVzIGRpcmVjdG9yaWVzIGluIGEgZmls ZSBuYW1lLiAqLwojZGVmaW5lIERJUkVDVE9SWV9TRVAgJy8nCgovKiB0aGUgbmFtZSBvZiB0 aGUgZmlsZSBkZXNjcmlwdG9yIG1lbWJlciBvZiBESVIgKi8KLyogI3VuZGVmIERJUl9GRF9N RU1CRVJfTkFNRSAqLwoKI2lmZGVmIERJUl9GRF9NRU1CRVJfTkFNRQojIGRlZmluZSBESVJf VE9fRkQoRGlyX3ApICgoRGlyX3ApLT5ESVJfRkRfTUVNQkVSX05BTUUpCiNlbHNlCiMgZGVm aW5lIERJUl9UT19GRChEaXJfcCkgLTEKI2VuZGlmCgoKLyogRGVmaW5lIGlmIHByb2Nlc3Mu YyBkb2VzIG5vdCBuZWVkIHRvIGNsb3NlIGEgcHR5IHRvIG1ha2UgaXQgYSBjb250cm9sbGlu ZwogICB0ZXJtaW5hbCAoaXQgaXMgYWxyZWFkeSBhIGNvbnRyb2xsaW5nIHRlcm1pbmFsIG9m IHRoZSBzdWJwcm9jZXNzLCBiZWNhdXNlCiAgIHdlIGRpZCBpb2N0bCBUSU9DU0NUVFkpLiAq LwovKiAjdW5kZWYgRE9OVF9SRU9QRU5fUFRZICovCgovKiBEZWZpbmUgaWYgdGhlIHN5c3Rl bSBpcyBNUyBET1Mgb3IgTVMgV2luZG93cy4gKi8KLyogI3VuZGVmIERPU19OVCAqLwoKLyog RGVmaW5lIHRvIDEgaWYgdGhlIHN5c3RlbSBtZW1vcnkgYWxsb2NhdG9yIGlzIERvdWcgTGVh IHN0eWxlLCB3aXRoIG1hbGxvYwogICBob29rcyBhbmQgbWFsbG9jX3NldF9zdGF0ZS4gKi8K I2RlZmluZSBET1VHX0xFQV9NQUxMT0MgMQoKLyogRGVmaW5lIHRvIDEgdG8gZW5hYmxlIHcz MiBkZWJ1ZyBmYWNpbGl0aWVzLiAqLwovKiAjdW5kZWYgRU1BQ1NERUJVRyAqLwoKLyogRGVm aW5lIHRvIHRoZSBjYW5vbmljYWwgRW1hY3MgY29uZmlndXJhdGlvbiBuYW1lLiAqLwojZGVm aW5lIEVNQUNTX0NPTkZJR1VSQVRJT04gIng4Nl82NC11bmtub3duLWxpbnV4LWdudSIKCi8q IFN1bW1hcnkgb2Ygc29tZSBvZiB0aGUgbWFpbiBmZWF0dXJlcyBlbmFibGVkIGJ5IGNvbmZp Z3VyZS4gKi8KI2RlZmluZSBFTUFDU19DT05GSUdfRkVBVFVSRVMgIlhQTSBKUEVHIFRJRkYg R0lGIFBORyBSU1ZHIElNQUdFTUFHSUNLIFNPVU5EIEdQTSBEQlVTIEdDT05GIEdTRVRUSU5H UyBOT1RJRlkgQUNMIExJQlNFTElOVVggR05VVExTIExJQlhNTDIgRlJFRVRZUEUgTTE3Tl9G TFQgTElCT1RGIFhGVCBaTElCIFRPT0xLSVRfU0NST0xMX0JBUlMgR1RLMyBYMTEiCgovKiBE ZWZpbmUgdG8gdGhlIG9wdGlvbnMgcGFzc2VkIHRvIGNvbmZpZ3VyZS4gKi8KI2RlZmluZSBF TUFDU19DT05GSUdfT1BUSU9OUyAiLS1lbmFibGUtZ2NjLXdhcm5pbmdzIgoKLyogRGVmaW5l IHRvIDEgaWYgZXhwZW5zaXZlIHJ1bi10aW1lIGRhdGEgdHlwZSBhbmQgY29uc2lzdGVuY3kg Y2hlY2tzIGFyZQogICBlbmFibGVkLiAqLwovKiAjdW5kZWYgRU5BQkxFX0NIRUNLSU5HICov CgovKiBEZWZpbmUgdGhpcyB0byAxIGlmIEZfRFVQRkQgYmVoYXZpb3IgZG9lcyBub3QgbWF0 Y2ggUE9TSVggKi8KLyogI3VuZGVmIEZDTlRMX0RVUEZEX0JVR0dZICovCgovKiBMZXR0ZXIg dG8gdXNlIGluIGZpbmRpbmcgZGV2aWNlIG5hbWUgb2YgZmlyc3QgUFRZLCBpZiBQVFlzIGFy ZSBzdXBwb3J0ZWQuCiAgICovCi8qICN1bmRlZiBGSVJTVF9QVFlfTEVUVEVSICovCgovKiBX aXRob3V0IHRoZSBmb2xsb3dpbmcgd29ya2Fyb3VuZCwgRW1hY3MgcnVucyBzbG93bHkgb24g T1MgWCAxMC44LgogICBUaGUgd29ya2Fyb3VuZCBkaXNhYmxlcyBzb21lIHVzZWZ1bCBydW4t dGltZSBjaGVja2luZywgc28gaXQKICAgc2hvdWxkIGJlIGNvbmRpdGlvbmFsIHRvIHRoZSBw bGF0Zm9ybXMgd2l0aCB0aGUgcGVyZm9ybWFuY2UgYnVnLgogICBQZXJoYXBzIEFwcGxlIHdp bGwgZml4IHRoaXMgc29tZSBkYXk7IGFsc28gc2VlIG00L2V4dGVybi1pbmxpbmUubTQuICAq LwojaWYgZGVmaW5lZCBfX0FQUExFX18gJiYgZGVmaW5lZCBfX0dOVUNfXwojIGlmbmRlZiBf RE9OVF9VU0VfQ1RZUEVfSU5MSU5FXwojICBkZWZpbmUgX0RPTlRfVVNFX0NUWVBFX0lOTElO RV8KIyBlbmRpZgojIGlmbmRlZiBfRk9SVElGWV9TT1VSQ0UKIyAgZGVmaW5lIF9GT1JUSUZZ X1NPVVJDRSAwCiMgZW5kaWYKI2VuZGlmCgoKLyogRGVmaW5lIHRvIDEgaWYgZnV0aW1lc2F0 IG1pc2hhbmRsZXMgYSBOVUxMIGZpbGUgbmFtZS4gKi8KLyogI3VuZGVmIEZVVElNRVNBVF9O VUxMX0JVRyAqLwoKLyogRGVmaW5lIHRoaXMgdG8gY2hlY2sgZm9yIGVycm9ycyBpbiBjb25z IGxpc3QuICovCi8qICN1bmRlZiBHQ19DSEVDS19DT05TX0xJU1QgKi8KCi8qIERlZmluZSB0 aGlzIHRlbXBvcmFyaWx5IHRvIGh1bnQgYSBidWcuIElmIGRlZmluZWQsIHRoZSBzaXplIG9m IHN0cmluZ3MgaXMKICAgcmVkdW5kYW50bHkgcmVjb3JkZWQgaW4gc2RhdGEgc3RydWN0dXJl cyBzbyB0aGF0IGl0IGNhbiBiZSBjb21wYXJlZCB0byB0aGUKICAgc2l6ZXMgcmVjb3JkZWQg aW4gTGlzcCBzdHJpbmdzLiAqLwovKiAjdW5kZWYgR0NfQ0hFQ0tfU1RSSU5HX0JZVEVTICov CgovKiBEZWZpbmUgdGhpcyB0byBjaGVjayB0aGUgc3RyaW5nIGZyZWUgbGlzdC4gKi8KLyog I3VuZGVmIEdDX0NIRUNLX1NUUklOR19GUkVFX0xJU1QgKi8KCi8qIERlZmluZSB0aGlzIHRv IGNoZWNrIGZvciBzaG9ydCBzdHJpbmcgb3ZlcnJ1bi4gKi8KLyogI3VuZGVmIEdDX0NIRUNL X1NUUklOR19PVkVSUlVOICovCgovKiBNYXJrIGEgc2Vjb25kYXJ5IHN0YWNrLCBsaWtlIHRo ZSByZWdpc3RlciBzdGFjayBvbiB0aGUgaWE2NC4gKi8KLyogI3VuZGVmIEdDX01BUktfU0VD T05EQVJZX1NUQUNLICovCgovKiBEZWZpbmUgaWYgc2V0am1wIGlzIGtub3duIHRvIHNhdmUg YWxsIHJlZ2lzdGVycyByZWxldmFudCBmb3IgY29uc2VydmF0aXZlCiAgIGdhcmJhZ2UgY29s bGVjdGlvbiBpbiB0aGUgam1wX2J1Zi4gKi8KI2RlZmluZSBHQ19TRVRKTVBfV09SS1MgMQoK LyogRGVmaW5lIHRvIDEgdG8gZGlzYWJsZSBHVEsrL0dESyBkZXByZWNhdGlvbiB3YXJuaW5n cy4gKi8KI2RlZmluZSBHREtfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCgovKiBE ZWZpbmUgdG8gdGhlIHR5cGUgb2YgZWxlbWVudHMgaW4gdGhlIGFycmF5IHNldCBieSBgZ2V0 Z3JvdXBzJy4gVXN1YWxseQogICB0aGlzIGlzIGVpdGhlciBgaW50JyBvciBgZ2lkX3QnLiAq LwojZGVmaW5lIEdFVEdST1VQU19UIGdpZF90CgovKiBEZWZpbmUgdGhpcyB0byAxIGlmIGdl dGdyb3VwcygwLE5VTEwpIGRvZXMgbm90IHJldHVybiB0aGUgbnVtYmVyIG9mIGdyb3Vwcy4K ICAgKi8KLyogI3VuZGVmIEdFVEdST1VQU19aRVJPX0JVRyAqLwoKLyogRGVmaW5lIGlmIGdl dHRpbWVvZmRheSBjbG9iYmVycyB0aGUgbG9jYWx0aW1lIGJ1ZmZlci4gKi8KLyogI3VuZGVm IEdFVFRJTUVPRkRBWV9DTE9CQkVSU19MT0NBTFRJTUUgKi8KCi8qIERlZmluZSB0aGlzIHRv ICd2b2lkJyBvciAnc3RydWN0IHRpbWV6b25lJyB0byBtYXRjaCB0aGUgc3lzdGVtJ3MKICAg ZGVjbGFyYXRpb24gb2YgdGhlIHNlY29uZCBhcmd1bWVudCB0byBnZXR0aW1lb2ZkYXkuICov CiNkZWZpbmUgR0VUVElNRU9GREFZX1RJTUVaT05FIHN0cnVjdCB0aW1lem9uZQoKLyogRGVm aW5lIHRvIDEgdG8gZGlzYWJsZSBHbGliIGRlcHJlY2F0aW9uIHdhcm5pbmdzLiAqLwojZGVm aW5lIEdMSUJfRElTQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUyAxCgovKiBEZWZpbmUgdGhp cyB0byBlbmFibGUgZ2x5cGhzIGRlYnVnZ2luZyBjb2RlLiAqLwovKiAjdW5kZWYgR0xZUEhf REVCVUcgKi8KCi8qIERlZmluZSB0byBhIEMgcHJlcHJvY2Vzc29yIGV4cHJlc3Npb24gdGhh dCBldmFsdWF0ZXMgdG8gMSBvciAwLCBkZXBlbmRpbmcKICAgd2hldGhlciB0aGUgZ251bGli IG1vZHVsZSBjbG9zZS1zdHJlYW0gc2hhbGwgYmUgY29uc2lkZXJlZCBwcmVzZW50LiAqLwoj ZGVmaW5lIEdOVUxJQl9DTE9TRV9TVFJFQU0gMQoKLyogRGVmaW5lIHRvIGEgQyBwcmVwcm9j ZXNzb3IgZXhwcmVzc2lvbiB0aGF0IGV2YWx1YXRlcyB0byAxIG9yIDAsIGRlcGVuZGluZwog ICB3aGV0aGVyIHRoZSBnbnVsaWIgbW9kdWxlIGZhY2Nlc3NhdCBzaGFsbCBiZSBjb25zaWRl cmVkIHByZXNlbnQuICovCiNkZWZpbmUgR05VTElCX0ZBQ0NFU1NBVCAxCgovKiBEZWZpbmUg dG8gYSBDIHByZXByb2Nlc3NvciBleHByZXNzaW9uIHRoYXQgZXZhbHVhdGVzIHRvIDEgb3Ig MCwgZGVwZW5kaW5nCiAgIHdoZXRoZXIgdGhlIGdudWxpYiBtb2R1bGUgZmRvcGVuZGlyIHNo YWxsIGJlIGNvbnNpZGVyZWQgcHJlc2VudC4gKi8KI2RlZmluZSBHTlVMSUJfRkRPUEVORElS IDEKCi8qIERlZmluZSB0byBhIEMgcHJlcHJvY2Vzc29yIGV4cHJlc3Npb24gdGhhdCBldmFs dWF0ZXMgdG8gMSBvciAwLCBkZXBlbmRpbmcKICAgd2hldGhlciB0aGUgZ251bGliIG1vZHVs ZSBmc2NhbmYgc2hhbGwgYmUgY29uc2lkZXJlZCBwcmVzZW50LiAqLwojZGVmaW5lIEdOVUxJ Ql9GU0NBTkYgMQoKLyogRGVmaW5lIHRvIGEgQyBwcmVwcm9jZXNzb3IgZXhwcmVzc2lvbiB0 aGF0IGV2YWx1YXRlcyB0byAxIG9yIDAsIGRlcGVuZGluZwogICB3aGV0aGVyIHRoZSBnbnVs aWIgbW9kdWxlIG1rb3N0ZW1wIHNoYWxsIGJlIGNvbnNpZGVyZWQgcHJlc2VudC4gKi8KI2Rl ZmluZSBHTlVMSUJfTUtPU1RFTVAgMQoKLyogZW5hYmxlIHNvbWUgZ251bGliIHBvcnRhYmls aXR5IGNoZWNrcyAqLwojZGVmaW5lIEdOVUxJQl9QT1JUQ0hFQ0sgMQoKLyogRW5hYmxlIGNv bXBpbGUtdGltZSBhbmQgcnVuLXRpbWUgYm91bmRzLWNoZWNraW5nLCBhbmQgc29tZSB3YXJu aW5ncywKICAgICAgd2l0aG91dCB1cHNldHRpbmcgZ2xpYmMgMi4xNSsuICovCiAgICNpZiAo ZGVmaW5lZCBHTlVMSUJfUE9SVENIRUNLICYmICFkZWZpbmVkIF9GT1JUSUZZX1NPVVJDRSBc CiAgICAgICAgJiYgZGVmaW5lZCBfX09QVElNSVpFX18gJiYgX19PUFRJTUlaRV9fKQogICAj IGRlZmluZSBfRk9SVElGWV9TT1VSQ0UgMgogICAjZW5kaWYKICAKCi8qIERlZmluZSB0byAx IGlmIHByaW50ZiBhbmQgZnJpZW5kcyBzaG91bGQgYmUgbGFiZWxlZCB3aXRoIGF0dHJpYnV0 ZQogICAiX19nbnVfcHJpbnRmX18iIGluc3RlYWQgb2YgIl9fcHJpbnRmX18iICovCi8qICN1 bmRlZiBHTlVMSUJfUFJJTlRGX0FUVFJJQlVURV9GTEFWT1JfR05VICovCgovKiBEZWZpbmUg dG8gYSBDIHByZXByb2Nlc3NvciBleHByZXNzaW9uIHRoYXQgZXZhbHVhdGVzIHRvIDEgb3Ig MCwgZGVwZW5kaW5nCiAgIHdoZXRoZXIgdGhlIGdudWxpYiBtb2R1bGUgc2NhbmYgc2hhbGwg YmUgY29uc2lkZXJlZCBwcmVzZW50LiAqLwojZGVmaW5lIEdOVUxJQl9TQ0FORiAxCgovKiBE ZWZpbmUgaWYgdGhzIHN5c3RlbSBpcyBjb21wYXRpYmxlIHdpdGggR05VL0xpbnV4LiAqLwoj ZGVmaW5lIEdOVV9MSU5VWCAvKiovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1 c2UgdGhlIEdOVSBtZW1vcnkgYWxsb2NhdG9yLiAqLwojZGVmaW5lIEdOVV9NQUxMT0MgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBhY2NlcHQ0JyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0FDQ0VQVDQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IGBhY2Nlc3MnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9BQ0NFU1MgKi8KCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsc29ydCcgZnVuY3Rpb24uICovCi8qICN1 bmRlZiBIQVZFX0FDTFNPUlQgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8 YWNsdi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfQUNMVl9IICovCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbHhfZ2V0JyBmdW5jdGlvbi4gKi8KLyog I3VuZGVmIEhBVkVfQUNMWF9HRVQgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgYWNsX2NvcHlfZXh0X25hdGl2ZScgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0FD TF9DT1BZX0VYVF9OQVRJVkUgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBg YWNsX2NyZWF0ZV9lbnRyeV9ucCcgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0FDTF9D UkVBVEVfRU5UUllfTlAgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNs X2RlbGV0ZV9kZWZfZmlsZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9BQ0xfREVMRVRF X0RFRl9GSUxFIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsX2RlbGV0 ZV9mZF9ucCcgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0FDTF9ERUxFVEVfRkRfTlAg Ki8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsX2RlbGV0ZV9maWxlX25w JyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfQUNMX0RFTEVURV9GSUxFX05QICovCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9lbnRyaWVzJyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX0FDTF9FTlRSSUVTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgYWNsX2V4dGVuZGVkX2ZpbGUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVf QUNMX0VYVEVOREVEX0ZJTEUgMQoKLyogRGVmaW5lIHRvIDEgaWYgdGhlIGNvbnN0YW50IEFD TF9GSVJTVF9FTlRSWSBleGlzdHMuICovCiNkZWZpbmUgSEFWRV9BQ0xfRklSU1RfRU5UUlkg MQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBhY2xfZnJlZScgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9BQ0xfRlJFRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYGFjbF9mcmVlX3RleHQnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9BQ0xf RlJFRV9URVhUICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9mcm9t X21vZGUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfQUNMX0ZST01fTU9ERSAxCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9mcm9tX3RleHQnIGZ1bmN0aW9uLiAq LwojZGVmaW5lIEhBVkVfQUNMX0ZST01fVEVYVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgYGFjbF9nZXRfZmQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfQUNMX0dF VF9GRCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFjbF9nZXRfZmlsZScg ZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9BQ0xfR0VUX0ZJTEUgMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIDxhY2wvbGliYWNsLmg+IGhlYWRlciBmaWxlLiAqLwojZGVm aW5lIEhBVkVfQUNMX0xJQkFDTF9IIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgYWNsX3NldF9mZCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9BQ0xfU0VUX0ZEIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWNsX3NldF9maWxlJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX0FDTF9TRVRfRklMRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYGFjbF90b19zaG9ydF90ZXh0JyBmdW5jdGlvbi4gKi8KLyogI3VuZGVm IEhBVkVfQUNMX1RPX1NIT1JUX1RFWFQgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgYWNsX3RyaXZpYWwnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9BQ0xfVFJJ VklBTCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgdGhlIEFDTCB0eXBlIEFDTF9UWVBFX0VYVEVO REVEIGV4aXN0cy4gKi8KLyogI3VuZGVmIEhBVkVfQUNMX1RZUEVfRVhURU5ERUQgKi8KCi8q IERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgYWxpZ25lZF9hbGxvYycgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9BTElHTkVEX0FMTE9DIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlICdhbGxvY2EnIGFmdGVyIGluY2x1ZGluZyA8YWxsb2NhLmg+LCBhIGhlYWRlciB0 aGF0CiAgIG1heSBiZSBzdXBwbGllZCBieSB0aGlzIGRpc3RyaWJ1dGlvbi4gKi8KI2RlZmlu ZSBIQVZFX0FMTE9DQSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSA8YWxsb2NhLmg+ IGFuZCBpdCBzaG91bGQgYmUgdXNlZCAobm90IG9uIFVsdHJpeCkuCiAgICovCiNkZWZpbmUg SEFWRV9BTExPQ0FfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiBBTFNBIGlzIGF2YWlsYWJsZS4g Ki8KI2RlZmluZSBIQVZFX0FMU0EgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IDxieXRlc3dhcC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX0JZVEVTV0FQX0gg MQoKLyogRGVmaW5lIHRvIDEgaWYgc3RydG9sZCBjb25mb3JtcyB0byBDOTkuICovCiNkZWZp bmUgSEFWRV9DOTlfU1RSVE9MRCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGNmbWFrZXJhdycgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9DRk1BS0VSQVcgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjZnNldHNwZWVkJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0NGU0VUU1BFRUQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGBjbG9ja19nZXR0aW1lJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0NMT0NLX0dF VFRJTUUgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjbG9ja19zZXR0aW1l JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0NMT0NLX1NFVFRJTUUgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIDxjb2ZmLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5k ZWYgSEFWRV9DT0ZGX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8Y29t X2Vyci5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfQ09NX0VSUl9IICovCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGNvcHlzaWduJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0NPUFlTSUdOIDEKCi8qIERlZmluZSB0byAxIGlmIEMgc3VwcG9ydHMg dmFyaWFibGUtbGVuZ3RoIGFycmF5cy4gKi8KI2RlZmluZSBIQVZFX0NfVkFSQVJSQVlTIDEK Ci8qIERlZmluZSB0byAxIGlmIGRhdGFfc3RhcnQgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIHN0 YXJ0IG9mIHRoZSBtYWluIGRhdGEKICAgc2VnbWVudC4gKi8KI2RlZmluZSBIQVZFX0RBVEFf U1RBUlQgMQoKLyogRGVmaW5lIHRvIDEgaWYgdXNpbmcgRC1CdXMuICovCiNkZWZpbmUgSEFW RV9EQlVTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGJ1c190eXBlX2lz X3ZhbGlkJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0RCVVNfVFlQRV9JU19WQUxJRCAx CgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGRidXNfdmFsaWRhdGVfYnVzX25h bWUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9CVVNfTkFNRSAx CgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGRidXNfdmFsaWRhdGVfaW50ZXJm YWNlJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0RCVVNfVkFMSURBVEVfSU5URVJGQUNF IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGJ1c192YWxpZGF0ZV9tZW1i ZXInIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9NRU1CRVIgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBkYnVzX3ZhbGlkYXRlX3BhdGgnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfREJVU19WQUxJREFURV9QQVRIIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGJ1c193YXRjaF9nZXRfdW5peF9mZCcgZnVuY3Rp b24uICovCiNkZWZpbmUgSEFWRV9EQlVTX1dBVENIX0dFVF9VTklYX0ZEIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgYWxhcm0nLCBhbmQgdG8g MCBpZiB5b3UgZG9uJ3QuCiAgICovCiNkZWZpbmUgSEFWRV9ERUNMX0FMQVJNIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgZGlyZmQnLCBhbmQg dG8gMCBpZiB5b3UgZG9uJ3QuCiAgICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfRElSRkQgKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgZmRhdGFz eW5jJywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9G REFUQVNZTkMgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9u IG9mIGBmZG9wZW5kaXInLCBhbmQgdG8gMCBpZiB5b3UKICAgZG9uJ3QuICovCiNkZWZpbmUg SEFWRV9ERUNMX0ZET1BFTkRJUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg ZGVjbGFyYXRpb24gb2YgYGdldGR0YWJsZXNpemUnLCBhbmQgdG8gMCBpZiB5b3UKICAgZG9u J3QuICovCiNkZWZpbmUgSEFWRV9ERUNMX0dFVERUQUJMRVNJWkUgMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9uIG9mIGBnZXRlbnYnLCBhbmQgdG8gMCBp ZiB5b3UgZG9uJ3QuCiAgICovCiNkZWZpbmUgSEFWRV9ERUNMX0dFVEVOViAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2YgYGxvY2FsdGltZV9yJywg YW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9MT0NBTFRJ TUVfUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2Yg YG1lbXJjaHInLCBhbmQgdG8gMCBpZiB5b3UKICAgZG9uJ3QuICovCiNkZWZpbmUgSEFWRV9E RUNMX01FTVJDSFIgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0 aW9uIG9mIGBzdHJtb2RlJywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5l IEhBVkVfREVDTF9TVFJNT0RFIDAKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBk ZWNsYXJhdGlvbiBvZiBgc3RydG9pbWF4JywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAq LwojZGVmaW5lIEhBVkVfREVDTF9TVFJUT0lNQVggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIGRlY2xhcmF0aW9uIG9mIGBzdHJ0b2xsJywgYW5kIHRvIDAgaWYgeW91CiAg IGRvbid0LiAqLwovKiAjdW5kZWYgSEFWRV9ERUNMX1NUUlRPTEwgKi8KCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgc3RydG91bGwnLCBhbmQgdG8g MCBpZiB5b3UKICAgZG9uJ3QuICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfU1RSVE9VTEwgKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgc3RydG91 bWF4JywgYW5kIHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9T VFJUT1VNQVggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9u IG9mIGBzeXNfc2lnbGlzdCcsIGFuZCB0byAwIGlmIHlvdQogICBkb24ndC4gKi8KI2RlZmlu ZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGRlY2xhcmF0aW9uIG9mIGB0em5hbWUnLCBhbmQgdG8gMCBpZiB5b3UgZG9uJ3QuCiAg ICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfVFpOQU1FICovCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2YgYF9wdXRlbnYnLCBhbmQgdG8gMCBpZiB5b3UK ICAgZG9uJ3QuICovCi8qICN1bmRlZiBIQVZFX0RFQ0xfX1BVVEVOViAqLwoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGRlY2xhcmF0aW9uIG9mIGBfX2ZwZW5kaW5nJywgYW5k IHRvIDAgaWYgeW91CiAgIGRvbid0LiAqLwojZGVmaW5lIEhBVkVfREVDTF9fX0ZQRU5ESU5H IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBgX19z eXNfc2lnbGlzdCcsIGFuZCB0byAwIGlmIHlvdQogICBkb24ndC4gKi8KLyogI3VuZGVmIEhB VkVfREVDTF9fX1NZU19TSUdMSVNUICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgPGRpcmVudC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGlyZmQnIGZ1bmN0aW9uLiAqLwov KiAjdW5kZWYgSEFWRV9ESVJGRCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IGBkbGFkZHInIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9ETEFERFIgKi8KCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZGxmdW5jJyBmdW5jdGlvbi4gKi8KLyogI3Vu ZGVmIEhBVkVfRExGVU5DICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgJ2R1 cDInIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRFVQMiAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYGVhY2Nlc3MnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9F QUNDRVNTICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGVuZGdyZW50JyBm dW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0VOREdSRU5UIDEKCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgZW5kcHdlbnQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRU5E UFdFTlQgMQoKLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBvZiBlbnZp cm9uLiAqLwojZGVmaW5lIEhBVkVfRU5WSVJPTl9ERUNMIDEKCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgZXVpZGFjY2VzcycgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZF X0VVSURBQ0NFU1MgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8ZXhlY2lu Zm8uaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9FWEVDSU5GT19IIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZmFjY2Vzc2F0JyBmdW5jdGlvbi4gKi8KI2Rl ZmluZSBIQVZFX0ZBQ0NFU1NBVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGZhY2wnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9GQUNMICovCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZjaGRpcicgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFW RV9GQ0hESVIgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmY2htb2QnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRkNITU9EIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSBgZmNudGwnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRkNOVEwgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmZGF0YXN5bmMnIGZ1bmN0aW9uLiAq LwovKiAjdW5kZWYgSEFWRV9GREFUQVNZTkMgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgZmRvcGVuZGlyJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0ZET1BFTkRJ UiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZvcmsnIGZ1bmN0aW9uLiAq LwojZGVmaW5lIEhBVkVfRk9SSyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGZyZWVpZmFkZHJzJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0ZSRUVJRkFERFJTIDEK Ci8qIERlZmluZSB0byAxIGlmIHVzaW5nIHRoZSBmcmVldHlwZSBhbmQgZm9udGNvbmZpZyBs aWJyYXJpZXMuICovCiNkZWZpbmUgSEFWRV9GUkVFVFlQRSAxCgovKiBEZWZpbmUgdG8gMSBp ZiBmc2Vla28gKGFuZCBwcmVzdW1hYmx5IGZ0ZWxsbykgZXhpc3RzIGFuZCBpcyBkZWNsYXJl ZC4gKi8KI2RlZmluZSBIQVZFX0ZTRUVLTyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYGZzdGF0YXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRlNUQVRBVCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZzeW5jJyBmdW5jdGlvbi4gKi8KI2Rl ZmluZSBIQVZFX0ZTWU5DIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnV0 aW1lbnMnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRlVUSU1FTlMgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVzJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBI QVZFX0ZVVElNRVMgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVz YXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfRlVUSU1FU0FUIDEKCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2FpX3N0cmVycm9yJyBmdW5jdGlvbi4gKi8KI2RlZmlu ZSBIQVZFX0dBSV9TVFJFUlJPUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB1c2luZyBHQ29uZi4g Ki8KI2RlZmluZSBIQVZFX0dDT05GIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgZ2V0YWNsJyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfR0VUQUNMICovCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldGFkZHJpbmZvJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX0dFVEFERFJJTkZPIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgZ2V0ZHRhYmxlc2l6ZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9HRVREVEFC TEVTSVpFIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0Z3JlbnQnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VUR1JFTlQgMQoKLyogRGVmaW5lIHRvIDEgaWYg eW91ciBzeXN0ZW0gaGFzIGEgd29ya2luZyBgZ2V0Z3JvdXBzJyBmdW5jdGlvbi4gKi8KLyog I3VuZGVmIEhBVkVfR0VUR1JPVVBTICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgYGdldGhvc3RuYW1lJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1F IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0aWZhZGRycycgZnVuY3Rp b24uICovCiNkZWZpbmUgSEFWRV9HRVRJRkFERFJTIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSA8Z2V0b3B0Lmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfR0VU T1BUX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRvcHRfbG9uZ19v bmx5JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dFVE9QVF9MT05HX09OTFkgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRwYWdlc2l6ZScgZnVuY3Rpb24uICov CiNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYGdldHBlZXJuYW1lJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dFVFBFRVJO QU1FIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0cHQnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfR0VUUFQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGBnZXRwd2VudCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9HRVRQV0VOVCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldHJsaW1pdCcgZnVuY3Rpb24uICov CiNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIGBnZXRydXNhZ2UnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VUUlVTQUdFIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0c29ja25hbWUnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfR0VUU09DS05BTUUgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIGBnZXR0aW1lb2ZkYXknIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VU VElNRU9GREFZIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0X2N1cnJl bnRfZGlyX25hbWUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR0VUX0NVUlJFTlRfRElS X05BTUUgMQoKLyogRGVmaW5lIHRvIDEgaWYgdXNpbmcgR0ZpbGUuICovCi8qICN1bmRlZiBI QVZFX0dGSUxFTk9USUZZICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBhIGdpZiAo b3IgdW5naWYpIGxpYnJhcnkuICovCiNkZWZpbmUgSEFWRV9HSUYgMQoKLyogRGVmaW5lIHRv IDEgaWYgR0xpYiBpcyBsaW5rZWQgaW4uICovCiNkZWZpbmUgSEFWRV9HTElCIDEKCi8qIERl ZmluZSBpZiB1c2luZyBHbnVUTFMuICovCiNkZWZpbmUgSEFWRV9HTlVUTFMgMQoKLyogRGVm aW5lIGlmIHVzaW5nIEdudVRMUyB2My4gKi8KI2RlZmluZSBIQVZFX0dOVVRMUzMgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGdwbSBsaWJyYXJ5ICgtbGdwbSkuICovCiNk ZWZpbmUgSEFWRV9HUE0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBncmFu dHB0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dSQU5UUFQgMQoKLyogRGVmaW5lIHRv IDEgaWYgdXNpbmcgR1NldHRpbmdzLiAqLwojZGVmaW5lIEhBVkVfR1NFVFRJTkdTIDEKCi8q IERlZmluZSB0byAxIGlmIHVzaW5nIEdUSyAzIG9yIGxhdGVyLiAqLwojZGVmaW5lIEhBVkVf R1RLMyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGd0a19hZGp1c3RtZW50 X2dldF9wYWdlX3NpemUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR1RLX0FESlVTVE1F TlRfR0VUX1BBR0VfU0laRSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGd0 a19kaWFsb2dfZ2V0X2FjdGlvbl9hcmVhJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0dU S19ESUFMT0dfR0VUX0FDVElPTl9BUkVBIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgZ3RrX2ZpbGVfc2VsZWN0aW9uX25ldycgZnVuY3Rpb24uICovCi8qICN1bmRlZiBI QVZFX0dUS19GSUxFX1NFTEVDVElPTl9ORVcgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgZ3RrX2hhbmRsZV9ib3hfbmV3JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZF X0dUS19IQU5ETEVfQk9YX05FVyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGd0a19vcmllbnRhYmxlX3NldF9vcmllbnRhdGlvbicgZnVuY3Rpb24uICovCiNkZWZpbmUg SEFWRV9HVEtfT1JJRU5UQUJMRV9TRVRfT1JJRU5UQVRJT04gMQoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGBndGtfdGVhcm9mZl9tZW51X2l0ZW1fbmV3JyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX0dUS19URUFST0ZGX01FTlVfSVRFTV9ORVcgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBndGtfd2lkZ2V0X2dldF9tYXBwZWQnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfR1RLX1dJREdFVF9HRVRfTUFQUEVEIDEKCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBgZ3RrX3dpZGdldF9nZXRfc2Vuc2l0aXZlJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX0dUS19XSURHRVRfR0VUX1NFTlNJVElWRSAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGd0a193aWRnZXRfZ2V0X3dpbmRvdycgZnVuY3Rp b24uICovCiNkZWZpbmUgSEFWRV9HVEtfV0lER0VUX0dFVF9XSU5ET1cgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBndGtfd2lkZ2V0X3NldF9oYXNfd2luZG93JyBmdW5j dGlvbi4gKi8KI2RlZmluZSBIQVZFX0dUS19XSURHRVRfU0VUX0hBU19XSU5ET1cgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBndGtfd2luZG93X3NldF9oYXNfcmVzaXpl X2dyaXAnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfR1RLX1dJTkRPV19TRVRfSEFTX1JF U0laRV9HUklQIDEKCi8qIERlZmluZSB0byAxIGlmIG5ldGRiLmggZGVjbGFyZXMgaF9lcnJu by4gKi8KI2RlZmluZSBIQVZFX0hfRVJSTk8gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIDxpZmFkZHJzLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfSUZBRERS U19IIDEKCi8qIERlZmluZSB0byAxIGlmIHVzaW5nIGltYWdlbWFnaWNrLiAqLwojZGVmaW5l IEhBVkVfSU1BR0VNQUdJQ0sgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgaW5ldCBz b2NrZXRzLiAqLwojZGVmaW5lIEhBVkVfSU5FVF9TT0NLRVRTIDEKCi8qIERlZmluZSB0byAx IHRvIHVzZSBpbm90aWZ5LiAqLwojZGVmaW5lIEhBVkVfSU5PVElGWSAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGludHR5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwojZGVm aW5lIEhBVkVfSU5UVFlQRVNfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YGlzc2V0dWdpZCcgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX0lTU0VUVUdJRCAqLwoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGpwZWcgbGlicmFyeSAodHlwaWNhbGx5 IC1sanBlZykuICovCiNkZWZpbmUgSEFWRV9KUEVHIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSA8a2VyYmVyb3NJVi9rcmIuaD4gaGVhZGVyIGZpbGUuICovCi8qICN1bmRl ZiBIQVZFX0tFUkJFUk9TSVZfS1JCX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSA8a2VyYmVyb3Mva3JiLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9L RVJCRVJPU19LUkJfSCAqLwoKLyogRGVmaW5lIHRvIDEgdG8gdXNlIGtxdWV1ZS4gKi8KLyog I3VuZGVmIEhBVkVfS1FVRVVFICovCgovKiBEZWZpbmUgdG8gMSBpZiBgZV90ZXh0JyBpcyBh IG1lbWJlciBvZiBga3JiNV9lcnJvcicuICovCi8qICN1bmRlZiBIQVZFX0tSQjVfRVJST1Jf RV9URVhUICovCgovKiBEZWZpbmUgdG8gMSBpZiBgdGV4dCcgaXMgYSBtZW1iZXIgb2YgYGty YjVfZXJyb3InLiAqLwovKiAjdW5kZWYgSEFWRV9LUkI1X0VSUk9SX1RFWFQgKi8KCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8a3JiNS5oPiBoZWFkZXIgZmlsZS4gKi8KLyog I3VuZGVmIEhBVkVfS1JCNV9IICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg PGtyYi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfS1JCX0ggKi8KCi8qIERl ZmluZSBpZiB5b3UgaGF2ZSA8bGFuZ2luZm8uaD4gYW5kIG5sX2xhbmdpbmZvKENPREVTRVQp LiAqLwojZGVmaW5lIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYGRnYycgbGlicmFyeSAoLWxkZ2MpLiAqLwovKiAjdW5kZWYgSEFW RV9MSUJER0MgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bGliZ2VuLmg+ IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9MSUJHRU5fSCAqLwoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGBrc3RhdCcgbGlicmFyeSAoLWxrc3RhdCkuICovCi8q ICN1bmRlZiBIQVZFX0xJQktTVEFUICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0 aGUgJ2xvY2tmaWxlJyBsaWJyYXJ5ICgtbGxvY2tmaWxlKS4gKi8KI2RlZmluZSBIQVZFX0xJ QkxPQ0tGSUxFIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSAnbWFpbCcgbGli cmFyeSAoLWxtYWlsKS4gKi8KLyogI3VuZGVmIEhBVkVfTElCTUFJTCAqLwoKLyogRGVmaW5l IHRvIDEgaWYgdXNpbmcgbGlib3RmLiAqLwojZGVmaW5lIEhBVkVfTElCT1RGIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcGVyZnN0YXQnIGxpYnJhcnkgKC1scGVyZnN0 YXQpLiAqLwovKiAjdW5kZWYgSEFWRV9MSUJQRVJGU1RBVCAqLwoKLyogRGVmaW5lIHRvIDEg aWYgdXNpbmcgU0VMaW51eC4gKi8KI2RlZmluZSBIQVZFX0xJQlNFTElOVVggMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGxpYnhtbCBsaWJyYXJ5ICgtbHhtbDIpLiAqLwoj ZGVmaW5lIEhBVkVfTElCWE1MMiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBMaW51 eCBzeXNpbmZvIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfTElOVVhfU1lTSU5GTyAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxvY2FsdGltZV9yJyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX0xPQ0FMVElNRV9SIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgbG9nMicgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9MT0cyIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBzdXBwb3J0IGZpbGUgbmFtZXMgbG9uZ2VyIHRoYW4gMTQgY2hh cmFjdGVycy4gKi8KI2RlZmluZSBIQVZFX0xPTkdfRklMRV9OQU1FUyAxCgovKiBEZWZpbmUg dG8gMSBpZiB0aGUgc3lzdGVtIGhhcyB0aGUgdHlwZSAnbG9uZyBsb25nIGludCcuICovCiNk ZWZpbmUgSEFWRV9MT05HX0xPTkdfSU5UIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgbHJhbmQ0OCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9MUkFORDQ4IDEKCi8q IERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbHN0YXQnIGZ1bmN0aW9uLiAqLwojZGVm aW5lIEhBVkVfTFNUQVQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBsdXRp bWVzJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX0xVVElNRVMgMQoKLyogRGVmaW5lIHRv IDEgaWYgdXNpbmcgbGlibTE3bi1mbHQuICovCiNkZWZpbmUgSEFWRV9NMTdOX0ZMVCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1hY2hpbmUvc291bmRjYXJkLmg+IGhl YWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9NQUNISU5FX1NPVU5EQ0FSRF9IICovCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1hY2gvbWFjaC5oPiBoZWFkZXIgZmls ZS4gKi8KLyogI3VuZGVmIEhBVkVfTUFDSF9NQUNIX0ggKi8KCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgTWFnaWNrRXhwb3J0SW1hZ2VQaXhlbHMnIGZ1bmN0aW9uLiAqLwoj ZGVmaW5lIEhBVkVfTUFHSUNLRVhQT1JUSU1BR0VQSVhFTFMgMQoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGBNYWdpY2tNZXJnZUltYWdlTGF5ZXJzJyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX01BR0lDS01FUkdFSU1BR0VMQVlFUlMgMQoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIDxtYWlsbG9jay5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBI QVZFX01BSUxMT0NLX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxtYWxs b2MvbWFsbG9jLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9NQUxMT0NfTUFM TE9DX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIDx3Y2hhci5oPiBkZWNsYXJlcyBtYnN0YXRl X3QuICovCiNkZWZpbmUgSEFWRV9NQlNUQVRFX1QgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIDxtZW1vcnkuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9NRU1P UllfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG1lbXJjaHInIGZ1bmN0 aW9uLiAqLwojZGVmaW5lIEhBVkVfTUVNUkNIUiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgYG1rb3N0ZW1wJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX01LT1NURU1Q IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIGEgd29ya2luZyBgbW1hcCcgc3lzdGVt IGNhbGwuICovCiNkZWZpbmUgSEFWRV9NTUFQIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSA8bW1zeXN0ZW0uaD4gaGVhZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX01N U1lTVEVNX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIGR5bmFtaWMgbW9kdWxlcyBhcmUgZW5h YmxlZCAqLwovKiAjdW5kZWYgSEFWRV9NT0RVTEVTICovCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYG5hbm90aW1lJyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfTkFO T1RJTUUgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bmV0L2lmX2RsLmg+ IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9ORVRfSUZfRExfSCAqLwoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxuZXQvaWYuaD4gaGVhZGVyIGZpbGUuICovCiNk ZWZpbmUgSEFWRV9ORVRfSUZfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YG5ld2xvY2FsZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9ORVdMT0NBTEUgMQoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxubGlzdC5oPiBoZWFkZXIgZmlsZS4gKi8K LyogI3VuZGVmIEhBVkVfTkxJU1RfSCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGFyZSB1 c2luZyB0aGUgTmVYVHN0ZXAgQVBJLCBlaXRoZXIgR05Vc3RlcCBvciBDb2NvYSBvbgogICBN YWMgT1MgWC4gKi8KLyogI3VuZGVmIEhBVkVfTlMgKi8KCi8qIERlZmluZSB0byB1c2UgbmF0 aXZlIE1TIFdpbmRvd3MgR1VJLiAqLwovKiAjdW5kZWYgSEFWRV9OVEdVSSAqLwoKLyogRGVm aW5lIHRvIDEgaWYgbGlib3RmIGhhcyBPVEZfZ2V0X3ZhcmlhdGlvbl9nbHlwaHMuICovCiNk ZWZpbmUgSEFWRV9PVEZfR0VUX1ZBUklBVElPTl9HTFlQSFMgMQoKLyogRGVmaW5lIHRvIDEg aWYgcGVyc29uYWxpdHkgTElOVVgzMiBjYW4gYmUgc2V0LiAqLwojZGVmaW5lIEhBVkVfUEVS U09OQUxJVFlfTElOVVgzMiAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBp cGUyJyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1BJUEUyIDEKCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBwbmcgbGlicmFyeS4gKi8KI2RlZmluZSBIQVZFX1BORyAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X21lbWFsaWduJyBmdW5jdGlv bi4gKi8KLyogI3VuZGVmIEhBVkVfUE9TSVhfTUVNQUxJR04gKi8KCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBgcG9zaXhfb3BlbnB0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBI QVZFX1BPU0lYX09QRU5QVCAxCgovKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIC9wcm9jIGZp bGVzeXN0ZW0uICovCiNkZWZpbmUgSEFWRV9QUk9DRlMgMQoKLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlIGBwc2VsZWN0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1BTRUxF Q1QgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwc3RhdF9nZXRkeW5hbWlj JyBmdW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfUFNUQVRfR0VURFlOQU1JQyAqLwoKLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgUE9TSVggdGhyZWFkcy4gKi8KI2RlZmluZSBIQVZF X1BUSFJFQUQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxwdGhyZWFkLmg+ IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfUFRIUkVBRF9IIDEKCi8qIERlZmluZSB0 byAxIGlmIHRoZSBwdGhyZWFkX3NpZ21hc2sgZnVuY3Rpb24gY2FuIGJlIHVzZWQgKGRlc3Bp dGUgYnVncykuICovCiNkZWZpbmUgSEFWRV9QVEhSRUFEX1NJR01BU0sgMQoKLyogRGVmaW5l IGlmIHRoZSBzeXN0ZW0gc3VwcG9ydHMgcHR5IGRldmljZXMuICovCiNkZWZpbmUgSEFWRV9Q VFlTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8cHR5Lmg+IGhlYWRlciBm aWxlLiAqLwojZGVmaW5lIEhBVkVfUFRZX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIGBwdXRlbnYnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfUFVURU5WIDEKCi8q IERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8cHdkLmg+IGhlYWRlciBmaWxlLiAqLwoj ZGVmaW5lIEhBVkVfUFdEX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBy YW5kb20nIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfUkFORE9NIDEKCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSBgcmVhZGxpbmsnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhB VkVfUkVBRExJTksgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGByZWFkbGlu a2F0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1JFQURMSU5LQVQgMQoKLyogRGVmaW5l IHRvIDEgaWYgeW91IGhhdmUgdGhlIGByZWN2ZnJvbScgZnVuY3Rpb24uICovCiNkZWZpbmUg SEFWRV9SRUNWRlJPTSAxCgovKiBEZWZpbmUgdG8gMSBpZiByZXNfaW5pdCBpcyBhdmFpbGFi bGUuICovCiNkZWZpbmUgSEFWRV9SRVNfSU5JVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgYHJpbnQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfUklOVCAxCgovKiBE ZWZpbmUgdG8gMSBpZiB1c2luZyBsaWJyc3ZnLiAqLwojZGVmaW5lIEhBVkVfUlNWRyAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNlY3VyZV9nZXRlbnYnIGZ1bmN0aW9u LiAqLwojZGVmaW5lIEhBVkVfU0VDVVJFX0dFVEVOViAxCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYHNlbGVjdCcgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9TRUxFQ1Qg MQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZW5kdG8nIGZ1bmN0aW9uLiAq LwojZGVmaW5lIEhBVkVfU0VORFRPIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRo ZSBgc2V0ZHRhYmxlc2l6ZScgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX1NFVERUQUJM RVNJWkUgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2V0aXRpbWVyJyBm dW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgYHNldGxvY2FsZScgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9T RVRMT0NBTEUgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZXRybGltaXQn IGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSBgc2h1dGRvd24nIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVf U0hVVERPV04gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzaWcyc3RyJyBm dW5jdGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfU0lHMlNUUiAqLwoKLyogRGVmaW5lIHRvIDEg aWYgJ3NpZ19hdG9taWNfdCcgaXMgYSBzaWduZWQgaW50ZWdlciB0eXBlLiAqLwovKiAjdW5k ZWYgSEFWRV9TSUdORURfU0lHX0FUT01JQ19UICovCgovKiBEZWZpbmUgdG8gMSBpZiAnd2No YXJfdCcgaXMgYSBzaWduZWQgaW50ZWdlciB0eXBlLiAqLwovKiAjdW5kZWYgSEFWRV9TSUdO RURfV0NIQVJfVCAqLwoKLyogRGVmaW5lIHRvIDEgaWYgJ3dpbnRfdCcgaXMgYSBzaWduZWQg aW50ZWdlciB0eXBlLiAqLwovKiAjdW5kZWYgSEFWRV9TSUdORURfV0lOVF9UICovCgovKiBE ZWZpbmUgdG8gMSBpZiBzaWdzZXRqbXAgYW5kIHNpZ2xvbmdqbXAgd29yay4gKi8KI2RlZmlu ZSBIQVZFX1NJR1NFVEpNUCAxCgovKiBEZWZpbmUgdG8gMSBpZiB0aGUgc3lzdGVtIGhhcyB0 aGUgdHlwZSBgc2lnc2V0X3QnLiAqLwojZGVmaW5lIEhBVkVfU0lHU0VUX1QgMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzbnByaW50ZicgZnVuY3Rpb24uICovCiNkZWZp bmUgSEFWRV9TTlBSSU5URiAxCgovKiBEZWZpbmUgaWYgdGhlIHN5c3RlbSBzdXBwb3J0cyA0 LjItY29tcGF0aWJsZSBzb2NrZXRzLiAqLwojZGVmaW5lIEhBVkVfU09DS0VUUyAxCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBzb3VuZCBzdXBwb3J0LiAqLwojZGVmaW5lIEhBVkVf U09VTkQgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzb3VuZGNhcmQuaD4g aGVhZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1NPVU5EQ0FSRF9IICovCgovKiBEZWZp bmUgdG8gMSBpZiBDIHN0YWNrIG92ZXJmbG93IGNhbiBiZSBoYW5kbGVkIGluIHNvbWUgY2Fz ZXMuICovCiNkZWZpbmUgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORyAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0YXRhY2wnIGZ1bmN0aW9uLiAqLwovKiAjdW5k ZWYgSEFWRV9TVEFUQUNMICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN0 ZGludC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX1NURElOVF9IIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3RkaW9fZXh0Lmg+IGhlYWRlciBmaWxlLiAq LwojZGVmaW5lIEhBVkVfU1RESU9fRVhUX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIDxzdGRsaWIuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TVERMSUJf SCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0cGNweScgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9TVFBDUFkgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIDxzdHJpbmdzLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfU1RSSU5HU19I IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3RyaW5nLmg+IGhlYWRlciBm aWxlLiAqLwojZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIGBzdHJzaWduYWwnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfU1RSU0lH TkFMIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3RydG9pbWF4JyBmdW5j dGlvbi4gKi8KI2RlZmluZSBIQVZFX1NUUlRPSU1BWCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5 b3UgaGF2ZSB0aGUgYHN0cnRvbGwnIGZ1bmN0aW9uLiAqLwovKiAjdW5kZWYgSEFWRV9TVFJU T0xMICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0cnRvdWxsJyBmdW5j dGlvbi4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVE9VTEwgKi8KCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgc3RydG91bWF4JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1NU UlRPVU1BWCAxCgovKiBEZWZpbmUgdG8gMSBpZiAnc3RydWN0IF9fYXR0cmlidXRlX18gKChh bGlnbmVkIChOKSkpJyBhbGlnbnMgdGhlIHN0cnVjdHVyZQogICB0byBhbiBOLWJ5dGUgYm91 bmRhcnkuICovCiNkZWZpbmUgSEFWRV9TVFJVQ1RfQVRUUklCVVRFX0FMSUdORUQgMQoKLyog RGVmaW5lIHRvIDEgaWYgYGlmcl9hZGRyJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IGlmcmVx Jy4gKi8KI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfQUREUiAxCgovKiBEZWZpbmUg dG8gMSBpZiBgaWZyX2FkZHIuc2FfbGVuJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IGlmcmVx Jy4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9BRERSX1NBX0xFTiAqLwoK LyogRGVmaW5lIHRvIDEgaWYgYGlmcl9icm9hZGFkZHInIGlzIGEgbWVtYmVyIG9mIGBzdHJ1 Y3QgaWZyZXEnLiAqLwojZGVmaW5lIEhBVkVfU1RSVUNUX0lGUkVRX0lGUl9CUk9BREFERFIg MQoKLyogRGVmaW5lIHRvIDEgaWYgYGlmcl9mbGFncycgaXMgYSBtZW1iZXIgb2YgYHN0cnVj dCBpZnJlcScuICovCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX0ZMQUdTIDEKCi8q IERlZmluZSB0byAxIGlmIGBpZnJfaHdhZGRyJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IGlm cmVxJy4gKi8KI2RlZmluZSBIQVZFX1NUUlVDVF9JRlJFUV9JRlJfSFdBRERSIDEKCi8qIERl ZmluZSB0byAxIGlmIGBpZnJfbmV0bWFzaycgaXMgYSBtZW1iZXIgb2YgYHN0cnVjdCBpZnJl cScuICovCiNkZWZpbmUgSEFWRV9TVFJVQ1RfSUZSRVFfSUZSX05FVE1BU0sgMQoKLyogRGVm aW5lIHRvIDEgaWYgYG5fdW4ubl9uYW1lJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IG5saXN0 Jy4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVUNUX05MSVNUX05fVU5fTl9OQU1FICovCgovKiBE ZWZpbmUgdG8gMSBpZiBgc3RfYXRpbWVuc2VjJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IHN0 YXQnLiAqLwovKiAjdW5kZWYgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNRU5TRUMgKi8KCi8q IERlZmluZSB0byAxIGlmIGBzdF9hdGltZXNwZWMudHZfbnNlYycgaXMgYSBtZW1iZXIgb2Yg YHN0cnVjdCBzdGF0Jy4gKi8KLyogI3VuZGVmIEhBVkVfU1RSVUNUX1NUQVRfU1RfQVRJTUVT UEVDX1RWX05TRUMgKi8KCi8qIERlZmluZSB0byAxIGlmIGBzdF9hdGltLnN0X190aW0udHZf bnNlYycgaXMgYSBtZW1iZXIgb2YgYHN0cnVjdCBzdGF0Jy4gKi8KLyogI3VuZGVmIEhBVkVf U1RSVUNUX1NUQVRfU1RfQVRJTV9TVF9fVElNX1RWX05TRUMgKi8KCi8qIERlZmluZSB0byAx IGlmIGBzdF9hdGltLnR2X25zZWMnIGlzIGEgbWVtYmVyIG9mIGBzdHJ1Y3Qgc3RhdCcuICov CiNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9BVElNX1RWX05TRUMgMQoKLyogRGVmaW5l IHRvIDEgaWYgYHN0X2JpcnRodGltZW5zZWMnIGlzIGEgbWVtYmVyIG9mIGBzdHJ1Y3Qgc3Rh dCcuICovCi8qICN1bmRlZiBIQVZFX1NUUlVDVF9TVEFUX1NUX0JJUlRIVElNRU5TRUMgKi8K Ci8qIERlZmluZSB0byAxIGlmIGBzdF9iaXJ0aHRpbWVzcGVjLnR2X25zZWMnIGlzIGEgbWVt YmVyIG9mIGBzdHJ1Y3Qgc3RhdCcuICovCi8qICN1bmRlZiBIQVZFX1NUUlVDVF9TVEFUX1NU X0JJUlRIVElNRVNQRUNfVFZfTlNFQyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgYHN0X2JpcnRo dGltLnR2X25zZWMnIGlzIGEgbWVtYmVyIG9mIGBzdHJ1Y3Qgc3RhdCcuICovCi8qICN1bmRl ZiBIQVZFX1NUUlVDVF9TVEFUX1NUX0JJUlRIVElNX1RWX05TRUMgKi8KCi8qIERlZmluZSB0 byAxIGlmIGB0bV96b25lJyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IHRtJy4gKi8KI2RlZmlu ZSBIQVZFX1NUUlVDVF9UTV9UTV9aT05FIDEKCi8qIERlZmluZSB0byAxIGlmIGB1bmljb2Rl JyBpcyBhIG1lbWJlciBvZiBgc3RydWN0IHVuaXBhaXInLiAqLwojZGVmaW5lIEhBVkVfU1RS VUNUX1VOSVBBSVJfVU5JQ09ERSAxCgovKiBEZWZpbmUgaWYgc3RydWN0IHV0aW1idWYgaXMg ZGVjbGFyZWQgLS0gdXN1YWxseSBpbiA8dXRpbWUuaD4uIFNvbWUgc3lzdGVtcwogICBoYXZl IHV0aW1lLmggYnV0IGRvbid0IGRlY2xhcmUgdGhlIHN0cnVjdCBhbnl3aGVyZS4gKi8KI2Rl ZmluZSBIQVZFX1NUUlVDVF9VVElNQlVGIDEKCi8qIERlZmluZSBpZiBzdHJ1Y3Qgc3RhdCBo YXMgYW4gc3RfZG1fbW9kZSBtZW1iZXIuICovCi8qICN1bmRlZiBIQVZFX1NUX0RNX01PREUg Ki8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3ltbGluaycgZnVuY3Rpb24u ICovCiNkZWZpbmUgSEFWRV9TWU1MSU5LIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSBgc3luYycgZnVuY3Rpb24uICovCiNkZWZpbmUgSEFWRV9TWU5DIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2FjbC5oPiBoZWFkZXIgZmlsZS4gKi8KI2Rl ZmluZSBIQVZFX1NZU19BQ0xfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg PHN5cy9iaXR5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9TWVNfQklU WVBFU19IICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9pbnR0eXBl cy5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfU1lTX0lOVFRZUEVTX0ggKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2xvYWRhdmcuaD4gaGVhZGVy IGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1NZU19MT0FEQVZHX0ggKi8KCi8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3BhcmFtLmg+IGhlYWRlciBmaWxlLiAqLwojZGVm aW5lIEhBVkVfU1lTX1BBUkFNX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IDxzeXMvcmVzb3VyY2UuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfUkVT T1VSQ0VfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9zZWxlY3Qu aD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzeXMvc29ja2V0Lmg+IGhlYWRlciBmaWxlLiAq LwojZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSA8c3lzL3NvdW5kY2FyZC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZF X1NZU19TT1VORENBUkRfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5 cy9zdGF0Lmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCgov KiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9zeXNpbmZvLmg+IGhlYWRlciBm aWxlLiAqLwojZGVmaW5lIEhBVkVfU1lTX1NZU0lORk9fSCAxCgovKiBEZWZpbmUgdG8gMSBp ZiB5b3UgaGF2ZSB0aGUgPHN5cy9zeXN0ZW1pbmZvLmg+IGhlYWRlciBmaWxlLiAqLwovKiAj dW5kZWYgSEFWRV9TWVNfU1lTVEVNSU5GT19IICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3Ug aGF2ZSB0aGUgPHN5cy90aW1lYi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVf U1lTX1RJTUVCX0ggKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3Rp bWUuaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKCi8qIERl ZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3R5cGVzLmg+IGhlYWRlciBmaWxlLiAq LwojZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIDxzeXMvdW4uaD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9TWVNfVU5f SCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy91dHNuYW1lLmg+IGhl YWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy92bGltaXQuaD4gaGVhZGVyIGZpbGUuICovCiNk ZWZpbmUgSEFWRV9TWVNfVkxJTUlUX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg PHN5cy93YWl0Lmg+IHRoYXQgaXMgUE9TSVguMSBjb21wYXRpYmxlLiAqLwojZGVmaW5lIEhB VkVfU1lTX1dBSVRfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHRlcm0u aD4gaGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9URVJNX0ggMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIHRpZmYgbGlicmFyeSAoLWx0aWZmKS4gKi8KI2RlZmluZSBI QVZFX1RJRkYgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGB0aW1lZ20nIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfVElNRUdNIDEKCi8qIERlZmluZSB0byAxIGlmIHRp bWVyZmQgZnVuY3Rpb25zIGFyZSBzdXBwb3J0ZWQgYXMgaW4gR05VL0xpbnV4LiAqLwojZGVm aW5lIEhBVkVfVElNRVJGRCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHRp bWVyX3NldHRpbWUnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfVElNRVJfU0VUVElNRSAx CgovKiBEZWZpbmUgdG8gMSBpZiB0aGUgc3lzdGVtIGhhcyB0aGUgdHlwZSBgdGltZXpvbmVf dCcuICovCi8qICN1bmRlZiBIQVZFX1RJTUVaT05FX1QgKi8KCi8qIERlZmluZSBpZiBzdHJ1 Y3QgdG0gaGFzIHRoZSB0bV9nbXRvZmYgbWVtYmVyLiAqLwojZGVmaW5lIEhBVkVfVE1fR01U T0ZGIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdXIgYHN0cnVjdCB0bScgaGFzIGB0bV96b25l Jy4gRGVwcmVjYXRlZCwgdXNlCiAgIGBIQVZFX1NUUlVDVF9UTV9UTV9aT05FJyBpbnN0ZWFk LiAqLwojZGVmaW5lIEhBVkVfVE1fWk9ORSAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2 ZSB0aGUgYHRvdWNobG9jaycgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX1RPVUNITE9D SyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGRvbid0IGhhdmUgYHRtX3pvbmUnIGJ1dCBk byBoYXZlIHRoZSBleHRlcm5hbCBhcnJheQogICBgdHpuYW1lJy4gKi8KLyogI3VuZGVmIEhB VkVfVFpOQU1FICovCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHR6c2V0JyBm dW5jdGlvbi4gKi8KI2RlZmluZSBIQVZFX1RaU0VUIDEKCi8qIERlZmluZSB0byAxIGlmIHlv dSBoYXZlIHRoZSA8dW5pc3RkLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfVU5J U1REX0ggMQoKLyogRGVmaW5lIHRvIDEgaWYgdGhlIHN5c3RlbSBoYXMgdGhlIHR5cGUgJ3Vu c2lnbmVkIGxvbmcgbG9uZyBpbnQnLiAqLwojZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M T05HX0lOVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHV0aWwuaD4gaGVh ZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1VUSUxfSCAqLwoKLyogRGVmaW5lIHRvIDEg aWYgeW91IGhhdmUgdGhlIGB1dGltZW5zYXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVf VVRJTUVOU0FUIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8dXRpbWUuaD4g aGVhZGVyIGZpbGUuICovCiNkZWZpbmUgSEFWRV9VVElNRV9IIDEKCi8qIERlZmluZSB0byAx IGlmIHlvdSBoYXZlIHRoZSA8dXRtcC5oPiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZF X1VUTVBfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHZhbGdyaW5kL3Zh bGdyaW5kLmg+IGhlYWRlciBmaWxlLiAqLwojZGVmaW5lIEhBVkVfVkFMR1JJTkRfVkFMR1JJ TkRfSCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHZmb3JrJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX1ZGT1JLIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZl IHRoZSA8dmZvcmsuaD4gaGVhZGVyIGZpbGUuICovCi8qICN1bmRlZiBIQVZFX1ZGT1JLX0gg Ki8KCi8qIERlZmluZSB0byAxIHRvIHVzZSB3MzJub3RpZnkuICovCi8qICN1bmRlZiBIQVZF X1czMk5PVElGWSAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx3Y2hhci5o PiBoZWFkZXIgZmlsZS4gKi8KI2RlZmluZSBIQVZFX1dDSEFSX0ggMQoKLyogRGVmaW5lIGlm IHlvdSBoYXZlIHRoZSAnd2NoYXJfdCcgdHlwZS4gKi8KI2RlZmluZSBIQVZFX1dDSEFSX1Qg MQoKLyogRGVmaW5lIGlmIHlvdSBoYXZlIGEgd2luZG93IHN5c3RlbS4gKi8KI2RlZmluZSBI QVZFX1dJTkRPV19TWVNURU0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx3 aW5zb2NrMi5oPiBoZWFkZXIgZmlsZS4gKi8KLyogI3VuZGVmIEhBVkVfV0lOU09DSzJfSCAq LwoKLyogRGVmaW5lIHRvIDEgaWYgYGZvcmsnIHdvcmtzLiAqLwojZGVmaW5lIEhBVkVfV09S S0lOR19GT1JLIDEKCi8qIERlZmluZSB0byAxIGlmIGZzdGF0YXQgKC4uLiwgMCkgd29ya3Mu IEZvciBleGFtcGxlLCBpdCBkb2VzIG5vdCB3b3JrIGluIEFJWAogICA3LjEuICovCi8qICN1 bmRlZiBIQVZFX1dPUktJTkdfRlNUQVRBVF9aRVJPX0ZMQUcgKi8KCi8qIERlZmluZSBpZiB1 dGltZXMgd29ya3MgcHJvcGVybHkuICovCiNkZWZpbmUgSEFWRV9XT1JLSU5HX1VUSU1FUyAx CgovKiBEZWZpbmUgdG8gMSBpZiBgdmZvcmsnIHdvcmtzLiAqLwojZGVmaW5lIEhBVkVfV09S S0lOR19WRk9SSyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHdzMnRjcGlw Lmg+IGhlYWRlciBmaWxlLiAqLwovKiAjdW5kZWYgSEFWRV9XUzJUQ1BJUF9IICovCgovKiBE ZWZpbmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1c2UgdmVyc2lvbiAxMSBvZiBYIHdpbmRvd3Mu ICovCiNkZWZpbmUgSEFWRV9YMTEgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhl IFgxMVI2IG9yIG5ld2VyIHZlcnNpb24gb2YgWGxpYi4gKi8KI2RlZmluZSBIQVZFX1gxMVI2 IDEKCi8qIERlZmluZSBpZiB5b3UgaGF2ZSB1c2FibGUgWDExUjYtc3R5bGUgWElNIHN1cHBv cnQuICovCiNkZWZpbmUgSEFWRV9YMTFSNl9YSU0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIFgxMVI2IG9yIG5ld2VyIHZlcnNpb24gb2YgWHQuICovCi8qICN1bmRlZiBI QVZFX1gxMVhUUjYgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYYXczZCBs aWJyYXJ5ICgtbFhhdzNkKS4gKi8KLyogI3VuZGVmIEhBVkVfWEFXM0QgKi8KCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYZml4ZXMgZXh0ZW5zaW9uLiAqLwojZGVmaW5lIEhB VkVfWEZJWEVTIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYZnQgbGlicmFy eS4gKi8KI2RlZmluZSBIQVZFX1hGVCAxCgovKiBEZWZpbmUgdG8gMSBpZiBYSU0gaXMgYXZh aWxhYmxlICovCiNkZWZpbmUgSEFWRV9YSU0gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIFhpbmVyYW1hIGV4dGVuc2lvbi4gKi8KI2RlZmluZSBIQVZFX1hJTkVSQU1BIDEK Ci8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYa2IgZXh0ZW5zaW9uLiAqLwojZGVm aW5lIEhBVkVfWEtCIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBYcG0gbGli cmFyeSAoLWxYcG0pLiAqLwojZGVmaW5lIEhBVkVfWFBNIDEKCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBYUmFuZHIgZXh0ZW5zaW9uLiAqLwojZGVmaW5lIEhBVkVfWFJBTkRS IDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgWHJtU2V0RGF0YWJhc2UnIGZ1 bmN0aW9uLiAqLwojZGVmaW5lIEhBVkVfWFJNU0VUREFUQUJBU0UgMQoKLyogRGVmaW5lIHRv IDEgaWYgeW91IGhhdmUgdGhlIGBYUlJHZXRPdXRwdXRQcmltYXJ5JyBmdW5jdGlvbi4gKi8K I2RlZmluZSBIQVZFX1hSUkdFVE9VVFBVVFBSSU1BUlkgMQoKLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlIGBYUlJHZXRTY3JlZW5SZXNvdXJjZXNDdXJyZW50JyBmdW5jdGlvbi4g Ki8KI2RlZmluZSBIQVZFX1hSUkdFVFNDUkVFTlJFU09VUkNFU0NVUlJFTlQgMQoKLyogRGVm aW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBYU2NyZWVuTnVtYmVyT2ZTY3JlZW4nIGZ1bmN0 aW9uLiAqLwojZGVmaW5lIEhBVkVfWFNDUkVFTk5VTUJFUk9GU0NSRUVOIDEKCi8qIERlZmlu ZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgWFNjcmVlblJlc291cmNlU3RyaW5nJyBmdW5jdGlv bi4gKi8KI2RlZmluZSBIQVZFX1hTQ1JFRU5SRVNPVVJDRVNUUklORyAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB4d2lkZ2V0cyBzdXBwb3J0LiAqLwovKiAjdW5kZWYgSEFWRV9Y V0lER0VUUyAqLwoKLyogRGVmaW5lIGlmIHlvdSBoYXZlIHVzYWJsZSBpMThuIHN1cHBvcnQu ICovCiNkZWZpbmUgSEFWRV9YX0kxOE4gMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUg dGhlIFNNIGxpYnJhcnkgKC1sU00pLiAqLwojZGVmaW5lIEhBVkVfWF9TTSAxCgovKiBEZWZp bmUgdG8gMSBpZiB5b3Ugd2FudCB0byB1c2UgdGhlIFggd2luZG93IHN5c3RlbS4gKi8KI2Rl ZmluZSBIQVZFX1hfV0lORE9XUyAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg emxpYiBsaWJyYXJ5ICgtbHopLiAqLwojZGVmaW5lIEhBVkVfWkxJQiAxCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgaGF2ZSB0aGUgYF9mdGltZScgZnVuY3Rpb24uICovCi8qICN1bmRlZiBI QVZFX19GVElNRSAqLwoKLyogRGVmaW5lIHRvIDEgaWYgX3NldGptcCBhbmQgX2xvbmdqbXAg d29yay4gKi8KI2RlZmluZSBIQVZFX19TRVRKTVAgMQoKLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlICdfX2J1aWx0aW5fdW53aW5kX2luaXQnIGZ1bmN0aW9uLiAqLwojZGVmaW5l IEhBVkVfX19CVUlMVElOX1VOV0lORF9JTklUIDEKCi8qIERlZmluZSB0byAxIGlmIHlvdSBo YXZlIHRoZSBgX19leGVjdXRhYmxlX3N0YXJ0JyBmdW5jdGlvbi4gKi8KI2RlZmluZSBIQVZF X19fRVhFQ1VUQUJMRV9TVEFSVCAxCgovKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUg YF9fc2VjdXJlX2dldGVudicgZnVuY3Rpb24uICovCi8qICN1bmRlZiBIQVZFX19fU0VDVVJF X0dFVEVOViAqLwoKLyogRGVmaW5lIHRvIHN1cHBvcnQgdXNpbmcgYSBIZXNpb2QgZGF0YWJh c2UgdG8gZmluZCB0aGUgUE9QIHNlcnZlci4gKi8KLyogI3VuZGVmIEhFU0lPRCAqLwoKLyog RGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgSFBVWC4gKi8KLyogI3VuZGVmIEhQVVggKi8KCi8q IERlZmluZSB0byB1c2UgZ21hbGxvYyBiZWZvcmUgZHVtcGluZyBhbmQgdGhlIHN5c3RlbSBt YWxsb2MgYWZ0ZXIuICovCi8qICN1bmRlZiBIWUJSSURfTUFMTE9DICovCgovKiBUaGlzIGlz IHN1YnN0aXR1dGVkIHdoZW4gJFRFUk0gaXMgImludGVybmFsIi4gKi8KLyogI3VuZGVmIElO VEVSTkFMX1RFUk1JTkFMICovCgovKiBEZWZpbmUgdG8gcmVhZCBpbnB1dCB1c2luZyBTSUdJ Ty4gKi8KI2RlZmluZSBJTlRFUlJVUFRfSU5QVVQgMQoKLyogRGVmaW5lIGlmIHRoZSBzeXN0 ZW0gaXMgSVJJWC4gKi8KLyogI3VuZGVmIElSSVg2XzUgKi8KCi8qIFJldHVybnMgdHJ1ZSBp ZiBjaGFyYWN0ZXIgaXMgYW55IGZvcm0gb2Ygc2VwYXJhdG9yLiAqLwojZGVmaW5lIElTX0FO WV9TRVAoX2NfKSAoSVNfRElSRUNUT1JZX1NFUCAoX2NfKSkKCi8qIFJldHVybnMgdHJ1ZSBp ZiBjaGFyYWN0ZXIgaXMgYSBkZXZpY2Ugc2VwYXJhdG9yLiAqLwojZGVmaW5lIElTX0RFVklD RV9TRVAoX2NfKSAwCgovKiBSZXR1cm5zIHRydWUgaWYgY2hhcmFjdGVyIGlzIGEgZGlyZWN0 b3J5IHNlcGFyYXRvci4gKi8KI2RlZmluZSBJU19ESVJFQ1RPUllfU0VQKF9jXykgKChfY18p ID09IERJUkVDVE9SWV9TRVApCgovKiBEZWZpbmUgdG8gc3VwcG9ydCBLZXJiZXJvcy1hdXRo ZW50aWNhdGVkIFBPUCBtYWlsIHJldHJpZXZhbC4gKi8KLyogI3VuZGVmIEtFUkJFUk9TICov CgovKiBEZWZpbmUgdG8gdXNlIEtlcmJlcm9zIDUgaW5zdGVhZCBvZiBLZXJiZXJvcyA0LiAq LwovKiAjdW5kZWYgS0VSQkVST1M1ICovCgovKiBEZWZpbmUgdG8gMSBpZiBMaW51eCBzeXNp bmZvIHNpemVzIGFyZSBpbiBtdWx0aXBsZXMgb2YgbWVtX3VuaXQgYnl0ZXMuICovCiNkZWZp bmUgTElOVVhfU1lTSU5GT19VTklUIDEKCi8qIERlZmluZSB0byAxIGlmICdsc3RhdCcgZGVy ZWZlcmVuY2VzIGEgc3ltbGluayBzcGVjaWZpZWQgd2l0aCBhIHRyYWlsaW5nCiAgIHNsYXNo LiAqLwojZGVmaW5lIExTVEFUX0ZPTExPV1NfU0xBU0hFRF9TWU1MSU5LIDEKCi8qIFN0cmlu ZyBnaXZpbmcgZmFsbGJhY2sgUE9QIG1haWwgaG9zdC4gKi8KLyogI3VuZGVmIE1BSUxIT1NU ICovCgovKiBEZWZpbmUgdG8gdW5saW5rLCByYXRoZXIgdGhhbiBlbXB0eSwgbWFpbCBzcG9v bCBhZnRlciByZWFkaW5nLiAqLwovKiAjdW5kZWYgTUFJTF9VTkxJTktfU1BPT0wgKi8KCi8q IERlZmluZSBpZiB0aGUgbWFpbGVyIHVzZXMgZmxvY2sgdG8gaW50ZXJsb2NrIHRoZSBtYWls IHNwb29sLiAqLwovKiAjdW5kZWYgTUFJTF9VU0VfRkxPQ0sgKi8KCi8qIERlZmluZSBpZiB0 aGUgbWFpbGVyIHVzZXMgbG9ja2YgdG8gaW50ZXJsb2NrIHRoZSBtYWlsIHNwb29sLiAqLwov KiAjdW5kZWYgTUFJTF9VU0VfTE9DS0YgKi8KCi8qIERlZmluZSB0byBzdXBwb3J0IFBPUCBt YWlsIHJldHJpZXZhbC4gKi8KI2RlZmluZSBNQUlMX1VTRV9QT1AgMQoKLyogU3lzdGVtIGV4 dGVuc2lvbiBmb3IgZHluYW1pYyBsaWJyYXJpZXMgKi8KLyogI3VuZGVmIE1PRFVMRVNfU1VG RklYICovCgovKiBEZWZpbmUgaWYgdGhlIHN5c3RlbSBpcyBNUyBET1MuICovCi8qICN1bmRl ZiBNU0RPUyAqLwoKLyogRGVmaW5lIGlmIHN5c3RlbSdzIGltYWtlIGNvbmZpZ3VyYXRpb24g ZmlsZSBkZWZpbmVzICdOZWVkV2lkZVByb3RvdHlwZXMnIGFzCiAgICdOTycuICovCiNkZWZp bmUgTkFSUk9XUFJPVE8gMQoKLyogRGVmaW5lIGlmIFhFZGl0UmVzIHNob3VsZCBub3QgYmUg dXNlZC4gKi8KLyogI3VuZGVmIE5PX0VESVRSRVMgKi8KCi8qIE1pbmltdW0gdmFsdWUgb2Yg TlNJRy4gKi8KLyogI3VuZGVmIE5TSUdfTUlOSU1VTSAqLwoKLyogRGVmaW5lIHRvIDEgaWYg eW91IGFyZSB1c2luZyBOUyB3aW5kb3dpbmcgdW5kZXIgTWFjT1MgWC4gKi8KLyogI3VuZGVm IE5TX0lNUExfQ09DT0EgKi8KCi8qIERlZmluZSB0byAxIGlmIHlvdSBhcmUgdXNpbmcgTlMg d2luZG93aW5nIHVuZGVyIEdOVXN0ZXAuICovCi8qICN1bmRlZiBOU19JTVBMX0dOVVNURVAg Ki8KCi8qIE5hbWUgb2YgdGhlIGZpbGUgdG8gb3BlbiB0byBnZXQgYSBudWxsIGZpbGUsIG9y IGEgZGF0YSBzaW5rLiAqLwojZGVmaW5lIE5VTExfREVWSUNFICIvZGV2L251bGwiCgovKiBE ZWZpbmUgdG8gMSBpZiB0aGUgbmxpc3Qgbl9uYW1lIG1lbWJlciBpcyBhIHBvaW50ZXIgKi8K LyogI3VuZGVmIE5fTkFNRV9QT0lOVEVSICovCgovKiBOYW1lIG9mIHBhY2thZ2UgKi8KI2Rl ZmluZSBQQUNLQUdFICJlbWFjcyIKCi8qIERlZmluZSB0byB0aGUgYWRkcmVzcyB3aGVyZSBi dWcgcmVwb3J0cyBmb3IgdGhpcyBwYWNrYWdlIHNob3VsZCBiZSBzZW50LiAqLwojZGVmaW5l IFBBQ0tBR0VfQlVHUkVQT1JUICJidWctZ251LWVtYWNzQGdudS5vcmciCgovKiBEZWZpbmUg dG8gdGhlIGZ1bGwgbmFtZSBvZiB0aGlzIHBhY2thZ2UuICovCiNkZWZpbmUgUEFDS0FHRV9O QU1FICJHTlUgRW1hY3MiCgovKiBEZWZpbmUgdG8gdGhlIGZ1bGwgbmFtZSBhbmQgdmVyc2lv biBvZiB0aGlzIHBhY2thZ2UuICovCiNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBFbWFj cyAyNS4wLjkyIgoKLyogRGVmaW5lIHRvIHRoZSBvbmUgc3ltYm9sIHNob3J0IG5hbWUgb2Yg dGhpcyBwYWNrYWdlLiAqLwojZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiZW1hY3MiCgovKiBE ZWZpbmUgdG8gdGhlIGhvbWUgcGFnZSBmb3IgdGhpcyBwYWNrYWdlLiAqLwojZGVmaW5lIFBB Q0tBR0VfVVJMICJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvIgoKLyogRGVm aW5lIHRvIHRoZSB2ZXJzaW9uIG9mIHRoaXMgcGFja2FnZS4gKi8KI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gIjI1LjAuOTIiCgovKiB0aGUgbnVtYmVyIG9mIHBlbmRpbmcgb3V0cHV0IGJ5 dGVzIG9uIHN0cmVhbSAnZnAnICovCi8qICN1bmRlZiBQRU5ESU5HX09VVFBVVF9OX0JZVEVT ICovCgovKiBEZWZpbmUgdG8gZW1wdHkgdG8gc3VwcHJlc3MgZGVwcmVjYXRpb24gd2Fybmlu Z3Mgd2hlbiBidWlsZGluZyB3aXRoCiAgIC0tZW5hYmxlLWdjYy13YXJuaW5ncyBhbmQgd2l0 aCBsaWJwbmcgdmVyc2lvbnMgYmVmb3JlIDEuNSwgd2hpY2ggbGFjawogICBwbmdfbG9uZ2pt cC4gKi8KLyogI3VuZGVmIFBOR19ERVBTVFJVQ1QgKi8KCi8qIERlZmluZSBpZiB5b3UgcG9s bCBwZXJpb2RpY2FsbHkgdG8gZGV0ZWN0IEMtZy4gKi8KI2RlZmluZSBQT0xMX0ZPUl9JTlBV VCAxCgovKiBEZWZpbmUgaWYgcHJvY2Vzc19zZW5kX3NpZ25hbCBzaG91bGQgdXNlIFZTVVNQ IGluc3RlYWQgb2YgVlNXVENILiAqLwovKiAjdW5kZWYgUFJFRkVSX1ZTVVNQICovCgovKiBE ZWZpbmUgdG8gMSBpZiBwdGhyZWFkX3NpZ21hc2soKSwgd2hlbiBpdCBmYWlscywgcmV0dXJu cyAtMSBhbmQgc2V0cyBlcnJuby4KICAgKi8KLyogI3VuZGVmIFBUSFJFQURfU0lHTUFTS19G QUlMU19XSVRIX0VSUk5PICovCgovKiBEZWZpbmUgdG8gMSBpZiBwdGhyZWFkX3NpZ21hc2sg bWF5IHJldHVybiAwIGFuZCBoYXZlIG5vIGVmZmVjdC4gKi8KLyogI3VuZGVmIFBUSFJFQURf U0lHTUFTS19JTkVGRkVDVElWRSAqLwoKLyogRGVmaW5lIHRvIDEgaWYgcHRocmVhZF9zaWdt YXNrKCkgdW5ibG9ja3Mgc2lnbmFscyBpbmNvcnJlY3RseS4gKi8KLyogI3VuZGVmIFBUSFJF QURfU0lHTUFTS19VTkJMT0NLX0JVRyAqLwoKLyogRGVmaW5lIHRvIGwsIGxsLCB1LCB1bCwg dWxsLCBldGMuLCBhcyBzdWl0YWJsZSBmb3IgY29uc3RhbnRzIG9mIHR5cGUKICAgJ3B0cmRp ZmZfdCcuICovCi8qICN1bmRlZiBQVFJESUZGX1RfU1VGRklYICovCgovKiBIb3cgdG8gaXRl cmF0ZSBvdmVyIFBUWXMuICovCiNkZWZpbmUgUFRZX0lURVJBVElPTiBpbnQgaTsgZm9yIChp ID0gMDsgaSA8IDE7IGkrKykKCi8qIEhvdyB0byBnZXQgdGhlIGRldmljZSBuYW1lIG9mIHRo ZSBjb250cm9sIGVuZCBvZiBhIFBUWSwgaWYgbm9uLXN0YW5kYXJkLiAqLwojZGVmaW5lIFBU WV9OQU1FX1NQUklOVEYgLyoqLwoKLyogSG93IHRvIG9wZW4gYSBQVFksIGlmIG5vbi1zdGFu ZGFyZC4gKi8KI2RlZmluZSBQVFlfT1BFTiBkbyB7IGZkID0gcG9zaXhfb3BlbnB0IChPX1JE V1IgfCBPX0NMT0VYRUMgfCBPX05PQ1RUWSk7IGlmIChmZCA8IDAgJiYgZXJybm8gPT0gRUlO VkFMKSBmZCA9IHBvc2l4X29wZW5wdCAoT19SRFdSIHwgT19OT0NUVFkpOyB9IHdoaWxlIChm YWxzZSkKCi8qIEhvdyB0byBnZXQgZGV2aWNlIG5hbWUgb2YgdGhlIHR0eSBlbmQgb2YgYSBQ VFksIGlmIG5vbi1zdGFuZGFyZC4gKi8KI2RlZmluZSBQVFlfVFRZX05BTUVfU1BSSU5URiB7 IGNoYXIgKnB0eW5hbWUgPSAwOyBzaWdzZXRfdCBibG9ja2VkOyBzaWdlbXB0eXNldCAoJmJs b2NrZWQpOyBzaWdhZGRzZXQgKCZibG9ja2VkLCBTSUdDSExEKTsgcHRocmVhZF9zaWdtYXNr IChTSUdfQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKGdyYW50cHQgKGZkKSAhPSAtMSAmJiB1 bmxvY2twdCAoZmQpICE9IC0xKSBwdHluYW1lID0gcHRzbmFtZShmZCk7IHB0aHJlYWRfc2ln bWFzayAoU0lHX1VOQkxPQ0ssICZibG9ja2VkLCAwKTsgaWYgKCFwdHluYW1lKSB7IGVtYWNz X2Nsb3NlIChmZCk7IHJldHVybiAtMTsgfSBzbnByaW50ZiAocHR5X25hbWUsIFBUWV9OQU1F X1NJWkUsICIlcyIsIHB0eW5hbWUpOyB9CgovKiBEZWZpbmUgdG8gMSBpZiByZWFkbGluayBm YWlscyB0byByZWNvZ25pemUgYSB0cmFpbGluZyBzbGFzaC4gKi8KLyogI3VuZGVmIFJFQURM SU5LX1RSQUlMSU5HX1NMQVNIX0JVRyAqLwoKLyogRGVmaW5lIFJFTF9BTExPQyBpZiB5b3Ug d2FudCB0byB1c2UgdGhlIHJlbG9jYXRpbmcgYWxsb2NhdG9yIGZvciBidWZmZXIKICAgc3Bh Y2UuICovCi8qICN1bmRlZiBSRUxfQUxMT0MgKi8KCi8qIERlZmluZSB0byAxIGlmIGdudWxp YidzIGRpcmZkKCkgcmVwbGFjZW1lbnQgaXMgdXNlZC4gKi8KLyogI3VuZGVmIFJFUExBQ0Vf RElSRkQgKi8KCi8qIERlZmluZSB0byAxIGlmIHN0YXQgbmVlZHMgaGVscCB3aGVuIHBhc3Nl ZCBhIGRpcmVjdG9yeSBuYW1lIHdpdGggYSB0cmFpbGluZwogICBzbGFzaCAqLwovKiAjdW5k ZWYgUkVQTEFDRV9GVU5DX1NUQVRfRElSICovCgovKiBEZWZpbmUgdG8gMSBpZiBzdGF0IG5l ZWRzIGhlbHAgd2hlbiBwYXNzZWQgYSBmaWxlIG5hbWUgd2l0aCBhIHRyYWlsaW5nCiAgIHNs YXNoICovCi8qICN1bmRlZiBSRVBMQUNFX0ZVTkNfU1RBVF9GSUxFICovCgovKiBEZWZpbmUg aWYgZW1hY3MuYyBuZWVkcyB0byBjYWxsIHJ1bl90aW1lX3JlbWFwOyBmb3IgSFBVWC4gKi8K LyogI3VuZGVmIFJVTl9USU1FX1JFTUFQICovCgovKiBDaGFyYWN0ZXIgdGhhdCBzZXBhcmF0 ZXMgUEFUSCBlbGVtZW50cy4gKi8KI2RlZmluZSBTRVBDSEFSICc6JwoKLyogSG93IHRvIHNl dCB1cCBhIHNsYXZlIFBUWSwgaWYgbmVlZGVkLiAqLwovKiAjdW5kZWYgU0VUVVBfU0xBVkVf UFRZICovCgovKiBNYWtlIHByb2Nlc3Nfc2VuZF9zaWduYWwgd29yayBieSAidHlwaW5nIiBh IHNpZ25hbCBjaGFyYWN0ZXIgb24gdGhlIHB0eS4gKi8KI2RlZmluZSBTSUdOQUxTX1ZJQV9D SEFSQUNURVJTIDEKCi8qIERlZmluZSB0byBsLCBsbCwgdSwgdWwsIHVsbCwgZXRjLiwgYXMg c3VpdGFibGUgZm9yIGNvbnN0YW50cyBvZiB0eXBlCiAgICdzaWdfYXRvbWljX3QnLiAqLwov KiAjdW5kZWYgU0lHX0FUT01JQ19UX1NVRkZJWCAqLwoKLyogRGVmaW5lIHRvIGwsIGxsLCB1 LCB1bCwgdWxsLCBldGMuLCBhcyBzdWl0YWJsZSBmb3IgY29uc3RhbnRzIG9mIHR5cGUKICAg J3NpemVfdCcuICovCi8qICN1bmRlZiBTSVpFX1RfU1VGRklYICovCgovKiBEZWZpbmUgaWYg dGhlIHN5c3RlbSBpcyBTb2xhcmlzLiAqLwovKiAjdW5kZWYgU09MQVJJUzIgKi8KCi8qIElm IHVzaW5nIHRoZSBDIGltcGxlbWVudGF0aW9uIG9mIGFsbG9jYSwgZGVmaW5lIGlmIHlvdSBr bm93IHRoZQogICBkaXJlY3Rpb24gb2Ygc3RhY2sgZ3Jvd3RoIGZvciB5b3VyIHN5c3RlbTsg b3RoZXJ3aXNlIGl0IHdpbGwgYmUKICAgYXV0b21hdGljYWxseSBkZWR1Y2VkIGF0IHJ1bnRp bWUuCglTVEFDS19ESVJFQ1RJT04gPiAwID0+IGdyb3dzIHRvd2FyZCBoaWdoZXIgYWRkcmVz c2VzCglTVEFDS19ESVJFQ1RJT04gPCAwID0+IGdyb3dzIHRvd2FyZCBsb3dlciBhZGRyZXNz ZXMKCVNUQUNLX0RJUkVDVElPTiA9IDAgPT4gZGlyZWN0aW9uIG9mIGdyb3d0aCB1bmtub3du ICovCi8qICN1bmRlZiBTVEFDS19ESVJFQ1RJT04gKi8KCi8qIERlZmluZSB0byAxIGlmIHRo ZSBgU19JUyonIG1hY3JvcyBpbiA8c3lzL3N0YXQuaD4gZG8gbm90IHdvcmsgcHJvcGVybHku ICovCi8qICN1bmRlZiBTVEFUX01BQ1JPU19CUk9LRU4gKi8KCi8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBBTlNJIEMgaGVhZGVyIGZpbGVzLiAqLwojZGVmaW5lIFNURENfSEVB REVSUyAxCgovKiBEZWZpbmUgdG8gMSBvbiBTeXN0ZW0gViBSZWxlYXNlIDQuICovCi8qICN1 bmRlZiBTVlI0ICovCgovKiBEZWZpbmUgdG8gMSB0byB1c2UgdGhlIHN5c3RlbSBtZW1vcnkg YWxsb2NhdG9yLCBldmVuIGlmIGl0IGlzIG5vdCBEb3VnIExlYQogICBzdHlsZS4gKi8KLyog I3VuZGVmIFNZU1RFTV9NQUxMT0MgKi8KCi8qIFRoZSB0eXBlIG9mIHN5c3RlbSB5b3UgYXJl IGNvbXBpbGluZyBmb3I7IHNldHMgJ3N5c3RlbS10eXBlJy4gKi8KI2RlZmluZSBTWVNURU1f VFlQRSAiZ251L2xpbnV4IgoKLyogVW5kb2N1bWVudGVkLiAqLwovKiAjdW5kZWYgVEFCMyAq LwoKLyogVW5kb2N1bWVudGVkLiAqLwovKiAjdW5kZWYgVEFCRExZICovCgovKiBEZWZpbmUg dG8gMSBpZiB5b3UgdXNlIHRlcm1pbmZvIGluc3RlYWQgb2YgdGVybWNhcC4gKi8KI2RlZmlu ZSBURVJNSU5GTyAxCgovKiBEZWZpbmUgdG8gdGhlIGhlYWRlciBmb3IgdGhlIGJ1aWx0LWlu IHdpbmRvdyBzeXN0ZW0uICovCiNkZWZpbmUgVEVSTV9IRUFERVIgImd0a3V0aWwuaCIKCi8q IERlZmluZSB0byAxIGlmIHlvdSBjYW4gc2FmZWx5IGluY2x1ZGUgYm90aCA8c3lzL3RpbWUu aD4gYW5kIDx0aW1lLmg+LiAqLwojZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCgovKiBT b21lIHBsYXRmb3JtcyByZWRlZmluZSB0aGlzLiAqLwovKiAjdW5kZWYgVElPQ1NJR1NFTkQg Ki8KCi8qIERlZmluZSB0byAxIGlmIHlvdXIgPHN5cy90aW1lLmg+IGRlY2xhcmVzIGBzdHJ1 Y3QgdG0nLiAqLwovKiAjdW5kZWYgVE1fSU5fU1lTX1RJTUUgKi8KCi8qIERlZmluZSB0byAx IGlmIHRoZSB0eXBlIG9mIHRoZSBzdF9hdGltIG1lbWJlciBvZiBhIHN0cnVjdCBzdGF0IGlz IHN0cnVjdAogICB0aW1lc3BlYy4gKi8KI2RlZmluZSBUWVBFT0ZfU1RSVUNUX1NUQVRfU1Rf QVRJTV9JU19TVFJVQ1RfVElNRVNQRUMgMQoKLyogRGVmaW5lIHRvIDEgZm9yIEVuY29yZSBV TUFYLiAqLwovKiAjdW5kZWYgVU1BWCAqLwoKLyogRGVmaW5lIHRvIDEgZm9yIEVuY29yZSBV TUFYIDQuMyB0aGF0IGhhcyA8aW5xX3N0YXR1cy9jcHVzdGF0cy5oPiBpbnN0ZWFkIG9mCiAg IDxzeXMvY3B1c3RhdHMuaD4uICovCi8qICN1bmRlZiBVTUFYNF8zICovCgovKiBEZWZpbmUg aWYgdGhlIHN5c3RlbSBoYXMgVW5peDk4IFBUWXMuICovCiNkZWZpbmUgVU5JWDk4X1BUWVMg MQoKLyogRGVmaW5lIHRvIDEgaWYgRklPTlJFQUQgaXMgdXNhYmxlLiAqLwojZGVmaW5lIFVT QUJMRV9GSU9OUkVBRCAxCgovKiBEZWZpbmUgdG8gMSBpZiBTSUdJTyBpcyB1c2FibGUuICov CiNkZWZpbmUgVVNBQkxFX1NJR0lPIDEKCi8qIEhvdyB0byBnZXQgYSB1c2VyJ3MgZnVsbCBu YW1lLiAqLwojZGVmaW5lIFVTRVJfRlVMTF9OQU1FIHB3LT5wd19nZWNvcwoKLyogRGVmaW5l IHRvIG5vbnplcm8gaWYgeW91IHdhbnQgYWNjZXNzIGNvbnRyb2wgbGlzdCBzdXBwb3J0LiAq LwojZGVmaW5lIFVTRV9BQ0wgMQoKLyogRGVmaW5lIHRvIDEgaWYgdXNpbmcgY2Fpcm8uICov Ci8qICN1bmRlZiBVU0VfQ0FJUk8gKi8KCi8qIERlZmluZSB0byAxIGlmIHVzaW5nIGZpbGUg bm90aWZpY2F0aW9ucy4gKi8KI2RlZmluZSBVU0VfRklMRV9OT1RJRlkgMQoKLyogRGVmaW5l IHRvIDEgaWYgdXNpbmcgR1RLLiAqLwojZGVmaW5lIFVTRV9HVEsgMQoKLyogRGVmaW5lIHRv IDEgaWYgdXNpbmcgdGhlIEx1Y2lkIFggdG9vbGtpdC4gKi8KLyogI3VuZGVmIFVTRV9MVUNJ RCAqLwoKLyogRGVmaW5lIHRvIHVzZSBtbWFwIHRvIGFsbG9jYXRlIGJ1ZmZlciB0ZXh0LiAq LwovKiAjdW5kZWYgVVNFX01NQVBfRk9SX0JVRkZFUlMgKi8KCi8qIERlZmluZSB0byAxIGlm IHVzaW5nIHRoZSBNb3RpZiBYIHRvb2xraXQuICovCi8qICN1bmRlZiBVU0VfTU9USUYgKi8K Ci8qIERlZmluZSB0byAxIGlmIHlvdSB1c2UgbmN1cnNlcy4gKi8KLyogI3VuZGVmIFVTRV9O Q1VSU0VTICovCgovKiBFbmFibGUgZXh0ZW5zaW9ucyBvbiBBSVggMywgSW50ZXJpeC4gICov CiNpZm5kZWYgX0FMTF9TT1VSQ0UKIyBkZWZpbmUgX0FMTF9TT1VSQ0UgMQojZW5kaWYKLyog RW5hYmxlIGdlbmVyYWwgZXh0ZW5zaW9ucyBvbiBPUyBYLiAgKi8KI2lmbmRlZiBfREFSV0lO X0NfU09VUkNFCiMgZGVmaW5lIF9EQVJXSU5fQ19TT1VSQ0UgMQojZW5kaWYKLyogRW5hYmxl IEdOVSBleHRlbnNpb25zIG9uIHN5c3RlbXMgdGhhdCBoYXZlIHRoZW0uICAqLwojaWZuZGVm IF9HTlVfU09VUkNFCiMgZGVmaW5lIF9HTlVfU09VUkNFIDEKI2VuZGlmCi8qIFVzZSBHTlUg c3R5bGUgcHJpbnRmIGFuZCBzY2FuZi4gICovCiNpZm5kZWYgX19VU0VfTUlOR1dfQU5TSV9T VERJTwojIGRlZmluZSBfX1VTRV9NSU5HV19BTlNJX1NURElPIDEKI2VuZGlmCi8qIEVuYWJs ZSB0aHJlYWRpbmcgZXh0ZW5zaW9ucyBvbiBTb2xhcmlzLiAgKi8KI2lmbmRlZiBfUE9TSVhf UFRIUkVBRF9TRU1BTlRJQ1MKIyBkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK I2VuZGlmCi8qIEVuYWJsZSBleHRlbnNpb25zIG9uIEhQIE5vblN0b3AuICAqLwojaWZuZGVm IF9UQU5ERU1fU09VUkNFCiMgZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKI2VuZGlmCi8qIEVu YWJsZSBYL09wZW4gZXh0ZW5zaW9ucyBpZiBuZWNlc3NhcnkuICBIUC1VWCAxMS4xMSBkZWZp bmVzCiAgIG1ic3RhdGVfdCBvbmx5IGlmIF9YT1BFTl9TT1VSQ0UgaXMgZGVmaW5lZCB0byA1 MDAsIHJlZ2FyZGxlc3Mgb2YKICAgd2hldGhlciBjb21waWxpbmcgd2l0aCAtQWUgb3IgLURf SFBVWF9TT1VSQ0U9MS4gICovCiNpZm5kZWYgX1hPUEVOX1NPVVJDRQovKiAjIHVuZGVmIF9Y T1BFTl9TT1VSQ0UgKi8KI2VuZGlmCi8qIEVuYWJsZSBnZW5lcmFsIGV4dGVuc2lvbnMgb24g U29sYXJpcy4gICovCiNpZm5kZWYgX19FWFRFTlNJT05TX18KIyBkZWZpbmUgX19FWFRFTlNJ T05TX18gMQojZW5kaWYKCgovKiBEZWZpbmUgdG8gMSBpZiB3ZSBzaG91bGQgdXNlIHRvb2xr aXQgc2Nyb2xsIGJhcnMuICovCiNkZWZpbmUgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgMQoK LyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIFhDQiBsaWJyYXJ5IGFuZCBYMTEtWENC IGxpYnJhcnkgZm9yIG1peGVkCiAgIFgxMS9YQ0IgcHJvZ3JhbW1pbmcuICovCiNkZWZpbmUg VVNFX1hDQiAxCgovKiBEZWZpbmUgdG8gMSBpZiB3ZSBzaG91bGQgdXNlIFhJTSwgaWYgaXQg aXMgYXZhaWxhYmxlLiAqLwojZGVmaW5lIFVTRV9YSU0gMQoKLyogRGVmaW5lIHRvIDEgaWYg dXNpbmcgYW4gWCB0b29sa2l0LiAqLwovKiAjdW5kZWYgVVNFX1hfVE9PTEtJVCAqLwoKLyog RGVmaW5lIGlmIHRoZSBzeXN0ZW0gaXMgY29tcGF0aWJsZSB3aXRoIFN5c3RlbSBJSUkuICov CiNkZWZpbmUgVVNHIC8qKi8KCi8qIERlZmluZSBpZiB0aGUgc3lzdGVtIGlzIGNvbXBhdGli bGUgd2l0aCBTeXN0ZW0gViBSZWxlYXNlIDQuICovCi8qICN1bmRlZiBVU0c1XzQgKi8KCi8q IERlZmluZSBmb3IgVVNHIHN5c3RlbXMgd2hlcmUgaXQgd29ya3MgdG8gb3BlbiBhIHB0eSdz IHR0eSBpbiB0aGUgcGFyZW50CiAgIHByb2Nlc3MsIHRoZW4gY2xvc2UgYW5kIHJlb3BlbiBp dCBpbiB0aGUgY2hpbGQuICovCi8qICN1bmRlZiBVU0dfU1VCVFRZX1dPUktTICovCgovKiBW ZXJzaW9uIG51bWJlciBvZiBwYWNrYWdlICovCiNkZWZpbmUgVkVSU0lPTiAiMjUuMC45MiIK Ci8qIERlZmluZSB0byBsLCBsbCwgdSwgdWwsIHVsbCwgZXRjLiwgYXMgc3VpdGFibGUgZm9y IGNvbnN0YW50cyBvZiB0eXBlCiAgICd3Y2hhcl90Jy4gKi8KLyogI3VuZGVmIFdDSEFSX1Rf U1VGRklYICovCgovKiBVc2UgbG9uZyBsb25nIGZvciBFTUFDU19JTlQgaWYgYXZhaWxhYmxl LiAqLwovKiAjdW5kZWYgV0lERV9FTUFDU19JTlQgKi8KCi8qIERlZmluZSBpZiBjb21waWxp bmcgZm9yIG5hdGl2ZSBNUyBXaW5kb3dzLiAqLwovKiAjdW5kZWYgV0lORE9XU05UICovCgov KiBEZWZpbmUgdG8gbCwgbGwsIHUsIHVsLCB1bGwsIGV0Yy4sIGFzIHN1aXRhYmxlIGZvciBj b25zdGFudHMgb2YgdHlwZQogICAnd2ludF90Jy4gKi8KLyogI3VuZGVmIFdJTlRfVF9TVUZG SVggKi8KCi8qIERlZmluZSBXT1JEU19CSUdFTkRJQU4gdG8gMSBpZiB5b3VyIHByb2Nlc3Nv ciBzdG9yZXMgd29yZHMgd2l0aCB0aGUgbW9zdAogICBzaWduaWZpY2FudCBieXRlIGZpcnN0 IChsaWtlIE1vdG9yb2xhIGFuZCBTUEFSQywgdW5saWtlIEludGVsKS4gKi8KI2lmIGRlZmlu ZWQgQUNfQVBQTEVfVU5JVkVSU0FMX0JVSUxECiMgaWYgZGVmaW5lZCBfX0JJR19FTkRJQU5f XwojICBkZWZpbmUgV09SRFNfQklHRU5ESUFOIDEKIyBlbmRpZgojZWxzZQojIGlmbmRlZiBX T1JEU19CSUdFTkRJQU4KLyogIyAgdW5kZWYgV09SRFNfQklHRU5ESUFOICovCiMgZW5kaWYK I2VuZGlmCgovKiBEZWZpbmUgdGhpcyB0byBjaGVjayBmb3IgbWFsbG9jIGJ1ZmZlciBvdmVy cnVuLiAqLwovKiAjdW5kZWYgWE1BTExPQ19PVkVSUlVOX0NIRUNLICovCgovKiBDb21wZW5z YXRlIGZvciBhIGJ1ZyBpbiBYb3MuaCBvbiBzb21lIHN5c3RlbXMsIHdoZXJlIGl0IHJlcXVp cmVzIHRpbWUuaC4gKi8KLyogI3VuZGVmIFhPU19ORUVEU19USU1FX0ggKi8KCi8qIERlZmlu ZSB0byB0aGUgdHlwZSBvZiB0aGUgNnRoIGFyZyBvZiBYUmVnaXN0ZXJJTUluc3RhbnRpYXRl Q2FsbGJhY2ssIGVpdGhlcgogICBYUG9pbnRlciBvciBYUG9pbnRlciouICovCiNkZWZpbmUg WFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrX2FyZzYgWFBvaW50ZXIKCi8qIERlZmlu ZSBpZiB0aGUgc3lzdGVtIGlzIEFJWC4gKi8KLyogI3VuZGVmIF9BSVggKi8KCi8qIEVuYWJs ZSBsYXJnZSBpbm9kZSBudW1iZXJzIG9uIE1hYyBPUyBYIDEwLjUuICovCiNkZWZpbmUgX0RB UldJTl9VU0VfNjRfQklUX0lOT0RFIDEKCi8qIE51bWJlciBvZiBiaXRzIGluIGEgZmlsZSBv ZmZzZXQsIG9uIGhvc3RzIHdoZXJlIHRoaXMgaXMgc2V0dGFibGUuICovCi8qICN1bmRlZiBf RklMRV9PRkZTRVRfQklUUyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgR251bGliIG92ZXJyaWRl cyAnc3RydWN0IHN0YXQnIG9uIFdpbmRvd3Mgc28gdGhhdCBzdHJ1Y3QKICAgc3RhdC5zdF9z aXplIGJlY29tZXMgNjQtYml0LiAqLwovKiAjdW5kZWYgX0dMX1dJTkRPV1NfNjRfQklUX1NU X1NJWkUgKi8KCi8qIERlZmluZSB0byAxIHRvIG1ha2UgZnNlZWtvIHZpc2libGUgb24gc29t ZSBob3N0cyAoZS5nLiBnbGliYyAyLjIpLiAqLwovKiAjdW5kZWYgX0xBUkdFRklMRV9TT1VS Q0UgKi8KCi8qIERlZmluZSBmb3IgbGFyZ2UgZmlsZXMsIG9uIEFJWC1zdHlsZSBob3N0cy4g Ki8KLyogI3VuZGVmIF9MQVJHRV9GSUxFUyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgb24gTUlO SVguICovCi8qICN1bmRlZiBfTUlOSVggKi8KCi8qIERlZmluZSBpZiBHTlVzdGVwIHVzZXMg T2JqQyBleGNlcHRpb25zLiAqLwovKiAjdW5kZWYgX05BVElWRV9PQkpDX0VYQ0VQVElPTlMg Ki8KCi8qIERlZmluZSB0byAxIHRvIG1ha2UgTmV0QlNEIGZlYXR1cmVzIGF2YWlsYWJsZS4g TUlOSVggMyBuZWVkcyB0aGlzLiAqLwovKiAjdW5kZWYgX05FVEJTRF9TT1VSQ0UgKi8KCi8q IFRoZSBfTm9yZXR1cm4ga2V5d29yZCBvZiBDMTEuICAqLwojaWYgISAoZGVmaW5lZCBfTm9y ZXR1cm4gXAogICAgICAgfHwgKGRlZmluZWQgX19TVERDX1ZFUlNJT05fXyAmJiAyMDExMTIg PD0gX19TVERDX1ZFUlNJT05fXykpCiMgaWYgKDMgPD0gX19HTlVDX18gfHwgKF9fR05VQ19f ID09IDIgJiYgOCA8PSBfX0dOVUNfTUlOT1JfXykgXAogICAgICB8fCAweDUxMTAgPD0gX19T VU5QUk9fQykKIyAgZGVmaW5lIF9Ob3JldHVybiBfX2F0dHJpYnV0ZV9fICgoX19ub3JldHVy bl9fKSkKIyBlbGlmIGRlZmluZWQgX01TQ19WRVIgJiYgMTIwMCA8PSBfTVNDX1ZFUgojICBk ZWZpbmUgX05vcmV0dXJuIF9fZGVjbHNwZWMgKG5vcmV0dXJuKQojIGVsc2UKIyAgZGVmaW5l IF9Ob3JldHVybgojIGVuZGlmCiNlbmRpZgoKCi8qIERlZmluZSB0byAyIGlmIHRoZSBzeXN0 ZW0gZG9lcyBub3QgcHJvdmlkZSBQT1NJWC4xIGZlYXR1cmVzIGV4Y2VwdCB3aXRoCiAgIHRo aXMgZGVmaW5lZC4gKi8KLyogI3VuZGVmIF9QT1NJWF8xX1NPVVJDRSAqLwoKLyogRGVmaW5l IHRvIDEgaWYgeW91IG5lZWQgdG8gaW4gb3JkZXIgZm9yICdzdGF0JyBhbmQgb3RoZXIgdGhp bmdzIHRvIHdvcmsuICovCi8qICN1bmRlZiBfUE9TSVhfU09VUkNFICovCgovKiBEZWZpbmUg dG8gMSBpZiB5b3VyIHN5c3RlbSByZXF1aXJlcyB0aGlzIGluIG11bHRpdGhyZWFkZWQgY29k ZS4gKi8KLyogI3VuZGVmIF9SRUVOVFJBTlQgKi8KCi8qIE5lZWRlZCBmb3Igc3lzdGVtX3By b2Nlc3NfYXR0cmlidXRlcyBvbiBTb2xhcmlzLiAqLwovKiAjdW5kZWYgX1NUUlVDVFVSRURf UFJPQyAqLwoKLyogRGVmaW5lIHRvIDEgaWYgeW91ciBzeXN0ZW0gcmVxdWlyZXMgdGhpcyBp biBtdWx0aXRocmVhZGVkIGNvZGUuICovCi8qICN1bmRlZiBfVEhSRUFEX1NBRkUgKi8KCi8q IERlZmluZSB0byBycGxfIGlmIHRoZSBnZXRvcHQgcmVwbGFjZW1lbnQgZnVuY3Rpb25zIGFu ZCB2YXJpYWJsZXMgc2hvdWxkIGJlCiAgIHVzZWQuICovCi8qICN1bmRlZiBfX0dFVE9QVF9Q UkVGSVggKi8KCi8qIERlZmluZSB0byAxIGlmIEMgZG9lcyBub3Qgc3VwcG9ydCB2YXJpYWJs ZS1sZW5ndGggYXJyYXlzLCBhbmQgaWYgdGhlCiAgIGNvbXBpbGVyIGRvZXMgbm90IGFscmVh ZHkgZGVmaW5lIHRoaXMuICovCi8qICN1bmRlZiBfX1NURENfTk9fVkxBX18gKi8KCi8qIFNv bWUgcGxhdGZvcm1zIHRoYXQgZG8gbm90IHVzZSBjb25maWd1cmUgZGVmaW5lIHRoaXMgdG8g aW5jbHVkZSBleHRyYQogICBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uLiAqLwovKiAjdW5k ZWYgY29uZmlnX29wc3lzZmlsZSAqLwoKLyogUGxlYXNlIHNlZSB0aGUgR251bGliIG1hbnVh bCBmb3IgaG93IHRvIHVzZSB0aGVzZSBtYWNyb3MuCgogICBTdXBwcmVzcyBleHRlcm4gaW5s aW5lIHdpdGggSFAtVVggY2MsIGFzIGl0IGFwcGVhcnMgdG8gYmUgYnJva2VuOyBzZWUKICAg PGh0dHA6Ly9saXN0cy5nbnUub3JnL2FyY2hpdmUvaHRtbC9idWctdGV4aW5mby8yMDEzLTAy L21zZzAwMDMwLmh0bWw+LgoKICAgU3VwcHJlc3MgZXh0ZXJuIGlubGluZSB3aXRoIFN1biBD IGluIHN0YW5kYXJkcy1jb25mb3JtYW5jZSBtb2RlLCBhcyBpdAogICBtaXNoYW5kbGVzIGlu bGluZSBmdW5jdGlvbnMgdGhhdCBjYWxsIGVhY2ggb3RoZXIuICBFLmcuLCBmb3IgJ2lubGlu ZSB2b2lkIGYKICAgKHZvaWQpIHsgfSBpbmxpbmUgdm9pZCBnICh2b2lkKSB7IGYgKCk7IH0n LCBjOTkgaW5jb3JyZWN0bHkgY29tcGxhaW5zCiAgICdyZWZlcmVuY2UgdG8gc3RhdGljIGlk ZW50aWZpZXIgImYiIGluIGV4dGVybiBpbmxpbmUgZnVuY3Rpb24nLgogICBUaGlzIGJ1ZyB3 YXMgb2JzZXJ2ZWQgd2l0aCBTdW4gQyA1LjEyIFN1bk9TX2kzODYgMjAxMS8xMS8xNi4KCiAg IFN1cHByZXNzIGV4dGVybiBpbmxpbmUgKHdpdGggb3Igd2l0aG91dCBfX2F0dHJpYnV0ZV9f ICgoX19nbnVfaW5saW5lX18pKSkKICAgb24gY29uZmlndXJhdGlvbnMgdGhhdCBtaXN0YWtl bmx5IHVzZSAnc3RhdGljIGlubGluZScgdG8gaW1wbGVtZW50CiAgIGZ1bmN0aW9ucyBvciBt YWNyb3MgaW4gc3RhbmRhcmQgQyBoZWFkZXJzIGxpa2UgPGN0eXBlLmg+LiAgRm9yIGV4YW1w bGUsCiAgIGlmIGlzZGlnaXQgaXMgbWlzdGFrZW5seSBpbXBsZW1lbnRlZCB2aWEgYSBzdGF0 aWMgaW5saW5lIGZ1bmN0aW9uLAogICBhIHByb2dyYW0gY29udGFpbmluZyBhbiBleHRlcm4g aW5saW5lIGZ1bmN0aW9uIHRoYXQgY2FsbHMgaXNkaWdpdAogICBtYXkgbm90IHdvcmsgc2lu Y2UgdGhlIEMgc3RhbmRhcmQgcHJvaGliaXRzIGV4dGVybiBpbmxpbmUgZnVuY3Rpb25zCiAg IGZyb20gY2FsbGluZyBzdGF0aWMgZnVuY3Rpb25zLiAgVGhpcyBidWcgaXMga25vd24gdG8g b2NjdXIgb246CgogICAgIE9TIFggMTAuOCBhbmQgZWFybGllcjsgc2VlOgogICAgIGh0dHA6 Ly9saXN0cy5nbnUub3JnL2FyY2hpdmUvaHRtbC9idWctZ251bGliLzIwMTItMTIvbXNnMDAw MjMuaHRtbAoKICAgICBEcmFnb25GbHk7IHNlZQogICAgIGh0dHA6Ly9tdXNjbGVzLmRyYWdv bmZseWJzZC5vcmcvYnVsay9ibGVlZGluZy1lZGdlLXBvdGVudGlhbC9sYXRlc3QtcGVyLXBr Zy9haC10dHktMC4zLjEyLmxvZwoKICAgICBGcmVlQlNEOyBzZWU6CiAgICAgaHR0cDovL2xp c3RzLmdudS5vcmcvYXJjaGl2ZS9odG1sL2J1Zy1nbnVsaWIvMjAxNC0wNy9tc2cwMDEwNC5o dG1sCgogICBPUyBYIDEwLjkgaGFzIGEgbWFjcm8gX19oZWFkZXJfaW5saW5lIGluZGljYXRp bmcgdGhlIGJ1ZyBpcyBmaXhlZCBmb3IgQyBhbmQKICAgZm9yIGNsYW5nIGJ1dCByZW1haW5z IGZvciBnKys7IHNlZSA8aHR0cDovL3RyYWMubWFjcG9ydHMub3JnL3RpY2tldC80MTAzMz4u CiAgIEFzc3VtZSBEcmFnb25GbHkgYW5kIEZyZWVCU0Qgd2lsbCBiZSBzaW1pbGFyLiAgKi8K I2lmICgoKGRlZmluZWQgX19BUFBMRV9fICYmIGRlZmluZWQgX19NQUNIX18pIFwKICAgICAg fHwgZGVmaW5lZCBfX0RyYWdvbkZseV9fIHx8IGRlZmluZWQgX19GcmVlQlNEX18pIFwKICAg ICAmJiAoZGVmaW5lZCBfX2hlYWRlcl9pbmxpbmUgXAogICAgICAgICA/IChkZWZpbmVkIF9f Y3BsdXNwbHVzICYmIGRlZmluZWQgX19HTlVDX1NURENfSU5MSU5FX18gXAogICAgICAgICAg ICAmJiAhIGRlZmluZWQgX19jbGFuZ19fKSBcCiAgICAgICAgIDogKCghIGRlZmluZWQgX0RP TlRfVVNFX0NUWVBFX0lOTElORV8gXAogICAgICAgICAgICAgJiYgKGRlZmluZWQgX19HTlVD X18gfHwgZGVmaW5lZCBfX2NwbHVzcGx1cykpIFwKICAgICAgICAgICAgfHwgKGRlZmluZWQg X0ZPUlRJRllfU09VUkNFICYmIDAgPCBfRk9SVElGWV9TT1VSQ0UgXAogICAgICAgICAgICAg ICAgJiYgZGVmaW5lZCBfX0dOVUNfXyAmJiAhIGRlZmluZWQgX19jcGx1c3BsdXMpKSkpCiMg ZGVmaW5lIF9HTF9FWFRFUk5fSU5MSU5FX1NUREhFQURFUl9CVUcKI2VuZGlmCiNpZiAoKF9f R05VQ19fIFwKICAgICAgPyBkZWZpbmVkIF9fR05VQ19TVERDX0lOTElORV9fICYmIF9fR05V Q19TVERDX0lOTElORV9fIFwKICAgICAgOiAoMTk5OTAxTCA8PSBfX1NURENfVkVSU0lPTl9f IFwKICAgICAgICAgJiYgIWRlZmluZWQgX19IUF9jYyBcCiAgICAgICAgICYmICEoZGVmaW5l ZCBfX1NVTlBST19DICYmIF9fU1REQ19fKSkpIFwKICAgICAmJiAhZGVmaW5lZCBfR0xfRVhU RVJOX0lOTElORV9TVERIRUFERVJfQlVHKQojIGRlZmluZSBfR0xfSU5MSU5FIGlubGluZQoj IGRlZmluZSBfR0xfRVhURVJOX0lOTElORSBleHRlcm4gaW5saW5lCiMgZGVmaW5lIF9HTF9F WFRFUk5fSU5MSU5FX0lOX1VTRQojZWxpZiAoMiA8IF9fR05VQ19fICsgKDcgPD0gX19HTlVD X01JTk9SX18pICYmICFkZWZpbmVkIF9fU1RSSUNUX0FOU0lfXyBcCiAgICAgICAmJiAhZGVm aW5lZCBfR0xfRVhURVJOX0lOTElORV9TVERIRUFERVJfQlVHKQojIGlmIGRlZmluZWQgX19H TlVDX0dOVV9JTkxJTkVfXyAmJiBfX0dOVUNfR05VX0lOTElORV9fCiAgIC8qIF9fZ251X2lu bGluZV9fIHN1cHByZXNzZXMgYSBHQ0MgNC4yIGRpYWdub3N0aWMuICAqLwojICBkZWZpbmUg X0dMX0lOTElORSBleHRlcm4gaW5saW5lIF9fYXR0cmlidXRlX18gKChfX2dudV9pbmxpbmVf XykpCiMgZWxzZQojICBkZWZpbmUgX0dMX0lOTElORSBleHRlcm4gaW5saW5lCiMgZW5kaWYK IyBkZWZpbmUgX0dMX0VYVEVSTl9JTkxJTkUgZXh0ZXJuCiMgZGVmaW5lIF9HTF9FWFRFUk5f SU5MSU5FX0lOX1VTRQojZWxzZQojIGRlZmluZSBfR0xfSU5MSU5FIHN0YXRpYyBfR0xfVU5V U0VECiMgZGVmaW5lIF9HTF9FWFRFUk5fSU5MSU5FIHN0YXRpYyBfR0xfVU5VU0VECiNlbmRp ZgoKLyogSW4gR0NDIDQuNiAoaW5jbHVzaXZlKSB0byA1LjEgKGV4Y2x1c2l2ZSksCiAgIHN1 cHByZXNzIGJvZ3VzICJubyBwcmV2aW91cyBwcm90b3R5cGUgZm9yICdGT08nIgogICBhbmQg Im5vIHByZXZpb3VzIGRlY2xhcmF0aW9uIGZvciAnRk9PJyIgZGlhZ25vc3RpY3MsCiAgIHdo ZW4gRk9PIGlzIGFuIGlubGluZSBmdW5jdGlvbiBpbiB0aGUgaGVhZGVyOyBzZWUKICAgPGh0 dHBzOi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTU0MTEzPiBhbmQK ICAgPGh0dHBzOi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTYzODc3 Pi4gICovCiNpZiBfX0dOVUNfXyA9PSA0ICYmIDYgPD0gX19HTlVDX01JTk9SX18KIyBpZiBk ZWZpbmVkIF9fR05VQ19TVERDX0lOTElORV9fICYmIF9fR05VQ19TVERDX0lOTElORV9fCiMg IGRlZmluZSBfR0xfSU5MSU5FX0hFQURFUl9DT05TVF9QUkFHTUEKIyBlbHNlCiMgIGRlZmlu ZSBfR0xfSU5MSU5FX0hFQURFUl9DT05TVF9QUkFHTUEgXAogICAgIF9QcmFnbWEgKCJHQ0Mg ZGlhZ25vc3RpYyBpZ25vcmVkIFwiLVdzdWdnZXN0LWF0dHJpYnV0ZT1jb25zdFwiIikKIyBl bmRpZgojIGRlZmluZSBfR0xfSU5MSU5FX0hFQURFUl9CRUdJTiBcCiAgICBfUHJhZ21hICgi R0NDIGRpYWdub3N0aWMgcHVzaCIpIFwKICAgIF9QcmFnbWEgKCJHQ0MgZGlhZ25vc3RpYyBp Z25vcmVkIFwiLVdtaXNzaW5nLXByb3RvdHlwZXNcIiIpIFwKICAgIF9QcmFnbWEgKCJHQ0Mg ZGlhZ25vc3RpYyBpZ25vcmVkIFwiLVdtaXNzaW5nLWRlY2xhcmF0aW9uc1wiIikgXAogICAg X0dMX0lOTElORV9IRUFERVJfQ09OU1RfUFJBR01BCiMgZGVmaW5lIF9HTF9JTkxJTkVfSEVB REVSX0VORCBcCiAgICBfUHJhZ21hICgiR0NDIGRpYWdub3N0aWMgcG9wIikKI2Vsc2UKIyBk ZWZpbmUgX0dMX0lOTElORV9IRUFERVJfQkVHSU4KIyBkZWZpbmUgX0dMX0lOTElORV9IRUFE RVJfRU5ECiNlbmRpZgoKLyogV29yayBhcm91bmQgYSBidWcgaW4gQXBwbGUgR0NDIDQuMC4x IGJ1aWxkIDU0NjU6IEluIEM5OSBtb2RlLCBpdCBzdXBwb3J0cwogICB0aGUgSVNPIEMgOTkg c2VtYW50aWNzIG9mICdleHRlcm4gaW5saW5lJyAodW5saWtlIHRoZSBHTlUgQyBzZW1hbnRp Y3Mgb2YKICAgZWFybGllciB2ZXJzaW9ucyksIGJ1dCBkb2VzIG5vdCBkaXNwbGF5IGl0IGJ5 IHNldHRpbmcgX19HTlVDX1NURENfSU5MSU5FX18uCiAgIF9fQVBQTEVfXyAmJiBfX01BQ0hf XyB0ZXN0IGZvciBNYWMgT1MgWC4KICAgX19BUFBMRV9DQ19fIHRlc3RzIGZvciB0aGUgQXBw bGUgY29tcGlsZXIgYW5kIGl0cyB2ZXJzaW9uLgogICBfX1NURENfVkVSU0lPTl9fIHRlc3Rz IGZvciB0aGUgQzk5IG1vZGUuICAqLwojaWYgZGVmaW5lZCBfX0FQUExFX18gJiYgZGVmaW5l ZCBfX01BQ0hfXyAmJiBfX0FQUExFX0NDX18gPj0gNTQ2NSAmJiAhZGVmaW5lZCBfX2NwbHVz cGx1cyAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwgJiYgIWRlZmluZWQgX19HTlVD X1NURENfSU5MSU5FX18KIyBkZWZpbmUgX19HTlVDX1NURENfSU5MSU5FX18gMQojZW5kaWYK Ci8qIERlZmluZSB0byAxIGlmIHRoZSBjb21waWxlciBpcyBjaGVja2luZyBmb3IgbGludC4g Ki8KI2RlZmluZSBsaW50IDEKCi8qIERlZmluZSB0byBhIHR5cGUgaWYgPHdjaGFyLmg+IGRv ZXMgbm90IGRlZmluZS4gKi8KLyogI3VuZGVmIG1ic3RhdGVfdCAqLwoKLyogRGVmaW5lIHRv IHRoZSByZWFsIG5hbWUgb2YgdGhlIG1rdGltZV9pbnRlcm5hbCBmdW5jdGlvbi4gKi8KLyog I3VuZGVmIG1rdGltZV9pbnRlcm5hbCAqLwoKLyogRGVmaW5lIHRvIGBpbnQnIGlmIDxzeXMv dHlwZXMuaD4gZG9lcyBub3QgZGVmaW5lLiAqLwovKiAjdW5kZWYgbW9kZV90ICovCgovKiBE ZWZpbmUgdG8gdGhlIG5hbWUgb2YgdGhlIHN0cmZ0aW1lIHJlcGxhY2VtZW50IGZ1bmN0aW9u LiAqLwojZGVmaW5lIG15X3N0cmZ0aW1lIG5zdHJmdGltZQoKLyogRGVmaW5lIHRvIHRoZSB0 eXBlIG9mIHN0X25saW5rIGluIHN0cnVjdCBzdGF0LCBvciBhIHN1cGVydHlwZS4gKi8KLyog I3VuZGVmIG5saW5rX3QgKi8KCi8qIERlZmluZSB0byBgaW50JyBpZiA8c3lzL3R5cGVzLmg+ IGRvZXMgbm90IGRlZmluZS4gKi8KLyogI3VuZGVmIHBpZF90ICovCgovKiBEZWZpbmUgdG8g dGhlIGVxdWl2YWxlbnQgb2YgdGhlIEM5OSAncmVzdHJpY3QnIGtleXdvcmQsIG9yIHRvCiAg IG5vdGhpbmcgaWYgdGhpcyBpcyBub3Qgc3VwcG9ydGVkLiAgRG8gbm90IGRlZmluZSBpZiBy ZXN0cmljdCBpcwogICBzdXBwb3J0ZWQgZGlyZWN0bHkuICAqLwojZGVmaW5lIHJlc3RyaWN0 IF9fcmVzdHJpY3QKLyogV29yayBhcm91bmQgYSBidWcgaW4gU3VuIEMrKzogaXQgZG9lcyBu b3Qgc3VwcG9ydCBfUmVzdHJpY3Qgb3IKICAgX19yZXN0cmljdF9fLCBldmVuIHRob3VnaCB0 aGUgY29ycmVzcG9uZGluZyBTdW4gQyBjb21waWxlciBlbmRzIHVwIHdpdGgKICAgIiNkZWZp bmUgcmVzdHJpY3QgX1Jlc3RyaWN0IiBvciAiI2RlZmluZSByZXN0cmljdCBfX3Jlc3RyaWN0 X18iIGluIHRoZQogICBwcmV2aW91cyBsaW5lLiAgUGVyaGFwcyBzb21lIGZ1dHVyZSB2ZXJz aW9uIG9mIFN1biBDKysgd2lsbCB3b3JrIHdpdGgKICAgcmVzdHJpY3Q7IGlmIHNvLCBob3Bl ZnVsbHkgaXQgZGVmaW5lcyBfX1JFU1RSSUNUIGxpa2UgU3VuIEMgZG9lcy4gICovCiNpZiBk ZWZpbmVkIF9fU1VOUFJPX0NDICYmICFkZWZpbmVkIF9fUkVTVFJJQ1QKIyBkZWZpbmUgX1Jl c3RyaWN0CiMgZGVmaW5lIF9fcmVzdHJpY3RfXwojZW5kaWYKCi8qIHR5cGUgdG8gdXNlIGlu IHBsYWNlIG9mIHNvY2tsZW5fdCBpZiBub3QgZGVmaW5lZCAqLwovKiAjdW5kZWYgc29ja2xl bl90ICovCgovKiBEZWZpbmUgYXMgYSBzaWduZWQgdHlwZSBvZiB0aGUgc2FtZSBzaXplIGFz IHNpemVfdC4gKi8KLyogI3VuZGVmIHNzaXplX3QgKi8KCi8qIERlZmluZSB0byBlbmFibGUg YXN5bmNocm9ub3VzIHN1YnByb2Nlc3Nlcy4gKi8KI2RlZmluZSBzdWJwcm9jZXNzZXMgMQoK LyogRGVmaW5lIGFzIGEgbWFya2VyIHRoYXQgY2FuIGJlIGF0dGFjaGVkIHRvIGRlY2xhcmF0 aW9ucyB0aGF0IG1pZ2h0IG5vdAogICAgYmUgdXNlZC4gIFRoaXMgaGVscHMgdG8gcmVkdWNl IHdhcm5pbmdzLCBzdWNoIGFzIGZyb20KICAgIEdDQyAtV3VudXNlZC1wYXJhbWV0ZXIuICAq LwojaWYgX19HTlVDX18gPj0gMyB8fCAoX19HTlVDX18gPT0gMiAmJiBfX0dOVUNfTUlOT1Jf XyA+PSA3KQojIGRlZmluZSBfR0xfVU5VU0VEIF9fYXR0cmlidXRlX18gKChfX3VudXNlZF9f KSkKI2Vsc2UKIyBkZWZpbmUgX0dMX1VOVVNFRAojZW5kaWYKLyogVGhlIG5hbWUgX1VOVVNF RF9QQVJBTUVURVJfIGlzIGFuIGVhcmxpZXIgc3BlbGxpbmcsIGFsdGhvdWdoIHRoZSBuYW1l CiAgIGlzIGEgbWlzbm9tZXIgb3V0c2lkZSBvZiBwYXJhbWV0ZXIgbGlzdHMuICAqLwojZGVm aW5lIF9VTlVTRURfUEFSQU1FVEVSXyBfR0xfVU5VU0VECgovKiBnY2Mgc3VwcG9ydHMgdGhl ICJ1bnVzZWQiIGF0dHJpYnV0ZSBvbiBwb3NzaWJseSB1bnVzZWQgbGFiZWxzLCBhbmQKICAg ZysrIGhhcyBzaW5jZSB2ZXJzaW9uIDQuNS4gIE5vdGUgdG8gc3VwcG9ydCBDKysgYXMgd2Vs bCBhcyBDLAogICBfR0xfVU5VU0VEX0xBQkVMIHNob3VsZCBiZSB1c2VkIHdpdGggYSB0cmFp bGluZyA7ICAqLwojaWYgIWRlZmluZWQgX19jcGx1c3BsdXMgfHwgX19HTlVDX18gPiA0IFwK ICAgIHx8IChfX0dOVUNfXyA9PSA0ICYmIF9fR05VQ19NSU5PUl9fID49IDUpCiMgZGVmaW5l IF9HTF9VTlVTRURfTEFCRUwgX0dMX1VOVVNFRAojZWxzZQojIGRlZmluZSBfR0xfVU5VU0VE X0xBQkVMCiNlbmRpZgoKLyogVGhlIF9fcHVyZV9fIGF0dHJpYnV0ZSB3YXMgYWRkZWQgaW4g Z2NjIDIuOTYuICAqLwojaWYgX19HTlVDX18gPiAyIHx8IChfX0dOVUNfXyA9PSAyICYmIF9f R05VQ19NSU5PUl9fID49IDk2KQojIGRlZmluZSBfR0xfQVRUUklCVVRFX1BVUkUgX19hdHRy aWJ1dGVfXyAoKF9fcHVyZV9fKSkKI2Vsc2UKIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9QVVJF IC8qIGVtcHR5ICovCiNlbmRpZgoKLyogVGhlIF9fY29uc3RfXyBhdHRyaWJ1dGUgd2FzIGFk ZGVkIGluIGdjYyAyLjk1LiAgKi8KI2lmIF9fR05VQ19fID4gMiB8fCAoX19HTlVDX18gPT0g MiAmJiBfX0dOVUNfTUlOT1JfXyA+PSA5NSkKIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9DT05T VCBfX2F0dHJpYnV0ZV9fICgoX19jb25zdF9fKSkKI2Vsc2UKIyBkZWZpbmUgX0dMX0FUVFJJ QlVURV9DT05TVCAvKiBlbXB0eSAqLwojZW5kaWYKCgovKiBEZWZpbmUgYXMgYGZvcmsnIGlm IGB2Zm9yaycgZG9lcyBub3Qgd29yay4gKi8KLyogI3VuZGVmIHZmb3JrICovCgojaW5jbHVk ZSA8Y29uZl9wb3N0Lmg+CgojZW5kaWYgLyogRU1BQ1NfQ09ORklHX0ggKi8KCi8qCkxvY2Fs IFZhcmlhYmxlczoKbW9kZTogYwpFbmQ6CiovCgo= --------------030501020309050709010409-- ------------=_1651174562-19478-1--