From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id 8206614E8 for ; Thu, 23 Mar 2017 18:21:45 +0100 (CET) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga105.jf.intel.com with ESMTP; 23 Mar 2017 10:21:44 -0700 Message-Id: Date: 23 Mar 2017 10:21:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,210,1486454400"; d="scan'208";a="1111506387" Received: from unknown (HELO localhost.localdomain) ([10.240.176.250]) by orsmga001.jf.intel.com with ESMTP; 23 Mar 2017 10:21:41 -0700 Content-Type: multipart/alternative; boundary="===============6122586957396786244==" MIME-Version: 1.0 From: sys_stv@intel.com To: test-report@dpdk.org CC: beilei.xing@intel.com Subject: [dpdk-test-report] |FAILURE| pw22155 [PATCH v2 3/4] net/i40e: support tunnel filter to VF X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Mar 2017 17:21:50 -0000 --===============6122586957396786244== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogSW50ZWwtY29tcGlsYXRpb24KVGVzdC1TdGF0dXM6IEZBSUxVUkUKCmh0dHA6 Ly9kcGRrLm9yZy9wYXRjaC8yMjE1NQoKX0NvbXBpbGF0aW9uIGlzc3Vlc18KClN1Ym1pdHRlcjog QmVpbGVpIFhpbmcgPGJlaWxlaS54aW5nQGludGVsLmNvbT4KRGF0ZTogVGh1LCAyMyBNYXIgMjAx NyAxODo0NjoyOCArMDgwMApEUERLIGdpdCBiYXNlbGluZTogUmVwbzpkcGRrLCBCcmFuY2g6bWFz dGVyLCBDb21taXRJRDo4NGFhYzk3YjQ5OTk0YmU2YjQ2MWI0NmJlMTYwYjQ3OTM4ZTY5N2IzCgpQ YXRjaDIyMTUzLTIyMTU1IC0tPiBjb21waWxlIGVycm9yCkJ1aWxkIFN1bW1hcnk6IDE4IEJ1aWxk cyBEb25lLCAwIFN1Y2Nlc3NmdWwsIDE4IEZhaWx1cmVzCgpUZXN0IGVudmlyb25tZW50IGFuZCBj b25maWd1cmF0aW9uIGFzIGJlbG93OgpPUzogUkhFTDcuMl82NAogICAgS2VybmVsIFZlcnNpb246 My4xMC4wLTUxNC4xMC4yLmVsNy54ODZfNjQKICAgIENQVSBpbmZvOkludGVsKFIpIFhlb24oUikg Q1BVIEU1LTI2OTkgdjQgQCAyLjIwR0h6CiAgICBHQ0MgVmVyc2lvbjpnY2MgKEdDQykgNC44LjUg MjAxNTA2MjMgKFJlZCBIYXQgNC44LjUtNCkKICAgIENsYW5nIFZlcnNpb246My40LjIKICAgIGk2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwogICAgeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKICAg IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZApPUzogRnJlZUJTRDEwLjNfNjQKICAg IEtlcm5lbCBWZXJzaW9uOjEwLjMtUkVMRUFTRQogICAgQ1BVIGluZm86IEludGVsKFIpIFhlb24o UikgQ1BVIEU1LTI2OTkgdjQgQCAyLjIwR0h6ICgyMTk0Ljk3LU1IeiBLOC1jbGFzcyBDUFUpCiAg ICBHQ0MgVmVyc2lvbjpnY2MgKEZyZWVCU0QgUG9ydHMgQ29sbGVjdGlvbikgNC44LjUKICAgIENs YW5nIFZlcnNpb246My40LjEKICAgIHg4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nCiAgICB4ODZf NjQtbmF0aXZlLWJzZGFwcC1nY2MKT1M6IEZDMjRfNjQKICAgIEtlcm5lbCBWZXJzaW9uOjQuOS4x My0xMDAuZmMyNC54ODZfNjQKICAgIENQVSBpbmZvOkludGVsKFIpIFhlb24oUikgQ1BVIEU1LTI2 OTkgdjMgQCAyLjMwR0h6CiAgICBHQ0MgVmVyc2lvbjpnY2MgKEdDQykgNi4yLjEgMjAxNjA5MTYg KFJlZCBIYXQgNi4yLjEtMikKICAgIENsYW5nIFZlcnNpb246My44LjAKICAgIHg4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLWRlYnVnCiAgICBpNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MKICAgIHg4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjCiAgICB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1z aGFyZWQKICAgIHg4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcKT1M6IFVCMTYwNF82NAogICAg S2VybmVsIFZlcnNpb246NC40LjAtNjQtZ2VuZXJpYwogICAgQ1BVIGluZm86SW50ZWwoUikgWGVv bihSKSBDUFUgRTUtMjY5OSB2MyBAIDIuMzBHSHoKICAgIEdDQyBWZXJzaW9uOmdjYyAoVWJ1bnR1 IDUuNC4wLTZ1YnVudHUxfjE2LjA0LjQpIDUuNC4wIDIwMTYwNjA5CiAgICBDbGFuZyBWZXJzaW9u OjMuOC4wCiAgICBpNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MKICAgIHg4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjCiAgICB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQKICAgIHg4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcKT1M6IENlbnRPUzdfNjQKICAgIEtlcm5lbCBWZXJzaW9u OjMuMTAuMC01MTQuMTAuMi5lbDcueDg2XzY0CiAgICBDUFUgaW5mbzpJbnRlbChSKSBYZW9uKFIp IENQVSBFNS0yNjk5IHYzIEAgMi4zMEdIegogICAgR0NDIFZlcnNpb246Z2NjIChHQ0MpIDQuOC41 IDIwMTUwNjIzIChSZWQgSGF0IDQuOC41LTQpCiAgICBDbGFuZyBWZXJzaW9uOjMuNC4yCiAgICBp Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MKICAgIHg4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcK ICAgIHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZAogICAgeDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MKCkZhaWxlZCBCdWlsZCAjMToKT1M6IFJIRUw3LjJfNjQKVGFyZ2V0OiBpNjg2 LW5hdGl2ZS1saW51eGFwcC1nY2MKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTQ6OTogZXJyb3I6IOKAmHN0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmSBkZWNsYXJlZCBpbnNpZGUgcGFyYW1ldGVy IGxpc3QgWy1XZXJyb3JdCiAgc3RydWN0IGk0MGVfdHVubmVsX2ZpbHRlciAqdHVubmVsX2ZpbHRl cik7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTQ6OTogZXJyb3I6IGl0cyBzY29wZSBpcyBvbmx5IHRoaXMg ZGVmaW5pdGlvbiBvciBkZWNsYXJhdGlvbiwgd2hpY2ggaXMgcHJvYmFibHkgbm90IHdoYXQgeW91 IHdhbnQgWy1XZXJyb3JdCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMTo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2Fk ZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlz dCBbLVdlcnJvcl0KICBzdHJ1Y3QgaTQwZV90dW5uZWxfZmlsdGVyICp0dW5uZWxfZmlsdGVyKQog ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjY5OToxOiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGk0 MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgK IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo0MTI6MTI6IG5vdGU6IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mIOKAmGk0MGVfdHVu bmVsX2ZpbHRlcl9jb252ZXJ04oCZIHdhcyBoZXJlCiBzdGF0aWMgaW50IGk0MGVfdHVubmVsX2Zp bHRlcl9jb252ZXJ0KAogICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVu bmVsX2ZpbHRlcl9jb252ZXJ04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6NTA6IGVycm9yOiBkZXJlZmVyZW5jaW5n IHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgZXRoZXJfYWRkcl9jb3B5KChzdHJ1Y3QgZXRo ZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwNTo1MDogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBldGhlcl9hZGRyX2Nv cHkoKHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0ZXItPmVsZW1lbnQuaW5uZXJfbWFjLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 NzA3OjQ2OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQog IHR1bm5lbF9maWx0ZXItPmlucHV0LmlubmVyX3ZsYW4gPSBjbGRfZmlsdGVyLT5lbGVtZW50Lmlu bmVyX3ZsYW47CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2V0aGVyLmg6NTM6MCwKICAgICAgICAg ICAgICAgICBmcm9tIC9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NDU6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwODozNDogZXJyb3I6IGRlcmVmZXJlbmNpbmcg cG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBpZiAoKHJ0ZV9sZV90b19jcHVfMTYoY2xkX2Zp bHRlci0+ZWxlbWVudC5mbGFncykgJgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2Nj L2luY2x1ZGUvcnRlX2J5dGVvcmRlci5oOjEwOTozMDogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBt YWNybyDigJhydGVfbGVfdG9fY3B1XzE24oCZCiAjZGVmaW5lIHJ0ZV9sZV90b19jcHVfMTYoeCkg KHgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE0OjQxOiBlcnJvcjog ZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0ZXIt PmlucHV0LmZsYWdzID0gY2xkX2ZpbHRlci0+ZWxlbWVudC5mbGFnczsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxNTo0NTogZXJyb3I6IGRlcmVmZXJl bmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICB0dW5uZWxfZmlsdGVyLT5pbnB1dC50 ZW5hbnRfaWQgPSBjbGRfZmlsdGVyLT5lbGVtZW50LnRlbmFudF9pZDsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTY6MzU6IGVycm9yOiBkZXJl ZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgdHVubmVsX2ZpbHRlci0+cXVl dWUgPSBjbGRfZmlsdGVyLT5lbGVtZW50LnF1ZXVlX251bWJlcjsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxODoxNjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgY2xkX2ZpbHRlci0+Z2VuZXJhbF9maWVsZHMs CiAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxOToyMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgc2l6ZW9mKGNsZF9maWx0ZXItPmdlbmVyYWxf ZmllbGRzKSk7CiAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDigJhp NDBlX2Rldl90dW5uZWxfZmlsdGVyX3NldOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODA2OjEyOiBlcnJvcjogaW52YWxp ZCBhcHBsaWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVj dCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogICAgIHNpemVvZihzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQpLAogICAgICAgICAgICBeCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6NjgxNjozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODE4OjMzOiBlcnJvcjog ZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhl cl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQuaW5uZXJfbWFjKTsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjA6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRl ciB0byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW4gPQogICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjgyNToyMjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUKICAgcnRlX21lbWNweSgmcGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0 YSwKICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODI3OjE5OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgIHNpemVvZihwZmlsdGVyLT5lbGVt ZW50LmlwYWRkci52NC5kYXRhKSk7CiAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgzNDoyMjog ZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgcnRlX21l bWNweSgmcGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjYuZGF0YSwKICAgICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODM2OjIxOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29t cGxldGUgdHlwZQogICAgICAgc2l6ZW9mKHBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEp KTsKICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4NTg6MjA6IGVycm9yOiBkZXJlZmVyZW5j aW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICAgICAgICZwZmlsdGVyLT5lbGVt ZW50LmZsYWdzKTsKICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg2NDo5OiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQu ZmxhZ3MgfD0gcnRlX2NwdV90b19sZV8xNigKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4Njc6OTogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVt ZW50LnRlbmFudF9pZCA9IHJ0ZV9jcHVfdG9fbGVfMzIodHVubmVsX2ZpbHRlci0+dGVuYW50X2lk KTsKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY4Njg6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0 byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LnF1ZXVlX251bWJlciA9CiAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODczOjI6IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90 dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFst V2Vycm9yXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19m aWx0ZXIpOwogIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBl IOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBl X3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODg3OjQ6IGVycm9yOiBpbXBsaWNpdCBk ZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhpNDBlX2FxX2FkZF9jbG91ZF9maWx0ZXJzX2JpZ19i dWZmZXLigJkgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICByZXQg PSBpNDBlX2FxX2FkZF9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIoaHcsCiAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4 Nzo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhpNDBlX2FxX2FkZF9j bG91ZF9maWx0ZXJzX2JpZ19idWZmZXLigJkgWy1XZXJyb3I9bmVzdGVkLWV4dGVybnNdCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 Njg5MToyODogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUK ICAgICAgdnNpLT5zZWlkLCAmY2xkX2ZpbHRlci0+ZWxlbWVudCwgMSk7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjkwMTo0OiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24g b2YgZnVuY3Rpb24g4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZ IFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9h cV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKAogICAgXgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJy b3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRf ZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDU6 MjA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAg ICAgICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsKICAgICAgICAgICAgICAgICAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X2NvbnNpc3RlbnRfdHVubmVsX2ZpbHRlcl9zZXTigJk6 Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjkzOToxMjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZ IHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh0KSwKICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NDk6MzM6IGVycm9yOiBkZXJlZmVyZW5j aW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikm cGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6Njk1MTozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lmlu bmVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTUzOjk6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRl ci0+ZWxlbWVudC5pbm5lcl92bGFuID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NTg6MjI6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBm aWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6Njk2MDoxOTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSkpOwogICAgICAg ICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY5Njg6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIg dG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRy LnY2LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk3MDoyMTogZXJyb3I6IGRl cmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgIHNpemVvZihwZmls dGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhKSk7CiAgICAgICAgICAgICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2OTkyOjIwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlw ZQogICAgICAgICAgICAmcGZpbHRlci0+ZWxlbWVudC5mbGFncyk7CiAgICAgICAgICAgICAgICAg ICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBl X2V0aGRldi5jOjY5OTg6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBs ZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LmZsYWdzIHw9IHJ0ZV9jcHVfdG9fbGVfMTYoCiAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo3MDAxOjk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC50ZW5hbnRfaWQgPSBydGVfY3B1X3RvX2xl XzMyKHR1bm5lbF9maWx0ZXItPnRlbmFudF9pZCk7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDAyOjk6IGVy cm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ ZWxlbWVudC5xdWV1ZV9udW1iZXIgPQogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAxODoyOiBlcnJvcjogcGFz c2luZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIGZyb20g aW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdlcnJvcl0KICBpNDBlX3R1bm5lbF9maWx0ZXJf Y29udmVydChjbGRfZmlsdGVyLCAmY2hlY2tfZmlsdGVyKTsKICBeCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBub3Rl OiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQg KuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Ns b3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6NzAzNjoyODogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICAgICAgdnNpLT5zZWlkLCAmY2xkX2ZpbHRlci0+ZWxlbWVudCwgMSk7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzA1MDoyMDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAgJmNsZF9maWx0ZXItPmVsZW1lbnQsIDEp OwogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV90dW5uZWxf ZmlsdGVyX3Jlc3RvcmXigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiBzdG9yYWdlIHNpemUgb2Yg 4oCYY2xkX2ZpbHRlcuKAmSBpc27igJl0IGtub3duCiAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0IGNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzoxMDQyOTo0NTogZXJyb3I6IHVudXNlZCB2YXJpYWJs ZSDigJhjbGRfZmlsdGVy4oCZIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KY2MxOiBhbGwgd2Fy bmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKCgpGYWlsZWQgQnVpbGQgIzI6Ck9TOiBSSEVM Ny4yXzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTQ6OTogZXJy b3I6IOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmSBkZWNs YXJlZCBpbnNpZGUgcGFyYW1ldGVyIGxpc3QgWy1XZXJyb3JdCiAgc3RydWN0IGk0MGVfdHVubmVs X2ZpbHRlciAqdHVubmVsX2ZpbHRlcik7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTQ6OTogZXJyb3I6IGl0 cyBzY29wZSBpcyBvbmx5IHRoaXMgZGVmaW5pdGlvbiBvciBkZWNsYXJhdGlvbiwgd2hpY2ggaXMg cHJvYmFibHkgbm90IHdoYXQgeW91IHdhbnQgWy1XZXJyb3JdCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMTo5OiBlcnJvcjog 4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZIGRlY2xhcmVk IGluc2lkZSBwYXJhbWV0ZXIgbGlzdCBbLVdlcnJvcl0KICBzdHJ1Y3QgaTQwZV90dW5uZWxfZmls dGVyICp0dW5uZWxfZmlsdGVyKQogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBlcnJvcjogY29uZmxp Y3RpbmcgdHlwZXMgZm9yIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZCiBpNDBlX3R1 bm5lbF9maWx0ZXJfY29udmVydCgKIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTI6MTI6IG5vdGU6IHByZXZpb3VzIGRlY2xh cmF0aW9uIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIHdhcyBoZXJlCiBzdGF0 aWMgaW50IGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogICAgICAgICAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IElu IGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZOgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6NTA6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgZXRoZXJf YWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50Lm91dGVy X21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjcwNTo1MDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0ZXIt PmVsZW1lbnQuaW5uZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA3OjQ2OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0ZXItPmlucHV0LmlubmVyX3ZsYW4gPSBj bGRfZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW47CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24veDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVf ZXRoZXIuaDo1MzowLAogICAgICAgICAgICAgICAgIGZyb20gL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0NToKL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA4OjM0 OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIGlmICgo cnRlX2xlX3RvX2NwdV8xNihjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzKSAmCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9ieXRlb3JkZXIuaDoxMDk6MzA6 IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYcnRlX2xlX3RvX2NwdV8xNuKAmQogI2Rl ZmluZSBydGVfbGVfdG9fY3B1XzE2KHgpICh4KQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjcxNDo0MTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBs ZXRlIHR5cGUKICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5mbGFncyA9IGNsZF9maWx0ZXItPmVsZW1l bnQuZmxhZ3M7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjY3MTU6NDU6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBl CiAgdHVubmVsX2ZpbHRlci0+aW5wdXQudGVuYW50X2lkID0gY2xkX2ZpbHRlci0+ZWxlbWVudC50 ZW5hbnRfaWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2NzE2OjM1OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUg dHlwZQogIHR1bm5lbF9maWx0ZXItPnF1ZXVlID0gY2xkX2ZpbHRlci0+ZWxlbWVudC5xdWV1ZV9u dW1iZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTg6MTY6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIGNs ZF9maWx0ZXItPmdlbmVyYWxfZmllbGRzLAogICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTk6MjM6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIHNp emVvZihjbGRfZmlsdGVyLT5nZW5lcmFsX2ZpZWxkcykpOwogICAgICAgICAgICAgICAgICAgICAg IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6NjgwNjoxMjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRv IGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHTigJkKICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh0KSwKICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MTY6MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5n IHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZp bHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjgxODozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBs ZXRlIHR5cGUKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50LmlubmVy X21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODIwOjk6IGVy cm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ ZWxlbWVudC5pbm5lcl92bGFuID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjU6MjI6IGVycm9yOiBkZXJl ZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0 ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NjgyNzoxOTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUK ICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSkpOwogICAgICAgICAg ICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQw ZS9pNDBlX2V0aGRldi5jOjY4MzQ6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8g aW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2 LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgzNjoyMTogZXJyb3I6IGRlcmVm ZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgIHNpemVvZihwZmlsdGVy LT5lbGVtZW50LmlwYWRkci52Ni5kYXRhKSk7CiAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 ODU4OjIwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQog ICAgICAgICAgICAmcGZpbHRlci0+ZWxlbWVudC5mbGFncyk7CiAgICAgICAgICAgICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY4NjQ6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LmZsYWdzIHw9IHJ0ZV9jcHVfdG9fbGVfMTYoCiAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODY3Ojk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21w bGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC50ZW5hbnRfaWQgPSBydGVfY3B1X3RvX2xlXzMy KHR1bm5lbF9maWx0ZXItPnRlbmFudF9pZCk7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY4Ojk6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxl bWVudC5xdWV1ZV9udW1iZXIgPQogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg3MzoyOiBlcnJvcjogcGFzc2lu ZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIGZyb20gaW5j b21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdlcnJvcl0KICBpNDBlX3R1bm5lbF9maWx0ZXJfY29u dmVydChjbGRfZmlsdGVyLCAmY2hlY2tfZmlsdGVyKTsKICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBub3RlOiBl eHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKA mSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3Vk X2ZpbHRfZWxlbV9leHQgKuKAmQogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 Njg4Nzo0OiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYaTQwZV9h cV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0 aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdf YnVmZmVyKGh3LAogICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4ODc6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFy YXRpb24gb2Yg4oCYaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vy cm9yPW5lc3RlZC1leHRlcm5zXQovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4OTE6Mjg6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIHZzaS0+c2VpZCwgJmNsZF9maWx0ZXItPmVs ZW1lbnQsIDEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJy b3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfcmVtb3ZlX2Ns b3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNs YXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZl cigKICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9m IOKAmGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1u ZXN0ZWQtZXh0ZXJuc10KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTA1OjIwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAmY2xkX2ZpbHRlci0+ZWxlbWVudCwgMSk7CiAg ICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDigJhpNDBlX2Rldl9jb25zaXN0 ZW50X3R1bm5lbF9maWx0ZXJfc2V04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5Mzk6MTI6IGVycm9yOiBpbnZhbGlkIGFw cGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAgICAgc2l6ZW9mKHN0cnVjdCBp NDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCksCiAgICAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 OTQ5OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQog ICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjKTsKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NTE6MzM6IGVycm9yOiBkZXJl ZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVyX2Fk ZHIgKikmcGZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6Njk1Mzo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRv IGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQuaW5uZXJfdmxhbiA9CiAgICAgICAg IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2OTU4OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxl dGUgdHlwZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52NC5kYXRhLAog ICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NjA6MTk6IGVycm9yOiBkZXJlZmVyZW5jaW5n IHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgc2l6ZW9mKHBmaWx0ZXItPmVsZW1lbnQu aXBhZGRyLnY0LmRhdGEpKTsKICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTY4OjIyOiBlcnJv cjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICBydGVfbWVtY3B5 KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhLAogICAgICAgICAgICAgICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY5NzA6MjE6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0 ZSB0eXBlCiAgICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjYuZGF0YSkpOwog ICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk5MjoyMDogZXJyb3I6IGRlcmVmZXJlbmNpbmcg cG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAgICAgJnBmaWx0ZXItPmVsZW1lbnQu ZmxhZ3MpOwogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTk4Ojk6IGVycm9yOiBkZXJlZmVy ZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5mbGFn cyB8PSBydGVfY3B1X3RvX2xlXzE2KAogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAwMTo5OiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQu dGVuYW50X2lkID0gcnRlX2NwdV90b19sZV8zMih0dW5uZWxfZmlsdGVyLT50ZW5hbnRfaWQpOwog ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NzAwMjo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQucXVldWVfbnVtYmVyID0KICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjcwMTg6MjogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgMSBvZiDigJhpNDBlX3R1bm5l bF9maWx0ZXJfY29udmVydOKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgWy1XZXJy b3JdCiAgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoY2xkX2ZpbHRlciwgJmNoZWNrX2ZpbHRl cik7CiAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY2OTk6MTogbm90ZTogZXhwZWN0ZWQg4oCYc3RydWN0IGk0MGVfYXFjX2Fk ZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCY c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICrigJkKIGk0MGVfdHVu bmVsX2ZpbHRlcl9jb252ZXJ0KAogXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMzY6Mjg6IGVycm9yOiBkZXJlZmVyZW5jaW5n IHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIHZzaS0+c2VpZCwgJmNsZF9maWx0ZXIt PmVsZW1lbnQsIDEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwNTA6MjA6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICAg ICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsKICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IElu IGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9yZXN0b3Jl4oCZOgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1 OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mIOKAmGNsZF9maWx0ZXLigJkgaXNu4oCZdCBrbm93bgog IHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCBjbGRfZmlsdGVyOwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6 NDU6IGVycm9yOiB1bnVzZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKAmSBbLVdlcnJvcj11bnVz ZWQtdmFyaWFibGVdCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCgoK RmFpbGVkIEJ1aWxkICMzOgpPUzogUkhFTDcuMl82NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLXNoYXJlZAoKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTQ6OTogZXJyb3I6IOKAmHN0cnVjdCBpNDBlX2FxY19h ZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmSBkZWNsYXJlZCBpbnNpZGUgcGFyYW1ldGVyIGxp c3QgWy1XZXJyb3JdCiAgc3RydWN0IGk0MGVfdHVubmVsX2ZpbHRlciAqdHVubmVsX2ZpbHRlcik7 CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo0MTQ6OTogZXJyb3I6IGl0cyBzY29wZSBpcyBvbmx5IHRoaXMgZGVm aW5pdGlvbiBvciBkZWNsYXJhdGlvbiwgd2hpY2ggaXMgcHJvYmFibHkgbm90IHdoYXQgeW91IHdh bnQgWy1XZXJyb3JdCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NjcwMTo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCBb LVdlcnJvcl0KICBzdHJ1Y3QgaTQwZV90dW5uZWxfZmlsdGVyICp0dW5uZWxfZmlsdGVyKQogICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjY5OToxOiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGk0MGVf dHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo0MTI6MTI6IG5vdGU6IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mIOKAmGk0MGVfdHVubmVs X2ZpbHRlcl9jb252ZXJ04oCZIHdhcyBoZXJlCiBzdGF0aWMgaW50IGk0MGVfdHVubmVsX2ZpbHRl cl9jb252ZXJ0KAogICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVs X2ZpbHRlcl9jb252ZXJ04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6NTA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgZXRoZXJfYWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJf YWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYywKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwNTo1MDogZXJyb3I6IGRl cmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBldGhlcl9hZGRyX2NvcHko KHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0ZXItPmVsZW1lbnQuaW5uZXJfbWFjLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA3 OjQ2OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHR1 bm5lbF9maWx0ZXItPmlucHV0LmlubmVyX3ZsYW4gPSBjbGRfZmlsdGVyLT5lbGVtZW50LmlubmVy X3ZsYW47CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24veDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfZXRoZXIuaDo1MzowLAogICAgICAgICAg ICAgICAgIGZyb20gL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo0NToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA4OjM0OiBlcnJvcjogZGVyZWZlcmVuY2luZyBw b2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIGlmICgocnRlX2xlX3RvX2NwdV8xNihjbGRfZmls dGVyLT5lbGVtZW50LmZsYWdzKSAmCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy9pbmNsdWRlL3J0ZV9ieXRlb3JkZXIuaDoxMDk6MzA6IG5vdGU6IGluIGRlZmluaXRpb24gb2Yg bWFjcm8g4oCYcnRlX2xlX3RvX2NwdV8xNuKAmQogI2RlZmluZSBydGVfbGVfdG9fY3B1XzE2KHgp ICh4KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxNDo0MTogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICB0dW5uZWxfZmlsdGVy LT5pbnB1dC5mbGFncyA9IGNsZF9maWx0ZXItPmVsZW1lbnQuZmxhZ3M7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTU6NDU6IGVycm9yOiBkZXJlZmVy ZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgdHVubmVsX2ZpbHRlci0+aW5wdXQu dGVuYW50X2lkID0gY2xkX2ZpbHRlci0+ZWxlbWVudC50ZW5hbnRfaWQ7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE2OjM1OiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0ZXItPnF1 ZXVlID0gY2xkX2ZpbHRlci0+ZWxlbWVudC5xdWV1ZV9udW1iZXI7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTg6MTY6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIGNsZF9maWx0ZXItPmdlbmVyYWxfZmllbGRz LAogICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTk6MjM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIHNpemVvZihjbGRfZmlsdGVyLT5nZW5lcmFs X2ZpZWxkcykpOwogICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCY aTQwZV9kZXZfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgwNjoxMjogZXJyb3I6IGludmFs aWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY4MTY6MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMp OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxODozMzogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgIChzdHJ1Y3QgZXRo ZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50LmlubmVyX21hYyk7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODIwOjk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50 ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5pbm5lcl92bGFuID0KICAg ICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY4MjU6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRh dGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgyNzoxOTogZXJyb3I6IGRlcmVmZXJl bmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICBzaXplb2YocGZpbHRlci0+ZWxl bWVudC5pcGFkZHIudjQuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MzQ6MjI6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9t ZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEsCiAgICAgICAgICAgICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjgzNjoyMTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUKICAgICAgIHNpemVvZihwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRh KSk7CiAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODU4OjIwOiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAgICAmcGZpbHRlci0+ZWxl bWVudC5mbGFncyk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4NjQ6OTogZXJyb3I6IGRl cmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50 LmZsYWdzIHw9IHJ0ZV9jcHVfdG9fbGVfMTYoCiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY3Ojk6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxl bWVudC50ZW5hbnRfaWQgPSBydGVfY3B1X3RvX2xlXzMyKHR1bm5lbF9maWx0ZXItPnRlbmFudF9p ZCk7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY4Ojk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIg dG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5xdWV1ZV9udW1iZXIgPQogICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6Njg3MzoyOiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVf dHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBb LVdlcnJvcl0KICBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydChjbGRfZmlsdGVyLCAmY2hlY2tf ZmlsdGVyKTsKICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBub3RlOiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlw ZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQw ZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4Nzo0OiBlcnJvcjogaW1wbGljaXQg ZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdf YnVmZmVy4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0 ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKGh3LAogICAgXgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4 ODc6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9hZGRf Y2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjY4OTE6Mjg6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBl CiAgICAgIHZzaS0+c2VpZCwgJmNsZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9u IG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKA mSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVf YXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcigKICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVy cm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmGk0MGVfYXFfcmVtb3ZlX2Nsb3Vk X2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJuc10KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTA1 OjIwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAg ICAgICAmY2xkX2ZpbHRlci0+ZWxlbWVudCwgMSk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OiBJbiBmdW5jdGlvbiDigJhpNDBlX2Rldl9jb25zaXN0ZW50X3R1bm5lbF9maWx0ZXJfc2V04oCZ OgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY5Mzk6MTI6IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKA mSB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh04oCZCiAgICAgc2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCksCiAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTQ5OjMzOiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhlcl9hZGRyICop JnBmaWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY5NTE6MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5p bm5lcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk1Mzo5 OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0 ZXItPmVsZW1lbnQuaW5uZXJfdmxhbiA9CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTU4OjIyOiBlcnJvcjog ZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICBydGVfbWVtY3B5KCZw ZmlsdGVyLT5lbGVtZW50LmlwYWRkci52NC5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY5NjA6MTk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgICAgc2l6ZW9mKHBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEpKTsKICAgICAg ICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTY4OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRk ci52Ni5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NzA6MjE6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICBzaXplb2YocGZp bHRlci0+ZWxlbWVudC5pcGFkZHIudjYuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgICBeCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6Njk5MjoyMDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICAgICAgICAgICAgJnBmaWx0ZXItPmVsZW1lbnQuZmxhZ3MpOwogICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2OTk4Ojk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21w bGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5mbGFncyB8PSBydGVfY3B1X3RvX2xlXzE2KAog ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NzAwMTo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQudGVuYW50X2lkID0gcnRlX2NwdV90b19s ZV8zMih0dW5uZWxfZmlsdGVyLT50ZW5hbnRfaWQpOwogICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAwMjo5OiBl cnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXIt PmVsZW1lbnQucXVldWVfbnVtYmVyID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMTg6MjogZXJyb3I6IHBh c3NpbmcgYXJndW1lbnQgMSBvZiDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSBmcm9t IGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgWy1XZXJyb3JdCiAgaTQwZV90dW5uZWxfZmlsdGVy X2NvbnZlcnQoY2xkX2ZpbHRlciwgJmNoZWNrX2ZpbHRlcik7CiAgXgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogbm90 ZTogZXhwZWN0ZWQg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0ICrigJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjcwMzY6Mjg6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgICAgIHZzaS0+c2VpZCwgJmNsZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwNTA6MjA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICAgICZjbGRfZmlsdGVyLT5lbGVtZW50LCAx KTsKICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVs X2ZpbHRlcl9yZXN0b3Jl4oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBzaXplIG9m IOKAmGNsZF9maWx0ZXLigJkgaXNu4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCBjbGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiB1bnVzZWQgdmFyaWFi bGUg4oCYY2xkX2ZpbHRlcuKAmSBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCmNjMTogYWxsIHdh cm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCgoKRmFpbGVkIEJ1aWxkICM0OgpPUzogRnJl ZUJTRDEwLjNfNjQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZwovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxMzo5 OiBlcnJvcjogZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCcgd2lsbCBub3QgYmUgdmlzaWJsZSBvdXRzaWRlIG9mIHRoaXMgZnVuY3Rpb24g Wy1XZXJyb3IsLVd2aXNpYmlsaXR5XQogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6 OTogZXJyb3I6IGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHQnIHdpbGwgbm90IGJlIHZpc2libGUgb3V0c2lkZSBvZiB0aGlzIGZ1bmN0aW9u IFstV2Vycm9yLC1XdmlzaWJpbGl0eV0KICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Ns b3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5 OjE6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2k0MGVfdHVubmVsX2ZpbHRlcl9jb252 ZXJ0JwppNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxMjoxMjogbm90ZTogcHJl dmlvdXMgZGVjbGFyYXRpb24gaXMgaGVyZQpzdGF0aWMgaW50IGk0MGVfdHVubmVsX2ZpbHRlcl9j b252ZXJ0KAogICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAzOjUwOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZp bml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCcKICAgICAgICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0 ZXItPmVsZW1lbnQub3V0ZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVjbGFy YXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAg ICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0 ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA1OjUwOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZp bml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCcKICAgICAgICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0 ZXItPmVsZW1lbnQuaW5uZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVjbGFy YXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAg ICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0 ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA3OjQ2OiBlcnJvcjogaW5jb21wbGV0ZSBkZWZp bml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCcKICAgICAgICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5pbm5lcl92bGFuID0gY2xkX2ZpbHRlci0+ ZWxlbWVudC5pbm5lcl92bGFuOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBv ZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0 cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAg ICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY3MDg6MzQ6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24g b2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAg ICAgIGlmICgocnRlX2xlX3RvX2NwdV8xNihjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzKSAmCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ieXRl b3JkZXIuaDoxMDk6MzA6IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ3J0ZV9sZV90b19jcHVf MTYnCiNkZWZpbmUgcnRlX2xlX3RvX2NwdV8xNih4KSAoeCkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcxNDo0MTogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBl ICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgdHVu bmVsX2ZpbHRlci0+aW5wdXQuZmxhZ3MgPSBjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6 IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE1OjQ1OiBl cnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRf cm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICB0dW5uZWxfZmlsdGVyLT5pbnB1dC50ZW5h bnRfaWQgPSBjbGRfZmlsdGVyLT5lbGVtZW50LnRlbmFudF9pZDsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9y d2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTY6MzU6IGVycm9yOiBpbmNv bXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh0JwogICAgICAgIHR1bm5lbF9maWx0ZXItPnF1ZXVlID0gY2xkX2ZpbHRlci0+ ZWxlbWVudC5xdWV1ZV9udW1iZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+ fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAg ICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBl X2V0aGRldi5jOjY3MTg6MTY6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAn c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgICAgICAg ICAgICAgY2xkX2ZpbHRlci0+Z2VuZXJhbF9maWVsZHMsCiAgICAgICAgICAgICAgICAgICB+fn5+ fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAg ICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBl X2V0aGRldi5jOjY4MDY6NTogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2YgJ3NpemVvZicg dG8gYW4gaW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHQnCiAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgICAgICAgICAgICAgIF4g ICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5 ODo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3Jt X2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91 ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxNjoz MzogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJ1 Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTog bm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91 ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCAqY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MTg6MzM6IGVy cm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgICAgICAgICAoc3RydWN0IGV0 aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMpOwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6IG5vdGU6 IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODIwOjk6IGVycm9yOiBp bmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91 ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHBmaWx0ZXItPmVsZW1lbnQuaW5uZXJfdmxhbiA9CiAg ICAgICAgfn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2Yg J3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXI7CiAgICAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2ODI1OjIyOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9m IHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAg ICAgICAgICAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTogbm90ZTogZm9y d2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCAqY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MzQ6MjI6IGVycm9yOiBpbmNv bXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgcnRlX21lbWNweSgmcGZpbHRlci0+ZWxlbWVu dC5pcGFkZHIudjYuZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5eCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6Njc5ODo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 Njg1ODoyMDogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZwZmlsdGVyLT5lbGVtZW50LmZsYWdzKTsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5OiBub3RlOiBmb3J3 YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg2NDo5OiBlcnJvcjogaW5jb21w bGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCcKICAgICAgICBwZmlsdGVyLT5lbGVtZW50LmZsYWdzIHw9IHJ0ZV9jcHVfdG9f bGVfMTYoCiAgICAgICAgfn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6IG5vdGU6IGZvcndhcmQgZGVjbGFy YXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAg ICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0 ZXI7CiAgICAgICAgICAgICAgIF4KZmF0YWwgZXJyb3I6IHRvbyBtYW55IGVycm9ycyBlbWl0dGVk LCBzdG9wcGluZyBub3cgWy1mZXJyb3ItbGltaXQ9XQoyMCBlcnJvcnMgZ2VuZXJhdGVkLgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvaW50ZXJuYWwvcnRlLmNvbXBpbGUtcHJlLm1r OjEzODogcmVjaXBlIGZvciB0YXJnZXQgJ2k0MGVfZXRoZGV2Lm8nIGZhaWxlZAovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnN1YmRpci5tazo2MTogcmVjaXBlIGZvciB0YXJn ZXQgJ2k0MGUnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnN1 YmRpci5tazo2MTogcmVjaXBlIGZvciB0YXJnZXQgJ25ldCcgZmFpbGVkCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9tay9ydGUuc2RrYnVpbGQubWs6ODE6IHJlY2lwZSBmb3IgdGFyZ2V0 ICdkcml2ZXJzJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5z ZGtyb290Lm1rOjEyOTogcmVjaXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVkCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2RraW5zdGFsbC5tazo4NTogcmVjaXBlIGZvciB0 YXJnZXQgJ3ByZV9pbnN0YWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L21rL3J0ZS5zZGtyb290Lm1rOjEwNDogcmVjaXBlIGZvciB0YXJnZXQgJ2luc3RhbGwnIGZhaWxl ZAoKCkZhaWxlZCBCdWlsZCAjNToKT1M6IEZyZWVCU0QxMC4zXzY0ClRhcmdldDogeDg2XzY0LW5h dGl2ZS1ic2RhcHAtZ2NjCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NDE0Ojk6IGVycm9yOiAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JyBkZWNsYXJlZCBpbnNpZGUgcGFyYW1ldGVyIGxpc3QgWy1X ZXJyb3JdCiAgc3RydWN0IGk0MGVfdHVubmVsX2ZpbHRlciAqdHVubmVsX2ZpbHRlcik7CiAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo0MTQ6OTogZXJyb3I6IGl0cyBzY29wZSBpcyBvbmx5IHRoaXMgZGVmaW5pdGlv biBvciBkZWNsYXJhdGlvbiwgd2hpY2ggaXMgcHJvYmFibHkgbm90IHdoYXQgeW91IHdhbnQgWy1X ZXJyb3JdCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcwMTo5OiBlcnJvcjogJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRf ZmlsdF9lbGVtX2V4dCcgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IFstV2Vycm9yXQog IHN0cnVjdCBpNDBlX3R1bm5lbF9maWx0ZXIgKnR1bm5lbF9maWx0ZXIpCiAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2Njk5OjE6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2k0MGVfdHVubmVsX2ZpbHRl cl9jb252ZXJ0JwogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NDEyOjEyOiBu b3RlOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiAnaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQn IHdhcyBoZXJlCiBzdGF0aWMgaW50IGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uICdpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCc6Ci9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6NjcwMzo1MDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0ZXItPmVs ZW1lbnQub3V0ZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2NzA1OjUwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRv IGluY29tcGxldGUgdHlwZQogIGV0aGVyX2FkZHJfY29weSgoc3RydWN0IGV0aGVyX2FkZHIgKikm Y2xkX2ZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDc6NDY6IGVycm9yOiBkZXJlZmVyZW5j aW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgdHVubmVsX2ZpbHRlci0+aW5wdXQuaW5u ZXJfdmxhbiA9IGNsZF9maWx0ZXItPmVsZW1lbnQuaW5uZXJfdmxhbjsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi94ODZfNjQtbmF0aXZlLWJzZGFwcC1nY2MvaW5j bHVkZS9ydGVfZXRoZXIuaDo1MzowLAogICAgICAgICAgICAgICAgIGZyb20gL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0NToKL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2NzA4OjM0OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlw ZQogIGlmICgocnRlX2xlX3RvX2NwdV8xNihjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzKSAmCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi94ODZfNjQtbmF0aXZlLWJzZGFwcC1nY2MvaW5jbHVkZS9ydGVfYnl0ZW9yZGVyLmg6 MTA5OjMwOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvICdydGVfbGVfdG9fY3B1XzE2Jwog I2RlZmluZSBydGVfbGVfdG9fY3B1XzE2KHgpICh4KQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcxNDo0MTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUKICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5mbGFncyA9IGNsZF9maWx0ZXItPmVs ZW1lbnQuZmxhZ3M7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY3MTU6NDU6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgdHVubmVsX2ZpbHRlci0+aW5wdXQudGVuYW50X2lkID0gY2xkX2ZpbHRlci0+ZWxlbWVu dC50ZW5hbnRfaWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2NzE2OjM1OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxl dGUgdHlwZQogIHR1bm5lbF9maWx0ZXItPnF1ZXVlID0gY2xkX2ZpbHRlci0+ZWxlbWVudC5xdWV1 ZV9udW1iZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTg6 MTY6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAg IGNsZF9maWx0ZXItPmdlbmVyYWxfZmllbGRzLAogICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTk6 MjM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAg IHNpemVvZihjbGRfZmlsdGVyLT5nZW5lcmFsX2ZpZWxkcykpOwogICAgICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24gJ2k0MGVfZGV2X3R1bm5lbF9maWx0ZXJfc2V0JzoKL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODA2OjEyOiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiAnc2l6ZW9mJyB0byBpbmNv bXBsZXRlIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcK ICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwK ICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY4MTY6MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIg dG8gaW5jb21wbGV0ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxl bWVudC5vdXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NjgxODozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUK ICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50LmlubmVyX21hYyk7CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODIwOjk6IGVycm9yOiBkZXJl ZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5p bm5lcl92bGFuID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjU6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5n IHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1l bnQuaXBhZGRyLnY0LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgyNzoxOTog ZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICBzaXpl b2YocGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSkpOwogICAgICAgICAgICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY4MzQ6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0 ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEsCiAg ICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgzNjoyMTogZXJyb3I6IGRlcmVmZXJlbmNpbmcg cG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgIHNpemVvZihwZmlsdGVyLT5lbGVtZW50 LmlwYWRkci52Ni5kYXRhKSk7CiAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODU4OjIwOiBl cnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAg ICAmcGZpbHRlci0+ZWxlbWVudC5mbGFncyk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4 NjQ6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBw ZmlsdGVyLT5lbGVtZW50LmZsYWdzIHw9IHJ0ZV9jcHVfdG9fbGVfMTYoCiAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODY3Ojk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBl CiAgcGZpbHRlci0+ZWxlbWVudC50ZW5hbnRfaWQgPSBydGVfY3B1X3RvX2xlXzMyKHR1bm5lbF9m aWx0ZXItPnRlbmFudF9pZCk7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY4Ojk6IGVycm9yOiBkZXJlZmVy ZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5xdWV1 ZV9udW1iZXIgPQogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg3MzoyOiBlcnJvcjogcGFzc2luZyBhcmd1bWVu dCAxIG9mICdpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCcgZnJvbSBpbmNvbXBhdGlibGUgcG9p bnRlciB0eXBlIFstV2Vycm9yXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0 ZXIsICZjaGVja19maWx0ZXIpOwogIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkICdzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKicgYnV0IGFyZ3VtZW50IGlz IG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqJwog aTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4Nzo0OiBlcnJvcjogaW1wbGlj aXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ2k0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmln X2J1ZmZlcicgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICByZXQg PSBpNDBlX2FxX2FkZF9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIoaHcsCiAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4 Nzo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiAnaTQwZV9hcV9hZGRfY2xv dWRfZmlsdGVyc19iaWdfYnVmZmVyJyBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJuc10KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODkx OjI4OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAg ICB2c2ktPnNlaWQsICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBm dW5jdGlvbiAnaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyJyBbLVdlcnJv cj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfcmVtb3Zl X2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcigKICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVycm9yOiBuZXN0 ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mICdpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2Jp Z19idWZmZXInIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDU6MjA6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICAgICZjbGRfZmls dGVyLT5lbGVtZW50LCAxKTsKICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9u ICdpNDBlX2Rldl9jb25zaXN0ZW50X3R1bm5lbF9maWx0ZXJfc2V0JzoKL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTM5OjEyOiBl cnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiAnc2l6ZW9mJyB0byBpbmNvbXBsZXRlIHR5cGUg J3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICBzaXplb2Yo c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY5NDk6MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0 ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9t YWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk1MTozMzogZXJy b3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgIChzdHJ1Y3Qg ZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50LmlubmVyX21hYyk7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTUzOjk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5pbm5lcl92bGFuID0K ICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQw ZS9pNDBlX2V0aGRldi5jOjY5NTg6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8g aW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0 LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk2MDoxOTogZXJyb3I6IGRlcmVm ZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICBzaXplb2YocGZpbHRlci0+ ZWxlbWVudC5pcGFkZHIudjQuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5Njg6 MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0 ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEsCiAgICAgICAgICAgICAg ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6Njk3MDoyMTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBp bmNvbXBsZXRlIHR5cGUKICAgICAgIHNpemVvZihwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5k YXRhKSk7CiAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTkyOjIwOiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAgICAmcGZpbHRlci0+ ZWxlbWVudC5mbGFncyk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5OTg6OTogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVt ZW50LmZsYWdzIHw9IHJ0ZV9jcHVfdG9fbGVfMTYoCiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDAxOjk6IGVy cm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ ZWxlbWVudC50ZW5hbnRfaWQgPSBydGVfY3B1X3RvX2xlXzMyKHR1bm5lbF9maWx0ZXItPnRlbmFu dF9pZCk7CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDAyOjk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50 ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC5xdWV1ZV9udW1iZXIgPQog ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NzAxODoyOiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mICdpNDBl X3R1bm5lbF9maWx0ZXJfY29udmVydCcgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFst V2Vycm9yXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19m aWx0ZXIpOwogIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkICdzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKicgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUgJ3N0 cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqJwogaTQwZV90dW5uZWxf ZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAzNjoyODogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgdnNpLT5zZWlkLCAmY2xkX2ZpbHRlci0+ZWxl bWVudCwgMSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzA1MDoyMDogZXJy b3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAgJmNs ZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVu Y3Rpb24gJ2k0MGVfdHVubmVsX2ZpbHRlcl9yZXN0b3JlJzoKL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzoxMDQyOTo0NTogZXJyb3I6 IHN0b3JhZ2Ugc2l6ZSBvZiAnY2xkX2ZpbHRlcicgaXNuJ3Qga25vd24KICBzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogdW51 c2VkIHZhcmlhYmxlICdjbGRfZmlsdGVyJyBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCmNjMTog YWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTM4OiByZWNpcGUgZm9y IHRhcmdldCAnaTQwZV9ldGhkZXYubycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZScgZmFpbGVk Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNp cGUgZm9yIHRhcmdldCAnbmV0JyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L21rL3J0ZS5zZGtidWlsZC5tazo4MTogcmVjaXBlIGZvciB0YXJnZXQgJ2RyaXZlcnMnIGZhaWxl ZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTI5OiBy ZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3Rh bGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3Qu bWs6MTA0OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCgoKRmFpbGVkIEJ1aWxk ICM2OgpPUzogRkMyNF82NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVn CgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjQxMzo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCB3aWxsIG5vdCBiZSB2 aXNpYmxlIG91dHNpZGUgb2YgdGhpcyBkZWZpbml0aW9uIG9yIGRlY2xhcmF0aW9uIFstV2Vycm9y XQogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRl ciwKICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAw Ojk6IGVycm9yOiDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTi gJkgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IHdpbGwgbm90IGJlIHZpc2libGUgb3V0 c2lkZSBvZiB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24gWy1XZXJyb3JdCiAgc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAg ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogZXJyb3I6 IGNvbmZsaWN0aW5nIHR5cGVzIGZvciDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmQog aTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjQxMjoxMjogbm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV90dW5uZWxf ZmlsdGVyX2NvbnZlcnTigJkgd2FzIGhlcmUKIHN0YXRpYyBpbnQgaTQwZV90dW5uZWxfZmlsdGVy X2NvbnZlcnQoCiAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IElu IGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZOgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6NTA6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVj dCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogIGV0aGVyX2FkZHJfY29w eSgoc3RydWN0IGV0aGVyX2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzog SW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgwNjox MjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxl dGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkK ICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwK ICAgICAgICAgICAgXn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxNjozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh04oCZCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVu dC5vdXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4 NzM6Mjk6IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVy X2NvbnZlcnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWluY29t cGF0aWJsZS1wb2ludGVyLXR5cGVzXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9m aWx0ZXIsICZjaGVja19maWx0ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRf cm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0 cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5l bF9maWx0ZXJfY29udmVydCgKIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4Nzox MDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfYWRk X2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1k ZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZl cihodywKICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjY4ODc6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9h ZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQog ICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKGh3LAogICAgXn5+ Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjkwMToxMDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKA mGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBs aWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfcmVtb3ZlX2Nsb3Vk X2ZpbHRlcnNfYmlnX2J1ZmZlcigKICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRp b24gb2Yg4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vy cm9yPW5lc3RlZC1leHRlcm5zXQogICAgcmV0ID0gaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVy c19iaWdfYnVmZmVyKAogICAgXn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X2NvbnNp c3RlbnRfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjkzOToxMjogZXJyb3I6IGludmFsaWQg YXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3Qg aTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgXn5+fn5+ Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6Njk0OTozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAg ICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMTg6Mjk6IGVycm9yOiBwYXNz aW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgZnJvbSBp bmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWluY29tcGF0aWJsZS1wb2ludGVyLXR5 cGVzXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19maWx0 ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6 IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRf cm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgK IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVu bmVsX2ZpbHRlcl9yZXN0b3Jl4oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBzaXpl IG9mIOKAmGNsZF9maWx0ZXLigJkgaXNu4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19hZGRf cm1fY2xvdWRfZmlsdF9lbGVtX2V4dCBjbGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiB1 bnVzZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKAmSBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd CmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTM4OiByZWNp cGUgZm9yIHRhcmdldCAnaTQwZV9ldGhkZXYubycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZScg ZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYx OiByZWNpcGUgZm9yIHRhcmdldCAnbmV0JyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL21rL3J0ZS5zZGtidWlsZC5tazo4MTogcmVjaXBlIGZvciB0YXJnZXQgJ2RyaXZlcnMn IGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6 MTI5OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJl X2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNk a3Jvb3QubWs6MTA0OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCgoKRmFpbGVk IEJ1aWxkICM3OgpPUzogRkMyNF82NApUYXJnZXQ6IGk2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjQxMzo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCB3aWxsIG5vdCBiZSB2aXNp YmxlIG91dHNpZGUgb2YgdGhpcyBkZWZpbml0aW9uIG9yIGRlY2xhcmF0aW9uIFstV2Vycm9yXQog IHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwK ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6 IGVycm9yOiDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkg ZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IHdpbGwgbm90IGJlIHZpc2libGUgb3V0c2lk ZSBvZiB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24gWy1XZXJyb3JdCiAgc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICBe fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogZXJyb3I6IGNv bmZsaWN0aW5nIHR5cGVzIGZvciDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmQogaTQw ZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjQxMjoxMjogbm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV90dW5uZWxfZmls dGVyX2NvbnZlcnTigJkgd2FzIGhlcmUKIHN0YXRpYyBpbnQgaTQwZV90dW5uZWxfZmlsdGVyX2Nv bnZlcnQoCiAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1 bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZOgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6NTA6IGVy cm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCBp NDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogIGV0aGVyX2FkZHJfY29weSgo c3RydWN0IGV0aGVyX2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4g ZnVuY3Rpb24g4oCYaTQwZV9kZXZfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgwNjoxMjog ZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUg dHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAg ICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAg ICAgICAgICAgXn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxNjozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRl ciB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh04oCZCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5v dXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4NzM6 Mjk6IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2Nv bnZlcnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWluY29tcGF0 aWJsZS1wb2ludGVyLXR5cGVzXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0 ZXIsICZjaGVja19maWx0ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+ fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVj dCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9m aWx0ZXJfY29udmVydCgKIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4NzoxMDog ZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfYWRkX2Ns b3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNs YXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlciho dywKICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4 ODc6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9hZGRf Y2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAg cmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKGh3LAogICAgXn5+Ci9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6NjkwMToxMDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0 MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNp dC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2Zp bHRlcnNfYmlnX2J1ZmZlcigKICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQw ZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24g b2Yg4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9y PW5lc3RlZC1leHRlcm5zXQogICAgcmV0ID0gaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19i aWdfYnVmZmVyKAogICAgXn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X2NvbnNpc3Rl bnRfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjkzOToxMjogZXJyb3I6IGludmFsaWQgYXBw bGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgXn5+fn5+Ci9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6Njk0OTozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAgICAo c3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMTg6Mjk6IGVycm9yOiBwYXNzaW5n IGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgZnJvbSBpbmNv bXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWluY29tcGF0aWJsZS1wb2ludGVyLXR5cGVz XQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19maWx0ZXIp OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5v dGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVs X2ZpbHRlcl9yZXN0b3Jl4oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBzaXplIG9m IOKAmGNsZF9maWx0ZXLigJkgaXNu4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCBjbGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiB1bnVz ZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKAmSBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCmNj MTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTM4OiByZWNpcGUg Zm9yIHRhcmdldCAnaTQwZV9ldGhkZXYubycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZScgZmFp bGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiBy ZWNpcGUgZm9yIHRhcmdldCAnbmV0JyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL21rL3J0ZS5zZGtidWlsZC5tazo4MTogcmVjaXBlIGZvciB0YXJnZXQgJ2RyaXZlcnMnIGZh aWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTI5 OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2lu c3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jv b3QubWs6MTA0OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCgoKRmFpbGVkIEJ1 aWxkICM4OgpPUzogRkMyNF82NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6NDEzOjk6IGVycm9yOiDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHTigJkgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IHdpbGwgbm90IGJlIHZpc2li bGUgb3V0c2lkZSBvZiB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24gWy1XZXJyb3JdCiAg c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAog ICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTog ZXJyb3I6IOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmSBk ZWNsYXJlZCBpbnNpZGUgcGFyYW1ldGVyIGxpc3Qgd2lsbCBub3QgYmUgdmlzaWJsZSBvdXRzaWRl IG9mIHRoaXMgZGVmaW5pdGlvbiBvciBkZWNsYXJhdGlvbiBbLVdlcnJvcl0KICBzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgIF5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBlcnJvcjogY29u ZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZCiBpNDBl X3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NDEyOjEyOiBub3RlOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiDigJhpNDBlX3R1bm5lbF9maWx0 ZXJfY29udmVydOKAmSB3YXMgaGVyZQogc3RhdGljIGludCBpNDBlX3R1bm5lbF9maWx0ZXJfY29u dmVydCgKICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVu Y3Rpb24g4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJk6Ci9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMzo1MDogZXJy b3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAgZXRoZXJfYWRkcl9jb3B5KChz dHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYywKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBm dW5jdGlvbiDigJhpNDBlX2Rldl90dW5uZWxfZmlsdGVyX3NldOKAmToKL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODA2OjEyOiBl cnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0 eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogICAg IHNpemVvZihzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQpLAogICAg ICAgICAgICBefn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODE2OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHTigJkKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91 dGVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+Ci9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg3Mzoy OTogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgMSBvZiDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29u dmVydOKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgWy1XZXJyb3I9aW5jb21wYXRp YmxlLXBvaW50ZXItdHlwZXNdCiAgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoY2xkX2ZpbHRl ciwgJmNoZWNrX2ZpbHRlcik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+ fgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY2OTk6MTogbm90ZTogZXhwZWN0ZWQg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0ICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICrigJkKIGk0MGVfdHVubmVsX2Zp bHRlcl9jb252ZXJ0KAogXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODg3OjEwOiBl cnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYaTQwZV9hcV9hZGRfY2xv dWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xh cmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKGh3 LAogICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4 Nzo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhpNDBlX2FxX2FkZF9j bG91ZF9maWx0ZXJzX2JpZ19idWZmZXLigJkgWy1XZXJyb3I9bmVzdGVkLWV4dGVybnNdCiAgICBy ZXQgPSBpNDBlX2FxX2FkZF9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIoaHcsCiAgICBefn4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2OTAxOjEwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYaTQw ZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWltcGxpY2l0 LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmls dGVyc19iaWdfYnVmZmVyKAogICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjkwMTo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBv ZiDigJhpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXLigJkgWy1XZXJyb3I9 bmVzdGVkLWV4dGVybnNdCiAgICByZXQgPSBpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2Jp Z19idWZmZXIoCiAgICBefn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfY29uc2lzdGVu dF90dW5uZWxfZmlsdGVyX3NldOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTM5OjEyOiBlcnJvcjogaW52YWxpZCBhcHBs aWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogICAgIHNpemVvZihzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQpLAogICAgICAgICAgICBefn5+fn4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2OTQ5OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlw ZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgIChz dHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAxODoyOTogZXJyb3I6IHBhc3Npbmcg YXJndW1lbnQgMSBvZiDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSBmcm9tIGluY29t cGF0aWJsZSBwb2ludGVyIHR5cGUgWy1XZXJyb3I9aW5jb21wYXRpYmxlLXBvaW50ZXItdHlwZXNd CiAgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoY2xkX2ZpbHRlciwgJmNoZWNrX2ZpbHRlcik7 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogbm90 ZTogZXhwZWN0ZWQg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0ICrigJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV90dW5uZWxf ZmlsdGVyX3Jlc3RvcmXigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiBzdG9yYWdlIHNpemUgb2Yg 4oCYY2xkX2ZpbHRlcuKAmSBpc27igJl0IGtub3duCiAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0IGNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzoxMDQyOTo0NTogZXJyb3I6IHVudXNl ZCB2YXJpYWJsZSDigJhjbGRfZmlsdGVy4oCZIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KY2Mx OiBhbGwgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL21rL2ludGVybmFsL3J0ZS5jb21waWxlLXByZS5tazoxMzg6IHJlY2lwZSBm b3IgdGFyZ2V0ICdpNDBlX2V0aGRldi5vJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6NjE6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpNDBlJyBmYWls ZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6NjE6IHJl Y2lwZSBmb3IgdGFyZ2V0ICduZXQnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vbWsvcnRlLnNka2J1aWxkLm1rOjgxOiByZWNpcGUgZm9yIHRhcmdldCAnZHJpdmVycycgZmFp bGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2Rrcm9vdC5tazoxMjk6 IHJlY2lwZSBmb3IgdGFyZ2V0ICdhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vbWsvcnRlLnNka2luc3RhbGwubWs6ODU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdwcmVfaW5z dGFsbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2Rrcm9v dC5tazoxMDQ6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVp bGQgIzk6Ck9TOiBGQzI0XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hh cmVkCgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBl X2V0aGRldi5jOjQxMzo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCB3aWxsIG5vdCBi ZSB2aXNpYmxlIG91dHNpZGUgb2YgdGhpcyBkZWZpbml0aW9uIG9yIGRlY2xhcmF0aW9uIFstV2Vy cm9yXQogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2Zp bHRlciwKICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 NzAwOjk6IGVycm9yOiDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9l eHTigJkgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IHdpbGwgbm90IGJlIHZpc2libGUg b3V0c2lkZSBvZiB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24gWy1XZXJyb3JdCiAgc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAg ICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogZXJy b3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKA mQogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjQxMjoxMjogbm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV90dW5u ZWxfZmlsdGVyX2NvbnZlcnTigJkgd2FzIGhlcmUKIHN0YXRpYyBpbnQgaTQwZV90dW5uZWxfZmls dGVyX2NvbnZlcnQoCiAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZOgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6 NTA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0 cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogIGV0aGVyX2FkZHJf Y29weSgoc3RydWN0IGV0aGVyX2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu YzogSW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njgw NjoxMjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29t cGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTi gJkKICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 KSwKICAgICAgICAgICAgXn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxNjozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcg cG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91 ZF9maWx0X2VsZW1fZXh04oCZCiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxl bWVudC5vdXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjY4NzM6Mjk6IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmls dGVyX2NvbnZlcnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWlu Y29tcGF0aWJsZS1wb2ludGVyLXR5cGVzXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNs ZF9maWx0ZXIsICZjaGVja19maWx0ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19h ZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKA mHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1 bm5lbF9maWx0ZXJfY29udmVydCgKIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4 NzoxMDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFf YWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlv bi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1 ZmZlcihodywKICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY4ODc6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9h cV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5z XQogICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKGh3LAogICAg Xn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjkwMToxMDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9u IOKAmGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1p bXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfcmVtb3ZlX2Ns b3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcigKICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFy YXRpb24gb2Yg4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFst V2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgcmV0ID0gaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmls dGVyc19iaWdfYnVmZmVyKAogICAgXn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X2Nv bnNpc3RlbnRfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjkzOToxMjogZXJyb3I6IGludmFs aWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgXn5+ fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6Njk0OTozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBs ZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZ CiAgICAoc3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMTg6Mjk6IGVycm9yOiBw YXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgZnJv bSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWluY29tcGF0aWJsZS1wb2ludGVy LXR5cGVzXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19m aWx0ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5 OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9l bGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19h ZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVy dCgKIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVf dHVubmVsX2ZpbHRlcl9yZXN0b3Jl4oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBz aXplIG9mIOKAmGNsZF9maWx0ZXLigJkgaXNu4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19h ZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCBjbGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9y OiB1bnVzZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKAmSBbLVdlcnJvcj11bnVzZWQtdmFyaWFi bGVdCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTM4OiBy ZWNpcGUgZm9yIHRhcmdldCAnaTQwZV9ldGhkZXYubycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnaTQw ZScgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1r OjYxOiByZWNpcGUgZm9yIHRhcmdldCAnbmV0JyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL21rL3J0ZS5zZGtidWlsZC5tazo4MTogcmVjaXBlIGZvciB0YXJnZXQgJ2RyaXZl cnMnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3Qu bWs6MTI5OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAn cHJlX2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRl LnNka3Jvb3QubWs6MTA0OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCgoKRmFp bGVkIEJ1aWxkICMxMDoKT1M6IEZDMjRfNjQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NDEzOjk6IGVycm9yOiBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JyB3aWxsIG5vdCBiZSB2aXNpYmxlIG91dHNpZGUg b2YgdGhpcyBmdW5jdGlvbiBbLVdlcnJvciwtV3Zpc2liaWxpdHldCiAgICAgICAgc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcwMDo5OiBlcnJvcjogZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcgd2lsbCBub3QgYmUgdmlzaWJsZSBvdXRzaWRl IG9mIHRoaXMgZnVuY3Rpb24gWy1XZXJyb3IsLVd2aXNpYmlsaXR5XQogICAgICAgIHN0cnVjdCBp NDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAg ICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY2OTk6MTogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnaTQwZV90 dW5uZWxfZmlsdGVyX2NvbnZlcnQnCmk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KApeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NDEyOjEyOiBub3RlOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBpcyBoZXJlCnN0YXRpYyBpbnQgaTQw ZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDM6NTA6IGVycm9y OiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIGV0aGVyX2FkZHJfY29weSgoc3RydWN0IGV0aGVy X2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90 ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9l bGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDU6NTA6IGVycm9y OiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIGV0aGVyX2FkZHJfY29weSgoc3RydWN0IGV0aGVy X2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90 ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9l bGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDc6NDY6IGVycm9y OiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHR1bm5lbF9maWx0ZXItPmlucHV0LmlubmVyX3Zs YW4gPSBjbGRfZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW47CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3 YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwODozNDogZXJyb3I6IGluY29t cGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHQnCiAgICAgICAgaWYgKChydGVfbGVfdG9fY3B1XzE2KGNsZF9maWx0ZXItPmVs ZW1lbnQuZmxhZ3MpICYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfYnl0ZW9yZGVyLmg6MTA5OjMwOiBub3RlOiBleHBhbmRlZCBmcm9tIG1h Y3JvICdydGVfbGVfdG9fY3B1XzE2JwojZGVmaW5lIHJ0ZV9sZV90b19jcHVfMTYoeCkgKHgpCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBk ZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xk X2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTQ6NDE6IGVycm9yOiBpbmNvbXBsZXRl IGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh0JwogICAgICAgIHR1bm5lbF9maWx0ZXItPmlucHV0LmZsYWdzID0gY2xkX2ZpbHRlci0+ ZWxlbWVudC5mbGFnczsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3Qg aTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVf YXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjcxNTo0NTogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdz dHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgdHVubmVs X2ZpbHRlci0+aW5wdXQudGVuYW50X2lkID0gY2xkX2ZpbHRlci0+ZWxlbWVudC50ZW5hbnRfaWQ7 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19h ZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3Jt X2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 NzE2OjM1OiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICB0dW5uZWxfZmlsdGVyLT5x dWV1ZSA9IGNsZF9maWx0ZXItPmVsZW1lbnQucXVldWVfbnVtYmVyOwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVj bGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcK ICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9m aWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE4OjE2OiBlcnJvcjogaW5jb21wbGV0ZSBk ZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dCcKICAgICAgICAgICAgICAgICAgIGNsZF9maWx0ZXItPmdlbmVyYWxfZmllbGRzLAogICAg ICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVj bGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcK ICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9m aWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE5OjIzOiBlcnJvcjogaW5jb21wbGV0ZSBk ZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dCcKICAgICAgICAgICAgICAgICAgIHNpemVvZihjbGRfZmlsdGVyLT5nZW5lcmFsX2ZpZWxk cykpOwogICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMDo5OiBu b3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3Vk X2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgwNjo1OiBlcnJv cjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiAnc2l6ZW9mJyB0byBhbiBpbmNvbXBsZXRlIHR5cGUg J3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAg ICAgICAgICAgICAgIHNpemVvZihzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHQpLAogICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6IG5vdGU6IGZvcndhcmQgZGVj bGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcK ICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9m aWx0ZXI7CiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODE2OjMzOiBlcnJvcjogaW5jb21wbGV0ZSBk ZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dCcKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0 ZXItPmVsZW1lbnQub3V0ZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIH5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0 aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAg ICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVy OwogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxODozMzogZXJyb3I6IGluY29tcGxldGUgZGVmaW5p dGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQn CiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5l bGVtZW50LmlubmVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBv ZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0 cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlcjsKICAg ICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY4MjA6OTogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBv ZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAg ICAgcGZpbHRlci0+ZWxlbWVudC5pbm5lcl92bGFuID0KICAgICAgICB+fn5+fn5+XgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3 OTg6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjU6 MjI6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgcnRlX21lbWNweSgm cGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdz dHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAg ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjgyNzoxOTogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0 eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0 LmRhdGEpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fl4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2Nzk4Ojk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRk X3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODM0OjIyOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBp NDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAgICAgIHJ0ZV9t ZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlv biBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAg IHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlcjsK ICAgICAgICAgICAgICAgXgpmYXRhbCBlcnJvcjogdG9vIG1hbnkgZXJyb3JzIGVtaXR0ZWQsIHN0 b3BwaW5nIG5vdyBbLWZlcnJvci1saW1pdD1dCjIwIGVycm9ycyBnZW5lcmF0ZWQuCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTM4 OiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZV9ldGhkZXYubycgZmFpbGVkCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAn aTQwZScgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGly Lm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnbmV0JyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtidWlsZC5tazo4MTogcmVjaXBlIGZvciB0YXJnZXQgJ2Ry aXZlcnMnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jv b3QubWs6MTI5OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdl dCAncHJlX2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsv cnRlLnNka3Jvb3QubWs6MTA0OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCgoK RmFpbGVkIEJ1aWxkICMxMToKT1M6IFVCMTYwNF82NApUYXJnZXQ6IGk2ODYtbmF0aXZlLWxpbnV4 YXBwLWdjYwovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjQxNDo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91 ZF9maWx0X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCBbLVdlcnJv cl0KICBzdHJ1Y3QgaTQwZV90dW5uZWxfZmlsdGVyICp0dW5uZWxfZmlsdGVyKTsKICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjQxNDo5OiBlcnJvcjogaXRzIHNjb3BlIGlzIG9ubHkgdGhpcyBkZWZpbml0aW9uIG9y IGRlY2xhcmF0aW9uLCB3aGljaCBpcyBwcm9iYWJseSBub3Qgd2hhdCB5b3Ugd2FudCBbLVdlcnJv cl0KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2NzAxOjk6IGVycm9yOiDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHTigJkgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IFstV2Vycm9yXQog IHN0cnVjdCBpNDBlX3R1bm5lbF9maWx0ZXIgKnR1bm5lbF9maWx0ZXIpCiAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2Njk5OjE6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3Ig4oCYaTQwZV90dW5uZWxfZmls dGVyX2NvbnZlcnTigJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxMjox Mjogbm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2Nv bnZlcnTigJkgd2FzIGhlcmUKIHN0YXRpYyBpbnQgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQo CiAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV90dW5uZWxfZmlsdGVyX2Nv bnZlcnTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjcwMzo1MDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBp bmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1f ZXh04oCZCiAgZXRoZXJfYWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVy LT5lbGVtZW50Lm91dGVyX21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X3R1bm5lbF9maWx0 ZXJfc2V04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQw ZS9pNDBlX2V0aGRldi5jOjY4MDY6MTI6IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKA mHNpemVvZuKAmSB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh04oCZCiAgICAgc2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCksCiAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODE2OjMzOiBlcnJvcjog ZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAq KSZwZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2ODczOjI5OiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmGk0 MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlw ZSBbLVdlcnJvcj1pbmNvbXBhdGlibGUtcG9pbnRlci10eXBlc10KICBpNDBlX3R1bm5lbF9maWx0 ZXJfY29udmVydChjbGRfZmlsdGVyLCAmY2hlY2tfZmlsdGVyKTsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBub3RlOiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlw ZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQw ZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4NzoxMDogZXJyb3I6IGltcGxpY2l0 IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmln X2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJl dCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcihodywKICAgICAgICAgIF4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2ODg3OjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmGk0MGVf YXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJu c10KICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcihodywKICAg IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2OTAxOjEwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g 4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWlt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9yZW1vdmVfY2xv dWRfZmlsdGVyc19iaWdfYnVmZmVyKAogICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJyb3I6IG5l c3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVy c19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgcmV0ID0gaTQwZV9h cV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKAogICAgXgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlv biDigJhpNDBlX2Rldl9jb25zaXN0ZW50X3R1bm5lbF9maWx0ZXJfc2V04oCZOgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5Mzk6 MTI6IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNvbXBs ZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZ CiAgICAgc2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCks CiAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTQ5OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHTigJkKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91 dGVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDE4OjI5 OiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252 ZXJ04oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdlcnJvcj1pbmNvbXBhdGli bGUtcG9pbnRlci10eXBlc10KICBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydChjbGRfZmlsdGVy LCAmY2hlY2tfZmlsdGVyKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5 OToxOiBub3RlOiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHQgKuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZl cnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9yZXN0b3Jl4oCZ OgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mIOKAmGNsZF9maWx0ZXLigJkg aXNu4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCBjbGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiB1bnVzZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKA mSBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0 ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9y dGUuY29tcGlsZS1wcmUubWs6MTM4OiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZV9ldGhkZXYubycg ZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYx OiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZScgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnbmV0JyBmYWls ZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtidWlsZC5tazo4MTog cmVjaXBlIGZvciB0YXJnZXQgJ2RyaXZlcnMnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTI5OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBm YWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1r Ojg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTA0OiByZWNpcGUgZm9yIHRhcmdl dCAnaW5zdGFsbCcgZmFpbGVkCgoKRmFpbGVkIEJ1aWxkICMxMjoKT1M6IFVCMTYwNF82NApUYXJn ZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NDE0Ojk6IGVycm9yOiDigJhzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkgZGVjbGFyZWQgaW5zaWRl IHBhcmFtZXRlciBsaXN0IFstV2Vycm9yXQogIHN0cnVjdCBpNDBlX3R1bm5lbF9maWx0ZXIgKnR1 bm5lbF9maWx0ZXIpOwogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NDE0Ojk6IGVycm9yOiBpdHMgc2NvcGUgaXMg b25seSB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24sIHdoaWNoIGlzIHByb2JhYmx5IG5v dCB3aGF0IHlvdSB3YW50IFstV2Vycm9yXQovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDE6OTogZXJyb3I6IOKAmHN0cnVjdCBp NDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmSBkZWNsYXJlZCBpbnNpZGUgcGFy YW1ldGVyIGxpc3QgWy1XZXJyb3JdCiAgc3RydWN0IGk0MGVfdHVubmVsX2ZpbHRlciAqdHVubmVs X2ZpbHRlcikKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVz IGZvciDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmQogaTQwZV90dW5uZWxfZmlsdGVy X2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NDEyOjEyOiBub3RlOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiDi gJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSB3YXMgaGVyZQogc3RhdGljIGludCBpNDBl X3R1bm5lbF9maWx0ZXJfY29udmVydCgKICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDi gJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAzOjUwOiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBl dGhlcl9hZGRyICopJmNsZF9maWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g 4oCYaTQwZV9kZXZfdHVubmVsX2ZpbHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgwNjoxMjogZXJyb3I6IGlu dmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhz dHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yo c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAg XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jOjY4MTY6MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0 ZSB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQog ICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjKTsKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4NzM6Mjk6IGVycm9yOiBwYXNz aW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgZnJvbSBp bmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yPWluY29tcGF0aWJsZS1wb2ludGVyLXR5 cGVzXQogIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19maWx0 ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4 cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZ IGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRf ZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 ODg3OjEwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYaTQwZV9h cV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0 aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdf YnVmZmVyKGh3LAogICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4ODc6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4g ZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZ IFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRfZmls dGVyc19iaWdfYnVmZmVyKGh3LAogICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6MTA6IGVycm9yOiBpbXBsaWNpdCBk ZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2Jp Z19idWZmZXLigJkgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICBy ZXQgPSBpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIoCiAgICAgICAgICBe Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjkwMTo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhpNDBl X2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXLigJkgWy1XZXJyb3I9bmVzdGVkLWV4 dGVybnNdCiAgICByZXQgPSBpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIo CiAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X2NvbnNpc3RlbnRfdHVubmVsX2Zp bHRlcl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NjkzOToxMjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg 4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3Jt X2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NDk6MzM6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogICAgKHN0cnVjdCBldGhlcl9hZGRy ICopJnBmaWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQw ZS9pNDBlX2V0aGRldi5jOjcwMTg6Mjk6IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCY aTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0 eXBlIFstV2Vycm9yPWluY29tcGF0aWJsZS1wb2ludGVyLXR5cGVzXQogIGk0MGVfdHVubmVsX2Zp bHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19maWx0ZXIpOwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0 eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBp NDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV90 dW5uZWxfZmlsdGVyX3Jlc3RvcmXigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiBzdG9yYWdlIHNp emUgb2Yg4oCYY2xkX2ZpbHRlcuKAmSBpc27igJl0IGtub3duCiAgc3RydWN0IGk0MGVfYXFjX2Fk ZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0IGNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzoxMDQyOTo0NTogZXJyb3I6IHVudXNlZCB2 YXJpYWJsZSDigJhjbGRfZmlsdGVy4oCZIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KY2MxOiBh bGwgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL21rL2ludGVybmFsL3J0ZS5jb21waWxlLXByZS5tazoxMzg6IHJlY2lwZSBmb3Ig dGFyZ2V0ICdpNDBlX2V0aGRldi5vJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL21rL3J0ZS5zdWJkaXIubWs6NjE6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpNDBlJyBmYWlsZWQK L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6NjE6IHJlY2lw ZSBmb3IgdGFyZ2V0ICduZXQnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v bWsvcnRlLnNka2J1aWxkLm1rOjgxOiByZWNpcGUgZm9yIHRhcmdldCAnZHJpdmVycycgZmFpbGVk Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2Rrcm9vdC5tazoxMjk6IHJl Y2lwZSBmb3IgdGFyZ2V0ICdhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vbWsvcnRlLnNka2luc3RhbGwubWs6ODU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdwcmVfaW5zdGFs bCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2Rrcm9vdC5t azoxMDQ6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQg IzEzOgpPUzogVUIxNjA0XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hh cmVkCgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBl X2V0aGRldi5jOjQxNDo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCBbLVdlcnJvcl0K ICBzdHJ1Y3QgaTQwZV90dW5uZWxfZmlsdGVyICp0dW5uZWxfZmlsdGVyKTsKICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjQxNDo5OiBlcnJvcjogaXRzIHNjb3BlIGlzIG9ubHkgdGhpcyBkZWZpbml0aW9uIG9yIGRl Y2xhcmF0aW9uLCB3aGljaCBpcyBwcm9iYWJseSBub3Qgd2hhdCB5b3Ugd2FudCBbLVdlcnJvcl0K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2NzAxOjk6IGVycm9yOiDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHTigJkgZGVjbGFyZWQgaW5zaWRlIHBhcmFtZXRlciBsaXN0IFstV2Vycm9yXQogIHN0 cnVjdCBpNDBlX3R1bm5lbF9maWx0ZXIgKnR1bm5lbF9maWx0ZXIpCiAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 Njk5OjE6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3Ig4oCYaTQwZV90dW5uZWxfZmlsdGVy X2NvbnZlcnTigJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxMjoxMjog bm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZl cnTigJkgd2FzIGhlcmUKIHN0YXRpYyBpbnQgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZl cnTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcwMzo1MDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 4oCZCiAgZXRoZXJfYWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5l bGVtZW50Lm91dGVyX21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfZGV2X3R1bm5lbF9maWx0ZXJf c2V04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY4MDY6MTI6IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNp emVvZuKAmSB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91 ZF9maWx0X2VsZW1fZXh04oCZCiAgICAgc2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCksCiAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODE2OjMzOiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZw ZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODczOjI5OiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVf dHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBb LVdlcnJvcj1pbmNvbXBhdGlibGUtcG9pbnRlci10eXBlc10KICBpNDBlX3R1bm5lbF9maWx0ZXJf Y29udmVydChjbGRfZmlsdGVyLCAmY2hlY2tfZmlsdGVyKTsKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjY5OToxOiBub3RlOiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDi gJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQwZV90 dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg4NzoxMDogZXJyb3I6IGltcGxpY2l0IGRl Y2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1 ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9 IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcihodywKICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODg3OjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmGk0MGVfYXFf YWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJuc10K ICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcihodywKICAgIF4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2OTAxOjEwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCY aTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWltcGxp Y2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9yZW1vdmVfY2xvdWRf ZmlsdGVyc19iaWdfYnVmZmVyKAogICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5MDE6NDogZXJyb3I6IG5lc3Rl ZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9yZW1vdmVfY2xvdWRfZmlsdGVyc19i aWdfYnVmZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgcmV0ID0gaTQwZV9hcV9y ZW1vdmVfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVyKAogICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDi gJhpNDBlX2Rldl9jb25zaXN0ZW50X3R1bm5lbF9maWx0ZXJfc2V04oCZOgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5Mzk6MTI6 IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNvbXBsZXRl IHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAg ICAgc2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCksCiAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2OTQ5OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRv IGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHTigJkKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91dGVy X21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDE4OjI5OiBl cnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0 4oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdlcnJvcj1pbmNvbXBhdGlibGUt cG9pbnRlci10eXBlc10KICBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydChjbGRfZmlsdGVyLCAm Y2hlY2tfZmlsdGVyKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OTox OiBub3RlOiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxl bV9leHQgKuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRk X3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQo CiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9yZXN0b3Jl4oCZOgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mIOKAmGNsZF9maWx0ZXLigJkgaXNu 4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCBj bGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiB1bnVzZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKAmSBb LVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQg YXMgZXJyb3JzCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUu Y29tcGlsZS1wcmUubWs6MTM4OiByZWNpcGUgZm9yIHRhcmdldCAnaTQwZV9ldGhkZXYubycgZmFp bGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiBy ZWNpcGUgZm9yIHRhcmdldCAnaTQwZScgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9tay9ydGUuc3ViZGlyLm1rOjYxOiByZWNpcGUgZm9yIHRhcmdldCAnbmV0JyBmYWlsZWQK L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtidWlsZC5tazo4MTogcmVj aXBlIGZvciB0YXJnZXQgJ2RyaXZlcnMnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTI5OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWls ZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1 OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTA0OiByZWNpcGUgZm9yIHRhcmdldCAn aW5zdGFsbCcgZmFpbGVkCgoKRmFpbGVkIEJ1aWxkICMxNDoKT1M6IFVCMTYwNF82NApUYXJnZXQ6 IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTM6OTogZXJyb3I6IGRlY2xhcmF0 aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnIHdpbGwg bm90IGJlIHZpc2libGUgb3V0c2lkZSBvZiB0aGlzIGZ1bmN0aW9uIFstV2Vycm9yLC1XdmlzaWJp bGl0eV0KICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQg KmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IGVycm9yOiBkZWNsYXJh dGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JyB3aWxs IG5vdCBiZSB2aXNpYmxlIG91dHNpZGUgb2YgdGhpcyBmdW5jdGlvbiBbLVdlcnJvciwtV3Zpc2li aWxpdHldCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBlcnJvcjogY29uZmxp Y3RpbmcgdHlwZXMgZm9yICdpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCcKaTQwZV90dW5uZWxf ZmlsdGVyX2NvbnZlcnQoCl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTI6MTI6IG5vdGU6IHByZXZpb3VzIGRlY2xhcmF0aW9u IGlzIGhlcmUKc3RhdGljIGludCBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjcwMzo1MDogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdz dHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgZXRoZXJf YWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50Lm91dGVy X21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3Qg aTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVf YXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjcwNTo1MDogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdz dHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgZXRoZXJf YWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50LmlubmVy X21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3Qg aTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVf YXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6NjcwNzo0NjogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdz dHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgdHVubmVs X2ZpbHRlci0+aW5wdXQuaW5uZXJfdmxhbiA9IGNsZF9maWx0ZXItPmVsZW1lbnQuaW5uZXJfdmxh bjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRk X3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2NzA4OjM0OiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBp NDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBpZiAoKHJ0ZV9sZV90 b19jcHVfMTYoY2xkX2ZpbHRlci0+ZWxlbWVudC5mbGFncykgJgogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24veDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ieXRlb3JkZXIuaDoxMDk6MzA6 IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ3J0ZV9sZV90b19jcHVfMTYnCiNkZWZpbmUgcnRl X2xlX3RvX2NwdV8xNih4KSAoeCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRk X3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njcx NDo0MTogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgdHVubmVsX2ZpbHRlci0+aW5w dXQuZmxhZ3MgPSBjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzOwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQg ZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNs ZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE1OjQ1OiBlcnJvcjogaW5jb21wbGV0 ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9l bGVtX2V4dCcKICAgICAgICB0dW5uZWxfZmlsdGVyLT5pbnB1dC50ZW5hbnRfaWQgPSBjbGRfZmls dGVyLT5lbGVtZW50LnRlbmFudF9pZDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlv biBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAg IHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwK ICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTY6MzU6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRp b24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0Jwog ICAgICAgIHR1bm5lbF9maWx0ZXItPnF1ZXVlID0gY2xkX2ZpbHRlci0+ZWxlbWVudC5xdWV1ZV9u dW1iZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3 MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTg6 MTY6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgICAgY2xkX2ZpbHRl ci0+Z2VuZXJhbF9maWVsZHMsCiAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3 MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTk6 MjM6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgICAgc2l6ZW9mKGNs ZF9maWx0ZXItPmdlbmVyYWxfZmllbGRzKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+ fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVj dCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODA2OjU6IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mICdzaXplb2Yn IHRvIGFuIGluY29tcGxldGUgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHN0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCksCiAgICAgICAgICAgICAgICAgICAgICAgICBe ICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3 OTg6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MTY6 MzM6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgICAgICAgICAgICAgICAgICAoc3Ry dWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fl4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6 IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODE4OjMzOiBl cnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRf cm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cnVjdCBl dGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQuaW5uZXJfbWFjKTsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09y Zy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5OiBub3Rl OiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgyMDo5OiBlcnJvcjog aW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBwZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW4gPQog ICAgICAgIH5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9m ICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAg ICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NjgyNToyMjogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBv ZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAg ICAgICAgICAgICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52NC5kYXRhLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6IG5vdGU6IGZv cndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9l bGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9l eHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODI3OjE5OiBlcnJvcjogaW5j b21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRf ZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YocGZp bHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJh dGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAg ICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRl cjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MzQ6MjI6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmlu aXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 JwogICAgICAgICAgICAgICAgcnRlX21lbWNweSgmcGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjYu ZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5eCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5OiBu b3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3Vk X2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0 X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCmZhdGFsIGVycm9yOiB0b28g bWFueSBlcnJvcnMgZW1pdHRlZCwgc3RvcHBpbmcgbm93IFstZmVycm9yLWxpbWl0PV0KMjAgZXJy b3JzIGdlbmVyYXRlZC4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL2ludGVybmFs L3J0ZS5jb21waWxlLXByZS5tazoxMzg6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpNDBlX2V0aGRldi5v JyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6 NjE6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpNDBlJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6NjE6IHJlY2lwZSBmb3IgdGFyZ2V0ICduZXQnIGZh aWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka2J1aWxkLm1rOjgx OiByZWNpcGUgZm9yIHRhcmdldCAnZHJpdmVycycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9ydGUuc2Rrcm9vdC5tazoxMjk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdhbGwn IGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka2luc3RhbGwu bWs6ODU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdwcmVfaW5zdGFsbCcgZmFpbGVkCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2Rrcm9vdC5tazoxMDQ6IHJlY2lwZSBmb3IgdGFy Z2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQgIzE1OgpPUzogQ2VudE9TN182NApU YXJnZXQ6IGk2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxNDo5OiBlcnJvcjog4oCYc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZIGRlY2xhcmVkIGluc2lk ZSBwYXJhbWV0ZXIgbGlzdCBbLVdlcnJvcl0KICBzdHJ1Y3QgaTQwZV90dW5uZWxfZmlsdGVyICp0 dW5uZWxfZmlsdGVyKTsKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxNDo5OiBlcnJvcjogaXRzIHNjb3BlIGlz IG9ubHkgdGhpcyBkZWZpbml0aW9uIG9yIGRlY2xhcmF0aW9uLCB3aGljaCBpcyBwcm9iYWJseSBu b3Qgd2hhdCB5b3Ugd2FudCBbLVdlcnJvcl0KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAxOjk6IGVycm9yOiDigJhzdHJ1Y3Qg aTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkgZGVjbGFyZWQgaW5zaWRlIHBh cmFtZXRlciBsaXN0IFstV2Vycm9yXQogIHN0cnVjdCBpNDBlX3R1bm5lbF9maWx0ZXIgKnR1bm5l bF9maWx0ZXIpCiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Njk5OjE6IGVycm9yOiBjb25mbGljdGluZyB0eXBl cyBmb3Ig4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkKIGk0MGVfdHVubmVsX2ZpbHRl cl9jb252ZXJ0KAogXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjQxMjoxMjogbm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg 4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJkgd2FzIGhlcmUKIHN0YXRpYyBpbnQgaTQw ZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoCiAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g 4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMzo1MDogZXJyb3I6IGRl cmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBldGhlcl9hZGRyX2NvcHko KHN0cnVjdCBldGhlcl9hZGRyICopJmNsZF9maWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA1 OjUwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIGV0 aGVyX2FkZHJfY29weSgoc3RydWN0IGV0aGVyX2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5p bm5lcl9tYWMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBl X2V0aGRldi5jOjY3MDc6NDY6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21w bGV0ZSB0eXBlCiAgdHVubmVsX2ZpbHRlci0+aW5wdXQuaW5uZXJfdmxhbiA9IGNsZF9maWx0ZXIt PmVsZW1lbnQuaW5uZXJfdmxhbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfZXRoZXIuaDo1Mzow LAogICAgICAgICAgICAgICAgIGZyb20gL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0NToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA4OjM0OiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIGlmICgocnRlX2xlX3RvX2Nw dV8xNihjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzKSAmCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9pNjg2LW5hdGl2ZS1s aW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfYnl0ZW9yZGVyLmg6MTA5OjMwOiBub3RlOiBpbiBkZWZp bml0aW9uIG9mIG1hY3JvIOKAmHJ0ZV9sZV90b19jcHVfMTbigJkKICNkZWZpbmUgcnRlX2xlX3Rv X2NwdV8xNih4KSAoeCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTQ6 NDE6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgdHVu bmVsX2ZpbHRlci0+aW5wdXQuZmxhZ3MgPSBjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE1OjQ1OiBlcnJv cjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0 ZXItPmlucHV0LnRlbmFudF9pZCA9IGNsZF9maWx0ZXItPmVsZW1lbnQudGVuYW50X2lkOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxNjozNTog ZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICB0dW5uZWxf ZmlsdGVyLT5xdWV1ZSA9IGNsZF9maWx0ZXItPmVsZW1lbnQucXVldWVfbnVtYmVyOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE4OjE2OiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICBjbGRfZmlsdGVyLT5nZW5l cmFsX2ZpZWxkcywKICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE5OjIzOiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICBzaXplb2YoY2xkX2ZpbHRl ci0+Z2VuZXJhbF9maWVsZHMpKTsKICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1 bmN0aW9uIOKAmGk0MGVfZGV2X3R1bm5lbF9maWx0ZXJfc2V04oCZOgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MDY6MTI6IGVy cm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNvbXBsZXRlIHR5 cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAgICAg c2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCksCiAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2ODE2OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQu b3V0ZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MTg6 MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAo c3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMpOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgyMDo5OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQuaW5uZXJf dmxhbiA9CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODI1OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2lu dGVyIHRvIGluY29tcGxldGUgdHlwZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50Lmlw YWRkci52NC5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4Mjc6MTk6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgc2l6ZW9mKHBm aWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEpKTsKICAgICAgICAgICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODM0OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlw ZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhLAogICAgICAg ICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MzY6MjE6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50 ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFk ZHIudjYuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg1ODoyMDogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAgICAgJnBm aWx0ZXItPmVsZW1lbnQuZmxhZ3MpOwogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY0Ojk6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRl ci0+ZWxlbWVudC5mbGFncyB8PSBydGVfY3B1X3RvX2xlXzE2KAogICAgICAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg2 Nzo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBm aWx0ZXItPmVsZW1lbnQudGVuYW50X2lkID0gcnRlX2NwdV90b19sZV8zMih0dW5uZWxfZmlsdGVy LT50ZW5hbnRfaWQpOwogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg2ODo5OiBlcnJvcjogZGVyZWZlcmVuY2lu ZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQucXVldWVfbnVt YmVyID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4NzM6MjogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgMSBv ZiDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2lu dGVyIHR5cGUgWy1XZXJyb3JdCiAgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoY2xkX2ZpbHRl ciwgJmNoZWNrX2ZpbHRlcik7CiAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogbm90ZTogZXhwZWN0ZWQg4oCYc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICrigJkgYnV0IGFyZ3VtZW50 IGlzIG9mIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICrigJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4ODc6NDogZXJyb3I6 IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfYWRkX2Nsb3VkX2Zp bHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlv bl0KICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcihodywKICAg IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2ODg3OjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmGk0 MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0 ZXJuc10KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODkxOjI4OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29t cGxldGUgdHlwZQogICAgICB2c2ktPnNlaWQsICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsKICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVycm9yOiBpbXBsaWNpdCBk ZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2Jp Z19idWZmZXLigJkgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICBy ZXQgPSBpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIoCiAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NjkwMTo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhpNDBlX2FxX3Jl bW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXLigJkgWy1XZXJyb3I9bmVzdGVkLWV4dGVybnNd Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjkwNToyMDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICAgICAgICAgJmNsZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfY29uc2lzdGVudF90dW5uZWxfZmls dGVyX3NldOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2OTM5OjEyOiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiDi gJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogICAgIHNpemVvZihzdHJ1Y3QgaTQwZV9hcWNfYWRkX3Jt X2Nsb3VkX2ZpbHRfZWxlbV9leHQpLAogICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk0OTozMzogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgIChzdHJ1Y3QgZXRo ZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTUxOjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2lu dGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXIt PmVsZW1lbnQuaW5uZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY5NTM6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICBwZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW4gPQogICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk1ODoy MjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgcnRl X21lbWNweSgmcGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSwKICAgICAgICAgICAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2OTYwOjE5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgIHNpemVvZihwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52NC5kYXRh KSk7CiAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk2ODoyMjogZXJyb3I6IGRlcmVmZXJlbmNp bmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgcnRlX21lbWNweSgmcGZpbHRlci0+ZWxl bWVudC5pcGFkZHIudjYuZGF0YSwKICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTcwOjIx OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAg c2l6ZW9mKHBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEpKTsKICAgICAgICAgICAgICAg ICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY5OTI6MjA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgICAgICAgICAgICZwZmlsdGVyLT5lbGVtZW50LmZsYWdzKTsKICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk5ODo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQuZmxhZ3MgfD0gcnRlX2NwdV90 b19sZV8xNigKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMDE6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LnRlbmFudF9pZCA9IHJ0 ZV9jcHVfdG9fbGVfMzIodHVubmVsX2ZpbHRlci0+dGVuYW50X2lkKTsKICAgICAgICAgXgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjcwMDI6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUK ICBwZmlsdGVyLT5lbGVtZW50LnF1ZXVlX251bWJlciA9CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDE4OjI6 IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZl cnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yXQogIGk0MGVfdHVu bmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19maWx0ZXIpOwogIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29u dmVydCgKIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo3MDM2OjI4OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgICB2c2ktPnNlaWQsICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDUwOjIwOiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAmY2xkX2ZpbHRlci0+ ZWxlbWVudCwgMSk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDigJhp NDBlX3R1bm5lbF9maWx0ZXJfcmVzdG9yZeKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzoxMDQyOTo0NTogZXJyb3I6IHN0b3Jh Z2Ugc2l6ZSBvZiDigJhjbGRfZmlsdGVy4oCZIGlzbuKAmXQga25vd24KICBzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogdW51 c2VkIHZhcmlhYmxlIOKAmGNsZF9maWx0ZXLigJkgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQpj YzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwoKCkZhaWxlZCBCdWlsZCAj MTY6Ck9TOiBDZW50T1M3XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjQxMzo5OiBlcnJvcjogZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCcgd2lsbCBub3QgYmUgdmlzaWJsZSBvdXRzaWRlIG9mIHRoaXMg ZnVuY3Rpb24gWy1XZXJyb3IsLVd2aXNpYmlsaXR5XQogICAgICAgIHN0cnVjdCBpNDBlX2FxY19h ZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY3MDA6OTogZXJyb3I6IGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3Jt X2Nsb3VkX2ZpbHRfZWxlbV9leHQnIHdpbGwgbm90IGJlIHZpc2libGUgb3V0c2lkZSBvZiB0aGlz IGZ1bmN0aW9uIFstV2Vycm9yLC1XdmlzaWJpbGl0eV0KICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2Njk5OjE6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2k0MGVfdHVubmVsX2Zp bHRlcl9jb252ZXJ0JwppNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjQxMjoxMjog bm90ZTogcHJldmlvdXMgZGVjbGFyYXRpb24gaXMgaGVyZQpzdGF0aWMgaW50IGk0MGVfdHVubmVs X2ZpbHRlcl9jb252ZXJ0KAogICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAzOjUwOiBlcnJvcjogaW5jb21w bGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCcKICAgICAgICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICop JmNsZF9maWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndh cmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQg KmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA1OjUwOiBlcnJvcjogaW5jb21w bGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCcKICAgICAgICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICop JmNsZF9maWx0ZXItPmVsZW1lbnQuaW5uZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndh cmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQg KmNsZF9maWx0ZXIsCiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA3OjQ2OiBlcnJvcjogaW5jb21w bGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCcKICAgICAgICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5pbm5lcl92bGFuID0gY2xk X2ZpbHRlci0+ZWxlbWVudC5pbm5lcl92bGFuOwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB+fn5+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBkZWNs YXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0Jwog ICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2Zp bHRlciwKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDg6MzQ6IGVycm9yOiBpbmNvbXBsZXRlIGRl ZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1f ZXh0JwogICAgICAgIGlmICgocnRlX2xlX3RvX2NwdV8xNihjbGRfZmlsdGVyLT5lbGVtZW50LmZs YWdzKSAmCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX2J5dGVvcmRlci5oOjEwOTozMDogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAncnRl X2xlX3RvX2NwdV8xNicKI2RlZmluZSBydGVfbGVfdG9fY3B1XzE2KHgpICh4KQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAwOjk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRp b24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAg ICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXIs CiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE0OjQxOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0 aW9uIG9mIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcK ICAgICAgICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5mbGFncyA9IGNsZF9maWx0ZXItPmVsZW1lbnQu ZmxhZ3M7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+Xgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY3MDA6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFj X2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRf cm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlciwKICAgICAgICAgICAgICAgXgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjY3MTU6NDU6IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0 MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHR1bm5lbF9maWx0ZXIt PmlucHV0LnRlbmFudF9pZCA9IGNsZF9maWx0ZXItPmVsZW1lbnQudGVuYW50X2lkOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMDo5 OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Ns b3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxNjozNTog ZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRk X3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgdHVubmVsX2ZpbHRlci0+cXVldWUgPSBj bGRfZmlsdGVyLT5lbGVtZW50LnF1ZXVlX251bWJlcjsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9u IG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAg c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAog ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxODoxNjogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlv biBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAg ICAgICAgICAgICAgICAgICBjbGRfZmlsdGVyLT5nZW5lcmFsX2ZpZWxkcywKICAgICAgICAgICAg ICAgICAgIH5+fn5+fn5+fn5eCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwMDo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9u IG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAg c3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyLAog ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgwNjo1OiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBv ZiAnc2l6ZW9mJyB0byBhbiBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzdHJ1 Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQpLAogICAgICAgICAgICAgICAg ICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2Nzk4Ojk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgIF4K L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2ODE2OjMzOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVj dCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAgICAgICAg ICAgICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQub3V0ZXJfbWFjKTsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5eCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmM6Njc5ODo5OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NjgxODozMzogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgICAgICAgICAgICAgICAg IChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50LmlubmVyX21hYyk7CiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+XgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3 OTg6OTogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCAqY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjA6 OTogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgcGZpbHRlci0+ZWxlbWVudC5pbm5l cl92bGFuID0KICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24v ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTogbm90ZTogZm9yd2FyZCBkZWNs YXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0Jwog ICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAqY2xkX2Zp bHRlcjsKICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjU6MjI6IGVycm9yOiBpbmNvbXBsZXRlIGRl ZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1f ZXh0JwogICAgICAgICAgICAgICAgcnRlX21lbWNweSgmcGZpbHRlci0+ZWxlbWVudC5pcGFkZHIu djQuZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5eCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njc5ODo5 OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Ns b3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9m aWx0X2VsZW1fZXh0ICpjbGRfZmlsdGVyOwogICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgzNDoyMjog ZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgaTQwZV9hcWNfYWRk X3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQnCiAgICAgICAgICAgICAgICBydGVfbWVtY3B5KCZwZmls dGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg fn5+fn5+fl4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2Nzk4Ojk6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVj dCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQw ZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODU4OjIwOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUg J3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBmaWx0ZXItPmVsZW1lbnQuZmxhZ3MpOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fl4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2Nzk4Ojk6 IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xv dWRfZmlsdF9lbGVtX2V4dCcKICAgICAgICBzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2Zp bHRfZWxlbV9leHQgKmNsZF9maWx0ZXI7CiAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY0Ojk6IGVy cm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IGk0MGVfYXFjX2FkZF9y bV9jbG91ZF9maWx0X2VsZW1fZXh0JwogICAgICAgIHBmaWx0ZXItPmVsZW1lbnQuZmxhZ3MgfD0g cnRlX2NwdV90b19sZV8xNigKICAgICAgICB+fn5+fn5+XgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3OTg6OTogbm90ZTogZm9y d2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2Vs ZW1fZXh0JwogICAgICAgIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4 dCAqY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAgXgpmYXRhbCBlcnJvcjogdG9vIG1hbnkgZXJy b3JzIGVtaXR0ZWQsIHN0b3BwaW5nIG5vdyBbLWZlcnJvci1saW1pdD1dCjIwIGVycm9ycyBnZW5l cmF0ZWQuCgoKRmFpbGVkIEJ1aWxkICMxNzoKT1M6IENlbnRPUzdfNjQKVGFyZ2V0OiB4ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQKCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NDE0Ojk6IGVycm9yOiDigJhzdHJ1Y3Qg aTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHTigJkgZGVjbGFyZWQgaW5zaWRlIHBh cmFtZXRlciBsaXN0IFstV2Vycm9yXQogIHN0cnVjdCBpNDBlX3R1bm5lbF9maWx0ZXIgKnR1bm5l bF9maWx0ZXIpOwogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NDE0Ojk6IGVycm9yOiBpdHMgc2NvcGUgaXMgb25s eSB0aGlzIGRlZmluaXRpb24gb3IgZGVjbGFyYXRpb24sIHdoaWNoIGlzIHByb2JhYmx5IG5vdCB3 aGF0IHlvdSB3YW50IFstV2Vycm9yXQovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDE6OTogZXJyb3I6IOKAmHN0cnVjdCBpNDBl X2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dOKAmSBkZWNsYXJlZCBpbnNpZGUgcGFyYW1l dGVyIGxpc3QgWy1XZXJyb3JdCiAgc3RydWN0IGk0MGVfdHVubmVsX2ZpbHRlciAqdHVubmVsX2Zp bHRlcikKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZv ciDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmQogaTQwZV90dW5uZWxfZmlsdGVyX2Nv bnZlcnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NDEyOjEyOiBub3RlOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiDigJhp NDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSB3YXMgaGVyZQogc3RhdGljIGludCBpNDBlX3R1 bm5lbF9maWx0ZXJfY29udmVydCgKICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDigJhp NDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzAzOjUwOiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIGV0aGVyX2FkZHJfY29weSgoc3Ry dWN0IGV0aGVyX2FkZHIgKikmY2xkX2ZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MDU6NTA6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgZXRoZXJf YWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5lbGVtZW50LmlubmVy X21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjcwNzo0NjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5pbm5lcl92bGFuID0gY2xkX2ZpbHRlci0+ZWxl bWVudC5pbm5lcl92bGFuOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2V0aGVyLmg6NTM6MCwK ICAgICAgICAgICAgICAgICBmcm9tIC9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NDU6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcwODozNDogZXJyb3I6IGRlcmVm ZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBpZiAoKHJ0ZV9sZV90b19jcHVf MTYoY2xkX2ZpbHRlci0+ZWxlbWVudC5mbGFncykgJgogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24veDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfYnl0ZW9yZGVyLmg6MTA5OjMwOiBub3RlOiBpbiBkZWZp bml0aW9uIG9mIG1hY3JvIOKAmHJ0ZV9sZV90b19jcHVfMTbigJkKICNkZWZpbmUgcnRlX2xlX3Rv X2NwdV8xNih4KSAoeCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY3MTQ6 NDE6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgdHVu bmVsX2ZpbHRlci0+aW5wdXQuZmxhZ3MgPSBjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3Jn L2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE1OjQ1OiBlcnJv cjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0 ZXItPmlucHV0LnRlbmFudF9pZCA9IGNsZF9maWx0ZXItPmVsZW1lbnQudGVuYW50X2lkOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxNjozNTog ZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICB0dW5uZWxf ZmlsdGVyLT5xdWV1ZSA9IGNsZF9maWx0ZXItPmVsZW1lbnQucXVldWVfbnVtYmVyOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE4OjE2OiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICBjbGRfZmlsdGVyLT5nZW5l cmFsX2ZpZWxkcywKICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzE5OjIzOiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICBzaXplb2YoY2xkX2ZpbHRl ci0+Z2VuZXJhbF9maWVsZHMpKTsKICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6IEluIGZ1 bmN0aW9uIOKAmGk0MGVfZGV2X3R1bm5lbF9maWx0ZXJfc2V04oCZOgovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MDY6MTI6IGVy cm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNvbXBsZXRlIHR5 cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAgICAg c2l6ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCksCiAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2ODE2OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQu b3V0ZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MTg6 MzM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAo c3RydWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMpOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgyMDo5OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQuaW5uZXJf dmxhbiA9CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODI1OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2lu dGVyIHRvIGluY29tcGxldGUgdHlwZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50Lmlw YWRkci52NC5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4Mjc6MTk6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgc2l6ZW9mKHBm aWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEpKTsKICAgICAgICAgICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODM0OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlw ZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhLAogICAgICAg ICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MzY6MjE6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50 ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFk ZHIudjYuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg1ODoyMDogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAgICAgJnBm aWx0ZXItPmVsZW1lbnQuZmxhZ3MpOwogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY0Ojk6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRl ci0+ZWxlbWVudC5mbGFncyB8PSBydGVfY3B1X3RvX2xlXzE2KAogICAgICAgICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg2 Nzo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBm aWx0ZXItPmVsZW1lbnQudGVuYW50X2lkID0gcnRlX2NwdV90b19sZV8zMih0dW5uZWxfZmlsdGVy LT50ZW5hbnRfaWQpOwogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg2ODo5OiBlcnJvcjogZGVyZWZlcmVuY2lu ZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQucXVldWVfbnVt YmVyID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4NzM6MjogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgMSBv ZiDigJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2lu dGVyIHR5cGUgWy1XZXJyb3JdCiAgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoY2xkX2ZpbHRl ciwgJmNoZWNrX2ZpbHRlcik7CiAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogbm90ZTogZXhwZWN0ZWQg4oCYc3Ry dWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICrigJkgYnV0IGFyZ3VtZW50 IGlzIG9mIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 ICrigJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4ODc6NDogZXJyb3I6 IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVfYXFfYWRkX2Nsb3VkX2Zp bHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlv bl0KICAgIHJldCA9IGk0MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcihodywKICAg IF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9l dGhkZXYuYzo2ODg3OjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmGk0 MGVfYXFfYWRkX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0 ZXJuc10KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODkxOjI4OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29t cGxldGUgdHlwZQogICAgICB2c2ktPnNlaWQsICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsKICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVycm9yOiBpbXBsaWNpdCBk ZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2Jp Z19idWZmZXLigJkgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICBy ZXQgPSBpNDBlX2FxX3JlbW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXIoCiAgICBeCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6 NjkwMTo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhpNDBlX2FxX3Jl bW92ZV9jbG91ZF9maWx0ZXJzX2JpZ19idWZmZXLigJkgWy1XZXJyb3I9bmVzdGVkLWV4dGVybnNd Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6NjkwNToyMDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICAgICAgICAgJmNsZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfY29uc2lzdGVudF90dW5uZWxfZmls dGVyX3NldOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2OTM5OjEyOiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiDi gJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1f Y2xvdWRfZmlsdF9lbGVtX2V4dOKAmQogICAgIHNpemVvZihzdHJ1Y3QgaTQwZV9hcWNfYWRkX3Jt X2Nsb3VkX2ZpbHRfZWxlbV9leHQpLAogICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk0OTozMzogZXJyb3I6 IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgIChzdHJ1Y3QgZXRo ZXJfYWRkciAqKSZwZmlsdGVyLT5lbGVtZW50Lm91dGVyX21hYyk7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTUxOjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2lu dGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXIt PmVsZW1lbnQuaW5uZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY5NTM6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICBwZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW4gPQogICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk1ODoy MjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgcnRl X21lbWNweSgmcGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSwKICAgICAgICAgICAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo2OTYwOjE5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgIHNpemVvZihwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52NC5kYXRh KSk7CiAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk2ODoyMjogZXJyb3I6IGRlcmVmZXJlbmNp bmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgcnRlX21lbWNweSgmcGZpbHRlci0+ZWxl bWVudC5pcGFkZHIudjYuZGF0YSwKICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTcwOjIx OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAg c2l6ZW9mKHBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY2LmRhdGEpKTsKICAgICAgICAgICAgICAg ICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY5OTI6MjA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgICAgICAgICAgICZwZmlsdGVyLT5lbGVtZW50LmZsYWdzKTsKICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk5ODo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQuZmxhZ3MgfD0gcnRlX2NwdV90 b19sZV8xNigKICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMDE6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LnRlbmFudF9pZCA9IHJ0 ZV9jcHVfdG9fbGVfMzIodHVubmVsX2ZpbHRlci0+dGVuYW50X2lkKTsKICAgICAgICAgXgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjcwMDI6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUK ICBwZmlsdGVyLT5lbGVtZW50LnF1ZXVlX251bWJlciA9CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDE4OjI6 IGVycm9yOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZl cnTigJkgZnJvbSBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlIFstV2Vycm9yXQogIGk0MGVfdHVu bmVsX2ZpbHRlcl9jb252ZXJ0KGNsZF9maWx0ZXIsICZjaGVja19maWx0ZXIpOwogIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 Njk5OjE6IG5vdGU6IGV4cGVjdGVkIOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmls dF9lbGVtX2V4dCAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmHN0cnVjdCBpNDBlX2Fx Y19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCAq4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29u dmVydCgKIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYzo3MDM2OjI4OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgICB2c2ktPnNlaWQsICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo3MDUwOjIwOiBlcnJvcjogZGVyZWZl cmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAmY2xkX2ZpbHRlci0+ ZWxlbWVudCwgMSk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDigJhp NDBlX3R1bm5lbF9maWx0ZXJfcmVzdG9yZeKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzoxMDQyOTo0NTogZXJyb3I6IHN0b3Jh Z2Ugc2l6ZSBvZiDigJhjbGRfZmlsdGVy4oCZIGlzbuKAmXQga25vd24KICBzdHJ1Y3QgaTQwZV9h cWNfYWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgY2xkX2ZpbHRlcjsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjEwNDI5OjQ1OiBlcnJvcjogdW51 c2VkIHZhcmlhYmxlIOKAmGNsZF9maWx0ZXLigJkgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQpj YzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwoKCkZhaWxlZCBCdWlsZCAj MTg6Ck9TOiBDZW50T1M3XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo0MTQ6OTogZXJyb3I6IOKAmHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVt X2V4dOKAmSBkZWNsYXJlZCBpbnNpZGUgcGFyYW1ldGVyIGxpc3QgWy1XZXJyb3JdCiAgc3RydWN0 IGk0MGVfdHVubmVsX2ZpbHRlciAqdHVubmVsX2ZpbHRlcik7CiAgICAgICAgIF4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTQ6 OTogZXJyb3I6IGl0cyBzY29wZSBpcyBvbmx5IHRoaXMgZGVmaW5pdGlvbiBvciBkZWNsYXJhdGlv biwgd2hpY2ggaXMgcHJvYmFibHkgbm90IHdoYXQgeW91IHdhbnQgWy1XZXJyb3JdCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njcw MTo5OiBlcnJvcjog4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0 4oCZIGRlY2xhcmVkIGluc2lkZSBwYXJhbWV0ZXIgbGlzdCBbLVdlcnJvcl0KICBzdHJ1Y3QgaTQw ZV90dW5uZWxfZmlsdGVyICp0dW5uZWxfZmlsdGVyKQogICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5OToxOiBl cnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0 4oCZCiBpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydCgKIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0MTI6MTI6IG5vdGU6IHBy ZXZpb3VzIGRlY2xhcmF0aW9uIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZIHdh cyBoZXJlCiBzdGF0aWMgaW50IGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ04oCZOgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY3MDM6NTA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgZXRoZXJfYWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZjbGRfZmlsdGVyLT5l bGVtZW50Lm91dGVyX21hYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9p NDBlL2k0MGVfZXRoZGV2LmM6NjcwNTo1MDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0 byBpbmNvbXBsZXRlIHR5cGUKICBldGhlcl9hZGRyX2NvcHkoKHN0cnVjdCBldGhlcl9hZGRyICop JmNsZF9maWx0ZXItPmVsZW1lbnQuaW5uZXJfbWFjLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2NzA3OjQ2OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0ZXItPmlucHV0Lmlu bmVyX3ZsYW4gPSBjbGRfZmlsdGVyLT5lbGVtZW50LmlubmVyX3ZsYW47CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24veDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv aW5jbHVkZS9ydGVfZXRoZXIuaDo1MzowLAogICAgICAgICAgICAgICAgIGZyb20gL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo0NToK L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzo2NzA4OjM0OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUg dHlwZQogIGlmICgocnRlX2xlX3RvX2NwdV8xNihjbGRfZmlsdGVyLT5lbGVtZW50LmZsYWdzKSAm CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9ieXRlb3Jk ZXIuaDoxMDk6MzA6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYcnRlX2xlX3RvX2Nw dV8xNuKAmQogI2RlZmluZSBydGVfbGVfdG9fY3B1XzE2KHgpICh4KQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjcxNDo0MTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRl ciB0byBpbmNvbXBsZXRlIHR5cGUKICB0dW5uZWxfZmlsdGVyLT5pbnB1dC5mbGFncyA9IGNsZF9m aWx0ZXItPmVsZW1lbnQuZmxhZ3M7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9p NDBlX2V0aGRldi5jOjY3MTU6NDU6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgdHVubmVsX2ZpbHRlci0+aW5wdXQudGVuYW50X2lkID0gY2xkX2ZpbHRl ci0+ZWxlbWVudC50ZW5hbnRfaWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9ldGhkZXYuYzo2NzE2OjM1OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRv IGluY29tcGxldGUgdHlwZQogIHR1bm5lbF9maWx0ZXItPnF1ZXVlID0gY2xkX2ZpbHRlci0+ZWxl bWVudC5xdWV1ZV9udW1iZXI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY3MTg6MTY6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgICAgIGNsZF9maWx0ZXItPmdlbmVyYWxfZmllbGRzLAogICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjY3MTk6MjM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgICAgIHNpemVvZihjbGRfZmlsdGVyLT5nZW5lcmFsX2ZpZWxkcykpOwogICAgICAgICAg ICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzogSW4gZnVuY3Rpb24g4oCYaTQwZV9kZXZfdHVubmVsX2ZpbHRl cl9zZXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBl L2k0MGVfZXRoZGV2LmM6NjgwNjoxMjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCY c2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Ns b3VkX2ZpbHRfZWxlbV9leHTigJkKICAgICBzaXplb2Yoc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9j bG91ZF9maWx0X2VsZW1fZXh0KSwKICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MTY6MzM6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAoc3RydWN0IGV0aGVy X2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5vdXRlcl9tYWMpOwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25l dC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgxODozMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRl ciB0byBpbmNvbXBsZXRlIHR5cGUKICAgIChzdHJ1Y3QgZXRoZXJfYWRkciAqKSZwZmlsdGVyLT5l bGVtZW50LmlubmVyX21hYyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYu Yzo2ODIwOjk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBl CiAgcGZpbHRlci0+ZWxlbWVudC5pbm5lcl92bGFuID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MjU6MjI6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9t ZW1jcHkoJnBmaWx0ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEsCiAgICAgICAgICAgICAgICAg ICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6NjgyNzoxOTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUKICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFkZHIudjQuZGF0YSkp OwogICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4MzQ6MjI6IGVycm9yOiBkZXJlZmVyZW5jaW5n IHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIHJ0ZV9tZW1jcHkoJnBmaWx0ZXItPmVsZW1l bnQuaXBhZGRyLnY2LmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjgzNjoyMTog ZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgIHNp emVvZihwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhKSk7CiAgICAgICAgICAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2ODU4OjIwOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29t cGxldGUgdHlwZQogICAgICAgICAgICAmcGZpbHRlci0+ZWxlbWVudC5mbGFncyk7CiAgICAgICAg ICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY4NjQ6OTogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0 byBpbmNvbXBsZXRlIHR5cGUKICBwZmlsdGVyLT5lbGVtZW50LmZsYWdzIHw9IHJ0ZV9jcHVfdG9f bGVfMTYoCiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2ODY3Ojk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50 ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ZWxlbWVudC50ZW5hbnRfaWQgPSBydGVf Y3B1X3RvX2xlXzMyKHR1bm5lbF9maWx0ZXItPnRlbmFudF9pZCk7CiAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 ODY4Ojk6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAg cGZpbHRlci0+ZWxlbWVudC5xdWV1ZV9udW1iZXIgPQogICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njg3MzoyOiBl cnJvcjogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0 4oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdlcnJvcl0KICBpNDBlX3R1bm5l bF9maWx0ZXJfY29udmVydChjbGRfZmlsdGVyLCAmY2hlY2tfZmlsdGVyKTsKICBeCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NjY5 OToxOiBub3RlOiBleHBlY3RlZCDigJhzdHJ1Y3QgaTQwZV9hcWNfYWRkX3JtX2Nsb3VkX2ZpbHRf ZWxlbV9leHQgKuKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgaTQwZV9hcWNf YWRkX3JtX2Nsb3VkX2ZpbHRfZWxlbV9leHQgKuKAmQogaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZl cnQoCiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmM6Njg4Nzo0OiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rp b24g4oCYaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVmZmVy4oCZIFstV2Vycm9yPWlt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgcmV0ID0gaTQwZV9hcV9hZGRfY2xvdWRf ZmlsdGVyc19iaWdfYnVmZmVyKGh3LAogICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4ODc6NDogZXJyb3I6IG5lc3RlZCBl eHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYaTQwZV9hcV9hZGRfY2xvdWRfZmlsdGVyc19iaWdfYnVm ZmVy4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY4OTE6Mjg6IGVycm9yOiBkZXJl ZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIHZzaS0+c2VpZCwgJmNs ZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5j OjY5MDE6NDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGk0MGVf YXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKAmSBbLVdlcnJvcj1pbXBsaWNpdC1m dW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIHJldCA9IGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRl cnNfYmlnX2J1ZmZlcigKICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTAxOjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRl Y2xhcmF0aW9uIG9mIOKAmGk0MGVfYXFfcmVtb3ZlX2Nsb3VkX2ZpbHRlcnNfYmlnX2J1ZmZlcuKA mSBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJuc10KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTA1OjIwOiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgICAmY2xkX2ZpbHRlci0+ZWxl bWVudCwgMSk7CiAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOiBJbiBmdW5jdGlvbiDigJhpNDBl X2Rldl9jb25zaXN0ZW50X3R1bm5lbF9maWx0ZXJfc2V04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5Mzk6MTI6IGVycm9y OiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNvbXBsZXRlIHR5cGUg 4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh04oCZCiAgICAgc2l6 ZW9mKHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCksCiAgICAgICAg ICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYzo2OTQ5OjMzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29t cGxldGUgdHlwZQogICAgKHN0cnVjdCBldGhlcl9hZGRyICopJnBmaWx0ZXItPmVsZW1lbnQub3V0 ZXJfbWFjKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NTE6MzM6 IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAoc3Ry dWN0IGV0aGVyX2FkZHIgKikmcGZpbHRlci0+ZWxlbWVudC5pbm5lcl9tYWMpOwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk1Mzo5OiBlcnJvcjogZGVyZWZlcmVuY2lu ZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQuaW5uZXJfdmxh biA9CiAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTU4OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRk ci52NC5kYXRhLAogICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY5NjA6MTk6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgc2l6ZW9mKHBmaWx0 ZXItPmVsZW1lbnQuaXBhZGRyLnY0LmRhdGEpKTsKICAgICAgICAgICAgICAgICAgIF4KL2hvbWUv cGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2 OTY4OjIyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQog ICBydGVfbWVtY3B5KCZwZmlsdGVyLT5lbGVtZW50LmlwYWRkci52Ni5kYXRhLAogICAgICAgICAg ICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjY5NzA6MjE6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIg dG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICBzaXplb2YocGZpbHRlci0+ZWxlbWVudC5pcGFkZHIu djYuZGF0YSkpOwogICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6Njk5MjoyMDogZXJyb3I6IGRl cmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAgICAgJnBmaWx0 ZXItPmVsZW1lbnQuZmxhZ3MpOwogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYzo2OTk4Ojk6IGVy cm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgcGZpbHRlci0+ ZWxlbWVudC5mbGFncyB8PSBydGVfY3B1X3RvX2xlXzE2KAogICAgICAgICBeCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAwMTo5 OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0 ZXItPmVsZW1lbnQudGVuYW50X2lkID0gcnRlX2NwdV90b19sZV8zMih0dW5uZWxfZmlsdGVyLT50 ZW5hbnRfaWQpOwogICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmM6NzAwMjo5OiBlcnJvcjogZGVyZWZlcmVuY2luZyBw b2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIHBmaWx0ZXItPmVsZW1lbnQucXVldWVfbnVtYmVy ID0KICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5jOjcwMTg6MjogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgMSBvZiDi gJhpNDBlX3R1bm5lbF9maWx0ZXJfY29udmVydOKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVy IHR5cGUgWy1XZXJyb3JdCiAgaTQwZV90dW5uZWxfZmlsdGVyX2NvbnZlcnQoY2xkX2ZpbHRlciwg JmNoZWNrX2ZpbHRlcik7CiAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVy cy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjY2OTk6MTogbm90ZTogZXhwZWN0ZWQg4oCYc3RydWN0 IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICrigJkgYnV0IGFyZ3VtZW50IGlz IG9mIHR5cGUg4oCYc3RydWN0IGk0MGVfYXFjX2FkZF9ybV9jbG91ZF9maWx0X2VsZW1fZXh0ICri gJkKIGk0MGVfdHVubmVsX2ZpbHRlcl9jb252ZXJ0KAogXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jOjcwMzY6Mjg6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgIHZzaS0+c2VpZCwg JmNsZF9maWx0ZXItPmVsZW1lbnQsIDEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjcwNTA6MjA6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlCiAgICAgICAgICZjbGRfZmlsdGVyLT5lbGVtZW50LCAxKTsKICAgICAgICAgICAgICAgICAg ICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf ZXRoZGV2LmM6IEluIGZ1bmN0aW9uIOKAmGk0MGVfdHVubmVsX2ZpbHRlcl9yZXN0b3Jl4oCZOgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRl di5jOjEwNDI5OjQ1OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mIOKAmGNsZF9maWx0ZXLigJkgaXNu 4oCZdCBrbm93bgogIHN0cnVjdCBpNDBlX2FxY19hZGRfcm1fY2xvdWRfZmlsdF9lbGVtX2V4dCBj bGRfZmlsdGVyOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2LmM6MTA0Mjk6NDU6IGVycm9yOiB1bnVzZWQgdmFyaWFibGUg4oCYY2xkX2ZpbHRlcuKAmSBb LVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQg YXMgZXJyb3JzCgoKRFBESyBTVFYgdGVhbQo= --===============6122586957396786244==--