From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 99D05C433FE for ; Mon, 16 May 2022 22:58:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=NBLREWYZ6AYuNCHUBsOgVQdjmv9oWDp5xvxZuQqgqSo=; b=WbbGeTd6LKBHsM iiCqFEnLJ/AjiyWgooGx8GifAx25JYbSmH6XI/81lUlzjzM/YTerQeTIjYDXpWkav9xY6fHTn5jO7 CHAwNm3Tof/Al7lztf8ngTmj3tZgwBDqGSuU/T9VvkURiBu88SBh6egMuakkq+qMJzXHiY8Xq6K85 cGeB4Tr6m4BJsu2bSO8HIM5hQF1OdWp79fQgjlFeT6tmN6xpJCPmkfn6hYKQRqHJ/0ii58T9az3CP zQcnrGfskmxAdaT8rVW/gSG8wOHA+EVtEL+ZhZHjcboNBaPdavxxOIX253nXTVa/ZSFZaGbBNjJSb Twceezh7nWEmTBqLpzyw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nqjeW-00AZaF-JJ; Mon, 16 May 2022 22:57:24 +0000 Received: from mail-io1-xd34.google.com ([2607:f8b0:4864:20::d34]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nqje0-00AZEO-Ay for linux-arm-kernel@lists.infradead.org; Mon, 16 May 2022 22:56:55 +0000 Received: by mail-io1-xd34.google.com with SMTP id a10so17586031ioe.9 for ; Mon, 16 May 2022 15:56:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=qcZZHg+TLqIZsJwY0xT23BgALoUDhOorLW9Ut6wOSOw=; b=FqvigUMS8JGQuCA1Nsz2ZCQW0CGL3/J+5HWxfwlJkBB+UD2M1w5l1guOsm4XdY8k/W WgCsM8XzRwK+/bIP+d2+9ScKj8PHlGPJ1NS6rD85hbumfsuEfqXAqYJg1LrGn3oLCdK2 3YrkXF2ps9m5n1IxyBNEVCtPHeTXpNFBejUIASmi8jsanEGgyVyJtU/lcKRvoYGeqc93 Fh3/9oFFW5CCoI354AHf6i0PlZUmIffGcw9GPuf8C2zyHoB2+5Px+mHNmPxg2xss+v09 P7+mkOG/dOsAgj84+bp0J0Hzac+r1XdD0yCCcc8NcCDTTbVTYmaTa3/JCujLwAxtyJPv xasA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=qcZZHg+TLqIZsJwY0xT23BgALoUDhOorLW9Ut6wOSOw=; b=dr3ZnAjTK7T8XObloC6FaSGKkWPKqUtMxzxT3SxH+pAEPt+K1gQQIFKNul7nghzj8x p0tjN97SOT3TKyGHIM6+izjPpdS+Wq2kTdRmMfNzBDrghsXBu/IkzPc3eKIiS5GGT9zj 84S7KT6KNkUsOSUxeDWrt2JXCY/4/PELGvf1b7HThQePN4o0ixHuZl5hCKnlNTQTBvCU wxWRZtg/KIa6JL6Sid6gyo1XCEQnZvm521ozfge7oEchiZdwE00w5I1xRyWkh2nh3XZe PEicJTVXBxOcH57m0bghTFOg3+W7C2WhxowLIetaBKyVNMhdwiLc6U9gm4t3an+zEFvM e82Q== X-Gm-Message-State: AOAM530h8RPoEC+xKwYYDPiY2RIzAzvbUNzYeojscllH8AMa7Jg+9YID +FjvdfSgmGg0UKnl4/AKXLo= X-Google-Smtp-Source: ABdhPJy5J7Mt2Dw8Hniu35JQaJ+4z10SEom9QpdbA6SOCZgC0kdiBY6n9OBegQMCb5L4wG4Q1Di/8A== X-Received: by 2002:a02:b804:0:b0:32d:fc36:b397 with SMTP id o4-20020a02b804000000b0032dfc36b397mr10079451jam.271.1652741809030; Mon, 16 May 2022 15:56:49 -0700 (PDT) Received: from frodo.hsd1.co.comcast.net ([2601:284:8204:2010::dd9f]) by smtp.googlemail.com with ESMTPSA id k26-20020a02661a000000b0032b74686763sm3133949jac.76.2022.05.16.15.56.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 May 2022 15:56:48 -0700 (PDT) From: Jim Cromie To: jbaron@akamai.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Cc: gregkh@linuxfoundation.org, daniel.vetter@ffwll.ch, seanpaul@chromium.org, robdclark@gmail.com, rostedt@goodmis.org, mathieu.desnoyers@efficios.com, quic_saipraka@quicinc.com, will@kernel.org, catalin.marinas@arm.com, quic_psodagud@quicinc.com, maz@kernel.org, arnd@arndb.de, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, mingo@redhat.com, jim.cromie@gmail.com, David Airlie , Jani Nikula , Joonas Lahtinen , Pekka Paalanen , Thomas Zimmermann , =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Chris Wilson Subject: [RFC PATCH v2 00/27] DRM.debug on DYNAMIC_DEBUG, add trace events Date: Mon, 16 May 2022 16:56:13 -0600 Message-Id: <20220516225640.3102269-1-jim.cromie@gmail.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220516_155652_450794_AB9A00F5 X-CRM114-Status: GOOD ( 21.75 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RFJNLmRlYnVnIEFQSSBpcyAyMyBtYWNyb3MsIGlzc3VpbmcgMTAgZXhjbHVzaXZlIGNhdGVnb3Jp ZXMgb2YgZGVidWcKbWVzc2FnZXMuICBCeSByb3VnaCBjb3VudCwgdGhleSBhcmUgdXNlZCA1MTQw IHRpbWVzIGluIHRoZSBrZXJuZWwuClRoZXNlIGFsbCBjYWxsIGRybV9kYmcgb3IgZHJtX2RldmRi Zywgd2hpY2ggY2FsbCBkcm1fZGVidWdfZW5hYmxlZCgpLAp3aGljaCBjaGVja3MgYml0cyBpbiBn bG9iYWwgX19kcm1fZGVidWcuICBTb21lIG9mIHRoZXNlIGFyZSBwYWdlLWZsaXBzCmFuZCB2Ymxh bmtzLCBhbmQgZ2V0IGNhbGxlZCBvZnRlbi4KCkRZTkFNSUNfREVCVUcgKHdpdGggQ09ORklHX0pV TVBfTEFCRUwpIGlzIGJ1aWx0IHRvIGF2b2lkIHRoaXMga2luZCBvZgp3b3JrLCB3aXRoIE5PT1Bk IGp1bXAvY2FsbHNpdGVzLgoKVGhpcyBwYXRjaHNldCBpcyBSRkMgYmVjYXVzZToKLSBpdCB0b3Vj aGVzIDIuNSBzdWJzeXN0ZW1zOiBkeW5kYmcsIGRybSwgdHJhY2VmcyAobmV3IGV2ZW50cykKLSBk eW5kYmcgY2xhc3Mgc3VwcG9ydCBpcyBidWlsdCBmb3IgZHJtLCBuZWVkcyBpdCBmb3IgdmFsaWRh dGlvbgotIG5ldyBhcGksIHVzZWQgYnkgZHJtCi0gYmlnIG1lbW9yeSBpbXBhY3QsIHdpdGggNTEw MCBuZXcgcHItZGVidWcgY2FsbHNpdGVzLgotIGRybSBjbGFzcyBiaWtlc2hlZGRpbmcgb3Bwb3J0 dW5pdGllcwotIG90aGVycywgbmFtZXMgZXRjLgoKRFlOQU1JQ19ERUJVRzoKCkFkYXB0IHRvIGRp cmVjdGx5IHJlcHJlc2VudCAzMiBleGNsdXNpdmUgY2xhc3NlcyAvIGNhdGVnb3JpZXMuCkFsbCBl eGlzdGluZyB1c2VycyBnZXQgX0NMQVNTX0RGTFQ6MzEsIHJlc2VydmluZyAwLTMwIGZvciBvcHQt aW4uCgpkeW5hbWljX2RlYnVnX3JlZ2lzdGVyX2NsYXNzZXMoKTogVGVsbHMgZHluZGJnIHRoYXQg Y2FsbGVyL2NsaWVudCBpcwp1c2luZyAuY2xhc3NfaWQncyAwLi5OLCBhbmQgd2FudHMgdGhlbSBl eHBvc2VkIGFuZCBtYW5pcHVsYXRhYmxlIHdpdGgKbmFtZXM6IERSTV9VVF9LTVMgZXRjLgoKQ2xp ZW50IGludm9rZXMgRFlOQU1JQ19ERUJVR19DTEFTU0VTIHRvIGRlZmluZSB0aGUgbmFtZS0+aWQg bWFwLAp0aGVuIHJlZ2lzdGVycyBpdCBkdXJpbmcgaXRzIGluaXRpYWxpemF0aW9uLgoKVGhlbiwg d2hlbiBhIGR5bmRiZyBjb21tYW5kLXF1ZXJ5IGhhcyAiY2xhc3MgRk9PIjoKCiBlY2hvIGNsYXNz IERSTV9VVF9LTVMgK3AgPiAvcHJvYy9keW5hbWljX2RlYnVnL2NvbnRyb2wKCmRkZWJ1Z19jaGFu Z2UoKSB3aWxsIDFzdCBkZGVidWdfdmFsaWRhdGVfY2xhc3NuYW1lKCkgZm9yIGVhY2ggbW9kdWxl LAp1c2luZyBpdHMgcmVnaXN0ZXJlZCBjbGFzcy1tYXBzOyBvbmx5IG1vZHVsZXMgd2hpY2gga25v dyBEUk1fVVRfS01TCndpbGwgZ2V0IHRob3NlIGNhbGxzaXRlIGFkanVzdG1lbnRzLiAgVGhpcyAi cHJvdGVjdHMiIGVhY2ggbW9kdWxlJ3MKY2xhc3MtaWQgc3BhY2UsIHVubGlrZSAiY2xhc3MgNCIg cXVlcnkgc3ludGF4LgoKQWRkIGJpdG1hcCBzdXBwb3J0IGZvcjoKICBlY2hvIDB4MDIgPiAvc3lz L21vZHVsZS9kcm0vcGFyYW1ldGVycy9kZWJ1ZwoKQWRkIHN5bWJvbGljIGJpdG1hcCwgYmVjYXVz ZSB3ZSBoYXZlIHRoZSBjbGFzcy1uYW1lczoKICBlY2hvICtEUk1fVVRfS01TLCtEUk1fVVRfQVRP TUlDID4gL3N5cy9tb2R1bGUvZHJtL3BhcmFtZXRlcnMvZGVidWcKCkFkZCB0ZXN0X2R5bmFtaWNf ZGVidWcsIHRvIHByb3ZlIG91dCB0aGUgQVBJLgoKIHdoaWNoIGlzICh1c2VkIDN4IHRvIHByb3Zl IGNsYXNzLWlkIHJhbmdlcyk6CiAgLSBEWU5BTUlDX0RFQlVHX0NMQVNTRVModmFyLCAuLi4gWzMg Y2xhc3MtbmFtZS1saXRlcmFscyBlYWNoXSkKICAtIGR5bmFtaWNfZGVidWdfcmVnaXN0ZXJfY2xh c3Nlcyh2YXIpCiAgLSBkeW5hbWljX2RlYnVnX3VucmVnaXN0ZXJfY2xhc3Nlcyh2YXIpCiBhbHNv ICg2eCk6CiAgK21vZHVsZV9wYXJhbV9jYig8bm9kZS1uYW1lPiwgJnBhcmFtX29wc19keW5kYmdf Y2xhc3NlcywgL1twdF1bMTIzXV9iaXRtYXAvLCAwNjAwKTsKCkJpdHMgMCwxLDIgb2YgZWFjaCBv ZiB0aGUgNiBiaXRtYXBzIGNvbnRyb2wgdGhlIDMgbmFtZWQgY2xhc3NlcyBpbgplYWNoIG9mIDMg Z3JvdXBzLCB0b2dnbGluZyB0aGVpciBwLFQgYml0cyByZXNwZWN0aXZlbHkuCgpSRkM6CgpkeW5h bWljX2RlYnVnX3JlZ2lzdGVyX2NsYXNzZXMoKSBjYW5ub3QgYWN0IGVhcmx5IGVub3VnaCB0byBi ZSBpbgplZmZlY3QgYXQgbW9kdWxlLWxvYWQuICBTbyB0aGlzIHdpbGwgbm90IHdvcmsgYXMgeW91 J2QgcmVhc29uYWJseQpleHBlY3Q6CgogIG1vZHByb2JlIHRlc3RfZHluYW1pY19kZWJ1ZyBkeW5k Ymc9JytwZm07IGNsYXNzIEZPTyArcGZtbHQnCgpUaGUgMXN0IHF1ZXJ5OitwZm0gd2lsbCBiZSBl bmFibGVkIGR1cmluZyBsb2FkLCBidXQgaW4gdGhlIDJuZCBxdWVyeSwKImNsYXNzIEZPTyIgd2ls bCBiZSB1bmtub3duIGF0IGxvYWQgdGltZS4gIEVhcmx5IGNsYXNzIGVuYWJsZW1lbnQKd291bGQg YmUgbmljZS4gIERZTkFNSUNfREVCVUdfQ0xBU1NFUyBpcyBhIHN0YXRpYyBpbml0aWFsaXplciwg d2hpY2gKaXMgY2VydGFpbmx5IGVhcmx5IGVub3VnaCwgYnV0IEltIG1pc3NpbmcgYSB0cmljaywg c3VnZ2VzdGlvbnM/CgpXaWxkY2FyZGluZyBvbiBjbGFzc25hbWUgaXMgcG9zc2libGUsIG1heWJl IHVzZWZ1bDoKCiAgIGVjaG8gK0RSTV9VVF9cKiA+IC9zeXMvbW9kdWxlL2RybS9wYXJhbWV0ZXJz L2RlYnVnCgpJZiBjb250ZW1wbGF0ZWQgaW4gZWFybmVzdCwgaXQgc2hvdWxkIGNvbnNpZGVyIHRo ZSBkaWZmZXJlbmNlIGJldHdlZW4KIkRSTV8qIiBhbmQgIipfS01TIiwgd3J0IG9ic2VydmluZyBh Y3Jvc3MgY2xhc3MgaGllcmFyY2hpZXMsIGFzIHdlbGwKYXMgZGVjaWRlIHdoZXRoZXIgdGhhdCBl Y2hvIG1lYW5zIDFzdCBtYXRjaCwgb3IgYWxsIG1hdGNoaW5nIG5hbWVzLgoKX19wcl9kZWJ1Z19j bHMoY2xzLCBmbXQsLi4uKSBpcyBqdXN0IGZvciB0ZXN0aW5nLCBkcm0gZG9lc250IG5lZWQgaXQu CgoKRFJNIGFkYXB0YXRpb246CgpCYXNpY2FsbHksIHRoZXNlIHBhdGNoZXMgYWRkIGFub3RoZXIg bGF5ZXIgb2YgbWFjcm8gaW5kaXJlY3Rpb24sIHdoaWNoCmJ5IENPTkZJR19EUk1fVVNFX0RZTkFN SUNfREVCVUc9eSwgd3JhcHMgZHJtXypkYmcoKSBpbiBkeW5kYmcncyBjYWxsc2l0ZQpGYWN0b3J5 IG1hY3JvLCBhbmQgYWRkcyB0aGUgbmV3IGRlc2NyaXB0b3IgYXJnIHRvIHRoZSBmdW5jcy4KCldp dGggdGhlc2UgcGF0Y2hlcywgZHJtLmRlYnVncyBhcHBlYXIgYXMgY29udHJvbGxhYmxlICpwci1k YmcqIGNhbGxzaXRlczoKClsgICAxMS44MDQzNTJdIGR5bmRiZzogcmVnaXN0ZXJfY2xhc3Nlczog ZHJtClsgICAxMS45MjA3MTVdIGR5bmRiZzogMjM0IGRlYnVnIHByaW50cyBpbiBtb2R1bGUgZHJt X2ttc19oZWxwZXIKWyAgIDExLjkzMjEzNV0gZHluZGJnOiAgIDIgZGVidWcgcHJpbnRzIGluIG1v ZHVsZSB0dG0KWyAgIDExLjkzNjExOV0gZHluZGJnOiAgIDggZGVidWcgcHJpbnRzIGluIG1vZHVs ZSB2aWRlbwpbICAgMTIuNTM3NTQzXSBkeW5kYmc6IDE3NTYgZGVidWcgcHJpbnRzIGluIG1vZHVs ZSBpOTE1ClsgICAxMi41NTUwNDVdIGR5bmRiZzogcmVnaXN0ZXJfY2xhc3NlczogaTkxNQpbICAg MTIuNjY2NzI3XSBBTUQtVmk6IEFNRCBJT01NVXYyIGZ1bmN0aW9uYWxpdHkgbm90IGF2YWlsYWJs ZSBvbiB0aGlzIC4uClsgICAxMy43MzUzMTBdIGR5bmRiZzogMzg1OSBkZWJ1ZyBwcmludHMgaW4g bW9kdWxlIGFtZGdwdQoKYW1kZ3B1J3MgbGFyZ2UgY291bnQgaW5jbHVkZXM6CiAgIDU4MiAgZGly ZWN0IHVzZXMvbWVudGlvbnMgb2YgcHJfZGVidWcKICAgIDQzICBkZWZucyBvZiBEQ19MT0dfKiwg d2hpY2ggdXNlIGVpdGhlciBwcl9kZWJ1ZyBvciBEUk1fREVCVUdfKgogfjEwMDAgIHVzZXMgb2Yg RENfTE9HXyoKICAxMTE2ICB1c2VzIG9mIGRtbF9wcmludCBpbiBkcml2ZXJzL2dwdS9kcm0vYW1k CiAgICAxNSAgZHJtX2RiZ19cXHcrIGRyaXZlcnMvZ3B1L2RybS9hbWQKICAgMjczICBEUk1fREVC VUdfXFx3KyBkcml2ZXJzL2dwdS9kcm0vYW1kICAgIAoKaTkxNSBoYXM6CiAgMTA3MiAgZHJtX2Ri Z19cXHcrIGRyaXZlcnMvZ3B1L2RybS9pOTE1LyB8IHdjICAtbAogICAyMDAgIERSTV9ERUJVR19c XHcrIGRyaXZlcnMvZ3B1L2RybS9pOTE1LwogICAgNDYgIHByX2RlYnVnIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1LwogICAxNDQgIGd2dF9kYmdfXFx3KyBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQsIHVz aW5nIHByX2RlYnVnCgpUaGlzIGltcGFjdHMgdGhlIGRhdGEgZm9vdHByaW50LCBzbyBldmVyeXRo aW5nIG5ldy9kcm0gaXMgZGVwZW5kZW50IG9uCkRSTV9VU0VfRFlOQU1JQ19ERUJVRz15LgoKUkZD IGZvciBEUk06CgotIGRlY29yYXRpb24gZmxhZ3MgImZtbHQiIGRvIG5vdCB3b3JrIG9uIGRybV8q ZGJnKCkuCiAgKGRybV8qZGJnKCkgZG9udCB1c2UgcHJfZGVidWcsIHRoZXkgKmJlY29tZSogb25l IGZsYXZvciBvZiB0aGVtKQogIHRoaXMgY291bGQgKHNob3VsZD8pIGJlIGFkZGVkLCBhbmQgbWF5 YmUgdGFpbG9yZWQgZm9yIGRybS4KICBzb21lIG9mIHRoZSBkZXZpY2UgcHJlZml4ZXMgYXJlIHZl cnkgbG9uZywgYSAiZCIgZmxhZyBjb3VsZCBvcHRpb25hbGl6ZSB0aGVtLgoKLSBhcGkgdXNlIG5l ZWRzIHJldmlldyB3cnQgZHJtIGxpZmUtY3ljbGUuCiAgZW51bSBkcm1fZGVidWdfY2F0ZWdvcnkg YW5kIERZTkFNSUNfREVCVUdfQ0xBU1NFUyBjb3VsZCBiZSB0b2dldGhlcj8KCi0gY2xhc3MtbmFt ZXMgY291bGQgc3RhbmQgcmV2aWV3LCBwZXJoYXBzIGV4dGVuc2lvbgogICJkcm06Y29yZToiIGV0 YyBoYXZlIGFwcGVhcmVkIChtYXliZSBqdXN0IGZyb20gbWUpCiAgb3IgYSAicGxhbiIgdG8gbG9v ayBhdCBpdCBsYXRlcgoKLSBpOTE1ICYgYW1kZ3B1IGhhdmUgcHJfZGVidWdzIChEQ19MT0dfKiwg Z3Z0X2RiZ18qKSB0aGF0IGhhdmUKY2xhc3MtaXNoIHByZWZpeGVzIHRoYXQgYXJlIHNlcGFyYXRl IGZyb20sIGJ1dCBzaW1pbGFyIHRvIERSTV9VVF8qLAphbmQgY291bGQgc3RhbmQgcmV2aWV3IGFu ZCBwb3NzaWJsZSB1bmlmaWNhdGlvbiB3aXRoIHJlZm9ybWVkIG9yCmV4dGVuZGVkIGRybSBjYXRl Z29yaWVzLgoKLSB0aGUgY2hhbmdlIHRvIGVudW0gZHJtX2RlYnVnX2NhdGVnb3J5IGZyb20gYml0 bWFzayB2YWx1ZXMgdG8gMC4uMzEKICBtZWFucyB0aGF0IHdlIGZvcmVjbG9zZSB0aGlzIHBvc3Np YmxpbGl0eToKCiAgIGRybV9kYmcoRFJNX1VUX0NPUkV8RFJNX1VUX0tNUywgIndpZXJkIGRvdWJs ZS1jYXQgZXhwZXJpbWVudCIpOwoKLSBub3V2ZWF1IGhhcyB2ZXJ5IGZldyBkcm0uZGVidWcgY2Fs bHMsCiAgaGFzIE5WX0RFQlVHLCBWTU1fREVCVUcsIG52a21fcHJpbnRrXywgSSBoYXZlbnQgbG9v a2VkIGRlZXBseS4KCkRZTkRCRy9EUk0gLT4gVFJBQ0VGUwoKTXkgMXN0IHRyeSB3YXMgbW90aXZh dGVkIGJ5IFNlYW4gUGF1bCdzIHBhdGNoIC0gRFJNLnRyYWNlOgpodHRwczovL3BhdGNod29yay5m cmVlZGVza3RvcC5vcmcvcGF0Y2gvNDQ1NTQ5Lz9zZXJpZXM9NzgxMzMmcmV2PTUKClRob3NlIHVz ZWQgdHJhY2VfcHJpbnRrLCBzbyB3ZXJlIG5vdCBnb29kIGZvciB1cHN0cmVhbS4KClZpbmNlbnQg V2hpdGNodXJjaCdzIGNvZGU6Cmh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xrbWwvMjAyMDA3MjEx NDExMDUuMTYwMzQtMS12aW5jZW50LndoaXRjaHVyY2hAYXhpcy5jb20vCgphZGRlZCBzaW1pbGFy IGZlYXR1cmVzLCBieSBzZW5kaW5nIHByaW50azpjb25zb2xlIGV2ZW50cyBmcm9tIGR5bmRiZy4K SXQgbWV0IHdpdGggYSBnb29kIHJlY2VwdGlvbiBmcm9tIFN0ZXZlIFJvc3RlZHQsIHNvIEkgcmUt c3RhcnRlZCB3aXRoCnRoYXQuCgpUaGUgYmlnZ2VzdCBhZGRpdGlvbiAoZnJvbSBVSSB2aWV3cG9p bnQpIGlzIDQgbmV3IHRyYWNlLWV2ZW50cywgMiBlYWNoCmZyb20gZHluZGJnIChwcl9kZWJ1Zywg ZGV2X2RiZykgYW5kIGRybSAoZHJtX2RiZywgZHJtX2Rldl9kYmcpOyAyIGhhdmUKZGV2LCBvdGhl ciAyIGF2b2lkIHN0b3JpbmcgbnVsbHMuICBJbSB1bnN1cmUgdGhhdCA0IGRpc3RpbmN0aW9ucyBp cwp2YWx1YWJsZSwgYnV0IGl0IHNlZW1lZCBtb3N0IG9idmlvdXMgdG8gcmVmbGVjdCB0aGVtIHN0 cmFpZ2h0IHRocnUgdG8KdHJhY2Vmcy4KClJGQzogdGhlIGV2ZW50L21lc3NhZ2UgZm9ybWF0cyBh cmUgYSBiaXQgb2YgYSBtYXNoLXVwOyAKCmluIC9zeXMva2VybmVsL3RyYWNpbmc6CmRybS9kcm1f ZGVidWcvZm9ybWF0OnByaW50IGZtdDogIiVzIiwgX19nZXRfc3RyKG1zZykKZHJtL2RybV9kZXZk YmcvZm9ybWF0OnByaW50IGZtdDogImNhdDolZCwgJXMgJXMiLCBcCglSRUMtPmRybV9kZWJ1Z19j YXRlZ29yeSwgZGV2X25hbWUoUkVDLT5kZXYpLCBfX2dldF9zdHIobXNnKQoKVGhlIDFzdCBwcmlu dHMganVzdCB0aGUgbWVzZyBpdHNlbGYsIDJuZCBwcmludHMgY2F0ZWdvcnkgYXMgaW50OwppdCdk IGJlIGJldHRlciBpZiBEUk0uY2xhc3MtbmFtZSByZXBsYWNlZCAobm90IGp1c3QgYXVnbWVudGVk KSB0aGUKZXZlbnQtbmFtZSAiZHJtX2RldmRiZyIgaW4gdGhlIHRyYWNlLCBpcyB0aGF0IHBvc3Np YmxlID8KCmR5bmRiZy9wcmRiZy9mb3JtYXQ6CnByaW50IGZtdDogIiVzLiVzICVzIiwgUkVDLT5k ZXNjLT5tb2RuYW1lLCBSRUMtPmRlc2MtPmZ1bmN0aW9uLCBfX2dldF9zdHIobXNnKQpkeW5kYmcv ZGV2ZGJnL2Zvcm1hdDoKcHJpbnQgZm10OiAiJXMuJXMgJXMiLCBSRUMtPmRlc2MtPm1vZG5hbWUs IFJFQy0+ZGVzYy0+ZnVuY3Rpb24sIF9fZ2V0X3N0cihtc2cpCgpUaGVzZSBhZGQgYSBwcmVmaXgg c3RyaW5nIHNpbWlsYXIgdG8gZHluZGJnJ3MgZGVjb3JhdGlvbnMsIGV4Y2VwdCB0aGV5CmRvbid0 IHVzZSBkeW5kYmcncyAiZm1sdCIgZGVjb3JhdGlvbiBmbGFncy4KClRoZXJlIGFyZSBhbHNvIDMg dmJsYW5rIHRyYWNlLWV2ZW50cyBhbHJlYWR5LAogIGRlY2xhcmVkIGluOiBkcml2ZXJzL2dwdS9k cm0vZHJtX3RyYWNlLmgKMTU6VFJBQ0VfRVZFTlQoZHJtX3ZibGFua19ldmVudCwKMzU6VFJBQ0Vf RVZFTlQoZHJtX3ZibGFua19ldmVudF9xdWV1ZWQsCjUyOlRSQUNFX0VWRU5UKGRybV92Ymxhbmtf ZXZlbnRfZGVsaXZlcmVkLAoKU1RBVFVTCgprZXJuZWwtdGVzdC1yb2JvdCB0ZXN0ZWQgdGhpcyBw YXRjaHNldCAob24gNS4xOC1yYzYpLgpnaXRodWI6W2ppbWM6YmxlYWRdIEJVSUxEIFNVQ0NFU1Mg NmM1OWU1MmFjODFkZDgxYWM3ZGE0NTIyYTVlMTViN2FjNDg4ZDViNQpNYXkgMTUsIDIwMjIsIDg6 MzkgQU0gKDEgZGF5IGFnbykKCgpJdmUgYmVlbiB0ZXN0aW5nLCBtb3N0bHkgb24gdmlydG1lLCBt b3N0bHkgd2l0aCB0aGlzOgojIS9iaW4vYmFzaAoKIyB0ZXN0IGNsYXNzIEZPTyBoYW5kbGluZyBv ZiBkeW5hbWljLWRlYnVnCgphbGlhcyBsbXQ9J21vZHByb2JlIHRlc3RfZHluYW1pY19kZWJ1ZyBk eW5kYmc9K3BtZicKYWxpYXMgcm10PSdybW1vZCB0ZXN0X2R5bmFtaWNfZGVidWcnCmFsaWFzIGxv b2s9J2dyZXAgdGVzdF9keW5hbWljX2RlYnVnIC9wcm9jL2R5bmFtaWNfZGVidWcvY29udHJvbCcK Cmxvb2tmb3IoKSB7CiAgICBncmVwICQxIC9wcm9jL2R5bmFtaWNfZGVidWcvY29udHJvbAp9Cgp2 eCgpIHsKICAgIGVjaG8gJCogPiAvc3lzL21vZHVsZS9keW5hbWljX2RlYnVnL3BhcmFtZXRlcnMv dmVyYm9zZQp9CgojIGFtZGdwdSBoYXMgfjIyMDAgcHItZGVidWdzIChiZWZvcmUgZHJtLWRlYnVn LW9uLWR5bmRiZyksCiMgdXNlIHRoZW0gdG8gcHJvdmUgbW9kcHJvYmUgPG1vZD4gZHluZGJnPStw IHdvcmtzCgp0ZXN0X3BhcmFtX2R5bmRiZygpIHsKCiAgICBtb2Rwcm9iZSBhbWRncHUgZHluZGJn PStwZm0KICAgIGxldCBjb3VudD0kKGdyZXAgPXBtZiAvcHJvYy9keW5hbWljX2RlYnVnL2NvbnRy b2wgfCBncmVwIGFtZGdwdSB8IHdjIC1sKQoKICAgIGlmIFsgJGNvdW50IC1ndCAyMDAgXSA7IHRo ZW4KCWVjaG8gYW1kZ3B1IGhhcyAkY291bnQgcHItZGJncwoJcmV0dXJuIDAKICAgIGVsc2UKCWVj aG8gZmFpbGVkICRjb3VudAoJcmV0dXJuIC0xCiAgICBmaQp9Cm91dD0kKHRlc3RfcGFyYW1fZHlu ZGJnKQplY2hvIG91dDokb3V0ICQ/ClsgJD8gLWVxIDAgXSB8fCBleGl0ICQ/CgpxcnlfY21kKCkg ewogICAgZWNobyAiUUNNRDogJCogICA+Y29udHJvbCIgPiYyCiAgICBlY2hvICQqID4gL3Byb2Mv ZHluYW1pY19kZWJ1Zy9jb250cm9sCn0KCiMgZW5hYmxlIGR5bmRiZyB0cmFjaW5nCmR5bmFibGUo KSB7CiAgICBncmVwIC1QIFxcZCAkU0tUL2V2ZW50cy9keW5kYmcvey4sKn0vZW5hYmxlCiAgICBl Y2hvIDEgPiAkU0tUL2V2ZW50cy9keW5kYmcvZW5hYmxlCiAgICBncmVwIC1QIFxcZCAkU0tUL2V2 ZW50cy9keW5kYmcvey4sKn0vZW5hYmxlCn0KCiMgZW5hYmxlIGRybSB0cmFjaW5nCmRybWFibGUo KSB7CiAgICBncmVwIC1QIFxcZCAkU0tUL2V2ZW50cy9kcm0vey4sKn0vZW5hYmxlCiAgICBlY2hv IDEgPiAkU0tUL2V2ZW50cy9kcm0vZW5hYmxlCiAgICBncmVwIC1QIFxcZCAkU0tUL2V2ZW50cy9k cm0vey4sKn0vZW5hYmxlCn0KCmZ1bmN0aW9uIGRvaXQoKSB7CiAgICBjYXQgL3N5cy9tb2R1bGUv dGVzdF9keW5hbWljX2RlYnVnL3BhcmFtZXRlcnMvZG9fcHJpbnRzCn0KCiMgdGVzdCBjbGFzcyBG T08gYmVoYXZpb3Igb2YgdGVzdF9keW5hbWljX2RlYnVnIG1vZHVsZQp0dGVzdF9tb2R1bGVfXygp IHsKICAgIGZsZz0kMQogICAgZG1lc2cgLUMKICAgIG1vZHByb2JlIHRlc3RfZHluYW1pY19kZWJ1 ZyBkeW5kYmc9K3BmbQogICAgZG9pdAoKICAgIGZvciBjbHMgaW4gRk9PIEJBUiBCVVpaOyBkbwoJ cXJ5X2NtZCBtb2R1bGUgdGVzdF9keW5hbWljX2RlYnVnIGNsYXNzICRjbHMgJGZsZwoJZG9pdAog ICAgZG9uZQogICAgZG9pdAoKICAgIGZvciBjbHMgaW4gRm9vIEJhciBCdXp6OyBkbwoJcXJ5X2Nt ZCBtb2R1bGUgdGVzdF9keW5hbWljX2RlYnVnIGNsYXNzICRjbHMgJGZsZwoJZG9pdAogICAgZG9u ZQogICAgZG9pdAoKICAgIGZvciBjbHMgaW4gYmluZyBib25nIGJvb207IGRvCglxcnlfY21kIG1v ZHVsZSB0ZXN0X2R5bmFtaWNfZGVidWcgY2xhc3MgJGNscyAkZmxnCglkb2l0CiAgICBkb25lCiAg ICBkb2l0CgogICAgZG1lc2cgfCBncmVwIGNsYXNzCn0KCnR0ZXN0X21vZHVsZSgpIHsKCiAgICB0 dGVzdF9tb2R1bGVfXyArcAogICAgdHRlc3RfbW9kdWxlX18gLXAKCiAgICAjdHRlc3RfbW9kdWxl X18gK1QKICAgICN0dGVzdF9tb2R1bGVfXyAtVAp9CgojZHluYWJsZQojZHJtYWJsZQoKdHRlc3Rf bW9kdWxlCmdyZXAgdGVzdF9keW4gL3Byb2MvZHluYW1pY19kZWJ1Zy9jb250cm9sCgoKIyB1c2Uv dGVzdCBiaXRtYXBzCgpzZXRfdGRkbV8oKSB7CiAgICB2YWw9JDE7CiAgICBrbm9iPSQyOwogICAg ZWNobyAiVERETTogJHZhbCA+JGtub2IiID4mMgogICAgZWNobyAkdmFsID4gL3N5cy9tb2R1bGUv dGVzdF9keW5hbWljX2RlYnVnL3BhcmFtZXRlcnMvJGtub2IKICAgIGNhdCAvc3lzL21vZHVsZS90 ZXN0X2R5bmFtaWNfZGVidWcvcGFyYW1ldGVycy8ka25vYgp9CgpDTFNfMT0iRk9PIC1GT08gK0ZP TyAtRk9PIEJBUiAtQkFSICtCQVIgLUJBUiBCVVpaIC1CVVpaICtCVVpaIC1CVVpaIgpDTFNfMj0i IEZvbyAgQmFyICBCdXp6IC1Gb28gLUJhciAtQnV6eiArRm9vICtCYXIgK0J1enogLUZvbyAtQmFy IC1CdXp6IgpDTFNfMz0iIGJpbmcgYm9uZyBib29tIC1iaW5nIC1ib25nIC1ib29tICtiaW5nICti b25nICtib29tIC1iaW5nIC1ib25nIC1ib29tIgoKdGRkbV9zeXNub2RlX2NsYXNzZXNfXygpIHsK ICAgIHRhcmc9JDEKICAgIHNoaWZ0CiAgICBjbHM9JCoKICAgIGZvciBiaXRzeW0gaW4gJGNsczsK ICAgIGRvCglzZXRfdGRkbV8gJGJpdHN5bSAkdGFyZwogICAgZG9uZQp9CgojIHdvcmsgYWxsIDMg c3lzZnMgYml0bWFwcwoKZm9yIHN5c25vZGUgaW4gYzFfc3lzbG9nX2JpdHMgYzJfc3lzbG9nX2Jp dHMgYzNfc3lzbG9nX2JpdHM7CmRvCiAgICBmb3IgdmFsIGluIDAgMSAyIDQgOCAwOwogICAgZG8K CXRkZG1fc3lzbm9kZV9jbGFzc2VzX18gJHN5c25vZGUgJHZhbAogICAgZG9uZQpkb25lCgp0ZGRt X3N5c25vZGVfY2xhc3Nlc19fIGMxX3N5c2xvZ19iaXRzICRDTFNfMQp0ZGRtX3N5c25vZGVfY2xh c3Nlc19fIGMyX3N5c2xvZ19iaXRzICRDTFNfMgp0ZGRtX3N5c25vZGVfY2xhc3Nlc19fIGMzX3N5 c2xvZ19iaXRzICRDTFNfMwoKZWNobyAic2hvdyB1bmtub3duOiBjMy1uYW1lcyBvbiBjMS1rbm9i IiA+JjIKdGRkbV9zeXNub2RlX2NsYXNzZXNfXyBjMV90cmFjZV9iaXRzICRDTFNfMwoKZWNobyAi ZmxhZ3MgbG9vayBpbnZlcnRlZCIgPiYyCnRkZG1fc3lzbm9kZV9jbGFzc2VzX18gYzFfc3lzbG9n X2JpdHMgJENMU18xCgpDTFNfMV89Rk9PLC1GT08sK0ZPTywtRk9PLEJBUiwtQkFSLCtCQVIsLUJB UixCVVpaLC1CVVpaLCtCVVpaLC1CVVpaCkNMU18yXz1Gb28sQmFyLEJ1enosLUZvbywtQmFyLC1C dXp6LCtGb28sK0JhciwrQnV6eiwtRm9vLC1CYXIsLUJ1enoKIyBsZWFkaW5nIGVyciBkb2VzbnQg d3JlY2sgdGhlIHJlc3QKQ0xTXzNfPSxiaW5nLGJvbmcsYm9vbSwtYmluZywtYm9uZywtYm9vbSwr YmluZywrYm9uZywrYm9vbSwtYmluZywtYm9uZywtYm9vbQoKdGRkbV9zeXNub2RlX2NsYXNzZXNf XyBjMV9zeXNsb2dfYml0cyAkQ0xTXzFfCnRkZG1fc3lzbm9kZV9jbGFzc2VzX18gYzJfc3lzbG9n X2JpdHMgJENMU18yXwp0ZGRtX3N5c25vZGVfY2xhc3Nlc19fIGMzX3N5c2xvZ19iaXRzICRDTFNf M18KCgpDYzogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+CkNjOiBEYW5pZWwgVmV0 dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgpDYzogRGF2aWQgQWlybGllIDxhaXJsaWVkQGdt YWlsLmNvbT4KQ2M6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+CkNj OiBKb29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+CkNjOiBQ ZWtrYSBQYWFsYW5lbiA8cHBhYWxhbmVuQGdtYWlsLmNvbT4KQ2M6IFJvYiBDbGFyayA8cm9iZGNs YXJrQGdtYWlsLmNvbT4KQ2M6IFN0ZXZlbiBSb3N0ZWR0IDxyb3N0ZWR0QGdvb2RtaXMub3JnPgpD YzogVGhvbWFzIFppbW1lcm1hbm4gPHR6aW1tZXJtYW5uQHN1c2UuZGU+CkNjOiBWaWxsZSBTeXJq w6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpDYzogQ2hyaXMgV2lsc29uIDxj aHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBTdGV2ZW4gUm9zdGVkdCA8cm9zdGVkdEBnb29k bWlzLm9yZz4KCkppbSBDcm9taWUgKDI3KToKICBkeW5kYmc6IGZpeCBzdGF0aWNfYnJhbmNoIG1h bmlwdWxhdGlvbgogIGR5bmRiZzogc2hvdyBib3RoIG9sZCBhbmQgbmV3IGluIGNoYW5nZS1pbmZv CiAgZHluZGJnOiBmaXggbW9kdWxlLmR5bmRiZyBoYW5kbGluZwogIGR5bmRiZzogZHJvcCBFWFBP UlRlZCBkeW5hbWljX2RlYnVnX2V4ZWNfcXVlcmllcwogIGR5bmRiZzogYWRkIGV4Y2x1c2l2ZSBj bGFzc19pZCB0byBwcl9kZWJ1ZyBjYWxsc2l0ZXMKICBkeW5kYmc6IGFkZCBkeW5hbWljX2RlYnVn Xyh1bilyZWdpc3Rlcl9jbGFzc2VzCiAgZHluZGJnOiB2YWxpZGF0ZSBjbGFzcyBGT08gb24gbW9k dWxlCiAgZHluZGJnOiBhZGQgZHJtLmRlYnVnIHN0eWxlIGJpdG1hcCBzdXBwb3J0CiAgRG9jL2R5 bmRiZzogZG9jdW1lbnQgbmV3IGNsYXNzIGNsYXNzX25hbWUgcXVlcnkgc3VwcG9ydAogIGR5bmRi ZzogbGV0IHF1ZXJ5LW1vZG5hbWUgb3ZlcnJpZGUgZGVmYXVsdGluZyBtb2RuYW1lCiAgZHluZGJn OiBzdXBwb3J0IHN5bWJvbGljIGNsYXNzLW5hbWVzIGluIGJpdG1hcAogIGR5bmRiZzogY2hhbmdl IHplcm8tb3Itb25lIGNsYXNzZXMtbWFwIHRvIG1hcHMgbGlzdAogIGR5bmRiZzogYWRkIF9fcHJf ZGVidWdfY2xzKGNsYXNzLCBmbXQsIC4uLikKICBkeW5kYmc6IGFkZCB0ZXN0X2R5bmFtaWNfZGVi dWcgbW9kdWxlCiAgZHJtOiBQT0MgZHJtIG9uIGR5bmRiZyAtIG1hcCBjbGFzcy1uYW1lcyB0byBk cm1fZGVidWdfY2F0ZWdvcnkncwogIGRybS9wcmludDogUE9DIGRybSBvbiBkeW5kYmcgLSB1c2Ug Yml0bWFwCiAgZHJtX3ByaW50OiBjb25kZW5zZSBlbnVtIGRybV9kZWJ1Z19jYXRlZ29yeQogIGRy bV9wcmludDogaW50ZXJwb3NlIGRybV8qZGJnIHdpdGggZm9yd2FyZGluZyBtYWNyb3MKICBkcm1f cHJpbnQ6IHdyYXAgZHJtXypfZGJnIGluIGR5bmRiZyBkZXNjcmlwdG9yIGZhY3RvcnkgbWFjcm8K ICBkcm1fcHJpbnQ6IHJlZmluZSBkcm1fZGVidWdfZW5hYmxlZCBmb3IganVtcC1sYWJlbAogIGRy bV9wcmludDogcHJlZmVyIGJhcmUgcHJpbnRrIEtFUk5fREVCVUcgb24gZ2VuZXJpYyBmbgogIGRy bV9wcmludDogYWRkIF9kZGVidWcgZGVzYyB0byBkcm1fKmRiZyBwcm90b3R5cGVzCiAgZHluZGJn OiBhZGQgX0RQUklOVEtfRkxBR1NfRU5BQkxFRAogIGR5bmRiZzogYWRkIF9EUFJJTlRLX0ZMQUdT X1RSQUNFCiAgZHluZGJnOiBhZGQgd3JpdGUtZXZlbnRzLXRvLXRyYWNlZnMgY29kZQogIGR5bmRi ZzogNCBuZXcgdHJhY2UtZXZlbnRzOiBwcl9kZWJ1ZywgZGV2X2RiZywgZHJtX3ssZGV2fWRlYnVn CiAgZHluZGJnL2RybTogUE9DIGFkZCB0cmFjZWJpdHMgc3lzZnMta25vYgoKIC4uLi9hZG1pbi1n dWlkZS9keW5hbWljLWRlYnVnLWhvd3RvLnJzdCAgICAgICB8ICAxMiArCiBNQUlOVEFJTkVSUyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogZHJpdmVycy9ncHUvZHJt L0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgIHwgIDEyICsKIGRyaXZlcnMvZ3B1L2RybS9N YWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBkcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfZHJ2LmMgICAgICAgfCAgIDMgKwogZHJpdmVycy9ncHUvZHJtL2RybV9k cnYuYyAgICAgICAgICAgICAgICAgICAgIHwgICA1ICsKIGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJp bnQuYyAgICAgICAgICAgICAgICAgICB8ICA2OSArKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfbW9kdWxlLmMgICAgICAgICAgICB8ICAxMSArCiBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9u b3V2ZWF1X2RybS5jICAgICAgICAgfCAgIDQgKwogaW5jbHVkZS9kcm0vZHJtX2Rydi5oICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDI2ICsKIGluY2x1ZGUvZHJtL2RybV9wcmludC5oICAgICAg ICAgICAgICAgICAgICAgICB8ICA4NCArKy0KIGluY2x1ZGUvbGludXgvZHluYW1pY19kZWJ1Zy5o ICAgICAgICAgICAgICAgICB8IDEzNiArKysrLQogaW5jbHVkZS90cmFjZS9ldmVudHMvZHJtLmgg ICAgICAgICAgICAgICAgICAgIHwgIDY4ICsrKwogaW5jbHVkZS90cmFjZS9ldmVudHMvZHluZGJn LmggICAgICAgICAgICAgICAgIHwgIDc0ICsrKwogbGliL0tjb25maWcuZGVidWcgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDExICsKIGxpYi9NYWtlZmlsZSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgMSArCiBsaWIvZHluYW1pY19kZWJ1Zy5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCA0ODcgKysrKysrKysrKysrKysrLS0tCiBsaWIvdGVzdF9keW5hbWlj X2RlYnVnLmMgICAgICAgICAgICAgICAgICAgICAgfCAxNzIgKysrKysrKwogMTggZmlsZXMgY2hh bmdlZCwgMTA0OSBpbnNlcnRpb25zKCspLCAxMjkgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgaW5jbHVkZS90cmFjZS9ldmVudHMvZHJtLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNs dWRlL3RyYWNlL2V2ZW50cy9keW5kYmcuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi90ZXN0X2R5 bmFtaWNfZGVidWcuYwoKLS0gCjIuMzUuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFy bS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK