From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailout01.t-online.de (mailout01.t-online.de [194.25.134.80]) by sourceware.org (Postfix) with ESMTPS id 483653858D37 for ; Mon, 15 Aug 2022 13:04:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 483653858D37 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=t-online.de Authentication-Results: sourceware.org; spf=none smtp.mailfrom=t-online.de Received: from fwd75.dcpf.telekom.de (fwd75.aul.t-online.de [10.223.144.101]) by mailout01.t-online.de (Postfix) with SMTP id E87243A60 for ; Mon, 15 Aug 2022 15:04:55 +0200 (CEST) Received: from [192.168.2.101] ([79.230.170.147]) by fwd75.t-online.de with (TLSv1.3:TLS_AES_256_GCM_SHA384 encrypted) esmtp id 1oNZlz-2o1Tyi0; Mon, 15 Aug 2022 15:04:51 +0200 Subject: Re: [PATCH setup] Add view mode "Unneeded" To: "cygwin-apps@cygwin.com" References: <68d66187-7b70-9fb0-fd12-e1dca7e08399@t-online.de> <7ac0957d-b881-d276-733d-3b3736dab14b@dronecode.org.uk> From: Christian Franke Message-ID: Date: Mon, 15 Aug 2022 15:04:51 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 SeaMonkey/2.53.12 MIME-Version: 1.0 In-Reply-To: <7ac0957d-b881-d276-733d-3b3736dab14b@dronecode.org.uk> Content-Type: multipart/mixed; boundary="------------1C1998D74B3F4D7522398894" X-TOI-EXPURGATEID: 150726::1660568691-01453B16-8EA9C9D8/0/0 CLEAN NORMAL X-TOI-MSGID: d9c04a37-f064-40f4-8cf2-4eeb0a66da77 X-Spam-Status: No, score=-8.3 required=5.0 tests=BAYES_00, BODY_8BITS, FREEMAIL_FROM, GIT_PATCH_0, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: cygwin-apps@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin package maintainer discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Aug 2022 13:04:59 -0000 This is a multi-part message in MIME format. --------------1C1998D74B3F4D7522398894 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Jon Turney wrote: > On 02/08/2022 13:17, Christian Franke wrote: >> In long standing cygwin installations, many no longer needed >> automatically installed packages (e.g. libicuNN) accumulate. This >> patch adds a new view which is possibly helpful to cleanup packages >> manually. >> >> Some possible later enhancements: >> - automatically refresh this view (a few seconds) after the user >> changed a package status as this may add or remove entries. >> - add a keyboard shortcut (^U) to the list view for "Uninstall this >> package and then select next package" >> > > Thanks.  This looks good. > > I think perhaps a better approach would be a view showing all packages > which aren't user_picked, or a dependency of a user_picked package. This would drop the ability to easily clean up user_picked packages without later conflicts. The attached new patch splits this into two views "Removable" (not "Uninstallable" due to possible ambiguity with "cannot be installed") and "Unneeded" (or "Stale" ?). > > (If I've read the code correctly your implementation has the weakness > that if e.g. appA -> libbB -> libC, which is then changed to appA -> > libD -> libE, it will only show libC as unneeded, then libB on the > next run?) I'm not sure for this case. It may be correct again after the view is refreshed during the same run. In general, this ad-hoc algorithm does not handle all corner cases. It should be sufficient if installation cleanup is done in a separate run. > > >> +// Scan installed or desired packages and collect the names of packages >> +// which provide the dependencies of other packages or are member of >> +// category "Base". >> +static void FindNeededPackages (const packagedb & db, >> std::set & needed) >> +{ >> +  std::map providedBy; >> +  for (const auto & p : db.packages) >> +    { >> +      const packagemeta & pkg = *p.second; >> +      if (!pkg.isBinary ()) >> +        continue; >> +      if (!(pkg.desired && (pkg.installed || pkg.picked ()))) >> +        continue; > > This seems redundant.  Why can't this be just !pkg.desired? Yes, fixed. I originally wanted to handle the "install source package without the binary" case here. During development of "Ctrl+I/R/U" patch, I learned that this could not happen. > This should also update the tooltip for the view dropdown > (IDS_VIEWBUTTON_TOOLTIP) to describe the new view. > Done. Open issue: An easy way to refresh the views after Uninstall requests (Ctrl+L ?). --------------1C1998D74B3F4D7522398894 Content-Type: text/plain; charset=UTF-8; name="0001-Add-view-modes-Removable-and-Unneeded.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Add-view-modes-Removable-and-Unneeded.patch" RnJvbSBiMzE2NzRkODA5YTcxYmYxN2JiNjIxYzc0ZTViYTdiM2RmM2NkODBhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RpYW4gRnJhbmtlIDxjaHJpc3RpYW4uZnJh bmtlQHQtb25saW5lLmRlPgpEYXRlOiBNb24sIDE1IEF1ZyAyMDIyIDE0OjIxOjM2ICswMjAw ClN1YmplY3Q6IFtQQVRDSF0gQWRkIHZpZXcgbW9kZXMgIlJlbW92YWJsZSIgYW5kICJVbm5l ZWRlZCIKClRoZXNlIHZpZXdzIHNob3cgdXNlciBwaWNrZWQgb3IgYXV0b21hdGljYWxseSBp bnN0YWxsZWQgcGFja2FnZXMgd2hpY2gKY291bGQgYmUgc2FmZWx5IHJlbW92ZWQuCi0tLQog UGlja1ZpZXcuY2MgICB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLQogUGlja1ZpZXcuaCAgICB8ICAyICsrCiByZXMvZW4vcmVzLnJj IHwgMTIgKysrKysrKysrKystCiByZXMvZnIvcmVzLnJjIHwgIDQgKysrKwogcmVzb3VyY2Uu aCAgICB8ICAyICsrCiA1IGZpbGVzIGNoYW5nZWQsIDcxIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvUGlja1ZpZXcuY2MgYi9QaWNrVmlldy5jYwppbmRl eCBjOTYxYjlmLi43ZDYwZDhhIDEwMDY0NAotLS0gYS9QaWNrVmlldy5jYworKysgYi9QaWNr Vmlldy5jYwpAQCAtMTcsNiArMTcsNyBAQAogI2luY2x1ZGUgIlBpY2tQYWNrYWdlTGluZS5o IgogI2luY2x1ZGUgIlBpY2tDYXRlZ29yeUxpbmUuaCIKICNpbmNsdWRlIDxhbGdvcml0aG0+ CisjaW5jbHVkZSA8c2V0PgogI2luY2x1ZGUgPGxpbWl0cy5oPgogI2luY2x1ZGUgPHNobHdh cGkuaD4KIApAQCAtMjgsNiArMjksMzkgQEAKICNpbmNsdWRlICJMb2dTaW5nbGV0b24uaCIK ICNpbmNsdWRlICJFeGNlcHRpb24uaCIKIAorLy8gU2NhbiBkZXNpcmVkIHBhY2thZ2VzIGFu ZCBjb2xsZWN0IHRoZSBuYW1lcyBvZiBwYWNrYWdlcyB3aGljaCBwcm92aWRlIHRoZQorLy8g ZGVwZW5kZW5jaWVzIG9mIG90aGVyIGRlc2lyZWQgcGFja2FnZXMgb3IgYXJlIG1lbWJlciBv ZiBjYXRlZ29yeSAiQmFzZSIuCitzdGF0aWMgdm9pZCBGaW5kTmVlZGVkUGFja2FnZXMgKGNv bnN0IHBhY2thZ2VkYiAmIGRiLCBzdGQ6OnNldDxzdGQ6OnN0cmluZz4gJiBuZWVkZWQpCit7 CisgIHN0ZDo6bWFwPHN0ZDo6c3RyaW5nLCBzdGQ6OnN0cmluZz4gcHJvdmlkZWRCeTsKKyAg Zm9yIChjb25zdCBhdXRvICYgcCA6IGRiLnBhY2thZ2VzKQorICAgIHsKKyAgICAgIGNvbnN0 IHBhY2thZ2VtZXRhICYgcGtnID0gKnAuc2Vjb25kOworICAgICAgaWYgKCFwa2cuaXNCaW5h cnkgKCkpCisgICAgICAgIGNvbnRpbnVlOworICAgICAgaWYgKCFwa2cuZGVzaXJlZCkKKyAg ICAgICAgY29udGludWU7CisgICAgICBmb3IgKGNvbnN0IFBhY2thZ2VTcGVjaWZpY2F0aW9u ICpzIDogcGtnLmRlc2lyZWQucHJvdmlkZXMgKCkpCisgICAgICAgIHByb3ZpZGVkQnkuaW5z ZXJ0ICh7cy0+cGFja2FnZU5hbWUgKCksIHBrZy5uYW1lfSk7CisgICAgfQorICBmb3IgKGNv bnN0IGF1dG8gJiBwIDogZGIucGFja2FnZXMpCisgICAgeworICAgICAgY29uc3QgcGFja2Fn ZW1ldGEgJiBwa2cgPSAqcC5zZWNvbmQ7CisgICAgICBpZiAoIXBrZy5pc0JpbmFyeSAoKSkK KyAgICAgICAgY29udGludWU7CisgICAgICBpZiAocGtnLmNhdGVnb3JpZXMuY291bnQgKCJC YXNlIikpCisgICAgICAgIG5lZWRlZC5pbnNlcnQgKHBrZy5uYW1lKTsKKyAgICAgIGlmICgh cGtnLmRlc2lyZWQpCisgICAgICAgIGNvbnRpbnVlOworICAgICAgZm9yIChjb25zdCBQYWNr YWdlU3BlY2lmaWNhdGlvbiAqcyA6IHBrZy5kZXNpcmVkLmRlcGVuZHMgKCkpIHsKKyAgICAg ICAgY29uc3QgYXV0byBpID0gcHJvdmlkZWRCeS5maW5kIChzLT5wYWNrYWdlTmFtZSAoKSk7 CisgICAgICAgIGlmIChpID09IHByb3ZpZGVkQnkuZW5kICgpKQorICAgICAgICAgIGNvbnRp bnVlOworICAgICAgICBuZWVkZWQuaW5zZXJ0IChpLT5zZWNvbmQpOworICAgICAgfQorICAg IH0KK30KKwogdm9pZAogUGlja1ZpZXc6OnNldFZpZXdNb2RlICh2aWV3cyBtb2RlKQogewpA QCAtNDcsNiArODEsMTEgQEAgUGlja1ZpZXc6OnNldFZpZXdNb2RlICh2aWV3cyBtb2RlKQog ICAgIH0KICAgZWxzZQogICAgIHsKKyAgICAgIHN0ZDo6c2V0PHN0ZDo6c3RyaW5nPiBuZWVk ZWQ7CisgICAgICBpZiAodmlld19tb2RlID09IFBpY2tWaWV3Ojp2aWV3czo6UGFja2FnZVJl bW92YWJsZQorICAgICAgICAgIHx8IHZpZXdfbW9kZSA9PSBQaWNrVmlldzo6dmlld3M6OlBh Y2thZ2VVbm5lZWRlZCkKKyAgICAgICAgRmluZE5lZWRlZFBhY2thZ2VzIChkYiwgbmVlZGVk KTsKKwogICAgICAgLy8gaXRlcmF0ZSB0aHJvdWdoIGV2ZXJ5IHBhY2thZ2UKICAgICAgIGZv ciAocGFja2FnZWRiOjpwYWNrYWdlY29sbGVjdGlvbjo6aXRlcmF0b3IgaSA9IGRiLnBhY2th Z2VzLmJlZ2luICgpOwogICAgICAgICAgICAgaSAhPSBkYi5wYWNrYWdlcy5lbmQgKCk7ICsr aSkKQEAgLTc3LDcgKzExNiwxNSBAQCBQaWNrVmlldzo6c2V0Vmlld01vZGUgKHZpZXdzIG1v ZGUpCiAKICAgICAgICAgICAgICAgLy8gIlVzZXJQaWNrIiA6IGluc3RhbGxlZCBwYWNrYWdl cyB0aGF0IHdlcmUgcGlja2VkIGJ5IHVzZXIKICAgICAgICAgICAgICAgfHwgKHZpZXdfbW9k ZSA9PSBQaWNrVmlldzo6dmlld3M6OlBhY2thZ2VVc2VyUGlja2VkICYmCi0gICAgICAgICAg ICAgICAgICAocGtnLmluc3RhbGxlZCAmJiBwa2cudXNlcl9waWNrZWQpKSkKKyAgICAgICAg ICAgICAgICAgIChwa2cuaW5zdGFsbGVkICYmIHBrZy51c2VyX3BpY2tlZCkpCisKKyAgICAg ICAgICAgICAgLy8gIlJlbW92YWJsZSIgOiB1c2VyIHBpY2tlZCBwYWNrYWdlcyB0aGF0IGNv dWxkIGJlIHNhZmVseSByZW1vdmVkCisgICAgICAgICAgICAgIHx8ICh2aWV3X21vZGUgPT0g UGlja1ZpZXc6OnZpZXdzOjpQYWNrYWdlUmVtb3ZhYmxlICYmCisgICAgICAgICAgICAgICAg ICAocGtnLmluc3RhbGxlZCAmJiBwa2cudXNlcl9waWNrZWQgJiYgIW5lZWRlZC5jb3VudCAo cGtnLm5hbWUpKSkKKworICAgICAgICAgICAgICAvLyAiVW5uZWVkZWQiIDogYXV0byBpbnN0 YWxsZWQgcGFja2FnZXMgdGhhdCBjb3VsZCBiZSBzYWZlbHkgcmVtb3ZlZAorICAgICAgICAg ICAgICB8fCAodmlld19tb2RlID09IFBpY2tWaWV3Ojp2aWV3czo6UGFja2FnZVVubmVlZGVk ICYmCisgICAgICAgICAgICAgICAgICAocGtnLmluc3RhbGxlZCAmJiAhcGtnLnVzZXJfcGlj a2VkICYmICFuZWVkZWQuY291bnQgKHBrZy5uYW1lKSkpKQogICAgICAgICAgICAgewogICAg ICAgICAgICAgICAvLyBGaWx0ZXIgYnkgcGFja2FnZSBuYW1lCiAgICAgICAgICAgICAgIGlm IChwYWNrYWdlRmlsdGVyU3RyaW5nLmVtcHR5ICgpCkBAIC0xMTEsNiArMTU4LDEwIEBAIFBp Y2tWaWV3Ojptb2RlX2NhcHRpb24gKHZpZXdzIG1vZGUpCiAgICAgICByZXR1cm4gSURTX1ZJ RVdfTk9USU5TVEFMTEVEOwogICAgIGNhc2Ugdmlld3M6OlBhY2thZ2VVc2VyUGlja2VkOgog ICAgICAgcmV0dXJuIElEU19WSUVXX1BJQ0tFRDsKKyAgICBjYXNlIHZpZXdzOjpQYWNrYWdl UmVtb3ZhYmxlOgorICAgICAgcmV0dXJuIElEU19WSUVXX1JFTU9WQUJMRTsKKyAgICBjYXNl IHZpZXdzOjpQYWNrYWdlVW5uZWVkZWQ6CisgICAgICByZXR1cm4gSURTX1ZJRVdfVU5ORUVE RUQ7CiAgICAgY2FzZSB2aWV3czo6Q2F0ZWdvcnk6CiAgICAgICByZXR1cm4gSURTX1ZJRVdf Q0FURUdPUlk7CiAgICAgZGVmYXVsdDoKZGlmZiAtLWdpdCBhL1BpY2tWaWV3LmggYi9QaWNr Vmlldy5oCmluZGV4IDFlMTRhNzQuLjQ4MzM0MTQgMTAwNjQ0Ci0tLSBhL1BpY2tWaWV3LmgK KysrIGIvUGlja1ZpZXcuaApAQCAtMzYsNiArMzYsOCBAQCBwdWJsaWM6CiAgICAgUGFja2Fn ZUtlZXBzLAogICAgIFBhY2thZ2VTa2lwcywKICAgICBQYWNrYWdlVXNlclBpY2tlZCwKKyAg ICBQYWNrYWdlUmVtb3ZhYmxlLAorICAgIFBhY2thZ2VVbm5lZWRlZCwKICAgICBDYXRlZ29y eSwKICAgfTsKIApkaWZmIC0tZ2l0IGEvcmVzL2VuL3Jlcy5yYyBiL3Jlcy9lbi9yZXMucmMK aW5kZXggNjQ0YjI1Mi4uZmM2MWU1OSAxMDA2NDQKLS0tIGEvcmVzL2VuL3Jlcy5yYworKysg Yi9yZXMvZW4vcmVzLnJjCkBAIC01MzcsNyArNTM3LDE1IEBAIEJFR0lOCiAgICAgICAgImFu ZCBoYXZlbid0IGJlZW4gc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbi5cbiIKICAgICAgICAi XG4iCiAgICAgICAgIlBpY2tlZDogU2hvdyBpbnN0YWxsZWQgcGFja2FnZXMgdGhhdCB3ZXJl IHNlbGVjdGVkLCBub3QgaW5zdGFsbGVkICIKLSAgICAgICAiYXMgYSBkZXBlbmRlbmN5LiIK KyAgICAgICAiYXMgYSBkZXBlbmRlbmN5LlxuIgorICAgICAgICJcbiIKKyAgICAgICAiUmVt b3ZhYmxlOiBTaG93IGluc3RhbGxlZCBwYWNrYWdlcyB0aGF0IHdlcmUgc2VsZWN0ZWQgYW5k IGNvdWxkIGJlICIKKyAgICAgICAic2FmZWx5IHJlbW92ZWQuICBObyBvdGhlciBpbnN0YWxs ZWQgb3Igc2VsZWN0ZWQgcGFja2FnZXMgZGVwZW5kIG9uICIKKyAgICAgICAidGhlc2UgcGFj a2FnZXMuXG4iCisgICAgICAgIlxuIgorICAgICAgICJVbm5lZWRlZDogU2hvdyBhdXRvbWF0 aWNhbGx5IGluc3RhbGxlZCBwYWNrYWdlcyB0aGF0IGNvdWxkIG5vdyBiZSAiCisgICAgICAg InNhZmVseSByZW1vdmVkLiAgT3RoZXIgaW5zdGFsbGVkIG9yIHNlbGVjdGVkIHBhY2thZ2Vz IG5vIGxvbmdlciAiCisgICAgICAgImRlcGVuZCBvbiB0aGVzZSBwYWNrYWdlcy4iCiAgICAg SURTX0hJREVPQlNfVE9PTFRJUCAgICAgIklmIHNlbGVjdGVkLCBzZXR1cCB3aWxsIGhpZGUg cGFja2FnZXMgaW4gY2F0ZWdvcmllcyAiCiAgICAgICAgIndpdGggbmFtZXMgdGhhdCBiZWdp biB3aXRoICdfJy4gIFN1Y2ggcGFja2FnZXMgYXJlIHVzdWFsbHkgZW1wdHkgIgogICAgICAg ICJwbGFjZWhvbGRlcnMgZm9yIHBhY2thZ2VzIHRoYXQgaGF2ZSBiZWVuIHJlbW92ZWQgb3Ig cmVuYW1lZCwgb3IgYXJlICIKQEAgLTU3OCw2ICs1ODYsOCBAQCBCRUdJTgogICAgIElEU19W SUVXX1VQVE9EQVRFICJVcCBUbyBEYXRlIgogICAgIElEU19WSUVXX05PVElOU1RBTExFRCAi Tm90IEluc3RhbGxlZCIKICAgICBJRFNfVklFV19QSUNLRUQgIlBpY2tlZCIKKyAgICBJRFNf VklFV19SRU1PVkFCTEUgIlJlbW92YWJsZSIKKyAgICBJRFNfVklFV19VTk5FRURFRCAiVW5u ZWVkZWQiCiAgICAgSURTX1ZJRVdfQ0FURUdPUlkgIkNhdGVnb3J5IgogICAgIElEU19DT0xV TU5fUEFDS0FHRSAiUGFja2FnZSIKICAgICBJRFNfQ09MVU1OX0NVUlJFTlQgIkN1cnJlbnQi CmRpZmYgLS1naXQgYS9yZXMvZnIvcmVzLnJjIGIvcmVzL2ZyL3Jlcy5yYwppbmRleCBhMGE3 OTA5Li42ODFhZWE0IDEwMDY0NAotLS0gYS9yZXMvZnIvcmVzLnJjCisrKyBiL3Jlcy9mci9y ZXMucmMKQEAgLTUyNCw2ICs1MjQsOCBAQCBCRUdJTgogICAgICAgICJcbiIKICAgICAgICAi Q2hvaXNpIDogbW9udHJlIGxlcyBwYXF1ZXRzIGluc3RhbGzDqXMgcXVpIG9udCDDqXTDqSBz w6lsZWN0aW9ubsOpcywgZXQgbm9uIGluc3RhbGzDqXMgIgogICAgICAgICJwb3VyIHLDqXNv dWRyZSB1bmUgZMOpcGVuZGFuY2UuIgorICAgICAgIC8vICJSZW1vdmFibGU6IC4uLiBYWFg6 IE1pc3NpbmcgdHJhbnNsYXRpb24iCisgICAgICAgLy8gIlVubmVlZGVkOiAuLi4gWFhYOiBN aXNzaW5nIHRyYW5zbGF0aW9uIgogICAgIElEU19ISURFT0JTX1RPT0xUSVAgICAgICJMJ2Fz c2lzdGFudCBjYWNoZXJhIGxlcyBwYXF1ZXRzIGRlcyBjYXTDqWdvcmllcyBkb250ICIKICAg ICAgICAibGUgbm9tIGNvbW1lbmNlIHBhciAnXycuICBDZXMgcGFxdWV0cyBzb250IHZpZGVz IGV0IHNvbnQgZGVzIGVtcGxhY2VtZW50cyAiCiAgICAgICAgInBvdXIgZGVzIHBhcXVldHMg w6lsaW1pbsOpcyBvdSByZW5vbW3DqXMsIG91IGVuY29yZSBkZXMgcGFxdWV0cyAiCkBAIC01 NjQsNiArNTY2LDggQEAgQkVHSU4KICAgICBJRFNfVklFV19VUFRPREFURSAiw4Agam91ciIK ICAgICBJRFNfVklFV19OT1RJTlNUQUxMRUQgIk5vbiBpbnN0YWxsw6kiCiAgICAgSURTX1ZJ RVdfUElDS0VEICJTw6lsZWN0aW9ubsOpIgorICAgIC8vIElEU19WSUVXX1JFTU9WQUJMRSAi WFhYOiBtaXNzaW5nIHRyYW5zbGF0aW9uIgorICAgIC8vIElEU19WSUVXX1VOTkVFREVEICJY WFg6IG1pc3NpbmcgdHJhbnNsYXRpb24iCiAgICAgSURTX1ZJRVdfQ0FURUdPUlkgICJDYXTD qWdvcmllIgogICAgIElEU19DT0xVTU5fUEFDS0FHRSAiUGFxdWV0IgogICAgIElEU19DT0xV TU5fQ1VSUkVOVCAiQWN0dWVsIgpkaWZmIC0tZ2l0IGEvcmVzb3VyY2UuaCBiL3Jlc291cmNl LmgKaW5kZXggMjY2OGRkOS4uY2ZlODYwYiAxMDA2NDQKLS0tIGEvcmVzb3VyY2UuaAorKysg Yi9yZXNvdXJjZS5oCkBAIC0xMDUsNiArMTA1LDggQEAKICNkZWZpbmUgSURTX0ZJTEVfSU5V U0VfTVNHICAgICAgICAgICAgICAgMTIwOAogI2RlZmluZSBJRFNfREVQUkVDQVRFRF9XSU5E T1dTX1ZFUlNJT04gICAxMjA5CiAjZGVmaW5lIElEU19ERVBSRUNBVEVEX1dJTkRPV1NfQVJD SCAgICAgIDEyMTAKKyNkZWZpbmUgSURTX1ZJRVdfUkVNT1ZBQkxFICAgICAgICAgICAgICAg MTIxMQorI2RlZmluZSBJRFNfVklFV19VTk5FRURFRCAgICAgICAgICAgICAgICAxMjEyCiAK ICNkZWZpbmUgSURTX0hFTFBURVhUX0NPTVBBQ1RPUyAgICAgICAgICAgMTUwMAogI2RlZmlu ZSBJRFNfSEVMUFRFWFRfUFVCS0VZICAgICAgICAgICAgICAxNTAxCi0tIAoyLjM3LjEKCg== --------------1C1998D74B3F4D7522398894--