From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: ndame Newsgroups: gmane.emacs.help Subject: Re: backward-sexp throws scan-error "Unbalanced parentheses", but forward-sexp works Date: Wed, 19 Jan 2022 21:30:41 +0000 Message-ID: References: <7P2hvHIAuBtvvAp5Gg8L9eq2f8SRRltOKMqGLvfvTOjSjgxKT3tp93lKU0v1WHJfzDudElnNlUyQDuvjo6L_JLtWEVsb1FuiclveZp_i9T0=@protonmail.com> Reply-To: ndame Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_WnzRRPHQQLv7iX5q5itp9Tja3ItUgzqk0tCRiF8PEc" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22042"; mail-complaints-to="usenet@ciao.gmane.io" To: "help-gnu-emacs@gnu.org" Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Wed Jan 19 22:32:17 2022 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nAIYy-0005TW-P5 for geh-help-gnu-emacs@m.gmane-mx.org; Wed, 19 Jan 2022 22:32:16 +0100 Original-Received: from localhost ([::1]:53172 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nAIYx-000310-So for geh-help-gnu-emacs@m.gmane-mx.org; Wed, 19 Jan 2022 16:32:15 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:54298) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nAIXt-0002zk-6v for help-gnu-emacs@gnu.org; Wed, 19 Jan 2022 16:31:09 -0500 Original-Received: from mail-40135.protonmail.ch ([185.70.40.135]:44928) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nAIXg-0000By-8N for help-gnu-emacs@gnu.org; Wed, 19 Jan 2022 16:31:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail2; t=1642627841; bh=xnWOditq07jIHeYgMIGGhu2ng3eS2Gk7rgPsMS/BqI8=; h=Date:To:From:Reply-To:Subject:Message-ID:In-Reply-To:References: From:To:Cc; b=KaFsHl0Ob5t+2OhaZuxMOemoghwPf+X/tAQWLlvCEtXieDoQIXsJNyEbwEgBrOB0j gJon0AOCL3wOxsrcsoCyfqZjNh9S7B3SzQS5dANtwj0vdA1fTWSLRq+aU5434PpQ66 aFmYBdAM7CCdIKOQW6QrBJNMIWA2JhksfIFsBj7aG0RU7pw0AfA3gp7hCSFpUjJ0h6 LfhPiZi9siU7mPFvijStnTHW4rgmAJKlVFNad/d5SHZKpk/YL4hpZw0q6GNwMZUj7V zd+CcPeHZRrqOhFolY8HeOp4GmPiwthdCPebhTwYEN6rZyiaXZXPg8Di+0xlYa1zKu Bn7xh19AmgYRg== In-Reply-To: Received-SPF: pass client-ip=185.70.40.135; envelope-from=laszlomail@protonmail.com; helo=mail-40135.protonmail.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:135456 Archived-At: This is a multi-part message in MIME format. --b1_WnzRRPHQQLv7iX5q5itp9Tja3ItUgzqk0tCRiF8PEc Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable > I haven't looked in detail, but I did notice that it let-binds > `after-change-functions` which can interfere with other code adding > functions to this hook. > > Does the quick&dirty patch below help? I started emacs -Q and though I have the mode installed via package.el, I did not want to setup package stuff, so I just copied the code from here: https://raw.githubusercontent.com/Malabarba/aggressive-indent-mode/master/a= ggressive-indent.el Turns out with this latest version the problem is not reproducible. I made a diff compared to my installed version and apparently the new, working version adds the `after-change-functions` which you wanted to remove among other things . (diff attached) So the problem went away, because I upgraded to the latest version, which is good, but I'm still wondering how the syntax parser got confused because of indentation stuff. --b1_WnzRRPHQQLv7iX5q5itp9Tja3ItUgzqk0tCRiF8PEc Content-Type: application/octet-stream; name=diff Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=diff LTs7OyBhZ2dyZXNzaXZlLWluZGVudC5lbCAtLS0gTWlub3IgbW9kZSB0byBhZ2dyZXNzaXZlbHkg a2VlcCB5b3VyIGNvZGUgYWx3YXlzIGluZGVudGVkDQorOzs7IGFnZ3Jlc3NpdmUtaW5kZW50LmVs IC0tLSBNaW5vciBtb2RlIHRvIGFnZ3Jlc3NpdmVseSBrZWVwIHlvdXIgY29kZSBhbHdheXMgaW5k ZW50ZWQgIC0qLSBsZXhpY2FsLWJpbmRpbmc6dCAtKi0NCiANCi07OyBDb3B5cmlnaHQgKEMpIDIw MTQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuDQorOzsgQ29weXJpZ2h0IChDKSAyMDE0 LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMNCiANCiA7OyBBdXRob3I6IEFydHVy IE1hbGFiYXJiYSA8ZW1hY3NAZW5kbGVzc3BhcmVudGhlc2VzLmNvbT4NCiA7OyBVUkw6IGh0dHBz Oi8vZ2l0aHViLmNvbS9NYWxhYmFyYmEvYWdncmVzc2l2ZS1pbmRlbnQtbW9kZQ0KLTs7IFBhY2th Z2UtVmVyc2lvbjogMjAxOTAyMTguMjMzMQ0KLTs7IFZlcnNpb246IDEuOC40DQotOzsgUGFja2Fn ZS1SZXF1aXJlczogKChlbWFjcyAiMjQuMSIpIChjbC1saWIgIjAuNSIpKQ0KKzs7IFZlcnNpb246 IDEuMTAuMA0KKzs7IFBhY2thZ2UtUmVxdWlyZXM6ICgoZW1hY3MgIjI0LjMiKSkNCiA7OyBLZXl3 b3JkczogaW5kZW50IGxpc3AgbWFpbnQgdG9vbHMNCiA7OyBQcmVmaXg6IGFnZ3Jlc3NpdmUtaW5k ZW50DQogOzsgU2VwYXJhdG9yOiAtDQpAQCAtNzEsNyArNzAsNyBAQA0KIDs7DQogOzsgVGhpcyBw cm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcg0K IDs7IG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlDQotOzsgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247 IGVpdGhlciB2ZXJzaW9uIDINCis7OyBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMw0KIDs7IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQg eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIDs7DQogOzsgVGhpcyBwcm9ncmFtIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQpAQCAtMzU1 LDggKzM1NCw3IEBADQogQ2FsbCBgYWdncmVzc2l2ZS1pbmRlbnQtcmVnaW9uLWZ1bmN0aW9uJyBi ZXR3ZWVuIEwgYW5kIFIsIGFuZA0KIHRoZW4ga2VlcCBpbmRlbnRpbmcgdW50aWwgbm90aGluZyBt b3JlIGhhcHBlbnMuIg0KICAgKGludGVyYWN0aXZlICJyIikNCi0gIChsZXQgKChwIChwb2ludC1t YXJrZXIpKQ0KLSAgICAgICAgd2FzLWJlZ2luaW5nLW9mLWxpbmUpDQorICAobGV0ICgocCAocG9p bnQtbWFya2VyKSkpDQogICAgIChzZXQtbWFya2VyLWluc2VydGlvbi10eXBlIHAgdCkNCiAgICAg KHVud2luZC1wcm90ZWN0DQogICAgICAgICAocHJvZ24NCkBAIC0zOTEsMTEgKzM4OSwxMSBAQA0K ICAgIkxpc3Qgb2YgKGxlZnQgcmlnaHQpIGxpbWl0IG9mIHJlZ2lvbnMgY2hhbmdlZCBpbiB0aGUg bGFzdCBjb21tYW5kIGxvb3AuIikNCiAobWFrZS12YXJpYWJsZS1idWZmZXItbG9jYWwgJ2FnZ3Jl c3NpdmUtaW5kZW50LS1jaGFuZ2VkLWxpc3QpDQogDQotKGRlZnVuIGFnZ3Jlc3NpdmUtaW5kZW50 LS1wcm9jY2Vzcy1jaGFuZ2VkLWxpc3QtYW5kLWluZGVudCAoKQ0KKyhkZWZ1biBhZ2dyZXNzaXZl LWluZGVudC0tcHJvY2Vzcy1jaGFuZ2VkLWxpc3QtYW5kLWluZGVudCAoKQ0KICAgIkluZGVudCB0 aGUgcmVnaW9ucyBpbiBgYWdncmVzc2l2ZS1pbmRlbnQtLWNoYW5nZWQtbGlzdCcuIg0KICAgKHVu bGVzcyAob3IgKHJ1bi1ob29rLXdyYXBwZWQgJ2FnZ3Jlc3NpdmUtaW5kZW50LS1pbnRlcm5hbC1k b250LWluZGVudC1pZiAjJ2V2YWwpDQogICAgICAgICAgICAgICAoYWdncmVzc2l2ZS1pbmRlbnQt LXJ1bi11c2VyLWhvb2tzKSkNCi0gICAgKGxldCAoKGluaGliaXQtbW9kaWZpY2F0aW9uLWhvb2tz IHQpDQorICAgIChsZXQgKChhZnRlci1jaGFuZ2UtZnVuY3Rpb25zIChyZW1vdmUgJ2FnZ3Jlc3Np dmUtaW5kZW50LS1rZWVwLXRyYWNrLW9mLWNoYW5nZXMgYWZ0ZXItY2hhbmdlLWZ1bmN0aW9ucykp DQogICAgICAgICAgIChpbmhpYml0LXBvaW50LW1vdGlvbi1ob29rcyB0KQ0KICAgICAgICAgICAo aW5kZW50LWZ1bmN0aW9uDQogICAgICAgICAgICAoaWYgKGNsLW1lbWJlci1pZiAjJ2Rlcml2ZWQt bW9kZS1wIGFnZ3Jlc3NpdmUtaW5kZW50LW1vZGVzLXRvLXByZWZlci1kZWZ1bikNCkBAIC00NjAs MjYgKzQ1OCwzMSBAQA0KICAgICAgICAgICAgICBuaWwpDQogICAgICAgICAgICAgKHQgdmFsKSkp KSkpKQ0KIA0KLShkZWZ1biBhZ2dyZXNzaXZlLWluZGVudC0taW5kZW50LWlmLWNoYW5nZWQgKCkN Ci0gICJJbmRlbnQgYW55IHJlZ2lvbiB0aGF0IGNoYW5nZWQgaW4gdGhlIGxhc3QgY29tbWFuZCBs b29wLiINCi0gIChpZiAobm90IChidWZmZXItbGl2ZS1wIChjdXJyZW50LWJ1ZmZlcikpKQ0KLSAg ICAgIChjYW5jZWwtdGltZXIgYWdncmVzc2l2ZS1pbmRlbnQtLWlkbGUtdGltZXIpDQotICAgICh3 aGVuIChhbmQgYWdncmVzc2l2ZS1pbmRlbnQtbW9kZSBhZ2dyZXNzaXZlLWluZGVudC0tY2hhbmdl ZC1saXN0KQ0KLSAgICAgIChzYXZlLWV4Y3Vyc2lvbg0KLSAgICAgICAgKHNhdmUtc2VsZWN0ZWQt d2luZG93DQotICAgICAgICAgIChhZ2dyZXNzaXZlLWluZGVudC0td2hpbGUtbm8taW5wdXQNCi0g ICAgICAgICAgICAoYWdncmVzc2l2ZS1pbmRlbnQtLXByb2NjZXNzLWNoYW5nZWQtbGlzdC1hbmQt aW5kZW50KSkpKQ0KLSAgICAgICh3aGVuICh0aW1lcnAgYWdncmVzc2l2ZS1pbmRlbnQtLWlkbGUt dGltZXIpDQotICAgICAgICAoY2FuY2VsLXRpbWVyIGFnZ3Jlc3NpdmUtaW5kZW50LS1pZGxlLXRp bWVyKSkpKSkNCisoZGVmdW4gYWdncmVzc2l2ZS1pbmRlbnQtLW1heWJlLWNhbmNlbC10aW1lciAo KQ0KKyAgIkNhbmNlbCBhbmQgcmVtb3ZlIHRoZSB0aW1lciBpZiBpdCBpcyBzZXQuIg0KKyAgKHdo ZW4gKHRpbWVycCBhZ2dyZXNzaXZlLWluZGVudC0taWRsZS10aW1lcikNCisgICAgKGNhbmNlbC10 aW1lciBhZ2dyZXNzaXZlLWluZGVudC0taWRsZS10aW1lcikNCisgICAgKHNldHEgYWdncmVzc2l2 ZS1pbmRlbnQtLWlkbGUtdGltZXIgbmlsKSkpDQorDQorKGRlZnVuIGFnZ3Jlc3NpdmUtaW5kZW50 LS1pbmRlbnQtaWYtY2hhbmdlZCAoYnVmZmVyKQ0KKyAgIkluZGVudCBhbnkgcmVnaW9uIHRoYXQg Y2hhbmdlZCBpbiBCVUZGRVIgaW4gdGhlIGxhc3QgY29tbWFuZCBsb29wLiINCisgIChpZiAobm90 IChidWZmZXItbGl2ZS1wIGJ1ZmZlcikpDQorICAgICAgKGFnZ3Jlc3NpdmUtaW5kZW50LS1tYXli ZS1jYW5jZWwtdGltZXIpDQorICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZmZlcg0KKyAgICAg ICh3aGVuIChhbmQgYWdncmVzc2l2ZS1pbmRlbnQtbW9kZSBhZ2dyZXNzaXZlLWluZGVudC0tY2hh bmdlZC1saXN0KQ0KKyAgICAgICAgKHNhdmUtZXhjdXJzaW9uDQorICAgICAgICAgIChzYXZlLXNl bGVjdGVkLXdpbmRvdw0KKyAgICAgICAgICAgIChhZ2dyZXNzaXZlLWluZGVudC0td2hpbGUtbm8t aW5wdXQNCisgICAgICAgICAgICAgIChhZ2dyZXNzaXZlLWluZGVudC0tcHJvY2Vzcy1jaGFuZ2Vk LWxpc3QtYW5kLWluZGVudCkpKSkNCisgICAgICAgIChhZ2dyZXNzaXZlLWluZGVudC0tbWF5YmUt Y2FuY2VsLXRpbWVyKSkpKSkNCiANCiAoZGVmdW4gYWdncmVzc2l2ZS1pbmRlbnQtLWtlZXAtdHJh Y2stb2YtY2hhbmdlcyAobCByICZyZXN0IF8pDQogICAiU3RvcmUgdGhlIGxpbWl0cyAoTCBhbmQg Uikgb2YgZWFjaCBjaGFuZ2UgaW4gdGhlIGJ1ZmZlci4iDQogICAod2hlbiBhZ2dyZXNzaXZlLWlu ZGVudC1tb2RlDQogICAgIChwdXNoIChsaXN0IGwgcikgYWdncmVzc2l2ZS1pbmRlbnQtLWNoYW5n ZWQtbGlzdCkNCi0gICAgKHdoZW4gKHRpbWVycCBhZ2dyZXNzaXZlLWluZGVudC0taWRsZS10aW1l cikNCi0gICAgICAoY2FuY2VsLXRpbWVyIGFnZ3Jlc3NpdmUtaW5kZW50LS1pZGxlLXRpbWVyKSkN CisgICAgKGFnZ3Jlc3NpdmUtaW5kZW50LS1tYXliZS1jYW5jZWwtdGltZXIpDQogICAgIChzZXRx IGFnZ3Jlc3NpdmUtaW5kZW50LS1pZGxlLXRpbWVyDQotICAgICAgICAgIChydW4td2l0aC1pZGxl LXRpbWVyIGFnZ3Jlc3NpdmUtaW5kZW50LXNpdC1mb3ItdGltZSB0ICMnYWdncmVzc2l2ZS1pbmRl bnQtLWluZGVudC1pZi1jaGFuZ2VkKSkpKQ0KKyAgICAgICAgICAocnVuLXdpdGgtaWRsZS10aW1l ciBhZ2dyZXNzaXZlLWluZGVudC1zaXQtZm9yLXRpbWUgdCAjJ2FnZ3Jlc3NpdmUtaW5kZW50LS1p bmRlbnQtaWYtY2hhbmdlZCAoY3VycmVudC1idWZmZXIpKSkpKQ0KIA0KIDs7OyBNaW5vciBtb2Rl cw0KIDs7OyMjI2F1dG9sb2FkDQpAQCAtNTEwLDE0ICs1MTMsMTUgQEANCiAgICAgICAgICAgKGFn Z3Jlc3NpdmUtaW5kZW50LS1sb2NhbC1lbGVjdHJpYyB0KSkNCiAgICAgICAgIChhZGQtaG9vayAn YWZ0ZXItY2hhbmdlLWZ1bmN0aW9ucyAjJ2FnZ3Jlc3NpdmUtaW5kZW50LS1rZWVwLXRyYWNrLW9m LWNoYW5nZXMgbmlsICdsb2NhbCkNCiAgICAgICAgIChhZGQtaG9vayAnYWZ0ZXItcmV2ZXJ0LWhv b2sgIydhZ2dyZXNzaXZlLWluZGVudC0tY2xlYXItY2hhbmdlLWxpc3QgbmlsICdsb2NhbCkNCi0g ICAgICAgIChhZGQtaG9vayAnYmVmb3JlLXNhdmUtaG9vayAjJ2FnZ3Jlc3NpdmUtaW5kZW50LS1w cm9jY2Vzcy1jaGFuZ2VkLWxpc3QtYW5kLWluZGVudCBuaWwgJ2xvY2FsKSkNCisgICAgICAgIChh ZGQtaG9vayAnYmVmb3JlLXNhdmUtaG9vayAjJ2FnZ3Jlc3NpdmUtaW5kZW50LS1wcm9jZXNzLWNo YW5nZWQtbGlzdC1hbmQtaW5kZW50IG5pbCAnbG9jYWwpDQorICAgICAgICAoYWRkLWhvb2sgJ2tp bGwtYnVmZmVyLWhvb2sgIydhZ2dyZXNzaXZlLWluZGVudC0tbWF5YmUtY2FuY2VsLXRpbWVyIG5p bCAnbG9jYWwpKQ0KICAgICA7OyBDbGVhbiB0aGUgaG9va3MNCi0gICAgKHdoZW4gKHRpbWVycCBh Z2dyZXNzaXZlLWluZGVudC0taWRsZS10aW1lcikNCi0gICAgICAoY2FuY2VsLXRpbWVyIGFnZ3Jl c3NpdmUtaW5kZW50LS1pZGxlLXRpbWVyKSkNCisgICAgKGFnZ3Jlc3NpdmUtaW5kZW50LS1tYXli ZS1jYW5jZWwtdGltZXIpDQogICAgIChyZW1vdmUtaG9vayAnYWZ0ZXItY2hhbmdlLWZ1bmN0aW9u cyAjJ2FnZ3Jlc3NpdmUtaW5kZW50LS1rZWVwLXRyYWNrLW9mLWNoYW5nZXMgJ2xvY2FsKQ0KICAg ICAocmVtb3ZlLWhvb2sgJ2FmdGVyLXJldmVydC1ob29rICMnYWdncmVzc2l2ZS1pbmRlbnQtLWNs ZWFyLWNoYW5nZS1saXN0ICdsb2NhbCkNCi0gICAgKHJlbW92ZS1ob29rICdiZWZvcmUtc2F2ZS1o b29rICMnYWdncmVzc2l2ZS1pbmRlbnQtLXByb2NjZXNzLWNoYW5nZWQtbGlzdC1hbmQtaW5kZW50 ICdsb2NhbCkNCi0gICAgKHJlbW92ZS1ob29rICdwb3N0LWNvbW1hbmQtaG9vayAjJ2FnZ3Jlc3Np dmUtaW5kZW50LS1zb2Z0bHktaW5kZW50LWRlZnVuICdsb2NhbCkpKQ0KKyAgICAocmVtb3ZlLWhv b2sgJ2JlZm9yZS1zYXZlLWhvb2sgIydhZ2dyZXNzaXZlLWluZGVudC0tcHJvY2Vzcy1jaGFuZ2Vk LWxpc3QtYW5kLWluZGVudCAnbG9jYWwpDQorICAgIChyZW1vdmUtaG9vayAncG9zdC1jb21tYW5k LWhvb2sgIydhZ2dyZXNzaXZlLWluZGVudC0tc29mdGx5LWluZGVudC1kZWZ1biAnbG9jYWwpDQor ICAgIChyZW1vdmUtaG9vayAna2lsbC1idWZmZXItaG9vayAjJ2FnZ3Jlc3NpdmUtaW5kZW50LS1t YXliZS1jYW5jZWwtdGltZXIgJ2xvY2FsKSkpDQogDQogKGRlZnVuIGFnZ3Jlc3NpdmUtaW5kZW50 LS1sb2NhbC1lbGVjdHJpYyAob24pDQogICAiVHVybiB2YXJpYWJsZSBgZWxlY3RyaWMtaW5kZW50 LW1vZGUnIG9uIG9yIG9mZiBsb2NhbGx5LCBhcyBwZXIgYm9vbGVhbiBPTi4iDQoNCkRpZmYgZmlu aXNoZWQuICBXZWQgSmFuIDE5IDIyOjE1OjIzIDIwMjINCg== --b1_WnzRRPHQQLv7iX5q5itp9Tja3ItUgzqk0tCRiF8PEc--