From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v5 00/35] GPU scheduler for i915 driver Date: Thu, 18 Feb 2016 14:26:48 +0000 Message-ID: <1455805644-6450-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id EF8A46E35C for ; Thu, 18 Feb 2016 14:27:26 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-GFX@Lists.FreeDesktop.Org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KCkltcGxlbWVu dGVkIGEgYmF0Y2ggYnVmZmVyIHN1Ym1pc3Npb24gc2NoZWR1bGVyIGZvciB0aGUgaTkxNSBEUk0g ZHJpdmVyLgoKVGhlIGdlbmVyYWwgdGhlb3J5IG9mIG9wZXJhdGlvbiBpcyB0aGF0IHdoZW4gYmF0 Y2ggYnVmZmVycyBhcmUKc3VibWl0dGVkIHRvIHRoZSBkcml2ZXIsIHRoZSBleGVjYnVmZmVyKCkg Y29kZSBhc3NpZ25zIGEgdW5pcXVlIHNlcW5vCnZhbHVlIGFuZCB0aGVuIHBhY2thZ2VzIHVwIGFs bCB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZXhlY3V0ZSB0aGUKYmF0Y2ggYnVmZmVyIGF0 IGEgbGF0ZXIgdGltZS4gVGhpcyBwYWNrYWdlIGlzIGdpdmVuIG92ZXIgdG8gdGhlCnNjaGVkdWxl ciB3aGljaCBhZGRzIGl0IHRvIGFuIGludGVybmFsIG5vZGUgbGlzdC4gVGhlIHNjaGVkdWxlciBh bHNvCnNjYW5zIHRoZSBsaXN0IG9mIG9iamVjdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBiYXRjaCBi dWZmZXIgYW5kCmNvbXBhcmVzIHRoZW0gYWdhaW5zdCB0aGUgb2JqZWN0cyBhbHJlYWR5IGluIHVz ZSBieSBvdGhlciBidWZmZXJzIGluCnRoZSBub2RlIGxpc3QuIElmIG1hdGNoZXMgYXJlIGZvdW5k IHRoZW4gdGhlIG5ldyBiYXRjaCBidWZmZXIgbm9kZSBpcwptYXJrZWQgYXMgYmVpbmcgZGVwZW5k ZW50IHVwb24gdGhlIG1hdGNoaW5nIG5vZGUuIFRoZSBzYW1lIGlzIGRvbmUgZm9yCnRoZSBjb250 ZXh0IG9iamVjdC4gVGhlIHNjaGVkdWxlciBhbHNvIGJ1bXBzIHVwIHRoZSBwcmlvcml0eSBvZiBz dWNoCm1hdGNoaW5nIG5vZGVzIG9uIHRoZSBncm91bmRzIHRoYXQgdGhlIG1vcmUgZGVwZW5kZW5j aWVzIGEgZ2l2ZW4gYmF0Y2gKYnVmZmVyIGhhcyB0aGUgbW9yZSBpbXBvcnRhbnQgaXQgaXMgbGlr ZWx5IHRvIGJlLgoKVGhlIHNjaGVkdWxlciBhaW1zIHRvIGhhdmUgYSBnaXZlbiAodHVuZWFibGUp IG51bWJlciBvZiBiYXRjaCBidWZmZXJzCmluIGZsaWdodCBvbiB0aGUgaGFyZHdhcmUgYXQgYW55 IGdpdmVuIHRpbWUuIElmIGZld2VyIHRoYW4gdGhpcyBhcmUKY3VycmVudGx5IGV4ZWN1dGluZyB3 aGVuIGEgbmV3IG5vZGUgaXMgcXVldWVkLCB0aGVuIHRoZSBub2RlIGlzIHBhc3NlZApzdHJhaWdo dCB0aHJvdWdoIHRvIHRoZSBzdWJtaXQgZnVuY3Rpb24uIE90aGVyd2lzZSBpdCBpcyBzaW1wbHkg YWRkZWQKdG8gdGhlIHF1ZXVlIGFuZCB0aGUgZHJpdmVyIHJldHVybnMgYmFjayB0byB1c2VyIGxh bmQuCgpBcyBlYWNoIGJhdGNoIGJ1ZmZlciBjb21wbGV0ZXMsIGl0IHJhaXNlcyBhbiBpbnRlcnJ1 cHQgd2hpY2ggd2FrZXMgdXAKdGhlIHNjaGVkdWxlci4gTm90ZSB0aGF0IGl0IGlzIHBvc3NpYmxl IGZvciBtdWx0aXBsZSBidWZmZXJzIHRvCmNvbXBsZXRlIGJlZm9yZSB0aGUgSVJRIGhhbmRsZXIg Z2V0cyB0byBydW4uIEZ1cnRoZXIsIHRoZSBzZXFubyB2YWx1ZXMKb2YgdGhlIGluZGl2aWR1YWwg YnVmZmVycyBhcmUgbm90IG5lY2Vzc2FyeSBpbmNyZW1lbnRpbmcgYXMgdGhlCnNjaGVkdWxlciBt YXkgaGF2ZSByZS1vcmRlcmVkIHRoZWlyIHN1Ym1pc3Npb24uIEhvd2V2ZXIsIHRoZSBzY2hlZHVs ZXIKa2VlcHMgdGhlIGxpc3Qgb2YgZXhlY3V0aW5nIGJ1ZmZlcnMgaW4gb3JkZXIgb2YgaGFyZHdh cmUgc3VibWlzc2lvbi4KVGh1cyBpdCBjYW4gc2NhbiB0aHJvdWdoIHRoZSBsaXN0IHVudGlsIGEg bWF0Y2hpbmcgc2Vxbm8gaXMgZm91bmQgYW5kCnRoZW4gbWFyayBhbGwgaW4gZmxpZ2h0IG5vZGVz IGZyb20gdGhhdCBwb2ludCBvbiBhcyBjb21wbGV0ZWQuCgpBIGRlZmVycmVkIHdvcmsgcXVldWUg aXMgYWxzbyBwb2tlZCBieSB0aGUgaW50ZXJydXB0IGhhbmRsZXIuIFdoZW4KdGhpcyB3YWtlcyB1 cCBpdCBjYW4gZG8gbW9yZSBpbnZvbHZlZCBwcm9jZXNzaW5nIHN1Y2ggYXMgYWN0dWFsbHkKcmVt b3ZpbmcgY29tcGxldGVkIG5vZGVzIGZyb20gdGhlIHF1ZXVlIGFuZCBmcmVlaW5nIHVwIHRoZSBy ZXNvdXJjZXMKYXNzb2NpYXRlZCB3aXRoIHRoZW0gKGludGVybmFsIG1lbW9yeSBhbGxvY2F0aW9u cywgRFJNIG9iamVjdApyZWZlcmVuY2VzLCBjb250ZXh0IHJlZmVyZW5jZSwgZXRjLikuIFRoZSB3 b3JrIGhhbmRsZXIgYWxzbyBjaGVja3MgdGhlCmluIGZsaWdodCBjb3VudCBhbmQgY2FsbHMgdGhl IHN1Ym1pc3Npb24gY29kZSBpZiBhIG5ldyBzbG90IGhhcwphcHBlYXJlZC4KCldoZW4gdGhlIHNj aGVkdWxlcidzIHN1Ym1pdCBjb2RlIGlzIGNhbGxlZCwgaXQgc2NhbnMgdGhlIHF1ZXVlZCBub2Rl Cmxpc3QgZm9yIHRoZSBoaWdoZXN0IHByaW9yaXR5IG5vZGUgdGhhdCBoYXMgbm8gdW5tZXQgZGVw ZW5kZW5jaWVzLgpOb3RlIHRoYXQgdGhlIGRlcGVuZGVuY3kgY2FsY3VsYXRpb24gaXMgY29tcGxl eCBhcyBpdCBtdXN0IHRha2UKaW50ZXItcmluZyBkZXBlbmRlbmNpZXMgYW5kIHBvdGVudGlhbCBw cmVlbXB0aW9ucyBpbnRvIGFjY291bnQuIE5vdGUKYWxzbyB0aGF0IGluIHRoZSBmdXR1cmUgdGhp cyB3aWxsIGJlIGV4dGVuZGVkIHRvIGluY2x1ZGUgZXh0ZXJuYWwKZGVwZW5kZW5jaWVzIHN1Y2gg YXMgdGhlIEFuZHJvaWQgTmF0aXZlIFN5bmMgZmlsZSBkZXNjcmlwdG9ycyBhbmQvb3IKdGhlIGxp bnV4IGRtYS1idWZmIHN5bmNocm9uaXNhdGlvbiBzY2hlbWUuCgpJZiBhIHN1aXRhYmxlIG5vZGUg aXMgZm91bmQgdGhlbiBpdCBpcyBzZW50IHRvIGV4ZWNidWZmX2ZpbmFsKCkgZm9yCnN1Ym1pc3Np b24gdG8gdGhlIGhhcmR3YXJlLiBUaGUgaW4gZmxpZ2h0IGNvdW50IGlzIHRoZW4gcmUtY2hlY2tl ZCBhbmQKYSBuZXcgbm9kZSBwb3BwZWQgZnJvbSB0aGUgbGlzdCBpZiBhcHByb3ByaWF0ZS4KClRo ZSBzY2hlZHVsZXIgYWxzbyBhbGxvd3MgaGlnaCBwcmlvcml0eSBiYXRjaCBidWZmZXJzIChlLmcu IGZyb20gYQpkZXNrdG9wIGNvbXBvc2l0b3IpIHRvIGp1bXAgYWhlYWQgb2Ygd2hhdGV2ZXIgaXMg YWxyZWFkeSBydW5uaW5nIGlmCnRoZSB1bmRlcmx5aW5nIGhhcmR3YXJlIHN1cHBvcnRzIHByZS1l bXB0aW9uLiBJbiB0aGlzIHNpdHVhdGlvbiwgYW55CndvcmsgdGhhdCB3YXMgcHJlLWVtcHRlZCBp cyByZXR1cm5lZCB0byB0aGUgcXVldWVkIGxpc3QgcmVhZHkgdG8gYmUKcmVzdWJtaXR0ZWQgd2hl biBubyBtb3JlIGhpZ2ggcHJpb3JpdHkgd29yayBpcyBvdXRzdGFuZGluZy4KClZhcmlvdXMgSUdU IHRlc3RzIGFyZSBpbiBwcm9ncmVzcyB0byB0ZXN0IHRoZSBzY2hlZHVsZXIncyBvcGVyYXRpb24K YW5kIHdpbGwgZm9sbG93LgoKdjI6IFVwZGF0ZWQgZm9yIGNoYW5nZXMgaW4gc3RydWN0IGZlbmNl IHBhdGNoIHNlcmllcyBhbmQgb3RoZXIgY2hhbmdlcwp0byB1bmRlcmx5aW5nIHRyZWUgKGUuZy4g cmVtb3ZhbCBvZiBjbGlwcmVjdHMpLiBBbHNvIGNoYW5nZWQgcHJpb3JpdHkKbGV2ZWxzIHRvIGJl IHNpZ25lZCArLy0xMDIzIHJhbmdlIGFuZCByZWR1Y2VkIG11dGV4IGxvY2sgdXNhZ2UuCgp2Mzog TW9yZSByZXVzZSBvZiBjYWNoZWQgcG9pbnRlcnMgcmF0aGVyIHRoYW4gcmVwZWF0ZWQgZGVyZWZl cmVuY2luZwooRGF2aWQgR29yZG9uKS4KCk1vdmVkIHRoZSBkZXBlbmRlbmN5IGdlbmVyYXRpb24g Y29kZSBvdXQgdG8gYSBzZXBlcmF0ZSBmdW5jdGlvbiBmb3IKZWFzaWVyIHJlYWRhYmlsaXR5LiBB bHNvIGFkZGVkIGluIHN1cHBvcnQgZm9yIHRoZSByZWFkLXJlYWQKb3B0aW1pc2F0aW9uLgoKTWFq b3Igc2ltcGxpZmljYXRpb24gb2YgdGhlIERSTSBmaWxlIGNsb3NlIGhhbmRsZXIuCgpGaXhlZCB1 cCBhbiBvdmVyemVhbG91cyBXQVJOLgoKUmVtb3ZlZCB1bm5lY2Vzc2FyeSBmbHVzaGluZyBvZiB0 aGUgc2NoZWR1bGVyIHF1ZXVlIHdoZW4gd2FpdGluZyBmb3IgYQpyZXF1ZXN0LgoKdjQ6IFJlbW92 ZWQgdXNlciBsYW5kIGZlbmNlL3N5bmMgaW50ZWdyYXRpb24gYXMgdGhpcyBpcyBkZXBlbmRlbnQg dXBvbgp0aGUgZGUtc3RhZ2luZyBvZiB0aGUgQW5kcm9pZCBzeW5jIGNvZGUuIFRoYXQgZGUtc3Rh Z2luZyBpcyBub3cgYmVpbmcKZG9uZSBieSBzb21lb25lIGVsc2UuIFRoZSBzeW5jIHN1cHBvcnQg d2lsbCBiZSBhZGRlZCBiYWNrIGluIHRvIHRoZQpzY2hlZHVsZXIgaW4gYSBzZXBhcmF0ZSBwYXRj aCBzZXJpZXMgd2hpY2ggbXVzdCB3YWl0IGZvciB0aGUKZGUtc3RhZ2luZyB0byBiZSBsYW5kZWQg Zmlyc3QuCgpBZGRlZCBzdXBwb3J0IGZvciBraWxsaW5nIGJhdGNoZXMgZnJvbSBjb250ZXh0cyB0 aGF0IHdlcmUgYmFubmVkIGFmdGVyCnRoZSBiYXRjaGVzIHdlcmUgc3VibWl0dGVkIHRvIHRoZSBz Y2hlZHVsZXIuCgpDaGFuZ2VkIHZhcmlvdXMgY29tbWVudHMgdG8gZml4IHR5cG9zLCB1cGRhdGUg dG8gcmVmbGVjdCBjaGFuZ2VzIHRvCnRoZSBjb2RlLCBjb3JyZWN0IGZvcm1hdHRpbmcgYW5kIGxp bmUgd3JhcHBpbmcsIGV0Yy4gQWxzbyB3cmFwcGVkCnZhcmlvdXMgbG9uZyBsaW5lcyBhbmQgdHdp ZGRsZWQgd2hpdGUgc3BhY2UgdG8ga2VlcCB0aGUgc3R5bGUgY2hlY2tlcgpoYXBweS4KCkNoYW5n ZWQgYSBidW5jaCBvZiBCVUdfT05zIHRvIFdBUk5fT05zIGFzIGFwcGFyZW50bHkgdGhlIGxhdHRl ciBhcmUKcHJlZmVycmVkLgoKVXNlZCB0aGUgY29ycmVjdCBhcnJheSBtZW1vcnkgYWxsb2NhdG9y IGZ1bmN0aW9uIChrbWFsbG9jX2FycmF5Cmluc3RlYWQgb2Yga21hbGxvYykuCgpGaXhlZCBhIHZh cmlhYmxlIHR5cGUgKHJldmlldyBjb21tZW50IGJ5IEpvb25hcykuCgpGaXhlZCBhIFdBUk5fT04g ZmlyaW5nIGluY29ycmVjdGx5IHdoZW4gcmVtb3Zpbmcga2lsbGVkIG5vZGVzIGZyb20gdGhlCnNj aGVkdWxlcidzIHF1ZXVlLgoKRHJvcHBlZCByZWdpc3RlciBkZWZpbml0aW9uIHVwZGF0ZSBwYXRj aCBmcm9tIHRoaXMgc2VyaWVzLiBUaGUgY2hhbmdlcwphcmUgYWxsIGZvciBwcmUtZW1wdGlvbiBz byBpdCBtYWtlcyBtb3JlIHNlbnNlIGZvciBpdCB0byBiZSBwYXJ0IG9mCnRoYXQgc2VyaWVzIGlu c3RlYWQuCgp2NTogUmV2ZXJ0ZWQgcG93ZXIgbWFuYWdlbWVudCBjaGFuZ2VzIGFzIHRoZXkgYXBw YXJlbnRseSBjb25mbGljdCB3aXRoCm11dGV4IGFjcXVpc2l0aW9uLiBDb252ZXJ0ZWQgdGhlIG92 ZXJyaWRlIG1hc2sgbW9kdWxlIHBhcmFtZXRlciB0byBhCnNldCBvZiBib29sZWFuIGVuYWJsZSBm bGFncyAoanVzdCBvbmUgaW4gdGhpcyBwYXRjaCBzZXQsIGJ1dCBvdGhlcnMKYXJlIGFkZGVkIGxh dGVyIGZvciBjb250cm9sbGluZyBwcmUtZW1wdGlvbikuIFtDaHJpcyBXaWxzb25dCgpSZW1vdmVk IGxvdHMgb2Ygd2hpdGVzcGFjZSBmcm9tIGk5MTVfc2NoZWR1bGVyLmMgYW5kIHJlLW9yZGVyZWQg aXQgdG8KcmVtb3ZlIGFsbCBmb3J3YXJkIGRlY2xhcmF0aW9ucy4gU3F1YXNoZWQgZG93biB0aGUg aTkxNV9zY2hlZHVsZXIuYwpzZWN0aW9ucyBvZiB2YXJpb3VzIHBhdGNoZXMgaW50byB0aGUgaW5p dGlhbCAnc3RhcnQgb2Ygc2NoZWR1bGVyJwpwYXRjaC4gVGh1cyB0aGUgbGF0ZXIgcGF0Y2hlcyBz aW1wbHkgaG9vayBpbiBleGlzdGluZyBjb2RlIGludG8KdmFyaW91cyBwYXJ0cyBvZiB0aGUgZHJp dmVyIHJhdGhlciB0aGFuIGFkZGluZyB0aGUgY29kZSBhcyB3ZWxsLiBBZGRlZApkb2N1bWVudGF0 aW9uIHRvIHZhcmlvdXMgZnVuY3Rpb25zLiBSZS13b3JrZWQgdGhlIHN1Ym1pdCBmdW5jdGlvbiBp bgp0ZXJtcyBvZiBtdXRleCBsb2NraW5nLCBlcnJvciBoYW5kbGluZyBhbmQgZXhpdCBwYXRocy4g U3BsaXQgdGhlCmRlbGF5ZWQgd29yayBoYW5kbGVyIGZ1bmN0aW9uIGluIGhhbGYuIE1hZGUgdXNl IG9mIHRoZSBrZXJuZWwgJ2NsYW1wJwptYWNyby4gW0pvb25hcyBMYWh0aW5lbl0KCkRyb3BwZWQg dGhlICdpbW1lZGlhdGUgc3VibWlzc2lvbicgb3ZlcnJpZGUgb3B0aW9uLiBUaGlzIHdhcyBhIGhh bGYKd2F5IGhvdXNlIGJldHdlZW4gZnVsbCBzY2hlZHVsZXIgYW5kIGRpcmVjdCBzdWJtaXNzaW9u IGFuZCB3YXMgb25seQpyZWFsbHkgdXNlZnVsIGR1cmluZyBlYXJseSBkZWJ1Zy4KCkFkZGVkIGEg cmUtaW5zdGFsbCBvZiB0aGUgc2NoZWR1bGVyJ3MgaW50ZXJydXB0IGhvb2sgYXJvdW5kIEdQVSBy ZXNldC4KW1poaXBlbmcgR29uZ10KClVzZWQgbGlnaHRlciB3ZWlnaHQgc3BpbmxvY2tzLgoKW1Bh dGNoZXMgYWdhaW5zdCBkcm0taW50ZWwtbmlnaHRseSB0cmVlIGZldGNoZWQgMTkvMDEvMjAxNiB3 aXRoIHN0cnVjdApmZW5jZSBjb252ZXJzaW9uIHBhdGNoZXMgYXBwbGllZF0KCkRhdmUgR29yZG9u ICgyKToKICBkcm0vaTkxNTogQ2FjaGUgcmVxdWVzdCBwb2ludGVyIGluICpfc3VibWlzc2lvbl9m aW5hbCgpCiAgZHJtL2k5MTU6IEFkZCBzY2hlZHVsaW5nIHByaW9yaXR5IHRvIHBlci1jb250ZXh0 IHBhcmFtZXRlcnMKCkpvaG4gSGFycmlzb24gKDMzKToKICBkcm0vaTkxNTogQWRkIHRvdGFsIGNv dW50IHRvIGNvbnRleHQgc3RhdHVzIGRlYnVnZnMgb3V0cHV0CiAgZHJtL2k5MTU6IFByZWx1ZGUg dG8gc3BsaXR0aW5nIGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIgaW4gdHdvCiAgZHJtL2k5MTU6IFNw bGl0IGk5MTVfZGVtX2RvX2V4ZWNidWZmZXIoKSBpbiBoYWxmCiAgZHJtL2k5MTU6IFJlLWluc3Rh dGUgcmVxdWVzdC0+dW5pcSBiZWNhdXNlIGl0IGlzIGV4dHJlbWVseSB1c2VmdWwKICBkcm0vaTkx NTogU3RhcnQgb2YgR1BVIHNjaGVkdWxlcgogIGRybS9pOTE1OiBQcmVwYXJlIHJldGlyZV9yZXF1 ZXN0cyB0byBoYW5kbGUgb3V0LW9mLW9yZGVyIHNlcW5vcwogIGRybS9pOTE1OiBEaXNhYmxlIGhh cmR3YXJlIHNlbWFwaG9yZXMgd2hlbiBHUFUgc2NoZWR1bGVyIGlzIGVuYWJsZWQKICBkcm0vaTkx NTogRm9yY2UgTU1JTyBmbGlwcyB3aGVuIHNjaGVkdWxlciBlbmFibGVkCiAgZHJtL2k5MTU6IEFk ZGVkIHNjaGVkdWxlciBob29rIHdoZW4gY2xvc2luZyBEUk0gZmlsZSBoYW5kbGVzCiAgZHJtL2k5 MTU6IEFkZGVkIHNjaGVkdWxlciBob29rIGludG8gaTkxNV9nZW1fcmVxdWVzdF9ub3RpZnkoKQog IGRybS9pOTE1OiBBZGRlZCBkZWZlcnJlZCB3b3JrIGhhbmRsZXIgZm9yIHNjaGVkdWxlcgogIGRy bS9pOTE1OiBSZWRpcmVjdCBleGVjYnVmZmVyX2ZpbmFsKCkgdmlhIHNjaGVkdWxlcgogIGRybS9p OTE1OiBLZWVwIHRoZSByZXNlcnZlZCBzcGFjZSBtZWNoYW5pc20gaGFwcHkKICBkcm0vaTkxNTog QWRkZWQgdHJhY2tpbmcvbG9ja2luZyBvZiBiYXRjaCBidWZmZXIgb2JqZWN0cwogIGRybS9pOTE1 OiBIb29rIHNjaGVkdWxlciBub2RlIGNsZWFuIHVwIGludG8gcmV0aXJlIHJlcXVlc3RzCiAgZHJt L2k5MTU6IEFkZGVkIHNjaGVkdWxlciBzdXBwb3J0IHRvIF9fd2FpdF9yZXF1ZXN0KCkgY2FsbHMK ICBkcm0vaTkxNTogQWRkZWQgc2NoZWR1bGVyIHN1cHBvcnQgdG8gcGFnZSBmYXVsdCBoYW5kbGVy CiAgZHJtL2k5MTU6IEFkZGVkIHNjaGVkdWxlciBmbHVzaCBjYWxscyB0byByaW5nIHRocm90dGxl IGFuZCBpZGxlIGZ1bmN0aW9ucwogIGRybS9pOTE1OiBBZGQgc2NoZWR1bGVyIGhvb2sgdG8gR1BV IHJlc2V0CiAgZHJtL2k5MTU6IEFkZGVkIGEgbW9kdWxlIHBhcmFtZXRlciB0byBhbGxvdyB0aGUg c2NoZWR1bGVyIHRvIGJlIGRpc2FibGVkCiAgZHJtL2k5MTU6IFN1cHBvcnQgZm9yICd1bmZsdXNo ZWQnIHJpbmcgaWRsZQogIGRybS9pOTE1OiBEZWZlciBzZXFubyBhbGxvY2F0aW9uIHVudGlsIGFj dHVhbCBoYXJkd2FyZSBzdWJtaXNzaW9uIHRpbWUKICBkcm0vaTkxNTogQWRkZWQgdHJhY2UgcG9p bnRzIHRvIHNjaGVkdWxlcgogIGRybS9pOTE1OiBBZGRlZCBzY2hlZHVsZXIgcXVldWUgdGhyb3R0 bGluZyBieSBEUk0gZmlsZSBoYW5kbGUKICBkcm0vaTkxNTogQWRkZWQgZGVidWdmcyBpbnRlcmZh Y2UgdG8gc2NoZWR1bGVyIHR1bmluZyBwYXJhbWV0ZXJzCiAgZHJtL2k5MTU6IEFkZGVkIGRlYnVn IHN0YXRlIGR1bXAgZmFjaWxpdGllcyB0byBzY2hlZHVsZXIKICBkcm0vaTkxNTogQWRkIGVhcmx5 IGV4aXQgdG8gZXhlY2J1ZmZfZmluYWwoKSBpZiBpbnN1ZmZpY2llbnQgcmluZyBzcGFjZQogIGRy bS9pOTE1OiBBZGRlZCBzY2hlZHVsZXIgc3RhdGlzdGljIHJlcG9ydGluZyB0byBkZWJ1Z2ZzCiAg ZHJtL2k5MTU6IEFkZCBzY2hlZHVsZXIgc3VwcG9ydCBmdW5jdGlvbnMgZm9yIFREUgogIGRybS9p OTE1OiBTY2hlZHVsZXIgc3RhdGUgZHVtcCB2aWEgZGVidWdmcwogIGRybS9pOTE1OiBFbmFibGUg R1BVIHNjaGVkdWxlciBieSBkZWZhdWx0CiAgZHJtL2k5MTU6IEFkZCBzdXBwb3J0IGZvciByZXRy by1hY3RpdmVseSBiYW5uaW5nIGJhdGNoIGJ1ZmZlcnMKICBkcm0vaTkxNTogQWxsb3cgc2NoZWR1 bGVyIHRvIG1hbmFnZSBpbnRlci1yaW5nIG9iamVjdCBzeW5jaHJvbmlzYXRpb24KCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9NYWtlZmlsZSAgICAgICAgICAgICAgfCAgICAxICsKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jICAgICAgICB8ICAyODAgKysrKy0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZG1hLmMgICAgICAgICAgICB8ICAgIDYgKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuYyAgICAgICAgICAgIHwgICAgOSArCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oICAgICAgICAgICAgfCAgIDU0ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jICAgICAgICAgICAgfCAgMTc5ICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW1fY29udGV4dC5jICAgIHwgICAyNCArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9leGVjYnVmZmVyLmMgfCAgMjg2ICsrKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Bh cmFtcy5jICAgICAgICAgfCAgICA0ICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGFyYW1z LmggICAgICAgICB8ICAgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zY2hlZHVsZXIu YyAgICAgIHwgMTY2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3NjaGVkdWxlci5oICAgICAgfCAgMTU5ICsrKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV90cmFjZS5oICAgICAgICAgIHwgIDIyOCArKystCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMgICAgICAgfCAgIDEwICstCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYyAgICAgICAgICAgfCAgMTYxICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfbHJjLmggICAgICAgICAgIHwgICAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9yaW5nYnVmZmVyLmMgICAgfCAgIDQ5ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmggICAgfCAgICAzICstCiBpbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggICAg ICAgICAgICAgICAgfCAgICAxICsKIDE5IGZpbGVzIGNoYW5nZWQsIDI5NzYgaW5zZXJ0aW9ucygr KSwgMTQzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfc2NoZWR1bGVyLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3NjaGVkdWxlci5oCgotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=