From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id iAPSFUbWAmPgEQEAbAwnHQ (envelope-from ) for ; Mon, 22 Aug 2022 03:05:10 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 0MOwFUbWAmOuYAAAauVa8A (envelope-from ) for ; Mon, 22 Aug 2022 03:05:10 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id C97E22F714 for ; Mon, 22 Aug 2022 03:05:09 +0200 (CEST) Received: from localhost ([::1]:58794 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oPvsK-0008Mi-Kc for larch@yhetil.org; Sun, 21 Aug 2022 21:05:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49654) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oPvs4-0008LJ-3x for guix-devel@gnu.org; Sun, 21 Aug 2022 21:04:52 -0400 Received: from cascadia.aikidev.net ([173.255.214.101]:54200) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oPvs1-0005SA-Eg for guix-devel@gnu.org; Sun, 21 Aug 2022 21:04:51 -0400 Received: from localhost (unknown [IPv6:2600:3c01:e000:21:7:77:0:20]) (Authenticated sender: vagrant@aikidev.net) by cascadia.aikidev.net (Postfix) with ESMTPSA id 85F131AC16 for ; Sun, 21 Aug 2022 18:04:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=reproducible-builds.org; s=1.vagrant; t=1661130284; bh=S7r4fRK2B6p/kjc03Yh+zwuq9IxBdCxmg1GboS/e7rU=; h=From:To:Subject:In-Reply-To:References:Date:From; b=Lpzu0d+Cn8+XFK0eg6riDiHgdGYZmw2F89fBavs3O6KVN8FNEg6RqZakgbCkJVqWM qzBxfscuHVtSZSaE7Fe9+eMnzLedl8rPcbiYNJ2sipk57s/G3mTb2eqhAaZHxFjvDI +KY8bjKzBZoRpnOFUoRXGgacLBYtgdGU6bkP31Hs3bUstFh264/DLGcwp95QJsca1l 5dyYDiCnWg9OSgKiUI1sRokxmNpagJLjNcDZLNYt0k+URUZERSJLOWQ2X8WPBtPpUU vNo8Q8h8QvCaP5PKUYGCQhFJ9bDUJvc2HNdQvtIML2wvfZFtJKNEjg8+Hwh6Bl/0P4 DSDv6zXOqmOTQ== From: Vagrant Cascadian To: guix-devel@gnu.org Subject: Re: Reproducible Builds Status Summary for Guix In-Reply-To: <87o7yx43ph.fsf@contorta> References: <87o7yx43ph.fsf@contorta> Date: Sun, 21 Aug 2022 18:04:22 -0700 Message-ID: <87lerhqeax.fsf@contorta> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Received-SPF: pass client-ip=173.255.214.101; envelope-from=vagrant@reproducible-builds.org; helo=cascadia.aikidev.net X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1661130310; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=JzhHWl+Hlio96dmbWoyLO/vNdNCa8uPLrsaLpZ1VLDY=; b=h2XISl39yXO5TAoRVvrmOOG7KXXhTycaGmO57f6ZWTrtn+hYMZdv/CYdkcruN5wNAFXbZE SDNOFqi1L0zwdTACoEx/e9Zt/E1uebwJRZWRBMBB+ZgsjfymSl5qg6WYOiIwHXMTyKltz4 svjjd7C0eNJjBzDfoueg/nx2RDF95xbXSC26LlxpyIJREFeUYjZ+ZJPoebqcdO1XfptPIA 5MRr61Tnpqazjf5mzR6Xi2l7ysuwsyFP7ItAmnx+Fi0O0eaTrd7gwCIvNgofN/bTbOgvQb z/doC+UgHVORMbiQynKU2pKiuhsnkjAK7GX3A9HcmvINn0fOUdusrYjBG3RuzA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1661130310; a=rsa-sha256; cv=none; b=AVZYgoeiHItHo45ZjjLAshTJMxNYZ8May0DN42tBZhdry7fn25n/IeoNTIYjl795FU4OlW APZ2RMGg6tb6e0ruDUTmkJMvWd8fjejKGoWkFX/0MclefKLyXYUVW55O/mY2wJScm/a+Af 1HAvieRcXZM2DjcwwAF4D+Wd+6ZKu1MmQWglnkvFKtW7mCJLsnUGfg6C+4Qg94yDUtthrD Z82QCKYKbCT9B3if/sfg0lrcqVfJc/jcsAZ2E3iS2mOMxXPU2OCEJToy2g02MHEprdbjI8 oeC+I/EgYn+ZUj8Q1WrKsbOmYosdGRAt5vvd+KGIzO2C7ANqGukW7L4uz/VZFg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=reproducible-builds.org header.s=1.vagrant header.b=Lpzu0d+C; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -5.42 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=reproducible-builds.org header.s=1.vagrant header.b=Lpzu0d+C; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: C97E22F714 X-Spam-Score: -5.42 X-Migadu-Scanner: scn0.migadu.com X-TUID: toGR4bSkf8rh --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain On 2022-06-12, Vagrant Cascadian wrote: > I've been working on Reproducible Builds in guix a fair amount this > month. I did another round of this... I fixed a few packages recently, and noticed some other people fixing packages too, yay! As of this moment for x86_64, it looks like: * ~83% matching (a.k.a. reproducible) for 18920 packages * ~6% not matching (a.k.a. NOT reproducible) for 1337 packages * ~11% unknown (e.g. not built on both build farms) for 2440 packages https://data.guix.gnu.org/repository/1/branch/master/latest-processed-revision/package-reproducibility Ignoring the pesky unknown packages, it is more like ~93% reproducible and ~7% unreproducible... that feels a bit better to me! These numbers wander around over time, mostly due to packages moving back into an "unknown" state while the build farms catch up with each other... although the above numbers seem to have been pretty consistent over the last few days. > Some rough summaries about the types of issues: > > * ecl-* packages account for nearly half of the issues (~500 out of > ~1000 packages) More like ~570 out of ~1300 this time. Apparently there is an upstream issue for ecl, which is referenced in the summary. > * ~850 packages categorized (ecl-* accounting for most of them) ~990 packages reviewed (many duplicates from previous run). Slightly higher number to review higher this time, mostly due to some previous unknowns being reproducible/not reproducible. There are a handful of older-versions of things (e.g. package@1.0 vs package@2.0) that fail to build reproducibly and I didn't bother to look, I only checked the most recent versions of packages, so there are probably 300+ packages that could be reviewed. > * 19 packages embed kernel version 22 kernel version > * 63 packages embed timestamps 92 timestamps > * 52 packages embed dates (harder to reproduce that full timestamps) 46 dates > * 5 timestamps in python .pyc files 7 .pyc timestamps > * 12 timestamps in .jar files 12 .jar timestamps > * 66 ordering issues 82 ordering > * 3 ordering issues in .pyc files 3 .pyc ordering > * 9 ordering in .jar files 10 .jar ordering > * 16 ordering in guile .go files 13 guile .go ordering > * ~160 largely unidentified and inscrutible issues 193 unidentified > This does reveal that there are some opportunities for toolchain fixes, > fixing multiple packages at a time (and future packages too!), such as > ecl, sbcl, python, java, guile, clojure, texlive (see FORCE_SOURCE_DATE > proposal > https://lists.gnu.org/archive/html/guix-devel/2022-06/msg00171.html ). Still true! I tried patching texlive directly and failed to come up with something that worked, but haven't tried again recently. > I haven't done extensive cross-referencing with other distros, but > suspect there may be patches to fix some of these toolchain issues... If > you've savvy with any of the above languages, help fixing toolchain > issues would be amazing! Did a little of this, but still more to do! > If you're looking to get your hands dirty with some reproducibility > fixes in guix, a fair number of the timestamp, date and kernel version > fixes are likely fairly easy, but you generally have to manually verify > that the date or kernel version aren't embedded, as "guix build > --rounds=2" will likely happen with the same kernel version and date. Still very true! Maybe I should arrange a little virtual hackfest or something... I should probably normalize these issues a bit more and simplify them, but the full list I looked should be attached. Would it be ok to maintain this and some of the relevent tooling in a branch in guix.git, say, "reproducibility-notes"? Or make a new repository just for this? It most likely wouldn't share history with the other branches (much like the "keyring" branch), but presumably won't grow too large either. live well, vagrant --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=guix-rb-notes.yml Content-Transfer-Encoding: base64 NHRpMjoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluIGFuZCBsaWIKYWJjbDoKICAtIG5v bmRldGVybWluaXN0aWMgb3JkZXJpbmcgaW4gLmFiY2wgYW5kIC5jbCBmaWxlcyBpbnNpZGUgb2Yg YSAuamFyCmFjcGktY2FsbC1saW51eC1tb2R1bGU6CiAgLSB1bmlkZW50aWZpZWQgZGlmZmVyZW5j ZXMgaW4gLmtvIGZpbGVzCmFra3U6CiAgLSBub25kZXRlcm1pbmlzdGljIG9yZGVyaW5nIGVtYmVk ZGVkIGluIGd1aWxlIC5nbyBmaWxlcwphbGFjcml0dHk6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVz IGluIGJpbgphbnQtYXBhY2hlLWJjZWw6CiAgLSB0aW1lc3RhbXBzIGluIC5qYXIKYW50aHk6CiAg LSBvcmRlcmluZyBpc3N1ZXMgaW4gLmEgZmlsZXMKYW50LWp1bml0OgogIC0gdGltZXN0YW1wcyBp biAuamFyCmFyY2FuOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcwphcmNhbi1zZGw6CiAgLSB1bmlk ZW50aWZpZWQgaXNzdWVzCmFybWFnZXRyb25hZDoKICAtIG9yZGVyaW5nIGRpZmZlcmVuY2VzIGlu IGJpbi9hcm1hZ2V0cm9uYWQtdW5pbnN0YWxsCmFydGFuaXM6CiAgLSBub25kZXRlcm1pbmlzbSBp biBndWlsZSAuZ28gZmlsZXMKYXN5bXB0b3RlOgogIC0gcmFuZG9tbmVzcyBpbiBzaGFyZS9hc3lt cHRvdGUvR1VJL2ljb25zX3JjLnB5CmFzZWJhOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBi aW4KYXV0b2dlbjoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluCmF3ZXNvbWU6CiAgLSBo dG1sIGRvY3VtZW50YXRpb24gbGlua3Mgd2l0aCBub24tZGV0ZXJtaW5pc3RpYyBhbmNob3JzCiAg LSByYW5kb21uZXNzIGluIC5zdmcKYXhvbG90aS1wYXRjaGVyLW5leHQ6CiAgLSByYW5kb21uZXNz IGluIGVtYmVkZGVkIHRlbXBvcmFyeSBmaWxlIG5hbWVzIGUuZy4gY2NYWFhYWFgubHRyYW5zMS5s dHJhbnMubwpheG9sb3RpLXJ1bnRpbWU6CiAgLSByYW5kb21uZXNzIGluIGVtYmVkZGVkIHRlbXBv cmFyeSBmaWxlIG5hbWVzIGUuZy4gY2NYWFhYWFgucwphemltdXRoOgogIC0gdW5pZGVudGlmaWVk IGlzc3VlcyBpbiBiaW4vYXppbXV0aApiYXJ0OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBi aW4vYmFydApiY2FjaGVmcy1zdGF0aWM6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIHNiaW4v YmNhY2hlZnMKYmNhY2hlZnMtdG9vbHM6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIGxpYmJj YWNoZWZzLnNvIGFuZCBzYmluL2JjYWNoZWZzCmJjYWNoZWZzLXRvb2xzLXN0YXRpYzoKICAtIHVu aWRlbnRpZmllZCBpc3N1ZXMgaW4gc2Jpbi9iY2FjaGVmcwpibG9id2FyczoKICAtIHBvc3NpYmxl IG9yZGVyaW5nIGFuZC9vciBwYXJhbGxlbGlzbSBpc3N1ZXMKYmx1ZW1hbjoKICAtIHVuaWRlbnRp ZmllZCBub25kZXRlcm1pbmlzbSBpbiBweXRob24gLnB5Ywpicmx0dHk6CiAgLSByYW5kb21seSBn ZW5lcmF0ZWQgZXRjL2JybGFwaS5rZXkKYnRhbmtzOgogIC0gc29ydCBvcmRlciBpbiBzaGFyZS9i dGFua3MvcmVzb3VyY2VzLmRhdCAoLnppcCBmb3JtYXQpCiAgLSB0aW1lc3RhbXBzIGluIHNoYXJl L2J0YW5rcy9yZXNvdXJjZXMuZGF0ICguemlwIGZvcm1hdCkKYnVpbGRhcHA6CiAgLSB1bmlkZW50 aWZpZWQgaXNzdWUgaW4gYmluL2J1aWxkYXBwCmNhbWJhbGFjaGU6CiAgLSB0aW1lc3RhbXAgaW4g LnB5YwpjYXJkcGVlazoKICAtIGVtYmVkZGVkIHRpbWUgaW4gdmVyc2lvbgpjYXJsYToKICAtIHJh bmRvbW5lc3MgaW4gc2hhcmUvY2FybGEvcmVzb3VyY2VzX3JjLnB5CmNjdG9vbHM6CiAgLSB0aW1l c3RhbXAgaW4gL2Jpbi9sZApjZGRsaWI6CiAgLSB0aW1lc3RhbXAgaW4gKHRleGxpdmU/KSBwcm9k dWNlZCAuZHZpLCAucHMKY2Z1bmdlOgogIC0gZW1iZWRzIGtlcm5lbCB2ZXJzaW9uCmNoZXotZm10 OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGxpYi9jaGV6LXNjaGVtZS8qLnNvCmNoZXotaXJy ZWdleDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvY2hlei1zY2hlbWUvKi5zbwpjaGV6 LW1hdGNoYWJsZToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvY2hlei1zY2hlbWUvKi5z bwpjaGV6LW1pdDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvY2hlei1zY2hlbWUvKi5z bwpjaGV6LW5hbm9wYXNzOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGxpYi9jaGV6LXNjaGVt ZS8qLnNvCiAgLSBlbWJlZGRlZCBkYXRlIGluIHVzZXItZ3VpZGUucGRmCmNoZXotc2NoZW1lOgog IC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGxpYi9jc3YqCmNoZXotc2NoZW1lLWZvci1yYWNrZXQ6 CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gbGliL2NzdioKY2hlei1zY211dGlsczoKICAtIHVu aWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvY2hlei1zY2hlbWUvKi5zbwpjaGV6LXNvY2tldHM6CiAg LSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gbGliL2NoZXotc2NoZW1lLyouc28KY2hlei1zcmZpOgog IC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGxpYi9jaGV6LXNjaGVtZS8qLnNvCmNoZXotd2ViOgog IC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGxpYi9jaGV6LXNjaGVtZS8qLnNvCmNoaWJpLXNjaGVt ZToKICAtIG9yZGVyaW5nIGlzc3VlIGluIHNoYXJlL2NoaWJpLyoubWV0YQogIC0gdW5pZGVudGlm aWVkIGlzc3VlIGluIHNoYXJlL2NoaWJpLyouaW1nCmNpcmN0b29sczoKICAtIHVuaWRlbnRpZmll ZCBpc3N1ZSBpbiBiaW4vY2lyY3Rvb2xzCmNsYXNzcGF0aDoKICAtIHRpbWVzdGFtcHMgaW4gLnpp cCBmaWxlcwogIC0gb3JkZXJpbmcgaW4gLnppcCBmaWxlcwpjbC1jb250YWluZXJzOgogIC0gaW5j bHVkZXMgdGVzdCBzdWl0ZSBzdW1tYXJ5IHdpdGggZGF0ZSBhbmQgdGltaW5nIGluZm9ybWF0aW9u CmNsZWFyc2lsdmVyOgogIC0gdGltZXN0YW1wcyBpbiBtYW5wYWdlcwpjbC1oZGY1LWNmZmk6CiAg LSBlbWJlZGRlZCB0ZW1wb3JhcnkgZGlyZWN0b3J5IGluIC5oNSBmaWxlcwpjbGlzcDoKICAtIHVu aWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvY2xpc3AtKi9iYXNlL2xpc3Bpbml0Lm1lbQpjbC1tZXRh YmFuZy1iaW5kOgogIC0gc3VtbWFyeSBvZiB0ZXN0IHN1aXRlIHJlc3VsdHMgd2l0aCB0aW1pbmcg aW5mb3JtYXRpb24gYW5kIGRhdGUgaW4gZmlsZW5hbWUKY2wtbWV0YXRpbGl0aWVzLWJhc2U6CiAg LSBzdW1tYXJ5IG9mIHRlc3Qgc3VpdGUgcmVzdWx0cyB3aXRoIHRpbWluZyBpbmZvcm1hdGlvbiBh bmQgZGF0ZSBpbiBmaWxlbmFtZQpjbG9qdXJlOgogIC0gdGltZXN0YW1wcyBpbiBodG1sIGRvY3Vt ZW50YXRpb24KICAtIG9yZGVyaW5nIGFuZC9vciBub25kZXRlcm1pbmlzbSBpbiAuY2xhc3MgZmls ZXMKY2xvb2c6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gYmluL2Nsb29nCiAgLSBvcmRlcmlu ZyBpc3N1ZXMgaW4gbGliY2xvb2ctaXNsLmEKY2x1c3RhbC1vbWVnYToKICAtIHVuaWRlbnRpZmll ZCBpc3N1ZSBpbiBiaW4vY2x1c3RhbG8KICAtIG9yZGVyaW5nIGlzc3VlcyBpbiBsaWJjbHVzdGFs by5hCmNsLXlhbGUtaGFza2VsbDoKICAtIGRpZmZlcmluZyBudW1iZXIgaW4gYmluL2NsaXNwLWhh c2tlbGwKY2wteXhvcnAtY2xpOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGJpbi9jbC15eG9y cApjdWlyYXNzOgogIC0gbm9uZGV0ZXJtaW5pc3RpYyBvcmRlcmluZyBlbWJlZGRlZCBpbiBndWls ZSAuZ28gZmlsZXMKZGRjY2ktZHJpdmVyLWxpbnV4OgogIC0gdW5pZGVudGlmaWVkIGRpZmZlcmVu Y2VzIGluIC5rbyBmaWxlcwpkZWh5ZHJhdGVkOgogIC0gbWFucGFnZSBjb21wcmVzc2VkIHdpdGgg Z3ppcCB0aW1lc3RhbXAsIHBhc3MgLS1uby1uYW1lIHRvIGZpeApkZWx1Z2U6CiAgLSB0aW1lc3Rh bXBzIGluIHB5dGhvbiAuZWdnIGZpbGVzCmRpZGp2dToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMg aW4gcHl0aG9uIC5weWMKZGlyZWN0ZmI6CiAgLSB0aW1lc3RhbXBzIGluIC5zbyBmaWxlCmRpc2Ny b3ZlcjoKICAtIC5wZGYgcHJvZHVjZWQgd2l0aCBkaWZmZXJlbnQgdGV4dCB3aWR0aApkcmlwOgog IC0gdGltZXN0YW1wcyBpbiAuamFyIGZpbGUKICAtIG9yZGVyaW5nIGluIC5qYXIgZmlsZQplYnVz ZDoKICAtIGVtYmVkZGVkIGRhdGVzIGluIGJpbi9lYnVzZAplY2wtKjoKICAtIGh0dHBzOi8vZ2l0 bGFiLmNvbS9lbWJlZGRhYmxlLWNvbW1vbi1saXNwL2VjbC8tL2lzc3Vlcy81NTEKZWRpOgogIC0g dWlkL2dpZCBpbiB0YXJiYWxsCiAgLSBzb3J0IG9yZGVyIGluIHRhcmJhbGwKZWZpdG9vbHM6CiAg LSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gc2hhcmUvZWZpdG9vbHMvZWZpL0xvY2tEb3duLmVmaQpl Zmw6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gc2hhcmUvZWxlbWVudGFyeS90aGVtZXMvZGVm YXVsdC5lZGoKZW1hY3MtZGRza2s6CiAgLSB0aW1lc3RhbXAgaW4gc2hhcmUvZW1hY3Mvc2l0ZS1s aXNwL3Nray1hdXRvbG9hZHMuZWwgYW5kIHNra3NldHVwLmVsCmVtYWNzOgogIC0gZW1iZWRzIGtl cm5lbCB2ZXJzaW9uIGluIGxpYmV4ZWMvZW1hY3MvKi8qL2VtYWNzLnBkbXAKICAtIHVuaWRlbnRp ZmllZCBpc3N1ZXMgaW4gLmVsYyBmaWxlcwplbWFjcy1ob3dtOgogIC0gdW5pZGVudGlmaWVkIGlz c3VlcyBpbiAuZWxjIGZpbGVzCmVtYWNzLW1pbmltYWw6CiAgLSBlbWJlZHMga2VybmVsIHZlcnNp b24gaW4gbGliZXhlYy9lbWFjcy8qLyovZW1hY3MucGRtcAogIC0gdW5pZGVudGlmaWVkIGlzc3Vl cyBpbiAuZWxjIGZpbGVzCmVtYWNzLW5leHQ6CiAgLSBlbWJlZHMga2VybmVsIHZlcnNpb24gaW4g bGliZXhlYy9lbWFjcy8qLyovZW1hY3MucGRtcAplbWFjcy1uZXh0LXBndGs6CiAgLSBlbWJlZHMg a2VybmVsIHZlcnNpb24gaW4gbGliZXhlYy9lbWFjcy8qLyovZW1hY3MucGRtcAogIC0gdW5pZGVu dGlmaWVkIGlzc3VlcyBpbiAuZWxjIGZpbGVzCmVtYWNzLW5vLXg6CiAgLSBlbWJlZHMga2VybmVs IHZlcnNpb24gaW4gbGliZXhlYy9lbWFjcy8qLyovZW1hY3MucGRtcAogIC0gdW5pZGVudGlmaWVk IGlzc3VlcyBpbiAuZWxjIGZpbGVzCmVtYWNzLW5vLXgtdG9vbGtpdDoKICAtIGVtYmVkcyBrZXJu ZWwgdmVyc2lvbiBpbiBsaWJleGVjL2VtYWNzLyovKi9lbWFjcy5wZG1wCiAgLSB1bmlkZW50aWZp ZWQgaXNzdWVzIGluIC5lbGMgZmlsZXMKZW1hY3Mtc2x5LW5hbWVkLXJlYWR0YWJsZXM6CiAgLSBk aWZmZXJlbnRseSBmb3JtYXR0ZWQgLmVsIGNvZGUKICAtIGRpZmZlcmVudCBudW1lcmljIHZhbHVl cyBpbiBhdXRvbG9hZHMgY29tbWVudAplbWFjcy1zdWJlZDoKICAtIG5vbmRldGVybWluaXN0aWMg bnVtYmVycyBpbiBzdWJlZC1hdXRvbG9hZHMuZWwKZW1hY3MtdHJlZW1hY3M6CiAgLSBkYXRlIGlu IC5lbGMKZW1hY3Mtd2lkZS1pbnQ6CiAgLSBlbWJlZHMga2VybmVsIHZlcnNpb24gaW4gbGliZXhl Yy9lbWFjcy8qLyovZW1hY3MucGRtcAogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiAuZWxjIGZp bGVzCmVtYWNzLXh3aWRnZXRzOgogIC0gZW1iZWRzIGtlcm5lbCB2ZXJzaW9uIGluIGxpYmV4ZWMv ZW1hY3MvKi8qL2VtYWNzLnBkbXAKZW5ibGVuZC1lbmZ1c2U6CiAgLSB1bmlkZW50aWZpZWQgaXNz dWUgaW4gYmluL2VuZnVzZSBiaW4vZW5ibGVuZAplcmxhbmctYmJtdXN0YWNoZToKICAtIHVuaWRl bnRpZmllZCBpc3N1ZXMKZmJyZWFkZXI6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gYmluL0ZC UmVhZGVyCmZlbmljcy1kb2xmaW46CiAgLSBkaWZmZXJlbnQgcHJlY2lzaW9uIGFuZCByb3VuZGlu ZyBkaWZmZXJlbmNlcyBpbiBmbG9hdGluZyBwb2ludCBudW1iZXJzIGluICouaCBmaWxlcwpmZW5u ZWw6CiAgLSBvcmRlcmluZyBkaWZmZXJlbmNlcyBpbiBiaW4vZmVubmVsIGFuZCBmZW5uZWwubHVh CmZmbGFzLWZmcGFjazoKICAtIGJpbi9mZmxhcy1mZnBhY2stY29uZmlnIGNvbnRhaW5zIGRpZmZl cmVudCBjcHUgb3B0aW1pemF0aW9ucwpmaWx0bG9uZzoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMg aW4gYmluL2ZpbHRsb25nCmZsZGlnaToKICAtIHRpbWVzdGFtcHMgaW4gYmluL2ZsYXJxCmZwYzoK ICAtIGRhdGVzIGVtYmVkZGVkIGluIGJpbi8qIGFuZCBsaWIvZnBjLyovdW5pdHMvKi9wYXN0b2pz L3BhczJqc2NvbXBpbGVyLm8KZnJlZXJjdDoKICAtIHRpbWVzdGFtcHMgaW4gLnJjZCBmaWxlcwpm c3RyY21wOgogIC0gdGltZXN0YW1wcyBpbiAucGRmCmZ1bGxzd29mLTJkOgogIC0gdW5pZGVudGlm aWVkIGlzc3VlIGluIGJpbi9GdWxsU1dPRl8yRApnYXA6CiAgLSBrZXJuZWwgdmVyc2lvbiBpbiBj b25maWcubG9nCiAgLSBsZCB3YXJuaW5ncyB3aXRoIHJhbmRvbSB0ZW1wb3JhcnkgZmlsZW5hbWVz IGluIGNvbmZpZy5sb2cKICAtIHRpbWVzdGFtcCBpbiAqLmxvZwpnYXZsOgogIC0gdW5pZGVudGlm aWVkIGlzc3VlcyBpbiBsaWIvbGliZ2F2bC5zby4qCmdjYy1zdHJpcHBlZC10YXJiYWxsOgogIC0g dW5pZGVudGlmaWVkIGlzc3VlcyBpbiBiaW4vKiBpbiB0YXJiYWxsCmdjbDoKICAtIGRpZmZlcmVu dCBhZGRyZXNzZXMgZm9yIGZ1bmN0aW9ucyBpbiBsaWIvZ2NsLTIuNy4wL3VuaXhwb3J0L2xpYmFu c2lfZ2NsLmEKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiBsaWIvKi91bml4cG9ydC9zYXZlZF9hbnNp X2djbApnZXJiaWw6CiAgLSBvcmRlcmluZyBpbiAuc2NtCiAgLSBvcmRlcmluZyBpbiAuc3NpCiAg LSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIGxpYgpnZjJ4OgogIC0gb3JkZXJpbmcgaXNzdWVzIGlu IGxpYi9saWJnZjJ4LmEKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gbGliL2xpYmdmMnguc28u KgpnaXZhcm86CiAgLSBkaWZmZXJpbmcgY3B1IG9wdGltaXphdGlvbnMgaW4gYmluL2dpdmFyby1t YWtlZmlsZQogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBsaWIgKHBvc3NpYmx5IHJlbGF0ZWQg dG8gY3B1IG9wdGltaXphdGlvbnM/KQpnbm9tZS1hcmNhZGU6CiAgLSB1bmlkZW50aWZpZWQgaXNz dWVzCmdub21lLWRlc2t0b3A6CiAgLSBkYXRlIGluIHNoYXJlL2dub21lL2dub21lLXZlcnNpb24u eG1sCmdub21lLXR3ZWFrczoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLnB5Ywpnbm9tZS1z aGVsbC1leHRlbnNpb24tYnVybi1teS13aW5kb3dzOgogIC0gb3JkZXJpbmcgaXNzdWVzIGluCiAg ICBzaGFyZS9nbm9tZS1zaGVsbC9leHRlbnNpb25zL2J1cm4tbXktd2luZG93c0BzY2huZWVnYW5z LmdpdGh1Yi5jb20vcmVzb3VyY2VzL2J1cm4tbXktd2luZG93cy5ncmVzb3VyY2UueG1sCmdub21l LXZmczoKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiBsaWIvZ25vbWUtdmZzLTIuMC9tb2R1bGVzL2xp Ymh0dHAuYQpnbnVjb2JvbDoKICAgLSB0aW1lc3RhbXAgaW4gbGliL2dudWNvYm9sL0NCTF9PQ19E VU1QLnNvCmdudW5ldC1zY2hlbWU6CiAgLSB0aW1lc3RhbXAgaW4gLnBkZiAoQ3JlYXRpb25EYXRl IHZpYSBUZVhtYWNzKQpnby1zdGQ6CiAgLSB0aW1lc3RhbXAgKG5hbm9zZWNvbmRzIHNpbmNlIGVw b2NoPyBlLmcuIDE2NTcwOTI3MjAxMzc0NTgzNTUpIGluIHZhci9jYWNoZS9nby9idWlsZC8qIGZp bGVzCmdwcm9sb2c6CiAgLSBkYXRlIGluIC5oIGFuZCAuYSBmaWxlcywgc2hhcmUvZ3Byb2xvZy9i aW4vKgogIC0gcmFuZG9taXplZCB0ZW1wb3JhcnkgZmlsZW5hbWVzIGluIHNoYXJlL2dwcm9sb2cv bGliLyoKZ3JvZmY6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gdmFyaW91cyBmaWxlcwpndGtnbGV4 dDoKICAtIG9yZGVyaW5nIGluIC5hIGZpbGVzCmd1aWxlLWNoaWNrYWRlZToKICAtIG5vbmRldGVy bWluaXN0aWMgb3JkZXJpbmcgaW4gZ3VpbGUgLmdvIGZpbGVzCmd1aWxlOgogIC0gdW5pZGVudGlm aWVkIGlzc3VlIGluIGxpYi9ndWlsZS8zLjAvY2NhY2hlL2ljZS05L2Z0dy5nbwpndWlsZS1mb3It Z3VpbGUtZW1hY3M6CiAgLSBkYXRlIGluIGxpYi9saWJndWlsZS0yLjIuc28uMC4wLjAKICAtIHVu aWRlbnRpZmllZCBpc3N1ZXMgaW4gZ3VpbGUgLmdvIGZpbGVzCmd1aWxlLWctZ29sZjoKICAtIG5v bmRldGVybWluaXN0aWMgb3JkZXJpbmcgaW4gZ3VpbGUgLmdvIGZpbGVzCmd1aWxlLWdpdDoKICAt IG5vbmRldGVybWluaXN0aWMgb3JkZXJpbmcgZW1iZWRkZWQgaW4gZ3VpbGUgLmdvIGZpbGVzCmd1 aWxlLWdub21lOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiAuc28gZmlsZXMKZ3VpbGUtaXJj OgogIC0gbm9uZGV0ZXJtaW5pc3RpYyBvcmRlcmluZyBpbiBndWlsZSAuZ28gZmlsZXMKZ3VpbGUt bGliOgogIC0gbm9uZGV0ZXJtaW5pc3RpYyBvcmRlcmluZyBpbiBndWlsZSAuZ28gZmlsZXMKZ3Vp bGUtbmV4dDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvZ3VpbGUvMy4wL2NjYWNoZS9p Y2UtOS9mdHcuZ28KZ3VpbGUtcmRmOgogIC0gb3JkZXJpbmcgaW4gZ3VpbGUgLmdvIGZpbGVzCmd1 aXgtYnVpbGQtY29vcmRpbmF0b3I6CiAgLSBub25kZXRlcm1pbmlzdGljIG9yZGVyaW5nIGVtYmVk ZGVkIGluIGd1aWxlIC5nbyBmaWxlcwpndWl4LWRhdGEtc2VydmljZToKICAtIHJhbmRvbWl6ZWQg aHJlZiBzdHJpbmdzIGluIHNoYXJlL2RvYy9ndWl4LWRhdGEtc2VydmljZS9SRUFETUUuaHRtbApn dWl4OgogIC0gb3JkZXJpbmcgaW4gZ3VpbGUgLmdvIGZpbGVzCmhhc2hjYXQ6CiAgLSB1bmlkZW50 aWZpZWQgaXNzdWUgaW4gYmluL2hhc2hjYXQKaGF1bnQ6CiAgLSBvcmRlcmluZyBpbiBndWlsZSAu Z28gZmlsZXMKaGV2ZWE6CiAgLSB0ZW1wb3JhcnkgcmFuZG9taXplZCBmaWxlbmFtZSBidWlsdCB3 aXRoIG9jYW1sCmhoLXN1aXRlOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBiaW4vLCBwb3Nz aWJseSBvcmRlcmluZwppM3N0YXR1cy1ydXN0OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBi aW4vLmkzc3RhdHVzLXJzLXJlYWwKaWNlZHRlYS13ZWI6CiAgLSB0aW1lc3RhbXBzIGluIC5qYXIK ICAtIG9yZGVyaW5nIGluIC5qYXIKICAtIGRhdGUgaW4gbWFucGFnZXMKaWN1NGMtYnVpbGQtcm9v dDoKICAtIGtlcm5lbCB2ZXJzaW9uIGluIGNvbmZpZy5sb2cKICAtIHJhbmRvbWl6ZWQgdGVtcG9y YXJ5IGZpbGUgaW4gY29uZmlnLmxvZwppbnNpZ2h0LXRvb2xraXQ6CiAgLSB1bmlkZW50aWZpZWQg aXNzdWVzIGluIGxpYgppcHhlOgogIC0gLmlzbyBmaWxlLCBwb3NzaWJseSBmaWxlc3lzdGVtIG1l dGFkYXRhCmlyb2RzOgogIC0gZW1iZWRzIHJhbmRvbS9hcmJpdHJhcnkgbnVtYmVyIGluIGRlZmlu ZSBpbmNsdWRlL2lyb2RzL3NlcnZlcl9jb250cm9sX3BsYW5lX2NvbW1hbmQuaHBwCmlzbDoKICAt IHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gbGliL2xpYmlzbC5zby4qCmphdmEtY29mb2phOgogIC0g ZGF0ZXMgZW1iZWRkZWQgaW4gZmlsZW5hbWVzIG9mIC5qYXIgZmlsZXMgKGUuZy4gc2hhcmUvamF2 YS9jb2ZvamErYXNtLTEuMi0yMDIyMDUyOS5qYXIpCmphdmEtY29tbW9ucy1kYWVtb246CiAgLSB0 aW1lc3RhbXAgZW1iZWRkZWQgaW4gLmh0bWwgZG9jdW1lbnRhdGlvbiBtYWRlIHdpdGggamF2YWRv YwogIC0gZGF0ZSBlbWJlZGRlZCBpbiAuaHRtbCAoZS5nLiA8bWV0YSBuYW1lPSJkYXRlIiBjb250 ZW50PSIyMDIyLTA1LTI5Ij4pCmphdmEtY29tbW9ucy1odHRwY2xpZW50OgogIC0gdGltZXN0YW1w IGVtYmVkZGVkIGluIC5odG1sIGRvY3VtZW50YXRpb24gbWFkZSB3aXRoIGphdmFkb2MKICAtIGRh dGUgZW1iZWRkZWQgaW4gLmh0bWwgKGUuZy4gPG1ldGEgbmFtZT0iZGF0ZSIgY29udGVudD0iMjAy Mi0wNS0yOSI+KQogIC0gb3JkZXJpbmcgaXN1ZXMgaW4gZG9jdW1lbnRhdGlvbiAocGFyYWxsZWxp c20/KQpqYXZhLWpibGFzOgogIC0gdGltZXN0YW1wcyBpbiAuamFyCmphdmEtamRvbToKICAtIHRp bWVzdGFtcHMgZW1iZWRkZWQgaW4gZmlsZW5hbWVzIG9mIC5qYXIgZmlsZXMgKGUuZy4gamRvbS0y LngtMjAyMi4wOC4xMC4yMi4xOC1qdW5pdC5qYXIpCmphdmEtbmdzOgogIC0gdGltZXN0YW1wcyBp biAuamFyCiAgLSBvcmRlcmluZyBpbiAuamFyCmphdmEtb3Blbm1waToKICAtIHRpbWVzdGFtcCBl bWJlZGRlZCBpbiAuaHRtbCBkb2N1bWVudGF0aW9uIG1hZGUgd2l0aCBqYXZhZG9jCiAgLSBkYXRl IGVtYmVkZGVkIGluIC5odG1sIChlLmcuIDxtZXRhIG5hbWU9ImRhdGUiIGNvbnRlbnQ9IjIwMjIt MDUtMjkiPikKamF2YS10b21jYXQ6CiAgLSBkYXRlIGluIC5odG1sIChlLmcuIDx0aW1lIGRhdGV0 aW1lPSIyMDIyLTA4LTEwIj5BdWcgMTAgMjAyMjwvdGltZT4pCmphdmEteG1scHVsbC1hcGktdjE6 CiAgLSB0aW1lc3RhbXAgZW1iZWRkZWQgaW4gLmh0bWwgZG9jdW1lbnRhdGlvbiBtYWRlIHdpdGgg amF2YWRvYwogIC0gZGF0ZSBlbWJlZGRlZCBpbiAuaHRtbCAoZS5nLiA8bWV0YSBuYW1lPSJkYXRl IiBjb250ZW50PSIyMDIyLTA1LTI5Ij4pCmp1bGlhOgogIC0gdW5pZGVudGlmaWVkIGlzc3Vlcwog IC0gZGlmZm9zY29wZSB0YWtlcyB+Zm9yZXZlcgprYXdhOgogIC0gdGltZXN0YW1wcyBpbiAuamFy CiAgLSBvcmRlcmluZyBpbiAuamFyCmtkZWxpYnM0c3VwcG9ydDoKICAtIHVuaWRlbnRpZmllZCBp c3N1ZXMgaW4gLnNvLCBwb3NzaWJseSBmaXhlZCBpbiB2ZXJzaW9ucyA1LjkzKwprZWVwYWxpdmVk OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5pbmZvCmtpY2FkOgogIC0gdWlkL2dpZCBpbiB0 YXJiYWxsCiAgLSBzb3J0IG9yZGVyIGluIHRhcmJhbGwKa2lzc2F0OgogIC0ga2VybmVsIHZlcnNp b24gZW1iZWRkZWQgaW4gYmluLyBhbmQgLnNvIGZpbGVzCiAgLSB0aW1lc3RhbXAgZW1iZWRkZWQg aW4gYmluLyBhbmQgLnNvIGZpbGVzCmtvZGk6CiAgLSB0aW1lc3RhbXAgZW1iZWRkZWQgaW4gbGli L2tvZGkva29kaS14MTEKa29kaS13YXlsYW5kOgogIC0gdGltZXN0YW1wIGVtYmVkZGVkIGluIGxp Yi9rb2RpL2tvZGkteDExCmxhZ3JhbmdlOgogIC0gdGltZXN0YW1wIGluIFZFUlNJT04gZmlsZSBl bWJlZGRlZCBpbiBzaGFyZS9sYWdyYW5nZS9yZXNvdXJjZXMubGdyCmxhbWluYXI6CiAgLSB1bmlk ZW50aWZpZWQgaXNzdWUgaW4gc2Jpbi9sYW1pbmFyZApsZWFuOgogIC0gdW5pZGVudGlmaWVkIGlz c3VlcyBpbiAub2xlYW4gZmlsZXMKbGVwdG9uLWVkYToKICAtIGhhc2hlZCBpZGVudGlmaWVycyBp biAuZ28gZmlsZXMKbGliYWR3YWl0YToKICAtIGRhdGUgaW4gc2hhcmUvbWV0YWluZm8vb3JnLmdu b21lLkFkd2FpdGExLkRlbW8ubWV0YWluZm8ueG1sCmxpYmNhbWVyYToKICAtIHVuaWRlbnRpZmll ZCBpc3N1ZSAobWF5YmUgZW1iZWRkZWQgc2lnbmF0dXJlcz8pCmxpYmNjZDoKICAtIGRpZmZlcmlu ZyBjaGFyYWN0ZXJzIGluIC5odG1sIGZpbGVzICjigJjigJkgdnMuICcnIGFuZCDigJkgdnMuICYj Mzk7cykKbGliZmxhbWU6CiAgLSB1bmRlbnRpZmllZCBpc3N1ZXMgaW4gLnNvIGZpbGUKbGliZ3Rv cDoKICAtIGtlcm5lbCB2ZXJzaW9uIGVtYmVkZGVkIGluIGJpbi9saWJndG9wX3NlcnZlcjIKbGli amNhdDoKICAtIHRpbWVzdGFtcCBhbmQgcmFuZG9tbmVzcyBpbiB0bHMgY2VydCBsaWJleGVjL2lu c3RhbGxlZC10ZXN0cy9saWJqY2F0L2NvbG9yaHVnL2Zpcm13YXJlLmJpbi5wN2MKbGlibGlucGhv bmU6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gaW5jbHVkZS9saW5waG9uZSsrL2xpbnBob25lLmho CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gLnNvCmxpYm1wZWcyOgogIC0gb3JkZXJpbmcgaXNzdWVz IGluIGxpYi8KbGlibmV0OgogIC0gdGltZXN0YW1wcyBpbiBtYW5wYWdlCmxpYm9wZW5zbXRwZDoK ICAtIGRhdGUgaW4gbWFucGFnZQpsaWJvc21vLWRzcDoKICAtIHRpbWVzdGFtcHMgaW4gc2hhcmUv ZG9jL2xpYm9zbW9kc3AvaHRtbC9fZm9ybXVsYXMubG9nCmxpYnBpbnlpbjoKICAtIHVuaWRlbnRp ZmllZCBpc3N1ZXMKbGlicXVpY2t0aW1lOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBiaW4v IGFuZCAuc28gZmlsZXMKbGlicmVtLWVjLWFjcGktbGludXgtbW9kdWxlOgogIC0gdW5pZGVudGlm aWVkIGRpZmZlcmVuY2VzIGluIC5rbyBmaWxlcwpsaWJzdGRjKystZG9jOgogIC0gZGF0ZSBpbiAu aHRtbApsaWJ3ZWJzb2NrZXRzOgogIC0gcHJpdmF0ZSBrZXkgc2hhcmUvbGlid2Vic29ja2V0cy10 ZXN0LXNlcnZlci9saWJ3ZWJzb2NrZXRzLXRlc3Qtc2VydmVyLmtleS5wZW0KbGluYm94OgogIC0g Y3B1IHNwZWNpZmljIGNvbXBpbGVyIGZsYWdzIGluIGJpbi9saW5ib3gtY29uZmlnCmxpbnV4LWxp YnJlOgogIC0gZGlmZmVyZW5jZXMgaW4gYnpJbWFnZSBhbmQgU3lzdGVtLm1hcAogIC0gdW5pZGVu dGlmaWVkIGRpZmZlcmVuY2VzIGluIC5rbyBmaWxlcwpsaW51eC1saWJyZS1icGY6CiAgLSBkaWZm ZXJlbmNlcyBpbiBiekltYWdlIGFuZCBTeXN0ZW0ubWFwCiAgLSB1bmlkZW50aWZpZWQgZGlmZmVy ZW5jZXMgaW4gLmtvIGZpbGVzCiAgLSB1bmlkZW50aWZpZWQgZGlmZmVyZW5jZXMgaW4gYnppbWFn ZQpsaXJjOgogIC0gdWlkL2dpZCBpbiB0YXJiYWxsCmxrcmc6CiAgLSB1bmlkZW50aWZpZWQgZGlm ZmVyZW5jZXMgaW4gLmtvIGZpbGVzCmxva2tlOgogIC0gbm9uZGV0ZXJtaW5pc3RpYyBvcmRlcmlu ZyBlbWJlZGRlZCBpbiBndWlsZSAuZ28gZmlsZXMKbG9va2luZy1nbGFzcy1jbGllbnQ6CiAgLSB1 bmlkZW50aWZpZWQgaXNzdWVzCmx0dG5nLW1vZHVsZXM6CiAgLSB1bmlkZW50aWZpZWQgZGlmZmVy ZW5jZXMgaW4gLmtvIGZpbGVzCm00cmk6CiAgLSBjcHUgY2FjaGUgdmFsdWVzIGluIGluY2x1ZGUv bTRyaS9tNHJpX2NvbmZpZy5oCm00cmllOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcwptYXJhZG5z OgogIC0gRklYIFBST1BPU0VEIHRpbWVzdGFtcHMgZW1iZWRkZWQKICAtIEZJWCBQUk9QT1NFRCBy YW5kb20gbnVtYmVyIGVtYmVkZGVkCm1hdmVuLWNvbXBhdDoKICAtIG9yZGVyaW5nIGlzc3VlcyBp biBNRVRBLUlORi9wbGV4dXMvY29tcG9uZW50cy54bWwgaW5zaWRlIC5qYXIKbWF2ZW4tbW9kZWwt YnVpbGRlcjoKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiBNRVRBLUlORi9zaXN1L2phdmF4LmluamVj dC5OYW1lZCBpbnNpZGUgLmphcgptYXZlbi1yZXNvbHZlci1wcm92aWRlcjoKICAtIG9yZGVyaW5n IGlzc3VlcyBpbiBNRVRBLUlORi9zaXN1L2phdmF4LmluamVjdC5OYW1lZCBpbnNpZGUgLmphcgpt YXZlbi1zZXR0aW5ncy1idWlsZGVyOgogIC0gb3JkZXJpbmcgaXNzdWVzIGluIE1FVEEtSU5GL3Np c3UvamF2YXguaW5qZWN0Lk5hbWVkIGluc2lkZSAuamFyCm1heGltYToKICAtIGxpYi9tYXhpbWEv NS40NS4xL2JpbmFyeS1zYmNsL21heGltYS5jb3JlCiAgLSBvcmRlcmluZyBvciBvdGhlciBpc3N1 ZXMgaW4gLmh0bWwKbWVlcDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMKbWVyY3VyaWFsOgogIC0g b3JkZXJpbmcgaW5zaWRlIC5weWMgZmlsZXMKbWlhOgogIC0gb3JkZXJpbmcgaXNzdWVzIGluIG1h bnBhZ2VzCm1pbmNlZDoKICAtIHRpbWVzdGFtcHMgaW4gLmphcgptaW5ndy13NjQtaTY4NjoKICAt IHRpbWVzdGFtcHMgaW4gLmEgZmlsZXMKbWluZ3ctdzY0LWk2ODYtd2lucHRocmVhZHM6CiAgLSB0 aW1lc3RhbXBzIGluIC5hIGZpbGVzCm1pbmd3LXc2NC14ODZfNjQ6CiAgLSB0aW1lc3RhbXBzIGlu IC5hIGZpbGVzCm1pbmd3LXc2NC14ODZfNjQtd2lucHRocmVhZHM6CiAgLSB0aW1lc3RhbXBzIGlu IC5hIGZpbGVzCm1pbml1cG5wYzoKICAtIGVtYmVkZGVkIGtlcm5lbCB2ZXJzaW9uIGluIFVzZXIt QWdlbnQKbWl0LXNjaGVtZToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMKbWtwMjI0bzoKICAtIHVu aWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluL21rcDIyNG8KbW0tY29tbW9uOgogIC0gdWlkL2dpZCBp biBzaGFyZS9kb2MvbW0tY29tbW9uL3NrZWxldG9ubW0udGFyLnh6LAogICAgcGF0Y2ggaHR0cHM6 Ly9idWdzLmRlYmlhbi5vcmcvOTc3MTc3CiAgICBmaXggc3VibWl0dGVkIGh0dHBzOi8vaXNzdWVz Lmd1aXguZ251Lm9yZy81NzMwNAptb2Fydm06CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIGxp Yi9saWJtb2FyLnNvCm1vbm86CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzCm1ydWJ5OgogIC0gdW5p ZGVudGlmaWVkIGlzc3VlcwptdToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLmVsYyBmaWxl Cm11c2VzY29yZToKICAtIHRpbWVzdGFtcD8gcmFuZG9tbmVzcz8gaW4KICAgIHNoYXJlL21zY29y ZS0zLjYvd29ya3NwYWNlcy9BZHZhbmNlZC53b3Jrc3BhY2UgaW4gLnppcCBmb3JtYXQKbXVzbC1j cm9zczoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMKbXlyZGRpbjoKICAtIHVuaWRlbnRpZmllZCBp c3N1ZXMKbXlzcWw6CiAgLSBrZXJuZWwgdmVyc2lvbiBzaGFyZS9teXNxbC9kb2NzL0lORk9fQklO CiAgLSB0aW1lc3RhbXBzIGluIHNoYXJlL215c3FsL2RvY3MvSU5GT19CSU4KbmFub21zZzoKICAt IHVuaWRlbnRpZmllZCBpc3N1ZXMKbmF1dHk6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzCm5jZHUy OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcwpuZToKICAtIGRhdGUgaW4gYmluL25lCm5ldGNkZi1m b3J0cmFuOgogIC0gdGltZXN0YW1wIGluIGxpYi9saWJuZXRjZGZmLnNldHRpbmdzCm5uZzoKICAt IHVuaWRlbnRpZmllZCBpc3N1ZXMKbm9kZToKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiBpbmNsdWRl L25vZGUvY29uZmlnLmd5cGkKbm9kZS1hZGRvbi1hcGk6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4g bGliL25vZGVfbW9kdWxlcy9ub2RlLWFkZG9uLWFwaS90ZXN0L2J1aWxkL01ha2VmaWxlCiAgLSBv cmRlcmluZyBpc3N1ZXMgaW4gbGliL25vZGVfbW9kdWxlcy9ub2RlLWFkZG9uLWFwaS90ZXN0L2J1 aWxkL2NvbmZpZy5neXBpCm5vZGUtb3Blbnp3YXZlLXNoYXJlZDoKICAtIG9yZGVyaW5nIGlzc3Vl cyBpbiBsaWIvbm9kZV9tb2R1bGVzL29wZW56d2F2ZS1zaGFyZWQvYnVpbGQvTWFrZWZpbGUKICAt IG9yZGVyaW5nIGlzc3VlcyBpbiBsaWIvbm9kZV9tb2R1bGVzL29wZW56d2F2ZS1zaGFyZWQvYnVp bGQvY29uZmlnLmd5cGkKbm9kZS1zZWdmYXVsdC1oYW5kbGVyOgogIC0gb3JkZXJpbmcgaXNzdWVz IGluIGxpYi9ub2RlX21vZHVsZXMvc2VnZmF1bHQtaGFuZGxlci9idWlsZC9NYWtlZmlsZQogIC0g b3JkZXJpbmcgaXNzdWVzIGluIGxpYi9ub2RlX21vZHVsZXMvc2VnZmF1bHQtaGFuZGxlci9idWls ZC9jb25maWcuZ3lwaQpub2RlLXNlcmlhbHBvcnQtYmluZGluZ3M6CiAgLSBvcmRlcmluZyBpc3N1 ZXMgaW4gbGliL25vZGVfbW9kdWxlcy9Ac2VyaWFscG9ydC9iaW5kaW5ncy9idWlsZC9NYWtlZmls ZQogIC0gb3JkZXJpbmcgaXNzdWVzIGluIGxpYi9ub2RlX21vZHVsZXMvQHNlcmlhbHBvcnQvYmlu ZGluZ3MvYnVpbGQvY29uZmlnLmd5cGkKbm9kZS1zcWxpdGUzOgogIC0gb3JkZXJpbmcgaXNzdWVz IGluIGxpYi9ub2RlX21vZHVsZXMvc3FsaXRlMy9idWlsZC9NYWtlZmlsZQogIC0gb3JkZXJpbmcg aXNzdWVzIGluIGxpYi9ub2RlX21vZHVsZXMvc3FsaXRlMy9idWlsZC9jb25maWcuZ3lwaQpub3Rt dWNoOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBzaGFyZS9pbmZvL25vdG11Y2gtdGFnLmlu Zm8uZ3oKbnFwOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiAubW9hcnZtIGZpbGVzCm5zczoK ICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLmNoayBmaWxlcwpudXNoZWxsOgogIC0gdW5pZGVu dGlmaWVkIGlzc3VlcyBpbiBiaW4vbnUKbnlhY2M6CiAgLSBub25kZXRlcm1pbmlzdGljIG9yZGVy aW5nIGVtYmVkZGVkIGluIGd1aWxlIC5nbyBmaWxlcwpueXh0OgogIC0gdW5pZGVudGlmaWVkIGlz c3VlcyBpbiBiaW4vLm55eHQtcmVhbApvY3JvZGp2dToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMg aW4gLnB5YwpvY3RhdmU6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIC5xY2ggYW5kIC5xaGMg ZmlsZXMKb3BlbmJsYXM6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzCm9wZW5ibGFzLWlscDY0Ogog IC0gdW5pZGVudGlmaWVkIGlzc3VlcwpvcGVuamRrOgogIC0gdGltZXN0YW1wcyBpbiAuamFyCiAg LSB0aW1lc3RhbXBzIGluIC5kaXoKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiAuemlwCiAgLSB0aW1l c3RhbXAgaW4gbGlianZtLnNvCm9wZW5tb2xhcjoKICAtIHRpbWVzdGFtcHMgaW4gLnB5YwogIC0g cmFuZG9tbmVzcyBpbiByZXNvdXJjZXNfcmMucHkKb3BlbnNtdHBkLWZpbHRlci1ka2ltc2lnbjoK ICAtIGRhdGUgaW4gc2hhcmUvbWFuL21hbjgvZmlsdGVyLWRraW1zaWduLjguZ3oKICAtIGtlcm5l bCB2ZXJzaW9uIGluIHNoYXJlL21hbi9tYW44L2ZpbHRlci1ka2ltc2lnbi44Lmd6CnBhcmktZ3A6 CiAgLSB0aW1lc3RhbXBzIGluIC5kdmkgKHRleD8gdGV4bGl2ZT8pCnBhdGNod29yazoKICAtIG9y ZGVyaW5nIGlzc3VlIGluIHNoYXJlL3BhdGNod29yay9odGRvY3Mvc3RhdGljZmlsZXMuanNvbgpw ZXJmOgogIC0gb3JkZXJpbmcgaXNzdWVzIGluIGJpbi8qCnBlcmw2LXRhcC1oYXJuZXNzOgogIC0g dW5pZGVudGlmaWVkIGlzc3VlcyBpbiBwcmVjb21waWxlZCBwZXJsNiBmaWxlcwpwZXJsNi16ZWY6 CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIHByZWNvbXBpbGVkIHBlcmw2IGZpbGVzCnBlcmwt Y2xhc3MtbWV0aG9kbWFrZXI6CiAgLSBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBpbiBnZW5lcmF0 ZWQgcGVybCBjb2RlIHBvc3NpYmxlIHBhdGNoCiAgICBodHRwczovL3NhbHNhLmRlYmlhbi5vcmcv cGVybC10ZWFtL21vZHVsZXMvcGFja2FnZXMvbGliY2xhc3MtbWV0aG9kbWFrZXItcGVybC8tL2Js b2IvbWFzdGVyL2RlYmlhbi9wYXRjaGVzL3JlcHJvZHVjaWJsZV9idWlsZAogICAgaHR0cHM6Ly9y dC5jcGFuLm9yZy9QdWJsaWMvQnVnL0Rpc3BsYXkuaHRtbD9pZD0xMDQxNjMKICAgIGZpeCBwdXNo ZWQgZjMxZTU1ZDA4MTkwNjQ1NTdiOWEyYWY2ODdmMDViMTMxZjVjNGYyNgpwZXJsLWVuY29kZS1o YW5leHRyYToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLnNvCnBldHNjOgogIC0gbnVtYmVy IG9mIHByb2Nlc3NvcnMgYW5kIHN5c3RlbSBsb2FkIGVtYmVkZGVkIGluCiAgICBsaWIvcGV0c2Mv Y29uZi9wZXRzY3ZhcmlhYmxlcwogIC0ga2VybmVsIHZlcnNpb24gaW4gaW5jbHVkZS9wZXRzY21h Y2hpbmVpbmZvLmgKcGV0c2MtY29tcGxleDoKICAtIG51bWJlciBvZiBwcm9jZXNzb3JzIGFuZCBz eXN0ZW0gbG9hZCBlbWJlZGRlZCBpbgogICAgbGliL3BldHNjL2NvbmYvcGV0c2N2YXJpYWJsZXMK ICAtIGtlcm5lbCB2ZXJzaW9uIGluIGluY2x1ZGUvcGV0c2NtYWNoaW5laW5mby5oCnBldHNjLWNv bXBsZXgtb3Blbm1waToKICAtIG51bWJlciBvZiBwcm9jZXNzb3JzIGFuZCBzeXN0ZW0gbG9hZCBl bWJlZGRlZCBpbgogICAgbGliL3BldHNjL2NvbmYvcGV0c2N2YXJpYWJsZXMKICAtIGtlcm5lbCB2 ZXJzaW9uIGluIGluY2x1ZGUvcGV0c2NtYWNoaW5laW5mby5oCnBldHNjLW9wZW5tcGk6CiAgLSBu dW1iZXIgb2YgcHJvY2Vzc29ycyBhbmQgc3lzdGVtIGxvYWQgZW1iZWRkZWQgaW4KICAgIGxpYi9w ZXRzYy9jb25mL3BldHNjdmFyaWFibGVzCiAgLSBrZXJuZWwgdmVyc2lvbiBpbiBpbmNsdWRlL3Bl dHNjbWFjaGluZWluZm8uaApwZ2xvYWRlcjoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmlu LwpwaG9ja3VwOgogIC0gdGltZXN0YW1wIGluIC5weWMKcGxvdmVyOgogIC0gdGltZXN0YW1wIGlu IC5weWMKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiAucHljCiAgLSByYW5kb21uZXNzIGluIHJlc291 cmNlc19yYy5weQpwb2x5bWw6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzCnBvcmVjaG9wOgogIC0g dW5pZGVudGlmaWVkIGlzc3Vlcwpwcm9wbGliOgogIC0gdGltZXN0YW1wcyBpbiAuYSBmaWxlcwpw dXJlOgogIC0gb3JkZXJpbmcgaXNzdWVzIGluICJleHRyYWxpYnMiIGluIGxpYi9wa2djb25maWcv cHVyZS5wYwpwd3NhZmU6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gLnppcCBmaWxlcwpweWJpbmQx MToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLnB5YwpweXRob24tYmxvc2M6CiAgLSB1bmlk ZW50aWZpZWQgaXNzdWVzIGNweXRob24qLnNvCnB5dGhvbi1nYW1lcmE6CiAgLSB1bmlkZW50aWZp ZWQgaXNzdWVzIGNweXRob24qLnNvCnB5dGhvbi1udW1iYToKICAtIHVuaWRlbnRpZmllZCBpc3N1 ZXMgaW4gLm5iaSBhbmQgLm5iYyBmaWxlcyBpbiB0ZXN0cy9fX3B5Y2FjaGVfXyBkaXJlY3Rvcmll cwpweXRob24tbnVtcHktbmV4dDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgY3B5dGhvbiouc28K cHl0aG9uLXB5dGVzdDoKICAtIHRpbWVzdGFtcHMgaW4gLnB5YwpweXRob24tc2hpYm9rZW4tMjoK ICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgY3B5dGhvbiouc28KcHl0aG9uLXhhcGlhbi1iaW5kaW5n czoKICAtIHRpbWVzdGFtcHMgaW4gLnB5YwpxdWlja2pzOgogIC0gdW5pZGVudGlmaWVkIGlzc3Vl cyBpbiBsaWIvcXVpY2tqcy9saWJxdWlja2pzLmx0by5hCnJhY2tldDoKICAtIGRpZmZlcmluZyBo YXNoZXMoPykgaW4gdmFyaW91cyAuZGVwIGZpbGVzCnJha3VkbzoKICAtIHVuaWRlbnRpZmllZCBp c3N1ZXMgaW4gLm1vYXJ2bSBmaWxlcwpyYzoKICAtIGRhdGUgZW1iZWRkZWQgaW4gYmluL3JjCnIt Y2xpOgogIC0gcGlkIGVtYmVkZGVkIGluIHNpdGUtbGlicmFyeS9jbGkvUi9jbGkucmRiCnJjdDoK ICAtIHVuZGVudGlmaWVkIGlzc3VlcwpyLWRpbXJlZDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMg aW4gLnJkYiBhbmQgLnJkeCBmaWxlcwpyZWFkeW1lZGlhOgogIC0ga2VybmVsIHZlcnNpb24gaW4g c2Jpbi9taW5pZGxuYWQKcmViYXIzOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbgpyZW5weToK ICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLnJweWMgZmlsZXMKcmVzdGljOgogIC0gZGlmZmVy aW5nIEdPIEJVSUxESUQgaW4gYmluL3Jlc3RpYwpyLWdsbW10bWI6CiAgLSB1bmlkZW50aWZpZWQg aXNzdWVzIGluIC5SRGF0YSBmaWxlcwogIC0gZGlmZmVyaW5nIGhhc2hlcyBpbiBzaXRlLWxpYnJh cnkvZ2xtbVRNQi9kb2MvdHJvdWJsZXNob290aW5nX2NhY2hlL2h0bWwKci1sYXBsYWNlc2RlbW9u OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiAucmRiIGFuZCAucmR4IGZpbGVzCnItbGlnZXI6 CiAgLSB0aW1lc3RhbXBzIGluIC5qYXIKci1tY2x1c3Q6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVz IGluIC5yZGIgZmlsZXMKci1taW5pbWFsOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiAucmRi IGFuZCAucmR4IGZpbGVzCiAgLSBkYXRlIGluIGxpYi9SL2xpYnJhcnkvc3RhdHMvZG9jL3Jlc2hh cGUucGRmCnItbWlzaGE6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIHNpdGUtbGlicmFyeS9t aXNoYS90cmFja2RiL3Rlc3QvLmRiLmNhY2hlCnItb21uaXBhdGhyOgogIC0gdW5pZGVudGlmaWVk IGlzc3VlcyBpbiAucmRiIGZpbGVzCnItcXVhbnRtb2Q6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVz IGluIC5yZGIgYW5kIC5yZHggZmlsZXMKci1yYm93dGllMjoKICAtIHVuaWRlbnRpZmllZCBpc3N1 ZXMgaW4gc2l0ZS1saWJyYXJ5L1Jib3d0aWUyL2Jvd3RpZTIqCnJyZHRvb2w6CiAgLSB1bmlkZW50 aWZpZWQgaXNzdWVzCnItcmVwcjoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gLnJkYiBhbmQg LnJkeCBmaWxlcwpyLXJncmFwaHZpejoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gc2l0ZS1s aWJyYXJ5L1JncmFwaHZpei9saWJzL1JncmFwaHZpei5zbwpyLXJoZGY1ZmlsdGVyczoKICAtIHVu aWRlbnRpZmllZCBpc3N1ZXMgaW4gc2l0ZS1saWJyYXJ5L3JoZGY1ZmlsdGVycy9saWIvbGliSDVa Ymxvc2Muc28Kci1yamF2YToKICAtIHRpbWVzdGFtcHMgaW4gLmphciBmaWxlCiAgLSBvcmRlcmlu ZyBpbiAuamFyIGZpbGUKci1yc2JtbDoKICAtIGtlcm5lbCB2ZXJzaW9uIGluIHNpdGUtbGlicmFy eS9yc2JtbC9TQk1MX29kZVNvbHZlci0xLjcuMGJldGEvY29uZmlnLmxvZwpydGw4ODEyYXUtYWly Y3JhY2stbmctbGludXgtbW9kdWxlOgogIC0gdW5pZGVudGlmaWVkIGRpZmZlcmVuY2VzIGluIC5r byBmaWxlcwpydGw4ODIxY2UtbGludXgtbW9kdWxlOgogIC0gdW5pZGVudGlmaWVkIGRpZmZlcmVu Y2VzIGluIC5rbyBmaWxlcwpyLXRtOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiAucmRiIGFu ZCAucmR4IGZpbGVzCnItdG9waWNtb2RlbHM6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIC5y ZGIgYW5kIC5yZHggZmlsZXMKci10cmFjdG9yLWJhc2U6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVz IGluIC5yZGIgYW5kIC5yZHggZmlsZXMKcnVieS1hZToKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiAu Z2Vtc3BlYwpydWJ5LWFuc2k6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gLmdlbXNwZWMKcnVieS1j aXRydXM6CiAgLSBkYXRlIGluIC5nZW1zcGVjCnJ1YnktY29uY3VycmVudDoKICAtIGRhdGUgaW4g LmdlbXNwZWMKcnVieToKICAtIGRhdGUgaW4gZ2VtX21ha2Uub3V0IGZpbGVzCiAgLSBkYXRlIGlu IE1ha2VmaWxlIGZpbGVzCnJ1YnktZmZpOgogIC0gb3JkZXJpbmcgaXNzdWVzIGluIE1ha2VmaWxl CnJ1YnktbW9uZXktb3Blbi1leGNoYW5nZS1yYXRlczoKICAtIGRhdGUgaW4gLmdlbXNwZWMKcnVi eS1vajoKICAtIGRhdGUgaW4gLmdlbXNwZWMKICAtIG9yZGVyaW5nIGlzc3VlcyBpbiAuZ2Vtc3Bl YwpydWJ5LXBhdHJvbjoKICAtIHRlbXBvcmFyaWx5IGZpbGVuYW1lIGluIG1rbWYubG9nCnJ1Ynkt cGc6CiAgLSB0ZW1wb3JhcmlseSBmaWxlbmFtZSBpbiBta21mLmxvZwogIC0gb3JkZXJpbmcgaXNz dWVzIGluIE1ha2VmaWxlCnJ1YnktcmV4bWw6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gLmdlbXNw ZWMKcnVieS1yamI6CiAgLSB0ZW1wb3JhcmlseSBmaWxlbmFtZSBpbiBta21mLmxvZwogIC0gZXh0 cmEgY29udGVudCBpbiBSQnJpZGdlLmNsYXNzCnJ1Ynktc3lzLWZpbGVzeXN0ZW06CiAgLSBkYXRl IGluIC5nZW1zcGVjCnJ1Ynktc3lzLXVuYW1lOgogIC0gZGF0ZSBpbiAuZ2Vtc3BlYwpydWJ5LXRl cm1pbmZvOgogIC0gZGF0ZSBpbiBnZW1fbWFrZS5vdXQgZmlsZXMKICAtIHRlbXBvcmFyeSBmaWxl bmFtZSBpbiBnZW1fbWFrZS5vdXQgZmlsZXMKICAtIGRhdGUgaW4gTWFrZWZpbGUgZmlsZXMKICAt IHRlbXBvcmFyeSBmaWxlbmFtZSBpbiBNYWtlZmlsZSBmaWxlcwpydWJ5LXRyZWV0b3A6CiAgLSBk YXRlIGluIC5nZW1zcGVjCnJ1Ynktd2FwaXRpOgogIC0gZGF0ZSBpbiAuZ2Vtc3BlYwogIC0gb3Jk ZXJpbmcgaXNzdWVzIGluIE1ha2VmaWxlCnNhbG1vbjoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBp biAuYSBmaWxlCnNiY2wtYmtuci1kYXRhc3RvcmU6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4g LmZhc2wKc2JjbC1idXJnbGVkLWJhdHRlcmllczM6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4g LmZhc2wKc2JjbC1jZmZpOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtY2wt YW5hOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtY2wtY2hhcm1zOgogIC0g dW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtY2wtY29udGFpbmVyczoKICAtIGRhdGUg aW4gdGVzdCBzdW1tYXJ5CiAgLSB0aW1pbmcgaW4gdGVzdCBzdW1tYXJ5CnNiY2wtY2wtZGlza3Nw YWNlOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtY2wtZnJlZXR5cGUyOgog IC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtY2xpbmVub2lzZToKICAtIHVuaWRl bnRpZmllZCBpc3N1ZSBpbiAuZmFzbApzYmNsLWNsLWxpYnV2OgogIC0gdW5pZGVudGlmaWVkIGlz c3VlIGluIC5mYXNsCnNiY2wtY2wtcmRrYWZrYToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiAu ZmFzbApzYmNsLWNsLXVuaWNvZGU6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gLmZhc2wKc2Jj bC1kZXhhZG9yOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2w6CiAgLSB1bmlk ZW50aWZpZWQgaXNzdWUgaW4gLmZhc2wKc2JjbC1nc2xsOgogIC0gdW5pZGVudGlmaWVkIGlzc3Vl IGluIC5mYXNsCnNiY2wtaGRmNS1jZmZpOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNs CiAgLSB0ZW1wb3JhcnkgZmlsZW5hbWVzIGluIC5oZDUKc2JjbC1pb2xpYjoKICAtIHVuaWRlbnRp ZmllZCBpc3N1ZSBpbiAuZmFzbApzYmNsLW1hZ2ljZmZpOgogIC0gdW5pZGVudGlmaWVkIGlzc3Vl IGluIC5mYXNsCnNiY2wtbWV0YWJhbmctYmluZDoKICAtIGRhdGUgaW4gdGVzdCBzdW1tYXJ5CiAg LSB0aW1pbmcgaW4gdGVzdCBzdW1tYXJ5CnNiY2wtbWV0YXRpbGl0aWVzLWJhc2U6CiAgLSBkYXRl IGluIHRlc3Qgc3VtbWFyeQogIC0gdGltaW5nIGluIHRlc3Qgc3VtbWFyeQpzYmNsLW1vbnRlenVt YToKICAtIHVuaWlkZW50aWZpZWQgaXNzZXMgaW4gInNlZ21lbnRzIiBmaWxlcwpzYmNsLW9zaWNh dDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiAuZmFzbApzYmNsLW92ZXJsb3JkOgogIC0gdW5p ZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtcG5nOgogIC0gdW5pZGVudGlmaWVkIGlzc3Vl IGluIC5mYXNsCnNiY2wtcHJvbWV0aGV1czoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZSBpbiAuZmFz bApzYmNsLXB6bXE6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gLmZhc2wKc2JjbC1zdXBlcnRy YWNlOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIC5mYXNsCnNiY2wtd29vOgogIC0gdW5pZGVu dGlmaWVkIGlzc3VlIGluIC5mYXNsCnNjYW5tZW06CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGNw eXRob24qLnNvCnNjaGVtZTQ4OgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGxpYi9zY2hlbWU0 OC0qL3NjaGVtZTQ4LmltYWdlCnNjcm9sbGtlZXBlcjoKICAtIHRpbWVzdGFtcHMgaW4gdmFyL2xv Zy9zY3JvbGxrZWVwZXIubG9nCnNjc2g6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWUgaW4gbGliL3Nj c2gtKi9zY3NoLmltYWdlCnNlZ2VtZWhsOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlIGluIGJpbi8q CnNlcnZlZXo6CiAgLSB0aW1lc3RhbXBzIGluIGJpbi9zZXJ2ZWV6CnNpbGMtdG9vbGtpdDoKICAt IHVuaWRlbnRpZmllZCBpc3N1ZSBpbiBsaWIvKi5zby4qCnNpbmd1bGFyaXR5OgogIC0gdGltZXN0 YW1wcyBpbiBsaWJleGVjL3Npbmd1bGFyaXR5L2Jvb3RzdHJhcC1zY3JpcHRzL2Vudmlyb25tZW50 LnRhcgpza3JpYmlsbzoKICAtIHRpbWVzdGFtcHMgaW4gLmh0bWwgZmlsZXMKICAtIHRpbWVzdGFt cHMgaW4gLnBkZiBmaWxlcwogIC0gdGltZXN0YW1wcyBpbiAuaW5mbyBmaWxlcwpzbGVwYzoKICAt IHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gbGliL2xpYnNsZXBjLnNvLioKc2xlcGMtY29tcGxleDoK ICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gbGliL2xpYnNsZXBjLnNvLioKc2xlcGMtY29tcGxl eC1vcGVubXBpOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBsaWIvbGlic2xlcGMuc28uKgpz bGVwYy1vcGVubXBpOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBsaWIvbGlic2xlcGMuc28u KgpzbWFsbHRhbGs6CiAgLSBzb3J0IG9yZGVyIGluIC5zdGFyIChlbWJlZGRlZCAuemlwKQogIC0g dGltZXN0YW1wcyBpbiAuc3RhciAoZW1iZWRkZWQgLnppcCkKc21sbmo6CiAgLSB1bmlkZW50aWZp ZWQgaXNzdWVzIGluIGJpbiBhbmQgbGliCnNtcGxheWVyOgogIC0gZGF0ZSBpbiBzbXBsYXllci5h cHBkYXRhLnhtbApzb25uZXQ6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIGxpYi9saWJLRjVT b25uZXRDb3JlLnNvLioKc3JhaW46CiAgLSBvcmRlcmluZyBpbiBzaGFyZS9kb2Mvc3JhaW4vaHRt bC8uZG9jdHJlZXMvZW52aXJvbm1lbnQucGlja2xlCnNyZWNvcmQ6CiAgLSB0aW1lc3RhbXBzIGlu IC5wZGYgZ2VuZXJhdGVkIGJ5IGdob3N0c2NyaXB0CnN0YXI6CiAgLSB1bmlkZW50aWZpZWQgaXNz dWVzIGluIGJpbi9TVEFSCnN0YXJsb25nOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBiaW4v U1RBUmxvbmcKc3R1bXB3bToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluL3N0dW1wd20K c3R1bXB3bS13aXRoLXNseW5rOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBiaW4vc3R1bXB3 bQpzdXBlcnN0YXJmaWdodGVyOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBzaGFyZS9zdXBl cnN0YXJmaWdodGVyL3N1cGVyc3RhcmZpZ2h0ZXIucGNrCnN1cmdlLXN5bnRoOgogIC0gb3JkZXJp bmcgb2YgYW5kL29yIGRpZmZlcmluZyAuc3ZnIGZpbGVzIHdpdGhpbiBTdXJnZS5zbwpzd2ktcHJv bG9nOgogIC0gdGltZXN0YW1wcyBpbiAucHJjCiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gbGliL3N3 aXBsL2RvYy9tYW5pbmRleC5kYgogIC0gdGltZXN0YW1wcyBpbiAucGwKICAtIHVuaWRlbnRpZmll ZCBpc3N1ZSBpbiBsaWIvc3dpcGwvbGlicmFyeS9wbGRvYy9kb2NfaHRtbC5xbGYKc3dpc2gtZToK ICAtIG1heWJlIG9yZGVyaW5nIGlzc3VlcyBpbiBiaW4vc3dpc2gtZSBhbmQgbGliL2xpYnN3aXNo LWUqLmEsIG1heWJlIGxvY2FsZSByZWxhdGVkIGZpbGVzCnN5c2xpbnV4OgogIC0gdW5pZGVudGlm aWVkIGlzc3VlcyAobWF5YmUgb2JzY3VyZSB0aW1lc3RhbXBzPykgaW4gYmluL3N5c2xpbnV4LCBz YmluL2V4dGxpbnV4IGFuZCBzaGFyZS9zeXNsaW51eC8qCnRhbzoKICAtIGRhdGVzIGluIHRhb192 ZXJzaW9uIGluIGJpbi90YW8tY29uZmlnCiAgLSB0aW1lc3RhbXBzIGluIERBVEUgaW4gc2hhcmUv dGFvL2V4YW1wbGVzL01ha2VmaWxlCiAgLSBkYXRlcyBpbiBUQU9fVkVSU0lPTiBhbmQgVkVSU0lP TiBpbiBzaGFyZS90YW8vZXhhbXBsZXMvTWFrZWZpbGUKdGVuc29yZmxvdzoKICAtIG9yZGVyaW5n IGluIC5weWMgZmlsZXMKdGV4aW1wYXRpZW50OgogIC0gdGltZXN0YW1wcyBpbiAuZHZpCiAgLSB0 aW1lc3RhbXBzIGluIC5wZGYKdGV4bGl2ZS1jbToKICAtIHRpbWVzdGFtcHMgaW4gLmxvZyBhbmQg LjYwMGdmIGZpbGVzCnRleGxpdmUtZXRleDoKICAtIHRpbWVzdGFtcHMgaW4gLmxvZyBhbmQgLjYw MGdmIGZpbGVzCnRleGxpdmUtZm9udGluc3Q6CiAgLSB0aW1lc3RhbXBzIGluIC5sb2cgZmlsZXMK dGV4bGl2ZS1mb250cy1lYzoKICAtIHRpbWVzdGFtcHMgaW4gLmxvZyBhbmQgLjYwMGdmIGZpbGVz CnRleGxpdmUtZm9udHMtbGF0ZXg6CiAgLSB0aW1lc3RhbXBzIGluIC5sb2cgYW5kIC42MDBnZiBm aWxlcwp0ZXhsaXZlLWZvbnRzLXJzZnM6CiAgLSB0aW1lc3RhbXBzIGluIC5sb2cgYW5kIC42MDBn ZiBmaWxlcwp0ZXhsaXZlLWphZGV0ZXg6CiAgLSB0aW1lc3RhbXBzIGluIC5mbXQgZmlsZXMKdGV4 bGl2ZS1rbnV0aC1saWI6CiAgLSB0aW1lc3RhbXBzIGluIC5sb2cgYW5kIC42MDBnZiBmaWxlcwp0 ZXhsaXZlLWxhdGV4LWJhc2U6CiAgLSB0aW1lc3RhbXBzIGluIC5mbXQgZmlsZXMKICAtIHRpbWVz dGFtcHMgaW4gLmxvZyBmaWxlcwogIC0gdGltZXN0YW1wcyBpbiAuYXV4IGZpbGVzCnRleGxpdmUt bGF0ZXgtY2hhbmdlcGFnZToKICAtIGRhdGUgaW4gLnN0eSBmaWxlcwp0ZXhsaXZlLWxhdGV4LXRy aW1zcGFjZXM6CiAgLSBkYXRlIGluIC5zdHkgZmlsZXMKdGV4bGl2ZS1sYXRleC14a2V5dmFsOgog IC0gdGltZXN0YW1wcyBpbiAuZHZpCnRleGxpdmUtbWV0YWZvbnQ6CiAgLSB0aW1lc3RhbXBzIGlu IG1mLmJhc2UKdGV4bGl2ZS1tZmxvZ286CiAgLSB0aW1lc3RhbXBzIGluIC42MDBnZiBmaWxlcwp0 ZXhsaXZlLXhpbmR5OgogIC0gY2FzZSBkaWZmZXJlbmNlcyAoZS5nLiAiREgiIHZzLiAiZGgiKSBp biAueGR5IGZpbGVzCnRleGxpdmUteG1sdGV4OgogIC0gdGltZXN0YW1wcyBpbiAuZm10IGZpbGVz CnRpbm1vcDoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluL3Rpbm1vcAogIC0gc29ydCBv cmRlciBpbiBlbWJlZGRlZCAubGlzcCBhbmQgLnNjbSBmaWxlcwp0bGEydG9vbHM6CiAgLSBkYXRl IGluIC5qYXIKdG9tZTQ6CiAgLSB1bmlkZW50aWZpZWQgaXNzdWVzIGluIHNoYXJlL3RvbWU0L3Qt ZW5naW5lCnRzdWt1bmRlcmU6CiAgLSB0aW1lc3RhbXBzIGluIC5tbyBmaWxlcwp1Zm9haToKICAt IHRpbWVzdGFtcHMgaW4gLnBrMyAoLnppcCkKICAtIG9yZGVyaW5nIGluIC5wazMgKC56aXApCnVn cmVwOgogIC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBiaW4vdWdyZXAKdWltOgogIC0gb3JkZXJp bmcgaXNzdWVzIGluIHNoYXJlL3VpbS9sb2FkZXIuc2NtIGFuZCBzaGFyZS91aW0vaW5zdGFsbGVk LW1vZHVsZXMuc2NtCnVpbS1ndGs6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gc2hhcmUvdWltL2xv YWRlci5zY20gYW5kIHNoYXJlL3VpbS9pbnN0YWxsZWQtbW9kdWxlcy5zY20KdW5nb29nbGVkLWNo cm9taXVtOgogIC0gdWlkZW50aWZpZWQgaXNzdWVzIGluIHJlc291cmNlcy5wYWsKICAtIHVuaWRl bnRpZmllZCBpc3N1ZXMgaW4gbGliL2Nocm9taXVtCnVua25vd24taG9yaXpvbnM6CiAgLSBkaWZm ZXJlbmNlcyBpbiAucG5nIGZpbGVzCiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gLmpzb24KdXRveDoK ICAtIHRlbXBvcmFyeSBmaWxlbmFtZXMgaW4gYmluLy51dG94LXJlYWwKdjRsMmxvb3BiYWNrLWxp bnV4LW1vZHVsZToKICAtIHVuaWRlbnRpZmllZCBkaWZmZXJlbmNlcyBpbiAua28gZmlsZXMKdmFs YToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluIGFuZCBsaWIKdmhiYS1tb2R1bGU6CiAg LSB1bmlkZW50aWZpZWQgZGlmZmVyZW5jZXMgaW4gLmtvIGZpbGVzCnZpY2U6CiAgLSB1bmlkZW50 aWZpZWQgaXNzdWVzIGluIGJpbgp2aXJ0dW9zby1vc2U6CiAgLSBzb3J0IG9yZGVyIG9yIHJhbmRv bW5lc3MgaW4gc2hhcmUvdmlydHVvc28vdmFkL2lzcGFycWxfZGF2LnZhZAp2aXZpZDoKICAtIHVu aWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluL3ZpdmlkCnZsYzoKICAtIHVpZCBpbiBzaGFyZS92bGMv c2tpbnMyL2RlZmF1bHQudmx0CndpbmU2NDoKICAtIHRpbWVzdGFtcHMgaW4gKi5kbGwuc28sIGNh biBiZSAocGFydGx5PykgbWl0aWdhdGVkIHVzaW5nCiAgICBXSURMX1RJTUVfT1ZFUlJJREUgZW52 aXJvbm1lbnQgdmFyaWFibGUgb3IgcGF0Y2hpbmcgb3V0IGluCiAgICB0b29scy93aWRsL3dyaXRl X21zZnQuYwp3aW5lNjQtc3RhZ2luZzoKICAtIHRpbWVzdGFtcHMgaW4gKi5kbGwuc28KeGphY2tm cmVhazoKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gYmluCnhsaXNwc3RhdDoKICAtIHVuaWRl bnRpZmllZCBpc3N1ZSBpbiBsaWIveGxpc3BzdGF0L3hsaXNwLndrcwp4cGFkbmVvOgogIC0gdW5p ZGVudGlmaWVkIGRpZmZlcmVuY2VzIGluIC5rbyBmaWxlcwp4cHJhOgogIC0gZW1iZWRkZWQgY3B1 IGluZm8gaW4gbGliL3B5dGhvbjMuOS9zaXRlLXBhY2thZ2VzL3hwcmEvYnVpbGRfaW5mby5weSBh bmQgLnB5YwogIC0gdGltZXN0YW1wIGluIC5weWMKeHNub3c6CiAgLSBkYXRlIGluIHNoYXJlL21l dGFpbmZvL3hzbm93LmFwcGRhdGEueG1sCnlhZGlmYToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMg YmluLyBzYmluLyBhbmQgbGliLwp6ZWl0Z2Vpc3Q6CiAgLSBvcmRlcmluZyBpc3N1ZXMgaW4gZW1i ZWRkZWQgVVJMcyBpbiBsaWIvbGliemVpdGdlaXN0LTIuMC5zby4qCnppdGEtYWxzYS1wY21pOgog IC0gdW5pZGVudGlmaWVkIGlzc3VlcyBpbiBsaWIvbGlieml0YS1hbHNhLXBjbWkuc28uMC4zLjIK em4tcG9seToKICAtIHVuaWRlbnRpZmllZCBpc3N1ZXMgaW4gbGliLwp6eW5hZGRzdWJmeDoKICAt IHJhbmRvbSg/KSBudW1iZXIgaW4gbGliL2x2Mi9aeW5BZGRTdWJGWC5sdjIvcHJlc2V0cy50dGwK --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCYwLWFwAKCRDcUY/If5cW qj4eAP9U+NCIJ7vr1/JbxWcOSyuIuRjUB9mz/UndAMj4Ml6YkQD9F4ZxI8ffKIkH bkCXoivhisnSMCZUYXmgDj72UsIiuwQ= =Nmu6 -----END PGP SIGNATURE----- --==-=-=--