From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C2B39C43457 for ; Mon, 12 Oct 2020 21:28:18 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5C04C21655 for ; Mon, 12 Oct 2020 21:28:18 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="T/c33c9U"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="nuz+J7fb" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5C04C21655 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=fDDGDBrMlnKhmXiyGPHCDu10+nJu+F/YFQyJzptJddI=; b=T/c33c9UdVik+XUr7htlFJVZv NGPLm7EDOH1hjCgHxJB4nwWdIEBId3FxRqN3Vv3tETAgbRbAkRAh6l8+J77B2Lvnsu6j1ZcJj+DX6 Jn+FyVUL/glKx0r4vwYeZ8ThQQmJW7bkiQwRfFiOMeQbbrMkSPhOGY19XC7dZWXm8h8r4kXK0shGc mdNMpXvXBl/wKSRNyQA+YcSttS6yNDfht7drgKGY86H5tFz+dgbHdPDV2/cVFjSHw1UvzUMyDTSBd mCiguu1xYK/P/Xctc2YDv1JGtkSRf77Wd32xeJyrZls50qoD5aEeMUItVSo97y0pUuNwEGUkI8OBX Kie5FJ/Cg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kS5LO-0000Ud-4C; Mon, 12 Oct 2020 21:26:58 +0000 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kS5LM-0000UH-D3 for linux-arm-kernel@lists.infradead.org; Mon, 12 Oct 2020 21:26:57 +0000 Received: by mail-pg1-x543.google.com with SMTP id y14so15630952pgf.12 for ; Mon, 12 Oct 2020 14:26:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=DshweHF2Lcb/utD4pDzDKL8NA4Ub2idEznn/U60w5+0=; b=nuz+J7fbVhR0LUGXN8lOA9z1HodxCcgMcKObvNwZsGdW2bOEGRG2z0aLMYYkuUSiPg hnvgZcYV5VoEZqeP/nyuxBsrskPuRdnCFDOq66NGq0Xq6TirgU4wxL4ZNznNM3ole17P pwfUDUnjmXGtuHIvsGnQUKkMkwTGun/Uk/veg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=DshweHF2Lcb/utD4pDzDKL8NA4Ub2idEznn/U60w5+0=; b=bZOOdKml3k3o0x1eUZiYBY+RfxCIM+IQYxrk6TmU1VibfVvkt0KoZ/jI5VctnE0TQ0 pxBVTYcPlSsKsbzAhWnXSC83xw1pQuv5qNoF+cdhsveOM/ltoRyikBAm7loyBjSJ+BRT 3odOVF7l6gx6YOkggCIAhxk/AtBjWDnUZUnluO23S3zJREXKNTwoXqNcXiws8N24VQo8 q73ltWVVAkngpvzVBb7kNFkEHKY7EAVqQ8oeizhi0G7GaYnVk9S/jceeVTUGYqWCqgvy +nYRYU1RcxtKNw63ZjGVAKbRAQKQVviRBg00SMNZT8iJ2ONxWOvnzA/1Ja2grKd4msmS iHSg== X-Gm-Message-State: AOAM532PQxrY+Lw0ck4xPI8+H+QVVjFD4ZmK6qb0Dqgf4B0LFuLkRlP1 gBCy4Hsw92icTgmtcvAXO2/k1A== X-Google-Smtp-Source: ABdhPJydgD7aNMc9YvgoC3Db36t9aF0HJPF5vX/QdGEwOOIqOIqqYD7nUuRwtjbG7AJMCMNY8exgxA== X-Received: by 2002:a63:f803:: with SMTP id n3mr14515274pgh.231.1602538014115; Mon, 12 Oct 2020 14:26:54 -0700 (PDT) Received: from www.outflux.net (smtp.outflux.net. [198.145.64.163]) by smtp.gmail.com with ESMTPSA id j24sm5270519pjn.9.2020.10.12.14.26.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Oct 2020 14:26:53 -0700 (PDT) Date: Mon, 12 Oct 2020 14:26:52 -0700 From: Kees Cook To: =?utf-8?B?RsSBbmctcnXDrCBTw7JuZw==?= Subject: Re: [PATCH] arm/build: Always handle .ARM.exidx and .ARM.extab sections Message-ID: <202010121426.A5FA5E59@keescook> References: <20200928224854.3224862-1-natechancellor@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201012_172656_498389_3CF18709 X-CRM114-Status: GOOD ( 38.11 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kernel test robot , Nick Desaulniers , LKML , Russell King , clang-built-linux , Nathan Chancellor , Ingo Molnar , Linux ARM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gTW9uLCBPY3QgMTIsIDIwMjAgYXQgMDI6MjI6MDNQTSAtMDcwMCwgRsSBbmctcnXDrCBTw7Ju ZyB3cm90ZToKPiBPbiBNb24sIE9jdCAxMiwgMjAyMCBhdCAyOjExIFBNICdOaWNrIERlc2F1bG5p ZXJzJyB2aWEgQ2xhbmcgQnVpbHQKPiBMaW51eCA8Y2xhbmctYnVpbHQtbGludXhAZ29vZ2xlZ3Jv dXBzLmNvbT4gd3JvdGU6Cj4gPgo+ID4gT24gTW9uLCBTZXAgMjgsIDIwMjAgYXQgMzo0OSBQTSBO YXRoYW4gQ2hhbmNlbGxvcgo+ID4gPG5hdGVjaGFuY2VsbG9yQGdtYWlsLmNvbT4gd3JvdGU6Cj4g PiA+Cj4gPiA+IEFmdGVyIHR1cm5pbmcgb24gd2FybmluZ3MgZm9yIG9ycGhhbiBzZWN0aW9uIHBs YWNlbWVudCwgZW5hYmxpbmcKPiA+ID4gQ09ORklHX1VOV0lOREVSX0ZSQU1FX1BPSU5URVIgaW5z dGVhZCBvZiBDT05GSUdfVU5XSU5ERVJfQVJNIGNhdXNlcwo+ID4gPiB0aG91c2FuZHMgb2Ygd2Fy bmluZ3Mgd2hlbiBjbGFuZyArIGxkLmxsZCBhcmUgdXNlZDoKPiA+ID4KPiA+ID4gJCBzY3JpcHRz L2NvbmZpZyAtLWZpbGUgYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWcgXAo+ID4g PiAgICAgICAgICAgICAgICAgIC1kIENPTkZJR19VTldJTkRFUl9BUk0gXAo+ID4gPiAgICAgICAg ICAgICAgICAgIC1lIENPTkZJR19VTldJTkRFUl9GUkFNRV9QT0lOVEVSCj4gPiA+ICQgbWFrZSAt c2tqIiQobnByb2MpIiBBUkNIPWFybSBDUk9TU19DT01QSUxFPWFybS1saW51eC1nbnVlYWJpLSBM TFZNPTEgZGVmY29uZmlnIHpJbWFnZQo+ID4gPiBsZC5sbGQ6IHdhcm5pbmc6IGluaXQvYnVpbHQt aW4uYShtYWluLm8pOiguQVJNLmV4dGFiKSBpcyBiZWluZyBwbGFjZWQgaW4gJy5BUk0uZXh0YWIn Cj4gPiA+IGxkLmxsZDogd2FybmluZzogaW5pdC9idWlsdC1pbi5hKG1haW4ubyk6KC5BUk0uZXh0 YWIuaW5pdC50ZXh0KSBpcyBiZWluZyBwbGFjZWQgaW4gJy5BUk0uZXh0YWIuaW5pdC50ZXh0Jwo+ ID4gPiBsZC5sbGQ6IHdhcm5pbmc6IGluaXQvYnVpbHQtaW4uYShtYWluLm8pOiguQVJNLmV4dGFi LnJlZi50ZXh0KSBpcyBiZWluZyBwbGFjZWQgaW4gJy5BUk0uZXh0YWIucmVmLnRleHQnCj4gPiA+ IGxkLmxsZDogd2FybmluZzogaW5pdC9idWlsdC1pbi5hKGRvX21vdW50cy5vKTooLkFSTS5leHRh Yi5pbml0LnRleHQpIGlzIGJlaW5nIHBsYWNlZCBpbiAnLkFSTS5leHRhYi5pbml0LnRleHQnCj4g PiA+IGxkLmxsZDogd2FybmluZzogaW5pdC9idWlsdC1pbi5hKGRvX21vdW50cy5vKTooLkFSTS5l eHRhYikgaXMgYmVpbmcgcGxhY2VkIGluICcuQVJNLmV4dGFiJwo+ID4gPiBsZC5sbGQ6IHdhcm5p bmc6IGluaXQvYnVpbHQtaW4uYShkb19tb3VudHNfcmQubyk6KC5BUk0uZXh0YWIuaW5pdC50ZXh0 KSBpcyBiZWluZyBwbGFjZWQgaW4gJy5BUk0uZXh0YWIuaW5pdC50ZXh0Jwo+ID4gPiBsZC5sbGQ6 IHdhcm5pbmc6IGluaXQvYnVpbHQtaW4uYShkb19tb3VudHNfcmQubyk6KC5BUk0uZXh0YWIpIGlz IGJlaW5nIHBsYWNlZCBpbiAnLkFSTS5leHRhYicKPiA+ID4gbGQubGxkOiB3YXJuaW5nOiBpbml0 L2J1aWx0LWluLmEoZG9fbW91bnRzX2luaXRyZC5vKTooLkFSTS5leHRhYi5pbml0LnRleHQpIGlz IGJlaW5nIHBsYWNlZCBpbiAnLkFSTS5leHRhYi5pbml0LnRleHQnCj4gPiA+IGxkLmxsZDogd2Fy bmluZzogaW5pdC9idWlsdC1pbi5hKGluaXRyYW1mcy5vKTooLkFSTS5leHRhYi5pbml0LnRleHQp IGlzIGJlaW5nIHBsYWNlZCBpbiAnLkFSTS5leHRhYi5pbml0LnRleHQnCj4gPiA+IGxkLmxsZDog d2FybmluZzogaW5pdC9idWlsdC1pbi5hKGluaXRyYW1mcy5vKTooLkFSTS5leHRhYikgaXMgYmVp bmcgcGxhY2VkIGluICcuQVJNLmV4dGFiJwo+ID4gPiBsZC5sbGQ6IHdhcm5pbmc6IGluaXQvYnVp bHQtaW4uYShjYWxpYnJhdGUubyk6KC5BUk0uZXh0YWIuaW5pdC50ZXh0KSBpcyBiZWluZyBwbGFj ZWQgaW4gJy5BUk0uZXh0YWIuaW5pdC50ZXh0Jwo+ID4gPiBsZC5sbGQ6IHdhcm5pbmc6IGluaXQv YnVpbHQtaW4uYShjYWxpYnJhdGUubyk6KC5BUk0uZXh0YWIpIGlzIGJlaW5nIHBsYWNlZCBpbiAn LkFSTS5leHRhYicKPiA+ID4KPiA+ID4gVGhlc2Ugc2VjdGlvbnMgYXJlIGhhbmRsZWQgYnkgdGhl IEFSTV9VTldJTkRfU0VDVElPTlMgZGVmaW5lLCB3aGljaCBpcwo+ID4gPiBvbmx5IGFkZGVkIHRv IHRoZSBsaXN0IG9mIHNlY3Rpb25zIHdoZW4gQ09ORklHX0FSTV9VTldJTkQgaXMgc2V0Lgo+ID4g PiBDT05GSUdfQVJNX1VOV0lORCBpcyBhIGhpZGRlbiBzeW1ib2wgdGhhdCBpcyBvbmx5IHNlbGVj dGVkIHdoZW4KPiA+ID4gQ09ORklHX1VOV0lOREVSX0FSTSBpcyBzZXQgc28gQ09ORklHX1VOV0lO REVSX0ZSQU1FX1BPSU5URVIgbmV2ZXIKPiA+ID4gaGFuZGxlcyB0aGVzZSBzZWN0aW9ucy4gQWNj b3JkaW5nIHRvIHRoZSBoZWxwIHRleHQgb2YKPiA+ID4gQ09ORklHX1VOV0lOREVSX0FSTSwgdGhl c2Ugc2VjdGlvbnMgc2hvdWxkIGJlIGRpc2NhcmRlZCBzbyB0aGF0IHRoZQo+ID4gPiBrZXJuZWwg aW1hZ2Ugc2l6ZSBpcyBub3QgYWZmZWN0ZWQuCj4gPgo+ID4gTXkgYXBvbG9naWVzIGZvciB0YWtp bmcgc28gbG9uZyB0byByZXZpZXcgdGhpcy4KPiA+Cj4gPiBJIGhhdmUgYSBzdXNwaWNpb24gdGhh dCB0aGVzZSBjb21lIGZyb20gZm9yY2luZyBvbiBjb25maWdzIHRoYXQKPiA+IEtjb25maWcvbWVu dWNvbmZpZyB3b3VsZCBibG9jaywgYW5kIGFyZW4ndCBjbGFuZyBvciBsbGQgc3BlY2lmaWMsIHll dAo+ID4gYXJlIGV4cG9zZWQgYnkgdGhlIG5ldyBsaW5rZXIgd2FybmluZ3MgZm9yIG9ycGhhbiBz ZWN0aW9uIHBsYWNlbWVudAo+ID4gKGdvb2QpLiAgVGhhdCBzYWlkLCB3ZSBkZWZpbml0ZWx5IGhh dmUgT0VNcyBpbiBBbmRyb2lkIGxhbmQgdGhhdCBzdGlsbAo+ID4gcHJlZmVyIHRoZSBvbGRlciB1 bndpbmRlci4KPiA+Cj4gPiBGcm9tIGh0dHBzOi8vZGV2ZWxvcGVyLmFybS5jb20vZG9jdW1lbnRh dGlvbi9paGkwMDM4L2IvIChjbGljawo+ID4gZG93bmxvYWQgaW4gdG9wIGxlZnQpLCBzZWN0aW9u IDQuNC4xICJTZWN0aW9ucyIgaGFzIGEgbm90ZToKPiA+Cj4gPiBgYGAKPiA+IFRhYmxlcyBhcmUg bm90IHJlcXVpcmVkIGZvciBBQkkgY29tcGxpYW5jZSBhdCB0aGUgQy9Bc3NlbWJsZXIgbGV2ZWwK PiA+IGJ1dCBhcmUgcmVxdWlyZWQgZm9yIEMrKy4KPiA+IGBgYAo+ID4KPiA+IFJldmlldy1ieTog TmljayBEZXNhdWxuaWVycyA8bmRlc2F1bG5pZXJzQGdvb2dsZS5jb20+Cj4gPiBUZXN0ZWQtYnk6 IE5pY2sgRGVzYXVsbmllcnMgPG5kZXNhdWxuaWVyc0Bnb29nbGUuY29tPgo+ID4KPiA+IFBsZWFz ZSBzdWJtaXQgdG86Cj4gPiBodHRwczovL3d3dy5hcm0ubGludXgub3JnLnVrL2RldmVsb3Blci9w YXRjaGVzL2FkZC5waHAKPiA+Cj4gPiA+Cj4gPiA+IEZpeGVzOiA1YTE3ODUwZTI1MWEgKCJhcm0v YnVpbGQ6IFdhcm4gb24gb3JwaGFuIHNlY3Rpb24gcGxhY2VtZW50IikKPiA+ID4gTGluazogaHR0 cHM6Ly9naXRodWIuY29tL0NsYW5nQnVpbHRMaW51eC9saW51eC9pc3N1ZXMvMTE1Mgo+ID4gPiBS ZXBvcnRlZC1ieToga2VybmVsIHRlc3Qgcm9ib3QgPGxrcEBpbnRlbC5jb20+Cj4gPiA+IFNpZ25l ZC1vZmYtYnk6IE5hdGhhbiBDaGFuY2VsbG9yIDxuYXRlY2hhbmNlbGxvckBnbWFpbC5jb20+Cj4g PiA+IC0tLQo+ID4gPiAgYXJjaC9hcm0va2VybmVsL3ZtbGludXgubGRzLlMgfCA0ICsrKysKPiA+ ID4gIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKykKPiA+ID4KPiA+ID4gZGlmZiAtLWdp dCBhL2FyY2gvYXJtL2tlcm5lbC92bWxpbnV4Lmxkcy5TIGIvYXJjaC9hcm0va2VybmVsL3ZtbGlu dXgubGRzLlMKPiA+ID4gaW5kZXggNWY0OTIyZTg1OGQwLi5hMmMwZDk2YjA1ODAgMTAwNjQ0Cj4g PiA+IC0tLSBhL2FyY2gvYXJtL2tlcm5lbC92bWxpbnV4Lmxkcy5TCj4gPiA+ICsrKyBiL2FyY2gv YXJtL2tlcm5lbC92bWxpbnV4Lmxkcy5TCj4gPiA+IEBAIC00MCw2ICs0MCwxMCBAQCBTRUNUSU9O Uwo+ID4gPiAgICAgICAgICAgICAgICAgQVJNX0RJU0NBUkQKPiA+ID4gICNpZm5kZWYgQ09ORklH X1NNUF9PTl9VUAo+ID4gPiAgICAgICAgICAgICAgICAgKiguYWx0LnNtcC5pbml0KQo+ID4gPiAr I2VuZGlmCj4gPiA+ICsjaWZuZGVmIENPTkZJR19BUk1fVU5XSU5ECj4gPiA+ICsgICAgICAgICAg ICAgICAqKC5BUk0uZXhpZHgqKQo+ID4KPiA+IEkgZG9uJ3QgdGhpbmsgd2UgbmVlZCB0aGUgd2ls ZGNhcmQsIGFzIHdpdGhvdXQgdGhpcyBsaW5lLCBJIHNlZToKPiA+Cj4gPiBsZC5sbGQ6IHdhcm5p bmc6IDxpbnRlcm5hbD46KC5BUk0uZXhpZHgpIGlzIGJlaW5nIHBsYWNlZCBpbiAnLkFSTS5leGlk eCcKPiAKPiBXZSBtYXkgbmVlZCB0aGUgd2lsZGNhcmQgaWYgdGhlcmUgYXJlIC1mZnVuY3Rpb24t c2VjdGlvbnMgYnVpbGRzLgo+IEluIGNsYW5nLCAuQVJNLmV4aWR4KiBjYW5ub3QgYmUgcmVtb3Zl ZCBldmVuIHdpdGggLWZuby11bndpbmQtdGFibGVzCj4gLWZuby1leGNlcHRpb25zLgoKRG9lcyBp dCBuZWVkIHRvIGJlOgoKCSooLkFSTS5leGlkeCkgKiguQVJNLmV4aWR4LiopCgkqKC5BUk0uZXh0 YWIpICooLkFSTS5leHRhYi4qKQoKPwoKPiAKPiA+IHRob3VnaCBJIGRvIHNlZSBiaW51dGlscyBs aW5rZXIgc2NyaXB0cyB1c2UgcHJlY2lzZWx5IHdoYXQgeW91IGhhdmUuCj4gPiBTbyBJIGd1ZXNz IHRoYXQncyBmaW5lLgo+ID4KPiA+IEkgZ3Vlc3Mgd2UgY2FuJ3QgcmV1c2UgYEFSTV9VTldJTkRf U0VDVElPTlNgIHNpbmNlIHRoZSBBTElHTiBhbmQKPiA+IGxpbmtlci1zY3JpcHQtZGVmaW5lZC1z eW1ib2xzIHdvdWxkIGJlIHdlaXJkIGluIGEgRElTQ0FSRCBjbGF1c2U/Cj4gPgo+ID4KPiA+ID4g KyAgICAgICAgICAgICAgICooLkFSTS5leHRhYiopCj4gPiA+ICAjZW5kaWYKPiA+ID4gICAgICAg ICB9Cj4gPiA+Cj4gPiA+Cj4gPiA+IGJhc2UtY29tbWl0OiA2ZTBiZjBlMGU1NTAwMDc0MmE1M2M1 ZjNiNThmODY2OWUwMDkxYTExCj4gPiA+IC0tCj4gPgo+ID4KPiA+IC0tCj4gPiBUaGFua3MsCj4g PiB+TmljayBEZXNhdWxuaWVycwo+ID4KPiA+IC0tCj4gPiBZb3UgcmVjZWl2ZWQgdGhpcyBtZXNz YWdlIGJlY2F1c2UgeW91IGFyZSBzdWJzY3JpYmVkIHRvIHRoZSBHb29nbGUgR3JvdXBzICJDbGFu ZyBCdWlsdCBMaW51eCIgZ3JvdXAuCj4gPiBUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgZ3JvdXAg YW5kIHN0b3AgcmVjZWl2aW5nIGVtYWlscyBmcm9tIGl0LCBzZW5kIGFuIGVtYWlsIHRvIGNsYW5n LWJ1aWx0LWxpbnV4K3Vuc3Vic2NyaWJlQGdvb2dsZWdyb3Vwcy5jb20uCj4gPiBUbyB2aWV3IHRo aXMgZGlzY3Vzc2lvbiBvbiB0aGUgd2ViIHZpc2l0IGh0dHBzOi8vZ3JvdXBzLmdvb2dsZS5jb20v ZC9tc2dpZC9jbGFuZy1idWlsdC1saW51eC9DQUt3dk9kJTNEJTJCOThyNkY0SmpyUEVvV1g4OFdR JTNEQi1LTVJQMmVXb2phYkxrNml0M2k1S0ElNDBtYWlsLmdtYWlsLmNvbS4KPiAKPiAKPiAKPiAt LSAKPiDlrovmlrnnnb8KCi0tIApLZWVzIENvb2sKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4 LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK