From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id AGcDDtHPUWEdYwEAgWs5BA (envelope-from ) for ; Mon, 27 Sep 2021 16:06:09 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id yKubCdHPUWEaTQAAbx9fmQ (envelope-from ) for ; Mon, 27 Sep 2021 14:06:09 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id F378218EB7 for ; Mon, 27 Sep 2021 16:06:07 +0200 (CEST) Received: from localhost ([::1]:50060 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mUrGh-0007vm-2S for larch@yhetil.org; Mon, 27 Sep 2021 10:06:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56780) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mUrC8-0004Jr-QI for emacs-orgmode@gnu.org; Mon, 27 Sep 2021 10:01:25 -0400 Received: from smtp4-g21.free.fr ([2a01:e0c:1:1599::13]:56930) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mUrBu-0006Or-BI; Mon, 27 Sep 2021 10:01:24 -0400 Received: from [192.168.110.38] (unknown [37.164.95.66]) (Authenticated sender: emm.charpentier@free.fr) by smtp4-g21.free.fr (Postfix) with ESMTPA id 08AB619F5AB; Mon, 27 Sep 2021 16:01:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=free.fr; s=smtp-20201208; t=1632751265; bh=bCbDo7+DGOMqUCLbeac1Q44bPX9VO42UG8Hd1xll4Og=; h=Subject:From:To:Date:In-Reply-To:From; b=tZVFUSJyAiUmn9y8l7BedpBplESP+4KfzHdHlHr3o95Ip/DV6yW34IJqr9egD/2h8 cXubcQfJRS8UimMmNfjyCRnO6kKmZoYObR9F5s6PdgMptgu0w+alyOKkDd9oAlYyT+ aoM4bpjuAZQ1bWcMdY1TISYeQMpGuuRaSUlKzDfFA7aoyYNbmua2QjOt5Qu5KJK2um /zv5kvIoz8bGgFjbIAAuOM9Flk6K/it+V7e5IAV1FdnPM1oOiL3PFxH+v5BNwyouGq wgPvUFC20+4VVcT2uwB/Fz2u216TZkDV+T+YJ2s+3cmUdnz5QkjWWjZevNgfVrA1Py 8LNeK6oLExgwA== Message-ID: <0cef6da366da15181dd304cabe1832bbf785a109.camel@free.fr> Subject: Chiming in [Re: org-cite not mentioned in ORG-NEWS for 9.5] From: Emmanuel Charpentier To: bzg@gnu.org, emacs-orgmode Date: Mon, 27 Sep 2021 16:01:01 +0200 In-Reply-To: 8735ps69nc.fsf@gnu.org Organization: =?ISO-8859-1?Q?Organis=E9?= ? Moi ??? Content-Type: multipart/mixed; boundary="=-AZbiKKSp0gHmj/qzTY5K" User-Agent: Evolution 3.38.3-1 MIME-Version: 1.0 Received-SPF: pass client-ip=2a01:e0c:1:1599::13; envelope-from=emm.charpentier@free.fr; helo=smtp4-g21.free.fr 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1632751568; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=WiT6Q6Fo5Q4J3rHmj0lF0ocCCl97KPTEruvNKi8bFS4=; b=uF5O99bko2kA52QIPKFF4VblXvFYHxBhvGOd6IMWbTdrQdabruG+093Y/Ijul0W0EhoLNU HcA2lOCaPWv+XuPnTrGrRVy3JytLpFj651NpJ1//8ukLt1SBIMkyE0pxc1CBt46pQysQsQ pKNz2xhgyMSS4egGQBAuTNt7PUgBGK+I1oIoNv64GaOJC0pMxXPX2W1yOOzLJcJkIvJdw6 YJlDoCIdD+SHRg7JeStjtwL4H/ULIIfUcGb9izeHsZipmbCPn2a3ZjKmtOv5iPGb+lofrn npPQecGutcmhN0KRnDuFAy3h6w2n/jxMqh6HFmWyd0ASvzEq5f/BvyjLq+ydMg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1632751568; a=rsa-sha256; cv=none; b=F1EgDcg4QZ9spDHZ2MtlXHTJeZp1REcmh/AuFUq48Ev+aIICBvaIJMJIZQU67TXNXcPeV2 vqSNhEDH+8QK7ix5PYt3+tp6fV52LOqdnExMc8rDM4NhxAv+HWm6DiKiYxE1QdyqdMWlf8 ihoa2I2b0eWjMoxbR4Eezn/4z8EREctF5H7Brhs9oijlTDUSFm5JyAYXWQ0Q8VFoH8FXaz dnbs/2/HXajJRquOD7hlrSc35wxIBj2LqpEKLOEH5fFgxDmtxS8Ts+70MadCPjEYJmSvAT pzo9rig6iqXaOOt8hZFPqOsxpp2fcdJCINHqOKHiYujCzPFcI4FM2sxb4PeY3w== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=free.fr header.s=smtp-20201208 header.b=tZVFUSJy; dmarc=pass (policy=none) header.from=free.fr; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -1.99 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=free.fr header.s=smtp-20201208 header.b=tZVFUSJy; dmarc=pass (policy=none) header.from=free.fr; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: F378218EB7 X-Spam-Score: -1.99 X-Migadu-Scanner: scn0.migadu.com X-TUID: 7uR/p2wr44r6 --=-AZbiKKSp0gHmj/qzTY5K Content-Type: multipart/alternative; boundary="=-/k7GSF9/JWtc4DZ3sGEY" --=-/k7GSF9/JWtc4DZ3sGEY Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit As reported by Bastien, I started a documentation for the current state of the citation engine(s). I intended to complete it, but got "a little" sidetracked. Enclosed is a patch of where I was in August. Bastien made the following remarks, which I mostly intended to follow : =========================================== Je pense qu'à ce stade, le mieux est de soumettre ce document sur la liste de diffusion. En attendant, j'ai quelques remarques, en vrac : - Je pense que le titre "Working with…" n'est pas assez explicite. Par   ailleurs, le chapitre précédent commence aussi par "Working with…".   Par conséquent, je propose d'intervertir la description et le titre :     * Citations and references     :PROPERTIES:     :DESCRIPTION: Working with other people's work     :END: - Il faut penser à mettre deux espaces entre deux phrases. - =Org= -> Org - J'enlèverais la partie introductive expliquant pourquoi il est utile   de citer le travail d'autrui. Ceci dit, il vaut mieux attendre l'avis   d'autres personnes concernées par la fonctionnalité. [ Emmanuel Charpentier : I think that this justification may be helpful to a lot of non-scholar org users, who could benefit from org-cite. Advice sollicited... ] - Je pense qu'il faut éviter de parler ce "citation link", car cela peut   engendrer de la confusion avec "link" qui est une structure proche,   mais différent. Peut-être faut-il parler de "citation object". - Dans Texinfo, les phrases doivent être séparées par deux espaces. =========================================== What still lacks : * an explanation of the four possible functions of an engine ; * current functionalities of the currently available engines ; * an org-guide sized summary. Anyone is welcome to propose modifications. Someone should take the task of collating the propositions and consolidate a final text ; I am reluctant to take this task, given my RL tasks... Comments, remarks, criticisms, lazzi, etc... all welcome. -- Emmanuel Charpentier --=-/k7GSF9/JWtc4DZ3sGEY Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable
As reported by Bastien, I started a documenta= tion for the current state of the citation engine(s). I intended to complet= e it, but got "a little" sidetracked.

Enclosed is = a patch of where I was in August.

Bastien made the= following remarks, which I mostly intended to follow :

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

=
Je pense qu'=C3=A0 ce stade, le mieux es= t de soumettre ce document sur la
liste de diffusion.

En attendant, j'ai quelques remarques, en vrac :
- Je pense que le titre "Working with= =E2=80=A6" n'est pas assez explicite. Par
  ailleurs, le chapitre pr=C3=A9c=C3=A9dent commence aussi pa= r "Working with=E2=80=A6".
 = Par cons=C3=A9quent, je propose d'intervertir la description et le titre&n= bsp;:

 &nbs= p;  * Citations and references
    :PROPERTIES:
    :END:

- Il faut penser =C3=A0 mettre = deux espaces entre deux phrases.

- =3DOrg=3D -> Org


- J'enl=C3=A8verais la partie introductive expliquan= t pourquoi il est utile
  de= citer le travail d'autrui. Ceci dit, il vaut mieux attendre l'avis<= br style=3D"caret-color: rgb(46, 52, 54); color: rgb(46, 52, 54); font-fami= ly: monospace;">  d'autres personnes concern=C3=A9e= s par la fonctionnalit=C3=A9.

[ Emmanuel Ch= arpentier : I think that this justification may be helpful to a lot of non-= scholar org users, who could benefit from org-cite. Advice sollicited... ]

- Je pense qu'il faut =C3=A9viter de parler ce= "citation link", car cela peut
&= nbsp; engendrer de la confusion avec "link" qui est une structure proche,
  mais diff=C3=A9rent. Peut-= =C3=AAtre faut-il parler de "citation object".

- Dans Texinfo, les phrases doivent =C3=AAtr= e s=C3=A9par=C3=A9es par deux espaces.

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
What stil= l lacks :
  • an explanation of the four possible functions of an = engine ;
  • current functionalities of the currently available engines= ;
  • an org-guide sized summary.

Anyone is welcome to propose= modifications. Someone should take the task of collating the propositions = and consolidate a final text ; I am reluctant to take this task, given my R= L tasks...

Comments, remarks, criticisms, lazzi, e= tc... all welcome.

--
Emmanuel Charpenti= er
--=-/k7GSF9/JWtc4DZ3sGEY-- --=-AZbiKKSp0gHmj/qzTY5K Content-Disposition: attachment; filename="0001-Embryo-of-a-doc-for-the-citation-engine-s.patch" Content-Type: text/x-patch; name="0001-Embryo-of-a-doc-for-the-citation-engine-s.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBmNGQ1YjlmN2QyYTU3YTU4OGZkNzJjNDA3NGE2YjFlZDAxOGNmMjlmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBFbW1hbnVlbCBDaGFycGVudGllciA8ZW1tLmNoYXJwZW50aWVy QGZyZWUuZnI+CkRhdGU6IE1vbiwgMjcgU2VwIDIwMjEgMTU6NDY6NTEgKzAyMDAKU3ViamVjdDog W1BBVENIXSBFbWJyeW8gb2YgYSBkb2MgZm9yIHRoZSBjaXRhdGlvbiBlbmdpbmUocykuCgotLS0K IGRvYy9vcmctbWFudWFsLm9yZyB8IDIzOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAyMzkgaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2RvYy9vcmctbWFudWFsLm9yZyBiL2RvYy9vcmctbWFudWFsLm9yZwppbmRleCBkMzRk MzM1NjEuLjI2NWQ1ZjMzYSAxMDA2NDQKLS0tIGEvZG9jL29yZy1tYW51YWwub3JnCisrKyBiL2Rv Yy9vcmctbWFudWFsLm9yZwpAQCAtMTg2MjIsNiArMTg2MjIsMjQ1IEBAIGVtYWNzIC1RIC0tYmF0 Y2ggLS1ldmFsICIKICAgIiAiJEAiCiAjK2VuZF9leGFtcGxlCiAKKyogV29ya2luZyB3aXRoIG90 aGVyIHBlb3BsZSdzIHdvcmsKKzpQUk9QRVJUSUVTOgorOkRFU0NSSVBUSU9OOiAgTWFuYWdlIGNp dGF0aW9ucyBhbmQgcmVmZXJlbmNlcworOkVORDoKKyMrY2luZGV4OiBvdGhlciBwZW9wbGUncyB3 b3JrLCB3b3JraW5nIHdpdGgKKworQ2l0YXRpb25zIGFuZCByZWZlcmVuY2VzIGFyZSBhIGNydWNp YWwgcGFydCBvZiBhbG1vc3QgYW55IHdyaXRpbmcKKyhzY2hvbGFybHkgb3Igb3RoZXJ3aXNlKTog Y2l0aW5nIHByZXZpb3VzIHdvcmtzIHJlbGlldmVzIHlvdSBmcm9tIHRoZQorYnVyZGVuIG9mIGRp c2N1c3Npbmcgb3IgZGVmZW5kaW5nIHdoYXQgeW91IGNpdGUuIFRoaXMgcmVsaWVmIGNvbWVzIGF0 CithIHByaWNlOiByZWZlcnJpbmcgeW91ciByZWFkZXIgdG8geW91ciBzb3VyY2UgKHRodXMgdHJh bnNmZXJyaW5nIHRoZQorYnVyZGVuIHRvIGNoZWNrIHlvdXIgc3RhdGVtZW50cyBpbiB0aGUgb3Jp Z2luYWwgc291cmNlIHRvCitoaW0vaGVyKS4gVGhpcyBpcyB1c3VhbGx5IGRvbmUgYnkgc2VwYXJp bmcgYSBicmllZiBpbmRpY2F0aW9uIG9mIHRoZQord29yayB5b3UgdXNlIChhIC9jaXRhdGlvbi8p LCBwYXJ0IG9mIHRoZSB0ZXh0LCBmcm9tIHRoZSBkZXRhaWxlZAorZGVzY3JpcHRpb24gb2YgdGhp cyB3b3JrIGFuZCBvZiB0aGUgbWVhbnMgdG8gcmV0cmlldmUgaXQgKHRoZQorL3JlZmVyZW5jZS8p LCBnaXZlbiBvdXQgb2YgdGhlIHRleHQgKGluIGZvb3Rub3RlcyBhbmQvb3IgYXQgdGhlIGVuZCBv ZgordGhlIHRleHQpLgorCitJbiBldmVyeWRheSB3cml0aW5nLCBjaXRhdGlvbnMgYW5kIHJlZmVy ZW5jZXMgbWF5IGJlIHZhZ3VlLCBvZnRlbgorcmVkdWNlZCB0byBhIGhhbmR3YXZlLiBJbiBtYW55 IGRvbWFpbnMsIGhvd2V2ZXIsIGFuZCBtb3N0IG5vdGFibHkgaW4KK2FjYWRlbWljIHdyaXRpbmcs IHByZWNpc2lvbiBpbiBjaXRpbmcgYW5kIHJlZmVycmluZyBpcyBjcnVjaWFsLiBDaXRpbmcKK2Fu ZCByZWZlcnJpbmcgY29udmVudGlvbnMgaGF2ZSB0aGVyZWZvcmUgZXZvbHZlZCBzaW5jZSB0aGUg YmVnaW5uaW5ncworb2Ygd3JpdGluZywgYW5kIGFyZSBoaWdobHkgZm9ybWFsaXplZCBpbiBtYW55 IGRvbWFpbnMuCisKK1RoZXNlIGNvbnZlbnRpb25zLCBhbnN3ZXJpbmcgZGlmZmVyZW50IG5lZWRz IGluIGRpZmZlcmVudCBkb21haW5zLCBhcmUKK2RpZmZlcmVudCBmcm9tIGRvbWFpbiB0byBkb21h aW4uIEZvciB2YXJpb3VzIHJlYXNvbnMsIHRoZXkgYWxzbyB2YXJ5CithY2NvcmRpbmcgdG8gdGhl IGludGVuZGVkIHVzZSBvZiB0aGUgd3JpdGluZyAoYWNhZGVtaWMgd29yaywKK3NjaWVudGlmaWMg cGFwZXIsIHJlcG9ydCwgam91cm5hbCBhcnRpY2xlLCBib29rIG9yIGJvb2sgY2hhcHRlciwKK2V0 Yy4uLikuICBGb2xsb3dpbmcgdGhlc2Ugc2V0cyBvZiBjb252ZW50aW9ucyAoYWthIC9zdHlsZXMv KSBjYW4gYmUKK2hpZ2hseSBsYWJvciBpbnRlbnNpdmUuCisKKz1Pcmc9IGJpYmxpb2dyYXBoaWMg dG9vbHMgdXNlIHNldHMgb2YgcmVmZXJlbmNlIGluZm9ybWF0aW9ucyBhbmQKK2Zvcm1hdHRpbmcg ZGlyZWN0aXZlcyB0byBlYXNpbHkgaW5zZXJ0IHN1Y2NpbmN0IGluZGljYXRpb25zIG9mIGEgd29y aworYW5kIGZvcmF0IHRoZW1pbnRvIHN0eWxlLWNvbXBsaWFudCBjaXRhdGlvbiBhbmQgcmVmZXJl bmNlIGFuZCBpbnNlcnQKK3RoZW0gaW4gdGhlIGNvcnJlY3QgcGxhY2UgaW4gdGhlIHRleHQuCisK KyoqIE92ZXJ2aWV3Cis6UFJPUEVSVElFUzoKKzpERVNDUklQVElPTjogQmFzaWMgY29uY2VwdHMg b2YgY2l0YXRpb24gaGFuZGxpbmcKKzpFTkQ6CisjK2NpbmRleDogYmlibGlvZ3JhcGh5CisjK2Np bmRleDogY2l0YXRpb24KKyMrY2luZGV4OiByZWZlcmVuY2UKKyMrY2luZGV4OiBzdHlsZQorCitB IGZldyBkZWZpbml0aW9ucyBhcmUgaW4gb3JkZXIgOgorCisgICogQmlibGlvZ3JhcGh5IDo6IENv bmNlcHR1YWxseSwgaXQgaXMgdGhlIHNldCBvZiAvYWxsLyBwcmV2aW91cworICAgIHdvcmtzIHN1 cHBvcnRpbmcgb25lJ3Mgd29yaywgL3doZXRoZXIgeW91IGNpdGUgdGhlbSBleHBsaWNpdGx5IG9y CisgICAgbm90Ly4gSXQgbWlnaHQgYWxzbyBkZW5vdGUgYSBsaXN0IG9mIGFsbCBzdWNoIHdvcmss IHBvc3NpYmx5IHdpdGgKKyAgICBub3RlcyByZWxhdGVkIHRvIGVhY2ggb2YgdGhlbS4KKworICAg IFRoaXMgd29yZCBhbHNvIGRlbm90ZXMgYSBiaWJsaW9ncmFwaHkgbGlzdCByZWZlcnJpbmcgL2Fs bC8gdGhlCisgICAgd29ya3MgKGNpdGVkIG9yIG5vdCkgdXNlZCBpbiB0aGUgZGV2ZWxvcG1lbnQg b2Ygb25lJ3Mgd29yayA7IHRoaXMKKyAgICBpcyBhIHJlcXVpcmVtZW50IG9mIHNvbWUgKG1vc3Rs eSBzY2hvbGFybHkpIHN0eWxlcy4KKworICAqIFJlZmVyZW5jZSA6OiBUaGUgaW5mb3JtYXRpb24g dGhlIGluZm9ybWF0aW9uIHBlcnRhaW5pbmcgdG8gYSBnaXZlbgorICAgIHdvcmssIG5lY2Vzc2Fy eSBhbiBzdWZmaWNpZW50IHRvIHJldHJpZXZlIGl0LCBmb3JtYXR0ZWQgYWNjb3JkaW5nCisgICAg dG8gc29tZSBmaXhlZCBzZXQgb2YgY29udmVudGlvbnMuCisKKyAgKiBDaXRhdGlvbiA6OiBUaGUg YWN0IG9mIHJlZmVycmluZyBjb25jaXNlbHkgdGhlIHJlYWRlciB0byBhIGdpdmVuCisgICAgd29y aywgcG9zc2libHkgYWRhcHRlZCB0byB0aGUgY2l0aW5nIGNvbnRleHQgKGdyYW1tYXRpY2FsLAor ICAgIHN5bnRhY3RpYyBhbmQgc3R5bGlzdGljIGNvbnN0cmFpbnRzKS4KKworICAqIFN0eWxlIDo6 IFRoZSBzZXQgb2YgY29udmVudGlvbnMgdXNlZCB0byBmb3JtYXQgYSBjaXRhdGlvbiBvciBhCisg ICAgcmVmZXJlbmNlLCBhbGxvd2luZyBmb3IgYnJldml0eSwgZWFzZSBvZiByZWFkaW5nIGFuZCBl YXNlIG9mIHVzZQorICAgIGluIGEgZ2l2ZW4gY29udGV4dC4KKworICAqIFJlZmVyZW5jZXMgbGlz dCA6OiBhIGxpc3Qgb2YgYWxsIHdvcmtzIC9leHBsaWNpdGx5IGNpdGVkLyBpbgorICAgIHRoZSB0 ZXh0LCBmb3JtYXR0ZWQgYWNjb3JkaW5nIHRvIGEgZ2l2ZW4gc3R5bGUuCisKKyAgICBJbiBzb21l IHN0eWxlcyB1c2luZyBmb290bm90ZXMgdG8gY2FycnkgcmVmZXJlbmNlcywgdGhlIHJlZmVyZW5j ZXMKKyAgICBsaXN0IGlzIG9wdGlvbmFsIG9yIGFic2VudC4KKworRnJvbSA9T3JnPSBwb2ludCBv ZiB2aWV3LCB0aGUgY2VudHJhbCBlbGVtZW50IGlzIHRoZSAvY2l0YXRpb24vLCB3aGljaAoraXMg ZG9uZSBieSBpbnNlcnRpbmcgYSAvY2l0YXRpb24gbGluay8gYXQgdGhlIHBsYWNlIG9mIHlvdXIg dGV4dCB5b3UKK3dhbnQgdG8gc2VlIHRoaXMgY2l0YXRpb24gYXBwZWFyLiA9T3JnPSB3aWxsIG1h bmFnZSB0aGUgZ2VuZXJhdGlvbiBvZgorY2l0YXRpb24ocykgYW5kIHRoZSBpbnNlcnRpb24gb2Yg dGhlIGNvcnJlc3BvbmRpbmcgcmVmZXJlbmNlIGluIGEKK2Zvb3Rub3RlIG9yIHJlZmVyZW5jZSBs aXN0LiBUaGUgc3BlY2lmaWNhdGlvbiBvZiB0aGUgYmlibGlvZ3JhcGh5LCB0aGUgY2l0YXRpb24g YW5kIHJlZmVyZW5jZSBzdHlsZXMgYW5kIHRoZSBwb3NpdGlvbiBvZiBhbiBldmVudHVhbCByZWZl cmVuY2UgbGlzdCBpcyBzdXBwb3J0aW5nIGluZm9ybWF0aW9uLgorCitUaGlzIC9tb2R1cyBvcGVy YW5kaS8gaXMsIG5vdCBjb2luY2lkZW50YWxseSwgY2xvc2UgdG8gd2hhdCBpcyB1c2VkIGluCitw cmV2aW91cyB0ZXh0IHByb2Nlc3Npbmcgc3lzdGVtcyBzdWNoIGFzIExhVGVYIG9yID1tYXJrZG93 bj0KK2V4dGVuc2lvbnMgc3VjaCBhcyA9cGFuZG9jPS4gVGhpcyBjb21wYXRpYmlsaXR5IGlzIGVu aGFuY2VkIGJ5IHRoZSB1c2Ugb2Ygc2V2ZXJhbCAvYmFja2VuZHMvLCBhZGFwdGVkIHRvIHRoZSBy ZS11c2Ugb2YgdmFyaW91cyBkYXRhIGFuZCBmb3JtYXQgZmlsZXMuCisKKyoqIEJpYmxpb2dyYXBo eQorOlBST1BFUlRJRVM6Cis6REVTQ1JJUFRJT046IEJpYmxpb2dyYXBoaWNhbCBzb3VyY2VzIHNw ZWNpZmljYXRpb25zCis6RU5EOgorCitUaGUgKmJpYmxpb2dyYXBoeSogaXMgYSAoc2V0IG9mKSBm aWxlKHMpIHNwZWNpZmllZDoKKyAgKiBieSBzZXR0aW5nIHRoZSA9b3JnLWNpdGUtZ2xvYmFsLWJp Ymxpb2dyYXBoeT0gdmFyaWFibGUsIGFuZC9vcgorICAqIGJ5IG9uZSBvciBtb3JlIHVzZXMgb2Yg dGhlIGtleXdvcmQgPSMrYmlibGlvZ3JhcGh5Oj0gOgorCisjK2JlZ2luX2V4YW1wbGUKKyMrYmli bGlvZ3JhcGh5OiBTb21lRmlsZS5iaWIKKyMrYmlibGlvZ3JhcGh5OiAvc29tZS9vdGhlci9maWxl Lmpzb24KKyMrYmlibGlvZ3JhcGh5OiAiL3NvbWUvZmlsZS93aXRoIHNwYWNlcy9pbiBpdHMgbmFt ZS5iaWIiCisjK2VuZF9leGFtcGxlCisKKyA9T3JnPSBjYW4gdHJlYXQgc2V2ZXJhbCBiaWJsaW9n cmFwaGljIGZpbGUgZm9ybWF0czoKKyAgKiA9YmliPSA6OiB0aGUgZmlsZSBmb3JtYXQgdXNlZCBi eSA9YmlidGV4PSBhbmQgPWJpYmVyPSwgdGhlIGJpYmxpb2dyYXBoeSBjb21waWxlcnMgdXNlZCBp biBjb25qdW5jdGlvbiB3aXRoIExhVGVYLCBhbHNvIHVzZWQgYnkgc2V2ZXJhbCB0ZXh0IHByb2Nl c3NvciBzdWNoIGFzID1wYW5kb2M9IDsKKyAgKiA9anNvbj0gOjogYSBqYXZhc2NyaXB0LWNvbXBh dGlibGUgd3JhcHBpbmcgb2YgYW4gWE1MIGVuY29kaW5nIG9mIGJpYmxpb2dyYXBoaWMgZGF0YS4K KworKiogU3R5bGVzLCBiaWJsaW9ncmFoaWMgYmFja2VuZHMKKworVGhlcmUgYXJlIG1hbnkgc2V0 cyBvZiBjb252ZW50aW9ucyB1c2VkIHRvIGRlbm90ZSBhIGNpdGF0aW9uIGluIGEgdGV4dAorKHRo ZSAvY2l0YXRpb24gc3R5bGUvKSwgYXMgd2VsbCBhcyB0byBmb3JtYXQgdGhlIGNvcnJlc3BvbmRp bmcKK3JlZmVyZW5jZSAodGhlIC9yZWZlcmVuY2Ugc3R5bGUvKS4gSGVyZSBhcmUgc29tZSBleGFt cGxlcyA6CisgICogTnVtZXJpYyA6OiBjaXRhdGlvbnMgYXJlIG51bWJlcmVkICh1c3VhbGx5IGJ5 IHRoZWlyIG9yZGVyIG9mCisgICAgYXBwZWFyYW5jZSBfbiB0aGUgdGV4dCwgYW5kIHRoYXQgbnVt YmVyICh1c3VhbGx5IHR5cGVzZXQgaW4gYQorICAgIGZhc2hpb24gZGlzdGluZ3Vpc2hpbmcgaXQg ZnJvbSB0aGUgc3Vycm91bmRpbmcgdGV4dCkgZGVub3RlcyB0aGUKKyAgICBjaXRhdGlvbi4KKyAg KiBMYWJlbCA6OiB0aGUgbmFtZXMocykgb2YgdGhlIGF1dGhvcihzKSAoYW5kIHBvc3NpYmx5IHRo ZSB5ZWFyIG9mCisgICAgcHVibGljYXRpb24pIGFyZSB1c2VkIHRvIGRlcml2ZSBhIHVuaXF1ZSBs YWJlbCBkZW5vdGluZyB0aGUKKyAgICBjaXRhdGlvbi4KKyAgKiBBdXRob3IteWVhciA6OiBhIGNp dGF0aW9uIGlzIGRlbm90ZWQgYnkgdGhlIChsYXN0KSBuYW1lIG9mIHRoZQorICAgIChmaXJzdCkg YXV0aG9yIGFuZCB0aGUgeWVhciBvZiBwdWJsaWNhdGlvbiwgdHlwZXNldCB3aXRoCisgICAgc2Vw YXJhdG9ycyBkaXN0aW5ndWlzdGhpbmcgdGhlIGNpdGF0aW9uIGZyb20gdGhlIHN1cnJvdW5kaW5n IHRleHQKKyAgICAodXN1YWxseSBwYXJlbnRoZXNlcyBvciBicmFja2V0cykuCisKKyAgICBUaGUg bGF0dGVyIGNpdGF0aW9uIHN0eWxlIG1heSBiZSBzdWJqZWN0IHRvIHN0eWxpc3RpYyB2YXJpYXRp b25zCisgICAgYWNjb3JkaW5nIHRvIGl0cyBwbGFjZSBpbiB0aGUgdGV4dC4gRm9yIGV4YW1wbGUs IHRoZSBuYW1lIG9mIHRoZQorICAgIGF1dGhvciBtYXkgYmUgdXNlZCB0ZXh0dWFsbHksIGFuZCB0 aGUgY2l0YXRpb24gaXMgcmVkdWNlZCB0byB0aGUKKyAgICBwdWJsaWNhdGlvbiBkYXRlLgorCitT aW1pbGFybHksIHRoZSByZWZlcmVuY2VzLCByZWxhdGVkIHRvIHRoZSB0ZXh0IGJ5IGEgY29tbW9u IGNpdGF0aW9uLAorY2FuIGJlIHBsYWNlZCBpbiBmb290bm90ZXMgYW5kL29yIGdyb3VwZWQgaW4g b25lIG9yIHNldmVyYWwgL3JlZmVyZW5jZQorbGlzdChzKS8uCisKK1RoZXJlIGFsc28gZXhpc3Qg bnVtZXJvdXMgc2V0cyBvZiBjb252ZW50aW9ucyBmb3IgdGhlIGZvcm1hdHRpbmcgb2YKK3JlZmVy ZW5jZXMgKHRoZSAvcmVmZXJlbmNlIHN0eWxlLyksIHNwZWNpZnlpbmcgdGhlIHR5cGVzZXR0aW5n IGFuZAorcHVuY3R1YXRpb24gb2YgdGhlIHBhcnRzIG9mIHRoZSByZWZlcmVuY2UsIGFjY29yZGlu ZyB0byB0aGUgbmF0dXJlIG9mCit0aGUgd29yayByZWZlcmVuY2VkIGNvbnZldGlvbnMgYXJlIGRp ZmZlcmVudCBmb3IsIHNheSwgYm9va3MsIGpvdXJuYWwKK2FydGljbGVzIGFuZCBmaWxtcyBiZWNh dXNlIHRoZSB3YXlzIHRoZXNlIGRvY3VtZW50cyBhcmUgc3RvcmVkIGFuZAorcmV0cmlldmVkIGFy ZSBkaWZmZXJlbnQpLgorCitUaGUgY2l0YXRpb24gYW5kIHJlZmVyZW5jZSBzdHlsZXMgaGF2ZSB0 byBiZSBjb25zaXN0ZW50LiBGb3IgZXhhbXBsZSA6CisKKyAgKiBhIG51bWVyaWMgY2l0YXRpb24g c3R5bGUgaW1wbGllcyB0aGUgcHJlc2VuY2Ugb2YgYSBudW1lcmljCisgICAgcmVmZXJlbmNlIGlu IHRoZSByZWZlcmVuY2VzIGxpc3QgYW5kICh1c3VhbGx5KSBzb3J0aW5nIHRoZSBsYXR0ZXIKKyAg ICBpbiAoZmlyc3QpIGNpdGF0aW9uIG9yZGVyIDsKKworICAqIGEgbGFiZWwgY2l0YXRpb24gc3R5 bGUgaW1wbGllcyB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgc2FtZSBsYWJlbCBpbgorICAgIHRoZSBy ZWZlcmVuY2UgbGlzdCAoYW5kLCB1c3VhbGx5LCB1c2luZyB0aGlzIGxhYmVsIHRvIHNvcnQgdGhl CisgICAgcmVmZXJlbmNlIGxpc3QpIDsKKworICAqIGFuIGF1dGhvci15ZWFyIGNpdGF0aW9uIHN0 eWxlIGltcGxpZXMgc29ydGluZyB0aGUgcmVmZXJlbmNlIGxpc3QKKyAgICAoaWYgYW55KSBpbiB0 aGUgc2FtZSBmYXNoaW9uLgorCitUaGUgYXZhaWxhYmxlIHN0eWxlcyBkZXBlbmQgb24gdGhlIHNw ZWNpZmljIGVuZ2luZSAodGhlCitiaWJpYmxpb2dyYXBoaWMgL2JhY2tlbmQvIHVzZWQgdG8gZm9y bWF0IHRoZSByZWZlcmVuY2VzIGFuZAorYmlibGlvZ3JhcGhpZXMpLgorCitBdCB0aGUgdGltZSBv ZiB0aGlzIHdyaXRpbmcsIGZvdXIgYmlibGlvZ3JhaGljIGJhY2tlbmRzIGFyZSBhdmFpbGFibGUg OgorCisgICogVHdvIGJhY2tlbmRzIGNhbiBleHBvcnQgdG8gYSB2YXJpZXR5IG9mIGZvcm1hdHMs IGluY2x1ZGluZyA9bGF0ZXg9CisgICAgKHRoZXJlZm9yZSA9cGRmPSksID1odG1sPSwgPW9kdD0g YW5kIHBsYWluIChVVEY4KSB0ZXh0IDoKKworICAgIC0gYmFzaWMgOjogYSBiYXNpYyBiYWNrZW5k LCB3ZWxsIGFkYXB0ZWQgdG8gc2l0dWF0aW9ucyB3aGVyZQorICAgICAgYmFja3dhcmQgY29tcGF0 aWJpbGl0eSBpcyBub3QgYSByZXF1aXJlbWVudCBhbmQgZm9ybWF0dGluZyBuZWVkcworICAgICAg YXJlIG1pbmltYWwgOworCisgICAgLSBjc2wgOjogdGhpcyBiYWNrZW5kIHVzZXMgZm9ybWF0IGZp bGVzIHdyaXR0ZW4gaW4gW1todHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9DaXRhdGlvbl9T dHlsZV9MYW5ndWFnZV1bQ2l0YXRpb24gU3R5bGUKKyAgICAgIExhbmd1YWdlXV0sIGFuIFhNTC1i YXNlZCBiaWJsaW9ncmFwaGljIHN0eWxlIGRlc2NyaXB0aW9uIGZvcm1hdCwKKyAgICAgIHVzZWQg aW4gdmFyaW91cyB3b3JkIHByb2Nlc3NvcnMgc3VjaCBhcyBXb3JkIGFuZCBMaWJyZU9mZmljZSwK KyAgICAgIGFuZCBoYXMgYmVlbiB3aWRlbHkgYWRvcHRlZCBieSBwdWJsaXNoZXJzLCB3aGljaCBw dWJsaXNoIHRoZWlyCisgICAgICBwcmVmZXJyZWQgZm9ybWF0cyBhbG9uZyB3aXRoIHRoZWlyICJJ bnN0cnVjdGlvbnMgdG8gQXV0aG9ycyIuCisKKyAgKiBJbiBjb250cmFzdCwgdHdvIG90aGVyIHVz ZSBMYVRlWCBiaWJsaW9ncmFwaGljIHRvb2xzIGluc3RhbGxlZCBvbgorICAgIHlvdXIgY29tcHV0 ZXIgKHRodXMgcHJvdmlkaW5nIHJlc3VsdHMgaWRlbnRpY2FsIHRvIHRob3NlIG9idGFpbmVkCisg ICAgYnkgdGhlc2UgdG9vbHMgaW4gYSBMYVRlWCBkb2N1bWVudCksIGJ1dCBleHBvcnQgb25seSB0 byBMYVRlWCBhbmQKKyAgICBMYVRlWC1kZXJpdmVkIGZvcm1hdHMgOgorCisgICAgLSBuYXRiaWIg OjogdGhpcyBiYWNrZW5kIHVzZXMgPWJpYnRleD0sIHRoZSBoaXN0b3JpY2FsCisgICAgICBiaWJs aW9ncmFwaGljIHByb2Nlc3NvciB1c2VkIHdpdGggTGFUZVgsIHRodXMgYWxsb3dpbmcgdGhlIHVz ZQorICAgICAgb2YgZGF0YSBhbmQgc3R5bGUgZmlsZXMgY29tcGF0aWJsZSB3aXRoIHRoaXMgcHJv Y2Vzc29yCisgICAgICAoaW5jbHVkaW5nIGEgbGFyZ2UgbnVtYmVyIG9mIHB1Ymxpc2hlcnMnIHN0 eWxlcykuIEl0IHVzZXMgdGhlCisgICAgICBjaXRpbmcgY29tbWFuZHMgaW1wbGVtZW50ZWQgaW4g dGhlIExhVGVYIHBhY2thZ2UgPW5hdGJpYj0sCisgICAgICBhbGxvd2luZyBtb3JlIHN0eWxpc3Rp YyB2YXJpYW50cyB0aGF0IExhVGVYJ3MgPVxjaXRlPSBjb21tYW5kLgorCisgICAgLSBiaWJsYXRl eCA6OiB0aGlzIGJhY2tlbmQgYWxsb3dzIHRoZSB1c2Ugb2YgZGF0YSBhbmQgZm9ybWF0cworICAg ICAgcHJlcGFyZWQgZm9yID1iaWJsYXRleD0sIGFuIGFsdGVybmF0ZSBiaWJsaW9ncmFwaGljIHBy b2Nlc3NvcgorICAgICAgdXNlZCB3aXRoIExhVGVYLCB3aGljaCBvdmVyY29tZXMgc29tZSBzZXJp b3VzID1iaWJ0ZXg9CisgICAgICBsaW1pdGF0aW9ucywgYnV0IGhhcyBub3QgKHlldCA/KSBiZWVu IHdpZGVseSBhZG9wdGVkIGJ5CisgICAgICBwdWJsaXNoZXJzLgorCisKK1RoZSBiYWNrZW5kIGFu ZCB0aGUgY2l0YXRpb24gKGFuZCBwb3NzaWJseSByZWZlcmVuY2UpIHN0eWxlKHMpIGFyZSBzcGVj aWZpZWQgYnkgdGhlID0jK2NpdGVfZXhwb3J0Oj0ga2V5d29yZCAoYWxsIGFyZ3VtZW50cyBhcmUg b3B0aW9uYWwpIDsgZm9yIGV4YW1wbGUgOiAKKworIytiZWdpbl9leGFtcGxlCisjK2NpdGVfZXhw b3J0OiBiYXNpYyBhdXRob3IgYXV0aG9yLXllYXIKKyMrZW5kX2V4YW1wbGUKKworc3BlY2lmaWVz IG1hbmFnZW1lbnQgYnkgdGhlIGJhc2ljIGJhY2tlbmQgd2l0aCBjaXRhdGlvbnMgaW5zZXJ0ZWQg YXMgYXV0aG9yJ3MgbmFtZSBhbmQgcmVmZXJlbmNlcyBpbmRleGVkIGJ5IGF1dGhvcidzIG5hbWVz IGFuZCB5ZWFyIDsKKworIytiZWdpbl9leGFtcGxlCisjK2NpdGVfZXhwb3J0OiBjc2wgL3NvbWUv cGF0aC90by92YW5jb3V2ZXItYnJhY2tldHMuY3NsCisjK2VuZF9leGFtcGxlCisKK3NwZWNpZmll cyBudW1lcmljIGNpdGF0aW9ucyBhbmQgbnVtZXJpYyByZWZlcmVuY2VzIGFjY29yZGluZyB0byB0 aGUgPVZhbmNvdXZlcj0gc3BlY2lmaWNhdGlvbiAoYXMgc3R5bGUgdXNlZCBpbiBtYW55IG1lZGlj YWwgam91cm5hbHMpLCBmb2xsb3dpbmcgYSB0eXBlc2V0dGluZyB2YXJpYXRpb24gcHV0dGluZyBj aXRhdGlvbnMgYmV0d2VlbiBicmFja2V0cyA7CisKKyMrYmVnaW5fZXhhbXBsZQorIytjaXRlX2V4 cG9ydDogbmF0YmliIGtsdXdlcgorIytlbmRfZXhhbXBsZQorCitzcGVjaWZpZXMgYSBsYWJlbCBj aXRhdGlvbiBzdHlsZSBjb25mb3JtYW50IHRvIHRoZSBIYXJ2YXJkIHN0eWxlIGFuZCB0aGUgc3Bl Y2lmaWNhdGlvbiBvZiB0aGUgV29sa2Vycy1LbHV3ZXIgcHVibGlzaGVyIDsgc2luY2UgaXQgcmVs aWVzIG9uIHRoZSA9YmlidGV4PSBwcm9jZXNzb3Igb2YgeW91ciBMYVRlWCBpbnN0YWxsYXRpb24s IGl0IHdvbid0IGV4cG9ydCB0byBhbnl0aGluZyBidXQgUERGLgorCisqKiBDaXRhdGlvbnMKKwor QSAvY2l0YXRpb24gbGluay8gaXMgYnVpbHQgYXJvdW5kIG9uZSBvciBtb3JlIGNpdGF0aW9uIC9r ZXkocykvLCBlbGVtZW50cyBpZGVudGlmeWluZyBhIHJlZmVyZW5jZSBpbiB0aGUgYmlibGlvZ3Jh cGh5LgorCisgICogRWFjaCBjaXRhdGlvbiBsaW5rIGlzIHN1cnJvdW5kZWQgYnkgYnJhY2tldHMg YW5kIHVzZXMgdGhlID1jaXRlPSB0eXBlLgorCisgICogRWFjaCBrZXlzIHN0YXJ0cyB3aXRoIHRo ZSBjaGFyYWN0ZXIgPUA9IChhIGNvbnZlbnRpb24gaW5oZXJpdGVkCisgICAgZnJvbSA9YmlidGV4 PSkuCisKKyAgKiBFYWNoIGtleSBjYW4gYmUgcXVhbGlmaWVkIGJ5IGEgL3ByZWZpeC8gKGUuIGcu ICJzZWUgIikgYW5kL29yIGEKKyAgICAvc3VmZml4LyAoZS4gZy4gInAuIDEyMyIpLCBnaXZpbmcg aW5mb3JtYXRpb25zIHVzZWZ1bCBvciBuZWNlc3NhcnkKKyAgICBmbyB0aGUgY29tcHJlaGVuc2lv biBvZiB0aGUgY2l0YXRpb24gYnV0IG5vdCBpbmNsdWRlZCBpbiB0aGUKKyAgICByZWZlcmVuY2Uu CisKKyAgKiBBIHNpbmdsZSBjaXRhdGlvbiBjYW4gY2l0ZSBtb3JlIHRoYW4gb25lIHJlZmVyZW5j ZSA7IHRoZSBrZXlzIGFyZQorICAgIHNlcGFyYXRlZCBieSBzZW1pY29sb25zIDsgdGhlIGZvcm1h dHRpbmcgb2Ygc3VjaCBjaXRhdGlvbiBncm91cHMKKyAgICBpcyBzcGVjaWZpZWQgYnkgdGhlIHN0 eWxlLgorCisgICogT25lIGNhbiBhbHNvIHNwZWNpZnkgYSBzdHlsaXN0aWMgdmFyaWF0aW9uIGZv ciB0aGUgY2l0YXRpb25zIGJ5CisgICAgaW5zZXJ0aW5nIGEgPS89IGFuZCBhIHN0eWxlIG5hbWUg YmV0d2VlbiB0aGUgPWNpdGU9IGtleXdvcmQgYW5kIHRoZQorICAgIGNvbG9uIDsgdGhpcyB1c2lh bGx5IG1ha2VzIHNlbnNlIG9ubHkgZm9yIHRoZSBhdXRob3IteWVhciBzdHlsZXMuCisKKyMrYmVn aW5fZXhhbXBsZQorW2NpdGUvc3R5bGU6Y29tbW9uIHByZWZpeCA7cHJlZml4IEBrZXkgc3VmZml4 OyAuLi4gOyBjb21tb24gc3VmZml4XQorIytlbmRfZXhhbXBsZQorCitUaGUgb25seSBtYW5kYXRv cnkgZWxlbWVudHMgYXJlIDoKKyAgLSB0aGUgPWNpdGU9IGtleXdvcmQgYW5kIHRoZSBjb2xvbiA7 CisgIC0gdGhlID1APSBjaGFyYWN0ZXIgaW1tZWRpYXRlbHkgcHJlY2VkaW5nIGVhY2gga2V5IDsK KyAgLSB0aGUgYnJhY2tldHMgc3Vycm91bmRpbmcgdGhlIGNpdGF0aW9uKHMpIChncm91cCkKKwor L1Bvc3NpYmx5IGdpdmUgZXhhbXBsZXMgb2YgdGhlIHByZWZpeGVzLCBzdWZmaXhlcyBhbmQgc3R5 bGlzdGljIHZhcmlhdGlvbnMuLi4vCisKICogTWlzY2VsbGFuZW91cwogOlBST1BFUlRJRVM6CiA6 REVTQ1JJUFRJT046IEFsbCB0aGUgcmVzdCB3aGljaCBkaWQgbm90IGZpdCBlbHNld2hlcmUuCi0t IAoyLjMzLjAKCg== --=-AZbiKKSp0gHmj/qzTY5K--