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 9E2AAC5479D for ; Mon, 9 Jan 2023 20:55:08 +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-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: Mime-Version:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=ADZWqV5JRln/IWbhLZRemAZdSheikN/d9f7A2oB6/d8=; b=CB1 SespGgZxQCvtkH/4dFXNonP0BdJVYeRyKqpxHu6WCqpeuL+fdh4dG+ILcVt54nvbkwDk2UDB2/CLY cJujfWmsf4mZln6am3MXyHxQ2glAFhYlle0R9xuYr1AoUYlallj60UDYikng1o8WFTgWmySIy2yER XaW6RV3uJ58d5c8aOZRRI9N8K0al/t/01o7DZKFqf3ZH9zpsLloHHYOvndeG2CnkvhBDTUpUPxHNr wZqLWLmObk2Su2NxoIYxG06r4WX0LD/sehJuxA6JdK/pNIVukZAKcafY1r3Pcpdd5z3VR6kSpgYLK U9fw+bccKU7qRayBEigAtrWs5PMhcTQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pEz9P-003zko-1W; Mon, 09 Jan 2023 20:53:47 +0000 Received: from mail-yw1-x114a.google.com ([2607:f8b0:4864:20::114a]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pEz9K-003ziq-LE for linux-arm-kernel@lists.infradead.org; Mon, 09 Jan 2023 20:53:45 +0000 Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-4b34cf67fb6so103887437b3.6 for ; Mon, 09 Jan 2023 12:53:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=content-transfer-encoding:cc:to:from:subject:message-id :mime-version:date:from:to:cc:subject:date:message-id:reply-to; bh=wwVj6Z8wF0g7IPD4ySJl0eB+CbG14o6gcX7xVxAqVVY=; b=oLgh13dwGIPyMIFmbkbVoRiknWihr/xSS0nM2REsAWutjkIBxiaMMWqG1kOMADijJa QbX+LsEhwyvCR2OhVsg3rp5mb8uwMA/UKPvuETakNQ2yqnfTnyp5c2fQlXT55KT+LRuM /YobsHpTzcfAC6g7afqZpBTd8kpoaZIqUqj9lNyVCBDKGB8PhhDC5c+tzRGryqOgC+XC wrITex0KYz2xhKaKOFOiXZHlf2dmDEpNQcFxNhMejnefCduIeIcpQBAhnqdLxEbO6fIJ VSLMwXUVx42S8T6EVWZ/ubQ8tgyCfk54na0l0jZ7/Iwmrn/pAY5eU6d5bSUXFx9ClGX3 mB3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:from:subject:message-id :mime-version:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=wwVj6Z8wF0g7IPD4ySJl0eB+CbG14o6gcX7xVxAqVVY=; b=F7B8NCu5JpSW3vi46CVHzYTYt3+YbfSKUSDMHU4oa13ekgN5T8P498plAVz7Iora6x 6Dqb6xz+5/BPyGKKBM8Rs59v0Pl8wpgdTdRfsmbH+7v+KDEkP7EBSlVQNua4GxPfST0/ 161Ce9LO77kMreczmaWyiwVBJ6yv32gdE3MiZ0ASvLwnxC6vPTywy7aHA9YSdeBnCs+4 9C1IAF0gZ/YWqhKSqkhg94epeaQDQ3fCwS+OK9TkMhD0XzcoQ5kq5V8jqF4uYJr9V2kU XdjsJGhIkRdy1f72LIpPnElaiAesIzfP99dmv3FOvvEApZJki2tCWtu8tsblfM1+EGOd Jkmg== X-Gm-Message-State: AFqh2krlxoODWryRse/othDUFo5wIZjtBsMZ4Ji5lHCrwO773W1icRte rF335Bnjj9l4iZljbi/0bg/XuHEjuDM= X-Google-Smtp-Source: AMrXdXvL6PLxQYvHu9KjVJgpWsrUD8krXmlA+GHMyKGSro+Ns7Q42d7PR3BPRJ0jdRcoqvlJXd8TQ25uQqo= X-Received: from surenb-desktop.mtv.corp.google.com ([2620:15c:211:200:9393:6f7a:d410:55ca]) (user=surenb job=sendgmr) by 2002:a81:72c6:0:b0:4bb:c96d:f685 with SMTP id n189-20020a8172c6000000b004bbc96df685mr2581240ywc.208.1673297620487; Mon, 09 Jan 2023 12:53:40 -0800 (PST) Date: Mon, 9 Jan 2023 12:52:55 -0800 Mime-Version: 1.0 X-Mailer: git-send-email 2.39.0.314.g84b9a713c41-goog Message-ID: <20230109205336.3665937-1-surenb@google.com> Subject: [PATCH 00/41] Per-VMA locks From: Suren Baghdasaryan To: akpm@linux-foundation.org Cc: michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, mgorman@techsingularity.net, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, peterz@infradead.org, ldufour@linux.ibm.com, laurent.dufour@fr.ibm.com, paulmck@kernel.org, luto@kernel.org, songliubraving@fb.com, peterx@redhat.com, david@redhat.com, dhowells@redhat.com, hughd@google.com, bigeasy@linutronix.de, kent.overstreet@linux.dev, punit.agrawal@bytedance.com, lstoakes@gmail.com, peterjung1337@gmail.com, rientjes@google.com, axelrasmussen@google.com, joelaf@google.com, minchan@google.com, jannh@google.com, shakeelb@google.com, tatashin@google.com, edumazet@google.com, gthelen@google.com, gurua@google.com, arjunroy@google.com, soheil@google.com, hughlynch@google.com, leewalsh@google.com, posk@google.com, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, x86@kernel.org, linux-kernel@vger.kernel.org, kernel-team@android.com, surenb@google.com X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230109_125342_733696_98B33A33 X-CRM114-Status: GOOD ( 25.40 ) 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-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 VGhpcyBpcyB0aGUgdjEgb2YgcGVyLVZNQSBsb2NrcyBwYXRjaHNldCBvcmlnaW5hbGx5IHBvc3Rl ZCBhcyBhbiBSRkMgYXQKWzFdIGFuZCBkZXNjcmliZWQgaW4gTFdOIGFydGljbGUgYXQgWzJdLiBQ ZXItdm1hIGxvY2tzIGlkZWEgdGhhdCB3YXMKZGlzY3Vzc2VkIGR1cmluZyBTUEYgWzNdIGRpc2N1 c3Npb24gYXQgTFNGL01NIHRoaXMgeWVhciBbNF0sIHdoaWNoCmNvbmNsdWRlZCB3aXRoIHN1Z2dl c3Rpb24gdGhhdCDigJxhIHJlYWRlci93cml0ZXIgc2VtYXBob3JlIGNvdWxkIGJlIHB1dAppbnRv IHRoZSBWTUEgaXRzZWxmOyB0aGF0IHdvdWxkIGhhdmUgdGhlIGVmZmVjdCBvZiB1c2luZyB0aGUg Vk1BIGFzIGEKc29ydCBvZiByYW5nZSBsb2NrLiBUaGVyZSB3b3VsZCBzdGlsbCBiZSBjb250ZW50 aW9uIGF0IHRoZSBWTUEgbGV2ZWwsIGJ1dAppdCB3b3VsZCBiZSBhbiBpbXByb3ZlbWVudC7igJ0g VGhpcyBwYXRjaHNldCBpbXBsZW1lbnRzIHRoaXMgc3VnZ2VzdGVkCmFwcHJvYWNoLgoKV2hlbiBo YW5kbGluZyBwYWdlIGZhdWx0cyB3ZSBsb29rdXAgdGhlIFZNQSB0aGF0IGNvbnRhaW5zIHRoZSBm YXVsdGluZwpwYWdlIHVuZGVyIFJDVSBwcm90ZWN0aW9uIGFuZCB0cnkgdG8gYWNxdWlyZSBpdHMg bG9jay4gSWYgdGhhdCBmYWlscyB3ZQpmYWxsIGJhY2sgdG8gdXNpbmcgbW1hcF9sb2NrLCBzaW1p bGFyIHRvIGhvdyBTUEYgaGFuZGxlZCB0aGlzIHNpdHVhdGlvbi4KCk9uZSBub3RhYmxlIHdheSB0 aGUgaW1wbGVtZW50YXRpb24gZGV2aWF0ZXMgZnJvbSB0aGUgcHJvcG9zYWwgaXMgdGhlIHdheQpW TUFzIGFyZSByZWFkLWxvY2tlZC4gRHVyaW5nIHNvbWUgb2YgbW0gdXBkYXRlcywgbXVsdGlwbGUg Vk1BcyBuZWVkIHRvIGJlCmxvY2tlZCB1bnRpbCB0aGUgZW5kIG9mIHRoZSB1cGRhdGUgKGUuZy4g dm1hX21lcmdlLCBzcGxpdF92bWEsIGV0YykuClRyYWNraW5nIGFsbCB0aGUgbG9ja2VkIFZNQXMs IGF2b2lkaW5nIHJlY3Vyc2l2ZSBsb2NrcywgZmlndXJpbmcgb3V0IHdoZW4KaXQncyBzYWZlIHRv IHVubG9jayBwcmV2aW91c2x5IGxvY2tlZCBWTUFzIHdvdWxkIG1ha2UgdGhlIGNvZGUgbW9yZQpj b21wbGV4LiBTbywgaW5zdGVhZCBvZiB0aGUgdXN1YWwgbG9jay91bmxvY2sgcGF0dGVybiwgdGhl IHByb3Bvc2VkCnNvbHV0aW9uIG1hcmtzIGEgVk1BIGFzIGxvY2tlZCBhbmQgcHJvdmlkZXMgYW4g ZWZmaWNpZW50IHdheSB0bzoKMS4gSWRlbnRpZnkgbG9ja2VkIFZNQXMuCjIuIFVubG9jayBhbGwg bG9ja2VkIFZNQXMgaW4gYnVsay4KV2UgYWxzbyBwb3N0cG9uZSB1bmxvY2tpbmcgdGhlIGxvY2tl ZCBWTUFzIHVudGlsIHRoZSBlbmQgb2YgdGhlIHVwZGF0ZSwKd2hlbiB3ZSBkbyBtbWFwX3dyaXRl X3VubG9jay4gUG90ZW50aWFsbHkgdGhpcyBrZWVwcyBhIFZNQSBsb2NrZWQgZm9yCmxvbmdlciB0 aGFuIGlzIGFic29sdXRlbHkgbmVjZXNzYXJ5IGJ1dCBpdCByZXN1bHRzIGluIGEgYmlnIHJlZHVj dGlvbiBvZgpjb2RlIGNvbXBsZXhpdHkuClJlYWQtbG9ja2luZyBhIFZNQSBpcyBkb25lIHVzaW5n IHR3byBzZXF1ZW5jZSBudW1iZXJzIC0gb25lIGluIHRoZQp2bV9hcmVhX3N0cnVjdCBhbmQgb25l IGluIHRoZSBtbV9zdHJ1Y3QuIFZNQSBpcyBjb25zaWRlcmVkIHJlYWQtbG9ja2VkCndoZW4gdGhl c2Ugc2VxdWVuY2UgbnVtYmVycyBhcmUgZXF1YWwuIFRvIHJlYWQtbG9jayBhIFZNQSB3ZSBzZXQg dGhlCnNlcXVlbmNlIG51bWJlciBpbiB2bV9hcmVhX3N0cnVjdCB0byBiZSBlcXVhbCB0byB0aGUg c2VxdWVuY2UgbnVtYmVyIGluCm1tX3N0cnVjdC4gVG8gdW5sb2NrIGFsbCBWTUFzIHdlIGluY3Jl bWVudCBtbV9zdHJ1Y3QncyBzZXEgbnVtYmVyLiBUaGlzCmFsbG93cyBmb3IgYW4gZWZmaWNpZW50 IHdheSB0byB0cmFjayBsb2NrZWQgVk1BcyBhbmQgdG8gZHJvcCB0aGUgbG9ja3Mgb24KYWxsIFZN QXMgYXQgdGhlIGVuZCBvZiB0aGUgdXBkYXRlLgoKVGhlIHBhdGNoc2V0IGltcGxlbWVudHMgcGVy LVZNQSBsb2NraW5nIG9ubHkgZm9yIGFub255bW91cyBwYWdlcyB3aGljaAphcmUgbm90IGluIHN3 YXAgYW5kIGF2b2lkcyB1c2VyZmF1bHRmcyBhcyB0aGVpciBpbXBsZW1lbnRhdGlvbiBpcyBtb3Jl CmNvbXBsZXguIEFkZGl0aW9uYWwgc3VwcG9ydCBmb3IgZmlsZS1iYWNrIHBhZ2UgZmF1bHRzLCBz d2FwcGVkIGFuZCB1c2VyCnBhZ2VzIGNhbiBiZSBhZGRlZCBpbmNyZW1lbnRhbGx5LgoKUGVyZm9y bWFuY2UgYmVuY2htYXJrcyBzaG93IHNpbWlsYXIgYWx0aG91Z2ggc2xpZ2h0bHkgc21hbGxlciBi ZW5lZml0cyBhcwp3aXRoIFNQRiBwYXRjaHNldCAofjc1JSBvZiBTUEYgYmVuZWZpdHMpLiBTdGls bCwgd2l0aCBsb3dlciBjb21wbGV4aXR5CnRoaXMgYXBwcm9hY2ggbWlnaHQgYmUgbW9yZSBkZXNp cmFibGUuCgpTaW5jZSBSRkMgd2FzIHBvc3RlZCBpbiBTZXB0ZW1iZXIgMjAyMiwgdHdvIHNlcGFy YXRlIEdvb2dsZSB0ZWFtcyBvdXRzaWRlCm9mIEFuZHJvaWQgZXZhbHVhdGVkIHRoZSBwYXRjaHNl dCBhbmQgY29uZmlybWVkIHBvc2l0aXZlIHJlc3VsdHMuIEhlcmUgYXJlCnRoZSBrbm93biB1c2Vj YXNlcyB3aGVuIHBlci1WTUEgbG9ja3Mgc2hvdyBiZW5lZml0czoKCkFuZHJvaWQ6CkFwcHMgd2l0 aCBoaWdoIG51bWJlciBvZiB0aHJlYWRzICh+MTAwKSBsYXVuY2ggdGltZXMgaW1wcm92ZSBieSB1 cCB0byAyMCUuCkVhY2ggdGhyZWFkIG1tYXBzIHNldmVyYWwgYXJlYXMgdXBvbiBzdGFydHVwIChT dGFjayBhbmQgVGhyZWFkLWxvY2FsCnN0b3JhZ2UgKFRMUyksIHRocmVhZCBzaWduYWwgc3RhY2ss IGluZGlyZWN0IHJlZiB0YWJsZSksIHdoaWNoIHJlcXVpcmVzCnRha2luZyBtbWFwX2xvY2sgaW4g d3JpdGUgbW9kZS4gUGFnZSBmYXVsdHMgdGFrZSBtbWFwX2xvY2sgaW4gcmVhZCBtb2RlLgpEdXJp bmcgYXBwIGxhdW5jaCwgYm90aCB0aHJlYWQgY3JlYXRpb24gYW5kIHBhZ2UgZmF1bHRzIGVzdGFi bGlzaGluZyB0aGUKYWN0aXZlIHdvcmtpbmdldCBhcmUgaGFwcGVuaW5nIGluIHBhcmFsbGVsIGFu ZCB0aGF0IGNhdXNlcyBsb2NrIGNvbnRlbnRpb24KYmV0d2VlbiBtbSB3cml0ZXJzIGFuZCByZWFk ZXJzIGV2ZW4gaWYgdXBkYXRlcyBhbmQgcGFnZSBmYXVsdHMgYXJlCmhhcHBlbmluZyBpbiBkaWZm ZXJlbnQgVk1Bcy4gUGVyLXZtYSBsb2NrcyBwcmV2ZW50IHRoaXMgY29udGVudGlvbiBieQpwcm92 aWRpbmcgbW9yZSBncmFudWxhciBsb2NrLgoKR29vZ2xlIEZpYmVyczoKV2UgaGF2ZSBzZXZlcmFs IGR5bmFtaWNhbGx5IHNpemVkIHRocmVhZCBwb29scyB0aGF0IHNwYXduIG5ldyB0aHJlYWRzCnVu ZGVyIGluY3JlYXNlZCBsb2FkIGFuZCByZWR1Y2UgdGhlaXIgbnVtYmVyIHdoZW4gaWRsaW5nLiBG b3IgZXhhbXBsZSwKR29vZ2xlJ3MgaW4tcHJvY2VzcyBzY2hlZHVsaW5nL3RocmVhZGluZyBmcmFt ZXdvcmssIFVNQ0cvRmliZXJzLCBpcyBiYWNrZWQKYnkgc3VjaCBhIHRocmVhZCBwb29sLiBXaGVu IGlkbGluZywgb25seSBhIHNtYWxsIG51bWJlciBvZiBpZGxlIHdvcmtlcgp0aHJlYWRzIGFyZSBh dmFpbGFibGU7IHdoZW4gYSBzcGlrZSBvZiBpbmNvbWluZyByZXF1ZXN0cyBhcnJpdmUsIGVhY2gK cmVxdWVzdCBpcyBoYW5kbGVkIGluIGl0cyBvd24gImZpYmVyIiwgd2hpY2ggaXMgYSB3b3JrIGl0 ZW0gcG9zdGVkIG9udG8gYQpVTUNHIHdvcmtlciB0aHJlYWQ7IHF1aXRlIG9mdGVuIHRoZXNlIHNw aWtlcyBsZWFkIHRvIGEgbnVtYmVyIG9mIG5ldwp0aHJlYWRzIHNwYXduaW5nLiBFYWNoIG5ldyB0 aHJlYWQgbmVlZHMgdG8gYWxsb2NhdGUgYW5kIHJlZ2lzdGVyIGFuIFJTRVEKc2VjdGlvbiBvbiBp dHMgVExTLCB0aGVuIHJlZ2lzdGVyIGl0c2VsZiB3aXRoIHRoZSBrZXJuZWwgYXMgYSBVTUNHIHdv cmtlcgp0aHJlYWQsIGFuZCBvbmx5IGFmdGVyIHRoYXQgaXQgY2FuIGJlIGNvbnNpZGVyZWQgYnkg dGhlIGluLXByb2Nlc3MKVU1DRy9GaWJlciBzY2hlZHVsZXIgYXMgYXZhaWxhYmxlIHRvIGRvIHVz ZWZ1bCB3b3JrLiBJbiBzaG9ydCwgZHVyaW5nIGFuCmluY29taW5nIHdvcmtsb2FkIHNwaWtlIG5l dyB0aHJlYWRzIGhhdmUgdG8gYmUgc3Bhd25lZCwgYW5kIHRoZXkgcGVyZm9ybQpzZXZlcmFsIHN5 c2NhbGxzIChSU0VRIHJlZ2lzdHJhdGlvbiwgVU1DRyB3b3JrZXIgcmVnaXN0cmF0aW9uLCBtZW1v cnkKYWxsb2NhdGlvbnMpIGJlZm9yZSB0aGV5IGNhbiBhY3R1YWxseSBzdGFydCBkb2luZyB1c2Vm dWwgd29yay4gUmVtb3ZpbmcKYW55IGJvdHRsZW5lY2tzIG9uIHRoaXMgdGhyZWFkIHN0YXJ0dXAg cGF0aCB3aWxsIGdyZWF0bHkgaW1wcm92ZSBvdXIKc2VydmljZXMnIGxhdGVuY2llcyB3aGVuIGZh Y2VkIHdpdGggcmVxdWVzdC93b3JrbG9hZCBzcGlrZXMuCkF0IGhpZ2ggc2NhbGUsIG1tYXBfbG9j ayBjb250ZW50aW9uIGR1cmluZyB0aHJlYWQgY3JlYXRpb24gYW5kIHN0YWNrIHBhZ2UKZmF1bHRz IGxlYWRzIHRvIHVzZXItdmlzaWJsZSBtdWx0aS1zZWNvbmQgc2VydmluZyBsYXRlbmNpZXMgaW4g YSBzaW1pbGFyCnBhdHRlcm4gdG8gQW5kcm9pZCBhcHAgc3RhcnR1cC4gUGVyLVZNQSBsb2NraW5n IHBhdGNoc2V0IGhhcyBiZWVuIHJ1bgpzdWNjZXNzZnVsbHkgaW4gbGltaXRlZCBleHBlcmltZW50 cyB3aXRoIHVzZXItZmFjaW5nIHByb2R1Y3Rpb24gd29ya2xvYWRzLgpJbiB0aGVzZSBleHBlcmlt ZW50cywgd2Ugb2JzZXJ2ZWQgdGhhdCB0aGUgcGVhayB0aHJlYWQgY3JlYXRpb24gcmF0ZSB3YXMK aGlnaCBlbm91Z2ggdGhhdCB0aHJlYWQgY3JlYXRpb24gaXMgbm8gbG9uZ2VyIGEgYm90dGxlbmVj ay4KClRDUCB6ZXJvY29weSByZWNlaXZlOgpGcm9tIHRoZSBwb2ludCBvZiB2aWV3IG9mIFRDUCB6 ZXJvY29weSByZWNlaXZlLCB0aGUgcGVyLXZtYSBsb2NrIHBhdGNoIGlzCm1hc3NpdmVseSBiZW5l ZmljaWFsLgpJbiB0b2RheSdzIGltcGxlbWVudGF0aW9uLCBhIHByb2Nlc3Mgd2l0aCBOIHRocmVh ZHMgd2hlcmUgTiAtIDEgYXJlCnBlcmZvcm1pbmcgemVyb2NvcHkgcmVjZWl2ZSBhbmQgMSB0aHJl YWQgaXMgcGVyZm9ybWluZyBtYWR2aXNlKCkgd2l0aCB0aGUKd3JpdGUgbG9jayB0YWtlbiAoZS5n LiBuZWVkcyB0byBjaGFuZ2Ugdm1fZmxhZ3MpIHdpbGwgcmVzdWx0IGluIGFsbCBOIC0xCnJlY2Vp dmUgdGhyZWFkcyBibG9ja2luZyB1bnRpbCB0aGUgbWFkdmlzZSBpcyBkb25lLiBDb252ZXJzZWx5 LCBvbiBhIGJ1c3kKcHJvY2VzcyByZWNlaXZpbmcgYSBsb3Qgb2YgZGF0YSwgYW4gbWFkdmlzZSBv cGVyYXRpb24gdGhhdCBkb2VzIG5lZWQgdG8KdGFrZSB0aGUgbW1hcCBsb2NrIGluIHdyaXRlIG1v ZGUgd2lsbCBuZWVkIHRvIHdhaXQgZm9yIGFsbCBvZiB0aGUgcmVjZWl2ZXMKdG8gYmUgZG9uZSAt IGEgbG9zZTpsb3NlIHByb3Bvc2l0aW9uLiBQZXItVk1BIGxvY2tpbmcgX3JlbW92ZXNfIGJ5CmRl ZmluaXRpb24gdGhpcyBzb3VyY2Ugb2YgY29udGVudGlvbiBlbnRpcmVseS4KVGhlcmUgYXJlIG90 aGVyIGJlbmVmaXRzIGZvciByZWNlaXZlIGFzIHdlbGwsIGNoaWVmbHkgYSByZWR1Y3Rpb24gaW4K Y2FjaGVsaW5lIGJvdW5jaW5nIGFjcm9zcyByZWNlaXZpbmcgdGhyZWFkcyBmb3IgbG9ja2luZy91 bmxvY2tpbmcgdGhlCnNpbmdsZSBtbWFwIGxvY2suIE9uIGFuIFJQQyBzdHlsZSBzeW50aGV0aWMg d29ya2xvYWQgd2l0aCA0S0IgUlBDczoKMWEpIFRoZSBmaW5kK2xvY2srdW5sb2NrIFZNQSBwYXRo IGluIHRoZSBiYXNlIGNhc2UsIHdpdGhvdXQgdGhlIHBlci12bWEKbG9jayBwYXRjaHNldCwgaXMg YWJvdXQgMC43JSBvZiBjeWNsZXMgYXMgbWVhc3VyZWQgYnkgcGVyZi4KMWIpIG1tYXBfcmVhZF9s b2NrICsgbW1hcF9yZWFkX3VubG9jayBpbiB0aGUgYmFzZSBjYXNlIGlzIGFib3V0IDAuNSUKY3lj bGVzIG92ZXJhbGwgLSBtb3N0IG9mIHRoaXMgaXMgd2l0aGluIHRoZSBUQ1AgcmVhZCBob3RwYXRo IChhIHNtYWxsCmZyYWN0aW9uIGlzICdvdGhlcicgdXNhZ2UgaW4gdGhlIHN5c3RlbSkuCjJhKSBU aGUgZmluZCtsb2NrK3VubG9jayBWTUEgcGF0aCwgd2l0aCB0aGUgcGVyLXZtYSBwYXRjaHNldCBh bmQgYSB0cml2aWFsCnBhdGNoIHdyaXR0ZW4gdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgaXQgaW4gVENQ LCBpcyBhYm91dCAwLjQlIG9mIGN5Y2xlcwooZG93biBmcm9tIDAuNyUgYWJvdmUpCjJiKSBtbWFw X3JlYWRfbG9jayArIG1tYXBfcmVhZF91bmxvY2sgaW4gdGhlIHBlci12bWEgcGF0Y2hzZXQgaXMg PCAwLjElCmN5Y2xlcyBhbmQgaXMgb3V0IG9mIHRoZSBUQ1AgcmVhZCBob3RwYXRoIGVudGlyZWx5 IChkb3duIGZyb20gMC41JSBiZWZvcmUsCnRoZSByZW1haW5pbmcgdXNhZ2UgaXMgdGhlICdvdGhl cicgdXNhZ2UgaW4gdGhlIHN5c3RlbSkuClNvLCBpbiBhZGRpdGlvbiB0byBlbnRpcmVseSByZW1v dmluZyBhbiBvbmVyb3VzIHNvdXJjZSBvZiBjb250ZW50aW9uLCBpdAphbHNvIHJlZHVjZXMgdGhl IENQVSBjeWNsZXMgb2YgVENQIHJlY2VpdmUgemVyb2NvcHkgYnkgYWJvdXQgMC41JSsKKGNvbXBh cmVkIHRvIG92ZXJhbGwgY3ljbGVzIGluIHBlcmYpIGZvciB0aGUgJ3NtYWxsJyBSUEMgc2NlbmFy aW8uCgpUaGUgcGF0Y2hzZXQgc3RydWN0dXJlIGlzOgowMDAxLTAwMDc6IEVuYWJsZSBtYXBsZS10 cmVlIFJDVSBtb2RlCjAwMDgtMDAzODogTWFpbiBwZXItdm1hIGxvY2tzIHBhdGNoc2V0CjAwMzkt MDA0MDogUGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9ucwowMDQxOiBNZW1vcnkgb3ZlcmhlYWQgb3B0 aW1pemF0aW9uCgpCcmFuY2ggZm9yIHRlc3RpbmcgaXMgcG9zdGVkIGF0OgpodHRwczovL2dpdGh1 Yi5jb20vc3VyZW5iYWdoZGFzYXJ5YW4vbGludXgvdHJlZS9wZXJfdm1hX2xvY2sKClRoZSBwYXRj aHNldCBhcHBsaWVzIGNsZWFubHkgb3ZlciBMaW51cycgdHJlZSBhdDoKY29tbWl0IGI3YmZhYTc2 MWQ3NiAoIkxpbnV4IDYuMi1yYzMiKQoKWzFdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8y MDIyMDkwMTE3MzUxNi43MDIxMjItMS1zdXJlbmJAZ29vZ2xlLmNvbS8KWzJdIGh0dHBzOi8vbHdu Lm5ldC9BcnRpY2xlcy85MDY4NTIvClszXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAy MjAxMjgxMzEwMDYuNjc3MTItMS1taWNoZWxAbGVzcGluYXNzZS5vcmcvCls0XSBodHRwczovL2x3 bi5uZXQvQXJ0aWNsZXMvODkzOTA2LwoKTGF1cmVudCBEdWZvdXIgKDEpOgogIHBvd2VyYy9tbTog dHJ5IFZNQSBsb2NrLWJhc2VkIHBhZ2UgZmF1bHQgaGFuZGxpbmcgZmlyc3QKCkxpYW0gSG93bGV0 dCAoNCk6CiAgbWFwbGVfdHJlZTogQmUgbW9yZSBjYXV0aW91cyBhYm91dCBkZWFkIG5vZGVzCiAg bWFwbGVfdHJlZTogRGV0ZWN0IGRlYWQgbm9kZXMgaW4gbWFzX3N0YXJ0KCkKICBtYXBsZV90cmVl OiBGaXggZnJlZWluZyBvZiBub2RlcyBpbiByY3UgbW9kZQogIG1hcGxlX3RyZWU6IHJlbW92ZSBl eHRyYSBzbXBfd21iKCkgZnJvbSBtYXNfZGVhZF9sZWF2ZXMoKQoKTGlhbSBSLiBIb3dsZXR0ICgz KToKICBtYXBsZV90cmVlOiBGaXggd3JpdGUgbWVtb3J5IGJhcnJpZXIgb2Ygbm9kZXMgb25jZSBk ZWFkIGZvciBSQ1UgbW9kZQogIG1hcGxlX3RyZWU6IEFkZCBzbXBfcm1iKCkgdG8gZGVhZCBub2Rl IGRldGVjdGlvbgogIG1tOiBFbmFibGUgbWFwbGUgdHJlZSBSQ1UgbW9kZSBieSBkZWZhdWx0LgoK TWljaGVsIExlc3BpbmFzc2UgKDEpOgogIG1tOiByY3Ugc2FmZSBWTUEgZnJlZWluZwoKU3VyZW4g QmFnaGRhc2FyeWFuICgzMik6CiAgbW06IGludHJvZHVjZSBDT05GSUdfUEVSX1ZNQV9MT0NLCiAg bW06IG1vdmUgbW1hcF9sb2NrIGFzc2VydCBmdW5jdGlvbiBkZWZpbml0aW9ucwogIG1tOiBleHBv cnQgZHVtcF9tbSgpCiAgbW06IGFkZCBwZXItVk1BIGxvY2sgYW5kIGhlbHBlciBmdW5jdGlvbnMg dG8gY29udHJvbCBpdAogIG1tOiBpbnRyb2R1Y2Ugdm1hLT52bV9mbGFncyBtb2RpZmllciBmdW5j dGlvbnMKICBtbTogcmVwbGFjZSBWTV9MT0NLRURfQ0xFQVJfTUFTSyB3aXRoIFZNX0xPQ0tFRF9N QVNLCiAgbW06IHJlcGxhY2Ugdm1hLT52bV9mbGFncyBkaXJlY3QgbW9kaWZpY2F0aW9ucyB3aXRo IG1vZGlmaWVyIGNhbGxzCiAgbW06IHJlcGxhY2Ugdm1hLT52bV9mbGFncyBpbmRpcmVjdCBtb2Rp ZmljYXRpb24gaW4ga3NtX21hZHZpc2UKICBtbS9tbWFwOiBtb3ZlIFZNQSBsb2NraW5nIGJlZm9y ZSBhbm9uX3ZtYV9sb2NrX3dyaXRlIGNhbGwKICBtbS9raHVnZXBhZ2VkOiB3cml0ZS1sb2NrIFZN QSB3aGlsZSBjb2xsYXBzaW5nIGEgaHVnZSBwYWdlCiAgbW0vbW1hcDogd3JpdGUtbG9jayBWTUFz IGJlZm9yZSBtZXJnaW5nLCBzcGxpdHRpbmcgb3IgZXhwYW5kaW5nIHRoZW0KICBtbS9tbWFwOiB3 cml0ZS1sb2NrIFZNQXMgaW4gdm1hX2FkanVzdAogIG1tL21tYXA6IHdyaXRlLWxvY2sgVk1BcyBh ZmZlY3RlZCBieSBWTUEgZXhwYW5zaW9uCiAgbW0vbXJlbWFwOiB3cml0ZS1sb2NrIFZNQSB3aGls ZSByZW1hcHBpbmcgaXQgdG8gYSBuZXcgYWRkcmVzcyByYW5nZQogIG1tOiB3cml0ZS1sb2NrIFZN QXMgYmVmb3JlIHJlbW92aW5nIHRoZW0gZnJvbSBWTUEgdHJlZQogIG1tOiBjb25kaXRpb25hbGx5 IHdyaXRlLWxvY2sgVk1BIGluIGZyZWVfcGd0YWJsZXMKICBtbS9tbWFwOiB3cml0ZS1sb2NrIGFk amFjZW50IFZNQXMgaWYgdGhleSBjYW4gZ3JvdyBpbnRvIHVubWFwcGVkIGFyZWEKICBrZXJuZWwv Zm9yazogYXNzZXJ0IG5vIFZNQSByZWFkZXJzIGR1cmluZyBpdHMgZGVzdHJ1Y3Rpb24KICBtbS9t bWFwOiBwcmV2ZW50IHBhZ2VmYXVsdCBoYW5kbGVyIGZyb20gcmFjaW5nIHdpdGggbW11X25vdGlm aWVyCiAgICByZWdpc3RyYXRpb24KICBtbTogaW50cm9kdWNlIGxvY2tfdm1hX3VuZGVyX3JjdSB0 byBiZSB1c2VkIGZyb20gYXJjaC1zcGVjaWZpYyBjb2RlCiAgbW06IGZhbGwgYmFjayB0byBtbWFw X2xvY2sgaWYgdm1hLT5hbm9uX3ZtYSBpcyBub3QgeWV0IHNldAogIG1tOiBhZGQgRkFVTFRfRkxB R19WTUFfTE9DSyBmbGFnCiAgbW06IHByZXZlbnQgZG9fc3dhcF9wYWdlIGZyb20gaGFuZGxpbmcg cGFnZSBmYXVsdHMgdW5kZXIgVk1BIGxvY2sKICBtbTogcHJldmVudCB1c2VyZmF1bHRzIHRvIGJl IGhhbmRsZWQgdW5kZXIgcGVyLXZtYSBsb2NrCiAgbW06IGludHJvZHVjZSBwZXItVk1BIGxvY2sg c3RhdGlzdGljcwogIHg4Ni9tbTogdHJ5IFZNQSBsb2NrLWJhc2VkIHBhZ2UgZmF1bHQgaGFuZGxp bmcgZmlyc3QKICBhcm02NC9tbTogdHJ5IFZNQSBsb2NrLWJhc2VkIHBhZ2UgZmF1bHQgaGFuZGxp bmcgZmlyc3QKICBtbTogaW50cm9kdWNlIG1vZF92bV9mbGFnc19ub2xvY2sKICBtbTogYXZvaWQg YXNzZXJ0aW9uIGluIHVudHJhY2tfcGZuCiAga2VybmVsL2Zvcms6IHRocm90dGxlIGNhbGxfcmN1 KCkgY2FsbHMgaW4gdm1fYXJlYV9mcmVlCiAgbW06IHNlcGFyYXRlIHZtYS0+bG9jayBmcm9tIHZt X2FyZWFfc3RydWN0CiAgbW06IHJlcGxhY2Ugcndfc2VtYXBob3JlIHdpdGggYXRvbWljX3QgaW4g dm1hX2xvY2sKCiBhcmNoL2FybS9rZXJuZWwvcHJvY2Vzcy5jICAgICAgICAgICAgICAgICAgICAg fCAgIDIgKy0KIGFyY2gvYXJtNjQvS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAgMSArCiBhcmNoL2FybTY0L21tL2ZhdWx0LmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAg MzYgKysrKwogYXJjaC9pYTY0L21tL2luaXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICA4ICstCiBhcmNoL2xvb25nYXJjaC9pbmNsdWRlL2FzbS90bGIuaCAgICAgICAgICAgICAgfCAg IDIgKy0KIGFyY2gvcG93ZXJwYy9rdm0vYm9vazNzX2h2X3V2bWVtLmMgICAgICAgICAgICB8ICAg NSArLQogYXJjaC9wb3dlcnBjL2t2bS9ib29rM3NfeGl2ZV9uYXRpdmUuYyAgICAgICAgIHwgICAy ICstCiBhcmNoL3Bvd2VycGMvbW0vYm9vazNzNjQvc3VicGFnZV9wcm90LmMgICAgICAgfCAgIDIg Ky0KIGFyY2gvcG93ZXJwYy9tbS9mYXVsdC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0MSAr KysrKwogYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9ib29rM3MvdmFzLWFwaS5jICAgICAgIHwgICAy ICstCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL2NlbGwvc3B1ZnMvZmlsZS5jICAgICAgfCAgMTQg Ky0KIGFyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9LY29uZmlnICAgICAgICB8ICAgMSAr CiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzZXJpZXMvS2NvbmZpZyAgICAgICAgfCAgIDEgKwog YXJjaC9zMzkwL21tL2dtYXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICstCiBh cmNoL3g4Ni9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogYXJj aC94ODYvZW50cnkvdnN5c2NhbGwvdnN5c2NhbGxfNjQuYyAgICAgICAgIHwgICAyICstCiBhcmNo L3g4Ni9rZXJuZWwvY3B1L3NneC9kcml2ZXIuYyAgICAgICAgICAgICAgfCAgIDIgKy0KIGFyY2gv eDg2L2tlcm5lbC9jcHUvc2d4L3ZpcnQuYyAgICAgICAgICAgICAgICB8ICAgMiArLQogYXJjaC94 ODYvbW0vZmF1bHQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDM2ICsrKysKIGFyY2gv eDg2L21tL3BhdC9tZW10eXBlLmMgICAgICAgICAgICAgICAgICAgICB8ICAxNCArLQogYXJjaC94 ODYvdW0vbWVtXzMyLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2ZXJz L2FjcGkvcGZyX3RlbGVtZXRyeS5jICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMv YW5kcm9pZC9iaW5kZXIuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgMyArLQogZHJpdmVycy9j aGFyL21zcGVjLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2Ny eXB0by9oaXNpbGljb24vcW0uYyAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvZGF4 L2RldmljZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogZHJpdmVycy9kbWEv aWR4ZC9jZGV2LmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfZ2VtLmMgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1ka2ZkL2tmZF9jaGFyZGV2LmMgICAgICB8ICAgNCArLQogZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRrZmQva2ZkX2Rvb3JiZWxsLmMgICAgIHwgICA0ICstCiBkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGtmZC9rZmRfZXZlbnRzLmMgICAgICAgfCAgIDQgKy0KIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1ka2ZkL2tmZF9wcm9jZXNzLmMgICAgICB8ICAgNCArLQogZHJpdmVycy9ncHUvZHJtL2Ry bV9nZW0uYyAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vZHJt X2dlbV9kbWFfaGVscGVyLmMgICAgICAgICAgfCAgIDMgKy0KIGRyaXZlcnMvZ3B1L2RybS9kcm1f Z2VtX3NobWVtX2hlbHBlci5jICAgICAgICB8ICAgMiArLQogZHJpdmVycy9ncHUvZHJtL2RybV92 bS5jICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICstCiBkcml2ZXJzL2dwdS9kcm0vZXRuYXZp di9ldG5hdml2X2dlbS5jICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9leHlub3Mv ZXh5bm9zX2RybV9nZW0uYyAgICAgICB8ICAgNCArLQogZHJpdmVycy9ncHUvZHJtL2dtYTUwMC9m cmFtZWJ1ZmZlci5jICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTgxMC9pODEw X2RtYS5jICAgICAgICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9p OTE1X2dlbV9tbWFuLmMgICAgICB8ICAgNCArLQogZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210 a19kcm1fZ2VtLmMgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW0u YyAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBf Z2VtLmMgICAgICAgICAgICB8ICAgMyArLQogZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tj aGlwX2RybV9nZW0uYyAgIHwgICAzICstCiBkcml2ZXJzL2dwdS9kcm0vdGVncmEvZ2VtLmMgICAg ICAgICAgICAgICAgICAgfCAgIDUgKy0KIGRyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvX3ZtLmMg ICAgICAgICAgICAgICB8ICAgMyArLQogZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X3Zy YW0uYyAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF90dG1f Z2x1ZS5jICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS94ZW4veGVuX2RybV9mcm9udF9n ZW0uYyAgICAgICB8ICAgMyArLQogZHJpdmVycy9oc2kvY2xpZW50cy9jbXRfc3BlZWNoLmMgICAg ICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2h3dHJhY2luZy9pbnRlbF90aC9tc3UuYyAgICAg ICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvaHd0cmFjaW5nL3N0bS9jb3JlLmMgICAgICAgICAg ICAgICAgICB8ICAgMiArLQogZHJpdmVycy9pbmZpbmliYW5kL2h3L2hmaTEvZmlsZV9vcHMuYyAg ICAgICAgIHwgICA0ICstCiBkcml2ZXJzL2luZmluaWJhbmQvaHcvbWx4NS9tYWluLmMgICAgICAg ICAgICAgfCAgIDQgKy0KIGRyaXZlcnMvaW5maW5pYmFuZC9ody9xaWIvcWliX2ZpbGVfb3BzLmMg ICAgICB8ICAxMyArLQogZHJpdmVycy9pbmZpbmliYW5kL2h3L3VzbmljL3VzbmljX2liX3ZlcmJz LmMgIHwgICAyICstCiAuLi4vaW5maW5pYmFuZC9ody92bXdfcHZyZG1hL3B2cmRtYV92ZXJicy5j ICAgfCAgIDIgKy0KIC4uLi9jb21tb24vdmlkZW9idWYyL3ZpZGVvYnVmMi1kbWEtY29udGlnLmMg ICB8ICAgMiArLQogLi4uL2NvbW1vbi92aWRlb2J1ZjIvdmlkZW9idWYyLXZtYWxsb2MuYyAgICAg IHwgICAyICstCiBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92aWRlb2J1Zi1kbWEtY29udGlnLmMg fCAgIDIgKy0KIGRyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3ZpZGVvYnVmLWRtYS1zZy5jICAgICB8 ICAgNCArLQogZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdmlkZW9idWYtdm1hbGxvYy5jICAgIHwg ICAyICstCiBkcml2ZXJzL21pc2MvY3hsL2NvbnRleHQuYyAgICAgICAgICAgICAgICAgICAgfCAg IDIgKy0KIGRyaXZlcnMvbWlzYy9oYWJhbmFsYWJzL2NvbW1vbi9tZW1vcnkuYyAgICAgICB8ICAg MiArLQogZHJpdmVycy9taXNjL2hhYmFuYWxhYnMvZ2F1ZGkvZ2F1ZGkuYyAgICAgICAgIHwgICA0 ICstCiBkcml2ZXJzL21pc2MvaGFiYW5hbGFicy9nYXVkaTIvZ2F1ZGkyLmMgICAgICAgfCAgIDgg Ky0KIGRyaXZlcnMvbWlzYy9oYWJhbmFsYWJzL2dveWEvZ295YS5jICAgICAgICAgICB8ICAgNCAr LQogZHJpdmVycy9taXNjL29jeGwvY29udGV4dC5jICAgICAgICAgICAgICAgICAgIHwgICA0ICst CiBkcml2ZXJzL21pc2Mvb2N4bC9zeXNmcy5jICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0K IGRyaXZlcnMvbWlzYy9vcGVuLWRpY2UuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgNiArLQog ZHJpdmVycy9taXNjL3NnaS1ncnUvZ3J1ZmlsZS5jICAgICAgICAgICAgICAgIHwgICA0ICstCiBk cml2ZXJzL21pc2MvdWFjY2UvdWFjY2UuYyAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGRy aXZlcnMvc2J1cy9jaGFyL29yYWRheC5jICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogZHJp dmVycy9zY3NpL2N4bGZsYXNoL29jeGxfaHcuYyAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2 ZXJzL3Njc2kvc2cuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIC4uLi9z dGFnaW5nL21lZGlhL2F0b21pc3AvcGNpL2htbS9obW1fYm8uYyAgICB8ICAgMiArLQogZHJpdmVy cy9zdGFnaW5nL21lZGlhL2RlcHJlY2F0ZWQvbWV5ZS9tZXllLmMgIHwgICA0ICstCiAuLi4vbWVk aWEvZGVwcmVjYXRlZC9zdGt3ZWJjYW0vc3RrLXdlYmNhbS5jICAgfCAgIDIgKy0KIGRyaXZlcnMv dGFyZ2V0L3RhcmdldF9jb3JlX3VzZXIuYyAgICAgICAgICAgICB8ICAgMiArLQogZHJpdmVycy91 aW8vdWlvLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL3Vz Yi9jb3JlL2RldmlvLmMgICAgICAgICAgICAgICAgICAgICAgfCAgIDMgKy0KIGRyaXZlcnMvdXNi L21vbi9tb25fYmluLmMgICAgICAgICAgICAgICAgICAgICB8ICAgMyArLQogZHJpdmVycy92ZHBh L3ZkcGFfdXNlci9pb3ZhX2RvbWFpbi5jICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL3ZmaW8v cGNpL3ZmaW9fcGNpX2NvcmUuYyAgICAgICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMvdmhvc3Qv dmRwYS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogZHJpdmVycy92aWRlby9m YmRldi82ODMyOGZiLmMgICAgICAgICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL3ZpZGVvL2Zi ZGV2L2NvcmUvZmJfZGVmaW8uYyAgICAgICAgICAgfCAgIDQgKy0KIGRyaXZlcnMveGVuL2dudGFs bG9jLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogZHJpdmVycy94ZW4vZ250ZGV2 LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiBkcml2ZXJzL3hlbi9wcml2Y21k LWJ1Zi5jICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGRyaXZlcnMveGVuL3ByaXZjbWQu YyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogZnMvYWlvLmMgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBmcy9jcmFtZnMvaW5vZGUuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGZzL2Vyb2ZzL2RhdGEuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogZnMvZXhlYy5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiBmcy9leHQ0L2ZpbGUuYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIGZzL2Z1c2UvZGF4LmMgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogZnMvaHVnZXRsYmZzL2lub2RlLmMgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiBmcy9vcmFuZ2Vmcy9maWxlLmMgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDMgKy0KIGZzL3Byb2MvdGFza19tbXUuYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMiArLQogZnMvcHJvYy92bWNvcmUuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAzICstCiBmcy91c2VyZmF1bHRmZC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMTIgKy0KIGZzL3hmcy94ZnNfZmlsZS5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMiArLQogaW5jbHVkZS9saW51eC9tbS5oICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgMTU5ICsrKysrKysrKysrKysrKysrLQogaW5jbHVkZS9saW51eC9tbV90 eXBlcy5oICAgICAgICAgICAgICAgICAgICAgIHwgIDYyICsrKysrKy0KIGluY2x1ZGUvbGludXgv bW1hcF9sb2NrLmggICAgICAgICAgICAgICAgICAgICB8ICAzNyArKy0tCiBpbmNsdWRlL2xpbnV4 L3BndGFibGUuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgIDUgKy0KIGluY2x1ZGUvbGludXgv dm1fZXZlbnRfaXRlbS5oICAgICAgICAgICAgICAgICB8ICAgNiArCiBpbmNsdWRlL2xpbnV4L3Zt c3RhdC5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKwoga2VybmVsL2JwZi9yaW5nYnVm LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiBrZXJuZWwvYnBmL3N5c2NhbGwu YyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQgKy0KIGtlcm5lbC9ldmVudHMvY29yZS5j ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQoga2VybmVsL2ZvcmsuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTQ4ICsrKysrKysrKysrKystLS0KIGtlcm5lbC9r Y292LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQoga2VybmVsL3Jl bGF5LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBsaWIvbWFwbGVf dHJlZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNDYgKysrKysrKysrKysrKy0t LQogbW0vS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEzICsr CiBtbS9LY29uZmlnLmRlYnVnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKwog bW0vZGVidWcuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIG1t L2h1Z2V0bGIuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogbW0v aW5pdC1tbS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICsKIG1tL2lu dGVybmFsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogbW0va2h1 Z2VwYWdlZC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA3ICsKIG1tL2tzbS5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBtbS9tYWR2aXNl LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIG1tL21lbW9yeS5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA5NCArKysrKysrKystLQogbW0v bWVtcmVtYXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiBtbS9t bG9jay5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTIgKy0KIG1tL21t YXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA5OSArKysrKysrKy0t LQogbW0vbXByb3RlY3QuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICst CiBtbS9tcmVtYXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKy0K IG1tL25vbW11LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNiArLQog bW0vc2VjcmV0bWVtLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBt bS9zaG1lbS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIG1t L3ZtYWxsb2MuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQogbW0v dm1zdGF0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICsKIG5ldC9p cHY0L3RjcC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogc2VjdXJp dHkvc2VsaW51eC9zZWxpbnV4ZnMuYyAgICAgICAgICAgICAgICAgIHwgICA2ICstCiBzb3VuZC9j b3JlL29zcy9wY21fb3NzLmMgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KIHNvdW5kL2Nv cmUvcGNtX25hdGl2ZS5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgOSArLQogc291bmQvc29j L3B4YS9tbXAtc3NwYS5jICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzb3VuZC91c2Iv dXN4MnkvdXMxMjJsLmMgICAgICAgICAgICAgICAgICAgICAgfCAgIDQgKy0KIHNvdW5kL3VzYi91 c3gyeS91c1gyWWh3ZGVwLmMgICAgICAgICAgICAgICAgICB8ICAgMiArLQogc291bmQvdXNiL3Vz eDJ5L3VzeDJ5aHdkZXBwY20uYyAgICAgICAgICAgICAgIHwgICAyICstCiB0b29scy90ZXN0aW5n L3JhZGl4LXRyZWUvbWFwbGUuYyAgICAgICAgICAgICAgfCAgMTYgKysKIDE0NiBmaWxlcyBjaGFu Z2VkLCAxMDQ3IGluc2VydGlvbnMoKyksIDMxNiBkZWxldGlvbnMoLSkKCi0tIAoyLjM5LjAKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0t a2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2Vy bmVsCg==