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=-9.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,HK_RANDOM_FROM,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham 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 715DDC433ED for ; Fri, 14 May 2021 13:42:18 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 07B666144C for ; Fri, 14 May 2021 13:42:18 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 07B666144C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 7B9816EE80; Fri, 14 May 2021 13:42:17 +0000 (UTC) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 286DD6EE80; Fri, 14 May 2021 13:42:16 +0000 (UTC) IronPort-SDR: ei5KfmqN+Hmdg7IGKUrzb8m1sB5ni0XBu0vAOZo2nydXH2KyHvEj5Ce4ZAJ+WH52MxLOhcQ7Va J9bn9u2n3odA== X-IronPort-AV: E=McAfee;i="6200,9189,9983"; a="264099805" X-IronPort-AV: E=Sophos;i="5.82,299,1613462400"; d="scan'208";a="264099805" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 May 2021 06:42:14 -0700 IronPort-SDR: YpfR5AXkYzCYms6Uv/DpXNrhGSh9Y0HdnR6v+c520rgYLPa2D9dZZ5lhINAHDti7h/lFDWI4x5 RwOurSPlms/w== X-IronPort-AV: E=Sophos;i="5.82,299,1613462400"; d="scan'208";a="393640795" Received: from ankitsi2-mobl.ger.corp.intel.com (HELO [10.213.242.91]) ([10.213.242.91]) by orsmga006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 May 2021 06:42:12 -0700 To: =?UTF-8?Q?Christian_K=c3=b6nig?= , "Nieto, David M" , Alex Deucher References: <20210513110002.3641705-1-tvrtko.ursulin@linux.intel.com> <39ccc2ef-05d1-d9f0-0639-ea86bef58b80@amd.com> From: Tvrtko Ursulin Organization: Intel Corporation UK Plc Message-ID: <7d6d09fe-ec85-6aaf-9834-37a49ec7d6c5@linux.intel.com> Date: Fri, 14 May 2021 14:42:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <39ccc2ef-05d1-d9f0-0639-ea86bef58b80@amd.com> Content-Language: en-US Subject: Re: [Intel-gfx] [PATCH 0/7] Per client engine busyness X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Intel Graphics Development , Maling list - DRI developers Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Ck9uIDE0LzA1LzIwMjEgMDk6MDQsIENocmlzdGlhbiBLw7ZuaWcgd3JvdGU6Cj4gV2VsbCBpbiBt eSBvcGluaW9uIGV4cG9zaW5nIGl0IHRocm91Z2ggZmRpbmZvIHR1cm5lZCBvdXQgdG8gYmUgYSBy ZWFsbHkgCj4gY2xlYW4gYXBwcm9hY2guCj4gCj4gSXQgZGVzY3JpYmVzIGV4YWN0bHkgdGhlIHBl ciBmaWxlIGRlc2NyaXB0b3IgaW5mb3JtYXRpb24gd2UgbmVlZC4KClllYWggZmRpbmZvIGNlcnRh aW5seSBpcyBtb3N0bHkgc2ltcGxlIGFuZCBuZWF0LgoKSSBzYXkgbW9zdGx5IGJlY2F1c2UgbWFp biBwcm9ibGVtIEkgc2VlIHdpdGggaXQgaXMgZGlzY292ZXJhYmlsaXR5LiBBbGV4IApjb21tZW50 ZWQgaW4gYW5vdGhlciBzdWItdGhyZWFkIC0gIklmIHlvdSBrbm93IHRoZSBwcm9jZXNzLCB5b3Ug Y2FuCmxvb2sgaXQgdXAgaW4gcHJvY2ZzLiIgLSBzbyB0aGF0J3MgZmluZSBmb3IgaW50cm9zcGVj dGlvbiBidXQgYSBiaXQgCmNoYWxsZW5naW5nIGZvciBhIHRvcCgxKSBsaWtlIHRvb2wuCgpEYXZp ZCBhbHNvIHNhaWQgdGhhdCB5b3UgY29uc2lkZXJlZCBzeXNmcyBidXQgd2VyZSB3YXJ5IG9mIGV4 cG9zaW5nIApwcm9jZXNzIGluZm8gaW4gdGhlcmUuIFRvIGNsYXJpZnksIG15IHBhdGNoIGlzIG5v dCBleHBvc2luZyBzeXNmcyBlbnRyeSAKcGVyIHByb2Nlc3MsIGJ1dCBvbmUgcGVyIG9wZW4gZHJt IGZkLgoKVG9wIGxldmVsIGhpZXJhcmNoeSBpcyB1bmRlciAvc3lzL2NsYXNzL2RybS9jYXJkMC9j bGllbnRzLyBhbmQgZWFjaCAKb3BlbmVkIGRybSBmZCBnZXRzIGEgZGlyZWN0b3J5IGluIHRoZXJl LiBQcm9jZXNzIGRhdGEgSSBleHBvc2UgdGhlcmUgYXJlIAp0aGUgbmFtZSBhbmQgcGlkLCBidXQg dGhlc2UgYXJlIGZvciBjb252ZW5pZW5jZSwgbm90IGFzIGEgcHJpbWFyeSAKaW5mb3JtYXRpb24u CgpCdXQgeWVzLCBJIGFncmVlIHRoaXMgcGFydCBvZiB0aGUgYXBwcm9hY2ggaXMgZGVmaW5pdGVs eSBxdWVzdGlvbmFibGUuIAooQXMgYSBzaWRlIG5vdGUsIEkgYW0gbm90IHN1cmUgaWYgSSBjb3Vs ZCBwdXQgYSBzeW1saW5rIHRvIHByb2MgaW4gCnRoZXJlLiBJIHRoaW5rIHN5c2ZzIGFuZCBzeW1s aW5rcyBkaWQgbm90IHJlYWxseSB3b3JrLikKCkFub3RoZXIgZGF0YSBwb2ludCBpcyB0aGF0IHRo aXMgImNsaWVudCByb290IiB3ZSB0aGluayB3b3VsZCBiZSB1c2VmdWwgCmZvciBhZGRpbmcgb3Ro ZXIgc3R1ZmYgaW4gdGhlIGZ1dHVyZS4gRm9yIGluc3RhbmNlIHBlciBjbGllbnQgZGVidWcgbG9n IApzdHJlYW0gaXMgb2NjYXNpb25hbGx5IHRhbGtlZCBhYm91dC4KCj4gTWFraW5nIHRoYXQgZGV2 aWNlIGRyaXZlciBpbmRlcGVuZGVudCBpcyBwb3RlbnRpYWxseSB1c2VmdWwgYXMgd2VsbC4KCkFs dGVybmF0aXZlIHRvIG15IHN5c2ZzIGFwcHJvYWNoLCB0aGUgaWRlYSBvZiBleHBvc2luZyB0aGlz IGluIHByb2Mgd2FzIApmbG9hdGVkIGJ5IENocmlzIGluIHRoaXMgc2VyaWVzIApodHRwczovL3Bh dGNod29yay5mcmVlZGVza3RvcC5vcmcvc2VyaWVzLzg2NjkyLy4KClRoYXQgd291bGQgYmUgZ2Vu ZXJpYyBlbm91Z2ggc28gYW55IEdQVSB2ZW5kb3IgY2FuIHNsb3QgaW4sIGFuZCBjb21tb24gCmVu b3VnaCB0aGF0IEdQVSBhZ25vc3RpYyB0b29scyBzaG91bGQgYmUgYWJsZSB0byB1c2UgaXQuIE1v ZHVsbyBzb21lIApkaXNjdXNzaW9uIGFyb3VuZCBuYW1pbmcgdGhlICJjaGFubmVscyIgKEdQVSBl bmdpbmVzKSBvciBub3QuCgpJdCB3b3VsZG4ndCBiZSBhYmxlIHRvIHN1cHBvcnQgdGhpbmdzIGxp a2UgdGhlIGJlZm9yZSBtZW50aW9uZWQgcGVyIApjbGllbnQgZGVidWcgbG9nIHN0cmVhbSBidXQg SSBndWVzcyB0aGF0J3Mgbm90IHRoZSBtb3N0IGltcG9ydGFudCB0aGluZy4gCk1vc3QgaW1wb3J0 YW50IHdvdWxkIGJlIGFsbG93aW5nIEdQVSB1c2FnZSB0byBiZSB3aXJlZCB0byB0b3AoMSkgbGlr ZSAKdG9vbHMgd2hpY2ggaXMgcHJvYmFibHkgZXZlbiBvdmVyZHVlIGdpdmVuIHRoZSBtb2Rlcm4g Y29tcHV0aW5nIGxhbmRzY2FwZS4KCldvdWxkIHlvdSBndXlzIGJlIGludGVyZXN0ZWQgdG8gZ2l2 ZSBhIG1vcmUgZGV0YWlsZWQgbG9vayBvdmVyIGJvdGggCnByb3Bvc2FscyBhbmQgc2VlIGlmIGFu eSB3b3VsZCBpbnRlcmVzdCB5b3U/CgpSZWdhcmRzLAoKVHZydGtvCgo+IFJlZ2FyZHMsCj4gQ2hy aXN0aWFuLgo+IAo+IEFtIDE0LjA1LjIxIHVtIDA5OjIyIHNjaHJpZWIgTmlldG8sIERhdmlkIE06 Cj4+Cj4+IFtBTUQgT2ZmaWNpYWwgVXNlIE9ubHkgLSBJbnRlcm5hbCBEaXN0cmlidXRpb24gT25s eV0KPj4KPj4KPj4gV2UgaGFkIGVudGVydGFpbmVkIHRoZSBpZGVhIG9mIGV4cG9zaW5nIHRoZSBw cm9jZXNzZXMgYXMgc3lzZnMgbm9kZXMgCj4+IGFzIHlvdSBwcm9wb3NlZCwgYnV0IHdlIGhhZCBj b25jZXJucyBhYm91dCBleHBvc2luZyBwcm9jZXNzIGluZm8gaW4gCj4+IHRoZXJlLCBlc3BlY2lh bGx5IHNpbmNlIC9wcm9jIGFscmVhZHkgZXhpc3RzIGZvciB0aGF0IHB1cnBvc2UuCj4+Cj4+IEkg dGhpbmsgaWYgeW91IHdlcmUgdG8gZm9sbG93IHRoYXQgYXBwcm9hY2gsIHdlIGNvdWxkIGhhdmUg dG9vbHMgbGlrZSAKPj4gdG9wIHRoYXQgc3VwcG9ydCBleHBvc2luZyBHUFUgZW5naW5lIHVzYWdl Lgo+PiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4gKkZyb206KiBBbGV4IERldWNoZXIgPGFsZXhkZXVjaGVy QGdtYWlsLmNvbT4KPj4gKlNlbnQ6KiBUaHVyc2RheSwgTWF5IDEzLCAyMDIxIDEwOjU4IFBNCj4+ ICpUbzoqIFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBsaW51eC5pbnRlbC5jb20+OyBO aWV0bywgRGF2aWQgTSAKPj4gPERhdmlkLk5pZXRvQGFtZC5jb20+OyBLb2VuaWcsIENocmlzdGlh biA8Q2hyaXN0aWFuLktvZW5pZ0BhbWQuY29tPgo+PiAqQ2M6KiBJbnRlbCBHcmFwaGljcyBEZXZl bG9wbWVudCA8SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZz47IAo+PiBNYWxpbmcgbGlz dCAtIERSSSBkZXZlbG9wZXJzIDxkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnPjsgRGFu aWVsIAo+PiBWZXR0ZXIgPGRhbmllbEBmZndsbC5jaD4KPj4gKlN1YmplY3Q6KiBSZTogW1BBVENI IDAvN10gUGVyIGNsaWVudCBlbmdpbmUgYnVzeW5lc3MKPj4gKyBEYXZpZCwgQ2hyaXN0aWFuCj4+ Cj4+IE9uIFRodSwgTWF5IDEzLCAyMDIxIGF0IDEyOjQxIFBNIFR2cnRrbyBVcnN1bGluCj4+IDx0 dnJ0a28udXJzdWxpbkBsaW51eC5pbnRlbC5jb20+IHdyb3RlOgo+PiA+Cj4+ID4KPj4gPiBIaSwK Pj4gPgo+PiA+IE9uIDEzLzA1LzIwMjEgMTY6NDgsIEFsZXggRGV1Y2hlciB3cm90ZToKPj4gPiA+ IE9uIFRodSwgTWF5IDEzLCAyMDIxIGF0IDc6MDAgQU0gVHZydGtvIFVyc3VsaW4KPj4gPiA+IDx0 dnJ0a28udXJzdWxpbkBsaW51eC5pbnRlbC5jb20+IHdyb3RlOgo+PiA+ID4+Cj4+ID4gPj4gRnJv bTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPj4gPiA+Pgo+PiA+ ID4+IFJlc3VycmVjdCBvZiB0aGUgcHJldmlvc3VseSBtZXJnZWQgcGVyIGNsaWVudCBlbmdpbmUg YnVzeW5lc3MgCj4+IHBhdGNoZXMuIEluIGEKPj4gPiA+PiBudXRzaGVsbCBpdCBlbmFibGVzIGlu dGVsX2dwdV90b3AgdG8gYmUgbW9yZSB0b3AoMSkgbGlrZSB1c2VmdWwgCj4+IGFuZCBzaG93IG5v dAo+PiA+ID4+IG9ubHkgcGh5c2ljYWwgR1BVIGVuZ2luZSB1c2FnZSBidXQgcGVyIHByb2Nlc3Mg dmlldyBhcyB3ZWxsLgo+PiA+ID4+Cj4+ID4gPj4gRXhhbXBsZSBzY3JlZW4gY2FwdHVyZToKPj4g PiA+PiAKPj4gfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KPj4gPiA+PiBpbnRlbC1ncHUtdG9wIC3C oCA5MDYvIDk1NSBNSHo7wqDCoMKgIDAlIFJDNjsgNS4zMCBXYXR0czvCoMKgwqDCoMKgIDkzMyBp cnFzL3MKPj4gPiA+Pgo+PiA+ID4+wqDCoMKgwqDCoMKgwqAgSU1DIHJlYWRzOsKgwqDCoMKgIDQ0 MTQgTWlCL3MKPj4gPiA+PsKgwqDCoMKgwqDCoCBJTUMgd3JpdGVzOsKgwqDCoMKgIDM4MDUgTWlC L3MKPj4gPiA+Pgo+PiA+ID4+wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBFTkdJTkUgQlVTWSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCj4+IE1JX1NFTUEgTUlfV0FJVAo+PiA+ ID4+wqDCoMKgwqDCoMKgIFJlbmRlci8zRC8wwqDCoCA5My40NiUgfOKWiOKWiOKWiOKWiOKWiOKW iOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKW iOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiyAgCj4+IHzCoMKgwqDCoMKgIDAlwqDCoMKgwqDCoCAw JQo+PiA+ID4+wqDCoMKgwqDCoMKgwqDCoCBCbGl0dGVyLzDCoMKgwqAgMC4wMCUgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgCj4+IHzCoMKgwqDCoMKgIDAlwqDCoMKgwqDCoCAw JQo+PiA+ID4+wqDCoMKgwqDCoMKgwqDCoMKgwqAgVmlkZW8vMMKgwqDCoCAwLjAwJSB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPj4gfMKgwqDCoMKgwqAgMCXCoMKgwqDCoMKg IDAlCj4+ID4gPj7CoMKgwqAgVmlkZW9FbmhhbmNlLzDCoMKgwqAgMC4wMCUgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgCj4+IHzCoMKgwqDCoMKgIDAlwqDCoMKgwqDCoCAwJQo+ PiA+ID4+Cj4+ID4gPj7CoMKgwqAgUElEwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBOQU1FwqAgUmVu ZGVyLzNEIEJsaXR0ZXLCoMKgwqDCoMKgwqDCoCBWaWRlbyAgICAgIAo+PiBWaWRlb0VuaGFuY2UK Pj4gPiA+PsKgwqAgMjczM8KgwqDCoMKgwqDCoCBuZXZlcmJhbGwgfOKWiOKWiOKWiOKWiOKWiOKW iOKWjCB8fMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfHwgICAgICAgICAgICAKPj4gfHzCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHwKPj4gPiA+PsKgwqAgMjA0N8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg WG9yZyB84paI4paI4paI4paKIHx8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8fCAgICAgICAgICAg IAo+PiB8fMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfAo+PiA+ID4+wqDCoCAyNzM3wqDCoMKgwqDC oMKgwqAgZ2x4Z2VhcnMgfOKWiOKWjSB8fMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfHwgICAgICAg ICAgICAKPj4gfHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwKPj4gPiA+PsKgwqAgMjEyOMKgwqDC oMKgwqDCoMKgwqDCoMKgIHhmd200IHwgfHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHx8wqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB8fMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfAo+PiA+ID4+wqDCoCAy MDQ3wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBYb3JnIHwgfHzCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IHx8wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8fMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfAo+PiA+ ID4+IAo+PiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+PiA+ID4+Cj4+ID4gPj4gSW50ZXJuYWxs eSB3ZSB0cmFjayB0aW1lIHNwZW50IG9uIGVuZ2luZXMgZm9yIGVhY2ggc3RydWN0IAo+PiBpbnRl bF9jb250ZXh0LCBib3RoCj4+ID4gPj4gZm9yIGN1cnJlbnQgYW5kIHBhc3QgY29udGV4dHMgYmVs b25naW5nIHRvIGVhY2ggb3BlbiBEUk0gZmlsZS4KPj4gPiA+Pgo+PiA+ID4+IFRoaXMgY2FuIHNl cnZlIGFzIGEgYnVpbGRpbmcgYmxvY2sgZm9yIHNldmVyYWwgZmVhdHVyZXMgZnJvbSB0aGUgCj4+ IHdhbnRlZCBsaXN0Ogo+PiA+ID4+IHNtYXJ0ZXIgc2NoZWR1bGVyIGRlY2lzaW9ucywgZ2V0cnVz YWdlKDIpLWxpa2UgcGVyLUdFTS1jb250ZXh0IAo+PiBmdW5jdGlvbmFsaXR5Cj4+ID4gPj4gd2Fu dGVkIGJ5IHNvbWUgY3VzdG9tZXJzLCBzZXRybGltaXQoMikgbGlrZSBjb250cm9scywgY2dyb3Vw cyAKPj4gY29udHJvbGxlciwKPj4gPiA+PiBkeW5hbWljIFNTRVUgdHVuaW5nLCAuLi4KPj4gPiA+ Pgo+PiA+ID4+IFRvIGVuYWJsZSB1c2Vyc3BhY2UgYWNjZXNzIHRvIHRoZSB0cmFja2VkIGRhdGEs IHdlIGV4cG9zZSB0aW1lIAo+PiBzcGVudCBvbiBHUFUgcGVyCj4+ID4gPj4gY2xpZW50IGFuZCBw ZXIgZW5naW5lIGNsYXNzIGluIHN5c2ZzIHdpdGggYSBoaWVyYXJjaHkgbGlrZSB0aGUgYmVsb3c6 Cj4+ID4gPj4KPj4gPiA+PsKgwqDCoMKgwqDCoMKgwqDCoCAjIGNkIC9zeXMvY2xhc3MvZHJtL2Nh cmQwL2NsaWVudHMvCj4+ID4gPj7CoMKgwqDCoMKgwqDCoMKgwqAgIyB0cmVlCj4+ID4gPj7CoMKg wqDCoMKgwqDCoMKgwqAgLgo+PiA+ID4+wqDCoMKgwqDCoMKgwqDCoMKgIOKUnOKUgOKUgCA3Cj4+ ID4gPj7CoMKgwqDCoMKgwqDCoMKgwqAg4pSCwqDCoCDilJzilIDilIAgYnVzeQo+PiA+ID4+wqDC oMKgwqDCoMKgwqDCoMKgIOKUgsKgwqAg4pSCwqDCoCDilJzilIDilIAgMAo+PiA+ID4+wqDCoMKg wqDCoMKgwqDCoMKgIOKUgsKgwqAg4pSCwqDCoCDilJzilIDilIAgMQo+PiA+ID4+wqDCoMKgwqDC oMKgwqDCoMKgIOKUgsKgwqAg4pSCwqDCoCDilJzilIDilIAgMgo+PiA+ID4+wqDCoMKgwqDCoMKg wqDCoMKgIOKUgsKgwqAg4pSCwqDCoCDilJTilIDilIAgMwo+PiA+ID4+wqDCoMKgwqDCoMKgwqDC oMKgIOKUgsKgwqAg4pSc4pSA4pSAIG5hbWUKPj4gPiA+PsKgwqDCoMKgwqDCoMKgwqDCoCDilILC oMKgIOKUlOKUgOKUgCBwaWQKPj4gPiA+PsKgwqDCoMKgwqDCoMKgwqDCoCDilJzilIDilIAgOAo+ PiA+ID4+wqDCoMKgwqDCoMKgwqDCoMKgIOKUgsKgwqAg4pSc4pSA4pSAIGJ1c3kKPj4gPiA+PsKg wqDCoMKgwqDCoMKgwqDCoCDilILCoMKgIOKUgsKgwqAg4pSc4pSA4pSAIDAKPj4gPiA+PsKgwqDC oMKgwqDCoMKgwqDCoCDilILCoMKgIOKUgsKgwqAg4pSc4pSA4pSAIDEKPj4gPiA+PsKgwqDCoMKg wqDCoMKgwqDCoCDilILCoMKgIOKUgsKgwqAg4pSc4pSA4pSAIDIKPj4gPiA+PsKgwqDCoMKgwqDC oMKgwqDCoCDilILCoMKgIOKUgsKgwqAg4pSU4pSA4pSAIDMKPj4gPiA+PsKgwqDCoMKgwqDCoMKg wqDCoCDilILCoMKgIOKUnOKUgOKUgCBuYW1lCj4+ID4gPj7CoMKgwqDCoMKgwqDCoMKgwqAg4pSC wqDCoCDilJTilIDilIAgcGlkCj4+ID4gPj7CoMKgwqDCoMKgwqDCoMKgwqAg4pSU4pSA4pSAIDkK Pj4gPiA+PsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIOKUnOKUgOKUgCBidXN5Cj4+ID4gPj7C oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCDilILCoMKgIOKUnOKUgOKUgCAwCj4+ID4gPj7CoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCDilILCoMKgIOKUnOKUgOKUgCAxCj4+ID4gPj7CoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCDilILCoMKgIOKUnOKUgOKUgCAyCj4+ID4gPj7CoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCDilILCoMKgIOKUlOKUgOKUgCAzCj4+ID4gPj7CoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCDilJzilIDilIAgbmFtZQo+PiA+ID4+wqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAg4pSU4pSA4pSAIHBpZAo+PiA+ID4+Cj4+ID4gPj4gRmlsZXMgaW4gJ2J1c3knIGRpcmVj dG9yaWVzIGFyZSBudW1iZXJlZCB1c2luZyB0aGUgZW5naW5lIGNsYXNzIAo+PiBBQkkgdmFsdWVz IGFuZAo+PiA+ID4+IHRoZXkgY29udGFpbiBhY2N1bXVsYXRlZCBuYW5vc2Vjb25kcyBlYWNoIGNs aWVudCBzcGVudCBvbiBlbmdpbmVzIAo+PiBvZiBhCj4+ID4gPj4gcmVzcGVjdGl2ZSBjbGFzcy4K Pj4gPiA+Cj4+ID4gPiBXZSBkaWQgc29tZXRoaW5nIHNpbWlsYXIgaW4gYW1kZ3B1IHVzaW5nIHRo ZSBncHUgc2NoZWR1bGVyLsKgIFdlIHRoZW4KPj4gPiA+IGV4cG9zZSB0aGUgZGF0YSB2aWEgZmRp bmZvLsKgIFNlZQo+PiA+ID4gCj4+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3RlY3Rpb24u b3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmNnaXQuZnJlZWRlc2t0b3Aub3JnJTJGZHJt JTJGZHJtLW1pc2MlMkZjb21taXQlMkYlM0ZpZCUzRDE3NzRiYWE2NGY5Mzk1ZmE4ODRlYTllZDQ5 NGJjYjA0M2YzYjgzZjUmYW1wO2RhdGE9MDQlN0MwMSU3Q0RhdmlkLk5pZXRvJTQwYW1kLmNvbSU3 QzVlM2MwNTU3OGVmMTRiZTM2OTI1MDhkOTE2OWQ1NWJmJTdDM2RkODk2MWZlNDg4NGU2MDhlMTFh ODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzU2NTY4NzI3MzE0NDYxNSU3Q1Vua25vd24lN0NUV0Zw Ykdac2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhh V3dpTENKWFZDSTZNbjAlM0QlN0MxMDAwJmFtcDtzZGF0YT1tdDFFSUwlMkZjOXBIQ1hSJTJGWVNk JTJCVHIxZTY0WEhvZVljZFEyY1l1ZkolMkZjWVElM0QmYW1wO3Jlc2VydmVkPTAgCj4+IDxodHRw czovL25hbTExLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0El MkYlMkZjZ2l0LmZyZWVkZXNrdG9wLm9yZyUyRmRybSUyRmRybS1taXNjJTJGY29tbWl0JTJGJTNG aWQlM0QxNzc0YmFhNjRmOTM5NWZhODg0ZWE5ZWQ0OTRiY2IwNDNmM2I4M2Y1JmFtcDtkYXRhPTA0 JTdDMDElN0NEYXZpZC5OaWV0byU0MGFtZC5jb20lN0M1ZTNjMDU1NzhlZjE0YmUzNjkyNTA4ZDkx NjlkNTViZiU3QzNkZDg5NjFmZTQ4ODRlNjA4ZTExYTgyZDk5NGUxODNkJTdDMCU3QzAlN0M2Mzc1 NjU2ODcyNzMxNDQ2MTUlN0NVbmtub3duJTdDVFdGcGJHWnNiM2Q4ZXlKV0lqb2lNQzR3TGpBd01E QWlMQ0pRSWpvaVYybHVNeklpTENKQlRpSTZJazFoYVd3aUxDSlhWQ0k2TW4wJTNEJTdDMTAwMCZh bXA7c2RhdGE9bXQxRUlMJTJGYzlwSENYUiUyRllTZCUyQlRyMWU2NFhIb2VZY2RRMmNZdWZKJTJG Y1lRJTNEJmFtcDtyZXNlcnZlZD0wPgo+PiA+ID4gCj4+IGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtz LnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmNnaXQuZnJlZWRlc2t0 b3Aub3JnJTJGZHJtJTJGZHJtLW1pc2MlMkZjb21taXQlMkYlM0ZpZCUzRDg3NDQ0MjU0MTEzM2Y3 OGM3OGI2ODgwYjhjYzQ5NWJhYjVjNjE3MDQmYW1wO2RhdGE9MDQlN0MwMSU3Q0RhdmlkLk5pZXRv JTQwYW1kLmNvbSU3QzVlM2MwNTU3OGVmMTRiZTM2OTI1MDhkOTE2OWQ1NWJmJTdDM2RkODk2MWZl NDg4NGU2MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdDMCU3QzYzNzU2NTY4NzI3MzE0NDYxNSU3Q1Vu a25vd24lN0NUV0ZwYkdac2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJam9pVjJsdU16SWlM Q0pCVGlJNklrMWhhV3dpTENKWFZDSTZNbjAlM0QlN0MxMDAwJmFtcDtzZGF0YT0lMkYzek1HdzBM UFRDMWtHNE5lYlR3VVBUeDdRQ3RFeXclMkI0SlRvWERLNVFYSSUzRCZhbXA7cmVzZXJ2ZWQ9MCAK Pj4gPGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1o dHRwcyUzQSUyRiUyRmNnaXQuZnJlZWRlc2t0b3Aub3JnJTJGZHJtJTJGZHJtLW1pc2MlMkZjb21t aXQlMkYlM0ZpZCUzRDg3NDQ0MjU0MTEzM2Y3OGM3OGI2ODgwYjhjYzQ5NWJhYjVjNjE3MDQmYW1w O2RhdGE9MDQlN0MwMSU3Q0RhdmlkLk5pZXRvJTQwYW1kLmNvbSU3QzVlM2MwNTU3OGVmMTRiZTM2 OTI1MDhkOTE2OWQ1NWJmJTdDM2RkODk2MWZlNDg4NGU2MDhlMTFhODJkOTk0ZTE4M2QlN0MwJTdD MCU3QzYzNzU2NTY4NzI3MzE0NDYxNSU3Q1Vua25vd24lN0NUV0ZwYkdac2IzZDhleUpXSWpvaU1D NHdMakF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpTENKWFZDSTZNbjAlM0Ql N0MxMDAwJmFtcDtzZGF0YT0lMkYzek1HdzBMUFRDMWtHNE5lYlR3VVBUeDdRQ3RFeXclMkI0SlRv WERLNVFYSSUzRCZhbXA7cmVzZXJ2ZWQ9MD4KPj4gPgo+PiA+IEludGVyZXN0aW5nIQo+PiA+Cj4+ ID4gSXMgeW91cnMgd2FsbCB0aW1lIG9yIGFjdHVhbCBHUFUgdGltZSB0YWtpbmcgcHJlZW1wdGlv biBhbmQgc3VjaCBpbnRvCj4+ID4gYWNjb3VudD8gRG8geW91IGhhdmUgc29tZSB1c2Vyc3BhY2Ug dG9vbHMgcGFyc2luZyB0aGlzIGRhdGEgYW5kIGhvdyB0bwo+PiA+IGRvIHlvdSBjbGllbnQgZGlz Y292ZXJ5PyBQcmVzdW1hYmx5IHRoZXJlIGhhcyB0byBiZSBhIGJldHRlciB3YXkgdGhhdAo+PiA+ IGdvaW5nIHRocm91Z2ggYWxsIG9wZW4gZmlsZSBkZXNjcmlwdG9ycz8KPj4KPj4gV2FsbCB0aW1l LsKgIEl0IHVzZXMgdGhlIGZlbmNlcyBpbiB0aGUgc2NoZWR1bGVyIHRvIGNhbGN1bGF0ZSBlbmdp bmUKPj4gdGltZS7CoCBXZSBoYXZlIHNvbWUgcHl0aG9uIHNjcmlwdHMgdG8gbWFrZSBpdCBsb29r IHByZXR0eSwgYnV0IG1haW5seQo+PiBqdXN0IHJlYWRpbmcgdGhlIGZpbGVzIGRpcmVjdGx5LsKg IElmIHlvdSBrbm93IHRoZSBwcm9jZXNzLCB5b3UgY2FuCj4+IGxvb2sgaXQgdXAgaW4gcHJvY2Zz Lgo+Pgo+PiA+Cj4+ID4gT3VyIGltcGxlbWVudGF0aW9uIHdhcyBtZXJnZWQgaW4gSmFudWFyeSBi dXQgRGFuaWVsIHRvb2sgaXQgb3V0IHJlY2VudGx5Cj4+ID4gYmVjYXVzZSBoZSB3YW50ZWQgdG8g aGF2ZSBkaXNjdXNzaW9uIGFib3V0IGEgY29tbW9uIHZlbmRvciBmcmFtZXdvcmsgZm9yCj4+ID4g dGhpcyB3aG9sZSBzdG9yeSBvbiBkcmktZGV2ZWwuIEkgdGhpbmsuICtEYW5pZWwgdG8gY29tbWVu dC4KPj4gPgo+PiA+IEkgY291bGRuJ3QgZmluZCB0aGUgcGF0Y2ggeW91IHBhc3RlZCBvbiB0aGUg bWFpbGluZyBsaXN0IHRvIHNlZSBpZiB0aGVyZQo+PiA+IHdhcyBhbnkgc3VjaCBkaXNjdXNzaW9u IGFyb3VuZCB5b3VyIHZlcnNpb24uCj4+Cj4+IEl0IHdhcyBvbiB0aGUgYW1kLWdmeCBtYWlsaW5n IGxpc3QuCj4+Cj4+IEFsZXgKPj4KPj4gPgo+PiA+IFJlZ2FyZHMsCj4+ID4KPj4gPiBUdnJ0a28K Pj4gPgo+PiA+ID4KPj4gPiA+IEFsZXgKPj4gPiA+Cj4+ID4gPgo+PiA+ID4+Cj4+ID4gPj4gVHZy dGtvIFVyc3VsaW4gKDcpOgo+PiA+ID4+wqDCoMKgIGRybS9pOTE1OiBFeHBvc2UgbGlzdCBvZiBj bGllbnRzIGluIHN5c2ZzCj4+ID4gPj7CoMKgwqAgZHJtL2k5MTU6IFVwZGF0ZSBjbGllbnQgbmFt ZSBvbiBjb250ZXh0IGNyZWF0ZQo+PiA+ID4+wqDCoMKgIGRybS9pOTE1OiBNYWtlIEdFTSBjb250 ZXh0cyB0cmFjayBEUk0gY2xpZW50cwo+PiA+ID4+wqDCoMKgIGRybS9pOTE1OiBUcmFjayBydW50 aW1lIHNwZW50IGluIGNsb3NlZCBhbmQgdW5yZWFjaGFibGUgR0VNIAo+PiBjb250ZXh0cwo+PiA+ ID4+wqDCoMKgIGRybS9pOTE1OiBUcmFjayBhbGwgdXNlciBjb250ZXh0cyBwZXIgY2xpZW50Cj4+ ID4gPj7CoMKgwqAgZHJtL2k5MTU6IFRyYWNrIGNvbnRleHQgY3VycmVudCBhY3RpdmUgdGltZQo+ PiA+ID4+wqDCoMKgIGRybS9pOTE1OiBFeHBvc2UgcGVyLWVuZ2luZSBjbGllbnQgYnVzeW5lc3MK Pj4gPiA+Pgo+PiA+ID4+IGRyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgwqAgNSArLQo+PiA+ID4+IGRyaXZlcnMvZ3B1L2RybS9p OTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0LmPCoMKgIHzCoCA2MSArKy0KPj4gPiA+PiAuLi4vZ3B1 L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9jb250ZXh0X3R5cGVzLmggfMKgIDE2ICstCj4+ID4gPj4g ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dC5jwqDCoMKgwqDCoMKgIHzCoCAy NyArLQo+PiA+ID4+IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHQuaMKgwqDC oMKgwqDCoCB8wqAgMTUgKy0KPj4gPiA+PiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9j b250ZXh0X3R5cGVzLmggfMKgIDI0ICstCj4+ID4gPj4gLi4uL2RybS9pOTE1L2d0L2ludGVsX2V4 ZWNsaXN0c19zdWJtaXNzaW9uLmPCoCB8wqAgMjMgKy0KPj4gPiA+PiAuLi4vZ3B1L2RybS9pOTE1 L2d0L2ludGVsX2d0X2Nsb2NrX3V0aWxzLmPCoMKgwqAgfMKgwqAgNCArCj4+ID4gPj4gZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfbHJjLmPCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMjcg Ky0KPj4gPiA+PiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuaMKgwqDCoMKgwqDC oMKgwqDCoMKgIHzCoCAyNCArKwo+PiA+ID4+IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0 ZXN0X2xyYy5jwqDCoMKgwqDCoMKgwqAgfMKgIDEwICstCj4+ID4gPj4gZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcm1fY2xpZW50LmPCoMKgwqDCoMKgwqDCoCB8IDM2NSAKPj4gKysrKysrKysr KysrKysrKysrCj4+ID4gPj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcm1fY2xpZW50LmjC oMKgwqDCoMKgwqDCoCB8IDEyMyArKysrKysKPj4gPiA+PiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCA2ICsKPj4gPiA+PiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5owqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCB8wqDCoCA1ICsKPj4gPiA+PiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMjEgKy0KPj4gPiA+PiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dwdV9lcnJvci5jwqDCoMKgwqDCoMKgwqDCoCB8wqAgMzEgKy0KPj4gPiA+PiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJvci5owqDCoMKgwqDCoMKgwqDCoCB8wqDC oCAyICstCj4+ID4gPj4gZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zeXNmcy5jwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHzCoMKgIDggKwo+PiA+ID4+wqDCoCAxOSBmaWxlcyBjaGFuZ2VkLCA3 MTYgaW5zZXJ0aW9ucygrKSwgODEgZGVsZXRpb25zKC0pCj4+ID4gPj7CoMKgIGNyZWF0ZSBtb2Rl IDEwMDY0NCBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RybV9jbGllbnQuYwo+PiA+ID4+wqDC oCBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcm1fY2xpZW50 LmgKPj4gPiA+Pgo+PiA+ID4+IC0tCj4+ID4gPj4gMi4zMC4yCj4+ID4gPj4KPiAKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==