From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: "Ben Phipathananunth" Newsgroups: gmane.emacs.devel Subject: Org Mode Documentation Patch Date: Fri, 22 Jun 2018 16:08:35 +0000 Message-ID: <34982f421aec69d062d32c0c36bbcddf@disroot.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="--=_RainLoop_931_738430460.1529683715" X-Trace: blaine.gmane.org 1529683638 20218 195.159.176.226 (22 Jun 2018 16:07:18 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 22 Jun 2018 16:07:18 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 22 18:07:14 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fWOaf-0005A4-TP for ged-emacs-devel@m.gmane.org; Fri, 22 Jun 2018 18:07:14 +0200 Original-Received: from localhost ([::1]:35132 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fWOcn-0004Xn-A1 for ged-emacs-devel@m.gmane.org; Fri, 22 Jun 2018 12:09:25 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38001) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fWOc7-0004Xf-8T for emacs-devel@gnu.org; Fri, 22 Jun 2018 12:08:44 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fWOc4-0008Uu-01 for emacs-devel@gnu.org; Fri, 22 Jun 2018 12:08:43 -0400 Original-Received: from knopi.disroot.org ([178.21.23.139]:59852) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fWOc3-0008UE-4l for emacs-devel@gnu.org; Fri, 22 Jun 2018 12:08:39 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 8F7A026C38 for ; Fri, 22 Jun 2018 18:08:36 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1529683716; bh=eji0dVAjdJvt9yoy3xBtV8wZP1rmqrK8uywfJKtp/MM=; h=Date:From:Subject:To; b=cjhVNCzx8wr9enn7BigPaSmd8Ovkd5UmQA+s8w86kQKcf4M4KIrJ/tIdIkh/8khfG in4cAdbVkINRiOZN6YrrYC1lCaVwfarOyFAaM/cdEsCkn+1jscUZEbUoalaW4oj7GO 4cA7dkb1LUNwaFOLsnHvDk0TC8rEwyB4sEI54JFfiVvkfrzAs559S4kjWUbWvoLp1a HM/jKEb+3iQqjvSuy58H/BJQvZWL/R9Ql3CBaXoWZ1BR1zlzd3eKi32crY9/aur5Bl dfpWrzhdWP0/49O7BMawG3rHMjlWMpOdvYnWIVpaQWE//pk2XE5Dy6P7Prhr2WVgF8 guc/i9dhzyiiw== X-Virus-Scanned: Debian amavisd-new at disroot.org Original-Received: from knopi.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id e2EdC5MOa0SB for ; Fri, 22 Jun 2018 18:08:35 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1529683715; bh=eji0dVAjdJvt9yoy3xBtV8wZP1rmqrK8uywfJKtp/MM=; h=Date:From:Subject:To; b=HkN++QGlw/AvOp0Nwk0TiZNh5LWSOfh45XYz0aiJWzLi5xDi6/hKRoL1qbiwvFWLt tRpNF+lbwrHktTENIb0GP57PysMaIvX0NIqjP4xEVp5qeMEMTCTHhowtAHZrWy3jpI MvO6bJOH8wWBLB6GMdbpLkY1pU/xxNdTo5vl6PBqcRR8gzOWD/pqSvQ4mmTu4tfkzp /MWgwt4M8AX7q8Ae//NdCljy2tFI+VxHDBDu+Dyjop877svKrWdf8eoVY1CGNivaEd I0vJwPai+U0lB5L6MyFcwE/zHgiwUcHddXGVJwukEPbV7LfZmL7txRYKMCbf63uGwn 8RsJhRz85Y88g== X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 178.21.23.139 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:226592 Archived-At: ----=_RainLoop_931_738430460.1529683715 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable I've begun reading the Org Mode manual, and noticed that the wording=0Ain= some places could be improved (so far I've read up to Section 4.8).=0AI'= ve attached my patch. Some of the more drastic changes:=0A=0A- Changed a= ll occurrences of "the cursor" to "point", I thought the=0A inconsistenc= y was confusing, especially since the Emacs manual=0A maintains usage of= "point" throughout, so too should the Org Mode=0A manual.=0A=0AI have a= couple of questions regarding the Org Mode manual and=0Asubmitting patch= es:=0A=0ASection 4.6 "Link abbreviations" in the Org Mode manual link to= =0Awebsites that have and/or promote non-free software. The URLs are=0Au= sed to illustrate link abbreviations in Org Mode, but I suppose this=0Awa= s purely coincidental because long URLs to websites such as=0Agnu.org/som= e/long/path could be used instead. Would it be appropriate=0Ato change t= he examples in a later patch?=0A=0AWhen the PDF version of the Org Mode m= anual is generated with "make=0Adocs", the footnotes (3 and 4) around Sec= tion 4.3 are incorrectly=0Aindented, can anyone reproduce this? What is = causing it?=0A=0AShould I submit my patches as smaller ones as I read sec= tions of the=0Amanual or bulk them together into a larger patch, or is it= just a=0Amatter of preference?=0A=0APlease let me know if you have any c= omments about the patch. It's my=0Afirst one, I hope I have followed the= CONTRIBUTING guide properly.=0A=0AThanks!=0A=0A--=0A=0ASiraphob (Ben) Ph= ipathananunth ----=_RainLoop_931_738430460.1529683715 Content-Type: application/octet-stream; name="0001-Fix-various-grammatical-errors-and-terminology.patch" Content-Disposition: attachment; filename="0001-Fix-various-grammatical-errors-and-terminology.patch" Content-Transfer-Encoding: base64 RnJvbSBkMzE0NWI5ZTRmMGJjMThhNjM4ZDBmYjQzNmNlYjY4YWI2OTRlNTNjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBCZW4gUGhpcGF0aGFuYW51bnRoIDxiZW5zaXJhcGhv YkBob3RtYWlsLmNvLnVrPgpEYXRlOiBGcmksIDIyIEp1biAyMDE4IDIyOjU4OjI3ICswNzAw ClN1YmplY3Q6IFtQQVRDSF0gRml4IHZhcmlvdXMgZ3JhbW1hdGljYWwgZXJyb3JzIGFuZCB0 ZXJtaW5vbG9neS4KCi0tLQogZG9jL21pc2Mvb3JnLnRleGkgfCAzNzIgKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE4 NyBpbnNlcnRpb25zKCspLCAxODUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL21p c2Mvb3JnLnRleGkgYi9kb2MvbWlzYy9vcmcudGV4aQppbmRleCAzYmNlMGRkNzM2Li4zMjhk YjMxOWEzIDEwMDY0NAotLS0gYS9kb2MvbWlzYy9vcmcudGV4aQorKysgYi9kb2MvbWlzYy9v cmcudGV4aQpAQCAtOTkwLDcgKzk5MCw3IEBAIEFjdGl2YXRpb24KIHVzZSBvZiB0aGlzLCB5 b3UgbmVlZCB0byBoYXZlIEBjb2Rle3RyYW5zaWVudC1tYXJrLW1vZGV9IHR1cm5lZCBvbiwg d2hpY2ggaXMKIHRoZSBkZWZhdWx0LiAgSWYgeW91IGRvIG5vdCBsaWtlIEBjb2Rle3RyYW5z aWVudC1tYXJrLW1vZGV9LCB5b3UgY2FuIGNyZWF0ZQogYW4gYWN0aXZlIHJlZ2lvbiBieSB1 c2luZyB0aGUgbW91c2UgdG8gc2VsZWN0IGEgcmVnaW9uLCBvciBwcmVzc2luZwotQGtiZHtD LUBrZXl7U1BDfX0gdHdpY2UgYmVmb3JlIG1vdmluZyB0aGUgY3Vyc29yLgorQGtiZHtDLUBr ZXl7U1BDfX0gdHdpY2UgYmVmb3JlIG1vdmluZyBwb2ludC4KIAogQG5vZGUgRmVlZGJhY2sK IEBzZWN0aW9uIEZlZWRiYWNrCkBAIC0xMjU3LDcgKzEyNTcsNyBAQCBHbG9iYWwgYW5kIGxv Y2FsIGN5Y2xpbmcKIEBlbmQgZXhhbXBsZQogCiBAdmluZGV4IG9yZy1jeWNsZS1lbXVsYXRl LXRhYgotVGhlIGN1cnNvciBtdXN0IGJlIG9uIGEgaGVhZGxpbmUgZm9yIHRoaXMgdG8gd29y a0Bmb290bm90ZXtzZWUsIGhvd2V2ZXIsCitQb2ludCBtdXN0IGJlIG9uIGEgaGVhZGxpbmUg Zm9yIHRoaXMgdG8gd29ya0Bmb290bm90ZXtzZWUsIGhvd2V2ZXIsCiB0aGUgb3B0aW9uIEBj b2Rle29yZy1jeWNsZS1lbXVsYXRlLXRhYn0ufS4KIAogQGNpbmRleCBnbG9iYWwgdmlzaWJp bGl0eSBzdGF0ZXMKQEAgLTE1MzgsOSArMTUzOCw4IEBAIFN0cnVjdHVyZSBlZGl0aW5nCiBk ZW1vdGlvbiB3b3JrIG9uIGFsbCBoZWFkbGluZXMgaW4gdGhlIHJlZ2lvbi4gIFRvIHNlbGVj dCBhIHJlZ2lvbiBvZgogaGVhZGxpbmVzLCBpdCBpcyBiZXN0IHRvIHBsYWNlIGJvdGggcG9p bnQgYW5kIG1hcmsgYXQgdGhlIGJlZ2lubmluZyBvZiBhCiBsaW5lLCBtYXJrIGF0IHRoZSBi ZWdpbm5pbmcgb2YgdGhlIGZpcnN0IGhlYWRsaW5lLCBhbmQgcG9pbnQgYXQgdGhlIGxpbmUK LWp1c3QgYWZ0ZXIgdGhlIGxhc3QgaGVhZGxpbmUgdG8gY2hhbmdlLiAgTm90ZSB0aGF0IHdo ZW4gdGhlIGN1cnNvciBpcwotaW5zaWRlIGEgdGFibGUgKEBweHJlZntUYWJsZXN9KSwgdGhl IE1ldGEtQ3Vyc29yIGtleXMgaGF2ZSBkaWZmZXJlbnQKLWZ1bmN0aW9uYWxpdHkuCitqdXN0 IGFmdGVyIHRoZSBsYXN0IGhlYWRsaW5lIHRvIGNoYW5nZS4gIE5vdGUgdGhhdCB3aGVuIHBv aW50IGlzIGluc2lkZSBhCit0YWJsZSAoQHB4cmVme1RhYmxlc30pLCB0aGUgTWV0YS1DdXJz b3Iga2V5cyBoYXZlIGRpZmZlcmVudCBmdW5jdGlvbmFsaXR5LgogCiAKIEBub2RlIFNwYXJz ZSB0cmVlcwpAQCAtMTY5NywyNCArMTY5NiwyNCBAQCBQbGFpbiBsaXN0cwogQGNvZGV7b3Jn LWxpc3QtaW5kZW50LW9mZnNldH0uCiAKIEB2aW5kZXggb3JnLWxpc3QtYXV0b21hdGljLXJ1 bGVzCi1UaGUgZm9sbG93aW5nIGNvbW1hbmRzIGFjdCBvbiBpdGVtcyB3aGVuIHRoZSBjdXJz b3IgaXMgaW4gdGhlIGZpcnN0IGxpbmUgb2YKLWFuIGl0ZW0gKHRoZSBsaW5lIHdpdGggdGhl IGJ1bGxldCBvciBudW1iZXIpLiAgU29tZSBvZiB0aGVtIGltcGx5IHRoZQorVGhlIGZvbGxv d2luZyBjb21tYW5kcyBhY3Qgb24gaXRlbXMgd2hlbiBwb2ludCBpcyBpbiB0aGUgZmlyc3Qg bGluZSBvZiBhbgoraXRlbSAodGhlIGxpbmUgd2l0aCB0aGUgYnVsbGV0IG9yIG51bWJlciku ICBTb21lIG9mIHRoZW0gaW1wbHkgdGhlCiBhcHBsaWNhdGlvbiBvZiBhdXRvbWF0aWMgcnVs ZXMgdG8ga2VlcCBsaXN0IHN0cnVjdHVyZSBpbnRhY3QuICBJZiBzb21lIG9mCi10aGVzZSBh Y3Rpb25zIGdldCBpbiB5b3VyIHdheSwgY29uZmlndXJlIEBjb2Rle29yZy1saXN0LWF1dG9t YXRpYy1ydWxlc30KLXRvIGRpc2FibGUgdGhlbSBpbmRpdmlkdWFsbHkuCit0aGVzZSBhY3Rp b25zIGdldCBpbiB5b3VyIHdheSwgY29uZmlndXJlIEBjb2Rle29yZy1saXN0LWF1dG9tYXRp Yy1ydWxlc30gdG8KK2Rpc2FibGUgdGhlbSBpbmRpdmlkdWFsbHkuCiAKIEB0YWJsZSBAYXNp cwogQG9yZ2NtZHtAa2V5e1RBQn0sb3JnLWN5Y2xlfQogQGNpbmRleCBjeWNsaW5nLCBpbiBw bGFpbiBsaXN0cwogQHZpbmRleCBvcmctY3ljbGUtaW5jbHVkZS1wbGFpbi1saXN0cwogSXRl bXMgY2FuIGJlIGZvbGRlZCBqdXN0IGxpa2UgaGVhZGxpbmUgbGV2ZWxzLiAgTm9ybWFsbHkg dGhpcyB3b3JrcyBvbmx5IGlmCi10aGUgY3Vyc29yIGlzIG9uIGEgcGxhaW4gbGlzdCBpdGVt LiAgRm9yIG1vcmUgZGV0YWlscywgc2VlIHRoZSB2YXJpYWJsZQorcG9pbnQgaXMgb24gYSBw bGFpbiBsaXN0IGl0ZW0uICBGb3IgbW9yZSBkZXRhaWxzLCBzZWUgdGhlIHZhcmlhYmxlCiBA Y29kZXtvcmctY3ljbGUtaW5jbHVkZS1wbGFpbi1saXN0c30uICBJZiB0aGlzIHZhcmlhYmxl IGlzIHNldCB0bwogQGNvZGV7aW50ZWdyYXRlfSwgcGxhaW4gbGlzdCBpdGVtcyB3aWxsIGJl IHRyZWF0ZWQgbGlrZSBsb3ctbGV2ZWwKIGhlYWRsaW5lcy4gIFRoZSBsZXZlbCBvZiBhbiBp dGVtIGlzIHRoZW4gZ2l2ZW4gYnkgdGhlIGluZGVudGF0aW9uIG9mIHRoZQotYnVsbGV0L251 bWJlci4gIEl0ZW1zIGFyZSBhbHdheXMgc3Vib3JkaW5hdGUgdG8gcmVhbCBoZWFkbGluZXMs IGhvd2V2ZXI7IHRoZQotaGllcmFyY2hpZXMgcmVtYWluIGNvbXBsZXRlbHkgc2VwYXJhdGVk LiAgSW4gYSBuZXcgaXRlbSB3aXRoIG5vIHRleHQgeWV0LCB0aGUKLWZpcnN0IEBrZXl7VEFC fSBkZW1vdGVzIHRoZSBpdGVtIHRvIGJlY29tZSBhIGNoaWxkIG9mIHRoZSBwcmV2aW91cwor YnVsbGV0L251bWJlci4gIEl0ZW1zIGFyZSBhbHdheXMgc3Vib3JkaW5hdGUgdG8gcmVhbCBo ZWFkbGluZXMsIGhvd2V2ZXI7Cit0aGUgaGllcmFyY2hpZXMgcmVtYWluIGNvbXBsZXRlbHkg c2VwYXJhdGVkLiAgSW4gYSBuZXcgaXRlbSB3aXRoIG5vIHRleHQKK3lldCwgdGhlIGZpcnN0 IEBrZXl7VEFCfSBkZW1vdGVzIHRoZSBpdGVtIHRvIGJlY29tZSBhIGNoaWxkIG9mIHRoZSBw cmV2aW91cwogb25lLiAgU3Vic2VxdWVudCBAa2V5e1RBQn1zIG1vdmUgdGhlIGl0ZW0gdG8g bWVhbmluZ2Z1bCBsZXZlbHMgaW4gdGhlIGxpc3QKIGFuZCBldmVudHVhbGx5IGdldCBpdCBi YWNrIHRvIGl0cyBpbml0aWFsIHBvc2l0aW9uLgogQG9yZ2NtZHtNLUBrZXl7UkVUfSxvcmct aW5zZXJ0LWhlYWRpbmd9CkBAIC0xODAzLDcgKzE4MDIsNyBAQCBQbGFpbiBsaXN0cwogQGtp bmRleCBTLVJJR0hUCiBAaXRlbSBTLUBrZXl7TEVGVH0vQGtleXtSSUdIVH0KIEB2aW5kZXgg b3JnLXN1cHBvcnQtc2hpZnQtc2VsZWN0Ci1UaGlzIGNvbW1hbmQgYWxzbyBjeWNsZXMgYnVs bGV0IHN0eWxlcyB3aGVuIHRoZSBjdXJzb3IgaW4gb24gdGhlIGJ1bGxldCBvcgorVGhpcyBj b21tYW5kIGFsc28gY3ljbGVzIGJ1bGxldCBzdHlsZXMgd2hlbiBwb2ludCBpcyBvbiB0aGUg YnVsbGV0IG9yCiBhbnl3aGVyZSBpbiBhbiBpdGVtIGxpbmUsIGRldGFpbHMgZGVwZW5kaW5n IG9uCiBAY29kZXtvcmctc3VwcG9ydC1zaGlmdC1zZWxlY3R9LgogQGtpbmRleCBDLWMgXgpA QCAtMTg0NCwxNSArMTg0MywxNSBAQCBEcmF3ZXJzCiBpbnRlcmNlcHQgQGtiZHtNLUBrZXl7 VEFCfX0gdG8gc3dpdGNoIHdpbmRvd3MuICBVc2UgQGtiZHtDLU0taX0gb3IKIEBrYmR7QGtl eXtFU0N9IEBrZXl7VEFCfX0gaW5zdGVhZCBmb3IgY29tcGxldGlvbiAoQHB4cmVme0NvbXBs ZXRpb259KS59LgogCi1WaXNpYmlsaXR5IGN5Y2xpbmcgKEBweHJlZntWaXNpYmlsaXR5IGN5 Y2xpbmd9KSBvbiB0aGUgaGVhZGxpbmUgd2lsbCBoaWRlIGFuZAotc2hvdyB0aGUgZW50cnks IGJ1dCBrZWVwIHRoZSBkcmF3ZXIgY29sbGFwc2VkIHRvIGEgc2luZ2xlIGxpbmUuICBJbiBv cmRlciB0bwotbG9vayBpbnNpZGUgdGhlIGRyYXdlciwgeW91IG5lZWQgdG8gbW92ZSB0aGUg Y3Vyc29yIHRvIHRoZSBkcmF3ZXIgbGluZSBhbmQKLXByZXNzIEBrZXl7VEFCfSB0aGVyZS4g IE9yZyBtb2RlIHVzZXMgdGhlIEBjb2Rle1BST1BFUlRJRVN9IGRyYXdlciBmb3IKLXN0b3Jp bmcgcHJvcGVydGllcyAoQHB4cmVme1Byb3BlcnRpZXMgYW5kIGNvbHVtbnN9KSwgYW5kIHlv dSBjYW4gYWxzbyBhcnJhbmdlCi1mb3Igc3RhdGUgY2hhbmdlIG5vdGVzIChAcHhyZWZ7VHJh Y2tpbmcgVE9ETyBzdGF0ZSBjaGFuZ2VzfSkgYW5kIGNsb2NrIHRpbWVzCi0oQHB4cmVme0Ns b2NraW5nIHdvcmsgdGltZX0pIHRvIGJlIHN0b3JlZCBpbiBhIGRyYXdlciBAY29kZXtMT0dC T09LfS4gIElmIHlvdQotd2FudCB0byBzdG9yZSBhIHF1aWNrIG5vdGUgaW4gdGhlIExPR0JP T0sgZHJhd2VyLCBpbiBhIHNpbWlsYXIgd2F5IHRvIHN0YXRlCi1jaGFuZ2VzLCB1c2UKK1Zp c2liaWxpdHkgY3ljbGluZyAoQHB4cmVme1Zpc2liaWxpdHkgY3ljbGluZ30pIG9uIHRoZSBo ZWFkbGluZSB3aWxsIGhpZGUKK2FuZCBzaG93IHRoZSBlbnRyeSwgYnV0IGtlZXAgdGhlIGRy YXdlciBjb2xsYXBzZWQgdG8gYSBzaW5nbGUgbGluZS4gIEluCitvcmRlciB0byBsb29rIGlu c2lkZSB0aGUgZHJhd2VyLCB5b3UgbmVlZCB0byBtb3ZlIHBvaW50IHRvIHRoZSBkcmF3ZXIg bGluZQorYW5kIHByZXNzIEBrZXl7VEFCfSB0aGVyZS4gIE9yZyBtb2RlIHVzZXMgdGhlIEBj b2Rle1BST1BFUlRJRVN9IGRyYXdlciBmb3IKK3N0b3JpbmcgcHJvcGVydGllcyAoQHB4cmVm e1Byb3BlcnRpZXMgYW5kIGNvbHVtbnN9KSwgYW5kIHlvdSBjYW4gYWxzbworYXJyYW5nZSBm b3Igc3RhdGUgY2hhbmdlIG5vdGVzIChAcHhyZWZ7VHJhY2tpbmcgVE9ETyBzdGF0ZSBjaGFu Z2VzfSkgYW5kCitjbG9jayB0aW1lcyAoQHB4cmVme0Nsb2NraW5nIHdvcmsgdGltZX0pIHRv IGJlIHN0b3JlZCBpbiBhIGRyYXdlcgorQGNvZGV7TE9HQk9PS30uICBJZiB5b3Ugd2FudCB0 byBzdG9yZSBhIHF1aWNrIG5vdGUgaW4gdGhlIExPR0JPT0sgZHJhd2VyLAoraW4gYSBzaW1p bGFyIHdheSB0byBzdGF0ZSBjaGFuZ2VzLCB1c2UKIAogQHRhYmxlIEBrYmQKIEBraW5kZXgg Qy1jIEMtegpAQCAtMTkzMyw3ICsxOTMyLDcgQEAgRm9vdG5vdGVzCiBAaXRlbSBDLWMgQy14 IGYKIFRoZSBmb290bm90ZSBhY3Rpb24gY29tbWFuZC4KIAotV2hlbiB0aGUgY3Vyc29yIGlz IG9uIGEgZm9vdG5vdGUgcmVmZXJlbmNlLCBqdW1wIHRvIHRoZSBkZWZpbml0aW9uLiAgV2hl biBpdAorV2hlbiBwb2ludCBpcyBvbiBhIGZvb3Rub3RlIHJlZmVyZW5jZSwganVtcCB0byB0 aGUgZGVmaW5pdGlvbi4gIFdoZW4gaXQKIGlzIGF0IGEgZGVmaW5pdGlvbiwganVtcCB0byB0 aGUgKGZpcnN0KSByZWZlcmVuY2UuCiAKIEB2aW5kZXggb3JnLWZvb3Rub3RlLWRlZmluZS1p bmxpbmUKQEAgLTE5NzIsNyArMTk3MSw3IEBAIEZvb3Rub3RlcwogCiBAa2luZGV4IEMtYyBD LWMKIEBpdGVtIEMtYyBDLWMKLUlmIHRoZSBjdXJzb3IgaXMgb24gYSBmb290bm90ZSByZWZl cmVuY2UsIGp1bXAgdG8gdGhlIGRlZmluaXRpb24uICBJZiBpdCBpcyBhCitJZiBwb2ludCBp cyBvbiBhIGZvb3Rub3RlIHJlZmVyZW5jZSwganVtcCB0byB0aGUgZGVmaW5pdGlvbi4gIElm IGl0IGlzIGEKIHRoZSBkZWZpbml0aW9uLCBqdW1wIGJhY2sgdG8gdGhlIHJlZmVyZW5jZS4g IFdoZW4gY2FsbGVkIGF0IGEgZm9vdG5vdGUKIGxvY2F0aW9uIHdpdGggYSBwcmVmaXggYXJn dW1lbnQsIG9mZmVyIHRoZSBzYW1lIG1lbnUgYXMgQGtiZHtDLWMgQy14IGZ9LgogQGtpbmRl eCBDLWMgQy1vCkBAIC0yMDA3LDEwICsyMDA2LDEwIEBAIE9yZ3N0cnVjdCBtb2RlCiAoYWRk LWhvb2sgJ21lc3NhZ2UtbW9kZS1ob29rICd0dXJuLW9uLW9yZ3N0cnVjdCsrKQogQGVuZCBs aXNwCiAKLVdoZW4gdGhpcyBtb2RlIGlzIGFjdGl2ZSBhbmQgdGhlIGN1cnNvciBpcyBvbiBh IGxpbmUgdGhhdCBsb29rcyB0byBPcmcgbGlrZSBhCitXaGVuIHRoaXMgbW9kZSBpcyBhY3Rp dmUgYW5kIHBvaW50IGlzIG9uIGEgbGluZSB0aGF0IGxvb2tzIHRvIE9yZyBsaWtlIGEKIGhl YWRsaW5lIG9yIHRoZSBmaXJzdCBsaW5lIG9mIGEgbGlzdCBpdGVtLCBtb3N0IHN0cnVjdHVy ZSBlZGl0aW5nIGNvbW1hbmRzCi13aWxsIHdvcmssIGV2ZW4gaWYgdGhlIHNhbWUga2V5cyBu b3JtYWxseSBoYXZlIGRpZmZlcmVudCBmdW5jdGlvbmFsaXR5IGluIHRoZQotbWFqb3IgbW9k ZSB5b3UgYXJlIHVzaW5nLiAgSWYgdGhlIGN1cnNvciBpcyBub3QgaW4gb25lIG9mIHRob3Nl IHNwZWNpYWwKK3dpbGwgd29yaywgZXZlbiBpZiB0aGUgc2FtZSBrZXlzIG5vcm1hbGx5IGhh dmUgZGlmZmVyZW50IGZ1bmN0aW9uYWxpdHkgaW4KK3RoZSBtYWpvciBtb2RlIHlvdSBhcmUg dXNpbmcuICBJZiBwb2ludCBpcyBub3QgaW4gb25lIG9mIHRob3NlIHNwZWNpYWwKIGxpbmVz LCBPcmdzdHJ1Y3QgbW9kZSBsdXJrcyBzaWxlbnRseSBpbiB0aGUgc2hhZG93cy4KIAogV2hl biB5b3UgdXNlIEBjb2Rle29yZ3N0cnVjdCsrLW1vZGV9LCBPcmcgd2lsbCBhbHNvIGV4cG9y dCBpbmRlbnRhdGlvbiBhbmQKQEAgLTIxMDYsMTIgKzIxMDUsMTIgQEAgQnVpbHQtaW4gdGFi bGUgZWRpdG9yCiBAa2Jke0MtYyBAa2V5e1JFVH19LgogCiBAdmluZGV4IG9yZy10YWJsZS1h dXRvLWJsYW5rLWZpZWxkCi1XaGVuIHR5cGluZyB0ZXh0IGludG8gYSBmaWVsZCwgT3JnIHRy ZWF0cyBAa2V5e0RFTH0sIEBrZXl7QmFja3NwYWNlfSwgYW5kIGFsbAotY2hhcmFjdGVyIGtl eXMgaW4gYSBzcGVjaWFsIHdheSwgc28gdGhhdCBpbnNlcnRpbmcgYW5kIGRlbGV0aW5nIGF2 b2lkcwotc2hpZnRpbmcgb3RoZXIgZmllbGRzLiAgQWxzbywgd2hlbiB0eXBpbmcgQGVtcGh7 aW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIGN1cnNvcgotd2FzIG1vdmVkIGludG8gYSBuZXcgZmll bGQgd2l0aCBAa2Jke0BrZXl7VEFCfX0sIEBrYmR7Uy1Aa2V5e1RBQn19IG9yCi1Aa2Jke0Br ZXl7UkVUfX19LCB0aGUgZmllbGQgaXMgYXV0b21hdGljYWxseSBtYWRlIGJsYW5rLiAgSWYg dGhpcyBiZWhhdmlvciBpcwotdG9vIHVucHJlZGljdGFibGUgZm9yIHlvdSwgY29uZmlndXJl IHRoZSBvcHRpb24KK1doZW4gdHlwaW5nIHRleHQgaW50byBhIGZpZWxkLCBPcmcgdHJlYXRz IEBrZXl7REVMfSwgQGtleXtCYWNrc3BhY2V9LCBhbmQKK2FsbCBjaGFyYWN0ZXIga2V5cyBp biBhIHNwZWNpYWwgd2F5LCBzbyB0aGF0IGluc2VydGluZyBhbmQgZGVsZXRpbmcgYXZvaWRz CitzaGlmdGluZyBvdGhlciBmaWVsZHMuICBBbHNvLCB3aGVuIHR5cGluZyBAZW1waHtpbW1l ZGlhdGVseSBhZnRlciBwb2ludCB3YXMKK21vdmVkIGludG8gYSBuZXcgZmllbGQgd2l0aCBA a2Jke0BrZXl7VEFCfX0sIEBrYmR7Uy1Aa2V5e1RBQn19IG9yCitAa2Jke0BrZXl7UkVUfX19 LCB0aGUgZmllbGQgaXMgYXV0b21hdGljYWxseSBtYWRlIGJsYW5rLiAgSWYgdGhpcyBiZWhh dmlvcgoraXMgdG9vIHVucHJlZGljdGFibGUgZm9yIHlvdSwgY29uZmlndXJlIHRoZSBvcHRp b24KIEBjb2Rle29yZy10YWJsZS1hdXRvLWJsYW5rLWZpZWxkfS4KIAogQHRhYmxlIEBrYmQK QEAgLTIxNjIsNyArMjE2MSw3IEBAIEJ1aWx0LWluIHRhYmxlIGVkaXRvcgogS2lsbCB0aGUg Y3VycmVudCBjb2x1bW4uCiBAYwogQG9yZ2NtZHtNLVMtQGtleXtSSUdIVH0sb3JnLXRhYmxl LWluc2VydC1jb2x1bW59Ci1JbnNlcnQgYSBuZXcgY29sdW1uIHRvIHRoZSBsZWZ0IG9mIHRo ZSBjdXJzb3IgcG9zaXRpb24uCitJbnNlcnQgYSBuZXcgY29sdW1uIHRvIHRoZSBsZWZ0IG9m IHBvaW50LgogQGMKIEBvcmdjbWRra2Nje00tQGtleXtVUH0sTS1Aa2V5e0RPV059LG9yZy10 YWJsZS1tb3ZlLXJvdy11cCxvcmctdGFibGUtbW92ZS1yb3ctZG93bn0KIE1vdmUgdGhlIGN1 cnJlbnQgcm93IHVwL2Rvd24uCkBAIC0yMTc5LDcgKzIxNzgsNyBAQCBCdWlsdC1pbiB0YWJs ZSBlZGl0b3IKIGlzIGNyZWF0ZWQgYWJvdmUgdGhlIGN1cnJlbnQgbGluZS4KIEBjCiBAb3Jn Y21ke0MtYyBAa2V5e1JFVH0sb3JnLXRhYmxlLWhsaW5lLWFuZC1tb3ZlfQotSW5zZXJ0IGEg aG9yaXpvbnRhbCBsaW5lIGJlbG93IGN1cnJlbnQgcm93LCBhbmQgbW92ZSB0aGUgY3Vyc29y IGludG8gdGhlIHJvdworSW5zZXJ0IGEgaG9yaXpvbnRhbCBsaW5lIGJlbG93IGN1cnJlbnQg cm93LCBhbmQgbW92ZSBwb2ludCBpbnRvIHRoZSByb3cKIGJlbG93IHRoYXQgbGluZS4KIEBj CiBAb3JnY21ke0MtYyBeLG9yZy10YWJsZS1zb3J0LWxpbmVzfQpAQCAtMjIxMywxMSArMjIx MiwxMSBAQCBCdWlsdC1pbiB0YWJsZSBlZGl0b3IKIGxpbmVzLgogQGMKIEBvcmdjbWR7TS1A a2V5e1JFVH0sb3JnLXRhYmxlLXdyYXAtcmVnaW9ufQotU3BsaXQgdGhlIGN1cnJlbnQgZmll bGQgYXQgdGhlIGN1cnNvciBwb3NpdGlvbiBhbmQgbW92ZSB0aGUgcmVzdCB0byB0aGUgbGlu ZQotYmVsb3cuICBJZiB0aGVyZSBpcyBhbiBhY3RpdmUgcmVnaW9uLCBhbmQgYm90aCBwb2lu dCBhbmQgbWFyayBhcmUgaW4gdGhlIHNhbWUKLWNvbHVtbiwgdGhlIHRleHQgaW4gdGhlIGNv bHVtbiBpcyB3cmFwcGVkIHRvIG1pbmltdW0gd2lkdGggZm9yIHRoZSBnaXZlbgotbnVtYmVy IG9mIGxpbmVzLiAgQSBudW1lcmljIHByZWZpeCBhcmd1bWVudCBtYXkgYmUgdXNlZCB0byBj aGFuZ2UgdGhlIG51bWJlcgotb2YgZGVzaXJlZCBsaW5lcy4gIElmIHRoZXJlIGlzIG5vIHJl Z2lvbiwgYnV0IHlvdSBzcGVjaWZ5IGEgcHJlZml4IGFyZ3VtZW50LAorU3BsaXQgdGhlIGN1 cnJlbnQgZmllbGQgYXQgcG9pbnQgYW5kIG1vdmUgdGhlIHJlc3QgdG8gdGhlIGxpbmUgYmVs b3cuICBJZgordGhlcmUgaXMgYW4gYWN0aXZlIHJlZ2lvbiwgYW5kIGJvdGggcG9pbnQgYW5k IG1hcmsgYXJlIGluIHRoZSBzYW1lIGNvbHVtbiwKK3RoZSB0ZXh0IGluIHRoZSBjb2x1bW4g aXMgd3JhcHBlZCB0byBtaW5pbXVtIHdpZHRoIGZvciB0aGUgZ2l2ZW4gbnVtYmVyIG9mCits aW5lcy4gIEEgbnVtZXJpYyBwcmVmaXggYXJndW1lbnQgbWF5IGJlIHVzZWQgdG8gY2hhbmdl IHRoZSBudW1iZXIgb2YKK2Rlc2lyZWQgbGluZXMuICBJZiB0aGVyZSBpcyBubyByZWdpb24s IGJ1dCB5b3Ugc3BlY2lmeSBhIHByZWZpeCBhcmd1bWVudCwKIHRoZSBjdXJyZW50IGZpZWxk IGlzIG1hZGUgYmxhbmssIGFuZCB0aGUgY29udGVudCBpcyBhcHBlbmRlZCB0byB0aGUgZmll bGQKIGFib3ZlLgogCkBAIC0yMjQ0LDEzICsyMjQzLDEzIEBAIEJ1aWx0LWluIHRhYmxlIGVk aXRvcgogCiBAdHN1YmhlYWRpbmd7TWlzY2VsbGFuZW91c30KIEBvcmdjbWR7Qy1jIGAsb3Jn LXRhYmxlLWVkaXQtZmllbGR9Ci1FZGl0IHRoZSBjdXJyZW50IGZpZWxkIGluIGEgc2VwYXJh dGUgd2luZG93LiAgVGhpcyBpcyB1c2VmdWwgZm9yIGZpZWxkcyB0aGF0Ci1hcmUgbm90IGZ1 bGx5IHZpc2libGUgKEBweHJlZntDb2x1bW4gd2lkdGggYW5kIGFsaWdubWVudH0pLiAgV2hl biBjYWxsZWQgd2l0aAotYSBAa2Jke0MtdX0gcHJlZml4LCBqdXN0IG1ha2UgdGhlIGZ1bGwg ZmllbGQgdmlzaWJsZSwgc28gdGhhdCBpdCBjYW4gYmUKLWVkaXRlZCBpbiBwbGFjZS4gIFdo ZW4gY2FsbGVkIHdpdGggdHdvIEBrYmR7Qy11fSBwcmVmaXhlcywgbWFrZSB0aGUgZWRpdG9y Ci13aW5kb3cgZm9sbG93IHRoZSBjdXJzb3IgdGhyb3VnaCB0aGUgdGFibGUgYW5kIGFsd2F5 cyBzaG93IHRoZSBjdXJyZW50Ci1maWVsZC4gIFRoZSBmb2xsb3cgbW9kZSBleGl0cyBhdXRv bWF0aWNhbGx5IHdoZW4gdGhlIGN1cnNvciBsZWF2ZXMgdGhlIHRhYmxlLAotb3Igd2hlbiB5 b3UgcmVwZWF0IHRoaXMgY29tbWFuZCB3aXRoIEBrYmR7Qy11IEMtdSBDLWMgYH0uCitFZGl0 IHRoZSBjdXJyZW50IGZpZWxkIGluIGEgc2VwYXJhdGUgd2luZG93LiAgVGhpcyBpcyB1c2Vm dWwgZm9yIGZpZWxkcwordGhhdCBhcmUgbm90IGZ1bGx5IHZpc2libGUgKEBweHJlZntDb2x1 bW4gd2lkdGggYW5kIGFsaWdubWVudH0pLiAgV2hlbgorY2FsbGVkIHdpdGggYSBAa2Jke0Mt dX0gcHJlZml4LCBqdXN0IG1ha2UgdGhlIGZ1bGwgZmllbGQgdmlzaWJsZSwgc28gdGhhdAor aXQgY2FuIGJlIGVkaXRlZCBpbiBwbGFjZS4gIFdoZW4gY2FsbGVkIHdpdGggdHdvIEBrYmR7 Qy11fSBwcmVmaXhlcywgbWFrZQordGhlIGVkaXRvciB3aW5kb3cgZm9sbG93IHBvaW50IHRo cm91Z2ggdGhlIHRhYmxlIGFuZCBhbHdheXMgc2hvdyB0aGUKK2N1cnJlbnQgZmllbGQuICBU aGUgZm9sbG93IG1vZGUgZXhpdHMgYXV0b21hdGljYWxseSB3aGVuIHBvaW50IGxlYXZlcyB0 aGUKK3RhYmxlLCBvciB3aGVuIHlvdSByZXBlYXQgdGhpcyBjb21tYW5kIHdpdGggQGtiZHtD LXUgQy11IEMtYyBgfS4KIEBjCiBAaXRlbSBNLXggb3JnLXRhYmxlLWltcG9ydCBAa2V5e1JF VH0KIEltcG9ydCBhIGZpbGUgYXMgYSB0YWJsZS4gIFRoZSB0YWJsZSBzaG91bGQgYmUgVEFC IG9yIHdoaXRlc3BhY2UKQEAgLTI3NTAsNyArMjc0OSw3IEBAIEZvcm11bGEgc3ludGF4IGZv ciBMaXNwCiB5b3UgcHJvdmlkZSB0aGUgQHNhbXB7Tn0gbW9kZSBzd2l0Y2gsIGFsbCByZWZl cmVuY2VkIGVsZW1lbnRzIHdpbGwgYmUgbnVtYmVycwogKG5vbi1udW1iZXIgZmllbGRzIHdp bGwgYmUgemVybykgYW5kIGludGVycG9sYXRlZCBhcyBMaXNwIG51bWJlcnMsIHdpdGhvdXQK IHF1b3Rlcy4gIElmIHlvdSBwcm92aWRlIHRoZSBAc2FtcHtMfSBmbGFnLCBhbGwgZmllbGRz IHdpbGwgYmUgaW50ZXJwb2xhdGVkCi1saXRlcmFsbHksIHdpdGhvdXQgcXVvdGVzLiAgSS5l LiwgaWYgeW91IHdhbnQgYSByZWZlcmVuY2UgdG8gYmUgaW50ZXJwcmV0ZWQKK2xpdGVyYWxs eSwgd2l0aG91dCBxdW90ZXMuICBGb3IgZXhhbXBsZSwgaWYgeW91IHdhbnQgYSByZWZlcmVu Y2UgdG8gYmUgaW50ZXJwcmV0ZWQKIGFzIGEgc3RyaW5nIGJ5IHRoZSBMaXNwIGZvcm0sIGVu Y2xvc2UgdGhlIHJlZmVyZW5jZSBvcGVyYXRvciBpdHNlbGYgaW4KIGRvdWJsZS1xdW90ZXMs IGxpa2UgQGNvZGV7IiQzIn0uICBSYW5nZXMgYXJlIGluc2VydGVkIGFzIHNwYWNlLXNlcGFy YXRlZAogZmllbGRzLCBzbyB5b3UgY2FuIGVtYmVkIHRoZW0gaW4gbGlzdCBvciB2ZWN0b3Ig c3ludGF4LgpAQCAtMjgxMSw3ICsyODEwLDcgQEAgRmllbGQgYW5kIHJhbmdlIGZvcm11bGFz CiAKIFRvIGFzc2lnbiBhIGZvcm11bGEgdG8gYSBwYXJ0aWN1bGFyIGZpZWxkLCB0eXBlIGl0 IGRpcmVjdGx5IGludG8gdGhlIGZpZWxkLAogcHJlY2VkZWQgYnkgQHNhbXB7Oj19LCBmb3Ig ZXhhbXBsZSBAc2FtcHs6PXZzdW0oQEBJSS4uSUlJKX0uICBXaGVuIHlvdSBwcmVzcwotQGtl eXtUQUJ9IG9yIEBrZXl7UkVUfSBvciBAa2Jke0MtYyBDLWN9IHdpdGggdGhlIGN1cnNvciBz dGlsbCBpbiB0aGUgZmllbGQsCitAa2V5e1RBQn0gb3IgQGtleXtSRVR9IG9yIEBrYmR7Qy1j IEMtY30gd2l0aCBwb2ludCBzdGlsbCBpbiB0aGUgZmllbGQsCiB0aGUgZm9ybXVsYSB3aWxs IGJlIHN0b3JlZCBhcyB0aGUgZm9ybXVsYSBmb3IgdGhpcyBmaWVsZCwgZXZhbHVhdGVkLCBh bmQgdGhlCiBjdXJyZW50IGZpZWxkIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCB0aGUgcmVzdWx0 LgogCkBAIC0yODI0LDkgKzI4MjMsOSBAQCBGaWVsZCBhbmQgcmFuZ2UgZm9ybXVsYXMKIG1v ZGlmaWVkIGluIG9yZGVyIHRvIHN0aWxsIHJlZmVyZW5jZSB0aGUgc2FtZSBmaWVsZC4gIFRv IGF2b2lkIHRoaXMsIGluCiBwYXJ0aWN1bGFyIGluIHJhbmdlIHJlZmVyZW5jZXMsIGFuY2hv ciByYW5nZXMgYXQgdGhlIHRhYmxlIGJvcmRlcnMgKHVzaW5nCiBAY29kZXtAQDx9LCBAY29k ZXtAQD59LCBAY29kZXskPH0sIEBjb2RleyQ+fSksIG9yIGF0IGhsaW5lcyB1c2luZyB0aGUK LUBjb2Rle0BASX0gbm90YXRpb24uICBBdXRvbWF0aWMgYWRhcHRhdGlvbiBvZiBmaWVsZCBy ZWZlcmVuY2VzIGRvZXMgb2YgY291cnNlCitAY29kZXtAQEl9IG5vdGF0aW9uLiAgQXV0b21h dGljIGFkYXB0YXRpb24gb2YgZmllbGQgcmVmZXJlbmNlcyBkb2VzCiBub3QgaGFwcGVuIGlm IHlvdSBlZGl0IHRoZSB0YWJsZSBzdHJ1Y3R1cmUgd2l0aCBub3JtYWwgZWRpdGluZwotY29t bWFuZHMtLS10aGVuIHlvdSBtdXN0IGZpeCB0aGUgZXF1YXRpb25zIHlvdXJzZWxmLgorY29t bWFuZHMtLS15b3UgbXVzdCBmaXggdGhlIGZvcm11bGFzIHlvdXJzZWxmLgogCiBJbnN0ZWFk IG9mIHR5cGluZyBhbiBlcXVhdGlvbiBpbnRvIHRoZSBmaWVsZCwgeW91IG1heSBhbHNvIHVz ZSB0aGUgZm9sbG93aW5nCiBjb21tYW5kCkBAIC0yODc2LDkgKzI4NzUsOSBAQCBDb2x1bW4g Zm9ybXVsYXMKIAogVG8gYXNzaWduIGEgZm9ybXVsYSB0byBhIGNvbHVtbiwgdHlwZSBpdCBk aXJlY3RseSBpbnRvIGFueSBmaWVsZCBpbiB0aGUKIGNvbHVtbiwgcHJlY2VkZWQgYnkgYW4g ZXF1YWwgc2lnbiwgbGlrZSBAc2FtcHs9JDErJDJ9LiAgV2hlbiB5b3UgcHJlc3MKLUBrZXl7 VEFCfSBvciBAa2V5e1JFVH0gb3IgQGtiZHtDLWMgQy1jfSB3aXRoIHRoZSBjdXJzb3Igc3Rp bGwgaW4gdGhlIGZpZWxkLAotdGhlIGZvcm11bGEgd2lsbCBiZSBzdG9yZWQgYXMgdGhlIGZv cm11bGEgZm9yIHRoZSBjdXJyZW50IGNvbHVtbiwgZXZhbHVhdGVkCi1hbmQgdGhlIGN1cnJl bnQgZmllbGQgcmVwbGFjZWQgd2l0aCB0aGUgcmVzdWx0LiAgSWYgdGhlIGZpZWxkIGNvbnRh aW5zIG9ubHkKK0BrZXl7VEFCfSBvciBAa2V5e1JFVH0gb3IgQGtiZHtDLWMgQy1jfSB3aXRo IHBvaW50IHN0aWxsIGluIHRoZSBmaWVsZCwgdGhlCitmb3JtdWxhIHdpbGwgYmUgc3RvcmVk IGFzIHRoZSBmb3JtdWxhIGZvciB0aGUgY3VycmVudCBjb2x1bW4sIGV2YWx1YXRlZCBhbmQK K3RoZSBjdXJyZW50IGZpZWxkIHJlcGxhY2VkIHdpdGggdGhlIHJlc3VsdC4gIElmIHRoZSBm aWVsZCBjb250YWlucyBvbmx5CiBAc2FtcHs9fSwgdGhlIHByZXZpb3VzbHkgc3RvcmVkIGZv cm11bGEgZm9yIHRoaXMgY29sdW1uIGlzIHVzZWQuICBGb3IgZWFjaAogY29sdW1uLCBPcmcg d2lsbCBvbmx5IHJlbWVtYmVyIHRoZSBtb3N0IHJlY2VudGx5IHVzZWQgZm9ybXVsYS4gIElu IHRoZQogQGNvZGV7IytUQkxGTTp9IGxpbmUsIGNvbHVtbiBmb3JtdWxhcyB3aWxsIGxvb2sg bGlrZSBAc2FtcHskND0kMSskMn0uICBUaGUKQEAgLTI5NjUsNyArMjk2NCw3IEBAIEVkaXRp bmcgYW5kIGRlYnVnZ2luZyBmb3JtdWxhcwogbWluaWJ1ZmZlciBpcyB0aGF0IHlvdSBjYW4g dXNlIHRoZSBjb21tYW5kIEBrYmR7Qy1jID99LgogQG9yZ2NtZHtDLWMgPyxvcmctdGFibGUt ZmllbGQtaW5mb30KIFdoaWxlIGVkaXRpbmcgYSBmb3JtdWxhIGluIGEgdGFibGUgZmllbGQs IGhpZ2hsaWdodCB0aGUgZmllbGQocykKLXJlZmVyZW5jZWQgYnkgdGhlIHJlZmVyZW5jZSBh dCB0aGUgY3Vyc29yIHBvc2l0aW9uIGluIHRoZSBmb3JtdWxhLgorcmVmZXJlbmNlZCBieSB0 aGUgcmVmZXJlbmNlIGF0IHBvaW50IGluIHRoZSBmb3JtdWxhLgogQGtpbmRleCBDLWMgQH0K IEBmaW5kZXggb3JnLXRhYmxlLXRvZ2dsZS1jb29yZGluYXRlLW92ZXJsYXlzCiBAaXRlbSBD LWMgQH0KQEAgLTI5ODAsOSArMjk3OSw5IEBAIEVkaXRpbmcgYW5kIGRlYnVnZ2luZyBmb3Jt dWxhcwogQG9yZ2NtZHtDLWMgJyxvcmctdGFibGUtZWRpdC1mb3JtdWxhc30KIEVkaXQgYWxs IGZvcm11bGFzIGZvciB0aGUgY3VycmVudCB0YWJsZSBpbiBhIHNwZWNpYWwgYnVmZmVyLCB3 aGVyZSB0aGUKIGZvcm11bGFzIHdpbGwgYmUgZGlzcGxheWVkIG9uZSBwZXIgbGluZS4gIElm IHRoZSBjdXJyZW50IGZpZWxkIGhhcyBhbgotYWN0aXZlIGZvcm11bGEsIHRoZSBjdXJzb3Ig aW4gdGhlIGZvcm11bGEgZWRpdG9yIHdpbGwgbWFyayBpdC4KK2FjdGl2ZSBmb3JtdWxhLCBw b2ludCBpbiB0aGUgZm9ybXVsYSBlZGl0b3Igd2lsbCBtYXJrIGl0LgogV2hpbGUgaW5zaWRl IHRoZSBzcGVjaWFsIGJ1ZmZlciwgT3JnIHdpbGwgYXV0b21hdGljYWxseSBoaWdobGlnaHQK LWFueSBmaWVsZCBvciByYW5nZSByZWZlcmVuY2UgYXQgdGhlIGN1cnNvciBwb3NpdGlvbi4g IFlvdSBtYXkgZWRpdCwKK2FueSBmaWVsZCBvciByYW5nZSByZWZlcmVuY2UgYXQgcG9pbnQu ICBZb3UgbWF5IGVkaXQsCiByZW1vdmUgYW5kIGFkZCBmb3JtdWxhcywgYW5kIHVzZSB0aGUg Zm9sbG93aW5nIGNvbW1hbmRzOgogCiBAdGFibGUgQGtiZApAQCAtMzA0NSw3ICszMDQ0LDcg QEAgRWRpdGluZyBhbmQgZGVidWdnaW5nIGZvcm11bGFzCiBAY2luZGV4IEBjb2RleyMrVEJM Rk19LCBzd2l0Y2hpbmcKIEBraW5kZXggQy1jIEMtYwogCi1Zb3UgbWF5IGFwcGx5IHRoZSBm b3JtdWxhIHRlbXBvcmFyaWx5LiAgVGhpcyBpcyB1c2VmdWwgd2hlbiB5b3UKK1lvdSBtYXkg YXBwbHkgdGhlIGZvcm11bGEgdGVtcG9yYXJpbHkuICBUaGlzIGlzIHVzZWZ1bCB3aGVuIHlv dSB3YW50IHRvCiBzd2l0Y2ggdGhlIGZvcm11bGEuICBQbGFjZSBtdWx0aXBsZSBAY29kZXsj K1RCTEZNfSBsaW5lcyByaWdodAogYWZ0ZXIgdGhlIHRhYmxlLCBhbmQgdGhlbiBwcmVzcyBA a2Jke0MtYyBDLWN9IG9uIHRoZSBmb3JtdWxhIHRvCiBhcHBseS4gIEhlcmUgaXMgYW4gZXhh bXBsZToKQEAgLTMwNzMsNyArMzA3Miw3IEBAIEVkaXRpbmcgYW5kIGRlYnVnZ2luZyBmb3Jt dWxhcwogCiBAbm9pbmRlbnQKIE5vdGU6IElmIHlvdSByZWNhbGN1bGF0ZSB0aGlzIHRhYmxl ICh3aXRoIEBrYmR7Qy11IEMtYyAqfSwgZm9yIGV4YW1wbGUpLCB5b3UKLXdpbGwgZ2V0IHRo ZSBmb2xsb3dpbmcgcmVzdWx0IG9mIGFwcGx5aW5nIG9ubHkgdGhlIGZpcnN0IEBjb2RleyMr VEJMRk19IGxpbmUuCit3aWxsIGdldCB0aGUgZm9sbG93aW5nIHJlc3VsdCBmcm9tIGFwcGx5 aW5nIG9ubHkgdGhlIGZpcnN0IEBjb2RleyMrVEJMRk19IGxpbmUuCiAKIEBleGFtcGxlCiB8 IHggfCB5IHwKQEAgLTMxMzUsMTAgKzMxMzQsMTAgQEAgQWR2YW5jZWQgZmVhdHVyZXMKIEBz dWJzZWN0aW9uIEFkdmFuY2VkIGZlYXR1cmVzCiAKIElmIHlvdSB3YW50IHRoZSByZWNhbGN1 bGF0aW9uIG9mIGZpZWxkcyB0byBoYXBwZW4gYXV0b21hdGljYWxseSwgb3IgaWYgeW91Ci13 YW50IHRvIGJlIGFibGUgdG8gYXNzaWduIEBpe25hbWVzfUBmb290bm90ZXtTdWNoIG5hbWVz IG11c3Qgc3RhcnQgYnkgYW4KLWFscGhhYmV0aWMgY2hhcmFjdGVyIGFuZCB1c2Ugb25seSBh bHBoYW51bWVyaWMvdW5kZXJzY29yZSBjaGFyYWN0ZXJzLn0gdG8KLWZpZWxkcyBhbmQgY29s dW1ucywgeW91IG5lZWQgdG8gcmVzZXJ2ZSB0aGUgZmlyc3QgY29sdW1uIG9mIHRoZSB0YWJs ZSBmb3IKLXNwZWNpYWwgbWFya2luZyBjaGFyYWN0ZXJzLgord2FudCB0byBiZSBhYmxlIHRv IGFzc2lnbiBAaXtuYW1lc31AZm9vdG5vdGV7U3VjaCBuYW1lcyBtdXN0IHN0YXJ0IHdpdGgg YW4KK2FscGhhYmV0aWMgY2hhcmFjdGVyIGFuZCBjb25zaXN0IHNvbGVseSBvZiBhbHBoYW51 bWVyaWMgb3IgdW5kZXJzY29yZQorY2hhcmFjdGVycy59IHRvIGZpZWxkcyBhbmQgY29sdW1u cywgeW91IG5lZWQgdG8gcmVzZXJ2ZSB0aGUgZmlyc3QgY29sdW1uIG9mCit0aGUgdGFibGUg Zm9yIHNwZWNpYWwgbWFya2luZyBjaGFyYWN0ZXJzLgogCiBAdGFibGUgQGtiZAogQG9yZ2Nt ZHtDLSMsb3JnLXRhYmxlLXJvdGF0ZS1yZWNhbGMtbWFya3N9CkBAIC0zMzI5LDcgKzMzMjgs NyBAQCBPcmctUGxvdAogCiBAc3ViaGVhZGluZyBBU0NJSSBiYXIgcGxvdHMKIAotV2hpbGUg dGhlIGN1cnNvciBpcyBvbiBhIGNvbHVtbiwgdHlwaW5nIEBrYmR7Qy1jICIgYX0gb3IKK1do aWxlIHBvaW50IGlzIG9uIGEgY29sdW1uLCB0eXBpbmcgQGtiZHtDLWMgIiBhfSBvcgogQGti ZHtNLXggb3JndGJsLWFzY2lpLXBsb3QgQGtleXtSRVR9fSBjcmVhdGUgYSBuZXcgY29sdW1u IGNvbnRhaW5pbmcgYW4KIEFTQ0lJLWFydCBiYXJzIHBsb3QuICBUaGUgcGxvdCBpcyBpbXBs ZW1lbnRlZCB0aHJvdWdoIGEgcmVndWxhciBjb2x1bW4KIGZvcm11bGEuICBXaGVuIHRoZSBz b3VyY2UgY29sdW1uIGNoYW5nZXMsIHRoZSBiYXIgcGxvdCBtYXkgYmUgdXBkYXRlZCBieQpA QCAtMzM3Miw3ICszMzcxLDcgQEAgSHlwZXJsaW5rcwogQGNoYXB0ZXIgSHlwZXJsaW5rcwog QGNpbmRleCBoeXBlcmxpbmtzCiAKLUxpa2UgSFRNTCwgT3JnIHByb3ZpZGVzIGxpbmtzIGlu c2lkZSBhIGZpbGUsIGV4dGVybmFsIGxpbmtzIHRvCitMaWtlIEhUTUwsIE9yZyBwcm92aWRl cyBzdXBwb3J0IGZvciBsaW5rcyBpbnNpZGUgYSBmaWxlLCBleHRlcm5hbCBsaW5rcyB0bwog b3RoZXIgZmlsZXMsIFVzZW5ldCBhcnRpY2xlcywgZW1haWxzLCBhbmQgbXVjaCBtb3JlLgog CiBAbWVudQpAQCAtMzQwOSw3ICszNDA4LDcgQEAgTGluayBmb3JtYXQKIGVkaXQgYWxzbyB0 aGUgaW52aXNpYmxlIEBzYW1we2xpbmt9IHBhcnQsIHVzZSBAa2Jke0MtYyBDLWx9IHdpdGgg dGhlCiBjdXJzb3Igb24gdGhlIGxpbmsuCiAKLUlmIHlvdSBwbGFjZSB0aGUgY3Vyc29yIGF0 IHRoZSBiZWdpbm5pbmcgb3IganVzdCBiZWhpbmQgdGhlIGVuZCBvZiB0aGUKK0lmIHlvdSBw bGFjZSBwb2ludCBhdCB0aGUgYmVnaW5uaW5nIG9yIGp1c3QgYmVoaW5kIHRoZSBlbmQgb2Yg dGhlCiBkaXNwbGF5ZWQgdGV4dCBhbmQgcHJlc3MgQGtleXtCQUNLU1BBQ0V9LCB5b3Ugd2ls bCByZW1vdmUgdGhlCiAoaW52aXNpYmxlKSBicmFja2V0IGF0IHRoYXQgbG9jYXRpb24uICBU aGlzIG1ha2VzIHRoZSBsaW5rIGluY29tcGxldGUKIGFuZCB0aGUgaW50ZXJuYWxzIGFyZSBh Z2FpbiBkaXNwbGF5ZWQgYXMgcGxhaW4gdGV4dC4gIEluc2VydGluZyB0aGUKQEAgLTM0MjQs MTYgKzM0MjMsMTYgQEAgSW50ZXJuYWwgbGlua3MKIEBjaW5kZXggdGFyZ2V0cywgZm9yIGxp bmtzCiAKIEBjaW5kZXggcHJvcGVydHksIEBjb2Rle0NVU1RPTV9JRH0KLUlmIHRoZSBsaW5r IGRvZXMgbm90IGxvb2sgbGlrZSBhIFVSTCwgaXQgaXMgY29uc2lkZXJlZCB0byBiZSBpbnRl cm5hbCBpbiB0aGUKLWN1cnJlbnQgZmlsZS4gIFRoZSBtb3N0IGltcG9ydGFudCBjYXNlIGlz IGEgbGluayBsaWtlCitJZiB0aGUgbGluayBkb2VzIG5vdCBsb29rIGxpa2UgYSBVUkwsIGl0 IGlzIGNvbnNpZGVyZWQgdG8gYmUgaW50ZXJuYWwgdG8KK3RoZSBjdXJyZW50IGZpbGUuICBU aGUgbW9zdCBpbXBvcnRhbnQgY2FzZSBpcyBhIGxpbmsgbGlrZQogQHNhbXB7W1sjbXktY3Vz dG9tLWlkXV19IHdoaWNoIHdpbGwgbGluayB0byB0aGUgZW50cnkgd2l0aCB0aGUKLUBjb2Rl e0NVU1RPTV9JRH0gcHJvcGVydHkgQHNhbXB7bXktY3VzdG9tLWlkfS4gIFlvdSBhcmUgcmVz cG9uc2libGUgeW91cnNlbGYKLXRvIG1ha2Ugc3VyZSB0aGVzZSBjdXN0b20gSURzIGFyZSB1 bmlxdWUgaW4gYSBmaWxlLgorQGNvZGV7Q1VTVE9NX0lEfSBwcm9wZXJ0eSBAc2FtcHtteS1j dXN0b20taWR9LiAgSXQgaXMgdXAgdG8geW91IHRvIG1ha2UKK3N1cmUgdGhlc2UgY3VzdG9t IElEcyBhcmUgdW5pcXVlIGluIGEgZmlsZS4KIAogTGlua3Mgc3VjaCBhcyBAc2FtcHtbW015 IFRhcmdldF1dfSBvciBAc2FtcHtbW015IFRhcmdldF1bRmluZCBteSB0YXJnZXRdXX0KIGxl YWQgdG8gYSB0ZXh0IHNlYXJjaCBpbiB0aGUgY3VycmVudCBmaWxlLgogCi1UaGUgbGluayBj YW4gYmUgZm9sbG93ZWQgd2l0aCBAa2Jke0MtYyBDLW99IHdoZW4gdGhlIGN1cnNvciBpcyBv biB0aGUgbGluaywKK1RoZSBsaW5rIGNhbiBiZSBmb2xsb3dlZCB3aXRoIEBrYmR7Qy1jIEMt b30gd2hlbiBwb2ludCBpcyBvbiB0aGUgbGluaywKIG9yIHdpdGggYSBtb3VzZSBjbGljayAo QHB4cmVme0hhbmRsaW5nIGxpbmtzfSkuICBMaW5rcyB0byBjdXN0b20gSURzIHdpbGwKIHBv aW50IHRvIHRoZSBjb3JyZXNwb25kaW5nIGhlYWRsaW5lLiAgVGhlIHByZWZlcnJlZCBtYXRj aCBmb3IgYSB0ZXh0IGxpbmsgaXMKIGEgQGl7ZGVkaWNhdGVkIHRhcmdldH06IHRoZSBzYW1l IHN0cmluZyBpbiBkb3VibGUgYW5ndWxhciBicmFja2V0cywgbGlrZQpAQCAtMzQ2Miw3ICsz NDYxLDcgQEAgSW50ZXJuYWwgbGlua3MKIER1cmluZyBleHBvcnQsIGludGVybmFsIGxpbmtz IHdpbGwgYmUgdXNlZCB0byBtYXJrIG9iamVjdHMgYW5kIGFzc2lnbiB0aGVtCiBhIG51bWJl ci4gIE1hcmtlZCBvYmplY3RzIHdpbGwgdGhlbiBiZSByZWZlcmVuY2VkIGJ5IGxpbmtzIHBv aW50aW5nIHRvIHRoZW0uCiBJbiBwYXJ0aWN1bGFyLCBsaW5rcyB3aXRob3V0IGEgZGVzY3Jp cHRpb24gd2lsbCBhcHBlYXIgYXMgdGhlIG51bWJlciBhc3NpZ25lZAotdG8gdGhlIG1hcmtl ZCBvYmplY3RAZm9vdG5vdGV7V2hlbiB0YXJnZXRpbmcgYSBAY29kZXsjK05BTUV9IGtleXdv cmQsCit0byB0aGUgbWFya2VkIG9iamVjdEBmb290bm90ZXtXaGVuIHRhcmdldGluZyBhIEBj b2RleyMrTkFNRX0ga2V5d29yZCwgdGhlCiBAY29kZXsjK0NBUFRJT059IGtleXdvcmQgaXMg bWFuZGF0b3J5IGluIG9yZGVyIHRvIGdldCBwcm9wZXIgbnVtYmVyaW5nCiAoQHB4cmVme0lt YWdlcyBhbmQgdGFibGVzfSkufS4gIEluIHRoZSBmb2xsb3dpbmcgZXhjZXJwdCBmcm9tIGFu IE9yZyBidWZmZXIKIApAQCAtMzU2OSw3ICszNTY4LDcgQEAgRXh0ZXJuYWwgbGlua3MKIAog QGNpbmRleCBWTSBsaW5rcwogQGNpbmRleCBXQU5ERVJMVVNUIGxpbmtzCi1PbiB0b3Agb2Yg dGhlc2UgYnVpbHQtaW4gbGluayB0eXBlcywgc29tZSBhcmUgYXZhaWxhYmxlIHRocm91Z2gg dGhlCitPbiB0b3Agb2YgdGhlc2UgYnVpbHQtaW4gbGluayB0eXBlcywgYWRkaXRpb25hbCBv bmVzIGFyZSBhdmFpbGFibGUgdGhyb3VnaCB0aGUKIEBjb2Rle2NvbnRyaWIvfSBkaXJlY3Rv cnkgKEBweHJlZntJbnN0YWxsYXRpb259KS4gIEZvciBleGFtcGxlLCB0aGVzZSBsaW5rcwog dG8gVk0gb3IgV2FuZGVybHVzdCBtZXNzYWdlcyBhcmUgYXZhaWxhYmxlIHdoZW4geW91IGxv YWQgdGhlIGNvcnJlc3BvbmRpbmcKIGxpYnJhcmllcyBmcm9tIHRoZSBAY29kZXtjb250cmli L30gZGlyZWN0b3J5OgpAQCAtMzU4NCw3ICszNTgzLDcgQEAgRXh0ZXJuYWwgbGlua3MKIHds OmZvbGRlciNpZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBye1dBTkRFUkxV U1QgbWVzc2FnZSBsaW5rfQogQGVuZCBleGFtcGxlCiAKLUZvciBjdXN0b21pemluZyBPcmcg dG8gYWRkIG5ldyBsaW5rIHR5cGVzIEByZWZ7QWRkaW5nIGh5cGVybGluayB0eXBlc30uCitG b3IgbW9yZSBvbiBjdXN0b21pemluZyBPcmcgdG8gYWRkIG5ldyBsaW5rIHR5cGVzIHNlZSBA cmVme0FkZGluZyBoeXBlcmxpbmsgdHlwZXN9LgogCiBBIGxpbmsgc2hvdWxkIGJlIGVuY2xv c2VkIGluIGRvdWJsZSBicmFja2V0cyBhbmQgbWF5IGNvbnRhaW4gYSBkZXNjcmlwdGl2ZQog dGV4dCB0byBiZSBkaXNwbGF5ZWQgaW5zdGVhZCBvZiB0aGUgVVJMIChAcHhyZWZ7TGluayBm b3JtYXR9KSwgZm9yIGV4YW1wbGU6CkBAIC0zNTk2LDcgKzM1OTUsNyBAQCBFeHRlcm5hbCBs aW5rcwogQG5vaW5kZW50CiBJZiB0aGUgZGVzY3JpcHRpb24gaXMgYSBmaWxlIG5hbWUgb3Ig VVJMIHRoYXQgcG9pbnRzIHRvIGFuIGltYWdlLCBIVE1MCiBleHBvcnQgKEBweHJlZntIVE1M IGV4cG9ydH0pIHdpbGwgaW5saW5lIHRoZSBpbWFnZSBhcyBhIGNsaWNrYWJsZQotYnV0dG9u LiAgSWYgdGhlcmUgaXMgbm8gZGVzY3JpcHRpb24gYXQgYWxsIGFuZCB0aGUgbGluayBwb2lu dHMgdG8gYW4KK2J1dHRvbi4gIElmIHRoZXJlIGlzIG5vIGRlc2NyaXB0aW9uIGFuZCB0aGUg bGluayBwb2ludHMgdG8gYW4KIGltYWdlLAogdGhhdCBpbWFnZSB3aWxsIGJlIGlubGluZWQg aW50byB0aGUgZXhwb3J0ZWQgSFRNTCBmaWxlLgogCkBAIC0zNjA1LDcgKzM2MDQsNyBAQCBF eHRlcm5hbCBsaW5rcwogT3JnIGFsc28gZmluZHMgZXh0ZXJuYWwgbGlua3MgaW4gdGhlIG5v cm1hbCB0ZXh0IGFuZCBhY3RpdmF0ZXMgdGhlbQogYXMgbGlua3MuICBJZiBzcGFjZXMgbXVz dCBiZSBwYXJ0IG9mIHRoZSBsaW5rIChmb3IgZXhhbXBsZSBpbgogQHNhbXB7YmJkYjpSaWNo YXJkIFN0YWxsbWFufSksIG9yIGlmIHlvdSBuZWVkIHRvIHJlbW92ZSBhbWJpZ3VpdGllcwot YWJvdXQgdGhlIGVuZCBvZiB0aGUgbGluaywgZW5jbG9zZSB0aGVtIGluIHNxdWFyZSBicmFj a2V0cy4KK2Fib3V0IHRoZSBlbmQgb2YgdGhlIGxpbmssIGVuY2xvc2UgdGhlIGxpbmsgaW4g c3F1YXJlIGJyYWNrZXRzLgogCiBAbm9kZSBIYW5kbGluZyBsaW5rcwogQHNlY3Rpb24gSGFu ZGxpbmcgbGlua3MKQEAgLTM2MjAsMTEgKzM2MTksMTEgQEAgSGFuZGxpbmcgbGlua3MKIFN0 b3JlIGEgbGluayB0byB0aGUgY3VycmVudCBsb2NhdGlvbi4gIFRoaXMgaXMgYSBAZW1waHtn bG9iYWx9IGNvbW1hbmQgKHlvdQogbXVzdCBjcmVhdGUgdGhlIGtleSBiaW5kaW5nIHlvdXJz ZWxmKSB3aGljaCBjYW4gYmUgdXNlZCBpbiBhbnkgYnVmZmVyIHRvCiBjcmVhdGUgYSBsaW5r LiAgVGhlIGxpbmsgd2lsbCBiZSBzdG9yZWQgZm9yIGxhdGVyIGluc2VydGlvbiBpbnRvIGFu IE9yZwotYnVmZmVyIChzZWUgYmVsb3cpLiAgV2hhdCBraW5kIG9mIGxpbmsgd2lsbCBiZSBj cmVhdGVkIGRlcGVuZHMgb24gdGhlIGN1cnJlbnQKLWJ1ZmZlcjoKK2J1ZmZlciAoc2VlIGJl bG93KS4gIFRoZSBraW5kIG9mIGxpbmsgdGhhdCB3aWxsIGJlIGNyZWF0ZWQgZGVwZW5kcyBv biB0aGUKK2N1cnJlbnQgYnVmZmVyOgogCiBAYntPcmcgbW9kZSBidWZmZXJzfUAqCi1Gb3Ig T3JnIGZpbGVzLCBpZiB0aGVyZSBpcyBhIEBzYW1wezw8dGFyZ2V0Pj59IGF0IHRoZSBjdXJz b3IsIHRoZSBsaW5rIHBvaW50cworRm9yIE9yZyBmaWxlcywgaWYgdGhlcmUgaXMgYSBAc2Ft cHs8PHRhcmdldD4+fSBhdCBwb2ludCwgdGhlIGxpbmsgcG9pbnRzCiB0byB0aGUgdGFyZ2V0 LiAgT3RoZXJ3aXNlIGl0IHBvaW50cyB0byB0aGUgY3VycmVudCBoZWFkbGluZSwgd2hpY2gg d2lsbCBhbHNvCiBiZSB0aGUgZGVzY3JpcHRpb25AZm9vdG5vdGV7SWYgdGhlIGhlYWRsaW5l IGNvbnRhaW5zIGEgdGltZXN0YW1wLCBpdCB3aWxsIGJlCiByZW1vdmVkIGZyb20gdGhlIGxp bmsgYW5kIHJlc3VsdCBpbiBhIHdyb25nIGxpbmstLS15b3Ugc2hvdWxkIGF2b2lkIHB1dHRp bmcKQEAgLTM2MzQsMjMgKzM2MzMsMjQgQEAgSGFuZGxpbmcgbGlua3MKIEBjaW5kZXggcHJv cGVydHksIEBjb2Rle0NVU1RPTV9JRH0KIEBjaW5kZXggcHJvcGVydHksIEBjb2Rle0lEfQog SWYgdGhlIGhlYWRsaW5lIGhhcyBhIEBjb2Rle0NVU1RPTV9JRH0gcHJvcGVydHksIGEgbGlu ayB0byB0aGlzIGN1c3RvbSBJRAotd2lsbCBiZSBzdG9yZWQuICBJbiBhZGRpdGlvbiBvciBh bHRlcm5hdGl2ZWx5IChkZXBlbmRpbmcgb24gdGhlIHZhbHVlIG9mCi1AY29kZXtvcmctaWQt bGluay10by1vcmctdXNlLWlkfSksIGEgZ2xvYmFsbHkgdW5pcXVlIEBjb2Rle0lEfSBwcm9w ZXJ0eSB3aWxsCi1iZSBjcmVhdGVkIGFuZC9vciB1c2VkIHRvIGNvbnN0cnVjdCBhIGxpbmtA Zm9vdG5vdGV7VGhlIGxpYnJhcnkKLUBmaWxle29yZy1pZC5lbH0gbXVzdCBmaXJzdCBiZSBs b2FkZWQsIGVpdGhlciB0aHJvdWdoIEBjb2Rle29yZy1jdXN0b21pemV9IGJ5Ci1lbmFibGlu ZyBAY29kZXtvcmctaWR9IGluIEBjb2Rle29yZy1tb2R1bGVzfSwgb3IgYnkgYWRkaW5nIEBj b2RleyhyZXF1aXJlCi0nb3JnLWlkKX0gaW4geW91ciBFbWFjcyBpbml0IGZpbGUufS4gIFNv IHVzaW5nIHRoaXMgY29tbWFuZCBpbiBPcmcgYnVmZmVycwotd2lsbCBwb3RlbnRpYWxseSBj cmVhdGUgdHdvIGxpbmtzOiBhIGh1bWFuLXJlYWRhYmxlIGZyb20gdGhlIGN1c3RvbSBJRCwg YW5kCi1vbmUgdGhhdCBpcyBnbG9iYWxseSB1bmlxdWUgYW5kIHdvcmtzIGV2ZW4gaWYgdGhl IGVudHJ5IGlzIG1vdmVkIGZyb20gZmlsZSB0bwotZmlsZS4gIExhdGVyLCB3aGVuIGluc2Vy dGluZyB0aGUgbGluaywgeW91IG5lZWQgdG8gZGVjaWRlIHdoaWNoIG9uZSB0byB1c2UuCit3 aWxsIGJlIHN0b3JlZC4gIERlcGVuZGluZyBvbiB0aGUgdmFsdWUgb2YKK0Bjb2Rle29yZy1p ZC1saW5rLXRvLW9yZy11c2UtaWR9KSwgYSBnbG9iYWxseSB1bmlxdWUgQGNvZGV7SUR9IHBy b3BlcnR5Cit3aWxsIGJlIGNyZWF0ZWQgYW5kL29yIHVzZWQgdG8gY29uc3RydWN0IGEgbGlu a0Bmb290bm90ZXtUaGUgbGlicmFyeQorQGZpbGV7b3JnLWlkLmVsfSBtdXN0IGZpcnN0IGJl IGxvYWRlZCwgZWl0aGVyIHRocm91Z2ggQGNvZGV7b3JnLWN1c3RvbWl6ZX0KK2J5IGVuYWJs aW5nIEBjb2Rle29yZy1pZH0gaW4gQGNvZGV7b3JnLW1vZHVsZXN9LCBvciBieSBhZGRpbmcK K0Bjb2RleyhyZXF1aXJlICdvcmctaWQpfSBpbiB5b3VyIEVtYWNzIGluaXQgZmlsZS59LiAg U28gdXNpbmcgdGhpcyBjb21tYW5kCitpbiBPcmcgYnVmZmVycyB3aWxsIHBvdGVudGlhbGx5 IGNyZWF0ZSB0d28gbGlua3M6IGEgaHVtYW4tcmVhZGFibGUgZnJvbSB0aGUKK2N1c3RvbSBJ RCwgYW5kIG9uZSB0aGF0IGlzIGdsb2JhbGx5IHVuaXF1ZSBhbmQgd29ya3MgZXZlbiBpZiB0 aGUgZW50cnkgaXMKK21vdmVkIGZyb20gZmlsZSB0byBmaWxlLiAgTGF0ZXIsIHdoZW4gaW5z ZXJ0aW5nIHRoZSBsaW5rLCB5b3UgbmVlZCB0bworZGVjaWRlIHdoaWNoIG9uZSB0byB1c2Uu CiAKIEBie0VtYWlsL05ld3MgY2xpZW50czogVk0sIFJtYWlsLCBXYW5kZXJsdXN0LCBNSC1F LCBHbnVzfUAqCiBQcmV0dHkgbXVjaCBhbGwgRW1hY3MgbWFpbCBjbGllbnRzIGFyZSBzdXBw b3J0ZWQuICBUaGUgbGluayB3aWxsIHBvaW50IHRvIHRoZQogY3VycmVudCBhcnRpY2xlLCBv ciwgaW4gc29tZSBHTlVTIGJ1ZmZlcnMsIHRvIHRoZSBncm91cC4gIFRoZSBkZXNjcmlwdGlv biBpcwogY29uc3RydWN0ZWQgZnJvbSB0aGUgYXV0aG9yIGFuZCB0aGUgc3ViamVjdC4KIAot QGJ7V2ViIGJyb3dzZXJzOiBFd3csIFczIGFuZCBXM019QCoKLUhlcmUgdGhlIGxpbmsgd2ls bCBiZSB0aGUgY3VycmVudCBVUkwsIHdpdGggdGhlIHBhZ2UgdGl0bGUgYXMgZGVzY3JpcHRp b24uCitAYntXZWIgYnJvd3NlcnM6IEVXVywgVzMgYW5kIFczTX1AKgorSGVyZSB0aGUgbGlu ayB3aWxsIGJlIHRoZSBjdXJyZW50IFVSTCwgd2l0aCB0aGUgcGFnZSB0aXRsZSBhcyB0aGUg ZGVzY3JpcHRpb24uCiAKIEBie0NvbnRhY3RzOiBCQkRCfUAqCiBMaW5rcyBjcmVhdGVkIGlu IGEgQkJEQiBidWZmZXIgd2lsbCBwb2ludCB0byB0aGUgY3VycmVudCBlbnRyeS4KQEAgLTM2 NjYsMTMgKzM2NjYsMTIgQEAgSGFuZGxpbmcgbGlua3MKIEZvciBhbnkgb3RoZXIgZmlsZXMs IHRoZSBsaW5rIHdpbGwgcG9pbnQgdG8gdGhlIGZpbGUsIHdpdGggYSBzZWFyY2ggc3RyaW5n CiAoQHB4cmVme1NlYXJjaCBvcHRpb25zfSkgcG9pbnRpbmcgdG8gdGhlIGNvbnRlbnRzIG9m IHRoZSBjdXJyZW50IGxpbmUuICBJZgogdGhlcmUgaXMgYW4gYWN0aXZlIHJlZ2lvbiwgdGhl IHNlbGVjdGVkIHdvcmRzIHdpbGwgZm9ybSB0aGUgYmFzaXMgb2YgdGhlCi1zZWFyY2ggc3Ry aW5nLiAgSWYgdGhlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBsaW5rIGlzIG5vdCB3b3JraW5n IGNvcnJlY3RseSBvcgotYWNjdXJhdGVseSBlbm91Z2gsIHlvdSBjYW4gd3JpdGUgY3VzdG9t IGZ1bmN0aW9ucyB0byBzZWxlY3QgdGhlIHNlYXJjaCBzdHJpbmcKK3NlYXJjaCBzdHJpbmcu ICBZb3UgY2FuIHdyaXRlIGN1c3RvbSBMaXNwIGZ1bmN0aW9ucyB0byBzZWxlY3QgdGhlIHNl YXJjaCBzdHJpbmcKIGFuZCB0byBkbyB0aGUgc2VhcmNoIGZvciBwYXJ0aWN1bGFyIGZpbGUg dHlwZXMtLS1zZWUgQHJlZntDdXN0b20gc2VhcmNoZXN9LgogVGhlIGtleSBiaW5kaW5nIEBr YmR7Qy1jIGx9IGlzIG9ubHkgYSBzdWdnZXN0aW9uLS0tc2VlIEByZWZ7SW5zdGFsbGF0aW9u fS4KIAogQGJ7QWdlbmRhIHZpZXd9QCoKLVdoZW4gdGhlIGN1cnNvciBpcyBpbiBhbiBhZ2Vu ZGEgdmlldywgdGhlIGNyZWF0ZWQgbGluayBwb2ludHMgdG8gdGhlCitXaGVuIHBvaW50IGlz IGluIGFuIGFnZW5kYSB2aWV3LCB0aGUgY3JlYXRlZCBsaW5rIHBvaW50cyB0byB0aGUKIGVu dHJ5IHJlZmVyZW5jZWQgYnkgdGhlIGN1cnJlbnQgbGluZS4KIAogQGMKQEAgLTM2ODQsMTcg KzM2ODMsMTggQEAgSGFuZGxpbmcgbGlua3MKIEB2aW5kZXggb3JnLWxpbmstcGFyYW1ldGVy cwogSW5zZXJ0IGEgbGlua0Bmb290bm90ZXtOb3RlIHRoYXQgeW91IGRvbid0IGhhdmUgdG8g dXNlIHRoaXMgY29tbWFuZCB0bwogaW5zZXJ0IGEgbGluay4gIExpbmtzIGluIE9yZyBhcmUg cGxhaW4gdGV4dCwgYW5kIHlvdSBjYW4gdHlwZSBvciBwYXN0ZSB0aGVtCi1zdHJhaWdodCBp bnRvIHRoZSBidWZmZXIuICBCeSB1c2luZyB0aGlzIGNvbW1hbmQsIHRoZSBsaW5rcyBhcmUg YXV0b21hdGljYWxseQotZW5jbG9zZWQgaW4gZG91YmxlIGJyYWNrZXRzLCBhbmQgeW91IHdp bGwgYmUgYXNrZWQgZm9yIHRoZSBvcHRpb25hbAotZGVzY3JpcHRpdmUgdGV4dC59LiAgVGhp cyBwcm9tcHRzIGZvciBhIGxpbmsgdG8gYmUgaW5zZXJ0ZWQgaW50byB0aGUgYnVmZmVyLgot WW91IGNhbiBqdXN0IHR5cGUgYSBsaW5rLCB1c2luZyB0ZXh0IGZvciBhbiBpbnRlcm5hbCBs aW5rLCBvciBvbmUgb2YgdGhlIGxpbmsKLXR5cGUgcHJlZml4ZXMgbWVudGlvbmVkIGluIHRo ZSBleGFtcGxlcyBhYm92ZS4gIFRoZSBsaW5rIHdpbGwgYmUgaW5zZXJ0ZWQKLWludG8gdGhl IGJ1ZmZlckBmb290bm90ZXtBZnRlciBpbnNlcnRpb24gb2YgYSBzdG9yZWQgbGluaywgdGhl IGxpbmsgd2lsbCBiZQotcmVtb3ZlZCBmcm9tIHRoZSBsaXN0IG9mIHN0b3JlZCBsaW5rcy4g IFRvIGtlZXAgaXQgaW4gdGhlIGxpc3QgbGF0ZXIgdXNlLCB1c2UKLWEgdHJpcGxlIEBrYmR7 Qy11fSBwcmVmaXggYXJndW1lbnQgdG8gQGtiZHtDLWMgQy1sfSwgb3IgY29uZmlndXJlIHRo ZSBvcHRpb24KLUBjb2Rle29yZy1rZWVwLXN0b3JlZC1saW5rLWFmdGVyLWluc2VydGlvbn0u fSwgYWxvbmcgd2l0aCBhIGRlc2NyaXB0aXZlIHRleHQuCi1JZiBzb21lIHRleHQgd2FzIHNl bGVjdGVkIHdoZW4gdGhpcyBjb21tYW5kIGlzIGNhbGxlZCwgdGhlIHNlbGVjdGVkIHRleHQK LWJlY29tZXMgdGhlIGRlZmF1bHQgZGVzY3JpcHRpb24uCitzdHJhaWdodCBpbnRvIHRoZSBi dWZmZXIuICBCeSB1c2luZyB0aGlzIGNvbW1hbmQsIHRoZSBsaW5rcyBhcmUKK2F1dG9tYXRp Y2FsbHkgZW5jbG9zZWQgaW4gZG91YmxlIGJyYWNrZXRzLCBhbmQgeW91IHdpbGwgYmUgYXNr ZWQgZm9yIHRoZQorb3B0aW9uYWwgZGVzY3JpcHRpdmUgdGV4dC59LiAgVGhpcyBwcm9tcHRz IGZvciBhIGxpbmsgdG8gYmUgaW5zZXJ0ZWQgaW50bwordGhlIGJ1ZmZlci4gIFlvdSBjYW4g anVzdCB0eXBlIGEgbGluaywgdXNpbmcgdGV4dCBmb3IgYW4gaW50ZXJuYWwgbGluaywgb3IK K29uZSBvZiB0aGUgbGluayB0eXBlIHByZWZpeGVzIG1lbnRpb25lZCBpbiB0aGUgZXhhbXBs ZXMgYWJvdmUuICBUaGUgbGluaword2lsbCBiZSBpbnNlcnRlZCBpbnRvIHRoZSBidWZmZXJA Zm9vdG5vdGV7QWZ0ZXIgaW5zZXJ0aW9uIG9mIGEgc3RvcmVkIGxpbmssCit0aGUgbGluayB3 aWxsIGJlIHJlbW92ZWQgZnJvbSB0aGUgbGlzdCBvZiBzdG9yZWQgbGlua3MuICBUbyBrZWVw IGl0IGluIHRoZQorbGlzdCBmb3IgbGF0ZXIgdXNlLCB1c2UgYSB0cmlwbGUgQGtiZHtDLXV9 IHByZWZpeCBhcmd1bWVudCB0byBAa2Jke0MtYworQy1sfSwgb3IgY29uZmlndXJlIHRoZSBv cHRpb24KK0Bjb2Rle29yZy1rZWVwLXN0b3JlZC1saW5rLWFmdGVyLWluc2VydGlvbn0ufSwg YWxvbmcgd2l0aCBhIGRlc2NyaXB0aXZlCit0ZXh0LiAgSWYgc29tZSB0ZXh0IHdhcyBzZWxl Y3RlZCB3aGVuIHRoaXMgY29tbWFuZCBpcyBjYWxsZWQsIHRoZSBzZWxlY3RlZAordGV4dCBi ZWNvbWVzIHRoZSBkZWZhdWx0IGRlc2NyaXB0aW9uLgogCiBAYntJbnNlcnRpbmcgc3RvcmVk IGxpbmtzfUAqCiBBbGwgbGlua3Mgc3RvcmVkIGR1cmluZyB0aGUKQEAgLTM3MjQsNyArMzcy NCw3IEBAIEhhbmRsaW5nIGxpbmtzCiBmb3JjZSBhbiBhYnNvbHV0ZSBwYXRoIHdpdGggdHdv IEBrYmR7Qy11fSBwcmVmaXhlcy4KIEBjCiBAaXRlbSBDLWMgQy1sIEAgQHJ7KHdpdGggY3Vy c29yIG9uIGV4aXN0aW5nIGxpbmspfQotV2hlbiB0aGUgY3Vyc29yIGlzIG9uIGFuIGV4aXN0 aW5nIGxpbmssIEBrYmR7Qy1jIEMtbH0gYWxsb3dzIHlvdSB0byBlZGl0IHRoZQorV2hlbiBw b2ludCBpcyBvbiBhbiBleGlzdGluZyBsaW5rLCBAa2Jke0MtYyBDLWx9IGFsbG93cyB5b3Ug dG8gZWRpdCB0aGUKIGxpbmsgYW5kIGRlc2NyaXB0aW9uIHBhcnRzIG9mIHRoZSBsaW5rLgog QGMKIEBjaW5kZXggZm9sbG93aW5nIGxpbmtzCkBAIC0zNzM1LDE1ICszNzM1LDE1IEBAIEhh bmRsaW5nIGxpbmtzCiBAY29tbWFuZHticm93c2UtdXJsLWF0LXBvaW50fSksIHJ1biBWTS9N SC1FL1dhbmRlcmx1c3QvUm1haWwvR251cy9CQkRCIGZvcgogdGhlIGNvcnJlc3BvbmRpbmcg bGlua3MsIGFuZCBleGVjdXRlIHRoZSBjb21tYW5kIGluIGEgc2hlbGwgbGluay4gIFdoZW4g dGhlCiBjdXJzb3IgaXMgb24gYW4gaW50ZXJuYWwgbGluaywgdGhpcyBjb21tYW5kIHJ1bnMg dGhlIGNvcnJlc3BvbmRpbmcgc2VhcmNoLgotV2hlbiB0aGUgY3Vyc29yIGlzIG9uIGEgVEFH IGxpc3QgaW4gYSBoZWFkbGluZSwgaXQgY3JlYXRlcyB0aGUgY29ycmVzcG9uZGluZwotVEFH UyB2aWV3LiAgSWYgdGhlIGN1cnNvciBpcyBvbiBhIHRpbWVzdGFtcCwgaXQgY29tcGlsZXMg dGhlIGFnZW5kYSBmb3IgdGhhdAorV2hlbiBwb2ludCBpcyBvbiBhIFRBRyBsaXN0IGluIGEg aGVhZGxpbmUsIGl0IGNyZWF0ZXMgdGhlIGNvcnJlc3BvbmRpbmcKK1RBR1Mgdmlldy4gIElm IHBvaW50IGlzIG9uIGEgdGltZXN0YW1wLCBpdCBjb21waWxlcyB0aGUgYWdlbmRhIGZvciB0 aGF0CiBkYXRlLiAgRnVydGhlcm1vcmUsIGl0IHdpbGwgdmlzaXQgdGV4dCBhbmQgcmVtb3Rl IGZpbGVzIGluIEBzYW1we2ZpbGU6fSBsaW5rcwogd2l0aCBFbWFjcyBhbmQgc2VsZWN0IGEg c3VpdGFibGUgYXBwbGljYXRpb24gZm9yIGxvY2FsIG5vbi10ZXh0IGZpbGVzLgogQ2xhc3Np ZmljYXRpb24gb2YgZmlsZXMgaXMgYmFzZWQgb24gZmlsZSBleHRlbnNpb24gb25seS4gIFNl ZSBvcHRpb24KIEBjb2Rle29yZy1maWxlLWFwcHN9LiAgSWYgeW91IHdhbnQgdG8gb3ZlcnJp ZGUgdGhlIGRlZmF1bHQgYXBwbGljYXRpb24gYW5kCiB2aXNpdCB0aGUgZmlsZSB3aXRoIEVt YWNzLCB1c2UgYSBAa2Jke0MtdX0gcHJlZml4LiAgSWYgeW91IHdhbnQgdG8gYXZvaWQKIG9w ZW5pbmcgaW4gRW1hY3MsIHVzZSBhIEBrYmR7Qy11IEMtdX0gcHJlZml4LkAqCi1JZiB0aGUg Y3Vyc29yIGlzIG9uIGEgaGVhZGxpbmUsIGJ1dCBub3Qgb24gYSBsaW5rLCBvZmZlciBhbGwg bGlua3MgaW4gdGhlCitJZiBwb2ludCBpcyBvbiBhIGhlYWRsaW5lLCBidXQgbm90IG9uIGEg bGluaywgb2ZmZXIgYWxsIGxpbmtzIGluIHRoZQogaGVhZGxpbmUgYW5kIGVudHJ5IHRleHQu ICBJZiB5b3Ugd2FudCB0byBzZXR1cCB0aGUgZnJhbWUgY29uZmlndXJhdGlvbiBmb3IKIGZv bGxvd2luZyBsaW5rcywgY3VzdG9taXplIEBjb2Rle29yZy1saW5rLWZyYW1lLXNldHVwfS4K IApAQCAtMzc4MSw3ICszNzgxLDcgQEAgSGFuZGxpbmcgbGlua3MKIEBjb2RleyMrU1RBUlRV UH0ga2V5d29yZHMgQGNvZGV7aW5saW5laW1hZ2VzfSBhbmQgQGNvZGV7bm9pbmxpbmVpbWFn ZXN9fS4KIEBvcmdjbWR7Qy1jICUsb3JnLW1hcmstcmluZy1wdXNofQogQGNpbmRleCBtYXJr IHJpbmcKLVB1c2ggdGhlIGN1cnJlbnQgcG9zaXRpb24gb250byB0aGUgbWFyayByaW5nLCB0 byBiZSBhYmxlIHRvIHJldHVybgorUHVzaCB0aGUgY3VycmVudCBwb3NpdGlvbiBvbnRvIE9y ZydzIG1hcmsgcmluZywgdG8gYmUgYWJsZSB0byByZXR1cm4KIGVhc2lseS4gIENvbW1hbmRz IGZvbGxvd2luZyBhbiBpbnRlcm5hbCBsaW5rIGRvIHRoaXMgYXV0b21hdGljYWxseS4KIEBj CiBAb3JnY21ke0MtYyAmLG9yZy1tYXJrLXJpbmctZ290b30KQEAgLTM3OTMsNyArMzc5Myw3 IEBAIEhhbmRsaW5nIGxpbmtzCiBAYwogQG9yZ2NtZGtrY2N7Qy1jIEMteCBDLW4sQy1jIEMt eCBDLXAsb3JnLW5leHQtbGluayxvcmctcHJldmlvdXMtbGlua30KIEBjaW5kZXggbGlua3Ms IGZpbmRpbmcgbmV4dC9wcmV2aW91cwotTW92ZSBmb3J3YXJkL2JhY2t3YXJkIHRvIHRoZSBu ZXh0IGxpbmsgaW4gdGhlIGJ1ZmZlci4gIEF0IHRoZSBsaW1pdCBvZgorTW92ZSBmb3J3YXJk L2JhY2t3YXJkIHRvIHRoZSBuZXh0IGxpbmsgaW4gdGhlIGJ1ZmZlci4gIEF0IHRoZSBlbmQg b2YKIHRoZSBidWZmZXIsIHRoZSBzZWFyY2ggZmFpbHMgb25jZSwgYW5kIHRoZW4gd3JhcHMg YXJvdW5kLiAgVGhlIGtleQogYmluZGluZ3MgZm9yIHRoaXMgYXJlIHJlYWxseSB0b28gbG9u ZzsgeW91IG1pZ2h0IHdhbnQgdG8gYmluZCB0aGlzIGFsc28KIHRvIEBrYmR7Qy1ufSBhbmQg QGtiZHtDLXB9CkBAIC0zODA4LDE2ICszODA4LDE3IEBAIEhhbmRsaW5nIGxpbmtzCiBAbm9k ZSBVc2luZyBsaW5rcyBvdXRzaWRlIE9yZwogQHNlY3Rpb24gVXNpbmcgbGlua3Mgb3V0c2lk ZSBPcmcKIAotWW91IGNhbiBpbnNlcnQgYW5kIGZvbGxvdyBsaW5rcyB0aGF0IGhhdmUgT3Jn IHN5bnRheCBub3Qgb25seSBpbgotT3JnLCBidXQgaW4gYW55IEVtYWNzIGJ1ZmZlci4gIEZv ciB0aGlzLCB5b3Ugc2hvdWxkIGNyZWF0ZSB0d28KLWdsb2JhbCBjb21tYW5kcywgbGlrZSB0 aGlzIChwbGVhc2Ugc2VsZWN0IHN1aXRhYmxlIGdsb2JhbCBrZXlzCi15b3Vyc2VsZik6CitZ b3UgY2FuIGluc2VydCBhbmQgZm9sbG93IGxpbmtzIHRoYXQgaGF2ZSBPcmcgc3ludGF4IG5v dCBvbmx5IGluIE9yZywgYnV0CitpbiBhbnkgRW1hY3MgYnVmZmVyLiAgVG8gYWNoaWV2ZSB0 aGlzLCB5b3UgY2FuIGNyZWF0ZSB0d28gZ2xvYmFsIGtleQorYmluZGluZ3MsIHVzaW5nIExp c3AgY29kZSBsaWtlIHRoaXMgKGFsdGVybmF0aXZlIGtleXMgbWF5IGJlIGNob3Nlbik6CiAK IEBsaXNwCiAoZ2xvYmFsLXNldC1rZXkgIlxDLWMgTCIgJ29yZy1pbnNlcnQtbGluay1nbG9i YWwpCiAoZ2xvYmFsLXNldC1rZXkgIlxDLWMgbyIgJ29yZy1vcGVuLWF0LXBvaW50LWdsb2Jh bCkKIEBlbmQgbGlzcAogCitUaGlzIGNhbiBiZSBwbGFjZWQgaW4geW91ciBJbml0IGZpbGUs IGZvciBpbnN0YW5jZS4KKwogQG5vZGUgTGluayBhYmJyZXZpYXRpb25zCiBAc2VjdGlvbiBM aW5rIGFiYnJldmlhdGlvbnMKIEBjaW5kZXggbGluayBhYmJyZXZpYXRpb25zCkBAIC0zODU1 LDEyICszODU2LDEyIEBAIExpbmsgYWJicmV2aWF0aW9ucwogcmVwbGFjZWQgd2l0aCB0aGUg dGFnLiAgVXNpbmcgQHNhbXB7JWh9IGluc3RlYWQgb2YgQHNhbXB7JXN9IHdpbGwKIHVybC1l bmNvZGUgdGhlIHRhZyAoc2VlIHRoZSBleGFtcGxlIGFib3ZlLCB3aGVyZSB3ZSBuZWVkIHRv IGVuY29kZQogdGhlIFVSTCBwYXJhbWV0ZXIuKSAgVXNpbmcgQHNhbXB7JShteS1mdW5jdGlv bil9IHdpbGwgcGFzcyB0aGUgdGFnCi10byBhIGN1c3RvbSBmdW5jdGlvbiwgYW5kIHJlcGxh Y2UgaXQgYnkgdGhlIHJlc3VsdGluZyBzdHJpbmcuCit0byBhIGN1c3RvbSBMaXNwIGZ1bmN0 aW9uLCBhbmQgcmVwbGFjZSBpdCBieSB0aGUgcmVzdWx0aW5nIHN0cmluZy4KIAogSWYgdGhl IHJlcGxhY2VtZW50IHRleHQgZG9lc24ndCBjb250YWluIGFueSBzcGVjaWZpZXIsIHRoZSB0 YWcgd2lsbCBzaW1wbHkgYmUKIGFwcGVuZGVkIGluIG9yZGVyIHRvIGNyZWF0ZSB0aGUgbGlu ay4KIAotSW5zdGVhZCBvZiBhIHN0cmluZywgeW91IG1heSBhbHNvIHNwZWNpZnkgYSBmdW5j dGlvbiB0aGF0IHdpbGwgYmUKK0luc3RlYWQgb2YgYSBzdHJpbmcsIHlvdSBtYXkgYWxzbyBz cGVjaWZ5IGEgTGlzcCBmdW5jdGlvbiB0aGF0IHdpbGwgYmUKIGNhbGxlZCB3aXRoIHRoZSB0 YWcgYXMgdGhlIG9ubHkgYXJndW1lbnQgdG8gY3JlYXRlIHRoZSBsaW5rLgogCiBXaXRoIHRo ZSBhYm92ZSBzZXR0aW5nLCB5b3UgY291bGQgbGluayB0byBhIHNwZWNpZmljIGJ1ZyB3aXRo CkBAIC0zODgyLDEwICszODgzLDExIEBAIExpbmsgYWJicmV2aWF0aW9ucwogCiBAbm9pbmRl bnQKIEluLWJ1ZmZlciBjb21wbGV0aW9uIChAcHhyZWZ7Q29tcGxldGlvbn0pIGNhbiBiZSB1 c2VkIGFmdGVyIEBzYW1we1t9IHRvCi1jb21wbGV0ZSBsaW5rIGFiYnJldmlhdGlvbnMuICBZ b3UgbWF5IGFsc28gZGVmaW5lIGEgZnVuY3Rpb24gdGhhdCBpbXBsZW1lbnRzCi1zcGVjaWFs IChlLmcuLCBjb21wbGV0aW9uKSBzdXBwb3J0IGZvciBpbnNlcnRpbmcgc3VjaCBhIGxpbmsg d2l0aCBAa2Jke0MtYwotQy1sfS4gIFN1Y2ggYSBmdW5jdGlvbiBzaG91bGQgbm90IGFjY2Vw dCBhbnkgYXJndW1lbnRzLCBhbmQgcmV0dXJuIHRoZSBmdWxsCi1saW5rIHdpdGggcHJlZml4 LiAgWW91IGNhbiBhZGQgYSBjb21wbGV0aW9uIGZ1bmN0aW9uIHRvIGEgbGluayBsaWtlIHRo aXM6Citjb21wbGV0ZSBsaW5rIGFiYnJldmlhdGlvbnMuICBZb3UgbWF5IGFsc28gZGVmaW5l IGEgTGlzcCBmdW5jdGlvbiB0aGF0CitpbXBsZW1lbnRzIHNwZWNpYWwgKGUuZy4gY29tcGxl dGlvbikgc3VwcG9ydCBmb3IgaW5zZXJ0aW5nIHN1Y2ggYSBsaW5rIHdpdGgKK0BrYmR7Qy1j IEMtbH0uICBTdWNoIGEgZnVuY3Rpb24gc2hvdWxkIG5vdCBhY2NlcHQgYW55IGFyZ3VtZW50 cywgYW5kIHNob3VsZAorcmV0dXJuIHRoZSBmdWxsIGxpbmsgd2l0aCBhIHByZWZpeC4gIFlv dSBjYW4gYWRkIGEgY29tcGxldGlvbiBmdW5jdGlvbiB0byBhCitsaW5rIGxpa2UgdGhpczoK IAogQGxpc3AKIChvcmctbGluay1zZXQtcGFyYW1ldGVycyBgYHR5cGUnJyA6Y29tcGxldGUg Iydzb21lLWZ1bmN0aW9uKQpAQCAtMzkwNyw3ICszOTA5LDcgQEAgU2VhcmNoIG9wdGlvbnMK IGxpbmsgd2l0aCBAa2Jke0MtYyBDLW99LgogCiBIZXJlIGlzIHRoZSBzeW50YXggb2YgdGhl IGRpZmZlcmVudCB3YXlzIHRvIGF0dGFjaCBhIHNlYXJjaCB0byBhIGZpbGUKLWxpbmssIHRv Z2V0aGVyIHdpdGggYW4gZXhwbGFuYXRpb246CitsaW5rLCB0b2dldGhlciB3aXRoIGV4cGxh bmF0aW9ucyBmb3IgZWFjaDoKIAogQGV4YW1wbGUKIFtbZmlsZTp+L2NvZGUvbWFpbi5jOjoy NTVdXQpAQCAtMzk1OCwxNSArMzk2MCwxNSBAQCBDdXN0b20gc2VhcmNoZXMKIAogQHZpbmRl eCBvcmctY3JlYXRlLWZpbGUtc2VhcmNoLWZ1bmN0aW9ucwogQHZpbmRleCBvcmctZXhlY3V0 ZS1maWxlLXNlYXJjaC1mdW5jdGlvbnMKLUlmIHlvdSBjb21lIGFjcm9zcyBzdWNoIGEgcHJv YmxlbSwgeW91IGNhbiB3cml0ZSBjdXN0b20gZnVuY3Rpb25zIHRvIHNldAotdGhlIHJpZ2h0 IHNlYXJjaCBzdHJpbmcgZm9yIGEgcGFydGljdWxhciBmaWxlIHR5cGUsIGFuZCB0byBkbyB0 aGUgc2VhcmNoCi1mb3IgdGhlIHN0cmluZyBpbiB0aGUgZmlsZS4gIFVzaW5nIEBjb2Rle2Fk ZC1ob29rfSwgdGhlc2UgZnVuY3Rpb25zIG5lZWQKLXRvIGJlIGFkZGVkIHRvIHRoZSBob29r IHZhcmlhYmxlcworSWYgeW91IGNvbWUgYWNyb3NzIHN1Y2ggYSBwcm9ibGVtLCB5b3UgY2Fu IHdyaXRlIGN1c3RvbSBMaXNwIGZ1bmN0aW9ucyB0bworc2V0IHRoZSByaWdodCBzZWFyY2gg c3RyaW5nIGZvciBhIHBhcnRpY3VsYXIgZmlsZSB0eXBlLCBhbmQgdG8gZG8gdGhlCitzZWFy Y2ggZm9yIHRoZSBzdHJpbmcgaW4gdGhlIGZpbGUuICBVc2luZyBAY29kZXthZGQtaG9va30s IHRoZXNlIGZ1bmN0aW9ucworbmVlZCB0byBiZSBhZGRlZCB0byB0aGUgaG9vayB2YXJpYWJs ZXMKIEBjb2Rle29yZy1jcmVhdGUtZmlsZS1zZWFyY2gtZnVuY3Rpb25zfSBhbmQKIEBjb2Rl e29yZy1leGVjdXRlLWZpbGUtc2VhcmNoLWZ1bmN0aW9uc30uICBTZWUgdGhlIGRvY3N0cmlu ZyBmb3IgdGhlc2UKLXZhcmlhYmxlcyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4gIE9yZyBhY3R1 YWxseSB1c2VzIHRoaXMgbWVjaGFuaXNtCi1mb3IgQmliQFRlWHt9IGRhdGFiYXNlIGZpbGVz LCBhbmQgeW91IGNhbiB1c2UgdGhlIGNvcnJlc3BvbmRpbmcgY29kZSBhcwotYW4gaW1wbGVt ZW50YXRpb24gZXhhbXBsZS4gIFNlZSB0aGUgZmlsZSBAZmlsZXtvcmctYmlidGV4LmVsfS4K K3ZhcmlhYmxlcyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4gIE9yZyBhY3R1YWxseSB1c2VzIHRo aXMgbWVjaGFuaXNtIGZvcgorQmliQFRlWHt9IGRhdGFiYXNlIGZpbGVzLCBhbmQgeW91IGNh biB1c2UgdGhlIGNvcnJlc3BvbmRpbmcgY29kZSBhcyBhbgoraW1wbGVtZW50YXRpb24gZXhh bXBsZS4gIFNlZSB0aGUgZmlsZSBAZmlsZXtvcmctYmlidGV4LmVsfS4KIAogQG5vZGUgVE9E TyBpdGVtcwogQGNoYXB0ZXIgVE9ETyBpdGVtcwpAQCAtNDI2OCw3ICs0MjcwLDcgQEAgUGVy LWZpbGUga2V5d29yZHMKIFJlbWVtYmVyIHRoYXQgdGhlIGtleXdvcmRzIGFmdGVyIHRoZSB2 ZXJ0aWNhbCBiYXIgKG9yIHRoZSBsYXN0IGtleXdvcmQKIGlmIG5vIGJhciBpcyB0aGVyZSkg bXVzdCBhbHdheXMgbWVhbiB0aGF0IHRoZSBpdGVtIGlzIERPTkUgKGFsdGhvdWdoIHlvdQog bWF5IHVzZSBhIGRpZmZlcmVudCB3b3JkKS4gIEFmdGVyIGNoYW5naW5nIG9uZSBvZiB0aGVz ZSBsaW5lcywgdXNlCi1Aa2Jke0MtYyBDLWN9IHdpdGggdGhlIGN1cnNvciBzdGlsbCBpbiB0 aGUgbGluZSB0byBtYWtlIHRoZSBjaGFuZ2VzCitAa2Jke0MtYyBDLWN9IHdpdGggcG9pbnQg c3RpbGwgaW4gdGhlIGxpbmUgdG8gbWFrZSB0aGUgY2hhbmdlcwoga25vd24gdG8gT3JnIG1v ZGVAZm9vdG5vdGV7T3JnIG1vZGUgcGFyc2VzIHRoZXNlIGxpbmVzIG9ubHkgd2hlbgogT3Jn IG1vZGUgaXMgYWN0aXZhdGVkIGFmdGVyIHZpc2l0aW5nIGEgZmlsZS4gIEBrYmR7Qy1jIEMt Y30gd2l0aCB0aGUKIGN1cnNvciBpbiBhIGxpbmUgc3RhcnRpbmcgd2l0aCBAc2FtcHsjK30g aXMgc2ltcGx5IHJlc3RhcnRpbmcgT3JnIG1vZGUKQEAgLTQ4MDgsNyArNDgxMCw3IEBAIENo ZWNrYm94ZXMKIGFuZCBzZXQgYWxsIHJlbWFpbmluZyBib3hlcyB0byB0aGUgc2FtZSBzdGF0 dXMgYXMgdGhlIGZpcnN0LiAgV2l0aCBhIHByZWZpeAogYXJnLCBhZGQgb3IgcmVtb3ZlIHRo ZSBjaGVja2JveCBmb3IgYWxsIGl0ZW1zIGluIHRoZSByZWdpb24uCiBAaXRlbQotSWYgdGhl IGN1cnNvciBpcyBpbiBhIGhlYWRsaW5lLCB0b2dnbGUgdGhlIHN0YXRlIG9mIHRoZSBmaXJz dCBjaGVja2JveCBpbiB0aGUKK0lmIHBvaW50IGlzIGluIGEgaGVhZGxpbmUsIHRvZ2dsZSB0 aGUgc3RhdGUgb2YgdGhlIGZpcnN0IGNoZWNrYm94IGluIHRoZQogcmVnaW9uIGJldHdlZW4g dGhpcyBoZWFkbGluZSBhbmQgdGhlIG5leHQtLS1zbyBAZW1waHtub3R9IHRoZSBlbnRpcmUK IHN1YnRyZWUtLS1hbmQgcHJvcGFnYXRlIHRoaXMgbmV3IHN0YXRlIHRvIGFsbCBvdGhlciBj aGVja2JveGVzIGluIHRoZSBzYW1lCiBhcmVhLgpAQCAtNDgxNiw3ICs0ODE4LDcgQEAgQ2hl Y2tib3hlcwogSWYgdGhlcmUgaXMgbm8gYWN0aXZlIHJlZ2lvbiwganVzdCB0b2dnbGUgdGhl IGNoZWNrYm94IGF0IHBvaW50LgogQGVuZCBpdGVtaXplCiBAb3JnY21ke00tUy1Aa2V5e1JF VH0sb3JnLWluc2VydC10b2RvLWhlYWRpbmd9Ci1JbnNlcnQgYSBuZXcgaXRlbSB3aXRoIGEg Y2hlY2tib3guICBUaGlzIHdvcmtzIG9ubHkgaWYgdGhlIGN1cnNvciBpcyBhbHJlYWR5CitJ bnNlcnQgYSBuZXcgaXRlbSB3aXRoIGEgY2hlY2tib3guICBUaGlzIHdvcmtzIG9ubHkgaWYg cG9pbnQgaXMgYWxyZWFkeQogaW4gYSBwbGFpbiBsaXN0IGl0ZW0gKEBweHJlZntQbGFpbiBs aXN0c30pLgogQG9yZ2NtZHtDLWMgQy14IG8sb3JnLXRvZ2dsZS1vcmRlcmVkLXByb3BlcnR5 fQogQHZpbmRleCBvcmctdHJhY2stb3JkZXJlZC1wcm9wZXJ0eS13aXRoLXRhZwpAQCAtNDk0 MCw3ICs0OTQyLDcgQEAgU2V0dGluZyB0YWdzCiBkZW1vdGlvbiwgYW5kIFRPRE8gc3RhdGUg Y2hhbmdlcyAoQHB4cmVme1RPRE8gYmFzaWNzfSkuCiAKIEBvcmdjbWR7Qy1jIEMtYyxvcmct c2V0LXRhZ3MtY29tbWFuZH0KLVdoZW4gdGhlIGN1cnNvciBpcyBpbiBhIGhlYWRsaW5lLCB0 aGlzIGRvZXMgdGhlIHNhbWUgYXMgQGtiZHtDLWMgQy1xfS4KK1doZW4gcG9pbnQgaXMgaW4g YSBoZWFkbGluZSwgdGhpcyBkb2VzIHRoZSBzYW1lIGFzIEBrYmR7Qy1jIEMtcX0uCiBAZW5k IHRhYmxlCiAKIEB2aW5kZXggb3JnLXRhZy1hbGlzdApAQCAtNTAyMiw3ICs1MDI0LDcgQEAg U2V0dGluZyB0YWdzCiBAbm9pbmRlbnQgeW91IGluZGljYXRlIHRoYXQgYXQgbW9zdCBvbmUg b2YgQHNhbXB7QEB3b3JrfSwgQHNhbXB7QEBob21lfSwKIGFuZCBAc2FtcHtAQHRlbm5pc2Ns dWJ9IHNob3VsZCBiZSBzZWxlY3RlZC4gIE11bHRpcGxlIHN1Y2ggZ3JvdXBzIGFyZSBhbGxv d2VkLgogCi1Abm9pbmRlbnQgRG9uJ3QgZm9yZ2V0IHRvIHByZXNzIEBrYmR7Qy1jIEMtY30g d2l0aCB0aGUgY3Vyc29yIGluIG9uZSBvZgorQG5vaW5kZW50IERvbid0IGZvcmdldCB0byBw cmVzcyBAa2Jke0MtYyBDLWN9IHdpdGggcG9pbnQgaW4gb25lIG9mCiB0aGVzZSBsaW5lcyB0 byBhY3RpdmF0ZSBhbnkgY2hhbmdlcy4KIAogQG5vaW5kZW50CkBAIC01MzgwLDcgKzUzODIs NyBAQCBQcm9wZXJ0eSBzeW50YXgKIGluc2VydGVkIGVhcmx5IGluIHRoZSBlbnRyeSwgYnV0 IGFmdGVyIHRoZSBsaW5lcyB3aXRoIHBsYW5uaW5nCiBpbmZvcm1hdGlvbiBsaWtlIGRlYWRs aW5lcy4KIEBvcmdjbWR7Qy1jIEMtYyxvcmctcHJvcGVydHktYWN0aW9ufQotV2l0aCB0aGUg Y3Vyc29yIGluIGEgcHJvcGVydHkgZHJhd2VyLCB0aGlzIGV4ZWN1dGVzIHByb3BlcnR5IGNv bW1hbmRzLgorV2l0aCBwb2ludCBpbiBhIHByb3BlcnR5IGRyYXdlciwgdGhpcyBleGVjdXRl cyBwcm9wZXJ0eSBjb21tYW5kcy4KIEBvcmdjbWR7Qy1jIEMtYyBzLG9yZy1zZXQtcHJvcGVy dHl9CiBTZXQgYSBwcm9wZXJ0eSBpbiB0aGUgY3VycmVudCBlbnRyeS4gIEJvdGggdGhlIHBy b3BlcnR5IGFuZCB0aGUgdmFsdWUKIGNhbiBiZSBpbnNlcnRlZCB1c2luZyBjb21wbGV0aW9u LgpAQCAtNTY5Nyw3ICs1Njk5LDcgQEAgVXNpbmcgY29sdW1uIHZpZXcKIEB0c3ViaGVhZGlu Z3tUdXJuaW5nIGNvbHVtbiB2aWV3IG9uIGFuZCBvZmZ9CiBAb3JnY21ke0MtYyBDLXggQy1j LG9yZy1jb2x1bW5zfQogQHZpbmRleCBvcmctY29sdW1ucy1kZWZhdWx0LWZvcm1hdAotVHVy biBvbiBjb2x1bW4gdmlldy4gIElmIHRoZSBjdXJzb3IgaXMgYmVmb3JlIHRoZSBmaXJzdCBo ZWFkbGluZSBpbiB0aGUgZmlsZSwKK1R1cm4gb24gY29sdW1uIHZpZXcuICBJZiBwb2ludCBp cyBiZWZvcmUgdGhlIGZpcnN0IGhlYWRsaW5lIGluIHRoZSBmaWxlLAogb3IgdGhlIGZ1bmN0 aW9uIGNhbGxlZCB3aXRoIHRoZSB1bml2ZXJzYWwgcHJlZml4IGFyZ3VtZW50LCBjb2x1bW4g dmlldyBpcwogdHVybmVkIG9uIGZvciB0aGUgZW50aXJlIGZpbGUsIHVzaW5nIHRoZSBAY29k ZXsjK0NPTFVNTlN9IGRlZmluaXRpb24uICBJZiB0aGUKIGN1cnNvciBpcyBzb21ld2hlcmUg aW5zaWRlIHRoZSBvdXRsaW5lLCB0aGlzIGNvbW1hbmQgc2VhcmNoZXMgdGhlIGhpZXJhcmNo eSwKQEAgLTU5NjYsNyArNTk2OCw3IEBAIENyZWF0aW5nIHRpbWVzdGFtcHMKIAogQHRhYmxl IEBrYmQKIEBvcmdjbWR7Qy1jIC4sb3JnLXRpbWUtc3RhbXB9Ci1Qcm9tcHQgZm9yIGEgZGF0 ZSBhbmQgaW5zZXJ0IGEgY29ycmVzcG9uZGluZyB0aW1lc3RhbXAuICBXaGVuIHRoZSBjdXJz b3IgaXMKK1Byb21wdCBmb3IgYSBkYXRlIGFuZCBpbnNlcnQgYSBjb3JyZXNwb25kaW5nIHRp bWVzdGFtcC4gIFdoZW4gcG9pbnQgaXMKIGF0IGFuIGV4aXN0aW5nIHRpbWVzdGFtcCBpbiB0 aGUgYnVmZmVyLCB0aGUgY29tbWFuZCBpcyB1c2VkIHRvIG1vZGlmeSB0aGlzCiB0aW1lc3Rh bXAgaW5zdGVhZCBvZiBpbnNlcnRpbmcgYSBuZXcgb25lLiAgV2hlbiB0aGlzIGNvbW1hbmQg aXMgdXNlZCB0d2ljZSBpbgogc3VjY2Vzc2lvbiwgYSB0aW1lIHJhbmdlIGlzIGluc2VydGVk LgpAQCAtNTk4OCw3ICs1OTkwLDcgQEAgQ3JlYXRpbmcgdGltZXN0YW1wcwogTm9ybWFsaXpl IHRpbWVzdGFtcCwgaW5zZXJ0L2ZpeCBkYXkgbmFtZSBpZiBtaXNzaW5nIG9yIHdyb25nLgog QGMKIEBvcmdjbWR7Qy1jIDwsb3JnLWRhdGUtZnJvbS1jYWxlbmRhcn0KLUluc2VydCBhIHRp bWVzdGFtcCBjb3JyZXNwb25kaW5nIHRvIHRoZSBjdXJzb3IgZGF0ZSBpbiB0aGUgQ2FsZW5k YXIuCitJbnNlcnQgYSB0aW1lc3RhbXAgY29ycmVzcG9uZGluZyB0byBwb2ludCBkYXRlIGlu IHRoZSBDYWxlbmRhci4KIEBjCiBAb3JnY21ke0MtYyA+LG9yZy1nb3RvLWNhbGVuZGFyfQog QWNjZXNzIHRoZSBFbWFjcyBjYWxlbmRhciBmb3IgdGhlIGN1cnJlbnQgZGF0ZS4gIElmIHRo ZXJlIGlzIGEKQEAgLTYwMDQsMTEgKzYwMDYsMTEgQEAgQ3JlYXRpbmcgdGltZXN0YW1wcwog c2hpZnQtc2VsZWN0aW9uIGFuZCByZWxhdGVkIG1vZGVzIChAcHhyZWZ7Q29uZmxpY3RzfSku CiBAYwogQG9yZ2NtZGtrY2N7Uy1Aa2V5e1VQfSxTLUBrZXl7RE9XTn0sb3JnLXRpbWVzdGFt cC11cCxvcmctdGltZXN0YW1wLWRvd24tZG93bn0KLUNoYW5nZSB0aGUgaXRlbSB1bmRlciB0 aGUgY3Vyc29yIGluIGEgdGltZXN0YW1wLiAgVGhlIGN1cnNvciBjYW4gYmUgb24gYQorQ2hh bmdlIHRoZSBpdGVtIHVuZGVyIHBvaW50IGluIGEgdGltZXN0YW1wLiAgcG9pbnQgY2FuIGJl IG9uIGEKIHllYXIsIG1vbnRoLCBkYXksIGhvdXIgb3IgbWludXRlLiAgV2hlbiB0aGUgdGlt ZXN0YW1wIGNvbnRhaW5zIGEgdGltZSByYW5nZQogbGlrZSBAc2FtcHsxNTozMC0xNjozMH0s IG1vZGlmeWluZyB0aGUgZmlyc3QgdGltZSB3aWxsIGFsc28gc2hpZnQgdGhlIHNlY29uZCwK IHNoaWZ0aW5nIHRoZSB0aW1lIGJsb2NrIHdpdGggY29uc3RhbnQgbGVuZ3RoLiAgVG8gY2hh bmdlIHRoZSBsZW5ndGgsIG1vZGlmeQotdGhlIHNlY29uZCB0aW1lLiAgTm90ZSB0aGF0IGlm IHRoZSBjdXJzb3IgaXMgaW4gYSBoZWFkbGluZSBhbmQgbm90IGF0IGEKK3RoZSBzZWNvbmQg dGltZS4gIE5vdGUgdGhhdCBpZiBwb2ludCBpcyBpbiBhIGhlYWRsaW5lIGFuZCBub3QgYXQg YQogdGltZXN0YW1wLCB0aGVzZSBzYW1lIGtleXMgbW9kaWZ5IHRoZSBwcmlvcml0eSBvZiBh biBpdGVtLgogKEBweHJlZntQcmlvcml0aWVzfSkuICBUaGUga2V5IGJpbmRpbmdzIGFsc28g Y29uZmxpY3Qgd2l0aCBzaGlmdC1zZWxlY3Rpb24gYW5kCiByZWxhdGVkIG1vZGVzIChAcHhy ZWZ7Q29uZmxpY3RzfSkuCkBAIC02MTgyLDExICs2MTg0LDExIEBAIEN1c3RvbSB0aW1lIGZv cm1hdAogZm9sbG93aW5nIGNvbnNlcXVlbmNlczoKIEBpdGVtaXplIEBidWxsZXQKIEBpdGVt Ci1Zb3UgY2Fubm90IHBsYWNlIHRoZSBjdXJzb3Igb250byBhIHRpbWVzdGFtcCBhbnltb3Jl LCBvbmx5IGJlZm9yZSBvcgorWW91IGNhbm5vdCBwbGFjZSBwb2ludCBvbnRvIGEgdGltZXN0 YW1wIGFueW1vcmUsIG9ubHkgYmVmb3JlIG9yCiBhZnRlci4KIEBpdGVtCiBUaGUgQGtiZHtT LUBrZXl7VVB9L0BrZXl7RE9XTn19IGtleXMgY2FuIG5vIGxvbmdlciBiZSB1c2VkIHRvIGFk anVzdAotZWFjaCBjb21wb25lbnQgb2YgYSB0aW1lc3RhbXAuICBJZiB0aGUgY3Vyc29yIGlz IGF0IHRoZSBiZWdpbm5pbmcgb2YKK2VhY2ggY29tcG9uZW50IG9mIGEgdGltZXN0YW1wLiAg SWYgcG9pbnQgaXMgYXQgdGhlIGJlZ2lubmluZyBvZgogdGhlIHN0YW1wLCBAa2Jke1MtQGtl eXtVUH0vQGtleXtET1dOfX0gd2lsbCBjaGFuZ2UgdGhlIHN0YW1wIGJ5IG9uZSBkYXksCiBq dXN0IGxpa2UgQGtiZHtTLUBrZXl7TEVGVH0vQGtleXtSSUdIVH19LiAgQXQgdGhlIGVuZCBv ZiB0aGUgc3RhbXAsIHRoZQogdGltZSB3aWxsIGJlIGNoYW5nZWQgYnkgb25lIG1pbnV0ZS4K QEAgLTY1ODUsNyArNjU4Nyw3IEBAIFRoZSBjbG9jayB0YWJsZQogQHRhYmxlIEBrYmQKIEBv cmdjbWR7Qy1jIEMteCBDLXIsb3JnLWNsb2NrLXJlcG9ydH0KIEluc2VydCBhIGR5bmFtaWMg YmxvY2sgKEBweHJlZntEeW5hbWljIGJsb2Nrc30pIGNvbnRhaW5pbmcgYSBjbG9jawotcmVw b3J0IGFzIGFuIE9yZyBtb2RlIHRhYmxlIGludG8gdGhlIGN1cnJlbnQgZmlsZS4gIFdoZW4g dGhlIGN1cnNvciBpcworcmVwb3J0IGFzIGFuIE9yZyBtb2RlIHRhYmxlIGludG8gdGhlIGN1 cnJlbnQgZmlsZS4gIFdoZW4gcG9pbnQgaXMKIGF0IGFuIGV4aXN0aW5nIGNsb2NrIHRhYmxl LCBqdXN0IHVwZGF0ZSBpdC4gIFdoZW4gY2FsbGVkIHdpdGggYSBwcmVmaXgKIGFyZ3VtZW50 LCBqdW1wIHRvIHRoZSBmaXJzdCBjbG9jayByZXBvcnQgaW4gdGhlIGN1cnJlbnQgZG9jdW1l bnQgYW5kCiB1cGRhdGUgaXQuICBUaGUgY2xvY2sgdGFibGUgYWx3YXlzIGluY2x1ZGVzIGFs c28gdHJlZXMgd2l0aApAQCAtNjU5Niw3ICs2NTk4LDcgQEAgVGhlIGNsb2NrIHRhYmxlCiBV cGRhdGUgYWxsIGR5bmFtaWMgYmxvY2tzIChAcHhyZWZ7RHluYW1pYyBibG9ja3N9KS4gIFRo aXMgaXMgdXNlZnVsIGlmCiB5b3UgaGF2ZSBzZXZlcmFsIGNsb2NrIHRhYmxlIGJsb2NrcyBp biBhIGJ1ZmZlci4KIEBvcmdjbWRreGtje1MtQGtleXtMRUZUfSxTLUBrZXl7UklHSFR9LG9y Zy1jbG9ja3RhYmxlLXRyeS1zaGlmdH0KLVNoaWZ0IHRoZSBjdXJyZW50IEBjb2RlezpibG9j a30gaW50ZXJ2YWwgYW5kIHVwZGF0ZSB0aGUgdGFibGUuICBUaGUgY3Vyc29yCitTaGlmdCB0 aGUgY3VycmVudCBAY29kZXs6YmxvY2t9IGludGVydmFsIGFuZCB1cGRhdGUgdGhlIHRhYmxl LiAgcG9pbnQKIG5lZWRzIHRvIGJlIGluIHRoZSBAY29kZXsjK0JFR0lOOiBjbG9ja3RhYmxl fSBsaW5lIGZvciB0aGlzIGNvbW1hbmQuICBJZgogQGNvZGV7OmJsb2NrfSBpcyBAY29kZXt0 b2RheX0sIGl0IHdpbGwgYmUgc2hpZnRlZCB0byBAY29kZXt0b2RheS0xfSBldGMuCiBAZW5k IHRhYmxlCkBAIC03MDA1LDkgKzcwMDcsOSBAQCBVc2luZyBjYXB0dXJlCiBAb3JnY21ke0Mt YyBDLXcsb3JnLWNhcHR1cmUtcmVmaWxlfQogRmluYWxpemUgdGhlIGNhcHR1cmUgcHJvY2Vz cyBieSByZWZpbGluZyAoQHB4cmVme1JlZmlsZSBhbmQgY29weX0pIHRoZSBub3RlIHRvCiBh IGRpZmZlcmVudCBwbGFjZS4gIFBsZWFzZSByZWFsaXplIHRoYXQgdGhpcyBpcyBhIG5vcm1h bCByZWZpbGluZyBjb21tYW5kCi10aGF0IHdpbGwgYmUgZXhlY3V0ZWQtLS1zbyB0aGUgY3Vy c29yIHBvc2l0aW9uIGF0IHRoZSBtb21lbnQgeW91IHJ1biB0aGlzCit0aGF0IHdpbGwgYmUg ZXhlY3V0ZWQtLS1zbyBwb2ludCBwb3NpdGlvbiBhdCB0aGUgbW9tZW50IHlvdSBydW4gdGhp cwogY29tbWFuZCBpcyBpbXBvcnRhbnQuICBJZiB5b3UgaGF2ZSBpbnNlcnRlZCBhIHRyZWUg d2l0aCBhIHBhcmVudCBhbmQKLWNoaWxkcmVuLCBmaXJzdCBtb3ZlIHRoZSBjdXJzb3IgYmFj ayB0byB0aGUgcGFyZW50LiAgQW55IHByZWZpeCBhcmd1bWVudAorY2hpbGRyZW4sIGZpcnN0 IG1vdmUgcG9pbnQgYmFjayB0byB0aGUgcGFyZW50LiAgQW55IHByZWZpeCBhcmd1bWVudAog Z2l2ZW4gdG8gdGhpcyBjb21tYW5kIHdpbGwgYmUgcGFzc2VkIG9uIHRvIHRoZSBAY29kZXtv cmctcmVmaWxlfSBjb21tYW5kLgogCiBAb3JnY21ke0MtYyBDLWssb3JnLWNhcHR1cmUta2ls bH0KQEAgLTcwMTcsNyArNzAxOSw3IEBAIFVzaW5nIGNhcHR1cmUKIAogWW91IGNhbiBhbHNv IGNhbGwgQGNvZGV7b3JnLWNhcHR1cmV9IGluIGEgc3BlY2lhbCB3YXkgZnJvbSB0aGUgYWdl bmRhLCB1c2luZwogdGhlIEBrYmR7ayBjfSBrZXkgY29tYmluYXRpb24uICBXaXRoIHRoaXMg YWNjZXNzLCBhbnkgdGltZXN0YW1wcyBpbnNlcnRlZCBieQotdGhlIHNlbGVjdGVkIGNhcHR1 cmUgdGVtcGxhdGUgd2lsbCBkZWZhdWx0IHRvIHRoZSBjdXJzb3IgZGF0ZSBpbiB0aGUgYWdl bmRhLAordGhlIHNlbGVjdGVkIGNhcHR1cmUgdGVtcGxhdGUgd2lsbCBkZWZhdWx0IHRvIHBv aW50IGRhdGUgaW4gdGhlIGFnZW5kYSwKIHJhdGhlciB0aGFuIHRvIHRoZSBjdXJyZW50IGRh dGUuCiAKIFRvIGZpbmQgdGhlIGxvY2F0aW9ucyBvZiB0aGUgbGFzdCBzdG9yZWQgY2FwdHVy ZSwgdXNlIEBjb2Rle29yZy1jYXB0dXJlfSB3aXRoCkBAIC03MTcyLDcgKzcxNzQsNyBAQCBU ZW1wbGF0ZSBlbGVtZW50cwogRm9yIG5vbi11bmlxdWUgaGVhZGluZ3MsIHRoZSBmdWxsIHBh dGggaXMgc2FmZXIuCiAKIEBpdGVtIChmaWxlK3JlZ2V4cCAgInBhdGgvdG8vZmlsZSIgInJl Z2V4cCB0byBmaW5kIGxvY2F0aW9uIikKLVVzZSBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBw b3NpdGlvbiB0aGUgY3Vyc29yLgorVXNlIGEgcmVndWxhciBleHByZXNzaW9uIHRvIHBvc2l0 aW9uIHBvaW50LgogCiBAaXRlbSAoZmlsZStvbHArZGF0ZXRyZWUgInBhdGgvdG8vZmlsZSIg WyAiTGV2ZWwgMSBoZWFkaW5nIiAuLi4uXSkKIFRoaXMgdGFyZ2V0QGZvb3Rub3Rle09yZyB1 c2VkIHRvIG9mZmVyIGZvdXIgZGlmZmVyZW50IHRhcmdldHMgZm9yIGRhdGUvd2VlawpAQCAt NzM0NCw3ICs3MzQ2LDcgQEAgVGVtcGxhdGUgZXhwYW5zaW9uCiBAZW5kIHNtYWxsZXhhbXBs ZQogCiBAbm9pbmRlbnQKLVRvIHBsYWNlIHRoZSBjdXJzb3IgYWZ0ZXIgdGVtcGxhdGUgZXhw YW5zaW9uIHVzZToKK1RvIHBsYWNlIHBvaW50IGFmdGVyIHRlbXBsYXRlIGV4cGFuc2lvbiB1 c2U6CiAKIEBzbWFsbGV4YW1wbGUKICU/ICAgICAgICAgIEBye0FmdGVyIGNvbXBsZXRpbmcg dGhlIHRlbXBsYXRlLCBwb3NpdGlvbiBjdXJzb3IgaGVyZS59CkBAIC03ODA0LDEzICs3ODA2 LDEzIEBAIE1vdmluZyBzdWJ0cmVlcwogQHRhYmxlIEBrYmQKIEBvcmdjbWRrc2tje0MtYyBD LXggQy1zLEMtYyAkLG9yZy1hcmNoaXZlLXN1YnRyZWV9CiBAdmluZGV4IG9yZy1hcmNoaXZl LWxvY2F0aW9uCi1BcmNoaXZlIHRoZSBzdWJ0cmVlIHN0YXJ0aW5nIGF0IHRoZSBjdXJzb3Ig cG9zaXRpb24gdG8gdGhlIGxvY2F0aW9uCitBcmNoaXZlIHRoZSBzdWJ0cmVlIHN0YXJ0aW5n IGF0IHBvaW50IHBvc2l0aW9uIHRvIHRoZSBsb2NhdGlvbgogZ2l2ZW4gYnkgQGNvZGV7b3Jn LWFyY2hpdmUtbG9jYXRpb259LgogQG9yZ2tleXtDLXUgQy1jIEMteCBDLXN9CiBDaGVjayBp ZiBhbnkgZGlyZWN0IGNoaWxkcmVuIG9mIHRoZSBjdXJyZW50IGhlYWRsaW5lIGNvdWxkIGJl IG1vdmVkIHRvCiB0aGUgYXJjaGl2ZS4gIFRvIGRvIHRoaXMsIGVhY2ggc3VidHJlZSBpcyBj aGVja2VkIGZvciBvcGVuIFRPRE8gZW50cmllcy4KIElmIG5vbmUgYXJlIGZvdW5kLCB0aGUg Y29tbWFuZCBvZmZlcnMgdG8gbW92ZSBpdCB0byB0aGUgYXJjaGl2ZQotbG9jYXRpb24uICBJ ZiB0aGUgY3Vyc29yIGlzIEBlbXBoe25vdH0gb24gYSBoZWFkbGluZSB3aGVuIHRoaXMgY29t bWFuZAorbG9jYXRpb24uICBJZiBwb2ludCBpcyBAZW1waHtub3R9IG9uIGEgaGVhZGxpbmUg d2hlbiB0aGlzIGNvbW1hbmQKIGlzIGludm9rZWQsIHRoZSBsZXZlbCAxIHRyZWVzIHdpbGwg YmUgY2hlY2tlZC4KIEBvcmdrZXl7Qy11IEMtdSBDLWMgQy14IEMtc30KIEFzIGFib3ZlLCBi dXQgY2hlY2sgc3VidHJlZSBmb3IgdGltZXN0YW1wcyBpbnN0ZWFkIG9mIFRPRE8gZW50cmll cy4gIFRoZQpAQCAtODAzMiw3ICs4MDM0LDcgQEAgQWdlbmRhIGZpbGVzCiBAdGFibGUgQGti ZAogQG9yZ2NtZHtDLWMgQy14IDwsb3JnLWFnZW5kYS1zZXQtcmVzdHJpY3Rpb24tbG9ja30K IFBlcm1hbmVudGx5IHJlc3RyaWN0IHRoZSBhZ2VuZGEgdG8gdGhlIGN1cnJlbnQgc3VidHJl ZS4gIFdoZW4gd2l0aCBhCi1wcmVmaXggYXJndW1lbnQsIG9yIHdpdGggdGhlIGN1cnNvciBi ZWZvcmUgdGhlIGZpcnN0IGhlYWRsaW5lIGluIGEgZmlsZSwKK3ByZWZpeCBhcmd1bWVudCwg b3Igd2l0aCBwb2ludCBiZWZvcmUgdGhlIGZpcnN0IGhlYWRsaW5lIGluIGEgZmlsZSwKIHRo ZSBhZ2VuZGEgc2NvcGUgaXMgc2V0IHRvIHRoZSBlbnRpcmUgZmlsZS4gIFRoaXMgcmVzdHJp Y3Rpb24gcmVtYWlucyBpbgogZWZmZWN0IHVudGlsIHJlbW92ZWQgd2l0aCBAa2Jke0MtYyBD LXggPn0sIG9yIGJ5IHR5cGluZyBlaXRoZXIgQGtiZHs8fQogb3IgQGtiZHs+fSBpbiB0aGUg YWdlbmRhIGRpc3BhdGNoZXIuICBJZiB0aGVyZSBpcyBhIHdpbmRvdyBkaXNwbGF5aW5nIGFu CkBAIC04MDQ4LDcgKzgwNTAsNyBAQCBBZ2VuZGEgZmlsZXMKIEB0YWJsZSBAa2JkCiBAb3Jn Y21kdGtjezwgQHJ7aW4gdGhlIHNwZWVkYmFyIGZyYW1lfSw8LG9yZy1zcGVlZGJhci1zZXQt YWdlbmRhLXJlc3RyaWN0aW9ufQogUGVybWFuZW50bHkgcmVzdHJpY3QgdGhlIGFnZW5kYSB0 byB0aGUgaXRlbS0tLWVpdGhlciBhbiBPcmcgZmlsZSBvciBhIHN1YnRyZWUKLWluIHN1Y2gg YSBmaWxlLS0tYXQgdGhlIGN1cnNvciBpbiB0aGUgU3BlZWRiYXIgZnJhbWUuCitpbiBzdWNo IGEgZmlsZS0tLWF0IHBvaW50IGluIHRoZSBTcGVlZGJhciBmcmFtZS4KIElmIHRoZXJlIGlz IGEgd2luZG93IGRpc3BsYXlpbmcgYW4gYWdlbmRhIHZpZXcsIHRoZSBuZXcgcmVzdHJpY3Rp b24gdGFrZXMKIGVmZmVjdCBpbW1lZGlhdGVseS4KIEBvcmdjbWR0a2N7PiBAcntpbiB0aGUg c3BlZWRiYXIgZnJhbWV9LD4sb3JnLWFnZW5kYS1yZW1vdmUtcmVzdHJpY3Rpb24tbG9ja30K QEAgLTgyNDIsNyArODI0NCw3IEBAIFdlZWtseS9kYWlseSBhZ2VuZGEKIEBlbmQgZXhhbXBs ZQogCiBZb3UgY2FuIHRoZW4gZ28gYWhlYWQgYW5kIGRlZmluZSBhbm5pdmVyc2FyaWVzIGZv ciBhIEJCREIgcmVjb3JkLiAgQmFzaWNhbGx5LAoteW91IG5lZWQgdG8gcHJlc3MgQGtiZHtD LW8gYW5uaXZlcnNhcnkgQGtleXtSRVR9fSB3aXRoIHRoZSBjdXJzb3IgaW4gYSBCQkRCCit5 b3UgbmVlZCB0byBwcmVzcyBAa2Jke0MtbyBhbm5pdmVyc2FyeSBAa2V5e1JFVH19IHdpdGgg cG9pbnQgaW4gYSBCQkRCCiByZWNvcmQgYW5kIHRoZW4gYWRkIHRoZSBkYXRlIGluIHRoZSBm b3JtYXQgQGNvZGV7WVlZWS1NTS1ERH0gb3IgQGNvZGV7TU0tRER9LAogZm9sbG93ZWQgYnkg YSBzcGFjZSBhbmQgdGhlIGNsYXNzIG9mIHRoZSBhbm5pdmVyc2FyeSAoQHNhbXB7YmlydGhk YXl9IG9yCiBAc2FtcHt3ZWRkaW5nfSwgb3IgYSBmb3JtYXQgc3RyaW5nKS4gIElmIHlvdSBv bWl0IHRoZSBjbGFzcywgaXQgd2lsbCBkZWZhdWx0IHRvCkBAIC04OTM1LDcgKzg5MzcsNyBA QCBBZ2VuZGEgY29tbWFuZHMKIHJlbW92aW5nIHRoZSByaXNrIHRoYXQgeW91ciBhZ2VuZGEg YW5kIG5vdGUgZmlsZXMgbWF5IGRpdmVyZ2UuCiAKIFNvbWUgY29tbWFuZHMgY2FuIGJlIGV4 ZWN1dGVkIHdpdGggbW91c2UgY2xpY2tzIG9uIGFnZW5kYSBsaW5lcy4gIEZvcgotdGhlIG90 aGVyIGNvbW1hbmRzLCB0aGUgY3Vyc29yIG5lZWRzIHRvIGJlIGluIHRoZSBkZXNpcmVkIGxp bmUuCit0aGUgb3RoZXIgY29tbWFuZHMsIHBvaW50IG5lZWRzIHRvIGJlIGluIHRoZSBkZXNp cmVkIGxpbmUuCiAKIEB0YWJsZSBAa2JkCiBAdHN1YmhlYWRpbmd7TW90aW9ufQpAQCAtODk2 NCw3ICs4OTY2LDcgQEAgQWdlbmRhIGNvbW1hbmRzCiBAYwogQG9yZ2NtZHtGLG9yZy1hZ2Vu ZGEtZm9sbG93LW1vZGV9CiBAdmluZGV4IG9yZy1hZ2VuZGEtc3RhcnQtd2l0aC1mb2xsb3ct bW9kZQotVG9nZ2xlIEZvbGxvdyBtb2RlLiAgSW4gRm9sbG93IG1vZGUsIGFzIHlvdSBtb3Zl IHRoZSBjdXJzb3IgdGhyb3VnaAorVG9nZ2xlIEZvbGxvdyBtb2RlLiAgSW4gRm9sbG93IG1v ZGUsIGFzIHlvdSBtb3ZlIHBvaW50IHRocm91Z2gKIHRoZSBhZ2VuZGEgYnVmZmVyLCB0aGUg b3RoZXIgd2luZG93IGFsd2F5cyBzaG93cyB0aGUgY29ycmVzcG9uZGluZwogbG9jYXRpb24g aW4gdGhlIE9yZyBmaWxlLiAgVGhlIGluaXRpYWwgc2V0dGluZyBmb3IgdGhpcyBtb2RlIGlu IG5ldwogYWdlbmRhIGJ1ZmZlcnMgY2FuIGJlIHNldCB3aXRoIHRoZSB2YXJpYWJsZQpAQCAt OTM3OCwxMiArOTM4MCwxMiBAQCBBZ2VuZGEgY29tbWFuZHMKIEBjCiBAb3JnY21ke2Msb3Jn LWNhbGVuZGFyLWdvdG8tYWdlbmRhfQogV2hlbiBpbiB0aGUgY2FsZW5kYXIsIGNvbXB1dGUg YW5kIHNob3cgdGhlIE9yZyBtb2RlIGFnZW5kYSBmb3IgdGhlCi1kYXRlIGF0IHRoZSBjdXJz b3IuCitkYXRlIGF0IHBvaW50LgogQGMKIEBjaW5kZXggZGlhcnkgZW50cmllcywgY3JlYXRp bmcgZnJvbSBhZ2VuZGEKIEBvcmdjbWR7aSxvcmctYWdlbmRhLWRpYXJ5LWVudHJ5fQogQHZp bmRleCBvcmctYWdlbmRhLWRpYXJ5LWZpbGUKLUluc2VydCBhIG5ldyBlbnRyeSBpbnRvIHRo ZSBkaWFyeSwgdXNpbmcgdGhlIGRhdGUgYXQgdGhlIGN1cnNvciBhbmQgKGZvcgorSW5zZXJ0 IGEgbmV3IGVudHJ5IGludG8gdGhlIGRpYXJ5LCB1c2luZyB0aGUgZGF0ZSBhdCBwb2ludCBh bmQgKGZvcgogYmxvY2sgZW50cmllcykgdGhlIGRhdGUgYXQgdGhlIG1hcmsuICBUaGlzIHdp bGwgYWRkIHRvIHRoZSBFbWFjcyBkaWFyeQogZmlsZUBmb290bm90ZXtUaGlzIGZpbGUgaXMg cGFyc2VkIGZvciB0aGUgYWdlbmRhIHdoZW4KIEBjb2Rle29yZy1hZ2VuZGEtaW5jbHVkZS1k aWFyeX0gaXMgc2V0Ln0sIGluIGEgd2F5IHNpbWlsYXIgdG8gdGhlIEBrYmR7aX0KQEAgLTk0 MTMsNyArOTQxNSw3IEBAIEFnZW5kYSBjb21tYW5kcwogY2FsZW5kYXJzLgogQGMKIEBvcmdj bWR7SCxvcmctYWdlbmRhLWhvbGlkYXlzfQotU2hvdyBob2xpZGF5cyBmb3IgdGhyZWUgbW9u dGhzIGFyb3VuZCB0aGUgY3Vyc29yIGRhdGUuCitTaG93IGhvbGlkYXlzIGZvciB0aHJlZSBt b250aHMgYXJvdW5kIHRoZSBkYXRlIGF0IHBvaW50LgogCiBAaXRlbSBNLXggb3JnLWljYWxl bmRhci1jb21iaW5lLWFnZW5kYS1maWxlcyBAa2V5e1JFVH0KIEV4cG9ydCBhIHNpbmdsZSBp Q2FsZW5kYXIgZmlsZSBjb250YWluaW5nIGVudHJpZXMgZnJvbSBhbGwgYWdlbmRhIGZpbGVz LgpAQCAtMTAzNzMsNyArMTAzNzUsNyBAQCBQcmV2aWV3aW5nIEBMYVRlWHt9IGZyYWdtZW50 cwogb3ZlciB0aGUgc291cmNlIGNvZGUuICBJZiB0aGVyZSBpcyBubyBmcmFnbWVudCBhdCBw b2ludCwgcHJvY2VzcyBhbGwKIGZyYWdtZW50cyBpbiB0aGUgY3VycmVudCBlbnRyeSAoYmV0 d2VlbiB0d28gaGVhZGxpbmVzKS4gIFdoZW4gY2FsbGVkCiB3aXRoIGEgcHJlZml4IGFyZ3Vt ZW50LCBwcm9jZXNzIHRoZSBlbnRpcmUgc3VidHJlZS4gIFdoZW4gY2FsbGVkIHdpdGgKLXR3 byBwcmVmaXggYXJndW1lbnRzLCBvciB3aGVuIHRoZSBjdXJzb3IgaXMgYmVmb3JlIHRoZSBm aXJzdCBoZWFkbGluZSwKK3R3byBwcmVmaXggYXJndW1lbnRzLCBvciB3aGVuIHBvaW50IGlz IGJlZm9yZSB0aGUgZmlyc3QgaGVhZGxpbmUsCiBwcm9jZXNzIHRoZSBlbnRpcmUgYnVmZmVy LgogQGtpbmRleCBDLWMgQy1jCiBAaXRlbSBDLWMgQy1jCkBAIC0xMDQyMCwxMSArMTA0MjIs MTEgQEAgQ0RMYVRlWCBtb2RlCiBFbnZpcm9ubWVudCB0ZW1wbGF0ZXMgY2FuIGJlIGluc2Vy dGVkIHdpdGggQGtiZHtDLWMgQHt9LgogQGl0ZW0KIEBraW5kZXggVEFCCi1UaGUgQGtleXtU QUJ9IGtleSB3aWxsIGRvIHRlbXBsYXRlIGV4cGFuc2lvbiBpZiB0aGUgY3Vyc29yIGlzIGlu c2lkZSBhCi1ATGFUZVh7fSBmcmFnbWVudEBmb290bm90ZXtPcmcgbW9kZSBoYXMgYSBtZXRo b2QgdG8gdGVzdCBpZiB0aGUgY3Vyc29yIGlzCitUaGUgQGtleXtUQUJ9IGtleSB3aWxsIGRv IHRlbXBsYXRlIGV4cGFuc2lvbiBpZiBwb2ludCBpcyBpbnNpZGUgYQorQExhVGVYe30gZnJh Z21lbnRAZm9vdG5vdGV7T3JnIG1vZGUgaGFzIGEgbWV0aG9kIHRvIHRlc3QgaWYgcG9pbnQg aXMKIGluc2lkZSBzdWNoIGEgZnJhZ21lbnQsIHNlZSB0aGUgZG9jdW1lbnRhdGlvbiBvZiB0 aGUgZnVuY3Rpb24KIEBjb2Rle29yZy1pbnNpZGUtTGFUZVgtZnJhZ21lbnQtcH0ufS4gIEZv ciBleGFtcGxlLCBAa2V5e1RBQn0gd2lsbAotZXhwYW5kIEBjb2Rle2ZyfSB0byBAY29kZXtc ZnJhY0B7QH1Ae0B9fSBhbmQgcG9zaXRpb24gdGhlIGN1cnNvcgorZXhwYW5kIEBjb2Rle2Zy fSB0byBAY29kZXtcZnJhY0B7QH1Ae0B9fSBhbmQgcG9zaXRpb24gcG9pbnQKIGNvcnJlY3Rs eSBpbnNpZGUgdGhlIGZpcnN0IGJyYWNlLiAgQW5vdGhlciBAa2V5e1RBQn0gd2lsbCBnZXQg eW91IGludG8KIHRoZSBzZWNvbmQgYnJhY2UuICBFdmVuIG91dHNpZGUgZnJhZ21lbnRzLCBA a2V5e1RBQn0gd2lsbCBleHBhbmQKIGVudmlyb25tZW50IGFiYnJldmlhdGlvbnMgYXQgdGhl IGJlZ2lubmluZyBvZiBhIGxpbmUuICBGb3IgZXhhbXBsZSwgaWYKQEAgLTEwNTc2LDkgKzEw NTc4LDkgQEAgVGhlIGV4cG9ydCBkaXNwYXRjaGVyCiBAaXRlbSBDLXMKIEB2aW5kZXggb3Jn LWV4cG9ydC1pbml0aWFsLXNjb3BlCiBUb2dnbGUgc3ViLXRyZWUgZXhwb3J0LiAgV2hlbiB0 dXJuZWQgb24sIE9yZyBleHBvcnRzIG9ubHkgdGhlIHN1Yi10cmVlIHN0YXJ0aW5nCi1mcm9t IHRoZSBjdXJzb3IgcG9zaXRpb24gYXQgdGhlIHRpbWUgdGhlIGV4cG9ydCBkaXNwYXRjaGVy IHdhcyBpbnZva2VkLiAgT3JnCi11c2VzIHRoZSB0b3AgaGVhZGluZyBvZiB0aGlzIHN1Yi10 cmVlIGFzIHRoZSBkb2N1bWVudCdzIHRpdGxlLiAgSWYgdGhlIGN1cnNvcgotaXMgbm90IG9u IGEgaGVhZGluZywgT3JnIHVzZXMgdGhlIG5lYXJlc3QgZW5jbG9zaW5nIGhlYWRlci4gIElm IHRoZSBjdXJzb3IgaXMKK2Zyb20gcG9pbnQgcG9zaXRpb24gYXQgdGhlIHRpbWUgdGhlIGV4 cG9ydCBkaXNwYXRjaGVyIHdhcyBpbnZva2VkLiAgT3JnCit1c2VzIHRoZSB0b3AgaGVhZGlu ZyBvZiB0aGlzIHN1Yi10cmVlIGFzIHRoZSBkb2N1bWVudCdzIHRpdGxlLiAgSWYgcG9pbnQK K2lzIG5vdCBvbiBhIGhlYWRpbmcsIE9yZyB1c2VzIHRoZSBuZWFyZXN0IGVuY2xvc2luZyBo ZWFkZXIuICBJZiBwb2ludCBpcwogaW4gdGhlIGRvY3VtZW50IHByZWFtYmxlLCBPcmcgc2ln bmFscyBhbiBlcnJvciBhbmQgYWJvcnRzIGV4cG9ydC4KIAogVG8gbWFrZSB0aGUgc3ViLXRy ZWUgZXhwb3J0IHRoZSBkZWZhdWx0LCBjdXN0b21pemUgdGhlIHZhcmlhYmxlLApAQCAtMTcz NjAsNyArMTczNjIsNyBAQCBTcGVlZCBrZXlzCiBAc2VjdGlvbiBTcGVlZCBrZXlzCiBAY2lu ZGV4IHNwZWVkIGtleXMKIAotU2luZ2xlIGtleXN0cm9rZXMgY2FuIGV4ZWN1dGUgY3VzdG9t IGNvbW1hbmRzIGluIGFuIE9yZyBmaWxlIHdoZW4gdGhlIGN1cnNvcgorU2luZ2xlIGtleXN0 cm9rZXMgY2FuIGV4ZWN1dGUgY3VzdG9tIGNvbW1hbmRzIGluIGFuIE9yZyBmaWxlIHdoZW4g cG9pbnQKIGlzIG9uIGEgaGVhZGxpbmUuICBXaXRob3V0IHRoZSBleHRyYSBidXJkZW4gb2Yg YSBtZXRhIG9yIG1vZGlmaWVyIGtleSwgU3BlZWQKIEtleXMgY2FuIHNwZWVkIG5hdmlnYXRp b24gb3IgZXhlY3V0ZSBjdXN0b20gY29tbWFuZHMuICBCZXNpZGVzIGZhc3RlcgogbmF2aWdh dGlvbiwgU3BlZWQgS2V5cyBtYXkgY29tZSBpbiBoYW5keSBvbiBzbWFsbCBtb2JpbGUgZGV2 aWNlcyB0aGF0IGRvIG5vdApAQCAtMTczNzAsNyArMTczNzIsNyBAQCBTcGVlZCBrZXlzCiBA dmluZGV4IG9yZy11c2Utc3BlZWQtY29tbWFuZHMKIEJ5IGRlZmF1bHQsIE9yZyBoYXMgU3Bl ZWQgS2V5cyBkaXNhYmxlZC4gIFRvIGFjdGl2YXRlIFNwZWVkIEtleXMsIHNldCB0aGUKIHZh cmlhYmxlIEBjb2Rle29yZy11c2Utc3BlZWQtY29tbWFuZHN9IHRvIGEgbm9uLUBjb2Rle25p bH0gdmFsdWUuICBUbyB0cmlnZ2VyCi1hIFNwZWVkIEtleSwgdGhlIGN1cnNvciBtdXN0IGJl IGF0IHRoZSBiZWdpbm5pbmcgb2YgYW4gT3JnIGhlYWRsaW5lLCBiZWZvcmUKK2EgU3BlZWQg S2V5LCBwb2ludCBtdXN0IGJlIGF0IHRoZSBiZWdpbm5pbmcgb2YgYW4gT3JnIGhlYWRsaW5l LCBiZWZvcmUKIGFueSBvZiB0aGUgc3RhcnMuCiAKIEB2aW5kZXggb3JnLXNwZWVkLWNvbW1h bmRzLXVzZXIKQEAgLTE3NTEzLDcgKzE3NTE1LDcgQEAgSW4tYnVmZmVyIHNldHRpbmdzCiBh bHNvIHBhcnNlcyBhbmQgbG9hZHMgdGhlIGRvY3VtZW50IGR1cmluZyBub3JtYWwgZXhwb3J0 aW5nIHByb2Nlc3MuICBPcmcKIHBhcnNlcyB0aGUgY29udGVudHMgb2YgdGhpcyBkb2N1bWVu dCBhcyBpZiBpdCB3YXMgaW5jbHVkZWQgaW4gdGhlIGJ1ZmZlci4gIEl0CiBjYW4gYmUgYW5v dGhlciBPcmcgZmlsZS4gIFRvIHZpc2l0IHRoZSBmaWxlIChub3QgYSBVUkwpLCBAa2Jke0Mt YyAnfSB3aGlsZQotdGhlIGN1cnNvciBpcyBvbiB0aGUgbGluZSB3aXRoIHRoZSBmaWxlIG5h bWUuCitwb2ludCBpcyBvbiB0aGUgbGluZSB3aXRoIHRoZSBmaWxlIG5hbWUuCiBAaXRlbSAj K1NUQVJUVVA6CiBAY2luZGV4IEBjb2RleyMrU1RBUlRVUH0KIFN0YXJ0dXAgb3B0aW9ucyBP cmcgdXNlcyB3aGVuIGZpcnN0IHZpc2l0aW5nIGEgZmlsZS4KQEAgLTE3NzUzLDQxICsxNzc1 NSw0MSBAQCBUaGUgdmVyeSBidXN5IEMtYyBDLWMga2V5CiBJZiBhbnkgaGlnaGxpZ2h0cyBz aG93biBpbiB0aGUgYnVmZmVyIGZyb20gdGhlIGNyZWF0aW9uIG9mIGEgc3BhcnNlIHRyZWUs IG9yCiBmcm9tIGNsb2NrIGRpc3BsYXksIHJlbW92ZSBzdWNoIGhpZ2hsaWdodHMuCiBAaXRl bQotSWYgdGhlIGN1cnNvciBpcyBpbiBvbmUgb2YgdGhlIHNwZWNpYWwgQGNvZGV7IytLRVlX T1JEfSBsaW5lcywgc2NhbiB0aGUKK0lmIHBvaW50IGlzIGluIG9uZSBvZiB0aGUgc3BlY2lh bCBAY29kZXsjK0tFWVdPUkR9IGxpbmVzLCBzY2FuIHRoZQogYnVmZmVyIGZvciB0aGVzZSBs aW5lcyBhbmQgdXBkYXRlIHRoZSBpbmZvcm1hdGlvbi4gIEFsc28gcmVzZXQgdGhlIE9yZyBm aWxlCiBjYWNoZSB1c2VkIHRvIHRlbXBvcmFyeSBzdG9yZSB0aGUgY29udGVudHMgb2YgVVJM cyB1c2VkIGFzIHZhbHVlcyBmb3IKIGtleXdvcmRzIGxpa2UgQGNvZGV7IytTRVRVUEZJTEV9 LgogQGl0ZW0KLUlmIHRoZSBjdXJzb3IgaXMgaW5zaWRlIGEgdGFibGUsIHJlYWxpZ24gdGhl IHRhYmxlLiAgVGhlIHRhYmxlIHJlYWxpZ25zIGV2ZW4KK0lmIHBvaW50IGlzIGluc2lkZSBh IHRhYmxlLCByZWFsaWduIHRoZSB0YWJsZS4gIFRoZSB0YWJsZSByZWFsaWducyBldmVuCiBp ZiBhdXRvbWF0aWMgdGFibGUgZWRpdG9yIGlzIHR1cm5lZCBvZmYuCiBAaXRlbQotSWYgdGhl IGN1cnNvciBpcyBvbiBhIEBjb2RleyMrVEJMRk19IGxpbmUsIHJlLWFwcGx5IHRoZSBmb3Jt dWxhcyB0bworSWYgcG9pbnQgaXMgb24gYSBAY29kZXsjK1RCTEZNfSBsaW5lLCByZS1hcHBs eSB0aGUgZm9ybXVsYXMgdG8KIHRoZSBlbnRpcmUgdGFibGUuCiBAaXRlbQogSWYgdGhlIGN1 cnJlbnQgYnVmZmVyIGlzIGEgY2FwdHVyZSBidWZmZXIsIGNsb3NlIHRoZSBub3RlIGFuZCBm aWxlIGl0LiAgV2l0aAogYSBwcmVmaXggYXJndW1lbnQsIGFsc28ganVtcCB0byB0aGUgdGFy Z2V0IGxvY2F0aW9uIGFmdGVyIHNhdmluZyB0aGUgbm90ZS4KIEBpdGVtCi1JZiB0aGUgY3Vy c29yIGlzIG9uIGEgQGNvZGV7PDw8dGFyZ2V0Pj4+fSwgdXBkYXRlIHJhZGlvIHRhcmdldHMg YW5kCitJZiBwb2ludCBpcyBvbiBhIEBjb2Rlezw8PHRhcmdldD4+Pn0sIHVwZGF0ZSByYWRp byB0YXJnZXRzIGFuZAogY29ycmVzcG9uZGluZyBsaW5rcyBpbiB0aGlzIGJ1ZmZlci4KIEBp dGVtCi1JZiB0aGUgY3Vyc29yIGlzIG9uIGEgcHJvcGVydHkgbGluZSBvciBhdCB0aGUgc3Rh cnQgb3IgZW5kIG9mIGEgcHJvcGVydHkKK0lmIHBvaW50IGlzIG9uIGEgcHJvcGVydHkgbGlu ZSBvciBhdCB0aGUgc3RhcnQgb3IgZW5kIG9mIGEgcHJvcGVydHkKIGRyYXdlciwgb2ZmZXIg cHJvcGVydHkgY29tbWFuZHMuCiBAaXRlbQotSWYgdGhlIGN1cnNvciBpcyBhdCBhIGZvb3Ru b3RlIHJlZmVyZW5jZSwgZ28gdG8gdGhlIGNvcnJlc3BvbmRpbmcKK0lmIHBvaW50IGlzIGF0 IGEgZm9vdG5vdGUgcmVmZXJlbmNlLCBnbyB0byB0aGUgY29ycmVzcG9uZGluZwogZGVmaW5p dGlvbiwgYW5kIEBlbXBoe3ZpY2UgdmVyc2F9LgogQGl0ZW0KLUlmIHRoZSBjdXJzb3IgaXMg b24gYSBzdGF0aXN0aWNzIGNvb2tpZSwgdXBkYXRlIGl0LgorSWYgcG9pbnQgaXMgb24gYSBz dGF0aXN0aWNzIGNvb2tpZSwgdXBkYXRlIGl0LgogQGl0ZW0KLUlmIHRoZSBjdXJzb3IgaXMg aW4gYSBwbGFpbiBsaXN0IGl0ZW0gd2l0aCBhIGNoZWNrYm94LCB0b2dnbGUgdGhlIHN0YXR1 cworSWYgcG9pbnQgaXMgaW4gYSBwbGFpbiBsaXN0IGl0ZW0gd2l0aCBhIGNoZWNrYm94LCB0 b2dnbGUgdGhlIHN0YXR1cwogb2YgdGhlIGNoZWNrYm94LgogQGl0ZW0KLUlmIHRoZSBjdXJz b3IgaXMgb24gYSBudW1iZXJlZCBpdGVtIGluIGEgcGxhaW4gbGlzdCwgcmVudW1iZXIgdGhl CitJZiBwb2ludCBpcyBvbiBhIG51bWJlcmVkIGl0ZW0gaW4gYSBwbGFpbiBsaXN0LCByZW51 bWJlciB0aGUKIG9yZGVyZWQgbGlzdC4KIEBpdGVtCi1JZiB0aGUgY3Vyc29yIGlzIG9uIHRo ZSBAY29kZXsjK0JFR0lOfSBsaW5lIG9mIGEgZHluYW1pYyBibG9jaywgdGhlCitJZiBwb2lu dCBpcyBvbiB0aGUgQGNvZGV7IytCRUdJTn0gbGluZSBvZiBhIGR5bmFtaWMgYmxvY2ssIHRo ZQogYmxvY2sgaXMgdXBkYXRlZC4KIEBpdGVtCi1JZiB0aGUgY3Vyc29yIGlzIGF0IGEgdGlt ZXN0YW1wLCBmaXggdGhlIGRheSBuYW1lIGluIHRoZSB0aW1lc3RhbXAuCitJZiBwb2ludCBp cyBhdCBhIHRpbWVzdGFtcCwgZml4IHRoZSBkYXkgbmFtZSBpbiB0aGUgdGltZXN0YW1wLgog QGVuZCBpdGVtaXplCiAKIEBub2RlIENsZWFuIHZpZXcKQEAgLTE4MDE0LDcgKzE4MDE2LDcg QEAgQ29vcGVyYXRpb24KIE90YSB0YWJsZXMgY2Fubm90IGJlIGVkaXRlZCBkaXJlY3RseSBp biB0aGUgT3JnIGJ1ZmZlci4KIEB0YWJsZSBAa2JkCiBAb3JnY21ke0MtYyAnLG9yZy1lZGl0 LXNwZWNpYWx9Ci1FZGl0IGEgQGZpbGV7dGFibGUuZWx9IHRhYmxlLiAgV29ya3Mgd2hlbiB0 aGUgY3Vyc29yIGlzIGluIGEgdGFibGUuZWwgdGFibGUuCitFZGl0IGEgQGZpbGV7dGFibGUu ZWx9IHRhYmxlLiAgV29ya3Mgd2hlbiBwb2ludCBpcyBpbiBhIHRhYmxlLmVsIHRhYmxlLgog QGMKIEBvcmdjbWR7Qy1jIH4sb3JnLXRhYmxlLWNyZWF0ZS13aXRoLXRhYmxlLmVsfQogSW5z ZXJ0IGEgQGZpbGV7dGFibGUuZWx9IHRhYmxlLiAgSWYgdGhlcmUgaXMgYWxyZWFkeSBhIHRh YmxlIGF0IHBvaW50LCB0aGlzCkBAIC0xODAzOSw3ICsxODA0MSw3IEBAIENvbmZsaWN0cwog dmFyaWFibGUgQGNvZGV7b3JnLXN1cHBvcnQtc2hpZnQtc2VsZWN0fSBmb3IgY3VzdG9taXph dGlvbi4gIE9yZyBtb2RlCiBhY2NvbW1vZGF0ZXMgc2hpZnQgc2VsZWN0aW9uIGJ5IChpKSBt YWtpbmcgaXQgYXZhaWxhYmxlIG91dHNpZGUgb2YgdGhlCiBzcGVjaWFsIGNvbnRleHRzIHdo ZXJlIHNwZWNpYWwgY29tbWFuZHMgYXBwbHksIGFuZCAoaWkpIGV4dGVuZGluZyBhbgotZXhp c3RpbmcgYWN0aXZlIHJlZ2lvbiBldmVuIGlmIHRoZSBjdXJzb3IgbW92ZXMgYWNyb3NzIGEg c3BlY2lhbCBjb250ZXh0LgorZXhpc3RpbmcgYWN0aXZlIHJlZ2lvbiBldmVuIGlmIHBvaW50 IG1vdmVzIGFjcm9zcyBhIHNwZWNpYWwgY29udGV4dC4KIAogQGl0ZW0gQGZpbGV7Q1VBLmVs fSBieSBLaW0uIEYuIFN0b3JtCiBAY2luZGV4IEBmaWxle0NVQS5lbH0KQEAgLTE5MDU2LDEy ICsxOTA1OCwxMiBAQCBVc2luZyB0aGUgbWFwcGluZyBBUEkKIEBkZWZ1biBvcmctbWFwLWVu dHJpZXMgZnVuYyAmb3B0aW9uYWwgbWF0Y2ggc2NvcGUgJnJlc3Qgc2tpcAogQ2FsbCBAc2Ft cHtGVU5DfSBhdCBlYWNoIGhlYWRsaW5lIHNlbGVjdGVkIGJ5IEBjb2Rle01BVENIfSBpbiBA Y29kZXtTQ09QRX0uCiAKLUBzYW1we0ZVTkN9IGlzIGEgZnVuY3Rpb24gb3IgYSBMaXNwIGZv cm0uICBXaXRoIHRoZSBjdXJzb3IgcG9zaXRpb25lZCBhdCB0aGUKK0BzYW1we0ZVTkN9IGlz IGEgZnVuY3Rpb24gb3IgYSBMaXNwIGZvcm0uICBXaXRoIHBvaW50IHBvc2l0aW9uZWQgYXQg dGhlCiBiZWdpbm5pbmcgb2YgdGhlIGhlYWRsaW5lLCBjYWxsIHRoZSBmdW5jdGlvbiB3aXRo b3V0IGFyZ3VtZW50cy4gIE9yZyByZXR1cm5zCiBhbiBhbGlzdCBvZiByZXR1cm4gdmFsdWVz IG9mIGNhbGxzIHRvIHRoZSBmdW5jdGlvbi4KIAogVG8gYXZvaWQgcHJlc2VydmluZyBwb2lu dCwgT3JnIHdyYXBzIHRoZSBjYWxsIHRvIEBjb2Rle0ZVTkN9IGluCi1zYXZlLWV4Y3Vyc2lv biBmb3JtLiAgQWZ0ZXIgZXZhbHVhdGlvbiwgT3JnIG1vdmVzIHRoZSBjdXJzb3IgdG8gdGhl IGVuZCBvZgorc2F2ZS1leGN1cnNpb24gZm9ybS4gIEFmdGVyIGV2YWx1YXRpb24sIE9yZyBt b3ZlcyBwb2ludCB0byB0aGUgZW5kIG9mCiB0aGUgbGluZSB0aGF0IHdhcyBqdXN0IHByb2Nl c3NlZC4gIFNlYXJjaCBjb250aW51ZXMgZnJvbSB0aGF0IHBvaW50IGZvcndhcmQuCiBUaGlz IG1heSBub3QgYWx3YXlzIHdvcmsgYXMgZXhwZWN0ZWQgdW5kZXIgc29tZSBjb25kaXRpb25z LCBzdWNoIGFzIGlmIHRoZQogY3VycmVudCBzdWItdHJlZSB3YXMgcmVtb3ZlZCBieSBhIHBy ZXZpb3VzIGFyY2hpdmluZyBvcGVyYXRpb24uICBJbiBzdWNoIHJhcmUKQEAgLTE5MjYzLDcg KzE5MjY1LDcgQEAgUHVsbGluZyBmcm9tIE1vYmlsZU9yZwogQGl0ZW0KIE9yZyBnZW5lcmF0 ZXMgYW4gYWdlbmRhIHZpZXcgZm9yIGZsYWdnZWQgZW50cmllcyBmb3IgdXNlciBpbnRlcnZl bnRpb24gdG8KIGNsZWFuIHVwLiAgRm9yIG5vdGVzIHN0b3JlZCBpbiBmbGFnZ2VkIGVudHJp ZXMsIE1vYmlsZU9yZyBkaXNwbGF5cyB0aGVtIGluCi10aGUgZWNobyBhcmVhIHdoZW4gdGhl IGN1cnNvciBpcyBvbiB0aGUgY29ycmVzcG9uZGluZyBhZ2VuZGEgaXRlbS4KK3RoZSBlY2hv IGFyZWEgd2hlbiBwb2ludCBpcyBvbiB0aGUgY29ycmVzcG9uZGluZyBhZ2VuZGEgaXRlbS4K IAogQHRhYmxlIEBrYmQKIEBraW5kZXggPwotLSAKMi4xNy4xCgo= ----=_RainLoop_931_738430460.1529683715--