From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Liu, Changcheng via lttng-dev" Subject: Re: get function names with lttng-ust-cyg-profile Date: Wed, 24 Jun 2020 09:10:30 +0800 Message-ID: <20200624011030.GA4166363@jerryopenix> References: <20200623143758.GB4160129@jerryopenix> Reply-To: "Liu, Changcheng" Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by lists.lttng.org (Postfix) with ESMTPS id 49s4vr5c62z131S for ; Tue, 23 Jun 2020 21:15:36 -0400 (EDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" To: Christophe =?utf-8?Q?B=C3=A9dard?= , matthew.khouzam@ericsson.com Cc: lttng-dev@lists.lttng.org List-Id: lttng-dev@lists.lttng.org PiAgICBZb3UgY291bGQgdXNlIHRoZSBjb21tYW5kICdubScgdG8gZ2V0IHlvdXIgc3ltYm9scyBh bmQgbG9vayB0aGVtIHVwLiBJCj4gICAgYW0gc3VyZSBCYWJlbHRyYWNlIGNhbiBkbyB0aGlzIGZy b20gYSBweXRob24gbGV2ZWwuIFlvdSBjb3VsZCBhbHNvIHVzZQo+ICAgIGEgR1VJIGJhc2VkIHRy YWNlIHZpZXdlciB0byBnZXQgdGhlIGluZm9ybWF0aW9uLgogICAgICBubSBvbmx5IHNob3dzIHRo ZSBsaW5rZWQgYWRkcmVzcywgYnV0IHRoZSB0cmFjZWQgYWRkcmVzcyBhcmUgdGhlCiAgICAgIGxv YWRlZCBhZGRyZXNzIGluIG1lbW9yeS4gU28sIHRoZXkncmUgZGlmZmVyZW50LgogICAgICBGb3Ig ZXhhbXBsZToKICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgbm0gaW5zdHJ1bWVudCB8IGdyZXAgJ2Fk ZDNcfG1haW4nCiAgICAgIDAwMDAwMDAwMDAwMDExYTkgVCBhZGQzCiAgICAgIDAwMDAwMDAwMDAw MDExZWUgVCBtYWluCgpAQ2hyaXN0b3BoZToKICAgIERvIHlvdSBtZWFuIHRoYXQgYmFiZWx0cmFj ZTIgY2FuIGhlbHAgZ2V0IHRoZSBmdW5jdGlvbiBuYW1lIGFuZCBjYWxsIHNpdGUgb2Zmc2V0PwoK Qi5SLgpDaGFuZ2NoZW5nCgpPbiAxMjo1MiBUdWUgMjMgSnVuLCBDaHJpc3RvcGhlIELDqWRhcmQg d3JvdGU6Cj4gICAgSGksCj4gCj4gICAgICBCYWJlbHRyYWNlIGlzIGRvaW5nIGV4YWN0bHkgd2hh dCBpdCBzaG91bGQgYXMgZmFyIGFzIEkga25vdy4KPiAKPiAgICB5ZXMsIGJ1dCBiYWJlbHRyYWNl IGNhbiBwcm92aWRlIHRoZSBpbmZvcm1hdGlvbiBpZjoKPiAgICAqIGlwIGFuZCB2cGlkIGNvbnRl eHRzIGFyZSBlbmFibGVkIChmb3IgdXNlcnNwYWNlKSwgZS5nLgo+IAo+ICAgICQgbHR0bmcgYWRk LWNvbnRleHQgLS11c2Vyc3BhY2UgLS10eXBlPWlwIC0tdHlwZT12cGlkCj4gCj4gICAgKiBMVFRu ZyBzdGF0ZSBkdW1wIGV2ZW50cyBhcmUgZW5hYmxlZCwgZS5nLgo+IAo+ICAgICQgbHR0bmcgZW5h YmxlLWV2ZW50IC0tdXNlcnNwYWNlICdsdHRuZ191c3Rfc3RhdGVkdW1wOionCj4gCj4gICAgc2Vl IHRoaXMgKGZyb20gYnQyIGJ1dCBpdCBhbHNvIGFwcGxpZXMgdG8KPiAgICBidDEpOiBbMV1odHRw czovL2JhYmVsdHJhY2Uub3JnL2RvY3MvdjIuMC9tYW43L2JhYmVsdHJhY2UyLWZpbHRlci5sdHRu Zwo+ICAgIC11dGlscy5kZWJ1Zy1pbmZvLjcvI2RvYy1sdHRuZy1wcmVyZXEKPiAgICBOb3RlIHRo YXQgdGhlIFB5dGhvbiBiaW5kaW5ncyBmb3IgYmFiZWx0cmFjZSBkb24ndCBwcm92aWRlL2V4cG9z ZSB0aGlzCj4gICAgZGVidWcgaW5mby4KPiAgICBDaHJpc3RvcGhlCj4gICAgT24gVHVlLCAyMyBK dW4gMjAyMCBhdCAxMToxMiwgTWF0dGhldyBLaG91emFtIHZpYSBsdHRuZy1kZXYKPiAgICA8WzJd bHR0bmctZGV2QGxpc3RzLmx0dG5nLm9yZz4gd3JvdGU6Cj4gCj4gICAgSGksCj4gICAgWW91IGhh dmUgdGhlIHBvaW50ZXJzIHRoYXQgYXJlIHRyYWNlZC4gQmFiZWx0cmFjZSBpcyBkb2luZyBleGFj dGx5IHdoYXQKPiAgICBpdCBzaG91bGQgYXMgZmFyIGFzIEkga25vdy4KPiAgICBZb3UgY291bGQg dXNlIHRoZSBjb21tYW5kICdubScgdG8gZ2V0IHlvdXIgc3ltYm9scyBhbmQgbG9vayB0aGVtIHVw LiBJCj4gICAgYW0gc3VyZSBCYWJlbHRyYWNlIGNhbiBkbyB0aGlzIGZyb20gYSBweXRob24gbGV2 ZWwuIFlvdSBjb3VsZCBhbHNvIHVzZQo+ICAgIGEgR1VJIGJhc2VkIHRyYWNlIHZpZXdlciB0byBn ZXQgdGhlIGluZm9ybWF0aW9uLgo+ICAgIEhvcGUgdGhhdCBoZWxwcy4KPiAgICBNYXR0aGV3Cj4g ICAgICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KPiAKPiAgICBGcm9tOiBsdHRuZy1kZXYgPFszXWx0dG5nLWRldi1ib3Vu Y2VzQGxpc3RzLmx0dG5nLm9yZz4gb24gYmVoYWxmIG9mCj4gICAgTGl1LCBDaGFuZ2NoZW5nIHZp YSBsdHRuZy1kZXYgPFs0XWx0dG5nLWRldkBsaXN0cy5sdHRuZy5vcmc+Cj4gICAgU2VudDogVHVl c2RheSwgSnVuZSAyMywgMjAyMCAxMDozNyBBTQo+ICAgIFRvOiBbNV1sdHRuZy1kZXZAbGlzdHMu bHR0bmcub3JnIDxbNl1sdHRuZy1kZXZAbGlzdHMubHR0bmcub3JnPgo+ICAgIENjOiBbN11jaGFu Z2NoZW5nLmxpdUBpbnRlbC5jb20gPFs4XWNoYW5nY2hlbmcubGl1QGludGVsLmNvbT4KPiAgICBT dWJqZWN0OiBbbHR0bmctZGV2XSBnZXQgZnVuY3Rpb24gbmFtZXMgd2l0aCBsdHRuZy11c3QtY3ln LXByb2ZpbGUKPiAKPiAgICBIaSBhbGwsCj4gICAgICAgSSdtIHRyeWluZyB0byB1c2UgbHR0bmct dXN0LWN5Zy1wcm9maWxlIHRvIHRyYWNlIHByb2dyYW0uCj4gICAgICAgRG9lcyBhbnlvbmUga25v dyBob3cgdG8gZ2V0IGZ1bmN0aW9uIG5hbWVzIGFuZCBvZmZzZXQgdGhyb3VnaAo+ICAgIGx0dG5n LXVzdC1jeWctcHJvZmlsZT8KPiAgICAgICBJbiBiZWxvdyBleGFtcGxlLCB0aGUgYmFiZWx0cmFj ZSBjb3VsZCBvbmx5IGdldCB0aGUgZnVuY3Rpb24KPiAgICBlbnRyeS9leGl0IHZhbHVlLgo+ICAg ICAgIDEuIFNvdXJjZSBwcm9ncmFtOiBpbnN0cnVtZW50LmMKPiAgICAgICAgICAgICAxICNpbmNs dWRlIDxzdGRpby5oPgo+ICAgICAgICAgICAgIDIKPiAgICAgICAgICAgICAzIGludCBhZGQzKGlu dCB2YWwpIHsKPiAgICAgICAgICAgICA0ICAgICAgICAgcmV0dXJuIHZhbCArIDM7Cj4gICAgICAg ICAgICAgNSB9Cj4gICAgICAgICAgICAgNgo+ICAgICAgICAgICAgIDcgaW50IG1haW4oaW50IGFy Z2MsIGNoYXIgKiphcmd2KSB7Cj4gICAgICAgICAgICAgOCAgICAgaW50IHggPSA0Owo+ICAgICAg ICAgICAgIDkKPiAgICAgICAgICAgIDEwICAgICBwdXRzKCJQcmVzcyBFbnRlciB0byBjb250aW51 ZS4uLiIpOwo+ICAgICAgICAgICAgMTEgICAgIGdldGNoYXIoKTsKPiAgICAgICAgICAgIDEyCj4g ICAgICAgICAgICAxMyAgICAgeCA9IGFkZDMoeCk7Cj4gICAgICAgICAgICAxNAo+ICAgICAgICAg ICAgMTUgICAgIHJldHVybiAwOwo+ICAgICAgICAgICAgMTYgfQo+ICAgICAgIDIuIGJ1aWxkIHNv dXJjZSBjb2RlOgo+ICAgICAgICAgICAgJCBnY2MgLWcgLWZpbnN0cnVtZW50LWZ1bmN0aW9ucyBp bnN0cnVtZW50LmMgLW8gaW5zdHJ1bWVudAo+ICAgICAgIDMuIHJ1biBwcm9ncmFtOgo+ICAgICAg ICAgICAkCj4gICAgTERfUFJFTE9BRD0vdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYmx0dG5n LXVzdC1jeWctcHJvZmlsZS5zbwo+ICAgIC4vaW5zdHJ1bWVudAo+ICAgICAgIDQuIHN0YXJ0IHRy YWNlIHByb2Nlc3M6Cj4gICAgICAgICAgIHRyYWNlQHRyYWNlOn4vY2MkIHN1ZG8gbHR0bmcgY3Jl YXRlIGluc3RydW1lbnQKPiAgICAgICAgICAgU2Vzc2lvbiBpbnN0cnVtZW50IGNyZWF0ZWQuCj4g ICAgICAgICAgIFRyYWNlcyB3aWxsIGJlIG91dHB1dCB0bwo+ICAgIC9yb290L2x0dG5nLXRyYWNl cy9pbnN0cnVtZW50LTIwMjAwNjIzLTIyMjkxNwo+ICAgICAgICAgICB0cmFjZUB0cmFjZTp+L2Nj JCBzdWRvIGx0dG5nIGVuYWJsZS1jaGFubmVsIHVzZXJfZnVuY190cmFjZQo+ICAgIC0tdXNlcnNw YWNlCj4gICAgICAgICAgIFVTVCBjaGFubmVsIHVzZXJfZnVuY190cmFjZSBlbmFibGVkIGZvciBz ZXNzaW9uIGluc3RydW1lbnQKPiAgICAgICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgc3VkbyBsdHRu ZyBlbmFibGUtZXZlbnQgLS11c2Vyc3BhY2UKPiAgICBsdHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVu Y19lbnRyeSAtLWNoYW5uZWwgdXNlcl9mdW5jX3RyYWNlCj4gICAgICAgICAgIFVTVCBldmVudCBs dHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVuY19lbnRyeSBjcmVhdGVkIGluIGNoYW5uZWwKPiAgICB1 c2VyX2Z1bmNfdHJhY2UKPiAgICAgICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgc3VkbyBsdHRuZyBl bmFibGUtZXZlbnQgLS11c2Vyc3BhY2UKPiAgICBsdHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVuY19l eGl0IC0tY2hhbm5lbCB1c2VyX2Z1bmNfdHJhY2UKPiAgICAgICAgICAgVVNUIGV2ZW50IGx0dG5n X3VzdF9jeWdfcHJvZmlsZTpmdW5jX2V4aXQgY3JlYXRlZCBpbiBjaGFubmVsCj4gICAgdXNlcl9m dW5jX3RyYWNlCj4gICAgICAgICAgIHRyYWNlQHRyYWNlOn4vY2MkIHN1ZG8gbHR0bmcgc3RhcnQK PiAgICAgICAgICAgVHJhY2luZyBzdGFydGVkIGZvciBzZXNzaW9uIGluc3RydW1lbnQKPiAgICAg ICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgc3VkbyBsdHRuZyBkZXN0cm95Cj4gICAgICAgICAgIERl c3Ryb3lpbmcgc2Vzc2lvbiBpbnN0cnVtZW50Li4KPiAgICAgICAgICAgU2Vzc2lvbiBpbnN0cnVt ZW50IGRlc3Ryb3llZAo+ICAgICAgICAgICB0cmFjZUB0cmFjZTp+L2NjJCBzdWRvIGJhYmVsdHJh Y2UKPiAgICAvcm9vdC9sdHRuZy10cmFjZXMvaW5zdHJ1bWVudC0yMDIwMDYyMy0yMjI5MTcKPiAg ICAgICAgICAgWzIyOjI5OjU1LjM4ODYwNzA1OV0gKCs/Lj8/Pz8/Pz8/PykgdHJhY2UKPiAgICBs dHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVuY19lbnRyeTogeyBjcHVfaWQgPSAyIH0sIHsgYWRkciA9 Cj4gICAgMHg1NjI1Qzg4QjAxQTksIGNhbGxfc2l0ZSA9IDB4NTYyNUM4OEIwMjM3IH0KPiAgICAg ICAgICAgWzIyOjI5OjU1LjM4ODYxMjI5M10gKCswLjAwMDAwNTIzNCkgdHJhY2UKPiAgICBsdHRu Z191c3RfY3lnX3Byb2ZpbGU6ZnVuY19leGl0OiB7IGNwdV9pZCA9IDIgfSwgeyBhZGRyID0KPiAg ICAweDU2MjVDODhCMDFBOSwgY2FsbF9zaXRlID0gMHg1NjI1Qzg4QjAyMzcgfQo+ICAgICAgICAg ICBbMjI6Mjk6NTUuMzg4NjEzMjE1XSAoKzAuMDAwMDAwOTIyKSB0cmFjZQo+ICAgIGx0dG5nX3Vz dF9jeWdfcHJvZmlsZTpmdW5jX2V4aXQ6IHsgY3B1X2lkID0gMiB9LCB7IGFkZHIgPQo+ICAgIDB4 NTYyNUM4OEIwMUVFLCBjYWxsX3NpdGUgPSAweDdGRTQwQkQ1QzBCMyB9Cj4gICAgQi5SLgo+ICAg IENoYW5nY2hlbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KbHR0bmctZGV2IG1haWxpbmcgbGlzdApsdHRuZy1kZXZAbGlzdHMubHR0bmcub3JnCmh0dHBz Oi8vbGlzdHMubHR0bmcub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9sdHRuZy1kZXYK 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 X-Spam-Level: X-Spam-Status: No, score=-5.6 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1DC02C433DF for ; Wed, 24 Jun 2020 01:15:41 +0000 (UTC) Received: from lists.lttng.org (lists.lttng.org [167.114.26.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 915922137B for ; Wed, 24 Jun 2020 01:15:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.lttng.org header.i=@lists.lttng.org header.b="0kxzVnii" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 915922137B Authentication-Results: mail.kernel.org; dmarc=pass (p=none dis=none) header.from=lists.lttng.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lttng-dev-bounces@lists.lttng.org Received: from lists-lttng01.efficios.com (localhost [IPv6:::1]) by lists.lttng.org (Postfix) with ESMTP id 49s4vt61Znz13TB; Tue, 23 Jun 2020 21:15:38 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=lists.lttng.org; s=default; t=1592961339; bh=7sqIWtABs/EwClDnxgqdydYK/2UMZ74aGyOZUvJwoZY=; h=Date:To:Cc:References:In-Reply-To:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=0kxzVnii4c8piKMj6kBJ50H9B4UxXOVo92/bQN2GZyU2erwMnDX+/kt/h6OIU15PP x/yhXuhB8gEeiiBx5Wq/BjvSkCogJp63M2yftbRsojA6ovh4EdMV0JxiHVXKKhi+Zh OGqaW8ekqagQgmVz4Ca/6FDLnaUVyXN6KEQqMIYaroVWcy6FIOOts9L+UqVSlPTw4N L7ZwkZWqGIThAocKQ3XIoKzYIk2x3fanhD+qMW4e6DRJLdpGDc57U+5FyBiU4DBeJc a2hUCBfyqv8axy5ZZY5oXfdadd83STRxrtDV8StNcEYTEm6yFwaCDKH1xlSQAO2Cug v6sdHTyC7J/hA== Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by lists.lttng.org (Postfix) with ESMTPS id 49s4vr5c62z131S for ; Tue, 23 Jun 2020 21:15:36 -0400 (EDT) IronPort-SDR: U3CoPEM4yJ/yxaXtDXyrIi6mWI9M/18Etv1A/VCsLOmEDvQLJZ++v1lq8zGTgv/pYw2kvisX7r 5YjD8XZ6rKiA== X-IronPort-AV: E=McAfee;i="6000,8403,9661"; a="145784111" X-IronPort-AV: E=Sophos;i="5.75,273,1589266800"; d="scan'208";a="145784111" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jun 2020 18:14:19 -0700 IronPort-SDR: Ekh/G/Ws2w6EcoGY86Y69mZmF+T+gUqGsakY+cD8JxKTDVy3zIbFkkTdqmfdJlnikk3Ft5DDgS +kowvUGwKIJw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,273,1589266800"; d="scan'208";a="288898698" Received: from jerryopenix.sh.intel.com (HELO jerryopenix) ([10.239.158.121]) by orsmga007.jf.intel.com with ESMTP; 23 Jun 2020 18:14:18 -0700 Date: Wed, 24 Jun 2020 09:10:30 +0800 To: Christophe =?utf-8?Q?B=C3=A9dard?= , matthew.khouzam@ericsson.com Cc: lttng-dev@lists.lttng.org Message-ID: <20200624011030.GA4166363@jerryopenix> References: <20200623143758.GB4160129@jerryopenix> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) Subject: Re: [lttng-dev] get function names with lttng-ust-cyg-profile X-BeenThere: lttng-dev@lists.lttng.org X-Mailman-Version: 2.1.31 Precedence: list List-Id: LTTng development list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: "Liu, Changcheng via lttng-dev" Reply-To: "Liu, Changcheng" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: lttng-dev-bounces@lists.lttng.org Sender: "lttng-dev" Message-ID: <20200624011030.AgpGSBtn5JoC_l3_TOzdeszL1pIMbf_yXUFKKzPElBI@z> PiAgICBZb3UgY291bGQgdXNlIHRoZSBjb21tYW5kICdubScgdG8gZ2V0IHlvdXIgc3ltYm9scyBh bmQgbG9vayB0aGVtIHVwLiBJCj4gICAgYW0gc3VyZSBCYWJlbHRyYWNlIGNhbiBkbyB0aGlzIGZy b20gYSBweXRob24gbGV2ZWwuIFlvdSBjb3VsZCBhbHNvIHVzZQo+ICAgIGEgR1VJIGJhc2VkIHRy YWNlIHZpZXdlciB0byBnZXQgdGhlIGluZm9ybWF0aW9uLgogICAgICBubSBvbmx5IHNob3dzIHRo ZSBsaW5rZWQgYWRkcmVzcywgYnV0IHRoZSB0cmFjZWQgYWRkcmVzcyBhcmUgdGhlCiAgICAgIGxv YWRlZCBhZGRyZXNzIGluIG1lbW9yeS4gU28sIHRoZXkncmUgZGlmZmVyZW50LgogICAgICBGb3Ig ZXhhbXBsZToKICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgbm0gaW5zdHJ1bWVudCB8IGdyZXAgJ2Fk ZDNcfG1haW4nCiAgICAgIDAwMDAwMDAwMDAwMDExYTkgVCBhZGQzCiAgICAgIDAwMDAwMDAwMDAw MDExZWUgVCBtYWluCgpAQ2hyaXN0b3BoZToKICAgIERvIHlvdSBtZWFuIHRoYXQgYmFiZWx0cmFj ZTIgY2FuIGhlbHAgZ2V0IHRoZSBmdW5jdGlvbiBuYW1lIGFuZCBjYWxsIHNpdGUgb2Zmc2V0PwoK Qi5SLgpDaGFuZ2NoZW5nCgpPbiAxMjo1MiBUdWUgMjMgSnVuLCBDaHJpc3RvcGhlIELDqWRhcmQg d3JvdGU6Cj4gICAgSGksCj4gCj4gICAgICBCYWJlbHRyYWNlIGlzIGRvaW5nIGV4YWN0bHkgd2hh dCBpdCBzaG91bGQgYXMgZmFyIGFzIEkga25vdy4KPiAKPiAgICB5ZXMsIGJ1dCBiYWJlbHRyYWNl IGNhbiBwcm92aWRlIHRoZSBpbmZvcm1hdGlvbiBpZjoKPiAgICAqIGlwIGFuZCB2cGlkIGNvbnRl eHRzIGFyZSBlbmFibGVkIChmb3IgdXNlcnNwYWNlKSwgZS5nLgo+IAo+ICAgICQgbHR0bmcgYWRk LWNvbnRleHQgLS11c2Vyc3BhY2UgLS10eXBlPWlwIC0tdHlwZT12cGlkCj4gCj4gICAgKiBMVFRu ZyBzdGF0ZSBkdW1wIGV2ZW50cyBhcmUgZW5hYmxlZCwgZS5nLgo+IAo+ICAgICQgbHR0bmcgZW5h YmxlLWV2ZW50IC0tdXNlcnNwYWNlICdsdHRuZ191c3Rfc3RhdGVkdW1wOionCj4gCj4gICAgc2Vl IHRoaXMgKGZyb20gYnQyIGJ1dCBpdCBhbHNvIGFwcGxpZXMgdG8KPiAgICBidDEpOiBbMV1odHRw czovL2JhYmVsdHJhY2Uub3JnL2RvY3MvdjIuMC9tYW43L2JhYmVsdHJhY2UyLWZpbHRlci5sdHRu Zwo+ICAgIC11dGlscy5kZWJ1Zy1pbmZvLjcvI2RvYy1sdHRuZy1wcmVyZXEKPiAgICBOb3RlIHRo YXQgdGhlIFB5dGhvbiBiaW5kaW5ncyBmb3IgYmFiZWx0cmFjZSBkb24ndCBwcm92aWRlL2V4cG9z ZSB0aGlzCj4gICAgZGVidWcgaW5mby4KPiAgICBDaHJpc3RvcGhlCj4gICAgT24gVHVlLCAyMyBK dW4gMjAyMCBhdCAxMToxMiwgTWF0dGhldyBLaG91emFtIHZpYSBsdHRuZy1kZXYKPiAgICA8WzJd bHR0bmctZGV2QGxpc3RzLmx0dG5nLm9yZz4gd3JvdGU6Cj4gCj4gICAgSGksCj4gICAgWW91IGhh dmUgdGhlIHBvaW50ZXJzIHRoYXQgYXJlIHRyYWNlZC4gQmFiZWx0cmFjZSBpcyBkb2luZyBleGFj dGx5IHdoYXQKPiAgICBpdCBzaG91bGQgYXMgZmFyIGFzIEkga25vdy4KPiAgICBZb3UgY291bGQg dXNlIHRoZSBjb21tYW5kICdubScgdG8gZ2V0IHlvdXIgc3ltYm9scyBhbmQgbG9vayB0aGVtIHVw LiBJCj4gICAgYW0gc3VyZSBCYWJlbHRyYWNlIGNhbiBkbyB0aGlzIGZyb20gYSBweXRob24gbGV2 ZWwuIFlvdSBjb3VsZCBhbHNvIHVzZQo+ICAgIGEgR1VJIGJhc2VkIHRyYWNlIHZpZXdlciB0byBn ZXQgdGhlIGluZm9ybWF0aW9uLgo+ICAgIEhvcGUgdGhhdCBoZWxwcy4KPiAgICBNYXR0aGV3Cj4g ICAgICBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KPiAKPiAgICBGcm9tOiBsdHRuZy1kZXYgPFszXWx0dG5nLWRldi1ib3Vu Y2VzQGxpc3RzLmx0dG5nLm9yZz4gb24gYmVoYWxmIG9mCj4gICAgTGl1LCBDaGFuZ2NoZW5nIHZp YSBsdHRuZy1kZXYgPFs0XWx0dG5nLWRldkBsaXN0cy5sdHRuZy5vcmc+Cj4gICAgU2VudDogVHVl c2RheSwgSnVuZSAyMywgMjAyMCAxMDozNyBBTQo+ICAgIFRvOiBbNV1sdHRuZy1kZXZAbGlzdHMu bHR0bmcub3JnIDxbNl1sdHRuZy1kZXZAbGlzdHMubHR0bmcub3JnPgo+ICAgIENjOiBbN11jaGFu Z2NoZW5nLmxpdUBpbnRlbC5jb20gPFs4XWNoYW5nY2hlbmcubGl1QGludGVsLmNvbT4KPiAgICBT dWJqZWN0OiBbbHR0bmctZGV2XSBnZXQgZnVuY3Rpb24gbmFtZXMgd2l0aCBsdHRuZy11c3QtY3ln LXByb2ZpbGUKPiAKPiAgICBIaSBhbGwsCj4gICAgICAgSSdtIHRyeWluZyB0byB1c2UgbHR0bmct dXN0LWN5Zy1wcm9maWxlIHRvIHRyYWNlIHByb2dyYW0uCj4gICAgICAgRG9lcyBhbnlvbmUga25v dyBob3cgdG8gZ2V0IGZ1bmN0aW9uIG5hbWVzIGFuZCBvZmZzZXQgdGhyb3VnaAo+ICAgIGx0dG5n LXVzdC1jeWctcHJvZmlsZT8KPiAgICAgICBJbiBiZWxvdyBleGFtcGxlLCB0aGUgYmFiZWx0cmFj ZSBjb3VsZCBvbmx5IGdldCB0aGUgZnVuY3Rpb24KPiAgICBlbnRyeS9leGl0IHZhbHVlLgo+ICAg ICAgIDEuIFNvdXJjZSBwcm9ncmFtOiBpbnN0cnVtZW50LmMKPiAgICAgICAgICAgICAxICNpbmNs dWRlIDxzdGRpby5oPgo+ICAgICAgICAgICAgIDIKPiAgICAgICAgICAgICAzIGludCBhZGQzKGlu dCB2YWwpIHsKPiAgICAgICAgICAgICA0ICAgICAgICAgcmV0dXJuIHZhbCArIDM7Cj4gICAgICAg ICAgICAgNSB9Cj4gICAgICAgICAgICAgNgo+ICAgICAgICAgICAgIDcgaW50IG1haW4oaW50IGFy Z2MsIGNoYXIgKiphcmd2KSB7Cj4gICAgICAgICAgICAgOCAgICAgaW50IHggPSA0Owo+ICAgICAg ICAgICAgIDkKPiAgICAgICAgICAgIDEwICAgICBwdXRzKCJQcmVzcyBFbnRlciB0byBjb250aW51 ZS4uLiIpOwo+ICAgICAgICAgICAgMTEgICAgIGdldGNoYXIoKTsKPiAgICAgICAgICAgIDEyCj4g ICAgICAgICAgICAxMyAgICAgeCA9IGFkZDMoeCk7Cj4gICAgICAgICAgICAxNAo+ICAgICAgICAg ICAgMTUgICAgIHJldHVybiAwOwo+ICAgICAgICAgICAgMTYgfQo+ICAgICAgIDIuIGJ1aWxkIHNv dXJjZSBjb2RlOgo+ICAgICAgICAgICAgJCBnY2MgLWcgLWZpbnN0cnVtZW50LWZ1bmN0aW9ucyBp bnN0cnVtZW50LmMgLW8gaW5zdHJ1bWVudAo+ICAgICAgIDMuIHJ1biBwcm9ncmFtOgo+ICAgICAg ICAgICAkCj4gICAgTERfUFJFTE9BRD0vdXNyL2xpYi94ODZfNjQtbGludXgtZ251L2xpYmx0dG5n LXVzdC1jeWctcHJvZmlsZS5zbwo+ICAgIC4vaW5zdHJ1bWVudAo+ICAgICAgIDQuIHN0YXJ0IHRy YWNlIHByb2Nlc3M6Cj4gICAgICAgICAgIHRyYWNlQHRyYWNlOn4vY2MkIHN1ZG8gbHR0bmcgY3Jl YXRlIGluc3RydW1lbnQKPiAgICAgICAgICAgU2Vzc2lvbiBpbnN0cnVtZW50IGNyZWF0ZWQuCj4g ICAgICAgICAgIFRyYWNlcyB3aWxsIGJlIG91dHB1dCB0bwo+ICAgIC9yb290L2x0dG5nLXRyYWNl cy9pbnN0cnVtZW50LTIwMjAwNjIzLTIyMjkxNwo+ICAgICAgICAgICB0cmFjZUB0cmFjZTp+L2Nj JCBzdWRvIGx0dG5nIGVuYWJsZS1jaGFubmVsIHVzZXJfZnVuY190cmFjZQo+ICAgIC0tdXNlcnNw YWNlCj4gICAgICAgICAgIFVTVCBjaGFubmVsIHVzZXJfZnVuY190cmFjZSBlbmFibGVkIGZvciBz ZXNzaW9uIGluc3RydW1lbnQKPiAgICAgICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgc3VkbyBsdHRu ZyBlbmFibGUtZXZlbnQgLS11c2Vyc3BhY2UKPiAgICBsdHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVu Y19lbnRyeSAtLWNoYW5uZWwgdXNlcl9mdW5jX3RyYWNlCj4gICAgICAgICAgIFVTVCBldmVudCBs dHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVuY19lbnRyeSBjcmVhdGVkIGluIGNoYW5uZWwKPiAgICB1 c2VyX2Z1bmNfdHJhY2UKPiAgICAgICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgc3VkbyBsdHRuZyBl bmFibGUtZXZlbnQgLS11c2Vyc3BhY2UKPiAgICBsdHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVuY19l eGl0IC0tY2hhbm5lbCB1c2VyX2Z1bmNfdHJhY2UKPiAgICAgICAgICAgVVNUIGV2ZW50IGx0dG5n X3VzdF9jeWdfcHJvZmlsZTpmdW5jX2V4aXQgY3JlYXRlZCBpbiBjaGFubmVsCj4gICAgdXNlcl9m dW5jX3RyYWNlCj4gICAgICAgICAgIHRyYWNlQHRyYWNlOn4vY2MkIHN1ZG8gbHR0bmcgc3RhcnQK PiAgICAgICAgICAgVHJhY2luZyBzdGFydGVkIGZvciBzZXNzaW9uIGluc3RydW1lbnQKPiAgICAg ICAgICAgdHJhY2VAdHJhY2U6fi9jYyQgc3VkbyBsdHRuZyBkZXN0cm95Cj4gICAgICAgICAgIERl c3Ryb3lpbmcgc2Vzc2lvbiBpbnN0cnVtZW50Li4KPiAgICAgICAgICAgU2Vzc2lvbiBpbnN0cnVt ZW50IGRlc3Ryb3llZAo+ICAgICAgICAgICB0cmFjZUB0cmFjZTp+L2NjJCBzdWRvIGJhYmVsdHJh Y2UKPiAgICAvcm9vdC9sdHRuZy10cmFjZXMvaW5zdHJ1bWVudC0yMDIwMDYyMy0yMjI5MTcKPiAg ICAgICAgICAgWzIyOjI5OjU1LjM4ODYwNzA1OV0gKCs/Lj8/Pz8/Pz8/PykgdHJhY2UKPiAgICBs dHRuZ191c3RfY3lnX3Byb2ZpbGU6ZnVuY19lbnRyeTogeyBjcHVfaWQgPSAyIH0sIHsgYWRkciA9 Cj4gICAgMHg1NjI1Qzg4QjAxQTksIGNhbGxfc2l0ZSA9IDB4NTYyNUM4OEIwMjM3IH0KPiAgICAg ICAgICAgWzIyOjI5OjU1LjM4ODYxMjI5M10gKCswLjAwMDAwNTIzNCkgdHJhY2UKPiAgICBsdHRu Z191c3RfY3lnX3Byb2ZpbGU6ZnVuY19leGl0OiB7IGNwdV9pZCA9IDIgfSwgeyBhZGRyID0KPiAg ICAweDU2MjVDODhCMDFBOSwgY2FsbF9zaXRlID0gMHg1NjI1Qzg4QjAyMzcgfQo+ICAgICAgICAg ICBbMjI6Mjk6NTUuMzg4NjEzMjE1XSAoKzAuMDAwMDAwOTIyKSB0cmFjZQo+ICAgIGx0dG5nX3Vz dF9jeWdfcHJvZmlsZTpmdW5jX2V4aXQ6IHsgY3B1X2lkID0gMiB9LCB7IGFkZHIgPQo+ICAgIDB4 NTYyNUM4OEIwMUVFLCBjYWxsX3NpdGUgPSAweDdGRTQwQkQ1QzBCMyB9Cj4gICAgQi5SLgo+ICAg IENoYW5nY2hlbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KbHR0bmctZGV2IG1haWxpbmcgbGlzdApsdHRuZy1kZXZAbGlzdHMubHR0bmcub3JnCmh0dHBz Oi8vbGlzdHMubHR0bmcub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9sdHRuZy1kZXYK