From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 2/2] docs/hypervisor-guide: Code Coverage Date: Wed, 3 Apr 2019 16:00:00 +0100 Message-ID: <1554303600-27933-3-git-send-email-andrew.cooper3@citrix.com> References: <1554303600-27933-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1554303600-27933-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Artem Mygaiev , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Tim Deegan , Julien Grall , Jan Beulich , Ian Jackson List-Id: xen-devel@lists.xenproject.org RHVyaW5nIGEgZGlzY3Vzc2lvbiBpbiBwZXJzb24sIGl0IHdhcyBpZGVudGlmaWVkIHRoYXQgQ292 ZXJhZ2UgZG9lc24ndApjdXJyZW50bHkgd29yayBmb3IgQVJNIHlldC4gIEFsc28sIHRoZXJlIGFy ZSBhIG51bWJlciBvZiBlcnJvcnMgd2l0aCB0aGUKZXhpc3RpbmcgY292ZXJhZ2UgZG9jdW1lbnQu CgpUYWtlIHRoZSBvcHBvcnR1bml0eSB0byByZXdyaXRlIGl0IGluIFJTVCwgbWFraW5nIGl0IGVh c2llciB0byBmb2xsb3cgZm9yIGEKbm9uLWV4cGVydCB1c2VyLgoKU2lnbmVkLW9mZi1ieTogQW5k cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0tCkNDOiBHZW9yZ2UgRHVu bGFwIDxHZW9yZ2UuRHVubGFwQGV1LmNpdHJpeC5jb20+CkNDOiBJYW4gSmFja3NvbiA8aWFuLmph Y2tzb25AY2l0cml4LmNvbT4KQ0M6IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4KQ0M6 IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4KQ0M6IFN0ZWZh bm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KQ0M6IFRpbSBEZWVnYW4gPHRp bUB4ZW4ub3JnPgpDQzogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KQ0M6IEp1bGllbiBH cmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+CkNDOiBBcnRlbSBNeWdhaWV2IDxhcnRlbV9teWdh aWV2QGVwYW0uY29tPgotLS0KIGRvY3MvaHlwZXJ2aXNvci1ndWlkZS9jb2RlLWNvdmVyYWdlLnJz dCB8IDEwMiArKysrKysrKysrKysrKysrKysrKysrKysrKwogZG9jcy9oeXBlcnZpc29yLWd1aWRl L2luZGV4LnJzdCAgICAgICAgIHwgICAyICsKIGRvY3MvbWlzYy9jb3ZlcmFnZS5wYW5kb2MgICAg ICAgICAgICAgICB8IDEyNCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMyBmaWxl cyBjaGFuZ2VkLCAxMDQgaW5zZXJ0aW9ucygrKSwgMTI0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1v ZGUgMTAwNjQ0IGRvY3MvaHlwZXJ2aXNvci1ndWlkZS9jb2RlLWNvdmVyYWdlLnJzdAogZGVsZXRl IG1vZGUgMTAwNjQ0IGRvY3MvbWlzYy9jb3ZlcmFnZS5wYW5kb2MKCmRpZmYgLS1naXQgYS9kb2Nz L2h5cGVydmlzb3ItZ3VpZGUvY29kZS1jb3ZlcmFnZS5yc3QgYi9kb2NzL2h5cGVydmlzb3ItZ3Vp ZGUvY29kZS1jb3ZlcmFnZS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u MGI3MTgxZgotLS0gL2Rldi9udWxsCisrKyBiL2RvY3MvaHlwZXJ2aXNvci1ndWlkZS9jb2RlLWNv dmVyYWdlLnJzdApAQCAtMCwwICsxLDEwMiBAQAorQ29kZSBDb3ZlcmFnZQorPT09PT09PT09PT09 PQorCitYZW4gY2FuIGJlIGNvbXBpbGVkIHdpdGggY292ZXJhZ2Ugc3VwcG9ydC4gIFdoZW4gY29u ZmlndXJlZCwgWGVuIHdpbGwgcmVjb3JkCit0aGUgY292ZXJhZ2Ugb2YgaXRzIG93biBiYXNpYyBi bG9ja3MuICBCZWluZyBhIHBpZWNlIG9mIHN5c3RlbSBzb2Z0d2FyZSByYXRoZXIKK3RoYW4gYSB1 c2Vyc3BhY2UsIGl0IGNhbid0IGF1dG9tYXRpY2FsbHkgd3JpdGUgY292ZXJhZ2Ugb3V0IHRvIHRo ZSBmaWxlc3lzdGVtLAorc28gc29tZSBleHRyYSBzdGVwcyBhcmUgcmVxdWlyZWQgdG8gY29sbGVj dCBhbmQgcHJvY2VzcyB0aGUgZGF0YS4KKworCitDb21waWxpbmcgWGVuCistLS0tLS0tLS0tLS0t CisKK0NvdmVyYWdlIHN1cHBvcnQgaXMgZGVwZW5kZW50IG9uIHRoZSBjb21waWxlciBhbmQgdG9v bGNoYWluIHVzZWQuICBIb3dldmVyLCBhcworWGVuIGlzbid0IGEgdXNlcnNwYWNlIGFwcGxpY2F0 aW9uLCBpdCBjYW4ndCB1c2UgdGhlIGNvbXBpbGVyIHN1cHBsaWVkIGxpYnJhcnkuCitJbnN0ZWFk LCBYZW4gaGFzIHRvIHByb3ZpZGUgc29tZSBwYXJ0cyBvZiB0aGUgaW1wbGVtZW50YXRpb24gaXRz ZWxmLgorCitGb3IgeDg2LCBjb3ZlcmFnZSBzdXBwb3J0IHdhcyBpbnRyb2R1Y2VkIHdpdGggR0ND IDMuNCBvciBsYXRlciwgYW5kIENsYW5nIDMuOQorb3IgbGF0ZXIsIGFuZCBYZW4gaXMgY29tcGF0 aWJsZSB3aXRoIHRoZXNlLiAgSG93ZXZlciwgdGhlIGNvbXBpbGVyIGludGVybmFsCitmb3JtYXRz IGRvIGNoYW5nZSBvY2Nhc2lvbmFsbHksIGFuZCB0aGlzIG1heSBpbnZvbHZlIGFkanVzdG1lbnRz IHRvIFhlbi4KK1doaWxlIHdlIGRvIG91ciBiZXN0IHRvIGtlZXAgdXAgd2l0aCB0aGVzZSBjaGFu Z2VzLCBYZW4gbWF5IG5vdCBiZSBjb21wYXRpYmxlCit3aXRoIGJsZWVkaW5nIGVkZ2UgY29tcGls ZXJzLgorCitUbyBidWlsZCB3aXRoIGNvdmVyYWdlIHN1cHBvcnQsIGVuYWJsZSBgYENPTkZJR19D T1ZFUkFHRWBgIGluIEtjb25maWcuICBUaGUKK2J1aWxkIHN5c3RlbSB3aWxsIGF1dG9tYXRpY2Fs bHkgc2VsZWN0IHRoZSBhcHByb3ByaWF0ZSBmb3JtYXQgYmFzZWQgb24gdGhlCitjb21waWxlciBp biB1c2UuCisKK1RoZSByZXN1bHRpbmcgYmluYXJ5IHdpbGwgcmVjb3JkIGl0cyBvd24gY292ZXJh Z2Ugd2hpbGUgcnVubmluZy4KKworLi4gd2FybmluZzo6CisKKyAgRm9yIEFSTSBidWlsZHMsIHdo aWxlIFhlbiB3aWxsIGNvbXBpbGUgd2l0aCBgYENPTkZJR19DT1ZFUkFHRWBgIGVuYWJsZWQsIHRo ZQorICByZXN1bHRpbmcgYmluYXJ5IHdpbGwgbm90IHN1Y2Nlc3NmdWxseSBib290IGlmIGl0IGV4 Y2VlZHMgMk1CIGluIHNpemUuCisgIFhlbidzIGVhcmx5IG1lbW9yeSBtYW5hZ2VtZW50IGNvZGUg bmVlZHMgYWRqdXN0aW5nIHRvIHJlc29sdmUgdGhpcyBpc3N1ZS4KKworCitBY2Nlc3NpbmcgdGhl IHJhdyBjb3ZlcmFnZSBkYXRhCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1Ro ZSBgYFNZU0NUTF9jb3ZlcmFnZV9vcGBgIGh5cGVyY2FsbCBpcyB1c2VkIHRvIGludGVyYWN0IHdp dGggdGhlIGNvdmVyYWdlCitkYXRhLiAgQSBkb20wIHVzZXJzcGFjZSBoZWxwZXIsIGBgeGVuY29u dmBgIGlzIHByb3ZpZGVkIGFzIHdlbGwsIHdoaWNoIHRoaW5seQord3JhcHMgdGhpcyBoeXBlcmNh bGwuCisKK1RoZSBgYHJlYWRgYCBzdWJjb21tYW5kIGNhbiBiZSB1c2VkIHRvIG9idGFpbiB0aGUg cmF3IGNvdmVyYWdlIGRhdGE6OgorCisgIFtyb290QGhvc3Qgfl0jIHhlbmNvdiByZWFkID4gY292 ZXJhZ2UuZGF0CisKK1RoaXMgaXMgdG9vbGNoYWluLXNwZWNpZmljIGRhdGEgYW5kIG5lZWRzIHRv IGJlIGZlZCBiYWNrIHRvIHRoZSBhcHByb3ByaWF0ZQorcHJvZ3JhbXMgdG8gcG9zdC1wcm9jZXNz LgorCitBbHRlcm5hdGl2ZWx5LCB0aGUgYGByZXNldGBgIHN1YmNvbW1hbmQgY2FuIGJlIHVzZWQg cmVzZXQgYWxsIGNvdW50ZXJzIGJhY2sgdG8KKzA6OgorCisgIFtyb290QGhvc3Qgfl0jIHhlbmNv diByZXNldAorCisKK0dDQyBjb3ZlcmFnZQorLS0tLS0tLS0tLS0tCisKK0EgYnVpbGQgdXNpbmcg R0NDJ3MgY292ZXJhZ2Ugd2lsbCByZXN1bHQgaW4gYGAqLmdjbm9gYCBhcnRlZmFjdCBmb3IgZXZl cnkKK29iamVjdCBmaWxlLiAgVGhlIHJhdyBjb3ZlcmFnZSBkYXRhIG5lZWRzIHNwbGl0dGluZyB0 byBmb3JtIHRoZSBtYXRjaGluZworYGAqLmdjZGFgYCBmaWxlcy4KKworQW4gZXhhbXBsZSBvZiBo b3cgdG8gdmlldyB0aGUgZGF0YSBpcyBhcyBmb2xsb3dzLiAgSXQgYWRkaXRpb25hbGx5IGRlcGVu ZHMgb24KK3ByZXNlbmNlIG9mIGBgbGNvdmBgIHdoaWNoIGlzIGEgZ3JhcGhpY2FsIGZyb250ZW5k IHRvIGBgZ2NvdmBgLgorCisqIE9idGFpbiB0aGUgcmF3IGNvdmVyYWdlIGRhdGEgZnJvbSB0aGUg dGVzdCBob3N0LCBhbmQgcHVsbCBpdCBiYWNrIHRvIHRoZQorICBidWlsZCB3b3JraW5nIHRyZWUu CisqIFVzZSBgYHhlbmNvdl9zcGxpdGBgIHRvIGV4dHJhY3QgdGhlIGBgKi5nY2RhYGAgZmlsZXMu ICBOb3RlIHRoYXQgZnVsbCBidWlsZAorICBwYXRocyBhcmUgdXNlZCBieSB0aGUgdG9vbHMsIHNv IHNwbGl0dGluZyBuZWVkcyB0byBvdXRwdXQgcmVsYXRpdmUgdG8gYGAvYGAuCisqIFVzZSBgYGdl bmluZm9gYCB0byBwb3N0LXByb2Nlc3MgdGhlIHJhdyBkYXRhLgorKiBVc2UgYGBnZW5odG1sYGAg dG8gcmVuZGVyIHRoZSByZXN1bHRzIGFzIEhUTUwuCisqIFZpZXcgdGhlIHJlc3VsdHMgaW4gYSBi cm93c2VyLgorCis6OgorCisgIHhlbi5naXQveGVuJCBzc2ggcm9vdEBob3N0IHhlbmNvdiByZWFk ID4gY292ZXJhZ2UuZGF0CisgIHhlbi5naXQveGVuJCAuLi90b29scy94ZW5jb3Zfc3BsaXQgY292 ZXJhZ2UuZGF0IC0tb3V0cHV0LWRpcj0vCisgIHhlbi5naXQveGVuJCBnZW5pbmZvIC4gLW8gY292 LmluZm8KKyAgeGVuLmdpdC94ZW4kIGdlbmh0bWwgY292LmluZm8gLW8gY292LworICB4ZW4uZ2l0 L3hlbiQgJEJST1dTRVIgY292L2luZGV4Lmh0bWwKKworQ2xhbmcgY292ZXJhZ2UKKy0tLS0tLS0t LS0tLS0tCisKK0FuIGV4YW1wbGUgb2YgaG93IHRvIHZpZXcgdGhlIGRhdGEgaXMgYXMgZm9sbG93 cy4KKworKiBPYnRhaW4gdGhlIHJhdyBjb3ZlcmFnZSBkYXRhIGZyb20gdGhlIHRlc3QgaG9zdCwg YW5kIHB1bGwgaXQgYmFjayB0byB0aGUKKyAgYnVpbGQgd29ya2luZyB0cmVlLgorKiBVc2UgYGBs bHZtLXByb2ZkYXRhYGAgdG8gcG9zdC1wcm9jZXNzIHRoZSByYXcgZGF0YS4KKyogVXNlIGBgbGx2 bS1jb3Ygc2hvd2BgIGluIGNvbWJpbmF0aW9uIHdpdGggYGB4ZW4tc3ltc2BgIGZyb20gdGhlIGJ1 aWxkIHRvCisgIHJlbmRlciB0aGUgcmVzdWx0cyBhcyBIVE1MLgorKiBWaWV3IHRoZSByZXN1bHRz IGluIGEgYnJvd3Nlci4KKworOjoKKworICB4ZW4uZ2l0L3hlbiQgc3NoIHJvb3RAaG9zdCB4ZW5j b3YgcmVhZCA+IHhlbi5wcm9mcmF3CisgIHhlbi5naXQveGVuJCBsbHZtLXByb2ZkYXRhIG1lcmdl IHhlbi5wcm9mcmF3IC1vIHhlbi5wcm9mZGF0YQorICB4ZW4uZ2l0L3hlbiQgbGx2bS1jb3Ygc2hv dyAtZm9ybWF0PWh0bWwgLW91dHB1dC1kaXI9Y292LyB4ZW4tc3ltcyAtaW5zdHItcHJvZmlsZT14 ZW4ucHJvZmRhdGEKKyAgeGVuLmdpdC94ZW4kICRCUk9XU0VSIGNvdi9pbmRleC5odG1sCisKK0Z1 bGwgZG9jdW1lbnRhdGlvbiBvbiBDbGFuZydzIGNvdmVyYWdlIGNhcGFiaWxpdGllcyBjYW4gYmUg Zm91bmQgYXQ6CitodHRwczovL2NsYW5nLmxsdm0ub3JnL2RvY3MvU291cmNlQmFzZWRDb2RlQ292 ZXJhZ2UuaHRtbApkaWZmIC0tZ2l0IGEvZG9jcy9oeXBlcnZpc29yLWd1aWRlL2luZGV4LnJzdCBi L2RvY3MvaHlwZXJ2aXNvci1ndWlkZS9pbmRleC5yc3QKaW5kZXggM2UwY2FkYS4uY2JjYWUzOSAx MDA2NDQKLS0tIGEvZG9jcy9oeXBlcnZpc29yLWd1aWRlL2luZGV4LnJzdAorKysgYi9kb2NzL2h5 cGVydmlzb3ItZ3VpZGUvaW5kZXgucnN0CkBAIC0zLDMgKzMsNSBAQCBIeXBlcnZpc29yIGRvY3Vt ZW50YXRpb24KIAogLi4gdG9jdHJlZTo6CiAgIDptYXhkZXB0aDogMgorCisgIGNvZGUtY292ZXJh Z2UKZGlmZiAtLWdpdCBhL2RvY3MvbWlzYy9jb3ZlcmFnZS5wYW5kb2MgYi9kb2NzL21pc2MvY292 ZXJhZ2UucGFuZG9jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNTU0NjU5Li4wMDAw MDAwCi0tLSBhL2RvY3MvbWlzYy9jb3ZlcmFnZS5wYW5kb2MKKysrIC9kZXYvbnVsbApAQCAtMSwx MjQgKzAsMCBAQAotIyBDb3ZlcmFnZSBzdXBwb3J0IGZvciBYZW4KLQotQ292ZXJhZ2Ugc3VwcG9y dCBhbGxvd3MgeW91IHRvIGdldCBjb3ZlcmFnZSBpbmZvcm1hdGlvbiBmcm9tIFhlbiBleGVjdXRp b24uCi1Zb3UgY2FuIHNlZSBob3cgbWFueSB0aW1lcyBhIGxpbmUgaXMgZXhlY3V0ZWQuCi0KLVNv bWUgY29tcGlsZXJzIGhhdmUgc3BlY2lmaWMgb3B0aW9ucyB0aGF0IGVuYWJsZSB0aGUgY29sbGVj dGlvbiBvZiB0aGlzCi1pbmZvcm1hdGlvbi4gRXZlcnkgYmFzaWMgYmxvY2sgaW4gdGhlIGNvZGUg d2lsbCBiZSBpbnN0cnVtZW50ZWQgYnkgdGhlIGNvbXBpbGVyCi10byBjb21wdXRlIHRoZXNlIHN0 YXRpc3RpY3MuIEl0IHNob3VsZCBub3QgYmUgdXNlZCBpbiBwcm9kdWN0aW9uIGFzIGl0IHNsb3dz Ci1kb3duIHlvdXIgaHlwZXJ2aXNvci4KLQotIyBHQ09WIChHQ0MgY292ZXJhZ2UpCi0KLSMjIEVu YWJsZSBjb3ZlcmFnZQotCi1UZXN0IGNvdmVyYWdlIHN1cHBvcnQgY2FuIGJlIHR1cm5lZCBvbiBj b21waWxpbmcgWGVuIHdpdGggdGhlIGBDT05GSUdfQ09WRVJBR0VgCi1vcHRpb24gc2V0IHRvIGB5 YC4KLQotQ2hhbmdlIHlvdXIgYC5jb25maWdgIG9yIHJ1biBgbWFrZSAtQyB4ZW4gbWVudWNvbmZp Z2AuCi0KLSMjIEV4dHJhY3QgY292ZXJhZ2UgZGF0YQotCi1UbyBleHRyYWN0IGRhdGEgeW91IHVz ZSBhIHNpbXBsZSB1dGlsaXR5IGNhbGxlZCBgeGVuY292YC4KLUl0IGFsbG93cyB5b3UgdG8gZG8g MiBvcGVyYXRpb25zOgotCi0qIGB4ZW5jb3YgcmVhZGAgZXh0cmFjdCBkYXRhCi0qIGB4ZW5jb3Yg cmVzZXRgIHJlc2V0IGFsbCBjb3ZlcmFnZSBjb3VudGVycwotCi1Bbm90aGVyIHV0aWxpdHkgKGB4 ZW5jb3Zfc3BsaXRgKSBpcyB1c2VkIHRvIHNwbGl0IGV4dHJhY3RlZCBkYXRhIGZpbGUgaW50bwot ZmlsZXMgbmVlZGVkIGJ5IHVzZXJzcGFjZSB0b29scy4KLQotIyMgU3BsaXQgY292ZXJhZ2UgZGF0 YQotCi1PbmNlIHlvdSBleHRyYWN0ZWQgZGF0YSBmcm9tIFhlbiwgaXQgaXMgdGltZSB0byBjcmVh dGUgZmlsZXMgd2hpY2ggdGhlIGNvdmVyYWdlCi10b29scyBjYW4gdW5kZXJzdGFuZC4gVG8gZG8g aXQgeW91IG5lZWQgdG8gcnVuIGB4ZW5jb3Zfc3BsaXRgIHV0aWxpdHkuCi0KLVRoZSB1dGlsaXR5 IGp1c3QgdGFrZXMgYW4gaW5wdXQgZmlsZSBhbmQgc3BsaXRzIHRoZSBibG9iIGludG8gZ2NjIC5n Y2RhIGZpbGVzCi1pbiB0aGUgc2FtZSBkaXJlY3RvcnkgdGhhdCB5b3UgZXhlY3V0ZSB0aGUgc2Ny aXB0LiBBcyBmaWxlIG5hbWVzIGFyZSBnZW5lcmF0ZWQKLXJlbGF0aXZlIHRvIHRoZSBjdXJyZW50 IGRpcmVjdG9yeSwgaXQgY291bGQgYmUgYSBnb29kIGlkZWEgdG8gcnVuIHRoZSBzY3JpcHQKLWZy b20gYC9gIG9uIHlvdXIgYnVpbGQgbWFjaGluZS4KLQotQ29kZSBmb3Igc3BsaXR0aW5nIHRoZSBi bG9iIGlzIHB1dCBpbiBhbm90aGVyIHV0aWxpdHkgZm9yIHNvbWUgcmVhc29uOgotKiBJdCBpcyBz aW1wbGVyIHRvIG1haW50YWluIGEgaGlnaCBsZXZlbCBzY3JpcHQgdGhhbiBhIEMgcHJvZ3JhbTsK LSogWW91IGRvbid0IG5lZWQgdG8gZXhlY3V0ZSBvbiB0aGUgWGVuIGhvc3Qgc28geW91IGp1c3Qg bmVlZCB0byBjb3B5IHRoZSBmaWxlIHRvCi0gIHlvdXIgZGV2ZWxvcG1lbnQgYm94ICh5b3UgdXN1 YWxseSBuZWVkIGRldmVsb3BtZW50IGZpbGVzIGFueXdheSkuCi0KLSMjIFBvc3NpYmxlIHVzZQot Ci0qKlRoaXMgc2VjdGlvbiBpcyBqdXN0IGFuIGV4YW1wbGUgb24gaG93IHRvIHVzZSB0aGVzZSB0 b29scyEqKgotCi1UaGlzIGV4YW1wbGUgYXNzdW1lcyB5b3UgY29tcGlsZWQgWGVuIGZyb20gYH4v eGVuLXVuc3RhYmxlYCBhbmQgaW5zdGFsbGVkIGludG8KLXRoZSBob3N0LiAqKkNvbnNpZGVyIHRo YXQgaWYgeW91IGV2ZW4gcmVjb21waWxlIFhlbiB5b3UgYXJlIG5vdCBhYmxlIHRvIHVzZQotYmxv YiBleHRyYWN0ZWQgZnJvbSB4ZW5jb3YhKioKLQotKiBFbnN1cmUgdGhlIGBsY292YCBwYWNrYWdl IGlzIGluc3RhbGxlZAotKiBGcm9tIHRoZSBYZW4gaG9zdCBtYWNoaW5lIGV4dHJhY3QgdGhlIGNv dmVyYWdlIGJsb2IKLQotICAgICAgICBjZCAvcm9vdAotICAgICAgICB4ZW5jb3YgcmVhZCBjb3Zl cmFnZS5kYXQKLQotKiBDb3B5IHRoZSBleHRyYWN0ZWQgYmxvYiB0byB5b3VyIGRldiBtYWNoaW5l Ci0KLSAgICAgICAgY2QgfgotICAgICAgICBzY3Agcm9vdEBteWhvc3Q6Y292ZXJhZ2UuZGF0Ci0K LSogRXh0cmFjdCB0aGUgY292ZXJhZ2UgaW5mb3JtYXRpb24KLQotICAgICAgICAoY2QgLyAmJiB4 ZW5jb3Zfc3BsaXQgfi9jb3ZlcmFnZS5kYXQpCi0KLSogUHJvZHVjZSBjb3ZlcmFnZSBodG1sIG91 dHB1dAotCi0gICAgICAgIGNkIH4veGVuLXVuc3RhYmxlCi0gICAgICAgIHJtIC1yZiBjb3YuaW5m byBjb3YKLSAgICAgICAgZ2VuaW5mbyAtbyBjb3YuaW5mbyB4ZW4KLSAgICAgICAgbWtkaXIgY292 Ci0gICAgICAgIGdlbmh0bWwgLW8gY292IGNvdi5pbmZvCi0KLSogU2VlIG91dHB1dCBpbiBhIGJy b3dzZXIKLQotICAgICAgICBmaXJlZm94IGNvdi9pbmRleC5odG1sCi0KLSMgTExWTSBjb3ZlcmFn ZQotCi0jIyBFbmFibGUgY292ZXJhZ2UKLQotQ292ZXJhZ2UgY2FuIGJlIGVuYWJsZWQgdXNpbmcg YSBLY29uZmlnIG9wdGlvbiwgZnJvbSB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeQotdXNlIHRoZSBm b2xsb3dpbmcgY29tbWFuZCB0byBkaXNwbGF5IHRoZSBLY29uZmlnIG1lbnU6Ci0KLSAgICBtYWtl IC1DIHhlbiBtZW51Y29uZmlnIGNsYW5nPXkKLQotVGhlIGNvZGUgY292ZXJhZ2Ugb3B0aW9uIGNh biBiZSBmb3VuZCBpbnNpZGUgb2YgdGhlICJEZWJ1Z2dpbmcgT3B0aW9ucyIKLXNlY3Rpb24uIEFm dGVyIGVuYWJsaW5nIGl0IGp1c3QgY29tcGlsZSBYZW4gYXMgeW91IHdvdWxkIG5vcm1hbGx5IGRv OgotCi0gICAgbWFrZSB4ZW4gY2xhbmc9eQotCi0jIyBFeHRyYWN0IGNvdmVyYWdlIGRhdGEKLQot TExWTSBjb3ZlcmFnZSBjYW4gYmUgZXh0cmFjdGVkIGZyb20gdGhlIGh5cGVydmlzb3IgdXNpbmcg dGhlIGB4ZW5jb3ZgIHRvb2wuCi1UaGUgZm9sbG93aW5nIGFjdGlvbnMgYXJlIGF2YWlsYWJsZToK LQotKiBgeGVuY292IHJlYWRgIGV4dHJhY3QgZGF0YQotKiBgeGVuY292IHJlc2V0YCByZXNldCBh bGwgY292ZXJhZ2UgY291bnRlcnMKLSogYHhlbmNvdiByZWFkLXJlc2V0YCBleHRyYWN0IGRhdGEg YW5kIHJlc2V0IGNvdW50ZXJzIGF0IHRoZSBzYW1lIHRpbWUuCi0KLSMjIFBvc3NpYmxlIHVzZQot Ci0qKlRoaXMgc2VjdGlvbiBpcyBqdXN0IGFuIGV4YW1wbGUgb24gaG93IHRvIHVzZSB0aGVzZSB0 b29scyEqKgotCi1UaGlzIGV4YW1wbGUgYXNzdW1lcyB5b3UgY29tcGlsZWQgWGVuIGFuZCBjb3Bp ZWQgdGhlIHhlbi1zeW1zIGZpbGUgZnJvbQoteGVuL3hlbi1zeW1zIGludG8geW91ciBjdXJyZW50 IGRpcmVjdG9yeS4KLQotKiBFeHRyYWN0IHRoZSBjb3ZlcmFnZSBkYXRhIGZyb20gWGVuOgotCi0g ICAgeGVuY292IHJlYWQgeGVuLnByb2ZyYXcKLQotKiBDb252ZXJ0IHRoZSBkYXRhIGludG8gYSBw cm9maWxlLiBOb3RlIHRoYXQgeW91IGNhbiBtZXJnZSBtb3JlIHRoYW4gb25lCi0gIHByb2ZyYXcg ZmlsZSBpbnRvIGEgc2luZ2xlIHByb2ZkYXRhIGZpbGUuCi0KLSAgICBsbHZtLXByb2ZkYXRhIG1l cmdlIHhlbi5wcm9mcmF3IC1vIHhlbi5wcm9mZGF0YQotCi0qIEdlbmVyYXRlIGEgSFRNTCByZXBv cnQgb2YgdGhlIGNvZGUgY292ZXJhZ2U6Ci0KLSAgICBsbHZtLWNvdiBzaG93IC1mb3JtYXQ9aHRt bCAtb3V0cHV0LWRpcj1jb3YvIHhlbi1zeW1zIC1pbnN0ci1wcm9maWxlPXhlbi5wcm9mZGF0YQot Ci0qIE9wZW4gY292L2luZGV4Lmh0bWwgd2l0aCB5b3VyIGJyb3dzZXIgaW4gb3JkZXIgdG8gZGlz cGxheSB0aGUgcHJvZmlsZS4KLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp c3RpbmZvL3hlbi1kZXZlbA==