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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 0FF96F99C9C for ; Mon, 20 Apr 2026 08:33:32 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CDDA810E456; Mon, 20 Apr 2026 08:33:30 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=lankhorst.se header.i=@lankhorst.se header.b="L6gJLej4"; dkim-atps=neutral Received: from lankhorst.se (unknown [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id C544210E112; Mon, 20 Apr 2026 08:33:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=lankhorst.se; s=default; t=1776674006; bh=0V+s06oPYxs120RoE2hplvvqSVMu3C/CU9Gel4Jtg/4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=L6gJLej4cj1XsxDJmEEyl9wbUSXfWHe1heTnWIQ2vQMIJoC6WSaa+Zm75ajOB5o/d XOIQx3oYhfabzcw7CweguDDdB+v2GZezSwSFtKqQXo80FBCfcgVi/E2cGWGMjV2LQ/ 7Lfs2Wki/R40h3xNLp0qRzeXjzGcxGtVEPiUlJjDtJEsFjfo+nxVnEBUvgMced5gPz WcW95KuC55tc5q/85KlVSZDLVVlyZp7WePoJ8JHpIO4TD+YSxndAe1wdKlIHO2fgoI oEVQzNWlih6zFW77X03S8ZSWfKfsNwX2HFSDYLGMTEXIshnTMZDSobK/MUAQ93LNKW FhfMphYrRdGhg== From: Maarten Lankhorst To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Cc: Maarten Lankhorst Subject: [PATCH 2/4] drm/doc/rfc: Remove i915_vm_bind. Date: Mon, 20 Apr 2026 10:33:20 +0200 Message-ID: <20260420083318.92038-8-dev@lankhorst.se> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260420083318.92038-6-dev@lankhorst.se> References: <20260420083318.92038-6-dev@lankhorst.se> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" aTkxNSBzdXBwb3J0cyBzb2Z0IHBpbm5pbmcsIGFuZCB0aGUgeGUgZHJpdmVyCmhhcyBiZWVuIGNy ZWF0ZWQgdG8gcHJvcGVybHkgc3VwcG9ydCBWTV9CSU5EIGluc3RlYWQuCgpTaWduZWQtb2ZmLWJ5 OiBNYWFydGVuIExhbmtob3JzdCA8ZGV2QGxhbmtob3JzdC5zZT4KLS0tCiBEb2N1bWVudGF0aW9u L2dwdS9yZmMvaTkxNV92bV9iaW5kLmggICB8IDI5MCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CiBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV92bV9iaW5kLnJzdCB8IDI0NSAtLS0tLS0tLS0t LS0tLS0tLS0tLS0KIERvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QgICAgICAgIHwgICA0 IC0KIDMgZmlsZXMgY2hhbmdlZCwgNTM5IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0 IERvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X3ZtX2JpbmQuaAogZGVsZXRlIG1vZGUgMTAwNjQ0 IERvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X3ZtX2JpbmQucnN0CgpkaWZmIC0tZ2l0IGEvRG9j dW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfdm1fYmluZC5oIGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZj L2k5MTVfdm1fYmluZC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiYzI2ZGMxMjYx MDQxLi4wMDAwMDAwMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X3ZtX2Jp bmQuaAorKysgL2Rldi9udWxsCkBAIC0xLDI5MCArMCwwIEBACi0vKiBTUERYLUxpY2Vuc2UtSWRl bnRpZmllcjogTUlUICovCi0vKgotICogQ29weXJpZ2h0IMKpIDIwMjIgSW50ZWwgQ29ycG9yYXRp b24KLSAqLwotCi0vKioKLSAqIERPQzogSTkxNV9QQVJBTV9WTV9CSU5EX1ZFUlNJT04KLSAqCi0g KiBWTV9CSU5EIGZlYXR1cmUgdmVyc2lvbiBzdXBwb3J0ZWQuCi0gKiBTZWUgdHlwZWRlZiBkcm1f aTkxNV9nZXRwYXJhbV90IHBhcmFtLgotICoKLSAqIFNwZWNpZmllcyB0aGUgVk1fQklORCBmZWF0 dXJlIHZlcnNpb24gc3VwcG9ydGVkLgotICogVGhlIGZvbGxvd2luZyB2ZXJzaW9ucyBvZiBWTV9C SU5EIGhhdmUgYmVlbiBkZWZpbmVkOgotICoKLSAqIDA6IE5vIFZNX0JJTkQgc3VwcG9ydC4KLSAq Ci0gKiAxOiBJbiBWTV9VTkJJTkQgY2FsbHMsIHRoZSBVTUQgbXVzdCBzcGVjaWZ5IHRoZSBleGFj dCBtYXBwaW5ncyBjcmVhdGVkCi0gKiAgICBwcmV2aW91c2x5IHdpdGggVk1fQklORCwgdGhlIGlv Y3RsIHdpbGwgbm90IHN1cHBvcnQgdW5iaW5kaW5nIG11bHRpcGxlCi0gKiAgICBtYXBwaW5ncyBv ciBzcGxpdHRpbmcgdGhlbS4gU2ltaWxhcmx5LCBWTV9CSU5EIGNhbGxzIHdpbGwgbm90IHJlcGxh Y2UKLSAqICAgIGFueSBleGlzdGluZyBtYXBwaW5ncy4KLSAqCi0gKiAyOiBUaGUgcmVzdHJpY3Rp b25zIG9uIHVuYmluZGluZyBwYXJ0aWFsIG9yIG11bHRpcGxlIG1hcHBpbmdzIGlzCi0gKiAgICBs aWZ0ZWQsIFNpbWlsYXJseSwgYmluZGluZyB3aWxsIHJlcGxhY2UgYW55IG1hcHBpbmdzIGluIHRo ZSBnaXZlbiByYW5nZS4KLSAqCi0gKiBTZWUgc3RydWN0IGRybV9pOTE1X2dlbV92bV9iaW5kIGFu ZCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3ZtX3VuYmluZC4KLSAqLwotI2RlZmluZSBJOTE1X1BBUkFN X1ZNX0JJTkRfVkVSU0lPTgk1NwotCi0vKioKLSAqIERPQzogSTkxNV9WTV9DUkVBVEVfRkxBR1Nf VVNFX1ZNX0JJTkQKLSAqCi0gKiBGbGFnIHRvIG9wdC1pbiBmb3IgVk1fQklORCBtb2RlIG9mIGJp bmRpbmcgZHVyaW5nIFZNIGNyZWF0aW9uLgotICogU2VlIHN0cnVjdCBkcm1faTkxNV9nZW1fdm1f Y29udHJvbCBmbGFncy4KLSAqCi0gKiBUaGUgb2xkZXIgZXhlY2J1ZjIgaW9jdGwgd2lsbCBub3Qg c3VwcG9ydCBWTV9CSU5EIG1vZGUgb2Ygb3BlcmF0aW9uLgotICogRm9yIFZNX0JJTkQgbW9kZSwg d2UgaGF2ZSBuZXcgZXhlY2J1ZjMgaW9jdGwgd2hpY2ggd2lsbCBub3QgYWNjZXB0IGFueQotICog ZXhlY2xpc3QgKFNlZSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIzIGZvciBtb3JlIGRl dGFpbHMpLgotICovCi0jZGVmaW5lIEk5MTVfVk1fQ1JFQVRFX0ZMQUdTX1VTRV9WTV9CSU5ECSgx IDw8IDApCi0KLS8qIFZNX0JJTkQgcmVsYXRlZCBpb2N0bHMgKi8KLSNkZWZpbmUgRFJNX0k5MTVf R0VNX1ZNX0JJTkQJCTB4M2QKLSNkZWZpbmUgRFJNX0k5MTVfR0VNX1ZNX1VOQklORAkJMHgzZQot I2RlZmluZSBEUk1fSTkxNV9HRU1fRVhFQ0JVRkZFUjMJMHgzZgotCi0jZGVmaW5lIERSTV9JT0NU TF9JOTE1X0dFTV9WTV9CSU5ECQlEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVf R0VNX1ZNX0JJTkQsIHN0cnVjdCBkcm1faTkxNV9nZW1fdm1fYmluZCkKLSNkZWZpbmUgRFJNX0lP Q1RMX0k5MTVfR0VNX1ZNX1VOQklORAkJRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9J OTE1X0dFTV9WTV9VTkJJTkQsIHN0cnVjdCBkcm1faTkxNV9nZW1fdm1fYmluZCkKLSNkZWZpbmUg RFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIzCQlEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNF ICsgRFJNX0k5MTVfR0VNX0VYRUNCVUZGRVIzLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZm ZXIzKQotCi0vKioKLSAqIHN0cnVjdCBkcm1faTkxNV9nZW1fdGltZWxpbmVfZmVuY2UgLSBBbiBp bnB1dCBvciBvdXRwdXQgdGltZWxpbmUgZmVuY2UuCi0gKgotICogVGhlIG9wZXJhdGlvbiB3aWxs IHdhaXQgZm9yIGlucHV0IGZlbmNlIHRvIHNpZ25hbC4KLSAqCi0gKiBUaGUgcmV0dXJuZWQgb3V0 cHV0IGZlbmNlIHdpbGwgYmUgc2lnbmFsZWQgYWZ0ZXIgdGhlIGNvbXBsZXRpb24gb2YgdGhlCi0g KiBvcGVyYXRpb24uCi0gKi8KLXN0cnVjdCBkcm1faTkxNV9nZW1fdGltZWxpbmVfZmVuY2Ugewot CS8qKiBAaGFuZGxlOiBVc2VyJ3MgaGFuZGxlIGZvciBhIGRybV9zeW5jb2JqIHRvIHdhaXQgb24g b3Igc2lnbmFsLiAqLwotCV9fdTMyIGhhbmRsZTsKLQotCS8qKgotCSAqIEBmbGFnczogU3VwcG9y dGVkIGZsYWdzIGFyZToKLQkgKgotCSAqIEk5MTVfVElNRUxJTkVfRkVOQ0VfV0FJVDoKLQkgKiBX YWl0IGZvciB0aGUgaW5wdXQgZmVuY2UgYmVmb3JlIHRoZSBvcGVyYXRpb24uCi0JICoKLQkgKiBJ OTE1X1RJTUVMSU5FX0ZFTkNFX1NJR05BTDoKLQkgKiBSZXR1cm4gb3BlcmF0aW9uIGNvbXBsZXRp b24gZmVuY2UgYXMgb3V0cHV0LgotCSAqLwotCV9fdTMyIGZsYWdzOwotI2RlZmluZSBJOTE1X1RJ TUVMSU5FX0ZFTkNFX1dBSVQgICAgICAgICAgICAoMSA8PCAwKQotI2RlZmluZSBJOTE1X1RJTUVM SU5FX0ZFTkNFX1NJR05BTCAgICAgICAgICAoMSA8PCAxKQotI2RlZmluZSBfX0k5MTVfVElNRUxJ TkVfRkVOQ0VfVU5LTk9XTl9GTEFHUyAoLShJOTE1X1RJTUVMSU5FX0ZFTkNFX1NJR05BTCA8PCAx KSkKLQotCS8qKgotCSAqIEB2YWx1ZTogQSBwb2ludCBpbiB0aGUgdGltZWxpbmUuCi0JICogVmFs dWUgbXVzdCBiZSAwIGZvciBhIGJpbmFyeSBkcm1fc3luY29iai4gQSBWYWx1ZSBvZiAwIGZvciBh Ci0JICogdGltZWxpbmUgZHJtX3N5bmNvYmogaXMgaW52YWxpZCBhcyBpdCB0dXJucyBhIGRybV9z eW5jb2JqIGludG8gYQotCSAqIGJpbmFyeSBvbmUuCi0JICovCi0JX191NjQgdmFsdWU7Ci19Owot Ci0vKioKLSAqIHN0cnVjdCBkcm1faTkxNV9nZW1fdm1fYmluZCAtIFZBIHRvIG9iamVjdCBtYXBw aW5nIHRvIGJpbmQuCi0gKgotICogVGhpcyBzdHJ1Y3R1cmUgaXMgcGFzc2VkIHRvIFZNX0JJTkQg aW9jdGwgYW5kIHNwZWNpZmllcyB0aGUgbWFwcGluZyBvZiBHUFUKLSAqIHZpcnR1YWwgYWRkcmVz cyAoVkEpIHJhbmdlIHRvIHRoZSBzZWN0aW9uIG9mIGFuIG9iamVjdCB0aGF0IHNob3VsZCBiZSBi b3VuZAotICogaW4gdGhlIGRldmljZSBwYWdlIHRhYmxlIG9mIHRoZSBzcGVjaWZpZWQgYWRkcmVz cyBzcGFjZSAoVk0pLgotICogVGhlIFZBIHJhbmdlIHNwZWNpZmllZCBtdXN0IGJlIHVuaXF1ZSAo aWUuLCBub3QgY3VycmVudGx5IGJvdW5kKSBhbmQgY2FuCi0gKiBiZSBtYXBwZWQgdG8gd2hvbGUg b2JqZWN0IG9yIGEgc2VjdGlvbiBvZiB0aGUgb2JqZWN0IChwYXJ0aWFsIGJpbmRpbmcpLgotICog TXVsdGlwbGUgVkEgbWFwcGluZ3MgY2FuIGJlIGNyZWF0ZWQgdG8gdGhlIHNhbWUgc2VjdGlvbiBv ZiB0aGUgb2JqZWN0Ci0gKiAoYWxpYXNpbmcpLgotICoKLSAqIFRoZSBAc3RhcnQsIEBvZmZzZXQg YW5kIEBsZW5ndGggbXVzdCBiZSA0SyBwYWdlIGFsaWduZWQuIEhvd2V2ZXIgdGhlIERHMiBoYXMK LSAqIDY0SyBwYWdlIHNpemUgZm9yIGRldmljZSBsb2NhbCBtZW1vcnkgYW5kIGhhcyBjb21wYWN0 IHBhZ2UgdGFibGUuIE9uIHRoYXQKLSAqIHBsYXRmb3JtLCBmb3IgYmluZGluZyBkZXZpY2UgbG9j YWwtbWVtb3J5IG9iamVjdHMsIHRoZSBAc3RhcnQsIEBvZmZzZXQgYW5kCi0gKiBAbGVuZ3RoIG11 c3QgYmUgNjRLIGFsaWduZWQuIEFsc28sIFVNRHMgc2hvdWxkIG5vdCBtaXggdGhlIGxvY2FsIG1l bW9yeSA2NEsKLSAqIHBhZ2UgYW5kIHRoZSBzeXN0ZW0gbWVtb3J5IDRLIHBhZ2UgYmluZGluZ3Mg aW4gdGhlIHNhbWUgMk0gcmFuZ2UuCi0gKgotICogRXJyb3IgY29kZSAtRUlOVkFMIHdpbGwgYmUg cmV0dXJuZWQgaWYgQHN0YXJ0LCBAb2Zmc2V0IGFuZCBAbGVuZ3RoIGFyZSBub3QKLSAqIHByb3Bl cmx5IGFsaWduZWQuIEluIHZlcnNpb24gMSAoU2VlIEk5MTVfUEFSQU1fVk1fQklORF9WRVJTSU9O KSwgZXJyb3IgY29kZQotICogLUVOT1NQQyB3aWxsIGJlIHJldHVybmVkIGlmIHRoZSBWQSByYW5n ZSBzcGVjaWZpZWQgY2FuJ3QgYmUgcmVzZXJ2ZWQuCi0gKgotICogVk1fQklORC9VTkJJTkQgaW9j dGwgY2FsbHMgZXhlY3V0ZWQgb24gZGlmZmVyZW50IENQVSB0aHJlYWRzIGNvbmN1cnJlbnRseQot ICogYXJlIG5vdCBvcmRlcmVkLiBGdXJ0aGVybW9yZSwgcGFydHMgb2YgdGhlIFZNX0JJTkQgb3Bl cmF0aW9uIGNhbiBiZSBkb25lCi0gKiBhc3luY2hyb25vdXNseSwgaWYgdmFsaWQgQGZlbmNlIGlz IHNwZWNpZmllZC4KLSAqLwotc3RydWN0IGRybV9pOTE1X2dlbV92bV9iaW5kIHsKLQkvKiogQHZt X2lkOiBWTSAoYWRkcmVzcyBzcGFjZSkgaWQgdG8gYmluZCAqLwotCV9fdTMyIHZtX2lkOwotCi0J LyoqIEBoYW5kbGU6IE9iamVjdCBoYW5kbGUgKi8KLQlfX3UzMiBoYW5kbGU7Ci0KLQkvKiogQHN0 YXJ0OiBWaXJ0dWFsIEFkZHJlc3Mgc3RhcnQgdG8gYmluZCAqLwotCV9fdTY0IHN0YXJ0OwotCi0J LyoqIEBvZmZzZXQ6IE9mZnNldCBpbiBvYmplY3QgdG8gYmluZCAqLwotCV9fdTY0IG9mZnNldDsK LQotCS8qKiBAbGVuZ3RoOiBMZW5ndGggb2YgbWFwcGluZyB0byBiaW5kICovCi0JX191NjQgbGVu Z3RoOwotCi0JLyoqCi0JICogQGZsYWdzOiBTdXBwb3J0ZWQgZmxhZ3MgYXJlOgotCSAqCi0JICog STkxNV9HRU1fVk1fQklORF9DQVBUVVJFOgotCSAqIENhcHR1cmUgdGhpcyBtYXBwaW5nIGluIHRo ZSBkdW1wIHVwb24gR1BVIGVycm9yLgotCSAqCi0JICogTm90ZSB0aGF0IEBmZW5jZSBjYXJyaWVz IGl0cyBvd24gZmxhZ3MuCi0JICovCi0JX191NjQgZmxhZ3M7Ci0jZGVmaW5lIEk5MTVfR0VNX1ZN X0JJTkRfQ0FQVFVSRQkoMSA8PCAwKQotCi0JLyoqCi0JICogQGZlbmNlOiBUaW1lbGluZSBmZW5j ZSBmb3IgYmluZCBjb21wbGV0aW9uIHNpZ25hbGluZy4KLQkgKgotCSAqIFRpbWVsaW5lIGZlbmNl IGlzIG9mIGZvcm1hdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3RpbWVsaW5lX2ZlbmNlLgotCSAqCi0J ICogSXQgaXMgYW4gb3V0IGZlbmNlLCBoZW5jZSB1c2luZyBJOTE1X1RJTUVMSU5FX0ZFTkNFX1dB SVQgZmxhZwotCSAqIGlzIGludmFsaWQsIGFuZCBhbiBlcnJvciB3aWxsIGJlIHJldHVybmVkLgot CSAqCi0JICogSWYgSTkxNV9USU1FTElORV9GRU5DRV9TSUdOQUwgZmxhZyBpcyBub3Qgc2V0LCB0 aGVuIG91dCBmZW5jZQotCSAqIGlzIG5vdCByZXF1ZXN0ZWQgYW5kIGJpbmRpbmcgaXMgY29tcGxl dGVkIHN5bmNocm9ub3VzbHkuCi0JICovCi0Jc3RydWN0IGRybV9pOTE1X2dlbV90aW1lbGluZV9m ZW5jZSBmZW5jZTsKLQotCS8qKgotCSAqIEBleHRlbnNpb25zOiBaZXJvLXRlcm1pbmF0ZWQgY2hh aW4gb2YgZXh0ZW5zaW9ucy4KLQkgKgotCSAqIEZvciBmdXR1cmUgZXh0ZW5zaW9ucy4gU2VlIHN0 cnVjdCBpOTE1X3VzZXJfZXh0ZW5zaW9uLgotCSAqLwotCV9fdTY0IGV4dGVuc2lvbnM7Ci19Owot Ci0vKioKLSAqIHN0cnVjdCBkcm1faTkxNV9nZW1fdm1fdW5iaW5kIC0gVkEgdG8gb2JqZWN0IG1h cHBpbmcgdG8gdW5iaW5kLgotICoKLSAqIFRoaXMgc3RydWN0dXJlIGlzIHBhc3NlZCB0byBWTV9V TkJJTkQgaW9jdGwgYW5kIHNwZWNpZmllcyB0aGUgR1BVIHZpcnR1YWwKLSAqIGFkZHJlc3MgKFZB KSByYW5nZSB0aGF0IHNob3VsZCBiZSB1bmJvdW5kIGZyb20gdGhlIGRldmljZSBwYWdlIHRhYmxl IG9mIHRoZQotICogc3BlY2lmaWVkIGFkZHJlc3Mgc3BhY2UgKFZNKS4gVk1fVU5CSU5EIHdpbGwg Zm9yY2UgdW5iaW5kIHRoZSBzcGVjaWZpZWQKLSAqIHJhbmdlIGZyb20gZGV2aWNlIHBhZ2UgdGFi bGUgd2l0aG91dCB3YWl0aW5nIGZvciBhbnkgR1BVIGpvYiB0byBjb21wbGV0ZS4KLSAqIEl0IGlz IFVNRHMgcmVzcG9uc2liaWxpdHkgdG8gZW5zdXJlIHRoZSBtYXBwaW5nIGlzIG5vIGxvbmdlciBp biB1c2UgYmVmb3JlCi0gKiBjYWxsaW5nIFZNX1VOQklORC4KLSAqCi0gKiBJZiB0aGUgc3BlY2lm aWVkIG1hcHBpbmcgaXMgbm90IGZvdW5kLCB0aGUgaW9jdGwgd2lsbCBzaW1wbHkgcmV0dXJuIHdp dGhvdXQKLSAqIGFueSBlcnJvci4KLSAqCi0gKiBWTV9CSU5EL1VOQklORCBpb2N0bCBjYWxscyBl eGVjdXRlZCBvbiBkaWZmZXJlbnQgQ1BVIHRocmVhZHMgY29uY3VycmVudGx5Ci0gKiBhcmUgbm90 IG9yZGVyZWQuIEZ1cnRoZXJtb3JlLCBwYXJ0cyBvZiB0aGUgVk1fVU5CSU5EIG9wZXJhdGlvbiBj YW4gYmUgZG9uZQotICogYXN5bmNocm9ub3VzbHksIGlmIHZhbGlkIEBmZW5jZSBpcyBzcGVjaWZp ZWQuCi0gKi8KLXN0cnVjdCBkcm1faTkxNV9nZW1fdm1fdW5iaW5kIHsKLQkvKiogQHZtX2lkOiBW TSAoYWRkcmVzcyBzcGFjZSkgaWQgdG8gYmluZCAqLwotCV9fdTMyIHZtX2lkOwotCi0JLyoqIEBy c3ZkOiBSZXNlcnZlZCwgTUJaICovCi0JX191MzIgcnN2ZDsKLQotCS8qKiBAc3RhcnQ6IFZpcnR1 YWwgQWRkcmVzcyBzdGFydCB0byB1bmJpbmQgKi8KLQlfX3U2NCBzdGFydDsKLQotCS8qKiBAbGVu Z3RoOiBMZW5ndGggb2YgbWFwcGluZyB0byB1bmJpbmQgKi8KLQlfX3U2NCBsZW5ndGg7Ci0KLQkv KioKLQkgKiBAZmxhZ3M6IEN1cnJlbnRseSByZXNlcnZlZCwgTUJaLgotCSAqCi0JICogTm90ZSB0 aGF0IEBmZW5jZSBjYXJyaWVzIGl0cyBvd24gZmxhZ3MuCi0JICovCi0JX191NjQgZmxhZ3M7Ci0K LQkvKioKLQkgKiBAZmVuY2U6IFRpbWVsaW5lIGZlbmNlIGZvciB1bmJpbmQgY29tcGxldGlvbiBz aWduYWxpbmcuCi0JICoKLQkgKiBUaW1lbGluZSBmZW5jZSBpcyBvZiBmb3JtYXQgc3RydWN0IGRy bV9pOTE1X2dlbV90aW1lbGluZV9mZW5jZS4KLQkgKgotCSAqIEl0IGlzIGFuIG91dCBmZW5jZSwg aGVuY2UgdXNpbmcgSTkxNV9USU1FTElORV9GRU5DRV9XQUlUIGZsYWcKLQkgKiBpcyBpbnZhbGlk LCBhbmQgYW4gZXJyb3Igd2lsbCBiZSByZXR1cm5lZC4KLQkgKgotCSAqIElmIEk5MTVfVElNRUxJ TkVfRkVOQ0VfU0lHTkFMIGZsYWcgaXMgbm90IHNldCwgdGhlbiBvdXQgZmVuY2UKLQkgKiBpcyBu b3QgcmVxdWVzdGVkIGFuZCB1bmJpbmRpbmcgaXMgY29tcGxldGVkIHN5bmNocm9ub3VzbHkuCi0J ICovCi0Jc3RydWN0IGRybV9pOTE1X2dlbV90aW1lbGluZV9mZW5jZSBmZW5jZTsKLQotCS8qKgot CSAqIEBleHRlbnNpb25zOiBaZXJvLXRlcm1pbmF0ZWQgY2hhaW4gb2YgZXh0ZW5zaW9ucy4KLQkg KgotCSAqIEZvciBmdXR1cmUgZXh0ZW5zaW9ucy4gU2VlIHN0cnVjdCBpOTE1X3VzZXJfZXh0ZW5z aW9uLgotCSAqLwotCV9fdTY0IGV4dGVuc2lvbnM7Ci19OwotCi0vKioKLSAqIHN0cnVjdCBkcm1f aTkxNV9nZW1fZXhlY2J1ZmZlcjMgLSBTdHJ1Y3R1cmUgZm9yIERSTV9JOTE1X0dFTV9FWEVDQlVG RkVSMwotICogaW9jdGwuCi0gKgotICogRFJNX0k5MTVfR0VNX0VYRUNCVUZGRVIzIGlvY3RsIG9u bHkgd29ya3MgaW4gVk1fQklORCBtb2RlIGFuZCBWTV9CSU5EIG1vZGUKLSAqIG9ubHkgd29ya3Mg d2l0aCB0aGlzIGlvY3RsIGZvciBzdWJtaXNzaW9uLgotICogU2VlIEk5MTVfVk1fQ1JFQVRFX0ZM QUdTX1VTRV9WTV9CSU5ELgotICovCi1zdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIzIHsK LQkvKioKLQkgKiBAY3R4X2lkOiBDb250ZXh0IGlkCi0JICoKLQkgKiBPbmx5IGNvbnRleHRzIHdp dGggdXNlciBlbmdpbmUgbWFwIGFyZSBhbGxvd2VkLgotCSAqLwotCV9fdTMyIGN0eF9pZDsKLQot CS8qKgotCSAqIEBlbmdpbmVfaWR4OiBFbmdpbmUgaW5kZXgKLQkgKgotCSAqIEFuIGluZGV4IGlu IHRoZSB1c2VyIGVuZ2luZSBtYXAgb2YgdGhlIGNvbnRleHQgc3BlY2lmaWVkIGJ5IEBjdHhfaWQu Ci0JICovCi0JX191MzIgZW5naW5lX2lkeDsKLQotCS8qKgotCSAqIEBiYXRjaF9hZGRyZXNzOiBC YXRjaCBncHUgdmlydHVhbCBhZGRyZXNzL2VzLgotCSAqCi0JICogRm9yIG5vcm1hbCBzdWJtaXNz aW9uLCBpdCBpcyB0aGUgZ3B1IHZpcnR1YWwgYWRkcmVzcyBvZiB0aGUgYmF0Y2gKLQkgKiBidWZm ZXIuIEZvciBwYXJhbGxlbCBzdWJtaXNzaW9uLCBpdCBpcyBhIHBvaW50ZXIgdG8gYW4gYXJyYXkg b2YKLQkgKiBiYXRjaCBidWZmZXIgZ3B1IHZpcnR1YWwgYWRkcmVzc2VzIHdpdGggYXJyYXkgc2l6 ZSBlcXVhbCB0byB0aGUKLQkgKiBudW1iZXIgb2YgKHBhcmFsbGVsKSBlbmdpbmVzIGludm9sdmVk IGluIHRoYXQgc3VibWlzc2lvbiAoU2VlCi0JICogc3RydWN0IGk5MTVfY29udGV4dF9lbmdpbmVz X3BhcmFsbGVsX3N1Ym1pdCkuCi0JICovCi0JX191NjQgYmF0Y2hfYWRkcmVzczsKLQotCS8qKiBA ZmxhZ3M6IEN1cnJlbnRseSByZXNlcnZlZCwgTUJaICovCi0JX191NjQgZmxhZ3M7Ci0KLQkvKiog QHJzdmQxOiBSZXNlcnZlZCwgTUJaICovCi0JX191MzIgcnN2ZDE7Ci0KLQkvKiogQGZlbmNlX2Nv dW50OiBOdW1iZXIgb2YgZmVuY2VzIGluIEB0aW1lbGluZV9mZW5jZXMgYXJyYXkuICovCi0JX191 MzIgZmVuY2VfY291bnQ7Ci0KLQkvKioKLQkgKiBAdGltZWxpbmVfZmVuY2VzOiBQb2ludGVyIHRv IGFuIGFycmF5IG9mIHRpbWVsaW5lIGZlbmNlcy4KLQkgKgotCSAqIFRpbWVsaW5lIGZlbmNlcyBh cmUgb2YgZm9ybWF0IHN0cnVjdCBkcm1faTkxNV9nZW1fdGltZWxpbmVfZmVuY2UuCi0JICovCi0J X191NjQgdGltZWxpbmVfZmVuY2VzOwotCi0JLyoqIEByc3ZkMjogUmVzZXJ2ZWQsIE1CWiAqLwot CV9fdTY0IHJzdmQyOwotCi0JLyoqCi0JICogQGV4dGVuc2lvbnM6IFplcm8tdGVybWluYXRlZCBj aGFpbiBvZiBleHRlbnNpb25zLgotCSAqCi0JICogRm9yIGZ1dHVyZSBleHRlbnNpb25zLiBTZWUg c3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uCi0JICovCi0JX191NjQgZXh0ZW5zaW9uczsKLX07 Ci0KLS8qKgotICogc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0X3ZtX3ByaXZhdGUgLSBF eHRlbnNpb24gdG8gbWFrZSB0aGUgb2JqZWN0Ci0gKiBwcml2YXRlIHRvIHRoZSBzcGVjaWZpZWQg Vk0uCi0gKgotICogU2VlIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC4KLSAqLwotc3Ry dWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0X3ZtX3ByaXZhdGUgewotI2RlZmluZSBJOTE1X0dF TV9DUkVBVEVfRVhUX1ZNX1BSSVZBVEUJCTIKLQkvKiogQGJhc2U6IEV4dGVuc2lvbiBsaW5rLiBT ZWUgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uICovCi0Jc3RydWN0IGk5MTVfdXNlcl9leHRl bnNpb24gYmFzZTsKLQotCS8qKiBAdm1faWQ6IElkIG9mIHRoZSBWTSB0byB3aGljaCB0aGUgb2Jq ZWN0IGlzIHByaXZhdGUgKi8KLQlfX3UzMiB2bV9pZDsKLX07CmRpZmYgLS1naXQgYS9Eb2N1bWVu dGF0aW9uL2dwdS9yZmMvaTkxNV92bV9iaW5kLnJzdCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9p OTE1X3ZtX2JpbmQucnN0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjNiNTI1YWM2 MjAwLi4wMDAwMDAwMDAwMDAwCi0tLSBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X3ZtX2Jp bmQucnN0CisrKyAvZGV2L251bGwKQEAgLTEsMjQ1ICswLDAgQEAKLT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotSTkxNSBWTV9CSU5EIGZlYXR1cmUgZGVzaWduIGFu ZCB1c2UgY2FzZXMKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot Ci1WTV9CSU5EIGZlYXR1cmUKLT09PT09PT09PT09PT09PT0KLURSTV9JOTE1X0dFTV9WTV9CSU5E L1VOQklORCBpb2N0bHMgYWxsb3dzIFVNRCB0byBiaW5kL3VuYmluZCBHRU0gYnVmZmVyCi1vYmpl Y3RzIChCT3MpIG9yIHNlY3Rpb25zIG9mIGEgQk9zIGF0IHNwZWNpZmllZCBHUFUgdmlydHVhbCBh ZGRyZXNzZXMgb24gYQotc3BlY2lmaWVkIGFkZHJlc3Mgc3BhY2UgKFZNKS4gVGhlc2UgbWFwcGlu Z3MgKGFsc28gcmVmZXJyZWQgdG8gYXMgcGVyc2lzdGVudAotbWFwcGluZ3MpIHdpbGwgYmUgcGVy c2lzdGVudCBhY3Jvc3MgbXVsdGlwbGUgR1BVIHN1Ym1pc3Npb25zIChleGVjYnVmIGNhbGxzKQot aXNzdWVkIGJ5IHRoZSBVTUQsIHdpdGhvdXQgdXNlciBoYXZpbmcgdG8gcHJvdmlkZSBhIGxpc3Qg b2YgYWxsIHJlcXVpcmVkCi1tYXBwaW5ncyBkdXJpbmcgZWFjaCBzdWJtaXNzaW9uIChhcyByZXF1 aXJlZCBieSBvbGRlciBleGVjYnVmIG1vZGUpLgotCi1UaGUgVk1fQklORC9VTkJJTkQgY2FsbHMg YWxsb3cgVU1EcyB0byByZXF1ZXN0IGEgdGltZWxpbmUgb3V0IGZlbmNlIGZvcgotc2lnbmFsaW5n IHRoZSBjb21wbGV0aW9uIG9mIGJpbmQvdW5iaW5kIG9wZXJhdGlvbi4KLQotVk1fQklORCBmZWF0 dXJlIGlzIGFkdmVydGlzZWQgdG8gdXNlciB2aWEgSTkxNV9QQVJBTV9WTV9CSU5EX1ZFUlNJT04u Ci1Vc2VyIGhhcyB0byBvcHQtaW4gZm9yIFZNX0JJTkQgbW9kZSBvZiBiaW5kaW5nIGZvciBhbiBh ZGRyZXNzIHNwYWNlIChWTSkKLWR1cmluZyBWTSBjcmVhdGlvbiB0aW1lIHZpYSBJOTE1X1ZNX0NS RUFURV9GTEFHU19VU0VfVk1fQklORCBleHRlbnNpb24uCi0KLVZNX0JJTkQvVU5CSU5EIGlvY3Rs IGNhbGxzIGV4ZWN1dGVkIG9uIGRpZmZlcmVudCBDUFUgdGhyZWFkcyBjb25jdXJyZW50bHkgYXJl Ci1ub3Qgb3JkZXJlZC4gRnVydGhlcm1vcmUsIHBhcnRzIG9mIHRoZSBWTV9CSU5EL1VOQklORCBv cGVyYXRpb25zIGNhbiBiZSBkb25lCi1hc3luY2hyb25vdXNseSwgd2hlbiB2YWxpZCBvdXQgZmVu Y2UgaXMgc3BlY2lmaWVkLgotCi1WTV9CSU5EIGZlYXR1cmVzIGluY2x1ZGU6Ci0KLSogTXVsdGlw bGUgVmlydHVhbCBBZGRyZXNzIChWQSkgbWFwcGluZ3MgY2FuIG1hcCB0byB0aGUgc2FtZSBwaHlz aWNhbCBwYWdlcwotICBvZiBhbiBvYmplY3QgKGFsaWFzaW5nKS4KLSogVkEgbWFwcGluZyBjYW4g bWFwIHRvIGEgcGFydGlhbCBzZWN0aW9uIG9mIHRoZSBCTyAocGFydGlhbCBiaW5kaW5nKS4KLSog U3VwcG9ydCBjYXB0dXJlIG9mIHBlcnNpc3RlbnQgbWFwcGluZ3MgaW4gdGhlIGR1bXAgdXBvbiBH UFUgZXJyb3IuCi0qIFN1cHBvcnQgZm9yIHVzZXJwdHIgZ2VtIG9iamVjdHMgKG5vIHNwZWNpYWwg dWFwaSBpcyByZXF1aXJlZCBmb3IgdGhpcykuCi0KLVRMQiBmbHVzaCBjb25zaWRlcmF0aW9uCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLVRoZSBpOTE1IGRyaXZlciBmbHVzaGVzIHRoZSBUTEIg Zm9yIGVhY2ggc3VibWlzc2lvbiBhbmQgd2hlbiBhbiBvYmplY3QncwotcGFnZXMgYXJlIHJlbGVh c2VkLiBUaGUgVk1fQklORC9VTkJJTkQgb3BlcmF0aW9uIHdpbGwgbm90IGRvIGFueSBhZGRpdGlv bmFsCi1UTEIgZmx1c2guIEFueSBWTV9CSU5EIG1hcHBpbmcgYWRkZWQgd2lsbCBiZSBpbiB0aGUg d29ya2luZyBzZXQgZm9yIHN1YnNlcXVlbnQKLXN1Ym1pc3Npb25zIG9uIHRoYXQgVk0gYW5kIHdp bGwgbm90IGJlIGluIHRoZSB3b3JraW5nIHNldCBmb3IgY3VycmVudGx5IHJ1bm5pbmcKLWJhdGNo ZXMgKHdoaWNoIHdvdWxkIHJlcXVpcmUgYWRkaXRpb25hbCBUTEIgZmx1c2hlcywgd2hpY2ggaXMg bm90IHN1cHBvcnRlZCkuCi0KLUV4ZWNidWYgaW9jdGwgaW4gVk1fQklORCBtb2RlCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1BIFZNIGluIFZNX0JJTkQgbW9kZSB3aWxsIG5vdCBz dXBwb3J0IG9sZGVyIGV4ZWNidWYgbW9kZSBvZiBiaW5kaW5nLgotVGhlIGV4ZWNidWYgaW9jdGwg aGFuZGxpbmcgaW4gVk1fQklORCBtb2RlIGRpZmZlcnMgc2lnbmlmaWNhbnRseSBmcm9tIHRoZQot b2xkZXIgZXhlY2J1ZjIgaW9jdGwgKFNlZSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIy KS4KLUhlbmNlLCBhIG5ldyBleGVjYnVmMyBpb2N0bCBoYXMgYmVlbiBhZGRlZCB0byBzdXBwb3J0 IFZNX0JJTkQgbW9kZS4gKFNlZQotc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMykuIFRo ZSBleGVjYnVmMyBpb2N0bCB3aWxsIG5vdCBhY2NlcHQgYW55Ci1leGVjbGlzdC4gSGVuY2UsIG5v IHN1cHBvcnQgZm9yIGltcGxpY2l0IHN5bmMuIEl0IGlzIGV4cGVjdGVkIHRoYXQgdGhlIGJlbG93 Ci13b3JrIHdpbGwgYmUgYWJsZSB0byBzdXBwb3J0IHJlcXVpcmVtZW50cyBvZiBvYmplY3QgZGVw ZW5kZW5jeSBzZXR0aW5nIGluIGFsbAotdXNlIGNhc2VzOgotCi0iZG1hLWJ1ZjogQWRkIGFuIEFQ SSBmb3IgZXhwb3J0aW5nIHN5bmMgZmlsZXMiCi0oaHR0cHM6Ly9sd24ubmV0L0FydGljbGVzLzg1 OTI5MC8pCi0KLVRoZSBuZXcgZXhlY2J1ZjMgaW9jdGwgb25seSB3b3JrcyBpbiBWTV9CSU5EIG1v ZGUgYW5kIHRoZSBWTV9CSU5EIG1vZGUgb25seQotd29ya3Mgd2l0aCBleGVjYnVmMyBpb2N0bCBm b3Igc3VibWlzc2lvbi4gQWxsIEJPcyBtYXBwZWQgb24gdGhhdCBWTSAodGhyb3VnaAotVk1fQklO RCBjYWxsKSBhdCB0aGUgdGltZSBvZiBleGVjYnVmMyBjYWxsIGFyZSBkZWVtZWQgcmVxdWlyZWQg Zm9yIHRoYXQKLXN1Ym1pc3Npb24uCi0KLVRoZSBleGVjYnVmMyBpb2N0bCBkaXJlY3RseSBzcGVj aWZpZXMgdGhlIGJhdGNoIGFkZHJlc3NlcyBpbnN0ZWFkIG9mIGFzCi1vYmplY3QgaGFuZGxlcyBh cyBpbiBleGVjYnVmMiBpb2N0bC4gVGhlIGV4ZWNidWYzIGlvY3RsIHdpbGwgYWxzbyBub3QKLXN1 cHBvcnQgbWFueSBvZiB0aGUgb2xkZXIgZmVhdHVyZXMgbGlrZSBpbi9vdXQvc3VibWl0IGZlbmNl cywgZmVuY2UgYXJyYXksCi1kZWZhdWx0IGdlbSBjb250ZXh0IGFuZCBtYW55IG1vcmUgKFNlZSBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIzKS4KLQotSW4gVk1fQklORCBtb2RlLCBWQSBh bGxvY2F0aW9uIGlzIGNvbXBsZXRlbHkgbWFuYWdlZCBieSB0aGUgdXNlciBpbnN0ZWFkIG9mCi10 aGUgaTkxNSBkcml2ZXIuIEhlbmNlIGFsbCBWQSBhc3NpZ25tZW50LCBldmljdGlvbiBhcmUgbm90 IGFwcGxpY2FibGUgaW4KLVZNX0JJTkQgbW9kZS4gQWxzbywgZm9yIGRldGVybWluaW5nIG9iamVj dCBhY3RpdmVuZXNzLCBWTV9CSU5EIG1vZGUgd2lsbCBub3QKLWJlIHVzaW5nIHRoZSBpOTE1X3Zt YSBhY3RpdmUgcmVmZXJlbmNlIHRyYWNraW5nLiBJdCB3aWxsIGluc3RlYWQgdXNlIGRtYS1yZXN2 Ci1vYmplY3QgZm9yIHRoYXQgKFNlZSBgVk1fQklORCBkbWFfcmVzdiB1c2FnZWBfKS4KLQotU28s IGEgbG90IG9mIGV4aXN0aW5nIGNvZGUgc3VwcG9ydGluZyBleGVjYnVmMiBpb2N0bCwgbGlrZSBy ZWxvY2F0aW9ucywgVkEKLWV2aWN0aW9ucywgdm1hIGxvb2t1cCB0YWJsZSwgaW1wbGljaXQgc3lu Yywgdm1hIGFjdGl2ZSByZWZlcmVuY2UgdHJhY2tpbmcgZXRjLiwKLWFyZSBub3QgYXBwbGljYWJs ZSBmb3IgZXhlY2J1ZjMgaW9jdGwuIEhlbmNlLCBhbGwgZXhlY2J1ZjMgc3BlY2lmaWMgaGFuZGxp bmcKLXNob3VsZCBiZSBpbiBhIHNlcGFyYXRlIGZpbGUgYW5kIG9ubHkgZnVuY3Rpb25hbGl0aWVz IGNvbW1vbiB0byB0aGVzZSBpb2N0bHMKLWNhbiBiZSB0aGUgc2hhcmVkIGNvZGUgd2hlcmUgcG9z c2libGUuCi0KLVZNX1BSSVZBVEUgb2JqZWN0cwotLS0tLS0tLS0tLS0tLS0tLS0tLQotQnkgZGVm YXVsdCwgQk9zIGNhbiBiZSBtYXBwZWQgb24gbXVsdGlwbGUgVk1zIGFuZCBjYW4gYWxzbyBiZSBk bWEtYnVmCi1leHBvcnRlZC4gSGVuY2UgdGhlc2UgQk9zIGFyZSByZWZlcnJlZCB0byBhcyBTaGFy ZWQgQk9zLgotRHVyaW5nIGVhY2ggZXhlY2J1ZiBzdWJtaXNzaW9uLCB0aGUgcmVxdWVzdCBmZW5j ZSBtdXN0IGJlIGFkZGVkIHRvIHRoZQotZG1hLXJlc3YgZmVuY2UgbGlzdCBvZiBhbGwgc2hhcmVk IEJPcyBtYXBwZWQgb24gdGhlIFZNLgotCi1WTV9CSU5EIGZlYXR1cmUgaW50cm9kdWNlcyBhbiBv cHRpbWl6YXRpb24gd2hlcmUgdXNlciBjYW4gY3JlYXRlIEJPIHdoaWNoCi1pcyBwcml2YXRlIHRv IGEgc3BlY2lmaWVkIFZNIHZpYSBJOTE1X0dFTV9DUkVBVEVfRVhUX1ZNX1BSSVZBVEUgZmxhZyBk dXJpbmcKLUJPIGNyZWF0aW9uLiBVbmxpa2UgU2hhcmVkIEJPcywgdGhlc2UgVk0gcHJpdmF0ZSBC T3MgY2FuIG9ubHkgYmUgbWFwcGVkIG9uCi10aGUgVk0gdGhleSBhcmUgcHJpdmF0ZSB0byBhbmQg Y2FuJ3QgYmUgZG1hLWJ1ZiBleHBvcnRlZC4KLUFsbCBwcml2YXRlIEJPcyBvZiBhIFZNIHNoYXJl IHRoZSBkbWEtcmVzdiBvYmplY3QuIEhlbmNlIGR1cmluZyBlYWNoIGV4ZWNidWYKLXN1Ym1pc3Np b24sIHRoZXkgbmVlZCBvbmx5IG9uZSBkbWEtcmVzdiBmZW5jZSBsaXN0IHVwZGF0ZWQuIFRodXMs IHRoZSBmYXN0Ci1wYXRoICh3aGVyZSByZXF1aXJlZCBtYXBwaW5ncyBhcmUgYWxyZWFkeSBib3Vu ZCkgc3VibWlzc2lvbiBsYXRlbmN5IGlzIE8oMSkKLXcuci50IHRoZSBudW1iZXIgb2YgVk0gcHJp dmF0ZSBCT3MuCi0KLVZNX0JJTkQgbG9ja2luZyBoaWVyYXJjaHkKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KLVRoZSBsb2NraW5nIGRlc2lnbiBoZXJlIHN1cHBvcnRzIHRoZSBvbGRlciAoZXhl Y2xpc3QgYmFzZWQpIGV4ZWNidWYgbW9kZSwgdGhlCi1uZXdlciBWTV9CSU5EIG1vZGUsIHRoZSBW TV9CSU5EIG1vZGUgd2l0aCBHUFUgcGFnZSBmYXVsdHMgYW5kIHBvc3NpYmxlIGZ1dHVyZQotc3lz dGVtIGFsbG9jYXRvciBzdXBwb3J0IChTZWUgYFNoYXJlZCBWaXJ0dWFsIE1lbW9yeSAoU1ZNKSBz dXBwb3J0YF8pLgotVGhlIG9sZGVyIGV4ZWNidWYgbW9kZSBhbmQgdGhlIG5ld2VyIFZNX0JJTkQg bW9kZSB3aXRob3V0IHBhZ2UgZmF1bHRzIG1hbmFnZXMKLXJlc2lkZW5jeSBvZiBiYWNraW5nIHN0 b3JhZ2UgdXNpbmcgZG1hX2ZlbmNlLiBUaGUgVk1fQklORCBtb2RlIHdpdGggcGFnZSBmYXVsdHMK LWFuZCB0aGUgc3lzdGVtIGFsbG9jYXRvciBzdXBwb3J0IGRvIG5vdCB1c2UgYW55IGRtYV9mZW5j ZSBhdCBhbGwuCi0KLVZNX0JJTkQgbG9ja2luZyBvcmRlciBpcyBhcyBiZWxvdy4KLQotMSkgTG9j ay1BOiBBIHZtX2JpbmQgbXV0ZXggd2lsbCBwcm90ZWN0IHZtX2JpbmQgbGlzdHMuIFRoaXMgbG9j ayBpcyB0YWtlbiBpbgotICAgdm1fYmluZC92bV91bmJpbmQgaW9jdGwgY2FsbHMsIGluIHRoZSBl eGVjYnVmIHBhdGggYW5kIHdoaWxlIHJlbGVhc2luZyB0aGUKLSAgIG1hcHBpbmcuCi0KLSAgIElu IGZ1dHVyZSwgd2hlbiBHUFUgcGFnZSBmYXVsdHMgYXJlIHN1cHBvcnRlZCwgd2UgY2FuIHBvdGVu dGlhbGx5IHVzZSBhCi0gICByd3NlbSBpbnN0ZWFkLCBzbyB0aGF0IG11bHRpcGxlIHBhZ2UgZmF1 bHQgaGFuZGxlcnMgY2FuIHRha2UgdGhlIHJlYWQgc2lkZQotICAgbG9jayB0byBsb29rdXAgdGhl IG1hcHBpbmcgYW5kIGhlbmNlIGNhbiBydW4gaW4gcGFyYWxsZWwuCi0gICBUaGUgb2xkZXIgZXhl Y2J1ZiBtb2RlIG9mIGJpbmRpbmcgZG8gbm90IG5lZWQgdGhpcyBsb2NrLgotCi0yKSBMb2NrLUI6 IFRoZSBvYmplY3QncyBkbWEtcmVzdiBsb2NrIHdpbGwgcHJvdGVjdCBpOTE1X3ZtYSBzdGF0ZSBh bmQgbmVlZHMgdG8KLSAgIGJlIGhlbGQgd2hpbGUgYmluZGluZy91bmJpbmRpbmcgYSB2bWEgaW4g dGhlIGFzeW5jIHdvcmtlciBhbmQgd2hpbGUgdXBkYXRpbmcKLSAgIGRtYS1yZXN2IGZlbmNlIGxp c3Qgb2YgYW4gb2JqZWN0LiBOb3RlIHRoYXQgcHJpdmF0ZSBCT3Mgb2YgYSBWTSB3aWxsIGFsbAot ICAgc2hhcmUgYSBkbWEtcmVzdiBvYmplY3QuCi0KLSAgIFRoZSBmdXR1cmUgc3lzdGVtIGFsbG9j YXRvciBzdXBwb3J0IHdpbGwgdXNlIHRoZSBITU0gcHJlc2NyaWJlZCBsb2NraW5nCi0gICBpbnN0 ZWFkLgotCi0zKSBMb2NrLUM6IFNwaW5sb2NrL3MgdG8gcHJvdGVjdCBzb21lIG9mIHRoZSBWTSdz IGxpc3RzIGxpa2UgdGhlIGxpc3Qgb2YKLSAgIGludmFsaWRhdGVkIHZtYXMgKGR1ZSB0byBldmlj dGlvbiBhbmQgdXNlcnB0ciBpbnZhbGlkYXRpb24pIGV0Yy4KLQotV2hlbiBHUFUgcGFnZSBmYXVs dHMgYXJlIHN1cHBvcnRlZCwgdGhlIGV4ZWNidWYgcGF0aCBkbyBub3QgdGFrZSBhbnkgb2YgdGhl c2UKLWxvY2tzLiBUaGVyZSB3ZSB3aWxsIHNpbXBseSBzbWFzaCB0aGUgbmV3IGJhdGNoIGJ1ZmZl ciBhZGRyZXNzIGludG8gdGhlIHJpbmcgYW5kCi10aGVuIHRlbGwgdGhlIHNjaGVkdWxlciBydW4g dGhhdC4gVGhlIGxvY2sgdGFraW5nIG9ubHkgaGFwcGVucyBmcm9tIHRoZSBwYWdlCi1mYXVsdCBo YW5kbGVyLCB3aGVyZSB3ZSB0YWtlIGxvY2stQSBpbiByZWFkIG1vZGUsIHdoaWNoZXZlciBsb2Nr LUIgd2UgbmVlZCB0bwotZmluZCB0aGUgYmFja2luZyBzdG9yYWdlIChkbWFfcmVzdiBsb2NrIGZv ciBnZW0gb2JqZWN0cywgYW5kIGhtbS9jb3JlIG1tIGZvcgotc3lzdGVtIGFsbG9jYXRvcikgYW5k IHNvbWUgYWRkaXRpb25hbCBsb2NrcyAobG9jay1EKSBmb3IgdGFraW5nIGNhcmUgb2YgcGFnZQot dGFibGUgcmFjZXMuIFBhZ2UgZmF1bHQgbW9kZSBzaG91bGQgbm90IG5lZWQgdG8gZXZlciBtYW5p cHVsYXRlIHRoZSB2bSBsaXN0cywKLXNvIHdvbid0IGV2ZXIgbmVlZCBsb2NrLUMuCi0KLVZNX0JJ TkQgTFJVIGhhbmRsaW5nCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLVdlIG5lZWQgdG8gZW5zdXJl IFZNX0JJTkQgbWFwcGVkIG9iamVjdHMgYXJlIHByb3Blcmx5IExSVSB0YWdnZWQgdG8gYXZvaWQK LXBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uLiBXZSB3aWxsIGFsc28gbmVlZCBzdXBwb3J0IGZvciBi dWxrIExSVSBtb3ZlbWVudCBvZgotVk1fQklORCBvYmplY3RzIHRvIGF2b2lkIGFkZGl0aW9uYWwg bGF0ZW5jaWVzIGluIGV4ZWNidWYgcGF0aC4KLQotVGhlIHBhZ2UgdGFibGUgcGFnZXMgYXJlIHNp bWlsYXIgdG8gVk1fQklORCBtYXBwZWQgb2JqZWN0cyAoU2VlCi1gRXZpY3RhYmxlIHBhZ2UgdGFi bGUgYWxsb2NhdGlvbnNgXykgYW5kIGFyZSBtYWludGFpbmVkIHBlciBWTSBhbmQgbmVlZHMgdG8K LWJlIHBpbm5lZCBpbiBtZW1vcnkgd2hlbiBWTSBpcyBtYWRlIGFjdGl2ZSAoaWUuLCB1cG9uIGFu IGV4ZWNidWYgY2FsbCB3aXRoCi10aGF0IFZNKS4gU28sIGJ1bGsgTFJVIG1vdmVtZW50IG9mIHBh Z2UgdGFibGUgcGFnZXMgaXMgYWxzbyBuZWVkZWQuCi0KLVZNX0JJTkQgZG1hX3Jlc3YgdXNhZ2UK LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1GZW5jZXMgbmVlZHMgdG8gYmUgYWRkZWQgdG8gYWxs IFZNX0JJTkQgbWFwcGVkIG9iamVjdHMuIER1cmluZyBlYWNoIGV4ZWNidWYKLXN1Ym1pc3Npb24s IHRoZXkgYXJlIGFkZGVkIHdpdGggRE1BX1JFU1ZfVVNBR0VfQk9PS0tFRVAgdXNhZ2UgdG8gcHJl dmVudAotb3ZlciBzeW5jIChTZWUgZW51bSBkbWFfcmVzdl91c2FnZSkuIE9uZSBjYW4gb3ZlcnJp ZGUgaXQgd2l0aCBlaXRoZXIKLURNQV9SRVNWX1VTQUdFX1JFQUQgb3IgRE1BX1JFU1ZfVVNBR0Vf V1JJVEUgdXNhZ2UgZHVyaW5nIGV4cGxpY2l0IG9iamVjdAotZGVwZW5kZW5jeSBzZXR0aW5nLgot Ci1Ob3RlIHRoYXQgRFJNX0k5MTVfR0VNX1dBSVQgYW5kIERSTV9JOTE1X0dFTV9CVVNZIGlvY3Rs cyBkbyBub3QgY2hlY2sgZm9yCi1ETUFfUkVTVl9VU0FHRV9CT09LS0VFUCB1c2FnZSBhbmQgaGVu Y2Ugc2hvdWxkIG5vdCBiZSB1c2VkIGZvciBlbmQgb2YgYmF0Y2gKLWNoZWNrLiBJbnN0ZWFkLCB0 aGUgZXhlY2J1ZjMgb3V0IGZlbmNlIHNob3VsZCBiZSB1c2VkIGZvciBlbmQgb2YgYmF0Y2ggY2hl Y2sKLShTZWUgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMykuCi0KLUFsc28sIGluIFZN X0JJTkQgbW9kZSwgdXNlIGRtYS1yZXN2IGFwaXMgZm9yIGRldGVybWluaW5nIG9iamVjdCBhY3Rp dmVuZXNzCi0oU2VlIGRtYV9yZXN2X3Rlc3Rfc2lnbmFsZWQoKSBhbmQgZG1hX3Jlc3Zfd2FpdF90 aW1lb3V0KCkpIGFuZCBkbyBub3QgdXNlIHRoZQotb2xkZXIgaTkxNV92bWEgYWN0aXZlIHJlZmVy ZW5jZSB0cmFja2luZyB3aGljaCBpcyBkZXByZWNhdGVkLiBUaGlzIHNob3VsZCBiZQotZWFzaWVy IHRvIGdldCBpdCB3b3JraW5nIHdpdGggdGhlIGN1cnJlbnQgVFRNIGJhY2tlbmQuCi0KLU1lc2Eg dXNlIGNhc2UKLS0tLS0tLS0tLS0tLS0tCi1WTV9CSU5EIGNhbiBwb3RlbnRpYWxseSByZWR1Y2Ug dGhlIENQVSBvdmVyaGVhZCBpbiBNZXNhIChib3RoIFZ1bGthbiBhbmQgSXJpcyksCi1oZW5jZSBp bXByb3ZpbmcgcGVyZm9ybWFuY2Ugb2YgQ1BVLWJvdW5kIGFwcGxpY2F0aW9ucy4gSXQgYWxzbyBh bGxvd3MgdXMgdG8KLWltcGxlbWVudCBWdWxrYW4ncyBTcGFyc2UgUmVzb3VyY2VzLiBXaXRoIGlu Y3JlYXNpbmcgR1BVIGhhcmR3YXJlIHBlcmZvcm1hbmNlLAotcmVkdWNpbmcgQ1BVIG92ZXJoZWFk IGJlY29tZXMgbW9yZSBpbXBhY3RmdWwuCi0KLQotT3RoZXIgVk1fQklORCB1c2UgY2FzZXMKLT09 PT09PT09PT09PT09PT09PT09PT09PQotCi1Mb25nIHJ1bm5pbmcgQ29tcHV0ZSBjb250ZXh0cwot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1Vc2FnZSBvZiBkbWEtZmVuY2UgZXhwZWN0 cyB0aGF0IHRoZXkgY29tcGxldGUgaW4gcmVhc29uYWJsZSBhbW91bnQgb2YgdGltZS4KLUNvbXB1 dGUgb24gdGhlIG90aGVyIGhhbmQgY2FuIGJlIGxvbmcgcnVubmluZy4gSGVuY2UgaXQgaXMgYXBw cm9wcmlhdGUgZm9yCi1jb21wdXRlIHRvIHVzZSB1c2VyL21lbW9yeSBmZW5jZSAoU2VlIGBVc2Vy L01lbW9yeSBGZW5jZWBfKSBhbmQgZG1hLWZlbmNlIHVzYWdlCi1tdXN0IGJlIGxpbWl0ZWQgdG8g aW4ta2VybmVsIGNvbnN1bXB0aW9uIG9ubHkuCi0KLVdoZXJlIEdQVSBwYWdlIGZhdWx0cyBhcmUg bm90IGF2YWlsYWJsZSwga2VybmVsIGRyaXZlciB1cG9uIGJ1ZmZlciBpbnZhbGlkYXRpb24KLXdp bGwgaW5pdGlhdGUgYSBzdXNwZW5kIChwcmVlbXB0aW9uKSBvZiBsb25nIHJ1bm5pbmcgY29udGV4 dCwgZmluaXNoIHRoZQotaW52YWxpZGF0aW9uLCByZXZhbGlkYXRlIHRoZSBCTyBhbmQgdGhlbiBy ZXN1bWUgdGhlIGNvbXB1dGUgY29udGV4dC4gVGhpcyBpcwotZG9uZSBieSBoYXZpbmcgYSBwZXIt Y29udGV4dCBwcmVlbXB0IGZlbmNlIHdoaWNoIGlzIGVuYWJsZWQgd2hlbiBzb21lb25lIHRyaWVz Ci10byB3YWl0IG9uIGl0IGFuZCB0cmlnZ2VycyB0aGUgY29udGV4dCBwcmVlbXB0aW9uLgotCi1V c2VyL01lbW9yeSBGZW5jZQotfn5+fn5+fn5+fn5+fn5+fn5+Ci1Vc2VyL01lbW9yeSBmZW5jZSBp cyBhIDxhZGRyZXNzLCB2YWx1ZT4gcGFpci4gVG8gc2lnbmFsIHRoZSB1c2VyIGZlbmNlLCB0aGUK LXNwZWNpZmllZCB2YWx1ZSB3aWxsIGJlIHdyaXR0ZW4gYXQgdGhlIHNwZWNpZmllZCB2aXJ0dWFs IGFkZHJlc3MgYW5kIHdha2V1cCB0aGUKLXdhaXRpbmcgcHJvY2Vzcy4gVXNlciBmZW5jZSBjYW4g YmUgc2lnbmFsZWQgZWl0aGVyIGJ5IHRoZSBHUFUgb3Iga2VybmVsIGFzeW5jCi13b3JrZXIgKGxp a2UgdXBvbiBiaW5kIGNvbXBsZXRpb24pLiBVc2VyIGNhbiB3YWl0IG9uIGEgdXNlciBmZW5jZSB3 aXRoIGEgbmV3Ci11c2VyIGZlbmNlIHdhaXQgaW9jdGwuCi0KLUhlcmUgaXMgc29tZSBwcmlvciB3 b3JrIG9uIHRoaXM6Ci1odHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5vcmcvcGF0Y2gvMzQ5 NDE3LwotCi1Mb3cgTGF0ZW5jeSBTdWJtaXNzaW9uCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgot QWxsb3dzIGNvbXB1dGUgVU1EIHRvIGRpcmVjdGx5IHN1Ym1pdCBHUFUgam9icyBpbnN0ZWFkIG9m IHRocm91Z2ggZXhlY2J1ZgotaW9jdGwuIFRoaXMgaXMgbWFkZSBwb3NzaWJsZSBieSBWTV9CSU5E IGlzIG5vdCBiZWluZyBzeW5jaHJvbml6ZWQgYWdhaW5zdAotZXhlY2J1Zi4gVk1fQklORCBhbGxv d3MgYmluZC91bmJpbmQgb2YgbWFwcGluZ3MgcmVxdWlyZWQgZm9yIHRoZSBkaXJlY3RseQotc3Vi bWl0dGVkIGpvYnMuCi0KLURlYnVnZ2VyCi0tLS0tLS0tLS0KLVdpdGggZGVidWcgZXZlbnQgaW50 ZXJmYWNlIHVzZXIgc3BhY2UgcHJvY2VzcyAoZGVidWdnZXIpIGlzIGFibGUgdG8ga2VlcCB0cmFj awotb2YgYW5kIGFjdCB1cG9uIHJlc291cmNlcyBjcmVhdGVkIGJ5IGFub3RoZXIgcHJvY2VzcyAo ZGVidWdnZWQpIGFuZCBhdHRhY2hlZAotdG8gR1BVIHZpYSB2bV9iaW5kIGludGVyZmFjZS4KLQot R1BVIHBhZ2UgZmF1bHRzCi0tLS0tLS0tLS0tLS0tLS0tCi1HUFUgcGFnZSBmYXVsdHMgd2hlbiBz dXBwb3J0ZWQgKGluIGZ1dHVyZSksIHdpbGwgb25seSBiZSBzdXBwb3J0ZWQgaW4gdGhlCi1WTV9C SU5EIG1vZGUuIFdoaWxlIGJvdGggdGhlIG9sZGVyIGV4ZWNidWYgbW9kZSBhbmQgdGhlIG5ld2Vy IFZNX0JJTkQgbW9kZSBvZgotYmluZGluZyB3aWxsIHJlcXVpcmUgdXNpbmcgZG1hLWZlbmNlIHRv IGVuc3VyZSByZXNpZGVuY3ksIHRoZSBHUFUgcGFnZSBmYXVsdHMKLW1vZGUgd2hlbiBzdXBwb3J0 ZWQsIHdpbGwgbm90IHVzZSBhbnkgZG1hLWZlbmNlIGFzIHJlc2lkZW5jeSBpcyBwdXJlbHkgbWFu YWdlZAotYnkgaW5zdGFsbGluZyBhbmQgcmVtb3ZpbmcvaW52YWxpZGF0aW5nIHBhZ2UgdGFibGUg ZW50cmllcy4KLQotUGFnZSBsZXZlbCBoaW50cyBzZXR0aW5ncwotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KLVZNX0JJTkQgYWxsb3dzIGFueSBoaW50cyBzZXR0aW5nIHBlciBtYXBwaW5nIGlu c3RlYWQgb2YgcGVyIEJPLiBQb3NzaWJsZSBoaW50cwotaW5jbHVkZSBwbGFjZW1lbnQgYW5kIGF0 b21pY2l0eS4gU3ViLUJPIGxldmVsIHBsYWNlbWVudCBoaW50IHdpbGwgYmUgZXZlbiBtb3JlCi1y ZWxldmFudCB3aXRoIHVwY29taW5nIEdQVSBvbi1kZW1hbmQgcGFnZSBmYXVsdCBzdXBwb3J0Lgot Ci1QYWdlIGxldmVsIENhY2hlL0NMT1Mgc2V0dGluZ3MKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KLVZNX0JJTkQgYWxsb3dzIGNhY2hlL0NMT1Mgc2V0dGluZ3MgcGVyIG1hcHBpbmcg aW5zdGVhZCBvZiBwZXIgQk8uCi0KLUV2aWN0YWJsZSBwYWdlIHRhYmxlIGFsbG9jYXRpb25zCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLU1ha2UgcGFnZXRhYmxlIGFsbG9jYXRp b25zIGV2aWN0YWJsZSBhbmQgbWFuYWdlIHRoZW0gc2ltaWxhciB0byBWTV9CSU5ECi1tYXBwZWQg b2JqZWN0cy4gUGFnZSB0YWJsZSBwYWdlcyBhcmUgc2ltaWxhciB0byBwZXJzaXN0ZW50IG1hcHBp bmdzIG9mIGEKLVZNIChkaWZmZXJlbmNlIGhlcmUgYXJlIHRoYXQgdGhlIHBhZ2UgdGFibGUgcGFn ZXMgd2lsbCBub3QgaGF2ZSBhbiBpOTE1X3ZtYQotc3RydWN0dXJlIGFuZCBhZnRlciBzd2FwcGlu ZyBwYWdlcyBiYWNrIGluLCBwYXJlbnQgcGFnZSBsaW5rIG5lZWRzIHRvIGJlCi11cGRhdGVkKS4K LQotU2hhcmVkIFZpcnR1YWwgTWVtb3J5IChTVk0pIHN1cHBvcnQKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQotVk1fQklORCBpbnRlcmZhY2UgY2FuIGJlIHVzZWQgdG8gbWFw IHN5c3RlbSBtZW1vcnkgZGlyZWN0bHkgKHdpdGhvdXQgZ2VtIEJPCi1hYnN0cmFjdGlvbikgdXNp bmcgdGhlIEhNTSBpbnRlcmZhY2UuIFNWTSBpcyBvbmx5IHN1cHBvcnRlZCB3aXRoIEdQVSBwYWdl Ci1mYXVsdHMgZW5hYmxlZC4KLQotVk1fQklORCBVQVBJCi09PT09PT09PT09PT09Ci0KLS4uIGtl cm5lbC1kb2M6OiBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV92bV9iaW5kLmgKZGlmZiAtLWdp dCBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QgYi9Eb2N1bWVudGF0aW9uL2dwdS9y ZmMvaW5kZXgucnN0CmluZGV4IDgzMTMxOTRhZjA2ODMuLjEyNTZkZGUwZmIzYjEgMTAwNjQ0Ci0t LSBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QKKysrIGIvRG9jdW1lbnRhdGlvbi9n cHUvcmZjL2luZGV4LnJzdApAQCAtMjgsOSArMjgsNSBAQCBob3N0IHN1Y2ggZG9jdW1lbnRhdGlv bjoKIAogICAgIGk5MTVfc21hbGxfYmFyLnJzdAogCi0uLiB0b2N0cmVlOjoKLQotICAgIGk5MTVf dm1fYmluZC5yc3QKLQogLi4gdG9jdHJlZTo6CiAgICAgY29sb3JfcGlwZWxpbmUucnN0Ci0tIAoy LjUzLjAKCg==