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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B3481C67861 for ; Tue, 9 Apr 2024 11:29:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:References:Cc:To:From:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=aV3RuHjc82M/ekyVeqnJ+dQ4LaVfipWA/A3YhbD1TkE=; b=kbKM11raiRbCea g/DiJRk2vaxwGanw4IiUTbAEeOGeIsUGOqfQCh6BNilGJD7lxN85lxMPzvnDJS4uSHMQRAYb52EnS 0ZcWEwvEJ8/E0NiEPxluGlSC+YLvJ2FIgRdhCOUmPH06MyE+kaxeVCl+HQ/Tu0JUuZvmx3NX1L7ht 65qVNaz81EORWuEhMIyIw1qwii1WMiYQvq52K9eU3em4ib7MLy4L0w5TKoN2PdIJwKTUD9wWoiUz9 m3nHkIvkK1h6lxtzrZzslboxhhh1449ZNOsk2C7kCoF+Rfo61iS+DByyW5K0jgOeq9kMeMRCMeMeH vPVmWTR8tc3nDwHjgduw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1ru9fZ-00000001ejg-0CTg; Tue, 09 Apr 2024 11:29:41 +0000 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1ru9fV-00000001ejD-2N7D for linux-arm-kernel@lists.infradead.org; Tue, 09 Apr 2024 11:29:39 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1712662176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=Ukj5XpQhbbnI72RJsdPHuhyyK4ArpEUkQAD+BTpMjIU=; b=iScgx1iIPDWezNIeGQV35/LdknG7wVlHIv70Z5ijh8sta5/Z7RLtBsiLInNv/+E6o7Asxy 3bp3+xdBXFnlSEu14K6fCYRiO0v4/hZm9bzlUnX/uOkUAwL9QKNwkm/pM09bpBBIynkkHC RK92YnF+sp9UmlA8RlysilqOSQXCH3w= Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-93-mbwhtF83P1emEDbMKPmJ4Q-1; Tue, 09 Apr 2024 07:29:34 -0400 X-MC-Unique: mbwhtF83P1emEDbMKPmJ4Q-1 Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-416ac21981dso2533505e9.1 for ; Tue, 09 Apr 2024 04:29:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712662173; x=1713266973; h=content-transfer-encoding:in-reply-to:organization:autocrypt :content-language:references:cc:to:from:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=Ukj5XpQhbbnI72RJsdPHuhyyK4ArpEUkQAD+BTpMjIU=; b=gq1g22qj6EnmqSncxKvQ4qfYQ5czl3hDlkDsDrBoVpjEvVCTY5rWyi42WegjATzHs0 PS7WwaViTtT86eAF1AA+oIi9WDBxlJXonxKaEqdgCkisKIJZx52nRXC5LN5/GWZyZObB fVfrLos77Ip+Ne/6B0JoEX7NXGyXDZUHFfgPZ0khANcbYfiYqptTMUWxFD7+ASCAzVcO G4/q5xdBx0ZeOrz/9Szb5FrzuL7h4AS0R2Rn6u6S3009to/GuA4Ic2s4wY2vhIMXA6BG G49WO59KmG0xHYpoqxthrAo3BOUmWxAHtye7IIBTLR+70PLfR8Wn2nObAwnSvJnMBJs3 NKcw== X-Forwarded-Encrypted: i=1; AJvYcCWkET0l/nwPVFmRx61dIm+duJkt0AG8m1e9bEhQNu7/nqA8HTaYEzvRTF7PGYLDeJDrkioAatWBivtKCPSb0L0Yv6EvHg0R7U94y/p7MBZCs8PFE84= X-Gm-Message-State: AOJu0YwXYYK+J7h8YgsieTW/qk+QrDFNk6s+oJ6F+AGwADgWJMm2Uh2r MpDDTxU37IKy5JRicHyeGpFW987390NrogzdQHNJ7PHvxNBKqynLoJVpJtInTR+jTQssBVpUVbu uwDVgH94LTR7lAx38+ldz00i8W9sn/IjMYACB6HTKYzhha4cdSax/hC/fy4WSUiIXsiWSD9FZ X-Received: by 2002:a05:600c:1c08:b0:416:89bc:dec6 with SMTP id j8-20020a05600c1c0800b0041689bcdec6mr2210490wms.11.1712662173383; Tue, 09 Apr 2024 04:29:33 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFuXqMiQTPxog9ClhpLtvVqDlnjWWvOJGEGURMO92w6OgpG807qMLJ/GiSIMVJ3U70YXIQZzA== X-Received: by 2002:a05:600c:1c08:b0:416:89bc:dec6 with SMTP id j8-20020a05600c1c0800b0041689bcdec6mr2210468wms.11.1712662172850; Tue, 09 Apr 2024 04:29:32 -0700 (PDT) Received: from ?IPV6:2003:cb:c70a:be00:a285:bc76:307d:4eaa? (p200300cbc70abe00a285bc76307d4eaa.dip0.t-ipconnect.de. [2003:cb:c70a:be00:a285:bc76:307d:4eaa]) by smtp.gmail.com with ESMTPSA id b3-20020a05600c4e0300b00416920ca56csm4445574wmq.42.2024.04.09.04.29.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 09 Apr 2024 04:29:32 -0700 (PDT) Message-ID: Date: Tue, 9 Apr 2024 13:29:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 0/4] Speed up boot with faster linear map creation From: David Hildenbrand To: Itaru Kitayama , Ryan Roberts Cc: Catalin Marinas , Will Deacon , Mark Rutland , Ard Biesheuvel , Donald Dutile , Eric Chanudet , Linux ARM , "linux-kernel@vger.kernel.org" References: <20240404143308.2224141-1-ryan.roberts@arm.com> <533adb77-8c2b-40db-84cb-88de77ab92bb@arm.com> <1d5abb48-08a8-4d83-a681-6915bc7b6907@arm.com> <268FBD1C-B102-4726-A7F4-1125123BDA7A@linux.dev> <5e4dc2fe-2945-4fc5-a533-c8b2d04668a0@redhat.com> Autocrypt: addr=david@redhat.com; keydata= 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 WNyWQQ== Organization: Red Hat In-Reply-To: <5e4dc2fe-2945-4fc5-a533-c8b2d04668a0@redhat.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240409_042937_817323_58EAB494 X-CRM114-Status: GOOD ( 28.73 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMDkuMDQuMjQgMTM6MjIsIERhdmlkIEhpbGRlbmJyYW5kIHdyb3RlOgo+IE9uIDA5LjA0LjI0 IDEyOjEzLCBJdGFydSBLaXRheWFtYSB3cm90ZToKPj4KPj4KPj4+IE9uIEFwciA5LCAyMDI0LCBh dCAxOTowNCwgUnlhbiBSb2JlcnRzIDxyeWFuLnJvYmVydHNAYXJtLmNvbT4gd3JvdGU6Cj4+Pgo+ Pj4gT24gMDkvMDQvMjAyNCAwMToxMCwgSXRhcnUgS2l0YXlhbWEgd3JvdGU6Cj4+Pj4gSGkgUnlh biwKPj4+Pgo+Pj4+PiBPbiBBcHIgOCwgMjAyNCwgYXQgMTY6MzAsIFJ5YW4gUm9iZXJ0cyA8cnlh bi5yb2JlcnRzQGFybS5jb20+IHdyb3RlOgo+Pj4+Pgo+Pj4+PiBPbiAwNi8wNC8yMDI0IDExOjMx LCBJdGFydSBLaXRheWFtYSB3cm90ZToKPj4+Pj4+IEhpIFJ5YW4sCj4+Pj4+Pgo+Pj4+Pj4gT24g U2F0LCBBcHIgMDYsIDIwMjQgYXQgMDk6MzI6MzRBTSArMDEwMCwgUnlhbiBSb2JlcnRzIHdyb3Rl Ogo+Pj4+Pj4+IEhpIEl0YXJ1LAo+Pj4+Pj4+Cj4+Pj4+Pj4gT24gMDUvMDQvMjAyNCAwODozOSwg SXRhcnUgS2l0YXlhbWEgd3JvdGU6Cj4+Pj4+Pj4+IE9uIFRodSwgQXByIDA0LCAyMDI0IGF0IDAz OjMzOjA0UE0gKzAxMDAsIFJ5YW4gUm9iZXJ0cyB3cm90ZToKPj4+Pj4+Pj4+IEhpIEFsbCwKPj4+ Pj4+Pj4+Cj4+Pj4+Pj4+PiBJdCB0dXJucyBvdXQgdGhhdCBjcmVhdGluZyB0aGUgbGluZWFyIG1h cCBjYW4gdGFrZSBhIHNpZ25pZmljYW50IHByb3BvcnRpb24gb2YKPj4+Pj4+Pj4+IHRoZSB0b3Rh bCBib290IHRpbWUsIGVzcGVjaWFsbHkgd2hlbiByb2RhdGE9ZnVsbC4gQW5kIG1vc3Qgb2YgdGhl IHRpbWUgaXMgc3BlbnQKPj4+Pj4+Pj4+IHdhaXRpbmcgb24gc3VwZXJmbHVvdXMgdGxiIGludmFs aWRhdGlvbiBhbmQgbWVtb3J5IGJhcnJpZXJzLiBUaGlzIHNlcmllcyByZXdvcmtzCj4+Pj4+Pj4+ PiB0aGUga2VybmVsIHBndGFibGUgZ2VuZXJhdGlvbiBjb2RlIHRvIHNpZ25pZmljYW50bHkgcmVk dWNlIHRoZSBudW1iZXIgb2YgdGhvc2UKPj4+Pj4+Pj4+IFRMQklzLCBJU0JzIGFuZCBEU0JzLiBT ZWUgZWFjaCBwYXRjaCBmb3IgZGV0YWlscy4KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiBUaGUgYmVsb3cg c2hvd3MgdGhlIGV4ZWN1dGlvbiB0aW1lIG9mIG1hcF9tZW0oKSBhY3Jvc3MgYSBjb3VwbGUgb2Yg ZGlmZmVyZW50Cj4+Pj4+Pj4+PiBzeXN0ZW1zIHdpdGggZGlmZmVyZW50IFJBTSBjb25maWd1cmF0 aW9ucy4gV2UgbWVhc3VyZSBhZnRlciBhcHBseWluZyBlYWNoIHBhdGNoCj4+Pj4+Pj4+PiBhbmQg c2hvdyB0aGUgaW1wcm92ZW1lbnQgcmVsYXRpdmUgdG8gYmFzZSAodjYuOS1yYzIpOgo+Pj4+Pj4+ Pj4KPj4+Pj4+Pj4+ICAgICAgICAgICAgICAgICAgfCBBcHBsZSBNMiBWTSB8IEFtcGVyZSBBbHRy YXwgQW1wZXJlIEFsdHJhfCBBbXBlcmUgQWx0cmEKPj4+Pj4+Pj4+ICAgICAgICAgICAgICAgICAg fCBWTSwgMTZHICAgICB8IFZNLCA2NEcgICAgIHwgVk0sIDI1NkcgICAgfCBNZXRhbCwgNTEyRwo+ Pj4+Pj4+Pj4gLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLXwtLS0t LS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0KPj4+Pj4+Pj4+ICAgICAgICAgICAgICAgICAgfCAgIG1z ICAgICglKSB8ICAgbXMgICAgKCUpIHwgICBtcyAgICAoJSkgfCAgICBtcyAgICAoJSkKPj4+Pj4+ Pj4+IC0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS18LS0tLS0tLS0t LS0tLXwtLS0tLS0tLS0tLS0tCj4+Pj4+Pj4+PiBiYXNlICAgICAgICAgICB8ICAxNTMgICAoMCUp IHwgMjIyNyAgICgwJSkgfCA4Nzk4ICAgKDAlKSB8IDE3NDQyICAgKDAlKQo+Pj4+Pj4+Pj4gbm8t Y29udC1yZW1hcCAgfCAgIDc3ICgtNDklKSB8ICA0MzEgKC04MSUpIHwgMTcyNyAoLTgwJSkgfCAg Mzc5NiAoLTc4JSkKPj4+Pj4+Pj4+IGJhdGNoLWJhcnJpZXJzIHwgICAxMyAoLTkyJSkgfCAgMTYy ICgtOTMlKSB8ICA2NTUgKC05MyUpIHwgIDE2NTYgKC05MSUpCj4+Pj4+Pj4+PiBuby1hbGxvYy1y ZW1hcCB8ICAgMTEgKC05MyUpIHwgIDEwOSAoLTk1JSkgfCAgNDQ5ICgtOTUlKSB8ICAxMjU3ICgt OTMlKQo+Pj4+Pj4+Pj4gbGF6eS11bm1hcCAgICAgfCAgICA2ICgtOTYlKSB8ICAgNjEgKC05NyUp IHwgIDI1NyAoLTk3JSkgfCAgIDgzOCAoLTk1JSkKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiBUaGlzIHNl cmllcyBhcHBsaWVzIG9uIHRvcCBvZiB2Ni45LXJjMi4gQWxsIG1tIHNlbGZ0ZXN0cyBwYXNzLiBJ J3ZlIGNvbXBpbGUgYW5kCj4+Pj4+Pj4+PiBib290IHRlc3RlZCB2YXJpb3VzIFBBR0VfU0laRSBh bmQgVkEgc2l6ZSBjb25maWdzLgo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+IC0tLQo+Pj4+Pj4+Pj4KPj4+ Pj4+Pj4+IENoYW5nZXMgc2luY2UgdjEgWzFdCj4+Pj4+Pj4+PiA9PT09PT09PT09PT09PT09PT09 PQo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+ICAgICAtIEFkZGVkIFRlc3RlZC1ieSB0YWdzICh0aGFua3Mg dG8gRXJpYyBhbmQgSXRhcnUpCj4+Pj4+Pj4+PiAgICAgLSBSZW5hbWVkIF9fX3NldF9wdGUoKSAt PiBfX3NldF9wdGVfbm9zeW5jKCkgKHBlciBBcmQpCj4+Pj4+Pj4+PiAgICAgLSBSZW9yZGVyZWQg cGF0Y2hlcyAoYmlnZ2VzdCBpbXBhY3QgJiBsZWFzdCBjb250cm92ZXJzaWFsIGZpcnN0KQo+Pj4+ Pj4+Pj4gICAgIC0gUmVvcmRlcmVkIGFsbG9jL21hcC91bm1hcCBmdW5jdGlvbnMgaW4gbW11LmMg dG8gYWlkIHJlYWRlcgo+Pj4+Pj4+Pj4gICAgIC0gcHRlX2NsZWFyKCkgLT4gX19wdGVfY2xlYXIo KSBpbiBjbGVhcl9maXhtYXBfbm9zeW5jKCkKPj4+Pj4+Pj4+ICAgICAtIFJldmVydGVkIGdlbmVy aWMgcDRkX2luZGV4KCkgd2hpY2ggY2F1c2VkIHg4NiBidWlsZCBlcnJvci4gUmVwbGFjZWQgd2l0 aAo+Pj4+Pj4+Pj4gICAgICAgdW5jb25kaXRpb25hbCBwNGRfaW5kZXgoKSBkZWZpbmUgdW5kZXIg YXJtNjQuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+IFsxXSBodHRwczovL2xvcmUua2Vy bmVsLm9yZy9saW51eC1hcm0ta2VybmVsLzIwMjQwMzI2MTAxNDQ4LjM0NTM2MjYtMS1yeWFuLnJv YmVydHNAYXJtLmNvbS88aHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtYXJtLWtlcm5lbC8y MDI0MDMyNjEwMTQ0OC4zNDUzNjI2LTEtcnlhbi5yb2JlcnRzQGFybS5jb20vPgo+Pj4+Pj4+Pj4K Pj4+Pj4+Pj4+IFRoYW5rcywKPj4+Pj4+Pj4+IFJ5YW4KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pgo+Pj4+ Pj4+Pj4gUnlhbiBSb2JlcnRzICg0KToKPj4+Pj4+Pj4+ICAgICBhcm02NDogbW06IERvbid0IHJl bWFwIHBndGFibGVzIHBlci1jb250KHB0ZXxwbWQpIGJsb2NrCj4+Pj4+Pj4+PiAgICAgYXJtNjQ6 IG1tOiBCYXRjaCBkc2IgYW5kIGlzYiB3aGVuIHBvcHVsYXRpbmcgcGd0YWJsZXMKPj4+Pj4+Pj4+ ICAgICBhcm02NDogbW06IERvbid0IHJlbWFwIHBndGFibGVzIGZvciBhbGxvY2F0ZSB2cyBwb3B1 bGF0ZQo+Pj4+Pj4+Pj4gICAgIGFybTY0OiBtbTogTGF6aWx5IGNsZWFyIHB0ZSB0YWJsZSBtYXBw aW5ncyBmcm9tIGZpeG1hcAo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+IGFyY2gvYXJtNjQvaW5jbHVkZS9h c20vZml4bWFwLmggIHwgICA1ICstCj4+Pj4+Pj4+PiBhcmNoL2FybTY0L2luY2x1ZGUvYXNtL21t dS5oICAgICB8ICAgOCArCj4+Pj4+Pj4+PiBhcmNoL2FybTY0L2luY2x1ZGUvYXNtL3BndGFibGUu aCB8ICAxMyArLQo+Pj4+Pj4+Pj4gYXJjaC9hcm02NC9rZXJuZWwvY3B1ZmVhdHVyZS5jICAgfCAg MTAgKy0KPj4+Pj4+Pj4+IGFyY2gvYXJtNjQvbW0vZml4bWFwLmMgICAgICAgICAgIHwgIDExICsK Pj4+Pj4+Pj4+IGFyY2gvYXJtNjQvbW0vbW11LmMgICAgICAgICAgICAgIHwgMzc3ICsrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0KPj4+Pj4+Pj4+IDYgZmlsZXMgY2hhbmdlZCwgMzE5IGlu c2VydGlvbnMoKyksIDEwNSBkZWxldGlvbnMoLSkKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiAtLQo+Pj4+ Pj4+Pj4gMi4yNS4xCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBJJ3ZlIGJ1aWxkIGFuZCBi b290IHRlc3RlZCB0aGUgdjIgb24gRlZQLCBiYXNlIGlzIHRha2VuIGZyb20geW91cgo+Pj4+Pj4+ PiBsaW51eC1yciByZXBvLiBSdW5uaW5nIHJ1bl92bXRlc3RzLnNoIG9uIHYyIGxlZnQgc29tZSBn dXAgbG9uZ3Rlcm0gbm90IG9rcywgd291bGQgeW91IHRha2UgYSBsb29rIGF0IGl0PyBUaGUgbW0g a3NlZmx0ZXN0cyB1c2VkIGlzIGZyb20geW91ciBsaW51eC1yciByZXBvIHRvby4KPj4+Pj4+Pgo+ Pj4+Pj4+IFRoYW5rcyBmb3IgdGFraW5nIGEgbG9vayBhdCB0aGlzLgo+Pj4+Pj4+Cj4+Pj4+Pj4g SSBjYW4ndCByZXByb2R1Y2UgeW91ciBpc3N1ZSB1bmZvcnR1bmF0ZWx5OyBzdGVwcyBhcyBmb2xs b3dzIG9uIEFwcGxlIE0yIFZNOgo+Pj4+Pj4+Cj4+Pj4+Pj4gQ29uZmlnOiBhcm02NCBkZWZjb25m aWcgKyB0aGUgZm9sbG93aW5nOgo+Pj4+Pj4+Cj4+Pj4+Pj4gIyBTcXVhc2hmcyBmb3Igc25hcHMs IHhmcyBmb3IgbGFyZ2UgZmlsZSBmb2xpb3MuCj4+Pj4+Pj4gLi9zY3JpcHRzL2NvbmZpZyAtLWVu YWJsZSBDT05GSUdfU1FVQVNIRlNfTFo0Cj4+Pj4+Pj4gLi9zY3JpcHRzL2NvbmZpZyAtLWVuYWJs ZSBDT05GSUdfU1FVQVNIRlNfTFpPCj4+Pj4+Pj4gLi9zY3JpcHRzL2NvbmZpZyAtLWVuYWJsZSBD T05GSUdfU1FVQVNIRlNfWFoKPj4+Pj4+PiAuL3NjcmlwdHMvY29uZmlnIC0tZW5hYmxlIENPTkZJ R19TUVVBU0hGU19aU1RECj4+Pj4+Pj4gLi9zY3JpcHRzL2NvbmZpZyAtLWVuYWJsZSBDT05GSUdf WEZTX0ZTCj4+Pj4+Pj4KPj4+Pj4+PiAjIEZvciBnZW5lcmFsIG1tIGRlYnVnLgo+Pj4+Pj4+IC4v c2NyaXB0cy9jb25maWcgLS1lbmFibGUgQ09ORklHX0RFQlVHX1ZNCj4+Pj4+Pj4gLi9zY3JpcHRz L2NvbmZpZyAtLWVuYWJsZSBDT05GSUdfREVCVUdfVk1fTUFQTEVfVFJFRQo+Pj4+Pj4+IC4vc2Ny aXB0cy9jb25maWcgLS1lbmFibGUgQ09ORklHX0RFQlVHX1ZNX1JCCj4+Pj4+Pj4gLi9zY3JpcHRz L2NvbmZpZyAtLWVuYWJsZSBDT05GSUdfREVCVUdfVk1fUEdGTEFHUwo+Pj4+Pj4+IC4vc2NyaXB0 cy9jb25maWcgLS1lbmFibGUgQ09ORklHX0RFQlVHX1ZNX1BHVEFCTEUKPj4+Pj4+PiAuL3Njcmlw dHMvY29uZmlnIC0tZW5hYmxlIENPTkZJR19QQUdFX1RBQkxFX0NIRUNLCj4+Pj4+Pj4KPj4+Pj4+ PiAjIEZvciBtbSBzZWxmdGVzdHMuCj4+Pj4+Pj4gLi9zY3JpcHRzL2NvbmZpZyAtLWVuYWJsZSBD T05GSUdfVVNFUkZBVUxURkQKPj4+Pj4+PiAuL3NjcmlwdHMvY29uZmlnIC0tZW5hYmxlIENPTkZJ R19URVNUX1ZNQUxMT0MKPj4+Pj4+PiAuL3NjcmlwdHMvY29uZmlnIC0tZW5hYmxlIENPTkZJR19H VVBfVEVTVAo+Pj4+Pj4+Cj4+Pj4+Pj4gUnVubmluZyBvbiBWTSB3aXRoIDEyRyBtZW1vcnksIHNw bGl0IGFjcm9zcyAyIChlbXVsYXRlZCkgTlVNQSBub2RlcyAobmVlZGVkIGJ5Cj4+Pj4+Pj4gc29t ZSBtbSBzZWxmdGVzdHMpLCB3aXRoIGtlcm5lbCBjb21tYW5kIGxpbmUgdG8gcmVzZXJ2ZSBodWdl dGxicyBhbmQgb3RoZXIKPj4+Pj4+PiBmZWF0dXJlcyByZXF1aXJlZCBieSBzb21lIG1tIHNlbGZ0 ZXN0czoKPj4+Pj4+Pgo+Pj4+Pj4+ICIKPj4+Pj4+PiB0cmFuc3BhcmVudF9odWdlcGFnZT1tYWR2 aXNlIGVhcmx5Y29uIHJvb3Q9L2Rldi92ZGEyIHNlY3JldG1lbS5lbmFibGUKPj4+Pj4+PiBodWdl cGFnZXN6PTFHIGh1Z2VwYWdlcz0wOjIsMToyIGh1Z2VwYWdlc3o9MzJNIGh1Z2VwYWdlcz0wOjIs MToyCj4+Pj4+Pj4gZGVmYXVsdF9odWdlcGFnZXN6PTJNIGh1Z2VwYWdlcz0wOjY0LDE6NjQgaHVn ZXBhZ2Vzej02NEsgaHVnZXBhZ2VzPTA6MiwxOjIKPj4+Pj4+PiAiCj4+Pj4+Pj4KPj4+Pj4+PiBV YnVudHUgdXNlcnNwYWNlIHJ1bm5pbmcgb2ZmIFhGUyByb290ZnMuIEJ1aWxkIGFuZCBydW4gbW0g c2VsZnRlc3RzIGZyb20gc2FtZQo+Pj4+Pj4+IGdpdCB0cmVlLgo+Pj4+Pj4+Cj4+Pj4+Pj4KPj4+ Pj4+PiBBbHRob3VnaCBJIGRvbid0IHRoaW5rIGFueSBvZiB0aGlzIGNvbmZpZyBzaG91bGQgbWFr ZSBhIGRpZmZlcmVuY2UgdG8gZ3VwX2xvbmd0ZXJtLgo+Pj4+Pj4+Cj4+Pj4+Pj4gTG9va3MgbGlr ZSB5b3VyIGVycm9ycyBhcmUgYWxsICJmdHJ1bmNhdGUoKSBmYWlsZWQiLiBJJ3ZlIHNlZW4gdGhp cyBwcm9ibGVtIG9uCj4+Pj4+Pj4gb3VyIENJIHN5c3RlbS4gVGhlcmUgaXQgaXMgZHVlIHRvIHJ1 bm5pbmcgdGhlIHRlc3RzIGZyb20gTkZTIGZpbGUgc3lzdGVtLiBXaGF0Cj4+Pj4+Pj4gZmlsZXN5 c3RlbSBhcmUgeW91IHVzaW5nPyBQZXJoYXBzIHlvdSBhcmUgc2hhcmluZyBpbnRvIHRoZSBGVlAg dXNpbmcgOXA/IFRoYXQKPj4+Pj4+PiBtaWdodCBhbHNvIGJlIHByb2JsZW1hdGljLgo+Pj4+Pj4K Pj4+Pj4+IFRoYXQgd2FzIGl0LiBUaGlzIHRpbWUgSSBib290ZWQgdXAgdGhlIGtlcm5lbCBpbmNs dWRpbmcgeW91ciBzZXJpZXMgb24KPj4+Pj4+IFFFTVUgb24gbXkgTTEgYW5kIGV4ZWN1dGVkIHRo ZSBndXBfbG9uZ3Rlcm0gcHJvZ3JhbSB3aXRob3V0IHRoZSBmdHJ1bmNhdGUKPj4+Pj4+IGZhaWx1 cmVzLiBXaGVuIHRlc3RpbmcgeW91ciBrZXJuZWwgb24gRlZQLCBJIHdhcyBleGVjdXRpbmcgdGhl IHNjcmlwdCBmcm9tIHRoZSBGVlAncyBob3N0IGZpbGVzeXN0ZW0gdXNpbmcgOXAuCj4+Pj4+Cj4+ Pj4+IEknbSBub3Qgc3VyZSBleGFjdGx5IHdoYXQgdGhlIHJvb3QgY2F1c2UgaXMuIFBlcmhhcHMg dGhlcmUgaXNuJ3QgZW5vdWdoIHNwYWNlIG9uCj4+Pj4+IHRoZSBkaXNrPyBJdCBtaWdodCBiZSB3 b3J0aCBlbmhhbmNpbmcgdGhlIGVycm9yIGxvZyB0byBwcm92aWRlIHRoZSBlcnJubyBpbgo+Pj4+ PiB0b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9tbS9ndXBfbG9uZ3Rlcm0uYy4KPj4+Pj4KPj4+Pgo+ Pj4+IEF0dGFjaGVkIGlzIHRoZSBzdHJhY2XigJlkIGd1cF9sb25ndGVybSBleGVjdXRpb25nIGxv ZyBvbiB5b3VyCj4+Pj4gcGd0YWJsZS1ib290LXNwZWVkdXAtdjIga2VybmVsLgo+Pj4KPj4+IFNv cnJ5IGFyZSB5b3Ugc2F5aW5nIHRoYXQgaXQgb25seSBmYWlscyB3aXRoIHRoZSBwZ3RhYmxlLWJv b3Qtc3BlZWR1cC12MiBwYXRjaAo+Pj4gc2V0IGFwcGxpZWQ/IEkgdGhvdWdodCB3ZSBwcmV2aW91 c2x5IGNvbmNsdWRlZCB0aGF0IGl0IHdhcyBpbmRlcGVuZGVudCBvZiB0aGF0Pwo+Pj4gSSB3YXMg dW5kZXIgdGhlIGltcHJlc3Npb24gdGhhdCBpdCB3YXMgZmlsZXN5c3RlbSByZWxhdGVkIGFuZCBu b3Qgc29tZXRoaW5nIHRoYXQKPj4+IEkgd2FzIHBsYW5uaW5nIHRvIGludmVzdGlnYXRlLgo+Pgo+ PiBObywgaXJyZXNwZWN0aXZlIG9mIHRoZSBrZXJuZWwsIGlmIHVzaW5nIDlwIG9uIEZWUCB0aGUg dGVzdCBwcm9ncmFtIGZhaWxzLgo+PiBJdCBpcyBpbmRlZWQgOXAgZmlsZXN5c3RlbSByZWxhdGVk LCBhcyBJIHN3aXRjaGVkIHRvIHVzaW5nIE5GUyBhbGwgdGhlIGlzc3VlcyBhcmUgZ29uZS4KPiAK PiBEaWQgaXQgbmV2ZXIgd29yayBvbiA5cD8gSWYgc28sIHdlIG1pZ2h0IGhhdmUgdG8gU0tJUCB0 aGF0IHRlc3QuCj4gCj4gb3BlbmF0KEFUX0ZEQ1dELCAiZ3VwX2xvbmd0ZXJtLmNfdG1wZmlsZV9C TGJvT3QiLCBPX1JEV1J8T19DUkVBVHxPX0VYQ0wsIDA2MDApID0gMwo+IHVubGlua2F0KEFUX0ZE Q1dELCAiZ3VwX2xvbmd0ZXJtLmNfdG1wZmlsZV9CTGJvT3QiLCAwKSA9IDAKPiBmc3RhdGZzKDMs IDB4ZmZmZmU1MDVhODQwKSAgICAgICAgICAgICAgPSAtMSBFT1BOT1RTVVBQIChPcGVyYXRpb24g bm90IHN1cHBvcnRlZCkKPiBmdHJ1bmNhdGUoMywgNDA5NikgICAgICAgICAgICAgICAgICAgICAg PSAtMSBFTk9FTlQgKE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkpCgpOb3RlOiBJJ20gd29uZGVy aW5nIGlmIHRoZSB1bmxpbmthdCBoZXJlIGlzIHRoZSBwcm9ibGVtIHRoYXQgbWFrZXMgCmZ0cnVu Y2F0ZSgpIHdpdGggOXAgcmVzdWx0IGluIHdlaXJkIGVycm9ycyAoZS5nLiwgdGhlIGh5cGVydmlz b3IgCnVubGlua2VkIHRoZSBmaWxlIGFuZCBjYW5ub3QgcmVvcGVuIGl0IGZvciB0aGUgZnN0YXRm cy9mdHJ1bmNhdGUuIC4uLiAKd2hpY2ggZ2l2ZXMgdXMgd2VpcmQgZXJyb3JzIGhlcmUpLgoKVGhl biwgd2Ugc2hvdWxkIGxvb2t1cCB0aGUgZnMgdHlwZSBpbiBydW5fd2l0aF9sb2NhbF90bXBmaWxl KCkgYmVmb3JlIAp0aGUgdW5saW5rKCkgYW5kIHNpbXBseSBza2lwIHRoZSB0ZXN0IGlmIGl0IGlz IDlwLgoKLS0gCkNoZWVycywKCkRhdmlkIC8gZGhpbGRlbmIKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlz dApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJh ZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==